@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.
Files changed (175) hide show
  1. package/App.jsx +13 -13
  2. package/CHANGELOG.md +64 -0
  3. package/README.md +59 -65
  4. package/components/AuthOverlay.jsx +4 -4
  5. package/components/ProtectedRoute.jsx +1 -1
  6. package/components/ThemeToggle.jsx +1 -1
  7. package/components/UpgradeSheet.jsx +2 -2
  8. package/{core → components/core}/DynamicIcon.jsx +1 -1
  9. package/{layout → components/layout}/Header.jsx +4 -4
  10. package/{layout → components/layout}/Layout.jsx +1 -1
  11. package/{layout → components/layout}/Sidebar.jsx +2 -2
  12. package/{layout → components/layout}/TabBar.jsx +1 -1
  13. package/{views → components/views}/LandingView.jsx +5 -5
  14. package/{views → components/views}/NotFound.jsx +2 -2
  15. package/{views → components/views}/PaymentView.jsx +1 -1
  16. package/{views → components/views}/SettingsView.jsx +6 -6
  17. package/{views → components/views}/SignInView.jsx +6 -6
  18. package/{views → components/views}/SignOutView.jsx +1 -1
  19. package/{views → components/views}/SignUpView.jsx +6 -6
  20. package/{views → components/views}/TextView.jsx +3 -3
  21. package/hooks/useAuthGate.js +1 -1
  22. package/index.js +1 -1
  23. package/package.json +32 -50
  24. package/shadcn/lib/base-ui/LICENSE +21 -0
  25. package/shadcn/lib/base-ui/_chunk-01rqe37g.js +70 -0
  26. package/shadcn/lib/base-ui/_chunk-0h5sskyw.js +347 -0
  27. package/shadcn/lib/base-ui/_chunk-0xhx4g7r.js +57 -0
  28. package/shadcn/lib/base-ui/_chunk-1e6khrvm.js +218 -0
  29. package/shadcn/lib/base-ui/_chunk-1s41sngz.js +302 -0
  30. package/shadcn/lib/base-ui/_chunk-20rtfsz9.js +23 -0
  31. package/shadcn/lib/base-ui/_chunk-2tyt8f8r.js +6034 -0
  32. package/shadcn/lib/base-ui/_chunk-3f31ka8n.js +11 -0
  33. package/shadcn/lib/base-ui/_chunk-3h6zpchb.js +89 -0
  34. package/shadcn/lib/base-ui/_chunk-4s0k3h7t.js +114 -0
  35. package/shadcn/lib/base-ui/_chunk-502wngfc.js +598 -0
  36. package/shadcn/lib/base-ui/_chunk-536jvgeq.js +68 -0
  37. package/shadcn/lib/base-ui/_chunk-611pz5sm.js +10 -0
  38. package/shadcn/lib/base-ui/_chunk-65zw5gs2.js +15 -0
  39. package/shadcn/lib/base-ui/_chunk-6b17g8t7.js +34 -0
  40. package/shadcn/lib/base-ui/_chunk-6xevjepc.js +15 -0
  41. package/shadcn/lib/base-ui/_chunk-71zm6zgv.js +16 -0
  42. package/shadcn/lib/base-ui/_chunk-7fmjymvh.js +32 -0
  43. package/shadcn/lib/base-ui/_chunk-7jjzay8b.js +176 -0
  44. package/shadcn/lib/base-ui/_chunk-7v1t86x1.js +43 -0
  45. package/shadcn/lib/base-ui/_chunk-85vrgzwr.js +227 -0
  46. package/shadcn/lib/base-ui/_chunk-8jz3hb7q.js +9 -0
  47. package/shadcn/lib/base-ui/_chunk-8kh3xk78.js +35 -0
  48. package/shadcn/lib/base-ui/_chunk-97tas84n.js +67 -0
  49. package/shadcn/lib/base-ui/_chunk-9nyxkvte.js +13 -0
  50. package/shadcn/lib/base-ui/_chunk-a8fwg9d0.js +52 -0
  51. package/shadcn/lib/base-ui/_chunk-agc6ew3g.js +29 -0
  52. package/shadcn/lib/base-ui/_chunk-aqwsk46c.js +64 -0
  53. package/shadcn/lib/base-ui/_chunk-atd5kq5q.js +803 -0
  54. package/shadcn/lib/base-ui/_chunk-atnkefgd.js +104 -0
  55. package/shadcn/lib/base-ui/_chunk-b40erthe.js +7 -0
  56. package/shadcn/lib/base-ui/_chunk-b5jsqt97.js +50 -0
  57. package/shadcn/lib/base-ui/_chunk-bk7n9s9e.js +15 -0
  58. package/shadcn/lib/base-ui/_chunk-c3572b5x.js +19 -0
  59. package/shadcn/lib/base-ui/_chunk-cwr896nf.js +25 -0
  60. package/shadcn/lib/base-ui/_chunk-drfb9kp2.js +27 -0
  61. package/shadcn/lib/base-ui/_chunk-ds8fnpjj.js +0 -0
  62. package/shadcn/lib/base-ui/_chunk-ek863ta9.js +82 -0
  63. package/shadcn/lib/base-ui/_chunk-f09cp81f.js +12 -0
  64. package/shadcn/lib/base-ui/_chunk-f5d01bp9.js +0 -0
  65. package/shadcn/lib/base-ui/_chunk-f9tgee1q.js +21 -0
  66. package/shadcn/lib/base-ui/_chunk-fch5cba8.js +84 -0
  67. package/shadcn/lib/base-ui/_chunk-gfce3j3z.js +18 -0
  68. package/shadcn/lib/base-ui/_chunk-ha06w2pp.js +2391 -0
  69. package/shadcn/lib/base-ui/_chunk-hzgetm70.js +23 -0
  70. package/shadcn/lib/base-ui/_chunk-j0eqdjta.js +39 -0
  71. package/shadcn/lib/base-ui/_chunk-k1e5fvcj.js +48 -0
  72. package/shadcn/lib/base-ui/_chunk-k4mc2kan.js +81 -0
  73. package/shadcn/lib/base-ui/_chunk-kfz96xv1.js +128 -0
  74. package/shadcn/lib/base-ui/_chunk-m45547cc.js +15 -0
  75. package/shadcn/lib/base-ui/_chunk-mbn76q14.js +184 -0
  76. package/shadcn/lib/base-ui/_chunk-mvv30fkv.js +9 -0
  77. package/shadcn/lib/base-ui/_chunk-mznt6ktj.js +33 -0
  78. package/shadcn/lib/base-ui/_chunk-n7dnqnbw.js +7 -0
  79. package/shadcn/lib/base-ui/_chunk-nya71ccw.js +546 -0
  80. package/shadcn/lib/base-ui/_chunk-p6qynd6r.js +146 -0
  81. package/shadcn/lib/base-ui/_chunk-q3nee19r.js +323 -0
  82. package/shadcn/lib/base-ui/_chunk-q7yw9mz4.js +385 -0
  83. package/shadcn/lib/base-ui/_chunk-qce0xt57.js +107 -0
  84. package/shadcn/lib/base-ui/_chunk-qgzhcjsj.js +14 -0
  85. package/shadcn/lib/base-ui/_chunk-qt6r015s.js +38 -0
  86. package/shadcn/lib/base-ui/_chunk-r0vsdknk.js +4 -0
  87. package/shadcn/lib/base-ui/_chunk-sx6vkz01.js +150 -0
  88. package/shadcn/lib/base-ui/_chunk-szcr6mhk.js +6 -0
  89. package/shadcn/lib/base-ui/_chunk-t7j3rbpv.js +67 -0
  90. package/shadcn/lib/base-ui/_chunk-tmfmrzwe.js +39 -0
  91. package/shadcn/lib/base-ui/_chunk-v92ycsfj.js +9 -0
  92. package/shadcn/lib/base-ui/_chunk-vdc01ss3.js +6 -0
  93. package/shadcn/lib/base-ui/_chunk-vjbnhhg1.js +26 -0
  94. package/shadcn/lib/base-ui/_chunk-w68yxg9d.js +21 -0
  95. package/shadcn/lib/base-ui/_chunk-wana68v3.js +477 -0
  96. package/shadcn/lib/base-ui/_chunk-wtw745qd.js +12 -0
  97. package/shadcn/lib/base-ui/_chunk-xb7ph1ka.js +6 -0
  98. package/shadcn/lib/base-ui/_chunk-xfagb0fq.js +28 -0
  99. package/shadcn/lib/base-ui/_chunk-xxhqanfd.js +16 -0
  100. package/shadcn/lib/base-ui/_chunk-y887e46p.js +15 -0
  101. package/shadcn/lib/base-ui/_chunk-ymj1dpqg.js +14 -0
  102. package/shadcn/lib/base-ui/accordion.js +650 -0
  103. package/shadcn/lib/base-ui/alert-dialog.js +138 -0
  104. package/shadcn/lib/base-ui/avatar.js +235 -0
  105. package/shadcn/lib/base-ui/button.js +52 -0
  106. package/shadcn/lib/base-ui/checkbox.js +454 -0
  107. package/shadcn/lib/base-ui/collapsible.js +283 -0
  108. package/shadcn/lib/base-ui/context-menu.js +324 -0
  109. package/shadcn/lib/base-ui/dialog.js +71 -0
  110. package/shadcn/lib/base-ui/input.js +1028 -0
  111. package/shadcn/lib/base-ui/menu.js +61 -0
  112. package/shadcn/lib/base-ui/menubar.js +157 -0
  113. package/shadcn/lib/base-ui/merge-props.js +15 -0
  114. package/shadcn/lib/base-ui/navigation-menu.js +1854 -0
  115. package/shadcn/lib/base-ui/popover.js +1090 -0
  116. package/shadcn/lib/base-ui/preview-card.js +709 -0
  117. package/shadcn/lib/base-ui/progress.js +278 -0
  118. package/shadcn/lib/base-ui/radio-group.js +247 -0
  119. package/shadcn/lib/base-ui/radio.js +382 -0
  120. package/shadcn/lib/base-ui/scroll-area.js +1061 -0
  121. package/shadcn/lib/base-ui/select.js +2438 -0
  122. package/shadcn/lib/base-ui/separator.js +11 -0
  123. package/shadcn/lib/base-ui/slider.js +1595 -0
  124. package/shadcn/lib/base-ui/switch.js +333 -0
  125. package/shadcn/lib/base-ui/tabs.js +892 -0
  126. package/shadcn/lib/base-ui/toggle-group.js +152 -0
  127. package/shadcn/lib/base-ui/toggle.js +133 -0
  128. package/shadcn/lib/base-ui/tooltip.js +791 -0
  129. package/shadcn/lib/base-ui/use-render.js +15 -0
  130. package/shadcn/lib/tailwind-merge.js +3312 -0
  131. package/shadcn/lib/utils.js +1 -1
  132. package/shadcn/ui/accordion.jsx +1 -1
  133. package/shadcn/ui/alert-dialog.jsx +1 -1
  134. package/shadcn/ui/avatar.jsx +1 -1
  135. package/shadcn/ui/badge.jsx +2 -2
  136. package/shadcn/ui/breadcrumb.jsx +2 -2
  137. package/shadcn/ui/button-group.jsx +2 -2
  138. package/shadcn/ui/button.jsx +1 -1
  139. package/shadcn/ui/calendar.jsx +1 -1
  140. package/shadcn/ui/checkbox.jsx +1 -1
  141. package/shadcn/ui/collapsible.jsx +1 -1
  142. package/shadcn/ui/command.jsx +1 -1
  143. package/shadcn/ui/context-menu.jsx +1 -1
  144. package/shadcn/ui/dialog.jsx +1 -1
  145. package/shadcn/ui/drawer.jsx +176 -74
  146. package/shadcn/ui/dropdown-menu.jsx +1 -1
  147. package/shadcn/ui/hover-card.jsx +1 -1
  148. package/shadcn/ui/input.jsx +1 -1
  149. package/shadcn/ui/item.jsx +2 -2
  150. package/shadcn/ui/menubar.jsx +2 -2
  151. package/shadcn/ui/navigation-menu.jsx +1 -1
  152. package/shadcn/ui/popover.jsx +1 -1
  153. package/shadcn/ui/progress.jsx +1 -1
  154. package/shadcn/ui/radio-group.jsx +2 -2
  155. package/shadcn/ui/scroll-area.jsx +1 -1
  156. package/shadcn/ui/select.jsx +1 -1
  157. package/shadcn/ui/separator.jsx +1 -1
  158. package/shadcn/ui/sheet.jsx +1 -1
  159. package/shadcn/ui/sidebar.jsx +3 -3
  160. package/shadcn/ui/slider.jsx +1 -1
  161. package/shadcn/ui/switch.jsx +1 -1
  162. package/shadcn/ui/tabs.jsx +1 -1
  163. package/shadcn/ui/toggle-group.jsx +2 -2
  164. package/shadcn/ui/toggle.jsx +1 -1
  165. package/shadcn/ui/tooltip.jsx +1 -1
  166. package/styles.css +31 -0
  167. package/MIGRATION.md +0 -230
  168. package/shadcn/ui/carousel.jsx +0 -195
  169. package/shadcn/ui/chart.jsx +0 -312
  170. package/shadcn/ui/resizable.jsx +0 -47
  171. /package/{core → components/core}/Calendar.jsx +0 -0
  172. /package/{core → components/core}/Command.jsx +0 -0
  173. /package/{core → components/core}/Context.jsx +0 -0
  174. /package/{core → components/core}/ThemeProvider.jsx +0 -0
  175. /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 };
@@ -0,0 +1,7 @@
1
+ // node_modules/.deno/@base-ui+utils@0.2.8/node_modules/@base-ui/utils/esm/safeReact.js
2
+ import * as React from "react";
3
+ var SafeReact = {
4
+ ...React
5
+ };
6
+
7
+ export { SafeReact };