solace-ui-components 16.1.0

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 (171) hide show
  1. package/LICENSE +200 -0
  2. package/NOTICE +35 -0
  3. package/README.md +60 -0
  4. package/THIRD_PARTY_LICENSES.txt +1144 -0
  5. package/dist/components/NoAccess.d.ts +4 -0
  6. package/dist/components/SolaceAccordion.d.ts +61 -0
  7. package/dist/components/SolaceAttributeBadge.d.ts +68 -0
  8. package/dist/components/SolaceBackDrop.d.ts +3 -0
  9. package/dist/components/SolaceBreadcrumb.d.ts +50 -0
  10. package/dist/components/SolaceCard.d.ts +10 -0
  11. package/dist/components/SolaceCardHeader.d.ts +10 -0
  12. package/dist/components/SolaceCategorizedSearch.d.ts +4 -0
  13. package/dist/components/SolaceChip.d.ts +91 -0
  14. package/dist/components/SolaceCircularProgress.d.ts +37 -0
  15. package/dist/components/SolaceComponentProps.d.ts +14 -0
  16. package/dist/components/SolaceDatePicker.d.ts +46 -0
  17. package/dist/components/SolaceDetailMessage.d.ts +22 -0
  18. package/dist/components/SolaceDonutChart.d.ts +40 -0
  19. package/dist/components/SolaceDrawer.d.ts +49 -0
  20. package/dist/components/SolaceEmptyStateBanner.d.ts +3 -0
  21. package/dist/components/SolaceEnvironmentChip.d.ts +33 -0
  22. package/dist/components/SolaceEnvironmentLabel.d.ts +11 -0
  23. package/dist/components/SolaceEnvironmentSelectChip.d.ts +56 -0
  24. package/dist/components/SolaceErrorBox.d.ts +22 -0
  25. package/dist/components/SolaceFeatureTag.d.ts +13 -0
  26. package/dist/components/SolaceHTMLAttributesProps.d.ts +4 -0
  27. package/dist/components/SolaceLearningBanner.d.ts +26 -0
  28. package/dist/components/SolaceLinearProgress.d.ts +3 -0
  29. package/dist/components/SolaceMenu.d.ts +60 -0
  30. package/dist/components/SolaceMenuItem.d.ts +78 -0
  31. package/dist/components/SolaceMessageBox.d.ts +38 -0
  32. package/dist/components/SolaceNotificationCounter.d.ts +38 -0
  33. package/dist/components/SolacePagination.d.ts +38 -0
  34. package/dist/components/SolacePopover.d.ts +7 -0
  35. package/dist/components/SolaceResponsiveItemList.d.ts +80 -0
  36. package/dist/components/SolaceSearchAndFilter.d.ts +69 -0
  37. package/dist/components/SolaceTag.d.ts +39 -0
  38. package/dist/components/SolaceTextDiff.d.ts +40 -0
  39. package/dist/components/SolaceToasts.d.ts +19 -0
  40. package/dist/components/SolaceToolTip.d.ts +63 -0
  41. package/dist/components/SolaceTree.d.ts +45 -0
  42. package/dist/components/SolaceTruncatableLink.d.ts +29 -0
  43. package/dist/components/SolaceTypography.d.ts +3 -0
  44. package/dist/components/dialog/SolaceConfirmationDialog.d.ts +36 -0
  45. package/dist/components/fileuploader/SolaceFileUploader.d.ts +30 -0
  46. package/dist/components/fileuploader/fileUploaderUtils.d.ts +17 -0
  47. package/dist/components/form/Button/SolaceLearningButton.d.ts +4 -0
  48. package/dist/components/form/ErrorText.d.ts +7 -0
  49. package/dist/components/form/FormChildBase.d.ts +68 -0
  50. package/dist/components/form/HelperText.d.ts +7 -0
  51. package/dist/components/form/SolaceAttributeValuePair.d.ts +87 -0
  52. package/dist/components/form/SolaceAttributeValuePairForm.d.ts +109 -0
  53. package/dist/components/form/SolaceAutoCompleteTextField.d.ts +11 -0
  54. package/dist/components/form/SolaceButton.d.ts +23 -0
  55. package/dist/components/form/SolaceCheckBox.d.ts +73 -0
  56. package/dist/components/form/SolaceChipTextArea/SolaceChipTextArea.d.ts +4 -0
  57. package/dist/components/form/SolaceChipTextArea/SolaceChipTextArea.styles.d.ts +9 -0
  58. package/dist/components/form/SolaceCodeEditor.d.ts +56 -0
  59. package/dist/components/form/SolaceLabel.d.ts +33 -0
  60. package/dist/components/form/SolacePicker.d.ts +146 -0
  61. package/dist/components/form/SolaceRadio.d.ts +62 -0
  62. package/dist/components/form/SolaceRadioGroup.d.ts +75 -0
  63. package/dist/components/form/SolaceSelect.d.ts +99 -0
  64. package/dist/components/form/SolaceSelectAutocomplete.d.ts +188 -0
  65. package/dist/components/form/SolaceSelectAutocompleteItem.d.ts +45 -0
  66. package/dist/components/form/SolaceSelectAutocompleteResponsiveTags.d.ts +20 -0
  67. package/dist/components/form/SolaceStackLabel.d.ts +41 -0
  68. package/dist/components/form/SolaceStepper/SolaceStepIcon.d.ts +14 -0
  69. package/dist/components/form/SolaceStepper/SolaceStepper.d.ts +10 -0
  70. package/dist/components/form/SolaceStepper/SolaceStepperFooter.d.ts +3 -0
  71. package/dist/components/form/SolaceTextArea.d.ts +108 -0
  72. package/dist/components/form/SolaceTextField.d.ts +126 -0
  73. package/dist/components/form/SolaceToggle.d.ts +58 -0
  74. package/dist/components/form/SolaceToggleButtonGroup.d.ts +15 -0
  75. package/dist/components/form/WarningText.d.ts +7 -0
  76. package/dist/components/jsonschemaform/SolaceJsonSchemaForm.d.ts +79 -0
  77. package/dist/components/jsonschemaform/jsonSchemaFormUtils.d.ts +11 -0
  78. package/dist/components/layout/SolaceGrid.d.ts +8 -0
  79. package/dist/components/layout/SolaceGridList.d.ts +26 -0
  80. package/dist/components/layout/SolaceGridListMultiSelect.d.ts +26 -0
  81. package/dist/components/layout/SolaceIconTabs.d.ts +30 -0
  82. package/dist/components/layout/SolaceList.d.ts +4 -0
  83. package/dist/components/layout/SolaceListItem.d.ts +4 -0
  84. package/dist/components/layout/SolaceListItemButton.d.ts +4 -0
  85. package/dist/components/layout/SolacePageHeader.d.ts +60 -0
  86. package/dist/components/layout/SolaceSidePanelLayout.d.ts +64 -0
  87. package/dist/components/layout/SolaceSplitPane.d.ts +13 -0
  88. package/dist/components/layout/SolaceStack.d.ts +3 -0
  89. package/dist/components/layout/SolaceTabs.d.ts +53 -0
  90. package/dist/components/table/SolaceTable.d.ts +187 -0
  91. package/dist/components/table/components/ContentControlMenu.d.ts +15 -0
  92. package/dist/components/table/hooks/useClickedOutside.d.ts +1 -0
  93. package/dist/components/table/hooks/useExpandableRows.d.ts +28 -0
  94. package/dist/components/table/hooks/useSolaceTable.d.ts +35 -0
  95. package/dist/components/table/hooks/useTableBodyRenderHelper.d.ts +24 -0
  96. package/dist/components/table/hooks/useTableHeaderRenderHelper.d.ts +28 -0
  97. package/dist/components/table/table-utils.d.ts +51 -0
  98. package/dist/constants.d.ts +10 -0
  99. package/dist/hooks/useScrollIndicator.d.ts +6 -0
  100. package/dist/index.d.ts +141 -0
  101. package/dist/index.js +6 -0
  102. package/dist/index.js.map +1 -0
  103. package/dist/index.modern.mjs +37 -0
  104. package/dist/index.modern.mjs.map +1 -0
  105. package/dist/index.test.d.ts +1 -0
  106. package/dist/resources/icons/ArrowLeft.d.ts +4 -0
  107. package/dist/resources/icons/ArrowRight.d.ts +4 -0
  108. package/dist/resources/icons/CheckBoxIcons.d.ts +4 -0
  109. package/dist/resources/icons/CheckCircleIcon.d.ts +5 -0
  110. package/dist/resources/icons/CheckFilled16Icon.d.ts +3 -0
  111. package/dist/resources/icons/CloseIcon.d.ts +5 -0
  112. package/dist/resources/icons/CollapseIcon.d.ts +4 -0
  113. package/dist/resources/icons/DeleteIcon.d.ts +6 -0
  114. package/dist/resources/icons/EllipsisIcon.d.ts +4 -0
  115. package/dist/resources/icons/Error16Icon.d.ts +3 -0
  116. package/dist/resources/icons/ErrorIcon.d.ts +3 -0
  117. package/dist/resources/icons/ExpandIcon.d.ts +4 -0
  118. package/dist/resources/icons/FilterIcon.d.ts +5 -0
  119. package/dist/resources/icons/IconProps.d.ts +4 -0
  120. package/dist/resources/icons/InfoIcon.d.ts +3 -0
  121. package/dist/resources/icons/MoreHorizOutlinedIcon.d.ts +2 -0
  122. package/dist/resources/icons/MoveIcon.d.ts +6 -0
  123. package/dist/resources/icons/OpenExternalIcon.d.ts +2 -0
  124. package/dist/resources/icons/RadioIcons.d.ts +3 -0
  125. package/dist/resources/icons/SearchIcon.d.ts +5 -0
  126. package/dist/resources/icons/SelectIcons.d.ts +3 -0
  127. package/dist/resources/icons/SortIcons.d.ts +7 -0
  128. package/dist/resources/icons/SuccessIcon.d.ts +3 -0
  129. package/dist/resources/icons/UploadIcon.d.ts +3 -0
  130. package/dist/resources/icons/VerticalDotsIcon.d.ts +4 -0
  131. package/dist/resources/icons/VisibilityHideIcon.d.ts +5 -0
  132. package/dist/resources/icons/VisibilityShowIcon.d.ts +5 -0
  133. package/dist/resources/icons/WarnIcon.d.ts +3 -0
  134. package/dist/resources/theme.d.ts +68 -0
  135. package/dist/resources/trackingapi.d.ts +8 -0
  136. package/dist/resources/typography.d.ts +12 -0
  137. package/dist/theming/base/themeMapping.d.ts +6 -0
  138. package/dist/theming/boomi/themeMapping.d.ts +5 -0
  139. package/dist/theming/sap/themeMapping.d.ts +5 -0
  140. package/dist/theming/solace/themeMapping.d.ts +5 -0
  141. package/dist/theming/themeUtils.d.ts +10 -0
  142. package/dist/types/ThemeMapping.d.ts +224 -0
  143. package/dist/types/fieldTypes.d.ts +5 -0
  144. package/dist/types/index.d.ts +25 -0
  145. package/dist/types/modes.d.ts +4 -0
  146. package/dist/types/numericTypes.d.ts +6 -0
  147. package/dist/types/sizing.d.ts +13 -0
  148. package/dist/types/solaceCard.d.ts +87 -0
  149. package/dist/types/solaceCardHeader.d.ts +36 -0
  150. package/dist/types/solaceCategorizedSearch.d.ts +87 -0
  151. package/dist/types/solaceChip.d.ts +26 -0
  152. package/dist/types/solaceChipTextArea.d.ts +89 -0
  153. package/dist/types/solaceDatePicker.d.ts +16 -0
  154. package/dist/types/solaceEmptyStateBanner.d.ts +18 -0
  155. package/dist/types/solaceGrid.d.ts +9 -0
  156. package/dist/types/solaceLearningButton.d.ts +4 -0
  157. package/dist/types/solaceList.d.ts +130 -0
  158. package/dist/types/solacePageHeader.d.ts +62 -0
  159. package/dist/types/solacePopover.d.ts +71 -0
  160. package/dist/types/solaceProgress.d.ts +22 -0
  161. package/dist/types/solaceStack.d.ts +8 -0
  162. package/dist/types/solaceStepper.d.ts +81 -0
  163. package/dist/types/solaceTooltip.d.ts +8 -0
  164. package/dist/types/solaceTypography.d.ts +10 -0
  165. package/dist/types/solacefileUploader.d.ts +60 -0
  166. package/dist/types/states.d.ts +4 -0
  167. package/dist/types/statuses.d.ts +7 -0
  168. package/dist/types/supportedThemes.d.ts +6 -0
  169. package/dist/types/sx.d.ts +16 -0
  170. package/dist/utils.d.ts +4 -0
  171. package/package.json +113 -0
@@ -0,0 +1,87 @@
1
+ import React from "react";
2
+ import SolaceComponentProps from "../components/SolaceComponentProps";
3
+ import { SolaceCardHeaderProps } from "./solaceCardHeader";
4
+ /**
5
+ * Props for the SolaceCard component
6
+ */
7
+ export interface SolaceCardProps extends SolaceComponentProps {
8
+ /**
9
+ * Props for the card header component
10
+ */
11
+ cardHeaderProps?: SolaceCardHeaderProps;
12
+ /**
13
+ * Content to display in the card body
14
+ */
15
+ cardContent?: React.ReactNode;
16
+ /**
17
+ * Actions to display at the bottom of the card
18
+ */
19
+ cardActions?: React.ReactNode;
20
+ /**
21
+ * Width of the card
22
+ */
23
+ width?: string;
24
+ /**
25
+ * Height of the card
26
+ */
27
+ height?: string;
28
+ /**
29
+ * Minimum width of the card
30
+ * @default "250px"
31
+ */
32
+ minWidth?: string;
33
+ /**
34
+ * Padding for the entire card
35
+ * @default theme.spacing(2) (16px)
36
+ */
37
+ padding?: string;
38
+ /**
39
+ * Whether the card is in read-only mode
40
+ *
41
+ * Read-only cards are used as a visual layout option to help categorize and group topics.
42
+ * They are not interactive and serve primarily as information containers.
43
+ *
44
+ * When set to true:
45
+ * - The card receives a "readOnly" CSS class that can be styled differently
46
+ * - The card maintains its role as "article" for accessibility
47
+ * - Interactive elements within the card should be avoided or disabled
48
+ *
49
+ * When set to false (default):
50
+ * - The card can serve as an entry point into deeper levels of detail or navigation
51
+ * - Interactive elements like buttons and menus can be included
52
+ *
53
+ * @default false
54
+ */
55
+ readOnly?: boolean;
56
+ /**
57
+ * ARIA label for the card
58
+ */
59
+ ariaLabel?: string;
60
+ /**
61
+ * Data-qa attribute for testing
62
+ */
63
+ dataQa?: string;
64
+ /**
65
+ * Data-tags attribute for additional metadata
66
+ */
67
+ dataTags?: string;
68
+ /**
69
+ * If true, the card will have a border when selected.
70
+ *
71
+ * @default false
72
+ */
73
+ showBorderOnSelect?: boolean;
74
+ /**
75
+ * Controls the card's initial selection state.
76
+ *
77
+ * @default false
78
+ */
79
+ isSelected?: boolean;
80
+ /**
81
+ * onClick handler for the card
82
+ *
83
+ * This handler will only be applied when readOnly is false.
84
+ * In readOnly mode, the card will not be clickable.
85
+ */
86
+ onClick?: (event: React.MouseEvent<HTMLElement, MouseEvent>, isSelected?: boolean) => void;
87
+ }
@@ -0,0 +1,36 @@
1
+ import React from "react";
2
+ import SolaceComponentProps from "../components/SolaceComponentProps";
3
+ /**
4
+ * Props for the SolaceCardHeader component
5
+ */
6
+ export interface SolaceCardHeaderProps extends SolaceComponentProps {
7
+ /**
8
+ * The avatar element to display
9
+ */
10
+ icon?: React.ReactNode;
11
+ /**
12
+ * The title element to display
13
+ * Can be a string or any React node.
14
+ */
15
+ title?: React.ReactNode;
16
+ /**
17
+ * The subheader element to display
18
+ * This will only render if `title` is provided.
19
+ * Can be a string or any React node.
20
+ */
21
+ subTitle?: React.ReactNode;
22
+ /**
23
+ * The action elements to display in the header
24
+ * Can be any React node such as a div containing buttons, menus, etc.
25
+ * These will be aligned to the top of the header.
26
+ */
27
+ actionElements?: React.ReactNode;
28
+ /**
29
+ * Data-qa attribute for testing
30
+ */
31
+ dataQa?: string;
32
+ /**
33
+ * Data-tags attribute for additional metadata
34
+ */
35
+ dataTags?: string;
36
+ }
@@ -0,0 +1,87 @@
1
+ /// <reference types="react" />
2
+ import { SolaceTextFieldChangeEvent } from "../components/form/SolaceTextField";
3
+ import { SolaceToggleButtonGroupOptionProps } from "../components/form/SolaceToggleButtonGroup";
4
+ import SolaceComponentProps from "../components/SolaceComponentProps";
5
+ export declare enum SolaceCategorizedSearchLayout {
6
+ horizontal = "horizontal",
7
+ vertical = "vertical"
8
+ }
9
+ export interface SolaceCategorizedSearchProps extends SolaceComponentProps {
10
+ /**
11
+ * Unique identifier ... if `id` is not specified, `name` value will be used in order to make `helperText` accessible for screen readers
12
+ */
13
+ id?: string;
14
+ /**
15
+ * Name attribute to assign to the search `input` element
16
+ */
17
+ name: string;
18
+ /**
19
+ * Options for the category buttons
20
+ */
21
+ categoryOptions?: SolaceToggleButtonGroupOptionProps[];
22
+ /**
23
+ * Custom Width of the category options.
24
+ */
25
+ categoryOptionsWidth?: string;
26
+ /**
27
+ * The value of the selected category button
28
+ */
29
+ selectedCategoryValue?: string;
30
+ /**
31
+ * Callback function to notify the callee when a category button is clicked
32
+ */
33
+ onCategoryChange: (event: React.MouseEvent<HTMLElement, MouseEvent>, value: string) => void;
34
+ /**
35
+ * Content to display as supportive/explanitory text
36
+ */
37
+ helperText?: string | JSX.Element;
38
+ /**
39
+ * The value of the `input` element, required for controlled component
40
+ */
41
+ searchValue?: string;
42
+ /**
43
+ * Short hint displayed in the search `input` before user enters a value
44
+ */
45
+ placeholder?: string;
46
+ /**
47
+ * Custom Width of the search input.
48
+ */
49
+ searchInputWidth?: string;
50
+ /**
51
+ * Boolean flag to disable the search `input` and category buttons
52
+ */
53
+ disabled?: boolean;
54
+ /**
55
+ * Boolean flag to keep the search `input` focused
56
+ */
57
+ autoFocus?: boolean;
58
+ /**
59
+ * Boolean flag to mark the field in error state
60
+ */
61
+ hasErrors?: boolean;
62
+ /**
63
+ * Callback function to trigger whenever the value of the search `input` is changed
64
+ */
65
+ onSearchValueChange: (event: SolaceTextFieldChangeEvent) => void;
66
+ /**
67
+ * Callback function to notify the callee when the search `input` is focused
68
+ */
69
+ onSearchInputFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
70
+ /**
71
+ * Callback function to notify the callee when the search `input` is blurred
72
+ */
73
+ onSearchInputBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
74
+ /**
75
+ * Callback function to notify the callee when the clear (x) button is clicked (in case
76
+ * the callee wishes to perform any additional operations other than clearing the search/filter text)
77
+ */
78
+ onClearAll?: () => void;
79
+ /**
80
+ * Layout direction of buttons and search input. Default is vertical.
81
+ */
82
+ layout?: SolaceCategorizedSearchLayout;
83
+ /**
84
+ * Boolean flag to indicate whether category buttons should have equal width
85
+ */
86
+ equalButtonWidth?: boolean;
87
+ }
@@ -0,0 +1,26 @@
1
+ import { BASE_SIZE_TYPES } from "./sizing";
2
+ export declare enum CHIP_COLORS {
3
+ ROYAL_BLUE = "royalBlue",
4
+ DARK_BLUE = "darkBlue",
5
+ OPAQUE_BLUE = "opaqueBlue",
6
+ infoBlue = "infoBlue",
7
+ infoBgBlue = "infoBgBlue",
8
+ warnYellow = "warnYellow",
9
+ warnBgYellow = "warnBgYellow",
10
+ LIGHT_GREY = "lightGrey",
11
+ SMOKE_GREY = "smokeGrey",
12
+ DARK_GREY = "darkGrey",
13
+ WHITE = "white",
14
+ INFO_LIGHT_BG_BLUE = "infoLightBgBlue",
15
+ ERROR_BG_RED = "errorBgRed",
16
+ SUCCESS_BG_GREEN = "successBgGreen",
17
+ INFO_BLUE_LABEL = "infoLightLabelBlue",
18
+ ERROR_RED_LABEL = "errorLabel",
19
+ SUCCESS_GREEN_LABEL = "successLabel"
20
+ }
21
+ export declare enum CHIP_VARIANT {
22
+ FILLED = "filled",
23
+ OUTLINED = "outlined"
24
+ }
25
+ export declare const CHIP_PX_HEIGHTS: BASE_SIZE_TYPES;
26
+ export declare const CHIP_PX_BORDER_RADIUS: BASE_SIZE_TYPES;
@@ -0,0 +1,89 @@
1
+ /// <reference types="react" />
2
+ import SolaceComponentProps from "../components/SolaceComponentProps";
3
+ export interface ChipData {
4
+ id: string;
5
+ label: string;
6
+ isValid: boolean;
7
+ errorMessage?: string;
8
+ }
9
+ export interface SolaceChipTextAreaChangeEvent {
10
+ name: string;
11
+ value: string;
12
+ chips: ChipData[];
13
+ allValues: string;
14
+ }
15
+ export interface SolaceChipTextAreaProps extends SolaceComponentProps {
16
+ /**
17
+ * Unique identifier ... if `id` is not specified, `name` value will be used in order to make `label` and `helperText` accessible for screen readers
18
+ */
19
+ id?: string;
20
+ /**
21
+ * Name attribute to assign to the `input` element
22
+ */
23
+ name: string;
24
+ /**
25
+ * the label content to display on the screen
26
+ */
27
+ label?: string | JSX.Element;
28
+ /**
29
+ * The value of the `input` element, required for controlled component
30
+ */
31
+ value?: string;
32
+ /**
33
+ * Content to display as supportive/explanitory text
34
+ */
35
+ helperText?: string | JSX.Element;
36
+ /**
37
+ * The maximum number of characters which can be typed as the `input` value
38
+ */
39
+ maxLength?: number;
40
+ /**
41
+ * The text to display as the tooltip hint
42
+ */
43
+ title?: string;
44
+ /**
45
+ * Boolean flag to control whether the `input` element is focused during first mount
46
+ */
47
+ autoFocus?: boolean;
48
+ /**
49
+ * Boolean flag to mark the `input` in error state
50
+ */
51
+ hasErrors?: boolean;
52
+ /**
53
+ * Boolean flag used to display an indicator of whether or not this `input` is mandatory
54
+ */
55
+ required?: boolean;
56
+ /**
57
+ * Boolean flag to control whether to stack the label on top of the `input` element (false) or place them inline to one another (true)
58
+ */
59
+ inlineLabel?: boolean;
60
+ /**
61
+ * Callback function to trigger whenever the value of the `input` is changed
62
+ */
63
+ onChange?: (event: SolaceChipTextAreaChangeEvent) => void;
64
+ /**
65
+ * Callback function to trigger whenever the element of the `input` loses focus
66
+ */
67
+ onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
68
+ /**
69
+ * Callback function to trigger whenever the element of the `input` receives key down event
70
+ */
71
+ onKeyDown?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
72
+ /**
73
+ * Callback function to trigger whenever the element of the `input` receives key up event
74
+ */
75
+ onKeyUp?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
76
+ /**
77
+ * Callback function to trigger whenever the element of the `input` is focused
78
+ */
79
+ onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
80
+ /**
81
+ * Custom Width of the component.
82
+ */
83
+ width?: string;
84
+ /**
85
+ * Callback function to validate the text before converting to a chip
86
+ * Returns undefined if valid, or an error message if invalid
87
+ */
88
+ validateChip?: (text: string) => string | undefined;
89
+ }
@@ -0,0 +1,16 @@
1
+ import { DateView } from "@mui/x-date-pickers";
2
+ export declare enum SolaceDatePickerVariant {
3
+ FORMAT_YEAR_MONTH_DAY = "yearMonthDay",
4
+ FORMAT_MONTH_YEAR = "monthYear"
5
+ }
6
+ /**
7
+ * these properties are defined in the Material-UI DatePicker component ( https://mui.com/x/api/date-pickers/date-picker/ )
8
+ * `views` is used for controlliing which views are shown in the date picker (e.g. year, month, day) and an array
9
+ * `openTo` is used for controlling which view the date picker should open to (e.g. year, month, day)
10
+ * `format` is used for controlling the format of the date displayed in the input field
11
+ */
12
+ export declare const variantConfig: Record<SolaceDatePickerVariant, {
13
+ views?: DateView[];
14
+ openTo?: DateView;
15
+ format: string;
16
+ }>;
@@ -0,0 +1,18 @@
1
+ /// <reference types="react" />
2
+ export declare type SolaceEmptyStateBannerProps = {
3
+ bannerImage: React.ReactNode;
4
+ subtitle: string;
5
+ title: string;
6
+ description: string;
7
+ primaryButton: {
8
+ label: string;
9
+ onClick: () => void;
10
+ dataQa?: string;
11
+ };
12
+ secondaryButton?: {
13
+ label: string;
14
+ onClick: () => void;
15
+ dataQa?: string;
16
+ };
17
+ dataQa?: string;
18
+ };
@@ -0,0 +1,9 @@
1
+ import { GridProps } from "@mui/material";
2
+ import { SX } from "./sx";
3
+ /**
4
+ * All of the supported props related to SolaceGrid can be found at https://mui.com/api/grid/
5
+ * All props provided by mui have been extended, to provide more flexibility for developers while using these layout components.
6
+ */
7
+ export declare type SolaceGridProps = Omit<GridProps, "sx"> & {
8
+ sx?: SX;
9
+ };
@@ -0,0 +1,4 @@
1
+ import { SolaceButtonProps } from "../components/form/SolaceButton";
2
+ export declare type SolaceLearningButtonProps = Omit<SolaceButtonProps, "variant" | "href" | "dense" | "underline"> & {
3
+ variant: "call-to-action" | "dark-call-to-action" | "dark-outline" | "icon";
4
+ };
@@ -0,0 +1,130 @@
1
+ /// <reference types="react" />
2
+ import { ListClasses, ListItemButtonClasses, ListItemClasses, SxProps, Theme } from "@mui/material";
3
+ export declare type solaceListProps = {
4
+ /**
5
+ * The content of the component.
6
+ */
7
+ children?: React.ReactNode;
8
+ /**
9
+ * Override or extend the styles applied to the component.
10
+ */
11
+ classes?: Partial<ListClasses>;
12
+ /**
13
+ * If `true`, compact vertical padding designed for keyboard and mouse input is used for
14
+ * the list and list items.
15
+ * The prop is available to descendant components as the `dense` context.
16
+ * @default false
17
+ */
18
+ dense?: boolean;
19
+ /**
20
+ * If `true`, vertical padding is removed from the list.
21
+ * @default false
22
+ */
23
+ disablePadding?: boolean;
24
+ /**
25
+ * The content of the subheader, normally `ListSubheader`.
26
+ */
27
+ subheader?: React.ReactNode;
28
+ /**
29
+ * The system prop that allows defining system overrides as well as additional CSS styles.
30
+ */
31
+ sx?: SxProps<Theme>;
32
+ };
33
+ export declare type solaceListItemProps = {
34
+ /**
35
+ * Defines the `align-items` style property.
36
+ * @default 'center'
37
+ */
38
+ alignItems?: "flex-start" | "center";
39
+ /**
40
+ * The content of the component if a `ListItemSecondaryAction` is used it must
41
+ * be the last child.
42
+ */
43
+ children?: React.ReactNode;
44
+ /**
45
+ * Override or extend the styles applied to the component.
46
+ */
47
+ classes?: Partial<ListItemClasses>;
48
+ /**
49
+ * If `true`, compact vertical padding designed for keyboard and mouse input is used.
50
+ * The prop defaults to the value inherited from the parent List component.
51
+ * @default false
52
+ */
53
+ dense?: boolean;
54
+ /**
55
+ * If `true`, the left and right padding is removed.
56
+ * @default false
57
+ */
58
+ disableGutters?: boolean;
59
+ /**
60
+ * If `true`, all padding is removed.
61
+ * @default false
62
+ */
63
+ disablePadding?: boolean;
64
+ /**
65
+ * If `true`, a 1px light border is added to the bottom of the list item.
66
+ * @default false
67
+ */
68
+ divider?: boolean;
69
+ /**
70
+ * The element to display at the end of ListItem.
71
+ */
72
+ secondaryAction?: React.ReactNode;
73
+ /**
74
+ * The system prop that allows defining system overrides as well as additional CSS styles.
75
+ */
76
+ sx?: SxProps<Theme>;
77
+ };
78
+ export declare type solaceListItemButtonProps = {
79
+ /**
80
+ * Defines the `align-items` style property.
81
+ * @default 'center'
82
+ */
83
+ alignItems?: "flex-start" | "center";
84
+ /**
85
+ * If `true`, the list item is focused during the first mount.
86
+ * Focus will also be triggered if the value changes from false to true.
87
+ * @default false
88
+ */
89
+ autoFocus?: boolean;
90
+ /**
91
+ * The content of the component if a `ListItemSecondaryAction` is used it must
92
+ * be the last child.
93
+ */
94
+ children?: React.ReactNode;
95
+ /**
96
+ * Override or extend the styles applied to the component.
97
+ */
98
+ classes?: Partial<ListItemButtonClasses>;
99
+ /**
100
+ * If `true`, compact vertical padding designed for keyboard and mouse input is used.
101
+ * The prop defaults to the value inherited from the parent List component.
102
+ * @default false
103
+ */
104
+ dense?: boolean;
105
+ /**
106
+ * If `true`, the component is disabled.
107
+ * @default false
108
+ */
109
+ disabled?: boolean;
110
+ /**
111
+ * If `true`, the left and right padding is removed.
112
+ * @default false
113
+ */
114
+ disableGutters?: boolean;
115
+ /**
116
+ * If `true`, a 1px light border is added to the bottom of the list item.
117
+ * @default false
118
+ */
119
+ divider?: boolean;
120
+ /**
121
+ * Use to apply selected styling.
122
+ * @default false
123
+ */
124
+ selected?: boolean;
125
+ /**
126
+ * The system prop that allows defining system overrides as well as additional CSS styles.
127
+ */
128
+ sx?: SxProps<Theme>;
129
+ onClick?: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
130
+ };
@@ -0,0 +1,62 @@
1
+ /// <reference types="react" />
2
+ import { SolacePath } from "@src/components/SolaceBreadcrumb";
3
+ import SolaceComponentProps from "@src/components/SolaceComponentProps";
4
+ export declare enum TitleLocation {
5
+ TOP_OF_TABS = "topOfTabs",
6
+ LEFT_OF_TABS = "leftOfTabs"
7
+ }
8
+ export interface SolacePageHeaderProps extends SolaceComponentProps {
9
+ /**
10
+ * Optional id to be used
11
+ */
12
+ id?: string;
13
+ /**
14
+ * The header's title to display
15
+ */
16
+ title: string;
17
+ /**
18
+ * The sub-title to display next to the title (when used, a
19
+ * column ":" will show up after the title automagically)
20
+ */
21
+ subTitle?: string;
22
+ /**
23
+ * The release string (e.g. "BETA")
24
+ */
25
+ release?: string;
26
+ /**
27
+ * The environment's chip (#SolaceEnvironmentChip) or (#SolaceEnvironmentSelectChip)
28
+ */
29
+ environment?: JSX.Element;
30
+ /**
31
+ * The header's top border color (should match the bgColor used with #SolaceEnvironmentChip)
32
+ */
33
+ borderTop?: string;
34
+ /**
35
+ * Breadcrumbs where the last path should be the current one. It can be a #SolaceBreadcrumb component
36
+ */
37
+ breadcrumbs?: SolacePath[] | JSX.Element;
38
+ /**
39
+ * Array of actions (like #SolaceButton) but can be pretty much anything you want
40
+ */
41
+ actions?: JSX.Element[];
42
+ /**
43
+ * The action menu (usually with a "..." icon) that will appear on 2nd row at the far end
44
+ */
45
+ actionMenu?: JSX.Element;
46
+ /**
47
+ * The tabs (#SolaceTabs) to be displayed next to the title/sub-title
48
+ */
49
+ tabs?: JSX.Element;
50
+ /**
51
+ * The icon tabs (#SolaceIconTabs) to be displayed before the title/sub-title
52
+ */
53
+ iconTabs?: JSX.Element;
54
+ /**
55
+ * Used to add a "Return to X" link in front of the breadcrumbs (NOTE: this property may go away in the future)
56
+ */
57
+ returnTo?: JSX.Element;
58
+ /**
59
+ * Used to determine the location of the title. Options: TOP_OF_TABS, LEFT_OF_TABS.
60
+ */
61
+ titleLocation?: TitleLocation;
62
+ }
@@ -0,0 +1,71 @@
1
+ /// <reference types="react" />
2
+ import SolaceComponentProps from "../components/SolaceComponentProps";
3
+ /**
4
+ * Props for the SolacePopover component.
5
+ *
6
+ * @extends SolaceComponentProps
7
+ */
8
+ export interface SolacePopoverProps extends SolaceComponentProps {
9
+ /**
10
+ * Optional unique identifier for the popover.
11
+ */
12
+ id?: string;
13
+ /**
14
+ * Optional unique key for the popover.
15
+ */
16
+ key?: string;
17
+ /**
18
+ * The element to which the popover is anchored.
19
+ * Can be `null` or an `Element`.
20
+ */
21
+ anchorElement?: null | Element;
22
+ /**
23
+ * The position of the anchor element in terms of top and left coordinates.
24
+ */
25
+ anchorPosition?: {
26
+ top: number;
27
+ left: number;
28
+ };
29
+ /**
30
+ * The origin point on the anchor element where the popover is aligned.
31
+ *
32
+ * @property vertical - Vertical alignment, can be "center", "top", "bottom", or a numeric value.
33
+ * @property horizontal - Horizontal alignment, can be "center", "right", "left", or a numeric value.
34
+ */
35
+ anchorOrigin: {
36
+ vertical: "center" | "top" | "bottom" | number;
37
+ horizontal: "center" | "right" | "left" | number;
38
+ };
39
+ /**
40
+ * The origin point on the popover where it is aligned relative to the anchor element.
41
+ *
42
+ * @property vertical - Vertical alignment, can be "center", "top", "bottom", or a numeric value.
43
+ * @property horizontal - Horizontal alignment, can be "center", "right", "left", or a numeric value.
44
+ */
45
+ transformOrigin: {
46
+ vertical: "center" | "top" | "bottom" | number;
47
+ horizontal: "center" | "right" | "left" | number;
48
+ };
49
+ /**
50
+ * Whether the popover is open or not.
51
+ */
52
+ open: boolean;
53
+ /**
54
+ * The content to be displayed inside the popover.
55
+ */
56
+ children: JSX.Element;
57
+ /**
58
+ * Callback function triggered when the popover is closed.
59
+ *
60
+ * @param event - The mouse event that triggered the close action.
61
+ */
62
+ onClose?: (event: React.MouseEvent<HTMLDivElement>) => void;
63
+ /**
64
+ * The margin threshold for the popover's positioning.
65
+ */
66
+ marginThreshold?: number;
67
+ /**
68
+ * Whether the popover should activate on hover.
69
+ */
70
+ activateOnHover?: boolean;
71
+ }
@@ -0,0 +1,22 @@
1
+ import SolaceComponentProps from "../components/SolaceComponentProps";
2
+ import { BASE_SIZE_TYPES } from "./sizing";
3
+ import { RANGE_0_TO_100 } from "./numericTypes";
4
+ export declare const PROGRESS_HEIGHT: BASE_SIZE_TYPES;
5
+ export interface SolaceLinearProgressProps extends SolaceComponentProps {
6
+ /**
7
+ * The variant style to use. Use indeterminate when there is no progress value to showcase
8
+ */
9
+ variant: "indeterminate" | "determinate";
10
+ /**
11
+ * Height of the linear indicator
12
+ */
13
+ height?: keyof BASE_SIZE_TYPES;
14
+ /**
15
+ * Represent the progress value in percentage (useful only if the variant is "determinate", value between 0 and 100).
16
+ */
17
+ value?: RANGE_0_TO_100;
18
+ /**
19
+ * Color to style the progress bar with.
20
+ */
21
+ color?: "default" | "learning";
22
+ }
@@ -0,0 +1,8 @@
1
+ import { StackProps } from "@mui/material";
2
+ import { SX } from "./sx";
3
+ /**
4
+ * For detailed documentation please refer to https://mui.com/api/stack/
5
+ */
6
+ export declare type SolaceStackProps = Omit<StackProps, "sx"> & {
7
+ sx?: SX;
8
+ };