@octavius2929-personal/design-system 0.3.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +64 -0
- package/dist/dm-serif-display-latin-ext-italic-400-QUYR73UK.woff2 +0 -0
- package/dist/dm-serif-display-latin-ext-normal-400-GP44XTZK.woff2 +0 -0
- package/dist/dm-serif-display-latin-italic-400-NM54ELTO.woff2 +0 -0
- package/dist/dm-serif-display-latin-normal-400-DCCDLJOI.woff2 +0 -0
- package/dist/ibm-plex-mono-latin-ext-normal-400-T6XOR2FX.woff2 +0 -0
- package/dist/ibm-plex-mono-latin-ext-normal-500-LJE4XY22.woff2 +0 -0
- package/dist/ibm-plex-mono-latin-ext-normal-600-IEJYURAG.woff2 +0 -0
- package/dist/ibm-plex-mono-latin-normal-400-A2WATXFY.woff2 +0 -0
- package/dist/ibm-plex-mono-latin-normal-500-33HAQIPI.woff2 +0 -0
- package/dist/ibm-plex-mono-latin-normal-600-IIV3OB4N.woff2 +0 -0
- package/dist/index.cjs +99 -37
- package/dist/index.cjs.map +1 -0
- package/dist/index.css +967 -854
- package/dist/index.css.map +1 -0
- package/dist/index.d.cts +620 -12
- package/dist/index.d.ts +620 -12
- package/dist/index.js +107 -46
- package/dist/index.js.map +1 -0
- package/dist/newsreader-latin-ext-italic-400-500-6IPSRR6F.woff2 +0 -0
- package/dist/newsreader-latin-ext-normal-300-600-HJH6YDA4.woff2 +0 -0
- package/dist/newsreader-latin-italic-400-500-ZC4QAWU3.woff2 +0 -0
- package/dist/newsreader-latin-normal-300-600-J4KAOEDO.woff2 +0 -0
- package/dist/unifraktur-maguntia-latin-normal-400-TOQBJZN4.woff2 +0 -0
- package/package.json +8 -8
package/dist/index.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
// src/theme/theme.css.ts
|
|
2
|
+
var colorVars = { bg1: "var(--bg1__e3grur28)", bg2: "var(--bg2__e3grur29)", bg3: "var(--bg3__e3grur2a)", bgInset: "var(--bgInset__e3grur2b)", fg1: "var(--fg1__e3grur2c)", fg2: "var(--fg2__e3grur2d)", fg3: "var(--fg3__e3grur2e)", fgOnAccent: "var(--fgOnAccent__e3grur2f)", border1: "var(--border1__e3grur2g)", border2: "var(--border2__e3grur2h)", borderStrong: "var(--borderStrong__e3grur2i)", accent: "var(--accent__e3grur2j)", accentHover: "var(--accentHover__e3grur2k)", accentSoft: "var(--accentSoft__e3grur2l)", ok: "var(--ok__e3grur2m)", warn: "var(--warn__e3grur2n)", danger: "var(--danger__e3grur2o)", info: "var(--info__e3grur2p)", focus: "var(--focus__e3grur2q)", scrim: "var(--scrim__e3grur2r)" };
|
|
2
3
|
var modeNames = ["light", "dark", "sepia", "contrast"];
|
|
3
4
|
var schemaNames = ["tinta"];
|
|
4
|
-
var themes = { tinta: { light: "
|
|
5
|
-
var vars = { font: { display: "var(--font-display__e3grur0)", text: "var(--font-text__e3grur1)", mono: "var(--font-mono__e3grur2)", black: "var(--font-black__e3grur3)" }, text: { eyebrow: { size: "var(--text-eyebrow-size__e3grur4)", lineHeight: "var(--text-eyebrow-lineHeight__e3grur5)", weight: "var(--text-eyebrow-weight__e3grur6)", letterSpacing: "var(--text-eyebrow-letterSpacing__e3grur7)" }, display: { size: "var(--text-display-size__e3grur8)", lineHeight: "var(--text-display-lineHeight__e3grur9)", weight: "var(--text-display-weight__e3grura)", letterSpacing: "var(--text-display-letterSpacing__e3grurb)" }, h1: { size: "var(--text-h1-size__e3grurc)", lineHeight: "var(--text-h1-lineHeight__e3grurd)", weight: "var(--text-h1-weight__e3grure)", letterSpacing: "var(--text-h1-letterSpacing__e3grurf)" }, h2: { size: "var(--text-h2-size__e3grurg)", lineHeight: "var(--text-h2-lineHeight__e3grurh)", weight: "var(--text-h2-weight__e3gruri)", letterSpacing: "var(--text-h2-letterSpacing__e3grurj)" }, h3: { size: "var(--text-h3-size__e3grurk)", lineHeight: "var(--text-h3-lineHeight__e3grurl)", weight: "var(--text-h3-weight__e3grurm)", letterSpacing: "var(--text-h3-letterSpacing__e3grurn)" }, h4: { size: "var(--text-h4-size__e3gruro)", lineHeight: "var(--text-h4-lineHeight__e3grurp)", weight: "var(--text-h4-weight__e3grurq)", letterSpacing: "var(--text-h4-letterSpacing__e3grurr)" }, body: { size: "var(--text-body-size__e3grurs)", lineHeight: "var(--text-body-lineHeight__e3grurt)", weight: "var(--text-body-weight__e3gruru)", letterSpacing: "var(--text-body-letterSpacing__e3grurv)" }, lead: { size: "var(--text-lead-size__e3grurw)", lineHeight: "var(--text-lead-lineHeight__e3grurx)", weight: "var(--text-lead-weight__e3grury)", letterSpacing: "var(--text-lead-letterSpacing__e3grurz)" }, small: { size: "var(--text-small-size__e3grur10)", lineHeight: "var(--text-small-lineHeight__e3grur11)", weight: "var(--text-small-weight__e3grur12)", letterSpacing: "var(--text-small-letterSpacing__e3grur13)" }, caption: { size: "var(--text-caption-size__e3grur14)", lineHeight: "var(--text-caption-lineHeight__e3grur15)", weight: "var(--text-caption-weight__e3grur16)", letterSpacing: "var(--text-caption-letterSpacing__e3grur17)" } }, space: { none: "var(--space-none__e3grur18)", xs: "var(--space-xs__e3grur19)", sm: "var(--space-sm__e3grur1a)", md: "var(--space-md__e3grur1b)", lg: "var(--space-lg__e3grur1c)", xl: "var(--space-xl__e3grur1d)", "2xl": "var(--space-2xl__e3grur1e)", "3xl": "var(--space-3xl__e3grur1f)", "4xl": "var(--space-4xl__e3grur1g)", "5xl": "var(--space-5xl__e3grur1h)" }, radius: { none: "var(--radius-none__e3grur1i)", sm: "var(--radius-sm__e3grur1j)", md: "var(--radius-md__e3grur1k)", lg: "var(--radius-lg__e3grur1l)", base: "var(--radius-base__e3grur1m)", full: "var(--radius-full__e3grur1n)" }, border: { hair: "var(--border-hair__e3grur1o)", rule: "var(--border-rule__e3grur1p)", heavy: "var(--border-heavy__e3grur1q)" }, tracking: { tight: "var(--tracking-tight__e3grur1r)", normal: "var(--tracking-normal__e3grur1s)", wide: "var(--tracking-wide__e3grur1t)", wider: "var(--tracking-wider__e3grur1u)", widest: "var(--tracking-widest__e3grur1v)" },
|
|
5
|
+
var themes = { tinta: { light: "theme_themes_tinta_light__e3grur2s", dark: "theme_themes_tinta_dark__e3grur2t", sepia: "theme_themes_tinta_sepia__e3grur2u", contrast: "theme_themes_tinta_contrast__e3grur2v" } };
|
|
6
|
+
var vars = { font: { display: "var(--font-display__e3grur0)", text: "var(--font-text__e3grur1)", mono: "var(--font-mono__e3grur2)", black: "var(--font-black__e3grur3)" }, text: { eyebrow: { size: "var(--text-eyebrow-size__e3grur4)", lineHeight: "var(--text-eyebrow-lineHeight__e3grur5)", weight: "var(--text-eyebrow-weight__e3grur6)", letterSpacing: "var(--text-eyebrow-letterSpacing__e3grur7)" }, display: { size: "var(--text-display-size__e3grur8)", lineHeight: "var(--text-display-lineHeight__e3grur9)", weight: "var(--text-display-weight__e3grura)", letterSpacing: "var(--text-display-letterSpacing__e3grurb)" }, h1: { size: "var(--text-h1-size__e3grurc)", lineHeight: "var(--text-h1-lineHeight__e3grurd)", weight: "var(--text-h1-weight__e3grure)", letterSpacing: "var(--text-h1-letterSpacing__e3grurf)" }, h2: { size: "var(--text-h2-size__e3grurg)", lineHeight: "var(--text-h2-lineHeight__e3grurh)", weight: "var(--text-h2-weight__e3gruri)", letterSpacing: "var(--text-h2-letterSpacing__e3grurj)" }, h3: { size: "var(--text-h3-size__e3grurk)", lineHeight: "var(--text-h3-lineHeight__e3grurl)", weight: "var(--text-h3-weight__e3grurm)", letterSpacing: "var(--text-h3-letterSpacing__e3grurn)" }, h4: { size: "var(--text-h4-size__e3gruro)", lineHeight: "var(--text-h4-lineHeight__e3grurp)", weight: "var(--text-h4-weight__e3grurq)", letterSpacing: "var(--text-h4-letterSpacing__e3grurr)" }, body: { size: "var(--text-body-size__e3grurs)", lineHeight: "var(--text-body-lineHeight__e3grurt)", weight: "var(--text-body-weight__e3gruru)", letterSpacing: "var(--text-body-letterSpacing__e3grurv)" }, lead: { size: "var(--text-lead-size__e3grurw)", lineHeight: "var(--text-lead-lineHeight__e3grurx)", weight: "var(--text-lead-weight__e3grury)", letterSpacing: "var(--text-lead-letterSpacing__e3grurz)" }, small: { size: "var(--text-small-size__e3grur10)", lineHeight: "var(--text-small-lineHeight__e3grur11)", weight: "var(--text-small-weight__e3grur12)", letterSpacing: "var(--text-small-letterSpacing__e3grur13)" }, caption: { size: "var(--text-caption-size__e3grur14)", lineHeight: "var(--text-caption-lineHeight__e3grur15)", weight: "var(--text-caption-weight__e3grur16)", letterSpacing: "var(--text-caption-letterSpacing__e3grur17)" } }, space: { none: "var(--space-none__e3grur18)", xs: "var(--space-xs__e3grur19)", sm: "var(--space-sm__e3grur1a)", md: "var(--space-md__e3grur1b)", lg: "var(--space-lg__e3grur1c)", xl: "var(--space-xl__e3grur1d)", "2xl": "var(--space-2xl__e3grur1e)", "3xl": "var(--space-3xl__e3grur1f)", "4xl": "var(--space-4xl__e3grur1g)", "5xl": "var(--space-5xl__e3grur1h)" }, radius: { none: "var(--radius-none__e3grur1i)", sm: "var(--radius-sm__e3grur1j)", md: "var(--radius-md__e3grur1k)", lg: "var(--radius-lg__e3grur1l)", base: "var(--radius-base__e3grur1m)", full: "var(--radius-full__e3grur1n)" }, border: { hair: "var(--border-hair__e3grur1o)", rule: "var(--border-rule__e3grur1p)", heavy: "var(--border-heavy__e3grur1q)" }, tracking: { tight: "var(--tracking-tight__e3grur1r)", normal: "var(--tracking-normal__e3grur1s)", wide: "var(--tracking-wide__e3grur1t)", wider: "var(--tracking-wider__e3grur1u)", widest: "var(--tracking-widest__e3grur1v)" }, weight: { light: "var(--weight-light__e3grur1w)", regular: "var(--weight-regular__e3grur1x)", medium: "var(--weight-medium__e3grur1y)", semibold: "var(--weight-semibold__e3grur1z)", bold: "var(--weight-bold__e3grur20)" }, dur: { fast: "var(--dur-fast__e3grur21)", base: "var(--dur-base__e3grur22)", slow: "var(--dur-slow__e3grur23)" }, ease: { ink: "var(--ease-ink__e3grur24)" }, shadow: { sm: "var(--shadow-sm__e3grur25)", md: "var(--shadow-md__e3grur26)", lg: "var(--shadow-lg__e3grur27)" }, color: colorVars };
|
|
6
7
|
|
|
7
8
|
// src/hooks/use-previous/index.ts
|
|
8
9
|
import { useEffect, useRef } from "react";
|
|
@@ -26,36 +27,86 @@ function useToggle(initial = false) {
|
|
|
26
27
|
import { useMemo as useMemo2 } from "react";
|
|
27
28
|
|
|
28
29
|
// src/theme/context/theme-context.tsx
|
|
29
|
-
import { createContext, useContext, useMemo, useState as useState2 } from "react";
|
|
30
|
+
import { createContext, useContext, useEffect as useEffect2, useMemo, useState as useState2 } from "react";
|
|
30
31
|
import { jsx } from "react/jsx-runtime";
|
|
31
32
|
var noop = () => {
|
|
32
33
|
};
|
|
33
34
|
var DEFAULT_VALUE = {
|
|
34
35
|
schema: "tinta",
|
|
35
36
|
mode: "light",
|
|
37
|
+
preference: "light",
|
|
36
38
|
themeClass: themes.tinta.light,
|
|
37
39
|
setSchema: noop,
|
|
38
40
|
setMode: noop,
|
|
39
|
-
toggleMode: noop
|
|
41
|
+
toggleMode: noop,
|
|
42
|
+
cycleMode: noop
|
|
40
43
|
};
|
|
41
44
|
var ThemeContext = createContext(null);
|
|
45
|
+
function resolveSystemMode() {
|
|
46
|
+
if (typeof window === "undefined" || typeof window.matchMedia !== "function") return "light";
|
|
47
|
+
if (window.matchMedia("(prefers-contrast: more)").matches) return "contrast";
|
|
48
|
+
if (window.matchMedia("(prefers-color-scheme: dark)").matches) return "dark";
|
|
49
|
+
return "light";
|
|
50
|
+
}
|
|
51
|
+
function readStored(key) {
|
|
52
|
+
if (typeof window === "undefined") return null;
|
|
53
|
+
try {
|
|
54
|
+
const raw = window.localStorage.getItem(key);
|
|
55
|
+
return raw ? JSON.parse(raw) : null;
|
|
56
|
+
} catch {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function writeStored(key, value) {
|
|
61
|
+
if (typeof window === "undefined") return;
|
|
62
|
+
try {
|
|
63
|
+
window.localStorage.setItem(key, JSON.stringify(value));
|
|
64
|
+
} catch {
|
|
65
|
+
}
|
|
66
|
+
}
|
|
42
67
|
function ThemeProvider({
|
|
43
68
|
children,
|
|
44
69
|
defaultSchema = "tinta",
|
|
45
|
-
defaultMode = "light"
|
|
70
|
+
defaultMode = "light",
|
|
71
|
+
storageKey = "ds-theme",
|
|
72
|
+
persist = true
|
|
46
73
|
}) {
|
|
47
|
-
const [schema, setSchema] = useState2(
|
|
48
|
-
|
|
74
|
+
const [schema, setSchema] = useState2(
|
|
75
|
+
() => persist && readStored(storageKey)?.schema || defaultSchema
|
|
76
|
+
);
|
|
77
|
+
const [preference, setPreference] = useState2(
|
|
78
|
+
() => (persist ? readStored(storageKey)?.preference : null) ?? defaultMode
|
|
79
|
+
);
|
|
80
|
+
const [systemMode, setSystemMode] = useState2(resolveSystemMode);
|
|
81
|
+
useEffect2(() => {
|
|
82
|
+
if (preference !== "system") return;
|
|
83
|
+
if (typeof window === "undefined" || typeof window.matchMedia !== "function") return;
|
|
84
|
+
const mqls = ["(prefers-contrast: more)", "(prefers-color-scheme: dark)"].map(
|
|
85
|
+
(q) => window.matchMedia(q)
|
|
86
|
+
);
|
|
87
|
+
const onChange = () => setSystemMode(resolveSystemMode());
|
|
88
|
+
onChange();
|
|
89
|
+
for (const mql of mqls) mql.addEventListener?.("change", onChange);
|
|
90
|
+
return () => {
|
|
91
|
+
for (const mql of mqls) mql.removeEventListener?.("change", onChange);
|
|
92
|
+
};
|
|
93
|
+
}, [preference]);
|
|
94
|
+
const mode = preference === "system" ? systemMode : preference;
|
|
95
|
+
useEffect2(() => {
|
|
96
|
+
if (persist) writeStored(storageKey, { schema, preference });
|
|
97
|
+
}, [schema, preference, persist, storageKey]);
|
|
49
98
|
const value = useMemo(
|
|
50
99
|
() => ({
|
|
51
100
|
schema,
|
|
52
101
|
mode,
|
|
102
|
+
preference,
|
|
53
103
|
themeClass: themes[schema][mode],
|
|
54
104
|
setSchema,
|
|
55
|
-
setMode,
|
|
56
|
-
toggleMode: () =>
|
|
105
|
+
setMode: setPreference,
|
|
106
|
+
toggleMode: () => setPreference(mode === "dark" ? "light" : "dark"),
|
|
107
|
+
cycleMode: () => setPreference(modeNames[(modeNames.indexOf(mode) + 1) % modeNames.length])
|
|
57
108
|
}),
|
|
58
|
-
[schema, mode]
|
|
109
|
+
[schema, mode, preference]
|
|
59
110
|
);
|
|
60
111
|
return /* @__PURE__ */ jsx(ThemeContext.Provider, { value, children });
|
|
61
112
|
}
|
|
@@ -386,11 +437,11 @@ function CheckIcon({ size: size3 = 20, strokeWidth = 1.75, ...rest }) {
|
|
|
386
437
|
import { useMemo as useMemo8 } from "react";
|
|
387
438
|
|
|
388
439
|
// src/components/checkbox/use-styles.css.ts
|
|
389
|
-
var box = "use-
|
|
390
|
-
var boxChecked = "use-
|
|
391
|
-
var check = "use-
|
|
392
|
-
var disabled = "use-
|
|
393
|
-
var input = "
|
|
440
|
+
var box = "use-styles_box__9zoga91";
|
|
441
|
+
var boxChecked = "use-styles_boxChecked__9zoga92";
|
|
442
|
+
var check = "use-styles_check__9zoga93";
|
|
443
|
+
var disabled = "use-styles_disabled__9zoga94";
|
|
444
|
+
var input = "surfaces_srOnly__6hs0fg0";
|
|
394
445
|
var root6 = "use-styles_root__9zoga90";
|
|
395
446
|
|
|
396
447
|
// src/components/checkbox/use-styles.ts
|
|
@@ -442,11 +493,11 @@ function Checkbox({
|
|
|
442
493
|
import { useMemo as useMemo9 } from "react";
|
|
443
494
|
|
|
444
495
|
// src/components/radio/use-styles.css.ts
|
|
445
|
-
var circle = "use-
|
|
496
|
+
var circle = "use-styles_circle__vy61b42";
|
|
446
497
|
var disabled2 = "use-styles_disabled__vy61b41";
|
|
447
|
-
var dot2 = "use-
|
|
448
|
-
var input2 = "
|
|
449
|
-
var label2 = "use-
|
|
498
|
+
var dot2 = "use-styles_dot__vy61b43";
|
|
499
|
+
var input2 = "surfaces_srOnly__6hs0fg0";
|
|
500
|
+
var label2 = "use-styles_label__vy61b44";
|
|
450
501
|
var root7 = "use-styles_root__vy61b40";
|
|
451
502
|
|
|
452
503
|
// src/components/radio/use-styles.ts
|
|
@@ -494,13 +545,13 @@ function Radio({ checked, onChange, label: label7, name, value, disabled: disabl
|
|
|
494
545
|
import { useMemo as useMemo10 } from "react";
|
|
495
546
|
|
|
496
547
|
// src/components/switch/use-styles.css.ts
|
|
497
|
-
var input3 = "
|
|
498
|
-
var knob = "use-
|
|
499
|
-
var knobChecked = "use-
|
|
500
|
-
var label3 = "use-
|
|
548
|
+
var input3 = "surfaces_srOnly__6hs0fg0";
|
|
549
|
+
var knob = "use-styles_knob__1r6kem73";
|
|
550
|
+
var knobChecked = "use-styles_knobChecked__1r6kem74";
|
|
551
|
+
var label3 = "use-styles_label__1r6kem75";
|
|
501
552
|
var root8 = "use-styles_root__1r6kem70";
|
|
502
|
-
var track2 = "use-
|
|
503
|
-
var trackChecked = "use-
|
|
553
|
+
var track2 = "use-styles_track__1r6kem71";
|
|
554
|
+
var trackChecked = "use-styles_trackChecked__1r6kem72";
|
|
504
555
|
|
|
505
556
|
// src/components/switch/use-styles.ts
|
|
506
557
|
function useStyles9({ checked }) {
|
|
@@ -958,7 +1009,7 @@ import { cloneElement, useId as useId2, useState as useState4 } from "react";
|
|
|
958
1009
|
import { useMemo as useMemo15 } from "react";
|
|
959
1010
|
|
|
960
1011
|
// src/components/tooltip/use-styles.css.ts
|
|
961
|
-
var bubble = "use-styles_bubble__h9kvh1";
|
|
1012
|
+
var bubble = "use-styles_bubble__h9kvh1 surfaces_inkySurface__6hs0fg2";
|
|
962
1013
|
var placement = { top: "use-styles_placement_top__h9kvh2", bottom: "use-styles_placement_bottom__h9kvh3" };
|
|
963
1014
|
var wrapper = "use-styles_wrapper__h9kvh0";
|
|
964
1015
|
|
|
@@ -994,7 +1045,7 @@ function Tooltip({ label: label7, children, placement: placement2 }) {
|
|
|
994
1045
|
}
|
|
995
1046
|
|
|
996
1047
|
// src/components/select/index.tsx
|
|
997
|
-
import { useEffect as
|
|
1048
|
+
import { useEffect as useEffect3, useId as useId3, useRef as useRef2, useState as useState5 } from "react";
|
|
998
1049
|
|
|
999
1050
|
// src/components/icons/chevron-down/index.tsx
|
|
1000
1051
|
import { jsx as jsx24 } from "react/jsx-runtime";
|
|
@@ -1025,7 +1076,7 @@ import { useMemo as useMemo16 } from "react";
|
|
|
1025
1076
|
var chevron = "use-styles_chevron__1w1czpb4";
|
|
1026
1077
|
var chevronOpen = "use-styles_chevronOpen__1w1czpb5";
|
|
1027
1078
|
var label4 = "use-styles_label__1w1czpb1";
|
|
1028
|
-
var menu = "use-styles_menu__1w1czpb6";
|
|
1079
|
+
var menu = "use-styles_menu__1w1czpb6 surfaces_panelSurface__6hs0fg1";
|
|
1029
1080
|
var option = "use-styles_option__1w1czpb7";
|
|
1030
1081
|
var optionActive = "use-styles_optionActive__1w1czpb9";
|
|
1031
1082
|
var optionSelected = "use-styles_optionSelected__1w1czpb8";
|
|
@@ -1070,7 +1121,7 @@ function Select({ options, value, onChange, placeholder: placeholder2, label: la
|
|
|
1070
1121
|
menu: menu2,
|
|
1071
1122
|
optionClass
|
|
1072
1123
|
} = useStyles15({ open });
|
|
1073
|
-
|
|
1124
|
+
useEffect3(() => {
|
|
1074
1125
|
if (!open) return;
|
|
1075
1126
|
const onPointerDown = (event) => {
|
|
1076
1127
|
if (rootRef.current && !rootRef.current.contains(event.target)) {
|
|
@@ -1581,7 +1632,7 @@ function Tabs({ items, value, onChange }) {
|
|
|
1581
1632
|
// src/components/menu/index.tsx
|
|
1582
1633
|
import {
|
|
1583
1634
|
cloneElement as cloneElement2,
|
|
1584
|
-
useEffect as
|
|
1635
|
+
useEffect as useEffect4,
|
|
1585
1636
|
useRef as useRef3,
|
|
1586
1637
|
useState as useState7
|
|
1587
1638
|
} from "react";
|
|
@@ -1592,7 +1643,7 @@ import { useMemo as useMemo23 } from "react";
|
|
|
1592
1643
|
// src/components/menu/use-styles.css.ts
|
|
1593
1644
|
var danger = "use-styles_danger__1uyxaj3";
|
|
1594
1645
|
var item2 = "use-styles_item__1uyxaj2";
|
|
1595
|
-
var list = "use-styles_list__1uyxaj1";
|
|
1646
|
+
var list = "use-styles_list__1uyxaj1 surfaces_panelSurface__6hs0fg1";
|
|
1596
1647
|
var wrapper3 = "use-styles_wrapper__1uyxaj0";
|
|
1597
1648
|
|
|
1598
1649
|
// src/components/menu/use-styles.ts
|
|
@@ -1632,7 +1683,7 @@ function Menu({ trigger: trigger2, items }) {
|
|
|
1632
1683
|
setOpen(false);
|
|
1633
1684
|
triggerRef.current?.focus();
|
|
1634
1685
|
};
|
|
1635
|
-
|
|
1686
|
+
useEffect4(() => {
|
|
1636
1687
|
if (!open) return;
|
|
1637
1688
|
listRef.current?.querySelector('[role="menuitem"]')?.focus();
|
|
1638
1689
|
const onDocMouseDown = (event) => {
|
|
@@ -1719,10 +1770,11 @@ function Menu({ trigger: trigger2, items }) {
|
|
|
1719
1770
|
|
|
1720
1771
|
// src/components/dialog/index.tsx
|
|
1721
1772
|
import {
|
|
1722
|
-
useEffect as
|
|
1773
|
+
useEffect as useEffect5,
|
|
1723
1774
|
useId as useId4,
|
|
1724
1775
|
useRef as useRef4
|
|
1725
1776
|
} from "react";
|
|
1777
|
+
import { createPortal } from "react-dom";
|
|
1726
1778
|
|
|
1727
1779
|
// src/components/dialog/use-styles.ts
|
|
1728
1780
|
import { useMemo as useMemo24 } from "react";
|
|
@@ -1758,7 +1810,7 @@ function Dialog({ open, onClose, title, actions: actions3, children }) {
|
|
|
1758
1810
|
const previouslyFocused = useRef4(null);
|
|
1759
1811
|
const generatedId = useId4();
|
|
1760
1812
|
const titleId = title != null ? generatedId : void 0;
|
|
1761
|
-
|
|
1813
|
+
useEffect5(() => {
|
|
1762
1814
|
if (!open) return;
|
|
1763
1815
|
const onKeyDown = (event) => {
|
|
1764
1816
|
if (event.key === "Escape") onClose();
|
|
@@ -1766,13 +1818,13 @@ function Dialog({ open, onClose, title, actions: actions3, children }) {
|
|
|
1766
1818
|
document.addEventListener("keydown", onKeyDown);
|
|
1767
1819
|
return () => document.removeEventListener("keydown", onKeyDown);
|
|
1768
1820
|
}, [open, onClose]);
|
|
1769
|
-
|
|
1821
|
+
useEffect5(() => {
|
|
1770
1822
|
if (!open) return;
|
|
1771
1823
|
previouslyFocused.current = document.activeElement;
|
|
1772
1824
|
surfaceRef.current?.focus();
|
|
1773
1825
|
return () => previouslyFocused.current?.focus?.();
|
|
1774
1826
|
}, [open]);
|
|
1775
|
-
|
|
1827
|
+
useEffect5(() => {
|
|
1776
1828
|
if (!open) return;
|
|
1777
1829
|
const previousOverflow = document.body.style.overflow;
|
|
1778
1830
|
document.body.style.overflow = "hidden";
|
|
@@ -1780,7 +1832,7 @@ function Dialog({ open, onClose, title, actions: actions3, children }) {
|
|
|
1780
1832
|
document.body.style.overflow = previousOverflow;
|
|
1781
1833
|
};
|
|
1782
1834
|
}, [open]);
|
|
1783
|
-
if (!open) return null;
|
|
1835
|
+
if (!open || typeof document === "undefined") return null;
|
|
1784
1836
|
const stop = (event) => event.stopPropagation();
|
|
1785
1837
|
const onSurfaceKeyDown = (event) => {
|
|
1786
1838
|
if (event.key !== "Tab") return;
|
|
@@ -1807,7 +1859,7 @@ function Dialog({ open, onClose, title, actions: actions3, children }) {
|
|
|
1807
1859
|
first.focus();
|
|
1808
1860
|
}
|
|
1809
1861
|
};
|
|
1810
|
-
return (
|
|
1862
|
+
return createPortal(
|
|
1811
1863
|
// biome-ignore lint/a11y/useKeyWithClickEvents: ESC handled by a document keydown listener.
|
|
1812
1864
|
/* @__PURE__ */ jsx35("div", { className: overlay2, "data-testid": "dialog-overlay", onClick: onClose, children: /* @__PURE__ */ jsxs25(
|
|
1813
1865
|
"div",
|
|
@@ -1826,17 +1878,21 @@ function Dialog({ open, onClose, title, actions: actions3, children }) {
|
|
|
1826
1878
|
actions3 != null && /* @__PURE__ */ jsx35("div", { className: actionsClass, children: actions3 })
|
|
1827
1879
|
]
|
|
1828
1880
|
}
|
|
1829
|
-
) })
|
|
1881
|
+
) }),
|
|
1882
|
+
document.body
|
|
1830
1883
|
);
|
|
1831
1884
|
}
|
|
1832
1885
|
|
|
1886
|
+
// src/components/snackbar/index.tsx
|
|
1887
|
+
import { createPortal as createPortal2 } from "react-dom";
|
|
1888
|
+
|
|
1833
1889
|
// src/components/snackbar/use-styles.ts
|
|
1834
1890
|
import { useMemo as useMemo25 } from "react";
|
|
1835
1891
|
|
|
1836
1892
|
// src/components/snackbar/use-styles.css.ts
|
|
1837
1893
|
var closeBtn = "use-styles_closeBtn__ihzsep2";
|
|
1838
1894
|
var message = "use-styles_message__ihzsep1";
|
|
1839
|
-
var root20 = "use-styles_root__ihzsep0";
|
|
1895
|
+
var root20 = "use-styles_root__ihzsep0 surfaces_inkySurface__6hs0fg2";
|
|
1840
1896
|
|
|
1841
1897
|
// src/components/snackbar/use-styles.ts
|
|
1842
1898
|
function useStyles24() {
|
|
@@ -1855,12 +1911,15 @@ function useStyles24() {
|
|
|
1855
1911
|
import { jsx as jsx36, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
1856
1912
|
function Snackbar({ open, message: message2, action, onClose }) {
|
|
1857
1913
|
const { root: root24, message: messageClass, closeBtn: closeBtn2 } = useStyles24();
|
|
1858
|
-
if (!open) return null;
|
|
1859
|
-
return
|
|
1860
|
-
/* @__PURE__ */
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
|
|
1914
|
+
if (!open || typeof document === "undefined") return null;
|
|
1915
|
+
return createPortal2(
|
|
1916
|
+
/* @__PURE__ */ jsxs26("div", { role: "status", className: root24, children: [
|
|
1917
|
+
/* @__PURE__ */ jsx36("span", { className: messageClass, children: message2 }),
|
|
1918
|
+
action,
|
|
1919
|
+
onClose && /* @__PURE__ */ jsx36("button", { type: "button", "aria-label": "Close", className: closeBtn2, onClick: onClose, children: /* @__PURE__ */ jsx36(XIcon, { size: 18 }) })
|
|
1920
|
+
] }),
|
|
1921
|
+
document.body
|
|
1922
|
+
);
|
|
1864
1923
|
}
|
|
1865
1924
|
|
|
1866
1925
|
// src/components/table/use-styles.ts
|
|
@@ -2134,6 +2193,7 @@ export {
|
|
|
2134
2193
|
Tooltip,
|
|
2135
2194
|
TriangleAlertIcon,
|
|
2136
2195
|
XIcon,
|
|
2196
|
+
colorVars,
|
|
2137
2197
|
modeNames,
|
|
2138
2198
|
schemaNames,
|
|
2139
2199
|
text,
|
|
@@ -2143,3 +2203,4 @@ export {
|
|
|
2143
2203
|
useTheme,
|
|
2144
2204
|
useToggle
|
|
2145
2205
|
};
|
|
2206
|
+
//# sourceMappingURL=index.js.map
|