@dreamtree-org/twreact-ui 1.3.10 → 2.0.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 (230) hide show
  1. package/README.md +70 -6
  2. package/ai-skills/dreamtree-ui.md +58 -15
  3. package/codemods/v2.cjs +198 -0
  4. package/dist/ai-schema.json +745 -53
  5. package/dist/charts/index.js +195 -66
  6. package/dist/components/blocks/AppShell.d.ts.map +1 -1
  7. package/dist/components/blocks/BottomActionBar.d.ts +6 -0
  8. package/dist/components/blocks/BottomActionBar.d.ts.map +1 -0
  9. package/dist/components/blocks/ConfirmDialog.d.ts.map +1 -1
  10. package/dist/components/blocks/PageHeader.d.ts.map +1 -1
  11. package/dist/components/charts/CartesianChart.d.ts.map +1 -1
  12. package/dist/components/charts/ChartFrame.d.ts.map +1 -1
  13. package/dist/components/charts/useChartLayout.d.ts +25 -0
  14. package/dist/components/charts/useChartLayout.d.ts.map +1 -0
  15. package/dist/components/core/Button.d.ts.map +1 -1
  16. package/dist/components/core/Checkbox.d.ts.map +1 -1
  17. package/dist/components/core/ColorPicker.d.ts.map +1 -1
  18. package/dist/components/core/DatePicker.d.ts.map +1 -1
  19. package/dist/components/core/DateRangePicker.d.ts.map +1 -1
  20. package/dist/components/core/Form.d.ts.map +1 -1
  21. package/dist/components/core/Input.d.ts.map +1 -1
  22. package/dist/components/core/Loader.d.ts.map +1 -1
  23. package/dist/components/core/LocationPicker.d.ts.map +1 -1
  24. package/dist/components/core/Popover.d.ts.map +1 -1
  25. package/dist/components/core/ProgressBar.d.ts.map +1 -1
  26. package/dist/components/core/Radio.d.ts.map +1 -1
  27. package/dist/components/core/Rate.d.ts.map +1 -1
  28. package/dist/components/core/RoundedTag.d.ts.map +1 -1
  29. package/dist/components/core/SearchField.d.ts +9 -0
  30. package/dist/components/core/SearchField.d.ts.map +1 -0
  31. package/dist/components/core/SegmentedControl.d.ts +8 -0
  32. package/dist/components/core/SegmentedControl.d.ts.map +1 -0
  33. package/dist/components/core/Select.d.ts.map +1 -1
  34. package/dist/components/core/Skeleton.d.ts.map +1 -1
  35. package/dist/components/core/Slider.d.ts.map +1 -1
  36. package/dist/components/core/SpeechToText.d.ts.map +1 -1
  37. package/dist/components/core/SwipeableListItem.d.ts +4 -0
  38. package/dist/components/core/SwipeableListItem.d.ts.map +1 -0
  39. package/dist/components/core/SwipeableListItemGesture.d.ts +58 -0
  40. package/dist/components/core/SwipeableListItemGesture.d.ts.map +1 -0
  41. package/dist/components/core/Switch.d.ts.map +1 -1
  42. package/dist/components/core/Table/ActionMenu.d.ts +10 -3
  43. package/dist/components/core/Table/ActionMenu.d.ts.map +1 -1
  44. package/dist/components/core/Table/MobileCard.d.ts +10 -1
  45. package/dist/components/core/Table/MobileCard.d.ts.map +1 -1
  46. package/dist/components/core/Table/MobileFilters.d.ts +8 -2
  47. package/dist/components/core/Table/MobileFilters.d.ts.map +1 -1
  48. package/dist/components/core/Table/Table.d.ts.map +1 -1
  49. package/dist/components/core/Table/TableRow.d.ts +2 -1
  50. package/dist/components/core/Table/TableRow.d.ts.map +1 -1
  51. package/dist/components/core/Tabs.d.ts +5 -8
  52. package/dist/components/core/Tabs.d.ts.map +1 -1
  53. package/dist/components/core/Textarea.d.ts.map +1 -1
  54. package/dist/components/core/ThreeDotPopover.d.ts +10 -22
  55. package/dist/components/core/ThreeDotPopover.d.ts.map +1 -1
  56. package/dist/components/core/Tooltip.d.ts +2 -1
  57. package/dist/components/core/Tooltip.d.ts.map +1 -1
  58. package/dist/components/core/internal/Calendar.d.ts +77 -0
  59. package/dist/components/core/internal/Calendar.d.ts.map +1 -0
  60. package/dist/components/core/menu/ActionMenuSurface.d.ts +42 -0
  61. package/dist/components/core/menu/ActionMenuSurface.d.ts.map +1 -0
  62. package/dist/components/core/menu/ActionSheetMenu.d.ts +17 -0
  63. package/dist/components/core/menu/ActionSheetMenu.d.ts.map +1 -0
  64. package/dist/components/core/menu/MenuPopover.d.ts +21 -0
  65. package/dist/components/core/menu/MenuPopover.d.ts.map +1 -0
  66. package/dist/components/core/menu/menuItems.d.ts +21 -0
  67. package/dist/components/core/menu/menuItems.d.ts.map +1 -0
  68. package/dist/components/core/menu/menuKeyboard.d.ts +16 -0
  69. package/dist/components/core/menu/menuKeyboard.d.ts.map +1 -0
  70. package/dist/components/feedback/ActionSheet.d.ts +4 -0
  71. package/dist/components/feedback/ActionSheet.d.ts.map +1 -0
  72. package/dist/components/feedback/Alert.d.ts.map +1 -1
  73. package/dist/components/feedback/Dialog.d.ts.map +1 -1
  74. package/dist/components/feedback/Drawer.d.ts.map +1 -1
  75. package/dist/components/feedback/Sheet.d.ts +4 -0
  76. package/dist/components/feedback/Sheet.d.ts.map +1 -0
  77. package/dist/components/feedback/Toast.d.ts +4 -3
  78. package/dist/components/feedback/Toast.d.ts.map +1 -1
  79. package/dist/components/feedback/ToastItem.d.ts +47 -0
  80. package/dist/components/feedback/ToastItem.d.ts.map +1 -0
  81. package/dist/components/feedback/ToastStack.d.ts +20 -0
  82. package/dist/components/feedback/ToastStack.d.ts.map +1 -0
  83. package/dist/components/feedback/ToastSwipe.d.ts +22 -0
  84. package/dist/components/feedback/ToastSwipe.d.ts.map +1 -0
  85. package/dist/components/feedback/Tour.d.ts.map +1 -1
  86. package/dist/components/feedback/sheetCore.d.ts +30 -0
  87. package/dist/components/feedback/sheetCore.d.ts.map +1 -0
  88. package/dist/components/navigation/Breadcrumbs.d.ts.map +1 -1
  89. package/dist/components/navigation/FootNav.d.ts.map +1 -1
  90. package/dist/components/navigation/Navbar.d.ts.map +1 -1
  91. package/dist/components/navigation/Sidebar.d.ts +6 -0
  92. package/dist/components/navigation/Sidebar.d.ts.map +1 -1
  93. package/dist/components/rich-text/RichTextEditor.d.ts.map +1 -1
  94. package/dist/components/rich-text/RichTextToolbar.d.ts +6 -2
  95. package/dist/components/rich-text/RichTextToolbar.d.ts.map +1 -1
  96. package/dist/components/utility/Avatar.d.ts +8 -0
  97. package/dist/components/utility/Avatar.d.ts.map +1 -1
  98. package/dist/components/utility/AvatarGroup.d.ts +4 -0
  99. package/dist/components/utility/AvatarGroup.d.ts.map +1 -0
  100. package/dist/components/utility/Badge.d.ts.map +1 -1
  101. package/dist/components/utility/Card.d.ts.map +1 -1
  102. package/dist/components/utility/Carousel.d.ts.map +1 -1
  103. package/dist/components/utility/FileUpload.d.ts.map +1 -1
  104. package/dist/components/utility/Pagination.d.ts.map +1 -1
  105. package/dist/components/utility/PullToRefresh.d.ts +5 -0
  106. package/dist/components/utility/PullToRefresh.d.ts.map +1 -0
  107. package/dist/components/utility/Sortable.d.ts.map +1 -1
  108. package/dist/components/utility/Stepper.d.ts.map +1 -1
  109. package/dist/esm/components/blocks/AppShell.js +97 -90
  110. package/dist/esm/components/blocks/BottomActionBar.js +132 -0
  111. package/dist/esm/components/blocks/ConfirmDialog.js +40 -4
  112. package/dist/esm/components/blocks/EmptyState.js +1 -1
  113. package/dist/esm/components/blocks/ErrorState.js +1 -1
  114. package/dist/esm/components/blocks/LoadingState.js +4 -4
  115. package/dist/esm/components/blocks/PageHeader.js +16 -3
  116. package/dist/esm/components/blocks/StatCard.js +6 -6
  117. package/dist/esm/components/blocks/StatusPill.js +5 -8
  118. package/dist/esm/components/charts/CartesianChart.js +85 -62
  119. package/dist/esm/components/charts/ChartFrame.js +12 -5
  120. package/dist/esm/components/charts/useChartLayout.js +105 -0
  121. package/dist/esm/components/core/Button.js +49 -25
  122. package/dist/esm/components/core/Checkbox.js +72 -57
  123. package/dist/esm/components/core/ColorPicker.js +31 -42
  124. package/dist/esm/components/core/DatePicker.js +117 -304
  125. package/dist/esm/components/core/DateRangePicker.js +260 -308
  126. package/dist/esm/components/core/Form.js +11 -2
  127. package/dist/esm/components/core/Input.js +100 -38
  128. package/dist/esm/components/core/Loader.js +30 -44
  129. package/dist/esm/components/core/LocationPicker.js +82 -16
  130. package/dist/esm/components/core/Popover.js +59 -48
  131. package/dist/esm/components/core/ProgressBar.js +40 -72
  132. package/dist/esm/components/core/Radio.js +10 -12
  133. package/dist/esm/components/core/Rate.js +77 -14
  134. package/dist/esm/components/core/RoundedTag.js +5 -5
  135. package/dist/esm/components/core/SearchField.js +311 -0
  136. package/dist/esm/components/core/SegmentedControl.js +189 -0
  137. package/dist/esm/components/core/Select.js +185 -190
  138. package/dist/esm/components/core/Skeleton.js +13 -14
  139. package/dist/esm/components/core/Slider.js +24 -6
  140. package/dist/esm/components/core/SpeechToText.js +68 -16
  141. package/dist/esm/components/core/SwipeableListItem.js +286 -0
  142. package/dist/esm/components/core/SwipeableListItemGesture.js +219 -0
  143. package/dist/esm/components/core/Switch.js +98 -28
  144. package/dist/esm/components/core/Table/ActionMenu.js +45 -231
  145. package/dist/esm/components/core/Table/ColumnMenu.js +1 -1
  146. package/dist/esm/components/core/Table/MobileCard.js +66 -16
  147. package/dist/esm/components/core/Table/MobileFilters.js +181 -10
  148. package/dist/esm/components/core/Table/Table.js +149 -102
  149. package/dist/esm/components/core/Table/TableRow.js +10 -2
  150. package/dist/esm/components/core/Tabs.js +186 -39
  151. package/dist/esm/components/core/Textarea.js +10 -2
  152. package/dist/esm/components/core/ThreeDotPopover.js +93 -99
  153. package/dist/esm/components/core/Tooltip.js +138 -145
  154. package/dist/esm/components/core/internal/Calendar.js +381 -0
  155. package/dist/esm/components/core/menu/ActionMenuSurface.js +110 -0
  156. package/dist/esm/components/core/menu/ActionSheetMenu.js +140 -0
  157. package/dist/esm/components/core/menu/MenuPopover.js +177 -0
  158. package/dist/esm/components/core/menu/menuItems.js +61 -0
  159. package/dist/esm/components/core/menu/menuKeyboard.js +54 -0
  160. package/dist/esm/components/feedback/ActionSheet.js +55 -0
  161. package/dist/esm/components/feedback/Alert.js +63 -53
  162. package/dist/esm/components/feedback/Dialog.js +141 -53
  163. package/dist/esm/components/feedback/Drawer.js +130 -132
  164. package/dist/esm/components/feedback/Sheet.js +125 -0
  165. package/dist/esm/components/feedback/Toast.js +21 -291
  166. package/dist/esm/components/feedback/ToastItem.js +348 -0
  167. package/dist/esm/components/feedback/ToastStack.js +130 -0
  168. package/dist/esm/components/feedback/ToastSwipe.js +52 -0
  169. package/dist/esm/components/feedback/Tour.js +107 -30
  170. package/dist/esm/components/feedback/sheetCore.js +494 -0
  171. package/dist/esm/components/navigation/Breadcrumbs.js +97 -35
  172. package/dist/esm/components/navigation/Dropdown.js +1 -1
  173. package/dist/esm/components/navigation/FootNav.js +102 -13
  174. package/dist/esm/components/navigation/Navbar.js +172 -37
  175. package/dist/esm/components/navigation/Sidebar.js +263 -111
  176. package/dist/esm/components/rich-text/RichTextEditor.js +9 -3
  177. package/dist/esm/components/rich-text/RichTextToolbar.js +29 -9
  178. package/dist/esm/components/utility/Avatar.js +14 -12
  179. package/dist/esm/components/utility/AvatarGroup.js +56 -0
  180. package/dist/esm/components/utility/Badge.js +43 -23
  181. package/dist/esm/components/utility/Card.js +32 -8
  182. package/dist/esm/components/utility/Carousel.js +139 -29
  183. package/dist/esm/components/utility/FileUpload.js +106 -31
  184. package/dist/esm/components/utility/Pagination.js +31 -13
  185. package/dist/esm/components/utility/Portal.js +31 -0
  186. package/dist/esm/components/utility/PullToRefresh.js +229 -0
  187. package/dist/esm/components/utility/Sortable.js +6 -2
  188. package/dist/esm/components/utility/Stepper.js +110 -47
  189. package/dist/esm/hooks/useFloatingPosition.js +82 -0
  190. package/dist/esm/hooks/useHaptics.js +65 -0
  191. package/dist/esm/hooks/usePresence.js +58 -0
  192. package/dist/esm/hooks/usePresentation.js +21 -0
  193. package/dist/esm/hooks/useSheetDrag.js +220 -0
  194. package/dist/esm/hooks/useSliderValues.js +8 -2
  195. package/dist/esm/hooks/useSortable.js +107 -5
  196. package/dist/esm/index.js +14 -2
  197. package/dist/esm/utils/position.js +10 -63
  198. package/dist/esm/utils/touchTarget.js +4 -1
  199. package/dist/hooks/useFloatingPosition.d.ts +8 -4
  200. package/dist/hooks/useFloatingPosition.d.ts.map +1 -1
  201. package/dist/hooks/useHaptics.d.ts +19 -0
  202. package/dist/hooks/useHaptics.d.ts.map +1 -0
  203. package/dist/hooks/useSheetDrag.d.ts +31 -0
  204. package/dist/hooks/useSheetDrag.d.ts.map +1 -0
  205. package/dist/hooks/useSliderValues.d.ts +6 -2
  206. package/dist/hooks/useSliderValues.d.ts.map +1 -1
  207. package/dist/hooks/useSortable.d.ts +11 -1
  208. package/dist/hooks/useSortable.d.ts.map +1 -1
  209. package/dist/index.css +1 -1
  210. package/dist/index.d.ts +11 -2
  211. package/dist/index.esm.css +1 -1
  212. package/dist/index.esm.js +10645 -3842
  213. package/dist/index.js +10657 -3845
  214. package/dist/rich-text/index.js +41 -11
  215. package/dist/types/blocks.d.ts +32 -2
  216. package/dist/types/blocks.d.ts.map +1 -1
  217. package/dist/types/charts.d.ts +3 -1
  218. package/dist/types/charts.d.ts.map +1 -1
  219. package/dist/types/index.d.ts +409 -26
  220. package/dist/types/index.d.ts.map +1 -1
  221. package/dist/types/rich-text.d.ts +5 -0
  222. package/dist/types/rich-text.d.ts.map +1 -1
  223. package/dist/utils/position.d.ts +0 -15
  224. package/dist/utils/position.d.ts.map +1 -1
  225. package/doc/README.md +16 -0
  226. package/mcp/catalog.snapshot.json +1540 -407
  227. package/package.json +7 -2
  228. package/dist/esm/hooks/useSwipeToClose.js +0 -66
  229. package/dist/hooks/useSwipeToClose.d.ts +0 -24
  230. package/dist/hooks/useSwipeToClose.d.ts.map +0 -1
@@ -81,6 +81,48 @@
81
81
  }
82
82
  }
83
83
  },
84
+ "ActionSheet": {
85
+ "group": "feedback",
86
+ "import": "@dreamtree-org/twreact-ui",
87
+ "forwardRef": true,
88
+ "props": {
89
+ "open": {
90
+ "type": "boolean",
91
+ "required": false
92
+ },
93
+ "isOpen": {
94
+ "type": "boolean",
95
+ "required": false
96
+ },
97
+ "onClose": {
98
+ "type": "(reason: ActionSheetCloseReason) => void",
99
+ "required": false
100
+ },
101
+ "title": {
102
+ "type": "ReactNode",
103
+ "required": false
104
+ },
105
+ "message": {
106
+ "type": "ReactNode",
107
+ "required": false
108
+ },
109
+ "actions": {
110
+ "type": "ActionSheetAction[]",
111
+ "required": false,
112
+ "default": "[]"
113
+ },
114
+ "cancelLabel": {
115
+ "type": "ReactNode",
116
+ "required": false,
117
+ "default": "\"Cancel\""
118
+ },
119
+ "dismissible": {
120
+ "type": "boolean",
121
+ "required": false,
122
+ "default": "true"
123
+ }
124
+ }
125
+ },
84
126
  "Alert": {
85
127
  "group": "feedback",
86
128
  "import": "@dreamtree-org/twreact-ui",
@@ -93,7 +135,8 @@
93
135
  "success",
94
136
  "warning",
95
137
  "error",
96
- "info"
138
+ "info",
139
+ "neutral"
97
140
  ],
98
141
  "default": "\"info\""
99
142
  },
@@ -105,6 +148,10 @@
105
148
  "type": "ReactNode",
106
149
  "required": false
107
150
  },
151
+ "actions": {
152
+ "type": "ReactNode",
153
+ "required": false
154
+ },
108
155
  "dismissible": {
109
156
  "type": "boolean",
110
157
  "required": false,
@@ -113,6 +160,11 @@
113
160
  "onDismiss": {
114
161
  "type": "() => void",
115
162
  "required": false
163
+ },
164
+ "dismissLabel": {
165
+ "type": "string",
166
+ "required": false,
167
+ "default": "\"Dismiss\""
116
168
  }
117
169
  }
118
170
  },
@@ -203,7 +255,11 @@
203
255
  "yAxisWidth": {
204
256
  "type": "number",
205
257
  "required": false,
206
- "default": "48"
258
+ "default": "48 (36 when the chart is narrower than 400 px)"
259
+ },
260
+ "aspectRatio": {
261
+ "type": "number",
262
+ "required": false
207
263
  },
208
264
  "curveType": {
209
265
  "type": "enum",
@@ -285,6 +341,34 @@
285
341
  }
286
342
  }
287
343
  },
344
+ "AvatarGroup": {
345
+ "group": "utility",
346
+ "import": "@dreamtree-org/twreact-ui",
347
+ "forwardRef": true,
348
+ "props": {
349
+ "children": {
350
+ "type": "ReactNode",
351
+ "required": false
352
+ },
353
+ "max": {
354
+ "type": "number",
355
+ "required": false
356
+ },
357
+ "size": {
358
+ "type": "enum",
359
+ "required": false,
360
+ "values": [
361
+ "xs",
362
+ "sm",
363
+ "md",
364
+ "lg",
365
+ "xl",
366
+ "2xl"
367
+ ],
368
+ "default": "\"md\""
369
+ }
370
+ }
371
+ },
288
372
  "Badge": {
289
373
  "group": "utility",
290
374
  "import": "@dreamtree-org/twreact-ui",
@@ -326,6 +410,19 @@
326
410
  "type": "boolean",
327
411
  "required": false,
328
412
  "default": "true"
413
+ },
414
+ "dot": {
415
+ "type": "boolean",
416
+ "required": false,
417
+ "default": "false"
418
+ },
419
+ "icon": {
420
+ "type": "ReactNode",
421
+ "required": false
422
+ },
423
+ "max": {
424
+ "type": "number",
425
+ "required": false
329
426
  }
330
427
  }
331
428
  },
@@ -416,7 +513,11 @@
416
513
  "yAxisWidth": {
417
514
  "type": "number",
418
515
  "required": false,
419
- "default": "48"
516
+ "default": "48 (36 when the chart is narrower than 400 px)"
517
+ },
518
+ "aspectRatio": {
519
+ "type": "number",
520
+ "required": false
420
521
  },
421
522
  "stacked": {
422
523
  "type": "boolean",
@@ -457,6 +558,11 @@
457
558
  "onHomeClick": {
458
559
  "type": "(item: BreadcrumbItem) => void",
459
560
  "required": false
561
+ },
562
+ "maxItems": {
563
+ "type": "number",
564
+ "required": false,
565
+ "default": "— (no collapse)"
460
566
  }
461
567
  }
462
568
  },
@@ -480,16 +586,8 @@
480
586
  "default": "\"primary\""
481
587
  },
482
588
  "size": {
483
- "type": "enum",
589
+ "type": "Size | ButtonIconSize",
484
590
  "required": false,
485
- "values": [
486
- "xs",
487
- "sm",
488
- "md",
489
- "lg",
490
- "xl",
491
- "2xl"
492
- ],
493
591
  "default": "\"md\""
494
592
  },
495
593
  "disabled": {
@@ -565,6 +663,11 @@
565
663
  "type": "boolean",
566
664
  "required": false,
567
665
  "default": "false"
666
+ },
667
+ "interactive": {
668
+ "type": "boolean",
669
+ "required": false,
670
+ "default": "false"
568
671
  }
569
672
  }
570
673
  },
@@ -669,9 +772,10 @@
669
772
  ],
670
773
  "default": "\"right\""
671
774
  },
672
- "borderColor": {
673
- "type": "string",
674
- "required": false
775
+ "color": {
776
+ "type": "ToggleColor",
777
+ "required": false,
778
+ "default": "\"primary\""
675
779
  },
676
780
  "iconClass": {
677
781
  "type": "string",
@@ -680,6 +784,11 @@
680
784
  "checkedClass": {
681
785
  "type": "string",
682
786
  "required": false
787
+ },
788
+ "haptics": {
789
+ "type": "boolean",
790
+ "required": false,
791
+ "default": "false"
683
792
  }
684
793
  }
685
794
  },
@@ -829,6 +938,16 @@
829
938
  "type": "boolean",
830
939
  "required": false,
831
940
  "default": "true"
941
+ },
942
+ "presentation": {
943
+ "type": "enum",
944
+ "required": false,
945
+ "values": [
946
+ "auto",
947
+ "popover",
948
+ "sheet"
949
+ ],
950
+ "default": "'popover'"
832
951
  }
833
952
  }
834
953
  },
@@ -908,6 +1027,21 @@
908
1027
  "type": "boolean",
909
1028
  "required": false,
910
1029
  "default": "true"
1030
+ },
1031
+ "presentation": {
1032
+ "type": "enum",
1033
+ "required": false,
1034
+ "values": [
1035
+ "auto",
1036
+ "popover",
1037
+ "sheet"
1038
+ ],
1039
+ "default": "'popover'"
1040
+ },
1041
+ "presets": {
1042
+ "type": "DateRangePreset[]",
1043
+ "required": false,
1044
+ "default": "string, Date"
911
1045
  }
912
1046
  }
913
1047
  },
@@ -961,6 +1095,16 @@
961
1095
  "onOpen": {
962
1096
  "type": "(context: { dialogRef: HTMLDivElement | null }) => void",
963
1097
  "required": false
1098
+ },
1099
+ "presentation": {
1100
+ "type": "enum",
1101
+ "required": false,
1102
+ "values": [
1103
+ "auto",
1104
+ "popover",
1105
+ "sheet"
1106
+ ],
1107
+ "default": "\"auto\""
964
1108
  }
965
1109
  }
966
1110
  },
@@ -1169,6 +1313,11 @@
1169
1313
  "type": "boolean",
1170
1314
  "required": false,
1171
1315
  "default": "false"
1316
+ },
1317
+ "capture": {
1318
+ "type": "boolean | 'user' | 'environment'",
1319
+ "required": false,
1320
+ "default": "\"user\""
1172
1321
  }
1173
1322
  }
1174
1323
  },
@@ -1181,6 +1330,26 @@
1181
1330
  "type": "FootNavItem[]",
1182
1331
  "required": true,
1183
1332
  "default": "[]"
1333
+ },
1334
+ "linkAs": {
1335
+ "type": "ElementType",
1336
+ "required": false,
1337
+ "default": "\"a\""
1338
+ },
1339
+ "hideOnScroll": {
1340
+ "type": "boolean",
1341
+ "required": false,
1342
+ "default": "false"
1343
+ },
1344
+ "badgeMax": {
1345
+ "type": "number",
1346
+ "required": false,
1347
+ "default": "99"
1348
+ },
1349
+ "aria-label": {
1350
+ "type": "string",
1351
+ "required": false,
1352
+ "default": "\"Primary\""
1184
1353
  }
1185
1354
  }
1186
1355
  },
@@ -1292,18 +1461,13 @@
1292
1461
  "required": false,
1293
1462
  "default": "false"
1294
1463
  },
1295
- "icon": {
1464
+ "leftIcon": {
1296
1465
  "type": "ReactNode",
1297
1466
  "required": false
1298
1467
  },
1299
- "iconPosition": {
1300
- "type": "enum",
1301
- "required": false,
1302
- "values": [
1303
- "left",
1304
- "right"
1305
- ],
1306
- "default": "\"right\""
1468
+ "rightIcon": {
1469
+ "type": "ReactNode",
1470
+ "required": false
1307
1471
  },
1308
1472
  "showCount": {
1309
1473
  "type": "boolean",
@@ -1334,6 +1498,21 @@
1334
1498
  "onChange": {
1335
1499
  "type": "(event: React.ChangeEvent<HTMLInputElement>) => void",
1336
1500
  "required": false
1501
+ },
1502
+ "size": {
1503
+ "type": "'sm' | 'md' | 'lg' | number",
1504
+ "required": false,
1505
+ "default": "\"md\""
1506
+ },
1507
+ "floatingLabel": {
1508
+ "type": "boolean",
1509
+ "required": false,
1510
+ "default": "false"
1511
+ },
1512
+ "otp": {
1513
+ "type": "boolean",
1514
+ "required": false,
1515
+ "default": "false"
1337
1516
  }
1338
1517
  }
1339
1518
  },
@@ -1424,7 +1603,11 @@
1424
1603
  "yAxisWidth": {
1425
1604
  "type": "number",
1426
1605
  "required": false,
1427
- "default": "48"
1606
+ "default": "48 (36 when the chart is narrower than 400 px)"
1607
+ },
1608
+ "aspectRatio": {
1609
+ "type": "number",
1610
+ "required": false
1428
1611
  },
1429
1612
  "curveType": {
1430
1613
  "type": "enum",
@@ -1476,8 +1659,7 @@
1476
1659
  },
1477
1660
  "secondaryColor": {
1478
1661
  "type": "string",
1479
- "required": false,
1480
- "default": "\"rgba(0,0,0,0.08)\""
1662
+ "required": false
1481
1663
  },
1482
1664
  "variant": {
1483
1665
  "type": "string",
@@ -1548,6 +1730,11 @@
1548
1730
  "type": "string",
1549
1731
  "required": false,
1550
1732
  "default": "\"lat, lng\""
1733
+ },
1734
+ "fullWidth": {
1735
+ "type": "boolean",
1736
+ "required": false,
1737
+ "default": "false"
1551
1738
  }
1552
1739
  }
1553
1740
  },
@@ -1612,6 +1799,15 @@
1612
1799
  "rightMenuContent": {
1613
1800
  "type": "| ReactNode | ((props: { notifications?: Notification[] }) => ReactNode)",
1614
1801
  "required": false
1802
+ },
1803
+ "sticky": {
1804
+ "type": "boolean",
1805
+ "required": false,
1806
+ "default": "false"
1807
+ },
1808
+ "largeTitle": {
1809
+ "type": "ReactNode",
1810
+ "required": false
1615
1811
  }
1616
1812
  }
1617
1813
  },
@@ -1713,6 +1909,16 @@
1713
1909
  "type": "boolean",
1714
1910
  "required": false,
1715
1911
  "default": "false"
1912
+ },
1913
+ "presentation": {
1914
+ "type": "enum",
1915
+ "required": false,
1916
+ "values": [
1917
+ "auto",
1918
+ "popover",
1919
+ "sheet"
1920
+ ],
1921
+ "default": "\"auto\""
1716
1922
  }
1717
1923
  }
1718
1924
  },
@@ -1841,18 +2047,17 @@
1841
2047
  "required": false,
1842
2048
  "default": "true"
1843
2049
  },
1844
- "color": {
1845
- "type": "string",
1846
- "required": false
1847
- },
1848
- "bgColor": {
1849
- "type": "string",
1850
- "required": false
1851
- },
1852
- "valueColor": {
1853
- "type": "string",
2050
+ "variant": {
2051
+ "type": "enum",
1854
2052
  "required": false,
1855
- "default": "auto"
2053
+ "values": [
2054
+ "primary",
2055
+ "secondary",
2056
+ "destructive",
2057
+ "success",
2058
+ "warning"
2059
+ ],
2060
+ "default": "\"secondary\""
1856
2061
  },
1857
2062
  "striped": {
1858
2063
  "type": "boolean",
@@ -1876,6 +2081,50 @@
1876
2081
  }
1877
2082
  }
1878
2083
  },
2084
+ "PullToRefresh": {
2085
+ "group": "utility",
2086
+ "import": "@dreamtree-org/twreact-ui",
2087
+ "forwardRef": true,
2088
+ "props": {
2089
+ "onRefresh": {
2090
+ "type": "() => Promise<unknown> | void",
2091
+ "required": false,
2092
+ "default": "void"
2093
+ },
2094
+ "threshold": {
2095
+ "type": "number",
2096
+ "required": false,
2097
+ "default": "64"
2098
+ },
2099
+ "maxPull": {
2100
+ "type": "number",
2101
+ "required": false,
2102
+ "default": "threshold * 2"
2103
+ },
2104
+ "disabled": {
2105
+ "type": "boolean",
2106
+ "required": false,
2107
+ "default": "false"
2108
+ },
2109
+ "refreshingLabel": {
2110
+ "type": "string",
2111
+ "required": false,
2112
+ "default": "\"Refreshing…\""
2113
+ },
2114
+ "scrollRef": {
2115
+ "type": "RefObject",
2116
+ "required": false
2117
+ },
2118
+ "contentClassName": {
2119
+ "type": "string",
2120
+ "required": false
2121
+ },
2122
+ "children": {
2123
+ "type": "ReactNode",
2124
+ "required": false
2125
+ }
2126
+ }
2127
+ },
1879
2128
  "Radio": {
1880
2129
  "group": "core",
1881
2130
  "import": "@dreamtree-org/twreact-ui",
@@ -1982,14 +2231,6 @@
1982
2231
  "required": false,
1983
2232
  "default": "<StarFilled />"
1984
2233
  },
1985
- "activeColor": {
1986
- "type": "string",
1987
- "required": false
1988
- },
1989
- "inactiveColor": {
1990
- "type": "string",
1991
- "required": false
1992
- },
1993
2234
  "size": {
1994
2235
  "type": "number",
1995
2236
  "required": false,
@@ -2088,6 +2329,11 @@
2088
2329
  "required": false,
2089
2330
  "default": "\"Formatting\""
2090
2331
  },
2332
+ "stickyToolbar": {
2333
+ "type": "boolean | number | string",
2334
+ "required": false,
2335
+ "default": "false"
2336
+ },
2091
2337
  "minHeight": {
2092
2338
  "type": "number | string",
2093
2339
  "required": false,
@@ -2189,6 +2435,148 @@
2189
2435
  }
2190
2436
  }
2191
2437
  },
2438
+ "SearchField": {
2439
+ "group": "core",
2440
+ "import": "@dreamtree-org/twreact-ui",
2441
+ "forwardRef": true,
2442
+ "props": {
2443
+ "value": {
2444
+ "type": "string",
2445
+ "required": false
2446
+ },
2447
+ "defaultValue": {
2448
+ "type": "string",
2449
+ "required": false,
2450
+ "default": "\"\""
2451
+ },
2452
+ "onValueChange": {
2453
+ "type": "(value: string) => void",
2454
+ "required": false
2455
+ },
2456
+ "onChange": {
2457
+ "type": "(event: React.ChangeEvent<HTMLInputElement> | { target: { value: string } }) => void",
2458
+ "required": false
2459
+ },
2460
+ "onSearch": {
2461
+ "type": "(value: string) => void",
2462
+ "required": false
2463
+ },
2464
+ "onClear": {
2465
+ "type": "() => void",
2466
+ "required": false
2467
+ },
2468
+ "onCancel": {
2469
+ "type": "() => void",
2470
+ "required": false
2471
+ },
2472
+ "showCancel": {
2473
+ "type": "boolean | 'auto'",
2474
+ "required": false,
2475
+ "default": "\"auto\""
2476
+ },
2477
+ "cancelLabel": {
2478
+ "type": "string",
2479
+ "required": false,
2480
+ "default": "\"Cancel\""
2481
+ },
2482
+ "clearLabel": {
2483
+ "type": "string",
2484
+ "required": false,
2485
+ "default": "\"Clear search\""
2486
+ },
2487
+ "results": {
2488
+ "type": "ReactNode",
2489
+ "required": false
2490
+ },
2491
+ "renderResults": {
2492
+ "type": "(ctx: SearchFieldResultsContext) => ReactNode",
2493
+ "required": false
2494
+ },
2495
+ "resultsOpen": {
2496
+ "type": "boolean",
2497
+ "required": false
2498
+ },
2499
+ "onResultsOpenChange": {
2500
+ "type": "(open: boolean) => void",
2501
+ "required": false
2502
+ },
2503
+ "resultsLabel": {
2504
+ "type": "string",
2505
+ "required": false,
2506
+ "default": "\"Search results\""
2507
+ },
2508
+ "presentation": {
2509
+ "type": "enum",
2510
+ "required": false,
2511
+ "values": [
2512
+ "auto",
2513
+ "popover",
2514
+ "sheet"
2515
+ ],
2516
+ "default": "\"popover\""
2517
+ },
2518
+ "inputClassName": {
2519
+ "type": "string",
2520
+ "required": false
2521
+ }
2522
+ }
2523
+ },
2524
+ "SegmentedControl": {
2525
+ "group": "core",
2526
+ "import": "@dreamtree-org/twreact-ui",
2527
+ "forwardRef": true,
2528
+ "props": {
2529
+ "options": {
2530
+ "type": "SegmentedControlOption[]",
2531
+ "required": true,
2532
+ "default": "[]"
2533
+ },
2534
+ "value": {
2535
+ "type": "SegmentedControlValue",
2536
+ "required": false
2537
+ },
2538
+ "defaultValue": {
2539
+ "type": "SegmentedControlValue",
2540
+ "required": false
2541
+ },
2542
+ "onChange": {
2543
+ "type": "(value: SegmentedControlValue) => void",
2544
+ "required": false
2545
+ },
2546
+ "size": {
2547
+ "type": "enum",
2548
+ "required": false,
2549
+ "values": [
2550
+ "sm",
2551
+ "md",
2552
+ "lg"
2553
+ ],
2554
+ "default": "\"md\""
2555
+ },
2556
+ "fullWidth": {
2557
+ "type": "boolean",
2558
+ "required": false,
2559
+ "default": "false"
2560
+ },
2561
+ "name": {
2562
+ "type": "string",
2563
+ "required": false
2564
+ },
2565
+ "disabled": {
2566
+ "type": "boolean",
2567
+ "required": false,
2568
+ "default": "false"
2569
+ },
2570
+ "aria-label": {
2571
+ "type": "string",
2572
+ "required": false
2573
+ },
2574
+ "aria-labelledby": {
2575
+ "type": "string",
2576
+ "required": false
2577
+ }
2578
+ }
2579
+ },
2192
2580
  "Select": {
2193
2581
  "group": "core",
2194
2582
  "import": "@dreamtree-org/twreact-ui",
@@ -2307,6 +2695,104 @@
2307
2695
  "lg"
2308
2696
  ],
2309
2697
  "default": "\"md\""
2698
+ },
2699
+ "presentation": {
2700
+ "type": "enum",
2701
+ "required": false,
2702
+ "values": [
2703
+ "auto",
2704
+ "popover",
2705
+ "sheet"
2706
+ ],
2707
+ "default": "\"auto\""
2708
+ }
2709
+ }
2710
+ },
2711
+ "Sheet": {
2712
+ "group": "feedback",
2713
+ "import": "@dreamtree-org/twreact-ui",
2714
+ "forwardRef": true,
2715
+ "props": {
2716
+ "open": {
2717
+ "type": "boolean",
2718
+ "required": false
2719
+ },
2720
+ "isOpen": {
2721
+ "type": "boolean",
2722
+ "required": false
2723
+ },
2724
+ "onClose": {
2725
+ "type": "(reason: SheetCloseReason) => void",
2726
+ "required": false
2727
+ },
2728
+ "placement": {
2729
+ "type": "enum",
2730
+ "required": false,
2731
+ "values": [
2732
+ "top",
2733
+ "bottom",
2734
+ "left",
2735
+ "right"
2736
+ ],
2737
+ "default": "\"bottom\""
2738
+ },
2739
+ "snapPoints": {
2740
+ "type": "number[]",
2741
+ "required": false
2742
+ },
2743
+ "activeSnap": {
2744
+ "type": "number",
2745
+ "required": false
2746
+ },
2747
+ "defaultSnap": {
2748
+ "type": "number",
2749
+ "required": false,
2750
+ "default": "0"
2751
+ },
2752
+ "onSnapChange": {
2753
+ "type": "(index: number) => void",
2754
+ "required": false
2755
+ },
2756
+ "haptics": {
2757
+ "type": "boolean",
2758
+ "required": false,
2759
+ "default": "false"
2760
+ },
2761
+ "dismissible": {
2762
+ "type": "boolean",
2763
+ "required": false,
2764
+ "default": "true"
2765
+ },
2766
+ "handle": {
2767
+ "type": "boolean",
2768
+ "required": false,
2769
+ "default": "true for placement=\"bottom\", else false"
2770
+ },
2771
+ "scaleBackground": {
2772
+ "type": "boolean",
2773
+ "required": false,
2774
+ "default": "false"
2775
+ },
2776
+ "title": {
2777
+ "type": "ReactNode",
2778
+ "required": false
2779
+ },
2780
+ "description": {
2781
+ "type": "ReactNode",
2782
+ "required": false
2783
+ },
2784
+ "showCloseButton": {
2785
+ "type": "boolean",
2786
+ "required": false,
2787
+ "default": "true"
2788
+ },
2789
+ "initialFocus": {
2790
+ "type": "RefObject",
2791
+ "required": false
2792
+ },
2793
+ "children": {
2794
+ "type": "ReactNode",
2795
+ "required": false
2310
2796
  }
2311
2797
  }
2312
2798
  },
@@ -2398,6 +2884,11 @@
2398
2884
  "containerClassName": {
2399
2885
  "type": "string",
2400
2886
  "required": false
2887
+ },
2888
+ "swipeable": {
2889
+ "type": "boolean",
2890
+ "required": false,
2891
+ "default": "true"
2401
2892
  }
2402
2893
  }
2403
2894
  },
@@ -2513,6 +3004,11 @@
2513
3004
  "required": false,
2514
3005
  "default": "false"
2515
3006
  },
3007
+ "showBubble": {
3008
+ "type": "boolean",
3009
+ "required": false,
3010
+ "default": "true"
3011
+ },
2516
3012
  "formatValue": {
2517
3013
  "type": "(value: number) => string",
2518
3014
  "required": false,
@@ -2749,18 +3245,98 @@
2749
3245
  "required": false
2750
3246
  },
2751
3247
  "orientation": {
2752
- "type": "enum",
3248
+ "type": "Orientation | 'auto'",
2753
3249
  "required": false,
2754
- "values": [
2755
- "horizontal",
2756
- "vertical"
2757
- ],
2758
3250
  "default": "\"vertical\""
2759
3251
  },
2760
3252
  "variant": {
3253
+ "type": "'default' | 'dots' | (string & {})",
3254
+ "required": false,
3255
+ "default": "\"dots\""
3256
+ }
3257
+ }
3258
+ },
3259
+ "SwipeableListItem": {
3260
+ "group": "core",
3261
+ "import": "@dreamtree-org/twreact-ui",
3262
+ "forwardRef": true,
3263
+ "props": {
3264
+ "as": {
3265
+ "type": "React.ElementType",
3266
+ "required": false,
3267
+ "default": "\"div\""
3268
+ },
3269
+ "children": {
3270
+ "type": "ReactNode",
3271
+ "required": false
3272
+ },
3273
+ "leadingActions": {
3274
+ "type": "SwipeAction[]",
3275
+ "required": false,
3276
+ "default": "[]"
3277
+ },
3278
+ "trailingActions": {
3279
+ "type": "SwipeAction[]",
3280
+ "required": false,
3281
+ "default": "[]"
3282
+ },
3283
+ "fullSwipe": {
3284
+ "type": "boolean | { leading?: boolean; trailing?: boolean }",
3285
+ "required": false,
3286
+ "default": "{ leading?, trailing? }"
3287
+ },
3288
+ "fullSwipeThreshold": {
3289
+ "type": "number",
3290
+ "required": false,
3291
+ "default": "0.6"
3292
+ },
3293
+ "actionWidth": {
3294
+ "type": "number",
3295
+ "required": false,
3296
+ "default": "80"
3297
+ },
3298
+ "open": {
3299
+ "type": "SwipeSide | null",
3300
+ "required": false,
3301
+ "default": "'trailing'"
3302
+ },
3303
+ "defaultOpen": {
3304
+ "type": "SwipeSide | null",
3305
+ "required": false,
3306
+ "default": "'trailing'"
3307
+ },
3308
+ "onOpenChange": {
3309
+ "type": "(side: SwipeSide | null) => void",
3310
+ "required": false
3311
+ },
3312
+ "disabled": {
3313
+ "type": "boolean",
3314
+ "required": false,
3315
+ "default": "Not selectable"
3316
+ },
3317
+ "moreActions": {
3318
+ "type": "'focus' | 'always' | false",
3319
+ "required": false,
3320
+ "default": "'always'"
3321
+ },
3322
+ "moreActionsLabel": {
2761
3323
  "type": "string",
2762
3324
  "required": false,
2763
- "default": "\"default\""
3325
+ "default": "\"More actions\""
3326
+ },
3327
+ "menuPresentation": {
3328
+ "type": "enum",
3329
+ "required": false,
3330
+ "values": [
3331
+ "auto",
3332
+ "popover",
3333
+ "sheet"
3334
+ ],
3335
+ "default": "'popover'"
3336
+ },
3337
+ "contentClassName": {
3338
+ "type": "string",
3339
+ "required": false
2764
3340
  }
2765
3341
  }
2766
3342
  },
@@ -2804,6 +3380,11 @@
2804
3380
  "type": "string",
2805
3381
  "required": false
2806
3382
  },
3383
+ "color": {
3384
+ "type": "ToggleColor",
3385
+ "required": false,
3386
+ "default": "\"primary\""
3387
+ },
2807
3388
  "trackClass": {
2808
3389
  "type": "string",
2809
3390
  "required": false
@@ -2831,6 +3412,11 @@
2831
3412
  "ariaLabel": {
2832
3413
  "type": "string",
2833
3414
  "required": false
3415
+ },
3416
+ "haptics": {
3417
+ "type": "boolean",
3418
+ "required": false,
3419
+ "default": "false"
2834
3420
  }
2835
3421
  }
2836
3422
  },
@@ -2987,6 +3573,16 @@
2987
3573
  "required": false,
2988
3574
  "default": "768"
2989
3575
  },
3576
+ "actionMenuPresentation": {
3577
+ "type": "enum",
3578
+ "required": false,
3579
+ "values": [
3580
+ "auto",
3581
+ "popover",
3582
+ "sheet"
3583
+ ],
3584
+ "default": "\"auto\""
3585
+ },
2990
3586
  "showToolbar": {
2991
3587
  "type": "boolean",
2992
3588
  "required": false,
@@ -3052,6 +3648,31 @@
3052
3648
  "onRowDelete": {
3053
3649
  "type": "(rowKey: string) => void",
3054
3650
  "required": false
3651
+ },
3652
+ "defaultMobileView": {
3653
+ "type": "boolean",
3654
+ "required": false,
3655
+ "default": "false"
3656
+ },
3657
+ "mobileFiltersPresentation": {
3658
+ "type": "enum",
3659
+ "required": false,
3660
+ "values": [
3661
+ "auto",
3662
+ "sheet",
3663
+ "inline"
3664
+ ],
3665
+ "default": "\"auto\""
3666
+ },
3667
+ "swipeActions": {
3668
+ "type": "(row: T, index: number) => TableSwipeActions | null | undefined",
3669
+ "required": false,
3670
+ "default": "null"
3671
+ },
3672
+ "stickyHeader": {
3673
+ "type": "boolean | string | number",
3674
+ "required": false,
3675
+ "default": "string"
3055
3676
  }
3056
3677
  }
3057
3678
  },
@@ -3105,6 +3726,7 @@
3105
3726
  "values": [
3106
3727
  "line",
3107
3728
  "pills",
3729
+ "segmented",
3108
3730
  "unstyled"
3109
3731
  ],
3110
3732
  "default": "\"pills\""
@@ -3113,6 +3735,11 @@
3113
3735
  "type": "boolean",
3114
3736
  "required": false,
3115
3737
  "default": "true"
3738
+ },
3739
+ "swipeable": {
3740
+ "type": "boolean",
3741
+ "required": false,
3742
+ "default": "false"
3116
3743
  }
3117
3744
  }
3118
3745
  },
@@ -3206,6 +3833,16 @@
3206
3833
  "maxRows": {
3207
3834
  "type": "number",
3208
3835
  "required": false
3836
+ },
3837
+ "size": {
3838
+ "type": "enum",
3839
+ "required": false,
3840
+ "values": [
3841
+ "sm",
3842
+ "md",
3843
+ "lg"
3844
+ ],
3845
+ "default": "\"md\""
3209
3846
  }
3210
3847
  }
3211
3848
  },
@@ -3223,6 +3860,11 @@
3223
3860
  "type": "ReactElement",
3224
3861
  "required": false
3225
3862
  },
3863
+ "wrapperClassName": {
3864
+ "type": "string",
3865
+ "required": false,
3866
+ "default": "\"\""
3867
+ },
3226
3868
  "menuClass": {
3227
3869
  "type": "string",
3228
3870
  "required": false,
@@ -3242,13 +3884,28 @@
3242
3884
  "type": "string",
3243
3885
  "required": false,
3244
3886
  "default": "\"More options\""
3887
+ },
3888
+ "presentation": {
3889
+ "type": "enum",
3890
+ "required": false,
3891
+ "values": [
3892
+ "auto",
3893
+ "popover",
3894
+ "sheet"
3895
+ ],
3896
+ "default": "\"auto\""
3897
+ },
3898
+ "cancelLabel": {
3899
+ "type": "ReactNode",
3900
+ "required": false,
3901
+ "default": "\"Cancel\""
3245
3902
  }
3246
3903
  }
3247
3904
  },
3248
3905
  "Toast": {
3249
3906
  "group": "feedback",
3250
3907
  "import": "@dreamtree-org/twreact-ui",
3251
- "forwardRef": true,
3908
+ "forwardRef": false,
3252
3909
  "props": {
3253
3910
  "id": {
3254
3911
  "type": "string",
@@ -3294,6 +3951,31 @@
3294
3951
  "bottom-center"
3295
3952
  ],
3296
3953
  "default": "\"top-right\""
3954
+ },
3955
+ "paused": {
3956
+ "type": "boolean",
3957
+ "required": false,
3958
+ "default": "false"
3959
+ },
3960
+ "swipeToDismiss": {
3961
+ "type": "boolean",
3962
+ "required": false,
3963
+ "default": "true"
3964
+ },
3965
+ "mobilePosition": {
3966
+ "type": "ToastMobilePosition | false",
3967
+ "required": false,
3968
+ "default": "\"bottom-center\""
3969
+ },
3970
+ "mobileOffset": {
3971
+ "type": "number | string",
3972
+ "required": false,
3973
+ "default": "\"5rem\""
3974
+ },
3975
+ "closeLabel": {
3976
+ "type": "string",
3977
+ "required": false,
3978
+ "default": "\"Close notification\""
3297
3979
  }
3298
3980
  }
3299
3981
  },
@@ -3421,6 +4103,16 @@
3421
4103
  "type": "number",
3422
4104
  "required": false,
3423
4105
  "default": "6"
4106
+ },
4107
+ "presentation": {
4108
+ "type": "enum",
4109
+ "required": false,
4110
+ "values": [
4111
+ "auto",
4112
+ "popover",
4113
+ "sheet"
4114
+ ],
4115
+ "default": "\"auto\""
3424
4116
  }
3425
4117
  }
3426
4118
  }