@pantheon-systems/pds-toolkit-react 1.0.0-dev.17 → 1.0.0-dev.170

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 (222) hide show
  1. package/README.md +31 -1
  2. package/_dist/components/Avatar/Avatar.d.ts +29 -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 +34 -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 +624 -0
  15. package/_dist/components/Icon/iconList.d.ts +1 -0
  16. package/_dist/components/Modal/Modal.d.ts +40 -0
  17. package/_dist/components/Pager/AdvancedPagination.d.ts +4 -0
  18. package/_dist/components/Pager/BasicPagination.d.ts +4 -0
  19. package/_dist/components/Pager/MiniPagination.d.ts +4 -0
  20. package/_dist/components/Pager/NavigationButton.d.ts +13 -0
  21. package/_dist/components/Pager/Pager.d.ts +24 -0
  22. package/_dist/components/Pager/PagerContext.d.ts +23 -0
  23. package/_dist/components/Pager/PagerItem.d.ts +14 -0
  24. package/_dist/components/Pager/usePaginationUI.d.ts +1 -0
  25. package/_dist/components/Panel/Panel.d.ts +30 -0
  26. package/_dist/components/PantheonLogo/PantheonLogo.d.ts +42 -0
  27. package/_dist/components/PantheonLogo/pantheon-logo-data.d.ts +4 -0
  28. package/_dist/components/PlatformIcon/PlatformIcon.d.ts +13 -0
  29. package/_dist/components/Popover/Popover.d.ts +57 -0
  30. package/_dist/components/PullQuote/PullQuote.d.ts +34 -0
  31. package/_dist/components/Skiplink/Skiplink.d.ts +21 -0
  32. package/_dist/components/SocialLinks/SocialLinks.d.ts +13 -0
  33. package/_dist/components/StatusIndicator/StatusIndicator.d.ts +20 -0
  34. package/_dist/components/Stepper/Stepper.d.ts +46 -0
  35. package/_dist/components/Table/Table.d.ts +15 -0
  36. package/_dist/components/TableOfContents/TableOfContents.d.ts +25 -0
  37. package/_dist/components/Tabs/Tabs.d.ts +60 -0
  38. package/_dist/components/Tag/Tag.d.ts +39 -0
  39. package/_dist/components/Tooltip/Tooltip.d.ts +51 -0
  40. package/_dist/components/badges/IndicatorBadge/IndicatorBadge.d.ts +27 -0
  41. package/_dist/components/badges/StatusBadge/StatusBadge.d.ts +35 -0
  42. package/_dist/components/badges/Tally/Tally.d.ts +35 -0
  43. package/_dist/components/buttons/Button/Button.d.ts +5 -0
  44. package/_dist/components/buttons/ButtonLink/ButtonLink.d.ts +25 -0
  45. package/_dist/components/buttons/IconButton/IconButton.d.ts +53 -0
  46. package/_dist/components/buttons/MenuButton/MenuButton.d.ts +63 -0
  47. package/_dist/components/buttons/SegmentedButton/SegmentedButton.d.ts +54 -0
  48. package/_dist/components/buttons/SplitButton/SplitButton.d.ts +36 -0
  49. package/_dist/components/buttons/ToggleButton/ToggleButton.d.ts +35 -0
  50. package/_dist/components/cards/Card/Card.d.ts +30 -0
  51. package/_dist/components/cards/CardSelectGroup/CardSelectGroup.d.ts +38 -0
  52. package/_dist/components/cards/LinksCard/LinksCard.d.ts +17 -0
  53. package/_dist/components/cards/NewSiteCard/NewSiteCard.d.ts +25 -0
  54. package/_dist/components/cards/PricingCard/PricingCard.d.ts +64 -0
  55. package/_dist/components/cards/SiteCard/SiteCard.d.ts +25 -0
  56. package/_dist/components/expansion-panels/ExpansionPanel/ExpansionPanel.d.ts +19 -0
  57. package/_dist/components/expansion-panels/ExpansionPanelGroup/ExpansionPanelGroup.d.ts +15 -0
  58. package/_dist/components/footer/FooterHeading/FooterHeading.d.ts +15 -0
  59. package/_dist/components/footer/FooterLinks/FooterLinks.d.ts +17 -0
  60. package/_dist/components/footer/SiteFooter/SiteFooter.d.ts +18 -0
  61. package/_dist/components/inputs/Checkbox/Checkbox.d.ts +92 -0
  62. package/_dist/components/inputs/CheckboxFieldset/CheckboxFieldset.d.ts +60 -0
  63. package/_dist/components/inputs/CheckboxGroup/CheckboxGroup.d.ts +76 -0
  64. package/_dist/components/inputs/Combobox/Combobox.d.ts +125 -0
  65. package/_dist/components/inputs/FileUpload/FileUpload.d.ts +37 -0
  66. package/_dist/components/inputs/InputFormatted/InputFormatted.d.ts +35 -0
  67. package/_dist/components/inputs/InputGroup/InputGroup.d.ts +19 -0
  68. package/_dist/components/inputs/InputObscured/InputObscured.d.ts +33 -0
  69. package/_dist/components/inputs/InputText/InputText.d.ts +75 -0
  70. package/_dist/components/inputs/InputWrapper/InputWrapper.d.ts +5 -0
  71. package/_dist/components/inputs/RadioGroup/RadioGroup.d.ts +46 -0
  72. package/_dist/components/inputs/Select/Select.d.ts +45 -0
  73. package/_dist/components/inputs/Switch/Switch.d.ts +74 -0
  74. package/_dist/components/inputs/TextInput/TextInput.d.ts +127 -0
  75. package/_dist/components/inputs/Textarea/Textarea.d.ts +39 -0
  76. package/_dist/components/inputs/ToggleSwitch/ToggleSwitch.d.ts +33 -0
  77. package/_dist/components/inputs/input-types.d.ts +1 -0
  78. package/_dist/components/inputs/input-utilities.d.ts +61 -0
  79. package/_dist/components/inputs/inputs-common.d.ts +40 -0
  80. package/_dist/components/navigation/DashboardNav/DashboardNavItem.d.ts +25 -0
  81. package/_dist/components/navigation/DashboardNav/dashboard-nav-sample-content.d.ts +30 -0
  82. package/_dist/components/navigation/DashboardNav/dashboard-nav-utilities.d.ts +4 -0
  83. package/_dist/components/navigation/DashboardSearch/DashboardSearch.d.ts +69 -0
  84. package/_dist/components/navigation/DashboardSearch/SiteOptionDisplay.d.ts +10 -0
  85. package/_dist/components/navigation/DropdownMenu/DropdownMenu.d.ts +28 -0
  86. package/_dist/components/navigation/NavMenu/NavMenu.d.ts +19 -0
  87. package/_dist/components/navigation/NavMenu/NavMenuDropdown.d.ts +14 -0
  88. package/_dist/components/navigation/Navbar/Navbar.d.ts +33 -0
  89. package/_dist/components/navigation/SideNav/SideNav.d.ts +47 -0
  90. package/_dist/components/navigation/SideNavCompact/SideNavCompact.d.ts +47 -0
  91. package/_dist/components/navigation/UserMenu/UserMenu.d.ts +69 -0
  92. package/_dist/components/navigation/UserMenu/user-menu-sample-content.d.ts +2 -0
  93. package/_dist/components/navigation/WorkspaceSelector/WorkspaceSelector.d.ts +58 -0
  94. package/_dist/components/navigation/navigation-types.d.ts +39 -0
  95. package/_dist/components/navigation/navigation-utilities.d.ts +7 -0
  96. package/_dist/components/notifications/Banner/Banner.d.ts +47 -0
  97. package/_dist/components/notifications/InlineMessage/InlineMessage.d.ts +37 -0
  98. package/_dist/components/notifications/SectionMessage/SectionMessage.d.ts +47 -0
  99. package/_dist/components/notifications/Toaster/Toast.d.ts +30 -0
  100. package/_dist/components/notifications/Toaster/Toaster.d.ts +16 -0
  101. package/_dist/components/notifications/Toaster/useToast.d.ts +2 -0
  102. package/_dist/components/progress-indicators/ProgressBar/ProgressBar.d.ts +53 -0
  103. package/_dist/components/progress-indicators/ProgressRing/ProgressRing.d.ts +41 -0
  104. package/_dist/components/progress-indicators/Spinner/Spinner.d.ts +33 -0
  105. package/_dist/components/tiles/AvatarTileList/AvatarTileList.d.ts +22 -0
  106. package/_dist/components/tiles/StatsTileList/StatsTileList.d.ts +26 -0
  107. package/_dist/components/tiles/Tile/Tile.d.ts +23 -0
  108. package/_dist/components/tiles/TileGrid/TileGrid.d.ts +38 -0
  109. package/_dist/css/component-css/pds-avatar-tile-list.css +1 -0
  110. package/_dist/css/component-css/pds-avatar.css +1 -0
  111. package/_dist/css/component-css/pds-banner.css +1 -0
  112. package/_dist/css/component-css/pds-breadcrumbs.css +1 -0
  113. package/_dist/css/component-css/pds-button-link.css +1 -0
  114. package/_dist/css/component-css/pds-button.css +81 -0
  115. package/_dist/css/component-css/pds-callout.css +1 -0
  116. package/_dist/css/component-css/pds-card-select-group.css +1 -0
  117. package/_dist/css/component-css/pds-card.css +1 -0
  118. package/_dist/css/component-css/pds-checkbox-group.css +1 -0
  119. package/_dist/css/component-css/pds-checkbox.css +1 -0
  120. package/_dist/css/component-css/pds-combobox.css +1 -0
  121. package/_dist/css/component-css/pds-comparison-list.css +1 -0
  122. package/_dist/css/component-css/pds-cta-link.css +1 -0
  123. package/_dist/css/component-css/pds-cta-slice.css +1 -0
  124. package/_dist/css/component-css/pds-dashboard-nav.css +5 -0
  125. package/_dist/css/component-css/pds-dashboard-search.css +1 -0
  126. package/_dist/css/component-css/pds-dropdown-menu.css +2 -0
  127. package/_dist/css/component-css/pds-expansion-panel-group.css +1 -0
  128. package/_dist/css/component-css/pds-expansion-panel.css +1 -0
  129. package/_dist/css/component-css/pds-file-upload.css +5 -0
  130. package/_dist/css/component-css/pds-footer-heading.css +1 -0
  131. package/_dist/css/component-css/pds-footer-links.css +1 -0
  132. package/_dist/css/component-css/pds-heading.css +1 -0
  133. package/_dist/css/component-css/pds-icon-button.css +17 -0
  134. package/_dist/css/component-css/pds-icon-story-only.css +1 -0
  135. package/_dist/css/component-css/pds-index.css +157 -0
  136. package/_dist/css/component-css/pds-indicator-badge.css +37 -0
  137. package/_dist/css/component-css/pds-inline-message.css +1 -0
  138. package/_dist/css/component-css/pds-input-group.css +1 -0
  139. package/_dist/css/component-css/pds-input-text.css +1 -0
  140. package/_dist/css/component-css/pds-input-utilities.css +1 -0
  141. package/_dist/css/component-css/pds-input-wrapper.css +1 -0
  142. package/_dist/css/component-css/pds-inputs-common-deprecated.css +1 -0
  143. package/_dist/css/component-css/pds-inputs-common.css +1 -0
  144. package/_dist/css/component-css/pds-links-card.css +1 -0
  145. package/_dist/css/component-css/pds-menu-button.css +1 -0
  146. package/_dist/css/component-css/pds-modal.css +1 -0
  147. package/_dist/css/component-css/pds-nav-menu.css +1 -0
  148. package/_dist/css/component-css/pds-navbar.css +3 -0
  149. package/_dist/css/component-css/pds-new-site-card.css +1 -0
  150. package/_dist/css/component-css/pds-pager.css +1 -0
  151. package/_dist/css/component-css/pds-panel.css +1 -0
  152. package/_dist/css/component-css/pds-pantheon-logo.css +1 -0
  153. package/_dist/css/component-css/pds-platform-icon.css +1 -0
  154. package/_dist/css/component-css/pds-popover.css +1 -0
  155. package/_dist/css/component-css/pds-pricing-card-local.css +1 -0
  156. package/_dist/css/component-css/pds-pricing-card.css +1 -0
  157. package/_dist/css/component-css/pds-progress-bar.css +1 -0
  158. package/_dist/css/component-css/pds-progress-ring.css +1 -0
  159. package/_dist/css/component-css/pds-pull-quote.css +1 -0
  160. package/_dist/css/component-css/pds-radio-group.css +1 -0
  161. package/_dist/css/component-css/pds-section-message.css +1 -0
  162. package/_dist/css/component-css/pds-segmented-button.css +1 -0
  163. package/_dist/css/component-css/pds-select.css +1 -0
  164. package/_dist/css/component-css/pds-side-nav-compact.css +1 -0
  165. package/_dist/css/component-css/pds-side-nav.css +1 -0
  166. package/_dist/css/component-css/pds-site-card.css +1 -0
  167. package/_dist/css/component-css/pds-site-footer.css +1 -0
  168. package/_dist/css/component-css/pds-skiplink.css +1 -0
  169. package/_dist/css/component-css/pds-social-links.css +1 -0
  170. package/_dist/css/component-css/pds-spinner.css +1 -0
  171. package/_dist/css/component-css/pds-split-button.css +2 -0
  172. package/_dist/css/component-css/pds-stats-tile-list.css +1 -0
  173. package/_dist/css/component-css/pds-status-badge.css +9 -0
  174. package/_dist/css/component-css/pds-status-indicator.css +1 -0
  175. package/_dist/css/component-css/pds-stepper.css +1 -0
  176. package/_dist/css/component-css/pds-switch.css +3 -0
  177. package/_dist/css/component-css/pds-table-of-contents.css +1 -0
  178. package/_dist/css/component-css/pds-table.css +1 -0
  179. package/_dist/css/component-css/pds-tabs.css +1 -0
  180. package/_dist/css/component-css/pds-tag.css +1 -0
  181. package/_dist/css/component-css/pds-tally.css +1 -0
  182. package/_dist/css/component-css/pds-text-input.css +1 -0
  183. package/_dist/css/component-css/pds-textarea.css +1 -0
  184. package/_dist/css/component-css/pds-tile.css +1 -0
  185. package/_dist/css/component-css/pds-tiles-common.css +1 -0
  186. package/_dist/css/component-css/pds-toaster.css +1 -0
  187. package/_dist/css/component-css/pds-toggle-button.css +1 -0
  188. package/_dist/css/component-css/pds-toggle-switch.css +3 -0
  189. package/_dist/css/component-css/pds-tooltip.css +1 -0
  190. package/_dist/css/component-css/pds-user-menu-story-only.css +1 -0
  191. package/_dist/css/component-css/pds-user-menu.css +1 -0
  192. package/_dist/css/component-css/pds-workspace-selector.css +1 -0
  193. package/_dist/css/design-tokens/pds-design-tokens-dark-mode.css +272 -0
  194. package/_dist/css/design-tokens/pds-design-tokens-light-mode.css +333 -0
  195. package/_dist/css/design-tokens/pds-design-tokens.css +105 -0
  196. package/_dist/css/pds-components.css +120 -70
  197. package/_dist/css/pds-core.css +6 -2
  198. package/_dist/css/pds-layouts.css +2 -1
  199. package/_dist/index.css +1 -0
  200. package/_dist/index.d.ts +92 -0
  201. package/_dist/index.js +11273 -0
  202. package/_dist/index.js.map +1 -0
  203. package/_dist/layouts/Container/Container.d.ts +16 -0
  204. package/_dist/layouts/DashboardLayout/DashboardLayout.d.ts +44 -0
  205. package/_dist/layouts/DashboardLayout/DemoContent.d.ts +2 -0
  206. package/_dist/layouts/FlexContainer/FlexContainer.d.ts +27 -0
  207. package/_dist/layouts/GlobalWrapper/GlobalWrapper.d.ts +19 -0
  208. package/_dist/layouts/SidebarLayout/SidebarLayout.d.ts +21 -0
  209. package/_dist/layouts/StepperLayout/StepperLayout.d.ts +13 -0
  210. package/_dist/layouts/ThreeItemLayout/ThreeItemLayout.d.ts +15 -0
  211. package/_dist/layouts/TwoItemLayout/TwoItemLayout.d.ts +17 -0
  212. package/_dist/libs/components/custom-types.d.ts +5 -0
  213. package/_dist/libs/components/customPropTypes.d.ts +85 -0
  214. package/_dist/libs/components/utils.d.ts +3 -0
  215. package/_dist/utilities/context-providers/ResponsiveContext/ResponsiveContext.d.ts +6 -0
  216. package/_dist/vars/spacing.d.ts +17 -0
  217. package/_dist/vars/z-index.d.ts +5 -0
  218. package/package.json +85 -43
  219. package/_dist/cjs/index.js +0 -98
  220. package/_dist/cjs/index.js.map +0 -1
  221. package/_dist/esm/index.js +0 -98
  222. package/_dist/esm/index.js.map +0 -1
@@ -0,0 +1,74 @@
1
+ import React, { ChangeEvent, ComponentPropsWithoutRef } from 'react';
2
+ import './switch.css';
3
+ type SwitchPlacement = 'right' | 'below';
4
+ /**
5
+ * Prop types for Switch
6
+ */
7
+ export interface SwitchProps extends ComponentPropsWithoutRef<'div'> {
8
+ /**
9
+ * Is the field checked?
10
+ */
11
+ checked?: boolean;
12
+ /**
13
+ * Initial value for the input field. Only valid if the input is uncontrolled. Cannot be used in conjunction with the `checked` prop.
14
+ */
15
+ defaultChecked?: boolean;
16
+ /**
17
+ * Is the field disabled?
18
+ */
19
+ disabled?: boolean;
20
+ /**
21
+ * Input ID.
22
+ */
23
+ id: string;
24
+ /**
25
+ * Additional props for the `<input>` element.
26
+ */
27
+ inputProps?: ComponentPropsWithoutRef<'input'>;
28
+ /**
29
+ * Width of the input field. Accepts a number in pixels. Leave blank for width: 100%.
30
+ */
31
+ inputWidth?: number;
32
+ /**
33
+ * Label of the switch field.
34
+ */
35
+ label: string;
36
+ /**
37
+ * Message or description used to help clarify the usage of the input.
38
+ */
39
+ message?: string;
40
+ /**
41
+ * Status text for when switch is off.
42
+ */
43
+ offLabel?: string;
44
+ /**
45
+ * onChange event handler. Controlled inputs should use this to manage the input value. Uncontrolled inputs will manage their own state, but may still use this to access the event object.
46
+ */
47
+ onChange?: (e: ChangeEvent<HTMLInputElement>) => void;
48
+ /**
49
+ * Status text for when switch is on.
50
+ */
51
+ onLabel?: string;
52
+ /**
53
+ * Is this field required?
54
+ */
55
+ required?: boolean;
56
+ /**
57
+ * Should the label be visible? If false, it will render for screen readers only.
58
+ */
59
+ showLabel?: boolean;
60
+ /**
61
+ * Show toggle status label next to switch. If false, icons will render and the text will still be available to screen readers.
62
+ */
63
+ showStatusLabel?: boolean;
64
+ /**
65
+ * Determines switch placement, default set to `right`.
66
+ */
67
+ switchPlacement?: SwitchPlacement;
68
+ /**
69
+ * Additional class names for input.
70
+ */
71
+ className?: string;
72
+ }
73
+ export declare const Switch: React.ForwardRefExoticComponent<SwitchProps & React.RefAttributes<HTMLInputElement>>;
74
+ export {};
@@ -0,0 +1,127 @@
1
+ import React, { ComponentPropsWithoutRef, ChangeEvent, FocusEvent } from 'react';
2
+ import { ValidationStatus } from '../input-types';
3
+ import './text-input.css';
4
+ type TranslationStringProps = {
5
+ clearButton: string;
6
+ counterOverLimit?: string;
7
+ searchShortcut: string;
8
+ visibilityStatus: string;
9
+ visibilityToggleHide: string;
10
+ visibilityToggleShow: string;
11
+ };
12
+ type HtmlInputTypes = 'text' | 'number' | 'email' | 'password' | 'tel' | 'url' | 'search';
13
+ /**
14
+ * Prop types for TextInput
15
+ */
16
+ export interface TextInputProps extends ComponentPropsWithoutRef<'div'> {
17
+ /**
18
+ * Auto complete attribute for the input field. The attribute value is either the keyword `off` or `on`, or an ordered list of space-separated tokens. Password fields are automatically off.
19
+ */
20
+ autoComplete?: string;
21
+ /**
22
+ * Maximum character count for the character counter. Leave blank for no counter. Not valid for type `password`.
23
+ */
24
+ counterMaxLength?: number;
25
+ /**
26
+ * Initial value for the input field. Setting this prop automatically makes the input uncontrolled. Cannot be used in conjunction with the `value` prop.
27
+ */
28
+ defaultValue?: string;
29
+ /**
30
+ * Is the field disabled?
31
+ */
32
+ disabled?: boolean;
33
+ /**
34
+ * Does the input contain a clear button?
35
+ */
36
+ hasClearButton?: boolean;
37
+ /**
38
+ * Does the input contain the search shortcut?
39
+ * Only valid if the input type is `search`.
40
+ */
41
+ hasSearchShortcut?: boolean;
42
+ /**
43
+ * Input ID.
44
+ */
45
+ id: string;
46
+ /**
47
+ * Additional props for the `<input>` element.
48
+ */
49
+ inputProps?: ComponentPropsWithoutRef<'input'>;
50
+ /**
51
+ * Width of the input field. Accepts a number in pixels. Leave blank for width: 100%.
52
+ */
53
+ inputWidth?: number;
54
+ /**
55
+ * Input label.
56
+ */
57
+ label: string;
58
+ /**
59
+ * Input message. Used to provide supplemental text. Will be displayed below the input field.
60
+ */
61
+ message?: string;
62
+ /**
63
+ * onBlur event handler.
64
+ */
65
+ onBlur?: (e: FocusEvent<HTMLInputElement>) => void;
66
+ /**
67
+ * onChange event handler. Controlled inputs should use this to manage the input value. Uncontrolled inputs will manage their own state, but may still use this to access the event object.
68
+ */
69
+ onChange?: (e: ChangeEvent<HTMLInputElement>) => void;
70
+ /**
71
+ * Function to clear the input field. Only necessary if the input is controlled. This functionality is built-in for uncontrolled inputs.
72
+ */
73
+ onClear?: () => void;
74
+ /**
75
+ * onFocus event handler.
76
+ */
77
+ onFocus?: (e: FocusEvent<HTMLInputElement>) => void;
78
+ /**
79
+ * Optional placeholder text to display when the input field is empty.
80
+ */
81
+ placeholder?: string;
82
+ /**
83
+ * Is the field read-only?
84
+ */
85
+ readonly?: boolean;
86
+ /**
87
+ * Is this field required?
88
+ */
89
+ required?: boolean;
90
+ /**
91
+ * Should the label be visible? If false, it will render for screen readers only.
92
+ */
93
+ showLabel?: boolean;
94
+ /**
95
+ * Show Toggle visibility control for input. Valid for type `password` only.
96
+ */
97
+ showVisibilityToggle?: boolean;
98
+ /**
99
+ * Translation strings for various labels or other visually-hidden text.
100
+ */
101
+ translationStrings?: TranslationStringProps;
102
+ /**
103
+ * Type of input field to use.
104
+ */
105
+ type: HtmlInputTypes;
106
+ /**
107
+ * Validation message for the input field based on the validation status.
108
+ */
109
+ validationMessage?: string;
110
+ /**
111
+ * Validation status of the input field.
112
+ */
113
+ validationStatus?: ValidationStatus;
114
+ /**
115
+ * Value of the input field. Used to set the value of the input field when controlled. Cannot be used in conjunction with the `defaultValue` prop.
116
+ */
117
+ value?: string;
118
+ /**
119
+ * Additional class names for input.
120
+ */
121
+ className?: string;
122
+ }
123
+ /**
124
+ * TextInput UI component
125
+ */
126
+ export declare const TextInput: React.ForwardRefExoticComponent<TextInputProps & React.RefAttributes<HTMLInputElement>>;
127
+ export {};
@@ -0,0 +1,39 @@
1
+ export function Textarea({ counterFunction, disabled, id, initialValue, inputWidth, isResizable, label, message, onChange, placeholder, readonly, required, rows, validationFunction, className, ...props }: {
2
+ [x: string]: any;
3
+ counterFunction?: () => void;
4
+ disabled?: boolean;
5
+ id: any;
6
+ initialValue?: string;
7
+ inputWidth: any;
8
+ isResizable?: boolean;
9
+ label: any;
10
+ message: any;
11
+ onChange: any;
12
+ placeholder: any;
13
+ readonly?: boolean;
14
+ required?: boolean;
15
+ rows?: number;
16
+ validationFunction: any;
17
+ className: any;
18
+ }): React.JSX.Element;
19
+ export namespace Textarea {
20
+ namespace propTypes {
21
+ let counterFunction: PropTypes.Requireable<(...args: any[]) => any>;
22
+ let disabled: PropTypes.Requireable<boolean>;
23
+ let id: PropTypes.Validator<string>;
24
+ let initialValue: PropTypes.Requireable<string>;
25
+ let isResizable: PropTypes.Requireable<boolean>;
26
+ let inputWidth: PropTypes.Requireable<number>;
27
+ let label: PropTypes.Validator<string>;
28
+ let message: PropTypes.Requireable<string>;
29
+ let onChange: PropTypes.Requireable<(...args: any[]) => any>;
30
+ let placeholder: PropTypes.Requireable<string>;
31
+ let readonly: PropTypes.Requireable<boolean>;
32
+ let required: PropTypes.Requireable<boolean>;
33
+ let rows: PropTypes.Requireable<number>;
34
+ let validationFunction: PropTypes.Requireable<(...args: any[]) => any>;
35
+ let className: PropTypes.Requireable<string>;
36
+ }
37
+ }
38
+ import React from 'react';
39
+ import PropTypes from 'prop-types';
@@ -0,0 +1,33 @@
1
+ export function ToggleSwitch({ disabled, id, inputWidth, label, message, onChange, required, showLabel, showStatusLabel, statusOnLabel, statusOffLabel, className, ...props }: {
2
+ [x: string]: any;
3
+ disabled?: boolean;
4
+ id: any;
5
+ inputWidth: any;
6
+ label: any;
7
+ message: any;
8
+ onChange: any;
9
+ required?: boolean;
10
+ showLabel?: boolean;
11
+ showStatusLabel?: boolean;
12
+ statusOnLabel?: string;
13
+ statusOffLabel?: string;
14
+ className: any;
15
+ }): React.JSX.Element;
16
+ export namespace ToggleSwitch {
17
+ namespace propTypes {
18
+ let disabled: PropTypes.Requireable<boolean>;
19
+ let id: PropTypes.Validator<string>;
20
+ let inputWidth: PropTypes.Requireable<number>;
21
+ let label: PropTypes.Validator<string>;
22
+ let message: PropTypes.Requireable<string>;
23
+ let onChange: PropTypes.Requireable<(...args: any[]) => any>;
24
+ let required: PropTypes.Requireable<boolean>;
25
+ let showLabel: PropTypes.Requireable<boolean>;
26
+ let showStatusLabel: PropTypes.Requireable<boolean>;
27
+ let statusOffLabel: PropTypes.Requireable<string>;
28
+ let statusOnLabel: PropTypes.Requireable<string>;
29
+ let className: PropTypes.Requireable<string>;
30
+ }
31
+ }
32
+ import React from 'react';
33
+ import PropTypes from 'prop-types';
@@ -0,0 +1 @@
1
+ export type ValidationStatus = 'success' | 'error';
@@ -0,0 +1,61 @@
1
+ import React, { ComponentPropsWithoutRef, MouseEventHandler, ReactNode } from 'react';
2
+ import './input-utilities.css';
3
+ export declare const inputCommonClasses: {
4
+ base: string;
5
+ disabled: string;
6
+ required: string;
7
+ error: string;
8
+ success: string;
9
+ readonly: string;
10
+ };
11
+ export declare const getInputWidthStyle: (inputWidth: number) => {
12
+ width: string;
13
+ };
14
+ export declare const RequiredIcon: () => React.JSX.Element;
15
+ export declare const InputLabel: ({ id, label, showLabel, required, disabled, isLegend, className, }: {
16
+ id: string;
17
+ label: string;
18
+ showLabel: boolean;
19
+ required: boolean;
20
+ disabled: boolean;
21
+ isLegend?: boolean;
22
+ className?: string;
23
+ }) => React.JSX.Element;
24
+ export declare const InputMessage: ({ id, message, hasValidationMessage, validationMessageHasDecorators, validationStatus, className, }: {
25
+ id: string;
26
+ message: string;
27
+ hasValidationMessage: boolean;
28
+ validationMessageHasDecorators?: boolean;
29
+ validationStatus: string;
30
+ className?: string;
31
+ }) => React.JSX.Element;
32
+ type DecoratorVariants = 'search' | 'error' | 'success';
33
+ export declare const InputDecorator: ({ variant }: {
34
+ variant: DecoratorVariants;
35
+ }) => React.JSX.Element;
36
+ export declare const SearchShortcut: ({ inputId, shortcutLabel, }: {
37
+ inputId: string;
38
+ shortcutLabel: string;
39
+ }) => React.JSX.Element;
40
+ export declare const ClearButton: ({ id, clearLabel, handleClearInput, }: {
41
+ id: string;
42
+ clearLabel: string;
43
+ handleClearInput: MouseEventHandler<HTMLButtonElement>;
44
+ }) => React.JSX.Element;
45
+ export declare const CharacterCounter: ({ id, currentLength, maxLength, overLimitMessage, }: {
46
+ id: string;
47
+ currentLength: number;
48
+ maxLength: number;
49
+ overLimitMessage: string;
50
+ }) => React.JSX.Element;
51
+ export declare const HiddenLabel: ({ label, ...props }: {
52
+ [x: string]: any;
53
+ label: any;
54
+ }) => React.JSX.Element;
55
+ interface SelectOptionProps extends ComponentPropsWithoutRef<'li'> {
56
+ children?: ReactNode;
57
+ isActive?: boolean;
58
+ className?: string;
59
+ }
60
+ export declare const SelectOption: React.ForwardRefExoticComponent<SelectOptionProps & React.RefAttributes<HTMLLIElement>>;
61
+ export {};
@@ -0,0 +1,40 @@
1
+ export namespace cssClassesList {
2
+ let error: string;
3
+ let success: string;
4
+ let required: string;
5
+ let disabled: string;
6
+ }
7
+ export function ClearButton({ id, label, handleClearInput }: {
8
+ id: any;
9
+ label: any;
10
+ handleClearInput: any;
11
+ }): React.JSX.Element;
12
+ export namespace ClearButton {
13
+ namespace propTypes {
14
+ let id: PropTypes.Validator<string>;
15
+ let label: PropTypes.Validator<string>;
16
+ let handleClearInput: PropTypes.Requireable<(...args: any[]) => any>;
17
+ }
18
+ }
19
+ export function Decorator({ type }: {
20
+ type: any;
21
+ }): React.JSX.Element;
22
+ export namespace Decorator {
23
+ export namespace propTypes_1 {
24
+ let type: PropTypes.Validator<string>;
25
+ }
26
+ export { propTypes_1 as propTypes };
27
+ }
28
+ export function SearchShortcut({ label }: {
29
+ label: any;
30
+ }): React.JSX.Element;
31
+ export namespace SearchShortcut {
32
+ export namespace propTypes_2 {
33
+ let label_1: PropTypes.Validator<string>;
34
+ export { label_1 as label };
35
+ }
36
+ export { propTypes_2 as propTypes };
37
+ }
38
+ export const SelectOption: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
39
+ import React from 'react';
40
+ import PropTypes from 'prop-types';
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import { NavigationItem } from '@components/navigation/navigation-types';
3
+ import { PDSIcon } from '@components/Icon/Icon';
4
+ import './dashboard-nav.css';
5
+ export type DashboardNavItemProps = NavigationItem & {
6
+ /**
7
+ * Icon to display next to the link content.
8
+ */
9
+ icon?: PDSIcon;
10
+ /**
11
+ * Flag indicating whether the sidebar is expanded.
12
+ */
13
+ isSidebarExpanded: boolean;
14
+ /**
15
+ * Labels for translatable strings.
16
+ */
17
+ labels?: {
18
+ submenu: string;
19
+ toggle: string;
20
+ };
21
+ };
22
+ /**
23
+ * DashboardNavItem UI component
24
+ */
25
+ export declare const DashboardNavItem: ({ icon, isActive, isSidebarExpanded, labels, linkContent, links, }: DashboardNavItem) => React.JSX.Element;
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ export declare const dashboardNavSampleMenuItems: ({
3
+ icon: string;
4
+ linkContent: React.JSX.Element;
5
+ links?: undefined;
6
+ isActive?: undefined;
7
+ } | {
8
+ icon: string;
9
+ linkContent: string;
10
+ links: {
11
+ linkContent: React.JSX.Element;
12
+ }[];
13
+ isActive?: undefined;
14
+ } | {
15
+ icon: string;
16
+ linkContent: React.JSX.Element;
17
+ isActive: boolean;
18
+ links?: undefined;
19
+ })[];
20
+ export declare const dashboardNavSampleMenuItemsRR: ({
21
+ icon: string;
22
+ linkContent: React.JSX.Element;
23
+ links?: undefined;
24
+ } | {
25
+ icon: string;
26
+ linkContent: React.JSX.Element;
27
+ links: {
28
+ linkContent: React.JSX.Element;
29
+ }[];
30
+ })[];
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { PDSIcon } from '@components/Icon/Icon';
3
+ import { NavigationItem } from '@components/navigation/navigation-types';
4
+ export declare const processDashboardNavLinkContent: (baseClass: string, linkContent: JSX.Element | string, links?: NavigationItem[], icon?: PDSIcon) => JSX.Element;
@@ -0,0 +1,69 @@
1
+ export function DashboardSearch({ disabled, id, isLoading, label, labelStrings, loadingText, noResultsText, onFocus, onOptionSelect, placeholder, siteList, startingRightPosition, className, ...props }: {
2
+ [x: string]: any;
3
+ disabled?: boolean;
4
+ id: any;
5
+ isLoading?: boolean;
6
+ label?: string;
7
+ labelStrings?: {
8
+ clearButton: string;
9
+ inputInstructions: string;
10
+ openSearchButton: string;
11
+ };
12
+ loadingText?: string;
13
+ noResultsText?: string;
14
+ onFocus: any;
15
+ onOptionSelect: any;
16
+ placeholder?: string;
17
+ siteList: any;
18
+ startingRightPosition?: number;
19
+ className: any;
20
+ }): React.JSX.Element;
21
+ export namespace DashboardSearch {
22
+ namespace propTypes {
23
+ let disabled: PropTypes.Requireable<boolean>;
24
+ let id: PropTypes.Requireable<string>;
25
+ let isLoading: PropTypes.Requireable<boolean>;
26
+ let label: PropTypes.Requireable<string>;
27
+ let labelStrings: PropTypes.Requireable<PropTypes.InferProps<{
28
+ /**
29
+ * Clear button label
30
+ */
31
+ clearButton: PropTypes.Requireable<string>;
32
+ /**
33
+ * Input instructions
34
+ */
35
+ inputInstructions: PropTypes.Requireable<string>;
36
+ /**
37
+ * Open search button label
38
+ */
39
+ openSearchButton: PropTypes.Requireable<string>;
40
+ }>>;
41
+ let loadingText: PropTypes.Requireable<string>;
42
+ let noResultsText: PropTypes.Requireable<string>;
43
+ let onFocus: PropTypes.Requireable<(...args: any[]) => any>;
44
+ let onOptionSelect: PropTypes.Requireable<(...args: any[]) => any>;
45
+ let placeholder: PropTypes.Requireable<string>;
46
+ let siteList: PropTypes.Requireable<PropTypes.InferProps<{
47
+ /**
48
+ * Site ID
49
+ */
50
+ id: PropTypes.Requireable<string>;
51
+ /**
52
+ * Site name.
53
+ */
54
+ name: PropTypes.Requireable<string>;
55
+ /**
56
+ * Site status
57
+ */
58
+ status: PropTypes.Requireable<string>;
59
+ /**
60
+ * Site type
61
+ */
62
+ type: PropTypes.Requireable<string>;
63
+ }>[]>;
64
+ let startingRightPosition: PropTypes.Requireable<number>;
65
+ let className: PropTypes.Requireable<string>;
66
+ }
67
+ }
68
+ import React from 'react';
69
+ import PropTypes from 'prop-types';
@@ -0,0 +1,10 @@
1
+ export function SiteOptionDisplay({ option }: {
2
+ option: any;
3
+ }): React.JSX.Element;
4
+ export namespace SiteOptionDisplay {
5
+ namespace propTypes {
6
+ let option: PropTypes.Requireable<object>;
7
+ }
8
+ }
9
+ import React from 'react';
10
+ import PropTypes from 'prop-types';
@@ -0,0 +1,28 @@
1
+ import React, { ComponentPropsWithoutRef } from 'react';
2
+ import { NavigationItem } from '@components/navigation/navigation-types';
3
+ import './dropdown-menu.css';
4
+ /**
5
+ * Prop types for DropdownMenu
6
+ */
7
+ export interface DropdownMenuProps extends ComponentPropsWithoutRef<'div'> {
8
+ /**
9
+ * Heading text. If a string is passed, it will be rendered as a heading. If a link is passed, it will be rendered as a link.
10
+ */
11
+ headingText?: string | JSX.Element;
12
+ /**
13
+ * Menu items to render.
14
+ */
15
+ menuItems: NavigationItem[];
16
+ /**
17
+ * Text to display in the mobile menu trigger button when no active link is found.
18
+ */
19
+ selectTextFallback: string;
20
+ /**
21
+ * Additional class names
22
+ */
23
+ className?: string;
24
+ }
25
+ /**
26
+ * DropdownMenu UI component
27
+ */
28
+ export declare const DropdownMenu: ({ headingText, menuItems, selectTextFallback, className, ...props }: DropdownMenuProps) => React.JSX.Element;
@@ -0,0 +1,19 @@
1
+ export function NavMenu({ ariaLabel, colorType, menuItems, mobileMenuMaxWidth, className, ...props }: {
2
+ [x: string]: any;
3
+ ariaLabel?: string;
4
+ colorType?: string;
5
+ menuItems: any;
6
+ mobileMenuMaxWidth?: number;
7
+ className: any;
8
+ }): React.JSX.Element;
9
+ export namespace NavMenu {
10
+ namespace propTypes {
11
+ let ariaLabel: PropTypes.Validator<string>;
12
+ let colorType: PropTypes.Requireable<string>;
13
+ let menuItems: PropTypes.Requireable<any[]>;
14
+ let mobileMenuMaxWidth: PropTypes.Requireable<number>;
15
+ let className: PropTypes.Requireable<string>;
16
+ }
17
+ }
18
+ import React from 'react';
19
+ import PropTypes from 'prop-types';
@@ -0,0 +1,14 @@
1
+ export function NavMenuDropdown({ items, label, mobileMenuMaxWidth }: {
2
+ items: any;
3
+ label: any;
4
+ mobileMenuMaxWidth?: number;
5
+ }): React.JSX.Element;
6
+ export namespace NavMenuDropdown {
7
+ namespace propTypes {
8
+ let items: PropTypes.Requireable<any[]>;
9
+ let label: PropTypes.Requireable<string>;
10
+ let mobileMenuMaxWidth: PropTypes.Requireable<number>;
11
+ }
12
+ }
13
+ import React from 'react';
14
+ import PropTypes from 'prop-types';
@@ -0,0 +1,33 @@
1
+ export function Navbar({ children, colorType, containerWidth, hideBorder, hideLogo, logoDisplay, logoLink, logoSrc, logoSubBrand, className, ...props }: {
2
+ [x: string]: any;
3
+ children: any;
4
+ colorType?: string;
5
+ containerWidth?: string;
6
+ hideBorder: any;
7
+ hideLogo?: boolean;
8
+ logoDisplay?: string;
9
+ logoLink?: React.JSX.Element;
10
+ logoSrc: any;
11
+ logoSubBrand: any;
12
+ className: any;
13
+ }): React.JSX.Element;
14
+ export namespace Navbar {
15
+ namespace propTypes {
16
+ export let colorType: PropTypes.Requireable<string>;
17
+ export let children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
18
+ export { ContainerWidth as containerWidth };
19
+ export let hideBorder: PropTypes.Requireable<boolean>;
20
+ export let hideLogo: PropTypes.Requireable<boolean>;
21
+ export let logoDisplay: PropTypes.Requireable<string>;
22
+ export let logoLink: PropTypes.Requireable<PropTypes.ReactNodeLike>;
23
+ export let logoSrc: PropTypes.Requireable<string>;
24
+ export let logoSubBrand: PropTypes.Requireable<PropTypes.InferProps<{
25
+ linkContent: PropTypes.Requireable<PropTypes.ReactNodeLike>;
26
+ text: PropTypes.Requireable<string>;
27
+ }>>;
28
+ export let className: PropTypes.Requireable<string>;
29
+ }
30
+ }
31
+ import React from 'react';
32
+ import PropTypes from 'prop-types';
33
+ import { ContainerWidth } from '@libs/components/customPropTypes';
@@ -0,0 +1,47 @@
1
+ import React, { ComponentPropsWithoutRef } from 'react';
2
+ import { NavigationItem } from '@components/navigation/navigation-types';
3
+ import './side-nav.css';
4
+ /**
5
+ * Prop types for SideNav
6
+ */
7
+ export interface SideNavProps extends ComponentPropsWithoutRef<'nav'> {
8
+ /**
9
+ * Aria label for the navigation.
10
+ */
11
+ ariaLabel: string;
12
+ /**
13
+ * Whether the menu should be rendered as a mobile menu when the viewport is at or below the mobileMenuMaxWidth.
14
+ */
15
+ hasMobileMenu?: boolean;
16
+ /**
17
+ * Heading text. If a link is passed, it will be rendered as a link.
18
+ */
19
+ headingText?: string | JSX.Element;
20
+ /**
21
+ * Labels for translatable strings.
22
+ */
23
+ labels?: {
24
+ submenu: string;
25
+ toggle: string;
26
+ };
27
+ /**
28
+ * Menu items to render.
29
+ */
30
+ menuItems: NavigationItem[];
31
+ /**
32
+ * Mobile menu will be enabled when viewport is at or below this number in pixels.
33
+ */
34
+ mobileMenuMaxWidth?: number;
35
+ /**
36
+ * Text to display in the mobile menu trigger button when no active link is found.
37
+ */
38
+ mobileMenuSelectTextFallback?: string;
39
+ /**
40
+ * Additional class names
41
+ */
42
+ className?: string;
43
+ }
44
+ /**
45
+ * SideNav UI component
46
+ */
47
+ export declare const SideNav: ({ ariaLabel, hasMobileMenu, headingText, labels, menuItems, mobileMenuMaxWidth, mobileMenuSelectTextFallback, className, ...props }: SideNavProps) => React.JSX.Element;