@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,158 @@
|
|
|
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 { ReactNode, useMemo, useState } from 'react';
|
|
5
|
+
import { Popover } from 'primereact/popover';
|
|
6
|
+
import { Tree, type TreeNodeData } from 'primereact/tree';
|
|
7
|
+
import { TreeNode } from '../TreeNode';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* What a {@link TreeSelect} needs from its host.
|
|
11
|
+
*
|
|
12
|
+
* Deliberately the small subset of PrimeReact 10's `TreeSelect` that a Scene element can actually author.
|
|
13
|
+
* The component is Cratis-owned (see {@link TreeSelect}), so this is a promise this package has to keep
|
|
14
|
+
* on its own - every prop added here is one more thing to implement, and a hierarchy picker earns its
|
|
15
|
+
* keep long before it grows options.
|
|
16
|
+
*/
|
|
17
|
+
export interface TreeSelectProps {
|
|
18
|
+
/**
|
|
19
|
+
* The key of the selected node. Controlled, because the only thing worth selecting from a tree is a
|
|
20
|
+
* node's identity and the host is what knows what to do with it.
|
|
21
|
+
*/
|
|
22
|
+
value?: string;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* The hierarchy to choose from, in Scene's own {@link TreeNode} shape rather than PrimeReact's -
|
|
26
|
+
* `TreeNode` is this package's type since v11 removed `primereact/treenode`, and translating it is
|
|
27
|
+
* this component's job rather than every caller's.
|
|
28
|
+
*/
|
|
29
|
+
options: TreeNode[];
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* What the trigger shows when nothing is selected.
|
|
33
|
+
*/
|
|
34
|
+
placeholder?: string;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Whether the trigger refuses to open.
|
|
38
|
+
*/
|
|
39
|
+
disabled?: boolean;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Called with the newly selected node's key. Selecting also closes the panel, because a single-select
|
|
43
|
+
* picker has nothing left to ask once it has an answer.
|
|
44
|
+
*/
|
|
45
|
+
onChange?: (value: string) => void;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* A dropdown whose choices are a hierarchy - Cratis-owned, because PrimeReact 11 removed `TreeSelect`
|
|
50
|
+
* outright and left neither a replacement component nor a headless hook to build one from.
|
|
51
|
+
*
|
|
52
|
+
* It is assembled from the two v11 pieces that did survive and together cover the behavior: `Popover`
|
|
53
|
+
* provides the trigger, the portal and the outside-click and Escape handling, and `Tree` provides the
|
|
54
|
+
* node list, the expand/collapse state and keyboard navigation. Nothing here re-implements either - the
|
|
55
|
+
* component is the seam between them, plus the translation from Scene's {@link TreeNode} to the
|
|
56
|
+
* `TreeNodeData` the tree wants.
|
|
57
|
+
*
|
|
58
|
+
* What it deliberately does not carry over from v10, so that no caller is misled into expecting it:
|
|
59
|
+
* **checkbox multi-select** - selection is single, `onChange` yields one key, and there is no partial or
|
|
60
|
+
* "n selected" state to reason about; and **filtering** - v10's `filter` prop searched the node labels
|
|
61
|
+
* and rebuilt the visible tree around the matches, which is a real amount of behavior (match, keep
|
|
62
|
+
* ancestors, force-expand, restore on clear) and belongs in the component only once something actually
|
|
63
|
+
* needs it.
|
|
64
|
+
*/
|
|
65
|
+
export function TreeSelect({ value, options, placeholder, disabled, onChange }: TreeSelectProps) {
|
|
66
|
+
const [open, setOpen] = useState(false);
|
|
67
|
+
const nodes = useMemo(() => toTreeNodeData(options), [options]);
|
|
68
|
+
const label = findLabel(nodes, value);
|
|
69
|
+
|
|
70
|
+
return (
|
|
71
|
+
<Popover.Root open={open} onOpenChange={(event) => setOpen(event.value === true)}>
|
|
72
|
+
<Popover.Trigger disabled={disabled}>
|
|
73
|
+
<span>{label ?? placeholder}</span>
|
|
74
|
+
<i className='pi pi-chevron-down' />
|
|
75
|
+
</Popover.Trigger>
|
|
76
|
+
<Popover.Portal>
|
|
77
|
+
<Popover.Positioner>
|
|
78
|
+
<Popover.Popup>
|
|
79
|
+
<Popover.Content>
|
|
80
|
+
<Tree.Root
|
|
81
|
+
value={nodes}
|
|
82
|
+
selectionMode='single'
|
|
83
|
+
selectionKeys={value === undefined ? {} : { [value]: true }}
|
|
84
|
+
onSelectionChange={(event) => {
|
|
85
|
+
const selected = Object.keys(event.value).find((key) => event.value[key] === true);
|
|
86
|
+
if (selected === undefined) return;
|
|
87
|
+
onChange?.(selected);
|
|
88
|
+
setOpen(false);
|
|
89
|
+
}}>
|
|
90
|
+
<Tree.Nodes>
|
|
91
|
+
{(row) => (
|
|
92
|
+
<Tree.Node uKey={row.node.key}>
|
|
93
|
+
<Tree.Content>
|
|
94
|
+
<Tree.Toggle>
|
|
95
|
+
<Tree.ToggleIndicator>
|
|
96
|
+
<i className={row.expanded ? 'pi pi-chevron-down' : 'pi pi-chevron-right'} />
|
|
97
|
+
</Tree.ToggleIndicator>
|
|
98
|
+
</Tree.Toggle>
|
|
99
|
+
<Tree.Label>{row.node.label}</Tree.Label>
|
|
100
|
+
</Tree.Content>
|
|
101
|
+
</Tree.Node>
|
|
102
|
+
)}
|
|
103
|
+
</Tree.Nodes>
|
|
104
|
+
</Tree.Root>
|
|
105
|
+
</Popover.Content>
|
|
106
|
+
</Popover.Popup>
|
|
107
|
+
</Popover.Positioner>
|
|
108
|
+
</Popover.Portal>
|
|
109
|
+
</Popover.Root>
|
|
110
|
+
);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Converts Scene's {@link TreeNode} model into the one PrimeReact 11's `Tree` reads.
|
|
115
|
+
*
|
|
116
|
+
* The two shapes agree on everything that matters except one thing: `key` is optional on a Scene node and
|
|
117
|
+
* required on a PrimeReact one, because the tree keys expansion and selection off it. A missing key is
|
|
118
|
+
* synthesized from the node's position, which is unique and stable across re-renders - the same rule
|
|
119
|
+
* `toTreeNodes` applies, repeated here so this component is correct even when handed nodes that did not
|
|
120
|
+
* come through it.
|
|
121
|
+
*
|
|
122
|
+
* @param nodes The Scene nodes to convert.
|
|
123
|
+
* @param parentKey The key of the node these belong to, used to build unique child keys.
|
|
124
|
+
* @returns The converted nodes, in order.
|
|
125
|
+
*/
|
|
126
|
+
function toTreeNodeData(nodes: TreeNode[], parentKey = ''): TreeNodeData[] {
|
|
127
|
+
return nodes.map((node, index) => {
|
|
128
|
+
const key = node.key ?? (parentKey === '' ? `${index}` : `${parentKey}-${index}`);
|
|
129
|
+
return {
|
|
130
|
+
key,
|
|
131
|
+
label: node.label,
|
|
132
|
+
icon: node.icon,
|
|
133
|
+
children: node.children === undefined ? undefined : toTreeNodeData(node.children, key),
|
|
134
|
+
};
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* Finds the label to show on the trigger for a selected key.
|
|
140
|
+
*
|
|
141
|
+
* The selection is a key rather than a node because that is all the tree reports, so the label has to be
|
|
142
|
+
* looked back up - and it has to search the whole hierarchy, since the selected node is very rarely a
|
|
143
|
+
* root one.
|
|
144
|
+
*
|
|
145
|
+
* @param nodes The converted nodes to search.
|
|
146
|
+
* @param key The selected key, or `undefined` when nothing is selected.
|
|
147
|
+
* @returns The node's label, or `undefined` when nothing is selected or the key matches no node.
|
|
148
|
+
*/
|
|
149
|
+
function findLabel(nodes: TreeNodeData[], key: string | undefined): ReactNode {
|
|
150
|
+
if (key === undefined) return undefined;
|
|
151
|
+
for (const node of nodes) {
|
|
152
|
+
if (node.key === key) return node.label;
|
|
153
|
+
const found = node.children === undefined ? undefined : findLabel(node.children, key);
|
|
154
|
+
if (found !== undefined) return found;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
return undefined;
|
|
158
|
+
}
|
package/form/index.ts
CHANGED
|
@@ -5,7 +5,6 @@ export * from './PrimeInputText';
|
|
|
5
5
|
export * from './PrimeInputTextarea';
|
|
6
6
|
export * from './PrimeInputNumber';
|
|
7
7
|
export * from './PrimePassword';
|
|
8
|
-
export * from './PrimeInputMask';
|
|
9
8
|
export * from './PrimeFloatLabel';
|
|
10
9
|
export * from './PrimeIconField';
|
|
11
10
|
export * from './PrimeDropdown';
|
|
@@ -22,5 +21,5 @@ export * from './PrimeCalendar';
|
|
|
22
21
|
export * from './PrimeColorPicker';
|
|
23
22
|
export * from './PrimeChips';
|
|
24
23
|
export * from './PrimeAutoComplete';
|
|
24
|
+
export * from './TreeSelect';
|
|
25
25
|
export * from './PrimeTreeSelect';
|
|
26
|
-
export * from './PrimeCascadeSelect';
|
package/index.ts
CHANGED
|
@@ -2,6 +2,9 @@
|
|
|
2
2
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
3
|
|
|
4
4
|
export * from './SelectOption';
|
|
5
|
+
export * from './MenuItem';
|
|
6
|
+
export * from './PrimeSeverity';
|
|
7
|
+
export * from './TreeNode';
|
|
5
8
|
export * from './properties';
|
|
6
9
|
export * from './menuItems';
|
|
7
10
|
export * from './treeNodes';
|
package/media/Image.tsx
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
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, useState } from 'react';
|
|
5
|
+
import { Dialog } from 'primereact/dialog';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Configuration for {@link Image}.
|
|
9
|
+
*/
|
|
10
|
+
export interface ImageProps extends Omit<HTMLAttributes<HTMLSpanElement>, 'children'> {
|
|
11
|
+
/**
|
|
12
|
+
* Where the picture comes from. Optional because a screen under construction routinely names an image
|
|
13
|
+
* before it has one, and that is not a failure worth taking a page down for.
|
|
14
|
+
*/
|
|
15
|
+
src?: string;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* The alternative text. Defaults to empty, which marks the image decorative - an image with no
|
|
19
|
+
* authored alternative is decorative until someone says otherwise, and inventing text from the file
|
|
20
|
+
* name would put a URL fragment in front of a screen reader.
|
|
21
|
+
*/
|
|
22
|
+
alt?: string;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* The rendered width, as any CSS length or a bare pixel count.
|
|
26
|
+
*/
|
|
27
|
+
width?: string;
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* The rendered height, as any CSS length or a bare pixel count.
|
|
31
|
+
*/
|
|
32
|
+
height?: string;
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Whether clicking the image opens it full size in an overlay. Off by default: a picture that grows
|
|
36
|
+
* when clicked is a promise, and one made on every thumbnail in a layout is usually a mistake.
|
|
37
|
+
*/
|
|
38
|
+
preview?: boolean;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* A picture, optionally openable full size in an overlay.
|
|
43
|
+
*
|
|
44
|
+
* Cratis owns this component. PrimeReact 10 had `Image`; PrimeReact 11 removed it with no replacement and
|
|
45
|
+
* no headless hook, while `image` remains a name this package's manifest publishes. The plain case is a
|
|
46
|
+
* plain `img` - there was never much to a themed image - and the preview reuses PrimeReact 11's `Dialog`,
|
|
47
|
+
* which survived, so the overlay keeps the application's focus trapping, escape handling and stacking
|
|
48
|
+
* rather than growing a second, worse implementation of all three here.
|
|
49
|
+
*
|
|
50
|
+
* With no `src`, an empty element is rendered rather than a broken `img`. That keeps whatever identifying
|
|
51
|
+
* attributes the caller passed in the document, which is what lets a design-time tool still find and
|
|
52
|
+
* select the element it has not finished authoring.
|
|
53
|
+
*
|
|
54
|
+
* What it deliberately does not carry over from v10: the preview toolbar - zoom in and out, rotate, flip,
|
|
55
|
+
* download - which is a viewer rather than an image and is exactly what the `galleria` component is for;
|
|
56
|
+
* `indicatorIcon` and the hover indicator overlay; the `imageStyle` / `previewStyle` prop pairs, since
|
|
57
|
+
* `className` and `style` already reach the element; and `zoomInDisabled` / `zoomOutDisabled`, which only
|
|
58
|
+
* ever meant anything to that toolbar.
|
|
59
|
+
*/
|
|
60
|
+
export function Image({ src, alt = '', width, height, preview = false, className, ...rest }: ImageProps) {
|
|
61
|
+
const [open, setOpen] = useState(false);
|
|
62
|
+
|
|
63
|
+
if (src === undefined || src === '') return <span {...rest} className={className} />;
|
|
64
|
+
|
|
65
|
+
const image = <img src={src} alt={alt} width={width} height={height} className='max-w-full' />;
|
|
66
|
+
|
|
67
|
+
if (!preview) {
|
|
68
|
+
return (
|
|
69
|
+
<span {...rest} className={className}>
|
|
70
|
+
{image}
|
|
71
|
+
</span>
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
return (
|
|
76
|
+
<span {...rest} className={className}>
|
|
77
|
+
<button
|
|
78
|
+
type='button'
|
|
79
|
+
className='cursor-zoom-in border-0 bg-transparent p-0'
|
|
80
|
+
aria-label={alt === '' ? 'Open image preview' : `Open preview of ${alt}`}
|
|
81
|
+
onClick={() => setOpen(true)}>
|
|
82
|
+
{image}
|
|
83
|
+
</button>
|
|
84
|
+
<Dialog.Root open={open} onOpenChange={(event) => setOpen(event.value === true)} modal dismissable>
|
|
85
|
+
<Dialog.Portal>
|
|
86
|
+
<Dialog.Backdrop />
|
|
87
|
+
<Dialog.Positioner>
|
|
88
|
+
<Dialog.Popup>
|
|
89
|
+
<Dialog.Header>
|
|
90
|
+
<Dialog.Title>{alt === '' ? 'Preview' : alt}</Dialog.Title>
|
|
91
|
+
<Dialog.Close aria-label='Close preview'>
|
|
92
|
+
<i className='pi pi-times' aria-hidden='true' />
|
|
93
|
+
</Dialog.Close>
|
|
94
|
+
</Dialog.Header>
|
|
95
|
+
<Dialog.Content>
|
|
96
|
+
<img src={src} alt={alt} className='max-h-[80vh] max-w-[80vw]' />
|
|
97
|
+
</Dialog.Content>
|
|
98
|
+
</Dialog.Popup>
|
|
99
|
+
</Dialog.Positioner>
|
|
100
|
+
</Dialog.Portal>
|
|
101
|
+
</Dialog.Root>
|
|
102
|
+
</span>
|
|
103
|
+
);
|
|
104
|
+
}
|
|
@@ -12,7 +12,7 @@ const meta = {
|
|
|
12
12
|
tags: ['autodocs'],
|
|
13
13
|
parameters: {
|
|
14
14
|
layout: 'padded',
|
|
15
|
-
docs: { description: { component: 'The media family. `galleria` and `carousel`
|
|
15
|
+
docs: { description: { component: 'The media family. `galleria` and `carousel` are compositions in PrimeReact 11 rather than components taking render-prop templates, so each adapter writes out the item list itself from the fields the element names - `galleria` from `{ src, thumbnail, alt }`, `carousel` from `titleField` and `descriptionField`. `image` is a Cratis-owned rebuild: PrimeReact 11 removed its `Image` with no replacement, and the preview overlay here is a PrimeReact `Dialog`.' } },
|
|
16
16
|
},
|
|
17
17
|
} satisfies Meta<typeof SceneElementView>;
|
|
18
18
|
|
package/media/PrimeCarousel.tsx
CHANGED
|
@@ -8,25 +8,46 @@ import { booleanProperty, numberProperty, recordArrayProperty, stringProperty }
|
|
|
8
8
|
/**
|
|
9
9
|
* The `PrimeReact:carousel` component - a row of items paged through horizontally.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
* `dataView` does:
|
|
11
|
+
* The item body is built from the `titleField` and `descriptionField` properties, for the same reason
|
|
12
|
+
* `dataView` does it: the element carries records, not markup, and something has to decide which two
|
|
13
|
+
* fields a reader sees. PrimeReact 11 takes that as children rather than as an `itemTemplate` callback,
|
|
14
|
+
* which is why the mapping is written out here instead of passed in.
|
|
15
|
+
*
|
|
16
|
+
* v10's `numScroll` has no v11 counterpart and is not read: the new carousel scrolls by a page, and a page
|
|
17
|
+
* is `numVisible` items. Honoring a `numScroll` that differs from it would mean re-implementing paging
|
|
18
|
+
* against a component that has its own.
|
|
19
|
+
*
|
|
20
|
+
* Navigation and page indicators appear only when there is more than one page's worth of items. A control
|
|
21
|
+
* that cannot do anything is worse than an absent one - it invites a click and answers with nothing.
|
|
13
22
|
*/
|
|
14
23
|
export function PrimeCarousel({ element }: RegisteredComponentProps) {
|
|
24
|
+
const items = recordArrayProperty(element, 'items');
|
|
15
25
|
const titleField = stringProperty(element, 'titleField', 'title');
|
|
16
26
|
const descriptionField = stringProperty(element, 'descriptionField', 'description');
|
|
27
|
+
const numVisible = numberProperty(element, 'numVisible', 3);
|
|
17
28
|
return (
|
|
18
|
-
<Carousel
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
+
<Carousel.Root data-scene-id={element.id} slidesPerPage={numVisible} loop={booleanProperty(element, 'circular', false)}>
|
|
30
|
+
<Carousel.Content>
|
|
31
|
+
{items.map((item, index) => (
|
|
32
|
+
<Carousel.Item key={index}>
|
|
33
|
+
<div className='m-2 flex flex-col gap-1 border p-3'>
|
|
34
|
+
<span className='font-semibold'>{String(item[titleField] ?? '')}</span>
|
|
35
|
+
<span className='text-sm opacity-75'>{String(item[descriptionField] ?? '')}</span>
|
|
36
|
+
</div>
|
|
37
|
+
</Carousel.Item>
|
|
38
|
+
))}
|
|
39
|
+
</Carousel.Content>
|
|
40
|
+
{items.length > numVisible && (
|
|
41
|
+
<>
|
|
42
|
+
<Carousel.Prev aria-label='Previous items'>
|
|
43
|
+
<i className='pi pi-chevron-left' aria-hidden='true' />
|
|
44
|
+
</Carousel.Prev>
|
|
45
|
+
<Carousel.Next aria-label='Next items'>
|
|
46
|
+
<i className='pi pi-chevron-right' aria-hidden='true' />
|
|
47
|
+
</Carousel.Next>
|
|
48
|
+
<Carousel.Indicators />
|
|
49
|
+
</>
|
|
29
50
|
)}
|
|
30
|
-
|
|
51
|
+
</Carousel.Root>
|
|
31
52
|
);
|
|
32
53
|
}
|
package/media/PrimeGalleria.tsx
CHANGED
|
@@ -1,35 +1,60 @@
|
|
|
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 { Gallery } from 'primereact/gallery';
|
|
5
5
|
import { RegisteredComponentProps } from '@cratis/scene.react';
|
|
6
6
|
import { booleanProperty, numberProperty, recordArrayProperty } from '../properties';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* The `PrimeReact:galleria` component - a gallery with thumbnails and a large view.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
11
|
+
* PrimeReact 11 renamed the module to `gallery` and turned it into a composition, which removes the
|
|
12
|
+
* awkwardness the v10 adapter had to work around: there are no `item` and `thumbnail` render-prop
|
|
13
|
+
* templates to supply, only two lists the adapter writes out itself. Each entry is still read as
|
|
14
|
+
* `{ src, thumbnail, alt }`, with the thumbnail falling back to the full image - the common case for a
|
|
15
|
+
* small gallery that has no separately generated thumbnails.
|
|
14
16
|
*
|
|
15
|
-
*
|
|
17
|
+
* The abstract name stays `galleria`. Renaming it would be renaming Scene's vocabulary because PrimeReact
|
|
18
|
+
* renamed a module, and every screen that says `galleria` today would have to be edited to say the same
|
|
19
|
+
* thing.
|
|
20
|
+
*
|
|
21
|
+
* Navigation and the thumbnail rail are rendered only when there is something to navigate: a single image
|
|
22
|
+
* needs no previous and next, and no items at all leave a bare, empty gallery rather than a frame of
|
|
23
|
+
* chrome around nothing.
|
|
16
24
|
*/
|
|
17
25
|
export function PrimeGalleria({ element }: RegisteredComponentProps) {
|
|
18
26
|
const items = recordArrayProperty(element, 'items');
|
|
27
|
+
const showThumbnails = booleanProperty(element, 'showThumbnails', true);
|
|
19
28
|
return (
|
|
20
|
-
<
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
<Gallery.Root data-scene-id={element.id} style={{ maxWidth: `${numberProperty(element, 'maxWidth', 480)}px` }}>
|
|
30
|
+
<Gallery.Content>
|
|
31
|
+
{items.map((item, index) => (
|
|
32
|
+
<Gallery.Item key={index}>
|
|
33
|
+
<img src={String(item.src ?? '')} alt={String(item.alt ?? '')} className='block w-full' />
|
|
34
|
+
</Gallery.Item>
|
|
35
|
+
))}
|
|
36
|
+
{items.length > 1 && (
|
|
37
|
+
<>
|
|
38
|
+
<Gallery.Prev aria-label='Previous image'>
|
|
39
|
+
<i className='pi pi-chevron-left' aria-hidden='true' />
|
|
40
|
+
</Gallery.Prev>
|
|
41
|
+
<Gallery.Next aria-label='Next image'>
|
|
42
|
+
<i className='pi pi-chevron-right' aria-hidden='true' />
|
|
43
|
+
</Gallery.Next>
|
|
44
|
+
</>
|
|
45
|
+
)}
|
|
46
|
+
</Gallery.Content>
|
|
47
|
+
{showThumbnails && items.length > 1 && (
|
|
48
|
+
<Gallery.Thumbnail slidesPerPage={numberProperty(element, 'numVisible', 5)} loop={booleanProperty(element, 'circular', true)}>
|
|
49
|
+
<Gallery.ThumbnailContent>
|
|
50
|
+
{items.map((item, index) => (
|
|
51
|
+
<Gallery.ThumbnailItem key={index} index={index}>
|
|
52
|
+
<img src={String(item.thumbnail ?? item.src ?? '')} alt={String(item.alt ?? '')} className='block h-12' />
|
|
53
|
+
</Gallery.ThumbnailItem>
|
|
54
|
+
))}
|
|
55
|
+
</Gallery.ThumbnailContent>
|
|
56
|
+
</Gallery.Thumbnail>
|
|
32
57
|
)}
|
|
33
|
-
|
|
58
|
+
</Gallery.Root>
|
|
34
59
|
);
|
|
35
60
|
}
|
package/media/PrimeImage.tsx
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
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 { Image } from 'primereact/image';
|
|
5
4
|
import { RegisteredComponentProps } from '@cratis/scene.react';
|
|
5
|
+
import { Image } from './Image';
|
|
6
6
|
import { booleanProperty, stringProperty } from '../properties';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* The `PrimeReact:image` component - an image with an optional full-screen preview.
|
|
10
10
|
*
|
|
11
|
+
* PrimeReact 11 removed `Image` with no replacement and no headless hook, so the adapter renders Cratis's
|
|
12
|
+
* own {@link Image}. The element's authored contract is unchanged, which is the point: which library
|
|
13
|
+
* happens to draw an `img` is not something a screen should have to be rewritten over.
|
|
14
|
+
*
|
|
11
15
|
* `alt` defaults to an empty string rather than to the file name: an image with no authored alternative
|
|
12
16
|
* text is decorative until someone says otherwise, and inventing one would put a URL fragment in front of
|
|
13
17
|
* a screen reader.
|
|
@@ -16,7 +20,7 @@ export function PrimeImage({ element }: RegisteredComponentProps) {
|
|
|
16
20
|
return (
|
|
17
21
|
<Image
|
|
18
22
|
data-scene-id={element.id}
|
|
19
|
-
src={stringProperty(element, 'src'
|
|
23
|
+
src={stringProperty(element, 'src')}
|
|
20
24
|
alt={stringProperty(element, 'alt', '')}
|
|
21
25
|
width={stringProperty(element, 'width')}
|
|
22
26
|
height={stringProperty(element, 'height')}
|
package/media/index.ts
CHANGED
package/menu/Dock.tsx
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
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 } from 'react';
|
|
5
|
+
import { MenuItem } from '../MenuItem';
|
|
6
|
+
import { DockPosition } from './DockPosition';
|
|
7
|
+
|
|
8
|
+
const dockStyle: CSSProperties = {
|
|
9
|
+
position: 'absolute',
|
|
10
|
+
background: 'var(--scene-surface-overlay)',
|
|
11
|
+
border: '1px solid var(--scene-surface-border)',
|
|
12
|
+
borderRadius: 'var(--scene-content-border-radius)',
|
|
13
|
+
color: 'var(--scene-text-color)',
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
const entryStyle: CSSProperties = {
|
|
17
|
+
background: 'transparent',
|
|
18
|
+
border: 'none',
|
|
19
|
+
color: 'inherit',
|
|
20
|
+
cursor: 'pointer',
|
|
21
|
+
font: 'inherit',
|
|
22
|
+
fontSize: '1.5rem',
|
|
23
|
+
lineHeight: 1,
|
|
24
|
+
textDecoration: 'none',
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Where the dock sits within its container, for one edge.
|
|
29
|
+
*
|
|
30
|
+
* The offset lives here rather than in four CSS classes because this package ships no component
|
|
31
|
+
* stylesheets, and because the two axes are genuinely coupled: an edge decides both which side is pinned
|
|
32
|
+
* and which axis is centered, so writing them together is what keeps them consistent.
|
|
33
|
+
*/
|
|
34
|
+
function anchor(position: DockPosition): CSSProperties {
|
|
35
|
+
switch (position) {
|
|
36
|
+
case DockPosition.Top:
|
|
37
|
+
return { top: 0, left: '50%', transform: 'translateX(-50%)' };
|
|
38
|
+
case DockPosition.Left:
|
|
39
|
+
return { left: 0, top: '50%', transform: 'translateY(-50%)' };
|
|
40
|
+
case DockPosition.Right:
|
|
41
|
+
return { right: 0, top: '50%', transform: 'translateY(-50%)' };
|
|
42
|
+
default:
|
|
43
|
+
return { bottom: 0, left: '50%', transform: 'translateX(-50%)' };
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* The configuration {@link Dock} takes.
|
|
49
|
+
*/
|
|
50
|
+
export interface DockProps extends HTMLAttributes<HTMLDivElement> {
|
|
51
|
+
/**
|
|
52
|
+
* The entries to show. Each is shown as its icon alone, with its label as the accessible name.
|
|
53
|
+
*/
|
|
54
|
+
items?: MenuItem[];
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* The edge of the containing box to anchor against.
|
|
58
|
+
*/
|
|
59
|
+
position?: DockPosition;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* A small strip of icons anchored to one edge of its container. Cratis-owned.
|
|
64
|
+
*
|
|
65
|
+
* This exists because PrimeReact 11 removed `primereact/dock` outright, with no successor and no headless
|
|
66
|
+
* hook. It positions itself absolutely, so it expects a positioned container to sit in - dropped straight
|
|
67
|
+
* into a page it would pin itself to the page, which is why the Scene adapter wraps it in a sized relative
|
|
68
|
+
* box.
|
|
69
|
+
*
|
|
70
|
+
* Entries are icon-only, and that is precisely why each one carries its label as `aria-label` and as a
|
|
71
|
+
* `title`: a control whose only content is a decorative glyph has no accessible name at all otherwise, and
|
|
72
|
+
* a dock is exactly the shape of component where that gets forgotten. An entry with no icon still renders,
|
|
73
|
+
* as a neutral placeholder glyph, so a half-authored screen shows a gap rather than an invisible control.
|
|
74
|
+
*
|
|
75
|
+
* What it deliberately does not carry over from the v10 `Dock`: there is no magnification of the icon under
|
|
76
|
+
* the pointer, which was the component's signature effect and is pure decoration; there are no tooltips
|
|
77
|
+
* beyond the browser's own `title`; and item templates are not supported.
|
|
78
|
+
*/
|
|
79
|
+
export function Dock({ items = [], position = DockPosition.Bottom, ...rest }: DockProps) {
|
|
80
|
+
const vertical = position === DockPosition.Left || position === DockPosition.Right;
|
|
81
|
+
|
|
82
|
+
return (
|
|
83
|
+
<div
|
|
84
|
+
{...rest}
|
|
85
|
+
role='toolbar'
|
|
86
|
+
aria-orientation={vertical ? 'vertical' : 'horizontal'}
|
|
87
|
+
className={vertical ? 'flex flex-col items-center gap-2 p-3' : 'flex items-center gap-2 p-3'}
|
|
88
|
+
style={{ ...dockStyle, ...anchor(position) }}>
|
|
89
|
+
{items.map((item, index) =>
|
|
90
|
+
item.url === undefined ? (
|
|
91
|
+
<button
|
|
92
|
+
key={index}
|
|
93
|
+
type='button'
|
|
94
|
+
style={entryStyle}
|
|
95
|
+
disabled={item.disabled}
|
|
96
|
+
title={item.label}
|
|
97
|
+
aria-label={item.label}
|
|
98
|
+
onClick={() => item.command?.()}>
|
|
99
|
+
<i className={item.icon ?? 'pi pi-circle'} aria-hidden='true' />
|
|
100
|
+
</button>
|
|
101
|
+
) : (
|
|
102
|
+
<a key={index} href={item.url} style={entryStyle} title={item.label} aria-label={item.label}>
|
|
103
|
+
<i className={item.icon ?? 'pi pi-circle'} aria-hidden='true' />
|
|
104
|
+
</a>
|
|
105
|
+
)
|
|
106
|
+
)}
|
|
107
|
+
</div>
|
|
108
|
+
);
|
|
109
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
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
|
+
/**
|
|
5
|
+
* The edge a {@link Dock} is anchored to.
|
|
6
|
+
*
|
|
7
|
+
* This is an enum rather than a union of string literals so the four edges are discoverable from the type
|
|
8
|
+
* itself and a `switch` over them stays exhaustive: adding a fifth edge becomes a compile error at every
|
|
9
|
+
* place that maps an edge onto a position, instead of a silently missing case. The values are the same
|
|
10
|
+
* lowercase words a screen authors, so an authored `position` maps straight onto a member.
|
|
11
|
+
*/
|
|
12
|
+
export enum DockPosition {
|
|
13
|
+
/**
|
|
14
|
+
* Anchored to the top edge, laid out across.
|
|
15
|
+
*/
|
|
16
|
+
Top = 'top',
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Anchored to the bottom edge, laid out across. The macOS-style default.
|
|
20
|
+
*/
|
|
21
|
+
Bottom = 'bottom',
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Anchored to the left edge, laid out down.
|
|
25
|
+
*/
|
|
26
|
+
Left = 'left',
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Anchored to the right edge, laid out down.
|
|
30
|
+
*/
|
|
31
|
+
Right = 'right',
|
|
32
|
+
}
|