@lablup/ui-common 0.1.0-alpha.8 → 0.2.0-alpha.15

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 (909) hide show
  1. package/NOTICE +62 -0
  2. package/README.md +490 -68
  3. package/astryx/components/AlertModal.doc.mjs +91 -0
  4. package/astryx/components/AlertModal.tsx +3 -0
  5. package/astryx/components/BoardItemTitle.doc.mjs +51 -0
  6. package/astryx/components/BoardItemTitle.tsx +3 -0
  7. package/astryx/components/BooleanToken.doc.mjs +57 -0
  8. package/astryx/components/BooleanToken.tsx +3 -0
  9. package/astryx/components/BulkEditFormItem.doc.mjs +68 -0
  10. package/astryx/components/BulkEditFormItem.tsx +3 -0
  11. package/astryx/components/BulkErrorModal.doc.mjs +75 -0
  12. package/astryx/components/BulkErrorModal.tsx +3 -0
  13. package/astryx/components/ColorPicker.doc.mjs +88 -0
  14. package/astryx/components/ColorPicker.tsx +3 -0
  15. package/astryx/components/ConfirmPopover.doc.mjs +99 -0
  16. package/astryx/components/ConfirmPopover.tsx +3 -0
  17. package/astryx/components/CountBadge.doc.mjs +93 -0
  18. package/astryx/components/CountBadge.tsx +3 -0
  19. package/astryx/components/CountdownBorder.doc.mjs +57 -0
  20. package/astryx/components/CountdownBorder.tsx +3 -0
  21. package/astryx/components/DataGrid.doc.mjs +166 -0
  22. package/astryx/components/DataGrid.tsx +3 -0
  23. package/astryx/components/DeleteConfirmModal.doc.mjs +163 -0
  24. package/astryx/components/DeleteConfirmModal.tsx +3 -0
  25. package/astryx/components/DividedRow.doc.mjs +85 -0
  26. package/astryx/components/DividedRow.tsx +3 -0
  27. package/astryx/components/DoubleBadge.doc.mjs +40 -0
  28. package/astryx/components/DoubleBadge.tsx +3 -0
  29. package/astryx/components/DoubleToken.doc.mjs +38 -0
  30. package/astryx/components/DoubleToken.tsx +3 -0
  31. package/astryx/components/Form.doc.mjs +113 -0
  32. package/astryx/components/Form.tsx +3 -0
  33. package/astryx/components/IconWithTooltip.doc.mjs +57 -0
  34. package/astryx/components/IconWithTooltip.tsx +3 -0
  35. package/astryx/components/ImageWithFallback.doc.mjs +47 -0
  36. package/astryx/components/ImageWithFallback.tsx +3 -0
  37. package/astryx/components/ListBanner.doc.mjs +50 -0
  38. package/astryx/components/ListBanner.tsx +3 -0
  39. package/astryx/components/Modal.doc.mjs +176 -0
  40. package/astryx/components/Modal.tsx +3 -0
  41. package/astryx/components/NotificationItem.doc.mjs +52 -0
  42. package/astryx/components/NotificationItem.tsx +3 -0
  43. package/astryx/components/NotificationStack.doc.mjs +66 -0
  44. package/astryx/components/NotificationStack.tsx +3 -0
  45. package/astryx/components/OverlayScrollbar.doc.mjs +49 -0
  46. package/astryx/components/OverlayScrollbar.tsx +3 -0
  47. package/astryx/components/PageHeader.doc.mjs +94 -0
  48. package/astryx/components/PageHeader.tsx +3 -0
  49. package/astryx/components/PagedSelector.doc.mjs +183 -0
  50. package/astryx/components/PagedSelector.tsx +3 -0
  51. package/astryx/components/ProgressWithLabel.doc.mjs +69 -0
  52. package/astryx/components/ProgressWithLabel.tsx +3 -0
  53. package/astryx/components/SelectionLabel.doc.mjs +55 -0
  54. package/astryx/components/SelectionLabel.tsx +3 -0
  55. package/astryx/components/Statistic.doc.mjs +84 -0
  56. package/astryx/components/Statistic.tsx +3 -0
  57. package/astryx/components/StepNumberInput.doc.mjs +102 -0
  58. package/astryx/components/StepNumberInput.tsx +3 -0
  59. package/astryx/components/TextHighlighter.doc.mjs +47 -0
  60. package/astryx/components/TextHighlighter.tsx +3 -0
  61. package/astryx/components/TokenList.doc.mjs +58 -0
  62. package/astryx/components/TokenList.tsx +3 -0
  63. package/astryx/components/TokenRow.doc.mjs +62 -0
  64. package/astryx/components/TokenRow.tsx +3 -0
  65. package/astryx/components/UncontrolledInput.doc.mjs +68 -0
  66. package/astryx/components/UncontrolledInput.tsx +3 -0
  67. package/astryx/components/UnitGrid.doc.mjs +107 -0
  68. package/astryx/components/UnitGrid.tsx +3 -0
  69. package/astryx/docs/ui-common.doc.mjs +112 -0
  70. package/astryx.integration.mjs +35 -0
  71. package/dist/assets/components/BoardItemTitle/BoardItemTitle.css +2 -0
  72. package/dist/assets/components/BulkErrorModal/BulkErrorModal.css +2 -0
  73. package/dist/assets/components/ColorPicker/ColorPicker.css +2 -0
  74. package/dist/assets/components/CountBadge/CountBadge.css +2 -0
  75. package/dist/assets/components/CountdownBorder/CountdownBorder.css +2 -0
  76. package/dist/assets/components/DataGrid/DataGrid.css +2 -0
  77. package/dist/assets/components/DeleteConfirmModal/DeleteConfirmModal.css +2 -0
  78. package/dist/assets/components/DigitPopIn/DigitPopIn.css +2 -0
  79. package/dist/assets/components/DividedRow/DividedRow.css +2 -0
  80. package/dist/assets/components/DoubleBadge/DoubleBadge.css +2 -0
  81. package/dist/assets/components/DoubleToken/DoubleToken.css +2 -0
  82. package/dist/assets/components/ErrorState/ErrorState.css +2 -1
  83. package/dist/assets/components/Form/FormItemVisual.css +2 -0
  84. package/dist/assets/components/IconWithTooltip/IconWithTooltip.css +2 -0
  85. package/dist/assets/components/ImageWithFallback/ImageWithFallback.css +2 -0
  86. package/dist/assets/components/ListBanner/ListBanner.css +2 -0
  87. package/dist/assets/components/Modal/Modal.css +2 -0
  88. package/dist/assets/components/NotificationItem/NotificationItem.css +2 -0
  89. package/dist/assets/components/NotificationStack/NotificationStack.css +2 -0
  90. package/dist/assets/components/OverlayScrollbar/OverlayScrollbar.css +2 -0
  91. package/dist/assets/components/PageHeader/PageHeader.css +2 -1
  92. package/dist/assets/components/PageLayout/PageLayout.css +2 -1
  93. package/dist/assets/components/PagedSelector/PagedSelector.css +2 -0
  94. package/dist/assets/components/ProgressWithLabel/ProgressWithLabel.css +2 -0
  95. package/dist/assets/components/Skeleton/SkeletonCard.css +2 -1
  96. package/dist/assets/components/Skeleton/SkeletonChart.css +2 -1
  97. package/dist/assets/components/Skeleton/SkeletonRow.css +2 -1
  98. package/dist/assets/components/Skeleton/SkeletonShape.css +2 -0
  99. package/dist/assets/components/Skeleton/SkeletonText.css +2 -1
  100. package/dist/assets/components/SmoothHeight/SmoothHeight.css +2 -1
  101. package/dist/assets/components/StatCard/StatCard.css +2 -1
  102. package/dist/assets/components/Statistic/Statistic.css +2 -0
  103. package/dist/assets/components/StepNumberInput/NumberStepper.css +2 -0
  104. package/dist/assets/components/TextHighlighter/TextHighlighter.css +2 -0
  105. package/dist/assets/components/TokenList/TokenList.css +2 -0
  106. package/dist/assets/components/TokenRow/TokenRow.css +2 -0
  107. package/dist/assets/components/UnitGrid/UnitGrid.css +2 -0
  108. package/dist/astryx/AppShell.d.ts +1 -0
  109. package/dist/astryx/AppShell.js +1 -0
  110. package/dist/astryx/AspectRatio.d.ts +1 -0
  111. package/dist/astryx/AspectRatio.js +1 -0
  112. package/dist/astryx/Avatar.d.ts +1 -0
  113. package/dist/astryx/Avatar.js +1 -0
  114. package/dist/astryx/AvatarGroup.d.ts +1 -0
  115. package/dist/astryx/AvatarGroup.js +1 -0
  116. package/dist/astryx/Badge.d.ts +1 -0
  117. package/dist/astryx/Badge.js +1 -0
  118. package/dist/astryx/Banner.d.ts +1 -0
  119. package/dist/astryx/Banner.js +1 -0
  120. package/dist/astryx/BaseProps.d.ts +1 -0
  121. package/dist/astryx/BaseProps.js +1 -0
  122. package/dist/astryx/Blockquote.d.ts +1 -0
  123. package/dist/astryx/Blockquote.js +1 -0
  124. package/dist/astryx/BottomSheet.d.ts +1 -0
  125. package/dist/astryx/BottomSheet.js +1 -0
  126. package/dist/astryx/Breadcrumbs.d.ts +1 -0
  127. package/dist/astryx/Breadcrumbs.js +1 -0
  128. package/dist/astryx/Button.d.ts +1 -0
  129. package/dist/astryx/Button.js +1 -0
  130. package/dist/astryx/ButtonGroup.d.ts +1 -0
  131. package/dist/astryx/ButtonGroup.js +1 -0
  132. package/dist/astryx/Calendar/utils.d.ts +1 -0
  133. package/dist/astryx/Calendar/utils.js +1 -0
  134. package/dist/astryx/Calendar.d.ts +1 -0
  135. package/dist/astryx/Calendar.js +1 -0
  136. package/dist/astryx/Card.d.ts +1 -0
  137. package/dist/astryx/Card.js +1 -0
  138. package/dist/astryx/Carousel.d.ts +1 -0
  139. package/dist/astryx/Carousel.js +1 -0
  140. package/dist/astryx/Center.d.ts +1 -0
  141. package/dist/astryx/Center.js +1 -0
  142. package/dist/astryx/Chat.d.ts +1 -0
  143. package/dist/astryx/Chat.js +1 -0
  144. package/dist/astryx/CheckboxInput.d.ts +1 -0
  145. package/dist/astryx/CheckboxInput.js +1 -0
  146. package/dist/astryx/CheckboxList.d.ts +1 -0
  147. package/dist/astryx/CheckboxList.js +1 -0
  148. package/dist/astryx/Citation.d.ts +1 -0
  149. package/dist/astryx/Citation.js +1 -0
  150. package/dist/astryx/ClickableCard.d.ts +1 -0
  151. package/dist/astryx/ClickableCard.js +1 -0
  152. package/dist/astryx/Code.d.ts +1 -0
  153. package/dist/astryx/Code.js +1 -0
  154. package/dist/astryx/CodeBlock.d.ts +1 -0
  155. package/dist/astryx/CodeBlock.js +1 -0
  156. package/dist/astryx/Collapsible.d.ts +1 -0
  157. package/dist/astryx/Collapsible.js +1 -0
  158. package/dist/astryx/CommandPalette.d.ts +1 -0
  159. package/dist/astryx/CommandPalette.js +1 -0
  160. package/dist/astryx/ContextMenu.d.ts +1 -0
  161. package/dist/astryx/ContextMenu.js +1 -0
  162. package/dist/astryx/DateInput.d.ts +1 -0
  163. package/dist/astryx/DateInput.js +1 -0
  164. package/dist/astryx/DateRangeInput.d.ts +1 -0
  165. package/dist/astryx/DateRangeInput.js +1 -0
  166. package/dist/astryx/DateTimeInput.d.ts +1 -0
  167. package/dist/astryx/DateTimeInput.js +1 -0
  168. package/dist/astryx/Divider.d.ts +1 -0
  169. package/dist/astryx/Divider.js +1 -0
  170. package/dist/astryx/DropdownMenu.d.ts +1 -0
  171. package/dist/astryx/DropdownMenu.js +1 -0
  172. package/dist/astryx/EmptyState.d.ts +1 -0
  173. package/dist/astryx/EmptyState.js +1 -0
  174. package/dist/astryx/Field.d.ts +1 -0
  175. package/dist/astryx/Field.js +1 -0
  176. package/dist/astryx/FieldStatus.d.ts +1 -0
  177. package/dist/astryx/FieldStatus.js +1 -0
  178. package/dist/astryx/FileInput.d.ts +1 -0
  179. package/dist/astryx/FileInput.js +1 -0
  180. package/dist/astryx/FormLayout.d.ts +1 -0
  181. package/dist/astryx/FormLayout.js +1 -0
  182. package/dist/astryx/Grid.d.ts +1 -0
  183. package/dist/astryx/Grid.js +1 -0
  184. package/dist/astryx/HStack.d.ts +1 -0
  185. package/dist/astryx/HStack.js +1 -0
  186. package/dist/astryx/Heading.d.ts +1 -0
  187. package/dist/astryx/Heading.js +1 -0
  188. package/dist/astryx/HoverCard.d.ts +1 -0
  189. package/dist/astryx/HoverCard.js +1 -0
  190. package/dist/astryx/Icon.d.ts +1 -0
  191. package/dist/astryx/Icon.js +1 -0
  192. package/dist/astryx/IconButton.d.ts +1 -0
  193. package/dist/astryx/IconButton.js +1 -0
  194. package/dist/astryx/Indicator.d.ts +1 -0
  195. package/dist/astryx/Indicator.js +1 -0
  196. package/dist/astryx/InputGroup.d.ts +1 -0
  197. package/dist/astryx/InputGroup.js +1 -0
  198. package/dist/astryx/InteractiveRoleContext.d.ts +1 -0
  199. package/dist/astryx/InteractiveRoleContext.js +1 -0
  200. package/dist/astryx/Item.d.ts +1 -0
  201. package/dist/astryx/Item.js +1 -0
  202. package/dist/astryx/Kbd.d.ts +1 -0
  203. package/dist/astryx/Kbd.js +1 -0
  204. package/dist/astryx/Layer.d.ts +1 -0
  205. package/dist/astryx/Layer.js +1 -0
  206. package/dist/astryx/Layout.d.ts +1 -0
  207. package/dist/astryx/Layout.js +1 -0
  208. package/dist/astryx/Lightbox.d.ts +1 -0
  209. package/dist/astryx/Lightbox.js +1 -0
  210. package/dist/astryx/Link.d.ts +1 -0
  211. package/dist/astryx/Link.js +1 -0
  212. package/dist/astryx/List.d.ts +1 -0
  213. package/dist/astryx/List.js +1 -0
  214. package/dist/astryx/Markdown/utils.d.ts +1 -0
  215. package/dist/astryx/Markdown/utils.js +1 -0
  216. package/dist/astryx/Markdown.d.ts +1 -0
  217. package/dist/astryx/Markdown.js +1 -0
  218. package/dist/astryx/MetadataList.d.ts +1 -0
  219. package/dist/astryx/MetadataList.js +1 -0
  220. package/dist/astryx/MobileNav.d.ts +1 -0
  221. package/dist/astryx/MobileNav.js +1 -0
  222. package/dist/astryx/MoreMenu.d.ts +1 -0
  223. package/dist/astryx/MoreMenu.js +1 -0
  224. package/dist/astryx/MultiSelector.d.ts +1 -0
  225. package/dist/astryx/MultiSelector.js +1 -0
  226. package/dist/astryx/NavIcon.d.ts +1 -0
  227. package/dist/astryx/NavIcon.js +1 -0
  228. package/dist/astryx/NavMenu.d.ts +1 -0
  229. package/dist/astryx/NavMenu.js +1 -0
  230. package/dist/astryx/NumberInput.d.ts +1 -0
  231. package/dist/astryx/NumberInput.js +1 -0
  232. package/dist/astryx/Outline.d.ts +1 -0
  233. package/dist/astryx/Outline.js +1 -0
  234. package/dist/astryx/OverflowList.d.ts +1 -0
  235. package/dist/astryx/OverflowList.js +1 -0
  236. package/dist/astryx/Overlay.d.ts +1 -0
  237. package/dist/astryx/Overlay.js +1 -0
  238. package/dist/astryx/Pagination.d.ts +1 -0
  239. package/dist/astryx/Pagination.js +1 -0
  240. package/dist/astryx/Popover.d.ts +1 -0
  241. package/dist/astryx/Popover.js +1 -0
  242. package/dist/astryx/PowerSearch/utils.d.ts +1 -0
  243. package/dist/astryx/PowerSearch/utils.js +1 -0
  244. package/dist/astryx/PowerSearch.d.ts +1 -0
  245. package/dist/astryx/PowerSearch.js +1 -0
  246. package/dist/astryx/ProgressBar.d.ts +1 -0
  247. package/dist/astryx/ProgressBar.js +1 -0
  248. package/dist/astryx/RadioList.d.ts +1 -0
  249. package/dist/astryx/RadioList.js +1 -0
  250. package/dist/astryx/Resizable/utils.d.ts +1 -0
  251. package/dist/astryx/Resizable/utils.js +1 -0
  252. package/dist/astryx/Resizable.d.ts +1 -0
  253. package/dist/astryx/Resizable.js +1 -0
  254. package/dist/astryx/ScrollableArea.d.ts +1 -0
  255. package/dist/astryx/ScrollableArea.js +1 -0
  256. package/dist/astryx/Section.d.ts +1 -0
  257. package/dist/astryx/Section.js +1 -0
  258. package/dist/astryx/SegmentedControl.d.ts +1 -0
  259. package/dist/astryx/SegmentedControl.js +1 -0
  260. package/dist/astryx/SelectableCard.d.ts +1 -0
  261. package/dist/astryx/SelectableCard.js +1 -0
  262. package/dist/astryx/Selector/utils.d.ts +1 -0
  263. package/dist/astryx/Selector/utils.js +1 -0
  264. package/dist/astryx/Selector.d.ts +1 -0
  265. package/dist/astryx/Selector.js +1 -0
  266. package/dist/astryx/SideNav.d.ts +1 -0
  267. package/dist/astryx/SideNav.js +1 -0
  268. package/dist/astryx/SizeContext.d.ts +1 -0
  269. package/dist/astryx/SizeContext.js +1 -0
  270. package/dist/astryx/Skeleton.d.ts +1 -0
  271. package/dist/astryx/Skeleton.js +1 -0
  272. package/dist/astryx/Slider.d.ts +1 -0
  273. package/dist/astryx/Slider.js +1 -0
  274. package/dist/astryx/Spinner.d.ts +1 -0
  275. package/dist/astryx/Spinner.js +1 -0
  276. package/dist/astryx/Stack.d.ts +1 -0
  277. package/dist/astryx/Stack.js +1 -0
  278. package/dist/astryx/StatusDot.d.ts +1 -0
  279. package/dist/astryx/StatusDot.js +1 -0
  280. package/dist/astryx/Stepper.d.ts +1 -0
  281. package/dist/astryx/Stepper.js +1 -0
  282. package/dist/astryx/Switch.d.ts +1 -0
  283. package/dist/astryx/Switch.js +1 -0
  284. package/dist/astryx/TabList.d.ts +1 -0
  285. package/dist/astryx/TabList.js +1 -0
  286. package/dist/astryx/Table/utils.d.ts +1 -0
  287. package/dist/astryx/Table/utils.js +1 -0
  288. package/dist/astryx/Table.d.ts +1 -0
  289. package/dist/astryx/Table.js +1 -0
  290. package/dist/astryx/Text.d.ts +1 -0
  291. package/dist/astryx/Text.js +1 -0
  292. package/dist/astryx/TextArea.d.ts +1 -0
  293. package/dist/astryx/TextArea.js +1 -0
  294. package/dist/astryx/TextInput.d.ts +1 -0
  295. package/dist/astryx/TextInput.js +1 -0
  296. package/dist/astryx/Thumbnail.d.ts +1 -0
  297. package/dist/astryx/Thumbnail.js +1 -0
  298. package/dist/astryx/TimeInput.d.ts +1 -0
  299. package/dist/astryx/TimeInput.js +1 -0
  300. package/dist/astryx/Timestamp.d.ts +1 -0
  301. package/dist/astryx/Timestamp.js +1 -0
  302. package/dist/astryx/Toast.d.ts +1 -0
  303. package/dist/astryx/Toast.js +1 -0
  304. package/dist/astryx/ToggleButton.d.ts +1 -0
  305. package/dist/astryx/ToggleButton.js +1 -0
  306. package/dist/astryx/Token.d.ts +1 -0
  307. package/dist/astryx/Token.js +1 -0
  308. package/dist/astryx/Tokenizer.d.ts +1 -0
  309. package/dist/astryx/Tokenizer.js +1 -0
  310. package/dist/astryx/Toolbar.d.ts +1 -0
  311. package/dist/astryx/Toolbar.js +1 -0
  312. package/dist/astryx/Tooltip.d.ts +1 -0
  313. package/dist/astryx/Tooltip.js +1 -0
  314. package/dist/astryx/TopNav.d.ts +1 -0
  315. package/dist/astryx/TopNav.js +1 -0
  316. package/dist/astryx/TreeList.d.ts +1 -0
  317. package/dist/astryx/TreeList.js +1 -0
  318. package/dist/astryx/Typeahead/utils.d.ts +1 -0
  319. package/dist/astryx/Typeahead/utils.js +1 -0
  320. package/dist/astryx/Typeahead.d.ts +1 -0
  321. package/dist/astryx/Typeahead.js +1 -0
  322. package/dist/astryx/VStack.d.ts +1 -0
  323. package/dist/astryx/VStack.js +1 -0
  324. package/dist/astryx/VisuallyHidden.d.ts +1 -0
  325. package/dist/astryx/VisuallyHidden.js +1 -0
  326. package/dist/astryx/astryx.css +3 -0
  327. package/dist/astryx/hooks.d.ts +1 -0
  328. package/dist/astryx/hooks.js +1 -0
  329. package/dist/astryx/i18n.d.ts +1 -0
  330. package/dist/astryx/i18n.js +1 -0
  331. package/dist/astryx/lab/lab.css +3 -0
  332. package/dist/astryx/lab.d.ts +6 -0
  333. package/dist/astryx/lab.js +6 -0
  334. package/dist/astryx/naming.d.ts +1 -0
  335. package/dist/astryx/naming.js +1 -0
  336. package/dist/astryx/reset.css +3 -0
  337. package/dist/astryx/tailwind-theme.css +3 -0
  338. package/dist/astryx/theme/neutral/built.d.ts +1 -0
  339. package/dist/astryx/theme/neutral/built.js +1 -0
  340. package/dist/astryx/theme/neutral/theme.css +3 -0
  341. package/dist/astryx/theme/neutral.d.ts +1 -0
  342. package/dist/astryx/theme/neutral.js +1 -0
  343. package/dist/astryx/theme/syntax.d.ts +1 -0
  344. package/dist/astryx/theme/syntax.js +1 -0
  345. package/dist/astryx/theme/tokens.d.ts +1 -0
  346. package/dist/astryx/theme/tokens.js +1 -0
  347. package/dist/astryx/theme/tokens.stylex.d.ts +1 -0
  348. package/dist/astryx/theme/tokens.stylex.js +1 -0
  349. package/dist/astryx/theme.d.ts +1 -0
  350. package/dist/astryx/theme.js +1 -0
  351. package/dist/astryx/utils.d.ts +1 -0
  352. package/dist/astryx/utils.js +1 -0
  353. package/dist/components/AlertModal/AlertModal.d.ts +14 -0
  354. package/dist/components/AlertModal/AlertModal.js +56 -0
  355. package/dist/components/AlertModal/AlertModal.js.map +1 -0
  356. package/dist/components/AlertModal/index.d.ts +2 -0
  357. package/dist/components/AlertModal/index.js +2 -0
  358. package/dist/components/BoardItemTitle/BoardItemTitle.d.ts +15 -0
  359. package/dist/components/BoardItemTitle/BoardItemTitle2.js +42 -0
  360. package/dist/components/BoardItemTitle/BoardItemTitle2.js.map +1 -0
  361. package/dist/components/BoardItemTitle/index.d.ts +2 -0
  362. package/dist/components/BoardItemTitle/index.js +2 -0
  363. package/dist/components/BooleanToken/BooleanToken.d.ts +15 -0
  364. package/dist/components/BooleanToken/BooleanToken.js +19 -0
  365. package/dist/components/BooleanToken/BooleanToken.js.map +1 -0
  366. package/dist/components/BooleanToken/BooleanToken.messages.d.ts +10 -0
  367. package/dist/components/BooleanToken/BooleanToken.messages.js +16 -0
  368. package/dist/components/BooleanToken/BooleanToken.messages.js.map +1 -0
  369. package/dist/components/BooleanToken/index.d.ts +2 -0
  370. package/dist/components/BooleanToken/index.js +2 -0
  371. package/dist/components/BulkEditFormItem/BulkEditFormItem.d.ts +24 -0
  372. package/dist/components/BulkEditFormItem/BulkEditFormItem.js +93 -0
  373. package/dist/components/BulkEditFormItem/BulkEditFormItem.js.map +1 -0
  374. package/dist/components/BulkEditFormItem/BulkEditFormItem.messages.d.ts +14 -0
  375. package/dist/components/BulkEditFormItem/BulkEditFormItem.messages.js +20 -0
  376. package/dist/components/BulkEditFormItem/BulkEditFormItem.messages.js.map +1 -0
  377. package/dist/components/BulkEditFormItem/index.d.ts +2 -0
  378. package/dist/components/BulkEditFormItem/index.js +2 -0
  379. package/dist/components/BulkErrorModal/BulkErrorModal.d.ts +23 -0
  380. package/dist/components/BulkErrorModal/BulkErrorModal.messages.d.ts +10 -0
  381. package/dist/components/BulkErrorModal/BulkErrorModal.messages.js +16 -0
  382. package/dist/components/BulkErrorModal/BulkErrorModal.messages.js.map +1 -0
  383. package/dist/components/BulkErrorModal/BulkErrorModal2.js +55 -0
  384. package/dist/components/BulkErrorModal/BulkErrorModal2.js.map +1 -0
  385. package/dist/components/BulkErrorModal/index.d.ts +2 -0
  386. package/dist/components/BulkErrorModal/index.js +2 -0
  387. package/dist/components/ColorPicker/ColorPicker.d.ts +43 -0
  388. package/dist/components/ColorPicker/ColorPicker.messages.d.ts +18 -0
  389. package/dist/components/ColorPicker/ColorPicker.messages.js +24 -0
  390. package/dist/components/ColorPicker/ColorPicker.messages.js.map +1 -0
  391. package/dist/components/ColorPicker/ColorPicker2.js +117 -0
  392. package/dist/components/ColorPicker/ColorPicker2.js.map +1 -0
  393. package/dist/components/ColorPicker/index.d.ts +2 -0
  394. package/dist/components/ColorPicker/index.js +2 -0
  395. package/dist/components/ConfirmPopover/ConfirmPopover.d.ts +35 -0
  396. package/dist/components/ConfirmPopover/ConfirmPopover.js +75 -0
  397. package/dist/components/ConfirmPopover/ConfirmPopover.js.map +1 -0
  398. package/dist/components/ConfirmPopover/index.d.ts +2 -0
  399. package/dist/components/ConfirmPopover/index.js +2 -0
  400. package/dist/components/CountBadge/CountBadge.d.ts +24 -0
  401. package/dist/components/CountBadge/CountBadge2.js +35 -0
  402. package/dist/components/CountBadge/CountBadge2.js.map +1 -0
  403. package/dist/components/CountBadge/index.d.ts +2 -0
  404. package/dist/components/CountBadge/index.js +2 -0
  405. package/dist/components/CountdownBorder/CountdownBorder.d.ts +22 -0
  406. package/dist/components/CountdownBorder/CountdownBorder2.js +63 -0
  407. package/dist/components/CountdownBorder/CountdownBorder2.js.map +1 -0
  408. package/dist/components/CountdownBorder/index.d.ts +2 -0
  409. package/dist/components/CountdownBorder/index.js +2 -0
  410. package/dist/components/DataGrid/DataGrid.d.ts +212 -0
  411. package/dist/components/DataGrid/DataGrid.messages.d.ts +70 -0
  412. package/dist/components/DataGrid/DataGrid.messages.js +76 -0
  413. package/dist/components/DataGrid/DataGrid.messages.js.map +1 -0
  414. package/dist/components/DataGrid/DataGrid2.js +447 -0
  415. package/dist/components/DataGrid/DataGrid2.js.map +1 -0
  416. package/dist/components/DataGrid/DataGridExportModal.d.ts +30 -0
  417. package/dist/components/DataGrid/DataGridExportModal.js +125 -0
  418. package/dist/components/DataGrid/DataGridExportModal.js.map +1 -0
  419. package/dist/components/DataGrid/DataGridSettingsModal.d.ts +36 -0
  420. package/dist/components/DataGrid/DataGridSettingsModal.js +177 -0
  421. package/dist/components/DataGrid/DataGridSettingsModal.js.map +1 -0
  422. package/dist/components/DataGrid/index.d.ts +6 -0
  423. package/dist/components/DataGrid/index.js +4 -0
  424. package/dist/components/DataGrid/nodeToPlainText.d.ts +6 -0
  425. package/dist/components/DataGrid/nodeToPlainText.js +9 -0
  426. package/dist/components/DataGrid/nodeToPlainText.js.map +1 -0
  427. package/dist/components/DeleteConfirmModal/DeleteConfirmModal.d.ts +78 -0
  428. package/dist/components/DeleteConfirmModal/DeleteConfirmModal.messages.d.ts +30 -0
  429. package/dist/components/DeleteConfirmModal/DeleteConfirmModal.messages.js +36 -0
  430. package/dist/components/DeleteConfirmModal/DeleteConfirmModal.messages.js.map +1 -0
  431. package/dist/components/DeleteConfirmModal/DeleteConfirmModal2.js +102 -0
  432. package/dist/components/DeleteConfirmModal/DeleteConfirmModal2.js.map +1 -0
  433. package/dist/components/DeleteConfirmModal/index.d.ts +2 -0
  434. package/dist/components/DeleteConfirmModal/index.js +2 -0
  435. package/dist/components/DigitPopIn/DigitPopIn.d.ts +8 -0
  436. package/dist/components/DigitPopIn/DigitPopIn2.js +30 -0
  437. package/dist/components/DigitPopIn/DigitPopIn2.js.map +1 -0
  438. package/dist/components/DigitPopIn/index.d.ts +2 -0
  439. package/dist/components/DigitPopIn/index.js +2 -0
  440. package/dist/components/DividedRow/DividedRow.d.ts +27 -0
  441. package/dist/components/DividedRow/DividedRow2.js +63 -0
  442. package/dist/components/DividedRow/DividedRow2.js.map +1 -0
  443. package/dist/components/DividedRow/index.d.ts +2 -0
  444. package/dist/components/DividedRow/index.js +2 -0
  445. package/dist/components/DoubleBadge/DoubleBadge.d.ts +14 -0
  446. package/dist/components/DoubleBadge/DoubleBadge2.js +28 -0
  447. package/dist/components/DoubleBadge/DoubleBadge2.js.map +1 -0
  448. package/dist/components/DoubleBadge/index.d.ts +2 -0
  449. package/dist/components/DoubleBadge/index.js +2 -0
  450. package/dist/components/DoubleToken/DoubleToken.d.ts +24 -0
  451. package/dist/components/DoubleToken/DoubleToken2.js +38 -0
  452. package/dist/components/DoubleToken/DoubleToken2.js.map +1 -0
  453. package/dist/components/DoubleToken/index.d.ts +2 -0
  454. package/dist/components/DoubleToken/index.js +2 -0
  455. package/dist/components/ErrorState/ErrorState.d.ts +7 -16
  456. package/dist/components/ErrorState/ErrorState2.js +33 -33
  457. package/dist/components/ErrorState/ErrorState2.js.map +1 -1
  458. package/dist/components/Form/ErrorList.d.ts +13 -0
  459. package/dist/components/Form/ErrorList.js +21 -0
  460. package/dist/components/Form/ErrorList.js.map +1 -0
  461. package/dist/components/Form/Field.d.ts +88 -0
  462. package/dist/components/Form/Field.js +212 -0
  463. package/dist/components/Form/Field.js.map +1 -0
  464. package/dist/components/Form/Form.d.ts +70 -0
  465. package/dist/components/Form/Form.js +130 -0
  466. package/dist/components/Form/Form.js.map +1 -0
  467. package/dist/components/Form/Form.messages.d.ts +96 -0
  468. package/dist/components/Form/Form.messages.js +96 -0
  469. package/dist/components/Form/Form.messages.js.map +1 -0
  470. package/dist/components/Form/FormConfigProvider.d.ts +20 -0
  471. package/dist/components/Form/FormConfigProvider.js +31 -0
  472. package/dist/components/Form/FormConfigProvider.js.map +1 -0
  473. package/dist/components/Form/FormItem.d.ts +56 -0
  474. package/dist/components/Form/FormItem.js +164 -0
  475. package/dist/components/Form/FormItem.js.map +1 -0
  476. package/dist/components/Form/FormItemVisual.d.ts +56 -0
  477. package/dist/components/Form/FormItemVisual2.js +117 -0
  478. package/dist/components/Form/FormItemVisual2.js.map +1 -0
  479. package/dist/components/Form/FormStore.d.ts +109 -0
  480. package/dist/components/Form/FormStore.js +494 -0
  481. package/dist/components/Form/FormStore.js.map +1 -0
  482. package/dist/components/Form/List.d.ts +22 -0
  483. package/dist/components/Form/List.js +65 -0
  484. package/dist/components/Form/List.js.map +1 -0
  485. package/dist/components/Form/context.d.ts +91 -0
  486. package/dist/components/Form/context.js +34 -0
  487. package/dist/components/Form/context.js.map +1 -0
  488. package/dist/components/Form/feedbackIcons.d.ts +13 -0
  489. package/dist/components/Form/feedbackIcons.js +45 -0
  490. package/dist/components/Form/feedbackIcons.js.map +1 -0
  491. package/dist/components/Form/index.d.ts +30 -0
  492. package/dist/components/Form/index.js +18 -0
  493. package/dist/components/Form/index.js.map +1 -0
  494. package/dist/components/Form/interface.d.ts +212 -0
  495. package/dist/components/Form/isEqual.d.ts +1 -0
  496. package/dist/components/Form/isEqual.js +61 -0
  497. package/dist/components/Form/isEqual.js.map +1 -0
  498. package/dist/components/Form/messages.d.ts +15 -0
  499. package/dist/components/Form/messages.js +52 -0
  500. package/dist/components/Form/messages.js.map +1 -0
  501. package/dist/components/Form/namePath.d.ts +78 -0
  502. package/dist/components/Form/namePath.js +120 -0
  503. package/dist/components/Form/namePath.js.map +1 -0
  504. package/dist/components/Form/useWatch.d.ts +11 -0
  505. package/dist/components/Form/useWatch.js +43 -0
  506. package/dist/components/Form/useWatch.js.map +1 -0
  507. package/dist/components/Form/validate.d.ts +16 -0
  508. package/dist/components/Form/validate.js +214 -0
  509. package/dist/components/Form/validate.js.map +1 -0
  510. package/dist/components/IconWithTooltip/IconWithTooltip.d.ts +19 -0
  511. package/dist/components/IconWithTooltip/IconWithTooltip2.js +38 -0
  512. package/dist/components/IconWithTooltip/IconWithTooltip2.js.map +1 -0
  513. package/dist/components/IconWithTooltip/accessibleLabel.d.ts +2 -0
  514. package/dist/components/IconWithTooltip/accessibleLabel.js +33 -0
  515. package/dist/components/IconWithTooltip/accessibleLabel.js.map +1 -0
  516. package/dist/components/IconWithTooltip/index.d.ts +2 -0
  517. package/dist/components/IconWithTooltip/index.js +2 -0
  518. package/dist/components/ImageWithFallback/ImageWithFallback.d.ts +11 -0
  519. package/dist/components/ImageWithFallback/ImageWithFallback2.js +28 -0
  520. package/dist/components/ImageWithFallback/ImageWithFallback2.js.map +1 -0
  521. package/dist/components/ImageWithFallback/index.d.ts +2 -0
  522. package/dist/components/ImageWithFallback/index.js +2 -0
  523. package/dist/components/ListBanner/ListBanner.d.ts +17 -0
  524. package/dist/components/ListBanner/ListBanner2.js +27 -0
  525. package/dist/components/ListBanner/ListBanner2.js.map +1 -0
  526. package/dist/components/ListBanner/index.d.ts +2 -0
  527. package/dist/components/ListBanner/index.js +2 -0
  528. package/dist/components/Modal/Modal.d.ts +65 -0
  529. package/dist/components/Modal/Modal2.js +226 -0
  530. package/dist/components/Modal/Modal2.js.map +1 -0
  531. package/dist/components/Modal/index.d.ts +15 -0
  532. package/dist/components/Modal/index.js +4 -0
  533. package/dist/components/Modal/modalStack.d.ts +64 -0
  534. package/dist/components/Modal/modalStack.js +81 -0
  535. package/dist/components/Modal/modalStack.js.map +1 -0
  536. package/dist/components/NotificationItem/NotificationItem.d.ts +14 -0
  537. package/dist/components/NotificationItem/NotificationItem2.js +40 -0
  538. package/dist/components/NotificationItem/NotificationItem2.js.map +1 -0
  539. package/dist/components/NotificationItem/index.d.ts +2 -0
  540. package/dist/components/NotificationItem/index.js +2 -0
  541. package/dist/components/NotificationStack/NotificationStack.d.ts +56 -0
  542. package/dist/components/NotificationStack/NotificationStack.messages.d.ts +6 -0
  543. package/dist/components/NotificationStack/NotificationStack.messages.js +10 -0
  544. package/dist/components/NotificationStack/NotificationStack.messages.js.map +1 -0
  545. package/dist/components/NotificationStack/NotificationStack2.js +154 -0
  546. package/dist/components/NotificationStack/NotificationStack2.js.map +1 -0
  547. package/dist/components/NotificationStack/index.d.ts +2 -0
  548. package/dist/components/NotificationStack/index.js +2 -0
  549. package/dist/components/OverlayScrollbar/OverlayScrollbar.d.ts +13 -0
  550. package/dist/components/OverlayScrollbar/OverlayScrollbar2.js +69 -0
  551. package/dist/components/OverlayScrollbar/OverlayScrollbar2.js.map +1 -0
  552. package/dist/components/OverlayScrollbar/index.d.ts +2 -0
  553. package/dist/components/OverlayScrollbar/index.js +2 -0
  554. package/dist/components/PageHeader/PageHeader.d.ts +24 -8
  555. package/dist/components/PageHeader/PageHeader.messages.d.ts +6 -0
  556. package/dist/components/PageHeader/PageHeader.messages.js +10 -0
  557. package/dist/components/PageHeader/PageHeader.messages.js.map +1 -0
  558. package/dist/components/PageHeader/PageHeader2.js +57 -30
  559. package/dist/components/PageHeader/PageHeader2.js.map +1 -1
  560. package/dist/components/PageLayout/PageLayout2.js +2 -2
  561. package/dist/components/PageLayout/PageLayout2.js.map +1 -1
  562. package/dist/components/PagedSelector/PagedSelector.d.ts +107 -0
  563. package/dist/components/PagedSelector/PagedSelector.messages.d.ts +30 -0
  564. package/dist/components/PagedSelector/PagedSelector.messages.js +36 -0
  565. package/dist/components/PagedSelector/PagedSelector.messages.js.map +1 -0
  566. package/dist/components/PagedSelector/PagedSelector2.js +220 -0
  567. package/dist/components/PagedSelector/PagedSelector2.js.map +1 -0
  568. package/dist/components/PagedSelector/PanelSearchInput.d.ts +22 -0
  569. package/dist/components/PagedSelector/PanelSearchInput.js +95 -0
  570. package/dist/components/PagedSelector/PanelSearchInput.js.map +1 -0
  571. package/dist/components/PagedSelector/index.d.ts +2 -0
  572. package/dist/components/PagedSelector/index.js +2 -0
  573. package/dist/components/ProgressWithLabel/ProgressWithLabel.d.ts +26 -0
  574. package/dist/components/ProgressWithLabel/ProgressWithLabel2.js +44 -0
  575. package/dist/components/ProgressWithLabel/ProgressWithLabel2.js.map +1 -0
  576. package/dist/components/ProgressWithLabel/index.d.ts +2 -0
  577. package/dist/components/ProgressWithLabel/index.js +2 -0
  578. package/dist/components/SelectionLabel/SelectionLabel.d.ts +23 -0
  579. package/dist/components/SelectionLabel/SelectionLabel.js +29 -0
  580. package/dist/components/SelectionLabel/SelectionLabel.js.map +1 -0
  581. package/dist/components/SelectionLabel/SelectionLabel.messages.d.ts +10 -0
  582. package/dist/components/SelectionLabel/SelectionLabel.messages.js +16 -0
  583. package/dist/components/SelectionLabel/SelectionLabel.messages.js.map +1 -0
  584. package/dist/components/SelectionLabel/index.d.ts +2 -0
  585. package/dist/components/SelectionLabel/index.js +2 -0
  586. package/dist/components/Skeleton/Skeleton.messages.d.ts +18 -0
  587. package/dist/components/Skeleton/Skeleton.messages.js +24 -0
  588. package/dist/components/Skeleton/Skeleton.messages.js.map +1 -0
  589. package/dist/components/Skeleton/SkeletonCard.d.ts +4 -9
  590. package/dist/components/Skeleton/SkeletonCard2.js +53 -53
  591. package/dist/components/Skeleton/SkeletonCard2.js.map +1 -1
  592. package/dist/components/Skeleton/SkeletonChart.d.ts +5 -11
  593. package/dist/components/Skeleton/SkeletonChart2.js +51 -45
  594. package/dist/components/Skeleton/SkeletonChart2.js.map +1 -1
  595. package/dist/components/Skeleton/SkeletonRow.d.ts +5 -10
  596. package/dist/components/Skeleton/SkeletonRow2.js +35 -34
  597. package/dist/components/Skeleton/SkeletonRow2.js.map +1 -1
  598. package/dist/components/Skeleton/SkeletonShape.d.ts +10 -0
  599. package/dist/components/Skeleton/SkeletonShape2.js +23 -0
  600. package/dist/components/Skeleton/SkeletonShape2.js.map +1 -0
  601. package/dist/components/Skeleton/SkeletonText.d.ts +4 -9
  602. package/dist/components/Skeleton/SkeletonText2.js +22 -17
  603. package/dist/components/Skeleton/SkeletonText2.js.map +1 -1
  604. package/dist/components/Skeleton/index.d.ts +3 -5
  605. package/dist/components/Skeleton/index.js +4 -5
  606. package/dist/components/SmoothHeight/SmoothHeight2.js +2 -2
  607. package/dist/components/SmoothHeight/SmoothHeight2.js.map +1 -1
  608. package/dist/components/StatCard/StatCard.d.ts +28 -16
  609. package/dist/components/StatCard/StatCard2.js +96 -89
  610. package/dist/components/StatCard/StatCard2.js.map +1 -1
  611. package/dist/components/StatCard/index.d.ts +1 -1
  612. package/dist/components/Statistic/Statistic.d.ts +30 -0
  613. package/dist/components/Statistic/Statistic.messages.d.ts +6 -0
  614. package/dist/components/Statistic/Statistic.messages.js +10 -0
  615. package/dist/components/Statistic/Statistic.messages.js.map +1 -0
  616. package/dist/components/Statistic/Statistic2.js +75 -0
  617. package/dist/components/Statistic/Statistic2.js.map +1 -0
  618. package/dist/components/Statistic/index.d.ts +2 -0
  619. package/dist/components/Statistic/index.js +2 -0
  620. package/dist/components/StepNumberInput/NumberStepper.d.ts +29 -0
  621. package/dist/components/StepNumberInput/NumberStepper.messages.d.ts +10 -0
  622. package/dist/components/StepNumberInput/NumberStepper.messages.js +16 -0
  623. package/dist/components/StepNumberInput/NumberStepper.messages.js.map +1 -0
  624. package/dist/components/StepNumberInput/NumberStepper2.js +50 -0
  625. package/dist/components/StepNumberInput/NumberStepper2.js.map +1 -0
  626. package/dist/components/StepNumberInput/StepNumberInput.d.ts +33 -0
  627. package/dist/components/StepNumberInput/StepNumberInput.js +48 -0
  628. package/dist/components/StepNumberInput/StepNumberInput.js.map +1 -0
  629. package/dist/components/StepNumberInput/index.d.ts +4 -0
  630. package/dist/components/StepNumberInput/index.js +3 -0
  631. package/dist/components/TextHighlighter/TextHighlighter.d.ts +14 -0
  632. package/dist/components/TextHighlighter/TextHighlighter2.js +29 -0
  633. package/dist/components/TextHighlighter/TextHighlighter2.js.map +1 -0
  634. package/dist/components/TextHighlighter/index.d.ts +2 -0
  635. package/dist/components/TextHighlighter/index.js +2 -0
  636. package/dist/components/TokenList/TokenList.d.ts +18 -0
  637. package/dist/components/TokenList/TokenList2.js +55 -0
  638. package/dist/components/TokenList/TokenList2.js.map +1 -0
  639. package/dist/components/TokenList/index.d.ts +2 -0
  640. package/dist/components/TokenList/index.js +2 -0
  641. package/dist/components/TokenRow/TokenRow.d.ts +27 -0
  642. package/dist/components/TokenRow/TokenRow.messages.d.ts +6 -0
  643. package/dist/components/TokenRow/TokenRow.messages.js +10 -0
  644. package/dist/components/TokenRow/TokenRow.messages.js.map +1 -0
  645. package/dist/components/TokenRow/TokenRow2.js +29 -0
  646. package/dist/components/TokenRow/TokenRow2.js.map +1 -0
  647. package/dist/components/TokenRow/index.d.ts +2 -0
  648. package/dist/components/TokenRow/index.js +2 -0
  649. package/dist/components/UncontrolledInput/UncontrolledInput.d.ts +29 -0
  650. package/dist/components/UncontrolledInput/UncontrolledInput.js +49 -0
  651. package/dist/components/UncontrolledInput/UncontrolledInput.js.map +1 -0
  652. package/dist/components/UncontrolledInput/UncontrolledInput.messages.d.ts +6 -0
  653. package/dist/components/UncontrolledInput/UncontrolledInput.messages.js +10 -0
  654. package/dist/components/UncontrolledInput/UncontrolledInput.messages.js.map +1 -0
  655. package/dist/components/UncontrolledInput/index.d.ts +2 -0
  656. package/dist/components/UncontrolledInput/index.js +2 -0
  657. package/dist/components/UnitGrid/UnitGrid.d.ts +56 -0
  658. package/dist/components/UnitGrid/UnitGrid.geometry.d.ts +102 -0
  659. package/dist/components/UnitGrid/UnitGrid.geometry.js +172 -0
  660. package/dist/components/UnitGrid/UnitGrid.geometry.js.map +1 -0
  661. package/dist/components/UnitGrid/UnitGrid.messages.d.ts +14 -0
  662. package/dist/components/UnitGrid/UnitGrid.messages.js +20 -0
  663. package/dist/components/UnitGrid/UnitGrid.messages.js.map +1 -0
  664. package/dist/components/UnitGrid/UnitGrid2.js +393 -0
  665. package/dist/components/UnitGrid/UnitGrid2.js.map +1 -0
  666. package/dist/components/UnitGrid/UnitGridSkeleton.d.ts +9 -0
  667. package/dist/components/UnitGrid/UnitGridSkeleton.js +73 -0
  668. package/dist/components/UnitGrid/UnitGridSkeleton.js.map +1 -0
  669. package/dist/components/UnitGrid/index.d.ts +4 -0
  670. package/dist/components/UnitGrid/index.js +3 -0
  671. package/dist/forks/ComplexSelector/ComplexSelector.d.ts +144 -0
  672. package/dist/forks/ComplexSelector/ComplexSelector.js +157 -0
  673. package/dist/forks/ComplexSelector/ComplexSelector.js.map +1 -0
  674. package/dist/forks/ComplexSelector/ComplexSelector.styles.d.ts +125 -0
  675. package/dist/forks/ComplexSelector/ComplexSelector.styles.js +129 -0
  676. package/dist/forks/ComplexSelector/ComplexSelector.styles.js.map +1 -0
  677. package/dist/forks/ComplexSelector/index.d.ts +7 -0
  678. package/dist/forks/ComplexSelector/index.js +2 -0
  679. package/dist/forks/Drawer/Drawer.d.ts +98 -0
  680. package/dist/forks/Drawer/Drawer.js +94 -0
  681. package/dist/forks/Drawer/Drawer.js.map +1 -0
  682. package/dist/forks/Drawer/Drawer.styles.d.ts +99 -0
  683. package/dist/forks/Drawer/Drawer.styles.js +94 -0
  684. package/dist/forks/Drawer/Drawer.styles.js.map +1 -0
  685. package/dist/forks/Drawer/index.d.ts +6 -0
  686. package/dist/forks/Drawer/index.js +2 -0
  687. package/dist/forks/Drawer/useDrawerDialogPresence.d.ts +19 -0
  688. package/dist/forks/Drawer/useDrawerDialogPresence.js +62 -0
  689. package/dist/forks/Drawer/useDrawerDialogPresence.js.map +1 -0
  690. package/dist/forks/Tour/Tour.d.ts +58 -0
  691. package/dist/forks/Tour/Tour.js +55 -0
  692. package/dist/forks/Tour/Tour.js.map +1 -0
  693. package/dist/forks/Tour/TourContext.d.ts +37 -0
  694. package/dist/forks/Tour/TourContext.js +8 -0
  695. package/dist/forks/Tour/TourContext.js.map +1 -0
  696. package/dist/forks/Tour/TourStep.d.ts +43 -0
  697. package/dist/forks/Tour/TourStep.js +134 -0
  698. package/dist/forks/Tour/TourStep.js.map +1 -0
  699. package/dist/forks/Tour/TourStep.styles.d.ts +23 -0
  700. package/dist/forks/Tour/TourStep.styles.js +28 -0
  701. package/dist/forks/Tour/TourStep.styles.js.map +1 -0
  702. package/dist/forks/Tour/index.d.ts +11 -0
  703. package/dist/forks/Tour/index.js +4 -0
  704. package/dist/forks/Tour/useTour.d.ts +26 -0
  705. package/dist/forks/Tour/useTour.js +20 -0
  706. package/dist/forks/Tour/useTour.js.map +1 -0
  707. package/dist/forks/compiled.d.ts +5 -0
  708. package/dist/forks/compiled.js +8 -0
  709. package/dist/forks/compiled.js.map +1 -0
  710. package/dist/i18n/catalog.d.ts +12 -0
  711. package/dist/i18n/catalog.js +46 -0
  712. package/dist/i18n/catalog.js.map +1 -0
  713. package/dist/i18n/common.messages.d.ts +31 -0
  714. package/dist/i18n/common.messages.js +32 -0
  715. package/dist/i18n/common.messages.js.map +1 -0
  716. package/dist/i18n/index.d.ts +21 -0
  717. package/dist/i18n/index.js +3 -0
  718. package/dist/i18n/locales/de-DE.js +331 -0
  719. package/dist/i18n/locales/de-DE.js.map +1 -0
  720. package/dist/i18n/locales/el-GR.js +331 -0
  721. package/dist/i18n/locales/el-GR.js.map +1 -0
  722. package/dist/i18n/locales/es-ES.js +331 -0
  723. package/dist/i18n/locales/es-ES.js.map +1 -0
  724. package/dist/i18n/locales/fi-FI.js +331 -0
  725. package/dist/i18n/locales/fi-FI.js.map +1 -0
  726. package/dist/i18n/locales/fr-FR.js +331 -0
  727. package/dist/i18n/locales/fr-FR.js.map +1 -0
  728. package/dist/i18n/locales/id-ID.js +331 -0
  729. package/dist/i18n/locales/id-ID.js.map +1 -0
  730. package/dist/i18n/locales/it-IT.js +331 -0
  731. package/dist/i18n/locales/it-IT.js.map +1 -0
  732. package/dist/i18n/locales/ja-JP.js +351 -0
  733. package/dist/i18n/locales/ja-JP.js.map +1 -0
  734. package/dist/i18n/locales/ko-KR.js +351 -0
  735. package/dist/i18n/locales/ko-KR.js.map +1 -0
  736. package/dist/i18n/locales/mn-MN.js +327 -0
  737. package/dist/i18n/locales/mn-MN.js.map +1 -0
  738. package/dist/i18n/locales/ms-MY.js +331 -0
  739. package/dist/i18n/locales/ms-MY.js.map +1 -0
  740. package/dist/i18n/locales/pl-PL.js +331 -0
  741. package/dist/i18n/locales/pl-PL.js.map +1 -0
  742. package/dist/i18n/locales/pt-BR.js +331 -0
  743. package/dist/i18n/locales/pt-BR.js.map +1 -0
  744. package/dist/i18n/locales/pt-PT.js +331 -0
  745. package/dist/i18n/locales/pt-PT.js.map +1 -0
  746. package/dist/i18n/locales/ru-RU.js +331 -0
  747. package/dist/i18n/locales/ru-RU.js.map +1 -0
  748. package/dist/i18n/locales/th-TH.js +331 -0
  749. package/dist/i18n/locales/th-TH.js.map +1 -0
  750. package/dist/i18n/locales/tr-TR.js +331 -0
  751. package/dist/i18n/locales/tr-TR.js.map +1 -0
  752. package/dist/i18n/locales/vi-VN.js +331 -0
  753. package/dist/i18n/locales/vi-VN.js.map +1 -0
  754. package/dist/i18n/locales/zh-CN.js +331 -0
  755. package/dist/i18n/locales/zh-CN.js.map +1 -0
  756. package/dist/i18n/locales/zh-TW.js +331 -0
  757. package/dist/i18n/locales/zh-TW.js.map +1 -0
  758. package/dist/i18n/messages.d.ts +13 -0
  759. package/dist/i18n/messages.js +63 -0
  760. package/dist/i18n/messages.js.map +1 -0
  761. package/dist/i18n/translateWithNodes.d.ts +3 -0
  762. package/dist/i18n/translateWithNodes.js +14 -0
  763. package/dist/i18n/translateWithNodes.js.map +1 -0
  764. package/dist/i18n/useUicTranslator.d.ts +5 -0
  765. package/dist/i18n/useUicTranslator.js +38 -0
  766. package/dist/i18n/useUicTranslator.js.map +1 -0
  767. package/dist/index.d.ts +101 -27
  768. package/dist/index.js +63 -23
  769. package/dist/instance.d.ts +31 -0
  770. package/dist/instance.js +33 -0
  771. package/dist/instance.js.map +1 -0
  772. package/dist/legacy-tokens.css +177 -0
  773. package/dist/locales/af-ZA.json +954 -0
  774. package/dist/locales/ar-SA.json +994 -0
  775. package/dist/locales/ca-ES.json +970 -0
  776. package/dist/locales/cs-CZ.json +986 -0
  777. package/dist/locales/da-DK.json +962 -0
  778. package/dist/locales/de-DE.json +962 -0
  779. package/dist/locales/el-GR.json +986 -0
  780. package/dist/locales/en.json +1482 -0
  781. package/dist/locales/es-ES.json +974 -0
  782. package/dist/locales/fi-FI.json +986 -0
  783. package/dist/locales/fr-FR.json +950 -0
  784. package/dist/locales/he-IL.json +986 -0
  785. package/dist/locales/hu-HU.json +986 -0
  786. package/dist/locales/it-IT.json +974 -0
  787. package/dist/locales/ja-JP.json +994 -0
  788. package/dist/locales/ko-KR.json +986 -0
  789. package/dist/locales/nl-NL.json +950 -0
  790. package/dist/locales/no-NO.json +974 -0
  791. package/dist/locales/pl-PL.json +978 -0
  792. package/dist/locales/pseudo.json +1112 -0
  793. package/dist/locales/pt-BR.json +978 -0
  794. package/dist/locales/pt-PT.json +978 -0
  795. package/dist/locales/ro-RO.json +978 -0
  796. package/dist/locales/ru-RU.json +986 -0
  797. package/dist/locales/sr-SP.json +986 -0
  798. package/dist/locales/sv-SE.json +982 -0
  799. package/dist/locales/tr-TR.json +986 -0
  800. package/dist/locales/uk-UA.json +986 -0
  801. package/dist/locales/vi-VN.json +982 -0
  802. package/dist/locales/zh-CN.json +994 -0
  803. package/dist/locales/zh-TW.json +994 -0
  804. package/dist/styles/base.css +29 -2
  805. package/dist/styles/themes/orange-dark.css +4 -0
  806. package/dist/styles/themes/orange-light.css +4 -0
  807. package/dist/theme/lablup/built/lablup.d.ts +13 -0
  808. package/dist/theme/lablup/built/lablup.js +567 -0
  809. package/dist/theme/lablup/built/lablup.variants.d.ts +16 -0
  810. package/dist/theme/lablup/built/theme.css +716 -0
  811. package/dist/theme/lablup/index.d.ts +9 -0
  812. package/dist/theme/lablup/index.js +2 -0
  813. package/dist/theme/lablup/lablupTheme.d.ts +10 -0
  814. package/dist/theme/lablup/lablupTheme.js +21 -0
  815. package/dist/theme/lablup/lablupTheme.js.map +1 -0
  816. package/dist/ui-common-locales/de-DE.json +326 -0
  817. package/dist/ui-common-locales/el-GR.json +326 -0
  818. package/dist/ui-common-locales/en.json +346 -0
  819. package/dist/ui-common-locales/es-ES.json +326 -0
  820. package/dist/ui-common-locales/fi-FI.json +326 -0
  821. package/dist/ui-common-locales/fr-FR.json +326 -0
  822. package/dist/ui-common-locales/id-ID.json +326 -0
  823. package/dist/ui-common-locales/it-IT.json +326 -0
  824. package/dist/ui-common-locales/ja-JP.json +346 -0
  825. package/dist/ui-common-locales/ko-KR.json +346 -0
  826. package/dist/ui-common-locales/mn-MN.json +322 -0
  827. package/dist/ui-common-locales/ms-MY.json +326 -0
  828. package/dist/ui-common-locales/pl-PL.json +326 -0
  829. package/dist/ui-common-locales/pt-BR.json +326 -0
  830. package/dist/ui-common-locales/pt-PT.json +326 -0
  831. package/dist/ui-common-locales/ru-RU.json +326 -0
  832. package/dist/ui-common-locales/th-TH.json +326 -0
  833. package/dist/ui-common-locales/tr-TR.json +326 -0
  834. package/dist/ui-common-locales/vi-VN.json +326 -0
  835. package/dist/ui-common-locales/zh-CN.json +326 -0
  836. package/dist/ui-common-locales/zh-TW.json +326 -0
  837. package/dist/ui-common.css +51 -0
  838. package/exports.customs.json +62 -0
  839. package/exports.exclude.json +47 -0
  840. package/package.json +565 -21
  841. package/dist/assets/components/Badge/Badge.css +0 -1
  842. package/dist/assets/components/BaseCard/BaseCard.css +0 -1
  843. package/dist/assets/components/Button/Button.css +0 -1
  844. package/dist/assets/components/DataTable/DataTable.css +0 -1
  845. package/dist/assets/components/Drawer/Drawer.css +0 -1
  846. package/dist/assets/components/EmptyState/EmptyState.css +0 -1
  847. package/dist/assets/components/ProgressBar/ProgressBar.css +0 -1
  848. package/dist/assets/components/Skeleton/Skeleton.css +0 -1
  849. package/dist/assets/components/StatusTag/StatusTag.css +0 -1
  850. package/dist/assets/components/Tabs/Tabs.css +0 -1
  851. package/dist/assets/components/Tooltip/Tooltip.css +0 -1
  852. package/dist/components/Badge/Badge.d.ts +0 -7
  853. package/dist/components/Badge/Badge2.js +0 -20
  854. package/dist/components/Badge/Badge2.js.map +0 -1
  855. package/dist/components/Badge/index.d.ts +0 -2
  856. package/dist/components/Badge/index.js +0 -2
  857. package/dist/components/BaseCard/BaseCard.d.ts +0 -57
  858. package/dist/components/BaseCard/BaseCard2.js +0 -37
  859. package/dist/components/BaseCard/BaseCard2.js.map +0 -1
  860. package/dist/components/BaseCard/index.d.ts +0 -2
  861. package/dist/components/BaseCard/index.js +0 -2
  862. package/dist/components/Button/Button.d.ts +0 -54
  863. package/dist/components/Button/Button2.js +0 -75
  864. package/dist/components/Button/Button2.js.map +0 -1
  865. package/dist/components/Button/index.d.ts +0 -5
  866. package/dist/components/Button/index.js +0 -2
  867. package/dist/components/DataTable/DataTable.d.ts +0 -144
  868. package/dist/components/DataTable/DataTable2.js +0 -244
  869. package/dist/components/DataTable/DataTable2.js.map +0 -1
  870. package/dist/components/DataTable/index.d.ts +0 -2
  871. package/dist/components/DataTable/index.js +0 -2
  872. package/dist/components/Drawer/Drawer.d.ts +0 -25
  873. package/dist/components/Drawer/Drawer2.js +0 -107
  874. package/dist/components/Drawer/Drawer2.js.map +0 -1
  875. package/dist/components/Drawer/index.d.ts +0 -2
  876. package/dist/components/Drawer/index.js +0 -2
  877. package/dist/components/EmptyState/EmptyState.d.ts +0 -52
  878. package/dist/components/EmptyState/EmptyState.example.d.ts +0 -8
  879. package/dist/components/EmptyState/EmptyState2.js +0 -62
  880. package/dist/components/EmptyState/EmptyState2.js.map +0 -1
  881. package/dist/components/EmptyState/index.d.ts +0 -10
  882. package/dist/components/EmptyState/index.js +0 -2
  883. package/dist/components/ProgressBar/ProgressBar.d.ts +0 -22
  884. package/dist/components/ProgressBar/ProgressBar2.js +0 -37
  885. package/dist/components/ProgressBar/ProgressBar2.js.map +0 -1
  886. package/dist/components/ProgressBar/index.d.ts +0 -2
  887. package/dist/components/ProgressBar/index.js +0 -2
  888. package/dist/components/Skeleton/Skeleton.d.ts +0 -25
  889. package/dist/components/Skeleton/Skeleton2.js +0 -27
  890. package/dist/components/Skeleton/Skeleton2.js.map +0 -1
  891. package/dist/components/StatusTag/StatusTag.d.ts +0 -38
  892. package/dist/components/StatusTag/StatusTag2.js +0 -45
  893. package/dist/components/StatusTag/StatusTag2.js.map +0 -1
  894. package/dist/components/StatusTag/index.d.ts +0 -2
  895. package/dist/components/StatusTag/index.js +0 -2
  896. package/dist/components/Tabs/Tabs.d.ts +0 -94
  897. package/dist/components/Tabs/Tabs2.js +0 -412
  898. package/dist/components/Tabs/Tabs2.js.map +0 -1
  899. package/dist/components/Tabs/index.d.ts +0 -2
  900. package/dist/components/Tabs/index.js +0 -2
  901. package/dist/components/Tooltip/Tooltip.d.ts +0 -16
  902. package/dist/components/Tooltip/Tooltip2.js +0 -68
  903. package/dist/components/Tooltip/Tooltip2.js.map +0 -1
  904. package/dist/components/Tooltip/index.d.ts +0 -2
  905. package/dist/components/Tooltip/index.js +0 -2
  906. package/dist/hooks/index.js +0 -2
  907. package/dist/icons/AlertCircleIcon.d.ts +0 -11
  908. package/dist/icons/AlertCircleIcon.js +0 -26
  909. package/dist/icons/AlertCircleIcon.js.map +0 -1
@@ -0,0 +1,19 @@
1
+ import { useUicTranslator as e } from "../../i18n/useUicTranslator.js";
2
+ import { jsx as t } from "react/jsx-runtime";
3
+ import { Token as n } from "@astryxdesign/core/Token";
4
+ //#region src/components/BooleanToken/BooleanToken.tsx
5
+ function r({ value: r, trueLabel: i, falseLabel: a, fallback: o = "-" }) {
6
+ let s = e();
7
+ return typeof r == "boolean" ? r ? /* @__PURE__ */ t(n, {
8
+ color: "green",
9
+ label: i ?? s("uic.BooleanToken.true")
10
+ }) : /* @__PURE__ */ t(n, {
11
+ color: "default",
12
+ label: a ?? s("uic.BooleanToken.false")
13
+ }) : o;
14
+ }
15
+ r.displayName = "BooleanToken";
16
+ //#endregion
17
+ export { r as BooleanToken };
18
+
19
+ //# sourceMappingURL=BooleanToken.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BooleanToken.js","names":[],"sources":["../../../src/components/BooleanToken/BooleanToken.tsx"],"sourcesContent":["/**\n * BooleanToken\n *\n * An on/off value as a Token: green for true, the quiet default outline for\n * false, and `fallback` when the value is not a boolean (unknown, not loaded).\n *\n * @example\n * <BooleanToken value={user.isAdmin} trueLabel=\"Admin\" falseLabel=\"Member\" />\n */\nimport type { ReactNode } from \"react\";\nimport { Token } from \"@astryxdesign/core/Token\";\n\nimport { useUicTranslator } from \"../../i18n/useUicTranslator\";\n\nexport interface BooleanTokenProps {\n /** The value. Anything but a boolean renders `fallback`. */\n value: boolean | null | undefined;\n /** Label for `true`. @default the catalog's uic.BooleanToken.true (\"True\") */\n trueLabel?: string;\n /** Label for `false`. @default the catalog's uic.BooleanToken.false (\"False\") */\n falseLabel?: string;\n /** Rendered when `value` is not a boolean. @default \"-\" */\n fallback?: ReactNode;\n}\n\nexport function BooleanToken({\n value,\n trueLabel,\n falseLabel,\n fallback = \"-\",\n}: BooleanTokenProps) {\n const t = useUicTranslator();\n if (typeof value !== \"boolean\") {\n return fallback;\n }\n return value ? (\n <Token color=\"green\" label={trueLabel ?? t(\"uic.BooleanToken.true\")} />\n ) : (\n <Token color=\"default\" label={falseLabel ?? t(\"uic.BooleanToken.false\")} />\n );\n}\n\nBooleanToken.displayName = \"BooleanToken\";\n"],"mappings":";;;;AAyBA,SAAgB,EAAa,EAC3B,UACA,cACA,eACA,cAAW,OACS;CACpB,IAAM,IAAI,EAAiB;CAI3B,OAHI,OAAO,KAAU,YAGd,IACL,kBAAC,GAAD;EAAO,OAAM;EAAQ,OAAO,KAAa,EAAE,uBAAuB;CAAI,CAAA,IAEtE,kBAAC,GAAD;EAAO,OAAM;EAAU,OAAO,KAAc,EAAE,wBAAwB;CAAI,CAAA,IALnE;AAOX;AAEA,EAAa,cAAc"}
@@ -0,0 +1,10 @@
1
+ export declare const booleanTokenMessages: {
2
+ readonly "uic.BooleanToken.true": {
3
+ readonly defaultMessage: "True";
4
+ readonly description: "Default label of a token showing a boolean value that is true";
5
+ };
6
+ readonly "uic.BooleanToken.false": {
7
+ readonly defaultMessage: "False";
8
+ readonly description: "Default label of a token showing a boolean value that is false";
9
+ };
10
+ };
@@ -0,0 +1,16 @@
1
+ import { defineMessages as e } from "../../i18n/catalog.js";
2
+ //#region src/components/BooleanToken/BooleanToken.messages.ts
3
+ var t = e({
4
+ "uic.BooleanToken.true": {
5
+ defaultMessage: "True",
6
+ description: "Default label of a token showing a boolean value that is true"
7
+ },
8
+ "uic.BooleanToken.false": {
9
+ defaultMessage: "False",
10
+ description: "Default label of a token showing a boolean value that is false"
11
+ }
12
+ });
13
+ //#endregion
14
+ export { t as booleanTokenMessages };
15
+
16
+ //# sourceMappingURL=BooleanToken.messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BooleanToken.messages.js","names":[],"sources":["../../../src/components/BooleanToken/BooleanToken.messages.ts"],"sourcesContent":["import { defineMessages } from \"../../i18n/catalog\";\n\nexport const booleanTokenMessages = defineMessages({\n \"uic.BooleanToken.true\": {\n defaultMessage: \"True\",\n description: \"Default label of a token showing a boolean value that is true\",\n },\n \"uic.BooleanToken.false\": {\n defaultMessage: \"False\",\n description: \"Default label of a token showing a boolean value that is false\",\n },\n});\n"],"mappings":";;AAEA,IAAa,IAAuB,EAAe;CACjD,yBAAyB;EACvB,gBAAgB;EAChB,aAAa;CACf;CACA,0BAA0B;EACxB,gBAAgB;EAChB,aAAa;CACf;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { BooleanToken } from './BooleanToken';
2
+ export type { BooleanTokenProps } from './BooleanToken';
@@ -0,0 +1,2 @@
1
+ import { BooleanToken as e } from "./BooleanToken.js";
2
+ export { e as BooleanToken };
@@ -0,0 +1,24 @@
1
+ import { ReactElement } from 'react';
2
+ import { FormItemProps, RuleObject, RuleRender } from '../Form';
3
+ /** A rule without `required`: the item always shows the required marker itself. */
4
+ type RuleWithoutRequired = Omit<RuleObject, "required"> | RuleRender;
5
+ export interface BulkEditFormItemProps extends Omit<FormItemProps, "required" | "rules"> {
6
+ /** Offers "Clear", which sets the value to `null` for every record. */
7
+ hasClear?: boolean;
8
+ /** The placeholder in keep mode. @default "Keep as is" */
9
+ keepValueLabel?: string;
10
+ /** The placeholder once cleared. @default "Clear" */
11
+ clearValueLabel?: string;
12
+ /** The label of the clear action. @default "Clear" */
13
+ clearLabel?: string;
14
+ /** The label of the action that returns to keep mode. @default "Undo changes" */
15
+ undoLabel?: string;
16
+ /** The control that edits the value. */
17
+ children?: ReactElement;
18
+ rules?: RuleWithoutRequired[];
19
+ }
20
+ export declare function BulkEditFormItem({ name, hasClear, keepValueLabel, clearValueLabel, clearLabel, undoLabel, children, ...formItemProps }: BulkEditFormItemProps): import("react").JSX.Element;
21
+ export declare namespace BulkEditFormItem {
22
+ var displayName: string;
23
+ }
24
+ export {};
@@ -0,0 +1,93 @@
1
+ import { useUicTranslator as e } from "../../i18n/useUicTranslator.js";
2
+ import { Form as t } from "../Form/index.js";
3
+ import { cloneElement as n, forwardRef as r, useImperativeHandle as i, useRef as a, useState as o } from "react";
4
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
5
+ import { HStack as l } from "@astryxdesign/core/HStack";
6
+ import { Link as u } from "@astryxdesign/core/Link";
7
+ import { TextInput as d } from "@astryxdesign/core/TextInput";
8
+ //#region src/components/BulkEditFormItem/BulkEditFormItem.tsx
9
+ var f = () => {};
10
+ function p({ name: n, hasClear: r = !1, keepValueLabel: i, clearValueLabel: p, clearLabel: h, undoLabel: g, children: _, ...v }) {
11
+ let y = e(), b = t.useFormInstance(), [x, S] = o("keep"), C = a(null), w = () => {
12
+ setTimeout(() => {
13
+ C.current?.focus(), C.current?.open();
14
+ }, 0);
15
+ }, T = (e) => {
16
+ e.preventDefault(), S("edit"), w();
17
+ }, E = () => {
18
+ let e = b.getFieldValue(n);
19
+ e === void 0 && S("keep"), e === null && r && S("clear");
20
+ }, D = () => {
21
+ S("clear"), b.setFieldValue(n, null);
22
+ }, O = () => {
23
+ S("keep"), b.setFieldValue(n, void 0);
24
+ }, k = i ?? y("uic.BulkEditFormItem.keepAsIs"), A = p ?? y("uic.BulkEditFormItem.clear"), j = /* @__PURE__ */ c(l, {
25
+ align: "center",
26
+ children: [x === "keep" && r && /* @__PURE__ */ s(u, {
27
+ onClick: D,
28
+ children: h ?? y("uic.BulkEditFormItem.clear")
29
+ }), /* @__PURE__ */ s(t.Item, {
30
+ noStyle: !0,
31
+ dependencies: [n],
32
+ children: ({ getFieldValue: e }) => x !== "keep" && e(n) !== void 0 && /* @__PURE__ */ s(u, {
33
+ onClick: O,
34
+ children: g ?? y("uic.BulkEditFormItem.undoChanges")
35
+ })
36
+ })]
37
+ }), M = (e) => /* @__PURE__ */ s(d, {
38
+ label: e,
39
+ isLabelHidden: !0,
40
+ value: e,
41
+ onChange: f,
42
+ onMouseDown: T,
43
+ onFocus: T,
44
+ width: "100%"
45
+ });
46
+ return /* @__PURE__ */ c(t.Item, {
47
+ ...v,
48
+ style: {
49
+ marginBottom: 0,
50
+ ...v.style
51
+ },
52
+ required: !0,
53
+ extra: /* @__PURE__ */ c(l, {
54
+ justify: v.extra ? "between" : "end",
55
+ align: "center",
56
+ gap: 2,
57
+ children: [v.extra, j]
58
+ }),
59
+ children: [x === "keep" ? M(k) : x === "clear" ? M(A) : null, x !== "keep" && /* @__PURE__ */ s(t.Item, {
60
+ name: n,
61
+ ...v,
62
+ noStyle: !0,
63
+ hidden: x !== "edit",
64
+ children: _ && /* @__PURE__ */ s(m, {
65
+ ref: C,
66
+ onBlur: E,
67
+ children: _
68
+ })
69
+ })]
70
+ });
71
+ }
72
+ p.displayName = "BulkEditFormItem";
73
+ var m = r(({ children: e, ...t }, r) => {
74
+ let s = a(null), [c, l] = o(!1);
75
+ i(r, () => ({
76
+ focus: () => s.current?.focus?.(),
77
+ open: () => l(!0)
78
+ }));
79
+ let u = e.props;
80
+ return n(e, {
81
+ ...t,
82
+ ref: s,
83
+ open: c,
84
+ onOpenChange: (e) => {
85
+ l(e), u.onOpenChange?.(e);
86
+ }
87
+ });
88
+ });
89
+ m.displayName = "ControlWrapper";
90
+ //#endregion
91
+ export { p as BulkEditFormItem };
92
+
93
+ //# sourceMappingURL=BulkEditFormItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BulkEditFormItem.js","names":[],"sources":["../../../src/components/BulkEditFormItem/BulkEditFormItem.tsx"],"sourcesContent":["/**\n * BulkEditFormItem\n *\n * A `Form.Item` for editing one field across many records at once. It starts\n * in \"keep as is\" (the field's value stays `undefined`, so a submit leaves\n * every record's current value alone); clicking or focusing the placeholder\n * switches to editing the wrapped control; `hasClear` adds a \"Clear\" action\n * that sets the value to `null`; \"Undo changes\" returns to keep mode.\n *\n * The control is unmounted in keep mode, so its field registers only when the\n * user starts editing, and an `initialValue` applies at that moment rather\n * than marking every field edited on mount.\n *\n * @example\n * <BulkEditFormItem name=\"domain\" label=\"Domain\" hasClear clearValueLabel=\"No domain\">\n * <Selector options={domains} />\n * </BulkEditFormItem>\n */\nimport {\n cloneElement,\n forwardRef,\n useImperativeHandle,\n useRef,\n useState,\n type MouseEvent,\n type FocusEvent,\n type ReactElement,\n} from \"react\";\nimport { HStack } from \"@astryxdesign/core/HStack\";\nimport { Link } from \"@astryxdesign/core/Link\";\nimport { TextInput } from \"@astryxdesign/core/TextInput\";\n\nimport { useUicTranslator } from \"../../i18n/useUicTranslator\";\nimport { Form, type FormItemProps, type RuleObject, type RuleRender } from \"../Form\";\n\ntype BulkEditMode = \"keep\" | \"edit\" | \"clear\";\n\n/** A rule without `required`: the item always shows the required marker itself. */\ntype RuleWithoutRequired = Omit<RuleObject, \"required\"> | RuleRender;\n\nexport interface BulkEditFormItemProps extends Omit<\n FormItemProps,\n \"required\" | \"rules\"\n> {\n /** Offers \"Clear\", which sets the value to `null` for every record. */\n hasClear?: boolean;\n /** The placeholder in keep mode. @default \"Keep as is\" */\n keepValueLabel?: string;\n /** The placeholder once cleared. @default \"Clear\" */\n clearValueLabel?: string;\n /** The label of the clear action. @default \"Clear\" */\n clearLabel?: string;\n /** The label of the action that returns to keep mode. @default \"Undo changes\" */\n undoLabel?: string;\n /** The control that edits the value. */\n children?: ReactElement;\n rules?: RuleWithoutRequired[];\n}\n\nconst noop = () => {};\n\nexport function BulkEditFormItem({\n name,\n hasClear = false,\n keepValueLabel,\n clearValueLabel,\n clearLabel,\n undoLabel,\n children,\n ...formItemProps\n}: BulkEditFormItemProps) {\n const t = useUicTranslator();\n const form = Form.useFormInstance();\n const [mode, setMode] = useState<BulkEditMode>(\"keep\");\n const controlRef = useRef<ControlWrapperRef>(null);\n\n const focusControl = () => {\n setTimeout(() => {\n controlRef.current?.focus();\n controlRef.current?.open();\n }, 0);\n };\n\n const handlePlaceholderClick = (e: MouseEvent | FocusEvent) => {\n e.preventDefault();\n setMode(\"edit\");\n focusControl();\n };\n\n const handleControlBlur = () => {\n const currentValue = form.getFieldValue(name);\n if (currentValue === undefined) {\n setMode(\"keep\");\n }\n if (currentValue === null && hasClear) {\n setMode(\"clear\");\n }\n };\n\n const handleClear = () => {\n setMode(\"clear\");\n form.setFieldValue(name, null);\n };\n\n const handleUndo = () => {\n setMode(\"keep\");\n form.setFieldValue(name, undefined);\n };\n\n const resolvedKeepValueLabel = keepValueLabel ?? t(\"uic.BulkEditFormItem.keepAsIs\");\n const resolvedClearValueLabel = clearValueLabel ?? t(\"uic.BulkEditFormItem.clear\");\n\n const actions = (\n <HStack align=\"center\">\n {mode === \"keep\" && hasClear && (\n <Link onClick={handleClear}>\n {clearLabel ?? t(\"uic.BulkEditFormItem.clear\")}\n </Link>\n )}\n {/* A dependency-only item re-renders when the field's value changes. */}\n <Form.Item noStyle dependencies={[name]}>\n {({ getFieldValue }) =>\n mode !== \"keep\" &&\n getFieldValue(name) !== undefined && (\n <Link onClick={handleUndo}>\n {undoLabel ?? t(\"uic.BulkEditFormItem.undoChanges\")}\n </Link>\n )\n }\n </Form.Item>\n </HStack>\n );\n\n const placeholder = (label: string) => (\n <TextInput\n label={label}\n isLabelHidden\n value={label}\n onChange={noop}\n onMouseDown={handlePlaceholderClick}\n onFocus={handlePlaceholderClick}\n width=\"100%\"\n />\n );\n\n return (\n <Form.Item\n {...formItemProps}\n style={{ marginBottom: 0, ...formItemProps.style }}\n // The marker is shown for every bulk-edit field: the item has no rules\n // of its own to derive it from.\n required\n extra={\n <HStack\n justify={formItemProps.extra ? \"between\" : \"end\"}\n align=\"center\"\n gap={2}\n >\n {formItemProps.extra}\n {actions}\n </HStack>\n }\n >\n {mode === \"keep\"\n ? placeholder(resolvedKeepValueLabel)\n : mode === \"clear\"\n ? placeholder(resolvedClearValueLabel)\n : null}\n {/* Clear mode stays mounted (hidden) so its `null` is still collected\n by validateFields / getFieldsValue. */}\n {mode !== \"keep\" && (\n <Form.Item name={name} {...formItemProps} noStyle hidden={mode !== \"edit\"}>\n {children && (\n <ControlWrapper ref={controlRef} onBlur={handleControlBlur}>\n {children}\n </ControlWrapper>\n )}\n </Form.Item>\n )}\n </Form.Item>\n );\n}\n\nBulkEditFormItem.displayName = \"BulkEditFormItem\";\n\ninterface ControlWrapperRef {\n open: () => void;\n focus: () => void;\n}\n\ninterface ControlWrapperProps {\n children: ReactElement;\n onBlur?: () => void;\n}\n\n/**\n * Clones the control with a ref and a controlled `open` / `onOpenChange`\n * pair, so the item can focus it and open its popup when editing starts.\n * Any other props the item injects pass through.\n */\nconst ControlWrapper = forwardRef<ControlWrapperRef, ControlWrapperProps>(\n ({ children, ...props }, ref) => {\n const innerRef = useRef<{ focus?: () => void } | null>(null);\n const [open, setOpen] = useState(false);\n\n useImperativeHandle(ref, () => ({\n focus: () => innerRef.current?.focus?.(),\n open: () => setOpen(true),\n }));\n\n const childProps = children.props as { onOpenChange?: (isOpen: boolean) => void };\n return cloneElement(children, {\n ...props,\n ref: innerRef,\n open,\n onOpenChange: (isOpen: boolean) => {\n setOpen(isOpen);\n childProps.onOpenChange?.(isOpen);\n },\n } as Record<string, unknown>);\n },\n);\nControlWrapper.displayName = \"ControlWrapper\";\n"],"mappings":";;;;;;;;AA2DA,IAAM,UAAa,CAAC;AAEpB,SAAgB,EAAiB,EAC/B,SACA,cAAW,IACX,mBACA,oBACA,eACA,cACA,aACA,GAAG,KACqB;CACxB,IAAM,IAAI,EAAiB,GACrB,IAAO,EAAK,gBAAgB,GAC5B,CAAC,GAAM,KAAW,EAAuB,MAAM,GAC/C,IAAa,EAA0B,IAAI,GAE3C,UAAqB;EACzB,iBAAiB;GAEf,AADA,EAAW,SAAS,MAAM,GAC1B,EAAW,SAAS,KAAK;EAC3B,GAAG,CAAC;CACN,GAEM,KAA0B,MAA+B;EAG7D,AAFA,EAAE,eAAe,GACjB,EAAQ,MAAM,GACd,EAAa;CACf,GAEM,UAA0B;EAC9B,IAAM,IAAe,EAAK,cAAc,CAAI;EAI5C,AAHI,MAAiB,KAAA,KACnB,EAAQ,MAAM,GAEZ,MAAiB,QAAQ,KAC3B,EAAQ,OAAO;CAEnB,GAEM,UAAoB;EAExB,AADA,EAAQ,OAAO,GACf,EAAK,cAAc,GAAM,IAAI;CAC/B,GAEM,UAAmB;EAEvB,AADA,EAAQ,MAAM,GACd,EAAK,cAAc,GAAM,KAAA,CAAS;CACpC,GAEM,IAAyB,KAAkB,EAAE,+BAA+B,GAC5E,IAA0B,KAAmB,EAAE,4BAA4B,GAE3E,IACJ,kBAAC,GAAD;EAAQ,OAAM;EAAd,UAAA,CACG,MAAS,UAAU,KAClB,kBAAC,GAAD;GAAM,SAAS;GACZ,UAAA,KAAc,EAAE,4BAA4B;EACzC,CAAA,GAGR,kBAAC,EAAK,MAAN;GAAW,SAAA;GAAQ,cAAc,CAAC,CAAI;GAClC,WAAA,EAAE,uBACF,MAAS,UACT,EAAc,CAAI,MAAM,KAAA,KACtB,kBAAC,GAAD;IAAM,SAAS;IACZ,UAAA,KAAa,EAAE,kCAAkC;GAC9C,CAAA;EAGD,CAAA,CACL;KAGJ,KAAe,MACnB,kBAAC,GAAD;EACS;EACP,eAAA;EACA,OAAO;EACP,UAAU;EACV,aAAa;EACb,SAAS;EACT,OAAM;CACP,CAAA;CAGH,OACE,kBAAC,EAAK,MAAN;EACE,GAAI;EACJ,OAAO;GAAE,cAAc;GAAG,GAAG,EAAc;EAAM;EAGjD,UAAA;EACA,OACE,kBAAC,GAAD;GACE,SAAS,EAAc,QAAQ,YAAY;GAC3C,OAAM;GACN,KAAK;GAHP,UAAA,CAKG,EAAc,OACd,CACK;;EAdZ,UAAA,CAiBG,MAAS,SACN,EAAY,CAAsB,IAClC,MAAS,UACP,EAAY,CAAuB,IACnC,MAGL,MAAS,UACR,kBAAC,EAAK,MAAN;GAAiB;GAAM,GAAI;GAAe,SAAA;GAAQ,QAAQ,MAAS;GAChE,UAAA,KACC,kBAAC,GAAD;IAAgB,KAAK;IAAY,QAAQ;IACtC;GACa,CAAA;EAET,CAAA,CAEJ;;AAEf;AAEA,EAAiB,cAAc;AAiB/B,IAAM,IAAiB,GACpB,EAAE,aAAU,GAAG,KAAS,MAAQ;CAC/B,IAAM,IAAW,EAAsC,IAAI,GACrD,CAAC,GAAM,KAAW,EAAS,EAAK;CAEtC,EAAoB,UAAY;EAC9B,aAAa,EAAS,SAAS,QAAQ;EACvC,YAAY,EAAQ,EAAI;CAC1B,EAAE;CAEF,IAAM,IAAa,EAAS;CAC5B,OAAO,EAAa,GAAU;EAC5B,GAAG;EACH,KAAK;EACL;EACA,eAAe,MAAoB;GAEjC,AADA,EAAQ,CAAM,GACd,EAAW,eAAe,CAAM;EAClC;CACF,CAA4B;AAC9B,CACF;AACA,EAAe,cAAc"}
@@ -0,0 +1,14 @@
1
+ export declare const bulkEditFormItemMessages: {
2
+ readonly "uic.BulkEditFormItem.keepAsIs": {
3
+ readonly defaultMessage: "Keep as is";
4
+ readonly description: "Placeholder of a bulk-edit field that leaves every selected item's current value unchanged";
5
+ };
6
+ readonly "uic.BulkEditFormItem.clear": {
7
+ readonly defaultMessage: "Clear";
8
+ readonly description: "Link that clears the field on every selected item, and the field's placeholder once cleared";
9
+ };
10
+ readonly "uic.BulkEditFormItem.undoChanges": {
11
+ readonly defaultMessage: "Undo changes";
12
+ readonly description: "Link that returns a bulk-edit field to keeping the current values";
13
+ };
14
+ };
@@ -0,0 +1,20 @@
1
+ import { defineMessages as e } from "../../i18n/catalog.js";
2
+ //#region src/components/BulkEditFormItem/BulkEditFormItem.messages.ts
3
+ var t = e({
4
+ "uic.BulkEditFormItem.keepAsIs": {
5
+ defaultMessage: "Keep as is",
6
+ description: "Placeholder of a bulk-edit field that leaves every selected item's current value unchanged"
7
+ },
8
+ "uic.BulkEditFormItem.clear": {
9
+ defaultMessage: "Clear",
10
+ description: "Link that clears the field on every selected item, and the field's placeholder once cleared"
11
+ },
12
+ "uic.BulkEditFormItem.undoChanges": {
13
+ defaultMessage: "Undo changes",
14
+ description: "Link that returns a bulk-edit field to keeping the current values"
15
+ }
16
+ });
17
+ //#endregion
18
+ export { t as bulkEditFormItemMessages };
19
+
20
+ //# sourceMappingURL=BulkEditFormItem.messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BulkEditFormItem.messages.js","names":[],"sources":["../../../src/components/BulkEditFormItem/BulkEditFormItem.messages.ts"],"sourcesContent":["import { defineMessages } from \"../../i18n/catalog\";\n\nexport const bulkEditFormItemMessages = defineMessages({\n \"uic.BulkEditFormItem.keepAsIs\": {\n defaultMessage: \"Keep as is\",\n description:\n \"Placeholder of a bulk-edit field that leaves every selected item's current value unchanged\",\n },\n \"uic.BulkEditFormItem.clear\": {\n defaultMessage: \"Clear\",\n description:\n \"Link that clears the field on every selected item, and the field's placeholder once cleared\",\n },\n \"uic.BulkEditFormItem.undoChanges\": {\n defaultMessage: \"Undo changes\",\n description: \"Link that returns a bulk-edit field to keeping the current values\",\n },\n});\n"],"mappings":";;AAEA,IAAa,IAA2B,EAAe;CACrD,iCAAiC;EAC/B,gBAAgB;EAChB,aACE;CACJ;CACA,8BAA8B;EAC5B,gBAAgB;EAChB,aACE;CACJ;CACA,oCAAoC;EAClC,gBAAgB;EAChB,aAAa;CACf;AACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { BulkEditFormItem } from './BulkEditFormItem';
2
+ export type { BulkEditFormItemProps } from './BulkEditFormItem';
@@ -0,0 +1,2 @@
1
+ import { BulkEditFormItem as e } from "./BulkEditFormItem.js";
2
+ export { e as BulkEditFormItem };
@@ -0,0 +1,23 @@
1
+ import { ReactElement, ReactNode } from 'react';
2
+ import { DataGridColumn, DataGridProps } from '../DataGrid/DataGrid';
3
+ import { ModalProps } from '../Modal/Modal';
4
+ export interface BulkErrorModalProps<T extends object> extends Omit<ModalProps, "children" | "title" | "footer" | "onAction" | "actionLabel" | "actionVariant" | "isActionLoading" | "isActionDisabled" | "actionButtonProps" | "cancelLabel" | "hasCancelButton"> {
5
+ /** How one failed item renders, per column. */
6
+ columns: ReadonlyArray<DataGridColumn<T>>;
7
+ /** One item per failure. */
8
+ data: ReadonlyArray<T>;
9
+ /** Row identity. Default: the item's `id`, then its `key`. */
10
+ idKey?: DataGridProps<T>["idKey"];
11
+ /** Guidance in an error banner above the grid. Without it there is no banner. */
12
+ description?: ReactNode;
13
+ /**
14
+ * Title of the banner. Default: the catalog's `uic.BulkErrorModal.errorOccurred`
15
+ */
16
+ descriptionTitle?: ReactNode;
17
+ /**
18
+ * Modal title. Default: an error glyph and the catalog's
19
+ * `uic.BulkErrorModal.title` ("Action execution failed").
20
+ */
21
+ title?: ReactNode;
22
+ }
23
+ export declare function BulkErrorModal<T extends object>({ columns, data, idKey, description, descriptionTitle, title, width, ...modalProps }: BulkErrorModalProps<T>): ReactElement;
@@ -0,0 +1,10 @@
1
+ export declare const bulkErrorModalMessages: {
2
+ readonly "uic.BulkErrorModal.title": {
3
+ readonly defaultMessage: "Action execution failed";
4
+ readonly description: "Default title of the dialog that lists the failed items of a bulk operation";
5
+ };
6
+ readonly "uic.BulkErrorModal.errorOccurred": {
7
+ readonly defaultMessage: "Error Occurred";
8
+ readonly description: "Title of the error banner above the failed items, over the caller's guidance";
9
+ };
10
+ };
@@ -0,0 +1,16 @@
1
+ import { defineMessages as e } from "../../i18n/catalog.js";
2
+ //#region src/components/BulkErrorModal/BulkErrorModal.messages.ts
3
+ var t = e({
4
+ "uic.BulkErrorModal.title": {
5
+ defaultMessage: "Action execution failed",
6
+ description: "Default title of the dialog that lists the failed items of a bulk operation"
7
+ },
8
+ "uic.BulkErrorModal.errorOccurred": {
9
+ defaultMessage: "Error Occurred",
10
+ description: "Title of the error banner above the failed items, over the caller's guidance"
11
+ }
12
+ });
13
+ //#endregion
14
+ export { t as bulkErrorModalMessages };
15
+
16
+ //# sourceMappingURL=BulkErrorModal.messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BulkErrorModal.messages.js","names":[],"sources":["../../../src/components/BulkErrorModal/BulkErrorModal.messages.ts"],"sourcesContent":["import { defineMessages } from \"../../i18n/catalog\";\n\nexport const bulkErrorModalMessages = defineMessages({\n \"uic.BulkErrorModal.title\": {\n defaultMessage: \"Action execution failed\",\n description:\n \"Default title of the dialog that lists the failed items of a bulk operation\",\n },\n \"uic.BulkErrorModal.errorOccurred\": {\n defaultMessage: \"Error Occurred\",\n description:\n \"Title of the error banner above the failed items, over the caller's guidance\",\n },\n});\n"],"mappings":";;AAEA,IAAa,IAAyB,EAAe;CACnD,4BAA4B;EAC1B,gBAAgB;EAChB,aACE;CACJ;CACA,oCAAoC;EAClC,gBAAgB;EAChB,aACE;CACJ;AACF,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { useUicTranslator as e } from "../../i18n/useUicTranslator.js";
2
+ import { Modal as t } from "../Modal/Modal2.js";
3
+ import { DataGrid as n } from "../DataGrid/DataGrid2.js";
4
+ /* empty css */
5
+ import { HStack as r, VStack as i } from "@astryxdesign/core/Stack";
6
+ import { jsx as a, jsxs as o } from "react/jsx-runtime";
7
+ import { TriangleAlert as s } from "lucide-react";
8
+ import { Banner as c } from "@astryxdesign/core/Banner";
9
+ //#region src/components/BulkErrorModal/BulkErrorModal.tsx
10
+ var l = 720, u = 10;
11
+ function d({ columns: d, data: f, idKey: p, description: m, descriptionTitle: h, title: g, width: _ = l, ...v }) {
12
+ let y = e();
13
+ return /* @__PURE__ */ a(t, {
14
+ ...v,
15
+ width: _,
16
+ title: g ?? /* @__PURE__ */ o(r, {
17
+ gap: 2,
18
+ align: "center",
19
+ children: [/* @__PURE__ */ a(s, {
20
+ color: "currentColor",
21
+ size: "1em",
22
+ className: "uic-bulk-error-modal__icon",
23
+ "aria-hidden": !0
24
+ }), y("uic.BulkErrorModal.title")]
25
+ }),
26
+ footer: null,
27
+ children: /* @__PURE__ */ o(i, {
28
+ gap: 3,
29
+ align: "stretch",
30
+ children: [m ? /* @__PURE__ */ a(c, {
31
+ status: "error",
32
+ title: h ?? y("uic.BulkErrorModal.errorOccurred"),
33
+ description: m
34
+ }) : null, /* @__PURE__ */ a(n, {
35
+ columns: d,
36
+ data: f,
37
+ idKey: p,
38
+ scrollWidth: "max-content",
39
+ pagination: {
40
+ pageSize: u,
41
+ hasPageSizeSelector: !1,
42
+ isHiddenOnSinglePage: !0
43
+ },
44
+ isResizable: !1,
45
+ density: "compact",
46
+ dividers: "grid"
47
+ })]
48
+ })
49
+ });
50
+ }
51
+ //#endregion
52
+ export { d as BulkErrorModal };
53
+
54
+ //# sourceMappingURL=BulkErrorModal2.js.map
55
+ import "../../assets/components/BulkErrorModal/BulkErrorModal.css";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BulkErrorModal2.js","names":[],"sources":["../../../src/components/BulkErrorModal/BulkErrorModal.tsx"],"sourcesContent":["/**\n * BulkErrorModal\n *\n * Reports the failures of a bulk operation: one row per failed item, in a\n * `DataGrid` the caller describes with its own columns, since every bulk\n * operation reports a different shape. An optional error banner above it\n * carries guidance, such as how to retry. The modal is a report: it has no\n * footer, and closing goes through the header's close button, the backdrop\n * or Escape (`onOpenChange(false)`).\n *\n * The grid is compact with column rules, pages at ten rows and hides its page\n * bar while every row fits on one page.\n *\n * @example\n * <BulkErrorModal\n * isOpen={failures.length > 0}\n * onOpenChange={(open) => !open && setFailures([])}\n * columns={[\n * { key: \"name\", header: \"Folder\", renderCell: (row) => row.name },\n * { key: \"message\", header: \"Error\", renderCell: (row) => row.message },\n * ]}\n * data={failures}\n * description=\"Fix the failed folders and try again.\"\n * />\n */\nimport type { ReactElement, ReactNode } from \"react\";\nimport { Banner } from \"@astryxdesign/core/Banner\";\nimport { HStack, VStack } from \"@astryxdesign/core/Stack\";\nimport { TriangleAlert } from \"lucide-react\";\n\nimport { useUicTranslator } from \"../../i18n/useUicTranslator\";\nimport {\n DataGrid,\n type DataGridColumn,\n type DataGridProps,\n} from \"../DataGrid/DataGrid\";\nimport { Modal, type ModalProps } from \"../Modal/Modal\";\nimport \"./BulkErrorModal.css\";\n\nexport interface BulkErrorModalProps<T extends object> extends Omit<\n ModalProps,\n | \"children\"\n | \"title\"\n | \"footer\"\n | \"onAction\"\n | \"actionLabel\"\n | \"actionVariant\"\n | \"isActionLoading\"\n | \"isActionDisabled\"\n | \"actionButtonProps\"\n | \"cancelLabel\"\n | \"hasCancelButton\"\n> {\n /** How one failed item renders, per column. */\n columns: ReadonlyArray<DataGridColumn<T>>;\n /** One item per failure. */\n data: ReadonlyArray<T>;\n /** Row identity. Default: the item's `id`, then its `key`. */\n idKey?: DataGridProps<T>[\"idKey\"];\n /** Guidance in an error banner above the grid. Without it there is no banner. */\n description?: ReactNode;\n /**\n * Title of the banner. Default: the catalog's `uic.BulkErrorModal.errorOccurred`\n */\n descriptionTitle?: ReactNode;\n /**\n * Modal title. Default: an error glyph and the catalog's\n * `uic.BulkErrorModal.title` (\"Action execution failed\").\n */\n title?: ReactNode;\n}\n\nconst WIDTH = 720;\nconst PAGE_SIZE = 10;\n\nexport function BulkErrorModal<T extends object>({\n columns,\n data,\n idKey,\n description,\n descriptionTitle,\n title,\n width = WIDTH,\n ...modalProps\n}: BulkErrorModalProps<T>): ReactElement {\n const t = useUicTranslator();\n return (\n <Modal\n {...modalProps}\n width={width}\n title={\n title ?? (\n <HStack gap={2} align=\"center\">\n {/* `var()` does not resolve in the stroke attribute, so the glyph\n strokes currentColor and the class sets the colour. */}\n <TriangleAlert\n color=\"currentColor\"\n size=\"1em\"\n className=\"uic-bulk-error-modal__icon\"\n aria-hidden\n />\n {t(\"uic.BulkErrorModal.title\")}\n </HStack>\n )\n }\n footer={null}\n >\n <VStack gap={3} align=\"stretch\">\n {description ? (\n <Banner\n status=\"error\"\n title={descriptionTitle ?? t(\"uic.BulkErrorModal.errorOccurred\")}\n description={description}\n />\n ) : null}\n <DataGrid<T>\n columns={columns}\n data={data}\n idKey={idKey}\n scrollWidth=\"max-content\"\n pagination={{\n pageSize: PAGE_SIZE,\n hasPageSizeSelector: false,\n isHiddenOnSinglePage: true,\n }}\n isResizable={false}\n density=\"compact\"\n dividers=\"grid\"\n />\n </VStack>\n </Modal>\n );\n}\n"],"mappings":";;;;;;;;;AAwEA,IAAM,IAAQ,KACR,IAAY;AAElB,SAAgB,EAAiC,EAC/C,YACA,SACA,UACA,gBACA,qBACA,UACA,WAAQ,GACR,GAAG,KACoC;CACvC,IAAM,IAAI,EAAiB;CAC3B,OACE,kBAAC,GAAD;EACE,GAAI;EACG;EACP,OACE,KACE,kBAAC,GAAD;GAAQ,KAAK;GAAG,OAAM;GAAtB,UAAA,CAGE,kBAAC,GAAD;IACE,OAAM;IACN,MAAK;IACL,WAAU;IACV,eAAA;GACD,CAAA,GACA,EAAE,0BAA0B,CACvB;;EAGZ,QAAQ;EAER,UAAA,kBAAC,GAAD;GAAQ,KAAK;GAAG,OAAM;GAAtB,UAAA,CACG,IACC,kBAAC,GAAD;IACE,QAAO;IACP,OAAO,KAAoB,EAAE,kCAAkC;IAClD;GACd,CAAA,IACC,MACJ,kBAAC,GAAD;IACW;IACH;IACC;IACP,aAAY;IACZ,YAAY;KACV,UAAU;KACV,qBAAqB;KACrB,sBAAsB;IACxB;IACA,aAAa;IACb,SAAQ;IACR,UAAS;GACV,CAAA,CACK;;CACH,CAAA;AAEX"}
@@ -0,0 +1,2 @@
1
+ export { BulkErrorModal } from './BulkErrorModal';
2
+ export type { BulkErrorModalProps } from './BulkErrorModal';
@@ -0,0 +1,2 @@
1
+ import { BulkErrorModal as e } from "./BulkErrorModal2.js";
2
+ export { e as BulkErrorModal };
@@ -0,0 +1,43 @@
1
+ import { CSSProperties } from 'react';
2
+ /**
3
+ * Normalises `#rgb`, `#rrggbb`, `#rrggbbaa` (alpha dropped), `rgb()` and
4
+ * `rgba()` to lower-case `#rrggbb`. Anything else is `null`, so an
5
+ * unparseable value renders as unset instead of painting black.
6
+ */
7
+ export declare function toHexColor(value?: string | null): string | null;
8
+ export interface ColorPickerProps {
9
+ /** The colour: hex, or anything `toHexColor` normalises. */
10
+ value?: string | null;
11
+ /** Fires with `#rrggbb` when the user settles on a colour. */
12
+ onChange?: (hex: string) => void;
13
+ /** Shows the hex value next to the swatch on the trigger. */
14
+ hasValueLabel?: boolean;
15
+ /** Offers a clear button in the popover. */
16
+ hasClear?: boolean;
17
+ /** Fires when the clear button is pressed. */
18
+ onClear?: () => void;
19
+ isDisabled?: boolean;
20
+ /**
21
+ * Accessible name of the trigger and the colour area.
22
+ * @default the catalog's uic.ColorPicker.label ("Select color")
23
+ */
24
+ label?: string;
25
+ /** @default the catalog's uic.ColorPicker.hexValue ("Hex value") */
26
+ hexValueLabel?: string;
27
+ /** @default the catalog's uic.ColorPicker.clear ("Clear") */
28
+ clearLabel?: string;
29
+ /** Shown on the trigger when there is no colour. @default the catalog's uic.ColorPicker.noColor ("No color") */
30
+ noColorLabel?: string;
31
+ className?: string;
32
+ style?: CSSProperties;
33
+ /**
34
+ * Test id of the trigger. The colour area, the hex field, the clear button
35
+ * and the value label get `<id>-area`, `<id>-hex`, `<id>-clear` and
36
+ * `<id>-value`.
37
+ */
38
+ "data-testid"?: string;
39
+ }
40
+ export declare function ColorPicker({ value, onChange, hasValueLabel, hasClear, onClear, isDisabled, label, hexValueLabel, clearLabel, noColorLabel, className, style, "data-testid": testId, }: ColorPickerProps): import("react").JSX.Element;
41
+ export declare namespace ColorPicker {
42
+ var displayName: string;
43
+ }
@@ -0,0 +1,18 @@
1
+ export declare const colorPickerMessages: {
2
+ readonly "uic.ColorPicker.label": {
3
+ readonly defaultMessage: "Select color";
4
+ readonly description: "Accessible name of a color picker whose caller gave it no label";
5
+ };
6
+ readonly "uic.ColorPicker.hexValue": {
7
+ readonly defaultMessage: "Hex value";
8
+ readonly description: "Hidden label of the color picker's text field for a #rrggbb value";
9
+ };
10
+ readonly "uic.ColorPicker.clear": {
11
+ readonly defaultMessage: "Clear";
12
+ readonly description: "Button in a color picker that removes the chosen color";
13
+ };
14
+ readonly "uic.ColorPicker.noColor": {
15
+ readonly defaultMessage: "No color";
16
+ readonly description: "Shown on a color picker's trigger when no color is set";
17
+ };
18
+ };
@@ -0,0 +1,24 @@
1
+ import { defineMessages as e } from "../../i18n/catalog.js";
2
+ //#region src/components/ColorPicker/ColorPicker.messages.ts
3
+ var t = e({
4
+ "uic.ColorPicker.label": {
5
+ defaultMessage: "Select color",
6
+ description: "Accessible name of a color picker whose caller gave it no label"
7
+ },
8
+ "uic.ColorPicker.hexValue": {
9
+ defaultMessage: "Hex value",
10
+ description: "Hidden label of the color picker's text field for a #rrggbb value"
11
+ },
12
+ "uic.ColorPicker.clear": {
13
+ defaultMessage: "Clear",
14
+ description: "Button in a color picker that removes the chosen color"
15
+ },
16
+ "uic.ColorPicker.noColor": {
17
+ defaultMessage: "No color",
18
+ description: "Shown on a color picker's trigger when no color is set"
19
+ }
20
+ });
21
+ //#endregion
22
+ export { t as colorPickerMessages };
23
+
24
+ //# sourceMappingURL=ColorPicker.messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorPicker.messages.js","names":[],"sources":["../../../src/components/ColorPicker/ColorPicker.messages.ts"],"sourcesContent":["import { defineMessages } from \"../../i18n/catalog\";\n\nexport const colorPickerMessages = defineMessages({\n \"uic.ColorPicker.label\": {\n defaultMessage: \"Select color\",\n description: \"Accessible name of a color picker whose caller gave it no label\",\n },\n \"uic.ColorPicker.hexValue\": {\n defaultMessage: \"Hex value\",\n description: \"Hidden label of the color picker's text field for a #rrggbb value\",\n },\n \"uic.ColorPicker.clear\": {\n defaultMessage: \"Clear\",\n description: \"Button in a color picker that removes the chosen color\",\n },\n \"uic.ColorPicker.noColor\": {\n defaultMessage: \"No color\",\n description: \"Shown on a color picker's trigger when no color is set\",\n },\n});\n"],"mappings":";;AAEA,IAAa,IAAsB,EAAe;CAChD,yBAAyB;EACvB,gBAAgB;EAChB,aAAa;CACf;CACA,4BAA4B;EAC1B,gBAAgB;EAChB,aAAa;CACf;CACA,yBAAyB;EACvB,gBAAgB;EAChB,aAAa;CACf;CACA,2BAA2B;EACzB,gBAAgB;EAChB,aAAa;CACf;AACF,CAAC"}
@@ -0,0 +1,117 @@
1
+ import { useUicTranslator as e } from "../../i18n/useUicTranslator.js";
2
+ /* empty css */
3
+ import { useEffect as t, useRef as n, useState as r } from "react";
4
+ import { Button as i } from "@astryxdesign/core/Button";
5
+ import { VStack as a } from "@astryxdesign/core/Stack";
6
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
7
+ import { TextInput as c } from "@astryxdesign/core/TextInput";
8
+ import { Popover as l } from "@astryxdesign/core/Popover";
9
+ //#region src/components/ColorPicker/ColorPicker.tsx
10
+ var u = /^#[0-9a-fA-F]{6}$/, d = /^#[0-9a-fA-F]{3}$/, f = /^#[0-9a-fA-F]{8}$/, p = /^rgba?\(([^)]+)\)$/i, m = (e) => Math.max(0, Math.min(255, Math.round(e))).toString(16).padStart(2, "0");
11
+ function h(e) {
12
+ if (!e) return null;
13
+ let t = e.trim();
14
+ if (u.test(t)) return t.toLowerCase();
15
+ if (f.test(t)) return t.slice(0, 7).toLowerCase();
16
+ if (d.test(t)) {
17
+ let [, e, n, r] = t;
18
+ return `#${e}${e}${n}${n}${r}${r}`.toLowerCase();
19
+ }
20
+ let n = p.exec(t);
21
+ if (n) {
22
+ let e = n[1].split(/[,/\s]+/).filter(Boolean).map(Number);
23
+ if (e.length >= 3 && e.slice(0, 3).every(Number.isFinite)) return `#${m(e[0])}${m(e[1])}${m(e[2])}`;
24
+ }
25
+ return null;
26
+ }
27
+ function g({ value: u, onChange: d, hasValueLabel: f, hasClear: p, onClear: m, isDisabled: g, label: _, hexValueLabel: v, clearLabel: y, noColorLabel: b, className: x, style: S, "data-testid": C }) {
28
+ let w = e(), T = n(null), [E, D] = r(!1), O = h(u), [k, A] = r(O ?? "#000000"), [j, M] = r(O ?? ""), N = (e) => {
29
+ let t = h(e);
30
+ !t || t === O || d?.(t);
31
+ };
32
+ t(() => {
33
+ let e = T.current;
34
+ if (!e) return;
35
+ let t = () => N(e.value);
36
+ return e.addEventListener("change", t), () => e.removeEventListener("change", t);
37
+ }, [E, O]);
38
+ let P = _ ?? w("uic.ColorPicker.label");
39
+ return /* @__PURE__ */ o(l, {
40
+ isOpen: E,
41
+ onOpenChange: (e) => {
42
+ D(e), e && (A(O ?? "#000000"), M(O ?? ""));
43
+ },
44
+ label: P,
45
+ placement: "below",
46
+ alignment: "start",
47
+ content: /* @__PURE__ */ s(a, {
48
+ gap: 3,
49
+ align: "stretch",
50
+ className: "uic-color-picker__panel",
51
+ children: [
52
+ /* @__PURE__ */ o("input", {
53
+ ref: T,
54
+ type: "color",
55
+ className: "uic-color-picker__area",
56
+ "aria-label": P,
57
+ "data-testid": C ? `${C}-area` : void 0,
58
+ value: k,
59
+ disabled: g,
60
+ onChange: (e) => {
61
+ A(e.target.value), M(e.target.value);
62
+ }
63
+ }),
64
+ /* @__PURE__ */ o(c, {
65
+ label: v ?? w("uic.ColorPicker.hexValue"),
66
+ isLabelHidden: !0,
67
+ size: "sm",
68
+ value: j,
69
+ placeholder: "#000000",
70
+ isDisabled: g,
71
+ "data-testid": C ? `${C}-hex` : void 0,
72
+ onChange: (e) => {
73
+ M(e);
74
+ let t = h(e);
75
+ t && (A(t), N(t));
76
+ },
77
+ onEnter: () => N(j)
78
+ }),
79
+ p ? /* @__PURE__ */ o(i, {
80
+ variant: "ghost",
81
+ size: "sm",
82
+ label: y ?? w("uic.ColorPicker.clear"),
83
+ "data-testid": C ? `${C}-clear` : void 0,
84
+ isDisabled: g,
85
+ onClick: () => {
86
+ m?.(), D(!1);
87
+ }
88
+ }) : null
89
+ ]
90
+ }),
91
+ children: /* @__PURE__ */ s("button", {
92
+ type: "button",
93
+ className: ["uic-color-picker__trigger", x].filter(Boolean).join(" "),
94
+ disabled: g,
95
+ style: S,
96
+ "data-testid": C,
97
+ "aria-label": f ? void 0 : P,
98
+ children: [/* @__PURE__ */ o("span", {
99
+ className: "uic-color-picker__swatch",
100
+ "aria-hidden": "true",
101
+ children: /* @__PURE__ */ o("span", {
102
+ className: "uic-color-picker__swatch-fill",
103
+ style: { backgroundColor: O ?? "transparent" }
104
+ })
105
+ }), f ? /* @__PURE__ */ o("span", {
106
+ "data-testid": C ? `${C}-value` : void 0,
107
+ children: O ?? b ?? w("uic.ColorPicker.noColor")
108
+ }) : null]
109
+ })
110
+ });
111
+ }
112
+ g.displayName = "ColorPicker";
113
+ //#endregion
114
+ export { g as ColorPicker, h as toHexColor };
115
+
116
+ //# sourceMappingURL=ColorPicker2.js.map
117
+ import "../../assets/components/ColorPicker/ColorPicker.css";
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorPicker2.js","names":[],"sources":["../../../src/components/ColorPicker/ColorPicker.tsx"],"sourcesContent":["/**\n * ColorPicker\n *\n * A colour field: a swatch trigger that opens a popover holding the\n * platform's colour input and a hex text field, and optionally a clear\n * button. Astryx has no colour picker, so the picking area is the native\n * `<input type=\"color\">` and everything around it is Astryx.\n *\n * The value is a `#rrggbb` string on both edges. `onChange` fires when the\n * user settles on a colour (the native input's `change` event, or a complete\n * hex typed into the field), not on every pointer move while dragging, so a\n * caller that writes a setting writes it once. There is no alpha.\n *\n * @example\n * <ColorPicker value={accent} onChange={setAccent} hasValueLabel hasClear onClear={reset} />\n */\nimport { useEffect, useRef, useState, type CSSProperties } from \"react\";\nimport { Button } from \"@astryxdesign/core/Button\";\nimport { Popover } from \"@astryxdesign/core/Popover\";\nimport { VStack } from \"@astryxdesign/core/Stack\";\nimport { TextInput } from \"@astryxdesign/core/TextInput\";\n\nimport { useUicTranslator } from \"../../i18n/useUicTranslator\";\nimport \"./ColorPicker.css\";\n\nconst FULL_HEX = /^#[0-9a-fA-F]{6}$/;\nconst SHORT_HEX = /^#[0-9a-fA-F]{3}$/;\nconst HEX_WITH_ALPHA = /^#[0-9a-fA-F]{8}$/;\nconst RGB_FUNCTION = /^rgba?\\(([^)]+)\\)$/i;\n\nconst toHexPair = (channel: number) =>\n Math.max(0, Math.min(255, Math.round(channel)))\n .toString(16)\n .padStart(2, \"0\");\n\n/**\n * Normalises `#rgb`, `#rrggbb`, `#rrggbbaa` (alpha dropped), `rgb()` and\n * `rgba()` to lower-case `#rrggbb`. Anything else is `null`, so an\n * unparseable value renders as unset instead of painting black.\n */\nexport function toHexColor(value?: string | null): string | null {\n if (!value) return null;\n const raw = value.trim();\n if (FULL_HEX.test(raw)) return raw.toLowerCase();\n if (HEX_WITH_ALPHA.test(raw)) return raw.slice(0, 7).toLowerCase();\n if (SHORT_HEX.test(raw)) {\n const [, r, g, b] = raw;\n return `#${r}${r}${g}${g}${b}${b}`.toLowerCase();\n }\n const rgb = RGB_FUNCTION.exec(raw);\n if (rgb) {\n const parts = rgb[1]!\n .split(/[,/\\s]+/)\n .filter(Boolean)\n .map(Number);\n if (parts.length >= 3 && parts.slice(0, 3).every(Number.isFinite)) {\n return `#${toHexPair(parts[0]!)}${toHexPair(parts[1]!)}${toHexPair(parts[2]!)}`;\n }\n }\n return null;\n}\n\nexport interface ColorPickerProps {\n /** The colour: hex, or anything `toHexColor` normalises. */\n value?: string | null;\n /** Fires with `#rrggbb` when the user settles on a colour. */\n onChange?: (hex: string) => void;\n /** Shows the hex value next to the swatch on the trigger. */\n hasValueLabel?: boolean;\n /** Offers a clear button in the popover. */\n hasClear?: boolean;\n /** Fires when the clear button is pressed. */\n onClear?: () => void;\n isDisabled?: boolean;\n /**\n * Accessible name of the trigger and the colour area.\n * @default the catalog's uic.ColorPicker.label (\"Select color\")\n */\n label?: string;\n /** @default the catalog's uic.ColorPicker.hexValue (\"Hex value\") */\n hexValueLabel?: string;\n /** @default the catalog's uic.ColorPicker.clear (\"Clear\") */\n clearLabel?: string;\n /** Shown on the trigger when there is no colour. @default the catalog's uic.ColorPicker.noColor (\"No color\") */\n noColorLabel?: string;\n className?: string;\n style?: CSSProperties;\n /**\n * Test id of the trigger. The colour area, the hex field, the clear button\n * and the value label get `<id>-area`, `<id>-hex`, `<id>-clear` and\n * `<id>-value`.\n */\n \"data-testid\"?: string;\n}\n\nexport function ColorPicker({\n value,\n onChange,\n hasValueLabel,\n hasClear,\n onClear,\n isDisabled,\n label,\n hexValueLabel,\n clearLabel,\n noColorLabel,\n className,\n style,\n \"data-testid\": testId,\n}: ColorPickerProps) {\n const t = useUicTranslator();\n const areaRef = useRef<HTMLInputElement>(null);\n const [isOpen, setIsOpen] = useState(false);\n\n const hex = toHexColor(value);\n // The popover's working copy, seeded when it opens. An unshowable value\n // opens the area on black; the trigger keeps showing it as unset.\n const [draft, setDraft] = useState<string>(hex ?? \"#000000\");\n const [text, setText] = useState<string>(hex ?? \"\");\n\n const commit = (next: string) => {\n const normalised = toHexColor(next);\n if (!normalised || normalised === hex) return;\n onChange?.(normalised);\n };\n\n // React's onChange is the `input` event, which fires all through a drag;\n // the settled value is the native `change` event, subscribed on the node.\n useEffect(() => {\n const el = areaRef.current;\n if (!el) return;\n const handleChange = () => commit(el.value);\n el.addEventListener(\"change\", handleChange);\n return () => el.removeEventListener(\"change\", handleChange);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isOpen, hex]);\n\n const triggerLabel = label ?? t(\"uic.ColorPicker.label\");\n\n return (\n <Popover\n isOpen={isOpen}\n onOpenChange={(open) => {\n setIsOpen(open);\n if (open) {\n setDraft(hex ?? \"#000000\");\n setText(hex ?? \"\");\n }\n // Closing commits nothing: both commit paths have fired by then, and a\n // close-commit would re-send a value the user just cleared.\n }}\n label={triggerLabel}\n placement=\"below\"\n alignment=\"start\"\n content={\n <VStack gap={3} align=\"stretch\" className=\"uic-color-picker__panel\">\n <input\n ref={areaRef}\n type=\"color\"\n className=\"uic-color-picker__area\"\n aria-label={triggerLabel}\n data-testid={testId ? `${testId}-area` : undefined}\n value={draft}\n disabled={isDisabled}\n onChange={(e) => {\n setDraft(e.target.value);\n setText(e.target.value);\n }}\n />\n <TextInput\n label={hexValueLabel ?? t(\"uic.ColorPicker.hexValue\")}\n isLabelHidden\n size=\"sm\"\n value={text}\n placeholder=\"#000000\"\n isDisabled={isDisabled}\n data-testid={testId ? `${testId}-hex` : undefined}\n onChange={(next) => {\n setText(next);\n // The field has no OK button: commit as soon as the text is a\n // whole colour, since a click back onto the page loses it.\n const normalised = toHexColor(next);\n if (normalised) {\n setDraft(normalised);\n commit(normalised);\n }\n }}\n onEnter={() => commit(text)}\n />\n {hasClear ? (\n <Button\n variant=\"ghost\"\n size=\"sm\"\n label={clearLabel ?? t(\"uic.ColorPicker.clear\")}\n data-testid={testId ? `${testId}-clear` : undefined}\n isDisabled={isDisabled}\n onClick={() => {\n onClear?.();\n setIsOpen(false);\n }}\n />\n ) : null}\n </VStack>\n }\n >\n <button\n type=\"button\"\n className={[\"uic-color-picker__trigger\", className].filter(Boolean).join(\" \")}\n disabled={isDisabled}\n style={style}\n data-testid={testId}\n aria-label={hasValueLabel ? undefined : triggerLabel}\n >\n <span className=\"uic-color-picker__swatch\" aria-hidden=\"true\">\n <span\n className=\"uic-color-picker__swatch-fill\"\n style={{ backgroundColor: hex ?? \"transparent\" }}\n />\n </span>\n {hasValueLabel ? (\n <span data-testid={testId ? `${testId}-value` : undefined}>\n {hex ?? noColorLabel ?? t(\"uic.ColorPicker.noColor\")}\n </span>\n ) : null}\n </button>\n </Popover>\n );\n}\n\nColorPicker.displayName = \"ColorPicker\";\n"],"mappings":";;;;;;;;;AAyBA,IAAM,IAAW,qBACX,IAAY,qBACZ,IAAiB,qBACjB,IAAe,uBAEf,KAAa,MACjB,KAAK,IAAI,GAAG,KAAK,IAAI,KAAK,KAAK,MAAM,CAAO,CAAC,CAAC,CAAC,CAC5C,SAAS,EAAE,CAAC,CACZ,SAAS,GAAG,GAAG;AAOpB,SAAgB,EAAW,GAAsC;CAC/D,IAAI,CAAC,GAAO,OAAO;CACnB,IAAM,IAAM,EAAM,KAAK;CACvB,IAAI,EAAS,KAAK,CAAG,GAAG,OAAO,EAAI,YAAY;CAC/C,IAAI,EAAe,KAAK,CAAG,GAAG,OAAO,EAAI,MAAM,GAAG,CAAC,CAAC,CAAC,YAAY;CACjE,IAAI,EAAU,KAAK,CAAG,GAAG;EACvB,IAAM,GAAG,GAAG,GAAG,KAAK;EACpB,OAAO,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,YAAY;CACjD;CACA,IAAM,IAAM,EAAa,KAAK,CAAG;CACjC,IAAI,GAAK;EACP,IAAM,IAAQ,EAAI,EAAE,CACjB,MAAM,SAAS,CAAC,CAChB,OAAO,OAAO,CAAC,CACf,IAAI,MAAM;EACb,IAAI,EAAM,UAAU,KAAK,EAAM,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,OAAO,QAAQ,GAC9D,OAAO,IAAI,EAAU,EAAM,EAAG,IAAI,EAAU,EAAM,EAAG,IAAI,EAAU,EAAM,EAAG;CAEhF;CACA,OAAO;AACT;AAmCA,SAAgB,EAAY,EAC1B,UACA,aACA,kBACA,aACA,YACA,eACA,UACA,kBACA,eACA,iBACA,cACA,UACA,eAAe,KACI;CACnB,IAAM,IAAI,EAAiB,GACrB,IAAU,EAAyB,IAAI,GACvC,CAAC,GAAQ,KAAa,EAAS,EAAK,GAEpC,IAAM,EAAW,CAAK,GAGtB,CAAC,GAAO,KAAY,EAAiB,KAAO,SAAS,GACrD,CAAC,GAAM,KAAW,EAAiB,KAAO,EAAE,GAE5C,KAAU,MAAiB;EAC/B,IAAM,IAAa,EAAW,CAAI;EAC9B,CAAC,KAAc,MAAe,KAClC,IAAW,CAAU;CACvB;CAIA,QAAgB;EACd,IAAM,IAAK,EAAQ;EACnB,IAAI,CAAC,GAAI;EACT,IAAM,UAAqB,EAAO,EAAG,KAAK;EAE1C,OADA,EAAG,iBAAiB,UAAU,CAAY,SAC7B,EAAG,oBAAoB,UAAU,CAAY;CAE5D,GAAG,CAAC,GAAQ,CAAG,CAAC;CAEhB,IAAM,IAAe,KAAS,EAAE,uBAAuB;CAEvD,OACE,kBAAC,GAAD;EACU;EACR,eAAe,MAAS;GAEtB,AADA,EAAU,CAAI,GACV,MACF,EAAS,KAAO,SAAS,GACzB,EAAQ,KAAO,EAAE;EAIrB;EACA,OAAO;EACP,WAAU;EACV,WAAU;EACV,SACE,kBAAC,GAAD;GAAQ,KAAK;GAAG,OAAM;GAAU,WAAU;GAA1C,UAAA;IACE,kBAAC,SAAD;KACE,KAAK;KACL,MAAK;KACL,WAAU;KACV,cAAY;KACZ,eAAa,IAAS,GAAG,EAAO,SAAS,KAAA;KACzC,OAAO;KACP,UAAU;KACV,WAAW,MAAM;MAEf,AADA,EAAS,EAAE,OAAO,KAAK,GACvB,EAAQ,EAAE,OAAO,KAAK;KACxB;IACD,CAAA;IACD,kBAAC,GAAD;KACE,OAAO,KAAiB,EAAE,0BAA0B;KACpD,eAAA;KACA,MAAK;KACL,OAAO;KACP,aAAY;KACA;KACZ,eAAa,IAAS,GAAG,EAAO,QAAQ,KAAA;KACxC,WAAW,MAAS;MAClB,EAAQ,CAAI;MAGZ,IAAM,IAAa,EAAW,CAAI;MAClC,AAAI,MACF,EAAS,CAAU,GACnB,EAAO,CAAU;KAErB;KACA,eAAe,EAAO,CAAI;IAC3B,CAAA;IACA,IACC,kBAAC,GAAD;KACE,SAAQ;KACR,MAAK;KACL,OAAO,KAAc,EAAE,uBAAuB;KAC9C,eAAa,IAAS,GAAG,EAAO,UAAU,KAAA;KAC9B;KACZ,eAAe;MAEb,AADA,IAAU,GACV,EAAU,EAAK;KACjB;IACD,CAAA,IACC;GACE;;EAGV,UAAA,kBAAC,UAAD;GACE,MAAK;GACL,WAAW,CAAC,6BAA6B,CAAS,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG;GAC5E,UAAU;GACH;GACP,eAAa;GACb,cAAY,IAAgB,KAAA,IAAY;GAN1C,UAAA,CAQE,kBAAC,QAAD;IAAM,WAAU;IAA2B,eAAY;IACrD,UAAA,kBAAC,QAAD;KACE,WAAU;KACV,OAAO,EAAE,iBAAiB,KAAO,cAAc;IAChD,CAAA;GACG,CAAA,GACL,IACC,kBAAC,QAAD;IAAM,eAAa,IAAS,GAAG,EAAO,UAAU,KAAA;IAC7C,UAAA,KAAO,KAAgB,EAAE,yBAAyB;GAC/C,CAAA,IACJ,IACE;;CACD,CAAA;AAEb;AAEA,EAAY,cAAc"}