@adyen/bento-vue2 2.0.0-rc.6 → 2.0.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 (304) hide show
  1. package/README.md +0 -38
  2. package/dist/@types/index.d.ts +78 -34
  3. package/dist/accordion.js +1 -1
  4. package/dist/action-bar.js +1 -1
  5. package/dist/ai-tag.js +1 -1
  6. package/dist/alert.js +1 -1
  7. package/dist/anchor-scroller.js +1 -1
  8. package/dist/assets/accordion-item.css +1 -1
  9. package/dist/assets/action-bar.css +1 -1
  10. package/dist/assets/ai-tag.css +1 -1
  11. package/dist/assets/anchor-scroller.css +1 -1
  12. package/dist/assets/base-modal.css +1 -1
  13. package/dist/assets/button-actions.css +1 -1
  14. package/dist/assets/calendar.css +1 -1
  15. package/dist/assets/card.css +1 -1
  16. package/dist/assets/checkbox-group.css +1 -1
  17. package/dist/assets/checkbox.css +1 -1
  18. package/dist/assets/data-grid-template.css +1 -1
  19. package/dist/assets/data-grid.css +1 -1
  20. package/dist/assets/date-picker.css +1 -1
  21. package/dist/assets/date-range-picker.css +1 -1
  22. package/dist/assets/dialog-page.css +1 -1
  23. package/dist/assets/dropdown.css +1 -1
  24. package/dist/assets/file-uploader.css +1 -1
  25. package/dist/assets/filter-bar.css +1 -1
  26. package/dist/assets/header-with-views.css +1 -1
  27. package/dist/assets/info-icon-with-popover.css +1 -1
  28. package/dist/assets/input-field-password.css +1 -1
  29. package/dist/assets/input-field.css +1 -1
  30. package/dist/assets/inspector.css +1 -1
  31. package/dist/assets/link.css +1 -1
  32. package/dist/assets/modal-fullscreen.css +1 -1
  33. package/dist/assets/navigation-menu-group.css +1 -1
  34. package/dist/assets/pagination.css +1 -1
  35. package/dist/assets/progress-bar.css +1 -1
  36. package/dist/assets/promo-banner.css +1 -1
  37. package/dist/assets/radio-group.css +1 -1
  38. package/dist/assets/rich-text-editor.css +1 -1
  39. package/dist/assets/secondary-nav.css +1 -1
  40. package/dist/assets/segmented-control.css +1 -1
  41. package/dist/assets/selection-card-group.css +1 -1
  42. package/dist/assets/sidepanel.css +1 -1
  43. package/dist/assets/tab.css +1 -1
  44. package/dist/assets/table-of-contents.css +1 -1
  45. package/dist/assets/tag.css +1 -1
  46. package/dist/assets/textarea.css +1 -1
  47. package/dist/assets/timeline-item.css +1 -1
  48. package/dist/assets/toggle.css +1 -1
  49. package/dist/button.js +3 -3
  50. package/dist/card.js +1 -1
  51. package/dist/checkbox.js +2 -2
  52. package/dist/chip.js +1 -1
  53. package/dist/chunks/{accordion-item.V3zpgTzM.js → accordion-item.DOj7vqeL.js} +2 -2
  54. package/dist/chunks/accordion-item.DOj7vqeL.js.map +1 -0
  55. package/dist/chunks/{action-bar.BhS26IWQ.js → action-bar.BsXW7BI2.js} +77 -67
  56. package/dist/chunks/action-bar.BsXW7BI2.js.map +1 -0
  57. package/dist/chunks/{ai-button.CeT3y12R.js → ai-button.BnFk5CzK.js} +2 -2
  58. package/dist/chunks/{ai-button.CeT3y12R.js.map → ai-button.BnFk5CzK.js.map} +1 -1
  59. package/dist/chunks/{ai-tag.C72E0L5z.js → ai-tag.D2Q0xhFK.js} +3 -3
  60. package/dist/chunks/ai-tag.D2Q0xhFK.js.map +1 -0
  61. package/dist/chunks/{alert.DrGpzkQI.js → alert.DJDHwVeR.js} +2 -2
  62. package/dist/chunks/{alert.DrGpzkQI.js.map → alert.DJDHwVeR.js.map} +1 -1
  63. package/dist/chunks/{anchor-scroller.DT7QZd5b.js → anchor-scroller.BbvghQxZ.js} +8 -8
  64. package/dist/chunks/anchor-scroller.BbvghQxZ.js.map +1 -0
  65. package/dist/chunks/{base-button.edpjvY15.js → base-button.DOhHyU7x.js} +2 -2
  66. package/dist/chunks/{base-button.edpjvY15.js.map → base-button.DOhHyU7x.js.map} +1 -1
  67. package/dist/chunks/{base-modal.BXDCTPAM.js → base-modal.CcmoTJdc.js} +90 -82
  68. package/dist/chunks/base-modal.CcmoTJdc.js.map +1 -0
  69. package/dist/chunks/{button-actions-with-menu.CgInFpmT.js → button-actions-with-menu.BY394ars.js} +2 -2
  70. package/dist/chunks/{button-actions-with-menu.CgInFpmT.js.map → button-actions-with-menu.BY394ars.js.map} +1 -1
  71. package/dist/chunks/{button-actions.DdAWQn3c.js → button-actions.bkcLUE1G.js} +5 -5
  72. package/dist/chunks/{button-actions.DdAWQn3c.js.map → button-actions.bkcLUE1G.js.map} +1 -1
  73. package/dist/chunks/{button.CBqJGWy5.js → button.DII5Ifwa.js} +2 -2
  74. package/dist/chunks/{button.CBqJGWy5.js.map → button.DII5Ifwa.js.map} +1 -1
  75. package/dist/chunks/{calendar.Avy_89bW.js → calendar.CXdLEeN4.js} +5 -5
  76. package/dist/chunks/calendar.CXdLEeN4.js.map +1 -0
  77. package/dist/chunks/{card.C-e-dnNE.js → card.b9PEJ7hm.js} +57 -49
  78. package/dist/chunks/card.b9PEJ7hm.js.map +1 -0
  79. package/dist/chunks/{checkbox-group.DKSC-XM9.js → checkbox-group.UYN1ljai.js} +6 -6
  80. package/dist/chunks/checkbox-group.UYN1ljai.js.map +1 -0
  81. package/dist/chunks/{checkbox.CZM7Q3Zi.js → checkbox.Co4HoHKF.js} +15 -15
  82. package/dist/chunks/checkbox.Co4HoHKF.js.map +1 -0
  83. package/dist/chunks/{chip.CCBRXSGa.js → chip.DRsJylWl.js} +2 -2
  84. package/dist/chunks/{chip.CCBRXSGa.js.map → chip.DRsJylWl.js.map} +1 -1
  85. package/dist/chunks/{code-snippet.Dius_4s_.js → code-snippet.CnThWqVb.js} +5 -5
  86. package/dist/chunks/{code-snippet.Dius_4s_.js.map → code-snippet.CnThWqVb.js.map} +1 -1
  87. package/dist/chunks/{copy.CXHEw5S0.js → copy.CSk1rCRo.js} +2 -2
  88. package/dist/chunks/{copy.CXHEw5S0.js.map → copy.CSk1rCRo.js.map} +1 -1
  89. package/dist/chunks/{cross-circle-fill-small.Doaiq7Wx.js → cross-circle-fill-small.CZN966bc.js} +2 -2
  90. package/dist/chunks/cross-circle-fill-small.CZN966bc.js.map +1 -0
  91. package/dist/chunks/{dashboard-section.MA5pmdOu.js → dashboard-section.CYEoNH9Q.js} +3 -3
  92. package/dist/chunks/{dashboard-section.MA5pmdOu.js.map → dashboard-section.CYEoNH9Q.js.map} +1 -1
  93. package/dist/chunks/{dashed-underline.B7PRJBq4.js → dashed-underline.CzKc-fJW.js} +2 -2
  94. package/dist/chunks/{dashed-underline.B7PRJBq4.js.map → dashed-underline.CzKc-fJW.js.map} +1 -1
  95. package/dist/chunks/{data-grid-template.BEM5__ib.js → data-grid-template.DCwzh2G7.js} +4 -4
  96. package/dist/chunks/{data-grid-template.BEM5__ib.js.map → data-grid-template.DCwzh2G7.js.map} +1 -1
  97. package/dist/chunks/{data-grid.B9Htvwxc.js → data-grid.B1lI07ze.js} +19 -19
  98. package/dist/chunks/data-grid.B1lI07ze.js.map +1 -0
  99. package/dist/chunks/{date-picker.CnRL1L1b.js → date-picker.gDsw8bn1.js} +7 -7
  100. package/dist/chunks/date-picker.gDsw8bn1.js.map +1 -0
  101. package/dist/chunks/{date-range-picker.ucOMFCrT.js → date-range-picker.CqixIJxG.js} +10 -10
  102. package/dist/chunks/{date-range-picker.ucOMFCrT.js.map → date-range-picker.CqixIJxG.js.map} +1 -1
  103. package/dist/chunks/{date-time-picker.DvEpFiBu.js → date-time-picker.Bktntun4.js} +5 -5
  104. package/dist/chunks/{date-time-picker.DvEpFiBu.js.map → date-time-picker.Bktntun4.js.map} +1 -1
  105. package/dist/chunks/{dialog-page.CEVl-RI4.js → dialog-page.Bct3zOQO.js} +2 -2
  106. package/dist/chunks/{dialog-page.CEVl-RI4.js.map → dialog-page.Bct3zOQO.js.map} +1 -1
  107. package/dist/chunks/{draggable-handle.CJ2udN5Z.js → draggable-handle.DgVdGC1V.js} +2 -2
  108. package/dist/chunks/{draggable-handle.CJ2udN5Z.js.map → draggable-handle.DgVdGC1V.js.map} +1 -1
  109. package/dist/chunks/{draggable.D9_-DZ-l.js → draggable.DYKdXdbj.js} +2 -2
  110. package/dist/chunks/{draggable.D9_-DZ-l.js.map → draggable.DYKdXdbj.js.map} +1 -1
  111. package/dist/chunks/{dropdown-tag.BEzzqw23.js → dropdown-tag.Dk7SooVv.js} +3 -3
  112. package/dist/chunks/{dropdown-tag.BEzzqw23.js.map → dropdown-tag.Dk7SooVv.js.map} +1 -1
  113. package/dist/chunks/{dropdown.Bkl-FGT4.js → dropdown.Bnq4kP7k.js} +9 -9
  114. package/dist/chunks/dropdown.Bnq4kP7k.js.map +1 -0
  115. package/dist/chunks/{empty-state.CCnSOrRQ.js → empty-state.C2wjdE3y.js} +3 -3
  116. package/dist/chunks/{empty-state.CCnSOrRQ.js.map → empty-state.C2wjdE3y.js.map} +1 -1
  117. package/dist/chunks/es6.yPcTMnSH.js.map +1 -1
  118. package/dist/chunks/{file-uploader.BRedpY0J.js → file-uploader.DllKBmP8.js} +6 -6
  119. package/dist/chunks/file-uploader.DllKBmP8.js.map +1 -0
  120. package/dist/chunks/{filter-bar.Di-vepKR.js → filter-bar.DXpLhnxG.js} +572 -591
  121. package/dist/chunks/filter-bar.DXpLhnxG.js.map +1 -0
  122. package/dist/chunks/{fixed-scroller.QHqymN36.js → fixed-scroller.YC4bZifw.js} +2 -2
  123. package/dist/chunks/{fixed-scroller.QHqymN36.js.map → fixed-scroller.YC4bZifw.js.map} +1 -1
  124. package/dist/chunks/{footer-actions.Hs92lEbc.js → footer-actions.C9STwwcv.js} +3 -3
  125. package/dist/chunks/{footer-actions.Hs92lEbc.js.map → footer-actions.C9STwwcv.js.map} +1 -1
  126. package/dist/chunks/{form-layout-title.CCsmZ9E8.js → form-layout-title.C0lwzPZz.js} +2 -2
  127. package/dist/chunks/{form-layout-title.CCsmZ9E8.js.map → form-layout-title.C0lwzPZz.js.map} +1 -1
  128. package/dist/chunks/generate-uid.DBWe4g6T.js.map +1 -1
  129. package/dist/chunks/{header-with-views.CRmtYRDr.js → header-with-views.HwbE278X.js} +665 -661
  130. package/dist/chunks/{header-with-views.CRmtYRDr.js.map → header-with-views.HwbE278X.js.map} +1 -1
  131. package/dist/chunks/{header.JBgD0-kG.js → header.CmyqVXuG.js} +4 -4
  132. package/dist/chunks/{header.JBgD0-kG.js.map → header.CmyqVXuG.js.map} +1 -1
  133. package/dist/chunks/{info-icon-with-popover.B8URkh7g.js → info-icon-with-popover.BvYyGm4D.js} +3 -3
  134. package/dist/chunks/info-icon-with-popover.BvYyGm4D.js.map +1 -0
  135. package/dist/chunks/{input-field-password.Dbl53ZX_.js → input-field-password.9bWhLud0.js} +5 -5
  136. package/dist/chunks/input-field-password.9bWhLud0.js.map +1 -0
  137. package/dist/chunks/{input-field-phone-number.BdZDHzrf.js → input-field-phone-number.CCn1N9St.js} +2 -2
  138. package/dist/chunks/{input-field-phone-number.BdZDHzrf.js.map → input-field-phone-number.CCn1N9St.js.map} +1 -1
  139. package/dist/chunks/{input-field.LPEj6r0i.js → input-field.D912rZS_.js} +3 -3
  140. package/dist/chunks/input-field.D912rZS_.js.map +1 -0
  141. package/dist/chunks/{input-time.uqE8FS62.js → input-time.CXMuvF9N.js} +3 -3
  142. package/dist/chunks/{input-time.uqE8FS62.js.map → input-time.CXMuvF9N.js.map} +1 -1
  143. package/dist/chunks/{inspector-page.B8HHiZB3.js → inspector-page.BRC_7uro.js} +3 -3
  144. package/dist/chunks/{inspector-page.B8HHiZB3.js.map → inspector-page.BRC_7uro.js.map} +1 -1
  145. package/dist/chunks/{inspector.CcXe5K4v.js → inspector.IOtNex1r.js} +3 -3
  146. package/dist/chunks/inspector.IOtNex1r.js.map +1 -0
  147. package/dist/chunks/{link.BzIDMKgE.js → link.Cls8XShm.js} +4 -4
  148. package/dist/chunks/link.Cls8XShm.js.map +1 -0
  149. package/dist/chunks/{list-item.Bcqodg1-.js → list-item.HjabBEb8.js} +3 -3
  150. package/dist/chunks/{list-item.Bcqodg1-.js.map → list-item.HjabBEb8.js.map} +1 -1
  151. package/dist/chunks/{listbox-option-tag.B08qQaBW.js → listbox-option-tag.DhNxvqRO.js} +2 -2
  152. package/dist/chunks/{listbox-option-tag.B08qQaBW.js.map → listbox-option-tag.DhNxvqRO.js.map} +1 -1
  153. package/dist/chunks/{modal-fullscreen.Bo2wcyxV.js → modal-fullscreen.Bi1bQs4Z.js} +6 -6
  154. package/dist/chunks/modal-fullscreen.Bi1bQs4Z.js.map +1 -0
  155. package/dist/chunks/{modal.pzXwZQtG.js → modal.B3-pmL5s.js} +5 -5
  156. package/dist/chunks/{modal.pzXwZQtG.js.map → modal.B3-pmL5s.js.map} +1 -1
  157. package/dist/chunks/{navigation-menu-group.CKVu4No8.js → navigation-menu-group.B-AV49Bn.js} +6 -6
  158. package/dist/chunks/navigation-menu-group.B-AV49Bn.js.map +1 -0
  159. package/dist/chunks/{pagination.D4uye85j.js → pagination.cI_pc6oE.js} +5 -5
  160. package/dist/chunks/pagination.cI_pc6oE.js.map +1 -0
  161. package/dist/chunks/{progress-bar.CeSR79Ue.js → progress-bar.RlF3a0Gb.js} +2 -2
  162. package/dist/chunks/progress-bar.RlF3a0Gb.js.map +1 -0
  163. package/dist/chunks/{promo-banner.BzTq9SMT.js → promo-banner.B5szTysj.js} +7 -7
  164. package/dist/chunks/{promo-banner.BzTq9SMT.js.map → promo-banner.B5szTysj.js.map} +1 -1
  165. package/dist/chunks/{radio-group.70MGuwY1.js → radio-group.CvsQDlHi.js} +4 -4
  166. package/dist/chunks/radio-group.CvsQDlHi.js.map +1 -0
  167. package/dist/chunks/{rich-text-editor.wa-8sYrf.js → rich-text-editor.DNmVJilP.js} +6 -6
  168. package/dist/chunks/{rich-text-editor.wa-8sYrf.js.map → rich-text-editor.DNmVJilP.js.map} +1 -1
  169. package/dist/chunks/{search-bar.C900XBUm.js → search-bar.--4KVNkf.js} +3 -3
  170. package/dist/chunks/{search-bar.C900XBUm.js.map → search-bar.--4KVNkf.js.map} +1 -1
  171. package/dist/chunks/{secondary-nav.Dv3WA-JA.js → secondary-nav.CXtDQAay.js} +5 -5
  172. package/dist/chunks/secondary-nav.CXtDQAay.js.map +1 -0
  173. package/dist/chunks/{segmented-control.CxOLPKpX.js → segmented-control.nYpRQTGc.js} +2 -2
  174. package/dist/chunks/segmented-control.nYpRQTGc.js.map +1 -0
  175. package/dist/chunks/{selection-card-group.DNHKvN7F.js → selection-card-group.DjFWMqVZ.js} +21 -21
  176. package/dist/chunks/selection-card-group.DjFWMqVZ.js.map +1 -0
  177. package/dist/chunks/{sidepanel.lCym69kV.js → sidepanel.CntIcmx-.js} +6 -6
  178. package/dist/chunks/sidepanel.CntIcmx-.js.map +1 -0
  179. package/dist/chunks/{step.DWC-MMij.js → step.BCa9IOWB.js} +2 -2
  180. package/dist/chunks/{step.DWC-MMij.js.map → step.BCa9IOWB.js.map} +1 -1
  181. package/dist/chunks/{structured-list-item.DozZFSKW.js → structured-list-item.Bhe0CH1M.js} +3 -3
  182. package/dist/chunks/{structured-list-item.DozZFSKW.js.map → structured-list-item.Bhe0CH1M.js.map} +1 -1
  183. package/dist/chunks/{summary-grid.types.W9PBumap.js → summary-grid.types.C70ED6WD.js} +4 -4
  184. package/dist/chunks/{summary-grid.types.W9PBumap.js.map → summary-grid.types.C70ED6WD.js.map} +1 -1
  185. package/dist/chunks/{tab.5rS16WWy.js → tab.BK1sIJAJ.js} +38 -38
  186. package/dist/chunks/tab.BK1sIJAJ.js.map +1 -0
  187. package/dist/chunks/{table-of-contents.f_6G1qFS.js → table-of-contents.BTy95Rrs.js} +2 -2
  188. package/dist/chunks/table-of-contents.BTy95Rrs.js.map +1 -0
  189. package/dist/chunks/tag.Dz1FQSZb.js +56 -0
  190. package/dist/chunks/tag.Dz1FQSZb.js.map +1 -0
  191. package/dist/chunks/{textarea.BGm1lgyY.js → textarea.CcV9U3I7.js} +4 -4
  192. package/dist/chunks/textarea.CcV9U3I7.js.map +1 -0
  193. package/dist/chunks/{timeline-item.Ctso54I1.js → timeline-item.BG2by0xf.js} +9 -9
  194. package/dist/chunks/{timeline-item.Ctso54I1.js.map → timeline-item.BG2by0xf.js.map} +1 -1
  195. package/dist/chunks/title-details.ChwPP7C5.js +119 -0
  196. package/dist/chunks/title-details.ChwPP7C5.js.map +1 -0
  197. package/dist/chunks/{toast.DL_9zlHB.js → toast.CO6ByH3n.js} +2 -2
  198. package/dist/chunks/{toast.DL_9zlHB.js.map → toast.CO6ByH3n.js.map} +1 -1
  199. package/dist/chunks/{toggle.BkTeqKsx.js → toggle.Dgh7aw1D.js} +2 -2
  200. package/dist/chunks/toggle.Dgh7aw1D.js.map +1 -0
  201. package/dist/chunks/tooltip.DFYc5NKM.js.map +1 -1
  202. package/dist/chunks/{tutorial.FPpVdWTS.js → tutorial.K0aOQWIg.js} +2 -2
  203. package/dist/chunks/{tutorial.FPpVdWTS.js.map → tutorial.K0aOQWIg.js.map} +1 -1
  204. package/dist/chunks/use-bento-toast-controller.A5xraVqa.js.map +1 -1
  205. package/dist/chunks/{use-date-input-formatter.BzLbx82k.js → use-date-input-formatter.MgbFwUqJ.js} +2 -2
  206. package/dist/chunks/{use-date-input-formatter.BzLbx82k.js.map → use-date-input-formatter.MgbFwUqJ.js.map} +1 -1
  207. package/dist/chunks/use-dynamic-date-fns-locale.Bpb2DeYR.js +39 -0
  208. package/dist/chunks/use-dynamic-date-fns-locale.Bpb2DeYR.js.map +1 -0
  209. package/dist/code-snippet.js +1 -1
  210. package/dist/dashboard-template.js +1 -1
  211. package/dist/dashed-underline.js +1 -1
  212. package/dist/data-grid-template.js +1 -1
  213. package/dist/data-grid.js +1 -1
  214. package/dist/date-picker.js +2 -2
  215. package/dist/date-range-picker.js +2 -2
  216. package/dist/date-time-picker.js +1 -1
  217. package/dist/draggable.js +2 -2
  218. package/dist/dropdown.js +2 -2
  219. package/dist/empty-state.js +1 -1
  220. package/dist/file-uploader.js +1 -1
  221. package/dist/filter-bar.js +1 -1
  222. package/dist/form-layout.js +1 -1
  223. package/dist/header-with-views.js +1 -1
  224. package/dist/header.js +1 -1
  225. package/dist/index.js +64 -64
  226. package/dist/input-field-password.js +1 -1
  227. package/dist/input-field-phone-number.js +1 -1
  228. package/dist/input-field.js +1 -1
  229. package/dist/input-time.js +1 -1
  230. package/dist/inspector.js +2 -2
  231. package/dist/internal.js +10 -10
  232. package/dist/link.js +1 -1
  233. package/dist/list.js +1 -1
  234. package/dist/menu.js +1 -1
  235. package/dist/modal-fullscreen.js +1 -1
  236. package/dist/modal.js +2 -2
  237. package/dist/navigation-menu.js +1 -1
  238. package/dist/pagination.js +1 -1
  239. package/dist/popover.js +1 -1
  240. package/dist/progress-bar.js +1 -1
  241. package/dist/promo-banner.js +1 -1
  242. package/dist/radio-group.js +1 -1
  243. package/dist/rich-text-editor.js +1 -1
  244. package/dist/search-bar.js +2 -2
  245. package/dist/secondary-nav.js +1 -1
  246. package/dist/segmented-control.js +1 -1
  247. package/dist/selection-card.js +1 -1
  248. package/dist/sidepanel.js +1 -1
  249. package/dist/stepper.js +1 -1
  250. package/dist/structured-list.js +1 -1
  251. package/dist/styles/bento-dark.css +3 -3
  252. package/dist/styles/bento-light.css +4 -4
  253. package/dist/styles/bento.css +4 -4
  254. package/dist/styles/legacy.css +4 -4
  255. package/dist/styles/styleguide.css +4 -4
  256. package/dist/styles/utility.css +4 -4
  257. package/dist/summary-grid.js +1 -1
  258. package/dist/table-of-contents.js +1 -1
  259. package/dist/tabs.js +1 -1
  260. package/dist/tag.js +1 -1
  261. package/dist/textarea.js +1 -1
  262. package/dist/timeline.js +1 -1
  263. package/dist/toast.js +1 -1
  264. package/dist/toggle.js +1 -1
  265. package/dist/tutorial.js +1 -1
  266. package/dist/web-types.json +65 -3
  267. package/package.json +6 -6
  268. package/dist/chunks/accordion-item.V3zpgTzM.js.map +0 -1
  269. package/dist/chunks/action-bar.BhS26IWQ.js.map +0 -1
  270. package/dist/chunks/ai-tag.C72E0L5z.js.map +0 -1
  271. package/dist/chunks/anchor-scroller.DT7QZd5b.js.map +0 -1
  272. package/dist/chunks/base-modal.BXDCTPAM.js.map +0 -1
  273. package/dist/chunks/calendar.Avy_89bW.js.map +0 -1
  274. package/dist/chunks/card.C-e-dnNE.js.map +0 -1
  275. package/dist/chunks/checkbox-group.DKSC-XM9.js.map +0 -1
  276. package/dist/chunks/checkbox.CZM7Q3Zi.js.map +0 -1
  277. package/dist/chunks/cross-circle-fill-small.Doaiq7Wx.js.map +0 -1
  278. package/dist/chunks/data-grid.B9Htvwxc.js.map +0 -1
  279. package/dist/chunks/date-picker.CnRL1L1b.js.map +0 -1
  280. package/dist/chunks/dropdown.Bkl-FGT4.js.map +0 -1
  281. package/dist/chunks/file-uploader.BRedpY0J.js.map +0 -1
  282. package/dist/chunks/filter-bar.Di-vepKR.js.map +0 -1
  283. package/dist/chunks/info-icon-with-popover.B8URkh7g.js.map +0 -1
  284. package/dist/chunks/input-field-password.Dbl53ZX_.js.map +0 -1
  285. package/dist/chunks/input-field.LPEj6r0i.js.map +0 -1
  286. package/dist/chunks/inspector.CcXe5K4v.js.map +0 -1
  287. package/dist/chunks/link.BzIDMKgE.js.map +0 -1
  288. package/dist/chunks/modal-fullscreen.Bo2wcyxV.js.map +0 -1
  289. package/dist/chunks/navigation-menu-group.CKVu4No8.js.map +0 -1
  290. package/dist/chunks/pagination.D4uye85j.js.map +0 -1
  291. package/dist/chunks/progress-bar.CeSR79Ue.js.map +0 -1
  292. package/dist/chunks/radio-group.70MGuwY1.js.map +0 -1
  293. package/dist/chunks/secondary-nav.Dv3WA-JA.js.map +0 -1
  294. package/dist/chunks/segmented-control.CxOLPKpX.js.map +0 -1
  295. package/dist/chunks/selection-card-group.DNHKvN7F.js.map +0 -1
  296. package/dist/chunks/sidepanel.lCym69kV.js.map +0 -1
  297. package/dist/chunks/tab.5rS16WWy.js.map +0 -1
  298. package/dist/chunks/table-of-contents.f_6G1qFS.js.map +0 -1
  299. package/dist/chunks/tag.DSzato7w.js +0 -50
  300. package/dist/chunks/tag.DSzato7w.js.map +0 -1
  301. package/dist/chunks/textarea.BGm1lgyY.js.map +0 -1
  302. package/dist/chunks/title-details.Dwm8V6Zg.js +0 -151
  303. package/dist/chunks/title-details.Dwm8V6Zg.js.map +0 -1
  304. package/dist/chunks/toggle.BkTeqKsx.js.map +0 -1
@@ -192,7 +192,7 @@
192
192
  --b-color-label-inverse-critical-active: #ffded3;
193
193
  --b-color-label-inverse-critical-hover: #ffc9b6;
194
194
  --b-color-label-inverse-critical: #ffb196;
195
- --b-color-label-inverse-disabled: #858585;
195
+ --b-color-label-inverse-disabled: #767676;
196
196
  --b-color-label-inverse-secondary: #949494;
197
197
  --b-color-label-inverse-primary-active: #ededed;
198
198
  --b-color-label-inverse-primary-hover: #f5f5f5;
@@ -204,7 +204,7 @@
204
204
  --b-color-label-critical-active: #751e00;
205
205
  --b-color-label-critical-hover: #b42e01;
206
206
  --b-color-label-critical: #ce3401;
207
- --b-color-label-disabled: rgba(17, 17, 17, 0.45);
207
+ --b-color-label-disabled: rgba(17, 17, 17, 0.38);
208
208
  --b-color-label-tertiary: rgba(17, 17, 17, 0.45);
209
209
  --b-color-label-secondary: rgba(17, 17, 17, 0.64);
210
210
  --b-color-label-primary-active: rgba(17, 17, 17, 0.58);
@@ -241,7 +241,7 @@
241
241
  --b-color-background-inverse-critical-weak-active: #751e00;
242
242
  --b-color-background-inverse-critical-weak-hover: #681a00;
243
243
  --b-color-background-inverse-critical-weak: #5c1800;
244
- --b-color-background-inverse-disabled: #363635;
244
+ --b-color-background-inverse-disabled: #232322;
245
245
  --b-color-background-inverse-tertiary-active: #4c4a49;
246
246
  --b-color-background-inverse-tertiary-hover: #3d3d3c;
247
247
  --b-color-background-inverse-tertiary: #30302f;
@@ -272,7 +272,7 @@
272
272
  --b-color-background-selected-active: #c8dff7;
273
273
  --b-color-background-selected-hover: #d4e6f9;
274
274
  --b-color-background-selected: #e3effb;
275
- --b-color-background-disabled: rgba(17, 17, 16, 0.07);
275
+ --b-color-background-disabled: rgba(17, 17, 16, 0.04);
276
276
  --b-color-background-modal-active: #efeeed;
277
277
  --b-color-background-modal-hover: #f6f5f4;
278
278
  --b-color-background-modal: #ffffff;
@@ -192,7 +192,7 @@
192
192
  --b-color-label-inverse-critical-active: #ffded3;
193
193
  --b-color-label-inverse-critical-hover: #ffc9b6;
194
194
  --b-color-label-inverse-critical: #ffb196;
195
- --b-color-label-inverse-disabled: #858585;
195
+ --b-color-label-inverse-disabled: #767676;
196
196
  --b-color-label-inverse-secondary: #949494;
197
197
  --b-color-label-inverse-primary-active: #ededed;
198
198
  --b-color-label-inverse-primary-hover: #f5f5f5;
@@ -204,7 +204,7 @@
204
204
  --b-color-label-critical-active: #751e00;
205
205
  --b-color-label-critical-hover: #b42e01;
206
206
  --b-color-label-critical: #ce3401;
207
- --b-color-label-disabled: rgba(17, 17, 17, 0.45);
207
+ --b-color-label-disabled: rgba(17, 17, 17, 0.38);
208
208
  --b-color-label-tertiary: rgba(17, 17, 17, 0.45);
209
209
  --b-color-label-secondary: rgba(17, 17, 17, 0.64);
210
210
  --b-color-label-primary-active: rgba(17, 17, 17, 0.58);
@@ -241,7 +241,7 @@
241
241
  --b-color-background-inverse-critical-weak-active: #751e00;
242
242
  --b-color-background-inverse-critical-weak-hover: #681a00;
243
243
  --b-color-background-inverse-critical-weak: #5c1800;
244
- --b-color-background-inverse-disabled: #363635;
244
+ --b-color-background-inverse-disabled: #232322;
245
245
  --b-color-background-inverse-tertiary-active: #4c4a49;
246
246
  --b-color-background-inverse-tertiary-hover: #3d3d3c;
247
247
  --b-color-background-inverse-tertiary: #30302f;
@@ -272,7 +272,7 @@
272
272
  --b-color-background-selected-active: #c8dff7;
273
273
  --b-color-background-selected-hover: #d4e6f9;
274
274
  --b-color-background-selected: #e3effb;
275
- --b-color-background-disabled: rgba(17, 17, 16, 0.07);
275
+ --b-color-background-disabled: rgba(17, 17, 16, 0.04);
276
276
  --b-color-background-modal-active: #efeeed;
277
277
  --b-color-background-modal-hover: #f6f5f4;
278
278
  --b-color-background-modal: #ffffff;
@@ -192,7 +192,7 @@
192
192
  --b-color-label-inverse-critical-active: #ffded3;
193
193
  --b-color-label-inverse-critical-hover: #ffc9b6;
194
194
  --b-color-label-inverse-critical: #ffb196;
195
- --b-color-label-inverse-disabled: #858585;
195
+ --b-color-label-inverse-disabled: #767676;
196
196
  --b-color-label-inverse-secondary: #949494;
197
197
  --b-color-label-inverse-primary-active: #ededed;
198
198
  --b-color-label-inverse-primary-hover: #f5f5f5;
@@ -204,7 +204,7 @@
204
204
  --b-color-label-critical-active: #751e00;
205
205
  --b-color-label-critical-hover: #b42e01;
206
206
  --b-color-label-critical: #ce3401;
207
- --b-color-label-disabled: rgba(17, 17, 17, 0.45);
207
+ --b-color-label-disabled: rgba(17, 17, 17, 0.38);
208
208
  --b-color-label-tertiary: rgba(17, 17, 17, 0.45);
209
209
  --b-color-label-secondary: rgba(17, 17, 17, 0.64);
210
210
  --b-color-label-primary-active: rgba(17, 17, 17, 0.58);
@@ -241,7 +241,7 @@
241
241
  --b-color-background-inverse-critical-weak-active: #751e00;
242
242
  --b-color-background-inverse-critical-weak-hover: #681a00;
243
243
  --b-color-background-inverse-critical-weak: #5c1800;
244
- --b-color-background-inverse-disabled: #363635;
244
+ --b-color-background-inverse-disabled: #232322;
245
245
  --b-color-background-inverse-tertiary-active: #4c4a49;
246
246
  --b-color-background-inverse-tertiary-hover: #3d3d3c;
247
247
  --b-color-background-inverse-tertiary: #30302f;
@@ -272,7 +272,7 @@
272
272
  --b-color-background-selected-active: #c8dff7;
273
273
  --b-color-background-selected-hover: #d4e6f9;
274
274
  --b-color-background-selected: #e3effb;
275
- --b-color-background-disabled: rgba(17, 17, 16, 0.07);
275
+ --b-color-background-disabled: rgba(17, 17, 16, 0.04);
276
276
  --b-color-background-modal-active: #efeeed;
277
277
  --b-color-background-modal-hover: #f6f5f4;
278
278
  --b-color-background-modal: #ffffff;
@@ -247,7 +247,7 @@
247
247
  --b-color-label-inverse-critical-active: #ffded3;
248
248
  --b-color-label-inverse-critical-hover: #ffc9b6;
249
249
  --b-color-label-inverse-critical: #ffb196;
250
- --b-color-label-inverse-disabled: #858585;
250
+ --b-color-label-inverse-disabled: #767676;
251
251
  --b-color-label-inverse-secondary: #949494;
252
252
  --b-color-label-inverse-primary-active: #ededed;
253
253
  --b-color-label-inverse-primary-hover: #f5f5f5;
@@ -259,7 +259,7 @@
259
259
  --b-color-label-critical-active: #751e00;
260
260
  --b-color-label-critical-hover: #b42e01;
261
261
  --b-color-label-critical: #ce3401;
262
- --b-color-label-disabled: rgba(17, 17, 17, 0.45);
262
+ --b-color-label-disabled: rgba(17, 17, 17, 0.38);
263
263
  --b-color-label-tertiary: rgba(17, 17, 17, 0.45);
264
264
  --b-color-label-secondary: rgba(17, 17, 17, 0.64);
265
265
  --b-color-label-primary-active: rgba(17, 17, 17, 0.58);
@@ -296,7 +296,7 @@
296
296
  --b-color-background-inverse-critical-weak-active: #751e00;
297
297
  --b-color-background-inverse-critical-weak-hover: #681a00;
298
298
  --b-color-background-inverse-critical-weak: #5c1800;
299
- --b-color-background-inverse-disabled: #363635;
299
+ --b-color-background-inverse-disabled: #232322;
300
300
  --b-color-background-inverse-tertiary-active: #4c4a49;
301
301
  --b-color-background-inverse-tertiary-hover: #3d3d3c;
302
302
  --b-color-background-inverse-tertiary: #30302f;
@@ -327,7 +327,7 @@
327
327
  --b-color-background-selected-active: #c8dff7;
328
328
  --b-color-background-selected-hover: #d4e6f9;
329
329
  --b-color-background-selected: #e3effb;
330
- --b-color-background-disabled: rgba(17, 17, 16, 0.07);
330
+ --b-color-background-disabled: rgba(17, 17, 16, 0.04);
331
331
  --b-color-background-modal-active: #efeeed;
332
332
  --b-color-background-modal-hover: #f6f5f4;
333
333
  --b-color-background-modal: #ffffff;
@@ -44,7 +44,7 @@
44
44
  background-color: #efeeed;
45
45
  }
46
46
  .b-color-background-disabled {
47
- background-color: rgba(17, 17, 16, 0.07);
47
+ background-color: rgba(17, 17, 16, 0.04);
48
48
  }
49
49
  .b-color-background-selected {
50
50
  background-color: #e3effb;
@@ -137,7 +137,7 @@
137
137
  background-color: #4c4a49;
138
138
  }
139
139
  .b-color-background-inverse-disabled {
140
- background-color: #363635;
140
+ background-color: #232322;
141
141
  }
142
142
  .b-color-background-inverse-critical-weak {
143
143
  background-color: #5c1800;
@@ -248,7 +248,7 @@
248
248
  color: rgba(17, 17, 17, 0.45);
249
249
  }
250
250
  .b-color-label-disabled {
251
- color: rgba(17, 17, 17, 0.45);
251
+ color: rgba(17, 17, 17, 0.38);
252
252
  }
253
253
  .b-color-label-critical {
254
254
  color: #ce3401;
@@ -284,7 +284,7 @@
284
284
  color: #949494;
285
285
  }
286
286
  .b-color-label-inverse-disabled {
287
- color: #858585;
287
+ color: #767676;
288
288
  }
289
289
  .b-color-label-inverse-critical {
290
290
  color: #ffb196;
@@ -1,4 +1,4 @@
1
- import { s as r, a as t, b as a, c as o, d as i, B as n, e as u, f as d } from "./chunks/summary-grid.types.W9PBumap.js";
1
+ import { s as r, a as t, b as a, c as o, d as i, B as n, e as u, f as d } from "./chunks/summary-grid.types.C70ED6WD.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.f_6G1qFS.js";
1
+ import { t as o } from "./chunks/table-of-contents.BTy95Rrs.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.5rS16WWy.js";
1
+ import { B as e, a as s } from "./chunks/tab.BK1sIJAJ.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.DSzato7w.js";
1
+ import { B as t, a as e } from "./chunks/tag.Dz1FQSZb.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.BGm1lgyY.js";
1
+ import { B as o } from "./chunks/textarea.CcV9U3I7.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.Ctso54I1.js";
1
+ import { t, B as i, a, b as m, c as o, d as l } from "./chunks/timeline-item.BG2by0xf.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.DL_9zlHB.js";
1
+ import { B as a } from "./chunks/toast.CO6ByH3n.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.BkTeqKsx.js";
1
+ import { B as a, a as g, b as s } from "./chunks/toggle.Dgh7aw1D.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 { t as r } from "./chunks/tutorial.FPpVdWTS.js";
1
+ import { t as r } from "./chunks/tutorial.K0aOQWIg.js";
2
2
  export {
3
3
  r as BentoTutorial
4
4
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "framework": "vue",
3
3
  "name": "@adyen/bento-vue2",
4
- "version": "2.0.0-rc.6",
4
+ "version": "2.0.0",
5
5
  "contributions": {
6
6
  "html": {
7
7
  "description-markup": "markdown",
@@ -31,6 +31,14 @@
31
31
  "symbol": "default"
32
32
  }
33
33
  },
34
+ {
35
+ "name": "accordion-default",
36
+ "description": "",
37
+ "source": {
38
+ "module": "./src/components/accordion/__tests__/accordion-default.vue",
39
+ "symbol": "default"
40
+ }
41
+ },
34
42
  {
35
43
  "name": "accordion-item",
36
44
  "description": "",
@@ -70,6 +78,14 @@
70
78
  "symbol": "default"
71
79
  }
72
80
  },
81
+ {
82
+ "name": "accordion-item-default",
83
+ "description": "",
84
+ "source": {
85
+ "module": "./src/components/accordion/components/__tests__/accordion-item-default.vue",
86
+ "symbol": "default"
87
+ }
88
+ },
73
89
  {
74
90
  "name": "accordion-stub",
75
91
  "description": "",
@@ -101,6 +117,15 @@
101
117
  },
102
118
  "default": "() => []"
103
119
  },
120
+ {
121
+ "name": "dismissible",
122
+ "description": "Determines whether the close button is displayed in the `default` variant.",
123
+ "value": {
124
+ "kind": "expression",
125
+ "type": "boolean"
126
+ },
127
+ "default": "true"
128
+ },
104
129
  {
105
130
  "name": "visibleActions",
106
131
  "description": "How many actions should be visible outside the menu, cannot be more than 4",
@@ -130,12 +155,12 @@
130
155
  },
131
156
  {
132
157
  "name": "selectionLabel",
133
- "description": "Label for the selection, e.g. 'selected'/'changed'",
158
+ "description": "Label for the selection in the `default` variant, e.g. 'selected'/'changed'.\nPass `null` to hide it. In the `confirmation` variant, this prop is ignored.",
134
159
  "value": {
135
160
  "kind": "expression",
136
161
  "type": "string"
137
162
  },
138
- "default": "null"
163
+ "default": "undefined"
139
164
  },
140
165
  {
141
166
  "name": "state",
@@ -201,6 +226,9 @@
201
226
  }
202
227
  ],
203
228
  "slots": [
229
+ {
230
+ "name": "selectionLabel"
231
+ },
204
232
  {
205
233
  "name": "stateLabel"
206
234
  }
@@ -226,6 +254,22 @@
226
254
  "symbol": "default"
227
255
  }
228
256
  },
257
+ {
258
+ "name": "action-bar-with-custom-label-example",
259
+ "description": "",
260
+ "source": {
261
+ "module": "./src/components/action-bar/__tests__/action-bar-with-custom-label-example.vue",
262
+ "symbol": "default"
263
+ }
264
+ },
265
+ {
266
+ "name": "action-bar-without-label-example",
267
+ "description": "",
268
+ "source": {
269
+ "module": "./src/components/action-bar/__tests__/action-bar-without-label-example.vue",
270
+ "symbol": "default"
271
+ }
272
+ },
229
273
  {
230
274
  "name": "ai-button",
231
275
  "description": "",
@@ -3459,6 +3503,16 @@
3459
3503
  },
3460
3504
  "default": "null"
3461
3505
  },
3506
+ {
3507
+ "name": "link",
3508
+ "required": false,
3509
+ "description": "Link properties to make the card title a navigable link. Can only be used with non-expandable cards.",
3510
+ "value": {
3511
+ "kind": "expression",
3512
+ "type": "BentoCardLink"
3513
+ },
3514
+ "default": "undefined"
3515
+ },
3462
3516
  {
3463
3517
  "name": "titleSize",
3464
3518
  "required": false,
@@ -3544,6 +3598,14 @@
3544
3598
  "symbol": "default"
3545
3599
  }
3546
3600
  },
3601
+ {
3602
+ "name": "card-with-link-example",
3603
+ "description": "",
3604
+ "source": {
3605
+ "module": "./src/components/card/__tests__/card-with-link-example.vue",
3606
+ "symbol": "default"
3607
+ }
3608
+ },
3547
3609
  {
3548
3610
  "name": "card-with-timestamp-example",
3549
3611
  "description": "",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adyen/bento-vue2",
3
- "version": "2.0.0-rc.6",
3
+ "version": "2.0.0",
4
4
  "description": "Adyen Bento Vue2 components",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -51,7 +51,7 @@
51
51
  "unified": "11.0.5",
52
52
  "uuid": "11.1.1",
53
53
  "vue-demi": "0.14.10",
54
- "@adyen/bento-design-tokens": "2.0.0-rc.6"
54
+ "@adyen/bento-design-tokens": "2.0.0"
55
55
  },
56
56
  "dependenciesMeta": {
57
57
  "@adyen/bento-vue-i18n-demi": {
@@ -132,12 +132,12 @@
132
132
  "vue-template-compiler": "2.7.16",
133
133
  "vue-tsc": "2.2.12",
134
134
  "zod": "3.25.35",
135
- "@adyen/bento-cli": "0.10.8",
136
- "@adyen/bento-core": "0.0.1",
137
- "@adyen/bento-vue-i18n-demi": "0.1.0",
138
135
  "@adyen/eslint-plugin-bento": "2.23.0",
139
136
  "@adyen/ui-assets-icons-16": "7.9.7",
140
- "@adyen/ui-assets-payment-method-icons": "13.0.1"
137
+ "@adyen/bento-cli": "0.10.8",
138
+ "@adyen/ui-assets-payment-method-icons": "13.0.1",
139
+ "@adyen/bento-vue-i18n-demi": "0.1.0",
140
+ "@adyen/bento-core": "0.0.1"
141
141
  },
142
142
  "optionalDependencies": {
143
143
  "vue-router": "~3.6"
@@ -1 +0,0 @@
1
- {"version":3,"file":"accordion-item.V3zpgTzM.js","sources":["../../src/components/accordion/accordion.keys.ts","../../src/components/accordion/accordion.vue","../../src/components/accordion/components/accordion-item.vue"],"sourcesContent":["export const ACCORDION_TITLE_SIZE_INJECTION_KEY = Symbol('accordion title size injection key');\n","<template>\n <div class=\"b-accordion\">\n <slot />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { type PropType, provide, toRef } from 'vue';\n\n import { ACCORDION_TITLE_SIZE_INJECTION_KEY } from './accordion.keys';\n\n import type { BentoAccordionTitleSize } from './accordion.types';\n\n const props = defineProps({\n /**\n * Controls accordion title size.\n * @values default, small\n */\n titleSize: {\n type: String as PropType<BentoAccordionTitleSize>,\n default: 'default',\n },\n });\n\n provide(ACCORDION_TITLE_SIZE_INJECTION_KEY, toRef(props, 'titleSize'));\n</script>\n\n<script lang=\"ts\">\n /**\n * An accordion is a vertical stack of interactive headers used to reveal or hide\n * sections of content associated with these headers.\n *\n * This component must only have `BentoAccordionItem` components in its default slot.\n *\n * Accordion items should be collapsed by default.\n *\n * @example\n * import { BentoAccordion, BentoAccordionItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoAccordion, BentoAccordionItem },\n * template: `\n * <bento-accordion>\n * <bento-accordion-item title=\"Item 1\">\n * Content for item 1\n * </bento-accordion-item>\n * <bento-accordion-item title=\"Item 2\">\n * Content for item 2\n * </bento-accordion-item>\n * </bento-accordion>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./accordion.scss\" />\n","<template>\n <div class=\"b-accordion-item\">\n <bento-typography\n el=\"h3\"\n :variant=\"titleSize === 'small' ? 'body' : 'title'\"\n :strongest=\"titleSize === 'small'\"\n >\n <button\n :id=\"buttonId\"\n :aria-controls=\"contentId\"\n :aria-expanded=\"`${isOpen}`\"\n type=\"button\"\n class=\"b-accordion-item__button\"\n @click=\"isOpen = !isOpen\"\n >\n <chevron-up-icon\n v-if=\"isOpen\"\n class=\"b-accordion-item__icon\"\n :svg-title=\"t('collapse')\"\n aria-hidden=\"true\"\n />\n <chevron-down-icon v-else class=\"b-accordion-item__icon\" :svg-title=\"t('expand')\" aria-hidden=\"true\" />\n {{ title }}\n </button>\n </bento-typography>\n\n <Transition :name=\"CONTENT_TRANSITION_NAME\">\n <div v-if=\"isOpen\" :id=\"contentId\" :aria-labelledby=\"buttonId\" role=\"region\" :style=\"contentMaxHeight\">\n <div ref=\"contentDiv\" class=\"b-accordion-item__content\">\n <slot />\n </div>\n </div>\n </Transition>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, ref, watch } from 'vue';\n\n import { BentoTypography } from '@/components/typography';\n import ChevronDownIcon from '@adyen/ui-assets-icons-16/vue/chevron-down';\n import ChevronUpIcon from '@adyen/ui-assets-icons-16/vue/chevron-up';\n\n import { generateUid } from '@/core/utils/ts';\n import { useI18n } from '@/utils/ts/i18n';\n\n import { ACCORDION_TITLE_SIZE_INJECTION_KEY } from '../accordion.keys';\n\n import type { BentoAccordionTitleSize } from '../accordion.types';\n import { useExpandableContentHeight } from '@/composables/use-expandable-content-height/use-expandable-content-height';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const CONTENT_TRANSITION_NAME = 'b-accordion-item__animation--content';\n\n const props = defineProps({\n /**\n * Sets the title of the accordion item.\n */\n title: {\n type: String,\n required: true,\n },\n /**\n * Controls if the content is visible or hidden.\n */\n isExpanded: {\n type: Boolean,\n default: false,\n },\n });\n\n const emit = defineEmits([\"update:is-expanded\"]);\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n // Refs\n const contentDiv = ref<HTMLDivElement>(null);\n const isOpen = ref(props.isExpanded);\n\n // Generating IDs\n const buttonId = generateUid('accordionItemButton');\n const contentId = generateUid('accordionItemContent');\n\n // Injecting prop from parent\n const titleSize = inject<`${BentoAccordionTitleSize}`>(ACCORDION_TITLE_SIZE_INJECTION_KEY, 'default');\n\n // Getting and setting the item height to be able to handle height animation\n const { contentHeight } = useExpandableContentHeight(contentDiv, isOpen);\n\n const contentMaxHeight = computed(() => (contentHeight.value ? { 'max-height': contentHeight.value } : {}));\n\n watch(\n () => props.isExpanded,\n value => {\n isOpen.value = value;\n }\n );\n\n watch(\n isOpen,\n value => {\n // Enable two-way data binding for `isExpanded`\n emit('update:is-expanded', value);\n },\n { immediate: true }\n );\n</script>\n\n<script lang=\"ts\">\n /**\n * An accordion item is an interactive header used to reveal or hide a\n * section of content associated with this header.\n *\n * This component must always be wrapped by a `BentoAccordion` component.\n *\n * @example\n * import { BentoAccordion, BentoAccordionItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoAccordion, BentoAccordionItem },\n * template: `\n * <bento-accordion>\n * <bento-accordion-item title=\"Item 1\">\n * Content for item 1\n * </bento-accordion-item>\n * <bento-accordion-item title=\"Item 2\">\n * Content for item 2\n * </bento-accordion-item>\n * </bento-accordion>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./accordion-item.scss\" />\n"],"names":["ACCORDION_TITLE_SIZE_INJECTION_KEY","__default__$1","provide","toRef","props","__default__","messages","CONTENT_TRANSITION_NAME","t","useI18n","contentDiv","ref","isOpen","buttonId","generateUid","contentId","titleSize","inject","contentHeight","useExpandableContentHeight","contentMaxHeight","computed","watch","value","emit"],"mappings":";;;;;;;;;AAAO,MAAAA,IAAA,uBAAA,oCAAA,GCqDHC,IAAA,CAAA;;;;;;;;;;;;;;;AA7BA,WAAAC,EAAAF,GAAAG,EAAAC,GAAA,WAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GC+GAC,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;;;;;;;;;;iBAlFAC,IAAA,wCAqBA,EAAA,GAAAC,EAAA,IAAAC,EAAA,GAGAC,IAAAC,EAAA,IAAA,GACAC,IAAAD,EAAAP,EAAA,UAAA,GAGAS,IAAAC,EAAA,qBAAA,GACAC,IAAAD,EAAA,sBAAA,GAGAE,IAAAC,EAAAjB,GAAA,SAAA,GAGA,EAAA,eAAAkB,EAAA,IAAAC,EAAAT,GAAAE,CAAA,GAEAQ,IAAAC,EAAA,MAAAH,EAAA,QAAA,EAAA,cAAAA,EAAA,MAAA,IAAA,CAAA,CAAA;AAEA,WAAAI;AAAA,MAAA,MAAAlB,EAAA;AAAA,MACgB,CAAAmB,MAAA;AAER,QAAAX,EAAA,QAAAW;AAAA,MAAe;AAAA,IACnB,GAGJD;AAAA,MAAAV;AAAA,MACI,CAAAW,MAAA;AAGI,QAAAC,EAAA,sBAAAD,CAAA;AAAA,MAAgC;AAAA,MACpC,EAAA,WAAA,GAAA;AAAA,IACkB;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"action-bar.BhS26IWQ.js","sources":["../../src/components/action-bar/action-bar.vue"],"sourcesContent":["<template>\n <Transition name=\"b-action-bar__animation\" appear>\n <section\n class=\"b-action-bar\"\n :class=\"conditionalClasses\"\n :aria-label=\"t('actionBar')\"\n @animationend=\"onAnimationEnd\"\n >\n <Transition\n :name=\"`b-action-bar__state-animation--${state}`\"\n :mode=\"stateTransitionMode\"\n @before-leave=\"onBeforeLeave\"\n @enter=\"onEnter\"\n @after-enter=\"onAfterEnter\"\n >\n <div\n ref=\"actionBar\"\n :key=\"state\"\n class=\"b-action-bar__container\"\n :class=\"containerClasses\"\n :style=\"{ width: containerWidth, maxWidth: containerMaxWidth }\"\n >\n <div v-if=\"state === 'start'\" class=\"b-action-bar__container-inner\">\n <div v-if=\"!isConfirmationVariant\" class=\"b-action-bar__close-button\">\n <bento-button variant=\"tertiary\" inverse :aria-label=\"t('close')\" @click=\"emit('close')\">\n <template #iconLeft><cross-icon :aria-hidden=\"true\" /></template>\n </bento-button>\n </div>\n <bento-typography el=\"span\" stronger class=\"b-action-bar__selection\">\n <template v-if=\"isConfirmationVariant && noItemCounter\">\n {{ tc('unsavedChanges', 0) }}\n </template>\n <template v-else>\n {{ n(itemCounter) }}\n {{ isConfirmationVariant ? tc('unsavedChanges', itemCounter) : label }}\n </template>\n </bento-typography>\n <bento-button-actions\n v-if=\"isConfirmationVariant\"\n :actions=\"confirmationActions\"\n class=\"b-action-bar__actions\"\n inverse\n />\n <button-actions-with-menu\n v-else\n :actions=\"actionsInternal\"\n class=\"b-action-bar__actions\"\n :displayed-actions=\"internalDisplayedActions\"\n menu-position=\"top-end\"\n disable-responsive-behavior\n inverse\n />\n </div>\n <div v-else class=\"b-action-bar__container-inner\">\n <div class=\"b-action-bar__state-icon\">\n <bento-loading-indicator v-if=\"state === 'loading'\" small inverse />\n <checkmark-circle-fill v-if=\"state === 'success'\" :aria-hidden=\"true\" />\n <cross-circle-fill v-if=\"state === 'fail'\" :aria-hidden=\"true\" />\n </div>\n <bento-typography stronger>\n <slot name=\"stateLabel\">{{ defaultStateLabel }}</slot>\n </bento-typography>\n <div v-if=\"!hideStateActions\" class=\"b-action-bar__state-actions\">\n <bento-button\n v-if=\"state === 'success' && showUndoAction\"\n variant=\"tertiary\"\n inverse\n @click=\"emit('undo-action')\"\n >{{ t('undo') }}</bento-button\n >\n <bento-button\n v-if=\"state === 'fail' && showRetryAction\"\n variant=\"tertiary\"\n inverse\n @click=\"emit('retry-action')\"\n >{{ t('retry') }}</bento-button\n >\n <bento-button\n v-if=\"state === 'fail'\"\n variant=\"tertiary\"\n inverse\n @click=\"emit('cancel-action')\"\n >{{ t('cancel') }}</bento-button\n >\n </div>\n </div>\n </div>\n </Transition>\n </section>\n </Transition>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, nextTick, type PropType, provide, ref, toRefs, type TransitionProps, watch } from 'vue';\n import { BentoButton, BentoButtonActions, type BentoButtonActionsList } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { BentoLoadingIndicator } from '@/components/loading-indicator';\n\n import { type BentoActionBarState, type BentoActionBarVariant } from '@/components/action-bar/action-bar.types';\n import ButtonActionsWithMenu from '@/components/internal/button-actions-with-menu/button-actions-with-menu.vue';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n import CheckmarkCircleFill from '@adyen/ui-assets-icons-16/vue/checkmark-circle-fill';\n import CrossCircleFill from '@adyen/ui-assets-icons-16/vue/cross-circle-fill';\n\n import { useI18n } from '@/utils/ts/i18n';\n import { useWindowSize } from '@vueuse/core';\n\n import messages from './messages.json';\n import { POPOVER_OFFSET_INJECTION_KEY } from '@/components/popover/popover.keys';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n // Constants\n const AVERAGE_BUTTON_SIZE = 100;\n const MENU_OFFSET = 7;\n const RESPONSIVE_BREAKPOINT = 500;\n const SPACING = 32;\n\n const props = defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * Required and used for the `default` variant.\n *\n * Each object in the list should have a `title`, an `event` and,\n * optionally, an `icon`.\n *\n * The component will display 4 actions and the hide the rest inside a menu.\n *\n * @see BentoButton for a list of all the other props supported by each button action.\n */\n actions: {\n type: Array as PropType<BentoButtonActionsList>,\n default: () => [],\n },\n /**\n * How many actions should be visible outside the menu, cannot be more than 4\n */\n visibleActions: {\n type: Number,\n default: 4,\n validator: (value: number) => value > 0 && value <= 4,\n },\n /**\n * Use when there are sticky elements at the bottom, like sticky pagination\n */\n extraBottomSpacing: {\n type: Boolean,\n default: false,\n },\n /**\n * Show how many items are selected.\n * When omitted in the `confirmation` variant, a generic \"Unsaved changes\" label is displayed.\n */\n itemCounter: {\n type: Number,\n default: null,\n },\n /**\n * Label for the selection, e.g. 'selected'/'changed'\n */\n selectionLabel: {\n type: String,\n default: null,\n },\n /**\n * State of the action bar.\n * @values start, loading, success, fail\n */\n state: {\n type: String as PropType<BentoActionBarState>,\n default: 'start',\n },\n /**\n * Displays the undo action button in `success` state.\n */\n showUndoAction: {\n type: Boolean,\n default: false,\n },\n /**\n * Displays the retry action button in `fail` state.\n */\n showRetryAction: {\n type: Boolean,\n default: false,\n },\n /**\n * Variant for the action bar\n * @values default, confirmation\n */\n variant: {\n type: String as PropType<BentoActionBarVariant>,\n default: 'default',\n },\n });\n\n const emit = defineEmits([\"close\", \"cancel\", \"save\", \"undo-action\", \"retry-action\", \"cancel-action\"]);\n\n const { t, tc, n } = useI18n<{ message: MessageSchema }>({ messages });\n const label = computed(() => (props.selectionLabel ? props.selectionLabel : t('selected')));\n\n const defaultStateLabel = computed(() => {\n switch (props.state) {\n case 'loading':\n return t('applying');\n case 'success':\n return t('success');\n case 'fail':\n return t('somethingWentWrong');\n default:\n return '';\n }\n });\n\n // Refs\n const actionBar = ref<HTMLDivElement>(null);\n const containerMaxWidth = ref<string | null>(null);\n const containerWidth = ref<string | null>(null);\n const isShaking = ref(false);\n\n const stateTransitionMode = computed(\n () => (props.state === 'loading' ? 'out-in' : undefined) as TransitionProps['mode']\n );\n\n const hideStateActions = computed(\n () => props.state === 'loading' || (props.state === 'success' && !props.showUndoAction)\n );\n\n const onBeforeLeave = (el: HTMLElement) => {\n if (props.state !== 'loading') {\n return;\n }\n\n containerMaxWidth.value = `${el.offsetWidth}px`;\n containerWidth.value = '100%';\n };\n\n const onEnter = (el: HTMLElement) => {\n if (props.state !== 'loading') {\n return;\n }\n\n // Reset styles to get natural width\n Object.assign(el.style, { width: 'auto', maxWidth: 'none' });\n const newWidth = el.offsetWidth;\n\n // Reset it back to the original values\n Object.assign(el.style, { width: '100%', maxWidth: containerMaxWidth.value });\n\n requestAnimationFrame(() => {\n containerMaxWidth.value = `${newWidth}px`;\n });\n };\n\n const onAfterEnter = () => {\n containerMaxWidth.value = null;\n containerWidth.value = null;\n\n if (props.state === 'fail') {\n isShaking.value = true;\n }\n };\n\n const onAnimationEnd = (event: AnimationEvent) => {\n if (event.animationName.startsWith('shake-')) {\n isShaking.value = false;\n }\n };\n\n const { extraBottomSpacing, visibleActions } = toRefs(props);\n const { width } = useWindowSize();\n const internalDisplayedActions = ref(null);\n const internalVisibleActions = ref(null);\n\n const isConfirmationVariant = computed(() => props.variant === 'confirmation');\n\n watch(\n () => visibleActions.value,\n value => {\n internalVisibleActions.value = value <= 4 ? value : 4;\n internalDisplayedActions.value = internalVisibleActions.value;\n },\n { immediate: true }\n );\n\n // Styling\n const conditionalClasses = computed(() => ({\n 'b-action-bar--extra-spacing': extraBottomSpacing.value,\n 'b-action-bar--confirmation': isConfirmationVariant.value,\n 'b-action-bar__state-animation--shake': isShaking.value,\n }));\n\n const containerClasses = computed(() => ({\n [`b-action-bar__container--${props.state}`]: props.state !== 'start',\n }));\n\n // Provide POPOVER_OFFSET_INJECTION_KEY to change the value of the popover offset\n provide(POPOVER_OFFSET_INJECTION_KEY, MENU_OFFSET);\n\n // Manipulate actions array to display as intended\n const actionsInternal = computed(() => {\n // All buttons should be of type secondary in the action bar\n const actions = props.actions.map(action => ({\n ...action,\n variant: 'secondary',\n })) as BentoButtonActionsList;\n // Shown actions should display from left to right in action bar, instead of right to left which is the button actions default\n const shownActions = actions.slice(0, internalDisplayedActions.value).reverse();\n const hiddenActions = actions.slice(internalDisplayedActions.value);\n\n return [...shownActions, ...hiddenActions];\n });\n\n const confirmationActions = computed<BentoButtonActionsList>(() => [\n {\n title: t('save'),\n event: () => emit('save'),\n },\n {\n title: t('cancel'),\n variant: 'secondary',\n event: () => emit('cancel'),\n },\n ]);\n\n const noItemCounter = computed(() => {\n return props.itemCounter == null || props.itemCounter < 1;\n });\n\n // Recursive functions to determine how many actions should be visible/hidden based on the screens width\n const showActions = async () => {\n await nextTick();\n if (\n width.value > actionBar.value.clientWidth + SPACING + AVERAGE_BUTTON_SIZE &&\n internalDisplayedActions.value < internalVisibleActions.value\n ) {\n internalDisplayedActions.value += 1;\n showActions();\n }\n };\n\n const hideActions = async () => {\n await nextTick();\n if (width.value < actionBar.value.clientWidth + SPACING && internalDisplayedActions.value > 0) {\n internalDisplayedActions.value -= 1;\n hideActions();\n }\n };\n\n // Screen width watcher to toggle hidden/visible actions\n watch(\n () => width.value,\n async (newValue, oldValue) => {\n await nextTick();\n if (!actionBar.value) {\n return;\n }\n const isIncreasing = newValue > oldValue;\n if (width.value < RESPONSIVE_BREAKPOINT) {\n internalDisplayedActions.value = 0;\n } else if (isIncreasing) {\n showActions();\n } else {\n hideActions();\n }\n },\n { immediate: true }\n );\n</script>\n\n<script lang=\"ts\">\n /**\n * Action bar is a floating bar that provides users with quick access to key actions that can be applied to one or multiple items.\n *\n * @example\n * import { BentoActionBar } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoActionBar },\n * template: `\n * <bento-action-bar\n * :actions='[\n * {\n * title: 'Delete',\n * critical: true,\n * icon: BinIcon,\n * event: () => true,\n * },\n * {\n * title: 'Edit',\n * icon: EditIcon,\n * event: () => true,\n * }\n * ]'\n * @close=\"closeAction\"\n * :item-counter=\"5\"\n * />\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./action-bar.scss\" />\n"],"names":["__default__","messages","AVERAGE_BUTTON_SIZE","MENU_OFFSET","RESPONSIVE_BREAKPOINT","SPACING","t","tc","n","useI18n","label","computed","props","defaultStateLabel","actionBar","ref","containerMaxWidth","containerWidth","isShaking","stateTransitionMode","hideStateActions","onBeforeLeave","el","onEnter","newWidth","onAfterEnter","onAnimationEnd","event","extraBottomSpacing","visibleActions","toRefs","width","useWindowSize","internalDisplayedActions","internalVisibleActions","isConfirmationVariant","watch","value","conditionalClasses","containerClasses","provide","POPOVER_OFFSET_INJECTION_KEY","actionsInternal","actions","action","shownActions","hiddenActions","confirmationActions","emit","noItemCounter","showActions","nextTick","hideActions","newValue","oldValue","isIncreasing"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-tag.C72E0L5z.js","sources":["../../src/components/ai-tag/ai-tag.vue"],"sourcesContent":["<template>\n <div ref=\"aiTagRef\" class=\"b-ai-tag\" @keydown.esc=\"closePopover\">\n <bento-toggle-button\n ref=\"targetElement\"\n :toggled=\"toggled\"\n :aria-controls=\"popoverId\"\n variant=\"secondary\"\n condensed\n class=\"b-ai-tag__trigger\"\n @update:toggled=\"onToggle\"\n >\n <template #iconLeft>\n <artificial-intelligence-ai-icon class=\"b-ai-tag__trigger-icon\" :aria-hidden=\"true\" />\n </template>\n {{ t('ai') }}\n </bento-toggle-button>\n\n <bento-popover\n v-if=\"targetElement\"\n :id=\"popoverId\"\n :open=\"toggled\"\n :target-element=\"targetElement\"\n :actions=\"popoverActions\"\n actions-layout=\"fill-container\"\n :title=\"t('aiExplained')\"\n trap-all\n :trap-all-options=\"{ onDeactivate: closePopover, allowOutsideClick: true }\"\n fixed-positioning\n overflow-visible\n @dismiss=\"closePopover\"\n >\n <template #headerIcon>\n <artificial-intelligence-ai-icon class=\"b-ai-tag__popover-header-icon\" :aria-hidden=\"true\" />\n </template>\n <div class=\"b-ai-tag__popover-content\">\n <bento-typography v-if=\"influencedValue\" variant=\"title\" medium class=\"b-ai-tag__influenced-value\">\n {{ influencedValue }}\n </bento-typography>\n\n <bento-typography variant=\"title\">\n {{ title }}\n </bento-typography>\n\n <bento-typography>\n {{ description }}\n </bento-typography>\n </div>\n </bento-popover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref, watch } from 'vue';\n import { BentoPopover } from '@/components/popover';\n import { BentoToggleButton } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { useClickOutside } from '@/composables';\n import { useI18n } from '@/utils/ts/i18n';\n import { generateUid } from '@/core/utils/ts';\n import type { BentoButtonActionsList } from '@/components/button/components/button-actions/button-actions.types';\n import ArtificialIntelligenceAiIcon from '@adyen/ui-assets-icons-16/vue/artificial-intelligence-ai-filled';\n import type { BentoAiTagProps } from './ai-tag.types';\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const props = defineProps({\n title: null,\n description: null,\n influencedValue: { default: undefined },\n toggled: { type: Boolean, default: false },\n action: { default: undefined }\n});\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const toggled = ref(props.toggled);\n const aiTagRef = ref<HTMLElement | null>(null);\n const targetElement = ref<InstanceType<typeof BentoToggleButton> | null>(null);\n const popoverId = generateUid('b-ai-tag-popover');\n\n watch(\n () => props.toggled,\n value => {\n toggled.value = value;\n }\n );\n\n useClickOutside(aiTagRef, () => {\n closePopover();\n });\n\n const popoverActions = computed<BentoButtonActionsList>(() =>\n props.action\n ? [\n {\n ...props.action,\n variant: 'secondary',\n },\n ]\n : undefined\n );\n\n const emit = defineEmits([\"update:toggled\"]);\n\n const onToggle = (value: boolean) => {\n toggled.value = value;\n emit('update:toggled', value);\n };\n\n const closePopover = () => {\n if (toggled.value) {\n onToggle(false);\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * The AI tag is a component used to transparently identify content, data, or experiences that have been generated or\n * enhanced by artificial intelligence.\n *\n * @example\n * import { BentoAiTag } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoAiTag },\n * template: `\n * <bento-ai-tag\n * title=\"Input fields auto-filled by AI\"\n * description=\"Based on your documents uploaded, AI has auto-filled some information for you.\"\n * />\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./ai-tag.scss\" />\n"],"names":["__default__","messages","useI18n","toggled","ref","props","aiTagRef","targetElement","popoverId","generateUid","watch","value","useClickOutside","closePopover","popoverActions","computed","onToggle","emit"],"mappings":";;;;;;;;;;;;;;;;;;;;;GAuIIA,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;iBA/DA,EAAA,EAAA,IAAAC,EAAA,GAEAC,IAAAC,EAAAC,EAAA,OAAA,GACAC,IAAAF,EAAA,IAAA,GACAG,IAAAH,EAAA,IAAA,GACAI,IAAAC,EAAA,kBAAA;AAEA,IAAAC;AAAA,MAAA,MAAAL,EAAA;AAAA,MACgB,CAAAM,MAAA;AAER,QAAAR,EAAA,QAAAQ;AAAA,MAAgB;AAAA,IACpB,GAGJC,EAAAN,GAAA,MAAA;AACI,MAAAO,EAAA;AAAA,IAAa,CAAA;AAGjB,UAAAC,IAAAC;AAAA,MAAuB,MAAAV,EAAA,SAAA;AAAA,QAEb;AAAA,UACI,GAAAA,EAAA;AAAA,UACa,SAAA;AAAA,QACA;AAAA,MACb,IAAA;AAAA,IAEJ,GAKVW,IAAA,CAAAL,MAAA;AACI,MAAAR,EAAA,QAAAQ,GACAM,EAAA,kBAAAN,CAAA;AAAA,IAA4B,GAGhCE,IAAA,MAAA;AACI,MAAAV,EAAA,SACIa,EAAA,EAAA;AAAA,IACJ;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"anchor-scroller.DT7QZd5b.js","sources":["../../src/components/anchor-scroller/components/anchor-scroller-list/anchor-scroller-list.vue","../../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 = defineProps({\n activeIndex: { default: undefined },\n items: null,\n scrollOffset: { default: 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 { 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 = defineProps({\n activeIndex: { default: undefined },\n items: null\n});\n\n const emit = defineEmits([\"update:active-index\"]);\n\n const navigationRef = ref(null);\n\n const computedItems = computed<Array<BentoAnchorScrollerItem>>(() => props.items.map(item => ({ ...item })));\n\n // Skip and cache only items that are enabled\n const enabledItems = computed(() =>\n props.items\n .map((item, originalIndex) => ({\n element: unrefElement(item.elementRef),\n originalIndex,\n disabled: item.disabled,\n }))\n .filter(\n (item): item is { element: Element; originalIndex: number; disabled: boolean } =>\n !item.disabled && !!item.element\n )\n );\n\n 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: scrollSpyActiveIndex } = useScrollSpy(scrollToTargets, {\n default: toRef(props, 'activeIndex'),\n debounce: 200,\n });\n\n const currentActiveIndex = computed(() => {\n const candidate = enabledItems.value[scrollSpyActiveIndex.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":["navigationItems","computed","props","isFocusable","navigationItemRefs","onKeydownNavigation","useSectionNavigationKeyboard","item","toRef","elementRef","disabled","scrollToSection","__default__","messages","useI18n","navigationRef","ref","computedItems","enabledItems","originalIndex","unrefElement","top","bottom","useElementBounding","scrollToTargets","c","navigationConditionalClasses","scrollSpyActiveIndex","useScrollSpy","currentActiveIndex","candidate","watch","val","emit","printDevelopmentWarning","navLabelId","generateUid"],"mappings":";;;;;;;;;;;;;;;;;;;iBAqCIA,IAAAC,EAAA,MAAAC,EAAA,KAAA,GACA,EAAA,aAAAC,GAAA,oBAAAC,GAAA,qBAAAC,EAAA,IAAAC,EAAAN,GAAA;AAAA,MAA+G,YAAA,CAAAO,MAAAA,EAAA;AAAA,MAClF,cAAAC,EAAAN,GAAA,aAAA;AAAA,IACe,CAAA;wIAG5C,CAAAO,GAAAC,MAAAC,EAAAF,GAAA;AAAA,MAIyD,UAAAC;AAAA,MACjD,cAAAR,EAAA;AAAA,MACoB,eAAA;AAAA,IACL,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GC8FvBU,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAAA,EACM,MAAA;AAErB;;;;;;;;iBAnGA,EAAA,EAAA,IAAAC,EAAA,GASAC,IAAAC,EAAA,IAAA,GAEAC,IAAAhB,EAAA,MAAAC,EAAA,MAAA,IAAA,CAAAK,OAAA,EAAA,GAAAA,EAAA,EAAA,CAAA,GAGAW,IAAAjB;AAAA,MAAqB,MAAAC,EAAA,MAAA,IAAA,CAAAK,GAAAY,OAAA;AAAA,QAEkB,SAAAC,EAAAb,EAAA,UAAA;AAAA,QACU,eAAAY;AAAA,QACrC,UAAAZ,EAAA;AAAA,MACe,EAAA,EAAA;AAAA,QAElB,CAAAA,MAAA,CAAAA,EAAA,YAAA,CAAA,CAAAA,EAAA;AAAA,MAEgC;AAAA,IACjC,GAGR,EAAA,KAAAc,GAAA,QAAAC,EAAA,IAAAC,EAAAR,CAAA,GAGAS,IAAAvB,EAAA,MAAAiB,EAAA,MAAA,IAAA,CAAAO,MAAAA,EAAA,OAAA,CAAA,GAEAC,IAAAzB,EAAA,OAAA;AAAA,MAAqD,yCAAAoB,EAAA,SAAA;AAAA,IACK,EAAA,GAG1D,EAAA,aAAAM,EAAA,IAAAC,EAAAJ,GAAA;AAAA,MAA4E,SAAAhB,EAAAN,GAAA,aAAA;AAAA,MACrC,UAAA;AAAA,IACzB,CAAA,GAGd2B,IAAA5B,EAAA,MAAA;AACI,YAAA6B,IAAAZ,EAAA,MAAAS,EAAA,KAAA;AAEA,aAAAG,IAAAA,EAAA,gBAAA;AAAA,IAA6C,CAAA;AAGjD,IAAAC,EAAAF,GAAA,CAAAG,MAAA;AACI,MAAA,OAAA,SAAAA,CAAA,KACIC,EAAA,uBAAAD,CAAA;AAAA,IACJ,CAAA,GAGJD;AAAA,MAAA,MAAA7B,EAAA;AAAA,MACgB,CAAA8B,MAAA;AAER,QAAA,OAAA,SAAAA,CAAA,KAAAf,EAAA,MAAAe,CAAA,EAAA,YACIE,EAAA,mEAAA;AAAA,MACJ;AAAA,IACJ;AAGJ,UAAAC,IAAAC,EAAA,6BAAA;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"base-modal.BXDCTPAM.js","sources":["../../src/components/modal/modal.types.ts","../../src/components/modal/modal.keys.ts","../../src/components/modal/components/modal-page/modal-page.vue","../../src/components/modal/components/base-modal/base-modal.vue"],"sourcesContent":["/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoModalVariant {\n DEFAULT = 'default',\n DIALOG = 'dialog',\n}\n\n/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoModalVariantMapping {\n DEFAULT = 'BentoModalDefault',\n DIALOG = 'BentoModalDialog',\n}\n\n/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoModalSize {\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\n}\n\n/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoModalColumnLayoutVariant {\n SMALLER = 'smaller',\n EQUAL = 'equal',\n BIGGER = 'bigger',\n}\n\nexport enum BentoModalRole {\n DIALOG = 'dialog',\n ALERT_DIALOG = 'alertdialog',\n}\n\n/**\n * @deprecated Since v2.0.0. Use string literal instead.\n */\nexport enum BentoModalDialogType {\n CONFIRMATION = 'confirmation',\n DESTRUCTIVE = 'destructive',\n INFO = 'info',\n ACKNOWLEDGEMENT = 'acknowledgement',\n}\n\nexport enum BentoModalEvent {\n CLOSE_MODAL = 'close-modal',\n}\n","export const MODAL_CONFIG_INJECTION_KEY = Symbol('modal config data injection key');\n","<template>\n <dialog-page\n ref=\"page\"\n class=\"b-modal-page\"\n :class=\"modalPageConditionalClasses\"\n :page-id=\"pageId\"\n :always-show-border=\"hasColumnLayout\"\n :back-button-styling=\"customPaddingStyles?.backButton\"\n :previous-page=\"previousPage\"\n @animationend=\"isAnimationActive = false\"\n >\n <template v-if=\"hasSlot('default') || showCloseButton\" #header>\n <div class=\"b-modal-page__header-container\" :style=\"customPaddingStyles.header\">\n <div class=\"b-modal-page__header\">\n <bento-typography class=\"b-modal-page__title\" el=\"span\" variant=\"title\" stronger>\n <slot v-if=\"hasSlot('default')\" />\n </bento-typography>\n </div>\n </div>\n </template>\n\n <template #content>\n <div\n class=\"b-modal-page__content\"\n :class=\"modalContentConditionalClasses\"\n :style=\"customPaddingStyles.content\"\n >\n <bento-typography\n v-if=\"hasSlot('content') || (hasSlot('content-col-1') && hasSlot('content-col-2'))\"\n el=\"div\"\n >\n <grid-layout\n v-if=\"hasColumnLayout\"\n :column-width=\"computedColumnWidth\"\n :container-type=\"GridLayoutContainerType.NORMAL\"\n no-gap\n class=\"b-modal-page__grid\"\n >\n <template #col-1><slot name=\"content-col-1\"></slot></template>\n <template #col-2><slot name=\"content-col-2\"></slot></template>\n </grid-layout>\n <slot v-else name=\"content\" />\n </bento-typography>\n </div>\n </template>\n <template v-if=\"hasSlot('actions')\" #footer>\n <div class=\"b-modal-page__actions-container\" :style=\"customPaddingStyles.actions\">\n <div aria-label=\"modal actions\" class=\"b-modal-page__actions\">\n <slot name=\"actions\" />\n </div>\n </div>\n </template>\n <template v-else-if=\"actions && actions.length > 0\" #footer>\n <div class=\"b-modal-page__actions-container\" :style=\"customPaddingStyles.actions\">\n <footer-actions\n :actions=\"actions\"\n :actions-label=\"actionsLabel\"\n :destructive-actions=\"destructiveActions\"\n />\n </div>\n </template>\n </dialog-page>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, defineComponent, inject, nextTick, onUnmounted, ref, useSlots, watch } from 'vue';\n import { BentoModalColumnLayoutVariant, BentoModalSize } from '@/components/modal/modal.types';\n import { type BentoModalConfigData } from '@/components/modal/modal.internal.types';\n import { BentoTypography } from '@/components/typography';\n import { GridLayout, GridLayoutContainerType } from '@/internal';\n import { useHasSlot } from '@/composables';\n\n import { FooterActions } from '@/components/internal/footer-actions';\n\n import DialogPage from '@/internal/dialog-page/dialog-page.vue';\n import { MODAL_CONFIG_INJECTION_KEY } from '../../modal.keys';\n import { observeSizeOfElement } from '@/utils/ts/resize';\n import type { BentoModalPageProps } from './modal-page.types';\n\n const CLOSE_BUTTON_ICON_WIDTH = 26;\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n const page = ref<InstanceType<typeof DialogPage>>(null);\n\n const props = defineProps({\n actions: { default: null },\n actionsLabel: { default: null },\n columnsSize: { default: BentoModalColumnLayoutVariant.SMALLER },\n customPadding: { default: null },\n destructiveActions: { type: Boolean, default: false },\n withColumnLayout: { type: Boolean, default: false },\n pageId: { default: undefined },\n previousPage: { default: undefined }\n});\n\n const modalPageConditionalClasses = computed(() => ({\n 'b-modal-page--custom-padding': props.customPadding,\n }));\n\n const modalContentConditionalClasses = computed(() => ({\n 'b-modal-page__content--with-header': hasSlot('default'),\n 'b-modal-page__content--with-actions': hasSlot('actions') || props.actions?.length,\n }));\n\n // Setting custom padding styles\n const customPaddingStyles = computed(() => {\n if (!props.customPadding) {\n return {};\n }\n\n const xPadding = {\n paddingLeft: props.customPadding,\n paddingRight: props.customPadding,\n };\n\n const content = { ...xPadding, paddingTop: undefined, paddingBottom: undefined };\n\n if (!hasSlot('default')) {\n content.paddingTop = props.customPadding;\n }\n\n if (!hasSlot('actions')) {\n content.paddingBottom = props.customPadding;\n }\n\n return {\n header: {\n ...xPadding,\n paddingTop: props.customPadding,\n paddingRight: `${parseInt(props.customPadding, 10) + CLOSE_BUTTON_ICON_WIDTH}px`,\n flex: 1,\n },\n content,\n actions: { ...xPadding, paddingBottom: props.customPadding },\n backButton: { top: props.customPadding, paddingLeft: props.customPadding },\n };\n });\n\n // Column layout styles\n const hasColumnLayout = computed(() => props.withColumnLayout && size.value === BentoModalSize.LARGE);\n\n const computedColumnWidth = computed(() => {\n if (props.columnsSize === BentoModalColumnLayoutVariant.SMALLER) {\n return [\n { small: 4, medium: 4, large: 4 },\n { small: 8, medium: 8, large: 8 },\n ];\n }\n if (props.columnsSize === BentoModalColumnLayoutVariant.BIGGER) {\n return [\n { small: 8, medium: 8, large: 8 },\n { small: 4, medium: 4, large: 4 },\n ];\n }\n return [\n { small: 6, medium: 6, large: 6 },\n { small: 6, medium: 6, large: 6 },\n ];\n });\n\n // Register page to parent component and inject data from parent component\n const { activePage, height, isAnimationActive, pageCustomPadding, showCloseButton, size } =\n inject<BentoModalConfigData>(MODAL_CONFIG_INJECTION_KEY);\n\n const isCurrentPage = computed(() => activePage.value === props.pageId || !activePage.value);\n\n // Animation\n // Set resize observer on mount of update the height of the dialog on resize\n let pageElementObserver: ResizeObserver | null = null;\n\n // Watching activePage changes to set the height of the page and set isAnimationActive\n watch(\n () => activePage.value,\n async (value, oldValue) => {\n if (isCurrentPage.value) {\n await nextTick();\n height.value = `${page.value?.$el?.clientHeight}px`;\n pageCustomPadding.value = props.customPadding;\n // only set isAnimationActive to true if its going from two different pages and not from null to the first page\n isAnimationActive.value = oldValue !== undefined;\n\n pageElementObserver = observeSizeOfElement(page.value, () => {\n const pageHeight = `${page.value?.$el?.clientHeight}px`;\n if (pageHeight && pageHeight !== height.value) {\n height.value = pageHeight;\n }\n });\n }\n },\n { immediate: true }\n );\n\n // Disconnect observer on unmounting the page\n onUnmounted(() => {\n pageElementObserver?.disconnect();\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * ModalPage is used to render different pages of the Modal component\n *\n * @example\n * import { BentoModal, BentoModalPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoModal, BentoModalPage },\n * template: `\n * <bento-modal active-page='page1' :is-open='true'>\n * <bento-modal-page\n * pageId='page1'\n * actions-label='Move to next page'\n * :actions=\"[\n * {\n * title: 'Next page',\n * event: () => {\n * activePage.value = 'page2';\n * },\n * }]\">\n * Page 1\n * <template #content>\n * Page 1 content\n * </template>\n * </bento-modal-page>\n * <bento-modal-page\n * pageId='page2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Page 2\n * <template #content>\n * Page 2 content\n * </template>\n * </bento-modal-page>\n * </bento-modal>\n * `\n * }\n */\n export default defineComponent({});\n</script>\n\n<style lang=\"scss\" scoped src=\"./modal-page.scss\" />\n","<template>\n <div class=\"b-modal-base\">\n <dialog\n ref=\"modal\"\n :role=\"modalRole\"\n :aria-label=\"computedAriaLabel\"\n :style=\"{ height: height }\"\n class=\"b-modal-base__container\"\n :class=\"modalConditionalClasses\"\n :open=\"initiallyOpen\"\n @animationend=\"closeModalAfterAnimation\"\n @keydown.esc=\"internalModalActionClose\"\n >\n <bento-focus-trap\n v-if=\"isOpen || initiallyOpen\"\n :id=\"modalId\"\n v-bento-click-outside-directive=\"closeModalOnClickOutside\"\n >\n <bento-button\n v-if=\"showCloseButton\"\n class=\"b-modal-base__close-button\"\n variant=\"tertiary\"\n type=\"button\"\n :style=\"customPaddingStyles\"\n @click=\"internalModalActionClose\"\n >\n <cross-icon :svg-title=\"t('close')\" />\n </bento-button>\n <template v-if=\"props.activePage\">\n <slot />\n </template>\n <bento-modal-page\n v-else\n :with-column-layout=\"withColumnLayout\"\n :size=\"size\"\n :custom-padding=\"customPadding\"\n :columns-size=\"columnsSize\"\n >\n <template v-if=\"hasSlot('default')\" #default>\n <slot></slot>\n </template>\n <template v-if=\"hasSlot('content-col-1')\" #content-col-1\n ><slot name=\"content-col-1\"></slot\n ></template>\n <template v-if=\"hasSlot('content-col-2')\" #content-col-2\n ><slot name=\"content-col-2\"></slot\n ></template>\n <template v-if=\"hasSlot('content')\" #content><slot name=\"content\"></slot></template>\n <template v-if=\"hasSlot('actions')\" #actions><slot name=\"actions\"></slot></template>\n </bento-modal-page>\n </bento-focus-trap>\n </dialog>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import {\n computed,\n defineComponent,\n onMounted,\n type PropType,\n provide,\n ref,\n toRefs,\n useAttrs,\n useSlots,\n watch,\n } from 'vue';\n import { BentoModalColumnLayoutVariant, BentoModalRole, BentoModalSize } from '@/components/modal/modal.types';\n import { type BentoModalConfigData } from '@/components/modal/modal.internal.types';\n import { BentoButton, type BentoButtonActionsList } from '@/components/button';\n import { BentoFocusTrap } from '@/components/focus-trap';\n import { useHasSlot } from '@/composables';\n import { useI18n } from '@/utils/ts/i18n';\n import { MODAL_DIALOG_ID_INJECTION_KEY } from '@/components/modal/components/base-modal/base-modal.keys';\n import { generateUid } from '@/core/utils/ts';\n import { BentoClickOutsideDirective as vBentoClickOutsideDirective } from '@/directives/click-outside';\n import messages from './messages.json';\n\n import { BentoModalPage } from '@/components/modal/components/modal-page';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n\n import { MODAL_CONFIG_INJECTION_KEY } from '../../modal.keys';\n import {\n BentoDialogPageAnimation,\n type BentoDialogPageConfigData,\n type BentoDialogPageRegisterPage,\n DIALOG_PAGE_CONFIG_INJECTION_KEY,\n DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY,\n } from '@/internal';\n\n type MessageSchema = (typeof messages)['en-US'];\n const LOADING_BTN_CLOSE_AFTER_SUCCESS_DELAY_TIME = 500;\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const slots = useSlots();\n const attrs = useAttrs();\n const hasSlot = useHasSlot(slots);\n const modal = ref<HTMLDialogElement>(null);\n const isClosing = ref(false);\n const modalId = generateUid('modal');\n\n const emit = defineEmits([\"update:active-page\", \"close-modal\"]);\n\n const props = defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * First element in the list will be rendered as \"primary\".\n * All elements after the first will be rendered as \"secondary\".\n * But you may change the color of 1-st action to red with 'critial' key\n * Not more than 3 action buttons can be provided\n * Or 2 action buttons and 1 Label for them\n *\n * Each object in the list should have a `title`, an `event` and\n * (optional) a Vue `icon` from the library `@adyen/ui-assets-icons-16`.\n *\n * `title`: Button's text.\n *\n * `event`: Event triggered when clicking the Button.\n *\n * `icon`: Vue Icon from the library `@adyen/ui-assets-icons-16`.\n *\n * ```\n * [{\n * title: 'Primary',2\n * event: () => { ... },\n * icon: FourPeopleIcon\n * }, {\n * title: 'Secondary',\n * event: () => { ... }\n * }]\n * ```\n */\n actions: {\n type: Array as PropType<BentoButtonActionsList>,\n default: null,\n },\n\n /**\n * The id of the current active page\n * Should be the same id as the BentoModalPage to be displayed\n */\n activePage: {\n type: String,\n default: null,\n },\n\n /**\n * If a column layout is provided, it renders the respective left column width variant. This can be smaller than the second column, the same size as the second column or bigger than the second column.\n */\n columnsSize: {\n type: String as PropType<BentoModalColumnLayoutVariant>,\n default: BentoModalColumnLayoutVariant.SMALLER,\n },\n\n /**\n * If provided, manages the padding of the whole modal container\n */\n customPadding: { type: String, default: null },\n\n /**\n * If passed - sets first button color to red\n */\n destructiveActions: { type: Boolean, default: false },\n\n /**\n * Hides a cross icon on the right side of the title\n */\n hideCloseButton: { type: Boolean, required: true },\n\n /**\n * Sets the open attribute on the dialog element, use isOpen instead to toggle modal visbility.\n */\n initiallyOpen: { type: Boolean, default: false },\n\n /**\n * If set to true, it allows the modal to be closed by clicking outside of it\n */\n isDismissible: { type: Boolean, required: true },\n\n /**\n * Controls the modal's state from the outside. Set it to true to open the modal\n */\n isOpen: { type: Boolean, required: true },\n\n /**\n * Defines whether the modal will be an alert modal\n */\n modalRole: { type: String, default: BentoModalRole.DIALOG },\n\n /**\n * Sets the width of the modal\n */\n size: {\n type: String as PropType<BentoModalSize | `${BentoModalSize}`>,\n default: BentoModalSize.SMALL,\n },\n\n /**\n * If provided, renders the modal's content in a two-column layout an wth dividers separating its content\n */\n withColumnLayout: { type: Boolean, default: false },\n });\n\n const showCloseButton = computed(() => props.isDismissible && !props.hideCloseButton);\n\n const pageCustomPadding = ref(props.customPadding);\n\n const customPaddingStyles = computed(() => {\n if (!pageCustomPadding.value) {\n return {};\n }\n\n return { top: pageCustomPadding.value, right: pageCustomPadding.value };\n });\n\n const computedAriaLabel = computed(() => (attrs['aria-label'] as string) ?? (t('ariaLabelFallback') as string));\n const hasColumnLayout = computed(() => props.withColumnLayout && props.size === BentoModalSize.LARGE);\n\n const openModal = (): void => {\n modal.value.showModal();\n };\n\n const emitCloseEvent = (): void => {\n emit('close-modal');\n };\n\n // Handle closing and closing animation for dialog element\n const closeModalAfterAnimation = () => {\n if (isClosing.value && modal.value) {\n modal.value.close();\n if (previousPages.value[0]) {\n emit('update:active-page', previousPages.value[0]);\n }\n previousPages.value = [];\n isClosing.value = false;\n emitCloseEvent();\n }\n };\n\n const startCloseModalAnimation = () => {\n if (!modal.value.open) {\n return;\n }\n isClosing.value = true;\n };\n\n /**\n * If the user has pressed escape, clicked outside or clicked the close icon.\n * Needs to be called from outside, following the \"dialog.close()\" pattern,\n * when the closing event is triggered outside of the \"base-modal\"\n * component (e.g. from a closing action).\n */\n const internalModalActionClose = (event?: Event) => {\n if (event) {\n event.preventDefault();\n }\n if (!props.isDismissible && props.modalRole === BentoModalRole.DIALOG) {\n return;\n }\n startCloseModalAnimation();\n };\n\n const closeModalOnClickOutside = () => {\n if (props.isDismissible) {\n internalModalActionClose();\n }\n };\n\n const modalConditionalClasses = computed(() => ({\n [`b-modal-base__container--${props.size}`]: props.size,\n 'b-modal-base__container--hide': isClosing.value,\n 'b-modal-base__container--column-layout': hasColumnLayout.value,\n 'b-modal-base__container--animation': isAnimationActive.value,\n }));\n\n watch(\n () => [props.isOpen, modal.value],\n ([newIsOpen, newModalValue], [, oldModalValue]): void => {\n if (!newModalValue) {\n return;\n }\n\n const isFirstMutation = !oldModalValue;\n if (newIsOpen) {\n openModal();\n // add the first page to the array when the modal opens\n if (!previousPages.value.length) {\n previousPages.value.push(activePage.value);\n }\n } else if (!isFirstMutation) {\n startCloseModalAnimation();\n }\n }\n );\n\n // If the first button is a loading button then close the modal have 0.5 seconds\n // if the state is changed to 'success'.\n watch(\n () => props.actions,\n () => {\n if (props.actions?.[0]?.state === 'success') {\n setTimeout(startCloseModalAnimation, LOADING_BTN_CLOSE_AFTER_SUCCESS_DELAY_TIME);\n }\n },\n { deep: true }\n );\n\n onMounted(() => {\n if (props.isOpen && modal.value) {\n openModal();\n }\n });\n\n /**\n * Expose methods through its 'ref'\n */\n defineExpose({\n internalModalActionClose,\n });\n\n // Let's Children components know they are inside a Modal (dialog element)\n provide(MODAL_DIALOG_ID_INJECTION_KEY, modalId);\n\n // Modal pagination\n const { activePage, isOpen, size } = toRefs(props);\n const animation = ref(BentoDialogPageAnimation.TRANSITION_LEVEL_DEEPER);\n\n const pages = ref<Array<string>>([]);\n const previousPages = ref([]);\n\n const updatePage = page => emit('update:active-page', page);\n\n // unregister page if removed / destroyed\n const unregisterPage = (pageIdToRemove: string) => () => {\n pages.value = pages.value?.filter(pageId => pageId !== pageIdToRemove);\n };\n\n // Provide data and function to register page to subcomponent\n const registerPage: BentoDialogPageRegisterPage = pageId => {\n if (pageId) {\n pages.value.push(pageId);\n }\n\n return { unregisterPage: unregisterPage(pageId) };\n };\n\n const height = ref('');\n const isAnimationActive = ref(false);\n\n provide<BentoModalConfigData>(MODAL_CONFIG_INJECTION_KEY, {\n activePage,\n height,\n isAnimationActive,\n pageCustomPadding,\n showCloseButton,\n size,\n });\n\n provide<BentoDialogPageConfigData>(DIALOG_PAGE_CONFIG_INJECTION_KEY, {\n activePage,\n animation,\n isOpen,\n pages,\n previousPages,\n updatePage,\n });\n\n provide(DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY, registerPage);\n</script>\n\n<script lang=\"ts\">\n /**\n * Dialog container. It creates a dialog HTML element for the modal to use.\n *\n * @example\n * import BaseModal from './components/base-modal/base-modal.vue';\n *\n * export default {\n * components: { BaseModal },\n * template: `\n * <base-modal\n * :hide-close-button=\"true\"\n * :is-dismissible=\"false\"\n * :is-open=\"isOpen\"\n * @close-modal=\"isOpen = false\"\n * >\n * <template #content-col-1>\n * // Content on the left side column\n * </template>\n *\n * <template #content-col-2>\n * // Content on the right side column\n * </template>\n *\n * <template v-if=\"actions\" #actions>\n * <footer-actions :actions=\"actions\" />\n * </template>\n * </base-modal>\n * `,\n * setup() {\n * const isOpen = ref(true)\n * const footerActions = [{\n * title: 'Primary action',\n * event: () => { ... }\n * }]\n * }\n * }\n */\n export default defineComponent({\n i18n: { messages },\n name: 'base-modal',\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./base-modal.scss\" />\n"],"names":["BentoModalVariant","BentoModalVariant2","BentoModalVariantMapping","BentoModalVariantMapping2","BentoModalSize","BentoModalSize2","BentoModalColumnLayoutVariant","BentoModalColumnLayoutVariant2","BentoModalRole","BentoModalRole2","BentoModalDialogType","BentoModalDialogType2","BentoModalEvent","BentoModalEvent2","MODAL_CONFIG_INJECTION_KEY","__default__$1","defineComponent","CLOSE_BUTTON_ICON_WIDTH","slots","useSlots","hasSlot","useHasSlot","page","ref","modalPageConditionalClasses","computed","props","modalContentConditionalClasses","customPaddingStyles","xPadding","content","hasColumnLayout","size","computedColumnWidth","activePage","height","isAnimationActive","pageCustomPadding","showCloseButton","inject","isCurrentPage","pageElementObserver","watch","value","oldValue","nextTick","observeSizeOfElement","pageHeight","onUnmounted","__default__","messages","LOADING_BTN_CLOSE_AFTER_SUCCESS_DELAY_TIME","t","useI18n","attrs","useAttrs","modal","isClosing","modalId","generateUid","computedAriaLabel","openModal","emitCloseEvent","emit","closeModalAfterAnimation","previousPages","startCloseModalAnimation","internalModalActionClose","event","closeModalOnClickOutside","modalConditionalClasses","newIsOpen","newModalValue","oldModalValue","onMounted","expose","provide","MODAL_DIALOG_ID_INJECTION_KEY","isOpen","toRefs","animation","BentoDialogPageAnimation","pages","updatePage","unregisterPage","pageIdToRemove","pageId","registerPage","DIALOG_PAGE_CONFIG_INJECTION_KEY","DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY"],"mappings":"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"}