@pantheon-systems/pds-toolkit-react 1.0.0-dev.187 → 1.0.0-dev.189

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 (31) hide show
  1. package/_dist/components/Avatar/Avatar.d.ts +7 -3
  2. package/_dist/components/Icon/Icon.d.ts +17 -1
  3. package/_dist/components/Popover/Popover.d.ts +6 -5
  4. package/_dist/components/badges/IndicatorBadge/IndicatorBadge.d.ts +1 -1
  5. package/_dist/components/buttons/Button/Button.d.ts +55 -2
  6. package/_dist/components/cards/LinksCard/LinksCard.d.ts +28 -16
  7. package/_dist/components/cards/LinksCard/links-card-sample-data.d.ts +2 -0
  8. package/_dist/components/expansion-panels/ExpansionPanel/ExpansionPanel.d.ts +30 -17
  9. package/_dist/components/expansion-panels/ExpansionPanelGroup/ExpansionPanelGroup.d.ts +23 -14
  10. package/_dist/components/notifications/Toaster/Toast.d.ts +45 -29
  11. package/_dist/components/notifications/Toaster/Toaster.d.ts +26 -13
  12. package/_dist/components/notifications/Toaster/useToast.d.ts +13 -2
  13. package/_dist/css/component-css/pds-avatar.css +1 -1
  14. package/_dist/css/component-css/pds-dashboard-nav.css +1 -1
  15. package/_dist/css/component-css/pds-index.css +7 -5
  16. package/_dist/css/component-css/pds-indicator-badge.css +3 -1
  17. package/_dist/css/component-css/pds-links-card.css +1 -1
  18. package/_dist/css/component-css/pds-user-menu.css +1 -1
  19. package/_dist/css/component-css/pds-workspace-selector.css +1 -1
  20. package/_dist/css/design-tokens/pds-design-tokens-light-mode.css +511 -323
  21. package/_dist/css/pds-components.css +7 -5
  22. package/_dist/css/pds-core.css +49 -1
  23. package/_dist/index.css +1 -1
  24. package/_dist/index.d.ts +9 -8
  25. package/_dist/index.js +3587 -3732
  26. package/_dist/index.js.map +1 -1
  27. package/_dist/layouts/DashboardLayout/DashboardLayout.d.ts +1 -5
  28. package/_dist/layouts/ThreeItemLayout/ThreeItemLayout.d.ts +24 -14
  29. package/_dist/layouts/TwoItemLayout/TwoItemLayout.d.ts +28 -16
  30. package/_dist/libs/types/custom-types.d.ts +1 -0
  31. package/package.json +1 -1
@@ -2,9 +2,9 @@ import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
2
2
  import './avatar.css';
3
3
  interface AvatarProps extends ComponentPropsWithoutRef<'div'> {
4
4
  /**
5
- * Avatar size.
5
+ * If true, a user icon will be displayed with the fallback gradient when an image is not provided.
6
6
  */
7
- size?: 'xs' | 'sm' | 'md' | 'lg';
7
+ hasUserFallback?: boolean;
8
8
  /**
9
9
  * Avatar image.
10
10
  */
@@ -13,6 +13,10 @@ interface AvatarProps extends ComponentPropsWithoutRef<'div'> {
13
13
  * A link element using the router of your choice. Leave empty for no link.
14
14
  */
15
15
  linkContent?: ReactNode;
16
+ /**
17
+ * Avatar size.
18
+ */
19
+ size?: 'xs' | 'sm' | 'md' | 'lg';
16
20
  /**
17
21
  * Unique ID associated with the avatar. Can be workspace ID, user ID, email, etc.
18
22
  */
@@ -25,5 +29,5 @@ interface AvatarProps extends ComponentPropsWithoutRef<'div'> {
25
29
  /**
26
30
  * Avatar UI component
27
31
  */
28
- export declare const Avatar: ({ size, imageSrc, linkContent, uniqueId, className, ...props }: AvatarProps) => React.JSX.Element;
32
+ export declare const Avatar: ({ hasUserFallback, imageSrc, linkContent, size, uniqueId, className, ...props }: AvatarProps) => React.JSX.Element;
29
33
  export {};
@@ -43,6 +43,14 @@ declare const svgData: {
43
43
  readonly path: "M201.4 137.4c12.5-12.5 32.8-12.5 45.3 0l160 160c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 205.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l160-160z";
44
44
  readonly width: "440";
45
45
  };
46
+ readonly anglesLeft: {
47
+ readonly path: "M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160zm352-160l-160 160c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L301.3 256 438.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0z";
48
+ readonly width: "512";
49
+ };
50
+ readonly anglesRight: {
51
+ readonly path: "M470.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 256 265.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160zm-352 160l160-160c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L210.7 256 73.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0z";
52
+ readonly width: "512";
53
+ };
46
54
  readonly arrowDownToLine: {
47
55
  readonly path: "M32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32H352c17.7 0 32 14.3 32 32s-14.3 32-32 32H32zM214.6 342.6c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 242.7V64c0-17.7 14.3-32 32-32s32 14.3 32 32V242.7l73.4-73.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-128 128z";
48
56
  readonly width: "384";
@@ -243,6 +251,10 @@ declare const svgData: {
243
251
  readonly path: "M227.7 11.7c15.6-15.6 40.9-15.6 56.6 0l216 216c15.6 15.6 15.6 40.9 0 56.6l-216 216c-15.6 15.6-40.9 15.6-56.6 0l-216-216c-15.6-15.6-15.6-40.9 0-56.6l216-216zM256 128c-13.3 0-24 10.7-24 24V264c0 13.3 10.7 24 24 24s24-10.7 24-24V152c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z";
244
252
  readonly width: "512";
245
253
  };
254
+ readonly diamonds4: {
255
+ readonly path: "M227.7 11.7c15.6-15.6 40.9-15.6 56.6 0l74.1 74.1c12.5 12.5 12.5 32.8 0 45.3l-79.7 79.7c-12.5 12.5-32.8 12.5-45.3 0L153.7 131c-12.5-12.5-12.5-32.8 0-45.3l74.1-74.1zM131 153.7l79.7 79.7c12.5 12.5 12.5 32.8 0 45.3L131 358.3c-12.5 12.5-32.8 12.5-45.3 0L11.7 284.3c-15.6-15.6-15.6-40.9 0-56.6l74.1-74.1c12.5-12.5 32.8-12.5 45.3 0zM153.7 381l79.7-79.7c12.5-12.5 32.8-12.5 45.3 0L358.3 381c12.5 12.5 12.5 32.8 0 45.3l-74.1 74.1c-15.6 15.6-40.9 15.6-56.6 0l-74.1-74.1c-12.5-12.5-12.5-32.8 0-45.3zM381 358.3l-79.7-79.7c-12.5-12.5-12.5-32.8 0-45.3L381 153.7c12.5-12.5 32.8-12.5 45.3 0l74.1 74.1c15.6 15.6 15.6 40.9 0 56.6l-74.1 74.1c-12.5 12.5-32.8 12.5-45.3 0z";
256
+ readonly width: "512";
257
+ };
246
258
  readonly discourse: {
247
259
  readonly path: "M225.9 32C103.3 32 0 130.5 0 252.1 0 256 .1 480 .1 480l225.8-.2c122.7 0 222.1-102.3 222.1-223.9C448 134.3 348.6 32 225.9 32zM224 384c-19.4 0-37.9-4.3-54.4-12.1L88.5 392l22.9-75c-9.8-18.1-15.4-38.9-15.4-61 0-70.7 57.3-128 128-128s128 57.3 128 128-57.3 128-128 128z";
248
260
  readonly width: "512";
@@ -267,6 +279,10 @@ declare const svgData: {
267
279
  readonly path: "M435.4 121.9l67.2-67.2c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L390.2 76.6C352.8 48.6 306.3 32 256 32C132.3 32 32 132.3 32 256c0 50.3 16.6 96.8 44.6 134.2L9.4 457.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l67.2-67.2c37.4 28 83.8 44.6 134.1 44.6c123.7 0 224-100.3 224-224c0-50.3-16.6-96.8-44.6-134.1zm-91.2 .7L122.5 344.2C105.8 318.9 96 288.6 96 256c0-88.4 71.6-160 160-160c32.6 0 62.9 9.8 88.2 26.5zm-176.5 267L389.5 167.8C406.2 193.1 416 223.4 416 256c0 88.4-71.6 160-160 160c-32.6 0-62.9-9.8-88.2-26.5z";
268
280
  readonly width: "512";
269
281
  };
282
+ readonly envelope: {
283
+ readonly path: "M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48L48 64zM0 176L0 384c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-208L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z";
284
+ readonly width: "512";
285
+ };
270
286
  readonly exclamation: {
271
287
  readonly path: "M64 64c0-17.7-14.3-32-32-32S0 46.3 0 64V320c0 17.7 14.3 32 32 32s32-14.3 32-32V64zM32 480a40 40 0 1 0 0-80 40 40 0 1 0 0 80z";
272
288
  readonly width: "100";
@@ -620,5 +636,5 @@ declare const svgData: {
620
636
  readonly width: "576";
621
637
  };
622
638
  };
623
- export declare const iconList: ("angleDown" | "angleLeft" | "angleRight" | "angleUp" | "arrowDownToLine" | "arrowLeft" | "arrowRight" | "asterisk" | "banBug" | "bars" | "barsFilter" | "billboard" | "bitbucket" | "bolt" | "book" | "books" | "bracketRight" | "broomWide" | "building" | "buildings" | "calendarDays" | "ccAmex" | "ccDiscover" | "ccGeneric" | "ccMC" | "ccVisa" | "chartSimple" | "cloud" | "cloudArrowUp" | "code" | "codeBranch" | "codeMerge" | "caretDown" | "caretLeft" | "caretRight" | "caretUp" | "chartLine" | "chartNetwork" | "check" | "circle" | "circleExclamation" | "circleCheck" | "circleInfo" | "circleMinus" | "circleMinusOutline" | "circleNotch" | "circlePlus" | "circlePlusOutline" | "circleQuestion" | "circleXmark" | "command" | "comment" | "copy" | "diamondExclamation" | "discourse" | "download" | "drupal" | "ellipsis" | "ellipsisVertical" | "emptySet" | "exclamation" | "externalLink" | "eye" | "eyeSlash" | "facebook" | "file" | "fileContract" | "fileCSV" | "fileExport" | "fileImport" | "filePDF" | "folder" | "gear" | "github" | "gitlab" | "globe" | "globeLine" | "graduationCap" | "grid" | "gripDots" | "gripDotsVertical" | "heart" | "house" | "idCard" | "instagram" | "keySkeleton" | "laptopCode" | "leaf" | "lifeRing" | "linkedin" | "linkSimple" | "linkSimpleSlash" | "magnifyingGlass" | "messages" | "minus" | "moon" | "paperclip" | "paperPlane" | "pen" | "phone" | "play" | "plus" | "quotesLeft" | "quotesRight" | "rectangleList" | "robot" | "rotate" | "rotateClock" | "rss" | "save" | "server" | "shield" | "shovel" | "siren" | "sitemap" | "slack" | "slashForward" | "slidersSimple" | "snowflake" | "sparkles" | "squareCheck" | "squareCode" | "squareMinus" | "squarePen" | "squareQuestion" | "squareTerminal" | "star" | "sun" | "table" | "terminal" | "threads" | "trash" | "triangleExclamation" | "twitter" | "upload" | "user" | "userGear" | "userPlus" | "users" | "video" | "wavePulse" | "windowRestore" | "wordpress" | "wrench" | "xmark" | "xmarkLarge" | "xTwitter" | "youtube")[];
639
+ export declare const iconList: ("angleDown" | "angleLeft" | "angleRight" | "angleUp" | "anglesLeft" | "anglesRight" | "arrowDownToLine" | "arrowLeft" | "arrowRight" | "asterisk" | "banBug" | "bars" | "barsFilter" | "billboard" | "bitbucket" | "bolt" | "book" | "books" | "bracketRight" | "broomWide" | "building" | "buildings" | "calendarDays" | "ccAmex" | "ccDiscover" | "ccGeneric" | "ccMC" | "ccVisa" | "chartSimple" | "cloud" | "cloudArrowUp" | "code" | "codeBranch" | "codeMerge" | "caretDown" | "caretLeft" | "caretRight" | "caretUp" | "chartLine" | "chartNetwork" | "check" | "circle" | "circleExclamation" | "circleCheck" | "circleInfo" | "circleMinus" | "circleMinusOutline" | "circleNotch" | "circlePlus" | "circlePlusOutline" | "circleQuestion" | "circleXmark" | "command" | "comment" | "copy" | "diamondExclamation" | "diamonds4" | "discourse" | "download" | "drupal" | "ellipsis" | "ellipsisVertical" | "emptySet" | "envelope" | "exclamation" | "externalLink" | "eye" | "eyeSlash" | "facebook" | "file" | "fileContract" | "fileCSV" | "fileExport" | "fileImport" | "filePDF" | "folder" | "gear" | "github" | "gitlab" | "globe" | "globeLine" | "graduationCap" | "grid" | "gripDots" | "gripDotsVertical" | "heart" | "house" | "idCard" | "instagram" | "keySkeleton" | "laptopCode" | "leaf" | "lifeRing" | "linkedin" | "linkSimple" | "linkSimpleSlash" | "magnifyingGlass" | "messages" | "minus" | "moon" | "paperclip" | "paperPlane" | "pen" | "phone" | "play" | "plus" | "quotesLeft" | "quotesRight" | "rectangleList" | "robot" | "rotate" | "rotateClock" | "rss" | "save" | "server" | "shield" | "shovel" | "siren" | "sitemap" | "slack" | "slashForward" | "slidersSimple" | "snowflake" | "sparkles" | "squareCheck" | "squareCode" | "squareMinus" | "squarePen" | "squareQuestion" | "squareTerminal" | "star" | "sun" | "table" | "terminal" | "threads" | "trash" | "triangleExclamation" | "twitter" | "upload" | "user" | "userGear" | "userPlus" | "users" | "video" | "wavePulse" | "windowRestore" | "wordpress" | "wrench" | "xmark" | "xmarkLarge" | "xTwitter" | "youtube")[];
624
640
  export {};
@@ -1,4 +1,5 @@
1
1
  import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ import { FuiPlacement } from '@libs/types/custom-types';
2
3
  import './popover.css';
3
4
  interface PopoverProps extends Omit<ComponentPropsWithoutRef<'div'>, 'content'> {
4
5
  /**
@@ -24,9 +25,9 @@ interface PopoverProps extends Omit<ComponentPropsWithoutRef<'div'>, 'content'>
24
25
  /**
25
26
  * Preferred placement of the popover in relation to the trigger. Will be modified if there is not enough space.
26
27
  */
27
- placement?: 'top' | 'top-start' | 'top-end' | 'right' | 'right-start' | 'right-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end';
28
+ placement?: FuiPlacement;
28
29
  /**
29
- * Text for popover title
30
+ * Text for popover title.
30
31
  */
31
32
  title?: string;
32
33
  /**
@@ -34,15 +35,15 @@ interface PopoverProps extends Omit<ComponentPropsWithoutRef<'div'>, 'content'>
34
35
  */
35
36
  triggerAccessibleText?: string;
36
37
  /**
37
- * Icon to trigger Popover.
38
+ * The icon to use as the trigger.
38
39
  */
39
40
  triggerIcon?: 'circleInfo' | 'circleQuestion';
40
41
  /**
41
- * Is the Popover open?
42
+ * Boolean to determine if the Popover is open by default.
42
43
  */
43
44
  popoverIsOpen?: boolean;
44
45
  /**
45
- * Function to set Popover open state
46
+ * Function to set Popover open state.
46
47
  */
47
48
  setPopoverIsOpen?: (isOpen: boolean) => void;
48
49
  /**
@@ -7,7 +7,7 @@ export interface IndicatorBadgeProps extends ComponentPropsWithoutRef<'span'> {
7
7
  /**
8
8
  * Badge color
9
9
  */
10
- color: 'critical' | 'info' | 'success' | 'neutral' | 'warning' | 'silver' | 'gold' | 'platinum' | 'diamond';
10
+ color: 'critical' | 'info' | 'success' | 'warning' | 'neutral' | 'brand' | 'silver' | 'gold' | 'platinum' | 'diamond';
11
11
  /**
12
12
  * Badge text.
13
13
  */
@@ -1,5 +1,58 @@
1
+ import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ import { PDSIcon } from '@components/Icon/Icon';
3
+ import './button.css';
4
+ interface ButtonProps extends ComponentPropsWithoutRef<'button'> {
5
+ /**
6
+ * Aria-label attribute.
7
+ */
8
+ ariaLabel?: string;
9
+ /**
10
+ * Type of button
11
+ */
12
+ buttonType?: 'button' | 'submit' | 'reset';
13
+ /**
14
+ * Is the button disabled?
15
+ */
16
+ disabled?: boolean;
17
+ /**
18
+ * How the button is displayed.
19
+ */
20
+ displayType?: 'label-only' | 'icon-start' | 'icon-end';
21
+ /**
22
+ * Which icon to render
23
+ */
24
+ iconName?: PDSIcon;
25
+ /**
26
+ * Is the button in a loading state?
27
+ */
28
+ isLoading?: boolean;
29
+ /**
30
+ * Will this be used for a split button?
31
+ */
32
+ isSplitButton?: boolean;
33
+ /**
34
+ * The text of the button
35
+ */
36
+ label: ReactNode;
37
+ /**
38
+ * Click event handler callback
39
+ */
40
+ onClick?: () => void;
41
+ /**
42
+ * Which size of button to render
43
+ */
44
+ size?: 'sm' | 'md' | 'lg';
45
+ /**
46
+ * Which variant of button to render
47
+ */
48
+ variant?: 'primary' | 'secondary' | 'subtle' | 'brand' | 'brand-secondary' | 'critical' | 'navbar' | 'inline';
49
+ /**
50
+ * Additional class names
51
+ */
52
+ className?: string;
53
+ }
1
54
  /**
2
55
  * A Component used to render a Button
3
56
  */
4
- export const Button: React.ForwardRefExoticComponent<React.RefAttributes<any>>;
5
- import React from 'react';
57
+ export declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
58
+ export {};
@@ -1,17 +1,29 @@
1
- export function LinksCard({ linkItems, headingLevel, headingText, className, ...props }: {
2
- [x: string]: any;
3
- linkItems: any;
4
- headingLevel?: string;
5
- headingText: any;
6
- className: any;
7
- }): React.JSX.Element;
8
- export namespace LinksCard {
9
- namespace propTypes {
10
- let headingLevel: PropTypes.Requireable<string>;
11
- let headingText: PropTypes.Validator<string>;
12
- let linkItems: PropTypes.Requireable<PropTypes.ReactNodeLike[]>;
13
- let className: PropTypes.Requireable<string>;
14
- }
1
+ import React, { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ import { HeadingLevel } from '@libs/types/custom-types';
3
+ import './links-card.css';
4
+ /**
5
+ * Prop types for LinksCard
6
+ */
7
+ interface LinksCardProps extends ComponentPropsWithoutRef<'div'> {
8
+ /**
9
+ * Heading level
10
+ */
11
+ headingLevel?: HeadingLevel;
12
+ /**
13
+ * Link Card heading
14
+ */
15
+ headingText: string;
16
+ /**
17
+ * Array of links
18
+ */
19
+ linkItems?: ReactNode[];
20
+ /**
21
+ * Additional class names
22
+ */
23
+ className?: string;
15
24
  }
16
- import React from 'react';
17
- import PropTypes from 'prop-types';
25
+ /**
26
+ * Links Card UI component
27
+ */
28
+ export declare const LinksCard: ({ linkItems, headingLevel, headingText, className, ...props }: LinksCardProps) => React.JSX.Element;
29
+ export {};
@@ -0,0 +1,2 @@
1
+ import { ReactNode } from 'react';
2
+ export declare const fiveItems: ReactNode[];
@@ -1,19 +1,32 @@
1
- export function ExpansionPanel({ children, id, isOpen, summary, className, ...props }: {
2
- [x: string]: any;
3
- children: any;
4
- id: any;
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
+ */
5
18
  isOpen?: boolean;
6
- summary: any;
7
- className: any;
8
- }): React.JSX.Element;
9
- export namespace ExpansionPanel {
10
- namespace propTypes {
11
- let children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
12
- let id: PropTypes.Requireable<string>;
13
- let isOpen: PropTypes.Requireable<boolean>;
14
- let summary: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
15
- let className: PropTypes.Requireable<string>;
16
- }
19
+ /**
20
+ * The summary label of the expansion panel.
21
+ */
22
+ summary?: string | ReactNode;
23
+ /**
24
+ * Additional class names
25
+ */
26
+ className?: string;
17
27
  }
18
- import React from 'react';
19
- import PropTypes from 'prop-types';
28
+ /**
29
+ * ExpansionPanel UI component
30
+ */
31
+ export declare const ExpansionPanel: ({ children, id, isOpen, summary, className, ...props }: ExpansionPanelProps) => React.JSX.Element;
32
+ export {};
@@ -1,15 +1,24 @@
1
- export function ExpansionPanelGroup({ children, displayType, className, ...props }: {
2
- [x: string]: any;
3
- children: any;
4
- displayType?: string;
5
- className: any;
6
- }): React.JSX.Element;
7
- export namespace ExpansionPanelGroup {
8
- namespace propTypes {
9
- let children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
10
- let displayType: PropTypes.Requireable<string>;
11
- let className: PropTypes.Requireable<string>;
12
- }
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;
13
19
  }
14
- import React from 'react';
15
- import PropTypes from 'prop-types';
20
+ /**
21
+ * ExpansionPanelGroup UI component
22
+ */
23
+ export declare const ExpansionPanelGroup: ({ children, displayType, className, ...props }: ExpansionPanelGroupProps) => React.JSX.Element;
24
+ export {};
@@ -1,30 +1,46 @@
1
- export function Toast({ children, id, type, typeLabels, className, }: {
2
- children: any;
3
- id: any;
4
- type?: string;
5
- typeLabels?: {
6
- info: string;
7
- success: string;
8
- warning: string;
9
- critical: string;
10
- working: string;
11
- };
12
- className: any;
13
- }): React.JSX.Element;
14
- export namespace Toast {
15
- namespace propTypes {
16
- let children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
17
- let id: PropTypes.Requireable<string>;
18
- let type: PropTypes.Requireable<string>;
19
- let typeLabels: PropTypes.Requireable<PropTypes.InferProps<{
20
- info: PropTypes.Requireable<string>;
21
- success: PropTypes.Requireable<string>;
22
- warning: PropTypes.Requireable<string>;
23
- critical: PropTypes.Requireable<string>;
24
- working: PropTypes.Requireable<string>;
25
- }>>;
26
- let className: PropTypes.Requireable<string>;
27
- }
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;
28
41
  }
29
- import React from 'react';
30
- import PropTypes from 'prop-types';
42
+ /**
43
+ * Toast UI component
44
+ */
45
+ export declare const Toast: ({ children, id, type, typeLabels, className, }: ToastProps) => React.JSX.Element;
46
+ export {};
@@ -1,16 +1,29 @@
1
- export function Toaster({ autoCloseDuration, limit, position, className, }: {
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
+ */
2
11
  autoCloseDuration?: number;
12
+ /**
13
+ * Maximum number of toasts that can be displayed at once.
14
+ */
3
15
  limit?: number;
4
- position?: string;
5
- className: any;
6
- }): React.JSX.Element;
7
- export namespace Toaster {
8
- namespace propTypes {
9
- let autoCloseDuration: PropTypes.Requireable<number>;
10
- let limit: PropTypes.Requireable<number>;
11
- let position: PropTypes.Requireable<string>;
12
- let className: PropTypes.Requireable<string>;
13
- }
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;
14
24
  }
15
- import React from 'react';
16
- import PropTypes from 'prop-types';
25
+ /**
26
+ * Toaster UI component
27
+ */
28
+ export declare const Toaster: ({ autoCloseDuration, limit, position, className, }: ToasterProps) => React.JSX.Element;
29
+ export {};
@@ -1,2 +1,13 @@
1
- export function useToast(): (((type: any, message: any, options?: {}) => import("react-toastify").Id) | (({ children, position, preventExitTransition, done, nodeRef, isIn }: import("react-toastify").ToastTransitionProps) => React.JSX.Element))[];
2
- import React from 'react';
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
+ ];
@@ -1 +1 @@
1
- .pds-avatar{--pds-avatar-size:1.953rem;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 img{border-radius:100%;height:100%;width:auto}.pds-avatar--xs{--pds-avatar-size:1rem}.pds-avatar--sm{--pds-avatar-size:1.563rem}.pds-avatar--md{--pds-avatar-size:1.953rem}.pds-avatar--lg{--pds-avatar-size:2.441rem}
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}
@@ -2,4 +2,4 @@
2
2
  --pds-color-dashboard-nav-item-foreground-default
3
3
  );--pds-dashboard-nav-outline-color:var(--pds-color-interactive-focus);font-family:Poppins,sans-serif}.pds-dashboard-nav,.pds-dashboard-nav a{color:var(--pds-dashboard-nav-foreground-color)}.pds-dashboard-nav a{text-decoration:none}.pds-dashboard-nav a:focus{box-shadow:none;outline:none}.pds-dashboard-nav a:hover{color:var(--pds-dashboard-nav-foreground-color)}.pds-dashboard-nav a:focus-visible,.pds-dashboard-nav button:focus-visible{border-radius:.375rem;outline:.0625rem solid var(--pds-dashboard-nav-outline-color);outline-offset:-.125rem}.pds-dashboard-nav .pds-icon{pointer-events:none}.pds-dashboard-nav__logo{box-sizing:content-box;margin-block-end:1.563rem;margin-block-start:.125rem;padding-inline:calc(var(--pds-spacing-dashboard-nav-item-padding) + .1875rem)}.pds-dashboard-nav__menu{display:flex;flex-direction:column;list-style-type:none;margin:0;padding:0;row-gap:1rem}.pds-dashboard-nav__item{list-style-type:none;margin-bottom:0}.pds-dashboard-nav__item--top-level .pds-dashboard-nav__item-wrapper{align-items:center;border-radius:.375rem;display:flex;height:var(--pds-spacing-dashboard-nav-item-height);justify-content:space-between;width:100%}.pds-dashboard-nav__item--top-level .pds-dashboard-nav__item-wrapper:hover{background-color:var(--pds-color-dashboard-nav-item-background-hover);transition:all .2s ease-in-out 0s}.pds-dashboard-nav__item--top-level .pds-dashboard-nav__item-wrapper a{border-radius:.375rem;box-sizing:border-box;padding-inline:var(--pds-spacing-dashboard-nav-item-padding);width:100%}.pds-dashboard-nav__item--top-level .pds-dashboard-nav__item-inner{align-items:center;display:flex}.pds-dashboard-nav__item--top-level.pds-dashboard-nav__item--active .pds-dashboard-nav__item-wrapper{--pds-dashboard-nav-foreground-color:var(
4
4
  --pds-color-dashboard-nav-item-foreground-active
5
- );--pds-dashboard-nav-outline-color:var(--pds-color-brand-primary-default);background-color:var(--pds-color-dashboard-nav-item-background-active)}.pds-dashboard-nav__link-icon{align-items:center;display:flex;flex-grow:0;flex-shrink:0;height:var(--pds-spacing-dashboard-nav-item-height);justify-content:center;margin-inline-end:var(--pds-dashboard-nav-space-after-icon);width:var(--pds-dashboard-nav-icon-width)}.pds-dashboard-nav__link-icon .pds-icon--house,.pds-dashboard-nav__link-icon .pds-icon--robot{margin-block-start:-.125rem}.pds-dashboard-nav__menu--second-level{color:var(--pds-color-dashboard-nav-item-foreground-default);display:none;margin-block-start:.8rem;padding-inline-start:calc(var(--pds-spacing-dashboard-nav-item-padding) + var(--pds-dashboard-nav-icon-width) + var(--pds-dashboard-nav-space-after-icon))}.pds-dashboard-nav__menu--second-level.pds-dashboard-nav__menu--expanded{display:flex;row-gap:.64rem}.pds-dashboard-nav__item.pds-dashboard-nav__item--second-level a:hover{color:var(--pds-color-interactive-link-hover)}.pds-dashboard-nav__item.pds-dashboard-nav__item--second-level.pds-dashboard-nav__item--active a{color:var(--pds-color-interactive-link-hover);font-weight:600}.pds-dashboard-nav__item.pds-dashboard-nav__item--second-level a:focus-visible{border-radius:1px;outline:.0625rem solid var(--pds-color-interactive-focus);outline-offset:4px;transition:outline .2s ease-in-out 0s}.pds-dashboard-nav__toggle{align-items:center;background-color:transparent;border:none;border-radius:.375rem;color:var(--pds-dashboard-nav-foreground-color);cursor:pointer;display:flex;height:var(--pds-spacing-dashboard-nav-item-height);justify-content:flex-end;padding-inline:var(--pds-spacing-dashboard-nav-item-padding)}.pds-dashboard-nav__toggle .pds-icon{padding-inline:.125rem;transform:rotate(0deg);transition:all .2s ease-in-out 0s}.pds-dashboard-nav__toggle--expanded .pds-icon{transform:rotate(180deg);transition:all .2s ease-in-out 0s}.pds-dashboard-nav__link-label{opacity:1;transition:opacity .1s ease-in-out}.pds-dashboard-nav--collapsed .pds-dashboard-nav__logo svg{width:1.25rem}.pds-dashboard-nav--collapsed .pds-dashboard-nav__link-label{opacity:0;transition:opacity .1s ease-in-out}.pds-dashboard-nav--collapsed .pds-dashboard-nav__menu--second-level.pds-dashboard-nav__menu--expanded{display:none}.pds-dashboard-nav__item--top-level.pds-dashboard-nav__item--collapsed .pds-dashboard-nav__item-wrapper a{width:2.875rem}.pds-dashboard-nav__flyout{background-color:var(--pds-color-menu-background);border-radius:.375rem;box-shadow:var(--pds-elevation-overlay);max-width:30rem;padding:.64rem;width:max-content;z-index:200}.pds-dashboard-nav__flyout-heading{color:var(--pds-color-menu-item-heading-text);font-family:Poppins,sans-serif;font-size:.833rem;font-weight:400;line-height:120%;padding:.64rem .8rem}.pds-dashboard-nav__menu--second-level-flyout{row-gap:0}.pds-dashboard-nav__item--second-level-flyout{background-color:var(--pds-color-menu-item-background-default);color:var(--pds-color-menu-item-foreground);cursor:pointer;font-size:1rem;line-height:120%;margin:0;padding:.64rem .8rem}.pds-dashboard-nav__item--second-level-flyout:hover{background-color:var(--pds-color-menu-item-background-hover);border-radius:.375rem}.pds-dashboard-nav__item--second-level-flyout.pds-dashboard-nav__item--active a{color:var(--pds-color-interactive-link-hover);font-weight:600}.pds-dashboard-nav__item--second-level-flyout a:focus-visible{border-radius:1px;outline:.0625rem solid var(--pds-color-interactive-focus);outline-offset:4px;transition:outline .2s ease-in-out 0s}.pds-dashboard-nav .pds-tooltip{padding-inline:0}.pds-dashboard-nav .pds-tooltip__container{padding:.25rem .512rem}.pds-dashboard-nav .pds-dropdown-menu .pds-dashboard-nav__item-inner{align-items:center;display:flex}.pds-dashboard-nav .pds-dropdown-menu__trigger{padding-inline:calc(var(--pds-spacing-dashboard-nav-item-padding) - .25rem)}.pds-dashboard-nav .pds-dropdown-menu__item a{padding-block:.41rem;padding-inline:var(--pds-spacing-dashboard-nav-item-padding);width:100%}.pds-dashboard-nav .pds-dropdown-menu__item--second-level{padding-block:.25rem;padding-inline-start:calc(var(--pds-dashboard-nav-icon-width) + var(--pds-dashboard-nav-space-after-icon) + .0625rem)}
5
+ );--pds-dashboard-nav-outline-color:var(--pds-color-brand-primary-default);background-color:var(--pds-color-dashboard-nav-item-background-active)}.pds-dashboard-nav__link-icon{align-items:center;display:flex;flex-grow:0;flex-shrink:0;height:var(--pds-spacing-dashboard-nav-item-height);justify-content:center;margin-inline-end:var(--pds-dashboard-nav-space-after-icon);width:var(--pds-dashboard-nav-icon-width)}.pds-dashboard-nav__link-icon .pds-icon--house,.pds-dashboard-nav__link-icon .pds-icon--robot{margin-block-start:-.125rem}.pds-dashboard-nav__menu--second-level{color:var(--pds-color-dashboard-nav-item-foreground-default);display:none;margin-block-start:.8rem;padding-inline-start:calc(var(--pds-spacing-dashboard-nav-item-padding) + var(--pds-dashboard-nav-icon-width) + var(--pds-dashboard-nav-space-after-icon))}.pds-dashboard-nav__menu--second-level.pds-dashboard-nav__menu--expanded{display:flex;row-gap:.64rem}.pds-dashboard-nav__item.pds-dashboard-nav__item--second-level{font-size:.833rem}.pds-dashboard-nav__item.pds-dashboard-nav__item--second-level a:hover{color:var(--pds-color-interactive-link-hover)}.pds-dashboard-nav__item.pds-dashboard-nav__item--second-level.pds-dashboard-nav__item--active a{color:var(--pds-color-interactive-link-hover);font-weight:600}.pds-dashboard-nav__item.pds-dashboard-nav__item--second-level a:focus-visible{border-radius:1px;outline:.0625rem solid var(--pds-color-interactive-focus);outline-offset:4px;transition:outline .2s ease-in-out 0s}.pds-dashboard-nav__toggle{align-items:center;background-color:transparent;border:none;border-radius:.375rem;color:var(--pds-dashboard-nav-foreground-color);cursor:pointer;display:flex;height:var(--pds-spacing-dashboard-nav-item-height);justify-content:flex-end;padding-inline:var(--pds-spacing-dashboard-nav-item-padding)}.pds-dashboard-nav__toggle .pds-icon{padding-inline:.125rem;transform:rotate(0deg);transition:all .2s ease-in-out 0s}.pds-dashboard-nav__toggle--expanded .pds-icon{transform:rotate(180deg);transition:all .2s ease-in-out 0s}.pds-dashboard-nav__link-label{opacity:1;transition:opacity .1s ease-in-out}.pds-dashboard-nav--collapsed .pds-dashboard-nav__logo svg{width:1.25rem}.pds-dashboard-nav--collapsed .pds-dashboard-nav__link-label{opacity:0;transition:opacity .1s ease-in-out}.pds-dashboard-nav--collapsed .pds-dashboard-nav__menu--second-level.pds-dashboard-nav__menu--expanded{display:none}.pds-dashboard-nav__item--top-level.pds-dashboard-nav__item--collapsed .pds-dashboard-nav__item-wrapper a{width:2.875rem}.pds-dashboard-nav__flyout{background-color:var(--pds-color-menu-background);border-radius:.375rem;box-shadow:var(--pds-elevation-overlay);max-width:30rem;padding:.64rem;width:max-content;z-index:200}.pds-dashboard-nav__flyout-heading{color:var(--pds-color-menu-item-heading-text);font-family:Poppins,sans-serif;font-size:.833rem;font-weight:400;line-height:120%;padding:.64rem .8rem}.pds-dashboard-nav__menu--second-level-flyout{row-gap:0}.pds-dashboard-nav__item--second-level-flyout{background-color:var(--pds-color-menu-item-background-default);color:var(--pds-color-menu-item-foreground);cursor:pointer;font-size:1rem;line-height:120%;margin:0;padding:.64rem .8rem}.pds-dashboard-nav__item--second-level-flyout:hover{background-color:var(--pds-color-menu-item-background-hover);border-radius:.375rem}.pds-dashboard-nav__item--second-level-flyout.pds-dashboard-nav__item--active a{color:var(--pds-color-interactive-link-hover);font-weight:600}.pds-dashboard-nav__item--second-level-flyout a:focus-visible{border-radius:1px;outline:.0625rem solid var(--pds-color-interactive-focus);outline-offset:4px;transition:outline .2s ease-in-out 0s}.pds-dashboard-nav .pds-tooltip{padding-inline:0}.pds-dashboard-nav .pds-tooltip__container{padding:.25rem .512rem}.pds-dashboard-nav .pds-dropdown-menu .pds-dashboard-nav__item-inner{align-items:center;display:flex}.pds-dashboard-nav .pds-dropdown-menu__trigger{padding-inline:calc(var(--pds-spacing-dashboard-nav-item-padding) - .25rem)}.pds-dashboard-nav .pds-dropdown-menu__item a{padding-block:.41rem;padding-inline:var(--pds-spacing-dashboard-nav-item-padding);width:100%}.pds-dashboard-nav .pds-dropdown-menu__item--second-level{padding-block:.25rem;padding-inline-start:calc(var(--pds-dashboard-nav-icon-width) + var(--pds-dashboard-nav-space-after-icon) + .0625rem)}