@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,61 +1,28 @@
1
1
  import { defineComponent as A, useSlots as E, ref as h, watch as M, computed as o } from "vue";
2
- import { B as D, d as L } from "./typography.C8lPlsbD.js";
2
+ import { B as D, d as L } from "./typography.D1OZJbEa.js";
3
3
  import { C as H } from "./chevron-down.eYtgv5ly.js";
4
4
  import { C as O } from "./chevron-up.d8cwIlA_.js";
5
- import { u as U } from "./use-expandable-content-height.2WJLCL-R.js";
5
+ import { u as U } from "./use-expandable-content-height.Bdd9hQwq.js";
6
6
  import { u as R } from "./use-has-slot.C9lQZ6nz.js";
7
- import { g as z } from "./generate-uid.NJ8tVoha.js";
8
- import { u as N } from "./index.B6WW_F-J.js";
7
+ import { g as z } from "./generate-uid.DBWe4g6T.js";
8
+ import { u as N } from "./index.CPOlyau9.js";
9
9
  import { B as F } from "./button-actions.types.BptAXjD8.js";
10
- import { B as W } from "./button-actions.Dpbx0xf3.js";
10
+ import { B as W } from "./button-actions.CxX7lK7z.js";
11
11
  import { n as K } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
12
12
  import "../assets/card.css";
13
- var C = /* @__PURE__ */ ((s) => (s.PRIMARY = "primary", s.SECONDARY = "secondary", s))(C || {}), c = /* @__PURE__ */ ((s) => (s.DEFAULT = "default", s.SMALL = "small", s))(c || {});
13
+ var C = /* @__PURE__ */ ((s) => (s.PRIMARY = "primary", s.SECONDARY = "secondary", s))(C || {}), r = /* @__PURE__ */ ((s) => (s.DEFAULT = "default", s.SMALL = "small", s))(r || {});
14
14
  const P = {
15
- "de-DE": {
16
- hideContent: "Inhalt ausblenden",
17
- showContent: "Inhalt anzeigen"
18
- },
19
- "en-GB": {
20
- hideContent: "Hide content",
21
- showContent: "Show content"
22
- },
23
- "en-US": {
24
- hideContent: "Hide content",
25
- showContent: "Show content"
26
- },
27
- "es-419": {
28
- hideContent: "Ocultar contenido",
29
- showContent: "Mostrar contenido"
30
- },
31
- "es-ES": {
32
- hideContent: "Ocultar contenido",
33
- showContent: "Mostrar contenido"
34
- },
35
- "es-MX": {
36
- hideContent: "Ocultar contenido",
37
- showContent: "Mostrar contenido"
38
- },
39
- "fr-FR": {
40
- hideContent: "Masquer le contenu",
41
- showContent: "Afficher le contenu"
42
- },
43
- "it-IT": {
44
- hideContent: "Nascondi contenuto",
45
- showContent: "Mostra contenuto"
46
- },
47
- "ja-JP": {
48
- hideContent: "コンテンツを非表示",
49
- showContent: "コンテンツを表示"
50
- },
51
- "pt-BR": {
52
- hideContent: "Ocultar conteúdo",
53
- showContent: "Mostrar conteúdo"
54
- },
55
- "zh-CN": {
56
- hideContent: "隐藏内容",
57
- showContent: "显示内容"
58
- }
15
+ "de-DE": { hideContent: "Inhalt ausblenden", showContent: "Inhalt anzeigen" },
16
+ "en-GB": { hideContent: "Hide content", showContent: "Show content" },
17
+ "en-US": { hideContent: "Hide content", showContent: "Show content" },
18
+ "es-419": { hideContent: "Ocultar contenido", showContent: "Mostrar contenido" },
19
+ "es-ES": { hideContent: "Ocultar contenido", showContent: "Mostrar contenido" },
20
+ "es-MX": { hideContent: "Ocultar contenido", showContent: "Mostrar contenido" },
21
+ "fr-FR": { hideContent: "Masquer le contenu", showContent: "Afficher le contenu" },
22
+ "it-IT": { hideContent: "Nascondi contenuto", showContent: "Mostra contenuto" },
23
+ "ja-JP": { hideContent: "コンテンツを非表示", showContent: "コンテンツを表示" },
24
+ "pt-BR": { hideContent: "Ocultar conteúdo", showContent: "Mostrar conteúdo" },
25
+ "zh-CN": { hideContent: "隐藏内容", showContent: "显示内容" }
59
26
  }, Y = {
60
27
  i18n: { messages: P },
61
28
  name: "bento-card"
@@ -69,22 +36,19 @@ const P = {
69
36
  closed: { type: Boolean, default: !1 },
70
37
  disabled: { type: Boolean, default: !1 },
71
38
  expandable: { type: Boolean, default: !1 },
72
- titleSize: { default: c.DEFAULT }
39
+ titleSize: { default: r.DEFAULT }
73
40
  },
74
41
  emits: ["click", "expanded"],
75
42
  setup(s, { emit: a }) {
76
43
  const e = s, { t } = N(), n = E(), d = R(n), u = h(null), _ = z("card"), l = h(!e.closed);
77
44
  M(
78
45
  () => e.closed,
79
- (r) => {
80
- l.value = !r;
46
+ (i) => {
47
+ l.value = !i;
81
48
  }
82
49
  );
83
- const i = o(() => d("default") || d("description") || d("header")), y = o(() => d("default") || d("header")), b = o(
84
- () => {
85
- var r;
86
- return (d("content") || ((r = e.actions) == null ? void 0 : r.length)) && (!e.expandable || e.expandable && l.value);
87
- }
50
+ const c = o(() => d("default") || d("description") || d("header")), y = o(() => d("default") || d("header")), b = o(
51
+ () => (d("content") || e.actions?.length) && (!e.expandable || e.expandable && l.value)
88
52
  ), f = o(() => e.clickable && !e.disabled ? 0 : -1), x = o(() => e.expandable && !e.disabled ? 0 : -1), g = o(() => ({
89
53
  [`b-card--${e.background}`]: e.background,
90
54
  "b-card--clickable": e.clickable,
@@ -94,32 +58,32 @@ const P = {
94
58
  "b-card__header--expandable": e.expandable,
95
59
  "b-card__header--without-body": !e.expandable && !b.value
96
60
  })), m = o(() => ({
97
- "b-card__toggle--small-text": e.titleSize === c.SMALL
61
+ "b-card__toggle--small-text": e.titleSize === r.SMALL
98
62
  })), k = o(() => ({
99
63
  "b-card__body--expandable": e.expandable && d("content"),
100
- "b-card__body--without-header": !e.expandable && !i.value
64
+ "b-card__body--without-header": !e.expandable && !c.value
101
65
  })), v = o(() => ({
102
- "b-card__content--without-header": !e.expandable && !i.value,
66
+ "b-card__content--without-header": !e.expandable && !c.value,
103
67
  "b-card__content--expandable": e.expandable
104
68
  })), B = o(() => {
105
- const r = !e.expandable && e.actions && !d("content");
69
+ const i = !e.expandable && e.actions && !d("content");
106
70
  return {
107
- "b-card__actions--without-content": r,
108
- "b-card__actions--without-content-and-with-header": r && i.value
71
+ "b-card__actions--without-content": i,
72
+ "b-card__actions--without-content-and-with-header": i && c.value
109
73
  };
110
74
  }), S = o(() => ({
111
75
  "b-card__title-wrapper--truncated": d("header")
112
76
  })), I = o(
113
77
  () => ({
114
78
  el: "div",
115
- variant: e.titleSize === c.DEFAULT ? "title" : "body",
116
- strongest: e.titleSize === c.SMALL,
117
- wide: e.titleSize === c.SMALL
79
+ variant: e.titleSize === r.DEFAULT ? "title" : "body",
80
+ strongest: e.titleSize === r.SMALL,
81
+ wide: e.titleSize === r.SMALL
118
82
  })
119
83
  ), { contentHeight: p } = U(u, l), T = o(
120
84
  () => e.expandable && p.value ? { "max-height": p.value } : {}
121
85
  );
122
- return { __sfc: !0, t, slots: n, hasSlot: d, props: e, emit: a, contentDiv: u, cardId: _, showContent: l, showHeader: i, showTitleWrapper: y, showCardBody: b, tabIndex: f, headerTabIndex: x, cardConditionalClasses: g, cardHeaderConditionalClasses: w, cardToggleConditionalClasses: m, cardBodyConditionalClasses: k, cardContentConditionalClasses: v, cardActionsConditionalClasses: B, cardTitleWrapperConditionalClasses: S, typography: I, contentHeight: p, contentMaxHeight: T, toggleExpansion: () => {
86
+ return { __sfc: !0, t, slots: n, hasSlot: d, props: e, emit: a, contentDiv: u, cardId: _, showContent: l, showHeader: c, showTitleWrapper: y, showCardBody: b, tabIndex: f, headerTabIndex: x, cardConditionalClasses: g, cardHeaderConditionalClasses: w, cardToggleConditionalClasses: m, cardBodyConditionalClasses: k, cardContentConditionalClasses: v, cardActionsConditionalClasses: B, cardTitleWrapperConditionalClasses: S, typography: I, contentHeight: p, contentMaxHeight: T, toggleExpansion: () => {
123
87
  !e.disabled && e.expandable && (l.value = !l.value, a("expanded", l.value));
124
88
  }, onClick: () => {
125
89
  e.disabled || (a("click"), e.clickable || L(
@@ -154,7 +118,7 @@ var q = function() {
154
118
  const ce = J.exports;
155
119
  export {
156
120
  C as B,
157
- c as a,
121
+ r as a,
158
122
  ce as c
159
123
  };
160
- //# sourceMappingURL=card.DqMECGcj.js.map
124
+ //# sourceMappingURL=card.B70qRHOi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"card.DqMECGcj.js","sources":["../../src/components/card/card.types.ts","../../src/components/card/card.vue"],"sourcesContent":["/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoCardBackground {\n PRIMARY = 'primary',\n SECONDARY = 'secondary',\n}\n\n/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoCardTitleSize {\n DEFAULT = 'default',\n SMALL = 'small',\n}\n","<template>\n <div\n class=\"b-card\"\n :class=\"cardConditionalClasses\"\n :tabindex=\"tabIndex\"\n data-testid=\"card\"\n @click=\"onClick\"\n @keydown.enter=\"onKeyDown\"\n @keydown.space=\"onKeyDown\"\n >\n <div v-if=\"hasSlot('image')\" class=\"b-card__image\">\n <slot name=\"image\"></slot>\n </div>\n <div\n v-if=\"showHeader\"\n class=\"b-card__header\"\n :class=\"cardHeaderConditionalClasses\"\n :tabindex=\"headerTabIndex\"\n :aria-controls=\"expandable && showCardBody ? cardId : null\"\n :aria-expanded=\"expandable ? `${showContent}` : null\"\n :role=\"expandable ? 'button' : null\"\n @click=\"toggleExpansion\"\n @keypress.enter=\"toggleExpansion\"\n @keypress.space=\"toggleExpansion\"\n >\n <div class=\"b-card__header-wrapper\">\n <div v-if=\"showTitleWrapper\" class=\"b-card__header-slot-wrapper\">\n <div class=\"b-card__title-wrapper\" :class=\"cardTitleWrapperConditionalClasses\">\n <div v-if=\"expandable\" class=\"b-card__toggle\" :class=\"cardToggleConditionalClasses\">\n <chevron-up-icon v-if=\"showContent\" :svg-title=\"t('hideContent')\" aria-hidden=\"true\" />\n <chevron-down-icon v-else :svg-title=\"t('showContent')\" aria-hidden=\"true\" />\n </div>\n <bento-typography v-if=\"hasSlot('default')\" class=\"b-card__title\" v-bind=\"typography\">\n <slot />\n </bento-typography>\n </div>\n\n <template v-if=\"hasSlot('header')\">\n <slot name=\"header\"></slot>\n </template>\n </div>\n\n <bento-typography v-if=\"hasSlot('description')\" class=\"b-card__description\" el=\"div\" variant=\"body\">\n <slot name=\"description\" />\n </bento-typography>\n </div>\n </div>\n\n <Transition name=\"b-card__animation\">\n <div v-if=\"showCardBody\" class=\"b-card__wrapper\" :style=\"contentMaxHeight\">\n <div\n :id=\"expandable ? cardId : null\"\n ref=\"contentDiv\"\n class=\"b-card__body\"\n :class=\"cardBodyConditionalClasses\"\n >\n <div v-if=\"hasSlot('content')\" class=\"b-card__content\" :class=\"cardContentConditionalClasses\">\n <slot name=\"content\" />\n </div>\n\n <div v-if=\"actions\" class=\"b-card__actions\" :class=\"cardActionsConditionalClasses\">\n <bento-button-actions :actions=\"actions\" :layout=\"actionsLayout\"></bento-button-actions>\n </div>\n </div>\n </div>\n </Transition>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref, useSlots, watch } from 'vue';\n\n // Components\n import { BentoTypography } from '@/components/typography';\n import { BentoButtonActions, BentoButtonActionsLayout, type BentoButtonActionsList } from '@/components/button';\n import { BentoCardBackground, BentoCardTitleSize } from '@/components/card/card.types';\n import ChevronDownIcon from '@adyen/ui-assets-icons-16/vue/chevron-down';\n import ChevronUpIcon from '@adyen/ui-assets-icons-16/vue/chevron-up';\n\n // Composables\n import { useExpandableContentHeight } from '@/composables/use-expandable-content-height/use-expandable-content-height';\n\n // Utils\n import { useHasSlot } from '@/composables';\n import { generateUid } from '@/core/utils/ts';\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n import { deprecate } from '@/utils/ts/deprecate';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const props = defineProps({\n actions: { default: null },\n actionsLayout: { default: BentoButtonActionsLayout.BUTTONS_END },\n background: { default: BentoCardBackground.PRIMARY },\n clickable: { type: Boolean, default: false },\n closed: { type: Boolean, default: false },\n disabled: { type: Boolean, default: false },\n expandable: { type: Boolean, default: false },\n titleSize: { default: BentoCardTitleSize.DEFAULT }\n});\n\n const emit = defineEmits([\"click\", \"expanded\"]);\n\n const contentDiv = ref<HTMLDivElement>(null);\n\n const cardId = generateUid('card');\n const showContent = ref(!props.closed);\n watch(\n () => props.closed,\n value => {\n showContent.value = !value;\n }\n );\n const showHeader = computed(() => hasSlot('default') || hasSlot('description') || hasSlot('header'));\n const showTitleWrapper = computed(() => hasSlot('default') || hasSlot('header'));\n const showCardBody = computed(\n () =>\n (hasSlot('content') || props.actions?.length) &&\n (!props.expandable || (props.expandable && showContent.value))\n );\n const tabIndex = computed(() => (props.clickable && !props.disabled ? 0 : -1));\n const headerTabIndex = computed(() => (props.expandable && !props.disabled ? 0 : -1));\n\n const cardConditionalClasses = computed(() => ({\n [`b-card--${props.background}`]: props.background,\n 'b-card--clickable': props.clickable,\n 'b-card--expandable': props.expandable,\n 'b-card--disabled': (props.clickable || props.expandable) && props.disabled,\n }));\n\n const cardHeaderConditionalClasses = computed(() => ({\n 'b-card__header--expandable': props.expandable,\n 'b-card__header--without-body': !props.expandable && !showCardBody.value,\n }));\n\n const cardToggleConditionalClasses = computed(() => ({\n 'b-card__toggle--small-text': props.titleSize === BentoCardTitleSize.SMALL,\n }));\n\n const cardBodyConditionalClasses = computed(() => ({\n 'b-card__body--expandable': props.expandable && hasSlot('content'),\n 'b-card__body--without-header': !props.expandable && !showHeader.value,\n }));\n\n const cardContentConditionalClasses = computed(() => ({\n 'b-card__content--without-header': !props.expandable && !showHeader.value,\n 'b-card__content--expandable': props.expandable,\n }));\n\n const cardActionsConditionalClasses = computed(() => {\n const isNotExpandableWithoutContent = !props.expandable && props.actions && !hasSlot('content');\n\n return {\n 'b-card__actions--without-content': isNotExpandableWithoutContent,\n 'b-card__actions--without-content-and-with-header': isNotExpandableWithoutContent && showHeader.value,\n };\n });\n\n const cardTitleWrapperConditionalClasses = computed(() => ({\n 'b-card__title-wrapper--truncated': hasSlot('header'),\n }));\n\n const typography = computed(\n () =>\n ({\n el: 'div',\n variant: props.titleSize === BentoCardTitleSize.DEFAULT ? 'title' : 'body',\n strongest: props.titleSize === BentoCardTitleSize.SMALL,\n wide: props.titleSize === BentoCardTitleSize.SMALL,\n }) as InstanceType<typeof BentoTypography>['$props']\n );\n\n // Toggle open and close logic and animation\n const { contentHeight } = useExpandableContentHeight(contentDiv, showContent);\n\n const contentMaxHeight = computed(() =>\n props.expandable && contentHeight.value ? { 'max-height': contentHeight.value } : {}\n );\n\n const toggleExpansion = () => {\n if (!props.disabled && props.expandable) {\n showContent.value = !showContent.value;\n emit('expanded', showContent.value);\n }\n };\n\n const onClick = () => {\n if (!props.disabled) {\n emit('click');\n\n if (!props.clickable) {\n deprecate(\n 'BentoCard \"@click\" property',\n `Use the BentoCard \"@click\" with the \"clickable\" property to enable accessible styles.`,\n '2.0.0'\n );\n }\n }\n };\n\n const onKeyDown = () => {\n if (props.clickable && !props.disabled) {\n emit('click');\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * A card is a flexible and composable container.\n * Use cards to represent a single object or to visually group certain content, like legal information within company settings.\n *\n * @example\n * import { BentoCard } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoCard },\n * template: `\n * <bento-card>\n * Title of the Card\n * </bento-card>\n * `\n * };\n */\n export default {\n i18n: { messages },\n name: 'bento-card',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./card.scss\" />\n"],"names":["BentoCardBackground","BentoCardBackground2","BentoCardTitleSize","BentoCardTitleSize2","__default__","messages","useI18n","slots","useSlots","hasSlot","useHasSlot","contentDiv","ref","cardId","generateUid","showContent","props","watch","value","showHeader","computed","showTitleWrapper","showCardBody","_a","tabIndex","headerTabIndex","cardConditionalClasses","cardHeaderConditionalClasses","cardToggleConditionalClasses","cardBodyConditionalClasses","cardContentConditionalClasses","cardActionsConditionalClasses","isNotExpandableWithoutContent","cardTitleWrapperConditionalClasses","typography","contentHeight","useExpandableContentHeight","contentMaxHeight","emit","deprecate"],"mappings":"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"}
1
+ {"version":3,"file":"card.B70qRHOi.js","sources":["../../src/components/card/card.types.ts","../../src/components/card/card.vue"],"sourcesContent":["/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoCardBackground {\n PRIMARY = 'primary',\n SECONDARY = 'secondary',\n}\n\n/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoCardTitleSize {\n DEFAULT = 'default',\n SMALL = 'small',\n}\n","<template>\n <div\n class=\"b-card\"\n :class=\"cardConditionalClasses\"\n :tabindex=\"tabIndex\"\n data-testid=\"card\"\n @click=\"onClick\"\n @keydown.enter=\"onKeyDown\"\n @keydown.space=\"onKeyDown\"\n >\n <div v-if=\"hasSlot('image')\" class=\"b-card__image\">\n <slot name=\"image\"></slot>\n </div>\n <div\n v-if=\"showHeader\"\n class=\"b-card__header\"\n :class=\"cardHeaderConditionalClasses\"\n :tabindex=\"headerTabIndex\"\n :aria-controls=\"expandable && showCardBody ? cardId : null\"\n :aria-expanded=\"expandable ? `${showContent}` : null\"\n :role=\"expandable ? 'button' : null\"\n @click=\"toggleExpansion\"\n @keypress.enter=\"toggleExpansion\"\n @keypress.space=\"toggleExpansion\"\n >\n <div class=\"b-card__header-wrapper\">\n <div v-if=\"showTitleWrapper\" class=\"b-card__header-slot-wrapper\">\n <div class=\"b-card__title-wrapper\" :class=\"cardTitleWrapperConditionalClasses\">\n <div v-if=\"expandable\" class=\"b-card__toggle\" :class=\"cardToggleConditionalClasses\">\n <chevron-up-icon v-if=\"showContent\" :svg-title=\"t('hideContent')\" aria-hidden=\"true\" />\n <chevron-down-icon v-else :svg-title=\"t('showContent')\" aria-hidden=\"true\" />\n </div>\n <bento-typography v-if=\"hasSlot('default')\" class=\"b-card__title\" v-bind=\"typography\">\n <slot />\n </bento-typography>\n </div>\n\n <template v-if=\"hasSlot('header')\">\n <slot name=\"header\"></slot>\n </template>\n </div>\n\n <bento-typography v-if=\"hasSlot('description')\" class=\"b-card__description\" el=\"div\" variant=\"body\">\n <slot name=\"description\" />\n </bento-typography>\n </div>\n </div>\n\n <Transition name=\"b-card__animation\">\n <div v-if=\"showCardBody\" class=\"b-card__wrapper\" :style=\"contentMaxHeight\">\n <div\n :id=\"expandable ? cardId : null\"\n ref=\"contentDiv\"\n class=\"b-card__body\"\n :class=\"cardBodyConditionalClasses\"\n >\n <div v-if=\"hasSlot('content')\" class=\"b-card__content\" :class=\"cardContentConditionalClasses\">\n <slot name=\"content\" />\n </div>\n\n <div v-if=\"actions\" class=\"b-card__actions\" :class=\"cardActionsConditionalClasses\">\n <bento-button-actions :actions=\"actions\" :layout=\"actionsLayout\"></bento-button-actions>\n </div>\n </div>\n </div>\n </Transition>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref, useSlots, watch } from 'vue';\n\n // Components\n import { BentoTypography } from '@/components/typography';\n import { BentoButtonActions, BentoButtonActionsLayout, type BentoButtonActionsList } from '@/components/button';\n import { BentoCardBackground, BentoCardTitleSize } from '@/components/card/card.types';\n import ChevronDownIcon from '@adyen/ui-assets-icons-16/vue/chevron-down';\n import ChevronUpIcon from '@adyen/ui-assets-icons-16/vue/chevron-up';\n\n // Composables\n import { useExpandableContentHeight } from '@/composables/use-expandable-content-height/use-expandable-content-height';\n\n // Utils\n import { useHasSlot } from '@/composables';\n import { generateUid } from '@/core/utils/ts';\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n import { deprecate } from '@/utils/ts/deprecate';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const props = defineProps({\n actions: { default: null },\n actionsLayout: { default: BentoButtonActionsLayout.BUTTONS_END },\n background: { default: BentoCardBackground.PRIMARY },\n clickable: { type: Boolean, default: false },\n closed: { type: Boolean, default: false },\n disabled: { type: Boolean, default: false },\n expandable: { type: Boolean, default: false },\n titleSize: { default: BentoCardTitleSize.DEFAULT }\n});\n\n const emit = defineEmits([\"click\", \"expanded\"]);\n\n const contentDiv = ref<HTMLDivElement>(null);\n\n const cardId = generateUid('card');\n const showContent = ref(!props.closed);\n watch(\n () => props.closed,\n value => {\n showContent.value = !value;\n }\n );\n const showHeader = computed(() => hasSlot('default') || hasSlot('description') || hasSlot('header'));\n const showTitleWrapper = computed(() => hasSlot('default') || hasSlot('header'));\n const showCardBody = computed(\n () =>\n (hasSlot('content') || props.actions?.length) &&\n (!props.expandable || (props.expandable && showContent.value))\n );\n const tabIndex = computed(() => (props.clickable && !props.disabled ? 0 : -1));\n const headerTabIndex = computed(() => (props.expandable && !props.disabled ? 0 : -1));\n\n const cardConditionalClasses = computed(() => ({\n [`b-card--${props.background}`]: props.background,\n 'b-card--clickable': props.clickable,\n 'b-card--expandable': props.expandable,\n 'b-card--disabled': (props.clickable || props.expandable) && props.disabled,\n }));\n\n const cardHeaderConditionalClasses = computed(() => ({\n 'b-card__header--expandable': props.expandable,\n 'b-card__header--without-body': !props.expandable && !showCardBody.value,\n }));\n\n const cardToggleConditionalClasses = computed(() => ({\n 'b-card__toggle--small-text': props.titleSize === BentoCardTitleSize.SMALL,\n }));\n\n const cardBodyConditionalClasses = computed(() => ({\n 'b-card__body--expandable': props.expandable && hasSlot('content'),\n 'b-card__body--without-header': !props.expandable && !showHeader.value,\n }));\n\n const cardContentConditionalClasses = computed(() => ({\n 'b-card__content--without-header': !props.expandable && !showHeader.value,\n 'b-card__content--expandable': props.expandable,\n }));\n\n const cardActionsConditionalClasses = computed(() => {\n const isNotExpandableWithoutContent = !props.expandable && props.actions && !hasSlot('content');\n\n return {\n 'b-card__actions--without-content': isNotExpandableWithoutContent,\n 'b-card__actions--without-content-and-with-header': isNotExpandableWithoutContent && showHeader.value,\n };\n });\n\n const cardTitleWrapperConditionalClasses = computed(() => ({\n 'b-card__title-wrapper--truncated': hasSlot('header'),\n }));\n\n const typography = computed(\n () =>\n ({\n el: 'div',\n variant: props.titleSize === BentoCardTitleSize.DEFAULT ? 'title' : 'body',\n strongest: props.titleSize === BentoCardTitleSize.SMALL,\n wide: props.titleSize === BentoCardTitleSize.SMALL,\n }) as InstanceType<typeof BentoTypography>['$props']\n );\n\n // Toggle open and close logic and animation\n const { contentHeight } = useExpandableContentHeight(contentDiv, showContent);\n\n const contentMaxHeight = computed(() =>\n props.expandable && contentHeight.value ? { 'max-height': contentHeight.value } : {}\n );\n\n const toggleExpansion = () => {\n if (!props.disabled && props.expandable) {\n showContent.value = !showContent.value;\n emit('expanded', showContent.value);\n }\n };\n\n const onClick = () => {\n if (!props.disabled) {\n emit('click');\n\n if (!props.clickable) {\n deprecate(\n 'BentoCard \"@click\" property',\n `Use the BentoCard \"@click\" with the \"clickable\" property to enable accessible styles.`,\n '2.0.0'\n );\n }\n }\n };\n\n const onKeyDown = () => {\n if (props.clickable && !props.disabled) {\n emit('click');\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * A card is a flexible and composable container.\n * Use cards to represent a single object or to visually group certain content, like legal information within company settings.\n *\n * @example\n * import { BentoCard } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoCard },\n * template: `\n * <bento-card>\n * Title of the Card\n * </bento-card>\n * `\n * };\n */\n export default {\n i18n: { messages },\n name: 'bento-card',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./card.scss\" />\n"],"names":["BentoCardBackground","BentoCardBackground2","BentoCardTitleSize","BentoCardTitleSize2","__default__","messages","useI18n","slots","useSlots","hasSlot","useHasSlot","contentDiv","ref","cardId","generateUid","showContent","props","watch","value","showHeader","computed","showTitleWrapper","showCardBody","tabIndex","headerTabIndex","cardConditionalClasses","cardHeaderConditionalClasses","cardToggleConditionalClasses","cardBodyConditionalClasses","cardContentConditionalClasses","cardActionsConditionalClasses","isNotExpandableWithoutContent","cardTitleWrapperConditionalClasses","typography","contentHeight","useExpandableContentHeight","contentMaxHeight","emit","deprecate"],"mappings":";;;;;;;;;;;;AAGO,IAAAA,IAAA,kBAAAC,OACHA,EAAA,UAAA,WACAA,EAAA,YAAA,aAFQA,IAAAD,KAAA,CAAA,CAAA,GAQLE,IAAA,kBAAAC,OACHA,EAAA,UAAA,WACAA,EAAA,QAAA,SAFQA,IAAAD,KAAA,CAAA,CAAA;;;;;;;;;;;;;GC4NRE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAAA,EACM,MAAA;AAErB;;;;;;;;;;;;;;iBA9IA,EAAA,EAAA,IAAAC,EAAA,GAEAC,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAeAI,IAAAC,EAAA,IAAA,GAEAC,IAAAC,EAAA,MAAA,GACAC,IAAAH,EAAA,CAAAI,EAAA,MAAA;AACA,IAAAC;AAAA,MAAA,MAAAD,EAAA;AAAA,MACgB,CAAAE,MAAA;AAER,QAAAH,EAAA,QAAA,CAAAG;AAAA,MAAqB;AAAA,IACzB;AAEJ,UAAAC,IAAAC,EAAA,MAAAX,EAAA,SAAA,KAAAA,EAAA,aAAA,KAAAA,EAAA,QAAA,CAAA,GACAY,IAAAD,EAAA,MAAAX,EAAA,SAAA,KAAAA,EAAA,QAAA,CAAA,GACAa,IAAAF;AAAA,MAAqB,OAAAX,EAAA,SAAA,KAAAO,EAAA,SAAA,YAAA,CAAAA,EAAA,cAAAA,EAAA,cAAAD,EAAA;AAAA,IAG0C,GAE/DQ,IAAAH,EAAA,MAAAJ,EAAA,aAAA,CAAAA,EAAA,WAAA,IAAA,EAAA,GACAQ,IAAAJ,EAAA,MAAAJ,EAAA,cAAA,CAAAA,EAAA,WAAA,IAAA,EAAA,GAEAS,IAAAL,EAAA,OAAA;AAAA,MAA+C,CAAA,WAAAJ,EAAA,UAAA,EAAA,GAAAA,EAAA;AAAA,MACJ,qBAAAA,EAAA;AAAA,MACZ,sBAAAA,EAAA;AAAA,MACC,qBAAAA,EAAA,aAAAA,EAAA,eAAAA,EAAA;AAAA,IACuC,EAAA,GAGvEU,IAAAN,EAAA,OAAA;AAAA,MAAqD,8BAAAJ,EAAA;AAAA,MACb,gCAAA,CAAAA,EAAA,cAAA,CAAAM,EAAA;AAAA,IAC+B,EAAA,GAGvEK,IAAAP,EAAA,OAAA;AAAA,MAAqD,8BAAAJ,EAAA,cAAAd,EAAA;AAAA,IACoB,EAAA,GAGzE0B,IAAAR,EAAA,OAAA;AAAA,MAAmD,4BAAAJ,EAAA,cAAAP,EAAA,SAAA;AAAA,MACkB,gCAAA,CAAAO,EAAA,cAAA,CAAAG,EAAA;AAAA,IACA,EAAA,GAGrEU,IAAAT,EAAA,OAAA;AAAA,MAAsD,mCAAA,CAAAJ,EAAA,cAAA,CAAAG,EAAA;AAAA,MACkB,+BAAAH,EAAA;AAAA,IAC/B,EAAA,GAGzCc,IAAAV,EAAA,MAAA;AACI,YAAAW,IAAA,CAAAf,EAAA,cAAAA,EAAA,WAAA,CAAAP,EAAA,SAAA;AAEA,aAAA;AAAA,QAAO,oCAAAsB;AAAA,QACiC,oDAAAA,KAAAZ,EAAA;AAAA,MAC4D;AAAA,IACpG,CAAA,GAGJa,IAAAZ,EAAA,OAAA;AAAA,MAA2D,oCAAAX,EAAA,QAAA;AAAA,IACH,EAAA,GAGxDwB,IAAAb;AAAA,MAAmB,OAAA;AAAA,QAEV,IAAA;AAAA,QACO,SAAAJ,EAAA,cAAAd,EAAA,UAAA,UAAA;AAAA,QACgE,WAAAc,EAAA,cAAAd,EAAA;AAAA,QAClB,MAAAc,EAAA,cAAAd,EAAA;AAAA,MACL;AAAA,IACjD,GAIR,EAAA,eAAAgC,EAAA,IAAAC,EAAAxB,GAAAI,CAAA,GAEAqB,IAAAhB;AAAA,MAAyB,MAAAJ,EAAA,cAAAkB,EAAA,QAAA,EAAA,cAAAA,EAAA,MAAA,IAAA,CAAA;AAAA,IAC8D;ifAGvF,MAAA;AACI,MAAA,CAAAlB,EAAA,YAAAA,EAAA,eACID,EAAA,QAAA,CAAAA,EAAA,OACAsB,EAAA,YAAAtB,EAAA,KAAA;AAAA,IACJ,YAGJ,MAAA;AACI,MAAAC,EAAA,aACIqB,EAAA,OAAA,GAEArB,EAAA,aACIsB;AAAA,QAAA;AAAA,QACI;AAAA,QACA;AAAA,MACA;AAAA,IAGZ,cAGJ,MAAA;AACI,MAAAtB,EAAA,aAAA,CAAAA,EAAA,YACIqB,EAAA,OAAA;AAAA,IACJ;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,11 +1,11 @@
1
1
  import { defineComponent as y, useSlots as v, toRef as x, computed as l, watch as f, ref as E, onMounted as C } from "vue";
2
- import { B as k } from "./checkbox.BUc2332d.js";
3
- import { g as S } from "./generate-uid.NJ8tVoha.js";
4
- import { d as M } from "./typography.C8lPlsbD.js";
2
+ import { B as k } from "./checkbox.Ca0mu2lE.js";
3
+ import { g as S } from "./generate-uid.DBWe4g6T.js";
4
+ import { d as M } from "./typography.D1OZJbEa.js";
5
5
  import { u as B } from "./use-form-layout-loading.CWbjZiwP.js";
6
6
  import { u as w } from "./form-field.D_2g7vaP.js";
7
- import { E as V } from "./error-message.Hqp_VvD3.js";
8
- import { C as G } from "./controls-group.BomXFNvi.js";
7
+ import { E as V } from "./error-message.BEHBfjmn.js";
8
+ import { C as G } from "./controls-group.DPLAJjbv.js";
9
9
  import { n as I } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
10
10
  import "../assets/checkbox-group.css";
11
11
  var n = /* @__PURE__ */ ((a) => (a.HORIZONTAL = "horizontal", a.VERTICAL = "vertical", a))(n || {});
@@ -139,4 +139,4 @@ export {
139
139
  D as B,
140
140
  n as a
141
141
  };
142
- //# sourceMappingURL=checkbox-group.YnXz1Hl2.js.map
142
+ //# sourceMappingURL=checkbox-group.D1zzKsdi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-group.YnXz1Hl2.js","sources":["../../src/components/checkbox/components/checkbox-group/checkbox-group.types.ts","../../src/components/checkbox/components/checkbox-group/checkbox-group.vue"],"sourcesContent":["import { type FormFieldEmits } from '../../../../types/form-field';\nimport type { BentoCheckboxTag } from '../../checkbox.types';\n\n/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoCheckboxGroupVariant {\n HORIZONTAL = 'horizontal',\n VERTICAL = 'vertical',\n}\n\nexport interface BentoCheckboxGroupItem {\n value: string | number;\n label: string;\n description?: string;\n disabled?: boolean;\n hasError?: boolean;\n errorMessage?: string;\n readonly?: boolean;\n tag?: BentoCheckboxTag;\n}\n\nexport type BentoCheckboxGroupItems = Array<BentoCheckboxGroupItem>;\n\nexport type BentoCheckboxGroupEmits = FormFieldEmits<any>;\n","<template>\n <div class=\"b-checkbox-group\">\n <controls-group\n class=\"b-checkbox-group__checkboxes\"\n :aria-describedby=\"shouldShowGroupErrorMessage ? errorId : ''\"\n :aria-required=\"required\"\n component-name=\"bento-checkbox-group\"\n :class=\"conditionalClasses\"\n :description=\"description\"\n :disabled=\"disabled\"\n :form=\"formId\"\n :hide-label=\"hideLabel\"\n :label=\"label\"\n :optional=\"optional\"\n :required=\"required\"\n :tooltip-text=\"tooltipText\"\n >\n <bento-checkbox\n v-for=\"item in items\"\n :key=\"item.value\"\n :model-value=\"inputValue\"\n :value=\"item.value\"\n :disabled=\"disabled || item.disabled\"\n :has-error=\"shouldShowGroupError || item.hasError\"\n :error-message=\"shouldShowGroupError ? null : item.errorMessage\"\n :readonly=\"isReadOnly || item.readonly\"\n :tag=\"item.tag\"\n @update:model-value=\"onModelValueUpdate\"\n >\n <template #default>{{ item.label }}</template>\n <template v-if=\"item.description\" #description>{{ item.description }}</template>\n <template v-if=\"hasContentSlot('content')\" #content>\n <slot name=\"content\" v-bind=\"item\"></slot>\n </template>\n </bento-checkbox>\n </controls-group>\n <error-message\n v-if=\"shouldShowGroupErrorMessage\"\n :id=\"errorId\"\n :error-message=\"errorMessage\"\n class=\"b-checkbox-group__error-message\"\n />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, type PropType, ref, toRef, useSlots, watch } from 'vue';\n import { ControlsGroup } from '@/components/internal/controls-group';\n import { ErrorMessage } from '@/components/internal/error-message';\n import {\n type BentoCheckboxGroupEmits,\n type BentoCheckboxGroupItems,\n BentoCheckboxGroupVariant,\n } from './checkbox-group.types';\n import BentoCheckbox from '@/components/checkbox/checkbox.vue';\n import { generateUid } from '@/core/utils/ts';\n import { deprecate } from '@/utils/ts/deprecate';\n import { useFormLayoutFieldLoading } from '@/composables/use-form-layout-loading/use-form-layout-loading';\n import { useFormFieldEmits } from '@/utils/ts/form-field/form-field';\n\n const props = defineProps({\n /**\n * Descriptive supporting text visbile underneath the label.\n */\n description: { type: String, default: null },\n\n /**\n * If set to true, renders all checkboxes in the group in a disabled state.\n */\n disabled: { type: Boolean, default: false },\n\n /**\n * Renders all checkboxes in an error state with an error message.\n */\n errorMessage: { type: String, default: null },\n\n /**\n * The form id the checkbox group is associated with. Defaults to null, as a checkbox group can also be used standalone.\n */\n formId: { type: String, default: null },\n\n /**\n * If set to true, renders all checkboxes in the group in an error state.\n *\n * @deprecated Since v2.0.0. Use `errorMessage` instead.\n */\n hasError: { type: Boolean, default: false },\n\n /**\n * Shows/hides the group label.\n */\n hideLabel: { type: Boolean, default: null },\n\n /**\n * The checkbox group's items.\n */\n items: { type: Array as PropType<BentoCheckboxGroupItems>, required: true },\n\n /**\n * The name associated with the group. Required for accessibility purposes.\n */\n label: { type: String, required: true },\n\n /**\n * Determines the initially selected value of the group. Corresponds to the BentoCheckboxButtonItem's value.\n * Defaults to no value selected.\n */\n modelValue: { type: Array as PropType<Array<number | string | null>>, default: () => [] },\n\n /**\n * Indicates the field is optional.\n */\n optional: { type: Boolean, default: false },\n\n /**\n * If set to true, renders all checkboxes in the group in a readonly state.\n */\n readonly: { type: Boolean, default: false },\n\n /**\n * Indicates the field is required.\n */\n required: { type: Boolean, default: false },\n\n /**\n * Tooltip message.\n */\n tooltipText: { type: String, default: null },\n\n /**\n * The checkbox group's layout. It can be vertical or horizontal. Defaults to vertical.\n */\n variant: {\n type: String as PropType<BentoCheckboxGroupVariant | `${BentoCheckboxGroupVariant}`>,\n default: BentoCheckboxGroupVariant.VERTICAL,\n validator: (value: BentoCheckboxGroupVariant) => Object.values(BentoCheckboxGroupVariant).includes(value),\n },\n });\n\n const emit = defineEmits([\"update:model-value\", \"input\"]);\n\n const slots = useSlots();\n\n const errorId = generateUid('error');\n const { isReadOnly } = useFormLayoutFieldLoading(toRef(props, 'readonly'));\n const { emitValue } = useFormFieldEmits(emit);\n\n const shouldShowGroupError = computed(\n () => !props.disabled && !isReadOnly.value && (!!props.errorMessage || props.hasError)\n );\n const shouldShowGroupErrorMessage = computed(() => !props.disabled && !isReadOnly.value && !!props.errorMessage);\n\n const conditionalClasses = computed(() => ({\n 'b-checkbox-group__checkboxes--horizontal': props.variant === BentoCheckboxGroupVariant.HORIZONTAL,\n }));\n\n // Slots logic\n // Temporary, use-has-slots composable doesn't currently work for\n // vue3 named scoped slots\n const hasContentSlot = (name: string) => !!slots[name];\n const shouldShowSlotsError = computed(() => hasContentSlot('content') && props.variant !== 'vertical');\n\n watch(\n shouldShowSlotsError,\n newValue => {\n if (newValue) {\n throw new Error('The content slot is only available for the vertical checkbox group layout');\n }\n },\n { immediate: true }\n );\n\n const inputValue = ref(props.modelValue);\n watch(\n () => props.modelValue,\n () => {\n inputValue.value = props.modelValue;\n }\n );\n\n const onModelValueUpdate = (value: any) => {\n inputValue.value = value;\n emitValue(value);\n };\n\n onMounted(() => {\n if (props.hasError) {\n deprecate(\n 'BentoCheckboxGroup \"hasError\" property',\n `Use the BentoCheckboxGroup \"errorMessage\" property instead to indicate that there is a modifier error.\n Having the field as \"undefined\" will hide/remove the error.\n <bento-checkbox-group errorMessage=\"Error message text\" />`,\n '2.0.0'\n );\n }\n });\n</script>\n\n<script lang=\"ts\">\n const COMPONENT_NAME = 'bento-checkbox-group';\n /**\n * A checkbox group component should be used whenever it is necessary to group a set of checkboxes that are related together\n * This component conforms to the official WAI-ARIA guidelines for grouping controls: https://www.w3.org/WAI/tutorials/forms/grouping/\n *\n * import { BentoCheckboxGroup } from '@adyen/bento-vue2/';\n *\n * export default {\n * components: { BentoCheckboxGroup },\n * template: `\n * <bento-checkbox-group\n * label=\"Your group label\"\n * :items=\"[\n * { value: 1, label: 'Your label' },\n * { value: 2, label: 'Another label', description: 'Your sub label' },\n * ]\"\n * />\n * `\n * };\n */\n export default {\n name: COMPONENT_NAME,\n model: { prop: 'modelValue' },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./checkbox-group.scss\" />\n"],"names":["BentoCheckboxGroupVariant","BentoCheckboxGroupVariant2","COMPONENT_NAME","__default__","slots","useSlots","errorId","generateUid","isReadOnly","useFormLayoutFieldLoading","toRef","props","emitValue","useFormFieldEmits","emit","shouldShowGroupError","computed","shouldShowGroupErrorMessage","conditionalClasses","hasContentSlot","name","shouldShowSlotsError","watch","newValue","inputValue","ref","onModelValueUpdate","value","onMounted","deprecate"],"mappings":";;;;;;;;;;AAMO,IAAAA,IAAA,kBAAAC,OACHA,EAAA,aAAA,cACAA,EAAA,WAAA,YAFQA,IAAAD,KAAA,CAAA,CAAA;ACiMR,MAAAE,IAAA,wBAoBAC,IAAA;AAAA,EAAe,MAAAD;AAAA,EACL,OAAA,EAAA,MAAA,aAAA;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAjFAE,IAAAC,EAAA,GAEAC,IAAAC,EAAA,OAAA,GACA,EAAA,YAAAC,EAAA,IAAAC,EAAAC,EAAAC,GAAA,UAAA,CAAA,GACA,EAAA,WAAAC,EAAA,IAAAC,EAAAC,CAAA,GAEAC,IAAAC;AAAA,MAA6B,MAAA,CAAAL,EAAA,YAAA,CAAAH,EAAA,UAAA,CAAA,CAAAG,EAAA,gBAAAA,EAAA;AAAA,IACoD,GAEjFM,IAAAD,EAAA,MAAA,CAAAL,EAAA,YAAA,CAAAH,EAAA,SAAA,CAAA,CAAAG,EAAA,YAAA,GAEAO,IAAAF,EAAA,OAAA;AAAA,MAA2C,4CAAAL,EAAA,YAAAX,EAAA;AAAA,IACiD,EAAA,GAM5FmB,IAAA,CAAAC,MAAA,CAAA,CAAAhB,EAAAgB,CAAA,GACAC,IAAAL,EAAA,MAAAG,EAAA,SAAA,KAAAR,EAAA,YAAA,UAAA;AAEA,IAAAW;AAAA,MAAAD;AAAA,MACI,CAAAE,MAAA;AAEI,YAAAA;AACI,gBAAA,IAAA,MAAA,2EAAA;AAAA,MACJ;AAAA,MACJ,EAAA,WAAA,GAAA;AAAA,IACkB;AAGtB,UAAAC,IAAAC,EAAAd,EAAA,UAAA;AACA,IAAAW;AAAA,MAAA,MAAAX,EAAA;AAAA,MACgB,MAAA;AAER,QAAAa,EAAA,QAAAb,EAAA;AAAA,MAAyB;AAAA,IAC7B;AAGJ,UAAAe,IAAA,CAAAC,MAAA;AACI,MAAAH,EAAA,QAAAG,GACAf,EAAAe,CAAA;AAAA,IAAe;AAGnB,WAAAC,EAAA,MAAA;AACI,MAAAjB,EAAA,YACIkB;AAAA,QAAA;AAAA,QACI;AAAA;AAAA;AAAA,QACA;AAAA,MAGA;AAAA,IAER,CAAA;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"checkbox-group.D1zzKsdi.js","sources":["../../src/components/checkbox/components/checkbox-group/checkbox-group.types.ts","../../src/components/checkbox/components/checkbox-group/checkbox-group.vue"],"sourcesContent":["import { type FormFieldEmits } from '../../../../types/form-field';\nimport type { BentoCheckboxTag } from '../../checkbox.types';\n\n/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoCheckboxGroupVariant {\n HORIZONTAL = 'horizontal',\n VERTICAL = 'vertical',\n}\n\nexport interface BentoCheckboxGroupItem {\n value: string | number;\n label: string;\n description?: string;\n disabled?: boolean;\n hasError?: boolean;\n errorMessage?: string;\n readonly?: boolean;\n tag?: BentoCheckboxTag;\n}\n\nexport type BentoCheckboxGroupItems = Array<BentoCheckboxGroupItem>;\n\nexport type BentoCheckboxGroupEmits = FormFieldEmits<any>;\n","<template>\n <div class=\"b-checkbox-group\">\n <controls-group\n class=\"b-checkbox-group__checkboxes\"\n :aria-describedby=\"shouldShowGroupErrorMessage ? errorId : ''\"\n :aria-required=\"required\"\n component-name=\"bento-checkbox-group\"\n :class=\"conditionalClasses\"\n :description=\"description\"\n :disabled=\"disabled\"\n :form=\"formId\"\n :hide-label=\"hideLabel\"\n :label=\"label\"\n :optional=\"optional\"\n :required=\"required\"\n :tooltip-text=\"tooltipText\"\n >\n <bento-checkbox\n v-for=\"item in items\"\n :key=\"item.value\"\n :model-value=\"inputValue\"\n :value=\"item.value\"\n :disabled=\"disabled || item.disabled\"\n :has-error=\"shouldShowGroupError || item.hasError\"\n :error-message=\"shouldShowGroupError ? null : item.errorMessage\"\n :readonly=\"isReadOnly || item.readonly\"\n :tag=\"item.tag\"\n @update:model-value=\"onModelValueUpdate\"\n >\n <template #default>{{ item.label }}</template>\n <template v-if=\"item.description\" #description>{{ item.description }}</template>\n <template v-if=\"hasContentSlot('content')\" #content>\n <slot name=\"content\" v-bind=\"item\"></slot>\n </template>\n </bento-checkbox>\n </controls-group>\n <error-message\n v-if=\"shouldShowGroupErrorMessage\"\n :id=\"errorId\"\n :error-message=\"errorMessage\"\n class=\"b-checkbox-group__error-message\"\n />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, type PropType, ref, toRef, useSlots, watch } from 'vue';\n import { ControlsGroup } from '@/components/internal/controls-group';\n import { ErrorMessage } from '@/components/internal/error-message';\n import {\n type BentoCheckboxGroupEmits,\n type BentoCheckboxGroupItems,\n BentoCheckboxGroupVariant,\n } from './checkbox-group.types';\n import BentoCheckbox from '@/components/checkbox/checkbox.vue';\n import { generateUid } from '@/core/utils/ts';\n import { deprecate } from '@/utils/ts/deprecate';\n import { useFormLayoutFieldLoading } from '@/composables/use-form-layout-loading/use-form-layout-loading';\n import { useFormFieldEmits } from '@/utils/ts/form-field/form-field';\n\n const props = defineProps({\n /**\n * Descriptive supporting text visbile underneath the label.\n */\n description: { type: String, default: null },\n\n /**\n * If set to true, renders all checkboxes in the group in a disabled state.\n */\n disabled: { type: Boolean, default: false },\n\n /**\n * Renders all checkboxes in an error state with an error message.\n */\n errorMessage: { type: String, default: null },\n\n /**\n * The form id the checkbox group is associated with. Defaults to null, as a checkbox group can also be used standalone.\n */\n formId: { type: String, default: null },\n\n /**\n * If set to true, renders all checkboxes in the group in an error state.\n *\n * @deprecated Since v2.0.0. Use `errorMessage` instead.\n */\n hasError: { type: Boolean, default: false },\n\n /**\n * Shows/hides the group label.\n */\n hideLabel: { type: Boolean, default: null },\n\n /**\n * The checkbox group's items.\n */\n items: { type: Array as PropType<BentoCheckboxGroupItems>, required: true },\n\n /**\n * The name associated with the group. Required for accessibility purposes.\n */\n label: { type: String, required: true },\n\n /**\n * Determines the initially selected value of the group. Corresponds to the BentoCheckboxButtonItem's value.\n * Defaults to no value selected.\n */\n modelValue: { type: Array as PropType<Array<number | string | null>>, default: () => [] },\n\n /**\n * Indicates the field is optional.\n */\n optional: { type: Boolean, default: false },\n\n /**\n * If set to true, renders all checkboxes in the group in a readonly state.\n */\n readonly: { type: Boolean, default: false },\n\n /**\n * Indicates the field is required.\n */\n required: { type: Boolean, default: false },\n\n /**\n * Tooltip message.\n */\n tooltipText: { type: String, default: null },\n\n /**\n * The checkbox group's layout. It can be vertical or horizontal. Defaults to vertical.\n */\n variant: {\n type: String as PropType<BentoCheckboxGroupVariant | `${BentoCheckboxGroupVariant}`>,\n default: BentoCheckboxGroupVariant.VERTICAL,\n validator: (value: BentoCheckboxGroupVariant) => Object.values(BentoCheckboxGroupVariant).includes(value),\n },\n });\n\n const emit = defineEmits([\"update:model-value\", \"input\"]);\n\n const slots = useSlots();\n\n const errorId = generateUid('error');\n const { isReadOnly } = useFormLayoutFieldLoading(toRef(props, 'readonly'));\n const { emitValue } = useFormFieldEmits(emit);\n\n const shouldShowGroupError = computed(\n () => !props.disabled && !isReadOnly.value && (!!props.errorMessage || props.hasError)\n );\n const shouldShowGroupErrorMessage = computed(() => !props.disabled && !isReadOnly.value && !!props.errorMessage);\n\n const conditionalClasses = computed(() => ({\n 'b-checkbox-group__checkboxes--horizontal': props.variant === BentoCheckboxGroupVariant.HORIZONTAL,\n }));\n\n // Slots logic\n // Temporary, use-has-slots composable doesn't currently work for\n // vue3 named scoped slots\n const hasContentSlot = (name: string) => !!slots[name];\n const shouldShowSlotsError = computed(() => hasContentSlot('content') && props.variant !== 'vertical');\n\n watch(\n shouldShowSlotsError,\n newValue => {\n if (newValue) {\n throw new Error('The content slot is only available for the vertical checkbox group layout');\n }\n },\n { immediate: true }\n );\n\n const inputValue = ref(props.modelValue);\n watch(\n () => props.modelValue,\n () => {\n inputValue.value = props.modelValue;\n }\n );\n\n const onModelValueUpdate = (value: any) => {\n inputValue.value = value;\n emitValue(value);\n };\n\n onMounted(() => {\n if (props.hasError) {\n deprecate(\n 'BentoCheckboxGroup \"hasError\" property',\n `Use the BentoCheckboxGroup \"errorMessage\" property instead to indicate that there is a modifier error.\n Having the field as \"undefined\" will hide/remove the error.\n <bento-checkbox-group errorMessage=\"Error message text\" />`,\n '2.0.0'\n );\n }\n });\n</script>\n\n<script lang=\"ts\">\n const COMPONENT_NAME = 'bento-checkbox-group';\n /**\n * A checkbox group component should be used whenever it is necessary to group a set of checkboxes that are related together\n * This component conforms to the official WAI-ARIA guidelines for grouping controls: https://www.w3.org/WAI/tutorials/forms/grouping/\n *\n * import { BentoCheckboxGroup } from '@adyen/bento-vue2/';\n *\n * export default {\n * components: { BentoCheckboxGroup },\n * template: `\n * <bento-checkbox-group\n * label=\"Your group label\"\n * :items=\"[\n * { value: 1, label: 'Your label' },\n * { value: 2, label: 'Another label', description: 'Your sub label' },\n * ]\"\n * />\n * `\n * };\n */\n export default {\n name: COMPONENT_NAME,\n model: { prop: 'modelValue' },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./checkbox-group.scss\" />\n"],"names":["BentoCheckboxGroupVariant","BentoCheckboxGroupVariant2","COMPONENT_NAME","__default__","slots","useSlots","errorId","generateUid","isReadOnly","useFormLayoutFieldLoading","toRef","props","emitValue","useFormFieldEmits","emit","shouldShowGroupError","computed","shouldShowGroupErrorMessage","conditionalClasses","hasContentSlot","name","shouldShowSlotsError","watch","newValue","inputValue","ref","onModelValueUpdate","value","onMounted","deprecate"],"mappings":";;;;;;;;;;AAMO,IAAAA,IAAA,kBAAAC,OACHA,EAAA,aAAA,cACAA,EAAA,WAAA,YAFQA,IAAAD,KAAA,CAAA,CAAA;ACiMR,MAAAE,IAAA,wBAoBAC,IAAA;AAAA,EAAe,MAAAD;AAAA,EACL,OAAA,EAAA,MAAA,aAAA;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAjFAE,IAAAC,EAAA,GAEAC,IAAAC,EAAA,OAAA,GACA,EAAA,YAAAC,EAAA,IAAAC,EAAAC,EAAAC,GAAA,UAAA,CAAA,GACA,EAAA,WAAAC,EAAA,IAAAC,EAAAC,CAAA,GAEAC,IAAAC;AAAA,MAA6B,MAAA,CAAAL,EAAA,YAAA,CAAAH,EAAA,UAAA,CAAA,CAAAG,EAAA,gBAAAA,EAAA;AAAA,IACoD,GAEjFM,IAAAD,EAAA,MAAA,CAAAL,EAAA,YAAA,CAAAH,EAAA,SAAA,CAAA,CAAAG,EAAA,YAAA,GAEAO,IAAAF,EAAA,OAAA;AAAA,MAA2C,4CAAAL,EAAA,YAAAX,EAAA;AAAA,IACiD,EAAA,GAM5FmB,IAAA,CAAAC,MAAA,CAAA,CAAAhB,EAAAgB,CAAA,GACAC,IAAAL,EAAA,MAAAG,EAAA,SAAA,KAAAR,EAAA,YAAA,UAAA;AAEA,IAAAW;AAAA,MAAAD;AAAA,MACI,CAAAE,MAAA;AAEI,YAAAA;AACI,gBAAA,IAAA,MAAA,2EAAA;AAAA,MACJ;AAAA,MACJ,EAAA,WAAA,GAAA;AAAA,IACkB;AAGtB,UAAAC,IAAAC,EAAAd,EAAA,UAAA;AACA,IAAAW;AAAA,MAAA,MAAAX,EAAA;AAAA,MACgB,MAAA;AAER,QAAAa,EAAA,QAAAb,EAAA;AAAA,MAAyB;AAAA,IAC7B;AAGJ,UAAAe,IAAA,CAAAC,MAAA;AACI,MAAAH,EAAA,QAAAG,GACAf,EAAAe,CAAA;AAAA,IAAe;AAGnB,WAAAC,EAAA,MAAA;AACI,MAAAjB,EAAA,YACIkB;AAAA,QAAA;AAAA,QACI;AAAA;AAAA;AAAA,QACA;AAAA,MAGA;AAAA,IAER,CAAA;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
- import { defineComponent as A, useAttrs as D, ref as g, computed as o, toRefs as I } from "vue";
2
- import { C as c, N as R, a as _ } from "./minus-small.DJacLGTw.js";
1
+ import { defineComponent as A, useAttrs as D, ref as g, computed as l, toRefs as I } from "vue";
2
+ import { C as s, N as R, a as m } from "./minus-small.DJacLGTw.js";
3
3
  import { C as S } from "./checkmark-small.DVDtD4HQ.js";
4
4
  import "./index.Cl4_42j5.js";
5
5
  import { n as B } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
@@ -61,51 +61,48 @@ const L = {
61
61
  value: { type: [String, Number], default: null }
62
62
  },
63
63
  emits: ["update:model-value"],
64
- setup(k, { emit: a }) {
65
- const t = k, e = D(), n = g(null), i = o(() => e), { disabled: h, indeterminate: C, modelValue: s, readonly: m, value: u } = I(t), y = o(() => {
66
- var d;
67
- const l = (d = e.class) == null ? void 0 : d.split(" ").reduce((r, p) => (r[p] = !0, r), {});
64
+ setup(f, { emit: a }) {
65
+ const t = f, e = D(), n = g(null), _ = l(() => e), { disabled: b, indeterminate: C, modelValue: o, readonly: k, value: c } = I(t), y = l(() => {
66
+ const i = e.class?.split(" ").reduce((u, r) => (u[r] = !0, u), {});
68
67
  return {
69
- [`b-checkbox-input--${c.DISABLED}`]: t.disabled,
70
- [`b-checkbox-input--${c.READONLY}`]: t.readonly,
71
- ...l
68
+ [`b-checkbox-input--${s.DISABLED}`]: t.disabled,
69
+ [`b-checkbox-input--${s.READONLY}`]: t.readonly,
70
+ ...i
72
71
  };
73
- }), v = o(() => ({
74
- [`b-checkbox-input__outline--${c.UNCHECKED}`]: !b.value && !t.indeterminate,
75
- [`b-checkbox-input__outline--${c.ERROR}`]: t.hasError,
76
- [`b-checkbox-input__outline--${c.READONLY}`]: t.readonly
77
- })), f = o(() => Array.isArray(s.value)), b = o(() => f.value ? s.value.some((l) => l === u.value) : s.value), x = o(
78
- () => t.indeterminate ? "mixed" : `${!!b.value}`
79
- ), E = o(
72
+ }), v = l(() => ({
73
+ [`b-checkbox-input__outline--${s.UNCHECKED}`]: !p.value && !t.indeterminate,
74
+ [`b-checkbox-input__outline--${s.ERROR}`]: t.hasError,
75
+ [`b-checkbox-input__outline--${s.READONLY}`]: t.readonly
76
+ })), d = l(() => Array.isArray(o.value)), p = l(() => d.value ? o.value.some((i) => i === c.value) : o.value), x = l(
77
+ () => t.indeterminate ? "mixed" : `${!!p.value}`
78
+ ), E = l(
80
79
  () => t.hasError && !t.disabled && !t.readonly
81
80
  );
82
- return { __sfc: !0, attrs: e, props: t, emit: a, inputRef: n, computedAttrs: i, disabled: h, indeterminate: C, modelValue: s, readonly: m, value: u, conditionalClasses: y, outlineConditionalClasses: v, isCheckboxGroup: f, isChecked: b, ariaChecked: x, ariaInvalid: E, onClick: (l) => {
83
- if (m.value) {
84
- l.preventDefault();
81
+ return { __sfc: !0, attrs: e, props: t, emit: a, inputRef: n, computedAttrs: _, disabled: b, indeterminate: C, modelValue: o, readonly: k, value: c, conditionalClasses: y, outlineConditionalClasses: v, isCheckboxGroup: d, isChecked: p, ariaChecked: x, ariaInvalid: E, onClick: (i) => {
82
+ if (k.value) {
83
+ i.preventDefault();
85
84
  return;
86
85
  }
87
- }, onChange: (l) => {
88
- if (h.value)
86
+ }, onChange: (i) => {
87
+ if (b.value)
89
88
  return;
90
- const d = l.target.checked;
91
- if (f.value) {
92
- const r = [...s.value], p = r.indexOf(u.value);
93
- p === -1 ? r.push(u.value) : r.splice(p, 1), a(_.UPDATE, r);
89
+ const u = i.target.checked;
90
+ if (d.value) {
91
+ const r = [...o.value], h = r.indexOf(c.value);
92
+ h === -1 ? r.push(c.value) : r.splice(h, 1), a(m.UPDATE, r);
94
93
  } else
95
- a(_.UPDATE, d);
94
+ a(m.UPDATE, u);
96
95
  }, CheckmarkSmallIcon: S, MinusSmallIcon: R };
97
96
  }
98
97
  });
99
98
  var O = function() {
100
99
  var a = this, t = a._self._c, e = a._self._setupProxy;
101
100
  return t("div", { staticClass: "b-checkbox-input", class: e.conditionalClasses }, [e.indeterminate ? t(e.MinusSmallIcon, { staticClass: "b-checkbox-input__icon", attrs: { "svg-title": "", "aria-hidden": "true" } }) : e.isChecked ? t(e.CheckmarkSmallIcon, { staticClass: "b-checkbox-input__icon", attrs: { "svg-title": "", "aria-hidden": "true" } }) : a._e(), t("input", a._b({ ref: "inputRef", staticClass: "b-checkbox-input__outline", class: e.outlineConditionalClasses, attrs: { id: a.id, type: "checkbox", "aria-label": a.ariaLabel, "aria-checked": e.ariaChecked, "aria-describedby": a.ariaDescribedby, "aria-invalid": e.ariaInvalid, disabled: e.disabled, "aria-readonly": e.readonly }, domProps: { checked: e.isChecked, indeterminate: e.indeterminate, value: e.value }, on: { click: e.onClick, change: e.onChange, keydown: [function(n) {
102
- var i;
103
101
  if (!n.type.indexOf("key") && a._k(n.keyCode, "space", 32, n.key, [" ", "Spacebar"])) return null;
104
- n.preventDefault(), (i = e.inputRef) == null || i.click();
102
+ n.preventDefault(), e.inputRef?.click();
105
103
  }, function(n) {
106
- var i;
107
104
  if (!n.type.indexOf("key") && a._k(n.keyCode, "enter", 13, n.key, "Enter")) return null;
108
- n.preventDefault(), (i = e.inputRef) == null || i.click();
105
+ n.preventDefault(), e.inputRef?.click();
109
106
  }] } }, "input", e.computedAttrs, !1))], 1);
110
107
  }, P = [], V = /* @__PURE__ */ B(
111
108
  N,
@@ -119,4 +116,4 @@ const G = V.exports;
119
116
  export {
120
117
  G as C
121
118
  };
122
- //# sourceMappingURL=checkbox-input.08E9BNeF.js.map
119
+ //# sourceMappingURL=checkbox-input.kfxcyjfd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-input.08E9BNeF.js","sources":["../../src/components/internal/checkbox-input/checkbox-input.vue"],"sourcesContent":["<template>\n <div class=\"b-checkbox-input\" :class=\"conditionalClasses\">\n <!-- Don't change order because it matters for CSS. Icons first -->\n <minus-small-icon v-if=\"indeterminate\" class=\"b-checkbox-input__icon\" svg-title=\"\" aria-hidden=\"true\" />\n <checkmark-small-icon v-else-if=\"isChecked\" class=\"b-checkbox-input__icon\" svg-title=\"\" aria-hidden=\"true\" />\n <input\n :id=\"id\"\n ref=\"inputRef\"\n v-bind=\"computedAttrs\"\n type=\"checkbox\"\n class=\"b-checkbox-input__outline\"\n :class=\"outlineConditionalClasses\"\n :aria-label=\"ariaLabel\"\n :aria-checked=\"ariaChecked\"\n :aria-describedby=\"ariaDescribedby\"\n :aria-invalid=\"ariaInvalid\"\n :checked=\"isChecked\"\n :disabled=\"disabled\"\n :indeterminate.prop=\"indeterminate\"\n :value=\"value\"\n :aria-readonly=\"readonly\"\n @click=\"onClick\"\n @change=\"onChange\"\n @keydown.space.prevent=\"inputRef?.click()\"\n @keydown.enter.prevent=\"inputRef?.click()\"\n />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, type HTMLAttributes, type PropType, ref, toRefs, useAttrs } from 'vue';\n import {\n CheckboxInputEvent,\n type CheckboxInputGroupItems,\n CheckboxInputState,\n type CheckboxInputType,\n type MultiCheckboxInputType,\n } from '@/internal/checkbox-input/checkbox-input.types';\n import CheckmarkSmallIcon from '@adyen/ui-assets-icons-16/vue/checkmark-small';\n import MinusSmallIcon from '@adyen/ui-assets-icons-16/vue/minus-small';\n import { isVue3 } from 'vue-demi';\n\n const attrs = useAttrs();\n const props = defineProps({\n /**\n * The aria label associated to the input checkbox.\n */\n ariaLabel: { type: String, default: '' },\n\n /**\n * An additional string that serves as description for the input checkbox (useful if the component shows a description).\n */\n ariaDescribedby: { type: String, default: '' },\n\n /**\n * Setting this property to true will disable the checkbox in your form.\n */\n disabled: { type: Boolean, default: false },\n\n /**\n * Setting this property to true will show the checkbox in error state.\n */\n hasError: { type: Boolean, default: false },\n\n /**\n * Sets the id of the checkbox. Required for accessibility purposes\n */\n id: { type: String, default: null },\n\n /**\n * The :indeterminate CSS pseudo-class represents any form element\n * whose state is indeterminate, such as checkboxes which have their HTML indeterminate attribute\n * set to true, radio buttons which are members of a group in which all radio buttons are unchecked,\n * and indeterminate <progress> elements. https://developer.mozilla.org/en-US/docs/Web/CSS/:indeterminate\n * This property lets you control the input.indeterminate native property.\n */\n indeterminate: { type: Boolean, default: false },\n\n /**\n * When handling a single checkbox with a singular state, use a boolean.\n *\n * When handling multiple checkboxes, use an array of keys.\n * These keys exist as a set \"value\" prop for each checkbox.\n */\n modelValue: {\n type: [Boolean, Array] as PropType<CheckboxInputType | CheckboxInputGroupItems>,\n default: false,\n },\n\n /**\n * Setting this property to true will set the checkbox to read only state.\n */\n readonly: { type: Boolean, default: false },\n\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n *\n * In the case of multiple checkboxes this value is used as a unique key.\n */\n value: { type: [String, Number], default: null },\n });\n\n const emit = defineEmits([\"update:model-value\"]);\n\n const inputRef = ref<HTMLInputElement | null>(null);\n\n // filter out style classes because in vue3 they are also part of attrs\n const computedAttrs = computed(() => {\n if (isVue3) {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n } else {\n return attrs;\n }\n });\n\n const { disabled, indeterminate, modelValue, readonly, value } = toRefs(props);\n\n const conditionalClasses = computed(() => {\n // Append classes set from parent to first element\n const inheritClasses = (attrs.class as string)?.split(' ').reduce((acc, className) => {\n acc[className] = true;\n return acc;\n }, {});\n\n return {\n [`b-checkbox-input--${CheckboxInputState.DISABLED}`]: props.disabled,\n [`b-checkbox-input--${CheckboxInputState.READONLY}`]: props.readonly,\n ...inheritClasses,\n };\n });\n\n const outlineConditionalClasses = computed(() => ({\n [`b-checkbox-input__outline--${CheckboxInputState.UNCHECKED}`]: !isChecked.value && !props.indeterminate,\n [`b-checkbox-input__outline--${CheckboxInputState.ERROR}`]: props.hasError,\n [`b-checkbox-input__outline--${CheckboxInputState.READONLY}`]: props.readonly,\n }));\n\n const isCheckboxGroup = computed(() => Array.isArray(modelValue.value));\n\n const isChecked = computed(() => {\n if (!isCheckboxGroup.value) {\n return modelValue.value as boolean;\n }\n\n return (modelValue.value as MultiCheckboxInputType).some(item => item === value.value);\n });\n\n // ARIA fields\n const ariaChecked = computed<HTMLAttributes['aria-checked']>(() =>\n props.indeterminate ? 'mixed' : `${!!isChecked.value}`\n );\n const ariaInvalid = computed<HTMLAttributes['aria-invalid']>(\n () => props.hasError && !props.disabled && !props.readonly\n );\n\n // readonly attr doesn't work with checkbox, so we need to manually ignore the click instead\n const onClick = (event: Event) => {\n if (readonly.value) {\n event.preventDefault();\n return;\n }\n };\n const onChange = (event: Event) => {\n if (disabled.value) {\n return;\n }\n\n const newValue: boolean = (event.target as HTMLInputElement).checked;\n\n if (isCheckboxGroup.value) {\n const newCheckedList = [...(modelValue.value as MultiCheckboxInputType)];\n const index = newCheckedList.indexOf(value.value);\n\n if (index === -1) {\n newCheckedList.push(value.value);\n } else {\n newCheckedList.splice(index, 1);\n }\n emit(CheckboxInputEvent.UPDATE, newCheckedList);\n } else {\n emit(CheckboxInputEvent.UPDATE, newValue);\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * Internal component that renders a checkbox input (without label)\n *\n * @example\n * import { BentoCheckboxInput } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoCheckboxInput },\n * template: `\n * <label for=\"checkbox-id\">Your label</label>\n * <span id=\"description-id\">Description</span>\n * <bento-checkbox-input id=\"checkbox-id\" aria=label=\"Your label\" aria-describedby=\"description-id\" />\n * `\n * }\n */\n export default {\n name: 'checkbox-input',\n inheritAttrs: false,\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./checkbox-input.scss\" />\n"],"names":["__default__","attrs","useAttrs","inputRef","ref","computedAttrs","computed","disabled","indeterminate","modelValue","readonly","value","toRefs","props","conditionalClasses","inheritClasses","_a","acc","className","CheckboxInputState","outlineConditionalClasses","isChecked","isCheckboxGroup","item","ariaChecked","ariaInvalid","event","newValue","newCheckedList","index","emit","CheckboxInputEvent"],"mappings":";;;;;;AA2MI,MAAAA,IAAA;AAAA,EAAe,MAAA;AAAA,EACL,cAAA;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBApKAC,IAAAC,EAAA,GA+DAC,IAAAC,EAAA,IAAA,GAGAC,IAAAC,EAAA,MAKQL,CACJ,GAGJ,EAAA,UAAAM,GAAA,eAAAC,GAAA,YAAAC,GAAA,UAAAC,GAAA,OAAAC,EAAA,IAAAC,EAAAC,CAAA,GAEAC,IAAAR,EAAA,MAAA;;AAEI,YAAAS,KAAAC,IAAAf,EAAA,UAAA,gBAAAe,EAAA,MAAA,KAAA,OAAA,CAAAC,GAAAC,OACID,EAAAC,CAAA,IAAA,IACAD,IAAO,CAAA;AAGX,aAAA;AAAA,QAAO,CAAA,qBAAAE,EAAA,QAAA,EAAA,GAAAN,EAAA;AAAA,QACyD,CAAA,qBAAAM,EAAA,QAAA,EAAA,GAAAN,EAAA;AAAA,QACA,GAAAE;AAAA,MACzD;AAAA,IACP,CAAA,GAGJK,IAAAd,EAAA,OAAA;AAAA,MAAkD,CAAA,8BAAAa,EAAA,SAAA,EAAA,GAAA,CAAAE,EAAA,SAAA,CAAAR,EAAA;AAAA,MAC6C,CAAA,8BAAAM,EAAA,KAAA,EAAA,GAAAN,EAAA;AAAA,MACzB,CAAA,8BAAAM,EAAA,QAAA,EAAA,GAAAN,EAAA;AAAA,IACG,EAAA,GAGzES,IAAAhB,EAAA,MAAA,MAAA,QAAAG,EAAA,KAAA,CAAA,GAEAY,IAAAf,EAAA,MACIgB,EAAA,QAIAb,EAAA,MAAA,KAAA,CAAAc,MAAAA,MAAAZ,EAAA,KAAA,IAHIF,EAAA,KAGiF,GAIzFe,IAAAlB;AAAA,MAAoB,MAAAO,EAAA,gBAAA,UAAA,GAAA,CAAA,CAAAQ,EAAA,KAAA;AAAA,IACoC,GAExDI,IAAAnB;AAAA,MAAoB,MAAAO,EAAA,YAAA,CAAAA,EAAA,YAAA,CAAAA,EAAA;AAAA,IACkC;yRAItD,CAAAa,MAAA;AACI,UAAAhB,EAAA,OAAA;AACI,QAAAgB,EAAA,eAAA;AACA;AAAA,MAAA;AAAA,IACJ,aAEJ,CAAAA,MAAA;AACI,UAAAnB,EAAA;AACI;AAGJ,YAAAoB,IAAAD,EAAA,OAAA;AAEA,UAAAJ,EAAA,OAAA;AACI,cAAAM,IAAA,CAAA,GAAAnB,EAAA,KAAA,GACAoB,IAAAD,EAAA,QAAAjB,EAAA,KAAA;AAEA,QAAAkB,MAAA,KACID,EAAA,KAAAjB,EAAA,KAAA,IAEAiB,EAAA,OAAAC,GAAA,CAAA,GAEJC,EAAAC,EAAA,QAAAH,CAAA;AAAA,MAA8C;AAE9C,QAAAE,EAAAC,EAAA,QAAAJ,CAAA;AAAA,IACJ;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"checkbox-input.kfxcyjfd.js","sources":["../../src/components/internal/checkbox-input/checkbox-input.vue"],"sourcesContent":["<template>\n <div class=\"b-checkbox-input\" :class=\"conditionalClasses\">\n <!-- Don't change order because it matters for CSS. Icons first -->\n <minus-small-icon v-if=\"indeterminate\" class=\"b-checkbox-input__icon\" svg-title=\"\" aria-hidden=\"true\" />\n <checkmark-small-icon v-else-if=\"isChecked\" class=\"b-checkbox-input__icon\" svg-title=\"\" aria-hidden=\"true\" />\n <input\n :id=\"id\"\n ref=\"inputRef\"\n v-bind=\"computedAttrs\"\n type=\"checkbox\"\n class=\"b-checkbox-input__outline\"\n :class=\"outlineConditionalClasses\"\n :aria-label=\"ariaLabel\"\n :aria-checked=\"ariaChecked\"\n :aria-describedby=\"ariaDescribedby\"\n :aria-invalid=\"ariaInvalid\"\n :checked=\"isChecked\"\n :disabled=\"disabled\"\n :indeterminate.prop=\"indeterminate\"\n :value=\"value\"\n :aria-readonly=\"readonly\"\n @click=\"onClick\"\n @change=\"onChange\"\n @keydown.space.prevent=\"inputRef?.click()\"\n @keydown.enter.prevent=\"inputRef?.click()\"\n />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, type HTMLAttributes, type PropType, ref, toRefs, useAttrs } from 'vue';\n import {\n CheckboxInputEvent,\n type CheckboxInputGroupItems,\n CheckboxInputState,\n type CheckboxInputType,\n type MultiCheckboxInputType,\n } from '@/internal/checkbox-input/checkbox-input.types';\n import CheckmarkSmallIcon from '@adyen/ui-assets-icons-16/vue/checkmark-small';\n import MinusSmallIcon from '@adyen/ui-assets-icons-16/vue/minus-small';\n import { isVue3 } from 'vue-demi';\n\n const attrs = useAttrs();\n const props = defineProps({\n /**\n * The aria label associated to the input checkbox.\n */\n ariaLabel: { type: String, default: '' },\n\n /**\n * An additional string that serves as description for the input checkbox (useful if the component shows a description).\n */\n ariaDescribedby: { type: String, default: '' },\n\n /**\n * Setting this property to true will disable the checkbox in your form.\n */\n disabled: { type: Boolean, default: false },\n\n /**\n * Setting this property to true will show the checkbox in error state.\n */\n hasError: { type: Boolean, default: false },\n\n /**\n * Sets the id of the checkbox. Required for accessibility purposes\n */\n id: { type: String, default: null },\n\n /**\n * The :indeterminate CSS pseudo-class represents any form element\n * whose state is indeterminate, such as checkboxes which have their HTML indeterminate attribute\n * set to true, radio buttons which are members of a group in which all radio buttons are unchecked,\n * and indeterminate <progress> elements. https://developer.mozilla.org/en-US/docs/Web/CSS/:indeterminate\n * This property lets you control the input.indeterminate native property.\n */\n indeterminate: { type: Boolean, default: false },\n\n /**\n * When handling a single checkbox with a singular state, use a boolean.\n *\n * When handling multiple checkboxes, use an array of keys.\n * These keys exist as a set \"value\" prop for each checkbox.\n */\n modelValue: {\n type: [Boolean, Array] as PropType<CheckboxInputType | CheckboxInputGroupItems>,\n default: false,\n },\n\n /**\n * Setting this property to true will set the checkbox to read only state.\n */\n readonly: { type: Boolean, default: false },\n\n /**\n * The value of the component. The DOM API casts this to a string.\n * The browser uses \"on\" as the default value.\n *\n * In the case of multiple checkboxes this value is used as a unique key.\n */\n value: { type: [String, Number], default: null },\n });\n\n const emit = defineEmits([\"update:model-value\"]);\n\n const inputRef = ref<HTMLInputElement | null>(null);\n\n // filter out style classes because in vue3 they are also part of attrs\n const computedAttrs = computed(() => {\n if (isVue3) {\n const { class: _class, style: _style, ...rest } = attrs;\n return rest;\n } else {\n return attrs;\n }\n });\n\n const { disabled, indeterminate, modelValue, readonly, value } = toRefs(props);\n\n const conditionalClasses = computed(() => {\n // Append classes set from parent to first element\n const inheritClasses = (attrs.class as string)?.split(' ').reduce((acc, className) => {\n acc[className] = true;\n return acc;\n }, {});\n\n return {\n [`b-checkbox-input--${CheckboxInputState.DISABLED}`]: props.disabled,\n [`b-checkbox-input--${CheckboxInputState.READONLY}`]: props.readonly,\n ...inheritClasses,\n };\n });\n\n const outlineConditionalClasses = computed(() => ({\n [`b-checkbox-input__outline--${CheckboxInputState.UNCHECKED}`]: !isChecked.value && !props.indeterminate,\n [`b-checkbox-input__outline--${CheckboxInputState.ERROR}`]: props.hasError,\n [`b-checkbox-input__outline--${CheckboxInputState.READONLY}`]: props.readonly,\n }));\n\n const isCheckboxGroup = computed(() => Array.isArray(modelValue.value));\n\n const isChecked = computed(() => {\n if (!isCheckboxGroup.value) {\n return modelValue.value as boolean;\n }\n\n return (modelValue.value as MultiCheckboxInputType).some(item => item === value.value);\n });\n\n // ARIA fields\n const ariaChecked = computed<HTMLAttributes['aria-checked']>(() =>\n props.indeterminate ? 'mixed' : `${!!isChecked.value}`\n );\n const ariaInvalid = computed<HTMLAttributes['aria-invalid']>(\n () => props.hasError && !props.disabled && !props.readonly\n );\n\n // readonly attr doesn't work with checkbox, so we need to manually ignore the click instead\n const onClick = (event: Event) => {\n if (readonly.value) {\n event.preventDefault();\n return;\n }\n };\n const onChange = (event: Event) => {\n if (disabled.value) {\n return;\n }\n\n const newValue: boolean = (event.target as HTMLInputElement).checked;\n\n if (isCheckboxGroup.value) {\n const newCheckedList = [...(modelValue.value as MultiCheckboxInputType)];\n const index = newCheckedList.indexOf(value.value);\n\n if (index === -1) {\n newCheckedList.push(value.value);\n } else {\n newCheckedList.splice(index, 1);\n }\n emit(CheckboxInputEvent.UPDATE, newCheckedList);\n } else {\n emit(CheckboxInputEvent.UPDATE, newValue);\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * Internal component that renders a checkbox input (without label)\n *\n * @example\n * import { BentoCheckboxInput } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoCheckboxInput },\n * template: `\n * <label for=\"checkbox-id\">Your label</label>\n * <span id=\"description-id\">Description</span>\n * <bento-checkbox-input id=\"checkbox-id\" aria=label=\"Your label\" aria-describedby=\"description-id\" />\n * `\n * }\n */\n export default {\n name: 'checkbox-input',\n inheritAttrs: false,\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./checkbox-input.scss\" />\n"],"names":["__default__","attrs","useAttrs","inputRef","ref","computedAttrs","computed","disabled","indeterminate","modelValue","readonly","value","toRefs","props","conditionalClasses","inheritClasses","acc","className","CheckboxInputState","outlineConditionalClasses","isChecked","isCheckboxGroup","item","ariaChecked","ariaInvalid","event","newValue","newCheckedList","index","emit","CheckboxInputEvent"],"mappings":";;;;;;AA2MI,MAAAA,IAAA;AAAA,EAAe,MAAA;AAAA,EACL,cAAA;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBApKAC,IAAAC,EAAA,GA+DAC,IAAAC,EAAA,IAAA,GAGAC,IAAAC,EAAA,MAKQL,CACJ,GAGJ,EAAA,UAAAM,GAAA,eAAAC,GAAA,YAAAC,GAAA,UAAAC,GAAA,OAAAC,EAAA,IAAAC,EAAAC,CAAA,GAEAC,IAAAR,EAAA,MAAA;AAEI,YAAAS,IAAAd,EAAA,OAAA,MAAA,GAAA,EAAA,OAAA,CAAAe,GAAAC,OACID,EAAAC,CAAA,IAAA,IACAD,IAAO,CAAA,CAAA;AAGX,aAAA;AAAA,QAAO,CAAA,qBAAAE,EAAA,QAAA,EAAA,GAAAL,EAAA;AAAA,QACyD,CAAA,qBAAAK,EAAA,QAAA,EAAA,GAAAL,EAAA;AAAA,QACA,GAAAE;AAAA,MACzD;AAAA,IACP,CAAA,GAGJI,IAAAb,EAAA,OAAA;AAAA,MAAkD,CAAA,8BAAAY,EAAA,SAAA,EAAA,GAAA,CAAAE,EAAA,SAAA,CAAAP,EAAA;AAAA,MAC6C,CAAA,8BAAAK,EAAA,KAAA,EAAA,GAAAL,EAAA;AAAA,MACzB,CAAA,8BAAAK,EAAA,QAAA,EAAA,GAAAL,EAAA;AAAA,IACG,EAAA,GAGzEQ,IAAAf,EAAA,MAAA,MAAA,QAAAG,EAAA,KAAA,CAAA,GAEAW,IAAAd,EAAA,MACIe,EAAA,QAIAZ,EAAA,MAAA,KAAA,CAAAa,MAAAA,MAAAX,EAAA,KAAA,IAHIF,EAAA,KAGiF,GAIzFc,IAAAjB;AAAA,MAAoB,MAAAO,EAAA,gBAAA,UAAA,GAAA,CAAA,CAAAO,EAAA,KAAA;AAAA,IACoC,GAExDI,IAAAlB;AAAA,MAAoB,MAAAO,EAAA,YAAA,CAAAA,EAAA,YAAA,CAAAA,EAAA;AAAA,IACkC;yRAItD,CAAAY,MAAA;AACI,UAAAf,EAAA,OAAA;AACI,QAAAe,EAAA,eAAA;AACA;AAAA,MAAA;AAAA,IACJ,aAEJ,CAAAA,MAAA;AACI,UAAAlB,EAAA;AACI;AAGJ,YAAAmB,IAAAD,EAAA,OAAA;AAEA,UAAAJ,EAAA,OAAA;AACI,cAAAM,IAAA,CAAA,GAAAlB,EAAA,KAAA,GACAmB,IAAAD,EAAA,QAAAhB,EAAA,KAAA;AAEA,QAAAiB,MAAA,KACID,EAAA,KAAAhB,EAAA,KAAA,IAEAgB,EAAA,OAAAC,GAAA,CAAA,GAEJC,EAAAC,EAAA,QAAAH,CAAA;AAAA,MAA8C;AAE9C,QAAAE,EAAAC,EAAA,QAAAJ,CAAA;AAAA,IACJ;;;;;;;;;;;;;;;;;;;;;"}