adminium 1.0.0 → 1.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.
- package/dist/index.cjs +404 -1015
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +32 -1
- package/dist/index.d.ts +32 -1
- package/dist/index.js +382 -1012
- package/dist/index.js.map +1 -1
- package/dist/styles/global.css +2820 -0
- package/dist/styles/global.d.cts +2 -0
- package/dist/styles/global.d.ts +2 -0
- package/package.json +12 -22
- package/src/styles/global.css +0 -20
package/dist/index.js
CHANGED
|
@@ -1,508 +1,16 @@
|
|
|
1
1
|
import { clsx } from 'clsx';
|
|
2
2
|
import { twMerge } from 'tailwind-merge';
|
|
3
3
|
import { cva } from 'class-variance-authority';
|
|
4
|
-
import * as
|
|
5
|
-
import { jsx, jsxs
|
|
6
|
-
import 'react-
|
|
4
|
+
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
5
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
6
|
+
import * as SlotPrimitive from '@radix-ui/react-slot';
|
|
7
7
|
import { ChevronDown, Check, Minus } from 'lucide-react';
|
|
8
|
+
import * as React from 'react';
|
|
9
|
+
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
8
10
|
|
|
9
|
-
var __create = Object.create;
|
|
10
|
-
var __defProp = Object.defineProperty;
|
|
11
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
12
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
14
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
15
|
-
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
16
|
-
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
17
|
-
}) : x)(function(x) {
|
|
18
|
-
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
19
|
-
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
20
|
-
});
|
|
21
|
-
var __commonJS = (cb, mod) => function __require2() {
|
|
22
|
-
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
23
|
-
};
|
|
24
|
-
var __copyProps = (to, from, except, desc) => {
|
|
25
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
26
|
-
for (let key of __getOwnPropNames(from))
|
|
27
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
28
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
29
|
-
}
|
|
30
|
-
return to;
|
|
31
|
-
};
|
|
32
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
33
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
34
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
35
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
36
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
37
|
-
__defProp(target, "default", { value: mod, enumerable: true }) ,
|
|
38
|
-
mod
|
|
39
|
-
));
|
|
40
|
-
|
|
41
|
-
// node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js
|
|
42
|
-
var require_use_sync_external_store_shim_production = __commonJS({
|
|
43
|
-
"node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js"(exports$1) {
|
|
44
|
-
var React16 = __require("react");
|
|
45
|
-
function is(x, y) {
|
|
46
|
-
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
47
|
-
}
|
|
48
|
-
var objectIs = "function" === typeof Object.is ? Object.is : is;
|
|
49
|
-
var useState9 = React16.useState;
|
|
50
|
-
var useEffect9 = React16.useEffect;
|
|
51
|
-
var useLayoutEffect3 = React16.useLayoutEffect;
|
|
52
|
-
var useDebugValue = React16.useDebugValue;
|
|
53
|
-
function useSyncExternalStore$2(subscribe2, getSnapshot) {
|
|
54
|
-
var value = getSnapshot(), _useState = useState9({ inst: { value, getSnapshot } }), inst = _useState[0].inst, forceUpdate = _useState[1];
|
|
55
|
-
useLayoutEffect3(
|
|
56
|
-
function() {
|
|
57
|
-
inst.value = value;
|
|
58
|
-
inst.getSnapshot = getSnapshot;
|
|
59
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
60
|
-
},
|
|
61
|
-
[subscribe2, value, getSnapshot]
|
|
62
|
-
);
|
|
63
|
-
useEffect9(
|
|
64
|
-
function() {
|
|
65
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
66
|
-
return subscribe2(function() {
|
|
67
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
68
|
-
});
|
|
69
|
-
},
|
|
70
|
-
[subscribe2]
|
|
71
|
-
);
|
|
72
|
-
useDebugValue(value);
|
|
73
|
-
return value;
|
|
74
|
-
}
|
|
75
|
-
function checkIfSnapshotChanged(inst) {
|
|
76
|
-
var latestGetSnapshot = inst.getSnapshot;
|
|
77
|
-
inst = inst.value;
|
|
78
|
-
try {
|
|
79
|
-
var nextValue = latestGetSnapshot();
|
|
80
|
-
return !objectIs(inst, nextValue);
|
|
81
|
-
} catch (error) {
|
|
82
|
-
return true;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
function useSyncExternalStore$1(subscribe2, getSnapshot) {
|
|
86
|
-
return getSnapshot();
|
|
87
|
-
}
|
|
88
|
-
var shim = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1 : useSyncExternalStore$2;
|
|
89
|
-
exports$1.useSyncExternalStore = void 0 !== React16.useSyncExternalStore ? React16.useSyncExternalStore : shim;
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
|
|
93
|
-
// node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js
|
|
94
|
-
var require_use_sync_external_store_shim_development = __commonJS({
|
|
95
|
-
"node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js"(exports$1) {
|
|
96
|
-
"production" !== process.env.NODE_ENV && (function() {
|
|
97
|
-
function is(x, y) {
|
|
98
|
-
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
99
|
-
}
|
|
100
|
-
function useSyncExternalStore$2(subscribe2, getSnapshot) {
|
|
101
|
-
didWarnOld18Alpha || void 0 === React16.startTransition || (didWarnOld18Alpha = true, console.error(
|
|
102
|
-
"You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."
|
|
103
|
-
));
|
|
104
|
-
var value = getSnapshot();
|
|
105
|
-
if (!didWarnUncachedGetSnapshot) {
|
|
106
|
-
var cachedValue = getSnapshot();
|
|
107
|
-
objectIs(value, cachedValue) || (console.error(
|
|
108
|
-
"The result of getSnapshot should be cached to avoid an infinite loop"
|
|
109
|
-
), didWarnUncachedGetSnapshot = true);
|
|
110
|
-
}
|
|
111
|
-
cachedValue = useState9({
|
|
112
|
-
inst: { value, getSnapshot }
|
|
113
|
-
});
|
|
114
|
-
var inst = cachedValue[0].inst, forceUpdate = cachedValue[1];
|
|
115
|
-
useLayoutEffect3(
|
|
116
|
-
function() {
|
|
117
|
-
inst.value = value;
|
|
118
|
-
inst.getSnapshot = getSnapshot;
|
|
119
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
120
|
-
},
|
|
121
|
-
[subscribe2, value, getSnapshot]
|
|
122
|
-
);
|
|
123
|
-
useEffect9(
|
|
124
|
-
function() {
|
|
125
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
126
|
-
return subscribe2(function() {
|
|
127
|
-
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
128
|
-
});
|
|
129
|
-
},
|
|
130
|
-
[subscribe2]
|
|
131
|
-
);
|
|
132
|
-
useDebugValue(value);
|
|
133
|
-
return value;
|
|
134
|
-
}
|
|
135
|
-
function checkIfSnapshotChanged(inst) {
|
|
136
|
-
var latestGetSnapshot = inst.getSnapshot;
|
|
137
|
-
inst = inst.value;
|
|
138
|
-
try {
|
|
139
|
-
var nextValue = latestGetSnapshot();
|
|
140
|
-
return !objectIs(inst, nextValue);
|
|
141
|
-
} catch (error) {
|
|
142
|
-
return true;
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
function useSyncExternalStore$1(subscribe2, getSnapshot) {
|
|
146
|
-
return getSnapshot();
|
|
147
|
-
}
|
|
148
|
-
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
|
|
149
|
-
var React16 = __require("react"), objectIs = "function" === typeof Object.is ? Object.is : is, useState9 = React16.useState, useEffect9 = React16.useEffect, useLayoutEffect3 = React16.useLayoutEffect, useDebugValue = React16.useDebugValue, didWarnOld18Alpha = false, didWarnUncachedGetSnapshot = false, shim = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1 : useSyncExternalStore$2;
|
|
150
|
-
exports$1.useSyncExternalStore = void 0 !== React16.useSyncExternalStore ? React16.useSyncExternalStore : shim;
|
|
151
|
-
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
|
|
152
|
-
})();
|
|
153
|
-
}
|
|
154
|
-
});
|
|
155
|
-
|
|
156
|
-
// node_modules/use-sync-external-store/shim/index.js
|
|
157
|
-
var require_shim = __commonJS({
|
|
158
|
-
"node_modules/use-sync-external-store/shim/index.js"(exports$1, module) {
|
|
159
|
-
if (process.env.NODE_ENV === "production") {
|
|
160
|
-
module.exports = require_use_sync_external_store_shim_production();
|
|
161
|
-
} else {
|
|
162
|
-
module.exports = require_use_sync_external_store_shim_development();
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
});
|
|
166
11
|
function cn(...inputs) {
|
|
167
12
|
return twMerge(clsx(inputs));
|
|
168
13
|
}
|
|
169
|
-
function createContextScope(scopeName, createContextScopeDeps = []) {
|
|
170
|
-
let defaultContexts = [];
|
|
171
|
-
function createContext3(rootComponentName, defaultContext) {
|
|
172
|
-
const BaseContext = React5.createContext(defaultContext);
|
|
173
|
-
const index = defaultContexts.length;
|
|
174
|
-
defaultContexts = [...defaultContexts, defaultContext];
|
|
175
|
-
const Provider = (props) => {
|
|
176
|
-
const { scope, children, ...context } = props;
|
|
177
|
-
const Context = scope?.[scopeName]?.[index] || BaseContext;
|
|
178
|
-
const value = React5.useMemo(() => context, Object.values(context));
|
|
179
|
-
return /* @__PURE__ */ jsx(Context.Provider, { value, children });
|
|
180
|
-
};
|
|
181
|
-
Provider.displayName = rootComponentName + "Provider";
|
|
182
|
-
function useContext2(consumerName, scope) {
|
|
183
|
-
const Context = scope?.[scopeName]?.[index] || BaseContext;
|
|
184
|
-
const context = React5.useContext(Context);
|
|
185
|
-
if (context) return context;
|
|
186
|
-
if (defaultContext !== void 0) return defaultContext;
|
|
187
|
-
throw new Error(`\`${consumerName}\` must be used within \`${rootComponentName}\``);
|
|
188
|
-
}
|
|
189
|
-
return [Provider, useContext2];
|
|
190
|
-
}
|
|
191
|
-
const createScope = () => {
|
|
192
|
-
const scopeContexts = defaultContexts.map((defaultContext) => {
|
|
193
|
-
return React5.createContext(defaultContext);
|
|
194
|
-
});
|
|
195
|
-
return function useScope(scope) {
|
|
196
|
-
const contexts = scope?.[scopeName] || scopeContexts;
|
|
197
|
-
return React5.useMemo(
|
|
198
|
-
() => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),
|
|
199
|
-
[scope, contexts]
|
|
200
|
-
);
|
|
201
|
-
};
|
|
202
|
-
};
|
|
203
|
-
createScope.scopeName = scopeName;
|
|
204
|
-
return [createContext3, composeContextScopes(createScope, ...createContextScopeDeps)];
|
|
205
|
-
}
|
|
206
|
-
function composeContextScopes(...scopes) {
|
|
207
|
-
const baseScope = scopes[0];
|
|
208
|
-
if (scopes.length === 1) return baseScope;
|
|
209
|
-
const createScope = () => {
|
|
210
|
-
const scopeHooks = scopes.map((createScope2) => ({
|
|
211
|
-
useScope: createScope2(),
|
|
212
|
-
scopeName: createScope2.scopeName
|
|
213
|
-
}));
|
|
214
|
-
return function useComposedScopes(overrideScopes) {
|
|
215
|
-
const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {
|
|
216
|
-
const scopeProps = useScope(overrideScopes);
|
|
217
|
-
const currentScope = scopeProps[`__scope${scopeName}`];
|
|
218
|
-
return { ...nextScopes2, ...currentScope };
|
|
219
|
-
}, {});
|
|
220
|
-
return React5.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);
|
|
221
|
-
};
|
|
222
|
-
};
|
|
223
|
-
createScope.scopeName = baseScope.scopeName;
|
|
224
|
-
return createScope;
|
|
225
|
-
}
|
|
226
|
-
function useCallbackRef(callback) {
|
|
227
|
-
const callbackRef = React5.useRef(callback);
|
|
228
|
-
React5.useEffect(() => {
|
|
229
|
-
callbackRef.current = callback;
|
|
230
|
-
});
|
|
231
|
-
return React5.useMemo(() => (...args) => callbackRef.current?.(...args), []);
|
|
232
|
-
}
|
|
233
|
-
var useLayoutEffect2 = globalThis?.document ? React5.useLayoutEffect : () => {
|
|
234
|
-
};
|
|
235
|
-
function setRef(ref, value) {
|
|
236
|
-
if (typeof ref === "function") {
|
|
237
|
-
return ref(value);
|
|
238
|
-
} else if (ref !== null && ref !== void 0) {
|
|
239
|
-
ref.current = value;
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
function composeRefs(...refs) {
|
|
243
|
-
return (node) => {
|
|
244
|
-
let hasCleanup = false;
|
|
245
|
-
const cleanups = refs.map((ref) => {
|
|
246
|
-
const cleanup = setRef(ref, node);
|
|
247
|
-
if (!hasCleanup && typeof cleanup == "function") {
|
|
248
|
-
hasCleanup = true;
|
|
249
|
-
}
|
|
250
|
-
return cleanup;
|
|
251
|
-
});
|
|
252
|
-
if (hasCleanup) {
|
|
253
|
-
return () => {
|
|
254
|
-
for (let i = 0; i < cleanups.length; i++) {
|
|
255
|
-
const cleanup = cleanups[i];
|
|
256
|
-
if (typeof cleanup == "function") {
|
|
257
|
-
cleanup();
|
|
258
|
-
} else {
|
|
259
|
-
setRef(refs[i], null);
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
};
|
|
263
|
-
}
|
|
264
|
-
};
|
|
265
|
-
}
|
|
266
|
-
function useComposedRefs(...refs) {
|
|
267
|
-
return React5.useCallback(composeRefs(...refs), refs);
|
|
268
|
-
}
|
|
269
|
-
// @__NO_SIDE_EFFECTS__
|
|
270
|
-
function createSlot(ownerName) {
|
|
271
|
-
const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);
|
|
272
|
-
const Slot2 = React5.forwardRef((props, forwardedRef) => {
|
|
273
|
-
const { children, ...slotProps } = props;
|
|
274
|
-
const childrenArray = React5.Children.toArray(children);
|
|
275
|
-
const slottable = childrenArray.find(isSlottable);
|
|
276
|
-
if (slottable) {
|
|
277
|
-
const newElement = slottable.props.children;
|
|
278
|
-
const newChildren = childrenArray.map((child) => {
|
|
279
|
-
if (child === slottable) {
|
|
280
|
-
if (React5.Children.count(newElement) > 1) return React5.Children.only(null);
|
|
281
|
-
return React5.isValidElement(newElement) ? newElement.props.children : null;
|
|
282
|
-
} else {
|
|
283
|
-
return child;
|
|
284
|
-
}
|
|
285
|
-
});
|
|
286
|
-
return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React5.isValidElement(newElement) ? React5.cloneElement(newElement, void 0, newChildren) : null });
|
|
287
|
-
}
|
|
288
|
-
return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });
|
|
289
|
-
});
|
|
290
|
-
Slot2.displayName = `${ownerName}.Slot`;
|
|
291
|
-
return Slot2;
|
|
292
|
-
}
|
|
293
|
-
var Slot = /* @__PURE__ */ createSlot("Slot");
|
|
294
|
-
// @__NO_SIDE_EFFECTS__
|
|
295
|
-
function createSlotClone(ownerName) {
|
|
296
|
-
const SlotClone = React5.forwardRef((props, forwardedRef) => {
|
|
297
|
-
const { children, ...slotProps } = props;
|
|
298
|
-
if (React5.isValidElement(children)) {
|
|
299
|
-
const childrenRef = getElementRef(children);
|
|
300
|
-
const props2 = mergeProps(slotProps, children.props);
|
|
301
|
-
if (children.type !== React5.Fragment) {
|
|
302
|
-
props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;
|
|
303
|
-
}
|
|
304
|
-
return React5.cloneElement(children, props2);
|
|
305
|
-
}
|
|
306
|
-
return React5.Children.count(children) > 1 ? React5.Children.only(null) : null;
|
|
307
|
-
});
|
|
308
|
-
SlotClone.displayName = `${ownerName}.SlotClone`;
|
|
309
|
-
return SlotClone;
|
|
310
|
-
}
|
|
311
|
-
var SLOTTABLE_IDENTIFIER = /* @__PURE__ */ Symbol("radix.slottable");
|
|
312
|
-
function isSlottable(child) {
|
|
313
|
-
return React5.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;
|
|
314
|
-
}
|
|
315
|
-
function mergeProps(slotProps, childProps) {
|
|
316
|
-
const overrideProps = { ...childProps };
|
|
317
|
-
for (const propName in childProps) {
|
|
318
|
-
const slotPropValue = slotProps[propName];
|
|
319
|
-
const childPropValue = childProps[propName];
|
|
320
|
-
const isHandler = /^on[A-Z]/.test(propName);
|
|
321
|
-
if (isHandler) {
|
|
322
|
-
if (slotPropValue && childPropValue) {
|
|
323
|
-
overrideProps[propName] = (...args) => {
|
|
324
|
-
const result = childPropValue(...args);
|
|
325
|
-
slotPropValue(...args);
|
|
326
|
-
return result;
|
|
327
|
-
};
|
|
328
|
-
} else if (slotPropValue) {
|
|
329
|
-
overrideProps[propName] = slotPropValue;
|
|
330
|
-
}
|
|
331
|
-
} else if (propName === "style") {
|
|
332
|
-
overrideProps[propName] = { ...slotPropValue, ...childPropValue };
|
|
333
|
-
} else if (propName === "className") {
|
|
334
|
-
overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(" ");
|
|
335
|
-
}
|
|
336
|
-
}
|
|
337
|
-
return { ...slotProps, ...overrideProps };
|
|
338
|
-
}
|
|
339
|
-
function getElementRef(element) {
|
|
340
|
-
let getter = Object.getOwnPropertyDescriptor(element.props, "ref")?.get;
|
|
341
|
-
let mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
|
|
342
|
-
if (mayWarn) {
|
|
343
|
-
return element.ref;
|
|
344
|
-
}
|
|
345
|
-
getter = Object.getOwnPropertyDescriptor(element, "ref")?.get;
|
|
346
|
-
mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
|
|
347
|
-
if (mayWarn) {
|
|
348
|
-
return element.props.ref;
|
|
349
|
-
}
|
|
350
|
-
return element.props.ref || element.ref;
|
|
351
|
-
}
|
|
352
|
-
var NODES = [
|
|
353
|
-
"a",
|
|
354
|
-
"button",
|
|
355
|
-
"div",
|
|
356
|
-
"form",
|
|
357
|
-
"h2",
|
|
358
|
-
"h3",
|
|
359
|
-
"img",
|
|
360
|
-
"input",
|
|
361
|
-
"label",
|
|
362
|
-
"li",
|
|
363
|
-
"nav",
|
|
364
|
-
"ol",
|
|
365
|
-
"p",
|
|
366
|
-
"select",
|
|
367
|
-
"span",
|
|
368
|
-
"svg",
|
|
369
|
-
"ul"
|
|
370
|
-
];
|
|
371
|
-
var Primitive = NODES.reduce((primitive, node) => {
|
|
372
|
-
const Slot2 = createSlot(`Primitive.${node}`);
|
|
373
|
-
const Node = React5.forwardRef((props, forwardedRef) => {
|
|
374
|
-
const { asChild, ...primitiveProps } = props;
|
|
375
|
-
const Comp = asChild ? Slot2 : node;
|
|
376
|
-
if (typeof window !== "undefined") {
|
|
377
|
-
window[/* @__PURE__ */ Symbol.for("radix-ui")] = true;
|
|
378
|
-
}
|
|
379
|
-
return /* @__PURE__ */ jsx(Comp, { ...primitiveProps, ref: forwardedRef });
|
|
380
|
-
});
|
|
381
|
-
Node.displayName = `Primitive.${node}`;
|
|
382
|
-
return { ...primitive, [node]: Node };
|
|
383
|
-
}, {});
|
|
384
|
-
|
|
385
|
-
// node_modules/@radix-ui/react-use-is-hydrated/dist/index.mjs
|
|
386
|
-
var import_shim = __toESM(require_shim());
|
|
387
|
-
function useIsHydrated() {
|
|
388
|
-
return (0, import_shim.useSyncExternalStore)(
|
|
389
|
-
subscribe,
|
|
390
|
-
() => true,
|
|
391
|
-
() => false
|
|
392
|
-
);
|
|
393
|
-
}
|
|
394
|
-
function subscribe() {
|
|
395
|
-
return () => {
|
|
396
|
-
};
|
|
397
|
-
}
|
|
398
|
-
var AVATAR_NAME = "Avatar";
|
|
399
|
-
var [createAvatarContext] = createContextScope(AVATAR_NAME);
|
|
400
|
-
var [AvatarProvider, useAvatarContext] = createAvatarContext(AVATAR_NAME);
|
|
401
|
-
var Avatar = React5.forwardRef(
|
|
402
|
-
(props, forwardedRef) => {
|
|
403
|
-
const { __scopeAvatar, ...avatarProps } = props;
|
|
404
|
-
const [imageLoadingStatus, setImageLoadingStatus] = React5.useState("idle");
|
|
405
|
-
return /* @__PURE__ */ jsx(
|
|
406
|
-
AvatarProvider,
|
|
407
|
-
{
|
|
408
|
-
scope: __scopeAvatar,
|
|
409
|
-
imageLoadingStatus,
|
|
410
|
-
onImageLoadingStatusChange: setImageLoadingStatus,
|
|
411
|
-
children: /* @__PURE__ */ jsx(Primitive.span, { ...avatarProps, ref: forwardedRef })
|
|
412
|
-
}
|
|
413
|
-
);
|
|
414
|
-
}
|
|
415
|
-
);
|
|
416
|
-
Avatar.displayName = AVATAR_NAME;
|
|
417
|
-
var IMAGE_NAME = "AvatarImage";
|
|
418
|
-
var AvatarImage = React5.forwardRef(
|
|
419
|
-
(props, forwardedRef) => {
|
|
420
|
-
const { __scopeAvatar, src, onLoadingStatusChange = () => {
|
|
421
|
-
}, ...imageProps } = props;
|
|
422
|
-
const context = useAvatarContext(IMAGE_NAME, __scopeAvatar);
|
|
423
|
-
const imageLoadingStatus = useImageLoadingStatus(src, imageProps);
|
|
424
|
-
const handleLoadingStatusChange = useCallbackRef((status) => {
|
|
425
|
-
onLoadingStatusChange(status);
|
|
426
|
-
context.onImageLoadingStatusChange(status);
|
|
427
|
-
});
|
|
428
|
-
useLayoutEffect2(() => {
|
|
429
|
-
if (imageLoadingStatus !== "idle") {
|
|
430
|
-
handleLoadingStatusChange(imageLoadingStatus);
|
|
431
|
-
}
|
|
432
|
-
}, [imageLoadingStatus, handleLoadingStatusChange]);
|
|
433
|
-
return imageLoadingStatus === "loaded" ? /* @__PURE__ */ jsx(Primitive.img, { ...imageProps, ref: forwardedRef, src }) : null;
|
|
434
|
-
}
|
|
435
|
-
);
|
|
436
|
-
AvatarImage.displayName = IMAGE_NAME;
|
|
437
|
-
var FALLBACK_NAME = "AvatarFallback";
|
|
438
|
-
var AvatarFallback = React5.forwardRef(
|
|
439
|
-
(props, forwardedRef) => {
|
|
440
|
-
const { __scopeAvatar, delayMs, ...fallbackProps } = props;
|
|
441
|
-
const context = useAvatarContext(FALLBACK_NAME, __scopeAvatar);
|
|
442
|
-
const [canRender, setCanRender] = React5.useState(delayMs === void 0);
|
|
443
|
-
React5.useEffect(() => {
|
|
444
|
-
if (delayMs !== void 0) {
|
|
445
|
-
const timerId = window.setTimeout(() => setCanRender(true), delayMs);
|
|
446
|
-
return () => window.clearTimeout(timerId);
|
|
447
|
-
}
|
|
448
|
-
}, [delayMs]);
|
|
449
|
-
return canRender && context.imageLoadingStatus !== "loaded" ? /* @__PURE__ */ jsx(Primitive.span, { ...fallbackProps, ref: forwardedRef }) : null;
|
|
450
|
-
}
|
|
451
|
-
);
|
|
452
|
-
AvatarFallback.displayName = FALLBACK_NAME;
|
|
453
|
-
function resolveLoadingStatus(image, src) {
|
|
454
|
-
if (!image) {
|
|
455
|
-
return "idle";
|
|
456
|
-
}
|
|
457
|
-
if (!src) {
|
|
458
|
-
return "error";
|
|
459
|
-
}
|
|
460
|
-
if (image.src !== src) {
|
|
461
|
-
image.src = src;
|
|
462
|
-
}
|
|
463
|
-
return image.complete && image.naturalWidth > 0 ? "loaded" : "loading";
|
|
464
|
-
}
|
|
465
|
-
function useImageLoadingStatus(src, { referrerPolicy, crossOrigin }) {
|
|
466
|
-
const isHydrated = useIsHydrated();
|
|
467
|
-
const imageRef = React5.useRef(null);
|
|
468
|
-
const image = (() => {
|
|
469
|
-
if (!isHydrated) return null;
|
|
470
|
-
if (!imageRef.current) {
|
|
471
|
-
imageRef.current = new window.Image();
|
|
472
|
-
}
|
|
473
|
-
return imageRef.current;
|
|
474
|
-
})();
|
|
475
|
-
const [loadingStatus, setLoadingStatus] = React5.useState(
|
|
476
|
-
() => resolveLoadingStatus(image, src)
|
|
477
|
-
);
|
|
478
|
-
useLayoutEffect2(() => {
|
|
479
|
-
setLoadingStatus(resolveLoadingStatus(image, src));
|
|
480
|
-
}, [image, src]);
|
|
481
|
-
useLayoutEffect2(() => {
|
|
482
|
-
const updateStatus = (status) => () => {
|
|
483
|
-
setLoadingStatus(status);
|
|
484
|
-
};
|
|
485
|
-
if (!image) return;
|
|
486
|
-
const handleLoad = updateStatus("loaded");
|
|
487
|
-
const handleError = updateStatus("error");
|
|
488
|
-
image.addEventListener("load", handleLoad);
|
|
489
|
-
image.addEventListener("error", handleError);
|
|
490
|
-
if (referrerPolicy) {
|
|
491
|
-
image.referrerPolicy = referrerPolicy;
|
|
492
|
-
}
|
|
493
|
-
if (typeof crossOrigin === "string") {
|
|
494
|
-
image.crossOrigin = crossOrigin;
|
|
495
|
-
}
|
|
496
|
-
return () => {
|
|
497
|
-
image.removeEventListener("load", handleLoad);
|
|
498
|
-
image.removeEventListener("error", handleError);
|
|
499
|
-
};
|
|
500
|
-
}, [image, crossOrigin, referrerPolicy]);
|
|
501
|
-
return loadingStatus;
|
|
502
|
-
}
|
|
503
|
-
var Root = Avatar;
|
|
504
|
-
var Image = AvatarImage;
|
|
505
|
-
var Fallback = AvatarFallback;
|
|
506
14
|
var avatarStatusVariants = cva(
|
|
507
15
|
"flex items-center rounded-full size-2 border-2 border-background",
|
|
508
16
|
{
|
|
@@ -519,12 +27,12 @@ var avatarStatusVariants = cva(
|
|
|
519
27
|
}
|
|
520
28
|
}
|
|
521
29
|
);
|
|
522
|
-
function
|
|
30
|
+
function Avatar({
|
|
523
31
|
className,
|
|
524
32
|
...props
|
|
525
33
|
}) {
|
|
526
34
|
return /* @__PURE__ */ jsx(
|
|
527
|
-
Root,
|
|
35
|
+
AvatarPrimitive.Root,
|
|
528
36
|
{
|
|
529
37
|
"data-slot": "avatar",
|
|
530
38
|
className: cn("relative flex shrink-0 size-10", className),
|
|
@@ -532,12 +40,12 @@ function Avatar2({
|
|
|
532
40
|
}
|
|
533
41
|
);
|
|
534
42
|
}
|
|
535
|
-
function
|
|
43
|
+
function AvatarImage({
|
|
536
44
|
className,
|
|
537
45
|
...props
|
|
538
46
|
}) {
|
|
539
47
|
return /* @__PURE__ */ jsx("div", { className: cn("relative overflow-hidden rounded-full", className), children: /* @__PURE__ */ jsx(
|
|
540
|
-
Image,
|
|
48
|
+
AvatarPrimitive.Image,
|
|
541
49
|
{
|
|
542
50
|
"data-slot": "avatar-image",
|
|
543
51
|
className: cn("aspect-square h-full w-full"),
|
|
@@ -545,12 +53,12 @@ function AvatarImage2({
|
|
|
545
53
|
}
|
|
546
54
|
) });
|
|
547
55
|
}
|
|
548
|
-
function
|
|
56
|
+
function AvatarFallback({
|
|
549
57
|
className,
|
|
550
58
|
...props
|
|
551
59
|
}) {
|
|
552
60
|
return /* @__PURE__ */ jsx(
|
|
553
|
-
Fallback,
|
|
61
|
+
AvatarPrimitive.Fallback,
|
|
554
62
|
{
|
|
555
63
|
"data-slot": "avatar-fallback",
|
|
556
64
|
className: cn(
|
|
@@ -748,7 +256,7 @@ function Badge({
|
|
|
748
256
|
disabled,
|
|
749
257
|
...props
|
|
750
258
|
}) {
|
|
751
|
-
const Comp = asChild ? Slot : "span";
|
|
259
|
+
const Comp = asChild ? SlotPrimitive.Slot : "span";
|
|
752
260
|
return /* @__PURE__ */ jsx(
|
|
753
261
|
Comp,
|
|
754
262
|
{
|
|
@@ -767,7 +275,7 @@ function BadgeButton({
|
|
|
767
275
|
asChild = false,
|
|
768
276
|
...props
|
|
769
277
|
}) {
|
|
770
|
-
const Comp = asChild ? Slot : "span";
|
|
278
|
+
const Comp = asChild ? SlotPrimitive.Slot : "span";
|
|
771
279
|
return /* @__PURE__ */ jsx(
|
|
772
280
|
Comp,
|
|
773
281
|
{
|
|
@@ -822,7 +330,7 @@ var buttonVariants = cva(
|
|
|
822
330
|
},
|
|
823
331
|
size: {
|
|
824
332
|
lg: "h-10 rounded-md px-4 text-sm gap-1.5 [&_svg:not([class*=size-])]:size-4",
|
|
825
|
-
md: "h-8.5 rounded-md px-3 gap-1.5 text-[0.8125rem] leading-(--text-sm--line-height) [&_svg:not([class*=size-])]:size-4",
|
|
333
|
+
md: "h-8.5 rounded-md px-3 gap-1.5 text-[0.8125rem] leading-[var(--text-sm--line-height)] [&_svg:not([class*=size-])]:size-4",
|
|
826
334
|
sm: "h-7 rounded-md px-2.5 gap-1.25 text-xs [&_svg:not([class*=size-])]:size-3.5",
|
|
827
335
|
icon: "size-8.5 rounded-md [&_svg:not([class*=size-])]:size-4 shrink-0"
|
|
828
336
|
},
|
|
@@ -1139,7 +647,7 @@ function Button({
|
|
|
1139
647
|
placeholder = false,
|
|
1140
648
|
...props
|
|
1141
649
|
}) {
|
|
1142
|
-
const Comp = asChild ? Slot : "button";
|
|
650
|
+
const Comp = asChild ? SlotPrimitive.Slot : "button";
|
|
1143
651
|
return /* @__PURE__ */ jsx(
|
|
1144
652
|
Comp,
|
|
1145
653
|
{
|
|
@@ -1178,500 +686,199 @@ function ButtonArrow({
|
|
|
1178
686
|
}
|
|
1179
687
|
);
|
|
1180
688
|
}
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
}
|
|
1189
|
-
var
|
|
1190
|
-
|
|
1191
|
-
prop,
|
|
1192
|
-
defaultProp,
|
|
1193
|
-
onChange = () => {
|
|
1194
|
-
},
|
|
1195
|
-
caller
|
|
1196
|
-
}) {
|
|
1197
|
-
const [uncontrolledProp, setUncontrolledProp, onChangeRef] = useUncontrolledState({
|
|
1198
|
-
defaultProp,
|
|
1199
|
-
onChange
|
|
1200
|
-
});
|
|
1201
|
-
const isControlled = prop !== void 0;
|
|
1202
|
-
const value = isControlled ? prop : uncontrolledProp;
|
|
689
|
+
var CardContext = React.createContext({
|
|
690
|
+
variant: "default"
|
|
691
|
+
// Default value
|
|
692
|
+
});
|
|
693
|
+
var useCardContext = () => {
|
|
694
|
+
const context = React.useContext(CardContext);
|
|
695
|
+
return context;
|
|
696
|
+
};
|
|
697
|
+
var cardVariants = cva(
|
|
698
|
+
"flex flex-col items-stretch text-card-foreground rounded-xl",
|
|
1203
699
|
{
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
const from = wasControlled ? "controlled" : "uncontrolled";
|
|
1209
|
-
const to = isControlled ? "controlled" : "uncontrolled";
|
|
1210
|
-
console.warn(
|
|
1211
|
-
`${caller} is changing from ${from} to ${to}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`
|
|
1212
|
-
);
|
|
700
|
+
variants: {
|
|
701
|
+
variant: {
|
|
702
|
+
default: "bg-card border border-border shadow-xs shadow-black/5",
|
|
703
|
+
accent: "bg-muted shadow-xs p-1"
|
|
1213
704
|
}
|
|
1214
|
-
|
|
1215
|
-
|
|
705
|
+
},
|
|
706
|
+
defaultVariants: {
|
|
707
|
+
variant: "default"
|
|
708
|
+
}
|
|
1216
709
|
}
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
setUncontrolledProp(nextValue);
|
|
710
|
+
);
|
|
711
|
+
var cardHeaderVariants = cva(
|
|
712
|
+
"flex items-center justify-between flex-wrap px-5 min-h-14 gap-2.5",
|
|
713
|
+
{
|
|
714
|
+
variants: {
|
|
715
|
+
variant: {
|
|
716
|
+
default: "border-b border-border",
|
|
717
|
+
accent: ""
|
|
1226
718
|
}
|
|
1227
719
|
},
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
return [value, setValue];
|
|
1231
|
-
}
|
|
1232
|
-
function useUncontrolledState({
|
|
1233
|
-
defaultProp,
|
|
1234
|
-
onChange
|
|
1235
|
-
}) {
|
|
1236
|
-
const [value, setValue] = React5.useState(defaultProp);
|
|
1237
|
-
const prevValueRef = React5.useRef(value);
|
|
1238
|
-
const onChangeRef = React5.useRef(onChange);
|
|
1239
|
-
useInsertionEffect(() => {
|
|
1240
|
-
onChangeRef.current = onChange;
|
|
1241
|
-
}, [onChange]);
|
|
1242
|
-
React5.useEffect(() => {
|
|
1243
|
-
if (prevValueRef.current !== value) {
|
|
1244
|
-
onChangeRef.current?.(value);
|
|
1245
|
-
prevValueRef.current = value;
|
|
720
|
+
defaultVariants: {
|
|
721
|
+
variant: "default"
|
|
1246
722
|
}
|
|
1247
|
-
}
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
const ref = React5.useRef({ value, previous: value });
|
|
1255
|
-
return React5.useMemo(() => {
|
|
1256
|
-
if (ref.current.value !== value) {
|
|
1257
|
-
ref.current.previous = ref.current.value;
|
|
1258
|
-
ref.current.value = value;
|
|
723
|
+
}
|
|
724
|
+
);
|
|
725
|
+
var cardContentVariants = cva("grow p-5", {
|
|
726
|
+
variants: {
|
|
727
|
+
variant: {
|
|
728
|
+
default: "",
|
|
729
|
+
accent: "bg-card rounded-t-xl [&:last-child]:rounded-b-xl"
|
|
1259
730
|
}
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
return;
|
|
1271
|
-
}
|
|
1272
|
-
if (!entries.length) {
|
|
1273
|
-
return;
|
|
1274
|
-
}
|
|
1275
|
-
const entry = entries[0];
|
|
1276
|
-
let width;
|
|
1277
|
-
let height;
|
|
1278
|
-
if ("borderBoxSize" in entry) {
|
|
1279
|
-
const borderSizeEntry = entry["borderBoxSize"];
|
|
1280
|
-
const borderSize = Array.isArray(borderSizeEntry) ? borderSizeEntry[0] : borderSizeEntry;
|
|
1281
|
-
width = borderSize["inlineSize"];
|
|
1282
|
-
height = borderSize["blockSize"];
|
|
1283
|
-
} else {
|
|
1284
|
-
width = element.offsetWidth;
|
|
1285
|
-
height = element.offsetHeight;
|
|
1286
|
-
}
|
|
1287
|
-
setSize({ width, height });
|
|
1288
|
-
});
|
|
1289
|
-
resizeObserver.observe(element, { box: "border-box" });
|
|
1290
|
-
return () => resizeObserver.unobserve(element);
|
|
1291
|
-
} else {
|
|
1292
|
-
setSize(void 0);
|
|
731
|
+
},
|
|
732
|
+
defaultVariants: {
|
|
733
|
+
variant: "default"
|
|
734
|
+
}
|
|
735
|
+
});
|
|
736
|
+
var cardTableVariants = cva("grid grow", {
|
|
737
|
+
variants: {
|
|
738
|
+
variant: {
|
|
739
|
+
default: "",
|
|
740
|
+
accent: "bg-card rounded-xl"
|
|
1293
741
|
}
|
|
1294
|
-
},
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
const { present, children } = props;
|
|
1305
|
-
const presence = usePresence(present);
|
|
1306
|
-
const child = typeof children === "function" ? children({ present: presence.isPresent }) : React5.Children.only(children);
|
|
1307
|
-
const ref = useComposedRefs(presence.ref, getElementRef2(child));
|
|
1308
|
-
const forceMount = typeof children === "function";
|
|
1309
|
-
return forceMount || presence.isPresent ? React5.cloneElement(child, { ref }) : null;
|
|
1310
|
-
};
|
|
1311
|
-
Presence.displayName = "Presence";
|
|
1312
|
-
function usePresence(present) {
|
|
1313
|
-
const [node, setNode] = React5.useState();
|
|
1314
|
-
const stylesRef = React5.useRef(null);
|
|
1315
|
-
const prevPresentRef = React5.useRef(present);
|
|
1316
|
-
const prevAnimationNameRef = React5.useRef("none");
|
|
1317
|
-
const initialState = present ? "mounted" : "unmounted";
|
|
1318
|
-
const [state, send] = useStateMachine(initialState, {
|
|
1319
|
-
mounted: {
|
|
1320
|
-
UNMOUNT: "unmounted",
|
|
1321
|
-
ANIMATION_OUT: "unmountSuspended"
|
|
1322
|
-
},
|
|
1323
|
-
unmountSuspended: {
|
|
1324
|
-
MOUNT: "mounted",
|
|
1325
|
-
ANIMATION_END: "unmounted"
|
|
1326
|
-
},
|
|
1327
|
-
unmounted: {
|
|
1328
|
-
MOUNT: "mounted"
|
|
742
|
+
},
|
|
743
|
+
defaultVariants: {
|
|
744
|
+
variant: "default"
|
|
745
|
+
}
|
|
746
|
+
});
|
|
747
|
+
var cardFooterVariants = cva("flex items-center px-5 min-h-14", {
|
|
748
|
+
variants: {
|
|
749
|
+
variant: {
|
|
750
|
+
default: "border-t border-border",
|
|
751
|
+
accent: "bg-card rounded-b-xl mt-[2px]"
|
|
1329
752
|
}
|
|
1330
|
-
}
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
} else {
|
|
1347
|
-
const isAnimating = prevAnimationName !== currentAnimationName;
|
|
1348
|
-
if (wasPresent && isAnimating) {
|
|
1349
|
-
send("ANIMATION_OUT");
|
|
1350
|
-
} else {
|
|
1351
|
-
send("UNMOUNT");
|
|
1352
|
-
}
|
|
1353
|
-
}
|
|
1354
|
-
prevPresentRef.current = present;
|
|
753
|
+
},
|
|
754
|
+
defaultVariants: {
|
|
755
|
+
variant: "default"
|
|
756
|
+
}
|
|
757
|
+
});
|
|
758
|
+
function Card({
|
|
759
|
+
className,
|
|
760
|
+
variant = "default",
|
|
761
|
+
...props
|
|
762
|
+
}) {
|
|
763
|
+
return /* @__PURE__ */ jsx(CardContext.Provider, { value: { variant: variant || "default" }, children: /* @__PURE__ */ jsx(
|
|
764
|
+
"div",
|
|
765
|
+
{
|
|
766
|
+
"data-slot": "card",
|
|
767
|
+
className: cn(cardVariants({ variant }), className),
|
|
768
|
+
...props
|
|
1355
769
|
}
|
|
1356
|
-
}
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
timeoutId = ownerWindow.setTimeout(() => {
|
|
1370
|
-
if (node.style.animationFillMode === "forwards") {
|
|
1371
|
-
node.style.animationFillMode = currentFillMode;
|
|
1372
|
-
}
|
|
1373
|
-
});
|
|
1374
|
-
}
|
|
1375
|
-
}
|
|
1376
|
-
};
|
|
1377
|
-
const handleAnimationStart = (event) => {
|
|
1378
|
-
if (event.target === node) {
|
|
1379
|
-
prevAnimationNameRef.current = getAnimationName(stylesRef.current);
|
|
1380
|
-
}
|
|
1381
|
-
};
|
|
1382
|
-
node.addEventListener("animationstart", handleAnimationStart);
|
|
1383
|
-
node.addEventListener("animationcancel", handleAnimationEnd);
|
|
1384
|
-
node.addEventListener("animationend", handleAnimationEnd);
|
|
1385
|
-
return () => {
|
|
1386
|
-
ownerWindow.clearTimeout(timeoutId);
|
|
1387
|
-
node.removeEventListener("animationstart", handleAnimationStart);
|
|
1388
|
-
node.removeEventListener("animationcancel", handleAnimationEnd);
|
|
1389
|
-
node.removeEventListener("animationend", handleAnimationEnd);
|
|
1390
|
-
};
|
|
1391
|
-
} else {
|
|
1392
|
-
send("ANIMATION_END");
|
|
770
|
+
) });
|
|
771
|
+
}
|
|
772
|
+
function CardHeader({
|
|
773
|
+
className,
|
|
774
|
+
...props
|
|
775
|
+
}) {
|
|
776
|
+
const { variant } = useCardContext();
|
|
777
|
+
return /* @__PURE__ */ jsx(
|
|
778
|
+
"div",
|
|
779
|
+
{
|
|
780
|
+
"data-slot": "card-header",
|
|
781
|
+
className: cn(cardHeaderVariants({ variant }), className),
|
|
782
|
+
...props
|
|
1393
783
|
}
|
|
1394
|
-
|
|
1395
|
-
return {
|
|
1396
|
-
isPresent: ["mounted", "unmountSuspended"].includes(state),
|
|
1397
|
-
ref: React5.useCallback((node2) => {
|
|
1398
|
-
stylesRef.current = node2 ? getComputedStyle(node2) : null;
|
|
1399
|
-
setNode(node2);
|
|
1400
|
-
}, [])
|
|
1401
|
-
};
|
|
784
|
+
);
|
|
1402
785
|
}
|
|
1403
|
-
function
|
|
1404
|
-
|
|
786
|
+
function CardContent({
|
|
787
|
+
className,
|
|
788
|
+
...props
|
|
789
|
+
}) {
|
|
790
|
+
const { variant } = useCardContext();
|
|
791
|
+
return /* @__PURE__ */ jsx(
|
|
792
|
+
"div",
|
|
793
|
+
{
|
|
794
|
+
"data-slot": "card-content",
|
|
795
|
+
className: cn(cardContentVariants({ variant }), className),
|
|
796
|
+
...props
|
|
797
|
+
}
|
|
798
|
+
);
|
|
1405
799
|
}
|
|
1406
|
-
function
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
|
|
800
|
+
function CardTable({
|
|
801
|
+
className,
|
|
802
|
+
...props
|
|
803
|
+
}) {
|
|
804
|
+
const { variant } = useCardContext();
|
|
805
|
+
return /* @__PURE__ */ jsx(
|
|
806
|
+
"div",
|
|
807
|
+
{
|
|
808
|
+
"data-slot": "card-table",
|
|
809
|
+
className: cn(cardTableVariants({ variant }), className),
|
|
810
|
+
...props
|
|
811
|
+
}
|
|
812
|
+
);
|
|
1418
813
|
}
|
|
1419
|
-
|
|
1420
|
-
|
|
1421
|
-
|
|
1422
|
-
|
|
1423
|
-
const {
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
|
|
1429
|
-
|
|
1430
|
-
|
|
1431
|
-
onCheckedChange,
|
|
1432
|
-
required,
|
|
1433
|
-
value = "on",
|
|
1434
|
-
// @ts-expect-error
|
|
1435
|
-
internal_do_not_use_render
|
|
1436
|
-
} = props;
|
|
1437
|
-
const [checked, setChecked] = useControllableState({
|
|
1438
|
-
prop: checkedProp,
|
|
1439
|
-
defaultProp: defaultChecked ?? false,
|
|
1440
|
-
onChange: onCheckedChange,
|
|
1441
|
-
caller: CHECKBOX_NAME
|
|
1442
|
-
});
|
|
1443
|
-
const [control, setControl] = React5.useState(null);
|
|
1444
|
-
const [bubbleInput, setBubbleInput] = React5.useState(null);
|
|
1445
|
-
const hasConsumerStoppedPropagationRef = React5.useRef(false);
|
|
1446
|
-
const isFormControl = control ? !!form || !!control.closest("form") : (
|
|
1447
|
-
// We set this to true by default so that events bubble to forms without JS (SSR)
|
|
1448
|
-
true
|
|
814
|
+
function CardFooter({
|
|
815
|
+
className,
|
|
816
|
+
...props
|
|
817
|
+
}) {
|
|
818
|
+
const { variant } = useCardContext();
|
|
819
|
+
return /* @__PURE__ */ jsx(
|
|
820
|
+
"div",
|
|
821
|
+
{
|
|
822
|
+
"data-slot": "card-footer",
|
|
823
|
+
className: cn(cardFooterVariants({ variant }), className),
|
|
824
|
+
...props
|
|
825
|
+
}
|
|
1449
826
|
);
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
setControl,
|
|
1456
|
-
name,
|
|
1457
|
-
form,
|
|
1458
|
-
value,
|
|
1459
|
-
hasConsumerStoppedPropagationRef,
|
|
1460
|
-
required,
|
|
1461
|
-
defaultChecked: isIndeterminate(defaultChecked) ? false : defaultChecked,
|
|
1462
|
-
isFormControl,
|
|
1463
|
-
bubbleInput,
|
|
1464
|
-
setBubbleInput
|
|
1465
|
-
};
|
|
827
|
+
}
|
|
828
|
+
function CardHeading({
|
|
829
|
+
className,
|
|
830
|
+
...props
|
|
831
|
+
}) {
|
|
1466
832
|
return /* @__PURE__ */ jsx(
|
|
1467
|
-
|
|
833
|
+
"div",
|
|
1468
834
|
{
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
835
|
+
"data-slot": "card-heading",
|
|
836
|
+
className: cn("space-y-1", className),
|
|
837
|
+
...props
|
|
1472
838
|
}
|
|
1473
839
|
);
|
|
1474
840
|
}
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
isFormControl,
|
|
1488
|
-
bubbleInput
|
|
1489
|
-
} = useCheckboxContext(TRIGGER_NAME, __scopeCheckbox);
|
|
1490
|
-
const composedRefs = useComposedRefs(forwardedRef, setControl);
|
|
1491
|
-
const initialCheckedStateRef = React5.useRef(checked);
|
|
1492
|
-
React5.useEffect(() => {
|
|
1493
|
-
const form = control?.form;
|
|
1494
|
-
if (form) {
|
|
1495
|
-
const reset = () => setChecked(initialCheckedStateRef.current);
|
|
1496
|
-
form.addEventListener("reset", reset);
|
|
1497
|
-
return () => form.removeEventListener("reset", reset);
|
|
1498
|
-
}
|
|
1499
|
-
}, [control, setChecked]);
|
|
1500
|
-
return /* @__PURE__ */ jsx(
|
|
1501
|
-
Primitive.button,
|
|
1502
|
-
{
|
|
1503
|
-
type: "button",
|
|
1504
|
-
role: "checkbox",
|
|
1505
|
-
"aria-checked": isIndeterminate(checked) ? "mixed" : checked,
|
|
1506
|
-
"aria-required": required,
|
|
1507
|
-
"data-state": getState(checked),
|
|
1508
|
-
"data-disabled": disabled ? "" : void 0,
|
|
1509
|
-
disabled,
|
|
1510
|
-
value,
|
|
1511
|
-
...checkboxProps,
|
|
1512
|
-
ref: composedRefs,
|
|
1513
|
-
onKeyDown: composeEventHandlers(onKeyDown, (event) => {
|
|
1514
|
-
if (event.key === "Enter") event.preventDefault();
|
|
1515
|
-
}),
|
|
1516
|
-
onClick: composeEventHandlers(onClick, (event) => {
|
|
1517
|
-
setChecked((prevChecked) => isIndeterminate(prevChecked) ? true : !prevChecked);
|
|
1518
|
-
if (bubbleInput && isFormControl) {
|
|
1519
|
-
hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();
|
|
1520
|
-
if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();
|
|
1521
|
-
}
|
|
1522
|
-
})
|
|
1523
|
-
}
|
|
1524
|
-
);
|
|
1525
|
-
}
|
|
1526
|
-
);
|
|
1527
|
-
CheckboxTrigger.displayName = TRIGGER_NAME;
|
|
1528
|
-
var Checkbox = React5.forwardRef(
|
|
1529
|
-
(props, forwardedRef) => {
|
|
1530
|
-
const {
|
|
1531
|
-
__scopeCheckbox,
|
|
1532
|
-
name,
|
|
1533
|
-
checked,
|
|
1534
|
-
defaultChecked,
|
|
1535
|
-
required,
|
|
1536
|
-
disabled,
|
|
1537
|
-
value,
|
|
1538
|
-
onCheckedChange,
|
|
1539
|
-
form,
|
|
1540
|
-
...checkboxProps
|
|
1541
|
-
} = props;
|
|
1542
|
-
return /* @__PURE__ */ jsx(
|
|
1543
|
-
CheckboxProvider,
|
|
1544
|
-
{
|
|
1545
|
-
__scopeCheckbox,
|
|
1546
|
-
checked,
|
|
1547
|
-
defaultChecked,
|
|
1548
|
-
disabled,
|
|
1549
|
-
required,
|
|
1550
|
-
onCheckedChange,
|
|
1551
|
-
name,
|
|
1552
|
-
form,
|
|
1553
|
-
value,
|
|
1554
|
-
internal_do_not_use_render: ({ isFormControl }) => /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1555
|
-
/* @__PURE__ */ jsx(
|
|
1556
|
-
CheckboxTrigger,
|
|
1557
|
-
{
|
|
1558
|
-
...checkboxProps,
|
|
1559
|
-
ref: forwardedRef,
|
|
1560
|
-
__scopeCheckbox
|
|
1561
|
-
}
|
|
1562
|
-
),
|
|
1563
|
-
isFormControl && /* @__PURE__ */ jsx(
|
|
1564
|
-
CheckboxBubbleInput,
|
|
1565
|
-
{
|
|
1566
|
-
__scopeCheckbox
|
|
1567
|
-
}
|
|
1568
|
-
)
|
|
1569
|
-
] })
|
|
1570
|
-
}
|
|
1571
|
-
);
|
|
1572
|
-
}
|
|
1573
|
-
);
|
|
1574
|
-
Checkbox.displayName = CHECKBOX_NAME;
|
|
1575
|
-
var INDICATOR_NAME = "CheckboxIndicator";
|
|
1576
|
-
var CheckboxIndicator = React5.forwardRef(
|
|
1577
|
-
(props, forwardedRef) => {
|
|
1578
|
-
const { __scopeCheckbox, forceMount, ...indicatorProps } = props;
|
|
1579
|
-
const context = useCheckboxContext(INDICATOR_NAME, __scopeCheckbox);
|
|
1580
|
-
return /* @__PURE__ */ jsx(
|
|
1581
|
-
Presence,
|
|
1582
|
-
{
|
|
1583
|
-
present: forceMount || isIndeterminate(context.checked) || context.checked === true,
|
|
1584
|
-
children: /* @__PURE__ */ jsx(
|
|
1585
|
-
Primitive.span,
|
|
1586
|
-
{
|
|
1587
|
-
"data-state": getState(context.checked),
|
|
1588
|
-
"data-disabled": context.disabled ? "" : void 0,
|
|
1589
|
-
...indicatorProps,
|
|
1590
|
-
ref: forwardedRef,
|
|
1591
|
-
style: { pointerEvents: "none", ...props.style }
|
|
1592
|
-
}
|
|
1593
|
-
)
|
|
1594
|
-
}
|
|
1595
|
-
);
|
|
1596
|
-
}
|
|
1597
|
-
);
|
|
1598
|
-
CheckboxIndicator.displayName = INDICATOR_NAME;
|
|
1599
|
-
var BUBBLE_INPUT_NAME = "CheckboxBubbleInput";
|
|
1600
|
-
var CheckboxBubbleInput = React5.forwardRef(
|
|
1601
|
-
({ __scopeCheckbox, ...props }, forwardedRef) => {
|
|
1602
|
-
const {
|
|
1603
|
-
control,
|
|
1604
|
-
hasConsumerStoppedPropagationRef,
|
|
1605
|
-
checked,
|
|
1606
|
-
defaultChecked,
|
|
1607
|
-
required,
|
|
1608
|
-
disabled,
|
|
1609
|
-
name,
|
|
1610
|
-
value,
|
|
1611
|
-
form,
|
|
1612
|
-
bubbleInput,
|
|
1613
|
-
setBubbleInput
|
|
1614
|
-
} = useCheckboxContext(BUBBLE_INPUT_NAME, __scopeCheckbox);
|
|
1615
|
-
const composedRefs = useComposedRefs(forwardedRef, setBubbleInput);
|
|
1616
|
-
const prevChecked = usePrevious(checked);
|
|
1617
|
-
const controlSize = useSize(control);
|
|
1618
|
-
React5.useEffect(() => {
|
|
1619
|
-
const input = bubbleInput;
|
|
1620
|
-
if (!input) return;
|
|
1621
|
-
const inputProto = window.HTMLInputElement.prototype;
|
|
1622
|
-
const descriptor = Object.getOwnPropertyDescriptor(
|
|
1623
|
-
inputProto,
|
|
1624
|
-
"checked"
|
|
1625
|
-
);
|
|
1626
|
-
const setChecked = descriptor.set;
|
|
1627
|
-
const bubbles = !hasConsumerStoppedPropagationRef.current;
|
|
1628
|
-
if (prevChecked !== checked && setChecked) {
|
|
1629
|
-
const event = new Event("click", { bubbles });
|
|
1630
|
-
input.indeterminate = isIndeterminate(checked);
|
|
1631
|
-
setChecked.call(input, isIndeterminate(checked) ? false : checked);
|
|
1632
|
-
input.dispatchEvent(event);
|
|
1633
|
-
}
|
|
1634
|
-
}, [bubbleInput, prevChecked, checked, hasConsumerStoppedPropagationRef]);
|
|
1635
|
-
const defaultCheckedRef = React5.useRef(isIndeterminate(checked) ? false : checked);
|
|
1636
|
-
return /* @__PURE__ */ jsx(
|
|
1637
|
-
Primitive.input,
|
|
1638
|
-
{
|
|
1639
|
-
type: "checkbox",
|
|
1640
|
-
"aria-hidden": true,
|
|
1641
|
-
defaultChecked: defaultChecked ?? defaultCheckedRef.current,
|
|
1642
|
-
required,
|
|
1643
|
-
disabled,
|
|
1644
|
-
name,
|
|
1645
|
-
value,
|
|
1646
|
-
form,
|
|
1647
|
-
...props,
|
|
1648
|
-
tabIndex: -1,
|
|
1649
|
-
ref: composedRefs,
|
|
1650
|
-
style: {
|
|
1651
|
-
...props.style,
|
|
1652
|
-
...controlSize,
|
|
1653
|
-
position: "absolute",
|
|
1654
|
-
pointerEvents: "none",
|
|
1655
|
-
opacity: 0,
|
|
1656
|
-
margin: 0,
|
|
1657
|
-
// We transform because the input is absolutely positioned but we have
|
|
1658
|
-
// rendered it **after** the button. This pulls it back to sit on top
|
|
1659
|
-
// of the button.
|
|
1660
|
-
transform: "translateX(-100%)"
|
|
1661
|
-
}
|
|
1662
|
-
}
|
|
1663
|
-
);
|
|
1664
|
-
}
|
|
1665
|
-
);
|
|
1666
|
-
CheckboxBubbleInput.displayName = BUBBLE_INPUT_NAME;
|
|
1667
|
-
function isFunction2(value) {
|
|
1668
|
-
return typeof value === "function";
|
|
841
|
+
function CardToolbar({
|
|
842
|
+
className,
|
|
843
|
+
...props
|
|
844
|
+
}) {
|
|
845
|
+
return /* @__PURE__ */ jsx(
|
|
846
|
+
"div",
|
|
847
|
+
{
|
|
848
|
+
"data-slot": "card-toolbar",
|
|
849
|
+
className: cn("flex items-center gap-2.5", className),
|
|
850
|
+
...props
|
|
851
|
+
}
|
|
852
|
+
);
|
|
1669
853
|
}
|
|
1670
|
-
function
|
|
1671
|
-
|
|
854
|
+
function CardTitle({
|
|
855
|
+
className,
|
|
856
|
+
...props
|
|
857
|
+
}) {
|
|
858
|
+
return /* @__PURE__ */ jsx(
|
|
859
|
+
"h3",
|
|
860
|
+
{
|
|
861
|
+
"data-slot": "card-title",
|
|
862
|
+
className: cn(
|
|
863
|
+
"text-base font-semibold leading-none tracking-tight",
|
|
864
|
+
className
|
|
865
|
+
),
|
|
866
|
+
...props
|
|
867
|
+
}
|
|
868
|
+
);
|
|
1672
869
|
}
|
|
1673
|
-
function
|
|
1674
|
-
|
|
870
|
+
function CardDescription({
|
|
871
|
+
className,
|
|
872
|
+
...props
|
|
873
|
+
}) {
|
|
874
|
+
return /* @__PURE__ */ jsx(
|
|
875
|
+
"div",
|
|
876
|
+
{
|
|
877
|
+
"data-slot": "card-description",
|
|
878
|
+
className: cn("text-sm text-muted-foreground", className),
|
|
879
|
+
...props
|
|
880
|
+
}
|
|
881
|
+
);
|
|
1675
882
|
}
|
|
1676
883
|
var checkboxVariants = cva(
|
|
1677
884
|
`
|
|
@@ -1694,19 +901,19 @@ var checkboxVariants = cva(
|
|
|
1694
901
|
}
|
|
1695
902
|
}
|
|
1696
903
|
);
|
|
1697
|
-
function
|
|
904
|
+
function Checkbox({
|
|
1698
905
|
className,
|
|
1699
906
|
size,
|
|
1700
907
|
...props
|
|
1701
908
|
}) {
|
|
1702
909
|
return /* @__PURE__ */ jsx(
|
|
1703
|
-
|
|
910
|
+
CheckboxPrimitive.Root,
|
|
1704
911
|
{
|
|
1705
912
|
"data-slot": "checkbox",
|
|
1706
913
|
className: cn(checkboxVariants({ size }), className),
|
|
1707
914
|
...props,
|
|
1708
915
|
children: /* @__PURE__ */ jsxs(
|
|
1709
|
-
|
|
916
|
+
CheckboxPrimitive.Indicator,
|
|
1710
917
|
{
|
|
1711
918
|
className: cn("flex items-center justify-center text-current"),
|
|
1712
919
|
children: [
|
|
@@ -1966,12 +1173,199 @@ var Icons = {
|
|
|
1966
1173
|
) }),
|
|
1967
1174
|
postgresql: (props) => /* @__PURE__ */ jsx("svg", { fill: "currentColor", viewBox: "0 0 32 32", ...props, children: /* @__PURE__ */ jsx("path", { d: "M22.839 0c-1.245 0.011-2.479 0.188-3.677 0.536l-0.083 0.027c-0.751-0.131-1.516-0.203-2.276-0.219-1.573-0.027-2.923 0.353-4.011 0.989-1.073-0.369-3.297-1.016-5.641-0.885-1.629 0.088-3.411 0.583-4.735 1.979-1.312 1.391-2.009 3.547-1.864 6.485 0.041 0.807 0.271 2.124 0.656 3.837 0.38 1.709 0.917 3.709 1.589 5.537 0.672 1.823 1.405 3.463 2.552 4.577 0.572 0.557 1.364 1.032 2.296 0.991 0.652-0.027 1.24-0.313 1.751-0.735 0.249 0.328 0.516 0.468 0.755 0.599 0.308 0.167 0.599 0.281 0.907 0.355 0.552 0.14 1.495 0.323 2.599 0.135 0.375-0.063 0.771-0.187 1.167-0.359 0.016 0.437 0.032 0.869 0.047 1.307 0.057 1.38 0.095 2.656 0.505 3.776 0.068 0.183 0.251 1.12 0.969 1.953 0.724 0.833 2.129 1.349 3.739 1.005 1.131-0.24 2.573-0.677 3.532-2.041 0.948-1.344 1.375-3.276 1.459-6.412 0.020-0.172 0.047-0.312 0.072-0.448l0.224 0.021h0.027c1.208 0.052 2.521-0.12 3.62-0.631 0.968-0.448 1.703-0.901 2.239-1.708 0.131-0.199 0.281-0.443 0.319-0.86 0.041-0.411-0.199-1.063-0.595-1.364-0.791-0.604-1.291-0.375-1.828-0.26-0.525 0.115-1.063 0.176-1.599 0.192 1.541-2.593 2.645-5.353 3.276-7.792 0.375-1.443 0.584-2.771 0.599-3.932 0.021-1.161-0.077-2.187-0.771-3.077-2.177-2.776-5.235-3.548-7.599-3.573-0.073 0-0.145 0-0.219 0zM22.776 0.855c2.235-0.021 5.093 0.604 7.145 3.228 0.464 0.589 0.6 1.448 0.584 2.511s-0.213 2.328-0.573 3.719c-0.692 2.699-2.011 5.833-3.859 8.652 0.063 0.047 0.135 0.088 0.208 0.115 0.385 0.161 1.265 0.296 3.025-0.063 0.443-0.095 0.767-0.156 1.105 0.099 0.167 0.14 0.255 0.349 0.244 0.568-0.020 0.161-0.077 0.317-0.177 0.448-0.339 0.509-1.009 0.995-1.869 1.396-0.76 0.353-1.855 0.536-2.817 0.547-0.489 0.005-0.937-0.032-1.319-0.152l-0.020-0.004c-0.147 1.411-0.484 4.203-0.704 5.473-0.176 1.025-0.484 1.844-1.072 2.453-0.589 0.615-1.417 0.979-2.537 1.219-1.385 0.297-2.391-0.021-3.041-0.568s-0.948-1.276-1.125-1.719c-0.124-0.307-0.187-0.703-0.249-1.235-0.063-0.531-0.104-1.177-0.136-1.911-0.041-1.12-0.057-2.24-0.041-3.365-0.577 0.532-1.296 0.88-2.068 1.016-0.921 0.156-1.739 0-2.228-0.12-0.24-0.063-0.475-0.151-0.693-0.271-0.229-0.12-0.443-0.255-0.588-0.527-0.084-0.156-0.109-0.337-0.073-0.509 0.041-0.177 0.145-0.328 0.287-0.443 0.265-0.215 0.615-0.333 1.14-0.443 0.959-0.199 1.297-0.333 1.5-0.496 0.172-0.135 0.371-0.416 0.713-0.828 0-0.015 0-0.036-0.005-0.052-0.619-0.020-1.224-0.181-1.771-0.479-0.197 0.208-1.224 1.292-2.468 2.792-0.521 0.624-1.099 0.984-1.713 1.011-0.609 0.025-1.163-0.281-1.631-0.735-0.937-0.912-1.688-2.48-2.339-4.251s-1.177-3.744-1.557-5.421c-0.375-1.683-0.599-3.037-0.631-3.688-0.14-2.776 0.511-4.645 1.625-5.828s2.641-1.625 4.131-1.713c2.672-0.151 5.213 0.781 5.724 0.979 0.989-0.672 2.265-1.088 3.859-1.063 0.756 0.011 1.505 0.109 2.24 0.292l0.027-0.016c0.323-0.109 0.651-0.208 0.984-0.28 0.907-0.215 1.833-0.324 2.76-0.339zM22.979 1.745h-0.197c-0.76 0.009-1.527 0.099-2.271 0.26 1.661 0.735 2.916 1.864 3.801 3 0.615 0.781 1.12 1.64 1.505 2.557 0.152 0.355 0.251 0.651 0.303 0.88 0.031 0.115 0.047 0.213 0.057 0.312 0 0.052 0.005 0.105-0.021 0.193 0 0.005-0.005 0.016-0.005 0.021 0.043 1.167-0.249 1.957-0.287 3.072-0.025 0.808 0.183 1.756 0.235 2.792 0.047 0.973-0.072 2.041-0.703 3.093 0.052 0.063 0.099 0.125 0.151 0.193 1.672-2.636 2.88-5.547 3.521-8.032 0.344-1.339 0.525-2.552 0.541-3.509 0.016-0.959-0.161-1.657-0.391-1.948-1.792-2.287-4.213-2.871-6.24-2.885zM16.588 2.088c-1.572 0.005-2.703 0.48-3.561 1.193-0.887 0.74-1.48 1.745-1.865 2.781-0.464 1.224-0.625 2.411-0.688 3.219l0.021-0.011c0.475-0.265 1.099-0.536 1.771-0.687 0.667-0.157 1.391-0.204 2.041 0.052 0.657 0.249 1.193 0.848 1.391 1.749 0.939 4.344-0.291 5.959-0.744 7.177-0.172 0.443-0.323 0.891-0.443 1.349 0.057-0.011 0.115-0.027 0.172-0.032 0.323-0.025 0.572 0.079 0.719 0.141 0.459 0.192 0.771 0.588 0.943 1.041 0.041 0.12 0.072 0.244 0.093 0.38 0.016 0.052 0.027 0.109 0.027 0.167-0.052 1.661-0.048 3.323 0.015 4.984 0.032 0.719 0.079 1.349 0.136 1.849 0.057 0.495 0.135 0.875 0.188 1.005 0.171 0.427 0.421 0.984 0.875 1.364 0.448 0.381 1.093 0.631 2.276 0.381 1.025-0.224 1.656-0.527 2.077-0.964 0.423-0.443 0.672-1.052 0.833-1.984 0.245-1.401 0.729-5.464 0.787-6.224-0.025-0.579 0.057-1.021 0.245-1.36 0.187-0.344 0.479-0.557 0.735-0.672 0.124-0.057 0.244-0.093 0.343-0.125-0.104-0.145-0.213-0.291-0.323-0.432-0.364-0.443-0.667-0.937-0.891-1.463-0.104-0.22-0.219-0.439-0.344-0.647-0.176-0.317-0.4-0.719-0.635-1.172-0.469-0.896-0.979-1.989-1.245-3.052-0.265-1.063-0.301-2.161 0.376-2.932 0.599-0.688 1.656-0.973 3.233-0.812-0.047-0.141-0.072-0.261-0.151-0.443-0.359-0.844-0.828-1.636-1.391-2.355-1.339-1.713-3.511-3.412-6.859-3.469zM7.735 2.156c-0.167 0-0.339 0.005-0.505 0.016-1.349 0.079-2.62 0.468-3.532 1.432-0.911 0.969-1.509 2.547-1.38 5.167 0.027 0.5 0.24 1.885 0.609 3.536 0.371 1.652 0.896 3.595 1.527 5.313 0.629 1.713 1.391 3.208 2.12 3.916 0.364 0.349 0.681 0.495 0.968 0.485 0.287-0.016 0.636-0.183 1.063-0.693 0.776-0.937 1.579-1.844 2.412-2.729-1.199-1.047-1.787-2.629-1.552-4.203 0.135-0.984 0.156-1.907 0.135-2.636-0.015-0.708-0.063-1.176-0.063-1.473 0-0.011 0-0.016 0-0.027v-0.005l-0.005-0.009c0-1.537 0.272-3.057 0.792-4.5 0.375-0.996 0.928-2 1.76-2.819-0.817-0.271-2.271-0.676-3.843-0.755-0.167-0.011-0.339-0.016-0.505-0.016zM24.265 9.197c-0.905 0.016-1.411 0.251-1.681 0.552-0.376 0.433-0.412 1.193-0.177 2.131 0.233 0.937 0.719 1.984 1.172 2.855 0.224 0.437 0.443 0.828 0.619 1.145 0.183 0.323 0.313 0.547 0.391 0.745 0.073 0.177 0.157 0.333 0.24 0.479 0.349-0.74 0.412-1.464 0.375-2.224-0.047-0.937-0.265-1.896-0.229-2.864 0.037-1.136 0.261-1.876 0.277-2.751-0.324-0.041-0.657-0.068-0.985-0.068zM13.287 9.355c-0.276 0-0.552 0.036-0.823 0.099-0.537 0.131-1.052 0.328-1.537 0.599-0.161 0.088-0.317 0.188-0.463 0.303l-0.032 0.025c0.011 0.199 0.047 0.667 0.063 1.365 0.016 0.76 0 1.728-0.145 2.776-0.323 2.281 1.333 4.167 3.276 4.172 0.115-0.469 0.301-0.944 0.489-1.443 0.541-1.459 1.604-2.521 0.708-6.677-0.145-0.677-0.437-0.953-0.839-1.109-0.224-0.079-0.457-0.115-0.697-0.109zM23.844 9.625h0.068c0.083 0.005 0.167 0.011 0.239 0.031 0.068 0.016 0.131 0.037 0.183 0.073 0.052 0.031 0.088 0.083 0.099 0.145v0.011c0 0.063-0.016 0.125-0.047 0.183-0.041 0.072-0.088 0.14-0.145 0.197-0.136 0.151-0.319 0.251-0.516 0.281-0.193 0.027-0.385-0.025-0.547-0.135-0.063-0.048-0.125-0.1-0.172-0.157-0.047-0.047-0.073-0.109-0.084-0.172-0.004-0.061 0.011-0.124 0.052-0.171 0.048-0.048 0.1-0.089 0.157-0.12 0.129-0.073 0.301-0.125 0.5-0.152 0.072-0.009 0.145-0.015 0.213-0.020zM13.416 9.849c0.068 0 0.147 0.005 0.22 0.015 0.208 0.032 0.385 0.084 0.525 0.167 0.068 0.032 0.131 0.084 0.177 0.141 0.052 0.063 0.077 0.14 0.073 0.224-0.016 0.077-0.048 0.151-0.1 0.208-0.057 0.068-0.119 0.125-0.192 0.172-0.172 0.125-0.385 0.177-0.599 0.151-0.215-0.036-0.412-0.14-0.557-0.301-0.063-0.068-0.115-0.141-0.157-0.219-0.047-0.073-0.067-0.156-0.057-0.24 0.021-0.14 0.141-0.219 0.256-0.26 0.131-0.043 0.271-0.057 0.411-0.052zM25.495 19.64h-0.005c-0.192 0.073-0.353 0.1-0.489 0.163-0.14 0.052-0.251 0.156-0.317 0.285-0.089 0.152-0.156 0.423-0.136 0.885 0.057 0.043 0.125 0.073 0.199 0.095 0.224 0.068 0.609 0.115 1.036 0.109 0.849-0.011 1.896-0.208 2.453-0.469 0.453-0.208 0.88-0.489 1.255-0.817-1.859 0.38-2.905 0.281-3.552 0.016-0.156-0.068-0.307-0.157-0.443-0.267zM14.787 19.765h-0.027c-0.072 0.005-0.172 0.032-0.375 0.251-0.464 0.52-0.625 0.848-1.005 1.151-0.385 0.307-0.88 0.469-1.875 0.672-0.312 0.063-0.495 0.135-0.615 0.192 0.036 0.032 0.036 0.043 0.093 0.068 0.147 0.084 0.333 0.152 0.485 0.193 0.427 0.104 1.124 0.229 1.859 0.104 0.729-0.125 1.489-0.475 2.141-1.385 0.115-0.156 0.124-0.391 0.031-0.641-0.093-0.244-0.297-0.463-0.437-0.52-0.089-0.043-0.183-0.068-0.276-0.084z" }) })
|
|
1968
1175
|
};
|
|
1176
|
+
var inputVariants = cva(
|
|
1177
|
+
`
|
|
1178
|
+
flex w-full bg-background border border-input shadow-xs shadow-black/5 transition-[color,box-shadow] text-foreground placeholder:text-muted-foreground/80
|
|
1179
|
+
focus-visible:ring-ring/30 focus-visible:border-ring focus-visible:outline-none focus-visible:ring-[3px]
|
|
1180
|
+
disabled:cursor-not-allowed disabled:opacity-60
|
|
1181
|
+
[&[readonly]]:bg-muted/80 [&[readonly]]:cursor-not-allowed
|
|
1182
|
+
file:h-full [&[type=file]]:py-0 file:border-solid file:border-input file:bg-transparent
|
|
1183
|
+
file:font-medium file:not-italic file:text-foreground file:p-0 file:border-0 file:border-e
|
|
1184
|
+
aria-invalid:border-destructive/60 aria-invalid:ring-destructive/10 dark:aria-invalid:border-destructive dark:aria-invalid:ring-destructive/20
|
|
1185
|
+
`,
|
|
1186
|
+
{
|
|
1187
|
+
variants: {
|
|
1188
|
+
variant: {
|
|
1189
|
+
lg: "h-10 px-4 text-sm rounded-md file:pe-4 file:me-4",
|
|
1190
|
+
md: "h-8.5 px-3 text-[0.8125rem] leading-[var(--text-sm--line-height)] rounded-md file:pe-3 file:me-3",
|
|
1191
|
+
sm: "h-7 px-2.5 text-xs rounded-md file:pe-2.5 file:me-2.5"
|
|
1192
|
+
}
|
|
1193
|
+
},
|
|
1194
|
+
defaultVariants: {
|
|
1195
|
+
variant: "md"
|
|
1196
|
+
}
|
|
1197
|
+
}
|
|
1198
|
+
);
|
|
1199
|
+
var inputAddonVariants = cva(
|
|
1200
|
+
"flex items-center shrink-0 justify-center bg-muted border border-input shadow-xs shadow-[rgba(0,0,0,0.05)] text-secondary-foreground [&_svg]:text-secondary-foreground/60",
|
|
1201
|
+
{
|
|
1202
|
+
variants: {
|
|
1203
|
+
variant: {
|
|
1204
|
+
sm: "rounded-md h-7 min-w-7 text-xs px-2.5 [&_svg:not([class*=size-])]:size-3.5",
|
|
1205
|
+
md: "rounded-md h-8.5 min-w-8.5 px-3 text-[0.8125rem] leading-[var(--text-sm--line-height)] [&_svg:not([class*=size-])]:size-4.5",
|
|
1206
|
+
lg: "rounded-md h-10 min-w-10 px-4 text-sm [&_svg:not([class*=size-])]:size-4.5"
|
|
1207
|
+
},
|
|
1208
|
+
mode: {
|
|
1209
|
+
default: "",
|
|
1210
|
+
icon: "px-0 justify-center"
|
|
1211
|
+
}
|
|
1212
|
+
},
|
|
1213
|
+
defaultVariants: {
|
|
1214
|
+
variant: "md",
|
|
1215
|
+
mode: "default"
|
|
1216
|
+
}
|
|
1217
|
+
}
|
|
1218
|
+
);
|
|
1219
|
+
var inputGroupVariants = cva(
|
|
1220
|
+
`
|
|
1221
|
+
flex items-stretch
|
|
1222
|
+
[&_[data-slot=input]]:grow
|
|
1223
|
+
[&_[data-slot=input-addon]:has(+[data-slot=input])]:rounded-e-none [&_[data-slot=input-addon]:has(+[data-slot=input])]:border-e-0
|
|
1224
|
+
[&_[data-slot=input-addon]:has(+[data-slot=datefield])]:rounded-e-none [&_[data-slot=input-addon]:has(+[data-slot=datefield])]:border-e-0
|
|
1225
|
+
[&_[data-slot=input]+[data-slot=input-addon]]:rounded-s-none [&_[data-slot=input]+[data-slot=input-addon]]:border-s-0
|
|
1226
|
+
[&_[data-slot=input-addon]:has(+[data-slot=button])]:rounded-e-none
|
|
1227
|
+
[&_[data-slot=input]+[data-slot=button]]:rounded-s-none
|
|
1228
|
+
[&_[data-slot=button]+[data-slot=input]]:rounded-s-none
|
|
1229
|
+
[&_[data-slot=input-addon]+[data-slot=input]]:rounded-s-none
|
|
1230
|
+
[&_[data-slot=input-addon]+[data-slot=datefield]]:[&_[data-slot=input]]:rounded-s-none
|
|
1231
|
+
[&_[data-slot=datefield]:has(+[data-slot=input-addon])]:[&_[data-slot=input]]:rounded-e-none
|
|
1232
|
+
[&_[data-slot=input]:has(+[data-slot=button])]:rounded-e-none
|
|
1233
|
+
[&_[data-slot=input]:has(+[data-slot=input-addon])]:rounded-e-none
|
|
1234
|
+
[&_[data-slot=datefield]]:grow
|
|
1235
|
+
[&_[data-slot=datefield]+[data-slot=input-addon]]:rounded-s-none [&_[data-slot=datefield]+[data-slot=input-addon]]:border-s-0
|
|
1236
|
+
`,
|
|
1237
|
+
{
|
|
1238
|
+
variants: {},
|
|
1239
|
+
defaultVariants: {}
|
|
1240
|
+
}
|
|
1241
|
+
);
|
|
1242
|
+
var inputWrapperVariants = cva(
|
|
1243
|
+
`
|
|
1244
|
+
flex items-center gap-1.5
|
|
1245
|
+
has-[:focus-visible]:ring-ring/30
|
|
1246
|
+
has-[:focus-visible]:border-ring
|
|
1247
|
+
has-[:focus-visible]:outline-none
|
|
1248
|
+
has-[:focus-visible]:ring-[3px]
|
|
1249
|
+
|
|
1250
|
+
[&_[data-slot=datefield]]:grow
|
|
1251
|
+
focus-within:[&_[data-slot=input]]:ring-transparent
|
|
1252
|
+
focus-within:[&_[data-slot=input]]:ring-0
|
|
1253
|
+
focus-within:[&_[data-slot=input]]:border-0
|
|
1254
|
+
[&_[data-slot[input]]]:flex
|
|
1255
|
+
[&_[data-slot=input]]:w-full
|
|
1256
|
+
[&_[data-slot=input]]:outline-none
|
|
1257
|
+
[&_[data-slot=input]]:transition-colors
|
|
1258
|
+
[&_[data-slot=input]]:text-foreground
|
|
1259
|
+
[&_[data-slot=input]]:placeholder:text-muted-foreground
|
|
1260
|
+
[&_[data-slot=input]]:border-0
|
|
1261
|
+
[&_[data-slot=input]]:bg-transparent
|
|
1262
|
+
[&_[data-slot=input]]:p-0
|
|
1263
|
+
[&_[data-slot=input]]:shadow-none
|
|
1264
|
+
[&_[data-slot=input]]:focus-visible:ring-0
|
|
1265
|
+
[&_[data-slot=input]]:h-auto
|
|
1266
|
+
[&_[data-slot=input]]:disabled:cursor-not-allowed
|
|
1267
|
+
[&_[data-slot=input]]:disabled:opacity-50
|
|
1268
|
+
|
|
1269
|
+
[&_svg]:text-muted-foreground
|
|
1270
|
+
[&_svg]:shrink-0
|
|
1271
|
+
`,
|
|
1272
|
+
{
|
|
1273
|
+
variants: {
|
|
1274
|
+
variant: {
|
|
1275
|
+
sm: "gap-1.25 [&_svg:not([class*=size-])]:size-3.5",
|
|
1276
|
+
md: "gap-1.5 [&_svg:not([class*=size-])]:size-4",
|
|
1277
|
+
lg: "gap-1.5 [&_svg:not([class*=size-])]:size-4"
|
|
1278
|
+
}
|
|
1279
|
+
},
|
|
1280
|
+
defaultVariants: {
|
|
1281
|
+
variant: "md"
|
|
1282
|
+
}
|
|
1283
|
+
}
|
|
1284
|
+
);
|
|
1285
|
+
function Input({
|
|
1286
|
+
className,
|
|
1287
|
+
type,
|
|
1288
|
+
variant,
|
|
1289
|
+
...props
|
|
1290
|
+
}) {
|
|
1291
|
+
return /* @__PURE__ */ jsx(
|
|
1292
|
+
"input",
|
|
1293
|
+
{
|
|
1294
|
+
"data-slot": "input",
|
|
1295
|
+
type,
|
|
1296
|
+
className: cn(inputVariants({ variant }), className),
|
|
1297
|
+
...props
|
|
1298
|
+
}
|
|
1299
|
+
);
|
|
1300
|
+
}
|
|
1301
|
+
function InputAddon({
|
|
1302
|
+
className,
|
|
1303
|
+
variant,
|
|
1304
|
+
mode,
|
|
1305
|
+
...props
|
|
1306
|
+
}) {
|
|
1307
|
+
return /* @__PURE__ */ jsx(
|
|
1308
|
+
"div",
|
|
1309
|
+
{
|
|
1310
|
+
"data-slot": "input-addon",
|
|
1311
|
+
className: cn(inputAddonVariants({ variant, mode }), className),
|
|
1312
|
+
...props
|
|
1313
|
+
}
|
|
1314
|
+
);
|
|
1315
|
+
}
|
|
1316
|
+
function InputGroup({
|
|
1317
|
+
className,
|
|
1318
|
+
...props
|
|
1319
|
+
}) {
|
|
1320
|
+
return /* @__PURE__ */ jsx(
|
|
1321
|
+
"div",
|
|
1322
|
+
{
|
|
1323
|
+
"data-slot": "input-group",
|
|
1324
|
+
className: cn(inputGroupVariants(), className),
|
|
1325
|
+
...props
|
|
1326
|
+
}
|
|
1327
|
+
);
|
|
1328
|
+
}
|
|
1329
|
+
function InputWrapper({
|
|
1330
|
+
className,
|
|
1331
|
+
variant,
|
|
1332
|
+
...props
|
|
1333
|
+
}) {
|
|
1334
|
+
return /* @__PURE__ */ jsx(
|
|
1335
|
+
"div",
|
|
1336
|
+
{
|
|
1337
|
+
"data-slot": "input-wrapper",
|
|
1338
|
+
className: cn(
|
|
1339
|
+
inputVariants({ variant }),
|
|
1340
|
+
inputWrapperVariants({ variant }),
|
|
1341
|
+
className
|
|
1342
|
+
),
|
|
1343
|
+
...props
|
|
1344
|
+
}
|
|
1345
|
+
);
|
|
1346
|
+
}
|
|
1347
|
+
function Skeleton({ className, ...props }) {
|
|
1348
|
+
return /* @__PURE__ */ jsx(
|
|
1349
|
+
"div",
|
|
1350
|
+
{
|
|
1351
|
+
"aria-hidden": props["aria-hidden"] ?? true,
|
|
1352
|
+
"data-slot": "skeleton",
|
|
1353
|
+
className: cn(
|
|
1354
|
+
"block animate-pulse rounded-md bg-muted/40 shrink-0",
|
|
1355
|
+
// ensure sensible default size when none provided
|
|
1356
|
+
"h-4 w-full",
|
|
1357
|
+
className
|
|
1358
|
+
),
|
|
1359
|
+
...props
|
|
1360
|
+
}
|
|
1361
|
+
);
|
|
1362
|
+
}
|
|
1969
1363
|
var MOBILE_BREAKPOINT = 992;
|
|
1970
1364
|
function useIsMobile() {
|
|
1971
|
-
const [isMobile, setIsMobile] =
|
|
1365
|
+
const [isMobile, setIsMobile] = React.useState(
|
|
1972
1366
|
void 0
|
|
1973
1367
|
);
|
|
1974
|
-
|
|
1368
|
+
React.useEffect(() => {
|
|
1975
1369
|
const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
|
|
1976
1370
|
const onChange = () => {
|
|
1977
1371
|
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
@@ -1986,7 +1380,7 @@ function useCopyToClipboard({
|
|
|
1986
1380
|
timeout = 2e3,
|
|
1987
1381
|
onCopy
|
|
1988
1382
|
} = {}) {
|
|
1989
|
-
const [isCopied, setIsCopied] =
|
|
1383
|
+
const [isCopied, setIsCopied] = React.useState(false);
|
|
1990
1384
|
const copyToClipboard = (value) => {
|
|
1991
1385
|
if (typeof window === "undefined" || !navigator.clipboard.writeText) {
|
|
1992
1386
|
return;
|
|
@@ -2005,37 +1399,13 @@ function useCopyToClipboard({
|
|
|
2005
1399
|
return { isCopied, copyToClipboard };
|
|
2006
1400
|
}
|
|
2007
1401
|
function useMounted() {
|
|
2008
|
-
const [mounted, setMounted] =
|
|
2009
|
-
|
|
1402
|
+
const [mounted, setMounted] = React.useState(false);
|
|
1403
|
+
React.useEffect(() => {
|
|
2010
1404
|
setMounted(true);
|
|
2011
1405
|
}, []);
|
|
2012
1406
|
return mounted;
|
|
2013
1407
|
}
|
|
2014
|
-
/*! Bundled license information:
|
|
2015
|
-
|
|
2016
|
-
use-sync-external-store/cjs/use-sync-external-store-shim.production.js:
|
|
2017
|
-
(**
|
|
2018
|
-
* @license React
|
|
2019
|
-
* use-sync-external-store-shim.production.js
|
|
2020
|
-
*
|
|
2021
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2022
|
-
*
|
|
2023
|
-
* This source code is licensed under the MIT license found in the
|
|
2024
|
-
* LICENSE file in the root directory of this source tree.
|
|
2025
|
-
*)
|
|
2026
|
-
|
|
2027
|
-
use-sync-external-store/cjs/use-sync-external-store-shim.development.js:
|
|
2028
|
-
(**
|
|
2029
|
-
* @license React
|
|
2030
|
-
* use-sync-external-store-shim.development.js
|
|
2031
|
-
*
|
|
2032
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2033
|
-
*
|
|
2034
|
-
* This source code is licensed under the MIT license found in the
|
|
2035
|
-
* LICENSE file in the root directory of this source tree.
|
|
2036
|
-
*)
|
|
2037
|
-
*/
|
|
2038
1408
|
|
|
2039
|
-
export {
|
|
1409
|
+
export { Avatar, AvatarFallback, AvatarImage, AvatarIndicator, AvatarStatus, Badge, BadgeButton, BadgeDot, Button, ButtonArrow, Card, CardContent, CardDescription, CardFooter, CardHeader, CardHeading, CardTable, CardTitle, CardToolbar, Checkbox, Icons, Input, InputAddon, InputGroup, InputWrapper, Skeleton, avatarStatusVariants, badgeVariants, buttonVariants, cn, inputAddonVariants, inputVariants, useCopyToClipboard, useIsMobile, useMounted };
|
|
2040
1410
|
//# sourceMappingURL=index.js.map
|
|
2041
1411
|
//# sourceMappingURL=index.js.map
|