@purpur/library 9.10.0 → 10.0.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 (520) hide show
  1. package/CHANGELOG.json +124 -0
  2. package/CHANGELOG.md +53 -1
  3. package/dist/LICENSE.txt +270 -175
  4. package/dist/{RichText-BAVZadzi.js → RichText-B865Qkzj.js} +2 -2
  5. package/dist/{RichText-BAVZadzi.js.map → RichText-B865Qkzj.js.map} +1 -1
  6. package/dist/{RichText-D4vznH1B.mjs → RichText-CPkBwXNI.mjs} +3 -3
  7. package/dist/{RichText-D4vznH1B.mjs.map → RichText-CPkBwXNI.mjs.map} +1 -1
  8. package/dist/accordion-aEZas0k1.mjs +122 -0
  9. package/dist/accordion-aEZas0k1.mjs.map +1 -0
  10. package/dist/accordion-zwsF1oUj.js +2 -0
  11. package/dist/accordion-zwsF1oUj.js.map +1 -0
  12. package/dist/accordion.cjs.js +1 -1
  13. package/dist/accordion.es.js +1 -1
  14. package/dist/button-C5CYysw5.js +2 -0
  15. package/dist/button-C5CYysw5.js.map +1 -0
  16. package/dist/button-mHw_J7JU.mjs +106 -0
  17. package/dist/button-mHw_J7JU.mjs.map +1 -0
  18. package/dist/button.cjs.js +1 -1
  19. package/dist/button.es.js +1 -1
  20. package/dist/{calendar-Cru-p6gC.mjs → calendar-DTL_g0ue.mjs} +4 -14
  21. package/dist/{calendar-Cru-p6gC.mjs.map → calendar-DTL_g0ue.mjs.map} +1 -1
  22. package/dist/{calendar-DDR8CQYo.js → calendar-DVOrK53J.js} +2 -2
  23. package/dist/{calendar-DDR8CQYo.js.map → calendar-DVOrK53J.js.map} +1 -1
  24. package/dist/calendar.cjs.js +1 -1
  25. package/dist/calendar.es.js +1 -1
  26. package/dist/{card-t2ZkZ82G.mjs → card-C0yhMN5d.mjs} +3 -3
  27. package/dist/card-C0yhMN5d.mjs.map +1 -0
  28. package/dist/{card-pdsBEJif.js → card-CIlY38WI.js} +2 -2
  29. package/dist/card-CIlY38WI.js.map +1 -0
  30. package/dist/card.cjs.js +1 -1
  31. package/dist/card.es.js +1 -1
  32. package/dist/{carousel-BIKcwvYz.mjs → carousel-Dq9yzk_-.mjs} +2 -2
  33. package/dist/{carousel-BIKcwvYz.mjs.map → carousel-Dq9yzk_-.mjs.map} +1 -1
  34. package/dist/{carousel-DnSaLDZf.js → carousel-j-s6M1hu.js} +2 -2
  35. package/dist/{carousel-DnSaLDZf.js.map → carousel-j-s6M1hu.js.map} +1 -1
  36. package/dist/carousel.cjs.js +1 -1
  37. package/dist/carousel.es.js +1 -1
  38. package/dist/{chat-field-Wjvh2J6C.js → chat-field-CLAjIHlM.js} +2 -2
  39. package/dist/{chat-field-Wjvh2J6C.js.map → chat-field-CLAjIHlM.js.map} +1 -1
  40. package/dist/{chat-field-CVF4DooY.mjs → chat-field-nxFRXoQx.mjs} +2 -2
  41. package/dist/{chat-field-CVF4DooY.mjs.map → chat-field-nxFRXoQx.mjs.map} +1 -1
  42. package/dist/chat-field.cjs.js +1 -1
  43. package/dist/chat-field.es.js +1 -1
  44. package/dist/{chip-group-B775zvKD.js → chip-group-BLuG0MC6.js} +2 -2
  45. package/dist/{chip-group-B775zvKD.js.map → chip-group-BLuG0MC6.js.map} +1 -1
  46. package/dist/{chip-group-xuOe7nL3.mjs → chip-group-Bo4kJ8Vq.mjs} +2 -2
  47. package/dist/{chip-group-xuOe7nL3.mjs.map → chip-group-Bo4kJ8Vq.mjs.map} +1 -1
  48. package/dist/chip-group.cjs.js +1 -1
  49. package/dist/chip-group.es.js +1 -1
  50. package/dist/color-dot-BEE5rKco.js.map +1 -1
  51. package/dist/color-dot-Dz9yzVX3.mjs.map +1 -1
  52. package/dist/{comparison-table-Dtqxz8vL.js → comparison-table-CRWRijfG.js} +2 -2
  53. package/dist/{comparison-table-Dtqxz8vL.js.map → comparison-table-CRWRijfG.js.map} +1 -1
  54. package/dist/{comparison-table-D1evE0ri.mjs → comparison-table-DYaRaP9Z.mjs} +3 -3
  55. package/dist/{comparison-table-D1evE0ri.mjs.map → comparison-table-DYaRaP9Z.mjs.map} +1 -1
  56. package/dist/comparison-table.cjs.js +1 -1
  57. package/dist/comparison-table.es.js +1 -1
  58. package/dist/components/accordion/src/accordion-item.d.ts +3 -3
  59. package/dist/components/accordion/src/accordion-item.d.ts.map +1 -1
  60. package/dist/components/accordion/src/accordion.d.ts +3 -7
  61. package/dist/components/accordion/src/accordion.d.ts.map +1 -1
  62. package/dist/components/accordion/src/accordion.visual.fixtures.d.ts.map +1 -1
  63. package/dist/components/alert-badge/src/alert-badge.d.ts +1 -1
  64. package/dist/components/avatar/src/avatar.d.ts +1 -1
  65. package/dist/components/badge/src/badge.d.ts +1 -1
  66. package/dist/components/button/src/button.d.ts +7 -8
  67. package/dist/components/button/src/button.d.ts.map +1 -1
  68. package/dist/components/button/src/button.visual.fixtures.d.ts +1 -1
  69. package/dist/components/calendar/src/calendar.d.ts.map +1 -1
  70. package/dist/components/card/src/card-content-container.d.ts +1 -1
  71. package/dist/components/card/src/card-content.d.ts +1 -1
  72. package/dist/components/card/src/card-cta.d.ts +1 -1
  73. package/dist/components/card/src/card-heading.d.ts +4 -4
  74. package/dist/components/card/src/card-heading.d.ts.map +1 -1
  75. package/dist/components/card/src/card-media-layout.d.ts +1 -1
  76. package/dist/components/card/src/card-media.d.ts +1 -1
  77. package/dist/components/card/src/card-root.d.ts +1 -1
  78. package/dist/components/checkbox/src/checkbox.d.ts +1 -1
  79. package/dist/components/color-dot/src/color-dot.d.ts +2 -1
  80. package/dist/components/color-dot/src/color-dot.d.ts.map +1 -1
  81. package/dist/components/content-block/src/content-block-group.d.ts +1 -1
  82. package/dist/components/content-block/src/content-block.d.ts +3 -3
  83. package/dist/components/content-block/src/content-block.d.ts.map +1 -1
  84. package/dist/components/country-flag-icon/src/all-country-flag-assets.d.ts +0 -1
  85. package/dist/components/country-flag-icon/src/all-country-flag-assets.d.ts.map +1 -1
  86. package/dist/components/country-flag-icon/src/country-flag-icon.d.ts +2 -2
  87. package/dist/components/cta-link/src/cta-link.d.ts +10 -10
  88. package/dist/components/date-picker/src/date-picker.d.ts +5 -5
  89. package/dist/components/date-range-field/src/date-range-field.d.ts +2 -2
  90. package/dist/components/date-range-field/src/date-range-field.d.ts.map +1 -1
  91. package/dist/components/dismissable-chip-group/src/dismissable-chip-group-item.d.ts +1 -1
  92. package/dist/components/dismissable-chip-group/src/dismissable-chip-group.d.ts +4 -4
  93. package/dist/components/dismissable-chip-group/src/dismissable-chip-group.d.ts.map +1 -1
  94. package/dist/components/drawer/src/drawer-container.d.ts +1 -1
  95. package/dist/components/drawer/src/drawer-container.d.ts.map +1 -1
  96. package/dist/components/drawer/src/drawer-content.d.ts +2 -2
  97. package/dist/components/drawer/src/drawer-frame.d.ts +1 -1
  98. package/dist/components/drawer/src/drawer-handle.d.ts +1 -1
  99. package/dist/components/drawer/src/drawer-header.d.ts +1 -1
  100. package/dist/components/drawer/src/drawer-scroll-area.d.ts +1 -1
  101. package/dist/components/drawer/src/drawer.context.d.ts +2 -0
  102. package/dist/components/drawer/src/drawer.context.d.ts.map +1 -1
  103. package/dist/components/drawer/src/drawer.d.ts +2 -0
  104. package/dist/components/drawer/src/drawer.d.ts.map +1 -1
  105. package/dist/components/dropdown/src/dropdown-combobox.d.ts +2 -34
  106. package/dist/components/dropdown/src/dropdown-combobox.d.ts.map +1 -1
  107. package/dist/components/dropdown/src/dropdown-select.d.ts +2 -34
  108. package/dist/components/dropdown/src/dropdown-select.d.ts.map +1 -1
  109. package/dist/components/dropdown/src/dropdown-shared.d.ts +2 -1
  110. package/dist/components/dropdown/src/dropdown-shared.d.ts.map +1 -1
  111. package/dist/components/dropdown/src/dropdown.types.d.ts +24 -13
  112. package/dist/components/dropdown/src/dropdown.types.d.ts.map +1 -1
  113. package/dist/components/dropdown/src/useDropdown.d.ts +1 -1
  114. package/dist/components/dropdown/src/useDropdown.d.ts.map +1 -1
  115. package/dist/components/dropdown/src/useDropdownFilter.d.ts.map +1 -1
  116. package/dist/components/dropdown/src/useDropdownInput.d.ts.map +1 -1
  117. package/dist/components/field-error-text/src/field-error-text.d.ts +2 -2
  118. package/dist/components/file-upload/src/file-upload-button.d.ts +22 -0
  119. package/dist/components/file-upload/src/file-upload-button.d.ts.map +1 -0
  120. package/dist/components/file-upload/src/file-upload-drag-and-drop.d.ts +10 -0
  121. package/dist/components/file-upload/src/file-upload-drag-and-drop.d.ts.map +1 -0
  122. package/dist/components/file-upload/src/file-upload-file-name-label.d.ts +8 -0
  123. package/dist/components/file-upload/src/file-upload-file-name-label.d.ts.map +1 -0
  124. package/dist/components/file-upload/src/file-upload-icon.d.ts +8 -0
  125. package/dist/components/file-upload/src/file-upload-icon.d.ts.map +1 -0
  126. package/dist/components/file-upload/src/file-upload-types.d.ts +82 -0
  127. package/dist/components/file-upload/src/file-upload-types.d.ts.map +1 -0
  128. package/dist/components/file-upload/src/file-upload-utils.d.ts +7 -0
  129. package/dist/components/file-upload/src/file-upload-utils.d.ts.map +1 -0
  130. package/dist/components/file-upload/src/file-upload.d.ts +6 -0
  131. package/dist/components/file-upload/src/file-upload.d.ts.map +1 -0
  132. package/dist/components/file-upload/src/file-upload.visual.fixtures.d.ts +14 -0
  133. package/dist/components/file-upload/src/file-upload.visual.fixtures.d.ts.map +1 -0
  134. package/dist/components/footer/src/footer-navigation.d.ts +1 -1
  135. package/dist/components/footer/src/footer.d.ts +3 -3
  136. package/dist/components/grid/src/grid.item.d.ts +1 -1
  137. package/dist/components/heading/src/heading.d.ts +20 -2
  138. package/dist/components/heading/src/heading.d.ts.map +1 -1
  139. package/dist/components/hero-banner/src/hero-banner-actions.d.ts +1 -1
  140. package/dist/components/hero-banner/src/hero-banner-media.d.ts +1 -1
  141. package/dist/components/hero-banner/src/hero-banner-types.d.ts +2 -2
  142. package/dist/components/hero-banner/src/hero-banner-types.d.ts.map +1 -1
  143. package/dist/components/hero-banner/src/hero-banner.d.ts +1 -1
  144. package/dist/components/hero-banner/src/hero-banner.d.ts.map +1 -1
  145. package/dist/components/icon/src/icon.d.ts +2 -2
  146. package/dist/components/label/src/label.d.ts +1 -1
  147. package/dist/components/listbox/src/listbox-item.d.ts +1 -1
  148. package/dist/components/loading/src/loading-illustrative.d.ts +1 -1
  149. package/dist/components/logo/src/logo.types.d.ts +2 -2
  150. package/dist/components/modal/src/modal-content.d.ts +1 -1
  151. package/dist/components/modal/src/modal-content.d.ts.map +1 -1
  152. package/dist/components/notification-banner/src/notification-banner.d.ts +5 -5
  153. package/dist/components/notification-banner/src/notification-banner.d.ts.map +1 -1
  154. package/dist/components/pagination/src/pagination-page-selector.d.ts +2 -2
  155. package/dist/components/pagination/src/pagination-page-trigger.d.ts +1 -1
  156. package/dist/components/pagination/src/pagination-step-trigger.d.ts +2 -2
  157. package/dist/components/pagination/src/pagination-truncation-separator.d.ts +1 -1
  158. package/dist/components/pagination/src/types.d.ts +1 -1
  159. package/dist/components/pagination/src/use-page-options.hook.d.ts +1 -1
  160. package/dist/components/pagination/src/use-page-size-options.hook.d.ts +1 -1
  161. package/dist/components/password-field/src/password-strength-indicator.d.ts +1 -1
  162. package/dist/components/password-field/src/password-strength.d.ts +2 -2
  163. package/dist/components/promotion-card/src/promotion-card.d.ts +9 -9
  164. package/dist/components/promotion-card/src/promotion-card.d.ts.map +1 -1
  165. package/dist/components/quantity-selector/src/quantity-selector-button.d.ts +2 -3
  166. package/dist/components/quantity-selector/src/quantity-selector-button.d.ts.map +1 -1
  167. package/dist/components/quantity-selector/src/quantity-selector.d.ts +2 -5
  168. package/dist/components/quantity-selector/src/quantity-selector.d.ts.map +1 -1
  169. package/dist/components/radio-card-group/src/radio-card-group.d.ts +2 -2
  170. package/dist/components/radio-card-group/src/radio-card-item.d.ts +1 -1
  171. package/dist/components/rich-text/src/types.d.ts +3 -3
  172. package/dist/components/search-field/src/search-field.d.ts +6 -6
  173. package/dist/components/skeleton/src/skeleton.d.ts +1 -1
  174. package/dist/components/spinner/src/spinner.d.ts +2 -2
  175. package/dist/components/stepper/src/stepper-container.d.ts +1 -1
  176. package/dist/components/stepper/src/stepper-content.d.ts +1 -1
  177. package/dist/components/stepper/src/{stepper-button.d.ts → stepper-link.d.ts} +5 -4
  178. package/dist/components/stepper/src/stepper-link.d.ts.map +1 -0
  179. package/dist/components/stepper/src/stepper-nav-items.d.ts +1 -0
  180. package/dist/components/stepper/src/stepper-nav-items.d.ts.map +1 -1
  181. package/dist/components/stepper/src/stepper.d.ts.map +1 -1
  182. package/dist/components/stepper/src/types.d.ts +2 -2
  183. package/dist/components/stepper/src/types.d.ts.map +1 -1
  184. package/dist/components/stepper/src/use-content-focus.hook.d.ts.map +1 -1
  185. package/dist/components/table/src/cell-types/button-group-cell.d.ts +3 -3
  186. package/dist/components/table/src/draggable-table.d.ts.map +1 -1
  187. package/dist/components/table/src/table-column-header-cell.d.ts +1 -2
  188. package/dist/components/table/src/table-column-header-cell.d.ts.map +1 -1
  189. package/dist/components/table/src/table-content.d.ts +1 -1
  190. package/dist/components/table/src/table-headers.d.ts +2 -3
  191. package/dist/components/table/src/table-headers.d.ts.map +1 -1
  192. package/dist/components/table/src/table-settings-drawer.d.ts +11 -20
  193. package/dist/components/table/src/table-settings-drawer.d.ts.map +1 -1
  194. package/dist/components/table/src/table.d.ts +2 -9
  195. package/dist/components/table/src/table.d.ts.map +1 -1
  196. package/dist/components/table/src/test-utils/helpers.d.ts +10 -19
  197. package/dist/components/table/src/test-utils/helpers.d.ts.map +1 -1
  198. package/dist/components/table/src/test-utils/table-data.d.ts +3 -3
  199. package/dist/components/tabs/src/tab-content.d.ts +3 -1
  200. package/dist/components/tabs/src/tab-content.d.ts.map +1 -1
  201. package/dist/components/text-area/src/text-area.d.ts +1 -1
  202. package/dist/components/text-field/src/text-field-ai.d.ts +4 -4
  203. package/dist/components/text-field/src/text-field-base.d.ts +4 -4
  204. package/dist/components/text-field/src/text-field.d.ts +5 -5
  205. package/dist/components/text-spacing/src/text-spacing.d.ts +2 -2
  206. package/dist/components/tooltip/src/tooltip.d.ts +4 -6
  207. package/dist/components/tooltip/src/tooltip.d.ts.map +1 -1
  208. package/dist/components-metadata.js +20 -10
  209. package/dist/{content-block-CDMrz41K.mjs → content-block-BCM0I3Y2.mjs} +2 -2
  210. package/dist/content-block-BCM0I3Y2.mjs.map +1 -0
  211. package/dist/{content-block-DyYAnL2e.js → content-block-DQppQumZ.js} +2 -2
  212. package/dist/content-block-DQppQumZ.js.map +1 -0
  213. package/dist/content-block.cjs.js +1 -1
  214. package/dist/content-block.es.js +1 -1
  215. package/dist/core.esm-BmIwrKkJ.js +6 -0
  216. package/dist/core.esm-BmIwrKkJ.js.map +1 -0
  217. package/dist/core.esm-CKGHpLM_.mjs +2892 -0
  218. package/dist/core.esm-CKGHpLM_.mjs.map +1 -0
  219. package/dist/country-flag-icon/LICENSE.txt +11 -0
  220. package/dist/country-flag-icon/all-country-flag-assets.cjs.js +1 -1
  221. package/dist/country-flag-icon/all-country-flag-assets.cjs.js.map +1 -1
  222. package/dist/country-flag-icon/all-country-flag-assets.d.ts +0 -1
  223. package/dist/country-flag-icon/all-country-flag-assets.d.ts.map +1 -1
  224. package/dist/country-flag-icon/all-country-flag-assets.es.js +0 -1
  225. package/dist/country-flag-icon/all-country-flag-assets.es.js.map +1 -1
  226. package/dist/country-flag-icon/dynamic-country-flag-icon.cjs.js +2 -0
  227. package/dist/country-flag-icon/dynamic-country-flag-icon.cjs.js.map +1 -0
  228. package/dist/country-flag-icon/dynamic-country-flag-icon.es.js +366 -0
  229. package/dist/country-flag-icon/dynamic-country-flag-icon.es.js.map +1 -0
  230. package/dist/{date-field-hA79n6mP.js → date-field-CtpWDaSh.js} +2 -2
  231. package/dist/{date-field-hA79n6mP.js.map → date-field-CtpWDaSh.js.map} +1 -1
  232. package/dist/{date-field-DVp_RMNm.mjs → date-field-_rCuf15v.mjs} +2 -2
  233. package/dist/{date-field-DVp_RMNm.mjs.map → date-field-_rCuf15v.mjs.map} +1 -1
  234. package/dist/date-field.cjs.js +1 -1
  235. package/dist/date-field.es.js +1 -1
  236. package/dist/{date-picker-Dzoo_hhQ.js → date-picker-BYlszX1W.js} +2 -2
  237. package/dist/{date-picker-Dzoo_hhQ.js.map → date-picker-BYlszX1W.js.map} +1 -1
  238. package/dist/{date-picker-B8ta-Q8V.mjs → date-picker-sqcNAplg.mjs} +6 -6
  239. package/dist/{date-picker-B8ta-Q8V.mjs.map → date-picker-sqcNAplg.mjs.map} +1 -1
  240. package/dist/date-picker.cjs.js +1 -1
  241. package/dist/date-picker.es.js +1 -1
  242. package/dist/date-range-field-B33XeBW8.js +2 -0
  243. package/dist/date-range-field-B33XeBW8.js.map +1 -0
  244. package/dist/{date-range-field-BZUjfftV.mjs → date-range-field-BmjQeiOv.mjs} +23 -23
  245. package/dist/date-range-field-BmjQeiOv.mjs.map +1 -0
  246. package/dist/date-range-field.cjs.js +1 -1
  247. package/dist/date-range-field.es.js +1 -1
  248. package/dist/{dismissable-chip-group-2updhyuR.js → dismissable-chip-group-5ALErhD2.js} +2 -2
  249. package/dist/dismissable-chip-group-5ALErhD2.js.map +1 -0
  250. package/dist/{dismissable-chip-group-Cfs2s2BH.mjs → dismissable-chip-group-DMNU7g5e.mjs} +3 -3
  251. package/dist/dismissable-chip-group-DMNU7g5e.mjs.map +1 -0
  252. package/dist/dismissable-chip-group.cjs.js +1 -1
  253. package/dist/dismissable-chip-group.es.js +1 -1
  254. package/dist/{drawer-cIUx6WSZ.mjs → drawer-Chx3H8EU.mjs} +241 -233
  255. package/dist/drawer-Chx3H8EU.mjs.map +1 -0
  256. package/dist/drawer-oFJcxW58.js +2 -0
  257. package/dist/drawer-oFJcxW58.js.map +1 -0
  258. package/dist/drawer.cjs.js +1 -1
  259. package/dist/drawer.es.js +1 -1
  260. package/dist/dropdown-Bn7WvsL2.js +2 -0
  261. package/dist/dropdown-Bn7WvsL2.js.map +1 -0
  262. package/dist/dropdown-CrufJnb4.mjs +945 -0
  263. package/dist/dropdown-CrufJnb4.mjs.map +1 -0
  264. package/dist/dropdown.cjs.js +1 -1
  265. package/dist/dropdown.es.js +1 -1
  266. package/dist/file-upload-Ctw6LCTU.mjs +589 -0
  267. package/dist/file-upload-Ctw6LCTU.mjs.map +1 -0
  268. package/dist/file-upload-MvNuX4ks.js +2 -0
  269. package/dist/file-upload-MvNuX4ks.js.map +1 -0
  270. package/dist/file-upload.cjs.js +2 -0
  271. package/dist/file-upload.cjs.js.map +1 -0
  272. package/dist/file-upload.es.js +5 -0
  273. package/dist/file-upload.es.js.map +1 -0
  274. package/dist/{floating-ui.react-dom-EredA301.mjs → floating-ui.react-dom-1kwKo24Z.mjs} +15 -15
  275. package/dist/{floating-ui.react-dom-EredA301.mjs.map → floating-ui.react-dom-1kwKo24Z.mjs.map} +1 -1
  276. package/dist/footer-Bbemct3Z.js +2 -0
  277. package/dist/footer-Bbemct3Z.js.map +1 -0
  278. package/dist/{footer-D-2b7UIB.mjs → footer-DkVmTd-f.mjs} +25 -25
  279. package/dist/footer-DkVmTd-f.mjs.map +1 -0
  280. package/dist/footer.cjs.js +1 -1
  281. package/dist/footer.es.js +1 -1
  282. package/dist/{heading-xwBuT_-9.mjs → heading-BG7JTFO1.mjs} +25 -24
  283. package/dist/heading-BG7JTFO1.mjs.map +1 -0
  284. package/dist/{heading-drD5ugCC.js → heading-BPeRwNYu.js} +2 -2
  285. package/dist/heading-BPeRwNYu.js.map +1 -0
  286. package/dist/heading.cjs.js +1 -1
  287. package/dist/heading.es.js +6 -5
  288. package/dist/{hero-banner-n9K-Jsdz.mjs → hero-banner-ChDoFRhq.mjs} +4 -4
  289. package/dist/hero-banner-ChDoFRhq.mjs.map +1 -0
  290. package/dist/{hero-banner--v-ezYMr.js → hero-banner-Mag1OwL4.js} +2 -2
  291. package/dist/hero-banner-Mag1OwL4.js.map +1 -0
  292. package/dist/hero-banner.cjs.js +1 -1
  293. package/dist/hero-banner.es.js +1 -1
  294. package/dist/index-BPY_9ddu.js +2 -0
  295. package/dist/index-BPY_9ddu.js.map +1 -0
  296. package/dist/index-Fewa56cA.mjs +440 -0
  297. package/dist/index-Fewa56cA.mjs.map +1 -0
  298. package/dist/libraries/library/src/calendar.d.ts +1 -1
  299. package/dist/libraries/library/src/card.d.ts +1 -1
  300. package/dist/libraries/library/src/container.d.ts +1 -1
  301. package/dist/libraries/library/src/content-block.d.ts +1 -1
  302. package/dist/libraries/library/src/dismissable-chip-group.d.ts +1 -1
  303. package/dist/libraries/library/src/drawer.d.ts +1 -1
  304. package/dist/libraries/library/src/file-upload.d.ts +6 -0
  305. package/dist/libraries/library/src/file-upload.d.ts.map +1 -0
  306. package/dist/libraries/library/src/library.d.ts +2 -1
  307. package/dist/libraries/library/src/library.d.ts.map +1 -1
  308. package/dist/libraries/library/src/notification-banner.d.ts +1 -1
  309. package/dist/libraries/library/src/notification.d.ts +1 -1
  310. package/dist/libraries/library/src/password-field.d.ts +6 -2
  311. package/dist/libraries/library/src/password-field.d.ts.map +1 -1
  312. package/dist/libraries/library/src/radio-button-group.d.ts +1 -1
  313. package/dist/libraries/library/src/radio-card-group.d.ts +1 -1
  314. package/dist/libraries/library/src/spinner.d.ts +1 -1
  315. package/dist/libraries/library/src/stepper.d.ts +1 -1
  316. package/dist/libraries/library/src/tooltip.d.ts +1 -1
  317. package/dist/libraries/library/src/visually-hidden.d.ts +1 -1
  318. package/dist/libraries/theme/src/ThemeProvider.d.ts +1 -1
  319. package/dist/library.cjs.js +1 -1
  320. package/dist/library.es.js +603 -601
  321. package/dist/library.es.js.map +1 -1
  322. package/dist/link-Dzqd0QuD.js +2 -0
  323. package/dist/{link-DhWVrkTz.js.map → link-Dzqd0QuD.js.map} +1 -1
  324. package/dist/link-ccCdDvBc.mjs +72 -0
  325. package/dist/{link-DY5WLpyc.mjs.map → link-ccCdDvBc.mjs.map} +1 -1
  326. package/dist/link.cjs.js +1 -1
  327. package/dist/link.es.js +1 -1
  328. package/dist/main-B501z9Ql.js +2 -0
  329. package/dist/main-B501z9Ql.js.map +1 -0
  330. package/dist/main-L71Sqg3s.mjs +1016 -0
  331. package/dist/main-L71Sqg3s.mjs.map +1 -0
  332. package/dist/{modal-D0Qxrvx5.js → modal-CXOYUsJm.js} +2 -2
  333. package/dist/modal-CXOYUsJm.js.map +1 -0
  334. package/dist/{modal-Bu1Zv5Ic.mjs → modal-Pwvhrzn-.mjs} +31 -31
  335. package/dist/modal-Pwvhrzn-.mjs.map +1 -0
  336. package/dist/modal.cjs.js +1 -1
  337. package/dist/modal.es.js +1 -1
  338. package/dist/{notification-D2oClkX2.js → notification-BkM2vLzI.js} +2 -2
  339. package/dist/{notification-D2oClkX2.js.map → notification-BkM2vLzI.js.map} +1 -1
  340. package/dist/{notification-DiVdy6E_.mjs → notification-Cbn0UN1p.mjs} +3 -3
  341. package/dist/{notification-DiVdy6E_.mjs.map → notification-Cbn0UN1p.mjs.map} +1 -1
  342. package/dist/notification-banner-B9RhXAZ8.js +2 -0
  343. package/dist/notification-banner-B9RhXAZ8.js.map +1 -0
  344. package/dist/{notification-banner-CZTQZ5Le.mjs → notification-banner-C4NVekCZ.mjs} +5 -5
  345. package/dist/notification-banner-C4NVekCZ.mjs.map +1 -0
  346. package/dist/notification-banner.cjs.js +1 -1
  347. package/dist/notification-banner.es.js +1 -1
  348. package/dist/notification.cjs.js +1 -1
  349. package/dist/notification.es.js +1 -1
  350. package/dist/password-field-Cy_E-D_G.mjs +200 -0
  351. package/dist/password-field-Cy_E-D_G.mjs.map +1 -0
  352. package/dist/password-field-lKyWHjQS.js +2 -0
  353. package/dist/password-field-lKyWHjQS.js.map +1 -0
  354. package/dist/password-field.cjs.js +2 -0
  355. package/dist/password-field.cjs.js.map +1 -0
  356. package/dist/password-field.es.js +6 -0
  357. package/dist/password-field.es.js.map +1 -0
  358. package/dist/popover-B6ntmuEK.mjs +614 -0
  359. package/dist/popover-B6ntmuEK.mjs.map +1 -0
  360. package/dist/popover-DJHMEFXP.js +2 -0
  361. package/dist/popover-DJHMEFXP.js.map +1 -0
  362. package/dist/popover.cjs.js +1 -1
  363. package/dist/popover.es.js +1 -1
  364. package/dist/{product-card-CxfHfJVV.mjs → product-card-BMseoNrG.mjs} +3 -3
  365. package/dist/{product-card-CxfHfJVV.mjs.map → product-card-BMseoNrG.mjs.map} +1 -1
  366. package/dist/{product-card-XxBwuxM-.js → product-card-D0jX5-up.js} +2 -2
  367. package/dist/{product-card-XxBwuxM-.js.map → product-card-D0jX5-up.js.map} +1 -1
  368. package/dist/product-card.cjs.js +1 -1
  369. package/dist/product-card.es.js +1 -1
  370. package/dist/{promotion-card-C1UoxzcV.js → promotion-card-B3mz__m7.js} +2 -2
  371. package/dist/promotion-card-B3mz__m7.js.map +1 -0
  372. package/dist/{promotion-card-CooYPpFo.mjs → promotion-card-Co6qAkTZ.mjs} +5 -5
  373. package/dist/promotion-card-Co6qAkTZ.mjs.map +1 -0
  374. package/dist/promotion-card.cjs.js +1 -1
  375. package/dist/promotion-card.es.js +1 -1
  376. package/dist/purpur.css +1 -1
  377. package/dist/quantity-selector-Cy0aJGGX.js +2 -0
  378. package/dist/quantity-selector-Cy0aJGGX.js.map +1 -0
  379. package/dist/quantity-selector-k6ZaVrk1.mjs +162 -0
  380. package/dist/quantity-selector-k6ZaVrk1.mjs.map +1 -0
  381. package/dist/quantity-selector.cjs.js +1 -1
  382. package/dist/quantity-selector.es.js +2 -3
  383. package/dist/{radio-button-group-D_F6kWD6.mjs → radio-button-group-DjiTo3b1.mjs} +2 -2
  384. package/dist/{radio-button-group-D_F6kWD6.mjs.map → radio-button-group-DjiTo3b1.mjs.map} +1 -1
  385. package/dist/{radio-button-group-CdUrC7h9.js → radio-button-group-uCRGh1H5.js} +2 -2
  386. package/dist/{radio-button-group-CdUrC7h9.js.map → radio-button-group-uCRGh1H5.js.map} +1 -1
  387. package/dist/radio-button-group.cjs.js +1 -1
  388. package/dist/radio-button-group.es.js +1 -1
  389. package/dist/{radio-card-group-B9_jOJnM.mjs → radio-card-group-DoM7qYO1.mjs} +2 -2
  390. package/dist/{radio-card-group-B9_jOJnM.mjs.map → radio-card-group-DoM7qYO1.mjs.map} +1 -1
  391. package/dist/{radio-card-group-DcdGkfOp.js → radio-card-group-_9wJC-s3.js} +2 -2
  392. package/dist/{radio-card-group-DcdGkfOp.js.map → radio-card-group-_9wJC-s3.js.map} +1 -1
  393. package/dist/radio-card-group.cjs.js +1 -1
  394. package/dist/radio-card-group.es.js +1 -1
  395. package/dist/rich-text.cjs.js +1 -1
  396. package/dist/rich-text.es.js +1 -1
  397. package/dist/{search-field-afhtC6q5.mjs → search-field-BTJtRyw5.mjs} +3 -3
  398. package/dist/{search-field-afhtC6q5.mjs.map → search-field-BTJtRyw5.mjs.map} +1 -1
  399. package/dist/{search-field-WJBtiK0K.js → search-field-nzVXak1a.js} +2 -2
  400. package/dist/{search-field-WJBtiK0K.js.map → search-field-nzVXak1a.js.map} +1 -1
  401. package/dist/search-field.cjs.js +1 -1
  402. package/dist/search-field.es.js +1 -1
  403. package/dist/stepper-D59T-Y2_.mjs +469 -0
  404. package/dist/stepper-D59T-Y2_.mjs.map +1 -0
  405. package/dist/stepper-Dao4XaDV.js +2 -0
  406. package/dist/stepper-Dao4XaDV.js.map +1 -0
  407. package/dist/stepper.cjs.js +1 -1
  408. package/dist/stepper.es.js +1 -1
  409. package/dist/table-DRSgesQ4.mjs +4545 -0
  410. package/dist/table-DRSgesQ4.mjs.map +1 -0
  411. package/dist/table-zBs9JALh.js +5 -0
  412. package/dist/table-zBs9JALh.js.map +1 -0
  413. package/dist/table.cjs.js +1 -1
  414. package/dist/table.es.js +1 -1
  415. package/dist/tabs-D2__wbCs.js +2 -0
  416. package/dist/tabs-D2__wbCs.js.map +1 -0
  417. package/dist/tabs-DOG5g2wf.mjs +440 -0
  418. package/dist/tabs-DOG5g2wf.mjs.map +1 -0
  419. package/dist/tabs.cjs.js +1 -1
  420. package/dist/tabs.es.js +1 -1
  421. package/dist/{text-field-VW8ObP83.js → text-field-BSgqJjpv.js} +2 -2
  422. package/dist/text-field-BSgqJjpv.js.map +1 -0
  423. package/dist/{text-field-D0e-cRbG.mjs → text-field-MQHeITxy.mjs} +3 -3
  424. package/dist/text-field-MQHeITxy.mjs.map +1 -0
  425. package/dist/text-field.cjs.js +1 -1
  426. package/dist/text-field.es.js +1 -1
  427. package/dist/tooltip-DeP1UsPW.js +2 -0
  428. package/dist/{tooltip-B-11qk-0.js.map → tooltip-DeP1UsPW.js.map} +1 -1
  429. package/dist/{tooltip-DngYHn5W.mjs → tooltip-bqdd2lJL.mjs} +347 -309
  430. package/dist/{tooltip-DngYHn5W.mjs.map → tooltip-bqdd2lJL.mjs.map} +1 -1
  431. package/dist/tooltip.cjs.js +1 -1
  432. package/dist/tooltip.es.js +1 -1
  433. package/package.json +21 -26
  434. package/scripts/generate.mts +1 -4
  435. package/src/aliases.ts +8 -4
  436. package/src/entries.js +2 -1
  437. package/src/{autocomplete.ts → file-upload.ts} +1 -1
  438. package/src/library.ts +2 -2
  439. package/src/password-field.ts +0 -1
  440. package/src/purpur.css +4 -0
  441. package/dist/accordion-B6OoQ4uZ.mjs +0 -128
  442. package/dist/accordion-B6OoQ4uZ.mjs.map +0 -1
  443. package/dist/accordion-BfpN5h4C.js +0 -2
  444. package/dist/accordion-BfpN5h4C.js.map +0 -1
  445. package/dist/autocomplete-BX1KDZqL.js +0 -2
  446. package/dist/autocomplete-BX1KDZqL.js.map +0 -1
  447. package/dist/autocomplete-CmLzmWp4.mjs +0 -228
  448. package/dist/autocomplete-CmLzmWp4.mjs.map +0 -1
  449. package/dist/autocomplete.cjs.js +0 -2
  450. package/dist/autocomplete.cjs.js.map +0 -1
  451. package/dist/autocomplete.es.js +0 -6
  452. package/dist/autocomplete.es.js.map +0 -1
  453. package/dist/button-4-yWOgtD.mjs +0 -109
  454. package/dist/button-4-yWOgtD.mjs.map +0 -1
  455. package/dist/button-DmybVApa.js +0 -2
  456. package/dist/button-DmybVApa.js.map +0 -1
  457. package/dist/card-pdsBEJif.js.map +0 -1
  458. package/dist/card-t2ZkZ82G.mjs.map +0 -1
  459. package/dist/components/autocomplete/src/autocomplete.d.ts +0 -18
  460. package/dist/components/autocomplete/src/autocomplete.d.ts.map +0 -1
  461. package/dist/components/autocomplete/src/useAutocomplete.d.ts +0 -59
  462. package/dist/components/autocomplete/src/useAutocomplete.d.ts.map +0 -1
  463. package/dist/components/autocomplete/src/utils.d.ts +0 -7
  464. package/dist/components/autocomplete/src/utils.d.ts.map +0 -1
  465. package/dist/components/stepper/src/stepper-button.d.ts.map +0 -1
  466. package/dist/content-block-CDMrz41K.mjs.map +0 -1
  467. package/dist/content-block-DyYAnL2e.js.map +0 -1
  468. package/dist/date-range-field-BZUjfftV.mjs.map +0 -1
  469. package/dist/date-range-field-Dqqgj41u.js +0 -2
  470. package/dist/date-range-field-Dqqgj41u.js.map +0 -1
  471. package/dist/dismissable-chip-group-2updhyuR.js.map +0 -1
  472. package/dist/dismissable-chip-group-Cfs2s2BH.mjs.map +0 -1
  473. package/dist/drawer-DyLQfvEh.js +0 -2
  474. package/dist/drawer-DyLQfvEh.js.map +0 -1
  475. package/dist/drawer-cIUx6WSZ.mjs.map +0 -1
  476. package/dist/dropdown-C8VsfTQw.mjs +0 -936
  477. package/dist/dropdown-C8VsfTQw.mjs.map +0 -1
  478. package/dist/dropdown-p4R2yCnJ.js +0 -2
  479. package/dist/dropdown-p4R2yCnJ.js.map +0 -1
  480. package/dist/footer-Cn1-zG1v.js +0 -2
  481. package/dist/footer-Cn1-zG1v.js.map +0 -1
  482. package/dist/footer-D-2b7UIB.mjs.map +0 -1
  483. package/dist/heading-drD5ugCC.js.map +0 -1
  484. package/dist/heading-xwBuT_-9.mjs.map +0 -1
  485. package/dist/hero-banner--v-ezYMr.js.map +0 -1
  486. package/dist/hero-banner-n9K-Jsdz.mjs.map +0 -1
  487. package/dist/libraries/library/src/autocomplete.d.ts +0 -6
  488. package/dist/libraries/library/src/autocomplete.d.ts.map +0 -1
  489. package/dist/link-DY5WLpyc.mjs +0 -72
  490. package/dist/link-DhWVrkTz.js +0 -2
  491. package/dist/modal-Bu1Zv5Ic.mjs.map +0 -1
  492. package/dist/modal-D0Qxrvx5.js.map +0 -1
  493. package/dist/notification-banner-BxHwTFnH.js +0 -2
  494. package/dist/notification-banner-BxHwTFnH.js.map +0 -1
  495. package/dist/notification-banner-CZTQZ5Le.mjs.map +0 -1
  496. package/dist/popover-CY75TnbA.js +0 -2
  497. package/dist/popover-CY75TnbA.js.map +0 -1
  498. package/dist/popover-wiiwtqWE.mjs +0 -1043
  499. package/dist/popover-wiiwtqWE.mjs.map +0 -1
  500. package/dist/promotion-card-C1UoxzcV.js.map +0 -1
  501. package/dist/promotion-card-CooYPpFo.mjs.map +0 -1
  502. package/dist/quantity-selector-BEYMDsBM.js +0 -2
  503. package/dist/quantity-selector-BEYMDsBM.js.map +0 -1
  504. package/dist/quantity-selector-Cp-e5xKJ.mjs +0 -172
  505. package/dist/quantity-selector-Cp-e5xKJ.mjs.map +0 -1
  506. package/dist/stepper-20s8dnPA.mjs +0 -449
  507. package/dist/stepper-20s8dnPA.mjs.map +0 -1
  508. package/dist/stepper-VDiR2I8F.js +0 -2
  509. package/dist/stepper-VDiR2I8F.js.map +0 -1
  510. package/dist/table-B5ZitZoL.js +0 -9
  511. package/dist/table-B5ZitZoL.js.map +0 -1
  512. package/dist/table-CNIL-60s.mjs +0 -7428
  513. package/dist/table-CNIL-60s.mjs.map +0 -1
  514. package/dist/tabs-Bye5lgZ1.mjs +0 -424
  515. package/dist/tabs-Bye5lgZ1.mjs.map +0 -1
  516. package/dist/tabs-D-nfZHIA.js +0 -2
  517. package/dist/tabs-D-nfZHIA.js.map +0 -1
  518. package/dist/text-field-D0e-cRbG.mjs.map +0 -1
  519. package/dist/text-field-VW8ObP83.js.map +0 -1
  520. package/dist/tooltip-B-11qk-0.js +0 -2
@@ -1,172 +0,0 @@
1
- import { jsx as a, jsxs as U, Fragment as X } from "react/jsx-runtime";
2
- import { forwardRef as Z, useState as C, useEffect as V } from "react";
3
- import { a as J } from "./spinner-DRQN6YdK.mjs";
4
- import { T as K } from "./text-field-D0e-cRbG.mjs";
5
- import { c as B } from "./bind-CU-R61T-.mjs";
6
- import { b as L } from "./button-4-yWOgtD.mjs";
7
- import { e as Y } from "./minus.es-BK9qA9iJ.mjs";
8
- import { b as G } from "./icon-DNHpBTHs-JfI8WyiR.mjs";
9
- const W = {
10
- "purpur-quantity-selector": "_purpur-quantity-selector_1hglo_1",
11
- "purpur-quantity-selector--full-width": "_purpur-quantity-selector--full-width_1hglo_25",
12
- "purpur-quantity-selector--loading": "_purpur-quantity-selector--loading_1hglo_31",
13
- "purpur-quantity-selector--no-gap": "_purpur-quantity-selector--no-gap_1hglo_34",
14
- "purpur-quantity-selector--no-gap-disabled-left": "_purpur-quantity-selector--no-gap-disabled-left_1hglo_39",
15
- "purpur-quantity-selector--no-gap-disabled-right": "_purpur-quantity-selector--no-gap-disabled-right_1hglo_43",
16
- "purpur-quantity-selector--no-gap-disabled": "_purpur-quantity-selector--no-gap-disabled_1hglo_39",
17
- "purpur-quantity-selector__spinner": "_purpur-quantity-selector__spinner_1hglo_50",
18
- "purpur-quantity-selector__spinner--full-width": "_purpur-quantity-selector__spinner--full-width_1hglo_57",
19
- "purpur-quantity-selector__spinner--separated": "_purpur-quantity-selector__spinner--separated_1hglo_61"
20
- }, T = {
21
- name: "plus",
22
- svg: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path fill-rule="evenodd" d="M12 4.1a.9.9 0 0 1 .9.9v6.1H19a.9.9 0 1 1 0 1.8h-6.1V19a.9.9 0 0 1-1.8 0v-6.1H5a.9.9 0 0 1 0-1.8h6.1V5a.9.9 0 0 1 .9-.9Z" clip-rule="evenodd"/></svg>',
23
- keywords: ["plus"],
24
- category: "utility"
25
- }, D = (s) => /* @__PURE__ */ a(G, { ...s, svg: T });
26
- D.displayName = "IconPlus";
27
- const tt = {
28
- "purpur-quantity-selector-button": "_purpur-quantity-selector-button_qjlbs_1",
29
- "purpur-quantity-selector-button--gap-left": "_purpur-quantity-selector-button--gap-left_qjlbs_4",
30
- "purpur-quantity-selector-button--gap-right": "_purpur-quantity-selector-button--gap-right_qjlbs_7",
31
- "purpur-quantity-selector-button--no-gap-right": "_purpur-quantity-selector-button--no-gap-right_qjlbs_10",
32
- "purpur-quantity-selector-button--no-gap-left": "_purpur-quantity-selector-button--no-gap-left_qjlbs_13"
33
- }, et = B.bind(tt), m = "purpur-quantity-selector-button", rt = ({
34
- ["data-testid"]: s,
35
- ["aria-label"]: f,
36
- disabled: n,
37
- hasGap: i,
38
- variant: c,
39
- buttonType: e,
40
- onClick: h
41
- }) => {
42
- const d = et(m, {
43
- [`${m}--gap-left`]: i && e === "decrement",
44
- [`${m}--gap-right`]: i && e === "increment",
45
- [`${m}--no-gap-left`]: !i && e === "decrement",
46
- [`${m}--no-gap-right`]: !i && e === "increment"
47
- });
48
- return /* @__PURE__ */ a(
49
- L,
50
- {
51
- "data-testid": s,
52
- className: d,
53
- size: "sm",
54
- type: "submit",
55
- variant: c,
56
- onClick: () => h(e),
57
- iconOnly: !0,
58
- "aria-label": f ?? "",
59
- disabled: n,
60
- tabIndex: -1,
61
- children: e === "increment" ? /* @__PURE__ */ a(D, { size: "xs" }) : /* @__PURE__ */ a(Y, { size: "xs" })
62
- }
63
- );
64
- }, j = B.bind(W), dt = ["attached", "separated"], _t = ["primary", "secondary"], r = "purpur-quantity-selector", nt = Z(
65
- ({
66
- ["data-testid"]: s,
67
- className: f,
68
- variant: n,
69
- buttonVariant: i,
70
- onChange: c,
71
- value: e,
72
- defaultValue: h,
73
- fullWidth: d,
74
- disabled: F,
75
- loading: $,
76
- minValue: k,
77
- maxValue: z,
78
- ariaLabelDecrement: E,
79
- ariaLabelIncrement: Q,
80
- ...R
81
- }, M) => {
82
- const [O, x] = C(h ?? 0), [v, w] = C(O), o = e !== void 0, l = o ? e : v, N = (t) => s ? `${s}-${t}` : void 0, u = F || $, b = Math.max(k ?? 0, 0), y = z ?? Number.MAX_SAFE_INTEGER, _ = l === y, g = l === b;
83
- V(() => {
84
- o && x(e);
85
- }, [e, o]), V(() => {
86
- if (!o) {
87
- const t = setTimeout(() => {
88
- x(v);
89
- }, 300);
90
- return () => clearTimeout(t);
91
- }
92
- }, [v, o, c]);
93
- const A = j(f, r, {
94
- [`${r}--no-gap`]: n === "attached" && !u && !g && !_,
95
- [`${r}--no-gap-disabled-left`]: n === "attached" && !u && !_ && g,
96
- [`${r}--no-gap-disabled-right`]: n === "attached" && !u && !g && _,
97
- [`${r}--no-gap-disabled`]: n === "attached" && (u || _ && g),
98
- [`${r}--full-width`]: d,
99
- [`${r}--loading`]: $
100
- }), H = (t) => {
101
- if (!/^[0-9]*$/.test(t.target.value))
102
- return;
103
- const q = +t.target.value;
104
- q < b || q > y || (o || w(q), c(q));
105
- }, I = (t) => {
106
- const p = t === "increment" ? l + 1 : l - 1;
107
- p < 0 || (o || w(p), c(p));
108
- }, S = (t) => {
109
- const p = t === "increment" && _ || t === "decrement" && g;
110
- return /* @__PURE__ */ a(
111
- rt,
112
- {
113
- "data-testid": N("button-" + t),
114
- variant: i,
115
- buttonType: t,
116
- hasGap: n === "separated",
117
- onClick: I,
118
- disabled: u || p,
119
- "aria-label": t === "increment" ? Q : E
120
- }
121
- );
122
- }, P = /* @__PURE__ */ U(X, { children: [
123
- $ && /* @__PURE__ */ a(
124
- "div",
125
- {
126
- className: j(`${r}__spinner`, {
127
- [`${r}__spinner--full-width`]: d,
128
- [`${r}__spinner--separated`]: !d && n === "separated"
129
- }),
130
- children: /* @__PURE__ */ a(
131
- J,
132
- {
133
- disabled: u,
134
- size: "xs",
135
- "data-testid": N("spinner")
136
- },
137
- "spinner"
138
- )
139
- }
140
- ),
141
- S("decrement")
142
- ] });
143
- return /* @__PURE__ */ a(
144
- K,
145
- {
146
- value: l,
147
- type: "number",
148
- ref: M,
149
- className: A,
150
- "data-testid": s,
151
- onChange: H,
152
- beforeField: P,
153
- afterField: S("increment"),
154
- disabled: u,
155
- min: b,
156
- max: y,
157
- role: "spinbutton",
158
- "aria-valuenow": l,
159
- "aria-valuemax": y,
160
- "aria-valuemin": b,
161
- ...R
162
- }
163
- );
164
- }
165
- );
166
- nt.displayName = "QuantitySelector";
167
- export {
168
- nt as Q,
169
- dt as a,
170
- _t as q
171
- };
172
- //# sourceMappingURL=quantity-selector-Cp-e5xKJ.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"quantity-selector-Cp-e5xKJ.mjs","sources":["../../../components/icon/dist/components/plus.es.js","../../../components/quantity-selector/src/quantity-selector-button.tsx","../../../components/quantity-selector/src/quantity-selector.tsx"],"sourcesContent":["import { jsx as s } from \"react/jsx-runtime\";\nimport { I as l } from \"../icon-DNHpBTHs.mjs\";\nconst e = {\n name: \"plus\",\n svg: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M12 4.1a.9.9 0 0 1 .9.9v6.1H19a.9.9 0 1 1 0 1.8h-6.1V19a.9.9 0 0 1-1.8 0v-6.1H5a.9.9 0 0 1 0-1.8h6.1V5a.9.9 0 0 1 .9-.9Z\" clip-rule=\"evenodd\"/></svg>',\n keywords: [\"plus\"],\n category: \"utility\"\n}, r = (o) => /* @__PURE__ */ s(l, { ...o, svg: e });\nr.displayName = \"IconPlus\";\nexport {\n r as IconPlus\n};\n//# sourceMappingURL=plus.es.js.map\n","import React from \"react\";\nimport { Button } from \"@purpur/button\";\nimport { IconMinus } from \"@purpur/icon/minus\";\nimport { IconPlus } from \"@purpur/icon/plus\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./quantity-selector-button.module.scss\";\n\ntype variant = \"primary\" | \"secondary\";\ntype buttonType = \"increment\" | \"decrement\";\n\ntype QuantitySelectorButtonProps = {\n [\"data-testid\"]?: string;\n [\"aria-label\"]?: string;\n disabled?: boolean;\n hasGap: boolean;\n variant: variant;\n buttonType: buttonType;\n onClick: (buttonType: buttonType) => void;\n};\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-quantity-selector-button\";\n\nexport const QuantitySelectorButton = ({\n [\"data-testid\"]: dataTestid,\n [\"aria-label\"]: ariaLabel,\n disabled,\n hasGap,\n variant,\n buttonType,\n onClick,\n}: QuantitySelectorButtonProps) => {\n const classes = cx(rootClassName, {\n [`${rootClassName}--gap-left`]: hasGap && buttonType === \"decrement\",\n [`${rootClassName}--gap-right`]: hasGap && buttonType === \"increment\",\n [`${rootClassName}--no-gap-left`]: !hasGap && buttonType === \"decrement\",\n [`${rootClassName}--no-gap-right`]: !hasGap && buttonType === \"increment\",\n });\n\n return (\n <Button\n data-testid={dataTestid}\n className={classes}\n size=\"sm\"\n type=\"submit\"\n variant={variant}\n onClick={() => onClick(buttonType)}\n iconOnly={true}\n aria-label={ariaLabel ?? \"\"}\n disabled={disabled}\n tabIndex={-1}\n >\n {buttonType === \"increment\" ? <IconPlus size=\"xs\" /> : <IconMinus size=\"xs\" />}\n </Button>\n );\n};\n","import React, { type ChangeEvent, forwardRef, useEffect, useState } from \"react\";\nimport type { BaseProps } from \"@purpur/common-types\";\nimport { Spinner } from \"@purpur/spinner\";\nimport { TextField } from \"@purpur/text-field\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./quantity-selector.module.scss\";\nimport { QuantitySelectorButton } from \"./quantity-selector-button\";\n\nconst cx = c.bind(styles);\n\nexport const quantitySelectorVariants = [\"attached\", \"separated\"] as const;\nexport const quantitySelectorButtonVariants = [\"primary\", \"secondary\"] as const;\n\ntype Variant = (typeof quantitySelectorVariants)[number];\ntype ButtonVariant = (typeof quantitySelectorButtonVariants)[number];\n\nexport type QuantitySelectorProps = Omit<BaseProps<\"input\">, \"onChange\" | \"type\"> & {\n variant: Variant;\n buttonVariant: ButtonVariant;\n onChange: (value: number) => void;\n defaultValue?: number;\n ariaLabelIncrement?: string;\n ariaLabelDecrement?: string;\n /**\n * Used when the component is controlled\n */\n value?: number;\n minValue?: number;\n maxValue?: number;\n label?: string;\n errorText?: string;\n fullWidth?: boolean;\n disabled?: boolean;\n loading?: boolean;\n};\n\nconst rootClassName = \"purpur-quantity-selector\";\n\nexport const QuantitySelector = forwardRef<HTMLInputElement, QuantitySelectorProps>(\n (\n {\n [\"data-testid\"]: dataTestId,\n className,\n variant,\n buttonVariant,\n onChange,\n value: controlledValue,\n defaultValue,\n fullWidth,\n disabled,\n loading,\n minValue,\n maxValue,\n ariaLabelDecrement,\n ariaLabelIncrement,\n ...props\n },\n ref\n ) => {\n const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue ?? 0);\n const [debouncedValue, setDebouncedValue] = useState(uncontrolledValue);\n const isControlled = controlledValue !== undefined;\n const value = isControlled ? controlledValue : debouncedValue;\n\n const getTestId = (name: string) => (dataTestId ? `${dataTestId}-${name}` : undefined);\n const isDisabled = disabled || loading;\n const min = Math.max(minValue ?? 0, 0);\n const max = maxValue ?? Number.MAX_SAFE_INTEGER;\n const incrementDisabled = value === max;\n const decrementDisabled = value === min;\n\n useEffect(() => {\n if (isControlled) {\n setUncontrolledValue(controlledValue);\n }\n }, [controlledValue, isControlled]);\n\n useEffect(() => {\n if (!isControlled) {\n const timer = setTimeout(() => {\n setUncontrolledValue(debouncedValue);\n }, 300);\n\n return () => clearTimeout(timer);\n }\n return;\n }, [debouncedValue, isControlled, onChange]);\n\n const classes = cx(className, rootClassName, {\n [`${rootClassName}--no-gap`]:\n variant === \"attached\" && !isDisabled && !decrementDisabled && !incrementDisabled,\n [`${rootClassName}--no-gap-disabled-left`]:\n variant === \"attached\" && !isDisabled && !incrementDisabled && decrementDisabled,\n [`${rootClassName}--no-gap-disabled-right`]:\n variant === \"attached\" && !isDisabled && !decrementDisabled && incrementDisabled,\n [`${rootClassName}--no-gap-disabled`]:\n variant === \"attached\" && (isDisabled || (incrementDisabled && decrementDisabled)),\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--loading`]: loading,\n });\n\n const handleOnChange = (e: ChangeEvent<HTMLInputElement>) => {\n const numericRegex = /^[0-9]*$/;\n if (!numericRegex.test(e.target.value)) {\n return;\n }\n const val = +e.target.value;\n if (val < min || val > max) {\n return;\n }\n\n if (!isControlled) {\n setDebouncedValue(val);\n }\n onChange(val);\n };\n\n const handleOnClick = (adjustmentType: \"increment\" | \"decrement\") => {\n const adjustedValue = adjustmentType === \"increment\" ? value + 1 : value - 1;\n if (adjustedValue < 0) {\n return;\n }\n\n if (!isControlled) {\n setDebouncedValue(adjustedValue);\n }\n onChange(adjustedValue);\n };\n\n const adjustmentButton = (adjustmentType: \"increment\" | \"decrement\") => {\n const buttonDisabled =\n (adjustmentType === \"increment\" && incrementDisabled) ||\n (adjustmentType === \"decrement\" && decrementDisabled);\n\n return (\n <QuantitySelectorButton\n data-testid={getTestId(\"button-\" + adjustmentType)}\n variant={buttonVariant}\n buttonType={adjustmentType}\n hasGap={variant === \"separated\"}\n onClick={handleOnClick}\n disabled={isDisabled || buttonDisabled}\n aria-label={adjustmentType === \"increment\" ? ariaLabelIncrement : ariaLabelDecrement}\n />\n );\n };\n\n const beforeField = (\n <>\n {loading && (\n <div\n className={cx(`${rootClassName}__spinner`, {\n [`${rootClassName}__spinner--full-width`]: fullWidth,\n [`${rootClassName}__spinner--separated`]: !fullWidth && variant === \"separated\",\n })}\n >\n <Spinner\n key=\"spinner\"\n disabled={isDisabled}\n size=\"xs\"\n data-testid={getTestId(\"spinner\")}\n />\n </div>\n )}\n {adjustmentButton(\"decrement\")}\n </>\n );\n\n return (\n <TextField\n value={value}\n type=\"number\"\n ref={ref}\n className={classes}\n data-testid={dataTestId}\n onChange={handleOnChange}\n beforeField={beforeField}\n afterField={adjustmentButton(\"increment\")}\n disabled={isDisabled}\n min={min}\n max={max}\n role=\"spinbutton\"\n aria-valuenow={value}\n aria-valuemax={max}\n aria-valuemin={min}\n {...props}\n />\n );\n }\n);\n\nQuantitySelector.displayName = \"QuantitySelector\";\n"],"names":["e","r","o","s","l","cx","c","styles","rootClassName","QuantitySelectorButton","dataTestid","ariaLabel","disabled","hasGap","variant","buttonType","onClick","classes","jsx","Button","IconPlus","IconMinus","quantitySelectorVariants","quantitySelectorButtonVariants","QuantitySelector","forwardRef","dataTestId","className","buttonVariant","onChange","controlledValue","defaultValue","fullWidth","loading","minValue","maxValue","ariaLabelDecrement","ariaLabelIncrement","props","ref","uncontrolledValue","setUncontrolledValue","useState","debouncedValue","setDebouncedValue","isControlled","value","getTestId","name","isDisabled","min","max","incrementDisabled","decrementDisabled","useEffect","timer","handleOnChange","val","handleOnClick","adjustmentType","adjustedValue","adjustmentButton","buttonDisabled","beforeField","jsxs","Fragment","Spinner","TextField"],"mappings":"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"}
@@ -1,449 +0,0 @@
1
- import { jsx as r, jsxs as w, Fragment as Z } from "react/jsx-runtime";
2
- import { forwardRef as P, isValidElement as x, useRef as S, useEffect as H, useState as Y, Children as I } from "react";
3
- import { b as V, a as z } from "./button-4-yWOgtD.mjs";
4
- import { l as rr } from "./chevron-left.es-UFhf3v35.mjs";
5
- import { n as tr } from "./chevron-right.es-D7aVK4ER.mjs";
6
- import { I as er, R as D } from "./index-IpWiejWQ.mjs";
7
- import { R as sr, V as nr, S as pr, T as or } from "./index-B8Mazo6u.mjs";
8
- import { c as L } from "./bind-CU-R61T-.mjs";
9
- import { b as ir } from "./tooltip-DngYHn5W.mjs";
10
- import { a as lr } from "./checkmark.es-DdgIZN2R.mjs";
11
- const ur = {
12
- PRIMARY: "primary"
13
- }, A = {
14
- SMALL_SCREEN: "small-screen",
15
- LARGE_SCREEN: "large-screen",
16
- ALWAYS: "always"
17
- }, ar = {
18
- "purpur-stepper__nav-container": "_purpur-stepper__nav-container_1rouo_1",
19
- "purpur-stepper__nav": "_purpur-stepper__nav_1rouo_1",
20
- "purpur-stepper": "_purpur-stepper_1rouo_1",
21
- "purpur-stepper__scroll-button": "_purpur-stepper__scroll-button_1rouo_7",
22
- "purpur-stepper__scroll-button--left": "_purpur-stepper__scroll-button--left_1rouo_18",
23
- "purpur-stepper__scroll-button--right": "_purpur-stepper__scroll-button--right_1rouo_21",
24
- "purpur-stepper__scroll-button-icon": "_purpur-stepper__scroll-button-icon_1rouo_24",
25
- "purpur-stepper__hidden": "_purpur-stepper__hidden_1rouo_27"
26
- }, _r = {
27
- "purpur-stepper-container": "_purpur-stepper-container_162zw_1",
28
- "purpur-stepper-container__inner--align-with-grid": "_purpur-stepper-container__inner--align-with-grid_162zw_5",
29
- "purpur-stepper-container--primary": "_purpur-stepper-container--primary_162zw_18",
30
- "purpur-stepper-container--secondary": "_purpur-stepper-container--secondary_162zw_21"
31
- }, F = L.bind(_r), v = "purpur-stepper-container", cr = ({
32
- ["data-testid"]: t = "purpur-stepper-container",
33
- children: e,
34
- className: s,
35
- alignWithGrid: n,
36
- variant: i,
37
- ...p
38
- }) => {
39
- const b = F(s, v, {
40
- [`${v}--${i}`]: i,
41
- [`${v}--align-with-grid`]: n
42
- });
43
- return /* @__PURE__ */ r("div", { className: b, "data-testid": t, ...p, children: /* @__PURE__ */ r(
44
- "div",
45
- {
46
- className: F(`${v}__inner`, {
47
- [`${v}__inner--align-with-grid`]: n
48
- }),
49
- children: e
50
- }
51
- ) });
52
- }, dr = P(
53
- ({ children: t, ...e }, s) => {
54
- const { finished: n, ...i } = e;
55
- return /* @__PURE__ */ r("div", { ...i, ref: s, children: t });
56
- }
57
- ), br = (t) => !!t && x(t) && !!t.props.label, mr = {
58
- "purpur-stepper-button": "_purpur-stepper-button_162is_1",
59
- "purpur-stepper-button__trigger-outline": "_purpur-stepper-button__trigger-outline_162is_21",
60
- "purpur-stepper-button--first": "_purpur-stepper-button--first_162is_33",
61
- "purpur-stepper-button--current": "_purpur-stepper-button--current_162is_33",
62
- "purpur-stepper-button--middle": "_purpur-stepper-button--middle_162is_38",
63
- "purpur-stepper-button--last": "_purpur-stepper-button--last_162is_48",
64
- "purpur-stepper-button--visibility-small-screen": "_purpur-stepper-button--visibility-small-screen_162is_58",
65
- "purpur-stepper-button--visibility-large-screen": "_purpur-stepper-button--visibility-large-screen_162is_66",
66
- "purpur-stepper-button__icon": "_purpur-stepper-button__icon_162is_90",
67
- "purpur-stepper-button__step-number": "_purpur-stepper-button__step-number_162is_100",
68
- "purpur-stepper-button__step-number--current": "_purpur-stepper-button__step-number--current_162is_111",
69
- "purpur-stepper-button__step-number--disabled": "_purpur-stepper-button__step-number--disabled_162is_115",
70
- "purpur-stepper-button__step-label": "_purpur-stepper-button__step-label_162is_120",
71
- "arrow-forward": "_arrow-forward_162is_124",
72
- "purpur-stepper-button--primary": "_purpur-stepper-button--primary_162is_136",
73
- "purpur-stepper-button--disabled": "_purpur-stepper-button--disabled_162is_139",
74
- "purpur-stepper-button--secondary": "_purpur-stepper-button--secondary_162is_145",
75
- "arrow-tail": "_arrow-tail_162is_155",
76
- "sr-only--lg-down": "_sr-only--lg-down_162is_174"
77
- }, N = L.bind(mr), c = "purpur-stepper-button", fr = ({
78
- ["data-testid"]: t,
79
- current: e,
80
- disabled: s,
81
- stepNumber: n
82
- }) => /* @__PURE__ */ r(
83
- "div",
84
- {
85
- "data-testid": t,
86
- className: N([
87
- `${c}__step-number`,
88
- {
89
- [`${c}__step-number--current`]: e
90
- },
91
- {
92
- [`${c}__step-number--disabled`]: s
93
- }
94
- ]),
95
- children: n
96
- }
97
- ), B = P(
98
- ({
99
- className: t,
100
- ["data-testid"]: e,
101
- variant: s,
102
- step: n,
103
- indexOfLastItem: i,
104
- index: p,
105
- currentStepIndex: b,
106
- whenToBeVisible: m,
107
- handleStepChange: l,
108
- handleStepFocus: a,
109
- completedStepLabel: o,
110
- ...u
111
- }, d) => {
112
- const $ = p === 0 ? "first" : p === i ? "last" : "middle", h = p === b;
113
- return /* @__PURE__ */ r(er, { asChild: !0, children: /* @__PURE__ */ r(
114
- V,
115
- {
116
- ...u,
117
- ref: d,
118
- className: N(
119
- t,
120
- c,
121
- `${c}--${$}`,
122
- `${c}--${s}`,
123
- `${c}--visibility-${m}`,
124
- {
125
- [`${c}--current`]: h
126
- },
127
- {
128
- [`${c}--disabled`]: n.disabled
129
- },
130
- {
131
- "arrow-tail": $ !== "first"
132
- },
133
- {
134
- "arrow-forward": $ !== "last"
135
- }
136
- ),
137
- id: `stepper-trigger-button-${p}`,
138
- variant: z.TERTIARY_PURPLE,
139
- "data-testid": `${e}-step-trigger-item-${p}`,
140
- disabled: n.disabled,
141
- "aria-current": h && "step",
142
- "aria-label": n.finished && !h ? [n.label, o].filter(Boolean).join(", ") : void 0,
143
- onClick: (T) => l(T, p),
144
- onFocus: a,
145
- children: /* @__PURE__ */ w("span", { className: N(`${c}__trigger-outline`), children: [
146
- n.finished && !h ? /* @__PURE__ */ r(
147
- lr,
148
- {
149
- className: N(`${c}__icon`),
150
- "data-testid": `${e}-step-finished-icon`,
151
- size: "sm"
152
- }
153
- ) : /* @__PURE__ */ r(
154
- fr,
155
- {
156
- "data-testid": `${e}-step-number`,
157
- current: h,
158
- disabled: n.disabled,
159
- stepNumber: p + 1
160
- }
161
- ),
162
- /* @__PURE__ */ r(
163
- "span",
164
- {
165
- className: N(`${c}__step-label`, {
166
- "sr-only--lg-down": !h
167
- }),
168
- children: n.label
169
- }
170
- )
171
- ] })
172
- }
173
- ) });
174
- }
175
- ), hr = {
176
- "purpur-stepper-nav-items__list": "_purpur-stepper-nav-items__list_lgkh0_1",
177
- "purpur-stepper-nav-items__list-item": "_purpur-stepper-nav-items__list-item_lgkh0_7",
178
- "purpur-stepper-nav-items__list-item--current": "_purpur-stepper-nav-items__list-item--current_lgkh0_25",
179
- "purpur-stepper-nav-items__tooltip-content": "_purpur-stepper-nav-items__tooltip-content_lgkh0_31",
180
- "purpur-stepper-nav-items__tooltip-trigger-item-container": "_purpur-stepper-nav-items__tooltip-trigger-item-container_lgkh0_34"
181
- }, C = L.bind(hr), y = "purpur-stepper-nav-items", gr = P(
182
- ({
183
- ["data-testid"]: t,
184
- variant: e,
185
- handleStepChange: s,
186
- handleStepFocus: n,
187
- steps: i,
188
- firstStepRef: p,
189
- lastStepRef: b,
190
- currentStepIndex: m,
191
- completedStepLabel: l
192
- }, a) => {
193
- const o = i.map((u, d) => {
194
- const $ = /* @__PURE__ */ r("span", { className: C(`${y}__tooltip-trigger-item-container`), children: /* @__PURE__ */ r(
195
- B,
196
- {
197
- "data-testid": `${t}-disabled-sm`,
198
- variant: e,
199
- step: u,
200
- indexOfLastItem: i.length - 1,
201
- index: d,
202
- currentStepIndex: m,
203
- whenToBeVisible: A.SMALL_SCREEN,
204
- completedStepLabel: l,
205
- handleStepChange: s,
206
- handleStepFocus: n
207
- }
208
- ) });
209
- return /* @__PURE__ */ r(
210
- "li",
211
- {
212
- className: C(`${y}__list-item`, {
213
- [`${y}__list-item--current`]: d === m
214
- }),
215
- ref: d === 0 ? p : d === i.length - 1 ? b : null,
216
- children: u.disabled ? /* @__PURE__ */ w(Z, { children: [
217
- /* @__PURE__ */ r(
218
- ir,
219
- {
220
- contentClassName: C(`${y}__tooltip-content`),
221
- triggerElement: $,
222
- children: u.label
223
- }
224
- ),
225
- /* @__PURE__ */ r(
226
- B,
227
- {
228
- "data-testid": `${t}-disabled-lg`,
229
- variant: e,
230
- step: u,
231
- indexOfLastItem: i.length - 1,
232
- index: d,
233
- currentStepIndex: m,
234
- whenToBeVisible: A.LARGE_SCREEN,
235
- completedStepLabel: l,
236
- handleStepChange: s,
237
- handleStepFocus: n
238
- }
239
- )
240
- ] }) : /* @__PURE__ */ r(
241
- B,
242
- {
243
- "data-testid": t,
244
- variant: e,
245
- step: u,
246
- indexOfLastItem: i.length - 1,
247
- index: d,
248
- currentStepIndex: m,
249
- whenToBeVisible: A.ALWAYS,
250
- completedStepLabel: l,
251
- handleStepChange: s,
252
- handleStepFocus: n
253
- }
254
- )
255
- },
256
- u.label
257
- );
258
- });
259
- return /* @__PURE__ */ r(D, { loop: !1, dir: "ltr", children: /* @__PURE__ */ r("ol", { ref: a, className: C(`${y}__list`), children: o }) });
260
- }
261
- ), $r = (t) => {
262
- const e = S(!0), s = S(null);
263
- return H(() => {
264
- !e.current && s.current !== null && s.current.focus(), e.current = !1;
265
- }, [t]), {
266
- contentRef: s
267
- };
268
- }, E = {
269
- LEFT: "left",
270
- RIGHT: "right"
271
- }, Rr = () => {
272
- const t = S(null), e = S(null), s = S(null), [n, i] = Y(!1), [p, b] = Y(!1), m = (l) => {
273
- if (!t.current)
274
- return;
275
- const a = t.current, o = a.clientWidth, u = a.scrollLeft;
276
- l === E.LEFT && a.scroll({
277
- behavior: "smooth",
278
- left: u - o / 2
279
- }), l === E.RIGHT && a.scroll({
280
- behavior: "smooth",
281
- left: u + o / 2
282
- });
283
- };
284
- return H(() => {
285
- if (e.current && s.current && t.current) {
286
- const l = new IntersectionObserver(
287
- (a) => {
288
- for (const o of a) {
289
- if (o.target === e.current) {
290
- o.isIntersecting ? i(!1) : i(!0);
291
- continue;
292
- }
293
- o.target === s.current && (o.isIntersecting ? b(!1) : b(!0));
294
- }
295
- },
296
- {
297
- root: t.current,
298
- threshold: 0.95
299
- }
300
- );
301
- return l.observe(e.current), l.observe(s.current), () => l.disconnect();
302
- }
303
- }, [e, s, t]), {
304
- scrollContainer: t,
305
- firstStepRef: e,
306
- lastStepRef: s,
307
- displayLeftScrollButton: n,
308
- displayRightScrollButton: p,
309
- handleHorizontalScroll: m
310
- };
311
- }, g = L.bind(ar), _ = "purpur-stepper", G = ({
312
- ["aria-label"]: t,
313
- ["data-testid"]: e,
314
- children: s,
315
- className: n,
316
- completedStepLabel: i,
317
- currentStepIndex: p = 0,
318
- onStepChange: b,
319
- alignWithGrid: m = !1,
320
- leftScrollButtonAriaLabel: l,
321
- rightScrollButtonAriaLabel: a,
322
- variant: o = ur.PRIMARY,
323
- ...u
324
- }) => {
325
- const d = I.toArray(s).filter(br), $ = I.map(d, (f) => {
326
- const { disabled: R, finished: Q, label: X } = f.props;
327
- return {
328
- disabled: R ?? !1,
329
- finished: Q ?? !1,
330
- label: X
331
- };
332
- }), { contentRef: h } = $r(p), {
333
- scrollContainer: T,
334
- firstStepRef: M,
335
- lastStepRef: U,
336
- displayLeftScrollButton: j,
337
- displayRightScrollButton: W,
338
- handleHorizontalScroll: k
339
- } = Rr(), q = g([
340
- n,
341
- _,
342
- {
343
- [`${_}--${o}`]: o
344
- }
345
- ]), O = (f) => {
346
- f.target.scrollIntoView({
347
- behavior: "smooth",
348
- block: "nearest",
349
- inline: "center"
350
- });
351
- }, J = (f, R) => {
352
- f.preventDefault(), O(f), b(R);
353
- }, K = (f) => {
354
- O(f);
355
- };
356
- return /* @__PURE__ */ w("div", { className: q, ...u, children: [
357
- /* @__PURE__ */ r(cr, { variant: o, alignWithGrid: m, children: /* @__PURE__ */ w("div", { className: g(`${_}__nav-container`), children: [
358
- /* @__PURE__ */ w(sr, { children: [
359
- /* @__PURE__ */ r(nr, { ref: T, children: /* @__PURE__ */ r(
360
- "div",
361
- {
362
- "aria-label": t,
363
- "data-testid": e,
364
- className: g([
365
- `${_}__nav`,
366
- {
367
- [`${_}__nav--${o}`]: o
368
- }
369
- ]),
370
- children: /* @__PURE__ */ r(D, { loop: !1, dir: "ltr", children: /* @__PURE__ */ r(
371
- gr,
372
- {
373
- "data-testid": e,
374
- variant: o,
375
- firstStepRef: M,
376
- lastStepRef: U,
377
- steps: $,
378
- currentStepIndex: p,
379
- handleStepChange: J,
380
- handleStepFocus: K,
381
- completedStepLabel: i
382
- }
383
- ) })
384
- }
385
- ) }),
386
- /* @__PURE__ */ r(pr, { orientation: "horizontal", children: /* @__PURE__ */ r(or, {}) })
387
- ] }),
388
- j && /* @__PURE__ */ r(
389
- V,
390
- {
391
- "aria-label": l,
392
- className: g([
393
- `${_}__scroll-button`,
394
- `${_}__scroll-button--left`
395
- ]),
396
- variant: z.TERTIARY_PURPLE,
397
- tabIndex: -1,
398
- iconOnly: !0,
399
- onClick: () => {
400
- k(E.LEFT);
401
- },
402
- children: /* @__PURE__ */ r(rr, { className: g(`${_}__scroll-button-icon`), size: "md" })
403
- }
404
- ),
405
- W && /* @__PURE__ */ r(
406
- V,
407
- {
408
- "aria-label": a,
409
- className: g([
410
- `${_}__scroll-button`,
411
- `${_}__scroll-button--right`
412
- ]),
413
- variant: z.TERTIARY_PURPLE,
414
- tabIndex: -1,
415
- iconOnly: !0,
416
- onClick: () => {
417
- k(E.RIGHT);
418
- },
419
- children: /* @__PURE__ */ r(tr, { className: g(`${_}__scroll-button-icon`), size: "md" })
420
- }
421
- )
422
- ] }) }),
423
- /* @__PURE__ */ r(
424
- "div",
425
- {
426
- tabIndex: -1,
427
- "aria-labelledby": `stepper-trigger-button-${p}`,
428
- ref: h,
429
- style: { outline: "none" },
430
- children: /* @__PURE__ */ r("div", { "aria-live": "polite", children: I.map(d, (f, R) => /* @__PURE__ */ r(
431
- "div",
432
- {
433
- className: g({
434
- [`${_}__hidden`]: R !== p
435
- }),
436
- hidden: R !== p,
437
- children: f
438
- }
439
- )) })
440
- }
441
- )
442
- ] });
443
- };
444
- G.Content = dr;
445
- G.displayName = "Stepper";
446
- export {
447
- G as S
448
- };
449
- //# sourceMappingURL=stepper-20s8dnPA.mjs.map