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,10 @@
1
+ /// <reference types="react" />
2
+ import { SolaceStepperProps } from "../../../types";
3
+ /**
4
+ * SolaceStepper component.
5
+ * Renders a stepper component with customizable steps and content.
6
+ *
7
+ * @param {SolaceStepperProps} props - The component props.
8
+ * @returns {JSX.Element} The SolaceStepper component.
9
+ */
10
+ export default function SolaceStepper(props: SolaceStepperProps): JSX.Element;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { SolaceStepperFooterProps } from "../../../types";
3
+ export default function SolaceStepperFooter(props: SolaceStepperFooterProps): JSX.Element;
@@ -0,0 +1,108 @@
1
+ import React from "react";
2
+ import SolaceComponentProps from "../SolaceComponentProps";
3
+ export interface SolaceTextAreaChangeEvent {
4
+ name: string;
5
+ value: string;
6
+ }
7
+ export interface SolaceTextAreaProps extends SolaceComponentProps {
8
+ /**
9
+ * Unique identifier ... if `id` is not specified, `name` value will be used in order to make `label` and `helperText` accessible for screen readers
10
+ */
11
+ id?: string;
12
+ /**
13
+ * Name attribute to assign to the `input` element
14
+ */
15
+ name: string;
16
+ /**
17
+ * the label content to display on the screen
18
+ */
19
+ label?: string | JSX.Element;
20
+ /**
21
+ * The value of the `input` element, required for controlled component
22
+ */
23
+ value?: string;
24
+ /**
25
+ * Content to display as supportive/explanitory text
26
+ */
27
+ helperText?: string | JSX.Element;
28
+ /**
29
+ * Short hint displayed in the `input` before user enters a value
30
+ */
31
+ placeholder?: string;
32
+ /**
33
+ * The maximum number of characters which can be typed as the `input` value
34
+ */
35
+ maxLength?: number;
36
+ /**
37
+ * The minimum numbers of rows the text area can shrink to
38
+ */
39
+ minRows?: number;
40
+ /**
41
+ * The maximum number of rows the text area can expand to (overflow scrollbar will render if necessary)
42
+ */
43
+ maxRows?: number;
44
+ /**
45
+ * The text to display as the tooltip hint
46
+ */
47
+ title?: string;
48
+ /**
49
+ * Boolean flag to control whether the `input` element is focused during first mount
50
+ */
51
+ autoFocus?: boolean;
52
+ /**
53
+ * Boolean flag to mark the `input` in error state
54
+ */
55
+ hasErrors?: boolean;
56
+ /**
57
+ * Boolean flag used to display an indicator of whether or not this `input` is mandatory
58
+ */
59
+ required?: boolean;
60
+ /**
61
+ * Boolean flag to control whether to stack the label on top of the `input` element (false) or place them inline to one another (true)
62
+ */
63
+ inlineLabel?: boolean;
64
+ /**
65
+ * Boolean flag to disable the `input`
66
+ */
67
+ disabled?: boolean;
68
+ /**
69
+ * Boolean flag to set the `input` in a read-only state
70
+ */
71
+ readOnly?: boolean;
72
+ /**
73
+ * Callback function to trigger whenever the value of the `input` is changed
74
+ */
75
+ onChange?: (event: SolaceTextAreaChangeEvent) => void;
76
+ /**
77
+ * Callback function to trigger whenever the element of the `input` loses focus
78
+ */
79
+ onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
80
+ /**
81
+ * Callback function to trigger whenever the element of the `input` receives key down event
82
+ */
83
+ onKeyDown?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
84
+ /**
85
+ * Callback function to trigger whenever the element of the `input` receives key up event
86
+ */
87
+ onKeyUp?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
88
+ /**
89
+ * Callback function to trigger whenever the element of the `input` is focused
90
+ */
91
+ onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
92
+ /**
93
+ * Custom Width of the component.
94
+ */
95
+ width?: string;
96
+ /**
97
+ * If true, the input will take up the full width of its container.
98
+ */
99
+ fullWidth?: boolean;
100
+ /**
101
+ * both: The element displays a mechanism for allowing the user to resize it, which may be resized both horizontally and vertically.
102
+ * horizontal: The element displays a mechanism for allowing the user to resize it in the horizontal direction.
103
+ * vertical: The element displays a mechanism for allowing the user to resize it in the vertical direction.
104
+ */
105
+ resizable?: "both" | "horizontal" | "vertical";
106
+ }
107
+ declare const SolaceTextArea: React.FC<SolaceTextAreaProps>;
108
+ export default SolaceTextArea;
@@ -0,0 +1,126 @@
1
+ import React from "react";
2
+ import SolaceComponentProps from "../SolaceComponentProps";
3
+ export interface SolaceTextFieldChangeEvent {
4
+ name: string;
5
+ value: string;
6
+ }
7
+ export interface SolaceTextFieldProps extends SolaceComponentProps {
8
+ /**
9
+ * Unique identifier ... if `id` is not specified, `name` value will be used in order to make `label` and `helperText` accessible for screen readers
10
+ */
11
+ id?: string;
12
+ /**
13
+ * Name attribute to assign to the `input` element
14
+ */
15
+ name: string;
16
+ /**
17
+ * the label content to display on the screen
18
+ */
19
+ label?: string | JSX.Element;
20
+ /**
21
+ * The value of the `input` element, required for controlled component
22
+ */
23
+ value?: string | number;
24
+ /**
25
+ * Content to display as supportive/explanitory text
26
+ */
27
+ helperText?: string | JSX.Element;
28
+ /**
29
+ * Short hint displayed in the `input` before user enters a value
30
+ */
31
+ placeholder?: string;
32
+ /**
33
+ * The maximum number of characters which can be typed as the `input` value
34
+ */
35
+ maxLength?: number;
36
+ /**
37
+ * The type of `input` element to render
38
+ */
39
+ type?: "text" | "number" | "password" | "email" | "url";
40
+ /**
41
+ * The size/width of the `input` measured in characters
42
+ */
43
+ size?: number;
44
+ /**
45
+ * The text to display as the tooltip hint
46
+ */
47
+ title?: string;
48
+ /**
49
+ * Boolean flag to control whether the `input` element is focused during first mount
50
+ */
51
+ autoFocus?: boolean;
52
+ /**
53
+ * Boolean flag to mark the `input` in error state
54
+ */
55
+ hasErrors?: boolean;
56
+ /**
57
+ * Boolean flag to mark the `input` in warn state
58
+ */
59
+ hasWarnings?: boolean;
60
+ /**
61
+ * Boolean flag used to display an indicator of whether or not this `input` is mandatory
62
+ */
63
+ required?: boolean;
64
+ /**
65
+ * Boolean flag to control whether to stack the label on top of the `input` element (false) or place them inline to one another (true)
66
+ */
67
+ inlineLabel?: boolean;
68
+ /**
69
+ * Allows custom icon to be set at the beginning/end of the field.
70
+ */
71
+ customIcon?: {
72
+ icon: React.ReactNode;
73
+ position: "end" | "start";
74
+ handleClick?: (event: React.MouseEvent<HTMLButtonElement>) => void;
75
+ };
76
+ /**
77
+ * Boolean flag to disable the `input`
78
+ */
79
+ disabled?: boolean;
80
+ /**
81
+ * Boolean flag to set the `input` in a read-only state
82
+ */
83
+ readOnly?: boolean;
84
+ /**
85
+ * Callback function to trigger whenever the value of the `input` is changed
86
+ */
87
+ onChange?: (event: SolaceTextFieldChangeEvent) => void;
88
+ /**
89
+ * Callback function to trigger whenever the element of the `input` loses focus
90
+ */
91
+ onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
92
+ /**
93
+ * Callback function to trigger whenever the element of the `input` receives key down event
94
+ */
95
+ onKeyDown?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
96
+ /**
97
+ * Callback function to trigger whenever the element of the `input` receives key up event
98
+ */
99
+ onKeyUp?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
100
+ /**
101
+ * Callback function to trigger whenever the element of the `input` is focused
102
+ */
103
+ onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
104
+ /**
105
+ * Custom Width of the component.
106
+ */
107
+ width?: string;
108
+ /**
109
+ * If true, the input will take up the full width of its container.
110
+ */
111
+ fullWidth?: boolean;
112
+ /**
113
+ * optional prop to pass an array of icon or button at the end of textfield
114
+ */
115
+ endAdornment?: (React.ReactNode | JSX.Element)[];
116
+ /**
117
+ * minimum width of the component
118
+ */
119
+ minWidth?: string;
120
+ /**
121
+ * pass a ref to the input element.
122
+ */
123
+ inputRef?: (input: HTMLInputElement) => void;
124
+ }
125
+ declare function SolaceTextField({ id, name, label, value, helperText, placeholder, maxLength, type, size, title, autoFocus, hasErrors, hasWarnings, required, inlineLabel, customIcon, disabled, readOnly, onChange, onBlur, onKeyDown, onKeyUp, onFocus, dataQa, dataTags, fullWidth, width, endAdornment, minWidth, inputRef }: SolaceTextFieldProps): JSX.Element;
126
+ export default SolaceTextField;
@@ -0,0 +1,58 @@
1
+ /// <reference types="react" />
2
+ import SolaceComponentProps from "../SolaceComponentProps";
3
+ export interface SolaceToggleChangeEvent {
4
+ name: string;
5
+ value: boolean;
6
+ }
7
+ export interface SolaceToggleProps extends SolaceComponentProps {
8
+ /**
9
+ * Unique identifier ... if `id` is not specified, `name` value will be used in order to make `label` accessible for screen readers
10
+ */
11
+ id?: string;
12
+ /**
13
+ * Name attribute to assign to the `toggle` element
14
+ */
15
+ name: string;
16
+ /**
17
+ * the label content to display on the screen
18
+ */
19
+ label?: string | JSX.Element;
20
+ /**
21
+ * The text to display as the tooltip hint
22
+ */
23
+ title?: string;
24
+ /**
25
+ * Content to display as supportive/explanitory text
26
+ */
27
+ helperText?: string | JSX.Element;
28
+ /**
29
+ * Boolean flag to show the state of toggle element
30
+ */
31
+ stateText?: boolean;
32
+ /**
33
+ * Boolean flag to mark the `input` in error state
34
+ */
35
+ hasErrors?: boolean;
36
+ /**
37
+ * Boolean flag to check or uncheck the `toggle`
38
+ */
39
+ isOn?: boolean;
40
+ /**
41
+ * Boolean flag used to display an indicator of whether or not this `toggle` is mandatory
42
+ */
43
+ required?: boolean;
44
+ /**
45
+ * Boolean flag to disable the `toggle`
46
+ */
47
+ disabled?: boolean;
48
+ /**
49
+ * Display the label with a larger font
50
+ */
51
+ largeLabel?: boolean;
52
+ /**
53
+ * Callback function to trigger whenever the value of the `toggle` is changed
54
+ */
55
+ onChange?: (event: SolaceToggleChangeEvent) => void;
56
+ }
57
+ declare function SolaceToggle({ id, name, label, title, helperText, hasErrors, isOn, required, disabled, largeLabel, stateText, onChange, dataQa, dataTags }: SolaceToggleProps): JSX.Element;
58
+ export default SolaceToggle;
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ import SolaceComponentProps from "../SolaceComponentProps";
3
+ export interface SolaceToggleButtonGroupProps extends SolaceComponentProps {
4
+ options: SolaceToggleButtonGroupOptionProps[];
5
+ onChange: (event: React.MouseEvent<HTMLElement, MouseEvent>, value: string) => void;
6
+ activeValue?: string;
7
+ isDisabled?: boolean;
8
+ }
9
+ export interface SolaceToggleButtonGroupOptionProps extends SolaceComponentProps {
10
+ label: string | JSX.Element;
11
+ value: string;
12
+ disabled?: boolean;
13
+ }
14
+ declare function SolaceToggleButtonGroup({ onChange, options, activeValue, isDisabled }: SolaceToggleButtonGroupProps): JSX.Element;
15
+ export default SolaceToggleButtonGroup;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import SolaceComponentProps from "../SolaceComponentProps";
3
+ export interface WarningTextProps extends SolaceComponentProps {
4
+ children: string | JSX.Element;
5
+ }
6
+ declare function WarningText({ children }: WarningTextProps): JSX.Element;
7
+ export default WarningText;
@@ -0,0 +1,79 @@
1
+ import { RJSFSchema, WidgetProps } from "@rjsf/utils";
2
+ import SolaceComponentProps from "../SolaceComponentProps";
3
+ import { ElementType } from "react";
4
+ import Ajv from "ajv";
5
+ declare enum FormFieldType {
6
+ description = "description",
7
+ property = "property",
8
+ submitButton = "submitButton",
9
+ title = "title"
10
+ }
11
+ interface FormItem {
12
+ id: string;
13
+ schema: unknown;
14
+ }
15
+ interface FormOptions {
16
+ order?: string[];
17
+ isHidden?: (fieldType: FormFieldType, propertyName?: string, data?: any) => boolean;
18
+ shouldShowEmptyValueForSensitiveField?: (schema: RJSFSchema, props: WidgetProps) => boolean;
19
+ tagName?: ElementType<any> | undefined;
20
+ }
21
+ export interface SolaceJsonSchemaFormProps extends SolaceComponentProps {
22
+ formItem: FormItem;
23
+ /**
24
+ * The form data to render in the form.
25
+ */
26
+ formData?: Record<string, unknown>;
27
+ /**
28
+ * The form options to customize the form, including:
29
+ *
30
+ * order?: string[]; // ordered property keys for display
31
+ * isHidden?: () => boolean; // function to determine if field should be hidden,
32
+ * shouldShowEmptyValueForSensitiveField?: (schema: RJSFSchema, props: WidgetProps) => boolean; // function to determine if empty sensitive fields should show empty value instead of sensitive field toggle in readonly mode,
33
+ * tagName?: ElementType<any> | undefined; // tag name (eg. "div") to replace "form" and support embedding in other forms
34
+ */
35
+ formOptions?: FormOptions;
36
+ readOnly?: boolean;
37
+ /**
38
+ * Whether the form is disabled.
39
+ */
40
+ disabled?: boolean;
41
+ /**
42
+ * Can be used in trigger form validation manually
43
+ * e.g. formRef.current.validateForm()
44
+ */
45
+ formRef?: any;
46
+ /**
47
+ * Whether to validate the form data live
48
+ */
49
+ liveValidate?: boolean;
50
+ /**
51
+ * Callback function when the form data changes.
52
+ */
53
+ onChange?: (formData: any, formErrors: any[]) => void;
54
+ /**
55
+ * Function to transform the description widget props.
56
+ */
57
+ transformDescription?: (props: any) => any;
58
+ /**
59
+ * Function to transform the error message.
60
+ */
61
+ transformError?: (error: {
62
+ name: string;
63
+ message: string;
64
+ }) => any;
65
+ /**
66
+ * Function to transform the widget props.
67
+ */
68
+ transformWidget?: (props: any) => any;
69
+ /**
70
+ * Function to transform the title widget props.
71
+ */
72
+ transformTitle?: (props: any) => any;
73
+ /**
74
+ * Custom Ajv to use for the form, default to Ajv2020.
75
+ */
76
+ ajvClass?: typeof Ajv;
77
+ }
78
+ declare function SolaceJsonSchemaForm({ formItem, formData, formOptions, readOnly, disabled, formRef, liveValidate, onChange, transformDescription, transformError, transformWidget, transformTitle, ajvClass }: Readonly<SolaceJsonSchemaFormProps>): JSX.Element;
79
+ export default SolaceJsonSchemaForm;
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import { DescriptionFieldProps, RegistryWidgetsType, RJSFSchema, TitleFieldProps, WidgetProps } from "@rjsf/utils";
3
+ export declare enum CustomProperty {
4
+ error = "x-custom-error",
5
+ hidden = "x-custom-hidden"
6
+ }
7
+ export declare const getTemplates: (transformDescriptionProps?: ((props: DescriptionFieldProps) => DescriptionFieldProps) | undefined, transformTitleProps?: ((props: TitleFieldProps) => TitleFieldProps) | undefined) => {
8
+ DescriptionFieldTemplate: (props: DescriptionFieldProps) => JSX.Element | null;
9
+ TitleFieldTemplate: (props: TitleFieldProps) => JSX.Element | null;
10
+ };
11
+ export declare const getWidgets: (transformWidgetProps?: ((props: WidgetProps) => WidgetProps) | undefined, shouldShowEmptyValueForSensitiveField?: ((schema: RJSFSchema, props: WidgetProps) => boolean) | undefined) => RegistryWidgetsType;
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { SolaceGridProps } from "../../types/solaceGrid";
3
+ /**
4
+ * All of the supported props related to SolaceGrid can be found at https://mui.com/api/grid/
5
+ * Examples on how to use this components can be found at https://mui.com/components/grid/
6
+ * All props provided by mui have been extended, to provide more flexibility for developers while using these layout components.
7
+ */
8
+ export default function SolaceGrid(props: SolaceGridProps): JSX.Element;
@@ -0,0 +1,26 @@
1
+ /// <reference types="react" />
2
+ import SolaceComponentProps from "../SolaceComponentProps";
3
+ export interface VirtualizeListOptions {
4
+ height?: number;
5
+ width?: string | number;
6
+ itemHeight?: number;
7
+ overscanCount?: number;
8
+ contentPlaceholder?: JSX.Element;
9
+ }
10
+ interface SolaceGridListProps<T> extends SolaceComponentProps {
11
+ id?: string;
12
+ items: T[];
13
+ objectIdentifier?: string;
14
+ indicatorVariantIdentifier?: string;
15
+ emphasizedIdentifier?: string;
16
+ headers?: string[];
17
+ selectedItemId?: string | number;
18
+ onSelection?: (item: T) => void;
19
+ rowMapping: (item: T, index: number) => JSX.Element[];
20
+ gridTemplate: string;
21
+ background?: string;
22
+ numOfGridListItemDisplayed?: number;
23
+ virtualizedListOption?: VirtualizeListOptions;
24
+ }
25
+ declare function SolaceGridList<T>({ id, items, objectIdentifier, indicatorVariantIdentifier, emphasizedIdentifier, headers, selectedItemId, onSelection, rowMapping, gridTemplate, dataQa, background, numOfGridListItemDisplayed, virtualizedListOption }: SolaceGridListProps<T>): JSX.Element;
26
+ export default SolaceGridList;
@@ -0,0 +1,26 @@
1
+ /// <reference types="react" />
2
+ import SolaceComponentProps from "../SolaceComponentProps";
3
+ import { VirtualizeListOptions } from "./SolaceGridList";
4
+ interface SolaceGridListMultiSelectProps<T> extends SolaceComponentProps {
5
+ id?: string;
6
+ items: T[];
7
+ objectIdentifier?: string;
8
+ indicatorVariantIdentifier?: string;
9
+ emphasizedIdentifier?: string;
10
+ headers?: string[];
11
+ highlightedRowId?: string | number;
12
+ onRowHighlight?: (item: T) => void;
13
+ selectedRowIds?: Array<string | number>;
14
+ onSelection?: (item: T[]) => void;
15
+ rowMapping: (item: T) => JSX.Element[];
16
+ gridTemplate: string;
17
+ selectAll?: boolean;
18
+ selectAllLabel?: string;
19
+ actions?: JSX.Element[];
20
+ numOfGridListItemDisplayed?: number;
21
+ showCount?: boolean;
22
+ itemsType?: string;
23
+ virtualizedListOption?: VirtualizeListOptions;
24
+ }
25
+ declare function SolaceGridListMultiSelect<T>({ id, items, objectIdentifier, indicatorVariantIdentifier, emphasizedIdentifier, headers, highlightedRowId, onRowHighlight, selectedRowIds, onSelection, rowMapping, gridTemplate, selectAllLabel, selectAll, actions, dataQa, numOfGridListItemDisplayed, showCount, itemsType, virtualizedListOption }: SolaceGridListMultiSelectProps<T>): JSX.Element;
26
+ export default SolaceGridListMultiSelect;
@@ -0,0 +1,30 @@
1
+ /// <reference types="react" />
2
+ export declare type SolaceIconTabsButton = {
3
+ /**
4
+ * Icon of the view
5
+ */
6
+ icon: JSX.Element;
7
+ /**
8
+ * Unique identifier of the view
9
+ */
10
+ value: string;
11
+ /**
12
+ * Tooltip of the view
13
+ */
14
+ tooltip: string;
15
+ };
16
+ export interface SolaceIconTabsProps {
17
+ /**
18
+ * Array of views (typical is 2 views but could be more)
19
+ */
20
+ views: SolaceIconTabsButton[];
21
+ /**
22
+ * The value of the active view
23
+ */
24
+ activeViewValue: string;
25
+ /**
26
+ * Callback fired when the value changes.
27
+ */
28
+ onViewClick: (value: string) => void;
29
+ }
30
+ export default function SolaceIconTabs({ views, activeViewValue, onViewClick }: SolaceIconTabsProps): JSX.Element;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { solaceListProps } from "../../types";
3
+ declare function SolaceList({ children, ...rest }: solaceListProps): JSX.Element;
4
+ export default SolaceList;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { solaceListItemProps } from "../../types";
3
+ declare function SolaceListItem({ children, ...rest }: solaceListItemProps): JSX.Element;
4
+ export default SolaceListItem;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { solaceListItemButtonProps } from "../../types";
3
+ declare function SolaceListItemButton({ children, ...rest }: solaceListItemButtonProps): JSX.Element;
4
+ export default SolaceListItemButton;
@@ -0,0 +1,60 @@
1
+ /// <reference types="react" />
2
+ import SolaceComponentProps from "../SolaceComponentProps";
3
+ import { SolacePath } from "../SolaceBreadcrumb";
4
+ import { TitleLocation } from "@src/types/solacePageHeader";
5
+ export interface SolacePageHeaderProps extends SolaceComponentProps {
6
+ /**
7
+ * Optional id to be used
8
+ */
9
+ id?: string;
10
+ /**
11
+ * The header's title to display
12
+ */
13
+ title: string;
14
+ /**
15
+ * The sub-title to display next to the title (when used, a
16
+ * column ":" will show up after the title automagically)
17
+ */
18
+ subTitle?: string;
19
+ /**
20
+ * The release string (e.g. "BETA")
21
+ */
22
+ release?: string;
23
+ /**
24
+ * The environment's chip (#SolaceEnvironmentChip) or (#SolaceEnvironmentSelectChip)
25
+ */
26
+ environment?: JSX.Element;
27
+ /**
28
+ * The header's top border color (should match the bgColor used with #SolaceEnvironmentChip)
29
+ */
30
+ borderTop?: string;
31
+ /**
32
+ * Breadcrumbs where the last path should be the current one. It can be a #SolaceBreadcrumb component
33
+ */
34
+ breadcrumbs?: SolacePath[] | JSX.Element;
35
+ /**
36
+ * Array of actions (like #SolaceButton) but can be pretty much anything you want
37
+ */
38
+ actions?: JSX.Element[];
39
+ /**
40
+ * The action menu (usually with a "..." icon) that will appear on 2nd row at the far end
41
+ */
42
+ actionMenu?: JSX.Element;
43
+ /**
44
+ * The tabs (#SolaceTabs) to be displayed next to the title/sub-title
45
+ */
46
+ tabs?: JSX.Element;
47
+ /**
48
+ * The icon tabs (#SolaceIconTabs) to be displayed before the title/sub-title
49
+ */
50
+ iconTabs?: JSX.Element;
51
+ /**
52
+ * Used to add a "Return to X" link in front of the breadcrumbs (NOTE: this property may go away in the future)
53
+ */
54
+ returnTo?: JSX.Element;
55
+ /**
56
+ * Used to determine the location of the title. Options: TOP_OF_TABS, LEFT_OF_TABS
57
+ */
58
+ titleLocation?: TitleLocation;
59
+ }
60
+ export default function SolacePageHeader({ id, title, subTitle, release, environment, borderTop, breadcrumbs, actions, actionMenu, tabs, iconTabs, returnTo, dataQa, dataTags, titleLocation }: SolacePageHeaderProps): JSX.Element;
@@ -0,0 +1,64 @@
1
+ /// <reference types="react" />
2
+ export declare enum PANEL_POSITION {
3
+ LEFT = "left",
4
+ RIGHT = "right"
5
+ }
6
+ interface BaseSolaceSidePanelLayoutProps {
7
+ /**
8
+ * The content you want to show/hide in the side panel
9
+ */
10
+ sidePanelContent?: JSX.Element;
11
+ /**
12
+ * Flag signifying if the side panel is expanded or collapsed
13
+ */
14
+ showSidePanel: boolean;
15
+ /**
16
+ * The desired width of the side panel
17
+ */
18
+ sidePanelWidth?: number | string;
19
+ /**
20
+ * property to control which side of the main content the side panel is rendered on
21
+ */
22
+ sidePanelPosition?: PANEL_POSITION;
23
+ /**
24
+ * Optional flag to have side panel (drawer) float over main content. default is set to false (shifting the main content)
25
+ */
26
+ overlayContent?: boolean;
27
+ /**
28
+ * Optional title to display in the side panel banner
29
+ */
30
+ sidePanelTitle?: string;
31
+ /**
32
+ * Optional flag to control whether to show standard padding in the side panel content area
33
+ */
34
+ showStandardPadding?: boolean;
35
+ /**
36
+ * The main content that is render on the screen regardless if the side panel is
37
+ * expanded or collapsed. As the side panel expands, the main content area shall be
38
+ * responsive and shink to accomodate it's size
39
+ */
40
+ children: JSX.Element;
41
+ }
42
+ interface WithClosingButton extends BaseSolaceSidePanelLayoutProps {
43
+ /**
44
+ * Flag to show a close button in the side panel
45
+ */
46
+ showClosingButton: true;
47
+ /**
48
+ * Callback function invoked when the close button is clicked (required when showClosingButton is true)
49
+ */
50
+ onPanelClose: () => void;
51
+ }
52
+ interface WithoutClosingButton extends BaseSolaceSidePanelLayoutProps {
53
+ /**
54
+ * Flag to show a close button in the side panel
55
+ */
56
+ showClosingButton?: false;
57
+ /**
58
+ * Callback function invoked when the close button is clicked
59
+ */
60
+ onPanelClose?: () => void;
61
+ }
62
+ export declare type SolaceSidePanelLayoutProps = WithClosingButton | WithoutClosingButton;
63
+ declare function SolaceSidePanelLayout({ children, sidePanelContent, showSidePanel, sidePanelWidth, sidePanelPosition, overlayContent, showClosingButton, onPanelClose, sidePanelTitle, showStandardPadding }: SolaceSidePanelLayoutProps): JSX.Element;
64
+ export default SolaceSidePanelLayout;