@pantheon-systems/pds-toolkit-react 1.0.0-dev.19 → 1.0.0-dev.190

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.
Files changed (235) hide show
  1. package/README.md +31 -1
  2. package/_dist/components/Avatar/Avatar.d.ts +33 -0
  3. package/_dist/components/Breadcrumbs/Breadcrumbs.d.ts +9 -0
  4. package/_dist/components/Breadcrumbs/BreadcrumbsContent.d.ts +12 -0
  5. package/_dist/components/Breadcrumbs/BreadcrumbsContext.d.ts +17 -0
  6. package/_dist/components/Breadcrumbs/ListItem.d.ts +14 -0
  7. package/_dist/components/Breadcrumbs/MobileCrumbs.d.ts +2 -0
  8. package/_dist/components/CTALink/CTALink.d.ts +20 -0
  9. package/_dist/components/CTASlice/CTASlice.d.ts +51 -0
  10. package/_dist/components/Callout/Callout.d.ts +24 -0
  11. package/_dist/components/Callout/sample-callout-content.d.ts +2 -0
  12. package/_dist/components/ComparisonList/ComparisonList.d.ts +42 -0
  13. package/_dist/components/Heading/Heading.d.ts +15 -0
  14. package/_dist/components/Icon/Icon.d.ts +640 -0
  15. package/_dist/components/Icon/iconList.d.ts +1 -0
  16. package/_dist/components/LinkNewWindow/LinkNewWindow.d.ts +27 -0
  17. package/_dist/components/Modal/Modal.d.ts +40 -0
  18. package/_dist/components/Pager/AdvancedPagination.d.ts +4 -0
  19. package/_dist/components/Pager/BasicPagination.d.ts +4 -0
  20. package/_dist/components/Pager/MiniPagination.d.ts +4 -0
  21. package/_dist/components/Pager/NavigationButton.d.ts +13 -0
  22. package/_dist/components/Pager/Pager.d.ts +24 -0
  23. package/_dist/components/Pager/PagerContext.d.ts +23 -0
  24. package/_dist/components/Pager/PagerItem.d.ts +14 -0
  25. package/_dist/components/Pager/usePaginationUI.d.ts +1 -0
  26. package/_dist/components/Panel/Panel.d.ts +30 -0
  27. package/_dist/components/PantheonLogo/PantheonLogo.d.ts +32 -0
  28. package/_dist/components/PantheonLogo/pantheon-logo-data.d.ts +4 -0
  29. package/_dist/components/PlatformIcon/PlatformIcon.d.ts +12 -0
  30. package/_dist/components/Popover/Popover.d.ts +58 -0
  31. package/_dist/components/PullQuote/PullQuote.d.ts +34 -0
  32. package/_dist/components/Skiplink/Skiplink.d.ts +21 -0
  33. package/_dist/components/SocialLinks/SocialLinks.d.ts +23 -0
  34. package/_dist/components/StatusIndicator/StatusIndicator.d.ts +20 -0
  35. package/_dist/components/Stepper/Stepper.d.ts +49 -0
  36. package/_dist/components/Table/Table.d.ts +15 -0
  37. package/_dist/components/TableOfContents/TableOfContents.d.ts +25 -0
  38. package/_dist/components/Tabs/Tabs.d.ts +63 -0
  39. package/_dist/components/Tag/Tag.d.ts +39 -0
  40. package/_dist/components/Tooltip/Tooltip.d.ts +51 -0
  41. package/_dist/components/badges/IndicatorBadge/IndicatorBadge.d.ts +27 -0
  42. package/_dist/components/badges/StatusBadge/StatusBadge.d.ts +35 -0
  43. package/_dist/components/badges/Tally/Tally.d.ts +35 -0
  44. package/_dist/components/buttons/Button/Button.d.ts +58 -0
  45. package/_dist/components/buttons/ButtonLink/ButtonLink.d.ts +44 -0
  46. package/_dist/components/buttons/IconButton/IconButton.d.ts +53 -0
  47. package/_dist/components/buttons/MenuButton/MenuButton.d.ts +63 -0
  48. package/_dist/components/buttons/SegmentedButton/SegmentedButton.d.ts +53 -0
  49. package/_dist/components/buttons/SplitButton/SplitButton.d.ts +36 -0
  50. package/_dist/components/buttons/ToggleButton/ToggleButton.d.ts +35 -0
  51. package/_dist/components/cards/Card/Card.d.ts +29 -0
  52. package/_dist/components/cards/CardHeading/CardHeading.d.ts +32 -0
  53. package/_dist/components/cards/CardSelectGroup/CardSelectGroup.d.ts +60 -0
  54. package/_dist/components/cards/LinksCard/LinksCard.d.ts +29 -0
  55. package/_dist/components/cards/LinksCard/links-card-sample-data.d.ts +2 -0
  56. package/_dist/components/cards/NewSiteCard/NewSiteCard.d.ts +25 -0
  57. package/_dist/components/cards/PricingCard/PricingCard.d.ts +64 -0
  58. package/_dist/components/cards/SiteCard/SiteCard.d.ts +45 -0
  59. package/_dist/components/expansion-panels/ExpansionPanel/ExpansionPanel.d.ts +32 -0
  60. package/_dist/components/expansion-panels/ExpansionPanelGroup/ExpansionPanelGroup.d.ts +24 -0
  61. package/_dist/components/footer/FooterHeading/FooterHeading.d.ts +15 -0
  62. package/_dist/components/footer/FooterLinks/FooterLinks.d.ts +17 -0
  63. package/_dist/components/footer/SiteFooter/SiteFooter.d.ts +26 -0
  64. package/_dist/components/footer/SiteFooter/footer-content.d.ts +2 -0
  65. package/_dist/components/inputs/Checkbox/Checkbox.d.ts +92 -0
  66. package/_dist/components/inputs/CheckboxFieldset/CheckboxFieldset.d.ts +60 -0
  67. package/_dist/components/inputs/CheckboxGroup/CheckboxGroup.d.ts +76 -0
  68. package/_dist/components/inputs/Combobox/Combobox.d.ts +134 -0
  69. package/_dist/components/inputs/FileUpload/FileUpload.d.ts +77 -0
  70. package/_dist/components/inputs/InputFormatted/InputFormatted.d.ts +35 -0
  71. package/_dist/components/inputs/InputGroup/InputGroup.d.ts +19 -0
  72. package/_dist/components/inputs/InputObscured/InputObscured.d.ts +33 -0
  73. package/_dist/components/inputs/InputText/InputText.d.ts +75 -0
  74. package/_dist/components/inputs/InputWrapper/InputWrapper.d.ts +5 -0
  75. package/_dist/components/inputs/RadioGroup/RadioGroup.d.ts +92 -0
  76. package/_dist/components/inputs/Select/Select.d.ts +99 -0
  77. package/_dist/components/inputs/Switch/Switch.d.ts +74 -0
  78. package/_dist/components/inputs/TextInput/TextInput.d.ts +127 -0
  79. package/_dist/components/inputs/Textarea/Textarea.d.ts +107 -0
  80. package/_dist/components/inputs/ToggleSwitch/ToggleSwitch.d.ts +33 -0
  81. package/_dist/components/inputs/input-types.d.ts +1 -0
  82. package/_dist/components/inputs/input-utilities.d.ts +88 -0
  83. package/_dist/components/inputs/inputs-common.d.ts +40 -0
  84. package/_dist/components/navigation/DashboardNav/DashboardNav.d.ts +35 -0
  85. package/_dist/components/navigation/DashboardNav/DashboardNavItem.d.ts +25 -0
  86. package/_dist/components/navigation/DashboardNav/dashboard-nav-sample-content.d.ts +30 -0
  87. package/_dist/components/navigation/DashboardNav/dashboard-nav-utilities.d.ts +4 -0
  88. package/_dist/components/navigation/DashboardSearch/DashboardSearch.d.ts +70 -0
  89. package/_dist/components/navigation/DashboardSearch/SiteOptionDisplay.d.ts +35 -0
  90. package/_dist/components/navigation/DropdownMenu/DropdownMenu.d.ts +28 -0
  91. package/_dist/components/navigation/NavMenu/NavMenu.d.ts +19 -0
  92. package/_dist/components/navigation/NavMenu/NavMenuDropdown.d.ts +14 -0
  93. package/_dist/components/navigation/Navbar/Navbar.d.ts +60 -0
  94. package/_dist/components/navigation/SideNav/SideNav.d.ts +47 -0
  95. package/_dist/components/navigation/SideNavCompact/SideNavCompact.d.ts +47 -0
  96. package/_dist/components/navigation/TabMenu/TabMenu.d.ts +43 -0
  97. package/_dist/components/navigation/TabMenu/TabMenuDropdown.d.ts +33 -0
  98. package/_dist/components/navigation/UserMenu/UserMenu.d.ts +69 -0
  99. package/_dist/components/navigation/UserMenu/user-menu-sample-content.d.ts +2 -0
  100. package/_dist/components/navigation/WorkspaceSelector/WorkspaceSelector.d.ts +58 -0
  101. package/_dist/components/navigation/navigation-types.d.ts +29 -0
  102. package/_dist/components/navigation/navigation-utilities.d.ts +7 -0
  103. package/_dist/components/notifications/Banner/Banner.d.ts +47 -0
  104. package/_dist/components/notifications/InlineMessage/InlineMessage.d.ts +37 -0
  105. package/_dist/components/notifications/SectionMessage/SectionMessage.d.ts +47 -0
  106. package/_dist/components/notifications/Toaster/Toast.d.ts +46 -0
  107. package/_dist/components/notifications/Toaster/Toaster.d.ts +29 -0
  108. package/_dist/components/notifications/Toaster/useToast.d.ts +13 -0
  109. package/_dist/components/progress-indicators/ProgressBar/ProgressBar.d.ts +53 -0
  110. package/_dist/components/progress-indicators/ProgressRing/ProgressRing.d.ts +41 -0
  111. package/_dist/components/progress-indicators/Spinner/Spinner.d.ts +33 -0
  112. package/_dist/components/tiles/AvatarTileList/AvatarTileList.d.ts +22 -0
  113. package/_dist/components/tiles/StatsTileList/StatsTileList.d.ts +26 -0
  114. package/_dist/components/tiles/Tile/Tile.d.ts +42 -0
  115. package/_dist/components/tiles/TileGrid/TileGrid.d.ts +29 -0
  116. package/_dist/css/component-css/pds-avatar-tile-list.css +1 -0
  117. package/_dist/css/component-css/pds-avatar.css +1 -0
  118. package/_dist/css/component-css/pds-banner.css +1 -0
  119. package/_dist/css/component-css/pds-breadcrumbs.css +1 -0
  120. package/_dist/css/component-css/pds-button-link.css +1 -0
  121. package/_dist/css/component-css/pds-button.css +81 -0
  122. package/_dist/css/component-css/pds-callout.css +1 -0
  123. package/_dist/css/component-css/pds-card-heading.css +1 -0
  124. package/_dist/css/component-css/pds-card-select-group.css +1 -0
  125. package/_dist/css/component-css/pds-card.css +1 -0
  126. package/_dist/css/component-css/pds-checkbox-group.css +1 -0
  127. package/_dist/css/component-css/pds-checkbox.css +1 -0
  128. package/_dist/css/component-css/pds-combobox.css +1 -0
  129. package/_dist/css/component-css/pds-comparison-list.css +1 -0
  130. package/_dist/css/component-css/pds-cta-link.css +1 -0
  131. package/_dist/css/component-css/pds-cta-slice.css +1 -0
  132. package/_dist/css/component-css/pds-dashboard-nav.css +5 -0
  133. package/_dist/css/component-css/pds-dashboard-search.css +1 -0
  134. package/_dist/css/component-css/pds-dropdown-menu.css +2 -0
  135. package/_dist/css/component-css/pds-expansion-panel-group.css +1 -0
  136. package/_dist/css/component-css/pds-expansion-panel.css +1 -0
  137. package/_dist/css/component-css/pds-file-upload.css +7 -0
  138. package/_dist/css/component-css/pds-footer-heading.css +1 -0
  139. package/_dist/css/component-css/pds-footer-links.css +1 -0
  140. package/_dist/css/component-css/pds-heading.css +1 -0
  141. package/_dist/css/component-css/pds-icon-button.css +17 -0
  142. package/_dist/css/component-css/pds-icon-story-only.css +1 -0
  143. package/_dist/css/component-css/pds-index.css +162 -0
  144. package/_dist/css/component-css/pds-indicator-badge.css +39 -0
  145. package/_dist/css/component-css/pds-inline-message.css +1 -0
  146. package/_dist/css/component-css/pds-input-group.css +1 -0
  147. package/_dist/css/component-css/pds-input-text.css +1 -0
  148. package/_dist/css/component-css/pds-input-utilities.css +1 -0
  149. package/_dist/css/component-css/pds-input-wrapper.css +1 -0
  150. package/_dist/css/component-css/pds-inputs-common-deprecated.css +1 -0
  151. package/_dist/css/component-css/pds-inputs-common.css +1 -0
  152. package/_dist/css/component-css/pds-link-new-window.css +1 -0
  153. package/_dist/css/component-css/pds-links-card.css +1 -0
  154. package/_dist/css/component-css/pds-menu-button.css +1 -0
  155. package/_dist/css/component-css/pds-modal.css +1 -0
  156. package/_dist/css/component-css/pds-nav-menu.css +1 -0
  157. package/_dist/css/component-css/pds-navbar.css +3 -0
  158. package/_dist/css/component-css/pds-new-site-card.css +1 -0
  159. package/_dist/css/component-css/pds-pager.css +1 -0
  160. package/_dist/css/component-css/pds-panel.css +1 -0
  161. package/_dist/css/component-css/pds-pantheon-logo.css +1 -0
  162. package/_dist/css/component-css/pds-platform-icon.css +1 -0
  163. package/_dist/css/component-css/pds-popover.css +1 -0
  164. package/_dist/css/component-css/pds-pricing-card-local.css +1 -0
  165. package/_dist/css/component-css/pds-pricing-card.css +1 -0
  166. package/_dist/css/component-css/pds-progress-bar.css +1 -0
  167. package/_dist/css/component-css/pds-progress-ring.css +1 -0
  168. package/_dist/css/component-css/pds-pull-quote.css +1 -0
  169. package/_dist/css/component-css/pds-radio-group.css +1 -0
  170. package/_dist/css/component-css/pds-section-message.css +1 -0
  171. package/_dist/css/component-css/pds-segmented-button.css +1 -0
  172. package/_dist/css/component-css/pds-select.css +1 -0
  173. package/_dist/css/component-css/pds-side-nav-compact.css +1 -0
  174. package/_dist/css/component-css/pds-side-nav.css +1 -0
  175. package/_dist/css/component-css/pds-site-card.css +1 -0
  176. package/_dist/css/component-css/pds-site-footer.css +1 -0
  177. package/_dist/css/component-css/pds-skiplink.css +1 -0
  178. package/_dist/css/component-css/pds-social-links.css +1 -0
  179. package/_dist/css/component-css/pds-spinner.css +1 -0
  180. package/_dist/css/component-css/pds-split-button.css +2 -0
  181. package/_dist/css/component-css/pds-stats-tile-list.css +1 -0
  182. package/_dist/css/component-css/pds-status-badge.css +9 -0
  183. package/_dist/css/component-css/pds-status-indicator.css +1 -0
  184. package/_dist/css/component-css/pds-stepper.css +1 -0
  185. package/_dist/css/component-css/pds-switch.css +3 -0
  186. package/_dist/css/component-css/pds-tab-menu.css +2 -0
  187. package/_dist/css/component-css/pds-table-of-contents.css +1 -0
  188. package/_dist/css/component-css/pds-table.css +1 -0
  189. package/_dist/css/component-css/pds-tabs.css +1 -0
  190. package/_dist/css/component-css/pds-tag.css +1 -0
  191. package/_dist/css/component-css/pds-tally.css +1 -0
  192. package/_dist/css/component-css/pds-text-input.css +1 -0
  193. package/_dist/css/component-css/pds-textarea.css +1 -0
  194. package/_dist/css/component-css/pds-tile.css +1 -0
  195. package/_dist/css/component-css/pds-tiles-common.css +1 -0
  196. package/_dist/css/component-css/pds-toaster.css +1 -0
  197. package/_dist/css/component-css/pds-toggle-button.css +1 -0
  198. package/_dist/css/component-css/pds-toggle-switch.css +3 -0
  199. package/_dist/css/component-css/pds-tooltip.css +1 -0
  200. package/_dist/css/component-css/pds-user-menu-story-only.css +1 -0
  201. package/_dist/css/component-css/pds-user-menu.css +1 -0
  202. package/_dist/css/component-css/pds-workspace-selector.css +1 -0
  203. package/_dist/css/design-tokens/pds-design-tokens-dark-mode.css +272 -0
  204. package/_dist/css/design-tokens/pds-design-tokens-light-mode.css +521 -0
  205. package/_dist/css/design-tokens/pds-design-tokens.css +105 -0
  206. package/_dist/css/pds-components.css +125 -70
  207. package/_dist/css/pds-core.css +54 -2
  208. package/_dist/css/pds-layouts.css +2 -1
  209. package/_dist/index.css +1 -0
  210. package/_dist/index.d.ts +98 -0
  211. package/_dist/index.js +10650 -0
  212. package/_dist/index.js.map +1 -0
  213. package/_dist/layouts/Container/Container.d.ts +25 -0
  214. package/_dist/layouts/DashboardLayout/DashboardLayout.d.ts +48 -0
  215. package/_dist/layouts/DashboardLayout/DemoContent.d.ts +2 -0
  216. package/_dist/layouts/FlexContainer/FlexContainer.d.ts +72 -0
  217. package/_dist/layouts/GlobalWrapper/GlobalWrapper.d.ts +19 -0
  218. package/_dist/layouts/SidebarLayout/SidebarLayout.d.ts +36 -0
  219. package/_dist/layouts/StepperLayout/StepperLayout.d.ts +17 -0
  220. package/_dist/layouts/ThreeItemLayout/ThreeItemLayout.d.ts +25 -0
  221. package/_dist/layouts/TwoItemLayout/TwoItemLayout.d.ts +29 -0
  222. package/_dist/layouts/layout-types.d.ts +1 -0
  223. package/_dist/libs/components/customPropTypes.d.ts +85 -0
  224. package/_dist/libs/components/utility-components.d.ts +12 -0
  225. package/_dist/libs/components/utils.d.ts +4 -0
  226. package/_dist/libs/types/custom-types.d.ts +13 -0
  227. package/_dist/utilities/context-providers/ResponsiveContext/ResponsiveContext.d.ts +6 -0
  228. package/_dist/utilities/hooks/useWindowWidth.d.ts +1 -0
  229. package/_dist/vars/spacing.d.ts +17 -0
  230. package/_dist/vars/z-index.d.ts +5 -0
  231. package/package.json +85 -44
  232. package/_dist/cjs/index.js +0 -98
  233. package/_dist/cjs/index.js.map +0 -1
  234. package/_dist/esm/index.js +0 -98
  235. package/_dist/esm/index.js.map +0 -1
@@ -0,0 +1,69 @@
1
+ import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ import { PDSIcon } from '@components/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,2 @@
1
+ import { UserMenuItem } from './UserMenu';
2
+ export declare const userMenuItems: UserMenuItem[];
@@ -0,0 +1,58 @@
1
+ export function WorkspaceSelector({ ariaLabel, createWorkspaceLink, filterPlaceholder, filterLabel, menuHeading, minFilterItems, noResultsText, withinNavbar, workspaceList, className, ...props }: {
2
+ [x: string]: any;
3
+ ariaLabel?: string;
4
+ createWorkspaceLink: any;
5
+ filterPlaceholder?: string;
6
+ filterLabel?: string;
7
+ menuHeading?: string;
8
+ minFilterItems?: number;
9
+ noResultsText?: string;
10
+ withinNavbar?: boolean;
11
+ workspaceList: any;
12
+ className: any;
13
+ }): React.JSX.Element;
14
+ export namespace WorkspaceSelector {
15
+ namespace propTypes {
16
+ let ariaLabel: PropTypes.Requireable<string>;
17
+ let createWorkspaceLink: PropTypes.Requireable<PropTypes.ReactNodeLike>;
18
+ let filterPlaceholder: PropTypes.Requireable<string>;
19
+ let filterLabel: PropTypes.Requireable<string>;
20
+ let menuHeading: PropTypes.Requireable<string>;
21
+ let minFilterItems: PropTypes.Requireable<number>;
22
+ let noResultsText: PropTypes.Requireable<string>;
23
+ let withinNavbar: PropTypes.Requireable<boolean>;
24
+ let workspaceList: PropTypes.Requireable<PropTypes.InferProps<{
25
+ /**
26
+ * Name of the workspace.
27
+ */
28
+ displayName: PropTypes.Requireable<string>;
29
+ /**
30
+ * Image src for the workspace.
31
+ */
32
+ imageSrc: PropTypes.Requireable<string>;
33
+ /**
34
+ * Is this the currently selected workspace?
35
+ */
36
+ isActive: PropTypes.Requireable<boolean>;
37
+ /**
38
+ * This user does not have access to this workspace.
39
+ */
40
+ isUnprivileged: PropTypes.Requireable<boolean>;
41
+ /**
42
+ * Account plan tier.
43
+ */
44
+ planTier: PropTypes.Requireable<string>;
45
+ /**
46
+ * Id of the workspace.
47
+ */
48
+ workspaceId: PropTypes.Requireable<string>;
49
+ /**
50
+ * Link to the workspace. A link element via the router of your choice.
51
+ */
52
+ workspaceLink: PropTypes.Requireable<PropTypes.ReactNodeLike>;
53
+ }>[]>;
54
+ let className: PropTypes.Requireable<string>;
55
+ }
56
+ }
57
+ import React from 'react';
58
+ import PropTypes from 'prop-types';
@@ -0,0 +1,29 @@
1
+ /// <reference types="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: JSX.Element | 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: JSX.Element;
25
+ /**
26
+ * Nesting level of the item.
27
+ */
28
+ level: 'top-level' | 'second-level' | 'third-level';
29
+ };
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { NavigationItem } from '@components/navigation/navigation-types';
3
+ export declare const isActiveItem: (item: NavigationItem) => boolean;
4
+ export declare const isActiveTrail: (item: NavigationItem) => boolean;
5
+ export declare const getActiveLink: (items: NavigationItem[]) => JSX.Element | null;
6
+ export declare const getLinkContentString: (linkContent: JSX.Element | string) => string;
7
+ export declare const processNavLinkContent: (linkContent: JSX.Element | string, links?: NavigationItem[]) => JSX.Element | string;
@@ -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
+ type MessageType = 'info' | 'success' | 'warning' | 'critical' | 'working';
7
+ /**
8
+ * Labels for each message type.
9
+ */
10
+ type TypeLabels = Record<MessageType, string>;
11
+ export interface InlineMessageProps extends ComponentPropsWithoutRef<'div'> {
12
+ /**
13
+ * Title text.
14
+ */
15
+ title: string;
16
+ /**
17
+ * Secondary text.
18
+ */
19
+ secondaryText?: ReactNode;
20
+ /**
21
+ * Message type.
22
+ */
23
+ type: MessageType;
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, secondaryText, type, typeLabels, className, ...props }: InlineMessageProps) => React.JSX.Element;
37
+ export {};
@@ -0,0 +1,47 @@
1
+ import React, { ComponentPropsWithoutRef, MouseEvent, ReactNode } from 'react';
2
+ import './section-message.css';
3
+ type MessageType = 'info' | 'success' | 'warning' | 'critical' | 'discovery';
4
+ type TypeLabels = Record<MessageType, string>;
5
+ export interface SectionMessageProps extends ComponentPropsWithoutRef<'div'> {
6
+ /**
7
+ * Label for dismiss button. Provide a translation string if needed.
8
+ */
9
+ dismissLabel?: string;
10
+ /**
11
+ * Unique id of message.
12
+ */
13
+ id?: string;
14
+ /**
15
+ * Includes dismiss functionality.
16
+ */
17
+ isDismissible?: boolean;
18
+ /**
19
+ * Message text.
20
+ */
21
+ message: ReactNode;
22
+ /**
23
+ * Callback function when message is dismissed.
24
+ */
25
+ onDismiss?: (event: MouseEvent<HTMLButtonElement>, id: string) => void;
26
+ /**
27
+ * Message title.
28
+ */
29
+ title?: string;
30
+ /**
31
+ * Message type.
32
+ */
33
+ type: MessageType;
34
+ /**
35
+ * Message type labels. Provide translation strings if needed.
36
+ */
37
+ typeLabels?: TypeLabels;
38
+ /**
39
+ * Additional class names.
40
+ */
41
+ className?: string;
42
+ }
43
+ /**
44
+ * SectionMessage UI component
45
+ */
46
+ export declare const SectionMessage: ({ dismissLabel, id, isDismissible, onDismiss, message, title, type, typeLabels, className, ...props }: SectionMessageProps) => React.JSX.Element;
47
+ 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,13 @@
1
+ import { cssTransition, toast as toastApi, ToastOptions } from 'react-toastify';
2
+ export declare enum ToastType {
3
+ Critical = "critical",
4
+ Warning = "warning",
5
+ Working = "working",
6
+ Success = "success",
7
+ Info = "info"
8
+ }
9
+ export declare const useToast: () => [
10
+ (type: ToastType, message: string, options?: ToastOptions) => string | number,
11
+ typeof toastApi,
12
+ ReturnType<typeof cssTransition>
13
+ ];
@@ -0,0 +1,53 @@
1
+ import React, { ComponentPropsWithoutRef } from 'react';
2
+ import './progress-bar.css';
3
+ interface ProgressBarBreakpoint {
4
+ colorType: 'neutral' | 'info' | 'success' | 'warning' | 'critical';
5
+ percentage: number;
6
+ }
7
+ interface ProgressBarProps extends ComponentPropsWithoutRef<'div'> {
8
+ /**
9
+ * Array of color breakpoints. Each breakpoint should have a `colorType` and `percentage` value.
10
+ */
11
+ colorBreakpoints: ProgressBarBreakpoint[];
12
+ /**
13
+ * ID of the Progress Bar. If not provided, a unique ID will be generated.
14
+ */
15
+ id?: string;
16
+ /**
17
+ * Progress Bar label. Will be available to screen readers if `showLabel` is false.
18
+ */
19
+ label: string;
20
+ /**
21
+ * Message or description used to help clarify the usage of the progress bar.
22
+ */
23
+ message?: string;
24
+ /**
25
+ * Position of the message relative to the progress bar.
26
+ */
27
+ messagePosition?: 'above' | 'below';
28
+ /**
29
+ * Percent complete.
30
+ */
31
+ percentage: number;
32
+ /**
33
+ * Should the label be visible? If false, it will render for screen readers only.
34
+ */
35
+ showLabel?: boolean;
36
+ /**
37
+ * Should the percentage label be visible?
38
+ */
39
+ showPercentage?: boolean;
40
+ /**
41
+ * Size of the progress bar.
42
+ */
43
+ size?: 'sm' | 'md' | 'lg';
44
+ /**
45
+ * Additional class names
46
+ */
47
+ className?: string;
48
+ }
49
+ /**
50
+ * ProgressBar UI component
51
+ */
52
+ export declare const ProgressBar: ({ colorBreakpoints, id, label, message, messagePosition, percentage, showLabel, showPercentage, size, className, ...props }: ProgressBarProps) => React.JSX.Element;
53
+ export {};
@@ -0,0 +1,41 @@
1
+ import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ import './progress-ring.css';
3
+ interface ProgressRingProps extends ComponentPropsWithoutRef<'div'> {
4
+ /**
5
+ * ID of the Progress Ring. If not provided, a unique ID will be generated.
6
+ */
7
+ id?: string;
8
+ /**
9
+ * Inner label for the Progress Ring. May be used for showing a percentage or a count of steps.
10
+ */
11
+ innerLabel?: ReactNode;
12
+ /**
13
+ * Label for the Progress Ring. Will be available to screen readers if `showLabel` is false.
14
+ */
15
+ label: string;
16
+ /**
17
+ * Percentage of progress.
18
+ */
19
+ percentage: number;
20
+ /**
21
+ * Should the label be visible? If false, it will render for screen readers only.
22
+ */
23
+ showLabel?: boolean;
24
+ /**
25
+ * Should the percentage be visible? Will be overridden by `innerLabel` if one is provided.
26
+ */
27
+ showPercentage?: boolean;
28
+ /**
29
+ * Size of the progress ring.
30
+ */
31
+ size?: 'sm' | 'md' | 'lg';
32
+ /**
33
+ * Additional class names
34
+ */
35
+ className?: string;
36
+ }
37
+ /**
38
+ * ProgressRing UI component
39
+ */
40
+ export declare const ProgressRing: ({ id, innerLabel, label, percentage, showLabel, showPercentage, size, className, ...props }: ProgressRingProps) => React.JSX.Element;
41
+ export {};
@@ -0,0 +1,33 @@
1
+ import React, { ComponentPropsWithoutRef } from 'react';
2
+ import './spinner.css';
3
+ interface SpinnerProps extends ComponentPropsWithoutRef<'span'> {
4
+ /**
5
+ * Spinner color
6
+ */
7
+ colorType?: 'full-color' | 'monochromatic' | 'monochromatic-reverse';
8
+ /**
9
+ * Should the spinner be an inline element? If true, it will be displayed inline-block without a visible label.
10
+ */
11
+ isInline?: boolean;
12
+ /**
13
+ * Spinner label. Will be displayed below the Spinner if `showLabel` is true.
14
+ */
15
+ label?: string;
16
+ /**
17
+ * Should the label be visible? If false, it will render for screen readers only.
18
+ */
19
+ showLabel?: boolean;
20
+ /**
21
+ * Spinner size
22
+ */
23
+ size?: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl';
24
+ /**
25
+ * Additional class names
26
+ */
27
+ className?: string;
28
+ }
29
+ /**
30
+ * Spinner UI component
31
+ */
32
+ export declare const Spinner: ({ colorType, isInline, label, showLabel, size, className, ...props }: SpinnerProps) => React.JSX.Element;
33
+ export {};
@@ -0,0 +1,22 @@
1
+ export function AvatarTileList({ darkBackground, listItems, className, ...props }: {
2
+ [x: string]: any;
3
+ darkBackground: any;
4
+ listItems: any;
5
+ className: any;
6
+ }): React.JSX.Element;
7
+ export namespace AvatarTileList {
8
+ namespace propTypes {
9
+ let darkBackground: PropTypes.Requireable<boolean>;
10
+ let listItems: PropTypes.Requireable<PropTypes.InferProps<{
11
+ image: PropTypes.Requireable<string>;
12
+ alt: PropTypes.Requireable<string>;
13
+ title: PropTypes.Requireable<string>;
14
+ org: PropTypes.Requireable<string>;
15
+ link: PropTypes.Requireable<string>;
16
+ linkContent: PropTypes.Requireable<PropTypes.ReactNodeLike>;
17
+ }>[]>;
18
+ let className: PropTypes.Requireable<string>;
19
+ }
20
+ }
21
+ import React from 'react';
22
+ import PropTypes from 'prop-types';
@@ -0,0 +1,26 @@
1
+ export function StatsTileList({ listItems, className, ...props }: {
2
+ [x: string]: any;
3
+ listItems: any;
4
+ className: any;
5
+ }): React.JSX.Element;
6
+ export namespace StatsTileList {
7
+ namespace propTypes {
8
+ let listItems: PropTypes.Requireable<PropTypes.InferProps<{
9
+ /**
10
+ * Image source
11
+ */
12
+ imageSrc: PropTypes.Requireable<PropTypes.ReactNodeLike>;
13
+ /**
14
+ * Statistic value
15
+ */
16
+ stat: PropTypes.Requireable<string>;
17
+ /**
18
+ * Statistic description
19
+ */
20
+ description: PropTypes.Requireable<string>;
21
+ }>[]>;
22
+ let className: PropTypes.Requireable<string>;
23
+ }
24
+ }
25
+ import React from 'react';
26
+ import PropTypes from 'prop-types';
@@ -0,0 +1,42 @@
1
+ import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ import { HeadingLevel } from '@libs/types/custom-types';
3
+ import './../tiles-common.css';
4
+ import './tile.css';
5
+ export type TileDisplayType = 'border' | 'clean' | 'clean-static';
6
+ /**
7
+ * Prop types for Tile
8
+ */
9
+ export interface TileProps extends ComponentPropsWithoutRef<'div'> {
10
+ /**
11
+ * Display type.
12
+ */
13
+ displayType?: TileDisplayType;
14
+ /**
15
+ * Heading level or `span`.
16
+ */
17
+ headingLevel?: HeadingLevel;
18
+ /**
19
+ * Heading text.
20
+ */
21
+ headingText?: string;
22
+ /**
23
+ * Image source.
24
+ */
25
+ imageSrc?: string;
26
+ /**
27
+ * A link element using the router of your choice.
28
+ */
29
+ linkContent?: ReactNode;
30
+ /**
31
+ * Summary paragraph.
32
+ */
33
+ summary?: string;
34
+ /**
35
+ * Additional class names
36
+ */
37
+ className?: string;
38
+ }
39
+ /**
40
+ * Tile UI component
41
+ */
42
+ export declare const Tile: ({ displayType, headingLevel, headingText, imageSrc, linkContent, summary, className, ...props }: TileProps) => React.JSX.Element;
@@ -0,0 +1,29 @@
1
+ import React, { ComponentPropsWithoutRef } from 'react';
2
+ import { TileDisplayType, TileProps } from '@components/tiles/Tile/Tile';
3
+ import { HeadingLevel } from '@libs/types/custom-types';
4
+ import './../tiles-common.css';
5
+ /**
6
+ * Prop types for TileGrid
7
+ */
8
+ export interface TileGridProps extends ComponentPropsWithoutRef<'div'> {
9
+ /**
10
+ * Display type.
11
+ */
12
+ displayType?: TileDisplayType;
13
+ /**
14
+ * Heading level or `span`. All tiles in the grid will use this heading level.
15
+ */
16
+ headingLevel?: HeadingLevel;
17
+ /**
18
+ * Array of Tiles.
19
+ */
20
+ tiles: TileProps[];
21
+ /**
22
+ * Additional class names
23
+ */
24
+ className?: string;
25
+ }
26
+ /**
27
+ * TileGrid UI component
28
+ */
29
+ export declare const TileGrid: ({ displayType, headingLevel, tiles, className, ...props }: TileGridProps) => React.JSX.Element;
@@ -0,0 +1 @@
1
+ .pds-avatar-tile-list a{cursor:pointer;text-decoration:none}.pds-tile-list__image--avatar img{border-radius:50%;height:auto;width:11.625rem}@media (--breakpoint-m ){.pds-tile-list__image--avatar img{width:9.75rem}}@media (--breakpoint-l ){.pds-tile-list__image--avatar img{width:11.625rem}}.pds-tile-list__name{color:var(--pds-color-text-default);font-size:1.728rem;font-weight:700}@media (--breakpoint-m ){.pds-tile-list__name{font-size:1.44rem}}@media (--breakpoint-l ){.pds-tile-list__name{font-size:1.728rem}}.pds-tile-list__title{color:var(--pds-color-text-default-secondary);font-size:1.2rem;font-weight:600;margin-block-start:.512rem}@media (--breakpoint-m ){.pds-tile-list__title{font-size:1rem}}@media (--breakpoint-l ){.pds-tile-list__title{font-size:1.2rem}}.pds-tile-list__org{color:var(--pds-color-text-default-secondary);font-family:var(--pds-typography-font-secondary);font-size:1rem;font-weight:400;margin-block-start:.41rem}.pds-tile-list__item:focus-visible{outline-width:2px}
@@ -0,0 +1 @@
1
+ .pds-avatar{--pds-avatar-size:1.953rem;--pds-avatar-icon-size:1.125rem;align-items:center;border:.0625rem solid transparent;border-radius:100%;display:inline-flex;justify-content:center}.pds-avatar__content{border-radius:100%;display:flex;height:var(--pds-avatar-size);width:var(--pds-avatar-size)}.pds-avatar__content--link:hover{cursor:pointer;outline:1px solid var(--pds-color-interactive-link-hover);outline-offset:.09375rem}.pds-avatar__content--link:focus-visible{outline:1px solid var(--pds-color-interactive-focus);outline-offset:.09375rem}.pds-avatar--image{border-color:var(--pds-color-border-default)}.pds-avatar--image .pds-avatar__image{border-radius:100%;height:100%;margin:auto;width:auto}.pds-avatar__user-icon{color:var(--pds-color-foreground-reverse);height:var(--pds-avatar-icon-size);width:var(--pds-avatar-icon-size)}.pds-avatar--xs{--pds-avatar-size:1rem;--pds-avatar-icon-size:0.5625rem}.pds-avatar--sm{--pds-avatar-size:1.563rem;--pds-avatar-icon-size:0.875rem}.pds-avatar--md{--pds-avatar-size:1.953rem;--pds-avatar-icon-size:1.125rem}.pds-avatar--lg{--pds-avatar-size:2.441rem;--pds-avatar-icon-size:1.375rem}
@@ -0,0 +1 @@
1
+ .pds-banner-group{--pds-banner-background:var(--pds-color-banner-info-background);--pds-banner-foreground:var(--pds-color-banner-info-foreground);--pds-banner-height:4.678rem;--pds-nav-button-size:1.953rem;min-height:var(--pds-banner-height);position:relative}@media (min-width:641px){.pds-banner-group{--pds-banner-height:3.815rem}}.pds-banner--critical,.pds-banner-group--critical{--pds-banner-background:var(--pds-color-banner-critical-background);--pds-banner-foreground:var(--pds-color-banner-critical-foreground)}.pds-banner--info,.pds-banner-group--info{--pds-banner-background:var(--pds-color-banner-info-background);--pds-banner-foreground:var(--pds-color-banner-info-foreground)}.pds-banner--warning,.pds-banner-group--warning{--pds-banner-background:var(--pds-color-banner-warning-background);--pds-banner-foreground:var(--pds-color-banner-warning-foreground)}.pds-banner{background:var(--pds-banner-background);box-sizing:border-box;color:var(--pds-banner-foreground);font-size:.833rem;height:var(--pds-banner-height);justify-content:space-between;padding-inline:1.953rem;position:absolute;width:100%}.pds-banner,.pds-banner__content{align-items:center;display:flex;gap:.8rem}.pds-banner__icon{flex-grow:0;flex-shrink:0}.pds-banner__message p{all:unset}.pds-banner__message a{color:var(--pds-banner-foreground);padding:.125rem;text-decoration:underline}.pds-banner__message a:hover{background-color:hsla(0,0%,100%,.2);color:var(--pds-banner-foreground);text-decoration:none;transition:all .2s ease-in-out 0s}.pds-banner__message a:focus-visible{outline:.0625rem solid var(--pds-banner-foreground);outline-offset:0}.pds-banner__dismiss-button{all:unset;border-radius:.1875rem;cursor:pointer;padding:.328rem .512rem;transition:all .2s ease-in-out 0s}.pds-banner__dismiss-button:hover{background-color:hsla(0,0%,100%,.2)}.pds-banner__dismiss-button:focus-visible{outline:.0625rem solid var(--pds-banner-foreground);outline-offset:0}.pds-banner-group--multiple .pds-banner{padding-inline:3.052rem}.pds-banner__navigation{display:flex;justify-content:space-between;width:100%}button.pds-banner__nav-button{color:var(--pds-banner-foreground);height:var(--pds-nav-button-size);margin-block:1.375rem;margin-inline:.512rem;min-width:unset;padding:0;transition:all .2s ease-in-out 0s;width:var(--pds-nav-button-size);z-index:calc(var(--pds-z-index-notifications) + 10)}@media (min-width:641px){button.pds-banner__nav-button{margin-block:.9375rem}}button.pds-banner__nav-button:hover:enabled{background-color:hsla(0,0%,100%,.2)}button.pds-banner__nav-button:focus-visible{outline:.0625rem solid var(--pds-banner-foreground);outline-offset:0}.pds-banner--dismissing,.pds-banner--fading{animation:hideBannerAnimation .2s ease-in;animation-fill-mode:forwards}@keyframes hideBannerAnimation{to{opacity:0}0%{opacity:1}}
@@ -0,0 +1 @@
1
+ .pds-breadcrumbs .pds-breadcrumbs__item{display:flex;list-style-type:none}.pds-breadcrumbs .pds-breadcrumbs__item a{text-decoration:none}.pds-breadcrumbs .pds-breadcrumbs__item a:hover{text-decoration:underline}.pds-breadcrumbs .pds-breadcrumbs__item li:not(:last-child):after{bottom:.0625rem;color:var(--pds-color-breadcrumb-separator);content:"/";font-size:.75rem;margin-inline:.8rem;position:relative}.pds-breadcrumbs .pds-breadcrumbs__item li:last-child a{text-decoration:none}.pds-breadcrumbs .pds-breadcrumbs__item li .pds-breadcrumbs__disabled{color:var(--pds-color-breadcrumb-text);cursor:default}.pds-breadcrumbs .pds-breadcrumbs__item li .pds-breadcrumbs__disabled:hover{color:var(--pds-color-breadcrumb-text);text-decoration:none}.pds-breadcrumbs .pds-breadcrumbs__item li .pds-breadcrumbs__disabled .pds-tooltip button{color:var(--pds-color-breadcrumb-text)}.pds-breadcrumbs .pds-breadcrumbs__item .pds-breadcrumbs__expand-button{background:none;border:none;cursor:pointer;display:inline-block;gap:.512rem;outline:inherit;padding:0}@media (max-width:640px){.pds-breadcrumbs .pds-breadcrumbs__item{display:none}}.pds-breadcrumbs .pds-breadcrumbs__hidden,.pds-breadcrumbs__mobileCrumbs{display:none}@media (max-width:640px){.pds-breadcrumbs__mobileCrumbs{align-items:center;display:flex}.pds-breadcrumbs__mobileCrumbs svg{margin-inline-end:.328rem}}