@cube-dev/ui-kit 0.182.0 → 0.184.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 (1160) hide show
  1. package/dist/CHANGELOG.md +40 -0
  2. package/dist/_internal/hooks/use-debounced-value.js +48 -31
  3. package/dist/_internal/hooks/use-debounced-value.js.map +1 -1
  4. package/dist/_internal/hooks/use-deprecation-warning.js +22 -7
  5. package/dist/_internal/hooks/use-deprecation-warning.js.map +1 -1
  6. package/dist/_internal/hooks/use-event.js +1 -1
  7. package/dist/_internal/hooks/use-event.js.map +1 -1
  8. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  9. package/dist/_internal/hooks/use-is-first-render.js.map +1 -1
  10. package/dist/_internal/hooks/use-sync-ref.js +12 -4
  11. package/dist/_internal/hooks/use-sync-ref.js.map +1 -1
  12. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  13. package/dist/_internal/hooks/use-timer/timer.js.map +1 -1
  14. package/dist/_internal/hooks/use-timer/use-timer.js +90 -20
  15. package/dist/_internal/hooks/use-timer/use-timer.js.map +1 -1
  16. package/dist/_internal/hooks/use-warn.js +4 -4
  17. package/dist/_internal/hooks/use-warn.js.map +1 -1
  18. package/dist/components/Block.js +29 -7
  19. package/dist/components/Block.js.map +1 -1
  20. package/dist/components/CollectionItem.js +1 -1
  21. package/dist/components/CollectionItem.js.map +1 -1
  22. package/dist/components/GlobalStyles.js +33 -9
  23. package/dist/components/GlobalStyles.js.map +1 -1
  24. package/dist/components/GridProvider.js +4 -4
  25. package/dist/components/GridProvider.js.map +1 -1
  26. package/dist/components/HiddenInput.js +1 -1
  27. package/dist/components/HiddenInput.js.map +1 -1
  28. package/dist/components/Root.js +137 -42
  29. package/dist/components/Root.js.map +1 -1
  30. package/dist/components/actions/Action/Action.js +20 -8
  31. package/dist/components/actions/Action/Action.js.map +1 -1
  32. package/dist/components/actions/Banner/Banner.js +91 -22
  33. package/dist/components/actions/Banner/Banner.js.map +1 -1
  34. package/dist/components/actions/Button/Button.js +5 -5
  35. package/dist/components/actions/Button/Button.js.map +1 -1
  36. package/dist/components/actions/ButtonGroup/ButtonGroup.js +15 -5
  37. package/dist/components/actions/ButtonGroup/ButtonGroup.js.map +1 -1
  38. package/dist/components/actions/ButtonSplit/ButtonSplit.js +2 -1
  39. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  40. package/dist/components/actions/ButtonSplit/context.js +1 -1
  41. package/dist/components/actions/ButtonSplit/context.js.map +1 -1
  42. package/dist/components/actions/CommandMenu/CommandMenu.js +73 -80
  43. package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
  44. package/dist/components/actions/CommandMenu/styled.js +1 -1
  45. package/dist/components/actions/CommandMenu/styled.js.map +1 -1
  46. package/dist/components/actions/ItemAction/ItemAction.js +205 -68
  47. package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
  48. package/dist/components/actions/ItemActionContext.js +26 -7
  49. package/dist/components/actions/ItemActionContext.js.map +1 -1
  50. package/dist/components/actions/ItemActionsWrapper.js +215 -84
  51. package/dist/components/actions/ItemActionsWrapper.js.map +1 -1
  52. package/dist/components/actions/ItemButton/ItemButton.js +2 -2
  53. package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
  54. package/dist/components/actions/Link/Link.js +16 -7
  55. package/dist/components/actions/Link/Link.js.map +1 -1
  56. package/dist/components/actions/Menu/Menu.js +127 -72
  57. package/dist/components/actions/Menu/Menu.js.map +1 -1
  58. package/dist/components/actions/Menu/MenuItem.js +120 -43
  59. package/dist/components/actions/Menu/MenuItem.js.map +1 -1
  60. package/dist/components/actions/Menu/MenuSection.js +79 -31
  61. package/dist/components/actions/Menu/MenuSection.js.map +1 -1
  62. package/dist/components/actions/Menu/MenuTrigger.js +316 -112
  63. package/dist/components/actions/Menu/MenuTrigger.js.map +1 -1
  64. package/dist/components/actions/Menu/SubMenuTrigger.js +6 -12
  65. package/dist/components/actions/Menu/SubMenuTrigger.js.map +1 -1
  66. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  67. package/dist/components/actions/Menu/SubmenuTriggerContext.js.map +1 -1
  68. package/dist/components/actions/Menu/context.js +1 -1
  69. package/dist/components/actions/Menu/context.js.map +1 -1
  70. package/dist/components/actions/Menu/styled.js +1 -1
  71. package/dist/components/actions/Menu/styled.js.map +1 -1
  72. package/dist/components/actions/actions-run.js +1 -1
  73. package/dist/components/actions/actions-run.js.map +1 -1
  74. package/dist/components/actions/index.js +1 -1
  75. package/dist/components/actions/index.js.map +1 -1
  76. package/dist/components/actions/use-action.js +3 -3
  77. package/dist/components/actions/use-action.js.map +1 -1
  78. package/dist/components/actions/use-anchored-menu.js +6 -6
  79. package/dist/components/actions/use-anchored-menu.js.map +1 -1
  80. package/dist/components/actions/use-context-menu.js +12 -12
  81. package/dist/components/actions/use-context-menu.js.map +1 -1
  82. package/dist/components/content/ActiveZone/ActiveZone.js +84 -18
  83. package/dist/components/content/ActiveZone/ActiveZone.js.map +1 -1
  84. package/dist/components/content/Alert/Alert.js +18 -7
  85. package/dist/components/content/Alert/Alert.js.map +1 -1
  86. package/dist/components/content/Alert/use-alert.js +53 -15
  87. package/dist/components/content/Alert/use-alert.js.map +1 -1
  88. package/dist/components/content/Avatar/Avatar.js +51 -13
  89. package/dist/components/content/Avatar/Avatar.js.map +1 -1
  90. package/dist/components/content/Badge/Badge.js +43 -10
  91. package/dist/components/content/Badge/Badge.js.map +1 -1
  92. package/dist/components/content/Card/Card.js +29 -7
  93. package/dist/components/content/Card/Card.js.map +1 -1
  94. package/dist/components/content/Content.js +30 -7
  95. package/dist/components/content/Content.js.map +1 -1
  96. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +2 -2
  97. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js.map +1 -1
  98. package/dist/components/content/CopySnippet/CopySnippet.js +220 -60
  99. package/dist/components/content/CopySnippet/CopySnippet.js.map +1 -1
  100. package/dist/components/content/Disclosure/Disclosure.js +453 -194
  101. package/dist/components/content/Disclosure/Disclosure.js.map +1 -1
  102. package/dist/components/content/Divider.js +52 -14
  103. package/dist/components/content/Divider.js.map +1 -1
  104. package/dist/components/content/Footer.js +29 -7
  105. package/dist/components/content/Footer.js.map +1 -1
  106. package/dist/components/content/Header.js +29 -7
  107. package/dist/components/content/Header.js.map +1 -1
  108. package/dist/components/content/HotKeys/HotKeys.js +55 -27
  109. package/dist/components/content/HotKeys/HotKeys.js.map +1 -1
  110. package/dist/components/content/InfoBadge/InfoBadge.js +8 -8
  111. package/dist/components/content/InfoBadge/InfoBadge.js.map +1 -1
  112. package/dist/components/content/InlineInput/InlineInput.js +429 -188
  113. package/dist/components/content/InlineInput/InlineInput.js.map +1 -1
  114. package/dist/components/content/Item/Item.d.ts +27 -2
  115. package/dist/components/content/Item/Item.js +418 -152
  116. package/dist/components/content/Item/Item.js.map +1 -1
  117. package/dist/components/content/ItemBadge/ItemBadge.js +173 -59
  118. package/dist/components/content/ItemBadge/ItemBadge.js.map +1 -1
  119. package/dist/components/content/ItemCard/ItemCard.js +34 -9
  120. package/dist/components/content/ItemCard/ItemCard.js.map +1 -1
  121. package/dist/components/content/Layout/GridLayout.js +38 -10
  122. package/dist/components/content/Layout/GridLayout.js.map +1 -1
  123. package/dist/components/content/Layout/Layout.js +30 -13
  124. package/dist/components/content/Layout/Layout.js.map +1 -1
  125. package/dist/components/content/Layout/LayoutBlock.js +33 -8
  126. package/dist/components/content/Layout/LayoutBlock.js.map +1 -1
  127. package/dist/components/content/Layout/LayoutCenter.js +48 -11
  128. package/dist/components/content/Layout/LayoutCenter.js.map +1 -1
  129. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  130. package/dist/components/content/Layout/LayoutContainer.js.map +1 -1
  131. package/dist/components/content/Layout/LayoutContent.js +1 -1
  132. package/dist/components/content/Layout/LayoutContent.js.map +1 -1
  133. package/dist/components/content/Layout/LayoutContext.js +30 -21
  134. package/dist/components/content/Layout/LayoutContext.js.map +1 -1
  135. package/dist/components/content/Layout/LayoutFlex.js +33 -8
  136. package/dist/components/content/Layout/LayoutFlex.js.map +1 -1
  137. package/dist/components/content/Layout/LayoutFooter.js +53 -14
  138. package/dist/components/content/Layout/LayoutFooter.js.map +1 -1
  139. package/dist/components/content/Layout/LayoutGrid.js +48 -11
  140. package/dist/components/content/Layout/LayoutGrid.js.map +1 -1
  141. package/dist/components/content/Layout/LayoutHeader.js +216 -57
  142. package/dist/components/content/Layout/LayoutHeader.js.map +1 -1
  143. package/dist/components/content/Layout/LayoutPane.js +60 -14
  144. package/dist/components/content/Layout/LayoutPane.js.map +1 -1
  145. package/dist/components/content/Layout/LayoutPanel.js +59 -17
  146. package/dist/components/content/Layout/LayoutPanel.js.map +1 -1
  147. package/dist/components/content/Layout/LayoutPanelHeader.js +89 -27
  148. package/dist/components/content/Layout/LayoutPanelHeader.js.map +1 -1
  149. package/dist/components/content/Layout/LayoutToolbar.js +33 -8
  150. package/dist/components/content/Layout/LayoutToolbar.js.map +1 -1
  151. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +206 -119
  152. package/dist/components/content/Layout/hooks/useTinyScrollbar.js.map +1 -1
  153. package/dist/components/content/Layout/index.js +1 -1
  154. package/dist/components/content/Layout/index.js.map +1 -1
  155. package/dist/components/content/Layout/utils.js +1 -1
  156. package/dist/components/content/Layout/utils.js.map +1 -1
  157. package/dist/components/content/Paragraph.js +25 -9
  158. package/dist/components/content/Paragraph.js.map +1 -1
  159. package/dist/components/content/Placeholder/Placeholder.js +52 -14
  160. package/dist/components/content/Placeholder/Placeholder.js.map +1 -1
  161. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  162. package/dist/components/content/PrismCode/PrismCode.js.map +1 -1
  163. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  164. package/dist/components/content/PrismCode/prismSetup.js.map +1 -1
  165. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +52 -17
  166. package/dist/components/content/PrismDiffCode/PrismDiffCode.js.map +1 -1
  167. package/dist/components/content/Result/Result.js +117 -38
  168. package/dist/components/content/Result/Result.js.map +1 -1
  169. package/dist/components/content/Skeleton/Skeleton.js +26 -17
  170. package/dist/components/content/Skeleton/Skeleton.js.map +1 -1
  171. package/dist/components/content/Tag/Tag.d.ts +6 -1
  172. package/dist/components/content/Tag/Tag.js +68 -13
  173. package/dist/components/content/Tag/Tag.js.map +1 -1
  174. package/dist/components/content/Text.js +61 -14
  175. package/dist/components/content/Text.js.map +1 -1
  176. package/dist/components/content/TextItem/TextItem.js +37 -16
  177. package/dist/components/content/TextItem/TextItem.js.map +1 -1
  178. package/dist/components/content/Title.js +98 -23
  179. package/dist/components/content/Title.js.map +1 -1
  180. package/dist/components/content/Tree/Tree.js +32 -32
  181. package/dist/components/content/Tree/Tree.js.map +1 -1
  182. package/dist/components/content/Tree/TreeNode.js +10 -10
  183. package/dist/components/content/Tree/TreeNode.js.map +1 -1
  184. package/dist/components/content/Tree/styled.js +1 -1
  185. package/dist/components/content/Tree/styled.js.map +1 -1
  186. package/dist/components/content/Tree/tree-index.js +1 -1
  187. package/dist/components/content/Tree/tree-index.js.map +1 -1
  188. package/dist/components/content/Tree/use-checkbox-tree.js +123 -89
  189. package/dist/components/content/Tree/use-checkbox-tree.js.map +1 -1
  190. package/dist/components/content/Tree/use-load-data.js +52 -21
  191. package/dist/components/content/Tree/use-load-data.js.map +1 -1
  192. package/dist/components/content/highlightText.js +1 -1
  193. package/dist/components/content/highlightText.js.map +1 -1
  194. package/dist/components/content/use-auto-tooltip.d.ts +1 -1
  195. package/dist/components/content/use-auto-tooltip.js +231 -125
  196. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  197. package/dist/components/data/DataTable/DataTable.js +31 -31
  198. package/dist/components/data/DataTable/DataTable.js.map +1 -1
  199. package/dist/components/data/ItemTable/ItemTable.js +41 -41
  200. package/dist/components/data/ItemTable/ItemTable.js.map +1 -1
  201. package/dist/components/data/ItemTable/ItemTableBulkBar.js +11 -11
  202. package/dist/components/data/ItemTable/ItemTableBulkBar.js.map +1 -1
  203. package/dist/components/data/ItemTable/ItemTableDragPreview.js +41 -4
  204. package/dist/components/data/ItemTable/ItemTableDragPreview.js.map +1 -1
  205. package/dist/components/data/ItemTable/ItemTableFooter.js +67 -30
  206. package/dist/components/data/ItemTable/ItemTableFooter.js.map +1 -1
  207. package/dist/components/data/ItemTable/ItemTableToolbar.js +95 -28
  208. package/dist/components/data/ItemTable/ItemTableToolbar.js.map +1 -1
  209. package/dist/components/data/TableBase/ColumnResizer.js +90 -41
  210. package/dist/components/data/TableBase/ColumnResizer.js.map +1 -1
  211. package/dist/components/data/TableBase/RowCollection.js +1 -1
  212. package/dist/components/data/TableBase/RowCollection.js.map +1 -1
  213. package/dist/components/data/TableBase/TableHeaderCell.js +154 -64
  214. package/dist/components/data/TableBase/TableHeaderCell.js.map +1 -1
  215. package/dist/components/data/TableBase/TableRow.js +211 -69
  216. package/dist/components/data/TableBase/TableRow.js.map +1 -1
  217. package/dist/components/data/TableBase/TableView.js +119 -80
  218. package/dist/components/data/TableBase/TableView.js.map +1 -1
  219. package/dist/components/data/TableBase/column-menu.js +1 -1
  220. package/dist/components/data/TableBase/column-menu.js.map +1 -1
  221. package/dist/components/data/TableBase/column-tint.js +1 -1
  222. package/dist/components/data/TableBase/column-tint.js.map +1 -1
  223. package/dist/components/data/TableBase/row-menu.js +1 -1
  224. package/dist/components/data/TableBase/row-menu.js.map +1 -1
  225. package/dist/components/data/TableBase/styled.d.ts +1 -0
  226. package/dist/components/data/TableBase/styled.js +1 -1
  227. package/dist/components/data/TableBase/styled.js.map +1 -1
  228. package/dist/components/data/TableBase/table-tree.js +1 -1
  229. package/dist/components/data/TableBase/table-tree.js.map +1 -1
  230. package/dist/components/data/TableBase/types.js +1 -1
  231. package/dist/components/data/TableBase/types.js.map +1 -1
  232. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  233. package/dist/components/data/TableBase/use-cell-selection.js.map +1 -1
  234. package/dist/components/data/TableBase/use-column-order.js +56 -12
  235. package/dist/components/data/TableBase/use-column-order.js.map +1 -1
  236. package/dist/components/data/TableBase/use-container-width.js +24 -10
  237. package/dist/components/data/TableBase/use-container-width.js.map +1 -1
  238. package/dist/components/data/TableBase/use-row-move-animation.js +68 -49
  239. package/dist/components/data/TableBase/use-row-move-animation.js.map +1 -1
  240. package/dist/components/data/TableBase/use-scrollability.js +32 -18
  241. package/dist/components/data/TableBase/use-scrollability.js.map +1 -1
  242. package/dist/components/data/TableBase/use-table-columns.js +130 -60
  243. package/dist/components/data/TableBase/use-table-columns.js.map +1 -1
  244. package/dist/components/data/TableBase/use-table-search.js +1 -1
  245. package/dist/components/data/TableBase/use-table-search.js.map +1 -1
  246. package/dist/components/data/TableBase/use-table-selection.js +39 -39
  247. package/dist/components/data/TableBase/use-table-selection.js.map +1 -1
  248. package/dist/components/data/TableBase/use-table-sort.js +132 -68
  249. package/dist/components/data/TableBase/use-table-sort.js.map +1 -1
  250. package/dist/components/data/TableBase/use-table-sorts.js +168 -101
  251. package/dist/components/data/TableBase/use-table-sorts.js.map +1 -1
  252. package/dist/components/data/TableBase/use-table-storage.js +2 -2
  253. package/dist/components/data/TableBase/use-table-storage.js.map +1 -1
  254. package/dist/components/data/TableBase/use-table-tree-state.js +181 -86
  255. package/dist/components/data/TableBase/use-table-tree-state.js.map +1 -1
  256. package/dist/components/fields/Checkbox/Checkbox.d.ts +8 -0
  257. package/dist/components/fields/Checkbox/Checkbox.js +58 -39
  258. package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
  259. package/dist/components/fields/Checkbox/CheckboxGroup.js +101 -33
  260. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  261. package/dist/components/fields/Checkbox/context.js +1 -1
  262. package/dist/components/fields/Checkbox/context.js.map +1 -1
  263. package/dist/components/fields/ColorInput/ColorInput.d.ts +17 -1
  264. package/dist/components/fields/ColorInput/ColorInput.js +334 -152
  265. package/dist/components/fields/ColorInput/ColorInput.js.map +1 -1
  266. package/dist/components/fields/ColorPicker/ColorPicker.d.ts +18 -2
  267. package/dist/components/fields/ColorPicker/ColorPicker.js +18 -17
  268. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  269. package/dist/components/fields/ColorSwatch/ColorSwatch.js +52 -13
  270. package/dist/components/fields/ColorSwatch/ColorSwatch.js.map +1 -1
  271. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +90 -28
  272. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -1
  273. package/dist/components/fields/ComboBox/ComboBox.js +216 -134
  274. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  275. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  276. package/dist/components/fields/CommandTextArea/CommandTextArea.js.map +1 -1
  277. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  278. package/dist/components/fields/CommandTextArea/caretPosition.js.map +1 -1
  279. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +88 -49
  280. package/dist/components/fields/CommandTextArea/useCaretAnchor.js.map +1 -1
  281. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  282. package/dist/components/fields/DatePicker/DateInput.js.map +1 -1
  283. package/dist/components/fields/DatePicker/DateInputBase.js +129 -34
  284. package/dist/components/fields/DatePicker/DateInputBase.js.map +1 -1
  285. package/dist/components/fields/DatePicker/DatePicker.d.ts +17 -1
  286. package/dist/components/fields/DatePicker/DatePicker.js +200 -71
  287. package/dist/components/fields/DatePicker/DatePicker.js.map +1 -1
  288. package/dist/components/fields/DatePicker/DatePickerButton.js +39 -8
  289. package/dist/components/fields/DatePicker/DatePickerButton.js.map +1 -1
  290. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  291. package/dist/components/fields/DatePicker/DatePickerElement.js.map +1 -1
  292. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  293. package/dist/components/fields/DatePicker/DatePickerInput.js.map +1 -1
  294. package/dist/components/fields/DatePicker/DatePickerSegment.js +109 -29
  295. package/dist/components/fields/DatePicker/DatePickerSegment.js.map +1 -1
  296. package/dist/components/fields/DatePicker/DateRangePicker.d.ts +17 -2
  297. package/dist/components/fields/DatePicker/DateRangePicker.js +230 -90
  298. package/dist/components/fields/DatePicker/DateRangePicker.js.map +1 -1
  299. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.d.ts +17 -2
  300. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +481 -180
  301. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js.map +1 -1
  302. package/dist/components/fields/DatePicker/MonthPicker.js +15 -6
  303. package/dist/components/fields/DatePicker/MonthPicker.js.map +1 -1
  304. package/dist/components/fields/DatePicker/PeriodPicker.d.ts +17 -1
  305. package/dist/components/fields/DatePicker/PeriodPicker.js +294 -93
  306. package/dist/components/fields/DatePicker/PeriodPicker.js.map +1 -1
  307. package/dist/components/fields/DatePicker/QuarterPicker.js +15 -6
  308. package/dist/components/fields/DatePicker/QuarterPicker.js.map +1 -1
  309. package/dist/components/fields/DatePicker/TimeInput.js +15 -7
  310. package/dist/components/fields/DatePicker/TimeInput.js.map +1 -1
  311. package/dist/components/fields/DatePicker/WeekPicker.js +15 -6
  312. package/dist/components/fields/DatePicker/WeekPicker.js.map +1 -1
  313. package/dist/components/fields/DatePicker/YearPicker.js +15 -6
  314. package/dist/components/fields/DatePicker/YearPicker.js.map +1 -1
  315. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  316. package/dist/components/fields/DatePicker/parseDate.js.map +1 -1
  317. package/dist/components/fields/DatePicker/period.js +1 -1
  318. package/dist/components/fields/DatePicker/period.js.map +1 -1
  319. package/dist/components/fields/DatePicker/props.js +1 -1
  320. package/dist/components/fields/DatePicker/props.js.map +1 -1
  321. package/dist/components/fields/DatePicker/utils.js +15 -8
  322. package/dist/components/fields/DatePicker/utils.js.map +1 -1
  323. package/dist/components/fields/FileInput/FileInput.js +3 -3
  324. package/dist/components/fields/FileInput/FileInput.js.map +1 -1
  325. package/dist/components/fields/FilterListBox/FilterListBox.js +87 -87
  326. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  327. package/dist/components/fields/FilterPicker/FilterPicker.d.ts +11 -2
  328. package/dist/components/fields/FilterPicker/FilterPicker.js +24 -23
  329. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  330. package/dist/components/fields/Input/Input.js +1 -1
  331. package/dist/components/fields/Input/Input.js.map +1 -1
  332. package/dist/components/fields/ListBox/DraggableListBox.js +23 -10
  333. package/dist/components/fields/ListBox/DraggableListBox.js.map +1 -1
  334. package/dist/components/fields/ListBox/ListBox.js +138 -53
  335. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  336. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +156 -37
  337. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  338. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  339. package/dist/components/fields/ListBoxPopover/listNavigation.js.map +1 -1
  340. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +61 -33
  341. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js.map +1 -1
  342. package/dist/components/fields/NumberInput/NumberInput.js +123 -33
  343. package/dist/components/fields/NumberInput/NumberInput.js.map +1 -1
  344. package/dist/components/fields/NumberInput/StepButton.js +53 -15
  345. package/dist/components/fields/NumberInput/StepButton.js.map +1 -1
  346. package/dist/components/fields/PasswordInput/PasswordInput.js +149 -45
  347. package/dist/components/fields/PasswordInput/PasswordInput.js.map +1 -1
  348. package/dist/components/fields/Picker/Picker.d.ts +20 -3
  349. package/dist/components/fields/Picker/Picker.js +11 -10
  350. package/dist/components/fields/Picker/Picker.js.map +1 -1
  351. package/dist/components/fields/RadioGroup/Radio.d.ts +10 -2
  352. package/dist/components/fields/RadioGroup/Radio.js +275 -104
  353. package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
  354. package/dist/components/fields/RadioGroup/RadioGroup.js +149 -48
  355. package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
  356. package/dist/components/fields/RadioGroup/context.js +1 -1
  357. package/dist/components/fields/RadioGroup/context.js.map +1 -1
  358. package/dist/components/fields/SearchComboBox/SearchComboBox.js +80 -65
  359. package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
  360. package/dist/components/fields/SearchInput/SearchInput.js +91 -28
  361. package/dist/components/fields/SearchInput/SearchInput.js.map +1 -1
  362. package/dist/components/fields/Select/Select.d.ts +24 -3
  363. package/dist/components/fields/Select/Select.js +376 -121
  364. package/dist/components/fields/Select/Select.js.map +1 -1
  365. package/dist/components/fields/Slider/Gradation.js +45 -10
  366. package/dist/components/fields/Slider/Gradation.js.map +1 -1
  367. package/dist/components/fields/Slider/HueSlider.js +121 -32
  368. package/dist/components/fields/Slider/HueSlider.js.map +1 -1
  369. package/dist/components/fields/Slider/RangeSlider.js +46 -10
  370. package/dist/components/fields/Slider/RangeSlider.js.map +1 -1
  371. package/dist/components/fields/Slider/Slider.js +108 -23
  372. package/dist/components/fields/Slider/Slider.js.map +1 -1
  373. package/dist/components/fields/Slider/SliderBase.js +2 -2
  374. package/dist/components/fields/Slider/SliderBase.js.map +1 -1
  375. package/dist/components/fields/Slider/SliderThumb.js +96 -37
  376. package/dist/components/fields/Slider/SliderThumb.js.map +1 -1
  377. package/dist/components/fields/Slider/SliderTrack.js +64 -23
  378. package/dist/components/fields/Slider/SliderTrack.js.map +1 -1
  379. package/dist/components/fields/Slider/elements.js +1 -1
  380. package/dist/components/fields/Slider/elements.js.map +1 -1
  381. package/dist/components/fields/Slider/index.js +1 -1
  382. package/dist/components/fields/Switch/Switch.js +190 -66
  383. package/dist/components/fields/Switch/Switch.js.map +1 -1
  384. package/dist/components/fields/TextArea/TextArea.js +137 -47
  385. package/dist/components/fields/TextArea/TextArea.js.map +1 -1
  386. package/dist/components/fields/TextInput/TextInput.js +80 -27
  387. package/dist/components/fields/TextInput/TextInput.js.map +1 -1
  388. package/dist/components/fields/TextInput/TextInputBase.js +2 -2
  389. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  390. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  391. package/dist/components/fields/TextInput/useAutoSizeTextArea.js.map +1 -1
  392. package/dist/components/fields/TextInputMapper/TextInputMapper.js +156 -83
  393. package/dist/components/fields/TextInputMapper/TextInputMapper.js.map +1 -1
  394. package/dist/components/fields/TriggerActions.js +11 -2
  395. package/dist/components/fields/TriggerActions.js.map +1 -1
  396. package/dist/components/fields/color/ColorPanel.js +237 -59
  397. package/dist/components/fields/color/ColorPanel.js.map +1 -1
  398. package/dist/components/fields/color/channels.js +1 -1
  399. package/dist/components/fields/color/channels.js.map +1 -1
  400. package/dist/components/fields/color/color.js +1 -1
  401. package/dist/components/fields/color/color.js.map +1 -1
  402. package/dist/components/fields/color/context.js +1 -1
  403. package/dist/components/fields/color/context.js.map +1 -1
  404. package/dist/components/form/FieldWrapper/FieldWrapper.d.ts +1 -1
  405. package/dist/components/form/FieldWrapper/FieldWrapper.js +197 -72
  406. package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
  407. package/dist/components/form/FieldWrapper/types.d.ts +1 -1
  408. package/dist/components/form/Form/Field.js +28 -12
  409. package/dist/components/form/Form/Field.js.map +1 -1
  410. package/dist/components/form/Form/Form.js +95 -34
  411. package/dist/components/form/Form/Form.js.map +1 -1
  412. package/dist/components/form/Form/ModernFormRoot.js +294 -81
  413. package/dist/components/form/Form/ModernFormRoot.js.map +1 -1
  414. package/dist/components/form/Form/ResetButton/ResetButton.js +32 -10
  415. package/dist/components/form/Form/ResetButton/ResetButton.js.map +1 -1
  416. package/dist/components/form/Form/SubmitButton/SubmitButton.js +32 -10
  417. package/dist/components/form/Form/SubmitButton/SubmitButton.js.map +1 -1
  418. package/dist/components/form/Form/SubmitError.js +130 -32
  419. package/dist/components/form/Form/SubmitError.js.map +1 -1
  420. package/dist/components/form/Form/backend.js +1 -1
  421. package/dist/components/form/Form/backend.js.map +1 -1
  422. package/dist/components/form/Form/index.js +1 -1
  423. package/dist/components/form/Form/index.js.map +1 -1
  424. package/dist/components/form/Form/modern/actions.js +140 -45
  425. package/dist/components/form/Form/modern/actions.js.map +1 -1
  426. package/dist/components/form/Form/modern/context.js +1 -1
  427. package/dist/components/form/Form/modern/context.js.map +1 -1
  428. package/dist/components/form/Form/modern/controller.js +1 -1
  429. package/dist/components/form/Form/modern/controller.js.map +1 -1
  430. package/dist/components/form/Form/modern/field-binding.js +1 -1
  431. package/dist/components/form/Form/modern/field-binding.js.map +1 -1
  432. package/dist/components/form/Form/modern/field.js +1 -1
  433. package/dist/components/form/Form/modern/field.js.map +1 -1
  434. package/dist/components/form/Form/modern/react.js +102 -19
  435. package/dist/components/form/Form/modern/react.js.map +1 -1
  436. package/dist/components/form/Form/modern/store.js +13 -3
  437. package/dist/components/form/Form/modern/store.js.map +1 -1
  438. package/dist/components/form/Form/modern/types.d.ts +3 -1
  439. package/dist/components/form/Form/modern/validation.js +1 -1
  440. package/dist/components/form/Form/modern/validation.js.map +1 -1
  441. package/dist/components/form/Form/modern/values.js +1 -1
  442. package/dist/components/form/Form/modern/values.js.map +1 -1
  443. package/dist/components/form/Form/use-field/use-field-binding.js +236 -63
  444. package/dist/components/form/Form/use-field/use-field-binding.js.map +1 -1
  445. package/dist/components/form/Form/use-field/use-field-props.js +106 -61
  446. package/dist/components/form/Form/use-field/use-field-props.js.map +1 -1
  447. package/dist/components/form/Form/use-field/use-field.js +5 -4
  448. package/dist/components/form/Form/use-field/use-field.js.map +1 -1
  449. package/dist/components/form/Form/use-form.js +2 -1
  450. package/dist/components/form/Form/use-form.js.map +1 -1
  451. package/dist/components/form/Form/validation.js +1 -1
  452. package/dist/components/form/Form/validation.js.map +1 -1
  453. package/dist/components/form/Label.js +127 -37
  454. package/dist/components/form/Label.js.map +1 -1
  455. package/dist/components/form/legacy-tooltip.js +28 -0
  456. package/dist/components/form/legacy-tooltip.js.map +1 -0
  457. package/dist/components/form/validation/ValidationIndicator.js +20 -5
  458. package/dist/components/form/validation/ValidationIndicator.js.map +1 -1
  459. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  460. package/dist/components/form/validation/resolve-validation-props.js.map +1 -1
  461. package/dist/components/form/validation/use-validation-props.js +36 -10
  462. package/dist/components/form/validation/use-validation-props.js.map +1 -1
  463. package/dist/components/form/wrapper.js +5 -3
  464. package/dist/components/form/wrapper.js.map +1 -1
  465. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +49 -29
  466. package/dist/components/helpers/DisplayTransition/DisplayTransition.js.map +1 -1
  467. package/dist/components/helpers/IconSwitch/IconSwitch.js +8 -8
  468. package/dist/components/helpers/IconSwitch/IconSwitch.js.map +1 -1
  469. package/dist/components/layout/Board/Board.js +27 -9
  470. package/dist/components/layout/Board/Board.js.map +1 -1
  471. package/dist/components/layout/Board/BoardProvider.js +1 -1
  472. package/dist/components/layout/Board/BoardProvider.js.map +1 -1
  473. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  474. package/dist/components/layout/Board/BoardResponsive.js.map +1 -1
  475. package/dist/components/layout/Board/Widget.js +1 -1
  476. package/dist/components/layout/Board/Widget.js.map +1 -1
  477. package/dist/components/layout/Board/WidgetHost.js +159 -121
  478. package/dist/components/layout/Board/WidgetHost.js.map +1 -1
  479. package/dist/components/layout/Board/board-context.js +14 -5
  480. package/dist/components/layout/Board/board-context.js.map +1 -1
  481. package/dist/components/layout/Board/board-store.js +1 -1
  482. package/dist/components/layout/Board/board-store.js.map +1 -1
  483. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  484. package/dist/components/layout/Board/grid-core/calculate.js.map +1 -1
  485. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  486. package/dist/components/layout/Board/grid-core/collision-modes.js.map +1 -1
  487. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  488. package/dist/components/layout/Board/grid-core/collision.js.map +1 -1
  489. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  490. package/dist/components/layout/Board/grid-core/compactors.js.map +1 -1
  491. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  492. package/dist/components/layout/Board/grid-core/constraints.js.map +1 -1
  493. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  494. package/dist/components/layout/Board/grid-core/group-move.js.map +1 -1
  495. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  496. package/dist/components/layout/Board/grid-core/layout.js.map +1 -1
  497. package/dist/components/layout/Board/grid-core/placement.js +1 -1
  498. package/dist/components/layout/Board/grid-core/placement.js.map +1 -1
  499. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  500. package/dist/components/layout/Board/grid-core/sort.js.map +1 -1
  501. package/dist/components/layout/Board/index.js +1 -1
  502. package/dist/components/layout/Board/index.js.map +1 -1
  503. package/dist/components/layout/Board/responsive-utils.js +1 -1
  504. package/dist/components/layout/Board/responsive-utils.js.map +1 -1
  505. package/dist/components/layout/Board/use-board-layout.js +8 -8
  506. package/dist/components/layout/Board/use-board-layout.js.map +1 -1
  507. package/dist/components/layout/Board/use-board-registry.js +257 -257
  508. package/dist/components/layout/Board/use-board-registry.js.map +1 -1
  509. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  510. package/dist/components/layout/Board/use-board-select-modifier-key.js.map +1 -1
  511. package/dist/components/layout/Board/use-board-selection.js +16 -16
  512. package/dist/components/layout/Board/use-board-selection.js.map +1 -1
  513. package/dist/components/layout/Flex.js +29 -7
  514. package/dist/components/layout/Flex.js.map +1 -1
  515. package/dist/components/layout/Flow.js +29 -7
  516. package/dist/components/layout/Flow.js.map +1 -1
  517. package/dist/components/layout/Grid.js +30 -7
  518. package/dist/components/layout/Grid.js.map +1 -1
  519. package/dist/components/layout/Panel.js +9 -9
  520. package/dist/components/layout/Panel.js.map +1 -1
  521. package/dist/components/layout/Prefix.js +59 -16
  522. package/dist/components/layout/Prefix.js.map +1 -1
  523. package/dist/components/layout/ResizablePanel.js +62 -32
  524. package/dist/components/layout/ResizablePanel.js.map +1 -1
  525. package/dist/components/layout/Space.js +55 -11
  526. package/dist/components/layout/Space.js.map +1 -1
  527. package/dist/components/layout/Suffix.js +59 -16
  528. package/dist/components/layout/Suffix.js.map +1 -1
  529. package/dist/components/navigation/Pagination/Pagination.js +394 -164
  530. package/dist/components/navigation/Pagination/Pagination.js.map +1 -1
  531. package/dist/components/navigation/Pagination/use-pagination.js +69 -26
  532. package/dist/components/navigation/Pagination/use-pagination.js.map +1 -1
  533. package/dist/components/navigation/Tabs/DraggableTabList.js +25 -10
  534. package/dist/components/navigation/Tabs/DraggableTabList.js.map +1 -1
  535. package/dist/components/navigation/Tabs/TabButton.js +625 -235
  536. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  537. package/dist/components/navigation/Tabs/TabDropIndicator.js +65 -23
  538. package/dist/components/navigation/Tabs/TabDropIndicator.js.map +1 -1
  539. package/dist/components/navigation/Tabs/TabPanel.js +47 -19
  540. package/dist/components/navigation/Tabs/TabPanel.js.map +1 -1
  541. package/dist/components/navigation/Tabs/TabPicker.js +106 -33
  542. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  543. package/dist/components/navigation/Tabs/Tabs.js +45 -45
  544. package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
  545. package/dist/components/navigation/Tabs/TabsAction.js +53 -19
  546. package/dist/components/navigation/Tabs/TabsAction.js.map +1 -1
  547. package/dist/components/navigation/Tabs/TabsContext.js +16 -6
  548. package/dist/components/navigation/Tabs/TabsContext.js.map +1 -1
  549. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  550. package/dist/components/navigation/Tabs/popover-placement.js.map +1 -1
  551. package/dist/components/navigation/Tabs/styled.js +2 -2
  552. package/dist/components/navigation/Tabs/styled.js.map +1 -1
  553. package/dist/components/navigation/Tabs/types.js +1 -1
  554. package/dist/components/navigation/Tabs/types.js.map +1 -1
  555. package/dist/components/navigation/Tabs/use-tab-editing.js +50 -13
  556. package/dist/components/navigation/Tabs/use-tab-editing.js.map +1 -1
  557. package/dist/components/navigation/Tabs/use-tab-indicator.js +111 -63
  558. package/dist/components/navigation/Tabs/use-tab-indicator.js.map +1 -1
  559. package/dist/components/organisms/StatsCard/StatsCard.js +54 -14
  560. package/dist/components/organisms/StatsCard/StatsCard.js.map +1 -1
  561. package/dist/components/other/Calendar/Calendar.js +79 -31
  562. package/dist/components/other/Calendar/Calendar.js.map +1 -1
  563. package/dist/components/other/Calendar/CalendarCell.js +66 -20
  564. package/dist/components/other/Calendar/CalendarCell.js.map +1 -1
  565. package/dist/components/other/Calendar/CalendarGrid.js +90 -40
  566. package/dist/components/other/Calendar/CalendarGrid.js.map +1 -1
  567. package/dist/components/other/Calendar/CalendarHeader.js +80 -17
  568. package/dist/components/other/Calendar/CalendarHeader.js.map +1 -1
  569. package/dist/components/other/Calendar/CalendarPanel.js +568 -144
  570. package/dist/components/other/Calendar/CalendarPanel.js.map +1 -1
  571. package/dist/components/other/Calendar/PeriodCalendar.js +425 -134
  572. package/dist/components/other/Calendar/PeriodCalendar.js.map +1 -1
  573. package/dist/components/other/Calendar/PeriodGrid.js +6 -6
  574. package/dist/components/other/Calendar/PeriodGrid.js.map +1 -1
  575. package/dist/components/other/Calendar/RangeCalendar.js +50 -24
  576. package/dist/components/other/Calendar/RangeCalendar.js.map +1 -1
  577. package/dist/components/other/Calendar/styled.js +1 -1
  578. package/dist/components/other/Calendar/styled.js.map +1 -1
  579. package/dist/components/other/CubeLogo/CubeLogo.js +95 -34
  580. package/dist/components/other/CubeLogo/CubeLogo.js.map +1 -1
  581. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  582. package/dist/components/other/NoDataIcon/NoDataIcon.js.map +1 -1
  583. package/dist/components/overlays/AlertDialog/AlertDialog.js +153 -42
  584. package/dist/components/overlays/AlertDialog/AlertDialog.js.map +1 -1
  585. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +76 -54
  586. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js.map +1 -1
  587. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +146 -39
  588. package/dist/components/overlays/AlertDialog/AlertDialogZone.js.map +1 -1
  589. package/dist/components/overlays/Dialog/Dialog.js +43 -18
  590. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  591. package/dist/components/overlays/Dialog/DialogContainer.js +13 -13
  592. package/dist/components/overlays/Dialog/DialogContainer.js.map +1 -1
  593. package/dist/components/overlays/Dialog/DialogForm.d.ts +12 -7
  594. package/dist/components/overlays/Dialog/DialogForm.js +22 -10
  595. package/dist/components/overlays/Dialog/DialogForm.js.map +1 -1
  596. package/dist/components/overlays/Dialog/DialogTrigger.d.ts +1 -1
  597. package/dist/components/overlays/Dialog/DialogTrigger.js +214 -59
  598. package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
  599. package/dist/components/overlays/Dialog/ModernDialogForm.js +357 -0
  600. package/dist/components/overlays/Dialog/ModernDialogForm.js.map +1 -0
  601. package/dist/components/overlays/Dialog/context.js +1 -1
  602. package/dist/components/overlays/Dialog/context.js.map +1 -1
  603. package/dist/components/overlays/Dialog/index.d.ts +1 -1
  604. package/dist/components/overlays/Dialog/use-content-overflow.js +68 -0
  605. package/dist/components/overlays/Dialog/use-content-overflow.js.map +1 -0
  606. package/dist/components/overlays/Dialog/use-dialog-container.js +6 -6
  607. package/dist/components/overlays/Dialog/use-dialog-container.js.map +1 -1
  608. package/dist/components/overlays/Modal/Modal.js +140 -27
  609. package/dist/components/overlays/Modal/Modal.js.map +1 -1
  610. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  611. package/dist/components/overlays/Modal/OpenTransitionContext.js.map +1 -1
  612. package/dist/components/overlays/Modal/Overlay.js +4 -4
  613. package/dist/components/overlays/Modal/Overlay.js.map +1 -1
  614. package/dist/components/overlays/Modal/Popover.js +131 -29
  615. package/dist/components/overlays/Modal/Popover.js.map +1 -1
  616. package/dist/components/overlays/Modal/Tray.js +142 -30
  617. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  618. package/dist/components/overlays/Modal/Underlay.js +36 -7
  619. package/dist/components/overlays/Modal/Underlay.js.map +1 -1
  620. package/dist/components/overlays/Notifications/Notification.js +69 -32
  621. package/dist/components/overlays/Notifications/Notification.js.map +1 -1
  622. package/dist/components/overlays/Notifications/NotificationAction.js +79 -26
  623. package/dist/components/overlays/Notifications/NotificationAction.js.map +1 -1
  624. package/dist/components/overlays/Notifications/NotificationCard.js +138 -33
  625. package/dist/components/overlays/Notifications/NotificationCard.js.map +1 -1
  626. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  627. package/dist/components/overlays/Notifications/NotificationContext.js.map +1 -1
  628. package/dist/components/overlays/Notifications/NotificationItem.js +63 -16
  629. package/dist/components/overlays/Notifications/NotificationItem.js.map +1 -1
  630. package/dist/components/overlays/Notifications/OverlayContainer.js +312 -151
  631. package/dist/components/overlays/Notifications/OverlayContainer.js.map +1 -1
  632. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  633. package/dist/components/overlays/Notifications/OverlayProvider.js.map +1 -1
  634. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +210 -58
  635. package/dist/components/overlays/Notifications/PersistentNotificationsList.js.map +1 -1
  636. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  637. package/dist/components/overlays/Notifications/dismissed-storage.js.map +1 -1
  638. package/dist/components/overlays/Notifications/format-relative-time.d.ts +1 -1
  639. package/dist/components/overlays/Notifications/format-relative-time.js +3 -3
  640. package/dist/components/overlays/Notifications/format-relative-time.js.map +1 -1
  641. package/dist/components/overlays/Notifications/index.js +1 -1
  642. package/dist/components/overlays/Notifications/index.js.map +1 -1
  643. package/dist/components/overlays/Notifications/use-notification-state.js +51 -51
  644. package/dist/components/overlays/Notifications/use-notification-state.js.map +1 -1
  645. package/dist/components/overlays/Notifications/use-notifications.js +12 -12
  646. package/dist/components/overlays/Notifications/use-notifications.js.map +1 -1
  647. package/dist/components/overlays/Notifications/use-overlay-timers.js +10 -10
  648. package/dist/components/overlays/Notifications/use-overlay-timers.js.map +1 -1
  649. package/dist/components/overlays/Notifications/use-persistent-notifications.js +24 -5
  650. package/dist/components/overlays/Notifications/use-persistent-notifications.js.map +1 -1
  651. package/dist/components/overlays/Notifications/use-persistent-state.js +145 -43
  652. package/dist/components/overlays/Notifications/use-persistent-state.js.map +1 -1
  653. package/dist/components/overlays/Notifications/use-toast-state.js +25 -25
  654. package/dist/components/overlays/Notifications/use-toast-state.js.map +1 -1
  655. package/dist/components/overlays/Toast/ToastItem.js +68 -15
  656. package/dist/components/overlays/Toast/ToastItem.js.map +1 -1
  657. package/dist/components/overlays/Toast/index.js +100 -34
  658. package/dist/components/overlays/Toast/index.js.map +1 -1
  659. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  660. package/dist/components/overlays/Toast/useProgressToast.js.map +1 -1
  661. package/dist/components/overlays/Toast/useToast.js +9 -9
  662. package/dist/components/overlays/Toast/useToast.js.map +1 -1
  663. package/dist/components/overlays/Tooltip/Tooltip.js +88 -31
  664. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  665. package/dist/components/overlays/Tooltip/TooltipProvider.js +75 -10
  666. package/dist/components/overlays/Tooltip/TooltipProvider.js.map +1 -1
  667. package/dist/components/overlays/Tooltip/TooltipTrigger.js +189 -77
  668. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  669. package/dist/components/overlays/Tooltip/context.js +1 -1
  670. package/dist/components/overlays/Tooltip/context.js.map +1 -1
  671. package/dist/components/overlays/Tooltip/split-trigger-props.d.ts +16 -0
  672. package/dist/components/overlays/Tooltip/split-trigger-props.js +54 -0
  673. package/dist/components/overlays/Tooltip/split-trigger-props.js.map +1 -0
  674. package/dist/components/portal/Portal.js +18 -3
  675. package/dist/components/portal/Portal.js.map +1 -1
  676. package/dist/components/portal/PortalProvider.js +11 -2
  677. package/dist/components/portal/PortalProvider.js.map +1 -1
  678. package/dist/components/portal/usePortal.js +1 -1
  679. package/dist/components/portal/usePortal.js.map +1 -1
  680. package/dist/components/shared/DraggableCollection.js +23 -23
  681. package/dist/components/shared/DraggableCollection.js.map +1 -1
  682. package/dist/components/shared/InvalidIcon.js +1 -1
  683. package/dist/components/shared/InvalidIcon.js.map +1 -1
  684. package/dist/components/shared/ValidIcon.js +1 -1
  685. package/dist/components/shared/ValidIcon.js.map +1 -1
  686. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +156 -48
  687. package/dist/components/status/LoadingAnimation/LoadingAnimation.js.map +1 -1
  688. package/dist/components/status/Spin/Cube.js +12 -3
  689. package/dist/components/status/Spin/Cube.js.map +1 -1
  690. package/dist/components/status/Spin/InternalSpinner.js +21 -6
  691. package/dist/components/status/Spin/InternalSpinner.js.map +1 -1
  692. package/dist/components/status/Spin/Spin.js +31 -7
  693. package/dist/components/status/Spin/Spin.js.map +1 -1
  694. package/dist/components/status/Spin/SpinsContainer.js +23 -6
  695. package/dist/components/status/Spin/SpinsContainer.js.map +1 -1
  696. package/dist/data/item-themes.d.ts +1 -1
  697. package/dist/data/item-themes.js +7 -1
  698. package/dist/data/item-themes.js.map +1 -1
  699. package/dist/data/themes.js +1 -1
  700. package/dist/data/themes.js.map +1 -1
  701. package/dist/eslint-plugin/defaults.generated.js +15 -5
  702. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  703. package/dist/eslint-plugin/index.js +1 -1
  704. package/dist/eslint-plugin/index.js.map +1 -1
  705. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  706. package/dist/eslint-plugin/rules/no-redundant-default-prop.js.map +1 -1
  707. package/dist/i18n/I18nProvider.js +54 -13
  708. package/dist/i18n/I18nProvider.js.map +1 -1
  709. package/dist/i18n/createFormatter.js +1 -1
  710. package/dist/i18n/createFormatter.js.map +1 -1
  711. package/dist/i18n/index.js +1 -1
  712. package/dist/i18n/index.js.map +1 -1
  713. package/dist/i18n/instance.js +1 -1
  714. package/dist/i18n/instance.js.map +1 -1
  715. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  716. package/dist/i18n/locales/en-US/uikit.js +1 -1
  717. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  718. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  719. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  720. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  721. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  722. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  723. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  724. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  725. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  726. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  727. package/dist/i18n/locales.js +1 -1
  728. package/dist/i18n/locales.js.map +1 -1
  729. package/dist/i18n/useFormatter.js +10 -3
  730. package/dist/i18n/useFormatter.js.map +1 -1
  731. package/dist/i18n/useI18n.js +1 -1
  732. package/dist/i18n/useI18n.js.map +1 -1
  733. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  734. package/dist/icons/AdjustmentsHorizontalIcon.js.map +1 -1
  735. package/dist/icons/AdjustmentsIcon.js +1 -1
  736. package/dist/icons/AdjustmentsIcon.js.map +1 -1
  737. package/dist/icons/AiIcon.js +1 -1
  738. package/dist/icons/AiIcon.js.map +1 -1
  739. package/dist/icons/AreaChartIcon.js +1 -1
  740. package/dist/icons/AreaChartIcon.js.map +1 -1
  741. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  742. package/dist/icons/ArrowNarrowDownIcon.js.map +1 -1
  743. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  744. package/dist/icons/ArrowNarrowUpIcon.js.map +1 -1
  745. package/dist/icons/BackwardIcon.js +1 -1
  746. package/dist/icons/BackwardIcon.js.map +1 -1
  747. package/dist/icons/BarChartIcon.js +1 -1
  748. package/dist/icons/BarChartIcon.js.map +1 -1
  749. package/dist/icons/BellFilledIcon.js +1 -1
  750. package/dist/icons/BellFilledIcon.js.map +1 -1
  751. package/dist/icons/BellIcon.js +1 -1
  752. package/dist/icons/BellIcon.js.map +1 -1
  753. package/dist/icons/BooleanIcon.js +1 -1
  754. package/dist/icons/BooleanIcon.js.map +1 -1
  755. package/dist/icons/CalendarEditIcon.js +1 -1
  756. package/dist/icons/CalendarEditIcon.js.map +1 -1
  757. package/dist/icons/CalendarIcon.js +1 -1
  758. package/dist/icons/CalendarIcon.js.map +1 -1
  759. package/dist/icons/CaretDownIcon.js +1 -1
  760. package/dist/icons/CaretDownIcon.js.map +1 -1
  761. package/dist/icons/CaretUpIcon.js +1 -1
  762. package/dist/icons/CaretUpIcon.js.map +1 -1
  763. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  764. package/dist/icons/ChartAreaStackedIcon.js.map +1 -1
  765. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  766. package/dist/icons/ChartAreaStackedPercentageIcon.js.map +1 -1
  767. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  768. package/dist/icons/ChartBarGroupedHorizontalIcon.js.map +1 -1
  769. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  770. package/dist/icons/ChartBarGroupedIcon.js.map +1 -1
  771. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  772. package/dist/icons/ChartBarHorizontalIcon.js.map +1 -1
  773. package/dist/icons/ChartBarLineIcon.js +1 -1
  774. package/dist/icons/ChartBarLineIcon.js.map +1 -1
  775. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  776. package/dist/icons/ChartBarStackedHorizontalIcon.js.map +1 -1
  777. package/dist/icons/ChartBarStackedIcon.js +1 -1
  778. package/dist/icons/ChartBarStackedIcon.js.map +1 -1
  779. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  780. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js.map +1 -1
  781. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  782. package/dist/icons/ChartBarStackedPercentageIcon.js.map +1 -1
  783. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  784. package/dist/icons/ChartBoxPlot2Icon.js.map +1 -1
  785. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  786. package/dist/icons/ChartBoxPlotIcon.js.map +1 -1
  787. package/dist/icons/ChartBubbleIcon.js +1 -1
  788. package/dist/icons/ChartBubbleIcon.js.map +1 -1
  789. package/dist/icons/ChartDonut2Icon.js +1 -1
  790. package/dist/icons/ChartDonut2Icon.js.map +1 -1
  791. package/dist/icons/ChartFunnelIcon.js +1 -1
  792. package/dist/icons/ChartFunnelIcon.js.map +1 -1
  793. package/dist/icons/ChartHeatmapIcon.js +1 -1
  794. package/dist/icons/ChartHeatmapIcon.js.map +1 -1
  795. package/dist/icons/ChartKPIIcon.js +1 -1
  796. package/dist/icons/ChartKPIIcon.js.map +1 -1
  797. package/dist/icons/ChartPie2Icon.js +1 -1
  798. package/dist/icons/ChartPie2Icon.js.map +1 -1
  799. package/dist/icons/ChartScatterIcon.js +1 -1
  800. package/dist/icons/ChartScatterIcon.js.map +1 -1
  801. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  802. package/dist/icons/CheckCircleFilledIcon.js.map +1 -1
  803. package/dist/icons/CheckCircleIcon.js +1 -1
  804. package/dist/icons/CheckCircleIcon.js.map +1 -1
  805. package/dist/icons/CheckIcon.js +1 -1
  806. package/dist/icons/CheckIcon.js.map +1 -1
  807. package/dist/icons/CircleFilledIcon.js +1 -1
  808. package/dist/icons/CircleFilledIcon.js.map +1 -1
  809. package/dist/icons/ClearIcon.js +1 -1
  810. package/dist/icons/ClearIcon.js.map +1 -1
  811. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  812. package/dist/icons/CloseCircleFilledIcon.js.map +1 -1
  813. package/dist/icons/CloseCircleIcon.js +1 -1
  814. package/dist/icons/CloseCircleIcon.js.map +1 -1
  815. package/dist/icons/CloseIcon.js +1 -1
  816. package/dist/icons/CloseIcon.js.map +1 -1
  817. package/dist/icons/CodeIcon.js +1 -1
  818. package/dist/icons/CodeIcon.js.map +1 -1
  819. package/dist/icons/ColumnTotalIcon.js +1 -1
  820. package/dist/icons/ColumnTotalIcon.js.map +1 -1
  821. package/dist/icons/CopyIcon.js +1 -1
  822. package/dist/icons/CopyIcon.js.map +1 -1
  823. package/dist/icons/CountIcon.js +1 -1
  824. package/dist/icons/CountIcon.js.map +1 -1
  825. package/dist/icons/CubeIcon.js +1 -1
  826. package/dist/icons/CubeIcon.js.map +1 -1
  827. package/dist/icons/CubePauseIcon.js +1 -1
  828. package/dist/icons/CubePauseIcon.js.map +1 -1
  829. package/dist/icons/CubePlayIcon.js +1 -1
  830. package/dist/icons/CubePlayIcon.js.map +1 -1
  831. package/dist/icons/CurrencyDollarIcon.js +1 -1
  832. package/dist/icons/CurrencyDollarIcon.js.map +1 -1
  833. package/dist/icons/DangerIcon.js +1 -1
  834. package/dist/icons/DangerIcon.js.map +1 -1
  835. package/dist/icons/DashboardIcon.js +1 -1
  836. package/dist/icons/DashboardIcon.js.map +1 -1
  837. package/dist/icons/DatabaseIcon.js +1 -1
  838. package/dist/icons/DatabaseIcon.js.map +1 -1
  839. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  840. package/dist/icons/DecimalDecreaseIcon.js.map +1 -1
  841. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  842. package/dist/icons/DecimalIncreaseIcon.js.map +1 -1
  843. package/dist/icons/DirectionIcon.js +67 -22
  844. package/dist/icons/DirectionIcon.js.map +1 -1
  845. package/dist/icons/DonutIcon.js +1 -1
  846. package/dist/icons/DonutIcon.js.map +1 -1
  847. package/dist/icons/DownIcon.js +1 -1
  848. package/dist/icons/DownIcon.js.map +1 -1
  849. package/dist/icons/EditIcon.js +1 -1
  850. package/dist/icons/EditIcon.js.map +1 -1
  851. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  852. package/dist/icons/ExclamationCircleFilledIcon.js.map +1 -1
  853. package/dist/icons/ExclamationCircleIcon.js +1 -1
  854. package/dist/icons/ExclamationCircleIcon.js.map +1 -1
  855. package/dist/icons/ExclamationIcon.js +1 -1
  856. package/dist/icons/ExclamationIcon.js.map +1 -1
  857. package/dist/icons/EyeIcon.js +1 -1
  858. package/dist/icons/EyeIcon.js.map +1 -1
  859. package/dist/icons/EyeInvisibleIcon.js +1 -1
  860. package/dist/icons/EyeInvisibleIcon.js.map +1 -1
  861. package/dist/icons/FilterIcon.js +1 -1
  862. package/dist/icons/FilterIcon.js.map +1 -1
  863. package/dist/icons/FolderFilledIcon.js +1 -1
  864. package/dist/icons/FolderFilledIcon.js.map +1 -1
  865. package/dist/icons/FolderIcon.js +1 -1
  866. package/dist/icons/FolderIcon.js.map +1 -1
  867. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  868. package/dist/icons/FolderOpenFilledIcon.js.map +1 -1
  869. package/dist/icons/FolderOpenIcon.js +1 -1
  870. package/dist/icons/FolderOpenIcon.js.map +1 -1
  871. package/dist/icons/ForwardIcon.js +1 -1
  872. package/dist/icons/ForwardIcon.js.map +1 -1
  873. package/dist/icons/GripVerticalIcon.js +1 -1
  874. package/dist/icons/GripVerticalIcon.js.map +1 -1
  875. package/dist/icons/HierarchyIcon.js +1 -1
  876. package/dist/icons/HierarchyIcon.js.map +1 -1
  877. package/dist/icons/HierarchyOpenIcon.js +1 -1
  878. package/dist/icons/HierarchyOpenIcon.js.map +1 -1
  879. package/dist/icons/Icon.js +60 -16
  880. package/dist/icons/Icon.js.map +1 -1
  881. package/dist/icons/InfoCircleIcon.js +1 -1
  882. package/dist/icons/InfoCircleIcon.js.map +1 -1
  883. package/dist/icons/InfoIcon.js +1 -1
  884. package/dist/icons/InfoIcon.js.map +1 -1
  885. package/dist/icons/KeyIcon.js +1 -1
  886. package/dist/icons/KeyIcon.js.map +1 -1
  887. package/dist/icons/LeftIcon.js +1 -1
  888. package/dist/icons/LeftIcon.js.map +1 -1
  889. package/dist/icons/LineChartIcon.js +1 -1
  890. package/dist/icons/LineChartIcon.js.map +1 -1
  891. package/dist/icons/LoadingIcon.js +1 -1
  892. package/dist/icons/LoadingIcon.js.map +1 -1
  893. package/dist/icons/LockFilledIcon.js +1 -1
  894. package/dist/icons/LockFilledIcon.js.map +1 -1
  895. package/dist/icons/LockIcon.js +1 -1
  896. package/dist/icons/LockIcon.js.map +1 -1
  897. package/dist/icons/MoreIcon.js +1 -1
  898. package/dist/icons/MoreIcon.js.map +1 -1
  899. package/dist/icons/NotAllowedIcon.js +1 -1
  900. package/dist/icons/NotAllowedIcon.js.map +1 -1
  901. package/dist/icons/Number123Icon.js +1 -1
  902. package/dist/icons/Number123Icon.js.map +1 -1
  903. package/dist/icons/NumberIcon.js +1 -1
  904. package/dist/icons/NumberIcon.js.map +1 -1
  905. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  906. package/dist/icons/PauseCircleFilledIcon.js.map +1 -1
  907. package/dist/icons/PauseCircleIcon.js +1 -1
  908. package/dist/icons/PauseCircleIcon.js.map +1 -1
  909. package/dist/icons/PauseIcon.js +1 -1
  910. package/dist/icons/PauseIcon.js.map +1 -1
  911. package/dist/icons/PercentageIcon.js +1 -1
  912. package/dist/icons/PercentageIcon.js.map +1 -1
  913. package/dist/icons/PieChartIcon.js +1 -1
  914. package/dist/icons/PieChartIcon.js.map +1 -1
  915. package/dist/icons/PipetteIcon.js +1 -1
  916. package/dist/icons/PipetteIcon.js.map +1 -1
  917. package/dist/icons/PlayCircleIcon.js +1 -1
  918. package/dist/icons/PlayCircleIcon.js.map +1 -1
  919. package/dist/icons/PlayIcon.js +1 -1
  920. package/dist/icons/PlayIcon.js.map +1 -1
  921. package/dist/icons/PlusIcon.js +1 -1
  922. package/dist/icons/PlusIcon.js.map +1 -1
  923. package/dist/icons/ProgressBarIcon.js +1 -1
  924. package/dist/icons/ProgressBarIcon.js.map +1 -1
  925. package/dist/icons/ReloadIcon.js +1 -1
  926. package/dist/icons/ReloadIcon.js.map +1 -1
  927. package/dist/icons/ReportIcon.js +1 -1
  928. package/dist/icons/ReportIcon.js.map +1 -1
  929. package/dist/icons/ReturnIcon.js +1 -1
  930. package/dist/icons/ReturnIcon.js.map +1 -1
  931. package/dist/icons/RightIcon.js +1 -1
  932. package/dist/icons/RightIcon.js.map +1 -1
  933. package/dist/icons/RowTotalsIcon.js +1 -1
  934. package/dist/icons/RowTotalsIcon.js.map +1 -1
  935. package/dist/icons/SchemeIcon.js +1 -1
  936. package/dist/icons/SchemeIcon.js.map +1 -1
  937. package/dist/icons/SearchIcon.js +1 -1
  938. package/dist/icons/SearchIcon.js.map +1 -1
  939. package/dist/icons/SemanticQueryIcon.js +1 -1
  940. package/dist/icons/SemanticQueryIcon.js.map +1 -1
  941. package/dist/icons/SettingsIcon.js +1 -1
  942. package/dist/icons/SettingsIcon.js.map +1 -1
  943. package/dist/icons/ShieldFilledIcon.js +1 -1
  944. package/dist/icons/ShieldFilledIcon.js.map +1 -1
  945. package/dist/icons/ShieldIcon.js +1 -1
  946. package/dist/icons/ShieldIcon.js.map +1 -1
  947. package/dist/icons/SlashIcon.js +1 -1
  948. package/dist/icons/SlashIcon.js.map +1 -1
  949. package/dist/icons/SparklesIcon.js +1 -1
  950. package/dist/icons/SparklesIcon.js.map +1 -1
  951. package/dist/icons/SqlIcon.js +1 -1
  952. package/dist/icons/SqlIcon.js.map +1 -1
  953. package/dist/icons/StatsIcon.js +1 -1
  954. package/dist/icons/StatsIcon.js.map +1 -1
  955. package/dist/icons/StopIcon.js +1 -1
  956. package/dist/icons/StopIcon.js.map +1 -1
  957. package/dist/icons/StringIcon.js +1 -1
  958. package/dist/icons/StringIcon.js.map +1 -1
  959. package/dist/icons/SubtotalsIcon.js +1 -1
  960. package/dist/icons/SubtotalsIcon.js.map +1 -1
  961. package/dist/icons/SwitchIcon.js +1 -1
  962. package/dist/icons/SwitchIcon.js.map +1 -1
  963. package/dist/icons/TableIcon.js +1 -1
  964. package/dist/icons/TableIcon.js.map +1 -1
  965. package/dist/icons/ThumbsDownIcon.js +1 -1
  966. package/dist/icons/ThumbsDownIcon.js.map +1 -1
  967. package/dist/icons/ThumbsUpIcon.js +1 -1
  968. package/dist/icons/ThumbsUpIcon.js.map +1 -1
  969. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  970. package/dist/icons/ThunderboltCrossedIcon.js.map +1 -1
  971. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  972. package/dist/icons/ThunderboltFilledIcon.js.map +1 -1
  973. package/dist/icons/ThunderboltIcon.js +1 -1
  974. package/dist/icons/ThunderboltIcon.js.map +1 -1
  975. package/dist/icons/TimeIcon.js +1 -1
  976. package/dist/icons/TimeIcon.js.map +1 -1
  977. package/dist/icons/TrashIcon.js +1 -1
  978. package/dist/icons/TrashIcon.js.map +1 -1
  979. package/dist/icons/UnlockIcon.js +1 -1
  980. package/dist/icons/UnlockIcon.js.map +1 -1
  981. package/dist/icons/UpIcon.js +1 -1
  982. package/dist/icons/UpIcon.js.map +1 -1
  983. package/dist/icons/UserGroupIcon.js +1 -1
  984. package/dist/icons/UserGroupIcon.js.map +1 -1
  985. package/dist/icons/UserIcon.js +1 -1
  986. package/dist/icons/UserIcon.js.map +1 -1
  987. package/dist/icons/UserLockIcon.js +1 -1
  988. package/dist/icons/UserLockIcon.js.map +1 -1
  989. package/dist/icons/ViewIcon.js +1 -1
  990. package/dist/icons/ViewIcon.js.map +1 -1
  991. package/dist/icons/WarningFilledIcon.js +1 -1
  992. package/dist/icons/WarningFilledIcon.js.map +1 -1
  993. package/dist/icons/WarningIcon.js +1 -1
  994. package/dist/icons/WarningIcon.js.map +1 -1
  995. package/dist/icons/wrap-icon.js +15 -7
  996. package/dist/icons/wrap-icon.js.map +1 -1
  997. package/dist/index.d.ts +22 -22
  998. package/dist/index.js +1 -1
  999. package/dist/index.js.map +1 -1
  1000. package/dist/probe/canonicalize.js +2 -2
  1001. package/dist/probe/canonicalize.js.map +1 -1
  1002. package/dist/probe/css.js +1 -1
  1003. package/dist/probe/css.js.map +1 -1
  1004. package/dist/probe/index.js +1 -1
  1005. package/dist/provider.js +17 -7
  1006. package/dist/provider.js.map +1 -1
  1007. package/dist/providers/TrackingProvider.js +33 -9
  1008. package/dist/providers/TrackingProvider.js.map +1 -1
  1009. package/dist/providers/navigationAdapter.default.js +1 -1
  1010. package/dist/providers/navigationAdapter.default.js.map +1 -1
  1011. package/dist/shared/form.d.ts +9 -2
  1012. package/dist/tokens/all-tokens.js +1 -1
  1013. package/dist/tokens/all-tokens.js.map +1 -1
  1014. package/dist/tokens/base.js +1 -1
  1015. package/dist/tokens/base.js.map +1 -1
  1016. package/dist/tokens/color-seed.js +1 -1
  1017. package/dist/tokens/color-seed.js.map +1 -1
  1018. package/dist/tokens/color-theme.js +18 -3
  1019. package/dist/tokens/color-theme.js.map +1 -1
  1020. package/dist/tokens/colors.js +1 -1
  1021. package/dist/tokens/colors.js.map +1 -1
  1022. package/dist/tokens/layout.js +1 -1
  1023. package/dist/tokens/layout.js.map +1 -1
  1024. package/dist/tokens/lazy-styles.js +1 -1
  1025. package/dist/tokens/lazy-styles.js.map +1 -1
  1026. package/dist/tokens/legacy-color.js +1 -1
  1027. package/dist/tokens/legacy-color.js.map +1 -1
  1028. package/dist/tokens/palette-config.js +9 -2
  1029. package/dist/tokens/palette-config.js.map +1 -1
  1030. package/dist/tokens/palette.js +1 -1
  1031. package/dist/tokens/palette.js.map +1 -1
  1032. package/dist/tokens/resolve.js +85 -21
  1033. package/dist/tokens/resolve.js.map +1 -1
  1034. package/dist/tokens/shadows.js +1 -1
  1035. package/dist/tokens/shadows.js.map +1 -1
  1036. package/dist/tokens/sizes.js +1 -1
  1037. package/dist/tokens/sizes.js.map +1 -1
  1038. package/dist/tokens/spacing.js +1 -1
  1039. package/dist/tokens/spacing.js.map +1 -1
  1040. package/dist/tokens/typography.js +1 -1
  1041. package/dist/tokens/typography.js.map +1 -1
  1042. package/dist/utils/ResizeSensor.js +1 -1
  1043. package/dist/utils/ResizeSensor.js.map +1 -1
  1044. package/dist/utils/colors.js +1 -1
  1045. package/dist/utils/colors.js.map +1 -1
  1046. package/dist/utils/dotize.js +1 -1
  1047. package/dist/utils/dotize.js.map +1 -1
  1048. package/dist/utils/is-dev-env.js +1 -1
  1049. package/dist/utils/is-dev-env.js.map +1 -1
  1050. package/dist/utils/modules.js +1 -1
  1051. package/dist/utils/modules.js.map +1 -1
  1052. package/dist/utils/promise.js +1 -1
  1053. package/dist/utils/promise.js.map +1 -1
  1054. package/dist/utils/raf.js +1 -1
  1055. package/dist/utils/raf.js.map +1 -1
  1056. package/dist/utils/random.js +1 -1
  1057. package/dist/utils/random.js.map +1 -1
  1058. package/dist/utils/range.js +1 -1
  1059. package/dist/utils/range.js.map +1 -1
  1060. package/dist/utils/react/RenderCache.js +2 -2
  1061. package/dist/utils/react/RenderCache.js.map +1 -1
  1062. package/dist/utils/react/Slots.js +67 -24
  1063. package/dist/utils/react/Slots.js.map +1 -1
  1064. package/dist/utils/react/chain.js +1 -1
  1065. package/dist/utils/react/chain.js.map +1 -1
  1066. package/dist/utils/react/disabledProps.js +1 -1
  1067. package/dist/utils/react/disabledProps.js.map +1 -1
  1068. package/dist/utils/react/escapePropagation.js +1 -1
  1069. package/dist/utils/react/escapePropagation.js.map +1 -1
  1070. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  1071. package/dist/utils/react/forwardRefWithGenerics.js.map +1 -1
  1072. package/dist/utils/react/index.js +1 -1
  1073. package/dist/utils/react/interactions.js +35 -12
  1074. package/dist/utils/react/interactions.js.map +1 -1
  1075. package/dist/utils/react/isTextOnly.js +1 -1
  1076. package/dist/utils/react/isTextOnly.js.map +1 -1
  1077. package/dist/utils/react/mapProps.js +1 -1
  1078. package/dist/utils/react/mapProps.js.map +1 -1
  1079. package/dist/utils/react/mergeProps.js +1 -1
  1080. package/dist/utils/react/mergeProps.js.map +1 -1
  1081. package/dist/utils/react/nullableValue.js +1 -1
  1082. package/dist/utils/react/nullableValue.js.map +1 -1
  1083. package/dist/utils/react/programmaticFocus.js +1 -1
  1084. package/dist/utils/react/programmaticFocus.js.map +1 -1
  1085. package/dist/utils/react/resolveIcon.js +1 -1
  1086. package/dist/utils/react/resolveIcon.js.map +1 -1
  1087. package/dist/utils/react/sharedStore.js +13 -2
  1088. package/dist/utils/react/sharedStore.js.map +1 -1
  1089. package/dist/utils/react/useBufferedValue.js +5 -5
  1090. package/dist/utils/react/useBufferedValue.js.map +1 -1
  1091. package/dist/utils/react/useCombinedRefs.js +20 -5
  1092. package/dist/utils/react/useCombinedRefs.js.map +1 -1
  1093. package/dist/utils/react/useControlledFocusVisible.js +53 -17
  1094. package/dist/utils/react/useControlledFocusVisible.js.map +1 -1
  1095. package/dist/utils/react/useEventBus.js +43 -18
  1096. package/dist/utils/react/useEventBus.js.map +1 -1
  1097. package/dist/utils/react/useId.js +2 -1
  1098. package/dist/utils/react/useId.js.map +1 -1
  1099. package/dist/utils/react/useIsDarwin.js +29 -16
  1100. package/dist/utils/react/useIsDarwin.js.map +1 -1
  1101. package/dist/utils/react/useKeySymbols.js +23 -9
  1102. package/dist/utils/react/useKeySymbols.js.map +1 -1
  1103. package/dist/utils/react/useLayoutEffect.js +1 -1
  1104. package/dist/utils/react/useLayoutEffect.js.map +1 -1
  1105. package/dist/utils/react/useLocalStorage.js +75 -30
  1106. package/dist/utils/react/useLocalStorage.js.map +1 -1
  1107. package/dist/utils/react/useMergeStyles.js +1 -1
  1108. package/dist/utils/react/useMergeStyles.js.map +1 -1
  1109. package/dist/utils/react/useOverlayEscapeGuard.js +25 -9
  1110. package/dist/utils/react/useOverlayEscapeGuard.js.map +1 -1
  1111. package/dist/utils/react/usePopoverSync.js +175 -73
  1112. package/dist/utils/react/usePopoverSync.js.map +1 -1
  1113. package/dist/utils/react/useQaProps.js +1 -1
  1114. package/dist/utils/react/useQaProps.js.map +1 -1
  1115. package/dist/utils/react/useScheme.js +1 -1
  1116. package/dist/utils/react/useScheme.js.map +1 -1
  1117. package/dist/utils/react/useViewportSize.js +43 -19
  1118. package/dist/utils/react/useViewportSize.js.map +1 -1
  1119. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  1120. package/dist/utils/react/wrapNodeIfPlain.js.map +1 -1
  1121. package/dist/utils/selection.js +1 -1
  1122. package/dist/utils/selection.js.map +1 -1
  1123. package/dist/utils/styles.js +1 -1
  1124. package/dist/utils/styles.js.map +1 -1
  1125. package/dist/utils/tree.js +1 -1
  1126. package/dist/utils/tree.js.map +1 -1
  1127. package/dist/utils/warnings.js +1 -1
  1128. package/dist/utils/warnings.js.map +1 -1
  1129. package/dist/version.js +2 -2
  1130. package/dist/version.js.map +1 -1
  1131. package/docs/FieldProperties.md +2 -2
  1132. package/docs/Usage.md +9 -1
  1133. package/docs/components/actions/ButtonSplit.md +2 -0
  1134. package/docs/components/content/InfoBadge.md +1 -1
  1135. package/docs/components/content/InlineInput.md +1 -1
  1136. package/docs/components/content/Layout.md +1 -1
  1137. package/docs/components/content/Tag.md +10 -2
  1138. package/docs/components/fields/Checkbox.md +11 -0
  1139. package/docs/components/fields/ColorInput.md +15 -8
  1140. package/docs/components/fields/ColorPicker.md +16 -9
  1141. package/docs/components/fields/ComboBox.md +16 -12
  1142. package/docs/components/fields/DatePicker.md +2 -0
  1143. package/docs/components/fields/FilterListBox.md +24 -19
  1144. package/docs/components/fields/FilterPicker.md +27 -20
  1145. package/docs/components/fields/ListBox.md +36 -26
  1146. package/docs/components/fields/PeriodPicker.md +2 -0
  1147. package/docs/components/fields/Picker.md +30 -22
  1148. package/docs/components/fields/RadioGroup.md +2 -2
  1149. package/docs/components/fields/Select.md +21 -12
  1150. package/docs/components/form/Field.md +4 -4
  1151. package/docs/components/form/Form.md +61 -578
  1152. package/docs/components/form/ModernForm.md +22 -1
  1153. package/docs/components/navigation/Tabs.md +3 -3
  1154. package/docs/components/overlays/Dialog.md +30 -3
  1155. package/docs/components/overlays/DialogForm.md +122 -263
  1156. package/docs/components/overlays/DialogTrigger.md +1 -1
  1157. package/docs/components/overlays/UseDialogContainer.md +11 -13
  1158. package/docs/modern-form-guide.md +22 -1
  1159. package/docs/modern-form-migration.md +1 -1
  1160. package/package.json +7 -2
@@ -1 +1 @@
1
- {"version":3,"file":"PeriodPicker.js","names":["Calendar","DateInputBase","mergeProps"],"sources":["../../../../src/components/fields/DatePicker/PeriodPicker.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport {\n BaseProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n Styles,\n tasty,\n} from '@tenphi/tasty';\nimport { forwardRef, useId, useRef } from 'react';\nimport {\n AriaDatePickerProps,\n DateValue,\n useDatePicker,\n useFocusRing,\n useLocale,\n} from 'react-aria';\nimport { useDatePickerState } from 'react-stately';\n\nimport { useI18n } from '../../../i18n';\nimport { FieldBaseProps } from '../../../shared';\nimport { mergeProps } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\nimport { useFieldProps, wrapWithField } from '../../form';\nimport { Calendar } from '../../other/Calendar/Calendar';\nimport { PeriodCalendar } from '../../other/Calendar/PeriodCalendar';\nimport { Dialog, DialogTrigger } from '../../overlays/Dialog';\n\nimport { DateInputBase } from './DateInputBase';\nimport { DatePickerButton } from './DatePickerButton';\nimport { formatPeriod, PickerType, snapToPeriod } from './period';\nimport { useFocusManagerRef } from './utils';\n\nconst PeriodValueElement = tasty({\n qa: 'PeriodPickerValue',\n styles: {\n preset: 't3',\n width: 'max 100%',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n color: {\n '': '#dark',\n placeholder: '#dark.30',\n disabled: '#dark.30',\n },\n },\n});\n\nexport interface CubePeriodPickerProps<T extends DateValue = DateValue>\n extends Omit<\n AriaDatePickerProps<T>,\n 'errorMessage' | 'granularity' | 'form' | 'name'\n >,\n BaseProps,\n ContainerStyleProps,\n FieldBaseProps<T | null | undefined> {\n /** Which period the picker selects. Set by the concrete picker components. */\n picker?: PickerType;\n wrapperStyles?: Styles;\n inputStyles?: Styles;\n triggerStyles?: Styles;\n styles?: Styles;\n size?: 'small' | 'medium' | 'large' | (string & {});\n shouldFlip?: boolean;\n /** Placeholder shown when no value is selected. */\n placeholder?: string;\n /** Override how the selected value is rendered as text. */\n formatValue?: (date: DateValue, picker: PickerType, locale: string) => string;\n}\n\nfunction PeriodPicker<T extends DateValue>(\n props: CubePeriodPickerProps<T>,\n ref: FocusableRef<HTMLElement>,\n) {\n const { t } = useI18n();\n\n props = useFieldProps(props, {\n defaultValidationTrigger: 'onBlur',\n });\n\n let styles = extractStyles(props, CONTAINER_STYLES);\n\n let {\n qa,\n size,\n picker = 'month',\n placeholder,\n formatValue,\n isDisabled,\n isReadOnly,\n isInvalid,\n isValid,\n autoFocus,\n } = props;\n\n let defaultPlaceholder: Record<PickerType, string> = {\n week: t('datePicker.selectWeek', 'Select week'),\n month: t('datePicker.selectMonth', 'Select month'),\n quarter: t('datePicker.selectQuarter', 'Select quarter'),\n year: t('datePicker.selectYear', 'Select year'),\n };\n\n let { locale } = useLocale();\n let targetRef = useRef<HTMLDivElement>(null);\n let state = useDatePickerState({\n ...props,\n granularity: 'day',\n shouldCloseOnSelect: true,\n });\n let { isOpen, setOpen } = state;\n\n let domRef = useFocusManagerRef(ref);\n\n let { isFocused: isFocusedButton, focusProps: focusPropsButton } =\n useFocusRing({\n within: false,\n isTextInput: false,\n autoFocus,\n });\n\n let { groupProps, labelProps, buttonProps, dialogProps, calendarProps } =\n useDatePicker({ ...props, granularity: 'day' }, state, targetRef);\n\n let handleSelect = (date: DateValue) => {\n state.setValue(snapToPeriod(date, picker, locale));\n setOpen(false);\n };\n\n let displayText = state.value\n ? (formatValue ?? formatPeriod)(state.value, picker, locale)\n : placeholder ?? defaultPlaceholder[picker];\n\n // The value is rendered as text rather than editable segments, so the trigger\n // has to point at it to announce the current selection.\n let valueId = useId();\n\n const panel =\n picker === 'week' ? (\n <Calendar\n {...calendarProps}\n autoFocus\n pickerMode=\"week\"\n isDisabled={isDisabled}\n onChange={handleSelect}\n />\n ) : (\n <PeriodCalendar\n autoFocus\n picker={picker}\n value={calendarProps.value}\n minValue={calendarProps.minValue}\n maxValue={calendarProps.maxValue}\n isDateUnavailable={calendarProps.isDateUnavailable}\n isDisabled={isDisabled}\n onChange={handleSelect}\n />\n );\n\n const component = (\n <DateInputBase\n ref={targetRef}\n qa={qa || 'PeriodPicker'}\n inputType=\"datepicker\"\n styles={{ display: 'grid', ...styles, ...props.wrapperStyles }}\n inputStyles={{\n cursor: isDisabled || isReadOnly ? 'default' : 'pointer',\n ...props.inputStyles,\n }}\n disableFocusRing={isFocusedButton}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n isValid={isValid}\n size={size}\n fieldProps={groupProps}\n suffix={\n <DialogTrigger\n hideArrow\n type=\"popover\"\n mobileType=\"tray\"\n placement=\"bottom right\"\n targetRef={targetRef}\n isOpen={isOpen}\n shouldFlip={props.shouldFlip}\n onOpenChange={setOpen}\n >\n <DatePickerButton\n size={size}\n {...mergeProps(buttonProps, focusPropsButton)}\n aria-describedby={valueId}\n // Passed separately, not merged: only the field-disabled half is\n // inherited. See `DatePickerButton`.\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n styles={props.triggerStyles}\n />\n <Dialog {...dialogProps} width=\"max-content\">\n {panel}\n </Dialog>\n </DialogTrigger>\n }\n >\n <PeriodValueElement\n id={valueId}\n mods={{ placeholder: !state.value, disabled: isDisabled }}\n onClick={() => !isDisabled && !isReadOnly && setOpen(true)}\n >\n {displayText}\n </PeriodValueElement>\n </DateInputBase>\n );\n\n return wrapWithField(component, domRef, {\n ...props,\n labelProps: mergeProps(props.labelProps, labelProps),\n });\n}\n\nconst _PeriodPicker = forwardRef(PeriodPicker);\n\n_PeriodPicker.displayName = 'PeriodPicker';\n\nexport { _PeriodPicker as PeriodPicker };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAgCA,MAAM,qBAAqB,MAAM;CAC/B,IAAI;CACJ,QAAQ;EACN,QAAQ;EACR,OAAO;EACP,YAAY;EACZ,cAAc;EACd,UAAU;EACV,OAAO;GACL,IAAI;GACJ,aAAa;GACb,UAAU;GACX;EACF;CACF,CAAC;AAwBF,SAAS,aACP,OACA,KACA;CACA,MAAM,EAAE,MAAM,SAAS;AAEvB,SAAQ,cAAc,OAAO,EAC3B,0BAA0B,UAC3B,CAAC;CAEF,IAAI,SAAS,cAAc,OAAO,iBAAiB;CAEnD,IAAI,EACF,IACA,MACA,SAAS,SACT,aACA,aACA,YACA,YACA,WACA,SACA,cACE;CAEJ,IAAI,qBAAiD;EACnD,MAAM,EAAE,yBAAyB,cAAc;EAC/C,OAAO,EAAE,0BAA0B,eAAe;EAClD,SAAS,EAAE,4BAA4B,iBAAiB;EACxD,MAAM,EAAE,yBAAyB,cAAc;EAChD;CAED,IAAI,EAAE,WAAW,WAAW;CAC5B,IAAI,YAAY,OAAuB,KAAK;CAC5C,IAAI,QAAQ,mBAAmB;EAC7B,GAAG;EACH,aAAa;EACb,qBAAqB;EACtB,CAAC;CACF,IAAI,EAAE,QAAQ,YAAY;CAE1B,IAAI,SAAS,mBAAmB,IAAI;CAEpC,IAAI,EAAE,WAAW,iBAAiB,YAAY,qBAC5C,aAAa;EACX,QAAQ;EACR,aAAa;EACb;EACD,CAAC;CAEJ,IAAI,EAAE,YAAY,YAAY,aAAa,aAAa,kBACtD,cAAc;EAAE,GAAG;EAAO,aAAa;EAAO,EAAE,OAAO,UAAU;CAEnE,IAAI,gBAAgB,SAAoB;AACtC,QAAM,SAAS,aAAa,MAAM,QAAQ,OAAO,CAAC;AAClD,UAAQ,MAAM;;CAGhB,IAAI,cAAc,MAAM,SACnB,eAAe,cAAc,MAAM,OAAO,QAAQ,OAAO,GAC1D,eAAe,mBAAmB;CAItC,IAAI,UAAU,OAAO;CAErB,MAAM,QACJ,WAAW,SACT,oBAACA;EACC,GAAI;EACJ;EACA,YAAW;EACC;EACZ,UAAU;GACV,GAEF,oBAAC;EACC;EACQ;EACR,OAAO,cAAc;EACrB,UAAU,cAAc;EACxB,UAAU,cAAc;EACxB,mBAAmB,cAAc;EACrB;EACZ,UAAU;GACV;AAwDN,QAAO,cApDL,oBAACC;EACC,KAAK;EACL,IAAI,MAAM;EACV,WAAU;EACV,QAAQ;GAAE,SAAS;GAAQ,GAAG;GAAQ,GAAG,MAAM;GAAe;EAC9D,aAAa;GACX,QAAQ,cAAc,aAAa,YAAY;GAC/C,GAAG,MAAM;GACV;EACD,kBAAkB;EACN;EACD;EACF;EACH;EACN,YAAY;EACZ,QACE,qBAAC;GACC;GACA,MAAK;GACL,YAAW;GACX,WAAU;GACC;GACH;GACR,YAAY,MAAM;GAClB,cAAc;cAEd,oBAAC;IACO;IACN,GAAIC,aAAW,aAAa,iBAAiB;IAC7C,oBAAkB;IAGN;IACA;IACZ,QAAQ,MAAM;KACd,EACF,oBAAC;IAAO,GAAI;IAAa,OAAM;cAC5B;KACM;IACK;YAGlB,oBAAC;GACC,IAAI;GACJ,MAAM;IAAE,aAAa,CAAC,MAAM;IAAO,UAAU;IAAY;GACzD,eAAe,CAAC,cAAc,CAAC,cAAc,QAAQ,KAAK;aAEzD;IACkB;GACP,EAGc,QAAQ;EACtC,GAAG;EACH,YAAYA,aAAW,MAAM,YAAY,WAAW;EACrD,CAAC;;AAGJ,MAAM,gBAAgB,WAAW,aAAa;AAE9C,cAAc,cAAc"}
1
+ {"version":3,"file":"PeriodPicker.js","names":["FocusableRef","BaseProps","CONTAINER_STYLES","ContainerStyleProps","Styles","tasty","forwardRef","RefObject","useId","useRef","AriaDatePickerProps","DateValue","Placement","useDatePicker","useFocusRing","useLocale","useDatePickerState","useI18n","FieldBaseProps","mergeProps","extractStyles","useFieldProps","wrapWithField","Calendar","PeriodCalendar","Dialog","DialogTrigger","DateInputBase","DatePickerButton","formatPeriod","PickerType","snapToPeriod","useFocusManagerRef","PeriodValueElement","qa","styles","preset","width","whiteSpace","textOverflow","overflow","color","placeholder","disabled","CubePeriodPickerProps","Omit","T","picker","wrapperStyles","inputStyles","triggerStyles","size","shouldFlip","targetRef","HTMLElement","placement","formatValue","date","locale","PeriodPicker","props","ref","$","_c","t","t0","Symbol","for","defaultValidationTrigger","t1","t2","isDisabled","isReadOnly","isInvalid","isValid","autoFocus","undefined","t3","t4","t5","t6","t7","week","month","quarter","year","defaultPlaceholder","t8","granularity","shouldCloseOnSelect","state","isOpen","setOpen","domRef","t9","within","isTextInput","isFocused","isFocusedButton","focusProps","focusPropsButton","t10","groupProps","labelProps","buttonProps","dialogProps","calendarProps","t11","setValue","handleSelect","t12","value","displayText","valueId","t13","minValue","maxValue","isDateUnavailable","panel","t14","t15","display","t16","t17","cursor","t18","t19","t20","t21","t22","t23","t24","t25","t26","t27","t28","t29","component","t30","_PeriodPicker","displayName"],"sources":["../../../../src/components/fields/DatePicker/PeriodPicker.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport {\n BaseProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n Styles,\n tasty,\n} from '@tenphi/tasty';\nimport { forwardRef, RefObject, useId, useRef } from 'react';\nimport {\n AriaDatePickerProps,\n DateValue,\n Placement,\n useDatePicker,\n useFocusRing,\n useLocale,\n} from 'react-aria';\nimport { useDatePickerState } from 'react-stately';\n\nimport { useI18n } from '../../../i18n';\nimport { FieldBaseProps } from '../../../shared';\nimport { mergeProps } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\nimport { useFieldProps, wrapWithField } from '../../form';\nimport { Calendar } from '../../other/Calendar/Calendar';\nimport { PeriodCalendar } from '../../other/Calendar/PeriodCalendar';\nimport { Dialog, DialogTrigger } from '../../overlays/Dialog';\n\nimport { DateInputBase } from './DateInputBase';\nimport { DatePickerButton } from './DatePickerButton';\nimport { formatPeriod, PickerType, snapToPeriod } from './period';\nimport { useFocusManagerRef } from './utils';\n\nconst PeriodValueElement = tasty({\n qa: 'PeriodPickerValue',\n styles: {\n preset: 't3',\n width: 'max 100%',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n color: {\n '': '#dark',\n placeholder: '#dark.30',\n disabled: '#dark.30',\n },\n },\n});\n\nexport interface CubePeriodPickerProps<T extends DateValue = DateValue>\n extends Omit<\n AriaDatePickerProps<T>,\n 'errorMessage' | 'granularity' | 'form' | 'name'\n >,\n BaseProps,\n ContainerStyleProps,\n FieldBaseProps<T | null | undefined> {\n /** Which period the picker selects. Set by the concrete picker components. */\n picker?: PickerType;\n wrapperStyles?: Styles;\n inputStyles?: Styles;\n triggerStyles?: Styles;\n styles?: Styles;\n size?: 'small' | 'medium' | 'large' | (string & {});\n shouldFlip?: boolean;\n /**\n * The ref of the element the popover should visually attach itself to.\n * Defaults to the field wrapper.\n *\n * Forwarded to `DialogTrigger`, so the anchor also becomes what outside-click\n * dismissal treats as the trigger.\n */\n targetRef?: RefObject<HTMLElement | null>;\n /**\n * Placement of the popover relative to the anchor.\n * Accepts React Aria's `Placement` strings (e.g. `'bottom start'`,\n * `'top start'`, `'right top'`, `'left top'`).\n * @default 'bottom right'\n */\n placement?: Placement;\n /** Placeholder shown when no value is selected. */\n placeholder?: string;\n /** Override how the selected value is rendered as text. */\n formatValue?: (date: DateValue, picker: PickerType, locale: string) => string;\n}\n\nfunction PeriodPicker<T extends DateValue>(\n props: CubePeriodPickerProps<T>,\n ref: FocusableRef<HTMLElement>,\n) {\n const { t } = useI18n();\n\n props = useFieldProps(props, {\n defaultValidationTrigger: 'onBlur',\n });\n\n let styles = extractStyles(props, CONTAINER_STYLES);\n\n let {\n qa,\n size,\n picker = 'month',\n placeholder,\n formatValue,\n isDisabled,\n isReadOnly,\n isInvalid,\n isValid,\n autoFocus,\n } = props;\n\n let defaultPlaceholder: Record<PickerType, string> = {\n week: t('datePicker.selectWeek', 'Select week'),\n month: t('datePicker.selectMonth', 'Select month'),\n quarter: t('datePicker.selectQuarter', 'Select quarter'),\n year: t('datePicker.selectYear', 'Select year'),\n };\n\n let { locale } = useLocale();\n let targetRef = useRef<HTMLDivElement>(null);\n let state = useDatePickerState({\n ...props,\n granularity: 'day',\n shouldCloseOnSelect: true,\n });\n let { isOpen, setOpen } = state;\n\n let domRef = useFocusManagerRef(ref);\n\n let { isFocused: isFocusedButton, focusProps: focusPropsButton } =\n useFocusRing({\n within: false,\n isTextInput: false,\n autoFocus,\n });\n\n let { groupProps, labelProps, buttonProps, dialogProps, calendarProps } =\n useDatePicker({ ...props, granularity: 'day' }, state, targetRef);\n\n let handleSelect = (date: DateValue) => {\n state.setValue(snapToPeriod(date, picker, locale));\n setOpen(false);\n };\n\n let displayText = state.value\n ? (formatValue ?? formatPeriod)(state.value, picker, locale)\n : placeholder ?? defaultPlaceholder[picker];\n\n // The value is rendered as text rather than editable segments, so the trigger\n // has to point at it to announce the current selection.\n let valueId = useId();\n\n const panel =\n picker === 'week' ? (\n <Calendar\n {...calendarProps}\n autoFocus\n pickerMode=\"week\"\n isDisabled={isDisabled}\n onChange={handleSelect}\n />\n ) : (\n <PeriodCalendar\n autoFocus\n picker={picker}\n value={calendarProps.value}\n minValue={calendarProps.minValue}\n maxValue={calendarProps.maxValue}\n isDateUnavailable={calendarProps.isDateUnavailable}\n isDisabled={isDisabled}\n onChange={handleSelect}\n />\n );\n\n const component = (\n <DateInputBase\n ref={targetRef}\n qa={qa || 'PeriodPicker'}\n inputType=\"datepicker\"\n styles={{ display: 'grid', ...styles, ...props.wrapperStyles }}\n inputStyles={{\n cursor: isDisabled || isReadOnly ? 'default' : 'pointer',\n ...props.inputStyles,\n }}\n disableFocusRing={isFocusedButton}\n isDisabled={isDisabled}\n isInvalid={isInvalid}\n isValid={isValid}\n size={size}\n fieldProps={groupProps}\n suffix={\n <DialogTrigger\n hideArrow\n type=\"popover\"\n mobileType=\"tray\"\n placement={props.placement ?? 'bottom right'}\n targetRef={props.targetRef ?? targetRef}\n isOpen={isOpen}\n shouldFlip={props.shouldFlip}\n onOpenChange={setOpen}\n >\n <DatePickerButton\n size={size}\n {...mergeProps(buttonProps, focusPropsButton)}\n aria-describedby={valueId}\n // Passed separately, not merged: only the field-disabled half is\n // inherited. See `DatePickerButton`.\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n styles={props.triggerStyles}\n />\n <Dialog {...dialogProps} width=\"max-content\">\n {panel}\n </Dialog>\n </DialogTrigger>\n }\n >\n <PeriodValueElement\n id={valueId}\n mods={{ placeholder: !state.value, disabled: isDisabled }}\n onClick={() => !isDisabled && !isReadOnly && setOpen(true)}\n >\n {displayText}\n </PeriodValueElement>\n </DateInputBase>\n );\n\n return wrapWithField(component, domRef, {\n ...props,\n labelProps: mergeProps(props.labelProps, labelProps),\n });\n}\n\nconst _PeriodPicker = forwardRef(PeriodPicker);\n\n_PeriodPicker.displayName = 'PeriodPicker';\n\nexport { _PeriodPicker as PeriodPicker };\n"],"mappings":"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"}
@@ -1,15 +1,24 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.182.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.184.0 | Cube Dev Team */
2
2
  import { _PeriodPicker } from "./PeriodPicker.js";
3
+ import { c } from "react-compiler-runtime";
3
4
  import { forwardRef } from "react";
4
5
  import { jsx } from "react/jsx-runtime";
5
6
 
6
7
  //#region src/components/fields/DatePicker/QuarterPicker.tsx
7
8
  function QuarterPicker(props, ref) {
8
- return /* @__PURE__ */ jsx(_PeriodPicker, {
9
- ref,
10
- picker: "quarter",
11
- ...props
12
- });
9
+ const $ = c(3);
10
+ let t0;
11
+ if ($[0] !== props || $[1] !== ref) {
12
+ t0 = /* @__PURE__ */ jsx(_PeriodPicker, {
13
+ ref,
14
+ picker: "quarter",
15
+ ...props
16
+ });
17
+ $[0] = props;
18
+ $[1] = ref;
19
+ $[2] = t0;
20
+ } else t0 = $[2];
21
+ return t0;
13
22
  }
14
23
  const _QuarterPicker = forwardRef(QuarterPicker);
15
24
  _QuarterPicker.displayName = "QuarterPicker";
@@ -1 +1 @@
1
- {"version":3,"file":"QuarterPicker.js","names":["PeriodPicker"],"sources":["../../../../src/components/fields/DatePicker/QuarterPicker.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport { forwardRef } from 'react';\nimport { DateValue } from 'react-aria';\n\nimport { CubePeriodPickerProps, PeriodPicker } from './PeriodPicker';\n\nexport interface CubeQuarterPickerProps<T extends DateValue = DateValue>\n extends Omit<CubePeriodPickerProps<T>, 'picker'> {}\n\nfunction QuarterPicker<T extends DateValue>(\n props: CubeQuarterPickerProps<T>,\n ref: FocusableRef<HTMLElement>,\n) {\n return <PeriodPicker ref={ref} picker=\"quarter\" {...props} />;\n}\n\nconst _QuarterPicker = forwardRef(QuarterPicker);\n\n_QuarterPicker.displayName = 'QuarterPicker';\n\nexport { _QuarterPicker as QuarterPicker };\n"],"mappings":";;;;;;AASA,SAAS,cACP,OACA,KACA;AACA,QAAO,oBAACA;EAAkB;EAAK,QAAO;EAAU,GAAI;GAAS;;AAG/D,MAAM,iBAAiB,WAAW,cAAc;AAEhD,eAAe,cAAc"}
1
+ {"version":3,"file":"QuarterPicker.js","names":["FocusableRef","forwardRef","DateValue","CubePeriodPickerProps","PeriodPicker","CubeQuarterPickerProps","Omit","T","QuarterPicker","props","ref","$","_c","t0","_QuarterPicker","displayName"],"sources":["../../../../src/components/fields/DatePicker/QuarterPicker.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport { forwardRef } from 'react';\nimport { DateValue } from 'react-aria';\n\nimport { CubePeriodPickerProps, PeriodPicker } from './PeriodPicker';\n\nexport interface CubeQuarterPickerProps<T extends DateValue = DateValue>\n extends Omit<CubePeriodPickerProps<T>, 'picker'> {}\n\nfunction QuarterPicker<T extends DateValue>(\n props: CubeQuarterPickerProps<T>,\n ref: FocusableRef<HTMLElement>,\n) {\n return <PeriodPicker ref={ref} picker=\"quarter\" {...props} />;\n}\n\nconst _QuarterPicker = forwardRef(QuarterPicker);\n\n_QuarterPicker.displayName = 'QuarterPicker';\n\nexport { _QuarterPicker as QuarterPicker };\n"],"mappings":";;;;;;;AASA,SAAAQ,cAAAC,OAAAC,KAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAF,SAAAE,EAAA,OAAAD,KAAA;AAISG,OAAA,oBAAC;GAAkBH;GAAY,QAAA;GAAS,GAAKD;IAAS;AAAAE,IAAA,KAAAF;AAAAE,IAAA,KAAAD;AAAAC,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAAtDE;;AAGT,MAAMC,iBAAiBb,WAAWO,cAAc;AAEhDM,eAAeC,cAAc"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.182.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.184.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useFieldProps } from "../../form/Form/use-field/use-field-props.js";
@@ -7,6 +7,7 @@ import { _DateInputBase } from "./DateInputBase.js";
7
7
  import { DatePickerSegment } from "./DatePickerSegment.js";
8
8
  import { DEFAULT_TIME_PROPS } from "./props.js";
9
9
  import { useFocusManagerRef } from "./utils.js";
10
+ import { c } from "react-compiler-runtime";
10
11
  import { CONTAINER_STYLES } from "@tenphi/tasty";
11
12
  import { forwardRef, useRef } from "react";
12
13
  import { jsx } from "react/jsx-runtime";
@@ -15,17 +16,24 @@ import { useTimeFieldState } from "react-stately";
15
16
 
16
17
  //#region src/components/fields/DatePicker/TimeInput.tsx
17
18
  function TimeInput(props, ref) {
18
- props = useFieldProps(props, { defaultValidationTrigger: "onBlur" });
19
+ const $ = c(1);
20
+ let t0;
21
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
22
+ t0 = { defaultValidationTrigger: "onBlur" };
23
+ $[0] = t0;
24
+ } else t0 = $[0];
25
+ props = useFieldProps(props, t0);
19
26
  props = Object.assign({}, DEFAULT_TIME_PROPS, props);
20
27
  extractStyles(props, CONTAINER_STYLES);
21
- let { qa, inputStyles, wrapperStyles, autoFocus, isDisabled, isReadOnly, isRequired, isInvalid, isValid, size = "medium", labelProps: userLabelProps } = props;
22
- let domRef = useFocusManagerRef(ref);
23
- let state = useTimeFieldState({
28
+ const { qa, inputStyles, wrapperStyles, autoFocus, isDisabled, isReadOnly, isRequired, isInvalid, isValid, size: t1, labelProps: userLabelProps } = props;
29
+ const size = t1 === void 0 ? "medium" : t1;
30
+ const domRef = useFocusManagerRef(ref);
31
+ const state = useTimeFieldState({
24
32
  ...props,
25
33
  locale: "en-US"
26
34
  });
27
- let fieldRef = useRef(null);
28
- let { labelProps, fieldProps } = useTimeField(props, state, fieldRef);
35
+ const fieldRef = useRef(null);
36
+ const { labelProps, fieldProps } = useTimeField(props, state, fieldRef);
29
37
  return wrapWithField(/* @__PURE__ */ jsx(_DateInputBase, {
30
38
  ref: fieldRef,
31
39
  qa: qa || "TimeInput",
@@ -1 +1 @@
1
- {"version":3,"file":"TimeInput.js","names":["DateInputBase","mergeProps"],"sources":["../../../../src/components/fields/DatePicker/TimeInput.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport {\n BaseProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n Styles,\n} from '@tenphi/tasty';\nimport { forwardRef, useRef } from 'react';\nimport {\n AriaTimeFieldProps,\n DateValue,\n TimeValue,\n useTimeField,\n} from 'react-aria';\nimport { useTimeFieldState } from 'react-stately';\n\nimport { FieldBaseProps } from '../../../shared';\nimport { mergeProps } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\nimport { useFieldProps, wrapWithField } from '../../form';\n\nimport { DateInputBase } from './DateInputBase';\nimport { DatePickerSegment } from './DatePickerSegment';\nimport { DEFAULT_TIME_PROPS } from './props';\nimport { Granularity } from './types';\nimport { useFocusManagerRef } from './utils';\n\nexport interface CubeTimeInputProps<T extends TimeValue = TimeValue>\n extends Omit<AriaTimeFieldProps<T>, 'errorMessage' | 'form' | 'name'>,\n BaseProps,\n ContainerStyleProps,\n FieldBaseProps<TimeValue | null | undefined> {\n wrapperStyles?: Styles;\n inputStyles?: Styles;\n styles?: Styles;\n size?: 'small' | 'medium' | 'large' | (string & {});\n value?: TimeValue;\n /** The minimum allowed date that a user may select. */\n minValue?: TimeValue;\n /** The maximum allowed date that a user may select. */\n maxValue?: TimeValue;\n /** Callback that is called for each date of the calendar. If it returns true, then the date is unavailable. */\n isDateUnavailable?: (date: DateValue) => boolean;\n /** A placeholder date that influences the format of the placeholder shown when no value is selected. Defaults to today's date at midnight. */\n placeholderValue?: TimeValue;\n /** Whether to display the time in 12 or 24 hour format. By default, this is determined by the user's locale. */\n hourCycle?: 12 | 24;\n /** Determines the smallest unit that is displayed in the date picker. By default, this is `\"day\"` for dates, and `\"minute\"` for times. */\n granularity?: Granularity;\n /**\n * Whether to hide the time zone abbreviation.\n * @default false\n */\n hideTimeZone?: boolean;\n onChange?: (value: TimeValue) => void;\n}\n\nfunction TimeInput<T extends TimeValue>(\n props: CubeTimeInputProps<T>,\n ref: FocusableRef<HTMLElement>,\n) {\n props = useFieldProps(props, {\n defaultValidationTrigger: 'onBlur',\n });\n props = Object.assign({}, DEFAULT_TIME_PROPS, props);\n\n let styles = extractStyles(props, CONTAINER_STYLES);\n\n let {\n qa,\n inputStyles,\n wrapperStyles,\n autoFocus,\n isDisabled,\n isReadOnly,\n isRequired,\n isInvalid,\n isValid,\n size = 'medium',\n labelProps: userLabelProps,\n } = props;\n\n let domRef = useFocusManagerRef(ref);\n // let { locale } = useLocale();\n let state = useTimeFieldState({\n ...props,\n locale: 'en-US',\n });\n\n let fieldRef = useRef(null);\n let { labelProps, fieldProps } = useTimeField(props, state, fieldRef);\n\n const timeInput = (\n <DateInputBase\n ref={fieldRef}\n qa={qa || 'TimeInput'}\n inputType=\"timeinput\"\n size={size}\n fieldProps={fieldProps}\n isDisabled={isDisabled}\n autoFocus={autoFocus}\n inputStyles={inputStyles}\n styles={wrapperStyles}\n isInvalid={isInvalid}\n isValid={isValid}\n >\n {state.segments.map((segment, i) => (\n <DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired}\n />\n ))}\n </DateInputBase>\n );\n\n return wrapWithField(timeInput, domRef, {\n ...props,\n labelProps: mergeProps(labelProps, userLabelProps),\n });\n}\n\n/**\n * TimeFields allow users to enter and edit time values using a keyboard.\n * Each part of the time is displayed in an individually editable segment.\n */\nconst _TimeInput = forwardRef(TimeInput);\n\n_TimeInput.displayName = 'TimeInput';\n\nexport { _TimeInput as TimeInput };\n"],"mappings":";;;;;;;;;;;;;;;;AAyDA,SAAS,UACP,OACA,KACA;AACA,SAAQ,cAAc,OAAO,EAC3B,0BAA0B,UAC3B,CAAC;AACF,SAAQ,OAAO,OAAO,EAAE,EAAE,oBAAoB,MAAM;AAEvC,eAAc,OAAO,iBAAiB;CAEnD,IAAI,EACF,IACA,aACA,eACA,WACA,YACA,YACA,YACA,WACA,SACA,OAAO,UACP,YAAY,mBACV;CAEJ,IAAI,SAAS,mBAAmB,IAAI;CAEpC,IAAI,QAAQ,kBAAkB;EAC5B,GAAG;EACH,QAAQ;EACT,CAAC;CAEF,IAAI,WAAW,OAAO,KAAK;CAC3B,IAAI,EAAE,YAAY,eAAe,aAAa,OAAO,OAAO,SAAS;AA6BrE,QAAO,cA1BL,oBAACA;EACC,KAAK;EACL,IAAI,MAAM;EACV,WAAU;EACJ;EACM;EACA;EACD;EACE;EACb,QAAQ;EACG;EACF;YAER,MAAM,SAAS,KAAK,SAAS,MAC5B,oBAAC;GAEU;GACF;GACK;GACA;GACA;KALP,EAML,CACF;GACY,EAGc,QAAQ;EACtC,GAAG;EACH,YAAYC,aAAW,YAAY,eAAe;EACnD,CAAC;;;;;;AAOJ,MAAM,aAAa,WAAW,UAAU;AAExC,WAAW,cAAc"}
1
+ {"version":3,"file":"TimeInput.js","names":["FocusableRef","BaseProps","CONTAINER_STYLES","ContainerStyleProps","Styles","forwardRef","useRef","AriaTimeFieldProps","DateValue","TimeValue","useTimeField","useTimeFieldState","FieldBaseProps","mergeProps","extractStyles","useFieldProps","wrapWithField","DateInputBase","DatePickerSegment","DEFAULT_TIME_PROPS","Granularity","useFocusManagerRef","CubeTimeInputProps","Omit","T","wrapperStyles","inputStyles","styles","size","value","minValue","maxValue","isDateUnavailable","date","placeholderValue","hourCycle","granularity","hideTimeZone","onChange","TimeInput","props","ref","$","_c","t0","Symbol","for","defaultValidationTrigger","Object","assign","qa","autoFocus","isDisabled","isReadOnly","isRequired","isInvalid","isValid","t1","labelProps","userLabelProps","undefined","domRef","state","locale","fieldRef","fieldProps","timeInput","segments","map","segment","i","_TimeInput","displayName"],"sources":["../../../../src/components/fields/DatePicker/TimeInput.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport {\n BaseProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n Styles,\n} from '@tenphi/tasty';\nimport { forwardRef, useRef } from 'react';\nimport {\n AriaTimeFieldProps,\n DateValue,\n TimeValue,\n useTimeField,\n} from 'react-aria';\nimport { useTimeFieldState } from 'react-stately';\n\nimport { FieldBaseProps } from '../../../shared';\nimport { mergeProps } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\nimport { useFieldProps, wrapWithField } from '../../form';\n\nimport { DateInputBase } from './DateInputBase';\nimport { DatePickerSegment } from './DatePickerSegment';\nimport { DEFAULT_TIME_PROPS } from './props';\nimport { Granularity } from './types';\nimport { useFocusManagerRef } from './utils';\n\nexport interface CubeTimeInputProps<T extends TimeValue = TimeValue>\n extends Omit<AriaTimeFieldProps<T>, 'errorMessage' | 'form' | 'name'>,\n BaseProps,\n ContainerStyleProps,\n FieldBaseProps<TimeValue | null | undefined> {\n wrapperStyles?: Styles;\n inputStyles?: Styles;\n styles?: Styles;\n size?: 'small' | 'medium' | 'large' | (string & {});\n value?: TimeValue;\n /** The minimum allowed date that a user may select. */\n minValue?: TimeValue;\n /** The maximum allowed date that a user may select. */\n maxValue?: TimeValue;\n /** Callback that is called for each date of the calendar. If it returns true, then the date is unavailable. */\n isDateUnavailable?: (date: DateValue) => boolean;\n /** A placeholder date that influences the format of the placeholder shown when no value is selected. Defaults to today's date at midnight. */\n placeholderValue?: TimeValue;\n /** Whether to display the time in 12 or 24 hour format. By default, this is determined by the user's locale. */\n hourCycle?: 12 | 24;\n /** Determines the smallest unit that is displayed in the date picker. By default, this is `\"day\"` for dates, and `\"minute\"` for times. */\n granularity?: Granularity;\n /**\n * Whether to hide the time zone abbreviation.\n * @default false\n */\n hideTimeZone?: boolean;\n onChange?: (value: TimeValue) => void;\n}\n\nfunction TimeInput<T extends TimeValue>(\n props: CubeTimeInputProps<T>,\n ref: FocusableRef<HTMLElement>,\n) {\n props = useFieldProps(props, {\n defaultValidationTrigger: 'onBlur',\n });\n props = Object.assign({}, DEFAULT_TIME_PROPS, props);\n\n let styles = extractStyles(props, CONTAINER_STYLES);\n\n let {\n qa,\n inputStyles,\n wrapperStyles,\n autoFocus,\n isDisabled,\n isReadOnly,\n isRequired,\n isInvalid,\n isValid,\n size = 'medium',\n labelProps: userLabelProps,\n } = props;\n\n let domRef = useFocusManagerRef(ref);\n // let { locale } = useLocale();\n let state = useTimeFieldState({\n ...props,\n locale: 'en-US',\n });\n\n let fieldRef = useRef(null);\n let { labelProps, fieldProps } = useTimeField(props, state, fieldRef);\n\n const timeInput = (\n <DateInputBase\n ref={fieldRef}\n qa={qa || 'TimeInput'}\n inputType=\"timeinput\"\n size={size}\n fieldProps={fieldProps}\n isDisabled={isDisabled}\n autoFocus={autoFocus}\n inputStyles={inputStyles}\n styles={wrapperStyles}\n isInvalid={isInvalid}\n isValid={isValid}\n >\n {state.segments.map((segment, i) => (\n <DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired}\n />\n ))}\n </DateInputBase>\n );\n\n return wrapWithField(timeInput, domRef, {\n ...props,\n labelProps: mergeProps(labelProps, userLabelProps),\n });\n}\n\n/**\n * TimeFields allow users to enter and edit time values using a keyboard.\n * Each part of the time is displayed in an individually editable segment.\n */\nconst _TimeInput = forwardRef(TimeInput);\n\n_TimeInput.displayName = 'TimeInput';\n\nexport { _TimeInput as TimeInput };\n"],"mappings":";;;;;;;;;;;;;;;;;AAyDA,SAAAuC,UAAAC,OAAAC,KAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAG,OAAAC,IAAA,4BAAA,EAAA;AAI+BF,OAAA,EAAAG,0BACD,UAC3B;AAAAL,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAFDF,SAAQzB,cAAcyB,OAAOI,GAE3B;AACFJ,SAAQQ,OAAMC,OAAQ,EAAE,EAAE9B,oBAAoBqB,MAAM;AAEvC1B,eAAc0B,OAAOtC,iBAAiB;CAEnD,MAAA,EAAAgD,IAAAxB,aAAAD,eAAA0B,WAAAC,YAAAC,YAAAC,YAAAC,WAAAC,SAAA5B,MAAA6B,IAAAC,YAAAC,mBAYInB;CAFF,MAAAZ,OAAA6B,OAAAG,SAAA,WAAAH;CAIF,MAAAI,SAAaxC,mBAAmBoB,IAAI;CAEpC,MAAAqB,QAAYnD,kBAAkB;EAAA,GACzB6B;EAAKuB,QACA;EACT,CAAC;CAEF,MAAAC,WAAe1D,OAAO,KAAK;CAC3B,MAAA,EAAAoD,YAAAO,eAAiCvD,aAAa8B,OAAOsB,OAAOE,SAAS;AA2BnE,QAEKhD,cA1BL,oBAAC;EACMgD,KAAAA;EACD,IAAAd,MAAA;EACM,WAAA;EACJtB;EACMqC;EACAb;EACDD;EACEzB;EACLD,QAAAA;EACG8B;EACFC;YAERM,MAAKK,SAASC,KAAKC,SAAAC,MAClB,oBAAC;GAEUD;GACFP;GACKV;GACAC;GACAC;KALPgB,EAOR,CAAA;GACa,EAGcT,QAAQ;EAAA,GACnCrB;EAAKkB,YACI7C,aAAW6C,YAAYC,eAAc;EAClD,CAAC;;;;;;AAOJ,MAAMY,aAAalE,WAAWkC,UAAU;AAExCgC,WAAWC,cAAc"}
@@ -1,15 +1,24 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.182.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.184.0 | Cube Dev Team */
2
2
  import { _PeriodPicker } from "./PeriodPicker.js";
3
+ import { c } from "react-compiler-runtime";
3
4
  import { forwardRef } from "react";
4
5
  import { jsx } from "react/jsx-runtime";
5
6
 
6
7
  //#region src/components/fields/DatePicker/WeekPicker.tsx
7
8
  function WeekPicker(props, ref) {
8
- return /* @__PURE__ */ jsx(_PeriodPicker, {
9
- ref,
10
- picker: "week",
11
- ...props
12
- });
9
+ const $ = c(3);
10
+ let t0;
11
+ if ($[0] !== props || $[1] !== ref) {
12
+ t0 = /* @__PURE__ */ jsx(_PeriodPicker, {
13
+ ref,
14
+ picker: "week",
15
+ ...props
16
+ });
17
+ $[0] = props;
18
+ $[1] = ref;
19
+ $[2] = t0;
20
+ } else t0 = $[2];
21
+ return t0;
13
22
  }
14
23
  const _WeekPicker = forwardRef(WeekPicker);
15
24
  _WeekPicker.displayName = "WeekPicker";
@@ -1 +1 @@
1
- {"version":3,"file":"WeekPicker.js","names":["PeriodPicker"],"sources":["../../../../src/components/fields/DatePicker/WeekPicker.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport { forwardRef } from 'react';\nimport { DateValue } from 'react-aria';\n\nimport { CubePeriodPickerProps, PeriodPicker } from './PeriodPicker';\n\nexport interface CubeWeekPickerProps<T extends DateValue = DateValue>\n extends Omit<CubePeriodPickerProps<T>, 'picker'> {}\n\nfunction WeekPicker<T extends DateValue>(\n props: CubeWeekPickerProps<T>,\n ref: FocusableRef<HTMLElement>,\n) {\n return <PeriodPicker ref={ref} picker=\"week\" {...props} />;\n}\n\nconst _WeekPicker = forwardRef(WeekPicker);\n\n_WeekPicker.displayName = 'WeekPicker';\n\nexport { _WeekPicker as WeekPicker };\n"],"mappings":";;;;;;AASA,SAAS,WACP,OACA,KACA;AACA,QAAO,oBAACA;EAAkB;EAAK,QAAO;EAAO,GAAI;GAAS;;AAG5D,MAAM,cAAc,WAAW,WAAW;AAE1C,YAAY,cAAc"}
1
+ {"version":3,"file":"WeekPicker.js","names":["FocusableRef","forwardRef","DateValue","CubePeriodPickerProps","PeriodPicker","CubeWeekPickerProps","Omit","T","WeekPicker","props","ref","$","_c","t0","_WeekPicker","displayName"],"sources":["../../../../src/components/fields/DatePicker/WeekPicker.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport { forwardRef } from 'react';\nimport { DateValue } from 'react-aria';\n\nimport { CubePeriodPickerProps, PeriodPicker } from './PeriodPicker';\n\nexport interface CubeWeekPickerProps<T extends DateValue = DateValue>\n extends Omit<CubePeriodPickerProps<T>, 'picker'> {}\n\nfunction WeekPicker<T extends DateValue>(\n props: CubeWeekPickerProps<T>,\n ref: FocusableRef<HTMLElement>,\n) {\n return <PeriodPicker ref={ref} picker=\"week\" {...props} />;\n}\n\nconst _WeekPicker = forwardRef(WeekPicker);\n\n_WeekPicker.displayName = 'WeekPicker';\n\nexport { _WeekPicker as WeekPicker };\n"],"mappings":";;;;;;;AASA,SAAAQ,WAAAC,OAAAC,KAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAF,SAAAE,EAAA,OAAAD,KAAA;AAISG,OAAA,oBAAC;GAAkBH;GAAY,QAAA;GAAM,GAAKD;IAAS;AAAAE,IAAA,KAAAF;AAAAE,IAAA,KAAAD;AAAAC,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAAnDE;;AAGT,MAAMC,cAAcb,WAAWO,WAAW;AAE1CM,YAAYC,cAAc"}
@@ -1,15 +1,24 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.182.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.184.0 | Cube Dev Team */
2
2
  import { _PeriodPicker } from "./PeriodPicker.js";
3
+ import { c } from "react-compiler-runtime";
3
4
  import { forwardRef } from "react";
4
5
  import { jsx } from "react/jsx-runtime";
5
6
 
6
7
  //#region src/components/fields/DatePicker/YearPicker.tsx
7
8
  function YearPicker(props, ref) {
8
- return /* @__PURE__ */ jsx(_PeriodPicker, {
9
- ref,
10
- picker: "year",
11
- ...props
12
- });
9
+ const $ = c(3);
10
+ let t0;
11
+ if ($[0] !== props || $[1] !== ref) {
12
+ t0 = /* @__PURE__ */ jsx(_PeriodPicker, {
13
+ ref,
14
+ picker: "year",
15
+ ...props
16
+ });
17
+ $[0] = props;
18
+ $[1] = ref;
19
+ $[2] = t0;
20
+ } else t0 = $[2];
21
+ return t0;
13
22
  }
14
23
  const _YearPicker = forwardRef(YearPicker);
15
24
  _YearPicker.displayName = "YearPicker";
@@ -1 +1 @@
1
- {"version":3,"file":"YearPicker.js","names":["PeriodPicker"],"sources":["../../../../src/components/fields/DatePicker/YearPicker.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport { forwardRef } from 'react';\nimport { DateValue } from 'react-aria';\n\nimport { CubePeriodPickerProps, PeriodPicker } from './PeriodPicker';\n\nexport interface CubeYearPickerProps<T extends DateValue = DateValue>\n extends Omit<CubePeriodPickerProps<T>, 'picker'> {}\n\nfunction YearPicker<T extends DateValue>(\n props: CubeYearPickerProps<T>,\n ref: FocusableRef<HTMLElement>,\n) {\n return <PeriodPicker ref={ref} picker=\"year\" {...props} />;\n}\n\nconst _YearPicker = forwardRef(YearPicker);\n\n_YearPicker.displayName = 'YearPicker';\n\nexport { _YearPicker as YearPicker };\n"],"mappings":";;;;;;AASA,SAAS,WACP,OACA,KACA;AACA,QAAO,oBAACA;EAAkB;EAAK,QAAO;EAAO,GAAI;GAAS;;AAG5D,MAAM,cAAc,WAAW,WAAW;AAE1C,YAAY,cAAc"}
1
+ {"version":3,"file":"YearPicker.js","names":["FocusableRef","forwardRef","DateValue","CubePeriodPickerProps","PeriodPicker","CubeYearPickerProps","Omit","T","YearPicker","props","ref","$","_c","t0","_YearPicker","displayName"],"sources":["../../../../src/components/fields/DatePicker/YearPicker.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport { forwardRef } from 'react';\nimport { DateValue } from 'react-aria';\n\nimport { CubePeriodPickerProps, PeriodPicker } from './PeriodPicker';\n\nexport interface CubeYearPickerProps<T extends DateValue = DateValue>\n extends Omit<CubePeriodPickerProps<T>, 'picker'> {}\n\nfunction YearPicker<T extends DateValue>(\n props: CubeYearPickerProps<T>,\n ref: FocusableRef<HTMLElement>,\n) {\n return <PeriodPicker ref={ref} picker=\"year\" {...props} />;\n}\n\nconst _YearPicker = forwardRef(YearPicker);\n\n_YearPicker.displayName = 'YearPicker';\n\nexport { _YearPicker as YearPicker };\n"],"mappings":";;;;;;;AASA,SAAAQ,WAAAC,OAAAC,KAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAF,SAAAE,EAAA,OAAAD,KAAA;AAISG,OAAA,oBAAC;GAAkBH;GAAY,QAAA;GAAM,GAAKD;IAAS;AAAAE,IAAA,KAAAF;AAAAE,IAAA,KAAAD;AAAAC,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAAnDE;;AAGT,MAAMC,cAAcb,WAAWO,WAAW;AAE1CM,YAAYC,cAAc"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.182.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.184.0 | Cube Dev Team */
2
2
  import { parseAbsolute } from "@internationalized/date";
3
3
 
4
4
  //#region src/components/fields/DatePicker/parseDate.ts
@@ -1 +1 @@
1
- {"version":3,"file":"parseDate.js","names":[],"sources":["../../../../src/components/fields/DatePicker/parseDate.ts"],"sourcesContent":["import { parseAbsolute } from '@internationalized/date';\n\nexport function parseAbsoluteDate(val: string | Date | undefined | null) {\n if (!val || (typeof val === 'string' && val.trim() === '')) {\n return undefined;\n }\n\n if (val instanceof Date) {\n return parseAbsolute(val.toISOString(), 'UTC');\n }\n\n try {\n parseAbsolute(val, 'UTC');\n } catch (e) {\n if (!Number.isNaN(Date.parse(val))) {\n return parseAbsolute(new Date(val).toISOString(), 'UTC');\n } else {\n console.error('Invalid date format', val);\n return undefined;\n }\n }\n}\n"],"mappings":";;;;AAEA,SAAgB,kBAAkB,KAAuC;AACvE,KAAI,CAAC,OAAQ,OAAO,QAAQ,YAAY,IAAI,MAAM,KAAK,GACrD;AAGF,KAAI,eAAe,KACjB,QAAO,cAAc,IAAI,aAAa,EAAE,MAAM;AAGhD,KAAI;AACF,gBAAc,KAAK,MAAM;UAClB,GAAG;AACV,MAAI,CAAC,OAAO,MAAM,KAAK,MAAM,IAAI,CAAC,CAChC,QAAO,cAAc,IAAI,KAAK,IAAI,CAAC,aAAa,EAAE,MAAM;OACnD;AACL,WAAQ,MAAM,uBAAuB,IAAI;AACzC"}
1
+ {"version":3,"file":"parseDate.js","names":["parseAbsolute","parseAbsoluteDate","val","Date","trim","undefined","toISOString","e","Number","isNaN","parse","console","error"],"sources":["../../../../src/components/fields/DatePicker/parseDate.ts"],"sourcesContent":["import { parseAbsolute } from '@internationalized/date';\n\nexport function parseAbsoluteDate(val: string | Date | undefined | null) {\n if (!val || (typeof val === 'string' && val.trim() === '')) {\n return undefined;\n }\n\n if (val instanceof Date) {\n return parseAbsolute(val.toISOString(), 'UTC');\n }\n\n try {\n parseAbsolute(val, 'UTC');\n } catch (e) {\n if (!Number.isNaN(Date.parse(val))) {\n return parseAbsolute(new Date(val).toISOString(), 'UTC');\n } else {\n console.error('Invalid date format', val);\n return undefined;\n }\n }\n}\n"],"mappings":";;;;AAEA,SAAgBC,kBAAkBC,KAAuC;AACvE,KAAI,CAACA,OAAQ,OAAOA,QAAQ,YAAYA,IAAIE,MAAM,KAAK,GACrD;AAGF,KAAIF,eAAeC,KACjB,QAAOH,cAAcE,IAAII,aAAa,EAAE,MAAM;AAGhD,KAAI;AACFN,gBAAcE,KAAK,MAAM;UAClBK,GAAG;AACV,MAAI,CAACC,OAAOC,MAAMN,KAAKO,MAAMR,IAAI,CAAC,CAChC,QAAOF,cAAc,IAAIG,KAAKD,IAAI,CAACI,aAAa,EAAE,MAAM;OACnD;AACLK,WAAQC,MAAM,uBAAuBV,IAAI;AACzC"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.182.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.184.0 | Cube Dev Team */
2
2
  import { CalendarDate, startOfMonth, startOfWeek, startOfYear, toCalendarDate } from "@internationalized/date";
3
3
 
4
4
  //#region src/components/fields/DatePicker/period.ts
@@ -1 +1 @@
1
- {"version":3,"file":"period.js","names":[],"sources":["../../../../src/components/fields/DatePicker/period.ts"],"sourcesContent":["import {\n CalendarDate,\n startOfMonth,\n startOfWeek,\n startOfYear,\n toCalendarDate,\n} from '@internationalized/date';\nimport { DateValue } from 'react-aria';\n\n/**\n * The period granularity a picker operates on. Unlike React Aria's `granularity`\n * (which controls the smallest *time* unit shown in a date field), this controls\n * which calendar panel is shown and which period a selected value is snapped to.\n */\nexport type PickerType = 'week' | 'month' | 'quarter' | 'year';\n\nconst MS_PER_DAY = 24 * 60 * 60 * 1000;\n\n/** The 1-based quarter (1–4) that a given month (1–12) belongs to. */\nexport function getQuarter(month: number): number {\n return Math.floor((month - 1) / 3) + 1;\n}\n\n/**\n * Snap a date to the start of the period it belongs to:\n * - `week` → the first day of its week (locale-aware)\n * - `month` → the 1st of its month\n * - `quarter`→ the 1st of the first month of its quarter\n * - `year` → January 1st\n */\nexport function snapToPeriod(\n date: DateValue,\n picker: PickerType,\n locale: string,\n): CalendarDate {\n const cd = toCalendarDate(date);\n\n switch (picker) {\n case 'week':\n return startOfWeek(cd, locale);\n case 'month':\n return startOfMonth(cd);\n case 'quarter': {\n const quarterStartMonth = (getQuarter(cd.month) - 1) * 3 + 1;\n return new CalendarDate(cd.year, quarterStartMonth, 1);\n }\n case 'year':\n return startOfYear(cd);\n }\n}\n\n/**\n * The locale-aware week-of-year number for a date, counted from the first week\n * of that date's calendar year (matches how the value's year is displayed).\n */\nexport function getWeekNumber(date: DateValue, locale: string): number {\n const cd = toCalendarDate(date);\n const weekStart = startOfWeek(cd, locale);\n const firstWeekStart = startOfWeek(startOfYear(cd), locale);\n const diffDays = Math.round(\n (weekStart.toDate('UTC').getTime() -\n firstWeekStart.toDate('UTC').getTime()) /\n MS_PER_DAY,\n );\n\n return Math.floor(diffDays / 7) + 1;\n}\n\nconst pad2 = (value: number) => String(value).padStart(2, '0');\n\n/**\n * Default formatting of a period value into a compact label, e.g.\n * `2026-08` (month), `2026-Q3` (quarter), `2026` (year), `2026-W33` (week).\n * Consumers can override this via the picker's `formatValue` prop.\n */\nexport function formatPeriod(\n date: DateValue,\n picker: PickerType,\n locale: string,\n): string {\n const cd = toCalendarDate(date);\n\n switch (picker) {\n case 'year':\n return String(cd.year);\n case 'quarter':\n return `${cd.year}-Q${getQuarter(cd.month)}`;\n case 'month':\n return `${cd.year}-${pad2(cd.month)}`;\n case 'week':\n return `${cd.year}-W${pad2(getWeekNumber(cd, locale))}`;\n }\n}\n"],"mappings":";;;;AAgBA,MAAM,aAAa,OAAU,KAAK;;AAGlC,SAAgB,WAAW,OAAuB;AAChD,QAAO,KAAK,OAAO,QAAQ,KAAK,EAAE,GAAG;;;;;;;;;AAUvC,SAAgB,aACd,MACA,QACA,QACc;CACd,MAAM,KAAK,eAAe,KAAK;AAE/B,SAAQ,QAAR;EACE,KAAK,OACH,QAAO,YAAY,IAAI,OAAO;EAChC,KAAK,QACH,QAAO,aAAa,GAAG;EACzB,KAAK,WAAW;GACd,MAAM,qBAAqB,WAAW,GAAG,MAAM,GAAG,KAAK,IAAI;AAC3D,UAAO,IAAI,aAAa,GAAG,MAAM,mBAAmB,EAAE;;EAExD,KAAK,OACH,QAAO,YAAY,GAAG;;;;;;;AAQ5B,SAAgB,cAAc,MAAiB,QAAwB;CACrE,MAAM,KAAK,eAAe,KAAK;CAC/B,MAAM,YAAY,YAAY,IAAI,OAAO;CACzC,MAAM,iBAAiB,YAAY,YAAY,GAAG,EAAE,OAAO;CAC3D,MAAM,WAAW,KAAK,OACnB,UAAU,OAAO,MAAM,CAAC,SAAS,GAChC,eAAe,OAAO,MAAM,CAAC,SAAS,IACtC,WACH;AAED,QAAO,KAAK,MAAM,WAAW,EAAE,GAAG;;AAGpC,MAAM,QAAQ,UAAkB,OAAO,MAAM,CAAC,SAAS,GAAG,IAAI;;;;;;AAO9D,SAAgB,aACd,MACA,QACA,QACQ;CACR,MAAM,KAAK,eAAe,KAAK;AAE/B,SAAQ,QAAR;EACE,KAAK,OACH,QAAO,OAAO,GAAG,KAAK;EACxB,KAAK,UACH,QAAO,GAAG,GAAG,KAAK,IAAI,WAAW,GAAG,MAAM;EAC5C,KAAK,QACH,QAAO,GAAG,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM;EACrC,KAAK,OACH,QAAO,GAAG,GAAG,KAAK,IAAI,KAAK,cAAc,IAAI,OAAO,CAAC"}
1
+ {"version":3,"file":"period.js","names":["CalendarDate","startOfMonth","startOfWeek","startOfYear","toCalendarDate","DateValue","PickerType","MS_PER_DAY","getQuarter","month","Math","floor","snapToPeriod","date","picker","locale","cd","quarterStartMonth","year","getWeekNumber","weekStart","firstWeekStart","diffDays","round","toDate","getTime","pad2","value","String","padStart","formatPeriod"],"sources":["../../../../src/components/fields/DatePicker/period.ts"],"sourcesContent":["import {\n CalendarDate,\n startOfMonth,\n startOfWeek,\n startOfYear,\n toCalendarDate,\n} from '@internationalized/date';\nimport { DateValue } from 'react-aria';\n\n/**\n * The period granularity a picker operates on. Unlike React Aria's `granularity`\n * (which controls the smallest *time* unit shown in a date field), this controls\n * which calendar panel is shown and which period a selected value is snapped to.\n */\nexport type PickerType = 'week' | 'month' | 'quarter' | 'year';\n\nconst MS_PER_DAY = 24 * 60 * 60 * 1000;\n\n/** The 1-based quarter (1–4) that a given month (1–12) belongs to. */\nexport function getQuarter(month: number): number {\n return Math.floor((month - 1) / 3) + 1;\n}\n\n/**\n * Snap a date to the start of the period it belongs to:\n * - `week` → the first day of its week (locale-aware)\n * - `month` → the 1st of its month\n * - `quarter`→ the 1st of the first month of its quarter\n * - `year` → January 1st\n */\nexport function snapToPeriod(\n date: DateValue,\n picker: PickerType,\n locale: string,\n): CalendarDate {\n const cd = toCalendarDate(date);\n\n switch (picker) {\n case 'week':\n return startOfWeek(cd, locale);\n case 'month':\n return startOfMonth(cd);\n case 'quarter': {\n const quarterStartMonth = (getQuarter(cd.month) - 1) * 3 + 1;\n return new CalendarDate(cd.year, quarterStartMonth, 1);\n }\n case 'year':\n return startOfYear(cd);\n }\n}\n\n/**\n * The locale-aware week-of-year number for a date, counted from the first week\n * of that date's calendar year (matches how the value's year is displayed).\n */\nexport function getWeekNumber(date: DateValue, locale: string): number {\n const cd = toCalendarDate(date);\n const weekStart = startOfWeek(cd, locale);\n const firstWeekStart = startOfWeek(startOfYear(cd), locale);\n const diffDays = Math.round(\n (weekStart.toDate('UTC').getTime() -\n firstWeekStart.toDate('UTC').getTime()) /\n MS_PER_DAY,\n );\n\n return Math.floor(diffDays / 7) + 1;\n}\n\nconst pad2 = (value: number) => String(value).padStart(2, '0');\n\n/**\n * Default formatting of a period value into a compact label, e.g.\n * `2026-08` (month), `2026-Q3` (quarter), `2026` (year), `2026-W33` (week).\n * Consumers can override this via the picker's `formatValue` prop.\n */\nexport function formatPeriod(\n date: DateValue,\n picker: PickerType,\n locale: string,\n): string {\n const cd = toCalendarDate(date);\n\n switch (picker) {\n case 'year':\n return String(cd.year);\n case 'quarter':\n return `${cd.year}-Q${getQuarter(cd.month)}`;\n case 'month':\n return `${cd.year}-${pad2(cd.month)}`;\n case 'week':\n return `${cd.year}-W${pad2(getWeekNumber(cd, locale))}`;\n }\n}\n"],"mappings":";;;;AAgBA,MAAMO,aAAa,OAAU,KAAK;;AAGlC,SAAgBC,WAAWC,OAAuB;AAChD,QAAOC,KAAKC,OAAOF,QAAQ,KAAK,EAAE,GAAG;;;;;;;;;AAUvC,SAAgBG,aACdC,MACAC,QACAC,QACc;CACd,MAAMC,KAAKZ,eAAeS,KAAK;AAE/B,SAAQC,QAAR;EACE,KAAK,OACH,QAAOZ,YAAYc,IAAID,OAAO;EAChC,KAAK,QACH,QAAOd,aAAae,GAAG;EACzB,KAAK,WAAW;GACd,MAAMC,qBAAqBT,WAAWQ,GAAGP,MAAM,GAAG,KAAK,IAAI;AAC3D,UAAO,IAAIT,aAAagB,GAAGE,MAAMD,mBAAmB,EAAE;;EAExD,KAAK,OACH,QAAOd,YAAYa,GAAG;;;;;;;AAQ5B,SAAgBG,cAAcN,MAAiBE,QAAwB;CACrE,MAAMC,KAAKZ,eAAeS,KAAK;CAC/B,MAAMO,YAAYlB,YAAYc,IAAID,OAAO;CACzC,MAAMM,iBAAiBnB,YAAYC,YAAYa,GAAG,EAAED,OAAO;CAC3D,MAAMO,WAAWZ,KAAKa,OACnBH,UAAUI,OAAO,MAAM,CAACC,SAAS,GAChCJ,eAAeG,OAAO,MAAM,CAACC,SAAS,IACtClB,WACH;AAED,QAAOG,KAAKC,MAAMW,WAAW,EAAE,GAAG;;AAGpC,MAAMI,QAAQC,UAAkBC,OAAOD,MAAM,CAACE,SAAS,GAAG,IAAI;;;;;;AAO9D,SAAgBC,aACdjB,MACAC,QACAC,QACQ;CACR,MAAMC,KAAKZ,eAAeS,KAAK;AAE/B,SAAQC,QAAR;EACE,KAAK,OACH,QAAOc,OAAOZ,GAAGE,KAAK;EACxB,KAAK,UACH,QAAO,GAAGF,GAAGE,KAAI,IAAKV,WAAWQ,GAAGP,MAAM;EAC5C,KAAK,QACH,QAAO,GAAGO,GAAGE,KAAI,GAAIQ,KAAKV,GAAGP,MAAM;EACrC,KAAK,OACH,QAAO,GAAGO,GAAGE,KAAI,IAAKQ,KAAKP,cAAcH,IAAID,OAAO,CAAC"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.182.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.184.0 | Cube Dev Team */
2
2
  //#region src/components/fields/DatePicker/props.ts
3
3
  const DEFAULT_DATE_PROPS = {
4
4
  granularity: "day",
@@ -1 +1 @@
1
- {"version":3,"file":"props.js","names":[],"sources":["../../../../src/components/fields/DatePicker/props.ts"],"sourcesContent":["import { AriaDatePickerProps, DateValue } from 'react-aria';\n\nexport const DEFAULT_DATE_PROPS: Partial<AriaDatePickerProps<DateValue>> = {\n granularity: 'day',\n hideTimeZone: true,\n hourCycle: 24,\n shouldForceLeadingZeros: true,\n};\n\nexport const DEFAULT_TIME_PROPS: Partial<AriaDatePickerProps<DateValue>> = {\n hideTimeZone: true,\n hourCycle: 24,\n shouldForceLeadingZeros: true,\n};\n"],"mappings":";;AAEA,MAAa,qBAA8D;CACzE,aAAa;CACb,cAAc;CACd,WAAW;CACX,yBAAyB;CAC1B;AAED,MAAa,qBAA8D;CACzE,cAAc;CACd,WAAW;CACX,yBAAyB;CAC1B"}
1
+ {"version":3,"file":"props.js","names":["AriaDatePickerProps","DateValue","DEFAULT_DATE_PROPS","Partial","granularity","hideTimeZone","hourCycle","shouldForceLeadingZeros","DEFAULT_TIME_PROPS"],"sources":["../../../../src/components/fields/DatePicker/props.ts"],"sourcesContent":["import { AriaDatePickerProps, DateValue } from 'react-aria';\n\nexport const DEFAULT_DATE_PROPS: Partial<AriaDatePickerProps<DateValue>> = {\n granularity: 'day',\n hideTimeZone: true,\n hourCycle: 24,\n shouldForceLeadingZeros: true,\n};\n\nexport const DEFAULT_TIME_PROPS: Partial<AriaDatePickerProps<DateValue>> = {\n hideTimeZone: true,\n hourCycle: 24,\n shouldForceLeadingZeros: true,\n};\n"],"mappings":";;AAEA,MAAaE,qBAA8D;CACzEE,aAAa;CACbC,cAAc;CACdC,WAAW;CACXC,yBAAyB;CAC1B;AAED,MAAaC,qBAA8D;CACzEH,cAAc;CACdC,WAAW;CACXC,yBAAyB;CAC1B"}
@@ -1,17 +1,24 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.182.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.184.0 | Cube Dev Team */
2
+ import { c } from "react-compiler-runtime";
2
3
  import { useImperativeHandle, useRef } from "react";
3
4
  import { createDOMRef } from "@react-spectrum/utils";
4
5
  import { createFocusManager } from "@react-aria/focus";
5
6
 
6
7
  //#region src/components/fields/DatePicker/utils.ts
7
8
  function useFocusManagerRef(ref) {
8
- let domRef = useRef(null);
9
- useImperativeHandle(ref, () => ({
10
- ...createDOMRef(domRef),
11
- focus() {
12
- createFocusManager(domRef).focusFirst({ tabbable: true });
13
- }
14
- }));
9
+ const $ = c(1);
10
+ const domRef = useRef(null);
11
+ let t0;
12
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
13
+ t0 = () => ({
14
+ ...createDOMRef(domRef),
15
+ focus() {
16
+ createFocusManager(domRef).focusFirst({ tabbable: true });
17
+ }
18
+ });
19
+ $[0] = t0;
20
+ } else t0 = $[0];
21
+ useImperativeHandle(ref, t0);
15
22
  return domRef;
16
23
  }
17
24
  function formatSegments(segments) {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":[],"sources":["../../../../src/components/fields/DatePicker/utils.ts"],"sourcesContent":["import { createFocusManager } from '@react-aria/focus';\nimport { createDOMRef } from '@react-spectrum/utils';\nimport { FocusableRef } from '@react-types/shared';\nimport { useImperativeHandle, useRef } from 'react';\nimport { DateSegment } from 'react-stately';\n\n// export function useFormatHelpText(\n// props: Pick<SpectrumDatePickerBase, 'description' | 'showFormatHelpText'>,\n// ) {\n// let formatter = useDateFormatter({ dateStyle: 'short' });\n// let displayNames = useDisplayNames();\n// return useMemo(() => {\n// if (props.description) {\n// return props.description;\n// }\n//\n// if (props.showFormatHelpText) {\n// return formatter\n// .formatToParts(new Date())\n// .map((s) => {\n// if (s.type === 'literal') {\n// return s.value;\n// }\n//\n// return displayNames.of(s.type);\n// })\n// .join(' ');\n// }\n//\n// return '';\n// }, [props.description, props.showFormatHelpText, formatter, displayNames]);\n// }\n\n// export function useVisibleMonths(maxVisibleMonths: number) {\n// let [visibleMonths, setVisibleMonths] = useState(getVisibleMonths('large'));\n// useLayoutEffect(() => {\n// let onResize = () => setVisibleMonths(getVisibleMonths('large'));\n// onResize();\n//\n// window.addEventListener('resize', onResize);\n// return () => {\n// window.removeEventListener('resize', onResize);\n// };\n// }, []);\n//\n// return Math.max(1, Math.min(visibleMonths, maxVisibleMonths, 3));\n// }\n\n// function getVisibleMonths(scale) {\n// if (typeof window === 'undefined') {\n// return 1;\n// }\n// let monthWidth = scale === 'large' ? 336 : 280;\n// let gap = scale === 'large' ? 30 : 24;\n// let popoverPadding = scale === 'large' ? 32 : 48;\n// return Math.floor(\n// (window.innerWidth - popoverPadding * 2) / (monthWidth + gap),\n// );\n// }\n\nexport function useFocusManagerRef(ref: FocusableRef<HTMLElement>) {\n let domRef = useRef(null);\n useImperativeHandle(ref, () => ({\n // @ts-ignore\n ...createDOMRef(domRef),\n focus() {\n // @ts-ignore\n createFocusManager(domRef).focusFirst({ tabbable: true });\n },\n }));\n return domRef;\n}\n\nexport function formatSegments(segments: DateSegment[]) {\n segments = JSON.parse(JSON.stringify(segments));\n\n segments.forEach((segment) => {\n if (segment.type === 'literal') {\n if (segment.text === '/') {\n segment.text = '-';\n }\n\n if (segment.text === ', ') {\n segment.text = ' ';\n }\n }\n });\n\n const year = segments.find((s) => s.type === 'year');\n\n if (year) {\n segments.splice(segments.indexOf(year), 1);\n segments.unshift(year);\n }\n\n const month = segments.find((s) => s.type === 'month');\n\n if (month) {\n segments.splice(segments.indexOf(month), 1);\n segments.splice(2, 0, month);\n }\n\n const day = segments.find((s) => s.type === 'day');\n\n if (day) {\n segments.splice(segments.indexOf(day), 1);\n segments.splice(4, 0, day);\n }\n\n return segments;\n}\n"],"mappings":";;;;;;AA4DA,SAAgB,mBAAmB,KAAgC;CACjE,IAAI,SAAS,OAAO,KAAK;AACzB,qBAAoB,YAAY;EAE9B,GAAG,aAAa,OAAO;EACvB,QAAQ;AAEN,sBAAmB,OAAO,CAAC,WAAW,EAAE,UAAU,MAAM,CAAC;;EAE5D,EAAE;AACH,QAAO;;AAGT,SAAgB,eAAe,UAAyB;AACtD,YAAW,KAAK,MAAM,KAAK,UAAU,SAAS,CAAC;AAE/C,UAAS,SAAS,YAAY;AAC5B,MAAI,QAAQ,SAAS,WAAW;AAC9B,OAAI,QAAQ,SAAS,IACnB,SAAQ,OAAO;AAGjB,OAAI,QAAQ,SAAS,KACnB,SAAQ,OAAO;;GAGnB;CAEF,MAAM,OAAO,SAAS,MAAM,MAAM,EAAE,SAAS,OAAO;AAEpD,KAAI,MAAM;AACR,WAAS,OAAO,SAAS,QAAQ,KAAK,EAAE,EAAE;AAC1C,WAAS,QAAQ,KAAK;;CAGxB,MAAM,QAAQ,SAAS,MAAM,MAAM,EAAE,SAAS,QAAQ;AAEtD,KAAI,OAAO;AACT,WAAS,OAAO,SAAS,QAAQ,MAAM,EAAE,EAAE;AAC3C,WAAS,OAAO,GAAG,GAAG,MAAM;;CAG9B,MAAM,MAAM,SAAS,MAAM,MAAM,EAAE,SAAS,MAAM;AAElD,KAAI,KAAK;AACP,WAAS,OAAO,SAAS,QAAQ,IAAI,EAAE,EAAE;AACzC,WAAS,OAAO,GAAG,GAAG,IAAI;;AAG5B,QAAO"}
1
+ {"version":3,"file":"utils.js","names":["createFocusManager","createDOMRef","FocusableRef","useImperativeHandle","useRef","DateSegment","useFocusManagerRef","ref","$","_c","domRef","t0","Symbol","for","focus","focusFirst","tabbable","formatSegments","segments","JSON","parse","stringify","forEach","segment","type","text","year","find","s","splice","indexOf","unshift","month","day"],"sources":["../../../../src/components/fields/DatePicker/utils.ts"],"sourcesContent":["import { createFocusManager } from '@react-aria/focus';\nimport { createDOMRef } from '@react-spectrum/utils';\nimport { FocusableRef } from '@react-types/shared';\nimport { useImperativeHandle, useRef } from 'react';\nimport { DateSegment } from 'react-stately';\n\n// export function useFormatHelpText(\n// props: Pick<SpectrumDatePickerBase, 'description' | 'showFormatHelpText'>,\n// ) {\n// let formatter = useDateFormatter({ dateStyle: 'short' });\n// let displayNames = useDisplayNames();\n// return useMemo(() => {\n// if (props.description) {\n// return props.description;\n// }\n//\n// if (props.showFormatHelpText) {\n// return formatter\n// .formatToParts(new Date())\n// .map((s) => {\n// if (s.type === 'literal') {\n// return s.value;\n// }\n//\n// return displayNames.of(s.type);\n// })\n// .join(' ');\n// }\n//\n// return '';\n// }, [props.description, props.showFormatHelpText, formatter, displayNames]);\n// }\n\n// export function useVisibleMonths(maxVisibleMonths: number) {\n// let [visibleMonths, setVisibleMonths] = useState(getVisibleMonths('large'));\n// useLayoutEffect(() => {\n// let onResize = () => setVisibleMonths(getVisibleMonths('large'));\n// onResize();\n//\n// window.addEventListener('resize', onResize);\n// return () => {\n// window.removeEventListener('resize', onResize);\n// };\n// }, []);\n//\n// return Math.max(1, Math.min(visibleMonths, maxVisibleMonths, 3));\n// }\n\n// function getVisibleMonths(scale) {\n// if (typeof window === 'undefined') {\n// return 1;\n// }\n// let monthWidth = scale === 'large' ? 336 : 280;\n// let gap = scale === 'large' ? 30 : 24;\n// let popoverPadding = scale === 'large' ? 32 : 48;\n// return Math.floor(\n// (window.innerWidth - popoverPadding * 2) / (monthWidth + gap),\n// );\n// }\n\nexport function useFocusManagerRef(ref: FocusableRef<HTMLElement>) {\n let domRef = useRef(null);\n useImperativeHandle(ref, () => ({\n // @ts-ignore\n ...createDOMRef(domRef),\n focus() {\n // @ts-ignore\n createFocusManager(domRef).focusFirst({ tabbable: true });\n },\n }));\n return domRef;\n}\n\nexport function formatSegments(segments: DateSegment[]) {\n segments = JSON.parse(JSON.stringify(segments));\n\n segments.forEach((segment) => {\n if (segment.type === 'literal') {\n if (segment.text === '/') {\n segment.text = '-';\n }\n\n if (segment.text === ', ') {\n segment.text = ' ';\n }\n }\n });\n\n const year = segments.find((s) => s.type === 'year');\n\n if (year) {\n segments.splice(segments.indexOf(year), 1);\n segments.unshift(year);\n }\n\n const month = segments.find((s) => s.type === 'month');\n\n if (month) {\n segments.splice(segments.indexOf(month), 1);\n segments.splice(2, 0, month);\n }\n\n const day = segments.find((s) => s.type === 'day');\n\n if (day) {\n segments.splice(segments.indexOf(day), 1);\n segments.splice(4, 0, day);\n }\n\n return segments;\n}\n"],"mappings":";;;;;;;AA4DA,SAAOM,mBAAAC,KAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CACL,MAAAC,SAAaN,OAAO,KAAK;CAAC,IAAAO;AAAA,KAAAH,EAAA,OAAAI,OAAAC,IAAA,4BAAA,EAAA;AACDF,cAAO;GAAA,GAE3BV,aAAaS,OAAO;GAAAI,QAAA;AAGrBd,uBAAmBU,OAAO,CAAAK,WAAY,EAAAC,UAAY,MAAM,CAAC;;GAE5D;AAACR,IAAA,KAAAG;OAAAA,MAAAH,EAAA;AAPFL,qBAAoBI,KAAKI,GAOtB;AAAA,QACID;;AAGT,SAAgBO,eAAeC,UAAyB;AACtDA,YAAWC,KAAKC,MAAMD,KAAKE,UAAUH,SAAS,CAAC;AAE/CA,UAASI,SAASC,YAAY;AAC5B,MAAIA,QAAQC,SAAS,WAAW;AAC9B,OAAID,QAAQE,SAAS,IACnBF,SAAQE,OAAO;AAGjB,OAAIF,QAAQE,SAAS,KACnBF,SAAQE,OAAO;;GAGnB;CAEF,MAAMC,OAAOR,SAASS,MAAMC,MAAMA,EAAEJ,SAAS,OAAO;AAEpD,KAAIE,MAAM;AACRR,WAASW,OAAOX,SAASY,QAAQJ,KAAK,EAAE,EAAE;AAC1CR,WAASa,QAAQL,KAAK;;CAGxB,MAAMM,QAAQd,SAASS,MAAMC,MAAMA,EAAEJ,SAAS,QAAQ;AAEtD,KAAIQ,OAAO;AACTd,WAASW,OAAOX,SAASY,QAAQE,MAAM,EAAE,EAAE;AAC3Cd,WAASW,OAAO,GAAG,GAAGG,MAAM;;CAG9B,MAAMC,MAAMf,SAASS,MAAMC,MAAMA,EAAEJ,SAAS,MAAM;AAElD,KAAIS,KAAK;AACPf,WAASW,OAAOX,SAASY,QAAQG,IAAI,EAAE,EAAE;AACzCf,WAASW,OAAO,GAAG,GAAGI,IAAI;;AAG5B,QAAOf"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.182.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.184.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { useEvent } from "../../../_internal/hooks/use-event.js";
@@ -118,11 +118,11 @@ function FileInput(allProps, ref) {
118
118
  const onLocalChange = useEvent((event) => {
119
119
  reader.current?.abort();
120
120
  const file = event.target.files?.[0];
121
- const name = file?.name ?? "";
121
+ const name_0 = file?.name ?? "";
122
122
  const commit = (next) => {
123
123
  setSelection({
124
124
  value: next,
125
- name
125
+ name: name_0
126
126
  });
127
127
  setValue(next);
128
128
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FileInput.js","names":[],"sources":["../../../../src/components/fields/FileInput/FileInput.tsx"],"sourcesContent":["import { createFocusableRef } from '@react-spectrum/utils';\nimport { useControlledState } from '@react-stately/utils';\nimport {\n BaseProps,\n BlockStyleProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n PositionStyleProps,\n Styles,\n tasty,\n} from '@tenphi/tasty';\nimport {\n forwardRef,\n RefObject,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from 'react';\n\nimport { useEvent } from '../../../_internal/hooks/use-event';\nimport { useI18n } from '../../../i18n';\nimport { FieldBaseProps } from '../../../shared';\nimport { useCombinedRefs } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\nimport { Action } from '../../actions';\nimport {\n getValidationMods,\n useFieldProps,\n ValidationIndicator,\n wrapWithField,\n} from '../../form';\n\nimport type { ChangeEvent } from 'react';\nimport type { AriaTextFieldProps } from 'react-aria';\nimport type { Props } from '../../../props';\n\nconst FileInputElement = tasty(Action, {\n qa: 'FileInputWrapper',\n styles: {\n display: 'inline-flex',\n position: 'relative',\n preset: 't3',\n padding: '.5x 1x',\n gap: '1x',\n flow: 'row',\n placeItems: 'center start',\n fill: {\n '': '#surface',\n 'drag-hover': '#primary.16',\n ':hover': '#primary.08',\n disabled: '#disabled-surface',\n },\n border: {\n '': true,\n valid: '#success-text.50',\n invalid: '#danger-text.50',\n ':focus-within & :focus-visible': '#primary-text',\n },\n radius: true,\n cursor: '$pointer',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n\n Button: {\n radius: true,\n border: {\n '': '#clear',\n pressed: '#primary.30',\n },\n fill: '#primary.12',\n color: {\n '': '#primary',\n disabled: '#dark.30',\n },\n padding: '.5x (1.5x - 1px)',\n transition: 'theme',\n },\n\n Placeholder: {\n color: '#dark-02',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n width: 'max 100%',\n overflow: 'hidden',\n },\n\n Value: {\n color: '#dark-02',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n width: 'max 100%',\n overflow: 'hidden',\n },\n\n State: {\n display: 'flex',\n placeItems: 'center',\n },\n\n ValidationIcon: {\n $: '> State >',\n display: 'grid',\n placeItems: 'center',\n width: 'min 2x',\n fontSize: '$icon-size',\n },\n\n Input: {\n position: 'absolute',\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n radius: '$content-radius',\n opacity: 0.01,\n cursor: '$pointer',\n zIndex: 10,\n },\n },\n});\n\nexport interface CubeFileInputProps\n extends BaseProps,\n PositionStyleProps,\n ContainerStyleProps,\n BlockStyleProps,\n AriaTextFieldProps,\n FieldBaseProps<string | null | undefined> {\n /** The form instance; redeclared for the same reason as in `Checkbox`. */\n form?: FieldBaseProps['form'];\n /** Field name; modern forms also accept nested tuple paths. */\n name?: FieldBaseProps['name'];\n /**\n * The size of the input\n * @default default\n */\n size?: 'small' | 'default' | 'large' | string;\n /** The input ref */\n inputRef?: RefObject<HTMLInputElement>;\n /** Style map for the input */\n inputStyles?: Styles;\n /**\n * The type of the input\n * @default file\n */\n type?: 'file' | 'text';\n /** Direct input props */\n inputProps?: Props;\n /** The file types that the input should accept */\n accept?: string;\n value?: string;\n defaultValue?: string;\n onChange?: (value: string) => void;\n placeholder?: string;\n}\n\nfunction extractFileNameFromValue(value?: string) {\n return typeof value === 'string'\n ? (value as string).split('\\\\')?.pop()\n : undefined;\n}\n\nfunction FileInput(allProps: CubeFileInputProps, ref) {\n const { t } = useI18n();\n\n const props = useFieldProps(allProps, {\n defaultValidationTrigger: 'onChange',\n });\n\n let {\n id,\n name,\n qa,\n value,\n onChange,\n placeholder,\n inputRef,\n isDisabled,\n isInvalid,\n isValid,\n inputStyles,\n type = 'file',\n inputProps,\n accept,\n form,\n ...otherProps\n } = props;\n\n const [dragHover, setDragHover] = useState(false);\n const [currentValue, setValue] = useControlledState(\n value,\n props.defaultValue ?? '',\n onChange,\n );\n const [selection, setSelection] = useState<{\n value: string;\n name: string;\n }>();\n const fileName =\n type === 'file'\n ? extractFileNameFromValue(currentValue)\n : currentValue === selection?.value\n ? selection?.name\n : undefined;\n const reader = useRef<FileReader | null>(null);\n\n let domRef = useRef(null);\n\n inputRef = useCombinedRefs(inputRef);\n\n useEffect(() => {\n // Browsers only allow clearing a file input programmatically. A reset or\n // external value replacement must also release the old native selection.\n if (inputRef.current && currentValue !== selection?.value) {\n inputRef.current.value = '';\n }\n }, [currentValue, selection, inputRef]);\n useEffect(() => () => reader.current?.abort(), [type]);\n\n const onLocalChange = useEvent((event: ChangeEvent<HTMLInputElement>) => {\n reader.current?.abort();\n const file = event.target.files?.[0];\n const name = file?.name ?? '';\n const commit = (next: string) => {\n setSelection({ value: next, name });\n setValue(next);\n };\n if (type === 'file') {\n commit(event.target.value);\n } else if (file) {\n const nextReader = new FileReader();\n reader.current = nextReader;\n nextReader.onload = () => commit(String(nextReader.result ?? ''));\n nextReader.readAsText(file);\n } else {\n commit('');\n }\n });\n\n let styles = extractStyles(otherProps, CONTAINER_STYLES);\n\n // Expose imperative interface for ref\n useImperativeHandle(ref, () => ({\n ...createFocusableRef(domRef, inputRef),\n select() {\n if (inputRef?.current) {\n inputRef.current.select();\n }\n },\n getInputElement() {\n return inputRef?.current;\n },\n }));\n\n const fileInput = (\n <FileInputElement\n ref={domRef}\n styles={inputStyles}\n isDisabled={isDisabled}\n mods={{\n selected: !!fileName,\n 'drag-hover': dragHover,\n ...getValidationMods({ isInvalid, isValid }),\n }}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === 'Space') {\n inputRef?.current?.click();\n }\n }}\n >\n <input\n ref={inputRef}\n id={id}\n name={name}\n accept={accept}\n data-qa={qa || 'FileInput'}\n data-input-type=\"fileinput\"\n data-element=\"Input\"\n disabled={isDisabled}\n type=\"file\"\n multiple={false}\n tabIndex={-1}\n onChange={onLocalChange}\n onDragEnter={() => {\n setDragHover(true);\n }}\n onDragLeave={() => {\n setDragHover(false);\n }}\n onDrop={() => {\n setDragHover(false);\n }}\n {...inputProps}\n />\n <div data-element=\"Button\">\n {t('fileInput.chooseFile', 'Choose file')}\n </div>\n <div data-element={fileName ? 'Value' : 'Placeholder'}>\n {fileName ||\n placeholder ||\n t('fileInput.noFileSelected', 'No file selected')}\n </div>\n <ValidationIndicator isInvalid={isInvalid} isValid={isValid} />\n </FileInputElement>\n );\n\n return wrapWithField(fileInput, domRef, {\n ...props,\n });\n}\n\n/**\n * FileInputs are file inputs that allow users to select local files to\n * upload them to the server.\n */\nconst _FileInput = forwardRef(FileInput);\n\n_FileInput.displayName = 'FileInput';\n\nexport { _FileInput as FileInput };\n"],"mappings":"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"}
1
+ {"version":3,"file":"FileInput.js","names":["createFocusableRef","useControlledState","BaseProps","BlockStyleProps","CONTAINER_STYLES","ContainerStyleProps","PositionStyleProps","Styles","tasty","forwardRef","RefObject","useEffect","useImperativeHandle","useRef","useState","useEvent","useI18n","FieldBaseProps","useCombinedRefs","extractStyles","Action","getValidationMods","useFieldProps","ValidationIndicator","wrapWithField","ChangeEvent","AriaTextFieldProps","Props","FileInputElement","qa","styles","display","position","preset","padding","gap","flow","placeItems","fill","disabled","border","valid","invalid","radius","cursor","overflow","whiteSpace","Button","pressed","color","transition","Placeholder","textOverflow","width","Value","State","ValidationIcon","$","fontSize","Input","top","right","bottom","left","opacity","zIndex","CubeFileInputProps","form","name","size","inputRef","HTMLInputElement","inputStyles","type","inputProps","accept","value","defaultValue","onChange","placeholder","extractFileNameFromValue","split","pop","undefined","FileInput","allProps","ref","t","props","defaultValidationTrigger","id","isDisabled","isInvalid","isValid","otherProps","dragHover","setDragHover","currentValue","setValue","selection","setSelection","fileName","reader","FileReader","domRef","current","abort","onLocalChange","event","file","target","files","commit","next","nextReader","onload","String","result","readAsText","select","getInputElement","fileInput","selected","e","key","click","_FileInput","displayName"],"sources":["../../../../src/components/fields/FileInput/FileInput.tsx"],"sourcesContent":["import { createFocusableRef } from '@react-spectrum/utils';\nimport { useControlledState } from '@react-stately/utils';\nimport {\n BaseProps,\n BlockStyleProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n PositionStyleProps,\n Styles,\n tasty,\n} from '@tenphi/tasty';\nimport {\n forwardRef,\n RefObject,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from 'react';\n\nimport { useEvent } from '../../../_internal/hooks/use-event';\nimport { useI18n } from '../../../i18n';\nimport { FieldBaseProps } from '../../../shared';\nimport { useCombinedRefs } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\nimport { Action } from '../../actions';\nimport {\n getValidationMods,\n useFieldProps,\n ValidationIndicator,\n wrapWithField,\n} from '../../form';\n\nimport type { ChangeEvent } from 'react';\nimport type { AriaTextFieldProps } from 'react-aria';\nimport type { Props } from '../../../props';\n\nconst FileInputElement = tasty(Action, {\n qa: 'FileInputWrapper',\n styles: {\n display: 'inline-flex',\n position: 'relative',\n preset: 't3',\n padding: '.5x 1x',\n gap: '1x',\n flow: 'row',\n placeItems: 'center start',\n fill: {\n '': '#surface',\n 'drag-hover': '#primary.16',\n ':hover': '#primary.08',\n disabled: '#disabled-surface',\n },\n border: {\n '': true,\n valid: '#success-text.50',\n invalid: '#danger-text.50',\n ':focus-within & :focus-visible': '#primary-text',\n },\n radius: true,\n cursor: '$pointer',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n\n Button: {\n radius: true,\n border: {\n '': '#clear',\n pressed: '#primary.30',\n },\n fill: '#primary.12',\n color: {\n '': '#primary',\n disabled: '#dark.30',\n },\n padding: '.5x (1.5x - 1px)',\n transition: 'theme',\n },\n\n Placeholder: {\n color: '#dark-02',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n width: 'max 100%',\n overflow: 'hidden',\n },\n\n Value: {\n color: '#dark-02',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n width: 'max 100%',\n overflow: 'hidden',\n },\n\n State: {\n display: 'flex',\n placeItems: 'center',\n },\n\n ValidationIcon: {\n $: '> State >',\n display: 'grid',\n placeItems: 'center',\n width: 'min 2x',\n fontSize: '$icon-size',\n },\n\n Input: {\n position: 'absolute',\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n radius: '$content-radius',\n opacity: 0.01,\n cursor: '$pointer',\n zIndex: 10,\n },\n },\n});\n\nexport interface CubeFileInputProps\n extends BaseProps,\n PositionStyleProps,\n ContainerStyleProps,\n BlockStyleProps,\n AriaTextFieldProps,\n FieldBaseProps<string | null | undefined> {\n /** The form instance; redeclared for the same reason as in `Checkbox`. */\n form?: FieldBaseProps['form'];\n /** Field name; modern forms also accept nested tuple paths. */\n name?: FieldBaseProps['name'];\n /**\n * The size of the input\n * @default default\n */\n size?: 'small' | 'default' | 'large' | string;\n /** The input ref */\n inputRef?: RefObject<HTMLInputElement>;\n /** Style map for the input */\n inputStyles?: Styles;\n /**\n * The type of the input\n * @default file\n */\n type?: 'file' | 'text';\n /** Direct input props */\n inputProps?: Props;\n /** The file types that the input should accept */\n accept?: string;\n value?: string;\n defaultValue?: string;\n onChange?: (value: string) => void;\n placeholder?: string;\n}\n\nfunction extractFileNameFromValue(value?: string) {\n return typeof value === 'string'\n ? (value as string).split('\\\\')?.pop()\n : undefined;\n}\n\nfunction FileInput(allProps: CubeFileInputProps, ref) {\n const { t } = useI18n();\n\n const props = useFieldProps(allProps, {\n defaultValidationTrigger: 'onChange',\n });\n\n let {\n id,\n name,\n qa,\n value,\n onChange,\n placeholder,\n inputRef,\n isDisabled,\n isInvalid,\n isValid,\n inputStyles,\n type = 'file',\n inputProps,\n accept,\n form,\n ...otherProps\n } = props;\n\n const [dragHover, setDragHover] = useState(false);\n const [currentValue, setValue] = useControlledState(\n value,\n props.defaultValue ?? '',\n onChange,\n );\n const [selection, setSelection] = useState<{\n value: string;\n name: string;\n }>();\n const fileName =\n type === 'file'\n ? extractFileNameFromValue(currentValue)\n : currentValue === selection?.value\n ? selection?.name\n : undefined;\n const reader = useRef<FileReader | null>(null);\n\n let domRef = useRef(null);\n\n inputRef = useCombinedRefs(inputRef);\n\n useEffect(() => {\n // Browsers only allow clearing a file input programmatically. A reset or\n // external value replacement must also release the old native selection.\n if (inputRef.current && currentValue !== selection?.value) {\n inputRef.current.value = '';\n }\n }, [currentValue, selection, inputRef]);\n useEffect(() => () => reader.current?.abort(), [type]);\n\n const onLocalChange = useEvent((event: ChangeEvent<HTMLInputElement>) => {\n reader.current?.abort();\n const file = event.target.files?.[0];\n const name = file?.name ?? '';\n const commit = (next: string) => {\n setSelection({ value: next, name });\n setValue(next);\n };\n if (type === 'file') {\n commit(event.target.value);\n } else if (file) {\n const nextReader = new FileReader();\n reader.current = nextReader;\n nextReader.onload = () => commit(String(nextReader.result ?? ''));\n nextReader.readAsText(file);\n } else {\n commit('');\n }\n });\n\n let styles = extractStyles(otherProps, CONTAINER_STYLES);\n\n // Expose imperative interface for ref\n useImperativeHandle(ref, () => ({\n ...createFocusableRef(domRef, inputRef),\n select() {\n if (inputRef?.current) {\n inputRef.current.select();\n }\n },\n getInputElement() {\n return inputRef?.current;\n },\n }));\n\n const fileInput = (\n <FileInputElement\n ref={domRef}\n styles={inputStyles}\n isDisabled={isDisabled}\n mods={{\n selected: !!fileName,\n 'drag-hover': dragHover,\n ...getValidationMods({ isInvalid, isValid }),\n }}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === 'Space') {\n inputRef?.current?.click();\n }\n }}\n >\n <input\n ref={inputRef}\n id={id}\n name={name}\n accept={accept}\n data-qa={qa || 'FileInput'}\n data-input-type=\"fileinput\"\n data-element=\"Input\"\n disabled={isDisabled}\n type=\"file\"\n multiple={false}\n tabIndex={-1}\n onChange={onLocalChange}\n onDragEnter={() => {\n setDragHover(true);\n }}\n onDragLeave={() => {\n setDragHover(false);\n }}\n onDrop={() => {\n setDragHover(false);\n }}\n {...inputProps}\n />\n <div data-element=\"Button\">\n {t('fileInput.chooseFile', 'Choose file')}\n </div>\n <div data-element={fileName ? 'Value' : 'Placeholder'}>\n {fileName ||\n placeholder ||\n t('fileInput.noFileSelected', 'No file selected')}\n </div>\n <ValidationIndicator isInvalid={isInvalid} isValid={isValid} />\n </FileInputElement>\n );\n\n return wrapWithField(fileInput, domRef, {\n ...props,\n });\n}\n\n/**\n * FileInputs are file inputs that allow users to select local files to\n * upload them to the server.\n */\nconst _FileInput = forwardRef(FileInput);\n\n_FileInput.displayName = 'FileInput';\n\nexport { _FileInput as FileInput };\n"],"mappings":"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"}