@sap-ux/ui-components 1.13.5 → 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 (263) 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 -200
  40. package/dist/components/UIComboBox/UIComboBox.d.ts.map +1 -1
  41. package/dist/components/UIComboBox/UIComboBox.js +563 -541
  42. package/dist/components/UIComboBox/UIComboBox.js.map +1 -1
  43. package/dist/components/UIComboBox/index.d.ts +1 -1
  44. package/dist/components/UIComboBox/index.js +17 -17
  45. package/dist/components/UIContextualMenu/UIContextualMenu.d.ts +31 -31
  46. package/dist/components/UIContextualMenu/UIContextualMenu.js +126 -126
  47. package/dist/components/UIContextualMenu/UIHighlightMenuOption.d.ts +19 -19
  48. package/dist/components/UIContextualMenu/UIHighlightMenuOption.js +50 -50
  49. package/dist/components/UIContextualMenu/index.d.ts +2 -2
  50. package/dist/components/UIContextualMenu/index.js +18 -18
  51. package/dist/components/UICreateSelect/UICreateSelect.d.ts +36 -36
  52. package/dist/components/UICreateSelect/UICreateSelect.js +172 -172
  53. package/dist/components/UICreateSelect/index.d.ts +1 -1
  54. package/dist/components/UICreateSelect/index.js +17 -17
  55. package/dist/components/UIDatePicker/UIDatePicker.d.ts +49 -49
  56. package/dist/components/UIDatePicker/UIDatePicker.js +72 -72
  57. package/dist/components/UIDatePicker/index.d.ts +1 -1
  58. package/dist/components/UIDatePicker/index.js +17 -17
  59. package/dist/components/UIDialog/UIDialog.d.ts +118 -118
  60. package/dist/components/UIDialog/UIDialog.js +281 -281
  61. package/dist/components/UIDialog/index.d.ts +1 -1
  62. package/dist/components/UIDialog/index.js +17 -17
  63. package/dist/components/UIDropdown/UIDropdown.d.ts +94 -94
  64. package/dist/components/UIDropdown/UIDropdown.js +224 -224
  65. package/dist/components/UIDropdown/index.d.ts +2 -2
  66. package/dist/components/UIDropdown/index.js +18 -18
  67. package/dist/components/UIDropdown/utils.d.ts +20 -20
  68. package/dist/components/UIDropdown/utils.js +43 -43
  69. package/dist/components/UIFlexibleTable/RowActions.d.ts +16 -16
  70. package/dist/components/UIFlexibleTable/RowActions.js +73 -73
  71. package/dist/components/UIFlexibleTable/RowData.d.ts +16 -16
  72. package/dist/components/UIFlexibleTable/RowData.js +111 -111
  73. package/dist/components/UIFlexibleTable/UIFlexibleTable.d.ts +11 -11
  74. package/dist/components/UIFlexibleTable/UIFlexibleTable.js +280 -280
  75. package/dist/components/UIFlexibleTable/UIFlexibleTableActionButton.d.ts +20 -20
  76. package/dist/components/UIFlexibleTable/UIFlexibleTableActionButton.js +20 -20
  77. package/dist/components/UIFlexibleTable/UIFlexibleTableRow.d.ts +26 -26
  78. package/dist/components/UIFlexibleTable/UIFlexibleTableRow.js +219 -219
  79. package/dist/components/UIFlexibleTable/UIFlexibleTableRowActionButton.d.ts +20 -20
  80. package/dist/components/UIFlexibleTable/UIFlexibleTableRowActionButton.js +19 -19
  81. package/dist/components/UIFlexibleTable/UIFlexibleTableRowNoData.d.ts +15 -15
  82. package/dist/components/UIFlexibleTable/UIFlexibleTableRowNoData.js +28 -28
  83. package/dist/components/UIFlexibleTable/index.d.ts +5 -5
  84. package/dist/components/UIFlexibleTable/index.js +21 -21
  85. package/dist/components/UIFlexibleTable/types.d.ts +143 -143
  86. package/dist/components/UIFlexibleTable/types.js +14 -14
  87. package/dist/components/UIFlexibleTable/utils.d.ts +25 -25
  88. package/dist/components/UIFlexibleTable/utils.js +49 -49
  89. package/dist/components/UIFocusZone/UIFocusTrapZone.d.ts +22 -22
  90. package/dist/components/UIFocusZone/UIFocusTrapZone.js +33 -33
  91. package/dist/components/UIFocusZone/UIFocusZone.d.ts +23 -23
  92. package/dist/components/UIFocusZone/UIFocusZone.js +35 -35
  93. package/dist/components/UIFocusZone/index.d.ts +2 -2
  94. package/dist/components/UIFocusZone/index.js +18 -18
  95. package/dist/components/UIIcon/UIIcon.d.ts +24 -24
  96. package/dist/components/UIIcon/UIIcon.js +37 -37
  97. package/dist/components/UIIcon/index.d.ts +1 -1
  98. package/dist/components/UIIcon/index.js +17 -17
  99. package/dist/components/UIInput/UITextInput.d.ts +51 -51
  100. package/dist/components/UIInput/UITextInput.js +244 -244
  101. package/dist/components/UIInput/index.d.ts +1 -1
  102. package/dist/components/UIInput/index.js +17 -17
  103. package/dist/components/UILabel/UILabel.d.ts +30 -30
  104. package/dist/components/UILabel/UILabel.js +64 -64
  105. package/dist/components/UILabel/index.d.ts +1 -1
  106. package/dist/components/UILabel/index.js +17 -17
  107. package/dist/components/UILink/UILink.d.ts +25 -25
  108. package/dist/components/UILink/UILink.js +71 -71
  109. package/dist/components/UILink/index.d.ts +1 -1
  110. package/dist/components/UILink/index.js +17 -17
  111. package/dist/components/UIList/UIList.d.ts +31 -31
  112. package/dist/components/UIList/UIList.js +120 -120
  113. package/dist/components/UIList/index.d.ts +1 -1
  114. package/dist/components/UIList/index.js +17 -17
  115. package/dist/components/UILoader/UILoader.d.ts +27 -27
  116. package/dist/components/UILoader/UILoader.js +78 -78
  117. package/dist/components/UILoader/index.d.ts +1 -1
  118. package/dist/components/UILoader/index.js +17 -17
  119. package/dist/components/UIMessageBar/UIMessageBar.d.ts +25 -25
  120. package/dist/components/UIMessageBar/UIMessageBar.js +56 -56
  121. package/dist/components/UIMessageBar/index.d.ts +1 -1
  122. package/dist/components/UIMessageBar/index.js +17 -17
  123. package/dist/components/UIModal/UIModal.d.ts +23 -23
  124. package/dist/components/UIModal/UIModal.js +43 -43
  125. package/dist/components/UIModal/index.d.ts +1 -1
  126. package/dist/components/UIModal/index.js +17 -17
  127. package/dist/components/UIOverlay/UIOverlay.d.ts +22 -22
  128. package/dist/components/UIOverlay/UIOverlay.js +38 -38
  129. package/dist/components/UIOverlay/index.d.ts +1 -1
  130. package/dist/components/UIOverlay/index.js +17 -17
  131. package/dist/components/UIPersona/UIPersona.d.ts +27 -27
  132. package/dist/components/UIPersona/UIPersona.js +48 -48
  133. package/dist/components/UIPersona/index.d.ts +1 -1
  134. package/dist/components/UIPersona/index.js +17 -17
  135. package/dist/components/UISearchBox/UISearchBox.d.ts +22 -22
  136. package/dist/components/UISearchBox/UISearchBox.js +155 -155
  137. package/dist/components/UISearchBox/index.d.ts +3 -3
  138. package/dist/components/UISearchBox/index.js +17 -17
  139. package/dist/components/UISection/UISection.d.ts +34 -34
  140. package/dist/components/UISection/UISection.js +44 -44
  141. package/dist/components/UISection/UISections.d.ts +249 -249
  142. package/dist/components/UISection/UISections.js +707 -707
  143. package/dist/components/UISection/UISplitter.d.ts +96 -96
  144. package/dist/components/UISection/UISplitter.js +220 -220
  145. package/dist/components/UISection/index.d.ts +3 -3
  146. package/dist/components/UISection/index.js +19 -19
  147. package/dist/components/UISeparator/UISeparator.d.ts +25 -25
  148. package/dist/components/UISeparator/UISeparator.js +65 -65
  149. package/dist/components/UISeparator/index.d.ts +1 -1
  150. package/dist/components/UISeparator/index.js +17 -17
  151. package/dist/components/UITable/UITable-helper.d.ts +88 -88
  152. package/dist/components/UITable/UITable-helper.js +263 -263
  153. package/dist/components/UITable/UITable.d.ts +213 -213
  154. package/dist/components/UITable/UITable.js +779 -779
  155. package/dist/components/UITable/index.d.ts +2 -2
  156. package/dist/components/UITable/index.js +18 -18
  157. package/dist/components/UITable/types.d.ts +77 -77
  158. package/dist/components/UITable/types.js +28 -28
  159. package/dist/components/UITabs/UITabs.d.ts +28 -28
  160. package/dist/components/UITabs/UITabs.js +70 -70
  161. package/dist/components/UITabs/index.d.ts +1 -1
  162. package/dist/components/UITabs/index.js +17 -17
  163. package/dist/components/UIToggle/UIToggle.d.ts +39 -39
  164. package/dist/components/UIToggle/UIToggle.js +181 -181
  165. package/dist/components/UIToggle/index.d.ts +1 -1
  166. package/dist/components/UIToggle/index.js +17 -17
  167. package/dist/components/UIToggleGroup/UIToggleGroup.d.ts +31 -31
  168. package/dist/components/UIToggleGroup/UIToggleGroup.js +139 -139
  169. package/dist/components/UIToggleGroup/UIToggleGroup.types.d.ts +22 -22
  170. package/dist/components/UIToggleGroup/UIToggleGroup.types.js +2 -2
  171. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.d.ts +25 -25
  172. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.js +77 -77
  173. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.types.d.ts +10 -10
  174. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.types.js +2 -2
  175. package/dist/components/UIToggleGroup/UIToggleGroupOption/index.d.ts +2 -2
  176. package/dist/components/UIToggleGroup/UIToggleGroupOption/index.js +18 -18
  177. package/dist/components/UIToggleGroup/index.d.ts +2 -2
  178. package/dist/components/UIToggleGroup/index.js +18 -18
  179. package/dist/components/UIToolbar/UIToolbar.d.ts +36 -36
  180. package/dist/components/UIToolbar/UIToolbar.js +104 -104
  181. package/dist/components/UIToolbar/UIToolbarColumn.d.ts +7 -7
  182. package/dist/components/UIToolbar/UIToolbarColumn.js +33 -33
  183. package/dist/components/UIToolbar/UIToolbarDivider.d.ts +27 -27
  184. package/dist/components/UIToolbar/UIToolbarDivider.js +52 -52
  185. package/dist/components/UIToolbar/index.d.ts +3 -3
  186. package/dist/components/UIToolbar/index.js +19 -19
  187. package/dist/components/UITooltip/UITooltip.d.ts +29 -29
  188. package/dist/components/UITooltip/UITooltip.js +77 -77
  189. package/dist/components/UITooltip/UITooltipUtils.d.ts +17 -17
  190. package/dist/components/UITooltip/UITooltipUtils.js +45 -45
  191. package/dist/components/UITooltip/index.d.ts +2 -2
  192. package/dist/components/UITooltip/index.js +18 -18
  193. package/dist/components/UITranslationInput/UIFormattedText.d.ts +46 -46
  194. package/dist/components/UITranslationInput/UIFormattedText.js +121 -121
  195. package/dist/components/UITranslationInput/UILoadButton.d.ts +52 -52
  196. package/dist/components/UITranslationInput/UILoadButton.js +109 -109
  197. package/dist/components/UITranslationInput/UITranslationButton.d.ts +14 -14
  198. package/dist/components/UITranslationInput/UITranslationButton.js +88 -88
  199. package/dist/components/UITranslationInput/UITranslationButton.types.d.ts +67 -67
  200. package/dist/components/UITranslationInput/UITranslationButton.types.js +21 -21
  201. package/dist/components/UITranslationInput/UITranslationInput.d.ts +25 -25
  202. package/dist/components/UITranslationInput/UITranslationInput.js +169 -169
  203. package/dist/components/UITranslationInput/UITranslationUtils.d.ts +64 -64
  204. package/dist/components/UITranslationInput/UITranslationUtils.js +168 -168
  205. package/dist/components/UITranslationInput/defaults.d.ts +2 -2
  206. package/dist/components/UITranslationInput/defaults.js +15 -15
  207. package/dist/components/UITranslationInput/index.d.ts +2 -2
  208. package/dist/components/UITranslationInput/index.js +18 -18
  209. package/dist/components/UITreeDropdown/UITreeDropdown.d.ts +265 -265
  210. package/dist/components/UITreeDropdown/UITreeDropdown.js +660 -660
  211. package/dist/components/UITreeDropdown/index.d.ts +1 -1
  212. package/dist/components/UITreeDropdown/index.js +17 -17
  213. package/dist/components/UIVerticalDivider/UIVerticalDivider.d.ts +23 -23
  214. package/dist/components/UIVerticalDivider/UIVerticalDivider.js +41 -41
  215. package/dist/components/UIVerticalDivider/index.d.ts +1 -1
  216. package/dist/components/UIVerticalDivider/index.js +17 -17
  217. package/dist/components/UIVirtualList/UIAutoSizer.d.ts +22 -22
  218. package/dist/components/UIVirtualList/UIAutoSizer.js +33 -33
  219. package/dist/components/UIVirtualList/UICellMeasurer.d.ts +23 -23
  220. package/dist/components/UIVirtualList/UICellMeasurer.js +33 -33
  221. package/dist/components/UIVirtualList/UIVirtualList.d.ts +43 -43
  222. package/dist/components/UIVirtualList/UIVirtualList.js +70 -70
  223. package/dist/components/UIVirtualList/index.d.ts +3 -3
  224. package/dist/components/UIVirtualList/index.js +19 -19
  225. package/dist/components/index.d.ts +38 -38
  226. package/dist/components/index.js +54 -54
  227. package/dist/helper/ValidationMessage/MessageWrapper.d.ts +17 -17
  228. package/dist/helper/ValidationMessage/MessageWrapper.js +34 -34
  229. package/dist/helper/ValidationMessage/index.d.ts +2 -2
  230. package/dist/helper/ValidationMessage/index.js +18 -18
  231. package/dist/helper/ValidationMessage/utils.d.ts +31 -31
  232. package/dist/helper/ValidationMessage/utils.js +121 -121
  233. package/dist/index.d.ts +2 -2
  234. package/dist/index.js +18 -18
  235. package/dist/utilities/DeepMerge.d.ts +10 -10
  236. package/dist/utilities/DeepMerge.js +48 -48
  237. package/dist/utilities/Dom.d.ts +14 -7
  238. package/dist/utilities/Dom.d.ts.map +1 -1
  239. package/dist/utilities/Dom.js +23 -13
  240. package/dist/utilities/Dom.js.map +1 -1
  241. package/dist/utilities/Focus.d.ts +14 -14
  242. package/dist/utilities/Focus.js +34 -34
  243. package/dist/utilities/Id.d.ts +2 -2
  244. package/dist/utilities/Id.js +5 -5
  245. package/dist/utilities/Keys.d.ts +2 -2
  246. package/dist/utilities/Keys.js +5 -5
  247. package/dist/utilities/index.d.ts +4 -4
  248. package/dist/utilities/index.js +20 -20
  249. package/package.json +1 -1
  250. package/storybook/494.d8aaa4d7.iframe.bundle.js +1 -0
  251. package/storybook/580.057c85e9.iframe.bundle.js +1 -0
  252. package/storybook/{930.1b3c5615.iframe.bundle.js → 930.3177b0dc.iframe.bundle.js} +2 -2
  253. package/storybook/UIActionCallout-story.9ee56c83.iframe.bundle.js +2 -0
  254. package/storybook/UIToggleGroup-story.573848ba.iframe.bundle.js +2 -0
  255. package/storybook/iframe.html +3 -3
  256. package/storybook/main.5f68bcca.iframe.bundle.js +1 -0
  257. package/storybook/project.json +1 -1
  258. package/storybook/{runtime~main.7c93d414.iframe.bundle.js → runtime~main.a213c0ae.iframe.bundle.js} +1 -1
  259. package/storybook/494.1829058d.iframe.bundle.js +0 -1
  260. package/storybook/580.c5ddde6e.iframe.bundle.js +0 -1
  261. package/storybook/UIActionCallout-story.13bdf055.iframe.bundle.js +0 -2
  262. package/storybook/UIToggleGroup-story.6f3e7d06.iframe.bundle.js +0 -2
  263. 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