@purpur/library 9.10.1 → 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 (496) hide show
  1. package/CHANGELOG.json +106 -0
  2. package/CHANGELOG.md +44 -1
  3. package/dist/LICENSE.txt +234 -179
  4. package/dist/{RichText-IejAKqm2.js → RichText-B865Qkzj.js} +2 -2
  5. package/dist/{RichText-IejAKqm2.js.map → RichText-B865Qkzj.js.map} +1 -1
  6. package/dist/{RichText-2_z57EYi.mjs → RichText-CPkBwXNI.mjs} +2 -2
  7. package/dist/{RichText-2_z57EYi.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-CTWhxuS4.mjs → calendar-DTL_g0ue.mjs} +4 -14
  21. package/dist/{calendar-CTWhxuS4.mjs.map → calendar-DTL_g0ue.mjs.map} +1 -1
  22. package/dist/{calendar-Cwzqytai.js → calendar-DVOrK53J.js} +2 -2
  23. package/dist/{calendar-Cwzqytai.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-DiKGSL-7.mjs → carousel-Dq9yzk_-.mjs} +2 -2
  33. package/dist/{carousel-DiKGSL-7.mjs.map → carousel-Dq9yzk_-.mjs.map} +1 -1
  34. package/dist/{carousel-Dz_bUGo4.js → carousel-j-s6M1hu.js} +2 -2
  35. package/dist/{carousel-Dz_bUGo4.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-B2jmpVNr.js → chat-field-CLAjIHlM.js} +2 -2
  39. package/dist/{chat-field-B2jmpVNr.js.map → chat-field-CLAjIHlM.js.map} +1 -1
  40. package/dist/{chat-field-8cKqYcKi.mjs → chat-field-nxFRXoQx.mjs} +2 -2
  41. package/dist/{chat-field-8cKqYcKi.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-N5G3k2kr.js → comparison-table-CRWRijfG.js} +2 -2
  53. package/dist/{comparison-table-N5G3k2kr.js.map → comparison-table-CRWRijfG.js.map} +1 -1
  54. package/dist/{comparison-table-CmtSOUfK.mjs → comparison-table-DYaRaP9Z.mjs} +3 -3
  55. package/dist/{comparison-table-CmtSOUfK.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 +5 -5
  59. package/dist/components/accordion/src/accordion-item.d.ts.map +1 -1
  60. package/dist/components/accordion/src/accordion.d.ts +2 -6
  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/badge/src/badge.d.ts +1 -1
  65. package/dist/components/button/src/button.d.ts +3 -4
  66. package/dist/components/button/src/button.d.ts.map +1 -1
  67. package/dist/components/button/src/button.visual.fixtures.d.ts +1 -1
  68. package/dist/components/calendar/src/calendar.d.ts.map +1 -1
  69. package/dist/components/card/src/card-badge.d.ts +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-heading.d.ts +5 -5
  73. package/dist/components/card/src/card-heading.d.ts.map +1 -1
  74. package/dist/components/card/src/card-root.d.ts +1 -1
  75. package/dist/components/color-dot/src/color-dot.d.ts +2 -1
  76. package/dist/components/color-dot/src/color-dot.d.ts.map +1 -1
  77. package/dist/components/comparison-table/src/components/OptionCard/option-card.d.ts +1 -1
  78. package/dist/components/content-block/src/content-block-group.d.ts +1 -1
  79. package/dist/components/content-block/src/content-block.d.ts +2 -2
  80. package/dist/components/content-block/src/content-block.d.ts.map +1 -1
  81. package/dist/components/counter-badge/src/counter-badge.d.ts +1 -1
  82. package/dist/components/country-flag-icon/src/all-country-flag-assets.d.ts +0 -1
  83. package/dist/components/country-flag-icon/src/all-country-flag-assets.d.ts.map +1 -1
  84. package/dist/components/country-flag-icon/src/country-flag-icon.d.ts +1 -1
  85. package/dist/components/cta-link/src/cta-link.d.ts +10 -10
  86. package/dist/components/date-field/src/date-field.d.ts +1 -1
  87. package/dist/components/date-picker/src/date-picker.d.ts +1 -1
  88. package/dist/components/date-range-field/src/date-range-field.d.ts +2 -2
  89. package/dist/components/date-range-field/src/date-range-field.d.ts.map +1 -1
  90. package/dist/components/dismissable-chip-group/src/dismissable-chip-group.d.ts +2 -2
  91. package/dist/components/dismissable-chip-group/src/dismissable-chip-group.d.ts.map +1 -1
  92. package/dist/components/drawer/src/drawer-container.d.ts +1 -1
  93. package/dist/components/drawer/src/drawer-container.d.ts.map +1 -1
  94. package/dist/components/drawer/src/drawer-frame.d.ts +2 -2
  95. package/dist/components/drawer/src/drawer-handle.d.ts +1 -1
  96. package/dist/components/drawer/src/drawer-header.d.ts +1 -1
  97. package/dist/components/drawer/src/drawer-scroll-area.d.ts +1 -1
  98. package/dist/components/drawer/src/drawer-trigger.d.ts +1 -1
  99. package/dist/components/drawer/src/drawer.context.d.ts +2 -0
  100. package/dist/components/drawer/src/drawer.context.d.ts.map +1 -1
  101. package/dist/components/drawer/src/drawer.d.ts +2 -0
  102. package/dist/components/drawer/src/drawer.d.ts.map +1 -1
  103. package/dist/components/dropdown/src/dropdown-combobox.d.ts +2 -34
  104. package/dist/components/dropdown/src/dropdown-combobox.d.ts.map +1 -1
  105. package/dist/components/dropdown/src/dropdown-select.d.ts +2 -34
  106. package/dist/components/dropdown/src/dropdown-select.d.ts.map +1 -1
  107. package/dist/components/dropdown/src/dropdown-shared.d.ts +2 -1
  108. package/dist/components/dropdown/src/dropdown-shared.d.ts.map +1 -1
  109. package/dist/components/dropdown/src/dropdown.types.d.ts +24 -13
  110. package/dist/components/dropdown/src/dropdown.types.d.ts.map +1 -1
  111. package/dist/components/dropdown/src/useDropdown.d.ts +1 -1
  112. package/dist/components/dropdown/src/useDropdown.d.ts.map +1 -1
  113. package/dist/components/dropdown/src/useDropdownFilter.d.ts.map +1 -1
  114. package/dist/components/dropdown/src/useDropdownInput.d.ts.map +1 -1
  115. package/dist/components/field-helper-text/src/field-helper-text.d.ts +1 -1
  116. package/dist/components/file-upload/src/file-upload-button.d.ts +22 -0
  117. package/dist/components/file-upload/src/file-upload-button.d.ts.map +1 -0
  118. package/dist/components/file-upload/src/file-upload-drag-and-drop.d.ts +10 -0
  119. package/dist/components/file-upload/src/file-upload-drag-and-drop.d.ts.map +1 -0
  120. package/dist/components/file-upload/src/file-upload-file-name-label.d.ts +8 -0
  121. package/dist/components/file-upload/src/file-upload-file-name-label.d.ts.map +1 -0
  122. package/dist/components/file-upload/src/file-upload-icon.d.ts +8 -0
  123. package/dist/components/file-upload/src/file-upload-icon.d.ts.map +1 -0
  124. package/dist/components/file-upload/src/file-upload-types.d.ts +82 -0
  125. package/dist/components/file-upload/src/file-upload-types.d.ts.map +1 -0
  126. package/dist/components/file-upload/src/file-upload-utils.d.ts +7 -0
  127. package/dist/components/file-upload/src/file-upload-utils.d.ts.map +1 -0
  128. package/dist/components/file-upload/src/file-upload.d.ts +6 -0
  129. package/dist/components/file-upload/src/file-upload.d.ts.map +1 -0
  130. package/dist/components/file-upload/src/file-upload.visual.fixtures.d.ts +14 -0
  131. package/dist/components/file-upload/src/file-upload.visual.fixtures.d.ts.map +1 -0
  132. package/dist/components/footer/src/footer-social-link.d.ts +3 -3
  133. package/dist/components/heading/src/heading.d.ts +22 -4
  134. package/dist/components/heading/src/heading.d.ts.map +1 -1
  135. package/dist/components/hero-banner/src/hero-banner-types.d.ts +4 -4
  136. package/dist/components/hero-banner/src/hero-banner-types.d.ts.map +1 -1
  137. package/dist/components/hero-banner/src/hero-banner.d.ts +1 -1
  138. package/dist/components/hero-banner/src/hero-banner.d.ts.map +1 -1
  139. package/dist/components/icon/src/icon.d.ts +2 -2
  140. package/dist/components/illustrative-icon/src/static-illustrative-icon.d.ts +2 -2
  141. package/dist/components/label/src/label.d.ts +1 -1
  142. package/dist/components/listbox/src/listbox.d.ts +1 -1
  143. package/dist/components/loading/src/loading-illustrative.d.ts +1 -1
  144. package/dist/components/logo/src/logo.types.d.ts +1 -1
  145. package/dist/components/modal/src/modal-content.d.ts +1 -1
  146. package/dist/components/modal/src/modal-content.d.ts.map +1 -1
  147. package/dist/components/notification-banner/src/notification-banner.d.ts +3 -3
  148. package/dist/components/notification-banner/src/notification-banner.d.ts.map +1 -1
  149. package/dist/components/pagination/src/pagination-page-size-selector.d.ts +2 -2
  150. package/dist/components/pagination/src/pagination-page-trigger.d.ts +1 -1
  151. package/dist/components/pagination/src/pagination-pages.d.ts +2 -2
  152. package/dist/components/pagination/src/pagination-step-trigger.d.ts +2 -2
  153. package/dist/components/pagination/src/pagination-truncation-separator.d.ts +1 -1
  154. package/dist/components/pagination/src/types.d.ts +1 -1
  155. package/dist/components/pagination/src/use-page-options.hook.d.ts +1 -1
  156. package/dist/components/pagination/src/use-page-size-options.hook.d.ts +1 -1
  157. package/dist/components/paragraph/src/paragraph.d.ts +1 -1
  158. package/dist/components/password-field/src/password-strength-indicator.d.ts +1 -1
  159. package/dist/components/popover/src/popover-button.d.ts +2 -2
  160. package/dist/components/product-card/src/product-card.d.ts +1 -1
  161. package/dist/components/promotion-card/src/promotion-card.d.ts +10 -10
  162. package/dist/components/promotion-card/src/promotion-card.d.ts.map +1 -1
  163. package/dist/components/quantity-selector/src/quantity-selector-button.d.ts +2 -3
  164. package/dist/components/quantity-selector/src/quantity-selector-button.d.ts.map +1 -1
  165. package/dist/components/quantity-selector/src/quantity-selector.d.ts +3 -6
  166. package/dist/components/quantity-selector/src/quantity-selector.d.ts.map +1 -1
  167. package/dist/components/radio-button-group/src/radio-button-group-root.d.ts +1 -1
  168. package/dist/components/radio-card-group/src/radio-card-item.d.ts +1 -1
  169. package/dist/components/rich-text/src/types.d.ts +3 -3
  170. package/dist/components/search-field/src/search-field-autocomplete.d.ts +1 -1
  171. package/dist/components/search-field/src/search-field-base.d.ts +1 -1
  172. package/dist/components/select/src/select.d.ts +1 -1
  173. package/dist/components/skeleton/src/skeleton.d.ts +1 -1
  174. package/dist/components/spacer/src/spacer.d.ts +2 -2
  175. package/dist/components/spinner/src/spinner.d.ts +3 -3
  176. package/dist/components/stepper/src/stepper-container.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 +2 -2
  182. package/dist/components/stepper/src/stepper.d.ts.map +1 -1
  183. package/dist/components/stepper/src/types.d.ts +2 -2
  184. package/dist/components/stepper/src/types.d.ts.map +1 -1
  185. package/dist/components/stepper/src/use-content-focus.hook.d.ts.map +1 -1
  186. package/dist/components/table/src/cell-types/button-group-cell.d.ts +2 -2
  187. package/dist/components/table/src/draggable-table.d.ts.map +1 -1
  188. package/dist/components/table/src/empty-table.d.ts +2 -2
  189. package/dist/components/table/src/table-column-header-cell.d.ts +1 -2
  190. package/dist/components/table/src/table-column-header-cell.d.ts.map +1 -1
  191. package/dist/components/table/src/table-content.d.ts +1 -1
  192. package/dist/components/table/src/table-headers.d.ts +2 -3
  193. package/dist/components/table/src/table-headers.d.ts.map +1 -1
  194. package/dist/components/table/src/table-settings-drawer.d.ts +11 -20
  195. package/dist/components/table/src/table-settings-drawer.d.ts.map +1 -1
  196. package/dist/components/table/src/table.d.ts +1 -8
  197. package/dist/components/table/src/table.d.ts.map +1 -1
  198. package/dist/components/table/src/test-utils/helpers.d.ts +10 -19
  199. package/dist/components/table/src/test-utils/helpers.d.ts.map +1 -1
  200. package/dist/components/tabs/src/tab-content.d.ts +4 -2
  201. package/dist/components/tabs/src/tab-content.d.ts.map +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 +1 -1
  206. package/dist/components/toggle/src/toggle.d.ts +1 -1
  207. package/dist/components/tooltip/src/tooltip.d.ts +4 -6
  208. package/dist/components/tooltip/src/tooltip.d.ts.map +1 -1
  209. package/dist/components-metadata.js +20 -10
  210. package/dist/{content-block-CDMrz41K.mjs → content-block-BCM0I3Y2.mjs} +2 -2
  211. package/dist/content-block-BCM0I3Y2.mjs.map +1 -0
  212. package/dist/{content-block-DyYAnL2e.js → content-block-DQppQumZ.js} +2 -2
  213. package/dist/content-block-DQppQumZ.js.map +1 -0
  214. package/dist/content-block.cjs.js +1 -1
  215. package/dist/content-block.es.js +1 -1
  216. package/dist/core.esm-BmIwrKkJ.js +6 -0
  217. package/dist/core.esm-BmIwrKkJ.js.map +1 -0
  218. package/dist/core.esm-CKGHpLM_.mjs +2892 -0
  219. package/dist/core.esm-CKGHpLM_.mjs.map +1 -0
  220. package/dist/country-flag-icon/LICENSE.txt +11 -0
  221. package/dist/country-flag-icon/all-country-flag-assets.cjs.js +1 -1
  222. package/dist/country-flag-icon/all-country-flag-assets.cjs.js.map +1 -1
  223. package/dist/country-flag-icon/all-country-flag-assets.d.ts +0 -1
  224. package/dist/country-flag-icon/all-country-flag-assets.d.ts.map +1 -1
  225. package/dist/country-flag-icon/all-country-flag-assets.es.js +0 -1
  226. package/dist/country-flag-icon/all-country-flag-assets.es.js.map +1 -1
  227. package/dist/country-flag-icon/dynamic-country-flag-icon.cjs.js +2 -0
  228. package/dist/country-flag-icon/dynamic-country-flag-icon.cjs.js.map +1 -0
  229. package/dist/country-flag-icon/dynamic-country-flag-icon.es.js +366 -0
  230. package/dist/country-flag-icon/dynamic-country-flag-icon.es.js.map +1 -0
  231. package/dist/{date-field-CwZ64buh.js → date-field-CtpWDaSh.js} +2 -2
  232. package/dist/{date-field-CwZ64buh.js.map → date-field-CtpWDaSh.js.map} +1 -1
  233. package/dist/{date-field-ChYx0N2j.mjs → date-field-_rCuf15v.mjs} +2 -2
  234. package/dist/{date-field-ChYx0N2j.mjs.map → date-field-_rCuf15v.mjs.map} +1 -1
  235. package/dist/date-field.cjs.js +1 -1
  236. package/dist/date-field.es.js +1 -1
  237. package/dist/{date-picker-BWMKTOq6.js → date-picker-BYlszX1W.js} +2 -2
  238. package/dist/{date-picker-BWMKTOq6.js.map → date-picker-BYlszX1W.js.map} +1 -1
  239. package/dist/{date-picker-CTyqgBRB.mjs → date-picker-sqcNAplg.mjs} +6 -6
  240. package/dist/{date-picker-CTyqgBRB.mjs.map → date-picker-sqcNAplg.mjs.map} +1 -1
  241. package/dist/date-picker.cjs.js +1 -1
  242. package/dist/date-picker.es.js +1 -1
  243. package/dist/date-range-field-B33XeBW8.js +2 -0
  244. package/dist/date-range-field-B33XeBW8.js.map +1 -0
  245. package/dist/{date-range-field-DDr-qEGX.mjs → date-range-field-BmjQeiOv.mjs} +23 -23
  246. package/dist/date-range-field-BmjQeiOv.mjs.map +1 -0
  247. package/dist/date-range-field.cjs.js +1 -1
  248. package/dist/date-range-field.es.js +1 -1
  249. package/dist/{dismissable-chip-group-2updhyuR.js → dismissable-chip-group-5ALErhD2.js} +2 -2
  250. package/dist/dismissable-chip-group-5ALErhD2.js.map +1 -0
  251. package/dist/{dismissable-chip-group-Cfs2s2BH.mjs → dismissable-chip-group-DMNU7g5e.mjs} +3 -3
  252. package/dist/dismissable-chip-group-DMNU7g5e.mjs.map +1 -0
  253. package/dist/dismissable-chip-group.cjs.js +1 -1
  254. package/dist/dismissable-chip-group.es.js +1 -1
  255. package/dist/{drawer-Cnk2OKgi.mjs → drawer-Chx3H8EU.mjs} +241 -233
  256. package/dist/drawer-Chx3H8EU.mjs.map +1 -0
  257. package/dist/drawer-oFJcxW58.js +2 -0
  258. package/dist/drawer-oFJcxW58.js.map +1 -0
  259. package/dist/drawer.cjs.js +1 -1
  260. package/dist/drawer.es.js +1 -1
  261. package/dist/dropdown-Bn7WvsL2.js +2 -0
  262. package/dist/dropdown-Bn7WvsL2.js.map +1 -0
  263. package/dist/dropdown-CrufJnb4.mjs +945 -0
  264. package/dist/dropdown-CrufJnb4.mjs.map +1 -0
  265. package/dist/dropdown.cjs.js +1 -1
  266. package/dist/dropdown.es.js +1 -1
  267. package/dist/file-upload-Ctw6LCTU.mjs +589 -0
  268. package/dist/file-upload-Ctw6LCTU.mjs.map +1 -0
  269. package/dist/file-upload-MvNuX4ks.js +2 -0
  270. package/dist/file-upload-MvNuX4ks.js.map +1 -0
  271. package/dist/file-upload.cjs.js +2 -0
  272. package/dist/file-upload.cjs.js.map +1 -0
  273. package/dist/file-upload.es.js +5 -0
  274. package/dist/file-upload.es.js.map +1 -0
  275. package/dist/{floating-ui.react-dom-EredA301.mjs → floating-ui.react-dom-1kwKo24Z.mjs} +15 -15
  276. package/dist/{floating-ui.react-dom-EredA301.mjs.map → floating-ui.react-dom-1kwKo24Z.mjs.map} +1 -1
  277. package/dist/footer-Bbemct3Z.js +2 -0
  278. package/dist/footer-Bbemct3Z.js.map +1 -0
  279. package/dist/{footer-D5YkHmCo.mjs → footer-DkVmTd-f.mjs} +24 -24
  280. package/dist/footer-DkVmTd-f.mjs.map +1 -0
  281. package/dist/footer.cjs.js +1 -1
  282. package/dist/footer.es.js +1 -1
  283. package/dist/{heading-xwBuT_-9.mjs → heading-BG7JTFO1.mjs} +25 -24
  284. package/dist/heading-BG7JTFO1.mjs.map +1 -0
  285. package/dist/{heading-drD5ugCC.js → heading-BPeRwNYu.js} +2 -2
  286. package/dist/heading-BPeRwNYu.js.map +1 -0
  287. package/dist/heading.cjs.js +1 -1
  288. package/dist/heading.es.js +6 -5
  289. package/dist/{hero-banner-BXRArPWP.mjs → hero-banner-ChDoFRhq.mjs} +4 -4
  290. package/dist/hero-banner-ChDoFRhq.mjs.map +1 -0
  291. package/dist/{hero-banner-CW7DIEZe.js → hero-banner-Mag1OwL4.js} +2 -2
  292. package/dist/hero-banner-Mag1OwL4.js.map +1 -0
  293. package/dist/hero-banner.cjs.js +1 -1
  294. package/dist/hero-banner.es.js +1 -1
  295. package/dist/index-BPY_9ddu.js +2 -0
  296. package/dist/index-BPY_9ddu.js.map +1 -0
  297. package/dist/index-Fewa56cA.mjs +440 -0
  298. package/dist/index-Fewa56cA.mjs.map +1 -0
  299. package/dist/libraries/library/src/calendar.d.ts +1 -1
  300. package/dist/libraries/library/src/card.d.ts +1 -1
  301. package/dist/libraries/library/src/container.d.ts +1 -1
  302. package/dist/libraries/library/src/content-block.d.ts +1 -1
  303. package/dist/libraries/library/src/dismissable-chip-group.d.ts +1 -1
  304. package/dist/libraries/library/src/drawer.d.ts +1 -1
  305. package/dist/libraries/library/src/file-upload.d.ts +6 -0
  306. package/dist/libraries/library/src/file-upload.d.ts.map +1 -0
  307. package/dist/libraries/library/src/library.d.ts +1 -1
  308. package/dist/libraries/library/src/library.d.ts.map +1 -1
  309. package/dist/libraries/library/src/notification-banner.d.ts +1 -1
  310. package/dist/libraries/library/src/notification.d.ts +1 -1
  311. package/dist/libraries/theme/src/ThemeProvider.d.ts +1 -1
  312. package/dist/library.cjs.js +1 -1
  313. package/dist/library.es.js +595 -596
  314. package/dist/{modal-CnC4Zyjk.js → modal-CXOYUsJm.js} +2 -2
  315. package/dist/modal-CXOYUsJm.js.map +1 -0
  316. package/dist/{modal-BuUQrUYJ.mjs → modal-Pwvhrzn-.mjs} +31 -31
  317. package/dist/modal-Pwvhrzn-.mjs.map +1 -0
  318. package/dist/modal.cjs.js +1 -1
  319. package/dist/modal.es.js +1 -1
  320. package/dist/{notification-CeoAXDXq.js → notification-BkM2vLzI.js} +2 -2
  321. package/dist/{notification-CeoAXDXq.js.map → notification-BkM2vLzI.js.map} +1 -1
  322. package/dist/{notification-C3f3N1K1.mjs → notification-Cbn0UN1p.mjs} +3 -3
  323. package/dist/{notification-C3f3N1K1.mjs.map → notification-Cbn0UN1p.mjs.map} +1 -1
  324. package/dist/notification-banner-B9RhXAZ8.js +2 -0
  325. package/dist/notification-banner-B9RhXAZ8.js.map +1 -0
  326. package/dist/{notification-banner-BvAy8dlg.mjs → notification-banner-C4NVekCZ.mjs} +5 -5
  327. package/dist/notification-banner-C4NVekCZ.mjs.map +1 -0
  328. package/dist/notification-banner.cjs.js +1 -1
  329. package/dist/notification-banner.es.js +1 -1
  330. package/dist/notification.cjs.js +1 -1
  331. package/dist/notification.es.js +1 -1
  332. package/dist/{password-field-C_E4563x.mjs → password-field-Cy_E-D_G.mjs} +29 -29
  333. package/dist/{password-field-C_E4563x.mjs.map → password-field-Cy_E-D_G.mjs.map} +1 -1
  334. package/dist/{password-field-BjKdBoIK.js → password-field-lKyWHjQS.js} +2 -2
  335. package/dist/{password-field-BjKdBoIK.js.map → password-field-lKyWHjQS.js.map} +1 -1
  336. package/dist/password-field.cjs.js +1 -1
  337. package/dist/password-field.es.js +1 -1
  338. package/dist/popover-B6ntmuEK.mjs +614 -0
  339. package/dist/popover-B6ntmuEK.mjs.map +1 -0
  340. package/dist/popover-DJHMEFXP.js +2 -0
  341. package/dist/popover-DJHMEFXP.js.map +1 -0
  342. package/dist/popover.cjs.js +1 -1
  343. package/dist/popover.es.js +1 -1
  344. package/dist/{product-card-CxfHfJVV.mjs → product-card-BMseoNrG.mjs} +3 -3
  345. package/dist/{product-card-CxfHfJVV.mjs.map → product-card-BMseoNrG.mjs.map} +1 -1
  346. package/dist/{product-card-XxBwuxM-.js → product-card-D0jX5-up.js} +2 -2
  347. package/dist/{product-card-XxBwuxM-.js.map → product-card-D0jX5-up.js.map} +1 -1
  348. package/dist/product-card.cjs.js +1 -1
  349. package/dist/product-card.es.js +1 -1
  350. package/dist/{promotion-card-C1UoxzcV.js → promotion-card-B3mz__m7.js} +2 -2
  351. package/dist/promotion-card-B3mz__m7.js.map +1 -0
  352. package/dist/{promotion-card-CooYPpFo.mjs → promotion-card-Co6qAkTZ.mjs} +5 -5
  353. package/dist/promotion-card-Co6qAkTZ.mjs.map +1 -0
  354. package/dist/promotion-card.cjs.js +1 -1
  355. package/dist/promotion-card.es.js +1 -1
  356. package/dist/purpur.css +1 -1
  357. package/dist/quantity-selector-Cy0aJGGX.js +2 -0
  358. package/dist/quantity-selector-Cy0aJGGX.js.map +1 -0
  359. package/dist/quantity-selector-k6ZaVrk1.mjs +162 -0
  360. package/dist/quantity-selector-k6ZaVrk1.mjs.map +1 -0
  361. package/dist/quantity-selector.cjs.js +1 -1
  362. package/dist/quantity-selector.es.js +2 -3
  363. package/dist/{radio-button-group-D_F6kWD6.mjs → radio-button-group-DjiTo3b1.mjs} +2 -2
  364. package/dist/{radio-button-group-D_F6kWD6.mjs.map → radio-button-group-DjiTo3b1.mjs.map} +1 -1
  365. package/dist/{radio-button-group-CdUrC7h9.js → radio-button-group-uCRGh1H5.js} +2 -2
  366. package/dist/{radio-button-group-CdUrC7h9.js.map → radio-button-group-uCRGh1H5.js.map} +1 -1
  367. package/dist/radio-button-group.cjs.js +1 -1
  368. package/dist/radio-button-group.es.js +1 -1
  369. package/dist/{radio-card-group-B9_jOJnM.mjs → radio-card-group-DoM7qYO1.mjs} +2 -2
  370. package/dist/{radio-card-group-B9_jOJnM.mjs.map → radio-card-group-DoM7qYO1.mjs.map} +1 -1
  371. package/dist/{radio-card-group-DcdGkfOp.js → radio-card-group-_9wJC-s3.js} +2 -2
  372. package/dist/{radio-card-group-DcdGkfOp.js.map → radio-card-group-_9wJC-s3.js.map} +1 -1
  373. package/dist/radio-card-group.cjs.js +1 -1
  374. package/dist/radio-card-group.es.js +1 -1
  375. package/dist/rich-text.cjs.js +1 -1
  376. package/dist/rich-text.es.js +1 -1
  377. package/dist/{search-field-BTqVE1-l.mjs → search-field-BTJtRyw5.mjs} +3 -3
  378. package/dist/{search-field-BTqVE1-l.mjs.map → search-field-BTJtRyw5.mjs.map} +1 -1
  379. package/dist/{search-field-DkJrwzJB.js → search-field-nzVXak1a.js} +2 -2
  380. package/dist/{search-field-DkJrwzJB.js.map → search-field-nzVXak1a.js.map} +1 -1
  381. package/dist/search-field.cjs.js +1 -1
  382. package/dist/search-field.es.js +1 -1
  383. package/dist/stepper-D59T-Y2_.mjs +469 -0
  384. package/dist/stepper-D59T-Y2_.mjs.map +1 -0
  385. package/dist/stepper-Dao4XaDV.js +2 -0
  386. package/dist/stepper-Dao4XaDV.js.map +1 -0
  387. package/dist/stepper.cjs.js +1 -1
  388. package/dist/stepper.es.js +1 -1
  389. package/dist/table-DRSgesQ4.mjs +4545 -0
  390. package/dist/table-DRSgesQ4.mjs.map +1 -0
  391. package/dist/table-zBs9JALh.js +5 -0
  392. package/dist/table-zBs9JALh.js.map +1 -0
  393. package/dist/table.cjs.js +1 -1
  394. package/dist/table.es.js +1 -1
  395. package/dist/tabs-D2__wbCs.js +2 -0
  396. package/dist/tabs-D2__wbCs.js.map +1 -0
  397. package/dist/tabs-DOG5g2wf.mjs +440 -0
  398. package/dist/tabs-DOG5g2wf.mjs.map +1 -0
  399. package/dist/tabs.cjs.js +1 -1
  400. package/dist/tabs.es.js +1 -1
  401. package/dist/{text-field-CS0PT5T6.js → text-field-BSgqJjpv.js} +2 -2
  402. package/dist/text-field-BSgqJjpv.js.map +1 -0
  403. package/dist/{text-field-C9LX7LBf.mjs → text-field-MQHeITxy.mjs} +3 -3
  404. package/dist/text-field-MQHeITxy.mjs.map +1 -0
  405. package/dist/text-field.cjs.js +1 -1
  406. package/dist/text-field.es.js +1 -1
  407. package/dist/tooltip-DeP1UsPW.js +2 -0
  408. package/dist/{tooltip-COFCRUKv.js.map → tooltip-DeP1UsPW.js.map} +1 -1
  409. package/dist/{tooltip-FH9R2MAA.mjs → tooltip-bqdd2lJL.mjs} +347 -309
  410. package/dist/{tooltip-FH9R2MAA.mjs.map → tooltip-bqdd2lJL.mjs.map} +1 -1
  411. package/dist/tooltip.cjs.js +1 -1
  412. package/dist/tooltip.es.js +1 -1
  413. package/package.json +25 -25
  414. package/src/aliases.ts +4 -4
  415. package/src/entries.js +1 -1
  416. package/src/{autocomplete.ts → file-upload.ts} +1 -1
  417. package/src/library.ts +1 -1
  418. package/src/purpur.css +4 -0
  419. package/dist/accordion-B6OoQ4uZ.mjs +0 -128
  420. package/dist/accordion-B6OoQ4uZ.mjs.map +0 -1
  421. package/dist/accordion-BfpN5h4C.js +0 -2
  422. package/dist/accordion-BfpN5h4C.js.map +0 -1
  423. package/dist/autocomplete-C6AqdYaZ.mjs +0 -228
  424. package/dist/autocomplete-C6AqdYaZ.mjs.map +0 -1
  425. package/dist/autocomplete-yrPbF5gq.js +0 -2
  426. package/dist/autocomplete-yrPbF5gq.js.map +0 -1
  427. package/dist/autocomplete.cjs.js +0 -2
  428. package/dist/autocomplete.cjs.js.map +0 -1
  429. package/dist/autocomplete.es.js +0 -6
  430. package/dist/autocomplete.es.js.map +0 -1
  431. package/dist/button-DZgtrGqN.js +0 -2
  432. package/dist/button-DZgtrGqN.js.map +0 -1
  433. package/dist/button-EVRfctR8.mjs +0 -109
  434. package/dist/button-EVRfctR8.mjs.map +0 -1
  435. package/dist/card-pdsBEJif.js.map +0 -1
  436. package/dist/card-t2ZkZ82G.mjs.map +0 -1
  437. package/dist/components/autocomplete/src/autocomplete.d.ts +0 -18
  438. package/dist/components/autocomplete/src/autocomplete.d.ts.map +0 -1
  439. package/dist/components/autocomplete/src/useAutocomplete.d.ts +0 -59
  440. package/dist/components/autocomplete/src/useAutocomplete.d.ts.map +0 -1
  441. package/dist/components/autocomplete/src/utils.d.ts +0 -7
  442. package/dist/components/autocomplete/src/utils.d.ts.map +0 -1
  443. package/dist/components/stepper/src/stepper-button.d.ts.map +0 -1
  444. package/dist/content-block-CDMrz41K.mjs.map +0 -1
  445. package/dist/content-block-DyYAnL2e.js.map +0 -1
  446. package/dist/date-range-field-CvzOl-eC.js +0 -2
  447. package/dist/date-range-field-CvzOl-eC.js.map +0 -1
  448. package/dist/date-range-field-DDr-qEGX.mjs.map +0 -1
  449. package/dist/dismissable-chip-group-2updhyuR.js.map +0 -1
  450. package/dist/dismissable-chip-group-Cfs2s2BH.mjs.map +0 -1
  451. package/dist/drawer-BnqxUIPM.js +0 -2
  452. package/dist/drawer-BnqxUIPM.js.map +0 -1
  453. package/dist/drawer-Cnk2OKgi.mjs.map +0 -1
  454. package/dist/dropdown-C8VsfTQw.mjs +0 -936
  455. package/dist/dropdown-C8VsfTQw.mjs.map +0 -1
  456. package/dist/dropdown-p4R2yCnJ.js +0 -2
  457. package/dist/dropdown-p4R2yCnJ.js.map +0 -1
  458. package/dist/footer-B8rzVSrZ.js +0 -2
  459. package/dist/footer-B8rzVSrZ.js.map +0 -1
  460. package/dist/footer-D5YkHmCo.mjs.map +0 -1
  461. package/dist/heading-drD5ugCC.js.map +0 -1
  462. package/dist/heading-xwBuT_-9.mjs.map +0 -1
  463. package/dist/hero-banner-BXRArPWP.mjs.map +0 -1
  464. package/dist/hero-banner-CW7DIEZe.js.map +0 -1
  465. package/dist/libraries/library/src/autocomplete.d.ts +0 -6
  466. package/dist/libraries/library/src/autocomplete.d.ts.map +0 -1
  467. package/dist/modal-BuUQrUYJ.mjs.map +0 -1
  468. package/dist/modal-CnC4Zyjk.js.map +0 -1
  469. package/dist/notification-banner-BvAy8dlg.mjs.map +0 -1
  470. package/dist/notification-banner-DUe4fT1r.js +0 -2
  471. package/dist/notification-banner-DUe4fT1r.js.map +0 -1
  472. package/dist/popover-4phnhJLj.js +0 -2
  473. package/dist/popover-4phnhJLj.js.map +0 -1
  474. package/dist/popover-DhObSx97.mjs +0 -1043
  475. package/dist/popover-DhObSx97.mjs.map +0 -1
  476. package/dist/promotion-card-C1UoxzcV.js.map +0 -1
  477. package/dist/promotion-card-CooYPpFo.mjs.map +0 -1
  478. package/dist/quantity-selector-Ds7d4MnV.js +0 -2
  479. package/dist/quantity-selector-Ds7d4MnV.js.map +0 -1
  480. package/dist/quantity-selector-DwkKKmFy.mjs +0 -172
  481. package/dist/quantity-selector-DwkKKmFy.mjs.map +0 -1
  482. package/dist/stepper-5rQ3cK18.js +0 -2
  483. package/dist/stepper-5rQ3cK18.js.map +0 -1
  484. package/dist/stepper-B3p9r3gv.mjs +0 -449
  485. package/dist/stepper-B3p9r3gv.mjs.map +0 -1
  486. package/dist/table-BIyaTsOh.js +0 -9
  487. package/dist/table-BIyaTsOh.js.map +0 -1
  488. package/dist/table-BtymEUG4.mjs +0 -7428
  489. package/dist/table-BtymEUG4.mjs.map +0 -1
  490. package/dist/tabs-Bye5lgZ1.mjs +0 -424
  491. package/dist/tabs-Bye5lgZ1.mjs.map +0 -1
  492. package/dist/tabs-D-nfZHIA.js +0 -2
  493. package/dist/tabs-D-nfZHIA.js.map +0 -1
  494. package/dist/text-field-C9LX7LBf.mjs.map +0 -1
  495. package/dist/text-field-CS0PT5T6.js.map +0 -1
  496. package/dist/tooltip-COFCRUKv.js +0 -2
package/dist/table.cjs.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./table-BIyaTsOh.js");exports.Table=e.Table;exports.createColumnHelper=e.createColumnHelper;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./table-zBs9JALh.js");exports.Table=e.Table;exports.createColumnHelper=e.createColumnHelper;
2
2
  //# sourceMappingURL=table.cjs.js.map
package/dist/table.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import { T as r, c as l } from "./table-BtymEUG4.mjs";
1
+ import { T as r, c as l } from "./table-DRSgesQ4.mjs";
2
2
  export {
3
3
  r as Table,
4
4
  l as createColumnHelper
@@ -0,0 +1,2 @@
1
+ "use strict";const u=require("react/jsx-runtime"),l=require("react"),ge=require("./icon.es-j3eRib6d.js"),$=require("./index-DlMXYAr3.js"),he=require("./index-kcwFA4Dv.js"),N=require("./index-BVmlsxuF.js"),ve=require("./index-CleLBinl.js"),me=require("./index-Cje7xxa1.js"),we=require("./index-BtWPC8xc.js"),L=require("./bind-DeUYJ6m9.js");function xe(t){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const s in t)if(s!=="default"){const a=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(r,s,a.get?a:{enumerable:!0,get:()=>t[s]})}}return r.default=t,Object.freeze(r)}const y=xe(l),Ce={name:"chevron-left",svg:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path fill-rule="evenodd" d="M16.175 3.905a.9.9 0 0 1-.08 1.27L8.36 12l7.736 6.825a.9.9 0 0 1-1.191 1.35l-8.5-7.5a.9.9 0 0 1 0-1.35l8.5-7.5a.9.9 0 0 1 1.27.08Z" clip-rule="evenodd"/></svg>',keywords:["chevron-left"],category:"utility"},Te={name:"chevron-right",svg:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path fill-rule="evenodd" d="M7.809 3.924a.9.9 0 0 0 .115 1.267L16.094 12l-8.17 6.809a.9.9 0 0 0 1.152 1.382l9-7.5a.9.9 0 0 0 0-1.382l-9-7.5a.9.9 0 0 0-1.267.115Z" clip-rule="evenodd"/></svg>',keywords:["chevron-right"],category:"utility"};var R="Tabs",[$e]=he.createContextScope(R,[N.createRovingFocusGroupScope]),H=N.createRovingFocusGroupScope(),[Ie,D]=$e(R),K=y.forwardRef((t,r)=>{const{__scopeTabs:s,value:a,onValueChange:i,defaultValue:d,orientation:o="horizontal",dir:n,activationMode:_="automatic",...b}=t,f=me.useDirection(n),[p,w]=$.useControllableState({prop:a,onChange:i,defaultProp:d??"",caller:R});return u.jsx(Ie,{scope:s,baseId:we.useId(),value:p,onValueChange:w,orientation:o,dir:f,activationMode:_,children:u.jsx($.Primitive.div,{dir:f,"data-orientation":o,...b,ref:r})})});K.displayName=R;var W="TabsList",Z=y.forwardRef((t,r)=>{const{__scopeTabs:s,loop:a=!0,...i}=t,d=D(W,s),o=H(s);return u.jsx(N.Root,{asChild:!0,...o,orientation:d.orientation,dir:d.dir,loop:a,children:u.jsx($.Primitive.div,{role:"tablist","aria-orientation":d.orientation,...i,ref:r})})});Z.displayName=W;var X="TabsTrigger",J=y.forwardRef((t,r)=>{const{__scopeTabs:s,value:a,disabled:i=!1,...d}=t,o=D(X,s),n=H(s),_=Q(o.baseId,a),b=ee(o.baseId,a),f=a===o.value;return u.jsx(N.Item,{asChild:!0,...n,focusable:!i,active:f,children:u.jsx($.Primitive.button,{type:"button",role:"tab","aria-selected":f,"aria-controls":b,"data-state":f?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:_,...d,ref:r,onMouseDown:$.composeEventHandlers(t.onMouseDown,p=>{!i&&p.button===0&&p.ctrlKey===!1?o.onValueChange(a):p.preventDefault()}),onKeyDown:$.composeEventHandlers(t.onKeyDown,p=>{[" ","Enter"].includes(p.key)&&o.onValueChange(a)}),onFocus:$.composeEventHandlers(t.onFocus,()=>{const p=o.activationMode!=="manual";!f&&!i&&p&&o.onValueChange(a)})})})});J.displayName=X;var U="TabsContent",Y=y.forwardRef((t,r)=>{const{__scopeTabs:s,value:a,forceMount:i,children:d,...o}=t,n=D(U,s),_=Q(n.baseId,a),b=ee(n.baseId,a),f=a===n.value,p=y.useRef(f);return y.useEffect(()=>{const w=requestAnimationFrame(()=>p.current=!1);return()=>cancelAnimationFrame(w)},[]),u.jsx(ve.Presence,{present:i||f,children:({present:w})=>u.jsx($.Primitive.div,{"data-state":f?"active":"inactive","data-orientation":n.orientation,role:"tabpanel","aria-labelledby":_,hidden:!w,id:b,tabIndex:0,...o,ref:r,style:{...t.style,animationDuration:p.current?"0s":void 0},children:w&&d})})});Y.displayName=U;function Q(t,r){return`${t}-trigger-${r}`}function ee(t,r){return`${t}-content-${r}`}var ye=K,Se=Z,Ne=J,Re=Y;const Ee={"purpur-tab-content":"_purpur-tab-content_14ikd_1","purpur-tab-content--force-mount":"_purpur-tab-content--force-mount_14ikd_15","purpur-tab-content--padding":"_purpur-tab-content--padding_14ikd_18","purpur-tab-content--padding-container-queries":"_purpur-tab-content--padding-container-queries_14ikd_22","purpur-tab-content--padding-media-queries":"_purpur-tab-content--padding-media-queries_14ikd_27"},je=L.c.bind(Ee),S="purpur-tab-content",ze=l.forwardRef(({children:t,tabId:r,"data-testid":s,className:a,disableForceMount:i,noPadding:d,useMediaQueries:o,...n},_)=>u.jsx(Re,{ref:_,className:je(S,a,{[`${S}--force-mount`]:!i,[`${S}--padding`]:!d,[`${S}--padding-container-queries`]:!o,[`${S}--padding-media-queries`]:o}),"data-testid":s,value:r,forceMount:!i||void 0,tabIndex:0,...n,children:t})),Ae=t=>!!t&&l.isValidElement(t)&&!!t.props.name&&!!t.props.tabId,ke={"purpur-tab-header":"_purpur-tab-header_1tc2s_1","purpur-tab-header--contained":"_purpur-tab-header--contained_1tc2s_36","purpur-tab-header--contained-negative":"_purpur-tab-header--contained-negative_1tc2s_36","purpur-tab-header--line":"_purpur-tab-header--line_1tc2s_39","purpur-tab-header--line-negative":"_purpur-tab-header--line-negative_1tc2s_51","purpur-tab-header--full-width":"_purpur-tab-header--full-width_1tc2s_100"},qe=L.c.bind(ke),q="purpur-tab-header",Le=l.forwardRef(({index:t,tabId:r,variant:s,negative:a,onFocus:i,fullWidth:d,"data-testid":o,children:n},_)=>u.jsx(Ne,{id:`${r}-trigger`,className:qe(q,`${q}--${s}${a?"-negative":""}`,{[`${q}--full-width`]:d}),value:r,"data-testid":o,"data-index":t,ref:_,onFocus:i,children:n})),De={"purpur-tabs":"_purpur-tabs_mnpwz_1","purpur-tabs__wrapper":"_purpur-tabs__wrapper_mnpwz_4","purpur-tabs__scroll-button":"_purpur-tabs__scroll-button_mnpwz_12","purpur-tabs__scroll-button--left":"_purpur-tabs__scroll-button--left_mnpwz_74","purpur-tabs__scroll-button--right":"_purpur-tabs__scroll-button--right_mnpwz_77","purpur-tabs__wrapper--scroll-start":"_purpur-tabs__wrapper--scroll-start_mnpwz_80","purpur-tabs__wrapper--scroll-end":"_purpur-tabs__wrapper--scroll-end_mnpwz_83","purpur-tabs--line":"_purpur-tabs--line_mnpwz_86","purpur-tabs--line-negative":"_purpur-tabs--line-negative_mnpwz_86","purpur-tabs__selected-border":"_purpur-tabs__selected-border_mnpwz_94","purpur-tabs__content-wrapper":"_purpur-tabs__content-wrapper_mnpwz_118","purpur-tabs--contained":"_purpur-tabs--contained_mnpwz_126","purpur-tabs__list":"_purpur-tabs__list_mnpwz_126","purpur-tabs--contained-negative":"_purpur-tabs--contained-negative_mnpwz_126","purpur-tabs__content-container":"_purpur-tabs__content-container_mnpwz_129","purpur-tabs--full-width":"_purpur-tabs--full-width_mnpwz_139"},Pe=["line","contained"],te=t=>new CustomEvent("tabChangeDetail",{detail:{value:t}}),T=L.c.bind(De),g="purpur-tabs",Me=(t,r)=>{if(typeof t?.getBoundingClientRect!="function"||typeof r?.scroll!="function")return;const s=t.getBoundingClientRect(),a=r.getBoundingClientRect(),i=r.clientWidth,d=parseInt(getComputedStyle(r).borderLeftWidth?.split("px")[0],10),o=a.left+(isNaN(d)?0:d);let n;s.right>a.right&&(n=s.left+r.scrollLeft,n=n+s.width-i+i*.1,n=n-o),s.left<a.left&&(n=s.left+r.scrollLeft,n=n-i*.1,n=n-o),n!==void 0&&r.scroll({left:n,behavior:"smooth"})},re=({children:t,variant:r="line",negative:s=!1,fullWidth:a=!1,onChange:i,className:d,defaultValue:o,animateHeight:n=!1,"data-testid":_,value:b,...f})=>{const p=l.useRef(null),[w,ne]=l.useState(-1),[ae,P]=l.useState({}),[se,oe]=l.useState(0),[ie,ce]=l.useState(0),h=l.Children.toArray(t).filter(Ae),I=l.useRef(null),E=l.useRef(new Array(h.length)),M=200,j=r==="line",ue=T(g,`${g}--${r}${s?"-negative":""}`,{[`${g}--full-width`]:a},d),z=l.Children.map(h,({props:{tabId:e}})=>e),le=()=>{const e=z.findIndex(c=>c===o);return e>=0?e:0},[A,V]=l.useState(le),[de,B]=l.useState(b??o??h[0].props.tabId);if(l.useEffect(()=>{b&&(B(b),V(h.findIndex(e=>e.props.tabId===b)))},[h,b]),new Set(z).size!==z.length)throw new Error("tabId must be unique");const k=(e,c)=>c||_?`${c||_}-${e}`:void 0,F=()=>{if(!j)return;const e=E.current[A];oe(e?.offsetLeft||0),ce(e?.getBoundingClientRect().width||0)},O=e=>{B(e),j&&!b&&V(h.findIndex(c=>c.props.tabId===e)),i?.(te(e))},pe=e=>{if(I?.current){const{scrollLeft:c}=I.current,v=e==="left"?-M:M;I.current.scroll({left:c+v,behavior:"smooth"})}},G=({side:e})=>u.jsx("button",{className:T(`${g}__scroll-button`,`${g}__scroll-button--${e}`),onClick:()=>pe(e),type:"button","aria-hidden":"true",tabIndex:-1,"data-testid":k("scroll-button"),children:u.jsx(ge.b,{svg:e==="left"?Ce:Te,size:"md"})});l.useEffect(()=>{const e=()=>{if(p.current&&n){const v=p.current.offsetHeight;ne(v)}},c=()=>{e(),F()};return e(),window.addEventListener("resize",c),()=>{window.removeEventListener("resize",c)}},[A,n]),l.useEffect(()=>{F()},[A,a,h.length,r]),l.useEffect(()=>{const e=I.current;if(!e)return;const c=()=>{const{scrollLeft:v,scrollWidth:x,clientWidth:m}=e,C=x>m,be=v<=1,fe=v+m>=x-1;if(!C){P({});return}P({[`${g}__wrapper--scroll-start`]:!be,[`${g}__wrapper--scroll-end`]:!fe})};return c(),e.addEventListener("scroll",c,{passive:!0}),window.addEventListener("resize",c),()=>{e.removeEventListener("scroll",c),window.removeEventListener("resize",c)}},[]);const _e=e=>{const c=e.target,v=parseInt(c.dataset.index??"",10);if(isNaN(v))return;const x=h.length;let m=null;switch(e.key){case"ArrowRight":m=(v+1)%x;break;case"ArrowLeft":m=(v-1+x)%x;break;case"Home":m=0;break;case"End":m=x-1;break}if(m!==null){const C=h[m].props.tabId;O(C),E.current[m]?.focus()}};return u.jsx(ye,{defaultValue:o??h[0].props.tabId,onValueChange:O,"data-testid":_,className:ue,value:b??de,activationMode:"manual",...f,children:u.jsxs("div",{className:T(`${g}__container`),children:[u.jsxs("div",{className:T(`${g}__wrapper`,ae),children:[u.jsxs(Se,{ref:e=>{I.current=e},className:T(`${g}__list`),onKeyDown:_e,children:[l.Children.map(h,(e,c)=>{const{name:v,tabId:x,"data-testid":m}=e.props;return u.jsx(Le,{"data-testid":k("header",m),index:c,tabId:x,ref:C=>{C&&(E.current[c]=C)},onFocus:C=>{Me(C.target,I.current)},variant:r,negative:s,fullWidth:a,children:v})}),j&&u.jsx("div",{className:T(`${g}__selected-border`),style:{width:ie,transform:`translateX(${se}px)`},"data-testid":k("selected-border")})]}),u.jsx(G,{side:"left"}),u.jsx(G,{side:"right"})]}),u.jsx("div",{className:n?T(`${g}__content-wrapper`):"",style:{height:n&&w>-1?`${w}px`:"auto"},children:u.jsx("div",{ref:p,className:T(`${g}__content-container`),children:l.Children.map(h,e=>e)})})]})})};re.Content=ze;exports.Tabs=re;exports.createTabChangeDetailEvent=te;exports.tabsVariants=Pe;
2
+ //# sourceMappingURL=tabs-D2__wbCs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs-D2__wbCs.js","sources":["../../../components/icon/dist/assets/chevron-left.es.js","../../../components/icon/dist/assets/chevron-right.es.js","../../../common/temp/node_modules/.pnpm/@radix-ui+react-tabs@1.1.13_@types+react-dom@19.2.3_@types+react@19.2.14__@types+react@_2ad0945e3cb98dc5bbfaaf29c105e977/node_modules/@radix-ui/react-tabs/dist/index.mjs","../../../components/tabs/src/tab-content.tsx","../../../components/tabs/src/tab-header.tsx","../../../components/tabs/src/tabs.utils.ts","../../../components/tabs/src/tabs.tsx"],"sourcesContent":["const e = {\n name: \"chevron-left\",\n svg: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M16.175 3.905a.9.9 0 0 1-.08 1.27L8.36 12l7.736 6.825a.9.9 0 0 1-1.191 1.35l-8.5-7.5a.9.9 0 0 1 0-1.35l8.5-7.5a.9.9 0 0 1 1.27.08Z\" clip-rule=\"evenodd\"/></svg>',\n keywords: [\"chevron-left\"],\n category: \"utility\"\n};\nexport {\n e as chevronLeft\n};\n//# sourceMappingURL=chevron-left.es.js.map\n","const e = {\n name: \"chevron-right\",\n svg: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M7.809 3.924a.9.9 0 0 0 .115 1.267L16.094 12l-8.17 6.809a.9.9 0 0 0 1.152 1.382l9-7.5a.9.9 0 0 0 0-1.382l-9-7.5a.9.9 0 0 0-1.267.115Z\" clip-rule=\"evenodd\"/></svg>',\n keywords: [\"chevron-right\"],\n category: \"utility\"\n};\nexport {\n e as chevronRight\n};\n//# sourceMappingURL=chevron-right.es.js.map\n","\"use client\";\n\n// src/tabs.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar TABS_NAME = \"Tabs\";\nvar [createTabsContext, createTabsScope] = createContextScope(TABS_NAME, [\n createRovingFocusGroupScope\n]);\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar [TabsProvider, useTabsContext] = createTabsContext(TABS_NAME);\nvar Tabs = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeTabs,\n value: valueProp,\n onValueChange,\n defaultValue,\n orientation = \"horizontal\",\n dir,\n activationMode = \"automatic\",\n ...tabsProps\n } = props;\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n onChange: onValueChange,\n defaultProp: defaultValue ?? \"\",\n caller: TABS_NAME\n });\n return /* @__PURE__ */ jsx(\n TabsProvider,\n {\n scope: __scopeTabs,\n baseId: useId(),\n value,\n onValueChange: setValue,\n orientation,\n dir: direction,\n activationMode,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n \"data-orientation\": orientation,\n ...tabsProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabs.displayName = TABS_NAME;\nvar TAB_LIST_NAME = \"TabsList\";\nvar TabsList = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, loop = true, ...listProps } = props;\n const context = useTabsContext(TAB_LIST_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n orientation: context.orientation,\n dir: context.dir,\n loop,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"tablist\",\n \"aria-orientation\": context.orientation,\n ...listProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabsList.displayName = TAB_LIST_NAME;\nvar TRIGGER_NAME = \"TabsTrigger\";\nvar TabsTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, disabled = false, ...triggerProps } = props;\n const context = useTabsContext(TRIGGER_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Item,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n focusable: !disabled,\n active: isSelected,\n children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"tab\",\n \"aria-selected\": isSelected,\n \"aria-controls\": contentId,\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n id: triggerId,\n ...triggerProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!disabled && event.button === 0 && event.ctrlKey === false) {\n context.onValueChange(value);\n } else {\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if ([\" \", \"Enter\"].includes(event.key)) context.onValueChange(value);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => {\n const isAutomaticActivation = context.activationMode !== \"manual\";\n if (!isSelected && !disabled && isAutomaticActivation) {\n context.onValueChange(value);\n }\n })\n }\n )\n }\n );\n }\n);\nTabsTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"TabsContent\";\nvar TabsContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, forceMount, children, ...contentProps } = props;\n const context = useTabsContext(CONTENT_NAME, __scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n const isMountAnimationPreventedRef = React.useRef(isSelected);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || isSelected, children: ({ present }) => /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-orientation\": context.orientation,\n role: \"tabpanel\",\n \"aria-labelledby\": triggerId,\n hidden: !present,\n id: contentId,\n tabIndex: 0,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...props.style,\n animationDuration: isMountAnimationPreventedRef.current ? \"0s\" : void 0\n },\n children: present && children\n }\n ) });\n }\n);\nTabsContent.displayName = CONTENT_NAME;\nfunction makeTriggerId(baseId, value) {\n return `${baseId}-trigger-${value}`;\n}\nfunction makeContentId(baseId, value) {\n return `${baseId}-content-${value}`;\n}\nvar Root2 = Tabs;\nvar List = TabsList;\nvar Trigger = TabsTrigger;\nvar Content = TabsContent;\nexport {\n Content,\n List,\n Root2 as Root,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Trigger,\n createTabsScope\n};\n//# sourceMappingURL=index.mjs.map\n","import React, { forwardRef, isValidElement, type ReactElement, type ReactNode } from \"react\";\nimport type { BaseProps } from \"@purpur/common-types\";\nimport { Content } from \"@radix-ui/react-tabs\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./tab-content.module.scss\";\n\nexport type TabContentProps = Omit<BaseProps, \"children\"> & {\n /**\n * Content to be rendered inside a `button` element.\n * Only pass ReactNodes that are valid as children of a `button`, such as plain text,\n * inline elements like `span` or other non-interactive elements. Avoid block-level or interactive elements.\n */\n name: ReactNode;\n /**\n * A unique ID that associates the tab with a content.\n * */\n tabId: string;\n /**\n * If true, the inactive tab content will not be rendered.\n */\n disableForceMount?: boolean;\n noPadding?: boolean;\n useMediaQueries?: boolean;\n children: ReactNode;\n};\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-tab-content\";\n\nexport const TabContent = forwardRef<HTMLDivElement, TabContentProps>(\n (\n {\n children,\n tabId,\n \"data-testid\": dataTestId,\n className,\n disableForceMount,\n noPadding,\n useMediaQueries,\n ...props\n },\n ref\n ) => (\n <Content\n ref={ref}\n className={cx(rootClassName, className, {\n [`${rootClassName}--force-mount`]: !disableForceMount,\n [`${rootClassName}--padding`]: !noPadding,\n [`${rootClassName}--padding-container-queries`]: !useMediaQueries,\n [`${rootClassName}--padding-media-queries`]: useMediaQueries,\n })}\n data-testid={dataTestId}\n value={tabId}\n forceMount={!disableForceMount || undefined}\n tabIndex={0}\n {...props}\n >\n {children}\n </Content>\n )\n);\n\nexport const isTabContent = (child?: ReactNode): child is ReactElement<TabContentProps> =>\n !!child && isValidElement<TabContentProps>(child) && !!child.props.name && !!child.props.tabId;\n","import React, {\n type FocusEventHandler,\n type ForwardedRef,\n forwardRef,\n type ReactNode,\n} from \"react\";\nimport { Trigger } from \"@radix-ui/react-tabs\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./tab-header.module.scss\";\nimport { type TabsVariant } from \"./tabs.utils\";\n\ntype TabHeaderProps = {\n \"data-testid\"?: string;\n index: number;\n tabId: string;\n variant: TabsVariant;\n negative?: boolean;\n onFocus: FocusEventHandler<HTMLButtonElement>;\n fullWidth?: boolean;\n children: ReactNode;\n};\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-tab-header\";\n\nexport const TabHeader = forwardRef(\n <T extends HTMLButtonElement>(\n {\n index,\n tabId,\n variant,\n negative,\n onFocus,\n fullWidth,\n \"data-testid\": dataTestId,\n children,\n }: TabHeaderProps,\n ref: ForwardedRef<T>\n ) => (\n <Trigger\n id={`${tabId}-trigger`}\n className={cx(rootClassName, `${rootClassName}--${variant}${negative ? \"-negative\" : \"\"}`, {\n [`${rootClassName}--full-width`]: fullWidth,\n })}\n value={tabId}\n data-testid={dataTestId}\n data-index={index}\n ref={ref}\n onFocus={onFocus}\n >\n {children}\n </Trigger>\n )\n);\n","import type { FunctionComponent } from \"react\";\n\nimport type { TabContent } from \"./tab-content\";\n\nexport type TabsCmp<P> = FunctionComponent<P> & {\n Content: typeof TabContent;\n};\n\nexport const tabsVariants = [\"line\", \"contained\"] as const;\n\nexport type TabsVariant = (typeof tabsVariants)[number];\n\nexport const createTabChangeDetailEvent = (value: string) =>\n new CustomEvent<TabChangeDetail>(\"tabChangeDetail\", { detail: { value } });\n\nexport type TabChangeDetail = { value: string };\n","import React, {\n Children,\n type HTMLAttributes,\n type ReactElement,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { Icon } from \"@purpur/icon\";\nimport { chevronLeft } from \"@purpur/icon/assets/chevron-left\";\nimport { chevronRight } from \"@purpur/icon/assets/chevron-right\";\nimport { List, Root } from \"@radix-ui/react-tabs\";\nimport c from \"classnames/bind\";\n\nimport { isTabContent, TabContent } from \"./tab-content\";\nimport { TabHeader } from \"./tab-header\";\nimport styles from \"./tabs.module.scss\";\nimport {\n createTabChangeDetailEvent,\n type TabChangeDetail,\n type TabsCmp,\n type TabsVariant,\n} from \"./tabs.utils\";\n\ntype TabsProps = {\n children: Array<ReactElement<typeof TabContent>> | ReactElement<typeof TabContent>;\n variant?: TabsVariant;\n negative?: boolean;\n fullWidth?: boolean;\n /**\n * The controlled value of the tabs. Must be used in conjunction with onChange.\n */\n value?: string;\n /**\n * Event handler called when the value changes.\n * */\n onChange?: (event: CustomEvent<TabChangeDetail>) => void;\n defaultValue?: string;\n /**\n * When true, animates the height of the component when switching tabs.\n * */\n animateHeight?: boolean;\n \"data-testid\"?: string;\n} & Pick<HTMLAttributes<HTMLDivElement>, \"style\" | \"className\">;\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-tabs\";\n\nconst scrollToTarget = (target: HTMLElement, tabList?: HTMLDivElement | null) => {\n /**\n * scroll may not be available in test runner, so check existence before\n * proceeding. We can't use scrollIntoView() because Safari doesn't support\n * it fully.\n */\n if (\n typeof target?.getBoundingClientRect !== \"function\" ||\n typeof tabList?.scroll !== \"function\"\n ) {\n return;\n }\n\n const targetRect = target.getBoundingClientRect();\n const wrapperRect = tabList.getBoundingClientRect();\n const wrapperWidth = tabList.clientWidth;\n const wrapperOffset = parseInt(getComputedStyle(tabList).borderLeftWidth?.split(\"px\")[0], 10);\n const offset = wrapperRect.left + (isNaN(wrapperOffset) ? 0 : wrapperOffset);\n let left;\n\n // Handle forward navigation\n if (targetRect.right > wrapperRect.right) {\n left = targetRect.left + tabList.scrollLeft;\n left = left + targetRect.width - wrapperWidth + wrapperWidth * 0.1;\n left = left - offset;\n }\n\n // Handle backwards navigation\n if (targetRect.left < wrapperRect.left) {\n left = targetRect.left + tabList.scrollLeft;\n left = left - wrapperWidth * 0.1;\n left = left - offset;\n }\n\n if (left !== undefined) {\n tabList.scroll({ left, behavior: \"smooth\" });\n }\n};\n\nexport const Tabs: TabsCmp<TabsProps> = ({\n children,\n variant = \"line\",\n negative = false,\n fullWidth = false,\n onChange,\n className,\n defaultValue,\n animateHeight = false,\n \"data-testid\": dataTestId,\n value,\n ...props\n}) => {\n const contentRef = useRef<HTMLDivElement | null>(null);\n const [height, setHeight] = useState(-1);\n const [scrollClasses, setScrollClasses] = useState<{ [key: string]: boolean }>({});\n const [selectedTriggerOffset, setSelectedTriggerOffset] = useState(0);\n const [selectedTriggerWidth, setSelectedTriggerWidth] = useState(0);\n const tabContentChildren = Children.toArray(children).filter(isTabContent);\n const tabList = useRef<HTMLDivElement>(null);\n const tabChildren = useRef<HTMLButtonElement[]>(new Array(tabContentChildren.length));\n const sideScrollAdjustmentSize = 200;\n const isLineVariant = variant === \"line\";\n\n const classNames = cx(\n rootClassName,\n `${rootClassName}--${variant}${negative ? \"-negative\" : \"\"}`,\n { [`${rootClassName}--full-width`]: fullWidth },\n className\n );\n\n const tabIds = Children.map(tabContentChildren, ({ props: { tabId } }) => tabId);\n\n const getDefaultTabIndex = () => {\n const defaultIndex = tabIds.findIndex((tabIndex) => tabIndex === defaultValue);\n return defaultIndex >= 0 ? defaultIndex : 0;\n };\n\n const [activeIndex, setActiveIndex] = useState(getDefaultTabIndex);\n\n // Internal active tab ID — keeps Radix always controlled so our keydown handler\n // can activate tabs directly without relying on Radix's mouse/focus events.\n const [activeTabId, setActiveTabId] = useState<string>(\n value ?? defaultValue ?? tabContentChildren[0].props.tabId\n );\n\n useEffect(() => {\n if (value) {\n setActiveTabId(value);\n setActiveIndex(tabContentChildren.findIndex((child) => child.props.tabId === value));\n }\n }, [tabContentChildren, value]);\n\n if (new Set(tabIds).size !== tabIds.length) {\n throw new Error(\"tabId must be unique\");\n }\n\n const getTestId = (name: string, id?: string) =>\n id || dataTestId ? `${id || dataTestId}-${name}` : undefined;\n\n const handleLinePosition = () => {\n if (!isLineVariant) {\n return;\n }\n\n const activeTabElement = tabChildren.current[activeIndex];\n\n setSelectedTriggerOffset(activeTabElement?.offsetLeft || 0);\n setSelectedTriggerWidth(activeTabElement?.getBoundingClientRect().width || 0);\n };\n\n const handleTabChange = (_value: string) => {\n setActiveTabId(_value);\n if (isLineVariant && !value) {\n setActiveIndex(tabContentChildren.findIndex((child) => child.props.tabId === _value));\n }\n onChange?.(createTabChangeDetailEvent(_value));\n };\n\n const handleScrollButtonClick = (side: \"left\" | \"right\") => {\n if (tabList?.current) {\n const { scrollLeft } = tabList.current;\n const modifier = side === \"left\" ? -sideScrollAdjustmentSize : sideScrollAdjustmentSize;\n\n tabList.current.scroll({ left: scrollLeft + modifier, behavior: \"smooth\" });\n }\n };\n\n const ScrollButton = ({ side }: { side: \"left\" | \"right\" }) => (\n <button\n className={cx(`${rootClassName}__scroll-button`, `${rootClassName}__scroll-button--${side}`)}\n onClick={() => handleScrollButtonClick(side)}\n type=\"button\"\n aria-hidden=\"true\"\n tabIndex={-1}\n data-testid={getTestId(\"scroll-button\")}\n >\n <Icon svg={side === \"left\" ? chevronLeft : chevronRight} size=\"md\" />\n </button>\n );\n\n useEffect(() => {\n const setNewHeight = () => {\n if (contentRef.current && animateHeight) {\n const newHeight = contentRef.current.offsetHeight;\n setHeight(newHeight);\n }\n };\n\n const handleResize = () => {\n setNewHeight();\n handleLinePosition();\n };\n\n setNewHeight();\n\n window.addEventListener(\"resize\", handleResize);\n\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n }, [activeIndex, animateHeight]); // eslint-disable-line react-hooks/exhaustive-deps\n\n useEffect(() => {\n handleLinePosition();\n }, [activeIndex, fullWidth, tabContentChildren.length, variant]); // eslint-disable-line react-hooks/exhaustive-deps\n\n useEffect(() => {\n const root = tabList.current;\n if (!root) return;\n\n const updateScrollState = () => {\n const { scrollLeft, scrollWidth, clientWidth } = root;\n\n const canScroll = scrollWidth > clientWidth;\n const atStart = scrollLeft <= 1;\n const atEnd = scrollLeft + clientWidth >= scrollWidth - 1;\n\n if (!canScroll) {\n setScrollClasses({});\n return;\n }\n\n setScrollClasses({\n [`${rootClassName}__wrapper--scroll-start`]: !atStart,\n [`${rootClassName}__wrapper--scroll-end`]: !atEnd,\n });\n };\n\n updateScrollState();\n\n root.addEventListener(\"scroll\", updateScrollState, { passive: true });\n window.addEventListener(\"resize\", updateScrollState);\n\n return () => {\n root.removeEventListener(\"scroll\", updateScrollState);\n window.removeEventListener(\"resize\", updateScrollState);\n };\n }, []);\n\n const handleTabListKeyDown = (e: React.KeyboardEvent) => {\n const target = e.target as HTMLElement;\n const currentIndex = parseInt(target.dataset.index ?? \"\", 10);\n if (isNaN(currentIndex)) return;\n\n const total = tabContentChildren.length;\n let nextIndex: number | null = null;\n\n switch (e.key) {\n case \"ArrowRight\":\n nextIndex = (currentIndex + 1) % total;\n break;\n case \"ArrowLeft\":\n nextIndex = (currentIndex - 1 + total) % total;\n break;\n case \"Home\":\n nextIndex = 0;\n break;\n case \"End\":\n nextIndex = total - 1;\n break;\n }\n\n if (nextIndex !== null) {\n const nextTabId = tabContentChildren[nextIndex].props.tabId;\n handleTabChange(nextTabId);\n tabChildren.current[nextIndex]?.focus();\n }\n };\n\n return (\n <Root\n defaultValue={defaultValue ?? tabContentChildren[0].props.tabId}\n onValueChange={handleTabChange}\n data-testid={dataTestId}\n className={classNames}\n value={value ?? activeTabId}\n activationMode=\"manual\"\n {...props}\n >\n <div className={cx(`${rootClassName}__container`)}>\n <div className={cx(`${rootClassName}__wrapper`, scrollClasses)}>\n <List\n ref={(el) => {\n tabList.current = el;\n }}\n className={cx(`${rootClassName}__list`)}\n onKeyDown={handleTabListKeyDown}\n >\n {Children.map(tabContentChildren, (child, index) => {\n const { name, tabId, \"data-testid\": childDataTestId } = child.props;\n return (\n <TabHeader\n data-testid={getTestId(\"header\", childDataTestId)}\n index={index}\n tabId={tabId}\n ref={(el) => {\n if (el) {\n tabChildren.current[index] = el;\n }\n }}\n onFocus={(e) => {\n scrollToTarget(e.target as HTMLElement, tabList.current);\n }}\n variant={variant}\n negative={negative}\n fullWidth={fullWidth}\n >\n {name}\n </TabHeader>\n );\n })}\n {isLineVariant && (\n <div\n className={cx(`${rootClassName}__selected-border`)}\n style={{\n width: selectedTriggerWidth,\n transform: `translateX(${selectedTriggerOffset}px)`,\n }}\n data-testid={getTestId(\"selected-border\")}\n />\n )}\n </List>\n <ScrollButton side=\"left\" />\n <ScrollButton side=\"right\" />\n </div>\n <div\n className={animateHeight ? cx(`${rootClassName}__content-wrapper`) : \"\"}\n style={{ height: animateHeight && height > -1 ? `${height}px` : \"auto\" }}\n >\n <div ref={contentRef} className={cx(`${rootClassName}__content-container`)}>\n {Children.map(tabContentChildren, (child) => child)}\n </div>\n </div>\n </div>\n </Root>\n );\n};\n\nTabs.Content = TabContent;\n\nexport * from \"./tabs.utils\";\n"],"names":["e","TABS_NAME","createTabsContext","createContextScope","createRovingFocusGroupScope","useRovingFocusGroupScope","TabsProvider","useTabsContext","Tabs","React","props","forwardedRef","__scopeTabs","valueProp","onValueChange","defaultValue","orientation","dir","activationMode","tabsProps","direction","useDirection","value","setValue","useControllableState","jsx","useId","Primitive","TAB_LIST_NAME","TabsList","loop","listProps","context","rovingFocusGroupScope","RovingFocusGroup.Root","TRIGGER_NAME","TabsTrigger","disabled","triggerProps","triggerId","makeTriggerId","contentId","makeContentId","isSelected","RovingFocusGroup.Item","composeEventHandlers","event","isAutomaticActivation","CONTENT_NAME","TabsContent","forceMount","children","contentProps","isMountAnimationPreventedRef","rAF","Presence","present","baseId","Root2","List","Trigger","Content","cx","c","styles","rootClassName","TabContent","forwardRef","tabId","dataTestId","className","disableForceMount","noPadding","useMediaQueries","ref","isTabContent","child","isValidElement","TabHeader","index","variant","negative","onFocus","fullWidth","tabsVariants","createTabChangeDetailEvent","scrollToTarget","target","tabList","targetRect","wrapperRect","wrapperWidth","wrapperOffset","offset","left","onChange","animateHeight","contentRef","useRef","height","setHeight","useState","scrollClasses","setScrollClasses","selectedTriggerOffset","setSelectedTriggerOffset","selectedTriggerWidth","setSelectedTriggerWidth","tabContentChildren","Children","tabChildren","sideScrollAdjustmentSize","isLineVariant","classNames","tabIds","getDefaultTabIndex","defaultIndex","tabIndex","activeIndex","setActiveIndex","activeTabId","setActiveTabId","useEffect","getTestId","name","id","handleLinePosition","activeTabElement","handleTabChange","_value","handleScrollButtonClick","side","scrollLeft","modifier","ScrollButton","Icon","chevronLeft","chevronRight","setNewHeight","newHeight","handleResize","root","updateScrollState","scrollWidth","clientWidth","canScroll","atStart","atEnd","handleTabListKeyDown","currentIndex","total","nextIndex","nextTabId","Root","jsxs","el","childDataTestId"],"mappings":"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","x_google_ignoreList":[2]}
@@ -0,0 +1,440 @@
1
+ import { jsx as l, jsxs as P } from "react/jsx-runtime";
2
+ import * as x from "react";
3
+ import { forwardRef as X, isValidElement as wt, useRef as M, useState as $, Children as N, useEffect as z } from "react";
4
+ import { b as Tt } from "./icon.es-CZcKxTaM.mjs";
5
+ import { P as R, c as B, u as Ct } from "./index-DCcK_d4W.mjs";
6
+ import { c as It } from "./index-DOfn3ixy.mjs";
7
+ import { c as J, I as $t, R as xt } from "./index-IpWiejWQ.mjs";
8
+ import { P as yt } from "./index-DDrLXRUs.mjs";
9
+ import { u as Nt } from "./index-ByaXH_ih.mjs";
10
+ import { u as zt } from "./index-CEQ35j8b.mjs";
11
+ import { c as F } from "./bind-CU-R61T-.mjs";
12
+ const Rt = {
13
+ name: "chevron-left",
14
+ svg: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path fill-rule="evenodd" d="M16.175 3.905a.9.9 0 0 1-.08 1.27L8.36 12l7.736 6.825a.9.9 0 0 1-1.191 1.35l-8.5-7.5a.9.9 0 0 1 0-1.35l8.5-7.5a.9.9 0 0 1 1.27.08Z" clip-rule="evenodd"/></svg>',
15
+ keywords: ["chevron-left"],
16
+ category: "utility"
17
+ }, St = {
18
+ name: "chevron-right",
19
+ svg: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path fill-rule="evenodd" d="M7.809 3.924a.9.9 0 0 0 .115 1.267L16.094 12l-8.17 6.809a.9.9 0 0 0 1.152 1.382l9-7.5a.9.9 0 0 0 0-1.382l-9-7.5a.9.9 0 0 0-1.267.115Z" clip-rule="evenodd"/></svg>',
20
+ keywords: ["chevron-right"],
21
+ category: "utility"
22
+ };
23
+ var S = "Tabs", [Et] = It(S, [
24
+ J
25
+ ]), U = J(), [At, q] = Et(S), Y = x.forwardRef(
26
+ (e, n) => {
27
+ const {
28
+ __scopeTabs: s,
29
+ value: a,
30
+ onValueChange: i,
31
+ defaultValue: u,
32
+ orientation: o = "horizontal",
33
+ dir: r,
34
+ activationMode: p = "automatic",
35
+ ..._
36
+ } = e, b = Nt(r), [d, v] = Ct({
37
+ prop: a,
38
+ onChange: i,
39
+ defaultProp: u ?? "",
40
+ caller: S
41
+ });
42
+ return /* @__PURE__ */ l(
43
+ At,
44
+ {
45
+ scope: s,
46
+ baseId: zt(),
47
+ value: d,
48
+ onValueChange: v,
49
+ orientation: o,
50
+ dir: b,
51
+ activationMode: p,
52
+ children: /* @__PURE__ */ l(
53
+ R.div,
54
+ {
55
+ dir: b,
56
+ "data-orientation": o,
57
+ ..._,
58
+ ref: n
59
+ }
60
+ )
61
+ }
62
+ );
63
+ }
64
+ );
65
+ Y.displayName = S;
66
+ var Q = "TabsList", tt = x.forwardRef(
67
+ (e, n) => {
68
+ const { __scopeTabs: s, loop: a = !0, ...i } = e, u = q(Q, s), o = U(s);
69
+ return /* @__PURE__ */ l(
70
+ xt,
71
+ {
72
+ asChild: !0,
73
+ ...o,
74
+ orientation: u.orientation,
75
+ dir: u.dir,
76
+ loop: a,
77
+ children: /* @__PURE__ */ l(
78
+ R.div,
79
+ {
80
+ role: "tablist",
81
+ "aria-orientation": u.orientation,
82
+ ...i,
83
+ ref: n
84
+ }
85
+ )
86
+ }
87
+ );
88
+ }
89
+ );
90
+ tt.displayName = Q;
91
+ var et = "TabsTrigger", rt = x.forwardRef(
92
+ (e, n) => {
93
+ const { __scopeTabs: s, value: a, disabled: i = !1, ...u } = e, o = q(et, s), r = U(s), p = ot(o.baseId, a), _ = st(o.baseId, a), b = a === o.value;
94
+ return /* @__PURE__ */ l(
95
+ $t,
96
+ {
97
+ asChild: !0,
98
+ ...r,
99
+ focusable: !i,
100
+ active: b,
101
+ children: /* @__PURE__ */ l(
102
+ R.button,
103
+ {
104
+ type: "button",
105
+ role: "tab",
106
+ "aria-selected": b,
107
+ "aria-controls": _,
108
+ "data-state": b ? "active" : "inactive",
109
+ "data-disabled": i ? "" : void 0,
110
+ disabled: i,
111
+ id: p,
112
+ ...u,
113
+ ref: n,
114
+ onMouseDown: B(e.onMouseDown, (d) => {
115
+ !i && d.button === 0 && d.ctrlKey === !1 ? o.onValueChange(a) : d.preventDefault();
116
+ }),
117
+ onKeyDown: B(e.onKeyDown, (d) => {
118
+ [" ", "Enter"].includes(d.key) && o.onValueChange(a);
119
+ }),
120
+ onFocus: B(e.onFocus, () => {
121
+ const d = o.activationMode !== "manual";
122
+ !b && !i && d && o.onValueChange(a);
123
+ })
124
+ }
125
+ )
126
+ }
127
+ );
128
+ }
129
+ );
130
+ rt.displayName = et;
131
+ var nt = "TabsContent", at = x.forwardRef(
132
+ (e, n) => {
133
+ const { __scopeTabs: s, value: a, forceMount: i, children: u, ...o } = e, r = q(nt, s), p = ot(r.baseId, a), _ = st(r.baseId, a), b = a === r.value, d = x.useRef(b);
134
+ return x.useEffect(() => {
135
+ const v = requestAnimationFrame(() => d.current = !1);
136
+ return () => cancelAnimationFrame(v);
137
+ }, []), /* @__PURE__ */ l(yt, { present: i || b, children: ({ present: v }) => /* @__PURE__ */ l(
138
+ R.div,
139
+ {
140
+ "data-state": b ? "active" : "inactive",
141
+ "data-orientation": r.orientation,
142
+ role: "tabpanel",
143
+ "aria-labelledby": p,
144
+ hidden: !v,
145
+ id: _,
146
+ tabIndex: 0,
147
+ ...o,
148
+ ref: n,
149
+ style: {
150
+ ...e.style,
151
+ animationDuration: d.current ? "0s" : void 0
152
+ },
153
+ children: v && u
154
+ }
155
+ ) });
156
+ }
157
+ );
158
+ at.displayName = nt;
159
+ function ot(e, n) {
160
+ return `${e}-trigger-${n}`;
161
+ }
162
+ function st(e, n) {
163
+ return `${e}-content-${n}`;
164
+ }
165
+ var kt = Y, Lt = tt, Dt = rt, Pt = at;
166
+ const Mt = {
167
+ "purpur-tab-content": "_purpur-tab-content_14ikd_1",
168
+ "purpur-tab-content--force-mount": "_purpur-tab-content--force-mount_14ikd_15",
169
+ "purpur-tab-content--padding": "_purpur-tab-content--padding_14ikd_18",
170
+ "purpur-tab-content--padding-container-queries": "_purpur-tab-content--padding-container-queries_14ikd_22",
171
+ "purpur-tab-content--padding-media-queries": "_purpur-tab-content--padding-media-queries_14ikd_27"
172
+ }, Bt = F.bind(Mt), y = "purpur-tab-content", Vt = X(
173
+ ({
174
+ children: e,
175
+ tabId: n,
176
+ "data-testid": s,
177
+ className: a,
178
+ disableForceMount: i,
179
+ noPadding: u,
180
+ useMediaQueries: o,
181
+ ...r
182
+ }, p) => /* @__PURE__ */ l(
183
+ Pt,
184
+ {
185
+ ref: p,
186
+ className: Bt(y, a, {
187
+ [`${y}--force-mount`]: !i,
188
+ [`${y}--padding`]: !u,
189
+ [`${y}--padding-container-queries`]: !o,
190
+ [`${y}--padding-media-queries`]: o
191
+ }),
192
+ "data-testid": s,
193
+ value: n,
194
+ forceMount: !i || void 0,
195
+ tabIndex: 0,
196
+ ...r,
197
+ children: e
198
+ }
199
+ )
200
+ ), Ft = (e) => !!e && wt(e) && !!e.props.name && !!e.props.tabId, qt = {
201
+ "purpur-tab-header": "_purpur-tab-header_1tc2s_1",
202
+ "purpur-tab-header--contained": "_purpur-tab-header--contained_1tc2s_36",
203
+ "purpur-tab-header--contained-negative": "_purpur-tab-header--contained-negative_1tc2s_36",
204
+ "purpur-tab-header--line": "_purpur-tab-header--line_1tc2s_39",
205
+ "purpur-tab-header--line-negative": "_purpur-tab-header--line-negative_1tc2s_51",
206
+ "purpur-tab-header--full-width": "_purpur-tab-header--full-width_1tc2s_100"
207
+ }, Gt = F.bind(qt), V = "purpur-tab-header", Kt = X(
208
+ ({
209
+ index: e,
210
+ tabId: n,
211
+ variant: s,
212
+ negative: a,
213
+ onFocus: i,
214
+ fullWidth: u,
215
+ "data-testid": o,
216
+ children: r
217
+ }, p) => /* @__PURE__ */ l(
218
+ Dt,
219
+ {
220
+ id: `${n}-trigger`,
221
+ className: Gt(V, `${V}--${s}${a ? "-negative" : ""}`, {
222
+ [`${V}--full-width`]: u
223
+ }),
224
+ value: n,
225
+ "data-testid": o,
226
+ "data-index": e,
227
+ ref: p,
228
+ onFocus: i,
229
+ children: r
230
+ }
231
+ )
232
+ ), Wt = {
233
+ "purpur-tabs": "_purpur-tabs_mnpwz_1",
234
+ "purpur-tabs__wrapper": "_purpur-tabs__wrapper_mnpwz_4",
235
+ "purpur-tabs__scroll-button": "_purpur-tabs__scroll-button_mnpwz_12",
236
+ "purpur-tabs__scroll-button--left": "_purpur-tabs__scroll-button--left_mnpwz_74",
237
+ "purpur-tabs__scroll-button--right": "_purpur-tabs__scroll-button--right_mnpwz_77",
238
+ "purpur-tabs__wrapper--scroll-start": "_purpur-tabs__wrapper--scroll-start_mnpwz_80",
239
+ "purpur-tabs__wrapper--scroll-end": "_purpur-tabs__wrapper--scroll-end_mnpwz_83",
240
+ "purpur-tabs--line": "_purpur-tabs--line_mnpwz_86",
241
+ "purpur-tabs--line-negative": "_purpur-tabs--line-negative_mnpwz_86",
242
+ "purpur-tabs__selected-border": "_purpur-tabs__selected-border_mnpwz_94",
243
+ "purpur-tabs__content-wrapper": "_purpur-tabs__content-wrapper_mnpwz_118",
244
+ "purpur-tabs--contained": "_purpur-tabs--contained_mnpwz_126",
245
+ "purpur-tabs__list": "_purpur-tabs__list_mnpwz_126",
246
+ "purpur-tabs--contained-negative": "_purpur-tabs--contained-negative_mnpwz_126",
247
+ "purpur-tabs__content-container": "_purpur-tabs__content-container_mnpwz_129",
248
+ "purpur-tabs--full-width": "_purpur-tabs--full-width_mnpwz_139"
249
+ }, ae = ["line", "contained"], Ht = (e) => new CustomEvent("tabChangeDetail", { detail: { value: e } }), C = F.bind(Wt), f = "purpur-tabs", Ot = (e, n) => {
250
+ if (typeof e?.getBoundingClientRect != "function" || typeof n?.scroll != "function")
251
+ return;
252
+ const s = e.getBoundingClientRect(), a = n.getBoundingClientRect(), i = n.clientWidth, u = parseInt(getComputedStyle(n).borderLeftWidth?.split("px")[0], 10), o = a.left + (isNaN(u) ? 0 : u);
253
+ let r;
254
+ s.right > a.right && (r = s.left + n.scrollLeft, r = r + s.width - i + i * 0.1, r = r - o), s.left < a.left && (r = s.left + n.scrollLeft, r = r - i * 0.1, r = r - o), r !== void 0 && n.scroll({ left: r, behavior: "smooth" });
255
+ }, jt = ({
256
+ children: e,
257
+ variant: n = "line",
258
+ negative: s = !1,
259
+ fullWidth: a = !1,
260
+ onChange: i,
261
+ className: u,
262
+ defaultValue: o,
263
+ animateHeight: r = !1,
264
+ "data-testid": p,
265
+ value: _,
266
+ ...b
267
+ }) => {
268
+ const d = M(null), [v, it] = $(-1), [ct, G] = $({}), [lt, ut] = $(0), [dt, pt] = $(0), g = N.toArray(e).filter(Ft), I = M(null), E = M(new Array(g.length)), K = 200, A = n === "line", _t = C(
269
+ f,
270
+ `${f}--${n}${s ? "-negative" : ""}`,
271
+ { [`${f}--full-width`]: a },
272
+ u
273
+ ), k = N.map(g, ({ props: { tabId: t } }) => t), bt = () => {
274
+ const t = k.findIndex((c) => c === o);
275
+ return t >= 0 ? t : 0;
276
+ }, [L, W] = $(bt), [ft, H] = $(
277
+ _ ?? o ?? g[0].props.tabId
278
+ );
279
+ if (z(() => {
280
+ _ && (H(_), W(g.findIndex((t) => t.props.tabId === _)));
281
+ }, [g, _]), new Set(k).size !== k.length)
282
+ throw new Error("tabId must be unique");
283
+ const D = (t, c) => c || p ? `${c || p}-${t}` : void 0, O = () => {
284
+ if (!A)
285
+ return;
286
+ const t = E.current[L];
287
+ ut(t?.offsetLeft || 0), pt(t?.getBoundingClientRect().width || 0);
288
+ }, j = (t) => {
289
+ H(t), A && !_ && W(g.findIndex((c) => c.props.tabId === t)), i?.(Ht(t));
290
+ }, gt = (t) => {
291
+ if (I?.current) {
292
+ const { scrollLeft: c } = I.current, m = t === "left" ? -K : K;
293
+ I.current.scroll({ left: c + m, behavior: "smooth" });
294
+ }
295
+ }, Z = ({ side: t }) => /* @__PURE__ */ l(
296
+ "button",
297
+ {
298
+ className: C(`${f}__scroll-button`, `${f}__scroll-button--${t}`),
299
+ onClick: () => gt(t),
300
+ type: "button",
301
+ "aria-hidden": "true",
302
+ tabIndex: -1,
303
+ "data-testid": D("scroll-button"),
304
+ children: /* @__PURE__ */ l(Tt, { svg: t === "left" ? Rt : St, size: "md" })
305
+ }
306
+ );
307
+ z(() => {
308
+ const t = () => {
309
+ if (d.current && r) {
310
+ const m = d.current.offsetHeight;
311
+ it(m);
312
+ }
313
+ }, c = () => {
314
+ t(), O();
315
+ };
316
+ return t(), window.addEventListener("resize", c), () => {
317
+ window.removeEventListener("resize", c);
318
+ };
319
+ }, [L, r]), z(() => {
320
+ O();
321
+ }, [L, a, g.length, n]), z(() => {
322
+ const t = I.current;
323
+ if (!t) return;
324
+ const c = () => {
325
+ const { scrollLeft: m, scrollWidth: w, clientWidth: h } = t, T = w > h, ht = m <= 1, vt = m + h >= w - 1;
326
+ if (!T) {
327
+ G({});
328
+ return;
329
+ }
330
+ G({
331
+ [`${f}__wrapper--scroll-start`]: !ht,
332
+ [`${f}__wrapper--scroll-end`]: !vt
333
+ });
334
+ };
335
+ return c(), t.addEventListener("scroll", c, { passive: !0 }), window.addEventListener("resize", c), () => {
336
+ t.removeEventListener("scroll", c), window.removeEventListener("resize", c);
337
+ };
338
+ }, []);
339
+ const mt = (t) => {
340
+ const c = t.target, m = parseInt(c.dataset.index ?? "", 10);
341
+ if (isNaN(m)) return;
342
+ const w = g.length;
343
+ let h = null;
344
+ switch (t.key) {
345
+ case "ArrowRight":
346
+ h = (m + 1) % w;
347
+ break;
348
+ case "ArrowLeft":
349
+ h = (m - 1 + w) % w;
350
+ break;
351
+ case "Home":
352
+ h = 0;
353
+ break;
354
+ case "End":
355
+ h = w - 1;
356
+ break;
357
+ }
358
+ if (h !== null) {
359
+ const T = g[h].props.tabId;
360
+ j(T), E.current[h]?.focus();
361
+ }
362
+ };
363
+ return /* @__PURE__ */ l(
364
+ kt,
365
+ {
366
+ defaultValue: o ?? g[0].props.tabId,
367
+ onValueChange: j,
368
+ "data-testid": p,
369
+ className: _t,
370
+ value: _ ?? ft,
371
+ activationMode: "manual",
372
+ ...b,
373
+ children: /* @__PURE__ */ P("div", { className: C(`${f}__container`), children: [
374
+ /* @__PURE__ */ P("div", { className: C(`${f}__wrapper`, ct), children: [
375
+ /* @__PURE__ */ P(
376
+ Lt,
377
+ {
378
+ ref: (t) => {
379
+ I.current = t;
380
+ },
381
+ className: C(`${f}__list`),
382
+ onKeyDown: mt,
383
+ children: [
384
+ N.map(g, (t, c) => {
385
+ const { name: m, tabId: w, "data-testid": h } = t.props;
386
+ return /* @__PURE__ */ l(
387
+ Kt,
388
+ {
389
+ "data-testid": D("header", h),
390
+ index: c,
391
+ tabId: w,
392
+ ref: (T) => {
393
+ T && (E.current[c] = T);
394
+ },
395
+ onFocus: (T) => {
396
+ Ot(T.target, I.current);
397
+ },
398
+ variant: n,
399
+ negative: s,
400
+ fullWidth: a,
401
+ children: m
402
+ }
403
+ );
404
+ }),
405
+ A && /* @__PURE__ */ l(
406
+ "div",
407
+ {
408
+ className: C(`${f}__selected-border`),
409
+ style: {
410
+ width: dt,
411
+ transform: `translateX(${lt}px)`
412
+ },
413
+ "data-testid": D("selected-border")
414
+ }
415
+ )
416
+ ]
417
+ }
418
+ ),
419
+ /* @__PURE__ */ l(Z, { side: "left" }),
420
+ /* @__PURE__ */ l(Z, { side: "right" })
421
+ ] }),
422
+ /* @__PURE__ */ l(
423
+ "div",
424
+ {
425
+ className: r ? C(`${f}__content-wrapper`) : "",
426
+ style: { height: r && v > -1 ? `${v}px` : "auto" },
427
+ children: /* @__PURE__ */ l("div", { ref: d, className: C(`${f}__content-container`), children: N.map(g, (t) => t) })
428
+ }
429
+ )
430
+ ] })
431
+ }
432
+ );
433
+ };
434
+ jt.Content = Vt;
435
+ export {
436
+ jt as T,
437
+ Ht as c,
438
+ ae as t
439
+ };
440
+ //# sourceMappingURL=tabs-DOG5g2wf.mjs.map