ab-ui-library 1.41.1 → 1.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (572) hide show
  1. package/{RadioGroup-814fbdff.js → RadioGroup-d0af378e.js} +2 -2
  2. package/components/AdvancedTable/AdvancedPagination.js +7 -7
  3. package/components/AdvancedTable/ColumnHeader.js +3 -3
  4. package/components/AdvancedTable/ColumnSettings.js +7 -7
  5. package/components/AdvancedTable/IndeterminateCheckbox.js +5 -5
  6. package/components/AdvancedTable/Table.js +7 -7
  7. package/components/AdvancedTable/hooks/useTableControl.js +6 -6
  8. package/components/AdvancedTable/index.js +7 -7
  9. package/components/Alert/Alert.js +6 -6
  10. package/components/Alert/index.js +6 -6
  11. package/components/Avatar/Avatar.js +7 -7
  12. package/components/Avatar/AvatarGroup.js +7 -7
  13. package/components/Avatar/index.js +7 -7
  14. package/components/Button/Button.js +6 -6
  15. package/components/Button/index.js +6 -6
  16. package/components/ButtonIcon/ButtonIcon.js +6 -6
  17. package/components/ButtonIcon/index.js +6 -6
  18. package/components/CardBody/CardBody.js +6 -6
  19. package/components/CardBody/index.js +6 -6
  20. package/components/CardSelect/CardSelect.js +6 -6
  21. package/components/CardSelect/CardSelectGroup.js +6 -6
  22. package/components/CardSelect/components/CardChips.js +3 -3
  23. package/components/CardSelect/components/CardInput.js +6 -6
  24. package/components/CardSelect/components/index.js +6 -6
  25. package/components/CardSelect/index.js +6 -6
  26. package/components/Cards/CardItem.js +1 -1
  27. package/components/Cards/index.js +1 -1
  28. package/components/Checkbox/Checkbox.js +5 -5
  29. package/components/Checkbox/index.js +5 -5
  30. package/components/Chips/Chips.js +3 -3
  31. package/components/Chips/index.js +3 -3
  32. package/components/Collapse/CollapseGroup/CollapseGroup.js +5 -5
  33. package/components/Collapse/CollapseItem/CollapseItem.js +3 -3
  34. package/components/Collapse/index.js +5 -5
  35. package/components/Copy/Copy.js +6 -6
  36. package/components/Copy/index.js +6 -6
  37. package/components/Counter/Counter.js +6 -6
  38. package/components/Counter/index.js +6 -6
  39. package/components/DatePicker/CustomHeader/CustomHeader.js +7 -7
  40. package/components/DatePicker/RangeDatePicker.js +6 -6
  41. package/components/DatePicker/SimpleDatePicker.js +7 -7
  42. package/components/DatePicker/TimePicker.js +6 -6
  43. package/components/DatePicker/hooks.js +2 -2
  44. package/components/DatePicker/index.js +7 -7
  45. package/components/Empty/Empty.js +6 -6
  46. package/components/Empty/index.js +6 -6
  47. package/components/FileUpload/FileUpload.js +7 -7
  48. package/components/FileUpload/UploadItems.js +6 -6
  49. package/components/FileUpload/index.js +7 -7
  50. package/components/FormContainer/FormContainer.js +6 -6
  51. package/components/FormContainer/index.js +6 -6
  52. package/components/FormField/FormField.js +5 -5
  53. package/components/FormField/index.js +5 -5
  54. package/components/Input/Input.js +6 -6
  55. package/components/Input/InputPassword.js +6 -6
  56. package/components/Input/index.js +6 -6
  57. package/components/ItemSelect/ItemSelect.js +5 -5
  58. package/components/ItemSelect/ItemSelectGroup.js +5 -5
  59. package/components/ItemSelect/index.js +5 -5
  60. package/components/Link/Link.js +2 -2
  61. package/components/Link/index.js +2 -2
  62. package/components/Menu/Menu.js +7 -7
  63. package/components/Menu/NestedMenu.js +7 -7
  64. package/components/Menu/index.js +7 -7
  65. package/components/Modal/Modal.js +6 -6
  66. package/components/Modal/ModalConfirmation.js +6 -6
  67. package/components/Modal/index.js +6 -6
  68. package/components/More/More.js +6 -6
  69. package/components/More/index.js +6 -6
  70. package/components/MultiTextareaWithChips/MultiTextareaWithChips.d.ts +1 -1
  71. package/components/MultiTextareaWithChips/MultiTextareaWithChips.js +152 -257
  72. package/components/MultiTextareaWithChips/hooks/index.d.ts +4 -0
  73. package/components/MultiTextareaWithChips/hooks/index.js +8 -0
  74. package/components/MultiTextareaWithChips/hooks/useChipManagement.d.ts +21 -0
  75. package/components/MultiTextareaWithChips/hooks/useChipManagement.js +81 -0
  76. package/components/MultiTextareaWithChips/hooks/useChipValidation.d.ts +13 -0
  77. package/components/MultiTextareaWithChips/hooks/useChipValidation.js +65 -0
  78. package/components/MultiTextareaWithChips/hooks/useDropdownLogic.d.ts +17 -0
  79. package/components/MultiTextareaWithChips/hooks/useDropdownLogic.js +91 -0
  80. package/components/MultiTextareaWithChips/hooks/useKeyboardNavigation.d.ts +23 -0
  81. package/components/MultiTextareaWithChips/hooks/useKeyboardNavigation.js +72 -0
  82. package/components/MultiTextareaWithChips/index.d.ts +1 -1
  83. package/components/MultiTextareaWithChips/index.js +10 -7
  84. package/components/MultiTextareaWithChips/types.d.ts +25 -31
  85. package/components/OneTimePassword/OneTimePassword.js +7 -7
  86. package/components/OneTimePassword/index.js +7 -7
  87. package/components/Pagination/Pagination.js +3 -3
  88. package/components/Pagination/index.js +3 -3
  89. package/components/Popover/Popover.js +3 -3
  90. package/components/Popover/index.js +3 -3
  91. package/components/Progress/ProgressBarWrapper.js +2 -2
  92. package/components/Progress/index.js +2 -2
  93. package/components/ProgressStep/ProgressStep.js +2 -2
  94. package/components/ProgressStep/Step.js +2 -2
  95. package/components/ProgressStep/index.js +2 -2
  96. package/components/Radio/RadioGroup.js +5 -5
  97. package/components/Radio/index.js +5 -5
  98. package/components/SVGIcons/IconAdd.js +2 -2
  99. package/components/SVGIcons/IconAddCircle.js +2 -2
  100. package/components/SVGIcons/IconAddCircleFilled.js +2 -2
  101. package/components/SVGIcons/IconAddFilled.js +2 -2
  102. package/components/SVGIcons/IconAlert.js +2 -2
  103. package/components/SVGIcons/IconAlertBadge.js +2 -2
  104. package/components/SVGIcons/IconAlertBadgeFilled.js +2 -2
  105. package/components/SVGIcons/IconAlertFilled.js +2 -2
  106. package/components/SVGIcons/IconAm.js +2 -2
  107. package/components/SVGIcons/IconAmd.js +2 -2
  108. package/components/SVGIcons/IconAmdFilled.js +2 -2
  109. package/components/SVGIcons/IconApple.js +2 -2
  110. package/components/SVGIcons/IconAppsList.js +2 -2
  111. package/components/SVGIcons/IconAppsListDetail.js +2 -2
  112. package/components/SVGIcons/IconAppsListDetailFilled.js +2 -2
  113. package/components/SVGIcons/IconAppsListFilled.js +2 -2
  114. package/components/SVGIcons/IconArrowCircleDown.js +2 -2
  115. package/components/SVGIcons/IconArrowCircleDownSplit.js +2 -2
  116. package/components/SVGIcons/IconArrowDown.js +2 -2
  117. package/components/SVGIcons/IconArrowDownFilled.js +2 -2
  118. package/components/SVGIcons/IconArrowDownLeft.js +2 -2
  119. package/components/SVGIcons/IconArrowDownLeftFilled.js +2 -2
  120. package/components/SVGIcons/IconArrowDownload.js +2 -2
  121. package/components/SVGIcons/IconArrowDownloadFilled.js +2 -2
  122. package/components/SVGIcons/IconArrowEnter.js +2 -2
  123. package/components/SVGIcons/IconArrowEnterFilled.js +2 -2
  124. package/components/SVGIcons/IconArrowExit.js +2 -2
  125. package/components/SVGIcons/IconArrowExitFilled.js +2 -2
  126. package/components/SVGIcons/IconArrowExportLeftToRight.js +2 -2
  127. package/components/SVGIcons/IconArrowExportLeftToRightFilled.js +2 -2
  128. package/components/SVGIcons/IconArrowExportRightToLeft.js +2 -2
  129. package/components/SVGIcons/IconArrowExportRightToLeftFilled.js +2 -2
  130. package/components/SVGIcons/IconArrowExportUp.js +2 -2
  131. package/components/SVGIcons/IconArrowExportUpFilled.js +2 -2
  132. package/components/SVGIcons/IconArrowImport.js +2 -2
  133. package/components/SVGIcons/IconArrowImportFilled.js +2 -2
  134. package/components/SVGIcons/IconArrowLeft.js +2 -2
  135. package/components/SVGIcons/IconArrowLeftFilled.js +2 -2
  136. package/components/SVGIcons/IconArrowRepeatAll.js +2 -2
  137. package/components/SVGIcons/IconArrowRepeatAllFilled.js +2 -2
  138. package/components/SVGIcons/IconArrowReset.js +2 -2
  139. package/components/SVGIcons/IconArrowResetFilled.js +2 -2
  140. package/components/SVGIcons/IconArrowRight.js +2 -2
  141. package/components/SVGIcons/IconArrowRightFilled.js +2 -2
  142. package/components/SVGIcons/IconArrowSort.js +2 -2
  143. package/components/SVGIcons/IconArrowSortFilled.js +2 -2
  144. package/components/SVGIcons/IconArrowSwap.js +2 -2
  145. package/components/SVGIcons/IconArrowSwapFilled.js +2 -2
  146. package/components/SVGIcons/IconArrowSync.js +2 -2
  147. package/components/SVGIcons/IconArrowSyncFilled.js +2 -2
  148. package/components/SVGIcons/IconArrowUp.js +2 -2
  149. package/components/SVGIcons/IconArrowUpFilled.js +2 -2
  150. package/components/SVGIcons/IconArrowUpLeft.js +2 -2
  151. package/components/SVGIcons/IconArrowUpLeftFilled.js +2 -2
  152. package/components/SVGIcons/IconArrowUpRight.js +2 -2
  153. package/components/SVGIcons/IconArrowUpRightFilled.js +2 -2
  154. package/components/SVGIcons/IconAttach.js +2 -2
  155. package/components/SVGIcons/IconAttachFilled.js +2 -2
  156. package/components/SVGIcons/IconBadge.js +2 -2
  157. package/components/SVGIcons/IconBadgeFilled.js +2 -2
  158. package/components/SVGIcons/IconBeach.js +2 -2
  159. package/components/SVGIcons/IconBeachFilled.js +2 -2
  160. package/components/SVGIcons/IconBed.js +2 -2
  161. package/components/SVGIcons/IconBedFilled.js +2 -2
  162. package/components/SVGIcons/IconBook.js +2 -2
  163. package/components/SVGIcons/IconBookFilled.js +2 -2
  164. package/components/SVGIcons/IconBookOpen.js +2 -2
  165. package/components/SVGIcons/IconBookOpenFilled.js +2 -2
  166. package/components/SVGIcons/IconBookmark.js +2 -2
  167. package/components/SVGIcons/IconBookmarkFilled.js +2 -2
  168. package/components/SVGIcons/IconBriefcase.js +2 -2
  169. package/components/SVGIcons/IconBriefcaseFilled.js +2 -2
  170. package/components/SVGIcons/IconBroom.js +2 -2
  171. package/components/SVGIcons/IconBroomFilled.js +2 -2
  172. package/components/SVGIcons/IconBuilding.js +2 -2
  173. package/components/SVGIcons/IconBuildingBank.js +2 -2
  174. package/components/SVGIcons/IconBuildingBankFilled.js +2 -2
  175. package/components/SVGIcons/IconBuildingFilled.js +2 -2
  176. package/components/SVGIcons/IconBuildingHome.js +2 -2
  177. package/components/SVGIcons/IconBuildingHomeFilled.js +2 -2
  178. package/components/SVGIcons/IconBuildingShop.js +2 -2
  179. package/components/SVGIcons/IconBuildingShopFilled.js +2 -2
  180. package/components/SVGIcons/IconBulletListAdd.js +2 -2
  181. package/components/SVGIcons/IconBulletListAddFilled.js +2 -2
  182. package/components/SVGIcons/IconCalculator.js +2 -2
  183. package/components/SVGIcons/IconCalculatorFilled.js +2 -2
  184. package/components/SVGIcons/IconCalendarCheckmark.js +2 -2
  185. package/components/SVGIcons/IconCalendarCheckmarkFilled.js +2 -2
  186. package/components/SVGIcons/IconCalendarClock.js +2 -2
  187. package/components/SVGIcons/IconCalendarClockFilled.js +2 -2
  188. package/components/SVGIcons/IconCalendarDay.js +2 -2
  189. package/components/SVGIcons/IconCalendarDayFilled.js +2 -2
  190. package/components/SVGIcons/IconCalendarLeft.js +2 -2
  191. package/components/SVGIcons/IconCalendarLeftFilled.js +2 -2
  192. package/components/SVGIcons/IconCalendarRight.js +2 -2
  193. package/components/SVGIcons/IconCalendarRightFilled.js +2 -2
  194. package/components/SVGIcons/IconCall.js +2 -2
  195. package/components/SVGIcons/IconCallFilled.js +2 -2
  196. package/components/SVGIcons/IconCameraDome.js +2 -2
  197. package/components/SVGIcons/IconCameraDomeFilled.js +2 -2
  198. package/components/SVGIcons/IconCard.js +2 -2
  199. package/components/SVGIcons/IconCardFilled.js +2 -2
  200. package/components/SVGIcons/IconCaretDown.js +2 -2
  201. package/components/SVGIcons/IconCaretDownFilled.js +2 -2
  202. package/components/SVGIcons/IconCaretDownRight.js +2 -2
  203. package/components/SVGIcons/IconCaretDownRightFilled.js +2 -2
  204. package/components/SVGIcons/IconCaretLeft.js +2 -2
  205. package/components/SVGIcons/IconCaretLeftFilled.js +2 -2
  206. package/components/SVGIcons/IconCaretRight.js +2 -2
  207. package/components/SVGIcons/IconCaretRightFilled.js +2 -2
  208. package/components/SVGIcons/IconCaretUp.js +2 -2
  209. package/components/SVGIcons/IconCaretUpFilled.js +2 -2
  210. package/components/SVGIcons/IconChat.js +2 -2
  211. package/components/SVGIcons/IconChatFilled.js +2 -2
  212. package/components/SVGIcons/IconChatMultiple.js +2 -2
  213. package/components/SVGIcons/IconChatMultipleFilled.js +2 -2
  214. package/components/SVGIcons/IconCheckboxArrowRight.js +2 -2
  215. package/components/SVGIcons/IconCheckboxArrowRightFilled.js +2 -2
  216. package/components/SVGIcons/IconCheckmark.js +2 -2
  217. package/components/SVGIcons/IconCheckmarkCircle.js +2 -2
  218. package/components/SVGIcons/IconCheckmarkCircleFilled.js +2 -2
  219. package/components/SVGIcons/IconCheckmarkFilled.js +2 -2
  220. package/components/SVGIcons/IconCheckmarkStarburst.js +2 -2
  221. package/components/SVGIcons/IconCheckmarkStarburstFilled.js +2 -2
  222. package/components/SVGIcons/IconChevronDoubleLeft.js +2 -2
  223. package/components/SVGIcons/IconChevronDoubleLeftFilled.js +2 -2
  224. package/components/SVGIcons/IconChevronDoubleRight.js +2 -2
  225. package/components/SVGIcons/IconChevronDoubleRightFilled.js +2 -2
  226. package/components/SVGIcons/IconChevronDown.js +2 -2
  227. package/components/SVGIcons/IconChevronDownFilled.js +2 -2
  228. package/components/SVGIcons/IconChevronLeft.js +2 -2
  229. package/components/SVGIcons/IconChevronLeftFilled.js +2 -2
  230. package/components/SVGIcons/IconChevronRight.js +2 -2
  231. package/components/SVGIcons/IconChevronRightFilled.js +2 -2
  232. package/components/SVGIcons/IconChevronUp.js +2 -2
  233. package/components/SVGIcons/IconChevronUpDown.js +2 -2
  234. package/components/SVGIcons/IconChevronUpDownFilled.js +2 -2
  235. package/components/SVGIcons/IconChevronUpFilled.js +2 -2
  236. package/components/SVGIcons/IconCircleOff.js +2 -2
  237. package/components/SVGIcons/IconCircleOffFilled.js +2 -2
  238. package/components/SVGIcons/IconClock.js +2 -2
  239. package/components/SVGIcons/IconClockDismiss.js +2 -2
  240. package/components/SVGIcons/IconClockDismissFilled.js +2 -2
  241. package/components/SVGIcons/IconClockFilled.js +2 -2
  242. package/components/SVGIcons/IconColor.js +2 -2
  243. package/components/SVGIcons/IconColorFilled.js +2 -2
  244. package/components/SVGIcons/IconComment.js +2 -2
  245. package/components/SVGIcons/IconCommentFilled.js +2 -2
  246. package/components/SVGIcons/IconCompareCar.js +2 -2
  247. package/components/SVGIcons/IconCompareCarFilled.js +2 -2
  248. package/components/SVGIcons/IconContractCard.js +2 -2
  249. package/components/SVGIcons/IconContractCardFilled.js +2 -2
  250. package/components/SVGIcons/IconCopy.js +2 -2
  251. package/components/SVGIcons/IconCopyFilled.js +2 -2
  252. package/components/SVGIcons/IconCubeTree.js +2 -2
  253. package/components/SVGIcons/IconCubeTreeFilled.js +2 -2
  254. package/components/SVGIcons/IconDatabase.js +2 -2
  255. package/components/SVGIcons/IconDatabaseFilled.js +2 -2
  256. package/components/SVGIcons/IconDelete.js +2 -2
  257. package/components/SVGIcons/IconDeleteFilled.js +2 -2
  258. package/components/SVGIcons/IconDesignIdeas.js +2 -2
  259. package/components/SVGIcons/IconDesignIdeasFilled.js +2 -2
  260. package/components/SVGIcons/IconDeviceMeetingRoom.js +2 -2
  261. package/components/SVGIcons/IconDeviceMeetingRoomFilled.js +2 -2
  262. package/components/SVGIcons/IconDismiss.js +2 -2
  263. package/components/SVGIcons/IconDismissCircle.js +2 -2
  264. package/components/SVGIcons/IconDismissCircleFilled.js +2 -2
  265. package/components/SVGIcons/IconDismissFilled.js +2 -2
  266. package/components/SVGIcons/IconDocument.js +2 -2
  267. package/components/SVGIcons/IconDocumentBulletList.js +2 -2
  268. package/components/SVGIcons/IconDocumentBulletListFilled.js +2 -2
  269. package/components/SVGIcons/IconDocumentEdit.js +2 -2
  270. package/components/SVGIcons/IconDocumentEditFilled.js +2 -2
  271. package/components/SVGIcons/IconDocumentFilled.js +2 -2
  272. package/components/SVGIcons/IconDocumentFooter.js +2 -2
  273. package/components/SVGIcons/IconDocumentFooterFilled.js +2 -2
  274. package/components/SVGIcons/IconDocumentOnePage.js +2 -2
  275. package/components/SVGIcons/IconDocumentOnePageFilled.js +2 -2
  276. package/components/SVGIcons/IconEdit.js +2 -2
  277. package/components/SVGIcons/IconEditFilled.js +2 -2
  278. package/components/SVGIcons/IconEngine.js +2 -2
  279. package/components/SVGIcons/IconEngineFilled.js +2 -2
  280. package/components/SVGIcons/IconErrorCircle.js +2 -2
  281. package/components/SVGIcons/IconErrorCircleFilled.js +2 -2
  282. package/components/SVGIcons/IconEur.js +2 -2
  283. package/components/SVGIcons/IconEurFilled.js +2 -2
  284. package/components/SVGIcons/IconExpandUpLeft.js +2 -2
  285. package/components/SVGIcons/IconExpandUpLeftFilled.js +2 -2
  286. package/components/SVGIcons/IconExpandUpRight.js +2 -2
  287. package/components/SVGIcons/IconExpandUpRightFilled.js +2 -2
  288. package/components/SVGIcons/IconEyeOff.js +2 -2
  289. package/components/SVGIcons/IconEyeOffFilled.js +2 -2
  290. package/components/SVGIcons/IconEyeOn.js +2 -2
  291. package/components/SVGIcons/IconEyeOnFilled.js +2 -2
  292. package/components/SVGIcons/IconFacebook.js +2 -2
  293. package/components/SVGIcons/IconFilter.js +2 -2
  294. package/components/SVGIcons/IconFilterFilled.js +2 -2
  295. package/components/SVGIcons/IconFlag.js +2 -2
  296. package/components/SVGIcons/IconFlagFilled.js +2 -2
  297. package/components/SVGIcons/IconFlash.js +2 -2
  298. package/components/SVGIcons/IconFlashFilled.js +2 -2
  299. package/components/SVGIcons/IconFolderLink.js +2 -2
  300. package/components/SVGIcons/IconFolderLinkFilled.js +2 -2
  301. package/components/SVGIcons/IconFolderPerson.js +2 -2
  302. package/components/SVGIcons/IconFolderPersonFilled.js +2 -2
  303. package/components/SVGIcons/IconFunnel.js +2 -2
  304. package/components/SVGIcons/IconFunnelFilled.js +2 -2
  305. package/components/SVGIcons/IconGas.js +2 -2
  306. package/components/SVGIcons/IconGb.js +2 -2
  307. package/components/SVGIcons/IconGlobe.js +2 -2
  308. package/components/SVGIcons/IconGlobeFilled.js +2 -2
  309. package/components/SVGIcons/IconGlobeLocation.js +2 -2
  310. package/components/SVGIcons/IconGlobeLocationFilled.js +2 -2
  311. package/components/SVGIcons/IconGoogle.js +2 -2
  312. package/components/SVGIcons/IconGrid.js +2 -2
  313. package/components/SVGIcons/IconGridFilled.js +2 -2
  314. package/components/SVGIcons/IconHandOpenHeart.js +2 -2
  315. package/components/SVGIcons/IconHandOpenHeartFilled.js +2 -2
  316. package/components/SVGIcons/IconHandWave.js +2 -2
  317. package/components/SVGIcons/IconHandWaveFilled.js +2 -2
  318. package/components/SVGIcons/IconHdm.js +2 -2
  319. package/components/SVGIcons/IconHdmFilled.js +2 -2
  320. package/components/SVGIcons/IconHeart.js +2 -2
  321. package/components/SVGIcons/IconHeartFilled.js +2 -2
  322. package/components/SVGIcons/IconHistory.js +2 -2
  323. package/components/SVGIcons/IconHistoryFilled.js +2 -2
  324. package/components/SVGIcons/IconHome.js +2 -2
  325. package/components/SVGIcons/IconHomeAdd.js +2 -2
  326. package/components/SVGIcons/IconHomeAddFilled.js +2 -2
  327. package/components/SVGIcons/IconHomeFilled.js +2 -2
  328. package/components/SVGIcons/IconImage.js +2 -2
  329. package/components/SVGIcons/IconImageFilled.js +2 -2
  330. package/components/SVGIcons/IconInfo.js +2 -2
  331. package/components/SVGIcons/IconInfoFilled.js +2 -2
  332. package/components/SVGIcons/IconInstagram.js +2 -2
  333. package/components/SVGIcons/IconKey.js +2 -2
  334. package/components/SVGIcons/IconKeyFilled.js +2 -2
  335. package/components/SVGIcons/IconKeyReset.js +2 -2
  336. package/components/SVGIcons/IconKeyResetFilled.js +2 -2
  337. package/components/SVGIcons/IconLaptop.js +2 -2
  338. package/components/SVGIcons/IconLaptopFilled.js +2 -2
  339. package/components/SVGIcons/IconLeaf.js +2 -2
  340. package/components/SVGIcons/IconLeafFilled.js +2 -2
  341. package/components/SVGIcons/IconLightbulb.js +2 -2
  342. package/components/SVGIcons/IconLightbulbFilled.js +2 -2
  343. package/components/SVGIcons/IconLink.js +2 -2
  344. package/components/SVGIcons/IconLinkFilled.js +2 -2
  345. package/components/SVGIcons/IconLinkedin.js +2 -2
  346. package/components/SVGIcons/IconList.js +2 -2
  347. package/components/SVGIcons/IconListFilled.js +2 -2
  348. package/components/SVGIcons/IconLoan.js +2 -2
  349. package/components/SVGIcons/IconLoanFilled.js +2 -2
  350. package/components/SVGIcons/IconLocation.js +2 -2
  351. package/components/SVGIcons/IconLocationFilled.js +2 -2
  352. package/components/SVGIcons/IconLockClosed.js +2 -2
  353. package/components/SVGIcons/IconLockClosedFilled.js +2 -2
  354. package/components/SVGIcons/IconLockMultiple.js +2 -2
  355. package/components/SVGIcons/IconLockMultipleFilled.js +2 -2
  356. package/components/SVGIcons/IconLockOpen.js +2 -2
  357. package/components/SVGIcons/IconLockOpenFilled.js +2 -2
  358. package/components/SVGIcons/IconMail.js +2 -2
  359. package/components/SVGIcons/IconMailAdd.js +2 -2
  360. package/components/SVGIcons/IconMailAddFilled.js +2 -2
  361. package/components/SVGIcons/IconMailArrowForward.js +2 -2
  362. package/components/SVGIcons/IconMailArrowForwardFilled.js +2 -2
  363. package/components/SVGIcons/IconMailFilled.js +2 -2
  364. package/components/SVGIcons/IconMailLink.js +2 -2
  365. package/components/SVGIcons/IconMailLinkFilled.js +2 -2
  366. package/components/SVGIcons/IconMedium.js +2 -2
  367. package/components/SVGIcons/IconMention.js +2 -2
  368. package/components/SVGIcons/IconMentionFilled.js +2 -2
  369. package/components/SVGIcons/IconMoney.js +2 -2
  370. package/components/SVGIcons/IconMoneyFilled.js +2 -2
  371. package/components/SVGIcons/IconMoneyHand.js +2 -2
  372. package/components/SVGIcons/IconMoneyHandFilled.js +2 -2
  373. package/components/SVGIcons/IconMore.js +2 -2
  374. package/components/SVGIcons/IconMoreFilled.js +2 -2
  375. package/components/SVGIcons/IconMoreVertical.js +2 -2
  376. package/components/SVGIcons/IconMoreVerticalFilled.js +2 -2
  377. package/components/SVGIcons/IconNavigation.js +2 -2
  378. package/components/SVGIcons/IconNavigationFilled.js +2 -2
  379. package/components/SVGIcons/IconNotebook.js +2 -2
  380. package/components/SVGIcons/IconNotebookAdd.js +2 -2
  381. package/components/SVGIcons/IconNotebookAddFilled.js +2 -2
  382. package/components/SVGIcons/IconNotebookFilled.js +2 -2
  383. package/components/SVGIcons/IconNumberSymbolSquare.js +2 -2
  384. package/components/SVGIcons/IconNumberSymbolSquareFilled.js +2 -2
  385. package/components/SVGIcons/IconOnlyEmployee.js +2 -2
  386. package/components/SVGIcons/IconOpen.js +2 -2
  387. package/components/SVGIcons/IconOpenFilled.js +2 -2
  388. package/components/SVGIcons/IconPaintBrush.js +2 -2
  389. package/components/SVGIcons/IconPaintBrushFilled.js +2 -2
  390. package/components/SVGIcons/IconPanelLeft.js +2 -2
  391. package/components/SVGIcons/IconPanelLeftFilled.js +2 -2
  392. package/components/SVGIcons/IconPanelRight.js +2 -2
  393. package/components/SVGIcons/IconPanelRightFilled.js +2 -2
  394. package/components/SVGIcons/IconPatient.js +2 -2
  395. package/components/SVGIcons/IconPatientFilled.js +2 -2
  396. package/components/SVGIcons/IconPeople.js +2 -2
  397. package/components/SVGIcons/IconPeopleAdd.js +2 -2
  398. package/components/SVGIcons/IconPeopleAddFilled.js +2 -2
  399. package/components/SVGIcons/IconPeopleFilled.js +2 -2
  400. package/components/SVGIcons/IconPercent.js +2 -2
  401. package/components/SVGIcons/IconPerson.js +2 -2
  402. package/components/SVGIcons/IconPersonAccount.js +2 -2
  403. package/components/SVGIcons/IconPersonAccountFilled.js +2 -2
  404. package/components/SVGIcons/IconPersonAdd.js +2 -2
  405. package/components/SVGIcons/IconPersonAddFilled.js +2 -2
  406. package/components/SVGIcons/IconPersonFilled.js +2 -2
  407. package/components/SVGIcons/IconPersonNote.js +2 -2
  408. package/components/SVGIcons/IconPersonNoteFilled.js +2 -2
  409. package/components/SVGIcons/IconPersonStar.js +2 -2
  410. package/components/SVGIcons/IconPersonStarFilled.js +2 -2
  411. package/components/SVGIcons/IconPersonSubtract.js +2 -2
  412. package/components/SVGIcons/IconPersonSubtractFilled.js +2 -2
  413. package/components/SVGIcons/IconPhone.js +2 -2
  414. package/components/SVGIcons/IconPhoneFilled.js +2 -2
  415. package/components/SVGIcons/IconPlay.js +2 -2
  416. package/components/SVGIcons/IconPlayFilled.js +2 -2
  417. package/components/SVGIcons/IconPos.js +2 -2
  418. package/components/SVGIcons/IconPosFilled.js +2 -2
  419. package/components/SVGIcons/IconProhibited.js +2 -2
  420. package/components/SVGIcons/IconProhibitedFilled.js +2 -2
  421. package/components/SVGIcons/IconProjectProduct.js +2 -2
  422. package/components/SVGIcons/IconQuestionCircle.js +2 -2
  423. package/components/SVGIcons/IconQuestionCircleFilled.js +2 -2
  424. package/components/SVGIcons/IconRedo.js +2 -2
  425. package/components/SVGIcons/IconRedoFilled.js +2 -2
  426. package/components/SVGIcons/IconRu.js +2 -2
  427. package/components/SVGIcons/IconRub.js +2 -2
  428. package/components/SVGIcons/IconRubFilled.js +2 -2
  429. package/components/SVGIcons/IconSave.js +2 -2
  430. package/components/SVGIcons/IconSaveFilled.js +2 -2
  431. package/components/SVGIcons/IconSavings.js +2 -2
  432. package/components/SVGIcons/IconSavingsFilled.js +2 -2
  433. package/components/SVGIcons/IconSearch.js +2 -2
  434. package/components/SVGIcons/IconSearchFilled.js +2 -2
  435. package/components/SVGIcons/IconSelectAllOff.js +2 -2
  436. package/components/SVGIcons/IconSelectAllOffFilled.js +2 -2
  437. package/components/SVGIcons/IconSelectAllOn.js +2 -2
  438. package/components/SVGIcons/IconSelectAllOnFilled.js +2 -2
  439. package/components/SVGIcons/IconSend.js +2 -2
  440. package/components/SVGIcons/IconSendFilled.js +2 -2
  441. package/components/SVGIcons/IconSettings.js +2 -2
  442. package/components/SVGIcons/IconSettingsFilled.js +2 -2
  443. package/components/SVGIcons/IconShare.js +2 -2
  444. package/components/SVGIcons/IconShareAndroid.js +2 -2
  445. package/components/SVGIcons/IconShareAndroidFilled.js +2 -2
  446. package/components/SVGIcons/IconShareFilled.js +2 -2
  447. package/components/SVGIcons/IconShower.js +2 -2
  448. package/components/SVGIcons/IconSign.js +2 -2
  449. package/components/SVGIcons/IconSignFilled.js +2 -2
  450. package/components/SVGIcons/IconSignOut.js +2 -2
  451. package/components/SVGIcons/IconSignOutFilled.js +2 -2
  452. package/components/SVGIcons/IconSlideText.js +2 -2
  453. package/components/SVGIcons/IconSlideTextFilled.js +2 -2
  454. package/components/SVGIcons/IconSpinner.js +2 -2
  455. package/components/SVGIcons/IconSpinnerFilled.js +2 -2
  456. package/components/SVGIcons/IconStar.js +2 -2
  457. package/components/SVGIcons/IconStarFilled.js +2 -2
  458. package/components/SVGIcons/IconStatus.js +2 -2
  459. package/components/SVGIcons/IconStatusFilled.js +2 -2
  460. package/components/SVGIcons/IconSubtract.js +2 -2
  461. package/components/SVGIcons/IconSubtractCircle.js +2 -2
  462. package/components/SVGIcons/IconSubtractCircleFilled.js +2 -2
  463. package/components/SVGIcons/IconSubtractFilled.js +2 -2
  464. package/components/SVGIcons/IconTableCellEdit.js +2 -2
  465. package/components/SVGIcons/IconTableCellEditFilled.js +2 -2
  466. package/components/SVGIcons/IconTelegram.js +2 -2
  467. package/components/SVGIcons/IconTextBulletListSquarePerson.js +2 -2
  468. package/components/SVGIcons/IconTextBulletListSquarePersonFilled.js +2 -2
  469. package/components/SVGIcons/IconTextboxSettings.js +2 -2
  470. package/components/SVGIcons/IconTextboxSettingsFilled.js +2 -2
  471. package/components/SVGIcons/IconTimer.js +2 -2
  472. package/components/SVGIcons/IconTimerFilled.js +2 -2
  473. package/components/SVGIcons/IconTin.js +2 -2
  474. package/components/SVGIcons/IconTinFilled.js +2 -2
  475. package/components/SVGIcons/IconTv.js +2 -2
  476. package/components/SVGIcons/IconTvFilled.js +2 -2
  477. package/components/SVGIcons/IconTwitter.js +2 -2
  478. package/components/SVGIcons/IconUndo.js +2 -2
  479. package/components/SVGIcons/IconUndoFilled.js +2 -2
  480. package/components/SVGIcons/IconUnitsEmployee.js +2 -2
  481. package/components/SVGIcons/IconUs.js +2 -2
  482. package/components/SVGIcons/IconUsd.js +2 -2
  483. package/components/SVGIcons/IconUsdFilled.js +2 -2
  484. package/components/SVGIcons/IconVehicleTruckProfile.js +2 -2
  485. package/components/SVGIcons/IconVehicleTruckProfileFilled.js +2 -2
  486. package/components/SVGIcons/IconViber.js +2 -2
  487. package/components/SVGIcons/IconVideo.js +2 -2
  488. package/components/SVGIcons/IconVideoFilled.js +2 -2
  489. package/components/SVGIcons/IconVpos.js +2 -2
  490. package/components/SVGIcons/IconVposFilled.js +2 -2
  491. package/components/SVGIcons/IconWallet.js +2 -2
  492. package/components/SVGIcons/IconWalletFilled.js +2 -2
  493. package/components/SVGIcons/IconWarning.js +2 -2
  494. package/components/SVGIcons/IconWarningFilled.js +2 -2
  495. package/components/SVGIcons/IconWhatsapp.js +2 -2
  496. package/components/SVGIcons/IconWrenchScrewdriver.js +2 -2
  497. package/components/SVGIcons/IconWrenchScrewdriverFilled.js +2 -2
  498. package/components/SVGIcons/IconXboxConsole.js +2 -2
  499. package/components/SVGIcons/IconXboxConsoleFilled.js +2 -2
  500. package/components/SVGIcons/IconYoutube.js +2 -2
  501. package/components/SVGIcons/IconZoomIn.js +2 -2
  502. package/components/SVGIcons/IconZoomInFilled.js +2 -2
  503. package/components/SVGIcons/IconZoomOut.js +2 -2
  504. package/components/SVGIcons/IconZoomOutFilled.js +2 -2
  505. package/components/SVGIcons/index.js +2 -2
  506. package/components/Select/ButtonSelect/ButtonSelect.js +7 -7
  507. package/components/Select/FilterSelect/FilterDropdown.js +7 -7
  508. package/components/Select/FilterSelect/FilterGroupDropdown.js +7 -7
  509. package/components/Select/FilterSelect/FilterSelect.js +7 -7
  510. package/components/Select/MultiSelect/MultiBase/MultiBase.js +7 -7
  511. package/components/Select/MultiSelect/MultiSelect.js +7 -7
  512. package/components/Select/MultiSelect/MultiSelectGrouped/MultiSelectGrouped.js +7 -7
  513. package/components/Select/MultiSelect/MultiSelectTree/MultiSelectTree.js +7 -7
  514. package/components/Select/MultiSelect/MultiSelectWithTabs/MultiSelectWithTabs.js +7 -7
  515. package/components/Select/MultiSelect/OptionsWrapper.js +7 -7
  516. package/components/Select/MultiSelect/RadioSelectGrouped/RadioSelectGrouped.js +7 -7
  517. package/components/Select/NestedSelect/NestedSelect.js +7 -7
  518. package/components/Select/ProfileDropdown/index.js +3 -3
  519. package/components/Select/Select/Select.js +7 -7
  520. package/components/Select/SharedComponents/Actions.js +7 -7
  521. package/components/Select/SharedComponents/ButtonSelectWrapper/Button/Button.js +2 -2
  522. package/components/Select/SharedComponents/ButtonSelectWrapper/ButtonSelectWrapper.js +3 -3
  523. package/components/Select/SharedComponents/ContentTop.js +7 -7
  524. package/components/Select/SharedComponents/Footer.js +6 -6
  525. package/components/Select/SharedComponents/InputSelectWrapper/InputSelectWrapper.js +6 -6
  526. package/components/Select/SharedComponents/index.js +7 -7
  527. package/components/Select/index.js +7 -7
  528. package/components/SideNavigation/NavigationItem/index.js +6 -6
  529. package/components/SideNavigation/SideNavigation.js +6 -6
  530. package/components/SideNavigation/index.js +6 -6
  531. package/components/SideSheet/Footer/Footer.js +6 -6
  532. package/components/SideSheet/SideSheet.js +6 -6
  533. package/components/SideSheet/index.js +6 -6
  534. package/components/Snackbar/Snackbar.js +6 -6
  535. package/components/Snackbar/index.js +6 -6
  536. package/components/Status/Status.js +3 -3
  537. package/components/Status/index.js +3 -3
  538. package/components/Stepper/Stepper.js +1 -1
  539. package/components/Stepper/index.js +1 -1
  540. package/components/Switcher/Switcher.js +5 -5
  541. package/components/Switcher/index.js +5 -5
  542. package/components/Tab/Tab.js +2 -2
  543. package/components/Tab/TabItem.js +1 -1
  544. package/components/Tab/index.js +2 -2
  545. package/components/Table/Header.js +6 -6
  546. package/components/Table/IndeterminateCheckbox.js +5 -5
  547. package/components/Table/Row.js +6 -6
  548. package/components/Table/Table.js +7 -7
  549. package/components/Table/index.js +7 -7
  550. package/components/Table/utils.js +6 -6
  551. package/components/Textarea/Textarea.js +6 -6
  552. package/components/Textarea/index.js +6 -6
  553. package/components/Tooltip/Tooltip.js +1 -1
  554. package/components/Tooltip/index.js +1 -1
  555. package/{defineProperty-14863472.js → defineProperty-109927cc.js} +1 -1
  556. package/helperComponents/OptionItem/OptionItem.js +7 -7
  557. package/helperComponents/OptionItem/index.js +7 -7
  558. package/helperComponents/index.js +7 -7
  559. package/hooks/index.js +1 -1
  560. package/hooks/useHideBodyScroll.js +1 -1
  561. package/hooks/useScreenSize.js +1 -1
  562. package/hooks/useSideNavigation.js +1 -1
  563. package/index.js +11 -8
  564. package/package.json +1 -1
  565. package/stories/MultiTextareaWithChips.stories.d.ts +1 -11
  566. package/{toConsumableArray-291d6bc0.js → toConsumableArray-d592cd83.js} +1 -1
  567. package/components/MultiTextareaWithChips/InputWrapper.d.ts +0 -7
  568. package/components/MultiTextareaWithChips/InputWrapper.js +0 -13
  569. /package/{extends-f01f857f.js → extends-cc60c71c.js} +0 -0
  570. /package/{objectWithoutProperties-0d729c01.js → objectWithoutProperties-b19cccde.js} +0 -0
  571. /package/{slicedToArray-396ddcf6.js → slicedToArray-093df980.js} +0 -0
  572. /package/{typeof-e762ff49.js → typeof-e9310111.js} +0 -0
@@ -1,16 +1,16 @@
1
- import { _ as _extends } from '../../extends-f01f857f.js';
2
- import { _ as _slicedToArray } from '../../slicedToArray-396ddcf6.js';
1
+ import { _ as _extends } from '../../extends-cc60c71c.js';
2
+ import { _ as _slicedToArray } from '../../slicedToArray-093df980.js';
3
3
  import React, { useState } from 'react';
4
4
  import { Text } from '../Text/Text.js';
5
5
  import { Button } from '../Button/Button.js';
6
6
  import 'classnames';
7
7
  import '../../utils/helpers.js';
8
8
  import 'dayjs';
9
- import '../../defineProperty-14863472.js';
10
- import '../../typeof-e762ff49.js';
11
- import '../../objectWithoutProperties-0d729c01.js';
9
+ import '../../defineProperty-109927cc.js';
10
+ import '../../typeof-e9310111.js';
11
+ import '../../objectWithoutProperties-b19cccde.js';
12
12
  import '../../helperComponents/Loader/Loader.js';
13
- import '../../RadioGroup-814fbdff.js';
13
+ import '../../RadioGroup-d0af378e.js';
14
14
  import '../Radio/Radio.js';
15
15
  import '../../helperComponents/Label/Label.js';
16
16
  import '../Popover/Popover.js';
@@ -1,17 +1,17 @@
1
1
  export { More } from './More.js';
2
- import '../../extends-f01f857f.js';
3
- import '../../slicedToArray-396ddcf6.js';
2
+ import '../../extends-cc60c71c.js';
3
+ import '../../slicedToArray-093df980.js';
4
4
  import 'react';
5
5
  import '../Text/Text.js';
6
6
  import 'classnames';
7
7
  import '../../utils/helpers.js';
8
8
  import 'dayjs';
9
9
  import '../Button/Button.js';
10
- import '../../defineProperty-14863472.js';
11
- import '../../typeof-e762ff49.js';
12
- import '../../objectWithoutProperties-0d729c01.js';
10
+ import '../../defineProperty-109927cc.js';
11
+ import '../../typeof-e9310111.js';
12
+ import '../../objectWithoutProperties-b19cccde.js';
13
13
  import '../../helperComponents/Loader/Loader.js';
14
- import '../../RadioGroup-814fbdff.js';
14
+ import '../../RadioGroup-d0af378e.js';
15
15
  import '../Radio/Radio.js';
16
16
  import '../../helperComponents/Label/Label.js';
17
17
  import '../Popover/Popover.js';
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
2
  import type { TMultiTextareaWithChipsProps } from './types';
3
- export declare const MultiTextareaWithChips: React.FC<TMultiTextareaWithChipsProps>;
3
+ export declare const MultiTextareaWithChips: React.NamedExoticComponent<TMultiTextareaWithChipsProps>;
@@ -1,23 +1,26 @@
1
- import { _ as _extends } from '../../extends-f01f857f.js';
2
- import { _ as _toConsumableArray } from '../../toConsumableArray-291d6bc0.js';
3
- import { _ as _slicedToArray } from '../../slicedToArray-396ddcf6.js';
4
- import React, { useState, useRef, useMemo, useEffect } from 'react';
1
+ import { _ as _extends } from '../../extends-cc60c71c.js';
2
+ import { _ as _typeof } from '../../typeof-e9310111.js';
3
+ import { _ as _slicedToArray } from '../../slicedToArray-093df980.js';
4
+ import React, { memo, useState, useRef, useMemo } from 'react';
5
5
  import { Chips } from '../Chips/Chips.js';
6
6
  import classNames from 'classnames';
7
7
  import { ErrorMessage } from '../../helperComponents/ErrorMessage/ErrorMessage.js';
8
- import '../../RadioGroup-814fbdff.js';
8
+ import '../../RadioGroup-d0af378e.js';
9
9
  import 'dayjs';
10
10
  import { useFormProps } from '../../hooks/useFormProps.js';
11
11
  import '../../hooks/useScreenSize.js';
12
12
  import 'react-hook-form';
13
13
  import '../Radio/Radio.js';
14
14
  import 'react-syntax-highlighter';
15
+ import { useChipManagement } from './hooks/useChipManagement.js';
16
+ import { useChipValidation } from './hooks/useChipValidation.js';
17
+ import { useDropdownLogic } from './hooks/useDropdownLogic.js';
18
+ import { useKeyboardNavigation } from './hooks/useKeyboardNavigation.js';
15
19
  import '../Text/Text.js';
16
20
  import '../../utils/helpers.js';
17
21
  import '../Chips/types.js';
18
22
  import '../SVGIcons/IconDismissCircleFilled.js';
19
- import '../../defineProperty-14863472.js';
20
- import '../../typeof-e762ff49.js';
23
+ import '../../defineProperty-109927cc.js';
21
24
  import '../Chips/consts.js';
22
25
  import '../../helperComponents/IconDynamicComponent/IconDynamicComponent.js';
23
26
  import '../../helperComponents/IconDynamicComponent/constants.js';
@@ -34,8 +37,9 @@ import '../../hooks/useOnOutsideClick.js';
34
37
  import '../Link/Link.js';
35
38
  import '../SVGIcons/IconInfo.js';
36
39
  import '../../context/types.js';
40
+ import '../../toConsumableArray-d592cd83.js';
37
41
 
38
- var MultiTextareaWithChips = function MultiTextareaWithChips(_ref) {
42
+ var MultiTextareaWithChipsComponent = function MultiTextareaWithChipsComponent(_ref) {
39
43
  var label = _ref.label,
40
44
  placeholder = _ref.placeholder,
41
45
  helperText = _ref.helperText,
@@ -56,321 +60,212 @@ var MultiTextareaWithChips = function MultiTextareaWithChips(_ref) {
56
60
  chipValidationErrorMessage = _ref.chipValidationErrorMessage,
57
61
  _ref$allowInvalidChip = _ref.allowInvalidChips,
58
62
  allowInvalidChips = _ref$allowInvalidChip === void 0 ? false : _ref$allowInvalidChip,
59
- _ref$fieldName = _ref.fieldName,
60
- fieldName = _ref$fieldName === void 0 ? 'skills' : _ref$fieldName,
61
63
  _ref$searchPlaceholde = _ref.searchPlaceholderText,
62
64
  searchPlaceholderText = _ref$searchPlaceholde === void 0 ? 'Search and select...' : _ref$searchPlaceholde,
63
65
  _ref$typeAndEnterPlac = _ref.typeAndEnterPlaceholderText,
64
66
  typeAndEnterPlaceholderText = _ref$typeAndEnterPlac === void 0 ? 'Type and press Enter...' : _ref$typeAndEnterPlac,
65
67
  _ref$noOptionsPlaceho = _ref.noOptionsPlaceholderText,
66
68
  noOptionsPlaceholderText = _ref$noOptionsPlaceho === void 0 ? 'No more options available' : _ref$noOptionsPlaceho,
67
- formProps = _ref.formProps;
69
+ _ref$fieldName = _ref.fieldName,
70
+ fieldName = _ref$fieldName === void 0 ? 'skills' : _ref$fieldName,
71
+ formProps = _ref.formProps,
72
+ minChipLength = _ref.minChipLength,
73
+ maxChipLength = _ref.maxChipLength;
68
74
  var _useState = useState(''),
69
75
  _useState2 = _slicedToArray(_useState, 2),
70
76
  inputValue = _useState2[0],
71
77
  setInputValue = _useState2[1];
72
- var _useState3 = useState(false),
78
+ var _useState3 = useState(''),
73
79
  _useState4 = _slicedToArray(_useState3, 2),
74
- showDropdown = _useState4[0],
75
- setShowDropdown = _useState4[1];
76
- var _useState5 = useState([]),
77
- _useState6 = _slicedToArray(_useState5, 2),
78
- filteredOptions = _useState6[0],
79
- setFilteredOptions = _useState6[1];
80
- var _useState7 = useState(''),
81
- _useState8 = _slicedToArray(_useState7, 2),
82
- selectedOption = _useState8[0],
83
- setSelectedOption = _useState8[1];
84
- var _useState9 = useState(''),
85
- _useState0 = _slicedToArray(_useState9, 2),
86
- chipError = _useState0[0],
87
- setChipError = _useState0[1];
88
- var _useState1 = useState(chips),
89
- _useState10 = _slicedToArray(_useState1, 2),
90
- localChips = _useState10[0],
91
- setLocalChips = _useState10[1];
80
+ chipError = _useState4[0],
81
+ setChipError = _useState4[1];
92
82
  var inputRef = useRef(null);
93
- var _useFormProps = useFormProps();
94
- _useFormProps.errors;
95
- var setValue = _useFormProps.setValue;
96
-
97
- // Memoize chip texts for performance optimization
98
- var chipTexts = useMemo(function () {
99
- return localChips.map(function (chip) {
100
- return typeof chip === 'string' ? chip : chip.text;
101
- });
102
- }, [localChips]);
103
-
104
- // useEffect(() => {
105
- // if (inputValue.trim() && availableOptions.length > 0) {
106
- // // Use memoized chipTexts for O(1) lookup performance
107
- // const chipTextsSet = new Set(chipTexts)
108
-
109
- // const filtered = availableOptions.filter(option =>
110
- // option.toLowerCase().includes(inputValue.toLowerCase()) &&
111
- // !chipTextsSet.has(option)
112
- // )
113
- // setFilteredOptions(filtered)
114
- // setShowDropdown(filtered.length > 0)
115
- // } else {
116
- // setShowDropdown(false)
117
- // setFilteredOptions([])
118
- // }
119
- // }, [inputValue, availableOptions, chipTexts])
120
-
121
- useEffect(function () {
122
- if (formProps !== null && formProps !== void 0 && formProps.setFieldValue) {
123
- formProps.setFieldValue(fieldName, localChips);
124
- }
125
- }, [localChips, fieldName]);
126
- var handleKeyDown = function handleKeyDown(e) {
127
- if (disabled) return;
128
- if (e.key === 'Enter') {
129
- e.preventDefault();
130
- if (selectedOption) {
131
- handleSelectOption(selectedOption);
132
- } else if (filteredOptions.length > 0) {
133
- handleSelectOption(filteredOptions[0]);
134
- setFilteredOptions([]);
135
- } else if (allowCustomValues && inputValue.trim()) {
136
- handleAddCustomValue(inputValue.trim());
137
- }
138
- } else if (e.key === ',' && allowCustomValues && inputValue.trim()) {
139
- e.preventDefault();
140
- handleAddCustomValue(inputValue.trim());
141
- } else if (e.key === 'Escape') {
142
- var _inputRef$current;
143
- setShowDropdown(false);
144
- setSelectedOption('');
145
- (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.blur();
146
- } else if (e.key === 'ArrowDown') {
147
- e.preventDefault();
148
- if (filteredOptions.length > 0) {
149
- var currentIndex = selectedOption ? filteredOptions.indexOf(selectedOption) : -1;
150
- var nextIndex = currentIndex < filteredOptions.length - 1 ? currentIndex + 1 : 0;
151
- setSelectedOption(filteredOptions[nextIndex]);
83
+ var containerRef = useRef(null);
84
+ var _useFormProps = useFormProps(),
85
+ setValue = _useFormProps.setValue;
86
+ var chipManagement = useChipManagement({
87
+ initialChips: chips,
88
+ fieldName: fieldName,
89
+ formProps: formProps,
90
+ setValue: setValue,
91
+ onAddChip: onAddChip,
92
+ onRemoveChip: onRemoveChip
93
+ });
94
+ var chipValidation = useChipValidation({
95
+ validationSchema: chipValidationSchema,
96
+ errorMessage: chipValidationErrorMessage,
97
+ allowInvalidChips: allowInvalidChips,
98
+ minChipLength: minChipLength,
99
+ maxChipLength: maxChipLength
100
+ });
101
+ var dropdownLogic = useDropdownLogic({
102
+ availableOptions: availableOptions,
103
+ chipTexts: chipManagement.getChipTexts(),
104
+ containerRef: containerRef
105
+ });
106
+ var handleSelectOption = function handleSelectOption(option) {
107
+ if (chipManagement.getChipTexts().includes(option)) return;
108
+ try {
109
+ var validatedChip = chipValidation.createValidatedChip(option);
110
+ chipManagement.addChip(validatedChip);
111
+ setInputValue('');
112
+ dropdownLogic.closeDropdown();
113
+ setChipError('');
114
+ } catch (error) {
115
+ if (!allowInvalidChips) {
116
+ setChipError(error instanceof Error ? error.message : 'Invalid value');
152
117
  }
153
- } else if (e.key === 'ArrowUp') {
154
- e.preventDefault();
155
- if (filteredOptions.length > 0) {
156
- var _currentIndex = selectedOption ? filteredOptions.indexOf(selectedOption) : -1;
157
- var prevIndex = _currentIndex > 0 ? _currentIndex - 1 : filteredOptions.length - 1;
158
- setSelectedOption(filteredOptions[prevIndex]);
118
+ }
119
+ };
120
+ var handleAddCustomValue = function handleAddCustomValue(value) {
121
+ if (chipManagement.getChipTexts().includes(value)) return;
122
+ try {
123
+ var validatedChip = chipValidation.createValidatedChip(value);
124
+ chipManagement.addChip(validatedChip);
125
+ setInputValue('');
126
+ setChipError('');
127
+ } catch (error) {
128
+ if (!allowInvalidChips) {
129
+ setChipError(error instanceof Error ? error.message : 'Invalid value');
159
130
  }
160
- } else if (e.key === 'Backspace' && !inputValue && localChips.length > 0) {
161
- e.preventDefault();
162
- var lastChip = localChips[localChips.length - 1];
131
+ }
132
+ };
133
+ var handleRemoveLastChip = function handleRemoveLastChip() {
134
+ var lastChip = chipManagement.chips[chipManagement.chips.length - 1];
135
+ if (lastChip) {
163
136
  var chipText = typeof lastChip === 'string' ? lastChip : lastChip.text;
164
- handleRemoveChip(chipText);
137
+ chipManagement.removeChip(chipText);
165
138
  }
166
139
  };
167
140
  var handleInputChange = function handleInputChange(e) {
168
141
  if (disabled) return;
169
- setInputValue(e.target.value);
170
- setSelectedOption('');
142
+ var value = e.target.value;
143
+ setInputValue(value);
144
+ dropdownLogic.handleInputChange(value);
171
145
  };
172
146
  var handleInputFocus = function handleInputFocus() {
173
- if (availableOptions.length > 0 && inputValue.trim()) {
174
- setShowDropdown(true);
175
- }
147
+ dropdownLogic.handleInputFocus(inputValue);
176
148
  };
177
- var handleRemoveChip = function handleRemoveChip(chipToRemove) {
178
- if (disabled) return;
179
- var newChips = localChips.filter(function (c) {
180
- var chipText = typeof c === 'string' ? c : c.text;
181
- return chipText !== chipToRemove;
182
- });
183
- setLocalChips(newChips);
184
- onRemoveChip === null || onRemoveChip === void 0 || onRemoveChip(chipToRemove);
185
- // Sync with form state - only valid chips (strings)
186
- if (setValue) {
187
- var validChips = newChips.filter(function (chip) {
188
- return typeof chip === 'string';
189
- });
190
- setValue(fieldName, validChips);
191
- }
192
- setChipError('');
193
- };
194
- var handleSelectOption = function handleSelectOption(option) {
195
- // Check if option already exists in chips using memoized chipTexts
196
- if (!chipTexts.includes(option)) {
197
- if (chipValidationSchema) {
198
- try {
199
- chipValidationSchema.validateSync(option);
200
- } catch (e) {
201
- var message = chipValidationErrorMessage || e.message || 'Invalid value';
202
- if (allowInvalidChips) {
203
- var item = {
204
- text: option,
205
- hasError: true,
206
- errorMessage: message
207
- };
208
- var _newChips = [].concat(_toConsumableArray(localChips), [item]);
209
- setLocalChips(_newChips);
210
- // Sync with form state - only valid chips (strings)
211
- if (setValue) {
212
- var validChips = _newChips.filter(function (chip) {
213
- return typeof chip === 'string';
214
- });
215
- setValue(fieldName, validChips);
216
- }
217
- setInputValue('');
218
- setShowDropdown(false);
219
- setSelectedOption('');
220
- return;
221
- } else {
222
- setChipError(message);
223
- return;
224
- }
225
- }
226
- }
227
- onAddChip === null || onAddChip === void 0 || onAddChip(option);
228
- var newChips = [].concat(_toConsumableArray(localChips), [option]);
229
- setLocalChips(newChips);
230
- // Sync with form state - only valid chips (strings)
231
- if (setValue) {
232
- var _validChips = newChips.filter(function (chip) {
233
- return typeof chip === 'string';
234
- });
235
- setValue(fieldName, _validChips);
236
- }
237
- setInputValue('');
238
- setShowDropdown(false);
239
- setSelectedOption('');
240
- setChipError('');
241
- }
242
- };
243
- var handleAddCustomValue = function handleAddCustomValue(value) {
244
- // Check if value already exists in chips
245
- var chipTexts = localChips.map(function (chip) {
246
- return typeof chip === 'string' ? chip : chip.text;
247
- });
248
- if (!chipTexts.includes(value)) {
249
- // validate value if schema provided
250
- if (chipValidationSchema) {
251
- try {
252
- chipValidationSchema.validateSync(value);
253
- var item = {
254
- text: value,
255
- hasError: false,
256
- errorMessage: ''
257
- };
258
- var newChips = [].concat(_toConsumableArray(localChips), [item]);
259
- setLocalChips(newChips);
260
- if (formProps !== null && formProps !== void 0 && formProps.setFieldValue) {
261
- formProps.setFieldValue(fieldName, newChips);
262
- }
263
- if (setValue) {
264
- var validChips = newChips.filter(function (chip) {
265
- return !chip.hasError;
266
- });
267
- setValue(fieldName, validChips);
268
- }
269
- } catch (e) {
270
- var message = chipValidationErrorMessage || e.message || 'Invalid value';
271
- if (allowInvalidChips) {
272
- var _item = {
273
- text: value,
274
- hasError: true,
275
- errorMessage: message
276
- };
277
- var _newChips2 = [].concat(_toConsumableArray(localChips), [_item]);
278
- setLocalChips(_newChips2);
279
- if (formProps !== null && formProps !== void 0 && formProps.setFieldValue) {
280
- formProps === null || formProps === void 0 || formProps.setFieldValue(fieldName, _newChips2);
281
- }
282
- if (setValue) {
283
- var _validChips2 = _newChips2.filter(function (chip) {
284
- return !chip.hasError;
285
- });
286
- setValue(fieldName, _validChips2);
287
- }
288
- } else {
289
- setChipError(message);
290
- return;
291
- }
292
- }
293
- } else {
294
- var _newChips3 = [].concat(_toConsumableArray(localChips), [value]);
295
- setLocalChips(_newChips3);
296
- if (setValue) {
297
- setValue(fieldName, _newChips3);
298
- }
149
+ var keyboardNavigation = useKeyboardNavigation({
150
+ disabled: disabled,
151
+ inputValue: inputValue,
152
+ allowCustomValues: allowCustomValues,
153
+ chips: chipManagement.chips,
154
+ filteredOptions: dropdownLogic.filteredOptions,
155
+ selectedOption: dropdownLogic.selectedOption,
156
+ onEnter: function onEnter() {
157
+ // Default behavior for Enter key when no options are available
158
+ },
159
+ onAddCustomValue: handleAddCustomValue,
160
+ onNavigateOptions: dropdownLogic.navigateOptions,
161
+ onSelectOption: function onSelectOption(option) {
162
+ var selected = dropdownLogic.selectOption(option);
163
+ if (selected) {
164
+ handleSelectOption(selected);
299
165
  }
300
- setInputValue('');
301
- setChipError('');
302
- }
303
- };
304
- var getInputPlaceholder = function getInputPlaceholder() {
305
- if (localChips.length === 0) return placeholder;
166
+ },
167
+ onCloseDropdown: dropdownLogic.closeDropdown,
168
+ onRemoveLastChip: handleRemoveLastChip,
169
+ inputRef: inputRef
170
+ });
171
+ var inputPlaceholder = useMemo(function () {
172
+ if (chipManagement.chips.length === 0) return placeholder;
306
173
  if (availableOptions.length > 0) return searchPlaceholder || searchPlaceholderText;
307
174
  if (allowCustomValues) return typeAndEnterPlaceholderText;
308
175
  return noOptionsPlaceholderText;
309
- };
176
+ }, [chipManagement.chips.length, placeholder, availableOptions.length, searchPlaceholder, searchPlaceholderText, allowCustomValues, typeAndEnterPlaceholderText, noOptionsPlaceholderText]);
177
+ var hasError = chipError || chipManagement.hasErrorChips;
178
+ var errorMessage = chipError || chipManagement.getErrorMessage();
179
+ var containerClassName = useMemo(function () {
180
+ return classNames('multi-textarea-chips', className, {
181
+ 'multi-textarea-chips--disabled': disabled,
182
+ 'multi-textarea-chips--error': hasError
183
+ });
184
+ }, [className, disabled, hasError]);
185
+ var inputWrapperClassName = useMemo(function () {
186
+ return classNames('multi-textarea-input-wrapper', {
187
+ 'with-error-styles': hasError
188
+ });
189
+ }, [hasError]);
310
190
  return /*#__PURE__*/React.createElement("div", {
311
- className: classNames('multi-textarea-chips', className)
312
- }, label && /*#__PURE__*/React.createElement("div", {
313
- className: "multi-textarea-chips__label"
191
+ className: containerClassName,
192
+ ref: containerRef
193
+ }, label && /*#__PURE__*/React.createElement("label", {
194
+ className: "multi-textarea-chips__label",
195
+ htmlFor: "".concat(fieldName, "-input")
314
196
  }, label), /*#__PURE__*/React.createElement("div", {
315
- className: classNames('multi-textarea-input-wrapper', {
316
- 'with-error-styles': !!chipError
317
- })
197
+ className: inputWrapperClassName
318
198
  }, /*#__PURE__*/React.createElement("div", {
319
199
  className: "multi-textarea-chips__content"
320
- }, localChips.map(function (chip, index) {
321
- var isItem = typeof chip !== 'string';
200
+ }, chipManagement.chips.map(function (chip, index) {
201
+ var isItem = _typeof(chip) === 'object';
322
202
  var text = isItem ? chip.text : chip;
323
203
  var hasError = isItem ? Boolean(chip.hasError) : false;
324
204
  return /*#__PURE__*/React.createElement(Chips, {
325
205
  key: "".concat(text, "-").concat(index),
326
206
  text: text,
327
- withAction: true,
207
+ withAction: !disabled,
328
208
  onClick: function onClick() {
329
- return handleRemoveChip(text);
209
+ return chipManagement.removeChip(text);
330
210
  },
331
211
  size: "medium",
332
212
  color: hasError ? 'danger' : 'primary',
333
213
  type: "accent",
334
- disabled: disabled
214
+ disabled: disabled,
215
+ "aria-label": "Remove ".concat(text, " chip")
335
216
  });
336
217
  }), /*#__PURE__*/React.createElement("div", {
337
218
  className: "multi-textarea-chips__input-container"
338
- }, /*#__PURE__*/React.createElement("input", _extends({}, formProps, {
219
+ }, /*#__PURE__*/React.createElement("input", _extends({
220
+ id: "".concat(fieldName, "-input")
221
+ }, formProps, {
222
+ autoComplete: "off",
339
223
  ref: inputRef,
340
224
  type: "text",
341
225
  value: inputValue,
342
226
  onChange: handleInputChange,
343
- onKeyDown: handleKeyDown,
227
+ onKeyDown: keyboardNavigation.handleKeyDown,
344
228
  onFocus: handleInputFocus,
345
- placeholder: getInputPlaceholder(),
229
+ placeholder: inputPlaceholder,
346
230
  className: "multi-textarea-chips__input",
347
- disabled: disabled
348
- })), showDropdown && /*#__PURE__*/React.createElement("div", {
349
- className: "multi-textarea-chips__dropdown"
350
- }, filteredOptions.map(function (option) {
231
+ disabled: disabled,
232
+ "aria-describedby": hasError ? "".concat(fieldName, "-error") : helperText ? "".concat(fieldName, "-helper") : undefined,
233
+ "aria-invalid": hasError ? 'true' : 'false',
234
+ "aria-expanded": dropdownLogic.showDropdown,
235
+ "aria-autocomplete": "list",
236
+ role: "combobox"
237
+ })), dropdownLogic.showDropdown && /*#__PURE__*/React.createElement("div", {
238
+ className: "multi-textarea-chips__dropdown",
239
+ role: "listbox",
240
+ "aria-label": "Available options"
241
+ }, dropdownLogic.filteredOptions.map(function (option) {
351
242
  return /*#__PURE__*/React.createElement("div", {
352
243
  key: option,
353
244
  className: classNames('multi-textarea-chips__dropdown-item', {
354
- 'multi-textarea-chips__dropdown-item--selected': selectedOption === option
245
+ 'multi-textarea-chips__dropdown-item--selected': dropdownLogic.selectedOption === option
355
246
  }),
356
247
  onClick: function onClick() {
357
248
  return handleSelectOption(option);
358
- }
249
+ },
250
+ role: "option",
251
+ "aria-selected": dropdownLogic.selectedOption === option
359
252
  }, /*#__PURE__*/React.createElement("div", {
360
253
  className: "multi-textarea-chips__radio"
361
254
  }, /*#__PURE__*/React.createElement("div", {
362
255
  className: classNames('multi-textarea-chips__radio-button', {
363
- 'multi-textarea-chips__radio-button--selected': selectedOption === option
256
+ 'multi-textarea-chips__radio-button--selected': dropdownLogic.selectedOption === option
364
257
  })
365
258
  })), /*#__PURE__*/React.createElement("span", {
366
259
  className: "multi-textarea-chips__option-text"
367
260
  }, option));
368
- }))))), !!chipError && /*#__PURE__*/React.createElement(ErrorMessage, {
369
- message: chipError
370
- }), helperText && !chipError && /*#__PURE__*/React.createElement("div", {
261
+ }))))), hasError && /*#__PURE__*/React.createElement(ErrorMessage, {
262
+ message: errorMessage
263
+ }), helperText && !hasError && /*#__PURE__*/React.createElement("div", {
264
+ id: "".concat(fieldName, "-helper"),
371
265
  className: "multi-textarea-chips__helper"
372
266
  }, helperText));
373
267
  };
268
+ var MultiTextareaWithChips = /*#__PURE__*/memo(MultiTextareaWithChipsComponent);
374
269
  MultiTextareaWithChips.displayName = 'MultiTextareaWithChips';
375
270
 
376
271
  export { MultiTextareaWithChips };
@@ -0,0 +1,4 @@
1
+ export { useChipManagement } from './useChipManagement';
2
+ export { useChipValidation } from './useChipValidation';
3
+ export { useDropdownLogic } from './useDropdownLogic';
4
+ export { useKeyboardNavigation } from './useKeyboardNavigation';
@@ -0,0 +1,8 @@
1
+ export { useChipManagement } from './useChipManagement.js';
2
+ export { useChipValidation } from './useChipValidation.js';
3
+ export { useDropdownLogic } from './useDropdownLogic.js';
4
+ export { useKeyboardNavigation } from './useKeyboardNavigation.js';
5
+ import '../../../typeof-e9310111.js';
6
+ import '../../../toConsumableArray-d592cd83.js';
7
+ import '../../../slicedToArray-093df980.js';
8
+ import 'react';
@@ -0,0 +1,21 @@
1
+ import type { ChipValue } from '../types';
2
+ interface UseChipManagementProps {
3
+ initialChips: ChipValue[];
4
+ fieldName: string;
5
+ formProps?: {
6
+ setFieldValue?: (fieldName: string, value: TFormValue) => void;
7
+ [key: string]: TFormValue | ((fieldName: string, value: TFormValue) => void) | undefined;
8
+ };
9
+ setValue?: (fieldName: string, value: TFormValue) => void;
10
+ onAddChip?: (chip: string) => void;
11
+ onRemoveChip?: (chip: string) => void;
12
+ }
13
+ export declare const useChipManagement: ({ initialChips, fieldName, formProps, setValue, onAddChip, onRemoveChip }: UseChipManagementProps) => {
14
+ chips: ChipValue[];
15
+ addChip: (chip: ChipValue) => void;
16
+ removeChip: (chipText: string) => void;
17
+ getChipTexts: () => string[];
18
+ hasErrorChips: boolean;
19
+ getErrorMessage: () => string;
20
+ };
21
+ export {};