@purpur/library 9.2.2 → 9.3.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 (302) hide show
  1. package/CHANGELOG.json +42 -0
  2. package/CHANGELOG.md +21 -1
  3. package/dist/LICENSE.txt +1 -1
  4. package/dist/{RichText-Bi51HE6X.mjs → RichText-jZ-sHV-u.mjs} +2 -2
  5. package/dist/{RichText-Bi51HE6X.mjs.map → RichText-jZ-sHV-u.mjs.map} +1 -1
  6. package/dist/{RichText-DNroJJXv.js → RichText-yobCUjTD.js} +2 -2
  7. package/dist/{RichText-DNroJJXv.js.map → RichText-yobCUjTD.js.map} +1 -1
  8. package/dist/{ThemeProvider-bkyFCeo6.mjs → ThemeProvider-CkX-BNWN.mjs} +2 -2
  9. package/dist/ThemeProvider-CkX-BNWN.mjs.map +1 -0
  10. package/dist/{ThemeProvider-5r7lDX-h.js → ThemeProvider-Dy771oix.js} +2 -2
  11. package/dist/ThemeProvider-Dy771oix.js.map +1 -0
  12. package/dist/{accordion-OtFSShSB.mjs → accordion-CIU4U8-4.mjs} +3 -3
  13. package/dist/accordion-CIU4U8-4.mjs.map +1 -0
  14. package/dist/{accordion-OsA0HvdA.js → accordion-DyhOG54L.js} +2 -2
  15. package/dist/accordion-DyhOG54L.js.map +1 -0
  16. package/dist/accordion.cjs.js +1 -1
  17. package/dist/accordion.es.js +3 -3
  18. package/dist/{autocomplete-D9uCJzjY.js → autocomplete-3kV1btuI.js} +2 -2
  19. package/dist/{autocomplete-D9uCJzjY.js.map → autocomplete-3kV1btuI.js.map} +1 -1
  20. package/dist/{autocomplete-BipmyKf0.mjs → autocomplete-BEGRn-Wh.mjs} +2 -2
  21. package/dist/{autocomplete-BipmyKf0.mjs.map → autocomplete-BEGRn-Wh.mjs.map} +1 -1
  22. package/dist/autocomplete.cjs.js +1 -1
  23. package/dist/autocomplete.es.js +1 -1
  24. package/dist/{card-DR2hvxjZ.mjs → card-C2mdp-ur.mjs} +2 -2
  25. package/dist/{card-DR2hvxjZ.mjs.map → card-C2mdp-ur.mjs.map} +1 -1
  26. package/dist/{card-CRHXm5NR.js → card-DFdUs5RG.js} +2 -2
  27. package/dist/{card-CRHXm5NR.js.map → card-DFdUs5RG.js.map} +1 -1
  28. package/dist/card.cjs.js +1 -1
  29. package/dist/card.es.js +1 -1
  30. package/dist/{carousel-BkxojLwn.mjs → carousel-DLkTL9sj.mjs} +29 -29
  31. package/dist/{carousel-BkxojLwn.mjs.map → carousel-DLkTL9sj.mjs.map} +1 -1
  32. package/dist/{carousel-BCw-5u92.js → carousel-DXrtxRz5.js} +2 -2
  33. package/dist/{carousel-BCw-5u92.js.map → carousel-DXrtxRz5.js.map} +1 -1
  34. package/dist/carousel.cjs.js +1 -1
  35. package/dist/carousel.es.js +1 -1
  36. package/dist/checkbox-BHTx89JQ.mjs +236 -0
  37. package/dist/checkbox-BHTx89JQ.mjs.map +1 -0
  38. package/dist/checkbox-CDNcNv6d.js +2 -0
  39. package/dist/checkbox-CDNcNv6d.js.map +1 -0
  40. package/dist/checkbox.cjs.js +1 -1
  41. package/dist/checkbox.es.js +1 -1
  42. package/dist/{comparison-table-B8w65g43.js → comparison-table-CitEzX7h.js} +2 -2
  43. package/dist/comparison-table-CitEzX7h.js.map +1 -0
  44. package/dist/{comparison-table-D1zJpdLL.mjs → comparison-table-Dmbjsqyg.mjs} +52 -52
  45. package/dist/comparison-table-Dmbjsqyg.mjs.map +1 -0
  46. package/dist/comparison-table.cjs.js +1 -1
  47. package/dist/comparison-table.es.js +1 -1
  48. package/dist/components/accordion/src/accordion.d.ts +1 -1
  49. package/dist/components/accordion/src/accordion.d.ts.map +1 -1
  50. package/dist/components/checkbox/src/checkbox.d.ts +4 -0
  51. package/dist/components/checkbox/src/checkbox.d.ts.map +1 -1
  52. package/dist/components/comparison-table/src/comparison-table.d.ts +1 -1
  53. package/dist/components/comparison-table/src/comparison-table.d.ts.map +1 -1
  54. package/dist/components/dismissable-chip-group/src/dismissable-chip-group-item.d.ts.map +1 -1
  55. package/dist/components/dismissable-chip-group/src/dismissable-chip-group.d.ts +4 -2
  56. package/dist/components/dismissable-chip-group/src/dismissable-chip-group.d.ts.map +1 -1
  57. package/dist/components/drawer/src/drawer-header.d.ts.map +1 -1
  58. package/dist/components/dropdown/src/dropdown-combobox.d.ts.map +1 -1
  59. package/dist/components/dropdown/src/dropdown-select.d.ts.map +1 -1
  60. package/dist/components/dropdown/src/dropdown-shared.d.ts +3 -2
  61. package/dist/components/dropdown/src/dropdown-shared.d.ts.map +1 -1
  62. package/dist/components/dropdown/src/useDropdown.d.ts +2 -1
  63. package/dist/components/dropdown/src/useDropdown.d.ts.map +1 -1
  64. package/dist/components/listbox/src/listbox-item.d.ts +2 -2
  65. package/dist/components/listbox/src/listbox-item.d.ts.map +1 -1
  66. package/dist/components/listbox/src/listbox.d.ts +4 -1
  67. package/dist/components/listbox/src/listbox.d.ts.map +1 -1
  68. package/dist/components/modal/src/modal-content.d.ts.map +1 -1
  69. package/dist/components/toggle/src/toggle.d.ts +1 -0
  70. package/dist/components/toggle/src/toggle.d.ts.map +1 -1
  71. package/dist/components-metadata.js +4 -2
  72. package/dist/{content-block-Dm3L4g8w.mjs → content-block-CakKeJtN.mjs} +2 -2
  73. package/dist/{content-block-Dm3L4g8w.mjs.map → content-block-CakKeJtN.mjs.map} +1 -1
  74. package/dist/{content-block-CDRUH0pg.js → content-block-CrekbIfe.js} +2 -2
  75. package/dist/{content-block-CDRUH0pg.js.map → content-block-CrekbIfe.js.map} +1 -1
  76. package/dist/content-block.cjs.js +1 -1
  77. package/dist/content-block.es.js +1 -1
  78. package/dist/{countdown-DZ4IwkNy.mjs → countdown-BsLsEZBv.mjs} +2 -2
  79. package/dist/{countdown-DZ4IwkNy.mjs.map → countdown-BsLsEZBv.mjs.map} +1 -1
  80. package/dist/{countdown-CqYsZigV.js → countdown-hYrFLmRg.js} +2 -2
  81. package/dist/{countdown-CqYsZigV.js.map → countdown-hYrFLmRg.js.map} +1 -1
  82. package/dist/countdown.cjs.js +1 -1
  83. package/dist/countdown.es.js +1 -1
  84. package/dist/{date-picker-D3uJGCjl.js → date-picker-DVrcu2QU.js} +2 -2
  85. package/dist/{date-picker-D3uJGCjl.js.map → date-picker-DVrcu2QU.js.map} +1 -1
  86. package/dist/{date-picker-CpDZ0gK9.mjs → date-picker-DwFDRL5Z.mjs} +2 -2
  87. package/dist/{date-picker-CpDZ0gK9.mjs.map → date-picker-DwFDRL5Z.mjs.map} +1 -1
  88. package/dist/date-picker.cjs.js +1 -1
  89. package/dist/date-picker.es.js +1 -1
  90. package/dist/dismissable-chip-group-2updhyuR.js +2 -0
  91. package/dist/dismissable-chip-group-2updhyuR.js.map +1 -0
  92. package/dist/dismissable-chip-group-Cfs2s2BH.mjs +94 -0
  93. package/dist/dismissable-chip-group-Cfs2s2BH.mjs.map +1 -0
  94. package/dist/dismissable-chip-group.cjs.js +1 -1
  95. package/dist/dismissable-chip-group.es.js +6 -5
  96. package/dist/{drawer-BJ8xwriz.mjs → drawer-Db2Mujc6.mjs} +208 -205
  97. package/dist/drawer-Db2Mujc6.mjs.map +1 -0
  98. package/dist/drawer-DlwagnO4.js +2 -0
  99. package/dist/drawer-DlwagnO4.js.map +1 -0
  100. package/dist/drawer.cjs.js +1 -1
  101. package/dist/drawer.es.js +1 -1
  102. package/dist/dropdown-CMO_VD5e.mjs +916 -0
  103. package/dist/dropdown-CMO_VD5e.mjs.map +1 -0
  104. package/dist/dropdown-DJKNQnuo.js +2 -0
  105. package/dist/dropdown-DJKNQnuo.js.map +1 -0
  106. package/dist/dropdown.cjs.js +1 -1
  107. package/dist/dropdown.es.js +1 -1
  108. package/dist/{footer-BXs8uzTA.mjs → footer-BLPlXaZK.mjs} +4 -4
  109. package/dist/{footer-BXs8uzTA.mjs.map → footer-BLPlXaZK.mjs.map} +1 -1
  110. package/dist/{footer-DF9adlni.js → footer-D9AcPwlH.js} +2 -2
  111. package/dist/{footer-DF9adlni.js.map → footer-D9AcPwlH.js.map} +1 -1
  112. package/dist/footer.cjs.js +1 -1
  113. package/dist/footer.es.js +1 -1
  114. package/dist/{hero-banner-BfxclVFT.js → hero-banner-D1A-_qou.js} +2 -2
  115. package/dist/{hero-banner-BfxclVFT.js.map → hero-banner-D1A-_qou.js.map} +1 -1
  116. package/dist/{hero-banner-CxPvhXD2.mjs → hero-banner-DkC_BqM7.mjs} +3 -3
  117. package/dist/{hero-banner-CxPvhXD2.mjs.map → hero-banner-DkC_BqM7.mjs.map} +1 -1
  118. package/dist/hero-banner.cjs.js +1 -1
  119. package/dist/hero-banner.es.js +1 -1
  120. package/dist/libraries/theme/src/theme-props.d.ts +1 -0
  121. package/dist/libraries/theme/src/theme-props.d.ts.map +1 -1
  122. package/dist/libraries/tokens/dist/color/variables.d.ts +1 -0
  123. package/dist/libraries/tokens/dist/color/variables.dark.d.ts +1 -0
  124. package/dist/library.cjs.js +1 -1
  125. package/dist/library.es.js +593 -590
  126. package/dist/listbox-ATP4hOWF.js +2 -0
  127. package/dist/listbox-ATP4hOWF.js.map +1 -0
  128. package/dist/listbox-i6BQQ-NZ.mjs +73 -0
  129. package/dist/listbox-i6BQQ-NZ.mjs.map +1 -0
  130. package/dist/listbox.cjs.js +1 -1
  131. package/dist/listbox.es.js +3 -2
  132. package/dist/modal-Baisuc6m.js +2 -0
  133. package/dist/modal-Baisuc6m.js.map +1 -0
  134. package/dist/modal-COZ1POGG.mjs +211 -0
  135. package/dist/modal-COZ1POGG.mjs.map +1 -0
  136. package/dist/modal.cjs.js +1 -1
  137. package/dist/modal.es.js +1 -1
  138. package/dist/{notification-BqjaT4E7.js → notification-B5bNNq86.js} +2 -2
  139. package/dist/{notification-BqjaT4E7.js.map → notification-B5bNNq86.js.map} +1 -1
  140. package/dist/{notification-DdRS5BF2.mjs → notification-BbQCmsnY.mjs} +2 -2
  141. package/dist/{notification-DdRS5BF2.mjs.map → notification-BbQCmsnY.mjs.map} +1 -1
  142. package/dist/notification.cjs.js +1 -1
  143. package/dist/notification.es.js +1 -1
  144. package/dist/{pagination-CVYUacXN.mjs → pagination-Cc_4zCQA.mjs} +2 -2
  145. package/dist/{pagination-CVYUacXN.mjs.map → pagination-Cc_4zCQA.mjs.map} +1 -1
  146. package/dist/{pagination-Bwlkvqye.js → pagination-rFRdkHII.js} +2 -2
  147. package/dist/{pagination-Bwlkvqye.js.map → pagination-rFRdkHII.js.map} +1 -1
  148. package/dist/pagination.cjs.js +1 -1
  149. package/dist/pagination.es.js +1 -1
  150. package/dist/paragraph-By4jMjnH.js +2 -0
  151. package/dist/{paragraph-BsI53OR0.js.map → paragraph-By4jMjnH.js.map} +1 -1
  152. package/dist/{paragraph-Ci50OF1u.mjs → paragraph-DSxXmX_0.mjs} +23 -23
  153. package/dist/{paragraph-Ci50OF1u.mjs.map → paragraph-DSxXmX_0.mjs.map} +1 -1
  154. package/dist/paragraph.cjs.js +1 -1
  155. package/dist/paragraph.es.js +1 -1
  156. package/dist/{popover-XCUa2GfC.js → popover-B0XJZ5mj.js} +2 -2
  157. package/dist/{popover-XCUa2GfC.js.map → popover-B0XJZ5mj.js.map} +1 -1
  158. package/dist/{popover-Dwqs1wGH.mjs → popover-_xJATlhN.mjs} +2 -2
  159. package/dist/{popover-Dwqs1wGH.mjs.map → popover-_xJATlhN.mjs.map} +1 -1
  160. package/dist/popover.cjs.js +1 -1
  161. package/dist/popover.es.js +1 -1
  162. package/dist/{product-card-BfB82XpS.mjs → product-card-C3_N0t-R.mjs} +3 -3
  163. package/dist/{product-card-BfB82XpS.mjs.map → product-card-C3_N0t-R.mjs.map} +1 -1
  164. package/dist/{product-card-bVQ7JhHj.js → product-card-CoY1KggV.js} +2 -2
  165. package/dist/{product-card-bVQ7JhHj.js.map → product-card-CoY1KggV.js.map} +1 -1
  166. package/dist/product-card.cjs.js +1 -1
  167. package/dist/product-card.es.js +1 -1
  168. package/dist/{promotion-card-DqBBt2sz.js → promotion-card-Bag64gqP.js} +2 -2
  169. package/dist/{promotion-card-DqBBt2sz.js.map → promotion-card-Bag64gqP.js.map} +1 -1
  170. package/dist/{promotion-card-BhNw94sC.mjs → promotion-card-BiHnQvhn.mjs} +4 -4
  171. package/dist/{promotion-card-BhNw94sC.mjs.map → promotion-card-BiHnQvhn.mjs.map} +1 -1
  172. package/dist/promotion-card.cjs.js +1 -1
  173. package/dist/promotion-card.es.js +1 -1
  174. package/dist/purpur.css +1 -1
  175. package/dist/quantity-selector-CDSfcTb1.js +2 -0
  176. package/dist/{quantity-selector-8AkKNDik.js.map → quantity-selector-CDSfcTb1.js.map} +1 -1
  177. package/dist/{quantity-selector-C23kU1hF.mjs → quantity-selector-CvBvnMeB.mjs} +35 -35
  178. package/dist/{quantity-selector-C23kU1hF.mjs.map → quantity-selector-CvBvnMeB.mjs.map} +1 -1
  179. package/dist/quantity-selector.cjs.js +1 -1
  180. package/dist/quantity-selector.es.js +1 -1
  181. package/dist/{radio-card-group-BlRZBa-9.mjs → radio-card-group-CneOprGY.mjs} +2 -2
  182. package/dist/{radio-card-group-BlRZBa-9.mjs.map → radio-card-group-CneOprGY.mjs.map} +1 -1
  183. package/dist/{radio-card-group-sYcfDPJq.js → radio-card-group-Ctuvg61o.js} +2 -2
  184. package/dist/{radio-card-group-sYcfDPJq.js.map → radio-card-group-Ctuvg61o.js.map} +1 -1
  185. package/dist/radio-card-group.cjs.js +1 -1
  186. package/dist/radio-card-group.es.js +1 -1
  187. package/dist/rich-text.cjs.js +1 -1
  188. package/dist/rich-text.es.js +1 -1
  189. package/dist/{search-field-CMBDkydb.mjs → search-field-CpkHGIYi.mjs} +57 -57
  190. package/dist/{search-field-CMBDkydb.mjs.map → search-field-CpkHGIYi.mjs.map} +1 -1
  191. package/dist/search-field-Z0PqDARl.js +2 -0
  192. package/dist/{search-field-CU_tsmHb.js.map → search-field-Z0PqDARl.js.map} +1 -1
  193. package/dist/search-field.cjs.js +1 -1
  194. package/dist/search-field.es.js +1 -1
  195. package/dist/{stepper-uBfDdIju.mjs → stepper-CNnx_NiR.mjs} +2 -2
  196. package/dist/{stepper-uBfDdIju.mjs.map → stepper-CNnx_NiR.mjs.map} +1 -1
  197. package/dist/{stepper-w-raIwqJ.js → stepper-Df4X7DDR.js} +2 -2
  198. package/dist/{stepper-w-raIwqJ.js.map → stepper-Df4X7DDR.js.map} +1 -1
  199. package/dist/stepper.cjs.js +1 -1
  200. package/dist/stepper.es.js +1 -1
  201. package/dist/{table-BVSBvTYG.js → table-DRYW0yw4.js} +2 -2
  202. package/dist/{table-BVSBvTYG.js.map → table-DRYW0yw4.js.map} +1 -1
  203. package/dist/{table-CuV3Gda_.mjs → table-DUY8kQfE.mjs} +6 -6
  204. package/dist/{table-CuV3Gda_.mjs.map → table-DUY8kQfE.mjs.map} +1 -1
  205. package/dist/table.cjs.js +1 -1
  206. package/dist/table.es.js +1 -1
  207. package/dist/{text-area-DDZ_GQPW.mjs → text-area-kJvg6cFp.mjs} +3 -3
  208. package/dist/{text-area-DDZ_GQPW.mjs.map → text-area-kJvg6cFp.mjs.map} +1 -1
  209. package/dist/{text-area-C6W0fDiQ.js → text-area-peNKG7g4.js} +2 -2
  210. package/dist/{text-area-C6W0fDiQ.js.map → text-area-peNKG7g4.js.map} +1 -1
  211. package/dist/text-area.cjs.js +1 -1
  212. package/dist/text-area.es.js +1 -1
  213. package/dist/theme.cjs.js +1 -1
  214. package/dist/theme.es.js +2 -2
  215. package/dist/toggle-B8ZLUVar.js +2 -0
  216. package/dist/{toggle-C8IwTbX8.js.map → toggle-B8ZLUVar.js.map} +1 -1
  217. package/dist/toggle-CY3J8BRX.mjs +302 -0
  218. package/dist/{toggle-D23x1wWk.mjs.map → toggle-CY3J8BRX.mjs.map} +1 -1
  219. package/dist/toggle.cjs.js +1 -1
  220. package/dist/toggle.es.js +1 -1
  221. package/dist/tokens/color/variables.css +1 -0
  222. package/dist/tokens/color/variables.d.ts +1 -0
  223. package/dist/tokens/color/variables.dark.css +1 -0
  224. package/dist/tokens/color/variables.dark.d.ts +1 -0
  225. package/dist/tokens/color/variables.dark.js +1 -0
  226. package/dist/tokens/color/variables.dark.json +2 -1
  227. package/dist/tokens/color/variables.dark.scss +1 -0
  228. package/dist/tokens/color/variables.js +1 -0
  229. package/dist/tokens/color/variables.json +2 -1
  230. package/dist/tokens/color/variables.scss +1 -0
  231. package/dist/tokens.cjs.js +1 -1
  232. package/dist/tokens.es.js +76 -75
  233. package/dist/{tooltip-0pLBlDG3.js → tooltip-C8Zxnqdb.js} +2 -2
  234. package/dist/{tooltip-0pLBlDG3.js.map → tooltip-C8Zxnqdb.js.map} +1 -1
  235. package/dist/{tooltip-Kom0VfOC.mjs → tooltip-VlURN8H3.mjs} +2 -2
  236. package/dist/{tooltip-Kom0VfOC.mjs.map → tooltip-VlURN8H3.mjs.map} +1 -1
  237. package/dist/tooltip.cjs.js +1 -1
  238. package/dist/tooltip.es.js +1 -1
  239. package/dist/use-autocomplete.es-BwAzMcau.js +2 -0
  240. package/dist/use-autocomplete.es-BwAzMcau.js.map +1 -0
  241. package/dist/{use-autocomplete.es-CVv3z8t6.mjs → use-autocomplete.es-CKb0RHKG.mjs} +37 -35
  242. package/dist/use-autocomplete.es-CKb0RHKG.mjs.map +1 -0
  243. package/dist/useColorScheme-DNyjsWX9.js +2 -0
  244. package/dist/{useColorScheme-0GMDl2GF.js.map → useColorScheme-DNyjsWX9.js.map} +1 -1
  245. package/dist/{useColorScheme-Di_Q0JR4.mjs → useColorScheme-tAkY9LHt.mjs} +2 -2
  246. package/dist/{useColorScheme-Di_Q0JR4.mjs.map → useColorScheme-tAkY9LHt.mjs.map} +1 -1
  247. package/dist/{variables-CKp4o9Tn.mjs → variables-B5hbV0Uy.mjs} +128 -127
  248. package/dist/variables-B5hbV0Uy.mjs.map +1 -0
  249. package/dist/variables-DoI78zZc.js +2 -0
  250. package/dist/variables-DoI78zZc.js.map +1 -0
  251. package/package.json +11 -11
  252. package/tokens/color/variables.css +1 -0
  253. package/tokens/color/variables.d.ts +1 -0
  254. package/tokens/color/variables.dark.css +1 -0
  255. package/tokens/color/variables.dark.d.ts +1 -0
  256. package/tokens/color/variables.dark.js +1 -0
  257. package/tokens/color/variables.dark.json +2 -1
  258. package/tokens/color/variables.dark.scss +1 -0
  259. package/tokens/color/variables.js +1 -0
  260. package/tokens/color/variables.json +2 -1
  261. package/tokens/color/variables.scss +1 -0
  262. package/dist/ThemeProvider-5r7lDX-h.js.map +0 -1
  263. package/dist/ThemeProvider-bkyFCeo6.mjs.map +0 -1
  264. package/dist/accordion-OsA0HvdA.js.map +0 -1
  265. package/dist/accordion-OtFSShSB.mjs.map +0 -1
  266. package/dist/checkbox-D6qWgpWR.mjs +0 -231
  267. package/dist/checkbox-D6qWgpWR.mjs.map +0 -1
  268. package/dist/checkbox-Dk3bZkZ3.js +0 -2
  269. package/dist/checkbox-Dk3bZkZ3.js.map +0 -1
  270. package/dist/comparison-table-B8w65g43.js.map +0 -1
  271. package/dist/comparison-table-D1zJpdLL.mjs.map +0 -1
  272. package/dist/dismissable-chip-group-Cd23yjBa.js +0 -2
  273. package/dist/dismissable-chip-group-Cd23yjBa.js.map +0 -1
  274. package/dist/dismissable-chip-group-D-gD93ON.mjs +0 -89
  275. package/dist/dismissable-chip-group-D-gD93ON.mjs.map +0 -1
  276. package/dist/drawer-BJ8xwriz.mjs.map +0 -1
  277. package/dist/drawer-CNs9K8Ca.js +0 -2
  278. package/dist/drawer-CNs9K8Ca.js.map +0 -1
  279. package/dist/dropdown-BsqVnd7z.js +0 -2
  280. package/dist/dropdown-BsqVnd7z.js.map +0 -1
  281. package/dist/dropdown-TO3Mh0bk.mjs +0 -910
  282. package/dist/dropdown-TO3Mh0bk.mjs.map +0 -1
  283. package/dist/listbox-COBHLRtB.js +0 -2
  284. package/dist/listbox-COBHLRtB.js.map +0 -1
  285. package/dist/listbox-DG4KmQP_.mjs +0 -66
  286. package/dist/listbox-DG4KmQP_.mjs.map +0 -1
  287. package/dist/modal-DCfN6q8I.mjs +0 -201
  288. package/dist/modal-DCfN6q8I.mjs.map +0 -1
  289. package/dist/modal-DZIdw9xy.js +0 -2
  290. package/dist/modal-DZIdw9xy.js.map +0 -1
  291. package/dist/paragraph-BsI53OR0.js +0 -2
  292. package/dist/quantity-selector-8AkKNDik.js +0 -2
  293. package/dist/search-field-CU_tsmHb.js +0 -2
  294. package/dist/toggle-C8IwTbX8.js +0 -2
  295. package/dist/toggle-D23x1wWk.mjs +0 -287
  296. package/dist/use-autocomplete.es-BHDgQLae.js +0 -2
  297. package/dist/use-autocomplete.es-BHDgQLae.js.map +0 -1
  298. package/dist/use-autocomplete.es-CVv3z8t6.mjs.map +0 -1
  299. package/dist/useColorScheme-0GMDl2GF.js +0 -2
  300. package/dist/variables-CKp4o9Tn.mjs.map +0 -1
  301. package/dist/variables-DH61hVNE.js +0 -2
  302. package/dist/variables-DH61hVNE.js.map +0 -1
@@ -1,910 +0,0 @@
1
- import { jsxs as X, jsx as a, Fragment as ye } from "react/jsx-runtime";
2
- import { useState as fe, forwardRef as we, useId as ve, useRef as _e, useCallback as Se, useEffect as Te } from "react";
3
- import { L as ae } from "./listbox-DG4KmQP_.mjs";
4
- import { e as Be } from "./use-autocomplete.es-CVv3z8t6.mjs";
5
- import { C as xe } from "./checkbox-D6qWgpWR.mjs";
6
- import { a as $e } from "./dismissable-chip-group-D-gD93ON.mjs";
7
- import { F as Fe } from "./field-error-text-CBSX8dGx.mjs";
8
- import { F as Pe } from "./field-helper-text-C5ee4SFV.mjs";
9
- import { r as Ke } from "./check-circle-filled.es-umBwOv5_.mjs";
10
- import { l as He } from "./chevron-down.es-PCIIj6oG.mjs";
11
- import { L as Ve } from "./label-7sJe5-pX.mjs";
12
- import { a as Me } from "./spinner-DRQN6YdK.mjs";
13
- import { c as Ue } from "./bind-CU-R61T-.mjs";
14
- const Ye = {
15
- "purpur-dropdown": "_purpur-dropdown_1murn_1",
16
- "purpur-dropdown--negative": "_purpur-dropdown--negative_1murn_11",
17
- "purpur-dropdown__label": "_purpur-dropdown__label_1murn_14",
18
- "purpur-dropdown__field-row": "_purpur-dropdown__field-row_1murn_19",
19
- "purpur-dropdown__frame": "_purpur-dropdown__frame_1murn_23",
20
- "purpur-dropdown__frame--negative": "_purpur-dropdown__frame--negative_1murn_30",
21
- "purpur-dropdown__trigger-container": "_purpur-dropdown__trigger-container_1murn_33",
22
- "purpur-dropdown__chip-group": "_purpur-dropdown__chip-group_1murn_45",
23
- "purpur-dropdown__trigger-container--has-tags": "_purpur-dropdown__trigger-container--has-tags_1murn_50",
24
- "purpur-dropdown__trigger-container--disabled": "_purpur-dropdown__trigger-container--disabled_1murn_53",
25
- "purpur-dropdown__trigger-container--readonly": "_purpur-dropdown__trigger-container--readonly_1murn_53",
26
- "purpur-dropdown__trigger-container--negative": "_purpur-dropdown__trigger-container--negative_1murn_60",
27
- "purpur-dropdown__trigger-container--error": "_purpur-dropdown__trigger-container--error_1murn_63",
28
- "purpur-dropdown__trigger-container--is-valid": "_purpur-dropdown__trigger-container--is-valid_1murn_66",
29
- "purpur-dropdown__input": "_purpur-dropdown__input_1murn_69",
30
- "purpur-dropdown__trigger": "_purpur-dropdown__trigger_1murn_33",
31
- "purpur-dropdown__trigger--placeholder": "_purpur-dropdown__trigger--placeholder_1murn_117",
32
- "purpur-dropdown__trigger--is-valid": "_purpur-dropdown__trigger--is-valid_1murn_120",
33
- "purpur-dropdown__trigger--disabled": "_purpur-dropdown__trigger--disabled_1murn_123",
34
- "purpur-dropdown__trigger--readonly": "_purpur-dropdown__trigger--readonly_1murn_127",
35
- "purpur-dropdown__trigger--negative": "_purpur-dropdown__trigger--negative_1murn_131",
36
- "purpur-dropdown__trigger-text": "_purpur-dropdown__trigger-text_1murn_144",
37
- "purpur-dropdown__combobox-container": "_purpur-dropdown__combobox-container_1murn_150",
38
- "purpur-dropdown__combobox-container--disabled": "_purpur-dropdown__combobox-container--disabled_1murn_160",
39
- "purpur-dropdown__combobox-container--readonly": "_purpur-dropdown__combobox-container--readonly_1murn_167",
40
- "purpur-dropdown__combobox-container--error": "_purpur-dropdown__combobox-container--error_1murn_174",
41
- "purpur-dropdown__combobox-container--is-valid": "_purpur-dropdown__combobox-container--is-valid_1murn_177",
42
- "purpur-dropdown__combobox-container--negative": "_purpur-dropdown__combobox-container--negative_1murn_180",
43
- "purpur-dropdown__input--negative": "_purpur-dropdown__input--negative_1murn_219",
44
- "purpur-dropdown__chip-group--select": "_purpur-dropdown__chip-group--select_1murn_236",
45
- "purpur-dropdown__end-adornments": "_purpur-dropdown__end-adornments_1murn_242",
46
- "purpur-dropdown__chevron-icon": "_purpur-dropdown__chevron-icon_1murn_253",
47
- "purpur-dropdown__chevron-icon--open": "_purpur-dropdown__chevron-icon--open_1murn_258",
48
- "purpur-dropdown__chevron-icon--disabled": "_purpur-dropdown__chevron-icon--disabled_1murn_261",
49
- "purpur-dropdown__chevron-icon--readonly": "_purpur-dropdown__chevron-icon--readonly_1murn_264",
50
- "purpur-dropdown__chevron-icon--negative": "_purpur-dropdown__chevron-icon--negative_1murn_267",
51
- "purpur-dropdown__valid-icon": "_purpur-dropdown__valid-icon_1murn_270",
52
- "purpur-dropdown__listbox": "_purpur-dropdown__listbox_1murn_273",
53
- "purpur-dropdown__checkbox-item-multiple": "_purpur-dropdown__checkbox-item-multiple_1murn_283",
54
- "purpur-dropdown__checkbox-container": "_purpur-dropdown__checkbox-container_1murn_286",
55
- "purpur-dropdown__checkbox-container--disabled": "_purpur-dropdown__checkbox-container--disabled_1murn_293",
56
- "purpur-dropdown__select-all-item": "_purpur-dropdown__select-all-item_1murn_297",
57
- "purpur-dropdown__select-all-child": "_purpur-dropdown__select-all-child_1murn_300"
58
- }, v = Ue.bind(Ye), e = "purpur-dropdown", Ie = ({
59
- fieldId: r,
60
- htmlForSuffix: n,
61
- label: d,
62
- getTestId: s,
63
- disabled: o,
64
- negative: l,
65
- required: b
66
- }) => d ? /* @__PURE__ */ X(
67
- Ve,
68
- {
69
- htmlFor: n ? `${r}-${n}` : r,
70
- className: v(`${e}__label`),
71
- "data-testid": s("label"),
72
- disabled: o,
73
- negative: l,
74
- children: [
75
- b && /* @__PURE__ */ a("span", { "aria-hidden": !0, children: "*" }),
76
- d
77
- ]
78
- }
79
- ) : null, ke = ({
80
- getTestId: r,
81
- loading: n,
82
- disabled: d,
83
- negative: s,
84
- isValid: o,
85
- isOpen: l,
86
- readOnly: b,
87
- showChevronOpen: x
88
- }) => /* @__PURE__ */ a("span", { className: v(`${e}__end-adornments`), children: n ? /* @__PURE__ */ a(
89
- Me,
90
- {
91
- disabled: d,
92
- size: "xxs",
93
- negative: s,
94
- "data-testid": r("spinner")
95
- }
96
- ) : /* @__PURE__ */ X(ye, { children: [
97
- o && /* @__PURE__ */ a(
98
- Ke,
99
- {
100
- "data-testid": r("valid-icon"),
101
- className: v(`${e}__valid-icon`)
102
- }
103
- ),
104
- /* @__PURE__ */ a(
105
- He,
106
- {
107
- className: v(`${e}__chevron-icon`, {
108
- [`${e}__chevron-icon--open`]: x && l,
109
- [`${e}__chevron-icon--disabled`]: d,
110
- [`${e}__chevron-icon--readonly`]: b && !d,
111
- [`${e}__chevron-icon--is-valid`]: o,
112
- [`${e}__chevron-icon--negative`]: s
113
- }),
114
- "data-testid": r("dropdown-icon"),
115
- size: "sm"
116
- }
117
- )
118
- ] }) }), Ce = ({
119
- selectedItems: r,
120
- getTestId: n,
121
- disabled: d,
122
- onRemove: s,
123
- isSelect: o
124
- }) => r.length ? /* @__PURE__ */ a(
125
- $e,
126
- {
127
- className: v(`${e}__chip-group`, {
128
- [`${e}__chip-group--select`]: o
129
- }),
130
- "data-testid": n("tags"),
131
- size: "sm",
132
- children: r.map((l) => /* @__PURE__ */ a(
133
- $e.Item,
134
- {
135
- id: l.id,
136
- "data-testid": n(`tag-${l.id}`),
137
- "aria-label": `Remove ${l.label}`,
138
- onDismiss: () => {
139
- s(l);
140
- },
141
- disabled: d || l.disabled,
142
- children: l.label
143
- },
144
- l.id
145
- ))
146
- }
147
- ) : null, Oe = ({
148
- errorText: r,
149
- helperText: n,
150
- helperTextId: d,
151
- negative: s
152
- }) => /* @__PURE__ */ X(ye, { children: [
153
- r && /* @__PURE__ */ a(Fe, { negative: s, children: r }),
154
- n && !r && /* @__PURE__ */ a(Pe, { id: d, negative: s, children: n })
155
- ] }), te = "__purpur-dropdown-select-all__", De = ({
156
- selectAllLabel: r,
157
- multiple: n,
158
- options: d,
159
- selectedItems: s
160
- }) => !r || !n || d.filter((x) => !x.disabled).length === 0 ? !1 : !d.filter((x) => x.disabled).some(
161
- (x) => !s.some((I) => I.id === x.id)
162
- ), Ne = ({
163
- optionsToShow: r,
164
- getListboxItemProps: n,
165
- multiple: d,
166
- fieldId: s,
167
- noOptionsText: o,
168
- selectAllLabel: l,
169
- selectedItems: b = []
170
- }) => {
171
- if (o !== void 0 && !r.length)
172
- return /* @__PURE__ */ a(ae.Item, { noninteractive: !0, children: o });
173
- const x = r[0]?.id === te;
174
- let I = !1;
175
- if (x) {
176
- const y = r.filter((h) => h.id !== te).filter((h) => !h.disabled), _ = y.filter(
177
- (h) => b.some((c) => c.id === h.id)
178
- ).length, u = y.length > 0 && _ === y.length, $ = b.length > 0;
179
- I = u ? !0 : $ ? "indeterminate" : !1;
180
- }
181
- return r.map((p, y) => {
182
- const { key: _, selected: u, ...$ } = n(p, y);
183
- return p.id === te ? /* @__PURE__ */ a(
184
- ae.Item,
185
- {
186
- ...$,
187
- "aria-selected": I === !0,
188
- className: v(
189
- `${e}__checkbox-item-multiple`,
190
- `${e}__select-all-item`
191
- ),
192
- hideSelectedIcon: !0,
193
- children: /* @__PURE__ */ X("span", { className: v(`${e}__checkbox-container`), children: [
194
- /* @__PURE__ */ a(
195
- xe,
196
- {
197
- id: `${s}-checkbox-select-all`,
198
- checked: I,
199
- "aria-hidden": !0
200
- }
201
- ),
202
- l
203
- ] })
204
- },
205
- _
206
- ) : d ? /* @__PURE__ */ a(
207
- ae.Item,
208
- {
209
- ...$,
210
- className: v(`${e}__checkbox-item-multiple`, {
211
- [`${e}__select-all-child`]: x
212
- }),
213
- selected: !!u,
214
- hideSelectedIcon: !0,
215
- children: /* @__PURE__ */ X(
216
- "span",
217
- {
218
- className: v(`${e}__checkbox-container`, {
219
- [`${e}__checkbox-container--disabled`]: p.disabled
220
- }),
221
- children: [
222
- /* @__PURE__ */ a(
223
- xe,
224
- {
225
- id: `${s}-checkbox-${p.id}`,
226
- checked: !!u,
227
- "aria-hidden": !0,
228
- disabled: p.disabled
229
- }
230
- ),
231
- p.label
232
- ]
233
- }
234
- )
235
- },
236
- _
237
- ) : /* @__PURE__ */ a(ae.Item, { ...$, selected: !!u, children: /* @__PURE__ */ a("span", { children: p.label }) }, _);
238
- });
239
- }, qe = (r, n, d) => {
240
- if (d)
241
- return r.filter((o) => d(n, o));
242
- if (!n) return r;
243
- const s = n.toUpperCase().split(" ");
244
- return r.filter(
245
- (o) => s.every((l) => (o.value || o.label).toUpperCase().includes(l))
246
- );
247
- }, Re = ({
248
- options: r,
249
- searchTerm: n,
250
- filterOption: d,
251
- selectedOption: s,
252
- multiple: o
253
- }) => !o && s && s.label === n ? r : qe(r, n, d), Le = ({
254
- controlledInputValue: r,
255
- defaultInputValue: n,
256
- selectedOption: d,
257
- onInputChange: s
258
- }) => {
259
- const [o, l] = fe(
260
- (typeof r == "string" ? r : n ?? d?.label) ?? ""
261
- );
262
- return {
263
- displayInputValue: typeof r == "string" ? r : o,
264
- populateInputField: (I) => {
265
- s?.(I), l(I);
266
- }
267
- };
268
- }, Ae = we((r, n) => {
269
- const {
270
- id: d,
271
- label: s,
272
- options: o,
273
- className: l,
274
- errorText: b,
275
- helperText: x,
276
- placeholder: I,
277
- negative: p = !1,
278
- readOnly: y = !1,
279
- disabled: _ = !1,
280
- required: u = !1,
281
- valid: $,
282
- loading: h,
283
- multiple: c = !1,
284
- selectedOption: g,
285
- selectedOptions: L = [],
286
- onSelect: N,
287
- openOnFocus: O = !1,
288
- listboxMaxHeight: ce,
289
- listboxLabel: ee,
290
- filterOption: K,
291
- inputValue: H,
292
- defaultInputValue: m,
293
- onInputChange: j,
294
- noOptionsText: V,
295
- highlightFirstOption: A = !1,
296
- selectAllLabel: M,
297
- ["data-testid"]: S
298
- } = r, E = ve(), R = d ?? E, Y = (i) => S ? `${S}-${i}` : void 0, D = !!$ && !b, q = `${R}-helper-text`, f = c ? L : g ? [g] : [], { displayInputValue: Z, populateInputField: W } = Le({
299
- controlledInputValue: H,
300
- defaultInputValue: m,
301
- selectedOption: g,
302
- onInputChange: j
303
- }), ne = Re({
304
- options: o,
305
- searchTerm: Z,
306
- filterOption: K,
307
- selectedOption: g,
308
- multiple: c
309
- }), oe = De({
310
- selectAllLabel: M,
311
- multiple: c,
312
- options: o,
313
- selectedItems: f
314
- }), re = oe && (oe && !Z) ? [{ id: te, label: M }, ...ne] : ne, U = () => {
315
- const i = o.filter((k) => !k.disabled);
316
- if (i.every(
317
- (k) => f.some((P) => P.id === k.id)
318
- )) {
319
- const k = f.filter((P) => P.disabled);
320
- N?.(void 0, k);
321
- } else {
322
- const P = [...f.filter((be) => be.disabled), ...i];
323
- N?.(void 0, P);
324
- }
325
- W("");
326
- }, pe = (i) => {
327
- if (i.id === te) {
328
- U();
329
- return;
330
- }
331
- if (c) {
332
- const k = f.some((P) => P.id === i.id) ? f.filter((P) => P.id !== i.id) : [...f, i];
333
- N?.(i, k), W("");
334
- } else
335
- N?.(i, [i]), W(i.label);
336
- }, {
337
- rootRef: ie,
338
- inputRef: G,
339
- inputProps: J,
340
- listboxProps: de,
341
- getListboxItemProps: se,
342
- isOpen: w,
343
- openListbox: z,
344
- anchorStyle: T
345
- } = Be({
346
- id: R,
347
- options: re,
348
- listboxLabel: ee || s || "Options",
349
- selectedOption: c ? void 0 : g,
350
- disabled: _,
351
- readOnly: y,
352
- openOnFocus: O,
353
- listboxMaxHeight: ce,
354
- highlightFirstOption: A,
355
- closeOnSelect: !c,
356
- noOptionsText: V,
357
- onSelect: pe,
358
- "data-testid": S
359
- }), Q = (i) => {
360
- ie.current = i, typeof n == "function" ? n(i) : n && (n.current = i);
361
- }, ue = (i, C) => {
362
- const k = se(i, C);
363
- if (c) {
364
- const P = f.some((be) => be.id === i.id);
365
- return { ...k, selected: P, "aria-selected": P };
366
- }
367
- return k;
368
- }, he = (i) => {
369
- const C = f.filter((k) => k.id !== i.id);
370
- N?.(i, C);
371
- }, t = (i) => {
372
- if (c && i.key === "Backspace" && i.currentTarget.value === "" && f.length > 0) {
373
- for (let C = f.length - 1; C >= 0; C--)
374
- if (!f[C].disabled) {
375
- he(f[C]);
376
- break;
377
- }
378
- }
379
- J?.onKeyDown?.(i);
380
- }, B = (i) => {
381
- W(i.target.value), w || z();
382
- }, le = (i) => {
383
- if (_ || y) return;
384
- const C = i.target;
385
- if (C === G.current || C.closest("button"))
386
- return;
387
- const k = G.current;
388
- k?.dispatchEvent(new MouseEvent("mousedown", { bubbles: !0 })), k?.focus();
389
- }, F = c && !!M && o.length > 0 && o.every((i) => f.some((C) => C.id === i.id)), me = v(e, l, {
390
- [`${e}--negative`]: p
391
- });
392
- return /* @__PURE__ */ X("div", { ref: Q, className: me, children: [
393
- /* @__PURE__ */ a(
394
- Ie,
395
- {
396
- fieldId: R,
397
- htmlForSuffix: "input",
398
- label: s,
399
- getTestId: Y,
400
- disabled: _,
401
- negative: p,
402
- required: u
403
- }
404
- ),
405
- /* @__PURE__ */ a("div", { className: v(`${e}__field-row`), children: /* @__PURE__ */ X(
406
- "div",
407
- {
408
- className: v(`${e}__combobox-container`, {
409
- [`${e}__combobox-container--error`]: !!b,
410
- [`${e}__combobox-container--is-valid`]: D,
411
- [`${e}__combobox-container--negative`]: p,
412
- [`${e}__combobox-container--disabled`]: _,
413
- [`${e}__combobox-container--readonly`]: y && !_
414
- }),
415
- style: T,
416
- onClick: le,
417
- children: [
418
- c && !F && /* @__PURE__ */ a(
419
- Ce,
420
- {
421
- selectedItems: f,
422
- getTestId: Y,
423
- disabled: _,
424
- negative: p,
425
- onRemove: he
426
- }
427
- ),
428
- /* @__PURE__ */ a(
429
- "input",
430
- {
431
- ...J,
432
- ref: G,
433
- id: `${R}-input`,
434
- "data-testid": Y("input"),
435
- onKeyDown: t,
436
- onChange: B,
437
- value: F && !Z ? M : Z,
438
- placeholder: I,
439
- className: v(`${e}__input`, {
440
- [`${e}__input--negative`]: p
441
- }),
442
- "aria-describedby": q,
443
- "aria-invalid": !!b,
444
- disabled: _,
445
- readOnly: y
446
- }
447
- ),
448
- /* @__PURE__ */ a(
449
- ke,
450
- {
451
- getTestId: Y,
452
- loading: h,
453
- disabled: _,
454
- negative: p,
455
- isValid: D,
456
- isOpen: w,
457
- showChevronOpen: !0
458
- }
459
- ),
460
- /* @__PURE__ */ a(
461
- "span",
462
- {
463
- className: v(`${e}__frame`, {
464
- [`${e}__frame--negative`]: p
465
- })
466
- }
467
- )
468
- ]
469
- }
470
- ) }),
471
- w && /* @__PURE__ */ a(ae, { ...de, className: v(`${e}__listbox`), children: Ne({
472
- optionsToShow: re,
473
- getListboxItemProps: ue,
474
- multiple: c,
475
- fieldId: R,
476
- noOptionsText: V,
477
- selectAllLabel: M,
478
- selectedItems: f
479
- }) }),
480
- /* @__PURE__ */ a(
481
- Oe,
482
- {
483
- errorText: b,
484
- helperText: x,
485
- helperTextId: q,
486
- negative: p
487
- }
488
- )
489
- ] });
490
- });
491
- Ae.displayName = "DropdownCombobox";
492
- const ze = ({
493
- options: r,
494
- highlightFirstOption: n
495
- }) => {
496
- const d = _e(null), s = _e({}), [o, l] = fe(
497
- n ? r[0] : void 0
498
- ), b = (u) => {
499
- if (u) {
500
- const $ = u.getBoundingClientRect(), h = d.current?.getBoundingClientRect() || { top: 0, bottom: 0 };
501
- ($.top < h.top || $.bottom > h.bottom) && u.scrollIntoView({ block: "nearest" });
502
- }
503
- };
504
- return {
505
- highlightedOption: o,
506
- listboxRef: d,
507
- optionRefs: s,
508
- findNextOption: (u, $) => {
509
- const h = $.filter((g) => !g.disabled);
510
- if (!h.length) return;
511
- const c = o ? h.findIndex((g) => g.id === o.id) : -1;
512
- return u === "ArrowDown" ? h[(c + 1) % h.length] : h[(c - 1 + h.length) % h.length];
513
- },
514
- highlightOption: (u) => {
515
- l(u ? { ...u } : void 0), u && b(s.current[u.id]);
516
- },
517
- highlightByClick: (u) => {
518
- u.id !== o?.id && l({ ...u, isSetByClickEvent: !0 });
519
- },
520
- highlightSelected: (u, $) => {
521
- requestAnimationFrame(() => {
522
- l({ ...u, isSetByClickEvent: $ === "CLICK" }), b(s.current[u.id]);
523
- });
524
- },
525
- resetHighlight: () => {
526
- l(void 0);
527
- }
528
- };
529
- }, je = (r, n) => {
530
- const d = Se(
531
- (s) => {
532
- r && !r.contains(s.target) && n();
533
- },
534
- [n, r]
535
- );
536
- Te(() => (document.addEventListener("mousedown", d), () => {
537
- document.removeEventListener("mousedown", d);
538
- }), [d]);
539
- }, We = ({
540
- id: r,
541
- variant: n,
542
- options: d,
543
- listboxLabel: s,
544
- multiple: o = !1,
545
- selectedOption: l,
546
- selectedOptions: b = [],
547
- onSelect: x,
548
- filterOption: I,
549
- inputValue: p,
550
- defaultInputValue: y,
551
- onInputChange: _,
552
- noOptionsText: u,
553
- highlightFirstOption: $ = !1,
554
- openOnFocus: h = !1,
555
- listboxMaxHeight: c,
556
- disabled: g = !1,
557
- readOnly: L = !1,
558
- ["data-testid"]: N
559
- }) => {
560
- const O = n === "combobox", ce = ve(), ee = _e(null), K = _e(null), H = _e(null), m = ze({ options: d, highlightFirstOption: $ }), { displayInputValue: j, populateInputField: V } = Le({
561
- controlledInputValue: p,
562
- defaultInputValue: y,
563
- selectedOption: l,
564
- onInputChange: _
565
- }), [A, M] = fe(!1), S = () => {
566
- M(!1), m.resetHighlight();
567
- };
568
- je(ee.current, S);
569
- const E = ({ eventType: t }) => {
570
- M(!0);
571
- const B = o ? void 0 : l;
572
- B && m.highlightSelected(B, t);
573
- }, R = o ? b : l ? [l] : [], Y = O ? Re({
574
- options: d,
575
- searchTerm: j,
576
- filterOption: I,
577
- selectedOption: l,
578
- multiple: o
579
- }) : d, D = A && (!!Y.length || !!u), q = (t) => N ? `${N}-${t}` : void 0, f = (t) => {
580
- if (!(!t || t.disabled))
581
- if (o) {
582
- const le = R.some((F) => F.id === t.id) ? R.filter((F) => F.id !== t.id) : [...R, t];
583
- x?.(t, le), O && (V(""), H.current?.focus());
584
- } else
585
- x?.(t, [t]), O && V(t.label), S(), (O ? H : K).current?.focus();
586
- }, Z = (t) => {
587
- D || E({ eventType: "KEYBOARD" });
588
- const B = m.findNextOption(t, Y);
589
- m.highlightOption(B);
590
- }, W = (t) => {
591
- if (!(g || L))
592
- switch (t.key) {
593
- case "ArrowUp":
594
- case "ArrowDown":
595
- t.preventDefault(), Z(t.key);
596
- break;
597
- case "Enter": {
598
- t.preventDefault(), D && m.highlightedOption ? f(m.highlightedOption) : D || E({ eventType: "KEYBOARD" });
599
- break;
600
- }
601
- case " ": {
602
- O || (t.preventDefault(), D && m.highlightedOption ? f(m.highlightedOption) : D || E({ eventType: "KEYBOARD" }));
603
- break;
604
- }
605
- case "Escape":
606
- t.preventDefault(), S();
607
- break;
608
- case "Tab":
609
- S();
610
- break;
611
- case "Home":
612
- case "End":
613
- O && S();
614
- break;
615
- }
616
- }, ne = (t) => {
617
- V(t.target.value), m.resetHighlight(), A || E({ eventType: "KEYBOARD" });
618
- }, oe = () => {
619
- g || L || (A ? S() : E({ eventType: "CLICK" }));
620
- }, ge = () => {
621
- !A && h && !g && !L && E({ eventType: "KEYBOARD" }), H.current?.select();
622
- }, re = () => {
623
- setTimeout(() => {
624
- const t = document.activeElement;
625
- t !== document.body && !H.current?.contains(t) && !m.listboxRef.current?.contains(t) && !ee.current?.contains(t) && (S(), O && !o && V(l ? l.label : ""));
626
- });
627
- }, U = () => {
628
- g || L || (A ? S() : E({ eventType: "CLICK" }));
629
- }, pe = (t) => {
630
- if (g || L) return;
631
- const B = t.target.closest("button");
632
- B && B !== K.current || U();
633
- }, ie = () => {
634
- !A && h && !g && !L && E({ eventType: "KEYBOARD" });
635
- }, G = `${r}-listbox`, J = (t) => `${r}-listbox-item-${t.id}`, de = `--purpur-dropdown-${ce.replace(/:/g, "")}`, se = { anchorName: de }, w = O ? null : {
636
- onClick: pe
637
- }, z = Se(
638
- (t) => {
639
- if (m.listboxRef.current = t, t && typeof t.showPopover == "function")
640
- try {
641
- t.showPopover();
642
- } catch {
643
- }
644
- },
645
- [m.listboxRef]
646
- ), T = {
647
- "aria-label": s,
648
- "aria-expanded": D,
649
- "data-testid": q("listbox"),
650
- id: G,
651
- ref: z,
652
- onMouseLeave: () => m.resetHighlight(),
653
- popover: "manual",
654
- style: {
655
- ...c ? {
656
- maxHeight: typeof c == "number" ? `${c}px` : c
657
- } : {},
658
- positionAnchor: de
659
- }
660
- }, Q = (t, B) => {
661
- const le = R.some((i) => i.id === t.id), { highlightedOption: F } = m, me = (t.id === F?.id || $ && !F && B === 0) && !F?.isSetByClickEvent;
662
- return {
663
- "data-testid": q(`listbox-item-${t.id}`),
664
- id: J(t),
665
- key: t.id,
666
- onMouseMove: () => m.highlightByClick(t),
667
- onMouseUp: () => f(t),
668
- ref: (i) => {
669
- i && (m.optionRefs.current[t.id] = i);
670
- },
671
- tabIndex: -1,
672
- selected: le,
673
- disabled: t.disabled,
674
- highlighted: me,
675
- hovered: t.id === F?.id && !!F?.isSetByClickEvent,
676
- "aria-selected": le
677
- };
678
- }, ue = O ? {} : {
679
- ref: K,
680
- type: "button",
681
- role: "combobox",
682
- "aria-haspopup": "listbox",
683
- "aria-expanded": D,
684
- "aria-controls": G,
685
- "aria-disabled": g,
686
- "data-testid": q("trigger"),
687
- id: `${r}-trigger`,
688
- onKeyDown: W,
689
- onFocus: ie,
690
- disabled: g,
691
- tabIndex: g ? -1 : 0,
692
- style: se
693
- }, he = O ? {
694
- ref: H,
695
- role: "combobox",
696
- "aria-autocomplete": "list",
697
- "aria-expanded": D,
698
- "aria-controls": G,
699
- "aria-activedescendant": m.highlightedOption ? J(m.highlightedOption) : void 0,
700
- "data-testid": q("input"),
701
- autoComplete: "off",
702
- id: `${r}-input`,
703
- type: "text",
704
- value: j,
705
- onChange: ne,
706
- onMouseDown: oe,
707
- onFocus: ge,
708
- onBlur: re,
709
- onKeyDown: W,
710
- disabled: g,
711
- readOnly: L
712
- } : null;
713
- return {
714
- rootRef: ee,
715
- triggerContainerProps: w,
716
- triggerProps: ue,
717
- inputProps: he,
718
- listboxProps: T,
719
- getListboxItemProps: Q,
720
- optionsToShow: Y,
721
- isOpen: D,
722
- highlightedOption: m.highlightedOption,
723
- selectedItems: R,
724
- anchorStyle: se
725
- };
726
- }, Ee = we((r, n) => {
727
- const {
728
- id: d,
729
- label: s,
730
- options: o,
731
- className: l,
732
- errorText: b,
733
- helperText: x,
734
- placeholder: I,
735
- negative: p = !1,
736
- readOnly: y = !1,
737
- disabled: _ = !1,
738
- required: u = !1,
739
- valid: $ = !1,
740
- loading: h = !1,
741
- multiple: c = !1,
742
- selectedOption: g,
743
- selectedOptions: L = [],
744
- onSelect: N,
745
- openOnFocus: O = !1,
746
- listboxMaxHeight: ce,
747
- listboxLabel: ee,
748
- selectAllLabel: K,
749
- ["data-testid"]: H
750
- } = r, m = ve(), j = d ?? m, V = (w) => H ? `${H}-${w}` : void 0, A = !!$ && !b, M = `${j}-helper-text`, S = c ? L : g ? [g] : [], E = De({
751
- selectAllLabel: K,
752
- multiple: c,
753
- options: o,
754
- selectedItems: S
755
- }), R = () => {
756
- const w = o.filter((T) => !T.disabled);
757
- if (w.every(
758
- (T) => S.some((Q) => Q.id === T.id)
759
- )) {
760
- const T = S.filter((Q) => Q.disabled);
761
- N?.(void 0, T);
762
- } else {
763
- const Q = [...S.filter((ue) => ue.disabled), ...w];
764
- N?.(void 0, Q);
765
- }
766
- }, Y = (w, z) => {
767
- if (w?.id === te) {
768
- R();
769
- return;
770
- }
771
- N?.(w, z);
772
- }, D = E ? [{ id: te, label: K }, ...o] : o, q = We({
773
- id: j,
774
- variant: "select",
775
- options: D,
776
- listboxLabel: ee || s || "Options",
777
- multiple: c,
778
- selectedOption: g,
779
- selectedOptions: L,
780
- onSelect: Y,
781
- openOnFocus: O,
782
- listboxMaxHeight: ce,
783
- disabled: _,
784
- readOnly: y,
785
- "data-testid": H
786
- }), f = (w) => {
787
- q.rootRef.current = w, typeof n == "function" ? n(w) : n && (n.current = w);
788
- }, {
789
- triggerContainerProps: Z,
790
- triggerProps: W,
791
- listboxProps: ne,
792
- getListboxItemProps: oe,
793
- optionsToShow: ge,
794
- isOpen: re,
795
- selectedItems: U,
796
- anchorStyle: pe
797
- } = q, ie = {
798
- ...W
799
- };
800
- delete ie.style;
801
- const G = (w) => {
802
- const z = U.filter((T) => T.id !== w.id);
803
- N?.(w, z);
804
- }, J = c && !!K && o.length > 0 && o.every((w) => U.some((z) => z.id === w.id)), de = c ? J ? K : U.length === 0 && I || "" : g?.label || I || "", se = v(e, l, {
805
- [`${e}--negative`]: p
806
- });
807
- return /* @__PURE__ */ X("div", { ref: f, className: se, children: [
808
- /* @__PURE__ */ a(
809
- Ie,
810
- {
811
- fieldId: j,
812
- htmlForSuffix: "trigger",
813
- label: s,
814
- getTestId: V,
815
- disabled: _,
816
- negative: p,
817
- required: u
818
- }
819
- ),
820
- /* @__PURE__ */ a("div", { className: v(`${e}__field-row`), children: /* @__PURE__ */ X(
821
- "div",
822
- {
823
- ...Z,
824
- className: v(`${e}__trigger-container`, {
825
- [`${e}__trigger-container--error`]: !!b,
826
- [`${e}__trigger-container--is-valid`]: A,
827
- [`${e}__trigger-container--negative`]: p,
828
- [`${e}__trigger-container--disabled`]: _,
829
- [`${e}__trigger-container--readonly`]: y && !_,
830
- [`${e}__trigger-container--has-tags`]: c && U.length > 0 && !J
831
- }),
832
- style: pe,
833
- children: [
834
- c && !J && /* @__PURE__ */ a(
835
- Ce,
836
- {
837
- selectedItems: U,
838
- getTestId: V,
839
- disabled: _,
840
- negative: p,
841
- onRemove: G,
842
- isSelect: !0
843
- }
844
- ),
845
- /* @__PURE__ */ a(
846
- "button",
847
- {
848
- ...ie,
849
- className: v(`${e}__trigger`, {
850
- [`${e}__trigger--is-valid`]: A,
851
- [`${e}__trigger--negative`]: p,
852
- [`${e}__trigger--disabled`]: _,
853
- [`${e}__trigger--readonly`]: y && !_,
854
- [`${e}__trigger--placeholder`]: !U.length
855
- }),
856
- "aria-describedby": M,
857
- children: /* @__PURE__ */ a("span", { className: v(`${e}__trigger-text`), children: de })
858
- }
859
- ),
860
- /* @__PURE__ */ a(
861
- ke,
862
- {
863
- getTestId: V,
864
- loading: h,
865
- disabled: _,
866
- negative: p,
867
- isValid: A,
868
- isOpen: re,
869
- readOnly: y,
870
- showChevronOpen: !0
871
- }
872
- ),
873
- /* @__PURE__ */ a(
874
- "span",
875
- {
876
- className: v(`${e}__frame`, {
877
- [`${e}__frame--negative`]: p
878
- })
879
- }
880
- )
881
- ]
882
- }
883
- ) }),
884
- re && /* @__PURE__ */ a(ae, { ...ne, className: v(`${e}__listbox`), children: Ne({
885
- optionsToShow: ge,
886
- getListboxItemProps: oe,
887
- multiple: c,
888
- fieldId: j,
889
- selectAllLabel: K,
890
- selectedItems: U
891
- }) }),
892
- /* @__PURE__ */ a(
893
- Oe,
894
- {
895
- errorText: b,
896
- helperText: x,
897
- helperTextId: M,
898
- negative: p
899
- }
900
- )
901
- ] });
902
- });
903
- Ee.displayName = "DropdownSelect";
904
- const Ge = we((r, n) => r.combobox ? /* @__PURE__ */ a(Ae, { ref: n, ...r }) : /* @__PURE__ */ a(Ee, { ref: n, ...r }));
905
- Ge.displayName = "Dropdown";
906
- export {
907
- Ge as D,
908
- We as u
909
- };
910
- //# sourceMappingURL=dropdown-TO3Mh0bk.mjs.map