@qredence/fleet 0.7.4 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/README.md +5 -4
- package/bin/fleet-prime.mjs +33 -6
- package/bin/prime-runtime.mjs +79 -0
- package/dist/runtime-manifest.json +32 -0
- package/dist/web/client/assets/DialogTitle-RY2UDuCY.js +1 -0
- package/dist/web/client/assets/FloatingPortal-XC0MCNnD.js +1 -0
- package/dist/web/client/assets/action-swap-BWRUNKQA.js +1 -0
- package/dist/web/client/assets/{alert-dialog-DtXvVhsF.js → alert-dialog-DGNvg0B1.js} +1 -1
- package/dist/web/client/assets/arrow-up-right-CG9RNk4p.js +1 -0
- package/dist/web/client/assets/{artifacts-panel-Bseg97yQ.js → artifacts-panel-BGXpKRJ7.js} +1 -1
- package/dist/web/client/assets/{badge-C--lf3bb.js → badge-DM06QVqB.js} +6 -6
- package/dist/web/client/assets/button-CWYjn8Zk.js +1 -0
- package/dist/web/client/assets/{card-Hngi3HGC.js → card-Dj1SnGUU.js} +1 -1
- package/dist/web/client/assets/{chat-command-palette-D_rm1r9d.js → chat-command-palette-PenyaZBw.js} +1 -1
- package/dist/web/client/assets/code-block-pKKmFZ5w.js +3 -0
- package/dist/web/client/assets/collapsible-Bk6zCsRX.js +1 -0
- package/dist/web/client/assets/{command-CmtCIDdH.js → command-imgUMV3r.js} +1 -1
- package/dist/web/client/assets/{create-project-dialog-m-9aoobN.js → create-project-dialog-C00d5yCq.js} +1 -1
- package/dist/web/client/assets/createBaseUIEventDetails-DIxvaz-Y.js +1 -0
- package/dist/web/client/assets/{dialog-Ddouieuu.js → dialog-zCNOQI63.js} +1 -1
- package/dist/web/client/assets/eye-iNSvs0UA.js +1 -0
- package/dist/web/client/assets/file-code-corner-BkDULqko.js +1 -0
- package/dist/web/client/assets/{fork-picker-dialog-DfGlB17w.js → fork-picker-dialog-Cgi48NnT.js} +1 -1
- package/dist/web/client/assets/globals-BuMuB_ea.css +2 -0
- package/dist/web/client/assets/{index-Bz5W4EOn.js → index-BqBdQGWs.js} +3 -3
- package/dist/web/client/assets/input-7g8_nw-Z.js +1 -0
- package/dist/web/client/assets/{input-group-EPMGh55u.js → input-group-Nq03Qums.js} +1 -1
- package/dist/web/client/assets/{ipython-tool-CMhnRVrC.js → ipython-tool-bieUhw9K.js} +1 -1
- package/dist/web/client/assets/markdown-CvBfbPCn.js +2 -0
- package/dist/web/client/assets/markdown-code-rFOkzN5N.js +4 -0
- package/dist/web/client/assets/{message-queue-Bg2MiJHM.js → message-queue-sSljtjYz.js} +1 -1
- package/dist/web/client/assets/{model-selector-list-BiU_7ivt.js → model-selector-list-Cp687pdm.js} +1 -1
- package/dist/web/client/assets/{notify-DhtmUPfE.js → notify-Cqdu6EV8.js} +1 -1
- package/dist/web/client/assets/{openui-renderer-MIB3JKYa.js → openui-renderer-BdYTcn-_.js} +50 -50
- package/dist/web/client/assets/{prompt-input-Dy-DSPqF.js → prompt-input-CoV1gTUQ.js} +1 -1
- package/dist/web/client/assets/{prompt-suggestions-CrpAiKeB.js → prompt-suggestions-CAY5JI-C.js} +1 -1
- package/dist/web/client/assets/provider-label-QrVOwKBO.js +1 -0
- package/dist/web/client/assets/reasoning-line-DGdPUMwT.js +1 -0
- package/dist/web/client/assets/rehype-katex-DITkIpVl.js +259 -0
- package/dist/web/client/assets/{repl-panel-DN5kZAcB.js → repl-panel-5xgkDXO5.js} +1 -1
- package/dist/web/client/assets/{resources-panel-DD6iWOF3.js → resources-panel-aJCKt9eF.js} +1 -1
- package/dist/web/client/assets/right-panel-registry-BaLZiKny.js +2 -0
- package/dist/web/client/assets/routes-BkFkhfO3.js +16 -0
- package/dist/web/client/assets/select-BhV4ikeN.js +1 -0
- package/dist/web/client/assets/session-activity-panel-Bc4-HSfb.js +1 -0
- package/dist/web/client/assets/session-reasoning-panel-CjJJK_bq.js +1 -0
- package/dist/web/client/assets/session-tool-renderer-C7mYeUOs.js +166 -0
- package/dist/web/client/assets/{session-tree-panel-BBwP_EK2.js → session-tree-panel-By9m9tGB.js} +1 -1
- package/dist/web/client/assets/settings-dialog-Dpt4Ha_m.js +2 -0
- package/dist/web/client/assets/shield-check-7HDd-2Fn.js +1 -0
- package/dist/web/client/assets/{skeleton-DNAr5ULI.js → skeleton-B_Lq2XFl.js} +1 -1
- package/dist/web/client/assets/{skeleton-loaders-B28mF4tJ.js → skeleton-loaders-DWc1eDL3.js} +1 -1
- package/dist/web/client/assets/sparkles-BwVa9zQJ.js +1 -0
- package/dist/web/client/assets/{spinner-CSBXk3Lo.js → spinner-B5TaKP7k.js} +1 -1
- package/dist/web/client/assets/{subagent-chat-panel-DhvBO4dQ.js → subagent-chat-panel-DsPmLZSf.js} +1 -1
- package/dist/web/client/assets/subagent-transcript-CNQ9wGk2.js +1 -0
- package/dist/web/client/assets/{subagents-panel-DRo8Xs6j.js → subagents-panel-gQ9BLfV3.js} +1 -1
- package/dist/web/client/assets/surfaces-BUjUJTyD.js +1 -0
- package/dist/web/client/assets/switch-C7Myu-Dt.js +1 -0
- package/dist/web/client/assets/toast-DlbKi6K-.js +1 -0
- package/dist/web/client/assets/tool-output-normalizer-CADgEiI4.js +4 -0
- package/dist/web/client/assets/tool-part-normalizer-CYK62WZM.js +4 -0
- package/dist/web/client/assets/tool-result-bjAGZ2qm.js +5 -0
- package/dist/web/client/assets/tool-timeline-eNqH1zj7.js +2 -0
- package/dist/web/client/assets/trace-IsV5RRvM.js +1 -0
- package/dist/web/client/assets/ui-preferences-B-PNDkyY.js +1 -0
- package/dist/web/client/assets/use-hover-capable-CLq8BADD.js +1 -0
- package/dist/web/client/assets/useBaseUiId-lKfDDIcw.js +1 -0
- package/dist/web/client/assets/useButton-CvcmqA2s.js +1 -0
- package/dist/web/client/assets/useRender-Bbk_fl72.js +1 -0
- package/dist/web/client/assets/{utils-CFDGLzf6.js → utils-oBThwhjm.js} +1 -1
- package/dist/web/client/assets/{workspace-panel-DdZutYnd.js → workspace-panel-Da5I4p_t.js} +1 -1
- package/dist/web/client/assets/workspace-path-nav-D-77sJ_A.js +2 -0
- package/dist/web/client/assets/wrench-BXX_Ah2s.js +1 -0
- package/dist/web/client/bundle-budget.json +6 -6
- package/dist/web/server/{_tanstack-start-manifest_v-YlngJGUa-YTWBGR7L.js → _tanstack-start-manifest_v-BiNPG4xt-BZTMSM2I.js} +33 -28
- package/dist/web/server/{artifacts-panel-COSC8o7j-GKW2HH2G.js → artifacts-panel-CqGBNU4q-UHNMC7PK.js} +23 -27
- package/dist/web/server/{chat-command-palette-CuOWdzkk-PKZQ5EZP.js → chat-command-palette-B94-zIEz-ES2ZB4ZF.js} +8 -10
- package/dist/web/server/{chunk-GLSR4ZI2.js → chunk-2FHYWKDN.js} +669 -833
- package/dist/web/server/{chunk-EBC7QORX.js → chunk-5GUEYYYO.js} +3680 -2098
- package/dist/web/server/{chunk-GLH2GWMG.js → chunk-7L5PCCYR.js} +411 -306
- package/dist/web/server/{chunk-KHHXJZK7.js → chunk-ABMGW6QH.js} +2784 -1662
- package/dist/web/server/{chunk-36CAMOVG.js → chunk-BAHZXA4D.js} +6 -6
- package/dist/web/server/{chunk-IN2ATSEG.js → chunk-CZLGB3NE.js} +2 -2
- package/dist/web/server/{chunk-WCKKN5BR.js → chunk-E6T36NM5.js} +347 -583
- package/dist/web/server/{chunk-ORCOCCER.js → chunk-EAKPTSWR.js} +4 -4
- package/dist/web/server/chunk-EL2JCDAM.js +270 -0
- package/dist/web/server/{chunk-6GTTTYSE.js → chunk-FB2QLQTN.js} +67 -73
- package/dist/web/server/{chunk-LLO4MNGE.js → chunk-K67IDUAI.js} +24 -26
- package/dist/web/server/{chunk-YU6RHHK6.js → chunk-LQM6QR7S.js} +10 -12
- package/dist/web/server/chunk-LTTBT3J7.js +129 -0
- package/dist/web/server/{chunk-TMQ3MT3D.js → chunk-OAYEN3JV.js} +2 -0
- package/dist/web/server/{chunk-ZUZPJNLY.js → chunk-OSPDNT7S.js} +829 -642
- package/dist/web/server/{chunk-XA7EOCHM.js → chunk-SGAQVAYL.js} +2 -2
- package/dist/web/server/chunk-SI5IQSG4.js +206 -0
- package/dist/web/server/{chunk-AKSDWYJY.js → chunk-SYS5FDNA.js} +5 -5
- package/dist/web/server/{chunk-QSM3BRMA.js → chunk-WSK55TKE.js} +169 -156
- package/dist/web/server/{chunk-BUKOEXE7.js → chunk-YQO36OP6.js} +2 -2
- package/dist/web/server/{create-project-dialog-0-arQpsX-ZELQKHS5.js → create-project-dialog-CFPX6Ihl-EO4XTINS.js} +12 -14
- package/dist/web/server/{dist-7G2NZPF4.js → dist-GQUZLXN5.js} +2 -2
- package/dist/web/server/{dist-E5637ZAY.js → dist-MN5NWCX6.js} +1 -1
- package/dist/web/server/{fork-picker-dialog-fj9p33Mq-I5SA3GLJ.js → fork-picker-dialog-B2RBFzoZ-R6GXPSPL.js} +6 -8
- package/dist/web/server/{markdown-CShfYRVO-RBTK7TRB.js → markdown-BvCfOB26-VDH4YOQD.js} +9 -6
- package/dist/web/server/{markdown-code-BDV_2b2T-6JYA5FWZ.js → markdown-code-SYc-BQvp-MR4FXT5C.js} +48 -9
- package/dist/web/server/{message-queue-BBC843IU-GY4ZIMM4.js → message-queue-D32rLiJo-HEBRGH5B.js} +6 -8
- package/dist/web/server/{model-selector-list-DE6aLNXt-LJZMCYOI.js → model-selector-list-DKzt_xEN-5ZPU6XDY.js} +8 -10
- package/dist/web/server/{openui-renderer-C3aqSKuS-PWLWJFYO.js → openui-renderer-CeVtOdYl-PY37PCJI.js} +12 -14
- package/dist/web/server/{prompt-suggestions-CpTK_fHV-UKJDTLVM.js → prompt-suggestions-CpTK_fHV-Q4ILLZKC.js} +1 -1
- package/dist/web/server/{rehype-katex-IDPYWU6M.js → rehype-katex-CYHGKI6Q.js} +490 -843
- package/dist/web/server/{repl-panel-1kSS1UGd-U64BPA7X.js → repl-panel-1kSS1UGd-DDM5ADGZ.js} +3 -3
- package/dist/web/server/{resources-panel-DWb0eGKa-K4EM3H7Y.js → resources-panel-S4NHlpz7-NF7WYYSR.js} +7 -9
- package/dist/web/server/{router-DZYr-9uT-AEXHEFXF.js → router-DVKxZik_-254GZAJW.js} +5 -6
- package/dist/web/server/{routes-vYxWRhis-AAZ73SNP.js → routes-BTxAklRp-UM7ZTLLP.js} +50 -30
- package/dist/web/server/server.js +2 -2
- package/dist/web/server/session-activity-panel-Bz2GrdMk-PCOXG46X.js +173 -0
- package/dist/web/server/session-reasoning-panel-CpiTdyQz-O3B5CDKS.js +62 -0
- package/dist/web/server/{session-tool-renderer-Dtt74Mts-7YYNSWRV.js → session-tool-renderer-BZiOxtt1-T3ZGAQKX.js} +10 -13
- package/dist/web/server/{session-tree-panel-HNl6R9VZ-4JUF34M7.js → session-tree-panel-CzkE0RFB-P4KWA7S2.js} +7 -9
- package/dist/web/server/{settings-dialog-DGZBA5Z_-6HYFMPNZ.js → settings-dialog-BUgVNpr1-THSYIOZL.js} +18 -21
- package/dist/web/server/{subagent-chat-panel-DuB4hqUk-LDCAJOCL.js → subagent-chat-panel-mw3kEFfK-CDYX7LST.js} +13 -16
- package/dist/web/server/{subagents-panel-wAvx3-Rs-L6UTDFUX.js → subagents-panel-2ZJfYrXG-NDJKHJHD.js} +15 -18
- package/dist/web/server/{workspace-panel-CPzJZwgv-YS7PTI5C.js → workspace-panel-xznrPDLt-QCJRZOF3.js} +7 -9
- package/package.json +2 -2
- package/dist/web/client/assets/DialogTitle-D-zqaHvF.js +0 -1
- package/dist/web/client/assets/FloatingPortal-73ZRZeD9.js +0 -1
- package/dist/web/client/assets/action-swap-BcFwS6is.js +0 -1
- package/dist/web/client/assets/button-BJZe4vNJ.js +0 -1
- package/dist/web/client/assets/chevron-up-CqeJYyZO.js +0 -1
- package/dist/web/client/assets/collapsible-DauSnbYp.js +0 -1
- package/dist/web/client/assets/createBaseUIEventDetails-DklXWq23.js +0 -1
- package/dist/web/client/assets/eye-Cs0lNChA.js +0 -1
- package/dist/web/client/assets/globals-C961mr-b.css +0 -2
- package/dist/web/client/assets/input-Def1xOZz.js +0 -1
- package/dist/web/client/assets/markdown-Big27m-v.js +0 -2
- package/dist/web/client/assets/markdown-code-7L4RiS50.js +0 -3
- package/dist/web/client/assets/provider-label-B_vy60P0.js +0 -1
- package/dist/web/client/assets/rehype-katex-A4PtQgTX.js +0 -259
- package/dist/web/client/assets/right-panel-registry-hKJN__3l.js +0 -2
- package/dist/web/client/assets/routes-C3h32Lj_.js +0 -16
- package/dist/web/client/assets/select-Buvv1tIo.js +0 -1
- package/dist/web/client/assets/session-reasoning-panel-DmEbXOrR.js +0 -1
- package/dist/web/client/assets/session-tool-renderer-Daol5fJw.js +0 -169
- package/dist/web/client/assets/settings-dialog-DYbx3xuq.js +0 -2
- package/dist/web/client/assets/sparkles-D_ANe-HY.js +0 -1
- package/dist/web/client/assets/subagent-transcript-Bx-rHni-.js +0 -1
- package/dist/web/client/assets/surfaces-B8xTOFeK.js +0 -1
- package/dist/web/client/assets/switch-CDfAwEvs.js +0 -1
- package/dist/web/client/assets/terminal-Ceucj7us.js +0 -1
- package/dist/web/client/assets/toast-9zXN-yVk.js +0 -1
- package/dist/web/client/assets/tool-part-normalizer-NbPs9kd1.js +0 -4
- package/dist/web/client/assets/tool-result-BccnO34D.js +0 -4
- package/dist/web/client/assets/tool-timeline-DlBZyd4j.js +0 -1
- package/dist/web/client/assets/ui-preferences-1YaENqef.js +0 -1
- package/dist/web/client/assets/use-hover-capable-MwFjBLZQ.js +0 -1
- package/dist/web/client/assets/workspace-path-nav-BRwuLsFl.js +0 -2
- package/dist/web/client/assets/wrench-BYnD147U.js +0 -1
- package/dist/web/server/chunk-CHSKEU3V.js +0 -166
- package/dist/web/server/chunk-OO7NBFQQ.js +0 -15
- package/dist/web/server/chunk-OXEAXEWD.js +0 -13
- package/dist/web/server/chunk-SIJVVYQT.js +0 -234
- package/dist/web/server/chunk-UQV2NU63.js +0 -163
- package/dist/web/server/chunk-VUBITQ5X.js +0 -653
- package/dist/web/server/session-reasoning-panel-XXU2yIOW-XXCKHISS.js +0 -192
- package/dist/web/server/tool-timeline-BKWsrZHK-3LGCOTPH.js +0 -12
|
@@ -1,57 +1,22 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
} from "./chunk-
|
|
2
|
+
cva
|
|
3
|
+
} from "./chunk-FB3UHLLN.js";
|
|
4
|
+
import {
|
|
5
|
+
cn
|
|
6
|
+
} from "./chunk-OAYEN3JV.js";
|
|
4
7
|
|
|
5
|
-
//
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
|
|
8
|
+
// web/app/dist/server/assets/rolldown-runtime-D7D4PA-g.js
|
|
9
|
+
var __defProp = Object.defineProperty;
|
|
10
|
+
var __exportAll = (all, no_symbols) => {
|
|
11
|
+
let target = {};
|
|
12
|
+
for (var name in all) __defProp(target, name, {
|
|
13
|
+
get: all[name],
|
|
14
|
+
enumerable: true
|
|
15
|
+
});
|
|
16
|
+
if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
17
|
+
return target;
|
|
9
18
|
};
|
|
10
19
|
|
|
11
|
-
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/useRefWithInit.mjs
|
|
12
|
-
import * as React2 from "react";
|
|
13
|
-
var UNINITIALIZED = {};
|
|
14
|
-
function useRefWithInit(init, initArg) {
|
|
15
|
-
const ref = React2.useRef(UNINITIALIZED);
|
|
16
|
-
if (ref.current === UNINITIALIZED) {
|
|
17
|
-
ref.current = init(initArg);
|
|
18
|
-
}
|
|
19
|
-
return ref;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/useStableCallback.mjs
|
|
23
|
-
var useInsertionEffect = SafeReact.useInsertionEffect;
|
|
24
|
-
var useSafeInsertionEffect = (
|
|
25
|
-
// React 17 doesn't have useInsertionEffect.
|
|
26
|
-
useInsertionEffect && // Preact replaces useInsertionEffect with useLayoutEffect and fires too late.
|
|
27
|
-
useInsertionEffect !== SafeReact.useLayoutEffect ? useInsertionEffect : (fn) => fn()
|
|
28
|
-
);
|
|
29
|
-
function useStableCallback(callback) {
|
|
30
|
-
const stable = useRefWithInit(createStableCallback).current;
|
|
31
|
-
stable.next = callback;
|
|
32
|
-
useSafeInsertionEffect(stable.effect);
|
|
33
|
-
return stable.trampoline;
|
|
34
|
-
}
|
|
35
|
-
function createStableCallback() {
|
|
36
|
-
const stable = {
|
|
37
|
-
next: void 0,
|
|
38
|
-
callback: assertNotCalled,
|
|
39
|
-
trampoline: (...args) => stable.callback?.(...args),
|
|
40
|
-
effect: () => {
|
|
41
|
-
stable.callback = stable.next;
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
|
-
return stable;
|
|
45
|
-
}
|
|
46
|
-
function assertNotCalled() {
|
|
47
|
-
if (process.env.NODE_ENV !== "production") {
|
|
48
|
-
throw (
|
|
49
|
-
/* minify-error-disabled */
|
|
50
|
-
new Error("Base UI: Cannot call an event handler while rendering.")
|
|
51
|
-
);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
20
|
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/mergeObjects.mjs
|
|
56
21
|
function mergeObjects(a, b) {
|
|
57
22
|
if (a && !b) {
|
|
@@ -224,375 +189,76 @@ function isSyntheticEvent(event) {
|
|
|
224
189
|
return event != null && typeof event === "object" && "nativeEvent" in event;
|
|
225
190
|
}
|
|
226
191
|
|
|
227
|
-
//
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
const url = new URL(baseUrl);
|
|
231
|
-
url.searchParams.set("code", code.toString());
|
|
232
|
-
args.forEach((arg) => url.searchParams.append("args[]", arg));
|
|
233
|
-
return `${prefix} error #${code}; visit ${url} for the full message.`;
|
|
234
|
-
};
|
|
235
|
-
}
|
|
236
|
-
var formatErrorMessage = createFormatErrorMessage("https://base-ui.com/production-error", "Base UI");
|
|
237
|
-
var formatErrorMessage_default = formatErrorMessage;
|
|
192
|
+
// web/app/dist/server/assets/button-bov-QkCw.js
|
|
193
|
+
import { cloneElement as cloneElement2, forwardRef as forwardRef2, isValidElement as isValidElement3 } from "react";
|
|
194
|
+
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
238
195
|
|
|
239
|
-
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/
|
|
240
|
-
import * as
|
|
196
|
+
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/button/Button.mjs
|
|
197
|
+
import * as React10 from "react";
|
|
241
198
|
|
|
242
|
-
// node_modules/.pnpm/@base-ui+
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
return forkRef.callback;
|
|
199
|
+
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/internals/use-button/useButton.mjs
|
|
200
|
+
import * as React6 from "react";
|
|
201
|
+
|
|
202
|
+
// node_modules/.pnpm/@floating-ui+utils@0.2.12/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
|
|
203
|
+
function hasWindow() {
|
|
204
|
+
return typeof window !== "undefined";
|
|
249
205
|
}
|
|
250
|
-
function
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
update(forkRef, refs);
|
|
206
|
+
function getNodeName(node) {
|
|
207
|
+
if (isNode(node)) {
|
|
208
|
+
return (node.nodeName || "").toLowerCase();
|
|
254
209
|
}
|
|
255
|
-
return
|
|
256
|
-
}
|
|
257
|
-
function createForkRef() {
|
|
258
|
-
return {
|
|
259
|
-
callback: null,
|
|
260
|
-
cleanup: null,
|
|
261
|
-
refs: []
|
|
262
|
-
};
|
|
210
|
+
return "#document";
|
|
263
211
|
}
|
|
264
|
-
function
|
|
265
|
-
|
|
212
|
+
function getWindow(node) {
|
|
213
|
+
var _node$ownerDocument;
|
|
214
|
+
return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
|
|
266
215
|
}
|
|
267
|
-
function
|
|
268
|
-
|
|
216
|
+
function getDocumentElement(node) {
|
|
217
|
+
var _ref;
|
|
218
|
+
return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;
|
|
269
219
|
}
|
|
270
|
-
function
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
forkRef.callback = null;
|
|
274
|
-
return;
|
|
220
|
+
function isNode(value) {
|
|
221
|
+
if (!hasWindow()) {
|
|
222
|
+
return false;
|
|
275
223
|
}
|
|
276
|
-
|
|
277
|
-
if (forkRef.cleanup) {
|
|
278
|
-
forkRef.cleanup();
|
|
279
|
-
forkRef.cleanup = null;
|
|
280
|
-
}
|
|
281
|
-
if (instance != null) {
|
|
282
|
-
const cleanupCallbacks = Array(refs.length).fill(null);
|
|
283
|
-
for (let i = 0; i < refs.length; i += 1) {
|
|
284
|
-
const ref = refs[i];
|
|
285
|
-
if (ref == null) {
|
|
286
|
-
continue;
|
|
287
|
-
}
|
|
288
|
-
switch (typeof ref) {
|
|
289
|
-
case "function": {
|
|
290
|
-
const refCleanup = ref(instance);
|
|
291
|
-
if (typeof refCleanup === "function") {
|
|
292
|
-
cleanupCallbacks[i] = refCleanup;
|
|
293
|
-
}
|
|
294
|
-
break;
|
|
295
|
-
}
|
|
296
|
-
case "object": {
|
|
297
|
-
ref.current = instance;
|
|
298
|
-
break;
|
|
299
|
-
}
|
|
300
|
-
default:
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
forkRef.cleanup = () => {
|
|
304
|
-
for (let i = 0; i < refs.length; i += 1) {
|
|
305
|
-
const ref = refs[i];
|
|
306
|
-
if (ref == null) {
|
|
307
|
-
continue;
|
|
308
|
-
}
|
|
309
|
-
switch (typeof ref) {
|
|
310
|
-
case "function": {
|
|
311
|
-
const cleanupCallback = cleanupCallbacks[i];
|
|
312
|
-
if (typeof cleanupCallback === "function") {
|
|
313
|
-
cleanupCallback();
|
|
314
|
-
} else {
|
|
315
|
-
void ref(null);
|
|
316
|
-
}
|
|
317
|
-
break;
|
|
318
|
-
}
|
|
319
|
-
case "object": {
|
|
320
|
-
ref.current = null;
|
|
321
|
-
break;
|
|
322
|
-
}
|
|
323
|
-
default:
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
};
|
|
327
|
-
}
|
|
328
|
-
};
|
|
224
|
+
return value instanceof Node || value instanceof getWindow(value).Node;
|
|
329
225
|
}
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
import * as React3 from "react";
|
|
336
|
-
var majorVersion = parseInt(React3.version, 10);
|
|
337
|
-
function isReactVersionAtLeast(reactVersionToCheck) {
|
|
338
|
-
return majorVersion >= reactVersionToCheck;
|
|
226
|
+
function isElement(value) {
|
|
227
|
+
if (!hasWindow()) {
|
|
228
|
+
return false;
|
|
229
|
+
}
|
|
230
|
+
return value instanceof Element || value instanceof getWindow(value).Element;
|
|
339
231
|
}
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
if (!/* @__PURE__ */ React4.isValidElement(element)) {
|
|
344
|
-
return null;
|
|
232
|
+
function isHTMLElement(value) {
|
|
233
|
+
if (!hasWindow()) {
|
|
234
|
+
return false;
|
|
345
235
|
}
|
|
346
|
-
|
|
347
|
-
const propsWithRef = reactElement.props;
|
|
348
|
-
return (isReactVersionAtLeast(19) ? propsWithRef?.ref : reactElement.ref) ?? null;
|
|
236
|
+
return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;
|
|
349
237
|
}
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
238
|
+
function isShadowRoot(value) {
|
|
239
|
+
if (!hasWindow() || typeof ShadowRoot === "undefined") {
|
|
240
|
+
return false;
|
|
241
|
+
}
|
|
242
|
+
return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
|
|
355
243
|
}
|
|
356
|
-
function
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
if (severity === "warn") {
|
|
365
|
-
console.warn(output);
|
|
366
|
-
} else {
|
|
367
|
-
console.error(output);
|
|
368
|
-
}
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
};
|
|
244
|
+
function isOverflowElement(element) {
|
|
245
|
+
const {
|
|
246
|
+
overflow,
|
|
247
|
+
overflowX,
|
|
248
|
+
overflowY,
|
|
249
|
+
display
|
|
250
|
+
} = getComputedStyle(element);
|
|
251
|
+
return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && display !== "inline" && display !== "contents";
|
|
372
252
|
}
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
var warn = createLogOnce("warn", "Base UI");
|
|
376
|
-
|
|
377
|
-
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/empty.mjs
|
|
378
|
-
function NOOP() {
|
|
253
|
+
function isTableElement(element) {
|
|
254
|
+
return /^(table|td|th)$/.test(getNodeName(element));
|
|
379
255
|
}
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
function getStateAttributesProps(state, customMapping) {
|
|
385
|
-
const props = {};
|
|
386
|
-
for (const key in state) {
|
|
387
|
-
const value = state[key];
|
|
388
|
-
if (customMapping?.hasOwnProperty(key)) {
|
|
389
|
-
const customProps = customMapping[key](value);
|
|
390
|
-
if (customProps != null) {
|
|
391
|
-
Object.assign(props, customProps);
|
|
392
|
-
}
|
|
393
|
-
continue;
|
|
394
|
-
}
|
|
395
|
-
if (value === true) {
|
|
396
|
-
props[`data-${key.toLowerCase()}`] = "";
|
|
397
|
-
} else if (value) {
|
|
398
|
-
props[`data-${key.toLowerCase()}`] = value.toString();
|
|
256
|
+
function isTopLayer(element) {
|
|
257
|
+
try {
|
|
258
|
+
if (element.matches(":popover-open")) {
|
|
259
|
+
return true;
|
|
399
260
|
}
|
|
400
|
-
}
|
|
401
|
-
return props;
|
|
402
|
-
}
|
|
403
|
-
|
|
404
|
-
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/utils/resolveClassName.mjs
|
|
405
|
-
function resolveClassName(className, state) {
|
|
406
|
-
return typeof className === "function" ? className(state) : className;
|
|
407
|
-
}
|
|
408
|
-
|
|
409
|
-
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/utils/resolveStyle.mjs
|
|
410
|
-
function resolveStyle(style, state) {
|
|
411
|
-
return typeof style === "function" ? style(state) : style;
|
|
412
|
-
}
|
|
413
|
-
|
|
414
|
-
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/internals/useRenderElement.mjs
|
|
415
|
-
import { createElement as _createElement } from "react";
|
|
416
|
-
function useRenderElement(element, componentProps, params = {}) {
|
|
417
|
-
let renderProp = componentProps.render;
|
|
418
|
-
if (params.enabled !== false) {
|
|
419
|
-
renderProp = unwrapLazyRenderProp(renderProp);
|
|
420
|
-
}
|
|
421
|
-
const outProps = useRenderElementProps(componentProps, params, renderProp);
|
|
422
|
-
if (params.enabled === false) {
|
|
423
|
-
return null;
|
|
424
|
-
}
|
|
425
|
-
const state = params.state ?? EMPTY_OBJECT;
|
|
426
|
-
return evaluateRenderProp(element, renderProp, outProps, state);
|
|
427
|
-
}
|
|
428
|
-
function useRenderElementProps(componentProps, params, renderProp) {
|
|
429
|
-
const {
|
|
430
|
-
className: classNameProp,
|
|
431
|
-
style: styleProp
|
|
432
|
-
} = componentProps;
|
|
433
|
-
const {
|
|
434
|
-
state = EMPTY_OBJECT,
|
|
435
|
-
ref,
|
|
436
|
-
props,
|
|
437
|
-
stateAttributesMapping,
|
|
438
|
-
enabled = true
|
|
439
|
-
} = params;
|
|
440
|
-
const className = enabled ? resolveClassName(classNameProp, state) : void 0;
|
|
441
|
-
const style = enabled ? resolveStyle(styleProp, state) : void 0;
|
|
442
|
-
const stateProps = enabled ? getStateAttributesProps(state, stateAttributesMapping) : EMPTY_OBJECT;
|
|
443
|
-
const resolvedProps = enabled && props ? resolveRenderFunctionProps(props) : void 0;
|
|
444
|
-
const outProps = enabled ? mergeObjects(stateProps, resolvedProps) ?? {} : EMPTY_OBJECT;
|
|
445
|
-
if (typeof document !== "undefined") {
|
|
446
|
-
if (!enabled) {
|
|
447
|
-
void useMergedRefs(null, null);
|
|
448
|
-
} else if (Array.isArray(ref)) {
|
|
449
|
-
outProps.ref = useMergedRefsN([outProps.ref, getReactElementRef(renderProp), ...ref]);
|
|
450
|
-
} else {
|
|
451
|
-
outProps.ref = useMergedRefs(outProps.ref, getReactElementRef(renderProp), ref);
|
|
452
|
-
}
|
|
453
|
-
}
|
|
454
|
-
if (!enabled) {
|
|
455
|
-
return EMPTY_OBJECT;
|
|
456
|
-
}
|
|
457
|
-
if (className !== void 0) {
|
|
458
|
-
outProps.className = mergeClassNames(outProps.className, className);
|
|
459
|
-
}
|
|
460
|
-
if (style !== void 0) {
|
|
461
|
-
outProps.style = mergeObjects(outProps.style, style);
|
|
462
|
-
}
|
|
463
|
-
return outProps;
|
|
464
|
-
}
|
|
465
|
-
function resolveRenderFunctionProps(props) {
|
|
466
|
-
if (Array.isArray(props)) {
|
|
467
|
-
return mergePropsN(props);
|
|
468
|
-
}
|
|
469
|
-
return mergeProps(void 0, props);
|
|
470
|
-
}
|
|
471
|
-
var REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
|
|
472
|
-
var COMPONENT_IDENTIFIER_PATTERN = /^[A-Z][A-Za-z0-9$]*$/;
|
|
473
|
-
var LOWERCASE_CHARACTER_PATTERN = /[a-z]/;
|
|
474
|
-
function unwrapLazyRenderProp(render) {
|
|
475
|
-
if (render?.$$typeof !== REACT_LAZY_TYPE) {
|
|
476
|
-
return render;
|
|
477
|
-
}
|
|
478
|
-
const unwrapped = React5.Children.toArray(render)[0];
|
|
479
|
-
return /* @__PURE__ */ React5.isValidElement(unwrapped) ? unwrapped : render;
|
|
480
|
-
}
|
|
481
|
-
function evaluateRenderProp(element, render, props, state) {
|
|
482
|
-
if (render) {
|
|
483
|
-
if (typeof render === "function") {
|
|
484
|
-
if (process.env.NODE_ENV !== "production") {
|
|
485
|
-
warnIfRenderPropLooksLikeComponent(render);
|
|
486
|
-
}
|
|
487
|
-
return render(props, state);
|
|
488
|
-
}
|
|
489
|
-
const mergedProps = mergeProps(props, render.props);
|
|
490
|
-
mergedProps.ref = props.ref;
|
|
491
|
-
if (process.env.NODE_ENV !== "production") {
|
|
492
|
-
if (!/* @__PURE__ */ React5.isValidElement(render)) {
|
|
493
|
-
throw new Error(["Base UI: The `render` prop was provided an invalid React element as `React.isValidElement(render)` is `false`.", "A valid React element must be provided to the `render` prop because it is cloned with props to replace the default element.", "https://base-ui.com/r/invalid-render-prop"].join("\n"));
|
|
494
|
-
}
|
|
495
|
-
}
|
|
496
|
-
return /* @__PURE__ */ React5.cloneElement(render, mergedProps);
|
|
497
|
-
}
|
|
498
|
-
if (element) {
|
|
499
|
-
if (typeof element === "string") {
|
|
500
|
-
return renderTag(element, props);
|
|
501
|
-
}
|
|
502
|
-
}
|
|
503
|
-
throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: Render element or function are not defined." : formatErrorMessage_default(8));
|
|
504
|
-
}
|
|
505
|
-
function warnIfRenderPropLooksLikeComponent(renderFn) {
|
|
506
|
-
const functionName = renderFn.name;
|
|
507
|
-
if (functionName.length === 0) {
|
|
508
|
-
return;
|
|
509
|
-
}
|
|
510
|
-
if (!COMPONENT_IDENTIFIER_PATTERN.test(functionName)) {
|
|
511
|
-
return;
|
|
512
|
-
}
|
|
513
|
-
if (!LOWERCASE_CHARACTER_PATTERN.test(functionName)) {
|
|
514
|
-
return;
|
|
515
|
-
}
|
|
516
|
-
warn(`The \`render\` prop received a function named \`${functionName}\` that starts with an uppercase letter.`, "This usually means a React component was passed directly as `render={Component}`.", "Base UI calls `render` as a plain function, which can break the Rules of Hooks during reconciliation.", "If this is an intentional render callback, rename it to start with a lowercase letter.", "Use `render={<Component />}` or `render={(props) => <Component {...props} />}` instead.", "https://base-ui.com/r/invalid-render-prop");
|
|
517
|
-
}
|
|
518
|
-
function renderTag(Tag, props) {
|
|
519
|
-
if (Tag === "button") {
|
|
520
|
-
return /* @__PURE__ */ _createElement("button", {
|
|
521
|
-
type: "button",
|
|
522
|
-
...props,
|
|
523
|
-
key: props.key
|
|
524
|
-
});
|
|
525
|
-
}
|
|
526
|
-
if (Tag === "img") {
|
|
527
|
-
return /* @__PURE__ */ _createElement("img", {
|
|
528
|
-
alt: "",
|
|
529
|
-
...props,
|
|
530
|
-
key: props.key
|
|
531
|
-
});
|
|
532
|
-
}
|
|
533
|
-
return /* @__PURE__ */ React5.createElement(Tag, props);
|
|
534
|
-
}
|
|
535
|
-
|
|
536
|
-
// node_modules/.pnpm/@floating-ui+utils@0.2.12/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
|
|
537
|
-
function hasWindow() {
|
|
538
|
-
return typeof window !== "undefined";
|
|
539
|
-
}
|
|
540
|
-
function getNodeName(node) {
|
|
541
|
-
if (isNode(node)) {
|
|
542
|
-
return (node.nodeName || "").toLowerCase();
|
|
543
|
-
}
|
|
544
|
-
return "#document";
|
|
545
|
-
}
|
|
546
|
-
function getWindow(node) {
|
|
547
|
-
var _node$ownerDocument;
|
|
548
|
-
return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
|
|
549
|
-
}
|
|
550
|
-
function getDocumentElement(node) {
|
|
551
|
-
var _ref;
|
|
552
|
-
return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;
|
|
553
|
-
}
|
|
554
|
-
function isNode(value) {
|
|
555
|
-
if (!hasWindow()) {
|
|
556
|
-
return false;
|
|
557
|
-
}
|
|
558
|
-
return value instanceof Node || value instanceof getWindow(value).Node;
|
|
559
|
-
}
|
|
560
|
-
function isElement(value) {
|
|
561
|
-
if (!hasWindow()) {
|
|
562
|
-
return false;
|
|
563
|
-
}
|
|
564
|
-
return value instanceof Element || value instanceof getWindow(value).Element;
|
|
565
|
-
}
|
|
566
|
-
function isHTMLElement(value) {
|
|
567
|
-
if (!hasWindow()) {
|
|
568
|
-
return false;
|
|
569
|
-
}
|
|
570
|
-
return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;
|
|
571
|
-
}
|
|
572
|
-
function isShadowRoot(value) {
|
|
573
|
-
if (!hasWindow() || typeof ShadowRoot === "undefined") {
|
|
574
|
-
return false;
|
|
575
|
-
}
|
|
576
|
-
return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
|
|
577
|
-
}
|
|
578
|
-
function isOverflowElement(element) {
|
|
579
|
-
const {
|
|
580
|
-
overflow,
|
|
581
|
-
overflowX,
|
|
582
|
-
overflowY,
|
|
583
|
-
display
|
|
584
|
-
} = getComputedStyle(element);
|
|
585
|
-
return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && display !== "inline" && display !== "contents";
|
|
586
|
-
}
|
|
587
|
-
function isTableElement(element) {
|
|
588
|
-
return /^(table|td|th)$/.test(getNodeName(element));
|
|
589
|
-
}
|
|
590
|
-
function isTopLayer(element) {
|
|
591
|
-
try {
|
|
592
|
-
if (element.matches(":popover-open")) {
|
|
593
|
-
return true;
|
|
594
|
-
}
|
|
595
|
-
} catch (_e) {
|
|
261
|
+
} catch (_e) {
|
|
596
262
|
}
|
|
597
263
|
try {
|
|
598
264
|
return element.matches(":modal");
|
|
@@ -689,114 +355,196 @@ function getFrameElement(win) {
|
|
|
689
355
|
return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
|
|
690
356
|
}
|
|
691
357
|
|
|
692
|
-
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
import * as React6 from "react";
|
|
697
|
-
var noop = () => {
|
|
358
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/safeReact.mjs
|
|
359
|
+
import * as React from "react";
|
|
360
|
+
var SafeReact = {
|
|
361
|
+
...React
|
|
698
362
|
};
|
|
699
|
-
var useIsoLayoutEffect = typeof document !== "undefined" ? React6.useLayoutEffect : noop;
|
|
700
363
|
|
|
701
|
-
// node_modules/.pnpm/@base-ui+
|
|
702
|
-
import * as
|
|
703
|
-
var
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: CompositeRootContext is missing. Composite parts must be placed within <Composite.Root>." : formatErrorMessage_default(16));
|
|
364
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/useRefWithInit.mjs
|
|
365
|
+
import * as React2 from "react";
|
|
366
|
+
var UNINITIALIZED = {};
|
|
367
|
+
function useRefWithInit(init, initArg) {
|
|
368
|
+
const ref = React2.useRef(UNINITIALIZED);
|
|
369
|
+
if (ref.current === UNINITIALIZED) {
|
|
370
|
+
ref.current = init(initArg);
|
|
709
371
|
}
|
|
710
|
-
return
|
|
372
|
+
return ref;
|
|
711
373
|
}
|
|
712
374
|
|
|
713
|
-
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/
|
|
714
|
-
|
|
715
|
-
|
|
375
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/useStableCallback.mjs
|
|
376
|
+
var useInsertionEffect = SafeReact.useInsertionEffect;
|
|
377
|
+
var useSafeInsertionEffect = (
|
|
378
|
+
// React 17 doesn't have useInsertionEffect.
|
|
379
|
+
useInsertionEffect && // Preact replaces useInsertionEffect with useLayoutEffect and fires too late.
|
|
380
|
+
useInsertionEffect !== SafeReact.useLayoutEffect ? useInsertionEffect : (fn) => fn()
|
|
381
|
+
);
|
|
382
|
+
function useStableCallback(callback) {
|
|
383
|
+
const stable = useRefWithInit(createStableCallback).current;
|
|
384
|
+
stable.next = callback;
|
|
385
|
+
useSafeInsertionEffect(stable.effect);
|
|
386
|
+
return stable.trampoline;
|
|
716
387
|
}
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
388
|
+
function createStableCallback() {
|
|
389
|
+
const stable = {
|
|
390
|
+
next: void 0,
|
|
391
|
+
callback: assertNotCalled,
|
|
392
|
+
trampoline: (...args) => stable.callback?.(...args),
|
|
393
|
+
effect: () => {
|
|
394
|
+
stable.callback = stable.next;
|
|
395
|
+
}
|
|
396
|
+
};
|
|
397
|
+
return stable;
|
|
398
|
+
}
|
|
399
|
+
function assertNotCalled() {
|
|
400
|
+
if (process.env.NODE_ENV !== "production") {
|
|
401
|
+
throw (
|
|
402
|
+
/* minify-error-disabled */
|
|
403
|
+
new Error("Base UI: Cannot call an event handler while rendering.")
|
|
404
|
+
);
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/createLogOnce.mjs
|
|
409
|
+
var loggedMessages;
|
|
410
|
+
if (process.env.NODE_ENV !== "production") {
|
|
411
|
+
loggedMessages = /* @__PURE__ */ new Set();
|
|
412
|
+
}
|
|
413
|
+
function createLogOnce(severity, prefix) {
|
|
414
|
+
return function logOnce(...messages) {
|
|
415
|
+
if (process.env.NODE_ENV !== "production") {
|
|
416
|
+
const message = messages.join(" ");
|
|
417
|
+
const output = prefix ? `${prefix}: ${message}` : message;
|
|
418
|
+
const key = `${severity}:${output}`;
|
|
419
|
+
if (!loggedMessages.has(key)) {
|
|
420
|
+
loggedMessages.add(key);
|
|
421
|
+
if (severity === "warn") {
|
|
422
|
+
console.warn(output);
|
|
423
|
+
} else {
|
|
424
|
+
console.error(output);
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
};
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/error.mjs
|
|
432
|
+
var error = createLogOnce("error", "Base UI");
|
|
433
|
+
|
|
434
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/useIsoLayoutEffect.mjs
|
|
435
|
+
import * as React3 from "react";
|
|
436
|
+
var noop = () => {
|
|
437
|
+
};
|
|
438
|
+
var useIsoLayoutEffect = typeof document !== "undefined" ? React3.useLayoutEffect : noop;
|
|
439
|
+
|
|
440
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/formatErrorMessage.mjs
|
|
441
|
+
function createFormatErrorMessage(baseUrl, prefix) {
|
|
442
|
+
return function formatErrorMessage2(code, ...args) {
|
|
443
|
+
const url = new URL(baseUrl);
|
|
444
|
+
url.searchParams.set("code", code.toString());
|
|
445
|
+
args.forEach((arg) => url.searchParams.append("args[]", arg));
|
|
446
|
+
return `${prefix} error #${code}; visit ${url} for the full message.`;
|
|
447
|
+
};
|
|
448
|
+
}
|
|
449
|
+
var formatErrorMessage = createFormatErrorMessage("https://base-ui.com/production-error", "Base UI");
|
|
450
|
+
var formatErrorMessage_default = formatErrorMessage;
|
|
451
|
+
|
|
452
|
+
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/internals/composite/root/CompositeRootContext.mjs
|
|
453
|
+
import * as React4 from "react";
|
|
454
|
+
var CompositeRootContext = /* @__PURE__ */ React4.createContext(void 0);
|
|
455
|
+
if (process.env.NODE_ENV !== "production") CompositeRootContext.displayName = "CompositeRootContext";
|
|
456
|
+
function useCompositeRootContext(optional = false) {
|
|
457
|
+
const context = React4.useContext(CompositeRootContext);
|
|
458
|
+
if (context === void 0 && !optional) {
|
|
459
|
+
throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: CompositeRootContext is missing. Composite parts must be placed within <Composite.Root>." : formatErrorMessage_default(16));
|
|
460
|
+
}
|
|
461
|
+
return context;
|
|
732
462
|
}
|
|
733
463
|
|
|
734
|
-
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/internals/use-button/useButton.mjs
|
|
735
|
-
import * as React9 from "react";
|
|
736
|
-
|
|
737
464
|
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/utils/useFocusableWhenDisabled.mjs
|
|
738
|
-
import * as
|
|
465
|
+
import * as React5 from "react";
|
|
739
466
|
function useFocusableWhenDisabled(parameters) {
|
|
740
467
|
const {
|
|
741
468
|
focusableWhenDisabled,
|
|
742
|
-
disabled
|
|
469
|
+
disabled,
|
|
743
470
|
composite = false,
|
|
744
471
|
tabIndex: tabIndexProp = 0,
|
|
745
472
|
isNativeButton
|
|
746
473
|
} = parameters;
|
|
747
474
|
const isFocusableComposite = composite && focusableWhenDisabled !== false;
|
|
748
475
|
const isNonFocusableComposite = composite && focusableWhenDisabled === false;
|
|
749
|
-
const props =
|
|
476
|
+
const props = React5.useMemo(() => {
|
|
750
477
|
const additionalProps = {
|
|
751
478
|
// allow Tabbing away from focusableWhenDisabled elements
|
|
752
479
|
onKeyDown(event) {
|
|
753
|
-
if (
|
|
480
|
+
if (disabled && focusableWhenDisabled && event.key !== "Tab") {
|
|
754
481
|
event.preventDefault();
|
|
755
482
|
}
|
|
756
483
|
}
|
|
757
484
|
};
|
|
758
485
|
if (!composite) {
|
|
759
486
|
additionalProps.tabIndex = tabIndexProp;
|
|
760
|
-
if (!isNativeButton &&
|
|
487
|
+
if (!isNativeButton && disabled) {
|
|
761
488
|
additionalProps.tabIndex = focusableWhenDisabled ? tabIndexProp : -1;
|
|
762
489
|
}
|
|
763
490
|
}
|
|
764
|
-
if (isNativeButton && (focusableWhenDisabled || isFocusableComposite) || !isNativeButton &&
|
|
765
|
-
additionalProps["aria-disabled"] =
|
|
491
|
+
if (isNativeButton && (focusableWhenDisabled || isFocusableComposite) || !isNativeButton && disabled) {
|
|
492
|
+
additionalProps["aria-disabled"] = disabled;
|
|
766
493
|
}
|
|
767
494
|
if (isNativeButton && (!focusableWhenDisabled || isNonFocusableComposite)) {
|
|
768
|
-
additionalProps.disabled =
|
|
495
|
+
additionalProps.disabled = disabled;
|
|
769
496
|
}
|
|
770
497
|
return additionalProps;
|
|
771
|
-
}, [composite,
|
|
498
|
+
}, [composite, disabled, focusableWhenDisabled, isFocusableComposite, isNonFocusableComposite, isNativeButton, tabIndexProp]);
|
|
772
499
|
return {
|
|
773
500
|
props
|
|
774
501
|
};
|
|
775
502
|
}
|
|
776
503
|
|
|
504
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/owner.mjs
|
|
505
|
+
function ownerDocument(node) {
|
|
506
|
+
return node?.ownerDocument || document;
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/utils/dispatchClickWithModifiers.mjs
|
|
510
|
+
function dispatchClickWithModifiers(target, sourceEvent, {
|
|
511
|
+
detail = 0
|
|
512
|
+
} = {}) {
|
|
513
|
+
target.dispatchEvent(new (getWindow(target)).PointerEvent("click", {
|
|
514
|
+
bubbles: true,
|
|
515
|
+
cancelable: true,
|
|
516
|
+
composed: true,
|
|
517
|
+
detail,
|
|
518
|
+
shiftKey: sourceEvent.shiftKey,
|
|
519
|
+
ctrlKey: sourceEvent.ctrlKey,
|
|
520
|
+
altKey: sourceEvent.altKey,
|
|
521
|
+
metaKey: sourceEvent.metaKey
|
|
522
|
+
}));
|
|
523
|
+
}
|
|
524
|
+
|
|
777
525
|
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/internals/use-button/useButton.mjs
|
|
778
526
|
function useButton(parameters = {}) {
|
|
779
527
|
const {
|
|
780
|
-
disabled
|
|
528
|
+
disabled = false,
|
|
781
529
|
focusableWhenDisabled,
|
|
782
530
|
tabIndex = 0,
|
|
783
531
|
native: isNativeButton = true,
|
|
784
532
|
composite: compositeProp
|
|
785
533
|
} = parameters;
|
|
786
|
-
const elementRef =
|
|
534
|
+
const elementRef = React6.useRef(null);
|
|
787
535
|
const compositeRootContext = useCompositeRootContext(true);
|
|
788
536
|
const isCompositeItem = compositeProp ?? compositeRootContext !== void 0;
|
|
789
537
|
const {
|
|
790
538
|
props: focusableWhenDisabledProps
|
|
791
539
|
} = useFocusableWhenDisabled({
|
|
792
540
|
focusableWhenDisabled,
|
|
793
|
-
disabled
|
|
541
|
+
disabled,
|
|
794
542
|
composite: isCompositeItem,
|
|
795
543
|
tabIndex,
|
|
796
544
|
isNativeButton
|
|
797
545
|
});
|
|
798
546
|
if (process.env.NODE_ENV !== "production") {
|
|
799
|
-
|
|
547
|
+
React6.useEffect(() => {
|
|
800
548
|
if (!elementRef.current) {
|
|
801
549
|
return;
|
|
802
550
|
}
|
|
@@ -814,17 +562,17 @@ function useButton(parameters = {}) {
|
|
|
814
562
|
}
|
|
815
563
|
}, [isNativeButton]);
|
|
816
564
|
}
|
|
817
|
-
const updateDisabled =
|
|
565
|
+
const updateDisabled = React6.useCallback(() => {
|
|
818
566
|
const element = elementRef.current;
|
|
819
567
|
if (!isButtonElement(element)) {
|
|
820
568
|
return;
|
|
821
569
|
}
|
|
822
|
-
if (isCompositeItem &&
|
|
570
|
+
if (isCompositeItem && disabled && focusableWhenDisabledProps.disabled === void 0 && element.disabled) {
|
|
823
571
|
element.disabled = false;
|
|
824
572
|
}
|
|
825
|
-
}, [
|
|
573
|
+
}, [disabled, focusableWhenDisabledProps.disabled, isCompositeItem]);
|
|
826
574
|
useIsoLayoutEffect(updateDisabled, [updateDisabled]);
|
|
827
|
-
const getButtonProps =
|
|
575
|
+
const getButtonProps = React6.useCallback((externalProps = {}) => {
|
|
828
576
|
const {
|
|
829
577
|
onClick: externalOnClick,
|
|
830
578
|
onMouseDown: externalOnMouseDown,
|
|
@@ -835,19 +583,19 @@ function useButton(parameters = {}) {
|
|
|
835
583
|
} = externalProps;
|
|
836
584
|
return mergeProps({
|
|
837
585
|
onClick(event) {
|
|
838
|
-
if (
|
|
586
|
+
if (disabled) {
|
|
839
587
|
event.preventDefault();
|
|
840
588
|
return;
|
|
841
589
|
}
|
|
842
590
|
externalOnClick?.(event);
|
|
843
591
|
},
|
|
844
592
|
onMouseDown(event) {
|
|
845
|
-
if (!
|
|
593
|
+
if (!disabled) {
|
|
846
594
|
externalOnMouseDown?.(event);
|
|
847
595
|
}
|
|
848
596
|
},
|
|
849
597
|
onKeyDown(event) {
|
|
850
|
-
if (
|
|
598
|
+
if (disabled) {
|
|
851
599
|
return;
|
|
852
600
|
}
|
|
853
601
|
makeEventPreventable(event);
|
|
@@ -891,7 +639,7 @@ function useButton(parameters = {}) {
|
|
|
891
639
|
}
|
|
892
640
|
},
|
|
893
641
|
onKeyUp(event) {
|
|
894
|
-
if (
|
|
642
|
+
if (disabled) {
|
|
895
643
|
return;
|
|
896
644
|
}
|
|
897
645
|
makeEventPreventable(event);
|
|
@@ -909,7 +657,7 @@ function useButton(parameters = {}) {
|
|
|
909
657
|
}
|
|
910
658
|
},
|
|
911
659
|
onPointerDown(event) {
|
|
912
|
-
if (
|
|
660
|
+
if (disabled) {
|
|
913
661
|
event.preventDefault();
|
|
914
662
|
return;
|
|
915
663
|
}
|
|
@@ -920,7 +668,7 @@ function useButton(parameters = {}) {
|
|
|
920
668
|
} : {
|
|
921
669
|
role: "button"
|
|
922
670
|
}, focusableWhenDisabledProps, otherExternalProps);
|
|
923
|
-
}, [
|
|
671
|
+
}, [disabled, focusableWhenDisabledProps, isCompositeItem, isNativeButton]);
|
|
924
672
|
const buttonRef = useStableCallback((element) => {
|
|
925
673
|
elementRef.current = element;
|
|
926
674
|
updateDisabled();
|
|
@@ -937,400 +685,502 @@ function isValidLinkElement(elem) {
|
|
|
937
685
|
return isHTMLElement(elem) && elem.tagName === "A" && Boolean(elem.href);
|
|
938
686
|
}
|
|
939
687
|
|
|
940
|
-
// node_modules/.pnpm/@base-ui+
|
|
941
|
-
|
|
942
|
-
target.addEventListener(type, listener, options);
|
|
943
|
-
return () => {
|
|
944
|
-
target.removeEventListener(type, listener, options);
|
|
945
|
-
};
|
|
946
|
-
}
|
|
688
|
+
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/internals/useRenderElement.mjs
|
|
689
|
+
import * as React9 from "react";
|
|
947
690
|
|
|
948
|
-
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
691
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/useMergedRefs.mjs
|
|
692
|
+
function useMergedRefs(a, b, c, d) {
|
|
693
|
+
const forkRef = useRefWithInit(createForkRef).current;
|
|
694
|
+
if (didChange(forkRef, a, b, c, d)) {
|
|
695
|
+
update(forkRef, [a, b, c, d]);
|
|
696
|
+
}
|
|
697
|
+
return forkRef.callback;
|
|
952
698
|
}
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
callbacks = [];
|
|
966
|
-
callbacksCount = 0;
|
|
967
|
-
nextId = 1;
|
|
968
|
-
startId = 1;
|
|
969
|
-
isScheduled = false;
|
|
970
|
-
tick = (timestamp) => {
|
|
971
|
-
this.isScheduled = false;
|
|
972
|
-
const currentCallbacks = this.callbacks;
|
|
973
|
-
const currentCallbacksCount = this.callbacksCount;
|
|
974
|
-
this.callbacks = [];
|
|
975
|
-
this.callbacksCount = 0;
|
|
976
|
-
this.startId = this.nextId;
|
|
977
|
-
if (currentCallbacksCount > 0) {
|
|
978
|
-
for (let i = 0; i < currentCallbacks.length; i += 1) {
|
|
979
|
-
currentCallbacks[i]?.(timestamp);
|
|
980
|
-
}
|
|
981
|
-
}
|
|
699
|
+
function useMergedRefsN(refs) {
|
|
700
|
+
const forkRef = useRefWithInit(createForkRef).current;
|
|
701
|
+
if (didChangeN(forkRef, refs)) {
|
|
702
|
+
update(forkRef, refs);
|
|
703
|
+
}
|
|
704
|
+
return forkRef.callback;
|
|
705
|
+
}
|
|
706
|
+
function createForkRef() {
|
|
707
|
+
return {
|
|
708
|
+
callback: null,
|
|
709
|
+
cleanup: null,
|
|
710
|
+
refs: []
|
|
982
711
|
};
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
712
|
+
}
|
|
713
|
+
function didChange(forkRef, a, b, c, d) {
|
|
714
|
+
return forkRef.refs[0] !== a || forkRef.refs[1] !== b || forkRef.refs[2] !== c || forkRef.refs[3] !== d;
|
|
715
|
+
}
|
|
716
|
+
function didChangeN(forkRef, newRefs) {
|
|
717
|
+
return forkRef.refs.length !== newRefs.length || forkRef.refs.some((ref, index) => ref !== newRefs[index]);
|
|
718
|
+
}
|
|
719
|
+
function update(forkRef, refs) {
|
|
720
|
+
forkRef.refs = refs;
|
|
721
|
+
if (refs.every((ref) => ref == null)) {
|
|
722
|
+
forkRef.callback = null;
|
|
723
|
+
return;
|
|
994
724
|
}
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
}
|
|
1000
|
-
if (this.callbacks[index] === null) {
|
|
1001
|
-
return;
|
|
725
|
+
forkRef.callback = (instance) => {
|
|
726
|
+
if (forkRef.cleanup) {
|
|
727
|
+
forkRef.cleanup();
|
|
728
|
+
forkRef.cleanup = null;
|
|
1002
729
|
}
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
730
|
+
if (instance != null) {
|
|
731
|
+
const cleanupCallbacks = Array(refs.length).fill(null);
|
|
732
|
+
for (let i = 0; i < refs.length; i += 1) {
|
|
733
|
+
const ref = refs[i];
|
|
734
|
+
if (ref == null) {
|
|
735
|
+
continue;
|
|
736
|
+
}
|
|
737
|
+
switch (typeof ref) {
|
|
738
|
+
case "function": {
|
|
739
|
+
const refCleanup = ref(instance);
|
|
740
|
+
if (typeof refCleanup === "function") {
|
|
741
|
+
cleanupCallbacks[i] = refCleanup;
|
|
742
|
+
}
|
|
743
|
+
break;
|
|
744
|
+
}
|
|
745
|
+
case "object": {
|
|
746
|
+
ref.current = instance;
|
|
747
|
+
break;
|
|
748
|
+
}
|
|
749
|
+
default:
|
|
750
|
+
}
|
|
751
|
+
}
|
|
752
|
+
forkRef.cleanup = () => {
|
|
753
|
+
for (let i = 0; i < refs.length; i += 1) {
|
|
754
|
+
const ref = refs[i];
|
|
755
|
+
if (ref == null) {
|
|
756
|
+
continue;
|
|
757
|
+
}
|
|
758
|
+
switch (typeof ref) {
|
|
759
|
+
case "function": {
|
|
760
|
+
const cleanupCallback = cleanupCallbacks[i];
|
|
761
|
+
if (typeof cleanupCallback === "function") {
|
|
762
|
+
cleanupCallback();
|
|
763
|
+
} else {
|
|
764
|
+
void ref(null);
|
|
765
|
+
}
|
|
766
|
+
break;
|
|
767
|
+
}
|
|
768
|
+
case "object": {
|
|
769
|
+
ref.current = null;
|
|
770
|
+
break;
|
|
771
|
+
}
|
|
772
|
+
default:
|
|
773
|
+
}
|
|
774
|
+
}
|
|
775
|
+
};
|
|
1033
776
|
}
|
|
1034
777
|
};
|
|
1035
|
-
disposeEffect = () => {
|
|
1036
|
-
return this.cancel;
|
|
1037
|
-
};
|
|
1038
|
-
};
|
|
1039
|
-
function useAnimationFrame() {
|
|
1040
|
-
const timeout = useRefWithInit(AnimationFrame.create).current;
|
|
1041
|
-
useOnMount(timeout.disposeEffect);
|
|
1042
|
-
return timeout;
|
|
1043
778
|
}
|
|
1044
779
|
|
|
1045
|
-
// node_modules/.pnpm/@base-ui+
|
|
1046
|
-
|
|
1047
|
-
__export(TransitionStatusDataAttributes_exports, {
|
|
1048
|
-
endingStyle: () => endingStyle,
|
|
1049
|
-
startingStyle: () => startingStyle
|
|
1050
|
-
});
|
|
1051
|
-
var startingStyle = "data-starting-style";
|
|
1052
|
-
var endingStyle = "data-ending-style";
|
|
780
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/getReactElementRef.mjs
|
|
781
|
+
import * as React8 from "react";
|
|
1053
782
|
|
|
1054
|
-
// node_modules/.pnpm/@base-ui+
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
return STARTING_HOOK;
|
|
1065
|
-
}
|
|
1066
|
-
if (value === "ending") {
|
|
1067
|
-
return ENDING_HOOK;
|
|
1068
|
-
}
|
|
783
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/reactVersion.mjs
|
|
784
|
+
import * as React7 from "react";
|
|
785
|
+
var majorVersion = parseInt(React7.version, 10);
|
|
786
|
+
function isReactVersionAtLeast(reactVersionToCheck) {
|
|
787
|
+
return majorVersion >= reactVersionToCheck;
|
|
788
|
+
}
|
|
789
|
+
|
|
790
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/getReactElementRef.mjs
|
|
791
|
+
function getReactElementRef(element) {
|
|
792
|
+
if (!/* @__PURE__ */ React8.isValidElement(element)) {
|
|
1069
793
|
return null;
|
|
1070
794
|
}
|
|
1071
|
-
|
|
795
|
+
const reactElement = element;
|
|
796
|
+
const propsWithRef = reactElement.props;
|
|
797
|
+
return (isReactVersionAtLeast(19) ? propsWithRef?.ref : reactElement.ref) ?? null;
|
|
798
|
+
}
|
|
1072
799
|
|
|
1073
|
-
// node_modules/.pnpm/@base-ui+
|
|
1074
|
-
|
|
800
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/warn.mjs
|
|
801
|
+
var warn = createLogOnce("warn", "Base UI");
|
|
1075
802
|
|
|
1076
|
-
// node_modules/.pnpm/@base-ui+
|
|
1077
|
-
function
|
|
1078
|
-
if (maybeRef == null) {
|
|
1079
|
-
return maybeRef;
|
|
1080
|
-
}
|
|
1081
|
-
return "current" in maybeRef ? maybeRef.current : maybeRef;
|
|
803
|
+
// node_modules/.pnpm/@base-ui+utils@0.4.0_@types+react@19.3.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/utils/empty.mjs
|
|
804
|
+
function NOOP() {
|
|
1082
805
|
}
|
|
806
|
+
var EMPTY_ARRAY = Object.freeze([]);
|
|
807
|
+
var EMPTY_OBJECT = Object.freeze({});
|
|
1083
808
|
|
|
1084
|
-
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/internals/
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
const
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
for (const callback of callbacks) {
|
|
1094
|
-
callback();
|
|
1095
|
-
}
|
|
1096
|
-
});
|
|
1097
|
-
});
|
|
1098
|
-
}
|
|
1099
|
-
pendingCallbacks.push(fn);
|
|
1100
|
-
}
|
|
1101
|
-
function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved = false, batch = false) {
|
|
1102
|
-
const frame = useAnimationFrame();
|
|
1103
|
-
return useStableCallback((fnToExecute, signal = null) => {
|
|
1104
|
-
frame.cancel();
|
|
1105
|
-
const element = resolveRef(elementOrRef);
|
|
1106
|
-
if (element == null) {
|
|
1107
|
-
return;
|
|
1108
|
-
}
|
|
1109
|
-
const resolvedElement = element;
|
|
1110
|
-
const done = () => {
|
|
1111
|
-
if (!batch) {
|
|
1112
|
-
ReactDOM.flushSync(fnToExecute);
|
|
1113
|
-
return;
|
|
809
|
+
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/internals/getStateAttributesProps.mjs
|
|
810
|
+
function getStateAttributesProps(state, customMapping) {
|
|
811
|
+
const props = {};
|
|
812
|
+
for (const key in state) {
|
|
813
|
+
const value = state[key];
|
|
814
|
+
if (customMapping?.hasOwnProperty(key)) {
|
|
815
|
+
const customProps = customMapping[key](value);
|
|
816
|
+
if (customProps != null) {
|
|
817
|
+
Object.assign(props, customProps);
|
|
1114
818
|
}
|
|
1115
|
-
|
|
1116
|
-
if (!signal?.aborted) {
|
|
1117
|
-
fnToExecute();
|
|
1118
|
-
}
|
|
1119
|
-
});
|
|
1120
|
-
};
|
|
1121
|
-
if (typeof resolvedElement.getAnimations !== "function" || globalThis.BASE_UI_ANIMATIONS_DISABLED) {
|
|
1122
|
-
fnToExecute();
|
|
1123
|
-
return;
|
|
1124
|
-
}
|
|
1125
|
-
function exec() {
|
|
1126
|
-
Promise.all(resolvedElement.getAnimations().map((animation) => animation.finished)).then(() => {
|
|
1127
|
-
if (!signal?.aborted) {
|
|
1128
|
-
done();
|
|
1129
|
-
}
|
|
1130
|
-
}, () => {
|
|
1131
|
-
if (signal?.aborted) {
|
|
1132
|
-
return;
|
|
1133
|
-
}
|
|
1134
|
-
const currentAnimations = resolvedElement.getAnimations();
|
|
1135
|
-
if (currentAnimations.some((animation) => animation.pending || animation.playState !== "finished")) {
|
|
1136
|
-
exec();
|
|
1137
|
-
return;
|
|
1138
|
-
}
|
|
1139
|
-
done();
|
|
1140
|
-
});
|
|
819
|
+
continue;
|
|
1141
820
|
}
|
|
1142
|
-
if (
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
return;
|
|
1147
|
-
}
|
|
1148
|
-
const attributeObserver = new MutationObserver(() => {
|
|
1149
|
-
if (!resolvedElement.hasAttribute(startingStyleAttribute)) {
|
|
1150
|
-
attributeObserver.disconnect();
|
|
1151
|
-
exec();
|
|
1152
|
-
}
|
|
1153
|
-
});
|
|
1154
|
-
attributeObserver.observe(resolvedElement, {
|
|
1155
|
-
attributes: true,
|
|
1156
|
-
attributeFilter: [startingStyleAttribute]
|
|
1157
|
-
});
|
|
1158
|
-
signal?.addEventListener("abort", () => attributeObserver.disconnect(), {
|
|
1159
|
-
once: true
|
|
1160
|
-
});
|
|
1161
|
-
return;
|
|
821
|
+
if (value === true) {
|
|
822
|
+
props[`data-${key.toLowerCase()}`] = "";
|
|
823
|
+
} else if (value) {
|
|
824
|
+
props[`data-${key.toLowerCase()}`] = value.toString();
|
|
1162
825
|
}
|
|
1163
|
-
|
|
1164
|
-
|
|
826
|
+
}
|
|
827
|
+
return props;
|
|
1165
828
|
}
|
|
1166
829
|
|
|
1167
|
-
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/
|
|
1168
|
-
|
|
1169
|
-
function
|
|
830
|
+
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/utils/resolveClassName.mjs
|
|
831
|
+
function resolveClassName(className, state) {
|
|
832
|
+
return typeof className === "function" ? className(state) : className;
|
|
833
|
+
}
|
|
834
|
+
|
|
835
|
+
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/utils/resolveStyle.mjs
|
|
836
|
+
function resolveStyle(style, state) {
|
|
837
|
+
return typeof style === "function" ? style(state) : style;
|
|
838
|
+
}
|
|
839
|
+
|
|
840
|
+
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/internals/useRenderElement.mjs
|
|
841
|
+
import { createElement as _createElement } from "react";
|
|
842
|
+
function useRenderElement(element, componentProps, params = {}) {
|
|
843
|
+
let renderProp = componentProps.render;
|
|
844
|
+
if (params.enabled !== false) {
|
|
845
|
+
renderProp = unwrapLazyRenderProp(renderProp);
|
|
846
|
+
}
|
|
847
|
+
const outProps = useRenderElementProps(componentProps, params, renderProp);
|
|
848
|
+
if (params.enabled === false) {
|
|
849
|
+
return null;
|
|
850
|
+
}
|
|
851
|
+
const state = params.state ?? EMPTY_OBJECT;
|
|
852
|
+
return evaluateRenderProp(element, renderProp, outProps, state);
|
|
853
|
+
}
|
|
854
|
+
function useRenderElementProps(componentProps, params, renderProp) {
|
|
1170
855
|
const {
|
|
1171
|
-
|
|
1172
|
-
|
|
856
|
+
className: classNameProp,
|
|
857
|
+
style: styleProp
|
|
858
|
+
} = componentProps;
|
|
859
|
+
const {
|
|
860
|
+
state = EMPTY_OBJECT,
|
|
1173
861
|
ref,
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
const
|
|
1179
|
-
|
|
862
|
+
props,
|
|
863
|
+
stateAttributesMapping,
|
|
864
|
+
enabled = true
|
|
865
|
+
} = params;
|
|
866
|
+
const className = enabled ? resolveClassName(classNameProp, state) : void 0;
|
|
867
|
+
const style = enabled ? resolveStyle(styleProp, state) : void 0;
|
|
868
|
+
const stateProps = enabled ? getStateAttributesProps(state, stateAttributesMapping) : EMPTY_OBJECT;
|
|
869
|
+
const resolvedProps = enabled && props ? resolveRenderFunctionProps(props) : void 0;
|
|
870
|
+
const outProps = enabled ? mergeObjects(stateProps, resolvedProps) ?? {} : EMPTY_OBJECT;
|
|
871
|
+
if (typeof document !== "undefined") {
|
|
1180
872
|
if (!enabled) {
|
|
1181
|
-
|
|
873
|
+
void useMergedRefs(null, null);
|
|
874
|
+
} else if (Array.isArray(ref)) {
|
|
875
|
+
outProps.ref = useMergedRefsN([outProps.ref, getReactElementRef(renderProp), ...ref]);
|
|
876
|
+
} else {
|
|
877
|
+
outProps.ref = useMergedRefs(outProps.ref, getReactElementRef(renderProp), ref);
|
|
1182
878
|
}
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
return
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
879
|
+
}
|
|
880
|
+
if (!enabled) {
|
|
881
|
+
return EMPTY_OBJECT;
|
|
882
|
+
}
|
|
883
|
+
if (className !== void 0) {
|
|
884
|
+
outProps.className = mergeClassNames(outProps.className, className);
|
|
885
|
+
}
|
|
886
|
+
if (style !== void 0) {
|
|
887
|
+
outProps.style = mergeObjects(outProps.style, style);
|
|
888
|
+
}
|
|
889
|
+
return outProps;
|
|
1189
890
|
}
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
891
|
+
function resolveRenderFunctionProps(props) {
|
|
892
|
+
if (Array.isArray(props)) {
|
|
893
|
+
return mergePropsN(props);
|
|
894
|
+
}
|
|
895
|
+
return mergeProps(void 0, props);
|
|
896
|
+
}
|
|
897
|
+
var REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
|
|
898
|
+
var COMPONENT_IDENTIFIER_PATTERN = /^[A-Z][A-Za-z0-9$]*$/;
|
|
899
|
+
var LOWERCASE_CHARACTER_PATTERN = /[a-z]/;
|
|
900
|
+
function unwrapLazyRenderProp(render) {
|
|
901
|
+
if (render?.$$typeof !== REACT_LAZY_TYPE) {
|
|
902
|
+
return render;
|
|
903
|
+
}
|
|
904
|
+
const unwrapped = React9.Children.toArray(render)[0];
|
|
905
|
+
return /* @__PURE__ */ React9.isValidElement(unwrapped) ? unwrapped : render;
|
|
906
|
+
}
|
|
907
|
+
function evaluateRenderProp(element, render, props, state) {
|
|
908
|
+
if (render) {
|
|
909
|
+
if (typeof render === "function") {
|
|
910
|
+
if (process.env.NODE_ENV !== "production") {
|
|
911
|
+
warnIfRenderPropLooksLikeComponent(render);
|
|
912
|
+
}
|
|
913
|
+
return render(props, state);
|
|
1201
914
|
}
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
return
|
|
915
|
+
const mergedProps = mergeProps(props, render.props);
|
|
916
|
+
mergedProps.ref = props.ref;
|
|
917
|
+
if (process.env.NODE_ENV !== "production") {
|
|
918
|
+
if (!/* @__PURE__ */ React9.isValidElement(render)) {
|
|
919
|
+
throw new Error(["Base UI: The `render` prop was provided an invalid React element as `React.isValidElement(render)` is `false`.", "A valid React element must be provided to the `render` prop because it is cloned with props to replace the default element.", "https://base-ui.com/r/invalid-render-prop"].join("\n"));
|
|
920
|
+
}
|
|
921
|
+
}
|
|
922
|
+
return /* @__PURE__ */ React9.cloneElement(render, mergedProps);
|
|
923
|
+
}
|
|
924
|
+
if (element) {
|
|
925
|
+
if (typeof element === "string") {
|
|
926
|
+
return renderTag(element, props);
|
|
927
|
+
}
|
|
928
|
+
}
|
|
929
|
+
throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: Render element or function are not defined." : formatErrorMessage_default(8));
|
|
930
|
+
}
|
|
931
|
+
function warnIfRenderPropLooksLikeComponent(renderFn) {
|
|
932
|
+
const functionName = renderFn.name;
|
|
933
|
+
if (functionName.length === 0) {
|
|
934
|
+
return;
|
|
935
|
+
}
|
|
936
|
+
if (!COMPONENT_IDENTIFIER_PATTERN.test(functionName)) {
|
|
937
|
+
return;
|
|
938
|
+
}
|
|
939
|
+
if (!LOWERCASE_CHARACTER_PATTERN.test(functionName)) {
|
|
940
|
+
return;
|
|
1210
941
|
}
|
|
1211
|
-
|
|
942
|
+
warn(`The \`render\` prop received a function named \`${functionName}\` that starts with an uppercase letter.`, "This usually means a React component was passed directly as `render={Component}`.", "Base UI calls `render` as a plain function, which can break the Rules of Hooks during reconciliation.", "If this is an intentional render callback, rename it to start with a lowercase letter.", "Use `render={<Component />}` or `render={(props) => <Component {...props} />}` instead.", "https://base-ui.com/r/invalid-render-prop");
|
|
943
|
+
}
|
|
944
|
+
function renderTag(Tag, props) {
|
|
945
|
+
if (Tag === "button") {
|
|
946
|
+
return /* @__PURE__ */ _createElement("button", {
|
|
947
|
+
type: "button",
|
|
948
|
+
...props,
|
|
949
|
+
key: props.key
|
|
950
|
+
});
|
|
951
|
+
}
|
|
952
|
+
if (Tag === "img") {
|
|
953
|
+
return /* @__PURE__ */ _createElement("img", {
|
|
954
|
+
alt: "",
|
|
955
|
+
...props,
|
|
956
|
+
key: props.key
|
|
957
|
+
});
|
|
958
|
+
}
|
|
959
|
+
return /* @__PURE__ */ React9.createElement(Tag, props);
|
|
1212
960
|
}
|
|
1213
961
|
|
|
1214
|
-
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/
|
|
1215
|
-
var
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
outsidePress: () => outsidePress,
|
|
1242
|
-
pointer: () => pointer,
|
|
1243
|
-
scrub: () => scrub,
|
|
1244
|
-
siblingOpen: () => siblingOpen,
|
|
1245
|
-
swipe: () => swipe,
|
|
1246
|
-
trackPress: () => trackPress,
|
|
1247
|
-
triggerFocus: () => triggerFocus,
|
|
1248
|
-
triggerHover: () => triggerHover,
|
|
1249
|
-
triggerPress: () => triggerPress,
|
|
1250
|
-
wheel: () => wheel,
|
|
1251
|
-
windowResize: () => windowResize
|
|
962
|
+
// node_modules/.pnpm/@base-ui+react@1.8.0_@date-fns+tz@1.5.0_@types+react@19.3.0_date-fns@4.4.0_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@base-ui/react/button/Button.mjs
|
|
963
|
+
var Button = /* @__PURE__ */ React10.forwardRef(function Button2(componentProps, forwardedRef) {
|
|
964
|
+
const {
|
|
965
|
+
render,
|
|
966
|
+
className,
|
|
967
|
+
disabled = false,
|
|
968
|
+
focusableWhenDisabled = false,
|
|
969
|
+
nativeButton = true,
|
|
970
|
+
style,
|
|
971
|
+
...elementProps
|
|
972
|
+
} = componentProps;
|
|
973
|
+
const {
|
|
974
|
+
getButtonProps,
|
|
975
|
+
buttonRef
|
|
976
|
+
} = useButton({
|
|
977
|
+
disabled,
|
|
978
|
+
focusableWhenDisabled,
|
|
979
|
+
native: nativeButton
|
|
980
|
+
});
|
|
981
|
+
const state = {
|
|
982
|
+
disabled
|
|
983
|
+
};
|
|
984
|
+
return useRenderElement("button", componentProps, {
|
|
985
|
+
state,
|
|
986
|
+
ref: [forwardedRef, buttonRef],
|
|
987
|
+
props: [elementProps, getButtonProps]
|
|
988
|
+
});
|
|
1252
989
|
});
|
|
1253
|
-
|
|
1254
|
-
var triggerPress = "trigger-press";
|
|
1255
|
-
var triggerHover = "trigger-hover";
|
|
1256
|
-
var triggerFocus = "trigger-focus";
|
|
1257
|
-
var outsidePress = "outside-press";
|
|
1258
|
-
var itemPress = "item-press";
|
|
1259
|
-
var closePress = "close-press";
|
|
1260
|
-
var linkPress = "link-press";
|
|
1261
|
-
var clearPress = "clear-press";
|
|
1262
|
-
var chipRemovePress = "chip-remove-press";
|
|
1263
|
-
var trackPress = "track-press";
|
|
1264
|
-
var incrementPress = "increment-press";
|
|
1265
|
-
var decrementPress = "decrement-press";
|
|
1266
|
-
var inputChange = "input-change";
|
|
1267
|
-
var inputClear = "input-clear";
|
|
1268
|
-
var inputBlur = "input-blur";
|
|
1269
|
-
var inputPaste = "input-paste";
|
|
1270
|
-
var inputPress = "input-press";
|
|
1271
|
-
var focusOut = "focus-out";
|
|
1272
|
-
var escapeKey = "escape-key";
|
|
1273
|
-
var closeWatcher = "close-watcher";
|
|
1274
|
-
var listNavigation = "list-navigation";
|
|
1275
|
-
var keyboard = "keyboard";
|
|
1276
|
-
var pointer = "pointer";
|
|
1277
|
-
var drag = "drag";
|
|
1278
|
-
var wheel = "wheel";
|
|
1279
|
-
var scrub = "scrub";
|
|
1280
|
-
var cancelOpen = "cancel-open";
|
|
1281
|
-
var siblingOpen = "sibling-open";
|
|
1282
|
-
var disabled = "disabled";
|
|
1283
|
-
var missing = "missing";
|
|
1284
|
-
var initial = "initial";
|
|
1285
|
-
var imperativeAction = "imperative-action";
|
|
1286
|
-
var swipe = "swipe";
|
|
1287
|
-
var windowResize = "window-resize";
|
|
990
|
+
if (process.env.NODE_ENV !== "production") Button.displayName = "Button";
|
|
1288
991
|
|
|
1289
|
-
//
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
992
|
+
// web/app/dist/server/assets/button-bov-QkCw.js
|
|
993
|
+
var buttonVariants = cva([
|
|
994
|
+
"group relative isolate inline-flex items-center justify-center outline-none cursor-pointer",
|
|
995
|
+
"transition-colors duration-80",
|
|
996
|
+
"disabled:opacity-50 disabled:pointer-events-none",
|
|
997
|
+
"focus-visible:ring-1 focus-visible:ring-[color:var(--focus-ring,#6B97FF)]"
|
|
998
|
+
], {
|
|
999
|
+
variants: {
|
|
1000
|
+
variant: {
|
|
1001
|
+
default: "text-background",
|
|
1002
|
+
primary: "text-background",
|
|
1003
|
+
secondary: "text-foreground",
|
|
1004
|
+
tertiary: "text-foreground",
|
|
1005
|
+
outline: "text-foreground",
|
|
1006
|
+
ghost: "text-muted-foreground hover:text-foreground",
|
|
1007
|
+
destructive: "text-destructive",
|
|
1008
|
+
link: "text-primary underline-offset-4 hover:underline"
|
|
1299
1009
|
},
|
|
1300
|
-
|
|
1301
|
-
|
|
1010
|
+
size: {
|
|
1011
|
+
default: "h-9 px-4 text-[13px] gap-1.5 [&_svg:not([class*='size-'])]:size-4",
|
|
1012
|
+
compact: "h-7 px-3 text-[12px] gap-1 [&_svg:not([class*='size-'])]:size-3.5",
|
|
1013
|
+
icon: "h-9 w-9 p-0 [&_svg]:h-4 [&_svg]:w-4",
|
|
1014
|
+
"icon-compact": "h-7 w-7 p-0 [&_svg]:h-3.5 [&_svg]:w-3.5"
|
|
1302
1015
|
},
|
|
1303
|
-
|
|
1304
|
-
|
|
1016
|
+
iconLeft: { true: "" },
|
|
1017
|
+
iconRight: { true: "" }
|
|
1018
|
+
},
|
|
1019
|
+
compoundVariants: [
|
|
1020
|
+
{
|
|
1021
|
+
size: "compact",
|
|
1022
|
+
iconLeft: true,
|
|
1023
|
+
className: "pl-2"
|
|
1305
1024
|
},
|
|
1306
|
-
|
|
1307
|
-
|
|
1025
|
+
{
|
|
1026
|
+
size: "default",
|
|
1027
|
+
iconLeft: true,
|
|
1028
|
+
className: "pl-3"
|
|
1308
1029
|
},
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
}
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
latest.next = value;
|
|
1319
|
-
useIsoLayoutEffect(latest.effect);
|
|
1320
|
-
return latest;
|
|
1321
|
-
}
|
|
1322
|
-
function createLatestRef(value) {
|
|
1323
|
-
const latest = {
|
|
1324
|
-
current: value,
|
|
1325
|
-
next: value,
|
|
1326
|
-
effect: () => {
|
|
1327
|
-
latest.current = latest.next;
|
|
1030
|
+
{
|
|
1031
|
+
size: "compact",
|
|
1032
|
+
iconRight: true,
|
|
1033
|
+
className: "pr-2"
|
|
1034
|
+
},
|
|
1035
|
+
{
|
|
1036
|
+
size: "default",
|
|
1037
|
+
iconRight: true,
|
|
1038
|
+
className: "pr-3"
|
|
1328
1039
|
}
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1040
|
+
],
|
|
1041
|
+
defaultVariants: {
|
|
1042
|
+
variant: "primary",
|
|
1043
|
+
size: "default"
|
|
1044
|
+
}
|
|
1045
|
+
});
|
|
1046
|
+
var legacySizeAliases = {
|
|
1047
|
+
xs: "compact",
|
|
1048
|
+
sm: "compact",
|
|
1049
|
+
md: "default",
|
|
1050
|
+
lg: "default",
|
|
1051
|
+
"icon-xs": "icon-compact",
|
|
1052
|
+
"icon-sm": "icon-compact",
|
|
1053
|
+
"icon-lg": "icon"
|
|
1054
|
+
};
|
|
1055
|
+
var bgVariants = {
|
|
1056
|
+
default: "[--btn-bg:var(--foreground)] group-hover:[--btn-bg:color-mix(in_oklab,var(--foreground)_90%,var(--background))] group-active:[--btn-bg:color-mix(in_oklab,var(--foreground)_80%,var(--background))] bg-[var(--btn-bg)] shadow-[0_0_0_1px_var(--btn-bg)] group-active:shadow-[0_0_0_0px_var(--btn-bg)]",
|
|
1057
|
+
primary: "[--btn-bg:var(--foreground)] group-hover:[--btn-bg:color-mix(in_oklab,var(--foreground)_90%,var(--background))] group-active:[--btn-bg:color-mix(in_oklab,var(--foreground)_80%,var(--background))] bg-[var(--btn-bg)] shadow-[0_0_0_1px_var(--btn-bg)] group-active:shadow-[0_0_0_0px_var(--btn-bg)]",
|
|
1058
|
+
secondary: "[--btn-bg:var(--accent)] group-hover:[--btn-bg:color-mix(in_oklab,var(--accent)_80%,var(--background))] group-active:[--btn-bg:var(--accent)] bg-[var(--btn-bg)] shadow-[0_0_0_1px_var(--btn-bg)] group-active:shadow-[0_0_0_0px_var(--btn-bg)]",
|
|
1059
|
+
tertiary: "bg-transparent shadow-[0_0_0_1px_var(--border),inset_0_0_0_0px_var(--border)] group-hover:bg-hover group-active:bg-active group-active:shadow-[0_0_0_0px_var(--border),inset_0_0_0_1px_var(--border)]",
|
|
1060
|
+
outline: "bg-transparent shadow-[0_0_0_1px_var(--border),inset_0_0_0_0px_var(--border)] group-hover:bg-hover group-active:bg-active group-active:shadow-[0_0_0_0px_var(--border),inset_0_0_0_1px_var(--border)]",
|
|
1061
|
+
ghost: "bg-transparent shadow-[0_0_0_1px_transparent] group-hover:bg-hover group-hover:shadow-[0_0_0_1px_var(--hover)] group-active:bg-active group-active:shadow-[0_0_0_0px_var(--active)]",
|
|
1062
|
+
destructive: "[--btn-bg:var(--destructive-light,#450A0A)] group-hover:[--btn-bg:color-mix(in_oklab,var(--destructive-light,#450A0A)_80%,var(--background))] group-active:[--btn-bg:var(--destructive-light,#450A0A)] bg-[var(--btn-bg)] shadow-[0_0_0_1px_var(--border)]",
|
|
1063
|
+
link: "bg-transparent shadow-none"
|
|
1064
|
+
};
|
|
1065
|
+
var activeBgVariants = {
|
|
1066
|
+
default: "[--btn-bg:color-mix(in_oklab,var(--foreground)_80%,var(--background))] bg-[var(--btn-bg)] shadow-[0_0_0_1px_var(--btn-bg)] group-active:shadow-[0_0_0_0px_var(--btn-bg)]",
|
|
1067
|
+
primary: "[--btn-bg:color-mix(in_oklab,var(--foreground)_80%,var(--background))] bg-[var(--btn-bg)] shadow-[0_0_0_1px_var(--btn-bg)] group-active:shadow-[0_0_0_0px_var(--btn-bg)]",
|
|
1068
|
+
secondary: "[--btn-bg:var(--accent)] bg-[var(--btn-bg)] shadow-[0_0_0_1px_var(--btn-bg)] group-active:shadow-[0_0_0_0px_var(--btn-bg)]",
|
|
1069
|
+
tertiary: "bg-active shadow-[0_0_0_1px_var(--border),inset_0_0_0_0px_var(--border)] group-active:shadow-[0_0_0_0px_var(--border),inset_0_0_0_1px_var(--border)]",
|
|
1070
|
+
outline: "bg-active shadow-[0_0_0_1px_var(--border),inset_0_0_0_0px_var(--border)] group-active:shadow-[0_0_0_0px_var(--border),inset_0_0_0_1px_var(--border)]",
|
|
1071
|
+
ghost: "bg-active shadow-[0_0_0_1px_var(--active)] group-active:shadow-[0_0_0_0px_var(--active)]",
|
|
1072
|
+
destructive: "bg-active shadow-[0_0_0_1px_var(--border)]",
|
|
1073
|
+
link: "bg-transparent shadow-none"
|
|
1074
|
+
};
|
|
1075
|
+
var Button$1 = forwardRef2(({ className, variant, size, asChild = false, loading = false, leadingIcon: LeadingIcon, trailingIcon: TrailingIcon, active = false, disabled, children, style, ...props }, ref) => {
|
|
1076
|
+
const asChildElement = asChild && isValidElement3(children) ? children : null;
|
|
1077
|
+
const label = asChildElement ? asChildElement.props.children : children;
|
|
1078
|
+
const resolvedSize = size ? legacySizeAliases[size] ?? size : "default";
|
|
1079
|
+
const isIconOnly = resolvedSize === "icon" || resolvedSize === "icon-compact";
|
|
1080
|
+
const isCompact = resolvedSize === "compact" || resolvedSize === "icon-compact";
|
|
1081
|
+
const iconSize = isCompact ? 14 : 16;
|
|
1082
|
+
const spinnerSizeClass = isCompact ? "h-7 w-7" : "h-9 w-9";
|
|
1083
|
+
const bgClass = active ? activeBgVariants[variant ?? "primary"] : bgVariants[variant ?? "primary"];
|
|
1084
|
+
const internals = /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
|
|
1085
|
+
"aria-hidden": true,
|
|
1086
|
+
className: cn("absolute inset-px rounded-[inherit] transition-[box-shadow,background-color] [transition-duration:180ms,80ms] [transition-timing-function:cubic-bezier(0.23,1,0.32,1),ease] group-active:[transition-duration:80ms,80ms]", bgClass)
|
|
1087
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
1088
|
+
className: "relative inline-flex min-w-0 items-center justify-center gap-[inherit]",
|
|
1089
|
+
children: loading ? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsxs("span", {
|
|
1090
|
+
className: "flex min-w-0 items-center justify-center gap-[inherit] opacity-0",
|
|
1091
|
+
children: [
|
|
1092
|
+
LeadingIcon && !isIconOnly && /* @__PURE__ */ jsx(LeadingIcon, {
|
|
1093
|
+
size: iconSize,
|
|
1094
|
+
strokeWidth: 2
|
|
1095
|
+
}),
|
|
1096
|
+
label,
|
|
1097
|
+
TrailingIcon && !isIconOnly && /* @__PURE__ */ jsx(TrailingIcon, {
|
|
1098
|
+
size: iconSize,
|
|
1099
|
+
strokeWidth: 2
|
|
1100
|
+
})
|
|
1101
|
+
]
|
|
1102
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
1103
|
+
className: "absolute inset-0 flex items-center justify-center",
|
|
1104
|
+
children: /* @__PURE__ */ jsx("svg", {
|
|
1105
|
+
className: spinnerSizeClass,
|
|
1106
|
+
viewBox: "0 0 24 24",
|
|
1107
|
+
fill: "none",
|
|
1108
|
+
children: /* @__PURE__ */ jsx("path", {
|
|
1109
|
+
d: "M 12 12 C 14 8.5 19 8.5 19 12 C 19 15.5 14 15.5 12 12 C 10 8.5 5 8.5 5 12 C 5 15.5 10 15.5 12 12 Z",
|
|
1110
|
+
stroke: "currentColor",
|
|
1111
|
+
strokeWidth: "1.125",
|
|
1112
|
+
strokeLinecap: "round",
|
|
1113
|
+
pathLength: "100",
|
|
1114
|
+
style: {
|
|
1115
|
+
strokeDasharray: "15 85",
|
|
1116
|
+
animation: "spinner-move 2s linear infinite, spinner-dash 4s ease-in-out infinite"
|
|
1117
|
+
}
|
|
1118
|
+
})
|
|
1119
|
+
})
|
|
1120
|
+
})] }) : isIconOnly ? /* @__PURE__ */ jsx("span", {
|
|
1121
|
+
className: "[&_svg]:stroke-[1.5] [&_svg]:transition-[stroke-width] [&_svg]:duration-80 group-hover:[&_svg]:stroke-[2]",
|
|
1122
|
+
children: label
|
|
1123
|
+
}) : /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
1124
|
+
LeadingIcon && /* @__PURE__ */ jsx(LeadingIcon, {
|
|
1125
|
+
size: iconSize,
|
|
1126
|
+
strokeWidth: 1.5,
|
|
1127
|
+
className: "transition-[stroke-width] duration-80 group-hover:stroke-[2]"
|
|
1128
|
+
}),
|
|
1129
|
+
/* @__PURE__ */ jsx("span", {
|
|
1130
|
+
className: "inline-flex items-center gap-[inherit] min-w-0 [text-box:trim-both_cap_alphabetic] [&_svg]:shrink-0",
|
|
1131
|
+
children: label
|
|
1132
|
+
}),
|
|
1133
|
+
TrailingIcon && /* @__PURE__ */ jsx(TrailingIcon, {
|
|
1134
|
+
size: iconSize,
|
|
1135
|
+
strokeWidth: 1.5,
|
|
1136
|
+
className: "transition-[stroke-width] duration-80 group-hover:stroke-[2]"
|
|
1137
|
+
})
|
|
1138
|
+
] })
|
|
1139
|
+
})] });
|
|
1140
|
+
const rootClassName = cn(buttonVariants({
|
|
1141
|
+
variant,
|
|
1142
|
+
size: resolvedSize,
|
|
1143
|
+
iconLeft: !isIconOnly && !!LeadingIcon,
|
|
1144
|
+
iconRight: !isIconOnly && !!TrailingIcon
|
|
1145
|
+
}), "rounded-lg", className);
|
|
1146
|
+
if (asChildElement) {
|
|
1147
|
+
const childProps = asChildElement.props;
|
|
1148
|
+
const composedProps = { ...props };
|
|
1149
|
+
for (const key of Object.keys(props)) {
|
|
1150
|
+
if (!/^on[A-Z]/.test(key)) continue;
|
|
1151
|
+
const parentHandler = props[key];
|
|
1152
|
+
const childHandler = childProps[key];
|
|
1153
|
+
if (typeof parentHandler !== "function" || typeof childHandler !== "function") continue;
|
|
1154
|
+
composedProps[key] = (event) => {
|
|
1155
|
+
childHandler(event);
|
|
1156
|
+
if (!event.defaultPrevented) parentHandler(event);
|
|
1157
|
+
};
|
|
1158
|
+
}
|
|
1159
|
+
return cloneElement2(asChildElement, {
|
|
1160
|
+
...composedProps,
|
|
1161
|
+
ref,
|
|
1162
|
+
"data-slot": "button",
|
|
1163
|
+
className: cn(rootClassName, childProps.className),
|
|
1164
|
+
style: {
|
|
1165
|
+
...style,
|
|
1166
|
+
...childProps.style
|
|
1167
|
+
}
|
|
1168
|
+
}, internals);
|
|
1169
|
+
}
|
|
1170
|
+
return /* @__PURE__ */ jsx(Button, {
|
|
1171
|
+
ref,
|
|
1172
|
+
"data-slot": "button",
|
|
1173
|
+
className: rootClassName,
|
|
1174
|
+
disabled: disabled || loading,
|
|
1175
|
+
style,
|
|
1176
|
+
...props,
|
|
1177
|
+
children: internals
|
|
1178
|
+
});
|
|
1179
|
+
});
|
|
1180
|
+
Button$1.displayName = "Button";
|
|
1332
1181
|
|
|
1333
1182
|
export {
|
|
1183
|
+
__exportAll,
|
|
1334
1184
|
getNodeName,
|
|
1335
1185
|
getWindow,
|
|
1336
1186
|
getDocumentElement,
|
|
@@ -1370,19 +1220,5 @@ export {
|
|
|
1370
1220
|
EMPTY_OBJECT,
|
|
1371
1221
|
resolveStyle,
|
|
1372
1222
|
useRenderElement,
|
|
1373
|
-
|
|
1374
|
-
addEventListener,
|
|
1375
|
-
AnimationFrame,
|
|
1376
|
-
useAnimationFrame,
|
|
1377
|
-
startingStyle,
|
|
1378
|
-
endingStyle,
|
|
1379
|
-
TransitionStatusDataAttributes_exports,
|
|
1380
|
-
transitionStatusMapping,
|
|
1381
|
-
resolveRef,
|
|
1382
|
-
useAnimationsFinished,
|
|
1383
|
-
useOpenChangeComplete,
|
|
1384
|
-
useId,
|
|
1385
|
-
reason_parts_exports,
|
|
1386
|
-
createChangeEventDetails,
|
|
1387
|
-
useValueAsRef
|
|
1223
|
+
Button$1
|
|
1388
1224
|
};
|