@adyen/bento-vue3 1.102.0 → 1.103.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/dist/@types/index.d.ts +20 -3
  2. package/dist/accordion.js +1 -1
  3. package/dist/action-bar.js +1 -1
  4. package/dist/ai-tag.js +1 -1
  5. package/dist/alert.js +1 -1
  6. package/dist/anchor-scroller.js +1 -1
  7. package/dist/assets/accordion-item.css +1 -1
  8. package/dist/assets/action-bar.css +1 -1
  9. package/dist/assets/anchor-scroller.css +1 -1
  10. package/dist/assets/base-modal.css +1 -1
  11. package/dist/assets/button-actions.css +1 -1
  12. package/dist/assets/card.css +1 -1
  13. package/dist/assets/data-grid.css +1 -1
  14. package/dist/assets/dialog-page.css +1 -1
  15. package/dist/assets/empty-state.css +1 -1
  16. package/dist/assets/file-uploader.css +1 -1
  17. package/dist/assets/input-field-password.css +1 -1
  18. package/dist/assets/inspector.css +1 -1
  19. package/dist/assets/modal-fullscreen.css +1 -1
  20. package/dist/assets/navigation-menu-group.css +1 -1
  21. package/dist/assets/pagination.css +1 -1
  22. package/dist/assets/secondary-nav.css +1 -1
  23. package/dist/assets/sidepanel.css +1 -1
  24. package/dist/assets/table-of-contents.css +1 -1
  25. package/dist/assets/typography.css +1 -1
  26. package/dist/avatar.js +1 -1
  27. package/dist/button.js +3 -3
  28. package/dist/card.js +1 -1
  29. package/dist/checkbox.js +2 -2
  30. package/dist/chip.js +1 -1
  31. package/dist/chunks/{accordion-item.ZUOo715q.js → accordion-item.CbW267Sz.js} +2 -2
  32. package/dist/chunks/{accordion-item.ZUOo715q.js.map → accordion-item.CbW267Sz.js.map} +1 -1
  33. package/dist/chunks/{action-bar.BAJhAptg.js → action-bar.DhFGnRkK.js} +6 -6
  34. package/dist/chunks/{action-bar.BAJhAptg.js.map → action-bar.DhFGnRkK.js.map} +1 -1
  35. package/dist/chunks/{ai-button.B6_iVJrF.js → ai-button.CP9pT5uc.js} +3 -3
  36. package/dist/chunks/{ai-button.B6_iVJrF.js.map → ai-button.CP9pT5uc.js.map} +1 -1
  37. package/dist/chunks/{ai-tag.ZKIyJuFt.js → ai-tag.BFr1ZH3L.js} +3 -3
  38. package/dist/chunks/{ai-tag.ZKIyJuFt.js.map → ai-tag.BFr1ZH3L.js.map} +1 -1
  39. package/dist/chunks/{alert.CcCYWeBQ.js → alert.cqiNVGbY.js} +3 -3
  40. package/dist/chunks/{alert.CcCYWeBQ.js.map → alert.cqiNVGbY.js.map} +1 -1
  41. package/dist/chunks/{anchor-scroller.BeWDW53L.js → anchor-scroller.B5f_ePD6.js} +58 -57
  42. package/dist/chunks/anchor-scroller.B5f_ePD6.js.map +1 -0
  43. package/dist/chunks/{avatar.Caeba-pw.js → avatar.mper_rOW.js} +2 -2
  44. package/dist/chunks/{avatar.Caeba-pw.js.map → avatar.mper_rOW.js.map} +1 -1
  45. package/dist/chunks/{base-button.CvHl36Ue.js → base-button.DnMph3KL.js} +2 -2
  46. package/dist/chunks/{base-button.CvHl36Ue.js.map → base-button.DnMph3KL.js.map} +1 -1
  47. package/dist/chunks/{base-modal.CX-hAjsb.js → base-modal.jqTUHeSf.js} +7 -7
  48. package/dist/chunks/{base-modal.CX-hAjsb.js.map → base-modal.jqTUHeSf.js.map} +1 -1
  49. package/dist/chunks/{button-actions-with-menu.6kuQpD9F.js → button-actions-with-menu.CeOQ-ybp.js} +3 -3
  50. package/dist/chunks/{button-actions-with-menu.6kuQpD9F.js.map → button-actions-with-menu.CeOQ-ybp.js.map} +1 -1
  51. package/dist/chunks/{button-actions.Z5UJfq4v.js → button-actions.Crwvb4jD.js} +5 -5
  52. package/dist/chunks/{button-actions.Z5UJfq4v.js.map → button-actions.Crwvb4jD.js.map} +1 -1
  53. package/dist/chunks/{button.C6-bXf1h.js → button.DqN6N1_o.js} +3 -3
  54. package/dist/chunks/{button.C6-bXf1h.js.map → button.DqN6N1_o.js.map} +1 -1
  55. package/dist/chunks/{calendar.CJG-ajTq.js → calendar.D6SJ1AgX.js} +6 -6
  56. package/dist/chunks/{calendar.CJG-ajTq.js.map → calendar.D6SJ1AgX.js.map} +1 -1
  57. package/dist/chunks/{card.ZBx7yWTF.js → card.SuXJb5px.js} +3 -3
  58. package/dist/chunks/{card.ZBx7yWTF.js.map → card.SuXJb5px.js.map} +1 -1
  59. package/dist/chunks/{checkbox-group.BF3HiZK0.js → checkbox-group.DH5YEJFk.js} +5 -5
  60. package/dist/chunks/{checkbox-group.BF3HiZK0.js.map → checkbox-group.DH5YEJFk.js.map} +1 -1
  61. package/dist/chunks/{checkbox.C-Ajksp7.js → checkbox.CQYHeekb.js} +19 -19
  62. package/dist/chunks/{checkbox.C-Ajksp7.js.map → checkbox.CQYHeekb.js.map} +1 -1
  63. package/dist/chunks/{chip.5bRcjwND.js → chip.BJq22P-k.js} +3 -3
  64. package/dist/chunks/{chip.5bRcjwND.js.map → chip.BJq22P-k.js.map} +1 -1
  65. package/dist/chunks/{code-snippet.CanJ0xl8.js → code-snippet.CgMhJQS6.js} +6 -6
  66. package/dist/chunks/{code-snippet.CanJ0xl8.js.map → code-snippet.CgMhJQS6.js.map} +1 -1
  67. package/dist/chunks/{controls-group.BZ2bIoEE.js → controls-group.DR7uvwCO.js} +3 -3
  68. package/dist/chunks/{controls-group.BZ2bIoEE.js.map → controls-group.DR7uvwCO.js.map} +1 -1
  69. package/dist/chunks/{copy.C2ttscl8.js → copy.CtMGg-yB.js} +4 -4
  70. package/dist/chunks/{copy.C2ttscl8.js.map → copy.CtMGg-yB.js.map} +1 -1
  71. package/dist/chunks/{country.D1aj2TAo.js → country.fjs1j7ss.js} +2 -2
  72. package/dist/chunks/{country.D1aj2TAo.js.map → country.fjs1j7ss.js.map} +1 -1
  73. package/dist/chunks/{currency.CcKX0d5O.js → currency.DS4-apvT.js} +2 -2
  74. package/dist/chunks/{currency.CcKX0d5O.js.map → currency.DS4-apvT.js.map} +1 -1
  75. package/dist/chunks/{dashboard-section.DembWFH6.js → dashboard-section.DRabKcnw.js} +4 -4
  76. package/dist/chunks/{dashboard-section.DembWFH6.js.map → dashboard-section.DRabKcnw.js.map} +1 -1
  77. package/dist/chunks/{dashed-underline.BsheeKoz.js → dashed-underline.BTsVIses.js} +5 -5
  78. package/dist/chunks/{dashed-underline.BsheeKoz.js.map → dashed-underline.BTsVIses.js.map} +1 -1
  79. package/dist/chunks/{data-grid-template.DJr651Fu.js → data-grid-template.NHgIRCYb.js} +4 -4
  80. package/dist/chunks/{data-grid-template.DJr651Fu.js.map → data-grid-template.NHgIRCYb.js.map} +1 -1
  81. package/dist/chunks/{data-grid.CgOUUCXJ.js → data-grid.BHf954Qk.js} +23 -23
  82. package/dist/chunks/{data-grid.CgOUUCXJ.js.map → data-grid.BHf954Qk.js.map} +1 -1
  83. package/dist/chunks/{date-picker.CNkn1lJu.js → date-picker.g_gchjND.js} +12 -12
  84. package/dist/chunks/{date-picker.CNkn1lJu.js.map → date-picker.g_gchjND.js.map} +1 -1
  85. package/dist/chunks/{date-range-picker.Duh3LZVQ.js → date-range-picker.Bt-HLw21.js} +43 -43
  86. package/dist/chunks/{date-range-picker.Duh3LZVQ.js.map → date-range-picker.Bt-HLw21.js.map} +1 -1
  87. package/dist/chunks/{date.BFhwd9CA.js → date.ojGAujAt.js} +2 -2
  88. package/dist/chunks/{date.BFhwd9CA.js.map → date.ojGAujAt.js.map} +1 -1
  89. package/dist/chunks/{dialog-page.DfQAcbe1.js → dialog-page.C9LpBaCe.js} +4 -4
  90. package/dist/chunks/{dialog-page.DfQAcbe1.js.map → dialog-page.C9LpBaCe.js.map} +1 -1
  91. package/dist/chunks/{draggable-handle.B9wCGRpt.js → draggable-handle.DmuYrnb7.js} +3 -3
  92. package/dist/chunks/{draggable-handle.B9wCGRpt.js.map → draggable-handle.DmuYrnb7.js.map} +1 -1
  93. package/dist/chunks/{draggable.CHoq7h3v.js → draggable.CYwu4umT.js} +3 -3
  94. package/dist/chunks/{draggable.CHoq7h3v.js.map → draggable.CYwu4umT.js.map} +1 -1
  95. package/dist/chunks/{drawer.BMEgfHUb.js → drawer.f64oxK5m.js} +2 -2
  96. package/dist/chunks/{drawer.BMEgfHUb.js.map → drawer.f64oxK5m.js.map} +1 -1
  97. package/dist/chunks/{dropdown-tag.BYdLQ7Ot.js → dropdown-tag.DZBKgG-u.js} +6 -6
  98. package/dist/chunks/{dropdown-tag.BYdLQ7Ot.js.map → dropdown-tag.DZBKgG-u.js.map} +1 -1
  99. package/dist/chunks/{dropdown.9OCTinMe.js → dropdown.C3pL7_bt.js} +45 -45
  100. package/dist/chunks/{dropdown.9OCTinMe.js.map → dropdown.C3pL7_bt.js.map} +1 -1
  101. package/dist/chunks/empty-state.GiOk5uRM.js +158 -0
  102. package/dist/chunks/empty-state.GiOk5uRM.js.map +1 -0
  103. package/dist/chunks/{error-message.7Uoylhed.js → error-message.ROkM72Gh.js} +2 -2
  104. package/dist/chunks/{error-message.7Uoylhed.js.map → error-message.ROkM72Gh.js.map} +1 -1
  105. package/dist/chunks/{field-label.DaKGqnns.js → field-label.CfTxZmXX.js} +3 -3
  106. package/dist/chunks/{field-label.DaKGqnns.js.map → field-label.CfTxZmXX.js.map} +1 -1
  107. package/dist/chunks/{file-uploader.BZFKyboO.js → file-uploader.BlGRg2eq.js} +8 -8
  108. package/dist/chunks/{file-uploader.BZFKyboO.js.map → file-uploader.BlGRg2eq.js.map} +1 -1
  109. package/dist/chunks/{filter-bar.BzGvD3ov.js → filter-bar.BGphXn-d.js} +23 -23
  110. package/dist/chunks/{filter-bar.BzGvD3ov.js.map → filter-bar.BGphXn-d.js.map} +1 -1
  111. package/dist/chunks/{fixed-scroller.cQ1MF_f3.js → fixed-scroller.Dgx7z81w.js} +2 -2
  112. package/dist/chunks/{fixed-scroller.cQ1MF_f3.js.map → fixed-scroller.Dgx7z81w.js.map} +1 -1
  113. package/dist/chunks/{focus-trap.Dv6HcDX8.js → focus-trap.D8sMvprE.js} +2 -2
  114. package/dist/chunks/{focus-trap.Dv6HcDX8.js.map → focus-trap.D8sMvprE.js.map} +1 -1
  115. package/dist/chunks/{footer-actions.pgbqDlKH.js → footer-actions.Id0FqXsE.js} +4 -4
  116. package/dist/chunks/{footer-actions.pgbqDlKH.js.map → footer-actions.Id0FqXsE.js.map} +1 -1
  117. package/dist/chunks/{form-layout-group.eupY5BRX.js → form-layout-group.DWvmX49g.js} +2 -2
  118. package/dist/chunks/{form-layout-group.eupY5BRX.js.map → form-layout-group.DWvmX49g.js.map} +1 -1
  119. package/dist/chunks/{form-layout-title.DjIq1FTh.js → form-layout-title.Bl4dBemh.js} +3 -3
  120. package/dist/chunks/{form-layout-title.DjIq1FTh.js.map → form-layout-title.Bl4dBemh.js.map} +1 -1
  121. package/dist/chunks/{header-meta.BKDAuOVV.js → header-meta.XxPijWPa.js} +5 -5
  122. package/dist/chunks/{header-meta.BKDAuOVV.js.map → header-meta.XxPijWPa.js.map} +1 -1
  123. package/dist/chunks/{header-with-views.BB7DhmcW.js → header-with-views.BKZiE48l.js} +13 -13
  124. package/dist/chunks/{header-with-views.BB7DhmcW.js.map → header-with-views.BKZiE48l.js.map} +1 -1
  125. package/dist/chunks/{header.BjDptDth.js → header.GpKE22bR.js} +4 -4
  126. package/dist/chunks/{header.BjDptDth.js.map → header.GpKE22bR.js.map} +1 -1
  127. package/dist/chunks/{index.Drk1Cbct.js → index.DkAcVBvr.js} +149 -155
  128. package/dist/chunks/{index.Drk1Cbct.js.map → index.DkAcVBvr.js.map} +1 -1
  129. package/dist/chunks/{info-icon.MIFIbKDd.js → info-icon.BTVOYOrD.js} +3 -3
  130. package/dist/chunks/{info-icon.MIFIbKDd.js.map → info-icon.BTVOYOrD.js.map} +1 -1
  131. package/dist/chunks/{input-field-password.DvJltLuk.js → input-field-password.BHa8j1eF.js} +115 -111
  132. package/dist/chunks/input-field-password.BHa8j1eF.js.map +1 -0
  133. package/dist/chunks/{input-field-phone-number.Cw_A54Bm.js → input-field-phone-number.D-qCLvKZ.js} +3 -3
  134. package/dist/chunks/{input-field-phone-number.Cw_A54Bm.js.map → input-field-phone-number.D-qCLvKZ.js.map} +1 -1
  135. package/dist/chunks/{input-field.CZ9uLYRr.js → input-field.DhNomfjn.js} +5 -5
  136. package/dist/chunks/{input-field.CZ9uLYRr.js.map → input-field.DhNomfjn.js.map} +1 -1
  137. package/dist/chunks/{input-time.CUWdz33T.js → input-time.DhwsWS73.js} +3 -3
  138. package/dist/chunks/{input-time.CUWdz33T.js.map → input-time.DhwsWS73.js.map} +1 -1
  139. package/dist/chunks/{inspector-page.CqnJxWkc.js → inspector-page.DS-TyjhP.js} +4 -4
  140. package/dist/chunks/{inspector-page.CqnJxWkc.js.map → inspector-page.DS-TyjhP.js.map} +1 -1
  141. package/dist/chunks/{inspector.B8wwyQd1.js → inspector.D9f3xIkv.js} +5 -5
  142. package/dist/chunks/{inspector.B8wwyQd1.js.map → inspector.D9f3xIkv.js.map} +1 -1
  143. package/dist/chunks/{layout-row.CgJidXMP.js → layout-row.DetmJ1aX.js} +3 -3
  144. package/dist/chunks/{layout-row.CgJidXMP.js.map → layout-row.DetmJ1aX.js.map} +1 -1
  145. package/dist/chunks/{link.D6D6YGsN.js → link.Crms073M.js} +2 -2
  146. package/dist/chunks/{link.D6D6YGsN.js.map → link.Crms073M.js.map} +1 -1
  147. package/dist/chunks/{list-item.C53zpkL0.js → list-item.DJS7Gq5R.js} +6 -6
  148. package/dist/chunks/{list-item.C53zpkL0.js.map → list-item.DJS7Gq5R.js.map} +1 -1
  149. package/dist/chunks/{listbox-option-tag.C4Pxr1cZ.js → listbox-option-tag.37-DRTzj.js} +3 -3
  150. package/dist/chunks/{listbox-option-tag.C4Pxr1cZ.js.map → listbox-option-tag.37-DRTzj.js.map} +1 -1
  151. package/dist/chunks/{modal-fullscreen.tGQGVIVN.js → modal-fullscreen.CyzUQkFx.js} +7 -7
  152. package/dist/chunks/{modal-fullscreen.tGQGVIVN.js.map → modal-fullscreen.CyzUQkFx.js.map} +1 -1
  153. package/dist/chunks/{modal.vue_vue_type_script_setup_true_lang.BEY3h2ki.js → modal.vue_vue_type_script_setup_true_lang.Dj2XegxG.js} +6 -6
  154. package/dist/chunks/{modal.vue_vue_type_script_setup_true_lang.BEY3h2ki.js.map → modal.vue_vue_type_script_setup_true_lang.Dj2XegxG.js.map} +1 -1
  155. package/dist/chunks/{navigation-menu-group.B8OTD-KO.js → navigation-menu-group.BzJUqg9L.js} +6 -6
  156. package/dist/chunks/{navigation-menu-group.B8OTD-KO.js.map → navigation-menu-group.BzJUqg9L.js.map} +1 -1
  157. package/dist/chunks/{pagination.BKXAbfS5.js → pagination.qNxHP9SP.js} +127 -112
  158. package/dist/chunks/pagination.qNxHP9SP.js.map +1 -0
  159. package/dist/chunks/{payment-method.AeKHZlAO.js → payment-method.B9efiDS8.js} +2 -2
  160. package/dist/chunks/{payment-method.AeKHZlAO.js.map → payment-method.B9efiDS8.js.map} +1 -1
  161. package/dist/chunks/popover.types.D2aiV92f.js +6 -0
  162. package/dist/chunks/{popover.types.BygdLPT4.js.map → popover.types.D2aiV92f.js.map} +1 -1
  163. package/dist/chunks/{popper-container.ChRadAy_.js → popper-container.PlwCeBRG.js} +2 -2
  164. package/dist/chunks/{popper-container.ChRadAy_.js.map → popper-container.PlwCeBRG.js.map} +1 -1
  165. package/dist/chunks/{promo-banner.QQa3ajug.js → promo-banner.Pfdk6Kzd.js} +4 -4
  166. package/dist/chunks/{promo-banner.QQa3ajug.js.map → promo-banner.Pfdk6Kzd.js.map} +1 -1
  167. package/dist/chunks/{radio-group.D1f4S9pk.js → radio-group.CFsU0JKp.js} +5 -5
  168. package/dist/chunks/{radio-group.D1f4S9pk.js.map → radio-group.CFsU0JKp.js.map} +1 -1
  169. package/dist/chunks/{rich-text-editor.-sD2vv0j.js → rich-text-editor.D2T8n3P5.js} +8 -8
  170. package/dist/chunks/{rich-text-editor.-sD2vv0j.js.map → rich-text-editor.D2T8n3P5.js.map} +1 -1
  171. package/dist/chunks/{scroll-to-section.BntX_GuR.js → scroll-to-section.BsuItn5y.js} +25 -25
  172. package/dist/chunks/scroll-to-section.BsuItn5y.js.map +1 -0
  173. package/dist/chunks/{search-bar.DOKY8gbV.js → search-bar.DMBhUt-F.js} +3 -3
  174. package/dist/chunks/{search-bar.DOKY8gbV.js.map → search-bar.DMBhUt-F.js.map} +1 -1
  175. package/dist/chunks/{secondary-nav.CdgnNMHJ.js → secondary-nav.Bsfr9381.js} +6 -6
  176. package/dist/chunks/{secondary-nav.CdgnNMHJ.js.map → secondary-nav.Bsfr9381.js.map} +1 -1
  177. package/dist/chunks/{segmented-control.CR__uBNa.js → segmented-control.Dkcuel-B.js} +3 -3
  178. package/dist/chunks/{segmented-control.CR__uBNa.js.map → segmented-control.Dkcuel-B.js.map} +1 -1
  179. package/dist/chunks/{selection-card-group.CBpWnRwv.js → selection-card-group.C_5f6c5g.js} +13 -13
  180. package/dist/chunks/{selection-card-group.CBpWnRwv.js.map → selection-card-group.C_5f6c5g.js.map} +1 -1
  181. package/dist/chunks/{sidepanel.DBu2JD7B.js → sidepanel.B-DgASDI.js} +7 -7
  182. package/dist/chunks/{sidepanel.DBu2JD7B.js.map → sidepanel.B-DgASDI.js.map} +1 -1
  183. package/dist/chunks/{status.H00BAmRx.js → status.Nss4P5OU.js} +2 -2
  184. package/dist/chunks/{status.H00BAmRx.js.map → status.Nss4P5OU.js.map} +1 -1
  185. package/dist/chunks/{step.XxzqdoCA.js → step.BAK826b4.js} +3 -3
  186. package/dist/chunks/{step.XxzqdoCA.js.map → step.BAK826b4.js.map} +1 -1
  187. package/dist/chunks/{structured-list-item.ptq38Gox.js → structured-list-item.EubeWcQq.js} +6 -6
  188. package/dist/chunks/{structured-list-item.ptq38Gox.js.map → structured-list-item.EubeWcQq.js.map} +1 -1
  189. package/dist/chunks/{summary-grid.types.fVXa_r9J.js → summary-grid.types.D_LsxcwU.js} +6 -6
  190. package/dist/chunks/{summary-grid.types.fVXa_r9J.js.map → summary-grid.types.D_LsxcwU.js.map} +1 -1
  191. package/dist/chunks/{tab.BSswsugp.js → tab.DcoHMomD.js} +4 -4
  192. package/dist/chunks/{tab.BSswsugp.js.map → tab.DcoHMomD.js.map} +1 -1
  193. package/dist/chunks/{table-of-contents.X3AAXskU.js → table-of-contents.BfnESVWP.js} +19 -18
  194. package/dist/chunks/{table-of-contents.X3AAXskU.js.map → table-of-contents.BfnESVWP.js.map} +1 -1
  195. package/dist/chunks/{tag.eVRJNY7P.js → tag.njk5qb_-.js} +3 -3
  196. package/dist/chunks/{tag.eVRJNY7P.js.map → tag.njk5qb_-.js.map} +1 -1
  197. package/dist/chunks/{textarea.CgInpYiB.js → textarea.D7yd9eki.js} +5 -5
  198. package/dist/chunks/{textarea.CgInpYiB.js.map → textarea.D7yd9eki.js.map} +1 -1
  199. package/dist/chunks/{timeline-item.DWZggSSK.js → timeline-item.CS7BdcHE.js} +10 -10
  200. package/dist/chunks/{timeline-item.DWZggSSK.js.map → timeline-item.CS7BdcHE.js.map} +1 -1
  201. package/dist/chunks/{toast.Dpt00iLC.js → toast.DHXaiCwc.js} +4 -4
  202. package/dist/chunks/{toast.Dpt00iLC.js.map → toast.DHXaiCwc.js.map} +1 -1
  203. package/dist/chunks/{toggle.BdcgY15I.js → toggle.XtYUtv_k.js} +2 -2
  204. package/dist/chunks/{toggle.BdcgY15I.js.map → toggle.XtYUtv_k.js.map} +1 -1
  205. package/dist/chunks/{tooltip.BepNRsMC.js → tooltip.DIC-rxld.js} +4 -4
  206. package/dist/chunks/{tooltip.BepNRsMC.js.map → tooltip.DIC-rxld.js.map} +1 -1
  207. package/dist/chunks/{tutorial.vue_vue_type_script_setup_true_lang.BJtbuykV.js → tutorial.vue_vue_type_script_setup_true_lang.C7kdKVRE.js} +5 -5
  208. package/dist/chunks/{tutorial.vue_vue_type_script_setup_true_lang.BJtbuykV.js.map → tutorial.vue_vue_type_script_setup_true_lang.C7kdKVRE.js.map} +1 -1
  209. package/dist/chunks/typography.wIM07Hbl.js +86 -0
  210. package/dist/chunks/typography.wIM07Hbl.js.map +1 -0
  211. package/dist/chunks/{use-bento-delayed-hover.Br051KnY.js → use-bento-delayed-hover.By1eq4f7.js} +2 -2
  212. package/dist/chunks/{use-bento-delayed-hover.Br051KnY.js.map → use-bento-delayed-hover.By1eq4f7.js.map} +1 -1
  213. package/dist/chunks/{use-bento-toast-controller.D_NSnBxi.js → use-bento-toast-controller.BAoPbtq7.js} +2 -2
  214. package/dist/chunks/{use-bento-toast-controller.D_NSnBxi.js.map → use-bento-toast-controller.BAoPbtq7.js.map} +1 -1
  215. package/dist/chunks/{use-date-input-formatter.C-efnnV3.js → use-date-input-formatter.Bu5moyKi.js} +2 -2
  216. package/dist/chunks/{use-date-input-formatter.C-efnnV3.js.map → use-date-input-formatter.Bu5moyKi.js.map} +1 -1
  217. package/dist/code-snippet.js +1 -1
  218. package/dist/country.js +1 -1
  219. package/dist/currency.js +1 -1
  220. package/dist/dashboard-template.js +1 -1
  221. package/dist/dashed-underline.js +1 -1
  222. package/dist/data-grid-template.js +1 -1
  223. package/dist/data-grid.js +1 -1
  224. package/dist/date-picker.js +2 -2
  225. package/dist/date-range-picker.js +2 -2
  226. package/dist/date-time-picker.js +5 -5
  227. package/dist/date.js +1 -1
  228. package/dist/draggable.js +2 -2
  229. package/dist/drawer.js +1 -1
  230. package/dist/dropdown.js +2 -2
  231. package/dist/empty-state.js +1 -1
  232. package/dist/file-uploader.js +1 -1
  233. package/dist/filter-bar.js +1 -1
  234. package/dist/focus-trap.js +1 -1
  235. package/dist/form-layout.js +2 -2
  236. package/dist/header-with-views.js +1 -1
  237. package/dist/header.js +1 -1
  238. package/dist/index.js +78 -78
  239. package/dist/info-icon.js +1 -1
  240. package/dist/input-field-password.js +1 -1
  241. package/dist/input-field-phone-number.js +1 -1
  242. package/dist/input-field.js +1 -1
  243. package/dist/input-time.js +1 -1
  244. package/dist/inspector.js +2 -2
  245. package/dist/internal.js +13 -13
  246. package/dist/layout.js +1 -1
  247. package/dist/link.js +1 -1
  248. package/dist/list.js +1 -1
  249. package/dist/menu.js +1 -1
  250. package/dist/modal-fullscreen.js +1 -1
  251. package/dist/modal.js +2 -2
  252. package/dist/navigation-menu.js +1 -1
  253. package/dist/pagination.js +1 -1
  254. package/dist/payment-method.js +1 -1
  255. package/dist/popover.js +2 -2
  256. package/dist/popper-container.js +1 -1
  257. package/dist/promo-banner.js +1 -1
  258. package/dist/radio-group.js +1 -1
  259. package/dist/rich-text-editor.js +1 -1
  260. package/dist/search-bar.js +2 -2
  261. package/dist/secondary-nav.js +1 -1
  262. package/dist/segmented-control.js +1 -1
  263. package/dist/selection-card.js +1 -1
  264. package/dist/sidepanel.js +1 -1
  265. package/dist/status.js +1 -1
  266. package/dist/stepper.js +1 -1
  267. package/dist/structured-list.js +1 -1
  268. package/dist/summary-grid.js +1 -1
  269. package/dist/table-of-contents.js +1 -1
  270. package/dist/tabs.js +1 -1
  271. package/dist/tag.js +1 -1
  272. package/dist/textarea.js +1 -1
  273. package/dist/timeline.js +1 -1
  274. package/dist/toast.js +1 -1
  275. package/dist/toggle.js +1 -1
  276. package/dist/tutorial.js +1 -1
  277. package/dist/typography.js +1 -1
  278. package/dist/web-types.json +1 -1
  279. package/package.json +8 -8
  280. package/dist/chunks/anchor-scroller.BeWDW53L.js.map +0 -1
  281. package/dist/chunks/empty-state.C1SZznqL.js +0 -133
  282. package/dist/chunks/empty-state.C1SZznqL.js.map +0 -1
  283. package/dist/chunks/input-field-password.DvJltLuk.js.map +0 -1
  284. package/dist/chunks/pagination.BKXAbfS5.js.map +0 -1
  285. package/dist/chunks/popover.types.BygdLPT4.js +0 -6
  286. package/dist/chunks/scroll-to-section.BntX_GuR.js.map +0 -1
  287. package/dist/chunks/typography.B3J6_tYk.js +0 -83
  288. package/dist/chunks/typography.B3J6_tYk.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { s as r, a as t, _ as a, b as o, c as i, B as n, d as u, e as d } from "./chunks/summary-grid.types.fVXa_r9J.js";
1
+ import { s as r, a as t, _ as a, b as o, c as i, B as n, d as u, e as d } from "./chunks/summary-grid.types.D_LsxcwU.js";
2
2
  export {
3
3
  r as BentoSummaryGrid,
4
4
  t as BentoSummaryGridItemAmount,
@@ -1,4 +1,4 @@
1
- import { t as o } from "./chunks/table-of-contents.X3AAXskU.js";
1
+ import { t as o } from "./chunks/table-of-contents.BfnESVWP.js";
2
2
  export {
3
3
  o as BentoTableOfContents
4
4
  };
package/dist/tabs.js CHANGED
@@ -1,4 +1,4 @@
1
- import { B as e, a as s } from "./chunks/tab.BSswsugp.js";
1
+ import { B as e, a as s } from "./chunks/tab.DcoHMomD.js";
2
2
  export {
3
3
  e as BentoTab,
4
4
  s as BentoTabs
package/dist/tag.js CHANGED
@@ -1,4 +1,4 @@
1
- import { B as t, a as e } from "./chunks/tag.eVRJNY7P.js";
1
+ import { B as t, a as e } from "./chunks/tag.njk5qb_-.js";
2
2
  export {
3
3
  t as BentoTag,
4
4
  e as BentoTagVariant
package/dist/textarea.js CHANGED
@@ -1,4 +1,4 @@
1
- import { B as o } from "./chunks/textarea.CgInpYiB.js";
1
+ import { B as o } from "./chunks/textarea.D7yd9eki.js";
2
2
  export {
3
3
  o as BentoTextarea
4
4
  };
package/dist/timeline.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t, B as i, a, b as m, c as o, d as l } from "./chunks/timeline-item.DWZggSSK.js";
1
+ import { t, B as i, a, b as m, c as o, d as l } from "./chunks/timeline-item.CS7BdcHE.js";
2
2
  export {
3
3
  t as BentoTimeline,
4
4
  i as BentoTimelineGapUnit,
package/dist/toast.js CHANGED
@@ -1,4 +1,4 @@
1
- import { B as a } from "./chunks/toast.Dpt00iLC.js";
1
+ import { B as a } from "./chunks/toast.DHXaiCwc.js";
2
2
  export {
3
3
  a as BentoToast
4
4
  };
package/dist/toggle.js CHANGED
@@ -1,4 +1,4 @@
1
- import { B as a, a as g, b as s } from "./chunks/toggle.BdcgY15I.js";
1
+ import { B as a, a as g, b as s } from "./chunks/toggle.XtYUtv_k.js";
2
2
  export {
3
3
  a as BentoToggle,
4
4
  g as BentoToggleLabelPosition,
package/dist/tutorial.js CHANGED
@@ -1,4 +1,4 @@
1
- import { _ as t } from "./chunks/tutorial.vue_vue_type_script_setup_true_lang.BJtbuykV.js";
1
+ import { _ as t } from "./chunks/tutorial.vue_vue_type_script_setup_true_lang.C7kdKVRE.js";
2
2
  export {
3
3
  t as BentoTutorial
4
4
  };
@@ -1,4 +1,4 @@
1
- import { B as p, a as e, b as r, c as y } from "./chunks/typography.B3J6_tYk.js";
1
+ import { B as p, a as e, b as r, c as y } from "./chunks/typography.wIM07Hbl.js";
2
2
  export {
3
3
  p as BentoTypography,
4
4
  e as BentoTypographyElement,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "framework": "vue",
3
3
  "name": "@adyen/bento-vue3",
4
- "version": "1.102.0",
4
+ "version": "1.103.0",
5
5
  "contributions": {
6
6
  "html": {
7
7
  "description-markup": "markdown",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adyen/bento-vue3",
3
- "version": "1.102.0",
3
+ "version": "1.103.0",
4
4
  "description": "Adyen Bento Vue 3 components",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -48,7 +48,7 @@
48
48
  "unified": "11.0.5",
49
49
  "uuid": "11.1.1",
50
50
  "vue-demi": "0.14.10",
51
- "@adyen/bento-design-tokens": "1.102.0"
51
+ "@adyen/bento-design-tokens": "1.103.0"
52
52
  },
53
53
  "dependenciesMeta": {
54
54
  "@adyen/bento-vue-i18n-demi": {
@@ -90,10 +90,10 @@
90
90
  "@testing-library/jest-dom": "5.16.5",
91
91
  "@testing-library/user-event": "14.4.3",
92
92
  "@testing-library/vue": "8.1.0",
93
- "@types/node": "22.10.0",
93
+ "@types/node": "24.9.0",
94
94
  "@vitejs/plugin-react": "4.3.1",
95
95
  "@vitejs/plugin-vue": "5.1.4",
96
- "@vitest/coverage-v8": "2.1.9",
96
+ "@vitest/coverage-v8": "3.2.6",
97
97
  "@vue/compiler-dom": "3.5.14",
98
98
  "@vue/test-utils": "2.4.1",
99
99
  "axe-core": "4.4.2",
@@ -103,11 +103,11 @@
103
103
  "storybook": "9.1.19",
104
104
  "tsc-alias": "1.8.11",
105
105
  "typescript": "5.6.3",
106
- "vite": "7.3.2",
106
+ "vite": "7.3.5",
107
107
  "vite-plugin-css-injected-by-js": "2.4.0",
108
108
  "vite-plugin-dynamic-import": "1.5.0",
109
109
  "vite-plugin-static-copy": "3.2.0",
110
- "vitest": "^3.2.4",
110
+ "vitest": "3.2.6",
111
111
  "vue": "3.5.13",
112
112
  "vue-docgen-web-types": "0.1.8",
113
113
  "vue-i18n": "11.3.2",
@@ -116,8 +116,8 @@
116
116
  "zod": "3.25.35",
117
117
  "@adyen/bento-core": "0.0.1",
118
118
  "@adyen/bento-vue-i18n-demi": "0.1.0",
119
- "@adyen/ui-assets-icons-16": "7.9.4",
120
- "@adyen/ui-assets-payment-method-icons": "12.0.0"
119
+ "@adyen/ui-assets-icons-16": "7.9.5",
120
+ "@adyen/ui-assets-payment-method-icons": "12.0.1"
121
121
  },
122
122
  "scripts": {
123
123
  "build": "pnpm run build:prod",
@@ -1 +0,0 @@
1
- {"version":3,"file":"anchor-scroller.BeWDW53L.js","sources":["../../../vue2/src/components/anchor-scroller/components/anchor-scroller-list/anchor-scroller-list.vue","../../../vue2/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=\"navigationItemRefs\"\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=\"isFocusable(index) ? null : '-1'\"\n variant=\"tertiary-with-background\"\n @click=\"onScrollToSection(elementRef, disabled)\"\n @keydown.space.native.prevent=\"onScrollToSection(elementRef, disabled)\"\n @keydown.enter.native.prevent=\"onScrollToSection(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 { useSectionNavigationKeyboard } from '@/composables/use-section-navigation-keyboard';\n import { scrollToSection, type ScrollToSectionTarget } from '@/utils/ts/scroll-to-section';\n import { type AnchorScrollerListProps } from './anchor-scroller-list.types';\n import { computed, toRef } from 'vue';\n\n const props = withDefaults(defineProps<AnchorScrollerListProps>(), {\n activeIndex: undefined,\n scrollOffset: undefined,\n });\n\n const navigationItems = computed(() => props.items);\n const { isFocusable, navigationItemRefs, onKeydownNavigation } = useSectionNavigationKeyboard(navigationItems, {\n isDisabled: item => item.disabled,\n initialIndex: toRef(props, 'activeIndex'),\n });\n\n const onScrollToSection = (\n elementRef: AnchorScrollerListProps['items'][number]['elementRef'],\n disabled?: boolean\n ) =>\n scrollToSection(elementRef as ScrollToSectionTarget, {\n disabled,\n scrollOffset: props.scrollOffset,\n warningPrefix: 'bento-anchor-scroller',\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./anchor-scroller-list.scss\" />\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 { refDebounced, useElementBounding } 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/use-scroll-spy';\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 = withDefaults(defineProps<BentoAnchorScrollerProps>(), {\n activeIndex: undefined,\n });\n\n const emit = defineEmits<{\n /**\n * Emits update event when the active index is changed\n */\n (e: 'update:active-index', value: number): void;\n }>();\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 const { top, bottom } = useElementBounding(navigationRef);\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 { activeIndex: relativeActiveIndex } = useScrollSpy(scrollToTargets, {\n default: toRef(props, 'activeIndex'),\n });\n\n const debouncedActiveIndex = refDebounced(relativeActiveIndex, 200);\n\n const currentActiveIndex = computed(() => {\n const candidate = enabledItems.value[debouncedActiveIndex.value];\n\n return candidate ? candidate.originalIndex : 0;\n });\n\n watch(currentActiveIndex, val => {\n if (Number.isFinite(val)) {\n emit('update:active-index', val);\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":["props","__props","navigationItems","computed","isFocusable","navigationItemRefs","onKeydownNavigation","useSectionNavigationKeyboard","item","toRef","onScrollToSection","elementRef","disabled","scrollToSection","__default__","messages","t","useI18n","emit","__emit","navigationRef","ref","computedItems","enabledItems","originalIndex","unrefElement","top","bottom","useElementBounding","scrollToTargets","c","navigationConditionalClasses","relativeActiveIndex","useScrollSpy","debouncedActiveIndex","refDebounced","currentActiveIndex","candidate","watch","val","printDevelopmentWarning","navLabelId","generateUid"],"mappings":";;;;;;;;;;;;;;;;;;;AA+BI,UAAAA,IAAAC,GAKAC,IAAAC,EAAA,MAAAH,EAAA,KAAA,GACA,EAAA,aAAAI,GAAA,oBAAAC,GAAA,qBAAAC,EAAA,IAAAC,EAAAL,GAAA;AAAA,MAA+G,YAAA,CAAAM,MAAAA,EAAA;AAAA,MAClF,cAAAC,EAAAT,GAAA,aAAA;AAAA,IACe,CAAA,GAG5CU,IAAA,CAAAC,GAAAC,MAAAC,EAAAF,GAAA;AAAA,MAIyD,UAAAC;AAAA,MACjD,cAAAZ,EAAA;AAAA,MACoB,eAAA;AAAA,IACL,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oFCoGvBc,KAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAAA,EACM,MAAA;AAErB;;;;;;;;AAxGA,UAAA,EAAA,GAAAC,EAAA,IAAAC,EAAA,EAAA,UAAAF,EAAA,CAAA,GAEAf,IAAAC,GAIAiB,IAAAC,GAOAC,IAAAC,EAAA,IAAA,GAEAC,IAAAnB,EAAA,MAAAH,EAAA,MAAA,IAAA,CAAAQ,OAAA,EAAA,GAAAA,EAAA,EAAA,CAAA,GAGAe,IAAApB;AAAA,MAAqB,MAAAH,EAAA,MAAA,IAAA,CAAAQ,GAAAgB,OAAA;AAAA,QAEkB,SAAAC,EAAAjB,EAAA,UAAA;AAAA,QACU,eAAAgB;AAAA,QACrC,UAAAhB,EAAA;AAAA,MACe,EAAA,EAAA;AAAA,QAElB,CAAAA,MAAA,CAAAA,EAAA,YAAA,CAAA,CAAAA,EAAA;AAAA,MAEgC;AAAA,IACjC,GAGR,EAAA,KAAAkB,GAAA,QAAAC,EAAA,IAAAC,EAAAR,CAAA,GAGAS,IAAA1B,EAAA,MAAAoB,EAAA,MAAA,IAAA,CAAAO,MAAAA,EAAA,OAAA,CAAA,GAEAC,IAAA5B,EAAA,OAAA;AAAA,MAAqD,yCAAAuB,EAAA,SAAA;AAAA,IACK,EAAA,GAG1D,EAAA,aAAAM,EAAA,IAAAC,EAAAJ,GAAA;AAAA,MAA2E,SAAApB,EAAAT,GAAA,aAAA;AAAA,IACpC,CAAA,GAGvCkC,IAAAC,EAAAH,GAAA,GAAA,GAEAI,IAAAjC,EAAA,MAAA;AACI,YAAAkC,IAAAd,EAAA,MAAAW,EAAA,KAAA;AAEA,aAAAG,IAAAA,EAAA,gBAAA;AAAA,IAA6C,CAAA;AAGjD,IAAAC,EAAAF,GAAA,CAAAG,MAAA;AACI,MAAA,OAAA,SAAAA,CAAA,KACIrB,EAAA,uBAAAqB,CAAA;AAAA,IACJ,CAAA,GAGJD;AAAA,MAAA,MAAAtC,EAAA;AAAA,MACgB,CAAAuC,MAAA;AAER,QAAA,OAAA,SAAAA,CAAA,KAAAjB,EAAA,MAAAiB,CAAA,EAAA,YACIC,EAAA,mEAAA;AAAA,MACJ;AAAA,IACJ;AAGJ,UAAAC,IAAAC,EAAA,6BAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,133 +0,0 @@
1
- import { defineComponent as U, ref as d, computed as i, watch as D, openBlock as n, createElementBlock as L, normalizeClass as P, createCommentVNode as p, createVNode as k, unref as f, mergeProps as y, withCtx as c, renderSlot as A, createTextVNode as E, toDisplayString as N, createBlock as _, createSlots as M, resolveDynamicComponent as w } from "vue";
2
- import { B as F } from "./button.C6-bXf1h.js";
3
- import { B as C } from "./typography.B3J6_tYk.js";
4
- import { o as S } from "./resize.Bqks3WUm.js";
5
- import { _ as H } from "./_plugin-vue_export-helper.CHgC5LLL.js";
6
- import "../assets/empty-state.css";
7
- const h = (e, o, s) => {
8
- const l = e[o];
9
- return l ? typeof l == "function" ? l() : Promise.resolve(l) : new Promise((v, u) => {
10
- (typeof queueMicrotask == "function" ? queueMicrotask : setTimeout)(u.bind(null, /* @__PURE__ */ new Error("Unknown variable dynamic import: " + o + (o.split("/").length !== s ? ". Note that variables only represent file names one level deep." : ""))));
11
- });
12
- };
13
- var r = /* @__PURE__ */ ((e) => (e.FULL_PAGE = "full-page", e.EMBEDDED = "embedded", e.BASIC = "basic", e.CONDENSED = "condensed", e))(r || {}), I = /* @__PURE__ */ ((e) => (e.GENERIC_USE1 = "1-generic-use", e.GENERIC_USE2 = "2-generic-use", e.GENERIC_USE3 = "3-generic-use", e.GENERIC_USE4 = "4-generic-use", e.ADDING_PAYMENT_METHOD = "adding-payment-methods", e.ADYEN_GIVING = "adyen-giving", e.DELIGHT = "delight", e.INTERNAL_ERROR = "internal-error", e.NO_RESULTS_FOUND = "no-results-found", e.NOTIFICATIONS_CLEARED = "notifications-cleared", e.PAGE_NOT_FOUND = "page-not-found", e.PLANNED_MAINTENANCE = "planned-maintenance", e.REFERRALS = "referrals", e.SUCCESS = "success", e.UPLOAD_FILES = "upload-files", e.WRONG_ENVIRONMENT = "wrong-environment", e))(I || {}), g = /* @__PURE__ */ ((e) => (e.SMALL = "small", e.LARGE = "large", e[e.NULL = null] = "NULL", e))(g || {});
14
- const W = ["src"], j = {}, q = /* @__PURE__ */ U({
15
- ...j,
16
- __name: "empty-state",
17
- props: {
18
- action: { default: null },
19
- description: { default: null },
20
- headingEl: { default: null },
21
- image: { default: null },
22
- title: { default: "" },
23
- variant: { default: "basic" }
24
- },
25
- setup(e) {
26
- const s = e, l = d(null), v = d(0), u = i(() => v.value < 740), t = i(() => {
27
- switch (s.variant) {
28
- case r.FULL_PAGE:
29
- return u.value ? g.SMALL : g.LARGE;
30
- case r.EMBEDDED:
31
- return u.value ? null : g.SMALL;
32
- default:
33
- return null;
34
- }
35
- }), m = d("");
36
- D(
37
- [() => s.image, t],
38
- async () => {
39
- s.image && t.value && (t.value === "small" ? m.value = (await h(/* @__PURE__ */ Object.assign({ "./assets/small/1-generic-use.svg": () => import("./1-generic-use.CZhwP2Yc.js"), "./assets/small/2-generic-use.svg": () => import("./2-generic-use.CNKjB4B7.js"), "./assets/small/3-generic-use.svg": () => import("./3-generic-use.BLEzR04g.js"), "./assets/small/4-generic-use.svg": () => import("./4-generic-use.CULEpvgj.js"), "./assets/small/adding-payment-methods.svg": () => import("./adding-payment-methods.Dle8zt43.js"), "./assets/small/adyen-giving.svg": () => import("./adyen-giving.Ffw_DlJK.js"), "./assets/small/delight.svg": () => import("./delight.xKDCvvaS.js"), "./assets/small/internal-error.svg": () => import("./internal-error.BmrwJFpR.js"), "./assets/small/no-results-found.svg": () => import("./no-results-found.Bg_ZcEid.js"), "./assets/small/notifications-cleared.svg": () => import("./notifications-cleared.BMZk37uf.js"), "./assets/small/page-not-found.svg": () => import("./page-not-found.COJLPVaU.js"), "./assets/small/planned-maintenance.svg": () => import("./planned-maintenance.C61sWB9h.js"), "./assets/small/referrals.svg": () => import("./referrals.aX8WZigH.js"), "./assets/small/success.svg": () => import("./success.nNwxJRBS.js"), "./assets/small/upload-files.svg": () => import("./upload-files.jTQY6y2X.js"), "./assets/small/wrong-environment.svg": () => import("./wrong-environment.BOsyKdRI.js") }), `./assets/small/${s.image}.svg`, 4)).default : m.value = (await h(/* @__PURE__ */ Object.assign({ "./assets/large/1-generic-use.svg": () => import("./1-generic-use.R6x8PEGA.js"), "./assets/large/2-generic-use.svg": () => import("./2-generic-use.w0fUhovx.js"), "./assets/large/3-generic-use.svg": () => import("./3-generic-use.D3NFHgI4.js"), "./assets/large/4-generic-use.svg": () => import("./4-generic-use.D82y3n39.js"), "./assets/large/adding-payment-methods.svg": () => import("./adding-payment-methods.BJZLPxtM.js"), "./assets/large/adyen-giving.svg": () => import("./adyen-giving.LiKHj_jY.js"), "./assets/large/delight.svg": () => import("./delight.CDBAFnwC.js"), "./assets/large/internal-error.svg": () => import("./internal-error.BLZodVBE.js"), "./assets/large/no-results-found.svg": () => import("./no-results-found.BqvYsBR6.js"), "./assets/large/notifications-cleared.svg": () => import("./notifications-cleared.C7W9ZXY7.js"), "./assets/large/page-not-found.svg": () => import("./page-not-found.DWW6W-PZ.js"), "./assets/large/planned-maintenance.svg": () => import("./planned-maintenance.jmWYTdet.js"), "./assets/large/referrals.svg": () => import("./referrals.BvtT-kQS.js"), "./assets/large/success.svg": () => import("./success.DhioLvPD.js"), "./assets/large/upload-files.svg": () => import("./upload-files.5wQwbfkp.js"), "./assets/large/wrong-environment.svg": () => import("./wrong-environment.BiHTPtbJ.js") }), `./assets/large/${s.image}.svg`, 4)).default);
40
- },
41
- { immediate: !0 }
42
- );
43
- const O = i(() => ({
44
- "b-empty-state__image--small": t.value === "small",
45
- "b-empty-state__image--large": t.value === "large"
46
- })), R = {
47
- [r.FULL_PAGE]: "h2",
48
- [r.EMBEDDED]: "h3",
49
- [r.BASIC]: "h3",
50
- [r.CONDENSED]: "div"
51
- }, b = i(
52
- () => s.headingEl || R[s.variant]
53
- ), T = i(() => ({
54
- el: b.value,
55
- medium: s.variant !== r.CONDENSED,
56
- strongest: s.variant === r.CONDENSED,
57
- variant: s.variant === r.CONDENSED ? "body" : "title"
58
- })), G = i(() => {
59
- switch (s.variant) {
60
- case r.FULL_PAGE:
61
- return "primary";
62
- case r.CONDENSED:
63
- return "tertiary";
64
- default:
65
- return "secondary";
66
- }
67
- });
68
- return D(l, () => {
69
- S(l.value, () => {
70
- l.value && (v.value = l.value.offsetWidth);
71
- });
72
- }), (a, z) => (n(), L("div", {
73
- ref_key: "rootRef",
74
- ref: l,
75
- class: "b-empty-state"
76
- }, [
77
- a.image && t.value ? (n(), L("img", {
78
- key: 0,
79
- alt: "",
80
- class: P(["b-empty-state__image", O.value]),
81
- src: m.value
82
- }, null, 10, W)) : p("", !0),
83
- k(f(C), y(T.value, { class: "b-empty-state__title" }), {
84
- default: c(() => [
85
- A(a.$slots, "title", {}, () => [
86
- E(N(a.title), 1)
87
- ], !0)
88
- ]),
89
- _: 3
90
- }, 16),
91
- a.variant !== "condensed" ? (n(), _(f(C), {
92
- key: 1,
93
- variant: "body",
94
- class: "b-empty-state__details"
95
- }, {
96
- default: c(() => [
97
- A(a.$slots, "default", {}, () => [
98
- E(N(a.description), 1)
99
- ], !0)
100
- ]),
101
- _: 3
102
- })) : p("", !0),
103
- a.action ? (n(), _(f(F), {
104
- key: 2,
105
- type: "button",
106
- variant: G.value,
107
- onClick: a.action.event
108
- }, M({
109
- default: c(() => [
110
- E(" " + N(a.action.title), 1)
111
- ]),
112
- _: 2
113
- }, [
114
- a.action.icon ? {
115
- name: "iconLeft",
116
- fn: c(() => [
117
- (n(), _(w(a.action.icon), {
118
- "svg-title": a.action.title
119
- }, null, 8, ["svg-title"]))
120
- ]),
121
- key: "0"
122
- } : void 0
123
- ]), 1032, ["variant", "onClick"])) : p("", !0)
124
- ], 512));
125
- }
126
- }), Q = /* @__PURE__ */ H(q, [["__scopeId", "data-v-282d3033"]]);
127
- export {
128
- Q as B,
129
- I as a,
130
- g as b,
131
- r as c
132
- };
133
- //# sourceMappingURL=empty-state.C1SZznqL.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"empty-state.C1SZznqL.js","sources":["../../../vue2/src/components/empty-state/empty-state.types.ts","../../../vue2/src/components/empty-state/empty-state.vue"],"sourcesContent":["import type { BentoButtonActionObject } from '@/components/button/components/button-actions/button-actions.types';\nimport type { BentoTypographyElement } from '@/components/typography/typography.types';\n\nexport enum BentoEmptyStateVariant {\n FULL_PAGE = 'full-page',\n EMBEDDED = 'embedded',\n BASIC = 'basic',\n CONDENSED = 'condensed',\n}\n\nexport enum BentoEmptyStateImage {\n GENERIC_USE1 = '1-generic-use',\n GENERIC_USE2 = '2-generic-use',\n GENERIC_USE3 = '3-generic-use',\n GENERIC_USE4 = '4-generic-use',\n ADDING_PAYMENT_METHOD = 'adding-payment-methods',\n ADYEN_GIVING = 'adyen-giving',\n DELIGHT = 'delight',\n INTERNAL_ERROR = 'internal-error',\n NO_RESULTS_FOUND = 'no-results-found',\n NOTIFICATIONS_CLEARED = 'notifications-cleared',\n PAGE_NOT_FOUND = 'page-not-found',\n PLANNED_MAINTENANCE = 'planned-maintenance',\n REFERRALS = 'referrals',\n SUCCESS = 'success',\n UPLOAD_FILES = 'upload-files',\n WRONG_ENVIRONMENT = 'wrong-environment',\n}\n\nexport enum BentoEmptyStateImageVariant {\n SMALL = 'small',\n LARGE = 'large',\n NULL = null,\n}\n\nexport interface BentoEmptyStateProps {\n /**\n * Defines the button at the end of the component.\n */\n action?: BentoButtonActionObject;\n\n /**\n * The empty state description.\n * Gives additional details to the issue.\n * This can be used or the default slot\n */\n description?: string;\n\n /**\n * Sets the heading HTML DOM element.\n * @values h1, h2, h3, h4, h5, h6, div, p, span\n */\n headingEl?: `${BentoTypographyElement}`;\n\n /**\n * Name of the illustration for the empty state.\n */\n image?: `${BentoEmptyStateImage}`;\n\n /**\n * The empty state heading.\n * Should clearly explain the issue.\n */\n title?: string;\n\n /**\n * Types of different empty states\n * @values full-page, embedded, basic, condensed\n */\n variant?: `${BentoEmptyStateVariant}`;\n}\n","<template>\n <div ref=\"rootRef\" class=\"b-empty-state\">\n <!-- illustration -->\n <img\n v-if=\"image && imageVariant\"\n alt=\"\"\n class=\"b-empty-state__image\"\n :class=\"imageConditionalClasses\"\n :src=\"imageSvg\"\n />\n\n <!-- heading -->\n <bento-typography v-bind=\"headingProps\" class=\"b-empty-state__title\">\n <slot name=\"title\">\n {{ title }}\n </slot>\n </bento-typography>\n\n <!-- details -->\n <bento-typography v-if=\"variant !== 'condensed'\" variant=\"body\" class=\"b-empty-state__details\">\n <slot>\n {{ description }}\n </slot>\n </bento-typography>\n\n <!-- action -->\n <bento-button v-if=\"action\" type=\"button\" :variant=\"actionVariant\" @click=\"action.event\">\n <template v-if=\"action.icon\" #iconLeft>\n <component :is=\"action.icon\" :svg-title=\"action.title\"></component>\n </template>\n {{ action.title }}\n </bento-button>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref, watch } from 'vue';\n\n import { BentoButton, type BentoButtonVariant } from '@/components/button';\n import { BentoTypography, type BentoTypographyElement, type BentoTypographyVariant } from '@/components/typography';\n\n import { observeSizeOfElement } from '@/utils/ts/resize';\n\n import {\n BentoEmptyStateImageVariant,\n type BentoEmptyStateProps,\n BentoEmptyStateVariant,\n } from './empty-state.types';\n\n const WIDTH_BREAKPOINT = 740;\n\n const props = withDefaults(defineProps<BentoEmptyStateProps>(), {\n action: null,\n description: null,\n headingEl: null,\n image: null,\n title: '',\n variant: 'basic',\n });\n\n const rootRef = ref<HTMLDivElement>(null);\n const containerWidth = ref(0);\n\n const isBelowBreakpoint = computed(() => containerWidth.value < WIDTH_BREAKPOINT);\n\n const imageVariant = computed<BentoEmptyStateImageVariant>(() => {\n switch (props.variant) {\n case BentoEmptyStateVariant.FULL_PAGE:\n return isBelowBreakpoint.value ? BentoEmptyStateImageVariant.SMALL : BentoEmptyStateImageVariant.LARGE;\n case BentoEmptyStateVariant.EMBEDDED:\n return isBelowBreakpoint.value ? null : BentoEmptyStateImageVariant.SMALL;\n default:\n return null;\n }\n });\n\n const imageSvg = ref('');\n\n watch(\n [() => props.image, imageVariant],\n async () => {\n if (props.image && imageVariant.value) {\n // rollup only supports one variable in a dynamic path\n /* v8 ignore next 4 */\n if (imageVariant.value === 'small') {\n imageSvg.value = (await import(`./assets/small/${props.image}.svg`)).default;\n } else {\n imageSvg.value = (await import(`./assets/large/${props.image}.svg`)).default;\n }\n }\n },\n { immediate: true }\n );\n\n const imageConditionalClasses = computed(() => ({\n 'b-empty-state__image--small': imageVariant.value === 'small',\n 'b-empty-state__image--large': imageVariant.value === 'large',\n }));\n\n const HEADING_ELEMENT_MAP = {\n [BentoEmptyStateVariant.FULL_PAGE]: 'h2',\n [BentoEmptyStateVariant.EMBEDDED]: 'h3',\n [BentoEmptyStateVariant.BASIC]: 'h3',\n [BentoEmptyStateVariant.CONDENSED]: 'div',\n };\n\n const headingElement = computed(\n () => (props.headingEl || HEADING_ELEMENT_MAP[props.variant]) as BentoTypographyElement\n );\n\n const headingProps = computed(() => ({\n el: headingElement.value,\n medium: props.variant !== BentoEmptyStateVariant.CONDENSED,\n strongest: props.variant === BentoEmptyStateVariant.CONDENSED,\n variant: (props.variant === BentoEmptyStateVariant.CONDENSED ? 'body' : 'title') as BentoTypographyVariant,\n }));\n\n const actionVariant = computed<`${BentoButtonVariant}`>(() => {\n switch (props.variant) {\n case BentoEmptyStateVariant.FULL_PAGE:\n return 'primary';\n case BentoEmptyStateVariant.CONDENSED:\n return 'tertiary';\n default:\n return 'secondary';\n }\n });\n\n // Lifecycle\n watch(rootRef, () => {\n // Use ResizeObserver so that image is only fetched if needed (visible).\n observeSizeOfElement(rootRef.value, () => {\n if (rootRef.value) {\n containerWidth.value = rootRef.value.offsetWidth;\n }\n });\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Empty states are moments in the user experience when there is nothing to display.\n * This component can be used to provide:\n * - Information about system status\n * - Contextual learning cues\n * - Direct pathways for key tasks\n *\n * @example\n * import { BentoEmptyState } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoEmptyState },\n * template: `\n * <bento-empty-state\n * title=\"No results were found\"\n * image=\"no-results-found\"\n * variant=\"full-page\"\n * :action=\"{ title: 'Reset filters', event: () => {} }\"\n * >\n * Try a different term or reset search filters\n * </bento-empty-state>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./empty-state.scss\" />\n"],"names":["BentoEmptyStateVariant","BentoEmptyStateVariant2","BentoEmptyStateImage","BentoEmptyStateImage2","BentoEmptyStateImageVariant","BentoEmptyStateImageVariant2","__default__","props","__props","rootRef","ref","containerWidth","isBelowBreakpoint","computed","imageVariant","imageSvg","watch","__variableDynamicImportRuntimeHelper","imageConditionalClasses","HEADING_ELEMENT_MAP","headingElement","headingProps","actionVariant","observeSizeOfElement"],"mappings":";;;;;;;;;;;;AAGO,IAAAA,IAAA,kBAAAC,OACHA,EAAA,YAAA,aACAA,EAAA,WAAA,YACAA,EAAA,QAAA,SACAA,EAAA,YAAA,aAJQA,IAAAD,KAAA,CAAA,CAAA,GAOLE,IAAA,kBAAAC,OACHA,EAAA,eAAA,iBACAA,EAAA,eAAA,iBACAA,EAAA,eAAA,iBACAA,EAAA,eAAA,iBACAA,EAAA,wBAAA,0BACAA,EAAA,eAAA,gBACAA,EAAA,UAAA,WACAA,EAAA,iBAAA,kBACAA,EAAA,mBAAA,oBACAA,EAAA,wBAAA,yBACAA,EAAA,iBAAA,kBACAA,EAAA,sBAAA,uBACAA,EAAA,YAAA,aACAA,EAAA,UAAA,WACAA,EAAA,eAAA,gBACAA,EAAA,oBAAA,qBAhBQA,IAAAD,KAAA,CAAA,CAAA,GAmBLE,IAAA,kBAAAC,OACHA,EAAA,QAAA,SACAA,EAAA,QAAA,SACAA,EAAAA,EAAA,OAAA,IAAA,IAAA,QAHQA,IAAAD,KAAA,CAAA,CAAA;mBCuIRE,IAAA,CAAA;;;;;;;;;;;;AAjHA,UAAAC,IAAAC,GASAC,IAAAC,EAAA,IAAA,GACAC,IAAAD,EAAA,CAAA,GAEAE,IAAAC,EAAA,MAAAF,EAAA,QAAA,GAAA,GAEAG,IAAAD,EAAA,MAAA;AACI,cAAAN,EAAA,SAAA;AAAA,QAAuB,KAAAP,EAAA;AAEf,iBAAAY,EAAA,QAAAR,EAAA,QAAAA,EAAA;AAAA,QAAiG,KAAAJ,EAAA;AAEjG,iBAAAY,EAAA,QAAA,OAAAR,EAAA;AAAA,QAAoE;AAEpE,iBAAA;AAAA,MAAO;AAAA,IACf,CAAA,GAGJW,IAAAL,EAAA,EAAA;AAEA,IAAAM;AAAA,MAAA,CAAA,MAAAT,EAAA,OAAAO,CAAA;AAAA,MACoC,YAAA;AAE5B,QAAAP,EAAA,SAAAO,EAAA,UAGIA,EAAA,UAAA,UACIC,EAAA,SAAA,MAAAE,EAAA,uBAAA,OAAA,EAAA,oCAAA,MAAA,OAAA,6BAAA,GAAA,oCAAA,MAAA,OAAA,6BAAA,GAAA,oCAAA,MAAA,OAAA,6BAAA,GAAA,oCAAA,MAAA,OAAA,6BAAA,GAAA,6CAAA,MAAA,OAAA,sCAAA,GAAA,mCAAA,MAAA,OAAA,4BAAA,GAAA,8BAAA,MAAA,OAAA,uBAAA,GAAA,qCAAA,MAAA,OAAA,8BAAA,GAAA,uCAAA,MAAA,OAAA,gCAAA,GAAA,4CAAA,MAAA,OAAA,qCAAA,GAAA,qCAAA,MAAA,OAAA,8BAAA,GAAA,0CAAA,MAAA,OAAA,mCAAA,GAAA,gCAAA,MAAA,OAAA,yBAAA,GAAA,8BAAA,MAAA,OAAA,uBAAA,GAAA,mCAAA,MAAA,OAAA,4BAAA,GAAA,wCAAA,MAAA,OAAA,iCAAA,EAAA,CAAA,GAAA,kBAAAV,EAAA,KAAA,QAAA,CAAA,GAAA,UAEAQ,EAAA,SAAA,MAAAE,EAAA,uBAAA,OAAA,EAAA,oCAAA,MAAA,OAAA,6BAAA,GAAA,oCAAA,MAAA,OAAA,6BAAA,GAAA,oCAAA,MAAA,OAAA,6BAAA,GAAA,oCAAA,MAAA,OAAA,6BAAA,GAAA,6CAAA,MAAA,OAAA,sCAAA,GAAA,mCAAA,MAAA,OAAA,4BAAA,GAAA,8BAAA,MAAA,OAAA,uBAAA,GAAA,qCAAA,MAAA,OAAA,8BAAA,GAAA,uCAAA,MAAA,OAAA,gCAAA,GAAA,4CAAA,MAAA,OAAA,qCAAA,GAAA,qCAAA,MAAA,OAAA,8BAAA,GAAA,0CAAA,MAAA,OAAA,mCAAA,GAAA,gCAAA,MAAA,OAAA,yBAAA,GAAA,8BAAA,MAAA,OAAA,uBAAA,GAAA,mCAAA,MAAA,OAAA,4BAAA,GAAA,wCAAA,MAAA,OAAA,iCAAA,EAAA,CAAA,GAAA,kBAAAV,EAAA,KAAA,QAAA,CAAA,GAAA;AAAA,MAER;AAAA,MACJ,EAAA,WAAA,GAAA;AAAA,IACkB;AAGtB,UAAAW,IAAAL,EAAA,OAAA;AAAA,MAAgD,+BAAAC,EAAA,UAAA;AAAA,MACU,+BAAAA,EAAA,UAAA;AAAA,IACA,EAAA,GAG1DK,IAAA;AAAA,MAA4B,CAAAnB,EAAA,SAAA,GAAA;AAAA,MACY,CAAAA,EAAA,QAAA,GAAA;AAAA,MACD,CAAAA,EAAA,KAAA,GAAA;AAAA,MACH,CAAAA,EAAA,SAAA,GAAA;AAAA,IACI,GAGxCoB,IAAAP;AAAA,MAAuB,MAAAN,EAAA,aAAAY,EAAAZ,EAAA,OAAA;AAAA,IACwC,GAG/Dc,IAAAR,EAAA,OAAA;AAAA,MAAqC,IAAAO,EAAA;AAAA,MACd,QAAAb,EAAA,YAAAP,EAAA;AAAA,MAC8B,WAAAO,EAAA,YAAAP,EAAA;AAAA,MACG,SAAAO,EAAA,YAAAP,EAAA,YAAA,SAAA;AAAA,IACoB,EAAA,GAG5EsB,IAAAT,EAAA,MAAA;AACI,cAAAN,EAAA,SAAA;AAAA,QAAuB,KAAAP,EAAA;AAEf,iBAAA;AAAA,QAAO,KAAAA,EAAA;AAEP,iBAAA;AAAA,QAAO;AAEP,iBAAA;AAAA,MAAO;AAAA,IACf,CAAA;AAIJ,WAAAgB,EAAAP,GAAA,MAAA;AAEI,MAAAc,EAAAd,EAAA,OAAA,MAAA;AACI,QAAAA,EAAA,UACIE,EAAA,QAAAF,EAAA,MAAA;AAAA,MACJ,CAAA;AAAA,IACH,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"input-field-password.DvJltLuk.js","sources":["../../../vue2/src/components/input-field-password/input-field-password.types.ts","../../../vue2/src/components/input-field-password/assets/capslock.svg","../../../vue2/src/components/input-field-password/utilities/input-field-password.validation.ts","../../../vue2/src/components/input-field-password/input-field-password.vue"],"sourcesContent":["import type { BentoInputFieldProps, BentoInputFieldValue } from '@/components/input-field/input-field.types';\nimport { type FormField } from '../../types/form-field';\n\n/**\n * Public\n */\n\nexport interface BentoInputFieldPasswordValidationListItem {\n label?: string;\n key?: BentoInputFieldPasswordDefaultRuleKeys | string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n validate?: (value: BentoInputFieldValue, ...args: Array<any>) => boolean;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n additionalArgs?: Array<any>;\n disabled?: boolean;\n}\n\nexport type BentoInputFieldPasswordDefaultRuleKeys =\n | 'minLength'\n | 'requireLowercase'\n | 'requireNumeric'\n | 'requireSpecialCharacter'\n | 'requireUppercase';\n\nexport type BentoInputFieldPasswordErrorsList = Record<BentoInputFieldPasswordDefaultRuleKeys | string, string>;\n\nexport interface BentoInputFieldPasswordValidation {\n title?: string;\n suggestion?: string;\n extendDefaultValidation?: boolean;\n list: Array<BentoInputFieldPasswordValidationListItem>;\n}\n\nexport interface BentoInputFieldPasswordProps extends FormField {\n /**\n * Reduces height of the input\n */\n condensed?: BentoInputFieldProps['condensed'];\n\n /**\n * The debounce time in milliseconds for running validation and emitting the `input` event after the user has stopped typing.\n * This helps to avoid excessive validation checks on every keystroke. Defaults to `500`.\n */\n debounceTime?: number;\n\n /**\n * Performs real-time validations over the input value. Default: `false`.\n * Disabling the option (set to `true`) will not run pre-defined validations or custom validations defined in the `validation` field.\n */\n disableValidation?: boolean;\n\n /**\n * Text displayed as the value of the input-field\n * @deprecated Since v2.0.0. Use `v-model` or `model-value` instead.\n */\n value?: BentoInputFieldProps['value'];\n\n /**\n * Text displayed as the value of the input-field\n */\n modelValue?: BentoInputFieldProps['modelValue'];\n\n /**\n * Configuration object for password field validation.\n *\n * This object defines the validation criteria and associated messages for a password field.\n * It includes the following properties:\n *\n * - `title`: The title displayed at the top of the validation hint.\n * - `suggestion`: The message displayed at the bottom of the validation hint, providing additional guidance.\n * - `extendDefaultValidation`: Set to true if you want to add your custom rules to the default validation instead of overriding the list.\n * - `list`: An array of callback functions to be executed on the value after each user input, validating the password against the specified rules.\n *\n * By default, the validation checks that:\n *\n * - The value has a minimum length of 12 characters.\n * - The value contains at least one lowercase letter.\n * - The value contains at least one uppercase letter.\n * - The value contains at least one numeric digit.\n * - The value contains at least one special character.\n *\n *\n */\n validation?: BentoInputFieldPasswordValidation;\n\n /**\n * Whether the password validation hint is displayed when the input field is activated via focus or input\n */\n withHint?: boolean;\n}\n\n/**\n * Private\n */\n\nexport enum BentoInputFieldPasswordType {\n TEXT = 'text',\n PASSWORD = 'password',\n}\n\nexport enum BentoInputFieldPasswordDefaultRule {\n MIN_LENGTH = 'minLength',\n REQUIRE_LOWERCASE = 'requireLowercase',\n REQUIRE_NUMERIC = 'requireNumeric',\n REQUIRE_SPECIAL_CHARACTER = 'requireSpecialCharacter',\n REQUIRE_UPPERCASE = 'requireUppercase',\n}\n","export default \"data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='capslock'%3e%3cg%20id='Union'%3e%3cpath%20d='M13.75%205.63952L8%201.03952L2.25%205.63952V7.74999H4.75V11.75H11.25V7.74999H13.75V5.63952ZM6.25%206.24999H3.88809L8%202.96046L12.1119%206.24999H9.75V10.25H6.25V6.24999Z'%20fill='%2300112C'/%3e%3cpath%20d='M11.25%2014.75V13.25H4.75V14.75H11.25Z'%20fill='%2300112C'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e\"","import { type BentoInputFieldValue } from '@/components/input-field';\n\nfunction stringifyValue(value: BentoInputFieldValue): string {\n return value?.toString() ?? '';\n}\n\n/**\n * Validates if the length of the provided value is greater than or equal to the specified length.\n *\n * @param value - The input value to check.\n * @param length - The minimum required length of the value. Defaults to 12.\n * @returns `true` if the length of the value is greater than or equal to the specified length, `false` otherwise.\n */\nexport function minLength(value: BentoInputFieldValue, length = 12): boolean {\n return stringifyValue(value).length >= length;\n}\n\n/**\n * Validates if the provided value contains at least one lowercase letter.\n *\n * @param value - The input value to check.\n * @returns `true` if the value contains at least one lowercase letter, `false` otherwise.\n */\nexport function requireLowercase(value: BentoInputFieldValue): boolean {\n return /[a-z]/.test(stringifyValue(value));\n}\n\n/**\n * Validates if the provided value contains at least one uppercase letter.\n *\n * @param value - The input value to check.\n * @returns `true` if the value contains at least one uppercase letter, `false` otherwise.\n */\nexport function requireUppercase(value: BentoInputFieldValue): boolean {\n return /[A-Z]/.test(stringifyValue(value));\n}\n\n/**\n * Validates if the provided value contains at least one numerical digit.\n *\n * @param value - The input value to check.\n * @returns `true` if the value contains at least one numerical digit, `false` otherwise.\n */\nexport function requireNumeric(value: BentoInputFieldValue): boolean {\n return /\\d/.test(stringifyValue(value));\n}\n\n/**\n * Validates if the provided value contains at least one special character (non-alphanumeric).\n *\n * @param value - The input value to check.\n * @returns `true` if the value contains at least one special character, `false` otherwise.\n */\nexport function requireSpecialCharacter(value: BentoInputFieldValue): boolean {\n return /[^a-zA-Z0-9]/.test(stringifyValue(value));\n}\n","<template>\n <div ref=\"inputFieldPasswordRef\">\n <bento-input-field\n ref=\"inputFieldPasswordInputRef\"\n v-bind=\"inputFieldArgs\"\n class=\"b-input-field-password__input\"\n autocapitalize=\"none\"\n autocorrect=\"off\"\n spellcheck=\"false\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @update:model-value=\"onUpdateModelValue\"\n @keydown=\"checkCapsLock\"\n @keyup=\"checkCapsLock\"\n >\n <template v-if=\"label\">{{ label }}</template>\n <template v-else><slot /></template>\n <template v-if=\"description\" #description>\n <slot name=\"description\">{{ description }}</slot>\n </template>\n\n <template v-if=\"isCapsLockOn\" #iconBefore>\n <div\n class=\"b-input-field-password__caps-lock-indicator\"\n @mouseenter=\"handleCapsLockMouseEnter\"\n @mouseleave=\"handleCapsLockMouseLeave\"\n >\n <bento-image\n ref=\"inputFieldPasswordCapsLockIconRef\"\n :src=\"CapsLockIcon\"\n :alt=\"t('capsLockEnabled')\"\n />\n </div>\n\n <tooltip\n v-if=\"inputFieldPasswordCapsLockIconRef\"\n :class=\"tooltipConditionalClass\"\n :content=\"t('capsLockEnabled')\"\n :disabled-focus-trap=\"true\"\n :fallback-position=\"['top', 'bottom']\"\n :is-shown=\"isTooltipDisplayed\"\n :target-element=\"inputFieldPasswordCapsLockIconRef\"\n />\n </template>\n\n <template v-if=\"!disabled\" #iconAfter>\n <bento-button variant=\"tertiary\" @click=\"toggleInputType\">\n <template #iconLeft>\n <show-icon v-if=\"!isPasswordReadable\" :svg-title=\"t('showPassword')\" />\n <hide-icon v-if=\"isPasswordReadable\" :svg-title=\"t('hidePassword')\" />\n </template>\n </bento-button>\n </template>\n </bento-input-field>\n\n <bento-popover\n v-if=\"hasValidations\"\n :open=\"isHintDisplayed\"\n :target-element=\"inputFieldPasswordInputRef\"\n :disable-focus-trap=\"true\"\n :aria-label=\"computedValidations.title\"\n :aria-describedby=\"validationListId\"\n position=\"right-start\"\n >\n <div :id=\"validationPopoverId\">\n <bento-typography v-if=\"computedValidations.title\" class=\"b-input-field-password__validation-title\">\n {{ computedValidations.title }}\n </bento-typography>\n\n <p v-if=\"!hasErrors\" class=\"b-input-field-password__validation-status--valid\" role=\"alert\">\n {{ t('validationValid') }}\n </p>\n\n <ul :id=\"validationListId\" class=\"b-input-field-password__validation-list\">\n <li\n v-for=\"(rule, index) in computedValidationList\"\n :key=\"index\"\n :class=\"passwordValidityConditionalClass[index]\"\n aria-live=\"polite\"\n aria-atomic=\"true\"\n >\n <span class=\"b-input-field-password__validation-list-icon\">\n <checkmark-circle-fill-icon\n v-if=\"passwordValidity[index]\"\n :svg-title=\"t('validationChecked')\"\n />\n\n <dot-icon v-else :svg-title=\"t('validationUnchecked')\" />\n </span>\n\n <bento-typography class=\"b-input-field-password__validation-list-text\" el=\"span\">\n {{ rule.label }}\n </bento-typography>\n </li>\n </ul>\n\n <bento-typography\n v-if=\"computedValidations.suggestion\"\n class=\"b-input-field-password__validation-suggestion\"\n >\n {{ computedValidations.suggestion }}\n </bento-typography>\n </div>\n </bento-popover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { BentoButton } from '@/components/button';\n import { BentoImage } from '@/components/image';\n import { BentoInputField } from '@/components/input-field';\n import { BentoPopover } from '@/components/popover';\n import { BentoTypography } from '@/components/typography';\n import { Tooltip } from '@/internal';\n import type { BentoInputFieldProps } from '@/components/input-field/input-field.types';\n import {\n BentoInputFieldPasswordDefaultRule,\n type BentoInputFieldPasswordErrorsList,\n type BentoInputFieldPasswordProps,\n BentoInputFieldPasswordType,\n type BentoInputFieldPasswordValidation,\n type BentoInputFieldPasswordValidationListItem,\n } from './input-field-password.types';\n import CheckmarkCircleFillIcon from '@adyen/ui-assets-icons-16/vue/checkmark-circle-fill';\n import DotIcon from '@adyen/ui-assets-icons-16/vue/dot';\n import HideIcon from '@adyen/ui-assets-icons-16/vue/hide';\n import ShowIcon from '@adyen/ui-assets-icons-16/vue/show';\n import CapsLockIcon from './assets/capslock.svg';\n\n import { useFocusWithin, watchDebounced } from '@vueuse/core';\n import { computed, provide, ref, type SetupContext, useAttrs, watch } from 'vue';\n\n import { useI18n } from '@/utils/ts/i18n';\n\n import {\n minLength,\n requireLowercase,\n requireNumeric,\n requireSpecialCharacter,\n requireUppercase,\n } from '@/components/input-field-password/utilities/input-field-password.validation';\n import { generateUid } from '@/core/utils/ts';\n import { useFormFieldEmits } from '@/utils/ts/form-field/form-field';\n import { deprecate } from '@/utils/ts/deprecate';\n\n import messages from './messages.json';\n import { INPUT_FIELD_PARENT_COMPONENT_INJECTION_KEY } from '@/components/input-field/input-field.keys';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const { t, n } = useI18n<{ message: MessageSchema }>({ messages });\n\n const props = withDefaults(defineProps<BentoInputFieldPasswordProps>(), {\n condensed: false,\n debounceTime: DEBOUNCE_DURATION,\n description: null,\n disabled: false,\n disableValidation: false,\n errorMessage: null,\n label: null,\n optional: false,\n placeholder: '',\n readonly: false,\n required: false,\n tooltipText: null,\n validation: undefined,\n value: undefined,\n modelValue: undefined,\n withHint: true,\n });\n\n const emit = defineEmits<{\n /**\n * Emitted when the element has lost focus\n */\n (e: 'blur'): void;\n\n /**\n * Emitted when the element has received focus\n */\n (e: 'focus'): void;\n\n /**\n * Emits an `input:valid` event when the value is validated against the provided validations.\n * This emit has a debounce and is emitted after an `input` event.\n */\n (e: 'input:valid'): void;\n\n /**\n * Emits an `input:error` event when the value fails the validation.\n * This emit has a debounce and is emitted after an `input` event.\n */\n (e: 'input:error', errors: BentoInputFieldPasswordErrorsList): void;\n\n /**\n * Emits an `input` event whenever the value in the input is changed.\n * @deprecated Since v2.0.0. Use `v-model` or `update:model-value` instead.\n */\n (e: 'input', value: BentoInputFieldPasswordProps['value']): void;\n\n /**\n * Emits an `update:model-value` event whenever the value in the input is changed.\n */\n (e: 'update:model-value', value: BentoInputFieldPasswordProps['modelValue']): void;\n }>();\n\n const attrs = useAttrs();\n\n const inputType = ref(BentoInputFieldPasswordType.PASSWORD);\n const inputValue = ref(props.modelValue ?? props.value);\n const isHintDisplayed = ref(false);\n const isTouched = ref(false);\n const passwordValidity = ref<Array<boolean>>([]);\n const errorsList = ref<BentoInputFieldPasswordErrorsList>({});\n const capsLockTooltipTimeoutID = ref<ReturnType<typeof setTimeout>>(null);\n const isTooltipDisplayed = ref(false);\n const inputFieldPasswordRef = ref(null);\n const inputFieldPasswordInputRef = ref(null);\n const inputFieldPasswordCapsLockIconRef = ref(null);\n const isCapsLockOn = ref(false);\n\n provide(INPUT_FIELD_PARENT_COMPONENT_INJECTION_KEY, 'bento-input-field-password');\n\n const { focused } = useFocusWithin(inputFieldPasswordRef);\n\n const { emitValue } = useFormFieldEmits<BentoInputFieldPasswordProps['modelValue']>(emit);\n\n const validationListId = generateUid('validationListId');\n const validationPopoverId = generateUid('validationPopoverId');\n\n const isPasswordReadable = computed(() => inputType.value === BentoInputFieldPasswordType.TEXT);\n\n const passwordValidityConditionalClass = computed(() =>\n passwordValidity.value.map(validity =>\n validity\n ? 'b-input-field-password__validation-list--valid'\n : 'b-input-field-password__validation-list--invalid'\n )\n );\n\n const tooltipConditionalClass = computed(() =>\n capsLockTooltipTimeoutID.value ? 'b-input-field-password__input-tooltip--timed' : ''\n );\n\n const inputFieldArgs = computed<BentoInputFieldProps & SetupContext['attrs']>(() => ({\n ariaHidden: false,\n condensed: props.condensed,\n disabled: props.disabled,\n errorMessage: props.errorMessage,\n optional: props.optional,\n placeholder: props.placeholder,\n readonly: props.readonly,\n required: props.required,\n tooltipText: props.tooltipText,\n type: inputType.value,\n modelValue: inputValue.value,\n\n 'aria-haspopup': hasValidations.value ? 'dialog' : false,\n 'aria-describedby': hasValidations.value ? validationPopoverId : '',\n\n ...attrs,\n }));\n\n const computedValidations = computed<BentoInputFieldPasswordValidation>(() => {\n if (props.validation && !props.validation.extendDefaultValidation) {\n return props.validation;\n }\n\n const defaultValidationList = [\n {\n label: t('validationMinLength', { numberOfCharacters: n(MIN_PASSWORD_LENGTH) }),\n key: BentoInputFieldPasswordDefaultRule.MIN_LENGTH,\n validate: minLength,\n },\n {\n label: t('validationRequireLowercase', { numberOne: n(1) }),\n key: BentoInputFieldPasswordDefaultRule.REQUIRE_LOWERCASE,\n validate: requireLowercase,\n },\n {\n label: t('validationRequireUppercase', { numberOne: n(1) }),\n key: BentoInputFieldPasswordDefaultRule.REQUIRE_UPPERCASE,\n validate: requireUppercase,\n },\n {\n label: t('validationRequireNumeric', { numberOne: n(1) }),\n key: BentoInputFieldPasswordDefaultRule.REQUIRE_NUMERIC,\n validate: requireNumeric,\n },\n {\n label: t('validationRequireSpecialCharacter', { numberOne: n(1) }),\n key: BentoInputFieldPasswordDefaultRule.REQUIRE_SPECIAL_CHARACTER,\n validate: requireSpecialCharacter,\n },\n ];\n\n let validationList: Array<BentoInputFieldPasswordValidationListItem> = defaultValidationList;\n\n if (props.validation) {\n const defaultValidationKeys: Array<string> = defaultValidationList.map(rule => rule.key);\n const customRuleKeys = props.validation?.list?.map(rule => rule.key);\n // remove from the custom list any rules with default keys (rules that are overriding existent rules)\n const customValidationList =\n props.validation?.list?.filter(rule => !defaultValidationKeys.includes(rule.key)) ?? [];\n\n // loop through the default list and replace default rule with the custom rule if it exists\n const validationListWithOverrides = defaultValidationList.map(rule => {\n if (customRuleKeys?.includes(rule.key)) {\n const customRule = props.validation?.list?.find(customRule => customRule.key === rule.key);\n return customRule;\n } else {\n return rule;\n }\n });\n validationList = [...validationListWithOverrides, ...customValidationList];\n }\n\n return {\n title: props.validation?.title ?? t('validationTitle'),\n suggestion: props.validation?.suggestion ?? t('validationSuggestion'),\n list: validationList,\n };\n });\n\n const computedValidationList = computed(() => computedValidations.value?.list?.filter(rule => !rule.disabled));\n\n const hasErrors = computed(() => passwordValidity.value?.some(validation => !validation));\n const hasValidations = computed(\n () => inputFieldPasswordInputRef.value && computedValidations.value?.list?.length > 0\n );\n\n const checkCapsLock = (e: KeyboardEvent) => {\n // Check if getModifierState exists and is a function in case the user's browser is autofilling\n if (typeof e.getModifierState === 'function') {\n isCapsLockOn.value = e.getModifierState('CapsLock');\n }\n };\n\n const toggleInputType = () => {\n if (isPasswordReadable.value) {\n inputType.value = BentoInputFieldPasswordType.PASSWORD;\n } else {\n inputType.value = BentoInputFieldPasswordType.TEXT;\n }\n };\n\n const onUpdateModelValue = (value: string) => {\n if (props.disabled) {\n return;\n }\n\n inputValue.value = value;\n\n emitValue(inputValue.value);\n };\n\n const onFocus = () => {\n emit('focus');\n };\n\n const onBlur = () => {\n emit('blur');\n };\n\n const checkValidity = (value: BentoInputFieldPasswordProps['value']) => {\n const rulesValidityObj = computedValidationList.value?.map(validationItem => ({\n key: validationItem.key,\n label: validationItem.label,\n isValid: validationItem.validate(value, ...(validationItem.additionalArgs ?? [])),\n }));\n let customRuleIndex = 1;\n\n passwordValidity.value = rulesValidityObj?.map(error => error.isValid);\n\n errorsList.value = rulesValidityObj\n ?.filter(rule => !rule.isValid)\n .reduce((errorsObject, error) => {\n const key = error.key ?? `custom-rule-${customRuleIndex++}`;\n return {\n ...errorsObject,\n [key]: error.label,\n };\n }, {});\n };\n\n const handleCapsLockMouseLeave = () => {\n isTooltipDisplayed.value = false;\n capsLockTooltipTimeoutID.value = null;\n };\n\n const handleCapsLockMouseEnter = () => {\n isTooltipDisplayed.value = true;\n };\n\n watch(\n () => [props.value, props.modelValue],\n () => {\n inputValue.value = props.modelValue ?? props.value;\n }\n );\n\n watch(focused, focused => {\n // Always set dirty to true when blur occurs\n if (!focused) {\n isTouched.value = true;\n }\n\n // Disable validations & hint if \"disableValidation\" is \"true\"\n if (!props.disableValidation) {\n if (props.withHint) {\n isHintDisplayed.value = focused;\n }\n checkValidity(inputValue.value);\n }\n });\n\n watch(isCapsLockOn, isCapsLockOn => {\n if (!isCapsLockOn) {\n clearTimeout(capsLockTooltipTimeoutID.value);\n\n capsLockTooltipTimeoutID.value = null;\n isTooltipDisplayed.value = false;\n } else {\n isTooltipDisplayed.value = true;\n\n capsLockTooltipTimeoutID.value = setTimeout(() => {\n capsLockTooltipTimeoutID.value = null;\n isTooltipDisplayed.value = false;\n }, TOOLTIP_TIMEOUT);\n }\n });\n\n watchDebounced(\n inputValue,\n inputValue => {\n checkValidity(inputValue);\n\n if (!hasErrors.value) {\n emit('input:valid');\n } else {\n emit('input:error', errorsList.value);\n }\n },\n // wait for 0.5s before checking validity OR 2s of continuous typing\n { debounce: props.debounceTime, maxWait: DEBOUNCE_MAX_WAIT }\n );\n\n if (props.value) {\n deprecate(\n 'BentoInputFieldPassword \"value\" property',\n `The use of \"value\" prop in \"BentoInputFieldPassword\" is no longer supported.\n Use the \"v-model\" or \"model-value\" property instead.`,\n '2.0.0'\n );\n }\n</script>\n\n<script lang=\"ts\">\n const MIN_PASSWORD_LENGTH = 12;\n const DEBOUNCE_DURATION = 500;\n const DEBOUNCE_MAX_WAIT = 2000;\n const TOOLTIP_TIMEOUT = 2000;\n\n /**\n * The input field password is a component designed to support users' preference for entering values securely.\n * This is an extension of the `bento-input-field` component.\n *\n * @example\n * import { BentoInputFieldPassword } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoInputFieldPassword },\n * template: `\n * <bento-input-field-password\n * label=\"Label\"\n * error-message=\"Error\"\n * :validation=\"{\n * extendDefaultValidation: true,\n * list: [\n * { label: '18 characters', key: 'minLength', validate: minLength, additionalArgs: [18] },\n * { label: 'Always true', key: 'alwaysTrue', validate: () => true },\n * { key: 'requireSpecialCharacter', disabled: true }\n * ],\n * }\"\n * />\n * `\n * }\n */\n export default {\n i18n: { messages },\n name: 'bento-input-field-password',\n model: { prop: 'modelValue' },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./input-field-password.scss\" />\n"],"names":["BentoInputFieldPasswordType","BentoInputFieldPasswordType2","BentoInputFieldPasswordDefaultRule","BentoInputFieldPasswordDefaultRule2","CapsLockIcon","stringifyValue","value","minLength","length","requireLowercase","requireUppercase","requireNumeric","requireSpecialCharacter","MIN_PASSWORD_LENGTH","DEBOUNCE_DURATION","DEBOUNCE_MAX_WAIT","TOOLTIP_TIMEOUT","__default__","messages","t","n","useI18n","props","__props","emit","__emit","attrs","useAttrs","inputType","ref","inputValue","isHintDisplayed","isTouched","passwordValidity","errorsList","capsLockTooltipTimeoutID","isTooltipDisplayed","inputFieldPasswordRef","inputFieldPasswordInputRef","inputFieldPasswordCapsLockIconRef","isCapsLockOn","provide","INPUT_FIELD_PARENT_COMPONENT_INJECTION_KEY","focused","useFocusWithin","emitValue","useFormFieldEmits","validationListId","generateUid","validationPopoverId","isPasswordReadable","computed","passwordValidityConditionalClass","validity","tooltipConditionalClass","inputFieldArgs","hasValidations","computedValidations","defaultValidationList","validationList","defaultValidationKeys","rule","customRuleKeys","customValidationList","customRule2","computedValidationList","hasErrors","validation","checkCapsLock","toggleInputType","onUpdateModelValue","onFocus","onBlur","checkValidity","rulesValidityObj","validationItem","customRuleIndex","error","errorsObject","key","handleCapsLockMouseLeave","handleCapsLockMouseEnter","watch","focused2","isCapsLockOn2","watchDebounced","inputValue2","deprecate"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pagination.BKXAbfS5.js","sources":["../../../vue2/src/components/pagination/components/pagination-results-per-page/pagination-results-per-page.vue","../../../vue2/src/components/pagination/components/pagination-context/pagination-context.vue","../../../ui-assets/icons-16/dist/vue/skip-left.vue","../../../ui-assets/icons-16/dist/vue/skip-right.vue","../../../ui-assets/icons-16/dist/vue/chevron-left-small.vue","../../../vue2/src/components/pagination/components/pagination-controls/pagination-controls.vue","../../../vue2/src/components/pagination/pagination.vue"],"sourcesContent":["<template>\n <div class=\"b-pagination-results-per-page\">\n <bento-typography el=\"div\">\n <component\n :is=\"i18nComponent\"\n v-bind=\"getI18nProps(translationPathKey)\"\n class=\"b-pagination-results-per-page__dropdown-container\"\n tag=\"div\"\n :plural=\"totalCount\"\n >\n <template v-if=\"hidePageSizeSelection\" #itemCount>{{ itemsPerPage }}</template>\n\n <template v-else #itemCount>\n <bento-dropdown\n :id=\"dropdownId\"\n :aria-label=\"t(translationPathKey, { itemCount: itemsPerPage, totalCount })\"\n class=\"b-pagination-results-per-page__dropdown\"\n condensed\n :items=\"predefinedDropdownOptions\"\n :model-value=\"itemsPerPage\"\n @update:model-value=\"onSelectChange\"\n />\n </template>\n <template v-if=\"!!totalCount\" #totalCount>{{ totalCount }}</template>\n </component>\n </bento-typography>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, watch } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import { BentoDropdown } from '@/components/dropdown';\n import { generateUid } from '@/core/utils/ts';\n import { getI18nComponent, getI18nProps, useI18n } from '@/utils/ts/i18n';\n import { printDevelopmentWarning } from '@/utils/ts/print-development-warning';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const { t, n } = useI18n<{ message: MessageSchema }>({ messages });\n\n const props = withDefaults(\n defineProps<{\n /**\n * Determines whether to hide the dropdown that allows users to change the number of results per page.\n * When set to `true`, the current `itemsPerPage` value is displayed as plain static text.\n */\n hidePageSizeSelection?: boolean;\n /**\n * The amount of items the pager is paging through.\n */\n itemsPerPage?: number;\n /**\n * The total number of items the pager is paging through.\n */\n totalCount?: number;\n /**\n * The predefined options for the results per page dropdown.\n */\n pageSizeItems?: Array<number>;\n }>(),\n {\n hidePageSizeSelection: false,\n itemsPerPage: 50,\n totalCount: null,\n pageSizeItems: () => [10, 20, 50, 75, 100],\n }\n );\n\n const emit = defineEmits<{\n (e: 'select', value: number);\n }>();\n\n const isValid = computed(\n () => Array.isArray(props.pageSizeItems) && props.pageSizeItems.every(option => Number.isInteger(option))\n );\n\n watch(\n isValid,\n valid => {\n if (!valid) {\n printDevelopmentWarning('BentoPagination: pageSizeItems must be an array of integers.');\n }\n },\n { immediate: true }\n );\n\n const dropdownId = generateUid('b-pagination-context-number-elements');\n const predefinedDropdownOptions = computed(() =>\n props.pageSizeItems.map(option => ({\n label: n(option),\n value: option,\n }))\n );\n const i18nComponent = getI18nComponent();\n\n const onSelectChange = (selectedNumberOfResults: number) => {\n emit('select', selectedNumberOfResults);\n };\n\n const translationPathKey = computed(() => (props.totalCount ? 'showingItemsWithTotal' : 'showingItems'));\n</script>\n\n<script lang=\"ts\">\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./pagination-results-per-page.scss\" />\n","<template>\n <div class=\"b-pagination-context\">\n <bento-typography v-if=\"totalPages > 1 && !hidePageSelection\" el=\"div\">\n <component :is=\"i18nComponent\" v-bind=\"getI18nProps('pageNumber')\" tag=\"div\">\n <template #page>\n <bento-dropdown\n :id=\"dropdownId\"\n :aria-label=\"t('pageNumber', { page: n(page) })\"\n class=\"b-pagination-context__dropdown\"\n condensed\n :items=\"listOfAvailablePages\"\n :model-value=\"page\"\n :virtual-scroll=\"virtualScroll\"\n @update:model-value=\"onPageSelectChange\"\n />\n </template>\n </component>\n </bento-typography>\n <bento-typography v-else-if=\"showPageNumberOfTotal\" el=\"span\">\n {{ t('pageNumberOfTotal', { page: n(page), totalPages: n(totalPages) }) }}\n </bento-typography>\n <bento-typography v-else el=\"span\">\n {{ t('pageNumber', { page: n(page) }) }}\n </bento-typography>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import { BentoDropdown } from '@/components/dropdown';\n import { type BentoListboxOptionItem } from '@/types/listbox';\n import { generateUid } from '@/core/utils/ts';\n import messages from './messages.json';\n import { getI18nComponent, getI18nProps, useI18n } from '@/utils/ts/i18n';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = withDefaults(\n defineProps<{\n /**\n * Hides the page selection dropdown and displays a static \"Page X of Y\" text instead.\n * Useful for very large datasets where rendering all page options would cause performance issues.\n */\n hidePageSelection?: boolean;\n /**\n * The current page number of the pager.\n */\n page?: number;\n\n /**\n * The total number of items the pager is paging through.\n */\n totalPages?: number;\n\n /**\n * Enables virtual scrolling on all dropdowns if set to true.\n */\n virtualScroll?: boolean;\n }>(),\n {\n hidePageSelection: false,\n page: 1,\n totalPages: null,\n virtualScroll: false,\n }\n );\n const emit = defineEmits<{\n (e: 'page-selected', value: string | number);\n }>();\n\n const { t, n } = useI18n<{ message: MessageSchema }>({ messages });\n const dropdownId = generateUid('bento-pagination-context-current-page');\n const onPageSelectChange = (selectedPage: string | number) => emit('page-selected', selectedPage);\n const i18nComponent = getI18nComponent();\n\n // Generate a list of pages from 1 to \"totalPages\"\n const transformIntoOption = (value: number): BentoListboxOptionItem => ({\n label: n(value),\n value,\n });\n const transformToPageNumber = (_, index) => index + 1;\n const listOfAvailablePages = computed(() =>\n Array.from(new Array(props.totalPages), transformToPageNumber).map(transformIntoOption)\n );\n const showPageNumberOfTotal = computed(\n () => props.totalPages === 1 || (props.hidePageSelection && props.page <= props.totalPages)\n );\n</script>\n\n<script lang=\"ts\">\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./pagination-context.scss\" />\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><path fill=\"#001222\" d=\"M9.06055 8.00011L12.0605 5.00011L10.9999 3.93945L6.93923 8.00011L10.9999 12.0608L12.0605 11.0001L9.06055 8.00011Z\"/><path fill=\"#001222\" d=\"M4.25 4.25L4.25 11.75H5.75L5.75 4.25L4.25 4.25Z\"/></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","\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><path fill=\"#001222\" d=\"M6.93945 7.99962L3.93945 10.9996L5.00011 12.0603L9.06077 7.99963L5.00011 3.93896L3.93945 4.99963L6.93945 7.99962Z\"/><path fill=\"#001222\" d=\"M11.75 11.7497V4.24974L10.25 4.24974V11.7497H11.75Z\"/></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","\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><path fill=\"#001222\" d=\"M10.5608 5.00011L7.56077 8.00011L10.5608 11.0001L9.50011 12.0608L5.43945 8.00011L9.50011 3.93945L10.5608 5.00011Z\"/></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 <ul class=\"b-pagination-controls\">\n <li class=\"b-pagination-controls__item\">\n <!-- Navigate to the first page -->\n <bento-button :disabled=\"isCurrentPageFirst\" variant=\"tertiary\" condensed @click=\"navigate(1)\">\n <template #iconLeft>\n <skip-left :svg-title=\"t('navigateToTheFirstPage')\" />\n </template>\n </bento-button>\n </li>\n <li class=\"b-pagination-controls__item\">\n <!-- Navigate to the previous page -->\n <bento-button :disabled=\"isCurrentPageFirst\" variant=\"tertiary\" condensed @click=\"navigate(page - 1)\">\n <template #iconLeft>\n <chevron-left :svg-title=\"t('navigateToThePreviousPage')\" />\n </template>\n </bento-button>\n </li>\n <li class=\"b-pagination-controls__item\">\n <!-- Navigate to the next page -->\n <bento-button :disabled=\"isNextButtonDisabled\" variant=\"tertiary\" condensed @click=\"navigate(page + 1)\">\n <template #iconLeft>\n <chevron-right :svg-title=\"t('navigateToTheNextPage')\" />\n </template>\n </bento-button>\n </li>\n <li class=\"b-pagination-controls__item\">\n <!-- Navigate to the last page -->\n <bento-button\n :disabled=\"isLastPageButtonDisabled\"\n variant=\"tertiary\"\n condensed\n @click=\"navigate(totalPages)\"\n >\n <template #iconLeft>\n <skip-right :svg-title=\"t('navigateToTheLastPage')\" />\n </template>\n </bento-button>\n </li>\n </ul>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue';\n import { BentoButton } from '@/components/button';\n import { useI18n } from '@/utils/ts/i18n';\n import SkipLeft from '@adyen/ui-assets-icons-16/vue/skip-left';\n import SkipRight from '@adyen/ui-assets-icons-16/vue/skip-right';\n import ChevronLeft from '@adyen/ui-assets-icons-16/vue/chevron-left-small';\n import ChevronRight from '@adyen/ui-assets-icons-16/vue/chevron-right-small';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = withDefaults(\n defineProps<{\n /**\n * Use to determine if the pager has a \"next page\".\n */\n hasNext?: boolean;\n\n /**\n * The current page number of the pager.\n */\n page: number;\n\n /**\n * The current page number of the pager.\n */\n totalPages?: number;\n }>(),\n {\n hasNext: null,\n totalPages: null,\n }\n );\n\n const emit = defineEmits<{\n (e: 'navigate', value: number);\n }>();\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const isCurrentPageFirst = computed(() => props.page === 1);\n const isCurrentPageLast = computed(() => props.page === props.totalPages);\n const isNextButtonDisabled = computed(() => {\n const hasNoNextPage = !props.hasNext;\n return hasNoNextPage || isCurrentPageLast.value;\n });\n const isLastPageButtonDisabled = computed(() => {\n const hasNoNextPage = !props.hasNext;\n const hasNoTotalPagesNumber = !props.totalPages;\n\n return hasNoNextPage || isCurrentPageLast.value || hasNoTotalPagesNumber;\n });\n\n const navigate = (pageArg: number) => {\n emit('navigate', pageArg);\n };\n</script>\n\n<script lang=\"ts\">\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./pagination-controls.scss\" />\n","<template>\n <div class=\"b-pagination\">\n <nav :aria-label=\"computedAriaLabel\" class=\"b-pagination__navigation\" :class=\"navigationConditionalClasses()\">\n <bento-pagination-results-per-page\n v-if=\"!hidePageSize\"\n class=\"b-pagination__results-per-page\"\n :hide-page-size-selection=\"hidePageSizeSelection\"\n :items-per-page=\"size\"\n :total-count=\"totalCount\"\n :page-size-items=\"pageSizeItems\"\n @select=\"onItemsPerPageChange\"\n />\n <bento-typography v-else-if=\"hasSlot('default')\"><slot /></bento-typography>\n\n <div class=\"b-pagination__page-navigator\">\n <bento-pagination-context\n class=\"b-pagination__context\"\n :total-pages=\"totalPages\"\n :page=\"page\"\n :virtual-scroll=\"virtualScroll\"\n :hide-page-selection=\"hidePageSelection\"\n @page-selected=\"onPageSelected\"\n />\n\n <div class=\"b-pagination__divider\"></div>\n\n <bento-pagination-controls\n class=\"b-pagination__controls\"\n :has-next=\"hasNext\"\n :page=\"page\"\n :total-pages=\"totalPages\"\n @navigate=\"navigate\"\n />\n </div>\n </nav>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref, toRefs, useAttrs, useSlots } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import BentoPaginationResultsPerPage from './components/pagination-results-per-page/pagination-results-per-page.vue';\n import BentoPaginationContext from './components/pagination-context/pagination-context.vue';\n import BentoPaginationControls from './components/pagination-controls/pagination-controls.vue';\n import { useAriaLabel } from '@/utils/ts/aria-label';\n import { useHasSlot } from '@/composables';\n import type { BentoPaginationProps } from './pagination.types';\n\n const props = withDefaults(defineProps<BentoPaginationProps>(), {\n ariaLabel: null,\n hasNext: null,\n hidePageSize: false,\n hidePageSelection: false,\n hidePageSizeSelection: false,\n page: 1,\n pageSizeItems: undefined,\n size: 20,\n totalCount: null,\n virtualScroll: false,\n });\n\n const emit = defineEmits<{\n /**\n * Triggered when the navigation controls are clicked or the items per page is changed (i.e. when the arrow buttons to the\n * rightmost of the screen or either dropdown is updated). It indicates to which page it should go next and also the page size.\n */\n (e: 'navigate', page: number, items?: number): void;\n\n /**\n * Triggered when the number of items per page is changed from the left hand dropdown.\n * It indicates the new number of items that will be displayed.\n */\n (e: 'items-page', size: number): void;\n\n /**\n * Triggered when the navigation controls are clicked, whether the arrow buttons to the\n * right most of the screen or the dropdown on the right hand is updated.\n * It indicates to which page it should go next\n * (easily achieved using the [sync modifier](https://v2.vuejs.org/v2/guide/components-custom-events.html#sync-Modifier))\n * e.g. `:page.sync=\"currentPage\"`\n */\n (e: 'update:page', page: number): void;\n\n /**\n * Triggered when the number of items per page is changed from the left hand dropdown.\n * It indicates the new number of items that will be displayed.\n * (easily achieved using the [sync modifier](https://v2.vuejs.org/v2/guide/components-custom-events.html#sync-Modifier))\n * e.g. `:size.sync=\"itemsPerPage\"`\n */\n (e: 'update:size', size: number): void;\n }>();\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const attrs = useAttrs();\n const ariaLabelAttribute = ref(attrs['aria-label']);\n const { ariaLabel } = toRefs(props);\n const computedAriaLabel = useAriaLabel({\n ariaLabel: ariaLabelAttribute.value as string,\n // TODO: take this line away when the aria-label props is removed\n label: ariaLabel,\n });\n\n const totalPages = computed(() =>\n !props.totalCount || !props.size ? null : Math.ceil(props.totalCount / props.size)\n );\n\n const navigate = (pageArg: number, itemsPerPage?: number) => {\n if (props.hidePageSize) {\n emit('navigate', pageArg);\n } else {\n emit('navigate', pageArg, itemsPerPage ?? props?.size);\n }\n emit('update:page', pageArg);\n };\n\n const onPageSelected = (pageNumber: number) => {\n navigate(pageNumber);\n };\n\n const onItemsPerPageChange = (elements: number) => {\n emit('items-page', elements);\n emit('update:size', elements);\n\n // Always go to first page when the\n // number of items page changes\n navigate(1, elements);\n };\n\n const navigationConditionalClasses = () => ({\n 'b-pagination__navigation--only-page-navigator': !hasSlot('default') && props.hidePageSize,\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * Paginiation component to help users page through data sets.\n *\n * There are two ways of doing navigation in this component:\n * 1. (Basic) You tell the component if there is a next page (hasNext)\n * 2. (Enhanced) You tell the component:\n * - How many total items exist (totalCount)\n * - The max number of items that you show/fetch per page (size)\n * - In this case you should not set the hasNext props\n *\n * If you have the data available and opt to use the Enhanced way you get extra controls:\n * - Page dropdown selector\n * - Last page button\n * - \"Showing 10 of 200 items\" text\n *\n * @usage\n * import { BentoPagination } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoPagination },\n * template: `\n * <bento-pagination :has-next=\"isNextPage\" />\n * `,\n * }\n */\n\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./pagination.scss\" />\n"],"names":["__default__$3","messages$2","t","n","useI18n","props","__props","emit","__emit","isValid","computed","option","watch","valid","printDevelopmentWarning","dropdownId","generateUid","predefinedDropdownOptions","i18nComponent","getI18nComponent","onSelectChange","selectedNumberOfResults","translationPathKey","__default__$2","messages$1","onPageSelectChange","selectedPage","transformIntoOption","value","transformToPageNumber","_","index","listOfAvailablePages","showPageNumberOfTotal","uuid$2","openBlock","createElementBlock","mergeProps","_ctx","createCommentVNode","uuid$1","uuid","__default__$1","messages","isCurrentPageFirst","isCurrentPageLast","isNextButtonDisabled","isLastPageButtonDisabled","hasNoNextPage","hasNoTotalPagesNumber","navigate","pageArg","__default__","slots","useSlots","hasSlot","useHasSlot","attrs","useAttrs","ariaLabelAttribute","ref","ariaLabel","toRefs","computedAriaLabel","useAriaLabel","totalPages","itemsPerPage","onPageSelected","pageNumber","onItemsPerPageChange","elements","navigationConditionalClasses"],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import { b as o } from "./popper-container.ChRadAy_.js";
2
- const i = { ...o };
3
- export {
4
- i as B
5
- };
6
- //# sourceMappingURL=popover.types.BygdLPT4.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scroll-to-section.BntX_GuR.js","sources":["../../../vue2/src/composables/use-scroll-spy/use-scroll-spy.ts","../../../vue2/src/composables/use-section-navigation-keyboard/use-section-navigation-keyboard.ts","../../../vue2/src/utils/ts/scroll-to-section/scroll-to-section.ts"],"sourcesContent":["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","import { computed, nextTick, type Ref, ref, unref, watch } from 'vue';\nimport { unrefElement } from '@/directives/click-outside/utils';\nimport type {\n UseSectionNavigationKeyboardOptions,\n UseSectionNavigationKeyboardReturn,\n} from './use-section-navigation-keyboard.types';\nimport { type MaybeRef } from '@/types/maybe-ref';\n\n/**\n * Resolves a navigation ref to a focusable root element.\n * @param target Navigation item component or element ref.\n * @returns Focusable root element when available.\n */\nconst getDefaultFocusableElement = (target: unknown) => {\n const element = unrefElement(target as Parameters<typeof unrefElement>[0]);\n\n return element instanceof HTMLElement ? element : null;\n};\n\n/**\n * Provides roving keyboard focus behavior for section navigation controls.\n * @param items Navigation items used to derive enabled indices.\n * @param options Configuration for disabled items, initial index, and focus behavior.\n * @returns Keyboard handlers, item refs, and focus state helpers.\n */\nexport const useSectionNavigationKeyboard = <Item, Target = unknown>(\n items: MaybeRef<ReadonlyArray<Item>>,\n options: UseSectionNavigationKeyboardOptions<Item, Target> = {}\n): UseSectionNavigationKeyboardReturn<Target> => {\n const navigationItemRefs = ref<Array<Target>>([]) as Ref<Array<Target>>;\n const enabledIndices = computed(() =>\n unref(items)\n .map((item, index) => ({ disabled: options.isDisabled?.(item), index }))\n .filter(({ disabled }) => !disabled)\n .map(({ index }) => index)\n );\n\n /**\n * Resolves the initial focus index from the configured index or first enabled item.\n * @returns Initial index for roving focus.\n */\n const getInitialIndex = () =>\n enabledIndices.value.includes(options.initialIndex?.value ?? -1)\n ? (options.initialIndex?.value as number)\n : (enabledIndices.value[0] ?? -1);\n const focusedIndex = ref(getInitialIndex()) as Ref<number>;\n\n /**\n * Focuses a navigation item by index.\n * @param index Index of the item to focus.\n */\n const focusItem = (index: number) => {\n const target = navigationItemRefs.value[index] as Target;\n\n if (options.focusTarget?.(target)) {\n return;\n }\n\n const element = options.getFocusableElement?.(target) ?? getDefaultFocusableElement(target);\n\n element?.focus();\n };\n\n /**\n * Focuses the new item after Vue applies the updated tabindex.\n * @param newIndex Newly focused item index.\n * @param oldIndex Previously focused item index.\n */\n const onFocusedIndexChange = async (newIndex: number, oldIndex: number) => {\n if (newIndex !== oldIndex) {\n await nextTick();\n focusItem(newIndex);\n }\n };\n\n watch(focusedIndex, onFocusedIndexChange);\n\n /**\n * Moves focus to the next or previous enabled item.\n * @param direction Direction to move focus in.\n */\n const moveFocus = (direction: 1 | -1) => {\n const indices = enabledIndices.value;\n const currentPosition = indices.indexOf(focusedIndex.value);\n const nextPosition =\n currentPosition === -1 ? 0 : (currentPosition + direction + indices.length) % indices.length;\n\n focusedIndex.value = indices[nextPosition] ?? -1;\n };\n\n /**\n * Handles arrow, Home, and End key navigation.\n * @param e Keyboard event from the navigation container.\n */\n const onKeydownNavigation = (e: KeyboardEvent) => {\n switch (e.key) {\n case 'ArrowRight':\n case 'ArrowDown':\n e.preventDefault();\n moveFocus(1);\n break;\n case 'ArrowLeft':\n case 'ArrowUp':\n e.preventDefault();\n moveFocus(-1);\n break;\n case 'Home':\n e.preventDefault();\n focusedIndex.value = enabledIndices.value[0] ?? -1;\n break;\n case 'End':\n e.preventDefault();\n focusedIndex.value = enabledIndices.value[enabledIndices.value.length - 1] ?? -1;\n break;\n }\n };\n\n /**\n * Checks whether an item should be in the tab order.\n * @param index Item index to check.\n * @returns Whether the item is currently focusable.\n */\n const isFocusable = (index: number) => focusedIndex.value === index;\n\n return {\n focusedIndex,\n isFocusable,\n navigationItemRefs,\n onKeydownNavigation,\n };\n};\n","import { unrefElement } from '@/directives/click-outside/utils';\nimport { printDevelopmentWarning } from '@/utils/ts/print-development-warning';\nimport type { ScrollToSectionOptions, ScrollToSectionTarget } from './scroll-to-section.types';\n\n/**\n * Gets the URL fragment href for an element ref target.\n *\n * @param elementRef The element ref used as the section target.\n */\nexport const getElementFragmentHref = (elementRef?: ScrollToSectionTarget) => {\n const id = unrefElement(elementRef)?.id;\n\n return id ? `#${id}` : undefined;\n};\n\n/**\n * Scrolls to a section target and optionally updates scroll offset and URL hash.\n *\n * @param elementRef The element ref used as the section target.\n * @param options Scroll behavior options.\n */\nexport const scrollToSection = (elementRef: ScrollToSectionTarget, options: ScrollToSectionOptions = {}) => {\n const { disabled, scrollOffset, updateHash } = options;\n\n if (disabled) {\n return;\n }\n\n const el = unrefElement(elementRef);\n\n if (!el) {\n printDevelopmentWarning(`[${options.warningPrefix ?? 'bento'}] element ref not found`);\n return;\n }\n\n if (typeof scrollOffset === 'number' && el.style.scrollMarginTop) {\n el.style.scrollMarginTop = `${scrollOffset}px`;\n } else if (typeof scrollOffset === 'number') {\n const currentScrollMargin = window.getComputedStyle(el).scrollMarginTop;\n\n if (currentScrollMargin === '0px' || currentScrollMargin === '') {\n el.style.scrollMarginTop = `${scrollOffset}px`;\n }\n }\n\n if (!el.hasAttribute('tabindex')) {\n el.setAttribute('tabindex', '-1');\n }\n\n if (updateHash) {\n if (!el.id) {\n printDevelopmentWarning(`[${options.warningPrefix ?? 'bento'}] section target must have an id`);\n } else {\n window.history.pushState(null, '', `#${el.id}`);\n }\n }\n\n el.scrollIntoView({\n behavior: 'smooth',\n block: 'start',\n inline: 'nearest',\n });\n\n el.focus({ preventScroll: true });\n};\n"],"names":["useScrollSpy","items","options","activeIndex","ref","scrollY","useWindowScroll","windowHeight","useWindowSize","calculateActiveIndex","list","toValue","viewportHeight","midpoint","winnerIndex","maxVisibleRatio","i","el","rect","visibleHeight","ratio","watchThrottled","watchEffect","getDefaultFocusableElement","target","element","unrefElement","useSectionNavigationKeyboard","navigationItemRefs","enabledIndices","computed","unref","item","index","disabled","focusedIndex","focusItem","watch","newIndex","oldIndex","nextTick","moveFocus","direction","indices","currentPosition","nextPosition","getElementFragmentHref","elementRef","id","scrollToSection","scrollOffset","updateHash","printDevelopmentWarning","currentScrollMargin"],"mappings":"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"}