@duro-app/ui 5.12.0 → 5.13.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 (188) hide show
  1. package/dist/Table-Bms2ftt3.js +1694 -0
  2. package/dist/Table-Bms2ftt3.js.map +1 -0
  3. package/dist/components/AppShell/native.css.d.ts +53 -0
  4. package/dist/components/AppShell/native.css.d.ts.map +1 -0
  5. package/dist/components/Drawer/Drawer.d.ts +7 -35
  6. package/dist/components/Drawer/Drawer.d.ts.map +1 -1
  7. package/dist/components/Drawer/Drawer.meta.d.ts.map +1 -1
  8. package/dist/components/Drawer/DrawerScroll.stories.d.ts.map +1 -1
  9. package/dist/components/Drawer/DrawerSnap.stories.d.ts +20 -0
  10. package/dist/components/Drawer/DrawerSnap.stories.d.ts.map +1 -0
  11. package/dist/components/Drawer/native.css.d.ts +55 -0
  12. package/dist/components/Drawer/native.css.d.ts.map +1 -0
  13. package/dist/components/Drawer/parts.css.d.ts +96 -0
  14. package/dist/components/Drawer/parts.css.d.ts.map +1 -0
  15. package/dist/components/Drawer/parts.d.ts +56 -0
  16. package/dist/components/Drawer/parts.d.ts.map +1 -0
  17. package/dist/components/Drawer/sheetPhysics.d.ts +56 -0
  18. package/dist/components/Drawer/sheetPhysics.d.ts.map +1 -0
  19. package/dist/components/Drawer/styles.css.d.ts +13 -58
  20. package/dist/components/Drawer/styles.css.d.ts.map +1 -1
  21. package/dist/components/Drawer/touchInput.d.ts +35 -0
  22. package/dist/components/Drawer/touchInput.d.ts.map +1 -0
  23. package/dist/components/Drawer/useDrawerRoot.d.ts +33 -0
  24. package/dist/components/Drawer/useDrawerRoot.d.ts.map +1 -0
  25. package/dist/components/Drawer/useSheetHeights.d.ts +7 -0
  26. package/dist/components/Drawer/useSheetHeights.d.ts.map +1 -0
  27. package/dist/components/Drawer/useSwipeDismiss.d.ts +13 -2
  28. package/dist/components/Drawer/useSwipeDismiss.d.ts.map +1 -1
  29. package/dist/components/Menu/Menu.d.ts +7 -1
  30. package/dist/components/Menu/Menu.d.ts.map +1 -1
  31. package/dist/components/Menu/native.css.d.ts +14 -0
  32. package/dist/components/Menu/native.css.d.ts.map +1 -0
  33. package/dist/components/Menu/useMenuOpen.d.ts +16 -0
  34. package/dist/components/Menu/useMenuOpen.d.ts.map +1 -0
  35. package/dist/components/Menu/useMenuRoot.d.ts +3 -6
  36. package/dist/components/Menu/useMenuRoot.d.ts.map +1 -1
  37. package/dist/components/Popover/native.css.d.ts +11 -0
  38. package/dist/components/Popover/native.css.d.ts.map +1 -0
  39. package/dist/components/SideNav/Chevron.d.ts +4 -0
  40. package/dist/components/SideNav/Chevron.d.ts.map +1 -0
  41. package/dist/components/SideNav/SideNav.d.ts.map +1 -1
  42. package/dist/components/SideNav/styles.css.d.ts +6 -0
  43. package/dist/components/SideNav/styles.css.d.ts.map +1 -1
  44. package/dist/components/SideNav/types.d.ts +6 -0
  45. package/dist/components/SideNav/types.d.ts.map +1 -0
  46. package/dist/components/SplitPane/SplitPane.d.ts +38 -0
  47. package/dist/components/SplitPane/SplitPane.d.ts.map +1 -0
  48. package/dist/components/SplitPane/SplitPane.meta.d.ts +3 -0
  49. package/dist/components/SplitPane/SplitPane.meta.d.ts.map +1 -0
  50. package/dist/components/SplitPane/SplitPane.stories.d.ts +17 -0
  51. package/dist/components/SplitPane/SplitPane.stories.d.ts.map +1 -0
  52. package/dist/components/SplitPane/styles.css.d.ts +78 -0
  53. package/dist/components/SplitPane/styles.css.d.ts.map +1 -0
  54. package/dist/components/Tabs/TabLayout.d.ts +7 -0
  55. package/dist/components/Tabs/TabLayout.d.ts.map +1 -0
  56. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  57. package/dist/components/Tabs/indicator.d.ts +28 -0
  58. package/dist/components/Tabs/indicator.d.ts.map +1 -0
  59. package/dist/components/Tabs/styles.css.d.ts +4 -0
  60. package/dist/components/Tabs/styles.css.d.ts.map +1 -1
  61. package/dist/components/Tabs/useTabIndicator.d.ts +4 -0
  62. package/dist/components/Tabs/useTabIndicator.d.ts.map +1 -0
  63. package/dist/components/Tabs/useTabKeys.d.ts +13 -0
  64. package/dist/components/Tabs/useTabKeys.d.ts.map +1 -0
  65. package/dist/components/Tag/RemoveGlyph.d.ts +4 -0
  66. package/dist/components/Tag/RemoveGlyph.d.ts.map +1 -0
  67. package/dist/components/Tag/Tag.d.ts +2 -24
  68. package/dist/components/Tag/Tag.d.ts.map +1 -1
  69. package/dist/components/Tag/styles.css.d.ts +8 -0
  70. package/dist/components/Tag/styles.css.d.ts.map +1 -1
  71. package/dist/components/Tag/types.d.ts +39 -0
  72. package/dist/components/Tag/types.d.ts.map +1 -0
  73. package/dist/components/Toast/ToastProvider.d.ts +2 -21
  74. package/dist/components/Toast/ToastProvider.d.ts.map +1 -1
  75. package/dist/components/Toast/native.css.d.ts +81 -0
  76. package/dist/components/Toast/native.css.d.ts.map +1 -0
  77. package/dist/components/Toast/store.d.ts +47 -0
  78. package/dist/components/Toast/store.d.ts.map +1 -0
  79. package/dist/components/Tooltip/TooltipHint.d.ts +9 -0
  80. package/dist/components/Tooltip/TooltipHint.d.ts.map +1 -0
  81. package/dist/components/Tree/Tree.d.ts.map +1 -1
  82. package/dist/components/Tree/styles.css.d.ts +6 -0
  83. package/dist/components/Tree/styles.css.d.ts.map +1 -1
  84. package/dist/components/Tree/useTreeKeyboard.d.ts +19 -0
  85. package/dist/components/Tree/useTreeKeyboard.d.ts.map +1 -0
  86. package/dist/components/VirtualList/VirtualList.d.ts +33 -0
  87. package/dist/components/VirtualList/VirtualList.d.ts.map +1 -0
  88. package/dist/components/VirtualList/VirtualList.meta.d.ts +3 -0
  89. package/dist/components/VirtualList/VirtualList.meta.d.ts.map +1 -0
  90. package/dist/components/VirtualList/VirtualList.stories.d.ts +15 -0
  91. package/dist/components/VirtualList/VirtualList.stories.d.ts.map +1 -0
  92. package/dist/components/VirtualList/styles.css.d.ts +28 -0
  93. package/dist/components/VirtualList/styles.css.d.ts.map +1 -0
  94. package/dist/index.css +1 -1
  95. package/dist/index.d.ts +3 -1
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +4935 -4260
  98. package/dist/index.js.map +1 -1
  99. package/dist/shared/ButtonHost.d.ts +11 -0
  100. package/dist/shared/ButtonHost.d.ts.map +1 -0
  101. package/dist/shared/pressableChild.d.ts +14 -0
  102. package/dist/shared/pressableChild.d.ts.map +1 -0
  103. package/dist/table.js +1 -1
  104. package/package.json +2 -2
  105. package/src/components/AppShell/AppShell.meta.ts +1 -1
  106. package/src/components/AppShell/AppShell.native.tsx +174 -0
  107. package/src/components/AppShell/native.css.ts +56 -0
  108. package/src/components/Button/Button.tsx +3 -3
  109. package/src/components/Drawer/Drawer.meta.ts +2 -1
  110. package/src/components/Drawer/Drawer.native.tsx +469 -0
  111. package/src/components/Drawer/Drawer.tsx +58 -145
  112. package/src/components/Drawer/DrawerScroll.stories.tsx +4 -54
  113. package/src/components/Drawer/DrawerSnap.stories.tsx +205 -0
  114. package/src/components/Drawer/native.css.ts +58 -0
  115. package/src/components/Drawer/parts.css.ts +125 -0
  116. package/src/components/Drawer/parts.tsx +110 -0
  117. package/src/components/Drawer/sheetPhysics.ts +103 -0
  118. package/src/components/Drawer/styles.css.ts +15 -74
  119. package/src/components/Drawer/touchInput.ts +81 -0
  120. package/src/components/Drawer/useDrawerRoot.ts +90 -0
  121. package/src/components/Drawer/useSheetHeights.ts +42 -0
  122. package/src/components/Drawer/useSwipeDismiss.ts +146 -23
  123. package/src/components/Menu/Menu.meta.ts +1 -1
  124. package/src/components/Menu/Menu.native.tsx +268 -0
  125. package/src/components/Menu/Menu.tsx +11 -2
  126. package/src/components/Menu/native.css.ts +18 -0
  127. package/src/components/Menu/useMenuOpen.ts +33 -0
  128. package/src/components/Menu/useMenuRoot.ts +7 -26
  129. package/src/components/Popover/Popover.meta.ts +1 -1
  130. package/src/components/Popover/Popover.native.tsx +205 -0
  131. package/src/components/Popover/native.css.ts +13 -0
  132. package/src/components/SideNav/Chevron.native.tsx +20 -0
  133. package/src/components/SideNav/Chevron.tsx +20 -0
  134. package/src/components/SideNav/SideNav.meta.ts +1 -1
  135. package/src/components/SideNav/SideNav.tsx +57 -41
  136. package/src/components/SideNav/styles.css.ts +8 -0
  137. package/src/components/SideNav/types.ts +6 -0
  138. package/src/components/SplitPane/SplitPane.meta.ts +40 -0
  139. package/src/components/SplitPane/SplitPane.native.tsx +47 -0
  140. package/src/components/SplitPane/SplitPane.stories.tsx +148 -0
  141. package/src/components/SplitPane/SplitPane.tsx +218 -0
  142. package/src/components/SplitPane/styles.css.ts +81 -0
  143. package/src/components/Tabs/TabLayout.native.tsx +9 -0
  144. package/src/components/Tabs/TabLayout.tsx +6 -0
  145. package/src/components/Tabs/Tabs.meta.ts +1 -1
  146. package/src/components/Tabs/Tabs.tsx +38 -136
  147. package/src/components/Tabs/indicator.ts +36 -0
  148. package/src/components/Tabs/styles.css.ts +7 -0
  149. package/src/components/Tabs/useTabIndicator.native.ts +35 -0
  150. package/src/components/Tabs/useTabIndicator.ts +49 -0
  151. package/src/components/Tabs/useTabKeys.native.ts +2 -0
  152. package/src/components/Tabs/useTabKeys.ts +99 -0
  153. package/src/components/Tag/RemoveGlyph.native.tsx +17 -0
  154. package/src/components/Tag/RemoveGlyph.tsx +10 -0
  155. package/src/components/Tag/Tag.meta.ts +1 -1
  156. package/src/components/Tag/Tag.native.tsx +70 -0
  157. package/src/components/Tag/Tag.tsx +9 -37
  158. package/src/components/Tag/styles.css.ts +9 -0
  159. package/src/components/Tag/types.ts +43 -0
  160. package/src/components/Toast/Toast.meta.ts +1 -1
  161. package/src/components/Toast/ToastProvider.native.tsx +226 -0
  162. package/src/components/Toast/ToastProvider.tsx +22 -84
  163. package/src/components/Toast/native.css.ts +78 -0
  164. package/src/components/Toast/store.ts +96 -0
  165. package/src/components/Toggle/Toggle.tsx +3 -3
  166. package/src/components/Tooltip/Tooltip.meta.ts +1 -1
  167. package/src/components/Tooltip/Tooltip.native.tsx +36 -0
  168. package/src/components/Tooltip/TooltipHint.ts +13 -0
  169. package/src/components/Tree/Tree.meta.ts +1 -1
  170. package/src/components/Tree/Tree.tsx +23 -135
  171. package/src/components/Tree/styles.css.ts +6 -0
  172. package/src/components/Tree/useTreeKeyboard.native.ts +5 -0
  173. package/src/components/Tree/useTreeKeyboard.ts +152 -0
  174. package/src/components/VirtualList/VirtualList.meta.ts +39 -0
  175. package/src/components/VirtualList/VirtualList.stories.tsx +95 -0
  176. package/src/components/VirtualList/VirtualList.tsx +103 -0
  177. package/src/components/VirtualList/styles.css.ts +31 -0
  178. package/src/hooks/useContainerBelow.native.ts +30 -0
  179. package/src/index.native.ts +33 -0
  180. package/src/index.ts +8 -1
  181. package/src/shared/ButtonHost.native.tsx +70 -0
  182. package/src/shared/ButtonHost.tsx +12 -0
  183. package/src/shared/portal/AnchoredOverlay.native.tsx +117 -0
  184. package/src/shared/pressableChild.ts +33 -0
  185. package/src/shared/useKeyboardHeight.native.ts +18 -0
  186. package/src/shared/useScreenReaderEnabled.native.ts +19 -0
  187. package/dist/Table-ColfpgKV.js +0 -1552
  188. package/dist/Table-ColfpgKV.js.map +0 -1
@@ -1,9 +1,6 @@
1
1
  import { MenuContextValue } from './MenuContext';
2
- export interface MenuRootOptions {
3
- open?: boolean;
4
- defaultOpen?: boolean;
5
- onOpenChange?: (open: boolean) => void;
6
- }
2
+ import { MenuOpenOptions } from './useMenuOpen';
3
+ export type MenuRootOptions = MenuOpenOptions;
7
4
  /**
8
5
  * The menu-button pattern (WAI-ARIA APG): on open, focus moves to the
9
6
  * `role="menu"` popup, which carries `aria-activedescendant`; arrows move the
@@ -12,7 +9,7 @@ export interface MenuRootOptions {
12
9
  * elsewhere (an editor) are never intercepted, and Escape stops there so an
13
10
  * enclosing Popover or Dialog stays open.
14
11
  */
15
- export declare function useMenuRoot({ open: openProp, defaultOpen, onOpenChange }: MenuRootOptions): {
12
+ export declare function useMenuRoot(options: MenuRootOptions): {
16
13
  ctx: MenuContextValue;
17
14
  rootRef: import('react').RefObject<HTMLDivElement | null>;
18
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuRoot.d.ts","sourceRoot":"","sources":["../../../src/components/Menu/useMenuRoot.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,eAAe,CAAA;AAGnD,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;CACvC;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,WAAmB,EAAE,YAAY,EAAC,EAAE,eAAe;;;EAkL/F"}
1
+ {"version":3,"file":"useMenuRoot.d.ts","sourceRoot":"","sources":["../../../src/components/Menu/useMenuRoot.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,eAAe,CAAA;AAEnD,OAAO,EAAc,KAAK,eAAe,EAAC,MAAM,eAAe,CAAA;AAE/D,MAAM,MAAM,eAAe,GAAG,eAAe,CAAA;AAE7C;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe;;;EAkKnD"}
@@ -0,0 +1,11 @@
1
+ import { css } from 'react-strict-dom';
2
+ /** Native Popover additions to the shared styles. */
3
+ export declare const nativeStyles: Readonly<{
4
+ readonly nativeFlex: Readonly<{
5
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
6
+ }>;
7
+ readonly popupInPlace: Readonly<{
8
+ readonly position: css.StyleXClassNameFor<"position", "relative">;
9
+ }>;
10
+ }>;
11
+ //# sourceMappingURL=native.css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native.css.d.ts","sourceRoot":"","sources":["../../../src/components/Popover/native.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAEpC,qDAAqD;AACrD,eAAO,MAAM,YAAY;;;;;;;EASvB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { ChevronProps } from './types';
2
+ /** The group disclosure's chevron, drawn in the trigger's text colour. */
3
+ export declare function Chevron(_props: ChevronProps): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=Chevron.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chevron.d.ts","sourceRoot":"","sources":["../../../src/components/SideNav/Chevron.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,SAAS,CAAA;AAEzC,0EAA0E;AAC1E,wBAAgB,OAAO,CAAC,MAAM,EAAE,YAAY,2CAe3C"}
@@ -1 +1 @@
1
- {"version":3,"file":"SideNav.d.ts","sourceRoot":"","sources":["../../../src/components/SideNav/SideNav.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,SAAS,EAAkD,MAAM,OAAO,CAAA;AAMrF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH,UAAU,SAAS;IACjB,QAAQ,EAAE,SAAS,CAAA;IACnB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC;AAED,iBAAS,IAAI,CAAC,EACZ,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,KAAK,EAAE,eAAe,EACtB,YAAY,EACZ,aAAa,GACd,EAAE,SAAS,2CAgEX;AAID,UAAU,UAAU;IAClB,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,iBAAS,KAAK,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAC,EAAE,UAAU,2CAoEtE;AAID,UAAU,YAAY;IACpB,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;;;;;;GASG;AACH,iBAAS,OAAO,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,EAAE,YAAY,2CAY/C;AAID,UAAU,SAAS;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;IACnB;yEACqE;IACrE,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB;AAED,iBAAS,IAAI,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAC,EAAE,SAAS,2CAyB/C;AAED,eAAO,MAAM,OAAO;;;;;CAKnB,CAAA"}
1
+ {"version":3,"file":"SideNav.d.ts","sourceRoot":"","sources":["../../../src/components/SideNav/SideNav.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EAQf,MAAM,OAAO,CAAA;AAWd;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH,UAAU,SAAS;IACjB,QAAQ,EAAE,SAAS,CAAA;IACnB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC;AAED,iBAAS,IAAI,CAAC,EACZ,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,KAAK,EAAE,eAAe,EACtB,YAAY,EACZ,aAAa,GACd,EAAE,SAAS,2CAgEX;AAID,UAAU,UAAU;IAClB,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,iBAAS,KAAK,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAC,EAAE,UAAU,2CAoEtE;AAID,UAAU,YAAY;IACpB,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;;;;;;GASG;AACH,iBAAS,OAAO,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,EAAE,YAAY,2CAY/C;AAID,UAAU,SAAS;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;IACnB;yEACqE;IACrE,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB;AAED,iBAAS,IAAI,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAC,EAAE,SAAS,2CA2B/C;AAED,eAAO,MAAM,OAAO;;;;;CAKnB,CAAA"}
@@ -107,6 +107,12 @@ export declare const styles: Readonly<{
107
107
  readonly transitionDuration: css.StyleXClassNameFor<"transitionDuration", string>;
108
108
  readonly transitionTimingFunction: css.StyleXClassNameFor<"transitionTimingFunction", string>;
109
109
  }>;
110
+ readonly itemsHidden: Readonly<{
111
+ readonly display: css.StyleXClassNameFor<"display", "none">;
112
+ }>;
113
+ readonly nativeFlex: Readonly<{
114
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
115
+ }>;
110
116
  readonly markerActive: Readonly<{
111
117
  readonly height: css.StyleXClassNameFor<"height", string>;
112
118
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/SideNav/styles.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAQpC,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkJjB,CAAA"}
1
+ {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/SideNav/styles.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAQpC,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0JjB,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { ColorToken } from '@duro-app/tokens/keys';
2
+ export interface ChevronProps {
3
+ /** Native only: the web inherits the trigger's text colour. */
4
+ color: ColorToken;
5
+ }
6
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/SideNav/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAA;AAErD,MAAM,WAAW,YAAY;IAC3B,+DAA+D;IAC/D,KAAK,EAAE,UAAU,CAAA;CAClB"}
@@ -0,0 +1,38 @@
1
+ import { ReactNode } from 'react';
2
+ import { SizeToken } from '@duro-app/tokens/keys';
3
+ import { Breakpoint } from '@duro-app/tokens/tokens/breakpoints.css';
4
+ interface RootProps {
5
+ children: ReactNode;
6
+ /** The primary (first) pane's starting width, a size token. Default: `sidebarW` */
7
+ defaultSize?: SizeToken;
8
+ /** Controlled width of the primary pane, in px (from `onSizeChange`) */
9
+ size?: number;
10
+ /** Called with the primary pane's new width while the handle moves */
11
+ onSizeChange?: (px: number) => void;
12
+ /** The primary pane's narrowest width, a size token. Default: `sidebarW` */
13
+ minSize?: SizeToken;
14
+ /** The primary pane's widest width, a size token. Default: `panelLg` */
15
+ maxSize?: SizeToken;
16
+ /** Below this breakpoint, measured on the split's own width, the panes stack. Default: `sm` */
17
+ collapseBelow?: Breakpoint;
18
+ /** The handle's accessible name ("Resize list"). */
19
+ 'aria-label': string;
20
+ }
21
+ /**
22
+ * Two panes side by side with a resizable separator between them: a list
23
+ * and its detail, an editor and its preview. The first Pane is sized by the
24
+ * handle (pointer drag, arrow keys, Home and End); the second takes the rest.
25
+ * Below `collapseBelow` the panes stack in one column and the handle goes.
26
+ */
27
+ declare function Root({ children, defaultSize, size: controlledSize, onSizeChange, minSize, maxSize, collapseBelow, 'aria-label': label, }: RootProps): import("react/jsx-runtime").JSX.Element;
28
+ declare function Pane({ children }: {
29
+ children: ReactNode;
30
+ }): import("react/jsx-runtime").JSX.Element;
31
+ declare function Handle(): import("react/jsx-runtime").JSX.Element | null;
32
+ export declare const SplitPane: {
33
+ Root: typeof Root;
34
+ Pane: typeof Pane;
35
+ Handle: typeof Handle;
36
+ };
37
+ export {};
38
+ //# sourceMappingURL=SplitPane.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SplitPane.d.ts","sourceRoot":"","sources":["../../../src/components/SplitPane/SplitPane.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,SAAS,EAOf,MAAM,OAAO,CAAA;AAEd,OAAO,EAAuB,KAAK,SAAS,EAAC,MAAM,uBAAuB,CAAA;AAC1E,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,yCAAyC,CAAA;AA+BvE,UAAU,SAAS;IACjB,QAAQ,EAAE,SAAS,CAAA;IACnB,mFAAmF;IACnF,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sEAAsE;IACtE,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC,4EAA4E;IAC5E,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,wEAAwE;IACxE,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,+FAA+F;IAC/F,aAAa,CAAC,EAAE,UAAU,CAAA;IAC1B,oDAAoD;IACpD,YAAY,EAAE,MAAM,CAAA;CACrB;AAED;;;;;GAKG;AACH,iBAAS,IAAI,CAAC,EACZ,QAAQ,EACR,WAAwB,EACxB,IAAI,EAAE,cAAc,EACpB,YAAY,EACZ,OAAoB,EACpB,OAAmB,EACnB,aAAoB,EACpB,YAAY,EAAE,KAAK,GACpB,EAAE,SAAS,2CAiCX;AAED,iBAAS,IAAI,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,2CAc9C;AAED,iBAAS,MAAM,mDAkFd;AAED,eAAO,MAAM,SAAS;;;;CAIrB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { ComponentMeta } from '../component-meta';
2
+ export declare const meta: ComponentMeta;
3
+ //# sourceMappingURL=SplitPane.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SplitPane.meta.d.ts","sourceRoot":"","sources":["../../../src/components/SplitPane/SplitPane.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAA;AAEpD,eAAO,MAAM,IAAI,EAAE,aAqClB,CAAA"}
@@ -0,0 +1,17 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ import { SizeToken } from '@duro-app/tokens/keys';
3
+ import { Breakpoint } from '@duro-app/tokens/tokens/breakpoints.css';
4
+ declare const meta: Meta;
5
+ export default meta;
6
+ type Story = StoryObj;
7
+ interface SplitArgs {
8
+ defaultSize: SizeToken;
9
+ minSize: SizeToken;
10
+ maxSize: SizeToken;
11
+ collapseBelow: Breakpoint;
12
+ onSizeChange?: (px: number) => void;
13
+ }
14
+ export declare const Default: StoryObj<SplitArgs>;
15
+ export declare const KeyboardMovesTheSeparator: Story;
16
+ export declare const NarrowStacksInOneColumn: Story;
17
+ //# sourceMappingURL=SplitPane.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SplitPane.stories.d.ts","sourceRoot":"","sources":["../../../src/components/SplitPane/SplitPane.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AAGpD,OAAO,EAAuB,KAAK,SAAS,EAAC,MAAM,uBAAuB,CAAA;AAC1E,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,yCAAyC,CAAA;AAQvE,QAAA,MAAM,IAAI,EAAE,IAGX,CAAA;AAED,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAA;AAOrB,UAAU,SAAS;IACjB,WAAW,EAAE,SAAS,CAAA;IACtB,OAAO,EAAE,SAAS,CAAA;IAClB,OAAO,EAAE,SAAS,CAAA;IAClB,aAAa,EAAE,UAAU,CAAA;IACzB,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC;AAkDD,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,SAAS,CAkBvC,CAAA;AAID,eAAO,MAAM,yBAAyB,EAAE,KA4BvC,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,KAcrC,CAAA"}
@@ -0,0 +1,78 @@
1
+ import { css } from 'react-strict-dom';
2
+ /**
3
+ * SplitPane, the picked B0 direction (docs/mockups/split-pane/Hairline.dc.html):
4
+ * a hairline between the panes inside a wider hit area; hover, keyboard
5
+ * focus or a drag thicken it to the accent and show a grip.
6
+ */
7
+ export declare const styles: Readonly<{
8
+ readonly root: Readonly<{
9
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
10
+ readonly flexDirection: css.StyleXClassNameFor<"flexDirection", "row">;
11
+ readonly alignItems: css.StyleXClassNameFor<"alignItems", "stretch">;
12
+ readonly minWidth: css.StyleXClassNameFor<"minWidth", 0>;
13
+ readonly minHeight: css.StyleXClassNameFor<"minHeight", 0>;
14
+ readonly height: css.StyleXClassNameFor<"height", "100%">;
15
+ }>;
16
+ readonly rootStacked: Readonly<{
17
+ readonly flexDirection: css.StyleXClassNameFor<"flexDirection", "column">;
18
+ readonly height: css.StyleXClassNameFor<"height", "auto">;
19
+ }>;
20
+ readonly primary: Readonly<{
21
+ readonly flexShrink: css.StyleXClassNameFor<"flexShrink", 0>;
22
+ readonly minWidth: css.StyleXClassNameFor<"minWidth", 0>;
23
+ readonly overflow: css.StyleXClassNameFor<"overflow", "auto">;
24
+ }>;
25
+ readonly primarySize: (px: number) => readonly [Readonly<{
26
+ width: css.StyleXClassNameFor<"width", number>;
27
+ }>, css.InlineStyles];
28
+ readonly secondary: Readonly<{
29
+ readonly flexGrow: css.StyleXClassNameFor<"flexGrow", 1>;
30
+ readonly flexBasis: css.StyleXClassNameFor<"flexBasis", 0>;
31
+ readonly minWidth: css.StyleXClassNameFor<"minWidth", 0>;
32
+ readonly overflow: css.StyleXClassNameFor<"overflow", "auto">;
33
+ }>;
34
+ readonly stackedPane: Readonly<{
35
+ readonly width: css.StyleXClassNameFor<"width", "100%">;
36
+ readonly overflow: css.StyleXClassNameFor<"overflow", "visible">;
37
+ }>;
38
+ readonly handle: Readonly<{
39
+ readonly position: css.StyleXClassNameFor<"position", "relative">;
40
+ readonly flexShrink: css.StyleXClassNameFor<"flexShrink", 0>;
41
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
42
+ readonly justifyContent: css.StyleXClassNameFor<"justifyContent", "center">;
43
+ readonly width: css.StyleXClassNameFor<"width", string>;
44
+ readonly cursor: css.StyleXClassNameFor<"cursor", "col-resize">;
45
+ readonly touchAction: css.StyleXClassNameFor<"touchAction", "none">;
46
+ readonly userSelect: css.StyleXClassNameFor<"userSelect", "none">;
47
+ readonly outlineStyle: css.StyleXClassNameFor<"outlineStyle", "none">;
48
+ }>;
49
+ readonly line: Readonly<{
50
+ readonly width: css.StyleXClassNameFor<"width", string>;
51
+ readonly height: css.StyleXClassNameFor<"height", "100%">;
52
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", string>;
53
+ readonly transitionProperty: css.StyleXClassNameFor<"transitionProperty", "background-color, width">;
54
+ readonly transitionDuration: css.StyleXClassNameFor<"transitionDuration", string>;
55
+ readonly transitionTimingFunction: css.StyleXClassNameFor<"transitionTimingFunction", string>;
56
+ }>;
57
+ readonly lineActive: Readonly<{
58
+ readonly width: css.StyleXClassNameFor<"width", string>;
59
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", string>;
60
+ }>;
61
+ readonly grip: Readonly<{
62
+ readonly position: css.StyleXClassNameFor<"position", "absolute">;
63
+ readonly top: css.StyleXClassNameFor<"top", "50%">;
64
+ readonly left: css.StyleXClassNameFor<"left", "50%">;
65
+ readonly transform: css.StyleXClassNameFor<"transform", "translate(-50%, -50%)">;
66
+ readonly width: css.StyleXClassNameFor<"width", string>;
67
+ readonly height: css.StyleXClassNameFor<"height", string>;
68
+ readonly borderRadius: css.StyleXClassNameFor<"borderRadius", string>;
69
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", string>;
70
+ readonly opacity: css.StyleXClassNameFor<"opacity", 0>;
71
+ readonly transitionProperty: css.StyleXClassNameFor<"transitionProperty", "opacity">;
72
+ readonly transitionDuration: css.StyleXClassNameFor<"transitionDuration", string>;
73
+ }>;
74
+ readonly gripShown: Readonly<{
75
+ readonly opacity: css.StyleXClassNameFor<"opacity", 1>;
76
+ }>;
77
+ }>;
78
+ //# sourceMappingURL=styles.css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/SplitPane/styles.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAMpC;;;;GAIG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqEjB,CAAA"}
@@ -0,0 +1,7 @@
1
+ import { ReactNode } from 'react';
2
+ /** Web: the tab itself; the List measures it in the DOM (TabLayout.native.tsx reports it). */
3
+ export declare function TabLayout({ children }: {
4
+ value: string;
5
+ children: ReactNode;
6
+ }): ReactNode;
7
+ //# sourceMappingURL=TabLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabLayout.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/TabLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAA;AAEpC,8FAA8F;AAC9F,wBAAgB,SAAS,CAAC,EAAC,QAAQ,EAAC,EAAE;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAC,aAEzE"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,SAAS,EAAsD,MAAM,OAAO,CAAA;AAQzF,UAAU,SAAS;IACjB,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;CACxC;AAED,iBAAS,IAAI,CAAC,EACZ,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,aAAa,EACb,WAA0B,GAC3B,EAAE,SAAS,2CAUX;AAID,UAAU,SAAS;IACjB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,iBAAS,IAAI,CAAC,EAAC,QAAQ,EAAC,EAAE,SAAS,2CA4IlC;AAID,UAAU,QAAQ;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,iBAAS,GAAG,CAAC,EAAC,KAAK,EAAE,QAAgB,EAAE,QAAQ,EAAC,EAAE,QAAQ,2CAuCzD;AAID,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,iBAAS,KAAK,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAC,EAAE,UAAU,kDAa3C;AAED,eAAO,MAAM,IAAI;;;;;CAKhB,CAAA"}
1
+ {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,SAAS,EAA2B,MAAM,OAAO,CAAA;AAa9D,UAAU,SAAS;IACjB,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;CACxC;AAED,iBAAS,IAAI,CAAC,EACZ,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,aAAa,EACb,WAA0B,GAC3B,EAAE,SAAS,2CAUX;AAID,UAAU,SAAS;IACjB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,iBAAS,IAAI,CAAC,EAAC,QAAQ,EAAC,EAAE,SAAS,2CAkClC;AAID,UAAU,QAAQ;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,iBAAS,GAAG,CAAC,EAAC,KAAK,EAAE,QAAgB,EAAE,QAAQ,EAAC,EAAE,QAAQ,2CA0CzD;AAID,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,iBAAS,KAAK,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAC,EAAE,UAAU,kDAa3C;AAED,eAAO,MAAM,IAAI;;;;;CAKhB,CAAA"}
@@ -0,0 +1,28 @@
1
+ import { Orientation } from '../../shared/types';
2
+ /** Where the sliding indicator sits along the list, in px. */
3
+ export interface IndicatorBox {
4
+ offset: number;
5
+ size: number;
6
+ }
7
+ /** A tab's box inside its list, as native `onLayout` reports it. */
8
+ export interface TabBox {
9
+ x: number;
10
+ y: number;
11
+ width: number;
12
+ height: number;
13
+ }
14
+ /** Native: each Tab reports its box here, so the List places the indicator. */
15
+ export declare const TabLayoutContext: import('react').Context<((value: string, box: TabBox) => void) | null>;
16
+ export declare function useReportTabLayout(): ((value: string, box: TabBox) => void) | null;
17
+ export interface TabIndicatorInput {
18
+ listRef: React.RefObject<HTMLDivElement | null>;
19
+ activeValue: string | null;
20
+ orientation: Orientation;
21
+ setIndicatorActive: (active: boolean) => void;
22
+ }
23
+ export interface TabIndicator {
24
+ indicator: IndicatorBox | null;
25
+ /** Native only: what the Tabs report their layout to. */
26
+ reportTabLayout: ((value: string, box: TabBox) => void) | null;
27
+ }
28
+ //# sourceMappingURL=indicator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indicator.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/indicator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAA;AAEnD,8DAA8D;AAC9D,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACb;AAED,oEAAoE;AACpE,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,+EAA+E;AAC/E,eAAO,MAAM,gBAAgB,mCAA0B,MAAM,OAAO,MAAM,KAAK,IAAI,SAAe,CAAA;AAElG,wBAAgB,kBAAkB,aAFqB,MAAM,OAAO,MAAM,KAAK,IAAI,SAIlF;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAA;IAC/C,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,WAAW,EAAE,WAAW,CAAA;IACxB,kBAAkB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAA;CAC9C;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,YAAY,GAAG,IAAI,CAAA;IAC9B,yDAAyD;IACzD,eAAe,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAA;CAC/D"}
@@ -24,6 +24,10 @@ export declare const styles: Readonly<{
24
24
  readonly borderRightColor: css.StyleXClassNameFor<"borderRightColor", string>;
25
25
  readonly gap: css.StyleXClassNameFor<"gap", 0>;
26
26
  }>;
27
+ readonly nativeFlex: Readonly<{
28
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
29
+ readonly transitionProperty: css.StyleXClassNameFor<"transitionProperty", "opacity">;
30
+ }>;
27
31
  readonly tab: Readonly<{
28
32
  readonly display: css.StyleXClassNameFor<"display", "inline-flex">;
29
33
  readonly alignItems: css.StyleXClassNameFor<"alignItems", "center">;
@@ -1 +1 @@
1
- {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/styles.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAQpC,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkIjB,CAAA"}
1
+ {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/styles.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAQpC,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyIjB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { TabIndicator, TabIndicatorInput } from './indicator';
2
+ /** Web: the active tab measured in the DOM, kept current by a ResizeObserver. */
3
+ export declare function useTabIndicator({ listRef, activeValue, orientation, setIndicatorActive, }: TabIndicatorInput): TabIndicator;
4
+ //# sourceMappingURL=useTabIndicator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTabIndicator.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/useTabIndicator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,YAAY,EAAE,iBAAiB,EAAC,MAAM,aAAa,CAAA;AAE9E,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,WAAW,EACX,WAAW,EACX,kBAAkB,GACnB,EAAE,iBAAiB,GAAG,YAAY,CAuClC"}
@@ -0,0 +1,13 @@
1
+ import { Orientation } from '../../shared/types';
2
+ interface TabKeysInput {
3
+ listRef: React.RefObject<HTMLDivElement | null>;
4
+ orientation: Orientation;
5
+ activeValue: string | null;
6
+ onSelect: (value: string) => void;
7
+ tabsRef: React.RefObject<Map<string, boolean>>;
8
+ orderRef: React.RefObject<string[]>;
9
+ }
10
+ /** Web: arrow keys, Home and End move the selection and focus along the list. */
11
+ export declare function useTabKeys({ listRef, orientation, activeValue, onSelect, tabsRef, orderRef, }: TabKeysInput): void;
12
+ export {};
13
+ //# sourceMappingURL=useTabKeys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTabKeys.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/useTabKeys.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAA;AAEnD,UAAU,YAAY;IACpB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAA;IAC/C,WAAW,EAAE,WAAW,CAAA;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAC9C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;CACpC;AAED,iFAAiF;AACjF,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,WAAW,EACX,WAAW,EACX,QAAQ,EACR,OAAO,EACP,QAAQ,GACT,EAAE,YAAY,QA8Ed"}
@@ -0,0 +1,4 @@
1
+ import { RemoveGlyphProps } from './types';
2
+ /** The tag's remove cross: 1.5 strokes on a 12 box, drawn in the tag's text colour. */
3
+ export declare function RemoveGlyph({ size }: RemoveGlyphProps): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=RemoveGlyph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RemoveGlyph.d.ts","sourceRoot":"","sources":["../../../src/components/Tag/RemoveGlyph.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,SAAS,CAAA;AAE7C,uFAAuF;AACvF,wBAAgB,WAAW,CAAC,EAAC,IAAI,EAAC,EAAE,gBAAgB,2CAMnD"}
@@ -1,26 +1,4 @@
1
- import { ReactNode } from 'react';
2
- export type TagVariant = 'default' | 'success' | 'warning' | 'error' | 'info';
3
- export type TagSize = 'sm' | 'md';
4
- interface TagProps {
5
- /** Value identifier — required when used inside TagGroup */
6
- value?: string;
7
- variant?: TagVariant;
8
- size?: TagSize;
9
- /** Show remove button. Auto-derived from TagGroup context when inside one. */
10
- removable?: boolean;
11
- /** Called when remove button is clicked. Auto-wired to TagGroup when inside one. */
12
- onRemove?: () => void;
13
- disabled?: boolean;
14
- /**
15
- * Allow the label to wrap / break instead of staying on one line. Tags are
16
- * `white-space: nowrap` by default (they read as pills); set this for long
17
- * identifier-style values (e.g. `lldap.group.member.remove`) sitting in a
18
- * constrained column, so they break within their cell instead of leaking
19
- * into the next one.
20
- */
21
- wrap?: boolean;
22
- children: ReactNode;
23
- }
1
+ import { TagProps } from './types';
2
+ export type { TagProps, TagSize, TagVariant } from './types';
24
3
  export declare function Tag({ value, variant, size, removable: removableProp, onRemove: onRemoveProp, disabled: disabledProp, wrap, children, }: TagProps): import("react/jsx-runtime").JSX.Element;
25
- export {};
26
4
  //# sourceMappingURL=Tag.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.d.ts","sourceRoot":"","sources":["../../../src/components/Tag/Tag.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,SAAS,EAAsB,MAAM,OAAO,CAAA;AAKzD,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAA;AAC7E,MAAM,MAAM,OAAO,GAAG,IAAI,GAAG,IAAI,CAAA;AAEjC,UAAU,QAAQ;IAChB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,8EAA8E;IAC9E,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,QAAQ,EAAE,SAAS,CAAA;CACpB;AAYD,wBAAgB,GAAG,CAAC,EAClB,KAAK,EACL,OAAmB,EACnB,IAAW,EACX,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAoB,EAC9B,IAAY,EACZ,QAAQ,GACT,EAAE,QAAQ,2CAsGV"}
1
+ {"version":3,"file":"Tag.d.ts","sourceRoot":"","sources":["../../../src/components/Tag/Tag.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAc,KAAK,QAAQ,EAAC,MAAM,SAAS,CAAA;AAElD,YAAY,EAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAC,MAAM,SAAS,CAAA;AAY1D,wBAAgB,GAAG,CAAC,EAClB,KAAK,EACL,OAAmB,EACnB,IAAW,EACX,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAoB,EAC9B,IAAY,EACZ,QAAQ,GACT,EAAE,QAAQ,2CA6FV"}
@@ -81,6 +81,14 @@ export declare const styles: Readonly<{
81
81
  readonly opacity: css.StyleXClassNameFor<"opacity", 1 | 0.6>;
82
82
  readonly outlineWidth: css.StyleXClassNameFor<"outlineWidth", 0>;
83
83
  }>;
84
+ readonly nativeFlex: Readonly<{
85
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
86
+ readonly flexDirection: css.StyleXClassNameFor<"flexDirection", "row">;
87
+ readonly alignSelf: css.StyleXClassNameFor<"alignSelf", "flex-start">;
88
+ }>;
89
+ readonly nativeButtonFlex: Readonly<{
90
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
91
+ }>;
84
92
  readonly removeButtonDisabled: Readonly<{
85
93
  readonly cursor: css.StyleXClassNameFor<"cursor", "not-allowed">;
86
94
  readonly opacity: css.StyleXClassNameFor<"opacity", 0.4>;
@@ -1 +1 @@
1
- {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/Tag/styles.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAMpC,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8GjB,CAAA"}
1
+ {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/Tag/styles.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAMpC,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuHjB,CAAA"}
@@ -0,0 +1,39 @@
1
+ import { ReactNode } from 'react';
2
+ import { ColorToken } from '@duro-app/tokens/keys';
3
+ export type TagVariant = 'default' | 'success' | 'warning' | 'error' | 'info';
4
+ /** Each variant's text colour, which the remove cross draws in. */
5
+ export declare const variantText: {
6
+ readonly default: "text";
7
+ readonly success: "successText";
8
+ readonly warning: "warningText";
9
+ readonly error: "errorText";
10
+ readonly info: "infoText";
11
+ };
12
+ export type TagSize = 'sm' | 'md';
13
+ export interface TagProps {
14
+ /** Value identifier — required when used inside TagGroup */
15
+ value?: string;
16
+ variant?: TagVariant;
17
+ size?: TagSize;
18
+ /** Show remove button. Auto-derived from TagGroup context when inside one. */
19
+ removable?: boolean;
20
+ /** Called when remove button is clicked. Auto-wired to TagGroup when inside one. */
21
+ onRemove?: () => void;
22
+ disabled?: boolean;
23
+ /**
24
+ * Allow the label to wrap / break instead of staying on one line. Tags are
25
+ * `white-space: nowrap` by default (they read as pills); set this for long
26
+ * identifier-style values (e.g. `lldap.group.member.remove`) sitting in a
27
+ * constrained column, so they break within their cell instead of leaking
28
+ * into the next one.
29
+ */
30
+ wrap?: boolean;
31
+ children: ReactNode;
32
+ }
33
+ export interface RemoveGlyphProps {
34
+ /** px, from the glyph size tokens */
35
+ size: number;
36
+ /** Native only: the web inherits the tag's text colour. */
37
+ color: ColorToken;
38
+ }
39
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/Tag/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAA;AACpC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAA;AAErD,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAA;AAE7E,mEAAmE;AACnE,eAAO,MAAM,WAAW;;;;;;CAM2B,CAAA;AAEnD,MAAM,MAAM,OAAO,GAAG,IAAI,GAAG,IAAI,CAAA;AAEjC,MAAM,WAAW,QAAQ;IACvB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,8EAA8E;IAC9E,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,2DAA2D;IAC3D,KAAK,EAAE,UAAU,CAAA;CAClB"}
@@ -1,25 +1,6 @@
1
1
  import { ReactNode } from 'react';
2
- export type ToastVariant = 'success' | 'error' | 'info' | 'warning';
3
- export interface ToastAction {
4
- label: string;
5
- onClick: () => void;
6
- }
7
- export interface ToastOptions {
8
- /** Visual + semantic tone. Errors announce assertively; errors and
9
- * warnings linger longer. */
10
- variant?: ToastVariant;
11
- message: ReactNode;
12
- /** Optional single action, e.g. Undo. Runs, then dismisses the toast. */
13
- action?: ToastAction;
14
- /** Auto-dismiss delay in ms. `0` (or negative) keeps it until dismissed.
15
- * The countdown pauses while the toast is hovered or holds focus. */
16
- duration?: number;
17
- }
18
- export interface ToastContextValue {
19
- /** Show a toast; returns its id so it can be dismissed programmatically. */
20
- toast: (opts: ToastOptions) => string;
21
- dismiss: (id: string) => void;
22
- }
2
+ import { ToastContextValue } from './store';
3
+ export type { ToastAction, ToastContextValue, ToastOptions, ToastVariant } from './store';
23
4
  export declare function useToast(): ToastContextValue;
24
5
  export interface ToastProviderProps {
25
6
  /** Accessible name of each toast's close button, e.g. from the app's
@@ -1 +1 @@
1
- {"version":3,"file":"ToastProvider.d.ts","sourceRoot":"","sources":["../../../src/components/Toast/ToastProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AAOd,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;AAEnE,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B;kCAC8B;IAC9B,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,OAAO,EAAE,SAAS,CAAA;IAClB,yEAAyE;IACzE,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB;0EACsE;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,4EAA4E;IAC5E,KAAK,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,MAAM,CAAA;IACrC,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9B;AAqED,wBAAgB,QAAQ,IAAI,iBAAiB,CAI5C;AAwED,MAAM,WAAW,kBAAkB;IACjC;2BACuB;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,aAAa,CAAC,EAAC,YAAwB,EAAE,QAAQ,EAAC,EAAE,kBAAkB,2CAkCrF"}
1
+ {"version":3,"file":"ToastProvider.d.ts","sourceRoot":"","sources":["../../../src/components/Toast/ToastProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AAMd,OAAO,EAEL,KAAK,iBAAiB,EAIvB,MAAM,SAAS,CAAA;AAEhB,YAAY,EAAC,WAAW,EAAE,iBAAiB,EAAE,YAAY,EAAE,YAAY,EAAC,MAAM,SAAS,CAAA;AAiBvF,wBAAgB,QAAQ,IAAI,iBAAiB,CAI5C;AAwED,MAAM,WAAW,kBAAkB;IACjC;2BACuB;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,aAAa,CAAC,EAAC,YAAwB,EAAE,QAAQ,EAAC,EAAE,kBAAkB,2CAwCrF"}
@@ -0,0 +1,81 @@
1
+ import { css } from 'react-strict-dom';
2
+ /**
3
+ * The native toast, the picked B0 direction (docs/mockups/native-toast/
4
+ * Tinted.dc.html): a card with a status-coloured edge, one row of message,
5
+ * action and close. Motion is Reanimated's.
6
+ */
7
+ export declare const nativeStyles: Readonly<{
8
+ readonly region: Readonly<{
9
+ readonly position: css.StyleXClassNameFor<"position", "absolute">;
10
+ readonly left: css.StyleXClassNameFor<"left", 0>;
11
+ readonly right: css.StyleXClassNameFor<"right", 0>;
12
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
13
+ readonly flexDirection: css.StyleXClassNameFor<"flexDirection", "column">;
14
+ readonly alignItems: css.StyleXClassNameFor<"alignItems", "center">;
15
+ readonly gap: css.StyleXClassNameFor<"gap", string>;
16
+ readonly paddingLeft: css.StyleXClassNameFor<"paddingLeft", string>;
17
+ readonly paddingRight: css.StyleXClassNameFor<"paddingRight", string>;
18
+ }>;
19
+ readonly regionBottom: (bottom: number) => readonly [Readonly<{
20
+ bottom: css.StyleXClassNameFor<"bottom", number>;
21
+ }>, css.InlineStyles];
22
+ readonly toast: Readonly<{
23
+ readonly boxSizing: css.StyleXClassNameFor<"boxSizing", "border-box">;
24
+ readonly width: css.StyleXClassNameFor<"width", "100%">;
25
+ readonly maxWidth: css.StyleXClassNameFor<"maxWidth", string>;
26
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
27
+ readonly flexDirection: css.StyleXClassNameFor<"flexDirection", "row">;
28
+ readonly alignItems: css.StyleXClassNameFor<"alignItems", "center">;
29
+ readonly gap: css.StyleXClassNameFor<"gap", string>;
30
+ readonly paddingTop: css.StyleXClassNameFor<"paddingTop", string>;
31
+ readonly paddingBottom: css.StyleXClassNameFor<"paddingBottom", string>;
32
+ readonly paddingRight: css.StyleXClassNameFor<"paddingRight", string>;
33
+ readonly paddingLeft: css.StyleXClassNameFor<"paddingLeft", string>;
34
+ readonly borderRadius: css.StyleXClassNameFor<"borderRadius", string>;
35
+ readonly borderWidth: css.StyleXClassNameFor<"borderWidth", string>;
36
+ readonly borderStyle: css.StyleXClassNameFor<"borderStyle", "solid">;
37
+ readonly borderColor: css.StyleXClassNameFor<"borderColor", string>;
38
+ readonly borderLeftWidth: css.StyleXClassNameFor<"borderLeftWidth", string>;
39
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", string>;
40
+ readonly boxShadow: css.StyleXClassNameFor<"boxShadow", string>;
41
+ }>;
42
+ readonly success: Readonly<{
43
+ readonly borderLeftColor: css.StyleXClassNameFor<"borderLeftColor", string>;
44
+ }>;
45
+ readonly error: Readonly<{
46
+ readonly borderLeftColor: css.StyleXClassNameFor<"borderLeftColor", string>;
47
+ }>;
48
+ readonly info: Readonly<{
49
+ readonly borderLeftColor: css.StyleXClassNameFor<"borderLeftColor", string>;
50
+ }>;
51
+ readonly warning: Readonly<{
52
+ readonly borderLeftColor: css.StyleXClassNameFor<"borderLeftColor", string>;
53
+ }>;
54
+ readonly message: Readonly<{
55
+ readonly flexGrow: css.StyleXClassNameFor<"flexGrow", 1>;
56
+ readonly flexShrink: css.StyleXClassNameFor<"flexShrink", 1>;
57
+ readonly color: css.StyleXClassNameFor<"color", string>;
58
+ readonly fontSize: css.StyleXClassNameFor<"fontSize", string>;
59
+ readonly lineHeight: css.StyleXClassNameFor<"lineHeight", string>;
60
+ }>;
61
+ readonly action: Readonly<{
62
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
63
+ readonly padding: css.StyleXClassNameFor<"padding", string>;
64
+ readonly borderWidth: css.StyleXClassNameFor<"borderWidth", 0>;
65
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", "transparent">;
66
+ readonly color: css.StyleXClassNameFor<"color", string>;
67
+ readonly fontSize: css.StyleXClassNameFor<"fontSize", string>;
68
+ readonly fontWeight: css.StyleXClassNameFor<"fontWeight", string>;
69
+ }>;
70
+ readonly close: Readonly<{
71
+ readonly display: css.StyleXClassNameFor<"display", "flex">;
72
+ readonly alignItems: css.StyleXClassNameFor<"alignItems", "center">;
73
+ readonly justifyContent: css.StyleXClassNameFor<"justifyContent", "center">;
74
+ readonly width: css.StyleXClassNameFor<"width", string>;
75
+ readonly height: css.StyleXClassNameFor<"height", string>;
76
+ readonly borderRadius: css.StyleXClassNameFor<"borderRadius", string>;
77
+ readonly borderWidth: css.StyleXClassNameFor<"borderWidth", 0>;
78
+ readonly backgroundColor: css.StyleXClassNameFor<"backgroundColor", "transparent">;
79
+ }>;
80
+ }>;
81
+ //# sourceMappingURL=native.css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native.css.d.ts","sourceRoot":"","sources":["../../../src/components/Toast/native.css.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAQpC;;;;GAIG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgEvB,CAAA"}