@sap-ux/ui-components 1.0.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 (450) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +20 -0
  3. package/dist/components/Icons.d.ts +105 -0
  4. package/dist/components/Icons.d.ts.map +1 -0
  5. package/dist/components/Icons.js +401 -0
  6. package/dist/components/Icons.js.map +1 -0
  7. package/dist/components/UIBreadcrumb/UIBreadcrumb.d.ts +23 -0
  8. package/dist/components/UIBreadcrumb/UIBreadcrumb.d.ts.map +1 -0
  9. package/dist/components/UIBreadcrumb/UIBreadcrumb.js +38 -0
  10. package/dist/components/UIBreadcrumb/UIBreadcrumb.js.map +1 -0
  11. package/dist/components/UIBreadcrumb/index.d.ts +2 -0
  12. package/dist/components/UIBreadcrumb/index.d.ts.map +1 -0
  13. package/dist/components/UIBreadcrumb/index.js +14 -0
  14. package/dist/components/UIBreadcrumb/index.js.map +1 -0
  15. package/dist/components/UIButton/UIActionButton.d.ts +23 -0
  16. package/dist/components/UIButton/UIActionButton.d.ts.map +1 -0
  17. package/dist/components/UIButton/UIActionButton.js +97 -0
  18. package/dist/components/UIButton/UIActionButton.js.map +1 -0
  19. package/dist/components/UIButton/UIDefaultButton.d.ts +23 -0
  20. package/dist/components/UIButton/UIDefaultButton.d.ts.map +1 -0
  21. package/dist/components/UIButton/UIDefaultButton.js +227 -0
  22. package/dist/components/UIButton/UIDefaultButton.js.map +1 -0
  23. package/dist/components/UIButton/UIIconButton.d.ts +37 -0
  24. package/dist/components/UIButton/UIIconButton.d.ts.map +1 -0
  25. package/dist/components/UIButton/UIIconButton.js +106 -0
  26. package/dist/components/UIButton/UIIconButton.js.map +1 -0
  27. package/dist/components/UIButton/UISplitButton.d.ts +36 -0
  28. package/dist/components/UIButton/UISplitButton.d.ts.map +1 -0
  29. package/dist/components/UIButton/UISplitButton.js +67 -0
  30. package/dist/components/UIButton/UISplitButton.js.map +1 -0
  31. package/dist/components/UIButton/index.d.ts +7 -0
  32. package/dist/components/UIButton/index.d.ts.map +1 -0
  33. package/dist/components/UIButton/index.js +17 -0
  34. package/dist/components/UIButton/index.js.map +1 -0
  35. package/dist/components/UICallout/UICallout.d.ts +37 -0
  36. package/dist/components/UICallout/UICallout.d.ts.map +1 -0
  37. package/dist/components/UICallout/UICallout.js +90 -0
  38. package/dist/components/UICallout/UICallout.js.map +1 -0
  39. package/dist/components/UICallout/index.d.ts +2 -0
  40. package/dist/components/UICallout/index.d.ts.map +1 -0
  41. package/dist/components/UICallout/index.js +14 -0
  42. package/dist/components/UICallout/index.js.map +1 -0
  43. package/dist/components/UICheckbox/UICheckbox.d.ts +34 -0
  44. package/dist/components/UICheckbox/UICheckbox.d.ts.map +1 -0
  45. package/dist/components/UICheckbox/UICheckbox.js +135 -0
  46. package/dist/components/UICheckbox/UICheckbox.js.map +1 -0
  47. package/dist/components/UICheckbox/index.d.ts +2 -0
  48. package/dist/components/UICheckbox/index.d.ts.map +1 -0
  49. package/dist/components/UICheckbox/index.js +14 -0
  50. package/dist/components/UICheckbox/index.js.map +1 -0
  51. package/dist/components/UIChoiceGroup/UIChoiceGroup.d.ts +28 -0
  52. package/dist/components/UIChoiceGroup/UIChoiceGroup.d.ts.map +1 -0
  53. package/dist/components/UIChoiceGroup/UIChoiceGroup.js +182 -0
  54. package/dist/components/UIChoiceGroup/UIChoiceGroup.js.map +1 -0
  55. package/dist/components/UIChoiceGroup/index.d.ts +2 -0
  56. package/dist/components/UIChoiceGroup/index.d.ts.map +1 -0
  57. package/dist/components/UIChoiceGroup/index.js +14 -0
  58. package/dist/components/UIChoiceGroup/index.js.map +1 -0
  59. package/dist/components/UIComboBox/Callout.scss +7 -0
  60. package/dist/components/UIComboBox/UIComboBox.d.ts +190 -0
  61. package/dist/components/UIComboBox/UIComboBox.d.ts.map +1 -0
  62. package/dist/components/UIComboBox/UIComboBox.js +468 -0
  63. package/dist/components/UIComboBox/UIComboBox.js.map +1 -0
  64. package/dist/components/UIComboBox/UIComboBox.scss +245 -0
  65. package/dist/components/UIComboBox/_mixins.scss +24 -0
  66. package/dist/components/UIComboBox/index.d.ts +2 -0
  67. package/dist/components/UIComboBox/index.d.ts.map +1 -0
  68. package/dist/components/UIComboBox/index.js +14 -0
  69. package/dist/components/UIComboBox/index.js.map +1 -0
  70. package/dist/components/UIContextualMenu/UIContextualMenu.d.ts +32 -0
  71. package/dist/components/UIContextualMenu/UIContextualMenu.d.ts.map +1 -0
  72. package/dist/components/UIContextualMenu/UIContextualMenu.js +124 -0
  73. package/dist/components/UIContextualMenu/UIContextualMenu.js.map +1 -0
  74. package/dist/components/UIContextualMenu/UIContextualMenu.scss +211 -0
  75. package/dist/components/UIContextualMenu/UIHighlightMenuOption.d.ts +20 -0
  76. package/dist/components/UIContextualMenu/UIHighlightMenuOption.d.ts.map +1 -0
  77. package/dist/components/UIContextualMenu/UIHighlightMenuOption.js +51 -0
  78. package/dist/components/UIContextualMenu/UIHighlightMenuOption.js.map +1 -0
  79. package/dist/components/UIContextualMenu/UIHighlightMenuOption.scss +23 -0
  80. package/dist/components/UIContextualMenu/_variables.scss +30 -0
  81. package/dist/components/UIContextualMenu/index.d.ts +3 -0
  82. package/dist/components/UIContextualMenu/index.d.ts.map +1 -0
  83. package/dist/components/UIContextualMenu/index.js +15 -0
  84. package/dist/components/UIContextualMenu/index.js.map +1 -0
  85. package/dist/components/UIDatePicker/UIDatePicker.d.ts +49 -0
  86. package/dist/components/UIDatePicker/UIDatePicker.d.ts.map +1 -0
  87. package/dist/components/UIDatePicker/UIDatePicker.js +72 -0
  88. package/dist/components/UIDatePicker/UIDatePicker.js.map +1 -0
  89. package/dist/components/UIDatePicker/UIDatePicker.scss +38 -0
  90. package/dist/components/UIDatePicker/index.d.ts +2 -0
  91. package/dist/components/UIDatePicker/index.d.ts.map +1 -0
  92. package/dist/components/UIDatePicker/index.js +14 -0
  93. package/dist/components/UIDatePicker/index.js.map +1 -0
  94. package/dist/components/UIDialog/UIDialog.d.ts +102 -0
  95. package/dist/components/UIDialog/UIDialog.d.ts.map +1 -0
  96. package/dist/components/UIDialog/UIDialog.js +250 -0
  97. package/dist/components/UIDialog/UIDialog.js.map +1 -0
  98. package/dist/components/UIDialog/index.d.ts +2 -0
  99. package/dist/components/UIDialog/index.d.ts.map +1 -0
  100. package/dist/components/UIDialog/index.js +14 -0
  101. package/dist/components/UIDialog/index.js.map +1 -0
  102. package/dist/components/UIDropdown/UIDropdown.d.ts +76 -0
  103. package/dist/components/UIDropdown/UIDropdown.d.ts.map +1 -0
  104. package/dist/components/UIDropdown/UIDropdown.js +166 -0
  105. package/dist/components/UIDropdown/UIDropdown.js.map +1 -0
  106. package/dist/components/UIDropdown/UIDropdown.scss +80 -0
  107. package/dist/components/UIDropdown/index.d.ts +2 -0
  108. package/dist/components/UIDropdown/index.d.ts.map +1 -0
  109. package/dist/components/UIDropdown/index.js +14 -0
  110. package/dist/components/UIDropdown/index.js.map +1 -0
  111. package/dist/components/UIFlexibleTable/RowActions.d.ts +17 -0
  112. package/dist/components/UIFlexibleTable/RowActions.d.ts.map +1 -0
  113. package/dist/components/UIFlexibleTable/RowActions.js +68 -0
  114. package/dist/components/UIFlexibleTable/RowActions.js.map +1 -0
  115. package/dist/components/UIFlexibleTable/RowData.d.ts +16 -0
  116. package/dist/components/UIFlexibleTable/RowData.d.ts.map +1 -0
  117. package/dist/components/UIFlexibleTable/RowData.js +109 -0
  118. package/dist/components/UIFlexibleTable/RowData.js.map +1 -0
  119. package/dist/components/UIFlexibleTable/UIFlexibleTable.d.ts +12 -0
  120. package/dist/components/UIFlexibleTable/UIFlexibleTable.d.ts.map +1 -0
  121. package/dist/components/UIFlexibleTable/UIFlexibleTable.js +256 -0
  122. package/dist/components/UIFlexibleTable/UIFlexibleTable.js.map +1 -0
  123. package/dist/components/UIFlexibleTable/UIFlexibleTable.scss +408 -0
  124. package/dist/components/UIFlexibleTable/UIFlexibleTableActionButton.d.ts +20 -0
  125. package/dist/components/UIFlexibleTable/UIFlexibleTableActionButton.d.ts.map +1 -0
  126. package/dist/components/UIFlexibleTable/UIFlexibleTableActionButton.js +20 -0
  127. package/dist/components/UIFlexibleTable/UIFlexibleTableActionButton.js.map +1 -0
  128. package/dist/components/UIFlexibleTable/UIFlexibleTableRow.d.ts +28 -0
  129. package/dist/components/UIFlexibleTable/UIFlexibleTableRow.d.ts.map +1 -0
  130. package/dist/components/UIFlexibleTable/UIFlexibleTableRow.js +165 -0
  131. package/dist/components/UIFlexibleTable/UIFlexibleTableRow.js.map +1 -0
  132. package/dist/components/UIFlexibleTable/UIFlexibleTableRowActionButton.d.ts +21 -0
  133. package/dist/components/UIFlexibleTable/UIFlexibleTableRowActionButton.d.ts.map +1 -0
  134. package/dist/components/UIFlexibleTable/UIFlexibleTableRowActionButton.js +20 -0
  135. package/dist/components/UIFlexibleTable/UIFlexibleTableRowActionButton.js.map +1 -0
  136. package/dist/components/UIFlexibleTable/index.d.ts +6 -0
  137. package/dist/components/UIFlexibleTable/index.d.ts.map +1 -0
  138. package/dist/components/UIFlexibleTable/index.js +18 -0
  139. package/dist/components/UIFlexibleTable/index.js.map +1 -0
  140. package/dist/components/UIFlexibleTable/types.d.ts +103 -0
  141. package/dist/components/UIFlexibleTable/types.d.ts.map +1 -0
  142. package/dist/components/UIFlexibleTable/types.js +9 -0
  143. package/dist/components/UIFlexibleTable/types.js.map +1 -0
  144. package/dist/components/UIFlexibleTable/utils.d.ts +29 -0
  145. package/dist/components/UIFlexibleTable/utils.d.ts.map +1 -0
  146. package/dist/components/UIFlexibleTable/utils.js +53 -0
  147. package/dist/components/UIFlexibleTable/utils.js.map +1 -0
  148. package/dist/components/UIFocusZone/UIFocusTrapZone.d.ts +22 -0
  149. package/dist/components/UIFocusZone/UIFocusTrapZone.d.ts.map +1 -0
  150. package/dist/components/UIFocusZone/UIFocusTrapZone.js +33 -0
  151. package/dist/components/UIFocusZone/UIFocusTrapZone.js.map +1 -0
  152. package/dist/components/UIFocusZone/UIFocusZone.d.ts +23 -0
  153. package/dist/components/UIFocusZone/UIFocusZone.d.ts.map +1 -0
  154. package/dist/components/UIFocusZone/UIFocusZone.js +35 -0
  155. package/dist/components/UIFocusZone/UIFocusZone.js.map +1 -0
  156. package/dist/components/UIFocusZone/index.d.ts +3 -0
  157. package/dist/components/UIFocusZone/index.d.ts.map +1 -0
  158. package/dist/components/UIFocusZone/index.js +15 -0
  159. package/dist/components/UIFocusZone/index.js.map +1 -0
  160. package/dist/components/UIIcon/UIIcon.d.ts +24 -0
  161. package/dist/components/UIIcon/UIIcon.d.ts.map +1 -0
  162. package/dist/components/UIIcon/UIIcon.js +37 -0
  163. package/dist/components/UIIcon/UIIcon.js.map +1 -0
  164. package/dist/components/UIIcon/UIIcon.scss +3 -0
  165. package/dist/components/UIIcon/index.d.ts +2 -0
  166. package/dist/components/UIIcon/index.d.ts.map +1 -0
  167. package/dist/components/UIIcon/index.js +14 -0
  168. package/dist/components/UIIcon/index.js.map +1 -0
  169. package/dist/components/UIInput/UITextInput.d.ts +25 -0
  170. package/dist/components/UIInput/UITextInput.d.ts.map +1 -0
  171. package/dist/components/UIInput/UITextInput.js +180 -0
  172. package/dist/components/UIInput/UITextInput.js.map +1 -0
  173. package/dist/components/UIInput/index.d.ts +2 -0
  174. package/dist/components/UIInput/index.d.ts.map +1 -0
  175. package/dist/components/UIInput/index.js +14 -0
  176. package/dist/components/UIInput/index.js.map +1 -0
  177. package/dist/components/UILabel/UILabel.d.ts +30 -0
  178. package/dist/components/UILabel/UILabel.d.ts.map +1 -0
  179. package/dist/components/UILabel/UILabel.js +64 -0
  180. package/dist/components/UILabel/UILabel.js.map +1 -0
  181. package/dist/components/UILabel/index.d.ts +2 -0
  182. package/dist/components/UILabel/index.d.ts.map +1 -0
  183. package/dist/components/UILabel/index.js +14 -0
  184. package/dist/components/UILabel/index.js.map +1 -0
  185. package/dist/components/UILink/UILink.d.ts +22 -0
  186. package/dist/components/UILink/UILink.d.ts.map +1 -0
  187. package/dist/components/UILink/UILink.js +58 -0
  188. package/dist/components/UILink/UILink.js.map +1 -0
  189. package/dist/components/UILink/index.d.ts +2 -0
  190. package/dist/components/UILink/index.d.ts.map +1 -0
  191. package/dist/components/UILink/index.js +14 -0
  192. package/dist/components/UILink/index.js.map +1 -0
  193. package/dist/components/UIList/UIList.d.ts +31 -0
  194. package/dist/components/UIList/UIList.d.ts.map +1 -0
  195. package/dist/components/UIList/UIList.js +120 -0
  196. package/dist/components/UIList/UIList.js.map +1 -0
  197. package/dist/components/UIList/UIList.scss +16 -0
  198. package/dist/components/UIList/index.d.ts +2 -0
  199. package/dist/components/UIList/index.d.ts.map +1 -0
  200. package/dist/components/UIList/index.js +14 -0
  201. package/dist/components/UIList/index.js.map +1 -0
  202. package/dist/components/UILoader/UILoader.d.ts +27 -0
  203. package/dist/components/UILoader/UILoader.d.ts.map +1 -0
  204. package/dist/components/UILoader/UILoader.js +78 -0
  205. package/dist/components/UILoader/UILoader.js.map +1 -0
  206. package/dist/components/UILoader/UILoader.scss +32 -0
  207. package/dist/components/UILoader/index.d.ts +2 -0
  208. package/dist/components/UILoader/index.d.ts.map +1 -0
  209. package/dist/components/UILoader/index.js +14 -0
  210. package/dist/components/UILoader/index.js.map +1 -0
  211. package/dist/components/UIMessageBar/UIMessageBar.d.ts +25 -0
  212. package/dist/components/UIMessageBar/UIMessageBar.d.ts.map +1 -0
  213. package/dist/components/UIMessageBar/UIMessageBar.js +59 -0
  214. package/dist/components/UIMessageBar/UIMessageBar.js.map +1 -0
  215. package/dist/components/UIMessageBar/index.d.ts +2 -0
  216. package/dist/components/UIMessageBar/index.d.ts.map +1 -0
  217. package/dist/components/UIMessageBar/index.js +14 -0
  218. package/dist/components/UIMessageBar/index.js.map +1 -0
  219. package/dist/components/UIModal/UIModal.d.ts +23 -0
  220. package/dist/components/UIModal/UIModal.d.ts.map +1 -0
  221. package/dist/components/UIModal/UIModal.js +43 -0
  222. package/dist/components/UIModal/UIModal.js.map +1 -0
  223. package/dist/components/UIModal/index.d.ts +2 -0
  224. package/dist/components/UIModal/index.d.ts.map +1 -0
  225. package/dist/components/UIModal/index.js +14 -0
  226. package/dist/components/UIModal/index.js.map +1 -0
  227. package/dist/components/UIOverlay/UIOverlay.d.ts +22 -0
  228. package/dist/components/UIOverlay/UIOverlay.d.ts.map +1 -0
  229. package/dist/components/UIOverlay/UIOverlay.js +38 -0
  230. package/dist/components/UIOverlay/UIOverlay.js.map +1 -0
  231. package/dist/components/UIOverlay/index.d.ts +2 -0
  232. package/dist/components/UIOverlay/index.d.ts.map +1 -0
  233. package/dist/components/UIOverlay/index.js +14 -0
  234. package/dist/components/UIOverlay/index.js.map +1 -0
  235. package/dist/components/UISearchBox/UISearchBox.d.ts +22 -0
  236. package/dist/components/UISearchBox/UISearchBox.d.ts.map +1 -0
  237. package/dist/components/UISearchBox/UISearchBox.js +155 -0
  238. package/dist/components/UISearchBox/UISearchBox.js.map +1 -0
  239. package/dist/components/UISearchBox/index.d.ts +4 -0
  240. package/dist/components/UISearchBox/index.d.ts.map +1 -0
  241. package/dist/components/UISearchBox/index.js +14 -0
  242. package/dist/components/UISearchBox/index.js.map +1 -0
  243. package/dist/components/UISection/UISection.d.ts +33 -0
  244. package/dist/components/UISection/UISection.d.ts.map +1 -0
  245. package/dist/components/UISection/UISection.js +47 -0
  246. package/dist/components/UISection/UISection.js.map +1 -0
  247. package/dist/components/UISection/UISection.scss +76 -0
  248. package/dist/components/UISection/UISections.d.ts +251 -0
  249. package/dist/components/UISection/UISections.d.ts.map +1 -0
  250. package/dist/components/UISection/UISections.js +709 -0
  251. package/dist/components/UISection/UISections.js.map +1 -0
  252. package/dist/components/UISection/UISections.scss +62 -0
  253. package/dist/components/UISection/UISplitter.d.ts +97 -0
  254. package/dist/components/UISection/UISplitter.d.ts.map +1 -0
  255. package/dist/components/UISection/UISplitter.js +221 -0
  256. package/dist/components/UISection/UISplitter.js.map +1 -0
  257. package/dist/components/UISection/UISplitter.scss +212 -0
  258. package/dist/components/UISection/_mixins.scss +14 -0
  259. package/dist/components/UISection/_variables.scss +1 -0
  260. package/dist/components/UISection/index.d.ts +4 -0
  261. package/dist/components/UISection/index.d.ts.map +1 -0
  262. package/dist/components/UISection/index.js +16 -0
  263. package/dist/components/UISection/index.js.map +1 -0
  264. package/dist/components/UITable/UITable-helper.d.ts +85 -0
  265. package/dist/components/UITable/UITable-helper.d.ts.map +1 -0
  266. package/dist/components/UITable/UITable-helper.js +267 -0
  267. package/dist/components/UITable/UITable-helper.js.map +1 -0
  268. package/dist/components/UITable/UITable.d.ts +212 -0
  269. package/dist/components/UITable/UITable.d.ts.map +1 -0
  270. package/dist/components/UITable/UITable.js +762 -0
  271. package/dist/components/UITable/UITable.js.map +1 -0
  272. package/dist/components/UITable/UITable.scss +194 -0
  273. package/dist/components/UITable/index.d.ts +3 -0
  274. package/dist/components/UITable/index.d.ts.map +1 -0
  275. package/dist/components/UITable/index.js +15 -0
  276. package/dist/components/UITable/index.js.map +1 -0
  277. package/dist/components/UITable/types.d.ts +76 -0
  278. package/dist/components/UITable/types.d.ts.map +1 -0
  279. package/dist/components/UITable/types.js +27 -0
  280. package/dist/components/UITable/types.js.map +1 -0
  281. package/dist/components/UITabs/UITabs.d.ts +28 -0
  282. package/dist/components/UITabs/UITabs.d.ts.map +1 -0
  283. package/dist/components/UITabs/UITabs.js +70 -0
  284. package/dist/components/UITabs/UITabs.js.map +1 -0
  285. package/dist/components/UITabs/index.d.ts +2 -0
  286. package/dist/components/UITabs/index.d.ts.map +1 -0
  287. package/dist/components/UITabs/index.js +14 -0
  288. package/dist/components/UITabs/index.js.map +1 -0
  289. package/dist/components/UIToggle/UIToggle.d.ts +39 -0
  290. package/dist/components/UIToggle/UIToggle.d.ts.map +1 -0
  291. package/dist/components/UIToggle/UIToggle.js +181 -0
  292. package/dist/components/UIToggle/UIToggle.js.map +1 -0
  293. package/dist/components/UIToggle/index.d.ts +2 -0
  294. package/dist/components/UIToggle/index.d.ts.map +1 -0
  295. package/dist/components/UIToggle/index.js +14 -0
  296. package/dist/components/UIToggle/index.js.map +1 -0
  297. package/dist/components/UIToggleGroup/UIToggleGroup.d.ts +31 -0
  298. package/dist/components/UIToggleGroup/UIToggleGroup.d.ts.map +1 -0
  299. package/dist/components/UIToggleGroup/UIToggleGroup.js +132 -0
  300. package/dist/components/UIToggleGroup/UIToggleGroup.js.map +1 -0
  301. package/dist/components/UIToggleGroup/UIToggleGroup.scss +13 -0
  302. package/dist/components/UIToggleGroup/UIToggleGroup.types.d.ts +23 -0
  303. package/dist/components/UIToggleGroup/UIToggleGroup.types.d.ts.map +1 -0
  304. package/dist/components/UIToggleGroup/UIToggleGroup.types.js +3 -0
  305. package/dist/components/UIToggleGroup/UIToggleGroup.types.js.map +1 -0
  306. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.d.ts +26 -0
  307. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.d.ts.map +1 -0
  308. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.js +74 -0
  309. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.js.map +1 -0
  310. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.scss +74 -0
  311. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.types.d.ts +11 -0
  312. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.types.d.ts.map +1 -0
  313. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.types.js +3 -0
  314. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.types.js.map +1 -0
  315. package/dist/components/UIToggleGroup/UIToggleGroupOption/index.d.ts +3 -0
  316. package/dist/components/UIToggleGroup/UIToggleGroupOption/index.d.ts.map +1 -0
  317. package/dist/components/UIToggleGroup/UIToggleGroupOption/index.js +15 -0
  318. package/dist/components/UIToggleGroup/UIToggleGroupOption/index.js.map +1 -0
  319. package/dist/components/UIToggleGroup/index.d.ts +3 -0
  320. package/dist/components/UIToggleGroup/index.d.ts.map +1 -0
  321. package/dist/components/UIToggleGroup/index.js +15 -0
  322. package/dist/components/UIToggleGroup/index.js.map +1 -0
  323. package/dist/components/UIToolbar/UIToolbar.d.ts +37 -0
  324. package/dist/components/UIToolbar/UIToolbar.d.ts.map +1 -0
  325. package/dist/components/UIToolbar/UIToolbar.js +101 -0
  326. package/dist/components/UIToolbar/UIToolbar.js.map +1 -0
  327. package/dist/components/UIToolbar/UIToolbar.scss +48 -0
  328. package/dist/components/UIToolbar/UIToolbarColumn.d.ts +8 -0
  329. package/dist/components/UIToolbar/UIToolbarColumn.d.ts.map +1 -0
  330. package/dist/components/UIToolbar/UIToolbarColumn.js +30 -0
  331. package/dist/components/UIToolbar/UIToolbarColumn.js.map +1 -0
  332. package/dist/components/UIToolbar/UIToolbarDivider.d.ts +26 -0
  333. package/dist/components/UIToolbar/UIToolbarDivider.d.ts.map +1 -0
  334. package/dist/components/UIToolbar/UIToolbarDivider.js +51 -0
  335. package/dist/components/UIToolbar/UIToolbarDivider.js.map +1 -0
  336. package/dist/components/UIToolbar/index.d.ts +4 -0
  337. package/dist/components/UIToolbar/index.d.ts.map +1 -0
  338. package/dist/components/UIToolbar/index.js +16 -0
  339. package/dist/components/UIToolbar/index.js.map +1 -0
  340. package/dist/components/UITooltip/UITooltip.d.ts +29 -0
  341. package/dist/components/UITooltip/UITooltip.d.ts.map +1 -0
  342. package/dist/components/UITooltip/UITooltip.js +79 -0
  343. package/dist/components/UITooltip/UITooltip.js.map +1 -0
  344. package/dist/components/UITooltip/UITooltipUtils.d.ts +17 -0
  345. package/dist/components/UITooltip/UITooltipUtils.d.ts.map +1 -0
  346. package/dist/components/UITooltip/UITooltipUtils.js +47 -0
  347. package/dist/components/UITooltip/UITooltipUtils.js.map +1 -0
  348. package/dist/components/UITooltip/index.d.ts +3 -0
  349. package/dist/components/UITooltip/index.d.ts.map +1 -0
  350. package/dist/components/UITooltip/index.js +15 -0
  351. package/dist/components/UITooltip/index.js.map +1 -0
  352. package/dist/components/UITreeDropdown/UITreeDropdown.d.ts +255 -0
  353. package/dist/components/UITreeDropdown/UITreeDropdown.d.ts.map +1 -0
  354. package/dist/components/UITreeDropdown/UITreeDropdown.js +638 -0
  355. package/dist/components/UITreeDropdown/UITreeDropdown.js.map +1 -0
  356. package/dist/components/UITreeDropdown/UITreeDropdown.scss +82 -0
  357. package/dist/components/UITreeDropdown/index.d.ts +2 -0
  358. package/dist/components/UITreeDropdown/index.d.ts.map +1 -0
  359. package/dist/components/UITreeDropdown/index.js +14 -0
  360. package/dist/components/UITreeDropdown/index.js.map +1 -0
  361. package/dist/components/UIVerticalDivider/UIVerticalDivider.d.ts +24 -0
  362. package/dist/components/UIVerticalDivider/UIVerticalDivider.d.ts.map +1 -0
  363. package/dist/components/UIVerticalDivider/UIVerticalDivider.js +42 -0
  364. package/dist/components/UIVerticalDivider/UIVerticalDivider.js.map +1 -0
  365. package/dist/components/UIVerticalDivider/index.d.ts +2 -0
  366. package/dist/components/UIVerticalDivider/index.d.ts.map +1 -0
  367. package/dist/components/UIVerticalDivider/index.js +14 -0
  368. package/dist/components/UIVerticalDivider/index.js.map +1 -0
  369. package/dist/components/UIVirtualList/UIAutoSizer.d.ts +22 -0
  370. package/dist/components/UIVirtualList/UIAutoSizer.d.ts.map +1 -0
  371. package/dist/components/UIVirtualList/UIAutoSizer.js +33 -0
  372. package/dist/components/UIVirtualList/UIAutoSizer.js.map +1 -0
  373. package/dist/components/UIVirtualList/UICellMeasurer.d.ts +23 -0
  374. package/dist/components/UIVirtualList/UICellMeasurer.d.ts.map +1 -0
  375. package/dist/components/UIVirtualList/UICellMeasurer.js +33 -0
  376. package/dist/components/UIVirtualList/UICellMeasurer.js.map +1 -0
  377. package/dist/components/UIVirtualList/UIVirtualList.d.ts +43 -0
  378. package/dist/components/UIVirtualList/UIVirtualList.d.ts.map +1 -0
  379. package/dist/components/UIVirtualList/UIVirtualList.js +70 -0
  380. package/dist/components/UIVirtualList/UIVirtualList.js.map +1 -0
  381. package/dist/components/UIVirtualList/index.d.ts +4 -0
  382. package/dist/components/UIVirtualList/index.d.ts.map +1 -0
  383. package/dist/components/UIVirtualList/index.js +16 -0
  384. package/dist/components/UIVirtualList/index.js.map +1 -0
  385. package/dist/components/index.d.ts +34 -0
  386. package/dist/components/index.d.ts.map +1 -0
  387. package/dist/components/index.js +46 -0
  388. package/dist/components/index.js.map +1 -0
  389. package/dist/helper/ValidationMessage/MessageWrapper.d.ts +18 -0
  390. package/dist/helper/ValidationMessage/MessageWrapper.d.ts.map +1 -0
  391. package/dist/helper/ValidationMessage/MessageWrapper.js +35 -0
  392. package/dist/helper/ValidationMessage/MessageWrapper.js.map +1 -0
  393. package/dist/helper/ValidationMessage/MessageWrapper.scss +44 -0
  394. package/dist/helper/ValidationMessage/index.d.ts +3 -0
  395. package/dist/helper/ValidationMessage/index.d.ts.map +1 -0
  396. package/dist/helper/ValidationMessage/index.js +15 -0
  397. package/dist/helper/ValidationMessage/index.js.map +1 -0
  398. package/dist/helper/ValidationMessage/utils.d.ts +32 -0
  399. package/dist/helper/ValidationMessage/utils.d.ts.map +1 -0
  400. package/dist/helper/ValidationMessage/utils.js +124 -0
  401. package/dist/helper/ValidationMessage/utils.js.map +1 -0
  402. package/dist/index.d.ts +3 -0
  403. package/dist/index.d.ts.map +1 -0
  404. package/dist/index.js +15 -0
  405. package/dist/index.js.map +1 -0
  406. package/dist/styles/_color.scss +435 -0
  407. package/dist/styles/_mixins.scss +15 -0
  408. package/dist/styles/_theia_materialcolors.scss +279 -0
  409. package/dist/styles/_typography.scss +72 -0
  410. package/dist/styles/_variables.scss +24 -0
  411. package/dist/styles/ui-components.scss +5 -0
  412. package/dist/utilities/DeepMerge.d.ts +10 -0
  413. package/dist/utilities/DeepMerge.d.ts.map +1 -0
  414. package/dist/utilities/DeepMerge.js +43 -0
  415. package/dist/utilities/DeepMerge.js.map +1 -0
  416. package/dist/utilities/Focus.d.ts +5 -0
  417. package/dist/utilities/Focus.d.ts.map +1 -0
  418. package/dist/utilities/Focus.js +8 -0
  419. package/dist/utilities/Focus.js.map +1 -0
  420. package/dist/utilities/Id.d.ts +3 -0
  421. package/dist/utilities/Id.d.ts.map +1 -0
  422. package/dist/utilities/Id.js +6 -0
  423. package/dist/utilities/Id.js.map +1 -0
  424. package/dist/utilities/Keys.d.ts +3 -0
  425. package/dist/utilities/Keys.d.ts.map +1 -0
  426. package/dist/utilities/Keys.js +6 -0
  427. package/dist/utilities/Keys.js.map +1 -0
  428. package/dist/utilities/index.d.ts +4 -0
  429. package/dist/utilities/index.d.ts.map +1 -0
  430. package/dist/utilities/index.js +16 -0
  431. package/dist/utilities/index.js.map +1 -0
  432. package/package.json +78 -0
  433. package/storybook/509.1060f8f464e74d7e89e3.manager.bundle.js +17 -0
  434. package/storybook/685.6d7c03ae84f4f4910fd8.manager.bundle.js +10 -0
  435. package/storybook/720.3f79f56f8617ba9b098b.manager.bundle.js +1 -0
  436. package/storybook/730.e07ff5529508942d85d4.manager.bundle.js +15 -0
  437. package/storybook/759.8ae5af3b1b3b446a9919.manager.bundle.js +296 -0
  438. package/storybook/906.cf93a831.iframe.bundle.js +1 -0
  439. package/storybook/93.4e7a890e.iframe.bundle.js +301 -0
  440. package/storybook/975.15c711f75c0452ae9e9f.manager.bundle.js +2 -0
  441. package/storybook/978.a517622963996a3b8256.manager.bundle.js +894 -0
  442. package/storybook/983.515d3eedbfaed61e9ae7.manager.bundle.js +1 -0
  443. package/storybook/favicon.ico +0 -0
  444. package/storybook/iframe.html +380 -0
  445. package/storybook/index.html +177 -0
  446. package/storybook/main.e843f431b2692c06059a.manager.bundle.js +1 -0
  447. package/storybook/main.fd2077c6.iframe.bundle.js +98 -0
  448. package/storybook/project.json +1 -0
  449. package/storybook/runtime~main.1118f177d5097a42d314.manager.bundle.js +2 -0
  450. package/storybook/runtime~main.e0688c57.iframe.bundle.js +2 -0
@@ -0,0 +1,468 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.UIComboBox = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const react_2 = require("@fluentui/react");
9
+ const UIHighlightMenuOption_1 = require("../UIContextualMenu/UIHighlightMenuOption");
10
+ require("./UIComboBox.scss");
11
+ require("./Callout.scss");
12
+ const UILoader_1 = require("../UILoader");
13
+ const Icons_1 = require("../Icons");
14
+ const ValidationMessage_1 = require("../../helper/ValidationMessage");
15
+ const UILabel_1 = require("../UILabel");
16
+ /**
17
+ * UIComboBox component.
18
+ *
19
+ * @exports
20
+ * @class {UIComboBox}
21
+ * @extends {React.Component<UIComboBoxProps, UIComboBoxState>}
22
+ */
23
+ class UIComboBox extends react_1.default.Component {
24
+ /**
25
+ * Initializes component properties.
26
+ * @param {UIComboBoxProps} props
27
+ */
28
+ constructor(props) {
29
+ super(props);
30
+ this.comboBox = react_1.default.createRef();
31
+ this.root = react_1.default.createRef();
32
+ this.selectedElement = react_1.default.createRef();
33
+ this.query = '';
34
+ this.ignoreOpenKeys = [
35
+ react_2.KeyCodes.ctrl,
36
+ react_2.KeyCodes.shift,
37
+ react_2.KeyCodes.tab,
38
+ react_2.KeyCodes.alt,
39
+ react_2.KeyCodes.capslock
40
+ ];
41
+ this.isListHidden = false;
42
+ /**
43
+ * Method called on combobox option resolvation.
44
+ * We should not allow to add any custom option.
45
+ *
46
+ * @returns {IComboBoxOption[]} Array of combobox items.
47
+ */
48
+ this.onResolveOptions = () => {
49
+ return this.props.options;
50
+ };
51
+ /**
52
+ * Method called on combobox item render.
53
+ * We should pass query to it and avoid rendering if it is hidden.
54
+ *
55
+ * @param {IComboBoxOption} props Combobox item props.
56
+ * @param {Function} defaultRender Combobox item default renderer.
57
+ * @returns {JSX.Element | null} Element to render.
58
+ */
59
+ this.onRenderItem = (props, defaultRender) => {
60
+ if (defaultRender && props && !props.itemType) {
61
+ // Use data for custom onRender functions
62
+ props.data = this.query;
63
+ if (props.title === undefined) {
64
+ // Apply title by default if property not provided
65
+ // In older fluent-ui versions it was applied by default, but behavior changed in version '8.66.2'
66
+ props.title = props.text;
67
+ }
68
+ const selected = props.index !== undefined && this.getCurrentSelectedIndex() === props.index;
69
+ return !props.hidden ? (react_1.default.createElement("div", { key: props.key, ref: selected ? this.selectedElement : undefined, className: `${selected ? 'ts-ComboBox--selected' : ''}` }, defaultRender(props))) : null;
70
+ }
71
+ return null;
72
+ };
73
+ /**
74
+ * Method to get current selected index.
75
+ *
76
+ * @returns {number | undefined} Selected item index.
77
+ */
78
+ this.getCurrentSelectedIndex = () => {
79
+ const baseCombobox = this.comboBox.current;
80
+ if (!baseCombobox) {
81
+ return;
82
+ }
83
+ if (baseCombobox.state.currentPendingValueValidIndex !== -1) {
84
+ return baseCombobox.state.currentPendingValueValidIndex;
85
+ }
86
+ return baseCombobox.props.hoisted.selectedIndices ? baseCombobox.props.hoisted.selectedIndices[0] : undefined;
87
+ };
88
+ /**
89
+ * Return a value for the placeholder.
90
+ *
91
+ * @returns {string}
92
+ */
93
+ this.getPlaceholder = () => {
94
+ if (this.props.placeholder) {
95
+ return this.props.placeholder;
96
+ }
97
+ else {
98
+ // That string should be translated
99
+ return 'Search or select from dropdown';
100
+ }
101
+ };
102
+ /**
103
+ * Method called on combobox item's option/label render.
104
+ * We should use different componenet which support highlighting - 'ComboboxSearchOption'.
105
+ *
106
+ * @param {IComboBoxOption} props Combobox item props.
107
+ * @param {Function} defaultRender Combobox item default renderer.
108
+ * @returns {JSX.Element | null} Element to render.
109
+ */
110
+ this.onRenderOption = (props, defaultRender) => {
111
+ if (props) {
112
+ return react_1.default.createElement(UIHighlightMenuOption_1.UIHighlightMenuOption, { text: props.text, query: this.query });
113
+ }
114
+ return defaultRender ? defaultRender(props) : null;
115
+ };
116
+ this.handleChange = (event, option) => {
117
+ option && this.props.onHandleChange && this.props.onHandleChange(option.key);
118
+ };
119
+ this.onRenderListLoading = () => {
120
+ const styles = {
121
+ label: {
122
+ fontSize: '11px',
123
+ fontWeight: 'normal'
124
+ }
125
+ };
126
+ return (react_1.default.createElement("div", { className: "option-loading" },
127
+ react_1.default.createElement(UILoader_1.UILoader, { label: "Loading", className: "uiLoaderXSmall", labelPosition: "right", styles: styles })));
128
+ };
129
+ this.onInput = this.onInput.bind(this);
130
+ this.reserQuery = this.reserQuery.bind(this);
131
+ this.onResolveOptions = this.onResolveOptions.bind(this);
132
+ this.onRenderItem = this.onRenderItem.bind(this);
133
+ this.onRenderOption = this.onRenderOption.bind(this);
134
+ this.onKeyDown = this.onKeyDown.bind(this);
135
+ this.onClick = this.onClick.bind(this);
136
+ this.toggleRefresh = this.toggleRefresh.bind(this);
137
+ this.handleRefreshButton = this.handleRefreshButton.bind(this);
138
+ this.onPendingValueChanged = this.onPendingValueChanged.bind(this);
139
+ this.onMultiSelectChange = this.onMultiSelectChange.bind(this);
140
+ this.onScrollToItem = this.onScrollToItem.bind(this);
141
+ this.setFocus = this.setFocus.bind(this);
142
+ react_2.initializeComponentRef(this);
143
+ this.state = {
144
+ toggleRefresh: false
145
+ };
146
+ }
147
+ /**
148
+ *
149
+ * @param {UIComboBoxProps} nextProps
150
+ * @returns {boolean}
151
+ */
152
+ shouldComponentUpdate(nextProps) {
153
+ if (nextProps.options !== this.props.options && this.query) {
154
+ // Filter options
155
+ this.updateHiddenOptions(nextProps.options);
156
+ }
157
+ return true;
158
+ }
159
+ /**
160
+ * Updates hidden options.
161
+ *
162
+ * @param {IComboBoxOption[]} opts
163
+ */
164
+ updateHiddenOptions(opts) {
165
+ this.isListHidden = true;
166
+ for (const option of opts) {
167
+ option.hidden = option.text.toLowerCase().indexOf(this.query) === -1;
168
+ if (this.isListHidden && !option.hidden) {
169
+ this.isListHidden = false;
170
+ }
171
+ }
172
+ }
173
+ /**
174
+ * Method filters options and hides unmatched options.
175
+ *
176
+ * @param {React.FormEvent<IComboBox>} event Combobox event object
177
+ */
178
+ onInput(event) {
179
+ this.isListHidden = false;
180
+ if (event.target) {
181
+ const input = event.target;
182
+ this.query = input.value.trimStart().toLowerCase();
183
+ // Filter options
184
+ const baseCombobox = this.comboBox.current;
185
+ if (baseCombobox) {
186
+ this.updateHiddenOptions(baseCombobox.props.hoisted.currentOptions);
187
+ }
188
+ }
189
+ }
190
+ /**
191
+ * Method opens menu when user clicks on Combobox (input or button).
192
+ */
193
+ onClick() {
194
+ const baseCombobox = this.comboBox.current;
195
+ const isOpen = baseCombobox && baseCombobox.state.isOpen;
196
+ const isDisabled = this.props.disabled;
197
+ if (this.props.openMenuOnClick && baseCombobox && !isOpen && !isDisabled) {
198
+ baseCombobox.focus(true);
199
+ }
200
+ }
201
+ /**
202
+ * Method handles keydown event and does following.
203
+ * 1. Fix for bug(in fluentui sources) regarding keyboard navigation when last item is not visible.
204
+ * 2. Opens list when user enters any key.
205
+ *
206
+ * @param {React.FormEvent<HTMLInputElement>} event Keydown event
207
+ */
208
+ onKeyDown(event) {
209
+ let handled = false;
210
+ const baseCombobox = this.comboBox.current;
211
+ const isOpen = baseCombobox && baseCombobox.state.isOpen;
212
+ if (event.which === react_2.KeyCodes.down || event.which === react_2.KeyCodes.up) {
213
+ handled = this._setCyclingNavigation(event.which === react_2.KeyCodes.down);
214
+ }
215
+ if (handled) {
216
+ // Do not handle keydown of combobox
217
+ event.preventDefault();
218
+ event.stopPropagation();
219
+ }
220
+ else if (!this.ignoreOpenKeys.includes(event.which) &&
221
+ baseCombobox &&
222
+ !this.props.openMenuOnClick &&
223
+ !isOpen) {
224
+ // Open dropdown list on first key press instead of showing it right after focus
225
+ baseCombobox.focus(true);
226
+ }
227
+ }
228
+ /**
229
+ * Method resets search query.
230
+ */
231
+ reserQuery() {
232
+ this.query = '';
233
+ for (const option of this.props.options) {
234
+ delete option.hidden;
235
+ }
236
+ this.isListHidden = false;
237
+ this.setState({
238
+ isListHidden: this.isListHidden
239
+ });
240
+ }
241
+ /**
242
+ * Method which determines what is next visible item - it is used to fix bug in fluentui sources..
243
+ *
244
+ * @param {number} index Current index.
245
+ * @param {boolean} forward Dirrection to look up.
246
+ * @returns {ComboboxItemInfo | null} Combobox item object.
247
+ */
248
+ getNextVisibleItem(index, forward) {
249
+ const limit = this.props.options.length;
250
+ while (index >= 0 && index < limit) {
251
+ if (this.props.options[index] && !this.props.options[index].hidden) {
252
+ return {
253
+ option: this.props.options[index],
254
+ index
255
+ };
256
+ }
257
+ index = index + (forward ? 1 : -1);
258
+ }
259
+ return null;
260
+ }
261
+ /**
262
+ * Method is used as fix for bug(in fluentui sources) regarding keyboard navigation when last item is not visible.
263
+ *
264
+ * @param {boolean} forward Dirrection to look up.
265
+ * @returns {boolean} Returs true if method changed navigation.
266
+ */
267
+ _setCyclingNavigation(forward) {
268
+ const baseCombobox = this.comboBox.current;
269
+ if (baseCombobox && baseCombobox.state.currentPendingValueValidIndex >= 0) {
270
+ // Check if there exists any visible item in that direction
271
+ let index = baseCombobox.state.currentPendingValueValidIndex;
272
+ const limit = this.props.options.length - 1;
273
+ index = index + (forward ? 1 : -1);
274
+ let option = this.getNextVisibleItem(index, forward);
275
+ if (option) {
276
+ // Item exists - no need for custom logic as we are fixing issue in base control
277
+ return false;
278
+ }
279
+ // Item was not found - make circular navigation
280
+ option = this.getNextVisibleItem(forward ? 0 : limit, forward);
281
+ if (option) {
282
+ // We fixed issue in base combobox control -
283
+ // when last item is not visible and we navigate it
284
+ baseCombobox.setState({
285
+ currentPendingValueValidIndex: option.index,
286
+ currentPendingValue: option.option.text
287
+ });
288
+ return true;
289
+ }
290
+ }
291
+ return false;
292
+ }
293
+ /**
294
+ * Method for property 'useComboBoxAsMenuMinWidth' - method resolves current dropdown width and updates state with latest value.
295
+ * 'minWidth' from state is used to set callout size in render.
296
+ */
297
+ calculateMenuMinWidth() {
298
+ const root = this.root.current;
299
+ if (root && this.props.useComboBoxAsMenuMinWidth && root.clientWidth !== this.state.minWidth) {
300
+ this.setState({
301
+ minWidth: root.clientWidth
302
+ });
303
+ }
304
+ }
305
+ /**
306
+ * Method called only when property 'highlight' is true.
307
+ * Method called after each value live change - we need recheck if there is any visible item after search is done.
308
+ * 1. If there no any visible item - we hide menu callout.
309
+ * 2. If there is any visible item - we show menu callout.
310
+ */
311
+ onPendingValueChanged() {
312
+ if (this.state.isListHidden !== this.isListHidden) {
313
+ this.setState({
314
+ isListHidden: this.isListHidden
315
+ });
316
+ }
317
+ }
318
+ /**
319
+ * Public method to close menu callout if it is open.
320
+ */
321
+ dismissMenu() {
322
+ if (this.comboBox.current) {
323
+ this.comboBox.current.dismissMenu();
324
+ }
325
+ }
326
+ /**
327
+ * Public method to set the focus on the combo box.
328
+ */
329
+ setFocus() {
330
+ if (this.comboBox.current) {
331
+ this.comboBox.current.focus();
332
+ }
333
+ }
334
+ /**
335
+ * Method called only when property 'onRefresh' has been defined.
336
+ * It is called when the menu Open and Dismiss to handle the toggleRefresh state.
337
+ */
338
+ toggleRefresh() {
339
+ this.setState({
340
+ toggleRefresh: !this.state.toggleRefresh
341
+ });
342
+ }
343
+ /**
344
+ * Method called only when property 'onRefresh' has been defined.
345
+ * It is called when click on the refresh buttonIcon.
346
+ */
347
+ handleRefreshButton() {
348
+ const baseCombobox = this.comboBox.current;
349
+ if (this.props.useComboBoxAsMenuMinWidth) {
350
+ this.calculateMenuMinWidth();
351
+ }
352
+ if (this.props.onRefresh) {
353
+ this.props.onRefresh();
354
+ baseCombobox?.focus(true);
355
+ }
356
+ }
357
+ /**
358
+ * Handle multiselect change by avoiding 'blur' event.
359
+ * Problem is that blur event uses suggested value and toggles selection for it.
360
+ *
361
+ * @param {React.FormEvent<IComboBox>} event on change
362
+ * @param {IComboBoxOption} option changed option
363
+ * @param {number} index option index
364
+ * @param {string} value changed value
365
+ */
366
+ onMultiSelectChange(event, option, index, value) {
367
+ // Ignore toggle if change triggered by blur
368
+ if (this.props.onChange && event.type !== 'blur') {
369
+ this.props.onChange(event, option, index, value);
370
+ }
371
+ }
372
+ /**
373
+ * Method is used to fix bug in fluent ui.
374
+ * Bug is for multiselect combobox - when keyboard navigation is used, then scrollbar position is not updated to make selected option visible in viewport.
375
+ */
376
+ onScrollToItem() {
377
+ // Multi select only
378
+ const selectedElement = this.selectedElement.current;
379
+ if (!this.props.multiSelect || !selectedElement) {
380
+ return;
381
+ }
382
+ const offsetParent = selectedElement.offsetParent;
383
+ if (offsetParent) {
384
+ const size = offsetParent.clientHeight;
385
+ const scrollSize = offsetParent.scrollHeight;
386
+ if (scrollSize > size) {
387
+ const elementTop = selectedElement.offsetTop;
388
+ const elementBottom = elementTop + selectedElement.clientHeight;
389
+ const scrollTop = offsetParent.scrollTop;
390
+ const scrollBottom = scrollTop + size;
391
+ if (!(elementTop >= scrollTop && elementBottom <= scrollBottom)) {
392
+ // Outline node is not visible in viewport
393
+ const diff = elementBottom > scrollBottom ? elementBottom - scrollBottom : elementTop - scrollTop;
394
+ offsetParent.scrollTop = scrollTop + diff;
395
+ }
396
+ }
397
+ }
398
+ }
399
+ /**
400
+ * @returns {JSX.Element}
401
+ */
402
+ render() {
403
+ const messageInfo = ValidationMessage_1.getMessageInfo(this.props);
404
+ const errorSuffix = messageInfo.message ? ValidationMessage_1.MESSAGE_TYPES_CLASSNAME_MAP.get(messageInfo.type) : undefined;
405
+ return (react_1.default.createElement("div", { ref: this.root, className: `ts-ComboBox${messageInfo.message ? ' ts-ComboBox--' + errorSuffix : ''}` },
406
+ react_1.default.createElement(react_2.ComboBox, { componentRef: this.comboBox, disabled: this.props.isForceEnabled ? false : !this.props.options.length, iconButtonProps: {
407
+ iconProps: {
408
+ iconName: Icons_1.UiIcons.ArrowDown
409
+ }
410
+ }, calloutProps: {
411
+ calloutMaxHeight: 200,
412
+ className: 'ts-Callout ts-Callout-Dropdown',
413
+ styles: {
414
+ ...(this.props.useComboBoxAsMenuMinWidth && {
415
+ calloutMain: {
416
+ minWidth: this.state.minWidth,
417
+ display: this.state.isListHidden ? 'none' : undefined
418
+ }
419
+ })
420
+ }
421
+ }, styles: {
422
+ label: {
423
+ ...UILabel_1.labelGlobalStyle,
424
+ ...(this.props.disabled && {
425
+ opacity: '0.4'
426
+ }),
427
+ ...(this.props.required && {
428
+ selectors: {
429
+ '::after': {
430
+ content: `' *'`,
431
+ color: 'var(--vscode-inputValidation-errorBorder)',
432
+ paddingRight: 12
433
+ }
434
+ }
435
+ })
436
+ },
437
+ errorMessage: [messageInfo.style]
438
+ }, ...this.props, ...(this.props.highlight && {
439
+ onInput: this.onInput,
440
+ onMenuDismissed: this.reserQuery,
441
+ onResolveOptions: this.onResolveOptions,
442
+ onRenderItem: this.onRenderItem,
443
+ onRenderOption: this.onRenderOption,
444
+ placeholder: this.getPlaceholder(),
445
+ autofill: {
446
+ onKeyDownCapture: this.onKeyDown
447
+ },
448
+ onPendingValueChanged: this.onPendingValueChanged
449
+ }), ...(this.props.useComboBoxAsMenuMinWidth && {
450
+ // Use 'onMenuOpen', because there can be dynamic size of combobox
451
+ onMenuOpen: this.calculateMenuMinWidth.bind(this)
452
+ }), ...(this.props.openMenuOnClick && {
453
+ onClick: this.onClick.bind(this)
454
+ }), ...(this.props.onRefresh && {
455
+ onMenuOpen: this.handleRefreshButton,
456
+ onChange: this.handleChange
457
+ }), ...(this.props.isLoading && {
458
+ onRenderList: this.onRenderListLoading
459
+ }), ...(this.props.multiSelect && {
460
+ onScrollToItem: this.onScrollToItem,
461
+ ...(this.props.onChange && {
462
+ onChange: this.onMultiSelectChange
463
+ })
464
+ }), errorMessage: messageInfo.message })));
465
+ }
466
+ }
467
+ exports.UIComboBox = UIComboBox;
468
+ //# sourceMappingURL=UIComboBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UIComboBox.js","sourceRoot":"","sources":["../../../src/components/UIComboBox/UIComboBox.tsx"],"names":[],"mappings":"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"}