@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,133 @@
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 "../../render-strategy-C8IyLw0O.mjs";
5
+ import { c as UsePresenceProps } from "../../index-Cp1i1zbg.mjs";
6
+ import { _ as CollectionItem, b as createListCollection, i as UseListCollectionProps, o as useListCollection, y as ListCollection } from "../../index-ByIsf4E7.mjs";
7
+ import * as react108 from "react";
8
+ import { JSX, ReactNode } from "react";
9
+ import * as select from "@sprawlify/primitives/machines/select";
10
+ import { FocusOutsideEvent, FocusOutsideEvent as SelectFocusOutsideEvent, HighlightChangeDetails, HighlightChangeDetails as SelectHighlightChangeDetails, InteractOutsideEvent, InteractOutsideEvent as SelectInteractOutsideEvent, ItemProps, ItemState, OpenChangeDetails, OpenChangeDetails as SelectOpenChangeDetails, PointerDownOutsideEvent, PointerDownOutsideEvent as SelectPointerDownOutsideEvent, ValueChangeDetails, ValueChangeDetails as SelectValueChangeDetails, anatomy as selectAnatomy } from "@sprawlify/primitives/machines/select";
11
+
12
+ //#region src/components/select/select-clear-trigger.d.ts
13
+ interface SelectClearTriggerBaseProps extends PolymorphicProps {}
14
+ interface SelectClearTriggerProps extends HTMLProps<"button">, SelectClearTriggerBaseProps {}
15
+ declare const SelectClearTrigger: react108.ForwardRefExoticComponent<SelectClearTriggerProps & react108.RefAttributes<HTMLButtonElement>>;
16
+ //#endregion
17
+ //#region src/components/select/select-content.d.ts
18
+ interface SelectContentBaseProps extends PolymorphicProps {}
19
+ interface SelectContentProps extends HTMLProps<"div">, SelectContentBaseProps {}
20
+ declare const SelectContent: react108.ForwardRefExoticComponent<SelectContentProps & react108.RefAttributes<HTMLDivElement>>;
21
+ //#endregion
22
+ //#region src/components/select/use-select.d.ts
23
+ interface UseSelectProps<T extends CollectionItem> extends Optional<Omit<select.Props<T>, "dir" | "getRootNode" | "collection">, "id"> {
24
+ collection: ListCollection<T>;
25
+ }
26
+ interface UseSelectReturn<T extends CollectionItem> extends select.Api<PropTypes, T> {}
27
+ declare const useSelect: <T extends CollectionItem>(props: UseSelectProps<T>) => UseSelectReturn<T>;
28
+ //#endregion
29
+ //#region src/components/select/use-select-context.d.ts
30
+ interface UseSelectContext<T extends CollectionItem> extends UseSelectReturn<T> {}
31
+ //#endregion
32
+ //#region src/components/select/select-context.d.ts
33
+ interface SelectContextProps<T extends CollectionItem> {
34
+ children: (context: UseSelectContext<T>) => ReactNode;
35
+ }
36
+ declare const SelectContext: <T extends CollectionItem>(props: SelectContextProps<T>) => ReactNode;
37
+ //#endregion
38
+ //#region src/components/select/select-control.d.ts
39
+ interface SelectControlBaseProps extends PolymorphicProps {}
40
+ interface SelectControlProps extends HTMLProps<"div">, SelectControlBaseProps {}
41
+ declare const SelectControl: react108.ForwardRefExoticComponent<SelectControlProps & react108.RefAttributes<HTMLDivElement>>;
42
+ //#endregion
43
+ //#region src/components/select/select-hidden-select.d.ts
44
+ interface SelectHiddenSelectBaseProps extends PolymorphicProps {}
45
+ interface SelectHiddenSelectProps extends HTMLProps<"select">, SelectHiddenSelectBaseProps {}
46
+ declare const SelectHiddenSelect: react108.ForwardRefExoticComponent<SelectHiddenSelectProps & react108.RefAttributes<HTMLSelectElement>>;
47
+ //#endregion
48
+ //#region src/components/select/select-indicator.d.ts
49
+ interface SelectIndicatorBaseProps extends PolymorphicProps {}
50
+ interface SelectIndicatorProps extends HTMLProps<"div">, SelectIndicatorBaseProps {}
51
+ declare const SelectIndicator: react108.ForwardRefExoticComponent<SelectIndicatorProps & react108.RefAttributes<HTMLDivElement>>;
52
+ //#endregion
53
+ //#region src/components/select/select-item.d.ts
54
+ interface SelectItemBaseProps extends ItemProps, PolymorphicProps {}
55
+ interface SelectItemProps extends HTMLProps<"div">, SelectItemBaseProps {}
56
+ declare const SelectItem: react108.ForwardRefExoticComponent<SelectItemProps & react108.RefAttributes<HTMLDivElement>>;
57
+ //#endregion
58
+ //#region src/components/select/use-select-item-context.d.ts
59
+ interface UseSelectItemContext extends ItemState {}
60
+ //#endregion
61
+ //#region src/components/select/select-item-context.d.ts
62
+ interface SelectItemContextProps {
63
+ children: (context: UseSelectItemContext) => ReactNode;
64
+ }
65
+ declare const SelectItemContext: (props: SelectItemContextProps) => ReactNode;
66
+ //#endregion
67
+ //#region src/components/select/select-item-group.d.ts
68
+ interface SelectItemGroupBaseProps extends PolymorphicProps {}
69
+ interface SelectItemGroupProps extends HTMLProps<"div">, SelectItemGroupBaseProps {}
70
+ declare const SelectItemGroup: react108.ForwardRefExoticComponent<SelectItemGroupProps & react108.RefAttributes<HTMLDivElement>>;
71
+ //#endregion
72
+ //#region src/components/select/select-item-group-label.d.ts
73
+ interface SelectItemGroupLabelBaseProps extends PolymorphicProps {}
74
+ interface SelectItemGroupLabelProps extends HTMLProps<"div">, SelectItemGroupLabelBaseProps {}
75
+ declare const SelectItemGroupLabel: react108.ForwardRefExoticComponent<SelectItemGroupLabelProps & react108.RefAttributes<HTMLDivElement>>;
76
+ //#endregion
77
+ //#region src/components/select/select-item-indicator.d.ts
78
+ interface SelectItemIndicatorBaseProps extends PolymorphicProps {}
79
+ interface SelectItemIndicatorProps extends HTMLProps<"div">, SelectItemIndicatorBaseProps {}
80
+ declare const SelectItemIndicator: react108.ForwardRefExoticComponent<SelectItemIndicatorProps & react108.RefAttributes<HTMLDivElement>>;
81
+ //#endregion
82
+ //#region src/components/select/select-item-text.d.ts
83
+ interface SelectItemTextBaseProps extends PolymorphicProps {}
84
+ interface SelectItemTextProps extends HTMLProps<"span">, SelectItemTextBaseProps {}
85
+ declare const SelectItemText: react108.ForwardRefExoticComponent<SelectItemTextProps & react108.RefAttributes<HTMLDivElement>>;
86
+ //#endregion
87
+ //#region src/components/select/select-label.d.ts
88
+ interface SelectLabelBaseProps extends PolymorphicProps {}
89
+ interface SelectLabelProps extends HTMLProps<"label">, SelectLabelBaseProps {}
90
+ declare const SelectLabel: react108.ForwardRefExoticComponent<SelectLabelProps & react108.RefAttributes<HTMLLabelElement>>;
91
+ //#endregion
92
+ //#region src/components/select/select-list.d.ts
93
+ interface SelectListBaseProps extends PolymorphicProps {}
94
+ interface SelectListProps extends HTMLProps<"div">, SelectListBaseProps {}
95
+ declare const SelectList: react108.ForwardRefExoticComponent<SelectListProps & react108.RefAttributes<HTMLDivElement>>;
96
+ //#endregion
97
+ //#region src/components/select/select-positioner.d.ts
98
+ interface SelectPositionerBaseProps extends PolymorphicProps {}
99
+ interface SelectPositionerProps extends HTMLProps<"div">, SelectPositionerBaseProps {}
100
+ declare const SelectPositioner: react108.ForwardRefExoticComponent<SelectPositionerProps & react108.RefAttributes<HTMLDivElement>>;
101
+ //#endregion
102
+ //#region src/components/select/select-root.d.ts
103
+ interface SelectRootBaseProps<T extends CollectionItem> extends UseSelectProps<T>, UsePresenceProps, PolymorphicProps {}
104
+ interface SelectRootProps<T extends CollectionItem> extends Assign<HTMLProps<"div">, SelectRootBaseProps<T>> {}
105
+ type SelectRootComponentProps<T extends CollectionItem = CollectionItem, P = {}> = Assign<SelectRootProps<T>, P> & React.RefAttributes<HTMLDivElement>;
106
+ type SelectRootComponent<P = {}> = <T extends CollectionItem>(props: SelectRootComponentProps<T, P>) => JSX.Element;
107
+ declare const SelectRoot: SelectRootComponent;
108
+ //#endregion
109
+ //#region src/components/select/select-root-provider.d.ts
110
+ interface RootProviderProps<T extends CollectionItem> {
111
+ value: UseSelectReturn<T>;
112
+ }
113
+ interface SelectRootProviderBaseProps<T extends CollectionItem> extends RootProviderProps<T>, UsePresenceProps, PolymorphicProps {}
114
+ interface SelectRootProviderProps<T extends CollectionItem> extends HTMLProps<"div">, SelectRootProviderBaseProps<T> {}
115
+ type SelectRootProviderComponent<P = {}> = <T extends CollectionItem>(props: Assign<SelectRootProviderProps<T>, P> & React.RefAttributes<HTMLDivElement>) => JSX.Element;
116
+ declare const SelectRootProvider: SelectRootProviderComponent;
117
+ //#endregion
118
+ //#region src/components/select/select-trigger.d.ts
119
+ interface SelectTriggerBaseProps extends PolymorphicProps {}
120
+ interface SelectTriggerProps extends HTMLProps<"button">, SelectTriggerBaseProps {}
121
+ declare const SelectTrigger: react108.ForwardRefExoticComponent<SelectTriggerProps & react108.RefAttributes<HTMLButtonElement>>;
122
+ //#endregion
123
+ //#region src/components/select/select-value-text.d.ts
124
+ interface SelectValueTextBaseProps extends PolymorphicProps {
125
+ placeholder?: string | undefined;
126
+ }
127
+ interface SelectValueTextProps extends HTMLProps<"span">, SelectValueTextBaseProps {}
128
+ declare const SelectValueText: react108.ForwardRefExoticComponent<SelectValueTextProps & react108.RefAttributes<HTMLSpanElement>>;
129
+ declare namespace select_d_exports {
130
+ export { SelectClearTrigger as ClearTrigger, SelectClearTriggerBaseProps as ClearTriggerBaseProps, SelectClearTriggerProps as ClearTriggerProps, CollectionItem, SelectContent as Content, SelectContentBaseProps as ContentBaseProps, SelectContentProps as ContentProps, SelectContext as Context, SelectContextProps as ContextProps, SelectControl as Control, SelectControlBaseProps as ControlBaseProps, SelectControlProps as ControlProps, FocusOutsideEvent, SelectHiddenSelect as HiddenSelect, SelectHiddenSelectBaseProps as HiddenSelectBaseProps, SelectHiddenSelectProps as HiddenSelectProps, HighlightChangeDetails, SelectIndicator as Indicator, SelectIndicatorBaseProps as IndicatorBaseProps, SelectIndicatorProps as IndicatorProps, InteractOutsideEvent, SelectItem as Item, SelectItemBaseProps as ItemBaseProps, SelectItemContext as ItemContext, SelectItemContextProps as ItemContextProps, SelectItemGroup as ItemGroup, SelectItemGroupBaseProps as ItemGroupBaseProps, SelectItemGroupLabel as ItemGroupLabel, SelectItemGroupLabelBaseProps as ItemGroupLabelBaseProps, SelectItemGroupLabelProps as ItemGroupLabelProps, SelectItemGroupProps as ItemGroupProps, SelectItemIndicator as ItemIndicator, SelectItemIndicatorBaseProps as ItemIndicatorBaseProps, SelectItemIndicatorProps as ItemIndicatorProps, SelectItemProps as ItemProps, SelectItemText as ItemText, SelectItemTextBaseProps as ItemTextBaseProps, SelectItemTextProps as ItemTextProps, SelectLabel as Label, SelectLabelBaseProps as LabelBaseProps, SelectLabelProps as LabelProps, SelectList as List, SelectListBaseProps as ListBaseProps, ListCollection, SelectListProps as ListProps, OpenChangeDetails, PointerDownOutsideEvent, SelectPositioner as Positioner, SelectPositionerBaseProps as PositionerBaseProps, SelectPositionerProps as PositionerProps, SelectRoot as Root, SelectRootBaseProps as RootBaseProps, SelectRootComponent as RootComponent, SelectRootComponentProps as RootComponentProps, SelectRootProps as RootProps, SelectRootProvider as RootProvider, SelectRootProviderBaseProps as RootProviderBaseProps, SelectRootProviderComponent as RootProviderComponent, SelectRootProviderProps as RootProviderProps, SelectTrigger as Trigger, SelectTriggerBaseProps as TriggerBaseProps, SelectTriggerProps as TriggerProps, ValueChangeDetails, SelectValueText as ValueText, SelectValueTextBaseProps as ValueTextBaseProps, SelectValueTextProps as ValueTextProps };
131
+ }
132
+ //#endregion
133
+ export { type CollectionItem, type ListCollection, select_d_exports as Select, SelectClearTrigger, type SelectClearTriggerBaseProps, type SelectClearTriggerProps, SelectContent, type SelectContentBaseProps, type SelectContentProps, SelectContext, type SelectContextProps, SelectControl, type SelectControlBaseProps, type SelectControlProps, type SelectFocusOutsideEvent, SelectHiddenSelect, type SelectHiddenSelectBaseProps, type SelectHiddenSelectProps, type SelectHighlightChangeDetails, SelectIndicator, type SelectIndicatorBaseProps, type SelectIndicatorProps, type SelectInteractOutsideEvent, SelectItem, type SelectItemBaseProps, SelectItemContext, type SelectItemContextProps, SelectItemGroup, type SelectItemGroupBaseProps, SelectItemGroupLabel, type SelectItemGroupLabelBaseProps, type SelectItemGroupLabelProps, type SelectItemGroupProps, SelectItemIndicator, type SelectItemIndicatorBaseProps, type SelectItemIndicatorProps, type SelectItemProps, SelectItemText, type SelectItemTextBaseProps, type SelectItemTextProps, SelectLabel, type SelectLabelBaseProps, type SelectLabelProps, SelectList, type SelectListBaseProps, type SelectListProps, type SelectOpenChangeDetails, type SelectPointerDownOutsideEvent, SelectPositioner, type SelectPositionerBaseProps, type SelectPositionerProps, SelectRoot, type SelectRootBaseProps, type SelectRootComponent, type SelectRootComponentProps, type SelectRootProps, SelectRootProvider, type SelectRootProviderBaseProps, type SelectRootProviderComponent, type SelectRootProviderProps, SelectTrigger, type SelectTriggerBaseProps, type SelectTriggerProps, type SelectValueChangeDetails, SelectValueText, type SelectValueTextBaseProps, type SelectValueTextProps, type UseListCollectionProps, type UseSelectContext, type UseSelectItemContext, type UseSelectProps, type UseSelectReturn, createListCollection, selectAnatomy, useListCollection, useSelect, useSelectContext, useSelectItemContext };
@@ -0,0 +1,387 @@
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 { t as composeRefs } from "../../compose-refs-BEptPEkE.mjs";
8
+ import { n as sprawlify } from "../../factory-Bi8oEg8i.mjs";
9
+ import { t as createSplitProps } from "../../create-split-props-CBL0m-GX.mjs";
10
+ import { a as splitPresenceProps, i as usePresence, n as usePresenceContext, t as PresenceProvider } from "../../presence-Bc6Bxe5i.mjs";
11
+ import "../../use-event-4J5QFFqK.mjs";
12
+ import "../../use-fieldset-context-LwveT1OS.mjs";
13
+ import "../../use-safe-layout-effect-CLjnuJFb.mjs";
14
+ import { m as useFieldContext } from "../../field-B-6qoKdn.mjs";
15
+ import { n as useListCollection, o as createListCollection } from "../../collection-DQWWySNV.mjs";
16
+ import { forwardRef, useId } from "react";
17
+ import { jsx, jsxs } from "react/jsx-runtime";
18
+ import * as select from "@sprawlify/primitives/machines/select";
19
+ import { anatomy as selectAnatomy } from "@sprawlify/primitives/machines/select";
20
+
21
+ //#region src/components/select/use-select-context.ts
22
+ const [SelectProvider, useSelectContext] = createContext$1({
23
+ name: "SelectContext",
24
+ hookName: "useSelectContext",
25
+ providerName: "<SelectProvider />"
26
+ });
27
+
28
+ //#endregion
29
+ //#region src/components/select/select-clear-trigger.tsx
30
+ const SelectClearTrigger = forwardRef((props, ref) => {
31
+ const mergedProps = mergeProps(useSelectContext().getClearTriggerProps(), props);
32
+ return /* @__PURE__ */ jsx(sprawlify.button, {
33
+ ...mergedProps,
34
+ ref
35
+ });
36
+ });
37
+ SelectClearTrigger.displayName = "SelectClearTrigger";
38
+
39
+ //#endregion
40
+ //#region src/components/select/select-content.tsx
41
+ const SelectContent = forwardRef((props, ref) => {
42
+ const select$1 = useSelectContext();
43
+ const presence = usePresenceContext();
44
+ const mergedProps = mergeProps(select$1.getContentProps(), presence.getPresenceProps(), props);
45
+ if (presence.unmounted) return null;
46
+ return /* @__PURE__ */ jsx(sprawlify.div, {
47
+ ...mergedProps,
48
+ ref: composeRefs(presence.ref, ref)
49
+ });
50
+ });
51
+ SelectContent.displayName = "SelectContent";
52
+
53
+ //#endregion
54
+ //#region src/components/select/select-context.tsx
55
+ const SelectContext = (props) => props.children(useSelectContext());
56
+
57
+ //#endregion
58
+ //#region src/components/select/select-control.tsx
59
+ const SelectControl = forwardRef((props, ref) => {
60
+ const mergedProps = mergeProps(useSelectContext().getControlProps(), props);
61
+ return /* @__PURE__ */ jsx(sprawlify.div, {
62
+ ...mergedProps,
63
+ ref
64
+ });
65
+ });
66
+ SelectControl.displayName = "SelectControl";
67
+
68
+ //#endregion
69
+ //#region src/components/select/select-hidden-select.tsx
70
+ const SelectHiddenSelect = forwardRef((props, ref) => {
71
+ const select$1 = useSelectContext();
72
+ const mergedProps = mergeProps(select$1.getHiddenSelectProps(), props);
73
+ const isValueEmpty = select$1.value.length === 0;
74
+ const field = useFieldContext();
75
+ return /* @__PURE__ */ jsxs(sprawlify.select, {
76
+ "aria-describedby": field?.ariaDescribedby,
77
+ ...mergedProps,
78
+ ref,
79
+ children: [isValueEmpty && /* @__PURE__ */ jsx("option", { value: "" }), select$1.collection.items.map((item, index) => /* @__PURE__ */ jsx("option", {
80
+ value: select$1.collection.getItemValue(item) ?? "",
81
+ disabled: select$1.collection.getItemDisabled(item),
82
+ children: select$1.collection.stringifyItem(item)
83
+ }, index))]
84
+ });
85
+ });
86
+ SelectHiddenSelect.displayName = "SelectHiddenSelect";
87
+
88
+ //#endregion
89
+ //#region src/components/select/select-indicator.tsx
90
+ const SelectIndicator = forwardRef((props, ref) => {
91
+ const mergedProps = mergeProps(useSelectContext().getIndicatorProps(), props);
92
+ return /* @__PURE__ */ jsx(sprawlify.div, {
93
+ ...mergedProps,
94
+ ref
95
+ });
96
+ });
97
+ SelectIndicator.displayName = "SelectIndicator";
98
+
99
+ //#endregion
100
+ //#region src/components/select/use-select-item-context.ts
101
+ const [SelectItemProvider, useSelectItemContext] = createContext$1({
102
+ name: "SelectItemContext",
103
+ hookName: "useSelectItemContext",
104
+ providerName: "<SelectItemProvider />"
105
+ });
106
+
107
+ //#endregion
108
+ //#region src/components/select/use-select-item-props-context.ts
109
+ const [SelectItemPropsProvider, useSelectItemPropsContext] = createContext$1({
110
+ name: "SelectItemPropsContext",
111
+ hookName: "useSelectItemPropsContext",
112
+ providerName: "<SelectItemPropsProvider />"
113
+ });
114
+
115
+ //#endregion
116
+ //#region src/components/select/select-item.tsx
117
+ const splitItemProps = createSplitProps();
118
+ const SelectItem = forwardRef((props, ref) => {
119
+ const [itemProps, localProps] = splitItemProps(props, ["item", "persistFocus"]);
120
+ const select$1 = useSelectContext();
121
+ const mergedProps = mergeProps(select$1.getItemProps(itemProps), localProps);
122
+ return /* @__PURE__ */ jsx(SelectItemPropsProvider, {
123
+ value: itemProps,
124
+ children: /* @__PURE__ */ jsx(SelectItemProvider, {
125
+ value: select$1.getItemState(itemProps),
126
+ children: /* @__PURE__ */ jsx(sprawlify.div, {
127
+ ...mergedProps,
128
+ ref
129
+ })
130
+ })
131
+ });
132
+ });
133
+ SelectItem.displayName = "SelectItem";
134
+
135
+ //#endregion
136
+ //#region src/components/select/select-item-context.tsx
137
+ const SelectItemContext = (props) => props.children(useSelectItemContext());
138
+
139
+ //#endregion
140
+ //#region src/components/select/use-select-item-group-props.tsx
141
+ const [SelectItemGroupPropsProvider, useSelectItemGroupPropsContext] = createContext$1({
142
+ name: "SelectItemGroupPropsContext",
143
+ hookName: "useSelectItemGroupPropsContext",
144
+ providerName: "<SelectItemGroupPropsProvider />"
145
+ });
146
+
147
+ //#endregion
148
+ //#region src/components/select/select-item-group.tsx
149
+ const splitItemGroupProps = createSplitProps();
150
+ const SelectItemGroup = forwardRef((props, ref) => {
151
+ const id = useId();
152
+ const [_itemGroupProps, localProps] = splitItemGroupProps(props, ["id"]);
153
+ const itemGroupProps = {
154
+ id,
155
+ ..._itemGroupProps
156
+ };
157
+ const mergedProps = mergeProps(useSelectContext().getItemGroupProps(itemGroupProps), localProps);
158
+ return /* @__PURE__ */ jsx(SelectItemGroupPropsProvider, {
159
+ value: itemGroupProps,
160
+ children: /* @__PURE__ */ jsx(sprawlify.div, {
161
+ ...mergedProps,
162
+ ref
163
+ })
164
+ });
165
+ });
166
+ SelectItemGroup.displayName = "SelectItemGroup";
167
+
168
+ //#endregion
169
+ //#region src/components/select/select-item-group-label.tsx
170
+ const SelectItemGroupLabel = forwardRef((props, ref) => {
171
+ const select$1 = useSelectContext();
172
+ const itemGroupProps = useSelectItemGroupPropsContext();
173
+ const mergedProps = mergeProps(select$1.getItemGroupLabelProps({ htmlFor: itemGroupProps.id }), props);
174
+ return /* @__PURE__ */ jsx(sprawlify.div, {
175
+ ...mergedProps,
176
+ ref
177
+ });
178
+ });
179
+ SelectItemGroupLabel.displayName = "SelectItemGroupLabel";
180
+
181
+ //#endregion
182
+ //#region src/components/select/select-item-indicator.tsx
183
+ const SelectItemIndicator = forwardRef((props, ref) => {
184
+ const select$1 = useSelectContext();
185
+ const itemProps = useSelectItemPropsContext();
186
+ const mergedProps = mergeProps(select$1.getItemIndicatorProps(itemProps), props);
187
+ return /* @__PURE__ */ jsx(sprawlify.div, {
188
+ ...mergedProps,
189
+ ref
190
+ });
191
+ });
192
+ SelectItemIndicator.displayName = "SelectItemIndicator";
193
+
194
+ //#endregion
195
+ //#region src/components/select/select-item-text.tsx
196
+ const SelectItemText = forwardRef((props, ref) => {
197
+ const select$1 = useSelectContext();
198
+ const itemProps = useSelectItemPropsContext();
199
+ const mergedProps = mergeProps(select$1.getItemTextProps(itemProps), props);
200
+ return /* @__PURE__ */ jsx(sprawlify.span, {
201
+ ...mergedProps,
202
+ ref
203
+ });
204
+ });
205
+ SelectItemText.displayName = "SelectItemText";
206
+
207
+ //#endregion
208
+ //#region src/components/select/select-label.tsx
209
+ const SelectLabel = forwardRef((props, ref) => {
210
+ const mergedProps = mergeProps(useSelectContext().getLabelProps(), props);
211
+ return /* @__PURE__ */ jsx(sprawlify.label, {
212
+ ...mergedProps,
213
+ ref
214
+ });
215
+ });
216
+ SelectLabel.displayName = "SelectLabel";
217
+
218
+ //#endregion
219
+ //#region src/components/select/select-list.tsx
220
+ const SelectList = forwardRef((props, ref) => {
221
+ const mergedProps = mergeProps(useSelectContext().getListProps(), props);
222
+ return /* @__PURE__ */ jsx(sprawlify.div, {
223
+ ...mergedProps,
224
+ ref
225
+ });
226
+ });
227
+ SelectList.displayName = "SelectList";
228
+
229
+ //#endregion
230
+ //#region src/components/select/select-positioner.tsx
231
+ const SelectPositioner = forwardRef((props, ref) => {
232
+ const mergedProps = mergeProps(useSelectContext().getPositionerProps(), props);
233
+ if (usePresenceContext().unmounted) return null;
234
+ return /* @__PURE__ */ jsx(sprawlify.div, {
235
+ ...mergedProps,
236
+ ref
237
+ });
238
+ });
239
+ SelectPositioner.displayName = "SelectPositioner";
240
+
241
+ //#endregion
242
+ //#region src/components/select/use-select.ts
243
+ const useSelect = (props) => {
244
+ const id = useId();
245
+ const { dir } = useLocaleContext();
246
+ const { getRootNode } = useEnvironmentContext();
247
+ const field = useFieldContext();
248
+ const machineProps = {
249
+ id,
250
+ ids: {
251
+ label: field?.ids.label,
252
+ hiddenSelect: field?.ids.control
253
+ },
254
+ disabled: field?.disabled,
255
+ readOnly: field?.readOnly,
256
+ invalid: field?.invalid,
257
+ required: field?.required,
258
+ dir,
259
+ getRootNode,
260
+ ...props
261
+ };
262
+ const service = useMachine(select.machine, machineProps);
263
+ return select.connect(service, normalizeProps);
264
+ };
265
+
266
+ //#endregion
267
+ //#region src/components/select/select-root.tsx
268
+ const SelectImpl$1 = (props, ref) => {
269
+ const [presenceProps, selectProps] = splitPresenceProps(props);
270
+ const [useSelectProps, localProps] = createSplitProps()(selectProps, [
271
+ "closeOnSelect",
272
+ "collection",
273
+ "composite",
274
+ "defaultHighlightedValue",
275
+ "defaultOpen",
276
+ "defaultValue",
277
+ "deselectable",
278
+ "disabled",
279
+ "form",
280
+ "highlightedValue",
281
+ "id",
282
+ "ids",
283
+ "invalid",
284
+ "loopFocus",
285
+ "multiple",
286
+ "name",
287
+ "onFocusOutside",
288
+ "onHighlightChange",
289
+ "onInteractOutside",
290
+ "onOpenChange",
291
+ "onPointerDownOutside",
292
+ "onSelect",
293
+ "onValueChange",
294
+ "open",
295
+ "positioning",
296
+ "readOnly",
297
+ "required",
298
+ "scrollToIndexFn",
299
+ "value"
300
+ ]);
301
+ const select$1 = useSelect(useSelectProps);
302
+ const presence = usePresence(mergeProps({ present: select$1.open }, presenceProps));
303
+ const mergedProps = mergeProps(select$1.getRootProps(), localProps);
304
+ return /* @__PURE__ */ jsx(SelectProvider, {
305
+ value: select$1,
306
+ children: /* @__PURE__ */ jsx(PresenceProvider, {
307
+ value: presence,
308
+ children: /* @__PURE__ */ jsx(sprawlify.div, {
309
+ ...mergedProps,
310
+ ref
311
+ })
312
+ })
313
+ });
314
+ };
315
+ const SelectRoot = forwardRef(SelectImpl$1);
316
+
317
+ //#endregion
318
+ //#region src/components/select/select-root-provider.tsx
319
+ const SelectImpl = (props, ref) => {
320
+ const [presenceProps, selectProps] = splitPresenceProps(props);
321
+ const [{ value: select$1 }, localProps] = createSplitProps()(selectProps, ["value"]);
322
+ const presence = usePresence(mergeProps({ present: select$1.open }, presenceProps));
323
+ const mergedProps = mergeProps(select$1.getRootProps(), localProps);
324
+ return /* @__PURE__ */ jsx(SelectProvider, {
325
+ value: select$1,
326
+ children: /* @__PURE__ */ jsx(PresenceProvider, {
327
+ value: presence,
328
+ children: /* @__PURE__ */ jsx(sprawlify.div, {
329
+ ...mergedProps,
330
+ ref
331
+ })
332
+ })
333
+ });
334
+ };
335
+ const SelectRootProvider = forwardRef(SelectImpl);
336
+
337
+ //#endregion
338
+ //#region src/components/select/select-trigger.tsx
339
+ const SelectTrigger = forwardRef((props, ref) => {
340
+ const mergedProps = mergeProps(useSelectContext().getTriggerProps(), props);
341
+ return /* @__PURE__ */ jsx(sprawlify.button, {
342
+ ...mergedProps,
343
+ ref
344
+ });
345
+ });
346
+ SelectTrigger.displayName = "SelectTrigger";
347
+
348
+ //#endregion
349
+ //#region src/components/select/select-value-text.tsx
350
+ const SelectValueText = forwardRef((props, ref) => {
351
+ const { children, placeholder, ...localprops } = props;
352
+ const select$1 = useSelectContext();
353
+ const mergedProps = mergeProps(select$1.getValueTextProps(), localprops);
354
+ return /* @__PURE__ */ jsx(sprawlify.span, {
355
+ ...mergedProps,
356
+ ref,
357
+ children: children || select$1.valueAsString || placeholder
358
+ });
359
+ });
360
+ SelectValueText.displayName = "SelectValueText";
361
+
362
+ //#endregion
363
+ //#region src/components/select/select.ts
364
+ var select_exports = /* @__PURE__ */ __export({
365
+ ClearTrigger: () => SelectClearTrigger,
366
+ Content: () => SelectContent,
367
+ Context: () => SelectContext,
368
+ Control: () => SelectControl,
369
+ HiddenSelect: () => SelectHiddenSelect,
370
+ Indicator: () => SelectIndicator,
371
+ Item: () => SelectItem,
372
+ ItemContext: () => SelectItemContext,
373
+ ItemGroup: () => SelectItemGroup,
374
+ ItemGroupLabel: () => SelectItemGroupLabel,
375
+ ItemIndicator: () => SelectItemIndicator,
376
+ ItemText: () => SelectItemText,
377
+ Label: () => SelectLabel,
378
+ List: () => SelectList,
379
+ Positioner: () => SelectPositioner,
380
+ Root: () => SelectRoot,
381
+ RootProvider: () => SelectRootProvider,
382
+ Trigger: () => SelectTrigger,
383
+ ValueText: () => SelectValueText
384
+ });
385
+
386
+ //#endregion
387
+ export { select_exports as Select, SelectClearTrigger, SelectContent, SelectContext, SelectControl, SelectHiddenSelect, SelectIndicator, SelectItem, SelectItemContext, SelectItemGroup, SelectItemGroupLabel, SelectItemIndicator, SelectItemText, SelectLabel, SelectList, SelectPositioner, SelectRoot, SelectRootProvider, SelectTrigger, SelectValueText, createListCollection, selectAnatomy, useListCollection, useSelect, useSelectContext, useSelectItemContext };
@@ -0,0 +1,16 @@
1
+ //#region src/utils/compose-refs.ts
2
+ function composeRefs(...refs) {
3
+ return (node) => {
4
+ const cleanUps = [];
5
+ for (const ref of refs) if (typeof ref === "function") {
6
+ const cb = ref(node);
7
+ if (typeof cb === "function") cleanUps.push(cb);
8
+ } else if (ref) ref.current = node;
9
+ if (cleanUps.length) return () => {
10
+ for (const cleanUp of cleanUps) cleanUp();
11
+ };
12
+ };
13
+ }
14
+
15
+ //#endregion
16
+ export { composeRefs as t };
@@ -0,0 +1,22 @@
1
+
2
+ //#region src/utils/compose-refs.ts
3
+ function composeRefs(...refs) {
4
+ return (node) => {
5
+ const cleanUps = [];
6
+ for (const ref of refs) if (typeof ref === "function") {
7
+ const cb = ref(node);
8
+ if (typeof cb === "function") cleanUps.push(cb);
9
+ } else if (ref) ref.current = node;
10
+ if (cleanUps.length) return () => {
11
+ for (const cleanUp of cleanUps) cleanUp();
12
+ };
13
+ };
14
+ }
15
+
16
+ //#endregion
17
+ Object.defineProperty(exports, 'composeRefs', {
18
+ enumerable: true,
19
+ get: function () {
20
+ return composeRefs;
21
+ }
22
+ });