@grafana/components 0.0.1

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 (37) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +3 -0
  3. package/dist/cjs/css/components.css +298 -0
  4. package/dist/cjs/index.cjs +3914 -0
  5. package/dist/cjs/index.cjs.map +1 -0
  6. package/dist/cjs/index.d.cts +132 -0
  7. package/dist/esm/_virtual/hoist-non-react-statics.cjs.js +4 -0
  8. package/dist/esm/_virtual/hoist-non-react-statics.cjs.js.map +1 -0
  9. package/dist/esm/_virtual/index.js +4 -0
  10. package/dist/esm/_virtual/index.js.map +1 -0
  11. package/dist/esm/_virtual/react-is.development.js +4 -0
  12. package/dist/esm/_virtual/react-is.development.js.map +1 -0
  13. package/dist/esm/_virtual/react-is.production.min.js +4 -0
  14. package/dist/esm/_virtual/react-is.production.min.js.map +1 -0
  15. package/dist/esm/components/ColorModeProvider/ColorModeProvider.js +25 -0
  16. package/dist/esm/components/ColorModeProvider/ColorModeProvider.js.map +1 -0
  17. package/dist/esm/components/ComparisonBadge/ComparisonBadge.js +74 -0
  18. package/dist/esm/components/ComparisonBadge/ComparisonBadge.js.map +1 -0
  19. package/dist/esm/components/ComparisonBadge/ComparisonBadge.styles.js +112 -0
  20. package/dist/esm/components/ComparisonBadge/ComparisonBadge.styles.js.map +1 -0
  21. package/dist/esm/components/ComparisonTooltip/ComparisonTooltip.js +41 -0
  22. package/dist/esm/components/ComparisonTooltip/ComparisonTooltip.js.map +1 -0
  23. package/dist/esm/components/ComparisonTooltip/ComparisonTooltip.styles.js +61 -0
  24. package/dist/esm/components/ComparisonTooltip/ComparisonTooltip.styles.js.map +1 -0
  25. package/dist/esm/components/Popover/Popover.js +120 -0
  26. package/dist/esm/components/Popover/Popover.js.map +1 -0
  27. package/dist/esm/components/Popover/Popover.styles.js +30 -0
  28. package/dist/esm/components/Popover/Popover.styles.js.map +1 -0
  29. package/dist/esm/css/components.css +298 -0
  30. package/dist/esm/index.d.ts +132 -0
  31. package/dist/esm/index.js +7 -0
  32. package/dist/esm/index.js.map +1 -0
  33. package/dist/esm/utils/comparison.js +34 -0
  34. package/dist/esm/utils/comparison.js.map +1 -0
  35. package/dist/esm/utils/formatters.js +29 -0
  36. package/dist/esm/utils/formatters.js.map +1 -0
  37. package/package.json +118 -0
@@ -0,0 +1,3914 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var React = require('react');
7
+ var css$1 = require('@emotion/css');
8
+ var ui = require('@grafana/ui');
9
+ var react = require('@floating-ui/react');
10
+
11
+ function _interopNamespaceCompat(e) {
12
+ if (e && typeof e === 'object' && 'default' in e) return e;
13
+ var n = Object.create(null);
14
+ if (e) {
15
+ Object.keys(e).forEach(function (k) {
16
+ if (k !== 'default') {
17
+ var d = Object.getOwnPropertyDescriptor(e, k);
18
+ Object.defineProperty(n, k, d.get ? d : {
19
+ enumerable: true,
20
+ get: function () { return e[k]; }
21
+ });
22
+ }
23
+ });
24
+ }
25
+ n.default = e;
26
+ return Object.freeze(n);
27
+ }
28
+
29
+ var React__namespace = /*#__PURE__*/_interopNamespaceCompat(React);
30
+
31
+ const ColorModeContext = React.createContext(void 0);
32
+ const ColorModeProvider = ({
33
+ children,
34
+ defaultColorMode = "light"
35
+ }) => {
36
+ const [colorMode, setColorMode] = React.useState(defaultColorMode);
37
+ React.useEffect(() => {
38
+ console.log("ColorModeProvider", { colorMode });
39
+ document.documentElement.setAttribute("data-color-mode", colorMode);
40
+ }, [colorMode]);
41
+ return /* @__PURE__ */ jsxRuntime.jsx(ColorModeContext.Provider, { value: { colorMode, setColorMode }, children });
42
+ };
43
+ const useColorMode = () => {
44
+ const context = React.useContext(ColorModeContext);
45
+ if (context === void 0) {
46
+ throw new Error("useColorMode must be used within a ColorModeProvider");
47
+ }
48
+ return context;
49
+ };
50
+
51
+ const palette = {
52
+ legacy: {
53
+ white: "#ffffff",
54
+ black: "#000000",
55
+ grey90: "#fbfbfb",
56
+ grey100: "#f4f5f5",
57
+ grey80: "#d0d1d3",
58
+ grey25: "#2c3235",
59
+ grey15: "#22252b",
60
+ grey10: "#181b1f",
61
+ grey05: "#111217",
62
+ blueDarkMain: "#3d71d9",
63
+ blueDarkShade: "#5a86de",
64
+ blueDarkText: "#6e9fff",
65
+ redDarkMain: "#d10e5c",
66
+ redDarkText: "#ff5286",
67
+ redDarkShade: "#d73274",
68
+ greenDarkMain: "#1a7f4b",
69
+ greenDarkText: "#6ccf8e",
70
+ greenDarkShade: "#3c9266",
71
+ orangeDarkMain: "#ff9900",
72
+ orangeDarkText: "#fbad37",
73
+ orangeDarkShade: "#ffa826",
74
+ blueLightMain: "#3871dc",
75
+ blueLightShade: "#2c5ab0",
76
+ blueLightText: "#1f62e0",
77
+ redLightMain: "#e0226e",
78
+ redLightText: "#cf0e5b",
79
+ redLightShade: "#b31b58",
80
+ greenLightMain: "#1b855e",
81
+ greenLightText: "#0a764e",
82
+ greenLightShade: "#156a4b",
83
+ orangeLightMain: "#ff9900",
84
+ orangeLightText: "#b5510d",
85
+ orangeLightShade: "#cc7a00",
86
+ whiteBase: "#ccccdc",
87
+ blackBase: "#24292e",
88
+ orangeBrandGradientA: "#f55f3e",
89
+ orangeBrandGradientB: "#ff8833",
90
+ orangeBrandGradientC: "#f53e4c",
91
+ grey10Opacity20: "rgb(24 27 31 / 20%)",
92
+ grey10Opacity18: "rgb(24 27 31 / 18%)",
93
+ blackOpacity75: "rgb(0 0 0 / 75%)",
94
+ whiteBaseOpacity4: "rgb(204 204 220 / 4%)",
95
+ whiteBaseOpacity8: "rgb(204 204 220 / 8%)",
96
+ whiteBaseOpacity10: "rgb(204 204 220 / 10%)",
97
+ whiteBaseOpacity12: "rgb(204 204 220 / 12%)",
98
+ whiteBaseOpacity14: "rgb(204 204 220 / 14%)",
99
+ whiteBaseOpacity16: "rgb(204 204 220 / 16%)",
100
+ whiteBaseOpacity20: "rgb(204 204 220 / 20%)",
101
+ whiteBaseOpacity25: "rgb(204 204 220 / 25%)",
102
+ whiteBaseOpacity30: "rgb(204 204 220 / 30%)",
103
+ whiteBaseOpacity61: "rgb(204 204 220 / 61%)",
104
+ whiteBaseOpacity65: "rgb(204 204 220 / 65%)",
105
+ blueDarkMainOpacity15: "rgb(61 113 217 / 15%)",
106
+ blueDarkTextOpacity25: "rgb(110 159 255 / 25%)",
107
+ redDarkMainOpacity15: "rgb(209 14 92 / 15%)",
108
+ redDarkTextOpacity25: "rgb(255 82 134 / 25%)",
109
+ greenDarkMainOpacity15: "rgb(26 127 75 / 15%)",
110
+ greenDarkTextOpacity25: "rgb(108 207 142 / 25%)",
111
+ orangeDarkMainOpacity15: "rgb(255 153 0 / 15%)",
112
+ orangeDarkTextOpacity25: "rgb(251 173 55 / 25%)",
113
+ blackBaseOpacity4: "rgb(36 41 46 / 4%)",
114
+ blackBaseOpacity8: "rgb(36 41 46 / 8%)",
115
+ blackBaseOpacity12: "rgb(36 41 46 / 12%)",
116
+ blackBaseOpacity15: "rgb(36 41 46 / 15%)",
117
+ blackBaseOpacity25: "rgb(36 41 46 / 25%)",
118
+ blackBaseOpacity30: "rgb(36 41 46 / 30%)",
119
+ blackBaseOpacity40: "rgb(36 41 46 / 40%)",
120
+ blackBaseOpacity65: "rgb(36 41 46 / 65%)",
121
+ blackBaseOpacity75: "rgb(36 41 46 / 75%)",
122
+ blueLightMainOpacity15: "rgb(56 113 220 / 15%)",
123
+ blueLightTextOpacity25: "rgb(31 98 224 / 25%)",
124
+ redLightMainOpacity15: "rgb(224 34 110 / 15%)",
125
+ redLightTextOpacity25: "rgb(207 14 91 / 25%)",
126
+ greenLightMainOpacity15: "rgb(27 133 94 / 15%)",
127
+ greenLightTextOpacity25: "rgb(10 118 78 / 25%)",
128
+ orangeLightMainOpacity15: "rgb(255 153 0 / 15%)",
129
+ orangeLightTextOpacity25: "rgb(181 81 13 / 25%)"
130
+ }
131
+ };
132
+
133
+ const darkColors$1 = {
134
+ text: {
135
+ primary: "#ccccdc",
136
+ secondary: "rgb(204 204 220 / 65%)",
137
+ disabled: "rgb(204 204 220 / 61%)",
138
+ link: "#6e9fff",
139
+ maxContrast: "#ffffff"
140
+ },
141
+ action: {
142
+ hover: "rgb(204 204 220 / 16%)",
143
+ selected: "rgb(204 204 220 / 12%)",
144
+ selectedBorder: "#ff9900",
145
+ focus: "rgb(204 204 220 / 16%)",
146
+ disabledText: "rgb(204 204 220 / 61%)",
147
+ disabledBackground: "rgb(204 204 220 / 4%)",
148
+ hoverOpacity: 0.08,
149
+ disabledOpacity: 0.38
150
+ },
151
+ primary: {
152
+ name: "primary",
153
+ main: "#3d71d9",
154
+ text: "#6e9fff",
155
+ border: "#6e9fff",
156
+ shade: "#5a86de",
157
+ transparent: "rgb(61 113 217 / 15%)",
158
+ contrastText: "#ffffff",
159
+ borderTransparent: "rgb(110 159 255 / 25%)"
160
+ },
161
+ border: {
162
+ weak: "rgb(204 204 220 / 12%)",
163
+ medium: "rgb(204 204 220 / 20%)",
164
+ strong: "rgb(204 204 220 / 30%)"
165
+ },
166
+ secondary: {
167
+ name: "secondary",
168
+ main: "rgb(204 204 220 / 10%)",
169
+ shade: "rgb(204 204 220 / 14%)",
170
+ transparent: "rgb(204 204 220 / 8%)",
171
+ text: "#ccccdc",
172
+ contrastText: "#ccccdc",
173
+ border: "rgb(204 204 220 / 8%)",
174
+ borderTransparent: "rgb(204 204 220 / 25%)"
175
+ },
176
+ info: {
177
+ name: "info",
178
+ main: "#3d71d9",
179
+ text: "#6e9fff",
180
+ border: "#6e9fff",
181
+ shade: "#5a86de",
182
+ transparent: "rgb(61 113 217 / 15%)",
183
+ contrastText: "#ffffff",
184
+ borderTransparent: "rgb(110 159 255 / 25%)"
185
+ },
186
+ error: {
187
+ name: "error",
188
+ main: "#d10e5c",
189
+ text: "#ff5286",
190
+ border: "#ff5286",
191
+ shade: "#d73274",
192
+ transparent: "rgb(209 14 92 / 15%)",
193
+ contrastText: "#ffffff",
194
+ borderTransparent: "rgb(255 82 134 / 25%)"
195
+ },
196
+ success: {
197
+ name: "success",
198
+ main: "#1a7f4b",
199
+ text: "#6ccf8e",
200
+ border: "#6ccf8e",
201
+ shade: "#3c9266",
202
+ transparent: "rgb(26 127 75 / 15%)",
203
+ contrastText: "#ffffff",
204
+ borderTransparent: "rgb(108 207 142 / 25%)"
205
+ },
206
+ warning: {
207
+ name: "warning",
208
+ main: "#ff9900",
209
+ text: "#fbad37",
210
+ border: "#fbad37",
211
+ shade: "#ffa826",
212
+ transparent: "rgb(255 153 0 / 15%)",
213
+ contrastText: "#000000",
214
+ borderTransparent: "rgb(251 173 55 / 25%)"
215
+ },
216
+ background: {
217
+ canvas: "#111217",
218
+ primary: "#181b1f",
219
+ secondary: "#22252b",
220
+ elevated: "#22252b"
221
+ },
222
+ gradients: {
223
+ brandHorizontal: "linear-gradient(270deg, #f55f3e 0%, #ff8833 100%)",
224
+ brandVertical: "linear-gradient(0.01deg, #f55f3e 0.01%, #ff8833 99.99%)"
225
+ }
226
+ };
227
+
228
+ const darkColors = {
229
+ text: {
230
+ primary: "var(--color-text-primary)",
231
+ secondary: "var(--color-text-secondary)",
232
+ disabled: "var(--color-text-disabled)",
233
+ link: "var(--color-text-link)",
234
+ maxContrast: "var(--color-text-max-contrast)"
235
+ },
236
+ action: {
237
+ hover: "var(--color-action-hover)",
238
+ selected: "var(--color-action-selected)",
239
+ selectedBorder: "var(--color-action-selected-border)",
240
+ focus: "var(--color-action-focus)",
241
+ disabledText: "var(--color-action-disabled-text)",
242
+ disabledBackground: "var(--color-action-disabled-background)",
243
+ hoverOpacity: "var(--color-action-hover-opacity)",
244
+ disabledOpacity: "var(--color-action-disabled-opacity)"
245
+ },
246
+ primary: {
247
+ name: "var(--color-primary-name)",
248
+ main: "var(--color-primary-main)",
249
+ text: "var(--color-primary-text)",
250
+ border: "var(--color-primary-border)",
251
+ shade: "var(--color-primary-shade)",
252
+ transparent: "var(--color-primary-transparent)",
253
+ contrastText: "var(--color-primary-contrast-text)",
254
+ borderTransparent: "var(--color-primary-border-transparent)"
255
+ },
256
+ border: {
257
+ weak: "var(--color-border-weak)",
258
+ medium: "var(--color-border-medium)",
259
+ strong: "var(--color-border-strong)"
260
+ },
261
+ secondary: {
262
+ name: "var(--color-secondary-name)",
263
+ main: "var(--color-secondary-main)",
264
+ shade: "var(--color-secondary-shade)",
265
+ transparent: "var(--color-secondary-transparent)",
266
+ text: "var(--color-secondary-text)",
267
+ contrastText: "var(--color-secondary-contrast-text)",
268
+ border: "var(--color-secondary-border)",
269
+ borderTransparent: "var(--color-secondary-border-transparent)"
270
+ },
271
+ info: {
272
+ name: "var(--color-info-name)",
273
+ main: "var(--color-info-main)",
274
+ text: "var(--color-info-text)",
275
+ border: "var(--color-info-border)",
276
+ shade: "var(--color-info-shade)",
277
+ transparent: "var(--color-info-transparent)",
278
+ contrastText: "var(--color-info-contrast-text)",
279
+ borderTransparent: "var(--color-info-border-transparent)"
280
+ },
281
+ error: {
282
+ name: "var(--color-error-name)",
283
+ main: "var(--color-error-main)",
284
+ text: "var(--color-error-text)",
285
+ border: "var(--color-error-border)",
286
+ shade: "var(--color-error-shade)",
287
+ transparent: "var(--color-error-transparent)",
288
+ contrastText: "var(--color-error-contrast-text)",
289
+ borderTransparent: "var(--color-error-border-transparent)"
290
+ },
291
+ success: {
292
+ name: "var(--color-success-name)",
293
+ main: "var(--color-success-main)",
294
+ text: "var(--color-success-text)",
295
+ border: "var(--color-success-border)",
296
+ shade: "var(--color-success-shade)",
297
+ transparent: "var(--color-success-transparent)",
298
+ contrastText: "var(--color-success-contrast-text)",
299
+ borderTransparent: "var(--color-success-border-transparent)"
300
+ },
301
+ warning: {
302
+ name: "var(--color-warning-name)",
303
+ main: "var(--color-warning-main)",
304
+ text: "var(--color-warning-text)",
305
+ border: "var(--color-warning-border)",
306
+ shade: "var(--color-warning-shade)",
307
+ transparent: "var(--color-warning-transparent)",
308
+ contrastText: "var(--color-warning-contrast-text)",
309
+ borderTransparent: "var(--color-warning-border-transparent)"
310
+ },
311
+ background: {
312
+ canvas: "var(--color-background-canvas)",
313
+ primary: "var(--color-background-primary)",
314
+ secondary: "var(--color-background-secondary)",
315
+ elevated: "var(--color-background-elevated)"
316
+ },
317
+ gradients: {
318
+ brandHorizontal: "var(--color-gradients-brand-horizontal)",
319
+ brandVertical: "var(--color-gradients-brand-vertical)"
320
+ }
321
+ };
322
+
323
+ const lightColors$1 = {
324
+ text: {
325
+ primary: "#24292e",
326
+ secondary: "rgb(36 41 46 / 75%)",
327
+ disabled: "rgb(36 41 46 / 65%)",
328
+ link: "#24292e",
329
+ maxContrast: "#000000"
330
+ },
331
+ action: {
332
+ hover: "rgb(36 41 46 / 12%)",
333
+ selected: "rgb(36 41 46 / 8%)",
334
+ selectedBorder: "#ff9900",
335
+ focus: "rgb(36 41 46 / 12%)",
336
+ disabledText: "rgb(36 41 46 / 65%)",
337
+ disabledBackground: "rgb(36 41 46 / 4%)",
338
+ hoverOpacity: 0.08,
339
+ disabledOpacity: 0.38
340
+ },
341
+ primary: {
342
+ name: "primary",
343
+ main: "#3871dc",
344
+ text: "#1f62e0",
345
+ border: "#1f62e0",
346
+ shade: "#2c5ab0",
347
+ transparent: "rgb(56 113 220 / 15%)",
348
+ contrastText: "#ffffff",
349
+ borderTransparent: "rgb(31 98 224 / 25%)"
350
+ },
351
+ border: {
352
+ weak: "rgb(36 41 46 / 12%)",
353
+ medium: "rgb(36 41 46 / 30%)",
354
+ strong: "rgb(36 41 46 / 40%)"
355
+ },
356
+ secondary: {
357
+ name: "secondary",
358
+ main: "rgb(36 41 46 / 8%)",
359
+ shade: "rgb(36 41 46 / 15%)",
360
+ transparent: "rgb(36 41 46 / 8%)",
361
+ text: "#24292e",
362
+ contrastText: "#24292e",
363
+ border: "#24292e",
364
+ borderTransparent: "rgb(36 41 46 / 25%)"
365
+ },
366
+ info: {
367
+ name: "info",
368
+ main: "#3871dc",
369
+ text: "#1f62e0",
370
+ border: "#1f62e0",
371
+ shade: "#2c5ab0",
372
+ transparent: "rgb(56 113 220 / 15%)",
373
+ contrastText: "#ffffff",
374
+ borderTransparent: "rgb(31 98 224 / 25%)"
375
+ },
376
+ error: {
377
+ name: "error",
378
+ main: "#e0226e",
379
+ text: "#cf0e5b",
380
+ border: "#cf0e5b",
381
+ shade: "#b31b58",
382
+ transparent: "rgb(224 34 110 / 15%)",
383
+ contrastText: "#ffffff",
384
+ borderTransparent: "rgb(207 14 91 / 25%)"
385
+ },
386
+ success: {
387
+ name: "success",
388
+ main: "#1b855e",
389
+ text: "#0a764e",
390
+ border: "#0a764e",
391
+ shade: "#156a4b",
392
+ transparent: "rgb(27 133 94 / 15%)",
393
+ contrastText: "#ffffff",
394
+ borderTransparent: "rgb(10 118 78 / 25%)"
395
+ },
396
+ warning: {
397
+ name: "warning",
398
+ main: "#ff9900",
399
+ text: "#b5510d",
400
+ border: "#b5510d",
401
+ shade: "#cc7a00",
402
+ transparent: "rgb(255 153 0 / 15%)",
403
+ contrastText: "#000000",
404
+ borderTransparent: "rgb(181 81 13 / 25%)"
405
+ },
406
+ background: {
407
+ canvas: "#fbfbfb",
408
+ primary: "#ffffff",
409
+ secondary: "#f4f5f5",
410
+ elevated: "#ffffff"
411
+ },
412
+ gradients: {
413
+ brandHorizontal: "linear-gradient(270deg, #ff8833 0%, #f53e4c 100%)",
414
+ brandVertical: "linear-gradient(0.01deg, #f53e4c -31.2%, #ff8833 113.07%)"
415
+ }
416
+ };
417
+
418
+ const lightColors = {
419
+ text: {
420
+ primary: "var(--color-text-primary)",
421
+ secondary: "var(--color-text-secondary)",
422
+ disabled: "var(--color-text-disabled)",
423
+ link: "var(--color-text-link)",
424
+ maxContrast: "var(--color-text-max-contrast)"
425
+ },
426
+ action: {
427
+ hover: "var(--color-action-hover)",
428
+ selected: "var(--color-action-selected)",
429
+ selectedBorder: "var(--color-action-selected-border)",
430
+ focus: "var(--color-action-focus)",
431
+ disabledText: "var(--color-action-disabled-text)",
432
+ disabledBackground: "var(--color-action-disabled-background)",
433
+ hoverOpacity: "var(--color-action-hover-opacity)",
434
+ disabledOpacity: "var(--color-action-disabled-opacity)"
435
+ },
436
+ primary: {
437
+ name: "var(--color-primary-name)",
438
+ main: "var(--color-primary-main)",
439
+ text: "var(--color-primary-text)",
440
+ border: "var(--color-primary-border)",
441
+ shade: "var(--color-primary-shade)",
442
+ transparent: "var(--color-primary-transparent)",
443
+ contrastText: "var(--color-primary-contrast-text)",
444
+ borderTransparent: "var(--color-primary-border-transparent)"
445
+ },
446
+ border: {
447
+ weak: "var(--color-border-weak)",
448
+ medium: "var(--color-border-medium)",
449
+ strong: "var(--color-border-strong)"
450
+ },
451
+ secondary: {
452
+ name: "var(--color-secondary-name)",
453
+ main: "var(--color-secondary-main)",
454
+ shade: "var(--color-secondary-shade)",
455
+ transparent: "var(--color-secondary-transparent)",
456
+ text: "var(--color-secondary-text)",
457
+ contrastText: "var(--color-secondary-contrast-text)",
458
+ border: "var(--color-secondary-border)",
459
+ borderTransparent: "var(--color-secondary-border-transparent)"
460
+ },
461
+ info: {
462
+ name: "var(--color-info-name)",
463
+ main: "var(--color-info-main)",
464
+ text: "var(--color-info-text)",
465
+ border: "var(--color-info-border)",
466
+ shade: "var(--color-info-shade)",
467
+ transparent: "var(--color-info-transparent)",
468
+ contrastText: "var(--color-info-contrast-text)",
469
+ borderTransparent: "var(--color-info-border-transparent)"
470
+ },
471
+ error: {
472
+ name: "var(--color-error-name)",
473
+ main: "var(--color-error-main)",
474
+ text: "var(--color-error-text)",
475
+ border: "var(--color-error-border)",
476
+ shade: "var(--color-error-shade)",
477
+ transparent: "var(--color-error-transparent)",
478
+ contrastText: "var(--color-error-contrast-text)",
479
+ borderTransparent: "var(--color-error-border-transparent)"
480
+ },
481
+ success: {
482
+ name: "var(--color-success-name)",
483
+ main: "var(--color-success-main)",
484
+ text: "var(--color-success-text)",
485
+ border: "var(--color-success-border)",
486
+ shade: "var(--color-success-shade)",
487
+ transparent: "var(--color-success-transparent)",
488
+ contrastText: "var(--color-success-contrast-text)",
489
+ borderTransparent: "var(--color-success-border-transparent)"
490
+ },
491
+ warning: {
492
+ name: "var(--color-warning-name)",
493
+ main: "var(--color-warning-main)",
494
+ text: "var(--color-warning-text)",
495
+ border: "var(--color-warning-border)",
496
+ shade: "var(--color-warning-shade)",
497
+ transparent: "var(--color-warning-transparent)",
498
+ contrastText: "var(--color-warning-contrast-text)",
499
+ borderTransparent: "var(--color-warning-border-transparent)"
500
+ },
501
+ background: {
502
+ canvas: "var(--color-background-canvas)",
503
+ primary: "var(--color-background-primary)",
504
+ secondary: "var(--color-background-secondary)",
505
+ elevated: "var(--color-background-elevated)"
506
+ },
507
+ gradients: {
508
+ brandHorizontal: "var(--color-gradients-brand-horizontal)",
509
+ brandVertical: "var(--color-gradients-brand-vertical)"
510
+ }
511
+ };
512
+
513
+ const colors$2 = {
514
+ black: "#000000",
515
+ white: "#ffffff",
516
+ red50: "oklch(97.1% 0.013 17.38)",
517
+ red100: "oklch(93.6% 0.032 17.717)",
518
+ red200: "oklch(88.5% 0.062 18.334)",
519
+ red300: "oklch(80.8% 0.114 19.571)",
520
+ red400: "oklch(70.4% 0.191 22.216)",
521
+ red500: "oklch(63.7% 0.237 25.331)",
522
+ red600: "oklch(57.7% 0.245 27.325)",
523
+ red700: "oklch(50.5% 0.213 27.518)",
524
+ red800: "oklch(44.4% 0.177 26.899)",
525
+ red900: "oklch(39.6% 0.141 25.723)",
526
+ red950: "oklch(25.8% 0.092 26.042)",
527
+ orange50: "oklch(98% 0.016 73.684)",
528
+ orange100: "oklch(95.4% 0.038 75.164)",
529
+ orange200: "oklch(90.1% 0.076 70.697)",
530
+ orange300: "oklch(83.7% 0.128 66.29)",
531
+ orange400: "oklch(75% 0.183 55.934)",
532
+ orange500: "oklch(70.5% 0.213 47.604)",
533
+ orange600: "oklch(64.6% 0.222 41.116)",
534
+ orange700: "oklch(55.3% 0.195 38.402)",
535
+ orange800: "oklch(47% 0.157 37.304)",
536
+ orange900: "oklch(40.8% 0.123 38.172)",
537
+ orange950: "oklch(26.6% 0.079 36.259)",
538
+ amber50: "oklch(98.7% 0.022 95.277)",
539
+ amber100: "oklch(96.2% 0.059 95.617)",
540
+ amber200: "oklch(92.4% 0.12 95.746)",
541
+ amber300: "oklch(87.9% 0.169 91.605)",
542
+ amber400: "oklch(82.8% 0.189 84.429)",
543
+ amber500: "oklch(76.9% 0.188 70.08)",
544
+ amber600: "oklch(66.6% 0.179 58.318)",
545
+ amber700: "oklch(55.5% 0.163 48.998)",
546
+ amber800: "oklch(47.3% 0.137 46.201)",
547
+ amber900: "oklch(41.4% 0.112 45.904)",
548
+ amber950: "oklch(27.9% 0.077 45.635)",
549
+ yellow50: "oklch(98.7% 0.026 102.212)",
550
+ yellow100: "oklch(97.3% 0.071 103.193)",
551
+ yellow200: "oklch(94.5% 0.129 101.54)",
552
+ yellow300: "oklch(90.5% 0.182 98.111)",
553
+ yellow400: "oklch(85.2% 0.199 91.936)",
554
+ yellow500: "oklch(79.5% 0.184 86.047)",
555
+ yellow600: "oklch(68.1% 0.162 75.834)",
556
+ yellow700: "oklch(55.4% 0.135 66.442)",
557
+ yellow800: "oklch(47.6% 0.114 61.907)",
558
+ yellow900: "oklch(42.1% 0.095 57.708)",
559
+ yellow950: "oklch(28.6% 0.066 53.813)",
560
+ lime50: "oklch(98.6% 0.031 120.757)",
561
+ lime100: "oklch(96.7% 0.067 122.328)",
562
+ lime200: "oklch(93.8% 0.127 124.321)",
563
+ lime300: "oklch(89.7% 0.196 126.665)",
564
+ lime400: "oklch(84.1% 0.238 128.85)",
565
+ lime500: "oklch(76.8% 0.233 130.85)",
566
+ lime600: "oklch(64.8% 0.2 131.684)",
567
+ lime700: "oklch(53.2% 0.157 131.589)",
568
+ lime800: "oklch(45.3% 0.124 130.933)",
569
+ lime900: "oklch(40.5% 0.101 131.063)",
570
+ lime950: "oklch(27.4% 0.072 132.109)",
571
+ green50: "oklch(98.2% 0.018 155.826)",
572
+ green100: "oklch(96.2% 0.044 156.743)",
573
+ green200: "oklch(92.5% 0.084 155.995)",
574
+ green300: "oklch(87.1% 0.15 154.449)",
575
+ green400: "oklch(79.2% 0.209 151.711)",
576
+ green500: "oklch(72.3% 0.219 149.579)",
577
+ green600: "oklch(62.7% 0.194 149.214)",
578
+ green700: "oklch(52.7% 0.154 150.069)",
579
+ green800: "oklch(44.8% 0.119 151.328)",
580
+ green900: "oklch(39.3% 0.095 152.535)",
581
+ green950: "oklch(26.6% 0.065 152.934)",
582
+ emerald50: "oklch(97.9% 0.021 166.113)",
583
+ emerald100: "oklch(95% 0.052 163.051)",
584
+ emerald200: "oklch(90.5% 0.093 164.15)",
585
+ emerald300: "oklch(84.5% 0.143 164.978)",
586
+ emerald400: "oklch(76.5% 0.177 163.223)",
587
+ emerald500: "oklch(69.6% 0.17 162.48)",
588
+ emerald600: "oklch(59.6% 0.145 163.225)",
589
+ emerald700: "oklch(50.8% 0.118 165.612)",
590
+ emerald800: "oklch(43.2% 0.095 166.913)",
591
+ emerald900: "oklch(37.8% 0.077 168.94)",
592
+ emerald950: "oklch(26.2% 0.051 172.552)",
593
+ teal50: "oklch(98.4% 0.014 180.72)",
594
+ teal100: "oklch(95.3% 0.051 180.801)",
595
+ teal200: "oklch(91% 0.096 180.426)",
596
+ teal300: "oklch(85.5% 0.138 181.071)",
597
+ teal400: "oklch(77.7% 0.152 181.912)",
598
+ teal500: "oklch(70.4% 0.14 182.503)",
599
+ teal600: "oklch(60% 0.118 184.704)",
600
+ teal700: "oklch(51.1% 0.096 186.391)",
601
+ teal800: "oklch(43.7% 0.078 188.216)",
602
+ teal900: "oklch(38.6% 0.063 188.416)",
603
+ teal950: "oklch(27.7% 0.046 192.524)",
604
+ cyan50: "oklch(98.4% 0.019 200.873)",
605
+ cyan100: "oklch(95.6% 0.045 203.388)",
606
+ cyan200: "oklch(91.7% 0.08 205.041)",
607
+ cyan300: "oklch(86.5% 0.127 207.078)",
608
+ cyan400: "oklch(78.9% 0.154 211.53)",
609
+ cyan500: "oklch(71.5% 0.143 215.221)",
610
+ cyan600: "oklch(60.9% 0.126 221.723)",
611
+ cyan700: "oklch(52% 0.105 223.128)",
612
+ cyan800: "oklch(45% 0.085 224.283)",
613
+ cyan900: "oklch(39.8% 0.07 227.392)",
614
+ cyan950: "oklch(30.2% 0.056 229.695)",
615
+ sky50: "oklch(97.7% 0.013 236.62)",
616
+ sky100: "oklch(95.1% 0.026 236.824)",
617
+ sky200: "oklch(90.1% 0.058 230.902)",
618
+ sky300: "oklch(82.8% 0.111 230.318)",
619
+ sky400: "oklch(74.6% 0.16 232.661)",
620
+ sky500: "oklch(68.5% 0.169 237.323)",
621
+ sky600: "oklch(58.8% 0.158 241.966)",
622
+ sky700: "oklch(50% 0.134 242.749)",
623
+ sky800: "oklch(44.3% 0.11 240.79)",
624
+ sky900: "oklch(39.1% 0.09 240.876)",
625
+ sky950: "oklch(29.3% 0.066 243.157)",
626
+ blue50: "oklch(97% 0.014 254.604)",
627
+ blue100: "oklch(93.2% 0.032 255.585)",
628
+ blue200: "oklch(88.2% 0.059 254.128)",
629
+ blue300: "oklch(80.9% 0.105 251.813)",
630
+ blue400: "oklch(70.7% 0.165 254.624)",
631
+ blue500: "oklch(62.3% 0.214 259.815)",
632
+ blue600: "oklch(54.6% 0.245 262.881)",
633
+ blue700: "oklch(48.8% 0.243 264.376)",
634
+ blue800: "oklch(42.4% 0.199 265.638)",
635
+ blue900: "oklch(37.9% 0.146 265.522)",
636
+ blue950: "oklch(28.2% 0.091 267.935)",
637
+ indigo50: "oklch(96.2% 0.018 272.314)",
638
+ indigo100: "oklch(93% 0.034 272.788)",
639
+ indigo200: "oklch(87% 0.065 274.039)",
640
+ indigo300: "oklch(78.5% 0.115 274.713)",
641
+ indigo400: "oklch(67.3% 0.182 276.935)",
642
+ indigo500: "oklch(58.5% 0.233 277.117)",
643
+ indigo600: "oklch(51.1% 0.262 276.966)",
644
+ indigo700: "oklch(45.7% 0.24 277.023)",
645
+ indigo800: "oklch(39.8% 0.195 277.366)",
646
+ indigo900: "oklch(35.9% 0.144 278.697)",
647
+ indigo950: "oklch(25.7% 0.09 281.288)",
648
+ violet50: "oklch(96.9% 0.016 293.756)",
649
+ violet100: "oklch(94.3% 0.029 294.588)",
650
+ violet200: "oklch(89.4% 0.057 293.283)",
651
+ violet300: "oklch(81.1% 0.111 293.571)",
652
+ violet400: "oklch(70.2% 0.183 293.541)",
653
+ violet500: "oklch(60.6% 0.25 292.717)",
654
+ violet600: "oklch(54.1% 0.281 293.009)",
655
+ violet700: "oklch(49.1% 0.27 292.581)",
656
+ violet800: "oklch(43.2% 0.232 292.759)",
657
+ violet900: "oklch(38% 0.189 293.745)",
658
+ violet950: "oklch(28.3% 0.141 291.089)",
659
+ purple50: "oklch(97.7% 0.014 308.299)",
660
+ purple100: "oklch(94.6% 0.033 307.174)",
661
+ purple200: "oklch(90.2% 0.063 306.703)",
662
+ purple300: "oklch(82.7% 0.119 306.383)",
663
+ purple400: "oklch(71.4% 0.203 305.504)",
664
+ purple500: "oklch(62.7% 0.265 303.9)",
665
+ purple600: "oklch(55.8% 0.288 302.321)",
666
+ purple700: "oklch(49.6% 0.265 301.924)",
667
+ purple800: "oklch(43.8% 0.218 303.724)",
668
+ purple900: "oklch(38.1% 0.176 304.987)",
669
+ purple950: "oklch(29.1% 0.149 302.717)",
670
+ fuchsia50: "oklch(97.7% 0.017 320.058)",
671
+ fuchsia100: "oklch(95.2% 0.037 318.852)",
672
+ fuchsia200: "oklch(90.3% 0.076 319.62)",
673
+ fuchsia300: "oklch(83.3% 0.145 321.434)",
674
+ fuchsia400: "oklch(74% 0.238 322.16)",
675
+ fuchsia500: "oklch(66.7% 0.295 322.15)",
676
+ fuchsia600: "oklch(59.1% 0.293 322.896)",
677
+ fuchsia700: "oklch(51.8% 0.253 323.949)",
678
+ fuchsia800: "oklch(45.2% 0.211 324.591)",
679
+ fuchsia900: "oklch(40.1% 0.17 325.612)",
680
+ fuchsia950: "oklch(29.3% 0.136 325.661)",
681
+ pink50: "oklch(97.1% 0.014 343.198)",
682
+ pink100: "oklch(94.8% 0.028 342.258)",
683
+ pink200: "oklch(89.9% 0.061 343.231)",
684
+ pink300: "oklch(82.3% 0.12 346.018)",
685
+ pink400: "oklch(71.8% 0.202 349.761)",
686
+ pink500: "oklch(65.6% 0.241 354.308)",
687
+ pink600: "oklch(59.2% 0.249 0.584)",
688
+ pink700: "oklch(52.5% 0.223 3.958)",
689
+ pink800: "oklch(45.9% 0.187 3.815)",
690
+ pink900: "oklch(40.8% 0.153 2.432)",
691
+ pink950: "oklch(28.4% 0.109 3.907)",
692
+ rose50: "oklch(96.9% 0.015 12.422)",
693
+ rose100: "oklch(94.1% 0.03 12.58)",
694
+ rose200: "oklch(89.2% 0.058 10.001)",
695
+ rose300: "oklch(81% 0.117 11.638)",
696
+ rose400: "oklch(71.2% 0.194 13.428)",
697
+ rose500: "oklch(64.5% 0.246 16.439)",
698
+ rose600: "oklch(58.6% 0.253 17.585)",
699
+ rose700: "oklch(51.4% 0.222 16.935)",
700
+ rose800: "oklch(45.5% 0.188 13.697)",
701
+ rose900: "oklch(41% 0.159 10.272)",
702
+ rose950: "oklch(27.1% 0.105 12.094)",
703
+ slate50: "oklch(98.4% 0.003 247.858)",
704
+ slate100: "oklch(96.8% 0.007 247.896)",
705
+ slate200: "oklch(92.9% 0.013 255.508)",
706
+ slate300: "oklch(86.9% 0.022 252.894)",
707
+ slate400: "oklch(70.4% 0.04 256.788)",
708
+ slate500: "oklch(55.4% 0.046 257.417)",
709
+ slate600: "oklch(44.6% 0.043 257.281)",
710
+ slate700: "oklch(37.2% 0.044 257.287)",
711
+ slate800: "oklch(27.9% 0.041 260.031)",
712
+ slate900: "oklch(20.8% 0.042 265.755)",
713
+ slate950: "oklch(12.9% 0.042 264.695)",
714
+ gray50: "oklch(98.5% 0.002 247.839)",
715
+ gray100: "oklch(96.7% 0.003 264.542)",
716
+ gray200: "oklch(92.8% 0.006 264.531)",
717
+ gray300: "oklch(87.2% 0.01 258.338)",
718
+ gray400: "oklch(70.7% 0.022 261.325)",
719
+ gray500: "oklch(55.1% 0.027 264.364)",
720
+ gray600: "oklch(44.6% 0.03 256.802)",
721
+ gray700: "oklch(37.3% 0.034 259.733)",
722
+ gray800: "oklch(27.8% 0.033 256.848)",
723
+ gray900: "oklch(21% 0.034 264.665)",
724
+ gray950: "oklch(13% 0.028 261.692)",
725
+ zinc50: "oklch(98.5% 0 0)",
726
+ zinc100: "oklch(96.7% 0.001 286.375)",
727
+ zinc200: "oklch(92% 0.004 286.32)",
728
+ zinc300: "oklch(87.1% 0.006 286.286)",
729
+ zinc400: "oklch(70.5% 0.015 286.067)",
730
+ zinc500: "oklch(55.2% 0.016 285.938)",
731
+ zinc600: "oklch(44.2% 0.017 285.786)",
732
+ zinc700: "oklch(37% 0.013 285.805)",
733
+ zinc800: "oklch(27.4% 0.006 286.033)",
734
+ zinc900: "oklch(21% 0.006 285.885)",
735
+ zinc950: "oklch(14.1% 0.005 285.823)",
736
+ neutral50: "oklch(98.5% 0 0)",
737
+ neutral100: "oklch(97% 0 0)",
738
+ neutral200: "oklch(92.2% 0 0)",
739
+ neutral300: "oklch(87% 0 0)",
740
+ neutral400: "oklch(70.8% 0 0)",
741
+ neutral500: "oklch(55.6% 0 0)",
742
+ neutral600: "oklch(43.9% 0 0)",
743
+ neutral700: "oklch(37.1% 0 0)",
744
+ neutral800: "oklch(26.9% 0 0)",
745
+ neutral900: "oklch(20.5% 0 0)",
746
+ neutral950: "oklch(14.5% 0 0)",
747
+ stone50: "oklch(98.5% 0.001 106.423)",
748
+ stone100: "oklch(97% 0.001 106.424)",
749
+ stone200: "oklch(92.3% 0.003 48.717)",
750
+ stone300: "oklch(86.9% 0.005 56.366)",
751
+ stone400: "oklch(70.9% 0.01 56.259)",
752
+ stone500: "oklch(55.3% 0.013 58.071)",
753
+ stone600: "oklch(44.4% 0.011 73.639)",
754
+ stone700: "oklch(37.4% 0.01 67.558)",
755
+ stone800: "oklch(26.8% 0.007 34.298)",
756
+ stone900: "oklch(21.6% 0.006 56.043)",
757
+ stone950: "oklch(14.7% 0.004 49.25)"
758
+ };
759
+
760
+ const colors$1 = {
761
+ black: "var(--color-black)",
762
+ white: "var(--color-white)",
763
+ red50: "var(--color-red-50)",
764
+ red100: "var(--color-red-100)",
765
+ red200: "var(--color-red-200)",
766
+ red300: "var(--color-red-300)",
767
+ red400: "var(--color-red-400)",
768
+ red500: "var(--color-red-500)",
769
+ red600: "var(--color-red-600)",
770
+ red700: "var(--color-red-700)",
771
+ red800: "var(--color-red-800)",
772
+ red900: "var(--color-red-900)",
773
+ red950: "var(--color-red-950)",
774
+ orange50: "var(--color-orange-50)",
775
+ orange100: "var(--color-orange-100)",
776
+ orange200: "var(--color-orange-200)",
777
+ orange300: "var(--color-orange-300)",
778
+ orange400: "var(--color-orange-400)",
779
+ orange500: "var(--color-orange-500)",
780
+ orange600: "var(--color-orange-600)",
781
+ orange700: "var(--color-orange-700)",
782
+ orange800: "var(--color-orange-800)",
783
+ orange900: "var(--color-orange-900)",
784
+ orange950: "var(--color-orange-950)",
785
+ amber50: "var(--color-amber-50)",
786
+ amber100: "var(--color-amber-100)",
787
+ amber200: "var(--color-amber-200)",
788
+ amber300: "var(--color-amber-300)",
789
+ amber400: "var(--color-amber-400)",
790
+ amber500: "var(--color-amber-500)",
791
+ amber600: "var(--color-amber-600)",
792
+ amber700: "var(--color-amber-700)",
793
+ amber800: "var(--color-amber-800)",
794
+ amber900: "var(--color-amber-900)",
795
+ amber950: "var(--color-amber-950)",
796
+ yellow50: "var(--color-yellow-50)",
797
+ yellow100: "var(--color-yellow-100)",
798
+ yellow200: "var(--color-yellow-200)",
799
+ yellow300: "var(--color-yellow-300)",
800
+ yellow400: "var(--color-yellow-400)",
801
+ yellow500: "var(--color-yellow-500)",
802
+ yellow600: "var(--color-yellow-600)",
803
+ yellow700: "var(--color-yellow-700)",
804
+ yellow800: "var(--color-yellow-800)",
805
+ yellow900: "var(--color-yellow-900)",
806
+ yellow950: "var(--color-yellow-950)",
807
+ lime50: "var(--color-lime-50)",
808
+ lime100: "var(--color-lime-100)",
809
+ lime200: "var(--color-lime-200)",
810
+ lime300: "var(--color-lime-300)",
811
+ lime400: "var(--color-lime-400)",
812
+ lime500: "var(--color-lime-500)",
813
+ lime600: "var(--color-lime-600)",
814
+ lime700: "var(--color-lime-700)",
815
+ lime800: "var(--color-lime-800)",
816
+ lime900: "var(--color-lime-900)",
817
+ lime950: "var(--color-lime-950)",
818
+ green50: "var(--color-green-50)",
819
+ green100: "var(--color-green-100)",
820
+ green200: "var(--color-green-200)",
821
+ green300: "var(--color-green-300)",
822
+ green400: "var(--color-green-400)",
823
+ green500: "var(--color-green-500)",
824
+ green600: "var(--color-green-600)",
825
+ green700: "var(--color-green-700)",
826
+ green800: "var(--color-green-800)",
827
+ green900: "var(--color-green-900)",
828
+ green950: "var(--color-green-950)",
829
+ emerald50: "var(--color-emerald-50)",
830
+ emerald100: "var(--color-emerald-100)",
831
+ emerald200: "var(--color-emerald-200)",
832
+ emerald300: "var(--color-emerald-300)",
833
+ emerald400: "var(--color-emerald-400)",
834
+ emerald500: "var(--color-emerald-500)",
835
+ emerald600: "var(--color-emerald-600)",
836
+ emerald700: "var(--color-emerald-700)",
837
+ emerald800: "var(--color-emerald-800)",
838
+ emerald900: "var(--color-emerald-900)",
839
+ emerald950: "var(--color-emerald-950)",
840
+ teal50: "var(--color-teal-50)",
841
+ teal100: "var(--color-teal-100)",
842
+ teal200: "var(--color-teal-200)",
843
+ teal300: "var(--color-teal-300)",
844
+ teal400: "var(--color-teal-400)",
845
+ teal500: "var(--color-teal-500)",
846
+ teal600: "var(--color-teal-600)",
847
+ teal700: "var(--color-teal-700)",
848
+ teal800: "var(--color-teal-800)",
849
+ teal900: "var(--color-teal-900)",
850
+ teal950: "var(--color-teal-950)",
851
+ cyan50: "var(--color-cyan-50)",
852
+ cyan100: "var(--color-cyan-100)",
853
+ cyan200: "var(--color-cyan-200)",
854
+ cyan300: "var(--color-cyan-300)",
855
+ cyan400: "var(--color-cyan-400)",
856
+ cyan500: "var(--color-cyan-500)",
857
+ cyan600: "var(--color-cyan-600)",
858
+ cyan700: "var(--color-cyan-700)",
859
+ cyan800: "var(--color-cyan-800)",
860
+ cyan900: "var(--color-cyan-900)",
861
+ cyan950: "var(--color-cyan-950)",
862
+ sky50: "var(--color-sky-50)",
863
+ sky100: "var(--color-sky-100)",
864
+ sky200: "var(--color-sky-200)",
865
+ sky300: "var(--color-sky-300)",
866
+ sky400: "var(--color-sky-400)",
867
+ sky500: "var(--color-sky-500)",
868
+ sky600: "var(--color-sky-600)",
869
+ sky700: "var(--color-sky-700)",
870
+ sky800: "var(--color-sky-800)",
871
+ sky900: "var(--color-sky-900)",
872
+ sky950: "var(--color-sky-950)",
873
+ blue50: "var(--color-blue-50)",
874
+ blue100: "var(--color-blue-100)",
875
+ blue200: "var(--color-blue-200)",
876
+ blue300: "var(--color-blue-300)",
877
+ blue400: "var(--color-blue-400)",
878
+ blue500: "var(--color-blue-500)",
879
+ blue600: "var(--color-blue-600)",
880
+ blue700: "var(--color-blue-700)",
881
+ blue800: "var(--color-blue-800)",
882
+ blue900: "var(--color-blue-900)",
883
+ blue950: "var(--color-blue-950)",
884
+ indigo50: "var(--color-indigo-50)",
885
+ indigo100: "var(--color-indigo-100)",
886
+ indigo200: "var(--color-indigo-200)",
887
+ indigo300: "var(--color-indigo-300)",
888
+ indigo400: "var(--color-indigo-400)",
889
+ indigo500: "var(--color-indigo-500)",
890
+ indigo600: "var(--color-indigo-600)",
891
+ indigo700: "var(--color-indigo-700)",
892
+ indigo800: "var(--color-indigo-800)",
893
+ indigo900: "var(--color-indigo-900)",
894
+ indigo950: "var(--color-indigo-950)",
895
+ violet50: "var(--color-violet-50)",
896
+ violet100: "var(--color-violet-100)",
897
+ violet200: "var(--color-violet-200)",
898
+ violet300: "var(--color-violet-300)",
899
+ violet400: "var(--color-violet-400)",
900
+ violet500: "var(--color-violet-500)",
901
+ violet600: "var(--color-violet-600)",
902
+ violet700: "var(--color-violet-700)",
903
+ violet800: "var(--color-violet-800)",
904
+ violet900: "var(--color-violet-900)",
905
+ violet950: "var(--color-violet-950)",
906
+ purple50: "var(--color-purple-50)",
907
+ purple100: "var(--color-purple-100)",
908
+ purple200: "var(--color-purple-200)",
909
+ purple300: "var(--color-purple-300)",
910
+ purple400: "var(--color-purple-400)",
911
+ purple500: "var(--color-purple-500)",
912
+ purple600: "var(--color-purple-600)",
913
+ purple700: "var(--color-purple-700)",
914
+ purple800: "var(--color-purple-800)",
915
+ purple900: "var(--color-purple-900)",
916
+ purple950: "var(--color-purple-950)",
917
+ fuchsia50: "var(--color-fuchsia-50)",
918
+ fuchsia100: "var(--color-fuchsia-100)",
919
+ fuchsia200: "var(--color-fuchsia-200)",
920
+ fuchsia300: "var(--color-fuchsia-300)",
921
+ fuchsia400: "var(--color-fuchsia-400)",
922
+ fuchsia500: "var(--color-fuchsia-500)",
923
+ fuchsia600: "var(--color-fuchsia-600)",
924
+ fuchsia700: "var(--color-fuchsia-700)",
925
+ fuchsia800: "var(--color-fuchsia-800)",
926
+ fuchsia900: "var(--color-fuchsia-900)",
927
+ fuchsia950: "var(--color-fuchsia-950)",
928
+ pink50: "var(--color-pink-50)",
929
+ pink100: "var(--color-pink-100)",
930
+ pink200: "var(--color-pink-200)",
931
+ pink300: "var(--color-pink-300)",
932
+ pink400: "var(--color-pink-400)",
933
+ pink500: "var(--color-pink-500)",
934
+ pink600: "var(--color-pink-600)",
935
+ pink700: "var(--color-pink-700)",
936
+ pink800: "var(--color-pink-800)",
937
+ pink900: "var(--color-pink-900)",
938
+ pink950: "var(--color-pink-950)",
939
+ rose50: "var(--color-rose-50)",
940
+ rose100: "var(--color-rose-100)",
941
+ rose200: "var(--color-rose-200)",
942
+ rose300: "var(--color-rose-300)",
943
+ rose400: "var(--color-rose-400)",
944
+ rose500: "var(--color-rose-500)",
945
+ rose600: "var(--color-rose-600)",
946
+ rose700: "var(--color-rose-700)",
947
+ rose800: "var(--color-rose-800)",
948
+ rose900: "var(--color-rose-900)",
949
+ rose950: "var(--color-rose-950)",
950
+ slate50: "var(--color-slate-50)",
951
+ slate100: "var(--color-slate-100)",
952
+ slate200: "var(--color-slate-200)",
953
+ slate300: "var(--color-slate-300)",
954
+ slate400: "var(--color-slate-400)",
955
+ slate500: "var(--color-slate-500)",
956
+ slate600: "var(--color-slate-600)",
957
+ slate700: "var(--color-slate-700)",
958
+ slate800: "var(--color-slate-800)",
959
+ slate900: "var(--color-slate-900)",
960
+ slate950: "var(--color-slate-950)",
961
+ gray50: "var(--color-gray-50)",
962
+ gray100: "var(--color-gray-100)",
963
+ gray200: "var(--color-gray-200)",
964
+ gray300: "var(--color-gray-300)",
965
+ gray400: "var(--color-gray-400)",
966
+ gray500: "var(--color-gray-500)",
967
+ gray600: "var(--color-gray-600)",
968
+ gray700: "var(--color-gray-700)",
969
+ gray800: "var(--color-gray-800)",
970
+ gray900: "var(--color-gray-900)",
971
+ gray950: "var(--color-gray-950)",
972
+ zinc50: "var(--color-zinc-50)",
973
+ zinc100: "var(--color-zinc-100)",
974
+ zinc200: "var(--color-zinc-200)",
975
+ zinc300: "var(--color-zinc-300)",
976
+ zinc400: "var(--color-zinc-400)",
977
+ zinc500: "var(--color-zinc-500)",
978
+ zinc600: "var(--color-zinc-600)",
979
+ zinc700: "var(--color-zinc-700)",
980
+ zinc800: "var(--color-zinc-800)",
981
+ zinc900: "var(--color-zinc-900)",
982
+ zinc950: "var(--color-zinc-950)",
983
+ neutral50: "var(--color-neutral-50)",
984
+ neutral100: "var(--color-neutral-100)",
985
+ neutral200: "var(--color-neutral-200)",
986
+ neutral300: "var(--color-neutral-300)",
987
+ neutral400: "var(--color-neutral-400)",
988
+ neutral500: "var(--color-neutral-500)",
989
+ neutral600: "var(--color-neutral-600)",
990
+ neutral700: "var(--color-neutral-700)",
991
+ neutral800: "var(--color-neutral-800)",
992
+ neutral900: "var(--color-neutral-900)",
993
+ neutral950: "var(--color-neutral-950)",
994
+ stone50: "var(--color-stone-50)",
995
+ stone100: "var(--color-stone-100)",
996
+ stone200: "var(--color-stone-200)",
997
+ stone300: "var(--color-stone-300)",
998
+ stone400: "var(--color-stone-400)",
999
+ stone500: "var(--color-stone-500)",
1000
+ stone600: "var(--color-stone-600)",
1001
+ stone700: "var(--color-stone-700)",
1002
+ stone800: "var(--color-stone-800)",
1003
+ stone900: "var(--color-stone-900)",
1004
+ stone950: "var(--color-stone-950)"
1005
+ };
1006
+
1007
+ const typography$2 = {
1008
+ fontFamily: {
1009
+ ui: 'Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
1010
+ monospace: "'Roboto Mono', monospace"
1011
+ },
1012
+ fontSize: {
1013
+ ui: {
1014
+ xs: "10px",
1015
+ sm: "12px",
1016
+ md: "14px",
1017
+ lg: "18px"
1018
+ },
1019
+ monospace: {
1020
+ xs: "10px",
1021
+ sm: "12px",
1022
+ md: "14px",
1023
+ lg: "18px"
1024
+ }
1025
+ },
1026
+ fontWeight: {
1027
+ light: "300",
1028
+ normal: "400",
1029
+ medium: "500",
1030
+ bold: "700"
1031
+ }
1032
+ };
1033
+
1034
+ const typography$1 = {
1035
+ fontFamily: {
1036
+ ui: "var(--typography-font-family-ui)",
1037
+ monospace: "var(--typography-font-family-monospace)"
1038
+ },
1039
+ fontSize: {
1040
+ ui: {
1041
+ xs: "var(--typography-font-size-ui-xs)",
1042
+ sm: "var(--typography-font-size-ui-sm)",
1043
+ md: "var(--typography-font-size-ui-md)",
1044
+ lg: "var(--typography-font-size-ui-lg)"
1045
+ },
1046
+ monospace: {
1047
+ xs: "var(--typography-font-size-monospace-xs)",
1048
+ sm: "var(--typography-font-size-monospace-sm)",
1049
+ md: "var(--typography-font-size-monospace-md)",
1050
+ lg: "var(--typography-font-size-monospace-lg)"
1051
+ }
1052
+ },
1053
+ fontWeight: {
1054
+ light: "var(--typography-font-weight-light)",
1055
+ normal: "var(--typography-font-weight-normal)",
1056
+ medium: "var(--typography-font-weight-medium)",
1057
+ bold: "var(--typography-font-weight-bold)"
1058
+ }
1059
+ };
1060
+
1061
+ const spacing$2 = {
1062
+ zero: "0",
1063
+ xxs: "2px",
1064
+ xs: "4px",
1065
+ sm: "8px",
1066
+ md: "12px",
1067
+ lg: "16px",
1068
+ xl: "20px",
1069
+ xxl: "24px",
1070
+ xxxl: "32px",
1071
+ huge: "40px"
1072
+ };
1073
+
1074
+ const spacing$1 = {
1075
+ zero: "var(--spacing-zero)",
1076
+ xxs: "var(--spacing-xxs)",
1077
+ xs: "var(--spacing-xs)",
1078
+ sm: "var(--spacing-sm)",
1079
+ md: "var(--spacing-md)",
1080
+ lg: "var(--spacing-lg)",
1081
+ xl: "var(--spacing-xl)",
1082
+ xxl: "var(--spacing-xxl)",
1083
+ xxxl: "var(--spacing-xxxl)",
1084
+ huge: "var(--spacing-huge)"
1085
+ };
1086
+
1087
+ const borderRadius$1 = {
1088
+ sm: "4px",
1089
+ md: "6px",
1090
+ lg: "10px",
1091
+ pill: "9999px",
1092
+ circle: "100%"
1093
+ };
1094
+
1095
+ const borderRadius = {
1096
+ sm: "var(--border-radius-sm)",
1097
+ md: "var(--border-radius-md)",
1098
+ lg: "var(--border-radius-lg)",
1099
+ pill: "var(--border-radius-pill)",
1100
+ circle: "var(--border-radius-circle)"
1101
+ };
1102
+
1103
+ const boxshadows$3 = {
1104
+ z1: "0 1px 2px #000000",
1105
+ z2: "0 4px 8px #000000",
1106
+ z3: "0 8px 24px #000000"
1107
+ };
1108
+
1109
+ const boxshadows$2 = {
1110
+ z1: "var(--boxshadow-z1)",
1111
+ z2: "var(--boxshadow-z2)",
1112
+ z3: "var(--boxshadow-z3)"
1113
+ };
1114
+
1115
+ const boxshadows$1 = {
1116
+ z1: "0 1px 2px #181b1f",
1117
+ z2: "0 4px 8px #181b1f",
1118
+ z3: "0 8px 24px #181b1f"
1119
+ };
1120
+
1121
+ const boxshadows = {
1122
+ z1: "var(--boxshadow-z1)",
1123
+ z2: "var(--boxshadow-z2)",
1124
+ z3: "var(--boxshadow-z3)"
1125
+ };
1126
+
1127
+ const LEGACY_COLORS = {
1128
+ literal: {
1129
+ light: lightColors$1,
1130
+ dark: darkColors$1
1131
+ },
1132
+ css: {
1133
+ light: lightColors,
1134
+ dark: darkColors
1135
+ }
1136
+ };
1137
+ const LEGACY_BORDER_RADIUS = {
1138
+ literal: borderRadius$1,
1139
+ css: borderRadius
1140
+ };
1141
+ const LEGACY_BOXSHADOWS = {
1142
+ literal: {
1143
+ light: boxshadows$1,
1144
+ dark: boxshadows$3
1145
+ },
1146
+ css: {
1147
+ light: boxshadows,
1148
+ dark: boxshadows$2
1149
+ }
1150
+ };
1151
+ const colors = {
1152
+ literal: colors$2,
1153
+ css: colors$1
1154
+ };
1155
+ const typography = {
1156
+ literal: typography$2,
1157
+ css: typography$1
1158
+ };
1159
+ const spacing = {
1160
+ literal: spacing$2,
1161
+ css: spacing$1
1162
+ };
1163
+ const DEFAULT_OPTIONS = {
1164
+ mode: "light",
1165
+ valueType: void 0
1166
+ };
1167
+ const getDesignTokens = ({
1168
+ mode = "light",
1169
+ valueType: _valueType = void 0
1170
+ } = DEFAULT_OPTIONS) => {
1171
+ const legacyValueType = _valueType || "literal";
1172
+ const valueType = _valueType || "css";
1173
+ return {
1174
+ legacy: {
1175
+ palette: palette.legacy,
1176
+ colors: LEGACY_COLORS[legacyValueType][mode],
1177
+ borderRadius: LEGACY_BORDER_RADIUS[legacyValueType],
1178
+ boxShadows: LEGACY_BOXSHADOWS[legacyValueType][mode]
1179
+ },
1180
+ primitives: {
1181
+ colors: colors[valueType],
1182
+ typography: typography[valueType],
1183
+ spacing: spacing[valueType]
1184
+ }
1185
+ };
1186
+ };
1187
+
1188
+ const THEME_COLOR_MODES = ["light", "dark"];
1189
+
1190
+ /*
1191
+
1192
+ Based off glamor's StyleSheet, thanks Sunil ❤️
1193
+
1194
+ high performance StyleSheet for css-in-js systems
1195
+
1196
+ - uses multiple style tags behind the scenes for millions of rules
1197
+ - uses `insertRule` for appending in production for *much* faster performance
1198
+
1199
+ // usage
1200
+
1201
+ import { StyleSheet } from '@emotion/sheet'
1202
+
1203
+ let styleSheet = new StyleSheet({ key: '', container: document.head })
1204
+
1205
+ styleSheet.insert('#box { border: 1px solid red; }')
1206
+ - appends a css rule into the stylesheet
1207
+
1208
+ styleSheet.flush()
1209
+ - empties the stylesheet of all its contents
1210
+
1211
+ */
1212
+
1213
+ function sheetForTag(tag) {
1214
+ if (tag.sheet) {
1215
+ return tag.sheet;
1216
+ } // this weirdness brought to you by firefox
1217
+
1218
+ /* istanbul ignore next */
1219
+
1220
+
1221
+ for (var i = 0; i < document.styleSheets.length; i++) {
1222
+ if (document.styleSheets[i].ownerNode === tag) {
1223
+ return document.styleSheets[i];
1224
+ }
1225
+ } // this function should always return with a value
1226
+ // TS can't understand it though so we make it stop complaining here
1227
+
1228
+
1229
+ return undefined;
1230
+ }
1231
+
1232
+ function createStyleElement(options) {
1233
+ var tag = document.createElement('style');
1234
+ tag.setAttribute('data-emotion', options.key);
1235
+
1236
+ if (options.nonce !== undefined) {
1237
+ tag.setAttribute('nonce', options.nonce);
1238
+ }
1239
+
1240
+ tag.appendChild(document.createTextNode(''));
1241
+ tag.setAttribute('data-s', '');
1242
+ return tag;
1243
+ }
1244
+
1245
+ var StyleSheet = /*#__PURE__*/function () {
1246
+ // Using Node instead of HTMLElement since container may be a ShadowRoot
1247
+ function StyleSheet(options) {
1248
+ var _this = this;
1249
+
1250
+ this._insertTag = function (tag) {
1251
+ var before;
1252
+
1253
+ if (_this.tags.length === 0) {
1254
+ if (_this.insertionPoint) {
1255
+ before = _this.insertionPoint.nextSibling;
1256
+ } else if (_this.prepend) {
1257
+ before = _this.container.firstChild;
1258
+ } else {
1259
+ before = _this.before;
1260
+ }
1261
+ } else {
1262
+ before = _this.tags[_this.tags.length - 1].nextSibling;
1263
+ }
1264
+
1265
+ _this.container.insertBefore(tag, before);
1266
+
1267
+ _this.tags.push(tag);
1268
+ };
1269
+
1270
+ this.isSpeedy = options.speedy === undefined ? true : options.speedy;
1271
+ this.tags = [];
1272
+ this.ctr = 0;
1273
+ this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets
1274
+
1275
+ this.key = options.key;
1276
+ this.container = options.container;
1277
+ this.prepend = options.prepend;
1278
+ this.insertionPoint = options.insertionPoint;
1279
+ this.before = null;
1280
+ }
1281
+
1282
+ var _proto = StyleSheet.prototype;
1283
+
1284
+ _proto.hydrate = function hydrate(nodes) {
1285
+ nodes.forEach(this._insertTag);
1286
+ };
1287
+
1288
+ _proto.insert = function insert(rule) {
1289
+ // the max length is how many rules we have per style tag, it's 65000 in speedy mode
1290
+ // it's 1 in dev because we insert source maps that map a single rule to a location
1291
+ // and you can only have one source map per style tag
1292
+ if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {
1293
+ this._insertTag(createStyleElement(this));
1294
+ }
1295
+
1296
+ var tag = this.tags[this.tags.length - 1];
1297
+
1298
+ if (this.isSpeedy) {
1299
+ var sheet = sheetForTag(tag);
1300
+
1301
+ try {
1302
+ // this is the ultrafast version, works across browsers
1303
+ // the big drawback is that the css won't be editable in devtools
1304
+ sheet.insertRule(rule, sheet.cssRules.length);
1305
+ } catch (e) {
1306
+ }
1307
+ } else {
1308
+ tag.appendChild(document.createTextNode(rule));
1309
+ }
1310
+
1311
+ this.ctr++;
1312
+ };
1313
+
1314
+ _proto.flush = function flush() {
1315
+ this.tags.forEach(function (tag) {
1316
+ var _tag$parentNode;
1317
+
1318
+ return (_tag$parentNode = tag.parentNode) == null ? void 0 : _tag$parentNode.removeChild(tag);
1319
+ });
1320
+ this.tags = [];
1321
+ this.ctr = 0;
1322
+ };
1323
+
1324
+ return StyleSheet;
1325
+ }();
1326
+
1327
+ var MS = '-ms-';
1328
+ var MOZ = '-moz-';
1329
+ var WEBKIT = '-webkit-';
1330
+
1331
+ var COMMENT = 'comm';
1332
+ var RULESET = 'rule';
1333
+ var DECLARATION = 'decl';
1334
+ var IMPORT = '@import';
1335
+ var KEYFRAMES = '@keyframes';
1336
+ var LAYER = '@layer';
1337
+
1338
+ /**
1339
+ * @param {number}
1340
+ * @return {number}
1341
+ */
1342
+ var abs = Math.abs;
1343
+
1344
+ /**
1345
+ * @param {number}
1346
+ * @return {string}
1347
+ */
1348
+ var from = String.fromCharCode;
1349
+
1350
+ /**
1351
+ * @param {object}
1352
+ * @return {object}
1353
+ */
1354
+ var assign = Object.assign;
1355
+
1356
+ /**
1357
+ * @param {string} value
1358
+ * @param {number} length
1359
+ * @return {number}
1360
+ */
1361
+ function hash (value, length) {
1362
+ return charat(value, 0) ^ 45 ? (((((((length << 2) ^ charat(value, 0)) << 2) ^ charat(value, 1)) << 2) ^ charat(value, 2)) << 2) ^ charat(value, 3) : 0
1363
+ }
1364
+
1365
+ /**
1366
+ * @param {string} value
1367
+ * @return {string}
1368
+ */
1369
+ function trim (value) {
1370
+ return value.trim()
1371
+ }
1372
+
1373
+ /**
1374
+ * @param {string} value
1375
+ * @param {RegExp} pattern
1376
+ * @return {string?}
1377
+ */
1378
+ function match (value, pattern) {
1379
+ return (value = pattern.exec(value)) ? value[0] : value
1380
+ }
1381
+
1382
+ /**
1383
+ * @param {string} value
1384
+ * @param {(string|RegExp)} pattern
1385
+ * @param {string} replacement
1386
+ * @return {string}
1387
+ */
1388
+ function replace (value, pattern, replacement) {
1389
+ return value.replace(pattern, replacement)
1390
+ }
1391
+
1392
+ /**
1393
+ * @param {string} value
1394
+ * @param {string} search
1395
+ * @return {number}
1396
+ */
1397
+ function indexof (value, search) {
1398
+ return value.indexOf(search)
1399
+ }
1400
+
1401
+ /**
1402
+ * @param {string} value
1403
+ * @param {number} index
1404
+ * @return {number}
1405
+ */
1406
+ function charat (value, index) {
1407
+ return value.charCodeAt(index) | 0
1408
+ }
1409
+
1410
+ /**
1411
+ * @param {string} value
1412
+ * @param {number} begin
1413
+ * @param {number} end
1414
+ * @return {string}
1415
+ */
1416
+ function substr (value, begin, end) {
1417
+ return value.slice(begin, end)
1418
+ }
1419
+
1420
+ /**
1421
+ * @param {string} value
1422
+ * @return {number}
1423
+ */
1424
+ function strlen (value) {
1425
+ return value.length
1426
+ }
1427
+
1428
+ /**
1429
+ * @param {any[]} value
1430
+ * @return {number}
1431
+ */
1432
+ function sizeof (value) {
1433
+ return value.length
1434
+ }
1435
+
1436
+ /**
1437
+ * @param {any} value
1438
+ * @param {any[]} array
1439
+ * @return {any}
1440
+ */
1441
+ function append (value, array) {
1442
+ return array.push(value), value
1443
+ }
1444
+
1445
+ /**
1446
+ * @param {string[]} array
1447
+ * @param {function} callback
1448
+ * @return {string}
1449
+ */
1450
+ function combine (array, callback) {
1451
+ return array.map(callback).join('')
1452
+ }
1453
+
1454
+ var line = 1;
1455
+ var column = 1;
1456
+ var length = 0;
1457
+ var position = 0;
1458
+ var character = 0;
1459
+ var characters = '';
1460
+
1461
+ /**
1462
+ * @param {string} value
1463
+ * @param {object | null} root
1464
+ * @param {object | null} parent
1465
+ * @param {string} type
1466
+ * @param {string[] | string} props
1467
+ * @param {object[] | string} children
1468
+ * @param {number} length
1469
+ */
1470
+ function node (value, root, parent, type, props, children, length) {
1471
+ return {value: value, root: root, parent: parent, type: type, props: props, children: children, line: line, column: column, length: length, return: ''}
1472
+ }
1473
+
1474
+ /**
1475
+ * @param {object} root
1476
+ * @param {object} props
1477
+ * @return {object}
1478
+ */
1479
+ function copy (root, props) {
1480
+ return assign(node('', null, null, '', null, null, 0), root, {length: -root.length}, props)
1481
+ }
1482
+
1483
+ /**
1484
+ * @return {number}
1485
+ */
1486
+ function char () {
1487
+ return character
1488
+ }
1489
+
1490
+ /**
1491
+ * @return {number}
1492
+ */
1493
+ function prev () {
1494
+ character = position > 0 ? charat(characters, --position) : 0;
1495
+
1496
+ if (column--, character === 10)
1497
+ column = 1, line--;
1498
+
1499
+ return character
1500
+ }
1501
+
1502
+ /**
1503
+ * @return {number}
1504
+ */
1505
+ function next () {
1506
+ character = position < length ? charat(characters, position++) : 0;
1507
+
1508
+ if (column++, character === 10)
1509
+ column = 1, line++;
1510
+
1511
+ return character
1512
+ }
1513
+
1514
+ /**
1515
+ * @return {number}
1516
+ */
1517
+ function peek () {
1518
+ return charat(characters, position)
1519
+ }
1520
+
1521
+ /**
1522
+ * @return {number}
1523
+ */
1524
+ function caret () {
1525
+ return position
1526
+ }
1527
+
1528
+ /**
1529
+ * @param {number} begin
1530
+ * @param {number} end
1531
+ * @return {string}
1532
+ */
1533
+ function slice (begin, end) {
1534
+ return substr(characters, begin, end)
1535
+ }
1536
+
1537
+ /**
1538
+ * @param {number} type
1539
+ * @return {number}
1540
+ */
1541
+ function token (type) {
1542
+ switch (type) {
1543
+ // \0 \t \n \r \s whitespace token
1544
+ case 0: case 9: case 10: case 13: case 32:
1545
+ return 5
1546
+ // ! + , / > @ ~ isolate token
1547
+ case 33: case 43: case 44: case 47: case 62: case 64: case 126:
1548
+ // ; { } breakpoint token
1549
+ case 59: case 123: case 125:
1550
+ return 4
1551
+ // : accompanied token
1552
+ case 58:
1553
+ return 3
1554
+ // " ' ( [ opening delimit token
1555
+ case 34: case 39: case 40: case 91:
1556
+ return 2
1557
+ // ) ] closing delimit token
1558
+ case 41: case 93:
1559
+ return 1
1560
+ }
1561
+
1562
+ return 0
1563
+ }
1564
+
1565
+ /**
1566
+ * @param {string} value
1567
+ * @return {any[]}
1568
+ */
1569
+ function alloc (value) {
1570
+ return line = column = 1, length = strlen(characters = value), position = 0, []
1571
+ }
1572
+
1573
+ /**
1574
+ * @param {any} value
1575
+ * @return {any}
1576
+ */
1577
+ function dealloc (value) {
1578
+ return characters = '', value
1579
+ }
1580
+
1581
+ /**
1582
+ * @param {number} type
1583
+ * @return {string}
1584
+ */
1585
+ function delimit (type) {
1586
+ return trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)))
1587
+ }
1588
+
1589
+ /**
1590
+ * @param {number} type
1591
+ * @return {string}
1592
+ */
1593
+ function whitespace (type) {
1594
+ while (character = peek())
1595
+ if (character < 33)
1596
+ next();
1597
+ else
1598
+ break
1599
+
1600
+ return token(type) > 2 || token(character) > 3 ? '' : ' '
1601
+ }
1602
+
1603
+ /**
1604
+ * @param {number} index
1605
+ * @param {number} count
1606
+ * @return {string}
1607
+ */
1608
+ function escaping (index, count) {
1609
+ while (--count && next())
1610
+ // not 0-9 A-F a-f
1611
+ if (character < 48 || character > 102 || (character > 57 && character < 65) || (character > 70 && character < 97))
1612
+ break
1613
+
1614
+ return slice(index, caret() + (count < 6 && peek() == 32 && next() == 32))
1615
+ }
1616
+
1617
+ /**
1618
+ * @param {number} type
1619
+ * @return {number}
1620
+ */
1621
+ function delimiter (type) {
1622
+ while (next())
1623
+ switch (character) {
1624
+ // ] ) " '
1625
+ case type:
1626
+ return position
1627
+ // " '
1628
+ case 34: case 39:
1629
+ if (type !== 34 && type !== 39)
1630
+ delimiter(character);
1631
+ break
1632
+ // (
1633
+ case 40:
1634
+ if (type === 41)
1635
+ delimiter(type);
1636
+ break
1637
+ // \
1638
+ case 92:
1639
+ next();
1640
+ break
1641
+ }
1642
+
1643
+ return position
1644
+ }
1645
+
1646
+ /**
1647
+ * @param {number} type
1648
+ * @param {number} index
1649
+ * @return {number}
1650
+ */
1651
+ function commenter (type, index) {
1652
+ while (next())
1653
+ // //
1654
+ if (type + character === 47 + 10)
1655
+ break
1656
+ // /*
1657
+ else if (type + character === 42 + 42 && peek() === 47)
1658
+ break
1659
+
1660
+ return '/*' + slice(index, position - 1) + '*' + from(type === 47 ? type : next())
1661
+ }
1662
+
1663
+ /**
1664
+ * @param {number} index
1665
+ * @return {string}
1666
+ */
1667
+ function identifier (index) {
1668
+ while (!token(peek()))
1669
+ next();
1670
+
1671
+ return slice(index, position)
1672
+ }
1673
+
1674
+ /**
1675
+ * @param {string} value
1676
+ * @return {object[]}
1677
+ */
1678
+ function compile (value) {
1679
+ return dealloc(parse('', null, null, null, [''], value = alloc(value), 0, [0], value))
1680
+ }
1681
+
1682
+ /**
1683
+ * @param {string} value
1684
+ * @param {object} root
1685
+ * @param {object?} parent
1686
+ * @param {string[]} rule
1687
+ * @param {string[]} rules
1688
+ * @param {string[]} rulesets
1689
+ * @param {number[]} pseudo
1690
+ * @param {number[]} points
1691
+ * @param {string[]} declarations
1692
+ * @return {object}
1693
+ */
1694
+ function parse (value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {
1695
+ var index = 0;
1696
+ var offset = 0;
1697
+ var length = pseudo;
1698
+ var atrule = 0;
1699
+ var property = 0;
1700
+ var previous = 0;
1701
+ var variable = 1;
1702
+ var scanning = 1;
1703
+ var ampersand = 1;
1704
+ var character = 0;
1705
+ var type = '';
1706
+ var props = rules;
1707
+ var children = rulesets;
1708
+ var reference = rule;
1709
+ var characters = type;
1710
+
1711
+ while (scanning)
1712
+ switch (previous = character, character = next()) {
1713
+ // (
1714
+ case 40:
1715
+ if (previous != 108 && charat(characters, length - 1) == 58) {
1716
+ if (indexof(characters += replace(delimit(character), '&', '&\f'), '&\f') != -1)
1717
+ ampersand = -1;
1718
+ break
1719
+ }
1720
+ // " ' [
1721
+ case 34: case 39: case 91:
1722
+ characters += delimit(character);
1723
+ break
1724
+ // \t \n \r \s
1725
+ case 9: case 10: case 13: case 32:
1726
+ characters += whitespace(previous);
1727
+ break
1728
+ // \
1729
+ case 92:
1730
+ characters += escaping(caret() - 1, 7);
1731
+ continue
1732
+ // /
1733
+ case 47:
1734
+ switch (peek()) {
1735
+ case 42: case 47:
1736
+ append(comment(commenter(next(), caret()), root, parent), declarations);
1737
+ break
1738
+ default:
1739
+ characters += '/';
1740
+ }
1741
+ break
1742
+ // {
1743
+ case 123 * variable:
1744
+ points[index++] = strlen(characters) * ampersand;
1745
+ // } ; \0
1746
+ case 125 * variable: case 59: case 0:
1747
+ switch (character) {
1748
+ // \0 }
1749
+ case 0: case 125: scanning = 0;
1750
+ // ;
1751
+ case 59 + offset: if (ampersand == -1) characters = replace(characters, /\f/g, '');
1752
+ if (property > 0 && (strlen(characters) - length))
1753
+ append(property > 32 ? declaration(characters + ';', rule, parent, length - 1) : declaration(replace(characters, ' ', '') + ';', rule, parent, length - 2), declarations);
1754
+ break
1755
+ // @ ;
1756
+ case 59: characters += ';';
1757
+ // { rule/at-rule
1758
+ default:
1759
+ append(reference = ruleset(characters, root, parent, index, offset, rules, points, type, props = [], children = [], length), rulesets);
1760
+
1761
+ if (character === 123)
1762
+ if (offset === 0)
1763
+ parse(characters, root, reference, reference, props, rulesets, length, points, children);
1764
+ else
1765
+ switch (atrule === 99 && charat(characters, 3) === 110 ? 100 : atrule) {
1766
+ // d l m s
1767
+ case 100: case 108: case 109: case 115:
1768
+ parse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length), children), rules, children, length, points, rule ? props : children);
1769
+ break
1770
+ default:
1771
+ parse(characters, reference, reference, reference, [''], children, 0, points, children);
1772
+ }
1773
+ }
1774
+
1775
+ index = offset = property = 0, variable = ampersand = 1, type = characters = '', length = pseudo;
1776
+ break
1777
+ // :
1778
+ case 58:
1779
+ length = 1 + strlen(characters), property = previous;
1780
+ default:
1781
+ if (variable < 1)
1782
+ if (character == 123)
1783
+ --variable;
1784
+ else if (character == 125 && variable++ == 0 && prev() == 125)
1785
+ continue
1786
+
1787
+ switch (characters += from(character), character * variable) {
1788
+ // &
1789
+ case 38:
1790
+ ampersand = offset > 0 ? 1 : (characters += '\f', -1);
1791
+ break
1792
+ // ,
1793
+ case 44:
1794
+ points[index++] = (strlen(characters) - 1) * ampersand, ampersand = 1;
1795
+ break
1796
+ // @
1797
+ case 64:
1798
+ // -
1799
+ if (peek() === 45)
1800
+ characters += delimit(next());
1801
+
1802
+ atrule = peek(), offset = length = strlen(type = characters += identifier(caret())), character++;
1803
+ break
1804
+ // -
1805
+ case 45:
1806
+ if (previous === 45 && strlen(characters) == 2)
1807
+ variable = 0;
1808
+ }
1809
+ }
1810
+
1811
+ return rulesets
1812
+ }
1813
+
1814
+ /**
1815
+ * @param {string} value
1816
+ * @param {object} root
1817
+ * @param {object?} parent
1818
+ * @param {number} index
1819
+ * @param {number} offset
1820
+ * @param {string[]} rules
1821
+ * @param {number[]} points
1822
+ * @param {string} type
1823
+ * @param {string[]} props
1824
+ * @param {string[]} children
1825
+ * @param {number} length
1826
+ * @return {object}
1827
+ */
1828
+ function ruleset (value, root, parent, index, offset, rules, points, type, props, children, length) {
1829
+ var post = offset - 1;
1830
+ var rule = offset === 0 ? rules : [''];
1831
+ var size = sizeof(rule);
1832
+
1833
+ for (var i = 0, j = 0, k = 0; i < index; ++i)
1834
+ for (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x)
1835
+ if (z = trim(j > 0 ? rule[x] + ' ' + y : replace(y, /&\f/g, rule[x])))
1836
+ props[k++] = z;
1837
+
1838
+ return node(value, root, parent, offset === 0 ? RULESET : type, props, children, length)
1839
+ }
1840
+
1841
+ /**
1842
+ * @param {number} value
1843
+ * @param {object} root
1844
+ * @param {object?} parent
1845
+ * @return {object}
1846
+ */
1847
+ function comment (value, root, parent) {
1848
+ return node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0)
1849
+ }
1850
+
1851
+ /**
1852
+ * @param {string} value
1853
+ * @param {object} root
1854
+ * @param {object?} parent
1855
+ * @param {number} length
1856
+ * @return {object}
1857
+ */
1858
+ function declaration (value, root, parent, length) {
1859
+ return node(value, root, parent, DECLARATION, substr(value, 0, length), substr(value, length + 1, -1), length)
1860
+ }
1861
+
1862
+ /**
1863
+ * @param {object[]} children
1864
+ * @param {function} callback
1865
+ * @return {string}
1866
+ */
1867
+ function serialize (children, callback) {
1868
+ var output = '';
1869
+ var length = sizeof(children);
1870
+
1871
+ for (var i = 0; i < length; i++)
1872
+ output += callback(children[i], i, children, callback) || '';
1873
+
1874
+ return output
1875
+ }
1876
+
1877
+ /**
1878
+ * @param {object} element
1879
+ * @param {number} index
1880
+ * @param {object[]} children
1881
+ * @param {function} callback
1882
+ * @return {string}
1883
+ */
1884
+ function stringify (element, index, children, callback) {
1885
+ switch (element.type) {
1886
+ case LAYER: if (element.children.length) break
1887
+ case IMPORT: case DECLARATION: return element.return = element.return || element.value
1888
+ case COMMENT: return ''
1889
+ case KEYFRAMES: return element.return = element.value + '{' + serialize(element.children, callback) + '}'
1890
+ case RULESET: element.value = element.props.join(',');
1891
+ }
1892
+
1893
+ return strlen(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : ''
1894
+ }
1895
+
1896
+ /**
1897
+ * @param {function[]} collection
1898
+ * @return {function}
1899
+ */
1900
+ function middleware (collection) {
1901
+ var length = sizeof(collection);
1902
+
1903
+ return function (element, index, children, callback) {
1904
+ var output = '';
1905
+
1906
+ for (var i = 0; i < length; i++)
1907
+ output += collection[i](element, index, children, callback) || '';
1908
+
1909
+ return output
1910
+ }
1911
+ }
1912
+
1913
+ /**
1914
+ * @param {function} callback
1915
+ * @return {function}
1916
+ */
1917
+ function rulesheet (callback) {
1918
+ return function (element) {
1919
+ if (!element.root)
1920
+ if (element = element.return)
1921
+ callback(element);
1922
+ }
1923
+ }
1924
+
1925
+ var weakMemoize = function weakMemoize(func) {
1926
+ var cache = new WeakMap();
1927
+ return function (arg) {
1928
+ if (cache.has(arg)) {
1929
+ // Use non-null assertion because we just checked that the cache `has` it
1930
+ // This allows us to remove `undefined` from the return value
1931
+ return cache.get(arg);
1932
+ }
1933
+
1934
+ var ret = func(arg);
1935
+ cache.set(arg, ret);
1936
+ return ret;
1937
+ };
1938
+ };
1939
+
1940
+ function memoize(fn) {
1941
+ var cache = Object.create(null);
1942
+ return function (arg) {
1943
+ if (cache[arg] === undefined) cache[arg] = fn(arg);
1944
+ return cache[arg];
1945
+ };
1946
+ }
1947
+
1948
+ var isBrowser$3 = typeof document !== 'undefined';
1949
+
1950
+ var identifierWithPointTracking = function identifierWithPointTracking(begin, points, index) {
1951
+ var previous = 0;
1952
+ var character = 0;
1953
+
1954
+ while (true) {
1955
+ previous = character;
1956
+ character = peek(); // &\f
1957
+
1958
+ if (previous === 38 && character === 12) {
1959
+ points[index] = 1;
1960
+ }
1961
+
1962
+ if (token(character)) {
1963
+ break;
1964
+ }
1965
+
1966
+ next();
1967
+ }
1968
+
1969
+ return slice(begin, position);
1970
+ };
1971
+
1972
+ var toRules = function toRules(parsed, points) {
1973
+ // pretend we've started with a comma
1974
+ var index = -1;
1975
+ var character = 44;
1976
+
1977
+ do {
1978
+ switch (token(character)) {
1979
+ case 0:
1980
+ // &\f
1981
+ if (character === 38 && peek() === 12) {
1982
+ // this is not 100% correct, we don't account for literal sequences here - like for example quoted strings
1983
+ // stylis inserts \f after & to know when & where it should replace this sequence with the context selector
1984
+ // and when it should just concatenate the outer and inner selectors
1985
+ // it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here
1986
+ points[index] = 1;
1987
+ }
1988
+
1989
+ parsed[index] += identifierWithPointTracking(position - 1, points, index);
1990
+ break;
1991
+
1992
+ case 2:
1993
+ parsed[index] += delimit(character);
1994
+ break;
1995
+
1996
+ case 4:
1997
+ // comma
1998
+ if (character === 44) {
1999
+ // colon
2000
+ parsed[++index] = peek() === 58 ? '&\f' : '';
2001
+ points[index] = parsed[index].length;
2002
+ break;
2003
+ }
2004
+
2005
+ // fallthrough
2006
+
2007
+ default:
2008
+ parsed[index] += from(character);
2009
+ }
2010
+ } while (character = next());
2011
+
2012
+ return parsed;
2013
+ };
2014
+
2015
+ var getRules = function getRules(value, points) {
2016
+ return dealloc(toRules(alloc(value), points));
2017
+ }; // WeakSet would be more appropriate, but only WeakMap is supported in IE11
2018
+
2019
+
2020
+ var fixedElements = /* #__PURE__ */new WeakMap();
2021
+ var compat = function compat(element) {
2022
+ if (element.type !== 'rule' || !element.parent || // positive .length indicates that this rule contains pseudo
2023
+ // negative .length indicates that this rule has been already prefixed
2024
+ element.length < 1) {
2025
+ return;
2026
+ }
2027
+
2028
+ var value = element.value;
2029
+ var parent = element.parent;
2030
+ var isImplicitRule = element.column === parent.column && element.line === parent.line;
2031
+
2032
+ while (parent.type !== 'rule') {
2033
+ parent = parent.parent;
2034
+ if (!parent) return;
2035
+ } // short-circuit for the simplest case
2036
+
2037
+
2038
+ if (element.props.length === 1 && value.charCodeAt(0) !== 58
2039
+ /* colon */
2040
+ && !fixedElements.get(parent)) {
2041
+ return;
2042
+ } // if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)
2043
+ // then the props has already been manipulated beforehand as they that array is shared between it and its "rule parent"
2044
+
2045
+
2046
+ if (isImplicitRule) {
2047
+ return;
2048
+ }
2049
+
2050
+ fixedElements.set(element, true);
2051
+ var points = [];
2052
+ var rules = getRules(value, points);
2053
+ var parentRules = parent.props;
2054
+
2055
+ for (var i = 0, k = 0; i < rules.length; i++) {
2056
+ for (var j = 0; j < parentRules.length; j++, k++) {
2057
+ element.props[k] = points[i] ? rules[i].replace(/&\f/g, parentRules[j]) : parentRules[j] + " " + rules[i];
2058
+ }
2059
+ }
2060
+ };
2061
+ var removeLabel = function removeLabel(element) {
2062
+ if (element.type === 'decl') {
2063
+ var value = element.value;
2064
+
2065
+ if ( // charcode for l
2066
+ value.charCodeAt(0) === 108 && // charcode for b
2067
+ value.charCodeAt(2) === 98) {
2068
+ // this ignores label
2069
+ element["return"] = '';
2070
+ element.value = '';
2071
+ }
2072
+ }
2073
+ };
2074
+
2075
+ /* eslint-disable no-fallthrough */
2076
+
2077
+ function prefix(value, length) {
2078
+ switch (hash(value, length)) {
2079
+ // color-adjust
2080
+ case 5103:
2081
+ return WEBKIT + 'print-' + value + value;
2082
+ // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)
2083
+
2084
+ case 5737:
2085
+ case 4201:
2086
+ case 3177:
2087
+ case 3433:
2088
+ case 1641:
2089
+ case 4457:
2090
+ case 2921: // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break
2091
+
2092
+ case 5572:
2093
+ case 6356:
2094
+ case 5844:
2095
+ case 3191:
2096
+ case 6645:
2097
+ case 3005: // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,
2098
+
2099
+ case 6391:
2100
+ case 5879:
2101
+ case 5623:
2102
+ case 6135:
2103
+ case 4599:
2104
+ case 4855: // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)
2105
+
2106
+ case 4215:
2107
+ case 6389:
2108
+ case 5109:
2109
+ case 5365:
2110
+ case 5621:
2111
+ case 3829:
2112
+ return WEBKIT + value + value;
2113
+ // appearance, user-select, transform, hyphens, text-size-adjust
2114
+
2115
+ case 5349:
2116
+ case 4246:
2117
+ case 4810:
2118
+ case 6968:
2119
+ case 2756:
2120
+ return WEBKIT + value + MOZ + value + MS + value + value;
2121
+ // flex, flex-direction
2122
+
2123
+ case 6828:
2124
+ case 4268:
2125
+ return WEBKIT + value + MS + value + value;
2126
+ // order
2127
+
2128
+ case 6165:
2129
+ return WEBKIT + value + MS + 'flex-' + value + value;
2130
+ // align-items
2131
+
2132
+ case 5187:
2133
+ return WEBKIT + value + replace(value, /(\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value;
2134
+ // align-self
2135
+
2136
+ case 5443:
2137
+ return WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value;
2138
+ // align-content
2139
+
2140
+ case 4675:
2141
+ return WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value;
2142
+ // flex-shrink
2143
+
2144
+ case 5548:
2145
+ return WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value;
2146
+ // flex-basis
2147
+
2148
+ case 5292:
2149
+ return WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value;
2150
+ // flex-grow
2151
+
2152
+ case 6060:
2153
+ return WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value;
2154
+ // transition
2155
+
2156
+ case 4554:
2157
+ return WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value;
2158
+ // cursor
2159
+
2160
+ case 6187:
2161
+ return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value;
2162
+ // background, background-image
2163
+
2164
+ case 5495:
2165
+ case 3959:
2166
+ return replace(value, /(image-set\([^]*)/, WEBKIT + '$1' + '$`$1');
2167
+ // justify-content
2168
+
2169
+ case 4968:
2170
+ return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value;
2171
+ // (margin|padding)-inline-(start|end)
2172
+
2173
+ case 4095:
2174
+ case 3583:
2175
+ case 4068:
2176
+ case 2532:
2177
+ return replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value;
2178
+ // (min|max)?(width|height|inline-size|block-size)
2179
+
2180
+ case 8116:
2181
+ case 7059:
2182
+ case 5753:
2183
+ case 5535:
2184
+ case 5445:
2185
+ case 5701:
2186
+ case 4933:
2187
+ case 4677:
2188
+ case 5533:
2189
+ case 5789:
2190
+ case 5021:
2191
+ case 4765:
2192
+ // stretch, max-content, min-content, fill-available
2193
+ if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {
2194
+ // (m)ax-content, (m)in-content
2195
+ case 109:
2196
+ // -
2197
+ if (charat(value, length + 4) !== 45) break;
2198
+ // (f)ill-available, (f)it-content
2199
+
2200
+ case 102:
2201
+ return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value;
2202
+ // (s)tretch
2203
+
2204
+ case 115:
2205
+ return ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value;
2206
+ }
2207
+ break;
2208
+ // position: sticky
2209
+
2210
+ case 4949:
2211
+ // (s)ticky?
2212
+ if (charat(value, length + 1) !== 115) break;
2213
+ // display: (flex|inline-flex)
2214
+
2215
+ case 6444:
2216
+ switch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {
2217
+ // stic(k)y
2218
+ case 107:
2219
+ return replace(value, ':', ':' + WEBKIT) + value;
2220
+ // (inline-)?fl(e)x
2221
+
2222
+ case 101:
2223
+ return replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value;
2224
+ }
2225
+
2226
+ break;
2227
+ // writing-mode
2228
+
2229
+ case 5936:
2230
+ switch (charat(value, length + 11)) {
2231
+ // vertical-l(r)
2232
+ case 114:
2233
+ return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, 'tb') + value;
2234
+ // vertical-r(l)
2235
+
2236
+ case 108:
2237
+ return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, 'tb-rl') + value;
2238
+ // horizontal(-)tb
2239
+
2240
+ case 45:
2241
+ return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, 'lr') + value;
2242
+ }
2243
+
2244
+ return WEBKIT + value + MS + value + value;
2245
+ }
2246
+
2247
+ return value;
2248
+ }
2249
+
2250
+ var prefixer = function prefixer(element, index, children, callback) {
2251
+ if (element.length > -1) if (!element["return"]) switch (element.type) {
2252
+ case DECLARATION:
2253
+ element["return"] = prefix(element.value, element.length);
2254
+ break;
2255
+
2256
+ case KEYFRAMES:
2257
+ return serialize([copy(element, {
2258
+ value: replace(element.value, '@', '@' + WEBKIT)
2259
+ })], callback);
2260
+
2261
+ case RULESET:
2262
+ if (element.length) return combine(element.props, function (value) {
2263
+ switch (match(value, /(::plac\w+|:read-\w+)/)) {
2264
+ // :read-(only|write)
2265
+ case ':read-only':
2266
+ case ':read-write':
2267
+ return serialize([copy(element, {
2268
+ props: [replace(value, /:(read-\w+)/, ':' + MOZ + '$1')]
2269
+ })], callback);
2270
+ // :placeholder
2271
+
2272
+ case '::placeholder':
2273
+ return serialize([copy(element, {
2274
+ props: [replace(value, /:(plac\w+)/, ':' + WEBKIT + 'input-$1')]
2275
+ }), copy(element, {
2276
+ props: [replace(value, /:(plac\w+)/, ':' + MOZ + '$1')]
2277
+ }), copy(element, {
2278
+ props: [replace(value, /:(plac\w+)/, MS + 'input-$1')]
2279
+ })], callback);
2280
+ }
2281
+
2282
+ return '';
2283
+ });
2284
+ }
2285
+ };
2286
+
2287
+ var getServerStylisCache = isBrowser$3 ? undefined : weakMemoize(function () {
2288
+ return memoize(function () {
2289
+ return {};
2290
+ });
2291
+ });
2292
+ var defaultStylisPlugins = [prefixer];
2293
+
2294
+ var createCache = function createCache(options) {
2295
+ var key = options.key;
2296
+
2297
+ if (isBrowser$3 && key === 'css') {
2298
+ var ssrStyles = document.querySelectorAll("style[data-emotion]:not([data-s])"); // get SSRed styles out of the way of React's hydration
2299
+ // document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)
2300
+ // note this very very intentionally targets all style elements regardless of the key to ensure
2301
+ // that creating a cache works inside of render of a React component
2302
+
2303
+ Array.prototype.forEach.call(ssrStyles, function (node) {
2304
+ // we want to only move elements which have a space in the data-emotion attribute value
2305
+ // because that indicates that it is an Emotion 11 server-side rendered style elements
2306
+ // while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector
2307
+ // Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)
2308
+ // so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles
2309
+ // will not result in the Emotion 10 styles being destroyed
2310
+ var dataEmotionAttribute = node.getAttribute('data-emotion');
2311
+
2312
+ if (dataEmotionAttribute.indexOf(' ') === -1) {
2313
+ return;
2314
+ }
2315
+
2316
+ document.head.appendChild(node);
2317
+ node.setAttribute('data-s', '');
2318
+ });
2319
+ }
2320
+
2321
+ var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;
2322
+
2323
+ var inserted = {};
2324
+ var container;
2325
+ var nodesToHydrate = [];
2326
+
2327
+ if (isBrowser$3) {
2328
+ container = options.container || document.head;
2329
+ Array.prototype.forEach.call( // this means we will ignore elements which don't have a space in them which
2330
+ // means that the style elements we're looking at are only Emotion 11 server-rendered style elements
2331
+ document.querySelectorAll("style[data-emotion^=\"" + key + " \"]"), function (node) {
2332
+ var attrib = node.getAttribute("data-emotion").split(' ');
2333
+
2334
+ for (var i = 1; i < attrib.length; i++) {
2335
+ inserted[attrib[i]] = true;
2336
+ }
2337
+
2338
+ nodesToHydrate.push(node);
2339
+ });
2340
+ }
2341
+
2342
+ var _insert;
2343
+
2344
+ var omnipresentPlugins = [compat, removeLabel];
2345
+
2346
+ if (!getServerStylisCache) {
2347
+ var currentSheet;
2348
+ var finalizingPlugins = [stringify, rulesheet(function (rule) {
2349
+ currentSheet.insert(rule);
2350
+ })];
2351
+ var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));
2352
+
2353
+ var stylis = function stylis(styles) {
2354
+ return serialize(compile(styles), serializer);
2355
+ };
2356
+
2357
+ _insert = function insert(selector, serialized, sheet, shouldCache) {
2358
+ currentSheet = sheet;
2359
+
2360
+ stylis(selector ? selector + "{" + serialized.styles + "}" : serialized.styles);
2361
+
2362
+ if (shouldCache) {
2363
+ cache.inserted[serialized.name] = true;
2364
+ }
2365
+ };
2366
+ } else {
2367
+ var _finalizingPlugins = [stringify];
2368
+
2369
+ var _serializer = middleware(omnipresentPlugins.concat(stylisPlugins, _finalizingPlugins));
2370
+
2371
+ var _stylis = function _stylis(styles) {
2372
+ return serialize(compile(styles), _serializer);
2373
+ };
2374
+
2375
+ var serverStylisCache = getServerStylisCache(stylisPlugins)(key);
2376
+
2377
+ var getRules = function getRules(selector, serialized) {
2378
+ var name = serialized.name;
2379
+
2380
+ if (serverStylisCache[name] === undefined) {
2381
+ serverStylisCache[name] = _stylis(selector ? selector + "{" + serialized.styles + "}" : serialized.styles);
2382
+ }
2383
+
2384
+ return serverStylisCache[name];
2385
+ };
2386
+
2387
+ _insert = function _insert(selector, serialized, sheet, shouldCache) {
2388
+ var name = serialized.name;
2389
+ var rules = getRules(selector, serialized);
2390
+
2391
+ if (cache.compat === undefined) {
2392
+ // in regular mode, we don't set the styles on the inserted cache
2393
+ // since we don't need to and that would be wasting memory
2394
+ // we return them so that they are rendered in a style tag
2395
+ if (shouldCache) {
2396
+ cache.inserted[name] = true;
2397
+ }
2398
+
2399
+ return rules;
2400
+ } else {
2401
+ // in compat mode, we put the styles on the inserted cache so
2402
+ // that emotion-server can pull out the styles
2403
+ // except when we don't want to cache it which was in Global but now
2404
+ // is nowhere but we don't want to do a major right now
2405
+ // and just in case we're going to leave the case here
2406
+ // it's also not affecting client side bundle size
2407
+ // so it's really not a big deal
2408
+ if (shouldCache) {
2409
+ cache.inserted[name] = rules;
2410
+ } else {
2411
+ return rules;
2412
+ }
2413
+ }
2414
+ };
2415
+ }
2416
+
2417
+ var cache = {
2418
+ key: key,
2419
+ sheet: new StyleSheet({
2420
+ key: key,
2421
+ container: container,
2422
+ nonce: options.nonce,
2423
+ speedy: options.speedy,
2424
+ prepend: options.prepend,
2425
+ insertionPoint: options.insertionPoint
2426
+ }),
2427
+ nonce: options.nonce,
2428
+ inserted: inserted,
2429
+ registered: {},
2430
+ insert: _insert
2431
+ };
2432
+ cache.sheet.hydrate(nodesToHydrate);
2433
+ return cache;
2434
+ };
2435
+
2436
+ var reactIs = {exports: {}};
2437
+
2438
+ var reactIs_production_min = {};
2439
+
2440
+ /** @license React v16.13.1
2441
+ * react-is.production.min.js
2442
+ *
2443
+ * Copyright (c) Facebook, Inc. and its affiliates.
2444
+ *
2445
+ * This source code is licensed under the MIT license found in the
2446
+ * LICENSE file in the root directory of this source tree.
2447
+ */
2448
+
2449
+ var hasRequiredReactIs_production_min;
2450
+
2451
+ function requireReactIs_production_min () {
2452
+ if (hasRequiredReactIs_production_min) return reactIs_production_min;
2453
+ hasRequiredReactIs_production_min = 1;
2454
+ var b="function"===typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?
2455
+ Symbol.for("react.suspense_list"):60120,r=b?Symbol.for("react.memo"):60115,t=b?Symbol.for("react.lazy"):60116,v=b?Symbol.for("react.block"):60121,w=b?Symbol.for("react.fundamental"):60117,x=b?Symbol.for("react.responder"):60118,y=b?Symbol.for("react.scope"):60119;
2456
+ function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}reactIs_production_min.AsyncMode=l;reactIs_production_min.ConcurrentMode=m;reactIs_production_min.ContextConsumer=k;reactIs_production_min.ContextProvider=h;reactIs_production_min.Element=c;reactIs_production_min.ForwardRef=n;reactIs_production_min.Fragment=e;reactIs_production_min.Lazy=t;reactIs_production_min.Memo=r;reactIs_production_min.Portal=d;
2457
+ reactIs_production_min.Profiler=g;reactIs_production_min.StrictMode=f;reactIs_production_min.Suspense=p;reactIs_production_min.isAsyncMode=function(a){return A(a)||z(a)===l};reactIs_production_min.isConcurrentMode=A;reactIs_production_min.isContextConsumer=function(a){return z(a)===k};reactIs_production_min.isContextProvider=function(a){return z(a)===h};reactIs_production_min.isElement=function(a){return "object"===typeof a&&null!==a&&a.$$typeof===c};reactIs_production_min.isForwardRef=function(a){return z(a)===n};reactIs_production_min.isFragment=function(a){return z(a)===e};reactIs_production_min.isLazy=function(a){return z(a)===t};
2458
+ reactIs_production_min.isMemo=function(a){return z(a)===r};reactIs_production_min.isPortal=function(a){return z(a)===d};reactIs_production_min.isProfiler=function(a){return z(a)===g};reactIs_production_min.isStrictMode=function(a){return z(a)===f};reactIs_production_min.isSuspense=function(a){return z(a)===p};
2459
+ reactIs_production_min.isValidElementType=function(a){return "string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||"object"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};reactIs_production_min.typeOf=z;
2460
+ return reactIs_production_min;
2461
+ }
2462
+
2463
+ var reactIs_development = {};
2464
+
2465
+ /** @license React v16.13.1
2466
+ * react-is.development.js
2467
+ *
2468
+ * Copyright (c) Facebook, Inc. and its affiliates.
2469
+ *
2470
+ * This source code is licensed under the MIT license found in the
2471
+ * LICENSE file in the root directory of this source tree.
2472
+ */
2473
+
2474
+ var hasRequiredReactIs_development;
2475
+
2476
+ function requireReactIs_development () {
2477
+ if (hasRequiredReactIs_development) return reactIs_development;
2478
+ hasRequiredReactIs_development = 1;
2479
+
2480
+
2481
+
2482
+ if (process.env.NODE_ENV !== "production") {
2483
+ (function() {
2484
+
2485
+ // The Symbol used to tag the ReactElement-like types. If there is no native Symbol
2486
+ // nor polyfill, then a plain number is used for performance.
2487
+ var hasSymbol = typeof Symbol === 'function' && Symbol.for;
2488
+ var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
2489
+ var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
2490
+ var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
2491
+ var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
2492
+ var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
2493
+ var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
2494
+ var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
2495
+ // (unstable) APIs that have been removed. Can we remove the symbols?
2496
+
2497
+ var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
2498
+ var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
2499
+ var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
2500
+ var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
2501
+ var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
2502
+ var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
2503
+ var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
2504
+ var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
2505
+ var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
2506
+ var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
2507
+ var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
2508
+
2509
+ function isValidElementType(type) {
2510
+ return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
2511
+ type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
2512
+ }
2513
+
2514
+ function typeOf(object) {
2515
+ if (typeof object === 'object' && object !== null) {
2516
+ var $$typeof = object.$$typeof;
2517
+
2518
+ switch ($$typeof) {
2519
+ case REACT_ELEMENT_TYPE:
2520
+ var type = object.type;
2521
+
2522
+ switch (type) {
2523
+ case REACT_ASYNC_MODE_TYPE:
2524
+ case REACT_CONCURRENT_MODE_TYPE:
2525
+ case REACT_FRAGMENT_TYPE:
2526
+ case REACT_PROFILER_TYPE:
2527
+ case REACT_STRICT_MODE_TYPE:
2528
+ case REACT_SUSPENSE_TYPE:
2529
+ return type;
2530
+
2531
+ default:
2532
+ var $$typeofType = type && type.$$typeof;
2533
+
2534
+ switch ($$typeofType) {
2535
+ case REACT_CONTEXT_TYPE:
2536
+ case REACT_FORWARD_REF_TYPE:
2537
+ case REACT_LAZY_TYPE:
2538
+ case REACT_MEMO_TYPE:
2539
+ case REACT_PROVIDER_TYPE:
2540
+ return $$typeofType;
2541
+
2542
+ default:
2543
+ return $$typeof;
2544
+ }
2545
+
2546
+ }
2547
+
2548
+ case REACT_PORTAL_TYPE:
2549
+ return $$typeof;
2550
+ }
2551
+ }
2552
+
2553
+ return undefined;
2554
+ } // AsyncMode is deprecated along with isAsyncMode
2555
+
2556
+ var AsyncMode = REACT_ASYNC_MODE_TYPE;
2557
+ var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
2558
+ var ContextConsumer = REACT_CONTEXT_TYPE;
2559
+ var ContextProvider = REACT_PROVIDER_TYPE;
2560
+ var Element = REACT_ELEMENT_TYPE;
2561
+ var ForwardRef = REACT_FORWARD_REF_TYPE;
2562
+ var Fragment = REACT_FRAGMENT_TYPE;
2563
+ var Lazy = REACT_LAZY_TYPE;
2564
+ var Memo = REACT_MEMO_TYPE;
2565
+ var Portal = REACT_PORTAL_TYPE;
2566
+ var Profiler = REACT_PROFILER_TYPE;
2567
+ var StrictMode = REACT_STRICT_MODE_TYPE;
2568
+ var Suspense = REACT_SUSPENSE_TYPE;
2569
+ var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
2570
+
2571
+ function isAsyncMode(object) {
2572
+ {
2573
+ if (!hasWarnedAboutDeprecatedIsAsyncMode) {
2574
+ hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
2575
+
2576
+ console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
2577
+ }
2578
+ }
2579
+
2580
+ return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
2581
+ }
2582
+ function isConcurrentMode(object) {
2583
+ return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
2584
+ }
2585
+ function isContextConsumer(object) {
2586
+ return typeOf(object) === REACT_CONTEXT_TYPE;
2587
+ }
2588
+ function isContextProvider(object) {
2589
+ return typeOf(object) === REACT_PROVIDER_TYPE;
2590
+ }
2591
+ function isElement(object) {
2592
+ return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
2593
+ }
2594
+ function isForwardRef(object) {
2595
+ return typeOf(object) === REACT_FORWARD_REF_TYPE;
2596
+ }
2597
+ function isFragment(object) {
2598
+ return typeOf(object) === REACT_FRAGMENT_TYPE;
2599
+ }
2600
+ function isLazy(object) {
2601
+ return typeOf(object) === REACT_LAZY_TYPE;
2602
+ }
2603
+ function isMemo(object) {
2604
+ return typeOf(object) === REACT_MEMO_TYPE;
2605
+ }
2606
+ function isPortal(object) {
2607
+ return typeOf(object) === REACT_PORTAL_TYPE;
2608
+ }
2609
+ function isProfiler(object) {
2610
+ return typeOf(object) === REACT_PROFILER_TYPE;
2611
+ }
2612
+ function isStrictMode(object) {
2613
+ return typeOf(object) === REACT_STRICT_MODE_TYPE;
2614
+ }
2615
+ function isSuspense(object) {
2616
+ return typeOf(object) === REACT_SUSPENSE_TYPE;
2617
+ }
2618
+
2619
+ reactIs_development.AsyncMode = AsyncMode;
2620
+ reactIs_development.ConcurrentMode = ConcurrentMode;
2621
+ reactIs_development.ContextConsumer = ContextConsumer;
2622
+ reactIs_development.ContextProvider = ContextProvider;
2623
+ reactIs_development.Element = Element;
2624
+ reactIs_development.ForwardRef = ForwardRef;
2625
+ reactIs_development.Fragment = Fragment;
2626
+ reactIs_development.Lazy = Lazy;
2627
+ reactIs_development.Memo = Memo;
2628
+ reactIs_development.Portal = Portal;
2629
+ reactIs_development.Profiler = Profiler;
2630
+ reactIs_development.StrictMode = StrictMode;
2631
+ reactIs_development.Suspense = Suspense;
2632
+ reactIs_development.isAsyncMode = isAsyncMode;
2633
+ reactIs_development.isConcurrentMode = isConcurrentMode;
2634
+ reactIs_development.isContextConsumer = isContextConsumer;
2635
+ reactIs_development.isContextProvider = isContextProvider;
2636
+ reactIs_development.isElement = isElement;
2637
+ reactIs_development.isForwardRef = isForwardRef;
2638
+ reactIs_development.isFragment = isFragment;
2639
+ reactIs_development.isLazy = isLazy;
2640
+ reactIs_development.isMemo = isMemo;
2641
+ reactIs_development.isPortal = isPortal;
2642
+ reactIs_development.isProfiler = isProfiler;
2643
+ reactIs_development.isStrictMode = isStrictMode;
2644
+ reactIs_development.isSuspense = isSuspense;
2645
+ reactIs_development.isValidElementType = isValidElementType;
2646
+ reactIs_development.typeOf = typeOf;
2647
+ })();
2648
+ }
2649
+ return reactIs_development;
2650
+ }
2651
+
2652
+ var hasRequiredReactIs;
2653
+
2654
+ function requireReactIs () {
2655
+ if (hasRequiredReactIs) return reactIs.exports;
2656
+ hasRequiredReactIs = 1;
2657
+
2658
+ if (process.env.NODE_ENV === 'production') {
2659
+ reactIs.exports = requireReactIs_production_min();
2660
+ } else {
2661
+ reactIs.exports = requireReactIs_development();
2662
+ }
2663
+ return reactIs.exports;
2664
+ }
2665
+
2666
+ var hoistNonReactStatics_cjs;
2667
+ var hasRequiredHoistNonReactStatics_cjs;
2668
+
2669
+ function requireHoistNonReactStatics_cjs () {
2670
+ if (hasRequiredHoistNonReactStatics_cjs) return hoistNonReactStatics_cjs;
2671
+ hasRequiredHoistNonReactStatics_cjs = 1;
2672
+
2673
+ var reactIs = requireReactIs();
2674
+
2675
+ /**
2676
+ * Copyright 2015, Yahoo! Inc.
2677
+ * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
2678
+ */
2679
+ var REACT_STATICS = {
2680
+ childContextTypes: true,
2681
+ contextType: true,
2682
+ contextTypes: true,
2683
+ defaultProps: true,
2684
+ displayName: true,
2685
+ getDefaultProps: true,
2686
+ getDerivedStateFromError: true,
2687
+ getDerivedStateFromProps: true,
2688
+ mixins: true,
2689
+ propTypes: true,
2690
+ type: true
2691
+ };
2692
+ var KNOWN_STATICS = {
2693
+ name: true,
2694
+ length: true,
2695
+ prototype: true,
2696
+ caller: true,
2697
+ callee: true,
2698
+ arguments: true,
2699
+ arity: true
2700
+ };
2701
+ var FORWARD_REF_STATICS = {
2702
+ '$$typeof': true,
2703
+ render: true,
2704
+ defaultProps: true,
2705
+ displayName: true,
2706
+ propTypes: true
2707
+ };
2708
+ var MEMO_STATICS = {
2709
+ '$$typeof': true,
2710
+ compare: true,
2711
+ defaultProps: true,
2712
+ displayName: true,
2713
+ propTypes: true,
2714
+ type: true
2715
+ };
2716
+ var TYPE_STATICS = {};
2717
+ TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
2718
+ TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
2719
+
2720
+ function getStatics(component) {
2721
+ // React v16.11 and below
2722
+ if (reactIs.isMemo(component)) {
2723
+ return MEMO_STATICS;
2724
+ } // React v16.12 and above
2725
+
2726
+
2727
+ return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;
2728
+ }
2729
+
2730
+ var defineProperty = Object.defineProperty;
2731
+ var getOwnPropertyNames = Object.getOwnPropertyNames;
2732
+ var getOwnPropertySymbols = Object.getOwnPropertySymbols;
2733
+ var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
2734
+ var getPrototypeOf = Object.getPrototypeOf;
2735
+ var objectPrototype = Object.prototype;
2736
+ function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
2737
+ if (typeof sourceComponent !== 'string') {
2738
+ // don't hoist over string (html) components
2739
+ if (objectPrototype) {
2740
+ var inheritedComponent = getPrototypeOf(sourceComponent);
2741
+
2742
+ if (inheritedComponent && inheritedComponent !== objectPrototype) {
2743
+ hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
2744
+ }
2745
+ }
2746
+
2747
+ var keys = getOwnPropertyNames(sourceComponent);
2748
+
2749
+ if (getOwnPropertySymbols) {
2750
+ keys = keys.concat(getOwnPropertySymbols(sourceComponent));
2751
+ }
2752
+
2753
+ var targetStatics = getStatics(targetComponent);
2754
+ var sourceStatics = getStatics(sourceComponent);
2755
+
2756
+ for (var i = 0; i < keys.length; ++i) {
2757
+ var key = keys[i];
2758
+
2759
+ if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
2760
+ var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
2761
+
2762
+ try {
2763
+ // Avoid failures from read-only properties
2764
+ defineProperty(targetComponent, key, descriptor);
2765
+ } catch (e) {}
2766
+ }
2767
+ }
2768
+ }
2769
+
2770
+ return targetComponent;
2771
+ }
2772
+
2773
+ hoistNonReactStatics_cjs = hoistNonReactStatics;
2774
+ return hoistNonReactStatics_cjs;
2775
+ }
2776
+
2777
+ requireHoistNonReactStatics_cjs();
2778
+
2779
+ var isBrowser$2 = typeof document !== 'undefined';
2780
+
2781
+ function getRegisteredStyles(registered, registeredStyles, classNames) {
2782
+ var rawClassName = '';
2783
+ classNames.split(' ').forEach(function (className) {
2784
+ if (registered[className] !== undefined) {
2785
+ registeredStyles.push(registered[className] + ";");
2786
+ } else if (className) {
2787
+ rawClassName += className + " ";
2788
+ }
2789
+ });
2790
+ return rawClassName;
2791
+ }
2792
+ var registerStyles = function registerStyles(cache, serialized, isStringTag) {
2793
+ var className = cache.key + "-" + serialized.name;
2794
+
2795
+ if ( // we only need to add the styles to the registered cache if the
2796
+ // class name could be used further down
2797
+ // the tree but if it's a string tag, we know it won't
2798
+ // so we don't have to add it to registered cache.
2799
+ // this improves memory usage since we can avoid storing the whole style string
2800
+ (isStringTag === false || // we need to always store it if we're in compat mode and
2801
+ // in node since emotion-server relies on whether a style is in
2802
+ // the registered cache to know whether a style is global or not
2803
+ // also, note that this check will be dead code eliminated in the browser
2804
+ isBrowser$2 === false && cache.compat !== undefined) && cache.registered[className] === undefined) {
2805
+ cache.registered[className] = serialized.styles;
2806
+ }
2807
+ };
2808
+ var insertStyles = function insertStyles(cache, serialized, isStringTag) {
2809
+ registerStyles(cache, serialized, isStringTag);
2810
+ var className = cache.key + "-" + serialized.name;
2811
+
2812
+ if (cache.inserted[serialized.name] === undefined) {
2813
+ var stylesForSSR = '';
2814
+ var current = serialized;
2815
+
2816
+ do {
2817
+ var maybeStyles = cache.insert(serialized === current ? "." + className : '', current, cache.sheet, true);
2818
+
2819
+ if (!isBrowser$2 && maybeStyles !== undefined) {
2820
+ stylesForSSR += maybeStyles;
2821
+ }
2822
+
2823
+ current = current.next;
2824
+ } while (current !== undefined);
2825
+
2826
+ if (!isBrowser$2 && stylesForSSR.length !== 0) {
2827
+ return stylesForSSR;
2828
+ }
2829
+ }
2830
+ };
2831
+
2832
+ /* eslint-disable */
2833
+ // Inspired by https://github.com/garycourt/murmurhash-js
2834
+ // Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86
2835
+ function murmur2(str) {
2836
+ // 'm' and 'r' are mixing constants generated offline.
2837
+ // They're not really 'magic', they just happen to work well.
2838
+ // const m = 0x5bd1e995;
2839
+ // const r = 24;
2840
+ // Initialize the hash
2841
+ var h = 0; // Mix 4 bytes at a time into the hash
2842
+
2843
+ var k,
2844
+ i = 0,
2845
+ len = str.length;
2846
+
2847
+ for (; len >= 4; ++i, len -= 4) {
2848
+ k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;
2849
+ k =
2850
+ /* Math.imul(k, m): */
2851
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);
2852
+ k ^=
2853
+ /* k >>> r: */
2854
+ k >>> 24;
2855
+ h =
2856
+ /* Math.imul(k, m): */
2857
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^
2858
+ /* Math.imul(h, m): */
2859
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
2860
+ } // Handle the last few bytes of the input array
2861
+
2862
+
2863
+ switch (len) {
2864
+ case 3:
2865
+ h ^= (str.charCodeAt(i + 2) & 0xff) << 16;
2866
+
2867
+ case 2:
2868
+ h ^= (str.charCodeAt(i + 1) & 0xff) << 8;
2869
+
2870
+ case 1:
2871
+ h ^= str.charCodeAt(i) & 0xff;
2872
+ h =
2873
+ /* Math.imul(h, m): */
2874
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
2875
+ } // Do a few final mixes of the hash to ensure the last few
2876
+ // bytes are well-incorporated.
2877
+
2878
+
2879
+ h ^= h >>> 13;
2880
+ h =
2881
+ /* Math.imul(h, m): */
2882
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
2883
+ return ((h ^ h >>> 15) >>> 0).toString(36);
2884
+ }
2885
+
2886
+ var unitlessKeys = {
2887
+ animationIterationCount: 1,
2888
+ aspectRatio: 1,
2889
+ borderImageOutset: 1,
2890
+ borderImageSlice: 1,
2891
+ borderImageWidth: 1,
2892
+ boxFlex: 1,
2893
+ boxFlexGroup: 1,
2894
+ boxOrdinalGroup: 1,
2895
+ columnCount: 1,
2896
+ columns: 1,
2897
+ flex: 1,
2898
+ flexGrow: 1,
2899
+ flexPositive: 1,
2900
+ flexShrink: 1,
2901
+ flexNegative: 1,
2902
+ flexOrder: 1,
2903
+ gridRow: 1,
2904
+ gridRowEnd: 1,
2905
+ gridRowSpan: 1,
2906
+ gridRowStart: 1,
2907
+ gridColumn: 1,
2908
+ gridColumnEnd: 1,
2909
+ gridColumnSpan: 1,
2910
+ gridColumnStart: 1,
2911
+ msGridRow: 1,
2912
+ msGridRowSpan: 1,
2913
+ msGridColumn: 1,
2914
+ msGridColumnSpan: 1,
2915
+ fontWeight: 1,
2916
+ lineHeight: 1,
2917
+ opacity: 1,
2918
+ order: 1,
2919
+ orphans: 1,
2920
+ scale: 1,
2921
+ tabSize: 1,
2922
+ widows: 1,
2923
+ zIndex: 1,
2924
+ zoom: 1,
2925
+ WebkitLineClamp: 1,
2926
+ // SVG-related properties
2927
+ fillOpacity: 1,
2928
+ floodOpacity: 1,
2929
+ stopOpacity: 1,
2930
+ strokeDasharray: 1,
2931
+ strokeDashoffset: 1,
2932
+ strokeMiterlimit: 1,
2933
+ strokeOpacity: 1,
2934
+ strokeWidth: 1
2935
+ };
2936
+
2937
+ var hyphenateRegex = /[A-Z]|^ms/g;
2938
+ var animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g;
2939
+
2940
+ var isCustomProperty = function isCustomProperty(property) {
2941
+ return property.charCodeAt(1) === 45;
2942
+ };
2943
+
2944
+ var isProcessableValue = function isProcessableValue(value) {
2945
+ return value != null && typeof value !== 'boolean';
2946
+ };
2947
+
2948
+ var processStyleName = /* #__PURE__ */memoize(function (styleName) {
2949
+ return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, '-$&').toLowerCase();
2950
+ });
2951
+
2952
+ var processStyleValue = function processStyleValue(key, value) {
2953
+ switch (key) {
2954
+ case 'animation':
2955
+ case 'animationName':
2956
+ {
2957
+ if (typeof value === 'string') {
2958
+ return value.replace(animationRegex, function (match, p1, p2) {
2959
+ cursor = {
2960
+ name: p1,
2961
+ styles: p2,
2962
+ next: cursor
2963
+ };
2964
+ return p1;
2965
+ });
2966
+ }
2967
+ }
2968
+ }
2969
+
2970
+ if (unitlessKeys[key] !== 1 && !isCustomProperty(key) && typeof value === 'number' && value !== 0) {
2971
+ return value + 'px';
2972
+ }
2973
+
2974
+ return value;
2975
+ };
2976
+
2977
+ function handleInterpolation(mergedProps, registered, interpolation) {
2978
+ if (interpolation == null) {
2979
+ return '';
2980
+ }
2981
+
2982
+ var componentSelector = interpolation;
2983
+
2984
+ if (componentSelector.__emotion_styles !== undefined) {
2985
+
2986
+ return componentSelector;
2987
+ }
2988
+
2989
+ switch (typeof interpolation) {
2990
+ case 'boolean':
2991
+ {
2992
+ return '';
2993
+ }
2994
+
2995
+ case 'object':
2996
+ {
2997
+ var keyframes = interpolation;
2998
+
2999
+ if (keyframes.anim === 1) {
3000
+ cursor = {
3001
+ name: keyframes.name,
3002
+ styles: keyframes.styles,
3003
+ next: cursor
3004
+ };
3005
+ return keyframes.name;
3006
+ }
3007
+
3008
+ var serializedStyles = interpolation;
3009
+
3010
+ if (serializedStyles.styles !== undefined) {
3011
+ var next = serializedStyles.next;
3012
+
3013
+ if (next !== undefined) {
3014
+ // not the most efficient thing ever but this is a pretty rare case
3015
+ // and there will be very few iterations of this generally
3016
+ while (next !== undefined) {
3017
+ cursor = {
3018
+ name: next.name,
3019
+ styles: next.styles,
3020
+ next: cursor
3021
+ };
3022
+ next = next.next;
3023
+ }
3024
+ }
3025
+
3026
+ var styles = serializedStyles.styles + ";";
3027
+ return styles;
3028
+ }
3029
+
3030
+ return createStringFromObject(mergedProps, registered, interpolation);
3031
+ }
3032
+
3033
+ case 'function':
3034
+ {
3035
+ if (mergedProps !== undefined) {
3036
+ var previousCursor = cursor;
3037
+ var result = interpolation(mergedProps);
3038
+ cursor = previousCursor;
3039
+ return handleInterpolation(mergedProps, registered, result);
3040
+ }
3041
+
3042
+ break;
3043
+ }
3044
+ } // finalize string values (regular strings and functions interpolated into css calls)
3045
+
3046
+
3047
+ var asString = interpolation;
3048
+
3049
+ {
3050
+ return asString;
3051
+ }
3052
+ }
3053
+
3054
+ function createStringFromObject(mergedProps, registered, obj) {
3055
+ var string = '';
3056
+
3057
+ if (Array.isArray(obj)) {
3058
+ for (var i = 0; i < obj.length; i++) {
3059
+ string += handleInterpolation(mergedProps, registered, obj[i]) + ";";
3060
+ }
3061
+ } else {
3062
+ for (var key in obj) {
3063
+ var value = obj[key];
3064
+
3065
+ if (typeof value !== 'object') {
3066
+ var asString = value;
3067
+
3068
+ if (isProcessableValue(asString)) {
3069
+ string += processStyleName(key) + ":" + processStyleValue(key, asString) + ";";
3070
+ }
3071
+ } else {
3072
+
3073
+ if (Array.isArray(value) && typeof value[0] === 'string' && (registered == null)) {
3074
+ for (var _i = 0; _i < value.length; _i++) {
3075
+ if (isProcessableValue(value[_i])) {
3076
+ string += processStyleName(key) + ":" + processStyleValue(key, value[_i]) + ";";
3077
+ }
3078
+ }
3079
+ } else {
3080
+ var interpolated = handleInterpolation(mergedProps, registered, value);
3081
+
3082
+ switch (key) {
3083
+ case 'animation':
3084
+ case 'animationName':
3085
+ {
3086
+ string += processStyleName(key) + ":" + interpolated + ";";
3087
+ break;
3088
+ }
3089
+
3090
+ default:
3091
+ {
3092
+
3093
+ string += key + "{" + interpolated + "}";
3094
+ }
3095
+ }
3096
+ }
3097
+ }
3098
+ }
3099
+ }
3100
+
3101
+ return string;
3102
+ }
3103
+
3104
+ var labelPattern = /label:\s*([^\s;{]+)\s*(;|$)/g; // this is the cursor for keyframes
3105
+ // keyframes are stored on the SerializedStyles object as a linked list
3106
+
3107
+ var cursor;
3108
+ function serializeStyles(args, registered, mergedProps) {
3109
+ if (args.length === 1 && typeof args[0] === 'object' && args[0] !== null && args[0].styles !== undefined) {
3110
+ return args[0];
3111
+ }
3112
+
3113
+ var stringMode = true;
3114
+ var styles = '';
3115
+ cursor = undefined;
3116
+ var strings = args[0];
3117
+
3118
+ if (strings == null || strings.raw === undefined) {
3119
+ stringMode = false;
3120
+ styles += handleInterpolation(mergedProps, registered, strings);
3121
+ } else {
3122
+ var asTemplateStringsArr = strings;
3123
+
3124
+ styles += asTemplateStringsArr[0];
3125
+ } // we start at 1 since we've already handled the first arg
3126
+
3127
+
3128
+ for (var i = 1; i < args.length; i++) {
3129
+ styles += handleInterpolation(mergedProps, registered, args[i]);
3130
+
3131
+ if (stringMode) {
3132
+ var templateStringsArr = strings;
3133
+
3134
+ styles += templateStringsArr[i];
3135
+ }
3136
+ } // using a global regex with .exec is stateful so lastIndex has to be reset each time
3137
+
3138
+
3139
+ labelPattern.lastIndex = 0;
3140
+ var identifierName = '';
3141
+ var match; // https://esbench.com/bench/5b809c2cf2949800a0f61fb5
3142
+
3143
+ while ((match = labelPattern.exec(styles)) !== null) {
3144
+ identifierName += '-' + match[1];
3145
+ }
3146
+
3147
+ var name = murmur2(styles) + identifierName;
3148
+
3149
+ return {
3150
+ name: name,
3151
+ styles: styles,
3152
+ next: cursor
3153
+ };
3154
+ }
3155
+
3156
+ var isBrowser$1 = typeof document !== 'undefined';
3157
+
3158
+ var syncFallback = function syncFallback(create) {
3159
+ return create();
3160
+ };
3161
+
3162
+ var useInsertionEffect = React__namespace['useInsertion' + 'Effect'] ? React__namespace['useInsertion' + 'Effect'] : false;
3163
+ var useInsertionEffectAlwaysWithSyncFallback = !isBrowser$1 ? syncFallback : useInsertionEffect || syncFallback;
3164
+ var useInsertionEffectWithLayoutFallback = useInsertionEffect || React__namespace.useLayoutEffect;
3165
+
3166
+ var isBrowser = typeof document !== 'undefined';
3167
+
3168
+ var EmotionCacheContext = /* #__PURE__ */React__namespace.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case
3169
+ // because this module is primarily intended for the browser and node
3170
+ // but it's also required in react native and similar environments sometimes
3171
+ // and we could have a special build just for that
3172
+ // but this is much easier and the native packages
3173
+ // might use a different theme context in the future anyway
3174
+ typeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({
3175
+ key: 'css'
3176
+ }) : null);
3177
+
3178
+ EmotionCacheContext.Provider;
3179
+
3180
+ var withEmotionCache = function withEmotionCache(func) {
3181
+ return /*#__PURE__*/React.forwardRef(function (props, ref) {
3182
+ // the cache will never be null in the browser
3183
+ var cache = React.useContext(EmotionCacheContext);
3184
+ return func(props, cache, ref);
3185
+ });
3186
+ };
3187
+
3188
+ if (!isBrowser) {
3189
+ withEmotionCache = function withEmotionCache(func) {
3190
+ return function (props) {
3191
+ var cache = React.useContext(EmotionCacheContext);
3192
+
3193
+ if (cache === null) {
3194
+ // yes, we're potentially creating this on every render
3195
+ // it doesn't actually matter though since it's only on the server
3196
+ // so there will only every be a single render
3197
+ // that could change in the future because of suspense and etc. but for now,
3198
+ // this works and i don't want to optimise for a future thing that we aren't sure about
3199
+ cache = createCache({
3200
+ key: 'css'
3201
+ });
3202
+ return /*#__PURE__*/React__namespace.createElement(EmotionCacheContext.Provider, {
3203
+ value: cache
3204
+ }, func(props, cache));
3205
+ } else {
3206
+ return func(props, cache);
3207
+ }
3208
+ };
3209
+ };
3210
+ }
3211
+
3212
+ var ThemeContext = /* #__PURE__ */React__namespace.createContext({});
3213
+
3214
+ var hasOwn = {}.hasOwnProperty;
3215
+
3216
+ var typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';
3217
+ var createEmotionProps = function createEmotionProps(type, props) {
3218
+
3219
+ var newProps = {};
3220
+
3221
+ for (var _key in props) {
3222
+ if (hasOwn.call(props, _key)) {
3223
+ newProps[_key] = props[_key];
3224
+ }
3225
+ }
3226
+
3227
+ newProps[typePropName] = type; // Runtime labeling is an opt-in feature because:
3228
+
3229
+ return newProps;
3230
+ };
3231
+
3232
+ var Insertion = function Insertion(_ref) {
3233
+ var cache = _ref.cache,
3234
+ serialized = _ref.serialized,
3235
+ isStringTag = _ref.isStringTag;
3236
+ registerStyles(cache, serialized, isStringTag);
3237
+ var rules = useInsertionEffectAlwaysWithSyncFallback(function () {
3238
+ return insertStyles(cache, serialized, isStringTag);
3239
+ });
3240
+
3241
+ if (!isBrowser && rules !== undefined) {
3242
+ var _ref2;
3243
+
3244
+ var serializedNames = serialized.name;
3245
+ var next = serialized.next;
3246
+
3247
+ while (next !== undefined) {
3248
+ serializedNames += ' ' + next.name;
3249
+ next = next.next;
3250
+ }
3251
+
3252
+ return /*#__PURE__*/React__namespace.createElement("style", (_ref2 = {}, _ref2["data-emotion"] = cache.key + " " + serializedNames, _ref2.dangerouslySetInnerHTML = {
3253
+ __html: rules
3254
+ }, _ref2.nonce = cache.sheet.nonce, _ref2));
3255
+ }
3256
+
3257
+ return null;
3258
+ };
3259
+
3260
+ var Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {
3261
+ var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works
3262
+ // not passing the registered cache to serializeStyles because it would
3263
+ // make certain babel optimisations not possible
3264
+
3265
+ if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {
3266
+ cssProp = cache.registered[cssProp];
3267
+ }
3268
+
3269
+ var WrappedComponent = props[typePropName];
3270
+ var registeredStyles = [cssProp];
3271
+ var className = '';
3272
+
3273
+ if (typeof props.className === 'string') {
3274
+ className = getRegisteredStyles(cache.registered, registeredStyles, props.className);
3275
+ } else if (props.className != null) {
3276
+ className = props.className + " ";
3277
+ }
3278
+
3279
+ var serialized = serializeStyles(registeredStyles, undefined, React__namespace.useContext(ThemeContext));
3280
+
3281
+ className += cache.key + "-" + serialized.name;
3282
+ var newProps = {};
3283
+
3284
+ for (var _key2 in props) {
3285
+ if (hasOwn.call(props, _key2) && _key2 !== 'css' && _key2 !== typePropName && (true )) {
3286
+ newProps[_key2] = props[_key2];
3287
+ }
3288
+ }
3289
+
3290
+ newProps.className = className;
3291
+
3292
+ if (ref) {
3293
+ newProps.ref = ref;
3294
+ }
3295
+
3296
+ return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Insertion, {
3297
+ cache: cache,
3298
+ serialized: serialized,
3299
+ isStringTag: typeof WrappedComponent === 'string'
3300
+ }), /*#__PURE__*/React__namespace.createElement(WrappedComponent, newProps));
3301
+ });
3302
+
3303
+ var Emotion$1 = Emotion;
3304
+
3305
+ var jsx = function jsx(type, props) {
3306
+ // eslint-disable-next-line prefer-rest-params
3307
+ var args = arguments;
3308
+
3309
+ if (props == null || !hasOwn.call(props, 'css')) {
3310
+ return React__namespace.createElement.apply(undefined, args);
3311
+ }
3312
+
3313
+ var argsLength = args.length;
3314
+ var createElementArgArray = new Array(argsLength);
3315
+ createElementArgArray[0] = Emotion$1;
3316
+ createElementArgArray[1] = createEmotionProps(type, props);
3317
+
3318
+ for (var i = 2; i < argsLength; i++) {
3319
+ createElementArgArray[i] = args[i];
3320
+ }
3321
+
3322
+ return React__namespace.createElement.apply(null, createElementArgArray);
3323
+ };
3324
+
3325
+ (function (_jsx) {
3326
+ var JSX;
3327
+
3328
+ (function (_JSX) {})(JSX || (JSX = _jsx.JSX || (_jsx.JSX = {})));
3329
+ })(jsx || (jsx = {}));
3330
+
3331
+ // initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild
3332
+ // initial client-side render from SSR, use place of hydrating tag
3333
+
3334
+ var Global = /* #__PURE__ */withEmotionCache(function (props, cache) {
3335
+
3336
+ var styles = props.styles;
3337
+ var serialized = serializeStyles([styles], undefined, React__namespace.useContext(ThemeContext));
3338
+
3339
+ if (!isBrowser) {
3340
+ var _ref;
3341
+
3342
+ var serializedNames = serialized.name;
3343
+ var serializedStyles = serialized.styles;
3344
+ var next = serialized.next;
3345
+
3346
+ while (next !== undefined) {
3347
+ serializedNames += ' ' + next.name;
3348
+ serializedStyles += next.styles;
3349
+ next = next.next;
3350
+ }
3351
+
3352
+ var shouldCache = cache.compat === true;
3353
+ var rules = cache.insert("", {
3354
+ name: serializedNames,
3355
+ styles: serializedStyles
3356
+ }, cache.sheet, shouldCache);
3357
+
3358
+ if (shouldCache) {
3359
+ return null;
3360
+ }
3361
+
3362
+ return /*#__PURE__*/React__namespace.createElement("style", (_ref = {}, _ref["data-emotion"] = cache.key + "-global " + serializedNames, _ref.dangerouslySetInnerHTML = {
3363
+ __html: rules
3364
+ }, _ref.nonce = cache.sheet.nonce, _ref));
3365
+ } // yes, i know these hooks are used conditionally
3366
+ // but it is based on a constant that will never change at runtime
3367
+ // it's effectively like having two implementations and switching them out
3368
+ // so it's not actually breaking anything
3369
+
3370
+
3371
+ var sheetRef = React__namespace.useRef();
3372
+ useInsertionEffectWithLayoutFallback(function () {
3373
+ var key = cache.key + "-global"; // use case of https://github.com/emotion-js/emotion/issues/2675
3374
+
3375
+ var sheet = new cache.sheet.constructor({
3376
+ key: key,
3377
+ nonce: cache.sheet.nonce,
3378
+ container: cache.sheet.container,
3379
+ speedy: cache.sheet.isSpeedy
3380
+ });
3381
+ var rehydrating = false;
3382
+ var node = document.querySelector("style[data-emotion=\"" + key + " " + serialized.name + "\"]");
3383
+
3384
+ if (cache.sheet.tags.length) {
3385
+ sheet.before = cache.sheet.tags[0];
3386
+ }
3387
+
3388
+ if (node !== null) {
3389
+ rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other <Global/>s
3390
+
3391
+ node.setAttribute('data-emotion', key);
3392
+ sheet.hydrate([node]);
3393
+ }
3394
+
3395
+ sheetRef.current = [sheet, rehydrating];
3396
+ return function () {
3397
+ sheet.flush();
3398
+ };
3399
+ }, [cache]);
3400
+ useInsertionEffectWithLayoutFallback(function () {
3401
+ var sheetRefCurrent = sheetRef.current;
3402
+ var sheet = sheetRefCurrent[0],
3403
+ rehydrating = sheetRefCurrent[1];
3404
+
3405
+ if (rehydrating) {
3406
+ sheetRefCurrent[1] = false;
3407
+ return;
3408
+ }
3409
+
3410
+ if (serialized.next !== undefined) {
3411
+ // insert keyframes
3412
+ insertStyles(cache, serialized.next, true);
3413
+ }
3414
+
3415
+ if (sheet.tags.length) {
3416
+ // if this doesn't exist then it will be null so the style element will be appended
3417
+ var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;
3418
+ sheet.before = element;
3419
+ sheet.flush();
3420
+ }
3421
+
3422
+ cache.insert("", serialized, sheet, false);
3423
+ }, [cache, serialized.name]);
3424
+ return null;
3425
+ });
3426
+
3427
+ function css() {
3428
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
3429
+ args[_key] = arguments[_key];
3430
+ }
3431
+
3432
+ return serializeStyles(args);
3433
+ }
3434
+
3435
+ const GlobalCSSVariables = ({ variables, defaultColorMode = "dark" }) => {
3436
+ const propertiesByColorMode = {};
3437
+ const cssVariables = THEME_COLOR_MODES.reduce((properties, colorMode) => {
3438
+ const formattedVariables = {};
3439
+ for (const [variableName, propertyValue] of Object.entries(variables[colorMode])) {
3440
+ formattedVariables[`--${variableName}`] = propertyValue;
3441
+ }
3442
+ if (defaultColorMode !== null && defaultColorMode === colorMode) {
3443
+ properties[":root"] = formattedVariables;
3444
+ }
3445
+ return {
3446
+ ...properties,
3447
+ [`[data-color-mode='${colorMode}']`]: formattedVariables
3448
+ };
3449
+ }, propertiesByColorMode);
3450
+ return /* @__PURE__ */ jsxRuntime.jsx(Global, { styles: css(cssVariables) });
3451
+ };
3452
+
3453
+ const formatNumber = (value, options = {}) => {
3454
+ const { decimals = 2, compactThreshold = 1e3, precise = false } = options;
3455
+ if (value === "loading") {
3456
+ return "";
3457
+ }
3458
+ const num = typeof value === "string" ? parseFloat(value) : value;
3459
+ if (isNaN(num)) {
3460
+ return "N/A";
3461
+ }
3462
+ const abs = Math.abs(num);
3463
+ if (!precise && abs >= compactThreshold) {
3464
+ const sign = num < 0 ? "-" : "";
3465
+ const absNum = Math.abs(num);
3466
+ if (absNum >= 1e9) {
3467
+ return `${sign}${(absNum / 1e9).toFixed(1)}b`;
3468
+ } else if (absNum >= 1e6) {
3469
+ return `${sign}${(absNum / 1e6).toFixed(1)}m`;
3470
+ } else if (absNum >= 1e3) {
3471
+ return `${sign}${(absNum / 1e3).toFixed(1)}k`;
3472
+ }
3473
+ }
3474
+ return num.toLocaleString("en-US", {
3475
+ minimumFractionDigits: decimals,
3476
+ maximumFractionDigits: decimals
3477
+ });
3478
+ };
3479
+
3480
+ const calculateComparison = (current, baseline) => {
3481
+ if (current === void 0 || current === null || baseline === void 0 || baseline === null || baseline === 0) {
3482
+ return {
3483
+ hasComparison: false,
3484
+ direction: "neutral",
3485
+ percentageChange: 0,
3486
+ percentageLabel: ""
3487
+ };
3488
+ }
3489
+ if (current === baseline) {
3490
+ return {
3491
+ hasComparison: true,
3492
+ direction: "neutral",
3493
+ percentageChange: 0,
3494
+ percentageLabel: "0%"
3495
+ };
3496
+ }
3497
+ const percentageChange = Math.abs((current - baseline) / baseline * 100);
3498
+ const direction = current > baseline ? "up" : "down";
3499
+ return {
3500
+ hasComparison: true,
3501
+ direction,
3502
+ percentageChange,
3503
+ percentageLabel: `${formatNumber(percentageChange, {
3504
+ compactThreshold: 1e4,
3505
+ decimals: 2
3506
+ })}%`
3507
+ };
3508
+ };
3509
+
3510
+ const getStyles$1 = () => {
3511
+ const {
3512
+ legacy,
3513
+ primitives: { spacing, typography }
3514
+ } = getDesignTokens({ valueType: "css" });
3515
+ const backgroundColor = legacy.colors.background.primary;
3516
+ return {
3517
+ arrow: css$1.css({
3518
+ fill: backgroundColor
3519
+ }),
3520
+ shadow: css$1.css({
3521
+ filter: `drop-shadow(${legacy.boxShadows.z2})`
3522
+ }),
3523
+ container: css$1.css({
3524
+ backgroundColor,
3525
+ borderRadius: `calc(${legacy.borderRadius.md} + ${spacing.xs})`,
3526
+ padding: spacing.xs,
3527
+ color: legacy.colors.text.primary,
3528
+ fontFamily: typography.fontFamily.ui,
3529
+ fontSize: typography.fontSize.ui.sm,
3530
+ fontWeight: typography.fontWeight.medium
3531
+ })
3532
+ };
3533
+ };
3534
+
3535
+ const POPOVER_OFFSET = 8;
3536
+ const getMiddleware = ({
3537
+ placement,
3538
+ arrowRef
3539
+ }) => {
3540
+ var _a;
3541
+ const BOUNDARY_ELEMENT_ID = "floating-boundary";
3542
+ const _flip = react.flip({
3543
+ // Ensure we flip to the perpendicular axis if it doesn't fit
3544
+ // on narrow viewports.
3545
+ crossAxis: "alignment",
3546
+ fallbackAxisSideDirection: "end",
3547
+ boundary: (_a = document.getElementById(BOUNDARY_ELEMENT_ID)) != null ? _a : void 0
3548
+ });
3549
+ const middleware = (placement == null ? void 0 : placement.includes("-")) ? [_flip, react.shift()] : [react.shift(), _flip];
3550
+ return [
3551
+ react.offset(POPOVER_OFFSET),
3552
+ ...middleware,
3553
+ react.arrow({
3554
+ element: arrowRef
3555
+ })
3556
+ ];
3557
+ };
3558
+ const Popover = React.forwardRef(
3559
+ ({
3560
+ trigger,
3561
+ children,
3562
+ isOpen: isOpenControlled,
3563
+ isInteractive = false,
3564
+ placement = "bottom",
3565
+ transitionDuration = 200,
3566
+ hideDelay = 500
3567
+ }, forwardedRef) => {
3568
+ const arrowRef = React.useRef(null);
3569
+ const closeTimer = React.useRef(void 0);
3570
+ const popoverId = React.useId();
3571
+ const [isOpenState, setOpen] = React.useState(isOpenControlled);
3572
+ const [isDelayedOpen, setDelayedOpen] = React.useState(isOpenControlled);
3573
+ const isOpen = isOpenControlled != null ? isOpenControlled : isOpenState;
3574
+ const middleware = getMiddleware({ placement, arrowRef });
3575
+ const styles = getStyles$1();
3576
+ const { context, refs, floatingStyles } = react.useFloating({
3577
+ open: isOpen,
3578
+ placement,
3579
+ onOpenChange: (open) => {
3580
+ setOpen(open);
3581
+ clearTimeout(closeTimer.current);
3582
+ if (!open) {
3583
+ closeTimer.current = setTimeout(() => {
3584
+ setDelayedOpen(open);
3585
+ }, transitionDuration + hideDelay);
3586
+ } else {
3587
+ setDelayedOpen(open);
3588
+ }
3589
+ },
3590
+ middleware,
3591
+ whileElementsMounted: react.autoUpdate
3592
+ });
3593
+ const { getReferenceProps, getFloatingProps } = react.useInteractions([
3594
+ react.useDismiss(context),
3595
+ react.useHover(context, {
3596
+ handleClose: isInteractive ? react.safePolygon() : void 0,
3597
+ move: false,
3598
+ delay: {
3599
+ open: 0,
3600
+ close: hideDelay
3601
+ }
3602
+ }),
3603
+ react.useFocus(context)
3604
+ ]);
3605
+ const { styles: transitionStyles } = react.useTransitionStyles(context, {
3606
+ duration: transitionDuration,
3607
+ initial: ({ side }) => ({
3608
+ opacity: 0,
3609
+ transform: side === "top" || side === "bottom" ? `translateY(${POPOVER_OFFSET}px)` : `translateX(${POPOVER_OFFSET}px)`
3610
+ }),
3611
+ open: ({ side }) => ({
3612
+ opacity: 1,
3613
+ transform: side === "top" || side === "bottom" ? `translateY(0)` : `translateX(0)`
3614
+ }),
3615
+ close: ({ side }) => ({
3616
+ opacity: 0,
3617
+ transform: side === "top" || side === "bottom" ? `translateY(${POPOVER_OFFSET}px)` : `translateX(${POPOVER_OFFSET}px)`
3618
+ })
3619
+ });
3620
+ const handleRef = React.useCallback(
3621
+ (ref) => {
3622
+ refs.setReference(ref);
3623
+ if (typeof forwardedRef === "function") {
3624
+ forwardedRef(ref);
3625
+ } else if (forwardedRef) {
3626
+ forwardedRef.current = ref;
3627
+ }
3628
+ },
3629
+ [forwardedRef, refs]
3630
+ );
3631
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3632
+ React.cloneElement(trigger, {
3633
+ ref: handleRef,
3634
+ tabIndex: 0,
3635
+ "aria-describedby": isOpen ? popoverId : void 0,
3636
+ ...getReferenceProps()
3637
+ }),
3638
+ (isDelayedOpen || isOpen) && /* @__PURE__ */ jsxRuntime.jsx(ui.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { ref: refs.setFloating, style: floatingStyles, ...getFloatingProps(), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { style: transitionStyles, className: styles.shadow, children: [
3639
+ /* @__PURE__ */ jsxRuntime.jsx(react.FloatingArrow, { className: styles.arrow, ref: arrowRef, context }),
3640
+ /* @__PURE__ */ jsxRuntime.jsx("div", { id: popoverId, role: "tooltip", className: styles.container, children })
3641
+ ] }) }) })
3642
+ ] });
3643
+ }
3644
+ );
3645
+ Popover.displayName = "Popover";
3646
+
3647
+ const getStyles = () => {
3648
+ const {
3649
+ legacy,
3650
+ primitives: { spacing, typography }
3651
+ } = getDesignTokens({ valueType: "css" });
3652
+ return {
3653
+ wrapper: css$1.css({
3654
+ display: "flex",
3655
+ flexDirection: "column",
3656
+ gap: spacing.xs
3657
+ }),
3658
+ heading: css$1.css({
3659
+ padding: `${spacing.sm} ${spacing.md}`,
3660
+ fontFamily: typography.fontFamily.ui,
3661
+ fontSize: typography.fontSize.ui.sm,
3662
+ fontWeight: typography.fontWeight.bold,
3663
+ color: legacy.colors.text.primary,
3664
+ background: legacy.colors.background.secondary,
3665
+ borderRadius: legacy.borderRadius.md
3666
+ }),
3667
+ content: css$1.css({
3668
+ display: "flex",
3669
+ gap: spacing.xs
3670
+ }),
3671
+ section: css$1.css({
3672
+ display: "flex",
3673
+ flex: 1,
3674
+ flexDirection: "column",
3675
+ justifyContent: "flex-end",
3676
+ gap: spacing.xs,
3677
+ background: legacy.colors.background.secondary,
3678
+ borderRadius: legacy.borderRadius.md,
3679
+ padding: `${spacing.sm} ${spacing.md}`,
3680
+ minWidth: `80px`
3681
+ }),
3682
+ sectionTitle: css$1.css({
3683
+ fontFamily: typography.fontFamily.ui,
3684
+ fontSize: typography.fontSize.ui.sm,
3685
+ fontWeight: typography.fontWeight.medium,
3686
+ color: legacy.colors.text.primary,
3687
+ whiteSpace: "nowrap"
3688
+ }),
3689
+ value: css$1.css({
3690
+ display: "flex",
3691
+ alignItems: "center",
3692
+ gap: spacing.xs,
3693
+ fontFamily: typography.fontFamily.monospace,
3694
+ fontSize: typography.fontSize.monospace.sm,
3695
+ color: legacy.colors.text.secondary
3696
+ }),
3697
+ icon: css$1.css({
3698
+ flexShrink: 0
3699
+ })
3700
+ };
3701
+ };
3702
+
3703
+ const ComparisonTooltip = ({
3704
+ trigger,
3705
+ placement = "top",
3706
+ current,
3707
+ previous,
3708
+ previousLabel,
3709
+ currentLabel = "Current",
3710
+ title,
3711
+ currentIcon = "eye",
3712
+ previousIcon = "clock-nine",
3713
+ hideDelay
3714
+ }) => {
3715
+ const styles = getStyles();
3716
+ return /* @__PURE__ */ jsxRuntime.jsx(Popover, { trigger, placement, hideDelay, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.wrapper, children: [
3717
+ title && /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.heading, children: title }),
3718
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.content, children: [
3719
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.section, children: [
3720
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.sectionTitle, children: currentLabel }),
3721
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.value, children: [
3722
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Icon, { name: currentIcon, size: "sm", className: styles.icon }),
3723
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: current || "N/A" })
3724
+ ] })
3725
+ ] }),
3726
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.section, children: [
3727
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.sectionTitle, children: previousLabel }),
3728
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.value, children: [
3729
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Icon, { name: previousIcon, size: "sm", className: styles.icon }),
3730
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: previous || "N/A" })
3731
+ ] })
3732
+ ] })
3733
+ ] })
3734
+ ] }) });
3735
+ };
3736
+
3737
+ const cssVariables = () => {
3738
+ const { legacy } = getDesignTokens({ valueType: "css" });
3739
+ return {
3740
+ dark: {
3741
+ "comparison-badge-icon-background-color": legacy.colors.background.secondary,
3742
+ "comparison-badge-icon-highlight-background-color": legacy.palette.whiteBaseOpacity10
3743
+ },
3744
+ light: {
3745
+ "comparison-badge-icon-background-color": legacy.colors.background.canvas,
3746
+ "comparison-badge-icon-highlight-background-color": legacy.palette.blackBaseOpacity8
3747
+ }
3748
+ };
3749
+ };
3750
+ const BADGE_HEIGHT = 28;
3751
+ const TREND_ICON_SIZE = 20;
3752
+ const getComparisonBadgeStyles = ({
3753
+ highlight,
3754
+ direction,
3755
+ tooltip
3756
+ }) => {
3757
+ const {
3758
+ legacy,
3759
+ primitives: { spacing, typography }
3760
+ } = getDesignTokens({ valueType: "css" });
3761
+ const labelColor = (() => {
3762
+ switch (true) {
3763
+ case highlight:
3764
+ case direction === "up":
3765
+ return legacy.colors.text.maxContrast;
3766
+ default:
3767
+ return legacy.colors.primary.text;
3768
+ }
3769
+ })();
3770
+ return {
3771
+ container: css$1.css({
3772
+ boxSizing: "border-box",
3773
+ background: "transparent",
3774
+ borderRadius: legacy.borderRadius.pill,
3775
+ border: `1px solid
3776
+ ${highlight ? legacy.colors.border.strong : legacy.colors.border.weak}`,
3777
+ padding: `${spacing.xxs} ${spacing.sm} ${spacing.xxs} ${spacing.xxs}`,
3778
+ textAlign: "left",
3779
+ display: "inline-flex",
3780
+ flexDirection: "row",
3781
+ justifyContent: "center",
3782
+ alignItems: "center",
3783
+ fontFamily: typography.fontFamily.ui,
3784
+ fontSize: typography.fontSize.ui.sm,
3785
+ height: `${BADGE_HEIGHT}px`,
3786
+ position: "relative",
3787
+ transition: "background 0.2s ease-in-out",
3788
+ ...tooltip ? {
3789
+ cursor: "pointer",
3790
+ "&:hover": {
3791
+ background: legacy.colors.background.secondary
3792
+ }
3793
+ } : {}
3794
+ }),
3795
+ clockIconWrapper: css$1.css({
3796
+ background: highlight ? "var(--comparison-badge-icon-highlight-background-color)" : "var(--comparison-badge-icon-background-color)",
3797
+ display: "flex",
3798
+ alignItems: "center",
3799
+ justifyContent: "center",
3800
+ width: "22px",
3801
+ height: "22px",
3802
+ borderRadius: legacy.borderRadius.pill,
3803
+ color: legacy.colors.text.primary
3804
+ }),
3805
+ trendLabelContainer: css$1.css({
3806
+ display: "flex",
3807
+ flexDirection: "row",
3808
+ alignItems: "center",
3809
+ gap: spacing.xxs,
3810
+ paddingLeft: spacing.xxs,
3811
+ fontWeight: typography.fontWeight.medium
3812
+ }),
3813
+ trendLabel: css$1.css({
3814
+ display: "flex",
3815
+ alignItems: "center",
3816
+ color: labelColor,
3817
+ lineHeight: `${BADGE_HEIGHT}px`,
3818
+ fontWeight: typography.fontWeight.medium,
3819
+ fontVariantNumeric: "tabular-nums"
3820
+ }),
3821
+ timeframeLabel: css$1.css({
3822
+ color: highlight ? legacy.colors.text.maxContrast : legacy.colors.text.primary,
3823
+ paddingLeft: spacing.xxs,
3824
+ lineHeight: `${BADGE_HEIGHT}px`,
3825
+ fontWeight: typography.fontWeight.normal
3826
+ }),
3827
+ trendIconWrapper: css$1.css({
3828
+ display: "flex",
3829
+ alignItems: "center",
3830
+ justifyContent: "center",
3831
+ width: "16px",
3832
+ height: "16px"
3833
+ }),
3834
+ trendIcon: css$1.css({
3835
+ width: `${TREND_ICON_SIZE}px`,
3836
+ height: `${TREND_ICON_SIZE}px`
3837
+ }),
3838
+ dash: css$1.css({
3839
+ color: legacy.colors.text.secondary
3840
+ })
3841
+ };
3842
+ };
3843
+
3844
+ const formatCurrency = (value) => {
3845
+ return !!value ? `$${formatNumber(value, { precise: true })}` : "N/A";
3846
+ };
3847
+ const DIRECTION_ICON = {
3848
+ up: "arrow-up",
3849
+ down: "arrow-down",
3850
+ neutral: "minus"
3851
+ };
3852
+ const ComparisonBadge = ({
3853
+ current,
3854
+ previous,
3855
+ currentLabel,
3856
+ previousLabel,
3857
+ placement,
3858
+ highlight = false,
3859
+ timeframeLabel,
3860
+ tooltip = true
3861
+ }) => {
3862
+ const { direction, hasComparison, percentageLabel } = calculateComparison(current, previous);
3863
+ const styles = getComparisonBadgeStyles({ highlight, direction, tooltip });
3864
+ const directionIconStyle = (() => {
3865
+ switch (true) {
3866
+ case direction == "neutral":
3867
+ return styles.dash;
3868
+ default:
3869
+ return void 0;
3870
+ }
3871
+ })();
3872
+ const badgeContent = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.container, children: [
3873
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.clockIconWrapper, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Icon, { name: "clock-nine" }) }),
3874
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.trendLabelContainer, children: [
3875
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: styles.trendLabel, children: [
3876
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: styles.trendIconWrapper, children: /* @__PURE__ */ jsxRuntime.jsx(
3877
+ ui.Icon,
3878
+ {
3879
+ name: DIRECTION_ICON[direction],
3880
+ className: css$1.cx(styles.trendIcon, directionIconStyle)
3881
+ }
3882
+ ) }),
3883
+ hasComparison && percentageLabel && /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: percentageLabel })
3884
+ ] }),
3885
+ timeframeLabel && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: styles.timeframeLabel, children: [
3886
+ "vs ",
3887
+ timeframeLabel.toLowerCase()
3888
+ ] })
3889
+ ] })
3890
+ ] });
3891
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3892
+ /* @__PURE__ */ jsxRuntime.jsx(GlobalCSSVariables, { variables: cssVariables(), defaultColorMode: null }),
3893
+ tooltip ? /* @__PURE__ */ jsxRuntime.jsx(
3894
+ ComparisonTooltip,
3895
+ {
3896
+ trigger: badgeContent,
3897
+ current: formatCurrency(current),
3898
+ previous: formatCurrency(previous),
3899
+ currentLabel,
3900
+ previousLabel,
3901
+ placement
3902
+ }
3903
+ ) : badgeContent
3904
+ ] });
3905
+ };
3906
+
3907
+ exports.ColorModeProvider = ColorModeProvider;
3908
+ exports.ComparisonBadge = ComparisonBadge;
3909
+ exports.ComparisonTooltip = ComparisonTooltip;
3910
+ exports.Popover = Popover;
3911
+ exports.calculateComparison = calculateComparison;
3912
+ exports.formatNumber = formatNumber;
3913
+ exports.useColorMode = useColorMode;
3914
+ //# sourceMappingURL=index.cjs.map