@nqlib/nqui 0.4.3 → 0.4.5
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/INSTALLATION.md +234 -0
- package/README.md +109 -151
- package/dist/button-CJHdCq9I.js +155 -0
- package/dist/button-R304rhsj.cjs +1 -0
- package/dist/calendar.cjs.js +1 -1
- package/dist/calendar.es.js +1 -1
- package/dist/carousel-D1FMVglR.cjs +1 -0
- package/dist/carousel-U7RZhYZj.js +179 -0
- package/dist/carousel.cjs.js +1 -1
- package/dist/carousel.es.js +1 -1
- package/dist/command-palette-DCtLpM3Q.js +694 -0
- package/dist/command-palette-MHc03bBf.cjs +5 -0
- package/dist/command.cjs.js +1 -1
- package/dist/command.es.js +1 -1
- package/dist/components/custom/color-picker.d.ts +1 -1
- package/dist/components/custom/color-picker.d.ts.map +1 -1
- package/dist/components/custom/color-slider.d.ts +4 -10
- package/dist/components/custom/color-slider.d.ts.map +1 -1
- package/dist/components/custom/enhanced-radio-group.d.ts +13 -4
- package/dist/components/custom/enhanced-radio-group.d.ts.map +1 -1
- package/dist/components/custom/enhanced-tabs.d.ts.map +1 -1
- package/dist/components/debug/debug-features.d.ts +29 -0
- package/dist/components/debug/debug-features.d.ts.map +1 -0
- package/dist/components/debug/debug-panel.d.ts.map +1 -1
- package/dist/components/error-boundary.d.ts +20 -0
- package/dist/components/error-boundary.d.ts.map +1 -0
- package/dist/components/index.d.ts +103 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/ui/badge.d.ts +16 -5
- package/dist/components/ui/badge.d.ts.map +1 -1
- package/dist/components/ui/button.d.ts +38 -4
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/checkbox.d.ts +16 -2
- package/dist/components/ui/checkbox.d.ts.map +1 -1
- package/dist/components/ui/combobox.d.ts +2 -1
- package/dist/components/ui/combobox.d.ts.map +1 -1
- package/dist/components/ui/frosted-glass.d.ts.map +1 -1
- package/dist/components/ui/input-group.d.ts +1 -1
- package/dist/components/ui/input-group.d.ts.map +1 -1
- package/dist/components/ui/pagination.d.ts +3 -2
- package/dist/components/ui/pagination.d.ts.map +1 -1
- package/dist/components/ui/radio-group.d.ts +3 -1
- package/dist/components/ui/radio-group.d.ts.map +1 -1
- package/dist/components/ui/select.d.ts +6 -1
- package/dist/components/ui/select.d.ts.map +1 -1
- package/dist/components/ui/sidebar.d.ts +1 -1
- package/dist/components/ui/sidebar.d.ts.map +1 -1
- package/dist/components/ui/slider.d.ts +10 -2
- package/dist/components/ui/slider.d.ts.map +1 -1
- package/dist/components/ui/sonner.d.ts +18 -2
- package/dist/components/ui/sonner.d.ts.map +1 -1
- package/dist/components/ui/spinner.d.ts +2 -1
- package/dist/components/ui/spinner.d.ts.map +1 -1
- package/dist/components/ui/switch.d.ts +15 -2
- package/dist/components/ui/switch.d.ts.map +1 -1
- package/dist/components/ui/tabs.d.ts +1 -1
- package/dist/components/ui/tabs.d.ts.map +1 -1
- package/dist/components/ui/toggle.d.ts +1 -1
- package/dist/components/ui/toggle.d.ts.map +1 -1
- package/dist/debug-panel-CNKk-No5.cjs +75 -0
- package/dist/debug-panel-pg39-6xw.js +9011 -0
- package/dist/debug.cjs.js +1 -0
- package/dist/debug.es.js +7 -0
- package/dist/{drawer-CU4lkcz7.js → drawer-DO26uhym.js} +31 -31
- package/dist/drawer-DVarEy65.cjs +1 -0
- package/dist/drawer.cjs.js +1 -1
- package/dist/drawer.es.js +1 -1
- package/dist/{enhanced-calendar-BENbxw7_.js → enhanced-calendar-BGlsSYJd.js} +1 -1
- package/dist/{enhanced-calendar-5PA8CeF7.cjs → enhanced-calendar-C7EQIr6i.cjs} +1 -1
- package/dist/entries/debug.d.ts +14 -0
- package/dist/entries/debug.d.ts.map +1 -0
- package/dist/entries/sonner.d.ts +1 -2
- package/dist/entries/sonner.d.ts.map +1 -1
- package/dist/hooks/use-mobile.d.ts.map +1 -1
- package/dist/hooks/use-scroll-spy.d.ts.map +1 -1
- package/dist/index-CI756mSv.cjs +41 -0
- package/dist/index-CgfzsUO6.js +1069 -0
- package/dist/index.d.ts +2 -98
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/index.d.ts +9 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/wrap-inline-label-text.d.ts +7 -0
- package/dist/lib/wrap-inline-label-text.d.ts.map +1 -0
- package/dist/nqui.cjs.js +49 -245
- package/dist/nqui.es.js +7402 -16735
- package/dist/sonner-CpmECDBk.js +179 -0
- package/dist/sonner-nE9hIalJ.cjs +48 -0
- package/dist/sonner.cjs.js +1 -1
- package/dist/sonner.es.js +3 -2
- package/dist/styles.css +237 -10
- package/docs/components/README.md +109 -10
- package/docs/components/nqui-badge.md +1 -0
- package/docs/components/nqui-button.md +3 -1
- package/docs/components/nqui-card.md +8 -0
- package/docs/components/nqui-carousel.md +6 -0
- package/docs/components/nqui-checkbox.md +38 -1
- package/docs/components/nqui-color-slider.md +5 -3
- package/docs/components/nqui-combobox.md +58 -37
- package/docs/components/nqui-drawer.md +1 -1
- package/docs/components/nqui-frosted-glass.md +83 -5
- package/docs/components/nqui-radio-group.md +47 -2
- package/docs/components/nqui-scroll-area.md +1 -1
- package/docs/components/nqui-select.md +2 -2
- package/docs/components/nqui-sheet.md +1 -1
- package/docs/components/nqui-slider.md +13 -0
- package/docs/components/nqui-spinner.md +6 -1
- package/docs/components/nqui-switch.md +23 -1
- package/docs/components/nqui-tabs.md +11 -1
- package/docs/components/nqui-toaster.md +5 -1
- package/docs/internal-notes/PUBLISHING.md +46 -4
- package/docs/nqui-skills/SKILL.md +106 -0
- package/docs/nqui-skills/design-system.md +143 -0
- package/docs/nqui-skills/rules/composition.md +183 -0
- package/docs/nqui-skills/rules/forms.md +190 -0
- package/docs/nqui-skills/rules/icons.md +158 -0
- package/docs/nqui-skills/rules/styling.md +192 -0
- package/package.json +23 -12
- package/scripts/build-styles.js +16 -0
- package/scripts/cli.js +1 -0
- package/scripts/download-skills.js +91 -0
- package/scripts/examples/nextjs-layout-sidebar.tsx +100 -0
- package/scripts/examples/nextjs-page-sidebar.tsx +81 -0
- package/scripts/examples/vite-app.tsx +135 -0
- package/scripts/examples/vite-main.tsx +17 -0
- package/scripts/examples.js +92 -6
- package/scripts/generate-docs.js +169 -0
- package/scripts/init-css.js +34 -14
- package/scripts/init-cursor.js +8 -0
- package/scripts/init-debug-css.js +4 -2
- package/scripts/post-install.js +41 -9
- package/scripts/publish-npmjs.js +17 -3
- package/scripts/resolve-target-dir.js +20 -1
- package/scripts/setup-helper.js +13 -1
- package/scripts/verify-build.js +1 -1
- package/scripts/wizard.js +12 -7
- package/dist/button-CYFTFDKe.cjs +0 -1
- package/dist/button-nJvDl3w8.js +0 -44
- package/dist/carousel-DEyyJi49.js +0 -179
- package/dist/carousel-Dhhz8m5V.cjs +0 -1
- package/dist/command-palette-UHk8zZOg.cjs +0 -45
- package/dist/command-palette-d-TrdBsM.js +0 -1778
- package/dist/components/custom/enhanced-badge.d.ts +0 -33
- package/dist/components/custom/enhanced-badge.d.ts.map +0 -1
- package/dist/components/custom/enhanced-button.d.ts +0 -34
- package/dist/components/custom/enhanced-button.d.ts.map +0 -1
- package/dist/components/custom/enhanced-checkbox.d.ts +0 -28
- package/dist/components/custom/enhanced-checkbox.d.ts.map +0 -1
- package/dist/components/custom/enhanced-combobox.d.ts +0 -35
- package/dist/components/custom/enhanced-combobox.d.ts.map +0 -1
- package/dist/components/custom/enhanced-select.d.ts +0 -30
- package/dist/components/custom/enhanced-select.d.ts.map +0 -1
- package/dist/components/custom/enhanced-sonner.d.ts +0 -16
- package/dist/components/custom/enhanced-sonner.d.ts.map +0 -1
- package/dist/drawer-BcIxWRN8.cjs +0 -1
- package/dist/sonner-Co6YpYVs.js +0 -546
- package/dist/sonner-DbQhVp8m.cjs +0 -330
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import { jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import * as i from "react";
|
|
3
|
+
import { Toaster as T } from "sonner";
|
|
4
|
+
import { HugeiconsIcon as s } from "@hugeicons/react";
|
|
5
|
+
import { Loading03Icon as S, MultiplicationSignCircleIcon as I, Alert02Icon as E, InformationCircleIcon as C, CheckmarkCircle02Icon as N } from "@hugeicons/core-free-icons";
|
|
6
|
+
var z = (t, n, p, c, l, r, u, f) => {
|
|
7
|
+
let e = document.documentElement, g = ["light", "dark"];
|
|
8
|
+
function d(o) {
|
|
9
|
+
(Array.isArray(t) ? t : [t]).forEach((m) => {
|
|
10
|
+
let v = m === "class", k = v && r ? l.map((x) => r[x] || x) : l;
|
|
11
|
+
v ? (e.classList.remove(...k), e.classList.add(r && r[o] ? r[o] : o)) : e.setAttribute(m, o);
|
|
12
|
+
}), w(o);
|
|
13
|
+
}
|
|
14
|
+
function w(o) {
|
|
15
|
+
f && g.includes(o) && (e.style.colorScheme = o);
|
|
16
|
+
}
|
|
17
|
+
function y() {
|
|
18
|
+
return window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
|
|
19
|
+
}
|
|
20
|
+
if (c) d(c);
|
|
21
|
+
else try {
|
|
22
|
+
let o = localStorage.getItem(n) || p, m = u && o === "system" ? y() : o;
|
|
23
|
+
d(m);
|
|
24
|
+
} catch {
|
|
25
|
+
}
|
|
26
|
+
}, W = i.createContext(void 0), A = { setTheme: (t) => {
|
|
27
|
+
}, themes: [] }, L = () => {
|
|
28
|
+
var t;
|
|
29
|
+
return (t = i.useContext(W)) != null ? t : A;
|
|
30
|
+
};
|
|
31
|
+
i.memo(({ forcedTheme: t, storageKey: n, attribute: p, enableSystem: c, enableColorScheme: l, defaultTheme: r, value: u, themes: f, nonce: e, scriptProps: g }) => {
|
|
32
|
+
let d = JSON.stringify([p, n, r, t, f, u, c, l]).slice(1, -1);
|
|
33
|
+
return i.createElement("script", { ...g, suppressHydrationWarning: !0, nonce: typeof window > "u" ? e : "", dangerouslySetInnerHTML: { __html: `(${z.toString()})(${d})` } });
|
|
34
|
+
});
|
|
35
|
+
const b = "nqui-toast-styles-v2";
|
|
36
|
+
function M() {
|
|
37
|
+
if (typeof document > "u" || document.getElementById(b)) return;
|
|
38
|
+
const t = document.createElement("style");
|
|
39
|
+
t.id = b, t.textContent = `
|
|
40
|
+
/* Pill toast — inverted surface: dark-on-light app, light-on-dark app */
|
|
41
|
+
[data-sonner-toast] .cn-toast {
|
|
42
|
+
border: 1px solid color-mix(in oklch, var(--normal-text) 18%, transparent) !important;
|
|
43
|
+
border-radius: 9999px !important;
|
|
44
|
+
box-shadow:
|
|
45
|
+
0 1px 0 0 color-mix(in oklch, var(--normal-text) 12%, transparent),
|
|
46
|
+
0 1px 2px 0 oklch(0.15 0 0 / 0.08);
|
|
47
|
+
transition: all 200ms ease-in-out !important;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.dark [data-sonner-toast] .cn-toast {
|
|
51
|
+
box-shadow:
|
|
52
|
+
0 1px 0 0 color-mix(in oklch, var(--normal-text) 14%, transparent),
|
|
53
|
+
0 1px 2px 0 oklch(0.15 0 0 / 0.12);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
[data-sonner-toast] .cn-toast.toast-success {
|
|
57
|
+
border-left-width: 3px !important;
|
|
58
|
+
border-left-color: var(--success-500) !important;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
[data-sonner-toast] .cn-toast.toast-error {
|
|
62
|
+
border-left-width: 3px !important;
|
|
63
|
+
border-left-color: var(--danger-500) !important;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
[data-sonner-toast] .cn-toast.toast-warning {
|
|
67
|
+
border-left-width: 3px !important;
|
|
68
|
+
border-left-color: var(--warning-500) !important;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
[data-sonner-toast] .cn-toast.toast-info {
|
|
72
|
+
border-left-width: 3px !important;
|
|
73
|
+
border-left-color: var(--info-500) !important;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
[data-sonner-toast] .cn-toast.toast-loading {
|
|
77
|
+
border-left-width: 3px !important;
|
|
78
|
+
border-left-color: var(--primary-500) !important;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.cn-toast .toast-icon-success { color: var(--success); }
|
|
82
|
+
.cn-toast .toast-icon-error { color: var(--destructive); }
|
|
83
|
+
.cn-toast .toast-icon-warning { color: var(--warning); }
|
|
84
|
+
.cn-toast .toast-icon-info { color: var(--info); }
|
|
85
|
+
.cn-toast .toast-icon-loading { color: var(--primary); }
|
|
86
|
+
`, document.head.appendChild(t);
|
|
87
|
+
}
|
|
88
|
+
const h = ({ ...t }) => {
|
|
89
|
+
const { theme: n = "system" } = L();
|
|
90
|
+
return i.useEffect(() => {
|
|
91
|
+
M();
|
|
92
|
+
}, []), /* @__PURE__ */ a(
|
|
93
|
+
T,
|
|
94
|
+
{
|
|
95
|
+
theme: n,
|
|
96
|
+
className: "toaster group",
|
|
97
|
+
icons: {
|
|
98
|
+
success: /* @__PURE__ */ a(
|
|
99
|
+
s,
|
|
100
|
+
{
|
|
101
|
+
icon: N,
|
|
102
|
+
strokeWidth: 2,
|
|
103
|
+
className: "size-4 text-success toast-icon-success"
|
|
104
|
+
}
|
|
105
|
+
),
|
|
106
|
+
info: /* @__PURE__ */ a(
|
|
107
|
+
s,
|
|
108
|
+
{
|
|
109
|
+
icon: C,
|
|
110
|
+
strokeWidth: 2,
|
|
111
|
+
className: "size-4 text-info toast-icon-info"
|
|
112
|
+
}
|
|
113
|
+
),
|
|
114
|
+
warning: /* @__PURE__ */ a(
|
|
115
|
+
s,
|
|
116
|
+
{
|
|
117
|
+
icon: E,
|
|
118
|
+
strokeWidth: 2,
|
|
119
|
+
className: "size-4 text-warning toast-icon-warning"
|
|
120
|
+
}
|
|
121
|
+
),
|
|
122
|
+
error: /* @__PURE__ */ a(
|
|
123
|
+
s,
|
|
124
|
+
{
|
|
125
|
+
icon: I,
|
|
126
|
+
strokeWidth: 2,
|
|
127
|
+
className: "size-4 text-destructive toast-icon-error"
|
|
128
|
+
}
|
|
129
|
+
),
|
|
130
|
+
loading: /* @__PURE__ */ a(
|
|
131
|
+
s,
|
|
132
|
+
{
|
|
133
|
+
icon: S,
|
|
134
|
+
strokeWidth: 2,
|
|
135
|
+
className: "size-4 text-primary toast-icon-loading animate-spin"
|
|
136
|
+
}
|
|
137
|
+
)
|
|
138
|
+
},
|
|
139
|
+
style: {
|
|
140
|
+
/* Invert page chrome: light UI → dark toast; dark UI → light toast */
|
|
141
|
+
"--normal-bg": "var(--foreground)",
|
|
142
|
+
"--normal-text": "var(--background)",
|
|
143
|
+
"--normal-border": "color-mix(in oklch, var(--background) 25%, transparent)",
|
|
144
|
+
"--border-radius": "9999px",
|
|
145
|
+
"--success-bg": "var(--success)",
|
|
146
|
+
"--success-text": "var(--success-foreground)",
|
|
147
|
+
"--success-border": "var(--success-400)",
|
|
148
|
+
"--error-bg": "var(--destructive)",
|
|
149
|
+
"--error-text": "var(--destructive-foreground)",
|
|
150
|
+
"--error-border": "var(--danger-400)",
|
|
151
|
+
"--warning-bg": "var(--warning)",
|
|
152
|
+
"--warning-text": "var(--warning-foreground)",
|
|
153
|
+
"--warning-border": "var(--warning-400)",
|
|
154
|
+
"--info-bg": "var(--info)",
|
|
155
|
+
"--info-text": "var(--info-foreground)",
|
|
156
|
+
"--info-border": "var(--info-400)"
|
|
157
|
+
},
|
|
158
|
+
toastOptions: {
|
|
159
|
+
classNames: {
|
|
160
|
+
toast: "cn-toast",
|
|
161
|
+
success: "toast-success",
|
|
162
|
+
error: "toast-error",
|
|
163
|
+
warning: "toast-warning",
|
|
164
|
+
info: "toast-info",
|
|
165
|
+
loading: "toast-loading"
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
...t
|
|
169
|
+
}
|
|
170
|
+
);
|
|
171
|
+
};
|
|
172
|
+
h.displayName = "Toaster";
|
|
173
|
+
const j = h, P = h;
|
|
174
|
+
export {
|
|
175
|
+
P as E,
|
|
176
|
+
h as T,
|
|
177
|
+
j as a,
|
|
178
|
+
L as z
|
|
179
|
+
};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";const c=require("react/jsx-runtime"),T=require("react"),j=require("sonner"),i=require("@hugeicons/react"),l=require("@hugeicons/core-free-icons");function E(t){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const r in t)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(o,r,n.get?n:{enumerable:!0,get:()=>t[r]})}}return o.default=t,Object.freeze(o)}const d=E(T);var N=(t,o,r,n,u,a,f,x)=>{let s=document.documentElement,h=["light","dark"];function m(e){(Array.isArray(t)?t:[t]).forEach(p=>{let v=p==="class",S=v&&a?u.map(b=>a[b]||b):u;v?(s.classList.remove(...S),s.classList.add(a&&a[e]?a[e]:e)):s.setAttribute(p,e)}),k(e)}function k(e){x&&h.includes(e)&&(s.style.colorScheme=e)}function I(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(n)m(n);else try{let e=localStorage.getItem(o)||r,p=f&&e==="system"?I():e;m(p)}catch{}},C=d.createContext(void 0),O={setTheme:t=>{},themes:[]},y=()=>{var t;return(t=d.useContext(C))!=null?t:O};d.memo(({forcedTheme:t,storageKey:o,attribute:r,enableSystem:n,enableColorScheme:u,defaultTheme:a,value:f,themes:x,nonce:s,scriptProps:h})=>{let m=JSON.stringify([r,o,a,t,x,f,n,u]).slice(1,-1);return d.createElement("script",{...h,suppressHydrationWarning:!0,nonce:typeof window>"u"?s:"",dangerouslySetInnerHTML:{__html:`(${N.toString()})(${m})`}})});const w="nqui-toast-styles-v2";function z(){if(typeof document>"u"||document.getElementById(w))return;const t=document.createElement("style");t.id=w,t.textContent=`
|
|
2
|
+
/* Pill toast — inverted surface: dark-on-light app, light-on-dark app */
|
|
3
|
+
[data-sonner-toast] .cn-toast {
|
|
4
|
+
border: 1px solid color-mix(in oklch, var(--normal-text) 18%, transparent) !important;
|
|
5
|
+
border-radius: 9999px !important;
|
|
6
|
+
box-shadow:
|
|
7
|
+
0 1px 0 0 color-mix(in oklch, var(--normal-text) 12%, transparent),
|
|
8
|
+
0 1px 2px 0 oklch(0.15 0 0 / 0.08);
|
|
9
|
+
transition: all 200ms ease-in-out !important;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.dark [data-sonner-toast] .cn-toast {
|
|
13
|
+
box-shadow:
|
|
14
|
+
0 1px 0 0 color-mix(in oklch, var(--normal-text) 14%, transparent),
|
|
15
|
+
0 1px 2px 0 oklch(0.15 0 0 / 0.12);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
[data-sonner-toast] .cn-toast.toast-success {
|
|
19
|
+
border-left-width: 3px !important;
|
|
20
|
+
border-left-color: var(--success-500) !important;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
[data-sonner-toast] .cn-toast.toast-error {
|
|
24
|
+
border-left-width: 3px !important;
|
|
25
|
+
border-left-color: var(--danger-500) !important;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
[data-sonner-toast] .cn-toast.toast-warning {
|
|
29
|
+
border-left-width: 3px !important;
|
|
30
|
+
border-left-color: var(--warning-500) !important;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
[data-sonner-toast] .cn-toast.toast-info {
|
|
34
|
+
border-left-width: 3px !important;
|
|
35
|
+
border-left-color: var(--info-500) !important;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
[data-sonner-toast] .cn-toast.toast-loading {
|
|
39
|
+
border-left-width: 3px !important;
|
|
40
|
+
border-left-color: var(--primary-500) !important;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.cn-toast .toast-icon-success { color: var(--success); }
|
|
44
|
+
.cn-toast .toast-icon-error { color: var(--destructive); }
|
|
45
|
+
.cn-toast .toast-icon-warning { color: var(--warning); }
|
|
46
|
+
.cn-toast .toast-icon-info { color: var(--info); }
|
|
47
|
+
.cn-toast .toast-icon-loading { color: var(--primary); }
|
|
48
|
+
`,document.head.appendChild(t)}const g=({...t})=>{const{theme:o="system"}=y();return d.useEffect(()=>{z()},[]),c.jsx(j.Toaster,{theme:o,className:"toaster group",icons:{success:c.jsx(i.HugeiconsIcon,{icon:l.CheckmarkCircle02Icon,strokeWidth:2,className:"size-4 text-success toast-icon-success"}),info:c.jsx(i.HugeiconsIcon,{icon:l.InformationCircleIcon,strokeWidth:2,className:"size-4 text-info toast-icon-info"}),warning:c.jsx(i.HugeiconsIcon,{icon:l.Alert02Icon,strokeWidth:2,className:"size-4 text-warning toast-icon-warning"}),error:c.jsx(i.HugeiconsIcon,{icon:l.MultiplicationSignCircleIcon,strokeWidth:2,className:"size-4 text-destructive toast-icon-error"}),loading:c.jsx(i.HugeiconsIcon,{icon:l.Loading03Icon,strokeWidth:2,className:"size-4 text-primary toast-icon-loading animate-spin"})},style:{"--normal-bg":"var(--foreground)","--normal-text":"var(--background)","--normal-border":"color-mix(in oklch, var(--background) 25%, transparent)","--border-radius":"9999px","--success-bg":"var(--success)","--success-text":"var(--success-foreground)","--success-border":"var(--success-400)","--error-bg":"var(--destructive)","--error-text":"var(--destructive-foreground)","--error-border":"var(--danger-400)","--warning-bg":"var(--warning)","--warning-text":"var(--warning-foreground)","--warning-border":"var(--warning-400)","--info-bg":"var(--info)","--info-text":"var(--info-foreground)","--info-border":"var(--info-400)"},toastOptions:{classNames:{toast:"cn-toast",success:"toast-success",error:"toast-error",warning:"toast-warning",info:"toast-info",loading:"toast-loading"}},...t})};g.displayName="Toaster";const H=g,_=g;exports.EnhancedSonner=_;exports.EnhancedToaster=H;exports.Toaster=g;exports.z=y;
|
package/dist/sonner.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./sonner-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./sonner-nE9hIalJ.cjs");exports.CoreToaster=e.Toaster;exports.EnhancedSonner=e.EnhancedSonner;exports.EnhancedToaster=e.EnhancedToaster;exports.Toaster=e.Toaster;
|
package/dist/sonner.es.js
CHANGED
package/dist/styles.css
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
* - Light and dark mode support
|
|
13
13
|
* - Base layer styles
|
|
14
14
|
* - Utility animations
|
|
15
|
+
* - Hit-area @utility blocks (inlined from src/styles/hit-area.css)
|
|
15
16
|
* - @source inline() directives for zero-config Tailwind utility generation
|
|
16
17
|
*
|
|
17
18
|
* Generated by: npm run build:lib
|
|
@@ -36,13 +37,13 @@
|
|
|
36
37
|
@source inline("border border-primary border-secondary border-destructive border-success border-warning border-info border-border border-input border-ring rounded-md rounded-lg rounded-full");
|
|
37
38
|
|
|
38
39
|
/* Background color utilities */
|
|
39
|
-
@source inline("bg-primary bg-secondary bg-destructive bg-success bg-warning bg-info bg-background bg-accent bg-transparent bg-none bg-muted bg-input bg-input/20 dark:bg-input/30");
|
|
40
|
+
@source inline("bg-primary bg-secondary bg-destructive bg-success bg-warning bg-info bg-background bg-accent bg-transparent bg-none bg-muted bg-input bg-input/20 dark:bg-input/30 mid:bg-input/30");
|
|
40
41
|
|
|
41
42
|
/* Text color utilities */
|
|
42
43
|
@source inline("text-primary-foreground text-secondary-foreground text-destructive-foreground text-success-foreground text-warning-foreground text-info-foreground text-accent-foreground text-muted-foreground text-foreground");
|
|
43
44
|
|
|
44
45
|
/* Hover state utilities */
|
|
45
|
-
@source inline("hover:opacity-100 hover:bg-primary/90 hover:bg-secondary/90 hover:bg-destructive/90 hover:bg-success/90 hover:bg-warning/90 hover:bg-info/90 hover:bg-accent hover:bg-muted hover:border-primary/90 hover:border-secondary/90 hover:border-destructive/90 hover:border-success/90 hover:border-warning/90 hover:border-info/90 hover:border-border hover:text-accent-foreground hover:text-muted-foreground hover:underline dark:hover:bg-muted/50");
|
|
46
|
+
@source inline("hover:opacity-100 hover:bg-primary/90 hover:bg-secondary/90 hover:bg-destructive/90 hover:bg-success/90 hover:bg-warning/90 hover:bg-info/90 hover:bg-accent hover:bg-muted hover:border-primary/90 hover:border-secondary/90 hover:border-destructive/90 hover:border-success/90 hover:border-warning/90 hover:border-info/90 hover:border-border hover:text-accent-foreground hover:text-muted-foreground hover:underline dark:hover:bg-muted/50 mid:hover:bg-muted/50");
|
|
46
47
|
|
|
47
48
|
/* Focus state utilities */
|
|
48
49
|
@source inline("focus:bg-primary/80 focus:bg-secondary/80 focus:bg-destructive/80 focus:bg-success/80 focus:bg-warning/80 focus:bg-info/80 focus:border-primary/80 focus:border-secondary/80 focus:border-destructive/80 focus:border-success/80 focus:border-warning/80 focus:border-info/80 focus:border-border focus:outline-0 focus-visible:outline-0 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]");
|
|
@@ -63,14 +64,154 @@
|
|
|
63
64
|
@source inline("[&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 [&>svg]:size-2.5");
|
|
64
65
|
|
|
65
66
|
/* Group & State utilities */
|
|
66
|
-
@source inline("group/badge has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive");
|
|
67
|
+
@source inline("group/badge has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 mid:aria-invalid:ring-destructive/40 aria-invalid:border-destructive");
|
|
67
68
|
|
|
68
69
|
/* Z-index elevation utilities */
|
|
69
70
|
@source inline("z-[var(--z-debug)] z-[var(--z-sticky-page)] z-[var(--z-background)] z-[var(--z-content)] z-[var(--z-popover)] z-[var(--z-modal-backdrop)] z-[var(--z-modal)] z-[var(--z-tooltip)] z-[var(--z-sticky-content)] z-[var(--z-floating)]");
|
|
70
71
|
|
|
72
|
+
/* Hit-area utilities (referenced from TSX / docs; @utility defines behavior) */
|
|
73
|
+
@source inline("hit-area-4 hit-area-6 hit-area-debug");
|
|
74
|
+
|
|
71
75
|
|
|
72
76
|
|
|
73
77
|
/* Custom dark mode variant - matches when .dark class is on element or ancestor */
|
|
78
|
+
/* Mid theme (warm paper) — matches when .mid class is on element or ancestor; palette from mind-canvas */
|
|
79
|
+
/* Hit-area — https://bazza.dev/craft/2026/hit-area */
|
|
80
|
+
/* Bazza hit-area utilities — https://bazza.dev/craft/2026/hit-area */
|
|
81
|
+
|
|
82
|
+
@utility hit-area-debug {
|
|
83
|
+
position: relative;
|
|
84
|
+
&::before {
|
|
85
|
+
content: "";
|
|
86
|
+
position: absolute;
|
|
87
|
+
top: var(--hit-area-t, 0px);
|
|
88
|
+
right: var(--hit-area-r, 0px);
|
|
89
|
+
bottom: var(--hit-area-b, 0px);
|
|
90
|
+
left: var(--hit-area-l, 0px);
|
|
91
|
+
pointer-events: inherit;
|
|
92
|
+
@apply border border-dashed border-blue-500 bg-blue-500/10;
|
|
93
|
+
}
|
|
94
|
+
&:hover::before {
|
|
95
|
+
@apply border border-dashed border-green-500 bg-green-500/10;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
@utility hit-area {
|
|
100
|
+
position: relative;
|
|
101
|
+
&::before {
|
|
102
|
+
content: "";
|
|
103
|
+
position: absolute;
|
|
104
|
+
top: var(--hit-area-t, 0px);
|
|
105
|
+
right: var(--hit-area-r, 0px);
|
|
106
|
+
bottom: var(--hit-area-b, 0px);
|
|
107
|
+
left: var(--hit-area-l, 0px);
|
|
108
|
+
pointer-events: inherit;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
@utility hit-area-* {
|
|
113
|
+
position: relative;
|
|
114
|
+
--hit-area-t: --spacing(--value(number) * -1); --hit-area-t: calc(--value([*]) * -1);
|
|
115
|
+
--hit-area-b: --spacing(--value(number) * -1); --hit-area-b: calc(--value([*]) * -1);
|
|
116
|
+
--hit-area-l: --spacing(--value(number) * -1); --hit-area-l: calc(--value([*]) * -1);
|
|
117
|
+
--hit-area-r: --spacing(--value(number) * -1); --hit-area-r: calc(--value([*]) * -1);
|
|
118
|
+
&::before {
|
|
119
|
+
content: "";
|
|
120
|
+
position: absolute;
|
|
121
|
+
top: var(--hit-area-t, 0px);
|
|
122
|
+
right: var(--hit-area-r, 0px);
|
|
123
|
+
bottom: var(--hit-area-b, 0px);
|
|
124
|
+
left: var(--hit-area-l, 0px);
|
|
125
|
+
pointer-events: inherit;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
@utility hit-area-l-* {
|
|
130
|
+
position: relative;
|
|
131
|
+
--hit-area-l: --spacing(--value(number) * -1); --hit-area-l: calc(--value([*]) * -1);
|
|
132
|
+
&::before {
|
|
133
|
+
content: "";
|
|
134
|
+
position: absolute;
|
|
135
|
+
top: var(--hit-area-t, 0px);
|
|
136
|
+
right: var(--hit-area-r, 0px);
|
|
137
|
+
bottom: var(--hit-area-b, 0px);
|
|
138
|
+
left: var(--hit-area-l, 0px);
|
|
139
|
+
pointer-events: inherit;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
@utility hit-area-r-* {
|
|
144
|
+
position: relative;
|
|
145
|
+
--hit-area-r: --spacing(--value(number) * -1); --hit-area-r: calc(--value([*]) * -1);
|
|
146
|
+
&::before {
|
|
147
|
+
content: "";
|
|
148
|
+
position: absolute;
|
|
149
|
+
top: var(--hit-area-t, 0px);
|
|
150
|
+
right: var(--hit-area-r, 0px);
|
|
151
|
+
bottom: var(--hit-area-b, 0px);
|
|
152
|
+
left: var(--hit-area-l, 0px);
|
|
153
|
+
pointer-events: inherit;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
@utility hit-area-t-* {
|
|
158
|
+
position: relative;
|
|
159
|
+
--hit-area-t: --spacing(--value(number) * -1); --hit-area-t: calc(--value([*]) * -1);
|
|
160
|
+
&::before {
|
|
161
|
+
content: "";
|
|
162
|
+
position: absolute;
|
|
163
|
+
top: var(--hit-area-t, 0px);
|
|
164
|
+
right: var(--hit-area-r, 0px);
|
|
165
|
+
bottom: var(--hit-area-b, 0px);
|
|
166
|
+
left: var(--hit-area-l, 0px);
|
|
167
|
+
pointer-events: inherit;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
@utility hit-area-b-* {
|
|
172
|
+
position: relative;
|
|
173
|
+
--hit-area-b: --spacing(--value(number) * -1); --hit-area-b: calc(--value([*]) * -1);
|
|
174
|
+
&::before {
|
|
175
|
+
content: "";
|
|
176
|
+
position: absolute;
|
|
177
|
+
top: var(--hit-area-t, 0px);
|
|
178
|
+
right: var(--hit-area-r, 0px);
|
|
179
|
+
bottom: var(--hit-area-b, 0px);
|
|
180
|
+
left: var(--hit-area-l, 0px);
|
|
181
|
+
pointer-events: inherit;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
@utility hit-area-x-* {
|
|
186
|
+
position: relative;
|
|
187
|
+
--hit-area-l: --spacing(--value(number) * -1); --hit-area-l: calc(--value([*]) * -1);
|
|
188
|
+
--hit-area-r: --spacing(--value(number) * -1); --hit-area-r: calc(--value([*]) * -1);
|
|
189
|
+
&::before {
|
|
190
|
+
content: "";
|
|
191
|
+
position: absolute;
|
|
192
|
+
top: var(--hit-area-t, 0px);
|
|
193
|
+
right: var(--hit-area-r, 0px);
|
|
194
|
+
bottom: var(--hit-area-b, 0px);
|
|
195
|
+
left: var(--hit-area-l, 0px);
|
|
196
|
+
pointer-events: inherit;
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
@utility hit-area-y-* {
|
|
201
|
+
position: relative;
|
|
202
|
+
--hit-area-t: --spacing(--value(number) * -1); --hit-area-t: calc(--value([*]) * -1);
|
|
203
|
+
--hit-area-b: --spacing(--value(number) * -1); --hit-area-b: calc(--value([*]) * -1);
|
|
204
|
+
&::before {
|
|
205
|
+
content: "";
|
|
206
|
+
position: absolute;
|
|
207
|
+
top: var(--hit-area-t, 0px);
|
|
208
|
+
right: var(--hit-area-r, 0px);
|
|
209
|
+
bottom: var(--hit-area-b, 0px);
|
|
210
|
+
left: var(--hit-area-l, 0px);
|
|
211
|
+
pointer-events: inherit;
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
|
|
74
215
|
@theme inline {
|
|
75
216
|
--font-sans: 'Inter Variable', sans-serif;
|
|
76
217
|
--color-sidebar-ring: var(--sidebar-ring);
|
|
@@ -455,6 +596,48 @@
|
|
|
455
596
|
}
|
|
456
597
|
}
|
|
457
598
|
|
|
599
|
+
/* Spinner — dual arc (Uiverse-style), primary gradient */
|
|
600
|
+
@keyframes nqui-spinner-rotate {
|
|
601
|
+
from {
|
|
602
|
+
transform: rotate(0deg);
|
|
603
|
+
}
|
|
604
|
+
to {
|
|
605
|
+
transform: rotate(360deg);
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
|
|
609
|
+
@keyframes nqui-spinner-dash-first {
|
|
610
|
+
0%,
|
|
611
|
+
100% {
|
|
612
|
+
stroke-dashoffset: 50;
|
|
613
|
+
}
|
|
614
|
+
50% {
|
|
615
|
+
stroke-dashoffset: 625;
|
|
616
|
+
}
|
|
617
|
+
}
|
|
618
|
+
|
|
619
|
+
@keyframes nqui-spinner-dash-second {
|
|
620
|
+
0%,
|
|
621
|
+
100% {
|
|
622
|
+
stroke-dashoffset: -625;
|
|
623
|
+
}
|
|
624
|
+
50% {
|
|
625
|
+
stroke-dashoffset: -50;
|
|
626
|
+
}
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
.nqui-spinner-rotate {
|
|
630
|
+
animation: nqui-spinner-rotate 2s linear infinite;
|
|
631
|
+
}
|
|
632
|
+
|
|
633
|
+
.nqui-spinner-arc-first circle {
|
|
634
|
+
animation: nqui-spinner-dash-first 3s ease-in-out infinite;
|
|
635
|
+
}
|
|
636
|
+
|
|
637
|
+
.nqui-spinner-arc-second circle {
|
|
638
|
+
animation: nqui-spinner-dash-second 3s ease-in-out infinite;
|
|
639
|
+
}
|
|
640
|
+
|
|
458
641
|
/* Toast Icon Animations */
|
|
459
642
|
.toast-icon-success {
|
|
460
643
|
animation: toast-checkmark 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
|
|
@@ -541,6 +724,7 @@
|
|
|
541
724
|
position: absolute;
|
|
542
725
|
z-index: 0;
|
|
543
726
|
pointer-events: none;
|
|
727
|
+
overflow: visible;
|
|
544
728
|
transition:
|
|
545
729
|
left 0.3s ease-in-out,
|
|
546
730
|
top 0.3s ease-in-out,
|
|
@@ -550,6 +734,8 @@
|
|
|
550
734
|
|
|
551
735
|
.sliding-indicator-container {
|
|
552
736
|
position: relative;
|
|
737
|
+
overflow: hidden;
|
|
738
|
+
min-width: 0;
|
|
553
739
|
}
|
|
554
740
|
|
|
555
741
|
.sliding-indicator-target {
|
|
@@ -838,13 +1024,13 @@
|
|
|
838
1024
|
/* System UI colors (unique to index.css) */
|
|
839
1025
|
--background: oklch(1 0 0);
|
|
840
1026
|
--foreground: oklch(0.145 0 0);
|
|
841
|
-
--card: oklch(0.
|
|
1027
|
+
--card: oklch(0.98 0 0);
|
|
842
1028
|
--card-foreground: oklch(0.145 0 0);
|
|
843
1029
|
--popover: oklch(1 0 0);
|
|
844
1030
|
--popover-foreground: oklch(0.145 0 0);
|
|
845
1031
|
--secondary: oklch(0.967 0.001 286.375);
|
|
846
1032
|
--secondary-foreground: oklch(0.21 0.006 285.885);
|
|
847
|
-
--muted: oklch(0.
|
|
1033
|
+
--muted: oklch(0.95 0 0);
|
|
848
1034
|
--muted-foreground: oklch(0.556 0 0);
|
|
849
1035
|
--accent: oklch(0.96 0 0);
|
|
850
1036
|
--accent-foreground: oklch(0.205 0 0);
|
|
@@ -862,7 +1048,7 @@
|
|
|
862
1048
|
--radius: 0.45rem;
|
|
863
1049
|
|
|
864
1050
|
/* Sidebar */
|
|
865
|
-
--sidebar: oklch(0.
|
|
1051
|
+
--sidebar: oklch(0.98 0 0);
|
|
866
1052
|
--sidebar-foreground: oklch(0.145 0 0);
|
|
867
1053
|
--sidebar-primary: var(--primary);
|
|
868
1054
|
--sidebar-primary-foreground: var(--primary-foreground);
|
|
@@ -948,7 +1134,7 @@
|
|
|
948
1134
|
/* Additional variables from index.css */
|
|
949
1135
|
/* System UI colors for dark mode (unique to index.css)
|
|
950
1136
|
Softened foreground (oklch 0.92 ≈ #e6e6e6) for reduced eye strain vs near-pure white */
|
|
951
|
-
--background: oklch(0.
|
|
1137
|
+
--background: oklch(0.16 0 0);
|
|
952
1138
|
--foreground: oklch(0.92 0 0);
|
|
953
1139
|
--card: oklch(0.205 0 0);
|
|
954
1140
|
--card-foreground: oklch(0.92 0 0);
|
|
@@ -956,12 +1142,12 @@
|
|
|
956
1142
|
--popover-foreground: oklch(0.92 0 0);
|
|
957
1143
|
--secondary: oklch(0.274 0.006 286.033);
|
|
958
1144
|
--secondary-foreground: oklch(0.92 0 0);
|
|
959
|
-
--muted: oklch(0.
|
|
1145
|
+
--muted: oklch(0.24 0 0);
|
|
960
1146
|
--muted-foreground: oklch(0.708 0 0);
|
|
961
|
-
--accent: oklch(0.
|
|
1147
|
+
--accent: oklch(0.27 0 0);
|
|
962
1148
|
--accent-foreground: oklch(0.92 0 0);
|
|
963
1149
|
--border: oklch(1 0 0 / 10%);
|
|
964
|
-
--input: oklch(1 0 0 /
|
|
1150
|
+
--input: oklch(1 0 0 / 0.07);
|
|
965
1151
|
|
|
966
1152
|
/* Chart colors (same for both modes) */
|
|
967
1153
|
--chart-1: oklch(0.809 0.105 251.813);
|
|
@@ -980,3 +1166,44 @@
|
|
|
980
1166
|
--sidebar-border: oklch(1 0 0 / 10%);
|
|
981
1167
|
--sidebar-ring: oklch(0.556 0 0);
|
|
982
1168
|
}
|
|
1169
|
+
|
|
1170
|
+
/*
|
|
1171
|
+
* Mid theme — light-mode layout (same token roles as :root), with warm paper chroma
|
|
1172
|
+
* (mind-canvas–inspired oklch). Use class="mid" on <html> or an ancestor; do not
|
|
1173
|
+
* combine with .dark on the same root. Destructive/success/warning/info come from
|
|
1174
|
+
* colors.css like default light.
|
|
1175
|
+
*/
|
|
1176
|
+
.mid {
|
|
1177
|
+
/* Surfaces: parallel to :root — slightly lower L and mild hue vs neutral light */
|
|
1178
|
+
--background: oklch(0.9574 0.0081 73.16);
|
|
1179
|
+
--foreground: oklch(0.2416 0.0219 57);
|
|
1180
|
+
--card: oklch(0.9792 0.0042 78.3);
|
|
1181
|
+
--card-foreground: oklch(0.2416 0.0219 57);
|
|
1182
|
+
--popover: oklch(0.9792 0.0042 78.3);
|
|
1183
|
+
--popover-foreground: oklch(0.2416 0.0219 57);
|
|
1184
|
+
--secondary: oklch(0.927 0.009 73.15);
|
|
1185
|
+
--secondary-foreground: oklch(0.3067 0.0309 56.81);
|
|
1186
|
+
--muted: oklch(0.9111 0.0082 73.15);
|
|
1187
|
+
--muted-foreground: oklch(0.5576 0.0222 57.81);
|
|
1188
|
+
--accent: oklch(0.4789 0.0623 56.16);
|
|
1189
|
+
--accent-foreground: oklch(0.9792 0.0042 78.3);
|
|
1190
|
+
--border: oklch(0.89 0.0137 73.1);
|
|
1191
|
+
--input: oklch(0.89 0.0137 73.1);
|
|
1192
|
+
|
|
1193
|
+
/* Charts: same as light (:root) */
|
|
1194
|
+
--chart-1: oklch(0.809 0.105 251.813);
|
|
1195
|
+
--chart-2: oklch(0.623 0.214 259.815);
|
|
1196
|
+
--chart-3: oklch(0.546 0.245 262.881);
|
|
1197
|
+
--chart-4: oklch(0.488 0.243 264.376);
|
|
1198
|
+
--chart-5: oklch(0.424 0.199 265.638);
|
|
1199
|
+
|
|
1200
|
+
/* Sidebar: same structure as :root (light) — primary via semantic tokens, ring follows focus */
|
|
1201
|
+
--sidebar: oklch(0.985 0.002 78);
|
|
1202
|
+
--sidebar-foreground: oklch(0.2416 0.0219 57);
|
|
1203
|
+
--sidebar-primary: var(--primary);
|
|
1204
|
+
--sidebar-primary-foreground: var(--primary-foreground);
|
|
1205
|
+
--sidebar-accent: oklch(0.96 0.004 75);
|
|
1206
|
+
--sidebar-accent-foreground: oklch(0.205 0.015 55);
|
|
1207
|
+
--sidebar-border: oklch(0.89 0.0137 73.1);
|
|
1208
|
+
--sidebar-ring: var(--ring);
|
|
1209
|
+
}
|