@duro-app/ui 5.12.0 → 5.14.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 (270) hide show
  1. package/README.md +49 -0
  2. package/dist/Table-DnaoH-h5.js +1806 -0
  3. package/dist/Table-DnaoH-h5.js.map +1 -0
  4. package/dist/components/AppShell/native.css.d.ts +53 -0
  5. package/dist/components/AppShell/native.css.d.ts.map +1 -0
  6. package/dist/components/Button/Button.d.ts.map +1 -1
  7. package/dist/components/ColorMode/ColorMode.d.ts +2 -1
  8. package/dist/components/ColorMode/ColorMode.d.ts.map +1 -1
  9. package/dist/components/ColorMode/storage.d.ts +4 -0
  10. package/dist/components/ColorMode/storage.d.ts.map +1 -0
  11. package/dist/components/ColorMode/styles.css.d.ts +4 -0
  12. package/dist/components/ColorMode/styles.css.d.ts.map +1 -1
  13. package/dist/components/ColorMode/useSystemScheme.d.ts +7 -0
  14. package/dist/components/ColorMode/useSystemScheme.d.ts.map +1 -0
  15. package/dist/components/Combobox/Combobox.d.ts +7 -2
  16. package/dist/components/Combobox/Combobox.d.ts.map +1 -1
  17. package/dist/components/Combobox/comboboxState.d.ts +29 -0
  18. package/dist/components/Combobox/comboboxState.d.ts.map +1 -0
  19. package/dist/components/Combobox/native.css.d.ts +27 -0
  20. package/dist/components/Combobox/native.css.d.ts.map +1 -0
  21. package/dist/components/Combobox/useComboboxRoot.d.ts +6 -10
  22. package/dist/components/Combobox/useComboboxRoot.d.ts.map +1 -1
  23. package/dist/components/Drawer/Drawer.d.ts +12 -37
  24. package/dist/components/Drawer/Drawer.d.ts.map +1 -1
  25. package/dist/components/Drawer/Drawer.meta.d.ts.map +1 -1
  26. package/dist/components/Drawer/DrawerScroll.stories.d.ts.map +1 -1
  27. package/dist/components/Drawer/DrawerSnap.stories.d.ts +22 -0
  28. package/dist/components/Drawer/DrawerSnap.stories.d.ts.map +1 -0
  29. package/dist/components/Drawer/native.css.d.ts +59 -0
  30. package/dist/components/Drawer/native.css.d.ts.map +1 -0
  31. package/dist/components/Drawer/parts.css.d.ts +96 -0
  32. package/dist/components/Drawer/parts.css.d.ts.map +1 -0
  33. package/dist/components/Drawer/parts.d.ts +56 -0
  34. package/dist/components/Drawer/parts.d.ts.map +1 -0
  35. package/dist/components/Drawer/sheetPhysics.d.ts +56 -0
  36. package/dist/components/Drawer/sheetPhysics.d.ts.map +1 -0
  37. package/dist/components/Drawer/styles.css.d.ts +16 -57
  38. package/dist/components/Drawer/styles.css.d.ts.map +1 -1
  39. package/dist/components/Drawer/touchInput.d.ts +35 -0
  40. package/dist/components/Drawer/touchInput.d.ts.map +1 -0
  41. package/dist/components/Drawer/useDrawerRoot.d.ts +33 -0
  42. package/dist/components/Drawer/useDrawerRoot.d.ts.map +1 -0
  43. package/dist/components/Drawer/useSheetHeights.d.ts +7 -0
  44. package/dist/components/Drawer/useSheetHeights.d.ts.map +1 -0
  45. package/dist/components/Drawer/useSwipeDismiss.d.ts +13 -2
  46. package/dist/components/Drawer/useSwipeDismiss.d.ts.map +1 -1
  47. package/dist/components/Form/FormSubmitContext.d.ts +8 -0
  48. package/dist/components/Form/FormSubmitContext.d.ts.map +1 -0
  49. package/dist/components/Listbox/native.css.d.ts +84 -0
  50. package/dist/components/Listbox/native.css.d.ts.map +1 -0
  51. package/dist/components/Menu/Menu.d.ts +7 -1
  52. package/dist/components/Menu/Menu.d.ts.map +1 -1
  53. package/dist/components/Menu/native.css.d.ts +14 -0
  54. package/dist/components/Menu/native.css.d.ts.map +1 -0
  55. package/dist/components/Menu/useMenuOpen.d.ts +16 -0
  56. package/dist/components/Menu/useMenuOpen.d.ts.map +1 -0
  57. package/dist/components/Menu/useMenuRoot.d.ts +3 -6
  58. package/dist/components/Menu/useMenuRoot.d.ts.map +1 -1
  59. package/dist/components/Popover/native.css.d.ts +11 -0
  60. package/dist/components/Popover/native.css.d.ts.map +1 -0
  61. package/dist/components/Select/Select.d.ts +9 -2
  62. package/dist/components/Select/Select.d.ts.map +1 -1
  63. package/dist/components/Select/Select.stories.d.ts +11 -0
  64. package/dist/components/Select/Select.stories.d.ts.map +1 -1
  65. package/dist/components/Select/native.css.d.ts +11 -0
  66. package/dist/components/Select/native.css.d.ts.map +1 -0
  67. package/dist/components/Select/selectState.d.ts +21 -0
  68. package/dist/components/Select/selectState.d.ts.map +1 -0
  69. package/dist/components/Select/styles.css.d.ts +10 -0
  70. package/dist/components/Select/styles.css.d.ts.map +1 -1
  71. package/dist/components/Select/useSelectRoot.d.ts +6 -8
  72. package/dist/components/Select/useSelectRoot.d.ts.map +1 -1
  73. package/dist/components/SideNav/Chevron.d.ts +4 -0
  74. package/dist/components/SideNav/Chevron.d.ts.map +1 -0
  75. package/dist/components/SideNav/SideNav.d.ts.map +1 -1
  76. package/dist/components/SideNav/styles.css.d.ts +6 -0
  77. package/dist/components/SideNav/styles.css.d.ts.map +1 -1
  78. package/dist/components/SideNav/types.d.ts +6 -0
  79. package/dist/components/SideNav/types.d.ts.map +1 -0
  80. package/dist/components/SplitPane/SplitPane.d.ts +38 -0
  81. package/dist/components/SplitPane/SplitPane.d.ts.map +1 -0
  82. package/dist/components/SplitPane/SplitPane.meta.d.ts +3 -0
  83. package/dist/components/SplitPane/SplitPane.meta.d.ts.map +1 -0
  84. package/dist/components/SplitPane/SplitPane.stories.d.ts +17 -0
  85. package/dist/components/SplitPane/SplitPane.stories.d.ts.map +1 -0
  86. package/dist/components/SplitPane/styles.css.d.ts +78 -0
  87. package/dist/components/SplitPane/styles.css.d.ts.map +1 -0
  88. package/dist/components/Tabs/TabLayout.d.ts +7 -0
  89. package/dist/components/Tabs/TabLayout.d.ts.map +1 -0
  90. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  91. package/dist/components/Tabs/indicator.d.ts +28 -0
  92. package/dist/components/Tabs/indicator.d.ts.map +1 -0
  93. package/dist/components/Tabs/styles.css.d.ts +4 -0
  94. package/dist/components/Tabs/styles.css.d.ts.map +1 -1
  95. package/dist/components/Tabs/useTabIndicator.d.ts +4 -0
  96. package/dist/components/Tabs/useTabIndicator.d.ts.map +1 -0
  97. package/dist/components/Tabs/useTabKeys.d.ts +13 -0
  98. package/dist/components/Tabs/useTabKeys.d.ts.map +1 -0
  99. package/dist/components/Tag/RemoveGlyph.d.ts +4 -0
  100. package/dist/components/Tag/RemoveGlyph.d.ts.map +1 -0
  101. package/dist/components/Tag/Tag.d.ts +2 -24
  102. package/dist/components/Tag/Tag.d.ts.map +1 -1
  103. package/dist/components/Tag/styles.css.d.ts +8 -0
  104. package/dist/components/Tag/styles.css.d.ts.map +1 -1
  105. package/dist/components/Tag/types.d.ts +39 -0
  106. package/dist/components/Tag/types.d.ts.map +1 -0
  107. package/dist/components/ThemeProvider/ThemeOverrides.stories.d.ts +13 -0
  108. package/dist/components/ThemeProvider/ThemeOverrides.stories.d.ts.map +1 -0
  109. package/dist/components/ThemeProvider/ThemeProvider.d.ts +9 -2
  110. package/dist/components/ThemeProvider/ThemeProvider.d.ts.map +1 -1
  111. package/dist/components/ThemeProvider/overrideRule.d.ts +7 -0
  112. package/dist/components/ThemeProvider/overrideRule.d.ts.map +1 -0
  113. package/dist/components/ThemeProvider/overrides.d.ts +16 -0
  114. package/dist/components/ThemeProvider/overrides.d.ts.map +1 -0
  115. package/dist/components/Toast/ToastProvider.d.ts +2 -21
  116. package/dist/components/Toast/ToastProvider.d.ts.map +1 -1
  117. package/dist/components/Toast/native.css.d.ts +81 -0
  118. package/dist/components/Toast/native.css.d.ts.map +1 -0
  119. package/dist/components/Toast/store.d.ts +47 -0
  120. package/dist/components/Toast/store.d.ts.map +1 -0
  121. package/dist/components/Tooltip/TooltipHint.d.ts +9 -0
  122. package/dist/components/Tooltip/TooltipHint.d.ts.map +1 -0
  123. package/dist/components/Tree/Tree.d.ts.map +1 -1
  124. package/dist/components/Tree/styles.css.d.ts +6 -0
  125. package/dist/components/Tree/styles.css.d.ts.map +1 -1
  126. package/dist/components/Tree/useTreeKeyboard.d.ts +19 -0
  127. package/dist/components/Tree/useTreeKeyboard.d.ts.map +1 -0
  128. package/dist/components/VirtualList/VirtualList.d.ts +33 -0
  129. package/dist/components/VirtualList/VirtualList.d.ts.map +1 -0
  130. package/dist/components/VirtualList/VirtualList.meta.d.ts +3 -0
  131. package/dist/components/VirtualList/VirtualList.meta.d.ts.map +1 -0
  132. package/dist/components/VirtualList/VirtualList.stories.d.ts +15 -0
  133. package/dist/components/VirtualList/VirtualList.stories.d.ts.map +1 -0
  134. package/dist/components/VirtualList/styles.css.d.ts +28 -0
  135. package/dist/components/VirtualList/styles.css.d.ts.map +1 -0
  136. package/dist/index.css +1 -1
  137. package/dist/index.d.ts +4 -2
  138. package/dist/index.d.ts.map +1 -1
  139. package/dist/index.js +5090 -4381
  140. package/dist/index.js.map +1 -1
  141. package/dist/shared/ButtonHost.d.ts +11 -0
  142. package/dist/shared/ButtonHost.d.ts.map +1 -0
  143. package/dist/shared/pressableChild.d.ts +14 -0
  144. package/dist/shared/pressableChild.d.ts.map +1 -0
  145. package/dist/shared/textOf.d.ts +7 -0
  146. package/dist/shared/textOf.d.ts.map +1 -0
  147. package/dist/table.js +1 -1
  148. package/package.json +3 -2
  149. package/src/components/AppShell/AppShell.meta.ts +1 -1
  150. package/src/components/AppShell/AppShell.native.tsx +174 -0
  151. package/src/components/AppShell/native.css.ts +56 -0
  152. package/src/components/Button/Button.tsx +15 -4
  153. package/src/components/ColorMode/ColorMode.meta.ts +1 -1
  154. package/src/components/ColorMode/ColorMode.tsx +16 -37
  155. package/src/components/ColorMode/storage.native.ts +8 -0
  156. package/src/components/ColorMode/storage.ts +19 -0
  157. package/src/components/ColorMode/styles.css.ts +6 -0
  158. package/src/components/ColorMode/useSystemScheme.native.ts +6 -0
  159. package/src/components/ColorMode/useSystemScheme.ts +19 -0
  160. package/src/components/Combobox/Combobox.meta.ts +1 -1
  161. package/src/components/Combobox/Combobox.native.tsx +295 -0
  162. package/src/components/Combobox/Combobox.tsx +14 -8
  163. package/src/components/Combobox/comboboxState.ts +107 -0
  164. package/src/components/Combobox/native.css.ts +33 -0
  165. package/src/components/Combobox/useComboboxRoot.ts +17 -91
  166. package/src/components/Drawer/Drawer.meta.ts +2 -1
  167. package/src/components/Drawer/Drawer.native.tsx +491 -0
  168. package/src/components/Drawer/Drawer.tsx +65 -143
  169. package/src/components/Drawer/DrawerScroll.stories.tsx +4 -54
  170. package/src/components/Drawer/DrawerSnap.stories.tsx +225 -0
  171. package/src/components/Drawer/native.css.ts +62 -0
  172. package/src/components/Drawer/parts.css.ts +125 -0
  173. package/src/components/Drawer/parts.tsx +110 -0
  174. package/src/components/Drawer/sheetPhysics.ts +103 -0
  175. package/src/components/Drawer/styles.css.ts +18 -73
  176. package/src/components/Drawer/touchInput.ts +81 -0
  177. package/src/components/Drawer/useDrawerRoot.ts +90 -0
  178. package/src/components/Drawer/useSheetHeights.ts +42 -0
  179. package/src/components/Drawer/useSwipeDismiss.ts +146 -23
  180. package/src/components/Form/Form.meta.ts +1 -1
  181. package/src/components/Form/Form.native.tsx +120 -0
  182. package/src/components/Form/FormSubmitContext.ts +12 -0
  183. package/src/components/Listbox/Listbox.meta.ts +1 -1
  184. package/src/components/Listbox/Listbox.native.tsx +153 -0
  185. package/src/components/Listbox/native.css.ts +91 -0
  186. package/src/components/Menu/Menu.meta.ts +1 -1
  187. package/src/components/Menu/Menu.native.tsx +268 -0
  188. package/src/components/Menu/Menu.tsx +11 -2
  189. package/src/components/Menu/native.css.ts +18 -0
  190. package/src/components/Menu/useMenuOpen.ts +33 -0
  191. package/src/components/Menu/useMenuRoot.ts +7 -26
  192. package/src/components/Popover/Popover.meta.ts +1 -1
  193. package/src/components/Popover/Popover.native.tsx +205 -0
  194. package/src/components/Popover/native.css.ts +13 -0
  195. package/src/components/ScrollArea/ScrollArea.meta.ts +1 -1
  196. package/src/components/ScrollArea/ScrollArea.native.tsx +61 -0
  197. package/src/components/Select/Select.meta.ts +1 -1
  198. package/src/components/Select/Select.native.tsx +224 -0
  199. package/src/components/Select/Select.stories.tsx +49 -1
  200. package/src/components/Select/Select.tsx +20 -3
  201. package/src/components/Select/native.css.ts +13 -0
  202. package/src/components/Select/selectState.ts +36 -0
  203. package/src/components/Select/styles.css.ts +11 -0
  204. package/src/components/Select/useSelectRoot.ts +9 -30
  205. package/src/components/SideNav/Chevron.native.tsx +20 -0
  206. package/src/components/SideNav/Chevron.tsx +20 -0
  207. package/src/components/SideNav/SideNav.meta.ts +1 -1
  208. package/src/components/SideNav/SideNav.tsx +57 -41
  209. package/src/components/SideNav/styles.css.ts +8 -0
  210. package/src/components/SideNav/types.ts +6 -0
  211. package/src/components/SplitPane/SplitPane.meta.ts +40 -0
  212. package/src/components/SplitPane/SplitPane.native.tsx +47 -0
  213. package/src/components/SplitPane/SplitPane.stories.tsx +148 -0
  214. package/src/components/SplitPane/SplitPane.tsx +218 -0
  215. package/src/components/SplitPane/styles.css.ts +81 -0
  216. package/src/components/Tabs/TabLayout.native.tsx +9 -0
  217. package/src/components/Tabs/TabLayout.tsx +6 -0
  218. package/src/components/Tabs/Tabs.meta.ts +1 -1
  219. package/src/components/Tabs/Tabs.tsx +38 -136
  220. package/src/components/Tabs/indicator.ts +36 -0
  221. package/src/components/Tabs/styles.css.ts +7 -0
  222. package/src/components/Tabs/useTabIndicator.native.ts +35 -0
  223. package/src/components/Tabs/useTabIndicator.ts +49 -0
  224. package/src/components/Tabs/useTabKeys.native.ts +2 -0
  225. package/src/components/Tabs/useTabKeys.ts +99 -0
  226. package/src/components/Tag/RemoveGlyph.native.tsx +17 -0
  227. package/src/components/Tag/RemoveGlyph.tsx +10 -0
  228. package/src/components/Tag/Tag.meta.ts +1 -1
  229. package/src/components/Tag/Tag.native.tsx +70 -0
  230. package/src/components/Tag/Tag.tsx +9 -37
  231. package/src/components/Tag/styles.css.ts +9 -0
  232. package/src/components/Tag/types.ts +43 -0
  233. package/src/components/ThemeProvider/ThemeOverrides.stories.tsx +113 -0
  234. package/src/components/ThemeProvider/ThemeProvider.meta.ts +1 -1
  235. package/src/components/ThemeProvider/ThemeProvider.native.tsx +36 -7
  236. package/src/components/ThemeProvider/ThemeProvider.tsx +42 -6
  237. package/src/components/ThemeProvider/overrideRule.ts +39 -0
  238. package/src/components/ThemeProvider/overrides.ts +27 -0
  239. package/src/components/Toast/Toast.meta.ts +1 -1
  240. package/src/components/Toast/ToastProvider.native.tsx +226 -0
  241. package/src/components/Toast/ToastProvider.tsx +22 -84
  242. package/src/components/Toast/native.css.ts +78 -0
  243. package/src/components/Toast/store.ts +96 -0
  244. package/src/components/Toggle/Toggle.tsx +3 -3
  245. package/src/components/Tooltip/Tooltip.meta.ts +1 -1
  246. package/src/components/Tooltip/Tooltip.native.tsx +36 -0
  247. package/src/components/Tooltip/TooltipHint.ts +13 -0
  248. package/src/components/Tree/Tree.meta.ts +1 -1
  249. package/src/components/Tree/Tree.tsx +23 -135
  250. package/src/components/Tree/styles.css.ts +6 -0
  251. package/src/components/Tree/useTreeKeyboard.native.ts +5 -0
  252. package/src/components/Tree/useTreeKeyboard.ts +152 -0
  253. package/src/components/VirtualList/VirtualList.meta.ts +39 -0
  254. package/src/components/VirtualList/VirtualList.stories.tsx +95 -0
  255. package/src/components/VirtualList/VirtualList.tsx +103 -0
  256. package/src/components/VirtualList/styles.css.ts +31 -0
  257. package/src/form.native.ts +7 -0
  258. package/src/hooks/useContainerBelow.native.ts +30 -0
  259. package/src/index.native.ts +48 -0
  260. package/src/index.ts +9 -1
  261. package/src/shared/ButtonHost.native.tsx +70 -0
  262. package/src/shared/ButtonHost.tsx +12 -0
  263. package/src/shared/focusInput.native.ts +18 -0
  264. package/src/shared/portal/AnchoredOverlay.native.tsx +117 -0
  265. package/src/shared/pressableChild.ts +33 -0
  266. package/src/shared/textOf.ts +13 -0
  267. package/src/shared/useKeyboardHeight.native.ts +18 -0
  268. package/src/shared/useScreenReaderEnabled.native.ts +19 -0
  269. package/dist/Table-ColfpgKV.js +0 -1552
  270. package/dist/Table-ColfpgKV.js.map +0 -1
@@ -0,0 +1,7 @@
1
+ /**
2
+ * The OS colour scheme, live. The first render answers `'dark'`, what the
3
+ * server renders without a DOM, so hydration matches; the effect then reads
4
+ * `prefers-color-scheme` and follows its changes.
5
+ */
6
+ export declare function useSystemScheme(): 'light' | 'dark';
7
+ //# sourceMappingURL=useSystemScheme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSystemScheme.d.ts","sourceRoot":"","sources":["../../../src/components/ColorMode/useSystemScheme.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,OAAO,GAAG,MAAM,CAWlD"}
@@ -17,9 +17,14 @@ declare function Input({ placeholder, children }: {
17
17
  declare function Trigger({ children }: {
18
18
  children?: ReactNode;
19
19
  }): import("react/jsx-runtime").JSX.Element;
20
- declare function Popup({ children }: {
20
+ interface PopupProps {
21
21
  children: ReactNode;
22
- }): import("react/jsx-runtime").JSX.Element;
22
+ /** The list's accessible name; on native also the sheet's title. */
23
+ label?: string;
24
+ /** Native only: the sheet header's text button that closes it unchanged. Default: 'Cancel' */
25
+ cancelLabel?: string;
26
+ }
27
+ declare function Popup({ children, label }: PopupProps): import("react/jsx-runtime").JSX.Element;
23
28
  interface ItemProps {
24
29
  value: string;
25
30
  children: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/Combobox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,SAAS,EAAkD,MAAM,OAAO,CAAA;AAQrF,UAAU,SAAS;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACtC,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,iBAAS,IAAI,CAAC,EACZ,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,aAAa,EACb,UAAU,EACV,aAAa,EACb,aAAa,EACb,QAAQ,GACT,EAAE,SAAS,2CAkBX;AAGD,iBAAS,KAAK,CAAC,EAAC,WAAW,EAAE,QAAQ,EAAC,EAAE;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAC,2CA2CnF;AAGD,iBAAS,OAAO,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAC,2CAmClD;AAMD,iBAAS,KAAK,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAkB/C;AAGD,UAAU,SAAS;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,iBAAS,IAAI,CAAC,EAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAC,EAAE,SAAS,kDA+BpD;AAGD,iBAAS,QAAQ,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAElD;AAGD,iBAAS,KAAK,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,kDAc/C;AAED,eAAO,MAAM,QAAQ;;;;;;;;CAQpB,CAAA"}
1
+ {"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/Combobox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,SAAS,EAAkD,MAAM,OAAO,CAAA;AASrF,UAAU,SAAS;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACtC,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,iBAAS,IAAI,CAAC,EACZ,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,aAAa,EACb,UAAU,EACV,aAAa,EACb,aAAa,EACb,QAAQ,GACT,EAAE,SAAS,2CAkBX;AAGD,iBAAS,KAAK,CAAC,EAAC,WAAW,EAAE,QAAQ,EAAC,EAAE;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAC,2CA2CnF;AAGD,iBAAS,OAAO,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAC,2CAmClD;AAMD,UAAU,UAAU;IAClB,QAAQ,EAAE,SAAS,CAAA;IACnB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,8FAA8F;IAC9F,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,iBAAS,KAAK,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,EAAE,UAAU,2CAmB3C;AAGD,UAAU,SAAS;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,iBAAS,IAAI,CAAC,EAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAC,EAAE,SAAS,kDA6BpD;AAGD,iBAAS,QAAQ,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAElD;AAGD,iBAAS,KAAK,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,kDAY/C;AAED,eAAO,MAAM,QAAQ;;;;;;;;CAQpB,CAAA"}
@@ -0,0 +1,29 @@
1
+ export interface ComboboxStateOptions {
2
+ defaultValue?: string;
3
+ value?: string;
4
+ onValueChange?: (value: string | null) => void;
5
+ inputValue?: string;
6
+ onInputChange?: (value: string) => void;
7
+ initialLabels?: Record<string, string>;
8
+ }
9
+ /** Whether an option's label matches what was typed: a case-insensitive substring. */
10
+ export declare function matchesQuery(label: string, query: string): boolean;
11
+ /**
12
+ * The Combobox's state both platforms share (plan N0, Decision 10): the value
13
+ * and the typed text (each controlled or not), whether it is open, each
14
+ * option's label, choosing an option, and the text/value reconcile on close.
15
+ * Highlight, document order, keys and DOM focus are the web adapter's
16
+ * (useComboboxRoot); the sheet and its pinned input are Combobox.native's.
17
+ */
18
+ export declare function useComboboxState({ defaultValue, value: controlledValue, onValueChange, inputValue: controlledInputValue, onInputChange, initialLabels, }: ComboboxStateOptions): {
19
+ value: string | null;
20
+ setValue: (v: string | null) => void;
21
+ inputValue: string;
22
+ setInputValue: (v: string) => void;
23
+ open: boolean;
24
+ setOpen: import('react').Dispatch<import('react').SetStateAction<boolean>>;
25
+ labels: Record<string, string>;
26
+ registerLabel: (v: string, label: string) => void;
27
+ chooseValue: (itemValue: string) => void;
28
+ };
29
+ //# sourceMappingURL=comboboxState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"comboboxState.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/comboboxState.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,oBAAoB;IACnC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACvC;AAED,sFAAsF;AACtF,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAElE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,YAAY,EACZ,KAAK,EAAE,eAAe,EACtB,aAAa,EACb,UAAU,EAAE,oBAAoB,EAChC,aAAa,EACb,aAAa,GACd,EAAE,oBAAoB;;;;uBAef,MAAM;;;;uBAU0B,MAAM,SAAS,MAAM;6BAM7C,MAAM;EA4CrB"}
@@ -0,0 +1,27 @@
1
+ import { css } from 'react-strict-dom';
2
+ /** Native Combobox additions to the shared styles: the closed field. */
3
+ export declare const nativeStyles: Readonly<{
4
+ readonly nativeFlex: Readonly<{
5
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
6
+ }>;
7
+ readonly field: Readonly<{
8
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
9
+ readonly flexDirection: css.StyleXClassNameFor<"flexDirection", "row">;
10
+ readonly paddingTop: css.StyleXClassNameFor<"paddingTop", string>;
11
+ readonly paddingBottom: css.StyleXClassNameFor<"paddingBottom", string>;
12
+ readonly paddingRight: css.StyleXClassNameFor<"paddingRight", string>;
13
+ }>;
14
+ readonly fieldText: Readonly<{
15
+ readonly color: css.StyleXClassNameFor<"color", string>;
16
+ readonly fontFamily: css.StyleXClassNameFor<"fontFamily", string>;
17
+ readonly fontSize: css.StyleXClassNameFor<"fontSize", string>;
18
+ }>;
19
+ readonly chevronDown: Readonly<{
20
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
21
+ readonly transform: css.StyleXClassNameFor<"transform", "rotate(90deg)">;
22
+ }>;
23
+ readonly fieldPlaceholder: Readonly<{
24
+ readonly color: css.StyleXClassNameFor<"color", string>;
25
+ }>;
26
+ }>;
27
+ //# sourceMappingURL=native.css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native.css.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/native.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAKpC,wEAAwE;AACxE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;EA0BvB,CAAA"}
@@ -1,15 +1,11 @@
1
1
  import { ComboboxContextValue } from './ComboboxContext';
2
- interface UseComboboxRootOptions {
3
- defaultValue?: string;
4
- value?: string;
5
- onValueChange?: (value: string | null) => void;
6
- inputValue?: string;
7
- onInputChange?: (value: string) => void;
8
- initialLabels?: Record<string, string>;
9
- }
10
- export declare function useComboboxRoot({ defaultValue, value: controlledValue, onValueChange, inputValue: controlledInputValue, onInputChange, initialLabels, }: UseComboboxRootOptions): {
2
+ import { ComboboxStateOptions } from './comboboxState';
3
+ /**
4
+ * The web adapter over the shared Combobox state: the highlighted option,
5
+ * document order, keys and DOM focus (the WAI-ARIA editable combobox).
6
+ */
7
+ export declare function useComboboxRoot(options: ComboboxStateOptions): {
11
8
  ctx: ComboboxContextValue;
12
9
  rootRef: import('react').RefObject<HTMLDivElement | null>;
13
10
  };
14
- export {};
15
11
  //# sourceMappingURL=useComboboxRoot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useComboboxRoot.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/useComboboxRoot.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,mBAAmB,CAAA;AAE3D,UAAU,sBAAsB;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACvC;AAED,wBAAgB,eAAe,CAAC,EAC9B,YAAY,EACZ,KAAK,EAAE,eAAe,EACtB,aAAa,EACb,UAAU,EAAE,oBAAoB,EAChC,aAAa,EACb,aAAa,GACd,EAAE,sBAAsB;;;EA+OxB"}
1
+ {"version":3,"file":"useComboboxRoot.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/useComboboxRoot.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAiC,KAAK,oBAAoB,EAAC,MAAM,iBAAiB,CAAA;AAEzF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,oBAAoB;;;EAiL5D"}
@@ -1,48 +1,24 @@
1
1
  import { ReactNode } from 'react';
2
- import { DurationToken } from '@duro-app/tokens/keys';
3
- export type DrawerAnchor = 'right' | 'left' | 'bottom';
4
- export type DrawerSize = 'sm' | 'md' | 'lg';
5
- interface RootProps {
6
- children: ReactNode;
7
- /** Controlled open state */
8
- open?: boolean;
9
- /** Default open state (uncontrolled) */
10
- defaultOpen?: boolean;
11
- /** Called when drawer open state changes */
12
- onOpenChange?: (open: boolean) => void;
13
- /** Which edge the drawer slides from. Default: 'right' */
14
- anchor?: DrawerAnchor;
15
- /** Whether clicking backdrop or pressing Escape closes the drawer. Default: true */
16
- dismissable?: boolean;
17
- /** Whether swipe gesture dismisses the drawer. Default: true */
18
- swipeDismiss?: boolean;
19
- /** Motion token for the close animation. Default: 'fast' (150ms) */
20
- closeAnimationDuration?: DurationToken;
21
- }
22
- declare function Root({ children, open: controlledOpen, defaultOpen, onOpenChange, anchor, dismissable, swipeDismiss, closeAnimationDuration, }: RootProps): import("react/jsx-runtime").JSX.Element;
2
+ import { Description, Footer, Header, Title, DrawerSize, GrabberLabels } from './parts';
3
+ import { DrawerRootProps } from './useDrawerRoot';
4
+ export type { DrawerAnchor, DrawerSize, SnapPoint } from './parts';
5
+ declare function Root({ children, ...props }: DrawerRootProps): import("react/jsx-runtime").JSX.Element;
23
6
  declare function Trigger({ children }: {
24
7
  children: ReactNode;
25
8
  }): import("react/jsx-runtime").JSX.Element;
26
9
  interface PortalProps {
27
10
  children: ReactNode;
28
11
  size?: DrawerSize;
12
+ /** The grabber's accessible names, by what a press does next. Snap sheets only */
13
+ grabberLabels?: GrabberLabels;
29
14
  }
30
- declare function Portal({ children, size }: PortalProps): import("react/jsx-runtime").JSX.Element | null;
31
- declare function Header({ children }: {
32
- children: ReactNode;
33
- }): import("react/jsx-runtime").JSX.Element;
34
- declare function Title({ children }: {
35
- children: ReactNode;
36
- }): import("react/jsx-runtime").JSX.Element;
37
- declare function Description({ children }: {
15
+ declare function Portal({ children, size, grabberLabels }: PortalProps): import("react/jsx-runtime").JSX.Element | null;
16
+ interface BodyProps {
38
17
  children: ReactNode;
39
- }): import("react/jsx-runtime").JSX.Element;
40
- declare function Body({ children }: {
41
- children: ReactNode;
42
- }): import("react/jsx-runtime").JSX.Element;
43
- declare function Footer({ children }: {
44
- children: ReactNode;
45
- }): import("react/jsx-runtime").JSX.Element;
18
+ /** No side padding: rows that run to the panel's edges, as a picker's list. */
19
+ flush?: boolean;
20
+ }
21
+ declare function Body({ children, flush }: BodyProps): import("react/jsx-runtime").JSX.Element;
46
22
  interface CloseProps {
47
23
  children?: ReactNode;
48
24
  'aria-label'?: string;
@@ -59,5 +35,4 @@ export declare const Drawer: {
59
35
  Footer: typeof Footer;
60
36
  Close: typeof Close;
61
37
  };
62
- export {};
63
38
  //# sourceMappingURL=Drawer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/Drawer.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,SAAS,EASf,MAAM,OAAO,CAAA;AAEd,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAA;AAUxD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAA;AACtD,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAwC3C,UAAU,SAAS;IACjB,QAAQ,EAAE,SAAS,CAAA;IACnB,4BAA4B;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,wCAAwC;IACxC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,0DAA0D;IAC1D,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB,oFAAoF;IACpF,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,gEAAgE;IAChE,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,oEAAoE;IACpE,sBAAsB,CAAC,EAAE,aAAa,CAAA;CACvC;AAED,iBAAS,IAAI,CAAC,EACZ,QAAQ,EACR,IAAI,EAAE,cAAc,EACpB,WAAmB,EACnB,YAAY,EACZ,MAAgB,EAChB,WAAkB,EAClB,YAAmB,EACnB,sBAA+B,GAChC,EAAE,SAAS,2CAiEX;AAID,iBAAS,OAAO,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAQjD;AAID,UAAU,WAAW;IACnB,QAAQ,EAAE,SAAS,CAAA;IACnB,IAAI,CAAC,EAAE,UAAU,CAAA;CAClB;AAqBD,iBAAS,MAAM,CAAC,EAAC,QAAQ,EAAE,IAAW,EAAC,EAAE,WAAW,kDA2FnD;AAID,iBAAS,MAAM,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAEhD;AAID,iBAAS,KAAK,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAO/C;AAID,iBAAS,WAAW,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAOrD;AAID,iBAAS,IAAI,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAE9C;AAID,iBAAS,MAAM,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAEhD;AAID,UAAU,UAAU;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,iBAAS,KAAK,CAAC,EAAC,QAAQ,EAAE,YAAY,EAAE,SAAmB,EAAC,EAAE,UAAU,2CAuBvE;AAID,eAAO,MAAM,MAAM;;;;;;;;;;CAUlB,CAAA"}
1
+ {"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/Drawer.tsx"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,SAAS,EAAmC,MAAM,OAAO,CAAA;AAWtE,OAAO,EAEL,WAAW,EAEX,MAAM,EACN,MAAM,EACN,KAAK,EAEL,KAAK,UAAU,EACf,KAAK,aAAa,EACnB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAgB,KAAK,eAAe,EAAC,MAAM,iBAAiB,CAAA;AAEnE,YAAY,EAAC,YAAY,EAAE,UAAU,EAAE,SAAS,EAAC,MAAM,SAAS,CAAA;AAchE,iBAAS,IAAI,CAAC,EAAC,QAAQ,EAAE,GAAG,KAAK,EAAC,EAAE,eAAe,2CA+BlD;AAID,iBAAS,OAAO,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAQjD;AAID,UAAU,WAAW;IACnB,QAAQ,EAAE,SAAS,CAAA;IACnB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,kFAAkF;IAClF,aAAa,CAAC,EAAE,aAAa,CAAA;CAC9B;AAqBD,iBAAS,MAAM,CAAC,EAAC,QAAQ,EAAE,IAAW,EAAE,aAAsC,EAAC,EAAE,WAAW,kDAmH3F;AAID,UAAU,SAAS;IACjB,QAAQ,EAAE,SAAS,CAAA;IACnB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,iBAAS,IAAI,CAAC,EAAC,QAAQ,EAAE,KAAa,EAAC,EAAE,SAAS,2CAYjD;AAID,UAAU,UAAU;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,iBAAS,KAAK,CAAC,EAAC,QAAQ,EAAE,YAAY,EAAE,SAAmB,EAAC,EAAE,UAAU,2CAuBvE;AAID,eAAO,MAAM,MAAM;;;;;;;;;;CAUlB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Drawer.meta.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/Drawer.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAA;AAEpD,eAAO,MAAM,IAAI,EAAE,aAwDlB,CAAA"}
1
+ {"version":3,"file":"Drawer.meta.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/Drawer.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAA;AAEpD,eAAO,MAAM,IAAI,EAAE,aAyDlB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerScroll.stories.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/DrawerScroll.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AASpD,QAAA,MAAM,IAAI,EAAE,IAGX,CAAA;AAED,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAA;AA2JrB,eAAO,MAAM,kBAAkB,EAAE,KAWhC,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,KAcpC,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,KASpC,CAAA;AAED,eAAO,MAAM,yBAAyB,EAAE,KAYvC,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,KAerC,CAAA;AAED,eAAO,MAAM,wBAAwB,EAAE,KAwBtC,CAAA;AAED,2EAA2E;AAC3E,eAAO,MAAM,iBAAiB,EAAE,KAuB/B,CAAA"}
1
+ {"version":3,"file":"DrawerScroll.stories.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/DrawerScroll.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AASpD,QAAA,MAAM,IAAI,EAAE,IAGX,CAAA;AAED,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAA;AAyGrB,eAAO,MAAM,kBAAkB,EAAE,KAWhC,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,KAcpC,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,KASpC,CAAA;AAED,eAAO,MAAM,yBAAyB,EAAE,KAYvC,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,KAerC,CAAA;AAED,eAAO,MAAM,wBAAwB,EAAE,KAwBtC,CAAA;AAED,2EAA2E;AAC3E,eAAO,MAAM,iBAAiB,EAAE,KAuB/B,CAAA"}
@@ -0,0 +1,22 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ import { SnapPoint } from './Drawer';
3
+ declare const meta: Meta;
4
+ export default meta;
5
+ type Story = StoryObj;
6
+ interface SheetArgs {
7
+ snapPoints: SnapPoint[];
8
+ defaultSnapPoint: SnapPoint;
9
+ titleAlign: 'start' | 'center';
10
+ flush: boolean;
11
+ onOpenChange?: (open: boolean) => void;
12
+ }
13
+ export declare const SnapSheet: StoryObj<SheetArgs>;
14
+ export declare const DragUpGrowsToLarge: Story;
15
+ export declare const DragDownShrinksToMedium: Story;
16
+ export declare const DragDownBelowMediumDismisses: Story;
17
+ export declare const SlowShortDragSnapsBack: Story;
18
+ export declare const GrabberTapCyclesDetents: Story;
19
+ export declare const DragUpOnContentGrowsThenScrolls: Story;
20
+ export declare const DoneCloses: Story;
21
+ export declare const FlushBody: Story;
22
+ //# sourceMappingURL=DrawerSnap.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DrawerSnap.stories.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/DrawerSnap.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AAEpD,OAAO,EAAS,KAAK,SAAS,EAAC,MAAM,UAAU,CAAA;AAK/C,QAAA,MAAM,IAAI,EAAE,IAGX,CAAA;AAED,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAA;AAIrB,UAAU,SAAS;IACjB,UAAU,EAAE,SAAS,EAAE,CAAA;IACvB,gBAAgB,EAAE,SAAS,CAAA;IAC3B,UAAU,EAAE,OAAO,GAAG,QAAQ,CAAA;IAC9B,KAAK,EAAE,OAAO,CAAA;IACd,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;CACvC;AA4CD,eAAO,MAAM,SAAS,EAAE,QAAQ,CAAC,SAAS,CAgCzC,CAAA;AA8BD,eAAO,MAAM,kBAAkB,EAAE,KAQhC,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,KAQrC,CAAA;AAED,eAAO,MAAM,4BAA4B,EAAE,KAQ1C,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,KAWpC,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,KAYrC,CAAA;AAED,eAAO,MAAM,+BAA+B,EAAE,KAiB7C,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KASxB,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,KAQvB,CAAA"}
@@ -0,0 +1,59 @@
1
+ import { css } from 'react-strict-dom';
2
+ /**
3
+ * Native Drawer surfaces. Motion is Reanimated's (plan N0, Decision 4): these
4
+ * styles draw the panel and backdrop, the animated views around them move them.
5
+ */
6
+ export declare const nativeStyles: Readonly<{
7
+ readonly fill: Readonly<{
8
+ readonly position: css.StyleXClassNameFor<"position", "absolute">;
9
+ readonly top: css.StyleXClassNameFor<"top", 0>;
10
+ readonly left: css.StyleXClassNameFor<"left", 0>;
11
+ readonly right: css.StyleXClassNameFor<"right", 0>;
12
+ readonly bottom: css.StyleXClassNameFor<"bottom", 0>;
13
+ }>;
14
+ readonly scrim: Readonly<{
15
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", string>;
16
+ }>;
17
+ readonly panel: Readonly<{
18
+ readonly flexGrow: css.StyleXClassNameFor<"flexGrow", 1>;
19
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", string>;
20
+ readonly boxShadow: css.StyleXClassNameFor<"boxShadow", string>;
21
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
22
+ readonly flexDirection: css.StyleXClassNameFor<"flexDirection", "column">;
23
+ readonly overflow: css.StyleXClassNameFor<"overflow", "hidden">;
24
+ }>;
25
+ readonly panelBottom: Readonly<{
26
+ readonly borderTopWidth: css.StyleXClassNameFor<"borderTopWidth", string>;
27
+ readonly borderTopStyle: css.StyleXClassNameFor<"borderTopStyle", "solid">;
28
+ readonly borderTopColor: css.StyleXClassNameFor<"borderTopColor", string>;
29
+ readonly borderTopLeftRadius: css.StyleXClassNameFor<"borderTopLeftRadius", string>;
30
+ readonly borderTopRightRadius: css.StyleXClassNameFor<"borderTopRightRadius", string>;
31
+ }>;
32
+ readonly panelRight: Readonly<{
33
+ readonly borderLeftWidth: css.StyleXClassNameFor<"borderLeftWidth", string>;
34
+ readonly borderLeftStyle: css.StyleXClassNameFor<"borderLeftStyle", "solid">;
35
+ readonly borderLeftColor: css.StyleXClassNameFor<"borderLeftColor", string>;
36
+ }>;
37
+ readonly panelLeft: Readonly<{
38
+ readonly borderRightWidth: css.StyleXClassNameFor<"borderRightWidth", string>;
39
+ readonly borderRightStyle: css.StyleXClassNameFor<"borderRightStyle", "solid">;
40
+ readonly borderRightColor: css.StyleXClassNameFor<"borderRightColor", string>;
41
+ }>;
42
+ readonly insets: (top: number, bottom: number) => readonly [Readonly<{
43
+ paddingTop: css.StyleXClassNameFor<"paddingTop", number>;
44
+ paddingBottom: css.StyleXClassNameFor<"paddingBottom", number>;
45
+ }>, css.InlineStyles];
46
+ readonly bodyContent: Readonly<{
47
+ readonly paddingLeft: css.StyleXClassNameFor<"paddingLeft", string>;
48
+ readonly paddingRight: css.StyleXClassNameFor<"paddingRight", string>;
49
+ readonly paddingBottom: css.StyleXClassNameFor<"paddingBottom", string>;
50
+ }>;
51
+ readonly bodyFlush: Readonly<{
52
+ readonly paddingLeft: css.StyleXClassNameFor<"paddingLeft", 0>;
53
+ readonly paddingRight: css.StyleXClassNameFor<"paddingRight", 0>;
54
+ }>;
55
+ readonly hiddenBelow: (height: number) => readonly [Readonly<{
56
+ paddingBottom: css.StyleXClassNameFor<"paddingBottom", number>;
57
+ }>, css.InlineStyles];
58
+ }>;
59
+ //# sourceMappingURL=native.css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native.css.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/native.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAMpC;;;GAGG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDvB,CAAA"}
@@ -0,0 +1,96 @@
1
+ import { css } from 'react-strict-dom';
2
+ /** Styles of the Drawer parts both platforms draw (no animations: native has none). */
3
+ export declare const partStyles: Readonly<{
4
+ readonly grabberHit: Readonly<{
5
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
6
+ readonly alignItems: css.StyleXClassNameFor<"alignItems", "center">;
7
+ readonly justifyContent: css.StyleXClassNameFor<"justifyContent", "center">;
8
+ readonly alignSelf: css.StyleXClassNameFor<"alignSelf", "stretch">;
9
+ readonly flexShrink: css.StyleXClassNameFor<"flexShrink", 0>;
10
+ readonly paddingTop: css.StyleXClassNameFor<"paddingTop", string>;
11
+ readonly paddingBottom: css.StyleXClassNameFor<"paddingBottom", string>;
12
+ readonly borderWidth: css.StyleXClassNameFor<"borderWidth", 0>;
13
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", "transparent">;
14
+ }>;
15
+ readonly grabber: Readonly<{
16
+ readonly display: css.StyleXClassNameFor<"display", "block">;
17
+ readonly width: css.StyleXClassNameFor<"width", string>;
18
+ readonly height: css.StyleXClassNameFor<"height", string>;
19
+ readonly borderRadius: css.StyleXClassNameFor<"borderRadius", string>;
20
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", string>;
21
+ }>;
22
+ readonly header: Readonly<{
23
+ readonly flexShrink: css.StyleXClassNameFor<"flexShrink", 0>;
24
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
25
+ readonly alignItems: css.StyleXClassNameFor<"alignItems", "flex-start">;
26
+ readonly justifyContent: css.StyleXClassNameFor<"justifyContent", "space-between">;
27
+ readonly paddingTop: css.StyleXClassNameFor<"paddingTop", string>;
28
+ readonly paddingLeft: css.StyleXClassNameFor<"paddingLeft", string>;
29
+ readonly paddingRight: css.StyleXClassNameFor<"paddingRight", string>;
30
+ readonly paddingBottom: css.StyleXClassNameFor<"paddingBottom", string>;
31
+ readonly gap: css.StyleXClassNameFor<"gap", string>;
32
+ }>;
33
+ readonly headerUnderGrabber: Readonly<{
34
+ readonly paddingTop: css.StyleXClassNameFor<"paddingTop", 0>;
35
+ }>;
36
+ readonly headerCentered: Readonly<{
37
+ readonly alignItems: css.StyleXClassNameFor<"alignItems", "center">;
38
+ }>;
39
+ readonly headerSide: Readonly<{
40
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
41
+ readonly flexGrow: css.StyleXClassNameFor<"flexGrow", 1>;
42
+ readonly flexBasis: css.StyleXClassNameFor<"flexBasis", 0>;
43
+ }>;
44
+ readonly headerEnd: Readonly<{
45
+ readonly justifyContent: css.StyleXClassNameFor<"justifyContent", "flex-end">;
46
+ }>;
47
+ readonly title: Readonly<{
48
+ readonly fontSize: css.StyleXClassNameFor<"fontSize", string>;
49
+ readonly fontWeight: css.StyleXClassNameFor<"fontWeight", string>;
50
+ readonly lineHeight: css.StyleXClassNameFor<"lineHeight", string>;
51
+ readonly color: css.StyleXClassNameFor<"color", string>;
52
+ readonly margin: css.StyleXClassNameFor<"margin", 0>;
53
+ }>;
54
+ readonly description: Readonly<{
55
+ readonly fontSize: css.StyleXClassNameFor<"fontSize", string>;
56
+ readonly lineHeight: css.StyleXClassNameFor<"lineHeight", string>;
57
+ readonly color: css.StyleXClassNameFor<"color", string>;
58
+ readonly margin: css.StyleXClassNameFor<"margin", 0>;
59
+ readonly paddingLeft: css.StyleXClassNameFor<"paddingLeft", string>;
60
+ readonly paddingRight: css.StyleXClassNameFor<"paddingRight", string>;
61
+ readonly paddingBottom: css.StyleXClassNameFor<"paddingBottom", string>;
62
+ }>;
63
+ readonly footer: Readonly<{
64
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
65
+ readonly alignItems: css.StyleXClassNameFor<"alignItems", "center">;
66
+ readonly justifyContent: css.StyleXClassNameFor<"justifyContent", "flex-end">;
67
+ readonly gap: css.StyleXClassNameFor<"gap", string>;
68
+ readonly paddingTop: css.StyleXClassNameFor<"paddingTop", string>;
69
+ readonly paddingLeft: css.StyleXClassNameFor<"paddingLeft", string>;
70
+ readonly paddingRight: css.StyleXClassNameFor<"paddingRight", string>;
71
+ readonly paddingBottom: css.StyleXClassNameFor<"paddingBottom", string>;
72
+ readonly borderTopWidth: css.StyleXClassNameFor<"borderTopWidth", string>;
73
+ readonly borderTopStyle: css.StyleXClassNameFor<"borderTopStyle", "solid">;
74
+ readonly borderTopColor: css.StyleXClassNameFor<"borderTopColor", string>;
75
+ }>;
76
+ readonly closeButton: Readonly<{
77
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
78
+ readonly alignItems: css.StyleXClassNameFor<"alignItems", "center">;
79
+ readonly justifyContent: css.StyleXClassNameFor<"justifyContent", "center">;
80
+ readonly width: css.StyleXClassNameFor<"width", string>;
81
+ readonly height: css.StyleXClassNameFor<"height", string>;
82
+ readonly borderRadius: css.StyleXClassNameFor<"borderRadius", string>;
83
+ readonly borderWidth: css.StyleXClassNameFor<"borderWidth", 0>;
84
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", string>;
85
+ readonly color: css.StyleXClassNameFor<"color", string>;
86
+ readonly cursor: css.StyleXClassNameFor<"cursor", "pointer">;
87
+ readonly padding: css.StyleXClassNameFor<"padding", 0>;
88
+ readonly flexShrink: css.StyleXClassNameFor<"flexShrink", 0>;
89
+ readonly transitionProperty: css.StyleXClassNameFor<"transitionProperty", "background-color">;
90
+ readonly transitionDuration: css.StyleXClassNameFor<"transitionDuration", string>;
91
+ }>;
92
+ readonly inlineWrapper: Readonly<{
93
+ readonly display: css.StyleXClassNameFor<"display", "inline-flex">;
94
+ }>;
95
+ }>;
96
+ //# sourceMappingURL=parts.css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parts.css.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/parts.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAQpC,uFAAuF;AACvF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmHrB,CAAA"}
@@ -0,0 +1,56 @@
1
+ import { ReactNode, RefObject } from 'react';
2
+ import { DurationToken } from '@duro-app/tokens/keys';
3
+ import { SnapPoint } from './sheetPhysics';
4
+ export type DrawerAnchor = 'right' | 'left' | 'bottom';
5
+ export type DrawerSize = 'sm' | 'md' | 'lg';
6
+ export type { SnapPoint };
7
+ export interface DrawerContextValue {
8
+ /** Rendered: open, or playing the exit animation. */
9
+ open: boolean;
10
+ closing: boolean;
11
+ closeDuration: DurationToken;
12
+ anchor: DrawerAnchor;
13
+ dismissable: boolean;
14
+ swipeDismiss: boolean;
15
+ requestOpen: () => void;
16
+ requestClose: () => void;
17
+ /** Close immediately without the exit animation (a swipe has played its own) */
18
+ requestCloseImmediate: () => void;
19
+ titleId: string;
20
+ descriptionId: string;
21
+ /** The panel's host: a DOM element on the web, a view on native */
22
+ panelRef: RefObject<unknown>;
23
+ /** A bottom sheet's detents, ascending; empty when the drawer has none */
24
+ snapPoints: readonly SnapPoint[];
25
+ /** Index into snapPoints the sheet rests at */
26
+ snapIndex: number;
27
+ setSnapIndex: (index: number) => void;
28
+ }
29
+ export declare const DrawerContext: import('react').Context<DrawerContextValue | null>;
30
+ export declare function useDrawer(): DrawerContextValue;
31
+ export interface GrabberLabels {
32
+ /** The grabber's name when a press grows the sheet */
33
+ expand: string;
34
+ /** The grabber's name when a press shrinks it */
35
+ collapse: string;
36
+ }
37
+ export declare const DEFAULT_GRABBER_LABELS: GrabberLabels;
38
+ interface HeaderProps {
39
+ children: ReactNode;
40
+ /**
41
+ * 'center' puts the Title in the middle and the other children at the end,
42
+ * as a phone sheet does (a text close button on the right). Default: 'start'
43
+ */
44
+ titleAlign?: 'start' | 'center';
45
+ }
46
+ export declare function Header({ children, titleAlign }: HeaderProps): import("react/jsx-runtime").JSX.Element;
47
+ export declare function Title({ children }: {
48
+ children: ReactNode;
49
+ }): import("react/jsx-runtime").JSX.Element;
50
+ export declare function Description({ children }: {
51
+ children: ReactNode;
52
+ }): import("react/jsx-runtime").JSX.Element;
53
+ export declare function Footer({ children }: {
54
+ children: ReactNode;
55
+ }): import("react/jsx-runtime").JSX.Element;
56
+ //# sourceMappingURL=parts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parts.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/parts.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EAEf,MAAM,OAAO,CAAA;AAEd,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAA;AAExD,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAA;AAE7C,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAA;AACtD,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAC3C,YAAY,EAAC,SAAS,EAAC,CAAA;AAEvB,MAAM,WAAW,kBAAkB;IACjC,qDAAqD;IACrD,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,aAAa,EAAE,aAAa,CAAA;IAC5B,MAAM,EAAE,YAAY,CAAA;IACpB,WAAW,EAAE,OAAO,CAAA;IACpB,YAAY,EAAE,OAAO,CAAA;IACrB,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB,YAAY,EAAE,MAAM,IAAI,CAAA;IACxB,gFAAgF;IAChF,qBAAqB,EAAE,MAAM,IAAI,CAAA;IACjC,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,mEAAmE;IACnE,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC5B,0EAA0E;IAC1E,UAAU,EAAE,SAAS,SAAS,EAAE,CAAA;IAChC,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACtC;AAED,eAAO,MAAM,aAAa,oDAAiD,CAAA;AAE3E,wBAAgB,SAAS,uBAIxB;AAED,MAAM,WAAW,aAAa;IAC5B,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAA;IACd,iDAAiD;IACjD,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,eAAO,MAAM,sBAAsB,EAAE,aAGpC,CAAA;AAID,UAAU,WAAW;IACnB,QAAQ,EAAE,SAAS,CAAA;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;CAChC;AAED,wBAAgB,MAAM,CAAC,EAAC,QAAQ,EAAE,UAAoB,EAAC,EAAE,WAAW,2CAgBnE;AAED,wBAAgB,KAAK,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAOtD;AAED,wBAAgB,WAAW,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAO5D;AAED,wBAAgB,MAAM,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAEvD"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * The drawer's drag rules, shared by the web (pointer events) and native
3
+ * (Gesture Handler on the UI thread) so both settle a drag the same way.
4
+ * Pure numbers: no DOM, no React Native. The functions the native drag
5
+ * calls on the UI thread are worklets ('worklet'); on the web the directive
6
+ * is an inert string.
7
+ */
8
+ /** A bottom-sheet detent (plan N0, Decision 5). */
9
+ export type SnapPoint = 'medium' | 'large';
10
+ /** Fraction of the panel (or of the lowest detent) a drag must cover to dismiss */
11
+ export declare const DISMISS_THRESHOLD = 0.3;
12
+ /** Release speed (px/ms) that dismisses, or moves one detent, whatever the distance */
13
+ export declare const VELOCITY_THRESHOLD = 0.5;
14
+ /** Duration of the slide-out once a drag dismisses (ms) */
15
+ export declare const DISMISS_DURATION: 160;
16
+ /** Duration of the settle onto a detent, or the snap back (ms) */
17
+ export declare const SNAP_DURATION: 200;
18
+ /** Movement (px) before a press becomes a drag; under it a tap stays a tap */
19
+ export declare const DRAG_SLOP = 8;
20
+ /** Movement (px) across the drag's axis that hands the gesture to a scroll instead */
21
+ export declare const CROSS_SLOP = 16;
22
+ /** 'medium' is half the window */
23
+ export declare const MEDIUM_FRACTION = 0.5;
24
+ /** How far (px) a snap sheet may be pulled past its largest detent: it resists, never further */
25
+ export declare const SNAP_MAX_OVERSHOOT: 24;
26
+ /** Height of one detent: 'medium' half the window, 'large' the window less its top inset. */
27
+ export declare function detentHeight(point: SnapPoint, windowHeight: number, topInset: number): number;
28
+ /** The detents in ascending height, each once. */
29
+ export declare function sortSnapPoints(points: readonly SnapPoint[]): SnapPoint[];
30
+ /**
31
+ * Where a released drag settles: a detent index into `heights` (ascending),
32
+ * or 'dismiss'.
33
+ *
34
+ * - A fling (|velocity| over VELOCITY_THRESHOLD) moves one detent in its
35
+ * direction from the detent it started at; down from the lowest dismisses.
36
+ * - Otherwise the nearest detent wins, unless the sheet is below the lowest
37
+ * by more than DISMISS_THRESHOLD of it, which dismisses.
38
+ *
39
+ * `velocity` is px/ms, positive downward (closing).
40
+ */
41
+ export declare function settleDetent({ heights, from, height, velocity, }: {
42
+ heights: readonly number[];
43
+ from: number;
44
+ height: number;
45
+ velocity: number;
46
+ }): number | 'dismiss';
47
+ /** The grabber's tap: the next detent up, wrapping from the largest to the smallest. */
48
+ export declare function cycleDetent(index: number, count: number): number;
49
+ /**
50
+ * Past the largest detent the sheet resists: the overshoot grows ever more
51
+ * slowly and never exceeds `max`.
52
+ */
53
+ export declare function rubberBand(overshoot: number, max: number): number;
54
+ /** Whether a side drawer's release dismisses it. `movement` is toward its edge. */
55
+ export declare function shouldDismissEdge(movement: number, size: number, velocity: number): boolean;
56
+ //# sourceMappingURL=sheetPhysics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sheetPhysics.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/sheetPhysics.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,mDAAmD;AACnD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAA;AAE1C,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,MAAM,CAAA;AAEpC,uFAAuF;AACvF,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC,2DAA2D;AAC3D,eAAO,MAAM,gBAAgB,KAAoB,CAAA;AAEjD,kEAAkE;AAClE,eAAO,MAAM,aAAa,KAAmB,CAAA;AAE7C,8EAA8E;AAC9E,eAAO,MAAM,SAAS,IAAI,CAAA;AAE1B,sFAAsF;AACtF,eAAO,MAAM,UAAU,KAAK,CAAA;AAE5B,kCAAkC;AAClC,eAAO,MAAM,eAAe,MAAM,CAAA;AAElC,iGAAiG;AACjG,eAAO,MAAM,kBAAkB,IAAgB,CAAA;AAE/C,6FAA6F;AAC7F,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG7F;AAED,kDAAkD;AAClD,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,EAAE,CAExE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,IAAI,EACJ,MAAM,EACN,QAAQ,GACT,EAAE;IACD,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CACjB,GAAG,MAAM,GAAG,SAAS,CAWrB;AAED,wFAAwF;AACxF,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAGhE;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAIjE;AAED,mFAAmF;AACnF,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAG3F"}