@adyen/bento-vue2 1.32.0 → 1.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/@types/index.d.ts +21 -18
- package/dist/accordion.js +1 -1
- package/dist/action-bar.js +1 -1
- package/dist/alert.js +1 -1
- package/dist/assets/accordion-item.css +1 -1
- package/dist/assets/action-bar.css +1 -1
- package/dist/assets/alert.css +1 -1
- package/dist/assets/avatar.css +1 -1
- package/dist/assets/base-modal.css +1 -1
- package/dist/assets/button.css +1 -1
- package/dist/assets/calendar.css +1 -1
- package/dist/assets/card.css +1 -1
- package/dist/assets/checkbox-input.css +1 -1
- package/dist/assets/controls-group.css +1 -1
- package/dist/assets/dashboard-section.css +1 -1
- package/dist/assets/dashed-underline.css +1 -1
- package/dist/assets/data-grid-template.css +1 -1
- package/dist/assets/data-grid.css +1 -1
- package/dist/assets/date-range-picker.css +1 -1
- package/dist/assets/dialog-page.css +1 -1
- package/dist/assets/dropdown-default-textbox.css +1 -1
- package/dist/assets/dropdown-tag.css +1 -1
- package/dist/assets/dropdown.css +1 -1
- package/dist/assets/filter-bar.css +1 -1
- package/dist/assets/input-field.css +1 -1
- package/dist/assets/inspector.css +1 -1
- package/dist/assets/link.css +1 -1
- package/dist/assets/loading-button.css +1 -1
- package/dist/assets/menu.css +1 -1
- package/dist/assets/modal-fullscreen.css +1 -1
- package/dist/assets/popover.css +1 -1
- package/dist/assets/popper-container.css +1 -1
- package/dist/assets/radio-group.css +1 -1
- package/dist/assets/radio-input.css +1 -1
- package/dist/assets/search-bar.css +1 -1
- package/dist/assets/secondary-nav.css +1 -1
- package/dist/assets/segmented-control.css +1 -1
- package/dist/assets/selection-card-group.css +1 -1
- package/dist/assets/sidepanel.css +1 -1
- package/dist/assets/status.css +1 -1
- package/dist/assets/step.css +1 -1
- package/dist/assets/structured-list-item.css +1 -1
- package/dist/assets/textarea.css +1 -1
- package/dist/assets/toast.css +1 -1
- package/dist/assets/toggle-button.css +1 -1
- package/dist/assets/tutorial.css +1 -1
- package/dist/assets/typography.css +1 -1
- package/dist/assets/use-cached-selected-values.css +1 -1
- package/dist/avatar.js +1 -1
- package/dist/button.js +4 -4
- package/dist/card.js +1 -1
- package/dist/checkbox.js +3 -3
- package/dist/chunks/{accordion-item.CNYpvxwN.js → accordion-item.IMlV_Vik.js} +3 -3
- package/dist/chunks/{accordion-item.CNYpvxwN.js.map → accordion-item.IMlV_Vik.js.map} +1 -1
- package/dist/chunks/{action-bar.Ds_ofJs6.js → action-bar.CxsPPZZ_.js} +17 -17
- package/dist/chunks/action-bar.CxsPPZZ_.js.map +1 -0
- package/dist/chunks/{alert.Ba2hSVeM.js → alert.DtT7BRdr.js} +4 -4
- package/dist/chunks/{alert.Ba2hSVeM.js.map → alert.DtT7BRdr.js.map} +1 -1
- package/dist/chunks/{avatar.DohItrb9.js → avatar.0ffdL8i0.js} +8 -8
- package/dist/chunks/avatar.0ffdL8i0.js.map +1 -0
- package/dist/chunks/{base-button.-qw8sZSY.js → base-button.qWj0m9-v.js} +2 -2
- package/dist/chunks/{base-button.-qw8sZSY.js.map → base-button.qWj0m9-v.js.map} +1 -1
- package/dist/chunks/{base-modal.B17Ib1QQ.js → base-modal.8sjjRWsL.js} +35 -35
- package/dist/chunks/base-modal.8sjjRWsL.js.map +1 -0
- package/dist/chunks/{button-actions-with-menu.K8p3AG8r.js → button-actions-with-menu.DKjOf4Ox.js} +4 -4
- package/dist/chunks/{button-actions-with-menu.K8p3AG8r.js.map → button-actions-with-menu.DKjOf4Ox.js.map} +1 -1
- package/dist/chunks/{button-actions.IJs0hN8c.js → button-actions.BQHr68sA.js} +3 -3
- package/dist/chunks/{button-actions.IJs0hN8c.js.map → button-actions.BQHr68sA.js.map} +1 -1
- package/dist/chunks/{button.qOf7CXY2.js → button.79klAcOK.js} +13 -13
- package/dist/chunks/button.79klAcOK.js.map +1 -0
- package/dist/chunks/{calendar.etLGotqH.js → calendar.CaTMWZUM.js} +124 -124
- package/dist/chunks/calendar.CaTMWZUM.js.map +1 -0
- package/dist/chunks/{card.-BYuiE_X.js → card.ignL7-CH.js} +4 -4
- package/dist/chunks/card.ignL7-CH.js.map +1 -0
- package/dist/chunks/{checkbox-group.Bj9gURHB.js → checkbox-group.2mm5bv7a.js} +5 -5
- package/dist/chunks/{checkbox-group.Bj9gURHB.js.map → checkbox-group.2mm5bv7a.js.map} +1 -1
- package/dist/chunks/{checkbox-input.DwDwI2BD.js → checkbox-input.BH7MGdMj.js} +9 -6
- package/dist/chunks/checkbox-input.BH7MGdMj.js.map +1 -0
- package/dist/chunks/{checkbox.CKQZXIR3.js → checkbox.BKzfGbb1.js} +5 -5
- package/dist/chunks/{checkbox.CKQZXIR3.js.map → checkbox.BKzfGbb1.js.map} +1 -1
- package/dist/chunks/{code-snippet.Dr7HvCcg.js → code-snippet.Bh-9Sz0W.js} +7 -7
- package/dist/chunks/{code-snippet.Dr7HvCcg.js.map → code-snippet.Bh-9Sz0W.js.map} +1 -1
- package/dist/chunks/{controls-group.WoEXCpkM.js → controls-group.kIQ5t39B.js} +4 -4
- package/dist/chunks/{controls-group.WoEXCpkM.js.map → controls-group.kIQ5t39B.js.map} +1 -1
- package/dist/chunks/{copy.CIuoE2VU.js → copy.B1DYKX_q.js} +4 -4
- package/dist/chunks/{copy.CIuoE2VU.js.map → copy.B1DYKX_q.js.map} +1 -1
- package/dist/chunks/{country.DeYdzMXh.js → country.DWQ85WGG.js} +2 -2
- package/dist/chunks/{country.DeYdzMXh.js.map → country.DWQ85WGG.js.map} +1 -1
- package/dist/chunks/{currency.Cfq_Yw2V.js → currency.D_2CN1OJ.js} +2 -2
- package/dist/chunks/{currency.Cfq_Yw2V.js.map → currency.D_2CN1OJ.js.map} +1 -1
- package/dist/chunks/{dashboard-section.CKy3tW-3.js → dashboard-section.CS63czQW.js} +5 -5
- package/dist/chunks/dashboard-section.CS63czQW.js.map +1 -0
- package/dist/chunks/{dashed-underline.OyLCDT1U.js → dashed-underline.XuUFwxOe.js} +11 -11
- package/dist/chunks/dashed-underline.XuUFwxOe.js.map +1 -0
- package/dist/chunks/{data-grid-template.CxaInpI8.js → data-grid-template.DEDwDJCy.js} +9 -9
- package/dist/chunks/data-grid-template.DEDwDJCy.js.map +1 -0
- package/dist/chunks/{data-grid.Dsv60eRz.js → data-grid.caE5wVpr.js} +717 -716
- package/dist/chunks/data-grid.caE5wVpr.js.map +1 -0
- package/dist/chunks/{date-picker.CZ34YMMu.js → date-picker.D9hFJD_h.js} +7 -7
- package/dist/chunks/{date-picker.CZ34YMMu.js.map → date-picker.D9hFJD_h.js.map} +1 -1
- package/dist/chunks/{date-range-picker.C__cQBs3.js → date-range-picker.BlTFEbr-.js} +339 -320
- package/dist/chunks/date-range-picker.BlTFEbr-.js.map +1 -0
- package/dist/chunks/{date.DQaxR7TF.js → date.DaiTzNEZ.js} +2 -2
- package/dist/chunks/{date.DQaxR7TF.js.map → date.DaiTzNEZ.js.map} +1 -1
- package/dist/chunks/{dialog-page.Cc-XASGB.js → dialog-page.bmDDYmn9.js} +3 -3
- package/dist/chunks/dialog-page.bmDDYmn9.js.map +1 -0
- package/dist/chunks/{dropdown-default-textbox.BM9qsdzQ.js → dropdown-default-textbox.kQ3pHsZe.js} +5 -4
- package/dist/chunks/dropdown-default-textbox.kQ3pHsZe.js.map +1 -0
- package/dist/chunks/{dropdown-tag.DEqYdqVG.js → dropdown-tag.BBEI_7RS.js} +19 -19
- package/dist/chunks/dropdown-tag.BBEI_7RS.js.map +1 -0
- package/dist/chunks/{dropdown.Bn6SRkU5.js → dropdown.D6tsk4ko.js} +11 -10
- package/dist/chunks/dropdown.D6tsk4ko.js.map +1 -0
- package/dist/chunks/{empty-state.CWy3y5Ly.js → empty-state.C2ba_wDp.js} +3 -3
- package/dist/chunks/{empty-state.CWy3y5Ly.js.map → empty-state.C2ba_wDp.js.map} +1 -1
- package/dist/chunks/{error-message.epR1WJH2.js → error-message.BEtdKrpc.js} +3 -3
- package/dist/chunks/{error-message.epR1WJH2.js.map → error-message.BEtdKrpc.js.map} +1 -1
- package/dist/chunks/es6.BvpG4Oi6.js.map +1 -1
- package/dist/chunks/{filter-bar.Dcsv7a4q.js → filter-bar.Tl9rgAKU.js} +793 -823
- package/dist/chunks/filter-bar.Tl9rgAKU.js.map +1 -0
- package/dist/chunks/{fixed-scroller.wvGW5A2g.js → fixed-scroller.CQWDnydO.js} +2 -2
- package/dist/chunks/fixed-scroller.CQWDnydO.js.map +1 -0
- package/dist/chunks/{footer-actions.B6Q5ybfw.js → footer-actions.CwHY2-Ap.js} +4 -4
- package/dist/chunks/{footer-actions.B6Q5ybfw.js.map → footer-actions.CwHY2-Ap.js.map} +1 -1
- package/dist/chunks/{form-layout-title.ChRqPBDL.js → form-layout-title.CRsR3o2x.js} +3 -3
- package/dist/chunks/{form-layout-title.ChRqPBDL.js.map → form-layout-title.CRsR3o2x.js.map} +1 -1
- package/dist/chunks/{header.jOE8ctvn.js → header.CkUxb-Pw.js} +5 -5
- package/dist/chunks/{header.jOE8ctvn.js.map → header.CkUxb-Pw.js.map} +1 -1
- package/dist/chunks/{info-icon.DQI7sjBY.js → info-icon.DNn4oZsB.js} +3 -3
- package/dist/chunks/{info-icon.DQI7sjBY.js.map → info-icon.DNn4oZsB.js.map} +1 -1
- package/dist/chunks/{input-field.mEo-bCtk.js → input-field.7PrsNCUx.js} +5 -5
- package/dist/chunks/{input-field.mEo-bCtk.js.map → input-field.7PrsNCUx.js.map} +1 -1
- package/dist/chunks/{inspector.types.l7r-FN49.js → inspector.types.D6kCCKNk.js} +4 -4
- package/dist/chunks/inspector.types.D6kCCKNk.js.map +1 -0
- package/dist/chunks/{link.CjFBXE3D.js → link.Xce4kDGy.js} +3 -3
- package/dist/chunks/{link.CjFBXE3D.js.map → link.Xce4kDGy.js.map} +1 -1
- package/dist/chunks/{listbox-option-tag.BXz3dHfF.js → listbox-option-tag.RVvWMKvz.js} +3 -3
- package/dist/chunks/{listbox-option-tag.BXz3dHfF.js.map → listbox-option-tag.RVvWMKvz.js.map} +1 -1
- package/dist/chunks/{loading-button.Ba8So0d6.js → loading-button.DDPZYO6r.js} +3 -3
- package/dist/chunks/{loading-button.Ba8So0d6.js.map → loading-button.DDPZYO6r.js.map} +1 -1
- package/dist/chunks/{menu.e-PrV4Wl.js → menu.CoT0jBpw.js} +5 -5
- package/dist/chunks/{menu.e-PrV4Wl.js.map → menu.CoT0jBpw.js.map} +1 -1
- package/dist/chunks/{modal-fullscreen.PFFfWzPD.js → modal-fullscreen.BQKE0bm0.js} +6 -6
- package/dist/chunks/{modal-fullscreen.PFFfWzPD.js.map → modal-fullscreen.BQKE0bm0.js.map} +1 -1
- package/dist/chunks/{modal.DPrBUWDe.js → modal.BnlC8y2b.js} +6 -6
- package/dist/chunks/modal.BnlC8y2b.js.map +1 -0
- package/dist/chunks/on-click-outside.MUWbmGDn.js.map +1 -1
- package/dist/chunks/{pagination.CT08YpqC.js → pagination.Cqm8aS25.js} +4 -4
- package/dist/chunks/{pagination.CT08YpqC.js.map → pagination.Cqm8aS25.js.map} +1 -1
- package/dist/chunks/{payment-method.BnLkBqVQ.js → payment-method.CyQwoqEe.js} +2 -2
- package/dist/chunks/{payment-method.BnLkBqVQ.js.map → payment-method.CyQwoqEe.js.map} +1 -1
- package/dist/chunks/{popover.Du6UI6Yh.js → popover.BAZk1sm7.js} +6 -6
- package/dist/chunks/{popover.Du6UI6Yh.js.map → popover.BAZk1sm7.js.map} +1 -1
- package/dist/chunks/{popper-container.By1AW5Od.js → popper-container.CnWphJTN.js} +2 -2
- package/dist/chunks/{popper-container.By1AW5Od.js.map → popper-container.CnWphJTN.js.map} +1 -1
- package/dist/chunks/{radio-group.D650KrHa.js → radio-group.Dt5aLsJR.js} +8 -8
- package/dist/chunks/radio-group.Dt5aLsJR.js.map +1 -0
- package/dist/chunks/{radio-input.UWFngqop.js → radio-input.q980f8Uf.js} +2 -2
- package/dist/chunks/{radio-input.UWFngqop.js.map → radio-input.q980f8Uf.js.map} +1 -1
- package/dist/chunks/{search-bar.hxEJk-w0.js → search-bar.56yYCp8_.js} +16 -16
- package/dist/chunks/search-bar.56yYCp8_.js.map +1 -0
- package/dist/chunks/{secondary-nav.Bsi7Dj0s.js → secondary-nav.CCCscrYe.js} +6 -6
- package/dist/chunks/secondary-nav.CCCscrYe.js.map +1 -0
- package/dist/chunks/{segmented-control.BeXMVbce.js → segmented-control.BZm0u0wJ.js} +13 -13
- package/dist/chunks/segmented-control.BZm0u0wJ.js.map +1 -0
- package/dist/chunks/selection-card-group.BX5SJQJl.js +255 -0
- package/dist/chunks/selection-card-group.BX5SJQJl.js.map +1 -0
- package/dist/chunks/{sidepanel.DRP_jFVq.js → sidepanel.BRe8Xgnq.js} +7 -6
- package/dist/chunks/sidepanel.BRe8Xgnq.js.map +1 -0
- package/dist/chunks/{status.types.CcGZuqg5.js → status.types.dPBUkNia.js} +10 -10
- package/dist/chunks/status.types.dPBUkNia.js.map +1 -0
- package/dist/chunks/{step.RkChji1p.js → step.CjJtlBk6.js} +5 -5
- package/dist/chunks/step.CjJtlBk6.js.map +1 -0
- package/dist/chunks/{structured-list-item.BfEARGrz.js → structured-list-item.DpLscUX4.js} +14 -14
- package/dist/chunks/structured-list-item.DpLscUX4.js.map +1 -0
- package/dist/chunks/{summary-grid-item-custom.Cjv109f8.js → summary-grid-item-custom.B7Re6OCf.js} +5 -5
- package/dist/chunks/{summary-grid-item-custom.Cjv109f8.js.map → summary-grid-item-custom.B7Re6OCf.js.map} +1 -1
- package/dist/chunks/{tabs.BLCcrVbI.js → tabs.D4ORafqH.js} +3 -3
- package/dist/chunks/{tabs.BLCcrVbI.js.map → tabs.D4ORafqH.js.map} +1 -1
- package/dist/chunks/{tag.4Vqj8tm4.js → tag.Bo_6RnVE.js} +3 -3
- package/dist/chunks/{tag.4Vqj8tm4.js.map → tag.Bo_6RnVE.js.map} +1 -1
- package/dist/chunks/{textarea.DM2Cwx14.js → textarea.C6mA9dbj.js} +14 -13
- package/dist/chunks/textarea.C6mA9dbj.js.map +1 -0
- package/dist/chunks/{timeline-item.B2c3eI3L.js → timeline-item.D_ha1hxw.js} +9 -9
- package/dist/chunks/{timeline-item.B2c3eI3L.js.map → timeline-item.D_ha1hxw.js.map} +1 -1
- package/dist/chunks/{toast.rrKNWeM6.js → toast.KVxSBsXC.js} +5 -5
- package/dist/chunks/toast.KVxSBsXC.js.map +1 -0
- package/dist/chunks/{toggle-button.CBuKACw5.js → toggle-button.bt3zBzdC.js} +3 -3
- package/dist/chunks/toggle-button.bt3zBzdC.js.map +1 -0
- package/dist/chunks/{toggle.DtrStAja.js → toggle.CLgGH4Jr.js} +2 -2
- package/dist/chunks/{toggle.DtrStAja.js.map → toggle.CLgGH4Jr.js.map} +1 -1
- package/dist/chunks/{tooltip.4f_qwm8o.js → tooltip.BN6fOXzi.js} +3 -3
- package/dist/chunks/{tooltip.4f_qwm8o.js.map → tooltip.BN6fOXzi.js.map} +1 -1
- package/dist/chunks/{tutorial.DUjlu3SH.js → tutorial.DzhfqdFU.js} +7 -7
- package/dist/chunks/tutorial.DzhfqdFU.js.map +1 -0
- package/dist/chunks/{typography.CdCYtxYj.js → typography.CqQaHXhq.js} +2 -2
- package/dist/chunks/typography.CqQaHXhq.js.map +1 -0
- package/dist/chunks/{use-bento-toast-controller.C66wCsav.js → use-bento-toast-controller.DLKySNHd.js} +2 -2
- package/dist/chunks/{use-bento-toast-controller.C66wCsav.js.map → use-bento-toast-controller.DLKySNHd.js.map} +1 -1
- package/dist/chunks/{use-cached-selected-values.DWQ8SMSi.js → use-cached-selected-values.1vo5LvgW.js} +83 -82
- package/dist/chunks/use-cached-selected-values.1vo5LvgW.js.map +1 -0
- package/dist/chunks/use-expandable-content-height.GkjjbmPy.js.map +1 -1
- package/dist/code-snippet.js +1 -1
- package/dist/country.js +1 -1
- package/dist/currency.js +1 -1
- package/dist/dashboard-template.js +1 -1
- package/dist/dashed-underline.js +1 -1
- package/dist/data-grid-template.js +1 -1
- package/dist/data-grid.js +1 -1
- package/dist/date-picker.js +2 -2
- package/dist/date-range-picker.js +2 -2
- package/dist/date.js +1 -1
- package/dist/dropdown.js +4 -4
- package/dist/empty-state.js +1 -1
- package/dist/filter-bar.js +1 -1
- package/dist/form-layout.js +1 -1
- package/dist/header.js +1 -1
- package/dist/index.js +68 -66
- package/dist/index.js.map +1 -1
- package/dist/info-icon.js +1 -1
- package/dist/input-field.js +1 -1
- package/dist/inspector.js +1 -1
- package/dist/internal.js +8 -8
- package/dist/link.js +1 -1
- package/dist/menu.js +1 -1
- package/dist/modal-fullscreen.js +1 -1
- package/dist/modal.js +2 -2
- package/dist/pagination.js +1 -1
- package/dist/payment-method.js +1 -1
- package/dist/popover.js +1 -1
- package/dist/popper-container.js +1 -1
- package/dist/radio-group.js +2 -2
- package/dist/search-bar.js +2 -2
- package/dist/secondary-nav.js +1 -1
- package/dist/segmented-control.js +1 -1
- package/dist/selection-card.js +1 -1
- package/dist/sidepanel.js +1 -1
- package/dist/status.js +1 -1
- package/dist/stepper.js +1 -1
- package/dist/structured-list.js +1 -1
- package/dist/summary-grid.js +1 -1
- package/dist/tabs.js +1 -1
- package/dist/tag.js +1 -1
- package/dist/textarea.js +1 -1
- package/dist/timeline.js +1 -1
- package/dist/toast.js +1 -1
- package/dist/toggle.js +1 -1
- package/dist/tutorial.js +1 -1
- package/dist/typography.js +1 -1
- package/dist/web-types.json +80 -165
- package/package.json +3 -2
- package/dist/chunks/action-bar.Ds_ofJs6.js.map +0 -1
- package/dist/chunks/avatar.DohItrb9.js.map +0 -1
- package/dist/chunks/base-modal.B17Ib1QQ.js.map +0 -1
- package/dist/chunks/button.qOf7CXY2.js.map +0 -1
- package/dist/chunks/calendar.etLGotqH.js.map +0 -1
- package/dist/chunks/card.-BYuiE_X.js.map +0 -1
- package/dist/chunks/checkbox-input.DwDwI2BD.js.map +0 -1
- package/dist/chunks/dashboard-section.CKy3tW-3.js.map +0 -1
- package/dist/chunks/dashed-underline.OyLCDT1U.js.map +0 -1
- package/dist/chunks/data-grid-template.CxaInpI8.js.map +0 -1
- package/dist/chunks/data-grid.Dsv60eRz.js.map +0 -1
- package/dist/chunks/date-range-picker.C__cQBs3.js.map +0 -1
- package/dist/chunks/dialog-page.Cc-XASGB.js.map +0 -1
- package/dist/chunks/dropdown-default-textbox.BM9qsdzQ.js.map +0 -1
- package/dist/chunks/dropdown-tag.DEqYdqVG.js.map +0 -1
- package/dist/chunks/dropdown.Bn6SRkU5.js.map +0 -1
- package/dist/chunks/filter-bar.Dcsv7a4q.js.map +0 -1
- package/dist/chunks/fixed-scroller.wvGW5A2g.js.map +0 -1
- package/dist/chunks/inspector.types.l7r-FN49.js.map +0 -1
- package/dist/chunks/modal.DPrBUWDe.js.map +0 -1
- package/dist/chunks/radio-group.D650KrHa.js.map +0 -1
- package/dist/chunks/search-bar.hxEJk-w0.js.map +0 -1
- package/dist/chunks/secondary-nav.Bsi7Dj0s.js.map +0 -1
- package/dist/chunks/segmented-control.BeXMVbce.js.map +0 -1
- package/dist/chunks/selection-card-group.D5DRYhrw.js +0 -247
- package/dist/chunks/selection-card-group.D5DRYhrw.js.map +0 -1
- package/dist/chunks/sidepanel.DRP_jFVq.js.map +0 -1
- package/dist/chunks/status.types.CcGZuqg5.js.map +0 -1
- package/dist/chunks/step.RkChji1p.js.map +0 -1
- package/dist/chunks/structured-list-item.BfEARGrz.js.map +0 -1
- package/dist/chunks/textarea.DM2Cwx14.js.map +0 -1
- package/dist/chunks/toast.rrKNWeM6.js.map +0 -1
- package/dist/chunks/toggle-button.CBuKACw5.js.map +0 -1
- package/dist/chunks/tutorial.DUjlu3SH.js.map +0 -1
- package/dist/chunks/typography.CdCYtxYj.js.map +0 -1
- package/dist/chunks/use-cached-selected-values.DWQ8SMSi.js.map +0 -1
package/dist/web-types.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"framework": "vue",
|
|
3
3
|
"name": "@adyen/bento-vue2",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.33.0",
|
|
5
5
|
"contributions": {
|
|
6
6
|
"html": {
|
|
7
7
|
"description-markup": "markdown",
|
|
@@ -1714,61 +1714,6 @@
|
|
|
1714
1714
|
"symbol": "default"
|
|
1715
1715
|
}
|
|
1716
1716
|
},
|
|
1717
|
-
{
|
|
1718
|
-
"name": "bento-filter-bar",
|
|
1719
|
-
"description": "The filter bar filters item lists and tables according to various filter criteria.",
|
|
1720
|
-
"attributes": [
|
|
1721
|
-
{
|
|
1722
|
-
"name": "config",
|
|
1723
|
-
"description": "Array of filters based on {@see BentoFilterBarModel}.\nEach one of the elements in the array correspond to a filter that will\nbe created and rendered in the FilterBar.",
|
|
1724
|
-
"value": {
|
|
1725
|
-
"kind": "expression",
|
|
1726
|
-
"type": "BentoFilterBarModel"
|
|
1727
|
-
},
|
|
1728
|
-
"default": "() => []"
|
|
1729
|
-
},
|
|
1730
|
-
{
|
|
1731
|
-
"name": "searchTerm",
|
|
1732
|
-
"description": "Search term useful to filter all the data by text.\nIf the value is non-existant (null or undefined) the search bar won't be enabled.",
|
|
1733
|
-
"value": {
|
|
1734
|
-
"kind": "expression",
|
|
1735
|
-
"type": "BentoSearchBar.props.value.type"
|
|
1736
|
-
},
|
|
1737
|
-
"default": "undefined"
|
|
1738
|
-
},
|
|
1739
|
-
{
|
|
1740
|
-
"name": "value",
|
|
1741
|
-
"description": "Array of filters based on {@see BentoFilterBarModel}.\nEach one of the elements in the array correspond to a filter that will\nbe created and rendered in the FilterBar.\n\nCan be used with v-model or independently with the @input event.",
|
|
1742
|
-
"value": {
|
|
1743
|
-
"kind": "expression",
|
|
1744
|
-
"type": "BentoFilterBarModel"
|
|
1745
|
-
},
|
|
1746
|
-
"default": "() => []"
|
|
1747
|
-
},
|
|
1748
|
-
{
|
|
1749
|
-
"name": "filterValues",
|
|
1750
|
-
"description": "An array of the values for each filter in the filter bar.\n{@see BentoFilterValues}",
|
|
1751
|
-
"value": {
|
|
1752
|
-
"kind": "expression",
|
|
1753
|
-
"type": "BentoFilterValues"
|
|
1754
|
-
},
|
|
1755
|
-
"default": "() => []"
|
|
1756
|
-
},
|
|
1757
|
-
{
|
|
1758
|
-
"name": "showAppliedHiddenFilters",
|
|
1759
|
-
"description": "Will show all applied filters even if their visibility is set to false.",
|
|
1760
|
-
"value": {
|
|
1761
|
-
"kind": "expression",
|
|
1762
|
-
"type": "boolean"
|
|
1763
|
-
},
|
|
1764
|
-
"default": "false"
|
|
1765
|
-
}
|
|
1766
|
-
],
|
|
1767
|
-
"source": {
|
|
1768
|
-
"module": "./src/components/filter-bar/filter-bar.vue",
|
|
1769
|
-
"symbol": "default"
|
|
1770
|
-
}
|
|
1771
|
-
},
|
|
1772
1717
|
{
|
|
1773
1718
|
"name": "bento-focus-trap",
|
|
1774
1719
|
"description": "Locks the focus inside an element for a11y navigation.\nUseful for things like modals, popovers, etc...",
|
|
@@ -2888,30 +2833,6 @@
|
|
|
2888
2833
|
"symbol": "default"
|
|
2889
2834
|
}
|
|
2890
2835
|
},
|
|
2891
|
-
{
|
|
2892
|
-
"name": "bento-select-country-filter",
|
|
2893
|
-
"description": "The Select Country filter displays a listbox of country items\npassed in the \"options.listboxItems\" property.",
|
|
2894
|
-
"attributes": [
|
|
2895
|
-
{
|
|
2896
|
-
"name": "options",
|
|
2897
|
-
"description": "List of options that are needed to setup the country filter\nAvailable options:\n - multiple: If \"true\", the user will be able to select multiple items.\n - listboxItems: The option elements to populate the filter with {@see BentoSelectCountryFilterOptions}\n - variant: Which label variant to display for the option item.",
|
|
2898
|
-
"value": {
|
|
2899
|
-
"kind": "expression",
|
|
2900
|
-
"type": "BentoSelectCountryFilterOptions"
|
|
2901
|
-
},
|
|
2902
|
-
"default": "undefined"
|
|
2903
|
-
}
|
|
2904
|
-
],
|
|
2905
|
-
"events": [
|
|
2906
|
-
{
|
|
2907
|
-
"name": "<undefined>"
|
|
2908
|
-
}
|
|
2909
|
-
],
|
|
2910
|
-
"source": {
|
|
2911
|
-
"module": "./src/components/filter-bar/components/select-filter/variants/select-country-filter/select-country-filter.vue",
|
|
2912
|
-
"symbol": "default"
|
|
2913
|
-
}
|
|
2914
|
-
},
|
|
2915
2836
|
{
|
|
2916
2837
|
"name": "bento-select-country-filter",
|
|
2917
2838
|
"description": "The Select Country filter displays a listbox of country items\npassed in the \"options.listboxItems\" property.",
|
|
@@ -4123,44 +4044,6 @@
|
|
|
4123
4044
|
{
|
|
4124
4045
|
"name": "calendar-month-day",
|
|
4125
4046
|
"description": "Handles the styles and states of the individual dates of the calendar.",
|
|
4126
|
-
"attributes": [
|
|
4127
|
-
{
|
|
4128
|
-
"name": "day",
|
|
4129
|
-
"required": true,
|
|
4130
|
-
"description": "Date to be displayed as the calendar day. From 1st to 31st (or end of the month defined in the date)",
|
|
4131
|
-
"value": {
|
|
4132
|
-
"kind": "expression",
|
|
4133
|
-
"type": "date"
|
|
4134
|
-
}
|
|
4135
|
-
},
|
|
4136
|
-
{
|
|
4137
|
-
"name": "disabled",
|
|
4138
|
-
"description": "Indicate if a date should be disabled or not",
|
|
4139
|
-
"value": {
|
|
4140
|
-
"kind": "expression",
|
|
4141
|
-
"type": "boolean"
|
|
4142
|
-
},
|
|
4143
|
-
"default": "false"
|
|
4144
|
-
},
|
|
4145
|
-
{
|
|
4146
|
-
"name": "selected",
|
|
4147
|
-
"description": "Changes the state of the calendar day to selected.",
|
|
4148
|
-
"value": {
|
|
4149
|
-
"kind": "expression",
|
|
4150
|
-
"type": "boolean"
|
|
4151
|
-
},
|
|
4152
|
-
"default": "false"
|
|
4153
|
-
},
|
|
4154
|
-
{
|
|
4155
|
-
"name": "variant",
|
|
4156
|
-
"description": "When the day is selected, this indicates if the selection is a single date or part of a range.\nIf it's a range it can be at the beginning, middle or end of the selection.",
|
|
4157
|
-
"value": {
|
|
4158
|
-
"kind": "expression",
|
|
4159
|
-
"type": "CalendarMonthDayVariant"
|
|
4160
|
-
},
|
|
4161
|
-
"default": "CalendarMonthDayVariant.SINGLE"
|
|
4162
|
-
}
|
|
4163
|
-
],
|
|
4164
4047
|
"events": [
|
|
4165
4048
|
{
|
|
4166
4049
|
"name": "<undefined>"
|
|
@@ -7137,6 +7020,61 @@
|
|
|
7137
7020
|
"symbol": "default"
|
|
7138
7021
|
}
|
|
7139
7022
|
},
|
|
7023
|
+
{
|
|
7024
|
+
"name": "filter-bar",
|
|
7025
|
+
"description": "",
|
|
7026
|
+
"attributes": [
|
|
7027
|
+
{
|
|
7028
|
+
"name": "config",
|
|
7029
|
+
"description": "Array of filters based on {@see BentoFilterBarModel}.\nEach one of the elements in the array correspond to a filter that will\nbe created and rendered in the FilterBar.",
|
|
7030
|
+
"value": {
|
|
7031
|
+
"kind": "expression",
|
|
7032
|
+
"type": "BentoFilterBarModel"
|
|
7033
|
+
},
|
|
7034
|
+
"default": "() => []"
|
|
7035
|
+
},
|
|
7036
|
+
{
|
|
7037
|
+
"name": "searchTerm",
|
|
7038
|
+
"description": "Search term useful to filter all the data by text.\nIf the value is non-existant (null or undefined) the search bar won't be enabled.",
|
|
7039
|
+
"value": {
|
|
7040
|
+
"kind": "expression",
|
|
7041
|
+
"type": "BentoSearchBar.props.value.type"
|
|
7042
|
+
},
|
|
7043
|
+
"default": "undefined"
|
|
7044
|
+
},
|
|
7045
|
+
{
|
|
7046
|
+
"name": "value",
|
|
7047
|
+
"description": "Array of filters based on {@see BentoFilterBarModel}.\nEach one of the elements in the array correspond to a filter that will\nbe created and rendered in the FilterBar.\n\nCan be used with v-model or independently with the @input event.",
|
|
7048
|
+
"value": {
|
|
7049
|
+
"kind": "expression",
|
|
7050
|
+
"type": "BentoFilterBarModel"
|
|
7051
|
+
},
|
|
7052
|
+
"default": "() => []"
|
|
7053
|
+
},
|
|
7054
|
+
{
|
|
7055
|
+
"name": "filterValues",
|
|
7056
|
+
"description": "An array of the values for each filter in the filter bar.\n{@see BentoFilterValues}",
|
|
7057
|
+
"value": {
|
|
7058
|
+
"kind": "expression",
|
|
7059
|
+
"type": "BentoFilterValues"
|
|
7060
|
+
},
|
|
7061
|
+
"default": "() => []"
|
|
7062
|
+
},
|
|
7063
|
+
{
|
|
7064
|
+
"name": "showAppliedHiddenFilters",
|
|
7065
|
+
"description": "Will show all applied filters even if their visibility is set to false.",
|
|
7066
|
+
"value": {
|
|
7067
|
+
"kind": "expression",
|
|
7068
|
+
"type": "boolean"
|
|
7069
|
+
},
|
|
7070
|
+
"default": "false"
|
|
7071
|
+
}
|
|
7072
|
+
],
|
|
7073
|
+
"source": {
|
|
7074
|
+
"module": "./src/components/filter-bar/filter-bar.vue",
|
|
7075
|
+
"symbol": "default"
|
|
7076
|
+
}
|
|
7077
|
+
},
|
|
7140
7078
|
{
|
|
7141
7079
|
"name": "filter-bar-button",
|
|
7142
7080
|
"description": "",
|
|
@@ -10335,64 +10273,32 @@
|
|
|
10335
10273
|
}
|
|
10336
10274
|
},
|
|
10337
10275
|
{
|
|
10338
|
-
"name": "select-filter",
|
|
10276
|
+
"name": "select-country-filter",
|
|
10339
10277
|
"description": "",
|
|
10340
10278
|
"attributes": [
|
|
10341
|
-
{
|
|
10342
|
-
"name": "defaultValue",
|
|
10343
|
-
"description": "Default value of the filter to reset to.",
|
|
10344
|
-
"value": {
|
|
10345
|
-
"kind": "expression",
|
|
10346
|
-
"type": "BentoListboxSelectedValue"
|
|
10347
|
-
},
|
|
10348
|
-
"default": "null"
|
|
10349
|
-
},
|
|
10350
|
-
{
|
|
10351
|
-
"name": "field",
|
|
10352
|
-
"required": true,
|
|
10353
|
-
"description": "Filter name/key referencing the actual property name in the data set.\nShould be unique per filter bar.",
|
|
10354
|
-
"value": {
|
|
10355
|
-
"kind": "expression",
|
|
10356
|
-
"type": "string"
|
|
10357
|
-
}
|
|
10358
|
-
},
|
|
10359
|
-
{
|
|
10360
|
-
"name": "label",
|
|
10361
|
-
"required": true,
|
|
10362
|
-
"description": "Label text to be displayed",
|
|
10363
|
-
"value": {
|
|
10364
|
-
"kind": "expression",
|
|
10365
|
-
"type": "string"
|
|
10366
|
-
}
|
|
10367
|
-
},
|
|
10368
|
-
{
|
|
10369
|
-
"name": "onlySlot",
|
|
10370
|
-
"description": "Renders the base filter's slot content only - leaving out the button and the popover.\nUsed for the allFiltersModal component.",
|
|
10371
|
-
"value": {
|
|
10372
|
-
"kind": "expression",
|
|
10373
|
-
"type": "boolean"
|
|
10374
|
-
},
|
|
10375
|
-
"default": "false"
|
|
10376
|
-
},
|
|
10377
10279
|
{
|
|
10378
10280
|
"name": "options",
|
|
10379
|
-
"description": "List of options that are needed to setup the filter\nAvailable options:\n - multiple: If \"true\", the user will be able to select multiple items.\n - listboxItems: The option elements to populate the filter with.",
|
|
10281
|
+
"description": "List of options that are needed to setup the country filter\nAvailable options:\n - multiple: If \"true\", the user will be able to select multiple items.\n - listboxItems: The option elements to populate the filter with {@see BentoSelectCountryFilterOptions}\n - variant: Which label variant to display for the option item.",
|
|
10380
10282
|
"value": {
|
|
10381
10283
|
"kind": "expression",
|
|
10382
|
-
"type": "
|
|
10284
|
+
"type": "BentoSelectCountryFilterOptions"
|
|
10383
10285
|
},
|
|
10384
10286
|
"default": "undefined"
|
|
10385
|
-
}
|
|
10287
|
+
}
|
|
10288
|
+
],
|
|
10289
|
+
"events": [
|
|
10386
10290
|
{
|
|
10387
|
-
"name": "
|
|
10388
|
-
"description": "Current value of the filter",
|
|
10389
|
-
"value": {
|
|
10390
|
-
"kind": "expression",
|
|
10391
|
-
"type": "BentoListboxSelectedValue"
|
|
10392
|
-
},
|
|
10393
|
-
"default": "undefined"
|
|
10291
|
+
"name": "<undefined>"
|
|
10394
10292
|
}
|
|
10395
10293
|
],
|
|
10294
|
+
"source": {
|
|
10295
|
+
"module": "./src/components/filter-bar/components/select-filter/variants/select-country-filter/select-country-filter.vue",
|
|
10296
|
+
"symbol": "default"
|
|
10297
|
+
}
|
|
10298
|
+
},
|
|
10299
|
+
{
|
|
10300
|
+
"name": "select-filter",
|
|
10301
|
+
"description": "",
|
|
10396
10302
|
"events": [
|
|
10397
10303
|
{
|
|
10398
10304
|
"name": "input"
|
|
@@ -10587,6 +10493,15 @@
|
|
|
10587
10493
|
},
|
|
10588
10494
|
"default": "false"
|
|
10589
10495
|
},
|
|
10496
|
+
{
|
|
10497
|
+
"name": "fullyClickable",
|
|
10498
|
+
"description": "Makes the entire selection card clickable. Clicking over interactive elements inside the card with this prop enabled will not be possible.",
|
|
10499
|
+
"value": {
|
|
10500
|
+
"kind": "expression",
|
|
10501
|
+
"type": "boolean"
|
|
10502
|
+
},
|
|
10503
|
+
"default": "false"
|
|
10504
|
+
},
|
|
10590
10505
|
{
|
|
10591
10506
|
"name": "hasError",
|
|
10592
10507
|
"description": "Shows the selection card in error state",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adyen/bento-vue2",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.33.0",
|
|
4
4
|
"description": "Adyen Bento Vue2 components",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"date-fns": "2.28.0",
|
|
47
47
|
"focus-lock": "0.11.0",
|
|
48
48
|
"uuid": "9.0.0",
|
|
49
|
-
"@adyen/bento-design-tokens": "1.
|
|
49
|
+
"@adyen/bento-design-tokens": "1.33.0"
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
52
52
|
"vue": "~2.7",
|
|
@@ -79,6 +79,7 @@
|
|
|
79
79
|
"@vitejs/plugin-react": "4.3.1",
|
|
80
80
|
"@vitejs/plugin-vue2": "2.3.1",
|
|
81
81
|
"@vitest/coverage-v8": "2.1.4",
|
|
82
|
+
"@vue-macros/better-define": "1.11.1",
|
|
82
83
|
"@vue/test-utils": "1.3.4",
|
|
83
84
|
"axe-core": "4.4.2",
|
|
84
85
|
"clean-webpack-plugin": "3.0.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"action-bar.Ds_ofJs6.js","sources":["../../src/components/action-bar/action-bar.vue"],"sourcesContent":["<template>\n <Transition name=\"b-action-bar__animation\" appear>\n <section class=\"b-action-bar\" :class=\"conditionalClasses\" :aria-label=\"t('actionBar')\">\n <div ref=\"actionBar\" class=\"b-action-bar__container\">\n <div v-if=\"!isConfirmationVariant\" class=\"b-action-bar__close-button\">\n <bento-button variant=\"tertiary\" inverse :aria-label=\"t('close')\" @click=\"emit('close')\">\n <template #iconLeft><cross-icon :aria-hidden=\"true\" /></template>\n </bento-button>\n </div>\n <bento-typography el=\"span\" stronger class=\"b-action-bar__selection\">\n {{ itemCounter }} {{ isConfirmationVariant ? tc('unsavedChanges', itemCounter) : label }}\n </bento-typography>\n <bento-button-actions\n v-if=\"isConfirmationVariant\"\n :actions=\"confirmationActions\"\n class=\"b-action-bar__actions\"\n inverse\n />\n <button-actions-with-menu\n v-else\n :actions=\"actionsInternal\"\n class=\"b-action-bar__actions\"\n :displayed-actions=\"internalDisplayedActions\"\n menu-position=\"top-end\"\n inverse\n />\n </div>\n </section>\n </Transition>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, nextTick, PropType, provide, ref, toRefs, watch } from 'vue';\n import { BentoButton, BentoButtonActions, BentoButtonActionsList } from '@/components/button';\n import { BentoTypography } from '@/components/typography';\n\n import { type BentoActionBarVariant } from '@/components/action-bar/action-bar.types';\n import ButtonActionsWithMenu from '@/components/internal/button-actions-with-menu/button-actions-with-menu.vue';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n\n import { useI18n } from '@/utils/ts/i18n';\n import { useWindowSize } from '@vueuse/core';\n\n import messages from './messages.json';\n import { POPOVER_OFFSET_INJECTION_KEY } from '@/components/popover/popover.keys';\n\n type MessageSchema = (typeof messages)['en-US'];\n\n // Constants\n const AVERAGE_BUTTON_SIZE = 100;\n const MENU_OFFSET = 7;\n const RESPONSIVE_BREAKPOINT = 500;\n const SPACING = 32;\n\n const props = defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * Required and used for the `default` variant.\n *\n * Each object in the list should have a `title`, an `event` and,\n * optionally, an `icon`.\n *\n * The component will display 4 actions and the hide the rest inside a menu.\n *\n * @see BentoButton for a list of all the other props supported by each button action.\n */\n actions: {\n type: Array as PropType<BentoButtonActionsList>,\n default: () => [],\n },\n /**\n * How many actions should be visible outside the menu, cannot be more than 4\n */\n visibleActions: {\n type: Number,\n default: 4,\n validator: (value: number) => value > 0 && value <= 4,\n },\n /**\n * Use when there are sticky elements at the bottom, like sticky pagination\n */\n extraBottomSpacing: {\n type: Boolean,\n default: false,\n },\n /**\n * Show how many items are selected\n */\n itemCounter: {\n type: Number,\n required: true,\n },\n /**\n * Label for the selection, e.g. 'selected'/'changed'\n */\n selectionLabel: {\n type: String,\n default: null,\n },\n /**\n * Variant for the action bar\n * @values default, confirmation\n */\n variant: {\n type: String as PropType<BentoActionBarVariant>,\n default: 'default',\n },\n });\n\n const emit = defineEmits<{\n /**\n * Event emitted when the user click the close button\n */\n (e: 'close'): void;\n (e: 'cancel'): void;\n (e: 'save'): void;\n }>();\n\n const { t, tc } = useI18n<{ message: MessageSchema }>({ messages });\n const label = computed(() => (props.selectionLabel ? props.selectionLabel : t('selected')));\n\n // Refs\n const actionBar = ref<HTMLDivElement>(null);\n const { extraBottomSpacing, visibleActions } = toRefs(props);\n const { width } = useWindowSize();\n const internalDisplayedActions = ref(null);\n const internalVisibleActions = ref(null);\n\n const isConfirmationVariant = computed(() => props.variant === 'confirmation');\n\n watch(\n () => visibleActions.value,\n value => {\n internalVisibleActions.value = value <= 4 ? value : 4;\n internalDisplayedActions.value = internalVisibleActions.value;\n },\n { immediate: true }\n );\n\n // Styling\n const conditionalClasses = computed(() => ({\n 'b-action-bar--extra-spacing': extraBottomSpacing.value,\n 'b-action-bar--confirmation': isConfirmationVariant.value,\n }));\n\n // Provide POPOVER_OFFSET_INJECTION_KEY to change the value of the popover offset\n provide(POPOVER_OFFSET_INJECTION_KEY, MENU_OFFSET);\n\n // Manipulate actions array to display as intended\n const actionsInternal = computed(() => {\n // All buttons should be of type secondary in the action bar\n const actions = props.actions.map(action => ({\n ...action,\n variant: 'secondary',\n })) as BentoButtonActionsList;\n // Shown actions should display from left to right in action bar, instead of right to left which is the button actions default\n const shownActions = actions.slice(0, internalDisplayedActions.value).reverse();\n const hiddenActions = actions.slice(internalDisplayedActions.value);\n\n return [...shownActions, ...hiddenActions];\n });\n\n const confirmationActions = computed<BentoButtonActionsList>(() => [\n {\n title: t('save'),\n event: () => emit('save'),\n },\n {\n title: t('cancel'),\n variant: 'secondary',\n event: () => emit('cancel'),\n },\n ]);\n\n // Recursive functions to determine how many actions should be visible/hidden based on the screens width\n const showActions = async () => {\n await nextTick();\n if (\n width.value > actionBar.value.clientWidth + SPACING + AVERAGE_BUTTON_SIZE &&\n internalDisplayedActions.value < internalVisibleActions.value\n ) {\n internalDisplayedActions.value += 1;\n showActions();\n }\n };\n\n const hideActions = async () => {\n await nextTick();\n if (width.value < actionBar.value.clientWidth + SPACING && internalDisplayedActions.value > 0) {\n internalDisplayedActions.value -= 1;\n hideActions();\n }\n };\n\n // Screen width watcher to toggle hidden/visible actions\n watch(\n () => width.value,\n async (newValue, oldValue) => {\n await nextTick();\n if (!actionBar.value) {\n return;\n }\n const isIncreasing = newValue > oldValue;\n if (width.value < RESPONSIVE_BREAKPOINT) {\n internalDisplayedActions.value = 0;\n } else if (isIncreasing) {\n showActions();\n } else {\n hideActions();\n }\n },\n { immediate: true }\n );\n</script>\n\n<script lang=\"ts\">\n /**\n * Action bar is a floating bar that provides users with quick access to key actions that can be applied to one or multiple items.\n *\n * @example\n * import { BentoActionBar } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoActionBar },\n * template: `\n * <bento-action-bar\n * :actions='[\n * {\n * title: 'Delete',\n * critical: true,\n * icon: BinIcon,\n * event: () => true,\n * },\n * {\n * title: 'Edit',\n * icon: EditIcon,\n * event: () => true,\n * }\n * ]'\n * @close=\"closeAction\"\n * :item-counter=\"5\"\n * />\n * `\n * }\n */\n export default {\n i18n: { messages },\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./action-bar.scss\" />\n"],"names":["__default__","messages","AVERAGE_BUTTON_SIZE","MENU_OFFSET","RESPONSIVE_BREAKPOINT","SPACING","t","tc","useI18n","label","computed","props","actionBar","ref","extraBottomSpacing","visibleActions","toRefs","width","useWindowSize","internalDisplayedActions","internalVisibleActions","isConfirmationVariant","watch","value","conditionalClasses","provide","POPOVER_OFFSET_INJECTION_KEY","actionsInternal","actions","action","shownActions","hiddenActions","confirmationActions","emit","showActions","nextTick","hideActions","newValue","oldValue","isIncreasing"],"mappings":";;;;;;;;;;;;;;;;;;;;GAqPIA,IAAA;AAAA,EAAe,MAAA,EAAA,UAAAC,EAAA;AAEf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAtMAC,IAAA,KACAC,IAAA,GACAC,IAAA,KACAC,IAAA,IAkEA,EAAA,GAAAC,GAAA,IAAAC,EAAA,IAAAC,EAAA,GACAC,IAAAC,EAAA,MAAAC,EAAA,iBAAAA,EAAA,iBAAAL,EAAA,UAAA,CAAA,GAGAM,IAAAC,EAAA,IAAA,GACA,EAAA,oBAAAC,GAAA,gBAAAC,EAAA,IAAAC,EAAAL,CAAA,GACA,EAAA,OAAAM,EAAA,IAAAC,EAAA,GACAC,IAAAN,EAAA,IAAA,GACAO,IAAAP,EAAA,IAAA,GAEAQ,IAAAX,EAAA,MAAAC,EAAA,YAAA,cAAA;AAEA,IAAAW;AAAA,MAAA,MAAAP,EAAA;AAAA,MACyB,CAAAQ,MAAA;AAEjB,QAAAH,EAAA,QAAAG,KAAA,IAAAA,IAAA,GACAJ,EAAA,QAAAC,EAAA;AAAA,MAAwD;AAAA,MAC5D,EAAA,WAAA,GAAA;AAAA,IACkB;AAItB,UAAAI,IAAAd,EAAA,OAAA;AAAA,MAA2C,+BAAAI,EAAA;AAAA,MACW,8BAAAO,EAAA;AAAA,IACE,EAAA;AAIxD,IAAAI,EAAAC,GAAAvB,CAAA;AAGA,UAAAwB,IAAAjB,EAAA,MAAA;AAEI,YAAAkB,IAAAjB,EAAA,QAAA,IAAA,CAAAkB,OAAA;AAAA,QAA6C,GAAAA;AAAA,QACtC,SAAA;AAAA,MACM,EAAA,GAGbC,IAAAF,EAAA,MAAA,GAAAT,EAAA,KAAA,EAAA,QAAA,GACAY,IAAAH,EAAA,MAAAT,EAAA,KAAA;AAEA,aAAA,CAAA,GAAAW,GAAA,GAAAC,CAAA;AAAA,IAAyC,CAAA,GAG7CC,IAAAtB,EAAA,MAAA;AAAA,MAAmE;AAAA,QAC/D,OAAAJ,EAAA,MAAA;AAAA,QACmB,OAAA,MAAA2B,EAAA,MAAA;AAAA,MACS;AAAA,MAC5B;AAAA,QACA,OAAA3B,EAAA,QAAA;AAAA,QACqB,SAAA;AAAA,QACR,OAAA,MAAA2B,EAAA,QAAA;AAAA,MACiB;AAAA,IAC9B,CAAA,GAIJC,IAAA,YAAA;AACI,YAAAC,EAAA,GACAlB,EAAA,QAAAL,EAAA,MAAA,cAAAP,IAAAH,KAAAiB,EAAA,QAAAC,EAAA,UAIID,EAAA,SAAA,GACAe,EAAA;AAAA,IACJ,GAGJE,IAAA,YAAA;AACI,YAAAD,EAAA,GACAlB,EAAA,QAAAL,EAAA,MAAA,cAAAP,KAAAc,EAAA,QAAA,MACIA,EAAA,SAAA,GACAiB,EAAA;AAAA,IACJ;AAIJ,WAAAd;AAAA,MAAA,MAAAL,EAAA;AAAA,MACgB,OAAAoB,GAAAC,MAAA;AAGR,YADA,MAAAH,EAAA,GACA,CAAAvB,EAAA;AACI;AAEJ,cAAA2B,IAAAF,IAAAC;AACA,QAAArB,EAAA,QAAAb,IACIe,EAAA,QAAA,IAAiCoB,IAEjCL,EAAA,IAEAE,EAAA;AAAA,MACJ;AAAA,MACJ,EAAA,WAAA,GAAA;AAAA,IACkB;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"avatar.DohItrb9.js","sources":["../../src/composables/initials.ts","../../src/components/avatar/components/avatar-image/avatar-image.types.ts","../../src/components/avatar/components/avatar-image/avatar-image.vue","../../src/components/avatar/avatar.vue"],"sourcesContent":["import { computed, ComputedRef, ref } from 'vue';\nimport { MaybeRef } from '@/types';\n\n/** Extracts the first letter of a username\n * @param username - The name to return the initials of\n * Common patterns:\n * 1. John => J\n * 2. John Smith => J\n * John Smith Doe Holly => J\n */\nexport const useInitials = (username: MaybeRef<string | null>): ComputedRef<string | null> => {\n const computedUsername = ref(username);\n return computed(() => (computedUsername.value ? computedUsername.value.trim().charAt(0).toUpperCase() : null));\n};\n","export enum BentoAvatarImageVariant {\n LARGE = 'large',\n SMALL = 'small',\n}\n\nexport enum BentoAvatarImageColor {\n BLUE = 'blue',\n GREEN = 'green',\n RED = 'red',\n YELLOW = 'yellow',\n}\n","<template>\n <div class=\"b-avatar-image\" :class=\"conditionalClasses\" aria-hidden=\"true\" data-testid=\"avatar\">\n <img v-if=\"src\" :src=\"src\" class=\"b-avatar-image__image\" alt=\"Profile picture\" data-testid=\"avatar-content\" />\n <div v-else class=\"b-avatar-image__default\" data-testid=\"avatar-content\">\n <bento-typography el=\"span\" variant=\"body\" strongest>\n {{ initials }}\n </bento-typography>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, toRefs } from 'vue';\n import { BentoAvatarImageColor, BentoAvatarImageVariant } from './avatar-image.types';\n import { BentoTypography } from '@/components/typography';\n import { useInitials } from '@/composables';\n\n const props = withDefaults(\n defineProps<{\n /**\n * Avatar color. Defaults to yellow.\n */\n color?: BentoAvatarImageColor;\n\n /**\n * Image src to load the profile picture.\n */\n src?: string;\n\n /**\n * Name of the user that will be used 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?: string;\n\n /**\n * Variants supported for small and large.\n * Default - large\n */\n variant?: BentoAvatarImageVariant;\n }>(),\n {\n color: BentoAvatarImageColor.YELLOW,\n src: null,\n username: null,\n variant: BentoAvatarImageVariant.LARGE,\n }\n );\n\n const { username } = toRefs(props);\n const initials = useInitials(username);\n\n const conditionalClasses = computed(() => ({\n [`b-avatar-image--${BentoAvatarImageVariant.SMALL}`]: props.variant === BentoAvatarImageVariant.SMALL,\n [`b-avatar-image--${props.color}`]: props.color,\n }));\n</script>\n\n<script lang=\"ts\">\n /**\n * Image used as user profile inside bento-avatar.\n *\n * @example\n * import { AvatarImage } from './components/avatar-image';\n *\n * export default {\n * components: { AvatarImage },\n * template: `<avatar-image :src=\"userAvatarSrc\" username=\"Jane\" />`\n * }\n */\n export default {};\n</script>\n\n<style lang=\"scss\" scoped src=\"./avatar-image.scss\" />\n","<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 setup lang=\"ts\">\n import { computed, 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 const props = withDefaults(\n defineProps<{\n /**\n * Displays the user profile without the label.\n */\n iconOnly?: boolean;\n\n /**\n * Image src to load the profile picture.\n */\n src?: string;\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: string;\n }>(),\n {\n iconOnly: false,\n src: null,\n }\n );\n\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</script>\n\n<script lang=\"ts\">\n /**\n * Displays an user profile including an avatar and optionally a label.\n *\n * @example\n * import { BentoAvatar } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoAvatar },\n * template: `<bento-avatar :src=\"userAvatarSrc\" username=\"Jane\" />`\n * }\n */\n export default {\n name: 'bento-avatar',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"./avatar.scss\" />\n"],"names":["useInitials","username","computedUsername","ref","computed","BentoAvatarImageVariant","BentoAvatarImageVariant2","BentoAvatarImageColor","BentoAvatarImageColor2","__default__$1","toRefs","props","initials","conditionalClasses","__default__","computedAriaLabel","charCode","avatarColor","rangeStep"],"mappings":";;;;;AAUa,MAAAA,IAAA,CAAAC,MAAA;AACT,QAAAC,IAAAC,EAAAF,CAAA;AACA,SAAAG,EAAA,MAAAF,EAAA,QAAAA,EAAA,MAAA,KAAA,EAAA,OAAA,CAAA,EAAA,YAAA,IAAA,IAAA;AACJ;ACbY,IAAAG,IAAA,kBAAAC,OACRA,EAAA,QAAA,SACAA,EAAA,QAAA,SAFQA,IAAAD,KAAA,CAAA,CAAA,GAKAE,IAAA,kBAAAC,OACRA,EAAA,OAAA,QACAA,EAAA,QAAA,SACAA,EAAA,MAAA,OACAA,EAAA,SAAA,UAJQA,IAAAD,KAAA,CAAA,CAAA;ACoER,MAAAE,IAAA,CAAA;;;;;;;;;;iBArBA,EAAA,UAAAR,EAAA,IAAAS,EAAAC,CAAA,GACAC,IAAAZ,EAAAC,CAAA,GAEAY,IAAAT,EAAA,OAAA;AAAA,MAA2C,CAAA,mBAAAC,EAAA,KAAA,EAAA,GAAAM,EAAA,YAAAN,EAAA;AAAA,MACyD,CAAA,mBAAAM,EAAA,KAAA,EAAA,GAAAA,EAAA;AAAA,IACtD,EAAA;;;;;;;;;;;;;;;qBC8B9CG,IAAA;AAAA,EAAe,MAAA;AAEf;;;;;;;;iBA1CA,EAAA,UAAAb,EAAA,IAAAS,EAAAC,CAAA,GAEAI,IAAAX,EAAA,MAAAO,EAAA,WAAAA,EAAA,WAAA,IAAA,GACAT,IAAAE,EAAA,MAAAO,EAAA,MAAA,OAAAA,EAAA,QAAA,GACAC,IAAAZ,EAAAC,CAAA,GAGAe,IAAAZ,EAAA,MAAAQ,EAAA,QAAAA,EAAA,MAAA,WAAA,CAAA,IAAA,KAAA,IAAA,GAGAK,IAAAb,EAAA,MAAA;AAGI,YAAAc,IAAA,KADA,OAAA,KAAAX,CAAA,EAAA;AAGA,aAAAS,EAAA,SAAAE,IACIX,EAAA,SAEJS,EAAA,SAAAE,IAAA,IACIX,EAAA,OAEJS,EAAA,SAAAE,IAAA,IACIX,EAAA,QAEJA,EAAA;AAAA,IAA6B,CAAA;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"base-modal.B17Ib1QQ.js","sources":["../../src/components/modal/modal.types.ts","../../src/components/modal/modal.keys.ts","../../src/components/modal/components/modal-page/modal-page.vue","../../src/components/modal/components/base-modal/base-modal.vue"],"sourcesContent":["import { ComputedRef, Ref } from 'vue';\n\n/**\n * Public\n */\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoModalVariant {\n DEFAULT = 'default',\n DIALOG = 'dialog',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoModalVariantMapping {\n DEFAULT = 'BentoModalDefault',\n DIALOG = 'BentoModalDialog',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoModalSize {\n SMALL = 'small',\n MEDIUM = 'medium',\n LARGE = 'large',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoModalColumnLayoutVariant {\n SMALLER = 'smaller',\n EQUAL = 'equal',\n BIGGER = 'bigger',\n}\n\nexport enum BentoModalRole {\n DIALOG = 'dialog',\n ALERT_DIALOG = 'alertdialog',\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoModalDialogType {\n CONFIRMATION = 'confirmation',\n DESTRUCTIVE = 'destructive',\n INFO = 'info',\n ACKNOWLEDGEMENT = 'acknowledgement',\n}\n\nexport enum BentoModalEvent {\n CLOSE_MODAL = 'close-modal',\n}\n\n/**\n * Private\n */\nexport interface BentoModalConfigData {\n activePage: Ref<string>;\n height: Ref<string>;\n isAnimationActive: Ref<boolean>;\n pageCustomPadding: Ref<string>;\n showCloseButton: ComputedRef<boolean>;\n size: Ref<BentoModalSize | `${BentoModalSize}`>;\n}\n","export const MODAL_CONFIG_INJECTION_KEY = Symbol('modal config data injection key');\n","<template>\n <dialog-page\n ref=\"page\"\n class=\"b-modal-page\"\n :class=\"modalPageConditionalClasses\"\n :page-id=\"pageId\"\n :always-show-border=\"hasColumnLayout\"\n :back-button-styling=\"customPaddingStyles?.backButton\"\n :previous-page=\"previousPage\"\n @animationend=\"isAnimationActive = false\"\n >\n <template v-if=\"hasSlot('default') || showCloseButton\" #header>\n <div class=\"b-modal-page__header-container\" :style=\"customPaddingStyles.header\">\n <div class=\"b-modal-page__header\">\n <bento-typography\n class=\"b-modal-page__title\"\n aria-label=\"base modal title\"\n el=\"span\"\n variant=\"title\"\n stronger\n >\n <slot v-if=\"hasSlot('default')\" />\n </bento-typography>\n </div>\n </div>\n </template>\n\n <template #content>\n <div\n class=\"b-modal-page__content\"\n :class=\"modalContentConditionalClasses\"\n :style=\"customPaddingStyles.content\"\n >\n <bento-typography\n v-if=\"hasSlot('content') || (hasSlot('content-col-1') && hasSlot('content-col-2'))\"\n aria-label=\"base modal content\"\n el=\"div\"\n variant=\"body\"\n stronger\n >\n <grid-layout\n v-if=\"hasColumnLayout\"\n :column-width=\"computedColumnWidth\"\n :container-type=\"GridLayoutContainerType.NORMAL\"\n no-gap\n class=\"b-modal-page__grid\"\n >\n <template #col-1><slot name=\"content-col-1\"></slot></template>\n <template #col-2><slot name=\"content-col-2\"></slot></template>\n </grid-layout>\n <slot v-else name=\"content\" />\n </bento-typography>\n </div>\n </template>\n <template v-if=\"hasSlot('actions')\" #footer>\n <div class=\"b-modal-page__actions-container\" :style=\"customPaddingStyles.actions\">\n <div aria-label=\"modal actions\" class=\"b-modal-page__actions\">\n <slot name=\"actions\" />\n </div>\n </div>\n </template>\n <template v-else-if=\"actions && actions.length > 0\" #footer>\n <div class=\"b-modal-page__actions-container\" :style=\"customPaddingStyles.actions\">\n <footer-actions\n :actions=\"actions\"\n :actions-label=\"actionsLabel\"\n :destructive-actions=\"destructiveActions\"\n />\n </div>\n </template>\n </dialog-page>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, defineComponent, inject, nextTick, onUnmounted, PropType, ref, useSlots, watch } from 'vue';\n import {\n BentoModalColumnLayoutVariant,\n BentoModalConfigData,\n BentoModalSize,\n } from '@/components/modal/modal.types';\n import { BentoTypography } from '@/components/typography';\n import { BentoButtonActionsList } from '@/components/button';\n import { GridLayout, GridLayoutContainerType } from '@/internal';\n import { useHasSlot } from '@/composables';\n\n import { FooterActions } from '@/components/internal/footer-actions';\n\n import DialogPage from '@/internal/dialog-page/dialog-page.vue';\n import { MODAL_CONFIG_INJECTION_KEY } from '../../modal.keys';\n import { observeSizeOfElement } from '@/utils/ts/resize';\n\n const CLOSE_BUTTON_ICON_WIDTH = 26;\n\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n const page = ref<InstanceType<typeof DialogPage>>(null);\n\n const props = defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * First element in the list will be rendered as \"primary\".\n * All elements after the first will be rendered as \"secondary\".\n * But you may change the color of 1-st action to red with 'critial' key\n * Not more than 3 action buttons can be provided\n * Or 2 action buttons and 1 Label for them\n *\n * Each object in the list should have a `title`, an `event` and\n * (optional) a Vue `icon` from the library `@adyen/ui-assets-icons-16`.\n *\n * `title`: Button's text.\n *\n * `event`: Event triggered when clicking the Button.\n *\n * `icon`: Vue Icon from the library `@adyen/ui-assets-icons-16`.\n *\n * ```\n * [{\n * title: 'Primary',2\n * event: () => { ... },\n * icon: FourPeopleIcon\n * }, {\n * title: 'Secondary',\n * event: () => { ... }\n * }]\n * ```\n */\n actions: {\n type: Array as PropType<BentoButtonActionsList>,\n default: null,\n },\n\n /**\n * Text label that is displayed left to the action buttons\n */\n actionsLabel: { type: String, default: null },\n\n /**\n * If a column layout is provided, it renders the respective left column width variant. This can be smaller than the second column, the same size as the second column or bigger than the second column.\n */\n columnsSize: {\n type: String as PropType<BentoModalColumnLayoutVariant>,\n default: BentoModalColumnLayoutVariant.SMALLER,\n },\n\n /**\n * If provided, manages the padding of the whole modal container\n */\n customPadding: { type: String, default: null },\n\n /**\n * If passed - sets first button color to red\n */\n destructiveActions: { type: Boolean, default: false },\n\n /**\n * If provided, renders the modal's content in a two-column layout an wth dividers separating its content\n */\n withColumnLayout: { type: Boolean, default: false },\n\n /**\n * Identifier of the page, used with activePage prop to handle modal navigation\n */\n pageId: {\n type: String,\n default: undefined,\n },\n\n /**\n * ID of the page for the back button to navigate to. Only use it to overwrite the default back behavior\n * Used when the back button should not take the user to the natural previous page\n * Set to `null` to hide back button in the page\n */\n previousPage: {\n type: String,\n default: undefined,\n },\n });\n\n const modalPageConditionalClasses = computed(() => ({\n 'b-modal-page--custom-padding': props.customPadding,\n }));\n\n const modalContentConditionalClasses = computed(() => ({\n 'b-modal-page__content--with-header': hasSlot('default'),\n 'b-modal-page__content--with-actions': hasSlot('actions') || props.actions?.length,\n }));\n\n // Setting custom padding styles\n const customPaddingStyles = computed(() => {\n if (!props.customPadding) {\n return {};\n }\n\n const xPadding = {\n paddingLeft: props.customPadding,\n paddingRight: props.customPadding,\n };\n\n const content = { ...xPadding, paddingTop: undefined, paddingBottom: undefined };\n\n if (!hasSlot('default')) {\n content.paddingTop = props.customPadding;\n }\n\n if (!hasSlot('actions')) {\n content.paddingBottom = props.customPadding;\n }\n\n return {\n header: {\n ...xPadding,\n paddingTop: props.customPadding,\n paddingRight: `${parseInt(props.customPadding, 10) + CLOSE_BUTTON_ICON_WIDTH}px`,\n flex: 1,\n },\n content,\n actions: { ...xPadding, paddingBottom: props.customPadding },\n backButton: { top: props.customPadding, paddingLeft: props.customPadding },\n };\n });\n\n // Column layout styles\n const hasColumnLayout = computed(() => props.withColumnLayout && size.value === BentoModalSize.LARGE);\n\n const computedColumnWidth = computed(() => {\n if (props.columnsSize === BentoModalColumnLayoutVariant.SMALLER) {\n return [\n { small: 4, medium: 4, large: 4 },\n { small: 8, medium: 8, large: 8 },\n ];\n }\n if (props.columnsSize === BentoModalColumnLayoutVariant.BIGGER) {\n return [\n { small: 8, medium: 8, large: 8 },\n { small: 4, medium: 4, large: 4 },\n ];\n }\n return [\n { small: 6, medium: 6, large: 6 },\n { small: 6, medium: 6, large: 6 },\n ];\n });\n\n // Register page to parent component and inject data from parent component\n const { activePage, height, isAnimationActive, pageCustomPadding, showCloseButton, size } =\n inject<BentoModalConfigData>(MODAL_CONFIG_INJECTION_KEY);\n\n const isCurrentPage = computed(() => activePage.value === props.pageId || !activePage.value);\n\n // Animation\n // Set resize observer on mount of update the height of the dialog on resize\n let pageElementObserver: ResizeObserver | null = null;\n\n // Watching activePage changes to set the height of the page and set isAnimationActive\n watch(\n () => activePage.value,\n async (value, oldValue) => {\n if (isCurrentPage.value) {\n await nextTick();\n height.value = `${page.value?.$el?.clientHeight}px`;\n pageCustomPadding.value = props.customPadding;\n // only set isAnimationActive to true if its going from two different pages and not from null to the first page\n isAnimationActive.value = oldValue !== undefined;\n\n pageElementObserver = observeSizeOfElement(page.value, () => {\n const pageHeight = `${page.value?.$el?.clientHeight}px`;\n if (pageHeight && pageHeight !== height.value) {\n height.value = pageHeight;\n }\n });\n }\n },\n { immediate: true }\n );\n\n // Disconnect observer on unmounting the page\n onUnmounted(() => {\n pageElementObserver?.disconnect();\n });\n</script>\n\n<script lang=\"ts\">\n /**\n * ModalPage is used to render different pages of the Modal component\n *\n * @example\n * import { BentoModal, BentoModalPage } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoModal, BentoModalPage },\n * template: `\n * <bento-modal active-page='page1' :is-open='true'>\n * <bento-modal-page\n * pageId='page1'\n * actions-label='Move to next page'\n * :actions=\"[\n * {\n * title: 'Next page',\n * event: () => {\n * activePage.value = 'page2';\n * },\n * }]\">\n * Page 1\n * <template #content>\n * Page 1 content\n * </template>\n * </bento-modal-page>\n * <bento-modal-page\n * pageId='page2'\n * :actions=\"[\n * {\n * title: 'Save',\n * event: () => {},\n * }]\">\n * Page 2\n * <template #content>\n * Page 2 content\n * </template>\n * </bento-modal-page>\n * </bento-modal>\n * `\n * }\n */\n export default defineComponent({});\n</script>\n\n<style lang=\"scss\" scoped src=\"./modal-page.scss\" />\n","<template>\n <div class=\"b-modal-base\">\n <dialog\n :id=\"modalId\"\n ref=\"modal\"\n :role=\"modalRole\"\n :aria-label=\"computedAriaLabel\"\n :style=\"{ height: height }\"\n class=\"b-modal-base__container\"\n :class=\"modalConditionalClasses\"\n :open=\"initiallyOpen\"\n @animationend=\"closeModalAfterAnimation\"\n @keydown.esc=\"internalModalActionClose\"\n >\n <bento-focus-trap v-if=\"isOpen || initiallyOpen\" v-bento-click-outside-directive=\"closeModalOnClickOutside\">\n <bento-button\n v-if=\"showCloseButton\"\n class=\"b-modal-base__close-button\"\n variant=\"tertiary\"\n type=\"button\"\n :style=\"customPaddingStyles\"\n @click=\"internalModalActionClose\"\n >\n <cross-icon :svg-title=\"t('close')\" />\n </bento-button>\n <template v-if=\"props.activePage\">\n <slot />\n </template>\n <bento-modal-page\n v-else\n :with-column-layout=\"withColumnLayout\"\n :size=\"size\"\n :custom-padding=\"customPadding\"\n :columns-size=\"columnsSize\"\n >\n <template v-if=\"hasSlot('default')\" #default>\n <slot></slot>\n </template>\n <template v-if=\"hasSlot('content-col-1')\" #content-col-1\n ><slot name=\"content-col-1\"></slot\n ></template>\n <template v-if=\"hasSlot('content-col-2')\" #content-col-2\n ><slot name=\"content-col-2\"></slot\n ></template>\n <template v-if=\"hasSlot('content')\" #content><slot name=\"content\"></slot></template>\n <template v-if=\"hasSlot('actions')\" #actions><slot name=\"actions\"></slot></template>\n </bento-modal-page>\n </bento-focus-trap>\n </dialog>\n </div>\n</template>\n\n<script setup lang=\"ts\">\n import {\n computed,\n defineComponent,\n onMounted,\n PropType,\n provide,\n ref,\n toRefs,\n useAttrs,\n useSlots,\n watch,\n } from 'vue';\n import {\n BentoModalColumnLayoutVariant,\n BentoModalConfigData,\n BentoModalRole,\n BentoModalSize,\n } from '@/components/modal/modal.types';\n import { BentoButton, BentoButtonActionsList } from '@/components/button';\n import { BentoFocusTrap } from '@/components/focus-trap';\n import { useHasSlot } from '@/composables';\n import { useI18n } from '@/utils/ts/i18n';\n import { MODAL_DIALOG_ID_INJECTION_KEY } from '@/components/modal/components/base-modal/base-modal.keys';\n import { generateUid } from '@/utils/ts/unique-id';\n import { BentoClickOutsideDirective as vBentoClickOutsideDirective } from '@/directives/click-outside';\n import messages from './messages.json';\n\n import { BentoModalPage } from '@/components/modal';\n import CrossIcon from '@adyen/ui-assets-icons-16/vue/cross';\n\n import { MODAL_CONFIG_INJECTION_KEY } from '../../modal.keys';\n import {\n BentoDialogPageAnimation,\n BentoDialogPageConfigData,\n BentoDialogPageRegisterPage,\n DIALOG_PAGE_CONFIG_INJECTION_KEY,\n DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY,\n } from '@/internal';\n\n type MessageSchema = (typeof messages)['en-US'];\n const LOADING_BTN_CLOSE_AFTER_SUCCESS_DELAY_TIME = 500;\n\n const { t } = useI18n<{ message: MessageSchema }>({ messages });\n const slots = useSlots();\n const attrs = useAttrs();\n const hasSlot = useHasSlot(slots);\n const modal = ref<HTMLDialogElement>(null);\n const isClosing = ref(false);\n const modalId = generateUid('modal');\n\n const emit = defineEmits<{\n /**\n * Emits update event when page is changed internally\n */\n (e: 'update:active-page', page: string): void;\n /**\n * Emitted when the modal is closed.\n */\n (e: 'close-modal');\n }>();\n\n const props = defineProps({\n /**\n * List of actions that will be used to render the buttons.\n * First element in the list will be rendered as \"primary\".\n * All elements after the first will be rendered as \"secondary\".\n * But you may change the color of 1-st action to red with 'critial' key\n * Not more than 3 action buttons can be provided\n * Or 2 action buttons and 1 Label for them\n *\n * Each object in the list should have a `title`, an `event` and\n * (optional) a Vue `icon` from the library `@adyen/ui-assets-icons-16`.\n *\n * `title`: Button's text.\n *\n * `event`: Event triggered when clicking the Button.\n *\n * `icon`: Vue Icon from the library `@adyen/ui-assets-icons-16`.\n *\n * ```\n * [{\n * title: 'Primary',2\n * event: () => { ... },\n * icon: FourPeopleIcon\n * }, {\n * title: 'Secondary',\n * event: () => { ... }\n * }]\n * ```\n */\n actions: {\n type: Array as PropType<BentoButtonActionsList>,\n default: null,\n },\n\n /**\n * The id of the current active page\n * Should be the same id as the BentoModalPage to be displayed\n */\n activePage: {\n type: String,\n default: null,\n },\n\n /**\n * If a column layout is provided, it renders the respective left column width variant. This can be smaller than the second column, the same size as the second column or bigger than the second column.\n */\n columnsSize: {\n type: String as PropType<BentoModalColumnLayoutVariant>,\n default: BentoModalColumnLayoutVariant.SMALLER,\n },\n\n /**\n * If provided, manages the padding of the whole modal container\n */\n customPadding: { type: String, default: null },\n\n /**\n * If passed - sets first button color to red\n */\n destructiveActions: { type: Boolean, default: false },\n\n /**\n * Hides a cross icon on the right side of the title\n */\n hideCloseButton: { type: Boolean, required: true },\n\n /**\n * Sets the open attribute on the dialog element, use isOpen instead to toggle modal visbility.\n */\n initiallyOpen: { type: Boolean, default: false },\n\n /**\n * If set to true, it allows the modal to be closed by clicking outside of it\n */\n isDismissible: { type: Boolean, required: true },\n\n /**\n * Controls the modal's state from the outside. Set it to true to open the modal\n */\n isOpen: { type: Boolean, required: true },\n\n /**\n * Defines whether the modal will be an alert modal\n */\n modalRole: { type: String, default: BentoModalRole.DIALOG },\n\n /**\n * Sets the width of the modal\n */\n size: {\n type: String as PropType<BentoModalSize | `${BentoModalSize}`>,\n default: BentoModalSize.SMALL,\n },\n\n /**\n * If provided, renders the modal's content in a two-column layout an wth dividers separating its content\n */\n withColumnLayout: { type: Boolean, default: false },\n });\n\n const showCloseButton = computed(() => props.isDismissible && !props.hideCloseButton);\n\n const pageCustomPadding = ref(props.customPadding);\n\n const customPaddingStyles = computed(() => {\n if (!pageCustomPadding.value) {\n return {};\n }\n\n return { top: pageCustomPadding.value, right: pageCustomPadding.value };\n });\n\n const computedAriaLabel = computed(() => (attrs['aria-label'] as string) ?? (t('ariaLabelFallback') as string));\n const hasColumnLayout = computed(() => props.withColumnLayout && props.size === BentoModalSize.LARGE);\n\n const openModal = (): void => {\n modal.value.showModal();\n };\n\n const emitCloseEvent = (): void => {\n emit('close-modal');\n };\n\n // Handle closing and closing animation for dialog element\n const closeModalAfterAnimation = () => {\n if (isClosing.value) {\n modal.value.close();\n if (previousPages.value[0]) {\n emit('update:active-page', previousPages.value[0]);\n }\n previousPages.value = [];\n isClosing.value = false;\n emitCloseEvent();\n }\n };\n\n const startCloseModalAnimation = () => {\n if (!modal.value.open) {\n return;\n }\n isClosing.value = true;\n };\n\n /**\n * If the user has pressed escape, clicked outside or clicked the close icon.\n * Needs to be called from outside, following the \"dialog.close()\" pattern,\n * when the closing event is triggered outside of the \"base-modal\"\n * component (e.g. from a closing action).\n */\n const internalModalActionClose = (event?: Event) => {\n if (event) {\n event.preventDefault();\n }\n if (!props.isDismissible && props.modalRole === BentoModalRole.DIALOG) {\n return;\n }\n startCloseModalAnimation();\n };\n\n const closeModalOnClickOutside = () => {\n if (props.isDismissible) {\n internalModalActionClose();\n }\n };\n\n const modalConditionalClasses = computed(() => ({\n [`b-modal-base__container--${props.size}`]: props.size,\n 'b-modal-base__container--hide': isClosing.value,\n 'b-modal-base__container--column-layout': hasColumnLayout.value,\n 'b-modal-base__container--animation': isAnimationActive.value,\n }));\n\n watch(\n () => [props.isOpen, modal.value],\n ([newIsOpen, newModalValue], [, oldModalValue]): void => {\n if (!newModalValue) {\n return;\n }\n\n const isFirstMutation = !oldModalValue;\n if (newIsOpen) {\n openModal();\n // add the first page to the array when the modal opens\n if (!previousPages.value.length) {\n previousPages.value.push(activePage.value);\n }\n } else if (!isFirstMutation) {\n startCloseModalAnimation();\n }\n }\n );\n\n // If the first button is a loading button then close the modal have 0.5 seconds\n // if the state is changed to 'success'.\n watch(\n () => props.actions,\n () => {\n if (props.actions?.[0]?.state === 'success') {\n setTimeout(startCloseModalAnimation, LOADING_BTN_CLOSE_AFTER_SUCCESS_DELAY_TIME);\n }\n },\n { deep: true }\n );\n\n onMounted(() => {\n if (props.isOpen && modal.value) {\n openModal();\n }\n });\n\n /**\n * Expose methods through its 'ref'\n */\n defineExpose({\n internalModalActionClose,\n });\n\n // Let's Children components know they are inside a Modal (dialog element)\n provide(MODAL_DIALOG_ID_INJECTION_KEY, modalId);\n\n // Modal pagination\n const { activePage, isOpen, size } = toRefs(props);\n const animation = ref(BentoDialogPageAnimation.TRANSITION_LEVEL_DEEPER);\n\n const pages = ref<string[]>([]);\n const previousPages = ref([]);\n\n const updatePage = page => emit('update:active-page', page);\n\n // unregister page if removed / destroyed\n const unregisterPage = (pageIdToRemove: string) => () => {\n pages.value = pages.value?.filter(pageId => pageId !== pageIdToRemove);\n };\n\n // Provide data and function to register page to subcomponent\n const registerPage: BentoDialogPageRegisterPage = pageId => {\n if (pageId) {\n pages.value.push(pageId);\n }\n\n return { unregisterPage: unregisterPage(pageId) };\n };\n\n const height = ref('');\n const isAnimationActive = ref(false);\n\n provide<BentoModalConfigData>(MODAL_CONFIG_INJECTION_KEY, {\n activePage,\n height,\n isAnimationActive,\n pageCustomPadding,\n showCloseButton,\n size,\n });\n\n provide<BentoDialogPageConfigData>(DIALOG_PAGE_CONFIG_INJECTION_KEY, {\n activePage,\n animation,\n isOpen,\n pages,\n previousPages,\n updatePage,\n });\n\n provide(DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY, registerPage);\n</script>\n\n<script lang=\"ts\">\n /**\n * Dialog container. It creates a dialog HTML element for the modal to use.\n *\n * @example\n * import BaseModal from './components/base-modal/base-modal.vue';\n *\n * export default {\n * components: { BaseModal },\n * template: `\n * <base-modal\n * :hide-close-button=\"true\"\n * :is-dismissible=\"false\"\n * :is-open=\"isOpen\"\n * @close-modal=\"isOpen = false\"\n * >\n * <template #content-col-1>\n * // Content on the left side column\n * </template>\n *\n * <template #content-col-2>\n * // Content on the right side column\n * </template>\n *\n * <template v-if=\"actions\" #actions>\n * <footer-actions :actions=\"actions\" />\n * </template>\n * </base-modal>\n * `,\n * setup() {\n * const isOpen = ref(true)\n * const footerActions = [{\n * title: 'Primary action',\n * event: () => { ... }\n * }]\n * }\n * }\n */\n export default defineComponent({\n i18n: { messages },\n name: 'base-modal',\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./base-modal.scss\" />\n"],"names":["BentoModalVariant","BentoModalVariant2","BentoModalVariantMapping","BentoModalVariantMapping2","BentoModalSize","BentoModalSize2","BentoModalColumnLayoutVariant","BentoModalColumnLayoutVariant2","BentoModalRole","BentoModalRole2","BentoModalDialogType","BentoModalDialogType2","BentoModalEvent","BentoModalEvent2","MODAL_CONFIG_INJECTION_KEY","__default__$1","defineComponent","CLOSE_BUTTON_ICON_WIDTH","slots","useSlots","hasSlot","useHasSlot","page","ref","modalPageConditionalClasses","computed","props","modalContentConditionalClasses","_a","customPaddingStyles","xPadding","content","hasColumnLayout","size","computedColumnWidth","activePage","height","isAnimationActive","pageCustomPadding","showCloseButton","inject","isCurrentPage","pageElementObserver","watch","value","oldValue","nextTick","_b","observeSizeOfElement","pageHeight","onUnmounted","__default__","messages","LOADING_BTN_CLOSE_AFTER_SUCCESS_DELAY_TIME","t","useI18n","attrs","useAttrs","modal","isClosing","modalId","generateUid","computedAriaLabel","openModal","emitCloseEvent","emit","closeModalAfterAnimation","previousPages","startCloseModalAnimation","internalModalActionClose","event","closeModalOnClickOutside","modalConditionalClasses","newIsOpen","newModalValue","oldModalValue","onMounted","expose","provide","MODAL_DIALOG_ID_INJECTION_KEY","isOpen","toRefs","animation","BentoDialogPageAnimation","pages","updatePage","unregisterPage","pageIdToRemove","pageId","registerPage","DIALOG_PAGE_CONFIG_INJECTION_KEY","DIALOG_PAGE_REGISTER_PAGE_INJECTION_KEY"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"button.qOf7CXY2.js","sources":["../../../core/src/components/button/button.types.ts","../../src/components/button/button.vue"],"sourcesContent":["/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoButtonVariant {\n PRIMARY = 'primary',\n SECONDARY = 'secondary',\n TERTIARY = 'tertiary',\n TERTIARY_WITH_BACKGROUND = 'tertiary-with-background',\n}\n\nexport enum BentoButtonPropClass {\n CONDENSED = 'condensed',\n DESTRUCTIVE = 'critical',\n DISABLED = 'disabled',\n ICON_ONLY = 'icon-only',\n INVERSE = 'inverse',\n}\n\nexport interface BentoButtonProps {\n condensed?: boolean;\n critical?: boolean;\n disabled?: boolean;\n inverse?: boolean;\n variant?: BentoButtonVariant | `${BentoButtonVariant}`;\n type?: string;\n link?: object;\n}\n","<template>\n <component\n :is=\"componentType\"\n v-bind=\"componentProps\"\n class=\"b-button\"\n :class=\"{ ...conditionalClasses, ...getIconOnlyClass() }\"\n @click.capture=\"onClickButton\"\n >\n <span v-if=\"hasSlot('iconLeft')\" class=\"b-button__icon-left\" data-testid=\"icon-button-left\">\n <slot name=\"iconLeft\" />\n </span>\n <bento-typography v-if=\"hasSlot('default')\" el=\"span\" variant=\"body\" stronger class=\"b-button__label\">\n <slot />\n </bento-typography>\n <span v-if=\"hasSlot('iconRight')\" class=\"b-button__icon-right\" data-testid=\"icon-button-right\">\n <slot name=\"iconRight\" />\n </span>\n </component>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, PropType, useAttrs, useSlots } from 'vue';\n import { BentoButtonPropClass, BentoButtonVariant } from '@/core/components/button/button.types';\n import { BentoTypography } from '@/components/typography';\n import { useHasSlot } from '@/composables/use-has-slot/use-has-slot';\n import { Booleanish } from '@/types/prop-types';\n import type { RouterLinkProps } from 'vue-router/types/router';\n import type { AnchorHTMLAttributes, ButtonHTMLAttributes } from 'vue/types/jsx';\n import { BentoLink, BentoLinkVariant } from '@/components/link';\n\n // TODO: replace all this code when migrated to Vue 3 is complete as this is the only\n // current way to extend the `router-link` component in Vue 2 and Vue Router 3\n export interface LinkProps extends RouterLinkProps, AnchorHTMLAttributes {\n // eslint-disable-next-line vue/require-default-prop\n args?: { props: RouterLinkProps };\n\n /**\n * Set the rendered link to a regular external anchor link.\n */\n external: boolean;\n }\n\n const props = defineProps({\n /**\n * Reduces sizing of button\n */\n condensed: { type: Boolean, default: false },\n\n /**\n * Displays button as critical\n */\n critical: { type: Boolean, default: false },\n\n /**\n * Disables button functionality\n */\n disabled: { type: Boolean, default: false },\n\n /**\n * Sets color set to inverse\n */\n inverse: { type: Boolean, default: false },\n\n /**\n * Object containing props passed on to the BentoLink component. @see BentoLink documentation for which properties you can pass.\n */\n link: { type: Object, default: undefined },\n\n /**\n * The default behavior of the button.\n * Possible values are: 'button', 'reset', 'submit'\n */\n type: {\n type: String as PropType<ButtonHTMLAttributes['type']>,\n default: 'button',\n },\n\n /**\n * Types of flavour of Button\n * @values primary, secondary, tertiary, tertiary-with-background\n */\n variant: {\n type: String as PropType<BentoButtonVariant | `${BentoButtonVariant}`>,\n default: BentoButtonVariant.PRIMARY,\n validator: (value: BentoButtonVariant) => Object.values(BentoButtonVariant).includes(value),\n },\n });\n\n const emit = defineEmits<{\n /**\n * Emitted when the element has lost focus\n */\n (e: 'blur');\n\n /**\n * Emitted when the button is clicked\n */\n (e: 'click', event: MouseEvent);\n\n /**\n * Emitted when the element has received focus\n */\n (e: 'focus');\n\n /**\n * Emitted when the \"ESC\" key is pressed\n */\n (e: 'keydown.esc');\n }>();\n\n const attrs = useAttrs();\n const slots = useSlots();\n const hasSlot = useHasSlot(slots);\n\n const componentType = computed(() => {\n if (props?.link !== undefined) {\n return BentoLink;\n }\n return 'button';\n });\n const ariaAttributes = computed(() => ({\n 'aria-controls': attrs['aria-controls']?.toString() as string,\n 'aria-expanded': attrs['aria-expanded']?.toString() as Booleanish,\n }));\n\n const componentProps = computed(() =>\n componentType.value === 'button'\n ? {\n ...ariaAttributes.value,\n disabled: props.disabled,\n type: props.type,\n }\n : { ...props.link, disableTypography: true, variant: BentoLinkVariant.DEFAULT, isButton: true }\n );\n\n const variantClass = computed(() => ({\n [`b-button--${props.variant}${props.critical ? `-${BentoButtonPropClass.DESTRUCTIVE}` : ''}`]: true,\n }));\n\n const conditionalClasses = computed(() => ({\n ...variantClass.value,\n [`b-button--${BentoButtonPropClass.CONDENSED}`]: props.condensed,\n [`b-button--${BentoButtonPropClass.DISABLED}`]: props.disabled,\n [`b-button--${BentoButtonPropClass.INVERSE}`]: props.inverse,\n }));\n\n const getIconOnlyClass = () => ({\n [`b-button--${BentoButtonPropClass.ICON_ONLY}`]: !hasSlot('default'),\n });\n\n const onClickButton = (e: MouseEvent) => {\n if (!props.disabled) {\n emit('click', e);\n } else {\n e.preventDefault();\n e.stopPropagation();\n }\n };\n</script>\n\n<script lang=\"ts\">\n /**\n * Button component for all the various types of bento buttons.\n *\n * @example\n * import { BentoButton } from '@adyen/bento-vue2';\n * import { CheckMarkIcon } from '@adyen/ui-assets-icons-16';\n *\n * export default {\n * components: { BentoButton },\n * template: `\n * <bento-button\n * disabled\n * variant=\"secondary\"\n * >\n * <template #iconLeft>\n * <check-mark svg-title=\"checked\" />\n * </template>\n *\n * Button text\n *\n * <template #iconRight>\n * <check-mark svg-title=\"checked\" />\n * </template>\n * </bento-button>\n * `,\n * }\n */\n export default {\n name: 'bento-button',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"@/core/components/button/button.scss\" />\n"],"names":["BentoButtonVariant","BentoButtonVariant2","BentoButtonPropClass","BentoButtonPropClass2","__default__","attrs","useAttrs","slots","useSlots","hasSlot","useHasSlot","componentType","computed","props","BentoLink","ariaAttributes","_a","_b","componentProps","BentoLinkVariant","variantClass","conditionalClasses","e","emit"],"mappings":";;;;;;AAGY,IAAAA,IAAA,kBAAAC,OACRA,EAAA,UAAA,WACAA,EAAA,YAAA,aACAA,EAAA,WAAA,YACAA,EAAA,2BAAA,4BAJQA,IAAAD,KAAA,CAAA,CAAA,GAOAE,IAAA,kBAAAC,OACRA,EAAA,YAAA,aACAA,EAAA,cAAA,YACAA,EAAA,WAAA,YACAA,EAAA,YAAA,aACAA,EAAA,UAAA,WALQA,IAAAD,KAAA,CAAA,CAAA;ACkLR,MAAAE,IAAA;AAAA,EAAe,MAAA;AAEf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAhFAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,GACAC,IAAAC,EAAAH,CAAA,GAEAI,IAAAC,EAAA,OACIC,KAAA,gBAAAA,EAAA,UAAA,SACIC,IAEJ,QAAO,GAEXC,IAAAH,EAAA,MAAA;;AAAA;AAAA,QAAuC,kBAAAI,IAAAX,EAAA,eAAA,MAAA,gBAAAW,EAAA;AAAA,QACe,kBAAAC,IAAAZ,EAAA,eAAA,MAAA,gBAAAY,EAAA;AAAA,MACA;AAAA,KAAA,GAGtDC,IAAAN;AAAA,MAAuB,MAAAD,EAAA,UAAA,WAAA;AAAA,QAEb,GAAAI,EAAA;AAAA,QACsB,UAAAF,EAAA;AAAA,QACF,MAAAA,EAAA;AAAA,MACJ,IAAA,EAAA,GAAAA,EAAA,MAAA,mBAAA,IAAA,SAAAM,EAAA,SAAA,UAAA,GAAA;AAAA,IAE4E,GAGtGC,IAAAR,EAAA,OAAA;AAAA,MAAqC,CAAA,aAAAC,EAAA,OAAA,GAAAA,EAAA,WAAA,IAAAX,EAAA,WAAA,KAAA,EAAA,EAAA,GAAA;AAAA,IAC8D,EAAA,GAGnGmB,IAAAT,EAAA,OAAA;AAAA,MAA2C,GAAAQ,EAAA;AAAA,MACvB,CAAA,aAAAlB,EAAA,SAAA,EAAA,GAAAW,EAAA;AAAA,MACuC,CAAA,aAAAX,EAAA,QAAA,EAAA,GAAAW,EAAA;AAAA,MACD,CAAA,aAAAX,EAAA,OAAA,EAAA,GAAAW,EAAA;AAAA,IACD,EAAA;6LAGzD,OAAA;AAAA,MAAgC,CAAA,aAAAX,EAAA,SAAA,EAAA,GAAA,CAAAO,EAAA,SAAA;AAAA,IACuC,mBAGvE,CAAAa,MAAA;AACI,MAAAT,EAAA,YAGIS,EAAA,eAAA,GACAA,EAAA,gBAAA,KAHAC,EAAA,SAAAD,CAAA;AAAA,IAIJ;;;;;;;;;;;;;;;;;"}
|