@stevederico/skateboard-ui 3.0.2 → 3.6.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/App.jsx +13 -13
- package/CHANGELOG.md +64 -0
- package/README.md +59 -65
- package/components/AuthOverlay.jsx +4 -4
- package/components/ProtectedRoute.jsx +1 -1
- package/components/ThemeToggle.jsx +1 -1
- package/components/UpgradeSheet.jsx +2 -2
- package/{core → components/core}/DynamicIcon.jsx +1 -1
- package/{layout → components/layout}/Header.jsx +4 -4
- package/{layout → components/layout}/Layout.jsx +1 -1
- package/{layout → components/layout}/Sidebar.jsx +2 -2
- package/{layout → components/layout}/TabBar.jsx +1 -1
- package/{views → components/views}/LandingView.jsx +5 -5
- package/{views → components/views}/NotFound.jsx +2 -2
- package/{views → components/views}/PaymentView.jsx +1 -1
- package/{views → components/views}/SettingsView.jsx +6 -6
- package/{views → components/views}/SignInView.jsx +6 -6
- package/{views → components/views}/SignOutView.jsx +1 -1
- package/{views → components/views}/SignUpView.jsx +6 -6
- package/{views → components/views}/TextView.jsx +3 -3
- package/hooks/useAuthGate.js +1 -1
- package/index.js +1 -1
- package/package.json +32 -50
- package/shadcn/lib/base-ui/LICENSE +21 -0
- package/shadcn/lib/base-ui/_chunk-01rqe37g.js +70 -0
- package/shadcn/lib/base-ui/_chunk-0h5sskyw.js +347 -0
- package/shadcn/lib/base-ui/_chunk-0xhx4g7r.js +57 -0
- package/shadcn/lib/base-ui/_chunk-1e6khrvm.js +218 -0
- package/shadcn/lib/base-ui/_chunk-1s41sngz.js +302 -0
- package/shadcn/lib/base-ui/_chunk-20rtfsz9.js +23 -0
- package/shadcn/lib/base-ui/_chunk-2tyt8f8r.js +6034 -0
- package/shadcn/lib/base-ui/_chunk-3f31ka8n.js +11 -0
- package/shadcn/lib/base-ui/_chunk-3h6zpchb.js +89 -0
- package/shadcn/lib/base-ui/_chunk-4s0k3h7t.js +114 -0
- package/shadcn/lib/base-ui/_chunk-502wngfc.js +598 -0
- package/shadcn/lib/base-ui/_chunk-536jvgeq.js +68 -0
- package/shadcn/lib/base-ui/_chunk-611pz5sm.js +10 -0
- package/shadcn/lib/base-ui/_chunk-65zw5gs2.js +15 -0
- package/shadcn/lib/base-ui/_chunk-6b17g8t7.js +34 -0
- package/shadcn/lib/base-ui/_chunk-6xevjepc.js +15 -0
- package/shadcn/lib/base-ui/_chunk-71zm6zgv.js +16 -0
- package/shadcn/lib/base-ui/_chunk-7fmjymvh.js +32 -0
- package/shadcn/lib/base-ui/_chunk-7jjzay8b.js +176 -0
- package/shadcn/lib/base-ui/_chunk-7v1t86x1.js +43 -0
- package/shadcn/lib/base-ui/_chunk-85vrgzwr.js +227 -0
- package/shadcn/lib/base-ui/_chunk-8jz3hb7q.js +9 -0
- package/shadcn/lib/base-ui/_chunk-8kh3xk78.js +35 -0
- package/shadcn/lib/base-ui/_chunk-97tas84n.js +67 -0
- package/shadcn/lib/base-ui/_chunk-9nyxkvte.js +13 -0
- package/shadcn/lib/base-ui/_chunk-a8fwg9d0.js +52 -0
- package/shadcn/lib/base-ui/_chunk-agc6ew3g.js +29 -0
- package/shadcn/lib/base-ui/_chunk-aqwsk46c.js +64 -0
- package/shadcn/lib/base-ui/_chunk-atd5kq5q.js +803 -0
- package/shadcn/lib/base-ui/_chunk-atnkefgd.js +104 -0
- package/shadcn/lib/base-ui/_chunk-b40erthe.js +7 -0
- package/shadcn/lib/base-ui/_chunk-b5jsqt97.js +50 -0
- package/shadcn/lib/base-ui/_chunk-bk7n9s9e.js +15 -0
- package/shadcn/lib/base-ui/_chunk-c3572b5x.js +19 -0
- package/shadcn/lib/base-ui/_chunk-cwr896nf.js +25 -0
- package/shadcn/lib/base-ui/_chunk-drfb9kp2.js +27 -0
- package/shadcn/lib/base-ui/_chunk-ds8fnpjj.js +0 -0
- package/shadcn/lib/base-ui/_chunk-ek863ta9.js +82 -0
- package/shadcn/lib/base-ui/_chunk-f09cp81f.js +12 -0
- package/shadcn/lib/base-ui/_chunk-f5d01bp9.js +0 -0
- package/shadcn/lib/base-ui/_chunk-f9tgee1q.js +21 -0
- package/shadcn/lib/base-ui/_chunk-fch5cba8.js +84 -0
- package/shadcn/lib/base-ui/_chunk-gfce3j3z.js +18 -0
- package/shadcn/lib/base-ui/_chunk-ha06w2pp.js +2391 -0
- package/shadcn/lib/base-ui/_chunk-hzgetm70.js +23 -0
- package/shadcn/lib/base-ui/_chunk-j0eqdjta.js +39 -0
- package/shadcn/lib/base-ui/_chunk-k1e5fvcj.js +48 -0
- package/shadcn/lib/base-ui/_chunk-k4mc2kan.js +81 -0
- package/shadcn/lib/base-ui/_chunk-kfz96xv1.js +128 -0
- package/shadcn/lib/base-ui/_chunk-m45547cc.js +15 -0
- package/shadcn/lib/base-ui/_chunk-mbn76q14.js +184 -0
- package/shadcn/lib/base-ui/_chunk-mvv30fkv.js +9 -0
- package/shadcn/lib/base-ui/_chunk-mznt6ktj.js +33 -0
- package/shadcn/lib/base-ui/_chunk-n7dnqnbw.js +7 -0
- package/shadcn/lib/base-ui/_chunk-nya71ccw.js +546 -0
- package/shadcn/lib/base-ui/_chunk-p6qynd6r.js +146 -0
- package/shadcn/lib/base-ui/_chunk-q3nee19r.js +323 -0
- package/shadcn/lib/base-ui/_chunk-q7yw9mz4.js +385 -0
- package/shadcn/lib/base-ui/_chunk-qce0xt57.js +107 -0
- package/shadcn/lib/base-ui/_chunk-qgzhcjsj.js +14 -0
- package/shadcn/lib/base-ui/_chunk-qt6r015s.js +38 -0
- package/shadcn/lib/base-ui/_chunk-r0vsdknk.js +4 -0
- package/shadcn/lib/base-ui/_chunk-sx6vkz01.js +150 -0
- package/shadcn/lib/base-ui/_chunk-szcr6mhk.js +6 -0
- package/shadcn/lib/base-ui/_chunk-t7j3rbpv.js +67 -0
- package/shadcn/lib/base-ui/_chunk-tmfmrzwe.js +39 -0
- package/shadcn/lib/base-ui/_chunk-v92ycsfj.js +9 -0
- package/shadcn/lib/base-ui/_chunk-vdc01ss3.js +6 -0
- package/shadcn/lib/base-ui/_chunk-vjbnhhg1.js +26 -0
- package/shadcn/lib/base-ui/_chunk-w68yxg9d.js +21 -0
- package/shadcn/lib/base-ui/_chunk-wana68v3.js +477 -0
- package/shadcn/lib/base-ui/_chunk-wtw745qd.js +12 -0
- package/shadcn/lib/base-ui/_chunk-xb7ph1ka.js +6 -0
- package/shadcn/lib/base-ui/_chunk-xfagb0fq.js +28 -0
- package/shadcn/lib/base-ui/_chunk-xxhqanfd.js +16 -0
- package/shadcn/lib/base-ui/_chunk-y887e46p.js +15 -0
- package/shadcn/lib/base-ui/_chunk-ymj1dpqg.js +14 -0
- package/shadcn/lib/base-ui/accordion.js +650 -0
- package/shadcn/lib/base-ui/alert-dialog.js +138 -0
- package/shadcn/lib/base-ui/avatar.js +235 -0
- package/shadcn/lib/base-ui/button.js +52 -0
- package/shadcn/lib/base-ui/checkbox.js +454 -0
- package/shadcn/lib/base-ui/collapsible.js +283 -0
- package/shadcn/lib/base-ui/context-menu.js +324 -0
- package/shadcn/lib/base-ui/dialog.js +71 -0
- package/shadcn/lib/base-ui/input.js +1028 -0
- package/shadcn/lib/base-ui/menu.js +61 -0
- package/shadcn/lib/base-ui/menubar.js +157 -0
- package/shadcn/lib/base-ui/merge-props.js +15 -0
- package/shadcn/lib/base-ui/navigation-menu.js +1854 -0
- package/shadcn/lib/base-ui/popover.js +1090 -0
- package/shadcn/lib/base-ui/preview-card.js +709 -0
- package/shadcn/lib/base-ui/progress.js +278 -0
- package/shadcn/lib/base-ui/radio-group.js +247 -0
- package/shadcn/lib/base-ui/radio.js +382 -0
- package/shadcn/lib/base-ui/scroll-area.js +1061 -0
- package/shadcn/lib/base-ui/select.js +2438 -0
- package/shadcn/lib/base-ui/separator.js +11 -0
- package/shadcn/lib/base-ui/slider.js +1595 -0
- package/shadcn/lib/base-ui/switch.js +333 -0
- package/shadcn/lib/base-ui/tabs.js +892 -0
- package/shadcn/lib/base-ui/toggle-group.js +152 -0
- package/shadcn/lib/base-ui/toggle.js +133 -0
- package/shadcn/lib/base-ui/tooltip.js +791 -0
- package/shadcn/lib/base-ui/use-render.js +15 -0
- package/shadcn/lib/tailwind-merge.js +3312 -0
- package/shadcn/lib/utils.js +1 -1
- package/shadcn/ui/accordion.jsx +1 -1
- package/shadcn/ui/alert-dialog.jsx +1 -1
- package/shadcn/ui/avatar.jsx +1 -1
- package/shadcn/ui/badge.jsx +2 -2
- package/shadcn/ui/breadcrumb.jsx +2 -2
- package/shadcn/ui/button-group.jsx +2 -2
- package/shadcn/ui/button.jsx +1 -1
- package/shadcn/ui/calendar.jsx +1 -1
- package/shadcn/ui/checkbox.jsx +1 -1
- package/shadcn/ui/collapsible.jsx +1 -1
- package/shadcn/ui/command.jsx +1 -1
- package/shadcn/ui/context-menu.jsx +1 -1
- package/shadcn/ui/dialog.jsx +1 -1
- package/shadcn/ui/drawer.jsx +176 -74
- package/shadcn/ui/dropdown-menu.jsx +1 -1
- package/shadcn/ui/hover-card.jsx +1 -1
- package/shadcn/ui/input.jsx +1 -1
- package/shadcn/ui/item.jsx +2 -2
- package/shadcn/ui/menubar.jsx +2 -2
- package/shadcn/ui/navigation-menu.jsx +1 -1
- package/shadcn/ui/popover.jsx +1 -1
- package/shadcn/ui/progress.jsx +1 -1
- package/shadcn/ui/radio-group.jsx +2 -2
- package/shadcn/ui/scroll-area.jsx +1 -1
- package/shadcn/ui/select.jsx +1 -1
- package/shadcn/ui/separator.jsx +1 -1
- package/shadcn/ui/sheet.jsx +1 -1
- package/shadcn/ui/sidebar.jsx +3 -3
- package/shadcn/ui/slider.jsx +1 -1
- package/shadcn/ui/switch.jsx +1 -1
- package/shadcn/ui/tabs.jsx +1 -1
- package/shadcn/ui/toggle-group.jsx +2 -2
- package/shadcn/ui/toggle.jsx +1 -1
- package/shadcn/ui/tooltip.jsx +1 -1
- package/styles.css +31 -0
- package/MIGRATION.md +0 -230
- package/shadcn/ui/carousel.jsx +0 -195
- package/shadcn/ui/chart.jsx +0 -312
- package/shadcn/ui/resizable.jsx +0 -47
- /package/{core → components/core}/Calendar.jsx +0 -0
- /package/{core → components/core}/Command.jsx +0 -0
- /package/{core → components/core}/Context.jsx +0 -0
- /package/{core → components/core}/ThemeProvider.jsx +0 -0
- /package/{core → components/core}/Utilities.js +0 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// node_modules/.deno/@base-ui+utils@0.2.8/node_modules/@base-ui/utils/esm/visuallyHidden.js
|
|
2
|
+
var visuallyHiddenBase = {
|
|
3
|
+
clipPath: "inset(50%)",
|
|
4
|
+
overflow: "hidden",
|
|
5
|
+
whiteSpace: "nowrap",
|
|
6
|
+
border: 0,
|
|
7
|
+
padding: 0,
|
|
8
|
+
width: 1,
|
|
9
|
+
height: 1,
|
|
10
|
+
margin: -1
|
|
11
|
+
};
|
|
12
|
+
var visuallyHidden = {
|
|
13
|
+
...visuallyHiddenBase,
|
|
14
|
+
position: "fixed",
|
|
15
|
+
top: 0,
|
|
16
|
+
left: 0
|
|
17
|
+
};
|
|
18
|
+
var visuallyHiddenInput = {
|
|
19
|
+
...visuallyHiddenBase,
|
|
20
|
+
position: "absolute"
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export { visuallyHidden, visuallyHiddenInput };
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import {
|
|
2
|
+
useCompositeItem
|
|
3
|
+
} from "./_chunk-b5jsqt97.js";
|
|
4
|
+
import {
|
|
5
|
+
EMPTY_ARRAY,
|
|
6
|
+
EMPTY_OBJECT,
|
|
7
|
+
useRenderElement
|
|
8
|
+
} from "./_chunk-1s41sngz.js";
|
|
9
|
+
|
|
10
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/internals/composite/item/CompositeItem.js
|
|
11
|
+
"use client";
|
|
12
|
+
function CompositeItem(componentProps) {
|
|
13
|
+
const {
|
|
14
|
+
render,
|
|
15
|
+
className,
|
|
16
|
+
style,
|
|
17
|
+
state = EMPTY_OBJECT,
|
|
18
|
+
props = EMPTY_ARRAY,
|
|
19
|
+
refs = EMPTY_ARRAY,
|
|
20
|
+
metadata,
|
|
21
|
+
stateAttributesMapping,
|
|
22
|
+
tag = "div",
|
|
23
|
+
...elementProps
|
|
24
|
+
} = componentProps;
|
|
25
|
+
const {
|
|
26
|
+
compositeProps,
|
|
27
|
+
compositeRef
|
|
28
|
+
} = useCompositeItem({
|
|
29
|
+
metadata
|
|
30
|
+
});
|
|
31
|
+
return useRenderElement(tag, componentProps, {
|
|
32
|
+
state,
|
|
33
|
+
ref: [...refs, compositeRef],
|
|
34
|
+
props: [compositeProps, ...props, elementProps],
|
|
35
|
+
stateAttributesMapping
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export { CompositeItem };
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import {
|
|
2
|
+
clamp
|
|
3
|
+
} from "./_chunk-szcr6mhk.js";
|
|
4
|
+
|
|
5
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/utils/styles.js
|
|
6
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
+
var DISABLE_SCROLLBAR_CLASS_NAME = "base-ui-disable-scrollbar";
|
|
8
|
+
var styleDisableScrollbar = {
|
|
9
|
+
className: DISABLE_SCROLLBAR_CLASS_NAME,
|
|
10
|
+
getElement(nonce) {
|
|
11
|
+
return /* @__PURE__ */ _jsx("style", {
|
|
12
|
+
nonce,
|
|
13
|
+
href: DISABLE_SCROLLBAR_CLASS_NAME,
|
|
14
|
+
precedence: "base-ui:low",
|
|
15
|
+
children: `.${DISABLE_SCROLLBAR_CLASS_NAME}{scrollbar-width:none}.${DISABLE_SCROLLBAR_CLASS_NAME}::-webkit-scrollbar{display:none}`
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
if (true)
|
|
20
|
+
styleDisableScrollbar.getElement.displayName = "styleDisableScrollbar.getElement";
|
|
21
|
+
|
|
22
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/utils/scrollEdges.js
|
|
23
|
+
var SCROLL_EDGE_TOLERANCE_PX = 1;
|
|
24
|
+
function getMaxScrollOffset(scrollSize, clientSize) {
|
|
25
|
+
return Math.max(0, scrollSize - clientSize);
|
|
26
|
+
}
|
|
27
|
+
function normalizeScrollOffset(value, max) {
|
|
28
|
+
if (max <= 0) {
|
|
29
|
+
return 0;
|
|
30
|
+
}
|
|
31
|
+
const clamped = clamp(value, 0, max);
|
|
32
|
+
const startDistance = clamped;
|
|
33
|
+
const endDistance = max - clamped;
|
|
34
|
+
const withinStartTolerance = startDistance <= SCROLL_EDGE_TOLERANCE_PX;
|
|
35
|
+
const withinEndTolerance = endDistance <= SCROLL_EDGE_TOLERANCE_PX;
|
|
36
|
+
if (withinStartTolerance && withinEndTolerance) {
|
|
37
|
+
return startDistance <= endDistance ? 0 : max;
|
|
38
|
+
}
|
|
39
|
+
if (withinStartTolerance) {
|
|
40
|
+
return 0;
|
|
41
|
+
}
|
|
42
|
+
if (withinEndTolerance) {
|
|
43
|
+
return max;
|
|
44
|
+
}
|
|
45
|
+
return clamped;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export { styleDisableScrollbar, SCROLL_EDGE_TOLERANCE_PX, getMaxScrollOffset, normalizeScrollOffset };
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import {
|
|
2
|
+
useLabelableContext
|
|
3
|
+
} from "./_chunk-kfz96xv1.js";
|
|
4
|
+
import {
|
|
5
|
+
useBaseUiId
|
|
6
|
+
} from "./_chunk-8kh3xk78.js";
|
|
7
|
+
import {
|
|
8
|
+
isElement
|
|
9
|
+
} from "./_chunk-sx6vkz01.js";
|
|
10
|
+
import {
|
|
11
|
+
useStableCallback
|
|
12
|
+
} from "./_chunk-mznt6ktj.js";
|
|
13
|
+
import {
|
|
14
|
+
useIsoLayoutEffect
|
|
15
|
+
} from "./_chunk-b40erthe.js";
|
|
16
|
+
import {
|
|
17
|
+
NOOP,
|
|
18
|
+
useRefWithInit
|
|
19
|
+
} from "./_chunk-1s41sngz.js";
|
|
20
|
+
|
|
21
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/internals/labelable-provider/useLabelableId.js
|
|
22
|
+
import * as React from "react";
|
|
23
|
+
"use client";
|
|
24
|
+
function useLabelableId(params = {}) {
|
|
25
|
+
const {
|
|
26
|
+
id,
|
|
27
|
+
implicit = false,
|
|
28
|
+
controlRef
|
|
29
|
+
} = params;
|
|
30
|
+
const {
|
|
31
|
+
controlId,
|
|
32
|
+
registerControlId
|
|
33
|
+
} = useLabelableContext();
|
|
34
|
+
const defaultId = useBaseUiId(id);
|
|
35
|
+
const controlIdForEffect = implicit ? controlId : undefined;
|
|
36
|
+
const controlSourceRef = useRefWithInit(() => Symbol("labelable-control"));
|
|
37
|
+
const hasRegisteredRef = React.useRef(false);
|
|
38
|
+
const hadExplicitIdRef = React.useRef(id != null);
|
|
39
|
+
const unregisterControlId = useStableCallback(() => {
|
|
40
|
+
if (!hasRegisteredRef.current || registerControlId === NOOP) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
hasRegisteredRef.current = false;
|
|
44
|
+
registerControlId(controlSourceRef.current, undefined);
|
|
45
|
+
});
|
|
46
|
+
useIsoLayoutEffect(() => {
|
|
47
|
+
if (registerControlId === NOOP) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
let nextId;
|
|
51
|
+
if (implicit) {
|
|
52
|
+
const elem = controlRef?.current;
|
|
53
|
+
if (isElement(elem) && elem.closest("label") != null) {
|
|
54
|
+
nextId = id ?? null;
|
|
55
|
+
} else {
|
|
56
|
+
nextId = controlIdForEffect ?? defaultId;
|
|
57
|
+
}
|
|
58
|
+
} else if (id != null) {
|
|
59
|
+
hadExplicitIdRef.current = true;
|
|
60
|
+
nextId = id;
|
|
61
|
+
} else if (hadExplicitIdRef.current) {
|
|
62
|
+
nextId = defaultId;
|
|
63
|
+
} else {
|
|
64
|
+
unregisterControlId();
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
if (nextId === undefined) {
|
|
68
|
+
unregisterControlId();
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
hasRegisteredRef.current = true;
|
|
72
|
+
registerControlId(controlSourceRef.current, nextId);
|
|
73
|
+
return;
|
|
74
|
+
}, [id, controlRef, controlIdForEffect, registerControlId, implicit, defaultId, controlSourceRef, unregisterControlId]);
|
|
75
|
+
React.useEffect(() => {
|
|
76
|
+
return unregisterControlId;
|
|
77
|
+
}, [unregisterControlId]);
|
|
78
|
+
return controlId ?? defaultId;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export { useLabelableId };
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import {
|
|
2
|
+
EMPTY_OBJECT,
|
|
3
|
+
NOOP
|
|
4
|
+
} from "./_chunk-1s41sngz.js";
|
|
5
|
+
|
|
6
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/field/control/FieldControlDataAttributes.js
|
|
7
|
+
var FieldControlDataAttributes = /* @__PURE__ */ function(FieldControlDataAttributes2) {
|
|
8
|
+
FieldControlDataAttributes2["disabled"] = "data-disabled";
|
|
9
|
+
FieldControlDataAttributes2["valid"] = "data-valid";
|
|
10
|
+
FieldControlDataAttributes2["invalid"] = "data-invalid";
|
|
11
|
+
FieldControlDataAttributes2["touched"] = "data-touched";
|
|
12
|
+
FieldControlDataAttributes2["dirty"] = "data-dirty";
|
|
13
|
+
FieldControlDataAttributes2["filled"] = "data-filled";
|
|
14
|
+
FieldControlDataAttributes2["focused"] = "data-focused";
|
|
15
|
+
return FieldControlDataAttributes2;
|
|
16
|
+
}({});
|
|
17
|
+
|
|
18
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/internals/field-constants/constants.js
|
|
19
|
+
var DEFAULT_VALIDITY_STATE = {
|
|
20
|
+
badInput: false,
|
|
21
|
+
customError: false,
|
|
22
|
+
patternMismatch: false,
|
|
23
|
+
rangeOverflow: false,
|
|
24
|
+
rangeUnderflow: false,
|
|
25
|
+
stepMismatch: false,
|
|
26
|
+
tooLong: false,
|
|
27
|
+
tooShort: false,
|
|
28
|
+
typeMismatch: false,
|
|
29
|
+
valid: null,
|
|
30
|
+
valueMissing: false
|
|
31
|
+
};
|
|
32
|
+
var DEFAULT_FIELD_STATE_ATTRIBUTES = {
|
|
33
|
+
valid: null,
|
|
34
|
+
touched: false,
|
|
35
|
+
dirty: false,
|
|
36
|
+
filled: false,
|
|
37
|
+
focused: false
|
|
38
|
+
};
|
|
39
|
+
var DEFAULT_FIELD_ROOT_STATE = {
|
|
40
|
+
disabled: false,
|
|
41
|
+
...DEFAULT_FIELD_STATE_ATTRIBUTES
|
|
42
|
+
};
|
|
43
|
+
var fieldValidityMapping = {
|
|
44
|
+
valid(value) {
|
|
45
|
+
if (value === null) {
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
if (value) {
|
|
49
|
+
return {
|
|
50
|
+
[FieldControlDataAttributes.valid]: ""
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
return {
|
|
54
|
+
[FieldControlDataAttributes.invalid]: ""
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/internals/field-root-context/FieldRootContext.js
|
|
60
|
+
import * as React from "react";
|
|
61
|
+
"use client";
|
|
62
|
+
var FieldRootContext = /* @__PURE__ */ React.createContext({
|
|
63
|
+
invalid: undefined,
|
|
64
|
+
name: undefined,
|
|
65
|
+
validityData: {
|
|
66
|
+
state: DEFAULT_VALIDITY_STATE,
|
|
67
|
+
errors: [],
|
|
68
|
+
error: "",
|
|
69
|
+
value: "",
|
|
70
|
+
initialValue: null
|
|
71
|
+
},
|
|
72
|
+
setValidityData: NOOP,
|
|
73
|
+
disabled: undefined,
|
|
74
|
+
touched: DEFAULT_FIELD_STATE_ATTRIBUTES.touched,
|
|
75
|
+
setTouched: NOOP,
|
|
76
|
+
dirty: DEFAULT_FIELD_STATE_ATTRIBUTES.dirty,
|
|
77
|
+
setDirty: NOOP,
|
|
78
|
+
filled: DEFAULT_FIELD_STATE_ATTRIBUTES.filled,
|
|
79
|
+
setFilled: NOOP,
|
|
80
|
+
focused: DEFAULT_FIELD_STATE_ATTRIBUTES.focused,
|
|
81
|
+
setFocused: NOOP,
|
|
82
|
+
validate: () => null,
|
|
83
|
+
validationMode: "onSubmit",
|
|
84
|
+
validationDebounceTime: 0,
|
|
85
|
+
shouldValidateOnChange: () => false,
|
|
86
|
+
state: DEFAULT_FIELD_ROOT_STATE,
|
|
87
|
+
markedDirtyRef: {
|
|
88
|
+
current: false
|
|
89
|
+
},
|
|
90
|
+
registerFieldControl: NOOP,
|
|
91
|
+
validation: {
|
|
92
|
+
getValidationProps: (props = EMPTY_OBJECT) => props,
|
|
93
|
+
getInputValidationProps: (props = EMPTY_OBJECT) => props,
|
|
94
|
+
inputRef: {
|
|
95
|
+
current: null
|
|
96
|
+
},
|
|
97
|
+
commit: async () => {}
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
if (true)
|
|
101
|
+
FieldRootContext.displayName = "FieldRootContext";
|
|
102
|
+
function useFieldRootContext(optional = true) {
|
|
103
|
+
const context = React.useContext(FieldRootContext);
|
|
104
|
+
if (context.setValidityData === NOOP && !optional) {
|
|
105
|
+
throw new Error("Base UI: FieldRootContext is missing. Field parts must be placed within <Field.Root>.");
|
|
106
|
+
}
|
|
107
|
+
return context;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/internals/labelable-provider/LabelableContext.js
|
|
111
|
+
import * as React2 from "react";
|
|
112
|
+
"use client";
|
|
113
|
+
var LabelableContext = /* @__PURE__ */ React2.createContext({
|
|
114
|
+
controlId: undefined,
|
|
115
|
+
registerControlId: NOOP,
|
|
116
|
+
labelId: undefined,
|
|
117
|
+
setLabelId: NOOP,
|
|
118
|
+
messageIds: [],
|
|
119
|
+
setMessageIds: NOOP,
|
|
120
|
+
getDescriptionProps: (externalProps) => externalProps
|
|
121
|
+
});
|
|
122
|
+
if (true)
|
|
123
|
+
LabelableContext.displayName = "LabelableContext";
|
|
124
|
+
function useLabelableContext() {
|
|
125
|
+
return React2.useContext(LabelableContext);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
export { DEFAULT_VALIDITY_STATE, fieldValidityMapping, FieldRootContext, useFieldRootContext, LabelableContext, useLabelableContext };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/toggle-group/ToggleGroupContext.js
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
"use client";
|
|
4
|
+
var ToggleGroupContext = /* @__PURE__ */ React.createContext(undefined);
|
|
5
|
+
if (true)
|
|
6
|
+
ToggleGroupContext.displayName = "ToggleGroupContext";
|
|
7
|
+
function useToggleGroupContext(optional = true) {
|
|
8
|
+
const context = React.useContext(ToggleGroupContext);
|
|
9
|
+
if (context === undefined && !optional) {
|
|
10
|
+
throw new Error("Base UI: ToggleGroupContext is missing. ToggleGroup parts must be placed within <ToggleGroup>.");
|
|
11
|
+
}
|
|
12
|
+
return context;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export { ToggleGroupContext, useToggleGroupContext };
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import {
|
|
2
|
+
resolveRef
|
|
3
|
+
} from "./_chunk-v92ycsfj.js";
|
|
4
|
+
import {
|
|
5
|
+
AnimationFrame,
|
|
6
|
+
useAnimationFrame
|
|
7
|
+
} from "./_chunk-3h6zpchb.js";
|
|
8
|
+
import {
|
|
9
|
+
useStableCallback
|
|
10
|
+
} from "./_chunk-mznt6ktj.js";
|
|
11
|
+
import {
|
|
12
|
+
useIsoLayoutEffect
|
|
13
|
+
} from "./_chunk-b40erthe.js";
|
|
14
|
+
|
|
15
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/internals/stateAttributesMapping.js
|
|
16
|
+
var TransitionStatusDataAttributes = /* @__PURE__ */ function(TransitionStatusDataAttributes2) {
|
|
17
|
+
TransitionStatusDataAttributes2["startingStyle"] = "data-starting-style";
|
|
18
|
+
TransitionStatusDataAttributes2["endingStyle"] = "data-ending-style";
|
|
19
|
+
return TransitionStatusDataAttributes2;
|
|
20
|
+
}({});
|
|
21
|
+
var STARTING_HOOK = {
|
|
22
|
+
[TransitionStatusDataAttributes.startingStyle]: ""
|
|
23
|
+
};
|
|
24
|
+
var ENDING_HOOK = {
|
|
25
|
+
[TransitionStatusDataAttributes.endingStyle]: ""
|
|
26
|
+
};
|
|
27
|
+
var transitionStatusMapping = {
|
|
28
|
+
transitionStatus(value) {
|
|
29
|
+
if (value === "starting") {
|
|
30
|
+
return STARTING_HOOK;
|
|
31
|
+
}
|
|
32
|
+
if (value === "ending") {
|
|
33
|
+
return ENDING_HOOK;
|
|
34
|
+
}
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/internals/useAnimationsFinished.js
|
|
40
|
+
import * as ReactDOM from "react-dom";
|
|
41
|
+
"use client";
|
|
42
|
+
function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved = false, treatAbortedAsFinished = true) {
|
|
43
|
+
const frame = useAnimationFrame();
|
|
44
|
+
return useStableCallback((fnToExecute, signal = null) => {
|
|
45
|
+
frame.cancel();
|
|
46
|
+
const element = resolveRef(elementOrRef);
|
|
47
|
+
if (element == null) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
const resolvedElement = element;
|
|
51
|
+
const done = () => {
|
|
52
|
+
ReactDOM.flushSync(fnToExecute);
|
|
53
|
+
};
|
|
54
|
+
if (typeof resolvedElement.getAnimations !== "function" || globalThis.BASE_UI_ANIMATIONS_DISABLED) {
|
|
55
|
+
fnToExecute();
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
function exec() {
|
|
59
|
+
Promise.all(resolvedElement.getAnimations().map((animation) => animation.finished)).then(() => {
|
|
60
|
+
if (!signal?.aborted) {
|
|
61
|
+
done();
|
|
62
|
+
}
|
|
63
|
+
}).catch(() => {
|
|
64
|
+
if (treatAbortedAsFinished) {
|
|
65
|
+
if (!signal?.aborted) {
|
|
66
|
+
done();
|
|
67
|
+
}
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
const currentAnimations = resolvedElement.getAnimations();
|
|
71
|
+
if (!signal?.aborted && currentAnimations.length > 0 && currentAnimations.some((animation) => animation.pending || animation.playState !== "finished")) {
|
|
72
|
+
exec();
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
if (waitForStartingStyleRemoved) {
|
|
77
|
+
const startingStyleAttribute = TransitionStatusDataAttributes.startingStyle;
|
|
78
|
+
if (!resolvedElement.hasAttribute(startingStyleAttribute)) {
|
|
79
|
+
frame.request(exec);
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
const attributeObserver = new MutationObserver(() => {
|
|
83
|
+
if (!resolvedElement.hasAttribute(startingStyleAttribute)) {
|
|
84
|
+
attributeObserver.disconnect();
|
|
85
|
+
exec();
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
attributeObserver.observe(resolvedElement, {
|
|
89
|
+
attributes: true,
|
|
90
|
+
attributeFilter: [startingStyleAttribute]
|
|
91
|
+
});
|
|
92
|
+
signal?.addEventListener("abort", () => attributeObserver.disconnect(), {
|
|
93
|
+
once: true
|
|
94
|
+
});
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
frame.request(exec);
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/internals/useTransitionStatus.js
|
|
102
|
+
import * as React from "react";
|
|
103
|
+
"use client";
|
|
104
|
+
function useTransitionStatus(open, enableIdleState = false, deferEndingState = false) {
|
|
105
|
+
const [transitionStatus, setTransitionStatus] = React.useState(open && enableIdleState ? "idle" : undefined);
|
|
106
|
+
const [mounted, setMounted] = React.useState(open);
|
|
107
|
+
if (open && !mounted) {
|
|
108
|
+
setMounted(true);
|
|
109
|
+
setTransitionStatus("starting");
|
|
110
|
+
}
|
|
111
|
+
if (!open && mounted && transitionStatus !== "ending" && !deferEndingState) {
|
|
112
|
+
setTransitionStatus("ending");
|
|
113
|
+
}
|
|
114
|
+
if (!open && !mounted && transitionStatus === "ending") {
|
|
115
|
+
setTransitionStatus(undefined);
|
|
116
|
+
}
|
|
117
|
+
useIsoLayoutEffect(() => {
|
|
118
|
+
if (!open && mounted && transitionStatus !== "ending" && deferEndingState) {
|
|
119
|
+
const frame = AnimationFrame.request(() => {
|
|
120
|
+
setTransitionStatus("ending");
|
|
121
|
+
});
|
|
122
|
+
return () => {
|
|
123
|
+
AnimationFrame.cancel(frame);
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
return;
|
|
127
|
+
}, [open, mounted, transitionStatus, deferEndingState]);
|
|
128
|
+
useIsoLayoutEffect(() => {
|
|
129
|
+
if (!open || enableIdleState) {
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
const frame = AnimationFrame.request(() => {
|
|
133
|
+
setTransitionStatus(undefined);
|
|
134
|
+
});
|
|
135
|
+
return () => {
|
|
136
|
+
AnimationFrame.cancel(frame);
|
|
137
|
+
};
|
|
138
|
+
}, [enableIdleState, open]);
|
|
139
|
+
useIsoLayoutEffect(() => {
|
|
140
|
+
if (!open || !enableIdleState) {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
if (open && mounted && transitionStatus !== "idle") {
|
|
144
|
+
setTransitionStatus("starting");
|
|
145
|
+
}
|
|
146
|
+
const frame = AnimationFrame.request(() => {
|
|
147
|
+
setTransitionStatus("idle");
|
|
148
|
+
});
|
|
149
|
+
return () => {
|
|
150
|
+
AnimationFrame.cancel(frame);
|
|
151
|
+
};
|
|
152
|
+
}, [enableIdleState, open, mounted, transitionStatus]);
|
|
153
|
+
return {
|
|
154
|
+
mounted,
|
|
155
|
+
setMounted,
|
|
156
|
+
transitionStatus
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
// node_modules/.deno/@base-ui+react@1.4.1/node_modules/@base-ui/react/esm/internals/useOpenChangeComplete.js
|
|
161
|
+
import * as React2 from "react";
|
|
162
|
+
"use client";
|
|
163
|
+
function useOpenChangeComplete(parameters) {
|
|
164
|
+
const {
|
|
165
|
+
enabled = true,
|
|
166
|
+
open,
|
|
167
|
+
ref,
|
|
168
|
+
onComplete: onCompleteParam
|
|
169
|
+
} = parameters;
|
|
170
|
+
const onComplete = useStableCallback(onCompleteParam);
|
|
171
|
+
const runOnceAnimationsFinish = useAnimationsFinished(ref, open, false);
|
|
172
|
+
React2.useEffect(() => {
|
|
173
|
+
if (!enabled) {
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
const abortController = new AbortController;
|
|
177
|
+
runOnceAnimationsFinish(onComplete, abortController.signal);
|
|
178
|
+
return () => {
|
|
179
|
+
abortController.abort();
|
|
180
|
+
};
|
|
181
|
+
}, [enabled, open, onComplete, runOnceAnimationsFinish]);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
export { TransitionStatusDataAttributes, transitionStatusMapping, useAnimationsFinished, useTransitionStatus, useOpenChangeComplete };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// node_modules/.deno/@base-ui+utils@0.2.8/node_modules/@base-ui/utils/esm/addEventListener.js
|
|
2
|
+
function addEventListener(target, type, listener, options) {
|
|
3
|
+
target.addEventListener(type, listener, options);
|
|
4
|
+
return () => {
|
|
5
|
+
target.removeEventListener(type, listener, options);
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export { addEventListener };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import {
|
|
2
|
+
useRefWithInit
|
|
3
|
+
} from "./_chunk-1s41sngz.js";
|
|
4
|
+
|
|
5
|
+
// node_modules/.deno/@base-ui+utils@0.2.8/node_modules/@base-ui/utils/esm/useStableCallback.js
|
|
6
|
+
import * as React from "react";
|
|
7
|
+
"use client";
|
|
8
|
+
var useInsertionEffect = React[`useInsertionEffect${Math.random().toFixed(1)}`.slice(0, -3)];
|
|
9
|
+
var useSafeInsertionEffect = useInsertionEffect && useInsertionEffect !== React.useLayoutEffect ? useInsertionEffect : (fn) => fn();
|
|
10
|
+
function useStableCallback(callback) {
|
|
11
|
+
const stable = useRefWithInit(createStableCallback).current;
|
|
12
|
+
stable.next = callback;
|
|
13
|
+
useSafeInsertionEffect(stable.effect);
|
|
14
|
+
return stable.trampoline;
|
|
15
|
+
}
|
|
16
|
+
function createStableCallback() {
|
|
17
|
+
const stable = {
|
|
18
|
+
next: undefined,
|
|
19
|
+
callback: assertNotCalled,
|
|
20
|
+
trampoline: (...args) => stable.callback?.(...args),
|
|
21
|
+
effect: () => {
|
|
22
|
+
stable.callback = stable.next;
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
return stable;
|
|
26
|
+
}
|
|
27
|
+
function assertNotCalled() {
|
|
28
|
+
if (true) {
|
|
29
|
+
throw new Error("Base UI: Cannot call an event handler while rendering.");
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export { useStableCallback };
|