@tanstack/router-devtools 1.112.18 → 1.114.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/dist/cjs/index.cjs +12 -4
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/cjs/index.d.cts +2 -2
  4. package/dist/esm/index.d.ts +2 -2
  5. package/dist/esm/index.js +6 -4
  6. package/dist/esm/index.js.map +1 -1
  7. package/package.json +3 -2
  8. package/src/index.tsx +6 -2
  9. package/dist/cjs/AgeTicker.cjs +0 -58
  10. package/dist/cjs/AgeTicker.cjs.map +0 -1
  11. package/dist/cjs/AgeTicker.d.cts +0 -5
  12. package/dist/cjs/BaseTanStackRouterDevtoolsPanel.cjs +0 -421
  13. package/dist/cjs/BaseTanStackRouterDevtoolsPanel.cjs.map +0 -1
  14. package/dist/cjs/BaseTanStackRouterDevtoolsPanel.d.cts +0 -3
  15. package/dist/cjs/Explorer.cjs +0 -310
  16. package/dist/cjs/Explorer.cjs.map +0 -1
  17. package/dist/cjs/Explorer.d.cts +0 -46
  18. package/dist/cjs/TanStackRouterDevtools.cjs +0 -177
  19. package/dist/cjs/TanStackRouterDevtools.cjs.map +0 -1
  20. package/dist/cjs/TanStackRouterDevtools.d.cts +0 -41
  21. package/dist/cjs/TanStackRouterDevtoolsPanel.cjs +0 -21
  22. package/dist/cjs/TanStackRouterDevtoolsPanel.cjs.map +0 -1
  23. package/dist/cjs/TanStackRouterDevtoolsPanel.d.cts +0 -33
  24. package/dist/cjs/context.cjs +0 -18
  25. package/dist/cjs/context.cjs.map +0 -1
  26. package/dist/cjs/context.d.cts +0 -8
  27. package/dist/cjs/logo.cjs +0 -1012
  28. package/dist/cjs/logo.cjs.map +0 -1
  29. package/dist/cjs/logo.d.cts +0 -1
  30. package/dist/cjs/theme.d.cts +0 -34
  31. package/dist/cjs/tokens.cjs +0 -201
  32. package/dist/cjs/tokens.cjs.map +0 -1
  33. package/dist/cjs/tokens.d.cts +0 -298
  34. package/dist/cjs/useLocalStorage.cjs +0 -45
  35. package/dist/cjs/useLocalStorage.cjs.map +0 -1
  36. package/dist/cjs/useLocalStorage.d.cts +0 -1
  37. package/dist/cjs/useMediaQuery.d.cts +0 -1
  38. package/dist/cjs/useStyles.cjs +0 -570
  39. package/dist/cjs/useStyles.cjs.map +0 -1
  40. package/dist/cjs/useStyles.d.cts +0 -52
  41. package/dist/cjs/utils.cjs +0 -84
  42. package/dist/cjs/utils.cjs.map +0 -1
  43. package/dist/cjs/utils.d.cts +0 -23
  44. package/dist/esm/AgeTicker.d.ts +0 -5
  45. package/dist/esm/AgeTicker.js +0 -58
  46. package/dist/esm/AgeTicker.js.map +0 -1
  47. package/dist/esm/BaseTanStackRouterDevtoolsPanel.d.ts +0 -3
  48. package/dist/esm/BaseTanStackRouterDevtoolsPanel.js +0 -421
  49. package/dist/esm/BaseTanStackRouterDevtoolsPanel.js.map +0 -1
  50. package/dist/esm/Explorer.d.ts +0 -46
  51. package/dist/esm/Explorer.js +0 -292
  52. package/dist/esm/Explorer.js.map +0 -1
  53. package/dist/esm/TanStackRouterDevtools.d.ts +0 -41
  54. package/dist/esm/TanStackRouterDevtools.js +0 -177
  55. package/dist/esm/TanStackRouterDevtools.js.map +0 -1
  56. package/dist/esm/TanStackRouterDevtoolsPanel.d.ts +0 -33
  57. package/dist/esm/TanStackRouterDevtoolsPanel.js +0 -21
  58. package/dist/esm/TanStackRouterDevtoolsPanel.js.map +0 -1
  59. package/dist/esm/context.d.ts +0 -8
  60. package/dist/esm/context.js +0 -18
  61. package/dist/esm/context.js.map +0 -1
  62. package/dist/esm/logo.d.ts +0 -1
  63. package/dist/esm/logo.js +0 -1012
  64. package/dist/esm/logo.js.map +0 -1
  65. package/dist/esm/theme.d.ts +0 -34
  66. package/dist/esm/tokens.d.ts +0 -298
  67. package/dist/esm/tokens.js +0 -201
  68. package/dist/esm/tokens.js.map +0 -1
  69. package/dist/esm/useLocalStorage.d.ts +0 -1
  70. package/dist/esm/useLocalStorage.js +0 -46
  71. package/dist/esm/useLocalStorage.js.map +0 -1
  72. package/dist/esm/useMediaQuery.d.ts +0 -1
  73. package/dist/esm/useStyles.d.ts +0 -52
  74. package/dist/esm/useStyles.js +0 -553
  75. package/dist/esm/useStyles.js.map +0 -1
  76. package/dist/esm/utils.d.ts +0 -23
  77. package/dist/esm/utils.js +0 -84
  78. package/dist/esm/utils.js.map +0 -1
  79. package/src/AgeTicker.tsx +0 -73
  80. package/src/BaseTanStackRouterDevtoolsPanel.tsx +0 -488
  81. package/src/Explorer.tsx +0 -362
  82. package/src/TanStackRouterDevtools.tsx +0 -250
  83. package/src/TanStackRouterDevtoolsPanel.tsx +0 -54
  84. package/src/context.ts +0 -22
  85. package/src/logo.tsx +0 -817
  86. package/src/theme.tsx +0 -31
  87. package/src/tokens.ts +0 -305
  88. package/src/useLocalStorage.ts +0 -52
  89. package/src/useMediaQuery.ts +0 -41
  90. package/src/useStyles.tsx +0 -589
  91. package/src/utils.ts +0 -188
package/src/useStyles.tsx DELETED
@@ -1,589 +0,0 @@
1
- import React from 'react'
2
-
3
- import * as goober from 'goober'
4
- import { tokens } from './tokens'
5
- import { ShadowDomTargetContext } from './context'
6
-
7
- const stylesFactory = (shadowDOMTarget?: ShadowRoot) => {
8
- const { colors, font, size, alpha, shadow, border } = tokens
9
- const { fontFamily, lineHeight, size: fontSize } = font
10
- const css = shadowDOMTarget
11
- ? goober.css.bind({ target: shadowDOMTarget })
12
- : goober.css
13
-
14
- return {
15
- devtoolsPanelContainer: css`
16
- direction: ltr;
17
- position: fixed;
18
- bottom: 0;
19
- right: 0;
20
- z-index: 99999;
21
- width: 100%;
22
- max-height: 90%;
23
- border-top: 1px solid ${colors.gray[700]};
24
- transform-origin: top;
25
- `,
26
- devtoolsPanelContainerVisibility: (isOpen: boolean) => {
27
- return css`
28
- visibility: ${isOpen ? 'visible' : 'hidden'};
29
- `
30
- },
31
- devtoolsPanelContainerResizing: (isResizing: boolean) => {
32
- if (isResizing) {
33
- return css`
34
- transition: none;
35
- `
36
- }
37
-
38
- return css`
39
- transition: all 0.4s ease;
40
- `
41
- },
42
- devtoolsPanelContainerAnimation: (isOpen: boolean, height: number) => {
43
- if (isOpen) {
44
- return css`
45
- pointer-events: auto;
46
- transform: translateY(0);
47
- `
48
- }
49
- return css`
50
- pointer-events: none;
51
- transform: translateY(${height}px);
52
- `
53
- },
54
- logo: css`
55
- cursor: pointer;
56
- display: flex;
57
- flex-direction: column;
58
- background-color: transparent;
59
- border: none;
60
- font-family: ${fontFamily.sans};
61
- gap: ${tokens.size[0.5]};
62
- padding: 0px;
63
- &:hover {
64
- opacity: 0.7;
65
- }
66
- &:focus-visible {
67
- outline-offset: 4px;
68
- border-radius: ${border.radius.xs};
69
- outline: 2px solid ${colors.blue[800]};
70
- }
71
- `,
72
- tanstackLogo: css`
73
- font-size: ${font.size.md};
74
- font-weight: ${font.weight.bold};
75
- line-height: ${font.lineHeight.xs};
76
- white-space: nowrap;
77
- color: ${colors.gray[300]};
78
- `,
79
- routerLogo: css`
80
- font-weight: ${font.weight.semibold};
81
- font-size: ${font.size.xs};
82
- background: linear-gradient(to right, #84cc16, #10b981);
83
- background-clip: text;
84
- -webkit-background-clip: text;
85
- line-height: 1;
86
- -webkit-text-fill-color: transparent;
87
- white-space: nowrap;
88
- `,
89
- devtoolsPanel: css`
90
- display: flex;
91
- font-size: ${fontSize.sm};
92
- font-family: ${fontFamily.sans};
93
- background-color: ${colors.darkGray[700]};
94
- color: ${colors.gray[300]};
95
-
96
- @media (max-width: 700px) {
97
- flex-direction: column;
98
- }
99
- @media (max-width: 600px) {
100
- font-size: ${fontSize.xs};
101
- }
102
- `,
103
- dragHandle: css`
104
- position: absolute;
105
- left: 0;
106
- top: 0;
107
- width: 100%;
108
- height: 4px;
109
- cursor: row-resize;
110
- z-index: 100000;
111
- &:hover {
112
- background-color: ${colors.purple[400]}${alpha[90]};
113
- }
114
- `,
115
- firstContainer: css`
116
- flex: 1 1 500px;
117
- min-height: 40%;
118
- max-height: 100%;
119
- overflow: auto;
120
- border-right: 1px solid ${colors.gray[700]};
121
- display: flex;
122
- flex-direction: column;
123
- `,
124
- routerExplorerContainer: css`
125
- overflow-y: auto;
126
- flex: 1;
127
- `,
128
- routerExplorer: css`
129
- padding: ${tokens.size[2]};
130
- `,
131
- row: css`
132
- display: flex;
133
- align-items: center;
134
- padding: ${tokens.size[2]} ${tokens.size[2.5]};
135
- gap: ${tokens.size[2.5]};
136
- border-bottom: ${colors.darkGray[500]} 1px solid;
137
- align-items: center;
138
- `,
139
- detailsHeader: css`
140
- font-family: ui-sans-serif, Inter, system-ui, sans-serif, sans-serif;
141
- position: sticky;
142
- top: 0;
143
- z-index: 2;
144
- background-color: ${colors.darkGray[600]};
145
- padding: 0px ${tokens.size[2]};
146
- font-weight: ${font.weight.medium};
147
- font-size: ${font.size.xs};
148
- min-height: ${tokens.size[8]};
149
- line-height: ${font.lineHeight.xs};
150
- text-align: left;
151
- display: flex;
152
- align-items: center;
153
- `,
154
- maskedBadge: css`
155
- background: ${colors.yellow[900]}${alpha[70]};
156
- color: ${colors.yellow[300]};
157
- display: inline-block;
158
- padding: ${tokens.size[0]} ${tokens.size[2.5]};
159
- border-radius: ${border.radius.full};
160
- font-size: ${font.size.xs};
161
- font-weight: ${font.weight.normal};
162
- border: 1px solid ${colors.yellow[300]};
163
- `,
164
- maskedLocation: css`
165
- color: ${colors.yellow[300]};
166
- `,
167
- detailsContent: css`
168
- padding: ${tokens.size[1.5]} ${tokens.size[2]};
169
- display: flex;
170
- align-items: center;
171
- justify-content: space-between;
172
- font-size: ${font.size.xs};
173
- `,
174
- routeMatchesToggle: css`
175
- display: flex;
176
- align-items: center;
177
- border: 1px solid ${colors.gray[500]};
178
- border-radius: ${border.radius.sm};
179
- overflow: hidden;
180
- `,
181
- routeMatchesToggleBtn: (active: boolean, showBorder: boolean) => {
182
- const base = css`
183
- appearance: none;
184
- border: none;
185
- font-size: 12px;
186
- padding: 4px 8px;
187
- background: transparent;
188
- cursor: pointer;
189
- font-family: ${fontFamily.sans};
190
- font-weight: ${font.weight.medium};
191
- `
192
- const classes = [base]
193
-
194
- if (active) {
195
- const activeStyles = css`
196
- background: ${colors.darkGray[400]};
197
- color: ${colors.gray[300]};
198
- `
199
- classes.push(activeStyles)
200
- } else {
201
- const inactiveStyles = css`
202
- color: ${colors.gray[500]};
203
- background: ${colors.darkGray[800]}${alpha[20]};
204
- `
205
- classes.push(inactiveStyles)
206
- }
207
-
208
- if (showBorder) {
209
- classes.push(css`
210
- border-right: 1px solid ${tokens.colors.gray[500]};
211
- `)
212
- }
213
-
214
- return classes
215
- },
216
- detailsHeaderInfo: css`
217
- flex: 1;
218
- justify-content: flex-end;
219
- display: flex;
220
- align-items: center;
221
- font-weight: ${font.weight.normal};
222
- color: ${colors.gray[400]};
223
- `,
224
- matchRow: (active: boolean) => {
225
- const base = css`
226
- display: flex;
227
- border-bottom: 1px solid ${colors.darkGray[400]};
228
- cursor: pointer;
229
- align-items: center;
230
- padding: ${size[1]} ${size[2]};
231
- gap: ${size[2]};
232
- font-size: ${fontSize.xs};
233
- color: ${colors.gray[300]};
234
- `
235
- const classes = [base]
236
-
237
- if (active) {
238
- const activeStyles = css`
239
- background: ${colors.darkGray[500]};
240
- `
241
- classes.push(activeStyles)
242
- }
243
-
244
- return classes
245
- },
246
- matchIndicator: (
247
- color: 'green' | 'red' | 'yellow' | 'gray' | 'blue' | 'purple',
248
- ) => {
249
- const base = css`
250
- flex: 0 0 auto;
251
- width: ${size[3]};
252
- height: ${size[3]};
253
- background: ${colors[color][900]};
254
- border: 1px solid ${colors[color][500]};
255
- border-radius: ${border.radius.full};
256
- transition: all 0.25s ease-out;
257
- box-sizing: border-box;
258
- `
259
- const classes = [base]
260
-
261
- if (color === 'gray') {
262
- const grayStyles = css`
263
- background: ${colors.gray[700]};
264
- border-color: ${colors.gray[400]};
265
- `
266
- classes.push(grayStyles)
267
- }
268
-
269
- return classes
270
- },
271
- matchID: css`
272
- flex: 1;
273
- line-height: ${lineHeight['xs']};
274
- `,
275
- ageTicker: (showWarning: boolean) => {
276
- const base = css`
277
- display: flex;
278
- gap: ${size[1]};
279
- font-size: ${fontSize.xs};
280
- color: ${colors.gray[400]};
281
- font-variant-numeric: tabular-nums;
282
- line-height: ${lineHeight['xs']};
283
- `
284
-
285
- const classes = [base]
286
-
287
- if (showWarning) {
288
- const warningStyles = css`
289
- color: ${colors.yellow[400]};
290
- `
291
- classes.push(warningStyles)
292
- }
293
-
294
- return classes
295
- },
296
- secondContainer: css`
297
- flex: 1 1 500px;
298
- min-height: 40%;
299
- max-height: 100%;
300
- overflow: auto;
301
- border-right: 1px solid ${colors.gray[700]};
302
- display: flex;
303
- flex-direction: column;
304
- `,
305
- thirdContainer: css`
306
- flex: 1 1 500px;
307
- overflow: auto;
308
- display: flex;
309
- flex-direction: column;
310
- height: 100%;
311
- border-right: 1px solid ${colors.gray[700]};
312
-
313
- @media (max-width: 700px) {
314
- border-top: 2px solid ${colors.gray[700]};
315
- }
316
- `,
317
- fourthContainer: css`
318
- flex: 1 1 500px;
319
- min-height: 40%;
320
- max-height: 100%;
321
- overflow: auto;
322
- display: flex;
323
- flex-direction: column;
324
- `,
325
- routesContainer: css`
326
- overflow-x: auto;
327
- overflow-y: visible;
328
- `,
329
- routesRowContainer: (active: boolean, isMatch: boolean) => {
330
- const base = css`
331
- display: flex;
332
- border-bottom: 1px solid ${colors.darkGray[400]};
333
- align-items: center;
334
- padding: ${size[1]} ${size[2]};
335
- gap: ${size[2]};
336
- font-size: ${fontSize.xs};
337
- color: ${colors.gray[300]};
338
- cursor: ${isMatch ? 'pointer' : 'default'};
339
- line-height: ${lineHeight['xs']};
340
- `
341
- const classes = [base]
342
-
343
- if (active) {
344
- const activeStyles = css`
345
- background: ${colors.darkGray[500]};
346
- `
347
- classes.push(activeStyles)
348
- }
349
-
350
- return classes
351
- },
352
- routesRow: (isMatch: boolean) => {
353
- const base = css`
354
- flex: 1 0 auto;
355
- display: flex;
356
- justify-content: space-between;
357
- align-items: center;
358
- font-size: ${fontSize.xs};
359
- line-height: ${lineHeight['xs']};
360
- `
361
-
362
- const classes = [base]
363
-
364
- if (!isMatch) {
365
- const matchStyles = css`
366
- color: ${colors.gray[400]};
367
- `
368
- classes.push(matchStyles)
369
- }
370
-
371
- return classes
372
- },
373
- routeParamInfo: css`
374
- color: ${colors.gray[400]};
375
- font-size: ${fontSize.xs};
376
- line-height: ${lineHeight['xs']};
377
- `,
378
- nestedRouteRow: (isRoot: boolean) => {
379
- const base = css`
380
- margin-left: ${isRoot ? 0 : size[3.5]};
381
- border-left: ${isRoot ? '' : `solid 1px ${colors.gray[700]}`};
382
- `
383
- return base
384
- },
385
- code: css`
386
- font-size: ${fontSize.xs};
387
- line-height: ${lineHeight['xs']};
388
- `,
389
- matchesContainer: css`
390
- flex: 1 1 auto;
391
- overflow-y: auto;
392
- `,
393
- cachedMatchesContainer: css`
394
- flex: 1 1 auto;
395
- overflow-y: auto;
396
- max-height: 50%;
397
- `,
398
- maskedBadgeContainer: css`
399
- flex: 1;
400
- justify-content: flex-end;
401
- display: flex;
402
- `,
403
- matchDetails: css`
404
- display: flex;
405
- flex-direction: column;
406
- padding: ${tokens.size[2]};
407
- font-size: ${tokens.font.size.xs};
408
- color: ${tokens.colors.gray[300]};
409
- line-height: ${tokens.font.lineHeight.sm};
410
- `,
411
- matchStatus: (
412
- status: 'pending' | 'success' | 'error' | 'notFound' | 'redirected',
413
- isFetching: false | 'beforeLoad' | 'loader',
414
- ) => {
415
- const colorMap = {
416
- pending: 'yellow',
417
- success: 'green',
418
- error: 'red',
419
- notFound: 'purple',
420
- redirected: 'gray',
421
- } as const
422
-
423
- const color =
424
- isFetching && status === 'success'
425
- ? isFetching === 'beforeLoad'
426
- ? 'purple'
427
- : 'blue'
428
- : colorMap[status]
429
-
430
- return css`
431
- display: flex;
432
- justify-content: center;
433
- align-items: center;
434
- height: 40px;
435
- border-radius: ${tokens.border.radius.sm};
436
- font-weight: ${tokens.font.weight.normal};
437
- background-color: ${tokens.colors[color][900]}${tokens.alpha[90]};
438
- color: ${tokens.colors[color][300]};
439
- border: 1px solid ${tokens.colors[color][600]};
440
- margin-bottom: ${tokens.size[2]};
441
- transition: all 0.25s ease-out;
442
- `
443
- },
444
- matchDetailsInfo: css`
445
- display: flex;
446
- justify-content: flex-end;
447
- flex: 1;
448
- `,
449
- matchDetailsInfoLabel: css`
450
- display: flex;
451
- `,
452
- mainCloseBtn: css`
453
- background: ${colors.darkGray[700]};
454
- padding: ${size[1]} ${size[2]} ${size[1]} ${size[1.5]};
455
- border-radius: ${border.radius.md};
456
- position: fixed;
457
- z-index: 99999;
458
- display: inline-flex;
459
- width: fit-content;
460
- cursor: pointer;
461
- appearance: none;
462
- border: 0;
463
- gap: 8px;
464
- align-items: center;
465
- border: 1px solid ${colors.gray[500]};
466
- font-size: ${font.size.xs};
467
- cursor: pointer;
468
- transition: all 0.25s ease-out;
469
-
470
- &:hover {
471
- background: ${colors.darkGray[500]};
472
- }
473
- `,
474
- mainCloseBtnPosition: (
475
- position: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right',
476
- ) => {
477
- const base = css`
478
- ${position === 'top-left' ? `top: ${size[2]}; left: ${size[2]};` : ''}
479
- ${position === 'top-right' ? `top: ${size[2]}; right: ${size[2]};` : ''}
480
- ${position === 'bottom-left'
481
- ? `bottom: ${size[2]}; left: ${size[2]};`
482
- : ''}
483
- ${position === 'bottom-right'
484
- ? `bottom: ${size[2]}; right: ${size[2]};`
485
- : ''}
486
- `
487
- return base
488
- },
489
- mainCloseBtnAnimation: (isOpen: boolean) => {
490
- if (isOpen) {
491
- return css`
492
- opacity: 1;
493
- pointer-events: auto;
494
- visibility: visible;
495
- `
496
- }
497
- return css`
498
- opacity: 0;
499
- pointer-events: none;
500
- visibility: hidden;
501
- `
502
- },
503
- routerLogoCloseButton: css`
504
- font-weight: ${font.weight.semibold};
505
- font-size: ${font.size.xs};
506
- background: linear-gradient(to right, #98f30c, #00f4a3);
507
- background-clip: text;
508
- -webkit-background-clip: text;
509
- line-height: 1;
510
- -webkit-text-fill-color: transparent;
511
- white-space: nowrap;
512
- `,
513
- mainCloseBtnDivider: css`
514
- width: 1px;
515
- background: ${tokens.colors.gray[600]};
516
- height: 100%;
517
- border-radius: 999999px;
518
- color: transparent;
519
- `,
520
- mainCloseBtnIconContainer: css`
521
- position: relative;
522
- width: ${size[5]};
523
- height: ${size[5]};
524
- background: pink;
525
- border-radius: 999999px;
526
- overflow: hidden;
527
- `,
528
- mainCloseBtnIconOuter: css`
529
- width: ${size[5]};
530
- height: ${size[5]};
531
- position: absolute;
532
- top: 50%;
533
- left: 50%;
534
- transform: translate(-50%, -50%);
535
- filter: blur(3px) saturate(1.8) contrast(2);
536
- `,
537
- mainCloseBtnIconInner: css`
538
- width: ${size[4]};
539
- height: ${size[4]};
540
- position: absolute;
541
- top: 50%;
542
- left: 50%;
543
- transform: translate(-50%, -50%);
544
- `,
545
- panelCloseBtn: css`
546
- position: absolute;
547
- cursor: pointer;
548
- z-index: 100001;
549
- display: flex;
550
- align-items: center;
551
- justify-content: center;
552
- outline: none;
553
- background-color: ${colors.darkGray[700]};
554
- &:hover {
555
- background-color: ${colors.darkGray[500]};
556
- }
557
-
558
- top: 0;
559
- right: ${size[2]};
560
- transform: translate(0, -100%);
561
- border-right: ${colors.darkGray[300]} 1px solid;
562
- border-left: ${colors.darkGray[300]} 1px solid;
563
- border-top: ${colors.darkGray[300]} 1px solid;
564
- border-bottom: none;
565
- border-radius: ${border.radius.sm} ${border.radius.sm} 0px 0px;
566
- padding: ${size[1]} ${size[1.5]} ${size[0.5]} ${size[1.5]};
567
-
568
- &::after {
569
- content: ' ';
570
- position: absolute;
571
- top: 100%;
572
- left: -${size[2.5]};
573
- height: ${size[1.5]};
574
- width: calc(100% + ${size[5]});
575
- }
576
- `,
577
- panelCloseBtnIcon: css`
578
- color: ${colors.gray[400]};
579
- width: ${size[2]};
580
- height: ${size[2]};
581
- `,
582
- }
583
- }
584
-
585
- export function useStyles() {
586
- const shadowDomTarget = React.useContext(ShadowDomTargetContext)
587
- const [_styles] = React.useState(() => stylesFactory(shadowDomTarget))
588
- return _styles
589
- }