@adyen/bento-vue3 1.97.0 → 1.98.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 (229) hide show
  1. package/dist/@types/index.d.ts +56 -0
  2. package/dist/action-bar.js +1 -1
  3. package/dist/ai-tag.js +1 -1
  4. package/dist/anchor-scroller.js +1 -1
  5. package/dist/assets/accordion-item.css +1 -1
  6. package/dist/assets/action-bar.css +1 -1
  7. package/dist/assets/base-modal.css +1 -1
  8. package/dist/assets/button-actions.css +1 -1
  9. package/dist/assets/calendar.css +1 -1
  10. package/dist/assets/card.css +1 -1
  11. package/dist/assets/data-grid.css +1 -1
  12. package/dist/assets/date.css +1 -1
  13. package/dist/assets/dialog-page.css +1 -1
  14. package/dist/assets/draggable-handle.css +1 -1
  15. package/dist/assets/draggable.css +1 -0
  16. package/dist/assets/dropdown.css +1 -1
  17. package/dist/assets/file-uploader.css +1 -1
  18. package/dist/assets/filter-bar.css +1 -1
  19. package/dist/assets/header-meta.css +1 -1
  20. package/dist/assets/inspector.css +1 -1
  21. package/dist/assets/list-item.css +1 -1
  22. package/dist/assets/modal-fullscreen.css +1 -1
  23. package/dist/assets/navigation-menu-group.css +1 -1
  24. package/dist/assets/secondary-nav.css +1 -1
  25. package/dist/assets/sidepanel.css +1 -1
  26. package/dist/button.js +1 -1
  27. package/dist/card.js +1 -1
  28. package/dist/checkbox.js +2 -2
  29. package/dist/chunks/{action-bar.BEV9uXHS.js → action-bar.Dd0rr7Sb.js} +4 -4
  30. package/dist/chunks/{action-bar.BEV9uXHS.js.map → action-bar.Dd0rr7Sb.js.map} +1 -1
  31. package/dist/chunks/{ai-tag.BSzY3-0w.js → ai-tag.DOQ-UnnF.js} +2 -2
  32. package/dist/chunks/{ai-tag.BSzY3-0w.js.map → ai-tag.DOQ-UnnF.js.map} +1 -1
  33. package/dist/chunks/{anchor-scroller.J2mkf0uu.js → anchor-scroller.NRHfj2FY.js} +2 -2
  34. package/dist/chunks/{anchor-scroller.J2mkf0uu.js.map → anchor-scroller.NRHfj2FY.js.map} +1 -1
  35. package/dist/chunks/{base-modal.B7SiRo7c.js → base-modal.BzbJbryi.js} +5 -5
  36. package/dist/chunks/{base-modal.B7SiRo7c.js.map → base-modal.BzbJbryi.js.map} +1 -1
  37. package/dist/chunks/{button-actions-with-menu.DoUcLg-M.js → button-actions-with-menu.DZdmQdah.js} +3 -3
  38. package/dist/chunks/{button-actions-with-menu.DoUcLg-M.js.map → button-actions-with-menu.DZdmQdah.js.map} +1 -1
  39. package/dist/chunks/{button-actions.CWmTl4cF.js → button-actions.CgZbPzhi.js} +2 -2
  40. package/dist/chunks/{button-actions.CWmTl4cF.js.map → button-actions.CgZbPzhi.js.map} +1 -1
  41. package/dist/chunks/{calendar.6NKd6IMo.js → calendar.D0RdoofE.js} +318 -317
  42. package/dist/chunks/calendar.D0RdoofE.js.map +1 -0
  43. package/dist/chunks/{card.Ca7FkYxy.js → card.BpPQzOoN.js} +2 -2
  44. package/dist/chunks/{card.Ca7FkYxy.js.map → card.BpPQzOoN.js.map} +1 -1
  45. package/dist/chunks/{checkbox-group.BWx4wn0F.js → checkbox-group.MwUU4K4P.js} +3 -3
  46. package/dist/chunks/{checkbox-group.BWx4wn0F.js.map → checkbox-group.MwUU4K4P.js.map} +1 -1
  47. package/dist/chunks/{checkbox.DwfrmbwI.js → checkbox.SA_J0v-N.js} +18 -18
  48. package/dist/chunks/{checkbox.DwfrmbwI.js.map → checkbox.SA_J0v-N.js.map} +1 -1
  49. package/dist/chunks/{code-snippet.Cp61a0Ud.js → code-snippet.CEsdQBL7.js} +4 -4
  50. package/dist/chunks/{code-snippet.Cp61a0Ud.js.map → code-snippet.CEsdQBL7.js.map} +1 -1
  51. package/dist/chunks/{controls-group.B-wIl-I7.js → controls-group.BfBnWu0u.js} +2 -2
  52. package/dist/chunks/{controls-group.B-wIl-I7.js.map → controls-group.BfBnWu0u.js.map} +1 -1
  53. package/dist/chunks/{copy.XM_7RiIR.js → copy.nnaqOH6I.js} +3 -3
  54. package/dist/chunks/{copy.XM_7RiIR.js.map → copy.nnaqOH6I.js.map} +1 -1
  55. package/dist/chunks/{dashboard-section.BR0xU-b-.js → dashboard-section.B82okI3e.js} +4 -4
  56. package/dist/chunks/{dashboard-section.BR0xU-b-.js.map → dashboard-section.B82okI3e.js.map} +1 -1
  57. package/dist/chunks/{dashed-underline.CxpIRlCx.js → dashed-underline.x_gU4d-A.js} +4 -4
  58. package/dist/chunks/{dashed-underline.CxpIRlCx.js.map → dashed-underline.x_gU4d-A.js.map} +1 -1
  59. package/dist/chunks/{data-grid-template.LTILymaF.js → data-grid-template.BdabDTqN.js} +4 -4
  60. package/dist/chunks/{data-grid-template.LTILymaF.js.map → data-grid-template.BdabDTqN.js.map} +1 -1
  61. package/dist/chunks/{data-grid.xcmkjuyg.js → data-grid.DXF4Cg7m.js} +140 -140
  62. package/dist/chunks/{data-grid.xcmkjuyg.js.map → data-grid.DXF4Cg7m.js.map} +1 -1
  63. package/dist/chunks/{date-picker.CCETX031.js → date-picker.DhtLcpyr.js} +7 -7
  64. package/dist/chunks/{date-picker.CCETX031.js.map → date-picker.DhtLcpyr.js.map} +1 -1
  65. package/dist/chunks/{date-range-picker.CtGaxtYh.js → date-range-picker.CChROXhw.js} +10 -10
  66. package/dist/chunks/{date-range-picker.CtGaxtYh.js.map → date-range-picker.CChROXhw.js.map} +1 -1
  67. package/dist/chunks/{date.R2Wz6o7J.js → date.BFhwd9CA.js} +28 -25
  68. package/dist/chunks/date.BFhwd9CA.js.map +1 -0
  69. package/dist/chunks/{dialog-page.BOwnhJze.js → dialog-page.BYMSk5DR.js} +2 -2
  70. package/dist/chunks/{dialog-page.BOwnhJze.js.map → dialog-page.BYMSk5DR.js.map} +1 -1
  71. package/dist/chunks/draggable-handle.y_1hfypa.js +1542 -0
  72. package/dist/chunks/draggable-handle.y_1hfypa.js.map +1 -0
  73. package/dist/chunks/draggable.5evQkGJ4.js +176 -0
  74. package/dist/chunks/draggable.5evQkGJ4.js.map +1 -0
  75. package/dist/chunks/{drawer.BQoyUVOW.js → drawer.Cz62dnhy.js} +2 -2
  76. package/dist/chunks/{drawer.BQoyUVOW.js.map → drawer.Cz62dnhy.js.map} +1 -1
  77. package/dist/chunks/{dropdown-tag.BgZYYc_D.js → dropdown-tag.DCwovT-N.js} +3 -3
  78. package/dist/chunks/{dropdown-tag.BgZYYc_D.js.map → dropdown-tag.DCwovT-N.js.map} +1 -1
  79. package/dist/chunks/{dropdown.C97ShfXZ.js → dropdown.CGUBk0iO.js} +1028 -1010
  80. package/dist/chunks/dropdown.CGUBk0iO.js.map +1 -0
  81. package/dist/chunks/{field-label.CLV3nSzz.js → field-label.yQ_2Qg88.js} +2 -2
  82. package/dist/chunks/{field-label.CLV3nSzz.js.map → field-label.yQ_2Qg88.js.map} +1 -1
  83. package/dist/chunks/{file-uploader.CXgAfp0m.js → file-uploader.xzoJqcg1.js} +3 -3
  84. package/dist/chunks/{file-uploader.CXgAfp0m.js.map → file-uploader.xzoJqcg1.js.map} +1 -1
  85. package/dist/chunks/{filter-bar.D8BVPHLT.js → filter-bar.DjUo6CwN.js} +22 -20
  86. package/dist/chunks/filter-bar.DjUo6CwN.js.map +1 -0
  87. package/dist/chunks/{focus-trap.Dl_rHbwH.js → focus-trap.3-5C2gYa.js} +2 -2
  88. package/dist/chunks/{focus-trap.Dl_rHbwH.js.map → focus-trap.3-5C2gYa.js.map} +1 -1
  89. package/dist/chunks/{footer-actions.C_HlJeXP.js → footer-actions.sEd1kzgV.js} +2 -2
  90. package/dist/chunks/{footer-actions.C_HlJeXP.js.map → footer-actions.sEd1kzgV.js.map} +1 -1
  91. package/dist/chunks/generate-uid.DBWe4g6T.js.map +1 -1
  92. package/dist/chunks/header-meta.DWWL88nm.js +248 -0
  93. package/dist/chunks/{header-meta.yBxBW12f.js.map → header-meta.DWWL88nm.js.map} +1 -1
  94. package/dist/chunks/{header-with-views.qCyKEZW1.js → header-with-views.-QuYbGZW.js} +10 -10
  95. package/dist/chunks/{header-with-views.qCyKEZW1.js.map → header-with-views.-QuYbGZW.js.map} +1 -1
  96. package/dist/chunks/{header.aJLkRe1D.js → header.B6pGQk7G.js} +3 -3
  97. package/dist/chunks/{header.aJLkRe1D.js.map → header.B6pGQk7G.js.map} +1 -1
  98. package/dist/chunks/index.B875RXHM.js.map +1 -1
  99. package/dist/chunks/{index.oOAkh64h.js → index.DtuWfdhd.js} +14 -14
  100. package/dist/chunks/{index.oOAkh64h.js.map → index.DtuWfdhd.js.map} +1 -1
  101. package/dist/chunks/{info-icon.1FtkyuYH.js → info-icon.DvhV1I7b.js} +3 -3
  102. package/dist/chunks/{info-icon.1FtkyuYH.js.map → info-icon.DvhV1I7b.js.map} +1 -1
  103. package/dist/chunks/{input-field-password.DUSoJYKT.js → input-field-password.wB3hoH6J.js} +5 -5
  104. package/dist/chunks/{input-field-password.DUSoJYKT.js.map → input-field-password.wB3hoH6J.js.map} +1 -1
  105. package/dist/chunks/{input-field-phone-number.Q-bQJL4g.js → input-field-phone-number.BmVS8zco.js} +2 -2
  106. package/dist/chunks/{input-field-phone-number.Q-bQJL4g.js.map → input-field-phone-number.BmVS8zco.js.map} +1 -1
  107. package/dist/chunks/{input-field.CvnmfrzQ.js → input-field.lSSH5S7P.js} +3 -3
  108. package/dist/chunks/{input-field.CvnmfrzQ.js.map → input-field.lSSH5S7P.js.map} +1 -1
  109. package/dist/chunks/{input-time.CGPUOOQ9.js → input-time.nwnBuzgX.js} +3 -3
  110. package/dist/chunks/{input-time.CGPUOOQ9.js.map → input-time.nwnBuzgX.js.map} +1 -1
  111. package/dist/chunks/{inspector.BvBC1ABK.js → inspector.CTBNfXvo.js} +3 -3
  112. package/dist/chunks/{inspector.BvBC1ABK.js.map → inspector.CTBNfXvo.js.map} +1 -1
  113. package/dist/chunks/{layout-row.BsGdHl3d.js → layout-row.7mhpRkAj.js} +2 -2
  114. package/dist/chunks/{layout-row.BsGdHl3d.js.map → layout-row.7mhpRkAj.js.map} +1 -1
  115. package/dist/chunks/list-item.DqZuLQXc.js +222 -0
  116. package/dist/chunks/list-item.DqZuLQXc.js.map +1 -0
  117. package/dist/chunks/{listbox-option-tag.yF6p9iQw.js → listbox-option-tag.DdWLEXEA.js} +2 -2
  118. package/dist/chunks/{listbox-option-tag.yF6p9iQw.js.map → listbox-option-tag.DdWLEXEA.js.map} +1 -1
  119. package/dist/chunks/{modal-fullscreen.CBxh_3gU.js → modal-fullscreen.T5PF8pWA.js} +4 -4
  120. package/dist/chunks/{modal-fullscreen.CBxh_3gU.js.map → modal-fullscreen.T5PF8pWA.js.map} +1 -1
  121. package/dist/chunks/{modal.vue_vue_type_script_setup_true_lang.C3xuswtY.js → modal.vue_vue_type_script_setup_true_lang.BOOZl25a.js} +4 -4
  122. package/dist/chunks/{modal.vue_vue_type_script_setup_true_lang.C3xuswtY.js.map → modal.vue_vue_type_script_setup_true_lang.BOOZl25a.js.map} +1 -1
  123. package/dist/chunks/{navigation-menu-group.CQ6ImGsJ.js → navigation-menu-group.CIV5BQJA.js} +3 -3
  124. package/dist/chunks/{navigation-menu-group.CQ6ImGsJ.js.map → navigation-menu-group.CIV5BQJA.js.map} +1 -1
  125. package/dist/chunks/{pagination.cNByWBP1.js → pagination.DX2mxVYn.js} +2 -2
  126. package/dist/chunks/{pagination.cNByWBP1.js.map → pagination.DX2mxVYn.js.map} +1 -1
  127. package/dist/chunks/popover.types.B92uj134.js +6 -0
  128. package/dist/chunks/{popover.types.DATOPtuh.js.map → popover.types.B92uj134.js.map} +1 -1
  129. package/dist/chunks/{popper-container.BH4WxeUj.js → popper-container.DRt5hgY8.js} +2 -2
  130. package/dist/chunks/{popper-container.BH4WxeUj.js.map → popper-container.DRt5hgY8.js.map} +1 -1
  131. package/dist/chunks/{promo-banner.DvV9eXs4.js → promo-banner.DICpj6e6.js} +2 -2
  132. package/dist/chunks/{promo-banner.DvV9eXs4.js.map → promo-banner.DICpj6e6.js.map} +1 -1
  133. package/dist/chunks/{radio-group.Cg67ZU0c.js → radio-group.DZkv4S3H.js} +3 -3
  134. package/dist/chunks/{radio-group.Cg67ZU0c.js.map → radio-group.DZkv4S3H.js.map} +1 -1
  135. package/dist/chunks/{rich-text-editor.CJA_d518.js → rich-text-editor.D94Vaa4k.js} +4 -4
  136. package/dist/chunks/{rich-text-editor.CJA_d518.js.map → rich-text-editor.D94Vaa4k.js.map} +1 -1
  137. package/dist/chunks/{search-bar.CLjqWNaI.js → search-bar.f03s-Ljw.js} +3 -3
  138. package/dist/chunks/{search-bar.CLjqWNaI.js.map → search-bar.f03s-Ljw.js.map} +1 -1
  139. package/dist/chunks/{secondary-nav.BU47gyEO.js → secondary-nav.BQOLLVwy.js} +4 -4
  140. package/dist/chunks/{secondary-nav.BU47gyEO.js.map → secondary-nav.BQOLLVwy.js.map} +1 -1
  141. package/dist/chunks/{segmented-control.D6Yvxxpc.js → segmented-control.CDV9IQDC.js} +2 -2
  142. package/dist/chunks/{segmented-control.D6Yvxxpc.js.map → segmented-control.CDV9IQDC.js.map} +1 -1
  143. package/dist/chunks/{selection-card-group.C2Av3uyz.js → selection-card-group.Cvz-uxZ1.js} +11 -11
  144. package/dist/chunks/{selection-card-group.C2Av3uyz.js.map → selection-card-group.Cvz-uxZ1.js.map} +1 -1
  145. package/dist/chunks/{sidepanel.Dw2If3qM.js → sidepanel.DWgn0NNb.js} +5 -5
  146. package/dist/chunks/{sidepanel.Dw2If3qM.js.map → sidepanel.DWgn0NNb.js.map} +1 -1
  147. package/dist/chunks/{structured-list-item.BhYtSw2f.js → structured-list-item.RunfI9Pj.js} +4 -4
  148. package/dist/chunks/{structured-list-item.BhYtSw2f.js.map → structured-list-item.RunfI9Pj.js.map} +1 -1
  149. package/dist/chunks/{summary-grid.types.Cnrc4ThJ.js → summary-grid.types.DiJtaVN-.js} +5 -5
  150. package/dist/chunks/{summary-grid.types.Cnrc4ThJ.js.map → summary-grid.types.DiJtaVN-.js.map} +1 -1
  151. package/dist/chunks/{tab.ByjWuWQz.js → tab.CnvwN1lS.js} +2 -2
  152. package/dist/chunks/{tab.ByjWuWQz.js.map → tab.CnvwN1lS.js.map} +1 -1
  153. package/dist/chunks/{tag.Uu-6AQys.js → tag.BDBpa51Z.js} +2 -2
  154. package/dist/chunks/{tag.Uu-6AQys.js.map → tag.BDBpa51Z.js.map} +1 -1
  155. package/dist/chunks/{textarea.QgSLPL7S.js → textarea.Cb6Fu5-u.js} +2 -2
  156. package/dist/chunks/{textarea.QgSLPL7S.js.map → textarea.Cb6Fu5-u.js.map} +1 -1
  157. package/dist/chunks/{timeline-item.BWhCoOf1.js → timeline-item.XpxLQwxK.js} +7 -7
  158. package/dist/chunks/{timeline-item.BWhCoOf1.js.map → timeline-item.XpxLQwxK.js.map} +1 -1
  159. package/dist/chunks/{tooltip.Djn54E1O.js → tooltip.DaO3Jkem.js} +3 -3
  160. package/dist/chunks/{tooltip.Djn54E1O.js.map → tooltip.DaO3Jkem.js.map} +1 -1
  161. package/dist/chunks/{tutorial.vue_vue_type_script_setup_true_lang.QWcInKo7.js → tutorial.vue_vue_type_script_setup_true_lang.DjvXPcvu.js} +4 -4
  162. package/dist/chunks/{tutorial.vue_vue_type_script_setup_true_lang.QWcInKo7.js.map → tutorial.vue_vue_type_script_setup_true_lang.DjvXPcvu.js.map} +1 -1
  163. package/dist/chunks/{use-bento-delayed-hover.Csc3nIWt.js → use-bento-delayed-hover.4NBNqVyw.js} +2 -2
  164. package/dist/chunks/{use-bento-delayed-hover.Csc3nIWt.js.map → use-bento-delayed-hover.4NBNqVyw.js.map} +1 -1
  165. package/dist/chunks/{use-date-input-formatter.QXaVIBS0.js → use-date-input-formatter.S-t29v8i.js} +2 -2
  166. package/dist/chunks/{use-date-input-formatter.QXaVIBS0.js.map → use-date-input-formatter.S-t29v8i.js.map} +1 -1
  167. package/dist/code-snippet.js +1 -1
  168. package/dist/dashboard-template.js +1 -1
  169. package/dist/dashed-underline.js +1 -1
  170. package/dist/data-grid-template.js +1 -1
  171. package/dist/data-grid.js +1 -1
  172. package/dist/date-picker.js +2 -2
  173. package/dist/date-range-picker.js +2 -2
  174. package/dist/date-time-picker.js +4 -4
  175. package/dist/date.js +1 -1
  176. package/dist/draggable.js +4 -3
  177. package/dist/draggable.js.map +1 -1
  178. package/dist/drawer.js +1 -1
  179. package/dist/dropdown.js +2 -2
  180. package/dist/file-uploader.js +1 -1
  181. package/dist/filter-bar.js +1 -1
  182. package/dist/focus-trap.js +1 -1
  183. package/dist/header-with-views.js +1 -1
  184. package/dist/header.js +1 -1
  185. package/dist/index.js +260 -259
  186. package/dist/index.js.map +1 -1
  187. package/dist/info-icon.js +1 -1
  188. package/dist/input-field-password.js +1 -1
  189. package/dist/input-field-phone-number.js +1 -1
  190. package/dist/input-field.js +1 -1
  191. package/dist/input-time.js +1 -1
  192. package/dist/inspector.js +1 -1
  193. package/dist/internal.js +11 -11
  194. package/dist/layout.js +1 -1
  195. package/dist/list.js +1 -1
  196. package/dist/menu.js +1 -1
  197. package/dist/modal-fullscreen.js +1 -1
  198. package/dist/modal.js +2 -2
  199. package/dist/navigation-menu.js +1 -1
  200. package/dist/pagination.js +1 -1
  201. package/dist/popover.js +2 -2
  202. package/dist/popper-container.js +1 -1
  203. package/dist/promo-banner.js +1 -1
  204. package/dist/radio-group.js +1 -1
  205. package/dist/rich-text-editor.js +1 -1
  206. package/dist/search-bar.js +2 -2
  207. package/dist/secondary-nav.js +1 -1
  208. package/dist/segmented-control.js +1 -1
  209. package/dist/selection-card.js +1 -1
  210. package/dist/sidepanel.js +1 -1
  211. package/dist/structured-list.js +1 -1
  212. package/dist/summary-grid.js +1 -1
  213. package/dist/tabs.js +1 -1
  214. package/dist/tag.js +1 -1
  215. package/dist/textarea.js +1 -1
  216. package/dist/timeline.js +1 -1
  217. package/dist/tutorial.js +1 -1
  218. package/dist/web-types.json +1 -1
  219. package/package.json +7 -7
  220. package/dist/chunks/calendar.6NKd6IMo.js.map +0 -1
  221. package/dist/chunks/date.R2Wz6o7J.js.map +0 -1
  222. package/dist/chunks/draggable-handle.CUecl-HB.js +0 -1649
  223. package/dist/chunks/draggable-handle.CUecl-HB.js.map +0 -1
  224. package/dist/chunks/dropdown.C97ShfXZ.js.map +0 -1
  225. package/dist/chunks/filter-bar.D8BVPHLT.js.map +0 -1
  226. package/dist/chunks/header-meta.yBxBW12f.js +0 -243
  227. package/dist/chunks/list-item.E1o7yuEB.js +0 -128
  228. package/dist/chunks/list-item.E1o7yuEB.js.map +0 -1
  229. package/dist/chunks/popover.types.DATOPtuh.js +0 -6
@@ -1,10 +1,10 @@
1
- import { defineComponent as s, computed as y, openBlock as n, createElementBlock as i, createBlock as L, unref as d, withCtx as O, createTextVNode as t, toDisplayString as o, Fragment as h } from "vue";
2
- import { u as D } from "./index.B875RXHM.js";
1
+ import { defineComponent as y, computed as m, openBlock as n, createElementBlock as o, createBlock as L, unref as O, withCtx as h, createElementVNode as D, toDisplayString as a } from "vue";
2
+ import { u as l } from "./index.B875RXHM.js";
3
3
  import { B as A } from "./typography.B3J6_tYk.js";
4
4
  import { _ as H } from "./_plugin-vue_export-helper.CHgC5LLL.js";
5
5
  import "../assets/date.css";
6
- var u = /* @__PURE__ */ ((e) => (e.SHORT_MONTH = "LLL", e.DAY_OF_MONTH = "d", e.LONG_WEEKDAY = "EEEE", e.SHORT_TIME_WITH_PERIOD = "h:mm aa", e.SHORT_TIME_WITHOUT_PERIOD = "H:mm", e.EXACT_TIME_WITH_PERIOD = "h:mm:ss aa", e.EXACT_TIME_WITHOUT_PERIOD = "H:mm:ss", e.LONG_DATE = "LLLL dd, yyyy", e.SHORT_DATE = "LLL dd, yyyy", e.FULL_DATE_EXACT_TIME_WITH_PERIOD = "LLL dd, yyyy, h:mm:ss aa", e.FULL_DATE_EXACT_TIME_WITHOUT_PERIOD = "LLL dd, yyyy, H:mm:ss", e.FULL_DATE_EXACT_TIME_WITH_TIMEZONE_AND_PERIOD = "LLL dd, yyyy, h:mm:ss aa O", e.FULL_DATE_EXACT_TIME_WITH_TIMEZONE_AND_WITHOUT_PERIOD = "LLL dd, yyyy, H:mm:ss O", e.FULL_DATE_TIME_WITH_PERIOD = "LLL dd, yyyy, h:mm aa", e.FULL_DATE_TIME_WITH_TIMEZONE_AND_PERIOD = "LLL dd, yyyy, h:mm aa O", e.FULL_DATE_TIME_WITHOUT_PERIOD = "LLL dd, yyyy, H:mm", e.FULL_DATE_TIME_WITH_TIMEZONE_AND_WITHOUT_PERIOD = "LLL dd, yyyy, H:mm O", e))(u || {});
7
- const l = { class: "b-date" }, I = {
6
+ var t = /* @__PURE__ */ ((e) => (e.SHORT_MONTH = "LLL", e.DAY_OF_MONTH = "d", e.LONG_WEEKDAY = "EEEE", e.SHORT_TIME_WITH_PERIOD = "h:mm aa", e.SHORT_TIME_WITHOUT_PERIOD = "H:mm", e.EXACT_TIME_WITH_PERIOD = "h:mm:ss aa", e.EXACT_TIME_WITHOUT_PERIOD = "H:mm:ss", e.LONG_DATE = "LLLL dd, yyyy", e.SHORT_DATE = "LLL dd, yyyy", e.FULL_DATE_EXACT_TIME_WITH_PERIOD = "LLL dd, yyyy, h:mm:ss aa", e.FULL_DATE_EXACT_TIME_WITHOUT_PERIOD = "LLL dd, yyyy, H:mm:ss", e.FULL_DATE_EXACT_TIME_WITH_TIMEZONE_AND_PERIOD = "LLL dd, yyyy, h:mm:ss aa O", e.FULL_DATE_EXACT_TIME_WITH_TIMEZONE_AND_WITHOUT_PERIOD = "LLL dd, yyyy, H:mm:ss O", e.FULL_DATE_TIME_WITH_PERIOD = "LLL dd, yyyy, h:mm aa", e.FULL_DATE_TIME_WITH_TIMEZONE_AND_PERIOD = "LLL dd, yyyy, h:mm aa O", e.FULL_DATE_TIME_WITHOUT_PERIOD = "LLL dd, yyyy, H:mm", e.FULL_DATE_TIME_WITH_TIMEZONE_AND_WITHOUT_PERIOD = "LLL dd, yyyy, H:mm O", e))(t || {});
7
+ const M = { class: "b-date" }, N = ["datetime"], R = ["datetime"], I = {
8
8
  SHORT_MONTH: {
9
9
  month: "short"
10
10
  },
@@ -118,46 +118,49 @@ const l = { class: "b-date" }, I = {
118
118
  hour12: !1,
119
119
  timeZoneName: "short"
120
120
  }
121
- }, M = {
121
+ }, W = {
122
122
  name: "bento-date"
123
- }, R = /* @__PURE__ */ s({
124
- ...M,
123
+ }, U = /* @__PURE__ */ y({
124
+ ...W,
125
125
  props: {
126
126
  date: { default: null },
127
- format: { default: u.FULL_DATE_EXACT_TIME_WITHOUT_PERIOD },
127
+ format: { default: t.FULL_DATE_EXACT_TIME_WITHOUT_PERIOD },
128
128
  disableTypography: { type: Boolean, default: !1 }
129
129
  },
130
130
  setup(e) {
131
- const T = e, { locale: c } = D(void 0), a = Object.entries(u).reduce(
132
- (_, [r, m]) => (_[m.toString()] = r, _),
131
+ const T = e, { locale: c } = l(void 0), s = Object.entries(t).reduce(
132
+ (_, [u, d]) => (_[d.toString()] = u, _),
133
133
  {}
134
- ), E = y(() => {
135
- if (!T.date)
134
+ ), r = m(() => T.date ? T.date instanceof Date ? T.date : new Date(T.date) : null), E = m(
135
+ () => r.value && !Number.isNaN(r.value.getTime()) ? r.value.toISOString() : void 0
136
+ ), i = m(() => {
137
+ if (!r.value || Number.isNaN(r.value.getTime()))
136
138
  return "";
137
- const _ = typeof T.date == "string" ? new Date(T.date) : T.date, r = a?.[T.format];
138
- let m;
139
- return r && I?.[r] && (m = I?.[r]), new Intl.DateTimeFormat(c.value, m).format(_);
139
+ const _ = s?.[T.format];
140
+ let u;
141
+ return _ && I?.[_] && (u = I?.[_]), new Intl.DateTimeFormat(c.value, u).format(r.value);
140
142
  });
141
- return (_, r) => (n(), i("div", l, [
142
- _.disableTypography ? (n(), i(h, { key: 1 }, [
143
- t(o(E.value), 1)
144
- ], 64)) : (n(), L(d(A), {
143
+ return (_, u) => (n(), o("div", M, [
144
+ _.disableTypography ? (n(), o("time", {
145
+ key: 1,
146
+ datetime: E.value
147
+ }, a(i.value), 9, R)) : (n(), L(O(A), {
145
148
  key: 0,
146
149
  class: "b-date__label",
147
150
  el: "span",
148
151
  variant: "body",
149
152
  strong: ""
150
153
  }, {
151
- default: O(() => [
152
- t(o(E.value), 1)
154
+ default: h(() => [
155
+ D("time", { datetime: E.value }, a(i.value), 9, N)
153
156
  ]),
154
157
  _: 1
155
158
  }))
156
159
  ]));
157
160
  }
158
- }), P = /* @__PURE__ */ H(R, [["__scopeId", "data-v-6f019a95"]]);
161
+ }), C = /* @__PURE__ */ H(U, [["__scopeId", "data-v-1ede6303"]]);
159
162
  export {
160
- P as B,
161
- u as a
163
+ C as B,
164
+ t as a
162
165
  };
163
- //# sourceMappingURL=date.R2Wz6o7J.js.map
166
+ //# sourceMappingURL=date.BFhwd9CA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date.BFhwd9CA.js","sources":["../../../vue2/src/components/date/date.types.ts","../../../vue2/src/components/date/date.vue"],"sourcesContent":["export enum BentoDateFormat {\n // MONTH\n SHORT_MONTH = 'LLL', // Jun\n\n // DAY\n DAY_OF_MONTH = 'd', // 1, 2, ..., 31,\n LONG_WEEKDAY = 'EEEE', // Friday\n\n // TIME\n SHORT_TIME_WITH_PERIOD = `h:mm aa`, // 2:44 PM\n SHORT_TIME_WITHOUT_PERIOD = 'H:mm', // 14:45\n EXACT_TIME_WITH_PERIOD = 'h:mm:ss aa', // 2:05:11 PM\n EXACT_TIME_WITHOUT_PERIOD = 'H:mm:ss', // 14:05:11\n\n // DATE\n LONG_DATE = 'LLLL dd, yyyy', // June 30, 2023\n SHORT_DATE = 'LLL dd, yyyy', // Jun 30, 2023\n FULL_DATE_EXACT_TIME_WITH_PERIOD = `${SHORT_DATE}, h:mm:ss aa`, // June 30, 2023, 2:54:10 PM\n FULL_DATE_EXACT_TIME_WITHOUT_PERIOD = `${SHORT_DATE}, H:mm:ss`, // June 30, 2023, 14:54:42\n FULL_DATE_EXACT_TIME_WITH_TIMEZONE_AND_PERIOD = `${SHORT_DATE}, h:mm:ss aa O`, // June 30, 2023, 2:56:07 PM GMT+2\n FULL_DATE_EXACT_TIME_WITH_TIMEZONE_AND_WITHOUT_PERIOD = `${SHORT_DATE}, H:mm:ss O`, // June 30, 2023, 14:56:28 GMT+2\n FULL_DATE_TIME_WITH_PERIOD = `${SHORT_DATE}, h:mm aa`, // Jun 30, 2023, 2:48 PM\n FULL_DATE_TIME_WITH_TIMEZONE_AND_PERIOD = `${SHORT_DATE}, h:mm aa O`, // Jun 30, 2023, 2:44 PM GMT+2\n FULL_DATE_TIME_WITHOUT_PERIOD = `${SHORT_DATE}, H:mm`, // Jun 30, 2023, 14:48\n FULL_DATE_TIME_WITH_TIMEZONE_AND_WITHOUT_PERIOD = `${SHORT_DATE}, H:mm O`, // Jun 30, 2023, 14:43 GMT+2\n}\n\nexport interface BentoDateProps {\n /**\n * The date to format. The data can be supplied as:\n * - a Date object.\n * - a number of milliseconds elapsed since the epoch.\n * - a date string e.g. '2023-07-31T10:55:22+02:00'.\n */\n date?: Date | number | string | null;\n /**\n * The string format of the date to be displayed\n */\n format?: BentoDateFormat | `${BentoDateFormat}`;\n /**\n * Disable the default typography for the component. Only use this when the component is inside another typography\n */\n disableTypography?: boolean;\n}\n","<template>\n <div class=\"b-date\">\n <bento-typography v-if=\"!disableTypography\" class=\"b-date__label\" el=\"span\" variant=\"body\" strong>\n <time :datetime=\"dateTime\">{{ formattedDate }}</time>\n </bento-typography>\n <time v-else :datetime=\"dateTime\">{{ formattedDate }}</time>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue';\n import { BentoDateFormat, type BentoDateProps } from './date.types';\n import { useI18n } from '@/utils/ts/i18n';\n import { BentoTypography } from '@/components/typography';\n\n const props = withDefaults(defineProps<BentoDateProps>(), {\n date: null,\n format: BentoDateFormat.FULL_DATE_EXACT_TIME_WITHOUT_PERIOD,\n disableTypography: false,\n });\n\n const { locale } = useI18n(undefined, true);\n\n /**\n * This is a reverse mapping of the BentoDateFormat enum.\n * It allows us to get the key of the enum by its value, which is then used to look up the\n * corresponding formatting options in `BentoDateFormatPresets`.\n */\n const bentoDateFormatKeyValuePairs = Object.entries(BentoDateFormat).reduce<\n Record<BentoDateFormat, keyof typeof BentoDateFormat>\n >(\n (acc, [key, value]) => {\n acc[value.toString()] = key;\n return acc;\n },\n {} as Record<BentoDateFormat, keyof typeof BentoDateFormat>\n );\n\n const datePropAsDateObject = computed(() => {\n if (!props.date) {\n return null;\n }\n\n return props.date instanceof Date ? props.date : new Date(props.date);\n });\n\n const dateTime = computed(() =>\n datePropAsDateObject.value && !Number.isNaN(datePropAsDateObject.value.getTime())\n ? datePropAsDateObject.value.toISOString()\n : undefined\n );\n\n const formattedDate = computed(() => {\n if (!datePropAsDateObject.value || Number.isNaN(datePropAsDateObject.value.getTime())) {\n return '';\n }\n\n const formatKeyEntry = bentoDateFormatKeyValuePairs?.[props.format];\n\n let dateFormat: Intl.DateTimeFormatOptions | undefined = undefined;\n // Translate the key of the enum to the Intl.DateTimeFormatOptions configuration object\n if (formatKeyEntry && BentoDateFormatPresets?.[formatKeyEntry]) {\n dateFormat = BentoDateFormatPresets?.[formatKeyEntry];\n }\n return new Intl.DateTimeFormat(locale.value, dateFormat).format(datePropAsDateObject.value);\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * The format presets to use when being supplied with a key name in BentoDateFormat.\n * They translate to configuration options that are used in the Intl.DateTimeFormat function\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat#using_options\n */\n const BentoDateFormatPresets: { [key in keyof typeof BentoDateFormat]: Intl.DateTimeFormatOptions } = {\n SHORT_MONTH: {\n month: 'short',\n },\n DAY_OF_MONTH: {\n day: 'numeric',\n },\n LONG_WEEKDAY: {\n weekday: 'long',\n },\n SHORT_TIME_WITH_PERIOD: {\n hour: 'numeric',\n minute: 'numeric',\n hour12: true,\n },\n SHORT_TIME_WITHOUT_PERIOD: {\n hour: 'numeric',\n minute: 'numeric',\n hour12: false,\n },\n EXACT_TIME_WITH_PERIOD: {\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: true,\n },\n EXACT_TIME_WITHOUT_PERIOD: {\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false,\n },\n LONG_DATE: {\n year: 'numeric',\n month: 'long',\n day: 'numeric',\n },\n SHORT_DATE: {\n year: 'numeric',\n month: 'short',\n day: 'numeric',\n },\n FULL_DATE_TIME_WITH_PERIOD: {\n year: 'numeric',\n month: 'short',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n hour12: true,\n },\n FULL_DATE_TIME_WITHOUT_PERIOD: {\n year: 'numeric',\n month: 'short',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n hour12: false,\n },\n FULL_DATE_EXACT_TIME_WITH_PERIOD: {\n year: 'numeric',\n month: 'short',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: true,\n },\n FULL_DATE_EXACT_TIME_WITHOUT_PERIOD: {\n year: 'numeric',\n month: 'short',\n day: 'numeric',\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n hour12: false,\n },\n FULL_DATE_TIME_WITH_TIMEZONE_AND_PERIOD: {\n year: 'numeric',\n month: 'short',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n hour12: true,\n timeZoneName: 'short',\n },\n FULL_DATE_TIME_WITH_TIMEZONE_AND_WITHOUT_PERIOD: {\n year: 'numeric',\n month: 'short',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n hour12: false,\n timeZoneName: 'short',\n },\n FULL_DATE_EXACT_TIME_WITH_TIMEZONE_AND_PERIOD: {\n year: 'numeric',\n month: 'short',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: true,\n timeZoneName: 'short',\n },\n FULL_DATE_EXACT_TIME_WITH_TIMEZONE_AND_WITHOUT_PERIOD: {\n year: 'numeric',\n month: 'short',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false,\n timeZoneName: 'short',\n },\n };\n\n /**\n * A Date component is used to display a formatted date value.\n *\n * @example\n * import { BentoDate } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoDate },\n * template: `\n * <bento-date :date=\"dateObject\" :format=\"BentoDateFormat.LONG_DATE\"/>\n * `\n * }\n */\n export default {\n name: 'bento-date',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./date.scss\" />\n"],"names":["BentoDateFormat","BentoDateFormat2","BentoDateFormatPresets","__default__","props","__props","locale","useI18n","bentoDateFormatKeyValuePairs","acc","key","value","datePropAsDateObject","computed","dateTime","formattedDate","formatKeyEntry","dateFormat"],"mappings":"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"}
@@ -4,7 +4,7 @@ import { A as ne } from "./arrow-left.C6UiqO-c.js";
4
4
  import { u as ie } from "./use-has-slot.CyMiImRQ.js";
5
5
  import { u as re } from "./index.B875RXHM.js";
6
6
  import { i as le } from "./typography.B3J6_tYk.js";
7
- import { e as se } from "./index.oOAkh64h.js";
7
+ import { g as se } from "./index.DtuWfdhd.js";
8
8
  import { _ as ue } from "./_plugin-vue_export-helper.CHgC5LLL.js";
9
9
  import "../assets/dialog-page.css";
10
10
  var y = /* @__PURE__ */ ((i) => (i.TRANSITION_LEVEL_DEEPER = "b-dialog-page__animation--level-deeper", i.TRANSITION_LEVEL_UPPER = "b-dialog-page__animation--level-upper", i))(y || {});
@@ -160,4 +160,4 @@ export {
160
160
  ve as a,
161
161
  Ie as b
162
162
  };
163
- //# sourceMappingURL=dialog-page.BOwnhJze.js.map
163
+ //# sourceMappingURL=dialog-page.BYMSk5DR.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-page.BOwnhJze.js","sources":["../../../vue2/src/components/internal/dialog-page/dialog-page.types.ts","../../../vue2/src/components/internal/dialog-page/dialog-page.keys.ts","../../../vue2/src/components/internal/dialog-page/dialog-page.vue"],"sourcesContent":["import { type Ref } from 'vue';\n\nexport enum BentoDialogPageAnimation {\n TRANSITION_LEVEL_DEEPER = 'b-dialog-page__animation--level-deeper',\n TRANSITION_LEVEL_UPPER = 'b-dialog-page__animation--level-upper',\n}\n\nexport interface BentoDialogPageConfigData {\n activePage: Ref<string>;\n animation: Ref<string>;\n isAnimationActive?: Ref<boolean>;\n isOpen: Ref<boolean>;\n pages: Ref<Array<string>>;\n previousPages: Ref<Array<string>>;\n updatePage: (page: string) => void;\n}\n\nexport type BentoDialogPageRegisterPage = (pageId: string) => { unregisterPage: () => void };\n","export const DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY = Symbol('dialog registerPage injection key');\nexport const DIALOG_PAGE_CONFIG_INJECTION_KEY = Symbol('dialog page config data injection key');\n","<template>\n <Transition :name=\"animation\" mode=\"out-in\" @after-leave=\"updateAnimation\" @leave=\"startAnimation\">\n <div v-if=\"isOpen && showPage\" class=\"b-dialog-page\">\n <div v-if=\"hasSlot('header')\" class=\"b-dialog-page__header\" :class=\"headerConditionalClasses\">\n <div\n v-if=\"showBackButton\"\n class=\"b-dialog-page__back-button\"\n :style=\"backButtonStyling\"\n data-testid=\"back-button\"\n >\n <bento-button variant=\"tertiary\" @click=\"goToPreviousPage(previousPage)\">\n <arrow-left-icon :svg-title=\"t('goToPreviousPage')\" />\n </bento-button>\n </div>\n <slot name=\"header\"></slot>\n </div>\n <div\n v-if=\"hasSlot('content')\"\n ref=\"contentElement\"\n class=\"b-dialog-page__content\"\n :tabindex=\"isScrollable ? 0 : null\"\n @scroll=\"onScroll\"\n >\n <slot name=\"content\" />\n </div>\n <div v-if=\"hasSlot('footer')\" class=\"b-dialog-page__footer\" :class=\"footerConditionalClasses\">\n <slot name=\"footer\" />\n </div>\n </div>\n </Transition>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, nextTick, onMounted, onUnmounted, type PropType, ref, useSlots, watch } from 'vue';\n\n import { BentoButton } from '@/components/button';\n import ArrowLeftIcon from '@adyen/ui-assets-icons-16/vue/arrow-left';\n\n import { useHasSlot } from '@/composables/use-has-slot/use-has-slot';\n import { useI18n } from '@/utils/ts/i18n';\n import { isDevelopmentEnviroment } from '@/utils/ts/dev-environment';\n\n import {\n BentoDialogPageAnimation,\n type BentoDialogPageConfigData,\n type BentoDialogPageRegisterPage,\n } from './dialog-page.types';\n import type { CSSProperties } from 'vue/types/jsx.d.ts';\n\n import { DIALOG_PAGE_CONFIG_INJECTION_KEY, DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY } from './dialog-page.keys';\n\n import messages from './messages.json';\n import { useScroll } from '@vueuse/core';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n /**\n * Identifier of the page, used with activePage prop to handle navigation\n */\n pageId: {\n type: String,\n default: undefined,\n },\n\n /**\n * Show header and actions border\n */\n alwaysShowBorder: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Pass custom styling to the back button to position it correctly with the header slot\n */\n backButtonStyling: { type: Object as PropType<CSSProperties>, default: null },\n\n /**\n * ID of the page for the back button to navigate to. Only use it to overwrite the default back behavior\n * Used when the back button should not take the user to the natural previous page\n * Set to `null` to hide back button in the page\n */\n previousPage: {\n type: String,\n default: undefined,\n },\n });\n\n const emit = defineEmits<{\n /**\n * Fires when the animation ends\n */\n (e: 'animationend'): void;\n }>();\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n // Refs\n const contentElement = ref<HTMLDivElement>(null);\n const hasScroll = ref(false);\n const isMounted = ref(false);\n\n const { arrivedState } = useScroll(contentElement);\n\n // Logic to choose which page is active/shown\n const showPage = computed(() => (activePage.value ? activePage.value === props.pageId : true));\n\n // Scrolling styling logic\n const headerConditionalClasses = computed(() => ({\n 'b-dialog-page__header--with-border': props.alwaysShowBorder || (hasScroll.value && !arrivedState.top),\n }));\n\n const footerConditionalClasses = computed(() => ({\n 'b-dialog-page__footer--with-border': props.alwaysShowBorder || (hasScroll.value && !arrivedState.bottom),\n }));\n\n const isScrollable = computed(() => !(arrivedState.bottom && arrivedState.top));\n\n const onScroll = () => {\n if (!contentElement.value) {\n return;\n }\n };\n\n const calculateScroll = async watchedValue => {\n if (!watchedValue) {\n return;\n }\n // Wait for content to be rendered to be able to calculate the height\n await nextTick();\n if (!isMounted.value) {\n return;\n }\n hasScroll.value = contentElement.value && contentElement.value.scrollHeight > contentElement.value.clientHeight;\n };\n\n const { activePage, animation, isAnimationActive, isOpen, pages, previousPages, updatePage } =\n inject<BentoDialogPageConfigData>(DIALOG_PAGE_CONFIG_INJECTION_KEY);\n\n watch(() => isOpen.value, calculateScroll, { immediate: true });\n watch(() => showPage.value, calculateScroll, { immediate: true });\n\n // Logic to determine whether the back button should be shown on the page\n const showBackButton = computed(() => {\n if (props.previousPage) {\n return true;\n }\n if (props.previousPage === null) {\n return false;\n }\n return hasPreviousPages.value && showPage.value;\n });\n\n // Animation\n const updateAnimation = () => {\n animation.value = BentoDialogPageAnimation.TRANSITION_LEVEL_DEEPER;\n if (isAnimationActive) {\n isAnimationActive.value = false;\n }\n\n emit('animationend');\n };\n\n const startAnimation = () => {\n if (isAnimationActive) {\n isAnimationActive.value = true;\n }\n };\n\n // Previous page logic\n const hasPreviousPages = computed(() => previousPages.value.length > 1);\n const lastPage = computed(() => previousPages.value[previousPages.value.length - 1]);\n const isActivePageValid = computed(() => pages.value.some(page => page === activePage.value));\n\n const goToPreviousPage = async (page: string) => {\n if (page) {\n const index = previousPages.value.indexOf(page);\n if (index !== -1) {\n previousPages.value = previousPages.value.slice(0, index + 1);\n } else {\n previousPages.value = [page];\n }\n } else {\n previousPages.value.pop();\n }\n\n animation.value = BentoDialogPageAnimation.TRANSITION_LEVEL_UPPER;\n await nextTick();\n if (!isMounted.value) {\n return;\n }\n updatePage(lastPage.value);\n };\n\n // Add new page to the previousPage array to keep track of user navigation\n watch(\n () => activePage.value,\n async () => {\n await nextTick();\n if (!isMounted.value || !isOpen.value) {\n return;\n }\n\n if (!!activePage.value && !isActivePageValid.value) {\n if (isDevelopmentEnviroment) {\n // eslint-disable-next-line no-console\n console.error(\n `The activePage passed \"${activePage.value}\" does not match the id of any of the pages`\n );\n return;\n }\n }\n\n if (activePage.value !== lastPage.value) {\n previousPages.value.push(activePage.value);\n }\n },\n { immediate: true }\n );\n\n // Register page to parent component and inject data from parent component\n const registerPage = inject<BentoDialogPageRegisterPage>(DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY);\n const { unregisterPage } = registerPage(props.pageId);\n\n onMounted(() => {\n isMounted.value = true;\n });\n\n // Unregister page on unmounting the page\n onUnmounted(() => {\n isMounted.value = false;\n unregisterPage();\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * DialogPage is an internal component used to render different pages of dialog components (Modal, ModalFullscreen and Sidepanel)\n *\n * @example\n * import { DialogPage } from '@/internal';\n *\n * export default {\n * components: { DialogPage },\n * template: `\n * <dialog-page pageId='step1' always-show-border>\n * <template #header>Header</template>\n * <template #content>Content</template>\n * <template #footer>Footer</template>\n * </dialog-page>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./dialog-page.scss\" />\n"],"names":["BentoDialogPageAnimation","BentoDialogPageAnimation2","DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY","DIALOG_PAGE_CONFIG_INJECTION_KEY","__default__","messages","props","__props","emit","__emit","slots","useSlots","hasSlot","useHasSlot","t","useI18n","contentElement","ref","hasScroll","isMounted","arrivedState","useScroll","showPage","computed","activePage","headerConditionalClasses","footerConditionalClasses","isScrollable","onScroll","calculateScroll","watchedValue","nextTick","animation","isAnimationActive","isOpen","pages","previousPages","updatePage","inject","watch","showBackButton","hasPreviousPages","updateAnimation","startAnimation","lastPage","isActivePageValid","page","goToPreviousPage","index","isDevelopmentEnviroment","registerPage","unregisterPage","onMounted","onUnmounted"],"mappings":"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"}
1
+ {"version":3,"file":"dialog-page.BYMSk5DR.js","sources":["../../../vue2/src/components/internal/dialog-page/dialog-page.types.ts","../../../vue2/src/components/internal/dialog-page/dialog-page.keys.ts","../../../vue2/src/components/internal/dialog-page/dialog-page.vue"],"sourcesContent":["import { type Ref } from 'vue';\n\nexport enum BentoDialogPageAnimation {\n TRANSITION_LEVEL_DEEPER = 'b-dialog-page__animation--level-deeper',\n TRANSITION_LEVEL_UPPER = 'b-dialog-page__animation--level-upper',\n}\n\nexport interface BentoDialogPageConfigData {\n activePage: Ref<string>;\n animation: Ref<string>;\n isAnimationActive?: Ref<boolean>;\n isOpen: Ref<boolean>;\n pages: Ref<Array<string>>;\n previousPages: Ref<Array<string>>;\n updatePage: (page: string) => void;\n}\n\nexport type BentoDialogPageRegisterPage = (pageId: string) => { unregisterPage: () => void };\n","export const DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY = Symbol('dialog registerPage injection key');\nexport const DIALOG_PAGE_CONFIG_INJECTION_KEY = Symbol('dialog page config data injection key');\n","<template>\n <Transition :name=\"animation\" mode=\"out-in\" @after-leave=\"updateAnimation\" @leave=\"startAnimation\">\n <div v-if=\"isOpen && showPage\" class=\"b-dialog-page\">\n <div v-if=\"hasSlot('header')\" class=\"b-dialog-page__header\" :class=\"headerConditionalClasses\">\n <div\n v-if=\"showBackButton\"\n class=\"b-dialog-page__back-button\"\n :style=\"backButtonStyling\"\n data-testid=\"back-button\"\n >\n <bento-button variant=\"tertiary\" @click=\"goToPreviousPage(previousPage)\">\n <arrow-left-icon :svg-title=\"t('goToPreviousPage')\" />\n </bento-button>\n </div>\n <slot name=\"header\"></slot>\n </div>\n <div\n v-if=\"hasSlot('content')\"\n ref=\"contentElement\"\n class=\"b-dialog-page__content\"\n :tabindex=\"isScrollable ? 0 : null\"\n @scroll=\"onScroll\"\n >\n <slot name=\"content\" />\n </div>\n <div v-if=\"hasSlot('footer')\" class=\"b-dialog-page__footer\" :class=\"footerConditionalClasses\">\n <slot name=\"footer\" />\n </div>\n </div>\n </Transition>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, nextTick, onMounted, onUnmounted, type PropType, ref, useSlots, watch } from 'vue';\n\n import { BentoButton } from '@/components/button';\n import ArrowLeftIcon from '@adyen/ui-assets-icons-16/vue/arrow-left';\n\n import { useHasSlot } from '@/composables/use-has-slot/use-has-slot';\n import { useI18n } from '@/utils/ts/i18n';\n import { isDevelopmentEnviroment } from '@/utils/ts/dev-environment';\n\n import {\n BentoDialogPageAnimation,\n type BentoDialogPageConfigData,\n type BentoDialogPageRegisterPage,\n } from './dialog-page.types';\n import type { CSSProperties } from 'vue/types/jsx.d.ts';\n\n import { DIALOG_PAGE_CONFIG_INJECTION_KEY, DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY } from './dialog-page.keys';\n\n import messages from './messages.json';\n import { useScroll } from '@vueuse/core';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n /**\n * Identifier of the page, used with activePage prop to handle navigation\n */\n pageId: {\n type: String,\n default: undefined,\n },\n\n /**\n * Show header and actions border\n */\n alwaysShowBorder: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Pass custom styling to the back button to position it correctly with the header slot\n */\n backButtonStyling: { type: Object as PropType<CSSProperties>, default: null },\n\n /**\n * ID of the page for the back button to navigate to. Only use it to overwrite the default back behavior\n * Used when the back button should not take the user to the natural previous page\n * Set to `null` to hide back button in the page\n */\n previousPage: {\n type: String,\n default: undefined,\n },\n });\n\n const emit = defineEmits<{\n /**\n * Fires when the animation ends\n */\n (e: 'animationend'): void;\n }>();\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n // Refs\n const contentElement = ref<HTMLDivElement>(null);\n const hasScroll = ref(false);\n const isMounted = ref(false);\n\n const { arrivedState } = useScroll(contentElement);\n\n // Logic to choose which page is active/shown\n const showPage = computed(() => (activePage.value ? activePage.value === props.pageId : true));\n\n // Scrolling styling logic\n const headerConditionalClasses = computed(() => ({\n 'b-dialog-page__header--with-border': props.alwaysShowBorder || (hasScroll.value && !arrivedState.top),\n }));\n\n const footerConditionalClasses = computed(() => ({\n 'b-dialog-page__footer--with-border': props.alwaysShowBorder || (hasScroll.value && !arrivedState.bottom),\n }));\n\n const isScrollable = computed(() => !(arrivedState.bottom && arrivedState.top));\n\n const onScroll = () => {\n if (!contentElement.value) {\n return;\n }\n };\n\n const calculateScroll = async watchedValue => {\n if (!watchedValue) {\n return;\n }\n // Wait for content to be rendered to be able to calculate the height\n await nextTick();\n if (!isMounted.value) {\n return;\n }\n hasScroll.value = contentElement.value && contentElement.value.scrollHeight > contentElement.value.clientHeight;\n };\n\n const { activePage, animation, isAnimationActive, isOpen, pages, previousPages, updatePage } =\n inject<BentoDialogPageConfigData>(DIALOG_PAGE_CONFIG_INJECTION_KEY);\n\n watch(() => isOpen.value, calculateScroll, { immediate: true });\n watch(() => showPage.value, calculateScroll, { immediate: true });\n\n // Logic to determine whether the back button should be shown on the page\n const showBackButton = computed(() => {\n if (props.previousPage) {\n return true;\n }\n if (props.previousPage === null) {\n return false;\n }\n return hasPreviousPages.value && showPage.value;\n });\n\n // Animation\n const updateAnimation = () => {\n animation.value = BentoDialogPageAnimation.TRANSITION_LEVEL_DEEPER;\n if (isAnimationActive) {\n isAnimationActive.value = false;\n }\n\n emit('animationend');\n };\n\n const startAnimation = () => {\n if (isAnimationActive) {\n isAnimationActive.value = true;\n }\n };\n\n // Previous page logic\n const hasPreviousPages = computed(() => previousPages.value.length > 1);\n const lastPage = computed(() => previousPages.value[previousPages.value.length - 1]);\n const isActivePageValid = computed(() => pages.value.some(page => page === activePage.value));\n\n const goToPreviousPage = async (page: string) => {\n if (page) {\n const index = previousPages.value.indexOf(page);\n if (index !== -1) {\n previousPages.value = previousPages.value.slice(0, index + 1);\n } else {\n previousPages.value = [page];\n }\n } else {\n previousPages.value.pop();\n }\n\n animation.value = BentoDialogPageAnimation.TRANSITION_LEVEL_UPPER;\n await nextTick();\n if (!isMounted.value) {\n return;\n }\n updatePage(lastPage.value);\n };\n\n // Add new page to the previousPage array to keep track of user navigation\n watch(\n () => activePage.value,\n async () => {\n await nextTick();\n if (!isMounted.value || !isOpen.value) {\n return;\n }\n\n if (!!activePage.value && !isActivePageValid.value) {\n if (isDevelopmentEnviroment) {\n // eslint-disable-next-line no-console\n console.error(\n `The activePage passed \"${activePage.value}\" does not match the id of any of the pages`\n );\n return;\n }\n }\n\n if (activePage.value !== lastPage.value) {\n previousPages.value.push(activePage.value);\n }\n },\n { immediate: true }\n );\n\n // Register page to parent component and inject data from parent component\n const registerPage = inject<BentoDialogPageRegisterPage>(DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY);\n const { unregisterPage } = registerPage(props.pageId);\n\n onMounted(() => {\n isMounted.value = true;\n });\n\n // Unregister page on unmounting the page\n onUnmounted(() => {\n isMounted.value = false;\n unregisterPage();\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * DialogPage is an internal component used to render different pages of dialog components (Modal, ModalFullscreen and Sidepanel)\n *\n * @example\n * import { DialogPage } from '@/internal';\n *\n * export default {\n * components: { DialogPage },\n * template: `\n * <dialog-page pageId='step1' always-show-border>\n * <template #header>Header</template>\n * <template #content>Content</template>\n * <template #footer>Footer</template>\n * </dialog-page>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./dialog-page.scss\" />\n"],"names":["BentoDialogPageAnimation","BentoDialogPageAnimation2","DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY","DIALOG_PAGE_CONFIG_INJECTION_KEY","__default__","messages","props","__props","emit","__emit","slots","useSlots","hasSlot","useHasSlot","t","useI18n","contentElement","ref","hasScroll","isMounted","arrivedState","useScroll","showPage","computed","activePage","headerConditionalClasses","footerConditionalClasses","isScrollable","onScroll","calculateScroll","watchedValue","nextTick","animation","isAnimationActive","isOpen","pages","previousPages","updatePage","inject","watch","showBackButton","hasPreviousPages","updateAnimation","startAnimation","lastPage","isActivePageValid","page","goToPreviousPage","index","isDevelopmentEnviroment","registerPage","unregisterPage","onMounted","onUnmounted"],"mappings":"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"}