@lablup/ui-common 0.1.0-alpha.9 → 0.2.0-alpha.16
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.
- package/NOTICE +62 -0
- package/README.md +521 -69
- package/astryx/components/AlertModal.doc.mjs +91 -0
- package/astryx/components/AlertModal.tsx +3 -0
- package/astryx/components/BoardItemTitle.doc.mjs +51 -0
- package/astryx/components/BoardItemTitle.tsx +3 -0
- package/astryx/components/BooleanToken.doc.mjs +57 -0
- package/astryx/components/BooleanToken.tsx +3 -0
- package/astryx/components/BulkEditFormItem.doc.mjs +68 -0
- package/astryx/components/BulkEditFormItem.tsx +3 -0
- package/astryx/components/BulkErrorModal.doc.mjs +75 -0
- package/astryx/components/BulkErrorModal.tsx +3 -0
- package/astryx/components/ColorPicker.doc.mjs +88 -0
- package/astryx/components/ColorPicker.tsx +3 -0
- package/astryx/components/ConfirmPopover.doc.mjs +99 -0
- package/astryx/components/ConfirmPopover.tsx +3 -0
- package/astryx/components/CountBadge.doc.mjs +93 -0
- package/astryx/components/CountBadge.tsx +3 -0
- package/astryx/components/CountdownBorder.doc.mjs +57 -0
- package/astryx/components/CountdownBorder.tsx +3 -0
- package/astryx/components/DataGrid.doc.mjs +166 -0
- package/astryx/components/DataGrid.tsx +3 -0
- package/astryx/components/DeleteConfirmModal.doc.mjs +163 -0
- package/astryx/components/DeleteConfirmModal.tsx +3 -0
- package/astryx/components/DividedRow.doc.mjs +85 -0
- package/astryx/components/DividedRow.tsx +3 -0
- package/astryx/components/DoubleBadge.doc.mjs +40 -0
- package/astryx/components/DoubleBadge.tsx +3 -0
- package/astryx/components/DoubleToken.doc.mjs +38 -0
- package/astryx/components/DoubleToken.tsx +3 -0
- package/astryx/components/Form.doc.mjs +113 -0
- package/astryx/components/Form.tsx +3 -0
- package/astryx/components/IconWithTooltip.doc.mjs +57 -0
- package/astryx/components/IconWithTooltip.tsx +3 -0
- package/astryx/components/ImageWithFallback.doc.mjs +47 -0
- package/astryx/components/ImageWithFallback.tsx +3 -0
- package/astryx/components/ListBanner.doc.mjs +50 -0
- package/astryx/components/ListBanner.tsx +3 -0
- package/astryx/components/Modal.doc.mjs +176 -0
- package/astryx/components/Modal.tsx +3 -0
- package/astryx/components/NotificationItem.doc.mjs +52 -0
- package/astryx/components/NotificationItem.tsx +3 -0
- package/astryx/components/NotificationStack.doc.mjs +66 -0
- package/astryx/components/NotificationStack.tsx +3 -0
- package/astryx/components/OverlayScrollbar.doc.mjs +49 -0
- package/astryx/components/OverlayScrollbar.tsx +3 -0
- package/astryx/components/PageHeader.doc.mjs +94 -0
- package/astryx/components/PageHeader.tsx +3 -0
- package/astryx/components/PagedSelector.doc.mjs +183 -0
- package/astryx/components/PagedSelector.tsx +3 -0
- package/astryx/components/ProgressWithLabel.doc.mjs +69 -0
- package/astryx/components/ProgressWithLabel.tsx +3 -0
- package/astryx/components/SelectionLabel.doc.mjs +55 -0
- package/astryx/components/SelectionLabel.tsx +3 -0
- package/astryx/components/Statistic.doc.mjs +84 -0
- package/astryx/components/Statistic.tsx +3 -0
- package/astryx/components/StepNumberInput.doc.mjs +102 -0
- package/astryx/components/StepNumberInput.tsx +3 -0
- package/astryx/components/TextHighlighter.doc.mjs +47 -0
- package/astryx/components/TextHighlighter.tsx +3 -0
- package/astryx/components/TokenList.doc.mjs +58 -0
- package/astryx/components/TokenList.tsx +3 -0
- package/astryx/components/TokenRow.doc.mjs +62 -0
- package/astryx/components/TokenRow.tsx +3 -0
- package/astryx/components/UncontrolledInput.doc.mjs +68 -0
- package/astryx/components/UncontrolledInput.tsx +3 -0
- package/astryx/components/UnitGrid.doc.mjs +107 -0
- package/astryx/components/UnitGrid.tsx +3 -0
- package/astryx/docs/ui-common.doc.mjs +112 -0
- package/astryx.integration.mjs +35 -0
- package/dist/assets/components/BoardItemTitle/BoardItemTitle.css +2 -0
- package/dist/assets/components/BulkErrorModal/BulkErrorModal.css +2 -0
- package/dist/assets/components/ColorPicker/ColorPicker.css +2 -0
- package/dist/assets/components/CountBadge/CountBadge.css +2 -0
- package/dist/assets/components/CountdownBorder/CountdownBorder.css +2 -0
- package/dist/assets/components/DataGrid/DataGrid.css +2 -0
- package/dist/assets/components/DeleteConfirmModal/DeleteConfirmModal.css +2 -0
- package/dist/assets/components/DigitPopIn/DigitPopIn.css +2 -0
- package/dist/assets/components/DividedRow/DividedRow.css +2 -0
- package/dist/assets/components/DoubleBadge/DoubleBadge.css +2 -0
- package/dist/assets/components/DoubleToken/DoubleToken.css +2 -0
- package/dist/assets/components/ErrorState/ErrorState.css +2 -1
- package/dist/assets/components/Form/FormItemVisual.css +2 -0
- package/dist/assets/components/IconWithTooltip/IconWithTooltip.css +2 -0
- package/dist/assets/components/ImageWithFallback/ImageWithFallback.css +2 -0
- package/dist/assets/components/ListBanner/ListBanner.css +2 -0
- package/dist/assets/components/Modal/Modal.css +2 -0
- package/dist/assets/components/NotificationItem/NotificationItem.css +2 -0
- package/dist/assets/components/NotificationStack/NotificationStack.css +2 -0
- package/dist/assets/components/OverlayScrollbar/OverlayScrollbar.css +2 -0
- package/dist/assets/components/PageHeader/PageHeader.css +2 -1
- package/dist/assets/components/PageLayout/PageLayout.css +2 -1
- package/dist/assets/components/PagedSelector/PagedSelector.css +2 -0
- package/dist/assets/components/ProgressWithLabel/ProgressWithLabel.css +2 -0
- package/dist/assets/components/Skeleton/SkeletonCard.css +2 -1
- package/dist/assets/components/Skeleton/SkeletonChart.css +2 -1
- package/dist/assets/components/Skeleton/SkeletonRow.css +2 -1
- package/dist/assets/components/Skeleton/SkeletonShape.css +2 -0
- package/dist/assets/components/Skeleton/SkeletonText.css +2 -1
- package/dist/assets/components/SmoothHeight/SmoothHeight.css +2 -1
- package/dist/assets/components/StatCard/StatCard.css +2 -1
- package/dist/assets/components/Statistic/Statistic.css +2 -0
- package/dist/assets/components/StepNumberInput/NumberStepper.css +2 -0
- package/dist/assets/components/TextHighlighter/TextHighlighter.css +2 -0
- package/dist/assets/components/TokenList/TokenList.css +2 -0
- package/dist/assets/components/TokenRow/TokenRow.css +2 -0
- package/dist/assets/components/UnitGrid/UnitGrid.css +2 -0
- package/dist/astryx/AppShell.d.ts +1 -0
- package/dist/astryx/AppShell.js +1 -0
- package/dist/astryx/AspectRatio.d.ts +1 -0
- package/dist/astryx/AspectRatio.js +1 -0
- package/dist/astryx/Avatar.d.ts +1 -0
- package/dist/astryx/Avatar.js +1 -0
- package/dist/astryx/AvatarGroup.d.ts +1 -0
- package/dist/astryx/AvatarGroup.js +1 -0
- package/dist/astryx/Badge.d.ts +1 -0
- package/dist/astryx/Badge.js +1 -0
- package/dist/astryx/Banner.d.ts +1 -0
- package/dist/astryx/Banner.js +1 -0
- package/dist/astryx/BaseProps.d.ts +1 -0
- package/dist/astryx/BaseProps.js +1 -0
- package/dist/astryx/Blockquote.d.ts +1 -0
- package/dist/astryx/Blockquote.js +1 -0
- package/dist/astryx/BottomSheet.d.ts +1 -0
- package/dist/astryx/BottomSheet.js +1 -0
- package/dist/astryx/Breadcrumbs.d.ts +1 -0
- package/dist/astryx/Breadcrumbs.js +1 -0
- package/dist/astryx/Button.d.ts +1 -0
- package/dist/astryx/Button.js +1 -0
- package/dist/astryx/ButtonGroup.d.ts +1 -0
- package/dist/astryx/ButtonGroup.js +1 -0
- package/dist/astryx/Calendar/utils.d.ts +1 -0
- package/dist/astryx/Calendar/utils.js +1 -0
- package/dist/astryx/Calendar.d.ts +1 -0
- package/dist/astryx/Calendar.js +1 -0
- package/dist/astryx/Card.d.ts +1 -0
- package/dist/astryx/Card.js +1 -0
- package/dist/astryx/Carousel.d.ts +1 -0
- package/dist/astryx/Carousel.js +1 -0
- package/dist/astryx/Center.d.ts +1 -0
- package/dist/astryx/Center.js +1 -0
- package/dist/astryx/Chat.d.ts +1 -0
- package/dist/astryx/Chat.js +1 -0
- package/dist/astryx/CheckboxInput.d.ts +1 -0
- package/dist/astryx/CheckboxInput.js +1 -0
- package/dist/astryx/CheckboxList.d.ts +1 -0
- package/dist/astryx/CheckboxList.js +1 -0
- package/dist/astryx/Citation.d.ts +1 -0
- package/dist/astryx/Citation.js +1 -0
- package/dist/astryx/ClickableCard.d.ts +1 -0
- package/dist/astryx/ClickableCard.js +1 -0
- package/dist/astryx/Code.d.ts +1 -0
- package/dist/astryx/Code.js +1 -0
- package/dist/astryx/CodeBlock.d.ts +1 -0
- package/dist/astryx/CodeBlock.js +1 -0
- package/dist/astryx/Collapsible.d.ts +1 -0
- package/dist/astryx/Collapsible.js +1 -0
- package/dist/astryx/CommandPalette.d.ts +1 -0
- package/dist/astryx/CommandPalette.js +1 -0
- package/dist/astryx/ContextMenu.d.ts +1 -0
- package/dist/astryx/ContextMenu.js +1 -0
- package/dist/astryx/DateInput.d.ts +1 -0
- package/dist/astryx/DateInput.js +1 -0
- package/dist/astryx/DateRangeInput.d.ts +1 -0
- package/dist/astryx/DateRangeInput.js +1 -0
- package/dist/astryx/DateTimeInput.d.ts +1 -0
- package/dist/astryx/DateTimeInput.js +1 -0
- package/dist/astryx/Divider.d.ts +1 -0
- package/dist/astryx/Divider.js +1 -0
- package/dist/astryx/DropdownMenu.d.ts +1 -0
- package/dist/astryx/DropdownMenu.js +1 -0
- package/dist/astryx/EmptyState.d.ts +1 -0
- package/dist/astryx/EmptyState.js +1 -0
- package/dist/astryx/Field.d.ts +1 -0
- package/dist/astryx/Field.js +1 -0
- package/dist/astryx/FieldStatus.d.ts +1 -0
- package/dist/astryx/FieldStatus.js +1 -0
- package/dist/astryx/FileInput.d.ts +1 -0
- package/dist/astryx/FileInput.js +1 -0
- package/dist/astryx/FormLayout.d.ts +1 -0
- package/dist/astryx/FormLayout.js +1 -0
- package/dist/astryx/Grid.d.ts +1 -0
- package/dist/astryx/Grid.js +1 -0
- package/dist/astryx/HStack.d.ts +1 -0
- package/dist/astryx/HStack.js +1 -0
- package/dist/astryx/Heading.d.ts +1 -0
- package/dist/astryx/Heading.js +1 -0
- package/dist/astryx/HoverCard.d.ts +1 -0
- package/dist/astryx/HoverCard.js +1 -0
- package/dist/astryx/Icon.d.ts +1 -0
- package/dist/astryx/Icon.js +1 -0
- package/dist/astryx/IconButton.d.ts +1 -0
- package/dist/astryx/IconButton.js +1 -0
- package/dist/astryx/Indicator.d.ts +1 -0
- package/dist/astryx/Indicator.js +1 -0
- package/dist/astryx/InputGroup.d.ts +1 -0
- package/dist/astryx/InputGroup.js +1 -0
- package/dist/astryx/InteractiveRoleContext.d.ts +1 -0
- package/dist/astryx/InteractiveRoleContext.js +1 -0
- package/dist/astryx/Item.d.ts +1 -0
- package/dist/astryx/Item.js +1 -0
- package/dist/astryx/Kbd.d.ts +1 -0
- package/dist/astryx/Kbd.js +1 -0
- package/dist/astryx/Layer.d.ts +1 -0
- package/dist/astryx/Layer.js +1 -0
- package/dist/astryx/Layout.d.ts +1 -0
- package/dist/astryx/Layout.js +1 -0
- package/dist/astryx/Lightbox.d.ts +1 -0
- package/dist/astryx/Lightbox.js +1 -0
- package/dist/astryx/Link.d.ts +1 -0
- package/dist/astryx/Link.js +1 -0
- package/dist/astryx/List.d.ts +1 -0
- package/dist/astryx/List.js +1 -0
- package/dist/astryx/Markdown/parser.d.ts +1 -0
- package/dist/astryx/Markdown/parser.js +1 -0
- package/dist/astryx/Markdown/plugins.d.ts +1 -0
- package/dist/astryx/Markdown/plugins.js +1 -0
- package/dist/astryx/Markdown/remark.d.ts +1 -0
- package/dist/astryx/Markdown/remark.js +1 -0
- package/dist/astryx/Markdown/utils.d.ts +1 -0
- package/dist/astryx/Markdown/utils.js +1 -0
- package/dist/astryx/Markdown.d.ts +1 -0
- package/dist/astryx/Markdown.js +1 -0
- package/dist/astryx/MetadataList.d.ts +1 -0
- package/dist/astryx/MetadataList.js +1 -0
- package/dist/astryx/MobileNav.d.ts +1 -0
- package/dist/astryx/MobileNav.js +1 -0
- package/dist/astryx/MoreMenu.d.ts +1 -0
- package/dist/astryx/MoreMenu.js +1 -0
- package/dist/astryx/MultiSelector.d.ts +1 -0
- package/dist/astryx/MultiSelector.js +1 -0
- package/dist/astryx/NavIcon.d.ts +1 -0
- package/dist/astryx/NavIcon.js +1 -0
- package/dist/astryx/NavMenu.d.ts +1 -0
- package/dist/astryx/NavMenu.js +1 -0
- package/dist/astryx/NumberInput.d.ts +1 -0
- package/dist/astryx/NumberInput.js +1 -0
- package/dist/astryx/Outline.d.ts +1 -0
- package/dist/astryx/Outline.js +1 -0
- package/dist/astryx/OverflowList.d.ts +1 -0
- package/dist/astryx/OverflowList.js +1 -0
- package/dist/astryx/Overlay.d.ts +1 -0
- package/dist/astryx/Overlay.js +1 -0
- package/dist/astryx/Pagination.d.ts +1 -0
- package/dist/astryx/Pagination.js +1 -0
- package/dist/astryx/Popover.d.ts +1 -0
- package/dist/astryx/Popover.js +1 -0
- package/dist/astryx/PowerSearch/utils.d.ts +1 -0
- package/dist/astryx/PowerSearch/utils.js +1 -0
- package/dist/astryx/PowerSearch.d.ts +1 -0
- package/dist/astryx/PowerSearch.js +1 -0
- package/dist/astryx/ProgressBar.d.ts +1 -0
- package/dist/astryx/ProgressBar.js +1 -0
- package/dist/astryx/RadioList.d.ts +1 -0
- package/dist/astryx/RadioList.js +1 -0
- package/dist/astryx/Resizable/utils.d.ts +1 -0
- package/dist/astryx/Resizable/utils.js +1 -0
- package/dist/astryx/Resizable.d.ts +1 -0
- package/dist/astryx/Resizable.js +1 -0
- package/dist/astryx/ScrollableArea.d.ts +1 -0
- package/dist/astryx/ScrollableArea.js +1 -0
- package/dist/astryx/Section.d.ts +1 -0
- package/dist/astryx/Section.js +1 -0
- package/dist/astryx/SegmentedControl.d.ts +1 -0
- package/dist/astryx/SegmentedControl.js +1 -0
- package/dist/astryx/SelectableCard.d.ts +1 -0
- package/dist/astryx/SelectableCard.js +1 -0
- package/dist/astryx/Selector/utils.d.ts +1 -0
- package/dist/astryx/Selector/utils.js +1 -0
- package/dist/astryx/Selector.d.ts +1 -0
- package/dist/astryx/Selector.js +1 -0
- package/dist/astryx/SideNav.d.ts +1 -0
- package/dist/astryx/SideNav.js +1 -0
- package/dist/astryx/SizeContext.d.ts +1 -0
- package/dist/astryx/SizeContext.js +1 -0
- package/dist/astryx/Skeleton.d.ts +1 -0
- package/dist/astryx/Skeleton.js +1 -0
- package/dist/astryx/Slider.d.ts +1 -0
- package/dist/astryx/Slider.js +1 -0
- package/dist/astryx/Spinner.d.ts +1 -0
- package/dist/astryx/Spinner.js +1 -0
- package/dist/astryx/Stack.d.ts +1 -0
- package/dist/astryx/Stack.js +1 -0
- package/dist/astryx/StatusDot.d.ts +1 -0
- package/dist/astryx/StatusDot.js +1 -0
- package/dist/astryx/Stepper.d.ts +1 -0
- package/dist/astryx/Stepper.js +1 -0
- package/dist/astryx/Switch.d.ts +1 -0
- package/dist/astryx/Switch.js +1 -0
- package/dist/astryx/TabList.d.ts +1 -0
- package/dist/astryx/TabList.js +1 -0
- package/dist/astryx/Table/utils.d.ts +1 -0
- package/dist/astryx/Table/utils.js +1 -0
- package/dist/astryx/Table.d.ts +1 -0
- package/dist/astryx/Table.js +1 -0
- package/dist/astryx/Text.d.ts +1 -0
- package/dist/astryx/Text.js +1 -0
- package/dist/astryx/TextArea.d.ts +1 -0
- package/dist/astryx/TextArea.js +1 -0
- package/dist/astryx/TextInput.d.ts +1 -0
- package/dist/astryx/TextInput.js +1 -0
- package/dist/astryx/Thumbnail.d.ts +1 -0
- package/dist/astryx/Thumbnail.js +1 -0
- package/dist/astryx/TimeInput.d.ts +1 -0
- package/dist/astryx/TimeInput.js +1 -0
- package/dist/astryx/Timer.d.ts +1 -0
- package/dist/astryx/Timer.js +1 -0
- package/dist/astryx/Timestamp.d.ts +1 -0
- package/dist/astryx/Timestamp.js +1 -0
- package/dist/astryx/Toast.d.ts +1 -0
- package/dist/astryx/Toast.js +1 -0
- package/dist/astryx/ToggleButton.d.ts +1 -0
- package/dist/astryx/ToggleButton.js +1 -0
- package/dist/astryx/Token.d.ts +1 -0
- package/dist/astryx/Token.js +1 -0
- package/dist/astryx/Tokenizer.d.ts +1 -0
- package/dist/astryx/Tokenizer.js +1 -0
- package/dist/astryx/Toolbar.d.ts +1 -0
- package/dist/astryx/Toolbar.js +1 -0
- package/dist/astryx/Tooltip.d.ts +1 -0
- package/dist/astryx/Tooltip.js +1 -0
- package/dist/astryx/TopNav.d.ts +1 -0
- package/dist/astryx/TopNav.js +1 -0
- package/dist/astryx/TreeList.d.ts +1 -0
- package/dist/astryx/TreeList.js +1 -0
- package/dist/astryx/Typeahead/utils.d.ts +1 -0
- package/dist/astryx/Typeahead/utils.js +1 -0
- package/dist/astryx/Typeahead.d.ts +1 -0
- package/dist/astryx/Typeahead.js +1 -0
- package/dist/astryx/VStack.d.ts +1 -0
- package/dist/astryx/VStack.js +1 -0
- package/dist/astryx/VisuallyHidden.d.ts +1 -0
- package/dist/astryx/VisuallyHidden.js +1 -0
- package/dist/astryx/astryx.css +3 -0
- package/dist/astryx/hooks.d.ts +1 -0
- package/dist/astryx/hooks.js +1 -0
- package/dist/astryx/i18n.d.ts +1 -0
- package/dist/astryx/i18n.js +1 -0
- package/dist/astryx/lab/lab.css +3 -0
- package/dist/astryx/lab.d.ts +6 -0
- package/dist/astryx/lab.js +6 -0
- package/dist/astryx/naming.d.ts +1 -0
- package/dist/astryx/naming.js +1 -0
- package/dist/astryx/reset.css +3 -0
- package/dist/astryx/tailwind-theme.css +3 -0
- package/dist/astryx/theme/neutral/built.d.ts +1 -0
- package/dist/astryx/theme/neutral/built.js +1 -0
- package/dist/astryx/theme/neutral/theme.css +3 -0
- package/dist/astryx/theme/neutral.d.ts +1 -0
- package/dist/astryx/theme/neutral.js +1 -0
- package/dist/astryx/theme/syntax.d.ts +1 -0
- package/dist/astryx/theme/syntax.js +1 -0
- package/dist/astryx/theme/tokens.d.ts +1 -0
- package/dist/astryx/theme/tokens.js +1 -0
- package/dist/astryx/theme/tokens.stylex.d.ts +1 -0
- package/dist/astryx/theme/tokens.stylex.js +1 -0
- package/dist/astryx/theme.d.ts +1 -0
- package/dist/astryx/theme.js +1 -0
- package/dist/astryx/utils.d.ts +1 -0
- package/dist/astryx/utils.js +1 -0
- package/dist/components/AlertModal/AlertModal.d.ts +14 -0
- package/dist/components/AlertModal/AlertModal.js +56 -0
- package/dist/components/AlertModal/AlertModal.js.map +1 -0
- package/dist/components/AlertModal/index.d.ts +2 -0
- package/dist/components/AlertModal/index.js +2 -0
- package/dist/components/BoardItemTitle/BoardItemTitle.d.ts +15 -0
- package/dist/components/BoardItemTitle/BoardItemTitle2.js +42 -0
- package/dist/components/BoardItemTitle/BoardItemTitle2.js.map +1 -0
- package/dist/components/BoardItemTitle/index.d.ts +2 -0
- package/dist/components/BoardItemTitle/index.js +2 -0
- package/dist/components/BooleanToken/BooleanToken.d.ts +15 -0
- package/dist/components/BooleanToken/BooleanToken.js +19 -0
- package/dist/components/BooleanToken/BooleanToken.js.map +1 -0
- package/dist/components/BooleanToken/BooleanToken.messages.d.ts +10 -0
- package/dist/components/BooleanToken/BooleanToken.messages.js +16 -0
- package/dist/components/BooleanToken/BooleanToken.messages.js.map +1 -0
- package/dist/components/BooleanToken/index.d.ts +2 -0
- package/dist/components/BooleanToken/index.js +2 -0
- package/dist/components/BulkEditFormItem/BulkEditFormItem.d.ts +24 -0
- package/dist/components/BulkEditFormItem/BulkEditFormItem.js +93 -0
- package/dist/components/BulkEditFormItem/BulkEditFormItem.js.map +1 -0
- package/dist/components/BulkEditFormItem/BulkEditFormItem.messages.d.ts +14 -0
- package/dist/components/BulkEditFormItem/BulkEditFormItem.messages.js +20 -0
- package/dist/components/BulkEditFormItem/BulkEditFormItem.messages.js.map +1 -0
- package/dist/components/BulkEditFormItem/index.d.ts +2 -0
- package/dist/components/BulkEditFormItem/index.js +2 -0
- package/dist/components/BulkErrorModal/BulkErrorModal.d.ts +23 -0
- package/dist/components/BulkErrorModal/BulkErrorModal.messages.d.ts +10 -0
- package/dist/components/BulkErrorModal/BulkErrorModal.messages.js +16 -0
- package/dist/components/BulkErrorModal/BulkErrorModal.messages.js.map +1 -0
- package/dist/components/BulkErrorModal/BulkErrorModal2.js +55 -0
- package/dist/components/BulkErrorModal/BulkErrorModal2.js.map +1 -0
- package/dist/components/BulkErrorModal/index.d.ts +2 -0
- package/dist/components/BulkErrorModal/index.js +2 -0
- package/dist/components/ColorPicker/ColorPicker.d.ts +43 -0
- package/dist/components/ColorPicker/ColorPicker.messages.d.ts +18 -0
- package/dist/components/ColorPicker/ColorPicker.messages.js +24 -0
- package/dist/components/ColorPicker/ColorPicker.messages.js.map +1 -0
- package/dist/components/ColorPicker/ColorPicker2.js +117 -0
- package/dist/components/ColorPicker/ColorPicker2.js.map +1 -0
- package/dist/components/ColorPicker/index.d.ts +2 -0
- package/dist/components/ColorPicker/index.js +2 -0
- package/dist/components/ConfirmPopover/ConfirmPopover.d.ts +35 -0
- package/dist/components/ConfirmPopover/ConfirmPopover.js +75 -0
- package/dist/components/ConfirmPopover/ConfirmPopover.js.map +1 -0
- package/dist/components/ConfirmPopover/index.d.ts +2 -0
- package/dist/components/ConfirmPopover/index.js +2 -0
- package/dist/components/CountBadge/CountBadge.d.ts +24 -0
- package/dist/components/CountBadge/CountBadge2.js +35 -0
- package/dist/components/CountBadge/CountBadge2.js.map +1 -0
- package/dist/components/CountBadge/index.d.ts +2 -0
- package/dist/components/CountBadge/index.js +2 -0
- package/dist/components/CountdownBorder/CountdownBorder.d.ts +22 -0
- package/dist/components/CountdownBorder/CountdownBorder2.js +63 -0
- package/dist/components/CountdownBorder/CountdownBorder2.js.map +1 -0
- package/dist/components/CountdownBorder/index.d.ts +2 -0
- package/dist/components/CountdownBorder/index.js +2 -0
- package/dist/components/DataGrid/DataGrid.d.ts +212 -0
- package/dist/components/DataGrid/DataGrid.messages.d.ts +70 -0
- package/dist/components/DataGrid/DataGrid.messages.js +76 -0
- package/dist/components/DataGrid/DataGrid.messages.js.map +1 -0
- package/dist/components/DataGrid/DataGrid2.js +447 -0
- package/dist/components/DataGrid/DataGrid2.js.map +1 -0
- package/dist/components/DataGrid/DataGridExportModal.d.ts +30 -0
- package/dist/components/DataGrid/DataGridExportModal.js +125 -0
- package/dist/components/DataGrid/DataGridExportModal.js.map +1 -0
- package/dist/components/DataGrid/DataGridSettingsModal.d.ts +36 -0
- package/dist/components/DataGrid/DataGridSettingsModal.js +177 -0
- package/dist/components/DataGrid/DataGridSettingsModal.js.map +1 -0
- package/dist/components/DataGrid/index.d.ts +6 -0
- package/dist/components/DataGrid/index.js +4 -0
- package/dist/components/DataGrid/nodeToPlainText.d.ts +6 -0
- package/dist/components/DataGrid/nodeToPlainText.js +9 -0
- package/dist/components/DataGrid/nodeToPlainText.js.map +1 -0
- package/dist/components/DeleteConfirmModal/DeleteConfirmModal.d.ts +78 -0
- package/dist/components/DeleteConfirmModal/DeleteConfirmModal.messages.d.ts +30 -0
- package/dist/components/DeleteConfirmModal/DeleteConfirmModal.messages.js +36 -0
- package/dist/components/DeleteConfirmModal/DeleteConfirmModal.messages.js.map +1 -0
- package/dist/components/DeleteConfirmModal/DeleteConfirmModal2.js +102 -0
- package/dist/components/DeleteConfirmModal/DeleteConfirmModal2.js.map +1 -0
- package/dist/components/DeleteConfirmModal/index.d.ts +2 -0
- package/dist/components/DeleteConfirmModal/index.js +2 -0
- package/dist/components/DigitPopIn/DigitPopIn.d.ts +8 -0
- package/dist/components/DigitPopIn/DigitPopIn2.js +30 -0
- package/dist/components/DigitPopIn/DigitPopIn2.js.map +1 -0
- package/dist/components/DigitPopIn/index.d.ts +2 -0
- package/dist/components/DigitPopIn/index.js +2 -0
- package/dist/components/DividedRow/DividedRow.d.ts +27 -0
- package/dist/components/DividedRow/DividedRow2.js +63 -0
- package/dist/components/DividedRow/DividedRow2.js.map +1 -0
- package/dist/components/DividedRow/index.d.ts +2 -0
- package/dist/components/DividedRow/index.js +2 -0
- package/dist/components/DoubleBadge/DoubleBadge.d.ts +14 -0
- package/dist/components/DoubleBadge/DoubleBadge2.js +28 -0
- package/dist/components/DoubleBadge/DoubleBadge2.js.map +1 -0
- package/dist/components/DoubleBadge/index.d.ts +2 -0
- package/dist/components/DoubleBadge/index.js +2 -0
- package/dist/components/DoubleToken/DoubleToken.d.ts +24 -0
- package/dist/components/DoubleToken/DoubleToken2.js +38 -0
- package/dist/components/DoubleToken/DoubleToken2.js.map +1 -0
- package/dist/components/DoubleToken/index.d.ts +2 -0
- package/dist/components/DoubleToken/index.js +2 -0
- package/dist/components/ErrorState/ErrorState.d.ts +7 -16
- package/dist/components/ErrorState/ErrorState2.js +33 -33
- package/dist/components/ErrorState/ErrorState2.js.map +1 -1
- package/dist/components/Form/ErrorList.d.ts +13 -0
- package/dist/components/Form/ErrorList.js +21 -0
- package/dist/components/Form/ErrorList.js.map +1 -0
- package/dist/components/Form/Field.d.ts +88 -0
- package/dist/components/Form/Field.js +212 -0
- package/dist/components/Form/Field.js.map +1 -0
- package/dist/components/Form/Form.d.ts +70 -0
- package/dist/components/Form/Form.js +130 -0
- package/dist/components/Form/Form.js.map +1 -0
- package/dist/components/Form/Form.messages.d.ts +96 -0
- package/dist/components/Form/Form.messages.js +96 -0
- package/dist/components/Form/Form.messages.js.map +1 -0
- package/dist/components/Form/FormConfigProvider.d.ts +20 -0
- package/dist/components/Form/FormConfigProvider.js +31 -0
- package/dist/components/Form/FormConfigProvider.js.map +1 -0
- package/dist/components/Form/FormItem.d.ts +56 -0
- package/dist/components/Form/FormItem.js +164 -0
- package/dist/components/Form/FormItem.js.map +1 -0
- package/dist/components/Form/FormItemVisual.d.ts +56 -0
- package/dist/components/Form/FormItemVisual2.js +117 -0
- package/dist/components/Form/FormItemVisual2.js.map +1 -0
- package/dist/components/Form/FormStore.d.ts +109 -0
- package/dist/components/Form/FormStore.js +494 -0
- package/dist/components/Form/FormStore.js.map +1 -0
- package/dist/components/Form/List.d.ts +22 -0
- package/dist/components/Form/List.js +65 -0
- package/dist/components/Form/List.js.map +1 -0
- package/dist/components/Form/context.d.ts +91 -0
- package/dist/components/Form/context.js +34 -0
- package/dist/components/Form/context.js.map +1 -0
- package/dist/components/Form/feedbackIcons.d.ts +13 -0
- package/dist/components/Form/feedbackIcons.js +45 -0
- package/dist/components/Form/feedbackIcons.js.map +1 -0
- package/dist/components/Form/index.d.ts +30 -0
- package/dist/components/Form/index.js +18 -0
- package/dist/components/Form/index.js.map +1 -0
- package/dist/components/Form/interface.d.ts +212 -0
- package/dist/components/Form/isEqual.d.ts +1 -0
- package/dist/components/Form/isEqual.js +61 -0
- package/dist/components/Form/isEqual.js.map +1 -0
- package/dist/components/Form/messages.d.ts +15 -0
- package/dist/components/Form/messages.js +52 -0
- package/dist/components/Form/messages.js.map +1 -0
- package/dist/components/Form/namePath.d.ts +78 -0
- package/dist/components/Form/namePath.js +120 -0
- package/dist/components/Form/namePath.js.map +1 -0
- package/dist/components/Form/useWatch.d.ts +11 -0
- package/dist/components/Form/useWatch.js +43 -0
- package/dist/components/Form/useWatch.js.map +1 -0
- package/dist/components/Form/validate.d.ts +16 -0
- package/dist/components/Form/validate.js +214 -0
- package/dist/components/Form/validate.js.map +1 -0
- package/dist/components/IconWithTooltip/IconWithTooltip.d.ts +19 -0
- package/dist/components/IconWithTooltip/IconWithTooltip2.js +38 -0
- package/dist/components/IconWithTooltip/IconWithTooltip2.js.map +1 -0
- package/dist/components/IconWithTooltip/accessibleLabel.d.ts +2 -0
- package/dist/components/IconWithTooltip/accessibleLabel.js +33 -0
- package/dist/components/IconWithTooltip/accessibleLabel.js.map +1 -0
- package/dist/components/IconWithTooltip/index.d.ts +2 -0
- package/dist/components/IconWithTooltip/index.js +2 -0
- package/dist/components/ImageWithFallback/ImageWithFallback.d.ts +11 -0
- package/dist/components/ImageWithFallback/ImageWithFallback2.js +28 -0
- package/dist/components/ImageWithFallback/ImageWithFallback2.js.map +1 -0
- package/dist/components/ImageWithFallback/index.d.ts +2 -0
- package/dist/components/ImageWithFallback/index.js +2 -0
- package/dist/components/ListBanner/ListBanner.d.ts +17 -0
- package/dist/components/ListBanner/ListBanner2.js +27 -0
- package/dist/components/ListBanner/ListBanner2.js.map +1 -0
- package/dist/components/ListBanner/index.d.ts +2 -0
- package/dist/components/ListBanner/index.js +2 -0
- package/dist/components/Modal/Modal.d.ts +65 -0
- package/dist/components/Modal/Modal2.js +226 -0
- package/dist/components/Modal/Modal2.js.map +1 -0
- package/dist/components/Modal/index.d.ts +15 -0
- package/dist/components/Modal/index.js +4 -0
- package/dist/components/Modal/modalStack.d.ts +65 -0
- package/dist/components/Modal/modalStack.js +81 -0
- package/dist/components/Modal/modalStack.js.map +1 -0
- package/dist/components/NotificationItem/NotificationItem.d.ts +14 -0
- package/dist/components/NotificationItem/NotificationItem2.js +40 -0
- package/dist/components/NotificationItem/NotificationItem2.js.map +1 -0
- package/dist/components/NotificationItem/index.d.ts +2 -0
- package/dist/components/NotificationItem/index.js +2 -0
- package/dist/components/NotificationStack/NotificationStack.d.ts +56 -0
- package/dist/components/NotificationStack/NotificationStack.messages.d.ts +6 -0
- package/dist/components/NotificationStack/NotificationStack.messages.js +10 -0
- package/dist/components/NotificationStack/NotificationStack.messages.js.map +1 -0
- package/dist/components/NotificationStack/NotificationStack2.js +154 -0
- package/dist/components/NotificationStack/NotificationStack2.js.map +1 -0
- package/dist/components/NotificationStack/index.d.ts +2 -0
- package/dist/components/NotificationStack/index.js +2 -0
- package/dist/components/OverlayScrollbar/OverlayScrollbar.d.ts +13 -0
- package/dist/components/OverlayScrollbar/OverlayScrollbar2.js +69 -0
- package/dist/components/OverlayScrollbar/OverlayScrollbar2.js.map +1 -0
- package/dist/components/OverlayScrollbar/index.d.ts +2 -0
- package/dist/components/OverlayScrollbar/index.js +2 -0
- package/dist/components/PageHeader/PageHeader.d.ts +24 -8
- package/dist/components/PageHeader/PageHeader.messages.d.ts +6 -0
- package/dist/components/PageHeader/PageHeader.messages.js +10 -0
- package/dist/components/PageHeader/PageHeader.messages.js.map +1 -0
- package/dist/components/PageHeader/PageHeader2.js +57 -30
- package/dist/components/PageHeader/PageHeader2.js.map +1 -1
- package/dist/components/PageLayout/PageLayout2.js +2 -2
- package/dist/components/PageLayout/PageLayout2.js.map +1 -1
- package/dist/components/PagedSelector/PagedSelector.d.ts +107 -0
- package/dist/components/PagedSelector/PagedSelector.messages.d.ts +30 -0
- package/dist/components/PagedSelector/PagedSelector.messages.js +36 -0
- package/dist/components/PagedSelector/PagedSelector.messages.js.map +1 -0
- package/dist/components/PagedSelector/PagedSelector2.js +220 -0
- package/dist/components/PagedSelector/PagedSelector2.js.map +1 -0
- package/dist/components/PagedSelector/PanelSearchInput.d.ts +22 -0
- package/dist/components/PagedSelector/PanelSearchInput.js +95 -0
- package/dist/components/PagedSelector/PanelSearchInput.js.map +1 -0
- package/dist/components/PagedSelector/index.d.ts +2 -0
- package/dist/components/PagedSelector/index.js +2 -0
- package/dist/components/ProgressWithLabel/ProgressWithLabel.d.ts +26 -0
- package/dist/components/ProgressWithLabel/ProgressWithLabel2.js +44 -0
- package/dist/components/ProgressWithLabel/ProgressWithLabel2.js.map +1 -0
- package/dist/components/ProgressWithLabel/index.d.ts +2 -0
- package/dist/components/ProgressWithLabel/index.js +2 -0
- package/dist/components/SelectionLabel/SelectionLabel.d.ts +23 -0
- package/dist/components/SelectionLabel/SelectionLabel.js +29 -0
- package/dist/components/SelectionLabel/SelectionLabel.js.map +1 -0
- package/dist/components/SelectionLabel/SelectionLabel.messages.d.ts +10 -0
- package/dist/components/SelectionLabel/SelectionLabel.messages.js +16 -0
- package/dist/components/SelectionLabel/SelectionLabel.messages.js.map +1 -0
- package/dist/components/SelectionLabel/index.d.ts +2 -0
- package/dist/components/SelectionLabel/index.js +2 -0
- package/dist/components/Skeleton/Skeleton.messages.d.ts +18 -0
- package/dist/components/Skeleton/Skeleton.messages.js +24 -0
- package/dist/components/Skeleton/Skeleton.messages.js.map +1 -0
- package/dist/components/Skeleton/SkeletonCard.d.ts +4 -9
- package/dist/components/Skeleton/SkeletonCard2.js +53 -53
- package/dist/components/Skeleton/SkeletonCard2.js.map +1 -1
- package/dist/components/Skeleton/SkeletonChart.d.ts +5 -11
- package/dist/components/Skeleton/SkeletonChart2.js +51 -45
- package/dist/components/Skeleton/SkeletonChart2.js.map +1 -1
- package/dist/components/Skeleton/SkeletonRow.d.ts +5 -10
- package/dist/components/Skeleton/SkeletonRow2.js +35 -34
- package/dist/components/Skeleton/SkeletonRow2.js.map +1 -1
- package/dist/components/Skeleton/SkeletonShape.d.ts +10 -0
- package/dist/components/Skeleton/SkeletonShape2.js +23 -0
- package/dist/components/Skeleton/SkeletonShape2.js.map +1 -0
- package/dist/components/Skeleton/SkeletonText.d.ts +4 -9
- package/dist/components/Skeleton/SkeletonText2.js +22 -17
- package/dist/components/Skeleton/SkeletonText2.js.map +1 -1
- package/dist/components/Skeleton/index.d.ts +3 -5
- package/dist/components/Skeleton/index.js +4 -5
- package/dist/components/SmoothHeight/SmoothHeight2.js +2 -2
- package/dist/components/SmoothHeight/SmoothHeight2.js.map +1 -1
- package/dist/components/StatCard/StatCard.d.ts +28 -16
- package/dist/components/StatCard/StatCard2.js +96 -89
- package/dist/components/StatCard/StatCard2.js.map +1 -1
- package/dist/components/StatCard/index.d.ts +1 -1
- package/dist/components/Statistic/Statistic.d.ts +30 -0
- package/dist/components/Statistic/Statistic.messages.d.ts +6 -0
- package/dist/components/Statistic/Statistic.messages.js +10 -0
- package/dist/components/Statistic/Statistic.messages.js.map +1 -0
- package/dist/components/Statistic/Statistic2.js +75 -0
- package/dist/components/Statistic/Statistic2.js.map +1 -0
- package/dist/components/Statistic/index.d.ts +2 -0
- package/dist/components/Statistic/index.js +2 -0
- package/dist/components/StepNumberInput/NumberStepper.d.ts +29 -0
- package/dist/components/StepNumberInput/NumberStepper.messages.d.ts +10 -0
- package/dist/components/StepNumberInput/NumberStepper.messages.js +16 -0
- package/dist/components/StepNumberInput/NumberStepper.messages.js.map +1 -0
- package/dist/components/StepNumberInput/NumberStepper2.js +50 -0
- package/dist/components/StepNumberInput/NumberStepper2.js.map +1 -0
- package/dist/components/StepNumberInput/StepNumberInput.d.ts +33 -0
- package/dist/components/StepNumberInput/StepNumberInput.js +48 -0
- package/dist/components/StepNumberInput/StepNumberInput.js.map +1 -0
- package/dist/components/StepNumberInput/index.d.ts +4 -0
- package/dist/components/StepNumberInput/index.js +3 -0
- package/dist/components/TextHighlighter/TextHighlighter.d.ts +14 -0
- package/dist/components/TextHighlighter/TextHighlighter2.js +29 -0
- package/dist/components/TextHighlighter/TextHighlighter2.js.map +1 -0
- package/dist/components/TextHighlighter/index.d.ts +2 -0
- package/dist/components/TextHighlighter/index.js +2 -0
- package/dist/components/TokenList/TokenList.d.ts +18 -0
- package/dist/components/TokenList/TokenList2.js +55 -0
- package/dist/components/TokenList/TokenList2.js.map +1 -0
- package/dist/components/TokenList/index.d.ts +2 -0
- package/dist/components/TokenList/index.js +2 -0
- package/dist/components/TokenRow/TokenRow.d.ts +27 -0
- package/dist/components/TokenRow/TokenRow.messages.d.ts +6 -0
- package/dist/components/TokenRow/TokenRow.messages.js +10 -0
- package/dist/components/TokenRow/TokenRow.messages.js.map +1 -0
- package/dist/components/TokenRow/TokenRow2.js +29 -0
- package/dist/components/TokenRow/TokenRow2.js.map +1 -0
- package/dist/components/TokenRow/index.d.ts +2 -0
- package/dist/components/TokenRow/index.js +2 -0
- package/dist/components/UncontrolledInput/UncontrolledInput.d.ts +29 -0
- package/dist/components/UncontrolledInput/UncontrolledInput.js +49 -0
- package/dist/components/UncontrolledInput/UncontrolledInput.js.map +1 -0
- package/dist/components/UncontrolledInput/UncontrolledInput.messages.d.ts +6 -0
- package/dist/components/UncontrolledInput/UncontrolledInput.messages.js +10 -0
- package/dist/components/UncontrolledInput/UncontrolledInput.messages.js.map +1 -0
- package/dist/components/UncontrolledInput/index.d.ts +2 -0
- package/dist/components/UncontrolledInput/index.js +2 -0
- package/dist/components/UnitGrid/UnitGrid.d.ts +56 -0
- package/dist/components/UnitGrid/UnitGrid.geometry.d.ts +102 -0
- package/dist/components/UnitGrid/UnitGrid.geometry.js +172 -0
- package/dist/components/UnitGrid/UnitGrid.geometry.js.map +1 -0
- package/dist/components/UnitGrid/UnitGrid.messages.d.ts +14 -0
- package/dist/components/UnitGrid/UnitGrid.messages.js +20 -0
- package/dist/components/UnitGrid/UnitGrid.messages.js.map +1 -0
- package/dist/components/UnitGrid/UnitGrid2.js +393 -0
- package/dist/components/UnitGrid/UnitGrid2.js.map +1 -0
- package/dist/components/UnitGrid/UnitGridSkeleton.d.ts +9 -0
- package/dist/components/UnitGrid/UnitGridSkeleton.js +73 -0
- package/dist/components/UnitGrid/UnitGridSkeleton.js.map +1 -0
- package/dist/components/UnitGrid/index.d.ts +4 -0
- package/dist/components/UnitGrid/index.js +3 -0
- package/dist/forks/ComplexSelector/ComplexSelector.d.ts +144 -0
- package/dist/forks/ComplexSelector/ComplexSelector.js +157 -0
- package/dist/forks/ComplexSelector/ComplexSelector.js.map +1 -0
- package/dist/forks/ComplexSelector/ComplexSelector.styles.d.ts +129 -0
- package/dist/forks/ComplexSelector/ComplexSelector.styles.js +133 -0
- package/dist/forks/ComplexSelector/ComplexSelector.styles.js.map +1 -0
- package/dist/forks/ComplexSelector/index.d.ts +7 -0
- package/dist/forks/ComplexSelector/index.js +2 -0
- package/dist/forks/Drawer/Drawer.d.ts +109 -0
- package/dist/forks/Drawer/Drawer.js +76 -0
- package/dist/forks/Drawer/Drawer.js.map +1 -0
- package/dist/forks/Drawer/Drawer.styles.d.ts +106 -0
- package/dist/forks/Drawer/Drawer.styles.js +104 -0
- package/dist/forks/Drawer/Drawer.styles.js.map +1 -0
- package/dist/forks/Drawer/index.d.ts +6 -0
- package/dist/forks/Drawer/index.js +2 -0
- package/dist/forks/Drawer/useDrawerDialogPresence.d.ts +20 -0
- package/dist/forks/Drawer/useDrawerDialogPresence.js +83 -0
- package/dist/forks/Drawer/useDrawerDialogPresence.js.map +1 -0
- package/dist/forks/Tour/Tour.d.ts +58 -0
- package/dist/forks/Tour/Tour.js +55 -0
- package/dist/forks/Tour/Tour.js.map +1 -0
- package/dist/forks/Tour/TourContext.d.ts +37 -0
- package/dist/forks/Tour/TourContext.js +8 -0
- package/dist/forks/Tour/TourContext.js.map +1 -0
- package/dist/forks/Tour/TourStep.d.ts +43 -0
- package/dist/forks/Tour/TourStep.js +134 -0
- package/dist/forks/Tour/TourStep.js.map +1 -0
- package/dist/forks/Tour/TourStep.styles.d.ts +23 -0
- package/dist/forks/Tour/TourStep.styles.js +28 -0
- package/dist/forks/Tour/TourStep.styles.js.map +1 -0
- package/dist/forks/Tour/index.d.ts +11 -0
- package/dist/forks/Tour/index.js +4 -0
- package/dist/forks/Tour/useTour.d.ts +26 -0
- package/dist/forks/Tour/useTour.js +20 -0
- package/dist/forks/Tour/useTour.js.map +1 -0
- package/dist/forks/compiled.d.ts +5 -0
- package/dist/forks/compiled.js +8 -0
- package/dist/forks/compiled.js.map +1 -0
- package/dist/i18n/catalog.d.ts +12 -0
- package/dist/i18n/catalog.js +46 -0
- package/dist/i18n/catalog.js.map +1 -0
- package/dist/i18n/common.messages.d.ts +31 -0
- package/dist/i18n/common.messages.js +32 -0
- package/dist/i18n/common.messages.js.map +1 -0
- package/dist/i18n/index.d.ts +21 -0
- package/dist/i18n/index.js +3 -0
- package/dist/i18n/locales/de-DE.js +331 -0
- package/dist/i18n/locales/de-DE.js.map +1 -0
- package/dist/i18n/locales/el-GR.js +331 -0
- package/dist/i18n/locales/el-GR.js.map +1 -0
- package/dist/i18n/locales/es-ES.js +331 -0
- package/dist/i18n/locales/es-ES.js.map +1 -0
- package/dist/i18n/locales/fi-FI.js +331 -0
- package/dist/i18n/locales/fi-FI.js.map +1 -0
- package/dist/i18n/locales/fr-FR.js +331 -0
- package/dist/i18n/locales/fr-FR.js.map +1 -0
- package/dist/i18n/locales/id-ID.js +331 -0
- package/dist/i18n/locales/id-ID.js.map +1 -0
- package/dist/i18n/locales/it-IT.js +331 -0
- package/dist/i18n/locales/it-IT.js.map +1 -0
- package/dist/i18n/locales/ja-JP.js +351 -0
- package/dist/i18n/locales/ja-JP.js.map +1 -0
- package/dist/i18n/locales/ko-KR.js +351 -0
- package/dist/i18n/locales/ko-KR.js.map +1 -0
- package/dist/i18n/locales/mn-MN.js +327 -0
- package/dist/i18n/locales/mn-MN.js.map +1 -0
- package/dist/i18n/locales/ms-MY.js +331 -0
- package/dist/i18n/locales/ms-MY.js.map +1 -0
- package/dist/i18n/locales/pl-PL.js +331 -0
- package/dist/i18n/locales/pl-PL.js.map +1 -0
- package/dist/i18n/locales/pt-BR.js +331 -0
- package/dist/i18n/locales/pt-BR.js.map +1 -0
- package/dist/i18n/locales/pt-PT.js +331 -0
- package/dist/i18n/locales/pt-PT.js.map +1 -0
- package/dist/i18n/locales/ru-RU.js +331 -0
- package/dist/i18n/locales/ru-RU.js.map +1 -0
- package/dist/i18n/locales/th-TH.js +331 -0
- package/dist/i18n/locales/th-TH.js.map +1 -0
- package/dist/i18n/locales/tr-TR.js +331 -0
- package/dist/i18n/locales/tr-TR.js.map +1 -0
- package/dist/i18n/locales/vi-VN.js +331 -0
- package/dist/i18n/locales/vi-VN.js.map +1 -0
- package/dist/i18n/locales/zh-CN.js +331 -0
- package/dist/i18n/locales/zh-CN.js.map +1 -0
- package/dist/i18n/locales/zh-TW.js +331 -0
- package/dist/i18n/locales/zh-TW.js.map +1 -0
- package/dist/i18n/messages.d.ts +13 -0
- package/dist/i18n/messages.js +63 -0
- package/dist/i18n/messages.js.map +1 -0
- package/dist/i18n/translateWithNodes.d.ts +3 -0
- package/dist/i18n/translateWithNodes.js +14 -0
- package/dist/i18n/translateWithNodes.js.map +1 -0
- package/dist/i18n/useUicTranslator.d.ts +5 -0
- package/dist/i18n/useUicTranslator.js +38 -0
- package/dist/i18n/useUicTranslator.js.map +1 -0
- package/dist/index.d.ts +101 -27
- package/dist/index.js +63 -23
- package/dist/instance.d.ts +31 -0
- package/dist/instance.js +33 -0
- package/dist/instance.js.map +1 -0
- package/dist/legacy-tokens.css +177 -0
- package/dist/locales/af-ZA.generated.d.ts +8 -0
- package/dist/locales/af-ZA.generated.js +381 -0
- package/dist/locales/af-ZA.json +1483 -0
- package/dist/locales/ar-SA.generated.d.ts +8 -0
- package/dist/locales/ar-SA.generated.js +381 -0
- package/dist/locales/ar-SA.json +1483 -0
- package/dist/locales/ca-ES.generated.d.ts +8 -0
- package/dist/locales/ca-ES.generated.js +381 -0
- package/dist/locales/ca-ES.json +1483 -0
- package/dist/locales/cs-CZ.generated.d.ts +8 -0
- package/dist/locales/cs-CZ.generated.js +381 -0
- package/dist/locales/cs-CZ.json +1483 -0
- package/dist/locales/da-DK.generated.d.ts +8 -0
- package/dist/locales/da-DK.generated.js +381 -0
- package/dist/locales/da-DK.json +1483 -0
- package/dist/locales/de-DE.generated.d.ts +8 -0
- package/dist/locales/de-DE.generated.js +381 -0
- package/dist/locales/de-DE.json +1483 -0
- package/dist/locales/el-GR.generated.d.ts +8 -0
- package/dist/locales/el-GR.generated.js +381 -0
- package/dist/locales/el-GR.json +1483 -0
- package/dist/locales/en.generated.d.ts +8 -0
- package/dist/locales/en.generated.js +385 -0
- package/dist/locales/en.json +1498 -0
- package/dist/locales/es-ES.generated.d.ts +8 -0
- package/dist/locales/es-ES.generated.js +381 -0
- package/dist/locales/es-ES.json +1483 -0
- package/dist/locales/fi-FI.generated.d.ts +8 -0
- package/dist/locales/fi-FI.generated.js +381 -0
- package/dist/locales/fi-FI.json +1483 -0
- package/dist/locales/fr-FR.generated.d.ts +8 -0
- package/dist/locales/fr-FR.generated.js +381 -0
- package/dist/locales/fr-FR.json +1483 -0
- package/dist/locales/he-IL.generated.d.ts +8 -0
- package/dist/locales/he-IL.generated.js +381 -0
- package/dist/locales/he-IL.json +1483 -0
- package/dist/locales/hu-HU.generated.d.ts +8 -0
- package/dist/locales/hu-HU.generated.js +381 -0
- package/dist/locales/hu-HU.json +1483 -0
- package/dist/locales/it-IT.generated.d.ts +8 -0
- package/dist/locales/it-IT.generated.js +381 -0
- package/dist/locales/it-IT.json +1483 -0
- package/dist/locales/ja-JP.generated.d.ts +8 -0
- package/dist/locales/ja-JP.generated.js +381 -0
- package/dist/locales/ja-JP.json +1483 -0
- package/dist/locales/ko-KR.generated.d.ts +8 -0
- package/dist/locales/ko-KR.generated.js +381 -0
- package/dist/locales/ko-KR.json +1483 -0
- package/dist/locales/nl-NL.generated.d.ts +8 -0
- package/dist/locales/nl-NL.generated.js +381 -0
- package/dist/locales/nl-NL.json +1483 -0
- package/dist/locales/no-NO.generated.d.ts +8 -0
- package/dist/locales/no-NO.generated.js +381 -0
- package/dist/locales/no-NO.json +1483 -0
- package/dist/locales/pl-PL.generated.d.ts +8 -0
- package/dist/locales/pl-PL.generated.js +381 -0
- package/dist/locales/pl-PL.json +1483 -0
- package/dist/locales/pseudo.generated.d.ts +8 -0
- package/dist/locales/pseudo.generated.js +385 -0
- package/dist/locales/pseudo.json +1124 -0
- package/dist/locales/pt-BR.generated.d.ts +8 -0
- package/dist/locales/pt-BR.generated.js +381 -0
- package/dist/locales/pt-BR.json +1483 -0
- package/dist/locales/pt-PT.generated.d.ts +8 -0
- package/dist/locales/pt-PT.generated.js +381 -0
- package/dist/locales/pt-PT.json +1483 -0
- package/dist/locales/ro-RO.generated.d.ts +8 -0
- package/dist/locales/ro-RO.generated.js +381 -0
- package/dist/locales/ro-RO.json +1483 -0
- package/dist/locales/ru-RU.generated.d.ts +8 -0
- package/dist/locales/ru-RU.generated.js +381 -0
- package/dist/locales/ru-RU.json +1483 -0
- package/dist/locales/sr-SP.generated.d.ts +8 -0
- package/dist/locales/sr-SP.generated.js +381 -0
- package/dist/locales/sr-SP.json +1483 -0
- package/dist/locales/sv-SE.generated.d.ts +8 -0
- package/dist/locales/sv-SE.generated.js +381 -0
- package/dist/locales/sv-SE.json +1483 -0
- package/dist/locales/tr-TR.generated.d.ts +8 -0
- package/dist/locales/tr-TR.generated.js +381 -0
- package/dist/locales/tr-TR.json +1483 -0
- package/dist/locales/uk-UA.generated.d.ts +8 -0
- package/dist/locales/uk-UA.generated.js +381 -0
- package/dist/locales/uk-UA.json +1483 -0
- package/dist/locales/vi-VN.generated.d.ts +8 -0
- package/dist/locales/vi-VN.generated.js +381 -0
- package/dist/locales/vi-VN.json +1483 -0
- package/dist/locales/zh-CN.generated.d.ts +8 -0
- package/dist/locales/zh-CN.generated.js +381 -0
- package/dist/locales/zh-CN.json +1483 -0
- package/dist/locales/zh-TW.generated.d.ts +8 -0
- package/dist/locales/zh-TW.generated.js +381 -0
- package/dist/locales/zh-TW.json +1483 -0
- package/dist/styles/base.css +24 -2
- package/dist/styles/themes/orange-dark.css +4 -0
- package/dist/styles/themes/orange-light.css +4 -0
- package/dist/theme/lablup/built/lablup.d.ts +13 -0
- package/dist/theme/lablup/built/lablup.js +567 -0
- package/dist/theme/lablup/built/lablup.variants.d.ts +16 -0
- package/dist/theme/lablup/built/theme.css +720 -0
- package/dist/theme/lablup/index.d.ts +9 -0
- package/dist/theme/lablup/index.js +2 -0
- package/dist/theme/lablup/lablupTheme.d.ts +10 -0
- package/dist/theme/lablup/lablupTheme.js +21 -0
- package/dist/theme/lablup/lablupTheme.js.map +1 -0
- package/dist/ui-common-locales/de-DE.json +326 -0
- package/dist/ui-common-locales/el-GR.json +326 -0
- package/dist/ui-common-locales/en.json +346 -0
- package/dist/ui-common-locales/es-ES.json +326 -0
- package/dist/ui-common-locales/fi-FI.json +326 -0
- package/dist/ui-common-locales/fr-FR.json +326 -0
- package/dist/ui-common-locales/id-ID.json +326 -0
- package/dist/ui-common-locales/it-IT.json +326 -0
- package/dist/ui-common-locales/ja-JP.json +346 -0
- package/dist/ui-common-locales/ko-KR.json +346 -0
- package/dist/ui-common-locales/mn-MN.json +322 -0
- package/dist/ui-common-locales/ms-MY.json +326 -0
- package/dist/ui-common-locales/pl-PL.json +326 -0
- package/dist/ui-common-locales/pt-BR.json +326 -0
- package/dist/ui-common-locales/pt-PT.json +326 -0
- package/dist/ui-common-locales/ru-RU.json +326 -0
- package/dist/ui-common-locales/th-TH.json +326 -0
- package/dist/ui-common-locales/tr-TR.json +326 -0
- package/dist/ui-common-locales/vi-VN.json +326 -0
- package/dist/ui-common-locales/zh-CN.json +326 -0
- package/dist/ui-common-locales/zh-TW.json +326 -0
- package/dist/ui-common.css +51 -0
- package/exports.customs.json +62 -0
- package/exports.exclude.json +47 -0
- package/package.json +585 -21
- package/dist/assets/components/Badge/Badge.css +0 -1
- package/dist/assets/components/BaseCard/BaseCard.css +0 -1
- package/dist/assets/components/Button/Button.css +0 -1
- package/dist/assets/components/DataTable/DataTable.css +0 -1
- package/dist/assets/components/Drawer/Drawer.css +0 -1
- package/dist/assets/components/EmptyState/EmptyState.css +0 -1
- package/dist/assets/components/ProgressBar/ProgressBar.css +0 -1
- package/dist/assets/components/Skeleton/Skeleton.css +0 -1
- package/dist/assets/components/StatusTag/StatusTag.css +0 -1
- package/dist/assets/components/Tabs/Tabs.css +0 -1
- package/dist/assets/components/Tooltip/Tooltip.css +0 -1
- package/dist/components/Badge/Badge.d.ts +0 -7
- package/dist/components/Badge/Badge2.js +0 -20
- package/dist/components/Badge/Badge2.js.map +0 -1
- package/dist/components/Badge/index.d.ts +0 -2
- package/dist/components/Badge/index.js +0 -2
- package/dist/components/BaseCard/BaseCard.d.ts +0 -57
- package/dist/components/BaseCard/BaseCard2.js +0 -37
- package/dist/components/BaseCard/BaseCard2.js.map +0 -1
- package/dist/components/BaseCard/index.d.ts +0 -2
- package/dist/components/BaseCard/index.js +0 -2
- package/dist/components/Button/Button.d.ts +0 -54
- package/dist/components/Button/Button2.js +0 -75
- package/dist/components/Button/Button2.js.map +0 -1
- package/dist/components/Button/index.d.ts +0 -5
- package/dist/components/Button/index.js +0 -2
- package/dist/components/DataTable/DataTable.d.ts +0 -144
- package/dist/components/DataTable/DataTable2.js +0 -244
- package/dist/components/DataTable/DataTable2.js.map +0 -1
- package/dist/components/DataTable/index.d.ts +0 -2
- package/dist/components/DataTable/index.js +0 -2
- package/dist/components/Drawer/Drawer.d.ts +0 -25
- package/dist/components/Drawer/Drawer2.js +0 -107
- package/dist/components/Drawer/Drawer2.js.map +0 -1
- package/dist/components/Drawer/index.d.ts +0 -2
- package/dist/components/Drawer/index.js +0 -2
- package/dist/components/EmptyState/EmptyState.d.ts +0 -52
- package/dist/components/EmptyState/EmptyState.example.d.ts +0 -8
- package/dist/components/EmptyState/EmptyState2.js +0 -62
- package/dist/components/EmptyState/EmptyState2.js.map +0 -1
- package/dist/components/EmptyState/index.d.ts +0 -10
- package/dist/components/EmptyState/index.js +0 -2
- package/dist/components/ProgressBar/ProgressBar.d.ts +0 -22
- package/dist/components/ProgressBar/ProgressBar2.js +0 -37
- package/dist/components/ProgressBar/ProgressBar2.js.map +0 -1
- package/dist/components/ProgressBar/index.d.ts +0 -2
- package/dist/components/ProgressBar/index.js +0 -2
- package/dist/components/Skeleton/Skeleton.d.ts +0 -25
- package/dist/components/Skeleton/Skeleton2.js +0 -27
- package/dist/components/Skeleton/Skeleton2.js.map +0 -1
- package/dist/components/StatusTag/StatusTag.d.ts +0 -38
- package/dist/components/StatusTag/StatusTag2.js +0 -45
- package/dist/components/StatusTag/StatusTag2.js.map +0 -1
- package/dist/components/StatusTag/index.d.ts +0 -2
- package/dist/components/StatusTag/index.js +0 -2
- package/dist/components/Tabs/Tabs.d.ts +0 -94
- package/dist/components/Tabs/Tabs2.js +0 -412
- package/dist/components/Tabs/Tabs2.js.map +0 -1
- package/dist/components/Tabs/index.d.ts +0 -2
- package/dist/components/Tabs/index.js +0 -2
- package/dist/components/Tooltip/Tooltip.d.ts +0 -16
- package/dist/components/Tooltip/Tooltip2.js +0 -68
- package/dist/components/Tooltip/Tooltip2.js.map +0 -1
- package/dist/components/Tooltip/index.d.ts +0 -2
- package/dist/components/Tooltip/index.js +0 -2
- package/dist/hooks/index.js +0 -2
- package/dist/icons/AlertCircleIcon.d.ts +0 -11
- package/dist/icons/AlertCircleIcon.js +0 -26
- package/dist/icons/AlertCircleIcon.js.map +0 -1
|
@@ -0,0 +1,393 @@
|
|
|
1
|
+
import { useUicTranslator as e } from "../../i18n/useUicTranslator.js";
|
|
2
|
+
import { deriveMetrics as t, extractSegments as n, gridSize as r, groupConsecutiveSegments as i, latticeColsForWidth as a, letterCellIndices as ee, packGroups as te, placeCells as ne, platePath as re } from "./UnitGrid.geometry.js";
|
|
3
|
+
/* empty css */
|
|
4
|
+
import { useEffect as o, useEffectEvent as ie, useLayoutEffect as ae, useRef as s, useState as c } from "react";
|
|
5
|
+
import { HStack as l, VStack as oe } from "@astryxdesign/core/Stack";
|
|
6
|
+
import { Text as se } from "@astryxdesign/core/Text";
|
|
7
|
+
import { jsx as u, jsxs as d } from "react/jsx-runtime";
|
|
8
|
+
import { VisuallyHidden as ce } from "@astryxdesign/core/VisuallyHidden";
|
|
9
|
+
//#region src/components/UnitGrid/UnitGrid.tsx
|
|
10
|
+
var le = 256, ue = Array.from({ length: 7 }, (e, t) => `var(--unit-grid-group-${t + 1})`), de = 330, fe = 340, f = 6, pe = 150, me = "6 4", he = .6, p = "var(--unit-grid-cell-empty)", m = "var(--color-background-card)", h = "var(--unit-grid-ink-dark)", g = "var(--unit-grid-ink-light)", _ = (...e) => e.filter(Boolean).join(" "), v = (e) => {
|
|
11
|
+
if (e === void 0) return 1;
|
|
12
|
+
let t = parseFloat(e);
|
|
13
|
+
return Number.isFinite(t) ? e.endsWith("%") ? t / 100 : t : 1;
|
|
14
|
+
}, y = (e) => {
|
|
15
|
+
let t = e.trim(), n = /^#?([0-9a-f]{6})$/i.exec(t);
|
|
16
|
+
if (n) {
|
|
17
|
+
let [e, t, r] = [
|
|
18
|
+
0,
|
|
19
|
+
2,
|
|
20
|
+
4
|
|
21
|
+
].map((e) => parseInt(n[1].slice(e, e + 2), 16));
|
|
22
|
+
return [
|
|
23
|
+
e,
|
|
24
|
+
t,
|
|
25
|
+
r,
|
|
26
|
+
1
|
|
27
|
+
];
|
|
28
|
+
}
|
|
29
|
+
let r = /^rgba?\(\s*([\d.]+)[,\s]+([\d.]+)[,\s]+([\d.]+)(?:\s*[,/]\s*([\d.%]+))?/.exec(t);
|
|
30
|
+
if (r) return [
|
|
31
|
+
parseFloat(r[1]),
|
|
32
|
+
parseFloat(r[2]),
|
|
33
|
+
parseFloat(r[3]),
|
|
34
|
+
v(r[4])
|
|
35
|
+
];
|
|
36
|
+
let i = /^color\(srgb\s+([\d.]+)\s+([\d.]+)\s+([\d.]+)(?:\s*\/\s*([\d.%]+))?/.exec(t);
|
|
37
|
+
return i ? [
|
|
38
|
+
parseFloat(i[1]) * 255,
|
|
39
|
+
parseFloat(i[2]) * 255,
|
|
40
|
+
parseFloat(i[3]) * 255,
|
|
41
|
+
v(i[4])
|
|
42
|
+
] : null;
|
|
43
|
+
}, b = (e) => {
|
|
44
|
+
let [t, n, r] = e.map((e) => {
|
|
45
|
+
let t = e / 255;
|
|
46
|
+
return t <= .03928 ? t / 12.92 : ((t + .055) / 1.055) ** 2.4;
|
|
47
|
+
});
|
|
48
|
+
return .2126 * t + .7152 * n + .0722 * r;
|
|
49
|
+
}, x = (e) => {
|
|
50
|
+
let t = e === void 0 ? null : y(e);
|
|
51
|
+
return t ? b([
|
|
52
|
+
t[0],
|
|
53
|
+
t[1],
|
|
54
|
+
t[2]
|
|
55
|
+
]) : null;
|
|
56
|
+
}, ge = (e, t) => (Math.max(e, t) + .05) / (Math.min(e, t) + .05), _e = (e, t) => {
|
|
57
|
+
(e.key === "Enter" || e.key === " ") && (e.key === " " && e.preventDefault(), t());
|
|
58
|
+
}, ve = (e, t) => {
|
|
59
|
+
let n = document.createElement("div");
|
|
60
|
+
n.setAttribute("aria-hidden", "true"), n.style.cssText = "position:absolute;visibility:hidden;pointer-events:none;width:0;height:0;overflow:hidden";
|
|
61
|
+
let r = t.map((e) => {
|
|
62
|
+
let t = document.createElement("div");
|
|
63
|
+
return t.style.color = e, n.appendChild(t), t;
|
|
64
|
+
});
|
|
65
|
+
e.appendChild(n);
|
|
66
|
+
let i = {};
|
|
67
|
+
return t.forEach((e, t) => {
|
|
68
|
+
i[e] = getComputedStyle(r[t]).color;
|
|
69
|
+
}), e.removeChild(n), i;
|
|
70
|
+
}, ye = (e) => {
|
|
71
|
+
let t = document.createElement("div");
|
|
72
|
+
t.setAttribute("aria-hidden", "true"), t.style.cssText = "position:fixed;top:0;left:0;width:0;height:0;visibility:hidden;pointer-events:none", e.appendChild(t);
|
|
73
|
+
let n = t.getBoundingClientRect();
|
|
74
|
+
return e.removeChild(t), {
|
|
75
|
+
left: n.left,
|
|
76
|
+
top: n.top
|
|
77
|
+
};
|
|
78
|
+
}, be = (e) => {
|
|
79
|
+
let n = getComputedStyle(e), r = (e, t) => {
|
|
80
|
+
let r = parseFloat(n.getPropertyValue(e));
|
|
81
|
+
return Number.isFinite(r) ? r : t;
|
|
82
|
+
};
|
|
83
|
+
return t(r("--spacing-4", 16), r("--spacing-0-5", 2), Math.min(r("--radius-element", 4), 4));
|
|
84
|
+
};
|
|
85
|
+
function S({ groups: v, layout: S = "serpentine", groupPalette: C, hueOverrides: xe, onHueOverrideChange: w, legendItems: T, renderGroupPopover: E, onClickGroup: D, emptyFallback: Se, maxUnitsPerGroup: Ce = le, columns: O, changeGroupColorLabel: we, colorSwatchLabel: k, className: Te, ...A }) {
|
|
86
|
+
let j = e(), M = C && C.length > 0 ? C : ue, N = s(null), P = s(null), [F, Ee] = c(0), I = v.filter((e) => e.units.length > 0), L = I.length > 0;
|
|
87
|
+
o(() => {
|
|
88
|
+
let e = P.current;
|
|
89
|
+
if (!e) return;
|
|
90
|
+
let t = new ResizeObserver((e) => {
|
|
91
|
+
Ee(e[0]?.contentRect.width ?? 0);
|
|
92
|
+
});
|
|
93
|
+
return t.observe(e), () => t.disconnect();
|
|
94
|
+
}, [L]);
|
|
95
|
+
let [R, De] = c(() => t()), [z, Oe] = c({}), B = Array.from(new Set(I.flatMap((e) => e.units.map((e) => e.color)))), ke = B.join(" "), Ae = ie(() => {
|
|
96
|
+
let e = N.current;
|
|
97
|
+
if (!e) return;
|
|
98
|
+
let t = be(e);
|
|
99
|
+
De((e) => e.cellPx === t.cellPx && e.gapPx === t.gapPx && e.radiusPx === t.radiusPx ? e : t);
|
|
100
|
+
let n = ve(e, [
|
|
101
|
+
...B,
|
|
102
|
+
p,
|
|
103
|
+
m,
|
|
104
|
+
h,
|
|
105
|
+
g
|
|
106
|
+
]);
|
|
107
|
+
Oe((e) => {
|
|
108
|
+
let t = Object.keys(n);
|
|
109
|
+
return t.length === Object.keys(e).length && t.every((t) => e[t] === n[t]) ? e : n;
|
|
110
|
+
});
|
|
111
|
+
}), [je, Me] = c(0);
|
|
112
|
+
o(() => {
|
|
113
|
+
let e = new MutationObserver(() => Me((e) => e + 1));
|
|
114
|
+
return e.observe(document.documentElement, {
|
|
115
|
+
attributes: !0,
|
|
116
|
+
attributeFilter: [
|
|
117
|
+
"data-theme",
|
|
118
|
+
"data-astryx-theme",
|
|
119
|
+
"class",
|
|
120
|
+
"style"
|
|
121
|
+
]
|
|
122
|
+
}), () => e.disconnect();
|
|
123
|
+
}, []), ae(() => {
|
|
124
|
+
Ae();
|
|
125
|
+
}, [ke, je]);
|
|
126
|
+
let [V, H] = c(null), U = s(null), W = () => {
|
|
127
|
+
U.current &&= (clearTimeout(U.current), null);
|
|
128
|
+
}, G = () => {
|
|
129
|
+
W(), U.current = setTimeout(() => {
|
|
130
|
+
H(null), K(null);
|
|
131
|
+
}, pe);
|
|
132
|
+
};
|
|
133
|
+
o(() => W, []);
|
|
134
|
+
let [Ne, K] = c(null), Pe = Ne !== null && Ne === V, [q, Fe] = c(null);
|
|
135
|
+
o(() => {
|
|
136
|
+
if (V !== null) {
|
|
137
|
+
let e = P.current, t = e?.getBoundingClientRect(), n = e ? ye(e) : null;
|
|
138
|
+
Fe(t && n ? {
|
|
139
|
+
left: t.left,
|
|
140
|
+
top: t.top,
|
|
141
|
+
originLeft: n.left,
|
|
142
|
+
originTop: n.top
|
|
143
|
+
} : null);
|
|
144
|
+
}
|
|
145
|
+
}, [V]);
|
|
146
|
+
let Ie = V !== null;
|
|
147
|
+
o(() => {
|
|
148
|
+
if (!Ie) return;
|
|
149
|
+
let e = () => {
|
|
150
|
+
H(null), K(null);
|
|
151
|
+
};
|
|
152
|
+
return window.addEventListener("scroll", e, !0), () => window.removeEventListener("scroll", e, !0);
|
|
153
|
+
}, [Ie]);
|
|
154
|
+
let J = new Map(I.map((e) => [e.key, e])), Le = new Map(I.map((e, t) => [e.key, t])), Re = (e) => ((xe?.[e] ?? Le.get(e) ?? 0) % M.length + M.length) % M.length, Y = (e) => M[Re(e)], ze = (e) => ((J.get(e)?.label || e).charAt(0) || "?").toUpperCase(), Be = x(z[h]) ?? 0, Ve = x(z[g]) ?? 1, He = (e) => {
|
|
155
|
+
let t = e ?? .8;
|
|
156
|
+
return ge(t, Be) >= ge(t, Ve) ? h : g;
|
|
157
|
+
}, Ue = (e) => He(x(z[e] ?? e)), We = (() => {
|
|
158
|
+
let e = y(z[p] ?? "");
|
|
159
|
+
if (!e) return null;
|
|
160
|
+
if (e[3] >= 1) return b([
|
|
161
|
+
e[0],
|
|
162
|
+
e[1],
|
|
163
|
+
e[2]
|
|
164
|
+
]);
|
|
165
|
+
let t = y(z[m] ?? "");
|
|
166
|
+
if (!t) return null;
|
|
167
|
+
let n = e[3];
|
|
168
|
+
return b([
|
|
169
|
+
e[0] * n + t[0] * (1 - n),
|
|
170
|
+
e[1] * n + t[1] * (1 - n),
|
|
171
|
+
e[2] * n + t[2] * (1 - n)
|
|
172
|
+
]);
|
|
173
|
+
})(), Ge = (e) => e.fraction !== void 0 && e.fraction < he ? He(We) : Ue(e.color), Ke = O ?? a(F, R), qe = te(I, Ce), X = ne(qe, S, Ke, R), { width: Je, height: Ye } = r(X, Ke, R), Xe = i(n(X, R)), Ze = ee(X), Z = V === null ? null : J.get(V) ?? null, Qe = V === null ? void 0 : Ze.get(V), Q = Qe === void 0 ? null : X[Qe] ?? null, $e = () => {
|
|
174
|
+
H(null), K(null);
|
|
175
|
+
}, et = (e) => e.target.getAttribute?.("data-group-key") ?? null, tt = L && (O !== void 0 || F > 0), nt = Z !== null && V !== null && Q !== null && q !== null && (E !== void 0 || w !== void 0), $ = () => K((e) => e === V ? null : V);
|
|
176
|
+
return /* @__PURE__ */ d(oe, {
|
|
177
|
+
ref: N,
|
|
178
|
+
gap: 3,
|
|
179
|
+
align: "stretch",
|
|
180
|
+
className: _("uic-unit-grid", Te),
|
|
181
|
+
...A,
|
|
182
|
+
children: [T && T.length > 0 && /* @__PURE__ */ u(l, {
|
|
183
|
+
gap: 3,
|
|
184
|
+
wrap: "wrap",
|
|
185
|
+
align: "center",
|
|
186
|
+
children: T.map((e, t) => /* @__PURE__ */ d(l, {
|
|
187
|
+
gap: 1,
|
|
188
|
+
align: "center",
|
|
189
|
+
children: [/* @__PURE__ */ u("svg", {
|
|
190
|
+
width: 10,
|
|
191
|
+
height: 10,
|
|
192
|
+
role: "img",
|
|
193
|
+
"aria-label": e.label,
|
|
194
|
+
children: /* @__PURE__ */ u("rect", {
|
|
195
|
+
width: 10,
|
|
196
|
+
height: 10,
|
|
197
|
+
rx: 2,
|
|
198
|
+
style: { fill: e.color }
|
|
199
|
+
})
|
|
200
|
+
}), /* @__PURE__ */ u(se, {
|
|
201
|
+
size: "sm",
|
|
202
|
+
color: "secondary",
|
|
203
|
+
children: e.label
|
|
204
|
+
})]
|
|
205
|
+
}, t))
|
|
206
|
+
}), L ? /* @__PURE__ */ d("div", {
|
|
207
|
+
ref: P,
|
|
208
|
+
className: "uic-unit-grid__wrapper",
|
|
209
|
+
children: [
|
|
210
|
+
tt && /* @__PURE__ */ d("svg", {
|
|
211
|
+
width: Je,
|
|
212
|
+
height: Ye,
|
|
213
|
+
role: "img",
|
|
214
|
+
"aria-label": A["aria-label"] ?? j("uic.UnitGrid.label"),
|
|
215
|
+
className: _("uic-unit-grid__svg", D !== void 0 && "uic-unit-grid__svg--clickable"),
|
|
216
|
+
onMouseMove: (e) => {
|
|
217
|
+
let t = et(e);
|
|
218
|
+
t === null ? G() : (W(), H(t));
|
|
219
|
+
},
|
|
220
|
+
onMouseLeave: G,
|
|
221
|
+
onClick: (e) => {
|
|
222
|
+
let t = et(e);
|
|
223
|
+
t !== null && D && D(t);
|
|
224
|
+
},
|
|
225
|
+
children: [Xe.map((e) => {
|
|
226
|
+
let t = e[0].groupKey, n = J.get(t), r = Y(t), i = V === t;
|
|
227
|
+
return /* @__PURE__ */ u("path", {
|
|
228
|
+
"data-group-key": t,
|
|
229
|
+
d: re(e, R),
|
|
230
|
+
style: {
|
|
231
|
+
fill: r,
|
|
232
|
+
stroke: r
|
|
233
|
+
},
|
|
234
|
+
fillOpacity: i ? .32 : .15,
|
|
235
|
+
strokeWidth: i ? 2.5 : 1.5,
|
|
236
|
+
strokeDasharray: n?.plateVariant === "dashed" ? me : void 0
|
|
237
|
+
}, t);
|
|
238
|
+
}), X.map((e, t) => {
|
|
239
|
+
let n = e.unit.fraction !== void 0 && e.unit.fraction < 1, r = V === e.groupKey;
|
|
240
|
+
return /* @__PURE__ */ d("g", { children: [
|
|
241
|
+
/* @__PURE__ */ u("rect", {
|
|
242
|
+
className: "uic-unit-grid__cell",
|
|
243
|
+
"data-group-key": e.groupKey,
|
|
244
|
+
x: e.px,
|
|
245
|
+
y: e.py,
|
|
246
|
+
width: R.cellPx,
|
|
247
|
+
height: R.cellPx,
|
|
248
|
+
rx: R.radiusPx,
|
|
249
|
+
style: {
|
|
250
|
+
fill: n ? p : e.unit.color,
|
|
251
|
+
stroke: r ? Y(e.groupKey) : "var(--unit-grid-cell-stroke)"
|
|
252
|
+
},
|
|
253
|
+
strokeWidth: r ? 1 : .5
|
|
254
|
+
}),
|
|
255
|
+
n && /* @__PURE__ */ u("rect", {
|
|
256
|
+
"data-group-key": e.groupKey,
|
|
257
|
+
x: e.px,
|
|
258
|
+
y: e.py + R.cellPx * (1 - (e.unit.fraction ?? 0)),
|
|
259
|
+
width: R.cellPx,
|
|
260
|
+
height: R.cellPx * (e.unit.fraction ?? 0),
|
|
261
|
+
rx: 1,
|
|
262
|
+
style: { fill: e.unit.color }
|
|
263
|
+
}),
|
|
264
|
+
Ze.get(e.groupKey) === t && /* @__PURE__ */ u("text", {
|
|
265
|
+
x: e.px + R.cellPx / 2,
|
|
266
|
+
y: e.py + R.cellPx / 2,
|
|
267
|
+
textAnchor: "middle",
|
|
268
|
+
dominantBaseline: "central",
|
|
269
|
+
fontSize: R.cellPx * .62,
|
|
270
|
+
fontWeight: 700,
|
|
271
|
+
pointerEvents: "none",
|
|
272
|
+
style: { fill: Ge(e.unit) },
|
|
273
|
+
children: ze(e.groupKey)
|
|
274
|
+
})
|
|
275
|
+
] }, t);
|
|
276
|
+
})]
|
|
277
|
+
}),
|
|
278
|
+
/* @__PURE__ */ u(ce, {
|
|
279
|
+
as: "ul",
|
|
280
|
+
children: I.map((e) => /* @__PURE__ */ u("li", { children: e.label || e.key }, e.key))
|
|
281
|
+
}),
|
|
282
|
+
nt && /* @__PURE__ */ u("div", {
|
|
283
|
+
className: "uic-unit-grid__popover",
|
|
284
|
+
onMouseEnter: W,
|
|
285
|
+
onMouseLeave: G,
|
|
286
|
+
style: {
|
|
287
|
+
borderColor: Y(V),
|
|
288
|
+
...(() => {
|
|
289
|
+
let e = q.left + Math.max(0, Math.min(Q.px - R.platePadX, Math.max(0, F - de))), t = q.top + Q.py, n = t >= fe, r = n ? t - R.platePadY - f : t + R.cellPx + R.platePadY + f, i = e - q.originLeft, a = r - q.originTop;
|
|
290
|
+
return n ? {
|
|
291
|
+
left: i,
|
|
292
|
+
top: a,
|
|
293
|
+
transform: "translateY(-100%)"
|
|
294
|
+
} : {
|
|
295
|
+
left: i,
|
|
296
|
+
top: a
|
|
297
|
+
};
|
|
298
|
+
})()
|
|
299
|
+
},
|
|
300
|
+
children: /* @__PURE__ */ d(oe, {
|
|
301
|
+
gap: 1.5,
|
|
302
|
+
align: "stretch",
|
|
303
|
+
children: [
|
|
304
|
+
Pe && w && /* @__PURE__ */ u(l, {
|
|
305
|
+
gap: 1,
|
|
306
|
+
align: "center",
|
|
307
|
+
children: M.map((e, t) => {
|
|
308
|
+
let n = () => {
|
|
309
|
+
w(V, t), K(null);
|
|
310
|
+
}, r = Re(V) === t;
|
|
311
|
+
return /* @__PURE__ */ d("svg", {
|
|
312
|
+
width: 20,
|
|
313
|
+
height: 20,
|
|
314
|
+
role: "button",
|
|
315
|
+
tabIndex: 0,
|
|
316
|
+
"aria-label": k ? k(t + 1) : j("uic.UnitGrid.useColor", { index: t + 1 }),
|
|
317
|
+
className: "uic-unit-grid__swatch",
|
|
318
|
+
onClick: n,
|
|
319
|
+
onKeyDown: (e) => _e(e, n),
|
|
320
|
+
children: [/* @__PURE__ */ u("rect", {
|
|
321
|
+
x: 1,
|
|
322
|
+
y: 1,
|
|
323
|
+
width: 18,
|
|
324
|
+
height: 18,
|
|
325
|
+
rx: 5,
|
|
326
|
+
style: {
|
|
327
|
+
fill: e,
|
|
328
|
+
stroke: e
|
|
329
|
+
},
|
|
330
|
+
fillOpacity: .35,
|
|
331
|
+
strokeWidth: r ? 2 : 1
|
|
332
|
+
}), r && /* @__PURE__ */ u("text", {
|
|
333
|
+
x: 10,
|
|
334
|
+
y: 10.5,
|
|
335
|
+
textAnchor: "middle",
|
|
336
|
+
dominantBaseline: "central",
|
|
337
|
+
fontSize: 11,
|
|
338
|
+
fontWeight: 700,
|
|
339
|
+
pointerEvents: "none",
|
|
340
|
+
style: { fill: e },
|
|
341
|
+
children: "✓"
|
|
342
|
+
})]
|
|
343
|
+
}, t);
|
|
344
|
+
})
|
|
345
|
+
}),
|
|
346
|
+
w && /* @__PURE__ */ d(l, {
|
|
347
|
+
gap: 1.5,
|
|
348
|
+
align: "center",
|
|
349
|
+
children: [/* @__PURE__ */ u("svg", {
|
|
350
|
+
width: 16,
|
|
351
|
+
height: 16,
|
|
352
|
+
role: "button",
|
|
353
|
+
tabIndex: 0,
|
|
354
|
+
"aria-label": we ?? j("uic.UnitGrid.changeGroupColor"),
|
|
355
|
+
className: "uic-unit-grid__swatch",
|
|
356
|
+
onClick: $,
|
|
357
|
+
onKeyDown: (e) => _e(e, $),
|
|
358
|
+
children: /* @__PURE__ */ u("rect", {
|
|
359
|
+
x: 1,
|
|
360
|
+
y: 1,
|
|
361
|
+
width: 14,
|
|
362
|
+
height: 14,
|
|
363
|
+
rx: 4,
|
|
364
|
+
style: {
|
|
365
|
+
fill: Y(V),
|
|
366
|
+
stroke: Y(V)
|
|
367
|
+
},
|
|
368
|
+
fillOpacity: .15,
|
|
369
|
+
strokeWidth: 1.5
|
|
370
|
+
})
|
|
371
|
+
}), /* @__PURE__ */ u(se, {
|
|
372
|
+
size: "sm",
|
|
373
|
+
weight: "semibold",
|
|
374
|
+
children: Z.label || Z.key
|
|
375
|
+
})]
|
|
376
|
+
}),
|
|
377
|
+
E?.(Z, {
|
|
378
|
+
hue: Y(V),
|
|
379
|
+
closePopover: $e
|
|
380
|
+
})
|
|
381
|
+
]
|
|
382
|
+
})
|
|
383
|
+
})
|
|
384
|
+
]
|
|
385
|
+
}) : Se ?? null]
|
|
386
|
+
});
|
|
387
|
+
}
|
|
388
|
+
S.displayName = "UnitGrid";
|
|
389
|
+
//#endregion
|
|
390
|
+
export { S as UnitGrid };
|
|
391
|
+
|
|
392
|
+
//# sourceMappingURL=UnitGrid2.js.map
|
|
393
|
+
import "../../assets/components/UnitGrid/UnitGrid.css";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UnitGrid2.js","names":[],"sources":["../../../src/components/UnitGrid/UnitGrid.tsx"],"sourcesContent":["/**\n * UnitGrid\n *\n * Groups of unit squares packed onto one shared lattice (serpentine or\n * word-wrap), each group merged into a tinted rounded plate, with a hover card\n * anchored to the group, an optional palette picker in it, and a legend row.\n * It knows nothing about what a unit is: callers pass the resolved colour of\n * every unit, the legend entries and the hover card body.\n *\n * Unit colours may be `var()` or `color-mix()` strings. The component resolves\n * them against its own cascade to pick, per group initial, the ink with the\n * better WCAG contrast.\n *\n * @example\n * <UnitGrid\n * aria-label=\"GPU allocation\"\n * groups={[{ key: \"a\", label: \"Alpha\", units: [{ color: \"var(--color-icon-blue)\" }] }]}\n * />\n */\nimport {\n useEffect,\n useEffectEvent,\n useLayoutEffect,\n useRef,\n useState,\n type HTMLAttributes,\n type KeyboardEvent,\n type MouseEvent,\n type ReactNode,\n} from \"react\";\nimport { HStack, VStack } from \"@astryxdesign/core/Stack\";\nimport { Text } from \"@astryxdesign/core/Text\";\nimport { VisuallyHidden } from \"@astryxdesign/core/VisuallyHidden\";\n\nimport { useUicTranslator } from \"../../i18n/useUicTranslator\";\nimport {\n deriveMetrics,\n extractSegments,\n gridSize,\n groupConsecutiveSegments,\n latticeColsForWidth,\n letterCellIndices,\n packGroups,\n placeCells,\n platePath,\n type UnitGridLayout,\n type UnitGridMetrics,\n} from \"./UnitGrid.geometry\";\nimport \"./UnitGrid.css\";\n\nexport type { UnitGridLayout } from \"./UnitGrid.geometry\";\n\nconst DEFAULT_MAX_UNITS_PER_GROUP = 256;\n/** The seven hues declared in UnitGrid.css. */\nconst DEFAULT_PALETTE = Array.from(\n { length: 7 },\n (_, i) => `var(--unit-grid-group-${i + 1})`,\n);\n// Hover card geometry: clamp width, flip threshold, anchor offset, and the\n// hide delay that lets the pointer travel onto the card.\nconst POPOVER_CLAMP_WIDTH = 330;\nconst POPOVER_FLIP_MIN_TOP = 340;\nconst POPOVER_OFFSET = 6;\nconst POPOVER_HIDE_DELAY_MS = 150;\n// Legible at both plate stroke widths (1.5 at rest, 2.5 on hover).\nconst PLATE_DASH_PATTERN = \"6 4\";\n// The initial is vertically centred and fills grow bottom-up, so below this\n// fraction the initial sits on the empty underlay: pick ink against that.\nconst LETTER_ON_EMPTY_MAX_FRACTION = 0.6;\nconst EMPTY_FILL_COLOR = \"var(--unit-grid-cell-empty)\";\n// The empty fill is translucent; composite it over this before judging it.\nconst EMPTY_FILL_BACKDROP = \"var(--color-background-card)\";\nconst INK_DARK = \"var(--unit-grid-ink-dark)\";\nconst INK_LIGHT = \"var(--unit-grid-ink-light)\";\n\nconst cx = (...names: Array<string | false | undefined>) =>\n names.filter(Boolean).join(\" \");\n\nconst parseAlpha = (raw: string | undefined): number => {\n if (raw === undefined) return 1;\n const v = parseFloat(raw);\n if (!Number.isFinite(v)) return 1;\n return raw.endsWith(\"%\") ? v / 100 : v;\n};\n\n/** `[r, g, b (0..255), alpha (0..1)]` of `#rrggbb`, `rgb()` or `color(srgb)`. */\nconst parseColorChannels = (color: string): [number, number, number, number] | null => {\n const trimmed = color.trim();\n const hex = /^#?([0-9a-f]{6})$/i.exec(trimmed);\n if (hex) {\n const [r, g, b] = [0, 2, 4].map((i) => parseInt(hex[1]!.slice(i, i + 2), 16));\n return [r!, g!, b!, 1];\n }\n const rgb =\n /^rgba?\\(\\s*([\\d.]+)[,\\s]+([\\d.]+)[,\\s]+([\\d.]+)(?:\\s*[,/]\\s*([\\d.%]+))?/.exec(\n trimmed,\n );\n if (rgb) {\n return [\n parseFloat(rgb[1]!),\n parseFloat(rgb[2]!),\n parseFloat(rgb[3]!),\n parseAlpha(rgb[4]),\n ];\n }\n // color-mix() and color() fills serialize as `color(srgb r g b / a)`, 0..1.\n const srgb =\n /^color\\(srgb\\s+([\\d.]+)\\s+([\\d.]+)\\s+([\\d.]+)(?:\\s*\\/\\s*([\\d.%]+))?/.exec(trimmed);\n if (srgb) {\n return [\n parseFloat(srgb[1]!) * 255,\n parseFloat(srgb[2]!) * 255,\n parseFloat(srgb[3]!) * 255,\n parseAlpha(srgb[4]),\n ];\n }\n return null;\n};\n\nconst luminanceOfChannels = (channels: [number, number, number]): number => {\n const [r, g, b] = channels.map((c) => {\n const v = c / 255;\n return v <= 0.03928 ? v / 12.92 : ((v + 0.055) / 1.055) ** 2.4;\n });\n return 0.2126 * r! + 0.7152 * g! + 0.0722 * b!;\n};\n\n/** WCAG relative luminance, alpha ignored. */\nconst relativeLuminance = (color: string | undefined): number | null => {\n const channels = color === undefined ? null : parseColorChannels(color);\n return channels ? luminanceOfChannels([channels[0], channels[1], channels[2]]) : null;\n};\n\nconst contrastRatio = (a: number, b: number): number =>\n (Math.max(a, b) + 0.05) / (Math.min(a, b) + 0.05);\n\n/** Keyboard activation for the SVG `role=\"button\"` picker controls. */\nconst activateOnKey = (e: KeyboardEvent<SVGSVGElement>, action: () => void): void => {\n if (e.key === \"Enter\" || e.key === \" \") {\n // Space must not scroll the page while it activates the control.\n if (e.key === \" \") e.preventDefault();\n action();\n }\n};\n\n/**\n * Resolve CSS colour strings, `var()` included, to computed colours through\n * hidden probes under `host`, so they see the component's own cascade.\n */\nconst resolveColorsInDOM = (\n host: HTMLElement,\n colors: readonly string[],\n): Record<string, string> => {\n const probeHost = document.createElement(\"div\");\n probeHost.setAttribute(\"aria-hidden\", \"true\");\n probeHost.style.cssText =\n \"position:absolute;visibility:hidden;pointer-events:none;width:0;height:0;overflow:hidden\";\n const probes = colors.map((color) => {\n const el = document.createElement(\"div\");\n el.style.color = color;\n probeHost.appendChild(el);\n return el;\n });\n host.appendChild(probeHost);\n const out: Record<string, string> = {};\n colors.forEach((color, i) => {\n out[color] = getComputedStyle(probes[i]!).color;\n });\n host.removeChild(probeHost);\n return out;\n};\n\n/**\n * Origin of the hover card's `position: fixed` containing block, in viewport\n * coordinates. A transformed ancestor (a drawer panel is one) takes over from\n * the viewport, so measured viewport rects are rebased onto it. (0, 0) when\n * the viewport is the origin.\n */\nconst fixedOriginIn = (host: HTMLElement): { left: number; top: number } => {\n const probe = document.createElement(\"div\");\n probe.setAttribute(\"aria-hidden\", \"true\");\n probe.style.cssText =\n \"position:fixed;top:0;left:0;width:0;height:0;visibility:hidden;pointer-events:none\";\n host.appendChild(probe);\n const r = probe.getBoundingClientRect();\n host.removeChild(probe);\n return { left: r.left, top: r.top };\n};\n\nconst readMetricsFromDOM = (host: HTMLElement): UnitGridMetrics => {\n const cs = getComputedStyle(host);\n const len = (name: string, fallback: number): number => {\n const v = parseFloat(cs.getPropertyValue(name));\n return Number.isFinite(v) ? v : fallback;\n };\n return deriveMetrics(\n len(\"--spacing-4\", 16),\n len(\"--spacing-0-5\", 2),\n Math.min(len(\"--radius-element\", 4), 4),\n );\n};\n\nexport interface UnitGridUnit {\n /** Fill colour of this unit's cell. */\n color: string;\n /** 0..1 partial fill; a fractional cell fills bottom-up. */\n fraction?: number;\n}\n\nexport interface UnitGridGroup {\n key: string;\n /** The group initial and the hover card title. @default key */\n label?: string;\n units: UnitGridUnit[];\n /** Plate outline; `dashed` marks a group as tentative. @default 'solid' */\n plateVariant?: \"solid\" | \"dashed\";\n}\n\nexport interface UnitGridLegendItem {\n color: string;\n label: string;\n}\n\nexport interface UnitGridProps extends Omit<\n HTMLAttributes<HTMLDivElement>,\n \"children\"\n> {\n groups: UnitGridGroup[];\n /** How groups flow along the lattice. @default 'serpentine' */\n layout?: UnitGridLayout;\n /** Group hues, cycled in flow order. @default the seven --unit-grid-group-N hues */\n groupPalette?: string[];\n /** Controlled palette-index overrides, keyed by group key. */\n hueOverrides?: Record<string, number>;\n /** Shows the palette picker in the hover card. */\n onHueOverrideChange?: (key: string, paletteIndex: number) => void;\n legendItems?: UnitGridLegendItem[];\n /** The hover card body for a group. */\n renderGroupPopover?: (\n group: UnitGridGroup,\n context: { hue: string; closePopover: () => void },\n ) => ReactNode;\n onClickGroup?: (key: string) => void;\n /** Rendered instead of the grid when no group has a unit. */\n emptyFallback?: ReactNode;\n /** Units drawn per group at most. @default 256 */\n maxUnitsPerGroup?: number;\n /**\n * Fixed lattice column count. Without it the count follows the measured\n * width (ResizeObserver); pass it for fixed layouts and in jsdom.\n */\n columns?: number;\n /** @default the catalog's uic.UnitGrid.changeGroupColor (\"Change group color\") */\n changeGroupColorLabel?: string;\n /** @default the catalog's uic.UnitGrid.useColor (\"Use color {index}\") */\n colorSwatchLabel?: (index: number) => string;\n}\n\nexport function UnitGrid({\n groups,\n layout = \"serpentine\",\n groupPalette,\n hueOverrides,\n onHueOverrideChange,\n legendItems,\n renderGroupPopover,\n onClickGroup,\n emptyFallback,\n maxUnitsPerGroup = DEFAULT_MAX_UNITS_PER_GROUP,\n columns,\n changeGroupColorLabel,\n colorSwatchLabel,\n className,\n ...divProps\n}: UnitGridProps) {\n const t = useUicTranslator();\n const palette =\n groupPalette && groupPalette.length > 0 ? groupPalette : DEFAULT_PALETTE;\n\n const rootRef = useRef<HTMLDivElement | null>(null);\n const wrapperRef = useRef<HTMLDivElement | null>(null);\n const [wrapperWidth, setWrapperWidth] = useState(0);\n\n const visibleGroups = groups.filter((g) => g.units.length > 0);\n const hasGroups = visibleGroups.length > 0;\n\n useEffect(() => {\n const el = wrapperRef.current;\n if (!el) return;\n const ro = new ResizeObserver((entries) => {\n setWrapperWidth(entries[0]?.contentRect.width ?? 0);\n });\n ro.observe(el);\n return () => ro.disconnect();\n }, [hasGroups]);\n\n // Concrete colours (for the ink decision) and token-derived metrics,\n // resolved against the live cascade. Paint uses the raw strings, so var()\n // fills keep following the theme; only the ink decision is a snapshot.\n const [metrics, setMetrics] = useState<UnitGridMetrics>(() => deriveMetrics());\n const [resolvedColors, setResolvedColors] = useState<Record<string, string>>({});\n const distinctColors = Array.from(\n new Set(visibleGroups.flatMap((g) => g.units.map((u) => u.color))),\n );\n const colorsKey = distinctColors.join(\" \");\n const refreshResolved = useEffectEvent(() => {\n const host = rootRef.current;\n if (!host) return;\n const nextMetrics = readMetricsFromDOM(host);\n setMetrics((prev) =>\n prev.cellPx === nextMetrics.cellPx &&\n prev.gapPx === nextMetrics.gapPx &&\n prev.radiusPx === nextMetrics.radiusPx\n ? prev\n : nextMetrics,\n );\n const next = resolveColorsInDOM(host, [\n ...distinctColors,\n EMPTY_FILL_COLOR,\n EMPTY_FILL_BACKDROP,\n INK_DARK,\n INK_LIGHT,\n ]);\n setResolvedColors((prev) => {\n const keys = Object.keys(next);\n const same =\n keys.length === Object.keys(prev).length &&\n keys.every((k) => prev[k] === next[k]);\n return same ? prev : next;\n });\n });\n // A theme flip changes what the same var() strings resolve to, so the ink\n // snapshot re-probes when the root's theme attributes change.\n const [themeEpoch, setThemeEpoch] = useState(0);\n useEffect(() => {\n const observer = new MutationObserver(() => setThemeEpoch((e) => e + 1));\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: [\"data-theme\", \"data-astryx-theme\", \"class\", \"style\"],\n });\n return () => observer.disconnect();\n }, []);\n useLayoutEffect(() => {\n refreshResolved();\n // refreshResolved is an effect event: it is never a dependency.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [colorsKey, themeEpoch]);\n\n // Hover card: hiding is delayed so the pointer can travel onto it.\n const [hoverKey, setHoverKey] = useState<string | null>(null);\n const hideTimer = useRef<ReturnType<typeof setTimeout> | null>(null);\n const cancelHide = () => {\n if (hideTimer.current) {\n clearTimeout(hideTimer.current);\n hideTimer.current = null;\n }\n };\n const scheduleHide = () => {\n cancelHide();\n hideTimer.current = setTimeout(() => {\n setHoverKey(null);\n setPickerFor(null);\n }, POPOVER_HIDE_DELAY_MS);\n };\n useEffect(() => cancelHide, []);\n\n // The group the picker was opened for; hovering another group closes it.\n const [pickerFor, setPickerFor] = useState<string | null>(null);\n const pickerOpen = pickerFor !== null && pickerFor === hoverKey;\n\n const [wrapperRect, setWrapperRect] = useState<{\n left: number;\n top: number;\n originLeft: number;\n originTop: number;\n } | null>(null);\n useEffect(() => {\n if (hoverKey !== null) {\n const host = wrapperRef.current;\n const r = host?.getBoundingClientRect();\n const origin = host ? fixedOriginIn(host) : null;\n setWrapperRect(\n r && origin\n ? { left: r.left, top: r.top, originLeft: origin.left, originTop: origin.top }\n : null,\n );\n }\n }, [hoverKey]);\n\n // The card is fixed, so any scroll moves its anchor: dismiss it.\n const hoverOpen = hoverKey !== null;\n useEffect(() => {\n if (!hoverOpen) return;\n const onScroll = () => {\n setHoverKey(null);\n setPickerFor(null);\n };\n window.addEventListener(\"scroll\", onScroll, true);\n return () => window.removeEventListener(\"scroll\", onScroll, true);\n }, [hoverOpen]);\n\n const groupByKey = new Map(visibleGroups.map((g) => [g.key, g]));\n const flowIndexByKey = new Map(visibleGroups.map((g, i) => [g.key, i]));\n\n // Default hues cycle the palette in flow order, so neighbours differ;\n // overrides are keyed by the group's stable key.\n const hueIndexFor = (key: string): number => {\n const base = hueOverrides?.[key] ?? flowIndexByKey.get(key) ?? 0;\n return ((base % palette.length) + palette.length) % palette.length;\n };\n const hueFor = (key: string): string => palette[hueIndexFor(key)]!;\n\n const letterFor = (key: string): string => {\n const group = groupByKey.get(key);\n return ((group?.label || key).charAt(0) || \"?\").toUpperCase();\n };\n\n const inkDarkLuminance = relativeLuminance(resolvedColors[INK_DARK]) ?? 0;\n const inkLightLuminance = relativeLuminance(resolvedColors[INK_LIGHT]) ?? 1;\n const inkForLuminance = (fillLuminance: number | null): string => {\n // An unresolved fill (first paint, jsdom) is taken as light.\n const lum = fillLuminance ?? 0.8;\n return contrastRatio(lum, inkDarkLuminance) >= contrastRatio(lum, inkLightLuminance)\n ? INK_DARK\n : INK_LIGHT;\n };\n\n const inkFor = (color: string): string =>\n inkForLuminance(relativeLuminance(resolvedColors[color] ?? color));\n\n const emptyFillLuminance = ((): number | null => {\n const fg = parseColorChannels(resolvedColors[EMPTY_FILL_COLOR] ?? \"\");\n if (!fg) return null;\n if (fg[3] >= 1) return luminanceOfChannels([fg[0], fg[1], fg[2]]);\n const bg = parseColorChannels(resolvedColors[EMPTY_FILL_BACKDROP] ?? \"\");\n if (!bg) return null;\n const a = fg[3];\n return luminanceOfChannels([\n fg[0] * a + bg[0] * (1 - a),\n fg[1] * a + bg[1] * (1 - a),\n fg[2] * a + bg[2] * (1 - a),\n ]);\n })();\n\n const letterInkFor = (unit: UnitGridUnit): string =>\n unit.fraction !== undefined && unit.fraction < LETTER_ON_EMPTY_MAX_FRACTION\n ? inkForLuminance(emptyFillLuminance)\n : inkFor(unit.color);\n\n const latticeCols = columns ?? latticeColsForWidth(wrapperWidth, metrics);\n const packed = packGroups(visibleGroups, maxUnitsPerGroup);\n const placed = placeCells(packed, layout, latticeCols, metrics);\n const { width: svgWidth, height: svgHeight } = gridSize(placed, latticeCols, metrics);\n const segGroups = groupConsecutiveSegments(extractSegments(placed, metrics));\n const letterIdx = letterCellIndices(placed);\n\n const hoveredGroup = hoverKey === null ? null : (groupByKey.get(hoverKey) ?? null);\n const hoverAnchorIdx = hoverKey === null ? undefined : letterIdx.get(hoverKey);\n const hoverAnchor =\n hoverAnchorIdx === undefined ? null : (placed[hoverAnchorIdx] ?? null);\n const closePopover = () => {\n setHoverKey(null);\n setPickerFor(null);\n };\n\n const groupKeyFromEvent = (e: MouseEvent): string | null =>\n (e.target as Element).getAttribute?.(\"data-group-key\") ?? null;\n\n const showGrid = hasGroups && (columns !== undefined || wrapperWidth > 0);\n const showPopover =\n hoveredGroup !== null &&\n hoverKey !== null &&\n hoverAnchor !== null &&\n wrapperRect !== null &&\n (renderGroupPopover !== undefined || onHueOverrideChange !== undefined);\n\n const togglePicker = () => setPickerFor((v) => (v === hoverKey ? null : hoverKey));\n\n return (\n <VStack\n ref={rootRef}\n gap={3}\n align=\"stretch\"\n className={cx(\"uic-unit-grid\", className)}\n {...divProps}\n >\n {legendItems && legendItems.length > 0 && (\n <HStack gap={3} wrap=\"wrap\" align=\"center\">\n {legendItems.map((item, i) => (\n <HStack key={i} gap={1} align=\"center\">\n <svg width={10} height={10} role=\"img\" aria-label={item.label}>\n <rect width={10} height={10} rx={2} style={{ fill: item.color }} />\n </svg>\n <Text size=\"sm\" color=\"secondary\">\n {item.label}\n </Text>\n </HStack>\n ))}\n </HStack>\n )}\n {!hasGroups ? (\n (emptyFallback ?? null)\n ) : (\n <div ref={wrapperRef} className=\"uic-unit-grid__wrapper\">\n {showGrid && (\n <svg\n width={svgWidth}\n height={svgHeight}\n role=\"img\"\n aria-label={divProps[\"aria-label\"] ?? t(\"uic.UnitGrid.label\")}\n className={cx(\n \"uic-unit-grid__svg\",\n onClickGroup !== undefined && \"uic-unit-grid__svg--clickable\",\n )}\n onMouseMove={(e) => {\n const key = groupKeyFromEvent(e);\n if (key === null) {\n scheduleHide();\n } else {\n cancelHide();\n setHoverKey(key);\n }\n }}\n onMouseLeave={scheduleHide}\n onClick={(e) => {\n const key = groupKeyFromEvent(e);\n if (key !== null && onClickGroup) onClickGroup(key);\n }}\n >\n {segGroups.map((segs) => {\n const key = segs[0]!.groupKey;\n const group = groupByKey.get(key);\n const hue = hueFor(key);\n const hovered = hoverKey === key;\n // Hover strengthens the hovered group's tint and border\n // rather than dimming the others.\n return (\n <path\n key={key}\n data-group-key={key}\n d={platePath(segs, metrics)}\n style={{ fill: hue, stroke: hue }}\n fillOpacity={hovered ? 0.32 : 0.15}\n strokeWidth={hovered ? 2.5 : 1.5}\n strokeDasharray={\n group?.plateVariant === \"dashed\" ? PLATE_DASH_PATTERN : undefined\n }\n />\n );\n })}\n {placed.map((cell, i) => {\n const isPartial =\n cell.unit.fraction !== undefined && cell.unit.fraction < 1;\n const cellHovered = hoverKey === cell.groupKey;\n return (\n <g key={i}>\n <rect\n className=\"uic-unit-grid__cell\"\n data-group-key={cell.groupKey}\n x={cell.px}\n y={cell.py}\n width={metrics.cellPx}\n height={metrics.cellPx}\n rx={metrics.radiusPx}\n style={{\n fill: isPartial ? EMPTY_FILL_COLOR : cell.unit.color,\n stroke: cellHovered\n ? hueFor(cell.groupKey)\n : \"var(--unit-grid-cell-stroke)\",\n }}\n strokeWidth={cellHovered ? 1 : 0.5}\n />\n {isPartial && (\n <rect\n data-group-key={cell.groupKey}\n x={cell.px}\n y={cell.py + metrics.cellPx * (1 - (cell.unit.fraction ?? 0))}\n width={metrics.cellPx}\n height={metrics.cellPx * (cell.unit.fraction ?? 0)}\n rx={1}\n style={{ fill: cell.unit.color }}\n />\n )}\n {letterIdx.get(cell.groupKey) === i && (\n <text\n x={cell.px + metrics.cellPx / 2}\n y={cell.py + metrics.cellPx / 2}\n textAnchor=\"middle\"\n dominantBaseline=\"central\"\n fontSize={metrics.cellPx * 0.62}\n fontWeight={700}\n pointerEvents=\"none\"\n style={{ fill: letterInkFor(cell.unit) }}\n >\n {letterFor(cell.groupKey)}\n </text>\n )}\n </g>\n );\n })}\n </svg>\n )}\n {/* role=\"img\" flattens the svg for assistive technology, so the\n groups are listed here as well. */}\n <VisuallyHidden as=\"ul\">\n {visibleGroups.map((g) => (\n <li key={g.key}>{g.label || g.key}</li>\n ))}\n </VisuallyHidden>\n {showPopover && (\n <div\n className=\"uic-unit-grid__popover\"\n onMouseEnter={cancelHide}\n onMouseLeave={scheduleHide}\n style={{\n borderColor: hueFor(hoverKey),\n ...(() => {\n const viewportLeft =\n wrapperRect.left +\n Math.max(\n 0,\n Math.min(\n hoverAnchor.px - metrics.platePadX,\n Math.max(0, wrapperWidth - POPOVER_CLAMP_WIDTH),\n ),\n );\n const cellTop = wrapperRect.top + hoverAnchor.py;\n // Above the cell when the viewport has room, else below;\n // decided in viewport space, then rebased onto the block\n // the offsets resolve against.\n const flipAbove = cellTop >= POPOVER_FLIP_MIN_TOP;\n const viewportTop = flipAbove\n ? cellTop - metrics.platePadY - POPOVER_OFFSET\n : cellTop + metrics.cellPx + metrics.platePadY + POPOVER_OFFSET;\n const left = viewportLeft - wrapperRect.originLeft;\n const top = viewportTop - wrapperRect.originTop;\n return flipAbove\n ? { left, top, transform: \"translateY(-100%)\" }\n : { left, top };\n })(),\n }}\n >\n <VStack gap={1.5} align=\"stretch\">\n {pickerOpen && onHueOverrideChange && (\n <HStack gap={1} align=\"center\">\n {palette.map((hue, pi) => {\n const pickThis = () => {\n onHueOverrideChange(hoverKey, pi);\n setPickerFor(null);\n };\n const selected = hueIndexFor(hoverKey) === pi;\n return (\n <svg\n key={pi}\n width={20}\n height={20}\n role=\"button\"\n tabIndex={0}\n aria-label={\n colorSwatchLabel\n ? colorSwatchLabel(pi + 1)\n : t(\"uic.UnitGrid.useColor\", { index: pi + 1 })\n }\n className=\"uic-unit-grid__swatch\"\n onClick={pickThis}\n onKeyDown={(e) => activateOnKey(e, pickThis)}\n >\n <rect\n x={1}\n y={1}\n width={18}\n height={18}\n rx={5}\n style={{ fill: hue, stroke: hue }}\n fillOpacity={0.35}\n strokeWidth={selected ? 2 : 1}\n />\n {selected && (\n <text\n x={10}\n y={10.5}\n textAnchor=\"middle\"\n dominantBaseline=\"central\"\n fontSize={11}\n fontWeight={700}\n pointerEvents=\"none\"\n style={{ fill: hue }}\n >\n ✓\n </text>\n )}\n </svg>\n );\n })}\n </HStack>\n )}\n {onHueOverrideChange && (\n <HStack gap={1.5} align=\"center\">\n <svg\n width={16}\n height={16}\n role=\"button\"\n tabIndex={0}\n aria-label={\n changeGroupColorLabel ?? t(\"uic.UnitGrid.changeGroupColor\")\n }\n className=\"uic-unit-grid__swatch\"\n onClick={togglePicker}\n onKeyDown={(e) => activateOnKey(e, togglePicker)}\n >\n <rect\n x={1}\n y={1}\n width={14}\n height={14}\n rx={4}\n style={{ fill: hueFor(hoverKey), stroke: hueFor(hoverKey) }}\n fillOpacity={0.15}\n strokeWidth={1.5}\n />\n </svg>\n <Text size=\"sm\" weight=\"semibold\">\n {hoveredGroup.label || hoveredGroup.key}\n </Text>\n </HStack>\n )}\n {renderGroupPopover?.(hoveredGroup, {\n hue: hueFor(hoverKey),\n closePopover,\n })}\n </VStack>\n </div>\n )}\n </div>\n )}\n </VStack>\n );\n}\n\nUnitGrid.displayName = \"UnitGrid\";\n"],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { HTMLAttributes } from 'react';
|
|
2
|
+
export interface UnitGridSkeletonProps extends Omit<HTMLAttributes<HTMLDivElement>, "children"> {
|
|
3
|
+
/** Lattice rows, two blocks each. @default 3 */
|
|
4
|
+
rows?: number;
|
|
5
|
+
}
|
|
6
|
+
export declare function UnitGridSkeleton({ rows, className, ...divProps }: UnitGridSkeletonProps): import("react").JSX.Element;
|
|
7
|
+
export declare namespace UnitGridSkeleton {
|
|
8
|
+
var displayName: string;
|
|
9
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { HStack as e, VStack as t } from "@astryxdesign/core/Stack";
|
|
2
|
+
import { Skeleton as n } from "@astryxdesign/core/Skeleton";
|
|
3
|
+
import { jsx as r, jsxs as i } from "react/jsx-runtime";
|
|
4
|
+
//#region src/components/UnitGrid/UnitGridSkeleton.tsx
|
|
5
|
+
var a = 3, o = [
|
|
6
|
+
140,
|
|
7
|
+
180,
|
|
8
|
+
100
|
|
9
|
+
], s = "var(--size-element-sm)", c = 5, l = 10, u = 40, d = 12, f = [
|
|
10
|
+
["45%", "25%"],
|
|
11
|
+
["30%", "40%"],
|
|
12
|
+
["55%", "20%"]
|
|
13
|
+
], p = "var(--size-element-sm)";
|
|
14
|
+
function m({ rows: m = a, className: h, ...g }) {
|
|
15
|
+
let _ = 0;
|
|
16
|
+
return /* @__PURE__ */ i(t, {
|
|
17
|
+
gap: 3,
|
|
18
|
+
align: "stretch",
|
|
19
|
+
className: ["uic-unit-grid-skeleton", h].filter(Boolean).join(" "),
|
|
20
|
+
...g,
|
|
21
|
+
children: [
|
|
22
|
+
/* @__PURE__ */ r(e, {
|
|
23
|
+
gap: 3,
|
|
24
|
+
align: "center",
|
|
25
|
+
children: o.map((e, t) => /* @__PURE__ */ r(n, {
|
|
26
|
+
width: e,
|
|
27
|
+
height: s,
|
|
28
|
+
radius: 2,
|
|
29
|
+
index: _++
|
|
30
|
+
}, t))
|
|
31
|
+
}),
|
|
32
|
+
/* @__PURE__ */ r(e, {
|
|
33
|
+
gap: 3,
|
|
34
|
+
wrap: "wrap",
|
|
35
|
+
align: "center",
|
|
36
|
+
children: Array.from({ length: c }, (t, a) => /* @__PURE__ */ i(e, {
|
|
37
|
+
gap: 1,
|
|
38
|
+
align: "center",
|
|
39
|
+
children: [/* @__PURE__ */ r(n, {
|
|
40
|
+
width: l,
|
|
41
|
+
height: l,
|
|
42
|
+
radius: 1,
|
|
43
|
+
index: _++
|
|
44
|
+
}), /* @__PURE__ */ r(n, {
|
|
45
|
+
width: u,
|
|
46
|
+
height: d,
|
|
47
|
+
radius: 1,
|
|
48
|
+
index: _++
|
|
49
|
+
})]
|
|
50
|
+
}, a))
|
|
51
|
+
}),
|
|
52
|
+
Array.from({ length: Math.max(0, m) }, (t, i) => {
|
|
53
|
+
let a = f[i % f.length];
|
|
54
|
+
return /* @__PURE__ */ r(e, {
|
|
55
|
+
gap: 3,
|
|
56
|
+
align: "center",
|
|
57
|
+
className: "uic-unit-grid-skeleton__row",
|
|
58
|
+
children: a.map((e, t) => /* @__PURE__ */ r(n, {
|
|
59
|
+
width: e,
|
|
60
|
+
height: p,
|
|
61
|
+
radius: 1,
|
|
62
|
+
index: _++
|
|
63
|
+
}, t))
|
|
64
|
+
}, i);
|
|
65
|
+
})
|
|
66
|
+
]
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
m.displayName = "UnitGridSkeleton";
|
|
70
|
+
//#endregion
|
|
71
|
+
export { m as UnitGridSkeleton };
|
|
72
|
+
|
|
73
|
+
//# sourceMappingURL=UnitGridSkeleton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UnitGridSkeleton.js","names":[],"sources":["../../../src/components/UnitGrid/UnitGridSkeleton.tsx"],"sourcesContent":["/**\n * UnitGridSkeleton\n *\n * The loading stand-in for a UnitGrid and the toolbar above it: a row of\n * control-sized bars, a legend row, then two blocks per lattice row. The\n * lattice is drawn at low fidelity on purpose; mimicking plates and cells\n * would read as detail while nothing is loaded.\n *\n * @example\n * <Suspense fallback={<UnitGridSkeleton />}>...</Suspense>\n */\nimport type { HTMLAttributes } from \"react\";\nimport { HStack, VStack } from \"@astryxdesign/core/Stack\";\nimport { Skeleton } from \"@astryxdesign/core/Skeleton\";\n\nconst DEFAULT_ROW_COUNT = 3;\n\n/** The toolbar's control widths: per control, not a scale, so no token. */\nconst TOOLBAR_PILL_WIDTHS = [140, 180, 100] as const;\nconst TOOLBAR_PILL_HEIGHT = \"var(--size-element-sm)\";\n\nconst LEGEND_ITEM_COUNT = 5;\nconst LEGEND_SWATCH_SIZE = 10;\nconst LEGEND_LABEL_WIDTH = 40;\nconst LEGEND_LABEL_HEIGHT = 12;\n\n/** Two blocks per row, widths varied so the rows read organic. */\nconst ROW_BLOCK_WIDTHS = [\n [\"45%\", \"25%\"],\n [\"30%\", \"40%\"],\n [\"55%\", \"20%\"],\n] as const;\nconst ROW_BLOCK_HEIGHT = \"var(--size-element-sm)\";\n\nexport interface UnitGridSkeletonProps extends Omit<\n HTMLAttributes<HTMLDivElement>,\n \"children\"\n> {\n /** Lattice rows, two blocks each. @default 3 */\n rows?: number;\n}\n\nexport function UnitGridSkeleton({\n rows = DEFAULT_ROW_COUNT,\n className,\n ...divProps\n}: UnitGridSkeletonProps) {\n // One running index across every bar, so the shimmer reads as one wave.\n let waveIndex = 0;\n\n return (\n <VStack\n gap={3}\n align=\"stretch\"\n className={[\"uic-unit-grid-skeleton\", className].filter(Boolean).join(\" \")}\n {...divProps}\n >\n <HStack gap={3} align=\"center\">\n {TOOLBAR_PILL_WIDTHS.map((width, i) => (\n <Skeleton\n key={i}\n width={width}\n height={TOOLBAR_PILL_HEIGHT}\n radius={2}\n index={waveIndex++}\n />\n ))}\n </HStack>\n <HStack gap={3} wrap=\"wrap\" align=\"center\">\n {Array.from({ length: LEGEND_ITEM_COUNT }, (_unused, i) => (\n <HStack key={i} gap={1} align=\"center\">\n <Skeleton\n width={LEGEND_SWATCH_SIZE}\n height={LEGEND_SWATCH_SIZE}\n radius={1}\n index={waveIndex++}\n />\n <Skeleton\n width={LEGEND_LABEL_WIDTH}\n height={LEGEND_LABEL_HEIGHT}\n radius={1}\n index={waveIndex++}\n />\n </HStack>\n ))}\n </HStack>\n {Array.from({ length: Math.max(0, rows) }, (_unused, rowIdx) => {\n const widths = ROW_BLOCK_WIDTHS[rowIdx % ROW_BLOCK_WIDTHS.length]!;\n return (\n <HStack\n key={rowIdx}\n gap={3}\n align=\"center\"\n className=\"uic-unit-grid-skeleton__row\"\n >\n {widths.map((width, blockIdx) => (\n <Skeleton\n key={blockIdx}\n width={width}\n height={ROW_BLOCK_HEIGHT}\n radius={1}\n index={waveIndex++}\n />\n ))}\n </HStack>\n );\n })}\n </VStack>\n );\n}\n\nUnitGridSkeleton.displayName = \"UnitGridSkeleton\";\n"],"mappings":";;;;AAeA,IAAM,IAAoB,GAGpB,IAAsB;CAAC;CAAK;CAAK;AAAG,GACpC,IAAsB,0BAEtB,IAAoB,GACpB,IAAqB,IACrB,IAAqB,IACrB,IAAsB,IAGtB,IAAmB;CACvB,CAAC,OAAO,KAAK;CACb,CAAC,OAAO,KAAK;CACb,CAAC,OAAO,KAAK;AACf,GACM,IAAmB;AAUzB,SAAgB,EAAiB,EAC/B,UAAO,GACP,cACA,GAAG,KACqB;CAExB,IAAI,IAAY;CAEhB,OACE,kBAAC,GAAD;EACE,KAAK;EACL,OAAM;EACN,WAAW,CAAC,0BAA0B,CAAS,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG;EACzE,GAAI;EAJN,UAAA;GAME,kBAAC,GAAD;IAAQ,KAAK;IAAG,OAAM;IACnB,UAAA,EAAoB,KAAK,GAAO,MAC/B,kBAAC,GAAD;KAES;KACP,QAAQ;KACR,QAAQ;KACR,OAAO;IACR,GALM,CAKN,CACF;GACK,CAAA;GACR,kBAAC,GAAD;IAAQ,KAAK;IAAG,MAAK;IAAO,OAAM;IAC/B,UAAA,MAAM,KAAK,EAAE,QAAQ,EAAkB,IAAI,GAAS,MACnD,kBAAC,GAAD;KAAgB,KAAK;KAAG,OAAM;KAA9B,UAAA,CACE,kBAAC,GAAD;MACE,OAAO;MACP,QAAQ;MACR,QAAQ;MACR,OAAO;KACR,CAAA,GACD,kBAAC,GAAD;MACE,OAAO;MACP,QAAQ;MACR,QAAQ;MACR,OAAO;KACR,CAAA,CACK;IAbK,GAAA,CAaL,CACT;GACK,CAAA;GACP,MAAM,KAAK,EAAE,QAAQ,KAAK,IAAI,GAAG,CAAI,EAAE,IAAI,GAAS,MAAW;IAC9D,IAAM,IAAS,EAAiB,IAAS,EAAiB;IAC1D,OACE,kBAAC,GAAD;KAEE,KAAK;KACL,OAAM;KACN,WAAU;KAET,UAAA,EAAO,KAAK,GAAO,MAClB,kBAAC,GAAD;MAES;MACP,QAAQ;MACR,QAAQ;MACR,OAAO;KACR,GALM,CAKN,CACF;IACK,GAdD,CAcC;GAEZ,CAAC;EACK;;AAEZ;AAEA,EAAiB,cAAc"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { UnitGrid } from './UnitGrid';
|
|
2
|
+
export type { UnitGridGroup, UnitGridLayout, UnitGridLegendItem, UnitGridProps, UnitGridUnit, } from './UnitGrid';
|
|
3
|
+
export { UnitGridSkeleton } from './UnitGridSkeleton';
|
|
4
|
+
export type { UnitGridSkeletonProps } from './UnitGridSkeleton';
|