@cube-dev/ui-kit 0.197.0 → 0.198.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CHANGELOG.md +60 -9
- package/dist/_internal/hooks/use-debounced-value.js +2 -3
- package/dist/_internal/hooks/use-debounced-value.js.map +1 -1
- package/dist/_internal/hooks/use-deprecation-warning.js +2 -3
- package/dist/_internal/hooks/use-deprecation-warning.js.map +1 -1
- package/dist/_internal/hooks/use-event.js +2 -3
- package/dist/_internal/hooks/use-event.js.map +1 -1
- package/dist/_internal/hooks/use-is-first-render.js +2 -3
- package/dist/_internal/hooks/use-is-first-render.js.map +1 -1
- package/dist/_internal/hooks/use-sync-ref.js +2 -3
- package/dist/_internal/hooks/use-sync-ref.js.map +1 -1
- package/dist/_internal/hooks/use-timer/timer.js +2 -2
- package/dist/_internal/hooks/use-timer/timer.js.map +1 -1
- package/dist/_internal/hooks/use-timer/use-timer.js +2 -3
- package/dist/_internal/hooks/use-timer/use-timer.js.map +1 -1
- package/dist/_internal/hooks/use-warn.js +2 -3
- package/dist/_internal/hooks/use-warn.js.map +1 -1
- package/dist/components/Block.d.ts +2 -5
- package/dist/components/Block.js +2 -3
- package/dist/components/Block.js.map +1 -1
- package/dist/components/CollectionItem.d.ts +4 -5
- package/dist/components/CollectionItem.js +4 -5
- package/dist/components/CollectionItem.js.map +1 -1
- package/dist/components/GlobalStyles.js +4 -5
- package/dist/components/GlobalStyles.js.map +1 -1
- package/dist/components/GridProvider.d.ts +2 -5
- package/dist/components/GridProvider.js +4 -4
- package/dist/components/GridProvider.js.map +1 -1
- package/dist/components/HiddenInput.js +2 -3
- package/dist/components/HiddenInput.js.map +1 -1
- package/dist/components/Root.d.ts +2 -5
- package/dist/components/Root.js +2 -3
- package/dist/components/Root.js.map +1 -1
- package/dist/components/actions/Action/Action.d.ts +2 -6
- package/dist/components/actions/Action/Action.js +2 -3
- package/dist/components/actions/Action/Action.js.map +1 -1
- package/dist/components/actions/Banner/Banner.d.ts +9 -12
- package/dist/components/actions/Banner/Banner.js +3 -4
- package/dist/components/actions/Banner/Banner.js.map +1 -1
- package/dist/components/actions/Banner/index.d.ts +2 -1
- package/dist/components/actions/Button/Button.d.ts +4 -7
- package/dist/components/actions/Button/Button.js +2 -3
- package/dist/components/actions/Button/Button.js.map +1 -1
- package/dist/components/actions/Button/index.d.ts +2 -1
- package/dist/components/actions/ButtonGroup/ButtonGroup.d.ts +1 -4
- package/dist/components/actions/ButtonGroup/ButtonGroup.js +2 -3
- package/dist/components/actions/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/components/actions/ButtonSplit/ButtonSplit.d.ts +3 -6
- package/dist/components/actions/ButtonSplit/ButtonSplit.js +5 -5
- package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
- package/dist/components/actions/ButtonSplit/context.d.ts +3 -6
- package/dist/components/actions/ButtonSplit/context.js +2 -3
- package/dist/components/actions/ButtonSplit/context.js.map +1 -1
- package/dist/components/actions/ButtonSplit/index.d.ts +2 -1
- package/dist/components/actions/CommandMenu/CommandMenu.d.ts +6 -9
- package/dist/components/actions/CommandMenu/CommandMenu.js +89 -76
- package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
- package/dist/components/actions/CommandMenu/index.d.ts +2 -1
- package/dist/components/actions/CommandMenu/styled.js +3 -4
- package/dist/components/actions/CommandMenu/styled.js.map +1 -1
- package/dist/components/actions/ItemAction/ItemAction.d.ts +3 -6
- package/dist/components/actions/ItemAction/ItemAction.js +11 -9
- package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
- package/dist/components/actions/ItemAction/index.d.ts +2 -1
- package/dist/components/actions/ItemActionContext.d.ts +5 -14
- package/dist/components/actions/ItemActionContext.js +2 -3
- package/dist/components/actions/ItemActionContext.js.map +1 -1
- package/dist/components/actions/ItemActionsWrapper.js +2 -3
- package/dist/components/actions/ItemActionsWrapper.js.map +1 -1
- package/dist/components/actions/ItemButton/ItemButton.d.ts +6 -9
- package/dist/components/actions/ItemButton/ItemButton.js +4 -5
- package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
- package/dist/components/actions/ItemButton/index.d.ts +2 -1
- package/dist/components/actions/Link/Link.d.ts +1 -5
- package/dist/components/actions/Link/Link.js +2 -3
- package/dist/components/actions/Link/Link.js.map +1 -1
- package/dist/components/actions/Menu/Menu.d.ts +7 -10
- package/dist/components/actions/Menu/Menu.js +9 -8
- package/dist/components/actions/Menu/Menu.js.map +1 -1
- package/dist/components/actions/Menu/MenuCollectionItem.d.ts +3 -4
- package/dist/components/actions/Menu/MenuCollectionItem.js +4 -5
- package/dist/components/actions/Menu/MenuCollectionItem.js.map +1 -1
- package/dist/components/actions/Menu/MenuItem.d.ts +5 -8
- package/dist/components/actions/Menu/MenuItem.js +4 -4
- package/dist/components/actions/Menu/MenuItem.js.map +1 -1
- package/dist/components/actions/Menu/MenuSection.d.ts +4 -7
- package/dist/components/actions/Menu/MenuSection.js +2 -3
- package/dist/components/actions/Menu/MenuSection.js.map +1 -1
- package/dist/components/actions/Menu/MenuTrigger.d.ts +4 -6
- package/dist/components/actions/Menu/MenuTrigger.js +5 -6
- package/dist/components/actions/Menu/MenuTrigger.js.map +1 -1
- package/dist/components/actions/Menu/SubMenuTrigger.d.ts +3 -5
- package/dist/components/actions/Menu/SubMenuTrigger.js +3 -4
- package/dist/components/actions/Menu/SubMenuTrigger.js.map +1 -1
- package/dist/components/actions/Menu/SubmenuTriggerContext.js +2 -3
- package/dist/components/actions/Menu/SubmenuTriggerContext.js.map +1 -1
- package/dist/components/actions/Menu/context.d.ts +3 -5
- package/dist/components/actions/Menu/context.js +2 -3
- package/dist/components/actions/Menu/context.js.map +1 -1
- package/dist/components/actions/Menu/index.d.ts +4 -3
- package/dist/components/actions/Menu/styled.js +3 -4
- package/dist/components/actions/Menu/styled.js.map +1 -1
- package/dist/components/actions/actions-run.js +2 -2
- package/dist/components/actions/actions-run.js.map +1 -1
- package/dist/components/actions/index.d.ts +8 -11
- package/dist/components/actions/index.js +8 -9
- package/dist/components/actions/index.js.map +1 -1
- package/dist/components/actions/use-action.d.ts +10 -27
- package/dist/components/actions/use-action.js +15 -7
- package/dist/components/actions/use-action.js.map +1 -1
- package/dist/components/actions/use-anchored-menu.d.ts +3 -5
- package/dist/components/actions/use-anchored-menu.js +5 -5
- package/dist/components/actions/use-anchored-menu.js.map +1 -1
- package/dist/components/actions/use-context-menu.d.ts +4 -5
- package/dist/components/actions/use-context-menu.js +9 -7
- package/dist/components/actions/use-context-menu.js.map +1 -1
- package/dist/components/content/ActiveZone/ActiveZone.d.ts +3 -5
- package/dist/components/content/ActiveZone/ActiveZone.js +3 -4
- package/dist/components/content/ActiveZone/ActiveZone.js.map +1 -1
- package/dist/components/content/Alert/Alert.d.ts +1 -4
- package/dist/components/content/Alert/Alert.js +3 -3
- package/dist/components/content/Alert/Alert.js.map +1 -1
- package/dist/components/content/Alert/index.d.ts +2 -1
- package/dist/components/content/Alert/types.d.ts +2 -4
- package/dist/components/content/Alert/use-alert.js +2 -3
- package/dist/components/content/Alert/use-alert.js.map +1 -1
- package/dist/components/content/Avatar/Avatar.d.ts +2 -5
- package/dist/components/content/Avatar/Avatar.js +2 -3
- package/dist/components/content/Avatar/Avatar.js.map +1 -1
- package/dist/components/content/Badge/Badge.d.ts +5 -7
- package/dist/components/content/Badge/Badge.js +4 -5
- package/dist/components/content/Badge/Badge.js.map +1 -1
- package/dist/components/content/Card/Card.d.ts +2 -5
- package/dist/components/content/Card/Card.js +2 -3
- package/dist/components/content/Card/Card.js.map +1 -1
- package/dist/components/content/Content.d.ts +2 -5
- package/dist/components/content/Content.js +2 -3
- package/dist/components/content/Content.js.map +1 -1
- package/dist/components/content/CopyPasteBlock/CopyPasteBlock.d.ts +3 -5
- package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +3 -4
- package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js.map +1 -1
- package/dist/components/content/CopyPasteBlock/index.d.ts +2 -1
- package/dist/components/content/CopySnippet/CopySnippet.d.ts +21 -971
- package/dist/components/content/CopySnippet/CopySnippet.js +5 -6
- package/dist/components/content/CopySnippet/CopySnippet.js.map +1 -1
- package/dist/components/content/CopySnippet/index.d.ts +2 -1
- package/dist/components/content/Disclosure/Disclosure.d.ts +12 -14
- package/dist/components/content/Disclosure/Disclosure.js +8 -7
- package/dist/components/content/Disclosure/Disclosure.js.map +1 -1
- package/dist/components/content/Disclosure/index.d.ts +2 -1
- package/dist/components/content/Divider.d.ts +2 -5
- package/dist/components/content/Divider.js +4 -4
- package/dist/components/content/Divider.js.map +1 -1
- package/dist/components/content/Footer.d.ts +2 -5
- package/dist/components/content/Footer.js +2 -3
- package/dist/components/content/Footer.js.map +1 -1
- package/dist/components/content/Header.d.ts +2 -5
- package/dist/components/content/Header.js +2 -3
- package/dist/components/content/Header.js.map +1 -1
- package/dist/components/content/HotKeys/HotKeys.d.ts +3 -5
- package/dist/components/content/HotKeys/HotKeys.js +4 -5
- package/dist/components/content/HotKeys/HotKeys.js.map +1 -1
- package/dist/components/content/HotKeys/index.d.ts +2 -1
- package/dist/components/content/InfoBadge/InfoBadge.d.ts +4 -6
- package/dist/components/content/InfoBadge/InfoBadge.js +2 -3
- package/dist/components/content/InfoBadge/InfoBadge.js.map +1 -1
- package/dist/components/content/InlineInput/InlineInput.d.ts +4 -7
- package/dist/components/content/InlineInput/InlineInput.js +5 -5
- package/dist/components/content/InlineInput/InlineInput.js.map +1 -1
- package/dist/components/content/InlineInput/index.d.ts +2 -1
- package/dist/components/content/Item/Item.d.ts +4 -7
- package/dist/components/content/Item/Item.js +4 -5
- package/dist/components/content/Item/Item.js.map +1 -1
- package/dist/components/content/Item/ItemWithNativeLinks.js +2 -3
- package/dist/components/content/Item/ItemWithNativeLinks.js.map +1 -1
- package/dist/components/content/Item/index.d.ts +2 -1
- package/dist/components/content/ItemBadge/ItemBadge.d.ts +3 -5
- package/dist/components/content/ItemBadge/ItemBadge.js +2 -3
- package/dist/components/content/ItemBadge/ItemBadge.js.map +1 -1
- package/dist/components/content/ItemBadge/index.d.ts +2 -1
- package/dist/components/content/ItemCard/ItemCard.d.ts +5 -8
- package/dist/components/content/ItemCard/ItemCard.js +3 -4
- package/dist/components/content/ItemCard/ItemCard.js.map +1 -1
- package/dist/components/content/Layout/GridLayout.d.ts +13 -14
- package/dist/components/content/Layout/GridLayout.js +13 -14
- package/dist/components/content/Layout/GridLayout.js.map +1 -1
- package/dist/components/content/Layout/Layout.d.ts +1 -3
- package/dist/components/content/Layout/Layout.js +28 -17
- package/dist/components/content/Layout/Layout.js.map +1 -1
- package/dist/components/content/Layout/LayoutBlock.d.ts +3 -5
- package/dist/components/content/Layout/LayoutBlock.js +4 -5
- package/dist/components/content/Layout/LayoutBlock.js.map +1 -1
- package/dist/components/content/Layout/LayoutCenter.d.ts +3 -5
- package/dist/components/content/Layout/LayoutCenter.js +4 -5
- package/dist/components/content/Layout/LayoutCenter.js.map +1 -1
- package/dist/components/content/Layout/LayoutContainer.d.ts +3 -5
- package/dist/components/content/Layout/LayoutContainer.js +5 -5
- package/dist/components/content/Layout/LayoutContainer.js.map +1 -1
- package/dist/components/content/Layout/LayoutContent.d.ts +4 -6
- package/dist/components/content/Layout/LayoutContent.js +3 -4
- package/dist/components/content/Layout/LayoutContent.js.map +1 -1
- package/dist/components/content/Layout/LayoutContext.d.ts +1 -3
- package/dist/components/content/Layout/LayoutContext.js +2 -3
- package/dist/components/content/Layout/LayoutContext.js.map +1 -1
- package/dist/components/content/Layout/LayoutFlex.d.ts +3 -5
- package/dist/components/content/Layout/LayoutFlex.js +4 -5
- package/dist/components/content/Layout/LayoutFlex.js.map +1 -1
- package/dist/components/content/Layout/LayoutFooter.d.ts +3 -5
- package/dist/components/content/Layout/LayoutFooter.js +4 -5
- package/dist/components/content/Layout/LayoutFooter.js.map +1 -1
- package/dist/components/content/Layout/LayoutGrid.d.ts +3 -5
- package/dist/components/content/Layout/LayoutGrid.js +4 -5
- package/dist/components/content/Layout/LayoutGrid.js.map +1 -1
- package/dist/components/content/Layout/LayoutHeader.d.ts +3 -5
- package/dist/components/content/Layout/LayoutHeader.js +6 -6
- package/dist/components/content/Layout/LayoutHeader.js.map +1 -1
- package/dist/components/content/Layout/LayoutPane.d.ts +4 -6
- package/dist/components/content/Layout/LayoutPane.js +7 -8
- package/dist/components/content/Layout/LayoutPane.js.map +1 -1
- package/dist/components/content/Layout/LayoutPanel.d.ts +20 -6
- package/dist/components/content/Layout/LayoutPanel.js +32 -21
- package/dist/components/content/Layout/LayoutPanel.js.map +1 -1
- package/dist/components/content/Layout/LayoutPanelHeader.d.ts +4 -6
- package/dist/components/content/Layout/LayoutPanelHeader.js +4 -5
- package/dist/components/content/Layout/LayoutPanelHeader.js.map +1 -1
- package/dist/components/content/Layout/LayoutPanelTransition.js +54 -51
- package/dist/components/content/Layout/LayoutPanelTransition.js.map +1 -1
- package/dist/components/content/Layout/LayoutToolbar.d.ts +3 -5
- package/dist/components/content/Layout/LayoutToolbar.js +4 -5
- package/dist/components/content/Layout/LayoutToolbar.js.map +1 -1
- package/dist/components/content/Layout/hooks/useTinyScrollbar.js +2 -3
- package/dist/components/content/Layout/hooks/useTinyScrollbar.js.map +1 -1
- package/dist/components/content/Layout/index.d.ts +15 -16
- package/dist/components/content/Layout/index.js +17 -18
- package/dist/components/content/Layout/index.js.map +1 -1
- package/dist/components/content/Layout/utils.js +2 -2
- package/dist/components/content/Layout/utils.js.map +1 -1
- package/dist/components/content/Paragraph.d.ts +2 -5
- package/dist/components/content/Paragraph.js +3 -4
- package/dist/components/content/Paragraph.js.map +1 -1
- package/dist/components/content/Placeholder/Placeholder.d.ts +2 -5
- package/dist/components/content/Placeholder/Placeholder.js +2 -3
- package/dist/components/content/Placeholder/Placeholder.js.map +1 -1
- package/dist/components/content/PrismCode/PrismCode.d.ts +3 -5
- package/dist/components/content/PrismCode/PrismCode.js +4 -5
- package/dist/components/content/PrismCode/PrismCode.js.map +1 -1
- package/dist/components/content/PrismCode/prismSetup.js +3 -4
- package/dist/components/content/PrismCode/prismSetup.js.map +1 -1
- package/dist/components/content/PrismDiffCode/PrismDiffCode.d.ts +2 -9
- package/dist/components/content/PrismDiffCode/PrismDiffCode.js +3 -4
- package/dist/components/content/PrismDiffCode/PrismDiffCode.js.map +1 -1
- package/dist/components/content/Result/Result.d.ts +9 -12
- package/dist/components/content/Result/Result.js +4 -5
- package/dist/components/content/Result/Result.js.map +1 -1
- package/dist/components/content/Skeleton/Skeleton.d.ts +13 -61
- package/dist/components/content/Skeleton/Skeleton.js +2 -3
- package/dist/components/content/Skeleton/Skeleton.js.map +1 -1
- package/dist/components/content/Tag/Tag.d.ts +4 -6
- package/dist/components/content/Tag/Tag.js +4 -5
- package/dist/components/content/Tag/Tag.js.map +1 -1
- package/dist/components/content/Text.d.ts +10 -2849
- package/dist/components/content/Text.js +3 -4
- package/dist/components/content/Text.js.map +1 -1
- package/dist/components/content/TextItem/TextItem.d.ts +6 -5
- package/dist/components/content/TextItem/TextItem.js +2 -3
- package/dist/components/content/TextItem/TextItem.js.map +1 -1
- package/dist/components/content/TextItem/index.d.ts +2 -1
- package/dist/components/content/Title.d.ts +5 -7
- package/dist/components/content/Title.js +3 -4
- package/dist/components/content/Title.js.map +1 -1
- package/dist/components/content/Tree/Tree.d.ts +1 -4
- package/dist/components/content/Tree/Tree.js +4 -4
- package/dist/components/content/Tree/Tree.js.map +1 -1
- package/dist/components/content/Tree/TreeNode.js +5 -6
- package/dist/components/content/Tree/TreeNode.js.map +1 -1
- package/dist/components/content/Tree/index.d.ts +2 -1
- package/dist/components/content/Tree/styled.js +18 -4
- package/dist/components/content/Tree/styled.js.map +1 -1
- package/dist/components/content/Tree/tree-index.js +2 -2
- package/dist/components/content/Tree/tree-index.js.map +1 -1
- package/dist/components/content/Tree/types.d.ts +11 -13
- package/dist/components/content/Tree/use-checkbox-tree.js +2 -3
- package/dist/components/content/Tree/use-checkbox-tree.js.map +1 -1
- package/dist/components/content/Tree/use-load-data.js +2 -3
- package/dist/components/content/Tree/use-load-data.js.map +1 -1
- package/dist/components/content/highlightText.js +3 -4
- package/dist/components/content/highlightText.js.map +1 -1
- package/dist/components/content/use-auto-tooltip.d.ts +1 -3
- package/dist/components/content/use-auto-tooltip.js +2 -3
- package/dist/components/content/use-auto-tooltip.js.map +1 -1
- package/dist/components/data/DataTable/DataTable.d.ts +1 -2
- package/dist/components/data/DataTable/DataTable.js +35 -25
- package/dist/components/data/DataTable/DataTable.js.map +1 -1
- package/dist/components/data/DataTable/index.d.ts +2 -1
- package/dist/components/data/DataTable/types.d.ts +4 -6
- package/dist/components/data/ItemTable/ItemTable.d.ts +15 -9
- package/dist/components/data/ItemTable/ItemTable.js +6 -5
- package/dist/components/data/ItemTable/ItemTable.js.map +1 -1
- package/dist/components/data/ItemTable/ItemTableBulkBar.d.ts +2 -5
- package/dist/components/data/ItemTable/ItemTableBulkBar.js +8 -4
- package/dist/components/data/ItemTable/ItemTableBulkBar.js.map +1 -1
- package/dist/components/data/ItemTable/ItemTableDragPreview.js +3 -4
- package/dist/components/data/ItemTable/ItemTableDragPreview.js.map +1 -1
- package/dist/components/data/ItemTable/ItemTableFooter.js +8 -4
- package/dist/components/data/ItemTable/ItemTableFooter.js.map +1 -1
- package/dist/components/data/ItemTable/ItemTableToolbar.d.ts +4 -15
- package/dist/components/data/ItemTable/ItemTableToolbar.js +2 -3
- package/dist/components/data/ItemTable/ItemTableToolbar.js.map +1 -1
- package/dist/components/data/ItemTable/index.d.ts +2 -1
- package/dist/components/data/ItemTable/types.d.ts +6 -6
- package/dist/components/data/ItemTable/use-item-table-column-widths.js +4 -4
- package/dist/components/data/ItemTable/use-item-table-column-widths.js.map +1 -1
- package/dist/components/data/ItemTable/use-item-table-drag-drop.js +2 -3
- package/dist/components/data/ItemTable/use-item-table-drag-drop.js.map +1 -1
- package/dist/components/data/ItemTable/use-item-table-pagination.js +2 -3
- package/dist/components/data/ItemTable/use-item-table-pagination.js.map +1 -1
- package/dist/components/data/ItemTable/use-item-table-selection.js +2 -3
- package/dist/components/data/ItemTable/use-item-table-selection.js.map +1 -1
- package/dist/components/data/ItemTable/use-item-table-sort.js +2 -3
- package/dist/components/data/ItemTable/use-item-table-sort.js.map +1 -1
- package/dist/components/data/ItemTable/use-item-table-tree-model.js +2 -3
- package/dist/components/data/ItemTable/use-item-table-tree-model.js.map +1 -1
- package/dist/components/data/TableBase/ColumnResizer.js +2 -3
- package/dist/components/data/TableBase/ColumnResizer.js.map +1 -1
- package/dist/components/data/TableBase/RowCollection.d.ts +2 -0
- package/dist/components/data/TableBase/RowCollection.js +2 -2
- package/dist/components/data/TableBase/RowCollection.js.map +1 -1
- package/dist/components/data/TableBase/TableHeaderCell.js +2 -3
- package/dist/components/data/TableBase/TableHeaderCell.js.map +1 -1
- package/dist/components/data/TableBase/TableRow.js +2 -3
- package/dist/components/data/TableBase/TableRow.js.map +1 -1
- package/dist/components/data/TableBase/TableView.d.ts +2 -3
- package/dist/components/data/TableBase/TableView.js +25 -15
- package/dist/components/data/TableBase/TableView.js.map +1 -1
- package/dist/components/data/TableBase/TreeGridTable.js +9 -9
- package/dist/components/data/TableBase/TreeGridTable.js.map +1 -1
- package/dist/components/data/TableBase/column-header.js +2 -3
- package/dist/components/data/TableBase/column-header.js.map +1 -1
- package/dist/components/data/TableBase/column-menu.d.ts +3 -6
- package/dist/components/data/TableBase/column-menu.js +3 -4
- package/dist/components/data/TableBase/column-menu.js.map +1 -1
- package/dist/components/data/TableBase/column-styles.js +2 -3
- package/dist/components/data/TableBase/column-styles.js.map +1 -1
- package/dist/components/data/TableBase/column-tint.js +4 -5
- package/dist/components/data/TableBase/column-tint.js.map +1 -1
- package/dist/components/data/TableBase/index.d.ts +2 -1
- package/dist/components/data/TableBase/row-menu.js +2 -3
- package/dist/components/data/TableBase/row-menu.js.map +1 -1
- package/dist/components/data/TableBase/styled.d.ts +1 -7
- package/dist/components/data/TableBase/styled.js +168 -4
- package/dist/components/data/TableBase/styled.js.map +1 -1
- package/dist/components/data/TableBase/table-tree.d.ts +2 -0
- package/dist/components/data/TableBase/table-tree.js +2 -2
- package/dist/components/data/TableBase/table-tree.js.map +1 -1
- package/dist/components/data/TableBase/types.d.ts +30 -26
- package/dist/components/data/TableBase/types.js +2 -2
- package/dist/components/data/TableBase/types.js.map +1 -1
- package/dist/components/data/TableBase/use-cell-selection.d.ts +1 -2
- package/dist/components/data/TableBase/use-cell-selection.js +0 -0
- package/dist/components/data/TableBase/use-cell-selection.js.map +1 -1
- package/dist/components/data/TableBase/use-column-menu.js +4 -5
- package/dist/components/data/TableBase/use-column-menu.js.map +1 -1
- package/dist/components/data/TableBase/use-column-order.js +3 -4
- package/dist/components/data/TableBase/use-column-order.js.map +1 -1
- package/dist/components/data/TableBase/use-column-window.js +3 -4
- package/dist/components/data/TableBase/use-column-window.js.map +1 -1
- package/dist/components/data/TableBase/use-container-width.js +2 -3
- package/dist/components/data/TableBase/use-container-width.js.map +1 -1
- package/dist/components/data/TableBase/use-row-move-animation.js +3 -7
- package/dist/components/data/TableBase/use-row-move-animation.js.map +1 -1
- package/dist/components/data/TableBase/use-scrollability.js +2 -3
- package/dist/components/data/TableBase/use-scrollability.js.map +1 -1
- package/dist/components/data/TableBase/use-table-columns.js +4 -8
- package/dist/components/data/TableBase/use-table-columns.js.map +1 -1
- package/dist/components/data/TableBase/use-table-search.js +2 -3
- package/dist/components/data/TableBase/use-table-search.js.map +1 -1
- package/dist/components/data/TableBase/use-table-selection.d.ts +1 -0
- package/dist/components/data/TableBase/use-table-selection.js +7 -6
- package/dist/components/data/TableBase/use-table-selection.js.map +1 -1
- package/dist/components/data/TableBase/use-table-sort.js +2 -3
- package/dist/components/data/TableBase/use-table-sort.js.map +1 -1
- package/dist/components/data/TableBase/use-table-sorts.js +2 -3
- package/dist/components/data/TableBase/use-table-sorts.js.map +1 -1
- package/dist/components/data/TableBase/use-table-storage.d.ts +1 -3
- package/dist/components/data/TableBase/use-table-storage.js +4 -4
- package/dist/components/data/TableBase/use-table-storage.js.map +1 -1
- package/dist/components/data/TableBase/use-table-tooltip-refresh.js +3 -4
- package/dist/components/data/TableBase/use-table-tooltip-refresh.js.map +1 -1
- package/dist/components/data/TableBase/use-table-tree-state.js +2 -3
- package/dist/components/data/TableBase/use-table-tree-state.js.map +1 -1
- package/dist/components/data/index.d.ts +4 -3
- package/dist/components/fields/Checkbox/Checkbox.d.ts +7 -10
- package/dist/components/fields/Checkbox/Checkbox.js +39 -36
- package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/fields/Checkbox/CheckboxGroup.d.ts +4 -6
- package/dist/components/fields/Checkbox/CheckboxGroup.js +16 -16
- package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
- package/dist/components/fields/Checkbox/context.js +2 -3
- package/dist/components/fields/Checkbox/context.js.map +1 -1
- package/dist/components/fields/Checkbox/index.d.ts +3 -2
- package/dist/components/fields/ColorInput/ColorInput.d.ts +3 -6
- package/dist/components/fields/ColorInput/ColorInput.js +2 -3
- package/dist/components/fields/ColorInput/ColorInput.js.map +1 -1
- package/dist/components/fields/ColorInput/index.d.ts +2 -1
- package/dist/components/fields/ColorPicker/ColorPicker.d.ts +3 -6
- package/dist/components/fields/ColorPicker/ColorPicker.js +321 -118
- package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
- package/dist/components/fields/ColorPicker/index.d.ts +2 -1
- package/dist/components/fields/ColorSwatch/ColorSwatch.d.ts +2 -5
- package/dist/components/fields/ColorSwatch/ColorSwatch.js +14 -3
- package/dist/components/fields/ColorSwatch/ColorSwatch.js.map +1 -1
- package/dist/components/fields/ColorSwatch/index.d.ts +2 -1
- package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.d.ts +3 -6
- package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +235 -72
- package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -1
- package/dist/components/fields/ColorSwatchGroup/index.d.ts +2 -1
- package/dist/components/fields/ComboBox/ComboBox.d.ts +5 -6
- package/dist/components/fields/ComboBox/ComboBox.js +48 -45
- package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
- package/dist/components/fields/ComboBox/comboBoxOptions.js +2 -3
- package/dist/components/fields/ComboBox/comboBoxOptions.js.map +1 -1
- package/dist/components/fields/ComboBox/index.d.ts +2 -1
- package/dist/components/fields/CommandTextArea/CommandTextArea.d.ts +10 -9
- package/dist/components/fields/CommandTextArea/CommandTextArea.js +7 -7
- package/dist/components/fields/CommandTextArea/CommandTextArea.js.map +1 -1
- package/dist/components/fields/CommandTextArea/caretPosition.js +2 -2
- package/dist/components/fields/CommandTextArea/caretPosition.js.map +1 -1
- package/dist/components/fields/CommandTextArea/index.d.ts +2 -1
- package/dist/components/fields/CommandTextArea/useCaretAnchor.js +2 -3
- package/dist/components/fields/CommandTextArea/useCaretAnchor.js.map +1 -1
- package/dist/components/fields/DatePicker/DateInput.d.ts +2 -3
- package/dist/components/fields/DatePicker/DateInput.js +10 -8
- package/dist/components/fields/DatePicker/DateInput.js.map +1 -1
- package/dist/components/fields/DatePicker/DateInputBase.js +53 -44
- package/dist/components/fields/DatePicker/DateInputBase.js.map +1 -1
- package/dist/components/fields/DatePicker/DatePicker.d.ts +3 -6
- package/dist/components/fields/DatePicker/DatePicker.js +28 -26
- package/dist/components/fields/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/fields/DatePicker/DatePickerButton.js +2 -3
- package/dist/components/fields/DatePicker/DatePickerButton.js.map +1 -1
- package/dist/components/fields/DatePicker/DatePickerElement.js +2 -3
- package/dist/components/fields/DatePicker/DatePickerElement.js.map +1 -1
- package/dist/components/fields/DatePicker/DatePickerInput.js +2 -3
- package/dist/components/fields/DatePicker/DatePickerInput.js.map +1 -1
- package/dist/components/fields/DatePicker/DatePickerSegment.js +2 -3
- package/dist/components/fields/DatePicker/DatePickerSegment.js.map +1 -1
- package/dist/components/fields/DatePicker/DateRangePicker.d.ts +2 -3
- package/dist/components/fields/DatePicker/DateRangePicker.js +29 -27
- package/dist/components/fields/DatePicker/DateRangePicker.js.map +1 -1
- package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.d.ts +2 -3
- package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +110 -110
- package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js.map +1 -1
- package/dist/components/fields/DatePicker/MonthPicker.d.ts +3 -6
- package/dist/components/fields/DatePicker/MonthPicker.js +3 -4
- package/dist/components/fields/DatePicker/MonthPicker.js.map +1 -1
- package/dist/components/fields/DatePicker/PeriodPicker.d.ts +2 -4
- package/dist/components/fields/DatePicker/PeriodPicker.js +14 -14
- package/dist/components/fields/DatePicker/PeriodPicker.js.map +1 -1
- package/dist/components/fields/DatePicker/QuarterPicker.d.ts +3 -6
- package/dist/components/fields/DatePicker/QuarterPicker.js +3 -4
- package/dist/components/fields/DatePicker/QuarterPicker.js.map +1 -1
- package/dist/components/fields/DatePicker/TimeInput.d.ts +3 -6
- package/dist/components/fields/DatePicker/TimeInput.js +10 -8
- package/dist/components/fields/DatePicker/TimeInput.js.map +1 -1
- package/dist/components/fields/DatePicker/WeekPicker.d.ts +3 -6
- package/dist/components/fields/DatePicker/WeekPicker.js +3 -4
- package/dist/components/fields/DatePicker/WeekPicker.js.map +1 -1
- package/dist/components/fields/DatePicker/YearPicker.d.ts +3 -6
- package/dist/components/fields/DatePicker/YearPicker.js +3 -4
- package/dist/components/fields/DatePicker/YearPicker.js.map +1 -1
- package/dist/components/fields/DatePicker/index.d.ts +10 -9
- package/dist/components/fields/DatePicker/parseDate.d.ts +1 -4
- package/dist/components/fields/DatePicker/parseDate.js +2 -3
- package/dist/components/fields/DatePicker/parseDate.js.map +1 -1
- package/dist/components/fields/DatePicker/period.d.ts +5 -7
- package/dist/components/fields/DatePicker/period.js +3 -4
- package/dist/components/fields/DatePicker/period.js.map +1 -1
- package/dist/components/fields/DatePicker/props.js +2 -2
- package/dist/components/fields/DatePicker/props.js.map +1 -1
- package/dist/components/fields/DatePicker/types.d.ts +2 -4
- package/dist/components/fields/DatePicker/utils.js +14 -11
- package/dist/components/fields/DatePicker/utils.js.map +1 -1
- package/dist/components/fields/FileInput/FileInput.d.ts +3 -5
- package/dist/components/fields/FileInput/FileInput.js +290 -107
- package/dist/components/fields/FileInput/FileInput.js.map +1 -1
- package/dist/components/fields/FilterListBox/FilterListBox.d.ts +4 -5
- package/dist/components/fields/FilterListBox/FilterListBox.js +24 -19
- package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
- package/dist/components/fields/FilterListBox/index.d.ts +2 -1
- package/dist/components/fields/FilterPicker/FilterPicker.d.ts +3 -5
- package/dist/components/fields/FilterPicker/FilterPicker.js +12 -10
- package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
- package/dist/components/fields/FilterPicker/index.d.ts +2 -1
- package/dist/components/fields/Input/Input.d.ts +6 -7
- package/dist/components/fields/Input/Input.js +6 -7
- package/dist/components/fields/Input/Input.js.map +1 -1
- package/dist/components/fields/Input/index.d.ts +2 -1
- package/dist/components/fields/ListBox/DraggableListBox.js +2 -3
- package/dist/components/fields/ListBox/DraggableListBox.js.map +1 -1
- package/dist/components/fields/ListBox/ListBox.d.ts +5 -7
- package/dist/components/fields/ListBox/ListBox.js +42 -27
- package/dist/components/fields/ListBox/ListBox.js.map +1 -1
- package/dist/components/fields/ListBox/index.d.ts +2 -1
- package/dist/components/fields/ListBox/optionId.js +2 -2
- package/dist/components/fields/ListBox/optionId.js.map +1 -1
- package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +3 -4
- package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
- package/dist/components/fields/ListBoxPopover/index.d.ts +2 -1
- package/dist/components/fields/ListBoxPopover/listNavigation.d.ts +2 -4
- package/dist/components/fields/ListBoxPopover/listNavigation.js +2 -2
- package/dist/components/fields/ListBoxPopover/listNavigation.js.map +1 -1
- package/dist/components/fields/ListBoxPopover/useCompositeFocus.d.ts +4 -12
- package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +2 -3
- package/dist/components/fields/ListBoxPopover/useCompositeFocus.js.map +1 -1
- package/dist/components/fields/NumberInput/NumberInput.d.ts +4 -6
- package/dist/components/fields/NumberInput/NumberInput.js +114 -110
- package/dist/components/fields/NumberInput/NumberInput.js.map +1 -1
- package/dist/components/fields/NumberInput/StepButton.js +2 -3
- package/dist/components/fields/NumberInput/StepButton.js.map +1 -1
- package/dist/components/fields/PasswordInput/PasswordInput.d.ts +3 -5
- package/dist/components/fields/PasswordInput/PasswordInput.js +4 -4
- package/dist/components/fields/PasswordInput/PasswordInput.js.map +1 -1
- package/dist/components/fields/Picker/Picker.d.ts +3 -5
- package/dist/components/fields/Picker/Picker.js +12 -10
- package/dist/components/fields/Picker/Picker.js.map +1 -1
- package/dist/components/fields/Picker/index.d.ts +2 -1
- package/dist/components/fields/RadioGroup/Radio.d.ts +30 -605
- package/dist/components/fields/RadioGroup/Radio.js +60 -65
- package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
- package/dist/components/fields/RadioGroup/RadioGroup.d.ts +5 -7
- package/dist/components/fields/RadioGroup/RadioGroup.js +19 -19
- package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/components/fields/RadioGroup/context.js +2 -3
- package/dist/components/fields/RadioGroup/context.js.map +1 -1
- package/dist/components/fields/RadioGroup/index.d.ts +3 -2
- package/dist/components/fields/SearchComboBox/SearchComboBox.d.ts +5 -6
- package/dist/components/fields/SearchComboBox/SearchComboBox.js +16 -16
- package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
- package/dist/components/fields/SearchComboBox/index.d.ts +2 -1
- package/dist/components/fields/SearchInput/SearchInput.d.ts +4 -6
- package/dist/components/fields/SearchInput/SearchInput.js +48 -49
- package/dist/components/fields/SearchInput/SearchInput.js.map +1 -1
- package/dist/components/fields/SearchInput/index.d.ts +2 -1
- package/dist/components/fields/Select/Select.d.ts +9 -29
- package/dist/components/fields/Select/Select.js +12 -10
- package/dist/components/fields/Select/Select.js.map +1 -1
- package/dist/components/fields/Select/index.d.ts +2 -1
- package/dist/components/fields/Slider/Gradation.js +2 -3
- package/dist/components/fields/Slider/Gradation.js.map +1 -1
- package/dist/components/fields/Slider/HueSlider.d.ts +3 -6
- package/dist/components/fields/Slider/HueSlider.js +5 -6
- package/dist/components/fields/Slider/HueSlider.js.map +1 -1
- package/dist/components/fields/Slider/RangeSlider.d.ts +3 -6
- package/dist/components/fields/Slider/RangeSlider.js +4 -5
- package/dist/components/fields/Slider/RangeSlider.js.map +1 -1
- package/dist/components/fields/Slider/Slider.d.ts +3 -6
- package/dist/components/fields/Slider/Slider.js +4 -5
- package/dist/components/fields/Slider/Slider.js.map +1 -1
- package/dist/components/fields/Slider/SliderBase.js +296 -88
- package/dist/components/fields/Slider/SliderBase.js.map +1 -1
- package/dist/components/fields/Slider/SliderThumb.js +2 -3
- package/dist/components/fields/Slider/SliderThumb.js.map +1 -1
- package/dist/components/fields/Slider/SliderTrack.js +2 -3
- package/dist/components/fields/Slider/SliderTrack.js.map +1 -1
- package/dist/components/fields/Slider/elements.js +2 -3
- package/dist/components/fields/Slider/elements.js.map +1 -1
- package/dist/components/fields/Slider/index.d.ts +4 -4
- package/dist/components/fields/Slider/index.js +5 -6
- package/dist/components/fields/Slider/types.d.ts +2 -3
- package/dist/components/fields/Switch/Switch.d.ts +4 -6
- package/dist/components/fields/Switch/Switch.js +78 -70
- package/dist/components/fields/Switch/Switch.js.map +1 -1
- package/dist/components/fields/TagInput/TagInput.d.ts +5 -6
- package/dist/components/fields/TagInput/TagInput.js +411 -998
- package/dist/components/fields/TagInput/TagInput.js.map +1 -1
- package/dist/components/fields/TagInput/TagList.js +3 -4
- package/dist/components/fields/TagInput/TagList.js.map +1 -1
- package/dist/components/fields/TagInput/index.d.ts +2 -1
- package/dist/components/fields/TagInput/useActiveOption.js +2 -3
- package/dist/components/fields/TagInput/useActiveOption.js.map +1 -1
- package/dist/components/fields/TagInput/useTagError.js +2 -3
- package/dist/components/fields/TagInput/useTagError.js.map +1 -1
- package/dist/components/fields/TextArea/TextArea.d.ts +4 -6
- package/dist/components/fields/TextArea/TextArea.js +4 -4
- package/dist/components/fields/TextArea/TextArea.js.map +1 -1
- package/dist/components/fields/TextArea/index.d.ts +2 -1
- package/dist/components/fields/TextInput/TextInput.d.ts +4 -6
- package/dist/components/fields/TextInput/TextInput.js +3 -3
- package/dist/components/fields/TextInput/TextInput.js.map +1 -1
- package/dist/components/fields/TextInput/TextInputBase.d.ts +6 -8
- package/dist/components/fields/TextInput/TextInputBase.js +10 -9
- package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
- package/dist/components/fields/TextInput/displayed-validation.js +2 -3
- package/dist/components/fields/TextInput/displayed-validation.js.map +1 -1
- package/dist/components/fields/TextInput/index.d.ts +2 -1
- package/dist/components/fields/TextInput/useAutoSizeTextArea.js +2 -3
- package/dist/components/fields/TextInput/useAutoSizeTextArea.js.map +1 -1
- package/dist/components/fields/TextInputMapper/TextInputMapper.d.ts +4 -6
- package/dist/components/fields/TextInputMapper/TextInputMapper.js +8 -10
- package/dist/components/fields/TextInputMapper/TextInputMapper.js.map +1 -1
- package/dist/components/fields/TextInputMapper/index.d.ts +2 -1
- package/dist/components/fields/TriggerActions.js +3 -4
- package/dist/components/fields/TriggerActions.js.map +1 -1
- package/dist/components/fields/color/ColorPanel.js +4 -5
- package/dist/components/fields/color/ColorPanel.js.map +1 -1
- package/dist/components/fields/color/channels.d.ts +2 -4
- package/dist/components/fields/color/channels.js +2 -3
- package/dist/components/fields/color/channels.js.map +1 -1
- package/dist/components/fields/color/color.d.ts +4 -5
- package/dist/components/fields/color/color.js +3 -4
- package/dist/components/fields/color/color.js.map +1 -1
- package/dist/components/fields/color/context.js +2 -3
- package/dist/components/fields/color/context.js.map +1 -1
- package/dist/components/fields/color/index.d.ts +2 -1
- package/dist/components/fields/index.d.ts +27 -26
- package/dist/components/fields/option-origin-press.js +3 -3
- package/dist/components/fields/option-origin-press.js.map +1 -1
- package/dist/components/form/FieldWrapper/FieldWrapper.d.ts +15 -19
- package/dist/components/form/FieldWrapper/FieldWrapper.js +123 -123
- package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
- package/dist/components/form/FieldWrapper/field-description.js +2 -3
- package/dist/components/form/FieldWrapper/field-description.js.map +1 -1
- package/dist/components/form/FieldWrapper/index.d.ts +2 -1
- package/dist/components/form/FieldWrapper/types.d.ts +20 -12
- package/dist/components/form/Form/Field.d.ts +2 -5
- package/dist/components/form/Form/Field.js +2 -3
- package/dist/components/form/Form/Field.js.map +1 -1
- package/dist/components/form/Form/Form.d.ts +6 -12
- package/dist/components/form/Form/Form.js +5 -6
- package/dist/components/form/Form/Form.js.map +1 -1
- package/dist/components/form/Form/ModernFormRoot.d.ts +1 -3
- package/dist/components/form/Form/ModernFormRoot.js +3 -4
- package/dist/components/form/Form/ModernFormRoot.js.map +1 -1
- package/dist/components/form/Form/ResetButton/ResetButton.d.ts +3 -6
- package/dist/components/form/Form/ResetButton/ResetButton.js +3 -4
- package/dist/components/form/Form/ResetButton/ResetButton.js.map +1 -1
- package/dist/components/form/Form/ResetButton/index.d.ts +2 -1
- package/dist/components/form/Form/SubmitButton/SubmitButton.d.ts +3 -6
- package/dist/components/form/Form/SubmitButton/SubmitButton.js +3 -4
- package/dist/components/form/Form/SubmitButton/SubmitButton.js.map +1 -1
- package/dist/components/form/Form/SubmitButton/index.d.ts +2 -1
- package/dist/components/form/Form/SubmitError.d.ts +3 -5
- package/dist/components/form/Form/SubmitError.js +3 -4
- package/dist/components/form/Form/SubmitError.js.map +1 -1
- package/dist/components/form/Form/backend.d.ts +3 -5
- package/dist/components/form/Form/backend.js +2 -2
- package/dist/components/form/Form/backend.js.map +1 -1
- package/dist/components/form/Form/index.d.ts +10 -24
- package/dist/components/form/Form/index.js +7 -8
- package/dist/components/form/Form/index.js.map +1 -1
- package/dist/components/form/Form/modern/actions.js +2 -3
- package/dist/components/form/Form/modern/actions.js.map +1 -1
- package/dist/components/form/Form/modern/context.d.ts +2 -4
- package/dist/components/form/Form/modern/context.js +2 -3
- package/dist/components/form/Form/modern/context.js.map +1 -1
- package/dist/components/form/Form/modern/controller.d.ts +9 -11
- package/dist/components/form/Form/modern/controller.js +2 -3
- package/dist/components/form/Form/modern/controller.js.map +1 -1
- package/dist/components/form/Form/modern/field-binding.js +2 -3
- package/dist/components/form/Form/modern/field-binding.js.map +1 -1
- package/dist/components/form/Form/modern/field.d.ts +4 -5
- package/dist/components/form/Form/modern/field.js +2 -3
- package/dist/components/form/Form/modern/field.js.map +1 -1
- package/dist/components/form/Form/modern/path-types.d.ts +4 -5
- package/dist/components/form/Form/modern/react.d.ts +7 -10
- package/dist/components/form/Form/modern/react.js +2 -3
- package/dist/components/form/Form/modern/react.js.map +1 -1
- package/dist/components/form/Form/modern/read-types.d.ts +3 -4
- package/dist/components/form/Form/modern/store.js +2 -3
- package/dist/components/form/Form/modern/store.js.map +1 -1
- package/dist/components/form/Form/modern/types.d.ts +18 -20
- package/dist/components/form/Form/modern/validation.d.ts +2 -4
- package/dist/components/form/Form/modern/validation.js +2 -3
- package/dist/components/form/Form/modern/validation.js.map +1 -1
- package/dist/components/form/Form/modern/values.d.ts +1 -2
- package/dist/components/form/Form/modern/values.js +2 -2
- package/dist/components/form/Form/modern/values.js.map +1 -1
- package/dist/components/form/Form/reset-unbound-controls.js +3 -5
- package/dist/components/form/Form/reset-unbound-controls.js.map +1 -1
- package/dist/components/form/Form/types.d.ts +4 -6
- package/dist/components/form/Form/use-field/index.d.ts +2 -1
- package/dist/components/form/Form/use-field/types.d.ts +6 -6
- package/dist/components/form/Form/use-field/use-field-binding.js +2 -3
- package/dist/components/form/Form/use-field/use-field-binding.js.map +1 -1
- package/dist/components/form/Form/use-field/use-field-props.d.ts +11 -9
- package/dist/components/form/Form/use-field/use-field-props.js +48 -42
- package/dist/components/form/Form/use-field/use-field-props.js.map +1 -1
- package/dist/components/form/Form/use-field/use-field.d.ts +2 -4
- package/dist/components/form/Form/use-field/use-field.js +2 -3
- package/dist/components/form/Form/use-field/use-field.js.map +1 -1
- package/dist/components/form/Form/use-form.d.ts +5 -6
- package/dist/components/form/Form/use-form.js +3 -4
- package/dist/components/form/Form/use-form.js.map +1 -1
- package/dist/components/form/Form/validation.js +2 -3
- package/dist/components/form/Form/validation.js.map +1 -1
- package/dist/components/form/Label.d.ts +7 -9
- package/dist/components/form/Label.js +3 -4
- package/dist/components/form/Label.js.map +1 -1
- package/dist/components/form/field-chrome.js +46 -6
- package/dist/components/form/field-chrome.js.map +1 -1
- package/dist/components/form/index.d.ts +8 -7
- package/dist/components/form/legacy-tooltip.js +2 -3
- package/dist/components/form/legacy-tooltip.js.map +1 -1
- package/dist/components/form/validation/ValidationIndicator.d.ts +4 -10
- package/dist/components/form/validation/ValidationIndicator.js +2 -3
- package/dist/components/form/validation/ValidationIndicator.js.map +1 -1
- package/dist/components/form/validation/index.d.ts +2 -1
- package/dist/components/form/validation/resolve-validation-props.d.ts +6 -17
- package/dist/components/form/validation/resolve-validation-props.js +2 -2
- package/dist/components/form/validation/resolve-validation-props.js.map +1 -1
- package/dist/components/form/validation/use-validation-props.d.ts +1 -3
- package/dist/components/form/validation/use-validation-props.js +2 -3
- package/dist/components/form/validation/use-validation-props.js.map +1 -1
- package/dist/components/form/wrapper.d.ts +23 -9
- package/dist/components/form/wrapper.js +20 -11
- package/dist/components/form/wrapper.js.map +1 -1
- package/dist/components/helpers/DisplayTransition/DisplayTransition.d.ts +22 -25
- package/dist/components/helpers/DisplayTransition/DisplayTransition.js +16 -16
- package/dist/components/helpers/DisplayTransition/DisplayTransition.js.map +1 -1
- package/dist/components/helpers/IconSwitch/IconSwitch.d.ts +3 -5
- package/dist/components/helpers/IconSwitch/IconSwitch.js +2 -3
- package/dist/components/helpers/IconSwitch/IconSwitch.js.map +1 -1
- package/dist/components/layout/Flex.d.ts +2 -5
- package/dist/components/layout/Flex.js +2 -3
- package/dist/components/layout/Flex.js.map +1 -1
- package/dist/components/layout/Flow.d.ts +2 -5
- package/dist/components/layout/Flow.js +2 -3
- package/dist/components/layout/Flow.js.map +1 -1
- package/dist/components/layout/Grid.d.ts +2 -5
- package/dist/components/layout/Grid.js +2 -3
- package/dist/components/layout/Grid.js.map +1 -1
- package/dist/components/layout/Panel.d.ts +3 -5
- package/dist/components/layout/Panel.js +22 -22
- package/dist/components/layout/Panel.js.map +1 -1
- package/dist/components/layout/Prefix.d.ts +2 -5
- package/dist/components/layout/Prefix.js +2 -3
- package/dist/components/layout/Prefix.js.map +1 -1
- package/dist/components/layout/ResizablePanel.d.ts +3 -5
- package/dist/components/layout/ResizablePanel.js +4 -5
- package/dist/components/layout/ResizablePanel.js.map +1 -1
- package/dist/components/layout/Space.d.ts +2 -5
- package/dist/components/layout/Space.js +2 -3
- package/dist/components/layout/Space.js.map +1 -1
- package/dist/components/layout/Suffix.d.ts +2 -5
- package/dist/components/layout/Suffix.js +2 -3
- package/dist/components/layout/Suffix.js.map +1 -1
- package/dist/components/navigation/Pagination/Pagination.d.ts +2 -4
- package/dist/components/navigation/Pagination/Pagination.js +9 -5
- package/dist/components/navigation/Pagination/Pagination.js.map +1 -1
- package/dist/components/navigation/Pagination/index.d.ts +3 -2
- package/dist/components/navigation/Pagination/types.d.ts +4 -6
- package/dist/components/navigation/Pagination/use-pagination.d.ts +11 -16
- package/dist/components/navigation/Pagination/use-pagination.js +2 -3
- package/dist/components/navigation/Pagination/use-pagination.js.map +1 -1
- package/dist/components/navigation/Tabs/BoardDragActiveProvider.d.ts +2 -5
- package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +2 -3
- package/dist/components/navigation/Tabs/BoardDragActiveProvider.js.map +1 -1
- package/dist/components/navigation/Tabs/DraggableTabList.js +2 -3
- package/dist/components/navigation/Tabs/DraggableTabList.js.map +1 -1
- package/dist/components/navigation/Tabs/TabButton.js +4 -5
- package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
- package/dist/components/navigation/Tabs/TabDropIndicator.js +2 -3
- package/dist/components/navigation/Tabs/TabDropIndicator.js.map +1 -1
- package/dist/components/navigation/Tabs/TabPanel.js +3 -4
- package/dist/components/navigation/Tabs/TabPanel.js.map +1 -1
- package/dist/components/navigation/Tabs/TabPicker.js +2 -3
- package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
- package/dist/components/navigation/Tabs/Tabs.d.ts +11 -13
- package/dist/components/navigation/Tabs/Tabs.js +8 -7
- package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
- package/dist/components/navigation/Tabs/TabsAction.d.ts +2 -6
- package/dist/components/navigation/Tabs/TabsAction.js +3 -4
- package/dist/components/navigation/Tabs/TabsAction.js.map +1 -1
- package/dist/components/navigation/Tabs/TabsContext.js +2 -3
- package/dist/components/navigation/Tabs/TabsContext.js.map +1 -1
- package/dist/components/navigation/Tabs/index.d.ts +3 -2
- package/dist/components/navigation/Tabs/popover-placement.js +2 -2
- package/dist/components/navigation/Tabs/popover-placement.js.map +1 -1
- package/dist/components/navigation/Tabs/styled.js +3 -4
- package/dist/components/navigation/Tabs/styled.js.map +1 -1
- package/dist/components/navigation/Tabs/types.d.ts +15 -16
- package/dist/components/navigation/Tabs/types.js +2 -2
- package/dist/components/navigation/Tabs/types.js.map +1 -1
- package/dist/components/navigation/Tabs/use-tab-editing.js +2 -3
- package/dist/components/navigation/Tabs/use-tab-editing.js.map +1 -1
- package/dist/components/navigation/Tabs/use-tab-indicator.js +2 -3
- package/dist/components/navigation/Tabs/use-tab-indicator.js.map +1 -1
- package/dist/components/navigation/index.d.ts +4 -3
- package/dist/components/organisms/StatsCard/StatsCard.d.ts +2 -10
- package/dist/components/organisms/StatsCard/StatsCard.js +4 -5
- package/dist/components/organisms/StatsCard/StatsCard.js.map +1 -1
- package/dist/components/other/Calendar/Calendar.js +3 -4
- package/dist/components/other/Calendar/Calendar.js.map +1 -1
- package/dist/components/other/Calendar/CalendarCell.js +2 -3
- package/dist/components/other/Calendar/CalendarCell.js.map +1 -1
- package/dist/components/other/Calendar/CalendarGrid.js +2 -3
- package/dist/components/other/Calendar/CalendarGrid.js.map +1 -1
- package/dist/components/other/Calendar/CalendarHeader.js +3 -4
- package/dist/components/other/Calendar/CalendarHeader.js.map +1 -1
- package/dist/components/other/Calendar/CalendarPanel.js +2 -3
- package/dist/components/other/Calendar/CalendarPanel.js.map +1 -1
- package/dist/components/other/Calendar/PeriodCalendar.js +2 -3
- package/dist/components/other/Calendar/PeriodCalendar.js.map +1 -1
- package/dist/components/other/Calendar/PeriodGrid.js +2 -3
- package/dist/components/other/Calendar/PeriodGrid.js.map +1 -1
- package/dist/components/other/Calendar/RangeCalendar.js +3 -4
- package/dist/components/other/Calendar/RangeCalendar.js.map +1 -1
- package/dist/components/other/Calendar/styled.js +2 -3
- package/dist/components/other/Calendar/styled.js.map +1 -1
- package/dist/components/other/CubeLogo/CubeLogo.d.ts +3 -6
- package/dist/components/other/CubeLogo/CubeLogo.js +2 -3
- package/dist/components/other/CubeLogo/CubeLogo.js.map +1 -1
- package/dist/components/other/NoDataIcon/NoDataIcon.d.ts +2 -5
- package/dist/components/other/NoDataIcon/NoDataIcon.js +2 -3
- package/dist/components/other/NoDataIcon/NoDataIcon.js.map +1 -1
- package/dist/components/other/NoDataIcon/index.d.ts +2 -1
- package/dist/components/overlays/AlertDialog/AlertDialog.d.ts +4 -6
- package/dist/components/overlays/AlertDialog/AlertDialog.js +4 -5
- package/dist/components/overlays/AlertDialog/AlertDialog.js.map +1 -1
- package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.d.ts +3 -6
- package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +3 -5
- package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js.map +1 -1
- package/dist/components/overlays/AlertDialog/AlertDialogZone.d.ts +1 -2
- package/dist/components/overlays/AlertDialog/AlertDialogZone.js +3 -4
- package/dist/components/overlays/AlertDialog/AlertDialogZone.js.map +1 -1
- package/dist/components/overlays/AlertDialog/index.d.ts +3 -2
- package/dist/components/overlays/AlertDialog/types.d.ts +5 -10
- package/dist/components/overlays/Dialog/Dialog.d.ts +6 -6
- package/dist/components/overlays/Dialog/Dialog.js +95 -33
- package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
- package/dist/components/overlays/Dialog/DialogContainer.d.ts +2 -5
- package/dist/components/overlays/Dialog/DialogContainer.js +4 -5
- package/dist/components/overlays/Dialog/DialogContainer.js.map +1 -1
- package/dist/components/overlays/Dialog/DialogForm.d.ts +5 -7
- package/dist/components/overlays/Dialog/DialogForm.js +5 -6
- package/dist/components/overlays/Dialog/DialogForm.js.map +1 -1
- package/dist/components/overlays/Dialog/DialogTrigger.d.ts +3 -6
- package/dist/components/overlays/Dialog/DialogTrigger.js +5 -6
- package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
- package/dist/components/overlays/Dialog/ModernDialogForm.js +5 -6
- package/dist/components/overlays/Dialog/ModernDialogForm.js.map +1 -1
- package/dist/components/overlays/Dialog/context.js +12 -4
- package/dist/components/overlays/Dialog/context.js.map +1 -1
- package/dist/components/overlays/Dialog/default-button-text.js +2 -2
- package/dist/components/overlays/Dialog/default-button-text.js.map +1 -1
- package/dist/components/overlays/Dialog/index.d.ts +2 -1
- package/dist/components/overlays/Dialog/use-content-overflow.js +2 -3
- package/dist/components/overlays/Dialog/use-content-overflow.js.map +1 -1
- package/dist/components/overlays/Dialog/use-dialog-container.d.ts +2 -5
- package/dist/components/overlays/Dialog/use-dialog-container.js +2 -3
- package/dist/components/overlays/Dialog/use-dialog-container.js.map +1 -1
- package/dist/components/overlays/Dialog/use-dialog-open-sync.js +2 -3
- package/dist/components/overlays/Dialog/use-dialog-open-sync.js.map +1 -1
- package/dist/components/overlays/Dialog/use-retained-dialog-focus.js +386 -0
- package/dist/components/overlays/Dialog/use-retained-dialog-focus.js.map +1 -0
- package/dist/components/overlays/Modal/Modal.d.ts +1 -2
- package/dist/components/overlays/Modal/Modal.js +5 -6
- package/dist/components/overlays/Modal/Modal.js.map +1 -1
- package/dist/components/overlays/Modal/OpenTransitionContext.js +2 -3
- package/dist/components/overlays/Modal/OpenTransitionContext.js.map +1 -1
- package/dist/components/overlays/Modal/Overlay.js +35 -14
- package/dist/components/overlays/Modal/Overlay.js.map +1 -1
- package/dist/components/overlays/Modal/Popover.js +4 -5
- package/dist/components/overlays/Modal/Popover.js.map +1 -1
- package/dist/components/overlays/Modal/Tray.js +5 -6
- package/dist/components/overlays/Modal/Tray.js.map +1 -1
- package/dist/components/overlays/Modal/Underlay.js +3 -4
- package/dist/components/overlays/Modal/Underlay.js.map +1 -1
- package/dist/components/overlays/Modal/index.d.ts +2 -1
- package/dist/components/overlays/Modal/modal-containment.js +2 -3
- package/dist/components/overlays/Modal/modal-containment.js.map +1 -1
- package/dist/components/overlays/Modal/types.d.ts +1 -3
- package/dist/components/overlays/Notifications/Notification.js +4 -4
- package/dist/components/overlays/Notifications/Notification.js.map +1 -1
- package/dist/components/overlays/Notifications/NotificationAction.d.ts +1 -10
- package/dist/components/overlays/Notifications/NotificationAction.js +2 -3
- package/dist/components/overlays/Notifications/NotificationAction.js.map +1 -1
- package/dist/components/overlays/Notifications/NotificationCard.d.ts +2 -18
- package/dist/components/overlays/Notifications/NotificationCard.js +3 -4
- package/dist/components/overlays/Notifications/NotificationCard.js.map +1 -1
- package/dist/components/overlays/Notifications/NotificationContext.d.ts +1 -4
- package/dist/components/overlays/Notifications/NotificationContext.js +2 -3
- package/dist/components/overlays/Notifications/NotificationContext.js.map +1 -1
- package/dist/components/overlays/Notifications/NotificationItem.d.ts +2 -9
- package/dist/components/overlays/Notifications/NotificationItem.js +2 -3
- package/dist/components/overlays/Notifications/NotificationItem.js.map +1 -1
- package/dist/components/overlays/Notifications/OverlayContainer.js +6 -8
- package/dist/components/overlays/Notifications/OverlayContainer.js.map +1 -1
- package/dist/components/overlays/Notifications/OverlayProvider.d.ts +1 -7
- package/dist/components/overlays/Notifications/OverlayProvider.js +3 -4
- package/dist/components/overlays/Notifications/OverlayProvider.js.map +1 -1
- package/dist/components/overlays/Notifications/PersistentNotificationsList.d.ts +1 -8
- package/dist/components/overlays/Notifications/PersistentNotificationsList.js +3 -4
- package/dist/components/overlays/Notifications/PersistentNotificationsList.js.map +1 -1
- package/dist/components/overlays/Notifications/dismissed-storage.js +2 -2
- package/dist/components/overlays/Notifications/dismissed-storage.js.map +1 -1
- package/dist/components/overlays/Notifications/format-relative-time.d.ts +1 -3
- package/dist/components/overlays/Notifications/format-relative-time.js +2 -2
- package/dist/components/overlays/Notifications/format-relative-time.js.map +1 -1
- package/dist/components/overlays/Notifications/index.d.ts +5 -6
- package/dist/components/overlays/Notifications/index.js +4 -5
- package/dist/components/overlays/Notifications/index.js.map +1 -1
- package/dist/components/overlays/Notifications/types.d.ts +14 -16
- package/dist/components/overlays/Notifications/use-notification-state.js +3 -4
- package/dist/components/overlays/Notifications/use-notification-state.js.map +1 -1
- package/dist/components/overlays/Notifications/use-notifications.d.ts +1 -3
- package/dist/components/overlays/Notifications/use-notifications.js +8 -7
- package/dist/components/overlays/Notifications/use-notifications.js.map +1 -1
- package/dist/components/overlays/Notifications/use-overlay-timers.js +2 -3
- package/dist/components/overlays/Notifications/use-overlay-timers.js.map +1 -1
- package/dist/components/overlays/Notifications/use-persistent-notifications.d.ts +2 -4
- package/dist/components/overlays/Notifications/use-persistent-notifications.js +2 -3
- package/dist/components/overlays/Notifications/use-persistent-notifications.js.map +1 -1
- package/dist/components/overlays/Notifications/use-persistent-state.js +2 -3
- package/dist/components/overlays/Notifications/use-persistent-state.js.map +1 -1
- package/dist/components/overlays/Notifications/use-toast-state.js +2 -3
- package/dist/components/overlays/Notifications/use-toast-state.js.map +1 -1
- package/dist/components/overlays/Toast/ToastItem.d.ts +3 -6
- package/dist/components/overlays/Toast/ToastItem.js +3 -4
- package/dist/components/overlays/Toast/ToastItem.js.map +1 -1
- package/dist/components/overlays/Toast/ToastProvider.d.ts +2 -1
- package/dist/components/overlays/Toast/index.d.ts +6 -7
- package/dist/components/overlays/Toast/index.js +3 -4
- package/dist/components/overlays/Toast/index.js.map +1 -1
- package/dist/components/overlays/Toast/types.d.ts +8 -10
- package/dist/components/overlays/Toast/useProgressToast.d.ts +1 -3
- package/dist/components/overlays/Toast/useProgressToast.js +11 -10
- package/dist/components/overlays/Toast/useProgressToast.js.map +1 -1
- package/dist/components/overlays/Toast/useToast.d.ts +2 -4
- package/dist/components/overlays/Toast/useToast.js +2 -3
- package/dist/components/overlays/Toast/useToast.js.map +1 -1
- package/dist/components/overlays/Tooltip/Tooltip.d.ts +3 -5
- package/dist/components/overlays/Tooltip/Tooltip.js +3 -4
- package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/overlays/Tooltip/TooltipProvider.d.ts +2 -4
- package/dist/components/overlays/Tooltip/TooltipProvider.js +3 -4
- package/dist/components/overlays/Tooltip/TooltipProvider.js.map +1 -1
- package/dist/components/overlays/Tooltip/TooltipTrigger.d.ts +3 -6
- package/dist/components/overlays/Tooltip/TooltipTrigger.js +4 -5
- package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
- package/dist/components/overlays/Tooltip/context.js +2 -3
- package/dist/components/overlays/Tooltip/context.js.map +1 -1
- package/dist/components/overlays/Tooltip/split-trigger-props.d.ts +2 -3
- package/dist/components/overlays/Tooltip/split-trigger-props.js +2 -3
- package/dist/components/overlays/Tooltip/split-trigger-props.js.map +1 -1
- package/dist/components/portal/Portal.d.ts +1 -4
- package/dist/components/portal/Portal.js +2 -3
- package/dist/components/portal/Portal.js.map +1 -1
- package/dist/components/portal/PortalProvider.js +2 -3
- package/dist/components/portal/PortalProvider.js.map +1 -1
- package/dist/components/portal/index.d.ts +2 -1
- package/dist/components/portal/types.d.ts +1 -3
- package/dist/components/portal/usePortal.js +2 -3
- package/dist/components/portal/usePortal.js.map +1 -1
- package/dist/components/shared/DraggableCollection.js +15 -15
- package/dist/components/shared/DraggableCollection.js.map +1 -1
- package/dist/components/shared/InvalidIcon.js +2 -3
- package/dist/components/shared/InvalidIcon.js.map +1 -1
- package/dist/components/shared/ValidIcon.js +2 -3
- package/dist/components/shared/ValidIcon.js.map +1 -1
- package/dist/components/status/LoadingAnimation/LoadingAnimation.d.ts +2 -8
- package/dist/components/status/LoadingAnimation/LoadingAnimation.js +2 -3
- package/dist/components/status/LoadingAnimation/LoadingAnimation.js.map +1 -1
- package/dist/components/status/LoadingAnimation/index.d.ts +2 -1
- package/dist/components/status/Spin/Cube.js +2 -3
- package/dist/components/status/Spin/Cube.js.map +1 -1
- package/dist/components/status/Spin/InternalSpinner.js +2 -3
- package/dist/components/status/Spin/InternalSpinner.js.map +1 -1
- package/dist/components/status/Spin/Spin.d.ts +1 -4
- package/dist/components/status/Spin/Spin.js +2 -3
- package/dist/components/status/Spin/Spin.js.map +1 -1
- package/dist/components/status/Spin/SpinsContainer.js +2 -3
- package/dist/components/status/Spin/SpinsContainer.js.map +1 -1
- package/dist/components/status/Spin/index.d.ts +2 -1
- package/dist/components/status/Spin/types.d.ts +2 -4
- package/dist/components/status/index.d.ts +2 -1
- package/dist/data/item-themes.d.ts +1 -3
- package/dist/data/item-themes.js +3 -3
- package/dist/data/item-themes.js.map +1 -1
- package/dist/data/themes.d.ts +9 -9
- package/dist/data/themes.js +10 -10
- package/dist/data/themes.js.map +1 -1
- package/dist/eslint-plugin/defaults.generated.d.ts +1 -3
- package/dist/eslint-plugin/defaults.generated.js +3 -8
- package/dist/eslint-plugin/defaults.generated.js.map +1 -1
- package/dist/eslint-plugin/index.d.ts +0 -1
- package/dist/eslint-plugin/index.js +2 -3
- package/dist/eslint-plugin/index.js.map +1 -1
- package/dist/eslint-plugin/rules/no-redundant-default-prop.d.ts +2 -4
- package/dist/eslint-plugin/rules/no-redundant-default-prop.js +2 -3
- package/dist/eslint-plugin/rules/no-redundant-default-prop.js.map +1 -1
- package/dist/eslint-plugin/types.d.ts +17 -10
- package/dist/i18n/I18nProvider.d.ts +2 -9
- package/dist/i18n/I18nProvider.js +2 -3
- package/dist/i18n/I18nProvider.js.map +1 -1
- package/dist/i18n/createFormatter.d.ts +6 -7
- package/dist/i18n/createFormatter.js +2 -2
- package/dist/i18n/createFormatter.js.map +1 -1
- package/dist/i18n/index.d.ts +2 -4
- package/dist/i18n/index.js +3 -4
- package/dist/i18n/index.js.map +1 -1
- package/dist/i18n/instance.d.ts +5 -6
- package/dist/i18n/instance.js +3 -4
- package/dist/i18n/instance.js.map +1 -1
- package/dist/i18n/locales/de-DE/uikit.js +2 -2
- package/dist/i18n/locales/en-US/uikit.js +2 -2
- package/dist/i18n/locales/en-US/uikit.json.d.ts +41 -41
- package/dist/i18n/locales/es-ES/uikit.js +2 -2
- package/dist/i18n/locales/es-MX/uikit.js +2 -2
- package/dist/i18n/locales/fr-FR/uikit.js +2 -2
- package/dist/i18n/locales/it-IT/uikit.js +2 -2
- package/dist/i18n/locales/ja-JP/uikit.js +2 -2
- package/dist/i18n/locales/nb-NO/uikit.js +2 -2
- package/dist/i18n/locales/pt-BR/uikit.js +2 -2
- package/dist/i18n/locales/pt-PT/uikit.js +2 -2
- package/dist/i18n/locales/sv-SE/uikit.js +2 -2
- package/dist/i18n/locales/vi-VN/uikit.js +2 -2
- package/dist/i18n/locales.d.ts +4 -5
- package/dist/i18n/locales.js +2 -2
- package/dist/i18n/locales.js.map +1 -1
- package/dist/i18n/namespace.d.ts +1 -2
- package/dist/i18n/namespace.js +2 -2
- package/dist/i18n/useFormatter.d.ts +1 -3
- package/dist/i18n/useFormatter.js +2 -3
- package/dist/i18n/useFormatter.js.map +1 -1
- package/dist/i18n/useI18n.js +2 -3
- package/dist/i18n/useI18n.js.map +1 -1
- package/dist/icons/AdjustmentsHorizontalIcon.d.ts +2 -5
- package/dist/icons/AdjustmentsHorizontalIcon.js +2 -3
- package/dist/icons/AdjustmentsHorizontalIcon.js.map +1 -1
- package/dist/icons/AdjustmentsIcon.d.ts +2 -5
- package/dist/icons/AdjustmentsIcon.js +2 -3
- package/dist/icons/AdjustmentsIcon.js.map +1 -1
- package/dist/icons/AiIcon.d.ts +2 -5
- package/dist/icons/AiIcon.js +2 -3
- package/dist/icons/AiIcon.js.map +1 -1
- package/dist/icons/AreaChartIcon.d.ts +2 -5
- package/dist/icons/AreaChartIcon.js +2 -3
- package/dist/icons/AreaChartIcon.js.map +1 -1
- package/dist/icons/ArrowNarrowDownIcon.d.ts +2 -5
- package/dist/icons/ArrowNarrowDownIcon.js +2 -3
- package/dist/icons/ArrowNarrowDownIcon.js.map +1 -1
- package/dist/icons/ArrowNarrowUpIcon.d.ts +2 -5
- package/dist/icons/ArrowNarrowUpIcon.js +2 -3
- package/dist/icons/ArrowNarrowUpIcon.js.map +1 -1
- package/dist/icons/BackwardIcon.d.ts +2 -5
- package/dist/icons/BackwardIcon.js +2 -3
- package/dist/icons/BackwardIcon.js.map +1 -1
- package/dist/icons/BarChartIcon.d.ts +2 -5
- package/dist/icons/BarChartIcon.js +2 -3
- package/dist/icons/BarChartIcon.js.map +1 -1
- package/dist/icons/BellFilledIcon.d.ts +2 -5
- package/dist/icons/BellFilledIcon.js +2 -3
- package/dist/icons/BellFilledIcon.js.map +1 -1
- package/dist/icons/BellIcon.d.ts +2 -5
- package/dist/icons/BellIcon.js +2 -3
- package/dist/icons/BellIcon.js.map +1 -1
- package/dist/icons/BooleanIcon.d.ts +2 -5
- package/dist/icons/BooleanIcon.js +2 -3
- package/dist/icons/BooleanIcon.js.map +1 -1
- package/dist/icons/CalendarEditIcon.d.ts +2 -5
- package/dist/icons/CalendarEditIcon.js +2 -3
- package/dist/icons/CalendarEditIcon.js.map +1 -1
- package/dist/icons/CalendarIcon.d.ts +2 -5
- package/dist/icons/CalendarIcon.js +2 -3
- package/dist/icons/CalendarIcon.js.map +1 -1
- package/dist/icons/CaretDownIcon.d.ts +2 -5
- package/dist/icons/CaretDownIcon.js +2 -3
- package/dist/icons/CaretDownIcon.js.map +1 -1
- package/dist/icons/CaretUpIcon.d.ts +2 -5
- package/dist/icons/CaretUpIcon.js +2 -3
- package/dist/icons/CaretUpIcon.js.map +1 -1
- package/dist/icons/ChartAreaStackedIcon.d.ts +2 -5
- package/dist/icons/ChartAreaStackedIcon.js +2 -3
- package/dist/icons/ChartAreaStackedIcon.js.map +1 -1
- package/dist/icons/ChartAreaStackedPercentageIcon.d.ts +2 -5
- package/dist/icons/ChartAreaStackedPercentageIcon.js +2 -3
- package/dist/icons/ChartAreaStackedPercentageIcon.js.map +1 -1
- package/dist/icons/ChartBarGroupedHorizontalIcon.d.ts +2 -5
- package/dist/icons/ChartBarGroupedHorizontalIcon.js +2 -3
- package/dist/icons/ChartBarGroupedHorizontalIcon.js.map +1 -1
- package/dist/icons/ChartBarGroupedIcon.d.ts +2 -5
- package/dist/icons/ChartBarGroupedIcon.js +2 -3
- package/dist/icons/ChartBarGroupedIcon.js.map +1 -1
- package/dist/icons/ChartBarHorizontalIcon.d.ts +2 -5
- package/dist/icons/ChartBarHorizontalIcon.js +2 -3
- package/dist/icons/ChartBarHorizontalIcon.js.map +1 -1
- package/dist/icons/ChartBarLineIcon.d.ts +2 -5
- package/dist/icons/ChartBarLineIcon.js +2 -3
- package/dist/icons/ChartBarLineIcon.js.map +1 -1
- package/dist/icons/ChartBarStackedHorizontalIcon.d.ts +2 -5
- package/dist/icons/ChartBarStackedHorizontalIcon.js +2 -3
- package/dist/icons/ChartBarStackedHorizontalIcon.js.map +1 -1
- package/dist/icons/ChartBarStackedIcon.d.ts +2 -5
- package/dist/icons/ChartBarStackedIcon.js +2 -3
- package/dist/icons/ChartBarStackedIcon.js.map +1 -1
- package/dist/icons/ChartBarStackedPercentageHorizontalIcon.d.ts +2 -5
- package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +2 -3
- package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js.map +1 -1
- package/dist/icons/ChartBarStackedPercentageIcon.d.ts +2 -5
- package/dist/icons/ChartBarStackedPercentageIcon.js +2 -3
- package/dist/icons/ChartBarStackedPercentageIcon.js.map +1 -1
- package/dist/icons/ChartBoxPlot2Icon.d.ts +2 -5
- package/dist/icons/ChartBoxPlot2Icon.js +2 -3
- package/dist/icons/ChartBoxPlot2Icon.js.map +1 -1
- package/dist/icons/ChartBoxPlotIcon.d.ts +2 -5
- package/dist/icons/ChartBoxPlotIcon.js +2 -3
- package/dist/icons/ChartBoxPlotIcon.js.map +1 -1
- package/dist/icons/ChartBubbleIcon.d.ts +2 -5
- package/dist/icons/ChartBubbleIcon.js +2 -3
- package/dist/icons/ChartBubbleIcon.js.map +1 -1
- package/dist/icons/ChartDonut2Icon.d.ts +2 -5
- package/dist/icons/ChartDonut2Icon.js +2 -3
- package/dist/icons/ChartDonut2Icon.js.map +1 -1
- package/dist/icons/ChartFunnelIcon.d.ts +2 -5
- package/dist/icons/ChartFunnelIcon.js +2 -3
- package/dist/icons/ChartFunnelIcon.js.map +1 -1
- package/dist/icons/ChartHeatmapIcon.d.ts +2 -5
- package/dist/icons/ChartHeatmapIcon.js +2 -3
- package/dist/icons/ChartHeatmapIcon.js.map +1 -1
- package/dist/icons/ChartKPIIcon.d.ts +2 -5
- package/dist/icons/ChartKPIIcon.js +2 -3
- package/dist/icons/ChartKPIIcon.js.map +1 -1
- package/dist/icons/ChartPie2Icon.d.ts +2 -5
- package/dist/icons/ChartPie2Icon.js +2 -3
- package/dist/icons/ChartPie2Icon.js.map +1 -1
- package/dist/icons/ChartScatterIcon.d.ts +2 -5
- package/dist/icons/ChartScatterIcon.js +2 -3
- package/dist/icons/ChartScatterIcon.js.map +1 -1
- package/dist/icons/CheckCircleFilledIcon.d.ts +2 -5
- package/dist/icons/CheckCircleFilledIcon.js +2 -3
- package/dist/icons/CheckCircleFilledIcon.js.map +1 -1
- package/dist/icons/CheckCircleIcon.d.ts +2 -5
- package/dist/icons/CheckCircleIcon.js +2 -3
- package/dist/icons/CheckCircleIcon.js.map +1 -1
- package/dist/icons/CheckIcon.d.ts +2 -5
- package/dist/icons/CheckIcon.js +2 -3
- package/dist/icons/CheckIcon.js.map +1 -1
- package/dist/icons/CircleFilledIcon.d.ts +2 -5
- package/dist/icons/CircleFilledIcon.js +2 -3
- package/dist/icons/CircleFilledIcon.js.map +1 -1
- package/dist/icons/ClearIcon.d.ts +2 -5
- package/dist/icons/ClearIcon.js +2 -3
- package/dist/icons/ClearIcon.js.map +1 -1
- package/dist/icons/CloseCircleFilledIcon.d.ts +2 -5
- package/dist/icons/CloseCircleFilledIcon.js +2 -3
- package/dist/icons/CloseCircleFilledIcon.js.map +1 -1
- package/dist/icons/CloseCircleIcon.d.ts +2 -5
- package/dist/icons/CloseCircleIcon.js +2 -3
- package/dist/icons/CloseCircleIcon.js.map +1 -1
- package/dist/icons/CloseIcon.d.ts +2 -5
- package/dist/icons/CloseIcon.js +2 -3
- package/dist/icons/CloseIcon.js.map +1 -1
- package/dist/icons/CodeIcon.d.ts +2 -5
- package/dist/icons/CodeIcon.js +2 -3
- package/dist/icons/CodeIcon.js.map +1 -1
- package/dist/icons/ColumnTotalIcon.d.ts +2 -5
- package/dist/icons/ColumnTotalIcon.js +2 -3
- package/dist/icons/ColumnTotalIcon.js.map +1 -1
- package/dist/icons/CopyIcon.d.ts +2 -5
- package/dist/icons/CopyIcon.js +2 -3
- package/dist/icons/CopyIcon.js.map +1 -1
- package/dist/icons/CountIcon.d.ts +2 -5
- package/dist/icons/CountIcon.js +2 -3
- package/dist/icons/CountIcon.js.map +1 -1
- package/dist/icons/CubeIcon.d.ts +2 -5
- package/dist/icons/CubeIcon.js +2 -3
- package/dist/icons/CubeIcon.js.map +1 -1
- package/dist/icons/CubePauseIcon.d.ts +2 -5
- package/dist/icons/CubePauseIcon.js +2 -3
- package/dist/icons/CubePauseIcon.js.map +1 -1
- package/dist/icons/CubePlayIcon.d.ts +2 -5
- package/dist/icons/CubePlayIcon.js +2 -3
- package/dist/icons/CubePlayIcon.js.map +1 -1
- package/dist/icons/CurrencyDollarIcon.d.ts +2 -5
- package/dist/icons/CurrencyDollarIcon.js +2 -3
- package/dist/icons/CurrencyDollarIcon.js.map +1 -1
- package/dist/icons/DangerIcon.d.ts +2 -5
- package/dist/icons/DangerIcon.js +2 -3
- package/dist/icons/DangerIcon.js.map +1 -1
- package/dist/icons/DashboardIcon.d.ts +2 -5
- package/dist/icons/DashboardIcon.js +2 -3
- package/dist/icons/DashboardIcon.js.map +1 -1
- package/dist/icons/DatabaseIcon.d.ts +2 -5
- package/dist/icons/DatabaseIcon.js +2 -3
- package/dist/icons/DatabaseIcon.js.map +1 -1
- package/dist/icons/DecimalDecreaseIcon.d.ts +2 -5
- package/dist/icons/DecimalDecreaseIcon.js +2 -3
- package/dist/icons/DecimalDecreaseIcon.js.map +1 -1
- package/dist/icons/DecimalIncreaseIcon.d.ts +2 -5
- package/dist/icons/DecimalIncreaseIcon.js +2 -3
- package/dist/icons/DecimalIncreaseIcon.js.map +1 -1
- package/dist/icons/DirectionIcon.d.ts +3 -5
- package/dist/icons/DirectionIcon.js +2 -3
- package/dist/icons/DirectionIcon.js.map +1 -1
- package/dist/icons/DonutIcon.d.ts +2 -5
- package/dist/icons/DonutIcon.js +2 -3
- package/dist/icons/DonutIcon.js.map +1 -1
- package/dist/icons/DownIcon.d.ts +2 -5
- package/dist/icons/DownIcon.js +2 -3
- package/dist/icons/DownIcon.js.map +1 -1
- package/dist/icons/EditIcon.d.ts +2 -5
- package/dist/icons/EditIcon.js +2 -3
- package/dist/icons/EditIcon.js.map +1 -1
- package/dist/icons/ExclamationCircleFilledIcon.d.ts +2 -5
- package/dist/icons/ExclamationCircleFilledIcon.js +2 -3
- package/dist/icons/ExclamationCircleFilledIcon.js.map +1 -1
- package/dist/icons/ExclamationCircleIcon.d.ts +2 -5
- package/dist/icons/ExclamationCircleIcon.js +2 -3
- package/dist/icons/ExclamationCircleIcon.js.map +1 -1
- package/dist/icons/ExclamationIcon.d.ts +2 -5
- package/dist/icons/ExclamationIcon.js +2 -3
- package/dist/icons/ExclamationIcon.js.map +1 -1
- package/dist/icons/EyeIcon.d.ts +2 -5
- package/dist/icons/EyeIcon.js +2 -3
- package/dist/icons/EyeIcon.js.map +1 -1
- package/dist/icons/EyeInvisibleIcon.d.ts +2 -5
- package/dist/icons/EyeInvisibleIcon.js +2 -3
- package/dist/icons/EyeInvisibleIcon.js.map +1 -1
- package/dist/icons/FilterIcon.d.ts +2 -5
- package/dist/icons/FilterIcon.js +2 -3
- package/dist/icons/FilterIcon.js.map +1 -1
- package/dist/icons/FolderFilledIcon.d.ts +2 -5
- package/dist/icons/FolderFilledIcon.js +2 -3
- package/dist/icons/FolderFilledIcon.js.map +1 -1
- package/dist/icons/FolderIcon.d.ts +2 -5
- package/dist/icons/FolderIcon.js +2 -3
- package/dist/icons/FolderIcon.js.map +1 -1
- package/dist/icons/FolderOpenFilledIcon.d.ts +2 -5
- package/dist/icons/FolderOpenFilledIcon.js +2 -3
- package/dist/icons/FolderOpenFilledIcon.js.map +1 -1
- package/dist/icons/FolderOpenIcon.d.ts +2 -5
- package/dist/icons/FolderOpenIcon.js +2 -3
- package/dist/icons/FolderOpenIcon.js.map +1 -1
- package/dist/icons/ForwardIcon.d.ts +2 -5
- package/dist/icons/ForwardIcon.js +2 -3
- package/dist/icons/ForwardIcon.js.map +1 -1
- package/dist/icons/GripVerticalIcon.d.ts +2 -5
- package/dist/icons/GripVerticalIcon.js +2 -3
- package/dist/icons/GripVerticalIcon.js.map +1 -1
- package/dist/icons/HierarchyIcon.d.ts +2 -5
- package/dist/icons/HierarchyIcon.js +2 -3
- package/dist/icons/HierarchyIcon.js.map +1 -1
- package/dist/icons/HierarchyOpenIcon.d.ts +2 -5
- package/dist/icons/HierarchyOpenIcon.js +2 -3
- package/dist/icons/HierarchyOpenIcon.js.map +1 -1
- package/dist/icons/Icon.d.ts +2 -5
- package/dist/icons/Icon.js +2 -3
- package/dist/icons/Icon.js.map +1 -1
- package/dist/icons/InfoCircleIcon.d.ts +2 -5
- package/dist/icons/InfoCircleIcon.js +2 -3
- package/dist/icons/InfoCircleIcon.js.map +1 -1
- package/dist/icons/InfoIcon.d.ts +2 -5
- package/dist/icons/InfoIcon.js +2 -3
- package/dist/icons/InfoIcon.js.map +1 -1
- package/dist/icons/KeyIcon.d.ts +2 -5
- package/dist/icons/KeyIcon.js +2 -3
- package/dist/icons/KeyIcon.js.map +1 -1
- package/dist/icons/LeftIcon.d.ts +2 -5
- package/dist/icons/LeftIcon.js +2 -3
- package/dist/icons/LeftIcon.js.map +1 -1
- package/dist/icons/LineChartIcon.d.ts +2 -5
- package/dist/icons/LineChartIcon.js +2 -3
- package/dist/icons/LineChartIcon.js.map +1 -1
- package/dist/icons/LoadingIcon.d.ts +2 -5
- package/dist/icons/LoadingIcon.js +2 -3
- package/dist/icons/LoadingIcon.js.map +1 -1
- package/dist/icons/LockFilledIcon.d.ts +2 -5
- package/dist/icons/LockFilledIcon.js +2 -3
- package/dist/icons/LockFilledIcon.js.map +1 -1
- package/dist/icons/LockIcon.d.ts +2 -5
- package/dist/icons/LockIcon.js +2 -3
- package/dist/icons/LockIcon.js.map +1 -1
- package/dist/icons/MoreIcon.d.ts +2 -5
- package/dist/icons/MoreIcon.js +2 -3
- package/dist/icons/MoreIcon.js.map +1 -1
- package/dist/icons/NotAllowedIcon.d.ts +2 -5
- package/dist/icons/NotAllowedIcon.js +2 -3
- package/dist/icons/NotAllowedIcon.js.map +1 -1
- package/dist/icons/Number123Icon.d.ts +2 -5
- package/dist/icons/Number123Icon.js +2 -3
- package/dist/icons/Number123Icon.js.map +1 -1
- package/dist/icons/NumberIcon.d.ts +2 -5
- package/dist/icons/NumberIcon.js +2 -3
- package/dist/icons/NumberIcon.js.map +1 -1
- package/dist/icons/PauseCircleFilledIcon.d.ts +2 -5
- package/dist/icons/PauseCircleFilledIcon.js +2 -3
- package/dist/icons/PauseCircleFilledIcon.js.map +1 -1
- package/dist/icons/PauseCircleIcon.d.ts +2 -5
- package/dist/icons/PauseCircleIcon.js +2 -3
- package/dist/icons/PauseCircleIcon.js.map +1 -1
- package/dist/icons/PauseIcon.d.ts +2 -5
- package/dist/icons/PauseIcon.js +2 -3
- package/dist/icons/PauseIcon.js.map +1 -1
- package/dist/icons/PercentageIcon.d.ts +2 -5
- package/dist/icons/PercentageIcon.js +2 -3
- package/dist/icons/PercentageIcon.js.map +1 -1
- package/dist/icons/PieChartIcon.d.ts +2 -5
- package/dist/icons/PieChartIcon.js +2 -3
- package/dist/icons/PieChartIcon.js.map +1 -1
- package/dist/icons/PipetteIcon.d.ts +2 -5
- package/dist/icons/PipetteIcon.js +2 -3
- package/dist/icons/PipetteIcon.js.map +1 -1
- package/dist/icons/PlayCircleIcon.d.ts +2 -5
- package/dist/icons/PlayCircleIcon.js +2 -3
- package/dist/icons/PlayCircleIcon.js.map +1 -1
- package/dist/icons/PlayIcon.d.ts +2 -5
- package/dist/icons/PlayIcon.js +2 -3
- package/dist/icons/PlayIcon.js.map +1 -1
- package/dist/icons/PlusIcon.d.ts +2 -5
- package/dist/icons/PlusIcon.js +2 -3
- package/dist/icons/PlusIcon.js.map +1 -1
- package/dist/icons/ProgressBarIcon.d.ts +2 -5
- package/dist/icons/ProgressBarIcon.js +2 -3
- package/dist/icons/ProgressBarIcon.js.map +1 -1
- package/dist/icons/ReloadIcon.d.ts +2 -5
- package/dist/icons/ReloadIcon.js +2 -3
- package/dist/icons/ReloadIcon.js.map +1 -1
- package/dist/icons/ReportIcon.d.ts +2 -5
- package/dist/icons/ReportIcon.js +2 -3
- package/dist/icons/ReportIcon.js.map +1 -1
- package/dist/icons/ReturnIcon.d.ts +2 -5
- package/dist/icons/ReturnIcon.js +2 -3
- package/dist/icons/ReturnIcon.js.map +1 -1
- package/dist/icons/RightIcon.d.ts +2 -5
- package/dist/icons/RightIcon.js +2 -3
- package/dist/icons/RightIcon.js.map +1 -1
- package/dist/icons/RowTotalsIcon.d.ts +2 -5
- package/dist/icons/RowTotalsIcon.js +2 -3
- package/dist/icons/RowTotalsIcon.js.map +1 -1
- package/dist/icons/SchemeIcon.d.ts +2 -5
- package/dist/icons/SchemeIcon.js +2 -3
- package/dist/icons/SchemeIcon.js.map +1 -1
- package/dist/icons/SearchIcon.d.ts +2 -5
- package/dist/icons/SearchIcon.js +2 -3
- package/dist/icons/SearchIcon.js.map +1 -1
- package/dist/icons/SemanticQueryIcon.d.ts +2 -5
- package/dist/icons/SemanticQueryIcon.js +2 -3
- package/dist/icons/SemanticQueryIcon.js.map +1 -1
- package/dist/icons/SettingsIcon.d.ts +2 -5
- package/dist/icons/SettingsIcon.js +2 -3
- package/dist/icons/SettingsIcon.js.map +1 -1
- package/dist/icons/ShieldFilledIcon.d.ts +2 -5
- package/dist/icons/ShieldFilledIcon.js +2 -3
- package/dist/icons/ShieldFilledIcon.js.map +1 -1
- package/dist/icons/ShieldIcon.d.ts +2 -5
- package/dist/icons/ShieldIcon.js +2 -3
- package/dist/icons/ShieldIcon.js.map +1 -1
- package/dist/icons/SlashIcon.d.ts +2 -5
- package/dist/icons/SlashIcon.js +2 -3
- package/dist/icons/SlashIcon.js.map +1 -1
- package/dist/icons/SparklesIcon.d.ts +2 -5
- package/dist/icons/SparklesIcon.js +2 -3
- package/dist/icons/SparklesIcon.js.map +1 -1
- package/dist/icons/SqlIcon.d.ts +2 -5
- package/dist/icons/SqlIcon.js +2 -3
- package/dist/icons/SqlIcon.js.map +1 -1
- package/dist/icons/StatsIcon.d.ts +2 -5
- package/dist/icons/StatsIcon.js +2 -3
- package/dist/icons/StatsIcon.js.map +1 -1
- package/dist/icons/StopIcon.d.ts +2 -5
- package/dist/icons/StopIcon.js +2 -3
- package/dist/icons/StopIcon.js.map +1 -1
- package/dist/icons/StringIcon.d.ts +2 -5
- package/dist/icons/StringIcon.js +2 -3
- package/dist/icons/StringIcon.js.map +1 -1
- package/dist/icons/SubtotalsIcon.d.ts +2 -5
- package/dist/icons/SubtotalsIcon.js +2 -3
- package/dist/icons/SubtotalsIcon.js.map +1 -1
- package/dist/icons/SwitchIcon.d.ts +2 -5
- package/dist/icons/SwitchIcon.js +2 -3
- package/dist/icons/SwitchIcon.js.map +1 -1
- package/dist/icons/TableIcon.d.ts +2 -5
- package/dist/icons/TableIcon.js +2 -3
- package/dist/icons/TableIcon.js.map +1 -1
- package/dist/icons/ThumbsDownIcon.d.ts +2 -5
- package/dist/icons/ThumbsDownIcon.js +2 -3
- package/dist/icons/ThumbsDownIcon.js.map +1 -1
- package/dist/icons/ThumbsUpIcon.d.ts +2 -5
- package/dist/icons/ThumbsUpIcon.js +2 -3
- package/dist/icons/ThumbsUpIcon.js.map +1 -1
- package/dist/icons/ThunderboltCrossedIcon.d.ts +2 -5
- package/dist/icons/ThunderboltCrossedIcon.js +2 -3
- package/dist/icons/ThunderboltCrossedIcon.js.map +1 -1
- package/dist/icons/ThunderboltFilledIcon.d.ts +2 -5
- package/dist/icons/ThunderboltFilledIcon.js +2 -3
- package/dist/icons/ThunderboltFilledIcon.js.map +1 -1
- package/dist/icons/ThunderboltIcon.d.ts +2 -5
- package/dist/icons/ThunderboltIcon.js +2 -3
- package/dist/icons/ThunderboltIcon.js.map +1 -1
- package/dist/icons/TimeIcon.d.ts +2 -5
- package/dist/icons/TimeIcon.js +2 -3
- package/dist/icons/TimeIcon.js.map +1 -1
- package/dist/icons/TrashIcon.d.ts +2 -5
- package/dist/icons/TrashIcon.js +2 -3
- package/dist/icons/TrashIcon.js.map +1 -1
- package/dist/icons/UnlockIcon.d.ts +2 -5
- package/dist/icons/UnlockIcon.js +2 -3
- package/dist/icons/UnlockIcon.js.map +1 -1
- package/dist/icons/UpIcon.d.ts +2 -5
- package/dist/icons/UpIcon.js +2 -3
- package/dist/icons/UpIcon.js.map +1 -1
- package/dist/icons/UserGroupIcon.d.ts +2 -5
- package/dist/icons/UserGroupIcon.js +2 -3
- package/dist/icons/UserGroupIcon.js.map +1 -1
- package/dist/icons/UserIcon.d.ts +2 -5
- package/dist/icons/UserIcon.js +2 -3
- package/dist/icons/UserIcon.js.map +1 -1
- package/dist/icons/UserLockIcon.d.ts +2 -5
- package/dist/icons/UserLockIcon.js +2 -3
- package/dist/icons/UserLockIcon.js.map +1 -1
- package/dist/icons/ViewIcon.d.ts +2 -5
- package/dist/icons/ViewIcon.js +2 -3
- package/dist/icons/ViewIcon.js.map +1 -1
- package/dist/icons/WarningFilledIcon.d.ts +2 -5
- package/dist/icons/WarningFilledIcon.js +2 -3
- package/dist/icons/WarningFilledIcon.js.map +1 -1
- package/dist/icons/WarningIcon.d.ts +2 -5
- package/dist/icons/WarningIcon.js +2 -3
- package/dist/icons/WarningIcon.js.map +1 -1
- package/dist/icons/index.d.ts +2 -1
- package/dist/icons/wrap-icon.d.ts +2 -5
- package/dist/icons/wrap-icon.js +2 -3
- package/dist/icons/wrap-icon.js.map +1 -1
- package/dist/index.d.ts +82 -78
- package/dist/index.js +59 -64
- package/dist/index.js.map +1 -1
- package/dist/probe/canonicalize.d.ts +3 -4
- package/dist/probe/canonicalize.js +2 -2
- package/dist/probe/canonicalize.js.map +1 -1
- package/dist/probe/css.d.ts +4 -5
- package/dist/probe/css.js +2 -3
- package/dist/probe/css.js.map +1 -1
- package/dist/probe/index.js +2 -3
- package/dist/props.d.ts +1 -2
- package/dist/provider.d.ts +3 -6
- package/dist/provider.js +2 -3
- package/dist/provider.js.map +1 -1
- package/dist/providers/TrackingProvider.d.ts +1 -3
- package/dist/providers/TrackingProvider.js +3 -4
- package/dist/providers/TrackingProvider.js.map +1 -1
- package/dist/providers/navigation-url.js +2 -2
- package/dist/providers/navigation-url.js.map +1 -1
- package/dist/providers/navigation.types.d.ts +7 -8
- package/dist/providers/navigationAdapter.default.d.ts +1 -3
- package/dist/providers/navigationAdapter.default.js +6 -4
- package/dist/providers/navigationAdapter.default.js.map +1 -1
- package/dist/providers/use-navigation.js +2 -3
- package/dist/providers/use-navigation.js.map +1 -1
- package/dist/shared/form.d.ts +33 -23
- package/dist/shared/index.d.ts +4 -5
- package/dist/tokens/all-tokens.d.ts +2 -4
- package/dist/tokens/all-tokens.js +2 -3
- package/dist/tokens/all-tokens.js.map +1 -1
- package/dist/tokens/base.d.ts +1 -3
- package/dist/tokens/base.js +38 -2
- package/dist/tokens/base.js.map +1 -1
- package/dist/tokens/color-seed.d.ts +2 -3
- package/dist/tokens/color-seed.js +2 -3
- package/dist/tokens/color-seed.js.map +1 -1
- package/dist/tokens/color-theme.d.ts +5 -7
- package/dist/tokens/color-theme.js +5 -6
- package/dist/tokens/color-theme.js.map +1 -1
- package/dist/tokens/colors.d.ts +3 -5
- package/dist/tokens/colors.js +2 -3
- package/dist/tokens/colors.js.map +1 -1
- package/dist/tokens/index.d.ts +2 -1
- package/dist/tokens/layout.d.ts +1 -3
- package/dist/tokens/layout.js +7 -2
- package/dist/tokens/layout.js.map +1 -1
- package/dist/tokens/lazy-styles.js +2 -2
- package/dist/tokens/lazy-styles.js.map +1 -1
- package/dist/tokens/legacy-color.d.ts +3 -4
- package/dist/tokens/legacy-color.js +2 -3
- package/dist/tokens/legacy-color.js.map +1 -1
- package/dist/tokens/palette-config.d.ts +19 -20
- package/dist/tokens/palette-config.js +9 -24
- package/dist/tokens/palette-config.js.map +1 -1
- package/dist/tokens/palette.d.ts +6 -8
- package/dist/tokens/palette.js +73 -89
- package/dist/tokens/palette.js.map +1 -1
- package/dist/tokens/resolve.d.ts +8 -9
- package/dist/tokens/resolve.js +5 -6
- package/dist/tokens/resolve.js.map +1 -1
- package/dist/tokens/shadows.d.ts +1 -3
- package/dist/tokens/shadows.js +6 -2
- package/dist/tokens/shadows.js.map +1 -1
- package/dist/tokens/sizes.d.ts +5 -7
- package/dist/tokens/sizes.js +2 -2
- package/dist/tokens/sizes.js.map +1 -1
- package/dist/tokens/spacing.d.ts +1 -3
- package/dist/tokens/spacing.js +2 -2
- package/dist/tokens/spacing.js.map +1 -1
- package/dist/tokens/typography.d.ts +2 -3
- package/dist/tokens/typography.js +2 -2
- package/dist/tokens/typography.js.map +1 -1
- package/dist/utils/ResizeSensor.d.ts +1 -2
- package/dist/utils/ResizeSensor.js +11 -9
- package/dist/utils/ResizeSensor.js.map +1 -1
- package/dist/utils/colors.js +3 -4
- package/dist/utils/colors.js.map +1 -1
- package/dist/utils/dotize.js +2 -2
- package/dist/utils/dotize.js.map +1 -1
- package/dist/utils/index.d.ts +3 -2
- package/dist/utils/is-dev-env.js +2 -2
- package/dist/utils/is-dev-env.js.map +1 -1
- package/dist/utils/modules.d.ts +1 -2
- package/dist/utils/modules.js +2 -2
- package/dist/utils/modules.js.map +1 -1
- package/dist/utils/promise.d.ts +1 -2
- package/dist/utils/promise.js +2 -2
- package/dist/utils/promise.js.map +1 -1
- package/dist/utils/raf.d.ts +1 -2
- package/dist/utils/raf.js +2 -2
- package/dist/utils/raf.js.map +1 -1
- package/dist/utils/random.d.ts +2 -3
- package/dist/utils/random.js +3 -4
- package/dist/utils/random.js.map +1 -1
- package/dist/utils/range.d.ts +1 -2
- package/dist/utils/range.js +2 -2
- package/dist/utils/range.js.map +1 -1
- package/dist/utils/react/RenderCache.d.ts +2 -9
- package/dist/utils/react/RenderCache.js +2 -3
- package/dist/utils/react/RenderCache.js.map +1 -1
- package/dist/utils/react/Slots.d.ts +3 -6
- package/dist/utils/react/Slots.js +2 -3
- package/dist/utils/react/Slots.js.map +1 -1
- package/dist/utils/react/chain.d.ts +1 -2
- package/dist/utils/react/chain.js +2 -2
- package/dist/utils/react/chain.js.map +1 -1
- package/dist/utils/react/disabledProps.d.ts +4 -10
- package/dist/utils/react/disabledProps.js +3 -3
- package/dist/utils/react/disabledProps.js.map +1 -1
- package/dist/utils/react/forwardRefWithGenerics.d.ts +2 -5
- package/dist/utils/react/forwardRefWithGenerics.js +2 -2
- package/dist/utils/react/forwardRefWithGenerics.js.map +1 -1
- package/dist/utils/react/index.d.ts +2 -2
- package/dist/utils/react/index.js +2 -3
- package/dist/utils/react/interactions.js +2 -3
- package/dist/utils/react/interactions.js.map +1 -1
- package/dist/utils/react/isTextOnly.d.ts +1 -2
- package/dist/utils/react/isTextOnly.js +2 -3
- package/dist/utils/react/isTextOnly.js.map +1 -1
- package/dist/utils/react/mapProps.js +2 -2
- package/dist/utils/react/mapProps.js.map +1 -1
- package/dist/utils/react/mergeProps.d.ts +2 -3
- package/dist/utils/react/mergeProps.js +2 -3
- package/dist/utils/react/mergeProps.js.map +1 -1
- package/dist/utils/react/nullableValue.d.ts +1 -3
- package/dist/utils/react/nullableValue.js +3 -3
- package/dist/utils/react/nullableValue.js.map +1 -1
- package/dist/utils/react/overlayKeyPropagation.js +3 -3
- package/dist/utils/react/overlayKeyPropagation.js.map +1 -1
- package/dist/utils/react/programmaticFocus.js +2 -2
- package/dist/utils/react/programmaticFocus.js.map +1 -1
- package/dist/utils/react/resolveIcon.d.ts +4 -6
- package/dist/utils/react/resolveIcon.js +2 -2
- package/dist/utils/react/resolveIcon.js.map +1 -1
- package/dist/utils/react/sharedStore.js +2 -3
- package/dist/utils/react/sharedStore.js.map +1 -1
- package/dist/utils/react/useBufferedValue.d.ts +3 -4
- package/dist/utils/react/useBufferedValue.js +2 -3
- package/dist/utils/react/useBufferedValue.js.map +1 -1
- package/dist/utils/react/useCombinedRefs.d.ts +2 -4
- package/dist/utils/react/useCombinedRefs.js +2 -3
- package/dist/utils/react/useCombinedRefs.js.map +1 -1
- package/dist/utils/react/useControlledFocusVisible.d.ts +2 -3
- package/dist/utils/react/useControlledFocusVisible.js +2 -3
- package/dist/utils/react/useControlledFocusVisible.js.map +1 -1
- package/dist/utils/react/useEventBus.d.ts +6 -10
- package/dist/utils/react/useEventBus.js +2 -3
- package/dist/utils/react/useEventBus.js.map +1 -1
- package/dist/utils/react/useId.js +3 -4
- package/dist/utils/react/useId.js.map +1 -1
- package/dist/utils/react/useIsDarwin.js +2 -3
- package/dist/utils/react/useIsDarwin.js.map +1 -1
- package/dist/utils/react/useKeySymbols.js +2 -3
- package/dist/utils/react/useKeySymbols.js.map +1 -1
- package/dist/utils/react/useLayoutEffect.d.ts +0 -1
- package/dist/utils/react/useLayoutEffect.js +2 -3
- package/dist/utils/react/useLayoutEffect.js.map +1 -1
- package/dist/utils/react/useLocalStorage.d.ts +2 -2
- package/dist/utils/react/useLocalStorage.js +2 -3
- package/dist/utils/react/useLocalStorage.js.map +1 -1
- package/dist/utils/react/useMergeStyles.d.ts +1 -3
- package/dist/utils/react/useMergeStyles.js +4 -4
- package/dist/utils/react/useMergeStyles.js.map +1 -1
- package/dist/utils/react/useOverlayEscapeGuard.js +2 -3
- package/dist/utils/react/useOverlayEscapeGuard.js.map +1 -1
- package/dist/utils/react/usePopoverSync.d.ts +3 -14
- package/dist/utils/react/usePopoverSync.js +2 -3
- package/dist/utils/react/usePopoverSync.js.map +1 -1
- package/dist/utils/react/useQaProps.d.ts +2 -2
- package/dist/utils/react/useQaProps.js +6 -4
- package/dist/utils/react/useQaProps.js.map +1 -1
- package/dist/utils/react/useScheme.d.ts +6 -7
- package/dist/utils/react/useScheme.js +2 -3
- package/dist/utils/react/useScheme.js.map +1 -1
- package/dist/utils/react/useViewportSize.d.ts +3 -3
- package/dist/utils/react/useViewportSize.js +2 -3
- package/dist/utils/react/useViewportSize.js.map +1 -1
- package/dist/utils/react/wrapNodeIfPlain.d.ts +1 -3
- package/dist/utils/react/wrapNodeIfPlain.js +2 -3
- package/dist/utils/react/wrapNodeIfPlain.js.map +1 -1
- package/dist/utils/selection.d.ts +1 -3
- package/dist/utils/selection.js +2 -2
- package/dist/utils/selection.js.map +1 -1
- package/dist/utils/styles.d.ts +1 -3
- package/dist/utils/styles.js +2 -3
- package/dist/utils/styles.js.map +1 -1
- package/dist/utils/tree.d.ts +1 -2
- package/dist/utils/tree.js +2 -2
- package/dist/utils/tree.js.map +1 -1
- package/dist/utils/warnings.d.ts +1 -2
- package/dist/utils/warnings.js +2 -3
- package/dist/utils/warnings.js.map +1 -1
- package/dist/version.d.ts +1 -0
- package/dist/version.js +4 -4
- package/dist/version.js.map +1 -1
- package/docs/CreateComponent.md +1 -1
- package/docs/FieldProperties.md +11 -7
- package/docs/Theming.md +1 -1
- package/docs/Usage.md +4 -2
- package/docs/components/content/Alert.md +3 -2
- package/docs/components/content/Layout.md +47 -0
- package/docs/components/content/TextItem.md +2 -2
- package/docs/components/fields/ComboBox.md +1 -2
- package/docs/components/fields/FilterListBox.md +3 -3
- package/docs/components/fields/FilterPicker.md +8 -12
- package/docs/components/fields/ListBox.md +11 -10
- package/docs/components/fields/NumberInput.md +1 -2
- package/docs/components/fields/Picker.md +10 -14
- package/docs/components/fields/Select.md +11 -9
- package/docs/components/fields/Switch.md +4 -5
- package/docs/components/overlays/AlertDialog.md +1 -1
- package/docs/components/overlays/Dialog.md +6 -6
- package/docs/components/overlays/DialogContainer.md +20 -1
- package/docs/components/overlays/DialogTrigger.md +5 -3
- package/docs/tasty/README.md +4 -1
- package/docs/tasty/adoption.md +25 -17
- package/docs/tasty/ai-agents.md +42 -34
- package/docs/tasty/comparison.md +9 -8
- package/docs/tasty/configuration.md +187 -69
- package/docs/tasty/debug.md +3 -2
- package/docs/tasty/design-system.md +117 -15
- package/docs/tasty/dsl.md +211 -117
- package/docs/tasty/getting-started.md +81 -24
- package/docs/tasty/injector.md +41 -40
- package/docs/tasty/methodology.md +46 -21
- package/docs/tasty/migration-v3.md +3 -3
- package/docs/tasty/pipeline.md +22 -19
- package/docs/tasty/plugins.md +21 -41
- package/docs/tasty/react-api.md +72 -9
- package/docs/tasty/runtime-benchmarks.md +11 -11
- package/docs/tasty/ssr.md +92 -66
- package/docs/tasty/styles.md +37 -17
- package/docs/tasty/tasty-static.md +175 -57
- package/package.json +20 -17
- package/tasty.config.ts +8 -0
- package/dist/components/overlays/Notifications/Notification.d.ts +0 -38
- package/dist/i18n/useI18n.d.ts +0 -2
- package/dist/node_modules/.pnpm/csstype@3.1.2/node_modules/csstype/index.d.ts +0 -629
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PersistentNotificationsList.js","names":["tasty","Fragment","Key","useContext","useEffect","useRef","useState","useEvent","useI18n","Divider","Text","formatRelativeTime","NotificationActionInterceptorContext","NotificationCard","usePersistentNotifications","DismissReason","PersistentNotificationItem","PersistentNotificationsListProps","MARK_READ_DELAY","TIMESTAMP_REFRESH_INTERVAL","ListContainer","qa","role","styles","display","flow","EmptyStateContainer","placeItems","placeContent","padding","color","preset","PersistentNotificationsList","t0","$","_c","onDismissItem","onAction","emptyState","t","items","remove","markAllAsRead","t1","listAriaLabel","t2","item","id","handleDismiss","markReadTimerRef","now","setNow","_temp","t3","t4","length","interval","setInterval","Date","clearInterval","t5","t6","hasUnread","some","_temp2","current","setTimeout","clearTimeout","t7","t8","t9","item_0","index","String","map","t10","i","isRead","PersistentNotificationListItemProps","onDismiss","PersistentNotificationListItem","createdAt","suffix","_id","_reason","parentInterceptor","handleItemAction","undefined","actions","description","icon","theme","title"],"sources":["../../../../src/components/overlays/Notifications/PersistentNotificationsList.tsx"],"sourcesContent":["import { tasty } from '@tenphi/tasty';\nimport { Fragment, Key, useContext, useEffect, useRef, useState } from 'react';\n\nimport { useEvent } from '../../../_internal';\nimport { useI18n } from '../../../i18n';\nimport { Divider } from '../../content/Divider';\nimport { Text } from '../../content/Text';\n\nimport { formatRelativeTime } from './format-relative-time';\nimport { NotificationActionInterceptorContext } from './NotificationAction';\nimport { NotificationCard } from './NotificationCard';\nimport { usePersistentNotifications } from './use-persistent-notifications';\n\nimport type {\n DismissReason,\n PersistentNotificationItem,\n PersistentNotificationsListProps,\n} from './types';\n\n// ─── Constants ───────────────────────────────────────────────────────\n\nconst MARK_READ_DELAY = 2000;\n/** Interval (ms) at which relative timestamps refresh while the list is mounted. */\nconst TIMESTAMP_REFRESH_INTERVAL = 10_000;\n\n// ─── Styled Components ──────────────────────────────────────────────\n\nconst ListContainer = tasty({\n qa: 'PersistentNotificationsList',\n role: 'log',\n styles: {\n display: 'flex',\n flow: 'column',\n },\n});\n\nconst EmptyStateContainer = tasty({\n styles: {\n display: 'flex',\n placeItems: 'center',\n placeContent: 'center',\n padding: '4x',\n color: '#dark.5',\n preset: 't3',\n },\n});\n\n// ─── PersistentNotificationsList Component ───────────────────────────\n\n/**\n * Standardized rendering for archived/persistent notifications.\n * Always reads items from the notification context.\n * Composable with app-specific shells (popover, dialog, page section).\n *\n * Marks all items as read after being visible for 2 seconds.\n * Relative timestamps refresh every 10 seconds while the list is mounted.\n *\n * Items are always dismissible. Dismissing an item removes it from the\n * persistent list and marks its ID as \"fully dismissed\" — subsequent triggers\n * with the same ID will be completely ignored (no overlay, no re-archival).\n *\n * @example\n * ```tsx\n * <PersistentNotificationsList emptyState=\"No notifications\" />\n * ```\n */\nexport function PersistentNotificationsList({\n onDismissItem,\n onAction,\n emptyState,\n}: PersistentNotificationsListProps) {\n const { t } = useI18n();\n const { items, remove, markAllAsRead } = usePersistentNotifications();\n const listAriaLabel = t('notifications.ariaLabel', 'Notifications');\n\n // Default dismiss handler removes the item from the persistent list (which\n // also marks the id as \"fully dismissed\" so it won't reappear).\n // If a consumer provides `onDismissItem`, it is called *after* the built-in removal.\n const handleDismiss = useEvent((item: PersistentNotificationItem) => {\n remove(item.id);\n onDismissItem?.(item);\n });\n const markReadTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n // Time is a reactive input, so memoized rows also refresh their labels.\n const [now, setNow] = useState(() => Date.now());\n\n useEffect(() => {\n if (items.length === 0) return;\n\n const interval = setInterval(() => {\n setNow(Date.now());\n }, TIMESTAMP_REFRESH_INTERVAL);\n\n return () => clearInterval(interval);\n }, [items.length]);\n\n // Mark all persistent notifications as read after a 2s delay.\n // Re-starts the timer whenever items change (e.g. new unread items arrive\n // while the list is already visible).\n useEffect(() => {\n const hasUnread = items.some((i) => !i.isRead);\n\n if (!hasUnread) return;\n\n markReadTimerRef.current = setTimeout(() => {\n markAllAsRead();\n }, MARK_READ_DELAY);\n\n return () => {\n if (markReadTimerRef.current) {\n clearTimeout(markReadTimerRef.current);\n markReadTimerRef.current = null;\n }\n };\n }, [markAllAsRead, items]);\n\n if (items.length === 0) {\n return (\n <ListContainer aria-label={listAriaLabel}>\n <EmptyStateContainer>\n {emptyState ?? t('notifications.empty', 'No notifications')}\n </EmptyStateContainer>\n </ListContainer>\n );\n }\n\n return (\n <NotificationActionInterceptorContext.Provider value={onAction ?? null}>\n <ListContainer aria-label={listAriaLabel}>\n {items.map((item, index) => (\n <Fragment key={String(item.id)}>\n {index > 0 && <Divider />}\n <PersistentNotificationListItem\n item={item}\n now={now}\n onDismiss={handleDismiss}\n />\n </Fragment>\n ))}\n </ListContainer>\n </NotificationActionInterceptorContext.Provider>\n );\n}\n\n// ─── List Item ───────────────────────────────────────────────────────\n\ninterface PersistentNotificationListItemProps {\n item: PersistentNotificationItem;\n now: number;\n onDismiss?: (item: PersistentNotificationItem) => void;\n}\n\nfunction PersistentNotificationListItem({\n item,\n now,\n onDismiss,\n}: PersistentNotificationListItemProps) {\n const { t } = useI18n();\n const suffix = (\n <Text opacity={0.5} preset=\"c2\">\n {formatRelativeTime(item.createdAt, t, now)}\n </Text>\n );\n\n // useEvent keeps the callback stable across re-renders regardless of\n // item reference changes (avoids unnecessary NotificationCard re-renders).\n const handleDismiss = useEvent((_id: Key, _reason: DismissReason) => {\n onDismiss?.(item);\n });\n\n const parentInterceptor = useContext(NotificationActionInterceptorContext);\n\n // Chains with the list-level interceptor (e.g. closing the parent popover).\n // Dismissal itself is handled by NotificationAction via the dismiss context\n // to avoid double-firing onDismiss.\n const handleItemAction = useEvent(() => {\n parentInterceptor?.();\n });\n\n return (\n <NotificationActionInterceptorContext.Provider value={handleItemAction}>\n <NotificationCard\n qa=\"PersistentNotificationItem\"\n theme={item.theme}\n title={item.title}\n description={item.description}\n icon={item.icon}\n actions={item.actions}\n isDismissable={!!onDismiss}\n elevated={false}\n notificationId={item.id}\n suffix={suffix}\n onDismiss={onDismiss ? handleDismiss : undefined}\n />\n </NotificationActionInterceptorContext.Provider>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PersistentNotificationsList.js","names":["tasty","Fragment","Key","useContext","useEffect","useRef","useState","useEvent","useI18n","Divider","Text","formatRelativeTime","NotificationActionInterceptorContext","NotificationCard","usePersistentNotifications","DismissReason","PersistentNotificationItem","PersistentNotificationsListProps","MARK_READ_DELAY","TIMESTAMP_REFRESH_INTERVAL","ListContainer","qa","role","styles","display","flow","EmptyStateContainer","placeItems","placeContent","padding","color","preset","PersistentNotificationsList","t0","$","_c","onDismissItem","onAction","emptyState","t","items","remove","markAllAsRead","t1","listAriaLabel","t2","item","id","handleDismiss","markReadTimerRef","now","setNow","_temp","t3","t4","length","interval","setInterval","Date","clearInterval","t5","t6","hasUnread","some","_temp2","current","setTimeout","clearTimeout","t7","t8","t9","item_0","index","String","map","t10","i","isRead","PersistentNotificationListItemProps","onDismiss","PersistentNotificationListItem","createdAt","suffix","_id","_reason","parentInterceptor","handleItemAction","undefined","actions","description","icon","theme","title","_c","Text"],"sources":["../../../../src/components/overlays/Notifications/PersistentNotificationsList.tsx"],"sourcesContent":["import { tasty } from '@tenphi/tasty';\nimport { Fragment, Key, useContext, useEffect, useRef, useState } from 'react';\n\nimport { useEvent } from '../../../_internal';\nimport { useI18n } from '../../../i18n';\nimport { Divider } from '../../content/Divider';\nimport { Text } from '../../content/Text';\n\nimport { formatRelativeTime } from './format-relative-time';\nimport { NotificationActionInterceptorContext } from './NotificationAction';\nimport { NotificationCard } from './NotificationCard';\nimport { usePersistentNotifications } from './use-persistent-notifications';\n\nimport type {\n DismissReason,\n PersistentNotificationItem,\n PersistentNotificationsListProps,\n} from './types';\n\n// ─── Constants ───────────────────────────────────────────────────────\n\nconst MARK_READ_DELAY = 2000;\n/** Interval (ms) at which relative timestamps refresh while the list is mounted. */\nconst TIMESTAMP_REFRESH_INTERVAL = 10_000;\n\n// ─── Styled Components ──────────────────────────────────────────────\n\nconst ListContainer = tasty({\n qa: 'PersistentNotificationsList',\n role: 'log',\n styles: {\n display: 'flex',\n flow: 'column',\n },\n});\n\nconst EmptyStateContainer = tasty({\n styles: {\n display: 'flex',\n placeItems: 'center',\n placeContent: 'center',\n padding: '4x',\n color: '#dark.5',\n preset: 't3',\n },\n});\n\n// ─── PersistentNotificationsList Component ───────────────────────────\n\n/**\n * Standardized rendering for archived/persistent notifications.\n * Always reads items from the notification context.\n * Composable with app-specific shells (popover, dialog, page section).\n *\n * Marks all items as read after being visible for 2 seconds.\n * Relative timestamps refresh every 10 seconds while the list is mounted.\n *\n * Items are always dismissible. Dismissing an item removes it from the\n * persistent list and marks its ID as \"fully dismissed\" — subsequent triggers\n * with the same ID will be completely ignored (no overlay, no re-archival).\n *\n * @example\n * ```tsx\n * <PersistentNotificationsList emptyState=\"No notifications\" />\n * ```\n */\nexport function PersistentNotificationsList({\n onDismissItem,\n onAction,\n emptyState,\n}: PersistentNotificationsListProps) {\n const { t } = useI18n();\n const { items, remove, markAllAsRead } = usePersistentNotifications();\n const listAriaLabel = t('notifications.ariaLabel', 'Notifications');\n\n // Default dismiss handler removes the item from the persistent list (which\n // also marks the id as \"fully dismissed\" so it won't reappear).\n // If a consumer provides `onDismissItem`, it is called *after* the built-in removal.\n const handleDismiss = useEvent((item: PersistentNotificationItem) => {\n remove(item.id);\n onDismissItem?.(item);\n });\n const markReadTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n // Time is a reactive input, so memoized rows also refresh their labels.\n const [now, setNow] = useState(() => Date.now());\n\n useEffect(() => {\n if (items.length === 0) return;\n\n const interval = setInterval(() => {\n setNow(Date.now());\n }, TIMESTAMP_REFRESH_INTERVAL);\n\n return () => clearInterval(interval);\n }, [items.length]);\n\n // Mark all persistent notifications as read after a 2s delay.\n // Re-starts the timer whenever items change (e.g. new unread items arrive\n // while the list is already visible).\n useEffect(() => {\n const hasUnread = items.some((i) => !i.isRead);\n\n if (!hasUnread) return;\n\n markReadTimerRef.current = setTimeout(() => {\n markAllAsRead();\n }, MARK_READ_DELAY);\n\n return () => {\n if (markReadTimerRef.current) {\n clearTimeout(markReadTimerRef.current);\n markReadTimerRef.current = null;\n }\n };\n }, [markAllAsRead, items]);\n\n if (items.length === 0) {\n return (\n <ListContainer aria-label={listAriaLabel}>\n <EmptyStateContainer>\n {emptyState ?? t('notifications.empty', 'No notifications')}\n </EmptyStateContainer>\n </ListContainer>\n );\n }\n\n return (\n <NotificationActionInterceptorContext.Provider value={onAction ?? null}>\n <ListContainer aria-label={listAriaLabel}>\n {items.map((item, index) => (\n <Fragment key={String(item.id)}>\n {index > 0 && <Divider />}\n <PersistentNotificationListItem\n item={item}\n now={now}\n onDismiss={handleDismiss}\n />\n </Fragment>\n ))}\n </ListContainer>\n </NotificationActionInterceptorContext.Provider>\n );\n}\n\n// ─── List Item ───────────────────────────────────────────────────────\n\ninterface PersistentNotificationListItemProps {\n item: PersistentNotificationItem;\n now: number;\n onDismiss?: (item: PersistentNotificationItem) => void;\n}\n\nfunction PersistentNotificationListItem({\n item,\n now,\n onDismiss,\n}: PersistentNotificationListItemProps) {\n const { t } = useI18n();\n const suffix = (\n <Text opacity={0.5} preset=\"c2\">\n {formatRelativeTime(item.createdAt, t, now)}\n </Text>\n );\n\n // useEvent keeps the callback stable across re-renders regardless of\n // item reference changes (avoids unnecessary NotificationCard re-renders).\n const handleDismiss = useEvent((_id: Key, _reason: DismissReason) => {\n onDismiss?.(item);\n });\n\n const parentInterceptor = useContext(NotificationActionInterceptorContext);\n\n // Chains with the list-level interceptor (e.g. closing the parent popover).\n // Dismissal itself is handled by NotificationAction via the dismiss context\n // to avoid double-firing onDismiss.\n const handleItemAction = useEvent(() => {\n parentInterceptor?.();\n });\n\n return (\n <NotificationActionInterceptorContext.Provider value={handleItemAction}>\n <NotificationCard\n qa=\"PersistentNotificationItem\"\n theme={item.theme}\n title={item.title}\n description={item.description}\n icon={item.icon}\n actions={item.actions}\n isDismissable={!!onDismiss}\n elevated={false}\n notificationId={item.id}\n suffix={suffix}\n onDismiss={onDismiss ? handleDismiss : undefined}\n />\n </NotificationActionInterceptorContext.Provider>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.198.1 | Cube Dev Team */
|
|
2
2
|
//#region src/components/overlays/Notifications/dismissed-storage.ts
|
|
3
3
|
const STORAGE_KEY = "cube-ui-dismissed-notifications";
|
|
4
4
|
const TTL_MS = 864e5;
|
|
@@ -37,7 +37,7 @@ function cleanupAndGetValidIds() {
|
|
|
37
37
|
if (changed) writeMap(map);
|
|
38
38
|
return validIds;
|
|
39
39
|
}
|
|
40
|
-
|
|
41
40
|
//#endregion
|
|
42
41
|
export { cleanupAndGetValidIds, saveDismissedId };
|
|
42
|
+
|
|
43
43
|
//# sourceMappingURL=dismissed-storage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dismissed-storage.js","names":["Key","STORAGE_KEY","TTL_MS","DismissedMap","Record","readMap","raw","localStorage","getItem","JSON","parse","writeMap","map","setItem","stringify","saveDismissedId","id","String","Date","now","cleanupAndGetValidIds","Set","validIds","changed","timestamp","Object","entries","add"],"sources":["../../../../src/components/overlays/Notifications/dismissed-storage.ts"],"sourcesContent":["import type { Key } from 'react';\n\nconst STORAGE_KEY = 'cube-ui-dismissed-notifications';\nconst TTL_MS = 86_400_000; // 24 hours\n\ntype DismissedMap = Record<string, number>;\n\nfunction readMap(): DismissedMap {\n try {\n const raw = localStorage.getItem(STORAGE_KEY);\n\n if (!raw) return {};\n\n return JSON.parse(raw) as DismissedMap;\n } catch {\n return {};\n }\n}\n\nfunction writeMap(map: DismissedMap): void {\n try {\n localStorage.setItem(STORAGE_KEY, JSON.stringify(map));\n } catch {\n // SSR, private browsing, or quota exceeded — silently ignore\n }\n}\n\nexport function saveDismissedId(id: Key): void {\n const map = readMap();\n\n map[String(id)] = Date.now();\n writeMap(map);\n}\n\n/**\n * Reads the dismissed-IDs map from localStorage, removes entries older than\n * 24 hours, writes the cleaned map back, and returns the remaining valid IDs.\n */\nexport function cleanupAndGetValidIds(): Set<string> {\n const map = readMap();\n const now = Date.now();\n const validIds = new Set<string>();\n let changed = false;\n\n for (const [id, timestamp] of Object.entries(map)) {\n if (now - timestamp > TTL_MS) {\n delete map[id];\n changed = true;\n } else {\n validIds.add(id);\n }\n }\n\n if (changed) {\n writeMap(map);\n }\n\n return validIds;\n}\n"],"mappings":";;AAEA,MAAMC,cAAc;AACpB,MAAMC,SAAS;AAIf,SAASG,UAAwB;
|
|
1
|
+
{"version":3,"file":"dismissed-storage.js","names":["Key","STORAGE_KEY","TTL_MS","DismissedMap","Record","readMap","raw","localStorage","getItem","JSON","parse","writeMap","map","setItem","stringify","saveDismissedId","id","String","Date","now","cleanupAndGetValidIds","Set","validIds","changed","timestamp","Object","entries","add"],"sources":["../../../../src/components/overlays/Notifications/dismissed-storage.ts"],"sourcesContent":["import type { Key } from 'react';\n\nconst STORAGE_KEY = 'cube-ui-dismissed-notifications';\nconst TTL_MS = 86_400_000; // 24 hours\n\ntype DismissedMap = Record<string, number>;\n\nfunction readMap(): DismissedMap {\n try {\n const raw = localStorage.getItem(STORAGE_KEY);\n\n if (!raw) return {};\n\n return JSON.parse(raw) as DismissedMap;\n } catch {\n return {};\n }\n}\n\nfunction writeMap(map: DismissedMap): void {\n try {\n localStorage.setItem(STORAGE_KEY, JSON.stringify(map));\n } catch {\n // SSR, private browsing, or quota exceeded — silently ignore\n }\n}\n\nexport function saveDismissedId(id: Key): void {\n const map = readMap();\n\n map[String(id)] = Date.now();\n writeMap(map);\n}\n\n/**\n * Reads the dismissed-IDs map from localStorage, removes entries older than\n * 24 hours, writes the cleaned map back, and returns the remaining valid IDs.\n */\nexport function cleanupAndGetValidIds(): Set<string> {\n const map = readMap();\n const now = Date.now();\n const validIds = new Set<string>();\n let changed = false;\n\n for (const [id, timestamp] of Object.entries(map)) {\n if (now - timestamp > TTL_MS) {\n delete map[id];\n changed = true;\n } else {\n validIds.add(id);\n }\n }\n\n if (changed) {\n writeMap(map);\n }\n\n return validIds;\n}\n"],"mappings":";;AAEA,MAAMC,cAAc;AACpB,MAAMC,SAAS;AAIf,SAASG,UAAwB;CAC/B,IAAI;EACF,MAAMC,MAAMC,aAAaC,QAAQP,WAAW;EAE5C,IAAI,CAACK,KAAK,OAAO,CAAC;EAElB,OAAOG,KAAKC,MAAMJ,GAAG;CACvB,QAAQ;EACN,OAAO,CAAC;CACV;AACF;AAEA,SAASK,SAASC,KAAyB;CACzC,IAAI;EACFL,aAAaM,QAAQZ,aAAaQ,KAAKK,UAAUF,GAAG,CAAC;CACvD,QAAQ,CACN;AAEJ;AAEA,SAAgBG,gBAAgBC,IAAe;CAC7C,MAAMJ,MAAMP,QAAQ;CAEpBO,IAAIK,OAAOD,EAAE,KAAKE,KAAKC,IAAI;CAC3BR,SAASC,GAAG;AACd;;;;;AAMA,SAAgBQ,wBAAqC;CACnD,MAAMR,MAAMP,QAAQ;CACpB,MAAMc,MAAMD,KAAKC,IAAI;CACrB,MAAMG,2BAAW,IAAID,IAAY;CACjC,IAAIE,UAAU;CAEd,KAAK,MAAM,CAACP,IAAIQ,cAAcC,OAAOC,QAAQd,GAAG,GAC9C,IAAIO,MAAMK,YAAYtB,QAAQ;EAC5B,OAAOU,IAAII;EACXO,UAAU;CACZ,OACED,SAASK,IAAIX,EAAE;CAInB,IAAIO,SACFZ,SAASC,GAAG;CAGd,OAAOU;AACT"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
|
|
2
2
|
import { TFunction } from "i18next";
|
|
3
|
-
|
|
4
3
|
//#region src/components/overlays/Notifications/format-relative-time.d.ts
|
|
5
4
|
/**
|
|
6
5
|
* Lightweight relative time formatter.
|
|
@@ -19,7 +18,6 @@ import { TFunction } from "i18next";
|
|
|
19
18
|
* in so the string reacts to the active language. When omitted (non-component
|
|
20
19
|
* callers), English defaults are used.
|
|
21
20
|
*/
|
|
22
|
-
declare function formatRelativeTime(timestamp: number, t?: TFunction, now?: number): string;
|
|
21
|
+
export declare function formatRelativeTime(timestamp: number, t?: TFunction, now?: number): string;
|
|
23
22
|
//#endregion
|
|
24
|
-
export { formatRelativeTime };
|
|
25
23
|
//# sourceMappingURL=format-relative-time.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.198.1 | Cube Dev Team */
|
|
2
2
|
//#region src/components/overlays/Notifications/format-relative-time.ts
|
|
3
3
|
/**
|
|
4
4
|
* Lightweight relative time formatter.
|
|
@@ -38,7 +38,7 @@ function formatRelativeTime(timestamp, t, now = Date.now()) {
|
|
|
38
38
|
if (diffDays < 365) return translate("relativeTime.monthsAgo", "{{count}} mo ago", diffMonths);
|
|
39
39
|
return translate("relativeTime.yearsAgo", "{{count}} y ago", Math.floor(diffDays / 365));
|
|
40
40
|
}
|
|
41
|
-
|
|
42
41
|
//#endregion
|
|
43
42
|
export { formatRelativeTime };
|
|
43
|
+
|
|
44
44
|
//# sourceMappingURL=format-relative-time.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-relative-time.js","names":["TFunction","formatRelativeTime","timestamp","t","now","Date","translate","key","defaultValue","count","undefined","replace","String","diffMs","diffSeconds","Math","floor","diffMinutes","diffHours","diffDays","diffWeeks","diffMonths","diffYears"],"sources":["../../../../src/components/overlays/Notifications/format-relative-time.ts"],"sourcesContent":["import type { TFunction } from 'i18next';\n\n/**\n * Lightweight relative time formatter.\n *\n * Output format (English source; localized via the `uikit` bundle's\n * `relativeTime.*` keys):\n * - `just now` (< 1 minute)\n * - `N min ago` (1–59 minutes)\n * - `N h ago` (1–23 hours)\n * - `N d ago` (1–6 days)\n * - `N w ago` (1–4 weeks)\n * - `N mo ago` (1–11 months)\n * - `N y ago` (1+ years)\n *\n * `t` is the UI Kit translation function (from `useI18n`), passed\n * in so the string reacts to the active language. When omitted (non-component\n * callers), English defaults are used.\n */\nexport function formatRelativeTime(\n timestamp: number,\n t?: TFunction,\n now = Date.now(),\n): string {\n const translate = (\n key: string,\n defaultValue: string,\n count?: number,\n ): string => {\n if (t) {\n return t(key, defaultValue, count != null ? { count } : undefined);\n }\n\n return count != null\n ? defaultValue.replace('{{count}}', String(count))\n : defaultValue;\n };\n\n const diffMs = now - timestamp;\n\n if (diffMs < 0) {\n return translate('relativeTime.justNow', 'just now');\n }\n\n const diffSeconds = Math.floor(diffMs / 1000);\n const diffMinutes = Math.floor(diffSeconds / 60);\n const diffHours = Math.floor(diffMinutes / 60);\n const diffDays = Math.floor(diffHours / 24);\n\n if (diffMinutes < 1) {\n return translate('relativeTime.justNow', 'just now');\n }\n\n if (diffHours < 1) {\n return translate('relativeTime.minAgo', '{{count}} min ago', diffMinutes);\n }\n\n if (diffDays < 1) {\n return translate('relativeTime.hoursAgo', '{{count}} h ago', diffHours);\n }\n\n if (diffDays < 7) {\n return translate('relativeTime.daysAgo', '{{count}} d ago', diffDays);\n }\n\n const diffWeeks = Math.floor(diffDays / 7);\n\n if (diffDays < 30) {\n return translate('relativeTime.weeksAgo', '{{count}} w ago', diffWeeks);\n }\n\n const diffMonths = Math.floor(diffDays / 30);\n\n if (diffDays < 365) {\n return translate('relativeTime.monthsAgo', '{{count}} mo ago', diffMonths);\n }\n\n const diffYears = Math.floor(diffDays / 365);\n\n return translate('relativeTime.yearsAgo', '{{count}} y ago', diffYears);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAmBA,SAAgBC,mBACdC,WACAC,GACAC,MAAMC,KAAKD,
|
|
1
|
+
{"version":3,"file":"format-relative-time.js","names":["TFunction","formatRelativeTime","timestamp","t","now","Date","translate","key","defaultValue","count","undefined","replace","String","diffMs","diffSeconds","Math","floor","diffMinutes","diffHours","diffDays","diffWeeks","diffMonths","diffYears"],"sources":["../../../../src/components/overlays/Notifications/format-relative-time.ts"],"sourcesContent":["import type { TFunction } from 'i18next';\n\n/**\n * Lightweight relative time formatter.\n *\n * Output format (English source; localized via the `uikit` bundle's\n * `relativeTime.*` keys):\n * - `just now` (< 1 minute)\n * - `N min ago` (1–59 minutes)\n * - `N h ago` (1–23 hours)\n * - `N d ago` (1–6 days)\n * - `N w ago` (1–4 weeks)\n * - `N mo ago` (1–11 months)\n * - `N y ago` (1+ years)\n *\n * `t` is the UI Kit translation function (from `useI18n`), passed\n * in so the string reacts to the active language. When omitted (non-component\n * callers), English defaults are used.\n */\nexport function formatRelativeTime(\n timestamp: number,\n t?: TFunction,\n now = Date.now(),\n): string {\n const translate = (\n key: string,\n defaultValue: string,\n count?: number,\n ): string => {\n if (t) {\n return t(key, defaultValue, count != null ? { count } : undefined);\n }\n\n return count != null\n ? defaultValue.replace('{{count}}', String(count))\n : defaultValue;\n };\n\n const diffMs = now - timestamp;\n\n if (diffMs < 0) {\n return translate('relativeTime.justNow', 'just now');\n }\n\n const diffSeconds = Math.floor(diffMs / 1000);\n const diffMinutes = Math.floor(diffSeconds / 60);\n const diffHours = Math.floor(diffMinutes / 60);\n const diffDays = Math.floor(diffHours / 24);\n\n if (diffMinutes < 1) {\n return translate('relativeTime.justNow', 'just now');\n }\n\n if (diffHours < 1) {\n return translate('relativeTime.minAgo', '{{count}} min ago', diffMinutes);\n }\n\n if (diffDays < 1) {\n return translate('relativeTime.hoursAgo', '{{count}} h ago', diffHours);\n }\n\n if (diffDays < 7) {\n return translate('relativeTime.daysAgo', '{{count}} d ago', diffDays);\n }\n\n const diffWeeks = Math.floor(diffDays / 7);\n\n if (diffDays < 30) {\n return translate('relativeTime.weeksAgo', '{{count}} w ago', diffWeeks);\n }\n\n const diffMonths = Math.floor(diffDays / 30);\n\n if (diffDays < 365) {\n return translate('relativeTime.monthsAgo', '{{count}} mo ago', diffMonths);\n }\n\n const diffYears = Math.floor(diffDays / 365);\n\n return translate('relativeTime.yearsAgo', '{{count}} y ago', diffYears);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAmBA,SAAgBC,mBACdC,WACAC,GACAC,MAAMC,KAAKD,IAAI,GACP;CACR,MAAME,aACJC,KACAC,cACAC,UACW;EACX,IAAIN,GACF,OAAOA,EAAEI,KAAKC,cAAcC,SAAS,OAAO,EAAEA,MAAM,IAAIC,KAAAA,CAAS;EAGnE,OAAOD,SAAS,OACZD,aAAaG,QAAQ,aAAaC,OAAOH,KAAK,CAAC,IAC/CD;CACN;CAEA,MAAMK,SAAST,MAAMF;CAErB,IAAIW,SAAS,GACX,OAAOP,UAAU,wBAAwB,UAAU;CAGrD,MAAMQ,cAAcC,KAAKC,MAAMH,SAAS,GAAI;CAC5C,MAAMI,cAAcF,KAAKC,MAAMF,cAAc,EAAE;CAC/C,MAAMI,YAAYH,KAAKC,MAAMC,cAAc,EAAE;CAC7C,MAAME,WAAWJ,KAAKC,MAAME,YAAY,EAAE;CAE1C,IAAID,cAAc,GAChB,OAAOX,UAAU,wBAAwB,UAAU;CAGrD,IAAIY,YAAY,GACd,OAAOZ,UAAU,uBAAuB,qBAAqBW,WAAW;CAG1E,IAAIE,WAAW,GACb,OAAOb,UAAU,yBAAyB,mBAAmBY,SAAS;CAGxE,IAAIC,WAAW,GACb,OAAOb,UAAU,wBAAwB,mBAAmBa,QAAQ;CAGtE,MAAMC,YAAYL,KAAKC,MAAMG,WAAW,CAAC;CAEzC,IAAIA,WAAW,IACb,OAAOb,UAAU,yBAAyB,mBAAmBc,SAAS;CAGxE,MAAMC,aAAaN,KAAKC,MAAMG,WAAW,EAAE;CAE3C,IAAIA,WAAW,KACb,OAAOb,UAAU,0BAA0B,oBAAoBe,UAAU;CAK3E,OAAOf,UAAU,yBAAyB,mBAFxBS,KAAKC,MAAMG,WAAW,GAEqBG,CAAS;AACxE"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
import { DismissReason, NotificationActionProps, NotificationBaseOptions, NotificationHandle, NotificationOptions, NotificationProps, NotificationType, NotificationsApi, OverlayNotificationOptions, OverlayProviderProps, PersistentNotificationItem, PersistentNotificationsListProps, StoredNotificationOptions } from "./types.js";
|
|
3
3
|
import { useToastContext } from "./NotificationContext.js";
|
|
4
|
-
import { Notification as Notification$1 } from "./Notification.js";
|
|
5
4
|
import { NotificationAction } from "./NotificationAction.js";
|
|
6
5
|
import { NotificationCard, NotificationCardProps } from "./NotificationCard.js";
|
|
7
6
|
import { NotificationItem, NotificationItemProps } from "./NotificationItem.js";
|
|
@@ -10,7 +9,6 @@ import { OverlayProvider } from "./OverlayProvider.js";
|
|
|
10
9
|
import { useNotifications } from "./use-notifications.js";
|
|
11
10
|
import { useNotificationsCount, usePersistentNotifications } from "./use-persistent-notifications.js";
|
|
12
11
|
import { formatRelativeTime } from "./format-relative-time.js";
|
|
13
|
-
|
|
14
12
|
//#region src/components/overlays/Notifications/index.d.ts
|
|
15
13
|
/**
|
|
16
14
|
* Declarative Notification component with compound API.
|
|
@@ -34,10 +32,11 @@ import { formatRelativeTime } from "./format-relative-time.js";
|
|
|
34
32
|
* />
|
|
35
33
|
* ```
|
|
36
34
|
*/
|
|
37
|
-
declare const Notification:
|
|
35
|
+
export declare const Notification: NotificationComponent;
|
|
36
|
+
export interface NotificationComponent {
|
|
37
|
+
(props: NotificationProps): null;
|
|
38
38
|
Action: typeof NotificationAction;
|
|
39
|
-
}
|
|
40
|
-
type NotificationComponent = typeof Notification;
|
|
39
|
+
}
|
|
41
40
|
//#endregion
|
|
42
|
-
export {
|
|
41
|
+
export { type DismissReason, NotificationAction, type NotificationActionProps, type NotificationBaseOptions, NotificationCard, type NotificationCardProps, type NotificationHandle, NotificationItem, type NotificationItemProps, type NotificationOptions, type NotificationProps, type NotificationType, type NotificationsApi, type OverlayNotificationOptions, OverlayProvider, type OverlayProviderProps, type PersistentNotificationItem, PersistentNotificationsList, type PersistentNotificationsListProps, type StoredNotificationOptions, formatRelativeTime, useNotifications, useNotificationsCount, usePersistentNotifications };
|
|
43
42
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
2
|
-
import
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.198.1 | Cube Dev Team */
|
|
2
|
+
import "./NotificationContext.js";
|
|
3
3
|
import { NotificationAction } from "./NotificationAction.js";
|
|
4
4
|
import { NotificationCard } from "./NotificationCard.js";
|
|
5
5
|
import { NotificationItem } from "./NotificationItem.js";
|
|
@@ -9,7 +9,6 @@ import { formatRelativeTime } from "./format-relative-time.js";
|
|
|
9
9
|
import { useNotificationsCount, usePersistentNotifications } from "./use-persistent-notifications.js";
|
|
10
10
|
import { PersistentNotificationsList } from "./PersistentNotificationsList.js";
|
|
11
11
|
import { useNotifications } from "./use-notifications.js";
|
|
12
|
-
|
|
13
12
|
//#region src/components/overlays/Notifications/index.ts
|
|
14
13
|
/**
|
|
15
14
|
* Declarative Notification component with compound API.
|
|
@@ -34,7 +33,7 @@ import { useNotifications } from "./use-notifications.js";
|
|
|
34
33
|
* ```
|
|
35
34
|
*/
|
|
36
35
|
const Notification = Object.assign(Notification$1, { Action: NotificationAction });
|
|
37
|
-
|
|
38
36
|
//#endregion
|
|
39
|
-
export { Notification };
|
|
37
|
+
export { Notification, NotificationAction, NotificationCard, NotificationItem, OverlayProvider, PersistentNotificationsList, formatRelativeTime, useNotifications, useNotificationsCount, usePersistentNotifications };
|
|
38
|
+
|
|
40
39
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["Notification","NotificationBase","NotificationAction","NotificationCard","NotificationCardProps","NotificationItem","NotificationItemProps","PersistentNotificationsList","OverlayProvider","useToastContext","useNotifications","usePersistentNotifications","useNotificationsCount","formatRelativeTime","NotificationType","DismissReason","NotificationBaseOptions","OverlayNotificationOptions","StoredNotificationOptions","NotificationOptions","NotificationActionProps","NotificationHandle","NotificationsApi","PersistentNotificationItem","PersistentNotificationsListProps","OverlayProviderProps","
|
|
1
|
+
{"version":3,"file":"index.js","names":["Notification","NotificationBase","NotificationAction","NotificationProps","NotificationCard","NotificationCardProps","NotificationItem","NotificationItemProps","PersistentNotificationsList","OverlayProvider","useToastContext","useNotifications","usePersistentNotifications","useNotificationsCount","formatRelativeTime","NotificationType","DismissReason","NotificationBaseOptions","OverlayNotificationOptions","StoredNotificationOptions","NotificationOptions","NotificationActionProps","NotificationHandle","NotificationsApi","PersistentNotificationItem","PersistentNotificationsListProps","OverlayProviderProps","NotificationComponent","Object","assign","Action","props","NotificationBase"],"sources":["../../../../src/components/overlays/Notifications/index.ts"],"sourcesContent":["// ─── Components ──────────────────────────────────────────────────────\n\nimport { Notification as NotificationBase } from './Notification';\nimport { NotificationAction } from './NotificationAction';\n\nimport type { NotificationProps } from './types';\n\nexport { NotificationAction } from './NotificationAction';\nexport { NotificationCard } from './NotificationCard';\nexport type { NotificationCardProps } from './NotificationCard';\nexport { NotificationItem } from './NotificationItem';\nexport type { NotificationItemProps } from './NotificationItem';\nexport { PersistentNotificationsList } from './PersistentNotificationsList';\n\n// ─── Provider ────────────────────────────────────────────────────────\n\nexport { OverlayProvider } from './OverlayProvider';\n\n// useToastContext is re-exported for Toast module backward compatibility\nexport { useToastContext } from './NotificationContext';\n\n// ─── Hooks ───────────────────────────────────────────────────────────\n\nexport { useNotifications } from './use-notifications';\nexport {\n usePersistentNotifications,\n useNotificationsCount,\n} from './use-persistent-notifications';\n\n// ─── Utilities ───────────────────────────────────────────────────────\n\nexport { formatRelativeTime } from './format-relative-time';\n\n// ─── Types ───────────────────────────────────────────────────────────\n\nexport type {\n NotificationType,\n DismissReason,\n NotificationBaseOptions,\n OverlayNotificationOptions,\n StoredNotificationOptions,\n NotificationOptions,\n NotificationActionProps,\n NotificationHandle,\n NotificationsApi,\n PersistentNotificationItem,\n PersistentNotificationsListProps,\n OverlayProviderProps,\n NotificationProps,\n} from './types';\n\n// ─── Compound Notification Component ─────────────────────────────────\n\n/**\n * Declarative Notification component with compound API.\n *\n * @example\n * ```tsx\n * // Declarative usage\n * <Notification\n * id=\"release:new-version\"\n * theme=\"warning\"\n * title=\"New release available\"\n * description=\"2.0.0 can be installed now.\"\n * actions={\n * <>\n * <Notification.Action>Later</Notification.Action>\n * <Notification.Action onPress={() => openUpgradeDialog()}>\n * Upgrade\n * </Notification.Action>\n * </>\n * }\n * />\n * ```\n */\nexport const Notification: NotificationComponent = Object.assign(\n NotificationBase,\n { Action: NotificationAction },\n);\n\nexport interface NotificationComponent {\n (props: NotificationProps): null;\n Action: typeof NotificationAction;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2EA,MAAaA,eAAsC4B,OAAOC,OACxD5B,gBACA,EAAE6B,QAAQ5B,mBAAmB,CAC/B"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
|
|
2
2
|
import { Key, ReactNode } from "react";
|
|
3
|
-
|
|
4
3
|
//#region src/components/overlays/Notifications/types.d.ts
|
|
5
|
-
type NotificationType = 'default' | 'success' | 'danger' | 'warning' | 'note';
|
|
6
|
-
interface NotificationBaseOptions {
|
|
4
|
+
export type NotificationType = 'default' | 'success' | 'danger' | 'warning' | 'note';
|
|
5
|
+
export interface NotificationBaseOptions {
|
|
7
6
|
id?: Key;
|
|
8
7
|
theme?: NotificationType;
|
|
9
8
|
title?: ReactNode;
|
|
10
9
|
description?: ReactNode;
|
|
11
10
|
icon?: ReactNode;
|
|
12
11
|
}
|
|
13
|
-
interface OverlayNotificationOptions extends NotificationBaseOptions {
|
|
12
|
+
export interface OverlayNotificationOptions extends NotificationBaseOptions {
|
|
14
13
|
mode?: 'overlay';
|
|
15
14
|
/**
|
|
16
15
|
* Action buttons rendered below the notification description.
|
|
@@ -49,7 +48,7 @@ interface OverlayNotificationOptions extends NotificationBaseOptions {
|
|
|
49
48
|
*/
|
|
50
49
|
persistent?: boolean;
|
|
51
50
|
}
|
|
52
|
-
interface StoredNotificationOptions extends NotificationBaseOptions {
|
|
51
|
+
export interface StoredNotificationOptions extends NotificationBaseOptions {
|
|
53
52
|
mode: 'stored';
|
|
54
53
|
/** Action buttons (same ReactNode format as overlay notifications) */
|
|
55
54
|
actions?: ReactNode;
|
|
@@ -60,9 +59,9 @@ interface StoredNotificationOptions extends NotificationBaseOptions {
|
|
|
60
59
|
*/
|
|
61
60
|
createdAt?: number;
|
|
62
61
|
}
|
|
63
|
-
type NotificationOptions = OverlayNotificationOptions | StoredNotificationOptions;
|
|
64
|
-
type DismissReason = 'close' | 'timeout' | 'action' | 'api';
|
|
65
|
-
interface NotificationActionProps {
|
|
62
|
+
export type NotificationOptions = OverlayNotificationOptions | StoredNotificationOptions;
|
|
63
|
+
export type DismissReason = 'close' | 'timeout' | 'action' | 'api';
|
|
64
|
+
export interface NotificationActionProps {
|
|
66
65
|
/** Action label */
|
|
67
66
|
children?: ReactNode;
|
|
68
67
|
/**
|
|
@@ -82,11 +81,11 @@ interface NotificationActionProps {
|
|
|
82
81
|
*/
|
|
83
82
|
isDismiss?: boolean;
|
|
84
83
|
}
|
|
85
|
-
interface NotificationHandle {
|
|
84
|
+
export interface NotificationHandle {
|
|
86
85
|
id: Key;
|
|
87
86
|
dismiss: () => void;
|
|
88
87
|
}
|
|
89
|
-
interface NotificationsApi {
|
|
88
|
+
export interface NotificationsApi {
|
|
90
89
|
notify: (options: NotificationOptions) => NotificationHandle;
|
|
91
90
|
/**
|
|
92
91
|
* Shorthand for `notify({ mode: 'stored', ... })`.
|
|
@@ -96,7 +95,7 @@ interface NotificationsApi {
|
|
|
96
95
|
record: (options: Omit<StoredNotificationOptions, 'mode'>) => NotificationHandle;
|
|
97
96
|
dismiss: (id: Key) => void;
|
|
98
97
|
}
|
|
99
|
-
interface InternalNotification extends OverlayNotificationOptions {
|
|
98
|
+
export interface InternalNotification extends OverlayNotificationOptions {
|
|
100
99
|
internalId: string;
|
|
101
100
|
createdAt: number;
|
|
102
101
|
updatedAt: number;
|
|
@@ -105,7 +104,7 @@ interface InternalNotification extends OverlayNotificationOptions {
|
|
|
105
104
|
lastDismissReason?: DismissReason;
|
|
106
105
|
ownerId?: string;
|
|
107
106
|
}
|
|
108
|
-
interface PersistentNotificationItem {
|
|
107
|
+
export interface PersistentNotificationItem {
|
|
109
108
|
id: Key;
|
|
110
109
|
theme?: NotificationType;
|
|
111
110
|
title?: ReactNode;
|
|
@@ -120,18 +119,17 @@ interface PersistentNotificationItem {
|
|
|
120
119
|
/** Owner ID for cleanup on hook/component unmount */
|
|
121
120
|
ownerId?: string;
|
|
122
121
|
}
|
|
123
|
-
interface PersistentNotificationsListProps {
|
|
122
|
+
export interface PersistentNotificationsListProps {
|
|
124
123
|
onDismissItem?: (item: PersistentNotificationItem) => void;
|
|
125
124
|
/** Called before any action's onPress handler fires. Useful for closing a parent popover. */
|
|
126
125
|
onAction?: () => void;
|
|
127
126
|
emptyState?: ReactNode;
|
|
128
127
|
}
|
|
129
|
-
interface OverlayProviderProps {
|
|
128
|
+
export interface OverlayProviderProps {
|
|
130
129
|
children: ReactNode;
|
|
131
130
|
/** Maximum number of persistent notifications to keep. Default: 200 */
|
|
132
131
|
maxPersistentNotifications?: number;
|
|
133
132
|
}
|
|
134
|
-
interface NotificationProps extends OverlayNotificationOptions {}
|
|
133
|
+
export interface NotificationProps extends OverlayNotificationOptions {}
|
|
135
134
|
//#endregion
|
|
136
|
-
export { DismissReason, InternalNotification, NotificationActionProps, NotificationBaseOptions, NotificationHandle, NotificationOptions, NotificationProps, NotificationType, NotificationsApi, OverlayNotificationOptions, OverlayProviderProps, PersistentNotificationItem, PersistentNotificationsListProps, StoredNotificationOptions };
|
|
137
135
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.198.1 | Cube Dev Team */
|
|
2
2
|
import { useEvent } from "../../../_internal/hooks/use-event.js";
|
|
3
3
|
import { useRef, useState } from "react";
|
|
4
|
-
|
|
5
4
|
//#region src/components/overlays/Notifications/use-notification-state.ts
|
|
6
5
|
const DEFAULT_NOTIFICATION_DURATION = 3e3;
|
|
7
6
|
const DEFAULT_PERSISTENT_NOTIFICATION_DURATION = 5e3;
|
|
8
7
|
const MAX_NOTIFICATIONS = 5;
|
|
9
8
|
const MAX_DISMISS_SNAPSHOTS = 50;
|
|
10
|
-
const SNAPSHOT_TTL_MS =
|
|
9
|
+
const SNAPSHOT_TTL_MS = 3e5;
|
|
11
10
|
function getDuration(notif) {
|
|
12
11
|
if (notif.duration === null) return null;
|
|
13
12
|
if (notif.duration !== void 0) return notif.duration;
|
|
@@ -219,7 +218,7 @@ function useNotificationState(timersRef, persistent) {
|
|
|
219
218
|
})
|
|
220
219
|
};
|
|
221
220
|
}
|
|
222
|
-
|
|
223
221
|
//#endregion
|
|
224
222
|
export { useNotificationState };
|
|
223
|
+
|
|
225
224
|
//# sourceMappingURL=use-notification-state.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-notification-state.js","names":["Key","useRef","useState","useEvent","DismissReason","InternalNotification","OverlayNotificationOptions","PersistentNotificationItem","OverlayTimers","DEFAULT_NOTIFICATION_DURATION","DEFAULT_PERSISTENT_NOTIFICATION_DURATION","MAX_NOTIFICATIONS","MAX_DISMISS_SNAPSHOTS","SNAPSHOT_TTL_MS","PersistentCallbacks","addPersistentItem","item","removePersistentItem","id","removePersistentItemSilently","hasDismissedPersistentId","isFullyDismissedId","saveDismissedPersistentId","undoFullyDismissedId","NotificationState","notifications","notificationsRef","ReturnType","addNotification","options","ownerId","removeNotification","reason","restoreNotification","updateNotification","Partial","finalizeNotificationRemoval","internalId","removeByOwner","getDuration","notif","persistent","duration","undefined","matchesNotificationId","String","findNotification","list","find","n","useNotificationState","timersRef","setNotifications","current","idCounter","dismissSnapshotsRef","Map","evictOldest","active","filter","isExiting","length","oldest","clearNotificationTimer","theme","title","description","icon","actions","createdAt","updatedAt","isRead","set","lastDismissReason","size","keys","next","value","delete","prev","map","idStr","snapshot","get","persistentId","startNotificationTimer","stillInState","restored","setTimeout","key","snap","Date","now","existingNotif","returnId","prevTitle","prevDescription","titleChanged","descriptionChanged","activeCount","newNotification","evictedInternalId","owned"],"sources":["../../../../src/components/overlays/Notifications/use-notification-state.ts"],"sourcesContent":["import { Key, useRef, useState } from 'react';\n\nimport { useEvent } from '../../../_internal';\n\nimport type {\n DismissReason,\n InternalNotification,\n OverlayNotificationOptions,\n PersistentNotificationItem,\n} from './types';\nimport type { OverlayTimers } from './use-overlay-timers';\n\n// ─── Constants ───────────────────────────────────────────────────────\n\nconst DEFAULT_NOTIFICATION_DURATION = 3000;\nconst DEFAULT_PERSISTENT_NOTIFICATION_DURATION = 5000;\nconst MAX_NOTIFICATIONS = 5;\nconst MAX_DISMISS_SNAPSHOTS = 50;\nconst SNAPSHOT_TTL_MS = 5 * 60 * 1000;\n\n// ─── Types ───────────────────────────────────────────────────────────\n\nexport interface PersistentCallbacks {\n addPersistentItem: (item: PersistentNotificationItem) => void;\n removePersistentItem: (id: Key) => void;\n removePersistentItemSilently: (id: Key) => void;\n hasDismissedPersistentId: (id: Key) => boolean;\n isFullyDismissedId: (id: Key) => boolean;\n saveDismissedPersistentId: (id: Key) => void;\n undoFullyDismissedId: (id: Key) => void;\n}\n\nexport interface NotificationState {\n notifications: InternalNotification[];\n notificationsRef: ReturnType<typeof useRef<InternalNotification[]>>;\n addNotification: (\n options: OverlayNotificationOptions,\n ownerId?: string,\n ) => Key;\n removeNotification: (id: Key, reason?: DismissReason) => void;\n restoreNotification: (id: Key) => void;\n updateNotification: (\n id: Key,\n options: Partial<OverlayNotificationOptions>,\n ) => void;\n finalizeNotificationRemoval: (internalId: string) => void;\n removeByOwner: (ownerId: string) => void;\n}\n\n// ─── Helpers ─────────────────────────────────────────────────────────\n\nfunction getDuration(\n notif: OverlayNotificationOptions & { persistent?: boolean },\n): number | null {\n if (notif.duration === null) return null;\n if (notif.duration !== undefined) return notif.duration;\n return notif.persistent\n ? DEFAULT_PERSISTENT_NOTIFICATION_DURATION\n : DEFAULT_NOTIFICATION_DURATION;\n}\n\nfunction matchesNotificationId(item: InternalNotification, id: Key): boolean {\n return item.id === id || item.internalId === String(id);\n}\n\nfunction findNotification(\n list: InternalNotification[],\n id: Key,\n): InternalNotification | undefined {\n return list.find((n) => matchesNotificationId(n, id));\n}\n\n// ─── Hook ────────────────────────────────────────────────────────────\n\n/**\n * @param timersRef - Ref to the shared OverlayTimers instance. Accessed only\n * inside callbacks (never during render), so it is guaranteed to be populated.\n */\nexport function useNotificationState(\n timersRef: ReturnType<typeof useRef<OverlayTimers>>,\n persistent: PersistentCallbacks,\n): NotificationState {\n const [notifications, setNotifications] = useState<InternalNotification[]>(\n [],\n );\n const notificationsRef = useRef(notifications);\n notificationsRef.current = notifications;\n\n const idCounter = useRef(0);\n\n // Snapshots of dismissed notifications, keyed by notification id (string).\n // Saved at dismiss time so restoreNotification can re-add the notification\n // even after finalizeNotificationRemoval has removed it from state.\n const dismissSnapshotsRef = useRef<Map<string, InternalNotification>>(\n new Map(),\n );\n\n // ─── Evict Helper ──────────────────────────────────────────────\n\n /**\n * Evict the oldest active notification to make room for a new one.\n * Clears its timer and moves it to the persistent list if applicable.\n * Must be called OUTSIDE setState updaters (StrictMode-safe).\n */\n const evictOldest = useEvent((): string | null => {\n const active = notificationsRef.current.filter((n) => !n.isExiting);\n\n if (active.length === 0) return null;\n\n // Oldest by createdAt (active list preserves insertion order)\n const oldest = active[0];\n\n timersRef.current?.clearNotificationTimer(oldest.internalId);\n\n // Eviction counts as a timeout dismissal — move to persistent list if applicable\n if (oldest.persistent) {\n persistent.addPersistentItem({\n id: oldest.id ?? oldest.internalId,\n theme: oldest.theme,\n title: oldest.title,\n description: oldest.description,\n icon: oldest.icon,\n actions: oldest.actions,\n createdAt: oldest.createdAt,\n updatedAt: oldest.updatedAt,\n isRead: false,\n ownerId: oldest.ownerId,\n });\n }\n\n return oldest.internalId;\n });\n\n // ─── Remove ─────────────────────────────────────────────────────\n\n const removeNotification = useEvent(\n (id: Key, reason: DismissReason = 'api') => {\n // Read from ref (synchronous) to perform side effects OUTSIDE the updater.\n // This prevents double-fire in StrictMode and avoids calling setState\n // (addPersistentItem) inside another setState updater.\n const notif = findNotification(notificationsRef.current, id);\n\n if (!notif || notif.isExiting) return;\n\n timersRef.current?.clearNotificationTimer(notif.internalId);\n\n // Snapshot the notification for potential restore after finalization.\n dismissSnapshotsRef.current.set(String(notif.id ?? notif.internalId), {\n ...notif,\n lastDismissReason: reason,\n });\n\n // Prevent unbounded growth of dismiss snapshots.\n while (dismissSnapshotsRef.current.size > MAX_DISMISS_SNAPSHOTS) {\n const oldest = dismissSnapshotsRef.current.keys().next().value;\n\n if (oldest != null) {\n dismissSnapshotsRef.current.delete(oldest);\n } else {\n break;\n }\n }\n\n if (notif.persistent) {\n if (reason === 'close' || reason === 'timeout') {\n // Dismiss button, Escape, or auto-dismiss timeout — move to persistent list.\n // If the same id is triggered again, it skips the overlay and updates the\n // persistent list directly.\n persistent.addPersistentItem({\n id: notif.id ?? notif.internalId,\n theme: notif.theme,\n title: notif.title,\n description: notif.description,\n icon: notif.icon,\n actions: notif.actions,\n createdAt: notif.createdAt,\n updatedAt: notif.updatedAt,\n isRead: true,\n ownerId: notif.ownerId,\n });\n } else if (reason === 'action') {\n // User clicked a regular action (not dismiss) — fully dismiss the\n // notification so it never reappears (overlay or persistent list).\n persistent.saveDismissedPersistentId(notif.id ?? notif.internalId);\n persistent.removePersistentItem(notif.id ?? notif.internalId);\n }\n // reason === 'api' — programmatic cleanup (e.g. component unmount).\n // No persistence, no full-dismiss tracking.\n }\n\n setNotifications((prev) =>\n prev.map((n) =>\n matchesNotificationId(n, id)\n ? { ...n, isExiting: true, lastDismissReason: reason }\n : n,\n ),\n );\n },\n );\n\n // ─── Restore ──────────────────────────────────────────────────\n\n const restoreNotification = useEvent((id: Key) => {\n const idStr = String(id);\n const snapshot = dismissSnapshotsRef.current.get(idStr);\n\n if (!snapshot) return;\n\n dismissSnapshotsRef.current.delete(idStr);\n\n // Undo persistent side effects based on how the notification was dismissed.\n if (snapshot.persistent && snapshot.lastDismissReason) {\n const persistentId = snapshot.id ?? snapshot.internalId;\n\n if (\n snapshot.lastDismissReason === 'close' ||\n snapshot.lastDismissReason === 'timeout'\n ) {\n persistent.removePersistentItemSilently(persistentId);\n } else if (snapshot.lastDismissReason === 'action') {\n persistent.undoFullyDismissedId(persistentId);\n }\n }\n\n // Restart the auto-dismiss timer.\n const duration = getDuration(snapshot);\n\n if (duration != null && duration > 0) {\n timersRef.current?.startNotificationTimer(\n snapshot.internalId,\n snapshot.id ?? snapshot.internalId,\n duration,\n );\n }\n\n const stillInState = findNotification(notificationsRef.current, id);\n\n if (stillInState) {\n // Exit animation hasn't completed yet — cancel it.\n setNotifications((prev) =>\n prev.map((n) =>\n matchesNotificationId(n, id)\n ? { ...n, isExiting: false, lastDismissReason: undefined }\n : n,\n ),\n );\n } else {\n // Notification was already finalized (removed from state) — re-add it.\n const restored: InternalNotification = {\n ...snapshot,\n isExiting: false,\n lastDismissReason: undefined,\n };\n\n setNotifications((prev) => [...prev, restored]);\n }\n });\n\n // ─── Finalize ──────────────────────────────────────────────────\n\n const finalizeNotificationRemoval = useEvent((internalId: string) => {\n setNotifications((prev) => prev.filter((n) => n.internalId !== internalId));\n\n // Deferred cleanup of the dismiss snapshot. Kept briefly so async action\n // callbacks can still call restoreNotification after the exit animation.\n setTimeout(() => {\n for (const [key, snap] of dismissSnapshotsRef.current) {\n if (snap.internalId === internalId) {\n dismissSnapshotsRef.current.delete(key);\n break;\n }\n }\n }, SNAPSHOT_TTL_MS);\n });\n\n // ─── Add ────────────────────────────────────────────────────────\n\n const addNotification = useEvent(\n (options: OverlayNotificationOptions, ownerId?: string): Key => {\n idCounter.current += 1;\n const internalId = `notif-${idCounter.current}-${Date.now()}`;\n const now = Date.now();\n const id = options.id ?? internalId;\n\n // If the user explicitly removed this notification from the persistent\n // list, completely ignore it — no overlay, no persistent storage.\n if (options.id != null && persistent.isFullyDismissedId(options.id)) {\n return id;\n }\n\n // If this persistent id was previously dismissed to the persistent list,\n // skip the overlay and update the persistent item directly.\n if (\n options.persistent &&\n options.id != null &&\n persistent.hasDismissedPersistentId(options.id)\n ) {\n persistent.addPersistentItem({\n id,\n theme: options.theme,\n title: options.title,\n description: options.description,\n icon: options.icon,\n actions: options.actions,\n createdAt: now,\n updatedAt: now,\n isRead: false,\n ownerId,\n });\n\n return id;\n }\n\n // Check for existing notification with same id via the ref (synchronous read).\n const existingNotif =\n options.id != null\n ? notificationsRef.current.find(\n (n) => n.id === options.id && !n.isExiting,\n )\n : undefined;\n\n if (existingNotif) {\n // In-place update of an existing notification\n const returnId = existingNotif.id ?? existingNotif.internalId;\n\n const prevTitle = existingNotif.title;\n const prevDescription = existingNotif.description;\n\n // Timer reset on string title/description change\n const titleChanged =\n typeof options.title === 'string' &&\n typeof prevTitle === 'string' &&\n options.title !== prevTitle;\n const descriptionChanged =\n typeof options.description === 'string' &&\n typeof prevDescription === 'string' &&\n options.description !== prevDescription;\n\n if (titleChanged || descriptionChanged) {\n const duration = getDuration(options);\n\n if (duration != null && duration > 0) {\n timersRef.current?.startNotificationTimer(\n existingNotif.internalId,\n existingNotif.id ?? existingNotif.internalId,\n duration,\n );\n }\n }\n\n setNotifications((prev) =>\n prev.map((n) => {\n if (n.internalId === existingNotif.internalId) {\n return {\n ...n,\n ...options,\n internalId: n.internalId,\n createdAt: n.createdAt,\n updatedAt: now,\n ownerId: ownerId ?? n.ownerId,\n };\n }\n return n;\n }),\n );\n\n return returnId;\n }\n\n // New notification — always show immediately, evicting the oldest if at cap.\n // Read from ref (synchronous) to perform side effects OUTSIDE the updater.\n const activeCount = notificationsRef.current.filter(\n (n) => !n.isExiting,\n ).length;\n\n const newNotification: InternalNotification = {\n ...options,\n id,\n internalId,\n createdAt: now,\n updatedAt: now,\n ownerId,\n };\n\n // Evict oldest if at cap (side effects outside updater)\n let evictedInternalId: string | null = null;\n\n if (activeCount >= MAX_NOTIFICATIONS) {\n evictedInternalId = evictOldest();\n }\n\n // Start timer for the new notification\n const duration = getDuration(options);\n\n if (duration != null && duration > 0) {\n timersRef.current?.startNotificationTimer(internalId, id, duration);\n }\n\n setNotifications((prev) => {\n let next = prev;\n\n if (evictedInternalId) {\n next = next.map((n) =>\n n.internalId === evictedInternalId ? { ...n, isExiting: true } : n,\n );\n }\n\n return [...next, newNotification];\n });\n\n return id;\n },\n );\n\n // ─── Update ─────────────────────────────────────────────────────\n\n const updateNotification = useEvent(\n (id: Key, options: Partial<OverlayNotificationOptions>) => {\n setNotifications((prev) =>\n prev.map((n) =>\n matchesNotificationId(n, id)\n ? { ...n, ...options, updatedAt: Date.now() }\n : n,\n ),\n );\n },\n );\n\n // ─── Owner Cleanup ──────────────────────────────────────────────\n\n const removeByOwner = useEvent((ownerId: string) => {\n // Clear timers outside the updater (StrictMode-safe).\n const owned = notificationsRef.current.filter(\n (n) => n.ownerId === ownerId && !n.isExiting,\n );\n\n for (const n of owned) {\n timersRef.current?.clearNotificationTimer(n.internalId);\n }\n\n setNotifications((prev) =>\n prev.map((n) => {\n if (n.ownerId === ownerId && !n.isExiting) {\n return { ...n, isExiting: true };\n }\n return n;\n }),\n );\n });\n\n return {\n notifications,\n notificationsRef,\n addNotification,\n removeNotification,\n restoreNotification,\n updateNotification,\n finalizeNotificationRemoval,\n removeByOwner,\n };\n}\n"],"mappings":";;;;;AAcA,MAAMS,gCAAgC;AACtC,MAAMC,2CAA2C;AACjD,MAAMC,oBAAoB;AAC1B,MAAMC,wBAAwB;AAC9B,MAAMC,kBAAkB,MAAS;AAiCjC,SAAS0B,YACPC,OACe;AACf,KAAIA,MAAME,aAAa,KAAM,QAAO;AACpC,KAAIF,MAAME,aAAaC,OAAW,QAAOH,MAAME;AAC/C,QAAOF,MAAMC,aACT/B,2CACAD;;AAGN,SAASmC,sBAAsB5B,MAA4BE,IAAkB;AAC3E,QAAOF,KAAKE,OAAOA,MAAMF,KAAKqB,eAAeQ,OAAO3B,GAAG;;AAGzD,SAAS4B,iBACPC,MACA7B,IACkC;AAClC,QAAO6B,KAAKC,MAAMC,MAAML,sBAAsBK,GAAG/B,GAAG,CAAC;;;;;;AASvD,SAAgBgC,qBACdC,WACAV,YACmB;CACnB,MAAM,CAAChB,eAAe2B,oBAAoBlD,SACxC,EACF,CAAC;CACD,MAAMwB,mBAAmBzB,OAAOwB,cAAc;AAC9CC,kBAAiB2B,UAAU5B;CAE3B,MAAM6B,YAAYrD,OAAO,EAAE;CAK3B,MAAMsD,sBAAsBtD,uBAC1B,IAAIuD,KACN,CAAC;;;;;;CASD,MAAMC,cAActD,eAA8B;EAChD,MAAMuD,SAAShC,iBAAiB2B,QAAQM,QAAQV,MAAM,CAACA,EAAEW,UAAU;AAEnE,MAAIF,OAAOG,WAAW,EAAG,QAAO;EAGhC,MAAMC,SAASJ,OAAO;AAEtBP,YAAUE,SAASU,uBAAuBD,OAAOzB,WAAW;AAG5D,MAAIyB,OAAOrB,WACTA,YAAW1B,kBAAkB;GAC3BG,IAAI4C,OAAO5C,MAAM4C,OAAOzB;GACxB2B,OAAOF,OAAOE;GACdC,OAAOH,OAAOG;GACdC,aAAaJ,OAAOI;GACpBC,MAAML,OAAOK;GACbC,SAASN,OAAOM;GAChBC,WAAWP,OAAOO;GAClBC,WAAWR,OAAOQ;GAClBC,QAAQ;GACRzC,SAASgC,OAAOhC;GACjB,CAAC;AAGJ,SAAOgC,OAAOzB;GACd;CAIF,MAAMN,qBAAqB5B,UACxBe,IAASc,SAAwB,UAAU;EAI1C,MAAMQ,QAAQM,iBAAiBpB,iBAAiB2B,SAASnC,GAAG;AAE5D,MAAI,CAACsB,SAASA,MAAMoB,UAAW;AAE/BT,YAAUE,SAASU,uBAAuBvB,MAAMH,WAAW;AAG3DkB,sBAAoBF,QAAQmB,IAAI3B,OAAOL,MAAMtB,MAAMsB,MAAMH,WAAW,EAAE;GACpE,GAAGG;GACHiC,mBAAmBzC;GACpB,CAAC;AAGF,SAAOuB,oBAAoBF,QAAQqB,OAAO9D,uBAAuB;GAC/D,MAAMkD,WAASP,oBAAoBF,QAAQsB,MAAM,CAACC,MAAM,CAACC;AAEzD,OAAIf,YAAU,KACZP,qBAAoBF,QAAQyB,OAAOhB,SAAO;OAE1C;;AAIJ,MAAItB,MAAMC,YACR;OAAIT,WAAW,WAAWA,WAAW,UAInCS,YAAW1B,kBAAkB;IAC3BG,IAAIsB,MAAMtB,MAAMsB,MAAMH;IACtB2B,OAAOxB,MAAMwB;IACbC,OAAOzB,MAAMyB;IACbC,aAAa1B,MAAM0B;IACnBC,MAAM3B,MAAM2B;IACZC,SAAS5B,MAAM4B;IACfC,WAAW7B,MAAM6B;IACjBC,WAAW9B,MAAM8B;IACjBC,QAAQ;IACRzC,SAASU,MAAMV;IAChB,CAAC;YACOE,WAAW,UAAU;AAG9BS,eAAWnB,0BAA0BkB,MAAMtB,MAAMsB,MAAMH,WAAW;AAClEI,eAAWxB,qBAAqBuB,MAAMtB,MAAMsB,MAAMH,WAAW;;;AAMjEe,oBAAkB2B,SAChBA,KAAKC,KAAK/B,QACRL,sBAAsBK,KAAG/B,GAAG,GACxB;GAAE,GAAG+B;GAAGW,WAAW;GAAMa,mBAAmBzC;GAAQ,GACpDiB,IAER,CAAC;GAEJ;CAID,MAAMhB,sBAAsB9B,UAAUe,SAAY;EAChD,MAAM+D,QAAQpC,OAAO3B,KAAG;EACxB,MAAMgE,WAAW3B,oBAAoBF,QAAQ8B,IAAIF,MAAM;AAEvD,MAAI,CAACC,SAAU;AAEf3B,sBAAoBF,QAAQyB,OAAOG,MAAM;AAGzC,MAAIC,SAASzC,cAAcyC,SAAST,mBAAmB;GACrD,MAAMW,eAAeF,SAAShE,MAAMgE,SAAS7C;AAE7C,OACE6C,SAAST,sBAAsB,WAC/BS,SAAST,sBAAsB,UAE/BhC,YAAWtB,6BAA6BiE,aAAa;YAC5CF,SAAST,sBAAsB,SACxChC,YAAWlB,qBAAqB6D,aAAa;;EAKjD,MAAM1C,WAAWH,YAAY2C,SAAS;AAEtC,MAAIxC,YAAY,QAAQA,WAAW,EACjCS,WAAUE,SAASgC,uBACjBH,SAAS7C,YACT6C,SAAShE,MAAMgE,SAAS7C,YACxBK,SACD;AAKH,MAFqBI,iBAAiBpB,iBAAiB2B,SAASnC,KAAG,CAIjEkC,mBAAkB2B,WAChBA,OAAKC,KAAK/B,QACRL,sBAAsBK,KAAG/B,KAAG,GACxB;GAAE,GAAG+B;GAAGW,WAAW;GAAOa,mBAAmB9B;GAAW,GACxDM,IAER,CAAC;OACI;GAEL,MAAMsC,WAAiC;IACrC,GAAGL;IACHtB,WAAW;IACXa,mBAAmB9B;IACpB;AAEDS,qBAAkB2B,WAAS,CAAC,GAAGA,QAAMQ,SAAS,CAAC;;GAEjD;CAIF,MAAMnD,8BAA8BjC,UAAUkC,eAAuB;AACnEe,oBAAkB2B,WAASA,OAAKpB,QAAQV,QAAMA,IAAEZ,eAAeA,WAAW,CAAC;AAI3EmD,mBAAiB;AACf,QAAK,MAAM,CAACC,KAAKC,SAASnC,oBAAoBF,QAC5C,KAAIqC,KAAKrD,eAAeA,YAAY;AAClCkB,wBAAoBF,QAAQyB,OAAOW,IAAI;AACvC;;KAGH5E,gBAAgB;GACnB;AAiLF,QAAO;EACLY;EACAC;EACAE,iBAhLsBzB,UACrB0B,SAAqCC,YAA0B;AAC9DwB,aAAUD,WAAW;GACrB,MAAMhB,eAAa,SAASiB,UAAUD,QAAO,GAAIsC,KAAKC,KAAK;GAC3D,MAAMA,MAAMD,KAAKC,KAAK;GACtB,MAAM1E,OAAKW,QAAQX,MAAMmB;AAIzB,OAAIR,QAAQX,MAAM,QAAQuB,WAAWpB,mBAAmBQ,QAAQX,GAAG,CACjE,QAAOA;AAKT,OACEW,QAAQY,cACRZ,QAAQX,MAAM,QACduB,WAAWrB,yBAAyBS,QAAQX,GAAG,EAC/C;AACAuB,eAAW1B,kBAAkB;KAC3BG,IAAAA;KACA8C,OAAOnC,QAAQmC;KACfC,OAAOpC,QAAQoC;KACfC,aAAarC,QAAQqC;KACrBC,MAAMtC,QAAQsC;KACdC,SAASvC,QAAQuC;KACjBC,WAAWuB;KACXtB,WAAWsB;KACXrB,QAAQ;KACRzC;KACD,CAAC;AAEF,WAAOZ;;GAIT,MAAM2E,gBACJhE,QAAQX,MAAM,OACVQ,iBAAiB2B,QAAQL,MACtBC,QAAMA,IAAE/B,OAAOW,QAAQX,MAAM,CAAC+B,IAAEW,UAClC,GACDjB;AAEN,OAAIkD,eAAe;IAEjB,MAAMC,WAAWD,cAAc3E,MAAM2E,cAAcxD;IAEnD,MAAM0D,YAAYF,cAAc5B;IAChC,MAAM+B,kBAAkBH,cAAc3B;IAGtC,MAAM+B,eACJ,OAAOpE,QAAQoC,UAAU,YACzB,OAAO8B,cAAc,YACrBlE,QAAQoC,UAAU8B;IACpB,MAAMG,qBACJ,OAAOrE,QAAQqC,gBAAgB,YAC/B,OAAO8B,oBAAoB,YAC3BnE,QAAQqC,gBAAgB8B;AAE1B,QAAIC,gBAAgBC,oBAAoB;KACtC,MAAMxD,aAAWH,YAAYV,QAAQ;AAErC,SAAIa,cAAY,QAAQA,aAAW,EACjCS,WAAUE,SAASgC,uBACjBQ,cAAcxD,YACdwD,cAAc3E,MAAM2E,cAAcxD,YAClCK,WACD;;AAILU,sBAAkB2B,WAChBA,OAAKC,KAAK/B,QAAM;AACd,SAAIA,IAAEZ,eAAewD,cAAcxD,WACjC,QAAO;MACL,GAAGY;MACH,GAAGpB;MACHQ,YAAYY,IAAEZ;MACdgC,WAAWpB,IAAEoB;MACbC,WAAWsB;MACX9D,SAASA,WAAWmB,IAAEnB;MACvB;AAEH,YAAOmB;MAEX,CAAC;AAED,WAAO6C;;GAKT,MAAMK,cAAczE,iBAAiB2B,QAAQM,QAC1CV,QAAM,CAACA,IAAEW,UACX,CAACC;GAEF,MAAMuC,kBAAwC;IAC5C,GAAGvE;IACHX,IAAAA;IACAmB,YAAAA;IACAgC,WAAWuB;IACXtB,WAAWsB;IACX9D;IACD;GAGD,IAAIuE,oBAAmC;AAEvC,OAAIF,eAAexF,kBACjB0F,qBAAoB5C,aAAa;GAInC,MAAMf,aAAWH,YAAYV,QAAQ;AAErC,OAAIa,cAAY,QAAQA,aAAW,EACjCS,WAAUE,SAASgC,uBAAuBhD,cAAYnB,MAAIwB,WAAS;AAGrEU,qBAAkB2B,WAAS;IACzB,IAAIH,OAAOG;AAEX,QAAIsB,kBACFzB,QAAOA,KAAKI,KAAK/B,QACfA,IAAEZ,eAAegE,oBAAoB;KAAE,GAAGpD;KAAGW,WAAW;KAAM,GAAGX,IAClE;AAGH,WAAO,CAAC,GAAG2B,MAAMwB,gBAAgB;KACjC;AAEF,UAAOlF;IAEV;EA0CCa;EACAE;EACAC,oBAxCyB/B,UACxBe,MAASW,cAAiD;AACzDuB,qBAAkB2B,WAChBA,OAAKC,KAAK/B,QACRL,sBAAsBK,KAAG/B,KAAG,GACxB;IAAE,GAAG+B;IAAG,GAAGpB;IAASyC,WAAWqB,KAAKC,KAAI;IAAG,GAC3C3C,IAER,CAAC;IAEJ;EA+BCb;EACAE,eA5BoBnC,UAAU2B,cAAoB;GAElD,MAAMwE,QAAQ5E,iBAAiB2B,QAAQM,QACpCV,QAAMA,IAAEnB,YAAYA,aAAW,CAACmB,IAAEW,UACpC;AAED,QAAK,MAAMX,OAAKqD,MACdnD,WAAUE,SAASU,uBAAuBd,IAAEZ,WAAW;AAGzDe,qBAAkB2B,WAChBA,OAAKC,KAAK/B,SAAM;AACd,QAAIA,KAAEnB,YAAYA,aAAW,CAACmB,KAAEW,UAC9B,QAAO;KAAE,GAAGX;KAAGW,WAAW;KAAM;AAElC,WAAOX;KAEX,CAAC;IACD;EAWD"}
|
|
1
|
+
{"version":3,"file":"use-notification-state.js","names":["Key","useRef","useState","useEvent","DismissReason","InternalNotification","OverlayNotificationOptions","PersistentNotificationItem","OverlayTimers","DEFAULT_NOTIFICATION_DURATION","DEFAULT_PERSISTENT_NOTIFICATION_DURATION","MAX_NOTIFICATIONS","MAX_DISMISS_SNAPSHOTS","SNAPSHOT_TTL_MS","PersistentCallbacks","addPersistentItem","item","removePersistentItem","id","removePersistentItemSilently","hasDismissedPersistentId","isFullyDismissedId","saveDismissedPersistentId","undoFullyDismissedId","NotificationState","notifications","notificationsRef","ReturnType","addNotification","options","ownerId","removeNotification","reason","restoreNotification","updateNotification","Partial","finalizeNotificationRemoval","internalId","removeByOwner","getDuration","notif","persistent","duration","undefined","matchesNotificationId","String","findNotification","list","find","n","useNotificationState","timersRef","setNotifications","current","idCounter","dismissSnapshotsRef","Map","evictOldest","active","filter","isExiting","length","oldest","clearNotificationTimer","theme","title","description","icon","actions","createdAt","updatedAt","isRead","set","lastDismissReason","size","keys","next","value","delete","prev","map","idStr","snapshot","get","persistentId","startNotificationTimer","stillInState","restored","setTimeout","key","snap","Date","now","existingNotif","returnId","prevTitle","prevDescription","titleChanged","descriptionChanged","activeCount","newNotification","evictedInternalId","owned"],"sources":["../../../../src/components/overlays/Notifications/use-notification-state.ts"],"sourcesContent":["import { Key, useRef, useState } from 'react';\n\nimport { useEvent } from '../../../_internal';\n\nimport type {\n DismissReason,\n InternalNotification,\n OverlayNotificationOptions,\n PersistentNotificationItem,\n} from './types';\nimport type { OverlayTimers } from './use-overlay-timers';\n\n// ─── Constants ───────────────────────────────────────────────────────\n\nconst DEFAULT_NOTIFICATION_DURATION = 3000;\nconst DEFAULT_PERSISTENT_NOTIFICATION_DURATION = 5000;\nconst MAX_NOTIFICATIONS = 5;\nconst MAX_DISMISS_SNAPSHOTS = 50;\nconst SNAPSHOT_TTL_MS = 5 * 60 * 1000;\n\n// ─── Types ───────────────────────────────────────────────────────────\n\nexport interface PersistentCallbacks {\n addPersistentItem: (item: PersistentNotificationItem) => void;\n removePersistentItem: (id: Key) => void;\n removePersistentItemSilently: (id: Key) => void;\n hasDismissedPersistentId: (id: Key) => boolean;\n isFullyDismissedId: (id: Key) => boolean;\n saveDismissedPersistentId: (id: Key) => void;\n undoFullyDismissedId: (id: Key) => void;\n}\n\nexport interface NotificationState {\n notifications: InternalNotification[];\n notificationsRef: ReturnType<typeof useRef<InternalNotification[]>>;\n addNotification: (\n options: OverlayNotificationOptions,\n ownerId?: string,\n ) => Key;\n removeNotification: (id: Key, reason?: DismissReason) => void;\n restoreNotification: (id: Key) => void;\n updateNotification: (\n id: Key,\n options: Partial<OverlayNotificationOptions>,\n ) => void;\n finalizeNotificationRemoval: (internalId: string) => void;\n removeByOwner: (ownerId: string) => void;\n}\n\n// ─── Helpers ─────────────────────────────────────────────────────────\n\nfunction getDuration(\n notif: OverlayNotificationOptions & { persistent?: boolean },\n): number | null {\n if (notif.duration === null) return null;\n if (notif.duration !== undefined) return notif.duration;\n return notif.persistent\n ? DEFAULT_PERSISTENT_NOTIFICATION_DURATION\n : DEFAULT_NOTIFICATION_DURATION;\n}\n\nfunction matchesNotificationId(item: InternalNotification, id: Key): boolean {\n return item.id === id || item.internalId === String(id);\n}\n\nfunction findNotification(\n list: InternalNotification[],\n id: Key,\n): InternalNotification | undefined {\n return list.find((n) => matchesNotificationId(n, id));\n}\n\n// ─── Hook ────────────────────────────────────────────────────────────\n\n/**\n * @param timersRef - Ref to the shared OverlayTimers instance. Accessed only\n * inside callbacks (never during render), so it is guaranteed to be populated.\n */\nexport function useNotificationState(\n timersRef: ReturnType<typeof useRef<OverlayTimers>>,\n persistent: PersistentCallbacks,\n): NotificationState {\n const [notifications, setNotifications] = useState<InternalNotification[]>(\n [],\n );\n const notificationsRef = useRef(notifications);\n notificationsRef.current = notifications;\n\n const idCounter = useRef(0);\n\n // Snapshots of dismissed notifications, keyed by notification id (string).\n // Saved at dismiss time so restoreNotification can re-add the notification\n // even after finalizeNotificationRemoval has removed it from state.\n const dismissSnapshotsRef = useRef<Map<string, InternalNotification>>(\n new Map(),\n );\n\n // ─── Evict Helper ──────────────────────────────────────────────\n\n /**\n * Evict the oldest active notification to make room for a new one.\n * Clears its timer and moves it to the persistent list if applicable.\n * Must be called OUTSIDE setState updaters (StrictMode-safe).\n */\n const evictOldest = useEvent((): string | null => {\n const active = notificationsRef.current.filter((n) => !n.isExiting);\n\n if (active.length === 0) return null;\n\n // Oldest by createdAt (active list preserves insertion order)\n const oldest = active[0];\n\n timersRef.current?.clearNotificationTimer(oldest.internalId);\n\n // Eviction counts as a timeout dismissal — move to persistent list if applicable\n if (oldest.persistent) {\n persistent.addPersistentItem({\n id: oldest.id ?? oldest.internalId,\n theme: oldest.theme,\n title: oldest.title,\n description: oldest.description,\n icon: oldest.icon,\n actions: oldest.actions,\n createdAt: oldest.createdAt,\n updatedAt: oldest.updatedAt,\n isRead: false,\n ownerId: oldest.ownerId,\n });\n }\n\n return oldest.internalId;\n });\n\n // ─── Remove ─────────────────────────────────────────────────────\n\n const removeNotification = useEvent(\n (id: Key, reason: DismissReason = 'api') => {\n // Read from ref (synchronous) to perform side effects OUTSIDE the updater.\n // This prevents double-fire in StrictMode and avoids calling setState\n // (addPersistentItem) inside another setState updater.\n const notif = findNotification(notificationsRef.current, id);\n\n if (!notif || notif.isExiting) return;\n\n timersRef.current?.clearNotificationTimer(notif.internalId);\n\n // Snapshot the notification for potential restore after finalization.\n dismissSnapshotsRef.current.set(String(notif.id ?? notif.internalId), {\n ...notif,\n lastDismissReason: reason,\n });\n\n // Prevent unbounded growth of dismiss snapshots.\n while (dismissSnapshotsRef.current.size > MAX_DISMISS_SNAPSHOTS) {\n const oldest = dismissSnapshotsRef.current.keys().next().value;\n\n if (oldest != null) {\n dismissSnapshotsRef.current.delete(oldest);\n } else {\n break;\n }\n }\n\n if (notif.persistent) {\n if (reason === 'close' || reason === 'timeout') {\n // Dismiss button, Escape, or auto-dismiss timeout — move to persistent list.\n // If the same id is triggered again, it skips the overlay and updates the\n // persistent list directly.\n persistent.addPersistentItem({\n id: notif.id ?? notif.internalId,\n theme: notif.theme,\n title: notif.title,\n description: notif.description,\n icon: notif.icon,\n actions: notif.actions,\n createdAt: notif.createdAt,\n updatedAt: notif.updatedAt,\n isRead: true,\n ownerId: notif.ownerId,\n });\n } else if (reason === 'action') {\n // User clicked a regular action (not dismiss) — fully dismiss the\n // notification so it never reappears (overlay or persistent list).\n persistent.saveDismissedPersistentId(notif.id ?? notif.internalId);\n persistent.removePersistentItem(notif.id ?? notif.internalId);\n }\n // reason === 'api' — programmatic cleanup (e.g. component unmount).\n // No persistence, no full-dismiss tracking.\n }\n\n setNotifications((prev) =>\n prev.map((n) =>\n matchesNotificationId(n, id)\n ? { ...n, isExiting: true, lastDismissReason: reason }\n : n,\n ),\n );\n },\n );\n\n // ─── Restore ──────────────────────────────────────────────────\n\n const restoreNotification = useEvent((id: Key) => {\n const idStr = String(id);\n const snapshot = dismissSnapshotsRef.current.get(idStr);\n\n if (!snapshot) return;\n\n dismissSnapshotsRef.current.delete(idStr);\n\n // Undo persistent side effects based on how the notification was dismissed.\n if (snapshot.persistent && snapshot.lastDismissReason) {\n const persistentId = snapshot.id ?? snapshot.internalId;\n\n if (\n snapshot.lastDismissReason === 'close' ||\n snapshot.lastDismissReason === 'timeout'\n ) {\n persistent.removePersistentItemSilently(persistentId);\n } else if (snapshot.lastDismissReason === 'action') {\n persistent.undoFullyDismissedId(persistentId);\n }\n }\n\n // Restart the auto-dismiss timer.\n const duration = getDuration(snapshot);\n\n if (duration != null && duration > 0) {\n timersRef.current?.startNotificationTimer(\n snapshot.internalId,\n snapshot.id ?? snapshot.internalId,\n duration,\n );\n }\n\n const stillInState = findNotification(notificationsRef.current, id);\n\n if (stillInState) {\n // Exit animation hasn't completed yet — cancel it.\n setNotifications((prev) =>\n prev.map((n) =>\n matchesNotificationId(n, id)\n ? { ...n, isExiting: false, lastDismissReason: undefined }\n : n,\n ),\n );\n } else {\n // Notification was already finalized (removed from state) — re-add it.\n const restored: InternalNotification = {\n ...snapshot,\n isExiting: false,\n lastDismissReason: undefined,\n };\n\n setNotifications((prev) => [...prev, restored]);\n }\n });\n\n // ─── Finalize ──────────────────────────────────────────────────\n\n const finalizeNotificationRemoval = useEvent((internalId: string) => {\n setNotifications((prev) => prev.filter((n) => n.internalId !== internalId));\n\n // Deferred cleanup of the dismiss snapshot. Kept briefly so async action\n // callbacks can still call restoreNotification after the exit animation.\n setTimeout(() => {\n for (const [key, snap] of dismissSnapshotsRef.current) {\n if (snap.internalId === internalId) {\n dismissSnapshotsRef.current.delete(key);\n break;\n }\n }\n }, SNAPSHOT_TTL_MS);\n });\n\n // ─── Add ────────────────────────────────────────────────────────\n\n const addNotification = useEvent(\n (options: OverlayNotificationOptions, ownerId?: string): Key => {\n idCounter.current += 1;\n const internalId = `notif-${idCounter.current}-${Date.now()}`;\n const now = Date.now();\n const id = options.id ?? internalId;\n\n // If the user explicitly removed this notification from the persistent\n // list, completely ignore it — no overlay, no persistent storage.\n if (options.id != null && persistent.isFullyDismissedId(options.id)) {\n return id;\n }\n\n // If this persistent id was previously dismissed to the persistent list,\n // skip the overlay and update the persistent item directly.\n if (\n options.persistent &&\n options.id != null &&\n persistent.hasDismissedPersistentId(options.id)\n ) {\n persistent.addPersistentItem({\n id,\n theme: options.theme,\n title: options.title,\n description: options.description,\n icon: options.icon,\n actions: options.actions,\n createdAt: now,\n updatedAt: now,\n isRead: false,\n ownerId,\n });\n\n return id;\n }\n\n // Check for existing notification with same id via the ref (synchronous read).\n const existingNotif =\n options.id != null\n ? notificationsRef.current.find(\n (n) => n.id === options.id && !n.isExiting,\n )\n : undefined;\n\n if (existingNotif) {\n // In-place update of an existing notification\n const returnId = existingNotif.id ?? existingNotif.internalId;\n\n const prevTitle = existingNotif.title;\n const prevDescription = existingNotif.description;\n\n // Timer reset on string title/description change\n const titleChanged =\n typeof options.title === 'string' &&\n typeof prevTitle === 'string' &&\n options.title !== prevTitle;\n const descriptionChanged =\n typeof options.description === 'string' &&\n typeof prevDescription === 'string' &&\n options.description !== prevDescription;\n\n if (titleChanged || descriptionChanged) {\n const duration = getDuration(options);\n\n if (duration != null && duration > 0) {\n timersRef.current?.startNotificationTimer(\n existingNotif.internalId,\n existingNotif.id ?? existingNotif.internalId,\n duration,\n );\n }\n }\n\n setNotifications((prev) =>\n prev.map((n) => {\n if (n.internalId === existingNotif.internalId) {\n return {\n ...n,\n ...options,\n internalId: n.internalId,\n createdAt: n.createdAt,\n updatedAt: now,\n ownerId: ownerId ?? n.ownerId,\n };\n }\n return n;\n }),\n );\n\n return returnId;\n }\n\n // New notification — always show immediately, evicting the oldest if at cap.\n // Read from ref (synchronous) to perform side effects OUTSIDE the updater.\n const activeCount = notificationsRef.current.filter(\n (n) => !n.isExiting,\n ).length;\n\n const newNotification: InternalNotification = {\n ...options,\n id,\n internalId,\n createdAt: now,\n updatedAt: now,\n ownerId,\n };\n\n // Evict oldest if at cap (side effects outside updater)\n let evictedInternalId: string | null = null;\n\n if (activeCount >= MAX_NOTIFICATIONS) {\n evictedInternalId = evictOldest();\n }\n\n // Start timer for the new notification\n const duration = getDuration(options);\n\n if (duration != null && duration > 0) {\n timersRef.current?.startNotificationTimer(internalId, id, duration);\n }\n\n setNotifications((prev) => {\n let next = prev;\n\n if (evictedInternalId) {\n next = next.map((n) =>\n n.internalId === evictedInternalId ? { ...n, isExiting: true } : n,\n );\n }\n\n return [...next, newNotification];\n });\n\n return id;\n },\n );\n\n // ─── Update ─────────────────────────────────────────────────────\n\n const updateNotification = useEvent(\n (id: Key, options: Partial<OverlayNotificationOptions>) => {\n setNotifications((prev) =>\n prev.map((n) =>\n matchesNotificationId(n, id)\n ? { ...n, ...options, updatedAt: Date.now() }\n : n,\n ),\n );\n },\n );\n\n // ─── Owner Cleanup ──────────────────────────────────────────────\n\n const removeByOwner = useEvent((ownerId: string) => {\n // Clear timers outside the updater (StrictMode-safe).\n const owned = notificationsRef.current.filter(\n (n) => n.ownerId === ownerId && !n.isExiting,\n );\n\n for (const n of owned) {\n timersRef.current?.clearNotificationTimer(n.internalId);\n }\n\n setNotifications((prev) =>\n prev.map((n) => {\n if (n.ownerId === ownerId && !n.isExiting) {\n return { ...n, isExiting: true };\n }\n return n;\n }),\n );\n });\n\n return {\n notifications,\n notificationsRef,\n addNotification,\n removeNotification,\n restoreNotification,\n updateNotification,\n finalizeNotificationRemoval,\n removeByOwner,\n };\n}\n"],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
|
|
2
2
|
import { NotificationsApi } from "./types.js";
|
|
3
|
-
|
|
4
3
|
//#region src/components/overlays/Notifications/use-notifications.d.ts
|
|
5
4
|
/**
|
|
6
5
|
* Hook to display and manage notifications.
|
|
@@ -36,7 +35,6 @@ import { NotificationsApi } from "./types.js";
|
|
|
36
35
|
* });
|
|
37
36
|
* ```
|
|
38
37
|
*/
|
|
39
|
-
declare function useNotifications(): NotificationsApi;
|
|
38
|
+
export declare function useNotifications(): NotificationsApi;
|
|
40
39
|
//#endregion
|
|
41
|
-
export { useNotifications };
|
|
42
40
|
//# sourceMappingURL=use-notifications.d.ts.map
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.198.1 | Cube Dev Team */
|
|
2
2
|
import { useEvent } from "../../../_internal/hooks/use-event.js";
|
|
3
3
|
import { useWarn } from "../../../_internal/hooks/use-warn.js";
|
|
4
4
|
import { useNotificationContext } from "./NotificationContext.js";
|
|
5
5
|
import { useEffect, useRef } from "react";
|
|
6
|
-
|
|
7
6
|
//#region src/components/overlays/Notifications/use-notifications.ts
|
|
8
7
|
let ownerIdCounter = 0;
|
|
9
8
|
function generateOwnerId() {
|
|
@@ -69,7 +68,7 @@ function useNotifications() {
|
|
|
69
68
|
const now = Date.now();
|
|
70
69
|
const id = options.id ?? `stored-${storedIdCounter.current}-${now}`;
|
|
71
70
|
const createdAt = options.createdAt ?? now;
|
|
72
|
-
|
|
71
|
+
const persistentItem = {
|
|
73
72
|
id,
|
|
74
73
|
theme: options.theme,
|
|
75
74
|
title: options.title,
|
|
@@ -79,7 +78,8 @@ function useNotifications() {
|
|
|
79
78
|
createdAt,
|
|
80
79
|
updatedAt: createdAt,
|
|
81
80
|
ownerId: ownerIdRef.current
|
|
82
|
-
}
|
|
81
|
+
};
|
|
82
|
+
addPersistentItem(persistentItem);
|
|
83
83
|
return {
|
|
84
84
|
id,
|
|
85
85
|
dismiss: () => {
|
|
@@ -94,10 +94,11 @@ function useNotifications() {
|
|
|
94
94
|
};
|
|
95
95
|
lastOptionsRef.current = options_0;
|
|
96
96
|
if (isStoredMode(options_0)) return createStoredHandle(options_0);
|
|
97
|
-
const
|
|
97
|
+
const overlayOptions = {
|
|
98
98
|
...options_0,
|
|
99
99
|
mode: "overlay"
|
|
100
|
-
}
|
|
100
|
+
};
|
|
101
|
+
const notificationId = addNotification(overlayOptions, ownerIdRef.current);
|
|
101
102
|
return {
|
|
102
103
|
id: notificationId,
|
|
103
104
|
dismiss: () => {
|
|
@@ -140,7 +141,7 @@ function useNotifications() {
|
|
|
140
141
|
dismiss
|
|
141
142
|
};
|
|
142
143
|
}
|
|
143
|
-
|
|
144
144
|
//#endregion
|
|
145
145
|
export { useNotifications };
|
|
146
|
+
|
|
146
147
|
//# sourceMappingURL=use-notifications.js.map
|