@jobber/components 4.90.3 → 4.90.4

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 (638) hide show
  1. package/dist/AnimatedPresence/{index.cjs → index.js} +3 -1
  2. package/dist/{AnimatedPresence-CNNu0y2V.js → AnimatedPresence-20a02aaa.js} +7 -3
  3. package/dist/AnimatedSwitcher/index.js +13 -0
  4. package/dist/{AnimatedSwitcher-CXKNa7td.js → AnimatedSwitcher-3d45ec5d.js} +8 -4
  5. package/dist/AtlantisContext/{index.cjs → index.js} +3 -1
  6. package/dist/Autocomplete/index.js +214 -0
  7. package/dist/Avatar/index.js +15 -0
  8. package/dist/Avatar-76a799fa.js +78 -0
  9. package/dist/Banner/index.js +111 -0
  10. package/dist/Button/index.js +16 -0
  11. package/dist/Button-6b922fc1.js +57 -0
  12. package/dist/ButtonDismiss/index.js +17 -0
  13. package/dist/ButtonDismiss-a3ba1de2.js +14 -0
  14. package/dist/Card/index.js +24 -0
  15. package/dist/Card-01d6ba19.js +93 -0
  16. package/dist/Checkbox/index.js +18 -0
  17. package/dist/Checkbox-e481a4b1.js +63 -0
  18. package/dist/Chip/index.js +42 -0
  19. package/dist/Chip-76f18555.js +89 -0
  20. package/dist/Chips/index.js +525 -0
  21. package/dist/Combobox/index.js +41 -0
  22. package/dist/Combobox-6d864202.js +481 -0
  23. package/dist/ConfirmationModal/index.js +32 -0
  24. package/dist/{ConfirmationModal-BJRisSRI.js → ConfirmationModal-b44e302f.js} +12 -8
  25. package/dist/Content/index.js +12 -0
  26. package/dist/Content-e3f7b6fc.js +24 -0
  27. package/dist/Countdown/index.js +72 -0
  28. package/dist/DataDump/index.js +37 -0
  29. package/dist/DataList/index.js +1346 -0
  30. package/dist/DataTable/index.js +301 -0
  31. package/dist/DatePicker/index.js +21 -0
  32. package/dist/DatePicker-305a5b82.js +144 -0
  33. package/dist/DescriptionList/index.js +24 -0
  34. package/dist/Disclosure/index.js +46 -0
  35. package/dist/Divider/index.js +29 -0
  36. package/dist/Drawer/index.js +50 -0
  37. package/dist/Emphasis/index.js +13 -0
  38. package/dist/Emphasis-a77d8ee9.js +19 -0
  39. package/dist/FeatureSwitch/index.js +71 -0
  40. package/dist/Flex/index.js +12 -0
  41. package/dist/Flex-d490c4db.js +38 -0
  42. package/dist/{Form-C1OZbkgH.js → Form/index.js} +9 -3
  43. package/dist/FormField/index.js +24 -0
  44. package/dist/FormField-f6fadff2.js +253 -0
  45. package/dist/FormatDate/{index.cjs → index.js} +3 -1
  46. package/dist/{FormatDate-F_hdjag1.js → FormatDate-70ea5b43.js} +5 -1
  47. package/dist/FormatEmail/index.js +23 -0
  48. package/dist/FormatFile/index.js +37 -0
  49. package/dist/FormatFile-32228107.js +162 -0
  50. package/dist/{FormatRelativeDateTime-DJIQHUEo.js → FormatRelativeDateTime/index.js} +11 -5
  51. package/dist/{FormatTime-Bf1p46AK.js → FormatTime/index.js} +7 -1
  52. package/dist/Gallery/index.js +101 -0
  53. package/dist/Glimmer/index.js +15 -0
  54. package/dist/Glimmer-84dee1ed.js +77 -0
  55. package/dist/Grid/index.js +76 -0
  56. package/dist/Heading/index.js +15 -0
  57. package/dist/{Heading-CCFoOnua.js → Heading-23d382a1.js} +7 -3
  58. package/dist/Icon/index.js +11 -0
  59. package/dist/Icon-405a216c.js +40 -0
  60. package/dist/InlineLabel/index.js +13 -0
  61. package/dist/InlineLabel-c8fc28f0.js +28 -0
  62. package/dist/InputAvatar/index.js +70 -0
  63. package/dist/{InputDate-ChvqCIwy.js → InputDate/index.js} +31 -6
  64. package/dist/InputEmail/index.js +43 -0
  65. package/dist/InputFile/index.js +25 -0
  66. package/dist/InputFile-20b9074a.js +190 -0
  67. package/dist/InputGroup/index.js +12 -0
  68. package/dist/InputGroup-8d4fd4eb.js +33 -0
  69. package/dist/InputNumber/index.js +25 -0
  70. package/dist/{InputNumber-B1xScmfR.js → InputNumber-e15cc1a3.js} +6 -2
  71. package/dist/InputPassword/index.js +41 -0
  72. package/dist/{InputPhoneNumber-DWdXIF84.js → InputPhoneNumber/index.js} +27 -7
  73. package/dist/InputText/index.js +26 -0
  74. package/dist/{InputText-Br2K1C4M.js → InputText-130b0440.js} +8 -4
  75. package/dist/{InputTime-CpoUMFJT.js → InputTime/index.js} +25 -5
  76. package/dist/InputValidation/index.js +17 -0
  77. package/dist/InputValidation-a92bb519.js +29 -0
  78. package/dist/LightBox/index.js +25 -0
  79. package/dist/LightBox-7efe8932.js +121 -0
  80. package/dist/Link/index.js +15 -0
  81. package/dist/List/index.js +94 -0
  82. package/dist/Markdown/index.js +20 -0
  83. package/dist/Markdown-0f24de70.js +62 -0
  84. package/dist/Menu/index.js +21 -0
  85. package/dist/Menu-d6dd673e.js +139 -0
  86. package/dist/Modal/index.js +26 -0
  87. package/dist/Modal-067becad.js +73 -0
  88. package/dist/MultiSelect/index.js +182 -0
  89. package/dist/Option-a1dbc08a.js +19 -0
  90. package/dist/Page/index.js +78 -0
  91. package/dist/Popover/index.js +65 -0
  92. package/dist/ProgressBar/index.js +12 -0
  93. package/dist/ProgressBar-b68edc8f.js +43 -0
  94. package/dist/RadioGroup/index.js +15 -0
  95. package/dist/RadioGroup-678f4932.js +46 -0
  96. package/dist/RecurringSelect/index.js +227 -0
  97. package/dist/Select/index.js +26 -0
  98. package/dist/Spinner/index.js +12 -0
  99. package/dist/Spinner-9d8fc7ff.js +24 -0
  100. package/dist/StatusIndicator/index.js +11 -0
  101. package/dist/StatusIndicator-7b5258ea.js +18 -0
  102. package/dist/StatusLabel/index.js +28 -0
  103. package/dist/Switch/index.js +13 -0
  104. package/dist/Switch-eac89586.js +56 -0
  105. package/dist/Table/index.js +66 -0
  106. package/dist/Tabs/index.js +80 -0
  107. package/dist/Text/index.js +13 -0
  108. package/dist/{Text-Bopx9dUr.js → Text-fbeaaca6.js} +6 -2
  109. package/dist/Toast/index.js +111 -0
  110. package/dist/Tooltip/index.js +17 -0
  111. package/dist/Tooltip-b9de6e57.js +114 -0
  112. package/dist/Typography/index.js +12 -0
  113. package/dist/Typography-e2a23b7e.js +62 -0
  114. package/dist/style-inject.es-9d2f5f4e.js +30 -0
  115. package/dist/tslib.es6-754e2961.js +46 -0
  116. package/dist/{useAtlantisConfig-BbG41OXr.js → useAtlantisConfig-ed0bee66.js} +2 -2
  117. package/package.json +8 -394
  118. package/{rollup.config.mjs → rollup.config.js} +17 -50
  119. package/dist/AnimatedPresence/index.mjs +0 -4
  120. package/dist/AnimatedPresence-Cp8tOatE.js +0 -98
  121. package/dist/AnimatedSwitcher/index.cjs +0 -11
  122. package/dist/AnimatedSwitcher/index.mjs +0 -5
  123. package/dist/AnimatedSwitcher-DJqwc2sj.js +0 -90
  124. package/dist/AtlantisContext/index.mjs +0 -2
  125. package/dist/AtlantisContext-B2cWxzkp.js +0 -18
  126. package/dist/Autocomplete/index.cjs +0 -33
  127. package/dist/Autocomplete/index.mjs +0 -27
  128. package/dist/Autocomplete-CHcTq0Do.js +0 -192
  129. package/dist/Autocomplete-CswBpc7U.js +0 -190
  130. package/dist/Avatar/index.cjs +0 -12
  131. package/dist/Avatar/index.mjs +0 -6
  132. package/dist/Avatar-NVE7Yqd4.js +0 -69
  133. package/dist/Avatar-Q8rB73I2.js +0 -67
  134. package/dist/Banner/components/BannerIcon/index.cjs +0 -13
  135. package/dist/Banner/components/BannerIcon/index.mjs +0 -7
  136. package/dist/Banner/index.cjs +0 -23
  137. package/dist/Banner/index.mjs +0 -17
  138. package/dist/Banner-AzSFwco8.js +0 -79
  139. package/dist/Banner-DH176e7P.js +0 -81
  140. package/dist/BannerIcon-BDM1qFzc.js +0 -19
  141. package/dist/BannerIcon-Dg3SkxI7.js +0 -22
  142. package/dist/Body-ChUi3aq5.js +0 -54
  143. package/dist/Body-D1DdNQ7t.js +0 -45
  144. package/dist/Button/index.cjs +0 -13
  145. package/dist/Button/index.mjs +0 -7
  146. package/dist/Button-C6SHw1kI.js +0 -49
  147. package/dist/Button-Cfp4SFrN.js +0 -47
  148. package/dist/ButtonDismiss/index.cjs +0 -14
  149. package/dist/ButtonDismiss/index.mjs +0 -8
  150. package/dist/ButtonDismiss-Cf-2rvG0.js +0 -8
  151. package/dist/ButtonDismiss-DVALYLmq.js +0 -10
  152. package/dist/Card/index.cjs +0 -21
  153. package/dist/Card/index.mjs +0 -15
  154. package/dist/Card-DE7aMoA7.js +0 -83
  155. package/dist/Card-DXsK_SD7.js +0 -81
  156. package/dist/Checkbox/index.cjs +0 -15
  157. package/dist/Checkbox/index.mjs +0 -9
  158. package/dist/Checkbox-BXh_wazi.js +0 -55
  159. package/dist/Checkbox-DxC81YWi.js +0 -53
  160. package/dist/Chip/hooks/index.cjs +0 -8
  161. package/dist/Chip/hooks/index.mjs +0 -2
  162. package/dist/Chip/index.cjs +0 -26
  163. package/dist/Chip/index.mjs +0 -18
  164. package/dist/Chip-DDl2lMHv.js +0 -70
  165. package/dist/Chip-DhTvoOnl.js +0 -67
  166. package/dist/ChipDismissible-S-txJuLF.js +0 -19
  167. package/dist/ChipDismissible-dx2J1n-C.js +0 -22
  168. package/dist/Chips/InternalChipDismissible/hooks/index.cjs +0 -23
  169. package/dist/Chips/InternalChipDismissible/hooks/index.mjs +0 -13
  170. package/dist/Chips/InternalChipDismissible/index.cjs +0 -35
  171. package/dist/Chips/InternalChipDismissible/index.mjs +0 -29
  172. package/dist/Chips/index.cjs +0 -48
  173. package/dist/Chips/index.mjs +0 -44
  174. package/dist/Chips-BBnCrPul.js +0 -93
  175. package/dist/Chips-KPKpzxUx.js +0 -91
  176. package/dist/Combobox/components/ComboboxAction/index.cjs +0 -12
  177. package/dist/Combobox/components/ComboboxAction/index.mjs +0 -6
  178. package/dist/Combobox/components/ComboboxActivator/index.cjs +0 -27
  179. package/dist/Combobox/components/ComboboxActivator/index.mjs +0 -21
  180. package/dist/Combobox/components/ComboboxContent/ComboboxContentHeader/index.cjs +0 -14
  181. package/dist/Combobox/components/ComboboxContent/ComboboxContentHeader/index.mjs +0 -8
  182. package/dist/Combobox/components/ComboboxContent/ComboboxContentList/index.cjs +0 -24
  183. package/dist/Combobox/components/ComboboxContent/ComboboxContentList/index.mjs +0 -18
  184. package/dist/Combobox/components/ComboboxContent/ComboboxContentSearch/index.cjs +0 -10
  185. package/dist/Combobox/components/ComboboxContent/ComboboxContentSearch/index.mjs +0 -4
  186. package/dist/Combobox/components/ComboboxContent/ComboboxLoadMore/index.cjs +0 -9
  187. package/dist/Combobox/components/ComboboxContent/ComboboxLoadMore/index.mjs +0 -3
  188. package/dist/Combobox/components/ComboboxContent/index.cjs +0 -34
  189. package/dist/Combobox/components/ComboboxContent/index.mjs +0 -28
  190. package/dist/Combobox/components/ComboboxOption/index.cjs +0 -14
  191. package/dist/Combobox/components/ComboboxOption/index.mjs +0 -8
  192. package/dist/Combobox/components/ComboboxTrigger/index.cjs +0 -25
  193. package/dist/Combobox/components/ComboboxTrigger/index.mjs +0 -19
  194. package/dist/Combobox/index.cjs +0 -53
  195. package/dist/Combobox/index.mjs +0 -46
  196. package/dist/Combobox-DL8grBGD.js +0 -119
  197. package/dist/Combobox-DkiMKBIq.js +0 -117
  198. package/dist/ComboboxAction-BZcUzPiS.js +0 -22
  199. package/dist/ComboboxAction-BrphUdTc.js +0 -24
  200. package/dist/ComboboxActivator-B-hbPIvc.js +0 -28
  201. package/dist/ComboboxActivator-GbDe5-gd.js +0 -26
  202. package/dist/ComboboxContent-PbGOqYiy.js +0 -145
  203. package/dist/ComboboxContent-Y7XnpDxG.js +0 -143
  204. package/dist/ComboboxContentHeader-CXeTEKPJ.js +0 -29
  205. package/dist/ComboboxContentHeader-R33IqVfI.js +0 -27
  206. package/dist/ComboboxContentList-BcRD6OP7.js +0 -75
  207. package/dist/ComboboxContentList-QdY3v22O.js +0 -77
  208. package/dist/ComboboxContentSearch-BQoi8eST.js +0 -32
  209. package/dist/ComboboxContentSearch-BYHUi0_0.js +0 -34
  210. package/dist/ComboboxLoadMore-CTue6Ccg.js +0 -16
  211. package/dist/ComboboxLoadMore-Dwov5fXg.js +0 -14
  212. package/dist/ComboboxOption-BQAcmD8S.js +0 -20
  213. package/dist/ComboboxOption-CEM44lR4.js +0 -22
  214. package/dist/ComboboxProvider-BfK8pUar.js +0 -13
  215. package/dist/ComboboxProvider-CnooL3he.js +0 -10
  216. package/dist/ComboboxTrigger-BPoUI5Eo.js +0 -24
  217. package/dist/ComboboxTrigger-CUU6Np4P.js +0 -22
  218. package/dist/ConfirmationModal/index.cjs +0 -31
  219. package/dist/ConfirmationModal/index.mjs +0 -25
  220. package/dist/ConfirmationModal-DWSRaZne.js +0 -94
  221. package/dist/Content/index.cjs +0 -9
  222. package/dist/Content/index.mjs +0 -3
  223. package/dist/Content-BfbXarkv.js +0 -15
  224. package/dist/Content-DcpJaJjo.js +0 -13
  225. package/dist/Countdown/index.cjs +0 -11
  226. package/dist/Countdown/index.mjs +0 -5
  227. package/dist/Countdown-B1qWObYf.js +0 -659
  228. package/dist/Countdown-BcPHGeXW.js +0 -657
  229. package/dist/DataDump/index.cjs +0 -24
  230. package/dist/DataDump/index.mjs +0 -18
  231. package/dist/DataDump-CVjjQmzE.js +0 -17
  232. package/dist/DataDump-IdZ5dfe5.js +0 -15
  233. package/dist/DataList/components/DataListAction/index.cjs +0 -13
  234. package/dist/DataList/components/DataListAction/index.mjs +0 -7
  235. package/dist/DataList/components/DataListActions/index.cjs +0 -43
  236. package/dist/DataList/components/DataListActions/index.mjs +0 -37
  237. package/dist/DataList/components/DataListActionsMenu/index.cjs +0 -17
  238. package/dist/DataList/components/DataListActionsMenu/index.mjs +0 -11
  239. package/dist/DataList/components/DataListBulkActions/index.cjs +0 -46
  240. package/dist/DataList/components/DataListBulkActions/index.mjs +0 -39
  241. package/dist/DataList/components/DataListEmptyState/index.cjs +0 -20
  242. package/dist/DataList/components/DataListEmptyState/index.mjs +0 -13
  243. package/dist/DataList/components/DataListFilters/components/DataListSort/index.cjs +0 -54
  244. package/dist/DataList/components/DataListFilters/components/DataListSort/index.mjs +0 -48
  245. package/dist/DataList/components/DataListFilters/index.cjs +0 -68
  246. package/dist/DataList/components/DataListFilters/index.mjs +0 -61
  247. package/dist/DataList/components/DataListHeader/index.cjs +0 -53
  248. package/dist/DataList/components/DataListHeader/index.mjs +0 -47
  249. package/dist/DataList/components/DataListHeaderTile/components/index.cjs +0 -12
  250. package/dist/DataList/components/DataListHeaderTile/components/index.mjs +0 -6
  251. package/dist/DataList/components/DataListHeaderTile/index.cjs +0 -20
  252. package/dist/DataList/components/DataListHeaderTile/index.mjs +0 -14
  253. package/dist/DataList/components/DataListItem/components/DataListItemClickable/index.cjs +0 -14
  254. package/dist/DataList/components/DataListItem/components/DataListItemClickable/index.mjs +0 -8
  255. package/dist/DataList/components/DataListItem/index.cjs +0 -52
  256. package/dist/DataList/components/DataListItem/index.mjs +0 -46
  257. package/dist/DataList/components/DataListItemActions/index.cjs +0 -45
  258. package/dist/DataList/components/DataListItemActions/index.mjs +0 -38
  259. package/dist/DataList/components/DataListItemActionsOverflow/index.cjs +0 -25
  260. package/dist/DataList/components/DataListItemActionsOverflow/index.mjs +0 -19
  261. package/dist/DataList/components/DataListItems/index.cjs +0 -53
  262. package/dist/DataList/components/DataListItems/index.mjs +0 -47
  263. package/dist/DataList/components/DataListLayout/index.cjs +0 -56
  264. package/dist/DataList/components/DataListLayout/index.mjs +0 -50
  265. package/dist/DataList/components/DataListLayoutActions/DataListLayoutContext/index.cjs +0 -9
  266. package/dist/DataList/components/DataListLayoutActions/DataListLayoutContext/index.mjs +0 -2
  267. package/dist/DataList/components/DataListLayoutActions/index.cjs +0 -33
  268. package/dist/DataList/components/DataListLayoutActions/index.mjs +0 -27
  269. package/dist/DataList/components/DataListLoadMore/index.cjs +0 -21
  270. package/dist/DataList/components/DataListLoadMore/index.mjs +0 -14
  271. package/dist/DataList/components/DataListLoadingState/index.cjs +0 -21
  272. package/dist/DataList/components/DataListLoadingState/index.mjs +0 -13
  273. package/dist/DataList/components/DataListOverflowFade/index.cjs +0 -11
  274. package/dist/DataList/components/DataListOverflowFade/index.mjs +0 -4
  275. package/dist/DataList/components/DataListSearch/index.cjs +0 -33
  276. package/dist/DataList/components/DataListSearch/index.mjs +0 -25
  277. package/dist/DataList/components/DataListStatusBar/index.cjs +0 -32
  278. package/dist/DataList/components/DataListStatusBar/index.mjs +0 -25
  279. package/dist/DataList/components/DataListStickyHeader/index.cjs +0 -11
  280. package/dist/DataList/components/DataListStickyHeader/index.mjs +0 -5
  281. package/dist/DataList/components/DataListTags/index.cjs +0 -12
  282. package/dist/DataList/components/DataListTags/index.mjs +0 -6
  283. package/dist/DataList/components/DataListTotalCount/index.cjs +0 -15
  284. package/dist/DataList/components/DataListTotalCount/index.mjs +0 -8
  285. package/dist/DataList/context/DataListContext/index.cjs +0 -12
  286. package/dist/DataList/context/DataListContext/index.mjs +0 -4
  287. package/dist/DataList/context/DataListLayoutContext/index.cjs +0 -12
  288. package/dist/DataList/context/DataListLayoutContext/index.mjs +0 -4
  289. package/dist/DataList/index.cjs +0 -98
  290. package/dist/DataList/index.mjs +0 -92
  291. package/dist/DataList-BNFt3ksk.js +0 -139
  292. package/dist/DataList-Cr9VCHIX.js +0 -5
  293. package/dist/DataList-DHFR_-wI.js +0 -141
  294. package/dist/DataList-Dz5NINSZ.js +0 -3
  295. package/dist/DataList.const-D7NaHwv2.js +0 -25
  296. package/dist/DataList.const-DD8VmZp1.js +0 -38
  297. package/dist/DataList.utils-DhJ6Bzfb.js +0 -161
  298. package/dist/DataList.utils-nlVavDa-.js +0 -168
  299. package/dist/DataListAction-BLmcBkv3.js +0 -39
  300. package/dist/DataListAction-z0r8dyGZ.js +0 -37
  301. package/dist/DataListActions-4k1qQRcL.js +0 -43
  302. package/dist/DataListActions-DNsv1N2R.js +0 -45
  303. package/dist/DataListActionsMenu-4y3C6RwI.js +0 -55
  304. package/dist/DataListActionsMenu-D7LvCqEb.js +0 -57
  305. package/dist/DataListBulkActions-By-GrAPp.js +0 -29
  306. package/dist/DataListBulkActions-Ck89g6ye.js +0 -26
  307. package/dist/DataListContext-54s0cQ2-.js +0 -29
  308. package/dist/DataListContext-BQjPQQPp.js +0 -25
  309. package/dist/DataListEmptyState-5-J-3X4D.js +0 -53
  310. package/dist/DataListEmptyState-BtuGoNX6.js +0 -50
  311. package/dist/DataListFilters-sd7jBhQE.js +0 -46
  312. package/dist/DataListFilters-vylASUtC.js +0 -43
  313. package/dist/DataListHeader-Bkxr7WIZ.js +0 -95
  314. package/dist/DataListHeader-PvjsNn2I.js +0 -93
  315. package/dist/DataListHeaderTile-BybGOG6C.js +0 -81
  316. package/dist/DataListHeaderTile-KJ8Eae63.js +0 -79
  317. package/dist/DataListItem-BqNp3Eqq.js +0 -112
  318. package/dist/DataListItem-CCbOb4ts.js +0 -114
  319. package/dist/DataListItemActions-C25oc6Y-.js +0 -29
  320. package/dist/DataListItemActions-DPiWyGS1.js +0 -32
  321. package/dist/DataListItemActionsOverflow-Dy8lheES.js +0 -33
  322. package/dist/DataListItemActionsOverflow-ul1diZ44.js +0 -35
  323. package/dist/DataListItemClickable-BuMjNn5E.js +0 -47
  324. package/dist/DataListItemClickable-DQ5Sq-4_.js +0 -45
  325. package/dist/DataListItems--_6Rb8Jq.js +0 -19
  326. package/dist/DataListItems-DwAPcNSD.js +0 -21
  327. package/dist/DataListLayout-DWQ3LcOJ.js +0 -21
  328. package/dist/DataListLayout-DYcpl2hP.js +0 -19
  329. package/dist/DataListLayoutActions-B1EVoxK2.js +0 -36
  330. package/dist/DataListLayoutActions-DLj3XiZ5.js +0 -38
  331. package/dist/DataListLayoutContext-Dl1JtgLH.js +0 -11
  332. package/dist/DataListLayoutContext-DwmprXbf.js +0 -18
  333. package/dist/DataListLayoutContext-Il_5jPik.js +0 -14
  334. package/dist/DataListLayoutContext-TpQb0Nj2.js +0 -8
  335. package/dist/DataListLoadMore-FkGD7vHM.js +0 -34
  336. package/dist/DataListLoadMore-ZmJj5-i9.js +0 -31
  337. package/dist/DataListLoadingState-CR1Z1_AR.js +0 -26
  338. package/dist/DataListLoadingState-xQup12W4.js +0 -22
  339. package/dist/DataListOverflowFade-10aOxr8Q.js +0 -25
  340. package/dist/DataListOverflowFade-D0Nqey5v.js +0 -22
  341. package/dist/DataListSearch-DyYTAMCq.js +0 -59
  342. package/dist/DataListSearch-I4HkoS-h.js +0 -63
  343. package/dist/DataListSort-DWwMojZr.js +0 -94
  344. package/dist/DataListSort-GHDVPJ_E.js +0 -92
  345. package/dist/DataListSortingOptions-DpPwd-YR.js +0 -35
  346. package/dist/DataListSortingOptions-nk9dclSJ.js +0 -37
  347. package/dist/DataListStatusBar-Cq2c6T6R.js +0 -22
  348. package/dist/DataListStatusBar-DoDXKGHi.js +0 -25
  349. package/dist/DataListStickyHeader-6xUwJJD7.js +0 -23
  350. package/dist/DataListStickyHeader-xrbxWP2I.js +0 -25
  351. package/dist/DataListTags-69zAArZ2.js +0 -64
  352. package/dist/DataListTags-Ck_VOCzy.js +0 -62
  353. package/dist/DataListTotalCount-CJZ9FD36.js +0 -27
  354. package/dist/DataListTotalCount-Cns_GwAL.js +0 -24
  355. package/dist/DataTable/index.cjs +0 -36
  356. package/dist/DataTable/index.mjs +0 -25
  357. package/dist/DataTable/test-utilities/index.cjs +0 -246
  358. package/dist/DataTable/test-utilities/index.mjs +0 -238
  359. package/dist/DataTable-Bt0NOwH4.js +0 -236
  360. package/dist/DataTable-CNVDhnqd.js +0 -238
  361. package/dist/DatePicker/index.cjs +0 -26
  362. package/dist/DatePicker/index.mjs +0 -20
  363. package/dist/DatePicker-BRUF_5jL.js +0 -8554
  364. package/dist/DatePicker-Ck4FVQQS.js +0 -8551
  365. package/dist/DayOfMonthSelect-BdCBk0Fz.js +0 -130
  366. package/dist/DayOfMonthSelect-CmghghbK.js +0 -137
  367. package/dist/DescriptionList/index.cjs +0 -10
  368. package/dist/DescriptionList/index.mjs +0 -4
  369. package/dist/DescriptionList-BHllIrT9.js +0 -14
  370. package/dist/DescriptionList-BX86_iJ-.js +0 -12
  371. package/dist/Disclosure/index.cjs +0 -17
  372. package/dist/Disclosure/index.mjs +0 -11
  373. package/dist/Disclosure-BOotfD-_.js +0 -33
  374. package/dist/Disclosure-CwDEaUmN.js +0 -35
  375. package/dist/Divider/index.cjs +0 -9
  376. package/dist/Divider/index.mjs +0 -3
  377. package/dist/Divider-CGLchhDF.js +0 -17
  378. package/dist/Divider-yff7rtIo.js +0 -19
  379. package/dist/Drawer/index.cjs +0 -19
  380. package/dist/Drawer/index.mjs +0 -12
  381. package/dist/DrawerGrid-Csj6IRXw.js +0 -28
  382. package/dist/DrawerGrid-Dhe6uh-8.js +0 -31
  383. package/dist/Emphasis/index.cjs +0 -10
  384. package/dist/Emphasis/index.mjs +0 -4
  385. package/dist/Emphasis-RZbI_yDN.js +0 -15
  386. package/dist/Emphasis-ieWWb3pq.js +0 -13
  387. package/dist/FeatureSwitch/index.cjs +0 -26
  388. package/dist/FeatureSwitch/index.mjs +0 -20
  389. package/dist/FeatureSwitch-BcLRihpc.js +0 -52
  390. package/dist/FeatureSwitch-DKsr91OR.js +0 -54
  391. package/dist/Flex/index.cjs +0 -9
  392. package/dist/Flex/index.mjs +0 -3
  393. package/dist/Flex-CloUiW2f.js +0 -28
  394. package/dist/Flex-mRkBGC1G.js +0 -30
  395. package/dist/Form/index.cjs +0 -10
  396. package/dist/Form/index.mjs +0 -4
  397. package/dist/Form-Brm98BxU.js +0 -48
  398. package/dist/FormField/index.cjs +0 -20
  399. package/dist/FormField/index.mjs +0 -14
  400. package/dist/FormField-CevGrDGm.js +0 -261
  401. package/dist/FormField-DgvKr2RR.js +0 -263
  402. package/dist/FormatDate/index.mjs +0 -2
  403. package/dist/FormatDate-Cuu1uyX_.js +0 -27
  404. package/dist/FormatEmail/index.cjs +0 -9
  405. package/dist/FormatEmail/index.mjs +0 -3
  406. package/dist/FormatEmail-BL75oJKz.js +0 -11
  407. package/dist/FormatEmail-FWzV4fL2.js +0 -13
  408. package/dist/FormatFile/index.cjs +0 -36
  409. package/dist/FormatFile/index.mjs +0 -30
  410. package/dist/FormatFile-CaULPATZ.js +0 -149
  411. package/dist/FormatFile-Dkkpc4RO.js +0 -147
  412. package/dist/FormatRelativeDateTime/index.cjs +0 -8
  413. package/dist/FormatRelativeDateTime/index.mjs +0 -2
  414. package/dist/FormatRelativeDateTime-SwQGKFKx.js +0 -64
  415. package/dist/FormatTime/index.cjs +0 -8
  416. package/dist/FormatTime/index.mjs +0 -2
  417. package/dist/FormatTime-BUp8wKYB.js +0 -29
  418. package/dist/Gallery/index.cjs +0 -42
  419. package/dist/Gallery/index.mjs +0 -36
  420. package/dist/Gallery-iRUMatk_.js +0 -65
  421. package/dist/Gallery-ondjCKOu.js +0 -63
  422. package/dist/Glimmer/index.cjs +0 -12
  423. package/dist/Glimmer/index.mjs +0 -5
  424. package/dist/Glimmer-CVTrhX52.js +0 -60
  425. package/dist/Glimmer-CnsLTogn.js +0 -63
  426. package/dist/Grid/InternalGridCell/index.cjs +0 -9
  427. package/dist/Grid/InternalGridCell/index.mjs +0 -2
  428. package/dist/Grid/index.cjs +0 -14
  429. package/dist/Grid/index.mjs +0 -7
  430. package/dist/Grid-DC7GAarU.js +0 -29
  431. package/dist/Grid-c8FgrzP7.js +0 -32
  432. package/dist/Heading/index.cjs +0 -12
  433. package/dist/Heading/index.mjs +0 -6
  434. package/dist/Heading-Cik7AvDW.js +0 -49
  435. package/dist/Icon/index.cjs +0 -9
  436. package/dist/Icon/index.mjs +0 -3
  437. package/dist/Icon-Cprfa6DH.js +0 -34
  438. package/dist/Icon-DN6zZdoZ.js +0 -36
  439. package/dist/InlineLabel/index.cjs +0 -10
  440. package/dist/InlineLabel/index.mjs +0 -4
  441. package/dist/InlineLabel-DjcM6md2.js +0 -18
  442. package/dist/InlineLabel-DpGHWyZ1.js +0 -20
  443. package/dist/InputAvatar/index.cjs +0 -26
  444. package/dist/InputAvatar/index.mjs +0 -20
  445. package/dist/InputAvatar-0CRsukeF.js +0 -49
  446. package/dist/InputAvatar-BR9CNN8N.js +0 -47
  447. package/dist/InputDate/index.cjs +0 -34
  448. package/dist/InputDate/index.mjs +0 -28
  449. package/dist/InputDate-Di1ilUDK.js +0 -48
  450. package/dist/InputEmail/index.cjs +0 -22
  451. package/dist/InputEmail/index.mjs +0 -15
  452. package/dist/InputEmail-2iUVN3lX.js +0 -23
  453. package/dist/InputEmail-DIaAL1Fj.js +0 -20
  454. package/dist/InputFile/index.cjs +0 -23
  455. package/dist/InputFile/index.mjs +0 -16
  456. package/dist/InputFile-CQcJalUx.js +0 -1611
  457. package/dist/InputFile-DrLKxOEw.js +0 -1608
  458. package/dist/InputGroup/index.cjs +0 -9
  459. package/dist/InputGroup/index.mjs +0 -3
  460. package/dist/InputGroup-CDAggb3R.js +0 -25
  461. package/dist/InputGroup-CqwRtrCP.js +0 -23
  462. package/dist/InputNumber/index.cjs +0 -21
  463. package/dist/InputNumber/index.mjs +0 -15
  464. package/dist/InputNumber-CJabx_OX.js +0 -56
  465. package/dist/InputPassword/index.cjs +0 -21
  466. package/dist/InputPassword/index.mjs +0 -15
  467. package/dist/InputPassword-558tvE1p.js +0 -21
  468. package/dist/InputPassword-DIzD-pX3.js +0 -19
  469. package/dist/InputPhoneNumber/index.cjs +0 -21
  470. package/dist/InputPhoneNumber/index.mjs +0 -15
  471. package/dist/InputPhoneNumber-DRdIU41q.js +0 -94
  472. package/dist/InputText/index.cjs +0 -22
  473. package/dist/InputText/index.mjs +0 -16
  474. package/dist/InputText-CyGO_Jef.js +0 -96
  475. package/dist/InputTime/index.cjs +0 -26
  476. package/dist/InputTime/index.mjs +0 -20
  477. package/dist/InputTime-kqDNzoYY.js +0 -190
  478. package/dist/InputValidation/index.cjs +0 -14
  479. package/dist/InputValidation/index.mjs +0 -8
  480. package/dist/InputValidation-CA3D4HMZ.js +0 -22
  481. package/dist/InputValidation-D4MvsPKI.js +0 -20
  482. package/dist/InternalChipDismissible-B7LrCyb7.js +0 -152
  483. package/dist/InternalChipDismissible-C52ZoCE0.js +0 -157
  484. package/dist/InternalGridCell-DqEoIvP9.js +0 -34
  485. package/dist/InternalGridCell-zig0sMW5.js +0 -37
  486. package/dist/LightBox/index.cjs +0 -26
  487. package/dist/LightBox/index.mjs +0 -20
  488. package/dist/LightBox-BMcZ0zUE.js +0 -112
  489. package/dist/LightBox-DdN2Kv2x.js +0 -110
  490. package/dist/Link/index.cjs +0 -8
  491. package/dist/Link/index.mjs +0 -2
  492. package/dist/Link-BXg1N0uc.js +0 -7
  493. package/dist/Link-D4vsUc4Q.js +0 -9
  494. package/dist/List/index.cjs +0 -29
  495. package/dist/List/index.mjs +0 -22
  496. package/dist/List-DEIH9jaA.js +0 -189
  497. package/dist/List-Dh-L_8Vd.js +0 -186
  498. package/dist/Markdown/index.cjs +0 -19
  499. package/dist/Markdown/index.mjs +0 -13
  500. package/dist/Markdown-DIOh2S0u.js +0 -19011
  501. package/dist/Markdown-GR9F9CIO.js +0 -19013
  502. package/dist/Menu/index.cjs +0 -18
  503. package/dist/Menu/index.mjs +0 -12
  504. package/dist/Menu-D4apJOhh.js +0 -131
  505. package/dist/Menu-IjuAzGId.js +0 -129
  506. package/dist/Modal/index.cjs +0 -23
  507. package/dist/Modal/index.mjs +0 -17
  508. package/dist/Modal-Dr-Y4-gf.js +0 -62
  509. package/dist/Modal-aGXkiuSS.js +0 -60
  510. package/dist/MultiSelect/index.cjs +0 -16
  511. package/dist/MultiSelect/index.mjs +0 -10
  512. package/dist/MultiSelect-1LkHc-4a.js +0 -166
  513. package/dist/MultiSelect-CIFWIwY6.js +0 -164
  514. package/dist/Option-DLsUvwdO.js +0 -12
  515. package/dist/Option-c12Y1Noe.js +0 -15
  516. package/dist/Page/index.cjs +0 -32
  517. package/dist/Page/index.mjs +0 -26
  518. package/dist/Page-CakXCvoE.js +0 -58
  519. package/dist/Page-DwQymzZk.js +0 -56
  520. package/dist/Popover/index.cjs +0 -17
  521. package/dist/Popover/index.mjs +0 -11
  522. package/dist/Popover-BY0EW6zV.js +0 -48
  523. package/dist/Popover-ByVk1LqF.js +0 -50
  524. package/dist/ProgressBar/index.cjs +0 -9
  525. package/dist/ProgressBar/index.mjs +0 -3
  526. package/dist/ProgressBar-52i53SJE.js +0 -33
  527. package/dist/ProgressBar-BaSkqP8J.js +0 -31
  528. package/dist/RadioGroup/index.cjs +0 -12
  529. package/dist/RadioGroup/index.mjs +0 -5
  530. package/dist/RadioGroup-CRwAZq63.js +0 -36
  531. package/dist/RadioGroup-TNqC7foh.js +0 -39
  532. package/dist/RecurringSelect/components/index.cjs +0 -15
  533. package/dist/RecurringSelect/components/index.mjs +0 -6
  534. package/dist/RecurringSelect/index.cjs +0 -35
  535. package/dist/RecurringSelect/index.mjs +0 -21
  536. package/dist/RecurringSelect-VBGk4Lt2.js +0 -71
  537. package/dist/RecurringSelect-cwPdAc_S.js +0 -69
  538. package/dist/Select/index.cjs +0 -22
  539. package/dist/Select/index.mjs +0 -15
  540. package/dist/Spinner/index.cjs +0 -9
  541. package/dist/Spinner/index.mjs +0 -3
  542. package/dist/Spinner-L0bWOO6S.js +0 -16
  543. package/dist/Spinner-gZOK7Pbk.js +0 -14
  544. package/dist/StatusIndicator/index.cjs +0 -8
  545. package/dist/StatusIndicator/index.mjs +0 -2
  546. package/dist/StatusIndicator-CQ4BuDSG.js +0 -9
  547. package/dist/StatusIndicator-CQu-mhiP.js +0 -11
  548. package/dist/StatusLabel/index.cjs +0 -11
  549. package/dist/StatusLabel/index.mjs +0 -5
  550. package/dist/StatusLabel-C8xAbAuq.js +0 -18
  551. package/dist/StatusLabel-O-4M1wUA.js +0 -16
  552. package/dist/Switch/index.cjs +0 -10
  553. package/dist/Switch/index.mjs +0 -4
  554. package/dist/Switch-DMYTNJjq.js +0 -48
  555. package/dist/Switch-DqzUCyHn.js +0 -46
  556. package/dist/Table/index.cjs +0 -17
  557. package/dist/Table/index.mjs +0 -4
  558. package/dist/Tabs/index.cjs +0 -11
  559. package/dist/Tabs/index.mjs +0 -4
  560. package/dist/Tabs-C3qMIs1F.js +0 -67
  561. package/dist/Tabs-CRY_vyNW.js +0 -70
  562. package/dist/Text/index.cjs +0 -10
  563. package/dist/Text/index.mjs +0 -4
  564. package/dist/Text-DALHhxHl.js +0 -25
  565. package/dist/Toast/index.cjs +0 -16
  566. package/dist/Toast/index.mjs +0 -10
  567. package/dist/Tooltip/index.cjs +0 -14
  568. package/dist/Tooltip/index.mjs +0 -8
  569. package/dist/Tooltip-B2DBKrJM.js +0 -103
  570. package/dist/Tooltip-VHTRuZ4Y.js +0 -105
  571. package/dist/Typography/index.cjs +0 -9
  572. package/dist/Typography/index.mjs +0 -3
  573. package/dist/Typography-D6YoQOGF.js +0 -36
  574. package/dist/Typography-WLLQxuNl.js +0 -38
  575. package/dist/_baseAssignValue-BthOhxdo.js +0 -29
  576. package/dist/_baseAssignValue-Dt4F7vTV.js +0 -31
  577. package/dist/_baseEach-BECef8ru.js +0 -1069
  578. package/dist/_baseEach-Dze5I6UM.js +0 -1073
  579. package/dist/_commonjsHelpers-COf7qtKz.js +0 -32
  580. package/dist/_commonjsHelpers-vq2WA-uE.js +0 -36
  581. package/dist/_defineProperty-2TBZHj_H.js +0 -1306
  582. package/dist/_defineProperty-DxuhV38S.js +0 -1326
  583. package/dist/_getTag-BhVE5Z9s.js +0 -733
  584. package/dist/_getTag-Z6aLseUE.js +0 -718
  585. package/dist/_polyfill-node.process-e5fcXoUk.js +0 -255
  586. package/dist/_polyfill-node.process-mCRQTL4d.js +0 -258
  587. package/dist/_setToString-CFGrPYbk.js +0 -230
  588. package/dist/_setToString-D9q1MBnP.js +0 -234
  589. package/dist/debounce-DNEaQL1N.js +0 -332
  590. package/dist/debounce-DgeBwtKp.js +0 -329
  591. package/dist/helpers-QJ7YD42d.js +0 -17
  592. package/dist/helpers-cJmOwx3u.js +0 -15
  593. package/dist/index-C4SneFNu.js +0 -1186
  594. package/dist/index-yqmGqwFM.js +0 -1189
  595. package/dist/index.cjs +0 -275
  596. package/dist/index.d.mts +0 -74
  597. package/dist/index.d.ts +0 -74
  598. package/dist/index.mjs +0 -162
  599. package/dist/isObjectLike-BLBufvwS.js +0 -197
  600. package/dist/isObjectLike-CqUyaiWM.js +0 -190
  601. package/dist/isSymbol-MYvz4htB.js +0 -35
  602. package/dist/isSymbol-_Iyy_jRJ.js +0 -33
  603. package/dist/noop-C8qh6oDm.js +0 -26
  604. package/dist/noop-CNfu_5-L.js +0 -24
  605. package/dist/showToast-BB8OsmX0.js +0 -97
  606. package/dist/showToast-DNc6Ghvi.js +0 -99
  607. package/dist/styles.css +0 -8762
  608. package/dist/tslib.es6-CQnq_FvL.js +0 -97
  609. package/dist/tslib.es6-v7P0Y776.js +0 -102
  610. package/dist/useActiveLayout-C0_CiH6w.js +0 -16
  611. package/dist/useActiveLayout-CpgnILog.js +0 -14
  612. package/dist/useAssert--FSFxEub.js +0 -27
  613. package/dist/useAssert-BRTg70rg.js +0 -27
  614. package/dist/useAtlantisConfig-ClMTcI5f.js +0 -14
  615. package/dist/useBatchSelect-CTMzNd5R.js +0 -36
  616. package/dist/useBatchSelect-nB5zKoLG.js +0 -38
  617. package/dist/useChildComponent-2LnkmIw0.js +0 -15
  618. package/dist/useChildComponent-Dv0rjZs2.js +0 -17
  619. package/dist/useFocusTrap-DDVdHPLP.js +0 -74
  620. package/dist/useFocusTrap-J4nqJhkL.js +0 -74
  621. package/dist/useInView-D7JiU6w9.js +0 -25
  622. package/dist/useInView-DRRNAygj.js +0 -25
  623. package/dist/useIsMounted-Ds9qZzhJ.js +0 -47
  624. package/dist/useIsMounted-sw4iFcH2.js +0 -47
  625. package/dist/useOnKeyDown-BBUzTpsM.js +0 -40
  626. package/dist/useOnKeyDown-ClBoAl9o.js +0 -40
  627. package/dist/useRefocusOnActivator-DhXYZbJ2.js +0 -32
  628. package/dist/useRefocusOnActivator-JhjmSWbr.js +0 -32
  629. package/dist/useResizeObserver-Bt-giwIv.js +0 -1192
  630. package/dist/useResizeObserver-D7zJHmH-.js +0 -1189
  631. package/dist/useResponsiveSizing-CaFHa0P8.js +0 -49
  632. package/dist/useResponsiveSizing-X79bu1Sd.js +0 -51
  633. package/dist/useSafeLayoutEffect-87KYIon5.js +0 -14
  634. package/dist/useSafeLayoutEffect-IMNHxeSN.js +0 -12
  635. package/dist/useScrollToActive-AgUIt0XS.js +0 -591
  636. package/dist/useScrollToActive-D4MUBncA.js +0 -597
  637. /package/{.eslintrc.cjs → .eslintrc.js} +0 -0
  638. /package/dist/{AtlantisContext-kZu_c9Er.js → AtlantisContext-64608897.js} +0 -0
@@ -0,0 +1,525 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var classnames = require('classnames');
7
+ var styleInject_es = require('../style-inject.es-9d2f5f4e.js');
8
+ var useAssert = require('@jobber/hooks/useAssert');
9
+ var Icon = require('../Icon-405a216c.js');
10
+ var Avatar = require('../Avatar-76a799fa.js');
11
+ var Typography = require('../Typography-e2a23b7e.js');
12
+ var Tooltip = require('../Tooltip-b9de6e57.js');
13
+ var sortBy = require('lodash/sortBy');
14
+ var useLiveAnnounce = require('@jobber/hooks/useLiveAnnounce');
15
+ var debounce = require('lodash/debounce');
16
+ require('@jobber/design');
17
+ var reactPopper = require('react-popper');
18
+ var Text = require('../Text-fbeaaca6.js');
19
+ var Button = require('../Button-6b922fc1.js');
20
+ var Spinner = require('../Spinner-9d8fc7ff.js');
21
+ require('color');
22
+ require('react-dom');
23
+ require('framer-motion');
24
+ require('@jobber/hooks/useSafeLayoutEffect');
25
+ require('@jobber/hooks/useIsMounted');
26
+ require('react-router-dom');
27
+
28
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
29
+
30
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
31
+ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
32
+ var sortBy__default = /*#__PURE__*/_interopDefaultLegacy(sortBy);
33
+ var debounce__default = /*#__PURE__*/_interopDefaultLegacy(debounce);
34
+
35
+ var css_248z$1 = "/**\n * Used in the wrapping chips component:\n * - InternalChipSingleSelect\n * - InternalChipMultiSelect\n */\n\n.zn6onyiQVmA- {\n display: -ms-flexbox;\n display: flex;\n gap: calc(16px / 2);\n gap: var(--space-small);\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.PEnZzMEgbhU- {\n display: inline-grid;\n position: relative;\n max-width: 100%;\n box-sizing: border-box;\n padding: calc(16px / 2);\n padding: var(--space-small);\n border: calc(16px / 16) solid rgb(217, 223, 225);\n border: var(--border-base) solid var(--color-border);\n border-radius: calc(16px / 2);\n border-radius: var(--radius-larger);\n color: rgb(77, 105, 116);\n color: var(--color-text--secondary);\n text-align: left;\n vertical-align: middle;\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n transition: 200ms ease-in-out;\n transition: var(--timing-base) ease-in-out;\n transition-property: background-color, box-shadow, color;\n grid-template-columns: -webkit-max-content;\n grid-template-columns: max-content;\n -ms-flex-align: center;\n align-items: center;\n gap: calc(16px / 2);\n gap: var(--space-small);\n}\n\n.dtysUhwYdG4-,\n.xGaMCAYsdwA- {\n padding: calc((16px / 4) + (16px / 8)) calc(16px / 2);\n padding: calc(calc(16px / 4) + calc(16px / 8)) calc(16px / 2);\n padding: calc(var(--space-smaller) + var(--space-smallest)) var(--space-small);\n}\n\n.dtysUhwYdG4- {\n grid-template-columns: -webkit-min-content 1fr;\n grid-template-columns: min-content 1fr;\n}\n\n.xGaMCAYsdwA- {\n grid-template-columns: 1fr -webkit-min-content;\n grid-template-columns: 1fr min-content;\n}\n\n.dtysUhwYdG4-.xGaMCAYsdwA- {\n grid-template-columns: -webkit-min-content 1fr -webkit-min-content;\n grid-template-columns: min-content 1fr min-content;\n}\n\n.SNT7gGV-h-o-,\n.W4D98cvEth4- ~ .PEnZzMEgbhU- {\n box-shadow: 0px calc(16px / 16) calc(16px / 4) 0px\n rgba(0, 0, 0, 0.1),\n 0px calc(16px / 4) 12px 0px rgba(0, 0, 0, 0.05);\n box-shadow: var(--shadow-base);\n cursor: pointer;\n -webkit-appearance: none;\n appearance: none;\n}\n\n/**\n * Interaction\n */\n\n.PEnZzMEgbhU-:focus,\n.W4D98cvEth4-:focus ~ .PEnZzMEgbhU- {\n box-shadow: 0px 0px 0px calc(16px / 8) rgba(255, 255, 255, 1),\n 0px 0px 0px calc(16px / 4) rgb(147, 161, 169);\n box-shadow: var(--shadow-focus);\n outline: none;\n}\n\n.SNT7gGV-h-o-:hover,\n.W4D98cvEth4- ~ .PEnZzMEgbhU-:not(._0hEzaTXK9M0-):hover,\n.W4D98cvEth4-:focus ~ .PEnZzMEgbhU-:not(._0hEzaTXK9M0-) {\n background-color: rgb(244, 246, 250);\n background-color: var(--color-surface--hover);\n}\n\n/**\n * States\n */\n\n.PEnZzMEgbhU-._0hEzaTXK9M0- {\n border-color: rgb(1, 41, 57);\n border-color: var(--color-surface--reverse);\n color: rgba(255, 255, 255, 1);\n color: var(--color-text--reverse);\n background-color: rgb(1, 41, 57);\n background-color: var(--color-surface--reverse);\n}\n\n.PEnZzMEgbhU-.JApS2787BU8- {\n border-color: rgb(128, 25, 0);\n border-color: var(--color-critical--onSurface);\n color: rgb(128, 25, 0);\n color: var(--color-critical--onSurface);\n background-color: rgb(255, 226, 219);\n background-color: var(--color-critical--surface);\n}\n\n.PEnZzMEgbhU-.Kg0c8WVgMpg- {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n color: rgb(181, 181, 181);\n color: var(--color-disabled);\n background-color: rgb(225, 225, 225);\n background-color: var(--color-disabled--secondary);\n}\n\n._0hEzaTXK9M0-.Kg0c8WVgMpg- {\n border-color: rgb(181, 181, 181);\n border-color: var(--color-disabled);\n color: rgba(255, 255, 255, 1);\n color: var(--color-white);\n background-color: rgb(181, 181, 181);\n background-color: var(--color-disabled);\n}\n\n.JApS2787BU8-.Kg0c8WVgMpg- {\n border-color: rgb(201, 66, 33);\n border-color: var(--color-critical);\n}\n\n/**\n * Input checkbox/radio\n *\n * Hide checkbox on UI but not screen readers and still allow focus state\n */\n\n.W4D98cvEth4- {\n position: absolute;\n width: 1px;\n height: 1px;\n overflow: hidden;\n clip: rect(0 0 0 0);\n -webkit-clip-path: inset(100%);\n clip-path: inset(100%);\n white-space: nowrap;\n}\n\n/**\n * Button\n */\n\n._0-ZWexS4Gfg- {\n display: -ms-flexbox;\n display: flex;\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n cursor: pointer;\n transition: background-color 200ms ease;\n}\n\n._0-ZWexS4Gfg-:hover,\n._0-ZWexS4Gfg-:focus {\n background-color: rgb(244, 246, 250);\n background-color: var(--color-surface--hover);\n}\n\n._0-ZWexS4Gfg-:focus,\n.SNT7gGV-h-o- ._0-ZWexS4Gfg-:hover {\n box-shadow: 0px 0px 0px calc(16px / 8) rgba(255, 255, 255, 1),\n 0px 0px 0px calc(16px / 4) rgb(147, 161, 169);\n box-shadow: var(--shadow-focus);\n outline: none;\n}\n\n/**\n * Override icon default colors.\n *\n * NOTE: This is a workaround since some icons have default colors that we don't\n * want to override until the component color prop overrides it.\n * DO NOT COPY!\n */\n\n.DQPnZP4UZpw- > svg {\n fill: rgba(101, 120, 132, 1);\n fill: var(--color-interactive--subtle);\n}\n\n.DQPnZP4UZpw- {\n display: -ms-flexbox;\n display: flex;\n}\n";
36
+ var styles$1 = {"wrapper":"zn6onyiQVmA-","chip":"PEnZzMEgbhU-","hasPrefix":"dtysUhwYdG4-","hasSuffix":"xGaMCAYsdwA-","clickable":"SNT7gGV-h-o-","input":"W4D98cvEth4-","active":"_0hEzaTXK9M0-","invalid":"JApS2787BU8-","disabled":"Kg0c8WVgMpg-","button":"_0-ZWexS4Gfg-","icon":"DQPnZP4UZpw-"};
37
+ styleInject_es.styleInject(css_248z$1);
38
+
39
+ function InternalChipButton({ icon, invalid, disabled, label, onClick, }) {
40
+ const buttonRef = React.useRef();
41
+ return (React__default["default"].createElement("div", { ref: buttonRef, className: styles$1.button, tabIndex: 0, onKeyUp: handleKeyUp, onKeyDown: handleKeyDown, onClick: handleClick, role: "button", "aria-label": `Remove ${label}`, "aria-hidden": true, "aria-disabled": disabled, "data-testid": "remove-chip-button" },
42
+ React__default["default"].createElement(Icon.Icon, { name: icon, color: getColor() })));
43
+ function handleKeyUp(event) {
44
+ if (document.activeElement === buttonRef.current &&
45
+ (event.key === " " || event.key === "Enter")) {
46
+ event.stopPropagation();
47
+ buttonRef.current.click();
48
+ }
49
+ }
50
+ function handleKeyDown(event) {
51
+ if (document.activeElement === buttonRef.current && event.key === " ") {
52
+ // Don't scroll down
53
+ event.preventDefault();
54
+ }
55
+ }
56
+ function getColor() {
57
+ if (disabled)
58
+ return "disabled";
59
+ if (invalid)
60
+ return "critical";
61
+ return "greyBlue";
62
+ }
63
+ function handleClick(event) {
64
+ event.stopPropagation();
65
+ onClick === null || onClick === void 0 ? void 0 : onClick(event);
66
+ }
67
+ }
68
+
69
+ function InternalChipAffix({ affix, active, invalid, disabled, }) {
70
+ assertProps();
71
+ if ((affix === null || affix === void 0 ? void 0 : affix.type) === Avatar.Avatar) {
72
+ return React__default["default"].createElement(Avatar.Avatar, Object.assign({}, affix.props, { size: "small" }));
73
+ }
74
+ if ((affix === null || affix === void 0 ? void 0 : affix.type) === Icon.Icon) {
75
+ return renderChipIcon(affix);
76
+ }
77
+ if ((affix === null || affix === void 0 ? void 0 : affix.type) === InternalChipButton) {
78
+ return React__default["default"].createElement(InternalChipButton, Object.assign({}, affix.props));
79
+ }
80
+ return React__default["default"].createElement(React__default["default"].Fragment, null);
81
+ function renderChipIcon(icon) {
82
+ const color = getIconColor();
83
+ return (React__default["default"].createElement("div", { className: styles$1.icon }, React__default["default"].cloneElement(icon, Object.assign({ size: "base" }, (color && { color: color })))));
84
+ }
85
+ function getIconColor() {
86
+ if (disabled && !active)
87
+ return "disabled";
88
+ if (invalid && !disabled)
89
+ return "critical";
90
+ if (active)
91
+ return "white";
92
+ return;
93
+ }
94
+ function assertProps() {
95
+ const isAvatar = (affix === null || affix === void 0 ? void 0 : affix.type) === Avatar.Avatar || false;
96
+ const isIcon = (affix === null || affix === void 0 ? void 0 : affix.type) === Icon.Icon || false;
97
+ const isChipButton = (affix === null || affix === void 0 ? void 0 : affix.type) === InternalChipButton || false;
98
+ useAssert.useAssert(!!affix && !(isAvatar || isIcon || isChipButton), `Prefix prop only accepts "<Avatar />" or "<Icon />" component. You have "${affix === null || affix === void 0 ? void 0 : affix.type}".`);
99
+ }
100
+ }
101
+
102
+ function InternalChip({ label, active = false, disabled = false, invalid = false, prefix, suffix, tabIndex, ariaLabel, onClick, onKeyDown, }) {
103
+ const [truncateRef, setTruncateRef] = React.useState();
104
+ const isClickable = onClick && !disabled;
105
+ const classNames = classnames__default["default"](styles$1.chip, {
106
+ [styles$1.clickable]: isClickable,
107
+ [styles$1.active]: active,
108
+ [styles$1.disabled]: disabled,
109
+ [styles$1.invalid]: invalid,
110
+ [styles$1.hasPrefix]: prefix,
111
+ [styles$1.hasSuffix]: suffix,
112
+ });
113
+ const affixProps = { active, invalid, disabled };
114
+ const Tag = onClick ? "button" : "div";
115
+ const chip = (React__default["default"].createElement(Tag, Object.assign({ className: classNames }, (isClickable && { onClick, disabled }), { onKeyDown: onKeyDown, "data-testid": "chip-wrapper", "aria-label": ariaLabel, tabIndex: tabIndex, role: tabIndex !== undefined ? "option" : undefined }),
116
+ React__default["default"].createElement(InternalChipAffix, Object.assign({ affix: prefix }, affixProps)),
117
+ React__default["default"].createElement(Typography.Typography, { element: "span", numberOfLines: 1, size: "base" },
118
+ React__default["default"].createElement("span", { ref: setTruncateRef }, label)),
119
+ React__default["default"].createElement(InternalChipAffix, Object.assign({ affix: suffix }, affixProps))));
120
+ return isTruncated() ? React__default["default"].createElement(Tooltip.Tooltip, { message: label }, chip) : chip;
121
+ function isTruncated() {
122
+ var _a;
123
+ const truncateParentHeight = ((_a = truncateRef === null || truncateRef === void 0 ? void 0 : truncateRef.parentElement) === null || _a === void 0 ? void 0 : _a.offsetHeight) || 0;
124
+ const truncateChildHeight = (truncateRef === null || truncateRef === void 0 ? void 0 : truncateRef.offsetHeight) || 0;
125
+ return truncateChildHeight >= truncateParentHeight * 2;
126
+ }
127
+ }
128
+
129
+ function ChipDismissible({ label, disabled, invalid, prefix, onClick, onRequestRemove, }) {
130
+ return (React__default["default"].createElement(InternalChip, { label: label, disabled: disabled, invalid: invalid, prefix: prefix, onClick: onClick, suffix: React__default["default"].createElement(InternalChipButton, { icon: "remove", label: label, invalid: invalid, disabled: disabled, onClick: onRequestRemove }) }));
131
+ }
132
+
133
+ function InternalChipSingleSelect({ children, selected, name = React.useId(), onChange, onClick, }) {
134
+ return (React__default["default"].createElement("div", { className: styles$1.wrapper, "data-testid": "singleselect-chips" }, React__default["default"].Children.map(children, child => {
135
+ const isSelected = child.props.value === selected;
136
+ return (React__default["default"].createElement("label", null,
137
+ React__default["default"].createElement("input", { type: "radio", checked: isSelected, className: styles$1.input, name: name, onClick: handleClick(child.props.value), onKeyUp: handleKeyUp(isSelected, child.props.value), onChange: () => {
138
+ /* No op. onClick handles the change to allow deselecting. */
139
+ }, disabled: child.props.disabled }),
140
+ React__default["default"].createElement(InternalChip, Object.assign({}, child.props, { active: isSelected }))));
141
+ })));
142
+ function handleKeyUp(active, value) {
143
+ if (!active)
144
+ return;
145
+ return (event) => {
146
+ if (event.key === " ") {
147
+ // Wait for DOM changes before applying the new change.
148
+ setTimeout(() => handleChange(value), 0);
149
+ }
150
+ };
151
+ }
152
+ function handleClick(value) {
153
+ return (event) => {
154
+ onClick === null || onClick === void 0 ? void 0 : onClick(event, value);
155
+ handleChange(value);
156
+ };
157
+ }
158
+ function handleChange(value) {
159
+ const newValue = value !== selected ? value : undefined;
160
+ onChange(newValue);
161
+ }
162
+ }
163
+
164
+ function InternalChipMultiSelect({ children, selected, onChange, onClick, }) {
165
+ return (React__default["default"].createElement("div", { className: styles$1.wrapper, "data-testid": "multiselect-chips" }, React__default["default"].Children.map(children, chip => {
166
+ const isChipActive = isChipSelected(chip.props.value);
167
+ return (React__default["default"].createElement("label", null,
168
+ React__default["default"].createElement("input", { type: "checkbox", checked: isChipActive, className: styles$1.input, onClick: handleClick(chip.props.value), onChange: handleChange(chip.props.value), disabled: chip.props.disabled }),
169
+ React__default["default"].createElement(InternalChip, Object.assign({}, chip.props, { active: isChipActive, suffix: checkmarkIcon(isChipActive) }))));
170
+ })));
171
+ function isChipSelected(value) {
172
+ return selected.includes(value);
173
+ }
174
+ function handleClick(value) {
175
+ return (event) => onClick === null || onClick === void 0 ? void 0 : onClick(event, value);
176
+ }
177
+ function handleChange(value) {
178
+ return () => {
179
+ if (isChipSelected(value)) {
180
+ handleDeselect(value);
181
+ }
182
+ else {
183
+ handleSelect(value);
184
+ }
185
+ };
186
+ }
187
+ function handleSelect(value) {
188
+ const newVal = [...selected, value];
189
+ onChange(newVal);
190
+ }
191
+ function handleDeselect(value) {
192
+ const values = selected;
193
+ const newVal = values.filter(val => val !== value);
194
+ onChange(newVal);
195
+ }
196
+ function checkmarkIcon(show) {
197
+ // Ideally, we should be returning a fragment `<></>` when a function
198
+ // returns a component / element. However, this one needs to return nothing
199
+ // to prevent it from randomly rendering a suffix.
200
+ //
201
+ // DO NOT COPY!
202
+ if (!show)
203
+ return;
204
+ return React__default["default"].createElement(Icon.Icon, { name: "checkmark" });
205
+ }
206
+ }
207
+
208
+ var css_248z = ".sCNIjluCskc- {\n display: -ms-flexbox;\n display: flex;\n position: relative;\n box-sizing: border-box;\n border: calc(16px / 16) solid transparent;\n border: var(--border-base) solid transparent;\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n transition: all 200ms;\n transition: all var(--timing-base);\n gap: calc(16px / 2);\n gap: var(--space-small);\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.MFUlz1WQLdk- {\n -ms-flex: 1;\n flex: 1;\n min-width: 120px;\n padding: calc(16px / 2) 0;\n padding: var(--space-small) 0;\n border: none;\n border-radius: 0;\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n font-size: calc(calc(16px * 1) * 0.875);\n font-size: var(--typography--fontSize-base);\n line-height: 1.25;\n line-height: var(--typography--lineHeight-base);\n background: transparent;\n -webkit-appearance: none;\n appearance: none;\n}\n\n.MFUlz1WQLdk-:focus {\n outline: none;\n}\n\n.V9eYJdjPAeY- {\n position: relative;\n z-index: 6;\n z-index: var(--elevation-menu);\n width: 100%;\n}\n\n.LdytkOeCU9c- {\n max-height: 320px;\n box-shadow: 0px calc(16px / 16) calc(16px / 4) 0px\n rgba(0, 0, 0, 0.1),\n 0px calc(16px / 4) 12px 0px rgba(0, 0, 0, 0.05);\n box-shadow: var(--shadow-base);\n padding: calc(16px / 2) 0;\n padding: var(--space-small) 0;\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n overflow-y: scroll;\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--color-surface);\n}\n\n.y7Cz2u8BuNE-,\n._-7bmao8Q9As- {\n display: -ms-flexbox;\n display: flex;\n width: 100%;\n padding: calc(16px / 2);\n padding: var(--space-small);\n border: none;\n background-color: transparent;\n cursor: pointer;\n -webkit-appearance: none;\n appearance: none;\n -ms-flex-align: center;\n align-items: center;\n gap: calc(16px / 2);\n gap: var(--space-small);\n}\n\n.y7Cz2u8BuNE-:focus {\n box-shadow: 0px 0px 0px calc(16px / 8) rgba(255, 255, 255, 1),\n 0px 0px 0px calc(16px / 4) rgb(147, 161, 169);\n box-shadow: var(--shadow-focus);\n}\n\n.y7Cz2u8BuNE-:focus,\n.iCwWdcmtInc- {\n outline: none;\n background-color: rgb(244, 246, 250);\n background-color: var(--color-surface--hover);\n}\n\n._-7bmao8Q9As- {\n -ms-flex-pack: center;\n justify-content: center;\n}\n";
209
+ var styles = {"wrapper":"sCNIjluCskc-","input":"MFUlz1WQLdk-","menu":"V9eYJdjPAeY-","menuList":"LdytkOeCU9c-","menuListOption":"y7Cz2u8BuNE-","loadingIndicator":"_-7bmao8Q9As-","activeOption":"iCwWdcmtInc-"};
210
+ styleInject_es.styleInject(css_248z);
211
+
212
+ function useInternalChipDismissible({ children, selected, onChange, onClick, onCustomAdd, }) {
213
+ const ref = React.useRef(null);
214
+ const chipOptions = children.map(chip => chip.props);
215
+ const visibleChipOptions = chipOptions.filter(chip => selected.includes(chip.value));
216
+ const sortedVisibleChipOptions = sortBy__default["default"](visibleChipOptions, chip => selected.indexOf(chip.value));
217
+ const availableChipOptions = chipOptions.filter(chip => !selected.includes(chip.value));
218
+ const { liveAnnounce } = useLiveAnnounce.useLiveAnnounce();
219
+ const actions = {
220
+ handleChipRemove: (value) => {
221
+ return () => {
222
+ liveAnnounce(`${value} Removed`);
223
+ onChange(selected.filter(val => val !== value));
224
+ };
225
+ },
226
+ handleChipAdd: (value) => onChange([...selected, value]),
227
+ handleCustomAdd: onCustomAdd,
228
+ handleChipClick: (value) => {
229
+ if (onClick === undefined)
230
+ return;
231
+ return (event) => onClick(event, value);
232
+ },
233
+ handleWrapperKeyDown: (event) => {
234
+ const target = event.target;
235
+ const isInputAndHasValue = target instanceof HTMLInputElement && target.value;
236
+ if (isInputAndHasValue)
237
+ return;
238
+ const nextElementToFocus = target.nextElementSibling;
239
+ const prevElementToFocus = target.previousElementSibling;
240
+ if (event.key === "ArrowLeft" &&
241
+ prevElementToFocus instanceof HTMLElement) {
242
+ prevElementToFocus.focus();
243
+ }
244
+ if (event.key === "ArrowRight" &&
245
+ nextElementToFocus instanceof HTMLElement) {
246
+ nextElementToFocus.focus();
247
+ }
248
+ },
249
+ handleChipKeyDown: (value) => {
250
+ return (event) => {
251
+ if (event.key === "Backspace" || event.key === "Delete") {
252
+ const target = event.target;
253
+ if (target instanceof HTMLElement) {
254
+ const prevElement = target.previousElementSibling;
255
+ const nextElement = target.nextElementSibling;
256
+ if (prevElement instanceof HTMLElement) {
257
+ prevElement.focus();
258
+ }
259
+ else if (nextElement instanceof HTMLElement) {
260
+ nextElement.focus();
261
+ }
262
+ }
263
+ actions.handleChipRemove(value)();
264
+ }
265
+ };
266
+ },
267
+ };
268
+ return Object.assign(Object.assign({}, actions), { ref,
269
+ sortedVisibleChipOptions,
270
+ availableChipOptions });
271
+ }
272
+
273
+ // eslint-disable-next-line max-statements
274
+ function useInternalChipDismissibleInput({ options, isLoadingMore = false, onCustomOptionSelect, onOptionSelect, onSearch, }) {
275
+ const menuId = React.useId();
276
+ const [allOptions, setAllOptions] = React.useState([]);
277
+ const [searchValue, setSearchValue] = React.useState("");
278
+ const [menuOpen, setMenuOpen] = React.useState(false);
279
+ const [activeIndex, setActiveIndex] = React.useState(0);
280
+ const [shouldCancelBlur, setShouldCancelBlur] = React.useState(false);
281
+ const [shouldCancelEnter, setShouldCancelEnter] = React.useState(false);
282
+ const canAddCustomOption = onCustomOptionSelect !== undefined && !isLoadingMore;
283
+ const maxOptionIndex = allOptions.length - 1;
284
+ const { liveAnnounce } = useLiveAnnounce.useLiveAnnounce();
285
+ React.useEffect(() => {
286
+ setAllOptions(generateOptions(options, searchValue, canAddCustomOption));
287
+ }, [options]);
288
+ const computed = {
289
+ menuId,
290
+ inputRef: React.useRef(null),
291
+ activeOption: allOptions[activeIndex],
292
+ hasAvailableOptions: allOptions.length > 0,
293
+ nextOptionIndex: activeIndex < maxOptionIndex ? activeIndex + 1 : 0,
294
+ previousOptionIndex: activeIndex > 0 ? activeIndex - 1 : maxOptionIndex,
295
+ };
296
+ const actions = {
297
+ generateDescendantId: (index) => `${computed.menuId}-${index}`,
298
+ handleReset: () => {
299
+ setActiveIndex(activeIndex === 0 ? activeIndex : activeIndex - 1);
300
+ setSearchValue("");
301
+ },
302
+ handleOpenMenu: () => setMenuOpen(true),
303
+ handleCloseMenu: () => {
304
+ setMenuOpen(false);
305
+ setActiveIndex(0);
306
+ },
307
+ handleCancelBlur: () => setShouldCancelBlur(true),
308
+ handleEnableBlur: () => setShouldCancelBlur(false),
309
+ handleBlur: () => {
310
+ if (shouldCancelBlur)
311
+ return;
312
+ actions.handleReset();
313
+ actions.handleCloseMenu();
314
+ },
315
+ handleSearchChange: (event) => {
316
+ setActiveIndex(0);
317
+ setSearchValue(event.currentTarget.value);
318
+ setShouldCancelEnter(true);
319
+ },
320
+ handleSetActiveOnMouseOver: (index) => {
321
+ return () => setActiveIndex(index);
322
+ },
323
+ handleSelectOption: (selected) => {
324
+ var _a;
325
+ if (allOptions.length === 0)
326
+ return;
327
+ const setValue = selected.custom ? onCustomOptionSelect : onOptionSelect;
328
+ if (setValue) {
329
+ setValue(selected.value);
330
+ liveAnnounce(`${selected.label} Added`);
331
+ actions.handleReset();
332
+ (_a = computed.inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
333
+ }
334
+ },
335
+ handleKeyDown: (event) => {
336
+ const callbacks = {
337
+ Enter: () => {
338
+ if (shouldCancelEnter)
339
+ return;
340
+ actions.handleSelectOption(computed.activeOption);
341
+ },
342
+ Tab: () => actions.handleSelectOption(computed.activeOption),
343
+ ",": () => {
344
+ if (searchValue.length === 0)
345
+ return;
346
+ actions.handleSelectOption(generateCustomOptionObject(searchValue));
347
+ },
348
+ ArrowDown: () => {
349
+ if (isLoadingMore && activeIndex === maxOptionIndex)
350
+ return;
351
+ setActiveIndex(computed.nextOptionIndex);
352
+ },
353
+ ArrowUp: () => setActiveIndex(computed.previousOptionIndex),
354
+ };
355
+ if (searchValue.length === 0) {
356
+ callbacks.Backspace = () => {
357
+ var _a;
358
+ // If there's no text left to delete,
359
+ // and delete is pressed again, focus on a chip instead.
360
+ const target = (_a = computed.inputRef.current) === null || _a === void 0 ? void 0 : _a.previousElementSibling;
361
+ if (target instanceof HTMLElement) {
362
+ target.focus();
363
+ }
364
+ };
365
+ }
366
+ handleKeydownEvents(callbacks, event);
367
+ },
368
+ handleDebouncedSearch: debounce__default["default"](() => {
369
+ onSearch && onSearch(searchValue);
370
+ setAllOptions(generateOptions(options, searchValue, canAddCustomOption));
371
+ setShouldCancelEnter(false);
372
+ }, 300),
373
+ };
374
+ return Object.assign(Object.assign(Object.assign(Object.assign({}, actions), { activeIndex,
375
+ allOptions }), computed), { menuOpen,
376
+ searchValue,
377
+ shouldCancelBlur });
378
+ }
379
+ function generateOptions(options, searchValue, canAddCustomOption) {
380
+ const allOptions = options
381
+ .filter(option => option.label.toLowerCase().match(searchValue.trim().toLowerCase()))
382
+ .map(opt => (Object.assign(Object.assign({}, opt), { custom: false })));
383
+ const { shouldAddCustomOption, customOption } = generateCustomOption(allOptions, searchValue, canAddCustomOption);
384
+ shouldAddCustomOption && allOptions.push(customOption);
385
+ return allOptions;
386
+ }
387
+ function generateCustomOption(options, searchValue, canAddCustomOption) {
388
+ function shouldAddCustomOption() {
389
+ const isMatchingOption = options.some(option => option.label.toLowerCase() === searchValue.trim().toLowerCase());
390
+ return !!searchValue && !isMatchingOption;
391
+ }
392
+ return {
393
+ shouldAddCustomOption: canAddCustomOption && shouldAddCustomOption(),
394
+ customOption: generateCustomOptionObject(searchValue),
395
+ };
396
+ }
397
+ function generateCustomOptionObject(searchValue) {
398
+ return {
399
+ value: searchValue,
400
+ label: searchValue,
401
+ prefix: React__default["default"].createElement(Icon.Icon, { name: "add" }),
402
+ custom: true,
403
+ };
404
+ }
405
+ function handleKeydownEvents(callbacks, event) {
406
+ if (event.shiftKey)
407
+ return;
408
+ Object.entries(callbacks).forEach(([key, callback]) => {
409
+ if (event.key === key) {
410
+ event.preventDefault();
411
+ callback(event);
412
+ }
413
+ });
414
+ }
415
+
416
+ function useInView() {
417
+ const ref = React.useRef(null);
418
+ const [isInView, setIsInView] = React.useState(false);
419
+ if (window.IntersectionObserver) {
420
+ const observer = new IntersectionObserver(entries => {
421
+ setIsInView(entries[0].isIntersecting);
422
+ });
423
+ React.useEffect(() => {
424
+ ref.current && observer.observe(ref.current);
425
+ return () => {
426
+ if (!ref.current)
427
+ return;
428
+ observer.unobserve(ref.current);
429
+ };
430
+ });
431
+ }
432
+ return { ref, isInView };
433
+ }
434
+
435
+ function useRepositionMenu(attachTo) {
436
+ var _a;
437
+ const [positionElement, setPositionedElementRef] = React.useState();
438
+ const popper = reactPopper.usePopper(attachTo.current, positionElement, {
439
+ modifiers: [
440
+ { name: "offset", options: { offset: [0, 8] } },
441
+ { name: "flip", options: { fallbackPlacements: ["top"] } },
442
+ ],
443
+ });
444
+ const targetWidth = (_a = attachTo.current) === null || _a === void 0 ? void 0 : _a.clientWidth;
445
+ return Object.assign(Object.assign({}, popper), { setPositionedElementRef, targetWidth });
446
+ }
447
+
448
+ function useScrollToActive(index) {
449
+ const ref = React.useRef(null);
450
+ React.useEffect(() => {
451
+ var _a, _b;
452
+ if (!window.HTMLElement.prototype.scrollIntoView)
453
+ return;
454
+ (_b = (_a = ref.current) === null || _a === void 0 ? void 0 : _a.children[index]) === null || _b === void 0 ? void 0 : _b.scrollIntoView({
455
+ behavior: "smooth",
456
+ block: "nearest",
457
+ inline: "start",
458
+ });
459
+ }, [index]);
460
+ return ref;
461
+ }
462
+
463
+ function InternalChipDismissibleInput(props) {
464
+ const { activator = React__default["default"].createElement(Button.Button, { icon: "add", type: "secondary", ariaLabel: "Add" }), attachTo, isLoadingMore = false, onLoadMore, } = props;
465
+ const { activeIndex, allOptions, hasAvailableOptions, inputRef, menuId, menuOpen, searchValue, generateDescendantId, handleBlur, handleOpenMenu, handleSearchChange, handleCancelBlur, handleEnableBlur, handleSetActiveOnMouseOver, handleKeyDown, handleSelectOption, handleDebouncedSearch, } = useInternalChipDismissibleInput(props);
466
+ const menuRef = useScrollToActive(activeIndex);
467
+ const { ref: visibleChildRef, isInView } = useInView();
468
+ const { styles: popperStyles, attributes, update, setPositionedElementRef, } = useRepositionMenu(attachTo);
469
+ React.useEffect(() => {
470
+ if (menuOpen && update)
471
+ update();
472
+ }, [allOptions]);
473
+ React.useEffect(() => {
474
+ handleDebouncedSearch();
475
+ return handleDebouncedSearch.cancel;
476
+ }, [searchValue]);
477
+ React.useEffect(() => {
478
+ isInView && onLoadMore && onLoadMore(searchValue);
479
+ }, [isInView]);
480
+ if (!menuOpen) {
481
+ return React__default["default"].cloneElement(activator, { onClick: handleOpenMenu });
482
+ }
483
+ return (React__default["default"].createElement(React__default["default"].Fragment, null,
484
+ React__default["default"].createElement("input", { ref: inputRef, className: styles.input, type: "text", role: "combobox", "aria-label": "Press up and down arrow to cycle through the options or type to narrow down the results", "aria-autocomplete": "list", "aria-owns": menuId, "aria-expanded": hasAvailableOptions, "aria-activedescendant": generateDescendantId(activeIndex), value: searchValue, onChange: handleSearchChange, onKeyDown: handleKeyDown, onBlur: debounce__default["default"](handleBlur, 200), onFocus: handleOpenMenu, autoFocus: true }),
485
+ (hasAvailableOptions || isLoadingMore) && (React__default["default"].createElement("div", Object.assign({ ref: setPositionedElementRef, className: styles.menu, style: popperStyles.popper }, attributes.popper),
486
+ React__default["default"].createElement("div", { ref: menuRef, role: "listbox", id: menuId, className: styles.menuList, "data-testid": "chip-menu" },
487
+ allOptions.map((option, i) => (React__default["default"].createElement("button", { key: option.value, role: "option", type: "button", id: generateDescendantId(i), className: classnames__default["default"](styles.menuListOption, {
488
+ [styles.activeOption]: activeIndex === i,
489
+ }), onClick: () => handleSelectOption(option), onMouseEnter: handleSetActiveOnMouseOver(i), onMouseDown: handleCancelBlur, onMouseUp: handleEnableBlur },
490
+ React__default["default"].createElement("span", { "aria-hidden": true }, option.prefix),
491
+ React__default["default"].createElement(Text.Text, null, option.label)))),
492
+ React__default["default"].createElement("div", { ref: visibleChildRef }),
493
+ isLoadingMore && (React__default["default"].createElement("div", { className: styles.loadingIndicator },
494
+ React__default["default"].createElement(Spinner.Spinner, { size: "small", inline: true }))))))));
495
+ }
496
+
497
+ function InternalChipDismissible(props) {
498
+ const { availableChipOptions, ref: wrapperRef, sortedVisibleChipOptions, handleChipAdd, handleChipClick, handleChipKeyDown, handleChipRemove, handleCustomAdd, handleWrapperKeyDown, } = useInternalChipDismissible(props);
499
+ return (React__default["default"].createElement("div", { ref: wrapperRef, className: styles.wrapper, "data-testid": "dismissible-chips", onKeyDown: handleWrapperKeyDown, role: "listbox" },
500
+ sortedVisibleChipOptions.map(chip => (React__default["default"].createElement(InternalChip, Object.assign({ key: chip.value }, chip, { onKeyDown: handleChipKeyDown(chip.value), onClick: handleChipClick(chip.value), ariaLabel: `${chip.label}. Press delete or backspace to remove ${chip.label}`, tabIndex: 0, suffix: React__default["default"].createElement(InternalChipButton, { icon: "remove", invalid: chip.invalid, disabled: chip.disabled, label: chip.label, onClick: handleChipRemove(chip.value) }) })))),
501
+ React__default["default"].createElement(InternalChipDismissibleInput, { activator: props.activator, attachTo: wrapperRef, isLoadingMore: props.isLoadingMore, options: availableChipOptions, onOptionSelect: handleChipAdd, onCustomOptionSelect: handleCustomAdd, onSearch: props.onSearch, onLoadMore: props.onLoadMore })));
502
+ }
503
+
504
+ function Chips(props) {
505
+ switch (props.type) {
506
+ case "dismissible":
507
+ return React__default["default"].createElement(InternalChipDismissible, Object.assign({}, props));
508
+ case "multiselect":
509
+ return React__default["default"].createElement(InternalChipMultiSelect, Object.assign({}, props));
510
+ default:
511
+ return React__default["default"].createElement(InternalChipSingleSelect, Object.assign({}, props));
512
+ }
513
+ }
514
+
515
+ // Only need the component to pass in the data as a react children
516
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
517
+ function Chip(props) {
518
+ // Throw error when <Chip /> gets used outside of the <Chips />
519
+ useAssert.useAssert(true, "`<Chip>` component can only be used inside `<Chips>`");
520
+ return React__default["default"].createElement(React__default["default"].Fragment, null);
521
+ }
522
+
523
+ exports.Chip = Chip;
524
+ exports.ChipDismissible = ChipDismissible;
525
+ exports.Chips = Chips;
@@ -0,0 +1,41 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var Combobox = require('../Combobox-6d864202.js');
6
+ require('react');
7
+ require('classnames');
8
+ require('react-dom');
9
+ require('../style-inject.es-9d2f5f4e.js');
10
+ require('../Icon-405a216c.js');
11
+ require('@jobber/design');
12
+ require('../Text-fbeaaca6.js');
13
+ require('../Typography-e2a23b7e.js');
14
+ require('../Glimmer-84dee1ed.js');
15
+ require('../tslib.es6-754e2961.js');
16
+ require('../Content-e3f7b6fc.js');
17
+ require('../Spinner-9d8fc7ff.js');
18
+ require('../AnimatedPresence-20a02aaa.js');
19
+ require('framer-motion');
20
+ require('../Flex-d490c4db.js');
21
+ require('@jobber/hooks/useInView');
22
+ require('../Button-6b922fc1.js');
23
+ require('react-router-dom');
24
+ require('@jobber/hooks/useRefocusOnActivator');
25
+ require('@jobber/hooks/useFocusTrap');
26
+ require('react-popper');
27
+ require('@jobber/hooks/useOnKeyDown');
28
+ require('../Chip-76f18555.js');
29
+ require('../Avatar-76a799fa.js');
30
+ require('color');
31
+ require('../Tooltip-b9de6e57.js');
32
+ require('@jobber/hooks/useSafeLayoutEffect');
33
+ require('@jobber/hooks/useIsMounted');
34
+ require('lodash/debounce');
35
+ require('lodash/noop');
36
+ require('@jobber/hooks/useAssert');
37
+
38
+
39
+
40
+ exports.Combobox = Combobox.Combobox;
41
+ exports.ComboboxContextProvider = Combobox.ComboboxContextProvider;