@adyen/bento-vue2 1.32.0 → 1.33.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 (286) hide show
  1. package/dist/@types/index.d.ts +21 -18
  2. package/dist/accordion.js +1 -1
  3. package/dist/action-bar.js +1 -1
  4. package/dist/alert.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/alert.css +1 -1
  8. package/dist/assets/avatar.css +1 -1
  9. package/dist/assets/base-modal.css +1 -1
  10. package/dist/assets/button.css +1 -1
  11. package/dist/assets/calendar.css +1 -1
  12. package/dist/assets/card.css +1 -1
  13. package/dist/assets/checkbox-input.css +1 -1
  14. package/dist/assets/controls-group.css +1 -1
  15. package/dist/assets/dashboard-section.css +1 -1
  16. package/dist/assets/dashed-underline.css +1 -1
  17. package/dist/assets/data-grid-template.css +1 -1
  18. package/dist/assets/data-grid.css +1 -1
  19. package/dist/assets/date-range-picker.css +1 -1
  20. package/dist/assets/dialog-page.css +1 -1
  21. package/dist/assets/dropdown-default-textbox.css +1 -1
  22. package/dist/assets/dropdown-tag.css +1 -1
  23. package/dist/assets/dropdown.css +1 -1
  24. package/dist/assets/filter-bar.css +1 -1
  25. package/dist/assets/input-field.css +1 -1
  26. package/dist/assets/inspector.css +1 -1
  27. package/dist/assets/link.css +1 -1
  28. package/dist/assets/loading-button.css +1 -1
  29. package/dist/assets/menu.css +1 -1
  30. package/dist/assets/modal-fullscreen.css +1 -1
  31. package/dist/assets/popover.css +1 -1
  32. package/dist/assets/popper-container.css +1 -1
  33. package/dist/assets/radio-group.css +1 -1
  34. package/dist/assets/radio-input.css +1 -1
  35. package/dist/assets/search-bar.css +1 -1
  36. package/dist/assets/secondary-nav.css +1 -1
  37. package/dist/assets/segmented-control.css +1 -1
  38. package/dist/assets/selection-card-group.css +1 -1
  39. package/dist/assets/sidepanel.css +1 -1
  40. package/dist/assets/status.css +1 -1
  41. package/dist/assets/step.css +1 -1
  42. package/dist/assets/structured-list-item.css +1 -1
  43. package/dist/assets/textarea.css +1 -1
  44. package/dist/assets/toast.css +1 -1
  45. package/dist/assets/toggle-button.css +1 -1
  46. package/dist/assets/tutorial.css +1 -1
  47. package/dist/assets/typography.css +1 -1
  48. package/dist/assets/use-cached-selected-values.css +1 -1
  49. package/dist/avatar.js +1 -1
  50. package/dist/button.js +4 -4
  51. package/dist/card.js +1 -1
  52. package/dist/checkbox.js +3 -3
  53. package/dist/chunks/{accordion-item.CNYpvxwN.js → accordion-item.IMlV_Vik.js} +3 -3
  54. package/dist/chunks/{accordion-item.CNYpvxwN.js.map → accordion-item.IMlV_Vik.js.map} +1 -1
  55. package/dist/chunks/{action-bar.Ds_ofJs6.js → action-bar.CxsPPZZ_.js} +17 -17
  56. package/dist/chunks/action-bar.CxsPPZZ_.js.map +1 -0
  57. package/dist/chunks/{alert.Ba2hSVeM.js → alert.DtT7BRdr.js} +4 -4
  58. package/dist/chunks/{alert.Ba2hSVeM.js.map → alert.DtT7BRdr.js.map} +1 -1
  59. package/dist/chunks/{avatar.DohItrb9.js → avatar.0ffdL8i0.js} +8 -8
  60. package/dist/chunks/avatar.0ffdL8i0.js.map +1 -0
  61. package/dist/chunks/{base-button.-qw8sZSY.js → base-button.qWj0m9-v.js} +2 -2
  62. package/dist/chunks/{base-button.-qw8sZSY.js.map → base-button.qWj0m9-v.js.map} +1 -1
  63. package/dist/chunks/{base-modal.B17Ib1QQ.js → base-modal.8sjjRWsL.js} +35 -35
  64. package/dist/chunks/base-modal.8sjjRWsL.js.map +1 -0
  65. package/dist/chunks/{button-actions-with-menu.K8p3AG8r.js → button-actions-with-menu.DKjOf4Ox.js} +4 -4
  66. package/dist/chunks/{button-actions-with-menu.K8p3AG8r.js.map → button-actions-with-menu.DKjOf4Ox.js.map} +1 -1
  67. package/dist/chunks/{button-actions.IJs0hN8c.js → button-actions.BQHr68sA.js} +3 -3
  68. package/dist/chunks/{button-actions.IJs0hN8c.js.map → button-actions.BQHr68sA.js.map} +1 -1
  69. package/dist/chunks/{button.qOf7CXY2.js → button.79klAcOK.js} +13 -13
  70. package/dist/chunks/button.79klAcOK.js.map +1 -0
  71. package/dist/chunks/{calendar.etLGotqH.js → calendar.CaTMWZUM.js} +124 -124
  72. package/dist/chunks/calendar.CaTMWZUM.js.map +1 -0
  73. package/dist/chunks/{card.-BYuiE_X.js → card.ignL7-CH.js} +4 -4
  74. package/dist/chunks/card.ignL7-CH.js.map +1 -0
  75. package/dist/chunks/{checkbox-group.Bj9gURHB.js → checkbox-group.2mm5bv7a.js} +5 -5
  76. package/dist/chunks/{checkbox-group.Bj9gURHB.js.map → checkbox-group.2mm5bv7a.js.map} +1 -1
  77. package/dist/chunks/{checkbox-input.DwDwI2BD.js → checkbox-input.BH7MGdMj.js} +9 -6
  78. package/dist/chunks/checkbox-input.BH7MGdMj.js.map +1 -0
  79. package/dist/chunks/{checkbox.CKQZXIR3.js → checkbox.BKzfGbb1.js} +5 -5
  80. package/dist/chunks/{checkbox.CKQZXIR3.js.map → checkbox.BKzfGbb1.js.map} +1 -1
  81. package/dist/chunks/{code-snippet.Dr7HvCcg.js → code-snippet.Bh-9Sz0W.js} +7 -7
  82. package/dist/chunks/{code-snippet.Dr7HvCcg.js.map → code-snippet.Bh-9Sz0W.js.map} +1 -1
  83. package/dist/chunks/{controls-group.WoEXCpkM.js → controls-group.kIQ5t39B.js} +4 -4
  84. package/dist/chunks/{controls-group.WoEXCpkM.js.map → controls-group.kIQ5t39B.js.map} +1 -1
  85. package/dist/chunks/{copy.CIuoE2VU.js → copy.B1DYKX_q.js} +4 -4
  86. package/dist/chunks/{copy.CIuoE2VU.js.map → copy.B1DYKX_q.js.map} +1 -1
  87. package/dist/chunks/{country.DeYdzMXh.js → country.DWQ85WGG.js} +2 -2
  88. package/dist/chunks/{country.DeYdzMXh.js.map → country.DWQ85WGG.js.map} +1 -1
  89. package/dist/chunks/{currency.Cfq_Yw2V.js → currency.D_2CN1OJ.js} +2 -2
  90. package/dist/chunks/{currency.Cfq_Yw2V.js.map → currency.D_2CN1OJ.js.map} +1 -1
  91. package/dist/chunks/{dashboard-section.CKy3tW-3.js → dashboard-section.CS63czQW.js} +5 -5
  92. package/dist/chunks/dashboard-section.CS63czQW.js.map +1 -0
  93. package/dist/chunks/{dashed-underline.OyLCDT1U.js → dashed-underline.XuUFwxOe.js} +11 -11
  94. package/dist/chunks/dashed-underline.XuUFwxOe.js.map +1 -0
  95. package/dist/chunks/{data-grid-template.CxaInpI8.js → data-grid-template.DEDwDJCy.js} +9 -9
  96. package/dist/chunks/data-grid-template.DEDwDJCy.js.map +1 -0
  97. package/dist/chunks/{data-grid.Dsv60eRz.js → data-grid.caE5wVpr.js} +717 -716
  98. package/dist/chunks/data-grid.caE5wVpr.js.map +1 -0
  99. package/dist/chunks/{date-picker.CZ34YMMu.js → date-picker.D9hFJD_h.js} +7 -7
  100. package/dist/chunks/{date-picker.CZ34YMMu.js.map → date-picker.D9hFJD_h.js.map} +1 -1
  101. package/dist/chunks/{date-range-picker.C__cQBs3.js → date-range-picker.BlTFEbr-.js} +339 -320
  102. package/dist/chunks/date-range-picker.BlTFEbr-.js.map +1 -0
  103. package/dist/chunks/{date.DQaxR7TF.js → date.DaiTzNEZ.js} +2 -2
  104. package/dist/chunks/{date.DQaxR7TF.js.map → date.DaiTzNEZ.js.map} +1 -1
  105. package/dist/chunks/{dialog-page.Cc-XASGB.js → dialog-page.bmDDYmn9.js} +3 -3
  106. package/dist/chunks/dialog-page.bmDDYmn9.js.map +1 -0
  107. package/dist/chunks/{dropdown-default-textbox.BM9qsdzQ.js → dropdown-default-textbox.kQ3pHsZe.js} +5 -4
  108. package/dist/chunks/dropdown-default-textbox.kQ3pHsZe.js.map +1 -0
  109. package/dist/chunks/{dropdown-tag.DEqYdqVG.js → dropdown-tag.BBEI_7RS.js} +19 -19
  110. package/dist/chunks/dropdown-tag.BBEI_7RS.js.map +1 -0
  111. package/dist/chunks/{dropdown.Bn6SRkU5.js → dropdown.D6tsk4ko.js} +11 -10
  112. package/dist/chunks/dropdown.D6tsk4ko.js.map +1 -0
  113. package/dist/chunks/{empty-state.CWy3y5Ly.js → empty-state.C2ba_wDp.js} +3 -3
  114. package/dist/chunks/{empty-state.CWy3y5Ly.js.map → empty-state.C2ba_wDp.js.map} +1 -1
  115. package/dist/chunks/{error-message.epR1WJH2.js → error-message.BEtdKrpc.js} +3 -3
  116. package/dist/chunks/{error-message.epR1WJH2.js.map → error-message.BEtdKrpc.js.map} +1 -1
  117. package/dist/chunks/es6.BvpG4Oi6.js.map +1 -1
  118. package/dist/chunks/{filter-bar.Dcsv7a4q.js → filter-bar.Tl9rgAKU.js} +793 -823
  119. package/dist/chunks/filter-bar.Tl9rgAKU.js.map +1 -0
  120. package/dist/chunks/{fixed-scroller.wvGW5A2g.js → fixed-scroller.CQWDnydO.js} +2 -2
  121. package/dist/chunks/fixed-scroller.CQWDnydO.js.map +1 -0
  122. package/dist/chunks/{footer-actions.B6Q5ybfw.js → footer-actions.CwHY2-Ap.js} +4 -4
  123. package/dist/chunks/{footer-actions.B6Q5ybfw.js.map → footer-actions.CwHY2-Ap.js.map} +1 -1
  124. package/dist/chunks/{form-layout-title.ChRqPBDL.js → form-layout-title.CRsR3o2x.js} +3 -3
  125. package/dist/chunks/{form-layout-title.ChRqPBDL.js.map → form-layout-title.CRsR3o2x.js.map} +1 -1
  126. package/dist/chunks/{header.jOE8ctvn.js → header.CkUxb-Pw.js} +5 -5
  127. package/dist/chunks/{header.jOE8ctvn.js.map → header.CkUxb-Pw.js.map} +1 -1
  128. package/dist/chunks/{info-icon.DQI7sjBY.js → info-icon.DNn4oZsB.js} +3 -3
  129. package/dist/chunks/{info-icon.DQI7sjBY.js.map → info-icon.DNn4oZsB.js.map} +1 -1
  130. package/dist/chunks/{input-field.mEo-bCtk.js → input-field.7PrsNCUx.js} +5 -5
  131. package/dist/chunks/{input-field.mEo-bCtk.js.map → input-field.7PrsNCUx.js.map} +1 -1
  132. package/dist/chunks/{inspector.types.l7r-FN49.js → inspector.types.D6kCCKNk.js} +4 -4
  133. package/dist/chunks/inspector.types.D6kCCKNk.js.map +1 -0
  134. package/dist/chunks/{link.CjFBXE3D.js → link.Xce4kDGy.js} +3 -3
  135. package/dist/chunks/{link.CjFBXE3D.js.map → link.Xce4kDGy.js.map} +1 -1
  136. package/dist/chunks/{listbox-option-tag.BXz3dHfF.js → listbox-option-tag.RVvWMKvz.js} +3 -3
  137. package/dist/chunks/{listbox-option-tag.BXz3dHfF.js.map → listbox-option-tag.RVvWMKvz.js.map} +1 -1
  138. package/dist/chunks/{loading-button.Ba8So0d6.js → loading-button.DDPZYO6r.js} +3 -3
  139. package/dist/chunks/{loading-button.Ba8So0d6.js.map → loading-button.DDPZYO6r.js.map} +1 -1
  140. package/dist/chunks/{menu.e-PrV4Wl.js → menu.CoT0jBpw.js} +5 -5
  141. package/dist/chunks/{menu.e-PrV4Wl.js.map → menu.CoT0jBpw.js.map} +1 -1
  142. package/dist/chunks/{modal-fullscreen.PFFfWzPD.js → modal-fullscreen.BQKE0bm0.js} +6 -6
  143. package/dist/chunks/{modal-fullscreen.PFFfWzPD.js.map → modal-fullscreen.BQKE0bm0.js.map} +1 -1
  144. package/dist/chunks/{modal.DPrBUWDe.js → modal.BnlC8y2b.js} +6 -6
  145. package/dist/chunks/modal.BnlC8y2b.js.map +1 -0
  146. package/dist/chunks/on-click-outside.MUWbmGDn.js.map +1 -1
  147. package/dist/chunks/{pagination.CT08YpqC.js → pagination.Cqm8aS25.js} +4 -4
  148. package/dist/chunks/{pagination.CT08YpqC.js.map → pagination.Cqm8aS25.js.map} +1 -1
  149. package/dist/chunks/{payment-method.BnLkBqVQ.js → payment-method.CyQwoqEe.js} +2 -2
  150. package/dist/chunks/{payment-method.BnLkBqVQ.js.map → payment-method.CyQwoqEe.js.map} +1 -1
  151. package/dist/chunks/{popover.Du6UI6Yh.js → popover.BAZk1sm7.js} +6 -6
  152. package/dist/chunks/{popover.Du6UI6Yh.js.map → popover.BAZk1sm7.js.map} +1 -1
  153. package/dist/chunks/{popper-container.By1AW5Od.js → popper-container.CnWphJTN.js} +2 -2
  154. package/dist/chunks/{popper-container.By1AW5Od.js.map → popper-container.CnWphJTN.js.map} +1 -1
  155. package/dist/chunks/{radio-group.D650KrHa.js → radio-group.Dt5aLsJR.js} +8 -8
  156. package/dist/chunks/radio-group.Dt5aLsJR.js.map +1 -0
  157. package/dist/chunks/{radio-input.UWFngqop.js → radio-input.q980f8Uf.js} +2 -2
  158. package/dist/chunks/{radio-input.UWFngqop.js.map → radio-input.q980f8Uf.js.map} +1 -1
  159. package/dist/chunks/{search-bar.hxEJk-w0.js → search-bar.56yYCp8_.js} +16 -16
  160. package/dist/chunks/search-bar.56yYCp8_.js.map +1 -0
  161. package/dist/chunks/{secondary-nav.Bsi7Dj0s.js → secondary-nav.CCCscrYe.js} +6 -6
  162. package/dist/chunks/secondary-nav.CCCscrYe.js.map +1 -0
  163. package/dist/chunks/{segmented-control.BeXMVbce.js → segmented-control.BZm0u0wJ.js} +13 -13
  164. package/dist/chunks/segmented-control.BZm0u0wJ.js.map +1 -0
  165. package/dist/chunks/selection-card-group.BX5SJQJl.js +255 -0
  166. package/dist/chunks/selection-card-group.BX5SJQJl.js.map +1 -0
  167. package/dist/chunks/{sidepanel.DRP_jFVq.js → sidepanel.BRe8Xgnq.js} +7 -6
  168. package/dist/chunks/sidepanel.BRe8Xgnq.js.map +1 -0
  169. package/dist/chunks/{status.types.CcGZuqg5.js → status.types.dPBUkNia.js} +10 -10
  170. package/dist/chunks/status.types.dPBUkNia.js.map +1 -0
  171. package/dist/chunks/{step.RkChji1p.js → step.CjJtlBk6.js} +5 -5
  172. package/dist/chunks/step.CjJtlBk6.js.map +1 -0
  173. package/dist/chunks/{structured-list-item.BfEARGrz.js → structured-list-item.DpLscUX4.js} +14 -14
  174. package/dist/chunks/structured-list-item.DpLscUX4.js.map +1 -0
  175. package/dist/chunks/{summary-grid-item-custom.Cjv109f8.js → summary-grid-item-custom.B7Re6OCf.js} +5 -5
  176. package/dist/chunks/{summary-grid-item-custom.Cjv109f8.js.map → summary-grid-item-custom.B7Re6OCf.js.map} +1 -1
  177. package/dist/chunks/{tabs.BLCcrVbI.js → tabs.D4ORafqH.js} +3 -3
  178. package/dist/chunks/{tabs.BLCcrVbI.js.map → tabs.D4ORafqH.js.map} +1 -1
  179. package/dist/chunks/{tag.4Vqj8tm4.js → tag.Bo_6RnVE.js} +3 -3
  180. package/dist/chunks/{tag.4Vqj8tm4.js.map → tag.Bo_6RnVE.js.map} +1 -1
  181. package/dist/chunks/{textarea.DM2Cwx14.js → textarea.C6mA9dbj.js} +14 -13
  182. package/dist/chunks/textarea.C6mA9dbj.js.map +1 -0
  183. package/dist/chunks/{timeline-item.B2c3eI3L.js → timeline-item.D_ha1hxw.js} +9 -9
  184. package/dist/chunks/{timeline-item.B2c3eI3L.js.map → timeline-item.D_ha1hxw.js.map} +1 -1
  185. package/dist/chunks/{toast.rrKNWeM6.js → toast.KVxSBsXC.js} +5 -5
  186. package/dist/chunks/toast.KVxSBsXC.js.map +1 -0
  187. package/dist/chunks/{toggle-button.CBuKACw5.js → toggle-button.bt3zBzdC.js} +3 -3
  188. package/dist/chunks/toggle-button.bt3zBzdC.js.map +1 -0
  189. package/dist/chunks/{toggle.DtrStAja.js → toggle.CLgGH4Jr.js} +2 -2
  190. package/dist/chunks/{toggle.DtrStAja.js.map → toggle.CLgGH4Jr.js.map} +1 -1
  191. package/dist/chunks/{tooltip.4f_qwm8o.js → tooltip.BN6fOXzi.js} +3 -3
  192. package/dist/chunks/{tooltip.4f_qwm8o.js.map → tooltip.BN6fOXzi.js.map} +1 -1
  193. package/dist/chunks/{tutorial.DUjlu3SH.js → tutorial.DzhfqdFU.js} +7 -7
  194. package/dist/chunks/tutorial.DzhfqdFU.js.map +1 -0
  195. package/dist/chunks/{typography.CdCYtxYj.js → typography.CqQaHXhq.js} +2 -2
  196. package/dist/chunks/typography.CqQaHXhq.js.map +1 -0
  197. package/dist/chunks/{use-bento-toast-controller.C66wCsav.js → use-bento-toast-controller.DLKySNHd.js} +2 -2
  198. package/dist/chunks/{use-bento-toast-controller.C66wCsav.js.map → use-bento-toast-controller.DLKySNHd.js.map} +1 -1
  199. package/dist/chunks/{use-cached-selected-values.DWQ8SMSi.js → use-cached-selected-values.1vo5LvgW.js} +83 -82
  200. package/dist/chunks/use-cached-selected-values.1vo5LvgW.js.map +1 -0
  201. package/dist/chunks/use-expandable-content-height.GkjjbmPy.js.map +1 -1
  202. package/dist/code-snippet.js +1 -1
  203. package/dist/country.js +1 -1
  204. package/dist/currency.js +1 -1
  205. package/dist/dashboard-template.js +1 -1
  206. package/dist/dashed-underline.js +1 -1
  207. package/dist/data-grid-template.js +1 -1
  208. package/dist/data-grid.js +1 -1
  209. package/dist/date-picker.js +2 -2
  210. package/dist/date-range-picker.js +2 -2
  211. package/dist/date.js +1 -1
  212. package/dist/dropdown.js +4 -4
  213. package/dist/empty-state.js +1 -1
  214. package/dist/filter-bar.js +1 -1
  215. package/dist/form-layout.js +1 -1
  216. package/dist/header.js +1 -1
  217. package/dist/index.js +68 -66
  218. package/dist/index.js.map +1 -1
  219. package/dist/info-icon.js +1 -1
  220. package/dist/input-field.js +1 -1
  221. package/dist/inspector.js +1 -1
  222. package/dist/internal.js +8 -8
  223. package/dist/link.js +1 -1
  224. package/dist/menu.js +1 -1
  225. package/dist/modal-fullscreen.js +1 -1
  226. package/dist/modal.js +2 -2
  227. package/dist/pagination.js +1 -1
  228. package/dist/payment-method.js +1 -1
  229. package/dist/popover.js +1 -1
  230. package/dist/popper-container.js +1 -1
  231. package/dist/radio-group.js +2 -2
  232. package/dist/search-bar.js +2 -2
  233. package/dist/secondary-nav.js +1 -1
  234. package/dist/segmented-control.js +1 -1
  235. package/dist/selection-card.js +1 -1
  236. package/dist/sidepanel.js +1 -1
  237. package/dist/status.js +1 -1
  238. package/dist/stepper.js +1 -1
  239. package/dist/structured-list.js +1 -1
  240. package/dist/summary-grid.js +1 -1
  241. package/dist/tabs.js +1 -1
  242. package/dist/tag.js +1 -1
  243. package/dist/textarea.js +1 -1
  244. package/dist/timeline.js +1 -1
  245. package/dist/toast.js +1 -1
  246. package/dist/toggle.js +1 -1
  247. package/dist/tutorial.js +1 -1
  248. package/dist/typography.js +1 -1
  249. package/dist/web-types.json +80 -165
  250. package/package.json +3 -2
  251. package/dist/chunks/action-bar.Ds_ofJs6.js.map +0 -1
  252. package/dist/chunks/avatar.DohItrb9.js.map +0 -1
  253. package/dist/chunks/base-modal.B17Ib1QQ.js.map +0 -1
  254. package/dist/chunks/button.qOf7CXY2.js.map +0 -1
  255. package/dist/chunks/calendar.etLGotqH.js.map +0 -1
  256. package/dist/chunks/card.-BYuiE_X.js.map +0 -1
  257. package/dist/chunks/checkbox-input.DwDwI2BD.js.map +0 -1
  258. package/dist/chunks/dashboard-section.CKy3tW-3.js.map +0 -1
  259. package/dist/chunks/dashed-underline.OyLCDT1U.js.map +0 -1
  260. package/dist/chunks/data-grid-template.CxaInpI8.js.map +0 -1
  261. package/dist/chunks/data-grid.Dsv60eRz.js.map +0 -1
  262. package/dist/chunks/date-range-picker.C__cQBs3.js.map +0 -1
  263. package/dist/chunks/dialog-page.Cc-XASGB.js.map +0 -1
  264. package/dist/chunks/dropdown-default-textbox.BM9qsdzQ.js.map +0 -1
  265. package/dist/chunks/dropdown-tag.DEqYdqVG.js.map +0 -1
  266. package/dist/chunks/dropdown.Bn6SRkU5.js.map +0 -1
  267. package/dist/chunks/filter-bar.Dcsv7a4q.js.map +0 -1
  268. package/dist/chunks/fixed-scroller.wvGW5A2g.js.map +0 -1
  269. package/dist/chunks/inspector.types.l7r-FN49.js.map +0 -1
  270. package/dist/chunks/modal.DPrBUWDe.js.map +0 -1
  271. package/dist/chunks/radio-group.D650KrHa.js.map +0 -1
  272. package/dist/chunks/search-bar.hxEJk-w0.js.map +0 -1
  273. package/dist/chunks/secondary-nav.Bsi7Dj0s.js.map +0 -1
  274. package/dist/chunks/segmented-control.BeXMVbce.js.map +0 -1
  275. package/dist/chunks/selection-card-group.D5DRYhrw.js +0 -247
  276. package/dist/chunks/selection-card-group.D5DRYhrw.js.map +0 -1
  277. package/dist/chunks/sidepanel.DRP_jFVq.js.map +0 -1
  278. package/dist/chunks/status.types.CcGZuqg5.js.map +0 -1
  279. package/dist/chunks/step.RkChji1p.js.map +0 -1
  280. package/dist/chunks/structured-list-item.BfEARGrz.js.map +0 -1
  281. package/dist/chunks/textarea.DM2Cwx14.js.map +0 -1
  282. package/dist/chunks/toast.rrKNWeM6.js.map +0 -1
  283. package/dist/chunks/toggle-button.CBuKACw5.js.map +0 -1
  284. package/dist/chunks/tutorial.DUjlu3SH.js.map +0 -1
  285. package/dist/chunks/typography.CdCYtxYj.js.map +0 -1
  286. package/dist/chunks/use-cached-selected-values.DWQ8SMSi.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"step.RkChji1p.js","sources":["../../src/components/stepper/composables/use-keyboard-navigation/use-keyboard-navigation.ts","../../src/components/stepper/composables/use-step-register/use-step-register.ts","../../src/components/stepper/stepper.keys.ts","../../src/components/stepper/stepper.types.ts","../../src/components/stepper/stepper.vue","../../../../node_modules/.pnpm/@adyen+ui-assets-icons-16@4.1.0_vue@2.7.16/node_modules/@adyen/ui-assets-icons-16/dist/vue/dot.vue","../../src/components/stepper/components/step/step.vue"],"sourcesContent":["import { Ref } from 'vue';\n\nimport { BentoKeyboardNavigationKeyDownEvent } from '@/types';\n\n/**\n * Returns keyboard navigation's event handlers to navigate through the steps\n *\n * @param steps the list of bento-steps DOM elements to focus on the navigation\n * @returns\n */\nexport const useKeyboardNavigation = (steps: Ref<HTMLButtonElement[]>) => {\n // Returns the event handler that moves the focus on a given step offset\n function focusOnStep(indexOffset: number) {\n return ({ detail: event }) => {\n event.preventDefault();\n\n const currentIndex = steps.value.indexOf(document.activeElement as HTMLButtonElement);\n if (currentIndex < 0) {\n return;\n }\n\n steps.value[currentIndex + indexOffset]?.focus();\n };\n }\n\n const focusOnPreviousStep = focusOnStep(-1);\n const focusOnNextStep = focusOnStep(1);\n\n return {\n [BentoKeyboardNavigationKeyDownEvent.ARROW_DOWN]: focusOnNextStep,\n [BentoKeyboardNavigationKeyDownEvent.ARROW_RIGHT]: focusOnNextStep,\n [BentoKeyboardNavigationKeyDownEvent.ARROW_UP]: focusOnPreviousStep,\n [BentoKeyboardNavigationKeyDownEvent.ARROW_LEFT]: focusOnPreviousStep,\n };\n};\n","import type { Ref } from 'vue';\nimport type { BentoStepperStepExposeState } from '../../stepper.types';\n\n/**\n * Gets the position of a `bento-step` element within its `bento-stepper` parent.\n * @param stepState The `bento-step` state.\n * @returns The index of the element.\n */\nconst getStepPosition = (stepState: BentoStepperStepExposeState) => {\n // Button is wrapped by <li> element\n const listItemElement = (stepState.buttonElement as Ref<HTMLButtonElement>).value.parentElement;\n const listElement = listItemElement.parentElement;\n return Array.from(listElement.children).indexOf(listItemElement);\n};\n\n/**\n * Provides methods to register/unregister `bento-step` elements to/from the `bento-stepper` step state.\n * These methods allow for tracking the child step elements, including their position in the DOM tree.\n * @param childrenSteps The `bento-stepper` (or `bento-step` if substeps) step state.\n */\nexport const useStepRegister = (childrenSteps: Ref<BentoStepperStepExposeState[]>) => {\n /**\n * Registers a step's HTML element in the stepper state.\n * Should be called by a `bento-step` when it is mounted.\n * @param stepState The `bento-step` state.\n */\n const registerStep = (stepState: BentoStepperStepExposeState) => {\n const position = getStepPosition(stepState);\n childrenSteps.value.splice(position, 0, {\n stepContent: stepState.stepContent as string,\n buttonElement: stepState.buttonElement as HTMLButtonElement,\n substeps: stepState.substeps as BentoStepperStepExposeState[],\n });\n };\n\n /**\n * Unregisters a step's HTML element in the stepper state.\n * Should be called by a `bento-step` before it is unmounted.\n * @param stepState The `bento-step` state.\n */\n const removeStep = (stepState: BentoStepperStepExposeState) => {\n childrenSteps.value.splice(\n childrenSteps.value.findIndex(step => step.buttonElement === stepState.buttonElement.value),\n 1\n );\n };\n\n return { registerStep, removeStep };\n};\n","export const STEPPER_STATE = Symbol('stepper state');\n","import type { ComputedRef, Ref } from 'vue';\n\nexport enum BentoStepperTypeOption {\n LINEAR = 'linear',\n NON_LINEAR = 'non-linear',\n}\n\nexport enum BentoStepperVariantOption {\n HORIZONTAL = 'horizontal',\n VERTICAL = 'vertical',\n}\n\nexport interface BentoStepperStepExposeState {\n buttonElement: HTMLButtonElement | Ref<HTMLButtonElement>;\n substeps: BentoStepperStepExposeState[] | Ref<BentoStepperStepExposeState[]>;\n stepContent: string | ComputedRef<string>;\n}\n\nexport type BentoStepperState = Ref<{\n activeStepIndex: number;\n latestActiveStep: number;\n type: `${BentoStepperTypeOption}`;\n variant: `${BentoStepperVariantOption}`;\n steps: HTMLElement[];\n isParentStep?: boolean;\n navigateToStep: (index: number) => void;\n registerStep: (stepState: BentoStepperStepExposeState) => void;\n removeStep: (stepState: BentoStepperStepExposeState) => void;\n}>;\n","<template>\n <nav class=\"b-stepper\">\n <ol\n v-bento-keyboard-navigation-directive\n class=\"b-stepper__list\"\n :class=\"conditionalClasses\"\n v-on=\"keyboardNavigationListeners\"\n >\n <slot></slot>\n </ol>\n\n <bento-typography el=\"span\" variant=\"body\" stronger class=\"b-stepper__text-stepper\"\n >{{\n t('step', { currentIndex: activeStepIndex + 1, totalSteps: stepsAmount, content: currentStepContent })\n }}\n </bento-typography>\n </nav>\n</template>\n\n<script setup lang=\"ts\">\n import { BentoTypography } from '@/components/typography';\n\n import { computed, type DeepReadonly, PropType, provide, readonly, ref, watch } from 'vue';\n import { BentoKeyboardNavigationDirective as vBentoKeyboardNavigationDirective } from '@/directives';\n\n import { useKeyboardNavigation, useStepRegister } from './composables';\n import { useI18n } from '@/utils/ts/i18n';\n\n import { STEPPER_STATE } from './stepper.keys';\n import {\n BentoStepperState,\n BentoStepperStepExposeState,\n BentoStepperTypeOption,\n BentoStepperVariantOption,\n } from './stepper.types';\n\n import messages from './messages.json';\n\n const props = defineProps({\n /**\n * Type of stepper; defines how the stepper should behave. Default: linear\n * @values linear, non-linear\n */\n type: {\n type: String as PropType<`${BentoStepperTypeOption}`>,\n default: 'linear',\n },\n /**\n * Stepper variant; defines how the stepper should be displayed. Default: vertical\n * @values vertical, horizontal\n */\n variant: {\n type: String as PropType<`${BentoStepperVariantOption}`>,\n default: 'vertical',\n },\n /**\n * Active step index\n */\n index: {\n type: Number,\n default: 0,\n },\n });\n\n const emit = defineEmits<{\n /**\n * Event triggered when step is updated by the stepper\n */\n (e: 'update:index', index: number): void;\n }>();\n\n type MessageSchema = (typeof messages)['en-US'];\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const childrenSteps = ref<BentoStepperStepExposeState[]>([]);\n const activeStepIndex = ref(props.index);\n const latestActiveStep = ref(activeStepIndex.value);\n\n const navigateToStep = (index: number) => {\n // Stores latest active step index so users can navigate backwards and forwards on linear stepper\n if (index > latestActiveStep.value) {\n latestActiveStep.value = index;\n }\n activeStepIndex.value = index;\n };\n\n const currentStepContent = computed(() => childrenSteps.value[activeStepIndex.value]?.stepContent);\n const stepsAmount = computed(() => childrenSteps.value.length);\n const childrenStepsElements = computed(() => childrenSteps.value.map(({ buttonElement }) => buttonElement));\n const isHorizontalVariant = computed(() => props.variant === BentoStepperVariantOption.HORIZONTAL);\n\n // List of all visible steps nested on the stepper, including the substeps of the children steps\n // Flattening the steps on a single list makes the keyboard navigation easier to be handled\n const allVisibleStepsElements = computed(() =>\n childrenSteps.value\n .map(({ buttonElement, substeps }, index) => {\n const isStepActive = activeStepIndex.value === index;\n const isSubstepsVisible = !isHorizontalVariant.value && isStepActive;\n\n if (!isSubstepsVisible) {\n return [buttonElement];\n }\n\n return [buttonElement].concat(substeps.map(step => step.buttonElement));\n })\n .flat()\n );\n\n const { registerStep, removeStep } = useStepRegister(childrenSteps);\n\n const stepperState: BentoStepperState = ref({\n activeStepIndex,\n latestActiveStep,\n steps: childrenStepsElements,\n type: props.type,\n variant: props.variant,\n navigateToStep,\n registerStep,\n removeStep,\n });\n\n const conditionalClasses = computed(() => ({\n 'b-stepper__list--horizontal': isHorizontalVariant.value,\n }));\n\n watch(() => props.index, navigateToStep);\n watch(activeStepIndex, index => {\n emit('update:index', index);\n });\n\n const keyboardNavigationListeners = useKeyboardNavigation(allVisibleStepsElements);\n\n // Provides stepper state to BentoStep children components\n provide<DeepReadonly<BentoStepperState>>(STEPPER_STATE, readonly(stepperState));\n</script>\n\n<script lang=\"ts\">\n /**\n * Steppers break down complex processes into manageable steps to guide users through a sequential or multi-step process.\n *\n * @example\n * import { BentoStep, BentoStepper } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStep, BentoStepper },\n * template: `\n * <bento-stepper :index=\"1\">\n * <bento-step>Step 1</bento-step>\n * <bento-step>Step 2</bento-step>\n * <bento-step>Step 3</bento-step>\n * </bento-stepper>\n * `\n * }\n */\n\n export default {\n i18n: { messages },\n name: 'stepper',\n };\n</script>\n\n<style scoped src=\"./stepper.scss\" />\n","\n<template>\n <svg role=\"img\" v-bind=\"$attrs\" class=\"ui-assets-icons-16\" xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"none\"><title v-if=\"$attrs['svg-title']\">{{ $attrs['svg-title'] }}</title><path fill=\"#00112C\" d=\"M8 5.25C6.48122 5.25 5.25 6.48122 5.25 8C5.25 9.51878 6.48122 10.75 8 10.75C9.51878 10.75 10.75 9.51878 10.75 8C10.75 6.48122 9.51878 5.25 8 5.25Z\"/></svg>\n</template>\n<script>\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n<style>\n @import '../css/main.css';\n</style>\n","<template>\n <li :class=\"conditionalClasses\" class=\"b-step\">\n <base-button\n ref=\"buttonComponent\"\n :aria-current=\"ariaCurrentValue\"\n :aria-disabled=\"ariaDisabledValue\"\n class=\"b-step__button\"\n type=\"button\"\n :tabindex=\"tabIndexValue\"\n :disabled=\"isDisabled\"\n @click=\"navigateToStep\"\n @focus=\"isFocused = true\"\n @blur=\"isFocused = false\"\n >\n <template #iconLeft>\n <bento-typography el=\"span\" variant=\"body\" stronger class=\"b-step__index\" aria-hidden=\"true\">\n <checkmark-small-icon v-if=\"isCompleted\" />\n <template v-else-if=\"!isSubstep\">{{ index + 1 }}</template>\n <dot-icon v-else />\n </bento-typography>\n </template>\n\n <bento-typography ref=\"stepContent\" el=\"span\" variant=\"body\" :stronger=\"isActive\" class=\"b-step__content\">\n <slot></slot>\n </bento-typography>\n </base-button>\n\n <ul v-show=\"isSubstepsVisible\" ref=\"substepList\" class=\"b-step__substep-list\">\n <slot name=\"substeps\"></slot>\n </ul>\n </li>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, onBeforeUnmount, onMounted, provide, ref, useSlots, watch } from 'vue';\n import { BaseButton } from '@/components/internal/base-button';\n import { BentoTypography } from '@/components/typography';\n import CheckmarkSmallIcon from '@adyen/ui-assets-icons-16/vue/checkmark-small';\n import DotIcon from '@adyen/ui-assets-icons-16/vue/dot';\n\n import { useStepRegister } from '../../composables';\n import { STEPPER_STATE } from '../../stepper.keys';\n import {\n BentoStepperState,\n BentoStepperStepExposeState,\n BentoStepperTypeOption,\n BentoStepperVariantOption,\n } from '../../stepper.types';\n import { Booleanish } from '@/types';\n\n const slots = useSlots();\n\n const props = defineProps({\n /**\n * Completed status. Used on non-linear steppers to indicate if the step is completed.\n */\n completed: {\n type: Boolean,\n default: false,\n },\n /**\n * Active substep index\n */\n substepIndex: {\n type: Number,\n default: 0,\n },\n });\n\n const emit = defineEmits<{\n /**\n * Event triggered when substep is updated by the parent step\n */\n (e: 'update:substep-index', index: number): void;\n }>();\n\n // Element refs\n const buttonComponent = ref<InstanceType<typeof BaseButton> | null>(null);\n const stepContent = ref<InstanceType<typeof BentoTypography> | null>(null);\n const substeps = ref<BentoStepperStepExposeState[]>([]);\n\n // Injects parent BentoStepper state data\n const stepper = inject<BentoStepperState>(STEPPER_STATE);\n\n const buttonElement = computed(() => buttonComponent.value?.$el as HTMLButtonElement);\n const index = computed(() => stepper?.value.steps.indexOf(buttonElement.value));\n\n const stepContentValue = computed(() => stepContent.value?.$el.textContent);\n\n // Substep logic\n const substepsButtonElements = computed(() => substeps.value.map(({ buttonElement }) => buttonElement));\n\n const activeSubStepIndex = ref(props.substepIndex);\n const latestActiveSubStepIndex = ref(activeSubStepIndex.value);\n\n const navigateToSubstep = (value: number) => {\n if (value > latestActiveSubStepIndex.value) {\n latestActiveSubStepIndex.value = value;\n }\n\n activeSubStepIndex.value = value;\n };\n\n const { registerStep, removeStep } = useStepRegister(substeps);\n\n const stepState: BentoStepperState = ref({\n activeStepIndex: activeSubStepIndex,\n latestActiveStep: latestActiveSubStepIndex,\n type: stepper.value.type,\n variant: stepper.value.variant,\n steps: substepsButtonElements,\n isParentStep: true,\n navigateToStep: navigateToSubstep,\n registerStep,\n removeStep,\n });\n\n provide(STEPPER_STATE, stepState);\n\n watch(() => props.substepIndex, navigateToSubstep);\n watch(activeSubStepIndex, value => {\n emit('update:substep-index', value);\n });\n\n onMounted(() => {\n if (!stepper) {\n throw new Error(\n 'BentoStep components should only be used inside BentoStepper or other BentoStep components.'\n );\n }\n\n stepper.value.registerStep({\n buttonElement,\n stepContent: stepContentValue,\n substeps,\n });\n });\n\n onBeforeUnmount(() => {\n stepper.value.removeStep({\n buttonElement,\n stepContent: stepContentValue,\n substeps,\n });\n });\n\n // Step states\n const isSubstep = computed(() => stepper.value.isParentStep);\n const isFocused = ref(false);\n const isActive = computed(() => stepper?.value.activeStepIndex === index.value);\n const isSubstepsVisible = computed(\n () =>\n isActive.value &&\n stepper.value.variant !== BentoStepperVariantOption.HORIZONTAL &&\n !isSubstep.value &&\n slots.substeps\n );\n const isCompleted = computed(() => {\n if (stepper?.value.type === BentoStepperTypeOption.NON_LINEAR) {\n return props.completed;\n }\n\n return stepper?.value.latestActiveStep > index.value;\n });\n const isDisabled = computed(\n () => stepper?.value.type === BentoStepperTypeOption.LINEAR && index.value > stepper?.value.latestActiveStep\n );\n\n const navigateToStep = () => {\n if (isDisabled.value) {\n return;\n }\n\n stepper.value.navigateToStep(index.value);\n };\n\n // Styling and a11y\n const ariaCurrentValue = computed(() => (isActive.value ? 'step' : ('false' as Booleanish)));\n const ariaDisabledValue = computed(() => isDisabled.value.toString() as Booleanish);\n const tabIndexValue = computed(() => (isFocused.value || (index.value === 0 && !isSubstep.value) ? '0' : '-1'));\n\n const conditionalClasses = computed(() => ({\n 'b-step--active': isActive.value,\n 'b-step--completed': isCompleted.value,\n 'b-step--substep': isSubstep.value,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * Steps are components placed inside BentoSteppers to break down complex processes\n *\n * @example\n * import { BentoStep } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStep },\n * template: `\n * <bento-stepper>\n * <bento-step>Step 1</bento-step>\n * <bento-step>\n * Step 2\n * <template #substeps>\n * <bento-step>Substep 1</bento-step>\n * <bento-step>Substep 2</bento-step>\n * </template>\n * </bento-step>\n * </bento-stepper>\n * `\n * }\n */\n\n export default {\n name: 'step',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./step.scss\" />\n"],"names":["useKeyboardNavigation","steps","focusOnStep","indexOffset","event","currentIndex","_a","focusOnPreviousStep","focusOnNextStep","BentoKeyboardNavigationKeyDownEvent","getStepPosition","stepState","listItemElement","listElement","useStepRegister","childrenSteps","position","step","STEPPER_STATE","BentoStepperTypeOption","BentoStepperTypeOption2","BentoStepperVariantOption","BentoStepperVariantOption2","__default__$1","messages","t","useI18n","ref","activeStepIndex","props","latestActiveStep","navigateToStep","index","currentStepContent","computed","stepsAmount","childrenStepsElements","buttonElement","isHorizontalVariant","allVisibleStepsElements","substeps","isStepActive","registerStep","removeStep","stepperState","conditionalClasses","watch","emit","keyboardNavigationListeners","provide","readonly","uuid","_sfc_main$1","__default__","slots","useSlots","buttonComponent","stepContent","stepper","inject","stepContentValue","substepsButtonElements","buttonElement2","activeSubStepIndex","latestActiveSubStepIndex","navigateToSubstep","value","onMounted","onBeforeUnmount","isSubstep","isFocused","isActive","isSubstepsVisible","isCompleted","isDisabled","ariaCurrentValue","ariaDisabledValue","tabIndexValue"],"mappings":"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","x_google_ignoreList":[5]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"structured-list-item.BfEARGrz.js","sources":["../../src/components/structured-list/structured-list.keys.ts","../../src/components/structured-list/structured-list.types.ts","../../src/components/structured-list/structured-list.vue","../../src/components/structured-list/components/structered-list-item/structured-list-item.vue"],"sourcesContent":["export const STRUCTURED_LIST_CONDENSED_INJECTION_KEY = Symbol('structured list condensed style injection key');\nexport const STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY = Symbol('structured list labels width injection key');\n","export type BentoStructuredListLayoutOptions = '25-75' | '33-66' | '42-58' | '50-50';\nexport const BentoStructuredListLayoutOptions = ['25-75', '33-66', '42-58', '50-50'];\n","<template>\n <dl class=\"b-structured-list\">\n <slot />\n </dl>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, provide } from 'vue';\n import {\n STRUCTURED_LIST_CONDENSED_INJECTION_KEY,\n STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY,\n } from '@/components/structured-list/structured-list.keys';\n import { BentoStructuredListLayoutOptions } from './structured-list.types';\n\n const props = withDefaults(\n defineProps<{\n /**\n * Width of the labels container, in pixels. Overrides layout prop.\n */\n labelsWidth?: number;\n /**\n * The layout of the label value pair in percentage.\n * If labelsWidth is set, layout will be overriden by the static pixel value.\n *\n * If the value entered is not listed in the example\n * list below '33-66' will be applied\n * @example\n * '25-75'\n * '33-66'\n * '42-58'\n * '50-50'\n */\n layout?: BentoStructuredListLayoutOptions;\n }>(),\n {\n labelsWidth: null,\n layout: '33-66',\n }\n );\n\n const isCondensed = inject(STRUCTURED_LIST_CONDENSED_INJECTION_KEY, false);\n\n const computedLayout = computed(() =>\n BentoStructuredListLayoutOptions.includes(props.layout) ? props.layout : '33-66'\n );\n\n const computedLabelsWidth = computed(() => {\n if (isCondensed) {\n return '130px';\n }\n\n if (props.labelsWidth) {\n return `${props.labelsWidth}px`;\n }\n\n return `${computedLayout.value.split('-')[0]}%`;\n });\n\n provide(STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY, computedLabelsWidth);\n</script>\n\n<script lang=\"ts\">\n /**\n * This is a list used to display pairs of information in a clear and organized manner.\n * `BentoStructureListItem` should be used to pass the label/value pairs to the list.\n *\n * @example\n * import { BentoStructuredListItem, BentoStructuredListItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStructuredList, BentoStructuredListItem },\n * template: `\n * <bento-structured-list>\n * <bento-structured-list-item label=\"Payment\">\n * <bento-payment-method label=\"Klarna\" type=\"Klarna\" />\n * </bento-structured-list-item>\n * <bento-structured-list-item label=\"Amount\">\n * <bento-currency :currency=\"BentoCurrencyISOCode.USD\">\n * 123456\n * </bento-currency>\n * </bento-structured-list-item>\n * </bento-structured-list>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./structured-list.scss\" />\n","<template>\n <div class=\"b-structured-list-item\" :class=\"conditionalClasses\">\n <dt class=\"b-structured-list-item__label\" :style=\"computedLabelStyle\">\n <bento-typography :variant=\"labelTypographyVariant\">{{ label }}</bento-typography>\n <bento-info-icon v-if=\"labelInfo\" class=\"b-structured-list-item__icon\" :tooltip-text=\"labelInfo\" />\n </dt>\n <dd class=\"b-structured-list-item__value\" :class=\"valueConditionalClasses\">\n <slot />\n <copy v-if=\"copy\" class=\"b-structured-list-item__icon\" :text=\"copy\" />\n <bento-button\n v-if=\"search\"\n v-bento-tooltip-directive:top=\"searchTooltip ? searchTooltip : t('search')\"\n class=\"b-structured-list-item__icon\"\n variant=\"tertiary\"\n @click=\"search\"\n >\n <template #iconLeft>\n <search-icon :svg-title=\"t('search')\" />\n </template>\n </bento-button>\n </dd>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, inject, ref, Ref } from 'vue';\n\n // Components\n import { BentoButton } from '@/components/button';\n import { BentoInfoIcon } from '@/components/info-icon';\n import { BentoTypography } from '@/components/typography';\n import Copy from '@/components/internal/copy/copy.vue';\n import SearchIcon from '@adyen/ui-assets-icons-16/vue/search';\n\n // Utils\n import { useI18n } from '@/utils/ts/i18n';\n\n // Directives\n import { BentoTooltipDirective as vBentoTooltipDirective } from '@/directives';\n\n // Keys\n import {\n STRUCTURED_LIST_CONDENSED_INJECTION_KEY,\n STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY,\n } from '../../structured-list.keys';\n\n import messages from '../../messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const DEFAULT_LABELS_WIDTH = '33%';\n\n const props = defineProps<{\n /**\n * Label to display for the value\n */\n label: string;\n /**\n * Text to display in info icon tooltip in the label to display for the value\n */\n labelInfo?: string;\n /**\n * Text to copy when the user clicks `Copy` icon\n */\n copy?: string;\n /**\n * Function to trigger when user clicks `Search` icon\n */\n search?: (event: Event) => void;\n /**\n * Text to display when the user hovers over `Search` icon\n */\n searchTooltip?: string;\n /**\n * Truncates the value of the item\n */\n truncate?: boolean;\n }>();\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const isCondensed = inject(STRUCTURED_LIST_CONDENSED_INJECTION_KEY, false);\n const labelsWidth = inject<Ref<string>>(STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY, ref(DEFAULT_LABELS_WIDTH));\n const computedLabelStyle = computed(() => `flex-basis:${labelsWidth.value}`);\n const conditionalClasses = computed(() => ({\n 'b-structured-list-item--condensed': isCondensed,\n }));\n\n const valueConditionalClasses = computed(() => ({\n 'b-structured-list-item__value--truncate': props.truncate,\n }));\n\n const labelTypographyVariant = computed(() => (isCondensed ? 'caption' : 'body'));\n</script>\n\n<script lang=\"ts\">\n /**\n * This is an item of the `BentoStructuredList` meant to be used only with that component.\n * It consists of a label/value pair, and also the optional copy and search modifiers.\n *\n * @example\n * import { BentoCurrencyISOCode, BentoStructuredListItem, BentoStructuredListItem } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoStructuredListItem, BentoStructuredListItem },\n * template: `\n * <bento-structured-list>\n * <bento-structured-list-item label=\"Shopper\" search='searchShopper' search-tooltip='Find shopper'>\n * <bento-typography>\n * 143442642\n * </bento-status>\n * </bento-structured-list-item>\n * <bento-structured-list-item label=\"Amount\" copy='123456'>\n * <bento-currency :currency=\"BentoCurrencyISOCode.USD\">\n * 123456\n * </bento-currency>\n * </bento-structured-list-item>\n * </bento-structured-list>\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./structured-list-item.scss\" />\n"],"names":["STRUCTURED_LIST_CONDENSED_INJECTION_KEY","STRUCTURED_LIST_LABELS_WIDTH_INJECTION_KEY","BentoStructuredListLayoutOptions","__default__$1","isCondensed","inject","computedLayout","computed","props","computedLabelsWidth","provide","__default__","messages","DEFAULT_LABELS_WIDTH","t","useI18n","labelsWidth","ref","computedLabelStyle","conditionalClasses","valueConditionalClasses","labelTypographyVariant"],"mappings":";;;;;;;;;;AAAa,MAAAA,IAAA,OAAA,+CAAA,GACAC,IAAA,OAAA,4CAAA,GCANC,IAAA,CAAA,SAAA,SAAA,SAAA,OAAA,GCoFHC,IAAA,CAAA;;;;;;;;iBA7CAC,IAAAC,EAAAL,GAAA,EAAA,GAEAM,IAAAC;AAAA,MAAuB,MAAAL,EAAA,SAAAM,EAAA,MAAA,IAAAA,EAAA,SAAA;AAAA,IACsD,GAG7EC,IAAAF,EAAA,MACIH,IACI,UAGJI,EAAA,cACI,GAAAA,EAAA,WAAA,OAGJ,GAAAF,EAAA,MAAA,MAAA,GAAA,EAAA,CAAA,CAAA,GAA4C;AAGhD,WAAAI,EAAAT,GAAAQ,CAAA;;;;;;;;;;;;;;;;;;GC8DAE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;iBAxEAC,IAAA,OA6BA,EAAA,GAAAC,EAAA,IAAAC,EAAA,GACAX,IAAAC,EAAAL,GAAA,EAAA,GACAgB,IAAAX,EAAAJ,GAAAgB,EAAAJ,CAAA,CAAA,GACAK,IAAAX,EAAA,MAAA,cAAAS,EAAA,KAAA,EAAA,GACAG,IAAAZ,EAAA,OAAA;AAAA,MAA2C,qCAAAH;AAAA,IACF,EAAA,GAGzCgB,IAAAb,EAAA,OAAA;AAAA,MAAgD,2CAAAC,EAAA;AAAA,IACK,EAAA,GAGrDa,IAAAd,EAAA,MAAAH,IAAA,YAAA,MAAA;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"textarea.DM2Cwx14.js","sources":["../../src/components/textarea/textarea.types.ts","../../src/components/textarea/textarea.vue"],"sourcesContent":["/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoTextareaResizeOption {\n HORIZONTAL = 'horizontal',\n VERTICAL = 'vertical',\n BOTH = 'both',\n NONE = 'none',\n}\n\nexport enum BentoTextareaStateClass {\n CLEARABLE = 'clearable',\n DISABLED = 'disabled',\n ERROR = 'error',\n READONLY = 'readonly',\n}\n\nexport enum BentoTextareaEvent {\n BLUR = 'blur',\n CHANGE = 'change',\n CLEAR = 'clear',\n ESCAPE_PRESSED = 'escape-pressed',\n FOCUS = 'focus',\n INPUT = 'input',\n}\n","<template>\n <div ref=\"textareaComponent\" class=\"b-textarea\" :class=\"conditionalClasses\">\n <div :style=\"{ width: textareaWrapperWidth }\">\n <div class=\"b-textarea__label-box\" :class=\"conditionalClassesLabelBox\">\n <field-label\n v-if=\"label\"\n :for=\"textareaId\"\n :label=\"label\"\n :tooltip-text=\"tooltipText\"\n :optional=\"optional\"\n :required=\"required\"\n />\n <bento-typography\n v-if=\"characterLimit\"\n el=\"span\"\n class=\"b-textarea__label-item\"\n :class=\"conditionalClassesLabelItem\"\n >\n {{ counter }}\n </bento-typography>\n </div>\n <bento-typography el=\"div\" class=\"b-textarea__input-box\" :aria-disabled=\"disabled\">\n <textarea\n :id=\"textareaId\"\n ref=\"textareaElement\"\n :value=\"textareaValue\"\n class=\"b-textarea__input\"\n :class=\"conditionalClassesInput\"\n :aria-label=\"computedAriaLabel\"\n :aria-invalid=\"invalidInput\"\n :readonly=\"isReadOnly\"\n :disabled=\"disabled\"\n :placeholder=\"placeholder\"\n :style=\"{ resize: resizable, height: textareaHeight }\"\n @blur=\"onBlur\"\n @change=\"onChange\"\n @focus=\"onFocus\"\n @input=\"onInput\"\n @keydown.esc=\"onPressEscape\"\n >\n </textarea>\n\n <div v-if=\"showClearButton\" class=\"b-textarea__clear-button\">\n <bento-button\n variant=\"tertiary\"\n :disabled=\"disabled\"\n @click=\"onClear\"\n @keypress.enter=\"onClear\"\n @keyup.space=\"onClear\"\n >\n <template #iconLeft>\n <cross-circle-fill-small-icon :svg-title=\"t('clearText')\" />\n </template>\n </bento-button>\n </div>\n </bento-typography>\n\n <error-message v-if=\"isOverCharacterLimit\" :error-message=\"counterErrorText\" />\n\n <error-message v-if=\"errorMessage\" :error-message=\"errorMessage\" />\n\n <bento-typography v-if=\"description\" class=\"b-textarea__description\" el=\"span\">\n {{ description }}\n </bento-typography>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, nextTick, onMounted, onUnmounted, PropType, ref, toRef, toRefs, useAttrs, watch } from 'vue';\n\n // Components\n import { BentoButton } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import { ErrorMessage, FieldLabel } from '@/internal';\n import CrossCircleFillSmallIcon from '@adyen/ui-assets-icons-16/vue/cross-circle-fill-small';\n\n // Utils\n import { generateUid } from '@/utils/ts/unique-id';\n import { observeSizeOfElement } from '@/utils/ts/resize';\n import { useAriaLabel } from '@/utils/ts/aria-label';\n import { useI18n } from '@/utils/ts/i18n';\n\n // Composables\n import { useFormLayoutFieldLoading } from '@/composables/use-form-layout-loading/use-form-layout-loading';\n\n // Types\n import { BentoTextareaEvent, BentoTextareaResizeOption, BentoTextareaStateClass } from './textarea.types';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const attrs = useAttrs();\n\n const props = defineProps({\n /**\n * Text that labels an the input element\n */\n ariaLabel: { type: String, default: undefined },\n\n /**\n * Text that shows number of characters in textarea\n */\n characterLimit: { type: Number, default: undefined },\n\n /**\n * Text displayed as the help text of the textarea\n */\n description: { type: String, default: '' },\n\n /**\n * Disables the possibility of changing value in the textarea\n */\n disabled: { type: Boolean, default: false },\n\n /**\n * If set to true, shows a button to clear all the text\n */\n clearable: { type: Boolean, default: false },\n\n /**\n * Adds error text\n */\n errorMessage: { type: String, default: '' },\n\n /**\n * Sets the height of the textarea, e.g 200px OR 20vh\n */\n height: { type: String, default: null },\n\n /**\n * Text displayed as the label of the textarea\n */\n label: { type: String, default: '' },\n\n /**\n * Highlights the textarea is optional.\n */\n optional: { type: Boolean, default: false },\n\n /**\n * Text displayed as the placeholder of the textarea\n */\n placeholder: { type: String, default: '' },\n\n /**\n * Set the textarea to read only state.\n */\n readonly: { type: Boolean, default: false },\n\n /**\n * Indicates the possibility of resize the textarea\n */\n resizable: {\n type: String as PropType<BentoTextareaResizeOption | `${BentoTextareaResizeOption}`>,\n default: BentoTextareaResizeOption.BOTH,\n validator: (value: BentoTextareaResizeOption) => Object.values(BentoTextareaResizeOption).includes(value),\n },\n\n /**\n * Highlights the textarea is required.\n */\n required: { type: Boolean, default: false },\n\n /**\n * Adds a info icon next to the label to display the passed tooltip message.\n */\n tooltipText: { type: String, default: null },\n\n /**\n * Text displayed as the value of the textarea\n */\n value: { type: String, default: '' },\n });\n\n const emit = defineEmits<{\n /**\n * Emitted when the element has lost focus\n */\n (e: BentoTextareaEvent.BLUR): void;\n\n /**\n * Emitted when the user modifies the element's value. Unlike the 'input' event, the change event is not necessarily fired for each alteration to an element's value\n */\n (e: BentoTextareaEvent.CHANGE): void;\n\n /**\n * Emitted when the \"Clear\" button was clicked\n */\n (e: BentoTextareaEvent.CLEAR): void;\n\n /**\n * Emitted when the \"ESC\" key is pressed\n */\n (e: BentoTextareaEvent.ESCAPE_PRESSED): void;\n\n /**\n * Emitted when the element has received focus\n */\n (e: BentoTextareaEvent.FOCUS): void;\n\n /**\n * Emitted when the component's model changes\n */\n (e: BentoTextareaEvent.INPUT, value: string): void;\n }>();\n\n const { height } = toRefs(props);\n\n const textareaId = generateUid('textarea');\n const textareaElement = ref<HTMLTextAreaElement>(null);\n const textareaComponent = ref<HTMLDivElement>(null);\n const textareaValue = ref(props.value);\n const defaultTextareaHeight = 44;\n const textareaHeight = ref(props.height || `${defaultTextareaHeight}px`);\n const textareaWrapperWidth = ref('100%'); // The width set to the wrapper of the label, textarea and description\n let textareaElementObserver: ResizeObserver | null = null;\n let textareaComponentObserver: ResizeObserver | null = null;\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const { isReadOnly } = useFormLayoutFieldLoading(toRef(props, 'readonly'));\n\n const counter = computed(() => `${textareaValue.value.length} / ${props.characterLimit}`);\n const isOverCharacterLimit = computed(\n () => props.characterLimit && textareaValue.value.length > props.characterLimit\n );\n\n const calculateHeight = () => {\n const borderWidth = 3;\n if (textareaElement.value && textareaElement.value.scrollHeight > defaultTextareaHeight) {\n textareaHeight.value = `${textareaElement.value.scrollHeight + borderWidth}px`;\n }\n };\n\n watch(height, () => {\n if (!height.value) {\n calculateHeight();\n } else {\n textareaHeight.value = height.value;\n }\n });\n\n watch(\n () => props.value,\n () => {\n textareaValue.value = props.value;\n },\n { immediate: true }\n );\n\n watch(\n () => textareaValue.value,\n async () => {\n // Auto-adjust height if the text area is overflowing\n if (\n !height.value &&\n (!textareaElement.value || textareaElement.value?.scrollHeight > textareaElement.value?.clientHeight)\n ) {\n // Hack to make the textarea calculate its height properly\n // Set the textarea back to the original value before calculating the height\n textareaHeight.value = `${defaultTextareaHeight}px`;\n if (!textareaValue.value) {\n return;\n }\n\n await nextTick();\n calculateHeight();\n }\n },\n { immediate: true }\n );\n\n const invalidInput = computed(() => !!props.errorMessage || isOverCharacterLimit.value);\n\n const conditionalClasses = computed(() => ({\n [`b-textarea--${BentoTextareaStateClass.DISABLED}`]: props.disabled,\n }));\n\n const conditionalClassesInput = computed(() => ({\n [`b-textarea__input--${BentoTextareaStateClass.CLEARABLE}`]: props.clearable,\n [`b-textarea__input--${BentoTextareaStateClass.READONLY}`]: isReadOnly.value,\n [`b-textarea__input--${BentoTextareaStateClass.ERROR}`]: invalidInput.value,\n [`b-textarea__input--dynamic-height`]: !height.value,\n }));\n\n const conditionalClassesLabelBox = computed(() => ({\n [`b-textarea__label-box--no-label`]: !props.label,\n }));\n\n const conditionalClassesLabelItem = computed(() => ({\n [`b-textarea__label-item--${BentoTextareaStateClass.ERROR}`]: isOverCharacterLimit.value,\n }));\n\n const counterErrorText = computed(() => t('yourTextCanBenAtMost', { characterLimit: props.characterLimit }));\n\n const ariaLabelAttribute = ref(attrs['aria-label']);\n const { ariaLabel, label } = toRefs(props);\n const computedAriaLabel = useAriaLabel({\n ariaLabel: ariaLabelAttribute.value as string,\n // TODO: take this line away when the aria-label props is removed\n label: ariaLabel,\n defaultFallback: label,\n });\n\n const showClearButton = computed(\n () => props.clearable && textareaValue.value && !props.disabled && !isReadOnly.value\n );\n\n const onClear = () => {\n textareaValue.value = '';\n emit(BentoTextareaEvent.CLEAR);\n emit(BentoTextareaEvent.INPUT, '');\n };\n\n const onInput = (event: InputEvent) => {\n event.stopImmediatePropagation();\n\n if (!props.disabled && !isReadOnly.value) {\n textareaValue.value = (event.target as HTMLInputElement).value;\n /**\n * Triggered when input value is changed\n *\n * @event input\n * @property {String} inputValue - the updated textarea value\n */\n emit(BentoTextareaEvent.INPUT, textareaValue.value);\n }\n };\n\n const onBlur = () => {\n textareaElement.value.scrollTop = 0;\n emit(BentoTextareaEvent.BLUR);\n };\n\n const onFocus = () => {\n textareaElement.value.focus();\n emit(BentoTextareaEvent.FOCUS);\n };\n\n const onChange = () => {\n emit(BentoTextareaEvent.CHANGE);\n };\n\n const onPressEscape = () => {\n emit(BentoTextareaEvent.ESCAPE_PRESSED);\n };\n\n /**\n * Updates the textarea width depending if the container or the user update its size.\n * @param isTextareaElement - sets to true if the element being observed is the textarea HTML element.\n */\n const resizeTextareaWrapper = (isTextareaElement = false) => {\n // Width assigned by the browser whenever the textarea is manually resized. String of the format `<value>px`.\n const textareaStyleWidth = textareaElement.value.style.width;\n\n // Make sure the tracked textareaHeight is always in sync with the height size in case we manually resize the textarea\n if (textareaElement.value.style.height) {\n textareaHeight.value = textareaElement.value.style.height;\n }\n\n // If the textarea element observer is being triggered, but there's no textareaStyleWidth, we want to ignore it, as no manual resize as happened yet\n // The component wrapper will handle the resizing logic instead\n if (isTextareaElement && !textareaStyleWidth) {\n return;\n }\n\n // Width of the whole bento-textarea component\n const textareaComponentWidth = textareaComponent?.value?.offsetWidth;\n\n // If there is no textareaStyleWidth or the textareaStyleWidth is larger than the component container, the wrapper should be 100% of the container\n if (!textareaStyleWidth || parseInt(textareaStyleWidth, 10) > textareaComponentWidth) {\n textareaWrapperWidth.value = '100%';\n } else {\n // Else the wrapper should always be as wide as the textarea element itself\n textareaWrapperWidth.value = textareaStyleWidth;\n }\n };\n\n onMounted(() => {\n textareaElementObserver = observeSizeOfElement(textareaElement.value, () => {\n resizeTextareaWrapper(true);\n });\n\n textareaComponentObserver = observeSizeOfElement(textareaComponent.value, () => {\n resizeTextareaWrapper();\n });\n\n if (!height.value) {\n calculateHeight();\n }\n });\n\n onUnmounted(() => {\n textareaElementObserver?.disconnect();\n textareaComponentObserver?.disconnect();\n });\n</script>\n\n<script lang=\"ts\">\n export default {\n i18n: { messages },\n name: 'bento-textarea',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./textarea.scss\" />\n"],"names":["BentoTextareaResizeOption","BentoTextareaResizeOption2","BentoTextareaStateClass","BentoTextareaStateClass2","BentoTextareaEvent","BentoTextareaEvent2","__default__","messages","attrs","useAttrs","height","toRefs","props","textareaId","generateUid","textareaElement","ref","textareaComponent","textareaValue","defaultTextareaHeight","textareaHeight","textareaWrapperWidth","textareaElementObserver","textareaComponentObserver","t","useI18n","isReadOnly","useFormLayoutFieldLoading","toRef","counter","computed","isOverCharacterLimit","calculateHeight","watch","_a","_b","nextTick","invalidInput","conditionalClasses","conditionalClassesInput","conditionalClassesLabelBox","conditionalClassesLabelItem","counterErrorText","ariaLabelAttribute","ariaLabel","label","computedAriaLabel","useAriaLabel","showClearButton","onClear","emit","onInput","event","onBlur","onFocus","onChange","onPressEscape","resizeTextareaWrapper","isTextareaElement","textareaStyleWidth","textareaComponentWidth","onMounted","observeSizeOfElement","onUnmounted"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"toast.rrKNWeM6.js","sources":["../../src/components/toast/components/toast-item/toast-item.vue","../../src/components/toast/components/toast-shadow-stack/toast-shadow-stack.vue","../../src/components/toast/toast.vue"],"sourcesContent":["<template>\n <div class=\"b-toast-item\">\n <output class=\"b-toast-item__text\" role=\"status\">\n <bento-typography :title=\"toast.text\" el=\"span\" variant=\"body\" strongest>\n {{ toast.text }}\n </bento-typography>\n </output>\n <bento-button\n v-if=\"toast.action\"\n class=\"b-toast-item__btn\"\n variant=\"tertiary\"\n data-testid=\"toast-item-action-btn\"\n @click=\"onAction\"\n >\n {{ toast.action.text }}\n </bento-button>\n <bento-button\n class=\"b-toast-item__btn\"\n variant=\"tertiary\"\n data-testid=\"toast-item-close-btn\"\n @click=\"toast.dismiss()\"\n >\n <template #iconLeft>\n <cross-icon :svg-title=\"t('dismiss')\" />\n </template>\n </bento-button>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { PropType } from 'vue';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross-small';\n import { useI18n } from '@/utils/ts/i18n';\n import { BentoButton } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n import type { BentoToastItem } from '@/composables';\n import messages from './messages.json';\n\n const props = defineProps({\n toast: { type: Object as PropType<BentoToastItem>, required: true },\n });\n\n type MessageSchema = (typeof messages)['en-US'];\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const onAction = () => {\n if (typeof props.toast.action.handler === 'function') {\n props.toast.action.handler();\n }\n props.toast.dismiss();\n };\n</script>\n\n<script lang=\"ts\">\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./toast-item.scss\" />\n","<template>\n <div ref=\"shadowStack\" class=\"b-toast-shadow-stack\">\n <!--\n since we only interested in the size of the last 3 toasts and order of the toast items\n is not guaranteed when we use ref with v-for (more info at the end of this section https://vuejs.org/guide/essentials/template-refs.html#refs-inside-v-for),\n toast items would be rendered independently with individual ref references.\n -->\n <toast-item v-if=\"toasts[0]\" ref=\"toast0\" :toast=\"toasts[0]\" />\n <toast-item v-if=\"toasts[1]\" ref=\"toast1\" :toast=\"toasts[1]\" />\n <toast-item v-if=\"toasts[2]\" ref=\"toast2\" :toast=\"toasts[2]\" />\n </div>\n</template>\n\n<script setup lang=\"ts\">\n /**\n * This component will \"shadow-render\" ToastItems positioned relatively to each other,\n * would grab their positions and size and would emit augmented list of toasts with those\n * additional details. This would allow us to have perfect control over toasts positioning and animation\n * in the parent Toast component, where ToastItems would actually be visible.\n */\n import { computed, nextTick, onMounted, ref, watch } from 'vue';\n import { useBentoToastController } from '@/composables';\n import type { BentoToastItemWithDimensions } from './toast-shadow-stack.types';\n import ToastItem from '../toast-item/toast-item.vue';\n\n const { stack } = useBentoToastController();\n\n const emit = defineEmits<{\n /**\n *\n */\n (e: 'update', toasts: Array<BentoToastItemWithDimensions>): void;\n }>();\n\n const shadowStack = ref<HTMLElement>();\n const toast0 = ref<InstanceType<typeof ToastItem>>();\n const toast1 = ref<InstanceType<typeof ToastItem>>();\n const toast2 = ref<InstanceType<typeof ToastItem>>();\n const toastRefs = [toast0, toast1, toast2];\n\n // only get 3 last toast as only they would be rendered on the screen\n const toasts = computed(() => stack.value.slice(0, 3));\n\n const shareToastsWithDimensions = async () => {\n // Wait for all toasts to render, so we would be able to get their ClientRect\n await nextTick();\n\n // Parent container \"top\" value should be 0, but can be something else due to CSS. So have to account for it\n const { top: parentTop } = shadowStack.value.getBoundingClientRect();\n\n const toastsWithDimensions = stack.value.map((toast, index) => {\n if (index > 2) {\n return { ...toast, bottom: 0, height: 0 };\n }\n const { height, top } = toastRefs[index].value.$el.getBoundingClientRect();\n return { ...toast, height, bottom: top - parentTop };\n });\n emit('update', toastsWithDimensions);\n };\n\n watch(stack, shareToastsWithDimensions);\n\n onMounted(() => {\n // Refs would be null until component is mounted, so let's make sure we only do it after that\n if (stack.value.length > 0) {\n shareToastsWithDimensions();\n }\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./toast-shadow-stack.scss\" />\n","<template>\n <div\n v-if=\"renderToast\"\n ref=\"root\"\n class=\"b-toast\"\n data-testid=\"toast\"\n :style=\"{ height: stackHeight }\"\n @mouseenter=\"hovered = true\"\n @mouseleave=\"hovered = false\"\n >\n <toast-shadow-stack @update=\"toastsWithDimensions = $event\" />\n\n <transition-group\n name=\"b-toast__queue\"\n tag=\"div\"\n aria-live=\"polite\"\n enter-class=\"b-toast__queue--enter\"\n leave-to-class=\"b-toast__queue--leave-to\"\n @before-leave=\"onBeforeToastLeave\"\n @after-leave=\"checkHover\"\n >\n <toast-item\n v-for=\"toast in queue\"\n v-bind=\"{ 'data-dismiss-transform': toast.dismissTransform }\"\n :key=\"toast.id\"\n :toast=\"toast\"\n :style=\"toast.styles\"\n :class=\"{ 'b-toast__item--first': toast.isFirst }\"\n :inert=\"toast.isInert\"\n data-testid=\"toast-item\"\n class=\"b-toast__item\"\n />\n </transition-group>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref, watch } from 'vue';\n import { useBentoToastController } from '@/composables';\n import ToastShadowStack from './components/toast-shadow-stack/toast-shadow-stack.vue';\n import type { BentoToastItemWithDimensions } from './components/toast-shadow-stack/toast-shadow-stack.types';\n import ToastItem from './components/toast-item/toast-item.vue';\n\n // By design, top-most toast should be visible for 5 seconds before auto-dismiss\n const TOAST_DISPLAY_DURATION = 5000;\n\n // Delay first render of the toast until we actually need it, to skip all the positioning calculation logic\n // until we actually have anything to render.\n const renderToast = ref(false);\n const { stack } = useBentoToastController();\n\n watch(\n stack,\n toastStack => {\n if (toastStack.length > 0 && !renderToast.value) {\n renderToast.value = true;\n }\n },\n { immediate: true }\n );\n\n const hovered = ref(false);\n const toastsWithDimensions = ref<Array<BentoToastItemWithDimensions>>([]);\n // In collapsed mode we need for toast to \"stick out\", but not overflow another toast in the forefront.\n // Random number that satisfies this condition (single-line toast is roughly 52px height)\n const collapsedToastHeight = 40;\n // How much pixels of the stacked toast will be \"sticking out\" from the visible toast\n const stackIndicatorHeight = 10;\n\n const queueSize = computed(() => toastsWithDimensions.value.length);\n const lastVisibleToastIndex = computed(() => Math.min(hovered.value ? 2 : 0, queueSize.value - 1));\n const lastVisibleToastBottom = computed(() => {\n const toast = toastsWithDimensions.value[lastVisibleToastIndex.value];\n return toast ? toast.bottom + toast.height : 0;\n });\n\n const queue = computed(() => {\n const translateBaseValue = lastVisibleToastBottom.value - collapsedToastHeight;\n return toastsWithDimensions.value.map((toast, index) => {\n const collapsed = index > lastVisibleToastIndex.value;\n const isSmallerStack = !hovered.value && index > 1;\n const translateY = collapsed\n ? translateBaseValue + stackIndicatorHeight * (isSmallerStack ? 2 : 1)\n : toast.bottom;\n\n return {\n ...toast,\n styles: {\n height: `${collapsed ? collapsedToastHeight : toast.height}px`,\n transform: collapsed\n ? `translateY(${translateY * -1}px) scaleX(${isSmallerStack ? '0.8' : '0.9'})`\n : `translateY(${translateY * -1}px)`,\n 'z-index': queueSize.value - index,\n },\n // first toast has different animation, and toasts above index 2/3 are not visible so no need for a custom animation\n dismissTransform:\n index > 0 && index < (hovered.value ? 4 : 3)\n ? `translateY(${(translateY - toast.height) * -1}px) scale(0.5, 0.1)`\n : null,\n isFirst: index === 0,\n isInert: index > (hovered.value ? 2 : 0),\n };\n });\n });\n\n const onBeforeToastLeave = (el: HTMLElement) => {\n // We have to swap transformation on the toast element that is about to be removed\n // Unfortunately we cannot do it via transition classes as transformation function is\n // unique per toast, and we cannot use reactivity because it won't be applied for a toast\n // that is removed. So direct DOM manipulation is the only way it seems.\n if (el.dataset.dismissTransform) {\n /* eslint-disable no-param-reassign -- explicitly manipulating with DOM properties, no way around it unfortunately */\n el.style.transform = el.dataset.dismissTransform;\n }\n };\n\n const stackHeight = computed(() => {\n // Track stack container height, so that hover over would work without glitches\n // (when mouse is over space between toasts)\n let height = 0;\n if (lastVisibleToastIndex.value >= 0) {\n const stackIndicator =\n stackIndicatorHeight *\n Math.min(queueSize.value - 1 - lastVisibleToastIndex.value, hovered.value ? 1 : 2);\n height = Math.min(lastVisibleToastBottom.value + stackIndicator, document.body.parentElement.clientHeight);\n }\n return `${height}px`;\n });\n\n let dismissTimout = null;\n let timeoutStart = null;\n let remainingTimeToDismiss = TOAST_DISPLAY_DURATION;\n\n const startTimer = (toast, duration) => {\n timeoutStart = Date.now();\n dismissTimout = setTimeout(() => toast.dismiss(), duration);\n };\n\n const startNewDismissTimer = toast => {\n // stop previous timeouts, if any\n clearTimeout(dismissTimout);\n if (toast) {\n remainingTimeToDismiss = TOAST_DISPLAY_DURATION;\n if (!hovered.value) {\n startTimer(toast, remainingTimeToDismiss);\n }\n } else {\n remainingTimeToDismiss = 0;\n }\n };\n\n watch(\n () => queue.value[0],\n (firstToast, oldFirstToast) => {\n if (firstToast?.id === oldFirstToast?.id) {\n return;\n }\n startNewDismissTimer(firstToast);\n },\n { immediate: true }\n );\n\n const pauseDismissTimer = () => {\n remainingTimeToDismiss = remainingTimeToDismiss - Date.now() + timeoutStart;\n clearTimeout(dismissTimout);\n };\n\n const resumeDismissTimer = () => {\n if (remainingTimeToDismiss > 0) {\n startTimer(queue.value[0], remainingTimeToDismiss);\n }\n };\n\n watch(hovered, isHovered => {\n if (isHovered) {\n pauseDismissTimer();\n } else {\n resumeDismissTimer();\n }\n });\n\n const root = ref<HTMLElement>();\n // \"mouseleave\" event would be emitted for the root element when the mouse moves out of the root element,\n // but browser wouldn't emit this event when root element shrinks to the point when mouse is not over element anymore.\n // This can happen when user clicks on dismiss button the top-most toast and doesn't move the mouse during animation,\n // after which browser would think that root element is still hovered. This workaround addresses this particular issue.\n const checkHover = () =>\n setTimeout(() => {\n hovered.value = hovered.value ? root.value.matches(':hover') : false;\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./toast.scss\" />\n"],"names":["__default__","messages","t","useI18n","props","stack","useBentoToastController","shadowStack","ref","toast0","toast1","toast2","toastRefs","toasts","computed","shareToastsWithDimensions","nextTick","parentTop","toastsWithDimensions","toast","index","height","top","emit","watch","onMounted","renderToast","toastStack","hovered","collapsedToastHeight","stackIndicatorHeight","queueSize","lastVisibleToastIndex","lastVisibleToastBottom","queue","translateBaseValue","collapsed","isSmallerStack","translateY","onBeforeToastLeave","el","stackHeight","stackIndicator","dismissTimout","timeoutStart","remainingTimeToDismiss","startTimer","duration","startNewDismissTimer","firstToast","oldFirstToast","pauseDismissTimer","resumeDismissTimer","isHovered","root"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"toggle-button.CBuKACw5.js","sources":["../../src/components/button/components/toggle-button/toggle-button.vue"],"sourcesContent":["<template>\n <bento-button\n class=\"b-toggle-button\"\n v-bind=\"$attrs\"\n :aria-expanded=\"`${toggled}`\"\n :condensed=\"condensed\"\n :class=\"conditionalClasses\"\n :disabled=\"disabled\"\n :inverse=\"inverse\"\n :variant=\"computedVariant\"\n @click.capture.stop=\"onClick\"\n >\n <template v-for=\"(_, innerSlot) of slots\" #[innerSlot]>\n <slot :name=\"innerSlot\" v-bind=\"getSlotKeyIfVue3(innerSlot)\" />\n </template>\n </bento-button>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, useSlots } from 'vue';\n import BentoButton from '@/components/button/button.vue';\n import { BentoButtonVariant } from '@/core/components/button/button.types';\n import { isVue3 } from 'vue-demi';\n\n const props = defineProps({\n /**\n * Reduces sizing of button\n */\n condensed: {\n type: BentoButton.props.condensed.type,\n default: false,\n },\n\n /**\n * Disables button functonality\n */\n disabled: {\n type: BentoButton.props.disabled.type,\n default: false,\n },\n\n /**\n * Sets color set to inverse\n */\n inverse: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Types of flavour of Button\n * @values primary, secondary, tertiary\n */\n variant: {\n type: BentoButton.props.variant.type,\n default: 'primary',\n validator: BentoButton.props.variant.validator,\n },\n\n /**\n * The state of the button whether it is toggled or not.\n */\n toggled: {\n type: Boolean,\n default: false,\n },\n });\n\n const emit = defineEmits<{\n /**\n * Click event handler\n */\n (e: 'click', event: MouseEvent): void;\n\n /**\n * Update the toggle state when the button has been clicked.\n */\n (e: 'update:toggled', newToggleState: boolean): void;\n }>();\n\n const computedVariant = computed(\n () => (props.variant === 'tertiary' ? 'tertiary-with-background' : props.variant) as BentoButtonVariant\n );\n\n const conditionalClasses = computed(() => ({\n [`b-toggle-button--condensed`]: props?.condensed,\n [`b-toggle-button--${computedVariant.value}-toggled`]: props.toggled,\n [`b-toggle-button--inverse`]: props.inverse,\n }));\n\n const onClick = (e: MouseEvent) => {\n // Prevent Vue3 from triggering event twice\n e.stopPropagation();\n if (!props?.disabled) {\n emit('click', e);\n emit('update:toggled', !props.toggled);\n }\n };\n\n const slots = useSlots();\n // If we don't provide a key to `slot` in vue 3, we will get type errors\n const getSlotKeyIfVue3 = (slotName: string | number) => (isVue3 ? { key: slotName } : {});\n</script>\n\n<script lang=\"ts\">\n /**\n * Toggle button is used to switch between two states (example: menu shown, menu hidden).\n * It functions as a regular button but retains its state to indicate whether the associated menu or element is active or inactive.\n *\n * @example\n * import { BentoToggleButton } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoToggleButton },\n * template: `\n * <bento-toggle-button state=\"toggled\" variant=\"secondary\">\n * Button that can be toggled\n * </bento-toggle-button>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./toggle-button.scss\" />\n"],"names":["__default__","computedVariant","computed","props","conditionalClasses","onClick","e","emit","slots","useSlots","slotName"],"mappings":";;;;;AAyHI,MAAAA,IAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAzCAC,IAAAC;AAAA,MAAwB,MAAAC,EAAA,YAAA,aAAA,6BAAAA,EAAA;AAAA,IACqD,GAG7EC,IAAAF,EAAA,OAAA;AAAA,MAA2C,8BAAAC,KAAA,gBAAAA,EAAA;AAAA,MACA,CAAA,oBAAAF,EAAA,KAAA,UAAA,GAAAE,EAAA;AAAA,MACsB,4BAAAA,EAAA;AAAA,IACzB,EAAA,GAGxCE,IAAA,CAAAC,MAAA;AAEI,MAAAA,EAAA,gBAAA,GACAH,KAAA,QAAAA,EAAA,aACII,EAAA,SAAAD,CAAA,GACAC,EAAA,kBAAA,CAAAJ,EAAA,OAAA;AAAA,IACJ,GAGJK,IAAAC,EAAA;8HAEA,CAAAC,OAAA,CAAA;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tutorial.DUjlu3SH.js","sources":["../../src/components/tutorial/components/tutorial-popover/components/tutorial-indicator/tutorial-indicator.vue","../../../../node_modules/.pnpm/@adyen+ui-assets-icons-16@4.1.0_vue@2.7.16/node_modules/@adyen/ui-assets-icons-16/dist/vue/blocked.vue","../../src/components/tutorial/components/tutorial-popover/tutorial-popover.vue","../../src/components/tutorial/tutorial.vue"],"sourcesContent":["<template>\n <popper-container\n :target-element=\"targetElement\"\n :middleware=\"middleware\"\n position=\"top-start\"\n fixed-positioning\n disabled-focus-trap\n class=\"b-tutorial-indicator\"\n data-testid=\"tutorial-indicator\"\n >\n <div class=\"b-tutorial-indicator__highlight\" :style=\"computedStyles\"></div>\n </popper-container>\n</template>\n\n<script setup lang=\"ts\">\n import { ref } from 'vue';\n import { hide, type Middleware, offset } from '@floating-ui/vue';\n import { PopperContainer } from '@/components/popper-container';\n\n const BORDER_OFFSET = 2;\n\n defineProps({\n /**\n * Tutorial indicator's target element.\n * The indicator will position itself around the target element.\n */\n targetElement: {\n type: PopperContainer.props?.targetElement.type,\n required: true,\n },\n });\n\n const computedStyles = ref({\n width: '0',\n height: '0',\n borderRadius: '0',\n });\n\n function getBorderRadius(element: HTMLElement) {\n try {\n const radius = parseFloat(getComputedStyle(element).getPropertyValue('border-radius'));\n return Number.isNaN(radius) ? '' : `${radius + 2 * BORDER_OFFSET}px`;\n } catch {\n return '';\n }\n }\n\n const middleware = [\n hide(),\n offset({\n mainAxis: BORDER_OFFSET,\n alignmentAxis: -BORDER_OFFSET,\n }),\n {\n name: 'updateIndicatorSize',\n fn: ({ x, y, elements }) => {\n const target = elements.reference as HTMLElement;\n computedStyles.value.width = `${target.offsetWidth + 4 * BORDER_OFFSET}px`;\n computedStyles.value.height = `${target.offsetHeight + 4 * BORDER_OFFSET}px`;\n computedStyles.value.borderRadius = getBorderRadius(target);\n return { x, y };\n },\n } as Middleware,\n ];\n</script>\n\n<style lang=\"scss\" scoped src=\"./tutorial-indicator.scss\" />\n","\n<template>\n <svg role=\"img\" v-bind=\"$attrs\" class=\"ui-assets-icons-16\" xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"none\"><title v-if=\"$attrs['svg-title']\">{{ $attrs['svg-title'] }}</title><g :clip-path=\"'url(#uia-icons-16-blocked__a' + uuid + ')'\"><path fill=\"#00112C\" d=\"M9.51195 0.398918C8.00859 0.0998821 6.45033 0.253358 5.0342 0.839937C3.61808 1.42652 2.40769 2.41985 1.55611 3.69433C0.704529 4.96881 0.25 6.4672 0.25 8C0.25 10.0554 1.06652 12.0267 2.51992 13.4801C3.97333 14.9335 5.94457 15.75 8 15.75C9.53281 15.75 11.0312 15.2955 12.3057 14.4439C13.5801 13.5923 14.5735 12.3819 15.1601 10.9658C15.7466 9.54967 15.9001 7.99141 15.6011 6.48805C15.3021 4.9847 14.5639 3.60378 13.4801 2.51993C12.3962 1.43607 11.0153 0.697953 9.51195 0.398918ZM5.60823 2.22576C6.75027 1.75271 8.00693 1.62894 9.21931 1.8701C10.4317 2.11125 11.5453 2.70651 12.4194 3.58059C13.2935 4.45466 13.8887 5.56831 14.1299 6.78069C14.3711 7.99307 14.2473 9.24974 13.7742 10.3918C13.5555 10.9198 13.2667 11.4124 12.9177 11.8573L4.14271 3.0823C4.58761 2.73333 5.08018 2.44448 5.60823 2.22576ZM3.08208 4.14298L11.857 12.9179C11.7327 13.0154 11.6044 13.1085 11.4723 13.1967C10.4445 13.8834 9.23613 14.25 8 14.25C6.3424 14.25 4.75268 13.5915 3.58058 12.4194C2.40848 11.2473 1.75 9.65761 1.75 8C1.75 6.76387 2.11656 5.5555 2.80331 4.52769C2.89155 4.39564 2.98456 4.26733 3.08208 4.14298Z\"/></g><defs><clipPath :id=\"'uia-icons-16-blocked__a' + uuid\"><rect width=\"16\" height=\"16\" fill=\"#fff\"/></clipPath></defs></svg>\n</template>\n<script>\n let uuid = 0;\n\n export default {\n beforeCreate() {\n this.uuid = uuid.toString();\n uuid += 1;\n },\n };\n</script>\n<style>\n @import '../css/main.css';\n</style>\n","<template>\n <div v-if=\"active && targetElement\">\n <tutorial-indicator v-if=\"isIndicatorVisible && targetElement\" :target-element=\"targetElement\" />\n\n <bento-popover\n :target-element=\"targetElement\"\n :position=\"position\"\n :open=\"isPopoverOpen\"\n :aria-label=\"title\"\n fixed-positioning\n class=\"b-tutorial-popover\"\n @keydown.esc.native=\"emit('finish')\"\n >\n <template v-if=\"image\" #image>\n <bento-image v-bind=\"image\" aspect-ratio=\"landscape\" class=\"b-tutorial-popover__image\" />\n </template>\n\n <div aria-hidden=\"true\" class=\"b-tutorial-popover__ripple\"></div>\n\n <div class=\"b-tutorial-popover__header\">\n <bento-typography variant=\"title\" el=\"span\"> {{ title }} </bento-typography>\n\n <bento-typography v-if=\"showSteps\" el=\"span\" class=\"b-tutorial-popover__steps\">\n {{ t('stepsOfTotal', { step, totalSteps }) }}\n </bento-typography>\n </div>\n\n <bento-typography>\n <slot />\n </bento-typography>\n\n <div class=\"b-tutorial-popover__footer\">\n <bento-menu\n v-if=\"!isFirstStep\"\n :data=\"menuData\"\n class=\"b-tutorial-popover__menu\"\n data-testid=\"menu-button\"\n />\n <div class=\"b-tutorial-popover__actions\">\n <bento-button-actions :actions=\"computedActions\" layout=\"buttons-end\" />\n </div>\n </div>\n </bento-popover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, isRef, nextTick, PropType, ref, type default as Vue, watch } from 'vue';\n import { BentoMenu } from '@/components/menu';\n import { BentoPopover, BentoPopoverPositions } from '@/components/popover';\n import { BentoTypography } from '@/components/typography';\n import { type BentoButtonActionObject, BentoButtonActions } from '@/components/button';\n import { BentoImage } from '@/components/image';\n import { TutorialIndicator } from './components/tutorial-indicator';\n import { useI18n } from '@/utils/ts/i18n';\n import type { BentoMenuItem } from '@/components/menu/components';\n import type { VueNodeElement } from '@/types';\n import type { BentoTutorialScrollOptions, BentoTutorialStep } from '../../tutorial.types';\n import RefreshIcon from '@adyen/ui-assets-icons-16/vue/refresh';\n import BlockedIcon from '@adyen/ui-assets-icons-16/vue/blocked';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n const DEFAULT_SCROLL_OPTIONS: BentoTutorialScrollOptions = { behavior: 'smooth' };\n\n const props = defineProps({\n /**\n * Optional configuration for the secondary action.\n * In tour tutorials, this is ignored for the introductory step.\n */\n action: {\n type: Object as PropType<BentoButtonActionObject>,\n default: null,\n },\n\n /**\n * Indicates whether this popover is the active step (and should be visible).\n */\n active: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Optional illustration to display at the top of the popover.\n */\n image: {\n type: Object as PropType<BentoTutorialStep['image']>,\n default: null,\n },\n\n /**\n * Popover's position relative to the target element.\n * Possible values are:\n * 'auto', 'auto-start', 'auto-end',\n * 'top', 'top-start', 'top-end'\n * 'right', 'right-start', 'right-end'\n * 'bottom', 'bottom-start', 'bottom-end'\n * 'left', 'left-start', 'left-end'\n */\n position: {\n type: String as PropType<`${BentoPopoverPositions}`>,\n default: BentoPopoverPositions.BOTTOM_START,\n validator: (value: BentoPopoverPositions) => Object.values(BentoPopoverPositions).includes(value),\n },\n\n /**\n * Options to control the scroll into view behavior.\n * Takes the same options as the `scrollIntoView` function\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView}\n */\n scrollOptions: {\n type: [Boolean, Object] as PropType<BentoTutorialScrollOptions>,\n default: null,\n },\n\n /**\n * Indicates whether this popover is a single tutorial or a tour.\n */\n single: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The tutorial step number.\n * In tour tutorials, `0` is the introductory step, and is displayed next\n * to the title.\n */\n step: {\n type: Number,\n default: null,\n },\n\n /**\n * Tutorial popover's target element.\n * The popover will position itself relatively to target element.\n */\n targetElement: {\n type: [Element, Object] as PropType<VueNodeElement>,\n required: true,\n },\n\n /**\n * The tutorial step title.\n */\n title: {\n type: String,\n required: true,\n },\n\n /**\n * Total count of steps.\n * In tour tutorials, this does not include the introductory step, and is\n * displayed next to the title.\n */\n totalSteps: {\n type: Number,\n default: null,\n },\n });\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n\n const emit = defineEmits<{\n /**\n * Emitted when the user clicks the primary action in popovers during introductory or intermediate steps of tour tutorials\n */\n (e: 'next'): void;\n\n /**\n * Emitted when the user clicks the primary action in a single tutorial, the last step of a tour, or skips the tutorial\n */\n (e: 'finish'): void;\n\n /**\n * Emitted when the user selects the restart tour option\n */\n (e: 'restart'): void;\n }>();\n\n const ACTION_SKIP = computed<BentoButtonActionObject>(() => ({\n title: t('skipTour') as string,\n event: () => emit('finish'),\n }));\n\n const ACTION_START = computed<BentoButtonActionObject>(() => ({\n title: t('startTour') as string,\n event: () => emit('next'),\n }));\n\n const ACTION_NEXT = computed<BentoButtonActionObject>(() => ({\n title: t('next') as string,\n event: () => emit('next'),\n }));\n\n const ACTION_FINISH = computed<BentoButtonActionObject>(() => ({\n title: t('finish') as string,\n event: () => emit('finish'),\n }));\n\n const ACTION_OK = computed<BentoButtonActionObject>(() => ({\n title: t('ok') as string,\n event: () => emit('finish'),\n }));\n\n const isPopoverOpen = ref(false);\n const isIndicatorVisible = ref(false);\n\n const targetElement = computed(() => {\n if (isRef(props.targetElement)) {\n return ((props.targetElement.value as Vue)?.$el || props.targetElement.value) as HTMLElement;\n }\n return ((props.targetElement as Vue).$el || props.targetElement) as HTMLElement;\n });\n\n const isFirstStep = computed(() => props.step === 0);\n const isLastStep = computed(() => props.step === props.totalSteps);\n\n const showSteps = computed(() => !isFirstStep.value);\n\n const menuData = computed<BentoMenuItem[]>(() => [\n {\n text: t('restartTour'),\n handler: () => emit('restart'),\n icon: RefreshIcon,\n },\n ...(isLastStep.value\n ? []\n : [\n {\n text: 'Skip tour',\n handler: () => emit('finish'),\n icon: BlockedIcon,\n },\n ]),\n ]);\n\n const computedActions = computed(() => {\n let primaryAction: BentoButtonActionObject;\n if (isFirstStep.value) {\n primaryAction = props.single ? ACTION_OK.value : ACTION_START.value;\n } else if (isLastStep.value) {\n primaryAction = ACTION_FINISH.value;\n } else {\n primaryAction = ACTION_NEXT.value;\n }\n\n const actions = [primaryAction];\n if (isFirstStep.value && !props.single) {\n actions.push(ACTION_SKIP.value);\n } else if (props.action) {\n actions.push(props.action);\n }\n\n return actions;\n });\n\n watch(\n () => props.active,\n async isActive => {\n if (isActive && targetElement.value?.scrollIntoView) {\n targetElement.value?.scrollIntoView(\n props.scrollOptions != null ? props.scrollOptions : DEFAULT_SCROLL_OPTIONS\n );\n\n // Skip to next tick to preserve popover appear animation\n await nextTick();\n }\n\n isPopoverOpen.value = isActive;\n isIndicatorVisible.value = isActive;\n },\n { immediate: true }\n );\n</script>\n\n<script lang=\"ts\">\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./tutorial-popover.scss\" />\n","<template>\n <div class=\"b-tutorial\">\n <tutorial-popover\n v-for=\"(step, i) in steps\"\n v-bind=\"getPopoverProps(step, i)\"\n :key=\"step.title\"\n @finish=\"currentStep = -1\"\n @next=\"currentStep += 1\"\n @restart=\"currentStep = 0\"\n >\n {{ step.description }}\n </tutorial-popover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, PropType, ref, watch } from 'vue';\n import { TutorialPopover } from './components/tutorial-popover';\n import type { BentoTutorialScrollOptions, BentoTutorialStep } from './tutorial.types';\n\n const props = defineProps({\n /**\n * The current step index. If provided, will start the tutorial in that step.\n */\n index: {\n type: Number,\n default: null,\n },\n\n /**\n * The steps configuration for the tutorial.\n *\n */\n steps: {\n type: Array as PropType<BentoTutorialStep[]>,\n required: true,\n validator: (value: BentoTutorialStep[]) => value.length > 0,\n },\n\n /**\n * Options to control the scroll into view behavior.\n * Takes the same options as the `scrollIntoView` function\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView}\n */\n scrollOptions: {\n type: [Boolean, Object] as PropType<BentoTutorialScrollOptions>,\n default: null,\n },\n });\n\n const emit = defineEmits<{\n /**\n * Fired every time the step index is changed. `-1` value means the tutorial is finished/skipped.\n */\n (e: 'update:index', value: number);\n }>();\n\n const currentStep = ref(props.index || 0);\n\n const totalSteps = computed(() => props.steps.length - 1);\n const isSingleTutorial = computed(() => totalSteps.value === 0);\n\n function getPopoverProps(step: BentoTutorialStep, index: number) {\n return {\n // Visual\n targetElement: step.target,\n image: step.image,\n title: step.title,\n step: index,\n totalSteps: totalSteps.value,\n action: step.action,\n scrollOptions: props.scrollOptions,\n\n // Config\n active: index === currentStep.value,\n single: isSingleTutorial.value,\n position: step.position,\n };\n }\n\n watch(currentStep, step => {\n emit('update:index', step);\n });\n\n watch(\n () => props.index,\n value => {\n if (value >= -1 && value <= totalSteps.value) {\n currentStep.value = value;\n }\n }\n );\n</script>\n\n<script lang=\"ts\">\n /**\n * The Tutorial is a temporary popover that should be used to educate users about\n * new or unfamiliar features or experiences.\n *\n * You can use single tutorial or chain them into a tour.\n *\n * Only use this component for new features/experiences that are not obvious and\n * self-explanatory on their own.\n *\n * @example\n * import { BentoTutorial } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoTutorial },\n * template: `\n * <bento-tutorial\n * :steps=\"[\n * {\n * target: targetElement1,\n * title: 'Tutorial intro title',\n * description: 'Intro body content',\n * image: { src: imageSource, alt: 'Alt text' }\n * },\n * {\n * target: targetElement1,\n * title: 'Tutorial intro title',\n * description: 'Intro body content',\n * action: { title: 'Action label', event: () => {} }\n * },\n * ]\"\n * />\n * `\n * }\n */\n export default {};\n</script>\n"],"names":["computedStyles","ref","getBorderRadius","element","radius","middleware","hide","offset","x","y","elements","target","uuid","_sfc_main$2","__default__$1","messages","DEFAULT_SCROLL_OPTIONS","t","useI18n","ACTION_SKIP","computed","emit","ACTION_START","ACTION_NEXT","ACTION_FINISH","ACTION_OK","isPopoverOpen","isIndicatorVisible","targetElement","isRef","props","_a","isFirstStep","isLastStep","showSteps","menuData","RefreshIcon","BlockedIcon","computedActions","primaryAction","actions","watch","isActive","_b","nextTick","__default__","currentStep","totalSteps","isSingleTutorial","getPopoverProps","step","index","value"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAgCI,UAAAA,IAAAC,EAAA;AAAA,MAA2B,OAAA;AAAA,MAChB,QAAA;AAAA,MACC,cAAA;AAAA,IACM,CAAA;AAGlB,aAAAC,EAAAC,GAAA;AACI,UAAA;AACI,cAAAC,IAAA,WAAA,iBAAAD,CAAA,EAAA,iBAAA,eAAA,CAAA;AACA,eAAA,OAAA,MAAAC,CAAA,IAAA,KAAA,GAAAA,IAAA,IAAA,CAAA;AAAA,MAAgE,QAAA;AAEhE,eAAA;AAAA,MAAO;AAAA,IACX;AAGJ,UAAAC,IAAA;AAAA,MAAmBC,EAAA;AAAA,MACVC,EAAA;AAAA,QACE,UAAA;AAAA,QACO,eAAA;AAAA,MACM,CAAA;AAAA,MACnB;AAAA,QACD,MAAA;AAAA,QACU,IAAA,CAAA,EAAA,GAAAC,GAAA,GAAAC,GAAA,UAAAC,EAAA,MAAA;AAEF,gBAAAC,IAAAD,EAAA;AACA,iBAAAV,EAAA,MAAA,QAAA,GAAAW,EAAA,cAAA,IAAA,CAAA,MACAX,EAAA,MAAA,SAAA,GAAAW,EAAA,eAAA,IAAA,CAAA,MACAX,EAAA,MAAA,eAAAE,EAAAS,CAAA,GACA,EAAA,GAAAH,GAAA,GAAAC,EAAA;AAAA,QAAc;AAAA,MAClB;AAAA,IACJ;;;;;;;;;;;;;;;;ACzDR,IAAAG,IAAA;AAEA,MAAAC,IAAA;AAAA,EACA,eAAA;AACA,SAAA,OAAAD,EAAA,SAAA,GACAA,KAAA;AAAA,EACA;AACA;;;;;;;;;;;;;;;;;;;;;;GC4QIE,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAzNAC,IAAA,EAAA,UAAA,SAAA,GAmGA,EAAA,GAAAC,EAAA,IAAAC,EAAA,GAmBAC,IAAAC,EAAA,OAAA;AAAA,MAA6D,OAAAH,EAAA,UAAA;AAAA,MACtC,OAAA,MAAAI,EAAA,QAAA;AAAA,IACO,EAAA,GAG9BC,IAAAF,EAAA,OAAA;AAAA,MAA8D,OAAAH,EAAA,WAAA;AAAA,MACtC,OAAA,MAAAI,EAAA,MAAA;AAAA,IACI,EAAA,GAG5BE,IAAAH,EAAA,OAAA;AAAA,MAA6D,OAAAH,EAAA,MAAA;AAAA,MAC1C,OAAA,MAAAI,EAAA,MAAA;AAAA,IACS,EAAA,GAG5BG,IAAAJ,EAAA,OAAA;AAAA,MAA+D,OAAAH,EAAA,QAAA;AAAA,MAC1C,OAAA,MAAAI,EAAA,QAAA;AAAA,IACS,EAAA,GAG9BI,IAAAL,EAAA,OAAA;AAAA,MAA2D,OAAAH,EAAA,IAAA;AAAA,MAC1C,OAAA,MAAAI,EAAA,QAAA;AAAA,IACa,EAAA,GAG9BK,IAAAzB,EAAA,EAAA,GACA0B,IAAA1B,EAAA,EAAA,GAEA2B,IAAAR,EAAA,MAAA;;AACI,aAAAS,EAAAC,EAAA,aAAA,MACIC,IAAAD,EAAA,cAAA,UAAA,gBAAAC,EAAA,QAAAD,EAAA,cAAA,QAEJA,EAAA,cAAA,OAAAA,EAAA;AAAA,IAAkD,CAAA,GAGtDE,IAAAZ,EAAA,MAAAU,EAAA,SAAA,CAAA,GACAG,IAAAb,EAAA,MAAAU,EAAA,SAAAA,EAAA,UAAA,GAEAI,IAAAd,EAAA,MAAA,CAAAY,EAAA,KAAA,GAEAG,IAAAf,EAAA,MAAA;AAAA,MAAiD;AAAA,QAC7C,MAAAH,EAAA,aAAA;AAAA,QACyB,SAAA,MAAAI,EAAA,SAAA;AAAA,QACQ,MAAAe;AAAA,MACvB;AAAA,MACV,GAAAH,EAAA,QAAA,CAAA,IAAA;AAAA,QAGM;AAAA,UACI,MAAA;AAAA,UACU,SAAA,MAAAZ,EAAA,QAAA;AAAA,UACsB,MAAAgB;AAAA,QACtB;AAAA,MACV;AAAA,IACJ,CAAA,GAGVC,IAAAlB,EAAA,MAAA;AACI,UAAAmB;AACA,MAAAP,EAAA,QACIO,IAAAT,EAAA,SAAAL,EAAA,QAAAH,EAAA,QAA8DW,EAAA,QAE9DM,IAAAf,EAAA,QAEAe,IAAAhB,EAAA;AAGJ,YAAAiB,IAAA,CAAAD,CAAA;AACA,aAAAP,EAAA,SAAA,CAAAF,EAAA,SACIU,EAAA,KAAArB,EAAA,KAAA,IAA8BW,EAAA,UAE9BU,EAAA,KAAAV,EAAA,MAAA,GAGJU;AAAA,IAAO,CAAA;AAGX,WAAAC;AAAA,MAAA,MAAAX,EAAA;AAAA,MACgB,OAAAY,MAAA;;AAER,QAAAA,OAAAX,IAAAH,EAAA,UAAA,QAAAG,EAAA,qBACIY,IAAAf,EAAA,UAAA,QAAAe,EAAA;AAAA,UAAqBb,EAAA,iBAAA,OAAAA,EAAA,gBAAAd;AAAA,WAKrB,MAAA4B,EAAA,IAGJlB,EAAA,QAAAgB,GACAf,EAAA,QAAAe;AAAA,MAA2B;AAAA,MAC/B,EAAA,WAAA,GAAA;AAAA,IACkB;;;;;;;;;;;;;;;;;;uBClJtBG,KAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAxEAC,IAAA7C,EAAA6B,EAAA,SAAA,CAAA,GAEAiB,IAAA3B,EAAA,MAAAU,EAAA,MAAA,SAAA,CAAA,GACAkB,IAAA5B,EAAA,MAAA2B,EAAA,UAAA,CAAA;AAEA,aAAAE,EAAAC,GAAAC,GAAA;AACI,aAAA;AAAA;AAAA,QAAO,eAAAD,EAAA;AAAA,QAEiB,OAAAA,EAAA;AAAA,QACR,OAAAA,EAAA;AAAA,QACA,MAAAC;AAAA,QACN,YAAAJ,EAAA;AAAA,QACiB,QAAAG,EAAA;AAAA,QACV,eAAApB,EAAA;AAAA;AAAA,QACQ,QAAAqB,MAAAL,EAAA;AAAA,QAGS,QAAAE,EAAA;AAAA,QACL,UAAAE,EAAA;AAAA,MACV;AAAA,IACnB;AAGJ,WAAAT,EAAAK,GAAA,CAAAI,MAAA;AACI,MAAA7B,EAAA,gBAAA6B,CAAA;AAAA,IAAyB,CAAA,GAG7BT;AAAA,MAAA,MAAAX,EAAA;AAAA,MACgB,CAAAsB,MAAA;AAER,QAAAA,KAAA,MAAAA,KAAAL,EAAA,UACID,EAAA,QAAAM;AAAA,MACJ;AAAA,IACJ;;;;;;;;;;;;;;;;;;;;;;;","x_google_ignoreList":[1]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"typography.CdCYtxYj.js","sources":["../../../core/src/components/typography/typography.types.ts","../../src/utils/ts/dev-environment.ts","../../src/utils/ts/print-development-warning.ts","../../src/utils/ts/deprecate.ts","../../src/components/typography/typography.vue"],"sourcesContent":["/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoTypographyVariant {\n CAPTION = 'caption',\n BODY = 'body',\n /** @deprecated Use \"TITLE\" instead. */\n SUBTITLE = 'subtitle',\n TITLE = 'title',\n}\n\nexport enum BentoTypographyModifier {\n WIDE = 'wide',\n STRONGER = 'stronger',\n STRONGER_WIDE = 'stronger-wide',\n STRONGEST = 'strongest',\n STRONGEST_WIDE = 'strongest-wide',\n MEDIUM = 'm',\n LARGE = 'l',\n MOBILE = 'mobile',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoTypographyElement {\n H1 = 'h1',\n H2 = 'h2',\n H3 = 'h3',\n H4 = 'h4',\n H5 = 'h5',\n H6 = 'h6',\n DIV = 'div',\n PARAGRAPH = 'p',\n SPAN = 'span',\n}\n","const DEV_ENVIROMENT_NAMES = ['development', 'DEVELOPMENT', 'dev', 'DEV'];\n\nexport const isDevelopmentEnviroment = () => DEV_ENVIROMENT_NAMES.includes(process.env.NODE_ENV);\n","import { isDevelopmentEnviroment } from '@/utils/ts/dev-environment';\n\n/**\n * Prints console.warn messages in development mode only.\n *\n * @see console.warn for what parameters you can use\n */\n\nexport function printDevelopmentWarning(...args: Parameters<typeof console.warn>) {\n if (isDevelopmentEnviroment()) {\n // eslint-disable-next-line no-console\n console.warn(...args);\n }\n}\n","import { printDevelopmentWarning } from './print-development-warning';\n\nconst DEPRECATION_STYLES = ['color: red', 'background: yellow'].join(';');\nconst shownMessages = new Set<string>();\n\n/**\n * Informs users about the deprecations in development mode only.\n *\n * @param title Indicates what is being deprecated.\n * @param deprecationMessage How to avoid the deprecation by giving an example of the alternatives. Backticks can be used to multi-line the message.\n * @param toBeRemovedInVersion The version it will be removed. Must be in X.Y.Z format.\n */\nexport function deprecate(title: string, deprecationMessage: string, toBeRemovedInVersion: string) {\n // If the message is already showing, don't show it again\n if (!shownMessages.has(title)) {\n printDevelopmentWarning(`%cDEPRECATED:\\x1b[0m ${title}`, DEPRECATION_STYLES);\n // Format multi-line descriptions with the backtick\n printDevelopmentWarning(`${deprecationMessage.replaceAll(' ', '').trim()}`);\n printDevelopmentWarning(`To be removed in: %c${toBeRemovedInVersion}`, DEPRECATION_STYLES);\n shownMessages.add(title);\n }\n}\n\n/**\n * Reset shownMessages set\n *\n * @deprecated For testing purposes only. Do not use.\n */\nexport function resetShownMessages() {\n shownMessages.clear();\n}\n","<template>\n <component :is=\"el\" class=\"b-typography\" :class=\"conditionalClasses\" data-testid=\"typography\">\n <slot />\n </component>\n</template>\n\n<script setup lang=\"ts\">\n import { computed } from 'vue';\n import {\n BentoTypographyElement,\n BentoTypographyModifier,\n BentoTypographyVariant,\n } from '@/core/components/typography/typography.types';\n import { deprecate } from '@/utils/ts/deprecate';\n\n const props = withDefaults(\n defineProps<{\n /**\n * Sets the HTML DOM element.\n * @values h1, h2, h3, h4, h5, h6, div, p, span\n */\n el?: BentoTypographyElement | `${BentoTypographyElement}`;\n\n /**\n * Adds the large class modifier.\n * Applicable to the Title variant.\n */\n large?: boolean;\n\n /**\n * Adds the medium class modifier.\n * Applicable to the Title variant.\n */\n medium?: boolean;\n\n /**\n * Adds the stronger class modifier.\n * Applicable to Caption, Body and Subtitle variants.\n */\n stronger?: boolean;\n\n /**\n * Adds the strongest class modifier.\n * Applicable to Caption, Body and Subtitle variants.\n */\n strongest?: boolean;\n\n /**\n * Sets the type of typography variant.\n * @values caption, body, title.\n */\n variant?: BentoTypographyVariant | `${BentoTypographyVariant}`;\n\n /**\n * Adds the medium class modifier.\n * Applicable to tje Body variant.\n */\n wide?: boolean;\n }>(),\n {\n el: BentoTypographyElement.PARAGRAPH,\n large: false,\n medium: false,\n stronger: false,\n strongest: false,\n variant: BentoTypographyVariant.BODY,\n wide: false,\n }\n );\n\n if (props.variant === BentoTypographyVariant.SUBTITLE) {\n deprecate(\n 'BentoTypography \"subtitle\" variant (BentoTypographyVariant.SUBTITLE)',\n `Use the \"title\" or \"BentoTypographyVariant.TITLE\" variant and (optionally) combine it with a size property. e.g. medium / large.\n <bento-typography :variant=\"BentoTypographyVariant.TITLE\" medium>`,\n '2.0.0'\n );\n }\n\n const conditionalClasses = computed(() => ({\n // Caption\n [`b-typography--${BentoTypographyVariant.CAPTION}`]: props.variant === BentoTypographyVariant.CAPTION,\n [`b-typography--${BentoTypographyVariant.CAPTION}-${BentoTypographyModifier.WIDE}`]:\n props.variant === BentoTypographyVariant.CAPTION && props.wide,\n [`b-typography--${BentoTypographyVariant.CAPTION}-${BentoTypographyModifier.STRONGER}`]:\n props.variant === BentoTypographyVariant.CAPTION && props.stronger,\n\n // Body\n [`b-typography--${BentoTypographyVariant.BODY}`]: props.variant === BentoTypographyVariant.BODY,\n [`b-typography--${BentoTypographyVariant.BODY}-${BentoTypographyModifier.WIDE}`]:\n props.variant === BentoTypographyVariant.BODY && props.wide,\n [`b-typography--${BentoTypographyVariant.BODY}-${BentoTypographyModifier.STRONGER}`]:\n props.variant === BentoTypographyVariant.BODY && props.stronger,\n [`b-typography--${BentoTypographyVariant.BODY}-${BentoTypographyModifier.STRONGEST}`]:\n props.variant === BentoTypographyVariant.BODY && props.strongest,\n\n // Subtitle\n [`b-typography--${BentoTypographyVariant.SUBTITLE}`]: props.variant === BentoTypographyVariant.SUBTITLE,\n [`b-typography--${BentoTypographyVariant.SUBTITLE}-${BentoTypographyModifier.STRONGER}`]:\n props.variant === BentoTypographyVariant.SUBTITLE && props.stronger,\n\n // Title\n [`b-typography--${BentoTypographyVariant.TITLE}`]:\n props.variant === BentoTypographyVariant.TITLE && !props.medium && !props.large,\n [`b-typography--${BentoTypographyVariant.TITLE}-${BentoTypographyModifier.MEDIUM}`]:\n props.variant === BentoTypographyVariant.TITLE && props.medium,\n [`b-typography--${BentoTypographyVariant.TITLE}-${BentoTypographyModifier.LARGE}`]:\n props.variant === BentoTypographyVariant.TITLE && props.large,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * The Typography component makes it easy to apply a default set of font weights, sizes and other text styles\n * easily to text. The variants and properties match with those found in Figma.\n *\n * For example, seeing text with the typography styling of\n *\n * @example\n * import { BentoTypography } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoTypography },\n * template: `\n * <bento-typography>\n * ... text content\n * </bento-typography>\n * `\n * }\n */\n export default {\n name: 'bento-typography',\n inheritAttrs: true,\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"@/core/components/typography/typography.scss\" />\n<style lang=\"scss\">\n // Reset preset browser margin on all elements but allow for it to be overriden\n .b-typography {\n margin: 0;\n }\n</style>\n"],"names":["BentoTypographyVariant","BentoTypographyVariant2","BentoTypographyModifier","BentoTypographyModifier2","BentoTypographyElement","BentoTypographyElement2","DEV_ENVIROMENT_NAMES","isDevelopmentEnviroment","printDevelopmentWarning","args","DEPRECATION_STYLES","shownMessages","deprecate","title","deprecationMessage","toBeRemovedInVersion","__default__","props","conditionalClasses","computed"],"mappings":"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"}