@pantheon-systems/pds-toolkit-react 1.0.0-dev.99 → 1.0.0-dev.9998
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_dist/components/Avatar/Avatar.d.ts +36 -0
- package/_dist/components/BranchDiff/BranchDiff.d.ts +43 -0
- package/_dist/components/CTALink/CTALink.d.ts +20 -0
- package/_dist/components/CTASlice/CTASlice.d.ts +43 -0
- package/_dist/components/Callout/Callout.d.ts +31 -0
- package/_dist/components/Callout/sample-callout-content.d.ts +2 -0
- package/_dist/components/CodeBlock/CodeBlock.d.ts +85 -0
- package/_dist/components/CodeBlock/code-examples.d.ts +6 -0
- package/_dist/components/CodeBlock/themes/index.d.ts +2 -0
- package/_dist/components/CodeBlock/themes/pdsDark.d.ts +2 -0
- package/_dist/components/CodeBlock/themes/pdsLight.d.ts +2 -0
- package/_dist/components/ComparisonList/ComparisonList.d.ts +42 -0
- package/_dist/components/DashboardStat/DashboardStat.d.ts +28 -0
- package/_dist/components/FileDiff/FileDiff.d.ts +35 -0
- package/_dist/components/FlowSteps/FlowSteps.d.ts +37 -0
- package/_dist/components/FlowSteps/example-steps.d.ts +15 -0
- package/_dist/components/LinkNewWindow/LinkNewWindow.d.ts +35 -0
- package/_dist/components/Modal/Modal.d.ts +54 -0
- package/_dist/components/Pagination/Pagination.d.ts +54 -0
- package/_dist/components/Pagination/usePagination.d.ts +7 -0
- package/_dist/components/PantheonLogo/PantheonLogo.d.ts +32 -0
- package/_dist/components/PantheonLogo/pantheon-logo-data.d.ts +4 -0
- package/_dist/components/Picture/Picture.d.ts +37 -0
- package/_dist/components/Popover/Popover.d.ts +66 -0
- package/_dist/components/PullQuote/PullQuote.d.ts +34 -0
- package/_dist/components/RefreshChecker/RefreshChecker.d.ts +54 -0
- package/_dist/components/SiteDashboardHeading/SiteDashboardHeading.d.ts +57 -0
- package/_dist/components/Skiplink/Skiplink.d.ts +21 -0
- package/_dist/components/SocialLinks/SocialLinks.d.ts +23 -0
- package/_dist/components/StatusIndicator/StatusIndicator.d.ts +24 -0
- package/_dist/components/Table/Table.d.ts +27 -0
- package/_dist/components/TableOfContents/TableOfContents.d.ts +45 -0
- package/_dist/components/Tabs/Tabs.d.ts +63 -0
- package/_dist/components/Tag/Tag.d.ts +39 -0
- package/_dist/components/ThemeSwitcher/ThemeSwitcher.d.ts +32 -0
- package/_dist/components/Tooltip/Tooltip.d.ts +51 -0
- package/_dist/components/VideoEmbed/VideoEmbed.d.ts +28 -0
- package/_dist/components/badges/IndicatorBadge/IndicatorBadge.d.ts +27 -0
- package/_dist/components/badges/StatusBadge/StatusBadge.d.ts +35 -0
- package/_dist/components/badges/Tally/Tally.d.ts +38 -0
- package/_dist/components/buttons/Button/Button.d.ts +66 -0
- package/_dist/components/buttons/ButtonLink/ButtonLink.d.ts +48 -0
- package/_dist/components/buttons/ClipboardButton/ClipboardButton.d.ts +31 -0
- package/_dist/components/buttons/CloseButton/CloseButton.d.ts +27 -0
- package/_dist/components/buttons/IconButton/IconButton.d.ts +50 -0
- package/_dist/components/buttons/MenuButton/MenuButton.d.ts +75 -0
- package/_dist/components/buttons/SegmentedButton/SegmentedButton.d.ts +63 -0
- package/_dist/components/buttons/SplitButton/SplitButton.d.ts +41 -0
- package/_dist/components/buttons/SplitButton/split-button-sample-data.d.ts +17 -0
- package/_dist/components/buttons/UtilityButton/UtilityButton.d.ts +56 -0
- package/_dist/components/cards/Card/Card.d.ts +29 -0
- package/_dist/components/cards/CardHeading/CardHeading.d.ts +32 -0
- package/_dist/components/cards/CardSelectGroup/CardSelectGroup.d.ts +60 -0
- package/_dist/components/cards/EmptyStateCard/EmptyStateCard.d.ts +36 -0
- package/_dist/components/cards/LinksCard/LinksCard.d.ts +29 -0
- package/_dist/components/cards/LinksCard/links-card-sample-data.d.ts +2 -0
- package/_dist/components/cards/NewSiteCard/NewSiteCard.d.ts +57 -0
- package/_dist/components/cards/PaymentCard/PaymentCard.d.ts +47 -0
- package/_dist/components/cards/PricingCard/PricingCard.d.ts +90 -0
- package/_dist/components/cards/SiteCard/SiteCard.d.ts +45 -0
- package/_dist/components/empty-states/CompactEmptyState/CompactEmptyState.d.ts +37 -0
- package/_dist/components/empty-states/HorizontalEmptyState/HorizontalEmptyState.d.ts +69 -0
- package/_dist/components/empty-states/VerticalEmptyState/VerticalEmptyState.d.ts +47 -0
- package/_dist/components/footer/FooterHeading/FooterHeading.d.ts +22 -0
- package/_dist/components/footer/FooterLinks/FooterLinks.d.ts +26 -0
- package/_dist/components/footer/SiteFooter/SiteFooter.d.ts +30 -0
- package/_dist/components/footer/SiteFooter/footer-content.d.ts +2 -0
- package/_dist/components/icons/Icon/Icon.d.ts +732 -0
- package/_dist/components/icons/PaymentIcon/PaymentIcon.d.ts +21 -0
- package/_dist/components/icons/PaymentIcon/svgData.d.ts +8 -0
- package/_dist/components/icons/PlatformIcon/PlatformIcon.d.ts +12 -0
- package/_dist/components/inputs/Checkbox/Checkbox.d.ts +96 -0
- package/_dist/components/inputs/CheckboxFieldset/CheckboxFieldset.d.ts +64 -0
- package/_dist/components/inputs/CheckboxGroup/CheckboxGroup.d.ts +80 -0
- package/_dist/components/inputs/Combobox/Combobox.d.ts +138 -0
- package/_dist/components/inputs/ComboboxMultiselect/ComboboxMultiselect.d.ts +83 -0
- package/_dist/components/inputs/FileUpload/FileUpload.d.ts +93 -0
- package/_dist/components/inputs/InputGroup/InputGroup.d.ts +19 -0
- package/_dist/components/inputs/RadioGroup/RadioGroup.d.ts +104 -0
- package/_dist/components/inputs/Select/Select.d.ts +122 -0
- package/_dist/components/inputs/Switch/Switch.d.ts +74 -0
- package/_dist/components/inputs/TextInput/TextInput.d.ts +139 -0
- package/_dist/components/inputs/Textarea/Textarea.d.ts +110 -0
- package/_dist/components/inputs/input-types.d.ts +1 -0
- package/_dist/components/inputs/input-utilities.d.ts +96 -0
- package/_dist/components/loading-indicators/Skeleton/Skeleton.d.ts +62 -0
- package/_dist/components/loading-indicators/Spinner/Spinner.d.ts +32 -0
- package/_dist/components/navigation/Breadcrumb/Breadcrumb.d.ts +23 -0
- package/_dist/components/navigation/ButtonNav/ButtonNav.d.ts +29 -0
- package/_dist/components/navigation/DashboardNav/DashboardNav.d.ts +35 -0
- package/_dist/components/navigation/DashboardNav/DashboardNavItem.d.ts +25 -0
- package/_dist/components/navigation/DashboardSearch/DashboardSearch.d.ts +70 -0
- package/_dist/components/navigation/DashboardSearch/SiteOptionDisplay.d.ts +39 -0
- package/_dist/components/navigation/DropdownMenu/DropdownMenu.d.ts +28 -0
- package/_dist/components/navigation/NavMenu/NavMenu.d.ts +43 -0
- package/_dist/components/navigation/NavMenu/NavMenuDropdown.d.ts +24 -0
- package/_dist/components/navigation/Navbar/Navbar.d.ts +60 -0
- package/_dist/components/navigation/SideNav/SideNav.d.ts +39 -0
- package/_dist/components/navigation/SideNavCompact/SideNavCompact.d.ts +53 -0
- package/_dist/components/navigation/SideNavGlobal/SideNavGlobal.d.ts +50 -0
- package/_dist/components/navigation/SideNavGlobal/SideNavGlobalItem.d.ts +25 -0
- package/_dist/components/navigation/TabMenu/TabMenu.d.ts +43 -0
- package/_dist/components/navigation/TabMenu/TabMenuDropdown.d.ts +33 -0
- package/_dist/components/navigation/UserMenu/UserMenu.d.ts +69 -0
- package/_dist/components/navigation/WorkspaceSelector/WorkspaceSelector.d.ts +89 -0
- package/_dist/components/navigation/navigation-types.d.ts +29 -0
- package/_dist/components/navigation/navigation-utilities.d.ts +90 -0
- package/_dist/components/notifications/Banner/Banner.d.ts +47 -0
- package/_dist/components/notifications/InlineMessage/InlineMessage.d.ts +37 -0
- package/_dist/components/notifications/SectionMessage/SectionMessage.d.ts +53 -0
- package/_dist/components/notifications/Toaster/Toast.d.ts +46 -0
- package/_dist/components/notifications/Toaster/Toaster.d.ts +29 -0
- package/_dist/components/notifications/Toaster/useToast.d.ts +10 -0
- package/_dist/components/panels/ExpansionPanel/ExpansionPanel.d.ts +32 -0
- package/_dist/components/panels/ExpansionPanelGroup/ExpansionPanelGroup.d.ts +24 -0
- package/_dist/components/panels/Panel/Panel.d.ts +35 -0
- package/_dist/components/panels/PanelList/PanelList.d.ts +28 -0
- package/_dist/components/panels/PanelList/PanelRow.d.ts +27 -0
- package/_dist/components/progress-indicators/ProgressBar/ProgressBar.d.ts +53 -0
- package/_dist/components/progress-indicators/ProgressRing/ProgressRing.d.ts +41 -0
- package/_dist/components/steppers/Stepper/Stepper.d.ts +54 -0
- package/_dist/components/steppers/VerticalStepper/VerticalStep.d.ts +52 -0
- package/_dist/components/steppers/VerticalStepper/VerticalStepper.d.ts +28 -0
- package/_dist/components/steppers/VerticalStepper/vertical-stepper-sample-data.d.ts +27 -0
- package/_dist/components/tiles/AvatarTileList/AvatarTileList.d.ts +28 -0
- package/_dist/components/tiles/Tile/Tile.d.ts +42 -0
- package/_dist/components/tiles/TileGrid/TileGrid.d.ts +29 -0
- package/_dist/css/component-css/pds-avatar-tile-list.css +1 -1
- package/_dist/css/component-css/pds-avatar.css +1 -1
- package/_dist/css/component-css/pds-banner.css +1 -1
- package/_dist/css/component-css/pds-branch-diff.css +1 -0
- package/_dist/css/component-css/pds-breadcrumb.css +1 -0
- package/_dist/css/component-css/pds-button-link.css +1 -1
- package/_dist/css/component-css/pds-button-nav.css +1 -0
- package/_dist/css/component-css/pds-button.css +33 -69
- package/_dist/css/component-css/pds-callout.css +1 -1
- package/_dist/css/component-css/pds-card-heading.css +1 -0
- package/_dist/css/component-css/pds-card-select-group.css +1 -1
- package/_dist/css/component-css/pds-card.css +1 -1
- 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-clipboard-button.css +0 -0
- package/_dist/css/component-css/pds-close-button.css +1 -0
- package/_dist/css/component-css/pds-code-block-legacy.css +1 -0
- package/_dist/css/component-css/pds-code-block.css +1 -0
- package/_dist/css/component-css/pds-combobox-multiselect.css +2 -0
- package/_dist/css/component-css/pds-combobox.css +1 -0
- package/_dist/css/component-css/pds-compact-empty-state.css +1 -0
- 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-cta-slice.css +1 -1
- package/_dist/css/component-css/pds-dashboard-nav.css +5 -0
- package/_dist/css/component-css/pds-dashboard-search.css +1 -0
- package/_dist/css/component-css/pds-dashboard-stat.css +1 -0
- package/_dist/css/component-css/pds-dropdown-menu.css +2 -0
- package/_dist/css/component-css/pds-empty-state-card.css +1 -0
- package/_dist/css/component-css/pds-expansion-panel-group.css +1 -1
- package/_dist/css/component-css/pds-expansion-panel.css +1 -1
- package/_dist/css/component-css/pds-file-diff.css +1 -0
- package/_dist/css/component-css/pds-file-upload.css +7 -0
- package/_dist/css/component-css/pds-flow-steps.css +1 -0
- package/_dist/css/component-css/pds-footer-heading.css +1 -1
- package/_dist/css/component-css/pds-footer-links.css +1 -1
- package/_dist/css/component-css/pds-horizontal-empty-state.css +1 -0
- package/_dist/css/component-css/pds-icon-button.css +13 -5
- package/_dist/css/component-css/pds-icon-story-only.css +1 -1
- package/_dist/css/component-css/pds-index.css +83 -118
- package/_dist/css/component-css/pds-indicator-badge.css +15 -21
- package/_dist/css/component-css/pds-inline-message.css +1 -0
- package/_dist/css/component-css/pds-input-group.css +1 -1
- package/_dist/css/component-css/pds-input-utilities.css +1 -0
- package/_dist/css/component-css/pds-link-new-window.css +1 -0
- package/_dist/css/component-css/pds-links-card.css +1 -1
- package/_dist/css/component-css/pds-menu-button.css +2 -2
- package/_dist/css/component-css/pds-modal.css +1 -1
- package/_dist/css/component-css/pds-nav-menu.css +5 -1
- package/_dist/css/component-css/pds-navbar.css +1 -5
- package/_dist/css/component-css/pds-new-site-card.css +1 -1
- package/_dist/css/component-css/pds-pagination.css +1 -0
- package/_dist/css/component-css/pds-panel-list.css +1 -0
- package/_dist/css/component-css/pds-panel.css +1 -1
- package/_dist/css/component-css/pds-pantheon-logo.css +1 -1
- package/_dist/css/component-css/pds-payment-card.css +1 -0
- package/_dist/css/component-css/pds-payment-icon.css +1 -0
- package/_dist/css/component-css/pds-picture.css +1 -0
- package/_dist/css/component-css/pds-popover.css +1 -1
- package/_dist/css/component-css/pds-pricing-card.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-pull-quote.css +1 -1
- package/_dist/css/component-css/pds-radio-group.css +1 -1
- package/_dist/css/component-css/pds-refresh-checker.css +1 -0
- package/_dist/css/component-css/pds-section-message.css +1 -1
- package/_dist/css/component-css/pds-segmented-button.css +1 -0
- package/_dist/css/component-css/pds-select.css +1 -4
- package/_dist/css/component-css/pds-side-nav-compact.css +1 -0
- package/_dist/css/component-css/pds-side-nav-global.css +5 -0
- package/_dist/css/component-css/pds-side-nav.css +2 -1
- package/_dist/css/component-css/pds-site-card.css +1 -1
- package/_dist/css/component-css/pds-site-dashboard-heading.css +1 -0
- package/_dist/css/component-css/pds-site-footer.css +1 -1
- package/_dist/css/component-css/pds-skeleton.css +1 -0
- package/_dist/css/component-css/pds-skiplink.css +1 -0
- package/_dist/css/component-css/pds-social-links.css +1 -1
- 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-status-badge.css +1 -9
- package/_dist/css/component-css/pds-status-indicator.css +1 -1
- package/_dist/css/component-css/pds-stepper.css +1 -1
- package/_dist/css/component-css/pds-switch.css +1 -0
- package/_dist/css/component-css/pds-tab-menu.css +2 -0
- package/_dist/css/component-css/pds-table-of-contents.css +1 -1
- package/_dist/css/component-css/pds-table.css +1 -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-tally.css +1 -0
- package/_dist/css/component-css/pds-text-input.css +1 -0
- package/_dist/css/component-css/pds-textarea.css +1 -1
- package/_dist/css/component-css/pds-theme-switcher.css +1 -0
- package/_dist/css/component-css/pds-tile.css +1 -1
- package/_dist/css/component-css/pds-tiles-common.css +1 -1
- 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-user-menu-story-only.css +1 -0
- package/_dist/css/component-css/pds-user-menu.css +1 -0
- package/_dist/css/component-css/pds-utility-button.css +1 -0
- package/_dist/css/component-css/pds-vertical-empty-state.css +1 -0
- package/_dist/css/component-css/pds-vertical-stepper.css +1 -0
- package/_dist/css/component-css/pds-video-embed.css +1 -0
- package/_dist/css/component-css/pds-workspace-selector.css +1 -1
- package/_dist/css/design-tokens/pds-design-tokens-dark-mode.css +219 -0
- package/_dist/css/design-tokens/pds-design-tokens-light-mode.css +328 -0
- package/_dist/css/design-tokens/pds-design-tokens.css +130 -0
- package/_dist/css/pds-components.css +83 -118
- package/_dist/css/pds-core.css +4 -4
- package/_dist/css/pds-layouts.css +9 -1
- package/_dist/index.css +1 -0
- package/_dist/index.d.ts +124 -0
- package/_dist/index.js +12518 -0
- package/_dist/index.js.map +1 -0
- package/_dist/layouts/AppLayout/AppLayout.d.ts +73 -0
- package/_dist/layouts/Container/Container.d.ts +25 -0
- package/_dist/layouts/DashboardGlobal/DashboardGlobal.d.ts +57 -0
- package/_dist/layouts/DashboardInner/DashboardInner.d.ts +29 -0
- package/_dist/layouts/DocsLayout/DocsLayout.d.ts +30 -0
- package/_dist/layouts/FlexContainer/FlexContainer.d.ts +72 -0
- package/_dist/layouts/GlobalWrapper/GlobalWrapper.d.ts +19 -0
- package/_dist/layouts/SidebarLayout/SidebarLayout.d.ts +36 -0
- package/_dist/layouts/StepperLayout/StepperLayout.d.ts +20 -0
- package/_dist/layouts/ThreeItemLayout/ThreeItemLayout.d.ts +30 -0
- package/_dist/layouts/TwoItemLayout/TwoItemLayout.d.ts +34 -0
- package/_dist/layouts/layout-types.d.ts +2 -0
- package/_dist/libs/components/sb-docs-toc-layout.d.ts +4 -0
- package/_dist/libs/components/utility-components.d.ts +15 -0
- package/_dist/libs/components/utils.d.ts +7 -0
- package/_dist/libs/types/custom-types.d.ts +107 -0
- package/_dist/mocks/data/navigation-items.d.ts +367 -0
- package/_dist/mocks/data/pagination-items.d.ts +16 -0
- package/_dist/mocks/markup/dashboard-main-content.d.ts +10 -0
- package/_dist/mocks/markup/dashboard-navigation.d.ts +11 -0
- package/_dist/mocks/markup/inputs.d.ts +2 -0
- package/_dist/mocks/markup/modal.d.ts +2 -0
- package/_dist/mocks/markup/panel-row-content.d.ts +16 -0
- package/_dist/utilities/color/color-preview-swatches.d.ts +13 -0
- package/_dist/utilities/context-providers/ResponsiveContext/ResponsiveContext.d.ts +6 -0
- package/_dist/utilities/hooks/useClipboard.d.ts +6 -0
- package/_dist/utilities/hooks/useKeyPress.d.ts +1 -0
- package/_dist/utilities/hooks/useWindowWidth.d.ts +1 -0
- package/_dist/vars/animation.d.ts +5 -0
- package/_dist/vars/spacing.d.ts +36 -0
- package/_dist/vars/type-scale.d.ts +28 -0
- package/_dist/vars/z-index.d.ts +16 -0
- package/package.json +83 -44
- package/_dist/cjs/index.js +0 -93
- package/_dist/cjs/index.js.map +0 -1
- package/_dist/css/component-css/pds-animated-button.css +0 -7
- package/_dist/css/component-css/pds-breadcrumbs.css +0 -1
- package/_dist/css/component-css/pds-heading.css +0 -1
- package/_dist/css/component-css/pds-inputs-common.css +0 -1
- package/_dist/css/component-css/pds-pager.css +0 -1
- package/_dist/css/component-css/pds-stats-tile-list.css +0 -1
- package/_dist/css/component-css/pds-toast.css +0 -1
- package/_dist/css/component-css/pds-toggle-button.css +0 -1
- package/_dist/css/component-css/pds-toggle-switch.css +0 -3
- package/_dist/esm/index.js +0 -93
- package/_dist/esm/index.js.map +0 -1
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
import { PDSIcon } from '@components/icons/Icon/Icon';
|
|
3
|
+
import { TabMenuDropdownProps } from './TabMenuDropdown';
|
|
4
|
+
import { NavigationItem } from '@components/navigation/navigation-types';
|
|
5
|
+
import './tab-menu.css';
|
|
6
|
+
type DropdownSettings = Omit<TabMenuDropdownProps, 'links'>;
|
|
7
|
+
export type TabMenuItemProps = NavigationItem & {
|
|
8
|
+
/**
|
|
9
|
+
* Settings for dropdown menu. Leave null if no dropdown is needed.
|
|
10
|
+
*/
|
|
11
|
+
dropdownSettings?: DropdownSettings;
|
|
12
|
+
/**
|
|
13
|
+
* Icon to display next to the link content.
|
|
14
|
+
*/
|
|
15
|
+
icon?: PDSIcon;
|
|
16
|
+
/**
|
|
17
|
+
* Promote active child link to the top level.
|
|
18
|
+
* If true, the top-level menu will display the active child link instead of the parent link. If using this approach, it is recommended to also include the parent link as the first child link.
|
|
19
|
+
*/
|
|
20
|
+
promoteActiveChildLink?: boolean;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Prop types for TabMenu.
|
|
24
|
+
*/
|
|
25
|
+
export interface TabMenuProps extends ComponentPropsWithoutRef<'nav'> {
|
|
26
|
+
/**
|
|
27
|
+
* Aria label for the navigation.
|
|
28
|
+
*/
|
|
29
|
+
ariaLabel: string;
|
|
30
|
+
/**
|
|
31
|
+
* Menu items to render.
|
|
32
|
+
*/
|
|
33
|
+
menuItems?: TabMenuItemProps[];
|
|
34
|
+
/**
|
|
35
|
+
* Additional class names
|
|
36
|
+
*/
|
|
37
|
+
className?: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* TabMenu UI component.
|
|
41
|
+
*/
|
|
42
|
+
export declare const TabMenu: ({ ariaLabel, menuItems, className, ...props }: TabMenuProps) => React.JSX.Element;
|
|
43
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { NavigationItem } from '@components/navigation/navigation-types';
|
|
3
|
+
import './tab-menu.css';
|
|
4
|
+
export type TabMenuDropdownProps = {
|
|
5
|
+
/**
|
|
6
|
+
* Button label for the dropdown trigger.
|
|
7
|
+
*/
|
|
8
|
+
buttonLabel?: string;
|
|
9
|
+
/**
|
|
10
|
+
* Label for the dropdown filter. Leave null if no filter is needed.
|
|
11
|
+
*/
|
|
12
|
+
filterLabel?: string;
|
|
13
|
+
/**
|
|
14
|
+
* Placeholder for the dropdown filter.
|
|
15
|
+
*/
|
|
16
|
+
filterPlaceholder?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Links to display in the dropdown.
|
|
19
|
+
*/
|
|
20
|
+
links?: NavigationItem[];
|
|
21
|
+
/**
|
|
22
|
+
* Minimum number of items to enable filtering.
|
|
23
|
+
*/
|
|
24
|
+
minFilterItems?: number;
|
|
25
|
+
/**
|
|
26
|
+
* Text to display when no results are found.
|
|
27
|
+
*/
|
|
28
|
+
noResultsText?: string;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* TabMenuDropdown UI component
|
|
32
|
+
*/
|
|
33
|
+
export declare const TabMenuDropdown: ({ buttonLabel, filterLabel, filterPlaceholder, links, minFilterItems, noResultsText, }: TabMenuDropdownProps) => React.JSX.Element;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
|
+
import { PDSIcon } from '@components/icons/Icon/Icon';
|
|
3
|
+
import './user-menu.css';
|
|
4
|
+
/**
|
|
5
|
+
* Prop types for UserMenuItem
|
|
6
|
+
*/
|
|
7
|
+
export type UserMenuItem = {
|
|
8
|
+
/**
|
|
9
|
+
* Use if the menu item should perform an action. This should be a function to be called when the menu item is clicked. Do not use if `linkContent` is provided.
|
|
10
|
+
*/
|
|
11
|
+
callback?: () => void;
|
|
12
|
+
/**
|
|
13
|
+
* Is the menu item disabled?
|
|
14
|
+
*/
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Icon name for the menu item.
|
|
18
|
+
*/
|
|
19
|
+
iconName?: PDSIcon;
|
|
20
|
+
/**
|
|
21
|
+
* Unique ID for the menu item. Optional.
|
|
22
|
+
*/
|
|
23
|
+
id?: string;
|
|
24
|
+
/**
|
|
25
|
+
* The text to be displayed as the menu item label if a `callback` is provided.
|
|
26
|
+
*/
|
|
27
|
+
label?: string;
|
|
28
|
+
/**
|
|
29
|
+
* Use if the menu item should navigate to another location. This should be a fully-formed link using the router of your choice. Should be used in place of `callback` and `label`.
|
|
30
|
+
*/
|
|
31
|
+
linkContent?: ReactNode;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Prop types for UserMenu
|
|
35
|
+
*/
|
|
36
|
+
export interface UserMenuProps extends ComponentPropsWithoutRef<'span'> {
|
|
37
|
+
/**
|
|
38
|
+
* Aria label for the user menu.
|
|
39
|
+
*/
|
|
40
|
+
ariaLabel?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Array of menu items.
|
|
43
|
+
*/
|
|
44
|
+
menuItems?: UserMenuItem[];
|
|
45
|
+
/**
|
|
46
|
+
* User email address.
|
|
47
|
+
*/
|
|
48
|
+
userEmail?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Image source for the user avatar.
|
|
51
|
+
*/
|
|
52
|
+
userImageSrc?: string;
|
|
53
|
+
/**
|
|
54
|
+
* User display name.
|
|
55
|
+
*/
|
|
56
|
+
userName?: string;
|
|
57
|
+
/**
|
|
58
|
+
* If true, the workspace selector will be styled and rendered to work with the mobile version of the navbar menu. Defaults to true.
|
|
59
|
+
*/
|
|
60
|
+
withinNavbar?: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Additional class names.
|
|
63
|
+
*/
|
|
64
|
+
className?: string;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* UserMenu UI component
|
|
68
|
+
*/
|
|
69
|
+
export declare const UserMenu: ({ ariaLabel, menuItems, userEmail, userImageSrc, userName, withinNavbar, className, ...props }: UserMenuProps) => React.JSX.Element;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef, ReactElement, ReactNode } from 'react';
|
|
2
|
+
import './workspace-selector.css';
|
|
3
|
+
declare const tierLabels: {
|
|
4
|
+
silver: string;
|
|
5
|
+
gold: string;
|
|
6
|
+
platinum: string;
|
|
7
|
+
diamond: string;
|
|
8
|
+
};
|
|
9
|
+
export type PlanTiers = keyof typeof tierLabels;
|
|
10
|
+
export type WorkspaceSelectorItem = {
|
|
11
|
+
/**
|
|
12
|
+
* Name of the workspace.
|
|
13
|
+
*/
|
|
14
|
+
displayName?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Image src for the workspace.
|
|
17
|
+
*/
|
|
18
|
+
imageSrc?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Is this the currently selected workspace?
|
|
21
|
+
*/
|
|
22
|
+
isActive?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* This user does not have access to this workspace.
|
|
25
|
+
*/
|
|
26
|
+
isUnprivileged?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Account plan tier.
|
|
29
|
+
*/
|
|
30
|
+
planTier?: PlanTiers;
|
|
31
|
+
/**
|
|
32
|
+
* Id of the workspace.
|
|
33
|
+
*/
|
|
34
|
+
workspaceId?: string;
|
|
35
|
+
/**
|
|
36
|
+
* Link to the workspace. A link element via the router of your choice.
|
|
37
|
+
*/
|
|
38
|
+
workspaceLink?: ReactElement;
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Prop types for WorkspaceSelector
|
|
42
|
+
*/
|
|
43
|
+
export interface WorkspaceSelectorProps extends ComponentPropsWithoutRef<'span'> {
|
|
44
|
+
/**
|
|
45
|
+
* Aria label for the workspace selector menu.
|
|
46
|
+
*/
|
|
47
|
+
ariaLabel?: string;
|
|
48
|
+
/**
|
|
49
|
+
* Link to create a new workspace. A link element using the router of your choice.
|
|
50
|
+
*/
|
|
51
|
+
createWorkspaceLink?: ReactNode;
|
|
52
|
+
/**
|
|
53
|
+
* Placeholder text for the filter input.
|
|
54
|
+
*/
|
|
55
|
+
filterPlaceholder?: string;
|
|
56
|
+
/**
|
|
57
|
+
* Label for the filter input.
|
|
58
|
+
*/
|
|
59
|
+
filterLabel?: string;
|
|
60
|
+
/**
|
|
61
|
+
* Heading for the workspace dropdown menu.
|
|
62
|
+
*/
|
|
63
|
+
menuHeading?: string;
|
|
64
|
+
/**
|
|
65
|
+
* Minimum number of items to enable filtering.
|
|
66
|
+
*/
|
|
67
|
+
minFilterItems?: number;
|
|
68
|
+
/**
|
|
69
|
+
* Text to display when no results are found.
|
|
70
|
+
*/
|
|
71
|
+
noResultsText?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Is this component located in the top nav? Only applies when using the Navbar component from this toolkit. Defaults to true per design.
|
|
74
|
+
*/
|
|
75
|
+
withinNavbar?: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* List of all workspaces for a user.
|
|
78
|
+
*/
|
|
79
|
+
workspaceList?: WorkspaceSelectorItem[];
|
|
80
|
+
/**
|
|
81
|
+
* Additional class names.
|
|
82
|
+
*/
|
|
83
|
+
className?: string;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* WorkspaceSelector UI component
|
|
87
|
+
*/
|
|
88
|
+
export declare const WorkspaceSelector: ({ ariaLabel, createWorkspaceLink, filterPlaceholder, filterLabel, menuHeading, minFilterItems, noResultsText, withinNavbar, workspaceList, className, ...props }: WorkspaceSelectorProps) => React.JSX.Element;
|
|
89
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
2
|
+
export type NavigationItem = {
|
|
3
|
+
/**
|
|
4
|
+
* A boolean indicating whether the item is the active item.
|
|
5
|
+
*/
|
|
6
|
+
isActive?: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* Link content — a fully-formed link element using the router of your choice. If a string is provided instead, the item will be rendered as a link that navigates to the first child item.
|
|
9
|
+
*/
|
|
10
|
+
linkContent: ReactElement | string;
|
|
11
|
+
/**
|
|
12
|
+
* Submenu items.
|
|
13
|
+
*/
|
|
14
|
+
links?: NavigationItem[];
|
|
15
|
+
};
|
|
16
|
+
export type FlattenedNavigationItem = {
|
|
17
|
+
/**
|
|
18
|
+
* A boolean indicating whether the item is the active item.
|
|
19
|
+
*/
|
|
20
|
+
isActive?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Link content — a fully-formed link element using the router of your choice.
|
|
23
|
+
*/
|
|
24
|
+
linkContent: ReactElement;
|
|
25
|
+
/**
|
|
26
|
+
* Nesting level of the item.
|
|
27
|
+
*/
|
|
28
|
+
level: 'top-level' | 'second-level' | 'third-level' | 'fourth-level';
|
|
29
|
+
};
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import React, { ReactElement, ReactNode } from 'react';
|
|
2
|
+
import { PDSIcon } from '@components/icons/Icon/Icon';
|
|
3
|
+
import { NavigationItem } from '@components/navigation/navigation-types';
|
|
4
|
+
/**
|
|
5
|
+
* Recursively searches through navigation items to find the first active link
|
|
6
|
+
* @param items - Array of navigation items to search through
|
|
7
|
+
* @returns The active link element, or null if no active link is found or if the active item is a string
|
|
8
|
+
* @example
|
|
9
|
+
* const activeLink = getActiveLink(menuItems);
|
|
10
|
+
*/
|
|
11
|
+
export declare const getActiveLink: (items: NavigationItem[]) => ReactElement | null;
|
|
12
|
+
/**
|
|
13
|
+
* Extracts a string representation from linkContent, whether it's a string or React element
|
|
14
|
+
* @param linkContent - The link content to extract string from (string or React element)
|
|
15
|
+
* @returns String representation of the link content
|
|
16
|
+
* @example
|
|
17
|
+
* const linkText = getLinkContentString(<Link>Home</Link>); // Returns "Home"
|
|
18
|
+
* const linkText = getLinkContentString("About"); // Returns "About"
|
|
19
|
+
*/
|
|
20
|
+
export declare const getLinkContentString: (linkContent: ReactElement | string) => string;
|
|
21
|
+
/**
|
|
22
|
+
* Determines if a navigation item is currently active
|
|
23
|
+
* @param item - The navigation item to check
|
|
24
|
+
* @returns True if the item is active, false otherwise
|
|
25
|
+
* @description Checks for active state via:
|
|
26
|
+
* - The `isActive` property on the item
|
|
27
|
+
* - The presence of 'pds-isActive' class on the link element
|
|
28
|
+
* - Returns false for string-based items
|
|
29
|
+
* @example
|
|
30
|
+
* const isActive = isActiveItem(navigationItem);
|
|
31
|
+
*/
|
|
32
|
+
export declare const isActiveItem: (item: NavigationItem) => boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Determines if a navigation item or any of its children are in the active trail
|
|
35
|
+
* @param item - The navigation item to check (including its children)
|
|
36
|
+
* @returns True if the item or any child is active, false otherwise
|
|
37
|
+
* @description Recursively checks the item and all child items for active state
|
|
38
|
+
* @example
|
|
39
|
+
* const inActiveTrail = isActiveTrail(parentItem); // True if parent or any child is active
|
|
40
|
+
*/
|
|
41
|
+
export declare const isActiveTrail: (item: NavigationItem) => boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Checks if the provided content is an interactive element (link, button, etc.)
|
|
44
|
+
* @param content - The React content to examine
|
|
45
|
+
* @returns True if the content is an interactive element, false otherwise
|
|
46
|
+
* @description Currently detects:
|
|
47
|
+
* - Native anchor elements (`<a>`)
|
|
48
|
+
* - React Router Link components (by displayName)
|
|
49
|
+
* @example
|
|
50
|
+
* const isInteractive = isInteractiveElement(<Link to="/home">Home</Link>); // true
|
|
51
|
+
* const isInteractive = isInteractiveElement(<span>Label</span>); // false
|
|
52
|
+
* const isInteractive = isInteractiveElement("Plain text"); // false
|
|
53
|
+
*/
|
|
54
|
+
export declare const isInteractiveElement: (content: ReactNode) => boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Processes navigation link content based on its type and available child links
|
|
57
|
+
* @param linkContent - The link content to process (string or React element)
|
|
58
|
+
* @param links - Optional array of child navigation items
|
|
59
|
+
* @returns Processed link content
|
|
60
|
+
* @description
|
|
61
|
+
* - If linkContent is a string and child links exist, clones the first child link with the string as label
|
|
62
|
+
* - Otherwise returns the linkContent as-is
|
|
63
|
+
* @example
|
|
64
|
+
* // With string and child links - uses first child as template
|
|
65
|
+
* const processed = processNavLinkContent("Home", [{ linkContent: <Link to="/home" /> }]);
|
|
66
|
+
*
|
|
67
|
+
* // With React element - returns as-is
|
|
68
|
+
* const processed = processNavLinkContent(<Link to="/about">About</Link>);
|
|
69
|
+
*/
|
|
70
|
+
export declare const processNavLinkContent: (linkContent: ReactElement | string, links?: NavigationItem[]) => ReactElement | string;
|
|
71
|
+
/**
|
|
72
|
+
* Processes side navigation global items with optional icons and specialized markup structure
|
|
73
|
+
* @param baseClass - Base CSS class for styling
|
|
74
|
+
* @param linkContent - The link content to process (string or React element)
|
|
75
|
+
* @param links - Optional array of child navigation items
|
|
76
|
+
* @param icon - Optional PDS icon to include
|
|
77
|
+
* @returns Processed navigation item with icon and proper markup structure, or null
|
|
78
|
+
* @description
|
|
79
|
+
* Creates a structured navigation item with:
|
|
80
|
+
* - Icon support with proper CSS classes
|
|
81
|
+
* - Consistent markup structure for global navigation
|
|
82
|
+
* - Template behavior for string content with child links
|
|
83
|
+
* @example
|
|
84
|
+
* // String with icon and child links
|
|
85
|
+
* const item = processSideNavGlobalLinkContent('nav', 'Home', childLinks, 'home');
|
|
86
|
+
*
|
|
87
|
+
* // React element with icon
|
|
88
|
+
* const item = processSideNavGlobalLinkContent('nav', <Link to="/about">About</Link>, null, 'info');
|
|
89
|
+
*/
|
|
90
|
+
export declare const processSideNavGlobalLinkContent: (baseClass: string, linkContent: ReactElement | string, links?: NavigationItem[], icon?: PDSIcon) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
import './banner.css';
|
|
3
|
+
type Banner = {
|
|
4
|
+
id: string;
|
|
5
|
+
isDismissible?: boolean;
|
|
6
|
+
message: string | React.ReactNode;
|
|
7
|
+
onDismiss?: () => void;
|
|
8
|
+
type?: 'info' | 'warning' | 'critical';
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Prop types for Banner
|
|
12
|
+
*/
|
|
13
|
+
export interface BannerProps extends ComponentPropsWithoutRef<'div'> {
|
|
14
|
+
/**
|
|
15
|
+
* Array of banner objects
|
|
16
|
+
*/
|
|
17
|
+
banners: Banner[];
|
|
18
|
+
/**
|
|
19
|
+
* Label for the dismiss button
|
|
20
|
+
*/
|
|
21
|
+
dismissLabel?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Label for the next message button
|
|
24
|
+
*/
|
|
25
|
+
labelNext?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Label for the previous message button
|
|
28
|
+
*/
|
|
29
|
+
labelPrevious?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Type labels
|
|
32
|
+
*/
|
|
33
|
+
typeLabels?: {
|
|
34
|
+
info: string;
|
|
35
|
+
warning: string;
|
|
36
|
+
critical: string;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Additional class names
|
|
40
|
+
*/
|
|
41
|
+
className?: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Banner UI component
|
|
45
|
+
*/
|
|
46
|
+
export declare const Banner: ({ banners, dismissLabel, labelNext, labelPrevious, typeLabels, className, ...props }: BannerProps) => React.JSX.Element;
|
|
47
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
|
+
import './inline-message.css';
|
|
3
|
+
/**
|
|
4
|
+
* The type of message to display.
|
|
5
|
+
*/
|
|
6
|
+
export type InlineMessageType = 'info' | 'success' | 'warning' | 'critical' | 'working';
|
|
7
|
+
/**
|
|
8
|
+
* Labels for each message type.
|
|
9
|
+
*/
|
|
10
|
+
type TypeLabels = Record<InlineMessageType, string>;
|
|
11
|
+
export interface InlineMessageProps extends Omit<ComponentPropsWithoutRef<'div'>, 'title'> {
|
|
12
|
+
/**
|
|
13
|
+
* Message body.
|
|
14
|
+
*/
|
|
15
|
+
message?: ReactNode;
|
|
16
|
+
/**
|
|
17
|
+
* Title text.
|
|
18
|
+
*/
|
|
19
|
+
title: ReactNode;
|
|
20
|
+
/**
|
|
21
|
+
* Message type.
|
|
22
|
+
*/
|
|
23
|
+
type: InlineMessageType;
|
|
24
|
+
/**
|
|
25
|
+
* Message type labels. Provide translation strings if needed.
|
|
26
|
+
*/
|
|
27
|
+
typeLabels?: TypeLabels;
|
|
28
|
+
/**
|
|
29
|
+
* Additional class names
|
|
30
|
+
*/
|
|
31
|
+
className?: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* InlineMessage UI component
|
|
35
|
+
*/
|
|
36
|
+
export declare const InlineMessage: ({ title, message, type, typeLabels, className, ...props }: InlineMessageProps) => React.JSX.Element;
|
|
37
|
+
export {};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef, MouseEvent, ReactNode } from 'react';
|
|
2
|
+
import { Button } from '@components/buttons/Button/Button';
|
|
3
|
+
import './section-message.css';
|
|
4
|
+
export type SectionMessageType = 'info' | 'success' | 'warning' | 'critical' | 'discovery';
|
|
5
|
+
type TypeLabels = Record<SectionMessageType, string>;
|
|
6
|
+
export interface SectionMessageProps extends ComponentPropsWithoutRef<'div'> {
|
|
7
|
+
/**
|
|
8
|
+
* Props for optional call to action button.
|
|
9
|
+
* Can include any Button props except for size and variant.
|
|
10
|
+
*/
|
|
11
|
+
ctaButton?: ComponentPropsWithoutRef<typeof Button>;
|
|
12
|
+
/**
|
|
13
|
+
* Label for dismiss button. Provide a translation string if needed.
|
|
14
|
+
*/
|
|
15
|
+
dismissLabel?: string;
|
|
16
|
+
/**
|
|
17
|
+
* Unique id of message.
|
|
18
|
+
*/
|
|
19
|
+
id?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Includes dismiss functionality.
|
|
22
|
+
*/
|
|
23
|
+
isDismissible?: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Message text.
|
|
26
|
+
*/
|
|
27
|
+
message: ReactNode;
|
|
28
|
+
/**
|
|
29
|
+
* Callback function when message is dismissed.
|
|
30
|
+
*/
|
|
31
|
+
onDismiss?: (event: MouseEvent<HTMLButtonElement>, id: string) => void;
|
|
32
|
+
/**
|
|
33
|
+
* Message title.
|
|
34
|
+
*/
|
|
35
|
+
title?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Message type.
|
|
38
|
+
*/
|
|
39
|
+
type: SectionMessageType;
|
|
40
|
+
/**
|
|
41
|
+
* Message type labels. Provide translation strings if needed.
|
|
42
|
+
*/
|
|
43
|
+
typeLabels?: TypeLabels;
|
|
44
|
+
/**
|
|
45
|
+
* Additional class names.
|
|
46
|
+
*/
|
|
47
|
+
className?: string;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* SectionMessage UI component
|
|
51
|
+
*/
|
|
52
|
+
export declare const SectionMessage: ({ ctaButton, dismissLabel, id, isDismissible, onDismiss, message, title, type, typeLabels, className, ...props }: SectionMessageProps) => React.JSX.Element;
|
|
53
|
+
export {};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
|
+
import './toaster.css';
|
|
3
|
+
declare const iconTypes: {
|
|
4
|
+
readonly info: "circleInfo";
|
|
5
|
+
readonly success: "check";
|
|
6
|
+
readonly warning: "triangleExclamation";
|
|
7
|
+
readonly critical: "diamondExclamation";
|
|
8
|
+
};
|
|
9
|
+
type IconType = keyof typeof iconTypes;
|
|
10
|
+
declare const defaultTypeLabels: {
|
|
11
|
+
readonly info: "Information";
|
|
12
|
+
readonly success: "Success";
|
|
13
|
+
readonly warning: "Warning";
|
|
14
|
+
readonly critical: "Critical";
|
|
15
|
+
readonly working: "Working...";
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Prop types for Toast
|
|
19
|
+
*/
|
|
20
|
+
interface ToastProps extends ComponentPropsWithoutRef<'div'> {
|
|
21
|
+
/**
|
|
22
|
+
* Toast message content.
|
|
23
|
+
*/
|
|
24
|
+
children?: ReactNode;
|
|
25
|
+
/**
|
|
26
|
+
* ID of individual toast.
|
|
27
|
+
*/
|
|
28
|
+
id?: string;
|
|
29
|
+
/**
|
|
30
|
+
* Type of toast to show.
|
|
31
|
+
*/
|
|
32
|
+
type?: IconType | 'working';
|
|
33
|
+
/**
|
|
34
|
+
* Toast type labels. Provide translation strings if needed.
|
|
35
|
+
*/
|
|
36
|
+
typeLabels?: Partial<typeof defaultTypeLabels>;
|
|
37
|
+
/**
|
|
38
|
+
* Additional class names
|
|
39
|
+
*/
|
|
40
|
+
className?: string;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Toast UI component
|
|
44
|
+
*/
|
|
45
|
+
export declare const Toast: ({ children, id, type, typeLabels, className, }: ToastProps) => React.JSX.Element;
|
|
46
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
import 'react-toastify/dist/ReactToastify.css';
|
|
3
|
+
import './toaster.css';
|
|
4
|
+
/**
|
|
5
|
+
* Prop types for Toast
|
|
6
|
+
*/
|
|
7
|
+
interface ToasterProps extends ComponentPropsWithoutRef<'div'> {
|
|
8
|
+
/**
|
|
9
|
+
* Duration in milliseconds before the toast will auto-close.
|
|
10
|
+
*/
|
|
11
|
+
autoCloseDuration?: number;
|
|
12
|
+
/**
|
|
13
|
+
* Maximum number of toasts that can be displayed at once.
|
|
14
|
+
*/
|
|
15
|
+
limit?: number;
|
|
16
|
+
/**
|
|
17
|
+
* Location toast objects will show in the UI.
|
|
18
|
+
*/
|
|
19
|
+
position?: 'bottom-right' | 'top-right';
|
|
20
|
+
/**
|
|
21
|
+
* Additional class names
|
|
22
|
+
*/
|
|
23
|
+
className?: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Toaster UI component
|
|
27
|
+
*/
|
|
28
|
+
export declare const Toaster: ({ autoCloseDuration, limit, position, className, }: ToasterProps) => React.JSX.Element;
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ReactElement } from 'react';
|
|
2
|
+
import { cssTransition, toast as toastApi, ToastOptions } from 'react-toastify';
|
|
3
|
+
export declare enum ToastType {
|
|
4
|
+
Critical = "critical",
|
|
5
|
+
Warning = "warning",
|
|
6
|
+
Working = "working",
|
|
7
|
+
Success = "success",
|
|
8
|
+
Info = "info"
|
|
9
|
+
}
|
|
10
|
+
export declare const useToast: () => [(type: ToastType, message: string | ReactElement, options?: ToastOptions) => string | number, typeof toastApi, ReturnType<typeof cssTransition>];
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
|
+
import './expansion-panel.css';
|
|
3
|
+
/**
|
|
4
|
+
* Prop types for ExpansionPanel
|
|
5
|
+
*/
|
|
6
|
+
interface ExpansionPanelProps extends ComponentPropsWithoutRef<'div'> {
|
|
7
|
+
/**
|
|
8
|
+
* The content of the expansion panel.
|
|
9
|
+
*/
|
|
10
|
+
children?: ReactNode;
|
|
11
|
+
/**
|
|
12
|
+
* The ID of the expansion panel. If not provided, a unique ID will be generated.
|
|
13
|
+
*/
|
|
14
|
+
id?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Whether the expansion panel is open or not.
|
|
17
|
+
*/
|
|
18
|
+
isOpen?: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* The summary label of the expansion panel.
|
|
21
|
+
*/
|
|
22
|
+
summary?: string | ReactNode;
|
|
23
|
+
/**
|
|
24
|
+
* Additional class names
|
|
25
|
+
*/
|
|
26
|
+
className?: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* ExpansionPanel UI component
|
|
30
|
+
*/
|
|
31
|
+
export declare const ExpansionPanel: ({ children, id, isOpen, summary, className, ...props }: ExpansionPanelProps) => React.JSX.Element;
|
|
32
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
|
+
import './expansion-panel-group.css';
|
|
3
|
+
/**
|
|
4
|
+
* Prop types for ExpansionPanelGroup
|
|
5
|
+
*/
|
|
6
|
+
interface ExpansionPanelGroupProps extends ComponentPropsWithoutRef<'div'> {
|
|
7
|
+
/**
|
|
8
|
+
* The content of the expansion panel group. This should be a series of ExpansionPanel components.
|
|
9
|
+
*/
|
|
10
|
+
children?: ReactNode;
|
|
11
|
+
/**
|
|
12
|
+
* The display type of the expansion panel group.
|
|
13
|
+
*/
|
|
14
|
+
displayType?: 'standard' | 'no-border' | 'stacked';
|
|
15
|
+
/**
|
|
16
|
+
* Additional class names
|
|
17
|
+
*/
|
|
18
|
+
className?: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* ExpansionPanelGroup UI component
|
|
22
|
+
*/
|
|
23
|
+
export declare const ExpansionPanelGroup: ({ children, displayType, className, ...props }: ExpansionPanelGroupProps) => React.JSX.Element;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
|
+
import './panel.css';
|
|
3
|
+
import { GridGapOptions } from '@layouts/layout-types';
|
|
4
|
+
type StatusType = 'info' | 'success' | 'warning' | 'critical' | 'neutral';
|
|
5
|
+
export interface PanelProps extends ComponentPropsWithoutRef<'div'> {
|
|
6
|
+
/**
|
|
7
|
+
* Panel content.
|
|
8
|
+
*/
|
|
9
|
+
children: ReactNode;
|
|
10
|
+
/**
|
|
11
|
+
* Should the panel show a status indicator.
|
|
12
|
+
*/
|
|
13
|
+
hasStatusIndicator?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Padding for the panel.
|
|
16
|
+
*/
|
|
17
|
+
padding?: GridGapOptions;
|
|
18
|
+
/**
|
|
19
|
+
* Status type for panel. Only renders if `hasStatusIndicator` is true.
|
|
20
|
+
*/
|
|
21
|
+
statusType?: StatusType;
|
|
22
|
+
/**
|
|
23
|
+
* Which variant of panel to render
|
|
24
|
+
*/
|
|
25
|
+
variant?: 'default' | 'sunken' | 'raised' | 'overlay' | 'critical';
|
|
26
|
+
/**
|
|
27
|
+
* Additional class names
|
|
28
|
+
*/
|
|
29
|
+
className?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Panel UI component
|
|
33
|
+
*/
|
|
34
|
+
export declare const Panel: ({ children, hasStatusIndicator, padding, statusType, variant, className, ...props }: PanelProps) => React.JSX.Element;
|
|
35
|
+
export {};
|