@cube-dev/ui-kit 0.0.0-canary-c26fe9d → 0.0.0-canary-223b7e5

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 (476) hide show
  1. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  2. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  3. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  4. package/dist/_internal/hooks/use-event.js +1 -1
  5. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  6. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  7. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  8. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  9. package/dist/_internal/hooks/use-warn.js +1 -1
  10. package/dist/components/Block.js +1 -1
  11. package/dist/components/CollectionItem.js +1 -1
  12. package/dist/components/GlobalStyles.js +1 -1
  13. package/dist/components/GridProvider.js +1 -1
  14. package/dist/components/HiddenInput.js +1 -1
  15. package/dist/components/Root.js +1 -1
  16. package/dist/components/actions/Action/Action.js +1 -1
  17. package/dist/components/actions/Banner/Banner.js +1 -1
  18. package/dist/components/actions/Button/Button.js +1 -1
  19. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  20. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  21. package/dist/components/actions/ButtonSplit/context.js +1 -1
  22. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  23. package/dist/components/actions/CommandMenu/styled.js +1 -1
  24. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  25. package/dist/components/actions/ItemActionContext.js +1 -1
  26. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  27. package/dist/components/actions/Link/Link.js +1 -1
  28. package/dist/components/actions/Menu/Menu.js +1 -1
  29. package/dist/components/actions/Menu/MenuItem.js +1 -1
  30. package/dist/components/actions/Menu/MenuSection.js +1 -1
  31. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  32. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  33. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  34. package/dist/components/actions/Menu/context.js +1 -1
  35. package/dist/components/actions/Menu/styled.js +1 -1
  36. package/dist/components/actions/index.js +1 -1
  37. package/dist/components/actions/use-action.js +1 -1
  38. package/dist/components/actions/use-anchored-menu.js +1 -1
  39. package/dist/components/actions/use-context-menu.js +1 -1
  40. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  41. package/dist/components/content/Alert/Alert.js +1 -1
  42. package/dist/components/content/Alert/use-alert.js +1 -1
  43. package/dist/components/content/Avatar/Avatar.js +1 -1
  44. package/dist/components/content/Badge/Badge.js +1 -1
  45. package/dist/components/content/Card/Card.js +1 -1
  46. package/dist/components/content/Content.js +1 -1
  47. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  48. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  49. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  50. package/dist/components/content/Divider.js +1 -1
  51. package/dist/components/content/Footer.js +1 -1
  52. package/dist/components/content/Header.js +1 -1
  53. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  54. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  55. package/dist/components/content/Item/Item.js +1 -1
  56. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  57. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  58. package/dist/components/content/Layout/GridLayout.js +1 -1
  59. package/dist/components/content/Layout/Layout.js +1 -1
  60. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  61. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  62. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  63. package/dist/components/content/Layout/LayoutContent.js +1 -1
  64. package/dist/components/content/Layout/LayoutContext.js +1 -1
  65. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  66. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  67. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  68. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  69. package/dist/components/content/Layout/LayoutPane.js +1 -1
  70. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  71. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  72. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  73. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  74. package/dist/components/content/Layout/index.js +1 -1
  75. package/dist/components/content/Layout/utils.js +1 -1
  76. package/dist/components/content/Paragraph.js +1 -1
  77. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  78. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  79. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  80. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  81. package/dist/components/content/Result/Result.js +1 -1
  82. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  83. package/dist/components/content/Tag/Tag.js +1 -1
  84. package/dist/components/content/Text.js +1 -1
  85. package/dist/components/content/TextItem/TextItem.js +1 -1
  86. package/dist/components/content/Title.js +1 -1
  87. package/dist/components/content/Tree/Tree.js +1 -1
  88. package/dist/components/content/Tree/TreeNode.js +1 -1
  89. package/dist/components/content/Tree/styled.js +1 -1
  90. package/dist/components/content/Tree/tree-index.js +1 -1
  91. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  92. package/dist/components/content/Tree/use-load-data.js +1 -1
  93. package/dist/components/content/highlightText.js +1 -1
  94. package/dist/components/content/use-auto-tooltip.js +1 -1
  95. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  96. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  97. package/dist/components/fields/Checkbox/context.js +1 -1
  98. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  99. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  100. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  101. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  102. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  103. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  104. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  105. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  106. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  107. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  108. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  109. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  110. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  111. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  112. package/dist/components/fields/DatePicker/intl.js +1 -1
  113. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  114. package/dist/components/fields/DatePicker/props.js +1 -1
  115. package/dist/components/fields/DatePicker/utils.js +1 -1
  116. package/dist/components/fields/FileInput/FileInput.js +1 -1
  117. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  118. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  119. package/dist/components/fields/Input/Input.js +1 -1
  120. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  121. package/dist/components/fields/ListBox/ListBox.js +1 -1
  122. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  123. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  124. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  125. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  126. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  127. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  128. package/dist/components/fields/Picker/Picker.js +1 -1
  129. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  130. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  131. package/dist/components/fields/RadioGroup/context.js +1 -1
  132. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  133. package/dist/components/fields/Select/Select.js +1 -1
  134. package/dist/components/fields/Slider/Gradation.js +1 -1
  135. package/dist/components/fields/Slider/HueSlider.js +1 -1
  136. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  137. package/dist/components/fields/Slider/Slider.js +1 -1
  138. package/dist/components/fields/Slider/SliderBase.js +1 -1
  139. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  140. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  141. package/dist/components/fields/Slider/elements.js +1 -1
  142. package/dist/components/fields/Slider/index.js +1 -1
  143. package/dist/components/fields/Switch/Switch.js +1 -1
  144. package/dist/components/fields/TextArea/TextArea.js +1 -1
  145. package/dist/components/fields/TextInput/TextInput.js +1 -1
  146. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  147. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  148. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  149. package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  150. package/dist/components/form/Form/Field.js +1 -1
  151. package/dist/components/form/Form/Form.js +1 -1
  152. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  153. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  154. package/dist/components/form/Form/SubmitError.js +1 -1
  155. package/dist/components/form/Form/index.js +1 -1
  156. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  157. package/dist/components/form/Form/use-field/use-field.js +1 -1
  158. package/dist/components/form/Form/use-form.js +1 -1
  159. package/dist/components/form/Form/validation.js +1 -1
  160. package/dist/components/form/Label.js +1 -1
  161. package/dist/components/form/wrapper.js +1 -1
  162. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  163. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  164. package/dist/components/layout/Flex.js +1 -1
  165. package/dist/components/layout/Flow.js +1 -1
  166. package/dist/components/layout/Grid.js +1 -1
  167. package/dist/components/layout/Panel.js +1 -1
  168. package/dist/components/layout/Prefix.js +1 -1
  169. package/dist/components/layout/ResizablePanel.js +1 -1
  170. package/dist/components/layout/Space.js +1 -1
  171. package/dist/components/layout/Suffix.js +1 -1
  172. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  173. package/dist/components/navigation/Tabs/TabButton.js +4 -36
  174. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  175. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  176. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  177. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  178. package/dist/components/navigation/Tabs/Tabs.js +3 -6
  179. package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
  180. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  181. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  182. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  183. package/dist/components/navigation/Tabs/styled.js +2 -3
  184. package/dist/components/navigation/Tabs/styled.js.map +1 -1
  185. package/dist/components/navigation/Tabs/types.js +1 -1
  186. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  187. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  188. package/dist/components/organisms/FileTabs/FileTabs.js +1 -1
  189. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  190. package/dist/components/other/Calendar/Calendar.js +1 -1
  191. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  192. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  193. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  194. package/dist/components/other/CloudLogo/CloudLogo.js +1 -1
  195. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  196. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  197. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  198. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  199. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  200. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  201. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  202. package/dist/components/overlays/Dialog/context.js +1 -1
  203. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  204. package/dist/components/overlays/Modal/Modal.js +1 -1
  205. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  206. package/dist/components/overlays/Modal/Overlay.js +1 -1
  207. package/dist/components/overlays/Modal/Popover.js +1 -1
  208. package/dist/components/overlays/Modal/Tray.js +1 -1
  209. package/dist/components/overlays/Modal/Underlay.js +1 -1
  210. package/dist/components/overlays/Notifications/Notification.js +1 -1
  211. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  212. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  213. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  214. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  215. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  216. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  217. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  218. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  219. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  220. package/dist/components/overlays/Notifications/index.js +1 -1
  221. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  222. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  223. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  224. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  225. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  226. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  227. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  228. package/dist/components/overlays/Toast/index.js +1 -1
  229. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  230. package/dist/components/overlays/Toast/useToast.js +1 -1
  231. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  232. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  233. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  234. package/dist/components/overlays/Tooltip/context.js +1 -1
  235. package/dist/components/portal/Portal.js +1 -1
  236. package/dist/components/portal/PortalProvider.js +1 -1
  237. package/dist/components/portal/usePortal.js +1 -1
  238. package/dist/components/shared/DraggableCollection.js +1 -1
  239. package/dist/components/shared/InvalidIcon.js +1 -1
  240. package/dist/components/shared/ValidIcon.js +1 -1
  241. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  242. package/dist/components/status/Spin/Cube.js +1 -1
  243. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  244. package/dist/components/status/Spin/Spin.js +1 -1
  245. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  246. package/dist/data/item-themes.js +1 -1
  247. package/dist/data/themes.js +1 -1
  248. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  249. package/dist/icons/AdjustmentsIcon.js +1 -1
  250. package/dist/icons/AiIcon.js +1 -1
  251. package/dist/icons/AreaChartIcon.js +1 -1
  252. package/dist/icons/BackwardIcon.js +1 -1
  253. package/dist/icons/BarChartIcon.js +1 -1
  254. package/dist/icons/BellFilledIcon.js +1 -1
  255. package/dist/icons/BellIcon.js +1 -1
  256. package/dist/icons/BooleanIcon.js +1 -1
  257. package/dist/icons/CalendarEditIcon.js +1 -1
  258. package/dist/icons/CalendarIcon.js +1 -1
  259. package/dist/icons/CaretDownIcon.js +1 -1
  260. package/dist/icons/CaretUpIcon.js +1 -1
  261. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  262. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  263. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  264. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  265. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  266. package/dist/icons/ChartBarLineIcon.js +1 -1
  267. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  268. package/dist/icons/ChartBarStackedIcon.js +1 -1
  269. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  270. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  271. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  272. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  273. package/dist/icons/ChartBubbleIcon.js +1 -1
  274. package/dist/icons/ChartDonut2Icon.js +1 -1
  275. package/dist/icons/ChartFunnelIcon.js +1 -1
  276. package/dist/icons/ChartHeatmapIcon.js +1 -1
  277. package/dist/icons/ChartKPIIcon.js +1 -1
  278. package/dist/icons/ChartPie2Icon.js +1 -1
  279. package/dist/icons/ChartScatterIcon.js +1 -1
  280. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  281. package/dist/icons/CheckCircleIcon.js +1 -1
  282. package/dist/icons/CheckIcon.js +1 -1
  283. package/dist/icons/CircleFilledIcon.js +1 -1
  284. package/dist/icons/ClearIcon.js +1 -1
  285. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  286. package/dist/icons/CloseCircleIcon.js +1 -1
  287. package/dist/icons/CloseIcon.js +1 -1
  288. package/dist/icons/CodeIcon.js +1 -1
  289. package/dist/icons/ColumnTotalIcon.js +1 -1
  290. package/dist/icons/CopyIcon.js +1 -1
  291. package/dist/icons/CountIcon.js +1 -1
  292. package/dist/icons/CubeIcon.js +1 -1
  293. package/dist/icons/CubePauseIcon.js +1 -1
  294. package/dist/icons/CubePlayIcon.js +1 -1
  295. package/dist/icons/CurrencyDollarIcon.js +1 -1
  296. package/dist/icons/DangerIcon.js +1 -1
  297. package/dist/icons/DashboardIcon.js +1 -1
  298. package/dist/icons/DatabaseIcon.js +1 -1
  299. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  300. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  301. package/dist/icons/DirectionIcon.js +1 -1
  302. package/dist/icons/DonutIcon.js +1 -1
  303. package/dist/icons/DownIcon.js +1 -1
  304. package/dist/icons/EditIcon.js +1 -1
  305. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  306. package/dist/icons/ExclamationCircleIcon.js +1 -1
  307. package/dist/icons/ExclamationIcon.js +1 -1
  308. package/dist/icons/EyeIcon.js +1 -1
  309. package/dist/icons/EyeInvisibleIcon.js +1 -1
  310. package/dist/icons/FilterIcon.js +1 -1
  311. package/dist/icons/FolderFilledIcon.js +1 -1
  312. package/dist/icons/FolderIcon.js +1 -1
  313. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  314. package/dist/icons/FolderOpenIcon.js +1 -1
  315. package/dist/icons/ForwardIcon.js +1 -1
  316. package/dist/icons/GripVerticalIcon.js +1 -1
  317. package/dist/icons/HierarchyIcon.js +1 -1
  318. package/dist/icons/HierarchyOpenIcon.js +1 -1
  319. package/dist/icons/Icon.js +1 -1
  320. package/dist/icons/InfoCircleIcon.js +1 -1
  321. package/dist/icons/InfoIcon.js +1 -1
  322. package/dist/icons/KeyIcon.js +1 -1
  323. package/dist/icons/LeftIcon.js +1 -1
  324. package/dist/icons/LineChartIcon.js +1 -1
  325. package/dist/icons/LoadingIcon.js +1 -1
  326. package/dist/icons/LockFilledIcon.js +1 -1
  327. package/dist/icons/LockIcon.js +1 -1
  328. package/dist/icons/MoreIcon.js +1 -1
  329. package/dist/icons/NotAllowedIcon.js +1 -1
  330. package/dist/icons/Number123Icon.js +1 -1
  331. package/dist/icons/NumberIcon.js +1 -1
  332. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  333. package/dist/icons/PauseCircleIcon.js +1 -1
  334. package/dist/icons/PauseIcon.js +1 -1
  335. package/dist/icons/PercentageIcon.js +1 -1
  336. package/dist/icons/PieChartIcon.js +1 -1
  337. package/dist/icons/PlayCircleIcon.js +1 -1
  338. package/dist/icons/PlayIcon.js +1 -1
  339. package/dist/icons/PlusIcon.js +1 -1
  340. package/dist/icons/ProgressBarIcon.js +1 -1
  341. package/dist/icons/ReloadIcon.js +1 -1
  342. package/dist/icons/ReportIcon.js +1 -1
  343. package/dist/icons/ReturnIcon.js +1 -1
  344. package/dist/icons/RightIcon.js +1 -1
  345. package/dist/icons/RowTotalsIcon.js +1 -1
  346. package/dist/icons/SchemeIcon.js +1 -1
  347. package/dist/icons/SearchIcon.js +1 -1
  348. package/dist/icons/SemanticQueryIcon.js +1 -1
  349. package/dist/icons/SettingsIcon.js +1 -1
  350. package/dist/icons/ShieldFilledIcon.js +1 -1
  351. package/dist/icons/ShieldIcon.js +1 -1
  352. package/dist/icons/SlashIcon.js +1 -1
  353. package/dist/icons/SparklesIcon.js +1 -1
  354. package/dist/icons/SqlIcon.js +1 -1
  355. package/dist/icons/StatsIcon.js +1 -1
  356. package/dist/icons/StopIcon.js +1 -1
  357. package/dist/icons/StringIcon.js +1 -1
  358. package/dist/icons/SubtotalsIcon.js +1 -1
  359. package/dist/icons/SwitchIcon.js +1 -1
  360. package/dist/icons/TableIcon.js +1 -1
  361. package/dist/icons/ThumbsDownIcon.js +1 -1
  362. package/dist/icons/ThumbsUpIcon.js +1 -1
  363. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  364. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  365. package/dist/icons/ThunderboltIcon.js +1 -1
  366. package/dist/icons/TimeIcon.js +1 -1
  367. package/dist/icons/TrashIcon.js +1 -1
  368. package/dist/icons/UnlockIcon.js +1 -1
  369. package/dist/icons/UpIcon.js +1 -1
  370. package/dist/icons/UserGroupIcon.js +1 -1
  371. package/dist/icons/UserIcon.js +1 -1
  372. package/dist/icons/UserLockIcon.js +1 -1
  373. package/dist/icons/ViewIcon.js +1 -1
  374. package/dist/icons/WarningFilledIcon.js +1 -1
  375. package/dist/icons/WarningIcon.js +1 -1
  376. package/dist/icons/wrap-icon.js +1 -1
  377. package/dist/index.d.ts +2 -12
  378. package/dist/index.js +2 -8
  379. package/dist/index.js.map +1 -1
  380. package/dist/provider.js +1 -1
  381. package/dist/providers/TrackingProvider.js +1 -1
  382. package/dist/providers/navigationAdapter.default.js +1 -1
  383. package/dist/tokens/base.js +1 -1
  384. package/dist/tokens/colors.js +1 -1
  385. package/dist/tokens/index.js +1 -1
  386. package/dist/tokens/layout.js +1 -1
  387. package/dist/tokens/palette.js +1 -1
  388. package/dist/tokens/shadows.js +1 -1
  389. package/dist/tokens/sizes.js +1 -1
  390. package/dist/tokens/spacing.js +1 -1
  391. package/dist/tokens/typography.js +1 -1
  392. package/dist/utils/ResizeSensor.js +1 -1
  393. package/dist/utils/is-dev-env.js +1 -1
  394. package/dist/utils/modules.js +1 -1
  395. package/dist/utils/promise.js +1 -1
  396. package/dist/utils/raf.js +1 -1
  397. package/dist/utils/random.js +1 -1
  398. package/dist/utils/range.js +1 -1
  399. package/dist/utils/react/RenderCache.js +1 -1
  400. package/dist/utils/react/Slots.js +1 -1
  401. package/dist/utils/react/chain.js +1 -1
  402. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  403. package/dist/utils/react/index.js +1 -1
  404. package/dist/utils/react/interactions.js +1 -1
  405. package/dist/utils/react/isTextOnly.js +1 -1
  406. package/dist/utils/react/mapProps.js +1 -1
  407. package/dist/utils/react/mergeProps.js +1 -1
  408. package/dist/utils/react/nullableValue.js +1 -1
  409. package/dist/utils/react/resolveIcon.js +1 -1
  410. package/dist/utils/react/sharedStore.js +1 -1
  411. package/dist/utils/react/useCombinedRefs.js +1 -1
  412. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  413. package/dist/utils/react/useEventBus.js +1 -1
  414. package/dist/utils/react/useId.js +1 -1
  415. package/dist/utils/react/useIsDarwin.js +1 -1
  416. package/dist/utils/react/useKeySymbols.js +1 -1
  417. package/dist/utils/react/useLayoutEffect.js +1 -1
  418. package/dist/utils/react/useLocalStorage.js +1 -1
  419. package/dist/utils/react/useMergeStyles.js +1 -1
  420. package/dist/utils/react/usePopoverSync.js +1 -1
  421. package/dist/utils/react/useQaProps.js +1 -1
  422. package/dist/utils/react/useViewportSize.js +1 -1
  423. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  424. package/dist/utils/selection.js +1 -1
  425. package/dist/utils/styles.js +1 -1
  426. package/dist/utils/tree.js +1 -1
  427. package/dist/utils/warnings.js +1 -1
  428. package/dist/version.js +2 -2
  429. package/docs/components/navigation/Tabs.md +2 -18
  430. package/package.json +1 -1
  431. package/dist/components/layout/Board/Board.d.ts +0 -110
  432. package/dist/components/layout/Board/Board.js +0 -447
  433. package/dist/components/layout/Board/Board.js.map +0 -1
  434. package/dist/components/layout/Board/BoardProvider.d.ts +0 -28
  435. package/dist/components/layout/Board/BoardProvider.js +0 -47
  436. package/dist/components/layout/Board/BoardProvider.js.map +0 -1
  437. package/dist/components/layout/Board/BoardResponsive.d.ts +0 -45
  438. package/dist/components/layout/Board/BoardResponsive.js +0 -94
  439. package/dist/components/layout/Board/BoardResponsive.js.map +0 -1
  440. package/dist/components/layout/Board/Widget.d.ts +0 -49
  441. package/dist/components/layout/Board/Widget.js +0 -42
  442. package/dist/components/layout/Board/Widget.js.map +0 -1
  443. package/dist/components/layout/Board/WidgetHost.js +0 -341
  444. package/dist/components/layout/Board/WidgetHost.js.map +0 -1
  445. package/dist/components/layout/Board/board-context.d.ts +0 -16
  446. package/dist/components/layout/Board/board-context.js +0 -32
  447. package/dist/components/layout/Board/board-context.js.map +0 -1
  448. package/dist/components/layout/Board/board-store.d.ts +0 -3
  449. package/dist/components/layout/Board/board-store.js +0 -49
  450. package/dist/components/layout/Board/board-store.js.map +0 -1
  451. package/dist/components/layout/Board/grid-core/calculate.js +0 -90
  452. package/dist/components/layout/Board/grid-core/calculate.js.map +0 -1
  453. package/dist/components/layout/Board/grid-core/collision.js +0 -35
  454. package/dist/components/layout/Board/grid-core/collision.js.map +0 -1
  455. package/dist/components/layout/Board/grid-core/compactors.d.ts +0 -23
  456. package/dist/components/layout/Board/grid-core/compactors.js +0 -166
  457. package/dist/components/layout/Board/grid-core/compactors.js.map +0 -1
  458. package/dist/components/layout/Board/grid-core/constraints.d.ts +0 -35
  459. package/dist/components/layout/Board/grid-core/constraints.js +0 -155
  460. package/dist/components/layout/Board/grid-core/constraints.js.map +0 -1
  461. package/dist/components/layout/Board/grid-core/layout.js +0 -176
  462. package/dist/components/layout/Board/grid-core/layout.js.map +0 -1
  463. package/dist/components/layout/Board/grid-core/sort.js +0 -37
  464. package/dist/components/layout/Board/grid-core/sort.js.map +0 -1
  465. package/dist/components/layout/Board/grid-core/types.d.ts +0 -168
  466. package/dist/components/layout/Board/index.d.ts +0 -21
  467. package/dist/components/layout/Board/index.js +0 -18
  468. package/dist/components/layout/Board/index.js.map +0 -1
  469. package/dist/components/layout/Board/responsive-utils.d.ts +0 -13
  470. package/dist/components/layout/Board/responsive-utils.js +0 -55
  471. package/dist/components/layout/Board/responsive-utils.js.map +0 -1
  472. package/dist/components/layout/Board/use-board-layout.js +0 -52
  473. package/dist/components/layout/Board/use-board-layout.js.map +0 -1
  474. package/dist/components/layout/Board/use-board-registry.js +0 -372
  475. package/dist/components/layout/Board/use-board-registry.js.map +0 -1
  476. package/docs/components/layout/Board.md +0 -212
@@ -1,155 +0,0 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c26fe9d | Cube Dev Team */
2
- //#region src/components/layout/Board/grid-core/constraints.ts
3
- function clamp(value, min, max) {
4
- return Math.max(min, Math.min(max, value));
5
- }
6
- /**
7
- * Grid boundary constraint. Ensures items stay within the grid bounds. This is
8
- * the default position constraint.
9
- */
10
- const gridBounds = {
11
- name: "gridBounds",
12
- constrainPosition(item, x, y, { cols, maxRows }) {
13
- return {
14
- x: clamp(x, 0, Math.max(0, cols - item.w)),
15
- y: clamp(y, 0, Math.max(0, maxRows - item.h))
16
- };
17
- },
18
- constrainSize(item, w, h, handle, { cols, maxRows }) {
19
- const maxW = handle === "w" || handle === "nw" || handle === "sw" ? item.x + item.w : cols - item.x;
20
- const maxH = handle === "n" || handle === "nw" || handle === "ne" ? item.y + item.h : maxRows - item.y;
21
- return {
22
- w: clamp(w, 1, Math.max(1, maxW)),
23
- h: clamp(h, 1, Math.max(1, maxH))
24
- };
25
- }
26
- };
27
- /**
28
- * Min/max size constraint. Enforces per-item minW/maxW/minH/maxH.
29
- */
30
- const minMaxSize = {
31
- name: "minMaxSize",
32
- constrainSize(item, w, h) {
33
- return {
34
- w: clamp(w, item.minW ?? 1, item.maxW ?? Infinity),
35
- h: clamp(h, item.minH ?? 1, item.maxH ?? Infinity)
36
- };
37
- }
38
- };
39
- /**
40
- * Container bounds constraint. Constrains items to stay within the visible
41
- * container (a replacement for the legacy `isBounded` prop).
42
- */
43
- const containerBounds = {
44
- name: "containerBounds",
45
- constrainPosition(item, x, y, { cols, maxRows, containerHeight, rowHeight, margin }) {
46
- const visibleRows = containerHeight > 0 ? Math.floor((containerHeight + margin[1]) / (rowHeight + margin[1])) : maxRows;
47
- return {
48
- x: clamp(x, 0, Math.max(0, cols - item.w)),
49
- y: clamp(y, 0, Math.max(0, visibleRows - item.h))
50
- };
51
- }
52
- };
53
- /** Bounded X constraint. Only constrains horizontal position. */
54
- const boundedX = {
55
- name: "boundedX",
56
- constrainPosition(item, x, y, { cols }) {
57
- return {
58
- x: clamp(x, 0, Math.max(0, cols - item.w)),
59
- y
60
- };
61
- }
62
- };
63
- /** Bounded Y constraint. Only constrains vertical position. */
64
- const boundedY = {
65
- name: "boundedY",
66
- constrainPosition(item, x, y, { maxRows }) {
67
- return {
68
- x,
69
- y: clamp(y, 0, Math.max(0, maxRows - item.h))
70
- };
71
- }
72
- };
73
- /**
74
- * Create an aspect ratio constraint (maintains width-to-height ratio in pixels).
75
- */
76
- function aspectRatio(ratio) {
77
- return {
78
- name: `aspectRatio(${ratio})`,
79
- constrainSize(_item, w, _h, _handle, context) {
80
- const { cols, containerWidth, rowHeight, margin } = context;
81
- const pixelHeight = ((containerWidth - margin[0] * (cols - 1)) / cols * w + margin[0] * Math.max(0, w - 1)) / ratio;
82
- return {
83
- w,
84
- h: Math.max(1, Math.round((pixelHeight + margin[1]) / (rowHeight + margin[1])))
85
- };
86
- }
87
- };
88
- }
89
- /** Create a snap-to-grid constraint. */
90
- function snapToGrid(stepX, stepY = stepX) {
91
- if (stepX <= 0 || stepY <= 0) throw new Error(`snapToGrid: step values must be positive (got stepX=${stepX}, stepY=${stepY})`);
92
- return {
93
- name: `snapToGrid(${stepX}, ${stepY})`,
94
- constrainPosition(_item, x, y) {
95
- return {
96
- x: Math.round(x / stepX) * stepX,
97
- y: Math.round(y / stepY) * stepY
98
- };
99
- }
100
- };
101
- }
102
- /** Create a minimum size constraint (grid-wide). */
103
- function minSize(minW, minH) {
104
- return {
105
- name: `minSize(${minW}, ${minH})`,
106
- constrainSize(_item, w, h) {
107
- return {
108
- w: Math.max(minW, w),
109
- h: Math.max(minH, h)
110
- };
111
- }
112
- };
113
- }
114
- /** Create a maximum size constraint (grid-wide). */
115
- function maxSize(maxW, maxH) {
116
- return {
117
- name: `maxSize(${maxW}, ${maxH})`,
118
- constrainSize(_item, w, h) {
119
- return {
120
- w: Math.min(maxW, w),
121
- h: Math.min(maxH, h)
122
- };
123
- }
124
- };
125
- }
126
- /** Default constraints applied when none are specified. */
127
- const defaultConstraints = [gridBounds, minMaxSize];
128
- /** Apply position constraints to a proposed position. */
129
- function applyPositionConstraints(constraints, item, x, y, context) {
130
- let result = {
131
- x,
132
- y
133
- };
134
- for (const constraint of constraints) if (constraint.constrainPosition) result = constraint.constrainPosition(item, result.x, result.y, context);
135
- if (item.constraints) {
136
- for (const constraint of item.constraints) if (constraint.constrainPosition) result = constraint.constrainPosition(item, result.x, result.y, context);
137
- }
138
- return result;
139
- }
140
- /** Apply size constraints to a proposed size. */
141
- function applySizeConstraints(constraints, item, w, h, handle, context) {
142
- let result = {
143
- w,
144
- h
145
- };
146
- for (const constraint of constraints) if (constraint.constrainSize) result = constraint.constrainSize(item, result.w, result.h, handle, context);
147
- if (item.constraints) {
148
- for (const constraint of item.constraints) if (constraint.constrainSize) result = constraint.constrainSize(item, result.w, result.h, handle, context);
149
- }
150
- return result;
151
- }
152
-
153
- //#endregion
154
- export { applyPositionConstraints, applySizeConstraints, aspectRatio, boundedX, boundedY, containerBounds, defaultConstraints, gridBounds, maxSize, minMaxSize, minSize, snapToGrid };
155
- //# sourceMappingURL=constraints.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constraints.js","names":[],"sources":["../../../../../src/components/layout/Board/grid-core/constraints.ts"],"sourcesContent":["/**\n * Pluggable layout constraints.\n *\n * Vendored from react-grid-layout v2 (`src/core/constraints.ts`).\n * See ./NOTICE.md for attribution and license.\n *\n * Constraints control position and size limits during drag/resize operations.\n */\n\nimport type {\n ConstraintContext,\n LayoutConstraint,\n LayoutItem,\n ResizeHandleAxis,\n} from './types';\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.max(min, Math.min(max, value));\n}\n\n// ============================================================================\n// Built-in Constraints\n// ============================================================================\n\n/**\n * Grid boundary constraint. Ensures items stay within the grid bounds. This is\n * the default position constraint.\n */\nexport const gridBounds: LayoutConstraint = {\n name: 'gridBounds',\n\n constrainPosition(\n item: LayoutItem,\n x: number,\n y: number,\n { cols, maxRows }: ConstraintContext,\n ): { x: number; y: number } {\n return {\n x: clamp(x, 0, Math.max(0, cols - item.w)),\n y: clamp(y, 0, Math.max(0, maxRows - item.h)),\n };\n },\n\n constrainSize(\n item: LayoutItem,\n w: number,\n h: number,\n handle: ResizeHandleAxis,\n { cols, maxRows }: ConstraintContext,\n ): { w: number; h: number } {\n const maxW =\n handle === 'w' || handle === 'nw' || handle === 'sw'\n ? item.x + item.w\n : cols - item.x;\n\n const maxH =\n handle === 'n' || handle === 'nw' || handle === 'ne'\n ? item.y + item.h\n : maxRows - item.y;\n\n return {\n w: clamp(w, 1, Math.max(1, maxW)),\n h: clamp(h, 1, Math.max(1, maxH)),\n };\n },\n};\n\n/**\n * Min/max size constraint. Enforces per-item minW/maxW/minH/maxH.\n */\nexport const minMaxSize: LayoutConstraint = {\n name: 'minMaxSize',\n\n constrainSize(\n item: LayoutItem,\n w: number,\n h: number,\n ): { w: number; h: number } {\n return {\n w: clamp(w, item.minW ?? 1, item.maxW ?? Infinity),\n h: clamp(h, item.minH ?? 1, item.maxH ?? Infinity),\n };\n },\n};\n\n/**\n * Container bounds constraint. Constrains items to stay within the visible\n * container (a replacement for the legacy `isBounded` prop).\n */\nexport const containerBounds: LayoutConstraint = {\n name: 'containerBounds',\n\n constrainPosition(\n item: LayoutItem,\n x: number,\n y: number,\n { cols, maxRows, containerHeight, rowHeight, margin }: ConstraintContext,\n ): { x: number; y: number } {\n const visibleRows =\n containerHeight > 0\n ? Math.floor((containerHeight + margin[1]) / (rowHeight + margin[1]))\n : maxRows;\n\n return {\n x: clamp(x, 0, Math.max(0, cols - item.w)),\n y: clamp(y, 0, Math.max(0, visibleRows - item.h)),\n };\n },\n};\n\n/** Bounded X constraint. Only constrains horizontal position. */\nexport const boundedX: LayoutConstraint = {\n name: 'boundedX',\n\n constrainPosition(\n item: LayoutItem,\n x: number,\n y: number,\n { cols }: ConstraintContext,\n ): { x: number; y: number } {\n return {\n x: clamp(x, 0, Math.max(0, cols - item.w)),\n y,\n };\n },\n};\n\n/** Bounded Y constraint. Only constrains vertical position. */\nexport const boundedY: LayoutConstraint = {\n name: 'boundedY',\n\n constrainPosition(\n item: LayoutItem,\n x: number,\n y: number,\n { maxRows }: ConstraintContext,\n ): { x: number; y: number } {\n return {\n x,\n y: clamp(y, 0, Math.max(0, maxRows - item.h)),\n };\n },\n};\n\n// ============================================================================\n// Constraint Factories\n// ============================================================================\n\n/**\n * Create an aspect ratio constraint (maintains width-to-height ratio in pixels).\n */\nexport function aspectRatio(ratio: number): LayoutConstraint {\n return {\n name: `aspectRatio(${ratio})`,\n\n constrainSize(\n _item: LayoutItem,\n w: number,\n _h: number,\n _handle: ResizeHandleAxis,\n context: ConstraintContext,\n ): { w: number; h: number } {\n const { cols, containerWidth, rowHeight, margin } = context;\n const colWidth = (containerWidth - margin[0] * (cols - 1)) / cols;\n const pixelWidth = colWidth * w + margin[0] * Math.max(0, w - 1);\n const pixelHeight = pixelWidth / ratio;\n const h = Math.max(\n 1,\n Math.round((pixelHeight + margin[1]) / (rowHeight + margin[1])),\n );\n\n return { w, h };\n },\n };\n}\n\n/** Create a snap-to-grid constraint. */\nexport function snapToGrid(\n stepX: number,\n stepY: number = stepX,\n): LayoutConstraint {\n if (stepX <= 0 || stepY <= 0) {\n throw new Error(\n `snapToGrid: step values must be positive (got stepX=${stepX}, stepY=${stepY})`,\n );\n }\n\n return {\n name: `snapToGrid(${stepX}, ${stepY})`,\n\n constrainPosition(\n _item: LayoutItem,\n x: number,\n y: number,\n ): { x: number; y: number } {\n return {\n x: Math.round(x / stepX) * stepX,\n y: Math.round(y / stepY) * stepY,\n };\n },\n };\n}\n\n/** Create a minimum size constraint (grid-wide). */\nexport function minSize(minW: number, minH: number): LayoutConstraint {\n return {\n name: `minSize(${minW}, ${minH})`,\n\n constrainSize(\n _item: LayoutItem,\n w: number,\n h: number,\n ): { w: number; h: number } {\n return {\n w: Math.max(minW, w),\n h: Math.max(minH, h),\n };\n },\n };\n}\n\n/** Create a maximum size constraint (grid-wide). */\nexport function maxSize(maxW: number, maxH: number): LayoutConstraint {\n return {\n name: `maxSize(${maxW}, ${maxH})`,\n\n constrainSize(\n _item: LayoutItem,\n w: number,\n h: number,\n ): { w: number; h: number } {\n return {\n w: Math.min(maxW, w),\n h: Math.min(maxH, h),\n };\n },\n };\n}\n\n// ============================================================================\n// Default Constraints\n// ============================================================================\n\n/** Default constraints applied when none are specified. */\nexport const defaultConstraints: LayoutConstraint[] = [gridBounds, minMaxSize];\n\n// ============================================================================\n// Constraint Application Functions\n// ============================================================================\n\n/** Apply position constraints to a proposed position. */\nexport function applyPositionConstraints(\n constraints: LayoutConstraint[],\n item: LayoutItem,\n x: number,\n y: number,\n context: ConstraintContext,\n): { x: number; y: number } {\n let result = { x, y };\n\n for (const constraint of constraints) {\n if (constraint.constrainPosition) {\n result = constraint.constrainPosition(item, result.x, result.y, context);\n }\n }\n\n if (item.constraints) {\n for (const constraint of item.constraints) {\n if (constraint.constrainPosition) {\n result = constraint.constrainPosition(\n item,\n result.x,\n result.y,\n context,\n );\n }\n }\n }\n\n return result;\n}\n\n/** Apply size constraints to a proposed size. */\nexport function applySizeConstraints(\n constraints: LayoutConstraint[],\n item: LayoutItem,\n w: number,\n h: number,\n handle: ResizeHandleAxis,\n context: ConstraintContext,\n): { w: number; h: number } {\n let result = { w, h };\n\n for (const constraint of constraints) {\n if (constraint.constrainSize) {\n result = constraint.constrainSize(\n item,\n result.w,\n result.h,\n handle,\n context,\n );\n }\n }\n\n if (item.constraints) {\n for (const constraint of item.constraints) {\n if (constraint.constrainSize) {\n result = constraint.constrainSize(\n item,\n result.w,\n result.h,\n handle,\n context,\n );\n }\n }\n }\n\n return result;\n}\n"],"mappings":";;AAgBA,SAAS,MAAM,OAAe,KAAa,KAAqB;AAC9D,QAAO,KAAK,IAAI,KAAK,KAAK,IAAI,KAAK,MAAM,CAAC;;;;;;AAW5C,MAAa,aAA+B;CAC1C,MAAM;CAEN,kBACE,MACA,GACA,GACA,EAAE,MAAM,WACkB;AAC1B,SAAO;GACL,GAAG,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,OAAO,KAAK,EAAE,CAAC;GAC1C,GAAG,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,UAAU,KAAK,EAAE,CAAC;GAC9C;;CAGH,cACE,MACA,GACA,GACA,QACA,EAAE,MAAM,WACkB;EAC1B,MAAM,OACJ,WAAW,OAAO,WAAW,QAAQ,WAAW,OAC5C,KAAK,IAAI,KAAK,IACd,OAAO,KAAK;EAElB,MAAM,OACJ,WAAW,OAAO,WAAW,QAAQ,WAAW,OAC5C,KAAK,IAAI,KAAK,IACd,UAAU,KAAK;AAErB,SAAO;GACL,GAAG,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,KAAK,CAAC;GACjC,GAAG,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,KAAK,CAAC;GAClC;;CAEJ;;;;AAKD,MAAa,aAA+B;CAC1C,MAAM;CAEN,cACE,MACA,GACA,GAC0B;AAC1B,SAAO;GACL,GAAG,MAAM,GAAG,KAAK,QAAQ,GAAG,KAAK,QAAQ,SAAS;GAClD,GAAG,MAAM,GAAG,KAAK,QAAQ,GAAG,KAAK,QAAQ,SAAS;GACnD;;CAEJ;;;;;AAMD,MAAa,kBAAoC;CAC/C,MAAM;CAEN,kBACE,MACA,GACA,GACA,EAAE,MAAM,SAAS,iBAAiB,WAAW,UACnB;EAC1B,MAAM,cACJ,kBAAkB,IACd,KAAK,OAAO,kBAAkB,OAAO,OAAO,YAAY,OAAO,IAAI,GACnE;AAEN,SAAO;GACL,GAAG,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,OAAO,KAAK,EAAE,CAAC;GAC1C,GAAG,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,cAAc,KAAK,EAAE,CAAC;GAClD;;CAEJ;;AAGD,MAAa,WAA6B;CACxC,MAAM;CAEN,kBACE,MACA,GACA,GACA,EAAE,QACwB;AAC1B,SAAO;GACL,GAAG,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,OAAO,KAAK,EAAE,CAAC;GAC1C;GACD;;CAEJ;;AAGD,MAAa,WAA6B;CACxC,MAAM;CAEN,kBACE,MACA,GACA,GACA,EAAE,WACwB;AAC1B,SAAO;GACL;GACA,GAAG,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,UAAU,KAAK,EAAE,CAAC;GAC9C;;CAEJ;;;;AASD,SAAgB,YAAY,OAAiC;AAC3D,QAAO;EACL,MAAM,eAAe,MAAM;EAE3B,cACE,OACA,GACA,IACA,SACA,SAC0B;GAC1B,MAAM,EAAE,MAAM,gBAAgB,WAAW,WAAW;GAGpD,MAAM,gBAFY,iBAAiB,OAAO,MAAM,OAAO,MAAM,OAC/B,IAAI,OAAO,KAAK,KAAK,IAAI,GAAG,IAAI,EAAE,IAC/B;AAMjC,UAAO;IAAE;IAAG,GALF,KAAK,IACb,GACA,KAAK,OAAO,cAAc,OAAO,OAAO,YAAY,OAAO,IAAI,CAChE;IAEc;;EAElB;;;AAIH,SAAgB,WACd,OACA,QAAgB,OACE;AAClB,KAAI,SAAS,KAAK,SAAS,EACzB,OAAM,IAAI,MACR,uDAAuD,MAAM,UAAU,MAAM,GAC9E;AAGH,QAAO;EACL,MAAM,cAAc,MAAM,IAAI,MAAM;EAEpC,kBACE,OACA,GACA,GAC0B;AAC1B,UAAO;IACL,GAAG,KAAK,MAAM,IAAI,MAAM,GAAG;IAC3B,GAAG,KAAK,MAAM,IAAI,MAAM,GAAG;IAC5B;;EAEJ;;;AAIH,SAAgB,QAAQ,MAAc,MAAgC;AACpE,QAAO;EACL,MAAM,WAAW,KAAK,IAAI,KAAK;EAE/B,cACE,OACA,GACA,GAC0B;AAC1B,UAAO;IACL,GAAG,KAAK,IAAI,MAAM,EAAE;IACpB,GAAG,KAAK,IAAI,MAAM,EAAE;IACrB;;EAEJ;;;AAIH,SAAgB,QAAQ,MAAc,MAAgC;AACpE,QAAO;EACL,MAAM,WAAW,KAAK,IAAI,KAAK;EAE/B,cACE,OACA,GACA,GAC0B;AAC1B,UAAO;IACL,GAAG,KAAK,IAAI,MAAM,EAAE;IACpB,GAAG,KAAK,IAAI,MAAM,EAAE;IACrB;;EAEJ;;;AAQH,MAAa,qBAAyC,CAAC,YAAY,WAAW;;AAO9E,SAAgB,yBACd,aACA,MACA,GACA,GACA,SAC0B;CAC1B,IAAI,SAAS;EAAE;EAAG;EAAG;AAErB,MAAK,MAAM,cAAc,YACvB,KAAI,WAAW,kBACb,UAAS,WAAW,kBAAkB,MAAM,OAAO,GAAG,OAAO,GAAG,QAAQ;AAI5E,KAAI,KAAK,aACP;OAAK,MAAM,cAAc,KAAK,YAC5B,KAAI,WAAW,kBACb,UAAS,WAAW,kBAClB,MACA,OAAO,GACP,OAAO,GACP,QACD;;AAKP,QAAO;;;AAIT,SAAgB,qBACd,aACA,MACA,GACA,GACA,QACA,SAC0B;CAC1B,IAAI,SAAS;EAAE;EAAG;EAAG;AAErB,MAAK,MAAM,cAAc,YACvB,KAAI,WAAW,cACb,UAAS,WAAW,cAClB,MACA,OAAO,GACP,OAAO,GACP,QACA,QACD;AAIL,KAAI,KAAK,aACP;OAAK,MAAM,cAAc,KAAK,YAC5B,KAAI,WAAW,cACb,UAAS,WAAW,cAClB,MACA,OAAO,GACP,OAAO,GACP,QACA,QACD;;AAKP,QAAO"}
@@ -1,176 +0,0 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c26fe9d | Cube Dev Team */
2
- import { getAllCollisions, getFirstCollision } from "./collision.js";
3
- import { sortLayoutItems } from "./sort.js";
4
-
5
- //#region src/components/layout/Board/grid-core/layout.ts
6
- /**
7
- * Core layout manipulation utilities.
8
- *
9
- * Vendored from react-grid-layout v2 (`src/core/layout.ts`).
10
- * See ./NOTICE.md for attribution and license.
11
- *
12
- * These functions create, modify, and query grid layouts. Most functions treat
13
- * layouts as immutable and return new arrays/objects, but a few mutate items in
14
- * place for performance (documented per function).
15
- */
16
- /**
17
- * Get the bottom-most Y coordinate of the layout (max of y + h).
18
- */
19
- function bottom(layout) {
20
- let max = 0;
21
- for (let i = 0; i < layout.length; i++) {
22
- const item = layout[i];
23
- if (item !== void 0) {
24
- const bottomY = item.y + item.h;
25
- if (bottomY > max) max = bottomY;
26
- }
27
- }
28
- return max;
29
- }
30
- /** Get a layout item by its ID. */
31
- function getLayoutItem(layout, id) {
32
- for (let i = 0; i < layout.length; i++) {
33
- const item = layout[i];
34
- if (item !== void 0 && item.i === id) return item;
35
- }
36
- }
37
- /** Get all static items from the layout. */
38
- function getStatics(layout) {
39
- return layout.filter((l) => l.static === true);
40
- }
41
- /** Clone a layout item (shallow copy, boolean flags normalized). */
42
- function cloneLayoutItem(layoutItem) {
43
- return {
44
- i: layoutItem.i,
45
- x: layoutItem.x,
46
- y: layoutItem.y,
47
- w: layoutItem.w,
48
- h: layoutItem.h,
49
- minW: layoutItem.minW,
50
- maxW: layoutItem.maxW,
51
- minH: layoutItem.minH,
52
- maxH: layoutItem.maxH,
53
- moved: Boolean(layoutItem.moved),
54
- static: Boolean(layoutItem.static),
55
- isDraggable: layoutItem.isDraggable,
56
- isResizable: layoutItem.isResizable,
57
- resizeHandles: layoutItem.resizeHandles,
58
- constraints: layoutItem.constraints,
59
- isBounded: layoutItem.isBounded
60
- };
61
- }
62
- /** Clone an entire layout. */
63
- function cloneLayout(layout) {
64
- const newLayout = new Array(layout.length);
65
- for (let i = 0; i < layout.length; i++) {
66
- const item = layout[i];
67
- if (item !== void 0) newLayout[i] = cloneLayoutItem(item);
68
- }
69
- return newLayout;
70
- }
71
- /** Replace a layout item in a layout (matched by `i`). Other items untouched. */
72
- function modifyLayout(layout, layoutItem) {
73
- const newLayout = new Array(layout.length);
74
- for (let i = 0; i < layout.length; i++) {
75
- const item = layout[i];
76
- if (item !== void 0) if (layoutItem.i === item.i) newLayout[i] = layoutItem;
77
- else newLayout[i] = item;
78
- }
79
- return newLayout;
80
- }
81
- /**
82
- * Ensure all layout items fit within the grid bounds.
83
- *
84
- * **IMPORTANT**: mutates the layout items in place for performance. Clone the
85
- * layout first (e.g. with `cloneLayout()`) if you need immutability.
86
- */
87
- function correctBounds(layout, bounds) {
88
- const collidesWith = getStatics(layout);
89
- for (let i = 0; i < layout.length; i++) {
90
- const l = layout[i];
91
- if (l === void 0) continue;
92
- if (l.x + l.w > bounds.cols) l.x = bounds.cols - l.w;
93
- if (l.x < 0) {
94
- l.x = 0;
95
- l.w = bounds.cols;
96
- }
97
- if (!l.static) collidesWith.push(l);
98
- else while (getFirstCollision(collidesWith, l)) l.y++;
99
- }
100
- return layout;
101
- }
102
- /**
103
- * Move a layout element to a new position.
104
- *
105
- * Handles collision detection and cascading movements. Does not compact the
106
- * layout - call the compactor separately.
107
- *
108
- * **Note**: mutates the `l` parameter directly for performance.
109
- */
110
- function moveElement(layout, l, x, y, isUserAction, preventCollision, compactType, cols, allowOverlap) {
111
- if (l.static && l.isDraggable !== true) return [...layout];
112
- if (l.y === y && l.x === x) return [...layout];
113
- const oldX = l.x;
114
- const oldY = l.y;
115
- if (typeof x === "number") l.x = x;
116
- if (typeof y === "number") l.y = y;
117
- l.moved = true;
118
- let sorted = sortLayoutItems(layout, compactType);
119
- if (compactType === "vertical" && typeof y === "number" ? oldY >= y : compactType === "horizontal" && typeof x === "number" ? oldX >= x : false) sorted = sorted.reverse();
120
- const collisions = getAllCollisions(sorted, l);
121
- const hasCollisions = collisions.length > 0;
122
- if (hasCollisions && allowOverlap) return cloneLayout(layout);
123
- if (hasCollisions && preventCollision) {
124
- l.x = oldX;
125
- l.y = oldY;
126
- l.moved = false;
127
- return layout;
128
- }
129
- let resultLayout = [...layout];
130
- for (let i = 0; i < collisions.length; i++) {
131
- const collision = collisions[i];
132
- if (collision === void 0) continue;
133
- if (collision.moved) continue;
134
- if (collision.static) resultLayout = moveElementAwayFromCollision(resultLayout, collision, l, isUserAction, compactType, cols);
135
- else resultLayout = moveElementAwayFromCollision(resultLayout, l, collision, isUserAction, compactType, cols);
136
- }
137
- return resultLayout;
138
- }
139
- /**
140
- * Move an item away from a collision. Attempts to move up/left first if there's
141
- * room, otherwise moves it down/right.
142
- */
143
- function moveElementAwayFromCollision(layout, collidesWith, itemToMove, isUserAction, compactType, cols) {
144
- const compactH = compactType === "horizontal";
145
- const compactV = compactType === "vertical";
146
- const preventCollision = collidesWith.static;
147
- if (isUserAction) {
148
- isUserAction = false;
149
- const fakeItem = {
150
- x: compactH ? Math.max(collidesWith.x - itemToMove.w, 0) : itemToMove.x,
151
- y: compactV ? Math.max(collidesWith.y - itemToMove.h, 0) : itemToMove.y,
152
- w: itemToMove.w,
153
- h: itemToMove.h,
154
- i: "-1"
155
- };
156
- const firstCollision = getFirstCollision(layout, fakeItem);
157
- const collisionNorth = firstCollision !== void 0 && firstCollision.y + firstCollision.h > collidesWith.y;
158
- const collisionWest = firstCollision !== void 0 && collidesWith.x + collidesWith.w > firstCollision.x;
159
- if (!firstCollision) return moveElement(layout, itemToMove, compactH ? fakeItem.x : void 0, compactV ? fakeItem.y : void 0, isUserAction, preventCollision, compactType, cols);
160
- if (collisionNorth && compactV) return moveElement(layout, itemToMove, void 0, itemToMove.y + 1, isUserAction, preventCollision, compactType, cols);
161
- if (collisionNorth && compactType === null) {
162
- collidesWith.y = itemToMove.y;
163
- itemToMove.y = itemToMove.y + itemToMove.h;
164
- return [...layout];
165
- }
166
- if (collisionWest && compactH) return moveElement(layout, collidesWith, itemToMove.x, void 0, isUserAction, preventCollision, compactType, cols);
167
- }
168
- const newX = compactH ? itemToMove.x + 1 : void 0;
169
- const newY = compactV ? itemToMove.y + 1 : void 0;
170
- if (newX === void 0 && newY === void 0) return [...layout];
171
- return moveElement(layout, itemToMove, newX, newY, isUserAction, preventCollision, compactType, cols);
172
- }
173
-
174
- //#endregion
175
- export { bottom, cloneLayout, cloneLayoutItem, correctBounds, getLayoutItem, getStatics, modifyLayout, moveElement };
176
- //# sourceMappingURL=layout.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"layout.js","names":[],"sources":["../../../../../src/components/layout/Board/grid-core/layout.ts"],"sourcesContent":["/**\n * Core layout manipulation utilities.\n *\n * Vendored from react-grid-layout v2 (`src/core/layout.ts`).\n * See ./NOTICE.md for attribution and license.\n *\n * These functions create, modify, and query grid layouts. Most functions treat\n * layouts as immutable and return new arrays/objects, but a few mutate items in\n * place for performance (documented per function).\n */\n\nimport { getAllCollisions, getFirstCollision } from './collision';\nimport { sortLayoutItems } from './sort';\n\nimport type { CompactType, Layout, LayoutItem, Mutable } from './types';\n\n// ============================================================================\n// Layout Queries\n// ============================================================================\n\n/**\n * Get the bottom-most Y coordinate of the layout (max of y + h).\n */\nexport function bottom(layout: Layout): number {\n let max = 0;\n for (let i = 0; i < layout.length; i++) {\n const item = layout[i];\n if (item !== undefined) {\n const bottomY = item.y + item.h;\n if (bottomY > max) max = bottomY;\n }\n }\n return max;\n}\n\n/** Get a layout item by its ID. */\nexport function getLayoutItem(\n layout: Layout,\n id: string,\n): LayoutItem | undefined {\n for (let i = 0; i < layout.length; i++) {\n const item = layout[i];\n if (item !== undefined && item.i === id) {\n return item;\n }\n }\n return undefined;\n}\n\n/** Get all static items from the layout. */\nexport function getStatics(layout: Layout): LayoutItem[] {\n return layout.filter((l): l is LayoutItem => l.static === true);\n}\n\n// ============================================================================\n// Layout Cloning\n// ============================================================================\n\n/** Clone a layout item (shallow copy, boolean flags normalized). */\nexport function cloneLayoutItem(layoutItem: LayoutItem): LayoutItem {\n return {\n i: layoutItem.i,\n x: layoutItem.x,\n y: layoutItem.y,\n w: layoutItem.w,\n h: layoutItem.h,\n minW: layoutItem.minW,\n maxW: layoutItem.maxW,\n minH: layoutItem.minH,\n maxH: layoutItem.maxH,\n moved: Boolean(layoutItem.moved),\n static: Boolean(layoutItem.static),\n isDraggable: layoutItem.isDraggable,\n isResizable: layoutItem.isResizable,\n resizeHandles: layoutItem.resizeHandles,\n constraints: layoutItem.constraints,\n isBounded: layoutItem.isBounded,\n };\n}\n\n/** Clone an entire layout. */\nexport function cloneLayout(layout: Layout): LayoutItem[] {\n const newLayout: LayoutItem[] = new Array(layout.length);\n for (let i = 0; i < layout.length; i++) {\n const item = layout[i];\n if (item !== undefined) {\n newLayout[i] = cloneLayoutItem(item);\n }\n }\n return newLayout;\n}\n\n// ============================================================================\n// Layout Modification\n// ============================================================================\n\n/** Replace a layout item in a layout (matched by `i`). Other items untouched. */\nexport function modifyLayout(\n layout: Layout,\n layoutItem: LayoutItem,\n): LayoutItem[] {\n const newLayout: LayoutItem[] = new Array(layout.length);\n for (let i = 0; i < layout.length; i++) {\n const item = layout[i];\n if (item !== undefined) {\n if (layoutItem.i === item.i) {\n newLayout[i] = layoutItem;\n } else {\n newLayout[i] = item;\n }\n }\n }\n return newLayout;\n}\n\n/**\n * Apply a transformation to a layout item. Finds the item by key, clones it,\n * applies the callback, and returns [new layout, modified item | null].\n */\nexport function withLayoutItem(\n layout: Layout,\n itemKey: string,\n cb: (item: LayoutItem) => LayoutItem,\n): [LayoutItem[], LayoutItem | null] {\n let item = getLayoutItem(layout, itemKey);\n if (!item) {\n return [[...layout], null];\n }\n\n item = cb(cloneLayoutItem(item));\n const newLayout = modifyLayout(layout, item);\n\n return [newLayout, item];\n}\n\n// ============================================================================\n// Bounds Correction\n// ============================================================================\n\n/**\n * Ensure all layout items fit within the grid bounds.\n *\n * **IMPORTANT**: mutates the layout items in place for performance. Clone the\n * layout first (e.g. with `cloneLayout()`) if you need immutability.\n */\nexport function correctBounds(\n layout: Mutable<LayoutItem>[],\n bounds: { cols: number },\n): LayoutItem[] {\n const collidesWith = getStatics(layout);\n\n for (let i = 0; i < layout.length; i++) {\n const l = layout[i];\n if (l === undefined) continue;\n\n // Overflows right\n if (l.x + l.w > bounds.cols) {\n l.x = bounds.cols - l.w;\n }\n\n // Overflows left\n if (l.x < 0) {\n l.x = 0;\n l.w = bounds.cols;\n }\n\n if (!l.static) {\n collidesWith.push(l);\n } else {\n // Static items that collide with other statics must be moved down\n while (getFirstCollision(collidesWith, l)) {\n l.y++;\n }\n }\n }\n\n return layout;\n}\n\n// ============================================================================\n// Move Operations\n// ============================================================================\n\n/**\n * Move a layout element to a new position.\n *\n * Handles collision detection and cascading movements. Does not compact the\n * layout - call the compactor separately.\n *\n * **Note**: mutates the `l` parameter directly for performance.\n */\nexport function moveElement(\n layout: Layout,\n l: LayoutItem,\n x: number | undefined,\n y: number | undefined,\n isUserAction: boolean | undefined,\n preventCollision: boolean | undefined,\n compactType: CompactType,\n cols: number,\n allowOverlap?: boolean,\n): LayoutItem[] {\n // Static items can't be moved unless explicitly draggable\n if (l.static && l.isDraggable !== true) {\n return [...layout];\n }\n\n // Short-circuit if position unchanged\n if (l.y === y && l.x === x) {\n return [...layout];\n }\n\n const oldX = l.x;\n const oldY = l.y;\n\n // Update position (mutates l directly - see JSDoc note)\n if (typeof x === 'number') (l as Mutable<LayoutItem>).x = x;\n if (typeof y === 'number') (l as Mutable<LayoutItem>).y = y;\n (l as Mutable<LayoutItem>).moved = true;\n\n // Sort for proper collision detection order\n let sorted = sortLayoutItems(layout, compactType);\n const movingUp =\n compactType === 'vertical' && typeof y === 'number'\n ? oldY >= y\n : compactType === 'horizontal' && typeof x === 'number'\n ? oldX >= x\n : false;\n\n if (movingUp) {\n sorted = sorted.reverse();\n }\n\n const collisions = getAllCollisions(sorted, l);\n const hasCollisions = collisions.length > 0;\n\n // Handle overlap mode - just clone and return\n if (hasCollisions && allowOverlap) {\n return cloneLayout(layout);\n }\n\n // Handle prevent collision mode - revert position.\n // Return same reference to signal no change occurred.\n if (hasCollisions && preventCollision) {\n (l as Mutable<LayoutItem>).x = oldX;\n (l as Mutable<LayoutItem>).y = oldY;\n (l as Mutable<LayoutItem>).moved = false;\n return layout as LayoutItem[];\n }\n\n // Resolve collisions by moving other items\n let resultLayout: LayoutItem[] = [...layout];\n for (let i = 0; i < collisions.length; i++) {\n const collision = collisions[i];\n if (collision === undefined) continue;\n\n // Skip already-moved items to prevent infinite loops\n if (collision.moved) continue;\n\n // Static items can't be moved - move the dragged item instead\n if (collision.static) {\n resultLayout = moveElementAwayFromCollision(\n resultLayout,\n collision,\n l,\n isUserAction,\n compactType,\n cols,\n );\n } else {\n resultLayout = moveElementAwayFromCollision(\n resultLayout,\n l,\n collision,\n isUserAction,\n compactType,\n cols,\n );\n }\n }\n\n return resultLayout;\n}\n\n/**\n * Move an item away from a collision. Attempts to move up/left first if there's\n * room, otherwise moves it down/right.\n */\nexport function moveElementAwayFromCollision(\n layout: Layout,\n collidesWith: LayoutItem,\n itemToMove: LayoutItem,\n isUserAction: boolean | undefined,\n compactType: CompactType,\n cols: number,\n): LayoutItem[] {\n const compactH = compactType === 'horizontal';\n const compactV = compactType === 'vertical';\n const preventCollision = collidesWith.static;\n\n // Try to move up/left first (only on primary collision from user action)\n if (isUserAction) {\n isUserAction = false; // Only try this once\n\n // Create a fake item to test if there's room above/left\n const fakeItem: LayoutItem = {\n x: compactH ? Math.max(collidesWith.x - itemToMove.w, 0) : itemToMove.x,\n y: compactV ? Math.max(collidesWith.y - itemToMove.h, 0) : itemToMove.y,\n w: itemToMove.w,\n h: itemToMove.h,\n i: '-1',\n };\n\n const firstCollision = getFirstCollision(layout, fakeItem);\n const collisionNorth =\n firstCollision !== undefined &&\n firstCollision.y + firstCollision.h > collidesWith.y;\n const collisionWest =\n firstCollision !== undefined &&\n collidesWith.x + collidesWith.w > firstCollision.x;\n\n // No collision above/left - we can move there\n if (!firstCollision) {\n return moveElement(\n layout,\n itemToMove,\n compactH ? fakeItem.x : undefined,\n compactV ? fakeItem.y : undefined,\n isUserAction,\n preventCollision,\n compactType,\n cols,\n );\n }\n\n // Handle specific collision cases\n if (collisionNorth && compactV) {\n return moveElement(\n layout,\n itemToMove,\n undefined,\n itemToMove.y + 1,\n isUserAction,\n preventCollision,\n compactType,\n cols,\n );\n }\n\n if (collisionNorth && compactType === null) {\n // Swap positions in free-form mode\n (collidesWith as Mutable<LayoutItem>).y = itemToMove.y;\n (itemToMove as Mutable<LayoutItem>).y = itemToMove.y + itemToMove.h;\n return [...layout];\n }\n\n if (collisionWest && compactH) {\n return moveElement(\n layout,\n collidesWith,\n itemToMove.x,\n undefined,\n isUserAction,\n preventCollision,\n compactType,\n cols,\n );\n }\n }\n\n // Default: move down/right by 1\n const newX = compactH ? itemToMove.x + 1 : undefined;\n const newY = compactV ? itemToMove.y + 1 : undefined;\n\n if (newX === undefined && newY === undefined) {\n return [...layout];\n }\n\n return moveElement(\n layout,\n itemToMove,\n newX,\n newY,\n isUserAction,\n preventCollision,\n compactType,\n cols,\n );\n}\n\n// ============================================================================\n// Validation\n// ============================================================================\n\n/** Validate that a layout has the required numeric properties. */\nexport function validateLayout(\n layout: Layout,\n contextName: string = 'Layout',\n): void {\n const requiredProps = ['x', 'y', 'w', 'h'] as const;\n\n if (!Array.isArray(layout)) {\n throw new Error(`${contextName} must be an array!`);\n }\n\n for (let i = 0; i < layout.length; i++) {\n const item = layout[i];\n if (item === undefined) continue;\n\n for (const key of requiredProps) {\n const value = item[key];\n if (typeof value !== 'number' || Number.isNaN(value)) {\n throw new Error(\n `Board: ${contextName}[${i}].${key} must be a number! ` +\n `Received: ${String(value)} (${typeof value})`,\n );\n }\n }\n\n if (item.i !== undefined && typeof item.i !== 'string') {\n throw new Error(\n `Board: ${contextName}[${i}].i must be a string! ` +\n `Received: ${String(item.i)} (${typeof item.i})`,\n );\n }\n }\n}\n"],"mappings":"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"}
@@ -1,37 +0,0 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c26fe9d | Cube Dev Team */
2
- //#region src/components/layout/Board/grid-core/sort.ts
3
- /**
4
- * Sort layout items based on the compaction type.
5
- *
6
- * - Vertical compaction: sort by row (y) then column (x)
7
- * - Horizontal compaction: sort by column (x) then row (y)
8
- * - No compaction (null): return original order
9
- */
10
- function sortLayoutItems(layout, compactType) {
11
- if (compactType === "horizontal") return sortLayoutItemsByColRow(layout);
12
- if (compactType === "vertical") return sortLayoutItemsByRowCol(layout);
13
- if (compactType === "wrap") return sortLayoutItemsByRowCol(layout);
14
- return [...layout];
15
- }
16
- /**
17
- * Sort layout items by row ascending, then column ascending.
18
- */
19
- function sortLayoutItemsByRowCol(layout) {
20
- return [...layout].sort((a, b) => {
21
- if (a.y !== b.y) return a.y - b.y;
22
- return a.x - b.x;
23
- });
24
- }
25
- /**
26
- * Sort layout items by column ascending, then row ascending.
27
- */
28
- function sortLayoutItemsByColRow(layout) {
29
- return [...layout].sort((a, b) => {
30
- if (a.x !== b.x) return a.x - b.x;
31
- return a.y - b.y;
32
- });
33
- }
34
-
35
- //#endregion
36
- export { sortLayoutItems, sortLayoutItemsByColRow, sortLayoutItemsByRowCol };
37
- //# sourceMappingURL=sort.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sort.js","names":[],"sources":["../../../../../src/components/layout/Board/grid-core/sort.ts"],"sourcesContent":["/**\n * Sorting utilities for grid layouts.\n *\n * Vendored from react-grid-layout v2 (`src/core/sort.ts`).\n * See ./NOTICE.md for attribution and license.\n */\n\nimport type { CompactType, Layout, LayoutItem } from './types';\n\n/**\n * Sort layout items based on the compaction type.\n *\n * - Vertical compaction: sort by row (y) then column (x)\n * - Horizontal compaction: sort by column (x) then row (y)\n * - No compaction (null): return original order\n */\nexport function sortLayoutItems(\n layout: Layout,\n compactType: CompactType,\n): LayoutItem[] {\n if (compactType === 'horizontal') {\n return sortLayoutItemsByColRow(layout);\n }\n if (compactType === 'vertical') {\n return sortLayoutItemsByRowCol(layout);\n }\n if (compactType === 'wrap') {\n // Wrap mode uses row-col order (reading order: left-to-right, top-to-bottom)\n return sortLayoutItemsByRowCol(layout);\n }\n // No compaction - return a copy to maintain immutability\n return [...layout];\n}\n\n/**\n * Sort layout items by row ascending, then column ascending.\n */\nexport function sortLayoutItemsByRowCol(layout: Layout): LayoutItem[] {\n return [...layout].sort((a, b) => {\n if (a.y !== b.y) {\n return a.y - b.y;\n }\n return a.x - b.x;\n });\n}\n\n/**\n * Sort layout items by column ascending, then row ascending.\n */\nexport function sortLayoutItemsByColRow(layout: Layout): LayoutItem[] {\n return [...layout].sort((a, b) => {\n if (a.x !== b.x) {\n return a.x - b.x;\n }\n return a.y - b.y;\n });\n}\n"],"mappings":";;;;;;;;;AAgBA,SAAgB,gBACd,QACA,aACc;AACd,KAAI,gBAAgB,aAClB,QAAO,wBAAwB,OAAO;AAExC,KAAI,gBAAgB,WAClB,QAAO,wBAAwB,OAAO;AAExC,KAAI,gBAAgB,OAElB,QAAO,wBAAwB,OAAO;AAGxC,QAAO,CAAC,GAAG,OAAO;;;;;AAMpB,SAAgB,wBAAwB,QAA8B;AACpE,QAAO,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM;AAChC,MAAI,EAAE,MAAM,EAAE,EACZ,QAAO,EAAE,IAAI,EAAE;AAEjB,SAAO,EAAE,IAAI,EAAE;GACf;;;;;AAMJ,SAAgB,wBAAwB,QAA8B;AACpE,QAAO,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM;AAChC,MAAI,EAAE,MAAM,EAAE,EACZ,QAAO,EAAE,IAAI,EAAE;AAEjB,SAAO,EAAE,IAAI,EAAE;GACf"}
@@ -1,168 +0,0 @@
1
-
2
- //#region src/components/layout/Board/grid-core/types.d.ts
3
- /**
4
- * Core types for the grid layout engine.
5
- *
6
- * Vendored and trimmed from react-grid-layout v2 (`src/core/types.ts`).
7
- * See ./NOTICE.md for attribution and license.
8
- *
9
- * These types are framework-agnostic and describe the data structures used by
10
- * the layout algorithms.
11
- */
12
- /**
13
- * Axis identifiers for resize handles.
14
- * - Cardinal: 'n', 's', 'e', 'w' (north, south, east, west)
15
- * - Diagonal: 'ne', 'nw', 'se', 'sw'
16
- */
17
- type ResizeHandleAxis = 's' | 'w' | 'e' | 'n' | 'sw' | 'nw' | 'se' | 'ne';
18
- /**
19
- * A single item in the grid layout.
20
- *
21
- * Position (x, y) is in grid units, not pixels. Size (w, h) is in grid units.
22
- */
23
- interface LayoutItem {
24
- /** Unique identifier for this item */
25
- i: string;
26
- /** X position in grid units (0-indexed from left) */
27
- x: number;
28
- /** Y position in grid units (0-indexed from top) */
29
- y: number;
30
- /** Width in grid units */
31
- w: number;
32
- /** Height in grid units */
33
- h: number;
34
- /** Minimum width in grid units */
35
- minW?: number;
36
- /** Minimum height in grid units */
37
- minH?: number;
38
- /** Maximum width in grid units */
39
- maxW?: number;
40
- /** Maximum height in grid units */
41
- maxH?: number;
42
- /**
43
- * If true, item cannot be dragged or resized, and other items will move
44
- * around it during compaction.
45
- */
46
- static?: boolean;
47
- /**
48
- * If false, item cannot be dragged (but may still be resizable).
49
- * Overrides grid-level isDraggable for this item.
50
- */
51
- isDraggable?: boolean;
52
- /**
53
- * If false, item cannot be resized (but may still be draggable).
54
- * Overrides grid-level isResizable for this item.
55
- */
56
- isResizable?: boolean;
57
- /**
58
- * Which resize handles to show for this item.
59
- * Overrides grid-level resizeHandles for this item.
60
- */
61
- resizeHandles?: ResizeHandleAxis[];
62
- /**
63
- * If true, item is constrained to the grid container bounds.
64
- * Overrides grid-level isBounded for this item.
65
- */
66
- isBounded?: boolean;
67
- /**
68
- * Internal flag set during drag/resize operations to indicate the item has
69
- * moved from its original position.
70
- * @internal
71
- */
72
- moved?: boolean;
73
- /**
74
- * Per-item layout constraints. Applied in addition to grid-level constraints.
75
- */
76
- constraints?: LayoutConstraint[];
77
- }
78
- /**
79
- * A layout is a readonly array of layout items. Treat layouts as immutable.
80
- */
81
- type Layout = readonly LayoutItem[];
82
- /**
83
- * Type of compaction to apply to the layout.
84
- * - 'vertical': Items compact upward (default)
85
- * - 'horizontal': Items compact leftward
86
- * - 'wrap': Items arranged in wrapped-paragraph style (like words in text)
87
- * - null: No compaction (free-form positioning)
88
- */
89
- type CompactType = 'horizontal' | 'vertical' | 'wrap' | null;
90
- /**
91
- * Interface for layout compaction strategies.
92
- *
93
- * Implement this interface to create custom compaction algorithms.
94
- */
95
- interface Compactor {
96
- /** Compaction type identifier */
97
- readonly type: CompactType;
98
- /**
99
- * Whether items can overlap (stack on top of each other).
100
- *
101
- * When true items can be placed on top of other items, dragging into another
102
- * item does NOT push it away, and compaction is skipped after drag/resize.
103
- */
104
- readonly allowOverlap: boolean;
105
- /**
106
- * Whether to block movement that would cause collision.
107
- *
108
- * When true (and allowOverlap is false) dragging into another item is blocked
109
- * (item snaps back) and other items are NOT pushed away. Only affects
110
- * drag/resize, not compaction. Has no effect when allowOverlap is true.
111
- */
112
- readonly preventCollision?: boolean;
113
- /**
114
- * Compact the layout.
115
- *
116
- * @param layout - The layout to compact
117
- * @param cols - Number of columns in the grid
118
- * @returns The compacted layout
119
- */
120
- compact(layout: Layout, cols: number): Layout;
121
- }
122
- /** Context provided to constraint functions during drag/resize operations. */
123
- interface ConstraintContext {
124
- /** Number of columns in the grid */
125
- cols: number;
126
- /** Maximum number of rows (Infinity if unbounded) */
127
- maxRows: number;
128
- /** Container width in pixels */
129
- containerWidth: number;
130
- /** Container height in pixels (may be 0 if auto-height) */
131
- containerHeight: number;
132
- /** Row height in pixels */
133
- rowHeight: number;
134
- /** Margin between items [x, y] in pixels */
135
- margin: readonly [number, number];
136
- /** Current layout state */
137
- layout: Layout;
138
- }
139
- /**
140
- * Interface for layout constraints.
141
- *
142
- * Implement this interface to create custom position/size constraints.
143
- * Built-in constraints: gridBounds, minMaxSize, containerBounds, boundedX,
144
- * boundedY.
145
- */
146
- interface LayoutConstraint {
147
- /** Constraint identifier for debugging */
148
- readonly name: string;
149
- /**
150
- * Constrain position during drag operations. Called after grid unit
151
- * conversion, before layout update.
152
- */
153
- constrainPosition?(item: LayoutItem, x: number, y: number, context: ConstraintContext): {
154
- x: number;
155
- y: number;
156
- };
157
- /**
158
- * Constrain size during resize operations. Called after grid unit conversion,
159
- * before layout update.
160
- */
161
- constrainSize?(item: LayoutItem, w: number, h: number, handle: ResizeHandleAxis, context: ConstraintContext): {
162
- w: number;
163
- h: number;
164
- };
165
- }
166
- //#endregion
167
- export { CompactType, Compactor, Layout, LayoutConstraint, LayoutItem, ResizeHandleAxis };
168
- //# sourceMappingURL=types.d.ts.map
@@ -1,21 +0,0 @@
1
-
2
- import { Compactor, Layout, LayoutConstraint, LayoutItem, ResizeHandleAxis } from "./grid-core/types.js";
3
- import { getCompactor, horizontalCompactor, noCompactor, verticalCompactor } from "./grid-core/compactors.js";
4
- import { aspectRatio, boundedX, boundedY, containerBounds, gridBounds, maxSize, minMaxSize, minSize, snapToGrid } from "./grid-core/constraints.js";
5
- import { BoardCompactType, BoardGridLines, BoardInteractionInfo, CubeBoardProps } from "./Board.js";
6
- import { BreakpointCols, Breakpoints, ResponsiveLayouts } from "./responsive-utils.js";
7
- import { BoardResponsive, CubeBoardResponsiveProps } from "./BoardResponsive.js";
8
- import { WidgetTransferInfo } from "./board-context.js";
9
- import { BoardProvider, CubeBoardProviderProps } from "./BoardProvider.js";
10
- import { CubeBoardWidgetProps, Widget } from "./Widget.js";
11
- import * as react from "react";
12
-
13
- //#region src/components/layout/Board/index.d.ts
14
- declare const Board: react.ForwardRefExoticComponent<CubeBoardProps & react.RefAttributes<HTMLDivElement>> & {
15
- Widget: typeof Widget;
16
- Provider: typeof BoardProvider;
17
- Responsive: react.ForwardRefExoticComponent<CubeBoardResponsiveProps & react.RefAttributes<HTMLDivElement>>;
18
- };
19
- //#endregion
20
- export { Board };
21
- //# sourceMappingURL=index.d.ts.map
@@ -1,18 +0,0 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c26fe9d | Cube Dev Team */
2
- import { getCompactor, horizontalCompactor, noCompactor, verticalCompactor } from "./grid-core/compactors.js";
3
- import { aspectRatio, boundedX, boundedY, containerBounds, gridBounds, maxSize, minMaxSize, minSize, snapToGrid } from "./grid-core/constraints.js";
4
- import { BoardProvider } from "./BoardProvider.js";
5
- import { Board as Board$1 } from "./Board.js";
6
- import { BoardResponsive } from "./BoardResponsive.js";
7
- import { Widget } from "./Widget.js";
8
-
9
- //#region src/components/layout/Board/index.tsx
10
- const Board = Object.assign(Board$1, {
11
- Widget,
12
- Provider: BoardProvider,
13
- Responsive: BoardResponsive
14
- });
15
-
16
- //#endregion
17
- export { Board };
18
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["BoardBase"],"sources":["../../../../src/components/layout/Board/index.tsx"],"sourcesContent":["import { Board as BoardBase } from './Board';\nimport { BoardProvider } from './BoardProvider';\nimport { BoardResponsive } from './BoardResponsive';\nimport { Widget } from './Widget';\n\nconst Board = Object.assign(BoardBase, {\n Widget,\n Provider: BoardProvider,\n Responsive: BoardResponsive,\n});\n\nexport { Board };\nexport { BoardProvider };\nexport { BoardResponsive };\nexport { Widget as BoardWidget };\n\nexport type {\n CubeBoardProps,\n BoardCompactType,\n BoardGridLines,\n BoardInteractionInfo,\n} from './Board';\nexport type { CubeBoardResponsiveProps } from './BoardResponsive';\nexport type { CubeBoardWidgetProps } from './Widget';\nexport type { CubeBoardProviderProps } from './BoardProvider';\nexport type { WidgetTransferInfo } from './board-context';\nexport type {\n Breakpoints as BoardBreakpoints,\n BreakpointCols as BoardBreakpointCols,\n ResponsiveLayouts as BoardResponsiveLayouts,\n} from './responsive-utils';\n\nexport type {\n Layout,\n LayoutItem,\n ResizeHandleAxis,\n Compactor,\n LayoutConstraint,\n PositionParams,\n} from './grid-core';\n\nexport {\n verticalCompactor,\n horizontalCompactor,\n noCompactor,\n getCompactor,\n gridBounds,\n minMaxSize,\n containerBounds,\n boundedX,\n boundedY,\n aspectRatio,\n snapToGrid,\n minSize,\n maxSize,\n} from './grid-core';\n"],"mappings":";;;;;;;;;AAKA,MAAM,QAAQ,OAAO,OAAOA,SAAW;CACrC;CACA,UAAU;CACV,YAAY;CACb,CAAC"}