@adyen/bento-vue3 1.26.0 → 1.27.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 (248) hide show
  1. package/dist/@types/components.d.ts +4 -0
  2. package/dist/@types/packages/core/src/utils/ts/storybook.d.ts +12 -0
  3. package/dist/@types/packages/vue2/src/components/button/components/button-actions/button-actions.types.d.ts +1 -0
  4. package/dist/@types/packages/vue2/src/components/button/components/button-actions/button-actions.vue.d.ts +1 -1
  5. package/dist/@types/packages/vue2/src/components/code-snippet/code-snippet.types.d.ts +2 -1
  6. package/dist/@types/packages/vue2/src/components/code-snippet/code-snippet.vue.d.ts +3 -3
  7. package/dist/@types/packages/vue2/src/components/code-snippet/utils/get-lang-loader.d.ts +2 -1
  8. package/dist/@types/packages/vue2/src/components/data-grid/composables/use-calculate-column-width/use-calculate-column-width.d.ts +1 -0
  9. package/dist/@types/packages/vue2/src/components/data-grid/composables/use-column-hovering/use-column-hovering.d.ts +1 -0
  10. package/dist/@types/packages/vue2/src/components/data-grid/composables/use-column-reorderer/use-column-reorderer.d.ts +2 -0
  11. package/dist/@types/packages/vue2/src/components/data-grid/composables/use-config-settings/use-config-settings.d.ts +1 -0
  12. package/dist/@types/packages/vue2/src/components/data-grid/composables/use-resizer.d.ts +1 -0
  13. package/dist/@types/packages/vue2/src/components/data-grid/data-grid.types.d.ts +2 -1
  14. package/dist/@types/packages/vue2/src/components/data-grid/data-grid.vue.d.ts +15 -0
  15. package/dist/@types/packages/vue2/src/components/dropdown/components/dropdown-options-container/dropdown-options-container.vue.d.ts +1 -18
  16. package/dist/@types/packages/vue2/src/components/filter-bar/components/all-filters-modal/all-filters-modal.vue.d.ts +12 -0
  17. package/dist/@types/packages/vue2/src/components/structured-list/components/structered-list-item/structured-list-item.vue.d.ts +36 -54
  18. package/dist/@types/packages/vue2/src/components/structured-list/structured-list.vue.d.ts +27 -22
  19. package/dist/@types/packages/vue2/src/components/tabs/tabs.vue.d.ts +76 -1
  20. package/dist/@types/packages/vue2/src/components/tutorial/tutorial.vue.d.ts +21 -2
  21. package/dist/@types/packages/vue2/src/index.d.ts +1 -0
  22. package/dist/@types/packages/vue2/src/templates/dashboard-template/components/dashboard-section/dashboard-section.vue.d.ts +78 -0
  23. package/dist/@types/packages/vue2/src/templates/dashboard-template/dashboard-template.types.d.ts +8 -0
  24. package/dist/@types/packages/vue2/src/templates/dashboard-template/dashboard-template.vue.d.ts +103 -0
  25. package/dist/@types/packages/vue2/src/templates/dashboard-template/index.d.ts +3 -0
  26. package/dist/@types/packages/vue2/src/utils/ts/storybook.d.ts +1 -12
  27. package/dist/accordion.js +3 -3
  28. package/dist/action-bar.js +71 -155
  29. package/dist/action-bar.js.map +1 -1
  30. package/dist/alert.js +6 -6
  31. package/dist/assets/base-modal.css +1 -1
  32. package/dist/assets/button-actions.css +1 -1
  33. package/dist/assets/button.css +1 -1
  34. package/dist/assets/dialog-page.css +1 -1
  35. package/dist/assets/dropdown.css +1 -1
  36. package/dist/assets/index.css +1 -1
  37. package/dist/assets/index10.css +1 -1
  38. package/dist/assets/index11.css +1 -1
  39. package/dist/assets/index13.css +1 -1
  40. package/dist/assets/index14.css +1 -1
  41. package/dist/assets/index15.css +1 -1
  42. package/dist/assets/index16.css +1 -1
  43. package/dist/assets/index17.css +1 -1
  44. package/dist/assets/index18.css +1 -1
  45. package/dist/assets/index19.css +1 -1
  46. package/dist/assets/index2.css +1 -1
  47. package/dist/assets/index20.css +1 -1
  48. package/dist/assets/index21.css +1 -1
  49. package/dist/assets/index22.css +1 -1
  50. package/dist/assets/index23.css +1 -1
  51. package/dist/assets/index24.css +1 -1
  52. package/dist/assets/index25.css +1 -1
  53. package/dist/assets/index26.css +1 -1
  54. package/dist/assets/index27.css +1 -1
  55. package/dist/assets/index28.css +1 -1
  56. package/dist/assets/index29.css +1 -1
  57. package/dist/assets/index3.css +1 -1
  58. package/dist/assets/index30.css +1 -1
  59. package/dist/assets/index31.css +1 -1
  60. package/dist/assets/index32.css +1 -1
  61. package/dist/assets/index33.css +1 -1
  62. package/dist/assets/index34.css +1 -1
  63. package/dist/assets/index35.css +1 -1
  64. package/dist/assets/index37.css +1 -1
  65. package/dist/assets/index38.css +1 -1
  66. package/dist/assets/index39.css +1 -1
  67. package/dist/assets/index4.css +1 -1
  68. package/dist/assets/index40.css +1 -1
  69. package/dist/assets/index41.css +1 -1
  70. package/dist/assets/index42.css +1 -1
  71. package/dist/assets/index43.css +1 -1
  72. package/dist/assets/index44.css +1 -1
  73. package/dist/assets/index45.css +1 -1
  74. package/dist/assets/index46.css +1 -1
  75. package/dist/assets/index47.css +1 -1
  76. package/dist/assets/index48.css +1 -1
  77. package/dist/assets/index49.css +1 -0
  78. package/dist/assets/index5.css +1 -1
  79. package/dist/assets/index6.css +1 -1
  80. package/dist/assets/index7.css +1 -1
  81. package/dist/assets/index8.css +1 -1
  82. package/dist/assets/index9.css +1 -1
  83. package/dist/assets/use-cached-selected-values.css +1 -1
  84. package/dist/avatar-image.js +1 -1
  85. package/dist/badge.js +1 -1
  86. package/dist/button.js +4 -4
  87. package/dist/card.js +4 -4
  88. package/dist/checkbox.js +6 -6
  89. package/dist/chunks/{base-button.e84acf30.js → base-button.a0140a4c.js} +2 -2
  90. package/dist/chunks/{base-button.e84acf30.js.map → base-button.a0140a4c.js.map} +1 -1
  91. package/dist/chunks/{base-modal.29e062d0.js → base-modal.4102f69d.js} +7 -7
  92. package/dist/chunks/{base-modal.29e062d0.js.map → base-modal.4102f69d.js.map} +1 -1
  93. package/dist/chunks/{button-actions-with-menu.7fce47a2.js → button-actions-with-menu.4f311411.js} +4 -4
  94. package/dist/chunks/{button-actions-with-menu.7fce47a2.js.map → button-actions-with-menu.4f311411.js.map} +1 -1
  95. package/dist/chunks/{button-actions.642b37de.js → button-actions.82163994.js} +42 -40
  96. package/dist/chunks/button-actions.82163994.js.map +1 -0
  97. package/dist/chunks/{button.60dad578.js → button.ae4760cd.js} +27 -26
  98. package/dist/chunks/button.ae4760cd.js.map +1 -0
  99. package/dist/chunks/{calendar.f38cdab9.js → calendar.a9c5a68c.js} +6 -6
  100. package/dist/chunks/{calendar.f38cdab9.js.map → calendar.a9c5a68c.js.map} +1 -1
  101. package/dist/chunks/{checkbox-input.ab758a81.js → checkbox-input.99336948.js} +2 -2
  102. package/dist/chunks/{checkbox-input.ab758a81.js.map → checkbox-input.99336948.js.map} +1 -1
  103. package/dist/chunks/{checkbox.f55ee3a5.js → checkbox.9c30c07b.js} +4 -4
  104. package/dist/chunks/{checkbox.f55ee3a5.js.map → checkbox.9c30c07b.js.map} +1 -1
  105. package/dist/chunks/{checkmark-circle-fill.f3a69c6a.js → checkmark-circle-fill.c45a999d.js} +2 -2
  106. package/dist/chunks/{checkmark-circle-fill.f3a69c6a.js.map → checkmark-circle-fill.c45a999d.js.map} +1 -1
  107. package/dist/chunks/{checkmark-small.d7e31e5e.js → checkmark-small.c79220d9.js} +2 -2
  108. package/dist/chunks/{checkmark-small.d7e31e5e.js.map → checkmark-small.c79220d9.js.map} +1 -1
  109. package/dist/chunks/{chevron-left.963d35e9.js → chevron-left.4ee92950.js} +2 -2
  110. package/dist/chunks/{chevron-left.963d35e9.js.map → chevron-left.4ee92950.js.map} +1 -1
  111. package/dist/chunks/{chevron-up.05ca20db.js → chevron-up.638a9f34.js} +2 -2
  112. package/dist/chunks/{chevron-up.05ca20db.js.map → chevron-up.638a9f34.js.map} +1 -1
  113. package/dist/chunks/{controls-group.9e0f17b2.js → controls-group.8357e3fd.js} +3 -3
  114. package/dist/chunks/{controls-group.9e0f17b2.js.map → controls-group.8357e3fd.js.map} +1 -1
  115. package/dist/chunks/{copy.852d4cb8.js → copy.60ee6ac3.js} +4 -4
  116. package/dist/chunks/{copy.852d4cb8.js.map → copy.60ee6ac3.js.map} +1 -1
  117. package/dist/chunks/{cross-circle-fill.81925c7f.js → cross-circle-fill.1abec1a2.js} +2 -2
  118. package/dist/chunks/{cross-circle-fill.81925c7f.js.map → cross-circle-fill.1abec1a2.js.map} +1 -1
  119. package/dist/chunks/{cross-small.9bc6a02f.js → cross-small.b85406fe.js} +2 -2
  120. package/dist/chunks/{cross-small.9bc6a02f.js.map → cross-small.b85406fe.js.map} +1 -1
  121. package/dist/chunks/{cross.a60533f6.js → cross.26509efc.js} +2 -2
  122. package/dist/chunks/{cross.a60533f6.js.map → cross.26509efc.js.map} +1 -1
  123. package/dist/chunks/{dialog-page.ea67bb14.js → dialog-page.cb6ce9b6.js} +3 -3
  124. package/dist/chunks/{dialog-page.ea67bb14.js.map → dialog-page.cb6ce9b6.js.map} +1 -1
  125. package/dist/chunks/{dropdown-default-textbox.ad5063c2.js → dropdown-default-textbox.cda0798f.js} +5 -5
  126. package/dist/chunks/{dropdown-default-textbox.ad5063c2.js.map → dropdown-default-textbox.cda0798f.js.map} +1 -1
  127. package/dist/chunks/{dropdown.d8587f36.js → dropdown.0ae3b842.js} +122 -132
  128. package/dist/chunks/dropdown.0ae3b842.js.map +1 -0
  129. package/dist/chunks/{error-message.3fb5573a.js → error-message.d2bdeb80.js} +3 -3
  130. package/dist/chunks/{error-message.3fb5573a.js.map → error-message.d2bdeb80.js.map} +1 -1
  131. package/dist/chunks/{events.58c00e6d.js → events.f14a214b.js} +5 -5
  132. package/dist/chunks/events.f14a214b.js.map +1 -0
  133. package/dist/chunks/{fixed-scroller.59aefd1b.js → fixed-scroller.7b42cb1e.js} +3 -3
  134. package/dist/chunks/{fixed-scroller.59aefd1b.js.map → fixed-scroller.7b42cb1e.js.map} +1 -1
  135. package/dist/chunks/{footer-actions.89e68269.js → footer-actions.64f6f5d8.js} +4 -4
  136. package/dist/chunks/{footer-actions.89e68269.js.map → footer-actions.64f6f5d8.js.map} +1 -1
  137. package/dist/chunks/{index.96cd0d4c.js → index.2d7b4511.js} +15 -15
  138. package/dist/chunks/{index.96cd0d4c.js.map → index.2d7b4511.js.map} +1 -1
  139. package/dist/chunks/index.2fcd1233.js +103 -0
  140. package/dist/chunks/index.2fcd1233.js.map +1 -0
  141. package/dist/chunks/{index.9bf04b01.js → index.6295e754.js} +3 -3
  142. package/dist/chunks/{index.9bf04b01.js.map → index.6295e754.js.map} +1 -1
  143. package/dist/chunks/{index.030c1dd7.js → index.6bb6f38c.js} +7 -7
  144. package/dist/chunks/{index.030c1dd7.js.map → index.6bb6f38c.js.map} +1 -1
  145. package/dist/chunks/{index.ba3396d3.js → index.8aa536a8.js} +3 -3
  146. package/dist/chunks/{index.ba3396d3.js.map → index.8aa536a8.js.map} +1 -1
  147. package/dist/chunks/{index.8be283d5.js → index.9d7fb316.js} +2 -2
  148. package/dist/chunks/{index.8be283d5.js.map → index.9d7fb316.js.map} +1 -1
  149. package/dist/chunks/{index.5bdebf9d.js → index.a001a0a8.js} +7 -7
  150. package/dist/chunks/{index.5bdebf9d.js.map → index.a001a0a8.js.map} +1 -1
  151. package/dist/chunks/{index.07122048.js → index.b18c78d6.js} +2 -2
  152. package/dist/chunks/{index.07122048.js.map → index.b18c78d6.js.map} +1 -1
  153. package/dist/chunks/{index.6e0e9d21.js → index.eb38a6c4.js} +3 -3
  154. package/dist/chunks/{index.6e0e9d21.js.map → index.eb38a6c4.js.map} +1 -1
  155. package/dist/chunks/{index.a3d60e4f.js → index.ee15db35.js} +2 -2
  156. package/dist/chunks/{index.a3d60e4f.js.map → index.ee15db35.js.map} +1 -1
  157. package/dist/chunks/{index.146f967e.js → index.f9d081d2.js} +2 -2
  158. package/dist/chunks/{index.146f967e.js.map → index.f9d081d2.js.map} +1 -1
  159. package/dist/chunks/index.fedbb4c2.js +125 -0
  160. package/dist/chunks/index.fedbb4c2.js.map +1 -0
  161. package/dist/chunks/{info.205b4496.js → info.550f9511.js} +2 -2
  162. package/dist/chunks/{info.205b4496.js.map → info.550f9511.js.map} +1 -1
  163. package/dist/chunks/{keyboard-navigation.ca47dfa8.js → keyboard-navigation.bbc3d15c.js} +2 -2
  164. package/dist/chunks/{keyboard-navigation.ca47dfa8.js.map → keyboard-navigation.bbc3d15c.js.map} +1 -1
  165. package/dist/chunks/{listbox-option-tag.b6182b2e.js → listbox-option-tag.2aea037c.js} +3 -3
  166. package/dist/chunks/{listbox-option-tag.b6182b2e.js.map → listbox-option-tag.2aea037c.js.map} +1 -1
  167. package/dist/chunks/{loading-button.0391ad8b.js → loading-button.6b81b546.js} +4 -4
  168. package/dist/chunks/{loading-button.0391ad8b.js.map → loading-button.6b81b546.js.map} +1 -1
  169. package/dist/chunks/{payment-method.31a68b9b.js → payment-method.d5595a7c.js} +2 -2
  170. package/dist/chunks/{payment-method.31a68b9b.js.map → payment-method.d5595a7c.js.map} +1 -1
  171. package/dist/chunks/{refresh.53691839.js → refresh.bd60f6a8.js} +2 -2
  172. package/dist/chunks/{refresh.53691839.js.map → refresh.bd60f6a8.js.map} +1 -1
  173. package/dist/chunks/{search.4e4ee4dd.js → search.ade93bda.js} +2 -2
  174. package/dist/chunks/{search.4e4ee4dd.js.map → search.ade93bda.js.map} +1 -1
  175. package/dist/chunks/{tooltip.1084d92b.js → tooltip.36172265.js} +4 -4
  176. package/dist/chunks/{tooltip.1084d92b.js.map → tooltip.36172265.js.map} +1 -1
  177. package/dist/chunks/{use-bento-toast-controller.98d8613c.js → use-bento-toast-controller.3dc4e113.js} +2 -2
  178. package/dist/chunks/{use-bento-toast-controller.98d8613c.js.map → use-bento-toast-controller.3dc4e113.js.map} +1 -1
  179. package/dist/chunks/{use-cached-selected-values.852aeafe.js → use-cached-selected-values.3c312296.js} +396 -375
  180. package/dist/chunks/use-cached-selected-values.3c312296.js.map +1 -0
  181. package/dist/code-snippet.js +137 -135
  182. package/dist/code-snippet.js.map +1 -1
  183. package/dist/country.js +2 -2
  184. package/dist/currency.js +1 -1
  185. package/dist/dashboard-template.js +169 -0
  186. package/dist/dashboard-template.js.map +1 -0
  187. package/dist/data-grid-template.js +1 -1
  188. package/dist/data-grid.js +52 -44
  189. package/dist/data-grid.js.map +1 -1
  190. package/dist/date-picker.js +19 -19
  191. package/dist/date-picker.js.map +1 -1
  192. package/dist/date-range-picker.js +2 -2
  193. package/dist/date.js +1 -1
  194. package/dist/divider.js +1 -1
  195. package/dist/dropdown.js +7 -7
  196. package/dist/empty-state.js +3 -3
  197. package/dist/filter-bar.js +85 -83
  198. package/dist/filter-bar.js.map +1 -1
  199. package/dist/focus-trap.js +1 -1
  200. package/dist/form-layout.js +2 -2
  201. package/dist/header.js +5 -5
  202. package/dist/index.js +66 -63
  203. package/dist/index.js.map +1 -1
  204. package/dist/info-icon.js +4 -4
  205. package/dist/input-field.js +4 -4
  206. package/dist/internal.js +8 -8
  207. package/dist/link.js +1 -1
  208. package/dist/loading-indicator.js +1 -1
  209. package/dist/menu.js +1 -1
  210. package/dist/modal-fullscreen.js +7 -7
  211. package/dist/modal.js +6 -6
  212. package/dist/pagination.js +4 -4
  213. package/dist/payment-method.js +1 -1
  214. package/dist/popover.js +1 -1
  215. package/dist/popper-container.js +1 -1
  216. package/dist/radio-group.js +4 -4
  217. package/dist/search-bar.js +4 -4
  218. package/dist/secondary-nav.js +2 -2
  219. package/dist/segmented-control.js +66 -72
  220. package/dist/segmented-control.js.map +1 -1
  221. package/dist/selection-card.js +5 -5
  222. package/dist/sidepanel.js +7 -7
  223. package/dist/status.js +2 -2
  224. package/dist/stepper.js +5 -5
  225. package/dist/structured-list.js +1 -1
  226. package/dist/summary-grid.js +3 -3
  227. package/dist/tabs.js +80 -78
  228. package/dist/tabs.js.map +1 -1
  229. package/dist/tag.js +3 -3
  230. package/dist/textarea.js +4 -4
  231. package/dist/timeline.js +7 -7
  232. package/dist/toast.js +4 -4
  233. package/dist/toggle.js +3 -3
  234. package/dist/tutorial.js +125 -110
  235. package/dist/tutorial.js.map +1 -1
  236. package/dist/typography.js +1 -1
  237. package/dist/web-types.json +1 -1
  238. package/package.json +8 -6
  239. package/dist/chunks/button-actions.642b37de.js.map +0 -1
  240. package/dist/chunks/button.60dad578.js.map +0 -1
  241. package/dist/chunks/checkmark.87919b24.js +0 -29
  242. package/dist/chunks/checkmark.87919b24.js.map +0 -1
  243. package/dist/chunks/dropdown.d8587f36.js.map +0 -1
  244. package/dist/chunks/events.58c00e6d.js.map +0 -1
  245. package/dist/chunks/index.c8ffede1.js +0 -168
  246. package/dist/chunks/index.c8ffede1.js.map +0 -1
  247. package/dist/chunks/use-cached-selected-values.852aeafe.js.map +0 -1
  248. /package/dist/assets/{checkmark-circle-fill.css → cross.css} +0 -0
@@ -1,6 +1,6 @@
1
1
  import { openBlock as o, createElementBlock as s, mergeProps as n, toDisplayString as l, createCommentVNode as C, createElementVNode as t } from "vue";
2
2
  import { _ } from "./_plugin-vue_export-helper.dad06003.js";
3
- import "../assets/checkmark-circle-fill.css";
3
+ import "../assets/cross.css";
4
4
  let i = 0;
5
5
  const r = {
6
6
  beforeCreate() {
@@ -41,4 +41,4 @@ const k = /* @__PURE__ */ _(r, [["render", V]]);
41
41
  export {
42
42
  k as I
43
43
  };
44
- //# sourceMappingURL=info.205b4496.js.map
44
+ //# sourceMappingURL=info.550f9511.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"info.205b4496.js","sources":["../../../../node_modules/@adyen/ui-assets-icons-16/dist/vue/info.vue"],"sourcesContent":["\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 fill=\"#00112C\" :clip-path=\"'url(#uia-icons-16-info__a' + uuid + ')'\"><path d=\"M8.58147 5.05557C8.69135 4.89112 8.75 4.69778 8.75 4.5C8.75 4.23478 8.64464 3.98043 8.45711 3.79289C8.26957 3.60536 8.01522 3.5 7.75 3.5C7.55222 3.5 7.35888 3.55865 7.19443 3.66853C7.02998 3.77841 6.90181 3.93459 6.82612 4.11732C6.75043 4.30004 6.73063 4.50111 6.76921 4.69509C6.8078 4.88907 6.90304 5.06725 7.04289 5.20711C7.18275 5.34696 7.36093 5.4422 7.55491 5.48079C7.74889 5.51937 7.94996 5.49957 8.13268 5.42388C8.31541 5.34819 8.47159 5.22002 8.58147 5.05557Z\"/><path d=\"M6.25 6.25H8.75V10.25H9.75V11.75H6.25V10.25H7.25V7.75H6.25V6.25Z\"/><path d=\"M9.51195 0.398918C8.0086 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.3012 11.5338 12.5001 12.5099 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.52769C3.49007 3.49988 4.46619 2.6988 5.60823 2.22576Z\"/></g><defs><clipPath :id=\"'uia-icons-16-info__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"],"names":["uuid","openBlock","createElementBlock","mergeProps","_ctx","_hoisted_1","toDisplayString"],"mappings":";;;AAKI,IAAAA,IAAA;;EAGI,eAAA;8BAEIA,KAAA;AAAA;;;;;;EARqyD,OAAA;AAAA,EAAW,QAAA;AAAA,EAAY,MAAA;;;;;AAAp0D,SAAAC,EAAA,GAAAC,EAAA,OAAAC,EAAA,EAAA,MAAA,MAAA,GAAAC,EAAA,QAAA;AAAA,IAAgC,OAAA;AAAA,IAA2B,OAAA;AAAA,IAAmC,OAAA;AAAA,IAAW,QAAA;AAAA,IAAY,MAAA;AAAA;6BAAYH,EAAA,GAAAC,EAAA,SAAAG,GAAAC,EAAAF,EAAA,OAAA,WAAA,CAAA,GAAA,CAAA;;MAAsE,MAAA;AAAA,MAAgB,aAAA,8BAAAA,EAAA,OAAA;AAAA;;;QAA6iD,IAAA,yBAAAA,EAAA;AAAA;;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"info.550f9511.js","sources":["../../../../node_modules/@adyen/ui-assets-icons-16/dist/vue/info.vue"],"sourcesContent":["\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 fill=\"#00112C\" :clip-path=\"'url(#uia-icons-16-info__a' + uuid + ')'\"><path d=\"M8.58147 5.05557C8.69135 4.89112 8.75 4.69778 8.75 4.5C8.75 4.23478 8.64464 3.98043 8.45711 3.79289C8.26957 3.60536 8.01522 3.5 7.75 3.5C7.55222 3.5 7.35888 3.55865 7.19443 3.66853C7.02998 3.77841 6.90181 3.93459 6.82612 4.11732C6.75043 4.30004 6.73063 4.50111 6.76921 4.69509C6.8078 4.88907 6.90304 5.06725 7.04289 5.20711C7.18275 5.34696 7.36093 5.4422 7.55491 5.48079C7.74889 5.51937 7.94996 5.49957 8.13268 5.42388C8.31541 5.34819 8.47159 5.22002 8.58147 5.05557Z\"/><path d=\"M6.25 6.25H8.75V10.25H9.75V11.75H6.25V10.25H7.25V7.75H6.25V6.25Z\"/><path d=\"M9.51195 0.398918C8.0086 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.3012 11.5338 12.5001 12.5099 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.52769C3.49007 3.49988 4.46619 2.6988 5.60823 2.22576Z\"/></g><defs><clipPath :id=\"'uia-icons-16-info__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"],"names":["uuid","openBlock","createElementBlock","mergeProps","_ctx","_hoisted_1","toDisplayString"],"mappings":";;;AAKI,IAAAA,IAAA;;EAGI,eAAA;8BAEIA,KAAA;AAAA;;;;;;EARqyD,OAAA;AAAA,EAAW,QAAA;AAAA,EAAY,MAAA;;;;;AAAp0D,SAAAC,EAAA,GAAAC,EAAA,OAAAC,EAAA,EAAA,MAAA,MAAA,GAAAC,EAAA,QAAA;AAAA,IAAgC,OAAA;AAAA,IAA2B,OAAA;AAAA,IAAmC,OAAA;AAAA,IAAW,QAAA;AAAA,IAAY,MAAA;AAAA;6BAAYH,EAAA,GAAAC,EAAA,SAAAG,GAAAC,EAAAF,EAAA,OAAA,WAAA,CAAA,GAAA,CAAA;;MAAsE,MAAA;AAAA,MAAgB,aAAA,8BAAAA,EAAA,OAAA;AAAA;;;QAA6iD,IAAA,yBAAAA,EAAA;AAAA;;;;;","x_google_ignoreList":[0]}
@@ -1,4 +1,4 @@
1
- import { l as a } from "./events.58c00e6d.js";
1
+ import { l as a } from "./events.f14a214b.js";
2
2
  var t = /* @__PURE__ */ ((s) => (s.ARROW_DOWN = "keydown:arrow-down", s.ARROW_LEFT = "keydown:arrow-left", s.ARROW_RIGHT = "keydown:arrow-right", s.ARROW_UP = "keydown:arrow-up", s.END = "keydown:end", s.ENTER = "keydown:enter", s.ESCAPE = "keydown:escape", s.HOME = "keydown:home", s.PAGE_DOWN = "keydown:page-down", s.PAGE_UP = "keydown:page-up", s.SHIFT_PAGE_DOWN = "keydown:shift-page-down", s.SHIFT_PAGE_UP = "keydown:shift-page-up", s.TAB = "keydown:tab", s.SPACE = "keydown:space", s))(t || {});
3
3
  const d = (s) => (e) => {
4
4
  switch (e.key) {
@@ -62,4 +62,4 @@ export {
62
62
  t as B,
63
63
  r as a
64
64
  };
65
- //# sourceMappingURL=keyboard-navigation.ca47dfa8.js.map
65
+ //# sourceMappingURL=keyboard-navigation.bbc3d15c.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyboard-navigation.ca47dfa8.js","sources":["../../../vue2/src/types/keyboard-navigation.ts","../../../vue2/src/directives/keyboard-navigation/keyboard-navigation.ts"],"sourcesContent":["export enum BentoKeyboardNavigationKeyDownEvent {\n ARROW_DOWN = 'keydown:arrow-down',\n ARROW_LEFT = 'keydown:arrow-left',\n ARROW_RIGHT = 'keydown:arrow-right',\n ARROW_UP = 'keydown:arrow-up',\n END = 'keydown:end',\n ENTER = 'keydown:enter',\n ESCAPE = 'keydown:escape',\n HOME = 'keydown:home',\n PAGE_DOWN = 'keydown:page-down',\n PAGE_UP = 'keydown:page-up',\n SHIFT_PAGE_DOWN = 'keydown:shift-page-down',\n SHIFT_PAGE_UP = 'keydown:shift-page-up',\n TAB = 'keydown:tab',\n SPACE = 'keydown:space',\n}\n","import { listen } from '@/utils/ts/events';\nimport { Binding } from './keyboard-navigation.types';\nimport { BentoKeyboardNavigationKeyDownEvent } from '@/types';\nimport type { DirectiveHook } from 'vue';\n\nconst onKeyEvent = (el: Element) => (event: KeyboardEvent) => {\n switch (event.key) {\n case 'Esc':\n case 'Escape':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ESCAPE, { detail: event }));\n break;\n case 'Enter':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ENTER, { detail: event }));\n break;\n case 'Tab':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.TAB, { detail: event }));\n break;\n // Space\n case ' ':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.SPACE, { detail: event }));\n break;\n case 'Right':\n case 'ArrowRight':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ARROW_RIGHT, { detail: event }));\n break;\n case 'Left':\n case 'ArrowLeft':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ARROW_LEFT, { detail: event }));\n break;\n case 'Up':\n case 'ArrowUp':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ARROW_UP, { detail: event }));\n break;\n case 'Down':\n case 'ArrowDown':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ARROW_DOWN, { detail: event }));\n break;\n case 'PageUp':\n if (event.shiftKey) {\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.SHIFT_PAGE_UP, { detail: event }));\n } else {\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.PAGE_UP, { detail: event }));\n }\n break;\n case 'PageDown':\n if (event.shiftKey) {\n el.dispatchEvent(\n new CustomEvent(BentoKeyboardNavigationKeyDownEvent.SHIFT_PAGE_DOWN, { detail: event })\n );\n } else {\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.PAGE_DOWN, { detail: event }));\n }\n break;\n case 'Home':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.HOME, { detail: event }));\n break;\n case 'End':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.END, { detail: event }));\n break;\n default:\n break;\n }\n};\n\nconst bindDirective: DirectiveHook<Element> = (el, binding: Binding<undefined>) => {\n // Register the listener cleanup function\n // eslint-disable-next-line no-param-reassign, dot-notation\n binding['keyDownListener'] = listen(el, 'keydown', onKeyEvent(el));\n};\n\nconst unbindDirective: DirectiveHook<Element> = (_, binding: Binding<undefined>) => {\n if (binding.keyDownListener) {\n binding.keyDownListener();\n }\n};\n\nexport const BentoKeyboardNavigationDirective = {\n // Vue 2 Directive hooks\n bind: bindDirective,\n unbind: unbindDirective,\n // Vue 3 Directive hooks\n beforeMount: bindDirective,\n unmounted: unbindDirective,\n};\n"],"names":["BentoKeyboardNavigationKeyDownEvent","onKeyEvent","el","event","bindDirective","binding","listen","unbindDirective","_","BentoKeyboardNavigationDirective"],"mappings":";AAAY,IAAAA,sBAAAA,OACRA,EAAA,aAAa,sBACbA,EAAA,aAAa,sBACbA,EAAA,cAAc,uBACdA,EAAA,WAAW,oBACXA,EAAA,MAAM,eACNA,EAAA,QAAQ,iBACRA,EAAA,SAAS,kBACTA,EAAA,OAAO,gBACPA,EAAA,YAAY,qBACZA,EAAA,UAAU,mBACVA,EAAA,kBAAkB,2BAClBA,EAAA,gBAAgB,yBAChBA,EAAA,MAAM,eACNA,EAAA,QAAQ,iBAdAA,IAAAA,KAAA,CAAA,CAAA;ACKZ,MAAMC,IAAa,CAACC,MAAgB,CAACC,MAAyB;AAC1D,UAAQA,EAAM,KAAK;AAAA,IACf,KAAK;AAAA,IACL,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,QAAQ,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC/F;AAAA,IACJ,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,OAAO,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC9F;AAAA,IACJ,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,KAAK,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC5F;AAAA,IAEJ,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,OAAO,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC9F;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,aAAa,EAAE,QAAQG,EAAO,CAAA,CAAC;AACpG;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,YAAY,EAAE,QAAQG,EAAO,CAAA,CAAC;AACnG;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,UAAU,EAAE,QAAQG,EAAO,CAAA,CAAC;AACjG;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,YAAY,EAAE,QAAQG,EAAO,CAAA,CAAC;AACnG;AAAA,IACJ,KAAK;AACD,MAAIA,EAAM,WACHD,EAAA,cAAc,IAAI,YAAYF,EAAoC,eAAe,EAAE,QAAQG,EAAO,CAAA,CAAC,IAEnGD,EAAA,cAAc,IAAI,YAAYF,EAAoC,SAAS,EAAE,QAAQG,EAAO,CAAA,CAAC;AAEpG;AAAA,IACJ,KAAK;AACD,MAAIA,EAAM,WACHD,EAAA;AAAA,QACC,IAAI,YAAYF,EAAoC,iBAAiB,EAAE,QAAQG,GAAO;AAAA,MAAA,IAGvFD,EAAA,cAAc,IAAI,YAAYF,EAAoC,WAAW,EAAE,QAAQG,EAAO,CAAA,CAAC;AAEtG;AAAA,IACJ,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,MAAM,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC7F;AAAA,IACJ,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,KAAK,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC5F;AAAA,EAGR;AACJ,GAEMC,IAAwC,CAACF,GAAIG,MAAgC;AAG/E,EAAAA,EAAQ,kBAAqBC,EAAOJ,GAAI,WAAWD,EAAWC,CAAE,CAAC;AACrE,GAEMK,IAA0C,CAACC,GAAGH,MAAgC;AAChF,EAAIA,EAAQ,mBACRA,EAAQ,gBAAgB;AAEhC,GAEaI,IAAmC;AAAA;AAAA,EAE5C,MAAML;AAAA,EACN,QAAQG;AAAA;AAAA,EAER,aAAaH;AAAA,EACb,WAAWG;AACf;"}
1
+ {"version":3,"file":"keyboard-navigation.bbc3d15c.js","sources":["../../../vue2/src/types/keyboard-navigation.ts","../../../vue2/src/directives/keyboard-navigation/keyboard-navigation.ts"],"sourcesContent":["export enum BentoKeyboardNavigationKeyDownEvent {\n ARROW_DOWN = 'keydown:arrow-down',\n ARROW_LEFT = 'keydown:arrow-left',\n ARROW_RIGHT = 'keydown:arrow-right',\n ARROW_UP = 'keydown:arrow-up',\n END = 'keydown:end',\n ENTER = 'keydown:enter',\n ESCAPE = 'keydown:escape',\n HOME = 'keydown:home',\n PAGE_DOWN = 'keydown:page-down',\n PAGE_UP = 'keydown:page-up',\n SHIFT_PAGE_DOWN = 'keydown:shift-page-down',\n SHIFT_PAGE_UP = 'keydown:shift-page-up',\n TAB = 'keydown:tab',\n SPACE = 'keydown:space',\n}\n","import { listen } from '@/utils/ts/events';\nimport { Binding } from './keyboard-navigation.types';\nimport { BentoKeyboardNavigationKeyDownEvent } from '@/types';\nimport type { DirectiveHook } from 'vue';\n\nconst onKeyEvent = (el: Element) => (event: KeyboardEvent) => {\n switch (event.key) {\n case 'Esc':\n case 'Escape':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ESCAPE, { detail: event }));\n break;\n case 'Enter':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ENTER, { detail: event }));\n break;\n case 'Tab':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.TAB, { detail: event }));\n break;\n // Space\n case ' ':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.SPACE, { detail: event }));\n break;\n case 'Right':\n case 'ArrowRight':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ARROW_RIGHT, { detail: event }));\n break;\n case 'Left':\n case 'ArrowLeft':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ARROW_LEFT, { detail: event }));\n break;\n case 'Up':\n case 'ArrowUp':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ARROW_UP, { detail: event }));\n break;\n case 'Down':\n case 'ArrowDown':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.ARROW_DOWN, { detail: event }));\n break;\n case 'PageUp':\n if (event.shiftKey) {\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.SHIFT_PAGE_UP, { detail: event }));\n } else {\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.PAGE_UP, { detail: event }));\n }\n break;\n case 'PageDown':\n if (event.shiftKey) {\n el.dispatchEvent(\n new CustomEvent(BentoKeyboardNavigationKeyDownEvent.SHIFT_PAGE_DOWN, { detail: event })\n );\n } else {\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.PAGE_DOWN, { detail: event }));\n }\n break;\n case 'Home':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.HOME, { detail: event }));\n break;\n case 'End':\n el.dispatchEvent(new CustomEvent(BentoKeyboardNavigationKeyDownEvent.END, { detail: event }));\n break;\n default:\n break;\n }\n};\n\nconst bindDirective: DirectiveHook<Element> = (el, binding: Binding<undefined>) => {\n // Register the listener cleanup function\n // eslint-disable-next-line no-param-reassign, dot-notation\n binding['keyDownListener'] = listen(el, 'keydown', onKeyEvent(el));\n};\n\nconst unbindDirective: DirectiveHook<Element> = (_, binding: Binding<undefined>) => {\n if (binding.keyDownListener) {\n binding.keyDownListener();\n }\n};\n\nexport const BentoKeyboardNavigationDirective = {\n // Vue 2 Directive hooks\n bind: bindDirective,\n unbind: unbindDirective,\n // Vue 3 Directive hooks\n beforeMount: bindDirective,\n unmounted: unbindDirective,\n};\n"],"names":["BentoKeyboardNavigationKeyDownEvent","onKeyEvent","el","event","bindDirective","binding","listen","unbindDirective","_","BentoKeyboardNavigationDirective"],"mappings":";AAAY,IAAAA,sBAAAA,OACRA,EAAA,aAAa,sBACbA,EAAA,aAAa,sBACbA,EAAA,cAAc,uBACdA,EAAA,WAAW,oBACXA,EAAA,MAAM,eACNA,EAAA,QAAQ,iBACRA,EAAA,SAAS,kBACTA,EAAA,OAAO,gBACPA,EAAA,YAAY,qBACZA,EAAA,UAAU,mBACVA,EAAA,kBAAkB,2BAClBA,EAAA,gBAAgB,yBAChBA,EAAA,MAAM,eACNA,EAAA,QAAQ,iBAdAA,IAAAA,KAAA,CAAA,CAAA;ACKZ,MAAMC,IAAa,CAACC,MAAgB,CAACC,MAAyB;AAC1D,UAAQA,EAAM,KAAK;AAAA,IACf,KAAK;AAAA,IACL,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,QAAQ,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC/F;AAAA,IACJ,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,OAAO,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC9F;AAAA,IACJ,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,KAAK,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC5F;AAAA,IAEJ,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,OAAO,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC9F;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,aAAa,EAAE,QAAQG,EAAO,CAAA,CAAC;AACpG;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,YAAY,EAAE,QAAQG,EAAO,CAAA,CAAC;AACnG;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,UAAU,EAAE,QAAQG,EAAO,CAAA,CAAC;AACjG;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,YAAY,EAAE,QAAQG,EAAO,CAAA,CAAC;AACnG;AAAA,IACJ,KAAK;AACD,MAAIA,EAAM,WACHD,EAAA,cAAc,IAAI,YAAYF,EAAoC,eAAe,EAAE,QAAQG,EAAO,CAAA,CAAC,IAEnGD,EAAA,cAAc,IAAI,YAAYF,EAAoC,SAAS,EAAE,QAAQG,EAAO,CAAA,CAAC;AAEpG;AAAA,IACJ,KAAK;AACD,MAAIA,EAAM,WACHD,EAAA;AAAA,QACC,IAAI,YAAYF,EAAoC,iBAAiB,EAAE,QAAQG,GAAO;AAAA,MAAA,IAGvFD,EAAA,cAAc,IAAI,YAAYF,EAAoC,WAAW,EAAE,QAAQG,EAAO,CAAA,CAAC;AAEtG;AAAA,IACJ,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,MAAM,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC7F;AAAA,IACJ,KAAK;AACE,MAAAD,EAAA,cAAc,IAAI,YAAYF,EAAoC,KAAK,EAAE,QAAQG,EAAO,CAAA,CAAC;AAC5F;AAAA,EAGR;AACJ,GAEMC,IAAwC,CAACF,GAAIG,MAAgC;AAG/E,EAAAA,EAAQ,kBAAqBC,EAAOJ,GAAI,WAAWD,EAAWC,CAAE,CAAC;AACrE,GAEMK,IAA0C,CAACC,GAAGH,MAAgC;AAChF,EAAIA,EAAQ,mBACRA,EAAQ,gBAAgB;AAEhC,GAEaI,IAAmC;AAAA;AAAA,EAE5C,MAAML;AAAA,EACN,QAAQG;AAAA;AAAA,EAER,aAAaH;AAAA,EACb,WAAWG;AACf;"}
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as m, toRefs as O, computed as n, resolveComponent as c, openBlock as i, createElementBlock as d, createVNode as b, createBlock as v, withCtx as f, createTextVNode as g, toDisplayString as y, createCommentVNode as h, createElementVNode as C } from "vue";
2
- import { A as L, u as $, B as o, a as E } from "./index.ba3396d3.js";
3
- import { B } from "./index.a3d60e4f.js";
2
+ import { A as L, u as $, B as o, a as E } from "./index.8aa536a8.js";
3
+ import { B } from "./index.ee15db35.js";
4
4
  import { _ as A } from "./_plugin-vue_export-helper.dad06003.js";
5
5
  import { BentoTag as I } from "../tag.js";
6
6
  import "../assets/listbox-option-tag.css";
@@ -126,4 +126,4 @@ export {
126
126
  M as B,
127
127
  W as L
128
128
  };
129
- //# sourceMappingURL=listbox-option-tag.b6182b2e.js.map
129
+ //# sourceMappingURL=listbox-option-tag.2aea037c.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"listbox-option-tag.b6182b2e.js","sources":["../../../vue2/src/components/internal/avatar/avatar.vue","../../../vue2/src/components/internal/listbox/components/listbox-option-tag/listbox-option-tag.vue"],"sourcesContent":["<template>\n <div class=\"b-avatar\" :aria-label=\"computedAriaLabel\">\n <avatar-image\n :src=\"src\"\n :username=\"computedUsername\"\n :variant=\"BentoAvatarImageVariant.SMALL\"\n :color=\"avatarColor\"\n />\n <bento-typography v-if=\"!iconOnly\" class=\"b-avatar__label\" el=\"span\" variant=\"body\">\n {{ username }}\n </bento-typography>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, toRefs } from 'vue';\n import { AvatarImage, BentoAvatarImageColor, BentoAvatarImageVariant } from '@/components/avatar-image';\n import { BentoTypography } from '@/components/typography';\n import { useInitials } from '@/composables';\n\n /**\n * Displays an user profile including an avatar and optionally a label.\n *\n * @example\n * import { BentoUserProfile } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoUserProfile },\n * template: `\n * <bento-user-profile :src=\"userAvatarSrc\" username=\"Jane\" />\n */\n export default defineComponent({\n name: 'bento-avatar',\n components: { AvatarImage, BentoTypography },\n props: {\n /**\n * Displays the user profile without the label.\n */\n iconOnly: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Name of the user that will be used both in the label and to extract initials to display default value.\n * John => J\n * John Smith => JS\n * John Smith Doe => JD\n * John Smith Doe Holly => JH\n */\n username: {\n type: String,\n required: true,\n },\n\n /**\n * Image src to load the profile picture.\n */\n src: {\n type: String,\n default: null,\n },\n },\n\n setup(props) {\n const { username } = toRefs(props);\n\n const computedAriaLabel = computed(() => (props.iconOnly ? props.username : null));\n const computedUsername = computed(() => (!props.src ? props.username : null));\n const initials = useInitials(username);\n\n // Returns the UTF-16 char code\n const charCode = computed(() => (initials.value ? initials.value.charCodeAt(0) - 65 : null));\n\n // Returns a computed color based on the letter passed\n const avatarColor = computed(() => {\n const numberOfAlphabetLetters = 26;\n const numberOfColors = Object.keys(BentoAvatarImageColor).length;\n const rangeStep = numberOfAlphabetLetters / numberOfColors;\n\n if (charCode.value <= rangeStep) {\n return BentoAvatarImageColor.YELLOW;\n }\n if (charCode.value <= rangeStep * 2) {\n return BentoAvatarImageColor.BLUE;\n }\n if (charCode.value <= rangeStep * 3) {\n return BentoAvatarImageColor.GREEN;\n }\n return BentoAvatarImageColor.RED;\n });\n\n return {\n // Enums\n BentoAvatarImageVariant,\n\n // Values\n computedAriaLabel,\n computedUsername,\n avatarColor,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./avatar.scss\" />\n","<template>\n <span class=\"b-listbox-tag-option\">\n <span aria-hidden=\"true\">\n <bento-tag class=\"b-listbox-tag-option__tag\" :label=\"option.value.toString()\" :variant=\"variant\" />\n </span>\n <bento-typography v-if=\"option.label\" el=\"span\" class=\"b-listbox-tag-option__label\">\n {{ option.label }}\n </bento-typography>\n </span>\n</template>\n<script lang=\"ts\">\n import { computed, defineComponent, PropType } from 'vue';\n import type { BentoListboxOptionItem } from '@/types';\n import { BentoTag, BentoTagVariant } from '@/components/tag';\n import { BentoTypography } from '@/components/typography';\n\n /**\n * A Tag Dropdown option item used in the Dropdown and Filter components.\n */\n export default defineComponent({\n name: 'listbox-tag-option',\n components: {\n BentoTag,\n BentoTypography,\n },\n props: {\n /**\n * The option item that contains all the option item's data.\n * @type {BentoListboxOptionItem}\n */\n option: {\n type: Object as PropType<BentoListboxOptionItem>,\n required: true,\n },\n },\n setup(props) {\n const variant = computed(() => props.option.data as BentoTagVariant);\n\n return {\n // Values\n variant,\n };\n },\n });\n</script>\n<style lang=\"scss\" scoped src=\"./listbox-option-tag.scss\" />\n"],"names":["_sfc_main$1","defineComponent","AvatarImage","BentoTypography","props","username","toRefs","computedAriaLabel","computed","computedUsername","initials","useInitials","charCode","avatarColor","rangeStep","BentoAvatarImageColor","BentoAvatarImageVariant","openBlock","createElementBlock","_ctx","createBlock","_component_bento_typography","_sfc_main","BentoTag","createElementVNode","_hoisted_2","createVNode","_component_bento_tag"],"mappings":";;;;;;AA+BI,MAAAA,IAAAC,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,aAAAC,GAAA,iBAAAC,EAAA;AAAA,EACqC,OAAA;AAAA;AAAA;AAAA;AAAA,IACpC,UAAA;AAAA,MAIO,MAAA;AAAA,MACA,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IACb,UAAA;AAAA,MASU,MAAA;AAAA,MACA,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,KAAA;AAAA,MAKK,MAAA;AAAA,MACK,SAAA;AAAA,IACG;AAAA,EACb;AAAA,EACJ,MAAAC,GAAA;AAGI,UAAA,EAAA,UAAAC,EAAA,IAAAC,EAAAF,CAAA,GAEAG,IAAAC,EAAA,MAAAJ,EAAA,WAAAA,EAAA,WAAA,IAAA,GACAK,IAAAD,EAAA,MAAAJ,EAAA,MAAA,OAAAA,EAAA,QAAA,GACAM,IAAAC,EAAAN,CAAA,GAGAO,IAAAJ,EAAA,MAAAE,EAAA,QAAAA,EAAA,MAAA,WAAA,CAAA,IAAA,KAAA,IAAA,GAGAG,IAAAL,EAAA,MAAA;AAGI,YAAAM,IAAA,KADA,OAAA,KAAAC,CAAA,EAAA;AAGA,aAAAH,EAAA,SAAAE,IACIC,EAAA,SAEJH,EAAA,SAAAE,IAAA,IACIC,EAAA,OAEJH,EAAA,SAAAE,IAAA,IACIC,EAAA,QAEJA,EAAA;AAAA,IAA6B,CAAA;AAGjC,WAAA;AAAA;AAAA,MAAO,yBAAAC;AAAA;AAAA,MAEH,mBAAAT;AAAA,MAGA,kBAAAE;AAAA,MACA,aAAAI;AAAA,IACA;AAAA,EACJ;AAER,CAAA;;;;AArGuB,SAAAI,EAAA,GAAAC,EAAA,OAAA;AAAA,IAA6B,OAAA;AAAA;EAM9C,GAAA;AAAA;MAH6B,KAAAC,EAAA;AAAA,MACjB,UAAAA,EAAA;AAAA,MACF,SAAAA,EAAA,wBAAA;AAAA,MAEa,OAAAA,EAAA;AAAA,IAAA,GAAA,MAAA,GAAA,CAAA,OAAA,YAAA,WAAA,OAAA,CAAA;AAAA,IAENA,EAAA,wBAAAF,EAAA,GAAAG,EAAAC,GAAA;AAAA,MAFuC,KAAA;AAAA,MAAI,OAAA;AAAA,MAAc,IAAA;AAAA;;;;;;;;;mFCWhFC,IAAArB,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA;AAAA,IACM,UAAAsB;AAAA,IACR,iBAAApB;AAAA,EACA;AAAA,EACJ,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IACO,QAAA;AAAA,MAKK,MAAA;AAAA,MACE,UAAA;AAAA,IACI;AAAA,EACd;AAAA,EACJ,MAAAC,GAAA;AAII,WAAA;AAAA;AAAA,MAAO,SAFPI,EAAA,MAAAJ,EAAA,OAAA,IAAA;AAAA,IAII;AAAA,EACJ;AAER,CAAA;;;;;IAxC2GoB,EAAA,QAAAC,GAAA;AAAA,MAAvDC,EAAAC,GAAA;AAAA,QAA8B,OAAA;AAAA,QAAY,OAAAR,EAAA,OAAA,MAAA,SAAA;AAAA;MAElE,GAAA,MAAA,GAAA,CAAA,SAAA,SAAA,CAAA;AAAA,IAAY,CAAA;AAAA,IAAWA,EAAA,OAAA,SAAAF,EAAA,GAAAG,EAAAC,GAAA;AAAA,MAAA,KAAA;AAAA,MAAM,IAAA;AAAA;;;;;;;;;;"}
1
+ {"version":3,"file":"listbox-option-tag.2aea037c.js","sources":["../../../vue2/src/components/internal/avatar/avatar.vue","../../../vue2/src/components/internal/listbox/components/listbox-option-tag/listbox-option-tag.vue"],"sourcesContent":["<template>\n <div class=\"b-avatar\" :aria-label=\"computedAriaLabel\">\n <avatar-image\n :src=\"src\"\n :username=\"computedUsername\"\n :variant=\"BentoAvatarImageVariant.SMALL\"\n :color=\"avatarColor\"\n />\n <bento-typography v-if=\"!iconOnly\" class=\"b-avatar__label\" el=\"span\" variant=\"body\">\n {{ username }}\n </bento-typography>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, toRefs } from 'vue';\n import { AvatarImage, BentoAvatarImageColor, BentoAvatarImageVariant } from '@/components/avatar-image';\n import { BentoTypography } from '@/components/typography';\n import { useInitials } from '@/composables';\n\n /**\n * Displays an user profile including an avatar and optionally a label.\n *\n * @example\n * import { BentoUserProfile } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoUserProfile },\n * template: `\n * <bento-user-profile :src=\"userAvatarSrc\" username=\"Jane\" />\n */\n export default defineComponent({\n name: 'bento-avatar',\n components: { AvatarImage, BentoTypography },\n props: {\n /**\n * Displays the user profile without the label.\n */\n iconOnly: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Name of the user that will be used both in the label and to extract initials to display default value.\n * John => J\n * John Smith => JS\n * John Smith Doe => JD\n * John Smith Doe Holly => JH\n */\n username: {\n type: String,\n required: true,\n },\n\n /**\n * Image src to load the profile picture.\n */\n src: {\n type: String,\n default: null,\n },\n },\n\n setup(props) {\n const { username } = toRefs(props);\n\n const computedAriaLabel = computed(() => (props.iconOnly ? props.username : null));\n const computedUsername = computed(() => (!props.src ? props.username : null));\n const initials = useInitials(username);\n\n // Returns the UTF-16 char code\n const charCode = computed(() => (initials.value ? initials.value.charCodeAt(0) - 65 : null));\n\n // Returns a computed color based on the letter passed\n const avatarColor = computed(() => {\n const numberOfAlphabetLetters = 26;\n const numberOfColors = Object.keys(BentoAvatarImageColor).length;\n const rangeStep = numberOfAlphabetLetters / numberOfColors;\n\n if (charCode.value <= rangeStep) {\n return BentoAvatarImageColor.YELLOW;\n }\n if (charCode.value <= rangeStep * 2) {\n return BentoAvatarImageColor.BLUE;\n }\n if (charCode.value <= rangeStep * 3) {\n return BentoAvatarImageColor.GREEN;\n }\n return BentoAvatarImageColor.RED;\n });\n\n return {\n // Enums\n BentoAvatarImageVariant,\n\n // Values\n computedAriaLabel,\n computedUsername,\n avatarColor,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./avatar.scss\" />\n","<template>\n <span class=\"b-listbox-tag-option\">\n <span aria-hidden=\"true\">\n <bento-tag class=\"b-listbox-tag-option__tag\" :label=\"option.value.toString()\" :variant=\"variant\" />\n </span>\n <bento-typography v-if=\"option.label\" el=\"span\" class=\"b-listbox-tag-option__label\">\n {{ option.label }}\n </bento-typography>\n </span>\n</template>\n<script lang=\"ts\">\n import { computed, defineComponent, PropType } from 'vue';\n import type { BentoListboxOptionItem } from '@/types';\n import { BentoTag, BentoTagVariant } from '@/components/tag';\n import { BentoTypography } from '@/components/typography';\n\n /**\n * A Tag Dropdown option item used in the Dropdown and Filter components.\n */\n export default defineComponent({\n name: 'listbox-tag-option',\n components: {\n BentoTag,\n BentoTypography,\n },\n props: {\n /**\n * The option item that contains all the option item's data.\n * @type {BentoListboxOptionItem}\n */\n option: {\n type: Object as PropType<BentoListboxOptionItem>,\n required: true,\n },\n },\n setup(props) {\n const variant = computed(() => props.option.data as BentoTagVariant);\n\n return {\n // Values\n variant,\n };\n },\n });\n</script>\n<style lang=\"scss\" scoped src=\"./listbox-option-tag.scss\" />\n"],"names":["_sfc_main$1","defineComponent","AvatarImage","BentoTypography","props","username","toRefs","computedAriaLabel","computed","computedUsername","initials","useInitials","charCode","avatarColor","rangeStep","BentoAvatarImageColor","BentoAvatarImageVariant","openBlock","createElementBlock","_ctx","createBlock","_component_bento_typography","_sfc_main","BentoTag","createElementVNode","_hoisted_2","createVNode","_component_bento_tag"],"mappings":";;;;;;AA+BI,MAAAA,IAAAC,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,aAAAC,GAAA,iBAAAC,EAAA;AAAA,EACqC,OAAA;AAAA;AAAA;AAAA;AAAA,IACpC,UAAA;AAAA,MAIO,MAAA;AAAA,MACA,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IACb,UAAA;AAAA,MASU,MAAA;AAAA,MACA,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,KAAA;AAAA,MAKK,MAAA;AAAA,MACK,SAAA;AAAA,IACG;AAAA,EACb;AAAA,EACJ,MAAAC,GAAA;AAGI,UAAA,EAAA,UAAAC,EAAA,IAAAC,EAAAF,CAAA,GAEAG,IAAAC,EAAA,MAAAJ,EAAA,WAAAA,EAAA,WAAA,IAAA,GACAK,IAAAD,EAAA,MAAAJ,EAAA,MAAA,OAAAA,EAAA,QAAA,GACAM,IAAAC,EAAAN,CAAA,GAGAO,IAAAJ,EAAA,MAAAE,EAAA,QAAAA,EAAA,MAAA,WAAA,CAAA,IAAA,KAAA,IAAA,GAGAG,IAAAL,EAAA,MAAA;AAGI,YAAAM,IAAA,KADA,OAAA,KAAAC,CAAA,EAAA;AAGA,aAAAH,EAAA,SAAAE,IACIC,EAAA,SAEJH,EAAA,SAAAE,IAAA,IACIC,EAAA,OAEJH,EAAA,SAAAE,IAAA,IACIC,EAAA,QAEJA,EAAA;AAAA,IAA6B,CAAA;AAGjC,WAAA;AAAA;AAAA,MAAO,yBAAAC;AAAA;AAAA,MAEH,mBAAAT;AAAA,MAGA,kBAAAE;AAAA,MACA,aAAAI;AAAA,IACA;AAAA,EACJ;AAER,CAAA;;;;AArGuB,SAAAI,EAAA,GAAAC,EAAA,OAAA;AAAA,IAA6B,OAAA;AAAA;EAM9C,GAAA;AAAA;MAH6B,KAAAC,EAAA;AAAA,MACjB,UAAAA,EAAA;AAAA,MACF,SAAAA,EAAA,wBAAA;AAAA,MAEa,OAAAA,EAAA;AAAA,IAAA,GAAA,MAAA,GAAA,CAAA,OAAA,YAAA,WAAA,OAAA,CAAA;AAAA,IAENA,EAAA,wBAAAF,EAAA,GAAAG,EAAAC,GAAA;AAAA,MAFuC,KAAA;AAAA,MAAI,OAAA;AAAA,MAAc,IAAA;AAAA;;;;;;;;;mFCWhFC,IAAArB,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA;AAAA,IACM,UAAAsB;AAAA,IACR,iBAAApB;AAAA,EACA;AAAA,EACJ,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IACO,QAAA;AAAA,MAKK,MAAA;AAAA,MACE,UAAA;AAAA,IACI;AAAA,EACd;AAAA,EACJ,MAAAC,GAAA;AAII,WAAA;AAAA;AAAA,MAAO,SAFPI,EAAA,MAAAJ,EAAA,OAAA,IAAA;AAAA,IAII;AAAA,EACJ;AAER,CAAA;;;;;IAxC2GoB,EAAA,QAAAC,GAAA;AAAA,MAAvDC,EAAAC,GAAA;AAAA,QAA8B,OAAA;AAAA,QAAY,OAAAR,EAAA,OAAA,MAAA,SAAA;AAAA;MAElE,GAAA,MAAA,GAAA,CAAA,SAAA,SAAA,CAAA;AAAA,IAAY,CAAA;AAAA,IAAWA,EAAA,OAAA,SAAAF,EAAA,GAAAG,EAAAC,GAAA;AAAA,MAAA,KAAA;AAAA,MAAM,IAAA;AAAA;;;;;;;;;;"}
@@ -1,8 +1,8 @@
1
1
  import { defineComponent as m, computed as l, openBlock as o, createBlock as r, unref as i, normalizeClass as b, withModifiers as C, createSlots as y, withCtx as d, renderSlot as g, createElementVNode as _, createCommentVNode as k } from "vue";
2
2
  import { BentoLoadingIndicator as I } from "../loading-indicator.js";
3
- import { a as s } from "./button.60dad578.js";
4
- import { C as S } from "./cross-circle-fill.81925c7f.js";
5
- import { C as A } from "./checkmark-circle-fill.f3a69c6a.js";
3
+ import { a as s } from "./button.ae4760cd.js";
4
+ import { C as S } from "./cross-circle-fill.1abec1a2.js";
5
+ import { C as A } from "./checkmark-circle-fill.c45a999d.js";
6
6
  import { _ as L } from "./_plugin-vue_export-helper.dad06003.js";
7
7
  import "../assets/loading-button.css";
8
8
  var a = /* @__PURE__ */ ((t) => (t.START = "start", t.LOADING = "loading", t.SUCCESS = "success", t.FAIL = "fail", t))(a || {});
@@ -115,4 +115,4 @@ export {
115
115
  F as B,
116
116
  a
117
117
  };
118
- //# sourceMappingURL=loading-button.0391ad8b.js.map
118
+ //# sourceMappingURL=loading-button.6b81b546.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loading-button.0391ad8b.js","sources":["../../../vue2/src/components/button/components/loading-button/loading-button.types.ts","../../../vue2/src/components/button/components/loading-button/loading-button.vue"],"sourcesContent":["export enum BentoLoadingButtonState {\n START = 'start',\n LOADING = 'loading',\n SUCCESS = 'success',\n FAIL = 'fail',\n}\n\nexport type BentoLoadingButtonIconState = Partial<{ [key in BentoLoadingButtonState]: string }>;\n","<template>\n <bento-button\n :critical=\"isCritical\"\n :variant=\"variant\"\n :condensed=\"condensed\"\n :disabled=\"disabled\"\n :inverse=\"inverse\"\n class=\"b-loading-button\"\n :class=\"conditionalClasses\"\n @click.capture.stop=\"onClick\"\n >\n <slot></slot>\n <template v-if=\"state !== 'start'\" #iconLeft>\n <span class=\"b-loading-button__icon\" data-testid=\"loading-button-rotating-icon\">\n <cross v-if=\"state === 'fail'\" svg-title=\"failed\" />\n <checkmark v-else-if=\"state === 'success'\" svg-title=\"succeded\" />\n <!-- TODO: Replace with new loading-indicator component -->\n <bento-loading-indicator v-else-if=\"state === 'loading'\" small :inverse=\"isInverseLoadingIndicator\" />\n </span>\n </template>\n </bento-button>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, PropType } from 'vue';\n import { BentoLoadingButtonState } from './loading-button.types';\n import { BentoLoadingIndicator } from '@/components/loading-indicator';\n import BentoButton from '@/components/button/button.vue';\n import Cross from '@adyen/ui-assets-icons-16/vue/cross-circle-fill';\n import Checkmark from '@adyen/ui-assets-icons-16/vue/checkmark-circle-fill';\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 * Displays loading-button as critical\n */\n critical: {\n type: BentoButton.props.critical.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 * State of the button.\n * @values start, loading, success, fail\n */\n state: {\n type: String as PropType<BentoLoadingButtonState | `${BentoLoadingButtonState}`>,\n default: BentoLoadingButtonState.START,\n validator: (value: BentoLoadingButtonState) => Object.values(BentoLoadingButtonState).includes(value),\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 const emit = defineEmits<{\n /**\n * Click event handler\n */\n (e: 'click', event: MouseEvent): void;\n }>();\n\n const conditionalClasses = computed(() => ({\n [`b-loading-button--${props.variant}-${BentoLoadingButtonState.LOADING}`]:\n props.state === BentoLoadingButtonState.LOADING && !props.disabled,\n 'b-loading-button--loading': props.state === BentoLoadingButtonState.LOADING && !props.disabled,\n [`b-loading-button--${props.variant}-${BentoLoadingButtonState.SUCCESS}`]:\n props.state === BentoLoadingButtonState.SUCCESS,\n [`b-loading-button--inverse`]: props.inverse,\n }));\n\n const isInverseLoadingIndicator = computed(\n () => (props.variant === 'primary' && !props.inverse) || (props.variant !== 'primary' && props.inverse)\n );\n const isCritical = computed(\n () =>\n (props.critical && props.state === BentoLoadingButtonState.START) ||\n props.state === BentoLoadingButtonState.FAIL\n );\n\n const onClick = (e: MouseEvent) => {\n // Prevent Vue3 from triggering event twice\n e.stopPropagation();\n\n if (props.state !== BentoLoadingButtonState.LOADING) {\n emit('click', e);\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * Loading Button component is used for cases where pressing a button starts an event that requires a loading state, e.g. when you have any sort of asynchronous action and are waiting for a response\n *\n * @example\n * import { BentoLoadingButton } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoLoadingButton },\n * template: `\n * <bento-loading-button state=\"loading\" variant=\"secondary\">\n * Loading\n * </bento-loading button>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./loading-button.scss\" />\n"],"names":["BentoLoadingButtonState","BentoLoadingButtonState2","__default__","conditionalClasses","computed","props","isInverseLoadingIndicator","isCritical","onClick","e","emit"],"mappings":";;;;;;;AAAY,IAAAA,IAAA,kBAAAC,OACRA,EAAA,QAAA,SACAA,EAAA,UAAA,WACAA,EAAA,UAAA,WACAA,EAAA,OAAA,QAJQA,IAAAD,KAAA,CAAA,CAAA;;;;GCwIRE,IAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA5CAC,IAAAC,EAAA,OAAA;AAAA,MAA2C,CAAA,qBAAAC,EAAA,WAAAL,EAAA,SAAA,GAAAK,EAAA,UAAAL,EAAA,WAAA,CAAAK,EAAA;AAAA,MAEuB,6BAAAA,EAAA,UAAAL,EAAA,WAAA,CAAAK,EAAA;AAAA,MACyB,CAAA,qBAAAA,EAAA,WAAAL,EAAA,SAAA,GAAAK,EAAA,UAAAL,EAAA;AAAA,MAE3C,CAAA,2BAAA,GAAAK,EAAA;AAAA,IACP,EAAA,GAGzCC,IAAAF;AAAA,MAAkC,MAAAC,EAAA,YAAA,aAAA,CAAAA,EAAA,WAAAA,EAAA,YAAA,aAAAA,EAAA;AAAA,IACiE,GAEnGE,IAAAH;AAAA,MAAmB,MAAAC,EAAA,YAAAA,EAAA,UAAAL,EAAA,SAAAK,EAAA,UAAAL,EAAA;AAAA,IAG6B,GAGhDQ,IAAA,CAAAC,MAAA;AAEI,MAAAA,EAAA,gBAAA,GAEAJ,EAAA,UAAAL,EAAA,WACIU,EAAA,SAAAD,CAAA;AAAA,IACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"loading-button.6b81b546.js","sources":["../../../vue2/src/components/button/components/loading-button/loading-button.types.ts","../../../vue2/src/components/button/components/loading-button/loading-button.vue"],"sourcesContent":["export enum BentoLoadingButtonState {\n START = 'start',\n LOADING = 'loading',\n SUCCESS = 'success',\n FAIL = 'fail',\n}\n\nexport type BentoLoadingButtonIconState = Partial<{ [key in BentoLoadingButtonState]: string }>;\n","<template>\n <bento-button\n :critical=\"isCritical\"\n :variant=\"variant\"\n :condensed=\"condensed\"\n :disabled=\"disabled\"\n :inverse=\"inverse\"\n class=\"b-loading-button\"\n :class=\"conditionalClasses\"\n @click.capture.stop=\"onClick\"\n >\n <slot></slot>\n <template v-if=\"state !== 'start'\" #iconLeft>\n <span class=\"b-loading-button__icon\" data-testid=\"loading-button-rotating-icon\">\n <cross v-if=\"state === 'fail'\" svg-title=\"failed\" />\n <checkmark v-else-if=\"state === 'success'\" svg-title=\"succeded\" />\n <!-- TODO: Replace with new loading-indicator component -->\n <bento-loading-indicator v-else-if=\"state === 'loading'\" small :inverse=\"isInverseLoadingIndicator\" />\n </span>\n </template>\n </bento-button>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, PropType } from 'vue';\n import { BentoLoadingButtonState } from './loading-button.types';\n import { BentoLoadingIndicator } from '@/components/loading-indicator';\n import BentoButton from '@/components/button/button.vue';\n import Cross from '@adyen/ui-assets-icons-16/vue/cross-circle-fill';\n import Checkmark from '@adyen/ui-assets-icons-16/vue/checkmark-circle-fill';\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 * Displays loading-button as critical\n */\n critical: {\n type: BentoButton.props.critical.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 * State of the button.\n * @values start, loading, success, fail\n */\n state: {\n type: String as PropType<BentoLoadingButtonState | `${BentoLoadingButtonState}`>,\n default: BentoLoadingButtonState.START,\n validator: (value: BentoLoadingButtonState) => Object.values(BentoLoadingButtonState).includes(value),\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 const emit = defineEmits<{\n /**\n * Click event handler\n */\n (e: 'click', event: MouseEvent): void;\n }>();\n\n const conditionalClasses = computed(() => ({\n [`b-loading-button--${props.variant}-${BentoLoadingButtonState.LOADING}`]:\n props.state === BentoLoadingButtonState.LOADING && !props.disabled,\n 'b-loading-button--loading': props.state === BentoLoadingButtonState.LOADING && !props.disabled,\n [`b-loading-button--${props.variant}-${BentoLoadingButtonState.SUCCESS}`]:\n props.state === BentoLoadingButtonState.SUCCESS,\n [`b-loading-button--inverse`]: props.inverse,\n }));\n\n const isInverseLoadingIndicator = computed(\n () => (props.variant === 'primary' && !props.inverse) || (props.variant !== 'primary' && props.inverse)\n );\n const isCritical = computed(\n () =>\n (props.critical && props.state === BentoLoadingButtonState.START) ||\n props.state === BentoLoadingButtonState.FAIL\n );\n\n const onClick = (e: MouseEvent) => {\n // Prevent Vue3 from triggering event twice\n e.stopPropagation();\n\n if (props.state !== BentoLoadingButtonState.LOADING) {\n emit('click', e);\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * Loading Button component is used for cases where pressing a button starts an event that requires a loading state, e.g. when you have any sort of asynchronous action and are waiting for a response\n *\n * @example\n * import { BentoLoadingButton } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoLoadingButton },\n * template: `\n * <bento-loading-button state=\"loading\" variant=\"secondary\">\n * Loading\n * </bento-loading button>\n * `\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./loading-button.scss\" />\n"],"names":["BentoLoadingButtonState","BentoLoadingButtonState2","__default__","conditionalClasses","computed","props","isInverseLoadingIndicator","isCritical","onClick","e","emit"],"mappings":";;;;;;;AAAY,IAAAA,IAAA,kBAAAC,OACRA,EAAA,QAAA,SACAA,EAAA,UAAA,WACAA,EAAA,UAAA,WACAA,EAAA,OAAA,QAJQA,IAAAD,KAAA,CAAA,CAAA;;;;GCwIRE,IAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA5CAC,IAAAC,EAAA,OAAA;AAAA,MAA2C,CAAA,qBAAAC,EAAA,WAAAL,EAAA,SAAA,GAAAK,EAAA,UAAAL,EAAA,WAAA,CAAAK,EAAA;AAAA,MAEuB,6BAAAA,EAAA,UAAAL,EAAA,WAAA,CAAAK,EAAA;AAAA,MACyB,CAAA,qBAAAA,EAAA,WAAAL,EAAA,SAAA,GAAAK,EAAA,UAAAL,EAAA;AAAA,MAE3C,CAAA,2BAAA,GAAAK,EAAA;AAAA,IACP,EAAA,GAGzCC,IAAAF;AAAA,MAAkC,MAAAC,EAAA,YAAA,aAAA,CAAAA,EAAA,WAAAA,EAAA,YAAA,aAAAA,EAAA;AAAA,IACiE,GAEnGE,IAAAH;AAAA,MAAmB,MAAAC,EAAA,YAAAA,EAAA,UAAAL,EAAA,SAAAK,EAAA,UAAAL,EAAA;AAAA,IAG6B,GAGhDQ,IAAA,CAAAC,MAAA;AAEI,MAAAA,EAAA,gBAAA,GAEAJ,EAAA,UAAAL,EAAA,WACIU,EAAA,SAAAD,CAAA;AAAA,IACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { ref as m, watch as h, defineComponent as b, toRef as g, computed as k, inject as S, resolveComponent as p, openBlock as r, createElementBlock as l, createElementVNode as y, normalizeClass as v, createBlock as _, toDisplayString as u, withCtx as I, createTextVNode as C } from "vue";
2
- import { B as E } from "./index.a3d60e4f.js";
2
+ import { B as E } from "./index.ee15db35.js";
3
3
  import { S as B } from "./summary-grid.keys.1d1028c2.js";
4
4
  import M from "@adyen/ui-assets-payment-method-icons/vue/unknowncard";
5
5
  import { _ as w } from "./_plugin-vue_export-helper.dad06003.js";
@@ -101,4 +101,4 @@ const z = /* @__PURE__ */ w(L, [["render", Y], ["__scopeId", "data-v-7ceb550e"]]
101
101
  export {
102
102
  z as B
103
103
  };
104
- //# sourceMappingURL=payment-method.31a68b9b.js.map
104
+ //# sourceMappingURL=payment-method.d5595a7c.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"payment-method.31a68b9b.js","sources":["../../../vue2/src/components/payment-method/composables/use-payment-icon/use-payment-icon.ts","../../../vue2/src/components/payment-method/payment-method.vue"],"sourcesContent":["import { ref, Ref, watch } from 'vue';\n\n/**\n * Generates the payment icon URl from a payment icons string.\n * @param paymentType - the payment icon you wish to generate a URL for.\n * @returns the payment icon URL to the SVG for a specific payment icon.\n */\nexport const paymentMethodToCdnUrl = (paymentType: string) =>\n `https://checkoutshopper-live.cdn.adyen.com/checkoutshopper/images/logos/${paymentType.toLowerCase()}.svg`;\n\n/**\n * Dynamically retrieves the payment method icon SVG from the @adyen/ui-assets-payment-method-icons package.\n *\n * @param type the type of payment method\n * @param useFallback if fallback icon should be used in case of error\n * @returns\n */\nexport const usePaymentIcon = (type: Ref<string>) => {\n const paymentType = ref(type);\n const paymentIconSrc = ref<string>();\n\n watch(\n paymentType,\n newPaymentType => {\n if (newPaymentType == null || newPaymentType === 'Unknowncard') {\n return;\n }\n // TODO: what about when to use checkoutshopper-test? Should we add this to the config of Bento?\n paymentIconSrc.value = paymentMethodToCdnUrl(newPaymentType);\n },\n { immediate: true }\n );\n\n return paymentIconSrc;\n};\n","<template>\n <div class=\"b-payment-method\">\n <div class=\"b-payment-method__icon-container\">\n <img\n v-if=\"type !== 'Unknowncard' && !hasErroredOnImage\"\n aria-hidden=\"true\"\n class=\"b-payment-method__icon\"\n :class=\"conditionalIconClasses\"\n :alt=\"label\"\n :src=\"paymentMethodIconSrc\"\n @error=\"onSrcError\"\n />\n <unknown-card-icon v-else :svg-title=\"label\" aria-hidden=\"true\" />\n </div>\n <div class=\"b-payment-method__label\">\n <span v-if=\"isSummaryGridLayout\">{{ label }}</span>\n <bento-typography v-else el=\"span\">{{ label }}</bento-typography>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, inject, ref, toRef, watch } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import { SUMMARY_GRID_LAYOUT_INJECTION_KEY } from '@/components/summary-grid/summary-grid.keys';\n import { BentoSummaryGridLayout } from '@/components/summary-grid';\n import { usePaymentIcon } from './composables/use-payment-icon/use-payment-icon';\n import UnknownCardIcon from '@adyen/ui-assets-payment-method-icons/vue/unknowncard';\n\n /**\n * A payment method type component to display the type's icon and label.\n *\n * @example\n * import { BentoPaymentMethod} from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoPaymentMethod },\n * template: `\n * <bento-payment-method type=\"Ideal\" />\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-payment-method',\n components: { BentoTypography, UnknownCardIcon },\n props: {\n /**\n * The type of payment method to display.\n */\n type: {\n type: String,\n default: 'Unknowncard',\n },\n\n /**\n * The label describing to the payment method icon.\n */\n label: {\n type: String,\n required: true,\n },\n\n /**\n * Render payment method icon in a smaller size\n */\n small: {\n type: Boolean,\n default: false,\n },\n },\n setup(props) {\n const type = toRef(props, 'type');\n const hasErroredOnImage = ref(false);\n const paymentMethodIconSrc = usePaymentIcon(type);\n const conditionalIconClasses = computed(() => ({\n 'b-payment-method__icon--small': props.small,\n }));\n\n /* == Summary-grid styles == */\n const registerPaymentMethodInSummaryGrid: BentoSummaryGridLayout = inject(\n SUMMARY_GRID_LAYOUT_INJECTION_KEY,\n () => ({\n isSummaryGridLayout: false,\n })\n );\n\n const { isSummaryGridLayout } = registerPaymentMethodInSummaryGrid();\n\n /**\n * This funciton is fired if the payment image source is not valid and has thrown an error.\n */\n const onSrcError = () => {\n hasErroredOnImage.value = true;\n };\n\n // Reset the image error to be able to load the new payment type\n watch(\n () => type.value,\n (newType, oldType) => {\n if (newType !== oldType) {\n hasErroredOnImage.value = false;\n }\n }\n );\n\n return {\n // Values\n conditionalIconClasses,\n hasErroredOnImage,\n isSummaryGridLayout,\n paymentMethodIconSrc,\n\n // Methods\n onSrcError,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./payment-method.scss\" />\n"],"names":["paymentMethodToCdnUrl","paymentType","usePaymentIcon","type","ref","paymentIconSrc","watch","newPaymentType","_sfc_main","defineComponent","BentoTypography","UnknownCardIcon","props","toRef","hasErroredOnImage","paymentMethodIconSrc","conditionalIconClasses","computed","registerPaymentMethodInSummaryGrid","inject","SUMMARY_GRID_LAYOUT_INJECTION_KEY","isSummaryGridLayout","onSrcError","newType","oldType","_hoisted_2","openBlock","createElementBlock","_hoisted_1","createElementVNode","_ctx","normalizeClass","_hoisted_3","createBlock","_component_unknown_card_icon","_hoisted_4","_hoisted_5","toDisplayString","_component_bento_typography"],"mappings":";;;;;;AAOO,MAAAA,IAAA,CAAAC,MAAA,2EAAAA,EAAA,YAAA,SAUMC,IAAA,CAAAC,MAAA;AACT,QAAAF,IAAAG,EAAAD,CAAA,GACAE,IAAAD,EAAA;AAEA,SAAAE;AAAA,IAAAL;AAAA,IACI,CAAAM,MAAA;AAEI,MAAAA,KAAA,QAAAA,MAAA,kBAIAF,EAAA,QAAAL,EAAAO,CAAA;AAAA,IAA2D;AAAA,IAC/D,EAAA,WAAA,GAAA;AAAA,EACkB,GAGtBF;AACJ,GCQIG,IAAAC,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,iBAAAC,GAAA,iBAAAC,EAAA;AAAA,EACyC,OAAA;AAAA;AAAA;AAAA;AAAA,IACxC,MAAA;AAAA,MAIG,MAAA;AAAA,MACI,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,OAAA;AAAA,MAKO,MAAA;AAAA,MACG,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,OAAA;AAAA,MAKO,MAAA;AAAA,MACG,SAAA;AAAA,IACG;AAAA,EACb;AAAA,EACJ,MAAAC,GAAA;AAEI,UAAAT,IAAAU,EAAAD,GAAA,MAAA,GACAE,IAAAV,EAAA,EAAA,GACAW,IAAAb,EAAAC,CAAA,GACAa,IAAAC,EAAA,OAAA;AAAA,MAA+C,iCAAAL,EAAA;AAAA,IACJ,EAAA,GAI3CM,IAAAC;AAAA,MAAmEC;AAAA,MAC/D,OAAA;AAAA,QACO,qBAAA;AAAA,MACkB;AAAA,IACzB,GAGJ,EAAA,qBAAAC,EAAA,IAAAH,EAAA,GAKAI,IAAA,MAAA;AACI,MAAAR,EAAA,QAAA;AAAA,IAA0B;AAI9B,WAAAR;AAAA,MAAA,MAAAH,EAAA;AAAA,MACe,CAAAoB,GAAAC,MAAA;AAEP,QAAAD,MAAAC,MACIV,EAAA,QAAA;AAAA,MACJ;AAAA,IACJ,GAGJ;AAAA;AAAA,MAAO,wBAAAE;AAAA,MAEH,mBAAAF;AAAA,MACA,qBAAAO;AAAA,MACA,sBAAAN;AAAA;AAAA,MACA,YAAAO;AAAA,IAGA;AAAA,EACJ;AAER,CAAA;yCAtGSG,IAAA,EAAA,OAAA,mCAAA;;;AAVS,SAAAC,EAAA,GAAAC,EAAA,OAAAC,GAAA;AAAA,IAA4CC,EAAA,OAAAJ,GAAA;AAAA,MADtDK,EAAA,SAAA,iBAAA,CAAAA,EAAA,qBAAAJ,EAAA,GAAAC,EAAA,OAAA;AAAA,QAEsB,KAAA;AAAA,QACb,eAAA;AAAA,QAEM,OAAAI,EAAA,CAAA,0BAAAD,EAAA,sBAAA,CAAA;AAAA,QACe,KAAAA,EAAA;AAAA,QACpB,KAAAA,EAAA;AAAA;MAEwD,GAAA,MAAA,IAAAE,CAAA,MAAAN,EAAA,GAAAO,EAAAC,GAAA;AAAA,QAAvB,KAAA;AAAA,QAAE,aAAAJ,EAAA;AAAA;MAEjD,GAAA,MAAA,GAAA,CAAA,WAAA,CAAA;AAAA,IAAA,CAAA;AAAA,IACID,EAAA,OAAAM,GAAA;AAAA,MAAAL,EAAA,uBAAAJ,EAAA,GAAAC,EAAA,QAAAS,GAAAC,EAAAP,EAAA,KAAA,GAAA,CAAA,MAAAJ,EAAA,GAAAO,EAAAK,GAAA;AAAA,QACkC,KAAA;AAAA;;;;;;;;;;;"}
1
+ {"version":3,"file":"payment-method.d5595a7c.js","sources":["../../../vue2/src/components/payment-method/composables/use-payment-icon/use-payment-icon.ts","../../../vue2/src/components/payment-method/payment-method.vue"],"sourcesContent":["import { ref, Ref, watch } from 'vue';\n\n/**\n * Generates the payment icon URl from a payment icons string.\n * @param paymentType - the payment icon you wish to generate a URL for.\n * @returns the payment icon URL to the SVG for a specific payment icon.\n */\nexport const paymentMethodToCdnUrl = (paymentType: string) =>\n `https://checkoutshopper-live.cdn.adyen.com/checkoutshopper/images/logos/${paymentType.toLowerCase()}.svg`;\n\n/**\n * Dynamically retrieves the payment method icon SVG from the @adyen/ui-assets-payment-method-icons package.\n *\n * @param type the type of payment method\n * @param useFallback if fallback icon should be used in case of error\n * @returns\n */\nexport const usePaymentIcon = (type: Ref<string>) => {\n const paymentType = ref(type);\n const paymentIconSrc = ref<string>();\n\n watch(\n paymentType,\n newPaymentType => {\n if (newPaymentType == null || newPaymentType === 'Unknowncard') {\n return;\n }\n // TODO: what about when to use checkoutshopper-test? Should we add this to the config of Bento?\n paymentIconSrc.value = paymentMethodToCdnUrl(newPaymentType);\n },\n { immediate: true }\n );\n\n return paymentIconSrc;\n};\n","<template>\n <div class=\"b-payment-method\">\n <div class=\"b-payment-method__icon-container\">\n <img\n v-if=\"type !== 'Unknowncard' && !hasErroredOnImage\"\n aria-hidden=\"true\"\n class=\"b-payment-method__icon\"\n :class=\"conditionalIconClasses\"\n :alt=\"label\"\n :src=\"paymentMethodIconSrc\"\n @error=\"onSrcError\"\n />\n <unknown-card-icon v-else :svg-title=\"label\" aria-hidden=\"true\" />\n </div>\n <div class=\"b-payment-method__label\">\n <span v-if=\"isSummaryGridLayout\">{{ label }}</span>\n <bento-typography v-else el=\"span\">{{ label }}</bento-typography>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, inject, ref, toRef, watch } from 'vue';\n import { BentoTypography } from '@/components/typography';\n import { SUMMARY_GRID_LAYOUT_INJECTION_KEY } from '@/components/summary-grid/summary-grid.keys';\n import { BentoSummaryGridLayout } from '@/components/summary-grid';\n import { usePaymentIcon } from './composables/use-payment-icon/use-payment-icon';\n import UnknownCardIcon from '@adyen/ui-assets-payment-method-icons/vue/unknowncard';\n\n /**\n * A payment method type component to display the type's icon and label.\n *\n * @example\n * import { BentoPaymentMethod} from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoPaymentMethod },\n * template: `\n * <bento-payment-method type=\"Ideal\" />\n * `\n * }\n */\n export default defineComponent({\n name: 'bento-payment-method',\n components: { BentoTypography, UnknownCardIcon },\n props: {\n /**\n * The type of payment method to display.\n */\n type: {\n type: String,\n default: 'Unknowncard',\n },\n\n /**\n * The label describing to the payment method icon.\n */\n label: {\n type: String,\n required: true,\n },\n\n /**\n * Render payment method icon in a smaller size\n */\n small: {\n type: Boolean,\n default: false,\n },\n },\n setup(props) {\n const type = toRef(props, 'type');\n const hasErroredOnImage = ref(false);\n const paymentMethodIconSrc = usePaymentIcon(type);\n const conditionalIconClasses = computed(() => ({\n 'b-payment-method__icon--small': props.small,\n }));\n\n /* == Summary-grid styles == */\n const registerPaymentMethodInSummaryGrid: BentoSummaryGridLayout = inject(\n SUMMARY_GRID_LAYOUT_INJECTION_KEY,\n () => ({\n isSummaryGridLayout: false,\n })\n );\n\n const { isSummaryGridLayout } = registerPaymentMethodInSummaryGrid();\n\n /**\n * This funciton is fired if the payment image source is not valid and has thrown an error.\n */\n const onSrcError = () => {\n hasErroredOnImage.value = true;\n };\n\n // Reset the image error to be able to load the new payment type\n watch(\n () => type.value,\n (newType, oldType) => {\n if (newType !== oldType) {\n hasErroredOnImage.value = false;\n }\n }\n );\n\n return {\n // Values\n conditionalIconClasses,\n hasErroredOnImage,\n isSummaryGridLayout,\n paymentMethodIconSrc,\n\n // Methods\n onSrcError,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./payment-method.scss\" />\n"],"names":["paymentMethodToCdnUrl","paymentType","usePaymentIcon","type","ref","paymentIconSrc","watch","newPaymentType","_sfc_main","defineComponent","BentoTypography","UnknownCardIcon","props","toRef","hasErroredOnImage","paymentMethodIconSrc","conditionalIconClasses","computed","registerPaymentMethodInSummaryGrid","inject","SUMMARY_GRID_LAYOUT_INJECTION_KEY","isSummaryGridLayout","onSrcError","newType","oldType","_hoisted_2","openBlock","createElementBlock","_hoisted_1","createElementVNode","_ctx","normalizeClass","_hoisted_3","createBlock","_component_unknown_card_icon","_hoisted_4","_hoisted_5","toDisplayString","_component_bento_typography"],"mappings":";;;;;;AAOO,MAAAA,IAAA,CAAAC,MAAA,2EAAAA,EAAA,YAAA,SAUMC,IAAA,CAAAC,MAAA;AACT,QAAAF,IAAAG,EAAAD,CAAA,GACAE,IAAAD,EAAA;AAEA,SAAAE;AAAA,IAAAL;AAAA,IACI,CAAAM,MAAA;AAEI,MAAAA,KAAA,QAAAA,MAAA,kBAIAF,EAAA,QAAAL,EAAAO,CAAA;AAAA,IAA2D;AAAA,IAC/D,EAAA,WAAA,GAAA;AAAA,EACkB,GAGtBF;AACJ,GCQIG,IAAAC,EAAA;AAAA,EAA+B,MAAA;AAAA,EACrB,YAAA,EAAA,iBAAAC,GAAA,iBAAAC,EAAA;AAAA,EACyC,OAAA;AAAA;AAAA;AAAA;AAAA,IACxC,MAAA;AAAA,MAIG,MAAA;AAAA,MACI,SAAA;AAAA,IACG;AAAA;AAAA;AAAA;AAAA,IACb,OAAA;AAAA,MAKO,MAAA;AAAA,MACG,UAAA;AAAA,IACI;AAAA;AAAA;AAAA;AAAA,IACd,OAAA;AAAA,MAKO,MAAA;AAAA,MACG,SAAA;AAAA,IACG;AAAA,EACb;AAAA,EACJ,MAAAC,GAAA;AAEI,UAAAT,IAAAU,EAAAD,GAAA,MAAA,GACAE,IAAAV,EAAA,EAAA,GACAW,IAAAb,EAAAC,CAAA,GACAa,IAAAC,EAAA,OAAA;AAAA,MAA+C,iCAAAL,EAAA;AAAA,IACJ,EAAA,GAI3CM,IAAAC;AAAA,MAAmEC;AAAA,MAC/D,OAAA;AAAA,QACO,qBAAA;AAAA,MACkB;AAAA,IACzB,GAGJ,EAAA,qBAAAC,EAAA,IAAAH,EAAA,GAKAI,IAAA,MAAA;AACI,MAAAR,EAAA,QAAA;AAAA,IAA0B;AAI9B,WAAAR;AAAA,MAAA,MAAAH,EAAA;AAAA,MACe,CAAAoB,GAAAC,MAAA;AAEP,QAAAD,MAAAC,MACIV,EAAA,QAAA;AAAA,MACJ;AAAA,IACJ,GAGJ;AAAA;AAAA,MAAO,wBAAAE;AAAA,MAEH,mBAAAF;AAAA,MACA,qBAAAO;AAAA,MACA,sBAAAN;AAAA;AAAA,MACA,YAAAO;AAAA,IAGA;AAAA,EACJ;AAER,CAAA;yCAtGSG,IAAA,EAAA,OAAA,mCAAA;;;AAVS,SAAAC,EAAA,GAAAC,EAAA,OAAAC,GAAA;AAAA,IAA4CC,EAAA,OAAAJ,GAAA;AAAA,MADtDK,EAAA,SAAA,iBAAA,CAAAA,EAAA,qBAAAJ,EAAA,GAAAC,EAAA,OAAA;AAAA,QAEsB,KAAA;AAAA,QACb,eAAA;AAAA,QAEM,OAAAI,EAAA,CAAA,0BAAAD,EAAA,sBAAA,CAAA;AAAA,QACe,KAAAA,EAAA;AAAA,QACpB,KAAAA,EAAA;AAAA;MAEwD,GAAA,MAAA,IAAAE,CAAA,MAAAN,EAAA,GAAAO,EAAAC,GAAA;AAAA,QAAvB,KAAA;AAAA,QAAE,aAAAJ,EAAA;AAAA;MAEjD,GAAA,MAAA,GAAA,CAAA,WAAA,CAAA;AAAA,IAAA,CAAA;AAAA,IACID,EAAA,OAAAM,GAAA;AAAA,MAAAL,EAAA,uBAAAJ,EAAA,GAAAC,EAAA,QAAAS,GAAAC,EAAAP,EAAA,KAAA,GAAA,CAAA,MAAAJ,EAAA,GAAAO,EAAAK,GAAA;AAAA,QACkC,KAAA;AAAA;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { openBlock as t, createElementBlock as s, mergeProps as r, toDisplayString as n, createCommentVNode as i, createElementVNode as l } from "vue";
2
2
  import { _ as a } from "./_plugin-vue_export-helper.dad06003.js";
3
- import "../assets/checkmark-circle-fill.css";
3
+ import "../assets/cross.css";
4
4
  let o = 0;
5
5
  const c = {
6
6
  beforeCreate() {
@@ -26,4 +26,4 @@ const v = /* @__PURE__ */ a(c, [["render", m]]);
26
26
  export {
27
27
  v as R
28
28
  };
29
- //# sourceMappingURL=refresh.53691839.js.map
29
+ //# sourceMappingURL=refresh.bd60f6a8.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"refresh.53691839.js","sources":["../../../../node_modules/@adyen/ui-assets-icons-16/dist/vue/refresh.vue"],"sourcesContent":["\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=\"M2.75 8C2.75 5.10421 5.10421 2.75 8 2.75C9.88725 2.75 11.5441 3.74881 12.472 5.25H9.25V6.75H14.75V1.25H13.25V3.75995C12.0118 2.23 10.1214 1.25 8 1.25C4.27579 1.25 1.25 4.27579 1.25 8C1.25 11.7242 4.27579 14.75 8 14.75C11.7242 14.75 14.75 11.7242 14.75 8H13.25C13.25 10.8958 10.8958 13.25 8 13.25C5.10421 13.25 2.75 10.8958 2.75 8Z\"/></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"],"names":["uuid","openBlock","createElementBlock","mergeProps","_ctx","_hoisted_1","toDisplayString"],"mappings":";;;AAKI,IAAAA,IAAA;;EAGI,eAAA;8BAEIA,KAAA;AAAA;;EARkM,MAAA;AAAA,EAAe,GAAA;;;AAAzN,SAAAC,EAAA,GAAAC,EAAA,OAAAC,EAAA,EAAA,MAAA,MAAA,GAAAC,EAAA,QAAA;AAAA,IAAgC,OAAA;AAAA,IAA2B,OAAA;AAAA,IAAmC,OAAA;AAAA,IAAW,QAAA;AAAA,IAAY,MAAA;AAAA;6BAAYH,EAAA,GAAAC,EAAA,SAAAG,GAAAC,EAAAF,EAAA,OAAA,WAAA,CAAA,GAAA,CAAA;;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"refresh.bd60f6a8.js","sources":["../../../../node_modules/@adyen/ui-assets-icons-16/dist/vue/refresh.vue"],"sourcesContent":["\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=\"M2.75 8C2.75 5.10421 5.10421 2.75 8 2.75C9.88725 2.75 11.5441 3.74881 12.472 5.25H9.25V6.75H14.75V1.25H13.25V3.75995C12.0118 2.23 10.1214 1.25 8 1.25C4.27579 1.25 1.25 4.27579 1.25 8C1.25 11.7242 4.27579 14.75 8 14.75C11.7242 14.75 14.75 11.7242 14.75 8H13.25C13.25 10.8958 10.8958 13.25 8 13.25C5.10421 13.25 2.75 10.8958 2.75 8Z\"/></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"],"names":["uuid","openBlock","createElementBlock","mergeProps","_ctx","_hoisted_1","toDisplayString"],"mappings":";;;AAKI,IAAAA,IAAA;;EAGI,eAAA;8BAEIA,KAAA;AAAA;;EARkM,MAAA;AAAA,EAAe,GAAA;;;AAAzN,SAAAC,EAAA,GAAAC,EAAA,OAAAC,EAAA,EAAA,MAAA,MAAA,GAAAC,EAAA,QAAA;AAAA,IAAgC,OAAA;AAAA,IAA2B,OAAA;AAAA,IAAmC,OAAA;AAAA,IAAW,QAAA;AAAA,IAAY,MAAA;AAAA;6BAAYH,EAAA,GAAAC,EAAA,SAAAG,GAAAC,EAAAF,EAAA,OAAA,WAAA,CAAA,GAAA,CAAA;;;;;","x_google_ignoreList":[0]}
@@ -1,6 +1,6 @@
1
1
  import { openBlock as s, createElementBlock as o, mergeProps as n, toDisplayString as r, createCommentVNode as c, createElementVNode as e } from "vue";
2
2
  import { _ as l } from "./_plugin-vue_export-helper.dad06003.js";
3
- import "../assets/checkmark-circle-fill.css";
3
+ import "../assets/cross.css";
4
4
  let i = 0;
5
5
  const a = {
6
6
  beforeCreate() {
@@ -41,4 +41,4 @@ const L = /* @__PURE__ */ l(a, [["render", g]]);
41
41
  export {
42
42
  L as S
43
43
  };
44
- //# sourceMappingURL=search.4e4ee4dd.js.map
44
+ //# sourceMappingURL=search.ade93bda.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.4e4ee4dd.js","sources":["../../../../node_modules/@adyen/ui-assets-icons-16/dist/vue/search.vue"],"sourcesContent":["\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-search__a' + uuid + ')'\"><path fill=\"#00112C\" d=\"M8.31686 0.379702C7.00749 0.119252 5.65029 0.252925 4.41689 0.763816C3.18349 1.27471 2.12928 2.13987 1.38758 3.2499C0.645881 4.35994 0.25 5.66498 0.25 7C0.25 8.79021 0.961159 10.5071 2.22703 11.773C3.4929 13.0388 5.20979 13.75 7 13.75C8.33502 13.75 9.64007 13.3541 10.7501 12.6124C10.9096 12.5059 11.064 12.3928 11.2131 12.2738L15.0001 16.0608L16.0608 15.0001L12.2737 11.2131C12.6674 10.7203 12.9922 10.1721 13.2362 9.58312C13.7471 8.34972 13.8808 6.99252 13.6203 5.68314C13.3598 4.37377 12.717 3.17104 11.773 2.22703C10.829 1.28303 9.62623 0.640153 8.31686 0.379702ZM4.99091 2.14964C5.95022 1.75228 7.00582 1.64831 8.02422 1.85088C9.04262 2.05345 9.97808 2.55347 10.7123 3.28769C11.4465 4.02192 11.9465 4.95738 12.1491 5.97578C12.3517 6.99418 12.2477 8.04978 11.8504 9.00909C11.453 9.9684 10.7801 10.7883 9.91674 11.3652C9.05339 11.9421 8.03835 12.25 7 12.25C5.60761 12.25 4.27225 11.6969 3.28769 10.7123C2.30312 9.72775 1.75 8.39239 1.75 7C1.75 5.96165 2.05791 4.94662 2.63478 4.08326C3.21166 3.2199 4.0316 2.547 4.99091 2.14964Z\"/></g><defs><clipPath :id=\"'uia-icons-16-search__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"],"names":["uuid","openBlock","createElementBlock","mergeProps","_ctx","_hoisted_1","toDisplayString"],"mappings":";;;AAKI,IAAAA,IAAA;;EAGI,eAAA;8BAEIA,KAAA;AAAA;;EAR6P,MAAA;AAAA,EAAe,GAAA;;;;EAA6kC,OAAA;AAAA,EAAW,QAAA;AAAA,EAAY,MAAA;;;;;AAAx3C,SAAAC,EAAA,GAAAC,EAAA,OAAAC,EAAA,EAAA,MAAA,MAAA,GAAAC,EAAA,QAAA;AAAA,IAAgC,OAAA;AAAA,IAA2B,OAAA;AAAA,IAAmC,OAAA;AAAA,IAAW,QAAA;AAAA,IAAY,MAAA;AAAA;6BAAYH,EAAA,GAAAC,EAAA,SAAAG,GAAAC,EAAAF,EAAA,OAAA,WAAA,CAAA,GAAA,CAAA;;MAAuE,aAAA,gCAAAA,EAAA,OAAA;AAAA;;;QAA8mC,IAAA,2BAAAA,EAAA;AAAA;;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"search.ade93bda.js","sources":["../../../../node_modules/@adyen/ui-assets-icons-16/dist/vue/search.vue"],"sourcesContent":["\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-search__a' + uuid + ')'\"><path fill=\"#00112C\" d=\"M8.31686 0.379702C7.00749 0.119252 5.65029 0.252925 4.41689 0.763816C3.18349 1.27471 2.12928 2.13987 1.38758 3.2499C0.645881 4.35994 0.25 5.66498 0.25 7C0.25 8.79021 0.961159 10.5071 2.22703 11.773C3.4929 13.0388 5.20979 13.75 7 13.75C8.33502 13.75 9.64007 13.3541 10.7501 12.6124C10.9096 12.5059 11.064 12.3928 11.2131 12.2738L15.0001 16.0608L16.0608 15.0001L12.2737 11.2131C12.6674 10.7203 12.9922 10.1721 13.2362 9.58312C13.7471 8.34972 13.8808 6.99252 13.6203 5.68314C13.3598 4.37377 12.717 3.17104 11.773 2.22703C10.829 1.28303 9.62623 0.640153 8.31686 0.379702ZM4.99091 2.14964C5.95022 1.75228 7.00582 1.64831 8.02422 1.85088C9.04262 2.05345 9.97808 2.55347 10.7123 3.28769C11.4465 4.02192 11.9465 4.95738 12.1491 5.97578C12.3517 6.99418 12.2477 8.04978 11.8504 9.00909C11.453 9.9684 10.7801 10.7883 9.91674 11.3652C9.05339 11.9421 8.03835 12.25 7 12.25C5.60761 12.25 4.27225 11.6969 3.28769 10.7123C2.30312 9.72775 1.75 8.39239 1.75 7C1.75 5.96165 2.05791 4.94662 2.63478 4.08326C3.21166 3.2199 4.0316 2.547 4.99091 2.14964Z\"/></g><defs><clipPath :id=\"'uia-icons-16-search__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"],"names":["uuid","openBlock","createElementBlock","mergeProps","_ctx","_hoisted_1","toDisplayString"],"mappings":";;;AAKI,IAAAA,IAAA;;EAGI,eAAA;8BAEIA,KAAA;AAAA;;EAR6P,MAAA;AAAA,EAAe,GAAA;;;;EAA6kC,OAAA;AAAA,EAAW,QAAA;AAAA,EAAY,MAAA;;;;;AAAx3C,SAAAC,EAAA,GAAAC,EAAA,OAAAC,EAAA,EAAA,MAAA,MAAA,GAAAC,EAAA,QAAA;AAAA,IAAgC,OAAA;AAAA,IAA2B,OAAA;AAAA,IAAmC,OAAA;AAAA,IAAW,QAAA;AAAA,IAAY,MAAA;AAAA;6BAAYH,EAAA,GAAAC,EAAA,SAAAG,GAAAC,EAAAF,EAAA,OAAA,WAAA,CAAA,GAAA,CAAA;;MAAuE,aAAA,gCAAAA,EAAA,OAAA;AAAA;;;QAA8mC,IAAA,2BAAAA,EAAA;AAAA;;;;;","x_google_ignoreList":[0]}
@@ -1,8 +1,8 @@
1
1
  import { computed as A, defineComponent as D, resolveComponent as R, openBlock as W, createBlock as B, normalizeClass as I, withCtx as O, createVNode as U, createTextVNode as G, toDisplayString as H, reactive as k, createApp as $, h as L, nextTick as q } from "vue";
2
- import { l as u } from "./events.58c00e6d.js";
2
+ import { l as u } from "./events.f14a214b.js";
3
3
  import { g as M } from "./unique-id.a2a2b458.js";
4
- import { P as x, a as F, b as j } from "./index.9bf04b01.js";
5
- import { B as V } from "./index.a3d60e4f.js";
4
+ import { P as x, a as F, b as j } from "./index.6295e754.js";
5
+ import { B as V } from "./index.ee15db35.js";
6
6
  import { _ as z } from "./_plugin-vue_export-helper.dad06003.js";
7
7
  import "../assets/tooltip.css";
8
8
  const d = { ...x };
@@ -187,4 +187,4 @@ export {
187
187
  g as a,
188
188
  st as b
189
189
  };
190
- //# sourceMappingURL=tooltip.1084d92b.js.map
190
+ //# sourceMappingURL=tooltip.36172265.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.1084d92b.js","sources":["../../../vue2/src/directives/tooltip/tooltip.types.ts","../../../vue2/src/types/utils-events.ts","../../../vue2/src/components/tooltip/tooltip.vue","../../../vue2/src/directives/tooltip/tooltip.ts"],"sourcesContent":["import { PopperContainerPositionBasic } from '@/components/popper-container';\nimport type { DirectiveBinding } from 'vue/types/options';\n\nexport const BentoTooltipPosition = { ...PopperContainerPositionBasic };\nexport type BentoTooltipPosition = PopperContainerPositionBasic;\n\nexport enum BentoTooltipState {\n HIDDEN = 'hidden',\n}\n\nexport interface BentoTooltipDirectiveBinding extends Readonly<DirectiveBinding> {\n readonly value: string;\n}\n","import type { Vue } from 'vue-demi';\n\nexport interface ListenOptions {\n capture?: boolean;\n passive?: boolean;\n once?: boolean;\n self?: boolean;\n vm?: Vue;\n onCleanup?: () => void;\n}\n\nexport enum EventKey {\n ESCAPE = 'Escape',\n ENTER = 'Enter',\n ARROW_LEFT = 'ArrowLeft',\n ARROW_UP = 'ArrowUp',\n ARROW_RIGHT = 'ArrowRight',\n ARROW_DOWN = 'ArrowDown',\n PAGE_UP = 'PageUp',\n PAGE_DOWN = 'PageDown',\n END = 'End',\n HOME = 'Home',\n}\n\n/**\n * @deprecated `Event.keyCode` is deprecated. Use `EventKey` instead\n */\nexport enum KeyCode {\n ESCAPE = 27,\n ENTER = 13,\n ARROW_LEFT = 37,\n ARROW_UP = 38,\n ARROW_RIGHT = 39,\n ARROW_DOWN = 40,\n PAGE_UP = 33,\n PAGE_DOWN = 34,\n END = 35,\n HOME = 36,\n}\n","<template>\n <popper-container\n :id=\"id\"\n :aria-role=\"PopperContainerAriaRole.TOOLTIP\"\n :aria-hidden=\"!isShown\"\n :arrow=\"{ classes: ['b-tooltip__arrow'] }\"\n :class=\"conditionalClasses\"\n :fallback-position=\"['top', 'bottom', 'right', 'left']\"\n :is-hidden=\"!isShown\"\n :offset=\"[0, 4]\"\n :position=\"position\"\n :tabindex=\"tabIndex\"\n :target-element=\"targetElement\"\n class=\"b-tooltip\"\n >\n <bento-typography el=\"span\" variant=\"caption\">\n {{ content }}\n </bento-typography>\n </popper-container>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, PropType } from 'vue';\n import { BentoTooltipPosition, BentoTooltipState } from '@/directives/tooltip/tooltip.types';\n import { PopperContainer, PopperContainerAriaRole } from '@/components/popper-container';\n import { BentoTypography } from '@/components/typography';\n import { VueNodeElement } from '@/types';\n\n /**\n * Tooltip container, to be used internally to render the tooltip container where the text is shown.\n */\n export const Tooltip = {\n name: 'tooltip',\n components: { BentoTypography, PopperContainer },\n props: {\n /**\n * The tooltip's id. Necessary for accessibility purposes.\n */\n id: { type: String, default: null },\n /**\n * Tooltip's target reference to the DOM element or Vue component.\n * The tooltip will position itself relatively to target element, in the specified position.\n */\n targetElement: { type: [Element, Object] as PropType<VueNodeElement>, required: true },\n /**\n * Tooltip's position relative to the target element.\n * Possible values are: 'top', 'bottom', 'left' and 'right'.\n */\n position: {\n type: String as PropType<BentoTooltipPosition>,\n default: BentoTooltipPosition.TOP,\n validator: value => Object.values(BentoTooltipPosition).includes(value as BentoTooltipPosition),\n },\n /**\n * Tooltip's offset.\n * If specified, the tooltip will have an offset in pixels between it and the target element\n * in specified position.\n */\n offset: { type: Number, default: 0 },\n /**\n * Tooltip's text content.\n */\n content: { type: String, required: true },\n /**\n * Shows / Hides the Tooltip component\n */\n isShown: { type: Boolean, default: false },\n },\n setup(props) {\n const conditionalClasses = computed(() => ({\n [`b-tooltip--${BentoTooltipState.HIDDEN}`]: !props.isShown,\n }));\n\n const tabIndex = computed((): number => (props.isShown ? 1 : -1));\n\n return {\n // Enums\n PopperContainerAriaRole,\n\n // Values\n conditionalClasses,\n tabIndex,\n };\n },\n };\n\n export default defineComponent(Tooltip);\n</script>\n\n<style lang=\"scss\" scoped src=\"./tooltip.scss\" />\n","import { nextTick, reactive } from 'vue';\nimport { listen } from '@/utils/ts/events';\nimport { generateUid } from '@/utils/ts/unique-id';\nimport { EventKey } from '@/types/utils-events';\nimport { BentoTooltipDirectiveBinding, BentoTooltipPosition } from './tooltip.types';\nimport { createApp, h, isVue2, Vue2 } from 'vue-demi';\nimport BentoTooltip from '@/components/tooltip/tooltip.vue';\n\ninterface TooltipInstance {\n target: HTMLElement;\n content: string;\n position: BentoTooltipPosition;\n removeListeners: Array<() => void>;\n}\n\n/**\n * Tooltip directive to render a tooltip on a given HTML element or component.\n *\n * @usage\n * import { BentoTooltipDirective, BentoTooltipPosition } from '@adyen/bento-vue2';\n *\n * export default {\n * directives: { BentoTooltipDirective },\n * template: `\n * <bento-button\n * v-bento-tooltip-directive:BentoTooltipPosition.BOTTOM=\"refToTextContent\"\n * >\n * Button text\n * </bento-button>\n * `,\n * }\n */\nconst tooltipInstances: Array<TooltipInstance> = [];\nconst ariaDescribedByAttr = 'aria-describedby';\nconst tooltipId = generateUid('tooltip');\n\nlet tooltipVNode;\n\n// Reusable Tooltip component instance.\nlet tooltip;\n// Global visibility state to prevent tooltips from showing after it being instructed to hide\nlet open = false;\n\nconst tooltipProps = reactive({\n targetElement: null,\n content: 'START_MESSAGE',\n id: tooltipId,\n position: undefined,\n isShown: false,\n});\n\n/**\n * Creates a new Tooltip component instance and inserts it into DOM.\n * @param {HTMLElement} el the target element for the Tooltip\n * @internal\n */\nconst createTooltip = (el: HTMLElement) => {\n // Sets the target's tabindex so as to make the tooltip interactive via keyboard navigation\n el.setAttribute('tabindex', '0');\n\n if (isVue2) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore: Type error for Vue method in Vue 3 but this code only executes in vue 2 so ignoring.\n const TooltipComponent = Vue2.extend(BentoTooltip);\n tooltip = new TooltipComponent({ propsData: { targetElement: el, content: '', id: tooltipId } }).$mount();\n document.body.appendChild(tooltip.$el);\n } else {\n tooltipProps.targetElement = el;\n tooltip = createApp({\n components: { BentoTooltip },\n setup() {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore: Type error for h method in Vue 2 but this code only executes in vue 3 so ignoring.\n return () => h(BentoTooltip, { ...tooltipProps }, '');\n },\n });\n tooltipVNode = document.createElement('div');\n tooltipVNode.id = 'tooltip-parent';\n document.body.appendChild(tooltipVNode);\n tooltip.mount('#tooltip-parent');\n }\n};\n\n/**\n * Removes Tooltip component instance from the DOM and destroys it.\n * @internal\n */\nconst destroyTooltip = () => {\n if (isVue2) {\n if (document.contains(tooltip.$el)) {\n document.body.removeChild(tooltip.$el);\n }\n tooltip.$destroy();\n } else {\n tooltip.unmount();\n if (document.contains(tooltipVNode)) {\n document.body.removeChild(tooltipVNode);\n }\n }\n\n tooltip = undefined;\n};\n\n/**\n * Returns tooltip position based on the specified argument.\n * By default returns 'top' if no argument is specified.\n * @param {BentoTooltipDirectiveBinding} binding Directive binding object.\n * @returns {string} Tooltip position.\n * @internal\n */\nconst getTooltipPosition = (binding: BentoTooltipDirectiveBinding): BentoTooltipPosition =>\n Object.values(BentoTooltipPosition).includes(binding.arg as BentoTooltipPosition)\n ? (binding.arg as BentoTooltipPosition)\n : BentoTooltipPosition.TOP;\n\n/**\n * Get the correct Tooltip instance for the given target element\n * @param {HTMLElement} el the target element for the Tooltip\n * @returns\n */\nconst getTooltipInstanceForTarget = (el: HTMLElement): TooltipInstance =>\n tooltipInstances.find(\n ctx =>\n // isEqualNode doesn't work correct for svg element, hence the second check here\n ctx.target.isEqualNode(el) && ctx.target === el\n );\n\n/**\n * On mouse enter event updates tooltip with correct content and position, and shows tooltip.\n * @param {?HTMLElement} el - Target element\n * @internal\n */\nconst showTooltip = (el?: HTMLElement) => {\n const tooltipInstance = getTooltipInstanceForTarget(el);\n\n // If tooltip content is empty – do not show the tooltip\n if (!tooltipInstance.content || !el) {\n return;\n }\n\n if (el) {\n el.setAttribute(ariaDescribedByAttr, tooltipId);\n }\n\n // If the Tooltip is inside a dialog, move tooltip element inside of it\n // It gets restored to <body> when it gets hidden\n let isDialogOpen = false;\n document.querySelectorAll('dialog').forEach(node => {\n isDialogOpen = node?.open || isDialogOpen;\n });\n\n if (isDialogOpen) {\n if (isVue2) {\n el.after(tooltip.$el);\n // eslint-disable-next-line no-underscore-dangle\n } else if (tooltip?._instance?.vnode?.el) {\n // eslint-disable-next-line no-underscore-dangle\n el.after(tooltip?._instance?.vnode?.el);\n }\n isDialogOpen = false;\n }\n\n open = true;\n\n tooltip.content = tooltipInstance.content;\n tooltip.position = tooltipInstance.position;\n\n tooltipProps.content = tooltipInstance.content;\n tooltipProps.position = tooltipInstance.position;\n\n // Do calculations on a next tick, otherwise tooltip position calculations will be wrong\n nextTick(() => {\n // Do not open tooltip if it has been instructed to hide in process\n if (!open) {\n return;\n }\n tooltip.targetElement = el;\n tooltip.isShown = true;\n\n tooltipProps.targetElement = el;\n tooltipProps.isShown = true;\n });\n};\n\n/**\n * On mouse leave event hides the tooltip.\n * @internal\n */\nconst hideTooltip = (el?: HTMLElement) => {\n // Restore the tooltip element to body if it got move out of <body>\n if (tooltip.$el?.parentElement?.tagName && tooltip.$el?.parentElement?.tagName !== 'BODY') {\n document.body.appendChild(tooltip.$el);\n }\n\n open = false;\n tooltip.isShown = false;\n tooltipProps.isShown = false;\n if (el) {\n el.removeAttribute(ariaDescribedByAttr);\n }\n};\n\nconst tooltipBind = (el: HTMLElement, binding: BentoTooltipDirectiveBinding) => {\n // eslint-disable-next-line no-prototype-builtins\n if (!binding.hasOwnProperty('value') || binding.value) {\n // Create Tooltip component singleton instance\n if (tooltipInstances.length === 0) {\n createTooltip(el);\n }\n\n const show = () => showTooltip(el);\n const hide = () => hideTooltip(el);\n\n // Create and store context object, which has directive related handlers and content.\n const tooltipInstance: TooltipInstance = {\n target: el,\n content: binding.value,\n position: getTooltipPosition(binding),\n removeListeners: [\n listen(el, 'mouseenter', show),\n listen(el, 'mouseleave', hide),\n listen(el, 'focus', show),\n listen(el, 'blur', hide),\n listen(el, 'keydown', evt => {\n const keyboardEvent = <KeyboardEvent>evt;\n if (keyboardEvent.key === EventKey.ESCAPE) {\n hide();\n }\n }),\n ],\n };\n\n tooltipInstances.push(tooltipInstance);\n }\n};\n\nconst tooltipUpdate = (el: HTMLElement, binding: BentoTooltipDirectiveBinding) => {\n const tooltipInstance = getTooltipInstanceForTarget(el);\n if (tooltipInstance) {\n // Update tooltip content value if it is changed\n if (tooltipInstance?.content !== binding.value) {\n tooltipInstance.content = binding.value;\n // If tooltip is currently shown for current element – update tooltip's content value\n if (tooltip.isShown && tooltip.targetElement.isEqualNode(el)) {\n if (!tooltipInstance.content) {\n tooltip.isShown = false;\n } else {\n tooltip.content = binding.value;\n }\n }\n }\n // Update tooltip position if it is changed\n if (tooltipInstance.position !== binding.arg) {\n const position = getTooltipPosition(binding);\n tooltipInstance.position = position;\n tooltip.position = position;\n }\n } else if (!tooltipInstance && binding.value) {\n // If I don't have a tooltip instance yet but the value passed was updated\n tooltipBind(el, binding);\n }\n};\n\nconst tooltipUnbind = (el: HTMLElement) => {\n const context = getTooltipInstanceForTarget(el);\n\n // Prevent unbinding/removing when there's nothing to unbind, leads to stack overflow errors\n if (!context) {\n return;\n }\n\n context.removeListeners.forEach(removeListener => {\n removeListener();\n });\n\n // If el is removed while tooltip is displayed, the tooltip doesnt hide as\n // there is no el to trigger mouseleave/blur.\n hideTooltip();\n\n tooltipInstances.splice(tooltipInstances.indexOf(context), 1);\n\n // If all the elements using the directive are removed, then no point having\n // the component on the page.\n if (tooltipInstances.length === 0) {\n destroyTooltip();\n }\n};\n\n/**\n * This directive allows you to bind a tooltip to an element.\n * Tooltip can be configured to be shown in one of four positions: 'top', 'left', 'right' and 'bottom'.\n *\n * @example\n * import { BentoTooltipDirective as BentoTooltip, BentoTooltipPosition } from '@adyen/bento-vue2';\n *\n * export default {\n * directives: { BentoTooltip },\n * methods: {\n * contentExpression() {\n * return 'tooltip content';\n * },\n * },\n * template: `<div>\n * <div v-bento-tooltip:left=\"refToTooltipContent\"></div>\n * <div v-bento-tooltip:[TooltipPosition.BOTTOM]=\"refToTooltipContent\"></div>\n *\n * <!-- If you don't specify the position then by default it's `TooltipPosition.TOP` -->\n * <div v-bento-tooltip=\"refToTooltipContent\"></div>\n *\n * <!-- Tooltip content can also be a data property or a method or a computed property as well -->\n * <div v-bento-tooltip=\"contentExpression()\"></div>\n * </div>`,\n * };\n */\nexport const BentoTooltipDirective = {\n // Vue 2 Directive hooks\n bind(el, binding) {\n tooltipBind(el, binding);\n },\n update(el, binding) {\n tooltipUpdate(el, binding);\n },\n unbind(el) {\n tooltipUnbind(el);\n },\n // Vue 3 Directive hooks\n beforeMount(el, binding) {\n tooltipBind(el, binding);\n },\n mounted(el, binding) {\n tooltipUpdate(el, binding);\n },\n updated(el, binding) {\n tooltipUpdate(el, binding);\n },\n unmounted(el) {\n tooltipUnbind(el);\n },\n};\n"],"names":["BentoTooltipPosition","PopperContainerPositionBasic","BentoTooltipState","BentoTooltipState2","EventKey","EventKey2","KeyCode","KeyCode2","Tooltip","BentoTypography","PopperContainer","value","props","conditionalClasses","computed","tabIndex","PopperContainerAriaRole","_sfc_main","defineComponent","_component_popper_container","resolveComponent","openBlock","createBlock","_ctx","normalizeClass","createVNode","_component_bento_typography","tooltipInstances","ariaDescribedByAttr","tooltipId","generateUid","tooltipVNode","tooltip","open","tooltipProps","reactive","createTooltip","el","createApp","BentoTooltip","h","destroyTooltip","getTooltipPosition","binding","getTooltipInstanceForTarget","ctx","showTooltip","tooltipInstance","isDialogOpen","node","_b","_a","_d","_c","nextTick","hideTooltip","tooltipBind","show","hide","listen","evt","tooltipUpdate","position","tooltipUnbind","context","removeListener","BentoTooltipDirective"],"mappings":"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"}
1
+ {"version":3,"file":"tooltip.36172265.js","sources":["../../../vue2/src/directives/tooltip/tooltip.types.ts","../../../vue2/src/types/utils-events.ts","../../../vue2/src/components/tooltip/tooltip.vue","../../../vue2/src/directives/tooltip/tooltip.ts"],"sourcesContent":["import { PopperContainerPositionBasic } from '@/components/popper-container';\nimport type { DirectiveBinding } from 'vue/types/options';\n\nexport const BentoTooltipPosition = { ...PopperContainerPositionBasic };\nexport type BentoTooltipPosition = PopperContainerPositionBasic;\n\nexport enum BentoTooltipState {\n HIDDEN = 'hidden',\n}\n\nexport interface BentoTooltipDirectiveBinding extends Readonly<DirectiveBinding> {\n readonly value: string;\n}\n","import type { Vue } from 'vue-demi';\n\nexport interface ListenOptions {\n capture?: boolean;\n passive?: boolean;\n once?: boolean;\n self?: boolean;\n vm?: Vue;\n onCleanup?: () => void;\n}\n\nexport enum EventKey {\n ESCAPE = 'Escape',\n ENTER = 'Enter',\n ARROW_LEFT = 'ArrowLeft',\n ARROW_UP = 'ArrowUp',\n ARROW_RIGHT = 'ArrowRight',\n ARROW_DOWN = 'ArrowDown',\n PAGE_UP = 'PageUp',\n PAGE_DOWN = 'PageDown',\n END = 'End',\n HOME = 'Home',\n}\n\n/**\n * @deprecated `Event.keyCode` is deprecated. Use `EventKey` instead\n */\nexport enum KeyCode {\n ESCAPE = 27,\n ENTER = 13,\n ARROW_LEFT = 37,\n ARROW_UP = 38,\n ARROW_RIGHT = 39,\n ARROW_DOWN = 40,\n PAGE_UP = 33,\n PAGE_DOWN = 34,\n END = 35,\n HOME = 36,\n}\n","<template>\n <popper-container\n :id=\"id\"\n :aria-role=\"PopperContainerAriaRole.TOOLTIP\"\n :aria-hidden=\"!isShown\"\n :arrow=\"{ classes: ['b-tooltip__arrow'] }\"\n :class=\"conditionalClasses\"\n :fallback-position=\"['top', 'bottom', 'right', 'left']\"\n :is-hidden=\"!isShown\"\n :offset=\"[0, 4]\"\n :position=\"position\"\n :tabindex=\"tabIndex\"\n :target-element=\"targetElement\"\n class=\"b-tooltip\"\n >\n <bento-typography el=\"span\" variant=\"caption\">\n {{ content }}\n </bento-typography>\n </popper-container>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, PropType } from 'vue';\n import { BentoTooltipPosition, BentoTooltipState } from '@/directives/tooltip/tooltip.types';\n import { PopperContainer, PopperContainerAriaRole } from '@/components/popper-container';\n import { BentoTypography } from '@/components/typography';\n import { VueNodeElement } from '@/types';\n\n /**\n * Tooltip container, to be used internally to render the tooltip container where the text is shown.\n */\n export const Tooltip = {\n name: 'tooltip',\n components: { BentoTypography, PopperContainer },\n props: {\n /**\n * The tooltip's id. Necessary for accessibility purposes.\n */\n id: { type: String, default: null },\n /**\n * Tooltip's target reference to the DOM element or Vue component.\n * The tooltip will position itself relatively to target element, in the specified position.\n */\n targetElement: { type: [Element, Object] as PropType<VueNodeElement>, required: true },\n /**\n * Tooltip's position relative to the target element.\n * Possible values are: 'top', 'bottom', 'left' and 'right'.\n */\n position: {\n type: String as PropType<BentoTooltipPosition>,\n default: BentoTooltipPosition.TOP,\n validator: value => Object.values(BentoTooltipPosition).includes(value as BentoTooltipPosition),\n },\n /**\n * Tooltip's offset.\n * If specified, the tooltip will have an offset in pixels between it and the target element\n * in specified position.\n */\n offset: { type: Number, default: 0 },\n /**\n * Tooltip's text content.\n */\n content: { type: String, required: true },\n /**\n * Shows / Hides the Tooltip component\n */\n isShown: { type: Boolean, default: false },\n },\n setup(props) {\n const conditionalClasses = computed(() => ({\n [`b-tooltip--${BentoTooltipState.HIDDEN}`]: !props.isShown,\n }));\n\n const tabIndex = computed((): number => (props.isShown ? 1 : -1));\n\n return {\n // Enums\n PopperContainerAriaRole,\n\n // Values\n conditionalClasses,\n tabIndex,\n };\n },\n };\n\n export default defineComponent(Tooltip);\n</script>\n\n<style lang=\"scss\" scoped src=\"./tooltip.scss\" />\n","import { nextTick, reactive } from 'vue';\nimport { listen } from '@/utils/ts/events';\nimport { generateUid } from '@/utils/ts/unique-id';\nimport { EventKey } from '@/types/utils-events';\nimport { BentoTooltipDirectiveBinding, BentoTooltipPosition } from './tooltip.types';\nimport { createApp, h, isVue2, Vue2 } from 'vue-demi';\nimport BentoTooltip from '@/components/tooltip/tooltip.vue';\n\ninterface TooltipInstance {\n target: HTMLElement;\n content: string;\n position: BentoTooltipPosition;\n removeListeners: Array<() => void>;\n}\n\n/**\n * Tooltip directive to render a tooltip on a given HTML element or component.\n *\n * @usage\n * import { BentoTooltipDirective, BentoTooltipPosition } from '@adyen/bento-vue2';\n *\n * export default {\n * directives: { BentoTooltipDirective },\n * template: `\n * <bento-button\n * v-bento-tooltip-directive:BentoTooltipPosition.BOTTOM=\"refToTextContent\"\n * >\n * Button text\n * </bento-button>\n * `,\n * }\n */\nconst tooltipInstances: Array<TooltipInstance> = [];\nconst ariaDescribedByAttr = 'aria-describedby';\nconst tooltipId = generateUid('tooltip');\n\nlet tooltipVNode;\n\n// Reusable Tooltip component instance.\nlet tooltip;\n// Global visibility state to prevent tooltips from showing after it being instructed to hide\nlet open = false;\n\nconst tooltipProps = reactive({\n targetElement: null,\n content: 'START_MESSAGE',\n id: tooltipId,\n position: undefined,\n isShown: false,\n});\n\n/**\n * Creates a new Tooltip component instance and inserts it into DOM.\n * @param {HTMLElement} el the target element for the Tooltip\n * @internal\n */\nconst createTooltip = (el: HTMLElement) => {\n // Sets the target's tabindex so as to make the tooltip interactive via keyboard navigation\n el.setAttribute('tabindex', '0');\n\n if (isVue2) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore: Type error for Vue method in Vue 3 but this code only executes in vue 2 so ignoring.\n const TooltipComponent = Vue2.extend(BentoTooltip);\n tooltip = new TooltipComponent({ propsData: { targetElement: el, content: '', id: tooltipId } }).$mount();\n document.body.appendChild(tooltip.$el);\n } else {\n tooltipProps.targetElement = el;\n tooltip = createApp({\n components: { BentoTooltip },\n setup() {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore: Type error for h method in Vue 2 but this code only executes in vue 3 so ignoring.\n return () => h(BentoTooltip, { ...tooltipProps }, '');\n },\n });\n tooltipVNode = document.createElement('div');\n tooltipVNode.id = 'tooltip-parent';\n document.body.appendChild(tooltipVNode);\n tooltip.mount('#tooltip-parent');\n }\n};\n\n/**\n * Removes Tooltip component instance from the DOM and destroys it.\n * @internal\n */\nconst destroyTooltip = () => {\n if (isVue2) {\n if (document.contains(tooltip.$el)) {\n document.body.removeChild(tooltip.$el);\n }\n tooltip.$destroy();\n } else {\n tooltip.unmount();\n if (document.contains(tooltipVNode)) {\n document.body.removeChild(tooltipVNode);\n }\n }\n\n tooltip = undefined;\n};\n\n/**\n * Returns tooltip position based on the specified argument.\n * By default returns 'top' if no argument is specified.\n * @param {BentoTooltipDirectiveBinding} binding Directive binding object.\n * @returns {string} Tooltip position.\n * @internal\n */\nconst getTooltipPosition = (binding: BentoTooltipDirectiveBinding): BentoTooltipPosition =>\n Object.values(BentoTooltipPosition).includes(binding.arg as BentoTooltipPosition)\n ? (binding.arg as BentoTooltipPosition)\n : BentoTooltipPosition.TOP;\n\n/**\n * Get the correct Tooltip instance for the given target element\n * @param {HTMLElement} el the target element for the Tooltip\n * @returns\n */\nconst getTooltipInstanceForTarget = (el: HTMLElement): TooltipInstance =>\n tooltipInstances.find(\n ctx =>\n // isEqualNode doesn't work correct for svg element, hence the second check here\n ctx.target.isEqualNode(el) && ctx.target === el\n );\n\n/**\n * On mouse enter event updates tooltip with correct content and position, and shows tooltip.\n * @param {?HTMLElement} el - Target element\n * @internal\n */\nconst showTooltip = (el?: HTMLElement) => {\n const tooltipInstance = getTooltipInstanceForTarget(el);\n\n // If tooltip content is empty – do not show the tooltip\n if (!tooltipInstance.content || !el) {\n return;\n }\n\n if (el) {\n el.setAttribute(ariaDescribedByAttr, tooltipId);\n }\n\n // If the Tooltip is inside a dialog, move tooltip element inside of it\n // It gets restored to <body> when it gets hidden\n let isDialogOpen = false;\n document.querySelectorAll('dialog').forEach(node => {\n isDialogOpen = node?.open || isDialogOpen;\n });\n\n if (isDialogOpen) {\n if (isVue2) {\n el.after(tooltip.$el);\n // eslint-disable-next-line no-underscore-dangle\n } else if (tooltip?._instance?.vnode?.el) {\n // eslint-disable-next-line no-underscore-dangle\n el.after(tooltip?._instance?.vnode?.el);\n }\n isDialogOpen = false;\n }\n\n open = true;\n\n tooltip.content = tooltipInstance.content;\n tooltip.position = tooltipInstance.position;\n\n tooltipProps.content = tooltipInstance.content;\n tooltipProps.position = tooltipInstance.position;\n\n // Do calculations on a next tick, otherwise tooltip position calculations will be wrong\n nextTick(() => {\n // Do not open tooltip if it has been instructed to hide in process\n if (!open) {\n return;\n }\n tooltip.targetElement = el;\n tooltip.isShown = true;\n\n tooltipProps.targetElement = el;\n tooltipProps.isShown = true;\n });\n};\n\n/**\n * On mouse leave event hides the tooltip.\n * @internal\n */\nconst hideTooltip = (el?: HTMLElement) => {\n // Restore the tooltip element to body if it got move out of <body>\n if (tooltip.$el?.parentElement?.tagName && tooltip.$el?.parentElement?.tagName !== 'BODY') {\n document.body.appendChild(tooltip.$el);\n }\n\n open = false;\n tooltip.isShown = false;\n tooltipProps.isShown = false;\n if (el) {\n el.removeAttribute(ariaDescribedByAttr);\n }\n};\n\nconst tooltipBind = (el: HTMLElement, binding: BentoTooltipDirectiveBinding) => {\n // eslint-disable-next-line no-prototype-builtins\n if (!binding.hasOwnProperty('value') || binding.value) {\n // Create Tooltip component singleton instance\n if (tooltipInstances.length === 0) {\n createTooltip(el);\n }\n\n const show = () => showTooltip(el);\n const hide = () => hideTooltip(el);\n\n // Create and store context object, which has directive related handlers and content.\n const tooltipInstance: TooltipInstance = {\n target: el,\n content: binding.value,\n position: getTooltipPosition(binding),\n removeListeners: [\n listen(el, 'mouseenter', show),\n listen(el, 'mouseleave', hide),\n listen(el, 'focus', show),\n listen(el, 'blur', hide),\n listen(el, 'keydown', evt => {\n const keyboardEvent = <KeyboardEvent>evt;\n if (keyboardEvent.key === EventKey.ESCAPE) {\n hide();\n }\n }),\n ],\n };\n\n tooltipInstances.push(tooltipInstance);\n }\n};\n\nconst tooltipUpdate = (el: HTMLElement, binding: BentoTooltipDirectiveBinding) => {\n const tooltipInstance = getTooltipInstanceForTarget(el);\n if (tooltipInstance) {\n // Update tooltip content value if it is changed\n if (tooltipInstance?.content !== binding.value) {\n tooltipInstance.content = binding.value;\n // If tooltip is currently shown for current element – update tooltip's content value\n if (tooltip.isShown && tooltip.targetElement.isEqualNode(el)) {\n if (!tooltipInstance.content) {\n tooltip.isShown = false;\n } else {\n tooltip.content = binding.value;\n }\n }\n }\n // Update tooltip position if it is changed\n if (tooltipInstance.position !== binding.arg) {\n const position = getTooltipPosition(binding);\n tooltipInstance.position = position;\n tooltip.position = position;\n }\n } else if (!tooltipInstance && binding.value) {\n // If I don't have a tooltip instance yet but the value passed was updated\n tooltipBind(el, binding);\n }\n};\n\nconst tooltipUnbind = (el: HTMLElement) => {\n const context = getTooltipInstanceForTarget(el);\n\n // Prevent unbinding/removing when there's nothing to unbind, leads to stack overflow errors\n if (!context) {\n return;\n }\n\n context.removeListeners.forEach(removeListener => {\n removeListener();\n });\n\n // If el is removed while tooltip is displayed, the tooltip doesnt hide as\n // there is no el to trigger mouseleave/blur.\n hideTooltip();\n\n tooltipInstances.splice(tooltipInstances.indexOf(context), 1);\n\n // If all the elements using the directive are removed, then no point having\n // the component on the page.\n if (tooltipInstances.length === 0) {\n destroyTooltip();\n }\n};\n\n/**\n * This directive allows you to bind a tooltip to an element.\n * Tooltip can be configured to be shown in one of four positions: 'top', 'left', 'right' and 'bottom'.\n *\n * @example\n * import { BentoTooltipDirective as BentoTooltip, BentoTooltipPosition } from '@adyen/bento-vue2';\n *\n * export default {\n * directives: { BentoTooltip },\n * methods: {\n * contentExpression() {\n * return 'tooltip content';\n * },\n * },\n * template: `<div>\n * <div v-bento-tooltip:left=\"refToTooltipContent\"></div>\n * <div v-bento-tooltip:[TooltipPosition.BOTTOM]=\"refToTooltipContent\"></div>\n *\n * <!-- If you don't specify the position then by default it's `TooltipPosition.TOP` -->\n * <div v-bento-tooltip=\"refToTooltipContent\"></div>\n *\n * <!-- Tooltip content can also be a data property or a method or a computed property as well -->\n * <div v-bento-tooltip=\"contentExpression()\"></div>\n * </div>`,\n * };\n */\nexport const BentoTooltipDirective = {\n // Vue 2 Directive hooks\n bind(el, binding) {\n tooltipBind(el, binding);\n },\n update(el, binding) {\n tooltipUpdate(el, binding);\n },\n unbind(el) {\n tooltipUnbind(el);\n },\n // Vue 3 Directive hooks\n beforeMount(el, binding) {\n tooltipBind(el, binding);\n },\n mounted(el, binding) {\n tooltipUpdate(el, binding);\n },\n updated(el, binding) {\n tooltipUpdate(el, binding);\n },\n unmounted(el) {\n tooltipUnbind(el);\n },\n};\n"],"names":["BentoTooltipPosition","PopperContainerPositionBasic","BentoTooltipState","BentoTooltipState2","EventKey","EventKey2","KeyCode","KeyCode2","Tooltip","BentoTypography","PopperContainer","value","props","conditionalClasses","computed","tabIndex","PopperContainerAriaRole","_sfc_main","defineComponent","_component_popper_container","resolveComponent","openBlock","createBlock","_ctx","normalizeClass","createVNode","_component_bento_typography","tooltipInstances","ariaDescribedByAttr","tooltipId","generateUid","tooltipVNode","tooltip","open","tooltipProps","reactive","createTooltip","el","createApp","BentoTooltip","h","destroyTooltip","getTooltipPosition","binding","getTooltipInstanceForTarget","ctx","showTooltip","tooltipInstance","isDialogOpen","node","_b","_a","_d","_c","nextTick","hideTooltip","tooltipBind","show","hide","listen","evt","tooltipUpdate","position","tooltipUnbind","context","removeListener","BentoTooltipDirective"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ref as n, computed as i, inject as c, readonly as u } from "vue";
2
- import { p as d } from "./index.a3d60e4f.js";
2
+ import { p as d } from "./index.ee15db35.js";
3
3
  import { g as m } from "./unique-id.a2a2b458.js";
4
4
  const a = (t, e) => {
5
5
  const o = t.value.findIndex((s) => s.id === e);
@@ -47,4 +47,4 @@ export {
47
47
  l as t,
48
48
  v as u
49
49
  };
50
- //# sourceMappingURL=use-bento-toast-controller.98d8613c.js.map
50
+ //# sourceMappingURL=use-bento-toast-controller.3dc4e113.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-bento-toast-controller.98d8613c.js","sources":["../../../vue2/src/composables/use-bento-toast-controller/toast-stack.ts","../../../vue2/src/composables/use-bento-toast-controller/use-bento-toast-controller.ts"],"sourcesContent":["import { computed, ref, type Ref } from 'vue';\nimport { generateUid } from '@/utils/ts/unique-id';\nimport type { BentoToastItemsList, ToastStack } from './use-bento-toast-controller.types';\n\nconst dismissToast: (stack: Ref<BentoToastItemsList>, id: string) => void = (stack, id) => {\n const toastIndex = stack.value.findIndex(toast => toast.id === id);\n if (toastIndex !== -1) {\n stack.value.splice(toastIndex, 1);\n }\n};\n\nexport const toastStackInjectionKey = Symbol('toast-stack');\n\n/**\n * This utility creates a global reactive state to add new toasts and keep track of them.\n * @returns {ToastStack} An object that contains reactive stack property with all add toasts and a function to add new toasts\n */\nexport const createToastStack: () => ToastStack = () => {\n const stack = ref<BentoToastItemsList>([]);\n\n const addToast = params => {\n const id = generateUid('toast');\n const toast = {\n ...params,\n id,\n dismiss: () => dismissToast(stack, id),\n };\n\n stack.value.unshift(toast);\n\n return {\n dismiss: () => dismissToast(stack, id),\n };\n };\n\n return {\n // Even though stack is a reactive property, its content suppose to be only changed from this module.\n // For this reason we return \"stack\" as readonly prop, but also return methods that can affect \"stack\" content.\n stack: computed(() => Object.freeze(Array.from(stack.value))),\n /**\n * A function that allows to add new toasts\n * @param {Object} params Toast parameters\n * @param {String} params.text A text to display inside the toast\n * @param {Object} [params.action] An object that defines action parameters for the toast\n * @param {String} params.action.text An action button text\n * @param {Function} params.action.handler A callback that would be called when action button is clicked\n * @return {Object} An object that includes \"dismiss\" function to programatically dismiss the toast\n */\n addToast,\n };\n};\n","import { getCurrentInstance, inject, readonly, ref } from 'vue';\nimport { isVue2 } from 'vue-demi';\nimport { printDevelopmentWarning } from '../../utils/ts/print-development-warning';\nimport { toastStackInjectionKey } from './toast-stack';\nimport { UseBentoToastController } from './use-bento-toast-controller.types';\n\nexport function useBentoToastController(): UseBentoToastController {\n const toastStack = isVue2\n ? getCurrentInstance()?.proxy[toastStackInjectionKey]\n : inject(toastStackInjectionKey, null);\n if (!toastStack) {\n printDevelopmentWarning('Toast does not work without Vue.use(BentoPlugin, { withToast: true })');\n // Return placeholder functions so client code won't brake, but Toasts just won't show up\n return {\n stack: readonly(ref([])),\n addToast: () => ({\n // eslint-disable-next-line @typescript-eslint/no-empty-function -- intentional empty function explained by the comment above\n dismiss: () => {},\n }),\n };\n }\n // Return a new object so unintentional reassigning its properties won't override a global state\n return { ...toastStack };\n}\n"],"names":["dismissToast","stack","id","toastIndex","toast","toastStackInjectionKey","createToastStack","ref","addToast","params","generateUid","computed","useBentoToastController","toastStack","inject","printDevelopmentWarning","readonly"],"mappings":";;;AAIA,MAAMA,IAAsE,CAACC,GAAOC,MAAO;AACvF,QAAMC,IAAaF,EAAM,MAAM,UAAU,CAASG,MAAAA,EAAM,OAAOF,CAAE;AACjE,EAAIC,MAAe,MACTF,EAAA,MAAM,OAAOE,GAAY,CAAC;AAExC,GAEaE,IAAyB,OAAO,aAAa,GAM7CC,IAAqC,MAAM;AAC9C,QAAAL,IAAQM,EAAyB,CAAA,CAAE,GAEnCC,IAAW,CAAUC,MAAA;AACjB,UAAAP,IAAKQ,EAAY,OAAO,GACxBN,IAAQ;AAAA,MACV,GAAGK;AAAA,MACH,IAAAP;AAAA,MACA,SAAS,MAAMF,EAAaC,GAAOC,CAAE;AAAA,IAAA;AAGnC,WAAAD,EAAA,MAAM,QAAQG,CAAK,GAElB;AAAA,MACH,SAAS,MAAMJ,EAAaC,GAAOC,CAAE;AAAA,IAAA;AAAA,EACzC;AAGG,SAAA;AAAA;AAAA;AAAA,IAGH,OAAOS,EAAS,MAAM,OAAO,OAAO,MAAM,KAAKV,EAAM,KAAK,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAU5D,UAAAO;AAAA,EAAA;AAER;AC5CO,SAASI,IAAmD;AACzD,QAAAC,IAEAC,EAAOT,GAAwB,IAAI;AACzC,SAAKQ,IAYE,EAAE,GAAGA,OAXRE,EAAwB,uEAAuE,GAExF;AAAA,IACH,OAAOC,EAAST,EAAI,CAAA,CAAE,CAAC;AAAA,IACvB,UAAU,OAAO;AAAA;AAAA,MAEb,SAAS,MAAM;AAAA,MAAC;AAAA,IAAA;AAAA,EACpB;AAKZ;"}
1
+ {"version":3,"file":"use-bento-toast-controller.3dc4e113.js","sources":["../../../vue2/src/composables/use-bento-toast-controller/toast-stack.ts","../../../vue2/src/composables/use-bento-toast-controller/use-bento-toast-controller.ts"],"sourcesContent":["import { computed, ref, type Ref } from 'vue';\nimport { generateUid } from '@/utils/ts/unique-id';\nimport type { BentoToastItemsList, ToastStack } from './use-bento-toast-controller.types';\n\nconst dismissToast: (stack: Ref<BentoToastItemsList>, id: string) => void = (stack, id) => {\n const toastIndex = stack.value.findIndex(toast => toast.id === id);\n if (toastIndex !== -1) {\n stack.value.splice(toastIndex, 1);\n }\n};\n\nexport const toastStackInjectionKey = Symbol('toast-stack');\n\n/**\n * This utility creates a global reactive state to add new toasts and keep track of them.\n * @returns {ToastStack} An object that contains reactive stack property with all add toasts and a function to add new toasts\n */\nexport const createToastStack: () => ToastStack = () => {\n const stack = ref<BentoToastItemsList>([]);\n\n const addToast = params => {\n const id = generateUid('toast');\n const toast = {\n ...params,\n id,\n dismiss: () => dismissToast(stack, id),\n };\n\n stack.value.unshift(toast);\n\n return {\n dismiss: () => dismissToast(stack, id),\n };\n };\n\n return {\n // Even though stack is a reactive property, its content suppose to be only changed from this module.\n // For this reason we return \"stack\" as readonly prop, but also return methods that can affect \"stack\" content.\n stack: computed(() => Object.freeze(Array.from(stack.value))),\n /**\n * A function that allows to add new toasts\n * @param {Object} params Toast parameters\n * @param {String} params.text A text to display inside the toast\n * @param {Object} [params.action] An object that defines action parameters for the toast\n * @param {String} params.action.text An action button text\n * @param {Function} params.action.handler A callback that would be called when action button is clicked\n * @return {Object} An object that includes \"dismiss\" function to programatically dismiss the toast\n */\n addToast,\n };\n};\n","import { getCurrentInstance, inject, readonly, ref } from 'vue';\nimport { isVue2 } from 'vue-demi';\nimport { printDevelopmentWarning } from '../../utils/ts/print-development-warning';\nimport { toastStackInjectionKey } from './toast-stack';\nimport { UseBentoToastController } from './use-bento-toast-controller.types';\n\nexport function useBentoToastController(): UseBentoToastController {\n const toastStack = isVue2\n ? getCurrentInstance()?.proxy[toastStackInjectionKey]\n : inject(toastStackInjectionKey, null);\n if (!toastStack) {\n printDevelopmentWarning('Toast does not work without Vue.use(BentoPlugin, { withToast: true })');\n // Return placeholder functions so client code won't brake, but Toasts just won't show up\n return {\n stack: readonly(ref([])),\n addToast: () => ({\n // eslint-disable-next-line @typescript-eslint/no-empty-function -- intentional empty function explained by the comment above\n dismiss: () => {},\n }),\n };\n }\n // Return a new object so unintentional reassigning its properties won't override a global state\n return { ...toastStack };\n}\n"],"names":["dismissToast","stack","id","toastIndex","toast","toastStackInjectionKey","createToastStack","ref","addToast","params","generateUid","computed","useBentoToastController","toastStack","inject","printDevelopmentWarning","readonly"],"mappings":";;;AAIA,MAAMA,IAAsE,CAACC,GAAOC,MAAO;AACvF,QAAMC,IAAaF,EAAM,MAAM,UAAU,CAASG,MAAAA,EAAM,OAAOF,CAAE;AACjE,EAAIC,MAAe,MACTF,EAAA,MAAM,OAAOE,GAAY,CAAC;AAExC,GAEaE,IAAyB,OAAO,aAAa,GAM7CC,IAAqC,MAAM;AAC9C,QAAAL,IAAQM,EAAyB,CAAA,CAAE,GAEnCC,IAAW,CAAUC,MAAA;AACjB,UAAAP,IAAKQ,EAAY,OAAO,GACxBN,IAAQ;AAAA,MACV,GAAGK;AAAA,MACH,IAAAP;AAAA,MACA,SAAS,MAAMF,EAAaC,GAAOC,CAAE;AAAA,IAAA;AAGnC,WAAAD,EAAA,MAAM,QAAQG,CAAK,GAElB;AAAA,MACH,SAAS,MAAMJ,EAAaC,GAAOC,CAAE;AAAA,IAAA;AAAA,EACzC;AAGG,SAAA;AAAA;AAAA;AAAA,IAGH,OAAOS,EAAS,MAAM,OAAO,OAAO,MAAM,KAAKV,EAAM,KAAK,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAU5D,UAAAO;AAAA,EAAA;AAER;AC5CO,SAASI,IAAmD;AACzD,QAAAC,IAEAC,EAAOT,GAAwB,IAAI;AACzC,SAAKQ,IAYE,EAAE,GAAGA,OAXRE,EAAwB,uEAAuE,GAExF;AAAA,IACH,OAAOC,EAAST,EAAI,CAAA,CAAE,CAAC;AAAA,IACvB,UAAU,OAAO;AAAA;AAAA,MAEb,SAAS,MAAM;AAAA,MAAC;AAAA,IAAA;AAAA,EACpB;AAKZ;"}