@cube-dev/ui-kit 0.70.0 → 0.71.1

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 (490) hide show
  1. package/CHANGELOG.md +13 -1
  2. package/es/_internal/hooks/index.js +1 -1
  3. package/es/_internal/hooks/use-chained-callback.js +1 -1
  4. package/es/_internal/hooks/use-debounced-value.js +1 -1
  5. package/es/_internal/hooks/use-deprecation-warning.js +1 -1
  6. package/es/_internal/hooks/use-effect-once.js +1 -1
  7. package/es/_internal/hooks/use-event.js +1 -1
  8. package/es/_internal/hooks/use-is-first-render.js +1 -1
  9. package/es/_internal/hooks/use-sync-ref.js +1 -1
  10. package/es/_internal/hooks/use-timer/index.js +1 -1
  11. package/es/_internal/hooks/use-timer/timer.js +1 -1
  12. package/es/_internal/hooks/use-timer/use-timer.js +1 -1
  13. package/es/_internal/hooks/use-update-effect.js +1 -1
  14. package/es/_internal/hooks/use-warn.js +1 -1
  15. package/es/_internal/index.js +1 -1
  16. package/es/components/Block.js +1 -1
  17. package/es/components/GlobalStyles.js +1 -1
  18. package/es/components/GridProvider.js +1 -1
  19. package/es/components/HiddenInput.js +1 -1
  20. package/es/components/OpenTrasition.js +1 -1
  21. package/es/components/Root.js +1 -1
  22. package/es/components/actions/Action/Action.js +1 -1
  23. package/es/components/actions/Button/Button.js +1 -1
  24. package/es/components/actions/Button/index.js +1 -1
  25. package/es/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  26. package/es/components/actions/CommandMenu/CommandMenu.js +1 -1
  27. package/es/components/actions/CommandMenu/index.js +1 -1
  28. package/es/components/actions/CommandMenu/styled.js +1 -1
  29. package/es/components/actions/Menu/Menu.js +1 -1
  30. package/es/components/actions/Menu/MenuItem.js +1 -1
  31. package/es/components/actions/Menu/MenuSection.js +1 -1
  32. package/es/components/actions/Menu/MenuTrigger.js +1 -1
  33. package/es/components/actions/Menu/context.js +1 -1
  34. package/es/components/actions/Menu/index.js +1 -1
  35. package/es/components/actions/Menu/styled.js +1 -1
  36. package/es/components/actions/index.js +1 -1
  37. package/es/components/actions/use-action.js +1 -1
  38. package/es/components/actions/use-anchored-menu.js +1 -1
  39. package/es/components/actions/use-context-menu.js +1 -1
  40. package/es/components/content/ActiveZone/ActiveZone.js +1 -1
  41. package/es/components/content/Alert/Alert.js +1 -1
  42. package/es/components/content/Alert/index.js +1 -1
  43. package/es/components/content/Alert/types.js +1 -1
  44. package/es/components/content/Alert/use-alert.js +1 -1
  45. package/es/components/content/Avatar/Avatar.js +1 -1
  46. package/es/components/content/Badge/Badge.js +1 -1
  47. package/es/components/content/Card/Card.js +1 -1
  48. package/es/components/content/Content.js +1 -1
  49. package/es/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  50. package/es/components/content/CopyPasteBlock/index.js +1 -1
  51. package/es/components/content/CopySnippet/CopySnippet.js +1 -1
  52. package/es/components/content/CopySnippet/index.js +1 -1
  53. package/es/components/content/Divider.js +1 -1
  54. package/es/components/content/Footer.js +1 -1
  55. package/es/components/content/Header.js +1 -1
  56. package/es/components/content/HotKeys/HotKeys.js +1 -1
  57. package/es/components/content/HotKeys/index.js +1 -1
  58. package/es/components/content/Paragraph.js +1 -1
  59. package/es/components/content/Placeholder/Placeholder.js +1 -1
  60. package/es/components/content/PrismCode/PrismCode.js +1 -1
  61. package/es/components/content/PrismCode/prismSetup.js +1 -1
  62. package/es/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  63. package/es/components/content/Result/Result.js +1 -1
  64. package/es/components/content/Skeleton/Skeleton.js +1 -1
  65. package/es/components/content/Tag/Tag.js +1 -1
  66. package/es/components/content/Text.js +1 -1
  67. package/es/components/content/Title.js +1 -1
  68. package/es/components/fields/Checkbox/Checkbox.js +1 -1
  69. package/es/components/fields/Checkbox/CheckboxGroup.js +1 -1
  70. package/es/components/fields/Checkbox/context.js +1 -1
  71. package/es/components/fields/Checkbox/index.js +1 -1
  72. package/es/components/fields/ComboBox/ComboBox.js +5 -5
  73. package/es/components/fields/ComboBox/index.js +1 -1
  74. package/es/components/fields/DatePicker/DateInput.js +1 -1
  75. package/es/components/fields/DatePicker/DateInputBase.js +1 -1
  76. package/es/components/fields/DatePicker/DatePicker.js +1 -1
  77. package/es/components/fields/DatePicker/DatePickerButton.js +1 -1
  78. package/es/components/fields/DatePicker/DatePickerElement.js +1 -1
  79. package/es/components/fields/DatePicker/DatePickerInput.js +1 -1
  80. package/es/components/fields/DatePicker/DatePickerSegment.js +1 -1
  81. package/es/components/fields/DatePicker/DateRangePicker.js +1 -1
  82. package/es/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  83. package/es/components/fields/DatePicker/TimeInput.js +1 -1
  84. package/es/components/fields/DatePicker/index.js +1 -1
  85. package/es/components/fields/DatePicker/intl.js +1 -1
  86. package/es/components/fields/DatePicker/parseDate.js +1 -1
  87. package/es/components/fields/DatePicker/props.js +1 -1
  88. package/es/components/fields/DatePicker/types.js +1 -1
  89. package/es/components/fields/DatePicker/utils.js +1 -1
  90. package/es/components/fields/FileInput/FileInput.js +1 -1
  91. package/es/components/fields/FilterListBox/FilterListBox.js +1 -1
  92. package/es/components/fields/FilterListBox/index.js +1 -1
  93. package/es/components/fields/FilterPicker/FilterPicker.js +12 -11
  94. package/es/components/fields/FilterPicker/index.js +1 -1
  95. package/es/components/fields/Input/Input.js +1 -1
  96. package/es/components/fields/Input/index.js +1 -1
  97. package/es/components/fields/ListBox/ListBox.js +1 -1
  98. package/es/components/fields/ListBox/index.js +1 -1
  99. package/es/components/fields/NumberInput/NumberInput.js +1 -1
  100. package/es/components/fields/NumberInput/StepButton.js +1 -1
  101. package/es/components/fields/PasswordInput/PasswordInput.js +1 -1
  102. package/es/components/fields/RadioGroup/Radio.js +1 -1
  103. package/es/components/fields/RadioGroup/RadioGroup.js +1 -1
  104. package/es/components/fields/RadioGroup/context.js +1 -1
  105. package/es/components/fields/RadioGroup/index.js +1 -1
  106. package/es/components/fields/SearchInput/SearchInput.js +1 -1
  107. package/es/components/fields/SearchInput/index.js +1 -1
  108. package/es/components/fields/Select/Select.js +1 -1
  109. package/es/components/fields/Select/index.js +1 -1
  110. package/es/components/fields/Slider/Gradation.js +1 -1
  111. package/es/components/fields/Slider/Header.js +1 -1
  112. package/es/components/fields/Slider/RangeSlider.js +7 -4
  113. package/es/components/fields/Slider/Slider.js +1 -1
  114. package/es/components/fields/Slider/SliderBase.js +1 -1
  115. package/es/components/fields/Slider/SliderInput.js +1 -1
  116. package/es/components/fields/Slider/SliderThumb.js +1 -1
  117. package/es/components/fields/Slider/SliderTrack.js +4 -2
  118. package/es/components/fields/Slider/elements.js +27 -11
  119. package/es/components/fields/Slider/index.js +1 -1
  120. package/es/components/fields/Slider/types.js +1 -1
  121. package/es/components/fields/Switch/Switch.js +1 -1
  122. package/es/components/fields/Switch/index.js +1 -1
  123. package/es/components/fields/TextArea/TextArea.js +1 -1
  124. package/es/components/fields/TextArea/index.js +1 -1
  125. package/es/components/fields/TextInput/TextInput.js +1 -1
  126. package/es/components/fields/TextInput/TextInputBase.js +1 -1
  127. package/es/components/fields/TextInput/index.js +1 -1
  128. package/es/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  129. package/es/components/fields/TextInputMapper/index.js +1 -1
  130. package/es/components/fields/index.js +1 -1
  131. package/es/components/form/FieldWrapper/FieldWrapper.js +1 -1
  132. package/es/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  133. package/es/components/form/FieldWrapper/index.js +1 -1
  134. package/es/components/form/FieldWrapper/types.js +1 -1
  135. package/es/components/form/Form/Field.js +1 -1
  136. package/es/components/form/Form/Form.js +1 -1
  137. package/es/components/form/Form/ResetButton/ResetButton.js +1 -1
  138. package/es/components/form/Form/ResetButton/index.js +1 -1
  139. package/es/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  140. package/es/components/form/Form/SubmitButton/index.js +1 -1
  141. package/es/components/form/Form/SubmitError.js +1 -1
  142. package/es/components/form/Form/index.js +1 -1
  143. package/es/components/form/Form/types.js +1 -1
  144. package/es/components/form/Form/use-field/index.js +1 -1
  145. package/es/components/form/Form/use-field/types.js +1 -1
  146. package/es/components/form/Form/use-field/use-field-props.js +1 -1
  147. package/es/components/form/Form/use-field/use-field.js +1 -1
  148. package/es/components/form/Form/use-form.js +1 -1
  149. package/es/components/form/Form/validation.js +1 -1
  150. package/es/components/form/Label.js +1 -1
  151. package/es/components/form/index.js +1 -1
  152. package/es/components/form/wrapper.js +1 -1
  153. package/es/components/layout/Flex.js +1 -1
  154. package/es/components/layout/Flow.js +1 -1
  155. package/es/components/layout/Grid.js +1 -1
  156. package/es/components/layout/Panel.js +1 -1
  157. package/es/components/layout/Prefix.js +2 -2
  158. package/es/components/layout/ResizablePanel.js +1 -1
  159. package/es/components/layout/Space.js +1 -1
  160. package/es/components/layout/Suffix.js +2 -2
  161. package/es/components/navigation/LegacyTabs/LegacyTabs.js +1 -1
  162. package/es/components/navigation/Link/Link.js +1 -1
  163. package/es/components/organisms/FileTabs/FileTabs.js +1 -1
  164. package/es/components/organisms/Modal/Modal.js +1 -1
  165. package/es/components/organisms/StatsCard/StatsCard.js +1 -1
  166. package/es/components/other/Base64Upload/Base64Upload.js +1 -1
  167. package/es/components/other/Calendar/Calendar.js +1 -1
  168. package/es/components/other/Calendar/CalendarCell.js +1 -1
  169. package/es/components/other/Calendar/CalendarGrid.js +1 -1
  170. package/es/components/other/Calendar/RangeCalendar.js +1 -1
  171. package/es/components/other/CloudLogo/CloudLogo.js +1 -1
  172. package/es/components/overlays/AlertDialog/AlertDialog.js +1 -1
  173. package/es/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  174. package/es/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  175. package/es/components/overlays/AlertDialog/index.js +1 -1
  176. package/es/components/overlays/AlertDialog/types.js +1 -1
  177. package/es/components/overlays/Dialog/Dialog.js +1 -1
  178. package/es/components/overlays/Dialog/DialogContainer.js +1 -1
  179. package/es/components/overlays/Dialog/DialogForm.js +1 -1
  180. package/es/components/overlays/Dialog/DialogTrigger.js +1 -1
  181. package/es/components/overlays/Dialog/context.js +1 -1
  182. package/es/components/overlays/Dialog/index.js +1 -1
  183. package/es/components/overlays/Dialog/use-dialog-container.js +1 -1
  184. package/es/components/overlays/Modal/Modal.js +1 -1
  185. package/es/components/overlays/Modal/OpenTransition.js +1 -1
  186. package/es/components/overlays/Modal/Overlay.js +1 -1
  187. package/es/components/overlays/Modal/Popover.js +1 -1
  188. package/es/components/overlays/Modal/Tray.js +1 -1
  189. package/es/components/overlays/Modal/Underlay.js +1 -1
  190. package/es/components/overlays/Modal/index.js +1 -1
  191. package/es/components/overlays/Modal/types.js +1 -1
  192. package/es/components/overlays/NewNotifications/Bar/FloatingNotification.js +1 -1
  193. package/es/components/overlays/NewNotifications/Bar/NotificationsBar.js +1 -1
  194. package/es/components/overlays/NewNotifications/Bar/TransitionComponent.js +1 -1
  195. package/es/components/overlays/NewNotifications/Bar/index.js +1 -1
  196. package/es/components/overlays/NewNotifications/Dialog/NotificationsDialogTrigger.js +1 -1
  197. package/es/components/overlays/NewNotifications/Dialog/index.js +1 -1
  198. package/es/components/overlays/NewNotifications/Notification.js +1 -1
  199. package/es/components/overlays/NewNotifications/NotificationView/NotificationAction.js +1 -1
  200. package/es/components/overlays/NewNotifications/NotificationView/NotificationCloseButton.js +1 -1
  201. package/es/components/overlays/NewNotifications/NotificationView/NotificationDescription.js +1 -1
  202. package/es/components/overlays/NewNotifications/NotificationView/NotificationFooter.js +1 -1
  203. package/es/components/overlays/NewNotifications/NotificationView/NotificationHeader.js +1 -1
  204. package/es/components/overlays/NewNotifications/NotificationView/NotificationIcon.js +1 -1
  205. package/es/components/overlays/NewNotifications/NotificationView/NotificationProvider.js +1 -1
  206. package/es/components/overlays/NewNotifications/NotificationView/NotificationView.js +1 -1
  207. package/es/components/overlays/NewNotifications/NotificationView/index.js +1 -1
  208. package/es/components/overlays/NewNotifications/NotificationView/types.js +1 -1
  209. package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsContext.js +1 -1
  210. package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsProvider.js +1 -1
  211. package/es/components/overlays/NewNotifications/NotificationsContext/index.js +1 -1
  212. package/es/components/overlays/NewNotifications/NotificationsContext/use-notifications.js +1 -1
  213. package/es/components/overlays/NewNotifications/NotificationsList/NotificationsList.js +1 -1
  214. package/es/components/overlays/NewNotifications/NotificationsList/NotificationsListItem.js +1 -1
  215. package/es/components/overlays/NewNotifications/NotificationsList/index.js +1 -1
  216. package/es/components/overlays/NewNotifications/NotificationsList/types.js +1 -1
  217. package/es/components/overlays/NewNotifications/hooks/index.js +1 -1
  218. package/es/components/overlays/NewNotifications/hooks/types.js +1 -1
  219. package/es/components/overlays/NewNotifications/hooks/use-notification-list-item.js +1 -1
  220. package/es/components/overlays/NewNotifications/hooks/use-notifications-api.js +1 -1
  221. package/es/components/overlays/NewNotifications/hooks/use-notifications-list.js +1 -1
  222. package/es/components/overlays/NewNotifications/hooks/use-notifications-observer.js +1 -1
  223. package/es/components/overlays/NewNotifications/index.js +1 -1
  224. package/es/components/overlays/NewNotifications/types.js +1 -1
  225. package/es/components/overlays/Notification/Notification.js +1 -1
  226. package/es/components/overlays/OverlayWrapper.js +1 -1
  227. package/es/components/overlays/Toasts/Toast.js +1 -1
  228. package/es/components/overlays/Toasts/index.js +1 -1
  229. package/es/components/overlays/Toasts/types.js +1 -1
  230. package/es/components/overlays/Toasts/use-toasts-api.js +1 -1
  231. package/es/components/overlays/Tooltip/Tooltip.js +2 -2
  232. package/es/components/overlays/Tooltip/TooltipProvider.js +1 -1
  233. package/es/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  234. package/es/components/overlays/Tooltip/context.js +1 -1
  235. package/es/components/overlays/Tooltip/index.js +1 -1
  236. package/es/components/portal/Portal.js +1 -1
  237. package/es/components/portal/PortalProvider.js +1 -1
  238. package/es/components/portal/index.js +1 -1
  239. package/es/components/portal/storybook/templates/CustomRoot.js +1 -1
  240. package/es/components/portal/storybook/templates/PortalOrder.js +1 -1
  241. package/es/components/portal/storybook/templates/basic.js +1 -1
  242. package/es/components/portal/storybook/templates/index.js +1 -1
  243. package/es/components/portal/types.js +1 -1
  244. package/es/components/portal/usePortal.js +1 -1
  245. package/es/components/shared/InvalidIcon.js +1 -1
  246. package/es/components/shared/ValidIcon.js +1 -1
  247. package/es/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  248. package/es/components/status/LoadingAnimation/index.js +1 -1
  249. package/es/components/status/Spin/Cube.js +1 -1
  250. package/es/components/status/Spin/InternalSpinner.js +1 -1
  251. package/es/components/status/Spin/Spin.js +1 -1
  252. package/es/components/status/Spin/SpinsContainer.js +1 -1
  253. package/es/components/status/Spin/index.js +1 -1
  254. package/es/components/status/Spin/types.js +1 -1
  255. package/es/components/status/index.js +1 -1
  256. package/es/data/themes.js +1 -1
  257. package/es/icons/AdjustmentsHorizontalIcon.js +1 -1
  258. package/es/icons/AdjustmentsIcon.js +1 -1
  259. package/es/icons/AiIcon.js +1 -1
  260. package/es/icons/AreaChartIcon.js +1 -1
  261. package/es/icons/BackwardIcon.js +1 -1
  262. package/es/icons/BarChartIcon.js +1 -1
  263. package/es/icons/BellFilledIcon.js +1 -1
  264. package/es/icons/BellIcon.js +1 -1
  265. package/es/icons/BooleanIcon.js +1 -1
  266. package/es/icons/CalendarEditIcon.js +1 -1
  267. package/es/icons/CalendarIcon.js +1 -1
  268. package/es/icons/CaretDownIcon.js +1 -1
  269. package/es/icons/CaretUpIcon.js +1 -1
  270. package/es/icons/ChartAreaStackedIcon.js +1 -1
  271. package/es/icons/ChartAreaStackedPercentageIcon.js +1 -1
  272. package/es/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  273. package/es/icons/ChartBarGroupedIcon.js +1 -1
  274. package/es/icons/ChartBarHorizontalIcon.js +1 -1
  275. package/es/icons/ChartBarLineIcon.js +1 -1
  276. package/es/icons/ChartBarStackedHorizontalIcon.js +1 -1
  277. package/es/icons/ChartBarStackedIcon.js +1 -1
  278. package/es/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  279. package/es/icons/ChartBarStackedPercentageIcon.js +1 -1
  280. package/es/icons/ChartBoxPlot2Icon.js +1 -1
  281. package/es/icons/ChartBoxPlotIcon.js +1 -1
  282. package/es/icons/ChartBubbleIcon.js +1 -1
  283. package/es/icons/ChartDonut2Icon.js +1 -1
  284. package/es/icons/ChartFunnelIcon.js +1 -1
  285. package/es/icons/ChartKPIIcon.js +1 -1
  286. package/es/icons/ChartPie2Icon.js +1 -1
  287. package/es/icons/ChartScatterIcon.js +1 -1
  288. package/es/icons/CheckCircleFilledIcon.js +1 -1
  289. package/es/icons/CheckCircleIcon.js +1 -1
  290. package/es/icons/CheckIcon.js +1 -1
  291. package/es/icons/CircleFilledIcon.js +1 -1
  292. package/es/icons/ClearIcon.js +1 -1
  293. package/es/icons/CloseCircleFilledIcon.js +1 -1
  294. package/es/icons/CloseCircleIcon.js +1 -1
  295. package/es/icons/CloseIcon.js +1 -1
  296. package/es/icons/CodeIcon.js +1 -1
  297. package/es/icons/CopyIcon.js +1 -1
  298. package/es/icons/CountIcon.js +1 -1
  299. package/es/icons/CubeIcon.js +1 -1
  300. package/es/icons/DangerIcon.js +1 -1
  301. package/es/icons/DashboardIcon.js +1 -1
  302. package/es/icons/DatabaseIcon.js +1 -1
  303. package/es/icons/DirectionIcon.js +1 -1
  304. package/es/icons/DonutIcon.js +1 -1
  305. package/es/icons/DownIcon.js +1 -1
  306. package/es/icons/EditIcon.js +1 -1
  307. package/es/icons/ExclamationCircleFilledIcon.js +1 -1
  308. package/es/icons/ExclamationCircleIcon.js +1 -1
  309. package/es/icons/ExclamationIcon.js +1 -1
  310. package/es/icons/EyeIcon.js +1 -1
  311. package/es/icons/EyeInvisibleIcon.js +1 -1
  312. package/es/icons/FilterIcon.js +1 -1
  313. package/es/icons/FolderFilledIcon.js +1 -1
  314. package/es/icons/FolderIcon.js +1 -1
  315. package/es/icons/FolderOpenFilledIcon.js +1 -1
  316. package/es/icons/FolderOpenIcon.js +1 -1
  317. package/es/icons/ForwardIcon.js +1 -1
  318. package/es/icons/HierarchyIcon.js +1 -1
  319. package/es/icons/Icon.js +1 -1
  320. package/es/icons/InfoCircleIcon.js +1 -1
  321. package/es/icons/InfoIcon.js +1 -1
  322. package/es/icons/KeyIcon.js +1 -1
  323. package/es/icons/LeftIcon.js +1 -1
  324. package/es/icons/LineChartIcon.js +1 -1
  325. package/es/icons/LoadingIcon.js +1 -1
  326. package/es/icons/LockFilledIcon.js +1 -1
  327. package/es/icons/LockIcon.js +1 -1
  328. package/es/icons/MoreIcon.js +1 -1
  329. package/es/icons/NotAllowedIcon.js +1 -1
  330. package/es/icons/NumberIcon.js +1 -1
  331. package/es/icons/PauseCircleFilledIcon.js +1 -1
  332. package/es/icons/PauseCircleIcon.js +1 -1
  333. package/es/icons/PauseIcon.js +1 -1
  334. package/es/icons/PieChartIcon.js +1 -1
  335. package/es/icons/PlayCircleIcon.js +1 -1
  336. package/es/icons/PlayIcon.js +1 -1
  337. package/es/icons/PlusIcon.js +1 -1
  338. package/es/icons/ReloadIcon.js +1 -1
  339. package/es/icons/ReportIcon.js +1 -1
  340. package/es/icons/ReturnIcon.js +1 -1
  341. package/es/icons/RightIcon.js +1 -1
  342. package/es/icons/SchemeIcon.js +1 -1
  343. package/es/icons/SearchIcon.js +1 -1
  344. package/es/icons/SettingsIcon.js +1 -1
  345. package/es/icons/ShieldFilledIcon.js +1 -1
  346. package/es/icons/ShieldIcon.js +1 -1
  347. package/es/icons/SlashIcon.js +1 -1
  348. package/es/icons/SparklesIcon.js +1 -1
  349. package/es/icons/SqlIcon.js +1 -1
  350. package/es/icons/StatsIcon.js +1 -1
  351. package/es/icons/StopIcon.js +1 -1
  352. package/es/icons/StringIcon.js +1 -1
  353. package/es/icons/SwitchIcon.js +1 -1
  354. package/es/icons/TableIcon.js +1 -1
  355. package/es/icons/ThumbsDownIcon.js +1 -1
  356. package/es/icons/ThumbsUpIcon.js +1 -1
  357. package/es/icons/ThunderboltCrossedIcon.js +1 -1
  358. package/es/icons/ThunderboltFilledIcon.js +1 -1
  359. package/es/icons/ThunderboltIcon.js +1 -1
  360. package/es/icons/TimeIcon.js +1 -1
  361. package/es/icons/UnlockIcon.js +1 -1
  362. package/es/icons/UpIcon.js +1 -1
  363. package/es/icons/UserGroupIcon.js +1 -1
  364. package/es/icons/UserIcon.js +1 -1
  365. package/es/icons/UserLockIcon.js +1 -1
  366. package/es/icons/ViewIcon.js +1 -1
  367. package/es/icons/WarningFilledIcon.js +1 -1
  368. package/es/icons/WarningIcon.js +1 -1
  369. package/es/icons/add-new-icon.js +1 -1
  370. package/es/icons/index.js +1 -1
  371. package/es/icons/wrap-icon.js +1 -1
  372. package/es/index.js +1 -1
  373. package/es/provider.js +1 -1
  374. package/es/providers/TrackingProvider.js +1 -1
  375. package/es/services/notification.js +1 -1
  376. package/es/shared/form.js +1 -1
  377. package/es/shared/index.js +1 -1
  378. package/es/stories/Form.legacy-stories.js +1 -1
  379. package/es/stories/FormFieldArgs.js +1 -1
  380. package/es/stories/Layout.stories.js +1 -1
  381. package/es/stories/Tasty.stories.js +1 -1
  382. package/es/stories/components/ConfirmDeletionDialogForm.js +1 -1
  383. package/es/stories/components/DialogFormApp.js +1 -1
  384. package/es/stories/components/StyledButton.js +1 -1
  385. package/es/stories/lists/baseProps.js +1 -1
  386. package/es/tasty/index.js +1 -1
  387. package/es/tasty/parser/classify.js +186 -0
  388. package/es/tasty/parser/const.js +36 -0
  389. package/es/tasty/parser/lru.js +73 -0
  390. package/es/tasty/parser/parser.js +104 -0
  391. package/es/tasty/parser/tokenizer.js +73 -0
  392. package/es/tasty/parser/types.js +27 -0
  393. package/es/tasty/providers/BreakpointsProvider.js +1 -1
  394. package/es/tasty/styles/align.js +1 -1
  395. package/es/tasty/styles/border.js +4 -2
  396. package/es/tasty/styles/boxShadow.combinator.js +1 -1
  397. package/es/tasty/styles/color.js +1 -1
  398. package/es/tasty/styles/createStyle.js +3 -3
  399. package/es/tasty/styles/dimension.js +19 -28
  400. package/es/tasty/styles/display.js +1 -1
  401. package/es/tasty/styles/fade.js +3 -2
  402. package/es/tasty/styles/fill.js +3 -4
  403. package/es/tasty/styles/flow.js +1 -1
  404. package/es/tasty/styles/font.js +1 -1
  405. package/es/tasty/styles/fontStyle.js +1 -1
  406. package/es/tasty/styles/gap.js +3 -2
  407. package/es/tasty/styles/groupRadius.js +3 -2
  408. package/es/tasty/styles/height.js +1 -1
  409. package/es/tasty/styles/index.js +1 -1
  410. package/es/tasty/styles/inset.js +3 -2
  411. package/es/tasty/styles/justify.js +1 -1
  412. package/es/tasty/styles/list.js +1 -1
  413. package/es/tasty/styles/margin.js +3 -2
  414. package/es/tasty/styles/marginBlock.js +3 -2
  415. package/es/tasty/styles/marginInline.js +3 -2
  416. package/es/tasty/styles/outline.js +3 -2
  417. package/es/tasty/styles/padding.js +3 -2
  418. package/es/tasty/styles/paddingBlock.js +3 -2
  419. package/es/tasty/styles/paddingInline.js +3 -2
  420. package/es/tasty/styles/place.js +1 -1
  421. package/es/tasty/styles/predefined.js +1 -1
  422. package/es/tasty/styles/preset.js +3 -2
  423. package/es/tasty/styles/radius.js +3 -2
  424. package/es/tasty/styles/reset.js +3 -2
  425. package/es/tasty/styles/scrollbar.js +4 -3
  426. package/es/tasty/styles/shadow.js +3 -2
  427. package/es/tasty/styles/styledScrollbar.js +1 -1
  428. package/es/tasty/styles/transition.js +8 -2
  429. package/es/tasty/styles/types.js +1 -1
  430. package/es/tasty/styles/width.js +1 -1
  431. package/es/tasty/tasty.js +1 -1
  432. package/es/tasty/types.js +1 -1
  433. package/es/tasty/utils/cache-wrapper.js +1 -1
  434. package/es/tasty/utils/case-converter.js +1 -1
  435. package/es/tasty/utils/colors.js +1 -1
  436. package/es/tasty/utils/dotize.js +1 -1
  437. package/es/tasty/utils/filterBaseProps.js +1 -1
  438. package/es/tasty/utils/getDisplayName.js +1 -1
  439. package/es/tasty/utils/getModCombinations.js +1 -1
  440. package/es/tasty/utils/mergeStyles.js +1 -1
  441. package/es/tasty/utils/modAttrs.js +1 -1
  442. package/es/tasty/utils/renderStyles.js +1 -1
  443. package/es/tasty/utils/responsive.js +1 -1
  444. package/es/tasty/utils/string.js +1 -1
  445. package/es/tasty/utils/styles.js +65 -293
  446. package/es/tasty/utils/warnings.js +1 -1
  447. package/es/tokens.js +1 -1
  448. package/es/type-checks.js +1 -1
  449. package/es/utils/ResizeSensor.js +1 -1
  450. package/es/utils/modules.js +1 -1
  451. package/es/utils/promise.js +1 -1
  452. package/es/utils/random.js +1 -1
  453. package/es/utils/range.js +1 -1
  454. package/es/utils/react/Slots.js +1 -1
  455. package/es/utils/react/chain.js +1 -1
  456. package/es/utils/react/index.js +1 -1
  457. package/es/utils/react/interactions.js +1 -1
  458. package/es/utils/react/isTextOnly.js +1 -1
  459. package/es/utils/react/mapProps.js +1 -1
  460. package/es/utils/react/mergeProps.js +1 -1
  461. package/es/utils/react/nullableValue.js +1 -1
  462. package/es/utils/react/sharedStore.js +1 -1
  463. package/es/utils/react/useCombinedRefs.js +1 -1
  464. package/es/utils/react/useControlledFocusVisible.js +1 -1
  465. package/es/utils/react/useEventBus.js +1 -1
  466. package/es/utils/react/useId.js +1 -1
  467. package/es/utils/react/useIsDarwin.js +1 -1
  468. package/es/utils/react/useKeySymbols.js +1 -1
  469. package/es/utils/react/useLayoutEffect.js +1 -1
  470. package/es/utils/react/useQaProps.js +1 -1
  471. package/es/utils/react/useViewportSize.js +1 -1
  472. package/es/utils/react/wrapNodeIfPlain.js +1 -1
  473. package/es/utils/transitions.js +1 -1
  474. package/es/utils/tree.js +1 -1
  475. package/es/utils/warnings.js +1 -1
  476. package/es/version.js +2 -2
  477. package/package.json +3 -3
  478. package/types/components/actions/Menu/styled.d.ts +501 -501
  479. package/types/components/fields/DatePicker/DatePickerElement.d.ts +167 -167
  480. package/types/components/fields/Slider/RangeSlider.d.ts +1 -1
  481. package/types/tasty/parser/classify.d.ts +5 -0
  482. package/types/tasty/parser/const.d.ts +5 -0
  483. package/types/tasty/parser/lru.d.ts +12 -0
  484. package/types/tasty/parser/parser.d.ts +11 -0
  485. package/types/tasty/parser/tokenizer.d.ts +2 -0
  486. package/types/tasty/parser/types.d.ts +24 -0
  487. package/types/tasty/styles/dimension.d.ts +1 -4
  488. package/types/tasty/styles/height.d.ts +1 -4
  489. package/types/tasty/styles/width.d.ts +1 -4
  490. package/types/tasty/utils/styles.d.ts +11 -1
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
package/es/icons/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
package/es/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
package/es/provider.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
package/es/shared/form.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
package/es/tasty/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.70.0
4
+ * @cube-dev/ui-kit v0.71.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -0,0 +1,186 @@
1
+ /**
2
+ * @license MIT
3
+ * author: Cube Dev Team
4
+ * @cube-dev/ui-kit v0.71.1
5
+ * Released under the MIT license.
6
+ */
7
+
8
+ import { COLOR_FUNCS, RE_HEX, RE_NUMBER, RE_UNIT_NUM, VALUE_KEYWORDS, } from './const';
9
+ import { StyleParser } from './parser';
10
+ import { Bucket } from './types';
11
+ export function classify(raw, opts, recurse) {
12
+ const token = raw.trim();
13
+ if (!token)
14
+ return { bucket: Bucket.Mod, processed: '' };
15
+ // Early-out: if the token contains unmatched parentheses treat it as invalid
16
+ // and skip it. This avoids cases like `drop-shadow(` that are missing a
17
+ // closing parenthesis (e.g., a user-typo in CSS). We count paren depth while
18
+ // ignoring everything inside string literals to avoid false positives.
19
+ {
20
+ let depth = 0;
21
+ let inQuote = 0;
22
+ for (let i = 0; i < token.length; i++) {
23
+ const ch = token[i];
24
+ // track quote context so parentheses inside quotes are ignored
25
+ if (inQuote) {
26
+ if (ch === inQuote && token[i - 1] !== '\\')
27
+ inQuote = 0;
28
+ continue;
29
+ }
30
+ if (ch === '"' || ch === "'") {
31
+ inQuote = ch;
32
+ continue;
33
+ }
34
+ if (ch === '(')
35
+ depth++;
36
+ else if (ch === ')')
37
+ depth = Math.max(0, depth - 1);
38
+ }
39
+ if (depth !== 0) {
40
+ // Unbalanced parens → treat as invalid token (skipped).
41
+ console.warn('tasty: skipped invalid function token with unmatched parentheses:', token);
42
+ return { bucket: Bucket.Mod, processed: '' };
43
+ }
44
+ }
45
+ // Quoted string literals should be treated as value tokens (e.g., "" for content)
46
+ if ((token.startsWith('"') && token.endsWith('"')) ||
47
+ (token.startsWith("'") && token.endsWith("'"))) {
48
+ return { bucket: Bucket.Value, processed: token };
49
+ }
50
+ // 0. Direct var(--*-color) token
51
+ const varColorMatch = token.match(/^var\(--([a-z0-9-]+)-color\)$/);
52
+ if (varColorMatch) {
53
+ return { bucket: Bucket.Color, processed: token };
54
+ }
55
+ // 1. URL
56
+ if (token.startsWith('url(')) {
57
+ return { bucket: Bucket.Value, processed: token };
58
+ }
59
+ // 2. Custom property
60
+ if (token[0] === '@' || token[0] === '$') {
61
+ const match = token.match(/^[$@]\(([a-z0-9-_]+)\s*,\s*(.*)\)$/);
62
+ if (match) {
63
+ const [, name, fallback] = match;
64
+ const processedFallback = recurse(fallback).output;
65
+ return {
66
+ bucket: Bucket.Value,
67
+ processed: `var(--${name}, ${processedFallback})`,
68
+ };
69
+ }
70
+ const identMatch = token.match(/^[$@]([a-z0-9-_]+)$/);
71
+ if (identMatch) {
72
+ const name = identMatch[1];
73
+ const processed = `var(--${name})`;
74
+ const bucketType = name.endsWith('-color') ? Bucket.Color : Bucket.Value;
75
+ return {
76
+ bucket: bucketType,
77
+ processed,
78
+ };
79
+ }
80
+ // invalid custom property → modifier
81
+ }
82
+ // 3. Hash colors (with optional alpha suffix e.g., #purple.5)
83
+ if (token[0] === '#' && token.length > 1) {
84
+ // alpha form: #name.alpha
85
+ const alphaMatch = token.match(/^#([a-z0-9-]+)\.([0-9]+)$/i);
86
+ if (alphaMatch) {
87
+ const [, base, rawAlpha] = alphaMatch;
88
+ let alpha;
89
+ if (rawAlpha === '0')
90
+ alpha = '0';
91
+ else
92
+ alpha = `.${rawAlpha}`;
93
+ return {
94
+ bucket: Bucket.Color,
95
+ processed: `rgb(var(--${base}-color-rgb) / ${alpha})`,
96
+ };
97
+ }
98
+ // hyphenated names like #dark-05 should keep full name
99
+ const name = token.slice(1);
100
+ // valid hex → treat as hex literal with fallback
101
+ if (RE_HEX.test(name)) {
102
+ return {
103
+ bucket: Bucket.Color,
104
+ processed: `var(--${name}-color, #${name})`,
105
+ };
106
+ }
107
+ // simple color name token → css variable lookup with rgb fallback
108
+ return { bucket: Bucket.Color, processed: `var(--${name}-color)` };
109
+ }
110
+ // 4 & 5. Functions
111
+ const openIdx = token.indexOf('(');
112
+ if (openIdx > 0 && token.endsWith(')')) {
113
+ const fname = token.slice(0, openIdx);
114
+ const inner = token.slice(openIdx + 1, -1); // without ()
115
+ if (COLOR_FUNCS.has(fname)) {
116
+ // Process inner to expand nested colors or units.
117
+ const argProcessed = recurse(inner).output.replace(/,\s+/g, ','); // color funcs expect no spaces after commas
118
+ return { bucket: Bucket.Color, processed: `${fname}(${argProcessed})` };
119
+ }
120
+ // user function (provided via opts)
121
+ if (opts.funcs && fname in opts.funcs) {
122
+ // split by top-level commas within inner
123
+ const tmp = new StyleParser(opts).process(inner); // fresh parser w/ same opts but no cache share issues
124
+ const argProcessed = opts.funcs[fname](tmp.groups);
125
+ return { bucket: Bucket.Value, processed: argProcessed };
126
+ }
127
+ // generic: process inner and rebuild
128
+ const argProcessed = recurse(inner).output;
129
+ return { bucket: Bucket.Value, processed: `${fname}(${argProcessed})` };
130
+ }
131
+ // 6. Auto-calc group
132
+ if (token[0] === '(' && token[token.length - 1] === ')') {
133
+ const inner = token.slice(1, -1);
134
+ const innerProcessed = recurse(inner).output;
135
+ return { bucket: Bucket.Value, processed: `calc(${innerProcessed})` };
136
+ }
137
+ // 7. Unit number
138
+ const um = token.match(RE_UNIT_NUM);
139
+ if (um) {
140
+ const unit = um[1];
141
+ const numericPart = parseFloat(token.slice(0, -unit.length));
142
+ const handler = opts.units && opts.units[unit];
143
+ if (handler) {
144
+ if (typeof handler === 'string') {
145
+ // Special-case the common `x` → gap mapping used by tests.
146
+ const base = unit === 'x' ? 'var(--gap)' : handler;
147
+ if (numericPart === 1) {
148
+ return { bucket: Bucket.Value, processed: base };
149
+ }
150
+ return {
151
+ bucket: Bucket.Value,
152
+ processed: `calc(${numericPart} * ${base})`,
153
+ };
154
+ }
155
+ else {
156
+ // Function units return complete CSS expressions, no wrapping needed
157
+ const inner = handler(numericPart);
158
+ return {
159
+ bucket: Bucket.Value,
160
+ processed: inner,
161
+ };
162
+ }
163
+ }
164
+ }
165
+ // 7b. Unknown numeric+unit → treat as literal value (e.g., 1fr)
166
+ if (/^[+-]?(?:\d*\.\d+|\d+)[a-z%]+$/.test(token)) {
167
+ return { bucket: Bucket.Value, processed: token };
168
+ }
169
+ // 7c. Plain unit-less numbers should be treated as value tokens so that
170
+ // code such as `scrollbar={10}` resolves correctly.
171
+ if (RE_NUMBER.test(token)) {
172
+ return { bucket: Bucket.Value, processed: token };
173
+ }
174
+ // 8. Literal value keywords
175
+ if (VALUE_KEYWORDS.has(token)) {
176
+ return { bucket: Bucket.Value, processed: token };
177
+ }
178
+ // 8b. Special keyword colors
179
+ if (token === 'transparent' || token === 'currentcolor') {
180
+ return { bucket: Bucket.Color, processed: token };
181
+ }
182
+ // 9. Fallback modifier
183
+ return { bucket: Bucket.Mod, processed: token };
184
+ }
185
+
186
+
@@ -0,0 +1,36 @@
1
+ /**
2
+ * @license MIT
3
+ * author: Cube Dev Team
4
+ * @cube-dev/ui-kit v0.71.1
5
+ * Released under the MIT license.
6
+ */
7
+
8
+ export const VALUE_KEYWORDS = new Set([
9
+ 'auto',
10
+ 'max-content',
11
+ 'min-content',
12
+ 'fit-content',
13
+ 'stretch',
14
+ 'initial',
15
+ ]);
16
+ export const COLOR_FUNCS = new Set([
17
+ 'rgb',
18
+ 'rgba',
19
+ 'hsl',
20
+ 'hsla',
21
+ 'hwb',
22
+ 'lab',
23
+ 'lch',
24
+ 'oklab',
25
+ 'oklch',
26
+ 'color',
27
+ 'device-cmyk',
28
+ 'gray',
29
+ 'color-mix',
30
+ 'color-contrast',
31
+ ]);
32
+ export const RE_UNIT_NUM = /^[+-]?(?:\d*\.\d+|\d+)([a-z][a-z0-9]*)$/;
33
+ export const RE_NUMBER = /^[+-]?(?:\d*\.\d+|\d+)$/;
34
+ export const RE_HEX = /^(?:[0-9a-f]{3,4}|[0-9a-f]{6}(?:[0-9a-f]{2})?)$/;
35
+
36
+
@@ -0,0 +1,73 @@
1
+ /**
2
+ * @license MIT
3
+ * author: Cube Dev Team
4
+ * @cube-dev/ui-kit v0.71.1
5
+ * Released under the MIT license.
6
+ */
7
+
8
+ export class Lru {
9
+ limit;
10
+ map = new Map();
11
+ head = null;
12
+ tail = null;
13
+ constructor(limit = 1000) {
14
+ this.limit = limit;
15
+ }
16
+ get(key) {
17
+ const node = this.map.get(key);
18
+ if (!node)
19
+ return undefined;
20
+ this.touch(key, node);
21
+ return node.value;
22
+ }
23
+ set(key, value) {
24
+ let node = this.map.get(key);
25
+ if (node) {
26
+ node.value = value;
27
+ this.touch(key, node);
28
+ return;
29
+ }
30
+ node = { prev: null, next: this.head, value };
31
+ if (this.head)
32
+ this.map.get(this.head).prev = key;
33
+ this.head = key;
34
+ if (!this.tail)
35
+ this.tail = key;
36
+ this.map.set(key, node);
37
+ if (this.map.size > this.limit)
38
+ this.evict();
39
+ }
40
+ touch(key, node) {
41
+ if (this.head === key)
42
+ return; // already MRU
43
+ // detach
44
+ if (node.prev)
45
+ this.map.get(node.prev).next = node.next;
46
+ if (node.next)
47
+ this.map.get(node.next).prev = node.prev;
48
+ if (this.tail === key)
49
+ this.tail = node.prev;
50
+ // move to head
51
+ node.prev = null;
52
+ node.next = this.head;
53
+ if (this.head)
54
+ this.map.get(this.head).prev = key;
55
+ this.head = key;
56
+ }
57
+ evict() {
58
+ const old = this.tail;
59
+ if (!old)
60
+ return;
61
+ const node = this.map.get(old);
62
+ if (node.prev)
63
+ this.map.get(node.prev).next = null;
64
+ this.tail = node.prev;
65
+ this.map.delete(old);
66
+ }
67
+ clear() {
68
+ this.map.clear();
69
+ this.head = this.tail = null;
70
+ }
71
+ }
72
+
73
+
@@ -0,0 +1,104 @@
1
+ /**
2
+ * @license MIT
3
+ * author: Cube Dev Team
4
+ * @cube-dev/ui-kit v0.71.1
5
+ * Released under the MIT license.
6
+ */
7
+
8
+ import { classify } from './classify';
9
+ import { Lru } from './lru';
10
+ import { scan } from './tokenizer';
11
+ import { Bucket, finalizeGroup, makeEmptyDetails, } from './types';
12
+ export class StyleParser {
13
+ opts;
14
+ cache;
15
+ constructor(opts = {}) {
16
+ this.opts = opts;
17
+ this.cache = new Lru(this.opts.cacheSize ?? 1000);
18
+ }
19
+ /* ---------------- Public API ---------------- */
20
+ process(src) {
21
+ const key = String(src);
22
+ const hit = this.cache.get(key);
23
+ if (hit)
24
+ return hit;
25
+ // strip comments & lower-case once
26
+ const stripped = src
27
+ .replace(/\/\*[^*]*\*+(?:[^/*][^*]*\*+)*\//g, '')
28
+ .toLowerCase();
29
+ const groups = [];
30
+ let current = makeEmptyDetails();
31
+ const pushToken = (bucket, processed) => {
32
+ if (!processed)
33
+ return;
34
+ // If the previous token was a url(...) value, merge this token into it so that
35
+ // background layer segments like "url(img) no-repeat center/cover" are kept
36
+ // as a single value entry.
37
+ const mergeIntoPrevUrl = () => {
38
+ const lastIdx = current.values.length - 1;
39
+ current.values[lastIdx] += ` ${processed}`;
40
+ const lastAllIdx = current.all.length - 1;
41
+ current.all[lastAllIdx] += ` ${processed}`;
42
+ };
43
+ const prevIsUrlValue = current.values.length > 0 &&
44
+ current.values[current.values.length - 1].startsWith('url(');
45
+ if (prevIsUrlValue) {
46
+ // Extend the existing url(...) value regardless of current bucket.
47
+ mergeIntoPrevUrl();
48
+ // Additionally, for non-value buckets we need to remove their own storage.
49
+ // So early return.
50
+ return;
51
+ }
52
+ switch (bucket) {
53
+ case Bucket.Color:
54
+ current.colors.push(processed);
55
+ break;
56
+ case Bucket.Value:
57
+ current.values.push(processed);
58
+ break;
59
+ case Bucket.Mod:
60
+ current.mods.push(processed);
61
+ break;
62
+ }
63
+ current.all.push(processed);
64
+ };
65
+ const endGroup = () => {
66
+ finalizeGroup(current);
67
+ groups.push(current);
68
+ current = makeEmptyDetails();
69
+ };
70
+ scan(stripped, (tok, isComma, prevChar) => {
71
+ if (tok) {
72
+ const { bucket, processed } = classify(tok, this.opts, (sub) => this.process(sub));
73
+ pushToken(bucket, processed);
74
+ }
75
+ if (isComma)
76
+ endGroup();
77
+ });
78
+ // push final group if not already
79
+ if (current.all.length || !groups.length)
80
+ endGroup();
81
+ const output = groups.map((g) => g.output).join(', ');
82
+ const result = { output, groups };
83
+ Object.freeze(result);
84
+ this.cache.set(key, result);
85
+ return result;
86
+ }
87
+ setFuncs(funcs) {
88
+ this.opts.funcs = funcs;
89
+ this.cache.clear();
90
+ }
91
+ setUnits(units) {
92
+ this.opts.units = units;
93
+ this.cache.clear();
94
+ }
95
+ updateOptions(patch) {
96
+ Object.assign(this.opts, patch);
97
+ if (patch.cacheSize)
98
+ this.cache = new Lru(patch.cacheSize);
99
+ else
100
+ this.cache.clear();
101
+ }
102
+ }
103
+
104
+