@adyen/bento-vue2 1.102.0 → 1.103.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 (399) hide show
  1. package/dist/@types/index.d.ts +20 -3
  2. package/dist/accordion.js +1 -1
  3. package/dist/action-bar.js +1 -1
  4. package/dist/ai-tag.js +1 -1
  5. package/dist/alert.js +1 -1
  6. package/dist/anchor-scroller.js +1 -1
  7. package/dist/assets/accordion-item.css +1 -1
  8. package/dist/assets/action-bar.css +1 -1
  9. package/dist/assets/ai-button.css +1 -1
  10. package/dist/assets/anchor-scroller.css +1 -1
  11. package/dist/assets/base-modal.css +1 -1
  12. package/dist/assets/button-actions.css +1 -1
  13. package/dist/assets/button.css +1 -1
  14. package/dist/assets/card.css +1 -1
  15. package/dist/assets/checkbox-input.css +1 -1
  16. package/dist/assets/data-grid.css +1 -1
  17. package/dist/assets/dialog-page.css +1 -1
  18. package/dist/assets/dropdown.css +1 -1
  19. package/dist/assets/empty-state.css +1 -1
  20. package/dist/assets/file-uploader.css +1 -1
  21. package/dist/assets/filter-bar.css +1 -1
  22. package/dist/assets/index.css +1 -1
  23. package/dist/assets/input-field-password.css +1 -1
  24. package/dist/assets/inspector.css +1 -1
  25. package/dist/assets/modal-fullscreen.css +1 -1
  26. package/dist/assets/navigation-menu-group.css +1 -1
  27. package/dist/assets/pagination.css +1 -1
  28. package/dist/assets/radio-input.css +1 -1
  29. package/dist/assets/secondary-nav.css +1 -1
  30. package/dist/assets/selection-card-group.css +1 -1
  31. package/dist/assets/sidepanel.css +1 -1
  32. package/dist/assets/table-of-contents.css +1 -1
  33. package/dist/assets/typography.css +1 -1
  34. package/dist/avatar.js +1 -1
  35. package/dist/button.js +3 -3
  36. package/dist/card.js +1 -1
  37. package/dist/checkbox.js +2 -2
  38. package/dist/chip.js +1 -1
  39. package/dist/chunks/{accordion-item.C0va5Mbv.js → accordion-item.CrVVFIHa.js} +16 -49
  40. package/dist/chunks/{accordion-item.C0va5Mbv.js.map → accordion-item.CrVVFIHa.js.map} +1 -1
  41. package/dist/chunks/{action-bar.-kzjjAuX.js → action-bar.BC1fWyHX.js} +18 -150
  42. package/dist/chunks/{action-bar.-kzjjAuX.js.map → action-bar.BC1fWyHX.js.map} +1 -1
  43. package/dist/chunks/{ai-button.ChLXOu7p.js → ai-button.CP6Bu7PB.js} +3 -3
  44. package/dist/chunks/{ai-button.ChLXOu7p.js.map → ai-button.CP6Bu7PB.js.map} +1 -1
  45. package/dist/chunks/{ai-tag.DhBjifex.js → ai-tag.wYWc7yOx.js} +16 -49
  46. package/dist/chunks/{ai-tag.DhBjifex.js.map → ai-tag.wYWc7yOx.js.map} +1 -1
  47. package/dist/chunks/{alert.CDP-LTh5.js → alert.Dj57zB88.js} +15 -81
  48. package/dist/chunks/{alert.CDP-LTh5.js.map → alert.Dj57zB88.js.map} +1 -1
  49. package/dist/chunks/anchor-scroller.Bhgy748g.js +120 -0
  50. package/dist/chunks/anchor-scroller.Bhgy748g.js.map +1 -0
  51. package/dist/chunks/{avatar.rwWPYJnt.js → avatar.D__jLgjI.js} +2 -2
  52. package/dist/chunks/{avatar.rwWPYJnt.js.map → avatar.D__jLgjI.js.map} +1 -1
  53. package/dist/chunks/{base-button.BPRPrO0p.js → base-button.D5C9VIYP.js} +20 -23
  54. package/dist/chunks/{base-button.BPRPrO0p.js.map → base-button.D5C9VIYP.js.map} +1 -1
  55. package/dist/chunks/{base-modal.BagJ8weI.js → base-modal.DlD_Lj4Y.js} +100 -141
  56. package/dist/chunks/{base-modal.BagJ8weI.js.map → base-modal.DlD_Lj4Y.js.map} +1 -1
  57. package/dist/chunks/button-actions-with-menu.CTgggEw2.js +77 -0
  58. package/dist/chunks/{button-actions-with-menu.DNYoFmV4.js.map → button-actions-with-menu.CTgggEw2.js.map} +1 -1
  59. package/dist/chunks/{button-actions.Dpbx0xf3.js → button-actions.CxX7lK7z.js} +362 -442
  60. package/dist/chunks/{button-actions.Dpbx0xf3.js.map → button-actions.CxX7lK7z.js.map} +1 -1
  61. package/dist/chunks/{button.CKS_V3p5.js → button.C4kKejsg.js} +34 -37
  62. package/dist/chunks/{button.CKS_V3p5.js.map → button.C4kKejsg.js.map} +1 -1
  63. package/dist/chunks/calendar.BoFWdxN7.js +1143 -0
  64. package/dist/chunks/{calendar.CvHJ3Geq.js.map → calendar.BoFWdxN7.js.map} +1 -1
  65. package/dist/chunks/{card.DqMECGcj.js → card.B70qRHOi.js} +34 -70
  66. package/dist/chunks/{card.DqMECGcj.js.map → card.B70qRHOi.js.map} +1 -1
  67. package/dist/chunks/{checkbox-group.YnXz1Hl2.js → checkbox-group.D1zzKsdi.js} +6 -6
  68. package/dist/chunks/{checkbox-group.YnXz1Hl2.js.map → checkbox-group.D1zzKsdi.js.map} +1 -1
  69. package/dist/chunks/{checkbox-input.08E9BNeF.js → checkbox-input.kfxcyjfd.js} +28 -31
  70. package/dist/chunks/{checkbox-input.08E9BNeF.js.map → checkbox-input.kfxcyjfd.js.map} +1 -1
  71. package/dist/chunks/{checkbox.BUc2332d.js → checkbox.Ca0mu2lE.js} +58 -91
  72. package/dist/chunks/{checkbox.BUc2332d.js.map → checkbox.Ca0mu2lE.js.map} +1 -1
  73. package/dist/chunks/{chip.DHmRHsL2.js → chip.wgEnbEPw.js} +16 -38
  74. package/dist/chunks/{chip.DHmRHsL2.js.map → chip.wgEnbEPw.js.map} +1 -1
  75. package/dist/chunks/click-outside.B0whuTUU.js +20 -0
  76. package/dist/chunks/{click-outside.BG01Sm0A.js.map → click-outside.B0whuTUU.js.map} +1 -1
  77. package/dist/chunks/{code-snippet.Cha3wHUL.js → code-snippet.BglbQWRB.js} +19 -74
  78. package/dist/chunks/{code-snippet.Cha3wHUL.js.map → code-snippet.BglbQWRB.js.map} +1 -1
  79. package/dist/chunks/{codemirror.D2BAltnu.js → codemirror.Bzus_EPG.js} +15 -15
  80. package/dist/chunks/{codemirror.D2BAltnu.js.map → codemirror.Bzus_EPG.js.map} +1 -1
  81. package/dist/chunks/constructNow.DyOJDyZZ.js +8 -0
  82. package/dist/chunks/{constructNow.CK0ryPil.js.map → constructNow.DyOJDyZZ.js.map} +1 -1
  83. package/dist/chunks/{controls-group.BomXFNvi.js → controls-group.DPLAJjbv.js} +3 -3
  84. package/dist/chunks/{controls-group.BomXFNvi.js.map → controls-group.DPLAJjbv.js.map} +1 -1
  85. package/dist/chunks/{copy.BlyhTDSU.js → copy.CsKQJlen.js} +16 -60
  86. package/dist/chunks/{copy.BlyhTDSU.js.map → copy.CsKQJlen.js.map} +1 -1
  87. package/dist/chunks/{country.DySY9sbA.js → country.D8ncVjcm.js} +5 -5
  88. package/dist/chunks/{country.DySY9sbA.js.map → country.D8ncVjcm.js.map} +1 -1
  89. package/dist/chunks/country.types.BUW49nQx.js +27 -0
  90. package/dist/chunks/country.types.BUW49nQx.js.map +1 -0
  91. package/dist/chunks/currency.POwX-Trj.js +124 -0
  92. package/dist/chunks/{currency.Dvy9Qjjf.js.map → currency.POwX-Trj.js.map} +1 -1
  93. package/dist/chunks/dashboard-section.Bmu65OHg.js +98 -0
  94. package/dist/chunks/{dashboard-section.D2yqhERq.js.map → dashboard-section.Bmu65OHg.js.map} +1 -1
  95. package/dist/chunks/{dashed-underline.ByPcIHNe.js → dashed-underline.CbzCYKrk.js} +11 -12
  96. package/dist/chunks/{dashed-underline.ByPcIHNe.js.map → dashed-underline.CbzCYKrk.js.map} +1 -1
  97. package/dist/chunks/data-grid-template.BvBHJ0sH.js +102 -0
  98. package/dist/chunks/{data-grid-template.Ifn423Ot.js.map → data-grid-template.BvBHJ0sH.js.map} +1 -1
  99. package/dist/chunks/data-grid.DPh8BSnM.js +3266 -0
  100. package/dist/chunks/{data-grid.BDXQ_kKQ.js.map → data-grid.DPh8BSnM.js.map} +1 -1
  101. package/dist/chunks/date-picker.DutUBQbH.js +183 -0
  102. package/dist/chunks/{date-picker.CXZfCxwP.js.map → date-picker.DutUBQbH.js.map} +1 -1
  103. package/dist/chunks/date-range-picker.5bvgs49h.js +924 -0
  104. package/dist/chunks/{date-range-picker.BzVQsYk4.js.map → date-range-picker.5bvgs49h.js.map} +1 -1
  105. package/dist/chunks/date-time-picker.DUWWGlOX.js +127 -0
  106. package/dist/chunks/{date-time-picker.DaLATfJp.js.map → date-time-picker.DUWWGlOX.js.map} +1 -1
  107. package/dist/chunks/{date.C1HnIyOv.js → date.CPo8t1n9.js} +25 -25
  108. package/dist/chunks/{date.C1HnIyOv.js.map → date.CPo8t1n9.js.map} +1 -1
  109. package/dist/chunks/{de.pvjpUJ1o.js → de.ctR_lBqr.js} +18 -18
  110. package/dist/chunks/{de.pvjpUJ1o.js.map → de.ctR_lBqr.js.map} +1 -1
  111. package/dist/chunks/{dialog-page.B_LwIWgK.js → dialog-page.CPorblJc.js} +16 -38
  112. package/dist/chunks/{dialog-page.B_LwIWgK.js.map → dialog-page.CPorblJc.js.map} +1 -1
  113. package/dist/chunks/differenceInMonths.yz4Dfe-b.js +44 -0
  114. package/dist/chunks/{differenceInMonths.CpwVtHZX.js.map → differenceInMonths.yz4Dfe-b.js.map} +1 -1
  115. package/dist/chunks/{directive.BBWhsNtO.js → directive.D1-d-C2K.js} +2 -2
  116. package/dist/chunks/{directive.BBWhsNtO.js.map → directive.D1-d-C2K.js.map} +1 -1
  117. package/dist/chunks/{draggable-handle.kBP4prVO.js → draggable-handle.g2BFN3G1.js} +18 -114
  118. package/dist/chunks/{draggable-handle.kBP4prVO.js.map → draggable-handle.g2BFN3G1.js.map} +1 -1
  119. package/dist/chunks/draggable.iIsQLiOa.js +168 -0
  120. package/dist/chunks/{draggable.rTa1jcHI.js.map → draggable.iIsQLiOa.js.map} +1 -1
  121. package/dist/chunks/{drawer.DVJxDGw3.js → drawer.CnxX1zZ6.js} +14 -36
  122. package/dist/chunks/{drawer.DVJxDGw3.js.map → drawer.CnxX1zZ6.js.map} +1 -1
  123. package/dist/chunks/{dropdown-tag.CaLA2NLd.js → dropdown-tag.BFnfCah8.js} +77 -81
  124. package/dist/chunks/{dropdown-tag.CaLA2NLd.js.map → dropdown-tag.BFnfCah8.js.map} +1 -1
  125. package/dist/chunks/{dropdown.DIqgVVXB.js → dropdown.Ce2P9MZ-.js} +1131 -1466
  126. package/dist/chunks/{dropdown.DIqgVVXB.js.map → dropdown.Ce2P9MZ-.js.map} +1 -1
  127. package/dist/chunks/empty-state.fziM-yAC.js +102 -0
  128. package/dist/chunks/empty-state.fziM-yAC.js.map +1 -0
  129. package/dist/chunks/{en-GB.-Q7Oq-nY.js → en-GB.BsQNm5GT.js} +2 -2
  130. package/dist/chunks/{en-GB.-Q7Oq-nY.js.map → en-GB.BsQNm5GT.js.map} +1 -1
  131. package/dist/chunks/{en-US.BK5uiAND.js → en-US.BR6y7foR.js} +30 -30
  132. package/dist/chunks/{en-US.BK5uiAND.js.map → en-US.BR6y7foR.js.map} +1 -1
  133. package/dist/chunks/{error-message.Hqp_VvD3.js → error-message.BEHBfjmn.js} +14 -36
  134. package/dist/chunks/{error-message.Hqp_VvD3.js.map → error-message.BEHBfjmn.js.map} +1 -1
  135. package/dist/chunks/{es.2H4LvTyV.js → es.DxqH-QhP.js} +14 -14
  136. package/dist/chunks/{es.2H4LvTyV.js.map → es.DxqH-QhP.js.map} +1 -1
  137. package/dist/chunks/{field-label.DjJ7wdFi.js → field-label.CgdTst2l.js} +15 -37
  138. package/dist/chunks/{field-label.DjJ7wdFi.js.map → field-label.CgdTst2l.js.map} +1 -1
  139. package/dist/chunks/{file-uploader.2rIfQ2jb.js → file-uploader.BG89SLkG.js} +317 -630
  140. package/dist/chunks/{file-uploader.2rIfQ2jb.js.map → file-uploader.BG89SLkG.js.map} +1 -1
  141. package/dist/chunks/filter-bar.BMO8wTzb.js +3087 -0
  142. package/dist/chunks/{filter-bar.qlViDZPY.js.map → filter-bar.BMO8wTzb.js.map} +1 -1
  143. package/dist/chunks/fixed-scroller.oObE3f7m.js +117 -0
  144. package/dist/chunks/{fixed-scroller.04EUUgD_.js.map → fixed-scroller.oObE3f7m.js.map} +1 -1
  145. package/dist/chunks/{focus-trap.oRKjDFzf.js → focus-trap.l-wwtCHi.js} +69 -85
  146. package/dist/chunks/{focus-trap.oRKjDFzf.js.map → focus-trap.l-wwtCHi.js.map} +1 -1
  147. package/dist/chunks/{footer-actions.DXyJtVip.js → footer-actions.Dn9KYoqB.js} +4 -4
  148. package/dist/chunks/{footer-actions.DXyJtVip.js.map → footer-actions.Dn9KYoqB.js.map} +1 -1
  149. package/dist/chunks/{form-layout-group.DnjoLZZM.js → form-layout-group.C_0b8u-g.js} +2 -2
  150. package/dist/chunks/{form-layout-group.DnjoLZZM.js.map → form-layout-group.C_0b8u-g.js.map} +1 -1
  151. package/dist/chunks/{form-layout-title.Bt5bP9r3.js → form-layout-title.YhZCVtoc.js} +15 -37
  152. package/dist/chunks/{form-layout-title.Bt5bP9r3.js.map → form-layout-title.YhZCVtoc.js.map} +1 -1
  153. package/dist/chunks/{fr.Cu0IIfBP.js → fr.DJtn8ron.js} +16 -16
  154. package/dist/chunks/{fr.Cu0IIfBP.js.map → fr.DJtn8ron.js.map} +1 -1
  155. package/dist/chunks/{generate-uid.NJ8tVoha.js → generate-uid.DBWe4g6T.js} +15 -16
  156. package/dist/chunks/{generate-uid.NJ8tVoha.js.map → generate-uid.DBWe4g6T.js.map} +1 -1
  157. package/dist/chunks/get-slot-text.DM_NdrUC.js +6 -0
  158. package/dist/chunks/{get-slot-text.Bjb9dTSV.js.map → get-slot-text.DM_NdrUC.js.map} +1 -1
  159. package/dist/chunks/{grid-layout.1aIiz2N_.js → grid-layout.BeCrjPgT.js} +16 -17
  160. package/dist/chunks/{grid-layout.1aIiz2N_.js.map → grid-layout.BeCrjPgT.js.map} +1 -1
  161. package/dist/chunks/header-meta.mDdMmFUA.js +206 -0
  162. package/dist/chunks/{header-meta.CCQVPDU8.js.map → header-meta.mDdMmFUA.js.map} +1 -1
  163. package/dist/chunks/{header-with-views.CEU6WrV9.js → header-with-views.Dp6SyiPu.js} +791 -1270
  164. package/dist/chunks/{header-with-views.CEU6WrV9.js.map → header-with-views.Dp6SyiPu.js.map} +1 -1
  165. package/dist/chunks/{header.BoNOTATn.js → header.DUAxdw_d.js} +4 -4
  166. package/dist/chunks/{header.BoNOTATn.js.map → header.DUAxdw_d.js.map} +1 -1
  167. package/dist/chunks/{index.C7m7gI5w.js → index.CL3TXc0a.js} +154 -160
  168. package/dist/chunks/{index.C7m7gI5w.js.map → index.CL3TXc0a.js.map} +1 -1
  169. package/dist/chunks/{index.B6WW_F-J.js → index.CPOlyau9.js} +5 -5
  170. package/dist/chunks/index.CPOlyau9.js.map +1 -0
  171. package/dist/chunks/{info-icon.BnLYUTzI.js → info-icon.BRnbXunj.js} +3 -3
  172. package/dist/chunks/{info-icon.BnLYUTzI.js.map → info-icon.BRnbXunj.js.map} +1 -1
  173. package/dist/chunks/input-field-password.C9_o6Kg2.js +230 -0
  174. package/dist/chunks/input-field-password.C9_o6Kg2.js.map +1 -0
  175. package/dist/chunks/{input-field-phone-number.CPjH0EVF.js → input-field-phone-number.zRjd8HPi.js} +724 -756
  176. package/dist/chunks/{input-field-phone-number.CPjH0EVF.js.map → input-field-phone-number.zRjd8HPi.js.map} +1 -1
  177. package/dist/chunks/{input-field.BEV5lhwO.js → input-field.BTt1ORWU.js} +22 -58
  178. package/dist/chunks/{input-field.BEV5lhwO.js.map → input-field.BTt1ORWU.js.map} +1 -1
  179. package/dist/chunks/{input-time.En4O4DRD.js → input-time.BfJIDgaH.js} +15 -48
  180. package/dist/chunks/{input-time.En4O4DRD.js.map → input-time.BfJIDgaH.js.map} +1 -1
  181. package/dist/chunks/{inspector-page.OKPf0I4k.js → inspector-page.i8bVjo9U.js} +4 -4
  182. package/dist/chunks/{inspector-page.OKPf0I4k.js.map → inspector-page.i8bVjo9U.js.map} +1 -1
  183. package/dist/chunks/{inspector.DoQPHzCc.js → inspector.Aet0jTC2.js} +39 -106
  184. package/dist/chunks/{inspector.DoQPHzCc.js.map → inspector.Aet0jTC2.js.map} +1 -1
  185. package/dist/chunks/isSameWeek.CieN9XgL.js +14 -0
  186. package/dist/chunks/{isSameWeek.TrpUOIn5.js.map → isSameWeek.CieN9XgL.js.map} +1 -1
  187. package/dist/chunks/{it.B65snrJA.js → it.keS7oN5l.js} +8 -8
  188. package/dist/chunks/{it.B65snrJA.js.map → it.keS7oN5l.js.map} +1 -1
  189. package/dist/chunks/{ja.xGVfFSzL.js → ja.cLwacUE6.js} +27 -27
  190. package/dist/chunks/{ja.xGVfFSzL.js.map → ja.cLwacUE6.js.map} +1 -1
  191. package/dist/chunks/{layout-row.CPFK9Bg7.js → layout-row.HslYnPgn.js} +34 -35
  192. package/dist/chunks/{layout-row.CPFK9Bg7.js.map → layout-row.HslYnPgn.js.map} +1 -1
  193. package/dist/chunks/{link.Cejg8jB6.js → link.CscSbaXa.js} +15 -37
  194. package/dist/chunks/{link.Cejg8jB6.js.map → link.CscSbaXa.js.map} +1 -1
  195. package/dist/chunks/list-item.Cngxa9qN.js +166 -0
  196. package/dist/chunks/{list-item.BiJMHR7b.js.map → list-item.Cngxa9qN.js.map} +1 -1
  197. package/dist/chunks/{listbox-option-tag.DnvECZQC.js → listbox-option-tag.BaoiH-Ku.js} +3 -3
  198. package/dist/chunks/{listbox-option-tag.DnvECZQC.js.map → listbox-option-tag.BaoiH-Ku.js.map} +1 -1
  199. package/dist/chunks/{modal-fullscreen.Bn8MzG6Z.js → modal-fullscreen.Cg1Q6ERf.js} +64 -93
  200. package/dist/chunks/{modal-fullscreen.Bn8MzG6Z.js.map → modal-fullscreen.Cg1Q6ERf.js.map} +1 -1
  201. package/dist/chunks/{modal.CClQItuJ.js → modal.u-t1CvBr.js} +81 -105
  202. package/dist/chunks/{modal.CClQItuJ.js.map → modal.u-t1CvBr.js.map} +1 -1
  203. package/dist/chunks/{navigation-menu-group.p1-x06nS.js → navigation-menu-group.gNMP4tW4.js} +80 -129
  204. package/dist/chunks/{navigation-menu-group.p1-x06nS.js.map → navigation-menu-group.gNMP4tW4.js.map} +1 -1
  205. package/dist/chunks/{on-click-outside.Cy1eFULD.js → on-click-outside.BgIzQ2G1.js} +32 -33
  206. package/dist/chunks/{on-click-outside.Cy1eFULD.js.map → on-click-outside.BgIzQ2G1.js.map} +1 -1
  207. package/dist/chunks/{pagination.CZVdaeqE.js → pagination.D81XgMQ7.js} +73 -192
  208. package/dist/chunks/pagination.D81XgMQ7.js.map +1 -0
  209. package/dist/chunks/{payment-method.B3CkgsAY.js → payment-method.Clm5dEYh.js} +2 -2
  210. package/dist/chunks/{payment-method.B3CkgsAY.js.map → payment-method.Clm5dEYh.js.map} +1 -1
  211. package/dist/chunks/popover.types.H5Y0rC1r.js +6 -0
  212. package/dist/chunks/{popover.types.BfnJIpII.js.map → popover.types.H5Y0rC1r.js.map} +1 -1
  213. package/dist/chunks/{popper-container.Cb9wuFId.js → popper-container.D08eTt4B.js} +245 -252
  214. package/dist/chunks/{popper-container.Cb9wuFId.js.map → popper-container.D08eTt4B.js.map} +1 -1
  215. package/dist/chunks/{promo-banner.DZ0gerRx.js → promo-banner.BX47zMKh.js} +17 -39
  216. package/dist/chunks/{promo-banner.DZ0gerRx.js.map → promo-banner.BX47zMKh.js.map} +1 -1
  217. package/dist/chunks/{pt-BR.D9FuAQZm.js → pt-BR.ChPOra5s.js} +14 -14
  218. package/dist/chunks/{pt-BR.D9FuAQZm.js.map → pt-BR.ChPOra5s.js.map} +1 -1
  219. package/dist/chunks/{radio-group.DUW2dya4.js → radio-group.Dtx5hOkQ.js} +23 -23
  220. package/dist/chunks/{radio-group.DUW2dya4.js.map → radio-group.Dtx5hOkQ.js.map} +1 -1
  221. package/dist/chunks/{rich-text-editor.CuCPLzUh.js → rich-text-editor.CmVsFJjh.js} +1364 -1416
  222. package/dist/chunks/{rich-text-editor.CuCPLzUh.js.map → rich-text-editor.CmVsFJjh.js.map} +1 -1
  223. package/dist/chunks/scroll-to-section.DhW8SFy0.js +101 -0
  224. package/dist/chunks/scroll-to-section.DhW8SFy0.js.map +1 -0
  225. package/dist/chunks/{search-bar.8iDkgmjw.js → search-bar.CRfYCmkl.js} +15 -48
  226. package/dist/chunks/{search-bar.8iDkgmjw.js.map → search-bar.CRfYCmkl.js.map} +1 -1
  227. package/dist/chunks/secondary-nav.B1Tj7MAA.js +192 -0
  228. package/dist/chunks/{secondary-nav.CmvSHxvS.js.map → secondary-nav.B1Tj7MAA.js.map} +1 -1
  229. package/dist/chunks/{segmented-control.Bkp2Y95s.js → segmented-control.CBc-wx0m.js} +44 -48
  230. package/dist/chunks/{segmented-control.Bkp2Y95s.js.map → segmented-control.CBc-wx0m.js.map} +1 -1
  231. package/dist/chunks/{selection-card-group.EGigQJOW.js → selection-card-group.BaK3Rt4K.js} +91 -96
  232. package/dist/chunks/{selection-card-group.EGigQJOW.js.map → selection-card-group.BaK3Rt4K.js.map} +1 -1
  233. package/dist/chunks/set-time-in-date.BVfkl8K8.js +27 -0
  234. package/dist/chunks/{set-time-in-date.CU7HeZLY.js.map → set-time-in-date.BVfkl8K8.js.map} +1 -1
  235. package/dist/chunks/{sidepanel.yB7YuzVt.js → sidepanel.DeIREn9l.js} +55 -78
  236. package/dist/chunks/{sidepanel.yB7YuzVt.js.map → sidepanel.DeIREn9l.js.map} +1 -1
  237. package/dist/chunks/startOfWeek.muMEhS7U.js +9 -0
  238. package/dist/chunks/{startOfWeek.Br5KM4z_.js.map → startOfWeek.muMEhS7U.js.map} +1 -1
  239. package/dist/chunks/{status.CKb07vxI.js → status.DJ1Dfh5s.js} +2 -2
  240. package/dist/chunks/{status.CKb07vxI.js.map → status.DJ1Dfh5s.js.map} +1 -1
  241. package/dist/chunks/step.DfI11Din.js +221 -0
  242. package/dist/chunks/{step.CIfxl8Wm.js.map → step.DfI11Din.js.map} +1 -1
  243. package/dist/chunks/{structured-list-item.Cnv4Pw5n.js → structured-list-item._7YG2L3a.js} +18 -40
  244. package/dist/chunks/{structured-list-item.Cnv4Pw5n.js.map → structured-list-item._7YG2L3a.js.map} +1 -1
  245. package/dist/chunks/{summary-grid.types.BcIlkfVO.js → summary-grid.types.B_gUEQ0c.js} +45 -50
  246. package/dist/chunks/{summary-grid.types.BcIlkfVO.js.map → summary-grid.types.B_gUEQ0c.js.map} +1 -1
  247. package/dist/chunks/tab.DFk4K9cq.js +229 -0
  248. package/dist/chunks/{tab.N0xGWsfO.js.map → tab.DFk4K9cq.js.map} +1 -1
  249. package/dist/chunks/table-of-contents.CoEnQ9g7.js +104 -0
  250. package/dist/chunks/{table-of-contents.Cf-IrdZl.js.map → table-of-contents.CoEnQ9g7.js.map} +1 -1
  251. package/dist/chunks/{tag.BAyLm485.js → tag.BC7FFENr.js} +4 -4
  252. package/dist/chunks/{tag.BAyLm485.js.map → tag.BC7FFENr.js.map} +1 -1
  253. package/dist/chunks/textarea.Z-VYFZVq.js +176 -0
  254. package/dist/chunks/{textarea.BDRR1zE0.js.map → textarea.Z-VYFZVq.js.map} +1 -1
  255. package/dist/chunks/{timeline-item.QEEIwYMy.js → timeline-item.BGHi_lOY.js} +114 -193
  256. package/dist/chunks/{timeline-item.QEEIwYMy.js.map → timeline-item.BGHi_lOY.js.map} +1 -1
  257. package/dist/chunks/{toast.XPG0vaQB.js → toast.D-jat1Xw.js} +64 -86
  258. package/dist/chunks/{toast.XPG0vaQB.js.map → toast.D-jat1Xw.js.map} +1 -1
  259. package/dist/chunks/{toggle.Ca-MM3dt.js → toggle.BqHWIhqD.js} +4 -4
  260. package/dist/chunks/{toggle.Ca-MM3dt.js.map → toggle.BqHWIhqD.js.map} +1 -1
  261. package/dist/chunks/{tooltip.7ct8WxCl.js → tooltip.D_XsoD_u.js} +68 -70
  262. package/dist/chunks/{tooltip.7ct8WxCl.js.map → tooltip.D_XsoD_u.js.map} +1 -1
  263. package/dist/chunks/truncate.DmCXQmeb.js +8 -0
  264. package/dist/chunks/{truncate.BfIl_-71.js.map → truncate.DmCXQmeb.js.map} +1 -1
  265. package/dist/chunks/{tutorial.bROv3HSx.js → tutorial.BtxKW4ac.js} +80 -173
  266. package/dist/chunks/{tutorial.bROv3HSx.js.map → tutorial.BtxKW4ac.js.map} +1 -1
  267. package/dist/chunks/typography.D1OZJbEa.js +90 -0
  268. package/dist/chunks/typography.D1OZJbEa.js.map +1 -0
  269. package/dist/chunks/{use-bento-delayed-hover.Bz_8EabW.js → use-bento-delayed-hover.D6QjSugc.js} +2 -2
  270. package/dist/chunks/{use-bento-delayed-hover.Bz_8EabW.js.map → use-bento-delayed-hover.D6QjSugc.js.map} +1 -1
  271. package/dist/chunks/{use-bento-toast-controller.CB6Qbf3R.js → use-bento-toast-controller.A5xraVqa.js} +14 -15
  272. package/dist/chunks/{use-bento-toast-controller.CB6Qbf3R.js.map → use-bento-toast-controller.A5xraVqa.js.map} +1 -1
  273. package/dist/chunks/use-country-items.B1KhLbqM.js +30 -0
  274. package/dist/chunks/{use-country-items.CmCRY7QX.js.map → use-country-items.B1KhLbqM.js.map} +1 -1
  275. package/dist/chunks/use-country-phon-code.Cv5YgCOo.js +291 -0
  276. package/dist/chunks/use-country-phon-code.Cv5YgCOo.js.map +1 -0
  277. package/dist/chunks/use-date-input-formatter.DXwvH7B0.js +1629 -0
  278. package/dist/chunks/{use-date-input-formatter.DfQk8_Dw.js.map → use-date-input-formatter.DXwvH7B0.js.map} +1 -1
  279. package/dist/chunks/use-expandable-content-height.Bdd9hQwq.js +34 -0
  280. package/dist/chunks/{use-expandable-content-height.2WJLCL-R.js.map → use-expandable-content-height.Bdd9hQwq.js.map} +1 -1
  281. package/dist/chunks/utils.DWmc2mUI.js +19 -0
  282. package/dist/chunks/{utils.BzUwtTXc.js.map → utils.DWmc2mUI.js.map} +1 -1
  283. package/dist/chunks/{zh-CN.Be4pa3-g.js → zh-CN.ZG6obniO.js} +28 -28
  284. package/dist/chunks/{zh-CN.Be4pa3-g.js.map → zh-CN.ZG6obniO.js.map} +1 -1
  285. package/dist/click-outside.js +1 -1
  286. package/dist/code-snippet.js +1 -1
  287. package/dist/country.js +3 -3
  288. package/dist/currency.js +1 -1
  289. package/dist/dashboard-template.js +1 -1
  290. package/dist/dashed-underline.js +1 -1
  291. package/dist/data-grid-template.js +1 -1
  292. package/dist/data-grid.js +1 -1
  293. package/dist/date-picker.js +2 -2
  294. package/dist/date-range-picker.js +2 -2
  295. package/dist/date-time-picker.js +1 -1
  296. package/dist/date.js +1 -1
  297. package/dist/draggable.js +2 -2
  298. package/dist/drawer.js +1 -1
  299. package/dist/dropdown.js +2 -2
  300. package/dist/empty-state.js +1 -1
  301. package/dist/file-uploader.js +1 -1
  302. package/dist/filter-bar.js +1 -1
  303. package/dist/focus-trap.js +1 -1
  304. package/dist/form-layout.js +2 -2
  305. package/dist/header-with-views.js +1 -1
  306. package/dist/header.js +1 -1
  307. package/dist/index.js +144 -149
  308. package/dist/index.js.map +1 -1
  309. package/dist/info-icon.js +1 -1
  310. package/dist/input-field-password.js +1 -1
  311. package/dist/input-field-phone-number.js +1 -1
  312. package/dist/input-field.js +1 -1
  313. package/dist/input-time.js +1 -1
  314. package/dist/inspector.js +2 -2
  315. package/dist/internal.js +14 -14
  316. package/dist/layout.js +1 -1
  317. package/dist/link.js +1 -1
  318. package/dist/list.js +1 -1
  319. package/dist/menu.js +1 -1
  320. package/dist/modal-fullscreen.js +1 -1
  321. package/dist/modal.js +2 -2
  322. package/dist/navigation-menu.js +1 -1
  323. package/dist/pagination.js +1 -1
  324. package/dist/payment-method.js +1 -1
  325. package/dist/popover.js +2 -2
  326. package/dist/popper-container.js +1 -1
  327. package/dist/promo-banner.js +1 -1
  328. package/dist/radio-group.js +1 -1
  329. package/dist/rich-text-editor.js +1 -1
  330. package/dist/search-bar.js +2 -2
  331. package/dist/secondary-nav.js +1 -1
  332. package/dist/segmented-control.js +1 -1
  333. package/dist/selection-card.js +1 -1
  334. package/dist/sidepanel.js +1 -1
  335. package/dist/status.js +1 -1
  336. package/dist/stepper.js +1 -1
  337. package/dist/structured-list.js +1 -1
  338. package/dist/summary-grid.js +1 -1
  339. package/dist/table-of-contents.js +1 -1
  340. package/dist/tabs.js +1 -1
  341. package/dist/tag.js +1 -1
  342. package/dist/textarea.js +1 -1
  343. package/dist/timeline.js +1 -1
  344. package/dist/toast.js +1 -1
  345. package/dist/toggle.js +1 -1
  346. package/dist/tutorial.js +1 -1
  347. package/dist/typography.js +1 -1
  348. package/dist/use-form-v4.js +331 -341
  349. package/dist/use-form-v4.js.map +1 -1
  350. package/dist/web-types.json +32 -2
  351. package/package.json +11 -11
  352. package/dist/chunks/anchor-scroller.DgC74yeM.js +0 -141
  353. package/dist/chunks/anchor-scroller.DgC74yeM.js.map +0 -1
  354. package/dist/chunks/button-actions-with-menu.DNYoFmV4.js +0 -85
  355. package/dist/chunks/calendar.CvHJ3Geq.js +0 -1247
  356. package/dist/chunks/click-outside.BG01Sm0A.js +0 -23
  357. package/dist/chunks/constructNow.CK0ryPil.js +0 -8
  358. package/dist/chunks/country.types.8GCHsdGN.js +0 -2789
  359. package/dist/chunks/country.types.8GCHsdGN.js.map +0 -1
  360. package/dist/chunks/currency.Dvy9Qjjf.js +0 -126
  361. package/dist/chunks/dashboard-section.D2yqhERq.js +0 -102
  362. package/dist/chunks/data-grid-template.Ifn423Ot.js +0 -111
  363. package/dist/chunks/data-grid.BDXQ_kKQ.js +0 -4121
  364. package/dist/chunks/date-picker.CXZfCxwP.js +0 -252
  365. package/dist/chunks/date-range-picker.BzVQsYk4.js +0 -1295
  366. package/dist/chunks/date-time-picker.DaLATfJp.js +0 -202
  367. package/dist/chunks/differenceInMonths.CpwVtHZX.js +0 -44
  368. package/dist/chunks/draggable.rTa1jcHI.js +0 -196
  369. package/dist/chunks/empty-state.DSVU1vU8.js +0 -106
  370. package/dist/chunks/empty-state.DSVU1vU8.js.map +0 -1
  371. package/dist/chunks/filter-bar.qlViDZPY.js +0 -3754
  372. package/dist/chunks/fixed-scroller.04EUUgD_.js +0 -152
  373. package/dist/chunks/get-slot-text.Bjb9dTSV.js +0 -12
  374. package/dist/chunks/header-meta.CCQVPDU8.js +0 -250
  375. package/dist/chunks/index.B6WW_F-J.js.map +0 -1
  376. package/dist/chunks/input-field-password.Bri9q5EV.js +0 -395
  377. package/dist/chunks/input-field-password.Bri9q5EV.js.map +0 -1
  378. package/dist/chunks/isSameWeek.TrpUOIn5.js +0 -14
  379. package/dist/chunks/list-item.BiJMHR7b.js +0 -226
  380. package/dist/chunks/pagination.CZVdaeqE.js.map +0 -1
  381. package/dist/chunks/popover.types.BfnJIpII.js +0 -6
  382. package/dist/chunks/scroll-to-section.CC5g-HBX.js +0 -111
  383. package/dist/chunks/scroll-to-section.CC5g-HBX.js.map +0 -1
  384. package/dist/chunks/secondary-nav.CmvSHxvS.js +0 -266
  385. package/dist/chunks/set-time-in-date.CU7HeZLY.js +0 -27
  386. package/dist/chunks/startOfWeek.Br5KM4z_.js +0 -10
  387. package/dist/chunks/step.CIfxl8Wm.js +0 -253
  388. package/dist/chunks/tab.N0xGWsfO.js +0 -259
  389. package/dist/chunks/table-of-contents.Cf-IrdZl.js +0 -129
  390. package/dist/chunks/textarea.BDRR1zE0.js +0 -224
  391. package/dist/chunks/truncate.BfIl_-71.js +0 -8
  392. package/dist/chunks/typography.C8lPlsbD.js +0 -87
  393. package/dist/chunks/typography.C8lPlsbD.js.map +0 -1
  394. package/dist/chunks/use-country-items.CmCRY7QX.js +0 -30
  395. package/dist/chunks/use-country-phon-code.BWkb546s.js +0 -6641
  396. package/dist/chunks/use-country-phon-code.BWkb546s.js.map +0 -1
  397. package/dist/chunks/use-date-input-formatter.DfQk8_Dw.js +0 -1732
  398. package/dist/chunks/use-expandable-content-height.2WJLCL-R.js +0 -35
  399. package/dist/chunks/utils.BzUwtTXc.js +0 -21
@@ -1 +1 @@
1
- {"version":3,"file":"selection-card-group.EGigQJOW.js","sources":["../../src/components/selection-card/selection-card.types.ts","../../src/components/selection-card/selection-card.keys.ts","../../src/components/selection-card/selection-card.vue","../../src/components/selection-card/components/selection-card-group/selection-card-group.vue"],"sourcesContent":["import { type RadioInputValue } from '@/components/internal/radio-input';\nimport { type BentoCheckboxType } from '../checkbox/checkbox.types';\nimport { type VueNodeElement } from '@/types/elements';\n\nexport enum BentoSelectionCardState {\n DISABLED = 'disabled',\n READONLY = 'readonly',\n ERROR = 'error',\n}\n\nexport type BentoSelectionCardValue = string | number;\n\nexport type BentoSelectionCardModelValue = BentoCheckboxType | RadioInputValue;\n\nexport interface BentoSelectionCardItem {\n content?: string | object;\n description?: string;\n disabled?: boolean;\n dynamicContent?: string | object;\n fullyClickable?: boolean;\n hasError?: boolean;\n icon?: VueNodeElement;\n readonly?: boolean;\n subtitle?: string;\n title: string;\n value: BentoSelectionCardValue;\n}\n","export const SELECTION_CARD_RADIO_INPUT_INJECTION_KEY = Symbol('selection card radio input injection key');\n","<template>\n <div class=\"b-selection-card\" :class=\"conditionalClasses\" @click=\"handleCardClick\">\n <div class=\"b-selection-card__container\" :class=\"containerConditionalClasses\">\n <div class=\"b-selection-card__checkbox-container\" :class=\"checkboxContainerConditionalClasses\">\n <div class=\"b-selection-card__checkbox-container-text\" :class=\"checkboxContainerTextConditionalClasses\">\n <div v-if=\"hasSlot('icon')\" class=\"b-selection-card__icon\" role=\"presentation\" aria-hidden=\"true\">\n <slot name=\"icon\" />\n </div>\n <label :for=\"inputId\" class=\"b-selection-card__text\" @click.stop.prevent=\"handleCardClick\">\n <bento-typography\n v-if=\"subtitle\"\n class=\"b-selection-card__description\"\n el=\"span\"\n variant=\"caption\"\n >\n {{ subtitle }}\n </bento-typography>\n <bento-typography el=\"span\" variant=\"title\">{{ title }}</bento-typography>\n <bento-typography\n v-if=\"description\"\n id=\"descriptionId\"\n class=\"b-selection-card__description\"\n el=\"span\"\n variant=\"body\"\n >\n {{ description }}\n </bento-typography>\n </label>\n </div>\n <radio-input\n v-if=\"isRadioInput\"\n :id=\"inputId\"\n ref=\"inputRef\"\n :aria-label=\"ariaLabel\"\n :aria-describedby=\"description ? descriptionId : undefined\"\n :disabled=\"disabled\"\n :has-error=\"hasError\"\n :aria-readonly=\"readonly ?? undefined\"\n :value=\"value\"\n :readonly=\"readonly\"\n :model-value=\"computedRadioInputModelValue\"\n />\n <checkbox-input\n v-else\n :id=\"inputId\"\n ref=\"inputRef\"\n :aria-label=\"ariaLabel\"\n :aria-describedby=\"description ? descriptionId : undefined\"\n :disabled=\"disabled\"\n :has-error=\"hasError\"\n :aria-readonly=\"readonly ?? undefined\"\n :value=\"value\"\n :readonly=\"readonly\"\n :model-value=\"computedCheckboxInputModelValue\"\n />\n </div>\n <bento-typography\n v-if=\"hasSlot('content')\"\n ref=\"slotRef\"\n el=\"div\"\n class=\"b-selection-card__slot\"\n :class=\"slotConditionalClasses\"\n >\n <slot name=\"content\" />\n </bento-typography>\n <bento-typography\n v-if=\"hasSlot('dynamicContent') && isChecked\"\n ref=\"dynamicSlotRef\"\n el=\"div\"\n class=\"b-selection-card__slot\"\n :class=\"slotConditionalClasses\"\n >\n <slot name=\"dynamicContent\" />\n </bento-typography>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { BentoTypography } from '@/components/typography';\n import { type BentoCheckboxType, type BentoMultiCheckboxType, CheckboxInput } from '../internal/checkbox-input';\n import { RadioInput, type RadioInputValue } from '../internal/radio-input';\n import { useAriaLabel } from '@/utils/ts/aria-label';\n import { generateUid } from '@/core/utils/ts';\n import { computed, type ComputedRef, inject, type PropType, type Ref, ref, useSlots } from 'vue';\n import { useHasSlot } from '@/composables';\n import type { BentoSelectionCardModelValue, BentoSelectionCardValue } from './selection-card.types';\n import { BentoSelectionCardState } from './selection-card.types';\n import { SELECTION_CARD_RADIO_INPUT_INJECTION_KEY } from './selection-card.keys';\n\n const props = defineProps({\n /**\n * The description of the selection card\n */\n description: {\n type: String,\n default: undefined,\n },\n\n /**\n * Disables the selection card\n */\n disabled: { type: Boolean, default: false },\n\n /**\n * Makes the entire selection card clickable. Clicking over interactive elements inside the card with this prop enabled will not be possible.\n */\n fullyClickable: { type: Boolean, default: false },\n\n /**\n * Shows the selection card in error state\n */\n hasError: { type: Boolean, default: false },\n\n /**\n * This property should not be used directly.\n * It will be used by v-model directive on selection card component.\n *\n * When handling a single input, use a string or a number.\n *\n * When handling multiple inputs, use an array of keys.\n * These keys exist as a set \"value\" prop for each input.\n */\n modelValue: {\n type: [Boolean, String, Array] as PropType<BentoSelectionCardModelValue>,\n default: null,\n },\n\n /**\n * Sets the selection card to readonly\n */\n readonly: { type: Boolean, default: false },\n\n /**\n * The subtitle of the selection card\n */\n subtitle: {\n type: String,\n default: undefined,\n },\n\n /**\n * The title of the selection card\n */\n title: {\n type: String,\n required: true,\n },\n\n /**\n * Indicates the value of the input that will be returned when it's checked.\n */\n value: {\n type: [String, Number] as PropType<BentoSelectionCardValue>,\n required: true,\n },\n });\n\n const emit = defineEmits([\"input\", \"update:model-value\"]);\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const inputId = generateUid('selection-card-input-id');\n const descriptionId = generateUid('selection-card-description');\n\n const computedRadioInputModelValue: ComputedRef<RadioInputValue> = computed(\n () => props.modelValue as RadioInputValue\n );\n const computedCheckboxInputModelValue: ComputedRef<BentoCheckboxType> = computed(\n () => props.modelValue as BentoCheckboxType\n );\n\n const conditionalClasses = computed(() => ({\n 'b-selection-card--checked': isChecked.value,\n 'b-selection-card--fully-clickable': props.fullyClickable,\n }));\n\n const containerConditionalClasses = computed(() => ({\n [`b-selection-card--${BentoSelectionCardState.DISABLED}`]: props.disabled,\n [`b-selection-card--${BentoSelectionCardState.ERROR}`]: props.hasError,\n [`b-selection-card--${BentoSelectionCardState.READONLY}`]: props.readonly,\n 'b-selection-card--center-aligned': isTitleOnly.value,\n }));\n\n const checkboxContainerConditionalClasses = computed(() => ({\n 'b-selection-card__checkbox-container--center-aligned': isTitleOnly.value,\n }));\n\n const checkboxContainerTextConditionalClasses = computed(() => ({\n 'b-selection-card__checkbox-container-text--center-aligned': isTitleOnly.value,\n }));\n\n const slotConditionalClasses = computed(() => ({\n 'b-selection-card__slot--with-icon': hasSlot('icon'),\n }));\n\n const ariaLabel = useAriaLabel({\n ariaLabel: props.title,\n label: props.value as string,\n });\n\n const isCheckboxGroup = computed(() => Array.isArray(props.modelValue));\n\n const isChecked: ComputedRef<boolean> = computed(() => {\n if (isRadioInput.value) {\n return props.value === props.modelValue;\n }\n if (!isCheckboxGroup.value) {\n return props.modelValue as boolean;\n }\n\n return (props.modelValue as BentoMultiCheckboxType).some(item => item === props.value);\n });\n\n const isRadioInput: Ref<boolean> = inject(SELECTION_CARD_RADIO_INPUT_INJECTION_KEY, ref(false));\n\n const isTitleOnly = computed(() => !props.subtitle && !props.description);\n\n const inputRef = ref<InstanceType<typeof RadioInput> | InstanceType<typeof CheckboxInput>>(null);\n const slotRef = ref(null);\n const dynamicSlotRef = ref(null);\n\n // Handle click on the whole card area\n const handleCardClick = (event: Event) => {\n if (inputRef.value.$refs.inputRef === event.target) {\n const newValue = toggleInput();\n onChange(newValue);\n return;\n }\n\n // Do nothing if disabled or readonly\n if (props.disabled && props.readonly) {\n return;\n }\n\n // If it's not fully clickable prevent selecting the card if the click\n // originated in a slot\n if (!props.fullyClickable) {\n // Check if the click originated from the slot - in that case, do nothng\n if (slotRef.value && slotRef.value?.$el?.contains(event.target)) {\n return;\n }\n // Check if the click originated from the dynamic slot - in that case, do nothng\n if (dynamicSlotRef.value && dynamicSlotRef.value?.$el?.contains(event.target)) {\n return;\n }\n // Check if the click originated from the input - in that case do nothing, as the input will emit the event already\n if (inputRef.value && inputRef.value?.$el?.contains(event.target as Node)) {\n return;\n }\n }\n\n // If the click originated outside of these two areas, emit the change event\n const newValue = toggleInput();\n\n onChange(newValue);\n };\n\n const toggleInput = (): BentoSelectionCardModelValue => {\n const currentValue: boolean = (inputRef.value?.$refs.inputRef as HTMLInputElement).checked;\n\n if (isCheckboxGroup.value) {\n const newCheckedList = [...(props.modelValue as BentoMultiCheckboxType)];\n const index = newCheckedList.indexOf(props.value);\n\n if (index === -1) {\n newCheckedList.push(props.value);\n } else {\n newCheckedList.splice(index, 1);\n }\n return newCheckedList;\n }\n\n if (isRadioInput.value) {\n return props.value;\n }\n return currentValue;\n };\n\n const onChange = newValue => {\n if (!props.disabled && !props.readonly) {\n emit('update:model-value', newValue);\n emit('input', newValue);\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * Selection card component. If used standalone, only the checkbox variant can be used. If the checkbox variant is needed, please use the bento-selection-card-group component.\n *\n * @example\n * import { BentoSelectionCard } from '@adyen/bento-vue2';\n * import EmoticonHappyIcon from '@adyen/ui-assets-icons-16/vue/emoticon-happy';\n *\n * export default {\n * components: { BentoSelectionCard, EmoticonHappyIcon },\n * template: `\n * <bento-selection-card title=\"Card title\" :model-value.sync=\"yourModelValue\">\n * <template #icon>\n * <emoticon-happy-icon />\n * </template>\n * </bento-selection-card>\n * `\n * }\n */\n export default {\n name: 'bento-selection-card',\n };\n</script>\n<style lang=\"scss\" scoped src=\"./selection-card.scss\" />\n","<template>\n <controls-group\n ref=\"containerRef\"\n :aria-describedby=\"shouldShowGroupError ? errorMessageId : null\"\n :aria-required=\"required\"\n :label=\"label\"\n :hide-label=\"hideLabel\"\n :description=\"description\"\n :disabled=\"disabled\"\n :tooltip-text=\"tooltipText\"\n :readonly=\"readonly\"\n :required=\"required\"\n :optional=\"optional\"\n class=\"b-selection-card-group\"\n component-name=\"selection-card-group\"\n >\n <div\n v-if=\"!itemsPerRow || layout === 'vertical'\"\n class=\"b-selection-card-group__items\"\n :class=\"conditionalItemsClasses\"\n >\n <bento-selection-card\n v-for=\"item in items\"\n :key=\"`selection-card-${item.value}`\"\n class=\"b-selection-card-group__item\"\n v-bind=\"item\"\n :model-value=\"inputValue\"\n :readonly=\"readonly || item.readonly\"\n :has-error=\"shouldShowGroupError\"\n :disabled=\"disabled || item.disabled\"\n @update:model-value=\"onInput\"\n >\n <template v-if=\"hasSlot('icon') && item.icon\" #icon>\n <slot name=\"icon\" v-bind=\"item\"></slot>\n </template>\n <template v-if=\"hasSlot('content') && item.content\" #content>\n <slot name=\"content\" v-bind=\"item\"></slot>\n </template>\n <template v-if=\"hasSlot('dynamicContent') && item.dynamicContent\" #dynamicContent>\n <slot name=\"dynamicContent\" v-bind=\"item\"></slot>\n </template>\n </bento-selection-card>\n </div>\n <template v-else>\n <div :key=\"`selection-card-group-layout-breakpoint-${currentBreakpoint}`\">\n <grid-layout\n v-for=\"(row, rowIndex) in computedRows\"\n :key=\"`selection-card-group-row-${rowIndex}-cols-${computedItemsPerRow}`\"\n class=\"b-selection-card-group__items--wrap\"\n :column-width=\"computedColumnWidth\"\n >\n <template v-for=\"(item, columnIndex) in row\" #[`col-${Number(columnIndex)+1}`]>\n <bento-selection-card\n :key=\"`selection-card-${item.value}`\"\n class=\"b-selection-card-group__item b-selection-card-group__item--full-height\"\n v-bind=\"item\"\n :model-value=\"inputValue\"\n :readonly=\"readonly || item.readonly\"\n :has-error=\"shouldShowGroupError\"\n :disabled=\"disabled || item.disabled\"\n @update:model-value=\"onInput\"\n >\n <template v-if=\"hasSlot('icon') && item.icon\" #icon>\n <slot name=\"icon\" v-bind=\"item\"></slot>\n </template>\n <template v-if=\"hasSlot('content') && item.content\" #content>\n <slot name=\"content\" v-bind=\"item\"></slot>\n </template>\n <template v-if=\"hasSlot('dynamicContent') && item.dynamicContent\" #dynamicContent>\n <slot name=\"dynamicContent\" v-bind=\"item\"></slot>\n </template>\n </bento-selection-card>\n </template>\n </grid-layout>\n </div>\n </template>\n <error-message\n v-if=\"shouldShowGroupError\"\n :id=\"errorMessageId\"\n :error-message=\"errorMessage\"\n class=\"b-selection-card-group__error-message\"\n />\n </controls-group>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, provide, ref, useSlots, watch } from 'vue';\n import { useElementSize } from '@vueuse/core';\n import { BMediaQueryMMax, BMediaQuerySMax } from '@adyen/bento-design-tokens/dist/js/bento/es6';\n import { type BentoSelectionCardGroupEmits, type BentoSelectionCardGroupProps } from './selection-card-group.types';\n import BentoSelectionCard from '../../selection-card.vue';\n import { ControlsGroup, ErrorMessage, GridLayout } from '../../../internal';\n import { SELECTION_CARD_RADIO_INPUT_INJECTION_KEY } from '../../selection-card.keys';\n import { generateUid } from '@/core/utils/ts';\n import { useFormFieldEmits } from '@/utils/ts/form-field/form-field';\n\n const props = defineProps({\n description: { default: null },\n disabled: { type: Boolean, default: false },\n errorMessage: { default: null },\n label: { default: null },\n optional: { type: Boolean, default: false },\n placeholder: null,\n readonly: { type: Boolean, default: false },\n required: { type: Boolean, default: false },\n tooltipText: { default: null },\n formId: { default: null },\n hideLabel: { type: Boolean, default: null },\n layout: { default: 'vertical' },\n items: null,\n itemsPerRow: { default: undefined },\n modelValue: { default: null },\n variant: { default: 'checkbox' }\n});\n\n const emit = defineEmits([\"update:model-value\", \"input\"]);\n\n const { emitValue } = useFormFieldEmits(emit);\n\n const slots = useSlots();\n // Slots logic\n // Temporary, use-has-slots composable doesn't currently work for vue3 named scoped slots\n // We do the same in bento-checkbox-group\n const hasSlot = name => !!slots[name];\n\n const conditionalItemsClasses = computed(() => ({\n 'b-selection-card-group__items--horizontal': props.layout === 'horizontal',\n }));\n\n const inputValue = ref(props.modelValue);\n watch(\n () => props.modelValue,\n () => {\n inputValue.value = props.modelValue;\n }\n );\n\n // Error message logic\n const errorMessageId = generateUid('error');\n const shouldShowGroupError = computed(() => !props.disabled && !props.readonly && !!props.errorMessage);\n\n // itemsPerRow logic\n const containerRef = ref<HTMLElement | null>(null);\n const { width } = useElementSize(containerRef);\n\n const smallBreakpoint = computed(() => BMediaQuerySMax.split('px')[0]);\n const mediumBreakpoint = computed(() => BMediaQueryMMax.split('px')[0]);\n\n const currentBreakpoint = computed(() => {\n if (width.value < smallBreakpoint.value) {\n return 'small';\n }\n if (width.value >= smallBreakpoint.value && width.value < mediumBreakpoint.value) {\n return 'medium';\n }\n return 'large';\n });\n\n const computedItemsPerRow = computed(() => {\n return (props.itemsPerRow?.[currentBreakpoint?.value] as number) || props.items.length;\n });\n\n const computedRows = computed(() => {\n if (!props.itemsPerRow) {\n return [];\n }\n const rows = [];\n for (let i = 0; i < props.items.length; i += computedItemsPerRow?.value) {\n rows.push(props.items.slice(i, i + computedItemsPerRow?.value));\n }\n return rows;\n });\n\n // We need to compute the column width on 12 because we're using a 12-column system for out grid-layout logic\n const itemColumnWidth = computed(() => 12 / computedItemsPerRow?.value);\n\n /**\n * Filling the columnWidth array with the same parameters per item to pass\n * to the `grid-layout` layout so the each card can have\n * the same width according to the screen size.\n */\n const computedColumnWidth = computed(() => {\n return computedItemsPerRow?.value\n ? new Array(computedItemsPerRow?.value).fill({\n // Instead of passing the actual screen sizes values, passing the same values per each screen size and recomputing it makes sure visually the change is smoother and not laggy\n small: itemColumnWidth.value,\n medium: itemColumnWidth.value,\n large: itemColumnWidth.value,\n })\n : [];\n });\n\n const onInput = value => {\n inputValue.value = value;\n emitValue(value);\n };\n\n const isRadioVariant = computed(() => props.variant === 'radio');\n\n provide(SELECTION_CARD_RADIO_INPUT_INJECTION_KEY, isRadioVariant);\n\n onMounted(() => {\n if (props.itemsPerRow) {\n Object.values(props.itemsPerRow).forEach(el => {\n if (el && (el < 2 || el > 6)) {\n throw new Error(\n 'itemsPerRow values must have a value between 2 and 6 items per row. Read the documentation for more information.'\n );\n }\n });\n }\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Group of bento-selection-cards.\n *\n * @example\n * import { BentoSelectionCardGroup } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSelectionCardGroup },\n * template: `\n * <bento-selection-card-group\n * :items=\"[\n * {\n * title: 'Card 1',\n * value: 'card-1',\n * content: 'Slot content 1',\n * icon: RetailIcon,\n * },\n * {\n * title: 'Card 2',\n * value: 'card-2',\n * content: 'Slot content 2',\n * icon: LeafIcon,\n * },\n * ]\"\n * >\n * <template #icon=\"{ icon }\">\n * <component :is=\"icon\"/>\n * </template>\n * <template #content=\"{ content }\">\n * <div>{{ content }}</div>\n * </template>\n * </bento-selection-card-group>\n * `,\n * }\n */\n export default {\n model: { prop: 'modelValue' },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./selection-card-group.scss\" />\n"],"names":["BentoSelectionCardState","BentoSelectionCardState2","SELECTION_CARD_RADIO_INPUT_INJECTION_KEY","__default__$1","slots","useSlots","hasSlot","useHasSlot","inputId","generateUid","descriptionId","computedRadioInputModelValue","computed","props","computedCheckboxInputModelValue","conditionalClasses","isChecked","containerConditionalClasses","isTitleOnly","checkboxContainerConditionalClasses","checkboxContainerTextConditionalClasses","slotConditionalClasses","ariaLabel","useAriaLabel","isCheckboxGroup","isRadioInput","item","inject","ref","inputRef","slotRef","dynamicSlotRef","handleCardClick","event","newValue2","toggleInput","onChange","_b","_a","_d","_c","_f","_e","newValue","currentValue","newCheckedList","index","emit","__default__","emitValue","useFormFieldEmits","name","conditionalItemsClasses","inputValue","watch","errorMessageId","shouldShowGroupError","containerRef","width","useElementSize","smallBreakpoint","BMediaQuerySMax","mediumBreakpoint","BMediaQueryMMax","currentBreakpoint","computedItemsPerRow","computedRows","rows","i","itemColumnWidth","computedColumnWidth","onInput","value","isRadioVariant","provide","onMounted","el"],"mappings":"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"}
1
+ {"version":3,"file":"selection-card-group.BaK3Rt4K.js","sources":["../../src/components/selection-card/selection-card.types.ts","../../src/components/selection-card/selection-card.keys.ts","../../src/components/selection-card/selection-card.vue","../../src/components/selection-card/components/selection-card-group/selection-card-group.vue"],"sourcesContent":["import { type RadioInputValue } from '@/components/internal/radio-input';\nimport { type BentoCheckboxType } from '../checkbox/checkbox.types';\nimport { type VueNodeElement } from '@/types/elements';\n\nexport enum BentoSelectionCardState {\n DISABLED = 'disabled',\n READONLY = 'readonly',\n ERROR = 'error',\n}\n\nexport type BentoSelectionCardValue = string | number;\n\nexport type BentoSelectionCardModelValue = BentoCheckboxType | RadioInputValue;\n\nexport interface BentoSelectionCardItem {\n content?: string | object;\n description?: string;\n disabled?: boolean;\n dynamicContent?: string | object;\n fullyClickable?: boolean;\n hasError?: boolean;\n icon?: VueNodeElement;\n readonly?: boolean;\n subtitle?: string;\n title: string;\n value: BentoSelectionCardValue;\n}\n","export const SELECTION_CARD_RADIO_INPUT_INJECTION_KEY = Symbol('selection card radio input injection key');\n","<template>\n <div class=\"b-selection-card\" :class=\"conditionalClasses\" @click=\"handleCardClick\">\n <div class=\"b-selection-card__container\" :class=\"containerConditionalClasses\">\n <div class=\"b-selection-card__checkbox-container\" :class=\"checkboxContainerConditionalClasses\">\n <div class=\"b-selection-card__checkbox-container-text\" :class=\"checkboxContainerTextConditionalClasses\">\n <div v-if=\"hasSlot('icon')\" class=\"b-selection-card__icon\" role=\"presentation\" aria-hidden=\"true\">\n <slot name=\"icon\" />\n </div>\n <label :for=\"inputId\" class=\"b-selection-card__text\" @click.stop.prevent=\"handleCardClick\">\n <bento-typography\n v-if=\"subtitle\"\n class=\"b-selection-card__description\"\n el=\"span\"\n variant=\"caption\"\n >\n {{ subtitle }}\n </bento-typography>\n <bento-typography el=\"span\" variant=\"title\">{{ title }}</bento-typography>\n <bento-typography\n v-if=\"description\"\n id=\"descriptionId\"\n class=\"b-selection-card__description\"\n el=\"span\"\n variant=\"body\"\n >\n {{ description }}\n </bento-typography>\n </label>\n </div>\n <radio-input\n v-if=\"isRadioInput\"\n :id=\"inputId\"\n ref=\"inputRef\"\n :aria-label=\"ariaLabel\"\n :aria-describedby=\"description ? descriptionId : undefined\"\n :disabled=\"disabled\"\n :has-error=\"hasError\"\n :aria-readonly=\"readonly ?? undefined\"\n :value=\"value\"\n :readonly=\"readonly\"\n :model-value=\"computedRadioInputModelValue\"\n />\n <checkbox-input\n v-else\n :id=\"inputId\"\n ref=\"inputRef\"\n :aria-label=\"ariaLabel\"\n :aria-describedby=\"description ? descriptionId : undefined\"\n :disabled=\"disabled\"\n :has-error=\"hasError\"\n :aria-readonly=\"readonly ?? undefined\"\n :value=\"value\"\n :readonly=\"readonly\"\n :model-value=\"computedCheckboxInputModelValue\"\n />\n </div>\n <bento-typography\n v-if=\"hasSlot('content')\"\n ref=\"slotRef\"\n el=\"div\"\n class=\"b-selection-card__slot\"\n :class=\"slotConditionalClasses\"\n >\n <slot name=\"content\" />\n </bento-typography>\n <bento-typography\n v-if=\"hasSlot('dynamicContent') && isChecked\"\n ref=\"dynamicSlotRef\"\n el=\"div\"\n class=\"b-selection-card__slot\"\n :class=\"slotConditionalClasses\"\n >\n <slot name=\"dynamicContent\" />\n </bento-typography>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { BentoTypography } from '@/components/typography';\n import { type BentoCheckboxType, type BentoMultiCheckboxType, CheckboxInput } from '../internal/checkbox-input';\n import { RadioInput, type RadioInputValue } from '../internal/radio-input';\n import { useAriaLabel } from '@/utils/ts/aria-label';\n import { generateUid } from '@/core/utils/ts';\n import { computed, type ComputedRef, inject, type PropType, type Ref, ref, useSlots } from 'vue';\n import { useHasSlot } from '@/composables';\n import type { BentoSelectionCardModelValue, BentoSelectionCardValue } from './selection-card.types';\n import { BentoSelectionCardState } from './selection-card.types';\n import { SELECTION_CARD_RADIO_INPUT_INJECTION_KEY } from './selection-card.keys';\n\n const props = defineProps({\n /**\n * The description of the selection card\n */\n description: {\n type: String,\n default: undefined,\n },\n\n /**\n * Disables the selection card\n */\n disabled: { type: Boolean, default: false },\n\n /**\n * Makes the entire selection card clickable. Clicking over interactive elements inside the card with this prop enabled will not be possible.\n */\n fullyClickable: { type: Boolean, default: false },\n\n /**\n * Shows the selection card in error state\n */\n hasError: { type: Boolean, default: false },\n\n /**\n * This property should not be used directly.\n * It will be used by v-model directive on selection card component.\n *\n * When handling a single input, use a string or a number.\n *\n * When handling multiple inputs, use an array of keys.\n * These keys exist as a set \"value\" prop for each input.\n */\n modelValue: {\n type: [Boolean, String, Array] as PropType<BentoSelectionCardModelValue>,\n default: null,\n },\n\n /**\n * Sets the selection card to readonly\n */\n readonly: { type: Boolean, default: false },\n\n /**\n * The subtitle of the selection card\n */\n subtitle: {\n type: String,\n default: undefined,\n },\n\n /**\n * The title of the selection card\n */\n title: {\n type: String,\n required: true,\n },\n\n /**\n * Indicates the value of the input that will be returned when it's checked.\n */\n value: {\n type: [String, Number] as PropType<BentoSelectionCardValue>,\n required: true,\n },\n });\n\n const emit = defineEmits([\"input\", \"update:model-value\"]);\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const inputId = generateUid('selection-card-input-id');\n const descriptionId = generateUid('selection-card-description');\n\n const computedRadioInputModelValue: ComputedRef<RadioInputValue> = computed(\n () => props.modelValue as RadioInputValue\n );\n const computedCheckboxInputModelValue: ComputedRef<BentoCheckboxType> = computed(\n () => props.modelValue as BentoCheckboxType\n );\n\n const conditionalClasses = computed(() => ({\n 'b-selection-card--checked': isChecked.value,\n 'b-selection-card--fully-clickable': props.fullyClickable,\n }));\n\n const containerConditionalClasses = computed(() => ({\n [`b-selection-card--${BentoSelectionCardState.DISABLED}`]: props.disabled,\n [`b-selection-card--${BentoSelectionCardState.ERROR}`]: props.hasError,\n [`b-selection-card--${BentoSelectionCardState.READONLY}`]: props.readonly,\n 'b-selection-card--center-aligned': isTitleOnly.value,\n }));\n\n const checkboxContainerConditionalClasses = computed(() => ({\n 'b-selection-card__checkbox-container--center-aligned': isTitleOnly.value,\n }));\n\n const checkboxContainerTextConditionalClasses = computed(() => ({\n 'b-selection-card__checkbox-container-text--center-aligned': isTitleOnly.value,\n }));\n\n const slotConditionalClasses = computed(() => ({\n 'b-selection-card__slot--with-icon': hasSlot('icon'),\n }));\n\n const ariaLabel = useAriaLabel({\n ariaLabel: props.title,\n label: props.value as string,\n });\n\n const isCheckboxGroup = computed(() => Array.isArray(props.modelValue));\n\n const isChecked: ComputedRef<boolean> = computed(() => {\n if (isRadioInput.value) {\n return props.value === props.modelValue;\n }\n if (!isCheckboxGroup.value) {\n return props.modelValue as boolean;\n }\n\n return (props.modelValue as BentoMultiCheckboxType).some(item => item === props.value);\n });\n\n const isRadioInput: Ref<boolean> = inject(SELECTION_CARD_RADIO_INPUT_INJECTION_KEY, ref(false));\n\n const isTitleOnly = computed(() => !props.subtitle && !props.description);\n\n const inputRef = ref<InstanceType<typeof RadioInput> | InstanceType<typeof CheckboxInput>>(null);\n const slotRef = ref(null);\n const dynamicSlotRef = ref(null);\n\n // Handle click on the whole card area\n const handleCardClick = (event: Event) => {\n if (inputRef.value.$refs.inputRef === event.target) {\n const newValue = toggleInput();\n onChange(newValue);\n return;\n }\n\n // Do nothing if disabled or readonly\n if (props.disabled && props.readonly) {\n return;\n }\n\n // If it's not fully clickable prevent selecting the card if the click\n // originated in a slot\n if (!props.fullyClickable) {\n // Check if the click originated from the slot - in that case, do nothng\n if (slotRef.value && slotRef.value?.$el?.contains(event.target)) {\n return;\n }\n // Check if the click originated from the dynamic slot - in that case, do nothng\n if (dynamicSlotRef.value && dynamicSlotRef.value?.$el?.contains(event.target)) {\n return;\n }\n // Check if the click originated from the input - in that case do nothing, as the input will emit the event already\n if (inputRef.value && inputRef.value?.$el?.contains(event.target as Node)) {\n return;\n }\n }\n\n // If the click originated outside of these two areas, emit the change event\n const newValue = toggleInput();\n\n onChange(newValue);\n };\n\n const toggleInput = (): BentoSelectionCardModelValue => {\n const currentValue: boolean = (inputRef.value?.$refs.inputRef as HTMLInputElement).checked;\n\n if (isCheckboxGroup.value) {\n const newCheckedList = [...(props.modelValue as BentoMultiCheckboxType)];\n const index = newCheckedList.indexOf(props.value);\n\n if (index === -1) {\n newCheckedList.push(props.value);\n } else {\n newCheckedList.splice(index, 1);\n }\n return newCheckedList;\n }\n\n if (isRadioInput.value) {\n return props.value;\n }\n return currentValue;\n };\n\n const onChange = newValue => {\n if (!props.disabled && !props.readonly) {\n emit('update:model-value', newValue);\n emit('input', newValue);\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * Selection card component. If used standalone, only the checkbox variant can be used. If the checkbox variant is needed, please use the bento-selection-card-group component.\n *\n * @example\n * import { BentoSelectionCard } from '@adyen/bento-vue2';\n * import EmoticonHappyIcon from '@adyen/ui-assets-icons-16/vue/emoticon-happy';\n *\n * export default {\n * components: { BentoSelectionCard, EmoticonHappyIcon },\n * template: `\n * <bento-selection-card title=\"Card title\" :model-value.sync=\"yourModelValue\">\n * <template #icon>\n * <emoticon-happy-icon />\n * </template>\n * </bento-selection-card>\n * `\n * }\n */\n export default {\n name: 'bento-selection-card',\n };\n</script>\n<style lang=\"scss\" scoped src=\"./selection-card.scss\" />\n","<template>\n <controls-group\n ref=\"containerRef\"\n :aria-describedby=\"shouldShowGroupError ? errorMessageId : null\"\n :aria-required=\"required\"\n :label=\"label\"\n :hide-label=\"hideLabel\"\n :description=\"description\"\n :disabled=\"disabled\"\n :tooltip-text=\"tooltipText\"\n :readonly=\"readonly\"\n :required=\"required\"\n :optional=\"optional\"\n class=\"b-selection-card-group\"\n component-name=\"selection-card-group\"\n >\n <div\n v-if=\"!itemsPerRow || layout === 'vertical'\"\n class=\"b-selection-card-group__items\"\n :class=\"conditionalItemsClasses\"\n >\n <bento-selection-card\n v-for=\"item in items\"\n :key=\"`selection-card-${item.value}`\"\n class=\"b-selection-card-group__item\"\n v-bind=\"item\"\n :model-value=\"inputValue\"\n :readonly=\"readonly || item.readonly\"\n :has-error=\"shouldShowGroupError\"\n :disabled=\"disabled || item.disabled\"\n @update:model-value=\"onInput\"\n >\n <template v-if=\"hasSlot('icon') && item.icon\" #icon>\n <slot name=\"icon\" v-bind=\"item\"></slot>\n </template>\n <template v-if=\"hasSlot('content') && item.content\" #content>\n <slot name=\"content\" v-bind=\"item\"></slot>\n </template>\n <template v-if=\"hasSlot('dynamicContent') && item.dynamicContent\" #dynamicContent>\n <slot name=\"dynamicContent\" v-bind=\"item\"></slot>\n </template>\n </bento-selection-card>\n </div>\n <template v-else>\n <div :key=\"`selection-card-group-layout-breakpoint-${currentBreakpoint}`\">\n <grid-layout\n v-for=\"(row, rowIndex) in computedRows\"\n :key=\"`selection-card-group-row-${rowIndex}-cols-${computedItemsPerRow}`\"\n class=\"b-selection-card-group__items--wrap\"\n :column-width=\"computedColumnWidth\"\n >\n <template v-for=\"(item, columnIndex) in row\" #[`col-${Number(columnIndex)+1}`]>\n <bento-selection-card\n :key=\"`selection-card-${item.value}`\"\n class=\"b-selection-card-group__item b-selection-card-group__item--full-height\"\n v-bind=\"item\"\n :model-value=\"inputValue\"\n :readonly=\"readonly || item.readonly\"\n :has-error=\"shouldShowGroupError\"\n :disabled=\"disabled || item.disabled\"\n @update:model-value=\"onInput\"\n >\n <template v-if=\"hasSlot('icon') && item.icon\" #icon>\n <slot name=\"icon\" v-bind=\"item\"></slot>\n </template>\n <template v-if=\"hasSlot('content') && item.content\" #content>\n <slot name=\"content\" v-bind=\"item\"></slot>\n </template>\n <template v-if=\"hasSlot('dynamicContent') && item.dynamicContent\" #dynamicContent>\n <slot name=\"dynamicContent\" v-bind=\"item\"></slot>\n </template>\n </bento-selection-card>\n </template>\n </grid-layout>\n </div>\n </template>\n <error-message\n v-if=\"shouldShowGroupError\"\n :id=\"errorMessageId\"\n :error-message=\"errorMessage\"\n class=\"b-selection-card-group__error-message\"\n />\n </controls-group>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, provide, ref, useSlots, watch } from 'vue';\n import { useElementSize } from '@vueuse/core';\n import { BMediaQueryMMax, BMediaQuerySMax } from '@adyen/bento-design-tokens/dist/js/bento/es6';\n import { type BentoSelectionCardGroupEmits, type BentoSelectionCardGroupProps } from './selection-card-group.types';\n import BentoSelectionCard from '../../selection-card.vue';\n import { ControlsGroup, ErrorMessage, GridLayout } from '../../../internal';\n import { SELECTION_CARD_RADIO_INPUT_INJECTION_KEY } from '../../selection-card.keys';\n import { generateUid } from '@/core/utils/ts';\n import { useFormFieldEmits } from '@/utils/ts/form-field/form-field';\n\n const props = defineProps({\n description: { default: null },\n disabled: { type: Boolean, default: false },\n errorMessage: { default: null },\n label: { default: null },\n optional: { type: Boolean, default: false },\n placeholder: null,\n readonly: { type: Boolean, default: false },\n required: { type: Boolean, default: false },\n tooltipText: { default: null },\n formId: { default: null },\n hideLabel: { type: Boolean, default: null },\n layout: { default: 'vertical' },\n items: null,\n itemsPerRow: { default: undefined },\n modelValue: { default: null },\n variant: { default: 'checkbox' }\n});\n\n const emit = defineEmits([\"update:model-value\", \"input\"]);\n\n const { emitValue } = useFormFieldEmits(emit);\n\n const slots = useSlots();\n // Slots logic\n // Temporary, use-has-slots composable doesn't currently work for vue3 named scoped slots\n // We do the same in bento-checkbox-group\n const hasSlot = name => !!slots[name];\n\n const conditionalItemsClasses = computed(() => ({\n 'b-selection-card-group__items--horizontal': props.layout === 'horizontal',\n }));\n\n const inputValue = ref(props.modelValue);\n watch(\n () => props.modelValue,\n () => {\n inputValue.value = props.modelValue;\n }\n );\n\n // Error message logic\n const errorMessageId = generateUid('error');\n const shouldShowGroupError = computed(() => !props.disabled && !props.readonly && !!props.errorMessage);\n\n // itemsPerRow logic\n const containerRef = ref<HTMLElement | null>(null);\n const { width } = useElementSize(containerRef);\n\n const smallBreakpoint = computed(() => BMediaQuerySMax.split('px')[0]);\n const mediumBreakpoint = computed(() => BMediaQueryMMax.split('px')[0]);\n\n const currentBreakpoint = computed(() => {\n if (width.value < smallBreakpoint.value) {\n return 'small';\n }\n if (width.value >= smallBreakpoint.value && width.value < mediumBreakpoint.value) {\n return 'medium';\n }\n return 'large';\n });\n\n const computedItemsPerRow = computed(() => {\n return (props.itemsPerRow?.[currentBreakpoint?.value] as number) || props.items.length;\n });\n\n const computedRows = computed(() => {\n if (!props.itemsPerRow) {\n return [];\n }\n const rows = [];\n for (let i = 0; i < props.items.length; i += computedItemsPerRow?.value) {\n rows.push(props.items.slice(i, i + computedItemsPerRow?.value));\n }\n return rows;\n });\n\n // We need to compute the column width on 12 because we're using a 12-column system for out grid-layout logic\n const itemColumnWidth = computed(() => 12 / computedItemsPerRow?.value);\n\n /**\n * Filling the columnWidth array with the same parameters per item to pass\n * to the `grid-layout` layout so the each card can have\n * the same width according to the screen size.\n */\n const computedColumnWidth = computed(() => {\n return computedItemsPerRow?.value\n ? new Array(computedItemsPerRow?.value).fill({\n // Instead of passing the actual screen sizes values, passing the same values per each screen size and recomputing it makes sure visually the change is smoother and not laggy\n small: itemColumnWidth.value,\n medium: itemColumnWidth.value,\n large: itemColumnWidth.value,\n })\n : [];\n });\n\n const onInput = value => {\n inputValue.value = value;\n emitValue(value);\n };\n\n const isRadioVariant = computed(() => props.variant === 'radio');\n\n provide(SELECTION_CARD_RADIO_INPUT_INJECTION_KEY, isRadioVariant);\n\n onMounted(() => {\n if (props.itemsPerRow) {\n Object.values(props.itemsPerRow).forEach(el => {\n if (el && (el < 2 || el > 6)) {\n throw new Error(\n 'itemsPerRow values must have a value between 2 and 6 items per row. Read the documentation for more information.'\n );\n }\n });\n }\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Group of bento-selection-cards.\n *\n * @example\n * import { BentoSelectionCardGroup } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSelectionCardGroup },\n * template: `\n * <bento-selection-card-group\n * :items=\"[\n * {\n * title: 'Card 1',\n * value: 'card-1',\n * content: 'Slot content 1',\n * icon: RetailIcon,\n * },\n * {\n * title: 'Card 2',\n * value: 'card-2',\n * content: 'Slot content 2',\n * icon: LeafIcon,\n * },\n * ]\"\n * >\n * <template #icon=\"{ icon }\">\n * <component :is=\"icon\"/>\n * </template>\n * <template #content=\"{ content }\">\n * <div>{{ content }}</div>\n * </template>\n * </bento-selection-card-group>\n * `,\n * }\n */\n export default {\n model: { prop: 'modelValue' },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./selection-card-group.scss\" />\n"],"names":["BentoSelectionCardState","BentoSelectionCardState2","SELECTION_CARD_RADIO_INPUT_INJECTION_KEY","__default__$1","slots","useSlots","hasSlot","useHasSlot","inputId","generateUid","descriptionId","computedRadioInputModelValue","computed","props","computedCheckboxInputModelValue","conditionalClasses","isChecked","containerConditionalClasses","isTitleOnly","checkboxContainerConditionalClasses","checkboxContainerTextConditionalClasses","slotConditionalClasses","ariaLabel","useAriaLabel","isCheckboxGroup","isRadioInput","item","inject","ref","inputRef","slotRef","dynamicSlotRef","handleCardClick","event","newValue2","toggleInput","onChange","newValue","currentValue","newCheckedList","index","emit","__default__","emitValue","useFormFieldEmits","name","conditionalItemsClasses","inputValue","watch","errorMessageId","shouldShowGroupError","containerRef","width","useElementSize","smallBreakpoint","BMediaQuerySMax","mediumBreakpoint","BMediaQueryMMax","currentBreakpoint","computedItemsPerRow","computedRows","rows","i","itemColumnWidth","computedColumnWidth","onInput","value","isRadioVariant","provide","onMounted","el"],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { t as i } from "./en-US.BR6y7foR.js";
2
+ function c(e, s, n) {
3
+ const t = i(e, n?.in);
4
+ return t.setHours(s), t;
5
+ }
6
+ function l(e, s, n) {
7
+ const t = i(e, n?.in);
8
+ return t.setMilliseconds(s), t;
9
+ }
10
+ function a(e, s, n) {
11
+ const t = i(e, n?.in);
12
+ return t.setMinutes(s), t;
13
+ }
14
+ function u(e, s, n) {
15
+ const t = i(e, n?.in);
16
+ return t.setSeconds(s), t;
17
+ }
18
+ const p = (e, s) => {
19
+ const [n = "0", t = "0", r = "0"] = s.split(":");
20
+ let o = new Date(e);
21
+ return o = c(o, parseInt(n, 10)), o = a(o, parseInt(t, 10)), o = u(o, parseInt(r, 10)), o;
22
+ };
23
+ export {
24
+ p as a,
25
+ l as s
26
+ };
27
+ //# sourceMappingURL=set-time-in-date.BVfkl8K8.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"set-time-in-date.CU7HeZLY.js","sources":["../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/setHours.js","../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/setMilliseconds.js","../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/setMinutes.js","../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/setSeconds.js","../../src/utils/ts/format-date/set-time-in-date.ts"],"sourcesContent":["import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link setHours} function options.\n */\n\n/**\n * @name setHours\n * @category Hour Helpers\n * @summary Set the hours to the given date.\n *\n * @description\n * Set the hours to the given date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param hours - The hours of the new date\n * @param options - An object with options\n *\n * @returns The new date with the hours set\n *\n * @example\n * // Set 4 hours to 1 September 2014 11:30:00:\n * const result = setHours(new Date(2014, 8, 1, 11, 30), 4)\n * //=> Mon Sep 01 2014 04:30:00\n */\nexport function setHours(date, hours, options) {\n const _date = toDate(date, options?.in);\n _date.setHours(hours);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default setHours;\n","import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link setMilliseconds} function options.\n */\n\n/**\n * @name setMilliseconds\n * @category Millisecond Helpers\n * @summary Set the milliseconds to the given date.\n *\n * @description\n * Set the milliseconds to the given date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param milliseconds - The milliseconds of the new date\n * @param options - The options\n *\n * @returns The new date with the milliseconds set\n *\n * @example\n * // Set 300 milliseconds to 1 September 2014 11:30:40.500:\n * const result = setMilliseconds(new Date(2014, 8, 1, 11, 30, 40, 500), 300)\n * //=> Mon Sep 01 2014 11:30:40.300\n */\nexport function setMilliseconds(date, milliseconds, options) {\n const _date = toDate(date, options?.in);\n _date.setMilliseconds(milliseconds);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default setMilliseconds;\n","import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link setMinutes} function options.\n */\n\n/**\n * @name setMinutes\n * @category Minute Helpers\n * @summary Set the minutes to the given date.\n *\n * @description\n * Set the minutes to the given date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows using extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, returned from the context function, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param minutes - The minutes of the new date\n * @param options - An object with options\n *\n * @returns The new date with the minutes set\n *\n * @example\n * // Set 45 minutes to 1 September 2014 11:30:40:\n * const result = setMinutes(new Date(2014, 8, 1, 11, 30, 40), 45)\n * //=> Mon Sep 01 2014 11:45:40\n */\nexport function setMinutes(date, minutes, options) {\n const date_ = toDate(date, options?.in);\n date_.setMinutes(minutes);\n return date_;\n}\n\n// Fallback for modularized imports:\nexport default setMinutes;\n","import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link setSeconds} function options.\n */\n\n/**\n * @name setSeconds\n * @category Second Helpers\n * @summary Set the seconds to the given date, with context support.\n *\n * @description\n * Set the seconds to the given date, with an optional context for time zone specification.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param seconds - The seconds of the new date\n * @param options - An object with options\n *\n * @returns The new date with the seconds set\n *\n * @example\n * // Set 45 seconds to 1 September 2014 11:30:40:\n * const result = setSeconds(new Date(2014, 8, 1, 11, 30, 40), 45)\n * //=> Mon Sep 01 2014 11:30:45\n */\nexport function setSeconds(date, seconds, options) {\n const _date = toDate(date, options?.in);\n _date.setSeconds(seconds);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default setSeconds;\n","import { setHours } from 'date-fns/setHours';\nimport { setMinutes } from 'date-fns/setMinutes';\nimport { setSeconds } from 'date-fns/setSeconds';\n\n/**\n * Sets the time of a date object from a time string.\n * @param dateToSetTimeIn The date object to set the time in.\n * @param time The time string in HH:MM:SS format.\n * @returns A new Date object with the time set.\n */\nexport const setTimeInDateObject = (dateToSetTimeIn: Date, time: string): Date => {\n const [hours = '0', minutes = '0', seconds = '0'] = time.split(':');\n let dateWithTime = new Date(dateToSetTimeIn);\n\n dateWithTime = setHours(dateWithTime, parseInt(hours, 10));\n dateWithTime = setMinutes(dateWithTime, parseInt(minutes, 10));\n dateWithTime = setSeconds(dateWithTime, parseInt(seconds, 10));\n\n return dateWithTime;\n};\n"],"names":["setHours","date","hours","options","_date","toDate","setMilliseconds","milliseconds","setMinutes","minutes","date_","setSeconds","seconds","setTimeInDateObject","dateToSetTimeIn","time","dateWithTime"],"mappings":";AA4BO,SAASA,EAASC,GAAMC,GAAOC,GAAS;AAC7C,QAAMC,IAAQC,EAAOJ,GAAME,KAAA,gBAAAA,EAAS,EAAE;AACtC,SAAAC,EAAM,SAASF,CAAK,GACbE;AACT;ACJO,SAASE,EAAgBL,GAAMM,GAAcJ,GAAS;AAC3D,QAAMC,IAAQC,EAAOJ,GAAME,KAAA,gBAAAA,EAAS,EAAE;AACtC,SAAAC,EAAM,gBAAgBG,CAAY,GAC3BH;AACT;ACJO,SAASI,EAAWP,GAAMQ,GAASN,GAAS;AACjD,QAAMO,IAAQL,EAAOJ,GAAME,KAAA,gBAAAA,EAAS,EAAE;AACtC,SAAAO,EAAM,WAAWD,CAAO,GACjBC;AACT;ACJO,SAASC,EAAWV,GAAMW,GAAST,GAAS;AACjD,QAAMC,IAAQC,EAAOJ,GAAME,KAAA,gBAAAA,EAAS,EAAE;AACtC,SAAAC,EAAM,WAAWQ,CAAO,GACjBR;AACT;ACtBO,MAAMS,IAAsB,CAACC,GAAuBC,MAAuB;AAC9E,QAAM,CAACb,IAAQ,KAAKO,IAAU,KAAKG,IAAU,GAAG,IAAIG,EAAK,MAAM,GAAG;AAClE,MAAIC,IAAe,IAAI,KAAKF,CAAe;AAE3C,SAAAE,IAAehB,EAASgB,GAAc,SAASd,GAAO,EAAE,CAAC,GACzDc,IAAeR,EAAWQ,GAAc,SAASP,GAAS,EAAE,CAAC,GAC7DO,IAAeL,EAAWK,GAAc,SAASJ,GAAS,EAAE,CAAC,GAEtDI;AACX;","x_google_ignoreList":[0,1,2,3]}
1
+ {"version":3,"file":"set-time-in-date.BVfkl8K8.js","sources":["../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/setHours.js","../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/setMilliseconds.js","../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/setMinutes.js","../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/setSeconds.js","../../src/utils/ts/format-date/set-time-in-date.ts"],"sourcesContent":["import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link setHours} function options.\n */\n\n/**\n * @name setHours\n * @category Hour Helpers\n * @summary Set the hours to the given date.\n *\n * @description\n * Set the hours to the given date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param hours - The hours of the new date\n * @param options - An object with options\n *\n * @returns The new date with the hours set\n *\n * @example\n * // Set 4 hours to 1 September 2014 11:30:00:\n * const result = setHours(new Date(2014, 8, 1, 11, 30), 4)\n * //=> Mon Sep 01 2014 04:30:00\n */\nexport function setHours(date, hours, options) {\n const _date = toDate(date, options?.in);\n _date.setHours(hours);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default setHours;\n","import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link setMilliseconds} function options.\n */\n\n/**\n * @name setMilliseconds\n * @category Millisecond Helpers\n * @summary Set the milliseconds to the given date.\n *\n * @description\n * Set the milliseconds to the given date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param milliseconds - The milliseconds of the new date\n * @param options - The options\n *\n * @returns The new date with the milliseconds set\n *\n * @example\n * // Set 300 milliseconds to 1 September 2014 11:30:40.500:\n * const result = setMilliseconds(new Date(2014, 8, 1, 11, 30, 40, 500), 300)\n * //=> Mon Sep 01 2014 11:30:40.300\n */\nexport function setMilliseconds(date, milliseconds, options) {\n const _date = toDate(date, options?.in);\n _date.setMilliseconds(milliseconds);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default setMilliseconds;\n","import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link setMinutes} function options.\n */\n\n/**\n * @name setMinutes\n * @category Minute Helpers\n * @summary Set the minutes to the given date.\n *\n * @description\n * Set the minutes to the given date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows using extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, returned from the context function, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param minutes - The minutes of the new date\n * @param options - An object with options\n *\n * @returns The new date with the minutes set\n *\n * @example\n * // Set 45 minutes to 1 September 2014 11:30:40:\n * const result = setMinutes(new Date(2014, 8, 1, 11, 30, 40), 45)\n * //=> Mon Sep 01 2014 11:45:40\n */\nexport function setMinutes(date, minutes, options) {\n const date_ = toDate(date, options?.in);\n date_.setMinutes(minutes);\n return date_;\n}\n\n// Fallback for modularized imports:\nexport default setMinutes;\n","import { toDate } from \"./toDate.js\";\n\n/**\n * The {@link setSeconds} function options.\n */\n\n/**\n * @name setSeconds\n * @category Second Helpers\n * @summary Set the seconds to the given date, with context support.\n *\n * @description\n * Set the seconds to the given date, with an optional context for time zone specification.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param seconds - The seconds of the new date\n * @param options - An object with options\n *\n * @returns The new date with the seconds set\n *\n * @example\n * // Set 45 seconds to 1 September 2014 11:30:40:\n * const result = setSeconds(new Date(2014, 8, 1, 11, 30, 40), 45)\n * //=> Mon Sep 01 2014 11:30:45\n */\nexport function setSeconds(date, seconds, options) {\n const _date = toDate(date, options?.in);\n _date.setSeconds(seconds);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default setSeconds;\n","import { setHours } from 'date-fns/setHours';\nimport { setMinutes } from 'date-fns/setMinutes';\nimport { setSeconds } from 'date-fns/setSeconds';\n\n/**\n * Sets the time of a date object from a time string.\n * @param dateToSetTimeIn The date object to set the time in.\n * @param time The time string in HH:MM:SS format.\n * @returns A new Date object with the time set.\n */\nexport const setTimeInDateObject = (dateToSetTimeIn: Date, time: string): Date => {\n const [hours = '0', minutes = '0', seconds = '0'] = time.split(':');\n let dateWithTime = new Date(dateToSetTimeIn);\n\n dateWithTime = setHours(dateWithTime, parseInt(hours, 10));\n dateWithTime = setMinutes(dateWithTime, parseInt(minutes, 10));\n dateWithTime = setSeconds(dateWithTime, parseInt(seconds, 10));\n\n return dateWithTime;\n};\n"],"names":["setHours","date","hours","options","_date","toDate","setMilliseconds","milliseconds","setMinutes","minutes","date_","setSeconds","seconds","setTimeInDateObject","dateToSetTimeIn","time","dateWithTime"],"mappings":";AA4BO,SAASA,EAASC,GAAMC,GAAOC,GAAS;AAC7C,QAAMC,IAAQC,EAAOJ,GAAME,GAAS,EAAE;AACtC,SAAAC,EAAM,SAASF,CAAK,GACbE;AACT;ACJO,SAASE,EAAgBL,GAAMM,GAAcJ,GAAS;AAC3D,QAAMC,IAAQC,EAAOJ,GAAME,GAAS,EAAE;AACtC,SAAAC,EAAM,gBAAgBG,CAAY,GAC3BH;AACT;ACJO,SAASI,EAAWP,GAAMQ,GAASN,GAAS;AACjD,QAAMO,IAAQL,EAAOJ,GAAME,GAAS,EAAE;AACtC,SAAAO,EAAM,WAAWD,CAAO,GACjBC;AACT;ACJO,SAASC,EAAWV,GAAMW,GAAST,GAAS;AACjD,QAAMC,IAAQC,EAAOJ,GAAME,GAAS,EAAE;AACtC,SAAAC,EAAM,WAAWQ,CAAO,GACjBR;AACT;ACtBO,MAAMS,IAAsB,CAACC,GAAuBC,MAAuB;AAC9E,QAAM,CAACb,IAAQ,KAAKO,IAAU,KAAKG,IAAU,GAAG,IAAIG,EAAK,MAAM,GAAG;AAClE,MAAIC,IAAe,IAAI,KAAKF,CAAe;AAE3C,SAAAE,IAAehB,EAASgB,GAAc,SAASd,GAAO,EAAE,CAAC,GACzDc,IAAeR,EAAWQ,GAAc,SAASP,GAAS,EAAE,CAAC,GAC7DO,IAAeL,EAAWK,GAAc,SAASJ,GAAS,EAAE,CAAC,GAEtDI;AACX;","x_google_ignoreList":[0,1,2,3]}
@@ -1,19 +1,19 @@
1
- import { defineComponent as h, toRefs as N, ref as o, computed as P, onMounted as G, onUnmounted as F, watch as x, provide as g } from "vue";
2
- import { B as R, d as U } from "./typography.C8lPlsbD.js";
3
- import { F as L } from "./footer-actions.DXyJtVip.js";
4
- import { D as J } from "./dialog-page.B_LwIWgK.js";
1
+ import { defineComponent as h, toRefs as k, ref as o, computed as P, onMounted as N, onUnmounted as G, watch as F, provide as g } from "vue";
2
+ import { B as x, d as R } from "./typography.D1OZJbEa.js";
3
+ import { F as U } from "./footer-actions.Dn9KYoqB.js";
4
+ import { D as L } from "./dialog-page.CPorblJc.js";
5
5
  import { n as I } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
6
- import { B as M } from "./button.CKS_V3p5.js";
7
- import { B as K } from "./focus-trap.oRKjDFzf.js";
8
- import { C as Y } from "./cross.CC_B-vG-.js";
9
- import { S as w } from "./button-actions.Dpbx0xf3.js";
10
- import { u as z } from "./index.B6WW_F-J.js";
11
- import { g as H } from "./generate-uid.NJ8tVoha.js";
12
- import { B as $, D as j, a as V } from "./dialog-page.keys.Dym9e6k3.js";
13
- import { B as X } from "./directive.BBWhsNtO.js";
6
+ import { B as J } from "./button.C4kKejsg.js";
7
+ import { B as M } from "./focus-trap.l-wwtCHi.js";
8
+ import { C as K } from "./cross.CC_B-vG-.js";
9
+ import { S as Y } from "./button-actions.CxX7lK7z.js";
10
+ import { u as w } from "./index.CPOlyau9.js";
11
+ import { g as z } from "./generate-uid.DBWe4g6T.js";
12
+ import { B as H, D as $, a as j } from "./dialog-page.keys.Dym9e6k3.js";
13
+ import { B as V } from "./directive.D1-d-C2K.js";
14
14
  import "../assets/sidepanel.css";
15
- const q = {}, Q = /* @__PURE__ */ h({
16
- ...q,
15
+ const X = {}, q = /* @__PURE__ */ h({
16
+ ...X,
17
17
  __name: "sidepanel-page",
18
18
  props: {
19
19
  /**
@@ -75,10 +75,10 @@ const q = {}, Q = /* @__PURE__ */ h({
75
75
  }
76
76
  },
77
77
  setup(a) {
78
- return { __sfc: !0, BentoTypography: R, FooterActions: L, DialogPage: J };
78
+ return { __sfc: !0, BentoTypography: x, FooterActions: U, DialogPage: L };
79
79
  }
80
80
  });
81
- var W = function() {
81
+ var Q = function() {
82
82
  var e = this, t = e._self._c, s = e._self._setupProxy;
83
83
  return t(s.DialogPage, { staticClass: "b-sidepanel-page", attrs: { "page-id": e.pageId, "previous-page": e.previousPage }, scopedSlots: e._u([{ key: "header", fn: function() {
84
84
  return [t("div", { staticClass: "b-sidepanel-page__header" }, [t(s.BentoTypography, { staticClass: "b-sidepanel-page__title", attrs: { el: "h2", variant: "title" } }, [e._v(" " + e._s(e.title) + " ")])], 1)];
@@ -87,54 +87,32 @@ var W = function() {
87
87
  }, proxy: !0 }, e.actions && e.actions.length > 0 ? { key: "footer", fn: function() {
88
88
  return [t("div", { staticClass: "b-sidepanel-page__actions" }, [t(s.FooterActions, { attrs: { actions: e.actions, "actions-label": e.actionsLabel, "destructive-actions": e.destructiveActions } })], 1)];
89
89
  }, proxy: !0 } : null], null, !0) });
90
- }, Z = [], ee = /* @__PURE__ */ I(
90
+ }, W = [], Z = /* @__PURE__ */ I(
91
+ q,
91
92
  Q,
92
93
  W,
93
- Z,
94
94
  !1,
95
95
  null,
96
96
  "12d4c262"
97
97
  );
98
- const Ee = ee.exports;
98
+ const Ae = Z.exports;
99
99
  var f = /* @__PURE__ */ ((a) => (a.UPDATE_ACTIVE_PAGE = "update:active-page", a.UPDATE_IS_OPEN = "update:is-open", a))(f || {});
100
- const te = {
101
- "de-DE": {
102
- close: "Schließen"
103
- },
104
- "en-GB": {
105
- close: "Close"
106
- },
107
- "en-US": {
108
- close: "Close"
109
- },
110
- "es-419": {
111
- close: "Cerrar"
112
- },
113
- "es-ES": {
114
- close: "Cerrar"
115
- },
116
- "es-MX": {
117
- close: "Cerrar"
118
- },
119
- "fr-FR": {
120
- close: "Fermer"
121
- },
122
- "it-IT": {
123
- close: "Chiudi"
124
- },
125
- "ja-JP": {
126
- close: "閉じる"
127
- },
128
- "pt-BR": {
129
- close: "Fechar"
130
- },
131
- "zh-CN": {
132
- close: "关闭"
133
- }
134
- }, se = {
135
- i18n: { messages: te }
136
- }, ae = /* @__PURE__ */ h({
137
- ...se,
100
+ const ee = {
101
+ "de-DE": { close: "Schließen" },
102
+ "en-GB": { close: "Close" },
103
+ "en-US": { close: "Close" },
104
+ "es-419": { close: "Cerrar" },
105
+ "es-ES": { close: "Cerrar" },
106
+ "es-MX": { close: "Cerrar" },
107
+ "fr-FR": { close: "Fermer" },
108
+ "it-IT": { close: "Chiudi" },
109
+ "ja-JP": { close: "閉じる" },
110
+ "pt-BR": { close: "Fechar" },
111
+ "zh-CN": { close: "关闭" }
112
+ }, te = {
113
+ i18n: { messages: ee }
114
+ }, se = /* @__PURE__ */ h({
115
+ ...te,
138
116
  __name: "sidepanel",
139
117
  props: {
140
118
  /**
@@ -176,32 +154,31 @@ const te = {
176
154
  },
177
155
  emits: [],
178
156
  setup(a, { emit: e }) {
179
- const t = a, { activePage: s, isOpen: n } = N(t), { t: D } = z(), c = o(null), u = o([]), l = o([]), C = o($.TRANSITION_LEVEL_DEEPER), p = o(!1), A = H("sidepanel"), d = o(!1), v = o(!1), _ = o(!1), b = P(() => ({
157
+ const t = a, { activePage: s, isOpen: n } = k(t), { t: D } = w(), r = o(null), u = o([]), l = o([]), C = o(H.TRANSITION_LEVEL_DEEPER), p = o(!1), A = z("sidepanel"), d = o(!1), v = o(!1), _ = o(!1), b = P(() => ({
180
158
  "b-sidepanel--hide": p.value,
181
159
  "b-sidepanel--animation": v.value
182
160
  })), O = () => {
183
- p.value && c.value && (c.value.close(), l.value[0] && e(f.UPDATE_ACTIVE_PAGE, l.value[0]), l.value = [], p.value = !1, d.value = !1, e(f.UPDATE_IS_OPEN, !1));
161
+ p.value && r.value && (r.value.close(), l.value[0] && e(f.UPDATE_ACTIVE_PAGE, l.value[0]), l.value = [], p.value = !1, d.value = !1, e(f.UPDATE_IS_OPEN, !1));
184
162
  }, m = () => {
185
- !c.value || !c.value.open || (p.value = !0);
163
+ !r.value || !r.value.open || (p.value = !0);
186
164
  }, S = () => {
187
165
  t.isDismissible && m();
188
166
  }, T = P(() => t.hideCloseButton !== null ? t.hideCloseButton : !t.isDismissible);
189
- G(() => {
167
+ N(() => {
190
168
  _.value = !0;
191
- }), F(() => {
169
+ }), G(() => {
192
170
  _.value = !1;
193
- }), x(
194
- [() => n.value, c],
195
- ([i, r]) => {
196
- !_.value || !r || (i ? (d.value = !0, r.open || r.showModal(), l.value.length || l.value.push(s.value)) : r.open && m());
171
+ }), F(
172
+ [() => n.value, r],
173
+ ([i, c]) => {
174
+ !_.value || !c || (i ? (d.value = !0, c.open || c.showModal(), l.value.length || l.value.push(s.value)) : c.open && m());
197
175
  },
198
176
  { immediate: !0, flush: "post" }
199
177
  );
200
178
  const E = (i) => e(f.UPDATE_ACTIVE_PAGE, i), y = (i) => () => {
201
- var r;
202
- u.value = (r = u.value) == null ? void 0 : r.filter((k) => k !== i);
179
+ u.value = u.value?.filter((c) => c !== i);
203
180
  }, B = (i) => (u.value.push(i), { unregisterPage: y(i) });
204
- return g(j, {
181
+ return g($, {
205
182
  activePage: s,
206
183
  animation: C,
207
184
  isAnimationActive: v,
@@ -209,31 +186,31 @@ const te = {
209
186
  pages: u,
210
187
  previousPages: l,
211
188
  updatePage: E
212
- }), g(V, B), g(w, A), !t.isDismissible && t.hideCloseButton === null && U(
189
+ }), g(j, B), g(Y, A), !t.isDismissible && t.hideCloseButton === null && R(
213
190
  'BentoSidepanel "isDismissible" property’s behavior',
214
191
  'BentoSidepanel "isDismissible" will no longer hide the close button. Use "hideCloseButton=true" instead.',
215
192
  "2.0.0"
216
- ), { __sfc: !0, props: t, emit: e, activePage: s, isOpen: n, t: D, sidepanel: c, pages: u, previousPages: l, animation: C, isClosing: p, sidepanelId: A, internalIsOpen: d, isAnimationActive: v, isMounted: _, conditionalClasses: b, closeSidepanelAfterAnimation: O, startCloseSidepanelAnimation: m, closeSidepanelOnClickOutside: S, computedHideCloseButton: T, updatePage: E, unregisterPage: y, registerPage: B, BentoButton: M, BentoFocusTrap: K, CrossIcon: Y, vBentoClickOutsideDirective: X };
193
+ ), { __sfc: !0, props: t, emit: e, activePage: s, isOpen: n, t: D, sidepanel: r, pages: u, previousPages: l, animation: C, isClosing: p, sidepanelId: A, internalIsOpen: d, isAnimationActive: v, isMounted: _, conditionalClasses: b, closeSidepanelAfterAnimation: O, startCloseSidepanelAnimation: m, closeSidepanelOnClickOutside: S, computedHideCloseButton: T, updatePage: E, unregisterPage: y, registerPage: B, BentoButton: J, BentoFocusTrap: M, CrossIcon: K, vBentoClickOutsideDirective: V };
217
194
  }
218
195
  });
219
- var ie = function() {
196
+ var ae = function() {
220
197
  var e = this, t = e._self._c, s = e._self._setupProxy;
221
198
  return t("dialog", { ref: "sidepanel", staticClass: "b-sidepanel", class: s.conditionalClasses, on: { animationend: s.closeSidepanelAfterAnimation, keydown: function(n) {
222
199
  if (!n.type.indexOf("key") && e._k(n.keyCode, "esc", 27, n.key, ["Esc", "Escape"])) return null;
223
200
  n.preventDefault(), e.isDismissible && s.startCloseSidepanelAnimation;
224
201
  } } }, [t(s.BentoFocusTrap, { directives: [{ name: "bento-click-outside-directive", rawName: "v-bento-click-outside-directive", value: s.closeSidepanelOnClickOutside, expression: "closeSidepanelOnClickOutside" }], attrs: { id: s.sidepanelId } }, [s.computedHideCloseButton ? e._e() : t("div", { staticClass: "b-sidepanel__close-button" }, [t(s.BentoButton, { attrs: { variant: "tertiary" }, on: { click: s.startCloseSidepanelAnimation } }, [t(s.CrossIcon, { attrs: { "svg-title": s.t("close") } })], 1)], 1), e._t("default")], 2)], 1);
225
- }, oe = [], ne = /* @__PURE__ */ I(
202
+ }, ie = [], oe = /* @__PURE__ */ I(
203
+ se,
226
204
  ae,
227
205
  ie,
228
- oe,
229
206
  !1,
230
207
  null,
231
208
  "e2c7d722"
232
209
  );
233
- const ye = ne.exports;
210
+ const Ee = oe.exports;
234
211
  export {
235
212
  f as B,
236
- Ee as a,
237
- ye as s
213
+ Ae as a,
214
+ Ee as s
238
215
  };
239
- //# sourceMappingURL=sidepanel.yB7YuzVt.js.map
216
+ //# sourceMappingURL=sidepanel.DeIREn9l.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sidepanel.yB7YuzVt.js","sources":["../../src/components/sidepanel/components/sidepanel-page.vue","../../src/components/sidepanel/sidepanel.types.ts","../../src/components/sidepanel/sidepanel.vue"],"sourcesContent":["<template>\n <dialog-page class=\"b-sidepanel-page\" :page-id=\"pageId\" :previous-page=\"previousPage\">\n <template #header>\n <div class=\"b-sidepanel-page__header\">\n <bento-typography class=\"b-sidepanel-page__title\" el=\"h2\" variant=\"title\">\n {{ title }}\n </bento-typography>\n </div>\n </template>\n <template #content>\n <div class=\"b-sidepanel-page__content\">\n <bento-typography el=\"div\" variant=\"body\">\n <slot />\n </bento-typography>\n </div>\n </template>\n <template v-if=\"actions && actions.length > 0\" #footer>\n <div class=\"b-sidepanel-page__actions\">\n <footer-actions\n :actions=\"actions\"\n :actions-label=\"actionsLabel\"\n :destructive-actions=\"destructiveActions\"\n />\n </div>\n </template>\n </dialog-page>\n</template>\n\n<script setup lang=\"ts\">\n import { type PropType } from 'vue';\n\n import { type BentoButtonActionsList } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { FooterActions } from '@/components/internal/footer-actions';\n import { DialogPage } from '@/internal';\n\n defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * First element in the list will be rendered as \"primary\".\n * All elements after the first will be rendered as \"secondary\".\n *\n * ```\n * [{\n * title: 'Primary',\n * event: () => { ... },\n * icon: FourPeopleIcon\n * }, {\n * title: 'Secondary',\n * event: () => { ... }\n * }]\n * ```\n */\n actions: {\n type: Array as PropType<BentoButtonActionsList>,\n default: null,\n },\n\n /**\n * Text label that is displayed left to the action buttons\n */\n actionsLabel: {\n type: String,\n default: null,\n },\n\n /**\n * If passed - sets first button color to red\n */\n destructiveActions: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Identifier of the page, used with activePage prop to handle sidepanel navigation\n */\n pageId: {\n type: String,\n default: undefined,\n },\n\n /**\n * ID of the page for the back button to navigate to. Only use it to overwrite the default back behavior\n * Used when the back button should not take the user to the natural previous page\n * Set to `null` to hide back button in the page\n */\n previousPage: {\n type: String,\n default: undefined,\n },\n\n /**\n * Title of the sidepanel page\n */\n title: {\n type: String,\n default: null,\n },\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * SidepanelPage is used to render different pages of Sidepanel component\n *\n * @example\n * import { BentoSidepanel, BentoSidepanelPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSidepanel, BentoSidepanelPage },\n * template: `\n * <bento-sidepanel active-page='step1' is-open='true'>\n * <bento-sidepanel-page\n * title='Step 1'\n * pageId='step1'\n * :actions=\"[\n * {\n * title: 'Next step',\n * event: () => {\n * activePage.value = 'step2';\n * },\n * }]\">\n * Step 1 info\n * </bento-sidepanel-page>\n * <bento-sidepanel-page\n * title='Step 2'\n * pageId='step2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Step 2 info\n * </bento-sidepanel-page>\n * </bento-sidepanel>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./sidepanel-page.scss\" />\n","export enum BentoSidepanelEvent {\n UPDATE_ACTIVE_PAGE = 'update:active-page',\n UPDATE_IS_OPEN = 'update:is-open',\n}\n","<template>\n <dialog\n ref=\"sidepanel\"\n class=\"b-sidepanel\"\n :class=\"conditionalClasses\"\n @animationend=\"closeSidepanelAfterAnimation\"\n @keydown.esc.prevent=\"isDismissible && startCloseSidepanelAnimation\"\n >\n <bento-focus-trap :id=\"sidepanelId\" v-bento-click-outside-directive=\"closeSidepanelOnClickOutside\">\n <div v-if=\"!computedHideCloseButton\" class=\"b-sidepanel__close-button\">\n <bento-button variant=\"tertiary\" @click=\"startCloseSidepanelAnimation\">\n <cross-icon :svg-title=\"t('close')\" />\n </bento-button>\n </div>\n <slot />\n </bento-focus-trap>\n </dialog>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, onUnmounted, provide, ref, toRefs, watch } from 'vue';\n\n import { BentoButton } from '@/components/button';\n import { BentoFocusTrap } from '@/components/focus-trap';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n\n import { BentoSidepanelEvent } from './sidepanel.types';\n import {\n BentoDialogPageAnimation,\n type BentoDialogPageConfigData,\n type BentoDialogPageRegisterPage,\n DIALOG_PAGE_CONFIG_INJECTION_KEY,\n DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY,\n } from '@/internal';\n\n import { SIDEPANEL_DIALOG_ID_INJECTION_KEY } from './sidepanel.keys';\n\n import { BentoClickOutsideDirective as vBentoClickOutsideDirective } from '@/directives/click-outside';\n\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n import { generateUid } from '@/core/utils/ts';\n import { deprecate } from '@/utils/ts/deprecate';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n /**\n * The id of the current active page\n * Should be the same id as the BentoSidepanelPage to be displayed\n * If the component only has one page, it can be left null/undefined.\n */\n activePage: {\n type: String,\n default: null,\n },\n\n /**\n * If set to true, it allows the sidepanel to be closed.\n * Shows close button when `true` and hides close button when `false`.\n *\n * _Note: This property will not set the visibility of the close button in v2.0.0_\n */\n isDismissible: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls the sidepanel's state from the outside. Set it to true to open the sidepanel.\n */\n isOpen: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Controls the visibility of close button on the sidepanel.\n * Defaults to `true` when `isDismissible=false`, and `true` when `isDimissible=true`.\n *\n * _Note: This property will be set to `false` by default, independent of `isDismissible` in v2.0.0_\n */\n hideCloseButton: {\n type: Boolean,\n default: null,\n },\n });\n\n const emit = defineEmits([]);\n\n // Refs\n const { activePage, isOpen } = toRefs(props);\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const sidepanel = ref(null);\n const pages = ref<Array<string>>([]);\n const previousPages = ref([]);\n const animation = ref(BentoDialogPageAnimation.TRANSITION_LEVEL_DEEPER);\n const isClosing = ref(false);\n const sidepanelId = generateUid('sidepanel');\n const internalIsOpen = ref(false);\n const isAnimationActive = ref(false);\n const isMounted = ref(false);\n\n // Animation styling\n const conditionalClasses = computed(() => ({\n 'b-sidepanel--hide': isClosing.value,\n 'b-sidepanel--animation': isAnimationActive.value,\n }));\n\n // Handle closing and closing animation for dialog element\n const closeSidepanelAfterAnimation = () => {\n if (isClosing.value && sidepanel.value) {\n sidepanel.value.close();\n if (previousPages.value[0]) {\n emit(BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, previousPages.value[0]);\n }\n previousPages.value = [];\n isClosing.value = false;\n internalIsOpen.value = false;\n emit(BentoSidepanelEvent.UPDATE_IS_OPEN, false);\n }\n };\n\n const startCloseSidepanelAnimation = () => {\n if (!sidepanel.value || !sidepanel.value.open) {\n return;\n }\n isClosing.value = true;\n };\n\n const closeSidepanelOnClickOutside = () => {\n if (props.isDismissible) {\n startCloseSidepanelAnimation();\n }\n };\n\n // TODO: Remove in upcoming major. See properties `hideCloseButton` and `isDismissible`.\n const computedHideCloseButton = computed(() => {\n if (props.hideCloseButton !== null) {\n return props.hideCloseButton;\n }\n\n return !props.isDismissible;\n });\n\n onMounted(() => {\n isMounted.value = true;\n });\n\n onUnmounted(() => {\n isMounted.value = false;\n });\n\n // Watching isOpen prop to toggle open/close the dialog element\n watch(\n [() => isOpen.value, sidepanel],\n ([newIsOpen, newSidepanelValue]) => {\n if (!isMounted.value || !newSidepanelValue) {\n return;\n }\n\n if (newIsOpen) {\n internalIsOpen.value = true;\n if (!newSidepanelValue.open) {\n newSidepanelValue.showModal();\n }\n if (!previousPages.value.length) {\n previousPages.value.push(activePage.value);\n }\n } else if (newSidepanelValue.open) {\n startCloseSidepanelAnimation();\n }\n },\n { immediate: true, flush: 'post' }\n );\n\n // Pages\n const updatePage = page => emit(BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, page);\n\n // unregister page if removed / destroyed\n const unregisterPage = (pageIdToRemove: string) => () => {\n pages.value = pages.value?.filter(pageId => pageId !== pageIdToRemove);\n };\n\n // Provide data and function to register page to subcomponent\n const registerPage: BentoDialogPageRegisterPage = pageId => {\n pages.value.push(pageId);\n\n return { unregisterPage: unregisterPage(pageId) };\n };\n\n provide<BentoDialogPageConfigData>(DIALOG_PAGE_CONFIG_INJECTION_KEY, {\n activePage,\n animation,\n isAnimationActive,\n isOpen: internalIsOpen,\n pages,\n previousPages,\n updatePage,\n });\n provide(DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY, registerPage);\n\n // Let's Children components know they are inside a SidePanel (dialog element)\n provide(SIDEPANEL_DIALOG_ID_INJECTION_KEY, sidepanelId);\n\n if (!props.isDismissible && props.hideCloseButton === null) {\n deprecate(\n 'BentoSidepanel \"isDismissible\" property’s behavior',\n 'BentoSidepanel \"isDismissible\" will no longer hide the close button. Use \"hideCloseButton=true\" instead.',\n '2.0.0'\n );\n }\n</script>\n\n<script lang=\"ts\">\n /**\n * Sidepanel component is a slide-in panel that should be used for presenting actions, settings or features that are directly associated with a specific task or interaction on the main screen.\n *\n * @example\n * import { BentoSidepanel, BentoSidepanelPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSidepanel, BentoSidepanelPage },\n * template: `\n * <bento-sidepanel active-page='step1' is-open='true'>\n * <bento-sidepanel-page\n * title='Step 1'\n * pageId='step1'\n * :actions=\"[\n * {\n * title: 'Next step',\n * event: () => {\n * activePage.value = 'step2';\n * },\n * }]\">\n * Step 1 info\n * </bento-sidepanel-page>\n * <bento-sidepanel-page\n * title='Step 2'\n * pageId='step2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Step 2 info\n * </bento-sidepanel-page>\n * </bento-sidepanel>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n<style lang=\"scss\" scoped src=\"./sidepanel.scss\" />\n"],"names":["__default__$1","BentoSidepanelEvent","BentoSidepanelEvent2","__default__","messages","activePage","isOpen","toRefs","props","t","useI18n","sidepanel","ref","pages","previousPages","animation","BentoDialogPageAnimation","isClosing","sidepanelId","generateUid","internalIsOpen","isAnimationActive","isMounted","conditionalClasses","computed","closeSidepanelAfterAnimation","emit","startCloseSidepanelAnimation","closeSidepanelOnClickOutside","computedHideCloseButton","onMounted","onUnmounted","watch","newIsOpen","newSidepanelValue","updatePage","page","unregisterPage","pageIdToRemove","_a","pageId","registerPage","provide","DIALOG_PAGE_CONFIG_INJECTION_KEY","DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY","SIDEPANEL_DIALOG_ID_INJECTION_KEY","deprecate"],"mappings":"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"}
1
+ {"version":3,"file":"sidepanel.DeIREn9l.js","sources":["../../src/components/sidepanel/components/sidepanel-page.vue","../../src/components/sidepanel/sidepanel.types.ts","../../src/components/sidepanel/sidepanel.vue"],"sourcesContent":["<template>\n <dialog-page class=\"b-sidepanel-page\" :page-id=\"pageId\" :previous-page=\"previousPage\">\n <template #header>\n <div class=\"b-sidepanel-page__header\">\n <bento-typography class=\"b-sidepanel-page__title\" el=\"h2\" variant=\"title\">\n {{ title }}\n </bento-typography>\n </div>\n </template>\n <template #content>\n <div class=\"b-sidepanel-page__content\">\n <bento-typography el=\"div\" variant=\"body\">\n <slot />\n </bento-typography>\n </div>\n </template>\n <template v-if=\"actions && actions.length > 0\" #footer>\n <div class=\"b-sidepanel-page__actions\">\n <footer-actions\n :actions=\"actions\"\n :actions-label=\"actionsLabel\"\n :destructive-actions=\"destructiveActions\"\n />\n </div>\n </template>\n </dialog-page>\n</template>\n\n<script setup lang=\"ts\">\n import { type PropType } from 'vue';\n\n import { type BentoButtonActionsList } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { FooterActions } from '@/components/internal/footer-actions';\n import { DialogPage } from '@/internal';\n\n defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * First element in the list will be rendered as \"primary\".\n * All elements after the first will be rendered as \"secondary\".\n *\n * ```\n * [{\n * title: 'Primary',\n * event: () => { ... },\n * icon: FourPeopleIcon\n * }, {\n * title: 'Secondary',\n * event: () => { ... }\n * }]\n * ```\n */\n actions: {\n type: Array as PropType<BentoButtonActionsList>,\n default: null,\n },\n\n /**\n * Text label that is displayed left to the action buttons\n */\n actionsLabel: {\n type: String,\n default: null,\n },\n\n /**\n * If passed - sets first button color to red\n */\n destructiveActions: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Identifier of the page, used with activePage prop to handle sidepanel navigation\n */\n pageId: {\n type: String,\n default: undefined,\n },\n\n /**\n * ID of the page for the back button to navigate to. Only use it to overwrite the default back behavior\n * Used when the back button should not take the user to the natural previous page\n * Set to `null` to hide back button in the page\n */\n previousPage: {\n type: String,\n default: undefined,\n },\n\n /**\n * Title of the sidepanel page\n */\n title: {\n type: String,\n default: null,\n },\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * SidepanelPage is used to render different pages of Sidepanel component\n *\n * @example\n * import { BentoSidepanel, BentoSidepanelPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSidepanel, BentoSidepanelPage },\n * template: `\n * <bento-sidepanel active-page='step1' is-open='true'>\n * <bento-sidepanel-page\n * title='Step 1'\n * pageId='step1'\n * :actions=\"[\n * {\n * title: 'Next step',\n * event: () => {\n * activePage.value = 'step2';\n * },\n * }]\">\n * Step 1 info\n * </bento-sidepanel-page>\n * <bento-sidepanel-page\n * title='Step 2'\n * pageId='step2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Step 2 info\n * </bento-sidepanel-page>\n * </bento-sidepanel>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./sidepanel-page.scss\" />\n","export enum BentoSidepanelEvent {\n UPDATE_ACTIVE_PAGE = 'update:active-page',\n UPDATE_IS_OPEN = 'update:is-open',\n}\n","<template>\n <dialog\n ref=\"sidepanel\"\n class=\"b-sidepanel\"\n :class=\"conditionalClasses\"\n @animationend=\"closeSidepanelAfterAnimation\"\n @keydown.esc.prevent=\"isDismissible && startCloseSidepanelAnimation\"\n >\n <bento-focus-trap :id=\"sidepanelId\" v-bento-click-outside-directive=\"closeSidepanelOnClickOutside\">\n <div v-if=\"!computedHideCloseButton\" class=\"b-sidepanel__close-button\">\n <bento-button variant=\"tertiary\" @click=\"startCloseSidepanelAnimation\">\n <cross-icon :svg-title=\"t('close')\" />\n </bento-button>\n </div>\n <slot />\n </bento-focus-trap>\n </dialog>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, onUnmounted, provide, ref, toRefs, watch } from 'vue';\n\n import { BentoButton } from '@/components/button';\n import { BentoFocusTrap } from '@/components/focus-trap';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n\n import { BentoSidepanelEvent } from './sidepanel.types';\n import {\n BentoDialogPageAnimation,\n type BentoDialogPageConfigData,\n type BentoDialogPageRegisterPage,\n DIALOG_PAGE_CONFIG_INJECTION_KEY,\n DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY,\n } from '@/internal';\n\n import { SIDEPANEL_DIALOG_ID_INJECTION_KEY } from './sidepanel.keys';\n\n import { BentoClickOutsideDirective as vBentoClickOutsideDirective } from '@/directives/click-outside';\n\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n import { generateUid } from '@/core/utils/ts';\n import { deprecate } from '@/utils/ts/deprecate';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n /**\n * The id of the current active page\n * Should be the same id as the BentoSidepanelPage to be displayed\n * If the component only has one page, it can be left null/undefined.\n */\n activePage: {\n type: String,\n default: null,\n },\n\n /**\n * If set to true, it allows the sidepanel to be closed.\n * Shows close button when `true` and hides close button when `false`.\n *\n * _Note: This property will not set the visibility of the close button in v2.0.0_\n */\n isDismissible: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Controls the sidepanel's state from the outside. Set it to true to open the sidepanel.\n */\n isOpen: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Controls the visibility of close button on the sidepanel.\n * Defaults to `true` when `isDismissible=false`, and `true` when `isDimissible=true`.\n *\n * _Note: This property will be set to `false` by default, independent of `isDismissible` in v2.0.0_\n */\n hideCloseButton: {\n type: Boolean,\n default: null,\n },\n });\n\n const emit = defineEmits([]);\n\n // Refs\n const { activePage, isOpen } = toRefs(props);\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const sidepanel = ref(null);\n const pages = ref<Array<string>>([]);\n const previousPages = ref([]);\n const animation = ref(BentoDialogPageAnimation.TRANSITION_LEVEL_DEEPER);\n const isClosing = ref(false);\n const sidepanelId = generateUid('sidepanel');\n const internalIsOpen = ref(false);\n const isAnimationActive = ref(false);\n const isMounted = ref(false);\n\n // Animation styling\n const conditionalClasses = computed(() => ({\n 'b-sidepanel--hide': isClosing.value,\n 'b-sidepanel--animation': isAnimationActive.value,\n }));\n\n // Handle closing and closing animation for dialog element\n const closeSidepanelAfterAnimation = () => {\n if (isClosing.value && sidepanel.value) {\n sidepanel.value.close();\n if (previousPages.value[0]) {\n emit(BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, previousPages.value[0]);\n }\n previousPages.value = [];\n isClosing.value = false;\n internalIsOpen.value = false;\n emit(BentoSidepanelEvent.UPDATE_IS_OPEN, false);\n }\n };\n\n const startCloseSidepanelAnimation = () => {\n if (!sidepanel.value || !sidepanel.value.open) {\n return;\n }\n isClosing.value = true;\n };\n\n const closeSidepanelOnClickOutside = () => {\n if (props.isDismissible) {\n startCloseSidepanelAnimation();\n }\n };\n\n // TODO: Remove in upcoming major. See properties `hideCloseButton` and `isDismissible`.\n const computedHideCloseButton = computed(() => {\n if (props.hideCloseButton !== null) {\n return props.hideCloseButton;\n }\n\n return !props.isDismissible;\n });\n\n onMounted(() => {\n isMounted.value = true;\n });\n\n onUnmounted(() => {\n isMounted.value = false;\n });\n\n // Watching isOpen prop to toggle open/close the dialog element\n watch(\n [() => isOpen.value, sidepanel],\n ([newIsOpen, newSidepanelValue]) => {\n if (!isMounted.value || !newSidepanelValue) {\n return;\n }\n\n if (newIsOpen) {\n internalIsOpen.value = true;\n if (!newSidepanelValue.open) {\n newSidepanelValue.showModal();\n }\n if (!previousPages.value.length) {\n previousPages.value.push(activePage.value);\n }\n } else if (newSidepanelValue.open) {\n startCloseSidepanelAnimation();\n }\n },\n { immediate: true, flush: 'post' }\n );\n\n // Pages\n const updatePage = page => emit(BentoSidepanelEvent.UPDATE_ACTIVE_PAGE, page);\n\n // unregister page if removed / destroyed\n const unregisterPage = (pageIdToRemove: string) => () => {\n pages.value = pages.value?.filter(pageId => pageId !== pageIdToRemove);\n };\n\n // Provide data and function to register page to subcomponent\n const registerPage: BentoDialogPageRegisterPage = pageId => {\n pages.value.push(pageId);\n\n return { unregisterPage: unregisterPage(pageId) };\n };\n\n provide<BentoDialogPageConfigData>(DIALOG_PAGE_CONFIG_INJECTION_KEY, {\n activePage,\n animation,\n isAnimationActive,\n isOpen: internalIsOpen,\n pages,\n previousPages,\n updatePage,\n });\n provide(DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY, registerPage);\n\n // Let's Children components know they are inside a SidePanel (dialog element)\n provide(SIDEPANEL_DIALOG_ID_INJECTION_KEY, sidepanelId);\n\n if (!props.isDismissible && props.hideCloseButton === null) {\n deprecate(\n 'BentoSidepanel \"isDismissible\" property’s behavior',\n 'BentoSidepanel \"isDismissible\" will no longer hide the close button. Use \"hideCloseButton=true\" instead.',\n '2.0.0'\n );\n }\n</script>\n\n<script lang=\"ts\">\n /**\n * Sidepanel component is a slide-in panel that should be used for presenting actions, settings or features that are directly associated with a specific task or interaction on the main screen.\n *\n * @example\n * import { BentoSidepanel, BentoSidepanelPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoSidepanel, BentoSidepanelPage },\n * template: `\n * <bento-sidepanel active-page='step1' is-open='true'>\n * <bento-sidepanel-page\n * title='Step 1'\n * pageId='step1'\n * :actions=\"[\n * {\n * title: 'Next step',\n * event: () => {\n * activePage.value = 'step2';\n * },\n * }]\">\n * Step 1 info\n * </bento-sidepanel-page>\n * <bento-sidepanel-page\n * title='Step 2'\n * pageId='step2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Step 2 info\n * </bento-sidepanel-page>\n * </bento-sidepanel>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n<style lang=\"scss\" scoped src=\"./sidepanel.scss\" />\n"],"names":["__default__$1","BentoSidepanelEvent","BentoSidepanelEvent2","__default__","messages","activePage","isOpen","toRefs","props","t","useI18n","sidepanel","ref","pages","previousPages","animation","BentoDialogPageAnimation","isClosing","sidepanelId","generateUid","internalIsOpen","isAnimationActive","isMounted","conditionalClasses","computed","closeSidepanelAfterAnimation","emit","startCloseSidepanelAnimation","closeSidepanelOnClickOutside","computedHideCloseButton","onMounted","onUnmounted","watch","newIsOpen","newSidepanelValue","updatePage","page","unregisterPage","pageIdToRemove","pageId","registerPage","provide","DIALOG_PAGE_CONFIG_INJECTION_KEY","DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY","SIDEPANEL_DIALOG_ID_INJECTION_KEY","deprecate"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { t as c, g as O } from "./en-US.BR6y7foR.js";
2
+ function i(o, e) {
3
+ const s = O(), a = e?.weekStartsOn ?? e?.locale?.options?.weekStartsOn ?? s.weekStartsOn ?? s.locale?.options?.weekStartsOn ?? 0, t = c(o, e?.in), n = t.getDay(), r = (n < a ? 7 : 0) + n - a;
4
+ return t.setDate(t.getDate() - r), t.setHours(0, 0, 0, 0), t;
5
+ }
6
+ export {
7
+ i as s
8
+ };
9
+ //# sourceMappingURL=startOfWeek.muMEhS7U.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"startOfWeek.Br5KM4z_.js","sources":["../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/startOfWeek.js"],"sourcesContent":["import { getDefaultOptions } from \"./_lib/defaultOptions.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link startOfWeek} function options.\n */\n\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The original date\n * @param options - An object with options\n *\n * @returns The start of a week\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\nexport function startOfWeek(date, options) {\n const defaultOptions = getDefaultOptions();\n const weekStartsOn =\n options?.weekStartsOn ??\n options?.locale?.options?.weekStartsOn ??\n defaultOptions.weekStartsOn ??\n defaultOptions.locale?.options?.weekStartsOn ??\n 0;\n\n const _date = toDate(date, options?.in);\n const day = _date.getDay();\n const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n\n _date.setDate(_date.getDate() - diff);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfWeek;\n"],"names":["startOfWeek","date","options","defaultOptions","getDefaultOptions","weekStartsOn","_b","_a","_d","_c","_date","toDate","day","diff"],"mappings":";AAkCO,SAASA,EAAYC,GAAMC,GAAS;;AACzC,QAAMC,IAAiBC,EAAiB,GAClCC,KACJH,KAAA,gBAAAA,EAAS,mBACTI,KAAAC,IAAAL,KAAA,gBAAAA,EAAS,WAAT,gBAAAK,EAAiB,YAAjB,gBAAAD,EAA0B,iBAC1BH,EAAe,kBACfK,KAAAC,IAAAN,EAAe,WAAf,gBAAAM,EAAuB,YAAvB,gBAAAD,EAAgC,iBAChC,GAEIE,IAAQC,EAAOV,GAAMC,KAAA,gBAAAA,EAAS,EAAE,GAChCU,IAAMF,EAAM,OAAM,GAClBG,KAAQD,IAAMP,IAAe,IAAI,KAAKO,IAAMP;AAElD,SAAAK,EAAM,QAAQA,EAAM,QAAO,IAAKG,CAAI,GACpCH,EAAM,SAAS,GAAG,GAAG,GAAG,CAAC,GAClBA;AACT;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"startOfWeek.muMEhS7U.js","sources":["../../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/startOfWeek.js"],"sourcesContent":["import { getDefaultOptions } from \"./_lib/defaultOptions.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link startOfWeek} function options.\n */\n\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The original date\n * @param options - An object with options\n *\n * @returns The start of a week\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\nexport function startOfWeek(date, options) {\n const defaultOptions = getDefaultOptions();\n const weekStartsOn =\n options?.weekStartsOn ??\n options?.locale?.options?.weekStartsOn ??\n defaultOptions.weekStartsOn ??\n defaultOptions.locale?.options?.weekStartsOn ??\n 0;\n\n const _date = toDate(date, options?.in);\n const day = _date.getDay();\n const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n\n _date.setDate(_date.getDate() - diff);\n _date.setHours(0, 0, 0, 0);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default startOfWeek;\n"],"names":["startOfWeek","date","options","defaultOptions","getDefaultOptions","weekStartsOn","_date","toDate","day","diff"],"mappings":";AAkCO,SAASA,EAAYC,GAAMC,GAAS;AACzC,QAAMC,IAAiBC,EAAiB,GAClCC,IACJH,GAAS,gBACTA,GAAS,QAAQ,SAAS,gBAC1BC,EAAe,gBACfA,EAAe,QAAQ,SAAS,gBAChC,GAEIG,IAAQC,EAAON,GAAMC,GAAS,EAAE,GAChCM,IAAMF,EAAM,OAAM,GAClBG,KAAQD,IAAMH,IAAe,IAAI,KAAKG,IAAMH;AAElD,SAAAC,EAAM,QAAQA,EAAM,QAAO,IAAKG,CAAI,GACpCH,EAAM,SAAS,GAAG,GAAG,GAAG,CAAC,GAClBA;AACT;","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as r, computed as o } from "vue";
2
- import { B as e } from "./typography.C8lPlsbD.js";
2
+ import { B as e } from "./typography.D1OZJbEa.js";
3
3
  import { n as _ } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
4
4
  import "../assets/status.css";
5
5
  const i = {
@@ -31,4 +31,4 @@ const v = u.exports;
31
31
  export {
32
32
  v as B
33
33
  };
34
- //# sourceMappingURL=status.CKb07vxI.js.map
34
+ //# sourceMappingURL=status.DJ1Dfh5s.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"status.CKb07vxI.js","sources":["../../src/components/status/status.vue"],"sourcesContent":["<template>\n <div class=\"b-status\" role=\"status\">\n <div class=\"b-status__indicator-wrapper\">\n <span class=\"b-status__indicator\" :class=\"conditionalClass\" role=\"presentation\"></span>\n </div>\n <bento-typography class=\"b-status__label\" el=\"span\" variant=\"body\">\n <slot></slot>\n </bento-typography>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import { type BentoStatusProps } from './status.types';\n\n const props = defineProps({\n variant: null\n});\n\n const conditionalClass = computed(() => ({\n [`b-status__indicator--${props.variant}`]: true,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * A Status component is used to indicate a\n * passage of time or a particular step of a process.\n *\n * @example\n * import { BentoStatus } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStatus },\n * template: `\n * <bento-status variant=\"red\">\n * 1 week ago\n * </bento-status>\n * `\n * }\n */\n export default {\n name: 'bento-status',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./status.scss\" />\n"],"names":["__default__","conditionalClass","computed","props"],"mappings":";;;;AA0CI,MAAAA,IAAA;AAAA,EAAe,MAAA;AAEf;;;;;;iBAxBAC,IAAAC,EAAA,OAAA;AAAA,MAAyC,CAAA,wBAAAC,EAAA,OAAA,EAAA,GAAA;AAAA,IACM,EAAA;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"status.DJ1Dfh5s.js","sources":["../../src/components/status/status.vue"],"sourcesContent":["<template>\n <div class=\"b-status\" role=\"status\">\n <div class=\"b-status__indicator-wrapper\">\n <span class=\"b-status__indicator\" :class=\"conditionalClass\" role=\"presentation\"></span>\n </div>\n <bento-typography class=\"b-status__label\" el=\"span\" variant=\"body\">\n <slot></slot>\n </bento-typography>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import { type BentoStatusProps } from './status.types';\n\n const props = defineProps({\n variant: null\n});\n\n const conditionalClass = computed(() => ({\n [`b-status__indicator--${props.variant}`]: true,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * A Status component is used to indicate a\n * passage of time or a particular step of a process.\n *\n * @example\n * import { BentoStatus } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStatus },\n * template: `\n * <bento-status variant=\"red\">\n * 1 week ago\n * </bento-status>\n * `\n * }\n */\n export default {\n name: 'bento-status',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./status.scss\" />\n"],"names":["__default__","conditionalClass","computed","props"],"mappings":";;;;AA0CI,MAAAA,IAAA;AAAA,EAAe,MAAA;AAEf;;;;;;iBAxBAC,IAAAC,EAAA,OAAA;AAAA,MAAyC,CAAA,wBAAAC,EAAA,OAAA,EAAA,GAAA;AAAA,IACM,EAAA;;;;;;;;;;;;;;;;"}