@sap-ux/ui-components 1.14.0 → 1.14.1

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 (253) hide show
  1. package/dist/components/Icons.d.ts +150 -150
  2. package/dist/components/Icons.js +628 -628
  3. package/dist/components/UIActionCallout/UIActionCallout.d.ts +64 -64
  4. package/dist/components/UIActionCallout/UIActionCallout.js +67 -67
  5. package/dist/components/UIActionCallout/index.d.ts +1 -1
  6. package/dist/components/UIActionCallout/index.js +17 -17
  7. package/dist/components/UIBreadcrumb/UIBreadcrumb.d.ts +23 -23
  8. package/dist/components/UIBreadcrumb/UIBreadcrumb.js +38 -38
  9. package/dist/components/UIBreadcrumb/index.d.ts +1 -1
  10. package/dist/components/UIBreadcrumb/index.js +17 -17
  11. package/dist/components/UIButton/UIActionButton.d.ts +23 -23
  12. package/dist/components/UIButton/UIActionButton.js +89 -89
  13. package/dist/components/UIButton/UIDefaultButton.d.ts +41 -23
  14. package/dist/components/UIButton/UIDefaultButton.d.ts.map +1 -1
  15. package/dist/components/UIButton/UIDefaultButton.js +255 -237
  16. package/dist/components/UIButton/UIDefaultButton.js.map +1 -1
  17. package/dist/components/UIButton/UIIconButton.d.ts +37 -37
  18. package/dist/components/UIButton/UIIconButton.js +106 -106
  19. package/dist/components/UIButton/UISmallButton.d.ts +34 -34
  20. package/dist/components/UIButton/UISmallButton.js +115 -115
  21. package/dist/components/UIButton/UISplitButton.d.ts +44 -44
  22. package/dist/components/UIButton/UISplitButton.js +86 -86
  23. package/dist/components/UIButton/index.d.ts +7 -7
  24. package/dist/components/UIButton/index.js +21 -21
  25. package/dist/components/UICallout/CalloutCollisionTransform.d.ts +54 -54
  26. package/dist/components/UICallout/CalloutCollisionTransform.js +160 -160
  27. package/dist/components/UICallout/UICallout.d.ts +48 -48
  28. package/dist/components/UICallout/UICallout.js +122 -122
  29. package/dist/components/UICallout/index.d.ts +2 -2
  30. package/dist/components/UICallout/index.js +18 -18
  31. package/dist/components/UICheckbox/UICheckbox.d.ts +34 -34
  32. package/dist/components/UICheckbox/UICheckbox.js +135 -135
  33. package/dist/components/UICheckbox/index.d.ts +1 -1
  34. package/dist/components/UICheckbox/index.js +17 -17
  35. package/dist/components/UIChoiceGroup/UIChoiceGroup.d.ts +28 -28
  36. package/dist/components/UIChoiceGroup/UIChoiceGroup.js +182 -182
  37. package/dist/components/UIChoiceGroup/index.d.ts +1 -1
  38. package/dist/components/UIChoiceGroup/index.js +17 -17
  39. package/dist/components/UIComboBox/UIComboBox.d.ts +208 -208
  40. package/dist/components/UIComboBox/UIComboBox.js +563 -563
  41. package/dist/components/UIComboBox/index.d.ts +1 -1
  42. package/dist/components/UIComboBox/index.js +17 -17
  43. package/dist/components/UIContextualMenu/UIContextualMenu.d.ts +31 -31
  44. package/dist/components/UIContextualMenu/UIContextualMenu.js +126 -126
  45. package/dist/components/UIContextualMenu/UIHighlightMenuOption.d.ts +19 -19
  46. package/dist/components/UIContextualMenu/UIHighlightMenuOption.js +50 -50
  47. package/dist/components/UIContextualMenu/index.d.ts +2 -2
  48. package/dist/components/UIContextualMenu/index.js +18 -18
  49. package/dist/components/UICreateSelect/UICreateSelect.d.ts +36 -36
  50. package/dist/components/UICreateSelect/UICreateSelect.js +172 -172
  51. package/dist/components/UICreateSelect/index.d.ts +1 -1
  52. package/dist/components/UICreateSelect/index.js +17 -17
  53. package/dist/components/UIDatePicker/UIDatePicker.d.ts +49 -49
  54. package/dist/components/UIDatePicker/UIDatePicker.js +72 -72
  55. package/dist/components/UIDatePicker/index.d.ts +1 -1
  56. package/dist/components/UIDatePicker/index.js +17 -17
  57. package/dist/components/UIDialog/UIDialog.d.ts +118 -118
  58. package/dist/components/UIDialog/UIDialog.js +281 -281
  59. package/dist/components/UIDialog/index.d.ts +1 -1
  60. package/dist/components/UIDialog/index.js +17 -17
  61. package/dist/components/UIDropdown/UIDropdown.d.ts +94 -94
  62. package/dist/components/UIDropdown/UIDropdown.js +224 -224
  63. package/dist/components/UIDropdown/index.d.ts +2 -2
  64. package/dist/components/UIDropdown/index.js +18 -18
  65. package/dist/components/UIDropdown/utils.d.ts +20 -20
  66. package/dist/components/UIDropdown/utils.js +43 -43
  67. package/dist/components/UIFlexibleTable/RowActions.d.ts +16 -16
  68. package/dist/components/UIFlexibleTable/RowActions.js +73 -73
  69. package/dist/components/UIFlexibleTable/RowData.d.ts +16 -16
  70. package/dist/components/UIFlexibleTable/RowData.js +111 -111
  71. package/dist/components/UIFlexibleTable/UIFlexibleTable.d.ts +11 -11
  72. package/dist/components/UIFlexibleTable/UIFlexibleTable.js +280 -280
  73. package/dist/components/UIFlexibleTable/UIFlexibleTableActionButton.d.ts +20 -20
  74. package/dist/components/UIFlexibleTable/UIFlexibleTableActionButton.js +20 -20
  75. package/dist/components/UIFlexibleTable/UIFlexibleTableRow.d.ts +26 -26
  76. package/dist/components/UIFlexibleTable/UIFlexibleTableRow.js +219 -219
  77. package/dist/components/UIFlexibleTable/UIFlexibleTableRowActionButton.d.ts +20 -20
  78. package/dist/components/UIFlexibleTable/UIFlexibleTableRowActionButton.js +19 -19
  79. package/dist/components/UIFlexibleTable/UIFlexibleTableRowNoData.d.ts +15 -15
  80. package/dist/components/UIFlexibleTable/UIFlexibleTableRowNoData.js +28 -28
  81. package/dist/components/UIFlexibleTable/index.d.ts +5 -5
  82. package/dist/components/UIFlexibleTable/index.js +21 -21
  83. package/dist/components/UIFlexibleTable/types.d.ts +143 -143
  84. package/dist/components/UIFlexibleTable/types.js +14 -14
  85. package/dist/components/UIFlexibleTable/utils.d.ts +25 -25
  86. package/dist/components/UIFlexibleTable/utils.js +49 -49
  87. package/dist/components/UIFocusZone/UIFocusTrapZone.d.ts +22 -22
  88. package/dist/components/UIFocusZone/UIFocusTrapZone.js +33 -33
  89. package/dist/components/UIFocusZone/UIFocusZone.d.ts +23 -23
  90. package/dist/components/UIFocusZone/UIFocusZone.js +35 -35
  91. package/dist/components/UIFocusZone/index.d.ts +2 -2
  92. package/dist/components/UIFocusZone/index.js +18 -18
  93. package/dist/components/UIIcon/UIIcon.d.ts +24 -24
  94. package/dist/components/UIIcon/UIIcon.js +37 -37
  95. package/dist/components/UIIcon/index.d.ts +1 -1
  96. package/dist/components/UIIcon/index.js +17 -17
  97. package/dist/components/UIInput/UITextInput.d.ts +51 -51
  98. package/dist/components/UIInput/UITextInput.js +244 -244
  99. package/dist/components/UIInput/index.d.ts +1 -1
  100. package/dist/components/UIInput/index.js +17 -17
  101. package/dist/components/UILabel/UILabel.d.ts +30 -30
  102. package/dist/components/UILabel/UILabel.js +64 -64
  103. package/dist/components/UILabel/index.d.ts +1 -1
  104. package/dist/components/UILabel/index.js +17 -17
  105. package/dist/components/UILink/UILink.d.ts +25 -25
  106. package/dist/components/UILink/UILink.js +71 -71
  107. package/dist/components/UILink/index.d.ts +1 -1
  108. package/dist/components/UILink/index.js +17 -17
  109. package/dist/components/UIList/UIList.d.ts +31 -31
  110. package/dist/components/UIList/UIList.js +120 -120
  111. package/dist/components/UIList/index.d.ts +1 -1
  112. package/dist/components/UIList/index.js +17 -17
  113. package/dist/components/UILoader/UILoader.d.ts +27 -27
  114. package/dist/components/UILoader/UILoader.js +78 -78
  115. package/dist/components/UILoader/index.d.ts +1 -1
  116. package/dist/components/UILoader/index.js +17 -17
  117. package/dist/components/UIMessageBar/UIMessageBar.d.ts +25 -25
  118. package/dist/components/UIMessageBar/UIMessageBar.js +56 -56
  119. package/dist/components/UIMessageBar/index.d.ts +1 -1
  120. package/dist/components/UIMessageBar/index.js +17 -17
  121. package/dist/components/UIModal/UIModal.d.ts +23 -23
  122. package/dist/components/UIModal/UIModal.js +43 -43
  123. package/dist/components/UIModal/index.d.ts +1 -1
  124. package/dist/components/UIModal/index.js +17 -17
  125. package/dist/components/UIOverlay/UIOverlay.d.ts +22 -22
  126. package/dist/components/UIOverlay/UIOverlay.js +38 -38
  127. package/dist/components/UIOverlay/index.d.ts +1 -1
  128. package/dist/components/UIOverlay/index.js +17 -17
  129. package/dist/components/UIPersona/UIPersona.d.ts +27 -27
  130. package/dist/components/UIPersona/UIPersona.js +48 -48
  131. package/dist/components/UIPersona/index.d.ts +1 -1
  132. package/dist/components/UIPersona/index.js +17 -17
  133. package/dist/components/UISearchBox/UISearchBox.d.ts +22 -22
  134. package/dist/components/UISearchBox/UISearchBox.js +155 -155
  135. package/dist/components/UISearchBox/index.d.ts +3 -3
  136. package/dist/components/UISearchBox/index.js +17 -17
  137. package/dist/components/UISection/UISection.d.ts +34 -34
  138. package/dist/components/UISection/UISection.js +44 -44
  139. package/dist/components/UISection/UISections.d.ts +249 -249
  140. package/dist/components/UISection/UISections.js +707 -707
  141. package/dist/components/UISection/UISplitter.d.ts +96 -96
  142. package/dist/components/UISection/UISplitter.js +220 -220
  143. package/dist/components/UISection/index.d.ts +3 -3
  144. package/dist/components/UISection/index.js +19 -19
  145. package/dist/components/UISeparator/UISeparator.d.ts +25 -25
  146. package/dist/components/UISeparator/UISeparator.js +65 -65
  147. package/dist/components/UISeparator/index.d.ts +1 -1
  148. package/dist/components/UISeparator/index.js +17 -17
  149. package/dist/components/UITable/UITable-helper.d.ts +88 -88
  150. package/dist/components/UITable/UITable-helper.js +263 -263
  151. package/dist/components/UITable/UITable.d.ts +213 -213
  152. package/dist/components/UITable/UITable.js +779 -779
  153. package/dist/components/UITable/index.d.ts +2 -2
  154. package/dist/components/UITable/index.js +18 -18
  155. package/dist/components/UITable/types.d.ts +77 -77
  156. package/dist/components/UITable/types.js +28 -28
  157. package/dist/components/UITabs/UITabs.d.ts +28 -28
  158. package/dist/components/UITabs/UITabs.js +70 -70
  159. package/dist/components/UITabs/index.d.ts +1 -1
  160. package/dist/components/UITabs/index.js +17 -17
  161. package/dist/components/UIToggle/UIToggle.d.ts +39 -39
  162. package/dist/components/UIToggle/UIToggle.js +181 -181
  163. package/dist/components/UIToggle/index.d.ts +1 -1
  164. package/dist/components/UIToggle/index.js +17 -17
  165. package/dist/components/UIToggleGroup/UIToggleGroup.d.ts +31 -31
  166. package/dist/components/UIToggleGroup/UIToggleGroup.js +139 -139
  167. package/dist/components/UIToggleGroup/UIToggleGroup.types.d.ts +22 -22
  168. package/dist/components/UIToggleGroup/UIToggleGroup.types.js +2 -2
  169. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.d.ts +25 -25
  170. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.js +77 -77
  171. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.types.d.ts +10 -10
  172. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.types.js +2 -2
  173. package/dist/components/UIToggleGroup/UIToggleGroupOption/index.d.ts +2 -2
  174. package/dist/components/UIToggleGroup/UIToggleGroupOption/index.js +18 -18
  175. package/dist/components/UIToggleGroup/index.d.ts +2 -2
  176. package/dist/components/UIToggleGroup/index.js +18 -18
  177. package/dist/components/UIToolbar/UIToolbar.d.ts +36 -36
  178. package/dist/components/UIToolbar/UIToolbar.js +104 -104
  179. package/dist/components/UIToolbar/UIToolbarColumn.d.ts +7 -7
  180. package/dist/components/UIToolbar/UIToolbarColumn.js +33 -33
  181. package/dist/components/UIToolbar/UIToolbarDivider.d.ts +27 -27
  182. package/dist/components/UIToolbar/UIToolbarDivider.js +52 -52
  183. package/dist/components/UIToolbar/index.d.ts +3 -3
  184. package/dist/components/UIToolbar/index.js +19 -19
  185. package/dist/components/UITooltip/UITooltip.d.ts +29 -29
  186. package/dist/components/UITooltip/UITooltip.js +77 -77
  187. package/dist/components/UITooltip/UITooltipUtils.d.ts +17 -17
  188. package/dist/components/UITooltip/UITooltipUtils.js +45 -45
  189. package/dist/components/UITooltip/index.d.ts +2 -2
  190. package/dist/components/UITooltip/index.js +18 -18
  191. package/dist/components/UITranslationInput/UIFormattedText.d.ts +46 -46
  192. package/dist/components/UITranslationInput/UIFormattedText.js +121 -121
  193. package/dist/components/UITranslationInput/UILoadButton.d.ts +52 -52
  194. package/dist/components/UITranslationInput/UILoadButton.js +109 -109
  195. package/dist/components/UITranslationInput/UITranslationButton.d.ts +14 -14
  196. package/dist/components/UITranslationInput/UITranslationButton.js +88 -88
  197. package/dist/components/UITranslationInput/UITranslationButton.types.d.ts +67 -67
  198. package/dist/components/UITranslationInput/UITranslationButton.types.js +21 -21
  199. package/dist/components/UITranslationInput/UITranslationInput.d.ts +25 -25
  200. package/dist/components/UITranslationInput/UITranslationInput.js +169 -169
  201. package/dist/components/UITranslationInput/UITranslationUtils.d.ts +64 -64
  202. package/dist/components/UITranslationInput/UITranslationUtils.js +168 -168
  203. package/dist/components/UITranslationInput/defaults.d.ts +2 -2
  204. package/dist/components/UITranslationInput/defaults.js +15 -15
  205. package/dist/components/UITranslationInput/index.d.ts +2 -2
  206. package/dist/components/UITranslationInput/index.js +18 -18
  207. package/dist/components/UITreeDropdown/UITreeDropdown.d.ts +265 -265
  208. package/dist/components/UITreeDropdown/UITreeDropdown.js +660 -660
  209. package/dist/components/UITreeDropdown/index.d.ts +1 -1
  210. package/dist/components/UITreeDropdown/index.js +17 -17
  211. package/dist/components/UIVerticalDivider/UIVerticalDivider.d.ts +23 -23
  212. package/dist/components/UIVerticalDivider/UIVerticalDivider.js +41 -41
  213. package/dist/components/UIVerticalDivider/index.d.ts +1 -1
  214. package/dist/components/UIVerticalDivider/index.js +17 -17
  215. package/dist/components/UIVirtualList/UIAutoSizer.d.ts +22 -22
  216. package/dist/components/UIVirtualList/UIAutoSizer.js +33 -33
  217. package/dist/components/UIVirtualList/UICellMeasurer.d.ts +23 -23
  218. package/dist/components/UIVirtualList/UICellMeasurer.js +33 -33
  219. package/dist/components/UIVirtualList/UIVirtualList.d.ts +43 -43
  220. package/dist/components/UIVirtualList/UIVirtualList.js +70 -70
  221. package/dist/components/UIVirtualList/index.d.ts +3 -3
  222. package/dist/components/UIVirtualList/index.js +19 -19
  223. package/dist/components/index.d.ts +38 -38
  224. package/dist/components/index.js +54 -54
  225. package/dist/helper/ValidationMessage/MessageWrapper.d.ts +17 -17
  226. package/dist/helper/ValidationMessage/MessageWrapper.js +34 -34
  227. package/dist/helper/ValidationMessage/index.d.ts +2 -2
  228. package/dist/helper/ValidationMessage/index.js +18 -18
  229. package/dist/helper/ValidationMessage/utils.d.ts +31 -31
  230. package/dist/helper/ValidationMessage/utils.js +121 -121
  231. package/dist/index.d.ts +2 -2
  232. package/dist/index.js +18 -18
  233. package/dist/utilities/DeepMerge.d.ts +10 -10
  234. package/dist/utilities/DeepMerge.js +48 -48
  235. package/dist/utilities/Dom.d.ts +14 -14
  236. package/dist/utilities/Dom.js +23 -23
  237. package/dist/utilities/Focus.d.ts +14 -14
  238. package/dist/utilities/Focus.js +34 -34
  239. package/dist/utilities/Id.d.ts +2 -2
  240. package/dist/utilities/Id.js +5 -5
  241. package/dist/utilities/Keys.d.ts +2 -2
  242. package/dist/utilities/Keys.js +5 -5
  243. package/dist/utilities/index.d.ts +4 -4
  244. package/dist/utilities/index.js +20 -20
  245. package/package.json +1 -1
  246. package/storybook/494.d8aaa4d7.iframe.bundle.js +1 -0
  247. package/storybook/{930.1b3c5615.iframe.bundle.js → 930.3177b0dc.iframe.bundle.js} +2 -2
  248. package/storybook/iframe.html +3 -3
  249. package/storybook/main.5f68bcca.iframe.bundle.js +1 -0
  250. package/storybook/project.json +1 -1
  251. package/storybook/{runtime~main.f52a1710.iframe.bundle.js → runtime~main.a213c0ae.iframe.bundle.js} +1 -1
  252. package/storybook/494.b98920dd.iframe.bundle.js +0 -1
  253. package/storybook/main.4ed99289.iframe.bundle.js +0 -1
@@ -1,266 +1,266 @@
1
- import React from 'react';
2
- import type { IContextualMenuProps, IContextualMenuItem, IContextualMenuListProps, IRenderFunction, IContextualMenuItemProps, IContextualMenuItemRenderFunctions } from '@fluentui/react';
3
- import { DirectionalHint } from '@fluentui/react';
4
- import type { UIMessagesExtendedProps } from '../../helper/ValidationMessage';
5
- import './UITreeDropdown.scss';
6
- export { DirectionalHint as UIDirectionalHint };
7
- export interface ItemsProps {
8
- label: string;
9
- value: string;
10
- children?: ItemsProps[];
11
- subMenuProps?: IContextualMenuProps;
12
- split?: boolean;
13
- }
14
- export interface UITreeDropdownProps extends UIMessagesExtendedProps {
15
- label?: string;
16
- disabled?: boolean;
17
- required?: boolean;
18
- value?: string;
19
- items: ItemsProps[];
20
- onParameterValueChange(value: string): void;
21
- placeholderText: string;
22
- valueSeparator?: string;
23
- directionalHint?: DirectionalHint;
24
- maxWidth?: number;
25
- useTargetWidth?: string;
26
- errorMessage?: string;
27
- readOnly?: boolean;
28
- }
29
- interface TreeItemInfo {
30
- level: number;
31
- item: IContextualMenuItem;
32
- index: number;
33
- parent?: TreeItemInfo;
34
- }
35
- export interface UITreeDropdownState {
36
- hasSelected: boolean;
37
- originalItems: IContextualMenuItem[];
38
- isHidden: boolean;
39
- value?: string;
40
- query: string;
41
- items: IContextualMenuItem[];
42
- valueSeparator: string;
43
- uiidInput: string;
44
- isDisabled: boolean;
45
- isMenuOpen: boolean;
46
- valueChanged: boolean;
47
- }
48
- export declare enum EdgePosition {
49
- First = "First",
50
- Last = "Last"
51
- }
52
- /**
53
- * UITreeDropdown component.
54
- *
55
- * @exports
56
- * @class UIVerticalDivider
57
- * @extends {React.Component<UITreeDropdownProps, UITreeDropdownState>}
58
- */
59
- export declare class UITreeDropdown extends React.Component<UITreeDropdownProps, UITreeDropdownState> {
60
- private readonly UITreeDropdownRef;
61
- private readonly UITreeDropdownFocusZoneRef;
62
- private inputRef;
63
- private submenuRefs;
64
- private defaultSubmenuFocus?;
65
- private submenuOffset;
66
- private lastKeyDown;
67
- private originalValue?;
68
- /**
69
- * Initializes component properties.
70
- *
71
- * @param {UITreeDropdownProps} props
72
- */
73
- constructor(props: UITreeDropdownProps);
74
- componentDidMount: () => void;
75
- componentDidUpdate: (prevProps: UITreeDropdownProps) => void;
76
- /**
77
- * Map the payload.
78
- *
79
- * @param {ItemsProps[]} items
80
- */
81
- buildItems: (items: ItemsProps[]) => void;
82
- /**
83
- * Sub items values and style.
84
- *
85
- * @param {ItemsProps} item
86
- * @returns {ItemsProps}
87
- */
88
- buildSubItems: (item: ItemsProps) => ItemsProps;
89
- /**
90
- * Map GD payload to ContextMenu payload.
91
- *
92
- * @param {ItemsProps[]} items
93
- * @param {number} level
94
- * @returns {IContextualMenuItem[]}
95
- */
96
- mapValuesToContextMenu: (items: ItemsProps[], level?: number) => IContextualMenuItem[];
97
- /**
98
- * Handle the selected value.
99
- *
100
- * @param {string} value
101
- */
102
- handleSelection: (value: string) => void;
103
- /**
104
- * Handle the keypress value.
105
- *
106
- * @param {React.KeyboardEvent<HTMLInputElement>} event
107
- */
108
- handleKeyPress: (event: React.KeyboardEvent<HTMLInputElement>) => void;
109
- /**
110
- * Handle ContextMenu focus.
111
- *
112
- * @param {React.KeyboardEvent<HTMLInputElement>} event
113
- * @param {string} key
114
- */
115
- focusDropdown: (event: React.KeyboardEvent<HTMLInputElement>, key?: string) => void;
116
- /**
117
- * Custom handle the render from subMenu to control the highlight and the .is-selected.
118
- *
119
- * @param {IContextualMenuListProps} props
120
- * @param {IContextualMenuItemRenderFunctions} defaultRenders
121
- * @returns { React.ReactNode | null}
122
- */
123
- handleRenderContent: (props: IContextualMenuItemProps, defaultRenders: IContextualMenuItemRenderFunctions) => React.ReactNode | null;
124
- /**
125
- * Custom handle the render to control the highlight and the .is-selected.
126
- *
127
- * @param {IContextualMenuListProps} props
128
- * @param {IRenderFunction<IContextualMenuListProps>} defaultRender
129
- * @returns {JSX.Element | null}
130
- */
131
- handleRenderMenuList: (props?: IContextualMenuListProps, defaultRender?: IRenderFunction<IContextualMenuListProps>) => JSX.Element | null;
132
- /**
133
- * Handle on/off ContextualMenu.
134
- *
135
- * @param {boolean} status
136
- * @param {React.KeyboardEvent<HTMLInputElement>} event
137
- */
138
- toggleMenu: (status: boolean, event?: React.KeyboardEvent<HTMLInputElement>) => void;
139
- /**
140
- * Highlight the search string.
141
- *
142
- * @param {string} text
143
- * @param {string} query
144
- * @returns {JSX.Element}
145
- */
146
- highlightQuery: (text: string, query: string) => JSX.Element;
147
- /**
148
- * Filter all options that match the query string.
149
- *
150
- * @param {string} input
151
- * @param {IContextualMenuItem} item
152
- * @returns {boolean}
153
- */
154
- filterElement: (input: string, item: IContextualMenuItem) => boolean;
155
- /**
156
- * Update the query string and the prop value.
157
- *
158
- * @param {React.FormEvent<HTMLInputElement | HTMLTextAreaElement>} event
159
- */
160
- handleOnChangeValue: (event: React.FormEvent<HTMLInputElement | HTMLTextAreaElement>) => void;
161
- /**
162
- * Method resets value of dropdown input to original value, which was stored after open.
163
- */
164
- resetValue(): void;
165
- /**
166
- * Method reset states.
167
- *
168
- * @param {Event | React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent} event
169
- */
170
- handleDismiss: (event?: Event | React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent) => void;
171
- /**
172
- * Method applies additional styling for submnu callout.
173
- * It is used to apply scroll width offset - in result submenu should be displayed on the edge of root menu.
174
- *
175
- * @param {IContextualMenuItem} item Context menu item.
176
- */
177
- applySubmenuPosition: (item: IContextualMenuItem) => void;
178
- getCalloutDomRef: (submenu?: boolean) => HTMLDivElement | null;
179
- /**
180
- * Method calculates offset size for submenus.
181
- * Calculated offset should be used to position submenu right to edge of root menu.
182
- * - Detects if scrollbar exists.
183
- * - Calculates size of scrollbar and stores it as value for offset.
184
- */
185
- calculateSubmenuOffset: () => void;
186
- /**
187
- * Method updates state, if focus visible, using arrow keys.
188
- *
189
- * @param {HTMLElement|React.FocusEvent<HTMLElement>} ev
190
- */
191
- onFocusElementChanged: (ev: any) => void;
192
- /**
193
- * Method handles window keydown event.
194
- * 1. Stores last keyboard pressed event.
195
- * 2. Disables CircularNavigation for menus.
196
- *
197
- * @param {KeyboardEvent | React.KeyboardEvent<HTMLInputElement>} event
198
- */
199
- onWindowKeyDown: (event: KeyboardEvent | React.KeyboardEvent<HTMLInputElement>) => void;
200
- /**
201
- * Method handles focus logic if arrow key was pressed.
202
- *
203
- * @param {FocusEvent} event
204
- */
205
- handleCustomDownKey: (event: FocusEvent) => void;
206
- /**
207
- * Method appends custom keydown and focus event listeners when context menu is opened.
208
- */
209
- applyCustomKeyDownHandlingEvents: () => void;
210
- /**
211
- * Method removes custom keydown and focus event listeners when context menu is dismissed.
212
- */
213
- removeCustomKeyDownHandlingEvents: () => void;
214
- /**
215
- * Method receives any menu child element and returns edge positions if item is first or last in rendered menu.
216
- *
217
- * @param {Element} itemElement Item's DOM to check position.
218
- * @returns {EdgePosition[]} Returns positions if element is first or last in menu - also can be both.
219
- */
220
- getEdgePosition: (itemElement: Element) => EdgePosition[];
221
- /**
222
- * Recursive method finds menu item info object in tree menu items by passed value/key of item.
223
- *
224
- * @param {string} [value] Value/key of item.
225
- * @param {IContextualMenuItem[]} [items] Menu items.
226
- * @param {TreeItemInfo} [parent] Item's parent object.
227
- * @param {number} [level] Level of item in tree structure.
228
- * @returns {TreeItemInfo | undefined} Found menu item.
229
- */
230
- findItemByValue: (value?: string, items?: IContextualMenuItem[], parent?: TreeItemInfo, level?: number) => TreeItemInfo | undefined;
231
- /**
232
- * Method finds DOM node of menu item based on received item object and container DOM.
233
- *
234
- * @param {HTMLElement} container Menu container DOM.
235
- * @param {TreeItemInfo} item Menu item info object.
236
- * @returns {HTMLElement | undefined} Found DOM element of item.
237
- */
238
- getItemTarget: (container: HTMLElement, item: TreeItemInfo) => HTMLElement | undefined;
239
- /**
240
- * Method focuses context menu item based on recieved value/key and menude data(items and hoisted object).
241
- * Method works with any level menu.
242
- *
243
- * @param {string} [value] Value/key of item.
244
- * @param {IContextualMenuItem[]} [items] Target menu items.
245
- */
246
- focusItemWithValue: (value?: string, items?: IContextualMenuItem[]) => void;
247
- /**
248
- * Generate unique id for menu component references.
249
- *
250
- * @param {string} value Value of item.
251
- * @param {number} level Level of item in tree structure.
252
- * @returns {string} Id containing value andf level in format "${value}__${level}".
253
- */
254
- getRefId: (value: string, level: number) => string;
255
- /**
256
- * Method returns class names for wrapper element depending on props and component state.
257
- *
258
- * @returns {string} Class names of wrapper element.
259
- */
260
- private getClassNames;
261
- /**
262
- * @returns {JSX.Element}
263
- */
264
- render(): JSX.Element;
265
- }
1
+ import React from 'react';
2
+ import type { IContextualMenuProps, IContextualMenuItem, IContextualMenuListProps, IRenderFunction, IContextualMenuItemProps, IContextualMenuItemRenderFunctions } from '@fluentui/react';
3
+ import { DirectionalHint } from '@fluentui/react';
4
+ import type { UIMessagesExtendedProps } from '../../helper/ValidationMessage';
5
+ import './UITreeDropdown.scss';
6
+ export { DirectionalHint as UIDirectionalHint };
7
+ export interface ItemsProps {
8
+ label: string;
9
+ value: string;
10
+ children?: ItemsProps[];
11
+ subMenuProps?: IContextualMenuProps;
12
+ split?: boolean;
13
+ }
14
+ export interface UITreeDropdownProps extends UIMessagesExtendedProps {
15
+ label?: string;
16
+ disabled?: boolean;
17
+ required?: boolean;
18
+ value?: string;
19
+ items: ItemsProps[];
20
+ onParameterValueChange(value: string): void;
21
+ placeholderText: string;
22
+ valueSeparator?: string;
23
+ directionalHint?: DirectionalHint;
24
+ maxWidth?: number;
25
+ useTargetWidth?: string;
26
+ errorMessage?: string;
27
+ readOnly?: boolean;
28
+ }
29
+ interface TreeItemInfo {
30
+ level: number;
31
+ item: IContextualMenuItem;
32
+ index: number;
33
+ parent?: TreeItemInfo;
34
+ }
35
+ export interface UITreeDropdownState {
36
+ hasSelected: boolean;
37
+ originalItems: IContextualMenuItem[];
38
+ isHidden: boolean;
39
+ value?: string;
40
+ query: string;
41
+ items: IContextualMenuItem[];
42
+ valueSeparator: string;
43
+ uiidInput: string;
44
+ isDisabled: boolean;
45
+ isMenuOpen: boolean;
46
+ valueChanged: boolean;
47
+ }
48
+ export declare enum EdgePosition {
49
+ First = "First",
50
+ Last = "Last"
51
+ }
52
+ /**
53
+ * UITreeDropdown component.
54
+ *
55
+ * @exports
56
+ * @class UIVerticalDivider
57
+ * @extends {React.Component<UITreeDropdownProps, UITreeDropdownState>}
58
+ */
59
+ export declare class UITreeDropdown extends React.Component<UITreeDropdownProps, UITreeDropdownState> {
60
+ private readonly UITreeDropdownRef;
61
+ private readonly UITreeDropdownFocusZoneRef;
62
+ private inputRef;
63
+ private submenuRefs;
64
+ private defaultSubmenuFocus?;
65
+ private submenuOffset;
66
+ private lastKeyDown;
67
+ private originalValue?;
68
+ /**
69
+ * Initializes component properties.
70
+ *
71
+ * @param {UITreeDropdownProps} props
72
+ */
73
+ constructor(props: UITreeDropdownProps);
74
+ componentDidMount: () => void;
75
+ componentDidUpdate: (prevProps: UITreeDropdownProps) => void;
76
+ /**
77
+ * Map the payload.
78
+ *
79
+ * @param {ItemsProps[]} items
80
+ */
81
+ buildItems: (items: ItemsProps[]) => void;
82
+ /**
83
+ * Sub items values and style.
84
+ *
85
+ * @param {ItemsProps} item
86
+ * @returns {ItemsProps}
87
+ */
88
+ buildSubItems: (item: ItemsProps) => ItemsProps;
89
+ /**
90
+ * Map GD payload to ContextMenu payload.
91
+ *
92
+ * @param {ItemsProps[]} items
93
+ * @param {number} level
94
+ * @returns {IContextualMenuItem[]}
95
+ */
96
+ mapValuesToContextMenu: (items: ItemsProps[], level?: number) => IContextualMenuItem[];
97
+ /**
98
+ * Handle the selected value.
99
+ *
100
+ * @param {string} value
101
+ */
102
+ handleSelection: (value: string) => void;
103
+ /**
104
+ * Handle the keypress value.
105
+ *
106
+ * @param {React.KeyboardEvent<HTMLInputElement>} event
107
+ */
108
+ handleKeyPress: (event: React.KeyboardEvent<HTMLInputElement>) => void;
109
+ /**
110
+ * Handle ContextMenu focus.
111
+ *
112
+ * @param {React.KeyboardEvent<HTMLInputElement>} event
113
+ * @param {string} key
114
+ */
115
+ focusDropdown: (event: React.KeyboardEvent<HTMLInputElement>, key?: string) => void;
116
+ /**
117
+ * Custom handle the render from subMenu to control the highlight and the .is-selected.
118
+ *
119
+ * @param {IContextualMenuListProps} props
120
+ * @param {IContextualMenuItemRenderFunctions} defaultRenders
121
+ * @returns { React.ReactNode | null}
122
+ */
123
+ handleRenderContent: (props: IContextualMenuItemProps, defaultRenders: IContextualMenuItemRenderFunctions) => React.ReactNode | null;
124
+ /**
125
+ * Custom handle the render to control the highlight and the .is-selected.
126
+ *
127
+ * @param {IContextualMenuListProps} props
128
+ * @param {IRenderFunction<IContextualMenuListProps>} defaultRender
129
+ * @returns {JSX.Element | null}
130
+ */
131
+ handleRenderMenuList: (props?: IContextualMenuListProps, defaultRender?: IRenderFunction<IContextualMenuListProps>) => JSX.Element | null;
132
+ /**
133
+ * Handle on/off ContextualMenu.
134
+ *
135
+ * @param {boolean} status
136
+ * @param {React.KeyboardEvent<HTMLInputElement>} event
137
+ */
138
+ toggleMenu: (status: boolean, event?: React.KeyboardEvent<HTMLInputElement>) => void;
139
+ /**
140
+ * Highlight the search string.
141
+ *
142
+ * @param {string} text
143
+ * @param {string} query
144
+ * @returns {JSX.Element}
145
+ */
146
+ highlightQuery: (text: string, query: string) => JSX.Element;
147
+ /**
148
+ * Filter all options that match the query string.
149
+ *
150
+ * @param {string} input
151
+ * @param {IContextualMenuItem} item
152
+ * @returns {boolean}
153
+ */
154
+ filterElement: (input: string, item: IContextualMenuItem) => boolean;
155
+ /**
156
+ * Update the query string and the prop value.
157
+ *
158
+ * @param {React.FormEvent<HTMLInputElement | HTMLTextAreaElement>} event
159
+ */
160
+ handleOnChangeValue: (event: React.FormEvent<HTMLInputElement | HTMLTextAreaElement>) => void;
161
+ /**
162
+ * Method resets value of dropdown input to original value, which was stored after open.
163
+ */
164
+ resetValue(): void;
165
+ /**
166
+ * Method reset states.
167
+ *
168
+ * @param {Event | React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent} event
169
+ */
170
+ handleDismiss: (event?: Event | React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent) => void;
171
+ /**
172
+ * Method applies additional styling for submnu callout.
173
+ * It is used to apply scroll width offset - in result submenu should be displayed on the edge of root menu.
174
+ *
175
+ * @param {IContextualMenuItem} item Context menu item.
176
+ */
177
+ applySubmenuPosition: (item: IContextualMenuItem) => void;
178
+ getCalloutDomRef: (submenu?: boolean) => HTMLDivElement | null;
179
+ /**
180
+ * Method calculates offset size for submenus.
181
+ * Calculated offset should be used to position submenu right to edge of root menu.
182
+ * - Detects if scrollbar exists.
183
+ * - Calculates size of scrollbar and stores it as value for offset.
184
+ */
185
+ calculateSubmenuOffset: () => void;
186
+ /**
187
+ * Method updates state, if focus visible, using arrow keys.
188
+ *
189
+ * @param {HTMLElement|React.FocusEvent<HTMLElement>} ev
190
+ */
191
+ onFocusElementChanged: (ev: any) => void;
192
+ /**
193
+ * Method handles window keydown event.
194
+ * 1. Stores last keyboard pressed event.
195
+ * 2. Disables CircularNavigation for menus.
196
+ *
197
+ * @param {KeyboardEvent | React.KeyboardEvent<HTMLInputElement>} event
198
+ */
199
+ onWindowKeyDown: (event: KeyboardEvent | React.KeyboardEvent<HTMLInputElement>) => void;
200
+ /**
201
+ * Method handles focus logic if arrow key was pressed.
202
+ *
203
+ * @param {FocusEvent} event
204
+ */
205
+ handleCustomDownKey: (event: FocusEvent) => void;
206
+ /**
207
+ * Method appends custom keydown and focus event listeners when context menu is opened.
208
+ */
209
+ applyCustomKeyDownHandlingEvents: () => void;
210
+ /**
211
+ * Method removes custom keydown and focus event listeners when context menu is dismissed.
212
+ */
213
+ removeCustomKeyDownHandlingEvents: () => void;
214
+ /**
215
+ * Method receives any menu child element and returns edge positions if item is first or last in rendered menu.
216
+ *
217
+ * @param {Element} itemElement Item's DOM to check position.
218
+ * @returns {EdgePosition[]} Returns positions if element is first or last in menu - also can be both.
219
+ */
220
+ getEdgePosition: (itemElement: Element) => EdgePosition[];
221
+ /**
222
+ * Recursive method finds menu item info object in tree menu items by passed value/key of item.
223
+ *
224
+ * @param {string} [value] Value/key of item.
225
+ * @param {IContextualMenuItem[]} [items] Menu items.
226
+ * @param {TreeItemInfo} [parent] Item's parent object.
227
+ * @param {number} [level] Level of item in tree structure.
228
+ * @returns {TreeItemInfo | undefined} Found menu item.
229
+ */
230
+ findItemByValue: (value?: string, items?: IContextualMenuItem[], parent?: TreeItemInfo, level?: number) => TreeItemInfo | undefined;
231
+ /**
232
+ * Method finds DOM node of menu item based on received item object and container DOM.
233
+ *
234
+ * @param {HTMLElement} container Menu container DOM.
235
+ * @param {TreeItemInfo} item Menu item info object.
236
+ * @returns {HTMLElement | undefined} Found DOM element of item.
237
+ */
238
+ getItemTarget: (container: HTMLElement, item: TreeItemInfo) => HTMLElement | undefined;
239
+ /**
240
+ * Method focuses context menu item based on recieved value/key and menude data(items and hoisted object).
241
+ * Method works with any level menu.
242
+ *
243
+ * @param {string} [value] Value/key of item.
244
+ * @param {IContextualMenuItem[]} [items] Target menu items.
245
+ */
246
+ focusItemWithValue: (value?: string, items?: IContextualMenuItem[]) => void;
247
+ /**
248
+ * Generate unique id for menu component references.
249
+ *
250
+ * @param {string} value Value of item.
251
+ * @param {number} level Level of item in tree structure.
252
+ * @returns {string} Id containing value andf level in format "${value}__${level}".
253
+ */
254
+ getRefId: (value: string, level: number) => string;
255
+ /**
256
+ * Method returns class names for wrapper element depending on props and component state.
257
+ *
258
+ * @returns {string} Class names of wrapper element.
259
+ */
260
+ private getClassNames;
261
+ /**
262
+ * @returns {JSX.Element}
263
+ */
264
+ render(): JSX.Element;
265
+ }
266
266
  //# sourceMappingURL=UITreeDropdown.d.ts.map