@pantheon-systems/pds-toolkit-react 2.0.0-alpha.7 → 2.0.0-alpha.71
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/bin/pds-codemod.cjs +58 -0
- package/codemods/v1-to-v2/css-token-renames.js +186 -0
- package/codemods/v1-to-v2/mappings.json +1787 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/component-renames/basic.input.tsx +33 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/component-renames/basic.output.tsx +33 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/component-renames/only.input.tsx +8 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/component-renames/only.output.tsx +8 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/css-class-removals/basic.input.tsx +55 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/css-class-removals/basic.output.tsx +55 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/css-class-renames/basic.input.tsx +60 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/css-class-renames/basic.output.tsx +60 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/icon-name-updates/basic.input.tsx +35 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/icon-name-updates/basic.output.tsx +35 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/icon-name-updates/only.input.tsx +8 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/icon-name-updates/only.output.tsx +8 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/prop-renames/basic.input.tsx +28 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/prop-renames/basic.output.tsx +28 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/prop-renames/only.input.tsx +8 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/prop-renames/only.output.tsx +8 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/prop-value-standardization/basic.input.tsx +37 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/prop-value-standardization/basic.output.tsx +37 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/prop-value-standardization/only.input.tsx +21 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/prop-value-standardization/only.output.tsx +21 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/removed-prop-values/basic.input.tsx +60 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/removed-prop-values/basic.output.tsx +51 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/removed-prop-values/only.input.tsx +8 -0
- package/codemods/v1-to-v2/transforms/__testfixtures__/removed-prop-values/only.output.tsx +8 -0
- package/codemods/v1-to-v2/transforms/__tests__/component-renames.test.js +15 -0
- package/codemods/v1-to-v2/transforms/__tests__/css-class-removals.test.js +6 -0
- package/codemods/v1-to-v2/transforms/__tests__/css-class-renames.test.js +6 -0
- package/codemods/v1-to-v2/transforms/__tests__/icon-name-updates.test.js +15 -0
- package/codemods/v1-to-v2/transforms/__tests__/prop-renames.test.js +15 -0
- package/codemods/v1-to-v2/transforms/__tests__/prop-value-standardization.test.js +16 -0
- package/codemods/v1-to-v2/transforms/__tests__/removed-prop-values.test.js +15 -0
- package/codemods/v1-to-v2/transforms/component-renames.js +166 -0
- package/codemods/v1-to-v2/transforms/css-class-removals.js +262 -0
- package/codemods/v1-to-v2/transforms/css-class-renames.js +178 -0
- package/codemods/v1-to-v2/transforms/icon-name-updates.js +124 -0
- package/codemods/v1-to-v2/transforms/prop-renames.js +109 -0
- package/codemods/v1-to-v2/transforms/prop-value-standardization.js +143 -0
- package/codemods/v1-to-v2/transforms/removed-prop-values.js +206 -0
- package/dist/components/Avatar/Avatar.d.ts +5 -1
- package/dist/components/Callout/Callout.d.ts +6 -2
- package/dist/components/CodeBlock/CodeBlock.d.ts +10 -5
- package/dist/components/CodeBlock/code-examples.d.ts +2 -1
- package/dist/components/CodeBlock/prism-setup.d.ts +2 -0
- package/dist/components/CodeBlock/themes/index.d.ts +1 -2
- package/dist/components/CodeBlock/themes/{pdsDark.d.ts → pds.d.ts} +1 -1
- package/dist/components/ComparisonList/ComparisonList.d.ts +6 -1
- package/dist/components/Dropdown/Dropdown.d.ts +192 -0
- package/dist/components/Dropdown/DropdownSelectedIcon.d.ts +7 -0
- package/dist/components/FileDiff/FileDiff.d.ts +2 -2
- package/dist/components/IdentityBlock/IdentityBlock.d.ts +37 -0
- package/dist/components/PantheonLogo/PantheonLogo.d.ts +5 -4
- package/dist/components/Popover/Popover.d.ts +5 -1
- package/dist/components/ResultCount/ResultCount.d.ts +53 -0
- package/dist/components/SiteFooter/SiteFooter.d.ts +45 -0
- package/dist/components/{navigation/DashboardSearch/DashboardSearch.d.ts → SiteSearch/SiteSearch.d.ts} +6 -11
- package/dist/components/SortableList/SortableList.d.ts +8 -0
- package/dist/components/SortableList/SortableListHeader.d.ts +7 -0
- package/dist/components/SortableList/SortableRow.d.ts +16 -0
- package/dist/components/SortableList/sortable-utils.d.ts +19 -0
- package/dist/components/SortableList/types.d.ts +142 -0
- package/dist/components/SortableList/useSortableTree.d.ts +18 -0
- package/dist/components/{RefreshChecker/RefreshChecker.d.ts → StatusChecker/StatusChecker.d.ts} +6 -19
- package/dist/components/StatusIndicator/StatusIndicator.d.ts +7 -4
- package/dist/components/Table/Table.d.ts +290 -17
- package/dist/components/TableOfContents/TableOfContents.d.ts +1 -5
- package/dist/components/Tag/Tag.d.ts +21 -3
- package/dist/components/ThemeSwitcher/ThemeSwitcher.d.ts +29 -8
- package/dist/components/Tooltip/Tooltip.d.ts +6 -2
- package/dist/components/UtilityBar/UtilityBar.d.ts +26 -0
- package/dist/components/badges/Badge/Badge.d.ts +1 -1
- package/dist/components/badges/StatusBadge/StatusBadge.d.ts +2 -1
- package/dist/components/buttons/Button/Button.d.ts +15 -0
- package/dist/components/buttons/ButtonLink/ButtonLink.d.ts +1 -3
- package/dist/components/buttons/ClipboardButton/ClipboardButton.d.ts +5 -1
- package/dist/components/buttons/CloseButton/CloseButton.d.ts +4 -4
- package/dist/components/buttons/FilterButton/FilterButton.d.ts +92 -0
- package/dist/components/buttons/IconButton/IconButton.d.ts +12 -0
- package/dist/components/buttons/MenuButton/MenuButton.d.ts +24 -17
- package/dist/components/buttons/SSOButton/SSOButton.d.ts +9 -1
- package/dist/components/buttons/SegmentedButton/SegmentedButton.d.ts +44 -8
- package/dist/components/cards/ActionCard/ActionCard.d.ts +64 -0
- package/dist/components/cards/Card/Card.d.ts +10 -4
- package/dist/components/cards/CardSelect/CardSelect.d.ts +100 -0
- package/dist/components/charts/BarChart/BarChart.d.ts +21 -0
- package/dist/components/charts/LineChart/LineChart.d.ts +22 -0
- package/dist/components/charts/PieChart/PieChart.d.ts +59 -0
- package/dist/components/charts/ProportionBar/ProportionBar.d.ts +57 -0
- package/dist/components/charts/shared/ChartAccessibleTable.d.ts +17 -0
- package/dist/components/charts/shared/ChartLegend.d.ts +31 -0
- package/dist/components/charts/shared/ChartSkeleton.d.ts +11 -0
- package/dist/components/charts/shared/chart-colors.d.ts +30 -0
- package/dist/components/charts/shared/chart-styles.d.ts +24 -0
- package/dist/components/charts/shared/formatters.d.ts +12 -0
- package/dist/components/charts/shared/types.d.ts +128 -0
- package/dist/components/empty-states/HorizontalEmptyState/HorizontalEmptyState.d.ts +13 -8
- package/dist/components/icons/Icon/Icon.d.ts +2 -2
- package/dist/components/icons/Icon/custom-icons.d.ts +1 -1
- package/dist/components/icons/Icon/generated-icon-data.d.ts +212 -16
- package/dist/components/icons/PaymentIcon/PaymentIcon.d.ts +7 -3
- package/dist/components/icons/PlatformIcon/PlatformIcon.d.ts +6 -6
- package/dist/components/inputs/Checkbox/Checkbox.d.ts +3 -3
- package/dist/components/inputs/CheckboxFieldset/CheckboxFieldset.d.ts +9 -1
- package/dist/components/inputs/CheckboxGroup/CheckboxGroup.d.ts +9 -1
- package/dist/components/inputs/Combobox/Combobox.d.ts +17 -7
- package/dist/components/inputs/ComboboxMultiselect/ComboboxMultiselect.d.ts +10 -5
- package/dist/components/inputs/Datepicker/Datepicker.d.ts +217 -14
- package/dist/components/inputs/FileUpload/FileUpload.d.ts +6 -1
- package/dist/components/inputs/RadioGroup/RadioGroup.d.ts +10 -2
- package/dist/components/inputs/Select/Select.d.ts +11 -2
- package/dist/components/inputs/Switch/Switch.d.ts +5 -5
- package/dist/components/inputs/TagsInput/TagsInput.d.ts +6 -1
- package/dist/components/inputs/TextInput/TextInput.d.ts +4 -4
- package/dist/components/inputs/Textarea/Textarea.d.ts +2 -2
- package/dist/components/inputs/Timepicker/Timepicker.d.ts +94 -0
- package/dist/components/inputs/input-utilities.d.ts +12 -2
- package/dist/components/{CTALink → links/CTALink}/CTALink.d.ts +1 -1
- package/dist/components/{LinkNewWindow → links/LinkNewWindow}/LinkNewWindow.d.ts +1 -1
- package/dist/components/loading-indicators/Spinner/Spinner.d.ts +5 -4
- package/dist/components/navigation/ButtonNav/ButtonNav.d.ts +11 -5
- package/dist/components/navigation/DropdownMenu/DropdownMenu.d.ts +1 -0
- package/dist/components/navigation/Navbar/Navbar.d.ts +9 -21
- package/dist/components/navigation/SideNav/SideNav.d.ts +7 -1
- package/dist/components/navigation/SideNavGlobal/SideNavGlobal.d.ts +5 -15
- package/dist/components/navigation/SideNavGlobal/SideNavGlobalItem.d.ts +15 -1
- package/dist/components/navigation/SiteMenu/SiteMenu.d.ts +26 -0
- package/dist/components/navigation/SiteMenu/SiteMenuDropdown.d.ts +23 -0
- package/dist/components/navigation/TreeNav/TreeNav.d.ts +48 -0
- package/dist/components/navigation/UserMenu/UserMenu.d.ts +20 -5
- package/dist/components/navigation/WorkspaceSelector/WorkspaceSelector.d.ts +2 -16
- package/dist/components/navigation/navigation-utilities.d.ts +12 -0
- package/dist/components/notifications/Toaster/Toast.d.ts +12 -1
- package/dist/components/notifications/Toaster/Toaster.d.ts +16 -7
- package/dist/components/notifications/Toaster/useToast.d.ts +2 -0
- package/dist/components/overlays/Drawer/Drawer.d.ts +58 -0
- package/dist/components/overlays/FullScreenOverlay/FullScreenOverlay.d.ts +45 -0
- package/dist/components/{Modal → overlays/Modal}/Modal.d.ts +2 -2
- package/dist/components/{Pagination → pagination/Pagination}/Pagination.d.ts +7 -2
- package/dist/components/pagination/PaginationChapter/PaginationChapter.d.ts +55 -0
- package/dist/components/pagination/PaginationCompact/PaginationCompact.d.ts +62 -0
- package/dist/components/panels/ExpansionPanel/ExpansionPanel.d.ts +1 -2
- package/dist/components/panels/ExpansionPanelGroup/ExpansionPanelGroup.d.ts +1 -2
- package/dist/components/panels/Panel/Panel.d.ts +4 -21
- package/dist/components/panels/PanelList/PanelList.d.ts +1 -1
- package/dist/components/panels/PanelStack/PanelStack.d.ts +19 -0
- package/dist/components/progress-indicators/ProgressBar/ProgressBar.d.ts +4 -5
- package/dist/components/progress-indicators/ProgressRing/ProgressRing.d.ts +12 -4
- package/dist/components/{FlowSteps/FlowSteps.d.ts → steppers/StepList/StepList.d.ts} +7 -7
- package/dist/css/component-css/pds-action-card.css +1 -0
- package/dist/css/component-css/pds-avatar.css +1 -1
- package/dist/css/component-css/pds-badge.css +1 -1
- package/dist/css/component-css/pds-banner.css +1 -1
- package/dist/css/component-css/pds-bar-chart.css +1 -0
- package/dist/css/component-css/pds-branch-diff.css +1 -1
- package/dist/css/component-css/pds-breadcrumb.css +1 -1
- package/dist/css/component-css/pds-button-link.css +1 -1
- package/dist/css/component-css/pds-button-nav.css +1 -1
- package/dist/css/component-css/pds-button.css +45 -13
- package/dist/css/component-css/pds-callout.css +1 -1
- package/dist/css/component-css/pds-card-select.css +2 -0
- package/dist/css/component-css/pds-card.css +1 -1
- package/dist/css/component-css/pds-chart-legend.css +1 -0
- package/dist/css/component-css/pds-chart-wrapper.css +1 -0
- package/dist/css/component-css/pds-checkbox-group.css +1 -1
- package/dist/css/component-css/pds-checkbox.css +1 -1
- package/dist/css/component-css/pds-close-button.css +1 -1
- package/dist/css/component-css/pds-code-block-legacy.css +1 -1
- package/dist/css/component-css/pds-code-block.css +1 -1
- package/dist/css/component-css/pds-combobox-multiselect.css +3 -2
- package/dist/css/component-css/pds-combobox.css +1 -1
- package/dist/css/component-css/pds-compact-empty-state.css +1 -1
- package/dist/css/component-css/pds-comparison-list.css +1 -1
- package/dist/css/component-css/pds-cta-link.css +1 -1
- package/dist/css/component-css/pds-datepicker.css +1 -3
- package/dist/css/component-css/pds-drawer.css +1 -0
- package/dist/css/component-css/pds-dropdown-menu.css +2 -2
- package/dist/css/component-css/pds-dropdown.css +2 -0
- package/dist/css/component-css/pds-expansion-panel-group.css +1 -1
- package/dist/css/component-css/pds-expansion-panel.css +2 -1
- package/dist/css/component-css/pds-file-diff.css +1 -1
- package/dist/css/component-css/pds-file-upload.css +3 -3
- package/dist/css/component-css/pds-filter-button.css +1 -0
- package/dist/css/component-css/pds-full-screen-overlay.css +1 -0
- package/dist/css/component-css/pds-horizontal-empty-state.css +1 -1
- package/dist/css/component-css/pds-icon-button.css +5 -3
- package/dist/css/component-css/pds-icon-story-only.css +1 -1
- package/dist/css/component-css/pds-icon.css +1 -1
- package/dist/css/component-css/pds-identity-block.css +1 -0
- package/dist/css/component-css/pds-index.css +152 -45
- package/dist/css/component-css/pds-inline-message.css +1 -1
- package/dist/css/component-css/pds-input-group.css +1 -1
- package/dist/css/component-css/pds-input-utilities.css +1 -1
- package/dist/css/component-css/pds-line-chart.css +1 -0
- package/dist/css/component-css/pds-link-new-window.css +1 -1
- package/dist/css/component-css/pds-menu-button.css +7 -1
- package/dist/css/component-css/pds-modal.css +1 -1
- package/dist/css/component-css/pds-nav-menu.css +1 -5
- package/dist/css/component-css/pds-navbar.css +4 -1
- package/dist/css/component-css/pds-pagination-chapter.css +3 -0
- package/dist/css/component-css/pds-pagination-compact.css +1 -0
- package/dist/css/component-css/pds-pagination.css +1 -1
- package/dist/css/component-css/pds-panel-list.css +1 -1
- package/dist/css/component-css/pds-panel-stack.css +1 -0
- package/dist/css/component-css/pds-panel.css +2 -1
- package/dist/css/component-css/pds-pantheon-logo.css +1 -1
- package/dist/css/component-css/pds-payment-icon.css +1 -1
- package/dist/css/component-css/pds-picture.css +1 -1
- package/dist/css/component-css/pds-pie-chart.css +1 -0
- package/dist/css/component-css/pds-platform-icon.css +1 -1
- package/dist/css/component-css/pds-popover.css +1 -1
- package/dist/css/component-css/pds-progress-bar.css +1 -1
- package/dist/css/component-css/pds-progress-ring.css +1 -1
- package/dist/css/component-css/pds-proportion-bar.css +1 -0
- package/dist/css/component-css/pds-radio-group.css +1 -1
- package/dist/css/component-css/pds-result-count.css +1 -0
- package/dist/css/component-css/pds-section-message.css +1 -1
- package/dist/css/component-css/pds-segmented-button.css +2 -1
- package/dist/css/component-css/pds-select.css +1 -1
- package/dist/css/component-css/pds-side-nav-global.css +3 -5
- package/dist/css/component-css/pds-side-nav.css +3 -1
- package/dist/css/component-css/pds-site-footer.css +1 -1
- package/dist/css/component-css/pds-site-search.css +1 -0
- package/dist/css/component-css/pds-skeleton.css +1 -1
- package/dist/css/component-css/pds-skiplink.css +1 -1
- package/dist/css/component-css/pds-sortable-list.css +8 -0
- package/dist/css/component-css/pds-spinner.css +1 -1
- package/dist/css/component-css/pds-split-button.css +1 -1
- package/dist/css/component-css/pds-sso-button.css +2 -2
- package/dist/css/component-css/pds-status-badge.css +1 -1
- package/dist/css/component-css/pds-status-checker.css +1 -0
- package/dist/css/component-css/pds-status-indicator.css +1 -1
- package/dist/css/component-css/pds-step-list.css +1 -0
- package/dist/css/component-css/pds-stepper.css +3 -1
- package/dist/css/component-css/pds-switch.css +6 -11
- package/dist/css/component-css/pds-tab-menu.css +2 -2
- package/dist/css/component-css/pds-table-of-contents.css +1 -1
- package/dist/css/component-css/pds-table.css +5 -1
- package/dist/css/component-css/pds-tabs.css +1 -1
- package/dist/css/component-css/pds-tag.css +1 -1
- package/dist/css/component-css/pds-tags-input.css +1 -1
- package/dist/css/component-css/pds-tally.css +1 -1
- package/dist/css/component-css/pds-text-input.css +1 -1
- package/dist/css/component-css/pds-textarea.css +1 -1
- package/dist/css/component-css/pds-theme-switcher.css +1 -1
- package/dist/css/component-css/pds-timepicker.css +1 -0
- package/dist/css/component-css/pds-toaster.css +1 -1
- package/dist/css/component-css/pds-tooltip.css +1 -1
- package/dist/css/component-css/pds-tree-nav.css +1 -0
- package/dist/css/component-css/pds-user-menu-story-only.css +1 -1
- package/dist/css/component-css/pds-user-menu.css +32 -1
- package/dist/css/component-css/pds-utility-bar.css +1 -0
- package/dist/css/component-css/pds-utility-button.css +3 -1
- package/dist/css/component-css/pds-vertical-empty-state.css +1 -1
- package/dist/css/component-css/pds-vertical-stepper.css +1 -1
- package/dist/css/component-css/pds-video-embed.css +1 -1
- package/dist/css/component-css/pds-workspace-selector.css +26 -1
- package/dist/css/design-tokens/variables.dark.css +385 -338
- package/dist/css/design-tokens/variables.global.css +10 -18
- package/dist/css/design-tokens/variables.light.css +376 -309
- package/dist/css/design-tokens/variables.typography.css +1 -2
- package/dist/css/layout-css/pds-app-layout.css +3 -2
- package/dist/css/layout-css/pds-docs-layout.css +1 -1
- package/dist/css/layout-css/pds-index.css +3 -9
- package/dist/css/layout-css/pds-sidebar-layout.css +5 -0
- package/dist/css/layout-css/pds-stepper-layout.css +1 -1
- package/dist/css/layout-css/pds-three-item-layout.css +1 -1
- package/dist/css/layout-css/pds-two-item-layout.css +1 -1
- package/dist/css/pds-components.css +152 -45
- package/dist/css/pds-core.css +3 -2
- package/dist/css/pds-layouts.css +3 -9
- package/dist/index.css +5 -1
- package/dist/index.d.ts +95 -7
- package/dist/index.js +12738 -4787
- package/dist/index.js.map +1 -1
- package/dist/index.source.d.ts +44 -41
- package/dist/layouts/AppLayout/AppLayout.d.ts +85 -10
- package/dist/layouts/DocsLayout/DocsLayout.d.ts +9 -7
- package/dist/layouts/SidebarLayout/SidebarLayout.d.ts +16 -6
- package/dist/layouts/StepperLayout/StepperLayout.d.ts +13 -1
- package/dist/layouts/ThreeItemLayout/ThreeItemLayout.d.ts +3 -3
- package/dist/layouts/TwoItemLayout/TwoItemLayout.d.ts +3 -3
- package/dist/libs/components/NavAccordion/NavAccordion.d.ts +27 -0
- package/dist/libs/components/StatusDot/StatusDot.d.ts +15 -0
- package/dist/libs/components/utils.d.ts +1 -1
- package/dist/libs/types/custom-types.d.ts +11 -5
- package/dist/libs/types/layout-types.d.ts +4 -1
- package/dist/libs/types/navigation-types.d.ts +17 -1
- package/dist/svg/anglesDown.svg +3 -0
- package/dist/svg/anglesUp.svg +3 -0
- package/dist/svg/barsStaggered.svg +3 -0
- package/dist/svg/bookmark.svg +3 -0
- package/dist/svg/bookmarkSolid.svg +3 -0
- package/dist/svg/box.svg +3 -0
- package/dist/svg/circleExclamationSolid.svg +3 -0
- package/dist/svg/circleHalfStroke.svg +3 -0
- package/dist/svg/circleInfoSolid.svg +3 -0
- package/dist/svg/circleQuestionSolid.svg +3 -0
- package/dist/svg/claude.svg +3 -0
- package/dist/svg/clock.svg +3 -0
- package/dist/svg/collapseToCenter.svg +3 -0
- package/dist/svg/compress.svg +3 -0
- package/dist/svg/diagramVenn.svg +3 -0
- package/dist/svg/floppyDisk.svg +3 -0
- package/dist/svg/grid.svg +2 -2
- package/dist/svg/grid2.svg +3 -0
- package/dist/svg/landmark.svg +3 -0
- package/dist/svg/move.svg +3 -0
- package/dist/svg/octagonExclamation.svg +3 -0
- package/dist/svg/openai.svg +3 -0
- package/dist/svg/pause.svg +3 -0
- package/dist/svg/penPaintbrush.svg +3 -0
- package/dist/svg/sidebar.svg +3 -0
- package/dist/svg/slider.svg +3 -0
- package/dist/svg/squareDashed.svg +3 -0
- package/dist/svg/tableColumns.svg +3 -0
- package/dist/svg/userSolid.svg +3 -0
- package/dist/{layouts → utilities}/FlexContainer/FlexContainer.d.ts +6 -6
- package/dist/utilities/GlobalWrapper/GlobalWrapper.d.ts +35 -0
- package/dist/utilities/context-providers/ThemeContext/ThemeContext.d.ts +113 -0
- package/dist/utilities/grid/Grid.d.ts +58 -0
- package/dist/utilities/grid/GridItem.d.ts +57 -0
- package/dist/utilities/hooks/useDropdown/index.d.ts +1 -0
- package/dist/utilities/hooks/useDropdown/useDropdown.d.ts +138 -0
- package/dist/utilities/hooks/useIsMobile/useIsMobile.d.ts +16 -0
- package/dist/utilities/hooks/useKeyPress/useKeyPress.d.ts +6 -0
- package/dist/utilities/hooks/useKeyboardShortcut/useKeyboardShortcut.d.ts +29 -0
- package/package.json +83 -47
- package/tailwind/README.md +220 -0
- package/tailwind/TESTING.md +457 -0
- package/tailwind/v3/preset.cjs +258 -0
- package/tailwind/v4/theme.css +230 -0
- package/dist/components/CTASlice/CTASlice.d.ts +0 -43
- package/dist/components/CodeBlock/themes/pdsLight.d.ts +0 -2
- package/dist/components/DashboardStat/DashboardStat.d.ts +0 -28
- package/dist/components/PullQuote/PullQuote.d.ts +0 -34
- package/dist/components/SiteDashboardHeading/SiteDashboardHeading.d.ts +0 -62
- package/dist/components/SocialLinks/SocialLinks.d.ts +0 -23
- package/dist/components/cards/CardHeading/CardHeading.d.ts +0 -31
- package/dist/components/cards/CardSelectGroup/CardSelectGroup.d.ts +0 -60
- package/dist/components/cards/EmptyStateCard/EmptyStateCard.d.ts +0 -36
- package/dist/components/cards/LinksCard/LinksCard.d.ts +0 -29
- package/dist/components/cards/LinksCard/links-card-sample-data.d.ts +0 -2
- package/dist/components/cards/NewSiteCard/NewSiteCard.d.ts +0 -61
- package/dist/components/cards/PaymentCard/PaymentCard.d.ts +0 -47
- package/dist/components/cards/PricingCard/PricingCard.d.ts +0 -95
- package/dist/components/cards/SiteCard/SiteCard.d.ts +0 -50
- package/dist/components/footer/FooterHeading/FooterHeading.d.ts +0 -22
- package/dist/components/footer/FooterLinks/FooterLinks.d.ts +0 -26
- package/dist/components/footer/SiteFooter/SiteFooter.d.ts +0 -34
- package/dist/components/footer/SiteFooter/footer-content.d.ts +0 -1
- package/dist/components/navigation/DashboardNav/DashboardNav.d.ts +0 -35
- package/dist/components/navigation/DashboardNav/DashboardNavItem.d.ts +0 -24
- package/dist/components/navigation/NavMenu/NavMenu.d.ts +0 -33
- package/dist/components/navigation/NavMenu/NavMenuDropdown.d.ts +0 -24
- package/dist/components/navigation/SideNavCompact/SideNavCompact.d.ts +0 -53
- package/dist/components/notifications/NotificationHubIcon/NotificationHubIcon.d.ts +0 -38
- package/dist/components/notifications/NotificationsPopover/NotificationsPopover.d.ts +0 -118
- package/dist/components/tiles/AvatarTileList/AvatarTileList.d.ts +0 -28
- package/dist/components/tiles/Tile/Tile.d.ts +0 -42
- package/dist/components/tiles/TileGrid/TileGrid.d.ts +0 -29
- package/dist/css/component-css/pds-avatar-tile-list.css +0 -1
- package/dist/css/component-css/pds-card-heading.css +0 -1
- package/dist/css/component-css/pds-card-select-group.css +0 -1
- package/dist/css/component-css/pds-cta-slice.css +0 -1
- package/dist/css/component-css/pds-dashboard-nav.css +0 -5
- package/dist/css/component-css/pds-dashboard-search.css +0 -1
- package/dist/css/component-css/pds-dashboard-stat.css +0 -1
- package/dist/css/component-css/pds-empty-state-card.css +0 -1
- package/dist/css/component-css/pds-flow-steps.css +0 -1
- package/dist/css/component-css/pds-footer-heading.css +0 -1
- package/dist/css/component-css/pds-footer-links.css +0 -1
- package/dist/css/component-css/pds-links-card.css +0 -1
- package/dist/css/component-css/pds-new-site-card.css +0 -1
- package/dist/css/component-css/pds-notification-hub-icon.css +0 -1
- package/dist/css/component-css/pds-notifications-popover.css +0 -1
- package/dist/css/component-css/pds-payment-card.css +0 -1
- package/dist/css/component-css/pds-pricing-card-local.css +0 -1
- package/dist/css/component-css/pds-pricing-card.css +0 -1
- package/dist/css/component-css/pds-pull-quote.css +0 -1
- package/dist/css/component-css/pds-refresh-checker.css +0 -1
- package/dist/css/component-css/pds-side-nav-compact.css +0 -1
- package/dist/css/component-css/pds-site-card.css +0 -1
- package/dist/css/component-css/pds-site-dashboard-heading.css +0 -1
- package/dist/css/component-css/pds-social-links.css +0 -1
- package/dist/css/component-css/pds-tile.css +0 -1
- package/dist/css/component-css/pds-tiles-common.css +0 -1
- package/dist/css/layout-css/pds-dashboard-global.css +0 -8
- package/dist/css/layout-css/pds-dashboard-inner.css +0 -1
- package/dist/css/layout-css/pds-flex-container.css +0 -1
- package/dist/layouts/DashboardGlobal/DashboardGlobal.d.ts +0 -57
- package/dist/layouts/DashboardInner/DashboardInner.d.ts +0 -30
- package/dist/layouts/GlobalWrapper/GlobalWrapper.d.ts +0 -19
- package/dist/utilities/context-providers/ResponsiveContext/ResponsiveContext.d.ts +0 -6
- /package/dist/components/{Skiplink → links/Skiplink}/Skiplink.d.ts +0 -0
- /package/dist/components/{Picture → media/Picture}/Picture.d.ts +0 -0
- /package/dist/components/{VideoEmbed → media/VideoEmbed}/VideoEmbed.d.ts +0 -0
- /package/dist/components/{Pagination → pagination/Pagination}/usePagination.d.ts +0 -0
- /package/dist/components/{FlowSteps → steppers/StepList}/example-steps.d.ts +0 -0
- /package/dist/svg/{linkSimple.svg → link.svg} +0 -0
- /package/dist/svg/{linkSimpleSlash.svg → unlink.svg} +0 -0
- /package/dist/{layouts → utilities}/Container/Container.d.ts +0 -0
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { CalendarDate } from '@internationalized/date';
|
|
3
|
+
import { ValidationStatus } from '../../../libs/types/input-types';
|
|
4
|
+
import './timepicker.css';
|
|
5
|
+
export type TimepickerSize = 's' | 'm';
|
|
6
|
+
/**
|
|
7
|
+
* Prop types for Timepicker
|
|
8
|
+
*/
|
|
9
|
+
export interface TimepickerProps {
|
|
10
|
+
/**
|
|
11
|
+
* Anchor calendar date used for DST-safe conversion math when `timeZone` changes. Defaults to today (in the previous timezone) if omitted — correct for the vast majority of scheduling UIs. Pass a real date (e.g. from Datepicker's selection) for full precision on/near DST transition dates.
|
|
12
|
+
*/
|
|
13
|
+
anchorDate?: CalendarDate;
|
|
14
|
+
/**
|
|
15
|
+
* Additional class names
|
|
16
|
+
*/
|
|
17
|
+
className?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Optional default value for the field, as a 24-hour "HH:MM" string (e.g. "14:30"). Setting this prop automatically makes the input uncontrolled. Cannot be used in conjunction with the `value` prop.
|
|
20
|
+
*/
|
|
21
|
+
defaultValue?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Is the field disabled?
|
|
24
|
+
*/
|
|
25
|
+
disabled?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Hour format. `12` displays hour + AM/PM (e.g. "12:30 PM"); `24` displays a 24-hour hour segment with no AM/PM (e.g. "13:30").
|
|
28
|
+
*/
|
|
29
|
+
hourCycle?: 12 | 24;
|
|
30
|
+
/**
|
|
31
|
+
* Input ID.
|
|
32
|
+
*/
|
|
33
|
+
id: string;
|
|
34
|
+
/**
|
|
35
|
+
* Width of the input field in pixels. When omitted, the input fills its container.
|
|
36
|
+
*/
|
|
37
|
+
inputWidth?: number;
|
|
38
|
+
/**
|
|
39
|
+
* Input label.
|
|
40
|
+
*/
|
|
41
|
+
label: string;
|
|
42
|
+
/**
|
|
43
|
+
* Input message. Used to provide supplemental text. Will be displayed below the input field.
|
|
44
|
+
*/
|
|
45
|
+
message?: string | ReactNode;
|
|
46
|
+
/**
|
|
47
|
+
* onBlur event handler. Fires when focus leaves the field entirely (not when it moves between segments).
|
|
48
|
+
*/
|
|
49
|
+
onBlur?: () => void;
|
|
50
|
+
/**
|
|
51
|
+
* onChange event handler, called with a 24-hour "HH:MM" string whenever a complete time is entered. Controlled inputs should use this to manage the input value.
|
|
52
|
+
*/
|
|
53
|
+
onChange?: (value: string) => void;
|
|
54
|
+
/**
|
|
55
|
+
* onFocus event handler. Fires when focus enters the field.
|
|
56
|
+
*/
|
|
57
|
+
onFocus?: () => void;
|
|
58
|
+
/**
|
|
59
|
+
* Is this field required?
|
|
60
|
+
*/
|
|
61
|
+
required?: boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Should the label be visible? If false, it will render for screen readers only.
|
|
64
|
+
*/
|
|
65
|
+
showLabel?: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Input size.
|
|
68
|
+
*/
|
|
69
|
+
size?: TimepickerSize;
|
|
70
|
+
/**
|
|
71
|
+
* IANA timezone identifier (e.g. "America/Los_Angeles", "UTC"). Drives the auto-derived display label (e.g. "PDT") and, when this prop changes, converts the current value into the new zone using `@internationalized/date` — a real, DST-safe conversion, not just a relabel.
|
|
72
|
+
*/
|
|
73
|
+
timeZone?: string;
|
|
74
|
+
/**
|
|
75
|
+
* Optional tooltip text to display additional information.
|
|
76
|
+
*/
|
|
77
|
+
tooltipText?: string | null;
|
|
78
|
+
/**
|
|
79
|
+
* Validation message for the input field based on the validation status.
|
|
80
|
+
*/
|
|
81
|
+
validationMessage?: string;
|
|
82
|
+
/**
|
|
83
|
+
* Validation status of the input field.
|
|
84
|
+
*/
|
|
85
|
+
validationStatus?: ValidationStatus;
|
|
86
|
+
/**
|
|
87
|
+
* Value of the input field, as a 24-hour "HH:MM" string (e.g. "14:30"). Used to set the value of the input field when controlled. Cannot be used in conjunction with the `defaultValue` prop.
|
|
88
|
+
*/
|
|
89
|
+
value?: string;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Timepicker UI component
|
|
93
|
+
*/
|
|
94
|
+
export declare const Timepicker: ({ anchorDate, className, defaultValue, disabled, hourCycle, id, inputWidth, label, message, onBlur, onChange, onFocus, required, showLabel, size, timeZone, tooltipText, validationMessage, validationStatus, value, }: TimepickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { ComponentPropsWithoutRef, MouseEventHandler, ReactNode } from 'react';
|
|
2
2
|
import { SelectOptionGroupType, SelectOptionType } from './Select/Select';
|
|
3
|
+
import '@components/Dropdown/dropdown.css';
|
|
3
4
|
import './input-utilities.css';
|
|
4
5
|
export declare const inputCommonClasses: {
|
|
5
6
|
base: string;
|
|
@@ -10,7 +11,7 @@ export declare const inputCommonClasses: {
|
|
|
10
11
|
readonly: string;
|
|
11
12
|
};
|
|
12
13
|
export declare const getInputWidthStyle: (inputWidth: number) => {
|
|
13
|
-
|
|
14
|
+
width: string;
|
|
14
15
|
};
|
|
15
16
|
export declare const stripUrlProtocol: (value: string) => string;
|
|
16
17
|
export declare const RequiredIcon: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -40,6 +41,15 @@ interface InputLabelProps {
|
|
|
40
41
|
* Label text.
|
|
41
42
|
*/
|
|
42
43
|
label: string;
|
|
44
|
+
/**
|
|
45
|
+
* Visual treatment of the label/legend text. `'default'` matches other
|
|
46
|
+
* form field labels (medium weight, tight spacing to the field) — use it
|
|
47
|
+
* when the fieldset is one of several inputs on a form. `'heading'` is
|
|
48
|
+
* semibold with more room below it, for cases where the group reads as
|
|
49
|
+
* its own section label rather than a form field among others (e.g. a
|
|
50
|
+
* filter panel's category groups).
|
|
51
|
+
*/
|
|
52
|
+
labelVariant?: 'default' | 'heading';
|
|
43
53
|
/**
|
|
44
54
|
* Is the field required?
|
|
45
55
|
*/
|
|
@@ -53,7 +63,7 @@ interface InputLabelProps {
|
|
|
53
63
|
*/
|
|
54
64
|
tooltipText?: string;
|
|
55
65
|
}
|
|
56
|
-
export declare const InputLabel: ({ className, disabled, id, isLegend, isPseudoLabel, label, required, showLabel, tooltipText, }: InputLabelProps) => import("react/jsx-runtime").JSX.Element;
|
|
66
|
+
export declare const InputLabel: ({ className, disabled, id, isLegend, isPseudoLabel, label, labelVariant, required, showLabel, tooltipText, }: InputLabelProps) => import("react/jsx-runtime").JSX.Element;
|
|
57
67
|
export declare const InputMessage: ({ className, forInputGroup, hasValidationMessage, id, message, validationMessageHasDecorators, validationStatus, }: {
|
|
58
68
|
className?: string;
|
|
59
69
|
forInputGroup?: boolean;
|
|
@@ -15,7 +15,7 @@ export interface LinkNewWindowProps extends ComponentPropsWithoutRef<'a'> {
|
|
|
15
15
|
/**
|
|
16
16
|
* Optional font size for the LinkNewWindow. If not provided, the font size will be inherited from the parent element.
|
|
17
17
|
*/
|
|
18
|
-
fontSize?: '
|
|
18
|
+
fontSize?: 's' | 'm' | 'l';
|
|
19
19
|
/**
|
|
20
20
|
* Is the link in the process of loading?
|
|
21
21
|
*/
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ComponentPropsWithoutRef } from 'react';
|
|
2
2
|
export type SpinnerSize = 's' | 'm' | 'l' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl';
|
|
3
|
-
export type SpinnerColorType = 'full-color' | 'monochromatic' | 'monochromatic-reverse';
|
|
4
3
|
import './spinner.css';
|
|
5
4
|
export interface SpinnerProps extends ComponentPropsWithoutRef<'span'> {
|
|
6
5
|
/**
|
|
@@ -8,9 +7,11 @@ export interface SpinnerProps extends ComponentPropsWithoutRef<'span'> {
|
|
|
8
7
|
*/
|
|
9
8
|
className?: string;
|
|
10
9
|
/**
|
|
11
|
-
*
|
|
10
|
+
* Arc color. Accepts any CSS color value or `var(--token)` reference.
|
|
11
|
+
* The track ring renders at the same color with reduced opacity.
|
|
12
|
+
* Defaults to the interactive blue token.
|
|
12
13
|
*/
|
|
13
|
-
|
|
14
|
+
color?: string;
|
|
14
15
|
/**
|
|
15
16
|
* Should the spinner be an inline element? If true, it will be displayed inline-block without a visible label.
|
|
16
17
|
*/
|
|
@@ -31,4 +32,4 @@ export interface SpinnerProps extends ComponentPropsWithoutRef<'span'> {
|
|
|
31
32
|
/**
|
|
32
33
|
* Spinner UI component
|
|
33
34
|
*/
|
|
34
|
-
export declare const Spinner: ({ className,
|
|
35
|
+
export declare const Spinner: ({ className, color, isInline, label, showLabel, size, ...props }: SpinnerProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -10,20 +10,26 @@ export interface ButtonNavProps extends ComponentPropsWithRef<'nav'> {
|
|
|
10
10
|
* Aria label for the navigation.
|
|
11
11
|
*/
|
|
12
12
|
ariaLabel: string;
|
|
13
|
+
/**
|
|
14
|
+
* Renders a border around the track. Off by default.
|
|
15
|
+
*/
|
|
16
|
+
border?: boolean;
|
|
13
17
|
/**
|
|
14
18
|
* Additional class names
|
|
15
19
|
*/
|
|
16
20
|
className?: string;
|
|
17
21
|
/**
|
|
18
|
-
*
|
|
22
|
+
* When true, renders a dropdown menu in place of the button group at mobile viewports.
|
|
23
|
+
* The mobile breakpoint is controlled by the `mobileBreakpoint` prop on `GlobalWrapper`.
|
|
24
|
+
* Defaults to `false` — the button group is shown at all breakpoints.
|
|
19
25
|
*/
|
|
20
|
-
|
|
26
|
+
hasMobileDropdown?: boolean;
|
|
21
27
|
/**
|
|
22
|
-
*
|
|
28
|
+
* Menu items to render.
|
|
23
29
|
*/
|
|
24
|
-
|
|
30
|
+
menuItems?: ButtonNavItem[];
|
|
25
31
|
}
|
|
26
32
|
/**
|
|
27
33
|
* ButtonNav UI component
|
|
28
34
|
*/
|
|
29
|
-
export declare const ButtonNav: ({ ariaLabel, className,
|
|
35
|
+
export declare const ButtonNav: ({ ariaLabel, border, className, hasMobileDropdown, menuItems, ...props }: ButtonNavProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
2
|
import { ContainerWidth } from '../../../libs/types/custom-types';
|
|
3
|
-
import { PantheonLogoDisplayType } from '../../PantheonLogo/PantheonLogo';
|
|
4
3
|
import './navbar.css';
|
|
5
4
|
/**
|
|
6
5
|
* Prop types for Navbar
|
|
7
6
|
*/
|
|
8
7
|
export interface NavbarProps extends ComponentPropsWithoutRef<'header'> {
|
|
9
8
|
/**
|
|
10
|
-
* Navbar content.
|
|
9
|
+
* Navbar content. Use the `logo`, `items-left`, `items-center`, and `items-right` slots.
|
|
11
10
|
*/
|
|
12
11
|
children?: ReactNode;
|
|
13
12
|
/**
|
|
@@ -27,25 +26,14 @@ export interface NavbarProps extends ComponentPropsWithoutRef<'header'> {
|
|
|
27
26
|
*/
|
|
28
27
|
hideBorder?: boolean;
|
|
29
28
|
/**
|
|
30
|
-
*
|
|
29
|
+
* Overrides the horizontal (inline) padding of the desktop navbar bar.
|
|
30
|
+
* Accepts any CSS length (e.g. '1rem', '26px', or a token such as
|
|
31
|
+
* 'var(--pds-spacing-m)'). Applied symmetrically. Defaults to the
|
|
32
|
+
* Container's standard gutter. Useful for aligning navbar content with an
|
|
33
|
+
* adjacent app shell (e.g. the AppLayout sidebar) when placed in a `header`
|
|
34
|
+
* slot.
|
|
31
35
|
*/
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* How should the Pantheon logo be displayed.
|
|
35
|
-
*/
|
|
36
|
-
logoDisplayType?: PantheonLogoDisplayType;
|
|
37
|
-
/**
|
|
38
|
-
* Where should the logo link to? A fully-formed link element.
|
|
39
|
-
*/
|
|
40
|
-
logoLinkContent?: ReactNode;
|
|
41
|
-
/**
|
|
42
|
-
* Logo image source. If provided, the Pantheon logo will not be rendered.
|
|
43
|
-
*/
|
|
44
|
-
logoSrc?: string;
|
|
45
|
-
/**
|
|
46
|
-
* Accepts a fully-formed link or a string (if a static site name is desired). Only necessary if logoDisplayType is `sub-brand`.
|
|
47
|
-
*/
|
|
48
|
-
logoSubBrand?: ReactNode | string;
|
|
36
|
+
inlinePadding?: string;
|
|
49
37
|
/**
|
|
50
38
|
* Translation strings for accessibility.
|
|
51
39
|
*/
|
|
@@ -57,4 +45,4 @@ export interface NavbarProps extends ComponentPropsWithoutRef<'header'> {
|
|
|
57
45
|
/**
|
|
58
46
|
* Navbar UI component
|
|
59
47
|
*/
|
|
60
|
-
export declare const Navbar: ({ children, className, colorType, containerWidth, hideBorder,
|
|
48
|
+
export declare const Navbar: ({ children, className, colorType, containerWidth, hideBorder, inlinePadding, translationStrings, ...props }: NavbarProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -13,6 +13,12 @@ export interface SideNavProps extends ComponentPropsWithoutRef<'nav'> {
|
|
|
13
13
|
* Additional class names
|
|
14
14
|
*/
|
|
15
15
|
className?: string;
|
|
16
|
+
/**
|
|
17
|
+
* When true, renders a dropdown menu in place of the standard navigation at mobile viewports.
|
|
18
|
+
* The mobile breakpoint is controlled by the `mobileBreakpoint` prop on `GlobalWrapper`.
|
|
19
|
+
* Defaults to `false` — the standard navigation is shown at all breakpoints.
|
|
20
|
+
*/
|
|
21
|
+
hasMobileDropdown?: boolean;
|
|
16
22
|
/**
|
|
17
23
|
* Heading text. If a link is passed, it will be rendered as a link.
|
|
18
24
|
*/
|
|
@@ -36,4 +42,4 @@ export interface SideNavProps extends ComponentPropsWithoutRef<'nav'> {
|
|
|
36
42
|
/**
|
|
37
43
|
* SideNav UI component
|
|
38
44
|
*/
|
|
39
|
-
export declare const SideNav: ({ ariaLabel, className, headingText, labels, menuItems, mobileMenuSelectTextFallback, ...props }: SideNavProps) => import("react/jsx-runtime").JSX.Element;
|
|
45
|
+
export declare const SideNav: ({ ariaLabel, className, hasMobileDropdown, headingText, labels, menuItems, mobileMenuSelectTextFallback, ...props }: SideNavProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ComponentPropsWithoutRef
|
|
1
|
+
import { ComponentPropsWithoutRef } from 'react';
|
|
2
2
|
import { SideNavGlobalItemProps } from './SideNavGlobalItem';
|
|
3
3
|
import './side-nav-global.css';
|
|
4
4
|
/**
|
|
@@ -13,11 +13,6 @@ export interface SideNavGlobalProps extends ComponentPropsWithoutRef<'div'> {
|
|
|
13
13
|
* Additional class names
|
|
14
14
|
*/
|
|
15
15
|
className?: string;
|
|
16
|
-
/**
|
|
17
|
-
* Should the Pantheon logo be displayed above the menu items?
|
|
18
|
-
* It will not be displayed in the mobile view regardless of this value.
|
|
19
|
-
*/
|
|
20
|
-
hasLogo?: boolean;
|
|
21
16
|
/**
|
|
22
17
|
* Is the sidebar collapsed?
|
|
23
18
|
*/
|
|
@@ -29,22 +24,17 @@ export interface SideNavGlobalProps extends ComponentPropsWithoutRef<'div'> {
|
|
|
29
24
|
submenu: string;
|
|
30
25
|
toggle: string;
|
|
31
26
|
};
|
|
32
|
-
/**
|
|
33
|
-
* Where should the logo link to? A fully-formed link element.
|
|
34
|
-
* Only necessary if `hasLogo` is true.
|
|
35
|
-
* If the logo should not be a link, leave blank.
|
|
36
|
-
*/
|
|
37
|
-
logoLinkContent?: ReactNode;
|
|
38
27
|
/**
|
|
39
28
|
* Menu items to render.
|
|
40
29
|
*/
|
|
41
30
|
menuItems?: SideNavGlobalItemProps[];
|
|
42
31
|
/**
|
|
43
|
-
*
|
|
32
|
+
* Callback to expand the sidebar. When provided and the sidebar is collapsed,
|
|
33
|
+
* tapping a nav item with children will expand the sidebar instead of showing a flyout.
|
|
44
34
|
*/
|
|
45
|
-
|
|
35
|
+
onExpandSidebar?: () => void;
|
|
46
36
|
}
|
|
47
37
|
/**
|
|
48
38
|
* SideNavGlobal UI component
|
|
49
39
|
*/
|
|
50
|
-
export declare const SideNavGlobal: ({ ariaLabel, className,
|
|
40
|
+
export declare const SideNavGlobal: ({ ariaLabel, className, isSidebarCollapsed, labels, menuItems, onExpandSidebar, ...props }: SideNavGlobalProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -6,6 +6,12 @@ export interface SideNavGlobalItemProps extends NavigationItem {
|
|
|
6
6
|
* Icon to display next to the link content.
|
|
7
7
|
*/
|
|
8
8
|
icon?: PDSIcon;
|
|
9
|
+
/**
|
|
10
|
+
* Whether the item's submenu is expanded. Controlled by the parent
|
|
11
|
+
* `SideNavGlobal` so expansion state stays in React rather than being
|
|
12
|
+
* mutated on the DOM.
|
|
13
|
+
*/
|
|
14
|
+
isExpanded?: boolean;
|
|
9
15
|
/**
|
|
10
16
|
* Flag indicating whether the sidebar is collapsed.
|
|
11
17
|
*/
|
|
@@ -17,8 +23,16 @@ export interface SideNavGlobalItemProps extends NavigationItem {
|
|
|
17
23
|
submenu: string;
|
|
18
24
|
toggle: string;
|
|
19
25
|
};
|
|
26
|
+
/**
|
|
27
|
+
* Callback to expand the sidebar on touch devices when collapsed.
|
|
28
|
+
*/
|
|
29
|
+
onExpandSidebar?: () => void;
|
|
30
|
+
/**
|
|
31
|
+
* Callback to toggle the item's submenu expansion.
|
|
32
|
+
*/
|
|
33
|
+
onToggleExpand?: () => void;
|
|
20
34
|
}
|
|
21
35
|
/**
|
|
22
36
|
* SideNavGlobalItem UI component
|
|
23
37
|
*/
|
|
24
|
-
export declare const SideNavGlobalItem: ({ icon, isActive, isSidebarCollapsed, labels, linkContent, links, }: SideNavGlobalItemProps) => import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
export declare const SideNavGlobalItem: ({ icon, isActive, isExpanded, isSidebarCollapsed, labels, linkContent, links, onExpandSidebar, onToggleExpand, }: SideNavGlobalItemProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
import { NavMenuItem } from '../../../libs/types/navigation-types';
|
|
3
|
+
import '@components/Dropdown/dropdown.css';
|
|
4
|
+
import './nav-menu.css';
|
|
5
|
+
/**
|
|
6
|
+
* Prop types for SiteMenu
|
|
7
|
+
*/
|
|
8
|
+
interface SiteMenuProps extends ComponentPropsWithoutRef<'nav'> {
|
|
9
|
+
/**
|
|
10
|
+
* Aria label for `nav` element.
|
|
11
|
+
*/
|
|
12
|
+
ariaLabel: string;
|
|
13
|
+
/**
|
|
14
|
+
* Additional class names
|
|
15
|
+
*/
|
|
16
|
+
className?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Menu Items.
|
|
19
|
+
*/
|
|
20
|
+
menuItems?: NavMenuItem[];
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* SiteMenu UI component
|
|
24
|
+
*/
|
|
25
|
+
export declare const SiteMenu: ({ ariaLabel, className, menuItems, ...props }: SiteMenuProps) => import("react/jsx-runtime").JSX.Element;
|
|
26
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
import { NavMenuItem } from '../../../libs/types/navigation-types';
|
|
3
|
+
/**
|
|
4
|
+
* Prop types for SiteMenuDropdown
|
|
5
|
+
*/
|
|
6
|
+
interface SiteMenuDropdownProps extends ComponentPropsWithoutRef<'button'> {
|
|
7
|
+
/**
|
|
8
|
+
* Menu items. If omitted or empty, renders as a plain top-level link.
|
|
9
|
+
*/
|
|
10
|
+
items?: NavMenuItem[];
|
|
11
|
+
/**
|
|
12
|
+
* Menu label shown on the trigger button.
|
|
13
|
+
*/
|
|
14
|
+
label?: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* SiteMenuDropdown — a sub-menu for SiteMenu items that have child links.
|
|
18
|
+
* Desktop: Floating UI dropdown (opens on hover or click).
|
|
19
|
+
* Mobile: NavAccordion inline expansion.
|
|
20
|
+
* Both are always in the DOM; CSS driven by [data-pds-mobile] shows the right one.
|
|
21
|
+
*/
|
|
22
|
+
export declare const SiteMenuDropdown: ({ items, label }: SiteMenuDropdownProps) => import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
export {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ComponentPropsWithoutRef, ReactElement } from 'react';
|
|
2
|
+
import { NavigationItem } from '../../../libs/types/navigation-types';
|
|
3
|
+
import './tree-nav.css';
|
|
4
|
+
export type TreeNavItem = NavigationItem & {
|
|
5
|
+
/**
|
|
6
|
+
* A unique identifier for this item — typically its route or URL path (e.g. `/guides/overview`).
|
|
7
|
+
*
|
|
8
|
+
* Required on any item that has children (`links` array). The component uses this to
|
|
9
|
+
* re-find the item's DOM node after a re-render and restore its expanded/collapsed state.
|
|
10
|
+
* Without it, a user-opened nested submenu will collapse whenever the component re-renders.
|
|
11
|
+
*
|
|
12
|
+
* Leaf items (no `links`) do not need `path`.
|
|
13
|
+
*/
|
|
14
|
+
path?: string;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Prop types for TreeNav
|
|
18
|
+
*/
|
|
19
|
+
export interface TreeNavProps extends ComponentPropsWithoutRef<'nav'> {
|
|
20
|
+
/**
|
|
21
|
+
* Aria label for the navigation.
|
|
22
|
+
*/
|
|
23
|
+
ariaLabel: string;
|
|
24
|
+
/**
|
|
25
|
+
* Additional class names
|
|
26
|
+
*/
|
|
27
|
+
className?: string;
|
|
28
|
+
/**
|
|
29
|
+
* Heading text. If a link is passed, it will be rendered as a link.
|
|
30
|
+
*/
|
|
31
|
+
headingText?: string | ReactElement;
|
|
32
|
+
/**
|
|
33
|
+
* Labels for translatable strings.
|
|
34
|
+
*/
|
|
35
|
+
labels?: {
|
|
36
|
+
submenu: string;
|
|
37
|
+
toggle: string;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Menu items to render.
|
|
41
|
+
*/
|
|
42
|
+
menuItems: TreeNavItem[];
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* TreeNav UI component — a multi-level collapsible tree navigation for dense
|
|
46
|
+
* hierarchical content such as documentation sites.
|
|
47
|
+
*/
|
|
48
|
+
export declare const TreeNav: ({ ariaLabel, className, headingText, labels, menuItems, ...props }: TreeNavProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
2
|
import { PDSIcon } from '../../icons/Icon/Icon';
|
|
3
|
+
import { ThemeSwitcherProps } from '../../ThemeSwitcher/ThemeSwitcher';
|
|
3
4
|
import './user-menu.css';
|
|
4
5
|
/**
|
|
5
6
|
* Prop types for UserMenuItem
|
|
@@ -46,6 +47,24 @@ export interface UserMenuProps extends ComponentPropsWithoutRef<'span'> {
|
|
|
46
47
|
* Array of menu items.
|
|
47
48
|
*/
|
|
48
49
|
menuItems?: UserMenuItem[];
|
|
50
|
+
/**
|
|
51
|
+
* Callback fired when the theme changes. Provide together with `theme` to
|
|
52
|
+
* render the theme switcher row at the top of the menu.
|
|
53
|
+
*/
|
|
54
|
+
onThemeChange?: ThemeSwitcherProps['onChange'];
|
|
55
|
+
/**
|
|
56
|
+
* The currently active theme. Provide together with `onThemeChange` to
|
|
57
|
+
* render the theme switcher row at the top of the menu.
|
|
58
|
+
*/
|
|
59
|
+
theme?: ThemeSwitcherProps['theme'];
|
|
60
|
+
/**
|
|
61
|
+
* Label for the theme switcher row. Defaults to `'Theme'`.
|
|
62
|
+
*/
|
|
63
|
+
themeLabel?: string;
|
|
64
|
+
/**
|
|
65
|
+
* Translation strings for the theme switcher options.
|
|
66
|
+
*/
|
|
67
|
+
themeLabelStrings?: ThemeSwitcherProps['labelStrings'];
|
|
49
68
|
/**
|
|
50
69
|
* User email address.
|
|
51
70
|
*/
|
|
@@ -58,12 +77,8 @@ export interface UserMenuProps extends ComponentPropsWithoutRef<'span'> {
|
|
|
58
77
|
* User display name.
|
|
59
78
|
*/
|
|
60
79
|
userName?: string;
|
|
61
|
-
/**
|
|
62
|
-
* If true, the workspace selector will be styled and rendered to work with the mobile version of the navbar menu. Defaults to true.
|
|
63
|
-
*/
|
|
64
|
-
withinNavbar?: boolean;
|
|
65
80
|
}
|
|
66
81
|
/**
|
|
67
82
|
* UserMenu UI component
|
|
68
83
|
*/
|
|
69
|
-
export declare const UserMenu: ({ ariaLabel, className, menuItems, userEmail, userImageSrc, userName,
|
|
84
|
+
export declare const UserMenu: ({ ariaLabel, className, menuItems, onThemeChange, theme, themeLabel, themeLabelStrings, userEmail, userImageSrc, userName, ...props }: UserMenuProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,11 +1,6 @@
|
|
|
1
1
|
import { ComponentPropsWithoutRef, ReactElement, ReactNode } from 'react';
|
|
2
|
-
import
|
|
2
|
+
import '@components/Dropdown/dropdown.css';
|
|
3
3
|
import './workspace-selector.css';
|
|
4
|
-
declare const tierConfig: Record<string, {
|
|
5
|
-
color: BadgeColor;
|
|
6
|
-
label: string;
|
|
7
|
-
}>;
|
|
8
|
-
export type PlanTiers = keyof typeof tierConfig;
|
|
9
4
|
export type WorkspaceSelectorItem = {
|
|
10
5
|
/**
|
|
11
6
|
* Name of the workspace.
|
|
@@ -32,10 +27,6 @@ export type WorkspaceSelectorItem = {
|
|
|
32
27
|
* Only used when isRestricted is true.
|
|
33
28
|
*/
|
|
34
29
|
onRestrictedSelection?: () => void;
|
|
35
|
-
/**
|
|
36
|
-
* Account plan tier.
|
|
37
|
-
*/
|
|
38
|
-
planTier?: PlanTiers;
|
|
39
30
|
/**
|
|
40
31
|
* Visually-hidden label to indicate restricted access.
|
|
41
32
|
* @default 'Restricted'
|
|
@@ -86,10 +77,6 @@ export interface WorkspaceSelectorProps extends ComponentPropsWithoutRef<'span'>
|
|
|
86
77
|
* Text to display when no results are found.
|
|
87
78
|
*/
|
|
88
79
|
noResultsText?: string;
|
|
89
|
-
/**
|
|
90
|
-
* Is this component located in the top nav? Only applies when using the Navbar component from this toolkit. Defaults to true per design.
|
|
91
|
-
*/
|
|
92
|
-
withinNavbar?: boolean;
|
|
93
80
|
/**
|
|
94
81
|
* List of all workspaces for a user.
|
|
95
82
|
*/
|
|
@@ -98,5 +85,4 @@ export interface WorkspaceSelectorProps extends ComponentPropsWithoutRef<'span'>
|
|
|
98
85
|
/**
|
|
99
86
|
* WorkspaceSelector UI component
|
|
100
87
|
*/
|
|
101
|
-
export declare const WorkspaceSelector: ({ ariaLabel, className, createWorkspaceLink, filterLabel, filterPlaceholder, menuHeading, minFilterItems, noResultsText,
|
|
102
|
-
export {};
|
|
88
|
+
export declare const WorkspaceSelector: ({ ariaLabel, className, createWorkspaceLink, filterLabel, filterPlaceholder, menuHeading, minFilterItems, noResultsText, workspaceList, ...props }: WorkspaceSelectorProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -39,6 +39,18 @@ export declare const isActiveItem: (item: NavigationItem) => boolean;
|
|
|
39
39
|
* const inActiveTrail = isActiveTrail(parentItem); // True if parent or any child is active
|
|
40
40
|
*/
|
|
41
41
|
export declare const isActiveTrail: (item: NavigationItem) => boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Serializes the active state of an entire menu tree into a string signature.
|
|
44
|
+
* The signature changes on any route change — including navigation between two
|
|
45
|
+
* routes under the same top-level item — not just when a different top-level
|
|
46
|
+
* item enters the active trail. Used to reset user-driven expansion overrides
|
|
47
|
+
* so submenu expansion follows the active trail again after navigation.
|
|
48
|
+
* @param items - Array of navigation items to serialize
|
|
49
|
+
* @returns A string signature representing the tree's active state
|
|
50
|
+
* @example
|
|
51
|
+
* const signature = buildActiveSignature(menuItems);
|
|
52
|
+
*/
|
|
53
|
+
export declare const buildActiveSignature: (items: NavigationItem[]) => string;
|
|
42
54
|
/**
|
|
43
55
|
* Checks if the provided content is an interactive element (link, button, etc.)
|
|
44
56
|
* @param content - The React content to examine
|
|
@@ -18,6 +18,12 @@ declare const defaultTypeLabels: {
|
|
|
18
18
|
* Prop types for Toast
|
|
19
19
|
*/
|
|
20
20
|
interface ToastProps extends ComponentPropsWithoutRef<'div'> {
|
|
21
|
+
/**
|
|
22
|
+
* Duration in milliseconds before the toast auto-dismisses. When set, shows
|
|
23
|
+
* a progress bar and pause button. Populated automatically by useToast —
|
|
24
|
+
* consumers do not need to set this.
|
|
25
|
+
*/
|
|
26
|
+
autoCloseDuration?: number;
|
|
21
27
|
/**
|
|
22
28
|
* Toast message content.
|
|
23
29
|
*/
|
|
@@ -30,6 +36,11 @@ interface ToastProps extends ComponentPropsWithoutRef<'div'> {
|
|
|
30
36
|
* ID of individual toast.
|
|
31
37
|
*/
|
|
32
38
|
id?: string;
|
|
39
|
+
/**
|
|
40
|
+
* React-Toastify toast ID, used to control the pause/resume timer.
|
|
41
|
+
* Populated automatically by useToast — consumers do not need to set this.
|
|
42
|
+
*/
|
|
43
|
+
toastId?: string | number;
|
|
33
44
|
/**
|
|
34
45
|
* Type of toast to show.
|
|
35
46
|
*/
|
|
@@ -42,5 +53,5 @@ interface ToastProps extends ComponentPropsWithoutRef<'div'> {
|
|
|
42
53
|
/**
|
|
43
54
|
* Toast UI component
|
|
44
55
|
*/
|
|
45
|
-
export declare const Toast: ({ children, className, id, type, typeLabels, }: ToastProps) => import("react/jsx-runtime").JSX.Element;
|
|
56
|
+
export declare const Toast: ({ autoCloseDuration, children, className, id, toastId, type, typeLabels, }: ToastProps) => import("react/jsx-runtime").JSX.Element;
|
|
46
57
|
export {};
|
|
@@ -1,18 +1,27 @@
|
|
|
1
|
-
import { ComponentPropsWithoutRef } from 'react';
|
|
1
|
+
import React, { ComponentPropsWithoutRef } from 'react';
|
|
2
2
|
import 'react-toastify/dist/ReactToastify.css';
|
|
3
3
|
import './toaster.css';
|
|
4
|
+
export declare const MIN_AUTO_CLOSE_DURATION = 30000;
|
|
5
|
+
type PauseResumeLabels = {
|
|
6
|
+
pause: string;
|
|
7
|
+
resume: string;
|
|
8
|
+
};
|
|
9
|
+
export interface ToasterContextValue {
|
|
10
|
+
labelStrings: PauseResumeLabels;
|
|
11
|
+
}
|
|
12
|
+
export declare const ToasterContext: React.Context<ToasterContextValue>;
|
|
4
13
|
/**
|
|
5
|
-
* Prop types for
|
|
14
|
+
* Prop types for Toaster
|
|
6
15
|
*/
|
|
7
16
|
interface ToasterProps extends ComponentPropsWithoutRef<'div'> {
|
|
8
|
-
/**
|
|
9
|
-
* Duration in milliseconds before the toast will auto-close.
|
|
10
|
-
*/
|
|
11
|
-
autoCloseDuration?: number;
|
|
12
17
|
/**
|
|
13
18
|
* Additional class names
|
|
14
19
|
*/
|
|
15
20
|
className?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Label strings for the pause and resume buttons. Provide translation strings if needed.
|
|
23
|
+
*/
|
|
24
|
+
labelStrings?: PauseResumeLabels;
|
|
16
25
|
/**
|
|
17
26
|
* Maximum number of toasts that can be displayed at once.
|
|
18
27
|
*/
|
|
@@ -25,5 +34,5 @@ interface ToasterProps extends ComponentPropsWithoutRef<'div'> {
|
|
|
25
34
|
/**
|
|
26
35
|
* Toaster UI component
|
|
27
36
|
*/
|
|
28
|
-
export declare const Toaster: ({
|
|
37
|
+
export declare const Toaster: ({ className, labelStrings, limit, position, }: ToasterProps) => import("react/jsx-runtime").JSX.Element;
|
|
29
38
|
export {};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { ReactElement } from 'react';
|
|
2
2
|
import { cssTransition, toast as toastApi, ToastOptions } from 'react-toastify';
|
|
3
|
+
import { MIN_AUTO_CLOSE_DURATION } from './Toaster';
|
|
4
|
+
export { MIN_AUTO_CLOSE_DURATION };
|
|
3
5
|
export declare enum ToastType {
|
|
4
6
|
Critical = "critical",
|
|
5
7
|
Info = "info",
|