@adyen/bento-vue3 1.52.0 → 1.54.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 (236) hide show
  1. package/dist/@types/components.d.ts +2 -0
  2. package/dist/@types/index.d.ts +2123 -2028
  3. package/dist/action-bar.js +1 -1
  4. package/dist/assets/accordion-item.css +1 -1
  5. package/dist/assets/action-bar.css +1 -1
  6. package/dist/assets/base-modal.css +1 -1
  7. package/dist/assets/button-actions.css +1 -1
  8. package/dist/assets/calendar.css +1 -1
  9. package/dist/assets/card.css +1 -1
  10. package/dist/assets/checkbox.css +1 -1
  11. package/dist/assets/dashed-underline.css +1 -1
  12. package/dist/assets/data-grid.css +1 -1
  13. package/dist/assets/dialog-page.css +1 -1
  14. package/dist/assets/dropdown.css +1 -1
  15. package/dist/assets/file-uploader.css +1 -1
  16. package/dist/assets/filter-bar.css +1 -1
  17. package/dist/assets/header-with-views.css +1 -0
  18. package/dist/assets/input-field-password.css +1 -1
  19. package/dist/assets/inspector.css +1 -1
  20. package/dist/assets/link.css +1 -1
  21. package/dist/assets/menu.css +1 -1
  22. package/dist/assets/modal-fullscreen.css +1 -1
  23. package/dist/assets/pagination.css +1 -1
  24. package/dist/assets/payment-method.css +1 -1
  25. package/dist/assets/popover.css +1 -1
  26. package/dist/assets/sidepanel.css +1 -1
  27. package/dist/assets/summary-grid.css +1 -0
  28. package/dist/assets/tabs.css +1 -1
  29. package/dist/assets/textarea.css +1 -1
  30. package/dist/assets/use-cached-selected-values.css +1 -1
  31. package/dist/button.js +1 -1
  32. package/dist/card.js +1 -1
  33. package/dist/checkbox.js +2 -2
  34. package/dist/chunks/{action-bar.eo5EXYmg.js → action-bar.CUDi5Po7.js} +5 -5
  35. package/dist/chunks/{action-bar.eo5EXYmg.js.map → action-bar.CUDi5Po7.js.map} +1 -1
  36. package/dist/chunks/{base-modal.BlC6TZNz.js → base-modal.BegK8cPb.js} +4 -4
  37. package/dist/chunks/{base-modal.BlC6TZNz.js.map → base-modal.BegK8cPb.js.map} +1 -1
  38. package/dist/chunks/bin.CA6UQCNZ.js +37 -0
  39. package/dist/chunks/bin.CA6UQCNZ.js.map +1 -0
  40. package/dist/chunks/{button-actions-with-menu.DQaq1bkf.js → button-actions-with-menu.CcoKss9T.js} +5 -5
  41. package/dist/chunks/{button-actions-with-menu.DQaq1bkf.js.map → button-actions-with-menu.CcoKss9T.js.map} +1 -1
  42. package/dist/chunks/{button-actions.BvGAE7sw.js → button-actions.CdlXZ29B.js} +59 -117
  43. package/dist/chunks/{button-actions.BvGAE7sw.js.map → button-actions.CdlXZ29B.js.map} +1 -1
  44. package/dist/chunks/{calendar.D2X834TU.js → calendar.BRsV4rkQ.js} +72 -72
  45. package/dist/chunks/{calendar.D2X834TU.js.map → calendar.BRsV4rkQ.js.map} +1 -1
  46. package/dist/chunks/{card.IrL_Fw-f.js → card.C5bSqYsB.js} +2 -2
  47. package/dist/chunks/{card.IrL_Fw-f.js.map → card.C5bSqYsB.js.map} +1 -1
  48. package/dist/chunks/{checkbox-group.BVJfN48k.js → checkbox-group.EPDS2n3a.js} +4 -4
  49. package/dist/chunks/{checkbox-group.BVJfN48k.js.map → checkbox-group.EPDS2n3a.js.map} +1 -1
  50. package/dist/chunks/{checkbox.erdZ58Kk.js → checkbox.Z2Jeglk-.js} +75 -68
  51. package/dist/chunks/checkbox.Z2Jeglk-.js.map +1 -0
  52. package/dist/chunks/{click-outside.DSszkIvs.js → click-outside.C1Ud8AA2.js} +2 -2
  53. package/dist/chunks/{click-outside.DSszkIvs.js.map → click-outside.C1Ud8AA2.js.map} +1 -1
  54. package/dist/chunks/{code-snippet.Bb4_r0C8.js → code-snippet.zdidL9RT.js} +5 -5
  55. package/dist/chunks/{code-snippet.Bb4_r0C8.js.map → code-snippet.zdidL9RT.js.map} +1 -1
  56. package/dist/chunks/{controls-group.BaDhGB9H.js → controls-group.DcbOWqxA.js} +2 -2
  57. package/dist/chunks/{controls-group.BaDhGB9H.js.map → controls-group.DcbOWqxA.js.map} +1 -1
  58. package/dist/chunks/{copy.gmSTAqHY.js → copy.CFhrpASp.js} +2 -2
  59. package/dist/chunks/{copy.gmSTAqHY.js.map → copy.CFhrpASp.js.map} +1 -1
  60. package/dist/chunks/{dashboard-section.MAHmbUDG.js → dashboard-section.DpL72ax7.js} +4 -4
  61. package/dist/chunks/{dashboard-section.MAHmbUDG.js.map → dashboard-section.DpL72ax7.js.map} +1 -1
  62. package/dist/chunks/{dashed-underline.DY8xR9GH.js → dashed-underline.BYAXhfnX.js} +11 -11
  63. package/dist/chunks/{dashed-underline.DY8xR9GH.js.map → dashed-underline.BYAXhfnX.js.map} +1 -1
  64. package/dist/chunks/{data-grid-template.Dievz913.js → data-grid-template.CJxPIu3E.js} +3 -3
  65. package/dist/chunks/{data-grid-template.Dievz913.js.map → data-grid-template.CJxPIu3E.js.map} +1 -1
  66. package/dist/chunks/{data-grid.KZqjmRvk.js → data-grid.i-NPmpso.js} +32 -20
  67. package/dist/chunks/data-grid.i-NPmpso.js.map +1 -0
  68. package/dist/chunks/{date-picker.BWJYkSmo.js → date-picker.wesQox8h.js} +5 -5
  69. package/dist/chunks/{date-picker.BWJYkSmo.js.map → date-picker.wesQox8h.js.map} +1 -1
  70. package/dist/chunks/{date-range-picker.1Vbf9Zk8.js → date-range-picker.V6QCtfnc.js} +9 -9
  71. package/dist/chunks/{date-range-picker.1Vbf9Zk8.js.map → date-range-picker.V6QCtfnc.js.map} +1 -1
  72. package/dist/chunks/{directive.O3yEdalv.js → directive.Cbdox5VL.js} +2 -2
  73. package/dist/chunks/{directive.O3yEdalv.js.map → directive.Cbdox5VL.js.map} +1 -1
  74. package/dist/chunks/{dropdown-tag.C9nM0YHC.js → dropdown-tag.D8wU10wx.js} +4 -4
  75. package/dist/chunks/{dropdown-tag.C9nM0YHC.js.map → dropdown-tag.D8wU10wx.js.map} +1 -1
  76. package/dist/chunks/{dropdown.qw5oXFYs.js → dropdown.DQunMieR.js} +203 -194
  77. package/dist/chunks/dropdown.DQunMieR.js.map +1 -0
  78. package/dist/chunks/{error-message.DAjisbU1.js → error-message.DH8Er2JS.js} +2 -2
  79. package/dist/chunks/{error-message.DAjisbU1.js.map → error-message.DH8Er2JS.js.map} +1 -1
  80. package/dist/chunks/es6.BtaxuP0b.js.map +1 -1
  81. package/dist/chunks/{file-uploader.BLJpDgAZ.js → file-uploader.Rtt1Uz2U.js} +627 -586
  82. package/dist/chunks/file-uploader.Rtt1Uz2U.js.map +1 -0
  83. package/dist/chunks/{filter-bar.DYrXBQDF.js → filter-bar.DW7lAAtF.js} +867 -853
  84. package/dist/chunks/filter-bar.DW7lAAtF.js.map +1 -0
  85. package/dist/chunks/{focus-trap.DMgm-9f7.js → focus-trap.BFCzfiI_.js} +2 -2
  86. package/dist/chunks/{focus-trap.DMgm-9f7.js.map → focus-trap.BFCzfiI_.js.map} +1 -1
  87. package/dist/chunks/{footer-actions.DK3pMfDY.js → footer-actions.A9H5F5D-.js} +2 -2
  88. package/dist/chunks/{footer-actions.DK3pMfDY.js.map → footer-actions.A9H5F5D-.js.map} +1 -1
  89. package/dist/chunks/header-with-views.D2B-20ZR.js +2354 -0
  90. package/dist/chunks/header-with-views.D2B-20ZR.js.map +1 -0
  91. package/dist/chunks/{header.BASKzNwu.js → header.CoyUQXFL.js} +4 -4
  92. package/dist/chunks/{header.BASKzNwu.js.map → header.CoyUQXFL.js.map} +1 -1
  93. package/dist/chunks/index.BzJQl-2M.js +386 -0
  94. package/dist/chunks/{index.CMGT-6mh.js.map → index.BzJQl-2M.js.map} +1 -1
  95. package/dist/chunks/{info-icon-with-popover.BJccyOFx.js → info-icon-with-popover.CBi7CmUZ.js} +2 -2
  96. package/dist/chunks/{info-icon-with-popover.BJccyOFx.js.map → info-icon-with-popover.CBi7CmUZ.js.map} +1 -1
  97. package/dist/chunks/{info-icon.L8AexnZg.js → info-icon.Bomzzcc5.js} +2 -2
  98. package/dist/chunks/{info-icon.L8AexnZg.js.map → info-icon.Bomzzcc5.js.map} +1 -1
  99. package/dist/chunks/input-field-password.DMEjy243.js +343 -0
  100. package/dist/chunks/input-field-password.DMEjy243.js.map +1 -0
  101. package/dist/chunks/{input-field-phone-number.D1zlBh3R.js → input-field-phone-number.DhJznFQP.js} +3 -3
  102. package/dist/chunks/{input-field-phone-number.D1zlBh3R.js.map → input-field-phone-number.DhJznFQP.js.map} +1 -1
  103. package/dist/chunks/{input-field.DqMdqM2u.js → input-field.B9AU1IsG.js} +3 -3
  104. package/dist/chunks/{input-field.DqMdqM2u.js.map → input-field.B9AU1IsG.js.map} +1 -1
  105. package/dist/chunks/inspector.types.Fs9URmPq.js +188 -0
  106. package/dist/chunks/inspector.types.Fs9URmPq.js.map +1 -0
  107. package/dist/chunks/{layout-row.Drm_y8e3.js → layout-row.BC3Z1mQx.js} +2 -2
  108. package/dist/chunks/{layout-row.Drm_y8e3.js.map → layout-row.BC3Z1mQx.js.map} +1 -1
  109. package/dist/chunks/{listbox-option-tag.YSvtcy4P.js → listbox-option-tag.CqnkZr9x.js} +2 -2
  110. package/dist/chunks/{listbox-option-tag.YSvtcy4P.js.map → listbox-option-tag.CqnkZr9x.js.map} +1 -1
  111. package/dist/chunks/{menu.DfzP2nRU.js → menu.P_KG1J8b.js} +106 -105
  112. package/dist/chunks/menu.P_KG1J8b.js.map +1 -0
  113. package/dist/chunks/{modal-fullscreen.T1x_vroe.js → modal-fullscreen.DxuMKagz.js} +3 -3
  114. package/dist/chunks/{modal-fullscreen.T1x_vroe.js.map → modal-fullscreen.DxuMKagz.js.map} +1 -1
  115. package/dist/chunks/{modal.vue_vue_type_script_setup_true_lang.BAuxqA66.js → modal.vue_vue_type_script_setup_true_lang.DfzxXSwn.js} +4 -4
  116. package/dist/chunks/{modal.vue_vue_type_script_setup_true_lang.BAuxqA66.js.map → modal.vue_vue_type_script_setup_true_lang.DfzxXSwn.js.map} +1 -1
  117. package/dist/chunks/{on-click-outside.MUWbmGDn.js → on-click-outside.D9aY9g8G.js} +3 -2
  118. package/dist/chunks/{on-click-outside.MUWbmGDn.js.map → on-click-outside.D9aY9g8G.js.map} +1 -1
  119. package/dist/chunks/{pagination.Bt8DNme-.js → pagination.DsEd-vpq.js} +3 -3
  120. package/dist/chunks/{pagination.Bt8DNme-.js.map → pagination.DsEd-vpq.js.map} +1 -1
  121. package/dist/chunks/{payment-method.CLUppDo_.js → payment-method.eazefwm6.js} +9 -9
  122. package/dist/chunks/payment-method.eazefwm6.js.map +1 -0
  123. package/dist/chunks/payment-method.types.BqtH7RM2.js +5 -0
  124. package/dist/chunks/payment-method.types.BqtH7RM2.js.map +1 -0
  125. package/dist/chunks/{popover.COzLcAET.js → popover.Csq1gQ6T.js} +3 -3
  126. package/dist/chunks/{popover.COzLcAET.js.map → popover.Csq1gQ6T.js.map} +1 -1
  127. package/dist/chunks/{popper-container.CEtaux25.js → popper-container.DnlxQ9eS.js} +2 -2
  128. package/dist/chunks/{popper-container.CEtaux25.js.map → popper-container.DnlxQ9eS.js.map} +1 -1
  129. package/dist/chunks/{promo-banner.BCpw2tDD.js → promo-banner.CN-TTSov.js} +2 -2
  130. package/dist/chunks/{promo-banner.BCpw2tDD.js.map → promo-banner.CN-TTSov.js.map} +1 -1
  131. package/dist/chunks/{radio-group.rxg-4rF_.js → radio-group.Vm-hmL1q.js} +4 -4
  132. package/dist/chunks/{radio-group.rxg-4rF_.js.map → radio-group.Vm-hmL1q.js.map} +1 -1
  133. package/dist/chunks/{search-bar.DlihXfPt.js → search-bar.BBV1KNdd.js} +3 -3
  134. package/dist/chunks/{search-bar.DlihXfPt.js.map → search-bar.BBV1KNdd.js.map} +1 -1
  135. package/dist/chunks/{secondary-nav.D2loVonk.js → secondary-nav.O2R1ltD9.js} +3 -3
  136. package/dist/chunks/{secondary-nav.D2loVonk.js.map → secondary-nav.O2R1ltD9.js.map} +1 -1
  137. package/dist/chunks/{segmented-control.Wn-miTIl.js → segmented-control.DBy-nbYM.js} +2 -2
  138. package/dist/chunks/{segmented-control.Wn-miTIl.js.map → segmented-control.DBy-nbYM.js.map} +1 -1
  139. package/dist/chunks/{selection-card-group.CtQaeZFM.js → selection-card-group.Bt4jBqjc.js} +4 -4
  140. package/dist/chunks/{selection-card-group.CtQaeZFM.js.map → selection-card-group.Bt4jBqjc.js.map} +1 -1
  141. package/dist/chunks/{sidepanel.CjaHQEin.js → sidepanel.Ds2CCG9L.js} +4 -4
  142. package/dist/chunks/{sidepanel.CjaHQEin.js.map → sidepanel.Ds2CCG9L.js.map} +1 -1
  143. package/dist/chunks/{structured-list-item.DAwADFpI.js → structured-list-item.CygGTBVl.js} +4 -4
  144. package/dist/chunks/{structured-list-item.DAwADFpI.js.map → structured-list-item.CygGTBVl.js.map} +1 -1
  145. package/dist/chunks/summary-grid.types.DzvuP-NU.js +454 -0
  146. package/dist/chunks/summary-grid.types.DzvuP-NU.js.map +1 -0
  147. package/dist/chunks/tabs.B8BRqQpv.js +272 -0
  148. package/dist/chunks/tabs.B8BRqQpv.js.map +1 -0
  149. package/dist/chunks/{tag.B1hW92hG.js → tag.C4SGN5Eb.js} +2 -2
  150. package/dist/chunks/{tag.B1hW92hG.js.map → tag.C4SGN5Eb.js.map} +1 -1
  151. package/dist/chunks/{teleport.B1NhF5-O.js → teleport.DfTpEQBR.js} +2 -2
  152. package/dist/chunks/{teleport.B1NhF5-O.js.map → teleport.DfTpEQBR.js.map} +1 -1
  153. package/dist/chunks/{textarea.DMA29yQA.js → textarea.bQwvvIkq.js} +103 -95
  154. package/dist/chunks/textarea.bQwvvIkq.js.map +1 -0
  155. package/dist/chunks/{timeline-item.kWg3dTy1.js → timeline-item.Bxt_pNII.js} +5 -5
  156. package/dist/chunks/{timeline-item.kWg3dTy1.js.map → timeline-item.Bxt_pNII.js.map} +1 -1
  157. package/dist/chunks/{tooltip.Y730-n-n.js → tooltip.CyQxprBQ.js} +2 -2
  158. package/dist/chunks/{tooltip.Y730-n-n.js.map → tooltip.CyQxprBQ.js.map} +1 -1
  159. package/dist/chunks/{tutorial.vue_vue_type_script_setup_true_lang.CUmJbMsw.js → tutorial.vue_vue_type_script_setup_true_lang.BtVT3Ltg.js} +5 -5
  160. package/dist/chunks/{tutorial.vue_vue_type_script_setup_true_lang.CUmJbMsw.js.map → tutorial.vue_vue_type_script_setup_true_lang.BtVT3Ltg.js.map} +1 -1
  161. package/dist/chunks/{use-cached-selected-values.DDP7LJoI.js → use-cached-selected-values.DmW8XRgJ.js} +234 -225
  162. package/dist/chunks/{use-cached-selected-values.DDP7LJoI.js.map → use-cached-selected-values.DmW8XRgJ.js.map} +1 -1
  163. package/dist/click-outside.js +1 -1
  164. package/dist/code-snippet.js +1 -1
  165. package/dist/dashboard-template.js +1 -1
  166. package/dist/dashed-underline.js +2 -2
  167. package/dist/data-grid-template.js +1 -1
  168. package/dist/data-grid.js +1 -1
  169. package/dist/date-picker.js +2 -2
  170. package/dist/date-range-picker.js +2 -2
  171. package/dist/dropdown.js +3 -3
  172. package/dist/file-uploader.js +1 -1
  173. package/dist/filter-bar.js +1 -1
  174. package/dist/focus-trap.js +1 -1
  175. package/dist/header-with-views.js +5 -0
  176. package/dist/header-with-views.js.map +1 -0
  177. package/dist/header.js +1 -1
  178. package/dist/index.js +201 -199
  179. package/dist/index.js.map +1 -1
  180. package/dist/info-icon.js +1 -1
  181. package/dist/input-field-password.js +1 -1
  182. package/dist/input-field-phone-number.js +1 -1
  183. package/dist/input-field.js +1 -1
  184. package/dist/inspector.js +1 -1
  185. package/dist/internal.js +11 -11
  186. package/dist/layout.js +1 -1
  187. package/dist/menu.js +1 -1
  188. package/dist/modal-fullscreen.js +1 -1
  189. package/dist/modal.js +2 -2
  190. package/dist/pagination.js +1 -1
  191. package/dist/payment-method.js +2 -2
  192. package/dist/popover.js +1 -1
  193. package/dist/popper-container.js +1 -1
  194. package/dist/promo-banner.js +1 -1
  195. package/dist/radio-group.js +1 -1
  196. package/dist/search-bar.js +2 -2
  197. package/dist/secondary-nav.js +1 -1
  198. package/dist/segmented-control.js +1 -1
  199. package/dist/selection-card.js +1 -1
  200. package/dist/sidepanel.js +1 -1
  201. package/dist/structured-list.js +1 -1
  202. package/dist/styles/bento-dark.css +89 -17
  203. package/dist/styles/bento-light.css +89 -17
  204. package/dist/styles/bento.css +89 -17
  205. package/dist/styles/legacy.css +77 -5
  206. package/dist/styles/styleguide.css +89 -17
  207. package/dist/summary-grid.js +1 -1
  208. package/dist/tabs.js +1 -1
  209. package/dist/tag.js +1 -1
  210. package/dist/textarea.js +1 -1
  211. package/dist/timeline.js +1 -1
  212. package/dist/tutorial.js +1 -1
  213. package/dist/use-form-v4.js +8300 -0
  214. package/dist/use-form-v4.js.map +1 -0
  215. package/dist/web-types.json +1 -1
  216. package/package.json +8 -7
  217. package/dist/assets/summary-grid-item-custom.css +0 -1
  218. package/dist/chunks/checkbox.erdZ58Kk.js.map +0 -1
  219. package/dist/chunks/data-grid.KZqjmRvk.js.map +0 -1
  220. package/dist/chunks/dropdown.qw5oXFYs.js.map +0 -1
  221. package/dist/chunks/file-uploader.BLJpDgAZ.js.map +0 -1
  222. package/dist/chunks/filter-bar.DYrXBQDF.js.map +0 -1
  223. package/dist/chunks/index.CMGT-6mh.js +0 -369
  224. package/dist/chunks/input-field-password.CZNUHo6s.js +0 -309
  225. package/dist/chunks/input-field-password.CZNUHo6s.js.map +0 -1
  226. package/dist/chunks/inspector.types.Dwt3V80X.js +0 -184
  227. package/dist/chunks/inspector.types.Dwt3V80X.js.map +0 -1
  228. package/dist/chunks/menu.DfzP2nRU.js.map +0 -1
  229. package/dist/chunks/payment-method.CLUppDo_.js.map +0 -1
  230. package/dist/chunks/payment-method.types.CJKfZQN5.js +0 -5
  231. package/dist/chunks/payment-method.types.CJKfZQN5.js.map +0 -1
  232. package/dist/chunks/summary-grid-item-custom.DTCzOBBy.js +0 -725
  233. package/dist/chunks/summary-grid-item-custom.DTCzOBBy.js.map +0 -1
  234. package/dist/chunks/tabs.hp52NnXH.js +0 -211
  235. package/dist/chunks/tabs.hp52NnXH.js.map +0 -1
  236. package/dist/chunks/textarea.DMA29yQA.js.map +0 -1
@@ -1,18 +1,18 @@
1
- import { defineComponent as R, useSlots as M, computed as g, createBlock as v, openBlock as i, withModifiers as P, normalizeClass as U, createSlots as W, withCtx as y, renderSlot as A, unref as m, createElementVNode as $, createCommentVNode as V, ref as C, inject as H, watch as z, nextTick as J, onMounted as K, onUnmounted as Y, createElementBlock as T, Fragment as q, renderList as Q, mergeProps as N, toHandlers as b, createTextVNode as h, toDisplayString as B, resolveDynamicComponent as E } from "vue";
1
+ import { defineComponent as O, useSlots as P, computed as g, createBlock as v, openBlock as i, withModifiers as V, normalizeClass as R, createSlots as U, withCtx as y, renderSlot as N, unref as m, createElementVNode as W, createCommentVNode as j, ref as C, inject as x, watch as H, nextTick as z, onMounted as J, onUnmounted as K, createElementBlock as S, Fragment as Y, renderList as Q, mergeProps as A, toHandlers as b, createTextVNode as h, toDisplayString as B, resolveDynamicComponent as E } from "vue";
2
2
  import { B as p } from "./button.6HMG0xEY.js";
3
- import { o as X } from "./resize.Bqks3WUm.js";
4
- import { f as Z } from "./es6.BtaxuP0b.js";
5
- import { B as ee } from "./loading-indicator.DEepb9Wl.js";
6
- import { C as te } from "./cross-circle-fill.B7YpDLTK.js";
7
- import { C as ne } from "./checkmark-circle-fill.jicbqe7k.js";
8
- import { u as ae } from "./use-has-slot.B7eQSabc.js";
9
- import { u as se } from "./i18n.D9azDLPe.js";
10
- import { _ as D } from "./_plugin-vue_export-helper.CHgC5LLL.js";
3
+ import { o as q } from "./resize.Bqks3WUm.js";
4
+ import { f as X } from "./es6.BtaxuP0b.js";
5
+ import { B as Z } from "./loading-indicator.DEepb9Wl.js";
6
+ import { C as ee } from "./cross-circle-fill.B7YpDLTK.js";
7
+ import { C as te } from "./checkmark-circle-fill.jicbqe7k.js";
8
+ import { u as ne } from "./use-has-slot.B7eQSabc.js";
9
+ import { u as ae } from "./i18n.D9azDLPe.js";
10
+ import { _ as $ } from "./_plugin-vue_export-helper.CHgC5LLL.js";
11
11
  import "../assets/button-actions.css";
12
- var F = /* @__PURE__ */ ((e) => (e.BUTTONS_END = "buttons-end", e.FILL_CONTAINER = "fill-container", e.SPACE_BETWEEN = "space-between", e.VERTICAL_STACK = "vertical-stack", e))(F || {}), w = /* @__PURE__ */ ((e) => (e.BUTTONS_START = "buttons-start", e))(w || {});
13
- const O = { ...F, ...w };
12
+ var D = /* @__PURE__ */ ((e) => (e.BUTTONS_END = "buttons-end", e.FILL_CONTAINER = "fill-container", e.SPACE_BETWEEN = "space-between", e.VERTICAL_STACK = "vertical-stack", e))(D || {}), F = /* @__PURE__ */ ((e) => (e.BUTTONS_START = "buttons-start", e))(F || {});
13
+ const se = { ...D, ...F };
14
14
  var s = /* @__PURE__ */ ((e) => (e.START = "start", e.LOADING = "loading", e.SUCCESS = "success", e.FAIL = "fail", e))(s || {});
15
- const G = {
15
+ const w = {
16
16
  "en-US": {
17
17
  failed: "Failed",
18
18
  succeded: "Succeded"
@@ -27,8 +27,8 @@ const G = {
27
27
  class: "b-loading-button__icon",
28
28
  "data-testid": "loading-button-rotating-icon"
29
29
  }, oe = {
30
- i18n: { messages: G }
31
- }, le = /* @__PURE__ */ R({
30
+ i18n: { messages: w }
31
+ }, le = /* @__PURE__ */ O({
32
32
  ...oe,
33
33
  __name: "loading-button",
34
34
  props: {
@@ -80,156 +80,98 @@ const G = {
80
80
  },
81
81
  emits: ["click"],
82
82
  setup(e, { emit: l }) {
83
- const n = e, c = l, r = M(), _ = ae(r), { t: d } = se({ messages: G }), u = g(() => ({
83
+ const n = e, c = l, r = P(), _ = ne(r), { t: d } = ae({ messages: w }), u = g(() => ({
84
84
  [`b-loading-button--${n.variant}-${s.LOADING}`]: n.state === s.LOADING && !n.disabled,
85
85
  "b-loading-button--loading": n.state === s.LOADING && !n.disabled,
86
86
  [`b-loading-button--${n.variant}-${s.SUCCESS}`]: n.state === s.SUCCESS,
87
87
  "b-loading-button--inverse": n.inverse
88
88
  })), f = g(
89
89
  () => n.variant === "primary" && !n.inverse || n.variant !== "primary" && n.inverse
90
- ), S = g(
90
+ ), T = g(
91
91
  () => n.critical && n.state === s.START || n.state === s.FAIL
92
92
  ), a = (o) => {
93
93
  o.stopPropagation(), n.state !== s.LOADING && c("click", o);
94
94
  };
95
95
  return (o, t) => (i(), v(p, {
96
- critical: S.value,
96
+ critical: T.value,
97
97
  variant: e.variant,
98
98
  condensed: e.condensed,
99
99
  disabled: e.disabled,
100
100
  inverse: e.inverse,
101
- class: U(["b-loading-button", u.value]),
102
- onClickCapture: P(a, ["stop"])
103
- }, W({
101
+ class: R(["b-loading-button", u.value]),
102
+ onClickCapture: V(a, ["stop"])
103
+ }, U({
104
104
  default: y(() => [
105
- A(o.$slots, "default", {}, void 0, !0)
105
+ N(o.$slots, "default", {}, void 0, !0)
106
106
  ]),
107
107
  _: 2
108
108
  }, [
109
109
  e.state === "start" && m(_)("iconLeft") ? {
110
110
  name: "iconLeft",
111
111
  fn: y(() => [
112
- A(o.$slots, "iconLeft", {}, void 0, !0)
112
+ N(o.$slots, "iconLeft", {}, void 0, !0)
113
113
  ]),
114
114
  key: "0"
115
115
  } : e.state !== "start" ? {
116
116
  name: "iconLeft",
117
117
  fn: y(() => [
118
- $("span", ie, [
119
- e.state === "fail" ? (i(), v(m(te), {
118
+ W("span", ie, [
119
+ e.state === "fail" ? (i(), v(m(ee), {
120
120
  key: 0,
121
121
  "svg-title": m(d)("failed")
122
- }, null, 8, ["svg-title"])) : e.state === "success" ? (i(), v(m(ne), {
122
+ }, null, 8, ["svg-title"])) : e.state === "success" ? (i(), v(m(te), {
123
123
  key: 1,
124
124
  "svg-title": m(d)("succeded")
125
- }, null, 8, ["svg-title"])) : e.state === "loading" ? (i(), v(m(ee), {
125
+ }, null, 8, ["svg-title"])) : e.state === "loading" ? (i(), v(m(Z), {
126
126
  key: 2,
127
127
  small: "",
128
128
  inverse: f.value
129
- }, null, 8, ["inverse"])) : V("", !0)
129
+ }, null, 8, ["inverse"])) : j("", !0)
130
130
  ])
131
131
  ]),
132
132
  key: "1"
133
133
  } : void 0
134
134
  ]), 1032, ["critical", "variant", "condensed", "disabled", "inverse", "class"]));
135
135
  }
136
- }), ce = /* @__PURE__ */ D(le, [["__scopeId", "data-v-07b9c537"]]), re = Symbol(
136
+ }), ce = /* @__PURE__ */ $(le, [["__scopeId", "data-v-07b9c537"]]), re = Symbol(
137
137
  "button actions with menu container injection key"
138
- ), de = 242, L = parseInt(Z, 10), ue = (e, l, n) => {
138
+ ), de = 242, L = parseInt(X, 10), ue = (e, l, n) => {
139
139
  const c = C(0);
140
140
  let r = null;
141
- const { buttonActionsWithMenu: _, menu: d, stackButtons: u } = H(re, {
141
+ const { buttonActionsWithMenu: _, menu: d, stackButtons: u } = x(re, {
142
142
  buttonActionsWithMenu: C(null),
143
143
  menu: C(null),
144
144
  stackButtons: C(!1)
145
- }), f = g(() => _.value ?? e.value), S = g(() => d.value ? [...l.value, d.value.$el] : l.value), a = (o) => {
145
+ }), f = g(() => _.value ?? e.value), T = g(() => d.value ? [...l.value, d.value.$el] : l.value), a = (o) => {
146
146
  var I;
147
- const t = (I = S.value) == null ? void 0 : I.reduce(
148
- (j, x) => j + x.clientWidth + L,
147
+ const t = (I = T.value) == null ? void 0 : I.reduce(
148
+ (G, M) => G + M.clientWidth + L,
149
149
  -L - 1
150
150
  ), k = f.value.clientWidth;
151
151
  return o && (c.value = k >= de && !u.value ? t : 0), c.value > k;
152
152
  };
153
- return z(
153
+ return H(
154
154
  () => n,
155
155
  () => {
156
- J(() => {
156
+ z(() => {
157
157
  u.value = a(!0);
158
158
  });
159
159
  },
160
160
  { deep: !0 }
161
- ), K(() => {
162
- r = X(f.value, () => {
161
+ ), J(() => {
162
+ r = q(f.value, () => {
163
163
  u.value = a(c.value === 0);
164
164
  });
165
- }), Y(() => {
165
+ }), K(() => {
166
166
  r == null || r.disconnect();
167
167
  }), u;
168
- }, ve = {}, fe = /* @__PURE__ */ R({
168
+ }, ve = {}, fe = /* @__PURE__ */ O({
169
169
  ...ve,
170
170
  __name: "button-actions",
171
171
  props: {
172
- /**
173
- * List of actions that will be used to render the buttons.
174
- * First element in the list will be rendered as "primary".
175
- * All elements after the first will be rendered as "secondary".
176
- *
177
- * Each object in the list should have a `title`, an `event` and
178
- * (optional) a Vue `icon` from the library `@adyen/ui-assets-icons-16`.
179
- *
180
- * `title`: Button's text.
181
- *
182
- * `event`: Event triggered when clicking the Button.
183
- *
184
- * `icon` (optional): Vue Icon from the library `@adyen/ui-assets-icons-16`.
185
- *
186
- * @see BentoButton for a list of all the other props supported by each button action.
187
- *
188
- * ```
189
- * [{
190
- * title: 'Primary',
191
- * event: () => { ... },
192
- * icon: FourPeopleIcon,
193
- * link: {
194
- * variant: 'default',
195
- * external: true,
196
- * to: 'https://www.adyen.com/'
197
- * },
198
- * }, {
199
- * title: 'Secondary',
200
- * event: () => { ... }
201
- * disabled: true,
202
- * variant: 'secondary',
203
- * critical: true
204
- * }]
205
- * ```
206
- */
207
- actions: {
208
- type: Array,
209
- required: !0
210
- },
211
- /**
212
- * Sets the Button Actions to color scheme inverse
213
- */
214
- inverse: {
215
- type: Boolean,
216
- default: !1
217
- },
218
- /**
219
- * Defines the layout in which the button actions is presented.
220
- * It can be one of:
221
- *
222
- * @values BUTTONS_START
223
- * @values BUTTONS_END
224
- * @values FILL_CONTAINER
225
- * @values SPACE_BETWEEN
226
- * @values VERTICAL_STACK
227
- */
228
- layout: {
229
- type: String,
230
- default: O.BUTTONS_END,
231
- validator: (e) => Object.values(O).includes(e)
232
- }
172
+ actions: {},
173
+ inverse: { type: Boolean, default: !1 },
174
+ layout: { default: se.BUTTONS_END }
233
175
  },
234
176
  setup(e) {
235
177
  const l = e, n = C(null), c = C(null), r = ue(n, c, l.actions), _ = g(() => l.actions.slice().reverse()), d = (a) => {
@@ -240,29 +182,29 @@ const G = {
240
182
  "b-button-actions--stacked-buttons": r.value
241
183
  })), f = (a) => (a == null ? void 0 : a.event) !== void 0 ? {
242
184
  click: a.event
243
- } : {}, S = (a) => a.iconOnly && (a.iconLeft || a.iconRight || a.icon);
244
- return (a, o) => (i(), T("div", {
185
+ } : {}, T = (a) => a.iconOnly && (a.iconLeft || a.iconRight || a.icon);
186
+ return (a, o) => (i(), S("div", {
245
187
  ref_key: "buttonActions",
246
188
  ref: n,
247
189
  class: "b-button-actions"
248
190
  }, [
249
- $("div", {
250
- class: U(["b-button-actions__container-wrapper", u.value]),
191
+ W("div", {
192
+ class: R(["b-button-actions__container-wrapper", u.value]),
251
193
  role: "group"
252
194
  }, [
253
- (i(!0), T(q, null, Q(_.value, (t, k) => (i(), T("div", {
195
+ (i(!0), S(Y, null, Q(_.value, (t, k) => (i(), S("div", {
254
196
  key: k,
255
197
  ref_for: !0,
256
198
  ref_key: "buttons",
257
199
  ref: c,
258
200
  class: "b-button-actions__button-wrapper"
259
201
  }, [
260
- t.state ? (i(), v(m(ce), N({
202
+ t.state ? (i(), v(m(ce), A({
261
203
  key: 0,
262
204
  condensed: t.condensed,
263
205
  critical: t.critical,
264
206
  disabled: t.disabled,
265
- inverse: e.inverse,
207
+ inverse: a.inverse,
266
208
  state: t.state,
267
209
  variant: t.variant || d(k)
268
210
  }, b(f(t))), {
@@ -270,15 +212,15 @@ const G = {
270
212
  h(B(t.title), 1)
271
213
  ]),
272
214
  _: 2
273
- }, 1040, ["condensed", "critical", "disabled", "inverse", "state", "variant"])) : (i(), v(p, N({
215
+ }, 1040, ["condensed", "critical", "disabled", "inverse", "state", "variant"])) : (i(), v(p, A({
274
216
  key: 1,
275
217
  condensed: t.condensed,
276
218
  critical: t.critical,
277
219
  disabled: t.disabled,
278
- inverse: e.inverse,
220
+ inverse: a.inverse,
279
221
  link: t.link,
280
222
  variant: t.variant || d(k)
281
- }, b(f(t))), W({ _: 2 }, [
223
+ }, b(f(t))), U({ _: 2 }, [
282
224
  t.icon || t.iconLeft ? {
283
225
  name: "iconLeft",
284
226
  fn: y(() => [
@@ -288,7 +230,7 @@ const G = {
288
230
  ]),
289
231
  key: "0"
290
232
  } : void 0,
291
- S(t) ? void 0 : {
233
+ T(t) ? void 0 : {
292
234
  name: "default",
293
235
  fn: y(() => [
294
236
  h(B(t.title), 1)
@@ -309,14 +251,14 @@ const G = {
309
251
  ], 2)
310
252
  ], 512));
311
253
  }
312
- }), Ae = /* @__PURE__ */ D(fe, [["__scopeId", "data-v-157f5906"]]);
254
+ }), Ne = /* @__PURE__ */ $(fe, [["__scopeId", "data-v-0b415008"]]);
313
255
  export {
314
- Ae as B,
315
- F as a,
316
- w as b,
317
- O as c,
256
+ Ne as B,
257
+ D as a,
258
+ F as b,
259
+ se as c,
318
260
  ce as d,
319
261
  s as e,
320
262
  re as f
321
263
  };
322
- //# sourceMappingURL=button-actions.BvGAE7sw.js.map
264
+ //# sourceMappingURL=button-actions.CdlXZ29B.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-actions.BvGAE7sw.js","sources":["../../../core/src/components/button-actions/button-actions.types.ts","../../../core/src/components/loading-button/loading-button.types.ts","../../../vue2/src/components/button/components/loading-button/loading-button.vue","../../../vue2/src/components/internal/button-actions-with-menu/button-actions-with-menu.keys.ts","../../../vue2/src/components/button/components/button-actions/composables/use-stack-buttons/use-stack-buttons.ts","../../../vue2/src/components/button/components/button-actions/button-actions.vue"],"sourcesContent":["import type { BentoButtonProps } from '@/core/components/button/button.types';\nimport { BentoLoadingButtonState } from '@/core/components/loading-button/loading-button.types';\n\nexport interface BentoButtonActionObject<IconType = object> extends BentoButtonProps {\n title: string;\n event?: (event: Event) => void;\n icon?: IconType;\n iconLeft?: IconType;\n iconRight?: IconType;\n state?: BentoLoadingButtonState | `${BentoLoadingButtonState}`;\n iconOnly?: boolean;\n}\n\nexport type BentoButtonActionsList<IconType = object> = Array<BentoButtonActionObject<IconType>>;\n\nexport enum BentoButtonActionsLayoutBasic {\n BUTTONS_END = 'buttons-end',\n FILL_CONTAINER = 'fill-container',\n SPACE_BETWEEN = 'space-between',\n VERTICAL_STACK = 'vertical-stack',\n}\nexport enum BentoButtonActionsLayoutExtended {\n BUTTONS_START = 'buttons-start',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport const BentoButtonActionsLayout = { ...BentoButtonActionsLayoutBasic, ...BentoButtonActionsLayoutExtended };\nexport type BentoButtonActionsLayout = BentoButtonActionsLayoutBasic | BentoButtonActionsLayoutExtended;\n","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\n <template v-if=\"state === 'start' && hasSlot('iconLeft')\" #iconLeft>\n <slot name=\"iconLeft\"></slot>\n </template>\n <template v-else-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=\"t('failed')\" />\n <checkmark v-else-if=\"state === 'success'\" :svg-title=\"t('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, useSlots } from 'vue';\n import { BentoLoadingButtonState } from '@/core/components/loading-button/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 import { useHasSlot } from '@/composables/use-has-slot/use-has-slot';\n\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\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 */\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 slots = useSlots();\n const hasSlot = useHasSlot(slots);\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\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 i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"@/core/components/loading-button/loading-button.scss\" />\n","export const BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY = Symbol(\n 'button actions with menu container injection key'\n);\n","import { computed, inject, nextTick, onMounted, onUnmounted, ref, Ref, watch } from 'vue';\nimport { observeSizeOfElement } from '@/utils/ts/resize';\nimport { BButtonActionsButtonsEndColumnGap } from '@adyen/bento-design-tokens/dist/js/bento/es6';\nimport { BentoButtonActionsList } from '../../button-actions.types';\nimport { BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY } from '@/internal/button-actions-with-menu/button-actions-with-menu.keys';\n\nconst CONTAINER_QUERY = 242;\nconst BUTTONS_GAP = parseInt(BButtonActionsButtonsEndColumnGap, 10);\n\n/**\n * Calculates the width of the container and the buttons and decides if the buttons should be stacked or not\n *\n * @param buttonActions Reference to the container element\n * @param buttons Reference array of button elements\n * @param actions Button actions actions prop\n */\nexport const useStackButtons = (\n buttonActions: Ref<HTMLDivElement>,\n buttons: Ref<HTMLDivElement[]>,\n actions: BentoButtonActionsList\n) => {\n const originalButtonsWidth = ref(0);\n let containerObserver: ResizeObserver | null = null;\n\n const { buttonActionsWithMenu, menu, stackButtons } = inject(BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY, {\n buttonActionsWithMenu: ref(null),\n menu: ref(null),\n stackButtons: ref(false),\n });\n\n const container = computed(() => buttonActionsWithMenu.value ?? buttonActions.value);\n\n const computedButtons = computed(() => (menu.value ? [...buttons.value, menu.value.$el] : buttons.value));\n\n const areButtonsWiderThanContainer = (updateOriginalButtonsWidth?: boolean) => {\n const buttonsWidth = computedButtons.value?.reduce(\n (acc, button) => acc + button.clientWidth + BUTTONS_GAP,\n -BUTTONS_GAP - 1 // to remove the extra spacing, as if there's 3 buttons, only two will have a gap in between\n );\n\n const containersWidth = container.value.clientWidth;\n\n if (updateOriginalButtonsWidth) {\n originalButtonsWidth.value = containersWidth >= CONTAINER_QUERY && !stackButtons.value ? buttonsWidth : 0;\n }\n return originalButtonsWidth.value > containersWidth;\n };\n\n watch(\n () => actions,\n () => {\n nextTick(() => {\n stackButtons.value = areButtonsWiderThanContainer(true);\n });\n },\n { deep: true }\n );\n\n onMounted(() => {\n containerObserver = observeSizeOfElement(container.value, () => {\n stackButtons.value = areButtonsWiderThanContainer(originalButtonsWidth.value === 0);\n });\n });\n\n onUnmounted(() => {\n containerObserver?.disconnect();\n });\n\n return stackButtons;\n};\n","<template>\n <div ref=\"buttonActions\" class=\"b-button-actions\">\n <div class=\"b-button-actions__container-wrapper\" :class=\"conditionalClasses\" role=\"group\">\n <div\n v-for=\"(button, index) in reversedActionsList\"\n :key=\"index\"\n ref=\"buttons\"\n class=\"b-button-actions__button-wrapper\"\n >\n <bento-loading-button\n v-if=\"button.state\"\n :condensed=\"button.condensed\"\n :critical=\"button.critical\"\n :disabled=\"button.disabled\"\n :inverse=\"inverse\"\n :state=\"button.state\"\n :variant=\"button.variant || generateButtonVariantByIndex(index)\"\n v-on=\"generateButtonEvents(button)\"\n >\n {{ button.title }}\n </bento-loading-button>\n <bento-button\n v-else\n :condensed=\"button.condensed\"\n :critical=\"button.critical\"\n :disabled=\"button.disabled\"\n :inverse=\"inverse\"\n :link=\"button.link\"\n :variant=\"button.variant || generateButtonVariantByIndex(index)\"\n v-on=\"generateButtonEvents(button)\"\n >\n <template v-if=\"button.icon || button.iconLeft\" #iconLeft>\n <component :is=\"button.icon || button.iconLeft\" :svg-title=\"button.title\"></component>\n </template>\n <template v-if=\"!isIconOnly(button)\" #default>\n {{ button.title }}\n </template>\n <template v-if=\"button.iconRight\" #iconRight>\n <component :is=\"button.iconRight\" :svg-title=\"button.title\"></component>\n </template>\n </bento-button>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, PropType, ref } from 'vue';\n import BentoButton from '../../button.vue';\n import {\n BentoButtonActionObject,\n BentoButtonActionsLayout,\n BentoButtonActionsList,\n } from '@/core/components/button-actions/button-actions.types';\n import { BentoLoadingButton } from '../loading-button';\n import { useStackButtons } from '@/components/button/components/button-actions/composables/use-stack-buttons/use-stack-buttons';\n\n const props = defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * First element in the list will be rendered as \"primary\".\n * All elements after the first will be rendered as \"secondary\".\n *\n * Each object in the list should have a `title`, an `event` and\n * (optional) a Vue `icon` from the library `@adyen/ui-assets-icons-16`.\n *\n * `title`: Button's text.\n *\n * `event`: Event triggered when clicking the Button.\n *\n * `icon` (optional): Vue Icon from the library `@adyen/ui-assets-icons-16`.\n *\n * @see BentoButton for a list of all the other props supported by each button action.\n *\n * ```\n * [{\n * title: 'Primary',\n * event: () => { ... },\n * icon: FourPeopleIcon,\n * link: {\n * variant: 'default',\n * external: true,\n * to: 'https://www.adyen.com/'\n * },\n * }, {\n * title: 'Secondary',\n * event: () => { ... }\n * disabled: true,\n * variant: 'secondary',\n * critical: true\n * }]\n * ```\n */\n actions: {\n type: Array as PropType<BentoButtonActionsList>,\n required: true,\n },\n\n /**\n * Sets the Button Actions to color scheme inverse\n */\n inverse: {\n type: Boolean,\n default: false,\n },\n\n /**\n * Defines the layout in which the button actions is presented.\n * It can be one of:\n *\n * @values BUTTONS_START\n * @values BUTTONS_END\n * @values FILL_CONTAINER\n * @values SPACE_BETWEEN\n * @values VERTICAL_STACK\n */\n layout: {\n type: String as PropType<BentoButtonActionsLayout | `${BentoButtonActionsLayout}`>,\n default: BentoButtonActionsLayout.BUTTONS_END,\n validator: (layout: BentoButtonActionsLayout) => Object.values(BentoButtonActionsLayout).includes(layout),\n },\n });\n\n const buttonActions = ref<HTMLDivElement>(null);\n const buttons = ref<HTMLDivElement[]>(null);\n const stackButtons = useStackButtons(buttonActions, buttons, props.actions);\n\n const reversedActionsList = computed(() => props.actions.slice().reverse());\n const generateButtonVariantByIndex = actionIndex => {\n const lastActionIndex = props.actions.length - 1;\n return actionIndex === lastActionIndex ? 'primary' : 'secondary';\n };\n\n const conditionalClasses = computed(() => ({\n [`b-button-actions--${props.layout}`]: true,\n [`b-button-actions--stacked-buttons`]: stackButtons.value,\n }));\n\n const generateButtonEvents = (button: BentoButtonActionObject) =>\n button?.event !== undefined\n ? {\n click: button.event,\n }\n : {};\n\n const isIconOnly = (button: BentoButtonActionObject) =>\n button.iconOnly && (button.iconLeft || button.iconRight || button.icon);\n</script>\n\n<script lang=\"ts\">\n /**\n * ButtonActions component manages a set of actions a user can choose from by displaying a group of buttons.\n *\n * @example\n * import { BentoButtonActions } from '@adyen/bento-vue2';\n * import MachineLearningIcon from '@adyen/ui-assets-icons-16/vue/machine-learning';\n *\n * const clickedAction = () => { //your action here }\n *\n * <template>\n * <bento-button-actions\n * :actions=\"[{\n * title: 'Primary',\n * event: clickedAction,\n * icon: MachineLearningIcon,\n * }, {\n * title: 'Secondary',\n * event: clickedAction,\n * }, {\n * title: 'Tertiary',\n * event: clickedAction,\n * }]\"\n * />\n * </template>\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"@/core/components/button-actions/button-actions.scss\" />\n"],"names":["BentoButtonActionsLayoutBasic","BentoButtonActionsLayoutBasic2","BentoButtonActionsLayoutExtended","BentoButtonActionsLayoutExtended2","BentoButtonActionsLayout","BentoLoadingButtonState","BentoLoadingButtonState2","__default__$1","messages","props","__props","emit","__emit","slots","useSlots","hasSlot","useHasSlot","t","useI18n","conditionalClasses","computed","isInverseLoadingIndicator","isCritical","onClick","e","BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY","CONTAINER_QUERY","BUTTONS_GAP","BButtonActionsButtonsEndColumnGap","useStackButtons","buttonActions","buttons","actions","originalButtonsWidth","ref","containerObserver","buttonActionsWithMenu","menu","stackButtons","inject","container","computedButtons","areButtonsWiderThanContainer","updateOriginalButtonsWidth","buttonsWidth","_a","acc","button","containersWidth","watch","nextTick","onMounted","observeSizeOfElement","onUnmounted","__default__","reversedActionsList","generateButtonVariantByIndex","actionIndex","lastActionIndex","generateButtonEvents","isIconOnly"],"mappings":"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"}
1
+ {"version":3,"file":"button-actions.CdlXZ29B.js","sources":["../../../core/src/components/button-actions/button-actions.types.ts","../../../core/src/components/loading-button/loading-button.types.ts","../../../vue2/src/components/button/components/loading-button/loading-button.vue","../../../vue2/src/components/internal/button-actions-with-menu/button-actions-with-menu.keys.ts","../../../vue2/src/components/button/components/button-actions/composables/use-stack-buttons/use-stack-buttons.ts","../../../vue2/src/components/button/components/button-actions/button-actions.vue"],"sourcesContent":["import type { BentoButtonProps } from '@/core/components/button/button.types';\nimport { BentoLoadingButtonState } from '@/core/components/loading-button/loading-button.types';\n\nexport interface BentoButtonActionObject<IconType = object> extends BentoButtonProps {\n title: string;\n event?: (event: Event) => void;\n icon?: IconType;\n iconLeft?: IconType;\n iconRight?: IconType;\n state?: BentoLoadingButtonState | `${BentoLoadingButtonState}`;\n iconOnly?: boolean;\n}\n\nexport type BentoButtonActionsList<IconType = object> = Array<BentoButtonActionObject<IconType>>;\n\nexport enum BentoButtonActionsLayoutBasic {\n BUTTONS_END = 'buttons-end',\n FILL_CONTAINER = 'fill-container',\n SPACE_BETWEEN = 'space-between',\n VERTICAL_STACK = 'vertical-stack',\n}\nexport enum BentoButtonActionsLayoutExtended {\n BUTTONS_START = 'buttons-start',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport const BentoButtonActionsLayout = { ...BentoButtonActionsLayoutBasic, ...BentoButtonActionsLayoutExtended };\nexport type BentoButtonActionsLayout = BentoButtonActionsLayoutBasic | BentoButtonActionsLayoutExtended;\n","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\n <template v-if=\"state === 'start' && hasSlot('iconLeft')\" #iconLeft>\n <slot name=\"iconLeft\"></slot>\n </template>\n <template v-else-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=\"t('failed')\" />\n <checkmark v-else-if=\"state === 'success'\" :svg-title=\"t('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, useSlots } from 'vue';\n import { BentoLoadingButtonState } from '@/core/components/loading-button/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 import { useHasSlot } from '@/composables/use-has-slot/use-has-slot';\n\n import { useI18n } from '@/utils/ts/i18n';\n\n import messages from './messages.json';\n\n type MessageSchema = (typeof messages)['en-US'];\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 */\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 slots = useSlots();\n const hasSlot = useHasSlot(slots);\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\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 i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"@/core/components/loading-button/loading-button.scss\" />\n","export const BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY = Symbol(\n 'button actions with menu container injection key'\n);\n","import { computed, inject, nextTick, onMounted, onUnmounted, ref, Ref, watch } from 'vue';\nimport { observeSizeOfElement } from '@/utils/ts/resize';\nimport { BButtonActionsButtonsEndColumnGap } from '@adyen/bento-design-tokens/dist/js/bento/es6';\nimport { BentoButtonActionsList } from '../../button-actions.types';\nimport { BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY } from '@/internal/button-actions-with-menu/button-actions-with-menu.keys';\n\nconst CONTAINER_QUERY = 242;\nconst BUTTONS_GAP = parseInt(BButtonActionsButtonsEndColumnGap, 10);\n\n/**\n * Calculates the width of the container and the buttons and decides if the buttons should be stacked or not\n *\n * @param buttonActions Reference to the container element\n * @param buttons Reference array of button elements\n * @param actions Button actions actions prop\n */\nexport const useStackButtons = (\n buttonActions: Ref<HTMLDivElement>,\n buttons: Ref<HTMLDivElement[]>,\n actions: BentoButtonActionsList\n) => {\n const originalButtonsWidth = ref(0);\n let containerObserver: ResizeObserver | null = null;\n\n const { buttonActionsWithMenu, menu, stackButtons } = inject(BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY, {\n buttonActionsWithMenu: ref(null),\n menu: ref(null),\n stackButtons: ref(false),\n });\n\n const container = computed(() => buttonActionsWithMenu.value ?? buttonActions.value);\n\n const computedButtons = computed(() => (menu.value ? [...buttons.value, menu.value.$el] : buttons.value));\n\n const areButtonsWiderThanContainer = (updateOriginalButtonsWidth?: boolean) => {\n const buttonsWidth = computedButtons.value?.reduce(\n (acc, button) => acc + button.clientWidth + BUTTONS_GAP,\n -BUTTONS_GAP - 1 // to remove the extra spacing, as if there's 3 buttons, only two will have a gap in between\n );\n\n const containersWidth = container.value.clientWidth;\n\n if (updateOriginalButtonsWidth) {\n originalButtonsWidth.value = containersWidth >= CONTAINER_QUERY && !stackButtons.value ? buttonsWidth : 0;\n }\n return originalButtonsWidth.value > containersWidth;\n };\n\n watch(\n () => actions,\n () => {\n nextTick(() => {\n stackButtons.value = areButtonsWiderThanContainer(true);\n });\n },\n { deep: true }\n );\n\n onMounted(() => {\n containerObserver = observeSizeOfElement(container.value, () => {\n stackButtons.value = areButtonsWiderThanContainer(originalButtonsWidth.value === 0);\n });\n });\n\n onUnmounted(() => {\n containerObserver?.disconnect();\n });\n\n return stackButtons;\n};\n","<template>\n <div ref=\"buttonActions\" class=\"b-button-actions\">\n <div class=\"b-button-actions__container-wrapper\" :class=\"conditionalClasses\" role=\"group\">\n <div\n v-for=\"(button, index) in reversedActionsList\"\n :key=\"index\"\n ref=\"buttons\"\n class=\"b-button-actions__button-wrapper\"\n >\n <bento-loading-button\n v-if=\"button.state\"\n :condensed=\"button.condensed\"\n :critical=\"button.critical\"\n :disabled=\"button.disabled\"\n :inverse=\"inverse\"\n :state=\"button.state\"\n :variant=\"button.variant || generateButtonVariantByIndex(index)\"\n v-on=\"generateButtonEvents(button)\"\n >\n {{ button.title }}\n </bento-loading-button>\n <bento-button\n v-else\n :condensed=\"button.condensed\"\n :critical=\"button.critical\"\n :disabled=\"button.disabled\"\n :inverse=\"inverse\"\n :link=\"button.link\"\n :variant=\"button.variant || generateButtonVariantByIndex(index)\"\n v-on=\"generateButtonEvents(button)\"\n >\n <template v-if=\"button.icon || button.iconLeft\" #iconLeft>\n <component :is=\"button.icon || button.iconLeft\" :svg-title=\"button.title\"></component>\n </template>\n <template v-if=\"!isIconOnly(button)\" #default>\n {{ button.title }}\n </template>\n <template v-if=\"button.iconRight\" #iconRight>\n <component :is=\"button.iconRight\" :svg-title=\"button.title\"></component>\n </template>\n </bento-button>\n </div>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, ref } from 'vue';\n import BentoButton from '../../button.vue';\n import {\n BentoButtonActionObject,\n BentoButtonActionsLayout,\n } from '@/core/components/button-actions/button-actions.types';\n import type { BentoButtonActionsProps } from './button-actions.types';\n import { BentoLoadingButton } from '../loading-button';\n import { useStackButtons } from '@/components/button/components/button-actions/composables/use-stack-buttons/use-stack-buttons';\n\n const props = withDefaults(defineProps<BentoButtonActionsProps>(), {\n inverse: false,\n layout: BentoButtonActionsLayout.BUTTONS_END,\n });\n\n const buttonActions = ref<HTMLDivElement>(null);\n const buttons = ref<HTMLDivElement[]>(null);\n const stackButtons = useStackButtons(buttonActions, buttons, props.actions);\n\n const reversedActionsList = computed(() => props.actions.slice().reverse());\n const generateButtonVariantByIndex = actionIndex => {\n const lastActionIndex = props.actions.length - 1;\n return actionIndex === lastActionIndex ? 'primary' : 'secondary';\n };\n\n const conditionalClasses = computed(() => ({\n [`b-button-actions--${props.layout}`]: true,\n [`b-button-actions--stacked-buttons`]: stackButtons.value,\n }));\n\n const generateButtonEvents = (button: BentoButtonActionObject) =>\n button?.event !== undefined\n ? {\n click: button.event,\n }\n : {};\n\n const isIconOnly = (button: BentoButtonActionObject) =>\n button.iconOnly && (button.iconLeft || button.iconRight || button.icon);\n</script>\n\n<script lang=\"ts\">\n /**\n * ButtonActions component manages a set of actions a user can choose from by displaying a group of buttons.\n *\n * @example\n * import { BentoButtonActions } from '@adyen/bento-vue2';\n * import MachineLearningIcon from '@adyen/ui-assets-icons-16/vue/machine-learning';\n *\n * const clickedAction = () => { //your action here }\n *\n * <template>\n * <bento-button-actions\n * :actions=\"[{\n * title: 'Primary',\n * event: clickedAction,\n * icon: MachineLearningIcon,\n * }, {\n * title: 'Secondary',\n * event: clickedAction,\n * }, {\n * title: 'Tertiary',\n * event: clickedAction,\n * }]\"\n * />\n * </template>\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"@/core/components/button-actions/button-actions.scss\" />\n"],"names":["BentoButtonActionsLayoutBasic","BentoButtonActionsLayoutBasic2","BentoButtonActionsLayoutExtended","BentoButtonActionsLayoutExtended2","BentoButtonActionsLayout","BentoLoadingButtonState","BentoLoadingButtonState2","__default__$1","messages","props","__props","emit","__emit","slots","useSlots","hasSlot","useHasSlot","t","useI18n","conditionalClasses","computed","isInverseLoadingIndicator","isCritical","onClick","e","BUTTON_ACTIONS_WITH_MENU_CONTAINER_INJECTION_KEY","CONTAINER_QUERY","BUTTONS_GAP","BButtonActionsButtonsEndColumnGap","useStackButtons","buttonActions","buttons","actions","originalButtonsWidth","ref","containerObserver","buttonActionsWithMenu","menu","stackButtons","inject","container","computedButtons","areButtonsWiderThanContainer","updateOriginalButtonsWidth","buttonsWidth","_a","acc","button","containersWidth","watch","nextTick","onMounted","observeSizeOfElement","onUnmounted","__default__","reversedActionsList","generateButtonVariantByIndex","actionIndex","lastActionIndex","generateButtonEvents","isIconOnly"],"mappings":";;;;;;;;;;;AAeY,IAAAA,IAAA,kBAAAC,OACRA,EAAA,cAAA,eACAA,EAAA,iBAAA,kBACAA,EAAA,gBAAA,iBACAA,EAAA,iBAAA,kBAJQA,IAAAD,KAAA,CAAA,CAAA,GAMAE,IAAA,kBAAAC,OACRA,EAAA,gBAAA,iBADQA,IAAAD,KAAA,CAAA,CAAA;AAOL,MAAAE,KAAA,EAAA,GAAAJ,GAAA,GAAAE,EAAA;AC5BK,IAAAG,IAAA,kBAAAC,OACRA,EAAA,QAAA,SACAA,EAAA,UAAA,WACAA,EAAA,UAAA,WACAA,EAAA,OAAA,QAJQA,IAAAD,KAAA,CAAA,CAAA;;;;;;;;;;;;;;;GCsJRE,KAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA9GA,UAAAC,IAAAC,GAqDAC,IAAAC,GAOAC,IAAAC,EAAA,GACAC,IAAAC,GAAAH,CAAA,GACA,EAAA,GAAAI,EAAA,IAAAC,GAAA,EAAA,UAAAV,EAAA,CAAA,GAEAW,IAAAC,EAAA,OAAA;AAAA,MAA2C,CAAA,qBAAAX,EAAA,OAAA,IAAAJ,EAAA,OAAA,EAAA,GAAAI,EAAA,UAAAJ,EAAA,WAAA,CAAAI,EAAA;AAAA,MAEuB,6BAAAA,EAAA,UAAAJ,EAAA,WAAA,CAAAI,EAAA;AAAA,MACyB,CAAA,qBAAAA,EAAA,OAAA,IAAAJ,EAAA,OAAA,EAAA,GAAAI,EAAA,UAAAJ,EAAA;AAAA,MAE3C,6BAAAI,EAAA;AAAA,IACP,EAAA,GAGzCY,IAAAD;AAAA,MAAkC,MAAAX,EAAA,YAAA,aAAA,CAAAA,EAAA,WAAAA,EAAA,YAAA,aAAAA,EAAA;AAAA,IACiE,GAEnGa,IAAAF;AAAA,MAAmB,MAAAX,EAAA,YAAAA,EAAA,UAAAJ,EAAA,SAAAI,EAAA,UAAAJ,EAAA;AAAA,IAG6B,GAGhDkB,IAAA,CAAAC,MAAA;AAEI,MAAAA,EAAA,gBAAA,GAEAf,EAAA,UAAAJ,EAAA,WACIM,EAAA,SAAAa,CAAA;AAAA,IACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oEClIDC,KAAA;AAAA,EAAyD;AAEhE,GCIAC,KAAA,KACAC,IAAA,SAAAC,GAAA,EAAA,GASOC,KAAA,CAAAC,GAAAC,GAAAC,MAAA;AAKH,QAAAC,IAAAC,EAAA,CAAA;AACA,MAAAC,IAAA;AAEA,QAAA,EAAA,uBAAAC,GAAA,MAAAC,GAAA,cAAAC,EAAA,IAAAC,EAAAd,IAAA;AAAA,IAA+G,uBAAAS,EAAA,IAAA;AAAA,IAC5E,MAAAA,EAAA,IAAA;AAAA,IACjB,cAAAA,EAAA,EAAA;AAAA,EACS,CAAA,GAG3BM,IAAApB,EAAA,MAAAgB,EAAA,SAAAN,EAAA,KAAA,GAEAW,IAAArB,EAAA,MAAAiB,EAAA,QAAA,CAAA,GAAAN,EAAA,OAAAM,EAAA,MAAA,GAAA,IAAAN,EAAA,KAAA,GAEAW,IAAA,CAAAC,MAAA;;AACI,UAAAC,KAAAC,IAAAJ,EAAA,UAAA,gBAAAI,EAAA;AAAA,MAA4C,CAAAC,GAAAC,MAAAD,IAAAC,EAAA,cAAApB;AAAA,MACI,CAAAA,IAAA;AAAA,OAIhDqB,IAAAR,EAAA,MAAA;AAEA,WAAAG,MACIV,EAAA,QAAAe,KAAAtB,MAAA,CAAAY,EAAA,QAAAM,IAAA,IAEJX,EAAA,QAAAe;AAAA,EAAoC;AAGxC,SAAAC;AAAA,IAAA,MAAAjB;AAAA,IACU,MAAA;AAEF,MAAAkB,EAAA,MAAA;AACI,QAAAZ,EAAA,QAAAI,EAAA,EAAA;AAAA,MAAsD,CAAA;AAAA,IACzD;AAAA,IACL,EAAA,MAAA,GAAA;AAAA,EACa,GAGjBS,EAAA,MAAA;AACI,IAAAhB,IAAAiB,EAAAZ,EAAA,OAAA,MAAA;AACI,MAAAF,EAAA,QAAAI,EAAAT,EAAA,UAAA,CAAA;AAAA,IAAkF,CAAA;AAAA,EACrF,CAAA,GAGLoB,EAAA,MAAA;AACI,IAAAlB,KAAA,QAAAA,EAAA;AAAA,EAA8B,CAAA,GAGlCG;AACJ,GC6CIgB,KAAA,CAAA;;;;;;;;;AAzDA,UAAA7C,IAAAC,GAKAoB,IAAAI,EAAA,IAAA,GACAH,IAAAG,EAAA,IAAA,GACAI,IAAAT,GAAAC,GAAAC,GAAAtB,EAAA,OAAA,GAEA8C,IAAAnC,EAAA,MAAAX,EAAA,QAAA,MAAA,EAAA,QAAA,CAAA,GACA+C,IAAA,CAAAC,MAAA;AACI,YAAAC,IAAAjD,EAAA,QAAA,SAAA;AACA,aAAAgD,MAAAC,IAAA,YAAA;AAAA,IAAqD,GAGzDvC,IAAAC,EAAA,OAAA;AAAA,MAA2C,CAAA,qBAAAX,EAAA,MAAA,EAAA,GAAA;AAAA,MACA,qCAAA6B,EAAA;AAAA,IACa,EAAA,GAGxDqB,IAAA,CAAAZ,OAAAA,KAAA,gBAAAA,EAAA,WAAA,SAAA;AAAA,MAEU,OAAAA,EAAA;AAAA,IACkB,IAAA,CAAA,GAI5Ba,IAAA,CAAAb,MAAAA,EAAA,aAAAA,EAAA,YAAAA,EAAA,aAAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}