@patternfly/react-core 6.0.0-alpha.69 → 6.0.0-alpha.70

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 (423) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/components/package.json +1 -1
  3. package/deprecated/package.json +1 -1
  4. package/dist/dynamic/components/AboutModal/package.json +1 -1
  5. package/dist/dynamic/components/Accordion/package.json +1 -1
  6. package/dist/dynamic/components/ActionList/package.json +1 -1
  7. package/dist/dynamic/components/Alert/package.json +1 -1
  8. package/dist/dynamic/components/Avatar/package.json +1 -1
  9. package/dist/dynamic/components/BackToTop/package.json +1 -1
  10. package/dist/dynamic/components/Backdrop/package.json +1 -1
  11. package/dist/dynamic/components/BackgroundImage/package.json +1 -1
  12. package/dist/dynamic/components/Badge/package.json +1 -1
  13. package/dist/dynamic/components/Banner/package.json +1 -1
  14. package/dist/dynamic/components/Brand/package.json +1 -1
  15. package/dist/dynamic/components/Breadcrumb/package.json +1 -1
  16. package/dist/dynamic/components/Button/package.json +1 -1
  17. package/dist/dynamic/components/CalendarMonth/package.json +1 -1
  18. package/dist/dynamic/components/Card/package.json +1 -1
  19. package/dist/dynamic/components/Checkbox/package.json +1 -1
  20. package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
  21. package/dist/dynamic/components/CodeBlock/package.json +1 -1
  22. package/dist/dynamic/components/DataList/package.json +1 -1
  23. package/dist/dynamic/components/DatePicker/package.json +1 -1
  24. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  25. package/dist/dynamic/components/Divider/package.json +1 -1
  26. package/dist/dynamic/components/Drawer/package.json +1 -1
  27. package/dist/dynamic/components/Dropdown/package.json +1 -1
  28. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  29. package/dist/dynamic/components/EmptyState/package.json +1 -1
  30. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  31. package/dist/dynamic/components/FileUpload/package.json +1 -1
  32. package/dist/dynamic/components/Form/package.json +1 -1
  33. package/dist/dynamic/components/FormSelect/package.json +1 -1
  34. package/dist/dynamic/components/HelperText/package.json +1 -1
  35. package/dist/dynamic/components/Hint/package.json +1 -1
  36. package/dist/dynamic/components/Icon/package.json +1 -1
  37. package/dist/dynamic/components/InputGroup/package.json +1 -1
  38. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  39. package/dist/dynamic/components/Label/package.json +1 -1
  40. package/dist/dynamic/components/List/package.json +1 -1
  41. package/dist/dynamic/components/LoginPage/package.json +1 -1
  42. package/dist/dynamic/components/Masthead/package.json +1 -1
  43. package/dist/dynamic/components/Menu/package.json +1 -1
  44. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  45. package/dist/dynamic/components/Modal/package.json +1 -1
  46. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  47. package/dist/dynamic/components/Nav/package.json +1 -1
  48. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  49. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  50. package/dist/dynamic/components/NumberInput/package.json +1 -1
  51. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  52. package/dist/dynamic/components/Page/package.json +1 -1
  53. package/dist/dynamic/components/Pagination/package.json +1 -1
  54. package/dist/dynamic/components/Panel/package.json +1 -1
  55. package/dist/dynamic/components/Popover/package.json +1 -1
  56. package/dist/dynamic/components/Progress/package.json +1 -1
  57. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  58. package/dist/dynamic/components/Radio/package.json +1 -1
  59. package/dist/dynamic/components/SearchInput/package.json +1 -1
  60. package/dist/dynamic/components/Select/package.json +1 -1
  61. package/dist/dynamic/components/Sidebar/package.json +1 -1
  62. package/dist/dynamic/components/SimpleList/package.json +1 -1
  63. package/dist/dynamic/components/Skeleton/package.json +1 -1
  64. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  65. package/dist/dynamic/components/Slider/package.json +1 -1
  66. package/dist/dynamic/components/Spinner/package.json +1 -1
  67. package/dist/dynamic/components/Switch/package.json +1 -1
  68. package/dist/dynamic/components/Tabs/package.json +1 -1
  69. package/dist/dynamic/components/Text/package.json +1 -1
  70. package/dist/dynamic/components/TextArea/package.json +1 -1
  71. package/dist/dynamic/components/TextInput/package.json +1 -1
  72. package/dist/dynamic/components/TextInputGroup/package.json +1 -1
  73. package/dist/dynamic/components/Tile/package.json +1 -1
  74. package/dist/dynamic/components/TimePicker/package.json +1 -1
  75. package/dist/dynamic/components/Timestamp/package.json +1 -1
  76. package/dist/dynamic/components/Title/package.json +1 -1
  77. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  78. package/dist/dynamic/components/Toolbar/package.json +1 -1
  79. package/dist/dynamic/components/Tooltip/package.json +1 -1
  80. package/dist/dynamic/components/TreeView/package.json +1 -1
  81. package/dist/dynamic/components/Truncate/package.json +1 -1
  82. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  83. package/dist/dynamic/components/Wizard/package.json +1 -1
  84. package/dist/dynamic/deprecated/components/Chip/package.json +1 -1
  85. package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/DualListSelector/package.json +1 -0
  87. package/dist/dynamic/deprecated/components/Modal/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/package.json +1 -1
  90. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  91. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  92. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  93. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  94. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  95. package/dist/dynamic/helpers/constants/package.json +1 -1
  96. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  97. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  98. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  99. package/dist/dynamic/helpers/package.json +1 -1
  100. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  101. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  102. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  103. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  104. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  105. package/dist/dynamic/helpers/util/package.json +1 -1
  106. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  107. package/dist/dynamic/layouts/Flex/package.json +1 -1
  108. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  109. package/dist/dynamic/layouts/Grid/package.json +1 -1
  110. package/dist/dynamic/layouts/Level/package.json +1 -1
  111. package/dist/dynamic/layouts/Split/package.json +1 -1
  112. package/dist/dynamic/layouts/Stack/package.json +1 -1
  113. package/dist/dynamic/styles/package.json +1 -1
  114. package/dist/dynamic-modules.json +0 -3
  115. package/dist/esm/components/DualListSelector/DualListSelector.d.ts +4 -112
  116. package/dist/esm/components/DualListSelector/DualListSelector.d.ts.map +1 -1
  117. package/dist/esm/components/DualListSelector/DualListSelector.js +3 -433
  118. package/dist/esm/components/DualListSelector/DualListSelector.js.map +1 -1
  119. package/dist/esm/components/DualListSelector/DualListSelectorContext.d.ts +0 -1
  120. package/dist/esm/components/DualListSelector/DualListSelectorContext.d.ts.map +1 -1
  121. package/dist/esm/components/DualListSelector/DualListSelectorContext.js.map +1 -1
  122. package/dist/esm/components/DualListSelector/DualListSelectorControl.js +1 -1
  123. package/dist/esm/components/DualListSelector/DualListSelectorControl.js.map +1 -1
  124. package/dist/esm/components/DualListSelector/DualListSelectorControlsWrapper.d.ts +1 -1
  125. package/dist/esm/components/DualListSelector/DualListSelectorControlsWrapper.d.ts.map +1 -1
  126. package/dist/esm/components/DualListSelector/DualListSelectorControlsWrapper.js +1 -0
  127. package/dist/esm/components/DualListSelector/DualListSelectorControlsWrapper.js.map +1 -1
  128. package/dist/esm/components/DualListSelector/DualListSelectorList.d.ts +1 -1
  129. package/dist/esm/components/DualListSelector/DualListSelectorList.d.ts.map +1 -1
  130. package/dist/esm/components/DualListSelector/DualListSelectorList.js +2 -7
  131. package/dist/esm/components/DualListSelector/DualListSelectorList.js.map +1 -1
  132. package/dist/esm/components/DualListSelector/DualListSelectorListItem.d.ts +4 -4
  133. package/dist/esm/components/DualListSelector/DualListSelectorListItem.d.ts.map +1 -1
  134. package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.d.ts +4 -6
  135. package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +1 -1
  136. package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.js +3 -4
  137. package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.js.map +1 -1
  138. package/dist/esm/components/DualListSelector/DualListSelectorPane.d.ts +1 -22
  139. package/dist/esm/components/DualListSelector/DualListSelectorPane.d.ts.map +1 -1
  140. package/dist/esm/components/DualListSelector/DualListSelectorPane.js +6 -66
  141. package/dist/esm/components/DualListSelector/DualListSelectorPane.js.map +1 -1
  142. package/dist/esm/components/DualListSelector/DualListSelectorTree.d.ts +15 -15
  143. package/dist/esm/components/DualListSelector/DualListSelectorTree.d.ts.map +1 -1
  144. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.d.ts +7 -7
  145. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
  146. package/dist/esm/components/DualListSelector/index.d.ts +0 -2
  147. package/dist/esm/components/DualListSelector/index.d.ts.map +1 -1
  148. package/dist/esm/components/DualListSelector/index.js +0 -2
  149. package/dist/esm/components/DualListSelector/index.js.map +1 -1
  150. package/dist/esm/deprecated/components/DualListSelector/DualListSelector.d.ts +131 -0
  151. package/dist/esm/deprecated/components/DualListSelector/DualListSelector.d.ts.map +1 -0
  152. package/dist/esm/deprecated/components/DualListSelector/DualListSelector.js +453 -0
  153. package/dist/esm/deprecated/components/DualListSelector/DualListSelector.js.map +1 -0
  154. package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorContext.d.ts +1 -0
  155. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorContext.d.ts.map +1 -0
  156. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorContext.js.map +1 -0
  157. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorControl.d.ts.map +1 -0
  158. package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorControl.js +1 -1
  159. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorControl.js.map +1 -0
  160. package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorControlsWrapper.d.ts +1 -1
  161. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorControlsWrapper.d.ts.map +1 -0
  162. package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorControlsWrapper.js +0 -1
  163. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorControlsWrapper.js.map +1 -0
  164. package/dist/{js/next → esm/deprecated}/components/DualListSelector/DualListSelectorList.d.ts +1 -1
  165. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorList.d.ts.map +1 -0
  166. package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorList.js +7 -2
  167. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorList.js.map +1 -0
  168. package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorListItem.d.ts +4 -4
  169. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorListItem.d.ts.map +1 -0
  170. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorListItem.js.map +1 -0
  171. package/dist/{js/next → esm/deprecated}/components/DualListSelector/DualListSelectorListWrapper.d.ts +6 -4
  172. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +1 -0
  173. package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorListWrapper.js +4 -3
  174. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorListWrapper.js.map +1 -0
  175. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorPane.d.ts +52 -0
  176. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorPane.d.ts.map +1 -0
  177. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorPane.js +87 -0
  178. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorPane.js.map +1 -0
  179. package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorTree.d.ts +15 -15
  180. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorTree.d.ts.map +1 -0
  181. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorTree.js.map +1 -0
  182. package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorTreeItem.d.ts +7 -7
  183. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -0
  184. package/dist/esm/deprecated/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -0
  185. package/dist/esm/{next → deprecated}/components/DualListSelector/index.d.ts +1 -0
  186. package/dist/esm/deprecated/components/DualListSelector/index.d.ts.map +1 -0
  187. package/dist/esm/{next → deprecated}/components/DualListSelector/index.js +1 -0
  188. package/dist/esm/deprecated/components/DualListSelector/index.js.map +1 -0
  189. package/dist/esm/deprecated/components/DualListSelector/treeUtils.d.ts.map +1 -0
  190. package/dist/esm/deprecated/components/DualListSelector/treeUtils.js.map +1 -0
  191. package/dist/esm/deprecated/components/index.d.ts +1 -0
  192. package/dist/esm/deprecated/components/index.d.ts.map +1 -1
  193. package/dist/esm/deprecated/components/index.js +1 -0
  194. package/dist/esm/deprecated/components/index.js.map +1 -1
  195. package/dist/esm/next/components/index.d.ts +0 -1
  196. package/dist/esm/next/components/index.d.ts.map +1 -1
  197. package/dist/esm/next/components/index.js +1 -1
  198. package/dist/esm/next/components/index.js.map +1 -1
  199. package/dist/esm/next/index.d.ts +0 -1
  200. package/dist/esm/next/index.d.ts.map +1 -1
  201. package/dist/esm/next/index.js +1 -1
  202. package/dist/esm/next/index.js.map +1 -1
  203. package/dist/js/components/DualListSelector/DualListSelector.d.ts +4 -112
  204. package/dist/js/components/DualListSelector/DualListSelector.d.ts.map +1 -1
  205. package/dist/js/components/DualListSelector/DualListSelector.js +3 -433
  206. package/dist/js/components/DualListSelector/DualListSelector.js.map +1 -1
  207. package/dist/js/components/DualListSelector/DualListSelectorContext.d.ts +0 -1
  208. package/dist/js/components/DualListSelector/DualListSelectorContext.d.ts.map +1 -1
  209. package/dist/js/components/DualListSelector/DualListSelectorContext.js.map +1 -1
  210. package/dist/js/components/DualListSelector/DualListSelectorControl.js +1 -1
  211. package/dist/js/components/DualListSelector/DualListSelectorControl.js.map +1 -1
  212. package/dist/js/components/DualListSelector/DualListSelectorControlsWrapper.d.ts +1 -1
  213. package/dist/js/components/DualListSelector/DualListSelectorControlsWrapper.d.ts.map +1 -1
  214. package/dist/js/components/DualListSelector/DualListSelectorControlsWrapper.js +1 -0
  215. package/dist/js/components/DualListSelector/DualListSelectorControlsWrapper.js.map +1 -1
  216. package/dist/js/components/DualListSelector/DualListSelectorList.d.ts +1 -1
  217. package/dist/js/components/DualListSelector/DualListSelectorList.d.ts.map +1 -1
  218. package/dist/js/components/DualListSelector/DualListSelectorList.js +2 -7
  219. package/dist/js/components/DualListSelector/DualListSelectorList.js.map +1 -1
  220. package/dist/js/components/DualListSelector/DualListSelectorListItem.d.ts +4 -4
  221. package/dist/js/components/DualListSelector/DualListSelectorListItem.d.ts.map +1 -1
  222. package/dist/js/components/DualListSelector/DualListSelectorListWrapper.d.ts +4 -6
  223. package/dist/js/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +1 -1
  224. package/dist/js/components/DualListSelector/DualListSelectorListWrapper.js +3 -4
  225. package/dist/js/components/DualListSelector/DualListSelectorListWrapper.js.map +1 -1
  226. package/dist/js/components/DualListSelector/DualListSelectorPane.d.ts +1 -22
  227. package/dist/js/components/DualListSelector/DualListSelectorPane.d.ts.map +1 -1
  228. package/dist/js/components/DualListSelector/DualListSelectorPane.js +5 -65
  229. package/dist/js/components/DualListSelector/DualListSelectorPane.js.map +1 -1
  230. package/dist/js/components/DualListSelector/DualListSelectorTree.d.ts +15 -15
  231. package/dist/js/components/DualListSelector/DualListSelectorTree.d.ts.map +1 -1
  232. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.d.ts +7 -7
  233. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
  234. package/dist/js/components/DualListSelector/index.d.ts +0 -2
  235. package/dist/js/components/DualListSelector/index.d.ts.map +1 -1
  236. package/dist/js/components/DualListSelector/index.js +0 -2
  237. package/dist/js/components/DualListSelector/index.js.map +1 -1
  238. package/dist/js/deprecated/components/DualListSelector/DualListSelector.d.ts +131 -0
  239. package/dist/js/deprecated/components/DualListSelector/DualListSelector.d.ts.map +1 -0
  240. package/dist/js/deprecated/components/DualListSelector/DualListSelector.js +456 -0
  241. package/dist/js/deprecated/components/DualListSelector/DualListSelector.js.map +1 -0
  242. package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorContext.d.ts +1 -0
  243. package/dist/js/deprecated/components/DualListSelector/DualListSelectorContext.d.ts.map +1 -0
  244. package/dist/js/deprecated/components/DualListSelector/DualListSelectorContext.js.map +1 -0
  245. package/dist/js/deprecated/components/DualListSelector/DualListSelectorControl.d.ts.map +1 -0
  246. package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorControl.js +1 -1
  247. package/dist/js/deprecated/components/DualListSelector/DualListSelectorControl.js.map +1 -0
  248. package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorControlsWrapper.d.ts +1 -1
  249. package/dist/js/deprecated/components/DualListSelector/DualListSelectorControlsWrapper.d.ts.map +1 -0
  250. package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorControlsWrapper.js +0 -1
  251. package/dist/js/deprecated/components/DualListSelector/DualListSelectorControlsWrapper.js.map +1 -0
  252. package/dist/{esm/next → js/deprecated}/components/DualListSelector/DualListSelectorList.d.ts +1 -1
  253. package/dist/js/deprecated/components/DualListSelector/DualListSelectorList.d.ts.map +1 -0
  254. package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorList.js +7 -2
  255. package/dist/js/deprecated/components/DualListSelector/DualListSelectorList.js.map +1 -0
  256. package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorListItem.d.ts +4 -4
  257. package/dist/js/deprecated/components/DualListSelector/DualListSelectorListItem.d.ts.map +1 -0
  258. package/dist/js/deprecated/components/DualListSelector/DualListSelectorListItem.js.map +1 -0
  259. package/dist/{esm/next → js/deprecated}/components/DualListSelector/DualListSelectorListWrapper.d.ts +6 -4
  260. package/dist/js/deprecated/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +1 -0
  261. package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorListWrapper.js +4 -3
  262. package/dist/js/deprecated/components/DualListSelector/DualListSelectorListWrapper.js.map +1 -0
  263. package/dist/js/deprecated/components/DualListSelector/DualListSelectorPane.d.ts +52 -0
  264. package/dist/js/deprecated/components/DualListSelector/DualListSelectorPane.d.ts.map +1 -0
  265. package/dist/js/deprecated/components/DualListSelector/DualListSelectorPane.js +91 -0
  266. package/dist/js/deprecated/components/DualListSelector/DualListSelectorPane.js.map +1 -0
  267. package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorTree.d.ts +15 -15
  268. package/dist/js/deprecated/components/DualListSelector/DualListSelectorTree.d.ts.map +1 -0
  269. package/dist/js/deprecated/components/DualListSelector/DualListSelectorTree.js.map +1 -0
  270. package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorTreeItem.d.ts +7 -7
  271. package/dist/js/deprecated/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -0
  272. package/dist/js/deprecated/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -0
  273. package/dist/js/{next → deprecated}/components/DualListSelector/index.d.ts +1 -0
  274. package/dist/js/deprecated/components/DualListSelector/index.d.ts.map +1 -0
  275. package/dist/js/{next → deprecated}/components/DualListSelector/index.js +1 -0
  276. package/dist/js/deprecated/components/DualListSelector/index.js.map +1 -0
  277. package/dist/js/deprecated/components/DualListSelector/treeUtils.d.ts.map +1 -0
  278. package/dist/js/deprecated/components/DualListSelector/treeUtils.js.map +1 -0
  279. package/dist/js/deprecated/components/index.d.ts +1 -0
  280. package/dist/js/deprecated/components/index.d.ts.map +1 -1
  281. package/dist/js/deprecated/components/index.js +1 -0
  282. package/dist/js/deprecated/components/index.js.map +1 -1
  283. package/dist/js/next/components/index.d.ts +0 -1
  284. package/dist/js/next/components/index.d.ts.map +1 -1
  285. package/dist/js/next/components/index.js +0 -3
  286. package/dist/js/next/components/index.js.map +1 -1
  287. package/dist/js/next/index.d.ts +0 -1
  288. package/dist/js/next/index.d.ts.map +1 -1
  289. package/dist/js/next/index.js +0 -3
  290. package/dist/js/next/index.js.map +1 -1
  291. package/dist/umd/assets/{output-D0meVdH2.css → output-BcpwRLsL.css} +7486 -7486
  292. package/dist/umd/react-core.min.js +2 -2
  293. package/helpers/package.json +1 -1
  294. package/layouts/package.json +1 -1
  295. package/next/package.json +1 -1
  296. package/package.json +2 -2
  297. package/single-packages.config.json +1 -1
  298. package/src/components/DualListSelector/DualListSelector.tsx +7 -752
  299. package/src/components/DualListSelector/DualListSelectorContext.ts +0 -1
  300. package/src/components/DualListSelector/DualListSelectorControl.tsx +1 -1
  301. package/src/components/DualListSelector/DualListSelectorControlsWrapper.tsx +2 -1
  302. package/src/components/DualListSelector/DualListSelectorList.tsx +3 -20
  303. package/src/components/DualListSelector/DualListSelectorListItem.tsx +4 -4
  304. package/src/components/DualListSelector/DualListSelectorListWrapper.tsx +6 -10
  305. package/src/components/DualListSelector/DualListSelectorPane.tsx +41 -192
  306. package/src/components/DualListSelector/DualListSelectorTree.tsx +15 -15
  307. package/src/components/DualListSelector/DualListSelectorTreeItem.tsx +7 -7
  308. package/src/components/DualListSelector/__tests__/DualListSelector.test.tsx +6 -45
  309. package/src/components/DualListSelector/__tests__/__snapshots__/DualListSelector.test.tsx.snap +52 -1715
  310. package/src/components/DualListSelector/examples/DualListSelector.md +27 -42
  311. package/src/components/DualListSelector/examples/DualListSelectorBasic.tsx +146 -19
  312. package/src/components/DualListSelector/examples/DualListSelectorBasicSearch.tsx +202 -22
  313. package/src/components/DualListSelector/examples/DualListSelectorBasicTooltips.tsx +155 -28
  314. package/src/components/DualListSelector/examples/DualListSelectorComplexOptionsActions.tsx +298 -121
  315. package/src/components/DualListSelector/index.ts +0 -2
  316. package/src/deprecated/components/DualListSelector/DualListSelector.tsx +795 -0
  317. package/src/{next → deprecated}/components/DualListSelector/DualListSelectorContext.ts +1 -0
  318. package/src/{next → deprecated}/components/DualListSelector/DualListSelectorControl.tsx +1 -1
  319. package/src/{next → deprecated}/components/DualListSelector/DualListSelectorControlsWrapper.tsx +1 -2
  320. package/src/{next → deprecated}/components/DualListSelector/DualListSelectorList.tsx +20 -3
  321. package/src/{next → deprecated}/components/DualListSelector/DualListSelectorListItem.tsx +4 -4
  322. package/src/{next → deprecated}/components/DualListSelector/DualListSelectorListWrapper.tsx +10 -6
  323. package/src/deprecated/components/DualListSelector/DualListSelectorPane.tsx +245 -0
  324. package/src/{next → deprecated}/components/DualListSelector/DualListSelectorTree.tsx +15 -15
  325. package/src/{next → deprecated}/components/DualListSelector/DualListSelectorTreeItem.tsx +7 -7
  326. package/src/deprecated/components/DualListSelector/__tests__/DualListSelector.test.tsx +65 -0
  327. package/src/deprecated/components/DualListSelector/__tests__/__snapshots__/DualListSelector.test.tsx.snap +1785 -0
  328. package/src/{next → deprecated}/components/DualListSelector/examples/DualListSelector.md +56 -28
  329. package/src/deprecated/components/DualListSelector/examples/DualListSelectorBasic.tsx +30 -0
  330. package/src/deprecated/components/DualListSelector/examples/DualListSelectorBasicSearch.tsx +31 -0
  331. package/src/deprecated/components/DualListSelector/examples/DualListSelectorBasicTooltips.tsx +38 -0
  332. package/src/deprecated/components/DualListSelector/examples/DualListSelectorComplexOptionsActions.tsx +93 -0
  333. package/src/{components → deprecated/components}/DualListSelector/examples/DualListSelectorComposable.tsx +32 -30
  334. package/src/{components → deprecated/components}/DualListSelector/examples/DualListSelectorComposableDragDrop.tsx +35 -32
  335. package/src/{components → deprecated/components}/DualListSelector/examples/DualListSelectorComposableTree.tsx +29 -27
  336. package/src/{components → deprecated/components}/DualListSelector/examples/DualListSelectorTreeExample.tsx +9 -6
  337. package/src/{next → deprecated}/components/DualListSelector/index.ts +1 -0
  338. package/src/deprecated/components/index.ts +1 -0
  339. package/src/next/components/index.ts +0 -1
  340. package/src/next/index.ts +0 -1
  341. package/dist/dynamic/next/components/DualListSelector/package.json +0 -1
  342. package/dist/dynamic/next/components/package.json +0 -1
  343. package/dist/esm/next/components/DualListSelector/DualListSelector.d.ts +0 -23
  344. package/dist/esm/next/components/DualListSelector/DualListSelector.d.ts.map +0 -1
  345. package/dist/esm/next/components/DualListSelector/DualListSelector.js +0 -23
  346. package/dist/esm/next/components/DualListSelector/DualListSelector.js.map +0 -1
  347. package/dist/esm/next/components/DualListSelector/DualListSelectorContext.d.ts.map +0 -1
  348. package/dist/esm/next/components/DualListSelector/DualListSelectorContext.js.map +0 -1
  349. package/dist/esm/next/components/DualListSelector/DualListSelectorControl.d.ts.map +0 -1
  350. package/dist/esm/next/components/DualListSelector/DualListSelectorControl.js.map +0 -1
  351. package/dist/esm/next/components/DualListSelector/DualListSelectorControlsWrapper.d.ts.map +0 -1
  352. package/dist/esm/next/components/DualListSelector/DualListSelectorControlsWrapper.js.map +0 -1
  353. package/dist/esm/next/components/DualListSelector/DualListSelectorList.d.ts.map +0 -1
  354. package/dist/esm/next/components/DualListSelector/DualListSelectorList.js.map +0 -1
  355. package/dist/esm/next/components/DualListSelector/DualListSelectorListItem.d.ts.map +0 -1
  356. package/dist/esm/next/components/DualListSelector/DualListSelectorListItem.js.map +0 -1
  357. package/dist/esm/next/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +0 -1
  358. package/dist/esm/next/components/DualListSelector/DualListSelectorListWrapper.js.map +0 -1
  359. package/dist/esm/next/components/DualListSelector/DualListSelectorPane.d.ts +0 -31
  360. package/dist/esm/next/components/DualListSelector/DualListSelectorPane.d.ts.map +0 -1
  361. package/dist/esm/next/components/DualListSelector/DualListSelectorPane.js +0 -27
  362. package/dist/esm/next/components/DualListSelector/DualListSelectorPane.js.map +0 -1
  363. package/dist/esm/next/components/DualListSelector/DualListSelectorTree.d.ts.map +0 -1
  364. package/dist/esm/next/components/DualListSelector/DualListSelectorTree.js.map +0 -1
  365. package/dist/esm/next/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +0 -1
  366. package/dist/esm/next/components/DualListSelector/DualListSelectorTreeItem.js.map +0 -1
  367. package/dist/esm/next/components/DualListSelector/index.d.ts.map +0 -1
  368. package/dist/esm/next/components/DualListSelector/index.js.map +0 -1
  369. package/dist/esm/next/components/DualListSelector/treeUtils.d.ts.map +0 -1
  370. package/dist/esm/next/components/DualListSelector/treeUtils.js.map +0 -1
  371. package/dist/js/next/components/DualListSelector/DualListSelector.d.ts +0 -23
  372. package/dist/js/next/components/DualListSelector/DualListSelector.d.ts.map +0 -1
  373. package/dist/js/next/components/DualListSelector/DualListSelector.js +0 -26
  374. package/dist/js/next/components/DualListSelector/DualListSelector.js.map +0 -1
  375. package/dist/js/next/components/DualListSelector/DualListSelectorContext.d.ts.map +0 -1
  376. package/dist/js/next/components/DualListSelector/DualListSelectorContext.js.map +0 -1
  377. package/dist/js/next/components/DualListSelector/DualListSelectorControl.d.ts.map +0 -1
  378. package/dist/js/next/components/DualListSelector/DualListSelectorControl.js.map +0 -1
  379. package/dist/js/next/components/DualListSelector/DualListSelectorControlsWrapper.d.ts.map +0 -1
  380. package/dist/js/next/components/DualListSelector/DualListSelectorControlsWrapper.js.map +0 -1
  381. package/dist/js/next/components/DualListSelector/DualListSelectorList.d.ts.map +0 -1
  382. package/dist/js/next/components/DualListSelector/DualListSelectorList.js.map +0 -1
  383. package/dist/js/next/components/DualListSelector/DualListSelectorListItem.d.ts.map +0 -1
  384. package/dist/js/next/components/DualListSelector/DualListSelectorListItem.js.map +0 -1
  385. package/dist/js/next/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +0 -1
  386. package/dist/js/next/components/DualListSelector/DualListSelectorListWrapper.js.map +0 -1
  387. package/dist/js/next/components/DualListSelector/DualListSelectorPane.d.ts +0 -31
  388. package/dist/js/next/components/DualListSelector/DualListSelectorPane.d.ts.map +0 -1
  389. package/dist/js/next/components/DualListSelector/DualListSelectorPane.js +0 -31
  390. package/dist/js/next/components/DualListSelector/DualListSelectorPane.js.map +0 -1
  391. package/dist/js/next/components/DualListSelector/DualListSelectorTree.d.ts.map +0 -1
  392. package/dist/js/next/components/DualListSelector/DualListSelectorTree.js.map +0 -1
  393. package/dist/js/next/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +0 -1
  394. package/dist/js/next/components/DualListSelector/DualListSelectorTreeItem.js.map +0 -1
  395. package/dist/js/next/components/DualListSelector/index.d.ts.map +0 -1
  396. package/dist/js/next/components/DualListSelector/index.js.map +0 -1
  397. package/dist/js/next/components/DualListSelector/treeUtils.d.ts.map +0 -1
  398. package/dist/js/next/components/DualListSelector/treeUtils.js.map +0 -1
  399. package/src/next/components/DualListSelector/DualListSelector.tsx +0 -50
  400. package/src/next/components/DualListSelector/DualListSelectorPane.tsx +0 -94
  401. package/src/next/components/DualListSelector/__tests__/DualListSelector.test.tsx +0 -26
  402. package/src/next/components/DualListSelector/__tests__/__snapshots__/DualListSelector.test.tsx.snap +0 -122
  403. package/src/next/components/DualListSelector/examples/DualListSelectorBasic.tsx +0 -157
  404. package/src/next/components/DualListSelector/examples/DualListSelectorBasicSearch.tsx +0 -211
  405. package/src/next/components/DualListSelector/examples/DualListSelectorBasicTooltips.tsx +0 -165
  406. package/src/next/components/DualListSelector/examples/DualListSelectorComplexOptionsActions.tsx +0 -344
  407. /package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorContext.js +0 -0
  408. /package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorControl.d.ts +0 -0
  409. /package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorListItem.js +0 -0
  410. /package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorTree.js +0 -0
  411. /package/dist/esm/{next → deprecated}/components/DualListSelector/DualListSelectorTreeItem.js +0 -0
  412. /package/dist/esm/{next → deprecated}/components/DualListSelector/treeUtils.d.ts +0 -0
  413. /package/dist/esm/{next → deprecated}/components/DualListSelector/treeUtils.js +0 -0
  414. /package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorContext.js +0 -0
  415. /package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorControl.d.ts +0 -0
  416. /package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorListItem.js +0 -0
  417. /package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorTree.js +0 -0
  418. /package/dist/js/{next → deprecated}/components/DualListSelector/DualListSelectorTreeItem.js +0 -0
  419. /package/dist/js/{next → deprecated}/components/DualListSelector/treeUtils.d.ts +0 -0
  420. /package/dist/js/{next → deprecated}/components/DualListSelector/treeUtils.js +0 -0
  421. /package/src/{next/components → components}/DualListSelector/examples/DualListSelectorDragDrop.tsx +0 -0
  422. /package/src/{next/components → components}/DualListSelector/examples/DualListSelectorTree.tsx +0 -0
  423. /package/src/{next → deprecated}/components/DualListSelector/treeUtils.ts +0 -0
@@ -1,130 +1,22 @@
1
1
  import * as React from 'react';
2
2
  import { PickOptional } from '../../helpers';
3
- import { DualListSelectorTreeItemData } from './DualListSelectorTree';
4
3
  /** Acts as a container for all other DualListSelector sub-components when using a
5
4
  * composable dual list selector.
6
5
  */
7
6
  export interface DualListSelectorProps {
8
7
  /** Additional classes applied to the dual list selector. */
9
8
  className?: string;
10
- /** Id of the dual list selector. */
9
+ /** ID of the dual list selector. */
11
10
  id?: string;
12
- /** Flag indicating if the dual list selector uses trees instead of simple lists */
11
+ /** Flag indicating if the dual list selector uses trees instead of simple lists. */
13
12
  isTree?: boolean;
14
- /** Flag indicating if the dual list selector is in a disabled state */
15
- isDisabled?: boolean;
16
- /** Content to be rendered in the dual list selector. Panes & controls will not be built dynamically when children are provided. */
13
+ /** Content to be rendered in the dual list selector. */
17
14
  children?: React.ReactNode;
18
- /** Title applied to the dynamically built available options pane. */
19
- availableOptionsTitle?: string;
20
- /** Options to display in the dynamically built available options pane. When using trees, the options should be in the DualListSelectorTreeItemData[] format. */
21
- availableOptions?: React.ReactNode[] | DualListSelectorTreeItemData[];
22
- /** Status message to display above the dynamically built available options pane. */
23
- availableOptionsStatus?: string;
24
- /** Actions to be displayed above the dynamically built available options pane. */
25
- availableOptionsActions?: React.ReactNode[];
26
- /** Title applied to the dynamically built chosen options pane. */
27
- chosenOptionsTitle?: string;
28
- /** Options to display in the dynamically built chosen options pane. When using trees, the options should be in the DualListSelectorTreeItemData[] format. */
29
- chosenOptions?: React.ReactNode[] | DualListSelectorTreeItemData[];
30
- /** Status message to display above the dynamically built chosen options pane.*/
31
- chosenOptionsStatus?: string;
32
- /** Actions to be displayed above the dynamically built chosen options pane. */
33
- chosenOptionsActions?: React.ReactNode[];
34
- /** Accessible label for the dynamically built controls between the two panes. */
35
- controlsAriaLabel?: string;
36
- /** Optional callback for the dynamically built add selected button */
37
- addSelected?: (newAvailableOptions: React.ReactNode[], newChosenOptions: React.ReactNode[]) => void;
38
- /** Accessible label for the dynamically built add selected button */
39
- addSelectedAriaLabel?: string;
40
- /** Tooltip content for the dynamically built add selected button */
41
- addSelectedTooltip?: React.ReactNode;
42
- /** Additonal tooltip properties for the dynamically built add selected tooltip */
43
- addSelectedTooltipProps?: any;
44
- /** Callback fired every time dynamically built options are chosen or removed */
45
- onListChange?: (event: React.MouseEvent<HTMLElement>, newAvailableOptions: React.ReactNode[], newChosenOptions: React.ReactNode[]) => void;
46
- /** Optional callback for the dynamically built add all button */
47
- addAll?: (newAvailableOptions: React.ReactNode[], newChosenOptions: React.ReactNode[]) => void;
48
- /** Accessible label for the dynamically built add all button */
49
- addAllAriaLabel?: string;
50
- /** Tooltip content for the dynamically built add all button */
51
- addAllTooltip?: React.ReactNode;
52
- /** Additonal tooltip properties for the dynamically built add all tooltip */
53
- addAllTooltipProps?: any;
54
- /** Optional callback for the dynamically built remove selected button */
55
- removeSelected?: (newAvailableOptions: React.ReactNode[], newChosenOptions: React.ReactNode[]) => void;
56
- /** Accessible label for the dynamically built remove selected button */
57
- removeSelectedAriaLabel?: string;
58
- /** Tooltip content for the dynamically built remove selected button */
59
- removeSelectedTooltip?: React.ReactNode;
60
- /** Additonal tooltip properties for the dynamically built remove selected tooltip */
61
- removeSelectedTooltipProps?: any;
62
- /** Optional callback for the dynamically built remove all button */
63
- removeAll?: (newAvailableOptions: React.ReactNode[], newChosenOptions: React.ReactNode[]) => void;
64
- /** Accessible label for the dynamically built remove all button */
65
- removeAllAriaLabel?: string;
66
- /** Tooltip content for the dynamically built remove all button */
67
- removeAllTooltip?: React.ReactNode;
68
- /** Additonal tooltip properties for the dynamically built remove all tooltip */
69
- removeAllTooltipProps?: any;
70
- /** Optional callback fired when a dynamically built option is selected */
71
- onOptionSelect?: (event: React.MouseEvent | React.ChangeEvent | React.KeyboardEvent, index: number, isChosen: boolean, id: string, itemData: any, parentData: any) => void;
72
- /** Optional callback fired when a dynamically built option is checked */
73
- onOptionCheck?: (event: React.MouseEvent | React.ChangeEvent<HTMLInputElement> | React.KeyboardEvent, checked: boolean, checkedId: string, newCheckedItems: string[]) => void;
74
- /** Flag indicating a search bar should be included above both the dynamically built available and chosen panes. */
75
- isSearchable?: boolean;
76
- /** Accessible label for the search input on the dynamically built available options pane. */
77
- availableOptionsSearchAriaLabel?: string;
78
- /** A callback for when the search input value for the dynamically built available options changes. */
79
- onAvailableOptionsSearchInputChanged?: (event: React.FormEvent<HTMLInputElement>, value: string) => void;
80
- /** Accessible label for the search input on the dynamically built chosen options pane. */
81
- chosenOptionsSearchAriaLabel?: string;
82
- /** A callback for when the search input value for the dynamically built chosen options changes. */
83
- onChosenOptionsSearchInputChanged?: (event: React.FormEvent<HTMLInputElement>, value: string) => void;
84
- /** Optional filter function for custom filtering based on search string. Used with a dynamically built search input. */
85
- filterOption?: (option: React.ReactNode, input: string) => boolean;
86
15
  }
87
- interface DualListSelectorState {
88
- availableOptions: React.ReactNode[];
89
- availableOptionsSelected: number[];
90
- availableFilteredOptions: React.ReactNode[];
91
- chosenOptions: React.ReactNode[];
92
- chosenOptionsSelected: number[];
93
- chosenFilteredOptions: React.ReactNode[];
94
- availableTreeFilteredOptions: string[];
95
- availableTreeOptionsChecked: string[];
96
- chosenTreeOptionsChecked: string[];
97
- chosenTreeFilteredOptions: string[];
98
- }
99
- declare class DualListSelector extends React.Component<DualListSelectorProps, DualListSelectorState> {
16
+ declare class DualListSelector extends React.Component<DualListSelectorProps> {
100
17
  static displayName: string;
101
- private addAllButtonRef;
102
- private addSelectedButtonRef;
103
- private removeSelectedButtonRef;
104
- private removeAllButtonRef;
105
18
  static defaultProps: PickOptional<DualListSelectorProps>;
106
- private createMergedCopy;
107
19
  constructor(props: DualListSelectorProps);
108
- /** In dev environment, prevents circular structure during JSON stringification when
109
- * options passed in to the dual list selector include HTML elements.
110
- */
111
- replacer: (key: string, value: any) => any;
112
- componentDidUpdate(): void;
113
- onFilterUpdate: (newFilteredOptions: React.ReactNode[], paneType: string, isSearchReset: boolean) => void;
114
- addAllVisible: (event: React.MouseEvent<HTMLElement>) => void;
115
- addAllTreeVisible: (event: React.MouseEvent<HTMLElement>) => void;
116
- addSelected: (event: React.MouseEvent<HTMLElement>) => void;
117
- addTreeSelected: (event: React.MouseEvent<HTMLElement>) => void;
118
- removeAllVisible: (event: React.MouseEvent<HTMLElement>) => void;
119
- removeAllTreeVisible: (event: React.MouseEvent<HTMLElement>) => void;
120
- removeSelected: (event: React.MouseEvent<HTMLElement>) => void;
121
- removeTreeSelected: (event: React.MouseEvent<HTMLElement>) => void;
122
- onOptionSelect: (e: React.MouseEvent | React.ChangeEvent | React.KeyboardEvent, index: number, isChosen: boolean, id?: string, itemData?: any, parentData?: any) => void;
123
- isChecked: (treeItem: DualListSelectorTreeItemData, isChosen: boolean) => boolean;
124
- areAllDescendantsChecked: (treeItem: DualListSelectorTreeItemData, isChosen: boolean) => boolean;
125
- areSomeDescendantsChecked: (treeItem: DualListSelectorTreeItemData, isChosen: boolean) => boolean;
126
- mapChecked: (item: DualListSelectorTreeItemData, isChosen: boolean) => DualListSelectorTreeItemData;
127
- onTreeOptionCheck: (evt: React.MouseEvent | React.ChangeEvent<HTMLInputElement> | React.KeyboardEvent, isChecked: boolean, itemData: DualListSelectorTreeItemData, isChosen: boolean) => void;
128
20
  render(): React.JSX.Element;
129
21
  }
130
22
  export { DualListSelector };
@@ -1 +1 @@
1
- {"version":3,"file":"DualListSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/DualListSelector/DualListSelector.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DualListSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/DualListSelector/DualListSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAc,YAAY,EAAE,MAAM,eAAe,CAAC;AAGzD;;GAEG;AAEH,MAAM,WAAW,qBAAqB;IACpC,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,oFAAoF;IACpF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,cAAM,gBAAiB,SAAQ,KAAK,CAAC,SAAS,CAAC,qBAAqB,CAAC;IACnE,MAAM,CAAC,WAAW,SAAsB;IACxC,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,qBAAqB,CAAC,CAGtD;gBAEU,KAAK,EAAE,qBAAqB;IAIxC,MAAM;CAeP;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -5,452 +5,22 @@ const tslib_1 = require("tslib");
5
5
  const React = tslib_1.__importStar(require("react"));
6
6
  const dual_list_selector_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/components/DualListSelector/dual-list-selector"));
7
7
  const react_styles_1 = require("@patternfly/react-styles");
8
- const angle_double_left_icon_1 = tslib_1.__importDefault(require('@patternfly/react-icons/dist/js/icons/angle-double-left-icon'));
9
- const angle_left_icon_1 = tslib_1.__importDefault(require('@patternfly/react-icons/dist/js/icons/angle-left-icon'));
10
- const angle_double_right_icon_1 = tslib_1.__importDefault(require('@patternfly/react-icons/dist/js/icons/angle-double-right-icon'));
11
- const angle_right_icon_1 = tslib_1.__importDefault(require('@patternfly/react-icons/dist/js/icons/angle-right-icon'));
12
- const DualListSelectorPane_1 = require("./DualListSelectorPane");
13
8
  const helpers_1 = require("../../helpers");
14
- const treeUtils_1 = require("./treeUtils");
15
- const DualListSelectorControlsWrapper_1 = require("./DualListSelectorControlsWrapper");
16
- const DualListSelectorControl_1 = require("./DualListSelectorControl");
17
9
  const DualListSelectorContext_1 = require("./DualListSelectorContext");
18
10
  class DualListSelector extends React.Component {
19
- // If the DualListSelector uses trees, concat the two initial arrays and merge duplicate folder IDs
20
- createMergedCopy() {
21
- const copyOfAvailable = JSON.parse(JSON.stringify(this.props.availableOptions));
22
- const copyOfChosen = JSON.parse(JSON.stringify(this.props.chosenOptions));
23
- return this.props.isTree
24
- ? Object.values(copyOfAvailable
25
- .concat(copyOfChosen)
26
- .reduce((mapObj, item) => {
27
- const key = item.id;
28
- if (mapObj[key]) {
29
- // If map already has an item ID, add the dupe ID's children to the existing map
30
- mapObj[key].children.push(...item.children);
31
- }
32
- else {
33
- // Else clone the item data
34
- mapObj[key] = Object.assign({}, item);
35
- }
36
- return mapObj;
37
- }, {}))
38
- : null;
39
- }
40
11
  constructor(props) {
41
12
  super(props);
42
- this.addAllButtonRef = React.createRef();
43
- this.addSelectedButtonRef = React.createRef();
44
- this.removeSelectedButtonRef = React.createRef();
45
- this.removeAllButtonRef = React.createRef();
46
- /** In dev environment, prevents circular structure during JSON stringification when
47
- * options passed in to the dual list selector include HTML elements.
48
- */
49
- this.replacer = (key, value) => {
50
- if (key[0] === '_') {
51
- return undefined;
52
- }
53
- return value;
54
- };
55
- this.onFilterUpdate = (newFilteredOptions, paneType, isSearchReset) => {
56
- const { isTree } = this.props;
57
- if (paneType === 'available') {
58
- if (isSearchReset) {
59
- this.setState({
60
- availableFilteredOptions: null,
61
- availableTreeFilteredOptions: null
62
- });
63
- return;
64
- }
65
- if (isTree) {
66
- this.setState({
67
- availableTreeFilteredOptions: (0, treeUtils_1.flattenTreeWithFolders)(newFilteredOptions)
68
- });
69
- }
70
- else {
71
- this.setState({
72
- availableFilteredOptions: newFilteredOptions
73
- });
74
- }
75
- }
76
- else if (paneType === 'chosen') {
77
- if (isSearchReset) {
78
- this.setState({
79
- chosenFilteredOptions: null,
80
- chosenTreeFilteredOptions: null
81
- });
82
- return;
83
- }
84
- if (isTree) {
85
- this.setState({
86
- chosenTreeFilteredOptions: (0, treeUtils_1.flattenTreeWithFolders)(newFilteredOptions)
87
- });
88
- }
89
- else {
90
- this.setState({
91
- chosenFilteredOptions: newFilteredOptions
92
- });
93
- }
94
- }
95
- };
96
- this.addAllVisible = (event) => {
97
- this.setState((prevState) => {
98
- const itemsToRemove = [];
99
- const newAvailable = [];
100
- const movedOptions = prevState.availableFilteredOptions || prevState.availableOptions;
101
- prevState.availableOptions.forEach((value) => {
102
- if (movedOptions.indexOf(value) !== -1) {
103
- itemsToRemove.push(value);
104
- }
105
- else {
106
- newAvailable.push(value);
107
- }
108
- });
109
- const newChosen = [...prevState.chosenOptions, ...itemsToRemove];
110
- this.props.addAll && this.props.addAll(newAvailable, newChosen);
111
- this.props.onListChange && this.props.onListChange(event, newAvailable, newChosen);
112
- return {
113
- chosenOptions: newChosen,
114
- chosenFilteredOptions: newChosen,
115
- availableOptions: newAvailable,
116
- availableFilteredOptions: newAvailable,
117
- chosenOptionsSelected: [],
118
- availableOptionsSelected: []
119
- };
120
- });
121
- };
122
- this.addAllTreeVisible = (event) => {
123
- this.setState((prevState) => {
124
- const movedOptions = prevState.availableTreeFilteredOptions ||
125
- (0, treeUtils_1.flattenTreeWithFolders)(prevState.availableOptions);
126
- const newAvailable = prevState.availableOptions
127
- .map((opt) => Object.assign({}, opt))
128
- .filter((item) => (0, treeUtils_1.filterRestTreeItems)(item, movedOptions));
129
- const currChosen = (0, treeUtils_1.flattenTree)(prevState.chosenOptions);
130
- const nextChosenOptions = currChosen.concat(movedOptions);
131
- const newChosen = this.createMergedCopy()
132
- .map((opt) => Object.assign({}, opt))
133
- .filter((item) => (0, treeUtils_1.filterTreeItemsWithoutFolders)(item, nextChosenOptions));
134
- this.props.addAll && this.props.addAll(newAvailable, newChosen);
135
- this.props.onListChange && this.props.onListChange(event, newAvailable, newChosen);
136
- return {
137
- chosenOptions: newChosen,
138
- chosenFilteredOptions: newChosen,
139
- availableOptions: newAvailable,
140
- availableFilteredOptions: newAvailable,
141
- availableTreeOptionsChecked: [],
142
- chosenTreeOptionsChecked: []
143
- };
144
- });
145
- };
146
- this.addSelected = (event) => {
147
- this.setState((prevState) => {
148
- const itemsToRemove = [];
149
- const newAvailable = [];
150
- prevState.availableOptions.forEach((value, index) => {
151
- if (prevState.availableOptionsSelected.indexOf(index) !== -1) {
152
- itemsToRemove.push(value);
153
- }
154
- else {
155
- newAvailable.push(value);
156
- }
157
- });
158
- const newChosen = [...prevState.chosenOptions, ...itemsToRemove];
159
- this.props.addSelected && this.props.addSelected(newAvailable, newChosen);
160
- this.props.onListChange && this.props.onListChange(event, newAvailable, newChosen);
161
- return {
162
- chosenOptionsSelected: [],
163
- availableOptionsSelected: [],
164
- chosenOptions: newChosen,
165
- chosenFilteredOptions: newChosen,
166
- availableOptions: newAvailable,
167
- availableFilteredOptions: newAvailable
168
- };
169
- });
170
- };
171
- this.addTreeSelected = (event) => {
172
- this.setState((prevState) => {
173
- // Remove selected available nodes from current available nodes
174
- const newAvailable = prevState.availableOptions
175
- .map((opt) => Object.assign({}, opt))
176
- .filter((item) => (0, treeUtils_1.filterRestTreeItems)(item, prevState.availableTreeOptionsChecked));
177
- // Get next chosen options from current + new nodes and remap from base
178
- const currChosen = (0, treeUtils_1.flattenTree)(prevState.chosenOptions);
179
- const nextChosenOptions = currChosen.concat(prevState.availableTreeOptionsChecked);
180
- const newChosen = this.createMergedCopy()
181
- .map((opt) => Object.assign({}, opt))
182
- .filter((item) => (0, treeUtils_1.filterTreeItemsWithoutFolders)(item, nextChosenOptions));
183
- this.props.addSelected && this.props.addSelected(newAvailable, newChosen);
184
- this.props.onListChange && this.props.onListChange(event, newAvailable, newChosen);
185
- return {
186
- availableTreeOptionsChecked: [],
187
- chosenTreeOptionsChecked: [],
188
- availableOptions: newAvailable,
189
- chosenOptions: newChosen
190
- };
191
- });
192
- };
193
- this.removeAllVisible = (event) => {
194
- this.setState((prevState) => {
195
- const itemsToRemove = [];
196
- const newChosen = [];
197
- const movedOptions = prevState.chosenFilteredOptions || prevState.chosenOptions;
198
- prevState.chosenOptions.forEach((value) => {
199
- if (movedOptions.indexOf(value) !== -1) {
200
- itemsToRemove.push(value);
201
- }
202
- else {
203
- newChosen.push(value);
204
- }
205
- });
206
- const newAvailable = [...prevState.availableOptions, ...itemsToRemove];
207
- this.props.removeAll && this.props.removeAll(newAvailable, newChosen);
208
- this.props.onListChange && this.props.onListChange(event, newAvailable, newChosen);
209
- return {
210
- chosenOptions: newChosen,
211
- chosenFilteredOptions: newChosen,
212
- availableOptions: newAvailable,
213
- availableFilteredOptions: newAvailable,
214
- chosenOptionsSelected: [],
215
- availableOptionsSelected: []
216
- };
217
- });
218
- };
219
- this.removeAllTreeVisible = (event) => {
220
- this.setState((prevState) => {
221
- const movedOptions = prevState.chosenTreeFilteredOptions ||
222
- (0, treeUtils_1.flattenTreeWithFolders)(prevState.chosenOptions);
223
- const newChosen = prevState.chosenOptions
224
- .map((opt) => Object.assign({}, opt))
225
- .filter((item) => (0, treeUtils_1.filterRestTreeItems)(item, movedOptions));
226
- const currAvailable = (0, treeUtils_1.flattenTree)(prevState.availableOptions);
227
- const nextAvailableOptions = currAvailable.concat(movedOptions);
228
- const newAvailable = this.createMergedCopy()
229
- .map((opt) => Object.assign({}, opt))
230
- .filter((item) => (0, treeUtils_1.filterTreeItemsWithoutFolders)(item, nextAvailableOptions));
231
- this.props.removeAll && this.props.removeAll(newAvailable, newChosen);
232
- this.props.onListChange && this.props.onListChange(event, newAvailable, newChosen);
233
- return {
234
- chosenOptions: newChosen,
235
- availableOptions: newAvailable,
236
- availableTreeOptionsChecked: [],
237
- chosenTreeOptionsChecked: []
238
- };
239
- });
240
- };
241
- this.removeSelected = (event) => {
242
- this.setState((prevState) => {
243
- const itemsToRemove = [];
244
- const newChosen = [];
245
- prevState.chosenOptions.forEach((value, index) => {
246
- if (prevState.chosenOptionsSelected.indexOf(index) !== -1) {
247
- itemsToRemove.push(value);
248
- }
249
- else {
250
- newChosen.push(value);
251
- }
252
- });
253
- const newAvailable = [...prevState.availableOptions, ...itemsToRemove];
254
- this.props.removeSelected && this.props.removeSelected(newAvailable, newChosen);
255
- this.props.onListChange && this.props.onListChange(event, newAvailable, newChosen);
256
- return {
257
- chosenOptionsSelected: [],
258
- availableOptionsSelected: [],
259
- chosenOptions: newChosen,
260
- chosenFilteredOptions: newChosen,
261
- availableOptions: newAvailable,
262
- availableFilteredOptions: newAvailable
263
- };
264
- });
265
- };
266
- this.removeTreeSelected = (event) => {
267
- this.setState((prevState) => {
268
- // Remove selected chosen nodes from current chosen nodes
269
- const newChosen = prevState.chosenOptions
270
- .map((opt) => Object.assign({}, opt))
271
- .filter((item) => (0, treeUtils_1.filterRestTreeItems)(item, prevState.chosenTreeOptionsChecked));
272
- // Get next chosen options from current and remap from base
273
- const currAvailable = (0, treeUtils_1.flattenTree)(prevState.availableOptions);
274
- const nextAvailableOptions = currAvailable.concat(prevState.chosenTreeOptionsChecked);
275
- const newAvailable = this.createMergedCopy()
276
- .map((opt) => Object.assign({}, opt))
277
- .filter((item) => (0, treeUtils_1.filterTreeItemsWithoutFolders)(item, nextAvailableOptions));
278
- this.props.removeSelected && this.props.removeSelected(newAvailable, newChosen);
279
- this.props.onListChange && this.props.onListChange(event, newAvailable, newChosen);
280
- return {
281
- availableTreeOptionsChecked: [],
282
- chosenTreeOptionsChecked: [],
283
- availableOptions: newAvailable,
284
- chosenOptions: newChosen
285
- };
286
- });
287
- };
288
- this.onOptionSelect = (e, index, isChosen,
289
- /* eslint-disable @typescript-eslint/no-unused-vars */
290
- id, itemData, parentData
291
- /* eslint-enable @typescript-eslint/no-unused-vars */
292
- ) => {
293
- this.setState((prevState) => {
294
- const originalArray = isChosen ? prevState.chosenOptionsSelected : prevState.availableOptionsSelected;
295
- let updatedArray = null;
296
- if (originalArray.indexOf(index) !== -1) {
297
- updatedArray = originalArray.filter((value) => value !== index);
298
- }
299
- else {
300
- updatedArray = [...originalArray, index];
301
- }
302
- return {
303
- chosenOptionsSelected: isChosen ? updatedArray : prevState.chosenOptionsSelected,
304
- availableOptionsSelected: isChosen ? prevState.availableOptionsSelected : updatedArray
305
- };
306
- });
307
- this.props.onOptionSelect && this.props.onOptionSelect(e, index, isChosen, id, itemData, parentData);
308
- };
309
- this.isChecked = (treeItem, isChosen) => isChosen
310
- ? this.state.chosenTreeOptionsChecked.includes(treeItem.id)
311
- : this.state.availableTreeOptionsChecked.includes(treeItem.id);
312
- this.areAllDescendantsChecked = (treeItem, isChosen) => treeItem.children
313
- ? treeItem.children.every((child) => this.areAllDescendantsChecked(child, isChosen))
314
- : this.isChecked(treeItem, isChosen);
315
- this.areSomeDescendantsChecked = (treeItem, isChosen) => treeItem.children
316
- ? treeItem.children.some((child) => this.areSomeDescendantsChecked(child, isChosen))
317
- : this.isChecked(treeItem, isChosen);
318
- this.mapChecked = (item, isChosen) => {
319
- const hasCheck = this.areAllDescendantsChecked(item, isChosen);
320
- item.isChecked = false;
321
- if (hasCheck) {
322
- item.isChecked = true;
323
- }
324
- else {
325
- const hasPartialCheck = this.areSomeDescendantsChecked(item, isChosen);
326
- if (hasPartialCheck) {
327
- item.isChecked = null;
328
- }
329
- }
330
- if (item.children) {
331
- return Object.assign(Object.assign({}, item), { children: item.children.map((child) => this.mapChecked(child, isChosen)) });
332
- }
333
- return item;
334
- };
335
- this.onTreeOptionCheck = (evt, isChecked, itemData, isChosen) => {
336
- const { availableOptions, availableTreeFilteredOptions, chosenOptions, chosenTreeFilteredOptions } = this.state;
337
- let panelOptions;
338
- if (isChosen) {
339
- if (chosenTreeFilteredOptions) {
340
- panelOptions = chosenOptions
341
- .map((opt) => Object.assign({}, opt))
342
- .filter((item) => (0, treeUtils_1.filterTreeItemsWithoutFolders)(item, chosenTreeFilteredOptions));
343
- }
344
- else {
345
- panelOptions = chosenOptions;
346
- }
347
- }
348
- else {
349
- if (availableTreeFilteredOptions) {
350
- panelOptions = availableOptions
351
- .map((opt) => Object.assign({}, opt))
352
- .filter((item) => (0, treeUtils_1.filterTreeItemsWithoutFolders)(item, availableTreeFilteredOptions));
353
- }
354
- else {
355
- panelOptions = availableOptions;
356
- }
357
- }
358
- const checkedOptionTree = panelOptions
359
- .map((opt) => Object.assign({}, opt))
360
- .filter((item) => (0, treeUtils_1.filterTreeItems)(item, [itemData.id]));
361
- const flatTree = (0, treeUtils_1.flattenTreeWithFolders)(checkedOptionTree);
362
- const prevChecked = isChosen ? this.state.chosenTreeOptionsChecked : this.state.availableTreeOptionsChecked;
363
- let updatedChecked = [];
364
- if (isChecked) {
365
- updatedChecked = prevChecked.concat(flatTree.filter((id) => !prevChecked.includes(id)));
366
- }
367
- else {
368
- updatedChecked = prevChecked.filter((id) => !flatTree.includes(id));
369
- }
370
- this.setState((prevState) => ({
371
- availableTreeOptionsChecked: isChosen ? prevState.availableTreeOptionsChecked : updatedChecked,
372
- chosenTreeOptionsChecked: isChosen ? updatedChecked : prevState.chosenTreeOptionsChecked
373
- }), () => {
374
- this.props.onOptionCheck && this.props.onOptionCheck(evt, isChecked, itemData.id, updatedChecked);
375
- });
376
- };
377
- this.state = {
378
- availableOptions: [...this.props.availableOptions],
379
- availableOptionsSelected: [],
380
- availableFilteredOptions: null,
381
- availableTreeFilteredOptions: null,
382
- chosenOptions: [...this.props.chosenOptions],
383
- chosenOptionsSelected: [],
384
- chosenFilteredOptions: null,
385
- chosenTreeFilteredOptions: null,
386
- availableTreeOptionsChecked: [],
387
- chosenTreeOptionsChecked: []
388
- };
389
- }
390
- componentDidUpdate() {
391
- if (JSON.stringify(this.props.availableOptions, this.replacer) !==
392
- JSON.stringify(this.state.availableOptions, this.replacer) ||
393
- JSON.stringify(this.props.chosenOptions, this.replacer) !==
394
- JSON.stringify(this.state.chosenOptions, this.replacer)) {
395
- this.setState({
396
- availableOptions: [...this.props.availableOptions],
397
- chosenOptions: [...this.props.chosenOptions]
398
- });
399
- }
400
13
  }
401
14
  render() {
402
- const _a = this.props, { availableOptionsTitle, availableOptionsActions, availableOptionsSearchAriaLabel, className, children, chosenOptionsTitle, chosenOptionsActions, chosenOptionsSearchAriaLabel, filterOption, isSearchable, chosenOptionsStatus, availableOptionsStatus, controlsAriaLabel, addAllAriaLabel, addSelectedAriaLabel, removeSelectedAriaLabel, removeAllAriaLabel,
403
- /* eslint-disable @typescript-eslint/no-unused-vars */
404
- availableOptions: consumerPassedAvailableOptions, chosenOptions: consumerPassedChosenOptions, removeSelected, addAll, removeAll, addSelected, onListChange, onAvailableOptionsSearchInputChanged, onChosenOptionsSearchInputChanged, onOptionSelect, onOptionCheck, id, isTree, isDisabled, addAllTooltip, addAllTooltipProps, addSelectedTooltip, addSelectedTooltipProps, removeAllTooltip, removeAllTooltipProps, removeSelectedTooltip, removeSelectedTooltipProps } = _a, props = tslib_1.__rest(_a, ["availableOptionsTitle", "availableOptionsActions", "availableOptionsSearchAriaLabel", "className", "children", "chosenOptionsTitle", "chosenOptionsActions", "chosenOptionsSearchAriaLabel", "filterOption", "isSearchable", "chosenOptionsStatus", "availableOptionsStatus", "controlsAriaLabel", "addAllAriaLabel", "addSelectedAriaLabel", "removeSelectedAriaLabel", "removeAllAriaLabel", "availableOptions", "chosenOptions", "removeSelected", "addAll", "removeAll", "addSelected", "onListChange", "onAvailableOptionsSearchInputChanged", "onChosenOptionsSearchInputChanged", "onOptionSelect", "onOptionCheck", "id", "isTree", "isDisabled", "addAllTooltip", "addAllTooltipProps", "addSelectedTooltip", "addSelectedTooltipProps", "removeAllTooltip", "removeAllTooltipProps", "removeSelectedTooltip", "removeSelectedTooltipProps"]);
405
- const { availableOptions, chosenOptions, chosenOptionsSelected, availableOptionsSelected, chosenTreeOptionsChecked, availableTreeOptionsChecked } = this.state;
406
- const availableOptionsStatusToDisplay = availableOptionsStatus ||
407
- (isTree
408
- ? `${(0, treeUtils_1.filterFolders)(availableOptions, availableTreeOptionsChecked)
409
- .length} of ${(0, treeUtils_1.flattenTree)(availableOptions).length} items selected`
410
- : `${availableOptionsSelected.length} of ${availableOptions.length} items selected`);
411
- const chosenOptionsStatusToDisplay = chosenOptionsStatus ||
412
- (isTree
413
- ? `${(0, treeUtils_1.filterFolders)(chosenOptions, chosenTreeOptionsChecked).length} of ${(0, treeUtils_1.flattenTree)(chosenOptions).length} items selected`
414
- : `${chosenOptionsSelected.length} of ${chosenOptions.length} items selected`);
415
- const available = (isTree
416
- ? availableOptions.map((item) => this.mapChecked(item, false))
417
- : availableOptions);
418
- const chosen = (isTree
419
- ? chosenOptions.map((item) => this.mapChecked(item, true))
420
- : chosenOptions);
15
+ const _a = this.props, { className, children, id, isTree } = _a, props = tslib_1.__rest(_a, ["className", "children", "id", "isTree"]);
421
16
  return (React.createElement(DualListSelectorContext_1.DualListSelectorContext.Provider, { value: { isTree } },
422
- React.createElement(helpers_1.GenerateId, null, (randomId) => (React.createElement("div", Object.assign({ className: (0, react_styles_1.css)(dual_list_selector_1.default.dualListSelector, className), id: id || randomId }, props), children === '' ? (React.createElement(React.Fragment, null,
423
- React.createElement(DualListSelectorPane_1.DualListSelectorPane, { isSearchable: isSearchable, onFilterUpdate: this.onFilterUpdate, searchInputAriaLabel: availableOptionsSearchAriaLabel, filterOption: filterOption, onSearchInputChanged: onAvailableOptionsSearchInputChanged, status: availableOptionsStatusToDisplay, title: availableOptionsTitle, options: available, selectedOptions: isTree ? availableTreeOptionsChecked : availableOptionsSelected, onOptionSelect: this.onOptionSelect, onOptionCheck: (e, isChecked, itemData) => this.onTreeOptionCheck(e, isChecked, itemData, false), actions: availableOptionsActions, id: `${id || randomId}-available-pane`, isDisabled: isDisabled }),
424
- React.createElement(DualListSelectorControlsWrapper_1.DualListSelectorControlsWrapper, { "aria-label": controlsAriaLabel },
425
- React.createElement(DualListSelectorControl_1.DualListSelectorControl, { isDisabled: (isTree ? availableTreeOptionsChecked.length === 0 : availableOptionsSelected.length === 0) ||
426
- isDisabled, onClick: isTree ? this.addTreeSelected : this.addSelected, ref: this.addSelectedButtonRef, "aria-label": addSelectedAriaLabel, tooltipContent: addSelectedTooltip, tooltipProps: addSelectedTooltipProps },
427
- React.createElement(angle_right_icon_1.default, null)),
428
- React.createElement(DualListSelectorControl_1.DualListSelectorControl, { isDisabled: availableOptions.length === 0 || isDisabled, onClick: isTree ? this.addAllTreeVisible : this.addAllVisible, ref: this.addAllButtonRef, "aria-label": addAllAriaLabel, tooltipContent: addAllTooltip, tooltipProps: addAllTooltipProps },
429
- React.createElement(angle_double_right_icon_1.default, null)),
430
- React.createElement(DualListSelectorControl_1.DualListSelectorControl, { isDisabled: chosenOptions.length === 0 || isDisabled, onClick: isTree ? this.removeAllTreeVisible : this.removeAllVisible, "aria-label": removeAllAriaLabel, ref: this.removeAllButtonRef, tooltipContent: removeAllTooltip, tooltipProps: removeAllTooltipProps },
431
- React.createElement(angle_double_left_icon_1.default, null)),
432
- React.createElement(DualListSelectorControl_1.DualListSelectorControl, { onClick: isTree ? this.removeTreeSelected : this.removeSelected, isDisabled: (isTree ? chosenTreeOptionsChecked.length === 0 : chosenOptionsSelected.length === 0) ||
433
- isDisabled, ref: this.removeSelectedButtonRef, "aria-label": removeSelectedAriaLabel, tooltipContent: removeSelectedTooltip, tooltipProps: removeSelectedTooltipProps },
434
- React.createElement(angle_left_icon_1.default, null))),
435
- React.createElement(DualListSelectorPane_1.DualListSelectorPane, { isChosen: true, isSearchable: isSearchable, onFilterUpdate: this.onFilterUpdate, searchInputAriaLabel: chosenOptionsSearchAriaLabel, filterOption: filterOption, onSearchInputChanged: onChosenOptionsSearchInputChanged, title: chosenOptionsTitle, status: chosenOptionsStatusToDisplay, options: chosen, selectedOptions: isTree ? chosenTreeOptionsChecked : chosenOptionsSelected, onOptionSelect: this.onOptionSelect, onOptionCheck: (e, isChecked, itemData) => this.onTreeOptionCheck(e, isChecked, itemData, true), actions: chosenOptionsActions, id: `${id || randomId}-chosen-pane`, isDisabled: isDisabled }))) : (children))))));
17
+ React.createElement(helpers_1.GenerateId, null, (randomId) => (React.createElement("div", Object.assign({ className: (0, react_styles_1.css)(dual_list_selector_1.default.dualListSelector, className), id: id || randomId }, props), children)))));
436
18
  }
437
19
  }
438
20
  exports.DualListSelector = DualListSelector;
439
21
  DualListSelector.displayName = 'DualListSelector';
440
22
  DualListSelector.defaultProps = {
441
23
  children: '',
442
- availableOptions: [],
443
- availableOptionsTitle: 'Available options',
444
- availableOptionsSearchAriaLabel: 'Available search input',
445
- chosenOptions: [],
446
- chosenOptionsTitle: 'Chosen options',
447
- chosenOptionsSearchAriaLabel: 'Chosen search input',
448
- controlsAriaLabel: 'Selector controls',
449
- addAllAriaLabel: 'Add all',
450
- addSelectedAriaLabel: 'Add selected',
451
- removeSelectedAriaLabel: 'Remove selected',
452
- removeAllAriaLabel: 'Remove all',
453
- isTree: false,
454
- isDisabled: false
24
+ isTree: false
455
25
  };
456
26
  //# sourceMappingURL=DualListSelector.js.map