@cube-dev/ui-kit 0.196.0 → 0.198.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 (1663) hide show
  1. package/dist/CHANGELOG.md +54 -9
  2. package/dist/_internal/hooks/use-debounced-value.js +2 -3
  3. package/dist/_internal/hooks/use-debounced-value.js.map +1 -1
  4. package/dist/_internal/hooks/use-deprecation-warning.js +2 -3
  5. package/dist/_internal/hooks/use-deprecation-warning.js.map +1 -1
  6. package/dist/_internal/hooks/use-event.js +2 -3
  7. package/dist/_internal/hooks/use-event.js.map +1 -1
  8. package/dist/_internal/hooks/use-is-first-render.js +2 -3
  9. package/dist/_internal/hooks/use-is-first-render.js.map +1 -1
  10. package/dist/_internal/hooks/use-sync-ref.js +2 -3
  11. package/dist/_internal/hooks/use-sync-ref.js.map +1 -1
  12. package/dist/_internal/hooks/use-timer/timer.js +2 -2
  13. package/dist/_internal/hooks/use-timer/timer.js.map +1 -1
  14. package/dist/_internal/hooks/use-timer/use-timer.js +2 -3
  15. package/dist/_internal/hooks/use-timer/use-timer.js.map +1 -1
  16. package/dist/_internal/hooks/use-warn.js +2 -3
  17. package/dist/_internal/hooks/use-warn.js.map +1 -1
  18. package/dist/components/Block.d.ts +2 -5
  19. package/dist/components/Block.js +2 -3
  20. package/dist/components/Block.js.map +1 -1
  21. package/dist/components/CollectionItem.d.ts +4 -5
  22. package/dist/components/CollectionItem.js +4 -5
  23. package/dist/components/CollectionItem.js.map +1 -1
  24. package/dist/components/GlobalStyles.js +4 -5
  25. package/dist/components/GlobalStyles.js.map +1 -1
  26. package/dist/components/GridProvider.d.ts +2 -5
  27. package/dist/components/GridProvider.js +4 -4
  28. package/dist/components/GridProvider.js.map +1 -1
  29. package/dist/components/HiddenInput.js +2 -3
  30. package/dist/components/HiddenInput.js.map +1 -1
  31. package/dist/components/Root.d.ts +2 -5
  32. package/dist/components/Root.js +2 -3
  33. package/dist/components/Root.js.map +1 -1
  34. package/dist/components/actions/Action/Action.d.ts +2 -6
  35. package/dist/components/actions/Action/Action.js +2 -3
  36. package/dist/components/actions/Action/Action.js.map +1 -1
  37. package/dist/components/actions/Banner/Banner.d.ts +9 -12
  38. package/dist/components/actions/Banner/Banner.js +3 -4
  39. package/dist/components/actions/Banner/Banner.js.map +1 -1
  40. package/dist/components/actions/Banner/index.d.ts +2 -1
  41. package/dist/components/actions/Button/Button.d.ts +4 -7
  42. package/dist/components/actions/Button/Button.js +2 -3
  43. package/dist/components/actions/Button/Button.js.map +1 -1
  44. package/dist/components/actions/Button/index.d.ts +2 -1
  45. package/dist/components/actions/ButtonGroup/ButtonGroup.d.ts +1 -4
  46. package/dist/components/actions/ButtonGroup/ButtonGroup.js +2 -3
  47. package/dist/components/actions/ButtonGroup/ButtonGroup.js.map +1 -1
  48. package/dist/components/actions/ButtonSplit/ButtonSplit.d.ts +3 -6
  49. package/dist/components/actions/ButtonSplit/ButtonSplit.js +5 -5
  50. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  51. package/dist/components/actions/ButtonSplit/context.d.ts +3 -6
  52. package/dist/components/actions/ButtonSplit/context.js +2 -3
  53. package/dist/components/actions/ButtonSplit/context.js.map +1 -1
  54. package/dist/components/actions/ButtonSplit/index.d.ts +2 -1
  55. package/dist/components/actions/CommandMenu/CommandMenu.d.ts +6 -9
  56. package/dist/components/actions/CommandMenu/CommandMenu.js +89 -76
  57. package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
  58. package/dist/components/actions/CommandMenu/index.d.ts +2 -1
  59. package/dist/components/actions/CommandMenu/styled.js +3 -4
  60. package/dist/components/actions/CommandMenu/styled.js.map +1 -1
  61. package/dist/components/actions/ItemAction/ItemAction.d.ts +3 -6
  62. package/dist/components/actions/ItemAction/ItemAction.js +11 -9
  63. package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
  64. package/dist/components/actions/ItemAction/index.d.ts +2 -1
  65. package/dist/components/actions/ItemActionContext.d.ts +5 -14
  66. package/dist/components/actions/ItemActionContext.js +2 -3
  67. package/dist/components/actions/ItemActionContext.js.map +1 -1
  68. package/dist/components/actions/ItemActionsWrapper.js +2 -3
  69. package/dist/components/actions/ItemActionsWrapper.js.map +1 -1
  70. package/dist/components/actions/ItemButton/ItemButton.d.ts +6 -9
  71. package/dist/components/actions/ItemButton/ItemButton.js +4 -5
  72. package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
  73. package/dist/components/actions/ItemButton/index.d.ts +2 -1
  74. package/dist/components/actions/Link/Link.d.ts +1 -5
  75. package/dist/components/actions/Link/Link.js +2 -3
  76. package/dist/components/actions/Link/Link.js.map +1 -1
  77. package/dist/components/actions/Menu/Menu.d.ts +7 -10
  78. package/dist/components/actions/Menu/Menu.js +9 -8
  79. package/dist/components/actions/Menu/Menu.js.map +1 -1
  80. package/dist/components/actions/Menu/MenuCollectionItem.d.ts +3 -4
  81. package/dist/components/actions/Menu/MenuCollectionItem.js +4 -5
  82. package/dist/components/actions/Menu/MenuCollectionItem.js.map +1 -1
  83. package/dist/components/actions/Menu/MenuItem.d.ts +5 -8
  84. package/dist/components/actions/Menu/MenuItem.js +4 -4
  85. package/dist/components/actions/Menu/MenuItem.js.map +1 -1
  86. package/dist/components/actions/Menu/MenuSection.d.ts +4 -7
  87. package/dist/components/actions/Menu/MenuSection.js +2 -3
  88. package/dist/components/actions/Menu/MenuSection.js.map +1 -1
  89. package/dist/components/actions/Menu/MenuTrigger.d.ts +4 -6
  90. package/dist/components/actions/Menu/MenuTrigger.js +5 -6
  91. package/dist/components/actions/Menu/MenuTrigger.js.map +1 -1
  92. package/dist/components/actions/Menu/SubMenuTrigger.d.ts +3 -5
  93. package/dist/components/actions/Menu/SubMenuTrigger.js +3 -4
  94. package/dist/components/actions/Menu/SubMenuTrigger.js.map +1 -1
  95. package/dist/components/actions/Menu/SubmenuTriggerContext.js +2 -3
  96. package/dist/components/actions/Menu/SubmenuTriggerContext.js.map +1 -1
  97. package/dist/components/actions/Menu/context.d.ts +3 -5
  98. package/dist/components/actions/Menu/context.js +2 -3
  99. package/dist/components/actions/Menu/context.js.map +1 -1
  100. package/dist/components/actions/Menu/index.d.ts +4 -3
  101. package/dist/components/actions/Menu/styled.js +3 -4
  102. package/dist/components/actions/Menu/styled.js.map +1 -1
  103. package/dist/components/actions/actions-run.js +2 -2
  104. package/dist/components/actions/actions-run.js.map +1 -1
  105. package/dist/components/actions/index.d.ts +8 -11
  106. package/dist/components/actions/index.js +8 -9
  107. package/dist/components/actions/index.js.map +1 -1
  108. package/dist/components/actions/use-action.d.ts +10 -27
  109. package/dist/components/actions/use-action.js +15 -7
  110. package/dist/components/actions/use-action.js.map +1 -1
  111. package/dist/components/actions/use-anchored-menu.d.ts +3 -5
  112. package/dist/components/actions/use-anchored-menu.js +5 -5
  113. package/dist/components/actions/use-anchored-menu.js.map +1 -1
  114. package/dist/components/actions/use-context-menu.d.ts +4 -5
  115. package/dist/components/actions/use-context-menu.js +9 -7
  116. package/dist/components/actions/use-context-menu.js.map +1 -1
  117. package/dist/components/content/ActiveZone/ActiveZone.d.ts +3 -5
  118. package/dist/components/content/ActiveZone/ActiveZone.js +3 -4
  119. package/dist/components/content/ActiveZone/ActiveZone.js.map +1 -1
  120. package/dist/components/content/Alert/Alert.d.ts +1 -4
  121. package/dist/components/content/Alert/Alert.js +3 -3
  122. package/dist/components/content/Alert/Alert.js.map +1 -1
  123. package/dist/components/content/Alert/index.d.ts +2 -1
  124. package/dist/components/content/Alert/types.d.ts +2 -4
  125. package/dist/components/content/Alert/use-alert.js +2 -3
  126. package/dist/components/content/Alert/use-alert.js.map +1 -1
  127. package/dist/components/content/Avatar/Avatar.d.ts +2 -5
  128. package/dist/components/content/Avatar/Avatar.js +2 -3
  129. package/dist/components/content/Avatar/Avatar.js.map +1 -1
  130. package/dist/components/content/Badge/Badge.d.ts +5 -7
  131. package/dist/components/content/Badge/Badge.js +4 -5
  132. package/dist/components/content/Badge/Badge.js.map +1 -1
  133. package/dist/components/content/Card/Card.d.ts +2 -5
  134. package/dist/components/content/Card/Card.js +2 -3
  135. package/dist/components/content/Card/Card.js.map +1 -1
  136. package/dist/components/content/Content.d.ts +2 -5
  137. package/dist/components/content/Content.js +2 -3
  138. package/dist/components/content/Content.js.map +1 -1
  139. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.d.ts +3 -5
  140. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +3 -4
  141. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js.map +1 -1
  142. package/dist/components/content/CopyPasteBlock/index.d.ts +2 -1
  143. package/dist/components/content/CopySnippet/CopySnippet.d.ts +523 -520
  144. package/dist/components/content/CopySnippet/CopySnippet.js +5 -6
  145. package/dist/components/content/CopySnippet/CopySnippet.js.map +1 -1
  146. package/dist/components/content/CopySnippet/index.d.ts +2 -1
  147. package/dist/components/content/Disclosure/Disclosure.d.ts +12 -14
  148. package/dist/components/content/Disclosure/Disclosure.js +8 -7
  149. package/dist/components/content/Disclosure/Disclosure.js.map +1 -1
  150. package/dist/components/content/Disclosure/index.d.ts +2 -1
  151. package/dist/components/content/Divider.d.ts +2 -5
  152. package/dist/components/content/Divider.js +4 -4
  153. package/dist/components/content/Divider.js.map +1 -1
  154. package/dist/components/content/Footer.d.ts +2 -5
  155. package/dist/components/content/Footer.js +2 -3
  156. package/dist/components/content/Footer.js.map +1 -1
  157. package/dist/components/content/Header.d.ts +2 -5
  158. package/dist/components/content/Header.js +2 -3
  159. package/dist/components/content/Header.js.map +1 -1
  160. package/dist/components/content/HotKeys/HotKeys.d.ts +3 -5
  161. package/dist/components/content/HotKeys/HotKeys.js +4 -5
  162. package/dist/components/content/HotKeys/HotKeys.js.map +1 -1
  163. package/dist/components/content/HotKeys/index.d.ts +2 -1
  164. package/dist/components/content/InfoBadge/InfoBadge.d.ts +4 -6
  165. package/dist/components/content/InfoBadge/InfoBadge.js +2 -3
  166. package/dist/components/content/InfoBadge/InfoBadge.js.map +1 -1
  167. package/dist/components/content/InlineInput/InlineInput.d.ts +4 -7
  168. package/dist/components/content/InlineInput/InlineInput.js +5 -5
  169. package/dist/components/content/InlineInput/InlineInput.js.map +1 -1
  170. package/dist/components/content/InlineInput/index.d.ts +2 -1
  171. package/dist/components/content/Item/Item.d.ts +4 -7
  172. package/dist/components/content/Item/Item.js +4 -5
  173. package/dist/components/content/Item/Item.js.map +1 -1
  174. package/dist/components/content/Item/ItemWithNativeLinks.js +2 -3
  175. package/dist/components/content/Item/ItemWithNativeLinks.js.map +1 -1
  176. package/dist/components/content/Item/index.d.ts +2 -1
  177. package/dist/components/content/ItemBadge/ItemBadge.d.ts +3 -5
  178. package/dist/components/content/ItemBadge/ItemBadge.js +2 -3
  179. package/dist/components/content/ItemBadge/ItemBadge.js.map +1 -1
  180. package/dist/components/content/ItemBadge/index.d.ts +2 -1
  181. package/dist/components/content/ItemCard/ItemCard.d.ts +5 -8
  182. package/dist/components/content/ItemCard/ItemCard.js +3 -4
  183. package/dist/components/content/ItemCard/ItemCard.js.map +1 -1
  184. package/dist/components/content/Layout/GridLayout.d.ts +12 -13
  185. package/dist/components/content/Layout/GridLayout.js +13 -14
  186. package/dist/components/content/Layout/GridLayout.js.map +1 -1
  187. package/dist/components/content/Layout/Layout.d.ts +1 -3
  188. package/dist/components/content/Layout/Layout.js +28 -17
  189. package/dist/components/content/Layout/Layout.js.map +1 -1
  190. package/dist/components/content/Layout/LayoutBlock.d.ts +3 -5
  191. package/dist/components/content/Layout/LayoutBlock.js +4 -5
  192. package/dist/components/content/Layout/LayoutBlock.js.map +1 -1
  193. package/dist/components/content/Layout/LayoutCenter.d.ts +3 -5
  194. package/dist/components/content/Layout/LayoutCenter.js +4 -5
  195. package/dist/components/content/Layout/LayoutCenter.js.map +1 -1
  196. package/dist/components/content/Layout/LayoutContainer.d.ts +3 -5
  197. package/dist/components/content/Layout/LayoutContainer.js +5 -5
  198. package/dist/components/content/Layout/LayoutContainer.js.map +1 -1
  199. package/dist/components/content/Layout/LayoutContent.d.ts +4 -6
  200. package/dist/components/content/Layout/LayoutContent.js +3 -4
  201. package/dist/components/content/Layout/LayoutContent.js.map +1 -1
  202. package/dist/components/content/Layout/LayoutContext.d.ts +1 -3
  203. package/dist/components/content/Layout/LayoutContext.js +2 -3
  204. package/dist/components/content/Layout/LayoutContext.js.map +1 -1
  205. package/dist/components/content/Layout/LayoutFlex.d.ts +3 -5
  206. package/dist/components/content/Layout/LayoutFlex.js +4 -5
  207. package/dist/components/content/Layout/LayoutFlex.js.map +1 -1
  208. package/dist/components/content/Layout/LayoutFooter.d.ts +3 -5
  209. package/dist/components/content/Layout/LayoutFooter.js +4 -5
  210. package/dist/components/content/Layout/LayoutFooter.js.map +1 -1
  211. package/dist/components/content/Layout/LayoutGrid.d.ts +3 -5
  212. package/dist/components/content/Layout/LayoutGrid.js +4 -5
  213. package/dist/components/content/Layout/LayoutGrid.js.map +1 -1
  214. package/dist/components/content/Layout/LayoutHeader.d.ts +3 -5
  215. package/dist/components/content/Layout/LayoutHeader.js +6 -6
  216. package/dist/components/content/Layout/LayoutHeader.js.map +1 -1
  217. package/dist/components/content/Layout/LayoutPane.d.ts +4 -6
  218. package/dist/components/content/Layout/LayoutPane.js +7 -8
  219. package/dist/components/content/Layout/LayoutPane.js.map +1 -1
  220. package/dist/components/content/Layout/LayoutPanel.d.ts +23 -7
  221. package/dist/components/content/Layout/LayoutPanel.js +33 -21
  222. package/dist/components/content/Layout/LayoutPanel.js.map +1 -1
  223. package/dist/components/content/Layout/LayoutPanelHeader.d.ts +4 -6
  224. package/dist/components/content/Layout/LayoutPanelHeader.js +4 -5
  225. package/dist/components/content/Layout/LayoutPanelHeader.js.map +1 -1
  226. package/dist/components/content/Layout/LayoutPanelTransition.js +54 -51
  227. package/dist/components/content/Layout/LayoutPanelTransition.js.map +1 -1
  228. package/dist/components/content/Layout/LayoutToolbar.d.ts +3 -5
  229. package/dist/components/content/Layout/LayoutToolbar.js +4 -5
  230. package/dist/components/content/Layout/LayoutToolbar.js.map +1 -1
  231. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +2 -3
  232. package/dist/components/content/Layout/hooks/useTinyScrollbar.js.map +1 -1
  233. package/dist/components/content/Layout/index.d.ts +13 -14
  234. package/dist/components/content/Layout/index.js +17 -18
  235. package/dist/components/content/Layout/index.js.map +1 -1
  236. package/dist/components/content/Layout/utils.js +2 -2
  237. package/dist/components/content/Layout/utils.js.map +1 -1
  238. package/dist/components/content/Paragraph.d.ts +2 -5
  239. package/dist/components/content/Paragraph.js +3 -4
  240. package/dist/components/content/Paragraph.js.map +1 -1
  241. package/dist/components/content/Placeholder/Placeholder.d.ts +2 -5
  242. package/dist/components/content/Placeholder/Placeholder.js +2 -3
  243. package/dist/components/content/Placeholder/Placeholder.js.map +1 -1
  244. package/dist/components/content/PrismCode/PrismCode.d.ts +3 -5
  245. package/dist/components/content/PrismCode/PrismCode.js +4 -5
  246. package/dist/components/content/PrismCode/PrismCode.js.map +1 -1
  247. package/dist/components/content/PrismCode/prismSetup.js +3 -4
  248. package/dist/components/content/PrismCode/prismSetup.js.map +1 -1
  249. package/dist/components/content/PrismDiffCode/PrismDiffCode.d.ts +2 -9
  250. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +3 -4
  251. package/dist/components/content/PrismDiffCode/PrismDiffCode.js.map +1 -1
  252. package/dist/components/content/Result/Result.d.ts +9 -12
  253. package/dist/components/content/Result/Result.js +4 -5
  254. package/dist/components/content/Result/Result.js.map +1 -1
  255. package/dist/components/content/Skeleton/Skeleton.d.ts +13 -61
  256. package/dist/components/content/Skeleton/Skeleton.js +2 -3
  257. package/dist/components/content/Skeleton/Skeleton.js.map +1 -1
  258. package/dist/components/content/Tag/Tag.d.ts +4 -6
  259. package/dist/components/content/Tag/Tag.js +4 -5
  260. package/dist/components/content/Tag/Tag.js.map +1 -1
  261. package/dist/components/content/Text.d.ts +1347 -1350
  262. package/dist/components/content/Text.js +3 -4
  263. package/dist/components/content/Text.js.map +1 -1
  264. package/dist/components/content/TextItem/TextItem.d.ts +6 -5
  265. package/dist/components/content/TextItem/TextItem.js +2 -3
  266. package/dist/components/content/TextItem/TextItem.js.map +1 -1
  267. package/dist/components/content/TextItem/index.d.ts +2 -1
  268. package/dist/components/content/Title.d.ts +5 -7
  269. package/dist/components/content/Title.js +3 -4
  270. package/dist/components/content/Title.js.map +1 -1
  271. package/dist/components/content/Tree/Tree.d.ts +1 -4
  272. package/dist/components/content/Tree/Tree.js +4 -4
  273. package/dist/components/content/Tree/Tree.js.map +1 -1
  274. package/dist/components/content/Tree/TreeNode.js +5 -6
  275. package/dist/components/content/Tree/TreeNode.js.map +1 -1
  276. package/dist/components/content/Tree/index.d.ts +2 -1
  277. package/dist/components/content/Tree/styled.js +18 -4
  278. package/dist/components/content/Tree/styled.js.map +1 -1
  279. package/dist/components/content/Tree/tree-index.js +2 -2
  280. package/dist/components/content/Tree/tree-index.js.map +1 -1
  281. package/dist/components/content/Tree/types.d.ts +11 -13
  282. package/dist/components/content/Tree/use-checkbox-tree.js +2 -3
  283. package/dist/components/content/Tree/use-checkbox-tree.js.map +1 -1
  284. package/dist/components/content/Tree/use-load-data.js +2 -3
  285. package/dist/components/content/Tree/use-load-data.js.map +1 -1
  286. package/dist/components/content/highlightText.js +3 -4
  287. package/dist/components/content/highlightText.js.map +1 -1
  288. package/dist/components/content/use-auto-tooltip.d.ts +1 -3
  289. package/dist/components/content/use-auto-tooltip.js +2 -3
  290. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  291. package/dist/components/data/DataTable/DataTable.d.ts +1 -2
  292. package/dist/components/data/DataTable/DataTable.js +35 -25
  293. package/dist/components/data/DataTable/DataTable.js.map +1 -1
  294. package/dist/components/data/DataTable/index.d.ts +2 -1
  295. package/dist/components/data/DataTable/types.d.ts +4 -6
  296. package/dist/components/data/ItemTable/ItemTable.d.ts +6 -4
  297. package/dist/components/data/ItemTable/ItemTable.js +8 -5
  298. package/dist/components/data/ItemTable/ItemTable.js.map +1 -1
  299. package/dist/components/data/ItemTable/ItemTableBulkBar.d.ts +2 -5
  300. package/dist/components/data/ItemTable/ItemTableBulkBar.js +8 -4
  301. package/dist/components/data/ItemTable/ItemTableBulkBar.js.map +1 -1
  302. package/dist/components/data/ItemTable/ItemTableDragPreview.js +3 -4
  303. package/dist/components/data/ItemTable/ItemTableDragPreview.js.map +1 -1
  304. package/dist/components/data/ItemTable/ItemTableFooter.js +8 -4
  305. package/dist/components/data/ItemTable/ItemTableFooter.js.map +1 -1
  306. package/dist/components/data/ItemTable/ItemTableToolbar.d.ts +4 -15
  307. package/dist/components/data/ItemTable/ItemTableToolbar.js +2 -3
  308. package/dist/components/data/ItemTable/ItemTableToolbar.js.map +1 -1
  309. package/dist/components/data/ItemTable/index.d.ts +2 -1
  310. package/dist/components/data/ItemTable/types.d.ts +6 -6
  311. package/dist/components/data/ItemTable/use-item-table-column-widths.js +4 -4
  312. package/dist/components/data/ItemTable/use-item-table-column-widths.js.map +1 -1
  313. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +2 -3
  314. package/dist/components/data/ItemTable/use-item-table-drag-drop.js.map +1 -1
  315. package/dist/components/data/ItemTable/use-item-table-pagination.js +2 -3
  316. package/dist/components/data/ItemTable/use-item-table-pagination.js.map +1 -1
  317. package/dist/components/data/ItemTable/use-item-table-selection.js +2 -3
  318. package/dist/components/data/ItemTable/use-item-table-selection.js.map +1 -1
  319. package/dist/components/data/ItemTable/use-item-table-sort.js +2 -3
  320. package/dist/components/data/ItemTable/use-item-table-sort.js.map +1 -1
  321. package/dist/components/data/ItemTable/use-item-table-tree-model.js +2 -3
  322. package/dist/components/data/ItemTable/use-item-table-tree-model.js.map +1 -1
  323. package/dist/components/data/TableBase/ColumnResizer.js +2 -3
  324. package/dist/components/data/TableBase/ColumnResizer.js.map +1 -1
  325. package/dist/components/data/TableBase/RowCollection.d.ts +2 -0
  326. package/dist/components/data/TableBase/RowCollection.js +2 -2
  327. package/dist/components/data/TableBase/RowCollection.js.map +1 -1
  328. package/dist/components/data/TableBase/TableHeaderCell.js +2 -3
  329. package/dist/components/data/TableBase/TableHeaderCell.js.map +1 -1
  330. package/dist/components/data/TableBase/TableRow.js +2 -3
  331. package/dist/components/data/TableBase/TableRow.js.map +1 -1
  332. package/dist/components/data/TableBase/TableView.d.ts +2 -3
  333. package/dist/components/data/TableBase/TableView.js +25 -15
  334. package/dist/components/data/TableBase/TableView.js.map +1 -1
  335. package/dist/components/data/TableBase/TreeGridTable.js +9 -9
  336. package/dist/components/data/TableBase/TreeGridTable.js.map +1 -1
  337. package/dist/components/data/TableBase/column-header.js +2 -3
  338. package/dist/components/data/TableBase/column-header.js.map +1 -1
  339. package/dist/components/data/TableBase/column-menu.d.ts +3 -6
  340. package/dist/components/data/TableBase/column-menu.js +3 -4
  341. package/dist/components/data/TableBase/column-menu.js.map +1 -1
  342. package/dist/components/data/TableBase/column-styles.js +2 -3
  343. package/dist/components/data/TableBase/column-styles.js.map +1 -1
  344. package/dist/components/data/TableBase/column-tint.js +4 -5
  345. package/dist/components/data/TableBase/column-tint.js.map +1 -1
  346. package/dist/components/data/TableBase/index.d.ts +2 -1
  347. package/dist/components/data/TableBase/row-menu.js +2 -3
  348. package/dist/components/data/TableBase/row-menu.js.map +1 -1
  349. package/dist/components/data/TableBase/styled.d.ts +1 -3
  350. package/dist/components/data/TableBase/styled.js +168 -4
  351. package/dist/components/data/TableBase/styled.js.map +1 -1
  352. package/dist/components/data/TableBase/table-tree.d.ts +2 -0
  353. package/dist/components/data/TableBase/table-tree.js +2 -2
  354. package/dist/components/data/TableBase/table-tree.js.map +1 -1
  355. package/dist/components/data/TableBase/types.d.ts +30 -26
  356. package/dist/components/data/TableBase/types.js +2 -2
  357. package/dist/components/data/TableBase/types.js.map +1 -1
  358. package/dist/components/data/TableBase/use-cell-selection.d.ts +1 -2
  359. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  360. package/dist/components/data/TableBase/use-cell-selection.js.map +1 -1
  361. package/dist/components/data/TableBase/use-column-menu.js +4 -5
  362. package/dist/components/data/TableBase/use-column-menu.js.map +1 -1
  363. package/dist/components/data/TableBase/use-column-order.js +3 -4
  364. package/dist/components/data/TableBase/use-column-order.js.map +1 -1
  365. package/dist/components/data/TableBase/use-column-window.js +3 -4
  366. package/dist/components/data/TableBase/use-column-window.js.map +1 -1
  367. package/dist/components/data/TableBase/use-container-width.js +2 -3
  368. package/dist/components/data/TableBase/use-container-width.js.map +1 -1
  369. package/dist/components/data/TableBase/use-row-move-animation.js +3 -7
  370. package/dist/components/data/TableBase/use-row-move-animation.js.map +1 -1
  371. package/dist/components/data/TableBase/use-scrollability.js +2 -3
  372. package/dist/components/data/TableBase/use-scrollability.js.map +1 -1
  373. package/dist/components/data/TableBase/use-table-columns.js +4 -8
  374. package/dist/components/data/TableBase/use-table-columns.js.map +1 -1
  375. package/dist/components/data/TableBase/use-table-search.js +2 -3
  376. package/dist/components/data/TableBase/use-table-search.js.map +1 -1
  377. package/dist/components/data/TableBase/use-table-selection.d.ts +1 -0
  378. package/dist/components/data/TableBase/use-table-selection.js +7 -6
  379. package/dist/components/data/TableBase/use-table-selection.js.map +1 -1
  380. package/dist/components/data/TableBase/use-table-sort.js +2 -3
  381. package/dist/components/data/TableBase/use-table-sort.js.map +1 -1
  382. package/dist/components/data/TableBase/use-table-sorts.js +2 -3
  383. package/dist/components/data/TableBase/use-table-sorts.js.map +1 -1
  384. package/dist/components/data/TableBase/use-table-storage.d.ts +1 -3
  385. package/dist/components/data/TableBase/use-table-storage.js +4 -4
  386. package/dist/components/data/TableBase/use-table-storage.js.map +1 -1
  387. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +3 -4
  388. package/dist/components/data/TableBase/use-table-tooltip-refresh.js.map +1 -1
  389. package/dist/components/data/TableBase/use-table-tree-state.js +2 -3
  390. package/dist/components/data/TableBase/use-table-tree-state.js.map +1 -1
  391. package/dist/components/data/index.d.ts +4 -3
  392. package/dist/components/fields/Checkbox/Checkbox.d.ts +7 -10
  393. package/dist/components/fields/Checkbox/Checkbox.js +39 -36
  394. package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
  395. package/dist/components/fields/Checkbox/CheckboxGroup.d.ts +4 -6
  396. package/dist/components/fields/Checkbox/CheckboxGroup.js +16 -16
  397. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  398. package/dist/components/fields/Checkbox/context.js +2 -3
  399. package/dist/components/fields/Checkbox/context.js.map +1 -1
  400. package/dist/components/fields/Checkbox/index.d.ts +3 -2
  401. package/dist/components/fields/ColorInput/ColorInput.d.ts +3 -6
  402. package/dist/components/fields/ColorInput/ColorInput.js +2 -3
  403. package/dist/components/fields/ColorInput/ColorInput.js.map +1 -1
  404. package/dist/components/fields/ColorInput/index.d.ts +2 -1
  405. package/dist/components/fields/ColorPicker/ColorPicker.d.ts +3 -6
  406. package/dist/components/fields/ColorPicker/ColorPicker.js +321 -118
  407. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  408. package/dist/components/fields/ColorPicker/index.d.ts +2 -1
  409. package/dist/components/fields/ColorSwatch/ColorSwatch.d.ts +2 -5
  410. package/dist/components/fields/ColorSwatch/ColorSwatch.js +14 -3
  411. package/dist/components/fields/ColorSwatch/ColorSwatch.js.map +1 -1
  412. package/dist/components/fields/ColorSwatch/index.d.ts +2 -1
  413. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.d.ts +3 -6
  414. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +235 -72
  415. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -1
  416. package/dist/components/fields/ColorSwatchGroup/index.d.ts +2 -1
  417. package/dist/components/fields/ComboBox/ComboBox.d.ts +5 -6
  418. package/dist/components/fields/ComboBox/ComboBox.js +48 -45
  419. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  420. package/dist/components/fields/ComboBox/comboBoxOptions.js +2 -3
  421. package/dist/components/fields/ComboBox/comboBoxOptions.js.map +1 -1
  422. package/dist/components/fields/ComboBox/index.d.ts +2 -1
  423. package/dist/components/fields/CommandTextArea/CommandTextArea.d.ts +10 -9
  424. package/dist/components/fields/CommandTextArea/CommandTextArea.js +7 -7
  425. package/dist/components/fields/CommandTextArea/CommandTextArea.js.map +1 -1
  426. package/dist/components/fields/CommandTextArea/caretPosition.js +2 -2
  427. package/dist/components/fields/CommandTextArea/caretPosition.js.map +1 -1
  428. package/dist/components/fields/CommandTextArea/index.d.ts +2 -1
  429. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +2 -3
  430. package/dist/components/fields/CommandTextArea/useCaretAnchor.js.map +1 -1
  431. package/dist/components/fields/DatePicker/DateInput.d.ts +2 -3
  432. package/dist/components/fields/DatePicker/DateInput.js +10 -8
  433. package/dist/components/fields/DatePicker/DateInput.js.map +1 -1
  434. package/dist/components/fields/DatePicker/DateInputBase.js +53 -44
  435. package/dist/components/fields/DatePicker/DateInputBase.js.map +1 -1
  436. package/dist/components/fields/DatePicker/DatePicker.d.ts +3 -6
  437. package/dist/components/fields/DatePicker/DatePicker.js +28 -26
  438. package/dist/components/fields/DatePicker/DatePicker.js.map +1 -1
  439. package/dist/components/fields/DatePicker/DatePickerButton.js +2 -3
  440. package/dist/components/fields/DatePicker/DatePickerButton.js.map +1 -1
  441. package/dist/components/fields/DatePicker/DatePickerElement.js +2 -3
  442. package/dist/components/fields/DatePicker/DatePickerElement.js.map +1 -1
  443. package/dist/components/fields/DatePicker/DatePickerInput.js +2 -3
  444. package/dist/components/fields/DatePicker/DatePickerInput.js.map +1 -1
  445. package/dist/components/fields/DatePicker/DatePickerSegment.js +2 -3
  446. package/dist/components/fields/DatePicker/DatePickerSegment.js.map +1 -1
  447. package/dist/components/fields/DatePicker/DateRangePicker.d.ts +2 -3
  448. package/dist/components/fields/DatePicker/DateRangePicker.js +29 -27
  449. package/dist/components/fields/DatePicker/DateRangePicker.js.map +1 -1
  450. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.d.ts +2 -3
  451. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +110 -110
  452. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js.map +1 -1
  453. package/dist/components/fields/DatePicker/MonthPicker.d.ts +3 -6
  454. package/dist/components/fields/DatePicker/MonthPicker.js +3 -4
  455. package/dist/components/fields/DatePicker/MonthPicker.js.map +1 -1
  456. package/dist/components/fields/DatePicker/PeriodPicker.d.ts +2 -4
  457. package/dist/components/fields/DatePicker/PeriodPicker.js +14 -14
  458. package/dist/components/fields/DatePicker/PeriodPicker.js.map +1 -1
  459. package/dist/components/fields/DatePicker/QuarterPicker.d.ts +3 -6
  460. package/dist/components/fields/DatePicker/QuarterPicker.js +3 -4
  461. package/dist/components/fields/DatePicker/QuarterPicker.js.map +1 -1
  462. package/dist/components/fields/DatePicker/TimeInput.d.ts +3 -6
  463. package/dist/components/fields/DatePicker/TimeInput.js +10 -8
  464. package/dist/components/fields/DatePicker/TimeInput.js.map +1 -1
  465. package/dist/components/fields/DatePicker/WeekPicker.d.ts +3 -6
  466. package/dist/components/fields/DatePicker/WeekPicker.js +3 -4
  467. package/dist/components/fields/DatePicker/WeekPicker.js.map +1 -1
  468. package/dist/components/fields/DatePicker/YearPicker.d.ts +3 -6
  469. package/dist/components/fields/DatePicker/YearPicker.js +3 -4
  470. package/dist/components/fields/DatePicker/YearPicker.js.map +1 -1
  471. package/dist/components/fields/DatePicker/index.d.ts +10 -9
  472. package/dist/components/fields/DatePicker/parseDate.d.ts +1 -4
  473. package/dist/components/fields/DatePicker/parseDate.js +2 -3
  474. package/dist/components/fields/DatePicker/parseDate.js.map +1 -1
  475. package/dist/components/fields/DatePicker/period.d.ts +5 -7
  476. package/dist/components/fields/DatePicker/period.js +3 -4
  477. package/dist/components/fields/DatePicker/period.js.map +1 -1
  478. package/dist/components/fields/DatePicker/props.js +2 -2
  479. package/dist/components/fields/DatePicker/props.js.map +1 -1
  480. package/dist/components/fields/DatePicker/types.d.ts +2 -4
  481. package/dist/components/fields/DatePicker/utils.js +14 -11
  482. package/dist/components/fields/DatePicker/utils.js.map +1 -1
  483. package/dist/components/fields/FileInput/FileInput.d.ts +3 -5
  484. package/dist/components/fields/FileInput/FileInput.js +290 -107
  485. package/dist/components/fields/FileInput/FileInput.js.map +1 -1
  486. package/dist/components/fields/FilterListBox/FilterListBox.d.ts +4 -5
  487. package/dist/components/fields/FilterListBox/FilterListBox.js +24 -19
  488. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  489. package/dist/components/fields/FilterListBox/index.d.ts +2 -1
  490. package/dist/components/fields/FilterPicker/FilterPicker.d.ts +3 -5
  491. package/dist/components/fields/FilterPicker/FilterPicker.js +12 -10
  492. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  493. package/dist/components/fields/FilterPicker/index.d.ts +2 -1
  494. package/dist/components/fields/Input/Input.d.ts +6 -7
  495. package/dist/components/fields/Input/Input.js +6 -7
  496. package/dist/components/fields/Input/Input.js.map +1 -1
  497. package/dist/components/fields/Input/index.d.ts +2 -1
  498. package/dist/components/fields/ListBox/DraggableListBox.js +2 -3
  499. package/dist/components/fields/ListBox/DraggableListBox.js.map +1 -1
  500. package/dist/components/fields/ListBox/ListBox.d.ts +5 -7
  501. package/dist/components/fields/ListBox/ListBox.js +30 -26
  502. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  503. package/dist/components/fields/ListBox/index.d.ts +2 -1
  504. package/dist/components/fields/ListBox/optionId.js +2 -2
  505. package/dist/components/fields/ListBox/optionId.js.map +1 -1
  506. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +3 -4
  507. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  508. package/dist/components/fields/ListBoxPopover/index.d.ts +2 -1
  509. package/dist/components/fields/ListBoxPopover/listNavigation.d.ts +2 -4
  510. package/dist/components/fields/ListBoxPopover/listNavigation.js +2 -2
  511. package/dist/components/fields/ListBoxPopover/listNavigation.js.map +1 -1
  512. package/dist/components/fields/ListBoxPopover/useCompositeFocus.d.ts +4 -12
  513. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +2 -3
  514. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js.map +1 -1
  515. package/dist/components/fields/NumberInput/NumberInput.d.ts +4 -6
  516. package/dist/components/fields/NumberInput/NumberInput.js +114 -110
  517. package/dist/components/fields/NumberInput/NumberInput.js.map +1 -1
  518. package/dist/components/fields/NumberInput/StepButton.js +2 -3
  519. package/dist/components/fields/NumberInput/StepButton.js.map +1 -1
  520. package/dist/components/fields/PasswordInput/PasswordInput.d.ts +3 -5
  521. package/dist/components/fields/PasswordInput/PasswordInput.js +4 -4
  522. package/dist/components/fields/PasswordInput/PasswordInput.js.map +1 -1
  523. package/dist/components/fields/Picker/Picker.d.ts +3 -5
  524. package/dist/components/fields/Picker/Picker.js +12 -10
  525. package/dist/components/fields/Picker/Picker.js.map +1 -1
  526. package/dist/components/fields/Picker/index.d.ts +2 -1
  527. package/dist/components/fields/RadioGroup/Radio.d.ts +393 -394
  528. package/dist/components/fields/RadioGroup/Radio.js +60 -65
  529. package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
  530. package/dist/components/fields/RadioGroup/RadioGroup.d.ts +5 -7
  531. package/dist/components/fields/RadioGroup/RadioGroup.js +19 -19
  532. package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
  533. package/dist/components/fields/RadioGroup/context.js +2 -3
  534. package/dist/components/fields/RadioGroup/context.js.map +1 -1
  535. package/dist/components/fields/RadioGroup/index.d.ts +3 -2
  536. package/dist/components/fields/SearchComboBox/SearchComboBox.d.ts +5 -6
  537. package/dist/components/fields/SearchComboBox/SearchComboBox.js +16 -16
  538. package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
  539. package/dist/components/fields/SearchComboBox/index.d.ts +2 -1
  540. package/dist/components/fields/SearchInput/SearchInput.d.ts +4 -6
  541. package/dist/components/fields/SearchInput/SearchInput.js +48 -49
  542. package/dist/components/fields/SearchInput/SearchInput.js.map +1 -1
  543. package/dist/components/fields/SearchInput/index.d.ts +2 -1
  544. package/dist/components/fields/Select/Select.d.ts +9 -29
  545. package/dist/components/fields/Select/Select.js +12 -10
  546. package/dist/components/fields/Select/Select.js.map +1 -1
  547. package/dist/components/fields/Select/index.d.ts +2 -1
  548. package/dist/components/fields/Slider/Gradation.js +2 -3
  549. package/dist/components/fields/Slider/Gradation.js.map +1 -1
  550. package/dist/components/fields/Slider/HueSlider.d.ts +3 -6
  551. package/dist/components/fields/Slider/HueSlider.js +5 -6
  552. package/dist/components/fields/Slider/HueSlider.js.map +1 -1
  553. package/dist/components/fields/Slider/RangeSlider.d.ts +3 -6
  554. package/dist/components/fields/Slider/RangeSlider.js +4 -5
  555. package/dist/components/fields/Slider/RangeSlider.js.map +1 -1
  556. package/dist/components/fields/Slider/Slider.d.ts +3 -6
  557. package/dist/components/fields/Slider/Slider.js +4 -5
  558. package/dist/components/fields/Slider/Slider.js.map +1 -1
  559. package/dist/components/fields/Slider/SliderBase.js +296 -88
  560. package/dist/components/fields/Slider/SliderBase.js.map +1 -1
  561. package/dist/components/fields/Slider/SliderThumb.js +2 -3
  562. package/dist/components/fields/Slider/SliderThumb.js.map +1 -1
  563. package/dist/components/fields/Slider/SliderTrack.js +2 -3
  564. package/dist/components/fields/Slider/SliderTrack.js.map +1 -1
  565. package/dist/components/fields/Slider/elements.js +2 -3
  566. package/dist/components/fields/Slider/elements.js.map +1 -1
  567. package/dist/components/fields/Slider/index.d.ts +4 -4
  568. package/dist/components/fields/Slider/index.js +5 -6
  569. package/dist/components/fields/Slider/types.d.ts +2 -3
  570. package/dist/components/fields/Switch/Switch.d.ts +4 -6
  571. package/dist/components/fields/Switch/Switch.js +78 -70
  572. package/dist/components/fields/Switch/Switch.js.map +1 -1
  573. package/dist/components/fields/TagInput/TagInput.d.ts +5 -6
  574. package/dist/components/fields/TagInput/TagInput.js +411 -998
  575. package/dist/components/fields/TagInput/TagInput.js.map +1 -1
  576. package/dist/components/fields/TagInput/TagList.js +3 -4
  577. package/dist/components/fields/TagInput/TagList.js.map +1 -1
  578. package/dist/components/fields/TagInput/index.d.ts +2 -1
  579. package/dist/components/fields/TagInput/useActiveOption.js +2 -3
  580. package/dist/components/fields/TagInput/useActiveOption.js.map +1 -1
  581. package/dist/components/fields/TagInput/useTagError.js +2 -3
  582. package/dist/components/fields/TagInput/useTagError.js.map +1 -1
  583. package/dist/components/fields/TextArea/TextArea.d.ts +4 -6
  584. package/dist/components/fields/TextArea/TextArea.js +4 -4
  585. package/dist/components/fields/TextArea/TextArea.js.map +1 -1
  586. package/dist/components/fields/TextArea/index.d.ts +2 -1
  587. package/dist/components/fields/TextInput/TextInput.d.ts +4 -6
  588. package/dist/components/fields/TextInput/TextInput.js +3 -3
  589. package/dist/components/fields/TextInput/TextInput.js.map +1 -1
  590. package/dist/components/fields/TextInput/TextInputBase.d.ts +6 -8
  591. package/dist/components/fields/TextInput/TextInputBase.js +10 -9
  592. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  593. package/dist/components/fields/TextInput/displayed-validation.js +2 -3
  594. package/dist/components/fields/TextInput/displayed-validation.js.map +1 -1
  595. package/dist/components/fields/TextInput/index.d.ts +2 -1
  596. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +2 -3
  597. package/dist/components/fields/TextInput/useAutoSizeTextArea.js.map +1 -1
  598. package/dist/components/fields/TextInputMapper/TextInputMapper.d.ts +4 -6
  599. package/dist/components/fields/TextInputMapper/TextInputMapper.js +8 -10
  600. package/dist/components/fields/TextInputMapper/TextInputMapper.js.map +1 -1
  601. package/dist/components/fields/TextInputMapper/index.d.ts +2 -1
  602. package/dist/components/fields/TriggerActions.js +3 -4
  603. package/dist/components/fields/TriggerActions.js.map +1 -1
  604. package/dist/components/fields/color/ColorPanel.js +4 -5
  605. package/dist/components/fields/color/ColorPanel.js.map +1 -1
  606. package/dist/components/fields/color/channels.d.ts +2 -4
  607. package/dist/components/fields/color/channels.js +2 -3
  608. package/dist/components/fields/color/channels.js.map +1 -1
  609. package/dist/components/fields/color/color.d.ts +4 -5
  610. package/dist/components/fields/color/color.js +3 -4
  611. package/dist/components/fields/color/color.js.map +1 -1
  612. package/dist/components/fields/color/context.js +2 -3
  613. package/dist/components/fields/color/context.js.map +1 -1
  614. package/dist/components/fields/color/index.d.ts +2 -1
  615. package/dist/components/fields/index.d.ts +27 -26
  616. package/dist/components/fields/option-origin-press.js +2 -2
  617. package/dist/components/fields/option-origin-press.js.map +1 -1
  618. package/dist/components/form/FieldWrapper/FieldWrapper.d.ts +15 -19
  619. package/dist/components/form/FieldWrapper/FieldWrapper.js +123 -123
  620. package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
  621. package/dist/components/form/FieldWrapper/field-description.js +2 -3
  622. package/dist/components/form/FieldWrapper/field-description.js.map +1 -1
  623. package/dist/components/form/FieldWrapper/index.d.ts +2 -1
  624. package/dist/components/form/FieldWrapper/types.d.ts +20 -12
  625. package/dist/components/form/Form/Field.d.ts +2 -5
  626. package/dist/components/form/Form/Field.js +2 -3
  627. package/dist/components/form/Form/Field.js.map +1 -1
  628. package/dist/components/form/Form/Form.d.ts +6 -12
  629. package/dist/components/form/Form/Form.js +5 -6
  630. package/dist/components/form/Form/Form.js.map +1 -1
  631. package/dist/components/form/Form/ModernFormRoot.d.ts +1 -3
  632. package/dist/components/form/Form/ModernFormRoot.js +3 -4
  633. package/dist/components/form/Form/ModernFormRoot.js.map +1 -1
  634. package/dist/components/form/Form/ResetButton/ResetButton.d.ts +3 -6
  635. package/dist/components/form/Form/ResetButton/ResetButton.js +3 -4
  636. package/dist/components/form/Form/ResetButton/ResetButton.js.map +1 -1
  637. package/dist/components/form/Form/ResetButton/index.d.ts +2 -1
  638. package/dist/components/form/Form/SubmitButton/SubmitButton.d.ts +3 -6
  639. package/dist/components/form/Form/SubmitButton/SubmitButton.js +3 -4
  640. package/dist/components/form/Form/SubmitButton/SubmitButton.js.map +1 -1
  641. package/dist/components/form/Form/SubmitButton/index.d.ts +2 -1
  642. package/dist/components/form/Form/SubmitError.d.ts +3 -5
  643. package/dist/components/form/Form/SubmitError.js +3 -4
  644. package/dist/components/form/Form/SubmitError.js.map +1 -1
  645. package/dist/components/form/Form/backend.d.ts +3 -5
  646. package/dist/components/form/Form/backend.js +2 -2
  647. package/dist/components/form/Form/backend.js.map +1 -1
  648. package/dist/components/form/Form/index.d.ts +7 -10
  649. package/dist/components/form/Form/index.js +7 -8
  650. package/dist/components/form/Form/index.js.map +1 -1
  651. package/dist/components/form/Form/modern/actions.js +2 -3
  652. package/dist/components/form/Form/modern/actions.js.map +1 -1
  653. package/dist/components/form/Form/modern/context.d.ts +2 -4
  654. package/dist/components/form/Form/modern/context.js +2 -3
  655. package/dist/components/form/Form/modern/context.js.map +1 -1
  656. package/dist/components/form/Form/modern/controller.d.ts +9 -11
  657. package/dist/components/form/Form/modern/controller.js +2 -3
  658. package/dist/components/form/Form/modern/controller.js.map +1 -1
  659. package/dist/components/form/Form/modern/field-binding.js +2 -3
  660. package/dist/components/form/Form/modern/field-binding.js.map +1 -1
  661. package/dist/components/form/Form/modern/field.d.ts +4 -5
  662. package/dist/components/form/Form/modern/field.js +2 -3
  663. package/dist/components/form/Form/modern/field.js.map +1 -1
  664. package/dist/components/form/Form/modern/path-types.d.ts +4 -5
  665. package/dist/components/form/Form/modern/react.d.ts +7 -10
  666. package/dist/components/form/Form/modern/react.js +2 -3
  667. package/dist/components/form/Form/modern/react.js.map +1 -1
  668. package/dist/components/form/Form/modern/read-types.d.ts +3 -4
  669. package/dist/components/form/Form/modern/store.js +2 -3
  670. package/dist/components/form/Form/modern/store.js.map +1 -1
  671. package/dist/components/form/Form/modern/types.d.ts +18 -20
  672. package/dist/components/form/Form/modern/validation.d.ts +2 -4
  673. package/dist/components/form/Form/modern/validation.js +2 -3
  674. package/dist/components/form/Form/modern/validation.js.map +1 -1
  675. package/dist/components/form/Form/modern/values.d.ts +1 -2
  676. package/dist/components/form/Form/modern/values.js +2 -2
  677. package/dist/components/form/Form/modern/values.js.map +1 -1
  678. package/dist/components/form/Form/reset-unbound-controls.js +3 -5
  679. package/dist/components/form/Form/reset-unbound-controls.js.map +1 -1
  680. package/dist/components/form/Form/types.d.ts +4 -6
  681. package/dist/components/form/Form/use-field/index.d.ts +2 -1
  682. package/dist/components/form/Form/use-field/types.d.ts +6 -6
  683. package/dist/components/form/Form/use-field/use-field-binding.js +2 -3
  684. package/dist/components/form/Form/use-field/use-field-binding.js.map +1 -1
  685. package/dist/components/form/Form/use-field/use-field-props.d.ts +11 -9
  686. package/dist/components/form/Form/use-field/use-field-props.js +48 -42
  687. package/dist/components/form/Form/use-field/use-field-props.js.map +1 -1
  688. package/dist/components/form/Form/use-field/use-field.d.ts +2 -4
  689. package/dist/components/form/Form/use-field/use-field.js +2 -3
  690. package/dist/components/form/Form/use-field/use-field.js.map +1 -1
  691. package/dist/components/form/Form/use-form.d.ts +5 -6
  692. package/dist/components/form/Form/use-form.js +3 -4
  693. package/dist/components/form/Form/use-form.js.map +1 -1
  694. package/dist/components/form/Form/validation.js +2 -3
  695. package/dist/components/form/Form/validation.js.map +1 -1
  696. package/dist/components/form/Label.d.ts +7 -9
  697. package/dist/components/form/Label.js +3 -4
  698. package/dist/components/form/Label.js.map +1 -1
  699. package/dist/components/form/field-chrome.js +46 -6
  700. package/dist/components/form/field-chrome.js.map +1 -1
  701. package/dist/components/form/index.d.ts +6 -5
  702. package/dist/components/form/legacy-tooltip.js +2 -3
  703. package/dist/components/form/legacy-tooltip.js.map +1 -1
  704. package/dist/components/form/validation/ValidationIndicator.d.ts +4 -10
  705. package/dist/components/form/validation/ValidationIndicator.js +2 -3
  706. package/dist/components/form/validation/ValidationIndicator.js.map +1 -1
  707. package/dist/components/form/validation/index.d.ts +2 -1
  708. package/dist/components/form/validation/resolve-validation-props.d.ts +6 -17
  709. package/dist/components/form/validation/resolve-validation-props.js +2 -2
  710. package/dist/components/form/validation/resolve-validation-props.js.map +1 -1
  711. package/dist/components/form/validation/use-validation-props.d.ts +1 -3
  712. package/dist/components/form/validation/use-validation-props.js +2 -3
  713. package/dist/components/form/validation/use-validation-props.js.map +1 -1
  714. package/dist/components/form/wrapper.d.ts +23 -9
  715. package/dist/components/form/wrapper.js +20 -11
  716. package/dist/components/form/wrapper.js.map +1 -1
  717. package/dist/components/helpers/DisplayTransition/DisplayTransition.d.ts +22 -25
  718. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +16 -16
  719. package/dist/components/helpers/DisplayTransition/DisplayTransition.js.map +1 -1
  720. package/dist/components/helpers/IconSwitch/IconSwitch.d.ts +3 -5
  721. package/dist/components/helpers/IconSwitch/IconSwitch.js +2 -3
  722. package/dist/components/helpers/IconSwitch/IconSwitch.js.map +1 -1
  723. package/dist/components/layout/Flex.d.ts +2 -5
  724. package/dist/components/layout/Flex.js +2 -3
  725. package/dist/components/layout/Flex.js.map +1 -1
  726. package/dist/components/layout/Flow.d.ts +2 -5
  727. package/dist/components/layout/Flow.js +2 -3
  728. package/dist/components/layout/Flow.js.map +1 -1
  729. package/dist/components/layout/Grid.d.ts +2 -5
  730. package/dist/components/layout/Grid.js +2 -3
  731. package/dist/components/layout/Grid.js.map +1 -1
  732. package/dist/components/layout/Panel.d.ts +3 -5
  733. package/dist/components/layout/Panel.js +22 -22
  734. package/dist/components/layout/Panel.js.map +1 -1
  735. package/dist/components/layout/Prefix.d.ts +2 -5
  736. package/dist/components/layout/Prefix.js +2 -3
  737. package/dist/components/layout/Prefix.js.map +1 -1
  738. package/dist/components/layout/ResizablePanel.d.ts +3 -5
  739. package/dist/components/layout/ResizablePanel.js +4 -5
  740. package/dist/components/layout/ResizablePanel.js.map +1 -1
  741. package/dist/components/layout/Space.d.ts +2 -5
  742. package/dist/components/layout/Space.js +2 -3
  743. package/dist/components/layout/Space.js.map +1 -1
  744. package/dist/components/layout/Suffix.d.ts +2 -5
  745. package/dist/components/layout/Suffix.js +2 -3
  746. package/dist/components/layout/Suffix.js.map +1 -1
  747. package/dist/components/navigation/Pagination/Pagination.d.ts +2 -4
  748. package/dist/components/navigation/Pagination/Pagination.js +9 -5
  749. package/dist/components/navigation/Pagination/Pagination.js.map +1 -1
  750. package/dist/components/navigation/Pagination/index.d.ts +3 -2
  751. package/dist/components/navigation/Pagination/types.d.ts +4 -6
  752. package/dist/components/navigation/Pagination/use-pagination.d.ts +11 -16
  753. package/dist/components/navigation/Pagination/use-pagination.js +2 -3
  754. package/dist/components/navigation/Pagination/use-pagination.js.map +1 -1
  755. package/dist/components/navigation/Tabs/BoardDragActiveProvider.d.ts +2 -5
  756. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +2 -3
  757. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js.map +1 -1
  758. package/dist/components/navigation/Tabs/DraggableTabList.js +2 -3
  759. package/dist/components/navigation/Tabs/DraggableTabList.js.map +1 -1
  760. package/dist/components/navigation/Tabs/TabButton.js +4 -5
  761. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  762. package/dist/components/navigation/Tabs/TabDropIndicator.js +2 -3
  763. package/dist/components/navigation/Tabs/TabDropIndicator.js.map +1 -1
  764. package/dist/components/navigation/Tabs/TabPanel.js +3 -4
  765. package/dist/components/navigation/Tabs/TabPanel.js.map +1 -1
  766. package/dist/components/navigation/Tabs/TabPicker.js +2 -3
  767. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  768. package/dist/components/navigation/Tabs/Tabs.d.ts +4 -7
  769. package/dist/components/navigation/Tabs/Tabs.js +5 -5
  770. package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
  771. package/dist/components/navigation/Tabs/TabsAction.d.ts +2 -6
  772. package/dist/components/navigation/Tabs/TabsAction.js +3 -4
  773. package/dist/components/navigation/Tabs/TabsAction.js.map +1 -1
  774. package/dist/components/navigation/Tabs/TabsContext.js +2 -3
  775. package/dist/components/navigation/Tabs/TabsContext.js.map +1 -1
  776. package/dist/components/navigation/Tabs/index.d.ts +2 -1
  777. package/dist/components/navigation/Tabs/popover-placement.js +2 -2
  778. package/dist/components/navigation/Tabs/popover-placement.js.map +1 -1
  779. package/dist/components/navigation/Tabs/styled.js +3 -4
  780. package/dist/components/navigation/Tabs/styled.js.map +1 -1
  781. package/dist/components/navigation/Tabs/types.d.ts +15 -16
  782. package/dist/components/navigation/Tabs/types.js +2 -2
  783. package/dist/components/navigation/Tabs/types.js.map +1 -1
  784. package/dist/components/navigation/Tabs/use-tab-editing.js +2 -3
  785. package/dist/components/navigation/Tabs/use-tab-editing.js.map +1 -1
  786. package/dist/components/navigation/Tabs/use-tab-indicator.js +2 -3
  787. package/dist/components/navigation/Tabs/use-tab-indicator.js.map +1 -1
  788. package/dist/components/navigation/index.d.ts +3 -2
  789. package/dist/components/organisms/StatsCard/StatsCard.d.ts +2 -10
  790. package/dist/components/organisms/StatsCard/StatsCard.js +4 -5
  791. package/dist/components/organisms/StatsCard/StatsCard.js.map +1 -1
  792. package/dist/components/other/Calendar/Calendar.js +3 -4
  793. package/dist/components/other/Calendar/Calendar.js.map +1 -1
  794. package/dist/components/other/Calendar/CalendarCell.js +2 -3
  795. package/dist/components/other/Calendar/CalendarCell.js.map +1 -1
  796. package/dist/components/other/Calendar/CalendarGrid.js +2 -3
  797. package/dist/components/other/Calendar/CalendarGrid.js.map +1 -1
  798. package/dist/components/other/Calendar/CalendarHeader.js +3 -4
  799. package/dist/components/other/Calendar/CalendarHeader.js.map +1 -1
  800. package/dist/components/other/Calendar/CalendarPanel.js +2 -3
  801. package/dist/components/other/Calendar/CalendarPanel.js.map +1 -1
  802. package/dist/components/other/Calendar/PeriodCalendar.js +2 -3
  803. package/dist/components/other/Calendar/PeriodCalendar.js.map +1 -1
  804. package/dist/components/other/Calendar/PeriodGrid.js +2 -3
  805. package/dist/components/other/Calendar/PeriodGrid.js.map +1 -1
  806. package/dist/components/other/Calendar/RangeCalendar.js +3 -4
  807. package/dist/components/other/Calendar/RangeCalendar.js.map +1 -1
  808. package/dist/components/other/Calendar/styled.js +2 -3
  809. package/dist/components/other/Calendar/styled.js.map +1 -1
  810. package/dist/components/other/CubeLogo/CubeLogo.d.ts +3 -6
  811. package/dist/components/other/CubeLogo/CubeLogo.js +2 -3
  812. package/dist/components/other/CubeLogo/CubeLogo.js.map +1 -1
  813. package/dist/components/other/NoDataIcon/NoDataIcon.d.ts +2 -5
  814. package/dist/components/other/NoDataIcon/NoDataIcon.js +2 -3
  815. package/dist/components/other/NoDataIcon/NoDataIcon.js.map +1 -1
  816. package/dist/components/other/NoDataIcon/index.d.ts +2 -1
  817. package/dist/components/overlays/AlertDialog/AlertDialog.d.ts +4 -6
  818. package/dist/components/overlays/AlertDialog/AlertDialog.js +4 -5
  819. package/dist/components/overlays/AlertDialog/AlertDialog.js.map +1 -1
  820. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.d.ts +3 -6
  821. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +3 -5
  822. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js.map +1 -1
  823. package/dist/components/overlays/AlertDialog/AlertDialogZone.d.ts +1 -2
  824. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +3 -4
  825. package/dist/components/overlays/AlertDialog/AlertDialogZone.js.map +1 -1
  826. package/dist/components/overlays/AlertDialog/index.d.ts +3 -2
  827. package/dist/components/overlays/AlertDialog/types.d.ts +5 -10
  828. package/dist/components/overlays/Dialog/Dialog.d.ts +6 -6
  829. package/dist/components/overlays/Dialog/Dialog.js +95 -33
  830. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  831. package/dist/components/overlays/Dialog/DialogContainer.d.ts +6 -7
  832. package/dist/components/overlays/Dialog/DialogContainer.js +42 -37
  833. package/dist/components/overlays/Dialog/DialogContainer.js.map +1 -1
  834. package/dist/components/overlays/Dialog/DialogForm.d.ts +5 -7
  835. package/dist/components/overlays/Dialog/DialogForm.js +5 -6
  836. package/dist/components/overlays/Dialog/DialogForm.js.map +1 -1
  837. package/dist/components/overlays/Dialog/DialogTrigger.d.ts +3 -6
  838. package/dist/components/overlays/Dialog/DialogTrigger.js +5 -6
  839. package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
  840. package/dist/components/overlays/Dialog/ModernDialogForm.js +5 -6
  841. package/dist/components/overlays/Dialog/ModernDialogForm.js.map +1 -1
  842. package/dist/components/overlays/Dialog/context.js +12 -4
  843. package/dist/components/overlays/Dialog/context.js.map +1 -1
  844. package/dist/components/overlays/Dialog/default-button-text.js +2 -2
  845. package/dist/components/overlays/Dialog/default-button-text.js.map +1 -1
  846. package/dist/components/overlays/Dialog/index.d.ts +2 -1
  847. package/dist/components/overlays/Dialog/use-content-overflow.js +2 -3
  848. package/dist/components/overlays/Dialog/use-content-overflow.js.map +1 -1
  849. package/dist/components/overlays/Dialog/use-dialog-container.d.ts +2 -5
  850. package/dist/components/overlays/Dialog/use-dialog-container.js +2 -3
  851. package/dist/components/overlays/Dialog/use-dialog-container.js.map +1 -1
  852. package/dist/components/overlays/Dialog/use-dialog-open-sync.js +2 -3
  853. package/dist/components/overlays/Dialog/use-dialog-open-sync.js.map +1 -1
  854. package/dist/components/overlays/Dialog/use-retained-dialog-focus.js +386 -0
  855. package/dist/components/overlays/Dialog/use-retained-dialog-focus.js.map +1 -0
  856. package/dist/components/overlays/Modal/Modal.d.ts +1 -2
  857. package/dist/components/overlays/Modal/Modal.js +5 -6
  858. package/dist/components/overlays/Modal/Modal.js.map +1 -1
  859. package/dist/components/overlays/Modal/OpenTransitionContext.js +2 -3
  860. package/dist/components/overlays/Modal/OpenTransitionContext.js.map +1 -1
  861. package/dist/components/overlays/Modal/Overlay.js +35 -14
  862. package/dist/components/overlays/Modal/Overlay.js.map +1 -1
  863. package/dist/components/overlays/Modal/Popover.d.ts +1 -1
  864. package/dist/components/overlays/Modal/Popover.js +4 -5
  865. package/dist/components/overlays/Modal/Popover.js.map +1 -1
  866. package/dist/components/overlays/Modal/Tray.js +72 -65
  867. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  868. package/dist/components/overlays/Modal/Underlay.js +3 -4
  869. package/dist/components/overlays/Modal/Underlay.js.map +1 -1
  870. package/dist/components/overlays/Modal/index.d.ts +3 -2
  871. package/dist/components/overlays/Modal/modal-containment.js +2 -3
  872. package/dist/components/overlays/Modal/modal-containment.js.map +1 -1
  873. package/dist/components/overlays/Modal/types.d.ts +1 -3
  874. package/dist/components/overlays/Notifications/Notification.d.ts +1 -3
  875. package/dist/components/overlays/Notifications/Notification.js +4 -4
  876. package/dist/components/overlays/Notifications/Notification.js.map +1 -1
  877. package/dist/components/overlays/Notifications/NotificationAction.d.ts +1 -10
  878. package/dist/components/overlays/Notifications/NotificationAction.js +2 -3
  879. package/dist/components/overlays/Notifications/NotificationAction.js.map +1 -1
  880. package/dist/components/overlays/Notifications/NotificationCard.d.ts +2 -18
  881. package/dist/components/overlays/Notifications/NotificationCard.js +3 -4
  882. package/dist/components/overlays/Notifications/NotificationCard.js.map +1 -1
  883. package/dist/components/overlays/Notifications/NotificationContext.d.ts +1 -4
  884. package/dist/components/overlays/Notifications/NotificationContext.js +2 -3
  885. package/dist/components/overlays/Notifications/NotificationContext.js.map +1 -1
  886. package/dist/components/overlays/Notifications/NotificationItem.d.ts +2 -9
  887. package/dist/components/overlays/Notifications/NotificationItem.js +2 -3
  888. package/dist/components/overlays/Notifications/NotificationItem.js.map +1 -1
  889. package/dist/components/overlays/Notifications/OverlayContainer.js +6 -8
  890. package/dist/components/overlays/Notifications/OverlayContainer.js.map +1 -1
  891. package/dist/components/overlays/Notifications/OverlayProvider.d.ts +1 -7
  892. package/dist/components/overlays/Notifications/OverlayProvider.js +3 -4
  893. package/dist/components/overlays/Notifications/OverlayProvider.js.map +1 -1
  894. package/dist/components/overlays/Notifications/PersistentNotificationsList.d.ts +1 -8
  895. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +3 -4
  896. package/dist/components/overlays/Notifications/PersistentNotificationsList.js.map +1 -1
  897. package/dist/components/overlays/Notifications/dismissed-storage.js +2 -2
  898. package/dist/components/overlays/Notifications/dismissed-storage.js.map +1 -1
  899. package/dist/components/overlays/Notifications/format-relative-time.d.ts +1 -3
  900. package/dist/components/overlays/Notifications/format-relative-time.js +2 -2
  901. package/dist/components/overlays/Notifications/format-relative-time.js.map +1 -1
  902. package/dist/components/overlays/Notifications/index.d.ts +3 -4
  903. package/dist/components/overlays/Notifications/index.js +4 -5
  904. package/dist/components/overlays/Notifications/index.js.map +1 -1
  905. package/dist/components/overlays/Notifications/types.d.ts +14 -16
  906. package/dist/components/overlays/Notifications/use-notification-state.js +3 -4
  907. package/dist/components/overlays/Notifications/use-notification-state.js.map +1 -1
  908. package/dist/components/overlays/Notifications/use-notifications.d.ts +1 -3
  909. package/dist/components/overlays/Notifications/use-notifications.js +8 -7
  910. package/dist/components/overlays/Notifications/use-notifications.js.map +1 -1
  911. package/dist/components/overlays/Notifications/use-overlay-timers.js +2 -3
  912. package/dist/components/overlays/Notifications/use-overlay-timers.js.map +1 -1
  913. package/dist/components/overlays/Notifications/use-persistent-notifications.d.ts +2 -4
  914. package/dist/components/overlays/Notifications/use-persistent-notifications.js +2 -3
  915. package/dist/components/overlays/Notifications/use-persistent-notifications.js.map +1 -1
  916. package/dist/components/overlays/Notifications/use-persistent-state.js +2 -3
  917. package/dist/components/overlays/Notifications/use-persistent-state.js.map +1 -1
  918. package/dist/components/overlays/Notifications/use-toast-state.js +2 -3
  919. package/dist/components/overlays/Notifications/use-toast-state.js.map +1 -1
  920. package/dist/components/overlays/Toast/ToastItem.d.ts +3 -6
  921. package/dist/components/overlays/Toast/ToastItem.js +3 -4
  922. package/dist/components/overlays/Toast/ToastItem.js.map +1 -1
  923. package/dist/components/overlays/Toast/ToastProvider.d.ts +2 -1
  924. package/dist/components/overlays/Toast/index.d.ts +6 -7
  925. package/dist/components/overlays/Toast/index.js +3 -4
  926. package/dist/components/overlays/Toast/index.js.map +1 -1
  927. package/dist/components/overlays/Toast/types.d.ts +8 -10
  928. package/dist/components/overlays/Toast/useProgressToast.d.ts +1 -3
  929. package/dist/components/overlays/Toast/useProgressToast.js +11 -10
  930. package/dist/components/overlays/Toast/useProgressToast.js.map +1 -1
  931. package/dist/components/overlays/Toast/useToast.d.ts +2 -4
  932. package/dist/components/overlays/Toast/useToast.js +2 -3
  933. package/dist/components/overlays/Toast/useToast.js.map +1 -1
  934. package/dist/components/overlays/Tooltip/Tooltip.d.ts +3 -5
  935. package/dist/components/overlays/Tooltip/Tooltip.js +3 -4
  936. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  937. package/dist/components/overlays/Tooltip/TooltipProvider.d.ts +2 -4
  938. package/dist/components/overlays/Tooltip/TooltipProvider.js +3 -4
  939. package/dist/components/overlays/Tooltip/TooltipProvider.js.map +1 -1
  940. package/dist/components/overlays/Tooltip/TooltipTrigger.d.ts +3 -6
  941. package/dist/components/overlays/Tooltip/TooltipTrigger.js +4 -5
  942. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  943. package/dist/components/overlays/Tooltip/context.js +2 -3
  944. package/dist/components/overlays/Tooltip/context.js.map +1 -1
  945. package/dist/components/overlays/Tooltip/split-trigger-props.d.ts +2 -3
  946. package/dist/components/overlays/Tooltip/split-trigger-props.js +2 -3
  947. package/dist/components/overlays/Tooltip/split-trigger-props.js.map +1 -1
  948. package/dist/components/portal/Portal.d.ts +1 -4
  949. package/dist/components/portal/Portal.js +2 -3
  950. package/dist/components/portal/Portal.js.map +1 -1
  951. package/dist/components/portal/PortalProvider.js +2 -3
  952. package/dist/components/portal/PortalProvider.js.map +1 -1
  953. package/dist/components/portal/index.d.ts +2 -1
  954. package/dist/components/portal/types.d.ts +1 -3
  955. package/dist/components/portal/usePortal.js +2 -3
  956. package/dist/components/portal/usePortal.js.map +1 -1
  957. package/dist/components/shared/DraggableCollection.js +15 -15
  958. package/dist/components/shared/DraggableCollection.js.map +1 -1
  959. package/dist/components/shared/InvalidIcon.js +2 -3
  960. package/dist/components/shared/InvalidIcon.js.map +1 -1
  961. package/dist/components/shared/ValidIcon.js +2 -3
  962. package/dist/components/shared/ValidIcon.js.map +1 -1
  963. package/dist/components/status/LoadingAnimation/LoadingAnimation.d.ts +2 -8
  964. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +2 -3
  965. package/dist/components/status/LoadingAnimation/LoadingAnimation.js.map +1 -1
  966. package/dist/components/status/LoadingAnimation/index.d.ts +2 -1
  967. package/dist/components/status/Spin/Cube.js +2 -3
  968. package/dist/components/status/Spin/Cube.js.map +1 -1
  969. package/dist/components/status/Spin/InternalSpinner.js +2 -3
  970. package/dist/components/status/Spin/InternalSpinner.js.map +1 -1
  971. package/dist/components/status/Spin/Spin.d.ts +1 -4
  972. package/dist/components/status/Spin/Spin.js +2 -3
  973. package/dist/components/status/Spin/Spin.js.map +1 -1
  974. package/dist/components/status/Spin/SpinsContainer.js +2 -3
  975. package/dist/components/status/Spin/SpinsContainer.js.map +1 -1
  976. package/dist/components/status/Spin/index.d.ts +2 -1
  977. package/dist/components/status/Spin/types.d.ts +2 -4
  978. package/dist/components/status/index.d.ts +2 -1
  979. package/dist/data/item-themes.d.ts +1 -3
  980. package/dist/data/item-themes.js +3 -3
  981. package/dist/data/item-themes.js.map +1 -1
  982. package/dist/data/themes.d.ts +9 -9
  983. package/dist/data/themes.js +10 -10
  984. package/dist/data/themes.js.map +1 -1
  985. package/dist/eslint-plugin/defaults.generated.d.ts +1 -3
  986. package/dist/eslint-plugin/defaults.generated.js +3 -8
  987. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  988. package/dist/eslint-plugin/index.d.ts +0 -1
  989. package/dist/eslint-plugin/index.js +2 -3
  990. package/dist/eslint-plugin/index.js.map +1 -1
  991. package/dist/eslint-plugin/rules/no-redundant-default-prop.d.ts +2 -4
  992. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +2 -3
  993. package/dist/eslint-plugin/rules/no-redundant-default-prop.js.map +1 -1
  994. package/dist/eslint-plugin/types.d.ts +17 -10
  995. package/dist/i18n/I18nProvider.d.ts +2 -9
  996. package/dist/i18n/I18nProvider.js +2 -3
  997. package/dist/i18n/I18nProvider.js.map +1 -1
  998. package/dist/i18n/createFormatter.d.ts +6 -7
  999. package/dist/i18n/createFormatter.js +2 -2
  1000. package/dist/i18n/createFormatter.js.map +1 -1
  1001. package/dist/i18n/index.d.ts +2 -4
  1002. package/dist/i18n/index.js +3 -4
  1003. package/dist/i18n/index.js.map +1 -1
  1004. package/dist/i18n/instance.d.ts +5 -6
  1005. package/dist/i18n/instance.js +3 -4
  1006. package/dist/i18n/instance.js.map +1 -1
  1007. package/dist/i18n/locales/de-DE/uikit.js +2 -2
  1008. package/dist/i18n/locales/en-US/uikit.js +2 -2
  1009. package/dist/i18n/locales/en-US/uikit.json.d.ts +41 -41
  1010. package/dist/i18n/locales/es-ES/uikit.js +2 -2
  1011. package/dist/i18n/locales/es-MX/uikit.js +2 -2
  1012. package/dist/i18n/locales/fr-FR/uikit.js +2 -2
  1013. package/dist/i18n/locales/it-IT/uikit.js +2 -2
  1014. package/dist/i18n/locales/ja-JP/uikit.js +2 -2
  1015. package/dist/i18n/locales/nb-NO/uikit.js +2 -2
  1016. package/dist/i18n/locales/pt-BR/uikit.js +2 -2
  1017. package/dist/i18n/locales/pt-PT/uikit.js +2 -2
  1018. package/dist/i18n/locales/sv-SE/uikit.js +2 -2
  1019. package/dist/i18n/locales/vi-VN/uikit.js +2 -2
  1020. package/dist/i18n/locales.d.ts +4 -5
  1021. package/dist/i18n/locales.js +2 -2
  1022. package/dist/i18n/locales.js.map +1 -1
  1023. package/dist/i18n/namespace.d.ts +1 -2
  1024. package/dist/i18n/namespace.js +2 -2
  1025. package/dist/i18n/useFormatter.d.ts +1 -3
  1026. package/dist/i18n/useFormatter.js +2 -3
  1027. package/dist/i18n/useFormatter.js.map +1 -1
  1028. package/dist/i18n/useI18n.js +2 -3
  1029. package/dist/i18n/useI18n.js.map +1 -1
  1030. package/dist/icons/AdjustmentsHorizontalIcon.d.ts +2 -5
  1031. package/dist/icons/AdjustmentsHorizontalIcon.js +2 -3
  1032. package/dist/icons/AdjustmentsHorizontalIcon.js.map +1 -1
  1033. package/dist/icons/AdjustmentsIcon.d.ts +2 -5
  1034. package/dist/icons/AdjustmentsIcon.js +2 -3
  1035. package/dist/icons/AdjustmentsIcon.js.map +1 -1
  1036. package/dist/icons/AiIcon.d.ts +2 -5
  1037. package/dist/icons/AiIcon.js +2 -3
  1038. package/dist/icons/AiIcon.js.map +1 -1
  1039. package/dist/icons/AreaChartIcon.d.ts +2 -5
  1040. package/dist/icons/AreaChartIcon.js +2 -3
  1041. package/dist/icons/AreaChartIcon.js.map +1 -1
  1042. package/dist/icons/ArrowNarrowDownIcon.d.ts +2 -5
  1043. package/dist/icons/ArrowNarrowDownIcon.js +2 -3
  1044. package/dist/icons/ArrowNarrowDownIcon.js.map +1 -1
  1045. package/dist/icons/ArrowNarrowUpIcon.d.ts +2 -5
  1046. package/dist/icons/ArrowNarrowUpIcon.js +2 -3
  1047. package/dist/icons/ArrowNarrowUpIcon.js.map +1 -1
  1048. package/dist/icons/BackwardIcon.d.ts +2 -5
  1049. package/dist/icons/BackwardIcon.js +2 -3
  1050. package/dist/icons/BackwardIcon.js.map +1 -1
  1051. package/dist/icons/BarChartIcon.d.ts +2 -5
  1052. package/dist/icons/BarChartIcon.js +2 -3
  1053. package/dist/icons/BarChartIcon.js.map +1 -1
  1054. package/dist/icons/BellFilledIcon.d.ts +2 -5
  1055. package/dist/icons/BellFilledIcon.js +2 -3
  1056. package/dist/icons/BellFilledIcon.js.map +1 -1
  1057. package/dist/icons/BellIcon.d.ts +2 -5
  1058. package/dist/icons/BellIcon.js +2 -3
  1059. package/dist/icons/BellIcon.js.map +1 -1
  1060. package/dist/icons/BooleanIcon.d.ts +2 -5
  1061. package/dist/icons/BooleanIcon.js +2 -3
  1062. package/dist/icons/BooleanIcon.js.map +1 -1
  1063. package/dist/icons/CalendarEditIcon.d.ts +2 -5
  1064. package/dist/icons/CalendarEditIcon.js +2 -3
  1065. package/dist/icons/CalendarEditIcon.js.map +1 -1
  1066. package/dist/icons/CalendarIcon.d.ts +2 -5
  1067. package/dist/icons/CalendarIcon.js +2 -3
  1068. package/dist/icons/CalendarIcon.js.map +1 -1
  1069. package/dist/icons/CaretDownIcon.d.ts +2 -5
  1070. package/dist/icons/CaretDownIcon.js +2 -3
  1071. package/dist/icons/CaretDownIcon.js.map +1 -1
  1072. package/dist/icons/CaretUpIcon.d.ts +2 -5
  1073. package/dist/icons/CaretUpIcon.js +2 -3
  1074. package/dist/icons/CaretUpIcon.js.map +1 -1
  1075. package/dist/icons/ChartAreaStackedIcon.d.ts +2 -5
  1076. package/dist/icons/ChartAreaStackedIcon.js +2 -3
  1077. package/dist/icons/ChartAreaStackedIcon.js.map +1 -1
  1078. package/dist/icons/ChartAreaStackedPercentageIcon.d.ts +2 -5
  1079. package/dist/icons/ChartAreaStackedPercentageIcon.js +2 -3
  1080. package/dist/icons/ChartAreaStackedPercentageIcon.js.map +1 -1
  1081. package/dist/icons/ChartBarGroupedHorizontalIcon.d.ts +2 -5
  1082. package/dist/icons/ChartBarGroupedHorizontalIcon.js +2 -3
  1083. package/dist/icons/ChartBarGroupedHorizontalIcon.js.map +1 -1
  1084. package/dist/icons/ChartBarGroupedIcon.d.ts +2 -5
  1085. package/dist/icons/ChartBarGroupedIcon.js +2 -3
  1086. package/dist/icons/ChartBarGroupedIcon.js.map +1 -1
  1087. package/dist/icons/ChartBarHorizontalIcon.d.ts +2 -5
  1088. package/dist/icons/ChartBarHorizontalIcon.js +2 -3
  1089. package/dist/icons/ChartBarHorizontalIcon.js.map +1 -1
  1090. package/dist/icons/ChartBarLineIcon.d.ts +2 -5
  1091. package/dist/icons/ChartBarLineIcon.js +2 -3
  1092. package/dist/icons/ChartBarLineIcon.js.map +1 -1
  1093. package/dist/icons/ChartBarStackedHorizontalIcon.d.ts +2 -5
  1094. package/dist/icons/ChartBarStackedHorizontalIcon.js +2 -3
  1095. package/dist/icons/ChartBarStackedHorizontalIcon.js.map +1 -1
  1096. package/dist/icons/ChartBarStackedIcon.d.ts +2 -5
  1097. package/dist/icons/ChartBarStackedIcon.js +2 -3
  1098. package/dist/icons/ChartBarStackedIcon.js.map +1 -1
  1099. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.d.ts +2 -5
  1100. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +2 -3
  1101. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js.map +1 -1
  1102. package/dist/icons/ChartBarStackedPercentageIcon.d.ts +2 -5
  1103. package/dist/icons/ChartBarStackedPercentageIcon.js +2 -3
  1104. package/dist/icons/ChartBarStackedPercentageIcon.js.map +1 -1
  1105. package/dist/icons/ChartBoxPlot2Icon.d.ts +2 -5
  1106. package/dist/icons/ChartBoxPlot2Icon.js +2 -3
  1107. package/dist/icons/ChartBoxPlot2Icon.js.map +1 -1
  1108. package/dist/icons/ChartBoxPlotIcon.d.ts +2 -5
  1109. package/dist/icons/ChartBoxPlotIcon.js +2 -3
  1110. package/dist/icons/ChartBoxPlotIcon.js.map +1 -1
  1111. package/dist/icons/ChartBubbleIcon.d.ts +2 -5
  1112. package/dist/icons/ChartBubbleIcon.js +2 -3
  1113. package/dist/icons/ChartBubbleIcon.js.map +1 -1
  1114. package/dist/icons/ChartDonut2Icon.d.ts +2 -5
  1115. package/dist/icons/ChartDonut2Icon.js +2 -3
  1116. package/dist/icons/ChartDonut2Icon.js.map +1 -1
  1117. package/dist/icons/ChartFunnelIcon.d.ts +2 -5
  1118. package/dist/icons/ChartFunnelIcon.js +2 -3
  1119. package/dist/icons/ChartFunnelIcon.js.map +1 -1
  1120. package/dist/icons/ChartHeatmapIcon.d.ts +2 -5
  1121. package/dist/icons/ChartHeatmapIcon.js +2 -3
  1122. package/dist/icons/ChartHeatmapIcon.js.map +1 -1
  1123. package/dist/icons/ChartKPIIcon.d.ts +2 -5
  1124. package/dist/icons/ChartKPIIcon.js +2 -3
  1125. package/dist/icons/ChartKPIIcon.js.map +1 -1
  1126. package/dist/icons/ChartPie2Icon.d.ts +2 -5
  1127. package/dist/icons/ChartPie2Icon.js +2 -3
  1128. package/dist/icons/ChartPie2Icon.js.map +1 -1
  1129. package/dist/icons/ChartScatterIcon.d.ts +2 -5
  1130. package/dist/icons/ChartScatterIcon.js +2 -3
  1131. package/dist/icons/ChartScatterIcon.js.map +1 -1
  1132. package/dist/icons/CheckCircleFilledIcon.d.ts +2 -5
  1133. package/dist/icons/CheckCircleFilledIcon.js +2 -3
  1134. package/dist/icons/CheckCircleFilledIcon.js.map +1 -1
  1135. package/dist/icons/CheckCircleIcon.d.ts +2 -5
  1136. package/dist/icons/CheckCircleIcon.js +2 -3
  1137. package/dist/icons/CheckCircleIcon.js.map +1 -1
  1138. package/dist/icons/CheckIcon.d.ts +2 -5
  1139. package/dist/icons/CheckIcon.js +2 -3
  1140. package/dist/icons/CheckIcon.js.map +1 -1
  1141. package/dist/icons/CircleFilledIcon.d.ts +2 -5
  1142. package/dist/icons/CircleFilledIcon.js +2 -3
  1143. package/dist/icons/CircleFilledIcon.js.map +1 -1
  1144. package/dist/icons/ClearIcon.d.ts +2 -5
  1145. package/dist/icons/ClearIcon.js +2 -3
  1146. package/dist/icons/ClearIcon.js.map +1 -1
  1147. package/dist/icons/CloseCircleFilledIcon.d.ts +2 -5
  1148. package/dist/icons/CloseCircleFilledIcon.js +2 -3
  1149. package/dist/icons/CloseCircleFilledIcon.js.map +1 -1
  1150. package/dist/icons/CloseCircleIcon.d.ts +2 -5
  1151. package/dist/icons/CloseCircleIcon.js +2 -3
  1152. package/dist/icons/CloseCircleIcon.js.map +1 -1
  1153. package/dist/icons/CloseIcon.d.ts +2 -5
  1154. package/dist/icons/CloseIcon.js +2 -3
  1155. package/dist/icons/CloseIcon.js.map +1 -1
  1156. package/dist/icons/CodeIcon.d.ts +2 -5
  1157. package/dist/icons/CodeIcon.js +2 -3
  1158. package/dist/icons/CodeIcon.js.map +1 -1
  1159. package/dist/icons/ColumnTotalIcon.d.ts +2 -5
  1160. package/dist/icons/ColumnTotalIcon.js +2 -3
  1161. package/dist/icons/ColumnTotalIcon.js.map +1 -1
  1162. package/dist/icons/CopyIcon.d.ts +2 -5
  1163. package/dist/icons/CopyIcon.js +2 -3
  1164. package/dist/icons/CopyIcon.js.map +1 -1
  1165. package/dist/icons/CountIcon.d.ts +2 -5
  1166. package/dist/icons/CountIcon.js +2 -3
  1167. package/dist/icons/CountIcon.js.map +1 -1
  1168. package/dist/icons/CubeIcon.d.ts +2 -5
  1169. package/dist/icons/CubeIcon.js +2 -3
  1170. package/dist/icons/CubeIcon.js.map +1 -1
  1171. package/dist/icons/CubePauseIcon.d.ts +2 -5
  1172. package/dist/icons/CubePauseIcon.js +2 -3
  1173. package/dist/icons/CubePauseIcon.js.map +1 -1
  1174. package/dist/icons/CubePlayIcon.d.ts +2 -5
  1175. package/dist/icons/CubePlayIcon.js +2 -3
  1176. package/dist/icons/CubePlayIcon.js.map +1 -1
  1177. package/dist/icons/CurrencyDollarIcon.d.ts +2 -5
  1178. package/dist/icons/CurrencyDollarIcon.js +2 -3
  1179. package/dist/icons/CurrencyDollarIcon.js.map +1 -1
  1180. package/dist/icons/DangerIcon.d.ts +2 -5
  1181. package/dist/icons/DangerIcon.js +2 -3
  1182. package/dist/icons/DangerIcon.js.map +1 -1
  1183. package/dist/icons/DashboardIcon.d.ts +2 -5
  1184. package/dist/icons/DashboardIcon.js +2 -3
  1185. package/dist/icons/DashboardIcon.js.map +1 -1
  1186. package/dist/icons/DatabaseIcon.d.ts +2 -5
  1187. package/dist/icons/DatabaseIcon.js +2 -3
  1188. package/dist/icons/DatabaseIcon.js.map +1 -1
  1189. package/dist/icons/DecimalDecreaseIcon.d.ts +2 -5
  1190. package/dist/icons/DecimalDecreaseIcon.js +2 -3
  1191. package/dist/icons/DecimalDecreaseIcon.js.map +1 -1
  1192. package/dist/icons/DecimalIncreaseIcon.d.ts +2 -5
  1193. package/dist/icons/DecimalIncreaseIcon.js +2 -3
  1194. package/dist/icons/DecimalIncreaseIcon.js.map +1 -1
  1195. package/dist/icons/DirectionIcon.d.ts +3 -5
  1196. package/dist/icons/DirectionIcon.js +2 -3
  1197. package/dist/icons/DirectionIcon.js.map +1 -1
  1198. package/dist/icons/DonutIcon.d.ts +2 -5
  1199. package/dist/icons/DonutIcon.js +2 -3
  1200. package/dist/icons/DonutIcon.js.map +1 -1
  1201. package/dist/icons/DownIcon.d.ts +2 -5
  1202. package/dist/icons/DownIcon.js +2 -3
  1203. package/dist/icons/DownIcon.js.map +1 -1
  1204. package/dist/icons/EditIcon.d.ts +2 -5
  1205. package/dist/icons/EditIcon.js +2 -3
  1206. package/dist/icons/EditIcon.js.map +1 -1
  1207. package/dist/icons/ExclamationCircleFilledIcon.d.ts +2 -5
  1208. package/dist/icons/ExclamationCircleFilledIcon.js +2 -3
  1209. package/dist/icons/ExclamationCircleFilledIcon.js.map +1 -1
  1210. package/dist/icons/ExclamationCircleIcon.d.ts +2 -5
  1211. package/dist/icons/ExclamationCircleIcon.js +2 -3
  1212. package/dist/icons/ExclamationCircleIcon.js.map +1 -1
  1213. package/dist/icons/ExclamationIcon.d.ts +2 -5
  1214. package/dist/icons/ExclamationIcon.js +2 -3
  1215. package/dist/icons/ExclamationIcon.js.map +1 -1
  1216. package/dist/icons/EyeIcon.d.ts +2 -5
  1217. package/dist/icons/EyeIcon.js +2 -3
  1218. package/dist/icons/EyeIcon.js.map +1 -1
  1219. package/dist/icons/EyeInvisibleIcon.d.ts +2 -5
  1220. package/dist/icons/EyeInvisibleIcon.js +2 -3
  1221. package/dist/icons/EyeInvisibleIcon.js.map +1 -1
  1222. package/dist/icons/FilterIcon.d.ts +2 -5
  1223. package/dist/icons/FilterIcon.js +2 -3
  1224. package/dist/icons/FilterIcon.js.map +1 -1
  1225. package/dist/icons/FolderFilledIcon.d.ts +2 -5
  1226. package/dist/icons/FolderFilledIcon.js +2 -3
  1227. package/dist/icons/FolderFilledIcon.js.map +1 -1
  1228. package/dist/icons/FolderIcon.d.ts +2 -5
  1229. package/dist/icons/FolderIcon.js +2 -3
  1230. package/dist/icons/FolderIcon.js.map +1 -1
  1231. package/dist/icons/FolderOpenFilledIcon.d.ts +2 -5
  1232. package/dist/icons/FolderOpenFilledIcon.js +2 -3
  1233. package/dist/icons/FolderOpenFilledIcon.js.map +1 -1
  1234. package/dist/icons/FolderOpenIcon.d.ts +2 -5
  1235. package/dist/icons/FolderOpenIcon.js +2 -3
  1236. package/dist/icons/FolderOpenIcon.js.map +1 -1
  1237. package/dist/icons/ForwardIcon.d.ts +2 -5
  1238. package/dist/icons/ForwardIcon.js +2 -3
  1239. package/dist/icons/ForwardIcon.js.map +1 -1
  1240. package/dist/icons/GripVerticalIcon.d.ts +2 -5
  1241. package/dist/icons/GripVerticalIcon.js +2 -3
  1242. package/dist/icons/GripVerticalIcon.js.map +1 -1
  1243. package/dist/icons/HierarchyIcon.d.ts +2 -5
  1244. package/dist/icons/HierarchyIcon.js +2 -3
  1245. package/dist/icons/HierarchyIcon.js.map +1 -1
  1246. package/dist/icons/HierarchyOpenIcon.d.ts +2 -5
  1247. package/dist/icons/HierarchyOpenIcon.js +2 -3
  1248. package/dist/icons/HierarchyOpenIcon.js.map +1 -1
  1249. package/dist/icons/Icon.d.ts +2 -5
  1250. package/dist/icons/Icon.js +2 -3
  1251. package/dist/icons/Icon.js.map +1 -1
  1252. package/dist/icons/InfoCircleIcon.d.ts +2 -5
  1253. package/dist/icons/InfoCircleIcon.js +2 -3
  1254. package/dist/icons/InfoCircleIcon.js.map +1 -1
  1255. package/dist/icons/InfoIcon.d.ts +2 -5
  1256. package/dist/icons/InfoIcon.js +2 -3
  1257. package/dist/icons/InfoIcon.js.map +1 -1
  1258. package/dist/icons/KeyIcon.d.ts +2 -5
  1259. package/dist/icons/KeyIcon.js +2 -3
  1260. package/dist/icons/KeyIcon.js.map +1 -1
  1261. package/dist/icons/LeftIcon.d.ts +2 -5
  1262. package/dist/icons/LeftIcon.js +2 -3
  1263. package/dist/icons/LeftIcon.js.map +1 -1
  1264. package/dist/icons/LineChartIcon.d.ts +2 -5
  1265. package/dist/icons/LineChartIcon.js +2 -3
  1266. package/dist/icons/LineChartIcon.js.map +1 -1
  1267. package/dist/icons/LoadingIcon.d.ts +2 -5
  1268. package/dist/icons/LoadingIcon.js +2 -3
  1269. package/dist/icons/LoadingIcon.js.map +1 -1
  1270. package/dist/icons/LockFilledIcon.d.ts +2 -5
  1271. package/dist/icons/LockFilledIcon.js +2 -3
  1272. package/dist/icons/LockFilledIcon.js.map +1 -1
  1273. package/dist/icons/LockIcon.d.ts +2 -5
  1274. package/dist/icons/LockIcon.js +2 -3
  1275. package/dist/icons/LockIcon.js.map +1 -1
  1276. package/dist/icons/MoreIcon.d.ts +2 -5
  1277. package/dist/icons/MoreIcon.js +2 -3
  1278. package/dist/icons/MoreIcon.js.map +1 -1
  1279. package/dist/icons/NotAllowedIcon.d.ts +2 -5
  1280. package/dist/icons/NotAllowedIcon.js +2 -3
  1281. package/dist/icons/NotAllowedIcon.js.map +1 -1
  1282. package/dist/icons/Number123Icon.d.ts +2 -5
  1283. package/dist/icons/Number123Icon.js +2 -3
  1284. package/dist/icons/Number123Icon.js.map +1 -1
  1285. package/dist/icons/NumberIcon.d.ts +2 -5
  1286. package/dist/icons/NumberIcon.js +2 -3
  1287. package/dist/icons/NumberIcon.js.map +1 -1
  1288. package/dist/icons/PauseCircleFilledIcon.d.ts +2 -5
  1289. package/dist/icons/PauseCircleFilledIcon.js +2 -3
  1290. package/dist/icons/PauseCircleFilledIcon.js.map +1 -1
  1291. package/dist/icons/PauseCircleIcon.d.ts +2 -5
  1292. package/dist/icons/PauseCircleIcon.js +2 -3
  1293. package/dist/icons/PauseCircleIcon.js.map +1 -1
  1294. package/dist/icons/PauseIcon.d.ts +2 -5
  1295. package/dist/icons/PauseIcon.js +2 -3
  1296. package/dist/icons/PauseIcon.js.map +1 -1
  1297. package/dist/icons/PercentageIcon.d.ts +2 -5
  1298. package/dist/icons/PercentageIcon.js +2 -3
  1299. package/dist/icons/PercentageIcon.js.map +1 -1
  1300. package/dist/icons/PieChartIcon.d.ts +2 -5
  1301. package/dist/icons/PieChartIcon.js +2 -3
  1302. package/dist/icons/PieChartIcon.js.map +1 -1
  1303. package/dist/icons/PipetteIcon.d.ts +2 -5
  1304. package/dist/icons/PipetteIcon.js +2 -3
  1305. package/dist/icons/PipetteIcon.js.map +1 -1
  1306. package/dist/icons/PlayCircleIcon.d.ts +2 -5
  1307. package/dist/icons/PlayCircleIcon.js +2 -3
  1308. package/dist/icons/PlayCircleIcon.js.map +1 -1
  1309. package/dist/icons/PlayIcon.d.ts +2 -5
  1310. package/dist/icons/PlayIcon.js +2 -3
  1311. package/dist/icons/PlayIcon.js.map +1 -1
  1312. package/dist/icons/PlusIcon.d.ts +2 -5
  1313. package/dist/icons/PlusIcon.js +2 -3
  1314. package/dist/icons/PlusIcon.js.map +1 -1
  1315. package/dist/icons/ProgressBarIcon.d.ts +2 -5
  1316. package/dist/icons/ProgressBarIcon.js +2 -3
  1317. package/dist/icons/ProgressBarIcon.js.map +1 -1
  1318. package/dist/icons/ReloadIcon.d.ts +2 -5
  1319. package/dist/icons/ReloadIcon.js +2 -3
  1320. package/dist/icons/ReloadIcon.js.map +1 -1
  1321. package/dist/icons/ReportIcon.d.ts +2 -5
  1322. package/dist/icons/ReportIcon.js +2 -3
  1323. package/dist/icons/ReportIcon.js.map +1 -1
  1324. package/dist/icons/ReturnIcon.d.ts +2 -5
  1325. package/dist/icons/ReturnIcon.js +2 -3
  1326. package/dist/icons/ReturnIcon.js.map +1 -1
  1327. package/dist/icons/RightIcon.d.ts +2 -5
  1328. package/dist/icons/RightIcon.js +2 -3
  1329. package/dist/icons/RightIcon.js.map +1 -1
  1330. package/dist/icons/RowTotalsIcon.d.ts +2 -5
  1331. package/dist/icons/RowTotalsIcon.js +2 -3
  1332. package/dist/icons/RowTotalsIcon.js.map +1 -1
  1333. package/dist/icons/SchemeIcon.d.ts +2 -5
  1334. package/dist/icons/SchemeIcon.js +2 -3
  1335. package/dist/icons/SchemeIcon.js.map +1 -1
  1336. package/dist/icons/SearchIcon.d.ts +2 -5
  1337. package/dist/icons/SearchIcon.js +2 -3
  1338. package/dist/icons/SearchIcon.js.map +1 -1
  1339. package/dist/icons/SemanticQueryIcon.d.ts +2 -5
  1340. package/dist/icons/SemanticQueryIcon.js +2 -3
  1341. package/dist/icons/SemanticQueryIcon.js.map +1 -1
  1342. package/dist/icons/SettingsIcon.d.ts +2 -5
  1343. package/dist/icons/SettingsIcon.js +2 -3
  1344. package/dist/icons/SettingsIcon.js.map +1 -1
  1345. package/dist/icons/ShieldFilledIcon.d.ts +2 -5
  1346. package/dist/icons/ShieldFilledIcon.js +2 -3
  1347. package/dist/icons/ShieldFilledIcon.js.map +1 -1
  1348. package/dist/icons/ShieldIcon.d.ts +2 -5
  1349. package/dist/icons/ShieldIcon.js +2 -3
  1350. package/dist/icons/ShieldIcon.js.map +1 -1
  1351. package/dist/icons/SlashIcon.d.ts +2 -5
  1352. package/dist/icons/SlashIcon.js +2 -3
  1353. package/dist/icons/SlashIcon.js.map +1 -1
  1354. package/dist/icons/SparklesIcon.d.ts +2 -5
  1355. package/dist/icons/SparklesIcon.js +2 -3
  1356. package/dist/icons/SparklesIcon.js.map +1 -1
  1357. package/dist/icons/SqlIcon.d.ts +2 -5
  1358. package/dist/icons/SqlIcon.js +2 -3
  1359. package/dist/icons/SqlIcon.js.map +1 -1
  1360. package/dist/icons/StatsIcon.d.ts +2 -5
  1361. package/dist/icons/StatsIcon.js +2 -3
  1362. package/dist/icons/StatsIcon.js.map +1 -1
  1363. package/dist/icons/StopIcon.d.ts +2 -5
  1364. package/dist/icons/StopIcon.js +2 -3
  1365. package/dist/icons/StopIcon.js.map +1 -1
  1366. package/dist/icons/StringIcon.d.ts +2 -5
  1367. package/dist/icons/StringIcon.js +2 -3
  1368. package/dist/icons/StringIcon.js.map +1 -1
  1369. package/dist/icons/SubtotalsIcon.d.ts +2 -5
  1370. package/dist/icons/SubtotalsIcon.js +2 -3
  1371. package/dist/icons/SubtotalsIcon.js.map +1 -1
  1372. package/dist/icons/SwitchIcon.d.ts +2 -5
  1373. package/dist/icons/SwitchIcon.js +2 -3
  1374. package/dist/icons/SwitchIcon.js.map +1 -1
  1375. package/dist/icons/TableIcon.d.ts +2 -5
  1376. package/dist/icons/TableIcon.js +2 -3
  1377. package/dist/icons/TableIcon.js.map +1 -1
  1378. package/dist/icons/ThumbsDownIcon.d.ts +2 -5
  1379. package/dist/icons/ThumbsDownIcon.js +2 -3
  1380. package/dist/icons/ThumbsDownIcon.js.map +1 -1
  1381. package/dist/icons/ThumbsUpIcon.d.ts +2 -5
  1382. package/dist/icons/ThumbsUpIcon.js +2 -3
  1383. package/dist/icons/ThumbsUpIcon.js.map +1 -1
  1384. package/dist/icons/ThunderboltCrossedIcon.d.ts +2 -5
  1385. package/dist/icons/ThunderboltCrossedIcon.js +2 -3
  1386. package/dist/icons/ThunderboltCrossedIcon.js.map +1 -1
  1387. package/dist/icons/ThunderboltFilledIcon.d.ts +2 -5
  1388. package/dist/icons/ThunderboltFilledIcon.js +2 -3
  1389. package/dist/icons/ThunderboltFilledIcon.js.map +1 -1
  1390. package/dist/icons/ThunderboltIcon.d.ts +2 -5
  1391. package/dist/icons/ThunderboltIcon.js +2 -3
  1392. package/dist/icons/ThunderboltIcon.js.map +1 -1
  1393. package/dist/icons/TimeIcon.d.ts +2 -5
  1394. package/dist/icons/TimeIcon.js +2 -3
  1395. package/dist/icons/TimeIcon.js.map +1 -1
  1396. package/dist/icons/TrashIcon.d.ts +2 -5
  1397. package/dist/icons/TrashIcon.js +2 -3
  1398. package/dist/icons/TrashIcon.js.map +1 -1
  1399. package/dist/icons/UnlockIcon.d.ts +2 -5
  1400. package/dist/icons/UnlockIcon.js +2 -3
  1401. package/dist/icons/UnlockIcon.js.map +1 -1
  1402. package/dist/icons/UpIcon.d.ts +2 -5
  1403. package/dist/icons/UpIcon.js +2 -3
  1404. package/dist/icons/UpIcon.js.map +1 -1
  1405. package/dist/icons/UserGroupIcon.d.ts +2 -5
  1406. package/dist/icons/UserGroupIcon.js +2 -3
  1407. package/dist/icons/UserGroupIcon.js.map +1 -1
  1408. package/dist/icons/UserIcon.d.ts +2 -5
  1409. package/dist/icons/UserIcon.js +2 -3
  1410. package/dist/icons/UserIcon.js.map +1 -1
  1411. package/dist/icons/UserLockIcon.d.ts +2 -5
  1412. package/dist/icons/UserLockIcon.js +2 -3
  1413. package/dist/icons/UserLockIcon.js.map +1 -1
  1414. package/dist/icons/ViewIcon.d.ts +2 -5
  1415. package/dist/icons/ViewIcon.js +2 -3
  1416. package/dist/icons/ViewIcon.js.map +1 -1
  1417. package/dist/icons/WarningFilledIcon.d.ts +2 -5
  1418. package/dist/icons/WarningFilledIcon.js +2 -3
  1419. package/dist/icons/WarningFilledIcon.js.map +1 -1
  1420. package/dist/icons/WarningIcon.d.ts +2 -5
  1421. package/dist/icons/WarningIcon.js +2 -3
  1422. package/dist/icons/WarningIcon.js.map +1 -1
  1423. package/dist/icons/index.d.ts +2 -1
  1424. package/dist/icons/wrap-icon.d.ts +2 -5
  1425. package/dist/icons/wrap-icon.js +2 -3
  1426. package/dist/icons/wrap-icon.js.map +1 -1
  1427. package/dist/index.d.ts +59 -61
  1428. package/dist/index.js +59 -64
  1429. package/dist/index.js.map +1 -1
  1430. package/dist/node_modules/.pnpm/csstype@3.1.2/node_modules/csstype/index.d.ts +3 -4
  1431. package/dist/probe/canonicalize.d.ts +3 -4
  1432. package/dist/probe/canonicalize.js +2 -2
  1433. package/dist/probe/canonicalize.js.map +1 -1
  1434. package/dist/probe/css.d.ts +4 -5
  1435. package/dist/probe/css.js +2 -3
  1436. package/dist/probe/css.js.map +1 -1
  1437. package/dist/probe/index.js +2 -3
  1438. package/dist/props.d.ts +1 -2
  1439. package/dist/provider.d.ts +3 -6
  1440. package/dist/provider.js +2 -3
  1441. package/dist/provider.js.map +1 -1
  1442. package/dist/providers/TrackingProvider.d.ts +1 -3
  1443. package/dist/providers/TrackingProvider.js +3 -4
  1444. package/dist/providers/TrackingProvider.js.map +1 -1
  1445. package/dist/providers/navigation-url.js +2 -2
  1446. package/dist/providers/navigation-url.js.map +1 -1
  1447. package/dist/providers/navigation.types.d.ts +7 -8
  1448. package/dist/providers/navigationAdapter.default.d.ts +1 -3
  1449. package/dist/providers/navigationAdapter.default.js +6 -4
  1450. package/dist/providers/navigationAdapter.default.js.map +1 -1
  1451. package/dist/providers/use-navigation.js +2 -3
  1452. package/dist/providers/use-navigation.js.map +1 -1
  1453. package/dist/shared/form.d.ts +33 -23
  1454. package/dist/shared/index.d.ts +4 -5
  1455. package/dist/tokens/all-tokens.d.ts +2 -4
  1456. package/dist/tokens/all-tokens.js +2 -3
  1457. package/dist/tokens/all-tokens.js.map +1 -1
  1458. package/dist/tokens/base.d.ts +1 -3
  1459. package/dist/tokens/base.js +38 -2
  1460. package/dist/tokens/base.js.map +1 -1
  1461. package/dist/tokens/color-seed.d.ts +2 -3
  1462. package/dist/tokens/color-seed.js +2 -3
  1463. package/dist/tokens/color-seed.js.map +1 -1
  1464. package/dist/tokens/color-theme.d.ts +5 -7
  1465. package/dist/tokens/color-theme.js +5 -6
  1466. package/dist/tokens/color-theme.js.map +1 -1
  1467. package/dist/tokens/colors.d.ts +3 -5
  1468. package/dist/tokens/colors.js +2 -3
  1469. package/dist/tokens/colors.js.map +1 -1
  1470. package/dist/tokens/index.d.ts +2 -1
  1471. package/dist/tokens/layout.d.ts +1 -3
  1472. package/dist/tokens/layout.js +7 -2
  1473. package/dist/tokens/layout.js.map +1 -1
  1474. package/dist/tokens/lazy-styles.js +2 -2
  1475. package/dist/tokens/lazy-styles.js.map +1 -1
  1476. package/dist/tokens/legacy-color.d.ts +3 -4
  1477. package/dist/tokens/legacy-color.js +2 -3
  1478. package/dist/tokens/legacy-color.js.map +1 -1
  1479. package/dist/tokens/palette-config.d.ts +19 -20
  1480. package/dist/tokens/palette-config.js +9 -24
  1481. package/dist/tokens/palette-config.js.map +1 -1
  1482. package/dist/tokens/palette.d.ts +6 -8
  1483. package/dist/tokens/palette.js +73 -89
  1484. package/dist/tokens/palette.js.map +1 -1
  1485. package/dist/tokens/resolve.d.ts +8 -9
  1486. package/dist/tokens/resolve.js +5 -6
  1487. package/dist/tokens/resolve.js.map +1 -1
  1488. package/dist/tokens/shadows.d.ts +1 -3
  1489. package/dist/tokens/shadows.js +6 -2
  1490. package/dist/tokens/shadows.js.map +1 -1
  1491. package/dist/tokens/sizes.d.ts +5 -7
  1492. package/dist/tokens/sizes.js +2 -2
  1493. package/dist/tokens/sizes.js.map +1 -1
  1494. package/dist/tokens/spacing.d.ts +1 -3
  1495. package/dist/tokens/spacing.js +2 -2
  1496. package/dist/tokens/spacing.js.map +1 -1
  1497. package/dist/tokens/typography.d.ts +2 -3
  1498. package/dist/tokens/typography.js +2 -2
  1499. package/dist/tokens/typography.js.map +1 -1
  1500. package/dist/utils/ResizeSensor.d.ts +1 -2
  1501. package/dist/utils/ResizeSensor.js +11 -9
  1502. package/dist/utils/ResizeSensor.js.map +1 -1
  1503. package/dist/utils/colors.js +3 -4
  1504. package/dist/utils/colors.js.map +1 -1
  1505. package/dist/utils/dotize.js +2 -2
  1506. package/dist/utils/dotize.js.map +1 -1
  1507. package/dist/utils/index.d.ts +2 -1
  1508. package/dist/utils/is-dev-env.js +2 -2
  1509. package/dist/utils/is-dev-env.js.map +1 -1
  1510. package/dist/utils/modules.d.ts +1 -2
  1511. package/dist/utils/modules.js +2 -2
  1512. package/dist/utils/modules.js.map +1 -1
  1513. package/dist/utils/promise.d.ts +1 -2
  1514. package/dist/utils/promise.js +2 -2
  1515. package/dist/utils/promise.js.map +1 -1
  1516. package/dist/utils/raf.d.ts +1 -2
  1517. package/dist/utils/raf.js +2 -2
  1518. package/dist/utils/raf.js.map +1 -1
  1519. package/dist/utils/random.d.ts +2 -3
  1520. package/dist/utils/random.js +3 -4
  1521. package/dist/utils/random.js.map +1 -1
  1522. package/dist/utils/range.d.ts +1 -2
  1523. package/dist/utils/range.js +2 -2
  1524. package/dist/utils/range.js.map +1 -1
  1525. package/dist/utils/react/RenderCache.d.ts +2 -9
  1526. package/dist/utils/react/RenderCache.js +2 -3
  1527. package/dist/utils/react/RenderCache.js.map +1 -1
  1528. package/dist/utils/react/Slots.d.ts +3 -6
  1529. package/dist/utils/react/Slots.js +2 -3
  1530. package/dist/utils/react/Slots.js.map +1 -1
  1531. package/dist/utils/react/chain.d.ts +1 -2
  1532. package/dist/utils/react/chain.js +2 -2
  1533. package/dist/utils/react/chain.js.map +1 -1
  1534. package/dist/utils/react/disabledProps.d.ts +4 -10
  1535. package/dist/utils/react/disabledProps.js +3 -3
  1536. package/dist/utils/react/disabledProps.js.map +1 -1
  1537. package/dist/utils/react/forwardRefWithGenerics.d.ts +2 -5
  1538. package/dist/utils/react/forwardRefWithGenerics.js +2 -2
  1539. package/dist/utils/react/forwardRefWithGenerics.js.map +1 -1
  1540. package/dist/utils/react/index.d.ts +1 -1
  1541. package/dist/utils/react/index.js +2 -3
  1542. package/dist/utils/react/interactions.js +2 -3
  1543. package/dist/utils/react/interactions.js.map +1 -1
  1544. package/dist/utils/react/isTextOnly.d.ts +1 -2
  1545. package/dist/utils/react/isTextOnly.js +2 -3
  1546. package/dist/utils/react/isTextOnly.js.map +1 -1
  1547. package/dist/utils/react/mapProps.js +2 -2
  1548. package/dist/utils/react/mapProps.js.map +1 -1
  1549. package/dist/utils/react/mergeProps.d.ts +2 -3
  1550. package/dist/utils/react/mergeProps.js +2 -3
  1551. package/dist/utils/react/mergeProps.js.map +1 -1
  1552. package/dist/utils/react/nullableValue.d.ts +1 -3
  1553. package/dist/utils/react/nullableValue.js +3 -3
  1554. package/dist/utils/react/nullableValue.js.map +1 -1
  1555. package/dist/utils/react/overlayKeyPropagation.js +3 -3
  1556. package/dist/utils/react/overlayKeyPropagation.js.map +1 -1
  1557. package/dist/utils/react/programmaticFocus.js +2 -2
  1558. package/dist/utils/react/programmaticFocus.js.map +1 -1
  1559. package/dist/utils/react/resolveIcon.d.ts +4 -6
  1560. package/dist/utils/react/resolveIcon.js +2 -2
  1561. package/dist/utils/react/resolveIcon.js.map +1 -1
  1562. package/dist/utils/react/sharedStore.js +2 -3
  1563. package/dist/utils/react/sharedStore.js.map +1 -1
  1564. package/dist/utils/react/useBufferedValue.d.ts +3 -4
  1565. package/dist/utils/react/useBufferedValue.js +2 -3
  1566. package/dist/utils/react/useBufferedValue.js.map +1 -1
  1567. package/dist/utils/react/useCombinedRefs.d.ts +2 -4
  1568. package/dist/utils/react/useCombinedRefs.js +2 -3
  1569. package/dist/utils/react/useCombinedRefs.js.map +1 -1
  1570. package/dist/utils/react/useControlledFocusVisible.d.ts +2 -3
  1571. package/dist/utils/react/useControlledFocusVisible.js +2 -3
  1572. package/dist/utils/react/useControlledFocusVisible.js.map +1 -1
  1573. package/dist/utils/react/useEventBus.d.ts +6 -10
  1574. package/dist/utils/react/useEventBus.js +2 -3
  1575. package/dist/utils/react/useEventBus.js.map +1 -1
  1576. package/dist/utils/react/useId.js +3 -4
  1577. package/dist/utils/react/useId.js.map +1 -1
  1578. package/dist/utils/react/useIsDarwin.js +2 -3
  1579. package/dist/utils/react/useIsDarwin.js.map +1 -1
  1580. package/dist/utils/react/useKeySymbols.js +2 -3
  1581. package/dist/utils/react/useKeySymbols.js.map +1 -1
  1582. package/dist/utils/react/useLayoutEffect.d.ts +0 -1
  1583. package/dist/utils/react/useLayoutEffect.js +2 -3
  1584. package/dist/utils/react/useLayoutEffect.js.map +1 -1
  1585. package/dist/utils/react/useLocalStorage.d.ts +2 -2
  1586. package/dist/utils/react/useLocalStorage.js +2 -3
  1587. package/dist/utils/react/useLocalStorage.js.map +1 -1
  1588. package/dist/utils/react/useMergeStyles.d.ts +1 -3
  1589. package/dist/utils/react/useMergeStyles.js +4 -4
  1590. package/dist/utils/react/useMergeStyles.js.map +1 -1
  1591. package/dist/utils/react/useOverlayEscapeGuard.js +2 -3
  1592. package/dist/utils/react/useOverlayEscapeGuard.js.map +1 -1
  1593. package/dist/utils/react/usePopoverSync.d.ts +3 -14
  1594. package/dist/utils/react/usePopoverSync.js +2 -3
  1595. package/dist/utils/react/usePopoverSync.js.map +1 -1
  1596. package/dist/utils/react/useQaProps.d.ts +2 -2
  1597. package/dist/utils/react/useQaProps.js +6 -4
  1598. package/dist/utils/react/useQaProps.js.map +1 -1
  1599. package/dist/utils/react/useScheme.d.ts +6 -7
  1600. package/dist/utils/react/useScheme.js +2 -3
  1601. package/dist/utils/react/useScheme.js.map +1 -1
  1602. package/dist/utils/react/useViewportSize.d.ts +3 -3
  1603. package/dist/utils/react/useViewportSize.js +2 -3
  1604. package/dist/utils/react/useViewportSize.js.map +1 -1
  1605. package/dist/utils/react/wrapNodeIfPlain.d.ts +1 -3
  1606. package/dist/utils/react/wrapNodeIfPlain.js +2 -3
  1607. package/dist/utils/react/wrapNodeIfPlain.js.map +1 -1
  1608. package/dist/utils/selection.d.ts +1 -3
  1609. package/dist/utils/selection.js +2 -2
  1610. package/dist/utils/selection.js.map +1 -1
  1611. package/dist/utils/styles.d.ts +1 -3
  1612. package/dist/utils/styles.js +2 -3
  1613. package/dist/utils/styles.js.map +1 -1
  1614. package/dist/utils/tree.d.ts +1 -2
  1615. package/dist/utils/tree.js +2 -2
  1616. package/dist/utils/tree.js.map +1 -1
  1617. package/dist/utils/warnings.d.ts +1 -2
  1618. package/dist/utils/warnings.js +2 -3
  1619. package/dist/utils/warnings.js.map +1 -1
  1620. package/dist/version.d.ts +1 -0
  1621. package/dist/version.js +4 -4
  1622. package/dist/version.js.map +1 -1
  1623. package/docs/CreateComponent.md +5 -1
  1624. package/docs/FieldProperties.md +11 -7
  1625. package/docs/Theming.md +1 -1
  1626. package/docs/Usage.md +8 -2
  1627. package/docs/components/content/Alert.md +3 -2
  1628. package/docs/components/content/Layout.md +78 -1
  1629. package/docs/components/content/TextItem.md +2 -2
  1630. package/docs/components/fields/ComboBox.md +1 -2
  1631. package/docs/components/fields/FilterListBox.md +3 -3
  1632. package/docs/components/fields/FilterPicker.md +8 -12
  1633. package/docs/components/fields/ListBox.md +11 -10
  1634. package/docs/components/fields/NumberInput.md +1 -2
  1635. package/docs/components/fields/Picker.md +10 -14
  1636. package/docs/components/fields/Select.md +11 -9
  1637. package/docs/components/fields/Switch.md +4 -5
  1638. package/docs/components/overlays/AlertDialog.md +1 -1
  1639. package/docs/components/overlays/Dialog.md +6 -6
  1640. package/docs/components/overlays/DialogContainer.md +46 -11
  1641. package/docs/components/overlays/DialogTrigger.md +5 -3
  1642. package/docs/tasty/README.md +4 -1
  1643. package/docs/tasty/adoption.md +25 -17
  1644. package/docs/tasty/ai-agents.md +42 -34
  1645. package/docs/tasty/comparison.md +9 -8
  1646. package/docs/tasty/configuration.md +187 -69
  1647. package/docs/tasty/debug.md +3 -2
  1648. package/docs/tasty/design-system.md +117 -15
  1649. package/docs/tasty/dsl.md +211 -117
  1650. package/docs/tasty/getting-started.md +81 -24
  1651. package/docs/tasty/injector.md +41 -40
  1652. package/docs/tasty/methodology.md +46 -21
  1653. package/docs/tasty/migration-v3.md +3 -3
  1654. package/docs/tasty/pipeline.md +22 -19
  1655. package/docs/tasty/plugins.md +21 -41
  1656. package/docs/tasty/react-api.md +72 -9
  1657. package/docs/tasty/runtime-benchmarks.md +11 -11
  1658. package/docs/tasty/ssr.md +92 -66
  1659. package/docs/tasty/styles.md +37 -17
  1660. package/docs/tasty/tasty-static.md +175 -57
  1661. package/package.json +18 -16
  1662. package/tasty.config.ts +8 -0
  1663. package/dist/i18n/useI18n.d.ts +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","names":["mergeStyles","OUTER_STYLES","Children","ForwardedRef","forwardRef","isValidElement","ReactElement","ReactNode","useEffect","useMemo","useRef","AriaTabListProps","useTabList","Item","CollectionItem","DraggableCollectionState","DroppableCollectionState","useTabListState","useEvent","useWarn","DirectionIcon","mergeProps","useMergeStyles","extractStyles","ItemAction","useTinyScrollbar","useBoardDragActive","DraggableTabList","TabIndicatorElement","TabsElement","TabButton","CachedPanelRenderer","TabPanelRenderer","TabPicker","TabsAction","TabsContextValue","TabsProvider","useTabEditing","useTabIndicator","Key","CubeTabListProps","CubeTabPanelProps","CubeTabProps","CubeTabsProps","ParsedPanel","ParsedTab","isComponentElement","child","displayName","T","type","isTabElement","isTabPanelElement","isTabListElement","getRawKey","element","key","keyStr","String","startsWith","slice","tabHasPanel","tab","explicitPanels","Map","hasRenderPanel","get","content","Tab","_props","Action","TabPanel","TabList","TabsComponent","props","ref","HTMLDivElement","label","defaultActiveKey","activeKey","size","placement","onChange","onDelete","onTitleChange","autoHideActions","isEditable","parentIsEditable","menu","parentMenu","menuTriggerProps","parentMenuTriggerProps","menuProps","parentMenuProps","contextMenu","parentContextMenu","onAction","parentOnAction","children","prefix","suffix","prerender","keepMounted","qa","renderPanel","panelCacheKeys","isReorderable","keyOrder","onReorder","showTabPicker","showScrollArrows","tabPickerPosition","scrollArrowsPosition","hideTabListScroll","tabListPadding","barStyles","tabListStyles","prefixStyles","suffixStyles","otherProps","orientation","effectiveType","baseStyles","tabListPaddingStyles","undefined","mergedTabListStyles","combinedStyles","Bar","Prefix","Suffix","listRef","scrollRef","visitedKeysRef","Set","isBoardDragActive","effectiveKeepMounted","onTitleChangeRaf","newTitle","requestAnimationFrame","editingKey","startEditing","cancelEditing","submitEditing","parsedTabs","hasAnyContent","listQa","childArray","toArray","tabs","panels","hasExplicitList","tabChildren","tabListQa","Pick","qaVal","set","styles","hasContent","id","_id","tabContent","tabProps","push","currentTabKeysSet","map","t","current","has","delete","orderedParsedTabs","length","tabMap","ordered","collectionItems","title","disabledKeys","filter","isDisabled","handleSelectionChange","add","selectedKey","defaultSelectedKey","ariaProps","onSelectionChange","state","tabListProps","handleTabPickerSelect","setSelectedKey","orderToken","join","indicatorStyle","isTinyScrollbar","handleHStyle","handleVStyle","hasOverflowX","hasOverflowY","isScrolling","isAtStartX","isAtEndX","isAtStartY","isAtEndY","showTinyScrollbar","hasOverflow","isAtStart","isAtEnd","hasPanels","args","shouldShowTabPicker","shouldShowScrollArrows","handleScrollStart","el","scrollTo","top","scrollTop","clientHeight","behavior","left","scrollLeft","clientWidth","handleScrollEnd","baseContextValue","createContextValue","dragState","dropState","renderTabListContent","contextValue","collectionProps","Record","index","item","collection","getItem","start","height","width","mods","deletable","scrolling","scrollArrowsElement","tabPickerElement","prefixHasActions","suffixHasActions","handleStyle","explicitPanel","_Tabs","Tabs","Object","assign","List","Panel"],"sources":["../../../../src/components/navigation/Tabs/Tabs.tsx"],"sourcesContent":["import { mergeStyles, OUTER_STYLES } from '@tenphi/tasty';\nimport {\n Children,\n ForwardedRef,\n forwardRef,\n isValidElement,\n ReactElement,\n ReactNode,\n useEffect,\n useMemo,\n useRef,\n} from 'react';\nimport { AriaTabListProps, useTabList } from 'react-aria';\nimport {\n Item as CollectionItem,\n DraggableCollectionState,\n DroppableCollectionState,\n useTabListState,\n} from 'react-stately';\n\nimport { useEvent, useWarn } from '../../../_internal/hooks';\nimport { DirectionIcon } from '../../../icons/DirectionIcon';\nimport { mergeProps, useMergeStyles } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\nimport { ItemAction } from '../../actions/ItemAction/ItemAction';\nimport { useTinyScrollbar } from '../../content/Layout/hooks/useTinyScrollbar';\n\nimport { useBoardDragActive } from './BoardDragActiveProvider';\nimport { DraggableTabList } from './DraggableTabList';\nimport { TabIndicatorElement, TabsElement } from './styled';\nimport { TabButton } from './TabButton';\nimport { CachedPanelRenderer, TabPanelRenderer } from './TabPanel';\nimport { TabPicker } from './TabPicker';\nimport { TabsAction } from './TabsAction';\nimport { TabsContextValue, TabsProvider } from './TabsContext';\nimport { useTabEditing } from './use-tab-editing';\nimport { useTabIndicator } from './use-tab-indicator';\n\nimport type { Key } from '@react-types/shared';\nimport type {\n CubeTabListProps,\n CubeTabPanelProps,\n CubeTabProps,\n CubeTabsProps,\n ParsedPanel,\n ParsedTab,\n} from './types';\n\n// =============================================================================\n// Helper Functions\n// =============================================================================\n\n/**\n * Generic helper to check if a child is a specific component by displayName.\n */\nfunction isComponentElement<T>(\n child: ReactNode,\n displayName: string,\n): child is ReactElement<T> {\n return (\n isValidElement(child) &&\n typeof child.type === 'function' &&\n (child.type as any).displayName === displayName\n );\n}\n\n/** Checks if a child is a Tab component. */\nconst isTabElement = (child: ReactNode): child is ReactElement<CubeTabProps> =>\n isComponentElement<CubeTabProps>(child, 'CubeTab');\n\n/** Checks if a child is a TabPanel component. */\nconst isTabPanelElement = (\n child: ReactNode,\n): child is ReactElement<CubeTabPanelProps> =>\n isComponentElement<CubeTabPanelProps>(child, 'CubeTabPanel');\n\n/** Checks if a child is a TabList component. */\nconst isTabListElement = (\n child: ReactNode,\n): child is ReactElement<CubeTabListProps> =>\n isComponentElement<CubeTabListProps>(child, 'CubeTabList');\n\n/**\n * Extracts the raw key from a React element, stripping the \".$\" prefix\n * that React adds via Children.map/toArray.\n */\nfunction getRawKey(element: ReactElement): string | null {\n if (element.key == null) return null;\n const keyStr = String(element.key);\n return keyStr.startsWith('.$') ? keyStr.slice(2) : keyStr;\n}\n\n/**\n * Whether a tabpanel renders for this tab when it is selected. `renderPanel`\n * renders one for every tab; otherwise only a tab with content (its own\n * children or a `Tabs.Panel`) gets one, matching the static panel renderer.\n */\nfunction tabHasPanel(\n tab: ParsedTab,\n explicitPanels: Map<string, ParsedPanel>,\n hasRenderPanel: boolean,\n): boolean {\n if (hasRenderPanel) return true;\n\n return (explicitPanels.get(tab.key)?.content ?? tab.content) != null;\n}\n\n// =============================================================================\n// Tab Component (configuration only - not rendered directly)\n// =============================================================================\n\nfunction Tab(_props: CubeTabProps): ReactElement | null {\n return null;\n}\n\nTab.displayName = 'CubeTab';\n\n/**\n * Action for a tab's own `actions` slot, where it renders left of the built-in\n * menu trigger and delete button — which are `ItemAction`s themselves.\n *\n * Not to be confused with `Tabs.Action`, which is an `ItemButton` sized for the\n * tab bar's `prefix` / `suffix` slots rather than for a tab.\n */\nTab.Action = ItemAction;\n\n// =============================================================================\n// TabPanel Component (configuration only - not rendered directly)\n// =============================================================================\n\nfunction TabPanel(_props: CubeTabPanelProps): ReactElement | null {\n return null;\n}\n\nTabPanel.displayName = 'CubeTabPanel';\n\n// =============================================================================\n// TabList Component (configuration only - not rendered directly)\n// =============================================================================\n\nfunction TabList(_props: CubeTabListProps): ReactElement | null {\n return null;\n}\n\nTabList.displayName = 'CubeTabList';\n\n// =============================================================================\n// Main Tabs Component\n// =============================================================================\n\nfunction TabsComponent(\n props: CubeTabsProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {\n label = 'Tabs',\n defaultActiveKey,\n activeKey,\n size,\n type = 'default',\n placement = 'top',\n onChange,\n onDelete,\n onTitleChange,\n autoHideActions,\n isEditable: parentIsEditable,\n menu: parentMenu,\n menuTriggerProps: parentMenuTriggerProps,\n menuProps: parentMenuProps,\n contextMenu: parentContextMenu,\n onAction: parentOnAction,\n children,\n prefix,\n suffix,\n prerender = false,\n keepMounted = false,\n qa = 'Tabs',\n renderPanel,\n panelCacheKeys,\n isReorderable = false,\n keyOrder,\n onReorder,\n showTabPicker = false,\n showScrollArrows = false,\n tabPickerPosition = 'suffix',\n scrollArrowsPosition = 'suffix',\n hideTabListScroll = false,\n tabListPadding,\n barStyles,\n tabListStyles,\n prefixStyles,\n suffixStyles,\n ...otherProps\n } = props;\n\n // Derive orientation from placement\n const orientation: 'horizontal' | 'vertical' =\n placement === 'left' || placement === 'right' ? 'vertical' : 'horizontal';\n\n // `narrow` only makes sense for a horizontal strip — its whole point is\n // collapsed horizontal padding for a denser row of tabs. Force `default`\n // when the strip is vertical.\n const effectiveType =\n orientation === 'vertical' && type === 'narrow' ? 'default' : type;\n\n // Extract outer styles (these go on the new outer wrapper)\n const baseStyles = extractStyles(otherProps, OUTER_STYLES);\n\n // Build TabList padding style (memoized)\n const tabListPaddingStyles = useMemo(\n () =>\n tabListPadding ? { '$tablist-padding': `${tabListPadding}` } : undefined,\n [tabListPadding],\n );\n\n // Merge tabListPaddingStyles with tabListStyles (memoized)\n const mergedTabListStyles = useMemo(\n () => mergeStyles(tabListPaddingStyles, tabListStyles),\n [tabListPaddingStyles, tabListStyles],\n );\n\n // Merge all sub-element styles into baseStyles. The outer `TabsElement`\n // exposes `Bar`, `Prefix`, `Suffix`, `TabList`, `ScrollWrapper`, `Scroll`,\n // and `Scrollbar` sub-elements (defined in styled.ts).\n const combinedStyles = useMergeStyles(baseStyles, {\n Bar: barStyles,\n TabList: mergedTabListStyles,\n Prefix: prefixStyles,\n Suffix: suffixStyles,\n });\n\n // DOM element refs\n const listRef = useRef<HTMLDivElement>(null);\n const scrollRef = useRef<HTMLDivElement>(null);\n\n // Track visited tabs for keepMounted functionality\n const visitedKeysRef = useRef<Set<string>>(new Set());\n\n // While a board widget is being dragged (a `BoardDragActiveProvider` above\n // reports it), force panels to stay mounted so a tab a widget is dragged out\n // of - and its board owning the in-flight drag gesture - is not unmounted\n // when the user spring-loads a different tab by hovering it. Always `false`\n // outside a provider.\n const isBoardDragActive = useBoardDragActive();\n const effectiveKeepMounted = keepMounted || isBoardDragActive;\n\n // =========================================================================\n // Tab Title Editing Hook\n // =========================================================================\n const onTitleChangeRaf = useEvent((key: string, newTitle: string) => {\n requestAnimationFrame(() => {\n onTitleChange?.(key, newTitle);\n });\n });\n\n const { editingKey, startEditing, cancelEditing, submitEditing } =\n useTabEditing({\n onChange,\n onTitleChange: onTitleChange ? onTitleChangeRaf : undefined,\n });\n\n // =========================================================================\n // Parse children to extract tabs and explicit panels\n // =========================================================================\n const { parsedTabs, explicitPanels, hasAnyContent, listQa } = useMemo(() => {\n const childArray = Children.toArray(children);\n const tabs: ParsedTab[] = [];\n const panels = new Map<string, ParsedPanel>();\n let hasExplicitList = false;\n let tabChildren: ReactNode[] = [];\n let tabListQa: Pick<CubeTabListProps, 'qa' | 'qaVal'> = {};\n\n // Check for explicit Tabs.List / Tabs.Panel structure\n for (const child of childArray) {\n if (isTabListElement(child)) {\n hasExplicitList = true;\n tabChildren = Children.toArray(child.props.children);\n tabListQa = { qa: child.props.qa, qaVal: child.props.qaVal };\n } else if (isTabPanelElement(child)) {\n const key = getRawKey(child as ReactElement);\n\n if (key != null) {\n panels.set(key, {\n key,\n content: child.props.children,\n prerender: child.props.prerender,\n keepMounted: child.props.keepMounted,\n styles: child.props.styles,\n qa: child.props.qa,\n qaVal: child.props.qaVal,\n });\n }\n }\n }\n\n // If no explicit list, use direct Tab children\n if (!hasExplicitList) {\n tabChildren = childArray;\n }\n\n // Parse Tab elements\n let hasContent = panels.size > 0;\n\n for (const child of tabChildren) {\n if (isTabElement(child)) {\n const key = getRawKey(child) ?? child.props.id;\n\n if (key != null) {\n const { id: _id, children: tabContent, ...tabProps } = child.props;\n\n tabs.push({\n ...tabProps,\n key,\n content: tabContent,\n });\n\n if (tabContent != null) {\n hasContent = true;\n }\n }\n }\n }\n\n return {\n parsedTabs: tabs,\n explicitPanels: panels,\n hasAnyContent: hasContent,\n listQa: tabListQa,\n };\n }, [children]);\n\n // Clean up visitedKeys when tabs are removed\n const currentTabKeysSet = useMemo(\n () => new Set(parsedTabs.map((t) => t.key)),\n [parsedTabs],\n );\n\n useEffect(() => {\n for (const key of visitedKeysRef.current) {\n if (!currentTabKeysSet.has(key)) {\n visitedKeysRef.current.delete(key);\n }\n }\n }, [currentTabKeysSet]);\n\n // =========================================================================\n // Order tabs according to keyOrder\n // =========================================================================\n const orderedParsedTabs = useMemo(() => {\n if (!keyOrder || keyOrder.length === 0) {\n return parsedTabs;\n }\n\n const tabMap = new Map<string, ParsedTab>();\n for (const tab of parsedTabs) {\n tabMap.set(tab.key, tab);\n }\n\n const ordered: ParsedTab[] = [];\n for (const key of keyOrder) {\n const tab = tabMap.get(String(key));\n if (tab) {\n ordered.push(tab);\n tabMap.delete(String(key));\n }\n }\n\n // Append any tabs not in keyOrder\n for (const tab of parsedTabs) {\n if (tabMap.has(tab.key)) {\n ordered.push(tab);\n }\n }\n\n return ordered;\n }, [parsedTabs, keyOrder]);\n\n // Create collection items for React Stately\n const collectionItems = useMemo(() => {\n return orderedParsedTabs.map((tab) => (\n <CollectionItem\n key={tab.key}\n textValue={typeof tab.title === 'string' ? tab.title : String(tab.key)}\n >\n {tab.title}\n </CollectionItem>\n ));\n }, [orderedParsedTabs]);\n\n // Determine disabled keys\n const disabledKeys = useMemo(() => {\n return new Set(\n parsedTabs.filter((tab) => tab.isDisabled).map((tab) => tab.key),\n );\n }, [parsedTabs]);\n\n // Handle selection change (converts React Aria's Key to string for our API)\n const handleSelectionChange = useEvent((key: Key) => {\n const keyStr = String(key);\n visitedKeysRef.current.add(keyStr);\n onChange?.(keyStr);\n });\n\n // Convert keys to strings for React Aria compatibility\n const selectedKey = activeKey != null ? String(activeKey) : undefined;\n const defaultSelectedKey =\n defaultActiveKey != null ? String(defaultActiveKey) : undefined;\n\n // Create aria props for useTabListState\n const ariaProps: AriaTabListProps<object> = useMemo(\n () => ({\n selectedKey,\n defaultSelectedKey,\n onSelectionChange: handleSelectionChange,\n disabledKeys,\n children: collectionItems,\n 'aria-label': label,\n orientation,\n }),\n [\n selectedKey,\n defaultSelectedKey,\n handleSelectionChange,\n disabledKeys,\n collectionItems,\n label,\n orientation,\n ],\n );\n\n // Create state using useTabListState\n const state = useTabListState(ariaProps);\n\n // Track initial selected key for visited tabs\n useEffect(() => {\n if (state.selectedKey != null) {\n visitedKeysRef.current.add(String(state.selectedKey));\n }\n }, [state.selectedKey]);\n\n // Get tablist props from react-aria\n const { tabListProps } = useTabList(ariaProps, state, listRef);\n\n // Handle selection from TabPicker (needs to update internal state in uncontrolled mode)\n const handleTabPickerSelect = useEvent((key: string) => {\n // Update internal state (for uncontrolled mode)\n state.setSelectedKey(key);\n // Also call the external onChange handler\n handleSelectionChange(key);\n });\n\n // =========================================================================\n // Tab Indicator (for default type)\n // =========================================================================\n // Create order token that changes when tab order changes (for indicator recalculation)\n const orderToken = useMemo(\n () => orderedParsedTabs.map((t) => t.key).join(','),\n [orderedParsedTabs],\n );\n\n const indicatorStyle = useTabIndicator(\n listRef,\n state.selectedKey,\n effectiveType === 'default' || effectiveType === 'narrow',\n orientation,\n orderToken,\n );\n\n // =========================================================================\n // Tiny Scrollbar (not for radio type)\n // =========================================================================\n const isTinyScrollbar = effectiveType !== 'radio';\n const {\n handleHStyle,\n handleVStyle,\n hasOverflowX,\n hasOverflowY,\n isScrolling,\n isAtStartX,\n isAtEndX,\n isAtStartY,\n isAtEndY,\n } = useTinyScrollbar(scrollRef, isTinyScrollbar);\n const showTinyScrollbar = isTinyScrollbar && !hideTabListScroll;\n\n // Active-axis aggregates (used everywhere downstream so we don't sprinkle\n // orientation checks around).\n const hasOverflow = orientation === 'vertical' ? hasOverflowY : hasOverflowX;\n const isAtStart = orientation === 'vertical' ? isAtStartY : isAtStartX;\n const isAtEnd = orientation === 'vertical' ? isAtEndY : isAtEndX;\n\n const hasPanels = hasAnyContent || !!renderPanel;\n\n // =========================================================================\n // Tab Picker visibility\n // =========================================================================\n useWarn(showTabPicker && effectiveType === 'radio', {\n key: ['tabs-tabpicker-radio-unsupported'],\n args: [\n 'Tabs:',\n '`showTabPicker` is not supported when `type=\"radio\"`. The TabPicker will not be rendered.',\n ],\n });\n\n const shouldShowTabPicker =\n effectiveType !== 'radio' &&\n (showTabPicker === true || (showTabPicker === 'auto' && hasOverflow));\n\n // =========================================================================\n // Scroll Arrows visibility and handlers\n // =========================================================================\n useWarn(showScrollArrows && effectiveType === 'radio', {\n key: ['tabs-scrollarrows-radio-unsupported'],\n args: [\n 'Tabs:',\n '`showScrollArrows` is not supported when `type=\"radio\"`. The scroll arrows will not be rendered.',\n ],\n });\n\n const shouldShowScrollArrows =\n effectiveType !== 'radio' &&\n (showScrollArrows === true || (showScrollArrows === 'auto' && hasOverflow));\n\n const handleScrollStart = useEvent(() => {\n const el = scrollRef.current;\n if (!el) return;\n if (orientation === 'vertical') {\n el.scrollTo({\n top: el.scrollTop - el.clientHeight,\n behavior: 'smooth',\n });\n } else {\n el.scrollTo({\n left: el.scrollLeft - el.clientWidth,\n behavior: 'smooth',\n });\n }\n });\n\n const handleScrollEnd = useEvent(() => {\n const el = scrollRef.current;\n if (!el) return;\n if (orientation === 'vertical') {\n el.scrollTo({\n top: el.scrollTop + el.clientHeight,\n behavior: 'smooth',\n });\n } else {\n el.scrollTo({\n left: el.scrollLeft + el.clientWidth,\n behavior: 'smooth',\n });\n }\n });\n\n // =========================================================================\n // Base Context Value (without drag/drop states)\n // =========================================================================\n const baseContextValue = useMemo(\n () => ({\n state,\n type: effectiveType,\n size,\n placement,\n autoHideActions,\n isEditable: parentIsEditable,\n menu: parentMenu,\n menuTriggerProps: parentMenuTriggerProps,\n menuProps: parentMenuProps,\n contextMenu: parentContextMenu,\n onDelete,\n onAction: parentOnAction,\n editingKey,\n startEditing,\n submitEditing,\n cancelEditing,\n }),\n [\n state,\n effectiveType,\n size,\n placement,\n autoHideActions,\n parentIsEditable,\n parentMenu,\n parentMenuTriggerProps,\n parentMenuProps,\n parentContextMenu,\n onDelete,\n parentOnAction,\n editingKey,\n startEditing,\n submitEditing,\n cancelEditing,\n ],\n );\n\n // Helper to create full context value with optional drag/drop states\n const createContextValue = (\n dragState?: DraggableCollectionState,\n dropState?: DroppableCollectionState,\n ): TabsContextValue => ({\n ...baseContextValue,\n dragState,\n dropState,\n });\n\n // =========================================================================\n // Tab List Content Renderer\n // =========================================================================\n const renderTabListContent = (\n contextValue: TabsContextValue,\n collectionProps: Record<string, unknown> = {},\n ) => (\n <div\n {...mergeProps(tabListProps, collectionProps)}\n ref={listRef}\n data-element=\"TabList\"\n data-qa={listQa.qa}\n data-qaval={listQa.qaVal}\n >\n <TabsProvider value={contextValue}>\n {orderedParsedTabs.map((tab, index) => {\n const item = state.collection.getItem(tab.key);\n if (!item) return null;\n\n return (\n <TabButton\n key={item.key}\n item={item}\n tabData={tab}\n isLastTab={index === orderedParsedTabs.length - 1}\n hasPanel={tabHasPanel(tab, explicitPanels, !!renderPanel)}\n />\n );\n })}\n </TabsProvider>\n {indicatorStyle && (\n <TabIndicatorElement\n mods={{ placement }}\n style={\n orientation === 'vertical'\n ? {\n top: indicatorStyle.start,\n height: indicatorStyle.size,\n }\n : {\n left: indicatorStyle.start,\n width: indicatorStyle.size,\n }\n }\n />\n )}\n </div>\n );\n\n // =========================================================================\n // Mods for styling\n // =========================================================================\n const mods = useMemo(\n () => ({\n type: effectiveType,\n size,\n placement,\n deletable: !!onDelete,\n scrolling: showTinyScrollbar && isScrolling,\n 'fade-start': !isAtStart,\n 'fade-end': !isAtEnd,\n 'has-panels': hasPanels,\n }),\n [\n effectiveType,\n size,\n placement,\n onDelete,\n showTinyScrollbar,\n isScrolling,\n isAtStart,\n isAtEnd,\n hasPanels,\n ],\n );\n\n // =========================================================================\n // Action Elements (TabPicker and Scroll Arrows)\n // =========================================================================\n const scrollArrowsElement = shouldShowScrollArrows ? (\n <>\n <TabsAction\n icon={\n <DirectionIcon to={orientation === 'vertical' ? 'top' : 'left'} />\n }\n aria-label={\n orientation === 'vertical' ? 'Scroll tabs up' : 'Scroll tabs left'\n }\n isDisabled={isAtStart}\n onPress={handleScrollStart}\n />\n <TabsAction\n icon={\n <DirectionIcon to={orientation === 'vertical' ? 'bottom' : 'right'} />\n }\n aria-label={\n orientation === 'vertical' ? 'Scroll tabs down' : 'Scroll tabs right'\n }\n isDisabled={isAtEnd}\n onPress={handleScrollEnd}\n />\n </>\n ) : null;\n\n const tabPickerElement = shouldShowTabPicker ? (\n <TabPicker\n tabs={orderedParsedTabs}\n selectedKey={state.selectedKey == null ? null : String(state.selectedKey)}\n size={size}\n type={effectiveType}\n placement={placement}\n isReorderable={isReorderable}\n onSelect={handleTabPickerSelect}\n onDelete={onDelete}\n onReorder={onReorder}\n />\n ) : null;\n\n // Determine which actions go in prefix/suffix\n // In prefix: TabPicker first (left), then scroll arrows (right)\n // In suffix: scroll arrows first (left), then TabPicker (right)\n const prefixHasActions =\n (shouldShowTabPicker && tabPickerPosition === 'prefix') ||\n (shouldShowScrollArrows && scrollArrowsPosition === 'prefix');\n\n const suffixHasActions =\n (shouldShowTabPicker && tabPickerPosition === 'suffix') ||\n (shouldShowScrollArrows && scrollArrowsPosition === 'suffix');\n\n // Apply the active-axis scrollbar handle vars to the outer wrapper so the\n // `Scrollbar` sub-element can read them via CSS variables.\n const handleStyle = showTinyScrollbar\n ? orientation === 'vertical'\n ? handleVStyle\n : handleHStyle\n : undefined;\n\n // Wrap with TabsProvider so prefix/suffix can access context (size, type, placement).\n // The inner TabsProvider in renderTabListContent will override for tab buttons.\n return (\n <TabsProvider value={baseContextValue}>\n <TabsElement\n ref={ref}\n qa={qa}\n mods={mods}\n styles={combinedStyles}\n style={handleStyle}\n data-size={size}\n >\n <div data-element=\"Bar\">\n {prefix || prefixHasActions ? (\n <div data-element=\"Prefix\">\n {tabPickerPosition === 'prefix' && tabPickerElement}\n {scrollArrowsPosition === 'prefix' && scrollArrowsElement}\n {prefix}\n </div>\n ) : null}\n <div data-element=\"ScrollWrapper\">\n <div ref={scrollRef} data-element=\"Scroll\">\n {isReorderable ? (\n <DraggableTabList\n state={state}\n listRef={listRef}\n orderedKeys={orderedParsedTabs.map((t) => t.key)}\n orientation={orientation}\n onReorder={onReorder}\n >\n {(dragState, dropState, collectionProps) =>\n renderTabListContent(\n createContextValue(dragState, dropState),\n collectionProps,\n )\n }\n </DraggableTabList>\n ) : (\n renderTabListContent(createContextValue())\n )}\n </div>\n {showTinyScrollbar && hasOverflow && (\n <div data-element=\"Scrollbar\" />\n )}\n </div>\n {suffix || suffixHasActions ? (\n <div data-element=\"Suffix\">\n {scrollArrowsPosition === 'suffix' && scrollArrowsElement}\n {tabPickerPosition === 'suffix' && tabPickerElement}\n {suffix}\n </div>\n ) : null}\n </div>\n\n {/* Functional panel rendering with content caching */}\n {renderPanel && (\n <CachedPanelRenderer\n parsedTabs={parsedTabs}\n explicitPanels={explicitPanels}\n state={state}\n renderPanel={renderPanel}\n panelCacheKeys={panelCacheKeys}\n prerender={prerender}\n keepMounted={effectiveKeepMounted}\n visitedKeys={visitedKeysRef.current}\n />\n )}\n\n {/* Static panel rendering (traditional children-based approach) */}\n {!renderPanel &&\n hasAnyContent &&\n parsedTabs.map((tab) => {\n const explicitPanel = explicitPanels.get(tab.key);\n const content = explicitPanel?.content ?? tab.content;\n\n if (content == null) return null;\n\n return (\n <TabPanelRenderer\n key={tab.key}\n tabKey={tab.key}\n state={state}\n content={content}\n prerender={prerender}\n keepMounted={effectiveKeepMounted}\n tabPrerender={explicitPanel?.prerender ?? tab.prerender}\n tabKeepMounted={explicitPanel?.keepMounted ?? tab.keepMounted}\n visitedKeys={visitedKeysRef.current}\n panelStyles={explicitPanel?.styles}\n qa={explicitPanel?.qa}\n qaVal={explicitPanel?.qaVal}\n />\n );\n })}\n </TabsElement>\n </TabsProvider>\n );\n}\n\n// =============================================================================\n// Exports\n// =============================================================================\n\nconst _Tabs = forwardRef(TabsComponent);\n\n/**\n * Tabs component for organizing content into multiple panels.\n * Built with React Aria for full accessibility support.\n *\n * **Note:** Tab keys are internally converted to strings for React Aria compatibility.\n *\n * @example\n * // Simple usage\n * <Tabs defaultActiveKey=\"tab1\">\n * <Tab key=\"tab1\" title=\"Tab 1\">Content 1</Tab>\n * <Tab key=\"tab2\" title=\"Tab 2\">Content 2</Tab>\n * </Tabs>\n *\n * @example\n * // Tabs-only (no panels)\n * <Tabs activeKey={activeTab} onChange={setActiveTab}>\n * <Tab key=\"overview\" title=\"Overview\" />\n * <Tab key=\"settings\" title=\"Settings\" />\n * </Tabs>\n *\n * @example\n * // Explicit panels\n * <Tabs defaultActiveKey=\"tab1\">\n * <Tabs.List>\n * <Tab key=\"tab1\" title=\"Tab 1\" />\n * <Tab key=\"tab2\" title=\"Tab 2\" />\n * </Tabs.List>\n * <Tabs.Panel key=\"tab1\">Content 1</Tabs.Panel>\n * <Tabs.Panel key=\"tab2\">Content 2</Tabs.Panel>\n * </Tabs>\n */\nexport const Tabs = Object.assign(_Tabs, {\n Tab,\n List: TabList,\n Panel: TabPanel,\n Action: TabsAction,\n});\n\nexport { Tab, TabList, TabPanel, TabsAction };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Tabs.js","names":["mergeStyles","OUTER_STYLES","Children","ForwardedRef","forwardRef","isValidElement","ReactElement","ReactNode","useEffect","useMemo","useRef","AriaTabListProps","useTabList","Item","CollectionItem","DraggableCollectionState","DroppableCollectionState","useTabListState","useEvent","useWarn","DirectionIcon","mergeProps","useMergeStyles","extractStyles","ItemAction","useTinyScrollbar","useBoardDragActive","DraggableTabList","TabIndicatorElement","TabsElement","TabButton","CachedPanelRenderer","TabPanelRenderer","TabPicker","TabsAction","TabsContextValue","TabsProvider","useTabEditing","useTabIndicator","Key","CubeTabListProps","CubeTabPanelProps","CubeTabProps","CubeTabsProps","ParsedPanel","ParsedTab","isComponentElement","child","displayName","T","type","isTabElement","isTabPanelElement","isTabListElement","getRawKey","element","key","keyStr","String","startsWith","slice","tabHasPanel","tab","explicitPanels","Map","hasRenderPanel","get","content","Tab","_props","Action","TabPanel","TabList","TabsComponent","props","ref","HTMLDivElement","label","defaultActiveKey","activeKey","size","placement","onChange","onDelete","onTitleChange","autoHideActions","isEditable","parentIsEditable","menu","parentMenu","menuTriggerProps","parentMenuTriggerProps","menuProps","parentMenuProps","contextMenu","parentContextMenu","onAction","parentOnAction","children","prefix","suffix","prerender","keepMounted","qa","renderPanel","panelCacheKeys","isReorderable","keyOrder","onReorder","showTabPicker","showScrollArrows","tabPickerPosition","scrollArrowsPosition","hideTabListScroll","tabListPadding","barStyles","tabListStyles","prefixStyles","suffixStyles","otherProps","orientation","effectiveType","baseStyles","tabListPaddingStyles","undefined","mergedTabListStyles","combinedStyles","Bar","Prefix","Suffix","listRef","scrollRef","visitedKeysRef","Set","isBoardDragActive","effectiveKeepMounted","onTitleChangeRaf","newTitle","requestAnimationFrame","editingKey","startEditing","cancelEditing","submitEditing","parsedTabs","hasAnyContent","listQa","childArray","toArray","tabs","panels","hasExplicitList","tabChildren","tabListQa","Pick","qaVal","set","styles","hasContent","id","_id","tabContent","tabProps","push","currentTabKeysSet","map","t","current","has","delete","orderedParsedTabs","length","tabMap","ordered","collectionItems","title","disabledKeys","filter","isDisabled","handleSelectionChange","add","selectedKey","defaultSelectedKey","ariaProps","onSelectionChange","state","tabListProps","handleTabPickerSelect","setSelectedKey","orderToken","join","indicatorStyle","isTinyScrollbar","handleHStyle","handleVStyle","hasOverflowX","hasOverflowY","isScrolling","isAtStartX","isAtEndX","isAtStartY","isAtEndY","showTinyScrollbar","hasOverflow","isAtStart","isAtEnd","hasPanels","args","shouldShowTabPicker","shouldShowScrollArrows","handleScrollStart","el","scrollTo","top","scrollTop","clientHeight","behavior","left","scrollLeft","clientWidth","handleScrollEnd","baseContextValue","createContextValue","dragState","dropState","renderTabListContent","contextValue","collectionProps","Record","index","item","collection","getItem","start","height","width","mods","deletable","scrolling","scrollArrowsElement","tabPickerElement","prefixHasActions","suffixHasActions","handleStyle","explicitPanel","_Tabs","Tabs","Object","assign","List","Panel","CollectionItem","mergeProps"],"sources":["../../../../src/components/navigation/Tabs/Tabs.tsx"],"sourcesContent":["import { mergeStyles, OUTER_STYLES } from '@tenphi/tasty';\nimport {\n Children,\n ForwardedRef,\n forwardRef,\n isValidElement,\n ReactElement,\n ReactNode,\n useEffect,\n useMemo,\n useRef,\n} from 'react';\nimport { AriaTabListProps, useTabList } from 'react-aria';\nimport {\n Item as CollectionItem,\n DraggableCollectionState,\n DroppableCollectionState,\n useTabListState,\n} from 'react-stately';\n\nimport { useEvent, useWarn } from '../../../_internal/hooks';\nimport { DirectionIcon } from '../../../icons/DirectionIcon';\nimport { mergeProps, useMergeStyles } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\nimport { ItemAction } from '../../actions/ItemAction/ItemAction';\nimport { useTinyScrollbar } from '../../content/Layout/hooks/useTinyScrollbar';\n\nimport { useBoardDragActive } from './BoardDragActiveProvider';\nimport { DraggableTabList } from './DraggableTabList';\nimport { TabIndicatorElement, TabsElement } from './styled';\nimport { TabButton } from './TabButton';\nimport { CachedPanelRenderer, TabPanelRenderer } from './TabPanel';\nimport { TabPicker } from './TabPicker';\nimport { TabsAction } from './TabsAction';\nimport { TabsContextValue, TabsProvider } from './TabsContext';\nimport { useTabEditing } from './use-tab-editing';\nimport { useTabIndicator } from './use-tab-indicator';\n\nimport type { Key } from '@react-types/shared';\nimport type {\n CubeTabListProps,\n CubeTabPanelProps,\n CubeTabProps,\n CubeTabsProps,\n ParsedPanel,\n ParsedTab,\n} from './types';\n\n// =============================================================================\n// Helper Functions\n// =============================================================================\n\n/**\n * Generic helper to check if a child is a specific component by displayName.\n */\nfunction isComponentElement<T>(\n child: ReactNode,\n displayName: string,\n): child is ReactElement<T> {\n return (\n isValidElement(child) &&\n typeof child.type === 'function' &&\n (child.type as any).displayName === displayName\n );\n}\n\n/** Checks if a child is a Tab component. */\nconst isTabElement = (child: ReactNode): child is ReactElement<CubeTabProps> =>\n isComponentElement<CubeTabProps>(child, 'CubeTab');\n\n/** Checks if a child is a TabPanel component. */\nconst isTabPanelElement = (\n child: ReactNode,\n): child is ReactElement<CubeTabPanelProps> =>\n isComponentElement<CubeTabPanelProps>(child, 'CubeTabPanel');\n\n/** Checks if a child is a TabList component. */\nconst isTabListElement = (\n child: ReactNode,\n): child is ReactElement<CubeTabListProps> =>\n isComponentElement<CubeTabListProps>(child, 'CubeTabList');\n\n/**\n * Extracts the raw key from a React element, stripping the \".$\" prefix\n * that React adds via Children.map/toArray.\n */\nfunction getRawKey(element: ReactElement): string | null {\n if (element.key == null) return null;\n const keyStr = String(element.key);\n return keyStr.startsWith('.$') ? keyStr.slice(2) : keyStr;\n}\n\n/**\n * Whether a tabpanel renders for this tab when it is selected. `renderPanel`\n * renders one for every tab; otherwise only a tab with content (its own\n * children or a `Tabs.Panel`) gets one, matching the static panel renderer.\n */\nfunction tabHasPanel(\n tab: ParsedTab,\n explicitPanels: Map<string, ParsedPanel>,\n hasRenderPanel: boolean,\n): boolean {\n if (hasRenderPanel) return true;\n\n return (explicitPanels.get(tab.key)?.content ?? tab.content) != null;\n}\n\n// =============================================================================\n// Tab Component (configuration only - not rendered directly)\n// =============================================================================\n\nfunction Tab(_props: CubeTabProps): ReactElement | null {\n return null;\n}\n\nTab.displayName = 'CubeTab';\n\n/**\n * Action for a tab's own `actions` slot, where it renders left of the built-in\n * menu trigger and delete button — which are `ItemAction`s themselves.\n *\n * Not to be confused with `Tabs.Action`, which is an `ItemButton` sized for the\n * tab bar's `prefix` / `suffix` slots rather than for a tab.\n */\nTab.Action = ItemAction;\n\n// =============================================================================\n// TabPanel Component (configuration only - not rendered directly)\n// =============================================================================\n\nfunction TabPanel(_props: CubeTabPanelProps): ReactElement | null {\n return null;\n}\n\nTabPanel.displayName = 'CubeTabPanel';\n\n// =============================================================================\n// TabList Component (configuration only - not rendered directly)\n// =============================================================================\n\nfunction TabList(_props: CubeTabListProps): ReactElement | null {\n return null;\n}\n\nTabList.displayName = 'CubeTabList';\n\n// =============================================================================\n// Main Tabs Component\n// =============================================================================\n\nfunction TabsComponent(\n props: CubeTabsProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {\n label = 'Tabs',\n defaultActiveKey,\n activeKey,\n size,\n type = 'default',\n placement = 'top',\n onChange,\n onDelete,\n onTitleChange,\n autoHideActions,\n isEditable: parentIsEditable,\n menu: parentMenu,\n menuTriggerProps: parentMenuTriggerProps,\n menuProps: parentMenuProps,\n contextMenu: parentContextMenu,\n onAction: parentOnAction,\n children,\n prefix,\n suffix,\n prerender = false,\n keepMounted = false,\n qa = 'Tabs',\n renderPanel,\n panelCacheKeys,\n isReorderable = false,\n keyOrder,\n onReorder,\n showTabPicker = false,\n showScrollArrows = false,\n tabPickerPosition = 'suffix',\n scrollArrowsPosition = 'suffix',\n hideTabListScroll = false,\n tabListPadding,\n barStyles,\n tabListStyles,\n prefixStyles,\n suffixStyles,\n ...otherProps\n } = props;\n\n // Derive orientation from placement\n const orientation: 'horizontal' | 'vertical' =\n placement === 'left' || placement === 'right' ? 'vertical' : 'horizontal';\n\n // `narrow` only makes sense for a horizontal strip — its whole point is\n // collapsed horizontal padding for a denser row of tabs. Force `default`\n // when the strip is vertical.\n const effectiveType =\n orientation === 'vertical' && type === 'narrow' ? 'default' : type;\n\n // Extract outer styles (these go on the new outer wrapper)\n const baseStyles = extractStyles(otherProps, OUTER_STYLES);\n\n // Build TabList padding style (memoized)\n const tabListPaddingStyles = useMemo(\n () =>\n tabListPadding ? { '$tablist-padding': `${tabListPadding}` } : undefined,\n [tabListPadding],\n );\n\n // Merge tabListPaddingStyles with tabListStyles (memoized)\n const mergedTabListStyles = useMemo(\n () => mergeStyles(tabListPaddingStyles, tabListStyles),\n [tabListPaddingStyles, tabListStyles],\n );\n\n // Merge all sub-element styles into baseStyles. The outer `TabsElement`\n // exposes `Bar`, `Prefix`, `Suffix`, `TabList`, `ScrollWrapper`, `Scroll`,\n // and `Scrollbar` sub-elements (defined in styled.ts).\n const combinedStyles = useMergeStyles(baseStyles, {\n Bar: barStyles,\n TabList: mergedTabListStyles,\n Prefix: prefixStyles,\n Suffix: suffixStyles,\n });\n\n // DOM element refs\n const listRef = useRef<HTMLDivElement>(null);\n const scrollRef = useRef<HTMLDivElement>(null);\n\n // Track visited tabs for keepMounted functionality\n const visitedKeysRef = useRef<Set<string>>(new Set());\n\n // While a board widget is being dragged (a `BoardDragActiveProvider` above\n // reports it), force panels to stay mounted so a tab a widget is dragged out\n // of - and its board owning the in-flight drag gesture - is not unmounted\n // when the user spring-loads a different tab by hovering it. Always `false`\n // outside a provider.\n const isBoardDragActive = useBoardDragActive();\n const effectiveKeepMounted = keepMounted || isBoardDragActive;\n\n // =========================================================================\n // Tab Title Editing Hook\n // =========================================================================\n const onTitleChangeRaf = useEvent((key: string, newTitle: string) => {\n requestAnimationFrame(() => {\n onTitleChange?.(key, newTitle);\n });\n });\n\n const { editingKey, startEditing, cancelEditing, submitEditing } =\n useTabEditing({\n onChange,\n onTitleChange: onTitleChange ? onTitleChangeRaf : undefined,\n });\n\n // =========================================================================\n // Parse children to extract tabs and explicit panels\n // =========================================================================\n const { parsedTabs, explicitPanels, hasAnyContent, listQa } = useMemo(() => {\n const childArray = Children.toArray(children);\n const tabs: ParsedTab[] = [];\n const panels = new Map<string, ParsedPanel>();\n let hasExplicitList = false;\n let tabChildren: ReactNode[] = [];\n let tabListQa: Pick<CubeTabListProps, 'qa' | 'qaVal'> = {};\n\n // Check for explicit Tabs.List / Tabs.Panel structure\n for (const child of childArray) {\n if (isTabListElement(child)) {\n hasExplicitList = true;\n tabChildren = Children.toArray(child.props.children);\n tabListQa = { qa: child.props.qa, qaVal: child.props.qaVal };\n } else if (isTabPanelElement(child)) {\n const key = getRawKey(child as ReactElement);\n\n if (key != null) {\n panels.set(key, {\n key,\n content: child.props.children,\n prerender: child.props.prerender,\n keepMounted: child.props.keepMounted,\n styles: child.props.styles,\n qa: child.props.qa,\n qaVal: child.props.qaVal,\n });\n }\n }\n }\n\n // If no explicit list, use direct Tab children\n if (!hasExplicitList) {\n tabChildren = childArray;\n }\n\n // Parse Tab elements\n let hasContent = panels.size > 0;\n\n for (const child of tabChildren) {\n if (isTabElement(child)) {\n const key = getRawKey(child) ?? child.props.id;\n\n if (key != null) {\n const { id: _id, children: tabContent, ...tabProps } = child.props;\n\n tabs.push({\n ...tabProps,\n key,\n content: tabContent,\n });\n\n if (tabContent != null) {\n hasContent = true;\n }\n }\n }\n }\n\n return {\n parsedTabs: tabs,\n explicitPanels: panels,\n hasAnyContent: hasContent,\n listQa: tabListQa,\n };\n }, [children]);\n\n // Clean up visitedKeys when tabs are removed\n const currentTabKeysSet = useMemo(\n () => new Set(parsedTabs.map((t) => t.key)),\n [parsedTabs],\n );\n\n useEffect(() => {\n for (const key of visitedKeysRef.current) {\n if (!currentTabKeysSet.has(key)) {\n visitedKeysRef.current.delete(key);\n }\n }\n }, [currentTabKeysSet]);\n\n // =========================================================================\n // Order tabs according to keyOrder\n // =========================================================================\n const orderedParsedTabs = useMemo(() => {\n if (!keyOrder || keyOrder.length === 0) {\n return parsedTabs;\n }\n\n const tabMap = new Map<string, ParsedTab>();\n for (const tab of parsedTabs) {\n tabMap.set(tab.key, tab);\n }\n\n const ordered: ParsedTab[] = [];\n for (const key of keyOrder) {\n const tab = tabMap.get(String(key));\n if (tab) {\n ordered.push(tab);\n tabMap.delete(String(key));\n }\n }\n\n // Append any tabs not in keyOrder\n for (const tab of parsedTabs) {\n if (tabMap.has(tab.key)) {\n ordered.push(tab);\n }\n }\n\n return ordered;\n }, [parsedTabs, keyOrder]);\n\n // Create collection items for React Stately\n const collectionItems = useMemo(() => {\n return orderedParsedTabs.map((tab) => (\n <CollectionItem\n key={tab.key}\n textValue={typeof tab.title === 'string' ? tab.title : String(tab.key)}\n >\n {tab.title}\n </CollectionItem>\n ));\n }, [orderedParsedTabs]);\n\n // Determine disabled keys\n const disabledKeys = useMemo(() => {\n return new Set(\n parsedTabs.filter((tab) => tab.isDisabled).map((tab) => tab.key),\n );\n }, [parsedTabs]);\n\n // Handle selection change (converts React Aria's Key to string for our API)\n const handleSelectionChange = useEvent((key: Key) => {\n const keyStr = String(key);\n visitedKeysRef.current.add(keyStr);\n onChange?.(keyStr);\n });\n\n // Convert keys to strings for React Aria compatibility\n const selectedKey = activeKey != null ? String(activeKey) : undefined;\n const defaultSelectedKey =\n defaultActiveKey != null ? String(defaultActiveKey) : undefined;\n\n // Create aria props for useTabListState\n const ariaProps: AriaTabListProps<object> = useMemo(\n () => ({\n selectedKey,\n defaultSelectedKey,\n onSelectionChange: handleSelectionChange,\n disabledKeys,\n children: collectionItems,\n 'aria-label': label,\n orientation,\n }),\n [\n selectedKey,\n defaultSelectedKey,\n handleSelectionChange,\n disabledKeys,\n collectionItems,\n label,\n orientation,\n ],\n );\n\n // Create state using useTabListState\n const state = useTabListState(ariaProps);\n\n // Track initial selected key for visited tabs\n useEffect(() => {\n if (state.selectedKey != null) {\n visitedKeysRef.current.add(String(state.selectedKey));\n }\n }, [state.selectedKey]);\n\n // Get tablist props from react-aria\n const { tabListProps } = useTabList(ariaProps, state, listRef);\n\n // Handle selection from TabPicker (needs to update internal state in uncontrolled mode)\n const handleTabPickerSelect = useEvent((key: string) => {\n // Update internal state (for uncontrolled mode)\n state.setSelectedKey(key);\n // Also call the external onChange handler\n handleSelectionChange(key);\n });\n\n // =========================================================================\n // Tab Indicator (for default type)\n // =========================================================================\n // Create order token that changes when tab order changes (for indicator recalculation)\n const orderToken = useMemo(\n () => orderedParsedTabs.map((t) => t.key).join(','),\n [orderedParsedTabs],\n );\n\n const indicatorStyle = useTabIndicator(\n listRef,\n state.selectedKey,\n effectiveType === 'default' || effectiveType === 'narrow',\n orientation,\n orderToken,\n );\n\n // =========================================================================\n // Tiny Scrollbar (not for radio type)\n // =========================================================================\n const isTinyScrollbar = effectiveType !== 'radio';\n const {\n handleHStyle,\n handleVStyle,\n hasOverflowX,\n hasOverflowY,\n isScrolling,\n isAtStartX,\n isAtEndX,\n isAtStartY,\n isAtEndY,\n } = useTinyScrollbar(scrollRef, isTinyScrollbar);\n const showTinyScrollbar = isTinyScrollbar && !hideTabListScroll;\n\n // Active-axis aggregates (used everywhere downstream so we don't sprinkle\n // orientation checks around).\n const hasOverflow = orientation === 'vertical' ? hasOverflowY : hasOverflowX;\n const isAtStart = orientation === 'vertical' ? isAtStartY : isAtStartX;\n const isAtEnd = orientation === 'vertical' ? isAtEndY : isAtEndX;\n\n const hasPanels = hasAnyContent || !!renderPanel;\n\n // =========================================================================\n // Tab Picker visibility\n // =========================================================================\n useWarn(showTabPicker && effectiveType === 'radio', {\n key: ['tabs-tabpicker-radio-unsupported'],\n args: [\n 'Tabs:',\n '`showTabPicker` is not supported when `type=\"radio\"`. The TabPicker will not be rendered.',\n ],\n });\n\n const shouldShowTabPicker =\n effectiveType !== 'radio' &&\n (showTabPicker === true || (showTabPicker === 'auto' && hasOverflow));\n\n // =========================================================================\n // Scroll Arrows visibility and handlers\n // =========================================================================\n useWarn(showScrollArrows && effectiveType === 'radio', {\n key: ['tabs-scrollarrows-radio-unsupported'],\n args: [\n 'Tabs:',\n '`showScrollArrows` is not supported when `type=\"radio\"`. The scroll arrows will not be rendered.',\n ],\n });\n\n const shouldShowScrollArrows =\n effectiveType !== 'radio' &&\n (showScrollArrows === true || (showScrollArrows === 'auto' && hasOverflow));\n\n const handleScrollStart = useEvent(() => {\n const el = scrollRef.current;\n if (!el) return;\n if (orientation === 'vertical') {\n el.scrollTo({\n top: el.scrollTop - el.clientHeight,\n behavior: 'smooth',\n });\n } else {\n el.scrollTo({\n left: el.scrollLeft - el.clientWidth,\n behavior: 'smooth',\n });\n }\n });\n\n const handleScrollEnd = useEvent(() => {\n const el = scrollRef.current;\n if (!el) return;\n if (orientation === 'vertical') {\n el.scrollTo({\n top: el.scrollTop + el.clientHeight,\n behavior: 'smooth',\n });\n } else {\n el.scrollTo({\n left: el.scrollLeft + el.clientWidth,\n behavior: 'smooth',\n });\n }\n });\n\n // =========================================================================\n // Base Context Value (without drag/drop states)\n // =========================================================================\n const baseContextValue = useMemo(\n () => ({\n state,\n type: effectiveType,\n size,\n placement,\n autoHideActions,\n isEditable: parentIsEditable,\n menu: parentMenu,\n menuTriggerProps: parentMenuTriggerProps,\n menuProps: parentMenuProps,\n contextMenu: parentContextMenu,\n onDelete,\n onAction: parentOnAction,\n editingKey,\n startEditing,\n submitEditing,\n cancelEditing,\n }),\n [\n state,\n effectiveType,\n size,\n placement,\n autoHideActions,\n parentIsEditable,\n parentMenu,\n parentMenuTriggerProps,\n parentMenuProps,\n parentContextMenu,\n onDelete,\n parentOnAction,\n editingKey,\n startEditing,\n submitEditing,\n cancelEditing,\n ],\n );\n\n // Helper to create full context value with optional drag/drop states\n const createContextValue = (\n dragState?: DraggableCollectionState,\n dropState?: DroppableCollectionState,\n ): TabsContextValue => ({\n ...baseContextValue,\n dragState,\n dropState,\n });\n\n // =========================================================================\n // Tab List Content Renderer\n // =========================================================================\n const renderTabListContent = (\n contextValue: TabsContextValue,\n collectionProps: Record<string, unknown> = {},\n ) => (\n <div\n {...mergeProps(tabListProps, collectionProps)}\n ref={listRef}\n data-element=\"TabList\"\n data-qa={listQa.qa}\n data-qaval={listQa.qaVal}\n >\n <TabsProvider value={contextValue}>\n {orderedParsedTabs.map((tab, index) => {\n const item = state.collection.getItem(tab.key);\n if (!item) return null;\n\n return (\n <TabButton\n key={item.key}\n item={item}\n tabData={tab}\n isLastTab={index === orderedParsedTabs.length - 1}\n hasPanel={tabHasPanel(tab, explicitPanels, !!renderPanel)}\n />\n );\n })}\n </TabsProvider>\n {indicatorStyle && (\n <TabIndicatorElement\n mods={{ placement }}\n style={\n orientation === 'vertical'\n ? {\n top: indicatorStyle.start,\n height: indicatorStyle.size,\n }\n : {\n left: indicatorStyle.start,\n width: indicatorStyle.size,\n }\n }\n />\n )}\n </div>\n );\n\n // =========================================================================\n // Mods for styling\n // =========================================================================\n const mods = useMemo(\n () => ({\n type: effectiveType,\n size,\n placement,\n deletable: !!onDelete,\n scrolling: showTinyScrollbar && isScrolling,\n 'fade-start': !isAtStart,\n 'fade-end': !isAtEnd,\n 'has-panels': hasPanels,\n }),\n [\n effectiveType,\n size,\n placement,\n onDelete,\n showTinyScrollbar,\n isScrolling,\n isAtStart,\n isAtEnd,\n hasPanels,\n ],\n );\n\n // =========================================================================\n // Action Elements (TabPicker and Scroll Arrows)\n // =========================================================================\n const scrollArrowsElement = shouldShowScrollArrows ? (\n <>\n <TabsAction\n icon={\n <DirectionIcon to={orientation === 'vertical' ? 'top' : 'left'} />\n }\n aria-label={\n orientation === 'vertical' ? 'Scroll tabs up' : 'Scroll tabs left'\n }\n isDisabled={isAtStart}\n onPress={handleScrollStart}\n />\n <TabsAction\n icon={\n <DirectionIcon to={orientation === 'vertical' ? 'bottom' : 'right'} />\n }\n aria-label={\n orientation === 'vertical' ? 'Scroll tabs down' : 'Scroll tabs right'\n }\n isDisabled={isAtEnd}\n onPress={handleScrollEnd}\n />\n </>\n ) : null;\n\n const tabPickerElement = shouldShowTabPicker ? (\n <TabPicker\n tabs={orderedParsedTabs}\n selectedKey={state.selectedKey == null ? null : String(state.selectedKey)}\n size={size}\n type={effectiveType}\n placement={placement}\n isReorderable={isReorderable}\n onSelect={handleTabPickerSelect}\n onDelete={onDelete}\n onReorder={onReorder}\n />\n ) : null;\n\n // Determine which actions go in prefix/suffix\n // In prefix: TabPicker first (left), then scroll arrows (right)\n // In suffix: scroll arrows first (left), then TabPicker (right)\n const prefixHasActions =\n (shouldShowTabPicker && tabPickerPosition === 'prefix') ||\n (shouldShowScrollArrows && scrollArrowsPosition === 'prefix');\n\n const suffixHasActions =\n (shouldShowTabPicker && tabPickerPosition === 'suffix') ||\n (shouldShowScrollArrows && scrollArrowsPosition === 'suffix');\n\n // Apply the active-axis scrollbar handle vars to the outer wrapper so the\n // `Scrollbar` sub-element can read them via CSS variables.\n const handleStyle = showTinyScrollbar\n ? orientation === 'vertical'\n ? handleVStyle\n : handleHStyle\n : undefined;\n\n // Wrap with TabsProvider so prefix/suffix can access context (size, type, placement).\n // The inner TabsProvider in renderTabListContent will override for tab buttons.\n return (\n <TabsProvider value={baseContextValue}>\n <TabsElement\n ref={ref}\n qa={qa}\n mods={mods}\n styles={combinedStyles}\n style={handleStyle}\n data-size={size}\n >\n <div data-element=\"Bar\">\n {prefix || prefixHasActions ? (\n <div data-element=\"Prefix\">\n {tabPickerPosition === 'prefix' && tabPickerElement}\n {scrollArrowsPosition === 'prefix' && scrollArrowsElement}\n {prefix}\n </div>\n ) : null}\n <div data-element=\"ScrollWrapper\">\n <div ref={scrollRef} data-element=\"Scroll\">\n {isReorderable ? (\n <DraggableTabList\n state={state}\n listRef={listRef}\n orderedKeys={orderedParsedTabs.map((t) => t.key)}\n orientation={orientation}\n onReorder={onReorder}\n >\n {(dragState, dropState, collectionProps) =>\n renderTabListContent(\n createContextValue(dragState, dropState),\n collectionProps,\n )\n }\n </DraggableTabList>\n ) : (\n renderTabListContent(createContextValue())\n )}\n </div>\n {showTinyScrollbar && hasOverflow && (\n <div data-element=\"Scrollbar\" />\n )}\n </div>\n {suffix || suffixHasActions ? (\n <div data-element=\"Suffix\">\n {scrollArrowsPosition === 'suffix' && scrollArrowsElement}\n {tabPickerPosition === 'suffix' && tabPickerElement}\n {suffix}\n </div>\n ) : null}\n </div>\n\n {/* Functional panel rendering with content caching */}\n {renderPanel && (\n <CachedPanelRenderer\n parsedTabs={parsedTabs}\n explicitPanels={explicitPanels}\n state={state}\n renderPanel={renderPanel}\n panelCacheKeys={panelCacheKeys}\n prerender={prerender}\n keepMounted={effectiveKeepMounted}\n visitedKeys={visitedKeysRef.current}\n />\n )}\n\n {/* Static panel rendering (traditional children-based approach) */}\n {!renderPanel &&\n hasAnyContent &&\n parsedTabs.map((tab) => {\n const explicitPanel = explicitPanels.get(tab.key);\n const content = explicitPanel?.content ?? tab.content;\n\n if (content == null) return null;\n\n return (\n <TabPanelRenderer\n key={tab.key}\n tabKey={tab.key}\n state={state}\n content={content}\n prerender={prerender}\n keepMounted={effectiveKeepMounted}\n tabPrerender={explicitPanel?.prerender ?? tab.prerender}\n tabKeepMounted={explicitPanel?.keepMounted ?? tab.keepMounted}\n visitedKeys={visitedKeysRef.current}\n panelStyles={explicitPanel?.styles}\n qa={explicitPanel?.qa}\n qaVal={explicitPanel?.qaVal}\n />\n );\n })}\n </TabsElement>\n </TabsProvider>\n );\n}\n\n// =============================================================================\n// Exports\n// =============================================================================\n\nconst _Tabs = forwardRef(TabsComponent);\n\n/**\n * Tabs component for organizing content into multiple panels.\n * Built with React Aria for full accessibility support.\n *\n * **Note:** Tab keys are internally converted to strings for React Aria compatibility.\n *\n * @example\n * // Simple usage\n * <Tabs defaultActiveKey=\"tab1\">\n * <Tab key=\"tab1\" title=\"Tab 1\">Content 1</Tab>\n * <Tab key=\"tab2\" title=\"Tab 2\">Content 2</Tab>\n * </Tabs>\n *\n * @example\n * // Tabs-only (no panels)\n * <Tabs activeKey={activeTab} onChange={setActiveTab}>\n * <Tab key=\"overview\" title=\"Overview\" />\n * <Tab key=\"settings\" title=\"Settings\" />\n * </Tabs>\n *\n * @example\n * // Explicit panels\n * <Tabs defaultActiveKey=\"tab1\">\n * <Tabs.List>\n * <Tab key=\"tab1\" title=\"Tab 1\" />\n * <Tab key=\"tab2\" title=\"Tab 2\" />\n * </Tabs.List>\n * <Tabs.Panel key=\"tab1\">Content 1</Tabs.Panel>\n * <Tabs.Panel key=\"tab2\">Content 2</Tabs.Panel>\n * </Tabs>\n */\nexport const Tabs = Object.assign(_Tabs, {\n Tab,\n List: TabList,\n Panel: TabPanel,\n Action: TabsAction,\n});\n\nexport { Tab, TabList, TabPanel, TabsAction };\n"],"mappings":"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"}
@@ -1,11 +1,8 @@
1
1
 
2
2
  import { CubeItemButtonProps } from "../../actions/ItemButton/ItemButton.js";
3
3
  import { TabSize } from "./types.js";
4
- import * as react from "react";
5
- import * as _react_types_shared0 from "@react-types/shared";
6
-
7
4
  //#region src/components/navigation/Tabs/TabsAction.d.ts
8
- interface CubeTabsActionProps extends Omit<CubeItemButtonProps, 'size' | 'shape'> {
5
+ export interface CubeTabsActionProps extends Omit<CubeItemButtonProps, 'size' | 'shape'> {
9
6
  /**
10
7
  * Size of the action button.
11
8
  * When used inside Tabs prefix/suffix, inherits from Tabs size by default.
@@ -40,7 +37,6 @@ interface CubeTabsActionProps extends Omit<CubeItemButtonProps, 'size' | 'shape'
40
37
  * <Tab key="tab1" title="Tab 1">Content</Tab>
41
38
  * </Tabs>
42
39
  */
43
- declare const TabsAction: react.ForwardRefExoticComponent<CubeTabsActionProps & react.RefAttributes<_react_types_shared0.FocusableRefValue<HTMLElement, HTMLElement>>>;
40
+ export declare const TabsAction: import("react").ForwardRefExoticComponent<CubeTabsActionProps & import("react").RefAttributes<import("@react-types/shared").FocusableRefValue<HTMLElement, HTMLElement>>>;
44
41
  //#endregion
45
- export { CubeTabsActionProps, TabsAction };
46
42
  //# sourceMappingURL=TabsAction.d.ts.map
@@ -1,11 +1,10 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
- import { _ItemButton } from "../../actions/ItemButton/ItemButton.js";
1
+ /** @license MIT | @cube-dev/ui-kit v0.198.0 | Cube Dev Team */
2
+ import { ItemButton as _ItemButton } from "../../actions/ItemButton/ItemButton.js";
3
3
  import { useOptionalTabsContext } from "./TabsContext.js";
4
4
  import { c } from "react/compiler-runtime";
5
5
  import { tasty } from "@tenphi/tasty";
6
6
  import { forwardRef } from "react";
7
7
  import { jsx } from "react/jsx-runtime";
8
-
9
8
  //#region src/components/navigation/Tabs/TabsAction.tsx
10
9
  const TabsActionElement = tasty(_ItemButton, { styles: {
11
10
  border: {
@@ -100,7 +99,7 @@ const TabsAction = forwardRef(function TabsAction(props, ref) {
100
99
  } else t3 = $[14];
101
100
  return t3;
102
101
  });
103
-
104
102
  //#endregion
105
103
  export { TabsAction };
104
+
106
105
  //# sourceMappingURL=TabsAction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TabsAction.js","names":["FocusableRef","tasty","forwardRef","CubeItemButtonProps","ItemButton","useOptionalTabsContext","TabSize","CubeTabsActionProps","Omit","size","TabsActionElement","styles","border","radius","TabsAction","props","ref","$","_c","mods","rest","type","tabsContext","effectiveSize","tabsType","tabsPlacement","placement","tabsVertical","t0","t1","combinedMods","t2","t3"],"sources":["../../../../src/components/navigation/Tabs/TabsAction.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport { tasty } from '@tenphi/tasty';\nimport { forwardRef } from 'react';\n\nimport {\n CubeItemButtonProps,\n ItemButton,\n} from '../../actions/ItemButton/ItemButton';\n\nimport { useOptionalTabsContext } from './TabsContext';\n\nimport type { TabSize } from './types';\n\n// =============================================================================\n// Types\n// =============================================================================\n\nexport interface CubeTabsActionProps\n extends Omit<CubeItemButtonProps, 'size' | 'shape'> {\n /**\n * Size of the action button.\n * When used inside Tabs prefix/suffix, inherits from Tabs size by default.\n */\n size?: TabSize;\n}\n\n// =============================================================================\n// Styled Component\n// =============================================================================\n\nconst TabsActionElement = tasty(ItemButton, {\n styles: {\n border: {\n 'type=clear': 0,\n 'type=clear & tabs-type-file & !:first-child & !tabs-vertical': 'left',\n 'type=clear & tabs-type-file & !:first-child & tabs-vertical': 'top',\n },\n radius: {\n 'type=clear': 0,\n },\n },\n});\n\n// =============================================================================\n// Component\n// =============================================================================\n\n/**\n * Action button designed for the Tabs prefix/suffix slots.\n *\n * Styled with sharp edges and no border to match the TabPicker trigger.\n * When multiple TabsAction components are placed together, they automatically\n * display dividers between them using CSS :not(:first-child) border styling\n * (only for file tab type).\n *\n * Inherits size from the parent Tabs component when used inside prefix/suffix slots.\n *\n * @example\n * <Tabs suffix={<Tabs.Action icon={<PlusIcon />} onPress={handleAdd} />}>\n * <Tab key=\"tab1\" title=\"Tab 1\">Content</Tab>\n * </Tabs>\n *\n * @example\n * // Multiple actions with automatic dividers\n * <Tabs\n * suffix={\n * <>\n * <Tabs.Action icon={<PlusIcon />} onPress={handleAdd} />\n * <Tabs.Action icon={<SettingsIcon />} onPress={handleSettings} />\n * </>\n * }\n * >\n * <Tab key=\"tab1\" title=\"Tab 1\">Content</Tab>\n * </Tabs>\n */\nexport const TabsAction = forwardRef(function TabsAction(\n props: CubeTabsActionProps,\n ref: FocusableRef<HTMLElement>,\n) {\n const { size, mods, type, ...rest } = props;\n\n // Get size, type, and placement from context if available (when used inside Tabs)\n const tabsContext = useOptionalTabsContext();\n const effectiveSize = size ?? tabsContext?.size ?? 'medium';\n const tabsType = tabsContext?.type ?? 'default';\n const tabsPlacement = tabsContext?.placement ?? 'top';\n const tabsVertical = tabsPlacement === 'left' || tabsPlacement === 'right';\n\n const combinedMods = {\n 'tabs-type-file': tabsType === 'file',\n 'tabs-vertical': tabsVertical,\n ...mods,\n };\n\n return (\n <TabsActionElement\n ref={ref}\n type={type ?? (tabsType === 'default' ? 'outline' : 'clear')}\n size={effectiveSize}\n mods={combinedMods}\n {...rest}\n />\n );\n});\n"],"mappings":";;;;;;;;;AA8BA,MAAMU,oBAAoBT,MAAMG,aAAY,EAC1CO,QAAQ;CACNC,QAAQ;EACN,cAAc;EACd,gEAAgE;EAChE,+DAA+D;EAChE;CACDC,QAAQ,EACN,cAAc,GAChB;CACF,EACD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCF,MAAaC,aAAaZ,WAAW,SAAAY,WAAAC,OAAAC,KAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAX;CAAA,IAAAY;AAAA,KAAAJ,EAAA,OAAAF,OAAA;AAInC,GAAA,CAAAN,MAAAU,MAAAE,SAAAD,QAAsCL;AAAME,IAAA,KAAAF;AAAAE,IAAA,KAAAE;AAAAF,IAAA,KAAAG;AAAAH,IAAA,KAAAR;AAAAQ,IAAA,KAAAI;QAAA;AAAAF,SAAAF,EAAA;AAAAG,SAAAH,EAAA;AAAAR,SAAAQ,EAAA;AAAAI,SAAAJ,EAAA;;CAG5C,MAAAK,cAAoBjB,wBAAwB;CAC5C,MAAAkB,gBAAsBd,QAAQa,aAAWb,QAAnB;CACtB,MAAAe,WAAiBF,aAAWD,QAAX;CACjB,MAAAI,gBAAsBH,aAAWI,aAAX;CACtB,MAAAC,eAAqBF,kBAAkB,UAAUA,kBAAkB;CAG/C,MAAAG,KAAAJ,aAAa;CAAM,IAAAK;AAAA,KAAAZ,EAAA,OAAAE,QAAAF,EAAA,OAAAW,MAAAX,EAAA,OAAAU,cAAA;AADlBE,OAAA;GAAA,kBACDD;GAAmB,iBACpBD;GAAY,GAC1BR;GACJ;AAAAF,IAAA,KAAAE;AAAAF,IAAA,KAAAW;AAAAX,IAAA,KAAAU;AAAAV,IAAA,KAAAY;OAAAA,MAAAZ,EAAA;CAJD,MAAAa,eAAqBD;CASX,MAAAE,KAAAV,SAASG,aAAa,YAAb,YAAA;CAA6C,IAAAQ;AAAA,KAAAf,EAAA,OAAAa,gBAAAb,EAAA,QAAAM,iBAAAN,EAAA,QAAAD,OAAAC,EAAA,QAAAG,QAAAH,EAAA,QAAAc,IAAA;AAF9DC,OAAA,oBAAC;GACMhB;GACC,MAAAe;GACAR,MAAAA;GACAO,MAAAA;GAAY,GACdV;IACJ;AAAAH,IAAA,KAAAa;AAAAb,IAAA,MAAAM;AAAAN,IAAA,MAAAD;AAAAC,IAAA,MAAAG;AAAAH,IAAA,MAAAc;AAAAd,IAAA,MAAAe;OAAAA,MAAAf,EAAA;AAAA,QANFe;EAQF"}
1
+ {"version":3,"file":"TabsAction.js","names":["FocusableRef","tasty","forwardRef","CubeItemButtonProps","ItemButton","useOptionalTabsContext","TabSize","CubeTabsActionProps","Omit","size","TabsActionElement","styles","border","radius","TabsAction","props","ref","$","_c","mods","rest","type","tabsContext","effectiveSize","tabsType","tabsPlacement","placement","tabsVertical","t0","t1","combinedMods","t2","t3","ItemButton","_c"],"sources":["../../../../src/components/navigation/Tabs/TabsAction.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport { tasty } from '@tenphi/tasty';\nimport { forwardRef } from 'react';\n\nimport {\n CubeItemButtonProps,\n ItemButton,\n} from '../../actions/ItemButton/ItemButton';\n\nimport { useOptionalTabsContext } from './TabsContext';\n\nimport type { TabSize } from './types';\n\n// =============================================================================\n// Types\n// =============================================================================\n\nexport interface CubeTabsActionProps extends Omit<\n CubeItemButtonProps,\n 'size' | 'shape'\n> {\n /**\n * Size of the action button.\n * When used inside Tabs prefix/suffix, inherits from Tabs size by default.\n */\n size?: TabSize;\n}\n\n// =============================================================================\n// Styled Component\n// =============================================================================\n\nconst TabsActionElement = tasty(ItemButton, {\n styles: {\n border: {\n 'type=clear': 0,\n 'type=clear & tabs-type-file & !:first-child & !tabs-vertical': 'left',\n 'type=clear & tabs-type-file & !:first-child & tabs-vertical': 'top',\n },\n radius: {\n 'type=clear': 0,\n },\n },\n});\n\n// =============================================================================\n// Component\n// =============================================================================\n\n/**\n * Action button designed for the Tabs prefix/suffix slots.\n *\n * Styled with sharp edges and no border to match the TabPicker trigger.\n * When multiple TabsAction components are placed together, they automatically\n * display dividers between them using CSS :not(:first-child) border styling\n * (only for file tab type).\n *\n * Inherits size from the parent Tabs component when used inside prefix/suffix slots.\n *\n * @example\n * <Tabs suffix={<Tabs.Action icon={<PlusIcon />} onPress={handleAdd} />}>\n * <Tab key=\"tab1\" title=\"Tab 1\">Content</Tab>\n * </Tabs>\n *\n * @example\n * // Multiple actions with automatic dividers\n * <Tabs\n * suffix={\n * <>\n * <Tabs.Action icon={<PlusIcon />} onPress={handleAdd} />\n * <Tabs.Action icon={<SettingsIcon />} onPress={handleSettings} />\n * </>\n * }\n * >\n * <Tab key=\"tab1\" title=\"Tab 1\">Content</Tab>\n * </Tabs>\n */\nexport const TabsAction = forwardRef(function TabsAction(\n props: CubeTabsActionProps,\n ref: FocusableRef<HTMLElement>,\n) {\n const { size, mods, type, ...rest } = props;\n\n // Get size, type, and placement from context if available (when used inside Tabs)\n const tabsContext = useOptionalTabsContext();\n const effectiveSize = size ?? tabsContext?.size ?? 'medium';\n const tabsType = tabsContext?.type ?? 'default';\n const tabsPlacement = tabsContext?.placement ?? 'top';\n const tabsVertical = tabsPlacement === 'left' || tabsPlacement === 'right';\n\n const combinedMods = {\n 'tabs-type-file': tabsType === 'file',\n 'tabs-vertical': tabsVertical,\n ...mods,\n };\n\n return (\n <TabsActionElement\n ref={ref}\n type={type ?? (tabsType === 'default' ? 'outline' : 'clear')}\n size={effectiveSize}\n mods={combinedMods}\n {...rest}\n />\n );\n});\n"],"mappings":";;;;;;;;AAgCA,MAAMU,oBAAoBT,MAAMG,aAAY,EAC1CO,QAAQ;CACNC,QAAQ;EACN,cAAc;EACd,gEAAgE;EAChE,+DAA+D;CACjE;CACAC,QAAQ,EACN,cAAc,EAChB;AACF,EACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCD,MAAaC,aAAaZ,WAAW,SAAAY,WAAAC,OAAAC,KAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAX;CAAA,IAAAY;CAAA,IAAAJ,EAAA,OAAAF,OAAA;EAInC,CAAA,CAAAN,MAAAU,MAAAE,MAAA,GAAAD,QAAsCL;EAAME,EAAA,KAAAF;EAAAE,EAAA,KAAAE;EAAAF,EAAA,KAAAG;EAAAH,EAAA,KAAAR;EAAAQ,EAAA,KAAAI;CAAA,OAAA;EAAAF,OAAAF,EAAA;EAAAG,OAAAH,EAAA;EAAAR,OAAAQ,EAAA;EAAAI,OAAAJ,EAAA;CAAA;CAG5C,MAAAK,cAAoBjB,uBAAuB;CAC3C,MAAAkB,gBAAsBd,QAAQa,aAAWb,QAAnB;CACtB,MAAAe,WAAiBF,aAAWD,QAAX;CACjB,MAAAI,gBAAsBH,aAAWI,aAAX;CACtB,MAAAC,eAAqBF,kBAAkB,UAAUA,kBAAkB;CAG/C,MAAAG,KAAAJ,aAAa;CAAM,IAAAK;CAAA,IAAAZ,EAAA,OAAAE,QAAAF,EAAA,OAAAW,MAAAX,EAAA,OAAAU,cAAA;EADlBE,KAAA;GAAA,kBACDD;GAAmB,iBACpBD;GAAY,GAC1BR;EACL;EAACF,EAAA,KAAAE;EAAAF,EAAA,KAAAW;EAAAX,EAAA,KAAAU;EAAAV,EAAA,KAAAY;CAAA,OAAAA,KAAAZ,EAAA;CAJD,MAAAa,eAAqBD;CASX,MAAAE,KAAAV,SAASG,aAAa,YAAb,YAAA;CAA6C,IAAAQ;CAAA,IAAAf,EAAA,OAAAa,gBAAAb,EAAA,QAAAM,iBAAAN,EAAA,QAAAD,OAAAC,EAAA,QAAAG,QAAAH,EAAA,QAAAc,IAAA;EAF9DC,KAAA,oBAAC,mBAAD;GACOhB;GACC,MAAAe;GACAR,MAAAA;GACAO,MAAAA;GAAY,GACdV;EAAI,CAAA;EACRH,EAAA,KAAAa;EAAAb,EAAA,MAAAM;EAAAN,EAAA,MAAAD;EAAAC,EAAA,MAAAG;EAAAH,EAAA,MAAAc;EAAAd,EAAA,MAAAe;CAAA,OAAAA,KAAAf,EAAA;CAAA,OANFe;AAME,CAEL"}
@@ -1,8 +1,7 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.198.0 | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { createContext, useContext } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
-
6
5
  //#region src/components/navigation/Tabs/TabsContext.tsx
7
6
  const TabsContext = createContext(null);
8
7
  TabsContext.displayName = "TabsContext";
@@ -33,7 +32,7 @@ function useTabsContext() {
33
32
  function useOptionalTabsContext() {
34
33
  return useContext(TabsContext);
35
34
  }
36
-
37
35
  //#endregion
38
36
  export { TabsProvider, useOptionalTabsContext, useTabsContext };
37
+
39
38
  //# sourceMappingURL=TabsContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TabsContext.js","names":["createContext","ReactNode","useContext","DraggableCollectionState","DroppableCollectionState","TabListState","CubeItemActionProps","CubeMenuProps","TabContextMenu","TabPlacement","TabSize","TabType","TabsContextValue","state","type","size","placement","autoHideActions","isEditable","menu","menuTriggerProps","Partial","menuProps","contextMenu","onDelete","key","onAction","action","tabKey","dragState","dropState","editingKey","startEditing","currentTitle","submitEditing","newTitle","tabOnTitleChange","title","cancelEditing","TabsContext","displayName","TabsProviderProps","value","children","TabsProvider","t0","$","_c","t1","useTabsContext","context","Error","useOptionalTabsContext"],"sources":["../../../../src/components/navigation/Tabs/TabsContext.tsx"],"sourcesContent":["import { createContext, ReactNode, useContext } from 'react';\n\nimport type {\n DraggableCollectionState,\n DroppableCollectionState,\n TabListState,\n} from 'react-stately';\nimport type { CubeItemActionProps } from '../../actions/ItemAction';\nimport type { CubeMenuProps } from '../../actions/Menu';\nimport type { TabContextMenu, TabPlacement, TabSize, TabType } from './types';\n\n// =============================================================================\n// Context Value Interface\n// =============================================================================\n\nexport interface TabsContextValue {\n /** Tab list state from React Stately */\n state: TabListState<object>;\n /** Parent-level type default */\n type: TabType;\n /** Parent-level size default */\n size?: TabSize;\n /** Where the tab bar sits relative to its panels */\n placement: TabPlacement;\n /** Parent-level autoHideActions default */\n autoHideActions?: boolean;\n /** Parent-level isEditable default */\n isEditable?: boolean;\n /** Parent-level menu default */\n menu?: ReactNode;\n /** Parent-level menuTriggerProps default */\n menuTriggerProps?: Partial<CubeItemActionProps>;\n /** Parent-level menuProps default */\n menuProps?: Partial<CubeMenuProps<object>>;\n /** Parent-level contextMenu default */\n contextMenu?: TabContextMenu;\n /** Callback when tab is deleted */\n onDelete?: (key: string) => void;\n /** Parent-level onAction callback */\n onAction?: (action: string, tabKey: string) => void;\n /** Drag state for reorderable tabs (undefined if not reorderable) */\n dragState?: DraggableCollectionState;\n /** Drop state for reorderable tabs (undefined if not reorderable) */\n dropState?: DroppableCollectionState;\n\n // Editing callbacks\n /** Current tab being edited (null if none) */\n editingKey: string | null;\n /** Start editing a tab */\n startEditing: (key: string, currentTitle: string) => void;\n /** Submit the current edit */\n submitEditing: (\n key: string,\n newTitle: string,\n tabOnTitleChange?: (title: string) => void,\n ) => void;\n /** Cancel the current edit */\n cancelEditing: () => void;\n}\n\n// =============================================================================\n// Context\n// =============================================================================\n\nconst TabsContext = createContext<TabsContextValue | null>(null);\n\nTabsContext.displayName = 'TabsContext';\n\n// =============================================================================\n// Provider\n// =============================================================================\n\nexport interface TabsProviderProps {\n value: TabsContextValue;\n children: ReactNode;\n}\n\nexport function TabsProvider({ value, children }: TabsProviderProps) {\n return <TabsContext.Provider value={value}>{children}</TabsContext.Provider>;\n}\n\n// =============================================================================\n// Hook\n// =============================================================================\n\nexport function useTabsContext(): TabsContextValue {\n const context = useContext(TabsContext);\n\n if (!context) {\n throw new Error('useTabsContext must be used within a TabsProvider');\n }\n\n return context;\n}\n\n/**\n * Optional hook to get TabsContext value.\n * Returns null when used outside a TabsProvider (e.g., for TabsAction in standalone usage).\n */\nexport function useOptionalTabsContext(): TabsContextValue | null {\n return useContext(TabsContext);\n}\n"],"mappings":";;;;;;AAgEA,MAAMuC,cAAcvC,cAAuC,KAAK;AAEhEuC,YAAYC,cAAc;AAW1B,SAAOI,aAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAsB,MAAA,EAAAL,OAAAC,aAAAE;CAAsC,IAAAG;AAAA,KAAAF,EAAA,OAAAH,YAAAG,EAAA,OAAAJ,OAAA;AAC1DM,OAAA,oBAAA,YAAA;GAA6BN;GAAQC;IAAgC;AAAAG,IAAA,KAAAH;AAAAG,IAAA,KAAAJ;AAAAI,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAArEE;;AAOT,SAAOC,iBAAA;CACL,MAAAC,UAAgBhD,WAAWqC,YAAY;AAEvC,KAAI,CAACW,QACH,OAAM,IAAIC,MAAM,oDAAoD;AACrE,QAEMD;;;;;;AAOT,SAAOE,yBAAA;AAAA,QACElD,WAAWqC,YAAY"}
1
+ {"version":3,"file":"TabsContext.js","names":["createContext","ReactNode","useContext","DraggableCollectionState","DroppableCollectionState","TabListState","CubeItemActionProps","CubeMenuProps","TabContextMenu","TabPlacement","TabSize","TabType","TabsContextValue","state","type","size","placement","autoHideActions","isEditable","menu","menuTriggerProps","Partial","menuProps","contextMenu","onDelete","key","onAction","action","tabKey","dragState","dropState","editingKey","startEditing","currentTitle","submitEditing","newTitle","tabOnTitleChange","title","cancelEditing","TabsContext","displayName","TabsProviderProps","value","children","TabsProvider","t0","$","_c","t1","useTabsContext","context","Error","useOptionalTabsContext","_c"],"sources":["../../../../src/components/navigation/Tabs/TabsContext.tsx"],"sourcesContent":["import { createContext, ReactNode, useContext } from 'react';\n\nimport type {\n DraggableCollectionState,\n DroppableCollectionState,\n TabListState,\n} from 'react-stately';\nimport type { CubeItemActionProps } from '../../actions/ItemAction';\nimport type { CubeMenuProps } from '../../actions/Menu';\nimport type { TabContextMenu, TabPlacement, TabSize, TabType } from './types';\n\n// =============================================================================\n// Context Value Interface\n// =============================================================================\n\nexport interface TabsContextValue {\n /** Tab list state from React Stately */\n state: TabListState<object>;\n /** Parent-level type default */\n type: TabType;\n /** Parent-level size default */\n size?: TabSize;\n /** Where the tab bar sits relative to its panels */\n placement: TabPlacement;\n /** Parent-level autoHideActions default */\n autoHideActions?: boolean;\n /** Parent-level isEditable default */\n isEditable?: boolean;\n /** Parent-level menu default */\n menu?: ReactNode;\n /** Parent-level menuTriggerProps default */\n menuTriggerProps?: Partial<CubeItemActionProps>;\n /** Parent-level menuProps default */\n menuProps?: Partial<CubeMenuProps<object>>;\n /** Parent-level contextMenu default */\n contextMenu?: TabContextMenu;\n /** Callback when tab is deleted */\n onDelete?: (key: string) => void;\n /** Parent-level onAction callback */\n onAction?: (action: string, tabKey: string) => void;\n /** Drag state for reorderable tabs (undefined if not reorderable) */\n dragState?: DraggableCollectionState;\n /** Drop state for reorderable tabs (undefined if not reorderable) */\n dropState?: DroppableCollectionState;\n\n // Editing callbacks\n /** Current tab being edited (null if none) */\n editingKey: string | null;\n /** Start editing a tab */\n startEditing: (key: string, currentTitle: string) => void;\n /** Submit the current edit */\n submitEditing: (\n key: string,\n newTitle: string,\n tabOnTitleChange?: (title: string) => void,\n ) => void;\n /** Cancel the current edit */\n cancelEditing: () => void;\n}\n\n// =============================================================================\n// Context\n// =============================================================================\n\nconst TabsContext = createContext<TabsContextValue | null>(null);\n\nTabsContext.displayName = 'TabsContext';\n\n// =============================================================================\n// Provider\n// =============================================================================\n\nexport interface TabsProviderProps {\n value: TabsContextValue;\n children: ReactNode;\n}\n\nexport function TabsProvider({ value, children }: TabsProviderProps) {\n return <TabsContext.Provider value={value}>{children}</TabsContext.Provider>;\n}\n\n// =============================================================================\n// Hook\n// =============================================================================\n\nexport function useTabsContext(): TabsContextValue {\n const context = useContext(TabsContext);\n\n if (!context) {\n throw new Error('useTabsContext must be used within a TabsProvider');\n }\n\n return context;\n}\n\n/**\n * Optional hook to get TabsContext value.\n * Returns null when used outside a TabsProvider (e.g., for TabsAction in standalone usage).\n */\nexport function useOptionalTabsContext(): TabsContextValue | null {\n return useContext(TabsContext);\n}\n"],"mappings":";;;;;AAgEA,MAAMuC,cAAcvC,cAAuC,IAAI;AAE/DuC,YAAYC,cAAc;AAW1B,SAAOI,aAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,CAAA;CAAsB,MAAA,EAAAL,OAAAC,aAAAE;CAAsC,IAAAG;CAAA,IAAAF,EAAA,OAAAH,YAAAG,EAAA,OAAAJ,OAAA;EAC1DM,KAAA,oBAAA,YAAA,UAAA;GAA6BN;GAAQC;EAAS,CAAA;EAAuBG,EAAA,KAAAH;EAAAG,EAAA,KAAAJ;EAAAI,EAAA,KAAAE;CAAA,OAAAA,KAAAF,EAAA;CAAA,OAArEE;AAAqE;AAO9E,SAAOC,iBAAA;CACL,MAAAC,UAAgBhD,WAAWqC,WAAW;CAEtC,IAAI,CAACW,SACH,MAAM,IAAIC,MAAM,mDAAmD;CACpE,OAEMD;AAAO;;;;;AAOhB,SAAOE,yBAAA;CAAA,OACElD,WAAWqC,WAAW;AAAC"}
@@ -2,4 +2,5 @@
2
2
  import { CubeTabListProps, CubeTabPanelProps, CubeTabProps, CubeTabsProps, TabContextMenu, TabSize, TabType, TabsActionPosition } from "./types.js";
3
3
  import { CubeTabsActionProps, TabsAction } from "./TabsAction.js";
4
4
  import { Tab, Tabs } from "./Tabs.js";
5
- import { BoardDragActiveProvider, CubeBoardDragActiveProviderProps } from "./BoardDragActiveProvider.js";
5
+ import { BoardDragActiveProvider, CubeBoardDragActiveProviderProps } from "./BoardDragActiveProvider.js";
6
+ export { BoardDragActiveProvider, type CubeBoardDragActiveProviderProps, type CubeTabListProps, type CubeTabPanelProps, type CubeTabProps, type CubeTabsActionProps, type CubeTabsProps, Tab, type TabContextMenu, type TabSize, type TabType, Tabs, TabsAction, type TabsActionPosition };
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.198.0 | Cube Dev Team */
2
2
  //#region src/components/navigation/Tabs/popover-placement.ts
3
3
  /**
4
4
  * Maps the parent Tabs `placement` to the popover placement for menus and
@@ -15,7 +15,7 @@ const POPOVER_PLACEMENT_BY_TABS_PLACEMENT = {
15
15
  left: "right top",
16
16
  right: "left top"
17
17
  };
18
-
19
18
  //#endregion
20
19
  export { POPOVER_PLACEMENT_BY_TABS_PLACEMENT };
20
+
21
21
  //# sourceMappingURL=popover-placement.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"popover-placement.js","names":["Placement","TabPlacement","POPOVER_PLACEMENT_BY_TABS_PLACEMENT","Record","top","bottom","left","right"],"sources":["../../../../src/components/navigation/Tabs/popover-placement.ts"],"sourcesContent":["import type { Placement } from 'react-aria';\nimport type { TabPlacement } from './types';\n\n/**\n * Maps the parent Tabs `placement` to the popover placement for menus and\n * pickers anchored to the strip (tab overflow menu, context menu, TabPicker).\n *\n * The popover always opens **toward the panel area** so it never covers the\n * bar itself and stays inside the visible Tabs region. Tooltips are the only\n * surface that opens on the outer-edge side; menus and pickers must flow into\n * the content side instead.\n */\nexport const POPOVER_PLACEMENT_BY_TABS_PLACEMENT: Record<\n TabPlacement,\n Placement\n> = {\n top: 'bottom start',\n bottom: 'top start',\n left: 'right top',\n right: 'left top',\n};\n"],"mappings":";;;;;;;;;;;AAYA,MAAaE,sCAGT;CACFE,KAAK;CACLC,QAAQ;CACRC,MAAM;CACNC,OAAO;CACR"}
1
+ {"version":3,"file":"popover-placement.js","names":["Placement","TabPlacement","POPOVER_PLACEMENT_BY_TABS_PLACEMENT","Record","top","bottom","left","right"],"sources":["../../../../src/components/navigation/Tabs/popover-placement.ts"],"sourcesContent":["import type { Placement } from 'react-aria';\nimport type { TabPlacement } from './types';\n\n/**\n * Maps the parent Tabs `placement` to the popover placement for menus and\n * pickers anchored to the strip (tab overflow menu, context menu, TabPicker).\n *\n * The popover always opens **toward the panel area** so it never covers the\n * bar itself and stays inside the visible Tabs region. Tooltips are the only\n * surface that opens on the outer-edge side; menus and pickers must flow into\n * the content side instead.\n */\nexport const POPOVER_PLACEMENT_BY_TABS_PLACEMENT: Record<\n TabPlacement,\n Placement\n> = {\n top: 'bottom start',\n bottom: 'top start',\n left: 'right top',\n right: 'left top',\n};\n"],"mappings":";;;;;;;;;;;AAYA,MAAaE,sCAGT;CACFE,KAAK;CACLC,QAAQ;CACRC,MAAM;CACNC,OAAO;AACT"}
@@ -1,7 +1,6 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
- import { _Item } from "../../content/Item/Item.js";
1
+ /** @license MIT | @cube-dev/ui-kit v0.198.0 | Cube Dev Team */
2
+ import { Item as _Item } from "../../content/Item/Item.js";
3
3
  import { tasty } from "@tenphi/tasty";
4
-
5
4
  //#region src/components/navigation/Tabs/styled.ts
6
5
  const TabsElement = tasty({ styles: {
7
6
  display: "flex",
@@ -429,7 +428,7 @@ const TabPanelElement = tasty({
429
428
  }
430
429
  }
431
430
  });
432
-
433
431
  //#endregion
434
432
  export { DropIndicatorElement, TabContainer, TabElement, TabIndicatorElement, TabPanelElement, TabsElement };
433
+
435
434
  //# sourceMappingURL=styled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","names":["tasty","Item","TabsElement","styles","display","flow","flexShrink","flexGrow","width","height","overflow","Bar","$","placeItems","border","padding","radius","fill","$transition","Prefix","placeContent","placeSelf","gap","Suffix","ScrollWrapper","position","Scroll","scrollbar","margin","fade","transition","TabList","boxSizing","gridAutoColumns","gridAutoRows","$size","Scrollbar","bottom","top","left","right","opacity","pointerEvents","TabElement","as","color","disabled","preset","shadow","editing","outline","gridTemplate","Label","Actions","TabContainer","cursor","draggable","dragging","DropIndicatorElement","zIndex","TabIndicatorElement","TabPanelElement","hide","active"],"sources":["../../../../src/components/navigation/Tabs/styled.ts"],"sourcesContent":["import { tasty } from '@tenphi/tasty';\n\nimport { Item } from '../../content/Item';\n\n// =============================================================================\n// Main Tabs Container — flex wrapper holding the tab Bar and the panels.\n// `placement` mod drives `flex-direction` so DOM order stays \"bar then panels\"\n// and visual order is controlled with `column / column-reverse / row / row-reverse`.\n// =============================================================================\n\nexport const TabsElement = tasty({\n styles: {\n display: 'flex',\n flow: {\n '': 'column',\n 'placement=bottom': 'column-reverse',\n 'placement=left': 'row',\n 'placement=right': 'row-reverse',\n },\n // Participate in parent flex layouts; allow shrinking on both axes so we\n // never force the parent into overflow. The Bar keeps `flex-shrink: 0`,\n // which makes the practical minimum of the wrapper along the main axis\n // equal to the tablist's intrinsic size. When there are no panels the\n // wrapper has only the Bar inside it, so we lock its sizing to the Bar's\n // intrinsic size — matching the pre-wrapper behavior of a panel-less Tabs.\n flexShrink: { '': 0, 'has-panels': 1 },\n flexGrow: { '': 0, 'has-panels': 1 },\n width: 'min 0',\n height: 'min 0',\n overflow: 'visible',\n\n // ============================================\n // Bar — the tab strip (Prefix + ScrollWrapper + Suffix).\n // ============================================\n Bar: {\n $: '>',\n display: 'flex',\n flow: {\n '': 'row',\n 'placement=left | placement=right': 'column',\n },\n placeItems: {\n '': 'end stretch',\n 'placement=bottom': 'start stretch',\n 'placement=left': 'stretch end',\n 'placement=right': 'stretch start',\n 'type=radio | type=file': 'stretch',\n },\n overflow: 'visible',\n border: {\n '': 0,\n '(type=default | type=file | type=narrow) & has-panels': 'bottom',\n '(type=default | type=file | type=narrow) & has-panels & placement=bottom':\n 'top',\n '(type=default | type=file | type=narrow) & has-panels & placement=left':\n 'right',\n '(type=default | type=file | type=narrow) & has-panels & placement=right':\n 'left',\n },\n // Bar sizing — always follow the outer wrapper along the main axis so\n // `width` / `height` props on `<Tabs>` apply to the strip as they did\n // before the wrapper was introduced.\n // - horizontal placements: main-axis = wrapper width (100%), cross-axis intrinsic (auto)\n // - vertical placements: main-axis = wrapper height (100%), cross-axis intrinsic (auto / max-content for radio)\n width: {\n '': '100%',\n 'placement=left | placement=right': 'auto',\n 'type=radio & (placement=left | placement=right)': 'max-content',\n },\n height: {\n '': 'auto',\n 'placement=left | placement=right': '100%',\n 'type=radio & (placement=left | placement=right)': 'max-content',\n },\n padding: {\n '': 0,\n 'type=radio': '.5x',\n },\n radius: {\n '': 0,\n 'type=radio': '1cr',\n },\n fill: {\n '': '#clear',\n 'type=radio': '#surface-4',\n },\n // Never let the Bar shrink/grow within the outer wrapper — this is what\n // gives the wrapper its effective \"tablist-size minimum\" on the main axis.\n flexShrink: 0,\n flexGrow: 0,\n\n $transition: '$tab-transition',\n '$tab-indicator-size': {\n '': '2bw',\n 'size=large': '1ow',\n },\n },\n\n // ============================================\n // Prefix — slot before the scroll area.\n // ============================================\n Prefix: {\n $: '> Bar >',\n display: 'flex',\n placeItems: 'center',\n placeContent: 'center',\n flexShrink: 0,\n placeSelf: 'stretch',\n padding: {\n '': 0,\n 'type=default': '.5x 0 .5x 1x',\n 'type=default & (placement=left | placement=right)': '1x .5x 0 .5x',\n },\n gap: {\n '': 0,\n 'type=default': '.5x',\n },\n border: {\n '': 0,\n 'type=file': 'right',\n 'type=file & (placement=left | placement=right)': 'bottom',\n },\n },\n\n // ============================================\n // Suffix — slot after the scroll area.\n // ============================================\n Suffix: {\n $: '> Bar >',\n display: 'flex',\n placeItems: 'center',\n placeContent: 'center',\n flexShrink: 0,\n placeSelf: 'stretch',\n padding: {\n '': 0,\n 'type=default': '.5x 1x .5x 0',\n 'type=default & (placement=left | placement=right)': '0 .5x 1x .5x',\n },\n gap: {\n '': 0,\n 'type=default': '.5x',\n },\n border: {\n '': 0,\n 'type=file': 'left',\n 'type=file & (placement=left | placement=right)': 'top',\n },\n },\n\n // Wrapper for scroll area and scrollbar (scrollbar is positioned relative to this)\n ScrollWrapper: {\n $: '> Bar >',\n position: 'relative',\n display: 'flex',\n flexGrow: 1,\n flexShrink: 1,\n width: {\n '': 'min 0',\n 'placement=left | placement=right': 'auto',\n },\n height: {\n '': 'auto',\n 'placement=left | placement=right': 'min 0',\n },\n overflow: {\n '': 'hidden',\n 'type=radio': 'visible',\n },\n },\n\n Scroll: {\n $: '> Bar > ScrollWrapper >',\n position: 'relative',\n display: 'block',\n overflow: {\n '': 'auto hidden',\n 'placement=left | placement=right': 'hidden auto',\n 'type=radio': 'visible',\n },\n scrollbar: 'none',\n flexGrow: 1,\n width: '100%',\n // Add padding/margin for radio type to allow shadow to render outside\n padding: {\n '': 0,\n 'type=radio': '.5x',\n },\n margin: {\n '': 0,\n 'type=radio': '-.5x',\n },\n // Multi-group fade with axis-neutral color tokens for smooth transitions.\n // Direction flips based on placement.\n fade: {\n '': '2x left #tabs-fade-start #black, 2x right #tabs-fade-end #black',\n 'placement=left | placement=right':\n '2x top #tabs-fade-start #black, 2x bottom #tabs-fade-end #black',\n },\n // ##name outputs --name-color (literal CSS property name)\n transition:\n '##tabs-fade-start $tab-transition ease-in, ##tabs-fade-end $tab-transition ease-in',\n\n // Transition transparent color: opaque (no fade) -> transparent (fade visible)\n '#tabs-fade-start': {\n '': '#black',\n 'fade-start': '#black.0',\n },\n '#tabs-fade-end': {\n '': '#black',\n 'fade-end': '#black.0',\n },\n },\n\n TabList: {\n $: '> Bar > ScrollWrapper > Scroll >',\n position: 'relative',\n display: 'grid',\n // `border-box` is required because we set `width: 100%` for vertical\n // placements AND apply padding. With the default `content-box`, the\n // TabList's outer box would be `100% + padding × 2` and overflow Scroll\n // horizontally — and the side selection indicator (positioned at\n // `right: 0` / `left: 0` of TabList) would land in that overflow region\n // and get clipped by Scroll's `overflow-x: hidden`.\n boxSizing: 'border-box',\n flow: {\n '': 'column',\n 'placement=left | placement=right': 'row',\n },\n gridAutoColumns: {\n '': 'auto',\n 'type=radio': '1fr',\n },\n gridAutoRows: {\n '': 'auto',\n 'type=radio & (placement=left | placement=right)': '1fr',\n },\n gap: {\n '': 0,\n 'type=default': '1x',\n 'type=narrow': '2x',\n 'type=radio': '.5x',\n // Tabs stack vertically — collapse the gap so the strip reads as a\n // single column. `narrow` is coerced to `default` in vertical, but we\n // keep the rule defensive in case the styled element is consumed\n // directly with a `type=narrow` mod set.\n '(type=default | type=narrow) & (placement=left | placement=right)':\n '1bw',\n },\n placeContent: 'start',\n overflow: 'visible',\n width: {\n '': 'max-content',\n 'type=radio': '100%',\n 'placement=left | placement=right': '100%',\n },\n height: {\n '': 'auto',\n 'placement=left | placement=right': 'max-content',\n },\n // For vertical default/narrow we apply `$tablist-padding` on ALL sides\n // (instead of only the parallel axis) so the breathing room around the\n // tabs and the selection indicator can be tuned via the `tabListPadding`\n // prop — the same prop that controls horizontal start/end padding.\n padding: {\n '': '0 $tablist-padding',\n 'placement=left | placement=right': '$tablist-padding 0',\n '(type=default | type=narrow) & (placement=left | placement=right)':\n '$tablist-padding',\n },\n\n // Default `$tablist-padding` per type. Vertical default/narrow gets the\n // smaller `.5x` default since it applies to all four sides; the\n // `tabListPadding` prop overrides this via inline CSS variable.\n '$tablist-padding': {\n '': '0',\n 'type=default | type=narrow': '1x',\n '(type=default | type=narrow) & (placement=left | placement=right)':\n '.5x',\n },\n },\n\n // Size variable for actions (if ItemAction is used instead of TabsAction)\n $size: {\n '': '$size-md',\n 'size=xsmall': '$size-xs',\n 'size=small': '$size-sm',\n 'size=medium': '$size-md',\n 'size=large': '$size-lg',\n 'size=xlarge': '$size-xl',\n },\n\n // Custom tiny scrollbar — positioned relative to ScrollWrapper. Switches\n // edges and dimensions based on placement; the driving CSS custom\n // properties come from `useTinyScrollbar.handleHStyle` / `handleVStyle`.\n Scrollbar: {\n $: '> Bar > ScrollWrapper >',\n position: 'absolute',\n bottom: {\n '': '1px',\n 'placement=left | placement=right': 'auto',\n },\n top: {\n '': 'auto',\n 'placement=left | placement=right': '$scrollbar-v-top',\n },\n left: {\n '': '$scrollbar-h-left',\n 'placement=left | placement=right': 'auto',\n },\n right: {\n '': 'auto',\n 'placement=left | placement=right': '1px',\n },\n height: {\n '': '1ow',\n 'placement=left | placement=right': '$scrollbar-v-height',\n },\n width: {\n '': '$scrollbar-h-width',\n 'placement=left | placement=right': '1ow',\n },\n radius: 'round',\n fill: '#dark.35',\n opacity: {\n '': 0,\n 'focused | scrolling': 1,\n },\n transition: 'opacity 0.15s',\n pointerEvents: 'none',\n },\n },\n});\n\n// =============================================================================\n// Tab Button (extends Item)\n// =============================================================================\n\nexport const TabElement = tasty(Item, {\n as: 'button',\n styles: {\n radius: {\n '': false,\n 'type=radio | type=default': true,\n 'type=narrow': 'top',\n 'type=narrow & placement=bottom': 'bottom',\n 'type=narrow & placement=left': 'left',\n 'type=narrow & placement=right': 'right',\n },\n color: {\n '': '#dark-02',\n 'type=narrow & (hovered & !selected)': '#primary-text',\n '(type=default | type=narrow) & selected': '#primary-text',\n disabled: '#disabled-surface-text',\n },\n fill: {\n '': '#clear',\n 'hovered & !type=narrow': '#dark.03',\n 'type=file': '#surface-3',\n 'type=file & hovered': '#surface-3.5',\n 'type=radio & hovered': '#surface.5',\n '(type=file | type=radio) & selected': '#surface',\n // Spring-load hint: a widget is hovering this tab and it is about to open.\n 'drop-pending': '#primary.10',\n },\n border: {\n '': '#clear',\n 'type=file': '0 #clear',\n },\n preset: {\n '': 't3m',\n 'size=xsmall': 't4',\n },\n shadow: {\n '': '$selection-shadow',\n 'focused & focus-visible':\n 'inset 0 0 0 1bw #primary-text, $selection-shadow',\n editing: 'inset 0 0 0 1bw #primary-text, $selection-shadow',\n 'type=radio & selected': '$item-shadow',\n 'type=radio & selected & focused & focus-visible':\n '$item-shadow, inset 0 0 0 1bw #primary-text',\n },\n outline: 'none',\n placeContent: {\n // extend\n 'type=radio': 'center',\n },\n gridTemplate: {\n // extend\n // Sized by content like a radio button, but the label column keeps a\n // zero minimum (as `Item`'s `1sf` does), so a tab given less room than\n // its title truncates it — and gets the auto tooltip — instead of\n // spilling the title out of the tab.\n 'type=radio':\n '\"icon prefix label suffix rightIcon actions\" auto / max-content max-content minmax(0, max-content) max-content max-content max-content',\n },\n // File-type selection indicator: an inset shadow on the edge that faces\n // the panel area. Flips with placement so the highlight always sits on\n // the edge adjacent to the content.\n '$selection-shadow': {\n '': 'inset 0 0 0 0 #primary',\n 'type=file & selected': 'inset 0 (-1 * $tab-indicator-size) 0 0 #primary',\n 'type=file & selected & placement=bottom':\n 'inset 0 $tab-indicator-size 0 0 #primary',\n 'type=file & selected & placement=left':\n 'inset (-1 * $tab-indicator-size) 0 0 0 #primary',\n 'type=file & selected & placement=right':\n 'inset $tab-indicator-size 0 0 0 #primary',\n '!type=file': 'inset 0 0 0 0 #primary.0',\n },\n // Collapse horizontal padding for narrow type\n '$label-padding-left': {\n '': '$inline-padding',\n 'has-start-content': 0,\n 'type=narrow': 0,\n },\n '$label-padding-right': {\n '': '$inline-padding',\n 'has-end-content': 0,\n 'type=narrow': 0,\n },\n Label: {\n placeSelf: {\n '': 'center start',\n 'type=radio': 'center start',\n 'type=radio & !has-prefix & !has-suffix & !has-icon & !has-right-icon':\n 'center',\n },\n },\n Actions: {\n transition: false,\n },\n },\n});\n\n// =============================================================================\n// Tab Container (wrapper for tab + actions)\n// =============================================================================\n\nexport const TabContainer = tasty({\n styles: {\n position: 'relative',\n display: 'grid',\n margin: {\n '': 0,\n // Horizontal strip: .5x top/bottom creates space between the tab and the\n // bottom-edge indicator (which sits at `bottom: 0` of TabList).\n 'type=default': '.5x 0',\n // Vertical strip: the breathing room around the tabs and the gap from\n // the side indicator is provided by the TabList's own `.5x` padding —\n // don't add per-tab horizontal margin on top of it.\n 'type=default & (placement=left | placement=right)': 0,\n },\n border: {\n '': 0,\n 'type=file': 'right',\n 'type=file & (placement=left | placement=right)': 'bottom',\n },\n cursor: {\n '': 'default',\n draggable: 'grab',\n dragging: 'grabbing',\n },\n },\n});\n\n// =============================================================================\n// Drop Indicator for Drag-and-Drop\n// Geometry flips based on placement: a vertical bar between horizontal tabs,\n// a horizontal bar between vertical tabs. `before`/`after` mods come from\n// `TabDropIndicator` and decide which edge inset is applied.\n// =============================================================================\n\nexport const DropIndicatorElement = tasty({\n styles: {\n zIndex: 10,\n position: 'absolute',\n pointerEvents: 'none',\n opacity: {\n '': 0,\n 'drop-target': 1,\n },\n fill: '#primary',\n width: {\n '': '.5x',\n 'placement=left | placement=right': 'auto',\n },\n height: {\n '': 'auto',\n 'placement=left | placement=right': '.5x',\n },\n top: {\n '': 0,\n 'placement=left | placement=right': 'auto',\n '(placement=left | placement=right) & before': '-2px',\n },\n bottom: {\n '': 0,\n 'placement=left | placement=right': 'auto',\n '(placement=left | placement=right) & after': '-2px',\n },\n left: {\n '': 'auto',\n 'before & !(placement=left | placement=right)': '-2px',\n 'placement=left | placement=right': 0,\n },\n right: {\n '': 'auto',\n 'after & !(placement=left | placement=right)': '-2px',\n 'placement=left | placement=right': 0,\n },\n },\n});\n\n// =============================================================================\n// Tab Selection Indicator (for default/narrow type)\n// Position flips with placement; the dynamic axis dimensions (left/width for\n// horizontal, top/height for vertical) are populated via inline `style` from\n// `useTabIndicator` in `Tabs.tsx`.\n// =============================================================================\n\nexport const TabIndicatorElement = tasty({\n styles: {\n position: 'absolute',\n bottom: {\n '': '0',\n 'placement=bottom | placement=left | placement=right': 'auto',\n },\n top: {\n '': 'auto',\n 'placement=bottom': '0',\n },\n left: {\n '': 'auto',\n 'placement=right': '0',\n },\n right: {\n '': 'auto',\n 'placement=left': '0',\n },\n height: {\n '': '$tab-indicator-size',\n 'placement=left | placement=right': 'auto',\n },\n width: {\n '': 'auto',\n 'placement=left | placement=right': '$tab-indicator-size',\n },\n fill: '#primary',\n // Transition all four properties unconditionally — only the two relevant\n // ones change per render, the others stay constant.\n transition:\n 'left $tab-transition ease-in-out, width $tab-transition ease-in-out, top $tab-transition ease-in-out, height $tab-transition ease-in-out',\n pointerEvents: 'none',\n },\n});\n\n// =============================================================================\n// Tab Panel\n// =============================================================================\n\nexport const TabPanelElement = tasty({\n as: 'section',\n styles: {\n display: 'contents',\n hide: {\n '': true,\n active: false,\n },\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"styled.js","names":["tasty","Item","TabsElement","styles","display","flow","flexShrink","flexGrow","width","height","overflow","Bar","$","placeItems","border","padding","radius","fill","$transition","Prefix","placeContent","placeSelf","gap","Suffix","ScrollWrapper","position","Scroll","scrollbar","margin","fade","transition","TabList","boxSizing","gridAutoColumns","gridAutoRows","$size","Scrollbar","bottom","top","left","right","opacity","pointerEvents","TabElement","as","color","disabled","preset","shadow","editing","outline","gridTemplate","Label","Actions","TabContainer","cursor","draggable","dragging","DropIndicatorElement","zIndex","TabIndicatorElement","TabPanelElement","hide","active","Item"],"sources":["../../../../src/components/navigation/Tabs/styled.ts"],"sourcesContent":["import { tasty } from '@tenphi/tasty';\n\nimport { Item } from '../../content/Item';\n\n// =============================================================================\n// Main Tabs Container — flex wrapper holding the tab Bar and the panels.\n// `placement` mod drives `flex-direction` so DOM order stays \"bar then panels\"\n// and visual order is controlled with `column / column-reverse / row / row-reverse`.\n// =============================================================================\n\nexport const TabsElement = tasty({\n styles: {\n display: 'flex',\n flow: {\n '': 'column',\n 'placement=bottom': 'column-reverse',\n 'placement=left': 'row',\n 'placement=right': 'row-reverse',\n },\n // Participate in parent flex layouts; allow shrinking on both axes so we\n // never force the parent into overflow. The Bar keeps `flex-shrink: 0`,\n // which makes the practical minimum of the wrapper along the main axis\n // equal to the tablist's intrinsic size. When there are no panels the\n // wrapper has only the Bar inside it, so we lock its sizing to the Bar's\n // intrinsic size — matching the pre-wrapper behavior of a panel-less Tabs.\n flexShrink: { '': 0, 'has-panels': 1 },\n flexGrow: { '': 0, 'has-panels': 1 },\n width: 'min 0',\n height: 'min 0',\n overflow: 'visible',\n\n // ============================================\n // Bar — the tab strip (Prefix + ScrollWrapper + Suffix).\n // ============================================\n Bar: {\n $: '>',\n display: 'flex',\n flow: {\n '': 'row',\n 'placement=left | placement=right': 'column',\n },\n placeItems: {\n '': 'end stretch',\n 'placement=bottom': 'start stretch',\n 'placement=left': 'stretch end',\n 'placement=right': 'stretch start',\n 'type=radio | type=file': 'stretch',\n },\n overflow: 'visible',\n border: {\n '': 0,\n '(type=default | type=file | type=narrow) & has-panels': 'bottom',\n '(type=default | type=file | type=narrow) & has-panels & placement=bottom':\n 'top',\n '(type=default | type=file | type=narrow) & has-panels & placement=left':\n 'right',\n '(type=default | type=file | type=narrow) & has-panels & placement=right':\n 'left',\n },\n // Bar sizing — always follow the outer wrapper along the main axis so\n // `width` / `height` props on `<Tabs>` apply to the strip as they did\n // before the wrapper was introduced.\n // - horizontal placements: main-axis = wrapper width (100%), cross-axis intrinsic (auto)\n // - vertical placements: main-axis = wrapper height (100%), cross-axis intrinsic (auto / max-content for radio)\n width: {\n '': '100%',\n 'placement=left | placement=right': 'auto',\n 'type=radio & (placement=left | placement=right)': 'max-content',\n },\n height: {\n '': 'auto',\n 'placement=left | placement=right': '100%',\n 'type=radio & (placement=left | placement=right)': 'max-content',\n },\n padding: {\n '': 0,\n 'type=radio': '.5x',\n },\n radius: {\n '': 0,\n 'type=radio': '1cr',\n },\n fill: {\n '': '#clear',\n 'type=radio': '#surface-4',\n },\n // Never let the Bar shrink/grow within the outer wrapper — this is what\n // gives the wrapper its effective \"tablist-size minimum\" on the main axis.\n flexShrink: 0,\n flexGrow: 0,\n\n $transition: '$tab-transition',\n '$tab-indicator-size': {\n '': '2bw',\n 'size=large': '1ow',\n },\n },\n\n // ============================================\n // Prefix — slot before the scroll area.\n // ============================================\n Prefix: {\n $: '> Bar >',\n display: 'flex',\n placeItems: 'center',\n placeContent: 'center',\n flexShrink: 0,\n placeSelf: 'stretch',\n padding: {\n '': 0,\n 'type=default': '.5x 0 .5x 1x',\n 'type=default & (placement=left | placement=right)': '1x .5x 0 .5x',\n },\n gap: {\n '': 0,\n 'type=default': '.5x',\n },\n border: {\n '': 0,\n 'type=file': 'right',\n 'type=file & (placement=left | placement=right)': 'bottom',\n },\n },\n\n // ============================================\n // Suffix — slot after the scroll area.\n // ============================================\n Suffix: {\n $: '> Bar >',\n display: 'flex',\n placeItems: 'center',\n placeContent: 'center',\n flexShrink: 0,\n placeSelf: 'stretch',\n padding: {\n '': 0,\n 'type=default': '.5x 1x .5x 0',\n 'type=default & (placement=left | placement=right)': '0 .5x 1x .5x',\n },\n gap: {\n '': 0,\n 'type=default': '.5x',\n },\n border: {\n '': 0,\n 'type=file': 'left',\n 'type=file & (placement=left | placement=right)': 'top',\n },\n },\n\n // Wrapper for scroll area and scrollbar (scrollbar is positioned relative to this)\n ScrollWrapper: {\n $: '> Bar >',\n position: 'relative',\n display: 'flex',\n flexGrow: 1,\n flexShrink: 1,\n width: {\n '': 'min 0',\n 'placement=left | placement=right': 'auto',\n },\n height: {\n '': 'auto',\n 'placement=left | placement=right': 'min 0',\n },\n overflow: {\n '': 'hidden',\n 'type=radio': 'visible',\n },\n },\n\n Scroll: {\n $: '> Bar > ScrollWrapper >',\n position: 'relative',\n display: 'block',\n overflow: {\n '': 'auto hidden',\n 'placement=left | placement=right': 'hidden auto',\n 'type=radio': 'visible',\n },\n scrollbar: 'none',\n flexGrow: 1,\n width: '100%',\n // Add padding/margin for radio type to allow shadow to render outside\n padding: {\n '': 0,\n 'type=radio': '.5x',\n },\n margin: {\n '': 0,\n 'type=radio': '-.5x',\n },\n // Multi-group fade with axis-neutral color tokens for smooth transitions.\n // Direction flips based on placement.\n fade: {\n '': '2x left #tabs-fade-start #black, 2x right #tabs-fade-end #black',\n 'placement=left | placement=right':\n '2x top #tabs-fade-start #black, 2x bottom #tabs-fade-end #black',\n },\n // ##name outputs --name-color (literal CSS property name)\n transition:\n '##tabs-fade-start $tab-transition ease-in, ##tabs-fade-end $tab-transition ease-in',\n\n // Transition transparent color: opaque (no fade) -> transparent (fade visible)\n '#tabs-fade-start': {\n '': '#black',\n 'fade-start': '#black.0',\n },\n '#tabs-fade-end': {\n '': '#black',\n 'fade-end': '#black.0',\n },\n },\n\n TabList: {\n $: '> Bar > ScrollWrapper > Scroll >',\n position: 'relative',\n display: 'grid',\n // `border-box` is required because we set `width: 100%` for vertical\n // placements AND apply padding. With the default `content-box`, the\n // TabList's outer box would be `100% + padding × 2` and overflow Scroll\n // horizontally — and the side selection indicator (positioned at\n // `right: 0` / `left: 0` of TabList) would land in that overflow region\n // and get clipped by Scroll's `overflow-x: hidden`.\n boxSizing: 'border-box',\n flow: {\n '': 'column',\n 'placement=left | placement=right': 'row',\n },\n gridAutoColumns: {\n '': 'auto',\n 'type=radio': '1fr',\n },\n gridAutoRows: {\n '': 'auto',\n 'type=radio & (placement=left | placement=right)': '1fr',\n },\n gap: {\n '': 0,\n 'type=default': '1x',\n 'type=narrow': '2x',\n 'type=radio': '.5x',\n // Tabs stack vertically — collapse the gap so the strip reads as a\n // single column. `narrow` is coerced to `default` in vertical, but we\n // keep the rule defensive in case the styled element is consumed\n // directly with a `type=narrow` mod set.\n '(type=default | type=narrow) & (placement=left | placement=right)':\n '1bw',\n },\n placeContent: 'start',\n overflow: 'visible',\n width: {\n '': 'max-content',\n 'type=radio': '100%',\n 'placement=left | placement=right': '100%',\n },\n height: {\n '': 'auto',\n 'placement=left | placement=right': 'max-content',\n },\n // For vertical default/narrow we apply `$tablist-padding` on ALL sides\n // (instead of only the parallel axis) so the breathing room around the\n // tabs and the selection indicator can be tuned via the `tabListPadding`\n // prop — the same prop that controls horizontal start/end padding.\n padding: {\n '': '0 $tablist-padding',\n 'placement=left | placement=right': '$tablist-padding 0',\n '(type=default | type=narrow) & (placement=left | placement=right)':\n '$tablist-padding',\n },\n\n // Default `$tablist-padding` per type. Vertical default/narrow gets the\n // smaller `.5x` default since it applies to all four sides; the\n // `tabListPadding` prop overrides this via inline CSS variable.\n '$tablist-padding': {\n '': '0',\n 'type=default | type=narrow': '1x',\n '(type=default | type=narrow) & (placement=left | placement=right)':\n '.5x',\n },\n },\n\n // Size variable for actions (if ItemAction is used instead of TabsAction)\n $size: {\n '': '$size-md',\n 'size=xsmall': '$size-xs',\n 'size=small': '$size-sm',\n 'size=medium': '$size-md',\n 'size=large': '$size-lg',\n 'size=xlarge': '$size-xl',\n },\n\n // Custom tiny scrollbar — positioned relative to ScrollWrapper. Switches\n // edges and dimensions based on placement; the driving CSS custom\n // properties come from `useTinyScrollbar.handleHStyle` / `handleVStyle`.\n Scrollbar: {\n $: '> Bar > ScrollWrapper >',\n position: 'absolute',\n bottom: {\n '': '1px',\n 'placement=left | placement=right': 'auto',\n },\n top: {\n '': 'auto',\n 'placement=left | placement=right': '$scrollbar-v-top',\n },\n left: {\n '': '$scrollbar-h-left',\n 'placement=left | placement=right': 'auto',\n },\n right: {\n '': 'auto',\n 'placement=left | placement=right': '1px',\n },\n height: {\n '': '1ow',\n 'placement=left | placement=right': '$scrollbar-v-height',\n },\n width: {\n '': '$scrollbar-h-width',\n 'placement=left | placement=right': '1ow',\n },\n radius: 'round',\n fill: '#dark.35',\n opacity: {\n '': 0,\n 'focused | scrolling': 1,\n },\n transition: 'opacity 0.15s',\n pointerEvents: 'none',\n },\n },\n});\n\n// =============================================================================\n// Tab Button (extends Item)\n// =============================================================================\n\nexport const TabElement = tasty(Item, {\n as: 'button',\n styles: {\n radius: {\n '': false,\n 'type=radio | type=default': true,\n 'type=narrow': 'top',\n 'type=narrow & placement=bottom': 'bottom',\n 'type=narrow & placement=left': 'left',\n 'type=narrow & placement=right': 'right',\n },\n color: {\n '': '#dark-02',\n 'type=narrow & (hovered & !selected)': '#primary-text',\n '(type=default | type=narrow) & selected': '#primary-text',\n disabled: '#disabled-surface-text',\n },\n fill: {\n '': '#clear',\n 'hovered & !type=narrow': '#dark.03',\n 'type=file': '#surface-3',\n 'type=file & hovered': '#surface-3.5',\n 'type=radio & hovered': '#surface.5',\n '(type=file | type=radio) & selected': '#surface',\n // Spring-load hint: a widget is hovering this tab and it is about to open.\n 'drop-pending': '#primary.10',\n },\n border: {\n '': '#clear',\n 'type=file': '0 #clear',\n },\n preset: {\n '': 't3m',\n 'size=xsmall': 't4',\n },\n shadow: {\n '': '$selection-shadow',\n 'focused & focus-visible':\n 'inset 0 0 0 1bw #primary-text, $selection-shadow',\n editing: 'inset 0 0 0 1bw #primary-text, $selection-shadow',\n 'type=radio & selected': '$item-shadow',\n 'type=radio & selected & focused & focus-visible':\n '$item-shadow, inset 0 0 0 1bw #primary-text',\n },\n outline: 'none',\n placeContent: {\n // extend\n 'type=radio': 'center',\n },\n gridTemplate: {\n // extend\n // Sized by content like a radio button, but the label column keeps a\n // zero minimum (as `Item`'s `1sf` does), so a tab given less room than\n // its title truncates it — and gets the auto tooltip — instead of\n // spilling the title out of the tab.\n 'type=radio':\n '\"icon prefix label suffix rightIcon actions\" auto / max-content max-content minmax(0, max-content) max-content max-content max-content',\n },\n // File-type selection indicator: an inset shadow on the edge that faces\n // the panel area. Flips with placement so the highlight always sits on\n // the edge adjacent to the content.\n '$selection-shadow': {\n '': 'inset 0 0 0 0 #primary',\n 'type=file & selected': 'inset 0 (-1 * $tab-indicator-size) 0 0 #primary',\n 'type=file & selected & placement=bottom':\n 'inset 0 $tab-indicator-size 0 0 #primary',\n 'type=file & selected & placement=left':\n 'inset (-1 * $tab-indicator-size) 0 0 0 #primary',\n 'type=file & selected & placement=right':\n 'inset $tab-indicator-size 0 0 0 #primary',\n '!type=file': 'inset 0 0 0 0 #primary.0',\n },\n // Collapse horizontal padding for narrow type\n '$label-padding-left': {\n '': '$inline-padding',\n 'has-start-content': 0,\n 'type=narrow': 0,\n },\n '$label-padding-right': {\n '': '$inline-padding',\n 'has-end-content': 0,\n 'type=narrow': 0,\n },\n Label: {\n placeSelf: {\n '': 'center start',\n 'type=radio': 'center start',\n 'type=radio & !has-prefix & !has-suffix & !has-icon & !has-right-icon':\n 'center',\n },\n },\n Actions: {\n transition: false,\n },\n },\n});\n\n// =============================================================================\n// Tab Container (wrapper for tab + actions)\n// =============================================================================\n\nexport const TabContainer = tasty({\n styles: {\n position: 'relative',\n display: 'grid',\n margin: {\n '': 0,\n // Horizontal strip: .5x top/bottom creates space between the tab and the\n // bottom-edge indicator (which sits at `bottom: 0` of TabList).\n 'type=default': '.5x 0',\n // Vertical strip: the breathing room around the tabs and the gap from\n // the side indicator is provided by the TabList's own `.5x` padding —\n // don't add per-tab horizontal margin on top of it.\n 'type=default & (placement=left | placement=right)': 0,\n },\n border: {\n '': 0,\n 'type=file': 'right',\n 'type=file & (placement=left | placement=right)': 'bottom',\n },\n cursor: {\n '': 'default',\n draggable: 'grab',\n dragging: 'grabbing',\n },\n },\n});\n\n// =============================================================================\n// Drop Indicator for Drag-and-Drop\n// Geometry flips based on placement: a vertical bar between horizontal tabs,\n// a horizontal bar between vertical tabs. `before`/`after` mods come from\n// `TabDropIndicator` and decide which edge inset is applied.\n// =============================================================================\n\nexport const DropIndicatorElement = tasty({\n styles: {\n zIndex: 10,\n position: 'absolute',\n pointerEvents: 'none',\n opacity: {\n '': 0,\n 'drop-target': 1,\n },\n fill: '#primary',\n width: {\n '': '.5x',\n 'placement=left | placement=right': 'auto',\n },\n height: {\n '': 'auto',\n 'placement=left | placement=right': '.5x',\n },\n top: {\n '': 0,\n 'placement=left | placement=right': 'auto',\n '(placement=left | placement=right) & before': '-2px',\n },\n bottom: {\n '': 0,\n 'placement=left | placement=right': 'auto',\n '(placement=left | placement=right) & after': '-2px',\n },\n left: {\n '': 'auto',\n 'before & !(placement=left | placement=right)': '-2px',\n 'placement=left | placement=right': 0,\n },\n right: {\n '': 'auto',\n 'after & !(placement=left | placement=right)': '-2px',\n 'placement=left | placement=right': 0,\n },\n },\n});\n\n// =============================================================================\n// Tab Selection Indicator (for default/narrow type)\n// Position flips with placement; the dynamic axis dimensions (left/width for\n// horizontal, top/height for vertical) are populated via inline `style` from\n// `useTabIndicator` in `Tabs.tsx`.\n// =============================================================================\n\nexport const TabIndicatorElement = tasty({\n styles: {\n position: 'absolute',\n bottom: {\n '': '0',\n 'placement=bottom | placement=left | placement=right': 'auto',\n },\n top: {\n '': 'auto',\n 'placement=bottom': '0',\n },\n left: {\n '': 'auto',\n 'placement=right': '0',\n },\n right: {\n '': 'auto',\n 'placement=left': '0',\n },\n height: {\n '': '$tab-indicator-size',\n 'placement=left | placement=right': 'auto',\n },\n width: {\n '': 'auto',\n 'placement=left | placement=right': '$tab-indicator-size',\n },\n fill: '#primary',\n // Transition all four properties unconditionally — only the two relevant\n // ones change per render, the others stay constant.\n transition:\n 'left $tab-transition ease-in-out, width $tab-transition ease-in-out, top $tab-transition ease-in-out, height $tab-transition ease-in-out',\n pointerEvents: 'none',\n },\n});\n\n// =============================================================================\n// Tab Panel\n// =============================================================================\n\nexport const TabPanelElement = tasty({\n as: 'section',\n styles: {\n display: 'contents',\n hide: {\n '': true,\n active: false,\n },\n },\n});\n"],"mappings":"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"}