@sprawlify/react 0.0.6 → 0.0.8

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 (171) hide show
  1. package/dist/chunk-BYnRvbsk.cjs +53 -0
  2. package/dist/{collapsible-DYgHs1_i.mjs → collapsible-Nbt3Sequ.mjs} +7 -4
  3. package/dist/{collapsible-D_cXuaRy.cjs → collapsible-aFKYmVbP.cjs} +13 -9
  4. package/dist/collection-DGEUORi5.cjs +230 -0
  5. package/dist/collection-DQWWySNV.mjs +187 -0
  6. package/dist/components/accordion/index.cjs +21 -24
  7. package/dist/components/accordion/index.d.cts +11 -9
  8. package/dist/components/accordion/index.d.mts +11 -9
  9. package/dist/components/accordion/index.mjs +10 -14
  10. package/dist/components/angle-slider/index.cjs +14 -9
  11. package/dist/components/angle-slider/index.d.cts +13 -11
  12. package/dist/components/angle-slider/index.d.mts +13 -11
  13. package/dist/components/angle-slider/index.mjs +8 -4
  14. package/dist/components/avatar/index.cjs +14 -9
  15. package/dist/components/avatar/index.d.cts +8 -6
  16. package/dist/components/avatar/index.d.mts +8 -6
  17. package/dist/components/avatar/index.mjs +8 -4
  18. package/dist/components/bottom-sheet/index.cjs +216 -0
  19. package/dist/components/bottom-sheet/index.d.cts +80 -0
  20. package/dist/components/bottom-sheet/index.d.mts +81 -0
  21. package/dist/components/bottom-sheet/index.mjs +192 -0
  22. package/dist/components/carousel/index.cjs +265 -0
  23. package/dist/components/carousel/index.d.cts +95 -0
  24. package/dist/components/carousel/index.d.mts +95 -0
  25. package/dist/components/carousel/index.mjs +243 -0
  26. package/dist/components/checkbox/index.cjs +311 -0
  27. package/dist/components/checkbox/index.d.cts +115 -0
  28. package/dist/components/checkbox/index.d.mts +115 -0
  29. package/dist/components/checkbox/index.mjs +291 -0
  30. package/dist/components/client-only/index.cjs +14 -0
  31. package/dist/components/client-only/index.d.cts +8 -0
  32. package/dist/components/client-only/index.d.mts +8 -0
  33. package/dist/components/client-only/index.mjs +13 -0
  34. package/dist/components/clipboard/index.cjs +186 -0
  35. package/dist/components/clipboard/index.d.cts +71 -0
  36. package/dist/components/clipboard/index.d.mts +71 -0
  37. package/dist/components/clipboard/index.mjs +163 -0
  38. package/dist/components/collapsible/index.cjs +8 -3
  39. package/dist/components/collapsible/index.d.cts +10 -8
  40. package/dist/components/collapsible/index.d.mts +10 -8
  41. package/dist/components/collapsible/index.mjs +7 -3
  42. package/dist/components/collection/index.cjs +11 -0
  43. package/dist/components/collection/index.d.cts +2 -0
  44. package/dist/components/collection/index.d.mts +2 -0
  45. package/dist/components/collection/index.mjs +5 -0
  46. package/dist/components/color-picker/index.cjs +617 -0
  47. package/dist/components/color-picker/index.d.cts +181 -0
  48. package/dist/components/color-picker/index.d.mts +182 -0
  49. package/dist/components/color-picker/index.mjs +573 -0
  50. package/dist/components/combobox/index.cjs +420 -0
  51. package/dist/components/combobox/index.d.cts +132 -0
  52. package/dist/components/combobox/index.d.mts +133 -0
  53. package/dist/components/combobox/index.mjs +390 -0
  54. package/dist/components/date-picker/index.cjs +567 -0
  55. package/dist/components/date-picker/index.d.cts +164 -0
  56. package/dist/components/date-picker/index.d.mts +165 -0
  57. package/dist/components/date-picker/index.mjs +526 -0
  58. package/dist/components/dialog/index.cjs +211 -0
  59. package/dist/components/dialog/index.d.cts +80 -0
  60. package/dist/components/dialog/index.d.mts +81 -0
  61. package/dist/components/dialog/index.mjs +187 -0
  62. package/dist/components/download-trigger/index.cjs +43 -0
  63. package/dist/components/download-trigger/index.d.cts +16 -0
  64. package/dist/components/download-trigger/index.d.mts +16 -0
  65. package/dist/components/download-trigger/index.mjs +42 -0
  66. package/dist/components/editable/index.cjs +246 -0
  67. package/dist/components/editable/index.d.cts +79 -0
  68. package/dist/components/editable/index.d.mts +79 -0
  69. package/dist/components/editable/index.mjs +221 -0
  70. package/dist/components/field/index.cjs +29 -0
  71. package/dist/components/field/index.d.cts +116 -0
  72. package/dist/components/field/index.d.mts +116 -0
  73. package/dist/components/field/index.mjs +11 -0
  74. package/dist/components/fieldset/index.cjs +25 -0
  75. package/dist/components/fieldset/index.d.cts +73 -0
  76. package/dist/components/fieldset/index.d.mts +73 -0
  77. package/dist/components/fieldset/index.mjs +11 -0
  78. package/dist/components/file-upload/index.cjs +351 -0
  79. package/dist/components/file-upload/index.d.cts +102 -0
  80. package/dist/components/file-upload/index.d.mts +102 -0
  81. package/dist/components/file-upload/index.mjs +322 -0
  82. package/dist/components/floating-panel/index.cjs +287 -0
  83. package/dist/components/floating-panel/index.d.cts +100 -0
  84. package/dist/components/floating-panel/index.d.mts +101 -0
  85. package/dist/components/floating-panel/index.mjs +259 -0
  86. package/dist/components/focus-trap/index.cjs +36 -0
  87. package/dist/components/focus-trap/index.d.cts +14 -0
  88. package/dist/components/focus-trap/index.d.mts +14 -0
  89. package/dist/components/focus-trap/index.mjs +35 -0
  90. package/dist/components/format/index.cjs +57 -0
  91. package/dist/components/format/index.d.cts +36 -0
  92. package/dist/components/format/index.d.mts +36 -0
  93. package/dist/components/format/index.mjs +49 -0
  94. package/dist/components/frame/index.cjs +90 -0
  95. package/dist/components/frame/index.d.cts +13 -0
  96. package/dist/components/frame/index.d.mts +13 -0
  97. package/dist/components/frame/index.mjs +89 -0
  98. package/dist/components/highlight/index.cjs +32 -0
  99. package/dist/components/highlight/index.d.cts +14 -0
  100. package/dist/components/highlight/index.d.mts +14 -0
  101. package/dist/components/highlight/index.mjs +30 -0
  102. package/dist/components/portal/index.cjs +33 -0
  103. package/dist/components/portal/index.d.cts +11 -0
  104. package/dist/components/portal/index.d.mts +11 -0
  105. package/dist/components/portal/index.mjs +32 -0
  106. package/dist/components/presence/index.cjs +11 -0
  107. package/dist/components/presence/index.d.cts +2 -0
  108. package/dist/components/presence/index.d.mts +4 -0
  109. package/dist/components/presence/index.mjs +7 -0
  110. package/dist/components/select/index.cjs +423 -0
  111. package/dist/components/select/index.d.cts +132 -0
  112. package/dist/components/select/index.d.mts +133 -0
  113. package/dist/components/select/index.mjs +387 -0
  114. package/dist/compose-refs-BEptPEkE.mjs +16 -0
  115. package/dist/compose-refs-C5QNDywq.cjs +22 -0
  116. package/dist/{factory-DN0EdT7u.mjs → core-Ba4IEjhK.mjs} +4 -154
  117. package/dist/{factory-CfqPG186.cjs → core-DCWyxy9D.cjs} +2 -251
  118. package/dist/{create-context-DCEySQ7J.cjs → create-context-CQ4U0lLj.cjs} +1 -1
  119. package/dist/environment-CvilmfQt.cjs +58 -0
  120. package/dist/environment-Ded7DkGr.mjs +46 -0
  121. package/dist/factory-Bi8oEg8i.mjs +49 -0
  122. package/dist/factory-C-EBNsCW.d.mts +15 -0
  123. package/dist/factory-C166evrS.cjs +61 -0
  124. package/dist/factory-C4cfTHs7.d.cts +15 -0
  125. package/dist/field-B-6qoKdn.mjs +324 -0
  126. package/dist/field-C-57Gj2E.cjs +406 -0
  127. package/dist/fieldset-B-MkM2Ms.cjs +239 -0
  128. package/dist/fieldset-gaVneDYh.mjs +186 -0
  129. package/dist/index-BJvW7OpY.d.mts +25 -0
  130. package/dist/index-BhGgEHWc.d.cts +34 -0
  131. package/dist/index-ByIsf4E7.d.mts +74 -0
  132. package/dist/index-Cp1i1zbg.d.mts +34 -0
  133. package/dist/index-CumJbg8V.d.cts +74 -0
  134. package/dist/index.cjs +17 -12
  135. package/dist/index.d.cts +7 -5
  136. package/dist/index.d.mts +7 -5
  137. package/dist/index.mjs +7 -3
  138. package/dist/locale-BcnWD1Hf.cjs +78 -0
  139. package/dist/locale-Coin-d7R.mjs +54 -0
  140. package/dist/normalize-props-skGwa8Dk.d.cts +13 -0
  141. package/dist/presence-Bc6Bxe5i.mjs +72 -0
  142. package/dist/presence-CPov8wyU.cjs +103 -0
  143. package/dist/providers-BNAArubQ.cjs +0 -0
  144. package/dist/providers-Dm2P3F2_.mjs +1 -0
  145. package/dist/render-strategy-BywM_IvB.cjs +30 -0
  146. package/dist/render-strategy-FiPgAp1U.mjs +13 -0
  147. package/dist/types-B4tvWlDb.d.cts +6 -0
  148. package/dist/types-BmBABPZb.d.mts +6 -0
  149. package/dist/use-event-4J5QFFqK.mjs +19 -0
  150. package/dist/use-event-CLH8zHoJ.cjs +25 -0
  151. package/dist/use-fieldset-context-CCQLmNLL.cjs +23 -0
  152. package/dist/use-fieldset-context-LwveT1OS.mjs +12 -0
  153. package/dist/use-safe-layout-effect-C2GgvNT3.cjs +13 -0
  154. package/dist/use-safe-layout-effect-CLjnuJFb.mjs +7 -0
  155. package/dist/utils/index.cjs +3 -3
  156. package/dist/utils/index.d.cts +1 -1
  157. package/dist/utils/index.d.mts +1 -1
  158. package/dist/utils/index.mjs +2 -2
  159. package/package.json +232 -2
  160. package/dist/factory-BZBSaT-0.d.cts +0 -29
  161. package/dist/factory-DaVMAttY.d.mts +0 -41
  162. /package/dist/{chunk-CYMnug_4.mjs → chunk-BXPHTOwk.mjs} +0 -0
  163. /package/dist/{create-context-DGYD_HQt.mjs → create-context-CCXzjEv8.mjs} +0 -0
  164. /package/dist/{create-split-props-BFscidWy.mjs → create-split-props-CBL0m-GX.mjs} +0 -0
  165. /package/dist/{create-split-props-CSaOnJRj.cjs → create-split-props-Dp4TWOyM.cjs} +0 -0
  166. /package/dist/{index-OOf7QNG5.d.mts → index-CureNJdc.d.mts} +0 -0
  167. /package/dist/{index-DiYk6N_L.d.cts → index-dbTyAXLy.d.cts} +0 -0
  168. /package/dist/{render-strategy--1FNKx5x.d.mts → render-strategy-C8IyLw0O.d.mts} +0 -0
  169. /package/dist/{render-strategy-RT-KvAqO.d.cts → render-strategy-rA4C5NUX.d.cts} +0 -0
  170. /package/dist/{utils-Cb5K29pi.cjs → utils-B_Ojepvp.cjs} +0 -0
  171. /package/dist/{utils-nfWHwVIS.mjs → utils-C-m3mZWI.mjs} +0 -0
@@ -0,0 +1,115 @@
1
+ import { r as PropTypes } from "../../index-BJvW7OpY.mjs";
2
+ import { r as Optional, t as Assign } from "../../types-BmBABPZb.mjs";
3
+ import { r as PolymorphicProps, t as HTMLProps } from "../../factory-C-EBNsCW.mjs";
4
+ import * as react362 from "react";
5
+ import { ReactNode } from "react";
6
+ import * as checkbox from "@sprawlify/primitives/machines/checkbox";
7
+ import { CheckedChangeDetails, CheckedChangeDetails as CheckboxCheckedChangeDetails, CheckedState, CheckedState as CheckboxCheckedState } from "@sprawlify/primitives/machines/checkbox";
8
+ import * as _sprawlify_primitives_anatomy7 from "@sprawlify/primitives/anatomy";
9
+
10
+ //#region src/components/checkbox/use-checkbox.d.ts
11
+ interface UseCheckboxProps extends Optional<Omit<checkbox.Props, "dir" | "getRootNode">, "id"> {}
12
+ interface UseCheckboxReturn extends checkbox.Api<PropTypes> {}
13
+ declare const useCheckbox: (ownProps?: UseCheckboxProps) => UseCheckboxReturn;
14
+ //#endregion
15
+ //#region src/components/checkbox/use-checkbox-context.d.ts
16
+ interface UseCheckboxContext extends UseCheckboxReturn {}
17
+ //#endregion
18
+ //#region src/components/checkbox/checkbox-context.d.ts
19
+ interface CheckboxContextProps {
20
+ children: (context: UseCheckboxContext) => ReactNode;
21
+ }
22
+ declare const CheckboxContext: (props: CheckboxContextProps) => ReactNode;
23
+ //#endregion
24
+ //#region src/components/checkbox/checkbox-control.d.ts
25
+ interface CheckboxControlBaseProps extends PolymorphicProps {}
26
+ interface CheckboxControlProps extends HTMLProps<"div">, CheckboxControlBaseProps {}
27
+ declare const CheckboxControl: react362.ForwardRefExoticComponent<CheckboxControlProps & react362.RefAttributes<HTMLDivElement>>;
28
+ //#endregion
29
+ //#region src/components/checkbox/use-checkbox-group.d.ts
30
+ interface UseCheckboxGroupProps {
31
+ defaultValue?: string[] | undefined;
32
+ value?: string[] | undefined;
33
+ name?: string | undefined;
34
+ onValueChange?: ((value: string[]) => void) | undefined;
35
+ disabled?: boolean | undefined;
36
+ readOnly?: boolean | undefined;
37
+ invalid?: boolean | undefined;
38
+ }
39
+ interface CheckboxGroupItemProps {
40
+ value: string | undefined;
41
+ }
42
+ declare function useCheckboxGroup(props?: UseCheckboxGroupProps): {
43
+ isChecked: (val: string | undefined) => boolean;
44
+ value: string[];
45
+ name: string | undefined;
46
+ disabled: boolean;
47
+ readOnly: boolean;
48
+ invalid: boolean;
49
+ setValue: (value: string[]) => void | undefined;
50
+ addValue: (val: string) => void;
51
+ toggleValue: (val: string) => void;
52
+ getItemProps: (props: CheckboxGroupItemProps) => {
53
+ checked: boolean | undefined;
54
+ onCheckedChange(): void;
55
+ name: string | undefined;
56
+ disabled: boolean;
57
+ readOnly: boolean | undefined;
58
+ invalid: boolean;
59
+ };
60
+ };
61
+ type UseCheckboxGroupReturn = ReturnType<typeof useCheckboxGroup>;
62
+ //#endregion
63
+ //#region src/components/checkbox/checkbox-group.d.ts
64
+ interface CheckboxGroupBaseProps extends UseCheckboxGroupProps, PolymorphicProps {}
65
+ interface CheckboxGroupProps extends Assign<HTMLProps<"div">, CheckboxGroupBaseProps> {}
66
+ declare const CheckboxGroup: react362.ForwardRefExoticComponent<CheckboxGroupProps & react362.RefAttributes<HTMLDivElement>>;
67
+ //#endregion
68
+ //#region src/components/checkbox/use-checkbox-group-context.d.ts
69
+ interface UseCheckboxGroupContext extends UseCheckboxGroupReturn {}
70
+ //#endregion
71
+ //#region src/components/checkbox/checkbox-group-provider.d.ts
72
+ interface ProviderProps {
73
+ value: UseCheckboxGroupContext;
74
+ }
75
+ interface CheckboxGroupProviderBaseProps extends ProviderProps, PolymorphicProps {}
76
+ interface CheckboxGroupProviderProps extends Assign<HTMLProps<"div">, CheckboxGroupProviderBaseProps> {}
77
+ declare const CheckboxGroupProvider: react362.ForwardRefExoticComponent<CheckboxGroupProviderProps & react362.RefAttributes<HTMLDivElement>>;
78
+ //#endregion
79
+ //#region src/components/checkbox/checkbox-hidden-input.d.ts
80
+ interface CheckboxHiddenInputBaseProps extends PolymorphicProps {}
81
+ interface CheckboxHiddenInputProps extends HTMLProps<"input">, CheckboxHiddenInputBaseProps {}
82
+ declare const CheckboxHiddenInput: react362.ForwardRefExoticComponent<CheckboxHiddenInputProps & react362.RefAttributes<HTMLInputElement>>;
83
+ //#endregion
84
+ //#region src/components/checkbox/checkbox-indicator.d.ts
85
+ interface CheckboxIndicatorBaseProps extends PolymorphicProps {
86
+ indeterminate?: boolean | undefined;
87
+ }
88
+ interface CheckboxIndicatorProps extends HTMLProps<"div">, CheckboxIndicatorBaseProps {}
89
+ declare const CheckboxIndicator: react362.ForwardRefExoticComponent<CheckboxIndicatorProps & react362.RefAttributes<HTMLDivElement>>;
90
+ //#endregion
91
+ //#region src/components/checkbox/checkbox-label.d.ts
92
+ interface CheckboxLabelBaseProps extends PolymorphicProps {}
93
+ interface CheckboxLabelProps extends HTMLProps<"span">, CheckboxLabelBaseProps {}
94
+ declare const CheckboxLabel: react362.ForwardRefExoticComponent<CheckboxLabelProps & react362.RefAttributes<HTMLSpanElement>>;
95
+ //#endregion
96
+ //#region src/components/checkbox/checkbox-root.d.ts
97
+ interface CheckboxRootBaseProps extends UseCheckboxProps, PolymorphicProps {}
98
+ interface CheckboxRootProps extends Assign<HTMLProps<"label">, CheckboxRootBaseProps> {}
99
+ declare const CheckboxRoot: react362.ForwardRefExoticComponent<CheckboxRootProps & react362.RefAttributes<HTMLLabelElement>>;
100
+ //#endregion
101
+ //#region src/components/checkbox/checkbox-root-provider.d.ts
102
+ interface RootProviderProps {
103
+ value: UseCheckboxReturn;
104
+ }
105
+ interface CheckboxRootProviderBaseProps extends RootProviderProps, PolymorphicProps {}
106
+ interface CheckboxRootProviderProps extends HTMLProps<"label">, CheckboxRootProviderBaseProps {}
107
+ declare const CheckboxRootProvider: react362.ForwardRefExoticComponent<CheckboxRootProviderProps & react362.RefAttributes<HTMLLabelElement>>;
108
+ //#endregion
109
+ //#region src/components/checkbox/checkbox-anatomy.d.ts
110
+ declare const checkboxAnatomy: _sprawlify_primitives_anatomy7.AnatomyInstance<"label" | "root" | "control" | "group" | "indicator">;
111
+ declare namespace checkbox_d_exports {
112
+ export { CheckedChangeDetails, CheckedState, CheckboxContext as Context, CheckboxContextProps as ContextProps, CheckboxControl as Control, CheckboxControlBaseProps as ControlBaseProps, CheckboxControlProps as ControlProps, CheckboxGroup as Group, CheckboxGroupBaseProps as GroupBaseProps, CheckboxGroupProps as GroupProps, CheckboxGroupProvider as GroupProvider, CheckboxGroupProviderBaseProps as GroupProviderBaseProps, CheckboxGroupProviderProps as GroupProviderProps, CheckboxHiddenInput as HiddenInput, CheckboxHiddenInputBaseProps as HiddenInputBaseProps, CheckboxHiddenInputProps as HiddenInputProps, CheckboxIndicator as Indicator, CheckboxIndicatorBaseProps as IndicatorBaseProps, CheckboxIndicatorProps as IndicatorProps, CheckboxLabel as Label, CheckboxLabelBaseProps as LabelBaseProps, CheckboxLabelProps as LabelProps, CheckboxRoot as Root, CheckboxRootBaseProps as RootBaseProps, CheckboxRootProps as RootProps, CheckboxRootProvider as RootProvider, CheckboxRootProviderBaseProps as RootProviderBaseProps, CheckboxRootProviderProps as RootProviderProps };
113
+ }
114
+ //#endregion
115
+ export { checkbox_d_exports as Checkbox, type CheckboxCheckedChangeDetails, type CheckboxCheckedState, CheckboxContext, type CheckboxContextProps, CheckboxControl, type CheckboxControlBaseProps, type CheckboxControlProps, CheckboxGroup, type CheckboxGroupBaseProps, type CheckboxGroupProps, CheckboxGroupProvider, type CheckboxGroupProviderBaseProps, type CheckboxGroupProviderProps, CheckboxHiddenInput, type CheckboxHiddenInputBaseProps, type CheckboxHiddenInputProps, CheckboxIndicator, type CheckboxIndicatorBaseProps, type CheckboxIndicatorProps, CheckboxLabel, type CheckboxLabelBaseProps, type CheckboxLabelProps, CheckboxRoot, type CheckboxRootBaseProps, type CheckboxRootProps, CheckboxRootProvider, type CheckboxRootProviderBaseProps, type CheckboxRootProviderProps, type UseCheckboxContext, type UseCheckboxGroupContext, type UseCheckboxGroupProps, type UseCheckboxGroupReturn, type UseCheckboxProps, type UseCheckboxReturn, checkboxAnatomy, useCheckbox, useCheckboxContext, useCheckboxGroup, useCheckboxGroupContext };
@@ -0,0 +1,291 @@
1
+ import { t as __export } from "../../chunk-BXPHTOwk.mjs";
2
+ import { i as useMachine, r as normalizeProps, t as mergeProps } from "../../core-Ba4IEjhK.mjs";
3
+ import { t as createContext$1 } from "../../create-context-CCXzjEv8.mjs";
4
+ import { n as useEnvironmentContext } from "../../environment-Ded7DkGr.mjs";
5
+ import { i as useLocaleContext } from "../../locale-Coin-d7R.mjs";
6
+ import "../../providers-Dm2P3F2_.mjs";
7
+ import { n as sprawlify } from "../../factory-Bi8oEg8i.mjs";
8
+ import { t as createSplitProps } from "../../create-split-props-CBL0m-GX.mjs";
9
+ import { t as useEvent } from "../../use-event-4J5QFFqK.mjs";
10
+ import { n as useFieldsetContext } from "../../use-fieldset-context-LwveT1OS.mjs";
11
+ import "../../fieldset-gaVneDYh.mjs";
12
+ import "../../use-safe-layout-effect-CLjnuJFb.mjs";
13
+ import { m as useFieldContext } from "../../field-B-6qoKdn.mjs";
14
+ import { forwardRef, useCallback, useId, useMemo, useState } from "react";
15
+ import { jsx } from "react/jsx-runtime";
16
+ import * as checkbox from "@sprawlify/primitives/machines/checkbox";
17
+ import { anatomy } from "@sprawlify/primitives/machines/checkbox";
18
+
19
+ //#region src/components/checkbox/use-checkbox-context.ts
20
+ const [CheckboxProvider, useCheckboxContext] = createContext$1({
21
+ name: "CheckboxContext",
22
+ hookName: "useCheckboxContext",
23
+ providerName: "<CheckboxProvider />"
24
+ });
25
+
26
+ //#endregion
27
+ //#region src/components/checkbox/checkbox-context.tsx
28
+ const CheckboxContext = (props) => props.children(useCheckboxContext());
29
+
30
+ //#endregion
31
+ //#region src/components/checkbox/checkbox-control.tsx
32
+ const CheckboxControl = forwardRef((props, ref) => {
33
+ const mergedProps = mergeProps(useCheckboxContext().getControlProps(), props);
34
+ return /* @__PURE__ */ jsx(sprawlify.div, {
35
+ ...mergedProps,
36
+ ref
37
+ });
38
+ });
39
+ CheckboxControl.displayName = "CheckboxControl";
40
+
41
+ //#endregion
42
+ //#region src/components/checkbox/checkbox-anatomy.ts
43
+ const checkboxAnatomy = anatomy.extendWith("group");
44
+
45
+ //#endregion
46
+ //#region src/utils/use-controllable-state.ts
47
+ function useControllableState(props) {
48
+ const { value, onChange, defaultValue } = props;
49
+ const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue);
50
+ const controlled = value !== void 0;
51
+ return [controlled ? value : uncontrolledValue, useCallback((value$1) => {
52
+ if (controlled) return onChange?.(value$1);
53
+ setUncontrolledValue(value$1);
54
+ return onChange?.(value$1);
55
+ }, [controlled, onChange])];
56
+ }
57
+
58
+ //#endregion
59
+ //#region src/components/checkbox/use-checkbox-group.ts
60
+ function useCheckboxGroup(props = {}) {
61
+ const fieldset = useFieldsetContext();
62
+ const { defaultValue, value: controlledValue, onValueChange, disabled = fieldset?.disabled, readOnly, name, invalid = fieldset?.invalid } = props;
63
+ const interactive = !(disabled || readOnly);
64
+ const onChangeProp = useEvent(onValueChange, { sync: true });
65
+ const [value, setValue] = useControllableState({
66
+ value: controlledValue,
67
+ defaultValue: defaultValue || [],
68
+ onChange: onChangeProp
69
+ });
70
+ const isChecked = (val) => {
71
+ return value.some((v) => String(v) === String(val));
72
+ };
73
+ const toggleValue = (val) => {
74
+ isChecked(val) ? removeValue(val) : addValue(val);
75
+ };
76
+ const addValue = (val) => {
77
+ if (!interactive) return;
78
+ if (isChecked(val)) return;
79
+ setValue(value.concat(val));
80
+ };
81
+ const removeValue = (val) => {
82
+ if (!interactive) return;
83
+ setValue(value.filter((v) => String(v) !== String(val)));
84
+ };
85
+ const getItemProps = (props$1) => {
86
+ return {
87
+ checked: props$1.value != null ? isChecked(props$1.value) : void 0,
88
+ onCheckedChange() {
89
+ if (props$1.value != null) toggleValue(props$1.value);
90
+ },
91
+ name,
92
+ disabled,
93
+ readOnly,
94
+ invalid
95
+ };
96
+ };
97
+ return {
98
+ isChecked,
99
+ value,
100
+ name,
101
+ disabled: !!disabled,
102
+ readOnly: !!readOnly,
103
+ invalid: !!invalid,
104
+ setValue,
105
+ addValue,
106
+ toggleValue,
107
+ getItemProps
108
+ };
109
+ }
110
+
111
+ //#endregion
112
+ //#region src/components/checkbox/use-checkbox-group-context.tsx
113
+ const [CheckboxGroupContextProvider, useCheckboxGroupContext] = createContext$1({
114
+ name: "CheckboxGroupContext",
115
+ hookName: "useCheckboxGroupContext",
116
+ providerName: "<CheckboxGroupProvider />",
117
+ strict: false
118
+ });
119
+
120
+ //#endregion
121
+ //#region src/components/checkbox/checkbox-group.tsx
122
+ const splitGroupProps = createSplitProps();
123
+ const CheckboxGroup = forwardRef((props, ref) => {
124
+ const [checkboxGroupProps, localProps] = splitGroupProps(props, [
125
+ "defaultValue",
126
+ "value",
127
+ "onValueChange",
128
+ "disabled",
129
+ "invalid",
130
+ "readOnly",
131
+ "name"
132
+ ]);
133
+ return /* @__PURE__ */ jsx(CheckboxGroupContextProvider, {
134
+ value: useCheckboxGroup(checkboxGroupProps),
135
+ children: /* @__PURE__ */ jsx(sprawlify.div, {
136
+ ref,
137
+ role: "group",
138
+ ...localProps,
139
+ ...checkboxAnatomy.build().group.attrs
140
+ })
141
+ });
142
+ });
143
+ CheckboxGroup.displayName = "CheckboxGroup";
144
+
145
+ //#endregion
146
+ //#region src/components/checkbox/checkbox-group-provider.tsx
147
+ const splitProviderProps = createSplitProps();
148
+ const CheckboxGroupProvider = forwardRef((props, ref) => {
149
+ const [localProps, restProps] = splitProviderProps(props, ["value"]);
150
+ return /* @__PURE__ */ jsx(CheckboxGroupContextProvider, {
151
+ value: localProps.value,
152
+ children: /* @__PURE__ */ jsx(sprawlify.div, {
153
+ ref,
154
+ role: "group",
155
+ ...restProps,
156
+ ...checkboxAnatomy.build().group.attrs
157
+ })
158
+ });
159
+ });
160
+ CheckboxGroupProvider.displayName = "CheckboxGroupProvider";
161
+
162
+ //#endregion
163
+ //#region src/components/checkbox/checkbox-hidden-input.tsx
164
+ const CheckboxHiddenInput = forwardRef((props, ref) => {
165
+ const mergedProps = mergeProps(useCheckboxContext().getHiddenInputProps(), props);
166
+ const field = useFieldContext();
167
+ return /* @__PURE__ */ jsx(sprawlify.input, {
168
+ "aria-describedby": field?.ariaDescribedby,
169
+ ...mergedProps,
170
+ ref
171
+ });
172
+ });
173
+ CheckboxHiddenInput.displayName = "CheckboxHiddenInput";
174
+
175
+ //#endregion
176
+ //#region src/components/checkbox/checkbox-indicator.tsx
177
+ const CheckboxIndicator = forwardRef((props, ref) => {
178
+ const { indeterminate, ...rest } = props;
179
+ const checkbox$1 = useCheckboxContext();
180
+ const mergedProps = mergeProps(checkbox$1.getIndicatorProps(), rest);
181
+ const isVisible = indeterminate ? checkbox$1.indeterminate : checkbox$1.checked;
182
+ return /* @__PURE__ */ jsx(sprawlify.div, {
183
+ ...mergedProps,
184
+ hidden: !isVisible,
185
+ ref
186
+ });
187
+ });
188
+ CheckboxIndicator.displayName = "CheckboxIndicator";
189
+
190
+ //#endregion
191
+ //#region src/components/checkbox/checkbox-label.tsx
192
+ const CheckboxLabel = forwardRef((props, ref) => {
193
+ const mergedProps = mergeProps(useCheckboxContext().getLabelProps(), props);
194
+ return /* @__PURE__ */ jsx(sprawlify.span, {
195
+ ...mergedProps,
196
+ ref
197
+ });
198
+ });
199
+ CheckboxLabel.displayName = "CheckboxLabel";
200
+
201
+ //#endregion
202
+ //#region src/components/checkbox/use-checkbox.ts
203
+ const useCheckbox = (ownProps = {}) => {
204
+ const checkboxGroup = useCheckboxGroupContext();
205
+ const field = useFieldContext();
206
+ const props = useMemo(() => {
207
+ return mergeProps(ownProps, checkboxGroup?.getItemProps({ value: ownProps.value }) ?? {});
208
+ }, [ownProps, checkboxGroup]);
209
+ const id = useId();
210
+ const { getRootNode } = useEnvironmentContext();
211
+ const { dir } = useLocaleContext();
212
+ const machineProps = {
213
+ id,
214
+ ids: {
215
+ label: field?.ids.label,
216
+ hiddenInput: field?.ids.control
217
+ },
218
+ dir,
219
+ disabled: field?.disabled,
220
+ readOnly: field?.readOnly,
221
+ invalid: field?.invalid,
222
+ required: field?.required,
223
+ getRootNode,
224
+ ...props
225
+ };
226
+ const service = useMachine(checkbox.machine, machineProps);
227
+ return checkbox.connect(service, normalizeProps);
228
+ };
229
+
230
+ //#endregion
231
+ //#region src/components/checkbox/checkbox-root.tsx
232
+ const splitRootProps = createSplitProps();
233
+ const CheckboxRoot = forwardRef((props, ref) => {
234
+ const [useCheckboxProps, localProps] = splitRootProps(props, [
235
+ "checked",
236
+ "defaultChecked",
237
+ "disabled",
238
+ "form",
239
+ "id",
240
+ "ids",
241
+ "invalid",
242
+ "name",
243
+ "onCheckedChange",
244
+ "readOnly",
245
+ "required",
246
+ "value"
247
+ ]);
248
+ const checkbox$1 = useCheckbox(useCheckboxProps);
249
+ const mergedProps = mergeProps(checkbox$1.getRootProps(), localProps);
250
+ return /* @__PURE__ */ jsx(CheckboxProvider, {
251
+ value: checkbox$1,
252
+ children: /* @__PURE__ */ jsx(sprawlify.label, {
253
+ ...mergedProps,
254
+ ref
255
+ })
256
+ });
257
+ });
258
+ CheckboxRoot.displayName = "CheckboxRoot";
259
+
260
+ //#endregion
261
+ //#region src/components/checkbox/checkbox-root-provider.tsx
262
+ const splitRootProviderProps = createSplitProps();
263
+ const CheckboxRootProvider = forwardRef((props, ref) => {
264
+ const [{ value: checkbox$1 }, localProps] = splitRootProviderProps(props, ["value"]);
265
+ const mergedProps = mergeProps(checkbox$1.getRootProps(), localProps);
266
+ return /* @__PURE__ */ jsx(CheckboxProvider, {
267
+ value: checkbox$1,
268
+ children: /* @__PURE__ */ jsx(sprawlify.label, {
269
+ ...mergedProps,
270
+ ref
271
+ })
272
+ });
273
+ });
274
+ CheckboxRootProvider.displayName = "CheckboxRootProvider";
275
+
276
+ //#endregion
277
+ //#region src/components/checkbox/checkbox.ts
278
+ var checkbox_exports = /* @__PURE__ */ __export({
279
+ Context: () => CheckboxContext,
280
+ Control: () => CheckboxControl,
281
+ Group: () => CheckboxGroup,
282
+ GroupProvider: () => CheckboxGroupProvider,
283
+ HiddenInput: () => CheckboxHiddenInput,
284
+ Indicator: () => CheckboxIndicator,
285
+ Label: () => CheckboxLabel,
286
+ Root: () => CheckboxRoot,
287
+ RootProvider: () => CheckboxRootProvider
288
+ });
289
+
290
+ //#endregion
291
+ export { checkbox_exports as Checkbox, CheckboxContext, CheckboxControl, CheckboxGroup, CheckboxGroupProvider, CheckboxHiddenInput, CheckboxIndicator, CheckboxLabel, CheckboxRoot, CheckboxRootProvider, checkboxAnatomy, useCheckbox, useCheckboxContext, useCheckboxGroup, useCheckboxGroupContext };
@@ -0,0 +1,14 @@
1
+ const require_chunk = require('../../chunk-BYnRvbsk.cjs');
2
+ let react = require("react");
3
+ let react_jsx_runtime = require("react/jsx-runtime");
4
+
5
+ //#region src/components/client-only/client-only.tsx
6
+ const noop = () => void 0;
7
+ const ClientOnly = (props) => {
8
+ const { children, fallback } = props;
9
+ if (!(0, react.useSyncExternalStore)(() => noop, () => true, () => false)) return fallback;
10
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: typeof children === "function" ? children() : children });
11
+ };
12
+
13
+ //#endregion
14
+ exports.ClientOnly = ClientOnly;
@@ -0,0 +1,8 @@
1
+ //#region src/components/client-only/client-only.d.ts
2
+ interface ClientOnlyProps {
3
+ children: React.ReactNode | (() => React.ReactNode);
4
+ fallback?: React.ReactNode | undefined;
5
+ }
6
+ declare const ClientOnly: (props: ClientOnlyProps) => React.ReactNode;
7
+ //#endregion
8
+ export { ClientOnly, type ClientOnlyProps };
@@ -0,0 +1,8 @@
1
+ //#region src/components/client-only/client-only.d.ts
2
+ interface ClientOnlyProps {
3
+ children: React.ReactNode | (() => React.ReactNode);
4
+ fallback?: React.ReactNode | undefined;
5
+ }
6
+ declare const ClientOnly: (props: ClientOnlyProps) => React.ReactNode;
7
+ //#endregion
8
+ export { ClientOnly, type ClientOnlyProps };
@@ -0,0 +1,13 @@
1
+ import { useSyncExternalStore } from "react";
2
+ import { Fragment as Fragment$1, jsx } from "react/jsx-runtime";
3
+
4
+ //#region src/components/client-only/client-only.tsx
5
+ const noop = () => void 0;
6
+ const ClientOnly = (props) => {
7
+ const { children, fallback } = props;
8
+ if (!useSyncExternalStore(() => noop, () => true, () => false)) return fallback;
9
+ return /* @__PURE__ */ jsx(Fragment$1, { children: typeof children === "function" ? children() : children });
10
+ };
11
+
12
+ //#endregion
13
+ export { ClientOnly };
@@ -0,0 +1,186 @@
1
+ const require_chunk = require('../../chunk-BYnRvbsk.cjs');
2
+ const require_core = require('../../core-DCWyxy9D.cjs');
3
+ const require_create_context = require('../../create-context-CQ4U0lLj.cjs');
4
+ const require_environment = require('../../environment-CvilmfQt.cjs');
5
+ const require_factory = require('../../factory-C166evrS.cjs');
6
+ const require_create_split_props = require('../../create-split-props-Dp4TWOyM.cjs');
7
+ let react = require("react");
8
+ let react_jsx_runtime = require("react/jsx-runtime");
9
+ let __sprawlify_primitives_machines_clipboard = require("@sprawlify/primitives/machines/clipboard");
10
+ __sprawlify_primitives_machines_clipboard = require_chunk.__toESM(__sprawlify_primitives_machines_clipboard);
11
+ let __sprawlify_primitives_core = require("@sprawlify/primitives/core");
12
+
13
+ //#region src/components/clipboard/use-clipboard-context.ts
14
+ const [ClipboardProvider, useClipboardContext] = require_create_context.createContext({
15
+ name: "ClipboardContext",
16
+ hookName: "useClipboardContext",
17
+ providerName: "<ClipboardProvider />"
18
+ });
19
+
20
+ //#endregion
21
+ //#region src/components/clipboard/clipboard-context.tsx
22
+ const ClipboardContext = (props) => props.children(useClipboardContext());
23
+
24
+ //#endregion
25
+ //#region src/components/clipboard/clipboard-control.tsx
26
+ const ClipboardControl = (0, react.forwardRef)((props, ref) => {
27
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useClipboardContext().getControlProps(), props);
28
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
29
+ ...mergedProps,
30
+ ref
31
+ });
32
+ });
33
+ ClipboardControl.displayName = "ClipboardControl";
34
+
35
+ //#endregion
36
+ //#region src/components/clipboard/clipboard-indicator.tsx
37
+ const ClipboardIndicator = (0, react.forwardRef)((props, ref) => {
38
+ const { children, copied, ...localProps } = props;
39
+ const clipboard = useClipboardContext();
40
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(clipboard.getIndicatorProps({ copied: clipboard.copied }), localProps);
41
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
42
+ ...mergedProps,
43
+ ref,
44
+ children: clipboard.copied ? copied : children
45
+ });
46
+ });
47
+ ClipboardIndicator.displayName = "ClipboardIndicator";
48
+
49
+ //#endregion
50
+ //#region src/components/clipboard/clipboard-input.tsx
51
+ const ClipboardInput = (0, react.forwardRef)((props, ref) => {
52
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useClipboardContext().getInputProps(), props);
53
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.input, {
54
+ ...mergedProps,
55
+ ref
56
+ });
57
+ });
58
+ ClipboardInput.displayName = "ClipboardInput";
59
+
60
+ //#endregion
61
+ //#region src/components/clipboard/clipboard-label.tsx
62
+ const ClipboardLabel = (0, react.forwardRef)((props, ref) => {
63
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useClipboardContext().getLabelProps(), props);
64
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.label, {
65
+ ...mergedProps,
66
+ ref
67
+ });
68
+ });
69
+ ClipboardLabel.displayName = "ClipboardLabel";
70
+
71
+ //#endregion
72
+ //#region src/components/clipboard/use-clipboard.ts
73
+ const useClipboard = (props) => {
74
+ const id = (0, react.useId)();
75
+ const { getRootNode } = require_environment.useEnvironmentContext();
76
+ const machineProps = {
77
+ id,
78
+ getRootNode,
79
+ ...props
80
+ };
81
+ const service = require_core.useMachine(__sprawlify_primitives_machines_clipboard.machine, machineProps);
82
+ return __sprawlify_primitives_machines_clipboard.connect(service, require_core.normalizeProps);
83
+ };
84
+
85
+ //#endregion
86
+ //#region src/components/clipboard/clipboard-root.tsx
87
+ const splitRootProps = require_create_split_props.createSplitProps();
88
+ const ClipboardRoot = (0, react.forwardRef)((props, ref) => {
89
+ const [useClipboardProps, localProps] = splitRootProps(props, [
90
+ "defaultValue",
91
+ "id",
92
+ "ids",
93
+ "onStatusChange",
94
+ "onValueChange",
95
+ "timeout",
96
+ "value"
97
+ ]);
98
+ const clipboard = useClipboard(useClipboardProps);
99
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(clipboard.getRootProps(), localProps);
100
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ClipboardProvider, {
101
+ value: clipboard,
102
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
103
+ ref,
104
+ ...mergedProps
105
+ })
106
+ });
107
+ });
108
+ ClipboardRoot.displayName = "ClipboardRoot";
109
+
110
+ //#endregion
111
+ //#region src/components/clipboard/clipboard-root-provider.tsx
112
+ const splitRootProviderProps = require_create_split_props.createSplitProps();
113
+ const ClipboardRootProvider = (0, react.forwardRef)((props, ref) => {
114
+ const [{ value: clipboard }, localProps] = splitRootProviderProps(props, ["value"]);
115
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(clipboard.getRootProps(), localProps);
116
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ClipboardProvider, {
117
+ value: clipboard,
118
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
119
+ ref,
120
+ ...mergedProps
121
+ })
122
+ });
123
+ });
124
+ ClipboardRootProvider.displayName = "ClipboardRootProvider";
125
+
126
+ //#endregion
127
+ //#region src/components/clipboard/clipboard-trigger.tsx
128
+ const ClipboardTrigger = (0, react.forwardRef)((props, ref) => {
129
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useClipboardContext().getTriggerProps(), props);
130
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.button, {
131
+ ...mergedProps,
132
+ ref
133
+ });
134
+ });
135
+ ClipboardTrigger.displayName = "ClipboardTrigger";
136
+
137
+ //#endregion
138
+ //#region src/components/clipboard/clipboard-value-text.tsx
139
+ const ClipboardValueText = (0, react.forwardRef)((props, ref) => {
140
+ const clipboard = useClipboardContext();
141
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.span, {
142
+ ...props,
143
+ ref,
144
+ children: props.children || clipboard.value
145
+ });
146
+ });
147
+ ClipboardValueText.displayName = "ClipboardValueText";
148
+
149
+ //#endregion
150
+ //#region src/components/clipboard/clipboard.ts
151
+ var clipboard_exports = /* @__PURE__ */ require_chunk.__export({
152
+ Context: () => ClipboardContext,
153
+ Control: () => ClipboardControl,
154
+ Indicator: () => ClipboardIndicator,
155
+ Input: () => ClipboardInput,
156
+ Label: () => ClipboardLabel,
157
+ Root: () => ClipboardRoot,
158
+ RootProvider: () => ClipboardRootProvider,
159
+ Trigger: () => ClipboardTrigger,
160
+ ValueText: () => ClipboardValueText
161
+ });
162
+
163
+ //#endregion
164
+ Object.defineProperty(exports, 'Clipboard', {
165
+ enumerable: true,
166
+ get: function () {
167
+ return clipboard_exports;
168
+ }
169
+ });
170
+ exports.ClipboardContext = ClipboardContext;
171
+ exports.ClipboardControl = ClipboardControl;
172
+ exports.ClipboardIndicator = ClipboardIndicator;
173
+ exports.ClipboardInput = ClipboardInput;
174
+ exports.ClipboardLabel = ClipboardLabel;
175
+ exports.ClipboardRoot = ClipboardRoot;
176
+ exports.ClipboardRootProvider = ClipboardRootProvider;
177
+ exports.ClipboardTrigger = ClipboardTrigger;
178
+ exports.ClipboardValueText = ClipboardValueText;
179
+ Object.defineProperty(exports, 'clipboardAnatomy', {
180
+ enumerable: true,
181
+ get: function () {
182
+ return __sprawlify_primitives_machines_clipboard.anatomy;
183
+ }
184
+ });
185
+ exports.useClipboard = useClipboard;
186
+ exports.useClipboardContext = useClipboardContext;