@elliemae/ds-form 1.57.0-rc.1 → 1.57.0-rc.13

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 (592) hide show
  1. package/ComboBox/v3/ComboBox/package.json +10 -0
  2. package/ComboBox/v3/ComboBoxCTX/package.json +10 -0
  3. package/ComboBox/v3/config/useComboBox/package.json +10 -0
  4. package/ComboBox/v3/config/useGetPropsWithDefault/package.json +10 -0
  5. package/ComboBox/v3/package.json +10 -0
  6. package/ComboBox/v3/parts/a11y-messages/MultiAllyMessages/package.json +10 -0
  7. package/ComboBox/v3/parts/a11y-messages/SingleAllyMessages/package.json +10 -0
  8. package/ComboBox/v3/parts/a11y-messages/package.json +10 -0
  9. package/ComboBox/v3/parts/a11y-messages/styled/package.json +10 -0
  10. package/ComboBox/v3/parts/container/Container/package.json +10 -0
  11. package/ComboBox/v3/parts/container/package.json +10 -0
  12. package/ComboBox/v3/parts/container/styled/package.json +10 -0
  13. package/ComboBox/v3/parts/controls/Controls/package.json +10 -0
  14. package/ComboBox/v3/parts/controls/package.json +10 -0
  15. package/ComboBox/v3/parts/controls/styled/package.json +10 -0
  16. package/ComboBox/v3/parts/controls-input/ControlsInput/package.json +10 -0
  17. package/ComboBox/v3/parts/controls-input/styled/package.json +10 -0
  18. package/ComboBox/v3/parts/controls-input/useControlsInput/package.json +10 -0
  19. package/ComboBox/v3/parts/dropdown-indicator/DropdownIndicator/package.json +10 -0
  20. package/ComboBox/v3/parts/dropdown-indicator/package.json +10 -0
  21. package/ComboBox/v3/parts/dropdown-indicator/styled/package.json +10 -0
  22. package/ComboBox/v3/parts/empty-state/package.json +10 -0
  23. package/ComboBox/v3/parts/empty-state/styled/package.json +10 -0
  24. package/ComboBox/v3/parts/header-list/HeaderList/package.json +10 -0
  25. package/ComboBox/v3/parts/header-list/package.json +10 -0
  26. package/ComboBox/v3/parts/header-list/styled/package.json +10 -0
  27. package/ComboBox/v3/parts/menu-list/MenuList/package.json +10 -0
  28. package/ComboBox/v3/parts/menu-list/MenuListInline/package.json +10 -0
  29. package/ComboBox/v3/parts/menu-list/package.json +10 -0
  30. package/ComboBox/v3/parts/menu-list/styled/package.json +10 -0
  31. package/ComboBox/v3/parts/menu-list/useMenuList/package.json +10 -0
  32. package/ComboBox/v3/parts/multi-selected-values-container/MultiSelectedValuesContainer/package.json +10 -0
  33. package/ComboBox/v3/parts/multi-selected-values-container/package.json +10 -0
  34. package/ComboBox/v3/parts/multi-selected-values-container/styled/package.json +10 -0
  35. package/ComboBox/v3/parts/multi-selected-values-container/useGroupPills/package.json +10 -0
  36. package/ComboBox/v3/parts/single-selected-value-container/SingleSelectedValueContainer/package.json +10 -0
  37. package/ComboBox/v3/parts/single-selected-value-container/package.json +10 -0
  38. package/ComboBox/v3/parts/single-selected-value-container/styled/package.json +10 -0
  39. package/ComboBox/v3/propTypes/package.json +10 -0
  40. package/ComboBox/v3/tests/utils/package.json +10 -0
  41. package/ComboBox/v3/utils/hooks/useKeyboardNavigation/package.json +10 -0
  42. package/ComboBox/v3/utils/hooks/useOnElementResize/package.json +10 -0
  43. package/ComboBox/v3/utils/hooks/useOnWindowResize/package.json +10 -0
  44. package/ComboBox/v3/utils/listHelper/package.json +10 -0
  45. package/MenuItem/components/MenuItem/package.json +10 -0
  46. package/MenuItem/components/MenuItem/styled/package.json +10 -0
  47. package/MenuItem/components/MultiMenuItem/MultiMenuItem/package.json +10 -0
  48. package/MenuItem/components/MultiMenuItem/styled/package.json +10 -0
  49. package/MenuItem/components/Section/package.json +10 -0
  50. package/MenuItem/components/Section/props/package.json +10 -0
  51. package/MenuItem/components/Section/styled/package.json +10 -0
  52. package/MenuItem/components/Separator/package.json +10 -0
  53. package/MenuItem/components/Separator/styled/package.json +10 -0
  54. package/MenuItem/components/SingleMenuItem/SingleMenuItem/package.json +10 -0
  55. package/MenuItem/components/SingleMenuItem/styled/package.json +10 -0
  56. package/MenuItem/components/SubmenuItem/package.json +10 -0
  57. package/MenuItem/components/SubmenuItem/styled/package.json +10 -0
  58. package/MenuItem/components/package.json +10 -0
  59. package/MenuItem/components/styled/package.json +10 -0
  60. package/MenuItem/package.json +10 -0
  61. package/MenuItem/props/package.json +10 -0
  62. package/cjs/Checkbox/DSCheckbox.js +2 -2
  63. package/cjs/Checkbox/DSCheckbox.js.map +1 -1
  64. package/cjs/Checkbox/index.js +1 -1
  65. package/cjs/CheckboxGroup/DSCheckboxGroup.js +2 -3
  66. package/cjs/CheckboxGroup/DSCheckboxGroup.js.map +1 -1
  67. package/cjs/CheckboxGroup/index.js +2 -3
  68. package/cjs/CheckboxGroup/index.js.map +1 -1
  69. package/cjs/CheckboxGroup/props.js +1 -1
  70. package/cjs/ComboBox/DSComboBox.js +2 -6
  71. package/cjs/ComboBox/DSComboBox.js.map +1 -1
  72. package/cjs/ComboBox/index.js +40 -6
  73. package/cjs/ComboBox/index.js.map +1 -1
  74. package/cjs/ComboBox/v1/DSComboBox.js +3 -4
  75. package/cjs/ComboBox/v1/DSComboBox.js.map +1 -1
  76. package/cjs/ComboBox/v1/components/AllOption.js +1 -1
  77. package/cjs/ComboBox/v1/components/ClearIndicator.js +2 -3
  78. package/cjs/ComboBox/v1/components/ClearIndicator.js.map +1 -1
  79. package/cjs/ComboBox/v1/components/CustomOptionMulti.js +1 -1
  80. package/cjs/ComboBox/v1/components/DropdownIndicator.js +2 -3
  81. package/cjs/ComboBox/v1/components/DropdownIndicator.js.map +1 -1
  82. package/cjs/ComboBox/v1/components/MenuList.js +1 -1
  83. package/cjs/ComboBox/v1/components/SelectMenu.js +3 -3
  84. package/cjs/ComboBox/v1/components/SelectMenu.js.map +1 -1
  85. package/cjs/ComboBox/v1/index.js +2 -3
  86. package/cjs/ComboBox/v1/index.js.map +1 -1
  87. package/cjs/ComboBox/v2/Combobox.js +5 -10
  88. package/cjs/ComboBox/v2/Combobox.js.map +1 -1
  89. package/cjs/ComboBox/v2/components/AllOption.js +1 -1
  90. package/cjs/ComboBox/v2/components/ClearIndicator.js +2 -3
  91. package/cjs/ComboBox/v2/components/ClearIndicator.js.map +1 -1
  92. package/cjs/ComboBox/v2/components/CustomOptionMulti.js +1 -1
  93. package/cjs/ComboBox/v2/components/DropdownIndicator.js +2 -3
  94. package/cjs/ComboBox/v2/components/DropdownIndicator.js.map +1 -1
  95. package/cjs/ComboBox/v2/components/MenuList.js +1 -1
  96. package/cjs/ComboBox/v2/components/ValueContainer.js +2 -2
  97. package/cjs/ComboBox/v2/components/ValueContainer.js.map +1 -1
  98. package/cjs/ComboBox/v2/index.js +2 -5
  99. package/cjs/ComboBox/v2/index.js.map +1 -1
  100. package/cjs/ComboBox/v3/ComboBox.js +69 -0
  101. package/cjs/ComboBox/v3/ComboBox.js.map +1 -0
  102. package/cjs/ComboBox/v3/ComboBoxCTX.js +47 -0
  103. package/cjs/ComboBox/v3/ComboBoxCTX.js.map +1 -0
  104. package/cjs/ComboBox/v3/config/useComboBox.js +69 -0
  105. package/cjs/ComboBox/v3/config/useComboBox.js.map +1 -0
  106. package/cjs/ComboBox/v3/config/useGetPropsWithDefault.js +15 -0
  107. package/cjs/ComboBox/v3/config/useGetPropsWithDefault.js.map +1 -0
  108. package/cjs/ComboBox/v3/index.d.js +3 -0
  109. package/cjs/ComboBox/v3/index.d.js.map +1 -0
  110. package/cjs/ComboBox/v3/index.js +54 -0
  111. package/cjs/ComboBox/v3/index.js.map +1 -0
  112. package/cjs/ComboBox/v3/parts/a11y-messages/MultiAllyMessages.js +33 -0
  113. package/cjs/ComboBox/v3/parts/a11y-messages/MultiAllyMessages.js.map +1 -0
  114. package/cjs/ComboBox/v3/parts/a11y-messages/SingleAllyMessages.js +27 -0
  115. package/cjs/ComboBox/v3/parts/a11y-messages/SingleAllyMessages.js.map +1 -0
  116. package/cjs/ComboBox/v3/parts/a11y-messages/index.js +17 -0
  117. package/cjs/ComboBox/v3/parts/a11y-messages/index.js.map +1 -0
  118. package/cjs/ComboBox/v3/parts/a11y-messages/styled.js +16 -0
  119. package/cjs/ComboBox/v3/parts/a11y-messages/styled.js.map +1 -0
  120. package/cjs/ComboBox/v3/parts/container/Container.js +79 -0
  121. package/cjs/ComboBox/v3/parts/container/Container.js.map +1 -0
  122. package/cjs/ComboBox/v3/parts/container/index.js +47 -0
  123. package/cjs/ComboBox/v3/parts/container/index.js.map +1 -0
  124. package/cjs/ComboBox/v3/parts/container/styled.js +24 -0
  125. package/cjs/ComboBox/v3/parts/container/styled.js.map +1 -0
  126. package/cjs/ComboBox/v3/parts/controls/Controls.js +81 -0
  127. package/cjs/ComboBox/v3/parts/controls/Controls.js.map +1 -0
  128. package/cjs/ComboBox/v3/parts/controls/index.js +35 -0
  129. package/cjs/ComboBox/v3/parts/controls/index.js.map +1 -0
  130. package/cjs/ComboBox/v3/parts/controls/styled.js +48 -0
  131. package/cjs/ComboBox/v3/parts/controls/styled.js.map +1 -0
  132. package/cjs/ComboBox/v3/parts/controls-input/ControlsInput.js +63 -0
  133. package/cjs/ComboBox/v3/parts/controls-input/ControlsInput.js.map +1 -0
  134. package/cjs/ComboBox/v3/parts/controls-input/styled.js +30 -0
  135. package/cjs/ComboBox/v3/parts/controls-input/styled.js.map +1 -0
  136. package/cjs/ComboBox/v3/parts/controls-input/useControlsInput.js +92 -0
  137. package/cjs/ComboBox/v3/parts/controls-input/useControlsInput.js.map +1 -0
  138. package/cjs/ComboBox/v3/parts/dropdown-indicator/DropdownIndicator.js +37 -0
  139. package/cjs/ComboBox/v3/parts/dropdown-indicator/DropdownIndicator.js.map +1 -0
  140. package/cjs/ComboBox/v3/parts/dropdown-indicator/index.js +3 -0
  141. package/cjs/ComboBox/v3/parts/dropdown-indicator/index.js.map +1 -0
  142. package/cjs/ComboBox/v3/parts/dropdown-indicator/styled.js +18 -0
  143. package/cjs/ComboBox/v3/parts/dropdown-indicator/styled.js.map +1 -0
  144. package/cjs/ComboBox/v3/parts/empty-state/index.js +24 -0
  145. package/cjs/ComboBox/v3/parts/empty-state/index.js.map +1 -0
  146. package/cjs/ComboBox/v3/parts/empty-state/styled.js +20 -0
  147. package/cjs/ComboBox/v3/parts/empty-state/styled.js.map +1 -0
  148. package/cjs/ComboBox/v3/parts/header-list/HeaderList.js +94 -0
  149. package/cjs/ComboBox/v3/parts/header-list/HeaderList.js.map +1 -0
  150. package/cjs/ComboBox/v3/parts/header-list/index.js +17 -0
  151. package/cjs/ComboBox/v3/parts/header-list/index.js.map +1 -0
  152. package/cjs/ComboBox/v3/parts/header-list/styled.js +40 -0
  153. package/cjs/ComboBox/v3/parts/header-list/styled.js.map +1 -0
  154. package/cjs/ComboBox/v3/parts/menu-list/MenuList.js +62 -0
  155. package/cjs/ComboBox/v3/parts/menu-list/MenuList.js.map +1 -0
  156. package/cjs/ComboBox/v3/parts/menu-list/MenuListInline.js +44 -0
  157. package/cjs/ComboBox/v3/parts/menu-list/MenuListInline.js.map +1 -0
  158. package/cjs/ComboBox/v3/parts/menu-list/index.js +27 -0
  159. package/cjs/ComboBox/v3/parts/menu-list/index.js.map +1 -0
  160. package/cjs/ComboBox/v3/parts/menu-list/styled.js +39 -0
  161. package/cjs/ComboBox/v3/parts/menu-list/styled.js.map +1 -0
  162. package/cjs/ComboBox/v3/parts/menu-list/useMenuList.js +88 -0
  163. package/cjs/ComboBox/v3/parts/menu-list/useMenuList.js.map +1 -0
  164. package/cjs/ComboBox/v3/parts/multi-selected-values-container/MultiSelectedValuesContainer.js +77 -0
  165. package/cjs/ComboBox/v3/parts/multi-selected-values-container/MultiSelectedValuesContainer.js.map +1 -0
  166. package/cjs/ComboBox/v3/parts/multi-selected-values-container/index.js +22 -0
  167. package/cjs/ComboBox/v3/parts/multi-selected-values-container/index.js.map +1 -0
  168. package/cjs/ComboBox/v3/parts/multi-selected-values-container/styled.js +24 -0
  169. package/cjs/ComboBox/v3/parts/multi-selected-values-container/styled.js.map +1 -0
  170. package/cjs/ComboBox/v3/parts/multi-selected-values-container/useGroupPills.js +76 -0
  171. package/cjs/ComboBox/v3/parts/multi-selected-values-container/useGroupPills.js.map +1 -0
  172. package/cjs/ComboBox/v3/parts/single-selected-value-container/SingleSelectedValueContainer.js +27 -0
  173. package/cjs/ComboBox/v3/parts/single-selected-value-container/SingleSelectedValueContainer.js.map +1 -0
  174. package/cjs/ComboBox/v3/parts/single-selected-value-container/index.js +15 -0
  175. package/cjs/ComboBox/v3/parts/single-selected-value-container/index.js.map +1 -0
  176. package/cjs/ComboBox/v3/parts/single-selected-value-container/styled.js +16 -0
  177. package/cjs/ComboBox/v3/parts/single-selected-value-container/styled.js.map +1 -0
  178. package/cjs/ComboBox/v3/propTypes.js +22 -0
  179. package/cjs/ComboBox/v3/propTypes.js.map +1 -0
  180. package/cjs/ComboBox/v3/tests/utils.js +23 -0
  181. package/cjs/ComboBox/v3/tests/utils.js.map +1 -0
  182. package/cjs/ComboBox/v3/utils/hooks/useKeyboardNavigation.js +153 -0
  183. package/cjs/ComboBox/v3/utils/hooks/useKeyboardNavigation.js.map +1 -0
  184. package/cjs/ComboBox/v3/utils/hooks/useOnElementResize.js +52 -0
  185. package/cjs/ComboBox/v3/utils/hooks/useOnElementResize.js.map +1 -0
  186. package/cjs/ComboBox/v3/utils/hooks/useOnWindowResize.js +51 -0
  187. package/cjs/ComboBox/v3/utils/hooks/useOnWindowResize.js.map +1 -0
  188. package/cjs/ComboBox/v3/utils/listHelper.js +38 -0
  189. package/cjs/ComboBox/v3/utils/listHelper.js.map +1 -0
  190. package/cjs/ComboBoxFreeSolo/ComboBoxFreeSolo.js +38 -6
  191. package/cjs/ComboBoxFreeSolo/ComboBoxFreeSolo.js.map +1 -1
  192. package/cjs/ComboBoxFreeSolo/components/MultiValueRemove.js +2 -3
  193. package/cjs/ComboBoxFreeSolo/components/MultiValueRemove.js.map +1 -1
  194. package/cjs/ComboBoxFreeSolo/components/SingleValue.js +1 -1
  195. package/cjs/ComboBoxFreeSolo/components/SingleValueRemove.js +2 -3
  196. package/cjs/ComboBoxFreeSolo/components/SingleValueRemove.js.map +1 -1
  197. package/cjs/ComboBoxFreeSolo/index.js +38 -6
  198. package/cjs/ComboBoxFreeSolo/index.js.map +1 -1
  199. package/cjs/DateInput/DSDateInput.js +4 -6
  200. package/cjs/DateInput/DSDateInput.js.map +1 -1
  201. package/cjs/DateInput/components/DateInputImpl.js +2 -4
  202. package/cjs/DateInput/components/DateInputImpl.js.map +1 -1
  203. package/cjs/DateInput/components/DateInputs.js +8 -13
  204. package/cjs/DateInput/components/DateInputs.js.map +1 -1
  205. package/cjs/DateInput/components/utils.js +7 -8
  206. package/cjs/DateInput/components/utils.js.map +1 -1
  207. package/cjs/DateInput/index.js +2 -4
  208. package/cjs/DateInput/index.js.map +1 -1
  209. package/cjs/DateInputV2/components/DSDateInput.js +2 -3
  210. package/cjs/DateInputV2/components/DSDateInput.js.map +1 -1
  211. package/cjs/DateInputV2/components/DateInputs.js +1 -2
  212. package/cjs/DateInputV2/components/DateInputs.js.map +1 -1
  213. package/cjs/DateInputV2/components/helpers.js +1 -2
  214. package/cjs/DateInputV2/components/helpers.js.map +1 -1
  215. package/cjs/DateInputV2/components/styled.js +3 -3
  216. package/cjs/DateInputV2/components/styled.js.map +1 -1
  217. package/cjs/DateInputV2/components/utils.js +12 -13
  218. package/cjs/DateInputV2/components/utils.js.map +1 -1
  219. package/cjs/DateInputV2/index.js +2 -3
  220. package/cjs/DateInputV2/index.js.map +1 -1
  221. package/cjs/ExpandableInput/DSExpandableInput.js +1 -1
  222. package/cjs/ExpandableInput/ExpandableInputImpl.js +1 -1
  223. package/cjs/ExpandableInput/index.js +1 -1
  224. package/cjs/FloatingLabelInput/DSFloatingLabelInput.js +2 -2
  225. package/cjs/FloatingLabelInput/FloatingLabelInputImpl.js +2 -3
  226. package/cjs/FloatingLabelInput/FloatingLabelInputImpl.js.map +1 -1
  227. package/cjs/FloatingLabelInput/index.js +2 -2
  228. package/cjs/FormItem/DSFormItemLayout.js +3 -4
  229. package/cjs/FormItem/DSFormItemLayout.js.map +1 -1
  230. package/cjs/FormItem/defaultProps.js +1 -1
  231. package/cjs/FormItem/index.js +2 -2
  232. package/cjs/Input/DSInput.js +1 -1
  233. package/cjs/Input/InputImpl.js +2 -3
  234. package/cjs/Input/InputImpl.js.map +1 -1
  235. package/cjs/Input/index.js +1 -1
  236. package/cjs/InputMask/DSInputMask.js +1 -1
  237. package/cjs/InputMask/DSInputMaskDeprecated.js +1 -1
  238. package/cjs/InputMask/index.js +1 -1
  239. package/cjs/InputMask/mask_types/DateInputMask.js +1 -1
  240. package/cjs/InputMask/mask_types/DateTimeInputMask.js +1 -1
  241. package/cjs/InputMask/mask_types/DictionaryInputMask.js +1 -1
  242. package/cjs/InputMask/mask_types/NumberInputMask.js +1 -1
  243. package/cjs/InputMask/mask_types/PhoneInputMask.js +1 -1
  244. package/cjs/InputMask/mask_types/PhoneInternationalInputMask.js +1 -1
  245. package/cjs/InputMask/mask_types/SsnInputMask.js +1 -1
  246. package/cjs/InputMask/mask_types/UsZipCodeInputMask.js +1 -1
  247. package/cjs/InputMask/mask_types/ZipCodeSearchInputMask.js +1 -1
  248. package/cjs/InputMask/mask_types/index.js +1 -1
  249. package/cjs/InputProtected/DSInputProtected.js +9 -18
  250. package/cjs/InputProtected/DSInputProtected.js.map +1 -1
  251. package/cjs/InputProtected/index.js +4 -7
  252. package/cjs/InputProtected/index.js.map +1 -1
  253. package/cjs/InputProtected/options.js.map +1 -1
  254. package/cjs/MenuItem/components/MenuItem/index.js +53 -0
  255. package/cjs/MenuItem/components/MenuItem/index.js.map +1 -0
  256. package/cjs/MenuItem/components/MenuItem/styled.js +16 -0
  257. package/cjs/MenuItem/components/MenuItem/styled.js.map +1 -0
  258. package/cjs/MenuItem/components/MultiMenuItem/MultiMenuItem.js +65 -0
  259. package/cjs/MenuItem/components/MultiMenuItem/MultiMenuItem.js.map +1 -0
  260. package/cjs/MenuItem/components/MultiMenuItem/styled.js +16 -0
  261. package/cjs/MenuItem/components/MultiMenuItem/styled.js.map +1 -0
  262. package/cjs/MenuItem/components/Section/index.js +30 -0
  263. package/cjs/MenuItem/components/Section/index.js.map +1 -0
  264. package/cjs/MenuItem/components/Section/props.js +16 -0
  265. package/cjs/MenuItem/components/Section/props.js.map +1 -0
  266. package/cjs/MenuItem/components/Section/styled.js +28 -0
  267. package/cjs/MenuItem/components/Section/styled.js.map +1 -0
  268. package/cjs/MenuItem/components/Separator/index.js +18 -0
  269. package/cjs/MenuItem/components/Separator/index.js.map +1 -0
  270. package/cjs/MenuItem/components/Separator/styled.js +28 -0
  271. package/cjs/MenuItem/components/Separator/styled.js.map +1 -0
  272. package/cjs/MenuItem/components/SingleMenuItem/SingleMenuItem.js +65 -0
  273. package/cjs/MenuItem/components/SingleMenuItem/SingleMenuItem.js.map +1 -0
  274. package/cjs/MenuItem/components/SingleMenuItem/styled.js +20 -0
  275. package/cjs/MenuItem/components/SingleMenuItem/styled.js.map +1 -0
  276. package/cjs/MenuItem/components/SubmenuItem/index.js +123 -0
  277. package/cjs/MenuItem/components/SubmenuItem/index.js.map +1 -0
  278. package/cjs/MenuItem/components/SubmenuItem/styled.js +24 -0
  279. package/cjs/MenuItem/components/SubmenuItem/styled.js.map +1 -0
  280. package/cjs/MenuItem/components/index.js +47 -0
  281. package/cjs/MenuItem/components/index.js.map +1 -0
  282. package/cjs/MenuItem/components/styled.js +54 -0
  283. package/cjs/MenuItem/components/styled.js.map +1 -0
  284. package/cjs/MenuItem/index.js +47 -0
  285. package/cjs/MenuItem/index.js.map +1 -0
  286. package/cjs/MenuItem/props.js +26 -0
  287. package/cjs/MenuItem/props.js.map +1 -0
  288. package/cjs/RadioGroup/DSRadioGroup.js +2 -2
  289. package/cjs/RadioGroup/index.js +2 -2
  290. package/cjs/SearchBox/DSSearchBox.js +4 -8
  291. package/cjs/SearchBox/DSSearchBox.js.map +1 -1
  292. package/cjs/SearchBox/NavSearchBox.js +5 -13
  293. package/cjs/SearchBox/NavSearchBox.js.map +1 -1
  294. package/cjs/SearchBox/SearchBoxToggle.js +3 -6
  295. package/cjs/SearchBox/SearchBoxToggle.js.map +1 -1
  296. package/cjs/SearchBox/index.js +2 -6
  297. package/cjs/SearchBox/index.js.map +1 -1
  298. package/cjs/SearchBox/styled.js +1 -1
  299. package/cjs/SearchBox/useSearch.js +2 -2
  300. package/cjs/SearchBox/useSearch.js.map +1 -1
  301. package/cjs/SearchBox/withSearchable.js +2 -2
  302. package/cjs/SearchBox/withSearchable.js.map +1 -1
  303. package/cjs/TextBox/DSTextBox.js +1 -1
  304. package/cjs/TextBox/index.js +1 -1
  305. package/cjs/TimeInput/DSTimeInput.js +3 -4
  306. package/cjs/TimeInput/DSTimeInput.js.map +1 -1
  307. package/cjs/TimeInput/TimeInputImpl.js +3 -4
  308. package/cjs/TimeInput/TimeInputImpl.js.map +1 -1
  309. package/cjs/TimeInput/TimeInputs.js +2 -3
  310. package/cjs/TimeInput/TimeInputs.js.map +1 -1
  311. package/cjs/TimeInput/index.js +3 -4
  312. package/cjs/TimeInput/index.js.map +1 -1
  313. package/cjs/TimeInput/utils.js +2 -3
  314. package/cjs/TimeInput/utils.js.map +1 -1
  315. package/cjs/Toggle/DSToggle.js +1 -1
  316. package/cjs/Toggle/DSToggleImpl.js +1 -1
  317. package/cjs/Toggle/DSToggleRender.js +2 -3
  318. package/cjs/Toggle/DSToggleRender.js.map +1 -1
  319. package/cjs/Toggle/index.js +1 -1
  320. package/cjs/index.js +152 -72
  321. package/cjs/index.js.map +1 -1
  322. package/cjs/{utils-328f60e2.js → utils-f82fe290.js} +6 -7
  323. package/cjs/utils-f82fe290.js.map +1 -0
  324. package/esm/Checkbox/DSCheckbox.js +2 -2
  325. package/esm/Checkbox/DSCheckbox.js.map +1 -1
  326. package/esm/Checkbox/defaultProps.js +1 -1
  327. package/esm/Checkbox/index.js +2 -2
  328. package/esm/Checkbox/props.js +1 -1
  329. package/esm/CheckboxGroup/DSCheckboxGroup.js +3 -4
  330. package/esm/CheckboxGroup/DSCheckboxGroup.js.map +1 -1
  331. package/esm/CheckboxGroup/index.js +3 -4
  332. package/esm/CheckboxGroup/index.js.map +1 -1
  333. package/esm/CheckboxGroup/props.js +2 -2
  334. package/esm/ComboBox/DSComboBox.js +3 -7
  335. package/esm/ComboBox/DSComboBox.js.map +1 -1
  336. package/esm/ComboBox/index.js +39 -7
  337. package/esm/ComboBox/index.js.map +1 -1
  338. package/esm/ComboBox/v1/DSComboBox.js +4 -5
  339. package/esm/ComboBox/v1/DSComboBox.js.map +1 -1
  340. package/esm/ComboBox/v1/components/AllOption.js +2 -2
  341. package/esm/ComboBox/v1/components/ClearIndicator.js +1 -1
  342. package/esm/ComboBox/v1/components/ClearIndicator.js.map +1 -1
  343. package/esm/ComboBox/v1/components/CustomOptionMulti.js +2 -2
  344. package/esm/ComboBox/v1/components/DropdownIndicator.js +1 -1
  345. package/esm/ComboBox/v1/components/DropdownIndicator.js.map +1 -1
  346. package/esm/ComboBox/v1/components/MenuList.js +2 -2
  347. package/esm/ComboBox/v1/components/SelectMenu.js +1 -1
  348. package/esm/ComboBox/v1/components/SelectMenu.js.map +1 -1
  349. package/esm/ComboBox/v1/index.js +3 -4
  350. package/esm/ComboBox/v1/index.js.map +1 -1
  351. package/esm/ComboBox/v2/Combobox.js +3 -6
  352. package/esm/ComboBox/v2/Combobox.js.map +1 -1
  353. package/esm/ComboBox/v2/components/AllOption.js +2 -2
  354. package/esm/ComboBox/v2/components/ClearIndicator.js +1 -1
  355. package/esm/ComboBox/v2/components/ClearIndicator.js.map +1 -1
  356. package/esm/ComboBox/v2/components/CustomOptionMulti.js +2 -2
  357. package/esm/ComboBox/v2/components/DropdownIndicator.js +1 -1
  358. package/esm/ComboBox/v2/components/DropdownIndicator.js.map +1 -1
  359. package/esm/ComboBox/v2/components/MenuList.js +2 -2
  360. package/esm/ComboBox/v2/components/ValueContainer.js +1 -1
  361. package/esm/ComboBox/v2/components/ValueContainer.js.map +1 -1
  362. package/esm/ComboBox/v2/index.js +3 -6
  363. package/esm/ComboBox/v2/index.js.map +1 -1
  364. package/esm/ComboBox/v3/ComboBox.js +60 -0
  365. package/esm/ComboBox/v3/ComboBox.js.map +1 -0
  366. package/esm/ComboBox/v3/ComboBoxCTX.js +41 -0
  367. package/esm/ComboBox/v3/ComboBoxCTX.js.map +1 -0
  368. package/esm/ComboBox/v3/config/useComboBox.js +61 -0
  369. package/esm/ComboBox/v3/config/useComboBox.js.map +1 -0
  370. package/esm/ComboBox/v3/config/useGetPropsWithDefault.js +11 -0
  371. package/esm/ComboBox/v3/config/useGetPropsWithDefault.js.map +1 -0
  372. package/esm/ComboBox/v3/index.d.js +2 -0
  373. package/esm/ComboBox/v3/index.d.js.map +1 -0
  374. package/esm/ComboBox/v3/index.js +45 -0
  375. package/esm/ComboBox/v3/index.js.map +1 -0
  376. package/esm/ComboBox/v3/parts/a11y-messages/MultiAllyMessages.js +25 -0
  377. package/esm/ComboBox/v3/parts/a11y-messages/MultiAllyMessages.js.map +1 -0
  378. package/esm/ComboBox/v3/parts/a11y-messages/SingleAllyMessages.js +19 -0
  379. package/esm/ComboBox/v3/parts/a11y-messages/SingleAllyMessages.js.map +1 -0
  380. package/esm/ComboBox/v3/parts/a11y-messages/index.js +8 -0
  381. package/esm/ComboBox/v3/parts/a11y-messages/index.js.map +1 -0
  382. package/esm/ComboBox/v3/parts/a11y-messages/styled.js +8 -0
  383. package/esm/ComboBox/v3/parts/a11y-messages/styled.js.map +1 -0
  384. package/esm/ComboBox/v3/parts/container/Container.js +71 -0
  385. package/esm/ComboBox/v3/parts/container/Container.js.map +1 -0
  386. package/esm/ComboBox/v3/parts/container/index.js +39 -0
  387. package/esm/ComboBox/v3/parts/container/index.js.map +1 -0
  388. package/esm/ComboBox/v3/parts/container/styled.js +14 -0
  389. package/esm/ComboBox/v3/parts/container/styled.js.map +1 -0
  390. package/esm/ComboBox/v3/parts/controls/Controls.js +73 -0
  391. package/esm/ComboBox/v3/parts/controls/Controls.js.map +1 -0
  392. package/esm/ComboBox/v3/parts/controls/index.js +27 -0
  393. package/esm/ComboBox/v3/parts/controls/index.js.map +1 -0
  394. package/esm/ComboBox/v3/parts/controls/styled.js +36 -0
  395. package/esm/ComboBox/v3/parts/controls/styled.js.map +1 -0
  396. package/esm/ComboBox/v3/parts/controls-input/ControlsInput.js +55 -0
  397. package/esm/ComboBox/v3/parts/controls-input/ControlsInput.js.map +1 -0
  398. package/esm/ComboBox/v3/parts/controls-input/styled.js +19 -0
  399. package/esm/ComboBox/v3/parts/controls-input/styled.js.map +1 -0
  400. package/esm/ComboBox/v3/parts/controls-input/useControlsInput.js +84 -0
  401. package/esm/ComboBox/v3/parts/controls-input/useControlsInput.js.map +1 -0
  402. package/esm/ComboBox/v3/parts/dropdown-indicator/DropdownIndicator.js +30 -0
  403. package/esm/ComboBox/v3/parts/dropdown-indicator/DropdownIndicator.js.map +1 -0
  404. package/esm/ComboBox/v3/parts/dropdown-indicator/index.js +2 -0
  405. package/esm/ComboBox/v3/parts/dropdown-indicator/index.js.map +1 -0
  406. package/esm/ComboBox/v3/parts/dropdown-indicator/styled.js +9 -0
  407. package/esm/ComboBox/v3/parts/dropdown-indicator/styled.js.map +1 -0
  408. package/esm/ComboBox/v3/parts/empty-state/index.js +16 -0
  409. package/esm/ComboBox/v3/parts/empty-state/index.js.map +1 -0
  410. package/esm/ComboBox/v3/parts/empty-state/styled.js +11 -0
  411. package/esm/ComboBox/v3/parts/empty-state/styled.js.map +1 -0
  412. package/esm/ComboBox/v3/parts/header-list/HeaderList.js +86 -0
  413. package/esm/ComboBox/v3/parts/header-list/HeaderList.js.map +1 -0
  414. package/esm/ComboBox/v3/parts/header-list/index.js +9 -0
  415. package/esm/ComboBox/v3/parts/header-list/index.js.map +1 -0
  416. package/esm/ComboBox/v3/parts/header-list/styled.js +26 -0
  417. package/esm/ComboBox/v3/parts/header-list/styled.js.map +1 -0
  418. package/esm/ComboBox/v3/parts/menu-list/MenuList.js +54 -0
  419. package/esm/ComboBox/v3/parts/menu-list/MenuList.js.map +1 -0
  420. package/esm/ComboBox/v3/parts/menu-list/MenuListInline.js +36 -0
  421. package/esm/ComboBox/v3/parts/menu-list/MenuListInline.js.map +1 -0
  422. package/esm/ComboBox/v3/parts/menu-list/index.js +18 -0
  423. package/esm/ComboBox/v3/parts/menu-list/index.js.map +1 -0
  424. package/esm/ComboBox/v3/parts/menu-list/styled.js +28 -0
  425. package/esm/ComboBox/v3/parts/menu-list/styled.js.map +1 -0
  426. package/esm/ComboBox/v3/parts/menu-list/useMenuList.js +80 -0
  427. package/esm/ComboBox/v3/parts/menu-list/useMenuList.js.map +1 -0
  428. package/esm/ComboBox/v3/parts/multi-selected-values-container/MultiSelectedValuesContainer.js +68 -0
  429. package/esm/ComboBox/v3/parts/multi-selected-values-container/MultiSelectedValuesContainer.js.map +1 -0
  430. package/esm/ComboBox/v3/parts/multi-selected-values-container/index.js +14 -0
  431. package/esm/ComboBox/v3/parts/multi-selected-values-container/index.js.map +1 -0
  432. package/esm/ComboBox/v3/parts/multi-selected-values-container/styled.js +14 -0
  433. package/esm/ComboBox/v3/parts/multi-selected-values-container/styled.js.map +1 -0
  434. package/esm/ComboBox/v3/parts/multi-selected-values-container/useGroupPills.js +67 -0
  435. package/esm/ComboBox/v3/parts/multi-selected-values-container/useGroupPills.js.map +1 -0
  436. package/esm/ComboBox/v3/parts/single-selected-value-container/SingleSelectedValueContainer.js +19 -0
  437. package/esm/ComboBox/v3/parts/single-selected-value-container/SingleSelectedValueContainer.js.map +1 -0
  438. package/esm/ComboBox/v3/parts/single-selected-value-container/index.js +7 -0
  439. package/esm/ComboBox/v3/parts/single-selected-value-container/index.js.map +1 -0
  440. package/esm/ComboBox/v3/parts/single-selected-value-container/styled.js +8 -0
  441. package/esm/ComboBox/v3/parts/single-selected-value-container/styled.js.map +1 -0
  442. package/esm/ComboBox/v3/propTypes.js +18 -0
  443. package/esm/ComboBox/v3/propTypes.js.map +1 -0
  444. package/esm/ComboBox/v3/tests/utils.js +19 -0
  445. package/esm/ComboBox/v3/tests/utils.js.map +1 -0
  446. package/esm/ComboBox/v3/utils/hooks/useKeyboardNavigation.js +149 -0
  447. package/esm/ComboBox/v3/utils/hooks/useKeyboardNavigation.js.map +1 -0
  448. package/esm/ComboBox/v3/utils/hooks/useOnElementResize.js +44 -0
  449. package/esm/ComboBox/v3/utils/hooks/useOnElementResize.js.map +1 -0
  450. package/esm/ComboBox/v3/utils/hooks/useOnWindowResize.js +43 -0
  451. package/esm/ComboBox/v3/utils/hooks/useOnWindowResize.js.map +1 -0
  452. package/esm/ComboBox/v3/utils/listHelper.js +30 -0
  453. package/esm/ComboBox/v3/utils/listHelper.js.map +1 -0
  454. package/esm/ComboBoxFreeSolo/ComboBoxFreeSolo.js +39 -7
  455. package/esm/ComboBoxFreeSolo/ComboBoxFreeSolo.js.map +1 -1
  456. package/esm/ComboBoxFreeSolo/components/MultiValueRemove.js +1 -1
  457. package/esm/ComboBoxFreeSolo/components/MultiValueRemove.js.map +1 -1
  458. package/esm/ComboBoxFreeSolo/components/SingleValue.js +1 -1
  459. package/esm/ComboBoxFreeSolo/components/SingleValueRemove.js +1 -1
  460. package/esm/ComboBoxFreeSolo/components/SingleValueRemove.js.map +1 -1
  461. package/esm/ComboBoxFreeSolo/index.js +39 -7
  462. package/esm/ComboBoxFreeSolo/index.js.map +1 -1
  463. package/esm/DateInput/DSDateInput.js +3 -5
  464. package/esm/DateInput/DSDateInput.js.map +1 -1
  465. package/esm/DateInput/components/DateInputImpl.js +2 -4
  466. package/esm/DateInput/components/DateInputImpl.js.map +1 -1
  467. package/esm/DateInput/components/DateInputs.js +7 -11
  468. package/esm/DateInput/components/DateInputs.js.map +1 -1
  469. package/esm/DateInput/components/utils.js +1 -2
  470. package/esm/DateInput/components/utils.js.map +1 -1
  471. package/esm/DateInput/index.js +2 -4
  472. package/esm/DateInput/index.js.map +1 -1
  473. package/esm/DateInputV2/components/DSDateInput.js +2 -3
  474. package/esm/DateInputV2/components/DSDateInput.js.map +1 -1
  475. package/esm/DateInputV2/components/DateInputs.js +1 -2
  476. package/esm/DateInputV2/components/DateInputs.js.map +1 -1
  477. package/esm/DateInputV2/components/helpers.js +1 -2
  478. package/esm/DateInputV2/components/helpers.js.map +1 -1
  479. package/esm/DateInputV2/components/utils.js +1 -2
  480. package/esm/DateInputV2/components/utils.js.map +1 -1
  481. package/esm/DateInputV2/index.js +2 -3
  482. package/esm/DateInputV2/index.js.map +1 -1
  483. package/esm/ExpandableInput/DSExpandableInput.js +1 -1
  484. package/esm/ExpandableInput/ExpandableInputImpl.js +1 -1
  485. package/esm/ExpandableInput/index.js +1 -1
  486. package/esm/FloatingLabelInput/DSFloatingLabelInput.js +2 -2
  487. package/esm/FloatingLabelInput/FloatingLabelInputImpl.js +1 -1
  488. package/esm/FloatingLabelInput/FloatingLabelInputImpl.js.map +1 -1
  489. package/esm/FloatingLabelInput/index.js +2 -2
  490. package/esm/FormItem/DSFormItemLayout.js +2 -2
  491. package/esm/FormItem/DSFormItemLayout.js.map +1 -1
  492. package/esm/FormItem/defaultProps.js +1 -1
  493. package/esm/FormItem/index.js +2 -2
  494. package/esm/Input/DSInput.js +1 -1
  495. package/esm/Input/InputImpl.js +1 -1
  496. package/esm/Input/InputImpl.js.map +1 -1
  497. package/esm/Input/index.js +1 -1
  498. package/esm/InputMask/DSInputMask.js +1 -1
  499. package/esm/InputMask/DSInputMaskDeprecated.js +1 -1
  500. package/esm/InputMask/index.js +1 -1
  501. package/esm/InputMask/mask_types/DateInputMask.js +1 -1
  502. package/esm/InputMask/mask_types/DateTimeInputMask.js +1 -1
  503. package/esm/InputMask/mask_types/DictionaryInputMask.js +1 -1
  504. package/esm/InputMask/mask_types/NumberInputMask.js +1 -1
  505. package/esm/InputMask/mask_types/PhoneInputMask.js +1 -1
  506. package/esm/InputMask/mask_types/PhoneInternationalInputMask.js +1 -1
  507. package/esm/InputMask/mask_types/SsnInputMask.js +1 -1
  508. package/esm/InputMask/mask_types/UsZipCodeInputMask.js +1 -1
  509. package/esm/InputMask/mask_types/ZipCodeSearchInputMask.js +1 -1
  510. package/esm/InputMask/mask_types/index.js +1 -1
  511. package/esm/InputProtected/DSInputProtected.js +4 -9
  512. package/esm/InputProtected/DSInputProtected.js.map +1 -1
  513. package/esm/InputProtected/index.js +2 -6
  514. package/esm/InputProtected/index.js.map +1 -1
  515. package/esm/InputProtected/options.js.map +1 -1
  516. package/esm/MenuItem/components/MenuItem/index.js +43 -0
  517. package/esm/MenuItem/components/MenuItem/index.js.map +1 -0
  518. package/esm/MenuItem/components/MenuItem/styled.js +8 -0
  519. package/esm/MenuItem/components/MenuItem/styled.js.map +1 -0
  520. package/esm/MenuItem/components/MultiMenuItem/MultiMenuItem.js +56 -0
  521. package/esm/MenuItem/components/MultiMenuItem/MultiMenuItem.js.map +1 -0
  522. package/esm/MenuItem/components/MultiMenuItem/styled.js +8 -0
  523. package/esm/MenuItem/components/MultiMenuItem/styled.js.map +1 -0
  524. package/esm/MenuItem/components/Section/index.js +21 -0
  525. package/esm/MenuItem/components/Section/index.js.map +1 -0
  526. package/esm/MenuItem/components/Section/props.js +11 -0
  527. package/esm/MenuItem/components/Section/props.js.map +1 -0
  528. package/esm/MenuItem/components/Section/styled.js +18 -0
  529. package/esm/MenuItem/components/Section/styled.js.map +1 -0
  530. package/esm/MenuItem/components/Separator/index.js +10 -0
  531. package/esm/MenuItem/components/Separator/index.js.map +1 -0
  532. package/esm/MenuItem/components/Separator/styled.js +18 -0
  533. package/esm/MenuItem/components/Separator/styled.js.map +1 -0
  534. package/esm/MenuItem/components/SingleMenuItem/SingleMenuItem.js +55 -0
  535. package/esm/MenuItem/components/SingleMenuItem/SingleMenuItem.js.map +1 -0
  536. package/esm/MenuItem/components/SingleMenuItem/styled.js +11 -0
  537. package/esm/MenuItem/components/SingleMenuItem/styled.js.map +1 -0
  538. package/esm/MenuItem/components/SubmenuItem/index.js +110 -0
  539. package/esm/MenuItem/components/SubmenuItem/index.js.map +1 -0
  540. package/esm/MenuItem/components/SubmenuItem/styled.js +15 -0
  541. package/esm/MenuItem/components/SubmenuItem/styled.js.map +1 -0
  542. package/esm/MenuItem/components/index.js +31 -0
  543. package/esm/MenuItem/components/index.js.map +1 -0
  544. package/esm/MenuItem/components/styled.js +44 -0
  545. package/esm/MenuItem/components/styled.js.map +1 -0
  546. package/esm/MenuItem/index.js +31 -0
  547. package/esm/MenuItem/index.js.map +1 -0
  548. package/esm/MenuItem/props.js +21 -0
  549. package/esm/MenuItem/props.js.map +1 -0
  550. package/esm/RadioGroup/DSRadioGroup.js +3 -3
  551. package/esm/RadioGroup/index.js +3 -3
  552. package/esm/RadioGroup/props.js +1 -1
  553. package/esm/SearchBox/DSSearchBox.js +3 -5
  554. package/esm/SearchBox/DSSearchBox.js.map +1 -1
  555. package/esm/SearchBox/NavSearchBox.js +2 -6
  556. package/esm/SearchBox/NavSearchBox.js.map +1 -1
  557. package/esm/SearchBox/SearchBoxToggle.js +3 -5
  558. package/esm/SearchBox/SearchBoxToggle.js.map +1 -1
  559. package/esm/SearchBox/index.js +2 -6
  560. package/esm/SearchBox/index.js.map +1 -1
  561. package/esm/SearchBox/styled.js +1 -1
  562. package/esm/SearchBox/useSearch.js +1 -1
  563. package/esm/SearchBox/useSearch.js.map +1 -1
  564. package/esm/SearchBox/withSearchable.js +1 -1
  565. package/esm/SearchBox/withSearchable.js.map +1 -1
  566. package/esm/TextBox/DSTextBox.js +1 -1
  567. package/esm/TextBox/index.js +1 -1
  568. package/esm/TimeInput/DSTimeInput.js +3 -4
  569. package/esm/TimeInput/DSTimeInput.js.map +1 -1
  570. package/esm/TimeInput/TimeInputImpl.js +2 -3
  571. package/esm/TimeInput/TimeInputImpl.js.map +1 -1
  572. package/esm/TimeInput/TimeInputs.js +2 -3
  573. package/esm/TimeInput/TimeInputs.js.map +1 -1
  574. package/esm/TimeInput/index.js +3 -4
  575. package/esm/TimeInput/index.js.map +1 -1
  576. package/esm/TimeInput/utils.js +2 -3
  577. package/esm/TimeInput/utils.js.map +1 -1
  578. package/esm/Toggle/DSToggle.js +2 -2
  579. package/esm/Toggle/DSToggleImpl.js +2 -2
  580. package/esm/Toggle/DSToggleRender.js +1 -1
  581. package/esm/Toggle/DSToggleRender.js.map +1 -1
  582. package/esm/Toggle/index.js +2 -2
  583. package/esm/Toggle/props.js +1 -1
  584. package/esm/index.js +120 -70
  585. package/esm/index.js.map +1 -1
  586. package/esm/{prop-types-cc01d273.js → prop-types-45aa1e9c.js} +2 -2
  587. package/esm/{prop-types-cc01d273.js.map → prop-types-45aa1e9c.js.map} +1 -1
  588. package/esm/{utils-0a7eb302.js → utils-ced363ec.js} +2 -3
  589. package/esm/utils-ced363ec.js.map +1 -0
  590. package/package.json +17 -17
  591. package/cjs/utils-328f60e2.js.map +0 -1
  592. package/esm/utils-0a7eb302.js.map +0 -1
@@ -0,0 +1,76 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
6
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
7
+ var React = require('react');
8
+ var ComboBox_v3_utils_hooks_useOnElementResize = require('../../utils/hooks/useOnElementResize.js');
9
+ var ComboBox_v3_ComboBoxCTX = require('../../ComboBoxCTX.js');
10
+
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+
13
+ var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
14
+ var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
15
+
16
+ var getGroupedPillWidth = function getGroupedPillWidth(remainingPills) {
17
+ if (remainingPills === 0) return 0;
18
+ var digits = remainingPills.toString().length;
19
+ return 8 * (digits - 1) + 31;
20
+ };
21
+
22
+ var useGroupPills = function useGroupPills(pillGroupRef) {
23
+ var _useContext = React.useContext(ComboBox_v3_ComboBoxCTX.ComboBoxContext),
24
+ selectedValues = _useContext.props.selectedValues,
25
+ selectedOptionsRef = _useContext.selectedOptionsRef,
26
+ controlsWrapperRef = _useContext.controlsWrapperRef;
27
+
28
+ var multiSelectedValues = selectedValues;
29
+
30
+ var _useState = React.useState(multiSelectedValues.length),
31
+ _useState2 = _slicedToArray__default['default'](_useState, 2),
32
+ pillsToShow = _useState2[0],
33
+ setPillsToShow = _useState2[1];
34
+
35
+ var _useOnElementResize = ComboBox_v3_utils_hooks_useOnElementResize.useOnElementResize(controlsWrapperRef),
36
+ width = _useOnElementResize.width;
37
+
38
+ React.useEffect(function () {
39
+ if (multiSelectedValues.length !== pillsToShow) {
40
+ setPillsToShow(multiSelectedValues.length);
41
+ } // eslint-disable-next-line react-hooks/exhaustive-deps
42
+
43
+ }, [multiSelectedValues.length, width]);
44
+ React.useLayoutEffect(function () {
45
+ if (selectedOptionsRef.current) {
46
+ pillGroupRef.current.style.width = 'max-content';
47
+ var lastPillFit = -1;
48
+ var currentWidth = 0;
49
+ var referenceWidth = selectedOptionsRef.current.offsetWidth;
50
+
51
+ var pills = _toConsumableArray__default['default'](selectedOptionsRef.current.querySelectorAll('.ds-pill-wrapper-removable'));
52
+
53
+ var pillsWidth = pills.map(function (pill) {
54
+ return pill === null || pill === void 0 ? void 0 : pill.offsetWidth;
55
+ });
56
+ pillsWidth.forEach(function (pillWidth, idx) {
57
+ currentWidth += pillWidth;
58
+
59
+ if (currentWidth + getGroupedPillWidth(multiSelectedValues.length - idx - 1) <= referenceWidth) {
60
+ lastPillFit = idx;
61
+ }
62
+ });
63
+ var nextPillsToShow = lastPillFit + 1;
64
+
65
+ if (nextPillsToShow !== pillsToShow) {
66
+ setPillsToShow(nextPillsToShow);
67
+ }
68
+
69
+ pillGroupRef.current.style.width = 'fit-content';
70
+ }
71
+ }, [selectedOptionsRef, multiSelectedValues, pillsToShow, pillGroupRef, width]);
72
+ return pillsToShow;
73
+ };
74
+
75
+ exports.useGroupPills = useGroupPills;
76
+ //# sourceMappingURL=useGroupPills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGroupPills.js","sources":["../../../../../../src/ComboBox/v3/parts/multi-selected-values-container/useGroupPills.tsx"],"sourcesContent":["import React, { useContext, useEffect, useState, useLayoutEffect } from 'react';\nimport { useOnElementResize } from '../../utils/hooks/useOnElementResize';\nimport ComboBoxContext from '../../ComboBoxCTX';\nimport { CBOptionT } from '../../index.d';\n\nconst getGroupedPillWidth = (remainingPills: number): number => {\n if (remainingPills === 0) return 0;\n const digits = remainingPills.toString().length;\n return 8 * (digits - 1) + 31;\n};\nconst useGroupPills = (pillGroupRef: React.MutableRefObject<HTMLDivElement>): number => {\n const {\n props: { selectedValues },\n selectedOptionsRef,\n controlsWrapperRef,\n } = useContext(ComboBoxContext);\n\n const multiSelectedValues = selectedValues as CBOptionT[];\n const [pillsToShow, setPillsToShow] = useState(multiSelectedValues.length);\n const { width } = useOnElementResize(controlsWrapperRef);\n useEffect(() => {\n if (multiSelectedValues.length !== pillsToShow) {\n setPillsToShow(multiSelectedValues.length);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [multiSelectedValues.length, width]);\n\n useLayoutEffect(() => {\n if (selectedOptionsRef.current) {\n pillGroupRef.current.style.width = 'max-content';\n let lastPillFit = -1;\n let currentWidth = 0;\n const referenceWidth = selectedOptionsRef.current.offsetWidth;\n const pills: HTMLDivElement[] = [\n ...selectedOptionsRef.current.querySelectorAll('.ds-pill-wrapper-removable'),\n ] as HTMLDivElement[];\n const pillsWidth = pills.map((pill) => pill?.offsetWidth);\n pillsWidth.forEach((pillWidth, idx) => {\n currentWidth += pillWidth;\n if (currentWidth + getGroupedPillWidth(multiSelectedValues.length - idx - 1) <= referenceWidth) {\n lastPillFit = idx;\n }\n });\n const nextPillsToShow = lastPillFit + 1;\n\n if (nextPillsToShow !== pillsToShow) {\n setPillsToShow(nextPillsToShow);\n }\n pillGroupRef.current.style.width = 'fit-content';\n }\n }, [selectedOptionsRef, multiSelectedValues, pillsToShow, pillGroupRef, width]);\n\n return pillsToShow;\n};\n\nexport { useGroupPills };\n"],"names":["getGroupedPillWidth","remainingPills","digits","toString","length","useGroupPills","pillGroupRef","useContext","ComboBoxContext","selectedValues","props","selectedOptionsRef","controlsWrapperRef","multiSelectedValues","useState","pillsToShow","setPillsToShow","useOnElementResize","width","useEffect","useLayoutEffect","current","style","lastPillFit","currentWidth","referenceWidth","offsetWidth","pills","querySelectorAll","pillsWidth","map","pill","forEach","pillWidth","idx","nextPillsToShow"],"mappings":";;;;;;;;;;;;;;;AAKA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,cAAD,EAAoC;AAC9D,MAAIA,cAAc,KAAK,CAAvB,EAA0B,OAAO,CAAP;AAC1B,MAAMC,MAAM,GAAGD,cAAc,CAACE,QAAf,GAA0BC,MAAzC;AACA,SAAO,KAAKF,MAAM,GAAG,CAAd,IAAmB,EAA1B;AACD,CAJD;;IAKMG,aAAa,GAAG,SAAhBA,aAAgB,CAACC,YAAD,EAAkE;AACtF,oBAIIC,gBAAU,CAACC,uCAAD,CAJd;AAAA,MACWC,cADX,eACEC,KADF,CACWD,cADX;AAAA,MAEEE,kBAFF,eAEEA,kBAFF;AAAA,MAGEC,kBAHF,eAGEA,kBAHF;;AAMA,MAAMC,mBAAmB,GAAGJ,cAA5B;;AACA,kBAAsCK,cAAQ,CAACD,mBAAmB,CAACT,MAArB,CAA9C;AAAA;AAAA,MAAOW,WAAP;AAAA,MAAoBC,cAApB;;AACA,4BAAkBC,6DAAkB,CAACL,kBAAD,CAApC;AAAA,MAAQM,KAAR,uBAAQA,KAAR;;AACAC,EAAAA,eAAS,CAAC,YAAM;AACd,QAAIN,mBAAmB,CAACT,MAApB,KAA+BW,WAAnC,EAAgD;AAC9CC,MAAAA,cAAc,CAACH,mBAAmB,CAACT,MAArB,CAAd;AACD,KAHa;;AAKf,GALQ,EAKN,CAACS,mBAAmB,CAACT,MAArB,EAA6Bc,KAA7B,CALM,CAAT;AAOAE,EAAAA,qBAAe,CAAC,YAAM;AACpB,QAAIT,kBAAkB,CAACU,OAAvB,EAAgC;AAC9Bf,MAAAA,YAAY,CAACe,OAAb,CAAqBC,KAArB,CAA2BJ,KAA3B,GAAmC,aAAnC;AACA,UAAIK,WAAW,GAAG,CAAC,CAAnB;AACA,UAAIC,YAAY,GAAG,CAAnB;AACA,UAAMC,cAAc,GAAGd,kBAAkB,CAACU,OAAnB,CAA2BK,WAAlD;;AACA,UAAMC,KAAuB,0CACxBhB,kBAAkB,CAACU,OAAnB,CAA2BO,gBAA3B,CAA4C,4BAA5C,CADwB,CAA7B;;AAGA,UAAMC,UAAU,GAAGF,KAAK,CAACG,GAAN,CAAU,UAACC,IAAD;AAAA,eAAUA,IAAV,aAAUA,IAAV,uBAAUA,IAAI,CAAEL,WAAhB;AAAA,OAAV,CAAnB;AACAG,MAAAA,UAAU,CAACG,OAAX,CAAmB,UAACC,SAAD,EAAYC,GAAZ,EAAoB;AACrCV,QAAAA,YAAY,IAAIS,SAAhB;;AACA,YAAIT,YAAY,GAAGxB,mBAAmB,CAACa,mBAAmB,CAACT,MAApB,GAA6B8B,GAA7B,GAAmC,CAApC,CAAlC,IAA4ET,cAAhF,EAAgG;AAC9FF,UAAAA,WAAW,GAAGW,GAAd;AACD;AACF,OALD;AAMA,UAAMC,eAAe,GAAGZ,WAAW,GAAG,CAAtC;;AAEA,UAAIY,eAAe,KAAKpB,WAAxB,EAAqC;AACnCC,QAAAA,cAAc,CAACmB,eAAD,CAAd;AACD;;AACD7B,MAAAA,YAAY,CAACe,OAAb,CAAqBC,KAArB,CAA2BJ,KAA3B,GAAmC,aAAnC;AACD;AACF,GAvBc,EAuBZ,CAACP,kBAAD,EAAqBE,mBAArB,EAA0CE,WAA1C,EAAuDT,YAAvD,EAAqEY,KAArE,CAvBY,CAAf;AAyBA,SAAOH,WAAP;AACD;;;;"}
@@ -0,0 +1,27 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var DSTruncatedTooltipText = require('@elliemae/ds-truncated-tooltip-text');
7
+ var ComboBox_v3_ComboBoxCTX = require('../../ComboBoxCTX.js');
8
+ var ComboBox_v3_parts_singleSelectedValueContainer_styled = require('./styled.js');
9
+ require('styled-components');
10
+
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+
13
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
+
15
+ var SingleSelectedValueContainer = function SingleSelectedValueContainer() {
16
+ var _useContext = React.useContext(ComboBox_v3_ComboBoxCTX.ComboBoxContext),
17
+ selectedValues = _useContext.props.selectedValues,
18
+ showSelectedValue = _useContext.showSelectedValue;
19
+
20
+ var singleSelectedValue = selectedValues;
21
+ return /*#__PURE__*/React__default['default'].createElement(ComboBox_v3_parts_singleSelectedValueContainer_styled.StyledSingleSelectedValue, null, showSelectedValue ? /*#__PURE__*/React__default['default'].createElement(DSTruncatedTooltipText.SimpleTruncatedTooltipText, {
22
+ value: singleSelectedValue === null || singleSelectedValue === void 0 ? void 0 : singleSelectedValue.label
23
+ }) : null);
24
+ };
25
+
26
+ exports.SingleSelectedValueContainer = SingleSelectedValueContainer;
27
+ //# sourceMappingURL=SingleSelectedValueContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SingleSelectedValueContainer.js","sources":["../../../../../../src/ComboBox/v3/parts/single-selected-value-container/SingleSelectedValueContainer.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-truncated-tooltip-text';\n\nimport { CBOptionT } from '../../index.d';\nimport ComboBoxContext from '../../ComboBoxCTX';\n\nimport { StyledSingleSelectedValue } from './styled';\nconst SingleSelectedValueContainer = (): JSX.Element => {\n const {\n props: { selectedValues },\n showSelectedValue,\n } = useContext(ComboBoxContext);\n\n const singleSelectedValue = selectedValues as CBOptionT;\n return (\n <StyledSingleSelectedValue>\n {showSelectedValue ? <SimpleTruncatedTooltipText value={singleSelectedValue?.label} /> : null}\n </StyledSingleSelectedValue>\n );\n};\n\nexport { SingleSelectedValueContainer };\n"],"names":["SingleSelectedValueContainer","useContext","ComboBoxContext","selectedValues","props","showSelectedValue","singleSelectedValue","React","StyledSingleSelectedValue","SimpleTruncatedTooltipText","label"],"mappings":";;;;;;;;;;;;;;IAOMA,4BAA4B,GAAG,SAA/BA,4BAA+B,GAAmB;AACtD,oBAGIC,gBAAU,CAACC,uCAAD,CAHd;AAAA,MACWC,cADX,eACEC,KADF,CACWD,cADX;AAAA,MAEEE,iBAFF,eAEEA,iBAFF;;AAKA,MAAMC,mBAAmB,GAAGH,cAA5B;AACA,sBACEI,wCAACC,+EAAD,QACGH,iBAAiB,gBAAGE,wCAACE,iDAAD;AAA4B,IAAA,KAAK,EAAEH,mBAAF,aAAEA,mBAAF,uBAAEA,mBAAmB,CAAEI;AAAxD,IAAH,GAAuE,IAD3F,CADF;AAKD;;;;"}
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var ComboBox_v3_parts_singleSelectedValueContainer_SingleSelectedValueContainer = require('./SingleSelectedValueContainer.js');
6
+ require('react');
7
+ require('@elliemae/ds-truncated-tooltip-text');
8
+ require('../../ComboBoxCTX.js');
9
+ require('./styled.js');
10
+ require('styled-components');
11
+
12
+
13
+
14
+ exports.SingleSelectedValueContainer = ComboBox_v3_parts_singleSelectedValueContainer_SingleSelectedValueContainer.SingleSelectedValueContainer;
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var styled = require('styled-components');
6
+
7
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
+
9
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
10
+
11
+ var StyledSingleSelectedValue = /*#__PURE__*/styled__default['default'].div.withConfig({
12
+ componentId: "sc-ui9n59-0"
13
+ })(["width:100%;display:flex;align-items:center;"]);
14
+
15
+ exports.StyledSingleSelectedValue = StyledSingleSelectedValue;
16
+ //# sourceMappingURL=styled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styled.js","sources":["../../../../../../src/ComboBox/v3/parts/single-selected-value-container/styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nexport const StyledSingleSelectedValue = styled.div`\n width: 100%;\n display: flex;\n align-items: center;\n`;\n"],"names":["StyledSingleSelectedValue","styled","div"],"mappings":";;;;;;;;;;IAEaA,yBAAyB,gBAAGC,0BAAM,CAACC,GAAV;AAAA;AAAA;;;;"}
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var reactDesc = require('react-desc');
6
+
7
+ var propTypes = {
8
+ placeholder: reactDesc.PropTypes.string.description('').defaultValue(''),
9
+ options: reactDesc.PropTypes.array.description('').defaultValue([]),
10
+ selectedValues: reactDesc.PropTypes.oneOfType([reactDesc.PropTypes.arrayOf(reactDesc.PropTypes.object), reactDesc.PropTypes.object]).description(''),
11
+ autoFocus: reactDesc.PropTypes.bool.description('').defaultValue('false'),
12
+ hasError: reactDesc.PropTypes.bool.description('').defaultValue('false'),
13
+ onChange: reactDesc.PropTypes.func.description('').defaultValue(''),
14
+ onSelectAll: reactDesc.PropTypes.func.description('').defaultValue(''),
15
+ onFilter: reactDesc.PropTypes.func.description('').defaultValue(''),
16
+ onCreate: reactDesc.PropTypes.func.description('').defaultValue(''),
17
+ onClear: reactDesc.PropTypes.func.description('').defaultValue(''),
18
+ onClearAll: reactDesc.PropTypes.func.description('').defaultValue('')
19
+ };
20
+
21
+ exports.propTypes = propTypes;
22
+ //# sourceMappingURL=propTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"propTypes.js","sources":["../../../../src/ComboBox/v3/propTypes.tsx"],"sourcesContent":["import { PropTypes } from 'react-desc';\n\nexport const propTypes = {\n placeholder: PropTypes.string.description('').defaultValue(''),\n options: PropTypes.array.description('').defaultValue([]),\n selectedValues: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.object), PropTypes.object]).description(''),\n autoFocus: PropTypes.bool.description('').defaultValue('false'),\n hasError: PropTypes.bool.description('').defaultValue('false'),\n onChange: PropTypes.func.description('').defaultValue(''),\n onSelectAll: PropTypes.func.description('').defaultValue(''),\n onFilter: PropTypes.func.description('').defaultValue(''),\n onCreate: PropTypes.func.description('').defaultValue(''),\n onClear: PropTypes.func.description('').defaultValue(''),\n onClearAll: PropTypes.func.description('').defaultValue(''),\n};\n"],"names":["propTypes","placeholder","PropTypes","string","description","defaultValue","options","array","selectedValues","oneOfType","arrayOf","object","autoFocus","bool","hasError","onChange","func","onSelectAll","onFilter","onCreate","onClear","onClearAll"],"mappings":";;;;;;IAEaA,SAAS,GAAG;AACvBC,EAAAA,WAAW,EAAEC,mBAAS,CAACC,MAAV,CAAiBC,WAAjB,CAA6B,EAA7B,EAAiCC,YAAjC,CAA8C,EAA9C,CADU;AAEvBC,EAAAA,OAAO,EAAEJ,mBAAS,CAACK,KAAV,CAAgBH,WAAhB,CAA4B,EAA5B,EAAgCC,YAAhC,CAA6C,EAA7C,CAFc;AAGvBG,EAAAA,cAAc,EAAEN,mBAAS,CAACO,SAAV,CAAoB,CAACP,mBAAS,CAACQ,OAAV,CAAkBR,mBAAS,CAACS,MAA5B,CAAD,EAAsCT,mBAAS,CAACS,MAAhD,CAApB,EAA6EP,WAA7E,CAAyF,EAAzF,CAHO;AAIvBQ,EAAAA,SAAS,EAAEV,mBAAS,CAACW,IAAV,CAAeT,WAAf,CAA2B,EAA3B,EAA+BC,YAA/B,CAA4C,OAA5C,CAJY;AAKvBS,EAAAA,QAAQ,EAAEZ,mBAAS,CAACW,IAAV,CAAeT,WAAf,CAA2B,EAA3B,EAA+BC,YAA/B,CAA4C,OAA5C,CALa;AAMvBU,EAAAA,QAAQ,EAAEb,mBAAS,CAACc,IAAV,CAAeZ,WAAf,CAA2B,EAA3B,EAA+BC,YAA/B,CAA4C,EAA5C,CANa;AAOvBY,EAAAA,WAAW,EAAEf,mBAAS,CAACc,IAAV,CAAeZ,WAAf,CAA2B,EAA3B,EAA+BC,YAA/B,CAA4C,EAA5C,CAPU;AAQvBa,EAAAA,QAAQ,EAAEhB,mBAAS,CAACc,IAAV,CAAeZ,WAAf,CAA2B,EAA3B,EAA+BC,YAA/B,CAA4C,EAA5C,CARa;AASvBc,EAAAA,QAAQ,EAAEjB,mBAAS,CAACc,IAAV,CAAeZ,WAAf,CAA2B,EAA3B,EAA+BC,YAA/B,CAA4C,EAA5C,CATa;AAUvBe,EAAAA,OAAO,EAAElB,mBAAS,CAACc,IAAV,CAAeZ,WAAf,CAA2B,EAA3B,EAA+BC,YAA/B,CAA4C,EAA5C,CAVc;AAWvBgB,EAAAA,UAAU,EAAEnB,mBAAS,CAACc,IAAV,CAAeZ,WAAf,CAA2B,EAA3B,EAA+BC,YAA/B,CAA4C,EAA5C;AAXW;;;;"}
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var basicOptions = [{
6
+ dsId: '1',
7
+ type: 'option',
8
+ value: 'id_1',
9
+ label: 'Luke Skywalker too long this text is super long'
10
+ }, {
11
+ dsId: '2',
12
+ type: 'option',
13
+ value: 'id_2',
14
+ label: 'Obi-Wan Kenobi'
15
+ }, {
16
+ dsId: '3',
17
+ type: 'option',
18
+ value: 'id_3',
19
+ label: 'Padme Amidala'
20
+ }];
21
+
22
+ exports.basicOptions = basicOptions;
23
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sources":["../../../../../src/ComboBox/v3/tests/utils.tsx"],"sourcesContent":["export const basicOptions = [\n {\n dsId: '1',\n type: 'option',\n value: 'id_1',\n label: 'Luke Skywalker too long this text is super long',\n },\n {\n dsId: '2',\n type: 'option',\n value: 'id_2',\n label: 'Obi-Wan Kenobi',\n },\n {\n dsId: '3',\n type: 'option',\n value: 'id_3',\n label: 'Padme Amidala',\n },\n];\n"],"names":["basicOptions","dsId","type","value","label"],"mappings":";;;;IAAaA,YAAY,GAAG,CAC1B;AACEC,EAAAA,IAAI,EAAE,GADR;AAEEC,EAAAA,IAAI,EAAE,QAFR;AAGEC,EAAAA,KAAK,EAAE,MAHT;AAIEC,EAAAA,KAAK,EAAE;AAJT,CAD0B,EAO1B;AACEH,EAAAA,IAAI,EAAE,GADR;AAEEC,EAAAA,IAAI,EAAE,QAFR;AAGEC,EAAAA,KAAK,EAAE,MAHT;AAIEC,EAAAA,KAAK,EAAE;AAJT,CAP0B,EAa1B;AACEH,EAAAA,IAAI,EAAE,GADR;AAEEC,EAAAA,IAAI,EAAE,QAFR;AAGEC,EAAAA,KAAK,EAAE,MAHT;AAIEC,EAAAA,KAAK,EAAE;AAJT,CAb0B;;;;"}
@@ -0,0 +1,153 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var ComboBox_v3_ComboBoxCTX = require('../../ComboBoxCTX.js');
7
+ var ComboBox_v3_utils_listHelper = require('../listHelper.js');
8
+
9
+ /* eslint-disable max-lines */
10
+ var useKeyboardNavigation = function useKeyboardNavigation() {
11
+ var _useContext = React.useContext(ComboBox_v3_ComboBoxCTX.ComboBoxContext),
12
+ _useContext$props = _useContext.props,
13
+ inline = _useContext$props.inline,
14
+ onChange = _useContext$props.onChange,
15
+ onCreate = _useContext$props.onCreate,
16
+ options = _useContext$props.options,
17
+ selectedValues = _useContext$props.selectedValues,
18
+ onFilter = _useContext$props.onFilter,
19
+ setShowPopover = _useContext.setShowPopover,
20
+ showPopover = _useContext.showPopover,
21
+ setShowSelectedValue = _useContext.setShowSelectedValue,
22
+ focusOptionIdx = _useContext.focusOptionIdx,
23
+ inputRef = _useContext.inputRef,
24
+ setCurrentOption = _useContext.setCurrentOption;
25
+
26
+ var multiple = Array.isArray(selectedValues);
27
+ var selectableOptions = ComboBox_v3_utils_listHelper.getOptions(options);
28
+ var lastOption = selectableOptions.length - 1;
29
+ var focusOption = selectableOptions[focusOptionIdx];
30
+ React.useEffect(function () {
31
+ if (focusOptionIdx >= 0) {
32
+ var _document$querySelect;
33
+
34
+ (_document$querySelect = document.querySelector('.ds-list-item-active')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.scrollIntoView(false);
35
+ }
36
+ }, [focusOptionIdx]);
37
+ var selectOption = React.useCallback(function () {
38
+ if (multiple) {
39
+ onFilter(inputRef.current.value);
40
+ } else {
41
+ onFilter('');
42
+ inputRef.current.value = '';
43
+ setShowSelectedValue(true);
44
+ }
45
+
46
+ onChange(focusOption);
47
+ setShowPopover(multiple ? true : !showPopover);
48
+ }, [multiple, setShowPopover, showPopover, focusOption, onFilter, inputRef, setShowSelectedValue, onChange]);
49
+ var onInputKeyDown = React.useCallback(function (e) {
50
+ var targetElement = e.target; // =============================================================================
51
+ // ENTER KEY TO CREATE ELEMENTS
52
+ // =============================================================================
53
+
54
+ if (e.key === 'Enter' && onCreate && !selectableOptions.length) {
55
+ onCreate(targetElement.value);
56
+ onFilter('');
57
+ inputRef.current.value = '';
58
+ return;
59
+ } // =============================================================================
60
+ // ENTER AND SPACE KEY SELECT OPTIONS AND OPEN CLOSE THE POPOVER
61
+ // =============================================================================
62
+
63
+
64
+ if (e.keyCode === 32 && targetElement.value === '' || e.key === 'Enter') {
65
+ e.preventDefault();
66
+
67
+ if (!showPopover) {
68
+ setShowPopover(true);
69
+ } else {
70
+ selectOption();
71
+ }
72
+ } // =============================================================================
73
+ // CTRL + ENTER + MULTIPLE: SELECT AND CLOSE MENU
74
+ // =============================================================================
75
+
76
+
77
+ if (e.key === 'Enter' && e.ctrlKey && multiple) {
78
+ setShowPopover(false);
79
+ } // =============================================================================
80
+ // ARROWS UP AND DOWN
81
+ // =============================================================================
82
+
83
+
84
+ if (e.key === 'ArrowDown') {
85
+ if (showPopover || inline) {
86
+ setCurrentOption(function (prevState) {
87
+ return prevState === lastOption ? 0 : focusOptionIdx + 1;
88
+ });
89
+ } else {
90
+ setShowPopover(true);
91
+ setCurrentOption(0);
92
+ }
93
+ }
94
+
95
+ if (e.key === 'ArrowUp') {
96
+ if (showPopover || inline) {
97
+ setCurrentOption(function (prevState) {
98
+ return prevState === 0 ? lastOption : focusOptionIdx - 1;
99
+ });
100
+ } else {
101
+ setShowPopover(true);
102
+ setCurrentOption(lastOption);
103
+ }
104
+ } // =============================================================================
105
+ // ESCAPE
106
+ // =============================================================================
107
+
108
+
109
+ if (e.key === 'Escape' && !inline) {
110
+ setCurrentOption(0);
111
+ setShowPopover(false);
112
+ } // =============================================================================
113
+ // BACKSPACE
114
+ // =============================================================================
115
+
116
+
117
+ if (e.key === 'Backspace' && targetElement.value.length <= 0 && !inline) {
118
+ if (multiple && !targetElement.value) {
119
+ var multiSelectedValues = selectedValues;
120
+ if (multiSelectedValues.length > 0) onChange(multiSelectedValues[multiSelectedValues.length - 1]);
121
+ } else {
122
+ onChange(null);
123
+ }
124
+
125
+ onFilter('');
126
+ setShowSelectedValue(true);
127
+ } // =============================================================================
128
+ // SHIFT + TAB ON SINGLE SELECT: SELECT AND RETURN TO INPUT
129
+ // =============================================================================
130
+
131
+
132
+ if (e.key === 'Tab' && e.shiftKey && !multiple && showPopover) {
133
+ selectOption();
134
+ e.preventDefault();
135
+ } // =============================================================================
136
+ // TAB + SINGLE SELECT
137
+ // =============================================================================
138
+
139
+
140
+ if (e.key === 'Tab' && showPopover && !multiple) {
141
+ selectOption();
142
+ setShowPopover(false);
143
+ }
144
+
145
+ if (e.key === 'Tab' && inline) {
146
+ e.preventDefault();
147
+ }
148
+ }, [focusOptionIdx, selectableOptions, inputRef, lastOption, multiple, showPopover, selectedValues, inline, onChange, onCreate, onFilter, setCurrentOption, setShowPopover, setShowSelectedValue, selectOption]);
149
+ return onInputKeyDown;
150
+ };
151
+
152
+ exports.useKeyboardNavigation = useKeyboardNavigation;
153
+ //# sourceMappingURL=useKeyboardNavigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../../../src/ComboBox/v3/utils/hooks/useKeyboardNavigation.tsx"],"sourcesContent":["/* eslint-disable max-lines */\n/* eslint-disable max-depth */\n/* eslint-disable max-statements */\n/* eslint-disable complexity */\nimport { useCallback, useEffect, useContext } from 'react';\nimport { CBOptionT } from '../../index.d';\nimport ComboBoxContext from '../../ComboBoxCTX';\nimport { getOptions } from '../listHelper';\nexport const useKeyboardNavigation = (): React.KeyboardEventHandler => {\n const {\n props: { inline, onChange, onCreate, options, selectedValues, onFilter },\n setShowPopover,\n showPopover,\n setShowSelectedValue,\n focusOptionIdx,\n inputRef,\n setCurrentOption,\n } = useContext(ComboBoxContext);\n\n const multiple = Array.isArray(selectedValues);\n const selectableOptions = getOptions(options);\n const lastOption = selectableOptions.length - 1;\n const focusOption = selectableOptions[focusOptionIdx];\n\n useEffect(() => {\n if (focusOptionIdx >= 0) {\n document.querySelector('.ds-list-item-active')?.scrollIntoView(false);\n }\n }, [focusOptionIdx]);\n\n const selectOption = useCallback(() => {\n if (multiple) {\n onFilter(inputRef.current.value);\n } else {\n onFilter('');\n inputRef.current.value = '';\n setShowSelectedValue(true);\n }\n onChange(focusOption);\n setShowPopover(multiple ? true : !showPopover);\n }, [multiple, setShowPopover, showPopover, focusOption, onFilter, inputRef, setShowSelectedValue, onChange]);\n\n const onInputKeyDown = useCallback(\n (e) => {\n const targetElement = e.target as HTMLInputElement;\n // =============================================================================\n // ENTER KEY TO CREATE ELEMENTS\n // =============================================================================\n if (e.key === 'Enter' && onCreate && !selectableOptions.length) {\n onCreate(targetElement.value);\n onFilter('');\n inputRef.current.value = '';\n return;\n }\n // =============================================================================\n // ENTER AND SPACE KEY SELECT OPTIONS AND OPEN CLOSE THE POPOVER\n // =============================================================================\n if ((e.keyCode === 32 && targetElement.value === '') || e.key === 'Enter') {\n e.preventDefault();\n if (!showPopover) {\n setShowPopover(true);\n } else {\n selectOption();\n }\n }\n\n // =============================================================================\n // CTRL + ENTER + MULTIPLE: SELECT AND CLOSE MENU\n // =============================================================================\n if (e.key === 'Enter' && e.ctrlKey && multiple) {\n setShowPopover(false);\n }\n // =============================================================================\n // ARROWS UP AND DOWN\n // =============================================================================\n if (e.key === 'ArrowDown') {\n if (showPopover || inline) {\n setCurrentOption((prevState) => (prevState === lastOption ? 0 : focusOptionIdx + 1));\n } else {\n setShowPopover(true);\n setCurrentOption(0);\n }\n }\n if (e.key === 'ArrowUp') {\n if (showPopover || inline) {\n setCurrentOption((prevState) => (prevState === 0 ? lastOption : focusOptionIdx - 1));\n } else {\n setShowPopover(true);\n setCurrentOption(lastOption);\n }\n }\n // =============================================================================\n // ESCAPE\n // =============================================================================\n if (e.key === 'Escape' && !inline) {\n setCurrentOption(0);\n setShowPopover(false);\n }\n // =============================================================================\n // BACKSPACE\n // =============================================================================\n if (e.key === 'Backspace' && targetElement.value.length <= 0 && !inline) {\n if (multiple && !targetElement.value) {\n const multiSelectedValues = selectedValues as CBOptionT[];\n if (multiSelectedValues.length > 0) onChange(multiSelectedValues[multiSelectedValues.length - 1]);\n } else {\n onChange(null);\n }\n onFilter('');\n setShowSelectedValue(true);\n }\n // =============================================================================\n // SHIFT + TAB ON SINGLE SELECT: SELECT AND RETURN TO INPUT\n // =============================================================================\n if (e.key === 'Tab' && e.shiftKey && !multiple && showPopover) {\n selectOption();\n e.preventDefault();\n }\n // =============================================================================\n // TAB + SINGLE SELECT\n // =============================================================================\n if (e.key === 'Tab' && showPopover && !multiple) {\n selectOption();\n setShowPopover(false);\n }\n\n if (e.key === 'Tab' && inline) {\n e.preventDefault();\n }\n },\n [\n focusOptionIdx,\n selectableOptions,\n inputRef,\n lastOption,\n multiple,\n showPopover,\n selectedValues,\n inline,\n onChange,\n onCreate,\n onFilter,\n setCurrentOption,\n setShowPopover,\n setShowSelectedValue,\n selectOption,\n ],\n );\n\n return onInputKeyDown;\n};\n"],"names":["useKeyboardNavigation","useContext","ComboBoxContext","props","inline","onChange","onCreate","options","selectedValues","onFilter","setShowPopover","showPopover","setShowSelectedValue","focusOptionIdx","inputRef","setCurrentOption","multiple","Array","isArray","selectableOptions","getOptions","lastOption","length","focusOption","useEffect","document","querySelector","scrollIntoView","selectOption","useCallback","current","value","onInputKeyDown","e","targetElement","target","key","keyCode","preventDefault","ctrlKey","prevState","multiSelectedValues","shiftKey"],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
6
+ var React = require('react');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
11
+
12
+ // Taken and modified from https://stackoverflow.com/a/60218754
13
+
14
+ var useOnElementResize = function useOnElementResize(targetRef) {
15
+ var _targetRef$current, _targetRef$current2;
16
+
17
+ var _useState = React.useState(targetRef.current ? (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.offsetWidth : 0),
18
+ _useState2 = _slicedToArray__default['default'](_useState, 2),
19
+ width = _useState2[0],
20
+ setWidth = _useState2[1];
21
+
22
+ var _useState3 = React.useState(targetRef.current ? (_targetRef$current2 = targetRef.current) === null || _targetRef$current2 === void 0 ? void 0 : _targetRef$current2.offsetWidth : 0),
23
+ _useState4 = _slicedToArray__default['default'](_useState3, 2),
24
+ height = _useState4[0],
25
+ setHeight = _useState4[1];
26
+
27
+ var observer = React.useRef(null);
28
+ React.useEffect(function () {
29
+ function outputsize() {
30
+ var _targetRef$current3, _targetRef$current4;
31
+
32
+ setWidth((_targetRef$current3 = targetRef.current) === null || _targetRef$current3 === void 0 ? void 0 : _targetRef$current3.offsetWidth);
33
+ setHeight((_targetRef$current4 = targetRef.current) === null || _targetRef$current4 === void 0 ? void 0 : _targetRef$current4.offsetHeight);
34
+ }
35
+
36
+ observer.current = new ResizeObserver(outputsize).observe(targetRef.current);
37
+ return function () {
38
+ var _observer$current;
39
+
40
+ (_observer$current = observer.current) === null || _observer$current === void 0 ? void 0 : _observer$current.disconnect();
41
+ };
42
+ }, [targetRef]);
43
+ return React.useMemo(function () {
44
+ return {
45
+ width: width,
46
+ height: height
47
+ };
48
+ }, [width, height]);
49
+ };
50
+
51
+ exports.useOnElementResize = useOnElementResize;
52
+ //# sourceMappingURL=useOnElementResize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOnElementResize.js","sources":["../../../../../../src/ComboBox/v3/utils/hooks/useOnElementResize.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef, useMemo } from 'react';\n\n// Custom hook to track dimension of a component\n// Taken and modified from https://stackoverflow.com/a/60218754\nconst useOnElementResize = (targetRef: React.RefObject<HTMLDivElement>): Record<'width' | 'height', number> => {\n const [width, setWidth] = useState(targetRef.current ? targetRef.current?.offsetWidth : 0);\n const [height, setHeight] = useState(targetRef.current ? targetRef.current?.offsetWidth : 0);\n const observer = useRef(null);\n\n useEffect(() => {\n function outputsize() {\n setWidth(targetRef.current?.offsetWidth);\n setHeight(targetRef.current?.offsetHeight);\n }\n\n observer.current = new ResizeObserver(outputsize).observe(targetRef.current);\n\n return () => {\n observer.current?.disconnect();\n };\n }, [targetRef]);\n\n return useMemo(\n () => ({\n width,\n height,\n }),\n [width, height],\n );\n};\n\nexport { useOnElementResize };\n"],"names":["useOnElementResize","targetRef","useState","current","offsetWidth","width","setWidth","height","setHeight","observer","useRef","useEffect","outputsize","offsetHeight","ResizeObserver","observe","disconnect","useMemo"],"mappings":";;;;;;;;;;;AAGA;;IACMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,SAAD,EAAoF;AAAA;;AAC7G,kBAA0BC,cAAQ,CAACD,SAAS,CAACE,OAAV,yBAAoBF,SAAS,CAACE,OAA9B,uDAAoB,mBAAmBC,WAAvC,GAAqD,CAAtD,CAAlC;AAAA;AAAA,MAAOC,KAAP;AAAA,MAAcC,QAAd;;AACA,mBAA4BJ,cAAQ,CAACD,SAAS,CAACE,OAAV,0BAAoBF,SAAS,CAACE,OAA9B,wDAAoB,oBAAmBC,WAAvC,GAAqD,CAAtD,CAApC;AAAA;AAAA,MAAOG,MAAP;AAAA,MAAeC,SAAf;;AACA,MAAMC,QAAQ,GAAGC,YAAM,CAAC,IAAD,CAAvB;AAEAC,EAAAA,eAAS,CAAC,YAAM;AACd,aAASC,UAAT,GAAsB;AAAA;;AACpBN,MAAAA,QAAQ,wBAACL,SAAS,CAACE,OAAX,wDAAC,oBAAmBC,WAApB,CAAR;AACAI,MAAAA,SAAS,wBAACP,SAAS,CAACE,OAAX,wDAAC,oBAAmBU,YAApB,CAAT;AACD;;AAEDJ,IAAAA,QAAQ,CAACN,OAAT,GAAmB,IAAIW,cAAJ,CAAmBF,UAAnB,EAA+BG,OAA/B,CAAuCd,SAAS,CAACE,OAAjD,CAAnB;AAEA,WAAO,YAAM;AAAA;;AACX,2BAAAM,QAAQ,CAACN,OAAT,wEAAkBa,UAAlB;AACD,KAFD;AAGD,GAXQ,EAWN,CAACf,SAAD,CAXM,CAAT;AAaA,SAAOgB,aAAO,CACZ;AAAA,WAAO;AACLZ,MAAAA,KAAK,EAALA,KADK;AAELE,MAAAA,MAAM,EAANA;AAFK,KAAP;AAAA,GADY,EAKZ,CAACF,KAAD,EAAQE,MAAR,CALY,CAAd;AAOD;;;;"}
@@ -0,0 +1,51 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
6
+ var React = require('react');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
11
+
12
+ // Taken and modified from https://stackoverflow.com/a/60218754
13
+
14
+ var useDimensions = function useDimensions(targetRef) {
15
+ var queryDimension = React.useCallback(function (dimension) {
16
+ return targetRef.current ? targetRef.current[dimension] : 0;
17
+ }, []);
18
+
19
+ var _useState = React.useState(targetRef.current ? targetRef.current.offsetWidth : 0),
20
+ _useState2 = _slicedToArray__default['default'](_useState, 2),
21
+ width = _useState2[0],
22
+ setWidth = _useState2[1];
23
+
24
+ var _useState3 = React.useState(targetRef.current ? targetRef.current.offsetWidth : 0),
25
+ _useState4 = _slicedToArray__default['default'](_useState3, 2),
26
+ height = _useState4[0],
27
+ setHeight = _useState4[1];
28
+
29
+ var handleResize = React.useCallback(function () {
30
+ setWidth(queryDimension('offsetWidth'));
31
+ setHeight(queryDimension('offsetHeight'));
32
+ }, []);
33
+ React.useEffect(function () {
34
+ window.addEventListener('resize', handleResize);
35
+ return function () {
36
+ return window.removeEventListener('resize', handleResize);
37
+ };
38
+ }, []);
39
+ React.useLayoutEffect(function () {
40
+ handleResize();
41
+ }, []);
42
+ return React.useMemo(function () {
43
+ return {
44
+ width: width,
45
+ height: height
46
+ };
47
+ }, [width, height]);
48
+ };
49
+
50
+ exports.useDimensions = useDimensions;
51
+ //# sourceMappingURL=useOnWindowResize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOnWindowResize.js","sources":["../../../../../../src/ComboBox/v3/utils/hooks/useOnWindowResize.tsx"],"sourcesContent":["import { useLayoutEffect, useState, useCallback, useEffect, useMemo } from 'react';\n\n// Custom hook to track dimension of a component\n// Taken and modified from https://stackoverflow.com/a/60218754\nconst useDimensions = (targetRef) => {\n const queryDimension = useCallback((dimension) => (targetRef.current ? targetRef.current[dimension] : 0), []);\n\n const [width, setWidth] = useState(targetRef.current ? targetRef.current.offsetWidth : 0);\n const [height, setHeight] = useState(targetRef.current ? targetRef.current.offsetWidth : 0);\n\n const handleResize = useCallback(() => {\n setWidth(queryDimension('offsetWidth'));\n setHeight(queryDimension('offsetHeight'));\n }, []);\n\n useEffect(() => {\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n\n useLayoutEffect(() => {\n handleResize();\n }, []);\n\n return useMemo(\n () => ({\n width,\n height,\n }),\n [width, height],\n );\n};\n\nexport { useDimensions };\n"],"names":["useDimensions","targetRef","queryDimension","useCallback","dimension","current","useState","offsetWidth","width","setWidth","height","setHeight","handleResize","useEffect","window","addEventListener","removeEventListener","useLayoutEffect","useMemo"],"mappings":";;;;;;;;;;;AAGA;;IACMA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,SAAD,EAAe;AACnC,MAAMC,cAAc,GAAGC,iBAAW,CAAC,UAACC,SAAD;AAAA,WAAgBH,SAAS,CAACI,OAAV,GAAoBJ,SAAS,CAACI,OAAV,CAAkBD,SAAlB,CAApB,GAAmD,CAAnE;AAAA,GAAD,EAAwE,EAAxE,CAAlC;;AAEA,kBAA0BE,cAAQ,CAACL,SAAS,CAACI,OAAV,GAAoBJ,SAAS,CAACI,OAAV,CAAkBE,WAAtC,GAAoD,CAArD,CAAlC;AAAA;AAAA,MAAOC,KAAP;AAAA,MAAcC,QAAd;;AACA,mBAA4BH,cAAQ,CAACL,SAAS,CAACI,OAAV,GAAoBJ,SAAS,CAACI,OAAV,CAAkBE,WAAtC,GAAoD,CAArD,CAApC;AAAA;AAAA,MAAOG,MAAP;AAAA,MAAeC,SAAf;;AAEA,MAAMC,YAAY,GAAGT,iBAAW,CAAC,YAAM;AACrCM,IAAAA,QAAQ,CAACP,cAAc,CAAC,aAAD,CAAf,CAAR;AACAS,IAAAA,SAAS,CAACT,cAAc,CAAC,cAAD,CAAf,CAAT;AACD,GAH+B,EAG7B,EAH6B,CAAhC;AAKAW,EAAAA,eAAS,CAAC,YAAM;AACdC,IAAAA,MAAM,CAACC,gBAAP,CAAwB,QAAxB,EAAkCH,YAAlC;AACA,WAAO;AAAA,aAAME,MAAM,CAACE,mBAAP,CAA2B,QAA3B,EAAqCJ,YAArC,CAAN;AAAA,KAAP;AACD,GAHQ,EAGN,EAHM,CAAT;AAKAK,EAAAA,qBAAe,CAAC,YAAM;AACpBL,IAAAA,YAAY;AACb,GAFc,EAEZ,EAFY,CAAf;AAIA,SAAOM,aAAO,CACZ;AAAA,WAAO;AACLV,MAAAA,KAAK,EAALA,KADK;AAELE,MAAAA,MAAM,EAANA;AAFK,KAAP;AAAA,GADY,EAKZ,CAACF,KAAD,EAAQE,MAAR,CALY,CAAd;AAOD;;;;"}
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var getSelectableOptions = function getSelectableOptions(options) {
6
+ return options ? options.filter(function (option) {
7
+ return option.type === 'option' && !option.disabled;
8
+ }) : [];
9
+ };
10
+ var getOptions = function getOptions(options) {
11
+ return options ? options.filter(function (option) {
12
+ return option.type === 'option';
13
+ }) : [];
14
+ };
15
+ var isSelectedValueEmpty = function isSelectedValueEmpty(value) {
16
+ return Array.isArray(value) ? value.length === 0 : !value;
17
+ };
18
+ var isSelectedValueMultiple = function isSelectedValueMultiple(value) {
19
+ return Array.isArray(value);
20
+ };
21
+ var isSelected = function isSelected(value, activeOption) {
22
+ if (isSelectedValueMultiple(value)) {
23
+ var multiValue = value;
24
+ return multiValue.some(function (item) {
25
+ return (item === null || item === void 0 ? void 0 : item.value) === (activeOption === null || activeOption === void 0 ? void 0 : activeOption.value);
26
+ });
27
+ }
28
+
29
+ var singleValue = value;
30
+ return (singleValue === null || singleValue === void 0 ? void 0 : singleValue.value) === activeOption.value;
31
+ };
32
+
33
+ exports.getOptions = getOptions;
34
+ exports.getSelectableOptions = getSelectableOptions;
35
+ exports.isSelected = isSelected;
36
+ exports.isSelectedValueEmpty = isSelectedValueEmpty;
37
+ exports.isSelectedValueMultiple = isSelectedValueMultiple;
38
+ //# sourceMappingURL=listHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listHelper.js","sources":["../../../../../src/ComboBox/v3/utils/listHelper.tsx"],"sourcesContent":["import { CBOptionsT, CBOptionT } from '../index.d';\n\nexport const getSelectableOptions = (options: Array<CBOptionT>): Array<CBOptionT> =>\n options ? options.filter((option) => option.type === 'option' && !option.disabled) : [];\n\nexport const getOptions = (options: Array<CBOptionT>): Array<CBOptionT> =>\n options ? options.filter((option) => option.type === 'option') : [];\n\nexport const isSelectedValueEmpty = (value: CBOptionT | Array<CBOptionT>): boolean =>\n Array.isArray(value) ? value.length === 0 : !value;\n\nexport const isSelectedValueMultiple = (value: CBOptionT | Array<CBOptionT>): boolean => Array.isArray(value);\n\nexport const isSelected = (value: CBOptionsT, activeOption: CBOptionT): boolean => {\n if (isSelectedValueMultiple(value)) {\n const multiValue = value as CBOptionT[];\n return multiValue.some((item) => item?.value === activeOption?.value);\n }\n const singleValue = value as CBOptionT;\n return singleValue?.value === activeOption.value;\n};\n"],"names":["getSelectableOptions","options","filter","option","type","disabled","getOptions","isSelectedValueEmpty","value","Array","isArray","length","isSelectedValueMultiple","isSelected","activeOption","multiValue","some","item","singleValue"],"mappings":";;;;IAEaA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,OAAD;AAAA,SAClCA,OAAO,GAAGA,OAAO,CAACC,MAAR,CAAe,UAACC,MAAD;AAAA,WAAYA,MAAM,CAACC,IAAP,KAAgB,QAAhB,IAA4B,CAACD,MAAM,CAACE,QAAhD;AAAA,GAAf,CAAH,GAA8E,EADnD;AAAA;IAGvBC,UAAU,GAAG,SAAbA,UAAa,CAACL,OAAD;AAAA,SACxBA,OAAO,GAAGA,OAAO,CAACC,MAAR,CAAe,UAACC,MAAD;AAAA,WAAYA,MAAM,CAACC,IAAP,KAAgB,QAA5B;AAAA,GAAf,CAAH,GAA0D,EADzC;AAAA;IAGbG,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,KAAD;AAAA,SAClCC,KAAK,CAACC,OAAN,CAAcF,KAAd,IAAuBA,KAAK,CAACG,MAAN,KAAiB,CAAxC,GAA4C,CAACH,KADX;AAAA;IAGvBI,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACJ,KAAD;AAAA,SAAkDC,KAAK,CAACC,OAAN,CAAcF,KAAd,CAAlD;AAAA;IAE1BK,UAAU,GAAG,SAAbA,UAAa,CAACL,KAAD,EAAoBM,YAApB,EAAyD;AACjF,MAAIF,uBAAuB,CAACJ,KAAD,CAA3B,EAAoC;AAClC,QAAMO,UAAU,GAAGP,KAAnB;AACA,WAAOO,UAAU,CAACC,IAAX,CAAgB,UAACC,IAAD;AAAA,aAAU,CAAAA,IAAI,SAAJ,IAAAA,IAAI,WAAJ,YAAAA,IAAI,CAAET,KAAN,OAAgBM,YAAhB,aAAgBA,YAAhB,uBAAgBA,YAAY,CAAEN,KAA9B,CAAV;AAAA,KAAhB,CAAP;AACD;;AACD,MAAMU,WAAW,GAAGV,KAApB;AACA,SAAO,CAAAU,WAAW,SAAX,IAAAA,WAAW,WAAX,YAAAA,WAAW,CAAEV,KAAb,MAAuBM,YAAY,CAACN,KAA3C;AACD;;;;;;;;"}