@adyen/bento-vue2 1.85.0 → 1.86.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 (309) hide show
  1. package/dist/@types/components.d.ts +2 -0
  2. package/dist/@types/index.d.ts +358 -260
  3. package/dist/accordion.js +1 -1
  4. package/dist/action-bar.js +1 -1
  5. package/dist/ai-tag.js +1 -1
  6. package/dist/alert.js +1 -1
  7. package/dist/anchor-scroller.js +5 -0
  8. package/dist/anchor-scroller.js.map +1 -0
  9. package/dist/assets/accordion-item.css +1 -1
  10. package/dist/assets/action-bar.css +1 -1
  11. package/dist/assets/anchor-scroller.css +1 -0
  12. package/dist/assets/base-modal.css +1 -1
  13. package/dist/assets/button-actions.css +1 -1
  14. package/dist/assets/card.css +1 -1
  15. package/dist/assets/data-grid.css +1 -1
  16. package/dist/assets/date-picker.css +1 -1
  17. package/dist/assets/date-range-picker.css +1 -1
  18. package/dist/assets/dialog-page.css +1 -1
  19. package/dist/assets/dropdown-default-textbox.css +1 -1
  20. package/dist/assets/dropdown.css +1 -1
  21. package/dist/assets/error-message.css +1 -0
  22. package/dist/assets/file-uploader.css +1 -1
  23. package/dist/assets/fixed-scroller.css +1 -1
  24. package/dist/assets/inspector.css +1 -1
  25. package/dist/assets/modal-fullscreen.css +1 -1
  26. package/dist/assets/secondary-nav.css +1 -1
  27. package/dist/assets/sidepanel.css +1 -1
  28. package/dist/assets/use-cached-selected-values.css +1 -1
  29. package/dist/avatar.js +1 -1
  30. package/dist/button.js +3 -3
  31. package/dist/card.js +1 -1
  32. package/dist/checkbox.js +6 -6
  33. package/dist/chip.js +1 -1
  34. package/dist/chunks/{accordion-item.DeV8s0oW.js → accordion-item.Cv6kG2N3.js} +2 -2
  35. package/dist/chunks/{accordion-item.DeV8s0oW.js.map → accordion-item.Cv6kG2N3.js.map} +1 -1
  36. package/dist/chunks/{action-bar.rgLdy6Bu.js → action-bar.Dnkt4yn7.js} +9 -9
  37. package/dist/chunks/{action-bar.rgLdy6Bu.js.map → action-bar.Dnkt4yn7.js.map} +1 -1
  38. package/dist/chunks/{ai-button.ggEcDV08.js → ai-button.BTi18ipD.js} +3 -3
  39. package/dist/chunks/{ai-button.ggEcDV08.js.map → ai-button.BTi18ipD.js.map} +1 -1
  40. package/dist/chunks/{ai-tag.DKMGiQcJ.js → ai-tag.s8TECgn_.js} +27 -19
  41. package/dist/chunks/{ai-tag.DKMGiQcJ.js.map → ai-tag.s8TECgn_.js.map} +1 -1
  42. package/dist/chunks/{alert.B3Pdp02a.js → alert.BESCd8iS.js} +5 -5
  43. package/dist/chunks/{alert.B3Pdp02a.js.map → alert.BESCd8iS.js.map} +1 -1
  44. package/dist/chunks/anchor-scroller.3_idPubO.js +178 -0
  45. package/dist/chunks/anchor-scroller.3_idPubO.js.map +1 -0
  46. package/dist/chunks/{avatar.CUCH3CTc.js → avatar.rwWPYJnt.js} +2 -2
  47. package/dist/chunks/{avatar.CUCH3CTc.js.map → avatar.rwWPYJnt.js.map} +1 -1
  48. package/dist/chunks/{base-button.IN4bpcds.js → base-button.BPRPrO0p.js} +2 -2
  49. package/dist/chunks/{base-button.IN4bpcds.js.map → base-button.BPRPrO0p.js.map} +1 -1
  50. package/dist/chunks/{base-modal.QsjzGei_.js → base-modal.09nAcnF_.js} +41 -41
  51. package/dist/chunks/{base-modal.QsjzGei_.js.map → base-modal.09nAcnF_.js.map} +1 -1
  52. package/dist/chunks/{button-actions-with-menu.PL45aAcI.js → button-actions-with-menu.C8tSTxrm.js} +3 -3
  53. package/dist/chunks/{button-actions-with-menu.PL45aAcI.js.map → button-actions-with-menu.C8tSTxrm.js.map} +1 -1
  54. package/dist/chunks/{button-actions.JRDi9PFT.js → button-actions.VSc47LLH.js} +8 -8
  55. package/dist/chunks/{button-actions.JRDi9PFT.js.map → button-actions.VSc47LLH.js.map} +1 -1
  56. package/dist/chunks/{button.DIU6m9wD.js → button.Ctj3rkxw.js} +5 -5
  57. package/dist/chunks/{button.DIU6m9wD.js.map → button.Ctj3rkxw.js.map} +1 -1
  58. package/dist/chunks/{calendar.B0SmuooF.js → calendar.DiXkjQDP.js} +8 -8
  59. package/dist/chunks/{calendar.B0SmuooF.js.map → calendar.DiXkjQDP.js.map} +1 -1
  60. package/dist/chunks/{card.CVkEg8m1.js → card.BdjdBN36.js} +3 -3
  61. package/dist/chunks/{card.CVkEg8m1.js.map → card.BdjdBN36.js.map} +1 -1
  62. package/dist/chunks/{checkbox-group.DPZJjcdT.js → checkbox-group.d6VQvZL7.js} +5 -5
  63. package/dist/chunks/{checkbox-group.DPZJjcdT.js.map → checkbox-group.d6VQvZL7.js.map} +1 -1
  64. package/dist/chunks/{checkbox.D3D1I22O.js → checkbox.ClFNfhNh.js} +4 -4
  65. package/dist/chunks/{checkbox.D3D1I22O.js.map → checkbox.ClFNfhNh.js.map} +1 -1
  66. package/dist/chunks/{chip.C6DRfdJ8.js → chip.D_XQ8ReC.js} +3 -3
  67. package/dist/chunks/{chip.C6DRfdJ8.js.map → chip.D_XQ8ReC.js.map} +1 -1
  68. package/dist/chunks/{click-outside.C1Ud8AA2.js → click-outside.CDz_x8mN.js} +2 -2
  69. package/dist/chunks/{click-outside.C1Ud8AA2.js.map → click-outside.CDz_x8mN.js.map} +1 -1
  70. package/dist/chunks/{code-snippet.BN5P-KQo.js → code-snippet.DBNJgt1j.js} +11 -11
  71. package/dist/chunks/{code-snippet.BN5P-KQo.js.map → code-snippet.DBNJgt1j.js.map} +1 -1
  72. package/dist/chunks/{codemirror.Cy7iSLbd.js → codemirror.D2BAltnu.js} +3688 -3673
  73. package/dist/chunks/codemirror.D2BAltnu.js.map +1 -0
  74. package/dist/chunks/{controls-group.BwXz0UYr.js → controls-group.HUWlAOhG.js} +3 -3
  75. package/dist/chunks/{controls-group.BwXz0UYr.js.map → controls-group.HUWlAOhG.js.map} +1 -1
  76. package/dist/chunks/{copy.BIh04KTY.js → copy.BXykYfg0.js} +7 -7
  77. package/dist/chunks/{copy.BIh04KTY.js.map → copy.BXykYfg0.js.map} +1 -1
  78. package/dist/chunks/{country.DyrDj95W.js → country.BywHth0L.js} +3 -3
  79. package/dist/chunks/{country.DyrDj95W.js.map → country.BywHth0L.js.map} +1 -1
  80. package/dist/chunks/{country.types.DaVCMxk-.js → country.types.BBQbWkTY.js} +3 -3
  81. package/dist/chunks/{country.types.DaVCMxk-.js.map → country.types.BBQbWkTY.js.map} +1 -1
  82. package/dist/chunks/{currency.DYZr_RDk.js → currency.Ciyxfmg1.js} +2 -2
  83. package/dist/chunks/{currency.DYZr_RDk.js.map → currency.Ciyxfmg1.js.map} +1 -1
  84. package/dist/chunks/{dashboard-section.BvFMd9CQ.js → dashboard-section.Cw2Ima3U.js} +6 -6
  85. package/dist/chunks/{dashboard-section.BvFMd9CQ.js.map → dashboard-section.Cw2Ima3U.js.map} +1 -1
  86. package/dist/chunks/{dashed-underline.CXyMT-cF.js → dashed-underline.Dfw7cJ-9.js} +9 -9
  87. package/dist/chunks/{dashed-underline.CXyMT-cF.js.map → dashed-underline.Dfw7cJ-9.js.map} +1 -1
  88. package/dist/chunks/{data-grid-template.wWWI3FE3.js → data-grid-template.6LR2Jqka.js} +4 -4
  89. package/dist/chunks/{data-grid-template.wWWI3FE3.js.map → data-grid-template.6LR2Jqka.js.map} +1 -1
  90. package/dist/chunks/{data-grid.Dcj_tU8q.js → data-grid.B_uZEPDW.js} +177 -177
  91. package/dist/chunks/data-grid.B_uZEPDW.js.map +1 -0
  92. package/dist/chunks/date-input.etw_pFpA.js +20 -0
  93. package/dist/chunks/date-input.etw_pFpA.js.map +1 -0
  94. package/dist/chunks/{date-picker.Dh3-TgPT.js → date-picker.CITeN8WH.js} +56 -56
  95. package/dist/chunks/date-picker.CITeN8WH.js.map +1 -0
  96. package/dist/chunks/date-picker.types.Ckt7zxGy.js.map +1 -1
  97. package/dist/chunks/{date-range-picker.BOn_Xjkr.js → date-range-picker.DxVjXxap.js} +343 -343
  98. package/dist/chunks/{date-range-picker.BOn_Xjkr.js.map → date-range-picker.DxVjXxap.js.map} +1 -1
  99. package/dist/chunks/date-range-picker.types.Ckt7zxGy.js.map +1 -1
  100. package/dist/chunks/{date.DBWzp0So.js → date.B0m0sFP6.js} +2 -2
  101. package/dist/chunks/{date.DBWzp0So.js.map → date.B0m0sFP6.js.map} +1 -1
  102. package/dist/chunks/dialog-page.DA6E6qma.js +122 -0
  103. package/dist/chunks/dialog-page.DA6E6qma.js.map +1 -0
  104. package/dist/chunks/{directive.Cbdox5VL.js → directive.rXUeDb8p.js} +2 -2
  105. package/dist/chunks/{directive.Cbdox5VL.js.map → directive.rXUeDb8p.js.map} +1 -1
  106. package/dist/chunks/{dropdown-default-textbox.Cq68tN9F.js → dropdown-default-textbox.5WjhJWdh.js} +71 -80
  107. package/dist/chunks/dropdown-default-textbox.5WjhJWdh.js.map +1 -0
  108. package/dist/chunks/{dropdown-tag.C7Buz72U.js → dropdown-tag.BnMuMIDk.js} +8 -8
  109. package/dist/chunks/{dropdown-tag.C7Buz72U.js.map → dropdown-tag.BnMuMIDk.js.map} +1 -1
  110. package/dist/chunks/{dropdown.ByH2zHxF.js → dropdown.DDPfKc74.js} +227 -225
  111. package/dist/chunks/dropdown.DDPfKc74.js.map +1 -0
  112. package/dist/chunks/{empty-state.DpBnqAxu.js → empty-state.IiG1LXa2.js} +6 -6
  113. package/dist/chunks/{empty-state.DpBnqAxu.js.map → empty-state.IiG1LXa2.js.map} +1 -1
  114. package/dist/chunks/{field-label.BKxm8ehO.js → error-message.VenUl2OK.js} +54 -54
  115. package/dist/chunks/error-message.VenUl2OK.js.map +1 -0
  116. package/dist/chunks/{file-uploader.U7YUrGoM.js → file-uploader.BU1V40qK.js} +9 -9
  117. package/dist/chunks/{file-uploader.U7YUrGoM.js.map → file-uploader.BU1V40qK.js.map} +1 -1
  118. package/dist/chunks/{filter-bar.BRE0djRy.js → filter-bar.UdXQf_RN.js} +104 -96
  119. package/dist/chunks/{filter-bar.BRE0djRy.js.map → filter-bar.UdXQf_RN.js.map} +1 -1
  120. package/dist/chunks/fixed-scroller.BueAsyGk.js +120 -0
  121. package/dist/chunks/{fixed-scroller.Bp4-iO80.js.map → fixed-scroller.BueAsyGk.js.map} +1 -1
  122. package/dist/chunks/{focus-trap.Ed8RY9cJ.js → focus-trap.DMc1wL3A.js} +312 -295
  123. package/dist/chunks/focus-trap.DMc1wL3A.js.map +1 -0
  124. package/dist/chunks/{footer-actions.mS3IiJg7.js → footer-actions.z-api8J_.js} +4 -4
  125. package/dist/chunks/{footer-actions.mS3IiJg7.js.map → footer-actions.z-api8J_.js.map} +1 -1
  126. package/dist/chunks/{form-layout-title.C3uKS3GA.js → form-layout-title.Bbq05nMT.js} +5 -5
  127. package/dist/chunks/{form-layout-title.C3uKS3GA.js.map → form-layout-title.Bbq05nMT.js.map} +1 -1
  128. package/dist/chunks/{header-meta.CQTfyEJR.js → header-meta.CuMQSsOm.js} +9 -9
  129. package/dist/chunks/{header-meta.CQTfyEJR.js.map → header-meta.CuMQSsOm.js.map} +1 -1
  130. package/dist/chunks/{header-with-views.-PRI2W3p.js → header-with-views.DX8EXLMJ.js} +13 -13
  131. package/dist/chunks/{header-with-views.-PRI2W3p.js.map → header-with-views.DX8EXLMJ.js.map} +1 -1
  132. package/dist/chunks/{header.DDwoZ8fF.js → header.YECm2GAh.js} +4 -4
  133. package/dist/chunks/{header.DDwoZ8fF.js.map → header.YECm2GAh.js.map} +1 -1
  134. package/dist/chunks/index.BkJqgYF1.js +692 -0
  135. package/dist/chunks/{index.Zfd79j1_.js.map → index.BkJqgYF1.js.map} +1 -1
  136. package/dist/chunks/{info-icon.gUcRjEyG.js → info-icon.DS9ax8ZD.js} +3 -3
  137. package/dist/chunks/{info-icon.gUcRjEyG.js.map → info-icon.DS9ax8ZD.js.map} +1 -1
  138. package/dist/chunks/{input-field-password.BO3EMjVD.js → input-field-password.DrI6eF5u.js} +11 -11
  139. package/dist/chunks/{input-field-password.BO3EMjVD.js.map → input-field-password.DrI6eF5u.js.map} +1 -1
  140. package/dist/chunks/{input-field-phone-number.DDQIkRdm.js → input-field-phone-number.Buh4x3pJ.js} +4 -4
  141. package/dist/chunks/{input-field-phone-number.DDQIkRdm.js.map → input-field-phone-number.Buh4x3pJ.js.map} +1 -1
  142. package/dist/chunks/{input-field.BRIDLPBn.js → input-field.NEKXqT4R.js} +7 -7
  143. package/dist/chunks/{input-field.BRIDLPBn.js.map → input-field.NEKXqT4R.js.map} +1 -1
  144. package/dist/chunks/{inspector.DCda4tku.js → inspector.BomNgVb-.js} +5 -5
  145. package/dist/chunks/{inspector.DCda4tku.js.map → inspector.BomNgVb-.js.map} +1 -1
  146. package/dist/chunks/{isSameWeek.5sjhTHiU.js → isSameWeek.DjeUtLwI.js} +2 -2
  147. package/dist/chunks/{isSameWeek.5sjhTHiU.js.map → isSameWeek.DjeUtLwI.js.map} +1 -1
  148. package/dist/chunks/{it.DEniTaO2.js → it.DIafuXtH.js} +2 -2
  149. package/dist/chunks/{it.DEniTaO2.js.map → it.DIafuXtH.js.map} +1 -1
  150. package/dist/chunks/{layout-row.BtCzzLTz.js → layout-row.BxuMJU4E.js} +3 -3
  151. package/dist/chunks/{layout-row.BtCzzLTz.js.map → layout-row.BxuMJU4E.js.map} +1 -1
  152. package/dist/chunks/{link.PsTSQjK3.js → link.DKimL08z.js} +2 -2
  153. package/dist/chunks/{link.PsTSQjK3.js.map → link.DKimL08z.js.map} +1 -1
  154. package/dist/chunks/{listbox-option-tag.B63aT5Sq.js → listbox-option-tag.Cv3y0TvQ.js} +3 -3
  155. package/dist/chunks/{listbox-option-tag.B63aT5Sq.js.map → listbox-option-tag.Cv3y0TvQ.js.map} +1 -1
  156. package/dist/chunks/{modal-fullscreen.CRLZX72M.js → modal-fullscreen.6bAjPENL.js} +73 -69
  157. package/dist/chunks/modal-fullscreen.6bAjPENL.js.map +1 -0
  158. package/dist/chunks/{modal.BnAZ8Nj1.js → modal.DOR8c0gy.js} +6 -6
  159. package/dist/chunks/{modal.BnAZ8Nj1.js.map → modal.DOR8c0gy.js.map} +1 -1
  160. package/dist/chunks/on-click-outside.BW4rkhzG.js +91 -0
  161. package/dist/chunks/on-click-outside.BW4rkhzG.js.map +1 -0
  162. package/dist/chunks/{pagination.spAA5CX0.js → pagination.wuEIlDcq.js} +4 -4
  163. package/dist/chunks/{pagination.spAA5CX0.js.map → pagination.wuEIlDcq.js.map} +1 -1
  164. package/dist/chunks/{payment-method.BKXLPDC9.js → payment-method.B3CkgsAY.js} +2 -2
  165. package/dist/chunks/{payment-method.BKXLPDC9.js.map → payment-method.B3CkgsAY.js.map} +1 -1
  166. package/dist/chunks/popover.types.DkiRUQ4Z.js +6 -0
  167. package/dist/chunks/{popover.types.Zm8nugBw.js.map → popover.types.DkiRUQ4Z.js.map} +1 -1
  168. package/dist/chunks/popper-container.D4dworD4.js +1423 -0
  169. package/dist/chunks/popper-container.D4dworD4.js.map +1 -0
  170. package/dist/chunks/{promo-banner.BkLMZH66.js → promo-banner.bjMDm76T.js} +4 -4
  171. package/dist/chunks/{promo-banner.BkLMZH66.js.map → promo-banner.bjMDm76T.js.map} +1 -1
  172. package/dist/chunks/{radio-group.B6-Fd_kH.js → radio-group.DKRxfGtE.js} +8 -8
  173. package/dist/chunks/{radio-group.B6-Fd_kH.js.map → radio-group.DKRxfGtE.js.map} +1 -1
  174. package/dist/chunks/{rich-text-editor.DeywBxSb.js → rich-text-editor.DiuS9alD.js} +9 -13
  175. package/dist/chunks/rich-text-editor.DiuS9alD.js.map +1 -0
  176. package/dist/chunks/{search-bar.BKRppqyI.js → search-bar.UVSaoX0h.js} +5 -5
  177. package/dist/chunks/{search-bar.BKRppqyI.js.map → search-bar.UVSaoX0h.js.map} +1 -1
  178. package/dist/chunks/{secondary-nav.RQ5eRpPH.js → secondary-nav.C6ldQMZ2.js} +18 -18
  179. package/dist/chunks/secondary-nav.C6ldQMZ2.js.map +1 -0
  180. package/dist/chunks/{segmented-control.BomURsCq.js → segmented-control.BLnuxgnJ.js} +3 -3
  181. package/dist/chunks/{segmented-control.BomURsCq.js.map → segmented-control.BLnuxgnJ.js.map} +1 -1
  182. package/dist/chunks/{selection-card-group.gh-fMA9T.js → selection-card-group.CqGYskmS.js} +5 -5
  183. package/dist/chunks/{selection-card-group.gh-fMA9T.js.map → selection-card-group.CqGYskmS.js.map} +1 -1
  184. package/dist/chunks/{sidepanel.B80Mujpk.js → sidepanel.BKE87Uef.js} +71 -67
  185. package/dist/chunks/sidepanel.BKE87Uef.js.map +1 -0
  186. package/dist/chunks/{startOfWeek.CM1KIrNi.js → startOfWeek.D8Yh4c0G.js} +3 -3
  187. package/dist/chunks/{startOfWeek.CM1KIrNi.js.map → startOfWeek.D8Yh4c0G.js.map} +1 -1
  188. package/dist/chunks/{status.types.Cv5XN4zL.js → status.types.BTsaLHQ6.js} +2 -2
  189. package/dist/chunks/{status.types.Cv5XN4zL.js.map → status.types.BTsaLHQ6.js.map} +1 -1
  190. package/dist/chunks/{step.BLFXvHL6.js → step.BEbWkprZ.js} +5 -5
  191. package/dist/chunks/{step.BLFXvHL6.js.map → step.BEbWkprZ.js.map} +1 -1
  192. package/dist/chunks/{structured-list-item.DCEKBtbT.js → structured-list-item.DRFRap_S.js} +6 -6
  193. package/dist/chunks/{structured-list-item.DCEKBtbT.js.map → structured-list-item.DRFRap_S.js.map} +1 -1
  194. package/dist/chunks/{summary-grid.types.BV8FDXGv.js → summary-grid.types.OldkhD7S.js} +10 -10
  195. package/dist/chunks/{summary-grid.types.BV8FDXGv.js.map → summary-grid.types.OldkhD7S.js.map} +1 -1
  196. package/dist/chunks/{tab.FUMpPsBP.js → tab.BqSNoefU.js} +5 -5
  197. package/dist/chunks/{tab.FUMpPsBP.js.map → tab.BqSNoefU.js.map} +1 -1
  198. package/dist/chunks/{tag.CroNYKsL.js → tag.Cy3XkSDQ.js} +3 -3
  199. package/dist/chunks/{tag.CroNYKsL.js.map → tag.Cy3XkSDQ.js.map} +1 -1
  200. package/dist/chunks/{textarea.CtTdhV_G.js → textarea.Bm9MZb_W.js} +4 -4
  201. package/dist/chunks/{textarea.CtTdhV_G.js.map → textarea.Bm9MZb_W.js.map} +1 -1
  202. package/dist/chunks/{timeline-item.DCWllef8.js → timeline-item.Cpbm8IUw.js} +15 -15
  203. package/dist/chunks/{timeline-item.DCWllef8.js.map → timeline-item.Cpbm8IUw.js.map} +1 -1
  204. package/dist/chunks/{toast.Csv6tMyT.js → toast.Wuy6VuOT.js} +4 -4
  205. package/dist/chunks/{toast.Csv6tMyT.js.map → toast.Wuy6VuOT.js.map} +1 -1
  206. package/dist/chunks/{toggle.227XgEc7.js → toggle.B1z1YPe_.js} +4 -4
  207. package/dist/chunks/{toggle.227XgEc7.js.map → toggle.B1z1YPe_.js.map} +1 -1
  208. package/dist/chunks/{tooltip.DxJQHsuI.js → tooltip.DF11J3k3.js} +50 -50
  209. package/dist/chunks/{tooltip.DxJQHsuI.js.map → tooltip.DF11J3k3.js.map} +1 -1
  210. package/dist/chunks/{tutorial.O_vT6Q2b.js → tutorial.D5xtZ1Pt.js} +5 -5
  211. package/dist/chunks/{tutorial.O_vT6Q2b.js.map → tutorial.D5xtZ1Pt.js.map} +1 -1
  212. package/dist/chunks/{typography.Bq-EGj9y.js → typography.C8lPlsbD.js} +3 -3
  213. package/dist/chunks/{typography.Bq-EGj9y.js.map → typography.C8lPlsbD.js.map} +1 -1
  214. package/dist/chunks/{use-bento-toast-controller.MmyZXtME.js → use-bento-toast-controller.CB6Qbf3R.js} +2 -2
  215. package/dist/chunks/{use-bento-toast-controller.MmyZXtME.js.map → use-bento-toast-controller.CB6Qbf3R.js.map} +1 -1
  216. package/dist/chunks/{use-cached-selected-values.3YqO69wz.js → use-cached-selected-values.wn2xnwYG.js} +12 -12
  217. package/dist/chunks/use-cached-selected-values.wn2xnwYG.js.map +1 -0
  218. package/dist/chunks/{use-country-items.ClS_So5N.js → use-country-items.CQnldpqM.js} +11 -11
  219. package/dist/chunks/{use-country-items.ClS_So5N.js.map → use-country-items.CQnldpqM.js.map} +1 -1
  220. package/dist/chunks/utils.BzUwtTXc.js +21 -0
  221. package/dist/chunks/utils.BzUwtTXc.js.map +1 -0
  222. package/dist/chunks/{zh-CN.CgIooHto.js → zh-CN.Bw_6j9Cd.js} +2 -2
  223. package/dist/chunks/{zh-CN.CgIooHto.js.map → zh-CN.Bw_6j9Cd.js.map} +1 -1
  224. package/dist/click-outside.js +1 -1
  225. package/dist/code-snippet.js +1 -1
  226. package/dist/country.js +2 -2
  227. package/dist/currency.js +1 -1
  228. package/dist/dashboard-template.js +1 -1
  229. package/dist/dashed-underline.js +1 -1
  230. package/dist/data-grid-template.js +1 -1
  231. package/dist/data-grid.js +1 -1
  232. package/dist/date-picker.js +2 -2
  233. package/dist/date-range-picker.js +2 -2
  234. package/dist/date.js +1 -1
  235. package/dist/draggable-handle.js +47 -31
  236. package/dist/draggable-handle.js.map +1 -1
  237. package/dist/dropdown.js +11 -11
  238. package/dist/empty-state.js +1 -1
  239. package/dist/file-uploader.js +1 -1
  240. package/dist/filter-bar.js +1 -1
  241. package/dist/focus-trap.js +1 -1
  242. package/dist/form-layout.js +1 -1
  243. package/dist/header-with-views.js +1 -1
  244. package/dist/header.js +1 -1
  245. package/dist/index.js +281 -279
  246. package/dist/index.js.map +1 -1
  247. package/dist/info-icon.js +1 -1
  248. package/dist/input-field-password.js +1 -1
  249. package/dist/input-field-phone-number.js +1 -1
  250. package/dist/input-field.js +1 -1
  251. package/dist/inspector.js +1 -1
  252. package/dist/internal.js +42 -42
  253. package/dist/layout.js +1 -1
  254. package/dist/link.js +1 -1
  255. package/dist/menu.js +1 -1
  256. package/dist/modal-fullscreen.js +1 -1
  257. package/dist/modal.js +2 -2
  258. package/dist/pagination.js +1 -1
  259. package/dist/payment-method.js +1 -1
  260. package/dist/popover.js +2 -2
  261. package/dist/popper-container.js +1 -1
  262. package/dist/promo-banner.js +1 -1
  263. package/dist/radio-group.js +1 -1
  264. package/dist/rich-text-editor.js +1 -1
  265. package/dist/search-bar.js +2 -2
  266. package/dist/secondary-nav.js +1 -1
  267. package/dist/segmented-control.js +1 -1
  268. package/dist/selection-card.js +1 -1
  269. package/dist/sidepanel.js +1 -1
  270. package/dist/status.js +1 -1
  271. package/dist/stepper.js +1 -1
  272. package/dist/structured-list.js +1 -1
  273. package/dist/summary-grid.js +1 -1
  274. package/dist/tabs.js +1 -1
  275. package/dist/tag.js +1 -1
  276. package/dist/textarea.js +1 -1
  277. package/dist/timeline.js +1 -1
  278. package/dist/toast.js +1 -1
  279. package/dist/toggle.js +1 -1
  280. package/dist/tutorial.js +1 -1
  281. package/dist/typography.js +1 -1
  282. package/dist/use-form-v4.js +756 -7787
  283. package/dist/use-form-v4.js.map +1 -1
  284. package/dist/web-types.json +128 -30
  285. package/package.json +6 -6
  286. package/dist/assets/field-label.css +0 -1
  287. package/dist/chunks/codemirror.Cy7iSLbd.js.map +0 -1
  288. package/dist/chunks/data-grid.Dcj_tU8q.js.map +0 -1
  289. package/dist/chunks/date-input.BbZqj10S.js +0 -15
  290. package/dist/chunks/date-input.BbZqj10S.js.map +0 -1
  291. package/dist/chunks/date-picker.Dh3-TgPT.js.map +0 -1
  292. package/dist/chunks/dialog-page.BegXhP0L.js +0 -118
  293. package/dist/chunks/dialog-page.BegXhP0L.js.map +0 -1
  294. package/dist/chunks/dropdown-default-textbox.Cq68tN9F.js.map +0 -1
  295. package/dist/chunks/dropdown.ByH2zHxF.js.map +0 -1
  296. package/dist/chunks/field-label.BKxm8ehO.js.map +0 -1
  297. package/dist/chunks/fixed-scroller.Bp4-iO80.js +0 -114
  298. package/dist/chunks/focus-trap.Ed8RY9cJ.js.map +0 -1
  299. package/dist/chunks/index.Zfd79j1_.js +0 -593
  300. package/dist/chunks/modal-fullscreen.CRLZX72M.js.map +0 -1
  301. package/dist/chunks/on-click-outside.D9aY9g8G.js +0 -101
  302. package/dist/chunks/on-click-outside.D9aY9g8G.js.map +0 -1
  303. package/dist/chunks/popover.types.Zm8nugBw.js +0 -6
  304. package/dist/chunks/popper-container.CXUG6v_U.js +0 -1404
  305. package/dist/chunks/popper-container.CXUG6v_U.js.map +0 -1
  306. package/dist/chunks/rich-text-editor.DeywBxSb.js.map +0 -1
  307. package/dist/chunks/secondary-nav.RQ5eRpPH.js.map +0 -1
  308. package/dist/chunks/sidepanel.B80Mujpk.js.map +0 -1
  309. package/dist/chunks/use-cached-selected-values.3YqO69wz.js.map +0 -1
@@ -1,21 +1,29 @@
1
1
  import { defineComponent as u, ref as i, watch as _, computed as f } from "vue";
2
- import { u as v, c as m, h as y } from "./button-actions.JRDi9PFT.js";
3
- import { B as I } from "./typography.Bq-EGj9y.js";
2
+ import { u as v, c as m, h as y } from "./button-actions.VSc47LLH.js";
3
+ import { B as I } from "./typography.C8lPlsbD.js";
4
4
  import "./index.Cl4_42j5.js";
5
- import { u as B } from "./index.B6WW_F-J.js";
6
- import { g as h } from "./generate-uid.NJ8tVoha.js";
7
- import { A } from "./artificial-intelligence-ai-filled.C6TMsiHK.js";
8
- import { n as C } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
5
+ import { u as A } from "./index.B6WW_F-J.js";
6
+ import { g as x } from "./generate-uid.NJ8tVoha.js";
7
+ import { A as B } from "./artificial-intelligence-ai-filled.C6TMsiHK.js";
8
+ import { n as h } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
9
9
  import "../assets/ai-tag.css";
10
- const T = {
10
+ const C = {
11
11
  "en-US": {
12
12
  ai: "AI",
13
13
  aiExplained: "AI explained"
14
+ },
15
+ "ja-JP": {
16
+ ai: "AI",
17
+ aiExplained: "AIについての説明"
18
+ },
19
+ "pt-BR": {
20
+ ai: "IA",
21
+ aiExplained: "IA explicada"
14
22
  }
15
- }, x = {
16
- i18n: { messages: T }
17
- }, k = /* @__PURE__ */ u({
18
- ...x,
23
+ }, T = {
24
+ i18n: { messages: C }
25
+ }, E = /* @__PURE__ */ u({
26
+ ...T,
19
27
  __name: "ai-tag",
20
28
  props: {
21
29
  title: null,
@@ -26,7 +34,7 @@ const T = {
26
34
  },
27
35
  emits: ["update:toggled"],
28
36
  setup(r, { emit: e }) {
29
- const o = r, { t } = B(), a = i(o.toggled), s = i(null), p = i(null), d = h("b-ai-tag-popover");
37
+ const o = r, { t } = A(), a = i(o.toggled), s = i(null), p = i(null), d = x("b-ai-tag-popover");
30
38
  _(
31
39
  () => o.toggled,
32
40
  (n) => {
@@ -47,10 +55,10 @@ const T = {
47
55
  }, c = () => {
48
56
  a.value && l(!1);
49
57
  };
50
- return { __sfc: !0, props: o, t, toggled: a, aiTagRef: s, targetElement: p, popoverId: d, popoverActions: g, emit: e, onToggle: l, closePopover: c, BentoPopover: y, BentoToggleButton: m, BentoTypography: I, ArtificialIntelligenceAiIcon: A };
58
+ return { __sfc: !0, props: o, t, toggled: a, aiTagRef: s, targetElement: p, popoverId: d, popoverActions: g, emit: e, onToggle: l, closePopover: c, BentoPopover: y, BentoToggleButton: m, BentoTypography: I, ArtificialIntelligenceAiIcon: B };
51
59
  }
52
60
  });
53
- var b = function() {
61
+ var k = function() {
54
62
  var e = this, o = e._self._c, t = e._self._setupProxy;
55
63
  return o("div", { ref: "aiTagRef", staticClass: "b-ai-tag", on: { keydown: function(a) {
56
64
  return !a.type.indexOf("key") && e._k(a.keyCode, "esc", 27, a.key, ["Esc", "Escape"]) ? null : t.closePopover.apply(null, arguments);
@@ -59,16 +67,16 @@ var b = function() {
59
67
  }, proxy: !0 }]) }, [e._v(" " + e._s(t.t("ai")) + " ")]), t.targetElement ? o(t.BentoPopover, { attrs: { id: t.popoverId, open: t.toggled, "target-element": t.targetElement, actions: t.popoverActions, "actions-layout": "fill-container", title: t.t("aiExplained"), "trap-all": "", "trap-all-options": { onDeactivate: t.closePopover, allowOutsideClick: !0 }, "fixed-positioning": "", "overflow-visible": "" }, on: { dismiss: t.closePopover }, scopedSlots: e._u([{ key: "headerIcon", fn: function() {
60
68
  return [o(t.ArtificialIntelligenceAiIcon, { staticClass: "b-ai-tag__popover-header-icon", attrs: { "aria-hidden": !0 } })];
61
69
  }, proxy: !0 }], null, !1, 430358887) }, [o("div", { staticClass: "b-ai-tag__popover-content" }, [e.influencedValue ? o(t.BentoTypography, { staticClass: "b-ai-tag__influenced-value", attrs: { variant: "title", medium: "" } }, [e._v(" " + e._s(e.influencedValue) + " ")]) : e._e(), o(t.BentoTypography, { attrs: { variant: "title" } }, [e._v(" " + e._s(e.title) + " ")]), o(t.BentoTypography, [e._v(" " + e._s(e.description) + " ")])], 1)]) : e._e()], 1);
62
- }, E = [], P = /* @__PURE__ */ C(
70
+ }, b = [], P = /* @__PURE__ */ h(
71
+ E,
63
72
  k,
64
73
  b,
65
- E,
66
74
  !1,
67
75
  null,
68
76
  "405c2237"
69
77
  );
70
- const F = P.exports;
78
+ const D = P.exports;
71
79
  export {
72
- F as a
80
+ D as a
73
81
  };
74
- //# sourceMappingURL=ai-tag.DKMGiQcJ.js.map
82
+ //# sourceMappingURL=ai-tag.s8TECgn_.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-tag.DKMGiQcJ.js","sources":["../../src/components/ai-tag/ai-tag.vue"],"sourcesContent":["<template>\n <div ref=\"aiTagRef\" class=\"b-ai-tag\" @keydown.esc=\"closePopover\">\n <bento-toggle-button\n ref=\"targetElement\"\n :toggled=\"toggled\"\n :aria-controls=\"popoverId\"\n variant=\"secondary\"\n condensed\n class=\"b-ai-tag__trigger\"\n @update:toggled=\"onToggle\"\n >\n <template #iconLeft>\n <artificial-intelligence-ai-icon class=\"b-ai-tag__trigger-icon\" :aria-hidden=\"true\" />\n </template>\n {{ t('ai') }}\n </bento-toggle-button>\n\n <bento-popover\n v-if=\"targetElement\"\n :id=\"popoverId\"\n :open=\"toggled\"\n :target-element=\"targetElement\"\n :actions=\"popoverActions\"\n actions-layout=\"fill-container\"\n :title=\"t('aiExplained')\"\n trap-all\n :trap-all-options=\"{ onDeactivate: closePopover, allowOutsideClick: true }\"\n fixed-positioning\n overflow-visible\n @dismiss=\"closePopover\"\n >\n <template #headerIcon>\n <artificial-intelligence-ai-icon class=\"b-ai-tag__popover-header-icon\" :aria-hidden=\"true\" />\n </template>\n <div class=\"b-ai-tag__popover-content\">\n <bento-typography v-if=\"influencedValue\" variant=\"title\" medium class=\"b-ai-tag__influenced-value\">\n {{ influencedValue }}\n </bento-typography>\n\n <bento-typography variant=\"title\">\n {{ title }}\n </bento-typography>\n\n <bento-typography>\n {{ description }}\n </bento-typography>\n </div>\n </bento-popover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref, watch } from 'vue';\n import { BentoPopover } from '@/components/popover';\n import { BentoToggleButton } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { useClickOutside } from '@/composables';\n import { useI18n } from '@/utils/ts/i18n';\n import { generateUid } from '@/core/utils/ts';\n import type { BentoButtonActionsList } from '@/components/button/components/button-actions/button-actions.types';\n import ArtificialIntelligenceAiIcon from '@adyen/ui-assets-icons-16/vue/artificial-intelligence-ai-filled';\n import type { BentoAiTagProps } from './ai-tag.types';\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n title: null,\n description: null,\n influencedValue: { default: undefined },\n toggled: { type: Boolean, default: false },\n action: { default: undefined }\n});\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const toggled = ref(props.toggled);\n const aiTagRef = ref<HTMLElement | null>(null);\n const targetElement = ref<InstanceType<typeof BentoToggleButton> | null>(null);\n const popoverId = generateUid('b-ai-tag-popover');\n\n watch(\n () => props.toggled,\n value => {\n toggled.value = value;\n }\n );\n\n useClickOutside(aiTagRef, () => {\n closePopover();\n });\n\n const popoverActions = computed<BentoButtonActionsList>(() =>\n props.action\n ? [\n {\n ...props.action,\n variant: 'secondary',\n },\n ]\n : undefined\n );\n\n const emit = defineEmits([\"update:toggled\"]);\n\n const onToggle = (value: boolean) => {\n toggled.value = value;\n emit('update:toggled', value);\n };\n\n const closePopover = () => {\n if (toggled.value) {\n onToggle(false);\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * The AI tag is a component used to transparently identify content, data, or experiences that have been generated or\n * enhanced by artificial intelligence.\n *\n * @example\n * import { BentoAiTag } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoAiTag },\n * template: `\n * <bento-ai-tag\n * title=\"Input fields auto-filled by AI\"\n * description=\"Based on your documents uploaded, AI has auto-filled some information for you.\"\n * />\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./ai-tag.scss\" />\n"],"names":["__default__","messages","useI18n","toggled","ref","props","aiTagRef","targetElement","popoverId","generateUid","watch","value","useClickOutside","closePopover","popoverActions","computed","onToggle","emit"],"mappings":";;;;;;;;;;;;;;GAuIIA,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;iBA/DA,EAAA,EAAA,IAAAC,EAAA,GAEAC,IAAAC,EAAAC,EAAA,OAAA,GACAC,IAAAF,EAAA,IAAA,GACAG,IAAAH,EAAA,IAAA,GACAI,IAAAC,EAAA,kBAAA;AAEA,IAAAC;AAAA,MAAA,MAAAL,EAAA;AAAA,MACgB,CAAAM,MAAA;AAER,QAAAR,EAAA,QAAAQ;AAAA,MAAgB;AAAA,IACpB,GAGJC,EAAAN,GAAA,MAAA;AACI,MAAAO,EAAA;AAAA,IAAa,CAAA;AAGjB,UAAAC,IAAAC;AAAA,MAAuB,MAAAV,EAAA,SAAA;AAAA,QAEb;AAAA,UACI,GAAAA,EAAA;AAAA,UACa,SAAA;AAAA,QACA;AAAA,MACb,IAAA;AAAA,IAEJ,GAKVW,IAAA,CAAAL,MAAA;AACI,MAAAR,EAAA,QAAAQ,GACAM,EAAA,kBAAAN,CAAA;AAAA,IAA4B,GAGhCE,IAAA,MAAA;AACI,MAAAV,EAAA,SACIa,EAAA,EAAA;AAAA,IACJ;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ai-tag.s8TECgn_.js","sources":["../../src/components/ai-tag/ai-tag.vue"],"sourcesContent":["<template>\n <div ref=\"aiTagRef\" class=\"b-ai-tag\" @keydown.esc=\"closePopover\">\n <bento-toggle-button\n ref=\"targetElement\"\n :toggled=\"toggled\"\n :aria-controls=\"popoverId\"\n variant=\"secondary\"\n condensed\n class=\"b-ai-tag__trigger\"\n @update:toggled=\"onToggle\"\n >\n <template #iconLeft>\n <artificial-intelligence-ai-icon class=\"b-ai-tag__trigger-icon\" :aria-hidden=\"true\" />\n </template>\n {{ t('ai') }}\n </bento-toggle-button>\n\n <bento-popover\n v-if=\"targetElement\"\n :id=\"popoverId\"\n :open=\"toggled\"\n :target-element=\"targetElement\"\n :actions=\"popoverActions\"\n actions-layout=\"fill-container\"\n :title=\"t('aiExplained')\"\n trap-all\n :trap-all-options=\"{ onDeactivate: closePopover, allowOutsideClick: true }\"\n fixed-positioning\n overflow-visible\n @dismiss=\"closePopover\"\n >\n <template #headerIcon>\n <artificial-intelligence-ai-icon class=\"b-ai-tag__popover-header-icon\" :aria-hidden=\"true\" />\n </template>\n <div class=\"b-ai-tag__popover-content\">\n <bento-typography v-if=\"influencedValue\" variant=\"title\" medium class=\"b-ai-tag__influenced-value\">\n {{ influencedValue }}\n </bento-typography>\n\n <bento-typography variant=\"title\">\n {{ title }}\n </bento-typography>\n\n <bento-typography>\n {{ description }}\n </bento-typography>\n </div>\n </bento-popover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref, watch } from 'vue';\n import { BentoPopover } from '@/components/popover';\n import { BentoToggleButton } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { useClickOutside } from '@/composables';\n import { useI18n } from '@/utils/ts/i18n';\n import { generateUid } from '@/core/utils/ts';\n import type { BentoButtonActionsList } from '@/components/button/components/button-actions/button-actions.types';\n import ArtificialIntelligenceAiIcon from '@adyen/ui-assets-icons-16/vue/artificial-intelligence-ai-filled';\n import type { BentoAiTagProps } from './ai-tag.types';\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n title: null,\n description: null,\n influencedValue: { default: undefined },\n toggled: { type: Boolean, default: false },\n action: { default: undefined }\n});\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const toggled = ref(props.toggled);\n const aiTagRef = ref<HTMLElement | null>(null);\n const targetElement = ref<InstanceType<typeof BentoToggleButton> | null>(null);\n const popoverId = generateUid('b-ai-tag-popover');\n\n watch(\n () => props.toggled,\n value => {\n toggled.value = value;\n }\n );\n\n useClickOutside(aiTagRef, () => {\n closePopover();\n });\n\n const popoverActions = computed<BentoButtonActionsList>(() =>\n props.action\n ? [\n {\n ...props.action,\n variant: 'secondary',\n },\n ]\n : undefined\n );\n\n const emit = defineEmits([\"update:toggled\"]);\n\n const onToggle = (value: boolean) => {\n toggled.value = value;\n emit('update:toggled', value);\n };\n\n const closePopover = () => {\n if (toggled.value) {\n onToggle(false);\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * The AI tag is a component used to transparently identify content, data, or experiences that have been generated or\n * enhanced by artificial intelligence.\n *\n * @example\n * import { BentoAiTag } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoAiTag },\n * template: `\n * <bento-ai-tag\n * title=\"Input fields auto-filled by AI\"\n * description=\"Based on your documents uploaded, AI has auto-filled some information for you.\"\n * />\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./ai-tag.scss\" />\n"],"names":["__default__","messages","useI18n","toggled","ref","props","aiTagRef","targetElement","popoverId","generateUid","watch","value","useClickOutside","closePopover","popoverActions","computed","onToggle","emit"],"mappings":";;;;;;;;;;;;;;;;;;;;;;GAuIIA,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;iBA/DA,EAAA,EAAA,IAAAC,EAAA,GAEAC,IAAAC,EAAAC,EAAA,OAAA,GACAC,IAAAF,EAAA,IAAA,GACAG,IAAAH,EAAA,IAAA,GACAI,IAAAC,EAAA,kBAAA;AAEA,IAAAC;AAAA,MAAA,MAAAL,EAAA;AAAA,MACgB,CAAAM,MAAA;AAER,QAAAR,EAAA,QAAAQ;AAAA,MAAgB;AAAA,IACpB,GAGJC,EAAAN,GAAA,MAAA;AACI,MAAAO,EAAA;AAAA,IAAa,CAAA;AAGjB,UAAAC,IAAAC;AAAA,MAAuB,MAAAV,EAAA,SAAA;AAAA,QAEb;AAAA,UACI,GAAAA,EAAA;AAAA,UACa,SAAA;AAAA,QACA;AAAA,MACb,IAAA;AAAA,IAEJ,GAKVW,IAAA,CAAAL,MAAA;AACI,MAAAR,EAAA,QAAAQ,GACAM,EAAA,kBAAAN,CAAA;AAAA,IAA4B,GAGhCE,IAAA,MAAA;AACI,MAAAV,EAAA,SACIa,EAAA,EAAA;AAAA,IACJ;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as I, useSlots as y, computed as i, onMounted as T } from "vue";
2
- import { a as l, c as S, B as b } from "./typography.Bq-EGj9y.js";
3
- import { B as H } from "./button.DIU6m9wD.js";
2
+ import { c as l, a as S, B as b } from "./typography.C8lPlsbD.js";
3
+ import { B as H } from "./button.Ctj3rkxw.js";
4
4
  import { C as L } from "./cross-small.CoQUe8SS.js";
5
5
  import { W as B } from "./warning-filled.CbJ1pcB2.js";
6
6
  import { C as w } from "./cross-circle-fill.DTDtgLMf.js";
@@ -104,8 +104,8 @@ var U = function() {
104
104
  const tt = D.exports;
105
105
  export {
106
106
  tt as B,
107
- n as a,
107
+ p as a,
108
108
  o as b,
109
- p as c
109
+ n as c
110
110
  };
111
- //# sourceMappingURL=alert.B3Pdp02a.js.map
111
+ //# sourceMappingURL=alert.BESCd8iS.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"alert.B3Pdp02a.js","sources":["../../src/components/alert/alert.types.ts","../../../ui-assets/icons-16/dist/vue/info-filled.vue","../../src/components/alert/alert.vue"],"sourcesContent":["/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoAlertVariant {\n DEFAULT = 'default',\n TIP = 'tip',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoAlertTypeOption {\n WARNING = 'warning',\n CRITICAL = 'critical',\n HIGHLIGHT = 'highlight',\n SUCCESS = 'success',\n}\n\n/**\n * @deprecated from version 2.0.0. Use \"@close-alert\" instead.\n */\nexport enum BentoAlertEvent {\n CLOSE_ALERT = 'close-alert',\n}\n","\n<template>\n <svg role=\"img\" v-bind=\"$attrs\" class=\"ui-assets-icons-16\" xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"none\"><title v-if=\"$attrs['svg-title']\">{{ $attrs['svg-title'] }}</title><g :clip-path=\"'url(#uia-ui-assets/icons-16-info_filled__a' + uuid + ')'\"><path fill=\"#001222\" fill-rule=\"evenodd\" d=\"M5.03418 0.839544C6.45015 0.253058 8.00853 0.0992122 9.51172 0.398138C11.015 0.697159 12.3966 1.43547 13.4805 2.51923C14.5642 3.60301 15.3025 4.98476 15.6016 6.48798C15.9005 7.99113 15.7466 9.54958 15.1602 10.9655C14.5736 12.3816 13.5801 13.5925 12.3057 14.444C11.1109 15.2423 9.71924 15.6917 8.28711 15.7448L8 15.7497C5.94458 15.7497 3.97294 14.9336 2.51953 13.4802C1.06623 12.0268 0.250005 10.055 0.25 7.9997C0.250066 6.4671 0.70424 4.96838 1.55566 3.69404C2.40724 2.41967 3.61814 1.42609 5.03418 0.839544ZM6.25 6.2497V7.7497H7.25V10.2497H6.25V11.7497H9.75V10.2497H8.75V6.2497H6.25ZM7.75 3.4997C7.58674 3.4997 7.42763 3.54211 7.28418 3.61786C7.25386 3.63389 7.22303 3.64949 7.19434 3.66865L7.07812 3.75947C7.04744 3.78732 7.01817 3.817 6.99121 3.84833C6.97917 3.86236 6.96827 3.8776 6.95703 3.89228C6.93942 3.91522 6.9228 3.93915 6.90723 3.96357C6.90005 3.97485 6.89248 3.98618 6.88574 3.99775C6.86351 4.03594 6.84324 4.07574 6.82617 4.11689L6.78027 4.25751C6.77017 4.29795 6.7628 4.33927 6.75781 4.38056C6.75552 4.39961 6.75411 4.41902 6.75293 4.43818C6.75166 4.45856 6.75196 4.47926 6.75195 4.4997C6.75195 4.52207 6.75144 4.54472 6.75293 4.56708C6.75579 4.60979 6.76114 4.65273 6.76953 4.69501L6.80859 4.83661C6.82299 4.87685 6.84098 4.91584 6.86035 4.9538C6.86847 4.96971 6.87775 4.98522 6.88672 5.00068C6.89748 5.01922 6.90895 5.03753 6.9209 5.05536C6.93323 5.07376 6.94544 5.09248 6.95898 5.11005C6.98495 5.14371 7.01269 5.17643 7.04297 5.20673L7.1543 5.30341C7.19021 5.33003 7.2285 5.35325 7.26758 5.3747C7.27775 5.38031 7.28847 5.38508 7.29883 5.39033C7.32903 5.40554 7.35995 5.41924 7.3916 5.43134C7.40264 5.43559 7.41361 5.44018 7.4248 5.44404C7.46721 5.45855 7.51041 5.47134 7.55469 5.48017C7.59672 5.48853 7.63919 5.49291 7.68164 5.49579C7.70021 5.49707 7.71872 5.49751 7.7373 5.49775C7.76179 5.49804 7.78614 5.49729 7.81055 5.49579C7.82982 5.49462 7.84899 5.4932 7.86816 5.49091C7.90982 5.48592 7.95139 5.47962 7.99219 5.46943L8.13281 5.42353C8.1739 5.40649 8.21283 5.38517 8.25098 5.36298C8.2626 5.35623 8.27383 5.3487 8.28516 5.3415C8.30964 5.32589 8.33345 5.30934 8.35645 5.29169C8.37116 5.28043 8.38633 5.26958 8.40039 5.25751C8.43176 5.23053 8.46235 5.20229 8.49023 5.17158L8.58105 5.05536C8.69084 4.89096 8.75 4.6974 8.75 4.4997C8.74992 4.2346 8.64449 3.98013 8.45703 3.79267C8.26951 3.60523 8.01514 3.4997 7.75 3.4997Z\" clip-rule=\"evenodd\"/></g><defs><clipPath :id=\"'uia-ui-assets/icons-16-info_filled__a' + uuid\"><rect width=\"16\" height=\"16\" fill=\"#fff\"/></clipPath></defs></svg>\n</template>\n<script>\n import '../css/main.css';\n\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n","<template>\n <div class=\"b-alert\" :role=\"computedRole\">\n <div class=\"b-alert__inner-container\" :class=\"alertConditionalClasses\">\n <div class=\"b-alert__icon\">\n <component :is=\"iconComponent\" aria-hidden=\"true\" :svg-title=\"iconSvgTitle\" />\n </div>\n\n <div class=\"b-alert__content\">\n <bento-typography\n v-if=\"hasSlot('default') && !isTipVariant\"\n class=\"b-alert__title\"\n el=\"div\"\n variant=\"body\"\n strongest\n wide\n >\n <slot />\n </bento-typography>\n\n <bento-typography\n v-if=\"hasSlot('description')\"\n class=\"b-alert__description\"\n v-bind=\"descriptionTypography\"\n data-testid=\"alert-description\"\n >\n <slot name=\"description\" />\n </bento-typography>\n\n <div v-if=\"hasSlot('actions') && !isTipVariant\" class=\"b-alert__actions\" data-testid=\"alert-actions\">\n <slot name=\"actions\" />\n </div>\n </div>\n\n <bento-button\n v-if=\"closeButton && !isTipVariant\"\n class=\"b-alert__close-button\"\n variant=\"tertiary\"\n type=\"button\"\n @click=\"onCloseButtonClick\"\n >\n <cross-small :svg-title=\"t('close')\" />\n </bento-button>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, useSlots } from 'vue';\n\n // Component\n import { BentoAlertEvent, BentoAlertTypeOption, BentoAlertVariant } from '@/components/alert/alert.types';\n import { BentoTypography, BentoTypographyElement, BentoTypographyVariant } from '@/components/typography';\n import { BentoButton } from '@/components/button';\n\n import CrossSmall from '@adyen/ui-assets-icons-16/vue/cross-small';\n import Warning from '@adyen/ui-assets-icons-16/vue/warning-filled';\n import CrossCircle from '@adyen/ui-assets-icons-16/vue/cross-circle-fill';\n import CheckedCircle from '@adyen/ui-assets-icons-16/vue/checkmark-circle-fill';\n import Info from '@adyen/ui-assets-icons-16/vue/info-filled';\n\n // Utils\n import { useHasSlot } from '@/composables';\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const emit = defineEmits([\"close-alert\"]);\n\n const props = defineProps({\n closeButton: { type: Boolean, default: false },\n type: { default: BentoAlertTypeOption.HIGHLIGHT },\n variant: { default: BentoAlertVariant.DEFAULT }\n});\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const isTipVariant = computed(() => props.variant === BentoAlertVariant.TIP);\n\n const alertConditionalClasses = computed(() => ({\n [`b-alert--${props.type}`]: props.type,\n [`b-alert--${BentoAlertVariant.TIP}`]: isTipVariant.value,\n }));\n\n const iconSvgTitle = computed(() => t(`${props.type}Icon`));\n\n const iconComponent = computed(() => {\n switch (props.type) {\n case BentoAlertTypeOption.CRITICAL:\n return CrossCircle;\n case BentoAlertTypeOption.SUCCESS:\n return CheckedCircle;\n case BentoAlertTypeOption.WARNING:\n return Warning;\n case BentoAlertTypeOption.HIGHLIGHT:\n default:\n return Info;\n }\n });\n\n const descriptionTypography = computed(() => ({\n el: BentoTypographyElement.DIV,\n variant: isTipVariant.value ? BentoTypographyVariant.CAPTION : BentoTypographyVariant.BODY,\n wide: true,\n }));\n\n const computedRole = computed(() => (props.type === BentoAlertTypeOption.HIGHLIGHT ? 'status' : 'alert'));\n\n const onCloseButtonClick = () => {\n emit(BentoAlertEvent.CLOSE_ALERT);\n };\n\n onMounted(() => {\n if (!slots.default && !slots.description) {\n throw new Error('Alert Component requires a title or a description');\n }\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * An Alert component is used to display a persistent\n * notification containing information important to the user\n *\n * @example\n * import { BentoAlert, BentoAlertTypeOption } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoAlert },\n * template: `\n * <bento-alert type=\"highlight\">\n * Title of the Alert\n * </bento-alert>\n * `\n * }\n */\n export default {\n i18n: { messages },\n name: 'bento-alert',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./alert.scss\" />\n"],"names":["BentoAlertVariant","BentoAlertVariant2","BentoAlertTypeOption","BentoAlertTypeOption2","BentoAlertEvent","BentoAlertEvent2","uuid","_sfc_main$1","__default__","messages","slots","useSlots","hasSlot","useHasSlot","t","useI18n","isTipVariant","computed","props","alertConditionalClasses","iconSvgTitle","iconComponent","CrossCircleFillIcon","CheckmarkCircleFillIcon","WarningFilledIcon","Info","descriptionTypography","BentoTypographyElement","BentoTypographyVariant","computedRole","onCloseButtonClick","emit","onMounted"],"mappings":";;;;;;;;;;;;AAGO,IAAAA,IAAA,kBAAAC,OACHA,EAAA,UAAA,WACAA,EAAA,MAAA,OAFQA,IAAAD,KAAA,CAAA,CAAA,GAQLE,IAAA,kBAAAC,OACHA,EAAA,UAAA,WACAA,EAAA,WAAA,YACAA,EAAA,YAAA,aACAA,EAAA,UAAA,WAJQA,IAAAD,KAAA,CAAA,CAAA,GAULE,IAAA,kBAAAC,OACHA,EAAA,cAAA,eADQA,IAAAD,KAAA,CAAA,CAAA;ACdZ,IAAAE,IAAA;AAEA,MAAAC,IAAA;AAAA,EACA,eAAA;AACA,SAAA,OAAAD,EAAA,SAAA,GACAA,KAAA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GC8HIE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAAA,EACM,MAAA;AAErB;;;;;;;;;iBA3EAC,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAUA,EAAA,GAAAI,EAAA,IAAAC,EAAA,GAEAC,IAAAC,EAAA,MAAAC,EAAA,YAAAlB,EAAA,GAAA,GAEAmB,IAAAF,EAAA,OAAA;AAAA,MAAgD,CAAA,YAAAC,EAAA,IAAA,EAAA,GAAAA,EAAA;AAAA,MACV,CAAA,YAAAlB,EAAA,GAAA,EAAA,GAAAgB,EAAA;AAAA,IACkB,EAAA,GAGxDI,IAAAH,EAAA,MAAAH,EAAA,GAAAI,EAAA,IAAA,MAAA,CAAA,GAEAG,IAAAJ,EAAA,MAAA;AACI,cAAAC,EAAA,MAAA;AAAA,QAAoB,KAAAhB,EAAA;AAEZ,iBAAAoB;AAAA,QAAO,KAAApB,EAAA;AAEP,iBAAAqB;AAAA,QAAO,KAAArB,EAAA;AAEP,iBAAAsB;AAAA,QAAO,KAAAtB,EAAA;AAAA,QACe;AAEtB,iBAAAuB;AAAA,MAAO;AAAA,IACf,CAAA,GAGJC,IAAAT,EAAA,OAAA;AAAA,MAA8C,IAAAU,EAAA;AAAA,MACf,SAAAX,EAAA,QAAAY,EAAA,UAAAA,EAAA;AAAA,MAC2D,MAAA;AAAA,IAChF,EAAA,GAGVC,IAAAZ,EAAA,MAAAC,EAAA,SAAAhB,EAAA,YAAA,WAAA,OAAA,GAEA4B,IAAA,MAAA;AACI,MAAAC,EAAA3B,EAAA,WAAA;AAAA,IAAgC;AAGpC,WAAA4B,EAAA,MAAA;AACI,UAAA,CAAAtB,EAAA,WAAA,CAAAA,EAAA;AACI,cAAA,IAAA,MAAA,mDAAA;AAAA,IACJ,CAAA;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"alert.BESCd8iS.js","sources":["../../src/components/alert/alert.types.ts","../../../ui-assets/icons-16/dist/vue/info-filled.vue","../../src/components/alert/alert.vue"],"sourcesContent":["/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoAlertVariant {\n DEFAULT = 'default',\n TIP = 'tip',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoAlertTypeOption {\n WARNING = 'warning',\n CRITICAL = 'critical',\n HIGHLIGHT = 'highlight',\n SUCCESS = 'success',\n}\n\n/**\n * @deprecated from version 2.0.0. Use \"@close-alert\" instead.\n */\nexport enum BentoAlertEvent {\n CLOSE_ALERT = 'close-alert',\n}\n","\n<template>\n <svg role=\"img\" v-bind=\"$attrs\" class=\"ui-assets-icons-16\" xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"none\"><title v-if=\"$attrs['svg-title']\">{{ $attrs['svg-title'] }}</title><g :clip-path=\"'url(#uia-ui-assets/icons-16-info_filled__a' + uuid + ')'\"><path fill=\"#001222\" fill-rule=\"evenodd\" d=\"M5.03418 0.839544C6.45015 0.253058 8.00853 0.0992122 9.51172 0.398138C11.015 0.697159 12.3966 1.43547 13.4805 2.51923C14.5642 3.60301 15.3025 4.98476 15.6016 6.48798C15.9005 7.99113 15.7466 9.54958 15.1602 10.9655C14.5736 12.3816 13.5801 13.5925 12.3057 14.444C11.1109 15.2423 9.71924 15.6917 8.28711 15.7448L8 15.7497C5.94458 15.7497 3.97294 14.9336 2.51953 13.4802C1.06623 12.0268 0.250005 10.055 0.25 7.9997C0.250066 6.4671 0.70424 4.96838 1.55566 3.69404C2.40724 2.41967 3.61814 1.42609 5.03418 0.839544ZM6.25 6.2497V7.7497H7.25V10.2497H6.25V11.7497H9.75V10.2497H8.75V6.2497H6.25ZM7.75 3.4997C7.58674 3.4997 7.42763 3.54211 7.28418 3.61786C7.25386 3.63389 7.22303 3.64949 7.19434 3.66865L7.07812 3.75947C7.04744 3.78732 7.01817 3.817 6.99121 3.84833C6.97917 3.86236 6.96827 3.8776 6.95703 3.89228C6.93942 3.91522 6.9228 3.93915 6.90723 3.96357C6.90005 3.97485 6.89248 3.98618 6.88574 3.99775C6.86351 4.03594 6.84324 4.07574 6.82617 4.11689L6.78027 4.25751C6.77017 4.29795 6.7628 4.33927 6.75781 4.38056C6.75552 4.39961 6.75411 4.41902 6.75293 4.43818C6.75166 4.45856 6.75196 4.47926 6.75195 4.4997C6.75195 4.52207 6.75144 4.54472 6.75293 4.56708C6.75579 4.60979 6.76114 4.65273 6.76953 4.69501L6.80859 4.83661C6.82299 4.87685 6.84098 4.91584 6.86035 4.9538C6.86847 4.96971 6.87775 4.98522 6.88672 5.00068C6.89748 5.01922 6.90895 5.03753 6.9209 5.05536C6.93323 5.07376 6.94544 5.09248 6.95898 5.11005C6.98495 5.14371 7.01269 5.17643 7.04297 5.20673L7.1543 5.30341C7.19021 5.33003 7.2285 5.35325 7.26758 5.3747C7.27775 5.38031 7.28847 5.38508 7.29883 5.39033C7.32903 5.40554 7.35995 5.41924 7.3916 5.43134C7.40264 5.43559 7.41361 5.44018 7.4248 5.44404C7.46721 5.45855 7.51041 5.47134 7.55469 5.48017C7.59672 5.48853 7.63919 5.49291 7.68164 5.49579C7.70021 5.49707 7.71872 5.49751 7.7373 5.49775C7.76179 5.49804 7.78614 5.49729 7.81055 5.49579C7.82982 5.49462 7.84899 5.4932 7.86816 5.49091C7.90982 5.48592 7.95139 5.47962 7.99219 5.46943L8.13281 5.42353C8.1739 5.40649 8.21283 5.38517 8.25098 5.36298C8.2626 5.35623 8.27383 5.3487 8.28516 5.3415C8.30964 5.32589 8.33345 5.30934 8.35645 5.29169C8.37116 5.28043 8.38633 5.26958 8.40039 5.25751C8.43176 5.23053 8.46235 5.20229 8.49023 5.17158L8.58105 5.05536C8.69084 4.89096 8.75 4.6974 8.75 4.4997C8.74992 4.2346 8.64449 3.98013 8.45703 3.79267C8.26951 3.60523 8.01514 3.4997 7.75 3.4997Z\" clip-rule=\"evenodd\"/></g><defs><clipPath :id=\"'uia-ui-assets/icons-16-info_filled__a' + uuid\"><rect width=\"16\" height=\"16\" fill=\"#fff\"/></clipPath></defs></svg>\n</template>\n<script>\n import '../css/main.css';\n\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n","<template>\n <div class=\"b-alert\" :role=\"computedRole\">\n <div class=\"b-alert__inner-container\" :class=\"alertConditionalClasses\">\n <div class=\"b-alert__icon\">\n <component :is=\"iconComponent\" aria-hidden=\"true\" :svg-title=\"iconSvgTitle\" />\n </div>\n\n <div class=\"b-alert__content\">\n <bento-typography\n v-if=\"hasSlot('default') && !isTipVariant\"\n class=\"b-alert__title\"\n el=\"div\"\n variant=\"body\"\n strongest\n wide\n >\n <slot />\n </bento-typography>\n\n <bento-typography\n v-if=\"hasSlot('description')\"\n class=\"b-alert__description\"\n v-bind=\"descriptionTypography\"\n data-testid=\"alert-description\"\n >\n <slot name=\"description\" />\n </bento-typography>\n\n <div v-if=\"hasSlot('actions') && !isTipVariant\" class=\"b-alert__actions\" data-testid=\"alert-actions\">\n <slot name=\"actions\" />\n </div>\n </div>\n\n <bento-button\n v-if=\"closeButton && !isTipVariant\"\n class=\"b-alert__close-button\"\n variant=\"tertiary\"\n type=\"button\"\n @click=\"onCloseButtonClick\"\n >\n <cross-small :svg-title=\"t('close')\" />\n </bento-button>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, onMounted, useSlots } from 'vue';\n\n // Component\n import { BentoAlertEvent, BentoAlertTypeOption, BentoAlertVariant } from '@/components/alert/alert.types';\n import { BentoTypography, BentoTypographyElement, BentoTypographyVariant } from '@/components/typography';\n import { BentoButton } from '@/components/button';\n\n import CrossSmall from '@adyen/ui-assets-icons-16/vue/cross-small';\n import Warning from '@adyen/ui-assets-icons-16/vue/warning-filled';\n import CrossCircle from '@adyen/ui-assets-icons-16/vue/cross-circle-fill';\n import CheckedCircle from '@adyen/ui-assets-icons-16/vue/checkmark-circle-fill';\n import Info from '@adyen/ui-assets-icons-16/vue/info-filled';\n\n // Utils\n import { useHasSlot } from '@/composables';\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const emit = defineEmits([\"close-alert\"]);\n\n const props = defineProps({\n closeButton: { type: Boolean, default: false },\n type: { default: BentoAlertTypeOption.HIGHLIGHT },\n variant: { default: BentoAlertVariant.DEFAULT }\n});\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const isTipVariant = computed(() => props.variant === BentoAlertVariant.TIP);\n\n const alertConditionalClasses = computed(() => ({\n [`b-alert--${props.type}`]: props.type,\n [`b-alert--${BentoAlertVariant.TIP}`]: isTipVariant.value,\n }));\n\n const iconSvgTitle = computed(() => t(`${props.type}Icon`));\n\n const iconComponent = computed(() => {\n switch (props.type) {\n case BentoAlertTypeOption.CRITICAL:\n return CrossCircle;\n case BentoAlertTypeOption.SUCCESS:\n return CheckedCircle;\n case BentoAlertTypeOption.WARNING:\n return Warning;\n case BentoAlertTypeOption.HIGHLIGHT:\n default:\n return Info;\n }\n });\n\n const descriptionTypography = computed(() => ({\n el: BentoTypographyElement.DIV,\n variant: isTipVariant.value ? BentoTypographyVariant.CAPTION : BentoTypographyVariant.BODY,\n wide: true,\n }));\n\n const computedRole = computed(() => (props.type === BentoAlertTypeOption.HIGHLIGHT ? 'status' : 'alert'));\n\n const onCloseButtonClick = () => {\n emit(BentoAlertEvent.CLOSE_ALERT);\n };\n\n onMounted(() => {\n if (!slots.default && !slots.description) {\n throw new Error('Alert Component requires a title or a description');\n }\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * An Alert component is used to display a persistent\n * notification containing information important to the user\n *\n * @example\n * import { BentoAlert, BentoAlertTypeOption } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoAlert },\n * template: `\n * <bento-alert type=\"highlight\">\n * Title of the Alert\n * </bento-alert>\n * `\n * }\n */\n export default {\n i18n: { messages },\n name: 'bento-alert',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./alert.scss\" />\n"],"names":["BentoAlertVariant","BentoAlertVariant2","BentoAlertTypeOption","BentoAlertTypeOption2","BentoAlertEvent","BentoAlertEvent2","uuid","_sfc_main$1","__default__","messages","slots","useSlots","hasSlot","useHasSlot","t","useI18n","isTipVariant","computed","props","alertConditionalClasses","iconSvgTitle","iconComponent","CrossCircleFillIcon","CheckmarkCircleFillIcon","WarningFilledIcon","Info","descriptionTypography","BentoTypographyElement","BentoTypographyVariant","computedRole","onCloseButtonClick","emit","onMounted"],"mappings":";;;;;;;;;;;;AAGO,IAAAA,IAAA,kBAAAC,OACHA,EAAA,UAAA,WACAA,EAAA,MAAA,OAFQA,IAAAD,KAAA,CAAA,CAAA,GAQLE,IAAA,kBAAAC,OACHA,EAAA,UAAA,WACAA,EAAA,WAAA,YACAA,EAAA,YAAA,aACAA,EAAA,UAAA,WAJQA,IAAAD,KAAA,CAAA,CAAA,GAULE,IAAA,kBAAAC,OACHA,EAAA,cAAA,eADQA,IAAAD,KAAA,CAAA,CAAA;ACdZ,IAAAE,IAAA;AAEA,MAAAC,IAAA;AAAA,EACA,eAAA;AACA,SAAA,OAAAD,EAAA,SAAA,GACAA,KAAA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GC8HIE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAAA,EACM,MAAA;AAErB;;;;;;;;;iBA3EAC,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAUA,EAAA,GAAAI,EAAA,IAAAC,EAAA,GAEAC,IAAAC,EAAA,MAAAC,EAAA,YAAAlB,EAAA,GAAA,GAEAmB,IAAAF,EAAA,OAAA;AAAA,MAAgD,CAAA,YAAAC,EAAA,IAAA,EAAA,GAAAA,EAAA;AAAA,MACV,CAAA,YAAAlB,EAAA,GAAA,EAAA,GAAAgB,EAAA;AAAA,IACkB,EAAA,GAGxDI,IAAAH,EAAA,MAAAH,EAAA,GAAAI,EAAA,IAAA,MAAA,CAAA,GAEAG,IAAAJ,EAAA,MAAA;AACI,cAAAC,EAAA,MAAA;AAAA,QAAoB,KAAAhB,EAAA;AAEZ,iBAAAoB;AAAA,QAAO,KAAApB,EAAA;AAEP,iBAAAqB;AAAA,QAAO,KAAArB,EAAA;AAEP,iBAAAsB;AAAA,QAAO,KAAAtB,EAAA;AAAA,QACe;AAEtB,iBAAAuB;AAAA,MAAO;AAAA,IACf,CAAA,GAGJC,IAAAT,EAAA,OAAA;AAAA,MAA8C,IAAAU,EAAA;AAAA,MACf,SAAAX,EAAA,QAAAY,EAAA,UAAAA,EAAA;AAAA,MAC2D,MAAA;AAAA,IAChF,EAAA,GAGVC,IAAAZ,EAAA,MAAAC,EAAA,SAAAhB,EAAA,YAAA,WAAA,OAAA,GAEA4B,IAAA,MAAA;AACI,MAAAC,EAAA3B,EAAA,WAAA;AAAA,IAAgC;AAGpC,WAAA4B,EAAA,MAAA;AACI,UAAA,CAAAtB,EAAA,WAAA,CAAAA,EAAA;AACI,cAAA,IAAA,MAAA,mDAAA;AAAA,IACJ,CAAA;;;;;;;;;;;;;;;"}
@@ -0,0 +1,178 @@
1
+ import { defineComponent as y, ref as b, computed as v, watch as w, watchEffect as S, toRef as T } from "vue";
2
+ import { f as A, d as B, u as R, g as D, t as I, h as F, w as L } from "./index.BkJqgYF1.js";
3
+ import { p as k, B as M } from "./typography.C8lPlsbD.js";
4
+ import { u as O } from "./index.B6WW_F-J.js";
5
+ import { g as E } from "./generate-uid.NJ8tVoha.js";
6
+ import { u as _ } from "./utils.BzUwtTXc.js";
7
+ import { B as N } from "./button.Ctj3rkxw.js";
8
+ import { n as C } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
9
+ import { F as H } from "./fixed-scroller.BueAsyGk.js";
10
+ import "../assets/anchor-scroller.css";
11
+ const V = /* @__PURE__ */ y({
12
+ __name: "anchor-scroller-list",
13
+ props: {
14
+ activeIndex: { default: void 0 },
15
+ items: null,
16
+ scrollOffset: { default: void 0 }
17
+ },
18
+ setup(p) {
19
+ const e = p, n = b([]), t = v(
20
+ () => e.items.map((r, c) => ({ disabled: r.disabled, originalIndex: c })).filter(({ disabled: r }) => !r).map(({ originalIndex: r }) => r)
21
+ ), {
22
+ state: u,
23
+ next: i,
24
+ prev: l
25
+ } = A(t, {
26
+ initialValue: e.activeIndex ?? t.value[0]
27
+ });
28
+ return w(u, async (r) => {
29
+ const c = n.value[r], s = _(c);
30
+ s && typeof s.focus == "function" && s.focus();
31
+ }), { __sfc: !0, props: e, listItemRefs: n, listIndices: t, focusedIndex: u, next: i, prev: l, scrollToSection: (r, c) => {
32
+ if (c)
33
+ return;
34
+ const s = _(r);
35
+ if (!s) {
36
+ k("[bento-anchor-scroller] element ref not found");
37
+ return;
38
+ }
39
+ if (!s.style.scrollMarginTop && e.scrollOffset) {
40
+ const f = window.getComputedStyle(s).scrollMarginTop;
41
+ (f === "0px" || f === "") && (s.style.scrollMarginTop = `${e.scrollOffset}px`);
42
+ }
43
+ s.hasAttribute("tabindex") || s.setAttribute("tabindex", "-1"), s.scrollIntoView({
44
+ behavior: "smooth",
45
+ block: "start",
46
+ inline: "nearest"
47
+ }), s.focus({ preventScroll: !0 });
48
+ }, onKeydownNavigation: (r) => {
49
+ switch (r.key) {
50
+ case "ArrowRight":
51
+ r.preventDefault(), i();
52
+ break;
53
+ case "ArrowLeft":
54
+ r.preventDefault(), l();
55
+ break;
56
+ case "Home":
57
+ r.preventDefault(), u.value = 0;
58
+ break;
59
+ case "End":
60
+ r.preventDefault(), u.value = t.value.length - 1;
61
+ break;
62
+ }
63
+ }, BentoButton: N };
64
+ }
65
+ });
66
+ var K = function() {
67
+ var e = this, n = e._self._c, t = e._self._setupProxy;
68
+ return n("ul", { staticClass: "b-anchor-scroller-list", on: { keydown: t.onKeydownNavigation } }, e._l(e.items, function({ title: u, disabled: i, elementRef: l }, d) {
69
+ return n("li", { key: d, staticClass: "b-anchor-scroller-list__item" }, [n(t.BentoButton, { ref: "listItemRefs", refInFor: !0, staticClass: "b-anchor-scroller-list__item-button", class: {
70
+ "b-anchor-scroller-list__item-button--active": e.activeIndex === d,
71
+ "b-anchor-scroller-list__item-button--disabled": i
72
+ }, attrs: { "aria-current": e.activeIndex === d ? "location" : null, "aria-disabled": i, tabindex: e.activeIndex === d ? null : "-1", variant: "tertiary-with-background" }, on: { click: function(a) {
73
+ return t.scrollToSection(l, i);
74
+ } }, nativeOn: { keydown: [function(a) {
75
+ return !a.type.indexOf("key") && e._k(a.keyCode, "space", 32, a.key, [" ", "Spacebar"]) ? null : (a.preventDefault(), t.scrollToSection(l, i));
76
+ }, function(a) {
77
+ return !a.type.indexOf("key") && e._k(a.keyCode, "enter", 13, a.key, "Enter") ? null : (a.preventDefault(), t.scrollToSection(l, i));
78
+ }] } }, [e._v(" " + e._s(u) + " ")])], 1);
79
+ }), 0);
80
+ }, W = [], j = /* @__PURE__ */ C(
81
+ V,
82
+ K,
83
+ W,
84
+ !1,
85
+ null,
86
+ "5668c5f7"
87
+ );
88
+ const z = j.exports, P = {
89
+ "en-US": {
90
+ jumpTo: "Jump to"
91
+ }
92
+ }, U = (p, e) => {
93
+ var l;
94
+ const n = b(((l = e.default) == null ? void 0 : l.value) ?? -1), { y: t } = B(), { height: u } = R(), i = () => {
95
+ const d = I(p), a = u.value, r = a / 2;
96
+ let c = -1, s = 0;
97
+ for (let f = 0; f < d.length; f++) {
98
+ const o = d[f];
99
+ if (!o)
100
+ continue;
101
+ const m = o.getBoundingClientRect();
102
+ if (m.top > r)
103
+ continue;
104
+ const g = Math.min(m.bottom, a) - Math.max(m.top, 0);
105
+ if (g <= 0)
106
+ continue;
107
+ const x = g / m.height;
108
+ x > s && (s = x, c = f);
109
+ }
110
+ c !== -1 && n.value !== c && (n.value = c);
111
+ };
112
+ return D([t, u], i, { throttle: 100, trailing: !0 }), S(() => {
113
+ I(p).length && i();
114
+ }), {
115
+ activeIndex: n
116
+ };
117
+ }, J = {
118
+ i18n: { messages: P },
119
+ name: "bento-anchor-scroller"
120
+ }, Y = /* @__PURE__ */ y({
121
+ ...J,
122
+ props: {
123
+ activeIndex: { default: void 0 },
124
+ items: null
125
+ },
126
+ emits: ["update:active-index"],
127
+ setup(p, { emit: e }) {
128
+ const n = p, { t } = O(), u = b(null), i = v(() => n.items.map((o) => ({ ...o }))), l = v(
129
+ () => n.items.map((o, m) => ({
130
+ element: _(o.elementRef),
131
+ originalIndex: m,
132
+ disabled: o.disabled
133
+ })).filter(
134
+ (o) => !o.disabled && !!o.element
135
+ )
136
+ ), d = v(() => l.value.map((o) => o.element)), a = v(() => ({
137
+ "b-anchor-scroller__navigation--pinned": s.value <= 1
138
+ })), r = v(() => {
139
+ const o = l.value[c.value];
140
+ return o ? o.originalIndex : 0;
141
+ }), { activeIndex: c } = U(d, {
142
+ default: T(n, "activeIndex")
143
+ }), { top: s, bottom: f } = F(u);
144
+ L(
145
+ r,
146
+ (o) => {
147
+ Number.isFinite(o) && e("update:active-index", o);
148
+ },
149
+ {
150
+ debounce: 250
151
+ // ensure that if you are scrolling through multiple sections quickly, it fires only once.
152
+ }
153
+ ), w(
154
+ () => n.activeIndex,
155
+ (o) => {
156
+ Number.isFinite(o) && i.value[o].disabled && k("[bento-anchor-scroller] activeIndex should not be a disabled item");
157
+ }
158
+ );
159
+ const h = E("bento-anchor-scroller-label");
160
+ return { __sfc: !0, t, props: n, emit: e, navigationRef: u, computedItems: i, enabledItems: l, scrollToTargets: d, navigationConditionalClasses: a, currentActiveIndex: r, relativeActiveIndex: c, top: s, bottom: f, navLabelId: h, BentoTypography: M, FixedScroller: H, AnchorScrollerList: z };
161
+ }
162
+ });
163
+ var q = function() {
164
+ var e = this, n = e._self._c, t = e._self._setupProxy;
165
+ return t.computedItems.length ? n("div", { staticClass: "b-anchor-scroller" }, [n("nav", { ref: "navigationRef", staticClass: "b-anchor-scroller__navigation", class: t.navigationConditionalClasses, attrs: { "aria-labelledby": t.navLabelId } }, [n(t.FixedScroller, { attrs: { condensed: "", centered: "" } }, [n("div", { staticClass: "b-anchor-scroller__navigation-panel" }, [n(t.BentoTypography, { staticClass: "b-anchor-scroller__navigation-panel-label", attrs: { id: t.navLabelId, el: "span", stronger: "" } }, [e._v(" " + e._s(t.t("jumpTo")) + " ")]), n(t.AnchorScrollerList, { attrs: { items: t.computedItems, "active-index": t.currentActiveIndex, "scroll-offset": t.bottom } })], 1)])], 1), e._t("default")], 2) : e._e();
166
+ }, G = [], Q = /* @__PURE__ */ C(
167
+ Y,
168
+ q,
169
+ G,
170
+ !1,
171
+ null,
172
+ "e3fa161f"
173
+ );
174
+ const ae = Q.exports;
175
+ export {
176
+ ae as a
177
+ };
178
+ //# sourceMappingURL=anchor-scroller.3_idPubO.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchor-scroller.3_idPubO.js","sources":["../../src/components/anchor-scroller/components/anchor-scroller-list/anchor-scroller-list.vue","../../src/components/anchor-scroller/composables/use-scroll-spy/use-scroll-spy.ts","../../src/components/anchor-scroller/anchor-scroller.vue"],"sourcesContent":["<template>\n <ul class=\"b-anchor-scroller-list\" @keydown=\"onKeydownNavigation\">\n <li v-for=\"({ title, disabled, elementRef }, index) in items\" :key=\"index\" class=\"b-anchor-scroller-list__item\">\n <bento-button\n ref=\"listItemRefs\"\n :aria-current=\"activeIndex === index ? 'location' : null\"\n class=\"b-anchor-scroller-list__item-button\"\n :class=\"{\n 'b-anchor-scroller-list__item-button--active': activeIndex === index,\n 'b-anchor-scroller-list__item-button--disabled': disabled,\n }\"\n :aria-disabled=\"disabled\"\n :tabindex=\"activeIndex === index ? null : '-1'\"\n variant=\"tertiary-with-background\"\n @click=\"scrollToSection(elementRef, disabled)\"\n @keydown.space.native.prevent=\"scrollToSection(elementRef, disabled)\"\n @keydown.enter.native.prevent=\"scrollToSection(elementRef, disabled)\"\n >\n {{ title }}\n </bento-button>\n </li>\n </ul>\n</template>\n\n<script setup lang=\"ts\">\n import BentoButton from '@/components/button/button.vue';\n import { unrefElement } from '@/directives/click-outside/utils';\n import { printDevelopmentWarning } from '@/utils/ts/print-development-warning';\n import { type BentoAnchorScrollerItem } from '../../anchor-scroller.types';\n import { type AnchorScrollerListProps } from './anchor-scroller-list.types';\n import { computed, ref, watch } from 'vue';\n import { useCycleList } from '@vueuse/core';\n\n const props = defineProps({\n activeIndex: { default: undefined },\n items: null,\n scrollOffset: { default: undefined }\n});\n\n const listItemRefs = ref([]);\n const listIndices = computed(() =>\n props.items\n .map((item, index) => ({ disabled: item.disabled, originalIndex: index }))\n .filter(({ disabled }) => !disabled)\n .map(({ originalIndex }) => originalIndex)\n );\n\n const {\n state: focusedIndex,\n next,\n prev,\n } = useCycleList(listIndices, {\n initialValue: props.activeIndex ?? listIndices.value[0],\n });\n\n watch(focusedIndex, async newIndex => {\n const targetComponent = listItemRefs.value[newIndex];\n const el = unrefElement(targetComponent); // Handles Component or DOM node\n\n if (el && typeof el.focus === 'function') {\n el.focus();\n }\n });\n\n const scrollToSection = (elementRef: BentoAnchorScrollerItem['elementRef'], disabled?: boolean) => {\n if (disabled) {\n return;\n }\n\n const el = unrefElement(elementRef);\n\n if (!el) {\n printDevelopmentWarning(`[bento-anchor-scroller] element ref not found`);\n return;\n }\n\n if (!el.style.scrollMarginTop && props.scrollOffset) {\n const currentScrollMargin = window.getComputedStyle(el).scrollMarginTop;\n\n if (currentScrollMargin === '0px' || currentScrollMargin === '') {\n el.style.scrollMarginTop = `${props.scrollOffset}px`;\n }\n }\n\n if (!el.hasAttribute('tabindex')) {\n el.setAttribute('tabindex', '-1');\n }\n\n el.scrollIntoView({\n behavior: 'smooth',\n block: 'start',\n inline: 'nearest',\n });\n\n el.focus({ preventScroll: true });\n };\n\n const onKeydownNavigation = (e: KeyboardEvent) => {\n switch (e.key) {\n case 'ArrowRight':\n e.preventDefault();\n next();\n break;\n case 'ArrowLeft':\n e.preventDefault();\n prev();\n break;\n case 'Home':\n e.preventDefault();\n focusedIndex.value = 0;\n break;\n case 'End':\n e.preventDefault();\n focusedIndex.value = listIndices.value.length - 1;\n break;\n }\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./anchor-scroller-list.scss\" />\n","import { type Ref, ref, watchEffect } from 'vue';\nimport { type MaybeRef, toValue, useWindowScroll, useWindowSize, watchThrottled } from '@vueuse/core';\n\n/**\n * Options for the useScrollSpy composable.\n */\nexport interface useScrollSpyOptions {\n /**\n * The default active index to use when no item is active or initially.\n */\n default?: Ref<number>;\n}\n\n/**\n * Composable to spy on scroll position and determine the active item based on visibility.\n *\n * @param items - The list of elements to spy on.\n * @param options - Configuration options for the scroll spy.\n * @returns An object containing the active index.\n */\nexport const useScrollSpy = (items: MaybeRef<Array<Element>>, options: useScrollSpyOptions) => {\n const activeIndex = ref(options.default?.value ?? -1);\n\n const { y: scrollY } = useWindowScroll();\n const { height: windowHeight } = useWindowSize();\n\n // Logic to find the \"winner\" when there are multiple items on the same page\n const calculateActiveIndex = () => {\n const list = toValue(items);\n const viewportHeight = windowHeight.value;\n const midpoint = viewportHeight / 2;\n\n let winnerIndex = -1;\n let maxVisibleRatio = 0;\n\n for (let i = 0; i < list.length; i++) {\n const item = list[i];\n const el = item;\n\n if (!el) {\n continue;\n }\n\n const rect = el.getBoundingClientRect();\n\n // Constraint 1: Must pass midpoint\n if (rect.top > midpoint) {\n continue;\n }\n\n // Constraint 2: Must be visible\n const visibleHeight = Math.min(rect.bottom, viewportHeight) - Math.max(rect.top, 0);\n if (visibleHeight <= 0) {\n continue;\n }\n\n // Constraint 3: Highest visible % wins\n const ratio = visibleHeight / rect.height;\n\n if (ratio > maxVisibleRatio) {\n maxVisibleRatio = ratio;\n winnerIndex = i;\n }\n }\n\n // Only update if changed to avoid unnecessary patch triggers\n if (winnerIndex !== -1 && activeIndex.value !== winnerIndex) {\n activeIndex.value = winnerIndex;\n }\n };\n\n watchThrottled([scrollY, windowHeight], calculateActiveIndex, { throttle: 100, trailing: true });\n\n watchEffect(() => {\n if (toValue(items).length) {\n calculateActiveIndex();\n }\n });\n\n return {\n activeIndex,\n };\n};\n","<template>\n <div v-if=\"computedItems.length\" class=\"b-anchor-scroller\">\n <nav\n ref=\"navigationRef\"\n class=\"b-anchor-scroller__navigation\"\n :class=\"navigationConditionalClasses\"\n :aria-labelledby=\"navLabelId\"\n >\n <fixed-scroller condensed centered>\n <div class=\"b-anchor-scroller__navigation-panel\">\n <bento-typography\n :id=\"navLabelId\"\n el=\"span\"\n class=\"b-anchor-scroller__navigation-panel-label\"\n stronger\n >\n {{ t('jumpTo') }}\n </bento-typography>\n\n <anchor-scroller-list\n :items=\"computedItems\"\n :active-index=\"currentActiveIndex\"\n :scroll-offset=\"bottom\"\n />\n </div>\n </fixed-scroller>\n </nav>\n\n <slot />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref, toRef, watch } from 'vue';\n import { useElementBounding, watchDebounced } from '@vueuse/core';\n import BentoTypography from '@/components/typography/typography.vue';\n import { FixedScroller } from '@/internal';\n import { type BentoAnchorScrollerItem, type BentoAnchorScrollerProps } from './anchor-scroller.types';\n import { AnchorScrollerList } from './components/anchor-scroller-list';\n import { useI18n } from '@/utils/ts/i18n';\n import { generateUid } from '@/core/utils/ts';\n import { unrefElement } from '@/directives/click-outside/utils';\n import messages from './messages.json';\n import { useScrollSpy } from './composables';\n import { printDevelopmentWarning } from '@/utils/ts/print-development-warning';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const props = defineProps({\n activeIndex: { default: undefined },\n items: null\n});\n\n const emit = defineEmits([\"update:active-index\"]);\n\n const navigationRef = ref(null);\n\n const computedItems = computed<Array<BentoAnchorScrollerItem>>(() => props.items.map(item => ({ ...item })));\n\n // Skip and cache only items that are enabled\n const enabledItems = computed(() =>\n props.items\n .map((item, originalIndex) => ({\n element: unrefElement(item.elementRef),\n originalIndex,\n disabled: item.disabled,\n }))\n .filter(\n (item): item is { element: Element; originalIndex: number; disabled: boolean } =>\n !item.disabled && !!item.element\n )\n );\n\n // Extract strictly the elements for the ScrollSpy to watch\n const scrollToTargets = computed(() => enabledItems.value.map(c => c.element));\n\n const navigationConditionalClasses = computed(() => ({\n 'b-anchor-scroller__navigation--pinned': top.value <= 1,\n }));\n\n const currentActiveIndex = computed(() => {\n const candidate = enabledItems.value[relativeActiveIndex.value];\n\n return candidate ? candidate.originalIndex : 0;\n });\n\n const { activeIndex: relativeActiveIndex } = useScrollSpy(scrollToTargets, {\n default: toRef(props, 'activeIndex'),\n });\n\n const { top, bottom } = useElementBounding(navigationRef);\n\n watchDebounced(\n currentActiveIndex,\n val => {\n if (Number.isFinite(val)) {\n emit('update:active-index', val);\n }\n },\n {\n debounce: 250, // ensure that if you are scrolling through multiple sections quickly, it fires only once.\n }\n );\n\n watch(\n () => props.activeIndex,\n val => {\n if (Number.isFinite(val) && computedItems.value[val].disabled) {\n printDevelopmentWarning(`[bento-anchor-scroller] activeIndex should not be a disabled item`);\n }\n }\n );\n\n const navLabelId = generateUid('bento-anchor-scroller-label');\n</script>\n\n<script lang=\"ts\">\n /**\n * A navigation component that tracks page scroll and allows jumping to sections.\n *\n * @example\n * import { BentoAnchorScroller } from '@adyen/bento-vue2';\n * import { ref } from 'vue';\n *\n * export default {\n * components: { BentoAnchorScroller },\n * template: `\n * <bento-anchor-scroller :items=\"items\">\n * <section ref=\"section1\">Section 1</section>\n * <section ref=\"section2\">Section 2</section>\n * </bento-anchor-scroller>\n * `,\n * setup() {\n * const section1 = ref(null);\n * const section2 = ref(null);\n * const items = ref([\n * { title: 'Section 1', elementRef: section1 },\n * { title: 'Section 2', elementRef: section2 },\n * ]);\n * return {\n * items,\n * section1,\n * section2,\n * }\n * }\n * }\n */\n export default {\n i18n: { messages },\n name: 'bento-anchor-scroller',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./anchor-scroller.scss\" />\n"],"names":["listItemRefs","ref","listIndices","computed","props","item","index","disabled","originalIndex","focusedIndex","next","prev","useCycleList","watch","newIndex","targetComponent","el","unrefElement","elementRef","printDevelopmentWarning","currentScrollMargin","e","useScrollSpy","items","options","activeIndex","_a","scrollY","useWindowScroll","windowHeight","useWindowSize","calculateActiveIndex","list","toValue","viewportHeight","midpoint","winnerIndex","maxVisibleRatio","i","rect","visibleHeight","ratio","watchThrottled","watchEffect","__default__","messages","useI18n","navigationRef","computedItems","enabledItems","scrollToTargets","c","navigationConditionalClasses","top","currentActiveIndex","candidate","relativeActiveIndex","toRef","bottom","useElementBounding","watchDebounced","val","emit","navLabelId","generateUid"],"mappings":";;;;;;;;;;;;;;;;;;iBAuCIA,IAAAC,EAAA,CAAA,CAAA,GACAC,IAAAC;AAAA,MAAoB,MAAAC,EAAA,MAAA,IAAA,CAAAC,GAAAC,OAAA,EAAA,UAAAD,EAAA,UAAA,eAAAC,EAAA,EAAA,EAAA,OAAA,CAAA,EAAA,UAAAC,EAAA,MAAA,CAAAA,CAAA,EAAA,IAAA,CAAA,EAAA,eAAAC,EAAA,MAAAA,CAAA;AAAA,IAI6B,GAGjD;AAAA,MAAM,OAAAC;AAAA,MACK,MAAAC;AAAA,MACP,MAAAC;AAAA,IACA,IAAAC,EAAAV,GAAA;AAAA,MAC0B,cAAAE,EAAA,eAAAF,EAAA,MAAA,CAAA;AAAA,IAC4B,CAAA;AAG1D,WAAAW,EAAAJ,GAAA,OAAAK,MAAA;AACI,YAAAC,IAAAf,EAAA,MAAAc,CAAA,GACAE,IAAAC,EAAAF,CAAA;AAEA,MAAAC,KAAA,OAAAA,EAAA,SAAA,cACIA,EAAA,MAAA;AAAA,IACJ,CAAA,+GAGJ,CAAAE,GAAAX,MAAA;AACI,UAAAA;AACI;AAGJ,YAAAS,IAAAC,EAAAC,CAAA;AAEA,UAAA,CAAAF,GAAA;AACI,QAAAG,EAAA,+CAAA;AACA;AAAA,MAAA;AAGJ,UAAA,CAAAH,EAAA,MAAA,mBAAAZ,EAAA,cAAA;AACI,cAAAgB,IAAA,OAAA,iBAAAJ,CAAA,EAAA;AAEA,SAAAI,MAAA,SAAAA,MAAA,QACIJ,EAAA,MAAA,kBAAA,GAAAZ,EAAA,YAAA;AAAA,MACJ;AAGJ,MAAAY,EAAA,aAAA,UAAA,KACIA,EAAA,aAAA,YAAA,IAAA,GAGJA,EAAA,eAAA;AAAA,QAAkB,UAAA;AAAA,QACJ,OAAA;AAAA,QACH,QAAA;AAAA,MACC,CAAA,GAGZA,EAAA,MAAA,EAAA,eAAA,GAAA,CAAA;AAAA,IAAgC,wBAGpC,CAAAK,MAAA;AACI,cAAAA,EAAA,KAAA;AAAA,QAAe,KAAA;AAEP,UAAAA,EAAA,eAAA,GACAX,EAAA;AACA;AAAA,QAAA,KAAA;AAEA,UAAAW,EAAA,eAAA,GACAV,EAAA;AACA;AAAA,QAAA,KAAA;AAEA,UAAAU,EAAA,eAAA,GACAZ,EAAA,QAAA;AACA;AAAA,QAAA,KAAA;AAEA,UAAAY,EAAA,eAAA,GACAZ,EAAA,QAAAP,EAAA,MAAA,SAAA;AACA;AAAA,MAAA;AAAA,IACR;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GC/FDoB,IAAA,CAAAC,GAAAC,MAAA;;AACH,QAAAC,IAAAxB,IAAAyB,IAAAF,EAAA,YAAA,gBAAAE,EAAA,UAAA,EAAA,GAEA,EAAA,GAAAC,EAAA,IAAAC,EAAA,GACA,EAAA,QAAAC,EAAA,IAAAC,EAAA,GAGAC,IAAA,MAAA;AACI,UAAAC,IAAAC,EAAAV,CAAA,GACAW,IAAAL,EAAA,OACAM,IAAAD,IAAA;AAEA,QAAAE,IAAA,IACAC,IAAA;AAEA,aAAAC,IAAA,GAAAA,IAAAN,EAAA,QAAAM,KAAA;AAEI,YAAAtB,IADAgB,EAAAM,CAAA;AAGA,UAAA,CAAAtB;AACI;AAGJ,YAAAuB,IAAAvB,EAAA,sBAAA;AAGA,UAAAuB,EAAA,MAAAJ;AACI;AAIJ,YAAAK,IAAA,KAAA,IAAAD,EAAA,QAAAL,CAAA,IAAA,KAAA,IAAAK,EAAA,KAAA,CAAA;AACA,UAAAC,KAAA;AACI;AAIJ,YAAAC,IAAAD,IAAAD,EAAA;AAEA,MAAAE,IAAAJ,MACIA,IAAAI,GACAL,IAAAE;AAAA,IACJ;AAIJ,IAAAF,MAAA,MAAAX,EAAA,UAAAW,MACIX,EAAA,QAAAW;AAAA,EACJ;AAGJ,SAAAM,EAAA,CAAAf,GAAAE,CAAA,GAAAE,GAAA,EAAA,UAAA,KAAA,UAAA,GAAA,CAAA,GAEAY,EAAA,MAAA;AACI,IAAAV,EAAAV,CAAA,EAAA,UACIQ,EAAA;AAAA,EACJ,CAAA,GAGJ;AAAA,IAAO,aAAAN;AAAA,EACH;AAER,GCmEImB,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAAA,EACM,MAAA;AAErB;;;;;;;;iBAxGA,EAAA,EAAA,IAAAC,EAAA,GASAC,IAAA9C,EAAA,IAAA,GAEA+C,IAAA7C,EAAA,MAAAC,EAAA,MAAA,IAAA,CAAAC,OAAA,EAAA,GAAAA,EAAA,EAAA,CAAA,GAGA4C,IAAA9C;AAAA,MAAqB,MAAAC,EAAA,MAAA,IAAA,CAAAC,GAAAG,OAAA;AAAA,QAEkB,SAAAS,EAAAZ,EAAA,UAAA;AAAA,QACU,eAAAG;AAAA,QACrC,UAAAH,EAAA;AAAA,MACe,EAAA,EAAA;AAAA,QAElB,CAAAA,MAAA,CAAAA,EAAA,YAAA,CAAA,CAAAA,EAAA;AAAA,MAEgC;AAAA,IACjC,GAIR6C,IAAA/C,EAAA,MAAA8C,EAAA,MAAA,IAAA,CAAAE,MAAAA,EAAA,OAAA,CAAA,GAEAC,IAAAjD,EAAA,OAAA;AAAA,MAAqD,yCAAAkD,EAAA,SAAA;AAAA,IACK,EAAA,GAG1DC,IAAAnD,EAAA,MAAA;AACI,YAAAoD,IAAAN,EAAA,MAAAO,EAAA,KAAA;AAEA,aAAAD,IAAAA,EAAA,gBAAA;AAAA,IAA6C,CAAA,GAGjD,EAAA,aAAAC,EAAA,IAAAlC,EAAA4B,GAAA;AAAA,MAA2E,SAAAO,EAAArD,GAAA,aAAA;AAAA,IACpC,CAAA,GAGvC,EAAA,KAAAiD,GAAA,QAAAK,EAAA,IAAAC,EAAAZ,CAAA;AAEA,IAAAa;AAAA,MAAAN;AAAA,MACI,CAAAO,MAAA;AAEI,QAAA,OAAA,SAAAA,CAAA,KACIC,EAAA,uBAAAD,CAAA;AAAA,MACJ;AAAA,MACJ;AAAA,QACA,UAAA;AAAA;AAAA,MACc;AAAA,IACd,GAGJhD;AAAA,MAAA,MAAAT,EAAA;AAAA,MACgB,CAAAyD,MAAA;AAER,QAAA,OAAA,SAAAA,CAAA,KAAAb,EAAA,MAAAa,CAAA,EAAA,YACI1C,EAAA,mEAAA;AAAA,MACJ;AAAA,IACJ;AAGJ,UAAA4C,IAAAC,EAAA,6BAAA;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { ref as b, computed as n, defineComponent as _, toRefs as m } from "vue";
2
- import { B as p } from "./typography.Bq-EGj9y.js";
2
+ import { B as p } from "./typography.C8lPlsbD.js";
3
3
  import "./index.Cl4_42j5.js";
4
4
  import { n as v } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
5
5
  import "../assets/avatar.css";
@@ -68,4 +68,4 @@ const W = B.exports;
68
68
  export {
69
69
  W as B
70
70
  };
71
- //# sourceMappingURL=avatar.CUCH3CTc.js.map
71
+ //# sourceMappingURL=avatar.rwWPYJnt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar.CUCH3CTc.js","sources":["../../src/composables/initials.ts","../../src/components/avatar/components/avatar-image/avatar-image.types.ts","../../src/components/avatar/components/avatar-image/avatar-image.vue","../../src/components/avatar/avatar.vue"],"sourcesContent":["import { computed, type ComputedRef, ref } from 'vue';\nimport { type MaybeRef } from '@/types/refs';\n\n/** Extracts the first letter of a username\n * @param username - The name to return the initials of\n * Common patterns:\n * 1. John => J\n * 2. John Smith => J\n * John Smith Doe Holly => J\n */\nexport const useInitials = (username: MaybeRef<string | null>): ComputedRef<string | null> => {\n const computedUsername = ref(username);\n return computed(() => (computedUsername.value ? computedUsername.value.trim().charAt(0).toUpperCase() : null));\n};\n","export enum BentoAvatarImageVariant {\n LARGE = 'large',\n SMALL = 'small',\n}\n\nexport enum BentoAvatarImageColor {\n BLUE = 'blue',\n GREEN = 'green',\n RED = 'red',\n YELLOW = 'yellow',\n}\n","<template>\n <div class=\"b-avatar-image\" :class=\"conditionalClasses\" aria-hidden=\"true\" data-testid=\"avatar\">\n <img v-if=\"src\" :src=\"src\" class=\"b-avatar-image__image\" alt=\"\" data-testid=\"avatar-content\" />\n <div v-else class=\"b-avatar-image__default\" data-testid=\"avatar-content\">\n <bento-typography el=\"span\" variant=\"body\" strongest>\n {{ initials }}\n </bento-typography>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, toRefs } from 'vue';\n import { BentoAvatarImageColor, BentoAvatarImageVariant } from './avatar-image.types';\n import { BentoTypography } from '@/components/typography';\n import { useInitials } from '@/composables';\n\n const props = defineProps({\n color: { default: BentoAvatarImageColor.YELLOW },\n src: { default: null },\n username: { default: null },\n variant: { default: BentoAvatarImageVariant.LARGE }\n});\n\n const { username } = toRefs(props);\n const initials = useInitials(username);\n\n const conditionalClasses = computed(() => ({\n [`b-avatar-image--${BentoAvatarImageVariant.SMALL}`]: props.variant === BentoAvatarImageVariant.SMALL,\n [`b-avatar-image--${props.color}`]: props.color,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * Image used as user profile inside bento-avatar.\n *\n * @example\n * import { AvatarImage } from './components/avatar-image';\n *\n * export default {\n * components: { AvatarImage },\n * template: `<avatar-image :src=\"userAvatarSrc\" username=\"Jane\" />`\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./avatar-image.scss\" />\n","<template>\n <div class=\"b-avatar\" :role=\"iconOnly ? 'img' : null\" :aria-label=\"computedAriaLabel\">\n <avatar-image\n :src=\"src\"\n :username=\"computedUsername\"\n :variant=\"BentoAvatarImageVariant.SMALL\"\n :color=\"avatarColor\"\n />\n <bento-typography v-if=\"!iconOnly\" class=\"b-avatar__label\" el=\"span\" variant=\"body\">\n {{ username }}\n </bento-typography>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, toRefs } from 'vue';\n import { AvatarImage, BentoAvatarImageColor, BentoAvatarImageVariant } from './components/avatar-image';\n import { BentoTypography } from '@/components/typography';\n import { useInitials } from '@/composables';\n\n const props = defineProps({\n iconOnly: { type: Boolean, default: false },\n src: { default: null },\n username: null\n});\n\n const { username } = toRefs(props);\n\n const computedAriaLabel = computed(() => (props.iconOnly ? props.username : null));\n const computedUsername = computed(() => (!props.src ? props.username : null));\n const initials = useInitials(username);\n\n // Returns the UTF-16 char code\n const charCode = computed(() => (initials.value ? initials.value.charCodeAt(0) - 65 : null));\n\n // Returns a computed color based on the letter passed\n const avatarColor = computed(() => {\n const numberOfAlphabetLetters = 26;\n const numberOfColors = Object.keys(BentoAvatarImageColor).length;\n const rangeStep = numberOfAlphabetLetters / numberOfColors;\n\n if (charCode.value <= rangeStep) {\n return BentoAvatarImageColor.YELLOW;\n }\n if (charCode.value <= rangeStep * 2) {\n return BentoAvatarImageColor.BLUE;\n }\n if (charCode.value <= rangeStep * 3) {\n return BentoAvatarImageColor.GREEN;\n }\n return BentoAvatarImageColor.RED;\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Displays an user profile including an avatar and optionally a label.\n *\n * @example\n * import { BentoAvatar } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoAvatar },\n * template: `<bento-avatar :src=\"userAvatarSrc\" username=\"Jane\" />`\n * }\n */\n export default {\n name: 'bento-avatar',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./avatar.scss\" />\n"],"names":["useInitials","username","computedUsername","ref","computed","BentoAvatarImageVariant","BentoAvatarImageVariant2","BentoAvatarImageColor","BentoAvatarImageColor2","__default__$1","toRefs","props","initials","conditionalClasses","__default__","computedAriaLabel","charCode","avatarColor","rangeStep"],"mappings":";;;;;AAUO,MAAAA,IAAA,CAAAC,MAAA;AACH,QAAAC,IAAAC,EAAAF,CAAA;AACA,SAAAG,EAAA,MAAAF,EAAA,QAAAA,EAAA,MAAA,KAAA,EAAA,OAAA,CAAA,EAAA,YAAA,IAAA,IAAA;AACJ;ACbO,IAAAG,IAAA,kBAAAC,OACHA,EAAA,QAAA,SACAA,EAAA,QAAA,SAFQA,IAAAD,KAAA,CAAA,CAAA,GAKLE,IAAA,kBAAAC,OACHA,EAAA,OAAA,QACAA,EAAA,QAAA,SACAA,EAAA,MAAA,OACAA,EAAA,SAAA,UAJQA,IAAAD,KAAA,CAAA,CAAA;ACwCR,MAAAE,IAAA,CAAA;;;;;;;;;;iBArBA,EAAA,UAAAR,EAAA,IAAAS,EAAAC,CAAA,GACAC,IAAAZ,EAAAC,CAAA,GAEAY,IAAAT,EAAA,OAAA;AAAA,MAA2C,CAAA,mBAAAC,EAAA,KAAA,EAAA,GAAAM,EAAA,YAAAN,EAAA;AAAA,MACyD,CAAA,mBAAAM,EAAA,KAAA,EAAA,GAAAA,EAAA;AAAA,IACtD,EAAA;;;;;;;;;;;;;;;qBCqC9CG,IAAA;AAAA,EAAe,MAAA;AAEf;;;;;;;;iBA1CA,EAAA,UAAAb,EAAA,IAAAS,EAAAC,CAAA,GAEAI,IAAAX,EAAA,MAAAO,EAAA,WAAAA,EAAA,WAAA,IAAA,GACAT,IAAAE,EAAA,MAAAO,EAAA,MAAA,OAAAA,EAAA,QAAA,GACAC,IAAAZ,EAAAC,CAAA,GAGAe,IAAAZ,EAAA,MAAAQ,EAAA,QAAAA,EAAA,MAAA,WAAA,CAAA,IAAA,KAAA,IAAA,GAGAK,IAAAb,EAAA,MAAA;AAGI,YAAAc,IAAA,KADA,OAAA,KAAAX,CAAA,EAAA;AAGA,aAAAS,EAAA,SAAAE,IACIX,EAAA,SAEJS,EAAA,SAAAE,IAAA,IACIX,EAAA,OAEJS,EAAA,SAAAE,IAAA,IACIX,EAAA,QAEJA,EAAA;AAAA,IAA6B,CAAA;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"avatar.rwWPYJnt.js","sources":["../../src/composables/initials.ts","../../src/components/avatar/components/avatar-image/avatar-image.types.ts","../../src/components/avatar/components/avatar-image/avatar-image.vue","../../src/components/avatar/avatar.vue"],"sourcesContent":["import { computed, type ComputedRef, ref } from 'vue';\nimport { type MaybeRef } from '@/types/refs';\n\n/** Extracts the first letter of a username\n * @param username - The name to return the initials of\n * Common patterns:\n * 1. John => J\n * 2. John Smith => J\n * John Smith Doe Holly => J\n */\nexport const useInitials = (username: MaybeRef<string | null>): ComputedRef<string | null> => {\n const computedUsername = ref(username);\n return computed(() => (computedUsername.value ? computedUsername.value.trim().charAt(0).toUpperCase() : null));\n};\n","export enum BentoAvatarImageVariant {\n LARGE = 'large',\n SMALL = 'small',\n}\n\nexport enum BentoAvatarImageColor {\n BLUE = 'blue',\n GREEN = 'green',\n RED = 'red',\n YELLOW = 'yellow',\n}\n","<template>\n <div class=\"b-avatar-image\" :class=\"conditionalClasses\" aria-hidden=\"true\" data-testid=\"avatar\">\n <img v-if=\"src\" :src=\"src\" class=\"b-avatar-image__image\" alt=\"\" data-testid=\"avatar-content\" />\n <div v-else class=\"b-avatar-image__default\" data-testid=\"avatar-content\">\n <bento-typography el=\"span\" variant=\"body\" strongest>\n {{ initials }}\n </bento-typography>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, toRefs } from 'vue';\n import { BentoAvatarImageColor, BentoAvatarImageVariant } from './avatar-image.types';\n import { BentoTypography } from '@/components/typography';\n import { useInitials } from '@/composables';\n\n const props = defineProps({\n color: { default: BentoAvatarImageColor.YELLOW },\n src: { default: null },\n username: { default: null },\n variant: { default: BentoAvatarImageVariant.LARGE }\n});\n\n const { username } = toRefs(props);\n const initials = useInitials(username);\n\n const conditionalClasses = computed(() => ({\n [`b-avatar-image--${BentoAvatarImageVariant.SMALL}`]: props.variant === BentoAvatarImageVariant.SMALL,\n [`b-avatar-image--${props.color}`]: props.color,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * Image used as user profile inside bento-avatar.\n *\n * @example\n * import { AvatarImage } from './components/avatar-image';\n *\n * export default {\n * components: { AvatarImage },\n * template: `<avatar-image :src=\"userAvatarSrc\" username=\"Jane\" />`\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./avatar-image.scss\" />\n","<template>\n <div class=\"b-avatar\" :role=\"iconOnly ? 'img' : null\" :aria-label=\"computedAriaLabel\">\n <avatar-image\n :src=\"src\"\n :username=\"computedUsername\"\n :variant=\"BentoAvatarImageVariant.SMALL\"\n :color=\"avatarColor\"\n />\n <bento-typography v-if=\"!iconOnly\" class=\"b-avatar__label\" el=\"span\" variant=\"body\">\n {{ username }}\n </bento-typography>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, toRefs } from 'vue';\n import { AvatarImage, BentoAvatarImageColor, BentoAvatarImageVariant } from './components/avatar-image';\n import { BentoTypography } from '@/components/typography';\n import { useInitials } from '@/composables';\n\n const props = defineProps({\n iconOnly: { type: Boolean, default: false },\n src: { default: null },\n username: null\n});\n\n const { username } = toRefs(props);\n\n const computedAriaLabel = computed(() => (props.iconOnly ? props.username : null));\n const computedUsername = computed(() => (!props.src ? props.username : null));\n const initials = useInitials(username);\n\n // Returns the UTF-16 char code\n const charCode = computed(() => (initials.value ? initials.value.charCodeAt(0) - 65 : null));\n\n // Returns a computed color based on the letter passed\n const avatarColor = computed(() => {\n const numberOfAlphabetLetters = 26;\n const numberOfColors = Object.keys(BentoAvatarImageColor).length;\n const rangeStep = numberOfAlphabetLetters / numberOfColors;\n\n if (charCode.value <= rangeStep) {\n return BentoAvatarImageColor.YELLOW;\n }\n if (charCode.value <= rangeStep * 2) {\n return BentoAvatarImageColor.BLUE;\n }\n if (charCode.value <= rangeStep * 3) {\n return BentoAvatarImageColor.GREEN;\n }\n return BentoAvatarImageColor.RED;\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Displays an user profile including an avatar and optionally a label.\n *\n * @example\n * import { BentoAvatar } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoAvatar },\n * template: `<bento-avatar :src=\"userAvatarSrc\" username=\"Jane\" />`\n * }\n */\n export default {\n name: 'bento-avatar',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./avatar.scss\" />\n"],"names":["useInitials","username","computedUsername","ref","computed","BentoAvatarImageVariant","BentoAvatarImageVariant2","BentoAvatarImageColor","BentoAvatarImageColor2","__default__$1","toRefs","props","initials","conditionalClasses","__default__","computedAriaLabel","charCode","avatarColor","rangeStep"],"mappings":";;;;;AAUO,MAAAA,IAAA,CAAAC,MAAA;AACH,QAAAC,IAAAC,EAAAF,CAAA;AACA,SAAAG,EAAA,MAAAF,EAAA,QAAAA,EAAA,MAAA,KAAA,EAAA,OAAA,CAAA,EAAA,YAAA,IAAA,IAAA;AACJ;ACbO,IAAAG,IAAA,kBAAAC,OACHA,EAAA,QAAA,SACAA,EAAA,QAAA,SAFQA,IAAAD,KAAA,CAAA,CAAA,GAKLE,IAAA,kBAAAC,OACHA,EAAA,OAAA,QACAA,EAAA,QAAA,SACAA,EAAA,MAAA,OACAA,EAAA,SAAA,UAJQA,IAAAD,KAAA,CAAA,CAAA;ACwCR,MAAAE,IAAA,CAAA;;;;;;;;;;iBArBA,EAAA,UAAAR,EAAA,IAAAS,EAAAC,CAAA,GACAC,IAAAZ,EAAAC,CAAA,GAEAY,IAAAT,EAAA,OAAA;AAAA,MAA2C,CAAA,mBAAAC,EAAA,KAAA,EAAA,GAAAM,EAAA,YAAAN,EAAA;AAAA,MACyD,CAAA,mBAAAM,EAAA,KAAA,EAAA,GAAAA,EAAA;AAAA,IACtD,EAAA;;;;;;;;;;;;;;;qBCqC9CG,IAAA;AAAA,EAAe,MAAA;AAEf;;;;;;;;iBA1CA,EAAA,UAAAb,EAAA,IAAAS,EAAAC,CAAA,GAEAI,IAAAX,EAAA,MAAAO,EAAA,WAAAA,EAAA,WAAA,IAAA,GACAT,IAAAE,EAAA,MAAAO,EAAA,MAAA,OAAAA,EAAA,QAAA,GACAC,IAAAZ,EAAAC,CAAA,GAGAe,IAAAZ,EAAA,MAAAQ,EAAA,QAAAA,EAAA,MAAA,WAAA,CAAA,IAAA,KAAA,IAAA,GAGAK,IAAAb,EAAA,MAAA;AAGI,YAAAc,IAAA,KADA,OAAA,KAAAX,CAAA,EAAA;AAGA,aAAAS,EAAA,SAAAE,IACIX,EAAA,SAEJS,EAAA,SAAAE,IAAA,IACIX,EAAA,OAEJS,EAAA,SAAAE,IAAA,IACIX,EAAA,QAEJA,EAAA;AAAA,IAA6B,CAAA;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as b, computed as r, ref as d } from "vue";
2
- import { B as f } from "./typography.Bq-EGj9y.js";
2
+ import { B as f } from "./typography.C8lPlsbD.js";
3
3
  import { u as p } from "./use-has-slot.C9lQZ6nz.js";
4
4
  import { n as _ } from "./_plugin-vue2_normalizer.CeySl7Fu.js";
5
5
  import "../assets/base-button.css";
@@ -83,4 +83,4 @@ export {
83
83
  x as B,
84
84
  e as a
85
85
  };
86
- //# sourceMappingURL=base-button.IN4bpcds.js.map
86
+ //# sourceMappingURL=base-button.BPRPrO0p.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-button.IN4bpcds.js","sources":["../../src/components/internal/base-button/base-button.types.ts","../../src/components/internal/base-button/base-button.vue"],"sourcesContent":["export enum BentoBaseButtonPropClass {\n DESTRUCTIVE = 'critical',\n ICON_ONLY = 'icon-only',\n}\n\nexport enum BentoBaseButtonEvent {\n BLUR = 'blur',\n CLICK = 'click',\n FOCUS = 'focus',\n KEYDOWN_ESC = 'keydown.esc',\n}\n\nexport enum BaseButtonType {\n BUTTON = 'button',\n RESET = 'reset',\n SUBMIT = 'submit',\n}\n","<template>\n <button\n ref=\"bentoBaseButtonRef\"\n v-bind=\"$attrs\"\n class=\"b-base-button\"\n :class=\"conditionalClasses\"\n :disabled=\"disabled\"\n :type=\"type\"\n :aria-expanded=\"ariaAttributes['aria-expanded']\"\n @click=\"onClickButton\"\n @focus=\"onFocusButton\"\n @blur=\"onBlurButton\"\n >\n <span v-if=\"hasSlot('iconLeft')\" class=\"b-base-button__icon-left\" data-testid=\"icon-button-left\">\n <slot name=\"iconLeft\" />\n </span>\n <bento-typography v-if=\"hasSlot('default')\" el=\"span\" variant=\"body\" stronger class=\"b-base-button__label\">\n <slot />\n </bento-typography>\n <span v-if=\"hasSlot('iconRight')\" class=\"b-base-button__icon-right\" data-testid=\"icon-button-right\">\n <slot name=\"iconRight\" />\n </span>\n </button>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, type PropType, ref } from 'vue';\n import { BentoBaseButtonEvent, BentoBaseButtonPropClass } from './base-button.types';\n import type { ButtonHTMLAttributes } from 'vue/types/jsx.d.ts';\n import { BentoTypography } from '@/components/typography';\n import { useHasSlot } from '@/composables';\n import { type Booleanish } from '@/types/prop-types';\n\n /**\n * Base button component to use as a base for all the various types of bento buttons. For internal use only.\n *\n * * @example\n * import { BaseButton, BaseButtonEvent } from '@/components/internal/base-button';\n * import YourImportedIcon from @adyen/ui-assets-icons-16/example-icon';\n *\n * export default {\n * components: { BaseButton, YourImportedIcon },\n * props: {\n * text:\n * },\n * template: `\n * <base-button class=\"your-custom-button-styles\" @click=\"onClick\">\n * <template #iconLeft><your-imported-icon></template>\n * Button text\n * <template #iconRight><your-imported-icon></template>\n * </base-button>\n * `,\n * emits: [BentoButtonEvent.CLICK],\n * setup: (prps, { emit }) => {\n * const onClick = value => emit(BaseButtonEvent.CLICK, value);\n *\n * return {\n * onClick,\n * };\n * }\n * }\n */\n export default defineComponent({\n name: 'base-button',\n components: { BentoTypography },\n props: {\n /**\n * Disables button functionality\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n /**\n * Displays button as critical\n */\n critical: {\n type: Boolean,\n default: false,\n },\n /**\n * The default behavior of the button.\n * Possible values are: 'button', 'reset', 'submit'\n */\n type: {\n type: String as PropType<ButtonHTMLAttributes['type']>,\n default: 'button',\n },\n },\n emits: [\n BentoBaseButtonEvent.CLICK,\n BentoBaseButtonEvent.FOCUS,\n BentoBaseButtonEvent.BLUR,\n BentoBaseButtonEvent.KEYDOWN_ESC,\n ],\n setup(props, { slots, emit, attrs }) {\n const ariaAttributes = computed(() => ({\n 'aria-expanded': attrs['aria-expanded']?.toString() as Booleanish,\n }));\n\n const bentoBaseButtonRef = ref(null);\n\n const conditionalClasses = computed(() => ({\n [`b-base-button--${BentoBaseButtonPropClass.DESTRUCTIVE}`]: props.critical,\n [`b-base-button--${BentoBaseButtonPropClass.ICON_ONLY}`]: !slots.default,\n }));\n\n const onClickButton = (e: MouseEvent) => {\n if (!props.disabled) {\n emit(BentoBaseButtonEvent.CLICK, e);\n } else {\n e.preventDefault();\n e.stopPropagation();\n }\n };\n\n const onFocusButton = (e: FocusEvent) => {\n emit(BentoBaseButtonEvent.FOCUS, e);\n };\n\n const onBlurButton = (e: FocusEvent) => {\n emit(BentoBaseButtonEvent.BLUR, e);\n };\n\n return {\n // Values\n ariaAttributes,\n conditionalClasses,\n\n // Methods\n onClickButton,\n onFocusButton,\n onBlurButton,\n hasSlot: useHasSlot(slots),\n\n // Refs\n bentoBaseButtonRef,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./base-button.scss\" />\n"],"names":["BentoBaseButtonPropClass","BentoBaseButtonPropClass2","BentoBaseButtonEvent","BentoBaseButtonEvent2","_sfc_main","defineComponent","BentoTypography","props","slots","emit","attrs","ariaAttributes","computed","_a","bentoBaseButtonRef","ref","conditionalClasses","e","useHasSlot"],"mappings":";;;;;AAAO,IAAAA,IAAA,kBAAAC,OACHA,EAAA,cAAA,YACAA,EAAA,YAAA,aAFQA,IAAAD,KAAA,CAAA,CAAA,GAKLE,IAAA,kBAAAC,OACHA,EAAA,OAAA,QACAA,EAAA,QAAA,SACAA,EAAA,QAAA,SACAA,EAAA,cAAA,eAJQA,IAAAD,KAAA,CAAA,CAAA;ACyDZ,MAAAE,IAAAC,EAAA;AAAA,EAAA,MAAA;AAAA,EACA,YAAA,EAAA,iBAAAC,EAAA;AAAA,EACA,OAAA;AAAA;AAAA;AAAA;AAAA,IACA,UAAA;AAAA,MAIA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IACA,UAAA;AAAA,MAIA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IACA,MAAA;AAAA,MAKA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,OAAA;AAAA,IACAJ,EAAA;AAAA,IACAA,EAAA;AAAA,IACAA,EAAA;AAAA,IACAA,EAAA;AAAA,EACA;AAAA,EACA,MAAAK,GAAA,EAAA,OAAAC,GAAA,MAAAC,GAAA,OAAAC,EAAA,GAAA;AAEA,UAAAC,IAAAC,EAAA,MAAA;;AAAA;AAAA,QAAA,kBAAAC,IAAAH,EAAA,eAAA,MAAA,gBAAAG,EAAA;AAAA,MACA;AAAA,KAAA,GAGAC,IAAAC,EAAA,IAAA,GAEAC,IAAAJ,EAAA,OAAA;AAAA,MAAA,CAAA,kBAAAZ,EAAA,WAAA,EAAA,GAAAO,EAAA;AAAA,MACA,CAAA,kBAAAP,EAAA,SAAA,EAAA,GAAA,CAAAQ,EAAA;AAAA,IACA,EAAA;AAoBA,WAAA;AAAA;AAAA,MAAA,gBAAAG;AAAA,MAEA,oBAAAK;AAAA;AAAA,MACA,eApBA,CAAAC,MAAA;AACA,QAAAV,EAAA,YAGAU,EAAA,eAAA,GACAA,EAAA,gBAAA,KAHAR,EAAAP,EAAA,OAAAe,CAAA;AAAA,MAIA;AAAA,MAiBA,eAdA,CAAAA,MAAA;AACA,QAAAR,EAAAP,EAAA,OAAAe,CAAA;AAAA,MAAA;AAAA,MAcA,cAXA,CAAAA,MAAA;AACA,QAAAR,EAAAP,EAAA,MAAAe,CAAA;AAAA,MAAA;AAAA,MAWA,SAAAC,EAAAV,CAAA;AAAA;AAAA,MACA,oBAAAM;AAAA,IAGA;AAAA,EACA;AAEA,CAAA;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"base-button.BPRPrO0p.js","sources":["../../src/components/internal/base-button/base-button.types.ts","../../src/components/internal/base-button/base-button.vue"],"sourcesContent":["export enum BentoBaseButtonPropClass {\n DESTRUCTIVE = 'critical',\n ICON_ONLY = 'icon-only',\n}\n\nexport enum BentoBaseButtonEvent {\n BLUR = 'blur',\n CLICK = 'click',\n FOCUS = 'focus',\n KEYDOWN_ESC = 'keydown.esc',\n}\n\nexport enum BaseButtonType {\n BUTTON = 'button',\n RESET = 'reset',\n SUBMIT = 'submit',\n}\n","<template>\n <button\n ref=\"bentoBaseButtonRef\"\n v-bind=\"$attrs\"\n class=\"b-base-button\"\n :class=\"conditionalClasses\"\n :disabled=\"disabled\"\n :type=\"type\"\n :aria-expanded=\"ariaAttributes['aria-expanded']\"\n @click=\"onClickButton\"\n @focus=\"onFocusButton\"\n @blur=\"onBlurButton\"\n >\n <span v-if=\"hasSlot('iconLeft')\" class=\"b-base-button__icon-left\" data-testid=\"icon-button-left\">\n <slot name=\"iconLeft\" />\n </span>\n <bento-typography v-if=\"hasSlot('default')\" el=\"span\" variant=\"body\" stronger class=\"b-base-button__label\">\n <slot />\n </bento-typography>\n <span v-if=\"hasSlot('iconRight')\" class=\"b-base-button__icon-right\" data-testid=\"icon-button-right\">\n <slot name=\"iconRight\" />\n </span>\n </button>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, type PropType, ref } from 'vue';\n import { BentoBaseButtonEvent, BentoBaseButtonPropClass } from './base-button.types';\n import type { ButtonHTMLAttributes } from 'vue/types/jsx.d.ts';\n import { BentoTypography } from '@/components/typography';\n import { useHasSlot } from '@/composables';\n import { type Booleanish } from '@/types/prop-types';\n\n /**\n * Base button component to use as a base for all the various types of bento buttons. For internal use only.\n *\n * * @example\n * import { BaseButton, BaseButtonEvent } from '@/components/internal/base-button';\n * import YourImportedIcon from @adyen/ui-assets-icons-16/example-icon';\n *\n * export default {\n * components: { BaseButton, YourImportedIcon },\n * props: {\n * text:\n * },\n * template: `\n * <base-button class=\"your-custom-button-styles\" @click=\"onClick\">\n * <template #iconLeft><your-imported-icon></template>\n * Button text\n * <template #iconRight><your-imported-icon></template>\n * </base-button>\n * `,\n * emits: [BentoButtonEvent.CLICK],\n * setup: (prps, { emit }) => {\n * const onClick = value => emit(BaseButtonEvent.CLICK, value);\n *\n * return {\n * onClick,\n * };\n * }\n * }\n */\n export default defineComponent({\n name: 'base-button',\n components: { BentoTypography },\n props: {\n /**\n * Disables button functionality\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n /**\n * Displays button as critical\n */\n critical: {\n type: Boolean,\n default: false,\n },\n /**\n * The default behavior of the button.\n * Possible values are: 'button', 'reset', 'submit'\n */\n type: {\n type: String as PropType<ButtonHTMLAttributes['type']>,\n default: 'button',\n },\n },\n emits: [\n BentoBaseButtonEvent.CLICK,\n BentoBaseButtonEvent.FOCUS,\n BentoBaseButtonEvent.BLUR,\n BentoBaseButtonEvent.KEYDOWN_ESC,\n ],\n setup(props, { slots, emit, attrs }) {\n const ariaAttributes = computed(() => ({\n 'aria-expanded': attrs['aria-expanded']?.toString() as Booleanish,\n }));\n\n const bentoBaseButtonRef = ref(null);\n\n const conditionalClasses = computed(() => ({\n [`b-base-button--${BentoBaseButtonPropClass.DESTRUCTIVE}`]: props.critical,\n [`b-base-button--${BentoBaseButtonPropClass.ICON_ONLY}`]: !slots.default,\n }));\n\n const onClickButton = (e: MouseEvent) => {\n if (!props.disabled) {\n emit(BentoBaseButtonEvent.CLICK, e);\n } else {\n e.preventDefault();\n e.stopPropagation();\n }\n };\n\n const onFocusButton = (e: FocusEvent) => {\n emit(BentoBaseButtonEvent.FOCUS, e);\n };\n\n const onBlurButton = (e: FocusEvent) => {\n emit(BentoBaseButtonEvent.BLUR, e);\n };\n\n return {\n // Values\n ariaAttributes,\n conditionalClasses,\n\n // Methods\n onClickButton,\n onFocusButton,\n onBlurButton,\n hasSlot: useHasSlot(slots),\n\n // Refs\n bentoBaseButtonRef,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./base-button.scss\" />\n"],"names":["BentoBaseButtonPropClass","BentoBaseButtonPropClass2","BentoBaseButtonEvent","BentoBaseButtonEvent2","_sfc_main","defineComponent","BentoTypography","props","slots","emit","attrs","ariaAttributes","computed","_a","bentoBaseButtonRef","ref","conditionalClasses","e","useHasSlot"],"mappings":";;;;;AAAO,IAAAA,IAAA,kBAAAC,OACHA,EAAA,cAAA,YACAA,EAAA,YAAA,aAFQA,IAAAD,KAAA,CAAA,CAAA,GAKLE,IAAA,kBAAAC,OACHA,EAAA,OAAA,QACAA,EAAA,QAAA,SACAA,EAAA,QAAA,SACAA,EAAA,cAAA,eAJQA,IAAAD,KAAA,CAAA,CAAA;ACyDZ,MAAAE,IAAAC,EAAA;AAAA,EAAA,MAAA;AAAA,EACA,YAAA,EAAA,iBAAAC,EAAA;AAAA,EACA,OAAA;AAAA;AAAA;AAAA;AAAA,IACA,UAAA;AAAA,MAIA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IACA,UAAA;AAAA,MAIA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA;AAAA;AAAA;AAAA;AAAA,IACA,MAAA;AAAA,MAKA,MAAA;AAAA,MACA,SAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,OAAA;AAAA,IACAJ,EAAA;AAAA,IACAA,EAAA;AAAA,IACAA,EAAA;AAAA,IACAA,EAAA;AAAA,EACA;AAAA,EACA,MAAAK,GAAA,EAAA,OAAAC,GAAA,MAAAC,GAAA,OAAAC,EAAA,GAAA;AAEA,UAAAC,IAAAC,EAAA,MAAA;;AAAA;AAAA,QAAA,kBAAAC,IAAAH,EAAA,eAAA,MAAA,gBAAAG,EAAA;AAAA,MACA;AAAA,KAAA,GAGAC,IAAAC,EAAA,IAAA,GAEAC,IAAAJ,EAAA,OAAA;AAAA,MAAA,CAAA,kBAAAZ,EAAA,WAAA,EAAA,GAAAO,EAAA;AAAA,MACA,CAAA,kBAAAP,EAAA,SAAA,EAAA,GAAA,CAAAQ,EAAA;AAAA,IACA,EAAA;AAoBA,WAAA;AAAA;AAAA,MAAA,gBAAAG;AAAA,MAEA,oBAAAK;AAAA;AAAA,MACA,eApBA,CAAAC,MAAA;AACA,QAAAV,EAAA,YAGAU,EAAA,eAAA,GACAA,EAAA,gBAAA,KAHAR,EAAAP,EAAA,OAAAe,CAAA;AAAA,MAIA;AAAA,MAiBA,eAdA,CAAAA,MAAA;AACA,QAAAR,EAAAP,EAAA,OAAAe,CAAA;AAAA,MAAA;AAAA,MAcA,cAXA,CAAAA,MAAA;AACA,QAAAR,EAAAP,EAAA,MAAAe,CAAA;AAAA,MAAA;AAAA,MAWA,SAAAC,EAAAV,CAAA;AAAA;AAAA,MACA,oBAAAM;AAAA,IAGA;AAAA,EACA;AAEA,CAAA;;;;;;;;;;;;;"}