@cratis/scene.primereact 1.1.0 → 3.0.0
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/.storybook/preview.tsx +44 -0
- package/MenuItem.ts +57 -0
- package/PrimeSeverity.ts +17 -0
- package/README.md +79 -92
- package/TreeNode.ts +68 -0
- package/button/ButtonGallery.stories.tsx +1 -1
- package/button/PrimeButton.tsx +26 -8
- package/button/PrimeButtonGroup.tsx +4 -1
- package/button/PrimeSpeedDial.tsx +23 -5
- package/button/PrimeSplitButton.tsx +11 -5
- package/button/SplitButton.tsx +135 -0
- package/button/index.ts +1 -0
- package/data/Column.tsx +62 -0
- package/data/ColumnDefinition.ts +10 -1
- package/data/DataGallery.stories.tsx +0 -5
- package/data/Pagination.tsx +82 -0
- package/data/PrimeColumn.tsx +17 -7
- package/data/PrimeDataTable.tsx +111 -16
- package/data/PrimeDataView.tsx +30 -15
- package/data/PrimeOrderList.tsx +54 -13
- package/data/PrimeOrganizationChart.tsx +28 -8
- package/data/PrimePaginator.tsx +16 -14
- package/data/PrimePickList.tsx +56 -19
- package/data/PrimeTimeline.tsx +49 -14
- package/data/PrimeTree.tsx +29 -6
- package/data/columnDefinitions.ts +5 -3
- package/data/index.ts +1 -2
- package/data/primeTreeNodes.ts +68 -0
- package/data/selectOptions.ts +29 -0
- package/dist/cjs/button/PrimeButton.js +33 -9
- package/dist/cjs/button/PrimeButton.js.map +1 -1
- package/dist/cjs/button/PrimeButtonGroup.js +4 -1
- package/dist/cjs/button/PrimeButtonGroup.js.map +1 -1
- package/dist/cjs/button/PrimeSpeedDial.js +33 -4
- package/dist/cjs/button/PrimeSpeedDial.js.map +1 -1
- package/dist/cjs/button/PrimeSplitButton.js +14 -6
- package/dist/cjs/button/PrimeSplitButton.js.map +1 -1
- package/dist/cjs/button/SplitButton.js +126 -0
- package/dist/cjs/button/SplitButton.js.map +1 -0
- package/dist/cjs/data/Column.js +21 -0
- package/dist/cjs/data/Column.js.map +1 -0
- package/dist/cjs/data/Pagination.js +55 -0
- package/dist/cjs/data/Pagination.js.map +1 -0
- package/dist/cjs/data/PrimeColumn.js +14 -8
- package/dist/cjs/data/PrimeColumn.js.map +1 -1
- package/dist/cjs/data/PrimeDataTable.js +121 -16
- package/dist/cjs/data/PrimeDataTable.js.map +1 -1
- package/dist/cjs/data/PrimeDataView.js +42 -20
- package/dist/cjs/data/PrimeDataView.js.map +1 -1
- package/dist/cjs/data/PrimeOrderList.js +75 -12
- package/dist/cjs/data/PrimeOrderList.js.map +1 -1
- package/dist/cjs/data/PrimeOrganizationChart.js +34 -10
- package/dist/cjs/data/PrimeOrganizationChart.js.map +1 -1
- package/dist/cjs/data/PrimePaginator.js +16 -18
- package/dist/cjs/data/PrimePaginator.js.map +1 -1
- package/dist/cjs/data/PrimePickList.js +79 -19
- package/dist/cjs/data/PrimePickList.js.map +1 -1
- package/dist/cjs/data/PrimeTimeline.js +55 -19
- package/dist/cjs/data/PrimeTimeline.js.map +1 -1
- package/dist/cjs/data/PrimeTree.js +43 -4
- package/dist/cjs/data/PrimeTree.js.map +1 -1
- package/dist/cjs/data/columnDefinitions.js +5 -3
- package/dist/cjs/data/columnDefinitions.js.map +1 -1
- package/dist/cjs/data/primeTreeNodes.js +33 -0
- package/dist/cjs/data/primeTreeNodes.js.map +1 -0
- package/dist/cjs/data/selectOptions.js +22 -0
- package/dist/cjs/data/selectOptions.js.map +1 -0
- package/dist/cjs/form/PrimeAutoComplete.js +36 -15
- package/dist/cjs/form/PrimeAutoComplete.js.map +1 -1
- package/dist/cjs/form/PrimeCalendar.js +80 -10
- package/dist/cjs/form/PrimeCalendar.js.map +1 -1
- package/dist/cjs/form/PrimeCheckbox.js +11 -3
- package/dist/cjs/form/PrimeCheckbox.js.map +1 -1
- package/dist/cjs/form/PrimeChips.js +41 -7
- package/dist/cjs/form/PrimeChips.js.map +1 -1
- package/dist/cjs/form/PrimeColorPicker.js +57 -10
- package/dist/cjs/form/PrimeColorPicker.js.map +1 -1
- package/dist/cjs/form/PrimeDropdown.js +37 -9
- package/dist/cjs/form/PrimeDropdown.js.map +1 -1
- package/dist/cjs/form/PrimeIconField.js +15 -9
- package/dist/cjs/form/PrimeIconField.js.map +1 -1
- package/dist/cjs/form/PrimeInputNumber.js +26 -4
- package/dist/cjs/form/PrimeInputNumber.js.map +1 -1
- package/dist/cjs/form/PrimeInputTextarea.js +6 -4
- package/dist/cjs/form/PrimeInputTextarea.js.map +1 -1
- package/dist/cjs/form/PrimeKnob.js +13 -3
- package/dist/cjs/form/PrimeKnob.js.map +1 -1
- package/dist/cjs/form/PrimeListBox.js +11 -5
- package/dist/cjs/form/PrimeListBox.js.map +1 -1
- package/dist/cjs/form/PrimeMultiSelect.js +43 -8
- package/dist/cjs/form/PrimeMultiSelect.js.map +1 -1
- package/dist/cjs/form/PrimePassword.js +12 -6
- package/dist/cjs/form/PrimePassword.js.map +1 -1
- package/dist/cjs/form/PrimeRadioButton.js +13 -3
- package/dist/cjs/form/PrimeRadioButton.js.map +1 -1
- package/dist/cjs/form/PrimeRating.js +30 -5
- package/dist/cjs/form/PrimeRating.js.map +1 -1
- package/dist/cjs/form/PrimeSelectButton.js +15 -8
- package/dist/cjs/form/PrimeSelectButton.js.map +1 -1
- package/dist/cjs/form/PrimeSlider.js +14 -3
- package/dist/cjs/form/PrimeSlider.js.map +1 -1
- package/dist/cjs/form/PrimeToggleSwitch.js +15 -8
- package/dist/cjs/form/PrimeToggleSwitch.js.map +1 -1
- package/dist/cjs/form/PrimeTreeSelect.js +17 -8
- package/dist/cjs/form/PrimeTreeSelect.js.map +1 -1
- package/dist/cjs/form/TreeSelect.js +132 -0
- package/dist/cjs/form/TreeSelect.js.map +1 -0
- package/dist/cjs/index.js +41 -13
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/media/Image.js +99 -0
- package/dist/cjs/media/Image.js.map +1 -0
- package/dist/cjs/media/PrimeCarousel.js +50 -16
- package/dist/cjs/media/PrimeCarousel.js.map +1 -1
- package/dist/cjs/media/PrimeGalleria.js +58 -18
- package/dist/cjs/media/PrimeGalleria.js.map +1 -1
- package/dist/cjs/media/PrimeImage.js +9 -3
- package/dist/cjs/media/PrimeImage.js.map +1 -1
- package/dist/cjs/menu/Dock.js +111 -0
- package/dist/cjs/menu/Dock.js.map +1 -0
- package/dist/cjs/menu/DockPosition.js +29 -0
- package/dist/cjs/menu/DockPosition.js.map +1 -0
- package/dist/cjs/menu/MegaMenu.js +138 -0
- package/dist/cjs/menu/MegaMenu.js.map +1 -0
- package/dist/cjs/menu/MenuItemAction.js +54 -0
- package/dist/cjs/menu/MenuItemAction.js.map +1 -0
- package/dist/cjs/menu/MenuItemContent.js +34 -0
- package/dist/cjs/menu/MenuItemContent.js.map +1 -0
- package/dist/cjs/menu/Menubar.js +139 -0
- package/dist/cjs/menu/Menubar.js.map +1 -0
- package/dist/cjs/menu/PanelMenu.js +112 -0
- package/dist/cjs/menu/PanelMenu.js.map +1 -0
- package/dist/cjs/menu/PrimeBreadcrumb.js +69 -7
- package/dist/cjs/menu/PrimeBreadcrumb.js.map +1 -1
- package/dist/cjs/menu/PrimeContextMenu.js +36 -12
- package/dist/cjs/menu/PrimeContextMenu.js.map +1 -1
- package/dist/cjs/menu/PrimeDock.js +35 -8
- package/dist/cjs/menu/PrimeDock.js.map +1 -1
- package/dist/cjs/menu/PrimeMegaMenu.js +12 -8
- package/dist/cjs/menu/PrimeMegaMenu.js.map +1 -1
- package/dist/cjs/menu/PrimeMenu.js +58 -2
- package/dist/cjs/menu/PrimeMenu.js.map +1 -1
- package/dist/cjs/menu/PrimeMenubar.js +10 -3
- package/dist/cjs/menu/PrimeMenubar.js.map +1 -1
- package/dist/cjs/menu/PrimePanelMenu.js +9 -4
- package/dist/cjs/menu/PrimePanelMenu.js.map +1 -1
- package/dist/cjs/menu/PrimeSteps.js +16 -10
- package/dist/cjs/menu/PrimeSteps.js.map +1 -1
- package/dist/cjs/menu/PrimeTabMenu.js +12 -9
- package/dist/cjs/menu/PrimeTabMenu.js.map +1 -1
- package/dist/cjs/menu/PrimeTieredMenu.js +9 -3
- package/dist/cjs/menu/PrimeTieredMenu.js.map +1 -1
- package/dist/cjs/menu/Steps.js +74 -0
- package/dist/cjs/menu/Steps.js.map +1 -0
- package/dist/cjs/menu/TabMenu.js +59 -0
- package/dist/cjs/menu/TabMenu.js.map +1 -0
- package/dist/cjs/menu/TieredMenu.js +131 -0
- package/dist/cjs/menu/TieredMenu.js.map +1 -0
- package/dist/cjs/menuItems.js.map +1 -1
- package/dist/cjs/messages/PrimeInlineMessage.js +40 -4
- package/dist/cjs/messages/PrimeInlineMessage.js.map +1 -1
- package/dist/cjs/messages/PrimeMessage.js +39 -4
- package/dist/cjs/messages/PrimeMessage.js.map +1 -1
- package/dist/cjs/messages/PrimeToast.js +96 -12
- package/dist/cjs/messages/PrimeToast.js.map +1 -1
- package/dist/cjs/misc/BlockUI.js +47 -0
- package/dist/cjs/misc/BlockUI.js.map +1 -0
- package/dist/cjs/misc/PrimeAvatar.js +26 -5
- package/dist/cjs/misc/PrimeAvatar.js.map +1 -1
- package/dist/cjs/misc/PrimeBadge.js +15 -3
- package/dist/cjs/misc/PrimeBadge.js.map +1 -1
- package/dist/cjs/misc/PrimeBlockUI.js +13 -3
- package/dist/cjs/misc/PrimeBlockUI.js.map +1 -1
- package/dist/cjs/misc/PrimeChip.js +41 -5
- package/dist/cjs/misc/PrimeChip.js.map +1 -1
- package/dist/cjs/misc/PrimeInplace.js +18 -5
- package/dist/cjs/misc/PrimeInplace.js.map +1 -1
- package/dist/cjs/misc/PrimeProgressBar.js +16 -6
- package/dist/cjs/misc/PrimeProgressBar.js.map +1 -1
- package/dist/cjs/misc/PrimeProgressSpinner.js +14 -3
- package/dist/cjs/misc/PrimeProgressSpinner.js.map +1 -1
- package/dist/cjs/misc/PrimeScrollTop.js +22 -12
- package/dist/cjs/misc/PrimeScrollTop.js.map +1 -1
- package/dist/cjs/misc/PrimeSkeleton.js +4 -0
- package/dist/cjs/misc/PrimeSkeleton.js.map +1 -1
- package/dist/cjs/misc/PrimeTag.js +21 -5
- package/dist/cjs/misc/PrimeTag.js.map +1 -1
- package/dist/cjs/misc/PrimeTerminal.js +22 -7
- package/dist/cjs/misc/PrimeTerminal.js.map +1 -1
- package/dist/cjs/misc/ScrollTop.js +70 -0
- package/dist/cjs/misc/ScrollTop.js.map +1 -0
- package/dist/cjs/overlay/ConfirmDialog.js +107 -0
- package/dist/cjs/overlay/ConfirmDialog.js.map +1 -0
- package/dist/cjs/overlay/PrimeConfirmDialog.js +15 -8
- package/dist/cjs/overlay/PrimeConfirmDialog.js.map +1 -1
- package/dist/cjs/overlay/PrimeDialog.js +50 -9
- package/dist/cjs/overlay/PrimeDialog.js.map +1 -1
- package/dist/cjs/overlay/PrimeOverlayPanel.js +29 -17
- package/dist/cjs/overlay/PrimeOverlayPanel.js.map +1 -1
- package/dist/cjs/overlay/PrimeSidebar.js +51 -12
- package/dist/cjs/overlay/PrimeSidebar.js.map +1 -1
- package/dist/cjs/overlay/PrimeTooltip.js +26 -13
- package/dist/cjs/overlay/PrimeTooltip.js.map +1 -1
- package/dist/cjs/panel/PrimeAccordion.js +39 -9
- package/dist/cjs/panel/PrimeAccordion.js.map +1 -1
- package/dist/cjs/panel/PrimeCard.js +25 -4
- package/dist/cjs/panel/PrimeCard.js.map +1 -1
- package/dist/cjs/panel/PrimeDivider.js +6 -1
- package/dist/cjs/panel/PrimeDivider.js.map +1 -1
- package/dist/cjs/panel/PrimeFieldset.js +37 -4
- package/dist/cjs/panel/PrimeFieldset.js.map +1 -1
- package/dist/cjs/panel/PrimePanel.js +41 -5
- package/dist/cjs/panel/PrimePanel.js.map +1 -1
- package/dist/cjs/panel/PrimeScrollPanel.js +20 -5
- package/dist/cjs/panel/PrimeScrollPanel.js.map +1 -1
- package/dist/cjs/panel/PrimeSplitter.js +26 -6
- package/dist/cjs/panel/PrimeSplitter.js.map +1 -1
- package/dist/cjs/panel/PrimeStepper.js +71 -29
- package/dist/cjs/panel/PrimeStepper.js.map +1 -1
- package/dist/cjs/panel/PrimeTabView.js +35 -10
- package/dist/cjs/panel/PrimeTabView.js.map +1 -1
- package/dist/cjs/panel/PrimeToolbar.js +18 -4
- package/dist/cjs/panel/PrimeToolbar.js.map +1 -1
- package/dist/cjs/primeReactComponents.js +12 -8
- package/dist/cjs/primeReactComponents.js.map +1 -1
- package/dist/cjs/primeReactPackage.js +7 -8
- package/dist/cjs/primeReactPackage.js.map +1 -1
- package/dist/cjs/properties.js +15 -0
- package/dist/cjs/properties.js.map +1 -1
- package/dist/cjs/screen/PrimeAction.js +24 -6
- package/dist/cjs/screen/PrimeAction.js.map +1 -1
- package/dist/cjs/screen/PrimeSummary.js +50 -26
- package/dist/cjs/screen/PrimeSummary.js.map +1 -1
- package/dist/cjs/theme/PrimeReactThemeFamily.js +34 -0
- package/dist/cjs/theme/PrimeReactThemeFamily.js.map +1 -0
- package/dist/cjs/theme/primeReactThemePreset.js +73 -0
- package/dist/cjs/theme/primeReactThemePreset.js.map +1 -0
- package/dist/cjs/theme/primeReactThemes.js +36 -18
- package/dist/cjs/theme/primeReactThemes.js.map +1 -1
- package/dist/cjs/theme/themePresets.js +364 -331
- package/dist/cjs/theme/themePresets.js.map +1 -1
- package/dist/cjs/theme/usePrimeReactTheme.js +46 -25
- package/dist/cjs/theme/usePrimeReactTheme.js.map +1 -1
- package/dist/cjs/treeNodes.js.map +1 -1
- package/dist/esm/MenuItem.d.ts +10 -0
- package/dist/esm/MenuItem.d.ts.map +1 -0
- package/dist/esm/MenuItem.js +2 -0
- package/dist/esm/MenuItem.js.map +1 -0
- package/dist/esm/PrimeSeverity.d.ts +2 -0
- package/dist/esm/PrimeSeverity.d.ts.map +1 -0
- package/dist/esm/PrimeSeverity.js +2 -0
- package/dist/esm/PrimeSeverity.js.map +1 -0
- package/dist/esm/TreeNode.d.ts +12 -0
- package/dist/esm/TreeNode.d.ts.map +1 -0
- package/dist/esm/TreeNode.js +2 -0
- package/dist/esm/TreeNode.js.map +1 -0
- package/dist/esm/button/ButtonGallery.stories.js +1 -1
- package/dist/esm/button/ButtonGallery.stories.js.map +1 -1
- package/dist/esm/button/PrimeButton.d.ts.map +1 -1
- package/dist/esm/button/PrimeButton.js +35 -11
- package/dist/esm/button/PrimeButton.js.map +1 -1
- package/dist/esm/button/PrimeButtonGroup.d.ts.map +1 -1
- package/dist/esm/button/PrimeButtonGroup.js +4 -1
- package/dist/esm/button/PrimeButtonGroup.js.map +1 -1
- package/dist/esm/button/PrimeSpeedDial.d.ts.map +1 -1
- package/dist/esm/button/PrimeSpeedDial.js +34 -5
- package/dist/esm/button/PrimeSpeedDial.js.map +1 -1
- package/dist/esm/button/PrimeSplitButton.d.ts.map +1 -1
- package/dist/esm/button/PrimeSplitButton.js +13 -5
- package/dist/esm/button/PrimeSplitButton.js.map +1 -1
- package/dist/esm/button/SplitButton.d.ts +12 -0
- package/dist/esm/button/SplitButton.d.ts.map +1 -0
- package/dist/esm/button/SplitButton.js +124 -0
- package/dist/esm/button/SplitButton.js.map +1 -0
- package/dist/esm/button/index.d.ts +1 -0
- package/dist/esm/button/index.d.ts.map +1 -1
- package/dist/esm/button/index.js +1 -0
- package/dist/esm/button/index.js.map +1 -1
- package/dist/esm/data/Column.d.ts +10 -0
- package/dist/esm/data/Column.d.ts.map +1 -0
- package/dist/esm/data/Column.js +19 -0
- package/dist/esm/data/Column.js.map +1 -0
- package/dist/esm/data/ColumnDefinition.d.ts.map +1 -1
- package/dist/esm/data/DataGallery.stories.d.ts.map +1 -1
- package/dist/esm/data/DataGallery.stories.js +0 -5
- package/dist/esm/data/DataGallery.stories.js.map +1 -1
- package/dist/esm/data/Pagination.d.ts +9 -0
- package/dist/esm/data/Pagination.d.ts.map +1 -0
- package/dist/esm/data/Pagination.js +53 -0
- package/dist/esm/data/Pagination.js.map +1 -0
- package/dist/esm/data/PrimeColumn.d.ts.map +1 -1
- package/dist/esm/data/PrimeColumn.js +13 -7
- package/dist/esm/data/PrimeColumn.js.map +1 -1
- package/dist/esm/data/PrimeDataTable.d.ts +1 -1
- package/dist/esm/data/PrimeDataTable.d.ts.map +1 -1
- package/dist/esm/data/PrimeDataTable.js +122 -17
- package/dist/esm/data/PrimeDataTable.js.map +1 -1
- package/dist/esm/data/PrimeDataView.d.ts.map +1 -1
- package/dist/esm/data/PrimeDataView.js +44 -22
- package/dist/esm/data/PrimeDataView.js.map +1 -1
- package/dist/esm/data/PrimeOrderList.d.ts.map +1 -1
- package/dist/esm/data/PrimeOrderList.js +76 -13
- package/dist/esm/data/PrimeOrderList.js.map +1 -1
- package/dist/esm/data/PrimeOrganizationChart.d.ts.map +1 -1
- package/dist/esm/data/PrimeOrganizationChart.js +35 -11
- package/dist/esm/data/PrimeOrganizationChart.js.map +1 -1
- package/dist/esm/data/PrimePaginator.d.ts.map +1 -1
- package/dist/esm/data/PrimePaginator.js +16 -18
- package/dist/esm/data/PrimePaginator.js.map +1 -1
- package/dist/esm/data/PrimePickList.d.ts.map +1 -1
- package/dist/esm/data/PrimePickList.js +80 -20
- package/dist/esm/data/PrimePickList.js.map +1 -1
- package/dist/esm/data/PrimeTimeline.d.ts.map +1 -1
- package/dist/esm/data/PrimeTimeline.js +55 -19
- package/dist/esm/data/PrimeTimeline.js.map +1 -1
- package/dist/esm/data/PrimeTree.d.ts.map +1 -1
- package/dist/esm/data/PrimeTree.js +44 -5
- package/dist/esm/data/PrimeTree.js.map +1 -1
- package/dist/esm/data/columnDefinitions.d.ts.map +1 -1
- package/dist/esm/data/columnDefinitions.js +5 -3
- package/dist/esm/data/columnDefinitions.js.map +1 -1
- package/dist/esm/data/index.d.ts +1 -2
- package/dist/esm/data/index.d.ts.map +1 -1
- package/dist/esm/data/index.js +1 -2
- package/dist/esm/data/index.js.map +1 -1
- package/dist/esm/data/primeTreeNodes.d.ts +10 -0
- package/dist/esm/data/primeTreeNodes.d.ts.map +1 -0
- package/dist/esm/data/primeTreeNodes.js +31 -0
- package/dist/esm/data/primeTreeNodes.js.map +1 -0
- package/dist/esm/data/selectOptions.d.ts +3 -0
- package/dist/esm/data/selectOptions.d.ts.map +1 -0
- package/dist/esm/data/selectOptions.js +20 -0
- package/dist/esm/data/selectOptions.js.map +1 -0
- package/dist/esm/for_primeReactPackage/when_rendering_every_declared_component.js +21 -1
- package/dist/esm/for_primeReactPackage/when_rendering_every_declared_component.js.map +1 -1
- package/dist/esm/for_primeReactThemePreset/when_resolving_a_preset.d.ts +2 -0
- package/dist/esm/for_primeReactThemePreset/when_resolving_a_preset.d.ts.map +1 -0
- package/dist/esm/for_primeReactThemePreset/when_resolving_a_preset.js +30 -0
- package/dist/esm/for_primeReactThemePreset/when_resolving_a_preset.js.map +1 -0
- package/dist/esm/for_primeReactThemes/when_checking_attribution.js +3 -3
- package/dist/esm/for_primeReactThemes/when_checking_attribution.js.map +1 -1
- package/dist/esm/for_primeReactThemes/when_checking_the_token_vocabulary.js +9 -3
- package/dist/esm/for_primeReactThemes/when_checking_the_token_vocabulary.js.map +1 -1
- package/dist/esm/form/FormGallery.stories.d.ts.map +1 -1
- package/dist/esm/form/FormGallery.stories.js +1 -5
- package/dist/esm/form/FormGallery.stories.js.map +1 -1
- package/dist/esm/form/PrimeAutoComplete.d.ts.map +1 -1
- package/dist/esm/form/PrimeAutoComplete.js +37 -16
- package/dist/esm/form/PrimeAutoComplete.js.map +1 -1
- package/dist/esm/form/PrimeCalendar.d.ts.map +1 -1
- package/dist/esm/form/PrimeCalendar.js +81 -11
- package/dist/esm/form/PrimeCalendar.js.map +1 -1
- package/dist/esm/form/PrimeCheckbox.d.ts.map +1 -1
- package/dist/esm/form/PrimeCheckbox.js +11 -3
- package/dist/esm/form/PrimeCheckbox.js.map +1 -1
- package/dist/esm/form/PrimeChips.d.ts.map +1 -1
- package/dist/esm/form/PrimeChips.js +44 -10
- package/dist/esm/form/PrimeChips.js.map +1 -1
- package/dist/esm/form/PrimeColorPicker.d.ts.map +1 -1
- package/dist/esm/form/PrimeColorPicker.js +58 -11
- package/dist/esm/form/PrimeColorPicker.js.map +1 -1
- package/dist/esm/form/PrimeDropdown.d.ts.map +1 -1
- package/dist/esm/form/PrimeDropdown.js +38 -10
- package/dist/esm/form/PrimeDropdown.js.map +1 -1
- package/dist/esm/form/PrimeIconField.d.ts.map +1 -1
- package/dist/esm/form/PrimeIconField.js +16 -10
- package/dist/esm/form/PrimeIconField.js.map +1 -1
- package/dist/esm/form/PrimeInputNumber.d.ts.map +1 -1
- package/dist/esm/form/PrimeInputNumber.js +27 -5
- package/dist/esm/form/PrimeInputNumber.js.map +1 -1
- package/dist/esm/form/PrimeInputTextarea.d.ts.map +1 -1
- package/dist/esm/form/PrimeInputTextarea.js +6 -4
- package/dist/esm/form/PrimeInputTextarea.js.map +1 -1
- package/dist/esm/form/PrimeKnob.d.ts.map +1 -1
- package/dist/esm/form/PrimeKnob.js +14 -4
- package/dist/esm/form/PrimeKnob.js.map +1 -1
- package/dist/esm/form/PrimeListBox.d.ts.map +1 -1
- package/dist/esm/form/PrimeListBox.js +12 -6
- package/dist/esm/form/PrimeListBox.js.map +1 -1
- package/dist/esm/form/PrimeMultiSelect.d.ts.map +1 -1
- package/dist/esm/form/PrimeMultiSelect.js +45 -10
- package/dist/esm/form/PrimeMultiSelect.js.map +1 -1
- package/dist/esm/form/PrimePassword.d.ts.map +1 -1
- package/dist/esm/form/PrimePassword.js +12 -6
- package/dist/esm/form/PrimePassword.js.map +1 -1
- package/dist/esm/form/PrimeRadioButton.d.ts.map +1 -1
- package/dist/esm/form/PrimeRadioButton.js +13 -3
- package/dist/esm/form/PrimeRadioButton.js.map +1 -1
- package/dist/esm/form/PrimeRating.d.ts.map +1 -1
- package/dist/esm/form/PrimeRating.js +31 -6
- package/dist/esm/form/PrimeRating.js.map +1 -1
- package/dist/esm/form/PrimeSelectButton.d.ts.map +1 -1
- package/dist/esm/form/PrimeSelectButton.js +16 -9
- package/dist/esm/form/PrimeSelectButton.js.map +1 -1
- package/dist/esm/form/PrimeSlider.d.ts.map +1 -1
- package/dist/esm/form/PrimeSlider.js +15 -4
- package/dist/esm/form/PrimeSlider.js.map +1 -1
- package/dist/esm/form/PrimeToggleSwitch.d.ts.map +1 -1
- package/dist/esm/form/PrimeToggleSwitch.js +15 -8
- package/dist/esm/form/PrimeToggleSwitch.js.map +1 -1
- package/dist/esm/form/PrimeTreeSelect.d.ts.map +1 -1
- package/dist/esm/form/PrimeTreeSelect.js +17 -8
- package/dist/esm/form/PrimeTreeSelect.js.map +1 -1
- package/dist/esm/form/TreeSelect.d.ts +10 -0
- package/dist/esm/form/TreeSelect.d.ts.map +1 -0
- package/dist/esm/form/TreeSelect.js +130 -0
- package/dist/esm/form/TreeSelect.js.map +1 -0
- package/dist/esm/form/index.d.ts +1 -2
- package/dist/esm/form/index.d.ts.map +1 -1
- package/dist/esm/form/index.js +1 -2
- package/dist/esm/form/index.js.map +1 -1
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +22 -9
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/media/Image.d.ts +10 -0
- package/dist/esm/media/Image.d.ts.map +1 -0
- package/dist/esm/media/Image.js +97 -0
- package/dist/esm/media/Image.js.map +1 -0
- package/dist/esm/media/MediaGallery.stories.js +1 -1
- package/dist/esm/media/MediaGallery.stories.js.map +1 -1
- package/dist/esm/media/PrimeCarousel.d.ts.map +1 -1
- package/dist/esm/media/PrimeCarousel.js +52 -18
- package/dist/esm/media/PrimeCarousel.js.map +1 -1
- package/dist/esm/media/PrimeGalleria.d.ts.map +1 -1
- package/dist/esm/media/PrimeGalleria.js +60 -20
- package/dist/esm/media/PrimeGalleria.js.map +1 -1
- package/dist/esm/media/PrimeImage.d.ts.map +1 -1
- package/dist/esm/media/PrimeImage.js +8 -2
- package/dist/esm/media/PrimeImage.js.map +1 -1
- package/dist/esm/media/index.d.ts +1 -0
- package/dist/esm/media/index.d.ts.map +1 -1
- package/dist/esm/media/index.js +1 -0
- package/dist/esm/media/index.js.map +1 -1
- package/dist/esm/menu/Dock.d.ts +9 -0
- package/dist/esm/menu/Dock.d.ts.map +1 -0
- package/dist/esm/menu/Dock.js +109 -0
- package/dist/esm/menu/Dock.js.map +1 -0
- package/dist/esm/menu/DockPosition.d.ts +7 -0
- package/dist/esm/menu/DockPosition.d.ts.map +1 -0
- package/dist/esm/menu/DockPosition.js +27 -0
- package/dist/esm/menu/DockPosition.js.map +1 -0
- package/dist/esm/menu/MegaMenu.d.ts +7 -0
- package/dist/esm/menu/MegaMenu.d.ts.map +1 -0
- package/dist/esm/menu/MegaMenu.js +136 -0
- package/dist/esm/menu/MegaMenu.js.map +1 -0
- package/dist/esm/menu/MenuGallery.stories.d.ts +1 -0
- package/dist/esm/menu/MenuGallery.stories.d.ts.map +1 -1
- package/dist/esm/menu/MenuGallery.stories.js +25 -3
- package/dist/esm/menu/MenuGallery.stories.js.map +1 -1
- package/dist/esm/menu/MenuItemAction.d.ts +12 -0
- package/dist/esm/menu/MenuItemAction.d.ts.map +1 -0
- package/dist/esm/menu/MenuItemAction.js +52 -0
- package/dist/esm/menu/MenuItemAction.js.map +1 -0
- package/dist/esm/menu/MenuItemContent.d.ts +6 -0
- package/dist/esm/menu/MenuItemContent.d.ts.map +1 -0
- package/dist/esm/menu/MenuItemContent.js +32 -0
- package/dist/esm/menu/MenuItemContent.js.map +1 -0
- package/dist/esm/menu/Menubar.d.ts +9 -0
- package/dist/esm/menu/Menubar.d.ts.map +1 -0
- package/dist/esm/menu/Menubar.js +137 -0
- package/dist/esm/menu/Menubar.js.map +1 -0
- package/dist/esm/menu/PanelMenu.d.ts +8 -0
- package/dist/esm/menu/PanelMenu.d.ts.map +1 -0
- package/dist/esm/menu/PanelMenu.js +110 -0
- package/dist/esm/menu/PanelMenu.js.map +1 -0
- package/dist/esm/menu/PrimeBreadcrumb.d.ts.map +1 -1
- package/dist/esm/menu/PrimeBreadcrumb.js +71 -9
- package/dist/esm/menu/PrimeBreadcrumb.js.map +1 -1
- package/dist/esm/menu/PrimeContextMenu.d.ts.map +1 -1
- package/dist/esm/menu/PrimeContextMenu.js +36 -12
- package/dist/esm/menu/PrimeContextMenu.js.map +1 -1
- package/dist/esm/menu/PrimeDock.d.ts.map +1 -1
- package/dist/esm/menu/PrimeDock.js +34 -7
- package/dist/esm/menu/PrimeDock.js.map +1 -1
- package/dist/esm/menu/PrimeMegaMenu.d.ts.map +1 -1
- package/dist/esm/menu/PrimeMegaMenu.js +11 -7
- package/dist/esm/menu/PrimeMegaMenu.js.map +1 -1
- package/dist/esm/menu/PrimeMenu.d.ts.map +1 -1
- package/dist/esm/menu/PrimeMenu.js +59 -3
- package/dist/esm/menu/PrimeMenu.js.map +1 -1
- package/dist/esm/menu/PrimeMenubar.d.ts.map +1 -1
- package/dist/esm/menu/PrimeMenubar.js +9 -2
- package/dist/esm/menu/PrimeMenubar.js.map +1 -1
- package/dist/esm/menu/PrimePanelMenu.d.ts.map +1 -1
- package/dist/esm/menu/PrimePanelMenu.js +8 -3
- package/dist/esm/menu/PrimePanelMenu.js.map +1 -1
- package/dist/esm/menu/PrimeSteps.d.ts.map +1 -1
- package/dist/esm/menu/PrimeSteps.js +16 -10
- package/dist/esm/menu/PrimeSteps.js.map +1 -1
- package/dist/esm/menu/PrimeTabMenu.d.ts.map +1 -1
- package/dist/esm/menu/PrimeTabMenu.js +11 -8
- package/dist/esm/menu/PrimeTabMenu.js.map +1 -1
- package/dist/esm/menu/PrimeTieredMenu.d.ts.map +1 -1
- package/dist/esm/menu/PrimeTieredMenu.js +8 -2
- package/dist/esm/menu/PrimeTieredMenu.js.map +1 -1
- package/dist/esm/menu/Steps.d.ts +8 -0
- package/dist/esm/menu/Steps.d.ts.map +1 -0
- package/dist/esm/menu/Steps.js +72 -0
- package/dist/esm/menu/Steps.js.map +1 -0
- package/dist/esm/menu/TabMenu.d.ts +8 -0
- package/dist/esm/menu/TabMenu.d.ts.map +1 -0
- package/dist/esm/menu/TabMenu.js +57 -0
- package/dist/esm/menu/TabMenu.js.map +1 -0
- package/dist/esm/menu/TieredMenu.d.ts +7 -0
- package/dist/esm/menu/TieredMenu.d.ts.map +1 -0
- package/dist/esm/menu/TieredMenu.js +129 -0
- package/dist/esm/menu/TieredMenu.js.map +1 -0
- package/dist/esm/menu/index.d.ts +10 -0
- package/dist/esm/menu/index.d.ts.map +1 -1
- package/dist/esm/menu/index.js +10 -0
- package/dist/esm/menu/index.js.map +1 -1
- package/dist/esm/menuItems.d.ts +1 -1
- package/dist/esm/menuItems.d.ts.map +1 -1
- package/dist/esm/menuItems.js.map +1 -1
- package/dist/esm/messages/MessageGallery.stories.js +1 -1
- package/dist/esm/messages/MessageGallery.stories.js.map +1 -1
- package/dist/esm/messages/PrimeInlineMessage.d.ts.map +1 -1
- package/dist/esm/messages/PrimeInlineMessage.js +42 -6
- package/dist/esm/messages/PrimeInlineMessage.js.map +1 -1
- package/dist/esm/messages/PrimeMessage.d.ts.map +1 -1
- package/dist/esm/messages/PrimeMessage.js +41 -6
- package/dist/esm/messages/PrimeMessage.js.map +1 -1
- package/dist/esm/messages/PrimeToast.d.ts.map +1 -1
- package/dist/esm/messages/PrimeToast.js +99 -15
- package/dist/esm/messages/PrimeToast.js.map +1 -1
- package/dist/esm/misc/BlockUI.d.ts +7 -0
- package/dist/esm/misc/BlockUI.d.ts.map +1 -0
- package/dist/esm/misc/BlockUI.js +45 -0
- package/dist/esm/misc/BlockUI.js.map +1 -0
- package/dist/esm/misc/MiscGallery.stories.js +1 -1
- package/dist/esm/misc/MiscGallery.stories.js.map +1 -1
- package/dist/esm/misc/PrimeAvatar.d.ts.map +1 -1
- package/dist/esm/misc/PrimeAvatar.js +27 -6
- package/dist/esm/misc/PrimeAvatar.js.map +1 -1
- package/dist/esm/misc/PrimeBadge.d.ts.map +1 -1
- package/dist/esm/misc/PrimeBadge.js +16 -4
- package/dist/esm/misc/PrimeBadge.js.map +1 -1
- package/dist/esm/misc/PrimeBlockUI.d.ts.map +1 -1
- package/dist/esm/misc/PrimeBlockUI.js +12 -2
- package/dist/esm/misc/PrimeBlockUI.js.map +1 -1
- package/dist/esm/misc/PrimeChip.d.ts.map +1 -1
- package/dist/esm/misc/PrimeChip.js +43 -7
- package/dist/esm/misc/PrimeChip.js.map +1 -1
- package/dist/esm/misc/PrimeInplace.d.ts.map +1 -1
- package/dist/esm/misc/PrimeInplace.js +19 -6
- package/dist/esm/misc/PrimeInplace.js.map +1 -1
- package/dist/esm/misc/PrimeProgressBar.d.ts.map +1 -1
- package/dist/esm/misc/PrimeProgressBar.js +16 -6
- package/dist/esm/misc/PrimeProgressBar.js.map +1 -1
- package/dist/esm/misc/PrimeProgressSpinner.d.ts.map +1 -1
- package/dist/esm/misc/PrimeProgressSpinner.js +15 -4
- package/dist/esm/misc/PrimeProgressSpinner.js.map +1 -1
- package/dist/esm/misc/PrimeScrollTop.d.ts.map +1 -1
- package/dist/esm/misc/PrimeScrollTop.js +21 -11
- package/dist/esm/misc/PrimeScrollTop.js.map +1 -1
- package/dist/esm/misc/PrimeSkeleton.d.ts.map +1 -1
- package/dist/esm/misc/PrimeSkeleton.js +4 -0
- package/dist/esm/misc/PrimeSkeleton.js.map +1 -1
- package/dist/esm/misc/PrimeTag.d.ts.map +1 -1
- package/dist/esm/misc/PrimeTag.js +23 -7
- package/dist/esm/misc/PrimeTag.js.map +1 -1
- package/dist/esm/misc/PrimeTerminal.d.ts.map +1 -1
- package/dist/esm/misc/PrimeTerminal.js +23 -8
- package/dist/esm/misc/PrimeTerminal.js.map +1 -1
- package/dist/esm/misc/ScrollTop.d.ts +8 -0
- package/dist/esm/misc/ScrollTop.d.ts.map +1 -0
- package/dist/esm/misc/ScrollTop.js +68 -0
- package/dist/esm/misc/ScrollTop.js.map +1 -0
- package/dist/esm/misc/index.d.ts +2 -0
- package/dist/esm/misc/index.d.ts.map +1 -1
- package/dist/esm/misc/index.js +2 -0
- package/dist/esm/misc/index.js.map +1 -1
- package/dist/esm/overlay/ConfirmDialog.d.ts +14 -0
- package/dist/esm/overlay/ConfirmDialog.d.ts.map +1 -0
- package/dist/esm/overlay/ConfirmDialog.js +105 -0
- package/dist/esm/overlay/ConfirmDialog.js.map +1 -0
- package/dist/esm/overlay/OverlayGallery.stories.js +1 -1
- package/dist/esm/overlay/OverlayGallery.stories.js.map +1 -1
- package/dist/esm/overlay/PrimeConfirmDialog.d.ts.map +1 -1
- package/dist/esm/overlay/PrimeConfirmDialog.js +14 -7
- package/dist/esm/overlay/PrimeConfirmDialog.js.map +1 -1
- package/dist/esm/overlay/PrimeDialog.d.ts.map +1 -1
- package/dist/esm/overlay/PrimeDialog.js +50 -9
- package/dist/esm/overlay/PrimeDialog.js.map +1 -1
- package/dist/esm/overlay/PrimeOverlayPanel.d.ts.map +1 -1
- package/dist/esm/overlay/PrimeOverlayPanel.js +30 -18
- package/dist/esm/overlay/PrimeOverlayPanel.js.map +1 -1
- package/dist/esm/overlay/PrimeSidebar.d.ts.map +1 -1
- package/dist/esm/overlay/PrimeSidebar.js +51 -12
- package/dist/esm/overlay/PrimeSidebar.js.map +1 -1
- package/dist/esm/overlay/PrimeTooltip.d.ts.map +1 -1
- package/dist/esm/overlay/PrimeTooltip.js +27 -14
- package/dist/esm/overlay/PrimeTooltip.js.map +1 -1
- package/dist/esm/overlay/index.d.ts +1 -0
- package/dist/esm/overlay/index.d.ts.map +1 -1
- package/dist/esm/overlay/index.js +1 -0
- package/dist/esm/overlay/index.js.map +1 -1
- package/dist/esm/panel/PanelGallery.stories.js +1 -1
- package/dist/esm/panel/PanelGallery.stories.js.map +1 -1
- package/dist/esm/panel/PrimeAccordion.d.ts.map +1 -1
- package/dist/esm/panel/PrimeAccordion.js +41 -11
- package/dist/esm/panel/PrimeAccordion.js.map +1 -1
- package/dist/esm/panel/PrimeCard.d.ts.map +1 -1
- package/dist/esm/panel/PrimeCard.js +26 -5
- package/dist/esm/panel/PrimeCard.js.map +1 -1
- package/dist/esm/panel/PrimeDivider.d.ts.map +1 -1
- package/dist/esm/panel/PrimeDivider.js +6 -1
- package/dist/esm/panel/PrimeDivider.js.map +1 -1
- package/dist/esm/panel/PrimeFieldset.d.ts.map +1 -1
- package/dist/esm/panel/PrimeFieldset.js +39 -6
- package/dist/esm/panel/PrimeFieldset.js.map +1 -1
- package/dist/esm/panel/PrimePanel.d.ts.map +1 -1
- package/dist/esm/panel/PrimePanel.js +42 -6
- package/dist/esm/panel/PrimePanel.js.map +1 -1
- package/dist/esm/panel/PrimeScrollPanel.d.ts.map +1 -1
- package/dist/esm/panel/PrimeScrollPanel.js +21 -6
- package/dist/esm/panel/PrimeScrollPanel.js.map +1 -1
- package/dist/esm/panel/PrimeSplitter.d.ts.map +1 -1
- package/dist/esm/panel/PrimeSplitter.js +28 -8
- package/dist/esm/panel/PrimeSplitter.js.map +1 -1
- package/dist/esm/panel/PrimeStepper.d.ts.map +1 -1
- package/dist/esm/panel/PrimeStepper.js +74 -32
- package/dist/esm/panel/PrimeStepper.js.map +1 -1
- package/dist/esm/panel/PrimeTabView.d.ts.map +1 -1
- package/dist/esm/panel/PrimeTabView.js +36 -11
- package/dist/esm/panel/PrimeTabView.js.map +1 -1
- package/dist/esm/panel/PrimeToolbar.d.ts.map +1 -1
- package/dist/esm/panel/PrimeToolbar.js +19 -5
- package/dist/esm/panel/PrimeToolbar.js.map +1 -1
- package/dist/esm/primeReactComponents.d.ts.map +1 -1
- package/dist/esm/primeReactComponents.js +12 -8
- package/dist/esm/primeReactComponents.js.map +1 -1
- package/dist/esm/primeReactPackage.d.ts.map +1 -1
- package/dist/esm/primeReactPackage.js +7 -8
- package/dist/esm/primeReactPackage.js.map +1 -1
- package/dist/esm/properties.d.ts +3 -0
- package/dist/esm/properties.d.ts.map +1 -1
- package/dist/esm/properties.js +15 -1
- package/dist/esm/properties.js.map +1 -1
- package/dist/esm/screen/PrimeAction.d.ts.map +1 -1
- package/dist/esm/screen/PrimeAction.js +25 -7
- package/dist/esm/screen/PrimeAction.js.map +1 -1
- package/dist/esm/screen/PrimeSummary.d.ts.map +1 -1
- package/dist/esm/screen/PrimeSummary.js +51 -27
- package/dist/esm/screen/PrimeSummary.js.map +1 -1
- package/dist/esm/theme/PrimeReactThemeFamily.d.ts +7 -0
- package/dist/esm/theme/PrimeReactThemeFamily.d.ts.map +1 -0
- package/dist/esm/theme/PrimeReactThemeFamily.js +32 -0
- package/dist/esm/theme/PrimeReactThemeFamily.js.map +1 -0
- package/dist/esm/theme/index.d.ts +2 -2
- package/dist/esm/theme/index.d.ts.map +1 -1
- package/dist/esm/theme/index.js +2 -2
- package/dist/esm/theme/index.js.map +1 -1
- package/dist/esm/theme/primeReactThemePreset.d.ts +7 -0
- package/dist/esm/theme/primeReactThemePreset.d.ts.map +1 -0
- package/dist/esm/theme/primeReactThemePreset.js +71 -0
- package/dist/esm/theme/primeReactThemePreset.js.map +1 -0
- package/dist/esm/theme/primeReactThemes.d.ts +1 -0
- package/dist/esm/theme/primeReactThemes.d.ts.map +1 -1
- package/dist/esm/theme/primeReactThemes.js +36 -19
- package/dist/esm/theme/primeReactThemes.js.map +1 -1
- package/dist/esm/theme/themePresets.d.ts +5 -1
- package/dist/esm/theme/themePresets.d.ts.map +1 -1
- package/dist/esm/theme/themePresets.js +364 -331
- package/dist/esm/theme/themePresets.js.map +1 -1
- package/dist/esm/theme/usePrimeReactTheme.d.ts +11 -1
- package/dist/esm/theme/usePrimeReactTheme.d.ts.map +1 -1
- package/dist/esm/theme/usePrimeReactTheme.js +47 -27
- package/dist/esm/theme/usePrimeReactTheme.js.map +1 -1
- package/dist/esm/treeNodes.d.ts +1 -1
- package/dist/esm/treeNodes.d.ts.map +1 -1
- package/dist/esm/treeNodes.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/for_menuItems/when_converting_entries.ts +1 -1
- package/for_primeReactPackage/when_rendering_every_declared_component.tsx +43 -1
- package/for_primeReactThemePreset/when_resolving_a_preset.ts +49 -0
- package/for_primeReactThemes/when_checking_attribution.ts +9 -3
- package/for_primeReactThemes/when_checking_the_token_vocabulary.ts +22 -3
- package/form/FormGallery.stories.tsx +1 -5
- package/form/PrimeAutoComplete.tsx +34 -18
- package/form/PrimeCalendar.tsx +60 -11
- package/form/PrimeCheckbox.tsx +12 -4
- package/form/PrimeChips.tsx +29 -9
- package/form/PrimeColorPicker.tsx +56 -12
- package/form/PrimeDropdown.tsx +29 -11
- package/form/PrimeIconField.tsx +12 -5
- package/form/PrimeInputNumber.tsx +19 -5
- package/form/PrimeInputTextarea.tsx +8 -6
- package/form/PrimeKnob.tsx +12 -4
- package/form/PrimeListBox.tsx +13 -7
- package/form/PrimeMultiSelect.tsx +35 -10
- package/form/PrimePassword.tsx +12 -6
- package/form/PrimeRadioButton.tsx +14 -4
- package/form/PrimeRating.tsx +23 -6
- package/form/PrimeSelectButton.tsx +17 -9
- package/form/PrimeSlider.tsx +13 -4
- package/form/PrimeToggleSwitch.tsx +16 -9
- package/form/PrimeTreeSelect.tsx +18 -10
- package/form/TreeSelect.tsx +158 -0
- package/form/index.ts +1 -2
- package/index.ts +3 -0
- package/media/Image.tsx +104 -0
- package/media/MediaGallery.stories.tsx +1 -1
- package/media/PrimeCarousel.tsx +35 -14
- package/media/PrimeGalleria.tsx +43 -18
- package/media/PrimeImage.tsx +6 -2
- package/media/index.ts +1 -0
- package/menu/Dock.tsx +109 -0
- package/menu/DockPosition.ts +32 -0
- package/menu/MegaMenu.tsx +138 -0
- package/menu/MenuGallery.stories.tsx +31 -3
- package/menu/MenuItemAction.tsx +92 -0
- package/menu/MenuItemContent.tsx +36 -0
- package/menu/Menubar.tsx +149 -0
- package/menu/PanelMenu.tsx +107 -0
- package/menu/PrimeBreadcrumb.tsx +62 -7
- package/menu/PrimeContextMenu.tsx +43 -9
- package/menu/PrimeDock.tsx +33 -6
- package/menu/PrimeMegaMenu.tsx +9 -12
- package/menu/PrimeMenu.tsx +64 -1
- package/menu/PrimeMenubar.tsx +7 -2
- package/menu/PrimePanelMenu.tsx +6 -5
- package/menu/PrimeSteps.tsx +13 -15
- package/menu/PrimeTabMenu.tsx +8 -13
- package/menu/PrimeTieredMenu.tsx +6 -2
- package/menu/Steps.tsx +79 -0
- package/menu/TabMenu.tsx +72 -0
- package/menu/TieredMenu.tsx +136 -0
- package/menu/index.ts +10 -0
- package/menuItems.ts +1 -1
- package/messages/MessageGallery.stories.tsx +1 -1
- package/messages/PrimeInlineMessage.tsx +37 -6
- package/messages/PrimeMessage.tsx +35 -8
- package/messages/PrimeToast.tsx +84 -9
- package/misc/BlockUI.tsx +51 -0
- package/misc/MiscGallery.stories.tsx +1 -1
- package/misc/PrimeAvatar.tsx +17 -6
- package/misc/PrimeBadge.tsx +17 -5
- package/misc/PrimeBlockUI.tsx +13 -3
- package/misc/PrimeChip.tsx +27 -7
- package/misc/PrimeInplace.tsx +17 -5
- package/misc/PrimeProgressBar.tsx +11 -7
- package/misc/PrimeProgressSpinner.tsx +14 -1
- package/misc/PrimeScrollTop.tsx +16 -8
- package/misc/PrimeSkeleton.tsx +4 -0
- package/misc/PrimeTag.tsx +17 -6
- package/misc/PrimeTerminal.tsx +18 -9
- package/misc/ScrollTop.tsx +81 -0
- package/misc/index.ts +2 -0
- package/overlay/ConfirmDialog.tsx +135 -0
- package/overlay/OverlayGallery.stories.tsx +1 -1
- package/overlay/PrimeConfirmDialog.tsx +15 -10
- package/overlay/PrimeDialog.tsx +35 -8
- package/overlay/PrimeOverlayPanel.tsx +20 -8
- package/overlay/PrimeSidebar.tsx +38 -12
- package/overlay/PrimeTooltip.tsx +24 -10
- package/overlay/index.ts +1 -0
- package/package.json +29 -13
- package/panel/PanelGallery.stories.tsx +1 -1
- package/panel/PrimeAccordion.tsx +28 -10
- package/panel/PrimeCard.tsx +18 -3
- package/panel/PrimeDivider.tsx +6 -1
- package/panel/PrimeFieldset.tsx +25 -3
- package/panel/PrimePanel.tsx +26 -7
- package/panel/PrimeScrollPanel.tsx +16 -8
- package/panel/PrimeSplitter.tsx +24 -7
- package/panel/PrimeStepper.tsx +57 -20
- package/panel/PrimeTabView.tsx +29 -9
- package/panel/PrimeToolbar.tsx +13 -1
- package/primeReactComponents.ts +0 -8
- package/primeReactPackage.ts +8 -7
- package/primeReactTheme.css +56 -33
- package/properties.ts +30 -0
- package/screen/PrimeAction.tsx +20 -6
- package/screen/PrimeSummary.tsx +36 -13
- package/theme/PrimeReactThemeFamily.ts +37 -0
- package/theme/index.ts +2 -2
- package/theme/primeReactThemePreset.ts +83 -0
- package/theme/primeReactThemes.ts +37 -18
- package/theme/themePresets.ts +381 -336
- package/theme/usePrimeReactTheme.ts +73 -25
- package/treeNodes.ts +1 -1
- package/.storybook/preview.ts +0 -22
- package/data/PrimeTreeTable.tsx +0 -32
- package/data/PrimeVirtualScroller.tsx +0 -31
- package/dist/cjs/data/PrimeTreeTable.js +0 -40
- package/dist/cjs/data/PrimeTreeTable.js.map +0 -1
- package/dist/cjs/data/PrimeVirtualScroller.js +0 -34
- package/dist/cjs/data/PrimeVirtualScroller.js.map +0 -1
- package/dist/cjs/form/PrimeCascadeSelect.js +0 -32
- package/dist/cjs/form/PrimeCascadeSelect.js.map +0 -1
- package/dist/cjs/form/PrimeInputMask.js +0 -26
- package/dist/cjs/form/PrimeInputMask.js.map +0 -1
- package/dist/cjs/theme/applyPrimeReactTheme.js +0 -51
- package/dist/cjs/theme/applyPrimeReactTheme.js.map +0 -1
- package/dist/cjs/theme/primeReactThemeStylesheet.js +0 -34
- package/dist/cjs/theme/primeReactThemeStylesheet.js.map +0 -1
- package/dist/esm/data/PrimeTreeTable.d.ts +0 -3
- package/dist/esm/data/PrimeTreeTable.d.ts.map +0 -1
- package/dist/esm/data/PrimeTreeTable.js +0 -38
- package/dist/esm/data/PrimeTreeTable.js.map +0 -1
- package/dist/esm/data/PrimeVirtualScroller.d.ts +0 -3
- package/dist/esm/data/PrimeVirtualScroller.d.ts.map +0 -1
- package/dist/esm/data/PrimeVirtualScroller.js +0 -32
- package/dist/esm/data/PrimeVirtualScroller.js.map +0 -1
- package/dist/esm/for_applyPrimeReactTheme/when_swapping_the_theme_stylesheet.d.ts +0 -2
- package/dist/esm/for_applyPrimeReactTheme/when_swapping_the_theme_stylesheet.d.ts.map +0 -1
- package/dist/esm/for_applyPrimeReactTheme/when_swapping_the_theme_stylesheet.js +0 -63
- package/dist/esm/for_applyPrimeReactTheme/when_swapping_the_theme_stylesheet.js.map +0 -1
- package/dist/esm/for_primeReactThemes/when_resolving_a_theme_stylesheet.d.ts +0 -2
- package/dist/esm/for_primeReactThemes/when_resolving_a_theme_stylesheet.d.ts.map +0 -1
- package/dist/esm/for_primeReactThemes/when_resolving_a_theme_stylesheet.js +0 -17
- package/dist/esm/for_primeReactThemes/when_resolving_a_theme_stylesheet.js.map +0 -1
- package/dist/esm/form/PrimeCascadeSelect.d.ts +0 -3
- package/dist/esm/form/PrimeCascadeSelect.d.ts.map +0 -1
- package/dist/esm/form/PrimeCascadeSelect.js +0 -30
- package/dist/esm/form/PrimeCascadeSelect.js.map +0 -1
- package/dist/esm/form/PrimeInputMask.d.ts +0 -3
- package/dist/esm/form/PrimeInputMask.d.ts.map +0 -1
- package/dist/esm/form/PrimeInputMask.js +0 -24
- package/dist/esm/form/PrimeInputMask.js.map +0 -1
- package/dist/esm/theme/applyPrimeReactTheme.d.ts +0 -2
- package/dist/esm/theme/applyPrimeReactTheme.d.ts.map +0 -1
- package/dist/esm/theme/applyPrimeReactTheme.js +0 -49
- package/dist/esm/theme/applyPrimeReactTheme.js.map +0 -1
- package/dist/esm/theme/primeReactThemeStylesheet.d.ts +0 -3
- package/dist/esm/theme/primeReactThemeStylesheet.d.ts.map +0 -1
- package/dist/esm/theme/primeReactThemeStylesheet.js +0 -31
- package/dist/esm/theme/primeReactThemeStylesheet.js.map +0 -1
- package/for_applyPrimeReactTheme/when_swapping_the_theme_stylesheet.ts +0 -81
- package/for_primeReactThemes/when_resolving_a_theme_stylesheet.ts +0 -22
- package/form/PrimeCascadeSelect.tsx +0 -31
- package/form/PrimeInputMask.tsx +0 -27
- package/theme/applyPrimeReactTheme.ts +0 -52
- package/theme/primeReactThemeStylesheet.ts +0 -32
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
+
|
|
4
|
+
import { CSSProperties, HTMLAttributes, useState } from 'react';
|
|
5
|
+
import { MenuItem } from '../MenuItem';
|
|
6
|
+
import { MenuItemAction } from './MenuItemAction';
|
|
7
|
+
import { MenuItemContent } from './MenuItemContent';
|
|
8
|
+
|
|
9
|
+
const rootStyle: CSSProperties = {
|
|
10
|
+
background: 'var(--scene-surface-card)',
|
|
11
|
+
border: '1px solid var(--scene-surface-border)',
|
|
12
|
+
borderRadius: 'var(--scene-content-border-radius)',
|
|
13
|
+
color: 'var(--scene-text-color)',
|
|
14
|
+
width: 'fit-content',
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
const listStyle: CSSProperties = { listStyle: 'none', margin: 0, padding: 0, minWidth: '12rem' };
|
|
18
|
+
|
|
19
|
+
const entryStyle: CSSProperties = {
|
|
20
|
+
background: 'transparent',
|
|
21
|
+
border: 'none',
|
|
22
|
+
color: 'inherit',
|
|
23
|
+
cursor: 'pointer',
|
|
24
|
+
font: 'inherit',
|
|
25
|
+
textAlign: 'left',
|
|
26
|
+
textDecoration: 'none',
|
|
27
|
+
width: '100%',
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
const submenuStyle: CSSProperties = {
|
|
31
|
+
position: 'absolute',
|
|
32
|
+
top: 0,
|
|
33
|
+
left: '100%',
|
|
34
|
+
zIndex: 1,
|
|
35
|
+
background: 'var(--scene-surface-overlay)',
|
|
36
|
+
border: '1px solid var(--scene-surface-border)',
|
|
37
|
+
borderRadius: 'var(--scene-content-border-radius)',
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
const separatorStyle: CSSProperties = { borderTop: '1px solid var(--scene-surface-border)', margin: 0 };
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* The configuration {@link TieredMenu} takes.
|
|
44
|
+
*/
|
|
45
|
+
export interface TieredMenuProps extends HTMLAttributes<HTMLDivElement> {
|
|
46
|
+
/**
|
|
47
|
+
* The commands to show. Nesting is followed to any depth - each level opens beside its parent.
|
|
48
|
+
*/
|
|
49
|
+
items?: MenuItem[];
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* A vertical menu whose submenus open to the side, to any depth. Cratis-owned.
|
|
54
|
+
*
|
|
55
|
+
* This exists because PrimeReact 11 removed `primereact/tieredmenu` outright, with no successor and no
|
|
56
|
+
* headless hook. The surviving `primereact/menu` parts can nest through `Menu.Submenu`, but only inside a
|
|
57
|
+
* popup anchored to a trigger; a tiered menu is an *inline* control that is already open, which those
|
|
58
|
+
* parts have no shape for. Rebuilding it as plain markup is both smaller and more honest than bending an
|
|
59
|
+
* overlay into standing still.
|
|
60
|
+
*
|
|
61
|
+
* Depth is the one thing this keeps unrestricted, because depth is the whole point of the component: each
|
|
62
|
+
* level renders the same way and holds its own open child, so an authored model nests as far as its
|
|
63
|
+
* author took it.
|
|
64
|
+
*
|
|
65
|
+
* What it deliberately does not carry over from the v10 `TieredMenu`: submenus open on click, never on
|
|
66
|
+
* hover; there is no roving-focus keyboard model with arrow keys walking levels, only the tab order the
|
|
67
|
+
* browser gives; the popup form (`popup` plus an imperative `toggle`) is gone entirely, since Scene only
|
|
68
|
+
* ever rendered the inline one; opening a deep branch does not flip the level to the other side when it
|
|
69
|
+
* would run off the viewport; and item templates are not supported.
|
|
70
|
+
*/
|
|
71
|
+
export function TieredMenu({ items = [], ...rest }: TieredMenuProps) {
|
|
72
|
+
return (
|
|
73
|
+
<div {...rest} style={rootStyle}>
|
|
74
|
+
<TieredMenuLevel items={items} />
|
|
75
|
+
</div>
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* The configuration one level of a tiered menu takes.
|
|
81
|
+
*/
|
|
82
|
+
interface TieredMenuLevelProps {
|
|
83
|
+
/**
|
|
84
|
+
* The entries at this level.
|
|
85
|
+
*/
|
|
86
|
+
items: MenuItem[];
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* One level of a tiered menu, holding which of its own entries is currently expanded.
|
|
91
|
+
*
|
|
92
|
+
* Keeping the open entry per level rather than as one path in the root is what makes the recursion
|
|
93
|
+
* trivial: a level knows only about its own children, so it can render another of itself for them without
|
|
94
|
+
* threading an index path down and back.
|
|
95
|
+
*/
|
|
96
|
+
function TieredMenuLevel({ items }: TieredMenuLevelProps) {
|
|
97
|
+
const [openIndex, setOpenIndex] = useState<number | undefined>(undefined);
|
|
98
|
+
|
|
99
|
+
return (
|
|
100
|
+
<ul role='menu' style={listStyle}>
|
|
101
|
+
{items.map((item, index) => {
|
|
102
|
+
if (item.separator === true) return <li key={index} role='separator' style={separatorStyle} />;
|
|
103
|
+
|
|
104
|
+
const children = item.items ?? [];
|
|
105
|
+
|
|
106
|
+
return (
|
|
107
|
+
<li key={index} role='none' className='relative'>
|
|
108
|
+
{children.length > 0 ? (
|
|
109
|
+
<>
|
|
110
|
+
<button
|
|
111
|
+
type='button'
|
|
112
|
+
role='menuitem'
|
|
113
|
+
className='flex items-center gap-2 p-3'
|
|
114
|
+
style={entryStyle}
|
|
115
|
+
disabled={item.disabled}
|
|
116
|
+
aria-haspopup='true'
|
|
117
|
+
aria-expanded={openIndex === index}
|
|
118
|
+
onClick={() => setOpenIndex(openIndex === index ? undefined : index)}>
|
|
119
|
+
<MenuItemContent item={item} />
|
|
120
|
+
<i className='pi pi-angle-right' aria-hidden='true' />
|
|
121
|
+
</button>
|
|
122
|
+
{openIndex === index && (
|
|
123
|
+
<div style={submenuStyle}>
|
|
124
|
+
<TieredMenuLevel items={children} />
|
|
125
|
+
</div>
|
|
126
|
+
)}
|
|
127
|
+
</>
|
|
128
|
+
) : (
|
|
129
|
+
<MenuItemAction item={item} role='menuitem' className='flex items-center gap-2 p-3' style={entryStyle} />
|
|
130
|
+
)}
|
|
131
|
+
</li>
|
|
132
|
+
);
|
|
133
|
+
})}
|
|
134
|
+
</ul>
|
|
135
|
+
);
|
|
136
|
+
}
|
package/menu/index.ts
CHANGED
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
// Copyright (c) Cratis. All rights reserved.
|
|
2
2
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
3
|
|
|
4
|
+
export * from './MenuItemContent';
|
|
5
|
+
export * from './MenuItemAction';
|
|
6
|
+
export * from './DockPosition';
|
|
7
|
+
export * from './Menubar';
|
|
8
|
+
export * from './MegaMenu';
|
|
9
|
+
export * from './TieredMenu';
|
|
10
|
+
export * from './Steps';
|
|
11
|
+
export * from './TabMenu';
|
|
12
|
+
export * from './PanelMenu';
|
|
13
|
+
export * from './Dock';
|
|
4
14
|
export * from './PrimeMenu';
|
|
5
15
|
export * from './PrimeMenubar';
|
|
6
16
|
export * from './PrimeBreadcrumb';
|
package/menuItems.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Copyright (c) Cratis. All rights reserved.
|
|
2
2
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
3
|
|
|
4
|
-
import
|
|
4
|
+
import { MenuItem } from './MenuItem';
|
|
5
5
|
import { SceneElement } from '@cratis/scene.model';
|
|
6
6
|
import { arrayProperty } from './properties';
|
|
7
7
|
|
|
@@ -12,7 +12,7 @@ const meta = {
|
|
|
12
12
|
tags: ['autodocs'],
|
|
13
13
|
parameters: {
|
|
14
14
|
layout: 'padded',
|
|
15
|
-
docs: { description: { component: 'The message family. `message` and `inlineMessage` share PrimeReact\'s
|
|
15
|
+
docs: { description: { component: 'The message family. `message` and `inlineMessage` share PrimeReact 11\'s singular `message` module but mean different things on a screen - one is about a region, the other about the field beside it - which v11 lets them say with `variant` as well as with width. The plural `messages` module was removed in v11; this package never declared a name for it. `toast` announces itself once on mount, grouped by the element\'s own id, because a Scene element has no other way to make an imperative call.' } },
|
|
16
16
|
},
|
|
17
17
|
} satisfies Meta<typeof SceneElementView>;
|
|
18
18
|
|
|
@@ -3,21 +3,52 @@
|
|
|
3
3
|
|
|
4
4
|
import { Message } from 'primereact/message';
|
|
5
5
|
import { RegisteredComponentProps } from '@cratis/scene.react';
|
|
6
|
-
import { stringProperty
|
|
6
|
+
import {severityProperty, stringProperty} from '../properties';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* The `primeicons` class that stands for each severity.
|
|
10
|
+
*
|
|
11
|
+
* Deliberately duplicated from `PrimeMessage` rather than shared. Both adapters need it and neither needs
|
|
12
|
+
* the other, and lifting six lines into a module would put a helper nobody outside this folder wants into
|
|
13
|
+
* the package's public surface - `index.ts` re-exports everything a file exports.
|
|
14
|
+
*
|
|
15
|
+
* The icon is kept even for the compact variant, because severity is otherwise carried by color alone,
|
|
16
|
+
* and "the red one means you have to fix it" is not information a reader who cannot see the color gets.
|
|
17
|
+
*/
|
|
18
|
+
const severityIcons: Record<string, string> = {
|
|
19
|
+
success: 'pi pi-check-circle',
|
|
20
|
+
info: 'pi pi-info-circle',
|
|
21
|
+
warn: 'pi pi-exclamation-triangle',
|
|
22
|
+
error: 'pi pi-times-circle',
|
|
23
|
+
};
|
|
7
24
|
|
|
8
25
|
/**
|
|
9
26
|
* The `PrimeReact:inlineMessage` component - a short notice sitting beside the field it is about.
|
|
10
27
|
*
|
|
11
28
|
* The same PrimeReact `Message` as `message`, sized to its content instead of the row, so a validation
|
|
12
|
-
* hint reads as belonging to one field rather than to the whole form.
|
|
29
|
+
* hint reads as belonging to one field rather than to the whole form. PrimeReact 11 gives that intent a
|
|
30
|
+
* name of its own - `variant='simple'` drops the panel and leaves the icon and the words - which is
|
|
31
|
+
* exactly what the v10 adapter was approximating with a width class, so the distinction survives the
|
|
32
|
+
* migration and lands on a real prop rather than on CSS.
|
|
33
|
+
*
|
|
34
|
+
* The v11 module is `primereact/message`, singular. The plural `messages` module - a list of notices
|
|
35
|
+
* driven imperatively - was removed with no replacement, but this package never declared a name for it,
|
|
36
|
+
* so nothing here is lost with it.
|
|
13
37
|
*/
|
|
14
38
|
export function PrimeInlineMessage({ element }: RegisteredComponentProps) {
|
|
39
|
+
const severity = severityProperty(element, 'severity', 'info');
|
|
15
40
|
return (
|
|
16
|
-
<Message
|
|
41
|
+
<Message.Root
|
|
17
42
|
data-scene-id={element.id}
|
|
18
43
|
className='inline-flex'
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
44
|
+
variant='simple'
|
|
45
|
+
severity={severity as 'success' | 'info' | 'warn' | 'error'}>
|
|
46
|
+
<Message.Icon>
|
|
47
|
+
<i className={severityIcons[severity] ?? severityIcons.info} aria-hidden='true' />
|
|
48
|
+
</Message.Icon>
|
|
49
|
+
<Message.Content>
|
|
50
|
+
<Message.Text>{stringProperty(element, 'text', '')}</Message.Text>
|
|
51
|
+
</Message.Content>
|
|
52
|
+
</Message.Root>
|
|
22
53
|
);
|
|
23
54
|
}
|
|
@@ -3,22 +3,49 @@
|
|
|
3
3
|
|
|
4
4
|
import { Message } from 'primereact/message';
|
|
5
5
|
import { RegisteredComponentProps } from '@cratis/scene.react';
|
|
6
|
-
import { stringProperty
|
|
6
|
+
import {severityProperty, stringProperty} from '../properties';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* The `primeicons` class that stands for each severity.
|
|
10
|
+
*
|
|
11
|
+
* PrimeReact 10 chose this icon for you; PrimeReact 11 made the icon a part you compose, which is right
|
|
12
|
+
* for an application - it can use its own icon set - and wrong for a Scene element, which has no way to
|
|
13
|
+
* name one. The mapping is restored here so a notice still reads at a glance rather than as an
|
|
14
|
+
* undifferentiated colored box.
|
|
15
|
+
*/
|
|
16
|
+
const severityIcons: Record<string, string> = {
|
|
17
|
+
success: 'pi pi-check-circle',
|
|
18
|
+
info: 'pi pi-info-circle',
|
|
19
|
+
warn: 'pi pi-exclamation-triangle',
|
|
20
|
+
error: 'pi pi-times-circle',
|
|
21
|
+
};
|
|
7
22
|
|
|
8
23
|
/**
|
|
9
24
|
* The `PrimeReact:message` component - a block-level notice attached to a region of a screen.
|
|
10
25
|
*
|
|
11
26
|
* Rendered full width, which is what separates it from `inlineMessage`: the two share PrimeReact's
|
|
12
27
|
* `Message` component but mean different things on a screen, and the width is the difference a reader
|
|
13
|
-
* actually sees.
|
|
28
|
+
* actually sees. PrimeReact 11 adds a second axis for the same distinction - `variant` - and this one is
|
|
29
|
+
* the default, bordered variant, because a region-level notice is meant to be a block you notice.
|
|
30
|
+
*
|
|
31
|
+
* The v11 module is `primereact/message`, singular, which is the one that survived; the plural `messages`
|
|
32
|
+
* module - a list of notices with its own imperative API - was removed outright, and this package never
|
|
33
|
+
* declared a name for it.
|
|
34
|
+
*
|
|
35
|
+
* v10's `warning` is translated to v11's `warn` so screens written against the old vocabulary keep their
|
|
36
|
+
* color; `error` was and still is spelled the same here, unlike everywhere else in PrimeReact where the
|
|
37
|
+
* danger severity is called `danger`.
|
|
14
38
|
*/
|
|
15
39
|
export function PrimeMessage({ element }: RegisteredComponentProps) {
|
|
40
|
+
const severity = severityProperty(element, 'severity', 'info');
|
|
16
41
|
return (
|
|
17
|
-
<Message
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
42
|
+
<Message.Root data-scene-id={element.id} className='w-full' severity={severity as 'success' | 'info' | 'warn' | 'error'}>
|
|
43
|
+
<Message.Icon>
|
|
44
|
+
<i className={severityIcons[severity] ?? severityIcons.info} aria-hidden='true' />
|
|
45
|
+
</Message.Icon>
|
|
46
|
+
<Message.Content>
|
|
47
|
+
<Message.Text>{stringProperty(element, 'text', '')}</Message.Text>
|
|
48
|
+
</Message.Content>
|
|
49
|
+
</Message.Root>
|
|
23
50
|
);
|
|
24
51
|
}
|
package/messages/PrimeToast.tsx
CHANGED
|
@@ -1,29 +1,104 @@
|
|
|
1
1
|
// Copyright (c) Cratis. All rights reserved.
|
|
2
2
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
3
|
|
|
4
|
-
import { useEffect
|
|
4
|
+
import { useEffect } from 'react';
|
|
5
5
|
import { Toast } from 'primereact/toast';
|
|
6
|
+
import { Toaster, toast, useToasterContext } from 'primereact/toaster';
|
|
6
7
|
import { RegisteredComponentProps } from '@cratis/scene.react';
|
|
7
|
-
import {
|
|
8
|
+
import {numberProperty, severityProperty, stringProperty} from '../properties';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Renders whatever notifications are currently queued for the surrounding toaster.
|
|
12
|
+
*
|
|
13
|
+
* PrimeReact 11 splits a toast in two: a `Toaster` owns the queue, the position and the timers, and the
|
|
14
|
+
* caller decides what one notification looks like. Nothing renders until someone maps the queue, which is
|
|
15
|
+
* what this does - it has to be its own component because reading the queue means reading the toaster's
|
|
16
|
+
* context, and that context is only available below the `Toaster.Root` that provides it.
|
|
17
|
+
*
|
|
18
|
+
* The severity icons are chosen here rather than left out because `Toast.Icon` renders only when its
|
|
19
|
+
* `match` equals the toast's severity, so the four are alternatives, not four icons at once.
|
|
20
|
+
*/
|
|
21
|
+
function ToastList() {
|
|
22
|
+
const toaster = useToasterContext();
|
|
23
|
+
if (toaster === undefined) return null;
|
|
24
|
+
|
|
25
|
+
return (
|
|
26
|
+
<>
|
|
27
|
+
{toaster.toasts.map((item) => (
|
|
28
|
+
<Toast.Root key={item.id} toast={item}>
|
|
29
|
+
<Toast.Icon match='success'>
|
|
30
|
+
<i className='pi pi-check-circle' aria-hidden='true' />
|
|
31
|
+
</Toast.Icon>
|
|
32
|
+
<Toast.Icon match='info'>
|
|
33
|
+
<i className='pi pi-info-circle' aria-hidden='true' />
|
|
34
|
+
</Toast.Icon>
|
|
35
|
+
<Toast.Icon match='warn'>
|
|
36
|
+
<i className='pi pi-exclamation-triangle' aria-hidden='true' />
|
|
37
|
+
</Toast.Icon>
|
|
38
|
+
<Toast.Icon match='error'>
|
|
39
|
+
<i className='pi pi-times-circle' aria-hidden='true' />
|
|
40
|
+
</Toast.Icon>
|
|
41
|
+
<Toast.Content>
|
|
42
|
+
<Toast.Title />
|
|
43
|
+
<Toast.Description />
|
|
44
|
+
</Toast.Content>
|
|
45
|
+
<Toast.Close aria-label='Dismiss'>
|
|
46
|
+
<i className='pi pi-times' aria-hidden='true' />
|
|
47
|
+
</Toast.Close>
|
|
48
|
+
</Toast.Root>
|
|
49
|
+
))}
|
|
50
|
+
</>
|
|
51
|
+
);
|
|
52
|
+
}
|
|
8
53
|
|
|
9
54
|
/**
|
|
10
55
|
* The `PrimeReact:toast` component - a transient notification in a corner of the screen.
|
|
11
56
|
*
|
|
12
|
-
*
|
|
13
|
-
* that call, so the adapter makes it once on mount from the element's own properties. The element
|
|
57
|
+
* A toast is purely imperative: nothing renders until someone announces something. A Scene element cannot
|
|
58
|
+
* make that call, so the adapter makes it once on mount from the element's own properties. The element
|
|
14
59
|
* therefore reads as "this screen announces this" rather than as a component that happens to render
|
|
15
60
|
* nothing, which is what a literal wrapper would produce.
|
|
61
|
+
*
|
|
62
|
+
* PrimeReact 11 replaced v10's per-component ref and `show()` with a module-level queue and a free
|
|
63
|
+
* `toast()` function - a better arrangement for an application, since anything can announce without
|
|
64
|
+
* holding a ref, but a shared one. The element's own id is used as the toast's group so this toaster shows
|
|
65
|
+
* only what this element announced, and the announcement is withdrawn on unmount; without both, several
|
|
66
|
+
* `toast` elements on one screen would each show all of each other's notifications and leave them behind.
|
|
67
|
+
*
|
|
68
|
+
* `data-scene-id` sits on a wrapper rather than on the toaster, because the toaster renders through a
|
|
69
|
+
* portal to the end of the document: the identifying attribute would leave the position in the tree where
|
|
70
|
+
* the element was actually authored, which is where a design-time tool looks for it.
|
|
16
71
|
*/
|
|
17
72
|
export function PrimeToast({ element }: RegisteredComponentProps) {
|
|
18
|
-
const
|
|
19
|
-
const severity = stringProperty(element, 'severity', 'info') as 'success' | 'info' | 'warn' | 'error';
|
|
73
|
+
const severity = severityProperty(element, 'severity', 'info');
|
|
20
74
|
const summary = stringProperty(element, 'summary', '');
|
|
21
75
|
const detail = stringProperty(element, 'detail', '');
|
|
22
76
|
const life = numberProperty(element, 'life', 3000);
|
|
77
|
+
const group = element.id;
|
|
23
78
|
|
|
24
79
|
useEffect(() => {
|
|
25
|
-
toast
|
|
26
|
-
|
|
80
|
+
const id = toast({
|
|
81
|
+
group,
|
|
82
|
+
severity: severity as 'success' | 'info' | 'warn' | 'error',
|
|
83
|
+
title: summary,
|
|
84
|
+
description: detail,
|
|
85
|
+
duration: life,
|
|
86
|
+
});
|
|
87
|
+
return () => toast.dismiss(id);
|
|
88
|
+
}, [group, severity, summary, detail, life]);
|
|
27
89
|
|
|
28
|
-
return
|
|
90
|
+
return (
|
|
91
|
+
<div data-scene-id={element.id}>
|
|
92
|
+
<Toaster.Root
|
|
93
|
+
group={group}
|
|
94
|
+
timeout={life}
|
|
95
|
+
position={stringProperty(element, 'position', 'top-right') as 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'top-center' | 'bottom-center' | 'center'}>
|
|
96
|
+
<Toaster.Portal>
|
|
97
|
+
<Toaster.Region>
|
|
98
|
+
<ToastList />
|
|
99
|
+
</Toaster.Region>
|
|
100
|
+
</Toaster.Portal>
|
|
101
|
+
</Toaster.Root>
|
|
102
|
+
</div>
|
|
103
|
+
);
|
|
29
104
|
}
|
package/misc/BlockUI.tsx
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
+
|
|
4
|
+
import { HTMLAttributes } from 'react';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Configuration for {@link BlockUI}.
|
|
8
|
+
*/
|
|
9
|
+
export interface BlockUIProps extends HTMLAttributes<HTMLDivElement> {
|
|
10
|
+
/**
|
|
11
|
+
* Whether the region is currently blocked. While this is `false` the component adds nothing but a
|
|
12
|
+
* positioned wrapper, so it is safe to leave mounted around content that is only occasionally busy.
|
|
13
|
+
*/
|
|
14
|
+
blocked?: boolean;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Whether the mask covers the whole viewport rather than only the wrapped content. A long-running
|
|
18
|
+
* action that would leave the rest of the screen misleadingly usable wants the page; a panel
|
|
19
|
+
* refreshing its own data does not.
|
|
20
|
+
*/
|
|
21
|
+
fullScreen?: boolean;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* A region that greys itself out and stops accepting input while something is in flight.
|
|
26
|
+
*
|
|
27
|
+
* Cratis owns this component. PrimeReact 10 had `BlockUI`; PrimeReact 11 removed it with no replacement
|
|
28
|
+
* and no headless hook, and the `blockUI` name is one this package's manifest already publishes - screens
|
|
29
|
+
* are written against it. Rebuilding it here is what keeps that promise, and it turns out to be a small
|
|
30
|
+
* thing to own: the whole component is a positioned wrapper, an `inert` subtree and a translucent mask.
|
|
31
|
+
*
|
|
32
|
+
* Blocking is expressed twice on purpose, because the two audiences need different things. `aria-busy`
|
|
33
|
+
* tells assistive technology that the region's content is being updated and should not be announced as
|
|
34
|
+
* final. `inert` on the wrapped subtree takes it out of the tab order and stops it responding to clicks -
|
|
35
|
+
* without that, a mask is only a visual suggestion and a keyboard user tabs straight through it into
|
|
36
|
+
* controls the screen believes are unavailable.
|
|
37
|
+
*
|
|
38
|
+
* What it deliberately does not carry over from v10: the `template` and `containerTemplate` props (a
|
|
39
|
+
* screen that wants a spinner or a message over the mask composes one into the blocked content itself),
|
|
40
|
+
* the enter/leave transitions, `baseZIndex` / `autoZIndex` layering (the mask uses one fixed stacking
|
|
41
|
+
* level and does not negotiate with dialogs), and the `onBlock` / `onUnblock` callbacks - a Scene element
|
|
42
|
+
* has nowhere to route a callback to, and the blocked state is authored rather than discovered.
|
|
43
|
+
*/
|
|
44
|
+
export function BlockUI({ blocked = false, fullScreen = false, className, children, ...rest }: BlockUIProps) {
|
|
45
|
+
return (
|
|
46
|
+
<div {...rest} className={['relative', className].filter(Boolean).join(' ')} aria-busy={blocked}>
|
|
47
|
+
<div inert={blocked}>{children}</div>
|
|
48
|
+
{blocked && <div className={fullScreen ? 'fixed inset-0 z-50 bg-black/40' : 'absolute inset-0 z-10 bg-black/40'} />}
|
|
49
|
+
</div>
|
|
50
|
+
);
|
|
51
|
+
}
|
|
@@ -12,7 +12,7 @@ const meta = {
|
|
|
12
12
|
tags: ['autodocs'],
|
|
13
13
|
parameters: {
|
|
14
14
|
layout: 'padded',
|
|
15
|
-
docs: { description: { component: 'The remaining components: indicators, badges, placeholders and a terminal. `terminal` accepts input and answers nothing until the hosting application
|
|
15
|
+
docs: { description: { component: 'The remaining components: indicators, badges, placeholders and a terminal. Two of them - `blockUI` and `scrollTop` - are Cratis-owned rebuilds, because PrimeReact 11 removed both with no replacement and no headless hook; they render here through the same registry as everything else, which is the point. `terminal` accepts input and answers nothing until the hosting application passes an `onCommand` callback - responding to a command is application behavior, not something a Scene element can express.' } },
|
|
16
16
|
},
|
|
17
17
|
} satisfies Meta<typeof SceneElementView>;
|
|
18
18
|
|
package/misc/PrimeAvatar.tsx
CHANGED
|
@@ -7,16 +7,27 @@ import { stringProperty } from '../properties';
|
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* The `PrimeReact:avatar` component - a person or entity shown as initials, an icon or a picture.
|
|
10
|
+
*
|
|
11
|
+
* PrimeReact 11 turned Avatar into a composition, and the split is the interesting part: `Avatar.Image`
|
|
12
|
+
* renders only once the browser has actually loaded the source, and `Avatar.Fallback` renders only while
|
|
13
|
+
* it has not. That is exactly the behavior a screen wants and could not previously express - a picture
|
|
14
|
+
* that 404s now degrades to the initials instead of leaving a broken image icon in a list of faces.
|
|
15
|
+
*
|
|
16
|
+
* The image part is left out entirely when no `image` was authored, rather than mounted with an empty
|
|
17
|
+
* source: it would spend an effect on a load that can never happen, and the fallback is what shows either
|
|
18
|
+
* way.
|
|
10
19
|
*/
|
|
11
20
|
export function PrimeAvatar({ element }: RegisteredComponentProps) {
|
|
21
|
+
const label = stringProperty(element, 'label');
|
|
22
|
+
const icon = stringProperty(element, 'icon');
|
|
23
|
+
const image = stringProperty(element, 'image');
|
|
12
24
|
return (
|
|
13
|
-
<Avatar
|
|
25
|
+
<Avatar.Root
|
|
14
26
|
data-scene-id={element.id}
|
|
15
|
-
label={stringProperty(element, 'label')}
|
|
16
|
-
icon={stringProperty(element, 'icon')}
|
|
17
|
-
image={stringProperty(element, 'image')}
|
|
18
27
|
size={stringProperty(element, 'size', 'normal') as 'normal' | 'large' | 'xlarge'}
|
|
19
|
-
shape={stringProperty(element, 'shape', 'square') as 'square' | 'circle'}
|
|
20
|
-
|
|
28
|
+
shape={stringProperty(element, 'shape', 'square') as 'square' | 'circle'}>
|
|
29
|
+
{image !== undefined && <Avatar.Image src={image} alt={label ?? ''} />}
|
|
30
|
+
<Avatar.Fallback>{icon !== undefined ? <i className={icon} aria-hidden='true' /> : label}</Avatar.Fallback>
|
|
31
|
+
</Avatar.Root>
|
|
21
32
|
);
|
|
22
33
|
}
|
package/misc/PrimeBadge.tsx
CHANGED
|
@@ -3,18 +3,30 @@
|
|
|
3
3
|
|
|
4
4
|
import { Badge } from 'primereact/badge';
|
|
5
5
|
import { RegisteredComponentProps } from '@cratis/scene.react';
|
|
6
|
-
import { stringProperty
|
|
6
|
+
import {severityProperty, stringProperty} from '../properties';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* The `PrimeReact:badge` component - a small count or status marker.
|
|
10
|
+
*
|
|
11
|
+
* PrimeReact 11 dropped the `value` prop in favor of children, which is why the authored value is placed
|
|
12
|
+
* inside the element rather than passed to it. The badge keeps rendering with no value at all - v11 marks
|
|
13
|
+
* that case `data-empty` and styles it as the bare dot a "there is something here" indicator wants.
|
|
14
|
+
*
|
|
15
|
+
* Two vocabulary changes are absorbed here rather than pushed onto screens. `warning` became `warn`, so a
|
|
16
|
+
* screen written against PrimeReact 10 keeps its color instead of silently falling back to the default.
|
|
17
|
+
* The `normal` size, on the other hand, is simply gone: v11 sizes are `small`, `large` and `xlarge`, and
|
|
18
|
+
* the unsized badge *is* the normal one, so nothing needs translating.
|
|
10
19
|
*/
|
|
11
20
|
export function PrimeBadge({ element }: RegisteredComponentProps) {
|
|
21
|
+
// Tag and Badge are the two components PrimeReact 11 gives no `help` variant, so an authored
|
|
22
|
+
// `help` degrades to the default styling rather than failing to compile.
|
|
23
|
+
const severity = severityProperty(element, 'severity');
|
|
12
24
|
return (
|
|
13
25
|
<Badge
|
|
14
26
|
data-scene-id={element.id}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
27
|
+
severity={severity === 'help' ? undefined : severity}
|
|
28
|
+
size={stringProperty(element, 'size') as 'small' | 'large' | 'xlarge' | undefined}>
|
|
29
|
+
{stringProperty(element, 'value', '')}
|
|
30
|
+
</Badge>
|
|
19
31
|
);
|
|
20
32
|
}
|
package/misc/PrimeBlockUI.tsx
CHANGED
|
@@ -1,18 +1,28 @@
|
|
|
1
1
|
// Copyright (c) Cratis. All rights reserved.
|
|
2
2
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
3
|
|
|
4
|
-
import { BlockUI } from 'primereact/blockui';
|
|
5
4
|
import { RegisteredComponentProps } from '@cratis/scene.react';
|
|
5
|
+
import { BlockUI } from './BlockUI';
|
|
6
6
|
import { booleanProperty } from '../properties';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* The `PrimeReact:blockUI` component - a region masked while something is in flight.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
11
|
+
* PrimeReact 11 removed `BlockUI` outright: no renamed module, no compositional replacement, no headless
|
|
12
|
+
* hook. The name is in this package's manifest and screens are authored against it, so the adapter now
|
|
13
|
+
* renders Cratis's own {@link BlockUI} instead. The element's contract is unchanged - a `blocked` flag and
|
|
14
|
+
* whatever the `content` slot holds - which is the point: the removal is a fact about PrimeReact, not
|
|
15
|
+
* something a screen should have to know.
|
|
16
|
+
*
|
|
17
|
+
* The default is `blocked`, because an element a screen bothered to place is there to say "this region is
|
|
18
|
+
* waiting"; an unblocked block is a wrapper that does nothing.
|
|
12
19
|
*/
|
|
13
20
|
export function PrimeBlockUI({ element, slots }: RegisteredComponentProps) {
|
|
14
21
|
return (
|
|
15
|
-
<BlockUI
|
|
22
|
+
<BlockUI
|
|
23
|
+
data-scene-id={element.id}
|
|
24
|
+
blocked={booleanProperty(element, 'blocked', true)}
|
|
25
|
+
fullScreen={booleanProperty(element, 'fullScreen', false)}>
|
|
16
26
|
{slots.content}
|
|
17
27
|
</BlockUI>
|
|
18
28
|
);
|
package/misc/PrimeChip.tsx
CHANGED
|
@@ -1,21 +1,41 @@
|
|
|
1
1
|
// Copyright (c) Cratis. All rights reserved.
|
|
2
2
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
3
|
|
|
4
|
+
import { ReactNode } from 'react';
|
|
4
5
|
import { Chip } from 'primereact/chip';
|
|
5
6
|
import { RegisteredComponentProps } from '@cratis/scene.react';
|
|
6
7
|
import { booleanProperty, stringProperty } from '../properties';
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* The `PrimeReact:chip` component - a compact, optionally removable label.
|
|
11
|
+
*
|
|
12
|
+
* PrimeReact 11 replaced the `label` / `icon` / `image` / `removable` props with named parts, so the
|
|
13
|
+
* adapter is what decides that an authored image wins over an authored icon and that both sit in the
|
|
14
|
+
* leading `Start` slot. A screen can therefore only ever produce one leading adornment, which is the
|
|
15
|
+
* whole point of a chip: a second one turns it into a toolbar.
|
|
16
|
+
*
|
|
17
|
+
* `Chip.Remove` carries the removal behavior itself - clicking it hides the chip through the component's
|
|
18
|
+
* own state, so the adapter has nothing to wire. It renders a `span`, so the accessible name and button
|
|
19
|
+
* role are supplied here rather than left to a screen that has no way to reach the part.
|
|
10
20
|
*/
|
|
11
21
|
export function PrimeChip({ element }: RegisteredComponentProps) {
|
|
22
|
+
const label = stringProperty(element, 'label');
|
|
23
|
+
const icon = stringProperty(element, 'icon');
|
|
24
|
+
const image = stringProperty(element, 'image');
|
|
25
|
+
|
|
26
|
+
let adornment: ReactNode;
|
|
27
|
+
if (image !== undefined) adornment = <img src={image} alt='' className='h-full w-full rounded-full object-cover' />;
|
|
28
|
+
else if (icon !== undefined) adornment = <i className={icon} aria-hidden='true' />;
|
|
29
|
+
|
|
12
30
|
return (
|
|
13
|
-
<Chip
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
31
|
+
<Chip.Root data-scene-id={element.id}>
|
|
32
|
+
{adornment !== undefined && <Chip.Start>{adornment}</Chip.Start>}
|
|
33
|
+
<Chip.Label>{label}</Chip.Label>
|
|
34
|
+
{booleanProperty(element, 'removable', false) && (
|
|
35
|
+
<Chip.Remove role='button' aria-label={label === undefined ? 'Remove' : `Remove ${label}`}>
|
|
36
|
+
<i className='pi pi-times-circle' aria-hidden='true' />
|
|
37
|
+
</Chip.Remove>
|
|
38
|
+
)}
|
|
39
|
+
</Chip.Root>
|
|
20
40
|
);
|
|
21
41
|
}
|