@purpur/library 9.0.5 → 9.0.7

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 (255) hide show
  1. package/CHANGELOG.json +39 -0
  2. package/CHANGELOG.md +20 -1
  3. package/dist/{RichText-DRacgpis.mjs → RichText-Bi51HE6X.mjs} +3 -3
  4. package/dist/{RichText-DRacgpis.mjs.map → RichText-Bi51HE6X.mjs.map} +1 -1
  5. package/dist/{RichText-DMyGiMN0.js → RichText-DNroJJXv.js} +2 -2
  6. package/dist/{RichText-DMyGiMN0.js.map → RichText-DNroJJXv.js.map} +1 -1
  7. package/dist/{ThemeProvider-CrjMv3M8.mjs → ThemeProvider-BR1hJQOD.mjs} +85 -85
  8. package/dist/{ThemeProvider-CrjMv3M8.mjs.map → ThemeProvider-BR1hJQOD.mjs.map} +1 -1
  9. package/dist/{accordion-DWflnyWa.mjs → accordion-BKTz9DM6.mjs} +18 -18
  10. package/dist/{accordion-DWflnyWa.mjs.map → accordion-BKTz9DM6.mjs.map} +1 -1
  11. package/dist/{accordion-CF2fj2uq.js → accordion-DX8efWOt.js} +2 -2
  12. package/dist/{accordion-CF2fj2uq.js.map → accordion-DX8efWOt.js.map} +1 -1
  13. package/dist/accordion.cjs.js +1 -1
  14. package/dist/accordion.es.js +1 -1
  15. package/dist/{alert-badge-u7qAhYbR.mjs → alert-badge-DR8cigWu.mjs} +3 -3
  16. package/dist/{alert-badge-u7qAhYbR.mjs.map → alert-badge-DR8cigWu.mjs.map} +1 -1
  17. package/dist/alert-badge.es.js +1 -1
  18. package/dist/{autocomplete-yD0-1vlF.js → autocomplete-6qSqK3SI.js} +2 -2
  19. package/dist/{autocomplete-yD0-1vlF.js.map → autocomplete-6qSqK3SI.js.map} +1 -1
  20. package/dist/{autocomplete-0kGG_STe.mjs → autocomplete-B4dZx9zF.mjs} +3 -3
  21. package/dist/{autocomplete-0kGG_STe.mjs.map → autocomplete-B4dZx9zF.mjs.map} +1 -1
  22. package/dist/autocomplete.cjs.js +1 -1
  23. package/dist/autocomplete.es.js +1 -1
  24. package/dist/button-BfYKNBmC.mjs +102 -0
  25. package/dist/button-BfYKNBmC.mjs.map +1 -0
  26. package/dist/button-DDYGuqZ0.js +2 -0
  27. package/dist/button-DDYGuqZ0.js.map +1 -0
  28. package/dist/button.cjs.js +1 -1
  29. package/dist/button.es.js +1 -1
  30. package/dist/{calendar-pMM0fKEu.js → calendar-CxkJMONO.js} +2 -2
  31. package/dist/{calendar-pMM0fKEu.js.map → calendar-CxkJMONO.js.map} +1 -1
  32. package/dist/{calendar-DDie8jSH.mjs → calendar-vALLklKV.mjs} +2 -2
  33. package/dist/{calendar-DDie8jSH.mjs.map → calendar-vALLklKV.mjs.map} +1 -1
  34. package/dist/calendar.cjs.js +1 -1
  35. package/dist/calendar.es.js +1 -1
  36. package/dist/{card-DiMVw06l.mjs → card-CkZQZOz1.mjs} +9 -9
  37. package/dist/{card-DiMVw06l.mjs.map → card-CkZQZOz1.mjs.map} +1 -1
  38. package/dist/{card-B512KHpr.js → card-VMa3cGCP.js} +2 -2
  39. package/dist/{card-B512KHpr.js.map → card-VMa3cGCP.js.map} +1 -1
  40. package/dist/card.cjs.js +1 -1
  41. package/dist/card.es.js +1 -1
  42. package/dist/{checkbox-LYzMiXu7.mjs → checkbox-D6qWgpWR.mjs} +8 -8
  43. package/dist/{checkbox-LYzMiXu7.mjs.map → checkbox-D6qWgpWR.mjs.map} +1 -1
  44. package/dist/checkbox.es.js +1 -1
  45. package/dist/{chip-group-aj1fdnjC.js → chip-group-B775zvKD.js} +2 -2
  46. package/dist/{chip-group-aj1fdnjC.js.map → chip-group-B775zvKD.js.map} +1 -1
  47. package/dist/{chip-group-CJVvfl_J.mjs → chip-group-xuOe7nL3.mjs} +3 -3
  48. package/dist/{chip-group-CJVvfl_J.mjs.map → chip-group-xuOe7nL3.mjs.map} +1 -1
  49. package/dist/chip-group.cjs.js +1 -1
  50. package/dist/chip-group.es.js +1 -1
  51. package/dist/components/button/src/button.d.ts +1 -2
  52. package/dist/components/button/src/button.d.ts.map +1 -1
  53. package/dist/components/date-field/src/date-field.d.ts.map +1 -1
  54. package/dist/components/stepper/src/stepper-button.d.ts.map +1 -1
  55. package/dist/components/table/src/draggable-table.d.ts.map +1 -1
  56. package/dist/components/table/src/table-settings-drawer.d.ts.map +1 -1
  57. package/dist/components/table/src/table-toolbar.d.ts.map +1 -1
  58. package/dist/components/tabs/src/tab-content.d.ts.map +1 -1
  59. package/dist/components/tabs/src/tabs.d.ts.map +1 -1
  60. package/dist/{container-Bw12NgHN.mjs → container-DLjBTB_w.mjs} +3 -3
  61. package/dist/{container-Bw12NgHN.mjs.map → container-DLjBTB_w.mjs.map} +1 -1
  62. package/dist/container.es.js +1 -1
  63. package/dist/{content-block-DUcjAZgG.mjs → content-block-BMOvlH7a.mjs} +6 -6
  64. package/dist/{content-block-DUcjAZgG.mjs.map → content-block-BMOvlH7a.mjs.map} +1 -1
  65. package/dist/{content-block-kzdUWgvH.js → content-block-Cd7xSE8t.js} +2 -2
  66. package/dist/{content-block-kzdUWgvH.js.map → content-block-Cd7xSE8t.js.map} +1 -1
  67. package/dist/content-block.cjs.js +1 -1
  68. package/dist/content-block.es.js +1 -1
  69. package/dist/{countdown-DxAGVUFI.mjs → countdown-DZ4IwkNy.mjs} +12 -12
  70. package/dist/{countdown-DxAGVUFI.mjs.map → countdown-DZ4IwkNy.mjs.map} +1 -1
  71. package/dist/countdown.es.js +1 -1
  72. package/dist/date-field-CORqon6B.js +2 -0
  73. package/dist/{date-field-CPiTZqa0.js.map → date-field-CORqon6B.js.map} +1 -1
  74. package/dist/{date-field-D_6iP2fC.mjs → date-field-CTJB8O0e.mjs} +325 -310
  75. package/dist/{date-field-D_6iP2fC.mjs.map → date-field-CTJB8O0e.mjs.map} +1 -1
  76. package/dist/date-field.cjs.js +1 -1
  77. package/dist/date-field.es.js +1 -1
  78. package/dist/{date-picker-BRnwwZv1.mjs → date-picker-CJcIJ5VL.mjs} +5 -5
  79. package/dist/{date-picker-BRnwwZv1.mjs.map → date-picker-CJcIJ5VL.mjs.map} +1 -1
  80. package/dist/{date-picker-DlJGggam.js → date-picker-Dv3W05Hf.js} +2 -2
  81. package/dist/{date-picker-DlJGggam.js.map → date-picker-Dv3W05Hf.js.map} +1 -1
  82. package/dist/date-picker.cjs.js +1 -1
  83. package/dist/date-picker.es.js +1 -1
  84. package/dist/{dismissable-chip-group-DsO2cZaF.js → dismissable-chip-group-CnziecOt.js} +2 -2
  85. package/dist/{dismissable-chip-group-DsO2cZaF.js.map → dismissable-chip-group-CnziecOt.js.map} +1 -1
  86. package/dist/{dismissable-chip-group-Bl0D18qM.mjs → dismissable-chip-group-ZCYOt1sB.mjs} +2 -2
  87. package/dist/{dismissable-chip-group-Bl0D18qM.mjs.map → dismissable-chip-group-ZCYOt1sB.mjs.map} +1 -1
  88. package/dist/dismissable-chip-group.cjs.js +1 -1
  89. package/dist/dismissable-chip-group.es.js +1 -1
  90. package/dist/{drawer-nBpCtIdI.js → drawer-Ce5LNpU2.js} +2 -2
  91. package/dist/{drawer-nBpCtIdI.js.map → drawer-Ce5LNpU2.js.map} +1 -1
  92. package/dist/{drawer-Boqmgh-i.mjs → drawer-DSFZ61OH.mjs} +14 -14
  93. package/dist/{drawer-Boqmgh-i.mjs.map → drawer-DSFZ61OH.mjs.map} +1 -1
  94. package/dist/drawer.cjs.js +1 -1
  95. package/dist/drawer.es.js +1 -1
  96. package/dist/{floating-ui.react-dom-0ol4sFzt.mjs → floating-ui.react-dom-gsHLgcoR.mjs} +5 -5
  97. package/dist/{floating-ui.react-dom-0ol4sFzt.mjs.map → floating-ui.react-dom-gsHLgcoR.mjs.map} +1 -1
  98. package/dist/{footer-DrjAwjuL.js → footer-BL0ewBZT.js} +2 -2
  99. package/dist/{footer-DrjAwjuL.js.map → footer-BL0ewBZT.js.map} +1 -1
  100. package/dist/{footer-DcWsihxS.mjs → footer-cH07Xqil.mjs} +5 -5
  101. package/dist/{footer-DcWsihxS.mjs.map → footer-cH07Xqil.mjs.map} +1 -1
  102. package/dist/footer.cjs.js +1 -1
  103. package/dist/footer.es.js +1 -1
  104. package/dist/heading-drD5ugCC.js +2 -0
  105. package/dist/{heading-DLCdW6gx.js.map → heading-drD5ugCC.js.map} +1 -1
  106. package/dist/heading-xwBuT_-9.mjs +75 -0
  107. package/dist/{heading-gqtQNo5n.mjs.map → heading-xwBuT_-9.mjs.map} +1 -1
  108. package/dist/heading.cjs.js +1 -1
  109. package/dist/heading.es.js +1 -1
  110. package/dist/{hero-banner-B8fRHxXc.mjs → hero-banner-CkSSlxTW.mjs} +5 -5
  111. package/dist/{hero-banner-B8fRHxXc.mjs.map → hero-banner-CkSSlxTW.mjs.map} +1 -1
  112. package/dist/{hero-banner-D3peC1NR.js → hero-banner-JFaqW20R.js} +2 -2
  113. package/dist/{hero-banner-D3peC1NR.js.map → hero-banner-JFaqW20R.js.map} +1 -1
  114. package/dist/hero-banner.cjs.js +1 -1
  115. package/dist/hero-banner.es.js +1 -1
  116. package/dist/library.cjs.js +1 -1
  117. package/dist/library.es.js +44 -44
  118. package/dist/{listbox-u6__DsLw.mjs → listbox-oDeP8FvH.mjs} +2 -2
  119. package/dist/{listbox-u6__DsLw.mjs.map → listbox-oDeP8FvH.mjs.map} +1 -1
  120. package/dist/listbox.es.js +1 -1
  121. package/dist/{modal-C2UQsW-g.mjs → modal-2ymCXTup.mjs} +19 -19
  122. package/dist/{modal-C2UQsW-g.mjs.map → modal-2ymCXTup.mjs.map} +1 -1
  123. package/dist/{modal-nyhf5zxG.js → modal-CXi2xez5.js} +2 -2
  124. package/dist/{modal-nyhf5zxG.js.map → modal-CXi2xez5.js.map} +1 -1
  125. package/dist/modal.cjs.js +1 -1
  126. package/dist/modal.es.js +1 -1
  127. package/dist/{notification-C32wHljA.mjs → notification-BFSOuDp8.mjs} +22 -22
  128. package/dist/{notification-C32wHljA.mjs.map → notification-BFSOuDp8.mjs.map} +1 -1
  129. package/dist/{notification-Bg1vQkQ3.js → notification-DdnI2rOh.js} +2 -2
  130. package/dist/{notification-Bg1vQkQ3.js.map → notification-DdnI2rOh.js.map} +1 -1
  131. package/dist/{notification-banner-BY2iZOIa.mjs → notification-banner-CQvBezAL.mjs} +3 -3
  132. package/dist/{notification-banner-BY2iZOIa.mjs.map → notification-banner-CQvBezAL.mjs.map} +1 -1
  133. package/dist/{notification-banner-C8XsBDTq.js → notification-banner-CT4ew8IQ.js} +2 -2
  134. package/dist/{notification-banner-C8XsBDTq.js.map → notification-banner-CT4ew8IQ.js.map} +1 -1
  135. package/dist/notification-banner.cjs.js +1 -1
  136. package/dist/notification-banner.es.js +1 -1
  137. package/dist/notification.cjs.js +1 -1
  138. package/dist/notification.es.js +1 -1
  139. package/dist/{pagination-CVVCAQ65.mjs → pagination-BdCjh1Pi.mjs} +2 -2
  140. package/dist/{pagination-CVVCAQ65.mjs.map → pagination-BdCjh1Pi.mjs.map} +1 -1
  141. package/dist/pagination.es.js +1 -1
  142. package/dist/{paragraph-DNtj7OLr.mjs → paragraph-Ci50OF1u.mjs} +3 -3
  143. package/dist/{paragraph-DNtj7OLr.mjs.map → paragraph-Ci50OF1u.mjs.map} +1 -1
  144. package/dist/paragraph.es.js +1 -1
  145. package/dist/{popover-B1BgSoQx.js → popover-D3qWbbU4.js} +2 -2
  146. package/dist/popover-D3qWbbU4.js.map +1 -0
  147. package/dist/{popover-DBMI9Jy1.mjs → popover-ZeQKmyEb.mjs} +25 -25
  148. package/dist/popover-ZeQKmyEb.mjs.map +1 -0
  149. package/dist/popover.cjs.js +1 -1
  150. package/dist/popover.es.js +1 -1
  151. package/dist/{product-card-rfpJbzzV.mjs → product-card-BU1ThhCx.mjs} +12 -12
  152. package/dist/{product-card-rfpJbzzV.mjs.map → product-card-BU1ThhCx.mjs.map} +1 -1
  153. package/dist/{product-card-DOBHGAa2.js → product-card-CNBegEBW.js} +2 -2
  154. package/dist/{product-card-DOBHGAa2.js.map → product-card-CNBegEBW.js.map} +1 -1
  155. package/dist/product-card.cjs.js +1 -1
  156. package/dist/product-card.es.js +1 -1
  157. package/dist/{promotion-card-C7B5ZJaB.js → promotion-card-CXNhskRl.js} +2 -2
  158. package/dist/{promotion-card-C7B5ZJaB.js.map → promotion-card-CXNhskRl.js.map} +1 -1
  159. package/dist/{promotion-card-wGGt75eI.mjs → promotion-card-_bPyVr9t.mjs} +33 -33
  160. package/dist/{promotion-card-wGGt75eI.mjs.map → promotion-card-_bPyVr9t.mjs.map} +1 -1
  161. package/dist/promotion-card.cjs.js +1 -1
  162. package/dist/promotion-card.es.js +1 -1
  163. package/dist/purpur.css +1 -1
  164. package/dist/{quantity-selector-DPOTlMSq.js → quantity-selector-CjSAaj7d.js} +2 -2
  165. package/dist/{quantity-selector-DPOTlMSq.js.map → quantity-selector-CjSAaj7d.js.map} +1 -1
  166. package/dist/{quantity-selector-_VcZYLjR.mjs → quantity-selector-HvyYSKah.mjs} +5 -5
  167. package/dist/{quantity-selector-_VcZYLjR.mjs.map → quantity-selector-HvyYSKah.mjs.map} +1 -1
  168. package/dist/quantity-selector.cjs.js +1 -1
  169. package/dist/quantity-selector.es.js +1 -1
  170. package/dist/{radio-button-group-CZ_FnVAi.js → radio-button-group-BaFpGAcD.js} +2 -2
  171. package/dist/{radio-button-group-CZ_FnVAi.js.map → radio-button-group-BaFpGAcD.js.map} +1 -1
  172. package/dist/{radio-button-group-BnCPcmSN.mjs → radio-button-group-CFqPsu5A.mjs} +5 -5
  173. package/dist/{radio-button-group-BnCPcmSN.mjs.map → radio-button-group-CFqPsu5A.mjs.map} +1 -1
  174. package/dist/radio-button-group.cjs.js +1 -1
  175. package/dist/radio-button-group.es.js +1 -1
  176. package/dist/{radio-card-group-DkaMcmen.mjs → radio-card-group-BlRZBa-9.mjs} +16 -16
  177. package/dist/{radio-card-group-DkaMcmen.mjs.map → radio-card-group-BlRZBa-9.mjs.map} +1 -1
  178. package/dist/{radio-card-group-BT5pV3tA.js → radio-card-group-sYcfDPJq.js} +2 -2
  179. package/dist/{radio-card-group-BT5pV3tA.js.map → radio-card-group-sYcfDPJq.js.map} +1 -1
  180. package/dist/radio-card-group.cjs.js +1 -1
  181. package/dist/radio-card-group.es.js +1 -1
  182. package/dist/rich-text.cjs.js +1 -1
  183. package/dist/rich-text.es.js +1 -1
  184. package/dist/scss/heading.mixins.scss +1 -1
  185. package/dist/{search-field-DH0xeW_J.mjs → search-field-BOmCVr5b.mjs} +11 -11
  186. package/dist/{search-field-DH0xeW_J.mjs.map → search-field-BOmCVr5b.mjs.map} +1 -1
  187. package/dist/{search-field-CxX4BBcg.js → search-field-CanOlkIY.js} +2 -2
  188. package/dist/{search-field-CxX4BBcg.js.map → search-field-CanOlkIY.js.map} +1 -1
  189. package/dist/search-field.cjs.js +1 -1
  190. package/dist/search-field.es.js +1 -1
  191. package/dist/{stepper-BfIbJwZn.mjs → stepper-D7T0wed7.mjs} +68 -71
  192. package/dist/stepper-D7T0wed7.mjs.map +1 -0
  193. package/dist/stepper-DYjJgEHL.js +2 -0
  194. package/dist/stepper-DYjJgEHL.js.map +1 -0
  195. package/dist/stepper.cjs.js +1 -1
  196. package/dist/stepper.es.js +1 -1
  197. package/dist/{table-DvcpczWf.mjs → table-B4pts_r4.mjs} +181 -179
  198. package/dist/{table-DvcpczWf.mjs.map → table-B4pts_r4.mjs.map} +1 -1
  199. package/dist/{table-BNeo_B1h.js → table-Bv_BISXV.js} +4 -4
  200. package/dist/{table-BNeo_B1h.js.map → table-Bv_BISXV.js.map} +1 -1
  201. package/dist/table.cjs.js +1 -1
  202. package/dist/table.es.js +1 -1
  203. package/dist/tabs-Bye5lgZ1.mjs +424 -0
  204. package/dist/tabs-Bye5lgZ1.mjs.map +1 -0
  205. package/dist/tabs-D-nfZHIA.js +2 -0
  206. package/dist/tabs-D-nfZHIA.js.map +1 -0
  207. package/dist/tabs.cjs.js +1 -1
  208. package/dist/tabs.es.js +1 -1
  209. package/dist/{text-area-Cb9Hm2Z9.mjs → text-area-CpYWt99s.mjs} +3 -3
  210. package/dist/{text-area-Cb9Hm2Z9.mjs.map → text-area-CpYWt99s.mjs.map} +1 -1
  211. package/dist/text-area.es.js +1 -1
  212. package/dist/{text-field-PKAaXO1N.mjs → text-field-5rIuW8gc.mjs} +2 -2
  213. package/dist/{text-field-PKAaXO1N.mjs.map → text-field-5rIuW8gc.mjs.map} +1 -1
  214. package/dist/{text-field-B8a-NKm4.js → text-field-Xt6T3zjO.js} +2 -2
  215. package/dist/{text-field-B8a-NKm4.js.map → text-field-Xt6T3zjO.js.map} +1 -1
  216. package/dist/text-field.cjs.js +1 -1
  217. package/dist/text-field.es.js +1 -1
  218. package/dist/theme.es.js +2 -2
  219. package/dist/{toggle-Cezg5MUc.mjs → toggle-D23x1wWk.mjs} +9 -9
  220. package/dist/{toggle-Cezg5MUc.mjs.map → toggle-D23x1wWk.mjs.map} +1 -1
  221. package/dist/toggle.es.js +1 -1
  222. package/dist/tokens.es.js +3 -3
  223. package/dist/{tooltip-DXi7ikUT.mjs → tooltip-DkwyNxrQ.mjs} +12 -12
  224. package/dist/{tooltip-DXi7ikUT.mjs.map → tooltip-DkwyNxrQ.mjs.map} +1 -1
  225. package/dist/{tooltip-CLQLxoaf.js → tooltip-svlZkXBs.js} +2 -2
  226. package/dist/{tooltip-CLQLxoaf.js.map → tooltip-svlZkXBs.js.map} +1 -1
  227. package/dist/tooltip.cjs.js +1 -1
  228. package/dist/tooltip.es.js +1 -1
  229. package/dist/{useColorScheme-DRQcbSog.mjs → useColorScheme-9rgSgG0N.mjs} +2 -2
  230. package/dist/{useColorScheme-DRQcbSog.mjs.map → useColorScheme-9rgSgG0N.mjs.map} +1 -1
  231. package/dist/{variables-91UvS2rU.mjs → variables-BVgnpUH9.mjs} +253 -253
  232. package/dist/{variables-91UvS2rU.mjs.map → variables-BVgnpUH9.mjs.map} +1 -1
  233. package/dist/{variables-BSsIx39i.mjs → variables-DkCN2x27.mjs} +7 -7
  234. package/dist/{variables-BSsIx39i.mjs.map → variables-DkCN2x27.mjs.map} +1 -1
  235. package/dist/{variables-BUfnQw6H.mjs → variables-Dr3Hsdn-.mjs} +9 -9
  236. package/dist/{variables-BUfnQw6H.mjs.map → variables-Dr3Hsdn-.mjs.map} +1 -1
  237. package/package.json +27 -27
  238. package/scripts/generate.mts +4 -1
  239. package/vite-plugin-generate-components-metadata.js +4 -1
  240. package/dist/button-ChYUPi2k.js +0 -2
  241. package/dist/button-ChYUPi2k.js.map +0 -1
  242. package/dist/button-DBX_tvfJ.mjs +0 -105
  243. package/dist/button-DBX_tvfJ.mjs.map +0 -1
  244. package/dist/date-field-CPiTZqa0.js +0 -2
  245. package/dist/heading-DLCdW6gx.js +0 -2
  246. package/dist/heading-gqtQNo5n.mjs +0 -75
  247. package/dist/popover-B1BgSoQx.js.map +0 -1
  248. package/dist/popover-DBMI9Jy1.mjs.map +0 -1
  249. package/dist/stepper-B248FwO-.js +0 -2
  250. package/dist/stepper-B248FwO-.js.map +0 -1
  251. package/dist/stepper-BfIbJwZn.mjs.map +0 -1
  252. package/dist/tabs-CfHd4UQ2.js +0 -2
  253. package/dist/tabs-CfHd4UQ2.js.map +0 -1
  254. package/dist/tabs-CoXMAwMx.mjs +0 -396
  255. package/dist/tabs-CoXMAwMx.mjs.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";const a=require("react/jsx-runtime"),_=require("react"),I=require("./heading-DLCdW6gx.js"),$=require("./index-BbtRr5Q6.js"),O=require("./bind-DeUYJ6m9.js"),C=require("./paragraph-BsI53OR0.js"),v=require("./skeleton-BU0KtWIM.js"),y={"purpur-radio-card-group":"_purpur-radio-card-group_19msf_1","purpur-radio-card-group--vertical":"_purpur-radio-card-group--vertical_19msf_5","purpur-radio-card-group--horizontal":"_purpur-radio-card-group--horizontal_19msf_9","purpur-radio-card-group--radio-left":"_purpur-radio-card-group--radio-left_19msf_18","purpur-radio-card-group__item":"_purpur-radio-card-group__item_19msf_18","purpur-radio-card-group__item-bottom-container":"_purpur-radio-card-group__item-bottom-container_19msf_21","purpur-radio-card-group__item-top-container":"_purpur-radio-card-group__item-top-container_19msf_24","purpur-radio-card-group__container":"_purpur-radio-card-group__container_19msf_35","purpur-radio-card-group__item-container":"_purpur-radio-card-group__item-container_19msf_42","purpur-radio-card-group__item-radio":"_purpur-radio-card-group__item-radio_19msf_77","purpur-radio-card-group__item-content":"_purpur-radio-card-group__item-content_19msf_108","purpur-radio-card-group__item-title":"_purpur-radio-card-group__item-title_19msf_121","purpur-radio-card-group__item-indicator":"_purpur-radio-card-group__item-indicator_19msf_141","purpur-radio-card-group__item-image-container":"_purpur-radio-card-group__item-image-container_19msf_151","purpur-radio-card-group__item-image":"_purpur-radio-card-group__item-image_19msf_151","purpur-radio-card-group__item-image--loaded":"_purpur-radio-card-group__item-image--loaded_19msf_164","purpur-radio-card-group__item-image-placeholder":"_purpur-radio-card-group__item-image-placeholder_19msf_167","purpur-radio-card-group__item-image-placeholder--loaded":"_purpur-radio-card-group__item-image-placeholder--loaded_19msf_172","purpur-radio-card-group__item-children":"_purpur-radio-card-group__item-children_19msf_175"},i=O.c.bind(y),h="purpur-radio-card-group__item-image",A=r=>!!r?.src&&!!r.altText,q=({src:r,altText:p,noPlaceholder:m,loading:e="lazy",["data-testid"]:o})=>{const[s,c]=_.useState(!1),l=()=>c(!0),u=i(h,{[`${h}--loaded`]:s}),g=i(`${h}-placeholder`,{[`${h}-placeholder--loaded`]:s});return a.jsxs(a.Fragment,{children:[a.jsx("img",{"data-testid":o,className:u,src:r,alt:p,loading:e,onLoad:l}),!m&&a.jsx(v.Skeleton,{className:g})]})},t="purpur-radio-card-group__item",R=(r,{disabled:p})=>typeof r=="function"?r({disabled:p}):r,N=_.forwardRef(({title:r,...p},m)=>{const{["data-testid"]:e,body:o,children:s,disabled:c,id:l,image:u,value:g}=p,d={...p};return a.jsxs("div",{className:i(`${t}-container`),ref:m,children:[a.jsxs($.Item2,{className:i(t),"data-testid":e,disabled:c,id:l,value:g,children:[u&&a.jsx("span",{className:i(`${t}-image-container`),children:A(u)?a.jsx(q,{...u,"data-testid":e&&`${e}-image`}):R(u,d)}),a.jsxs("span",{className:i(`${t}-content`),children:[a.jsxs("span",{className:i(`${t}-top-container`),children:[typeof r=="string"?a.jsx(C.Paragraph,{className:i(`${t}-title`),"data-testid":e&&`${e}-title`,variant:"paragraph-100",disabled:c,children:r}):R(r,d),a.jsx("span",{className:i(`${t}-radio`),children:a.jsx($.Indicator,{className:i(`${t}-indicator`)})})]}),o&&a.jsx("span",{className:i(`${t}-bottom-container`),children:typeof o=="string"?a.jsx(C.Paragraph,{"data-testid":e&&`${e}-body`,variant:"paragraph-100",disabled:c,children:o}):R(o,d)})]})]}),s]})});N.displayName="RadioCardItem";const D=r=>_.isValidElement(r)&&r?.type===N,P=["horizontal","vertical"],E=["right","left"],f="purpur-radio-card-group",j=_.forwardRef(({"data-testid":r,"aria-labelledby":p,children:m,className:e,items:o,heading:s,headingTag:c="h2",loop:l=!0,orientation:u="vertical",radioPosition:g="right",...d},b)=>{const x=_.Children.toArray(m).filter(D);return a.jsxs("div",{className:i(e,`${f}__container`),ref:b,children:[s&&a.jsxs(I.Heading,{"data-testid":r?`${r}-heading`:void 0,id:`${d.id}-heading`,tag:c,variant:"subsection-100",children:[d.required&&a.jsx("span",{"aria-hidden":!0,children:"* "}),s]}),(!!o?.length||x.length)&&a.jsxs($.Root2,{...d,"aria-labelledby":p||(s?`${d.id}-heading`:void 0),className:i(f,`${f}--${u}`,`${f}--radio-${g}`),"data-testid":r,loop:l,children:[o?.map(n=>a.jsx(N,{...n,disabled:n.disabled||d.disabled,"data-testid":r?`${r}-item`:void 0},n.id)),_.Children.map(x,n=>_.cloneElement(n,{disabled:n.props.disabled||d.disabled}))]})]})});j.displayName="RadioCardGroup";exports.RADIO_CARD_GROUP_ORIENTATION=P;exports.RADIO_POSITION=E;exports.RadioCardGroup=j;exports.RadioCardItem=N;
2
- //# sourceMappingURL=radio-card-group-BT5pV3tA.js.map
1
+ "use strict";const a=require("react/jsx-runtime"),_=require("react"),I=require("./heading-drD5ugCC.js"),$=require("./index-BbtRr5Q6.js"),O=require("./bind-DeUYJ6m9.js"),C=require("./paragraph-BsI53OR0.js"),v=require("./skeleton-BU0KtWIM.js"),y={"purpur-radio-card-group":"_purpur-radio-card-group_19msf_1","purpur-radio-card-group--vertical":"_purpur-radio-card-group--vertical_19msf_5","purpur-radio-card-group--horizontal":"_purpur-radio-card-group--horizontal_19msf_9","purpur-radio-card-group--radio-left":"_purpur-radio-card-group--radio-left_19msf_18","purpur-radio-card-group__item":"_purpur-radio-card-group__item_19msf_18","purpur-radio-card-group__item-bottom-container":"_purpur-radio-card-group__item-bottom-container_19msf_21","purpur-radio-card-group__item-top-container":"_purpur-radio-card-group__item-top-container_19msf_24","purpur-radio-card-group__container":"_purpur-radio-card-group__container_19msf_35","purpur-radio-card-group__item-container":"_purpur-radio-card-group__item-container_19msf_42","purpur-radio-card-group__item-radio":"_purpur-radio-card-group__item-radio_19msf_77","purpur-radio-card-group__item-content":"_purpur-radio-card-group__item-content_19msf_108","purpur-radio-card-group__item-title":"_purpur-radio-card-group__item-title_19msf_121","purpur-radio-card-group__item-indicator":"_purpur-radio-card-group__item-indicator_19msf_141","purpur-radio-card-group__item-image-container":"_purpur-radio-card-group__item-image-container_19msf_151","purpur-radio-card-group__item-image":"_purpur-radio-card-group__item-image_19msf_151","purpur-radio-card-group__item-image--loaded":"_purpur-radio-card-group__item-image--loaded_19msf_164","purpur-radio-card-group__item-image-placeholder":"_purpur-radio-card-group__item-image-placeholder_19msf_167","purpur-radio-card-group__item-image-placeholder--loaded":"_purpur-radio-card-group__item-image-placeholder--loaded_19msf_172","purpur-radio-card-group__item-children":"_purpur-radio-card-group__item-children_19msf_175"},i=O.c.bind(y),h="purpur-radio-card-group__item-image",A=r=>!!r?.src&&!!r.altText,q=({src:r,altText:p,noPlaceholder:m,loading:e="lazy",["data-testid"]:o})=>{const[s,c]=_.useState(!1),l=()=>c(!0),u=i(h,{[`${h}--loaded`]:s}),g=i(`${h}-placeholder`,{[`${h}-placeholder--loaded`]:s});return a.jsxs(a.Fragment,{children:[a.jsx("img",{"data-testid":o,className:u,src:r,alt:p,loading:e,onLoad:l}),!m&&a.jsx(v.Skeleton,{className:g})]})},t="purpur-radio-card-group__item",R=(r,{disabled:p})=>typeof r=="function"?r({disabled:p}):r,N=_.forwardRef(({title:r,...p},m)=>{const{["data-testid"]:e,body:o,children:s,disabled:c,id:l,image:u,value:g}=p,d={...p};return a.jsxs("div",{className:i(`${t}-container`),ref:m,children:[a.jsxs($.Item2,{className:i(t),"data-testid":e,disabled:c,id:l,value:g,children:[u&&a.jsx("span",{className:i(`${t}-image-container`),children:A(u)?a.jsx(q,{...u,"data-testid":e&&`${e}-image`}):R(u,d)}),a.jsxs("span",{className:i(`${t}-content`),children:[a.jsxs("span",{className:i(`${t}-top-container`),children:[typeof r=="string"?a.jsx(C.Paragraph,{className:i(`${t}-title`),"data-testid":e&&`${e}-title`,variant:"paragraph-100",disabled:c,children:r}):R(r,d),a.jsx("span",{className:i(`${t}-radio`),children:a.jsx($.Indicator,{className:i(`${t}-indicator`)})})]}),o&&a.jsx("span",{className:i(`${t}-bottom-container`),children:typeof o=="string"?a.jsx(C.Paragraph,{"data-testid":e&&`${e}-body`,variant:"paragraph-100",disabled:c,children:o}):R(o,d)})]})]}),s]})});N.displayName="RadioCardItem";const D=r=>_.isValidElement(r)&&r?.type===N,P=["horizontal","vertical"],E=["right","left"],f="purpur-radio-card-group",j=_.forwardRef(({"data-testid":r,"aria-labelledby":p,children:m,className:e,items:o,heading:s,headingTag:c="h2",loop:l=!0,orientation:u="vertical",radioPosition:g="right",...d},b)=>{const x=_.Children.toArray(m).filter(D);return a.jsxs("div",{className:i(e,`${f}__container`),ref:b,children:[s&&a.jsxs(I.Heading,{"data-testid":r?`${r}-heading`:void 0,id:`${d.id}-heading`,tag:c,variant:"subsection-100",children:[d.required&&a.jsx("span",{"aria-hidden":!0,children:"* "}),s]}),(!!o?.length||x.length)&&a.jsxs($.Root2,{...d,"aria-labelledby":p||(s?`${d.id}-heading`:void 0),className:i(f,`${f}--${u}`,`${f}--radio-${g}`),"data-testid":r,loop:l,children:[o?.map(n=>a.jsx(N,{...n,disabled:n.disabled||d.disabled,"data-testid":r?`${r}-item`:void 0},n.id)),_.Children.map(x,n=>_.cloneElement(n,{disabled:n.props.disabled||d.disabled}))]})]})});j.displayName="RadioCardGroup";exports.RADIO_CARD_GROUP_ORIENTATION=P;exports.RADIO_POSITION=E;exports.RadioCardGroup=j;exports.RadioCardItem=N;
2
+ //# sourceMappingURL=radio-card-group-sYcfDPJq.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio-card-group-BT5pV3tA.js","sources":["../../../components/radio-card-group/src/classnames.ts","../../../components/radio-card-group/src/radio-card-item-image.tsx","../../../components/radio-card-group/src/radio-card-item.tsx","../../../components/radio-card-group/src/radio-card-group.tsx"],"sourcesContent":["import c from \"classnames/bind\";\n\nimport styles from \"./radio-card-group.module.scss\";\nexport const cx = c.bind(styles);\n","import React from \"react\";\nimport { useState } from \"react\";\nimport { Skeleton } from \"@purpur/skeleton\";\n\nimport { cx } from \"./classnames\";\n\nexport type RadioCardImageProps = {\n [\"data-testid\"]?: string;\n altText: string;\n loading?: \"lazy\" | \"eager\";\n noPlaceholder?: boolean;\n src: string;\n};\n\nconst rootClassName = \"purpur-radio-card-group__item-image\";\n\nexport const isRadioCardItemImageProps = (\n imageProps?: RadioCardImageProps | unknown\n): imageProps is RadioCardImageProps =>\n !!(imageProps as RadioCardImageProps)?.src && !!(imageProps as RadioCardImageProps).altText;\n\nexport const RadioCardImage = ({\n src,\n altText,\n noPlaceholder,\n loading = \"lazy\",\n [\"data-testid\"]: dataTestid,\n}: RadioCardImageProps) => {\n const [isLoaded, setIsLoaded] = useState(false);\n const onLoad = () => setIsLoaded(true);\n\n const imageClassName = cx(rootClassName, {\n [`${rootClassName}--loaded`]: isLoaded,\n });\n\n const placeholderClassName = cx(`${rootClassName}-placeholder`, {\n [`${rootClassName}-placeholder--loaded`]: isLoaded,\n });\n\n return (\n <>\n <img\n data-testid={dataTestid}\n className={imageClassName}\n src={src}\n alt={altText}\n loading={loading}\n onLoad={onLoad}\n />\n {!noPlaceholder && <Skeleton className={placeholderClassName} />}\n </>\n );\n};\n","import React, { forwardRef, isValidElement, type ReactElement, type ReactNode } from \"react\";\nimport type { BaseProps } from \"@purpur/common-types\";\nimport { Paragraph } from \"@purpur/paragraph\";\nimport * as RadixRadioGroup from \"@radix-ui/react-radio-group\";\n\nimport { cx } from \"./classnames\";\nimport {\n isRadioCardItemImageProps,\n RadioCardImage,\n type RadioCardImageProps,\n} from \"./radio-card-item-image\";\n\nconst rootClassName = \"purpur-radio-card-group__item\";\n\ntype CustomElement = ((props: { disabled?: boolean }) => ReactNode) | ReactNode;\ntype NonNullCustomElement =\n | ((props: { disabled?: boolean }) => NonNullable<ReactNode>)\n | NonNullable<ReactNode>;\n\nexport type RadioCardItemProps = Omit<BaseProps, \"id\" | \"title\"> & {\n /**\n * `string | ReactNode | (props: { disabled?: boolean }) => ReactNode`\n */\n body?: string | CustomElement;\n disabled?: boolean;\n id: string;\n /**\n * The radio image.\n *\n union = {\n \"data-testid\"?: string | undefined;\n altText: string;\n loading?: \"lazy\" | \"eager\" | undefined;\n noPlaceholder?: boolean | undefined;\n src: string;\n } |\n ((props: {\n disabled?: boolean;\n }) => ReactNode) | React.ReactNode\n * */\n image?: RadioCardImageProps | CustomElement;\n value: string;\n /**\n * `union = string | Omit<ReactNode, \"undefined\" | \"null\">`\n */\n title: string | NonNullCustomElement;\n};\n\nconst renderCustomElement = (\n element: CustomElement | NonNullCustomElement,\n { disabled }: Pick<RadioCardItemProps, \"disabled\">\n) => (typeof element === \"function\" ? element({ disabled }) : element);\n\nexport const RadioCardItem = forwardRef<HTMLDivElement, RadioCardItemProps>(\n ({ title, ...propsx }, ref) => {\n const { [\"data-testid\"]: dataTestid, body, children, disabled, id, image, value } = propsx;\n\n const props = { title, ...propsx };\n\n return (\n <div className={cx(`${rootClassName}-container`)} ref={ref}>\n <RadixRadioGroup.Item\n className={cx(rootClassName)}\n data-testid={dataTestid}\n disabled={disabled}\n id={id}\n value={value}\n >\n {image && (\n <span className={cx(`${rootClassName}-image-container`)}>\n {isRadioCardItemImageProps(image) ? (\n <RadioCardImage {...image} data-testid={dataTestid && `${dataTestid}-image`} />\n ) : (\n renderCustomElement(image, props)\n )}\n </span>\n )}\n <span className={cx(`${rootClassName}-content`)}>\n <span className={cx(`${rootClassName}-top-container`)}>\n {typeof title === \"string\" ? (\n <Paragraph\n className={cx(`${rootClassName}-title`)}\n data-testid={dataTestid && `${dataTestid}-title`}\n variant=\"paragraph-100\"\n disabled={disabled}\n >\n {title}\n </Paragraph>\n ) : (\n renderCustomElement(title, props)\n )}\n <span className={cx(`${rootClassName}-radio`)}>\n <RadixRadioGroup.Indicator className={cx(`${rootClassName}-indicator`)} />\n </span>\n </span>\n {body && (\n <span className={cx(`${rootClassName}-bottom-container`)}>\n {typeof body === \"string\" ? (\n <Paragraph\n data-testid={dataTestid && `${dataTestid}-body`}\n variant=\"paragraph-100\"\n disabled={disabled}\n >\n {body}\n </Paragraph>\n ) : (\n renderCustomElement(body, props)\n )}\n </span>\n )}\n </span>\n </RadixRadioGroup.Item>\n {children}\n </div>\n );\n }\n);\n\nRadioCardItem.displayName = \"RadioCardItem\";\n\nexport const isRadioCardItem = (child?: ReactNode): child is ReactElement<RadioCardItemProps> =>\n isValidElement<RadioCardItemProps>(child) && child?.type === RadioCardItem;\n","import React, { Children, cloneElement, forwardRef, type ReactNode, type Ref } from \"react\";\nimport { Heading, type HeadingTagType } from \"@purpur/heading\";\nimport * as RadixRadioGroup from \"@radix-ui/react-radio-group\";\n\nimport { cx } from \"./classnames\";\nimport { isRadioCardItem, RadioCardItem, type RadioCardItemProps } from \"./radio-card-item\";\n\nexport type RadioCardGroupItem = RadioCardItemProps & { ref?: Ref<HTMLDivElement> };\nexport const RADIO_CARD_GROUP_ORIENTATION = [\"horizontal\", \"vertical\"] as const;\nexport const RADIO_POSITION = [\"right\", \"left\"] as const;\n\ntype StylingProps = Pick<React.HTMLAttributes<HTMLElement>, \"className\" | \"style\">;\n\nexport type RadioCardGroupProps = StylingProps & {\n /**\n * To use when no heading is given.\n * */\n [\"aria-label\"]?: string;\n /**\n * To use with custom label.\n * */\n [\"aria-labelledby\"]?: string;\n [\"data-testid\"]?: string;\n /**\n * The value of the radio card item that should be checked when initially rendered. Use when you do not need to control the state of the radio items.\n * */\n defaultValue?: string;\n /**\n * When true, prevents the user from interacting with radio card items.\n * */\n disabled?: boolean;\n /**\n * ID of the radio card group container.\n * */\n id: string;\n /**\n * The radio card items.\n * */\n items?: RadioCardGroupItem[];\n /**\n * Renders above the radio card group as a heading\n * */\n heading?: string;\n /**\n * Changes heading level for heading.\n */\n headingTag?: HeadingTagType;\n /**\n * When true, keyboard navigation will loop from last item to first, and vice versa.\n * */\n loop?: boolean;\n /**\n * The name of the group. Submitted with its owning form as part of a name/value pair.\n * */\n name?: string;\n /**\n * Event handler called when the value changes.\n * */\n onValueChange?: (value: string) => void;\n /**\n * Set to stack cards horizontally or vertically. When `horizontal`, the min card width with is 100% when container is sm, and `--purpur-breakpoint-lg` / 4 when the container is md or larger.\n * */\n orientation?: (typeof RADIO_CARD_GROUP_ORIENTATION)[number];\n /**\n * The position if the radio in the card items.\n * */\n radioPosition?: (typeof RADIO_POSITION)[number];\n /**\n * When true, indicates that the user must check a radio card item before the owning form can be submitted.\n * */\n required?: boolean;\n /**\n * The controlled value of the radio card item to check. Should be used in conjunction with onValueChange.\n * */\n value?: string;\n /**\n * Will only render given RadioCardItems.\n * */\n children?: ReactNode;\n};\n\nconst rootClassName = \"purpur-radio-card-group\";\n\nexport const RadioCardGroup = forwardRef<HTMLDivElement, RadioCardGroupProps>(\n (\n {\n \"data-testid\": dataTestId,\n \"aria-labelledby\": ariaLabelledby,\n children,\n className,\n items,\n heading,\n headingTag = \"h2\",\n loop = true,\n orientation = \"vertical\",\n radioPosition = \"right\",\n ...props\n },\n ref\n ) => {\n const radioCardItemChildren = Children.toArray(children).filter(isRadioCardItem);\n\n return (\n <div className={cx(className, `${rootClassName}__container`)} ref={ref}>\n {heading && (\n <Heading\n data-testid={dataTestId ? `${dataTestId}-heading` : undefined}\n id={`${props.id}-heading`}\n tag={headingTag}\n variant=\"subsection-100\"\n >\n {props.required && <span aria-hidden>{\"* \"}</span>}\n {heading}\n </Heading>\n )}\n {(!!items?.length || radioCardItemChildren.length) && (\n <RadixRadioGroup.Root\n {...props}\n aria-labelledby={ariaLabelledby || (heading ? `${props.id}-heading` : undefined)}\n className={cx(\n rootClassName,\n `${rootClassName}--${orientation}`,\n `${rootClassName}--radio-${radioPosition}`\n )}\n data-testid={dataTestId}\n loop={loop}\n >\n {items?.map((item) => (\n <RadioCardItem\n key={item.id}\n {...item}\n disabled={item.disabled || props.disabled}\n data-testid={dataTestId ? `${dataTestId}-item` : undefined}\n />\n ))}\n {Children.map(radioCardItemChildren, (child) =>\n cloneElement(child, { disabled: child.props.disabled || props.disabled })\n )}\n </RadixRadioGroup.Root>\n )}\n </div>\n );\n }\n);\n\nRadioCardGroup.displayName = \"RadioCardGroup\";\n\n// RadioCardItem must be exported after `RadioCardGroup` for the Storybook controls to be generated from RadioCardGroup props\nexport type { RadioCardItemProps } from \"./radio-card-item\";\nexport { RadioCardItem } from \"./radio-card-item\";\n"],"names":["cx","c","styles","rootClassName","isRadioCardItemImageProps","imageProps","RadioCardImage","src","altText","noPlaceholder","loading","dataTestid","isLoaded","setIsLoaded","useState","onLoad","imageClassName","placeholderClassName","jsxs","Fragment","jsx","Skeleton","renderCustomElement","element","disabled","RadioCardItem","forwardRef","title","propsx","ref","body","children","id","image","value","props","RadixRadioGroup.Item","Paragraph","RadixRadioGroup.Indicator","isRadioCardItem","child","isValidElement","RADIO_CARD_GROUP_ORIENTATION","RADIO_POSITION","RadioCardGroup","dataTestId","ariaLabelledby","className","items","heading","headingTag","loop","orientation","radioPosition","radioCardItemChildren","Children","Heading","RadixRadioGroup.Root","item","cloneElement"],"mappings":"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"}
1
+ {"version":3,"file":"radio-card-group-sYcfDPJq.js","sources":["../../../components/radio-card-group/src/classnames.ts","../../../components/radio-card-group/src/radio-card-item-image.tsx","../../../components/radio-card-group/src/radio-card-item.tsx","../../../components/radio-card-group/src/radio-card-group.tsx"],"sourcesContent":["import c from \"classnames/bind\";\n\nimport styles from \"./radio-card-group.module.scss\";\nexport const cx = c.bind(styles);\n","import React from \"react\";\nimport { useState } from \"react\";\nimport { Skeleton } from \"@purpur/skeleton\";\n\nimport { cx } from \"./classnames\";\n\nexport type RadioCardImageProps = {\n [\"data-testid\"]?: string;\n altText: string;\n loading?: \"lazy\" | \"eager\";\n noPlaceholder?: boolean;\n src: string;\n};\n\nconst rootClassName = \"purpur-radio-card-group__item-image\";\n\nexport const isRadioCardItemImageProps = (\n imageProps?: RadioCardImageProps | unknown\n): imageProps is RadioCardImageProps =>\n !!(imageProps as RadioCardImageProps)?.src && !!(imageProps as RadioCardImageProps).altText;\n\nexport const RadioCardImage = ({\n src,\n altText,\n noPlaceholder,\n loading = \"lazy\",\n [\"data-testid\"]: dataTestid,\n}: RadioCardImageProps) => {\n const [isLoaded, setIsLoaded] = useState(false);\n const onLoad = () => setIsLoaded(true);\n\n const imageClassName = cx(rootClassName, {\n [`${rootClassName}--loaded`]: isLoaded,\n });\n\n const placeholderClassName = cx(`${rootClassName}-placeholder`, {\n [`${rootClassName}-placeholder--loaded`]: isLoaded,\n });\n\n return (\n <>\n <img\n data-testid={dataTestid}\n className={imageClassName}\n src={src}\n alt={altText}\n loading={loading}\n onLoad={onLoad}\n />\n {!noPlaceholder && <Skeleton className={placeholderClassName} />}\n </>\n );\n};\n","import React, { forwardRef, isValidElement, type ReactElement, type ReactNode } from \"react\";\nimport type { BaseProps } from \"@purpur/common-types\";\nimport { Paragraph } from \"@purpur/paragraph\";\nimport * as RadixRadioGroup from \"@radix-ui/react-radio-group\";\n\nimport { cx } from \"./classnames\";\nimport {\n isRadioCardItemImageProps,\n RadioCardImage,\n type RadioCardImageProps,\n} from \"./radio-card-item-image\";\n\nconst rootClassName = \"purpur-radio-card-group__item\";\n\ntype CustomElement = ((props: { disabled?: boolean }) => ReactNode) | ReactNode;\ntype NonNullCustomElement =\n | ((props: { disabled?: boolean }) => NonNullable<ReactNode>)\n | NonNullable<ReactNode>;\n\nexport type RadioCardItemProps = Omit<BaseProps, \"id\" | \"title\"> & {\n /**\n * `string | ReactNode | (props: { disabled?: boolean }) => ReactNode`\n */\n body?: string | CustomElement;\n disabled?: boolean;\n id: string;\n /**\n * The radio image.\n *\n union = {\n \"data-testid\"?: string | undefined;\n altText: string;\n loading?: \"lazy\" | \"eager\" | undefined;\n noPlaceholder?: boolean | undefined;\n src: string;\n } |\n ((props: {\n disabled?: boolean;\n }) => ReactNode) | React.ReactNode\n * */\n image?: RadioCardImageProps | CustomElement;\n value: string;\n /**\n * `union = string | Omit<ReactNode, \"undefined\" | \"null\">`\n */\n title: string | NonNullCustomElement;\n};\n\nconst renderCustomElement = (\n element: CustomElement | NonNullCustomElement,\n { disabled }: Pick<RadioCardItemProps, \"disabled\">\n) => (typeof element === \"function\" ? element({ disabled }) : element);\n\nexport const RadioCardItem = forwardRef<HTMLDivElement, RadioCardItemProps>(\n ({ title, ...propsx }, ref) => {\n const { [\"data-testid\"]: dataTestid, body, children, disabled, id, image, value } = propsx;\n\n const props = { title, ...propsx };\n\n return (\n <div className={cx(`${rootClassName}-container`)} ref={ref}>\n <RadixRadioGroup.Item\n className={cx(rootClassName)}\n data-testid={dataTestid}\n disabled={disabled}\n id={id}\n value={value}\n >\n {image && (\n <span className={cx(`${rootClassName}-image-container`)}>\n {isRadioCardItemImageProps(image) ? (\n <RadioCardImage {...image} data-testid={dataTestid && `${dataTestid}-image`} />\n ) : (\n renderCustomElement(image, props)\n )}\n </span>\n )}\n <span className={cx(`${rootClassName}-content`)}>\n <span className={cx(`${rootClassName}-top-container`)}>\n {typeof title === \"string\" ? (\n <Paragraph\n className={cx(`${rootClassName}-title`)}\n data-testid={dataTestid && `${dataTestid}-title`}\n variant=\"paragraph-100\"\n disabled={disabled}\n >\n {title}\n </Paragraph>\n ) : (\n renderCustomElement(title, props)\n )}\n <span className={cx(`${rootClassName}-radio`)}>\n <RadixRadioGroup.Indicator className={cx(`${rootClassName}-indicator`)} />\n </span>\n </span>\n {body && (\n <span className={cx(`${rootClassName}-bottom-container`)}>\n {typeof body === \"string\" ? (\n <Paragraph\n data-testid={dataTestid && `${dataTestid}-body`}\n variant=\"paragraph-100\"\n disabled={disabled}\n >\n {body}\n </Paragraph>\n ) : (\n renderCustomElement(body, props)\n )}\n </span>\n )}\n </span>\n </RadixRadioGroup.Item>\n {children}\n </div>\n );\n }\n);\n\nRadioCardItem.displayName = \"RadioCardItem\";\n\nexport const isRadioCardItem = (child?: ReactNode): child is ReactElement<RadioCardItemProps> =>\n isValidElement<RadioCardItemProps>(child) && child?.type === RadioCardItem;\n","import React, { Children, cloneElement, forwardRef, type ReactNode, type Ref } from \"react\";\nimport { Heading, type HeadingTagType } from \"@purpur/heading\";\nimport * as RadixRadioGroup from \"@radix-ui/react-radio-group\";\n\nimport { cx } from \"./classnames\";\nimport { isRadioCardItem, RadioCardItem, type RadioCardItemProps } from \"./radio-card-item\";\n\nexport type RadioCardGroupItem = RadioCardItemProps & { ref?: Ref<HTMLDivElement> };\nexport const RADIO_CARD_GROUP_ORIENTATION = [\"horizontal\", \"vertical\"] as const;\nexport const RADIO_POSITION = [\"right\", \"left\"] as const;\n\ntype StylingProps = Pick<React.HTMLAttributes<HTMLElement>, \"className\" | \"style\">;\n\nexport type RadioCardGroupProps = StylingProps & {\n /**\n * To use when no heading is given.\n * */\n [\"aria-label\"]?: string;\n /**\n * To use with custom label.\n * */\n [\"aria-labelledby\"]?: string;\n [\"data-testid\"]?: string;\n /**\n * The value of the radio card item that should be checked when initially rendered. Use when you do not need to control the state of the radio items.\n * */\n defaultValue?: string;\n /**\n * When true, prevents the user from interacting with radio card items.\n * */\n disabled?: boolean;\n /**\n * ID of the radio card group container.\n * */\n id: string;\n /**\n * The radio card items.\n * */\n items?: RadioCardGroupItem[];\n /**\n * Renders above the radio card group as a heading\n * */\n heading?: string;\n /**\n * Changes heading level for heading.\n */\n headingTag?: HeadingTagType;\n /**\n * When true, keyboard navigation will loop from last item to first, and vice versa.\n * */\n loop?: boolean;\n /**\n * The name of the group. Submitted with its owning form as part of a name/value pair.\n * */\n name?: string;\n /**\n * Event handler called when the value changes.\n * */\n onValueChange?: (value: string) => void;\n /**\n * Set to stack cards horizontally or vertically. When `horizontal`, the min card width with is 100% when container is sm, and `--purpur-breakpoint-lg` / 4 when the container is md or larger.\n * */\n orientation?: (typeof RADIO_CARD_GROUP_ORIENTATION)[number];\n /**\n * The position if the radio in the card items.\n * */\n radioPosition?: (typeof RADIO_POSITION)[number];\n /**\n * When true, indicates that the user must check a radio card item before the owning form can be submitted.\n * */\n required?: boolean;\n /**\n * The controlled value of the radio card item to check. Should be used in conjunction with onValueChange.\n * */\n value?: string;\n /**\n * Will only render given RadioCardItems.\n * */\n children?: ReactNode;\n};\n\nconst rootClassName = \"purpur-radio-card-group\";\n\nexport const RadioCardGroup = forwardRef<HTMLDivElement, RadioCardGroupProps>(\n (\n {\n \"data-testid\": dataTestId,\n \"aria-labelledby\": ariaLabelledby,\n children,\n className,\n items,\n heading,\n headingTag = \"h2\",\n loop = true,\n orientation = \"vertical\",\n radioPosition = \"right\",\n ...props\n },\n ref\n ) => {\n const radioCardItemChildren = Children.toArray(children).filter(isRadioCardItem);\n\n return (\n <div className={cx(className, `${rootClassName}__container`)} ref={ref}>\n {heading && (\n <Heading\n data-testid={dataTestId ? `${dataTestId}-heading` : undefined}\n id={`${props.id}-heading`}\n tag={headingTag}\n variant=\"subsection-100\"\n >\n {props.required && <span aria-hidden>{\"* \"}</span>}\n {heading}\n </Heading>\n )}\n {(!!items?.length || radioCardItemChildren.length) && (\n <RadixRadioGroup.Root\n {...props}\n aria-labelledby={ariaLabelledby || (heading ? `${props.id}-heading` : undefined)}\n className={cx(\n rootClassName,\n `${rootClassName}--${orientation}`,\n `${rootClassName}--radio-${radioPosition}`\n )}\n data-testid={dataTestId}\n loop={loop}\n >\n {items?.map((item) => (\n <RadioCardItem\n key={item.id}\n {...item}\n disabled={item.disabled || props.disabled}\n data-testid={dataTestId ? `${dataTestId}-item` : undefined}\n />\n ))}\n {Children.map(radioCardItemChildren, (child) =>\n cloneElement(child, { disabled: child.props.disabled || props.disabled })\n )}\n </RadixRadioGroup.Root>\n )}\n </div>\n );\n }\n);\n\nRadioCardGroup.displayName = \"RadioCardGroup\";\n\n// RadioCardItem must be exported after `RadioCardGroup` for the Storybook controls to be generated from RadioCardGroup props\nexport type { RadioCardItemProps } from \"./radio-card-item\";\nexport { RadioCardItem } from \"./radio-card-item\";\n"],"names":["cx","c","styles","rootClassName","isRadioCardItemImageProps","imageProps","RadioCardImage","src","altText","noPlaceholder","loading","dataTestid","isLoaded","setIsLoaded","useState","onLoad","imageClassName","placeholderClassName","jsxs","Fragment","jsx","Skeleton","renderCustomElement","element","disabled","RadioCardItem","forwardRef","title","propsx","ref","body","children","id","image","value","props","RadixRadioGroup.Item","Paragraph","RadixRadioGroup.Indicator","isRadioCardItem","child","isValidElement","RADIO_CARD_GROUP_ORIENTATION","RADIO_POSITION","RadioCardGroup","dataTestId","ariaLabelledby","className","items","heading","headingTag","loop","orientation","radioPosition","radioCardItemChildren","Children","Heading","RadixRadioGroup.Root","item","cloneElement"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./radio-card-group-BT5pV3tA.js");exports.RADIO_CARD_GROUP_ORIENTATION=r.RADIO_CARD_GROUP_ORIENTATION;exports.RADIO_POSITION=r.RADIO_POSITION;exports.RadioCardGroup=r.RadioCardGroup;exports.RadioCardItem=r.RadioCardItem;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./radio-card-group-sYcfDPJq.js");exports.RADIO_CARD_GROUP_ORIENTATION=r.RADIO_CARD_GROUP_ORIENTATION;exports.RADIO_POSITION=r.RADIO_POSITION;exports.RadioCardGroup=r.RadioCardGroup;exports.RadioCardItem=r.RadioCardItem;
2
2
  //# sourceMappingURL=radio-card-group.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { R as I, a as O, b as o, c as r } from "./radio-card-group-DkaMcmen.mjs";
1
+ import { R as I, a as O, b as o, c as r } from "./radio-card-group-BlRZBa-9.mjs";
2
2
  export {
3
3
  I as RADIO_CARD_GROUP_ORIENTATION,
4
4
  O as RADIO_POSITION,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./RichText-DMyGiMN0.js");exports.RichText=e.RichText;exports.richToPlainText=e.richToPlainText;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./RichText-DNroJJXv.js");exports.RichText=e.RichText;exports.richToPlainText=e.richToPlainText;
2
2
  //# sourceMappingURL=rich-text.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { R as e, r as i } from "./RichText-DRacgpis.mjs";
1
+ import { R as e, r as i } from "./RichText-Bi51HE6X.mjs";
2
2
  export {
3
3
  e as RichText,
4
4
  i as richToPlainText
@@ -2,7 +2,7 @@
2
2
  font-family: var(--purpur-typography-family-default);
3
3
  font-weight: var(--purpur-typography-weight-medium);
4
4
  font-size: var(--purpur-typography-scale-100);
5
- line-height: var(--purpur-typography-line-height-default);
5
+ line-height: var(--purpur-typography-line-height-loose);
6
6
  }
7
7
 
8
8
  @mixin purpur-title-100() {
@@ -1,9 +1,9 @@
1
1
  import { jsx as r } from "react/jsx-runtime";
2
2
  import { forwardRef as q } from "react";
3
3
  import { s as h } from "./search.es-DoFKg2Hr.mjs";
4
- import { T as v } from "./text-field-PKAaXO1N.mjs";
4
+ import { T as v } from "./text-field-5rIuW8gc.mjs";
5
5
  import { c as f } from "./bind-CU-R61T-.mjs";
6
- import { c as _ } from "./button-DBX_tvfJ.mjs";
6
+ import { b as _ } from "./button-BfYKNBmC.mjs";
7
7
  const N = {
8
8
  "purpur-search-field": "_purpur-search-field_uhpkq_1",
9
9
  "purpur-search-field--has-clear-button": "_purpur-search-field--has-clear-button_uhpkq_4",
@@ -18,22 +18,22 @@ const N = {
18
18
  }, F = f.bind(w), d = "purpur-search-field-button", z = ({
19
19
  ["data-testid"]: a,
20
20
  disabled: p,
21
- iconOnly: c,
21
+ iconOnly: o,
22
22
  label: e
23
23
  }) => {
24
24
  const s = {
25
25
  className: F(d, {
26
- [`${d}--icon-only`]: c
26
+ [`${d}--icon-only`]: o
27
27
  }),
28
28
  disabled: p,
29
29
  "data-testid": a
30
30
  };
31
- return c ? /* @__PURE__ */ r(_, { ...s, "aria-label": e, iconOnly: !0, size: "sm", type: "submit", variant: "primary", children: /* @__PURE__ */ r(h, { size: "xs" }) }) : /* @__PURE__ */ r(_, { ...s, size: "sm", type: "submit", variant: "primary", children: e });
31
+ return o ? /* @__PURE__ */ r(_, { ...s, "aria-label": e, iconOnly: !0, size: "sm", type: "submit", variant: "primary", children: /* @__PURE__ */ r(h, { size: "xs" }) }) : /* @__PURE__ */ r(_, { ...s, size: "sm", type: "submit", variant: "primary", children: e });
32
32
  }, R = ["button-attached", "no-button"], i = f.bind(N), u = "purpur-search-field", S = q(
33
33
  ({
34
34
  ["data-testid"]: a,
35
35
  className: p,
36
- clearButtonAriaLabel: c,
36
+ clearButtonAriaLabel: o,
37
37
  disabled: e,
38
38
  iconOnlySearchButton: s,
39
39
  onClear: m,
@@ -43,7 +43,7 @@ const N = {
43
43
  formRef: $,
44
44
  ...t
45
45
  }, g) => {
46
- const l = (o) => a ? `${a}-${o}` : void 0, x = (typeof t.value == "number" ? t.value !== void 0 : t.value?.length) && !e && !t.readOnly && !t.loading, k = i(p, u, {
46
+ const l = (c) => a ? `${a}-${c}` : void 0, x = (typeof t.value == "number" ? t.value !== void 0 : t.value?.length) && !e && !t.readOnly && !t.loading, k = i(p, u, {
47
47
  [`${u}--no-gap`]: n === "button-attached",
48
48
  [`${u}--has-clear-button`]: x
49
49
  });
@@ -53,15 +53,15 @@ const N = {
53
53
  ref: $,
54
54
  className: i(`${u}__wrapper`),
55
55
  "data-testid": a,
56
- onSubmit: (o) => {
57
- o.preventDefault(), b?.(o);
56
+ onSubmit: (c) => {
57
+ c.preventDefault(), b?.(c);
58
58
  },
59
59
  children: /* @__PURE__ */ r(
60
60
  v,
61
61
  {
62
62
  ref: g,
63
63
  className: k,
64
- clearButtonAriaLabel: c,
64
+ clearButtonAriaLabel: o,
65
65
  disabled: e,
66
66
  onClear: m,
67
67
  startAdornment: s ? null : /* @__PURE__ */ r(h, { size: "xs", className: i(`${u}__search-icon`) }, "1"),
@@ -88,4 +88,4 @@ export {
88
88
  S,
89
89
  R as s
90
90
  };
91
- //# sourceMappingURL=search-field-DH0xeW_J.mjs.map
91
+ //# sourceMappingURL=search-field-BOmCVr5b.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-field-DH0xeW_J.mjs","sources":["../../../components/search-field/src/search-field-button.tsx","../../../components/search-field/src/search-field.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"@purpur/button\";\nimport { IconSearch } from \"@purpur/icon/search\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./search-field-button.module.scss\";\n\ntype Props = {\n [\"data-testid\"]?: string;\n disabled?: boolean;\n iconOnly?: boolean;\n label: string;\n};\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-search-field-button\";\n\nexport const SearchFieldButton = ({\n [\"data-testid\"]: dataTestid,\n disabled,\n iconOnly,\n label,\n}: Props) => {\n const props = {\n className: cx(rootClassName, {\n [`${rootClassName}--icon-only`]: iconOnly,\n }),\n disabled,\n [\"data-testid\"]: dataTestid,\n };\n\n if (iconOnly) {\n return (\n <Button {...props} aria-label={label} iconOnly size=\"sm\" type=\"submit\" variant=\"primary\">\n <IconSearch size=\"xs\" />\n </Button>\n );\n }\n\n return (\n <Button {...props} size=\"sm\" type=\"submit\" variant=\"primary\">\n {label}\n </Button>\n );\n};\n","import React, { type ChangeEvent, type FormEvent, forwardRef, type RefObject } from \"react\";\nimport { IconSearch } from \"@purpur/icon/search\";\nimport { TextField, type TextFieldProps } from \"@purpur/text-field\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./search-field.module.scss\";\nimport { SearchFieldButton } from \"./search-field-button\";\n\nexport const searchFieldVariants = [\"button-attached\", \"no-button\"] as const;\n\ntype Variant = (typeof searchFieldVariants)[number];\n\ntype DefaultProps = {\n [\"data-testid\"]?: string;\n /**\n * An accessible label for the clear button.\n * */\n clearButtonAriaLabel: string;\n /**\n * Disables both the input field and submit button if `true`.\n * */\n disabled?: boolean;\n /**\n * Will display only a search icon in the search button if `true`.\n * */\n iconOnlySearchButton?: boolean;\n /**\n * Event handler called when the value of the search field changes.\n * */\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n /**\n * Event handler called when the clear button is clicked.\n * */\n onClear: () => void;\n /**\n * Event handler called when the search form is submitted.\n * */\n onSearch?: (e: FormEvent<HTMLFormElement>) => void;\n /**\n * The label text (or `aria-label` if `iconOnlySearchButton` is `true`) of the search button.\n * */\n searchButtonLabel?: string;\n variant: Variant;\n formRef?: RefObject<HTMLFormElement>;\n};\n\ntype TextSearchButton = {\n iconOnlySearchButton?: false;\n searchButtonLabel: string;\n variant: \"button-attached\";\n};\n\ntype IconOnlySearchButton = {\n iconOnlySearchButton: true;\n searchButtonLabel: string;\n variant: \"button-attached\";\n};\n\ntype NoButton = {\n searchButtonLabel?: never;\n variant: \"no-button\";\n};\n\nexport type SearchFieldProps = DefaultProps &\n (TextSearchButton | IconOnlySearchButton | NoButton) &\n Omit<TextFieldProps, \"startAdornment\" | \"endAdornment\" | \"afterField\" | \"onChange\">;\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-search-field\";\n\nexport const SearchField = forwardRef<HTMLInputElement, SearchFieldProps>(\n (\n {\n [\"data-testid\"]: dataTestId,\n className,\n clearButtonAriaLabel,\n disabled,\n iconOnlySearchButton,\n onClear,\n onSearch,\n searchButtonLabel,\n variant,\n formRef,\n ...props\n },\n ref\n ) => {\n const getTestId = (name: string) => (dataTestId ? `${dataTestId}-${name}` : undefined);\n const hasValue =\n typeof props.value === \"number\" ? props.value !== undefined : props.value?.length;\n const hasClearButton = hasValue && !disabled && !props.readOnly && !props.loading;\n\n const classes = cx(className, rootClassName, {\n [`${rootClassName}--no-gap`]: variant === \"button-attached\",\n [`${rootClassName}--has-clear-button`]: hasClearButton,\n });\n\n return (\n <form\n ref={formRef}\n className={cx(`${rootClassName}__wrapper`)}\n data-testid={dataTestId}\n onSubmit={(e: FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n onSearch?.(e);\n }}\n >\n <TextField\n ref={ref}\n className={classes}\n clearButtonAriaLabel={clearButtonAriaLabel}\n disabled={disabled}\n onClear={onClear}\n startAdornment={\n !iconOnlySearchButton ? (\n <IconSearch size=\"xs\" className={cx(`${rootClassName}__search-icon`)} key=\"1\" />\n ) : null\n }\n afterField={\n variant !== \"no-button\" ? (\n <SearchFieldButton\n disabled={disabled}\n iconOnly={iconOnlySearchButton}\n label={searchButtonLabel}\n data-testid={getTestId(\"button\")}\n />\n ) : null\n }\n data-testid={getTestId(\"text-field\")}\n type=\"search\"\n {...props}\n />\n </form>\n );\n }\n);\n\nSearchField.displayName = \"SearchField\";\n"],"names":["cx","c","styles","rootClassName","SearchFieldButton","dataTestid","disabled","iconOnly","label","props","Button","IconSearch","jsx","searchFieldVariants","SearchField","forwardRef","dataTestId","className","clearButtonAriaLabel","iconOnlySearchButton","onClear","onSearch","searchButtonLabel","variant","formRef","ref","getTestId","name","hasClearButton","classes","e","TextField"],"mappings":";;;;;;;;;;;;;;;;;GAcMA,IAAKC,EAAE,KAAKC,CAAM,GAClBC,IAAgB,8BAETC,IAAoB,CAAC;AAAA,EAChC,CAAC,gBAAgBC;AAAA,EACjB,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AACF,MAAa;AACX,QAAMC,IAAQ;AAAA,IACZ,WAAWT,EAAGG,GAAe;AAAA,MAC3B,CAAC,GAAGA,CAAa,aAAa,GAAGI;AAAA,IAAA,CAClC;AAAA,IACD,UAAAD;AAAA,IACC,eAAgBD;AAAA,EAAA;AAGnB,SAAIE,sBAECG,GAAA,EAAQ,GAAGD,GAAO,cAAYD,GAAO,UAAQ,IAAC,MAAK,MAAK,MAAK,UAAS,SAAQ,WAC7E,4BAACG,GAAA,EAAW,MAAK,MAAK,GACxB,IAKF,gBAAAC,EAACF,GAAA,EAAQ,GAAGD,GAAO,MAAK,MAAK,MAAK,UAAS,SAAQ,WAChD,UAAAD,EAAA,CACH;AAEJ,GCpCaK,IAAsB,CAAC,mBAAmB,WAAW,GA2D5Db,IAAKC,EAAE,KAAKC,CAAM,GAClBC,IAAgB,uBAETW,IAAcC;AAAA,EACzB,CACE;AAAA,IACE,CAAC,gBAAgBC;AAAA,IACjB,WAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,UAAAZ;AAAA,IACA,sBAAAa;AAAA,IACA,SAAAC;AAAA,IACA,UAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,GAAGf;AAAA,EAAA,GAELgB,MACG;AACH,UAAMC,IAAY,CAACC,MAAkBX,IAAa,GAAGA,CAAU,IAAIW,CAAI,KAAK,QAGtEC,KADJ,OAAOnB,EAAM,SAAU,WAAWA,EAAM,UAAU,SAAYA,EAAM,OAAO,WAC1C,CAACH,KAAY,CAACG,EAAM,YAAY,CAACA,EAAM,SAEpEoB,IAAU7B,EAAGiB,GAAWd,GAAe;AAAA,MAC3C,CAAC,GAAGA,CAAa,UAAU,GAAGoB,MAAY;AAAA,MAC1C,CAAC,GAAGpB,CAAa,oBAAoB,GAAGyB;AAAA,IAAA,CACzC;AAED,WACE,gBAAAhB;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAKY;AAAA,QACL,WAAWxB,EAAG,GAAGG,CAAa,WAAW;AAAA,QACzC,eAAaa;AAAA,QACb,UAAU,CAACc,MAAkC;AAC3C,UAAAA,EAAE,eAAA,GACFT,IAAWS,CAAC;AAAA,QACd;AAAA,QAEA,UAAA,gBAAAlB;AAAA,UAACmB;AAAA,UAAA;AAAA,YACC,KAAAN;AAAA,YACA,WAAWI;AAAA,YACX,sBAAAX;AAAA,YACA,UAAAZ;AAAA,YACA,SAAAc;AAAA,YACA,gBACGD,IAEG,OADF,gBAAAP,EAACD,KAAW,MAAK,MAAK,WAAWX,EAAG,GAAGG,CAAa,eAAe,EAAA,GAAO,GAAI;AAAA,YAGlF,YACEoB,MAAY,cACV,gBAAAX;AAAA,cAACR;AAAA,cAAA;AAAA,gBACC,UAAAE;AAAA,gBACA,UAAUa;AAAA,gBACV,OAAOG;AAAA,gBACP,eAAaI,EAAU,QAAQ;AAAA,cAAA;AAAA,YAAA,IAE/B;AAAA,YAEN,eAAaA,EAAU,YAAY;AAAA,YACnC,MAAK;AAAA,YACJ,GAAGjB;AAAA,UAAA;AAAA,QAAA;AAAA,MACN;AAAA,IAAA;AAAA,EAGN;AACF;AAEAK,EAAY,cAAc;"}
1
+ {"version":3,"file":"search-field-BOmCVr5b.mjs","sources":["../../../components/search-field/src/search-field-button.tsx","../../../components/search-field/src/search-field.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"@purpur/button\";\nimport { IconSearch } from \"@purpur/icon/search\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./search-field-button.module.scss\";\n\ntype Props = {\n [\"data-testid\"]?: string;\n disabled?: boolean;\n iconOnly?: boolean;\n label: string;\n};\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-search-field-button\";\n\nexport const SearchFieldButton = ({\n [\"data-testid\"]: dataTestid,\n disabled,\n iconOnly,\n label,\n}: Props) => {\n const props = {\n className: cx(rootClassName, {\n [`${rootClassName}--icon-only`]: iconOnly,\n }),\n disabled,\n [\"data-testid\"]: dataTestid,\n };\n\n if (iconOnly) {\n return (\n <Button {...props} aria-label={label} iconOnly size=\"sm\" type=\"submit\" variant=\"primary\">\n <IconSearch size=\"xs\" />\n </Button>\n );\n }\n\n return (\n <Button {...props} size=\"sm\" type=\"submit\" variant=\"primary\">\n {label}\n </Button>\n );\n};\n","import React, { type ChangeEvent, type FormEvent, forwardRef, type RefObject } from \"react\";\nimport { IconSearch } from \"@purpur/icon/search\";\nimport { TextField, type TextFieldProps } from \"@purpur/text-field\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./search-field.module.scss\";\nimport { SearchFieldButton } from \"./search-field-button\";\n\nexport const searchFieldVariants = [\"button-attached\", \"no-button\"] as const;\n\ntype Variant = (typeof searchFieldVariants)[number];\n\ntype DefaultProps = {\n [\"data-testid\"]?: string;\n /**\n * An accessible label for the clear button.\n * */\n clearButtonAriaLabel: string;\n /**\n * Disables both the input field and submit button if `true`.\n * */\n disabled?: boolean;\n /**\n * Will display only a search icon in the search button if `true`.\n * */\n iconOnlySearchButton?: boolean;\n /**\n * Event handler called when the value of the search field changes.\n * */\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n /**\n * Event handler called when the clear button is clicked.\n * */\n onClear: () => void;\n /**\n * Event handler called when the search form is submitted.\n * */\n onSearch?: (e: FormEvent<HTMLFormElement>) => void;\n /**\n * The label text (or `aria-label` if `iconOnlySearchButton` is `true`) of the search button.\n * */\n searchButtonLabel?: string;\n variant: Variant;\n formRef?: RefObject<HTMLFormElement>;\n};\n\ntype TextSearchButton = {\n iconOnlySearchButton?: false;\n searchButtonLabel: string;\n variant: \"button-attached\";\n};\n\ntype IconOnlySearchButton = {\n iconOnlySearchButton: true;\n searchButtonLabel: string;\n variant: \"button-attached\";\n};\n\ntype NoButton = {\n searchButtonLabel?: never;\n variant: \"no-button\";\n};\n\nexport type SearchFieldProps = DefaultProps &\n (TextSearchButton | IconOnlySearchButton | NoButton) &\n Omit<TextFieldProps, \"startAdornment\" | \"endAdornment\" | \"afterField\" | \"onChange\">;\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-search-field\";\n\nexport const SearchField = forwardRef<HTMLInputElement, SearchFieldProps>(\n (\n {\n [\"data-testid\"]: dataTestId,\n className,\n clearButtonAriaLabel,\n disabled,\n iconOnlySearchButton,\n onClear,\n onSearch,\n searchButtonLabel,\n variant,\n formRef,\n ...props\n },\n ref\n ) => {\n const getTestId = (name: string) => (dataTestId ? `${dataTestId}-${name}` : undefined);\n const hasValue =\n typeof props.value === \"number\" ? props.value !== undefined : props.value?.length;\n const hasClearButton = hasValue && !disabled && !props.readOnly && !props.loading;\n\n const classes = cx(className, rootClassName, {\n [`${rootClassName}--no-gap`]: variant === \"button-attached\",\n [`${rootClassName}--has-clear-button`]: hasClearButton,\n });\n\n return (\n <form\n ref={formRef}\n className={cx(`${rootClassName}__wrapper`)}\n data-testid={dataTestId}\n onSubmit={(e: FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n onSearch?.(e);\n }}\n >\n <TextField\n ref={ref}\n className={classes}\n clearButtonAriaLabel={clearButtonAriaLabel}\n disabled={disabled}\n onClear={onClear}\n startAdornment={\n !iconOnlySearchButton ? (\n <IconSearch size=\"xs\" className={cx(`${rootClassName}__search-icon`)} key=\"1\" />\n ) : null\n }\n afterField={\n variant !== \"no-button\" ? (\n <SearchFieldButton\n disabled={disabled}\n iconOnly={iconOnlySearchButton}\n label={searchButtonLabel}\n data-testid={getTestId(\"button\")}\n />\n ) : null\n }\n data-testid={getTestId(\"text-field\")}\n type=\"search\"\n {...props}\n />\n </form>\n );\n }\n);\n\nSearchField.displayName = \"SearchField\";\n"],"names":["cx","c","styles","rootClassName","SearchFieldButton","dataTestid","disabled","iconOnly","label","props","Button","IconSearch","jsx","searchFieldVariants","SearchField","forwardRef","dataTestId","className","clearButtonAriaLabel","iconOnlySearchButton","onClear","onSearch","searchButtonLabel","variant","formRef","ref","getTestId","name","hasClearButton","classes","e","TextField"],"mappings":";;;;;;;;;;;;;;;;;GAcMA,IAAKC,EAAE,KAAKC,CAAM,GAClBC,IAAgB,8BAETC,IAAoB,CAAC;AAAA,EAChC,CAAC,gBAAgBC;AAAA,EACjB,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AACF,MAAa;AACX,QAAMC,IAAQ;AAAA,IACZ,WAAWT,EAAGG,GAAe;AAAA,MAC3B,CAAC,GAAGA,CAAa,aAAa,GAAGI;AAAA,IAAA,CAClC;AAAA,IACD,UAAAD;AAAA,IACC,eAAgBD;AAAA,EAAA;AAGnB,SAAIE,sBAECG,GAAA,EAAQ,GAAGD,GAAO,cAAYD,GAAO,UAAQ,IAAC,MAAK,MAAK,MAAK,UAAS,SAAQ,WAC7E,4BAACG,GAAA,EAAW,MAAK,MAAK,GACxB,IAKF,gBAAAC,EAACF,GAAA,EAAQ,GAAGD,GAAO,MAAK,MAAK,MAAK,UAAS,SAAQ,WAChD,UAAAD,EAAA,CACH;AAEJ,GCpCaK,IAAsB,CAAC,mBAAmB,WAAW,GA2D5Db,IAAKC,EAAE,KAAKC,CAAM,GAClBC,IAAgB,uBAETW,IAAcC;AAAA,EACzB,CACE;AAAA,IACE,CAAC,gBAAgBC;AAAA,IACjB,WAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,UAAAZ;AAAA,IACA,sBAAAa;AAAA,IACA,SAAAC;AAAA,IACA,UAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,GAAGf;AAAA,EAAA,GAELgB,MACG;AACH,UAAMC,IAAY,CAACC,MAAkBX,IAAa,GAAGA,CAAU,IAAIW,CAAI,KAAK,QAGtEC,KADJ,OAAOnB,EAAM,SAAU,WAAWA,EAAM,UAAU,SAAYA,EAAM,OAAO,WAC1C,CAACH,KAAY,CAACG,EAAM,YAAY,CAACA,EAAM,SAEpEoB,IAAU7B,EAAGiB,GAAWd,GAAe;AAAA,MAC3C,CAAC,GAAGA,CAAa,UAAU,GAAGoB,MAAY;AAAA,MAC1C,CAAC,GAAGpB,CAAa,oBAAoB,GAAGyB;AAAA,IAAA,CACzC;AAED,WACE,gBAAAhB;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAKY;AAAA,QACL,WAAWxB,EAAG,GAAGG,CAAa,WAAW;AAAA,QACzC,eAAaa;AAAA,QACb,UAAU,CAACc,MAAkC;AAC3C,UAAAA,EAAE,eAAA,GACFT,IAAWS,CAAC;AAAA,QACd;AAAA,QAEA,UAAA,gBAAAlB;AAAA,UAACmB;AAAA,UAAA;AAAA,YACC,KAAAN;AAAA,YACA,WAAWI;AAAA,YACX,sBAAAX;AAAA,YACA,UAAAZ;AAAA,YACA,SAAAc;AAAA,YACA,gBACGD,IAEG,OADF,gBAAAP,EAACD,KAAW,MAAK,MAAK,WAAWX,EAAG,GAAGG,CAAa,eAAe,EAAA,GAAO,GAAI;AAAA,YAGlF,YACEoB,MAAY,cACV,gBAAAX;AAAA,cAACR;AAAA,cAAA;AAAA,gBACC,UAAAE;AAAA,gBACA,UAAUa;AAAA,gBACV,OAAOG;AAAA,gBACP,eAAaI,EAAU,QAAQ;AAAA,cAAA;AAAA,YAAA,IAE/B;AAAA,YAEN,eAAaA,EAAU,YAAY;AAAA,YACnC,MAAK;AAAA,YACJ,GAAGjB;AAAA,UAAA;AAAA,QAAA;AAAA,MACN;AAAA,IAAA;AAAA,EAGN;AACF;AAEAK,EAAY,cAAc;"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("react/jsx-runtime"),j=require("react"),_=require("./search.es-Cg2amJSR.js"),k=require("./text-field-B8a-NKm4.js"),f=require("./bind-DeUYJ6m9.js"),d=require("./button-ChYUPi2k.js"),v={"purpur-search-field":"_purpur-search-field_uhpkq_1","purpur-search-field--has-clear-button":"_purpur-search-field--has-clear-button_uhpkq_4","purpur-search-field--no-gap":"_purpur-search-field--no-gap_uhpkq_13","purpur-search-field__wrapper":"_purpur-search-field__wrapper_uhpkq_17","purpur-search-field__wrapper--gap":"_purpur-search-field__wrapper--gap_uhpkq_20","purpur-search-field__search-icon":"_purpur-search-field__search-icon_uhpkq_24","purpur-search-field__close-icon":"_purpur-search-field__close-icon_uhpkq_24"},N={"purpur-search-field-button":"_purpur-search-field-button_c16yo_1","purpur-search-field-button--icon-only":"_purpur-search-field-button--icon-only_c16yo_1"},w=f.c.bind(N),h="purpur-search-field-button",z=({["data-testid"]:s,disabled:i,iconOnly:c,label:r})=>{const a={className:w(h,{[`${h}--icon-only`]:c}),disabled:i,"data-testid":s};return c?e.jsx(d.Button,{...a,"aria-label":r,iconOnly:!0,size:"sm",type:"submit",variant:"primary",children:e.jsx(_.s,{size:"xs"})}):e.jsx(d.Button,{...a,size:"sm",type:"submit",variant:"primary",children:r})},S=["button-attached","no-button"],l=f.c.bind(v),u="purpur-search-field",b=j.forwardRef(({["data-testid"]:s,className:i,clearButtonAriaLabel:c,disabled:r,iconOnlySearchButton:a,onClear:m,onSearch:x,searchButtonLabel:y,variant:o,formRef:q,...t},$)=>{const p=n=>s?`${s}-${n}`:void 0,F=(typeof t.value=="number"?t.value!==void 0:t.value?.length)&&!r&&!t.readOnly&&!t.loading,g=l(i,u,{[`${u}--no-gap`]:o==="button-attached",[`${u}--has-clear-button`]:F});return e.jsx("form",{ref:q,className:l(`${u}__wrapper`),"data-testid":s,onSubmit:n=>{n.preventDefault(),x?.(n)},children:e.jsx(k.TextField,{ref:$,className:g,clearButtonAriaLabel:c,disabled:r,onClear:m,startAdornment:a?null:e.jsx(_.s,{size:"xs",className:l(`${u}__search-icon`)},"1"),afterField:o!=="no-button"?e.jsx(z,{disabled:r,iconOnly:a,label:y,"data-testid":p("button")}):null,"data-testid":p("text-field"),type:"search",...t})})});b.displayName="SearchField";exports.SearchField=b;exports.searchFieldVariants=S;
2
- //# sourceMappingURL=search-field-CxX4BBcg.js.map
1
+ "use strict";const e=require("react/jsx-runtime"),j=require("react"),_=require("./search.es-Cg2amJSR.js"),k=require("./text-field-Xt6T3zjO.js"),f=require("./bind-DeUYJ6m9.js"),d=require("./button-DDYGuqZ0.js"),v={"purpur-search-field":"_purpur-search-field_uhpkq_1","purpur-search-field--has-clear-button":"_purpur-search-field--has-clear-button_uhpkq_4","purpur-search-field--no-gap":"_purpur-search-field--no-gap_uhpkq_13","purpur-search-field__wrapper":"_purpur-search-field__wrapper_uhpkq_17","purpur-search-field__wrapper--gap":"_purpur-search-field__wrapper--gap_uhpkq_20","purpur-search-field__search-icon":"_purpur-search-field__search-icon_uhpkq_24","purpur-search-field__close-icon":"_purpur-search-field__close-icon_uhpkq_24"},N={"purpur-search-field-button":"_purpur-search-field-button_c16yo_1","purpur-search-field-button--icon-only":"_purpur-search-field-button--icon-only_c16yo_1"},w=f.c.bind(N),h="purpur-search-field-button",z=({["data-testid"]:s,disabled:i,iconOnly:c,label:r})=>{const a={className:w(h,{[`${h}--icon-only`]:c}),disabled:i,"data-testid":s};return c?e.jsx(d.Button,{...a,"aria-label":r,iconOnly:!0,size:"sm",type:"submit",variant:"primary",children:e.jsx(_.s,{size:"xs"})}):e.jsx(d.Button,{...a,size:"sm",type:"submit",variant:"primary",children:r})},S=["button-attached","no-button"],l=f.c.bind(v),u="purpur-search-field",b=j.forwardRef(({["data-testid"]:s,className:i,clearButtonAriaLabel:c,disabled:r,iconOnlySearchButton:a,onClear:m,onSearch:x,searchButtonLabel:y,variant:o,formRef:q,...t},$)=>{const p=n=>s?`${s}-${n}`:void 0,F=(typeof t.value=="number"?t.value!==void 0:t.value?.length)&&!r&&!t.readOnly&&!t.loading,g=l(i,u,{[`${u}--no-gap`]:o==="button-attached",[`${u}--has-clear-button`]:F});return e.jsx("form",{ref:q,className:l(`${u}__wrapper`),"data-testid":s,onSubmit:n=>{n.preventDefault(),x?.(n)},children:e.jsx(k.TextField,{ref:$,className:g,clearButtonAriaLabel:c,disabled:r,onClear:m,startAdornment:a?null:e.jsx(_.s,{size:"xs",className:l(`${u}__search-icon`)},"1"),afterField:o!=="no-button"?e.jsx(z,{disabled:r,iconOnly:a,label:y,"data-testid":p("button")}):null,"data-testid":p("text-field"),type:"search",...t})})});b.displayName="SearchField";exports.SearchField=b;exports.searchFieldVariants=S;
2
+ //# sourceMappingURL=search-field-CanOlkIY.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-field-CxX4BBcg.js","sources":["../../../components/search-field/src/search-field-button.tsx","../../../components/search-field/src/search-field.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"@purpur/button\";\nimport { IconSearch } from \"@purpur/icon/search\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./search-field-button.module.scss\";\n\ntype Props = {\n [\"data-testid\"]?: string;\n disabled?: boolean;\n iconOnly?: boolean;\n label: string;\n};\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-search-field-button\";\n\nexport const SearchFieldButton = ({\n [\"data-testid\"]: dataTestid,\n disabled,\n iconOnly,\n label,\n}: Props) => {\n const props = {\n className: cx(rootClassName, {\n [`${rootClassName}--icon-only`]: iconOnly,\n }),\n disabled,\n [\"data-testid\"]: dataTestid,\n };\n\n if (iconOnly) {\n return (\n <Button {...props} aria-label={label} iconOnly size=\"sm\" type=\"submit\" variant=\"primary\">\n <IconSearch size=\"xs\" />\n </Button>\n );\n }\n\n return (\n <Button {...props} size=\"sm\" type=\"submit\" variant=\"primary\">\n {label}\n </Button>\n );\n};\n","import React, { type ChangeEvent, type FormEvent, forwardRef, type RefObject } from \"react\";\nimport { IconSearch } from \"@purpur/icon/search\";\nimport { TextField, type TextFieldProps } from \"@purpur/text-field\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./search-field.module.scss\";\nimport { SearchFieldButton } from \"./search-field-button\";\n\nexport const searchFieldVariants = [\"button-attached\", \"no-button\"] as const;\n\ntype Variant = (typeof searchFieldVariants)[number];\n\ntype DefaultProps = {\n [\"data-testid\"]?: string;\n /**\n * An accessible label for the clear button.\n * */\n clearButtonAriaLabel: string;\n /**\n * Disables both the input field and submit button if `true`.\n * */\n disabled?: boolean;\n /**\n * Will display only a search icon in the search button if `true`.\n * */\n iconOnlySearchButton?: boolean;\n /**\n * Event handler called when the value of the search field changes.\n * */\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n /**\n * Event handler called when the clear button is clicked.\n * */\n onClear: () => void;\n /**\n * Event handler called when the search form is submitted.\n * */\n onSearch?: (e: FormEvent<HTMLFormElement>) => void;\n /**\n * The label text (or `aria-label` if `iconOnlySearchButton` is `true`) of the search button.\n * */\n searchButtonLabel?: string;\n variant: Variant;\n formRef?: RefObject<HTMLFormElement>;\n};\n\ntype TextSearchButton = {\n iconOnlySearchButton?: false;\n searchButtonLabel: string;\n variant: \"button-attached\";\n};\n\ntype IconOnlySearchButton = {\n iconOnlySearchButton: true;\n searchButtonLabel: string;\n variant: \"button-attached\";\n};\n\ntype NoButton = {\n searchButtonLabel?: never;\n variant: \"no-button\";\n};\n\nexport type SearchFieldProps = DefaultProps &\n (TextSearchButton | IconOnlySearchButton | NoButton) &\n Omit<TextFieldProps, \"startAdornment\" | \"endAdornment\" | \"afterField\" | \"onChange\">;\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-search-field\";\n\nexport const SearchField = forwardRef<HTMLInputElement, SearchFieldProps>(\n (\n {\n [\"data-testid\"]: dataTestId,\n className,\n clearButtonAriaLabel,\n disabled,\n iconOnlySearchButton,\n onClear,\n onSearch,\n searchButtonLabel,\n variant,\n formRef,\n ...props\n },\n ref\n ) => {\n const getTestId = (name: string) => (dataTestId ? `${dataTestId}-${name}` : undefined);\n const hasValue =\n typeof props.value === \"number\" ? props.value !== undefined : props.value?.length;\n const hasClearButton = hasValue && !disabled && !props.readOnly && !props.loading;\n\n const classes = cx(className, rootClassName, {\n [`${rootClassName}--no-gap`]: variant === \"button-attached\",\n [`${rootClassName}--has-clear-button`]: hasClearButton,\n });\n\n return (\n <form\n ref={formRef}\n className={cx(`${rootClassName}__wrapper`)}\n data-testid={dataTestId}\n onSubmit={(e: FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n onSearch?.(e);\n }}\n >\n <TextField\n ref={ref}\n className={classes}\n clearButtonAriaLabel={clearButtonAriaLabel}\n disabled={disabled}\n onClear={onClear}\n startAdornment={\n !iconOnlySearchButton ? (\n <IconSearch size=\"xs\" className={cx(`${rootClassName}__search-icon`)} key=\"1\" />\n ) : null\n }\n afterField={\n variant !== \"no-button\" ? (\n <SearchFieldButton\n disabled={disabled}\n iconOnly={iconOnlySearchButton}\n label={searchButtonLabel}\n data-testid={getTestId(\"button\")}\n />\n ) : null\n }\n data-testid={getTestId(\"text-field\")}\n type=\"search\"\n {...props}\n />\n </form>\n );\n }\n);\n\nSearchField.displayName = \"SearchField\";\n"],"names":["cx","c","styles","rootClassName","SearchFieldButton","dataTestid","disabled","iconOnly","label","props","Button","IconSearch","jsx","searchFieldVariants","SearchField","forwardRef","dataTestId","className","clearButtonAriaLabel","iconOnlySearchButton","onClear","onSearch","searchButtonLabel","variant","formRef","ref","getTestId","name","hasClearButton","classes","e","TextField"],"mappings":"k4BAcMA,EAAKC,EAAAA,EAAE,KAAKC,CAAM,EAClBC,EAAgB,6BAETC,EAAoB,CAAC,CAChC,CAAC,eAAgBC,EACjB,SAAAC,EACA,SAAAC,EACA,MAAAC,CACF,IAAa,CACX,MAAMC,EAAQ,CACZ,UAAWT,EAAGG,EAAe,CAC3B,CAAC,GAAGA,CAAa,aAAa,EAAGI,CAAA,CAClC,EACD,SAAAD,EACC,cAAgBD,CAAA,EAGnB,OAAIE,QAECG,SAAA,CAAQ,GAAGD,EAAO,aAAYD,EAAO,SAAQ,GAAC,KAAK,KAAK,KAAK,SAAS,QAAQ,UAC7E,eAACG,EAAAA,EAAA,CAAW,KAAK,KAAK,EACxB,EAKFC,EAAAA,IAACF,EAAAA,OAAA,CAAQ,GAAGD,EAAO,KAAK,KAAK,KAAK,SAAS,QAAQ,UAChD,SAAAD,CAAA,CACH,CAEJ,ECpCaK,EAAsB,CAAC,kBAAmB,WAAW,EA2D5Db,EAAKC,EAAAA,EAAE,KAAKC,CAAM,EAClBC,EAAgB,sBAETW,EAAcC,EAAAA,WACzB,CACE,CACE,CAAC,eAAgBC,EACjB,UAAAC,EACA,qBAAAC,EACA,SAAAZ,EACA,qBAAAa,EACA,QAAAC,EACA,SAAAC,EACA,kBAAAC,EACA,QAAAC,EACA,QAAAC,EACA,GAAGf,CAAA,EAELgB,IACG,CACH,MAAMC,EAAaC,GAAkBX,EAAa,GAAGA,CAAU,IAAIW,CAAI,GAAK,OAGtEC,GADJ,OAAOnB,EAAM,OAAU,SAAWA,EAAM,QAAU,OAAYA,EAAM,OAAO,SAC1C,CAACH,GAAY,CAACG,EAAM,UAAY,CAACA,EAAM,QAEpEoB,EAAU7B,EAAGiB,EAAWd,EAAe,CAC3C,CAAC,GAAGA,CAAa,UAAU,EAAGoB,IAAY,kBAC1C,CAAC,GAAGpB,CAAa,oBAAoB,EAAGyB,CAAA,CACzC,EAED,OACEhB,EAAAA,IAAC,OAAA,CACC,IAAKY,EACL,UAAWxB,EAAG,GAAGG,CAAa,WAAW,EACzC,cAAaa,EACb,SAAWc,GAAkC,CAC3CA,EAAE,eAAA,EACFT,IAAWS,CAAC,CACd,EAEA,SAAAlB,EAAAA,IAACmB,EAAAA,UAAA,CACC,IAAAN,EACA,UAAWI,EACX,qBAAAX,EACA,SAAAZ,EACA,QAAAc,EACA,eACGD,EAEG,KADFP,EAAAA,IAACD,EAAAA,GAAW,KAAK,KAAK,UAAWX,EAAG,GAAGG,CAAa,eAAe,CAAA,EAAO,GAAI,EAGlF,WACEoB,IAAY,YACVX,EAAAA,IAACR,EAAA,CACC,SAAAE,EACA,SAAUa,EACV,MAAOG,EACP,cAAaI,EAAU,QAAQ,CAAA,CAAA,EAE/B,KAEN,cAAaA,EAAU,YAAY,EACnC,KAAK,SACJ,GAAGjB,CAAA,CAAA,CACN,CAAA,CAGN,CACF,EAEAK,EAAY,YAAc"}
1
+ {"version":3,"file":"search-field-CanOlkIY.js","sources":["../../../components/search-field/src/search-field-button.tsx","../../../components/search-field/src/search-field.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"@purpur/button\";\nimport { IconSearch } from \"@purpur/icon/search\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./search-field-button.module.scss\";\n\ntype Props = {\n [\"data-testid\"]?: string;\n disabled?: boolean;\n iconOnly?: boolean;\n label: string;\n};\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-search-field-button\";\n\nexport const SearchFieldButton = ({\n [\"data-testid\"]: dataTestid,\n disabled,\n iconOnly,\n label,\n}: Props) => {\n const props = {\n className: cx(rootClassName, {\n [`${rootClassName}--icon-only`]: iconOnly,\n }),\n disabled,\n [\"data-testid\"]: dataTestid,\n };\n\n if (iconOnly) {\n return (\n <Button {...props} aria-label={label} iconOnly size=\"sm\" type=\"submit\" variant=\"primary\">\n <IconSearch size=\"xs\" />\n </Button>\n );\n }\n\n return (\n <Button {...props} size=\"sm\" type=\"submit\" variant=\"primary\">\n {label}\n </Button>\n );\n};\n","import React, { type ChangeEvent, type FormEvent, forwardRef, type RefObject } from \"react\";\nimport { IconSearch } from \"@purpur/icon/search\";\nimport { TextField, type TextFieldProps } from \"@purpur/text-field\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./search-field.module.scss\";\nimport { SearchFieldButton } from \"./search-field-button\";\n\nexport const searchFieldVariants = [\"button-attached\", \"no-button\"] as const;\n\ntype Variant = (typeof searchFieldVariants)[number];\n\ntype DefaultProps = {\n [\"data-testid\"]?: string;\n /**\n * An accessible label for the clear button.\n * */\n clearButtonAriaLabel: string;\n /**\n * Disables both the input field and submit button if `true`.\n * */\n disabled?: boolean;\n /**\n * Will display only a search icon in the search button if `true`.\n * */\n iconOnlySearchButton?: boolean;\n /**\n * Event handler called when the value of the search field changes.\n * */\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void;\n /**\n * Event handler called when the clear button is clicked.\n * */\n onClear: () => void;\n /**\n * Event handler called when the search form is submitted.\n * */\n onSearch?: (e: FormEvent<HTMLFormElement>) => void;\n /**\n * The label text (or `aria-label` if `iconOnlySearchButton` is `true`) of the search button.\n * */\n searchButtonLabel?: string;\n variant: Variant;\n formRef?: RefObject<HTMLFormElement>;\n};\n\ntype TextSearchButton = {\n iconOnlySearchButton?: false;\n searchButtonLabel: string;\n variant: \"button-attached\";\n};\n\ntype IconOnlySearchButton = {\n iconOnlySearchButton: true;\n searchButtonLabel: string;\n variant: \"button-attached\";\n};\n\ntype NoButton = {\n searchButtonLabel?: never;\n variant: \"no-button\";\n};\n\nexport type SearchFieldProps = DefaultProps &\n (TextSearchButton | IconOnlySearchButton | NoButton) &\n Omit<TextFieldProps, \"startAdornment\" | \"endAdornment\" | \"afterField\" | \"onChange\">;\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-search-field\";\n\nexport const SearchField = forwardRef<HTMLInputElement, SearchFieldProps>(\n (\n {\n [\"data-testid\"]: dataTestId,\n className,\n clearButtonAriaLabel,\n disabled,\n iconOnlySearchButton,\n onClear,\n onSearch,\n searchButtonLabel,\n variant,\n formRef,\n ...props\n },\n ref\n ) => {\n const getTestId = (name: string) => (dataTestId ? `${dataTestId}-${name}` : undefined);\n const hasValue =\n typeof props.value === \"number\" ? props.value !== undefined : props.value?.length;\n const hasClearButton = hasValue && !disabled && !props.readOnly && !props.loading;\n\n const classes = cx(className, rootClassName, {\n [`${rootClassName}--no-gap`]: variant === \"button-attached\",\n [`${rootClassName}--has-clear-button`]: hasClearButton,\n });\n\n return (\n <form\n ref={formRef}\n className={cx(`${rootClassName}__wrapper`)}\n data-testid={dataTestId}\n onSubmit={(e: FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n onSearch?.(e);\n }}\n >\n <TextField\n ref={ref}\n className={classes}\n clearButtonAriaLabel={clearButtonAriaLabel}\n disabled={disabled}\n onClear={onClear}\n startAdornment={\n !iconOnlySearchButton ? (\n <IconSearch size=\"xs\" className={cx(`${rootClassName}__search-icon`)} key=\"1\" />\n ) : null\n }\n afterField={\n variant !== \"no-button\" ? (\n <SearchFieldButton\n disabled={disabled}\n iconOnly={iconOnlySearchButton}\n label={searchButtonLabel}\n data-testid={getTestId(\"button\")}\n />\n ) : null\n }\n data-testid={getTestId(\"text-field\")}\n type=\"search\"\n {...props}\n />\n </form>\n );\n }\n);\n\nSearchField.displayName = \"SearchField\";\n"],"names":["cx","c","styles","rootClassName","SearchFieldButton","dataTestid","disabled","iconOnly","label","props","Button","IconSearch","jsx","searchFieldVariants","SearchField","forwardRef","dataTestId","className","clearButtonAriaLabel","iconOnlySearchButton","onClear","onSearch","searchButtonLabel","variant","formRef","ref","getTestId","name","hasClearButton","classes","e","TextField"],"mappings":"k4BAcMA,EAAKC,EAAAA,EAAE,KAAKC,CAAM,EAClBC,EAAgB,6BAETC,EAAoB,CAAC,CAChC,CAAC,eAAgBC,EACjB,SAAAC,EACA,SAAAC,EACA,MAAAC,CACF,IAAa,CACX,MAAMC,EAAQ,CACZ,UAAWT,EAAGG,EAAe,CAC3B,CAAC,GAAGA,CAAa,aAAa,EAAGI,CAAA,CAClC,EACD,SAAAD,EACC,cAAgBD,CAAA,EAGnB,OAAIE,QAECG,SAAA,CAAQ,GAAGD,EAAO,aAAYD,EAAO,SAAQ,GAAC,KAAK,KAAK,KAAK,SAAS,QAAQ,UAC7E,eAACG,EAAAA,EAAA,CAAW,KAAK,KAAK,EACxB,EAKFC,EAAAA,IAACF,EAAAA,OAAA,CAAQ,GAAGD,EAAO,KAAK,KAAK,KAAK,SAAS,QAAQ,UAChD,SAAAD,CAAA,CACH,CAEJ,ECpCaK,EAAsB,CAAC,kBAAmB,WAAW,EA2D5Db,EAAKC,EAAAA,EAAE,KAAKC,CAAM,EAClBC,EAAgB,sBAETW,EAAcC,EAAAA,WACzB,CACE,CACE,CAAC,eAAgBC,EACjB,UAAAC,EACA,qBAAAC,EACA,SAAAZ,EACA,qBAAAa,EACA,QAAAC,EACA,SAAAC,EACA,kBAAAC,EACA,QAAAC,EACA,QAAAC,EACA,GAAGf,CAAA,EAELgB,IACG,CACH,MAAMC,EAAaC,GAAkBX,EAAa,GAAGA,CAAU,IAAIW,CAAI,GAAK,OAGtEC,GADJ,OAAOnB,EAAM,OAAU,SAAWA,EAAM,QAAU,OAAYA,EAAM,OAAO,SAC1C,CAACH,GAAY,CAACG,EAAM,UAAY,CAACA,EAAM,QAEpEoB,EAAU7B,EAAGiB,EAAWd,EAAe,CAC3C,CAAC,GAAGA,CAAa,UAAU,EAAGoB,IAAY,kBAC1C,CAAC,GAAGpB,CAAa,oBAAoB,EAAGyB,CAAA,CACzC,EAED,OACEhB,EAAAA,IAAC,OAAA,CACC,IAAKY,EACL,UAAWxB,EAAG,GAAGG,CAAa,WAAW,EACzC,cAAaa,EACb,SAAWc,GAAkC,CAC3CA,EAAE,eAAA,EACFT,IAAWS,CAAC,CACd,EAEA,SAAAlB,EAAAA,IAACmB,EAAAA,UAAA,CACC,IAAAN,EACA,UAAWI,EACX,qBAAAX,EACA,SAAAZ,EACA,QAAAc,EACA,eACGD,EAEG,KADFP,EAAAA,IAACD,EAAAA,GAAW,KAAK,KAAK,UAAWX,EAAG,GAAGG,CAAa,eAAe,CAAA,EAAO,GAAI,EAGlF,WACEoB,IAAY,YACVX,EAAAA,IAACR,EAAA,CACC,SAAAE,EACA,SAAUa,EACV,MAAOG,EACP,cAAaI,EAAU,QAAQ,CAAA,CAAA,EAE/B,KAEN,cAAaA,EAAU,YAAY,EACnC,KAAK,SACJ,GAAGjB,CAAA,CAAA,CACN,CAAA,CAGN,CACF,EAEAK,EAAY,YAAc"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./search-field-CxX4BBcg.js");exports.SearchField=e.SearchField;exports.searchFieldVariants=e.searchFieldVariants;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./search-field-CanOlkIY.js");exports.SearchField=e.SearchField;exports.searchFieldVariants=e.searchFieldVariants;
2
2
  //# sourceMappingURL=search-field.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { S as r, s } from "./search-field-DH0xeW_J.mjs";
1
+ import { S as r, s } from "./search-field-BOmCVr5b.mjs";
2
2
  export {
3
3
  r as SearchField,
4
4
  s as searchFieldVariants