@adyen/bento-vue3 1.60.0 → 1.60.1
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/components.d.ts +201 -0
- package/dist/@types/index.d.ts +17835 -0
- package/dist/@types/use-form-v4.d.ts +86 -0
- package/dist/accordion.js +6 -0
- package/dist/accordion.js.map +1 -0
- package/dist/action-bar.js +5 -0
- package/dist/action-bar.js.map +1 -0
- package/dist/alert.js +8 -0
- package/dist/alert.js.map +1 -0
- package/dist/assets/accordion-item.css +1 -0
- package/dist/assets/action-bar.css +1 -0
- package/dist/assets/alert.css +1 -0
- package/dist/assets/avatar.css +1 -0
- package/dist/assets/base-button.css +1 -0
- package/dist/assets/base-modal.css +1 -0
- package/dist/assets/button-actions-with-menu.css +1 -0
- package/dist/assets/button-actions.css +1 -0
- package/dist/assets/button.css +1 -0
- package/dist/assets/calendar.css +1 -0
- package/dist/assets/card.css +1 -0
- package/dist/assets/checkbox-group.css +1 -0
- package/dist/assets/checkbox-input.css +1 -0
- package/dist/assets/checkbox.css +1 -0
- package/dist/assets/chip.css +1 -0
- package/dist/assets/code-snippet.css +1 -0
- package/dist/assets/controls-group.css +1 -0
- package/dist/assets/copy.css +1 -0
- package/dist/assets/country.css +1 -0
- package/dist/assets/currency.css +1 -0
- package/dist/assets/dashboard-section.css +1 -0
- package/dist/assets/dashed-underline.css +1 -0
- package/dist/assets/data-grid-template.css +1 -0
- package/dist/assets/data-grid.css +1 -0
- package/dist/assets/date-picker.css +1 -0
- package/dist/assets/date-range-picker.css +1 -0
- package/dist/assets/date.css +1 -0
- package/dist/assets/dialog-page.css +1 -0
- package/dist/assets/divider.css +1 -0
- package/dist/assets/dropdown-default-textbox.css +1 -0
- package/dist/assets/dropdown-tag.css +1 -0
- package/dist/assets/dropdown.css +1 -0
- package/dist/assets/empty-state.css +1 -0
- package/dist/assets/error-message.css +1 -0
- package/dist/assets/file-uploader.css +1 -0
- package/dist/assets/filter-bar.css +1 -0
- package/dist/assets/fixed-scroller.css +1 -0
- package/dist/assets/focus-trap.css +1 -0
- package/dist/assets/footer-actions.css +1 -0
- package/dist/assets/form-layout-title.css +1 -0
- package/dist/assets/grid-layout.css +1 -0
- package/dist/assets/header-with-views.css +1 -0
- package/dist/assets/header.css +1 -0
- package/dist/assets/info-icon-with-popover.css +1 -0
- package/dist/assets/info-icon.css +1 -0
- package/dist/assets/input-field-password.css +1 -0
- package/dist/assets/input-field-phone-number.css +1 -0
- package/dist/assets/input-field.css +1 -0
- package/dist/assets/inspector.css +1 -0
- package/dist/assets/layout-row.css +1 -0
- package/dist/assets/link.css +1 -0
- package/dist/assets/listbox-option-tag.css +1 -0
- package/dist/assets/loading-indicator.css +1 -0
- package/dist/assets/main.css +1 -0
- package/dist/assets/menu.css +1 -0
- package/dist/assets/modal-fullscreen.css +1 -0
- package/dist/assets/pagination.css +1 -0
- package/dist/assets/payment-method.css +1 -0
- package/dist/assets/popover.css +1 -0
- package/dist/assets/popper-container.css +1 -0
- package/dist/assets/promo-banner.css +1 -0
- package/dist/assets/radio-group.css +1 -0
- package/dist/assets/radio-input.css +1 -0
- package/dist/assets/rich-text-editor.css +1 -0
- package/dist/assets/search-bar.css +1 -0
- package/dist/assets/secondary-nav.css +1 -0
- package/dist/assets/segmented-control.css +1 -0
- package/dist/assets/selection-card-group.css +1 -0
- package/dist/assets/sidepanel.css +1 -0
- package/dist/assets/status.css +1 -0
- package/dist/assets/step.css +1 -0
- package/dist/assets/structured-list-item.css +1 -0
- package/dist/assets/summary-grid.css +1 -0
- package/dist/assets/tabs.css +1 -0
- package/dist/assets/tag.css +1 -0
- package/dist/assets/teleport.css +1 -0
- package/dist/assets/textarea.css +1 -0
- package/dist/assets/timeline-item.css +1 -0
- package/dist/assets/toast.css +1 -0
- package/dist/assets/toggle-button.css +1 -0
- package/dist/assets/toggle.css +1 -0
- package/dist/assets/tooltip.css +1 -0
- package/dist/assets/tutorial.css +1 -0
- package/dist/assets/typography.css +1 -0
- package/dist/assets/use-cached-selected-values.css +1 -0
- package/dist/avatar.js +5 -0
- package/dist/avatar.js.map +1 -0
- package/dist/button.js +16 -0
- package/dist/button.js.map +1 -0
- package/dist/card.js +7 -0
- package/dist/card.js.map +1 -0
- package/dist/checkbox.js +11 -0
- package/dist/checkbox.js.map +1 -0
- package/dist/chip.js +5 -0
- package/dist/chip.js.map +1 -0
- package/dist/chunks/1-generic-use.CZhwP2Yc.js +5 -0
- package/dist/chunks/1-generic-use.CZhwP2Yc.js.map +1 -0
- package/dist/chunks/1-generic-use.R6x8PEGA.js +5 -0
- package/dist/chunks/1-generic-use.R6x8PEGA.js.map +1 -0
- package/dist/chunks/2-generic-use.CNKjB4B7.js +5 -0
- package/dist/chunks/2-generic-use.CNKjB4B7.js.map +1 -0
- package/dist/chunks/2-generic-use.w0fUhovx.js +5 -0
- package/dist/chunks/2-generic-use.w0fUhovx.js.map +1 -0
- package/dist/chunks/3-generic-use.BLEzR04g.js +5 -0
- package/dist/chunks/3-generic-use.BLEzR04g.js.map +1 -0
- package/dist/chunks/3-generic-use.D3NFHgI4.js +5 -0
- package/dist/chunks/3-generic-use.D3NFHgI4.js.map +1 -0
- package/dist/chunks/4-generic-use.CULEpvgj.js +5 -0
- package/dist/chunks/4-generic-use.CULEpvgj.js.map +1 -0
- package/dist/chunks/4-generic-use.D82y3n39.js +5 -0
- package/dist/chunks/4-generic-use.D82y3n39.js.map +1 -0
- package/dist/chunks/_commonjsHelpers.C6fGbg64.js +7 -0
- package/dist/chunks/_commonjsHelpers.C6fGbg64.js.map +1 -0
- package/dist/chunks/_plugin-vue_export-helper.CHgC5LLL.js +10 -0
- package/dist/chunks/_plugin-vue_export-helper.CHgC5LLL.js.map +1 -0
- package/dist/chunks/accordion-item.CihL7JaZ.js +142 -0
- package/dist/chunks/accordion-item.CihL7JaZ.js.map +1 -0
- package/dist/chunks/action-bar.BDF61iH-.js +203 -0
- package/dist/chunks/action-bar.BDF61iH-.js.map +1 -0
- package/dist/chunks/adding-payment-methods.BJZLPxtM.js +5 -0
- package/dist/chunks/adding-payment-methods.BJZLPxtM.js.map +1 -0
- package/dist/chunks/adding-payment-methods.Dle8zt43.js +5 -0
- package/dist/chunks/adding-payment-methods.Dle8zt43.js.map +1 -0
- package/dist/chunks/adyen-giving.Ffw_DlJK.js +5 -0
- package/dist/chunks/adyen-giving.Ffw_DlJK.js.map +1 -0
- package/dist/chunks/adyen-giving.LiKHj_jY.js +5 -0
- package/dist/chunks/adyen-giving.LiKHj_jY.js.map +1 -0
- package/dist/chunks/alert.CjegN2iG.js +169 -0
- package/dist/chunks/alert.CjegN2iG.js.map +1 -0
- package/dist/chunks/aria-label.CaUURpnB.js +13 -0
- package/dist/chunks/aria-label.CaUURpnB.js.map +1 -0
- package/dist/chunks/avatar.B0-9jC6H.js +94 -0
- package/dist/chunks/avatar.B0-9jC6H.js.map +1 -0
- package/dist/chunks/base-button.DdNFlbgH.js +115 -0
- package/dist/chunks/base-button.DdNFlbgH.js.map +1 -0
- package/dist/chunks/base-modal.D2tNbxw3.js +504 -0
- package/dist/chunks/base-modal.D2tNbxw3.js.map +1 -0
- package/dist/chunks/base-modal.keys.C2PQXcE2.js +5 -0
- package/dist/chunks/base-modal.keys.C2PQXcE2.js.map +1 -0
- package/dist/chunks/bin.CA6UQCNZ.js +37 -0
- package/dist/chunks/bin.CA6UQCNZ.js.map +1 -0
- package/dist/chunks/button-actions-with-menu.DG5t9zB7.js +174 -0
- package/dist/chunks/button-actions-with-menu.DG5t9zB7.js.map +1 -0
- package/dist/chunks/button-actions.1MReMMnL.js +264 -0
- package/dist/chunks/button-actions.1MReMMnL.js.map +1 -0
- package/dist/chunks/button.CVZJTZv0.js +120 -0
- package/dist/chunks/button.CVZJTZv0.js.map +1 -0
- package/dist/chunks/calendar.ugV5Vzqs.js +1290 -0
- package/dist/chunks/calendar.ugV5Vzqs.js.map +1 -0
- package/dist/chunks/card.dF_i6neN.js +213 -0
- package/dist/chunks/card.dF_i6neN.js.map +1 -0
- package/dist/chunks/checkbox-group.DtXPnGyr.js +192 -0
- package/dist/chunks/checkbox-group.DtXPnGyr.js.map +1 -0
- package/dist/chunks/checkbox-input.DVayucaL.js +168 -0
- package/dist/chunks/checkbox-input.DVayucaL.js.map +1 -0
- package/dist/chunks/checkbox.B-jC5L05.js +253 -0
- package/dist/chunks/checkbox.B-jC5L05.js.map +1 -0
- package/dist/chunks/checkmark-circle-fill.jicbqe7k.js +44 -0
- package/dist/chunks/checkmark-circle-fill.jicbqe7k.js.map +1 -0
- package/dist/chunks/checkmark-small.D7l69yBf.js +29 -0
- package/dist/chunks/checkmark-small.D7l69yBf.js.map +1 -0
- package/dist/chunks/chevron-left.BF63HtOH.js +52 -0
- package/dist/chunks/chevron-left.BF63HtOH.js.map +1 -0
- package/dist/chunks/chevron-up.-0oLlHmh.js +52 -0
- package/dist/chunks/chevron-up.-0oLlHmh.js.map +1 -0
- package/dist/chunks/chip.BVCzNGaI.js +71 -0
- package/dist/chunks/chip.BVCzNGaI.js.map +1 -0
- package/dist/chunks/click-outside.C1Ud8AA2.js +23 -0
- package/dist/chunks/click-outside.C1Ud8AA2.js.map +1 -0
- package/dist/chunks/code-snippet.iD36_pOw.js +334 -0
- package/dist/chunks/code-snippet.iD36_pOw.js.map +1 -0
- package/dist/chunks/codemirror.Zv80n3Z2.js +14628 -0
- package/dist/chunks/codemirror.Zv80n3Z2.js.map +1 -0
- package/dist/chunks/controls-group.BX2GxXvb.js +98 -0
- package/dist/chunks/controls-group.BX2GxXvb.js.map +1 -0
- package/dist/chunks/copy.jE0EciK8.js +156 -0
- package/dist/chunks/copy.jE0EciK8.js.map +1 -0
- package/dist/chunks/country.BhAcCmRx.js +99 -0
- package/dist/chunks/country.BhAcCmRx.js.map +1 -0
- package/dist/chunks/country.types.C0Q_hhgJ.js +269 -0
- package/dist/chunks/country.types.C0Q_hhgJ.js.map +1 -0
- package/dist/chunks/cross-circle-fill-small.mY6ihJcA.js +29 -0
- package/dist/chunks/cross-circle-fill-small.mY6ihJcA.js.map +1 -0
- package/dist/chunks/cross-circle-fill.B7YpDLTK.js +44 -0
- package/dist/chunks/cross-circle-fill.B7YpDLTK.js.map +1 -0
- package/dist/chunks/cross-small.CFrBIeYK.js +29 -0
- package/dist/chunks/cross-small.CFrBIeYK.js.map +1 -0
- package/dist/chunks/cross.CbLEjiVy.js +29 -0
- package/dist/chunks/cross.CbLEjiVy.js.map +1 -0
- package/dist/chunks/currency.DagWnTry.js +109 -0
- package/dist/chunks/currency.DagWnTry.js.map +1 -0
- package/dist/chunks/dashboard-section.Bq1abySA.js +165 -0
- package/dist/chunks/dashboard-section.Bq1abySA.js.map +1 -0
- package/dist/chunks/dashed-underline.DweJIpuJ.js +98 -0
- package/dist/chunks/dashed-underline.DweJIpuJ.js.map +1 -0
- package/dist/chunks/data-grid-template.UkERMC7S.js +143 -0
- package/dist/chunks/data-grid-template.UkERMC7S.js.map +1 -0
- package/dist/chunks/data-grid-template.keys.2_AkxuNT.js +5 -0
- package/dist/chunks/data-grid-template.keys.2_AkxuNT.js.map +1 -0
- package/dist/chunks/data-grid.o4emi6FA.js +3646 -0
- package/dist/chunks/data-grid.o4emi6FA.js.map +1 -0
- package/dist/chunks/date-input.BqBdAO1E.js +17 -0
- package/dist/chunks/date-input.BqBdAO1E.js.map +1 -0
- package/dist/chunks/date-picker.BPLtpBbX.js +315 -0
- package/dist/chunks/date-picker.BPLtpBbX.js.map +1 -0
- package/dist/chunks/date-range-picker.BYvj1y8T.js +1181 -0
- package/dist/chunks/date-range-picker.BYvj1y8T.js.map +1 -0
- package/dist/chunks/date.CKXySBQv.js +995 -0
- package/dist/chunks/date.CKXySBQv.js.map +1 -0
- package/dist/chunks/debounce.DUTu11PS.js +10 -0
- package/dist/chunks/debounce.DUTu11PS.js.map +1 -0
- package/dist/chunks/dialog-page.Cngbnn1Z.js +175 -0
- package/dist/chunks/dialog-page.Cngbnn1Z.js.map +1 -0
- package/dist/chunks/directive.Cbdox5VL.js +23 -0
- package/dist/chunks/directive.Cbdox5VL.js.map +1 -0
- package/dist/chunks/divider.qUOSAbU6.js +33 -0
- package/dist/chunks/divider.qUOSAbU6.js.map +1 -0
- package/dist/chunks/dot.BW-xtyjC.js +29 -0
- package/dist/chunks/dot.BW-xtyjC.js.map +1 -0
- package/dist/chunks/dropdown-default-textbox.BNhy-QDH.js +419 -0
- package/dist/chunks/dropdown-default-textbox.BNhy-QDH.js.map +1 -0
- package/dist/chunks/dropdown-tag.DxLOtAIw.js +202 -0
- package/dist/chunks/dropdown-tag.DxLOtAIw.js.map +1 -0
- package/dist/chunks/dropdown.FJu_m8Tw.js +936 -0
- package/dist/chunks/dropdown.FJu_m8Tw.js.map +1 -0
- package/dist/chunks/empty-state.BGWjUH6G.js +185 -0
- package/dist/chunks/empty-state.BGWjUH6G.js.map +1 -0
- package/dist/chunks/error-message.Cb9-ZwSV.js +158 -0
- package/dist/chunks/error-message.Cb9-ZwSV.js.map +1 -0
- package/dist/chunks/es6.n1ewaW31.js +11 -0
- package/dist/chunks/es6.n1ewaW31.js.map +1 -0
- package/dist/chunks/events.FNmSWp_P.js +52 -0
- package/dist/chunks/events.FNmSWp_P.js.map +1 -0
- package/dist/chunks/expand.DusW7F7p.js +33 -0
- package/dist/chunks/expand.DusW7F7p.js.map +1 -0
- package/dist/chunks/file-uploader.Bp8PDPHt.js +2280 -0
- package/dist/chunks/file-uploader.Bp8PDPHt.js.map +1 -0
- package/dist/chunks/filter-bar.BRB7BjbE.js +2976 -0
- package/dist/chunks/filter-bar.BRB7BjbE.js.map +1 -0
- package/dist/chunks/fixed-scroller.BjxA_R63.js +147 -0
- package/dist/chunks/fixed-scroller.BjxA_R63.js.map +1 -0
- package/dist/chunks/focus-trap.CljZgv9i.js +500 -0
- package/dist/chunks/focus-trap.CljZgv9i.js.map +1 -0
- package/dist/chunks/footer-actions.jRnnqdse.js +110 -0
- package/dist/chunks/footer-actions.jRnnqdse.js.map +1 -0
- package/dist/chunks/form-layout-title.CsmjzAje.js +206 -0
- package/dist/chunks/form-layout-title.CsmjzAje.js.map +1 -0
- package/dist/chunks/form-layout.types.D3EKzbE7.js +5 -0
- package/dist/chunks/form-layout.types.D3EKzbE7.js.map +1 -0
- package/dist/chunks/generate-uid.NJ8tVoha.js +32 -0
- package/dist/chunks/generate-uid.NJ8tVoha.js.map +1 -0
- package/dist/chunks/get-date-locale.BN8xEjY0.js +1735 -0
- package/dist/chunks/get-date-locale.BN8xEjY0.js.map +1 -0
- package/dist/chunks/get-slot-text.DQlZEsId.js +12 -0
- package/dist/chunks/get-slot-text.DQlZEsId.js.map +1 -0
- package/dist/chunks/grid-layout.BTLE3rac.js +114 -0
- package/dist/chunks/grid-layout.BTLE3rac.js.map +1 -0
- package/dist/chunks/header-with-views.DJSGKRhj.js +2362 -0
- package/dist/chunks/header-with-views.DJSGKRhj.js.map +1 -0
- package/dist/chunks/header.BBnN_HU9.js +253 -0
- package/dist/chunks/header.BBnN_HU9.js.map +1 -0
- package/dist/chunks/i18n.B6g5VX0q.js +3131 -0
- package/dist/chunks/i18n.B6g5VX0q.js.map +1 -0
- package/dist/chunks/image.vue_vue_type_script_setup_true_lang.DQT2oNEF.js +47 -0
- package/dist/chunks/image.vue_vue_type_script_setup_true_lang.DQT2oNEF.js.map +1 -0
- package/dist/chunks/index.BDuTpjD8.js +40 -0
- package/dist/chunks/index.BDuTpjD8.js.map +1 -0
- package/dist/chunks/index.BxBB1rsx.js +15 -0
- package/dist/chunks/index.BxBB1rsx.js.map +1 -0
- package/dist/chunks/index.CWuzEfiV.js +6 -0
- package/dist/chunks/index.CWuzEfiV.js.map +1 -0
- package/dist/chunks/index.DD7TppDb.js +10 -0
- package/dist/chunks/index.DD7TppDb.js.map +1 -0
- package/dist/chunks/index.FNUaPG4G.js +528 -0
- package/dist/chunks/index.FNUaPG4G.js.map +1 -0
- package/dist/chunks/info-icon-with-popover.D6WFtFFY.js +97 -0
- package/dist/chunks/info-icon-with-popover.D6WFtFFY.js.map +1 -0
- package/dist/chunks/info-icon.BYCwlUzk.js +45 -0
- package/dist/chunks/info-icon.BYCwlUzk.js.map +1 -0
- package/dist/chunks/info.HK3R7Drc.js +44 -0
- package/dist/chunks/info.HK3R7Drc.js.map +1 -0
- package/dist/chunks/input-field-password.CtK2VVqL.js +366 -0
- package/dist/chunks/input-field-password.CtK2VVqL.js.map +1 -0
- package/dist/chunks/input-field-phone-number.Cf5nQpfS.js +3106 -0
- package/dist/chunks/input-field-phone-number.Cf5nQpfS.js.map +1 -0
- package/dist/chunks/input-field.C94JL_Qv.js +298 -0
- package/dist/chunks/input-field.C94JL_Qv.js.map +1 -0
- package/dist/chunks/inspector.CxNXHV8C.js +200 -0
- package/dist/chunks/inspector.CxNXHV8C.js.map +1 -0
- package/dist/chunks/inspector.types.DyHwE18g.js +5 -0
- package/dist/chunks/inspector.types.DyHwE18g.js.map +1 -0
- package/dist/chunks/internal-error.BLZodVBE.js +5 -0
- package/dist/chunks/internal-error.BLZodVBE.js.map +1 -0
- package/dist/chunks/internal-error.BmrwJFpR.js +5 -0
- package/dist/chunks/internal-error.BmrwJFpR.js.map +1 -0
- package/dist/chunks/keyboard-navigation.CqgGzfZQ.js +66 -0
- package/dist/chunks/keyboard-navigation.CqgGzfZQ.js.map +1 -0
- package/dist/chunks/layout-row.CZNtHaXd.js +100 -0
- package/dist/chunks/layout-row.CZNtHaXd.js.map +1 -0
- package/dist/chunks/link.CTH1xj0i.js +116 -0
- package/dist/chunks/link.CTH1xj0i.js.map +1 -0
- package/dist/chunks/listbox-option-tag.DNBeYvNM.js +55 -0
- package/dist/chunks/listbox-option-tag.DNBeYvNM.js.map +1 -0
- package/dist/chunks/loading-indicator.DEepb9Wl.js +44 -0
- package/dist/chunks/loading-indicator.DEepb9Wl.js.map +1 -0
- package/dist/chunks/menu.BcXV6WhV.js +768 -0
- package/dist/chunks/menu.BcXV6WhV.js.map +1 -0
- package/dist/chunks/modal-fullscreen.D93NZCBg.js +270 -0
- package/dist/chunks/modal-fullscreen.D93NZCBg.js.map +1 -0
- package/dist/chunks/modal-fullscreen.keys.CMba3hYp.js +5 -0
- package/dist/chunks/modal-fullscreen.keys.CMba3hYp.js.map +1 -0
- package/dist/chunks/modal.vue_vue_type_script_setup_true_lang.B3uzibmr.js +501 -0
- package/dist/chunks/modal.vue_vue_type_script_setup_true_lang.B3uzibmr.js.map +1 -0
- package/dist/chunks/no-results-found.Bg_ZcEid.js +5 -0
- package/dist/chunks/no-results-found.Bg_ZcEid.js.map +1 -0
- package/dist/chunks/no-results-found.BqvYsBR6.js +5 -0
- package/dist/chunks/no-results-found.BqvYsBR6.js.map +1 -0
- package/dist/chunks/notifications-cleared.BMZk37uf.js +5 -0
- package/dist/chunks/notifications-cleared.BMZk37uf.js.map +1 -0
- package/dist/chunks/notifications-cleared.C7W9ZXY7.js +5 -0
- package/dist/chunks/notifications-cleared.C7W9ZXY7.js.map +1 -0
- package/dist/chunks/on-click-outside.D9aY9g8G.js +101 -0
- package/dist/chunks/on-click-outside.D9aY9g8G.js.map +1 -0
- package/dist/chunks/page-not-found.COJLPVaU.js +5 -0
- package/dist/chunks/page-not-found.COJLPVaU.js.map +1 -0
- package/dist/chunks/page-not-found.DWW6W-PZ.js +5 -0
- package/dist/chunks/page-not-found.DWW6W-PZ.js.map +1 -0
- package/dist/chunks/pagination.rrPdG7nK.js +461 -0
- package/dist/chunks/pagination.rrPdG7nK.js.map +1 -0
- package/dist/chunks/payment-method.eazefwm6.js +125 -0
- package/dist/chunks/payment-method.eazefwm6.js.map +1 -0
- package/dist/chunks/payment-method.types.BqtH7RM2.js +5 -0
- package/dist/chunks/payment-method.types.BqtH7RM2.js.map +1 -0
- package/dist/chunks/planned-maintenance.C61sWB9h.js +5 -0
- package/dist/chunks/planned-maintenance.C61sWB9h.js.map +1 -0
- package/dist/chunks/planned-maintenance.jmWYTdet.js +5 -0
- package/dist/chunks/planned-maintenance.jmWYTdet.js.map +1 -0
- package/dist/chunks/popover.KFyR9BXF.js +350 -0
- package/dist/chunks/popover.KFyR9BXF.js.map +1 -0
- package/dist/chunks/popper-container.b5h4zYgT.js +1396 -0
- package/dist/chunks/popper-container.b5h4zYgT.js.map +1 -0
- package/dist/chunks/popper-container.types.BCZMbVFD.js +9 -0
- package/dist/chunks/popper-container.types.BCZMbVFD.js.map +1 -0
- package/dist/chunks/promo-banner.BfXfaCrf.js +126 -0
- package/dist/chunks/promo-banner.BfXfaCrf.js.map +1 -0
- package/dist/chunks/radio-group.Q8q8J7WW.js +321 -0
- package/dist/chunks/radio-group.Q8q8J7WW.js.map +1 -0
- package/dist/chunks/radio-input.DKfQGxtp.js +96 -0
- package/dist/chunks/radio-input.DKfQGxtp.js.map +1 -0
- package/dist/chunks/referrals.BvtT-kQS.js +5 -0
- package/dist/chunks/referrals.BvtT-kQS.js.map +1 -0
- package/dist/chunks/referrals.aX8WZigH.js +5 -0
- package/dist/chunks/referrals.aX8WZigH.js.map +1 -0
- package/dist/chunks/refresh.C20ROVDS.js +29 -0
- package/dist/chunks/refresh.C20ROVDS.js.map +1 -0
- package/dist/chunks/resize.Bqks3WUm.js +15 -0
- package/dist/chunks/resize.Bqks3WUm.js.map +1 -0
- package/dist/chunks/rich-text-editor.Ddt7IVXL.js +6221 -0
- package/dist/chunks/rich-text-editor.Ddt7IVXL.js.map +1 -0
- package/dist/chunks/search-bar.ZidZj4NE.js +114 -0
- package/dist/chunks/search-bar.ZidZj4NE.js.map +1 -0
- package/dist/chunks/search.CW_aTqip.js +44 -0
- package/dist/chunks/search.CW_aTqip.js.map +1 -0
- package/dist/chunks/secondary-nav.Cy2JAzoO.js +138 -0
- package/dist/chunks/secondary-nav.Cy2JAzoO.js.map +1 -0
- package/dist/chunks/segmented-control.CZpx9H-d.js +144 -0
- package/dist/chunks/segmented-control.CZpx9H-d.js.map +1 -0
- package/dist/chunks/segmented-control.types.BHRLV8KU.js +5 -0
- package/dist/chunks/segmented-control.types.BHRLV8KU.js.map +1 -0
- package/dist/chunks/selection-card-group.B2EoXxux.js +474 -0
- package/dist/chunks/selection-card-group.B2EoXxux.js.map +1 -0
- package/dist/chunks/show.ByWWaogc.js +64 -0
- package/dist/chunks/show.ByWWaogc.js.map +1 -0
- package/dist/chunks/sidepanel.CNA3pTXy.js +254 -0
- package/dist/chunks/sidepanel.CNA3pTXy.js.map +1 -0
- package/dist/chunks/sidepanel.keys.R0DKQuYx.js +5 -0
- package/dist/chunks/sidepanel.keys.R0DKQuYx.js.map +1 -0
- package/dist/chunks/status.types.Bdv2zuuh.js +44 -0
- package/dist/chunks/status.types.Bdv2zuuh.js.map +1 -0
- package/dist/chunks/step.7l-t-eN9.js +264 -0
- package/dist/chunks/step.7l-t-eN9.js.map +1 -0
- package/dist/chunks/structured-list-item.CLpfMbkV.js +108 -0
- package/dist/chunks/structured-list-item.CLpfMbkV.js.map +1 -0
- package/dist/chunks/success.DhioLvPD.js +5 -0
- package/dist/chunks/success.DhioLvPD.js.map +1 -0
- package/dist/chunks/success.nNwxJRBS.js +5 -0
- package/dist/chunks/success.nNwxJRBS.js.map +1 -0
- package/dist/chunks/summary-grid.keys.CxTf_FOc.js +6 -0
- package/dist/chunks/summary-grid.keys.CxTf_FOc.js.map +1 -0
- package/dist/chunks/summary-grid.types.BcicwgZm.js +466 -0
- package/dist/chunks/summary-grid.types.BcicwgZm.js.map +1 -0
- package/dist/chunks/tabs.Bn4YIjoy.js +266 -0
- package/dist/chunks/tabs.Bn4YIjoy.js.map +1 -0
- package/dist/chunks/tabs.keys.Bc2pSKRw.js +7 -0
- package/dist/chunks/tabs.keys.Bc2pSKRw.js.map +1 -0
- package/dist/chunks/tag.DwnsmTVq.js +51 -0
- package/dist/chunks/tag.DwnsmTVq.js.map +1 -0
- package/dist/chunks/teleport.CfGWjxe2.js +129 -0
- package/dist/chunks/teleport.CfGWjxe2.js.map +1 -0
- package/dist/chunks/textarea.Dl5TFi8E.js +278 -0
- package/dist/chunks/textarea.Dl5TFi8E.js.map +1 -0
- package/dist/chunks/timeline-item.CcbL86D0.js +567 -0
- package/dist/chunks/timeline-item.CcbL86D0.js.map +1 -0
- package/dist/chunks/toast.Ae5ZoWHb.js +221 -0
- package/dist/chunks/toast.Ae5ZoWHb.js.map +1 -0
- package/dist/chunks/toggle-button.Dv1t15yj.js +80 -0
- package/dist/chunks/toggle-button.Dv1t15yj.js.map +1 -0
- package/dist/chunks/toggle.hoD_i2Ey.js +161 -0
- package/dist/chunks/toggle.hoD_i2Ey.js.map +1 -0
- package/dist/chunks/tooltip.D2o0d8Xf.js +205 -0
- package/dist/chunks/tooltip.D2o0d8Xf.js.map +1 -0
- package/dist/chunks/truncate.BfIl_-71.js +8 -0
- package/dist/chunks/truncate.BfIl_-71.js.map +1 -0
- package/dist/chunks/tutorial.vue_vue_type_script_setup_true_lang.Bcu-t4d8.js +423 -0
- package/dist/chunks/tutorial.vue_vue_type_script_setup_true_lang.Bcu-t4d8.js.map +1 -0
- package/dist/chunks/typography.DN5eC5ch.js +83 -0
- package/dist/chunks/typography.DN5eC5ch.js.map +1 -0
- package/dist/chunks/upload-files.5wQwbfkp.js +5 -0
- package/dist/chunks/upload-files.5wQwbfkp.js.map +1 -0
- package/dist/chunks/upload-files.jTQY6y2X.js +5 -0
- package/dist/chunks/upload-files.jTQY6y2X.js.map +1 -0
- package/dist/chunks/use-bento-toast-controller.D3LA1FCd.js +50 -0
- package/dist/chunks/use-bento-toast-controller.D3LA1FCd.js.map +1 -0
- package/dist/chunks/use-cached-selected-values.Ber7lUiH.js +1475 -0
- package/dist/chunks/use-cached-selected-values.Ber7lUiH.js.map +1 -0
- package/dist/chunks/use-click-outside.BnhTgpSt.js +14 -0
- package/dist/chunks/use-click-outside.BnhTgpSt.js.map +1 -0
- package/dist/chunks/use-country-items.4kZgVg_l.js +30 -0
- package/dist/chunks/use-country-items.4kZgVg_l.js.map +1 -0
- package/dist/chunks/use-country-phon-code.DVgE19zT.js +5610 -0
- package/dist/chunks/use-country-phon-code.DVgE19zT.js.map +1 -0
- package/dist/chunks/use-default-slot-validator.O02rzsob.js +16 -0
- package/dist/chunks/use-default-slot-validator.O02rzsob.js.map +1 -0
- package/dist/chunks/use-expandable-content-height.GkjjbmPy.js +17 -0
- package/dist/chunks/use-expandable-content-height.GkjjbmPy.js.map +1 -0
- package/dist/chunks/use-form-layout-loading.D3lALhtC.js +12 -0
- package/dist/chunks/use-form-layout-loading.D3lALhtC.js.map +1 -0
- package/dist/chunks/use-has-slot.B7eQSabc.js +15 -0
- package/dist/chunks/use-has-slot.B7eQSabc.js.map +1 -0
- package/dist/chunks/warning-filled.DmHh0nYG.js +29 -0
- package/dist/chunks/warning-filled.DmHh0nYG.js.map +1 -0
- package/dist/chunks/wrong-environment.BOsyKdRI.js +5 -0
- package/dist/chunks/wrong-environment.BOsyKdRI.js.map +1 -0
- package/dist/chunks/wrong-environment.BiHTPtbJ.js +5 -0
- package/dist/chunks/wrong-environment.BiHTPtbJ.js.map +1 -0
- package/dist/click-outside.js +5 -0
- package/dist/click-outside.js.map +1 -0
- package/dist/code-snippet.js +8 -0
- package/dist/code-snippet.js.map +1 -0
- package/dist/country.js +12 -0
- package/dist/country.js.map +1 -0
- package/dist/currency.js +6 -0
- package/dist/currency.js.map +1 -0
- package/dist/dashboard-template.js +6 -0
- package/dist/dashboard-template.js.map +1 -0
- package/dist/dashed-underline.js +5 -0
- package/dist/dashed-underline.js.map +1 -0
- package/dist/data-grid-template.js +5 -0
- package/dist/data-grid-template.js.map +1 -0
- package/dist/data-grid.js +11 -0
- package/dist/data-grid.js.map +1 -0
- package/dist/date-picker.js +8 -0
- package/dist/date-picker.js.map +1 -0
- package/dist/date-range-picker.js +8 -0
- package/dist/date-range-picker.js.map +1 -0
- package/dist/date.js +6 -0
- package/dist/date.js.map +1 -0
- package/dist/divider.js +5 -0
- package/dist/divider.js.map +1 -0
- package/dist/dropdown.js +16 -0
- package/dist/dropdown.js.map +1 -0
- package/dist/empty-state.js +8 -0
- package/dist/empty-state.js.map +1 -0
- package/dist/file-uploader.js +5 -0
- package/dist/file-uploader.js.map +1 -0
- package/dist/filter-bar.js +8 -0
- package/dist/filter-bar.js.map +1 -0
- package/dist/focus-trap.js +5 -0
- package/dist/focus-trap.js.map +1 -0
- package/dist/fonts/fonts.css +2 -0
- package/dist/form-layout.js +8 -0
- package/dist/form-layout.js.map +1 -0
- package/dist/header-with-views.js +5 -0
- package/dist/header-with-views.js.map +1 -0
- package/dist/header.js +5 -0
- package/dist/header.js.map +1 -0
- package/dist/image.js +7 -0
- package/dist/image.js.map +1 -0
- package/dist/index.js +371 -0
- package/dist/index.js.map +1 -0
- package/dist/info-icon.js +5 -0
- package/dist/info-icon.js.map +1 -0
- package/dist/input-field-password.js +10 -0
- package/dist/input-field-password.js.map +1 -0
- package/dist/input-field-phone-number.js +5 -0
- package/dist/input-field-phone-number.js.map +1 -0
- package/dist/input-field.js +10 -0
- package/dist/input-field.js.map +1 -0
- package/dist/inspector.js +7 -0
- package/dist/inspector.js.map +1 -0
- package/dist/internal.js +43 -0
- package/dist/internal.js.map +1 -0
- package/dist/layout.js +6 -0
- package/dist/layout.js.map +1 -0
- package/dist/link.js +6 -0
- package/dist/link.js.map +1 -0
- package/dist/loading-indicator.js +6 -0
- package/dist/loading-indicator.js.map +1 -0
- package/dist/menu.js +6 -0
- package/dist/menu.js.map +1 -0
- package/dist/modal-fullscreen.js +6 -0
- package/dist/modal-fullscreen.js.map +1 -0
- package/dist/modal.js +14 -0
- package/dist/modal.js.map +1 -0
- package/dist/pagination.js +5 -0
- package/dist/pagination.js.map +1 -0
- package/dist/payment-method.js +7 -0
- package/dist/payment-method.js.map +1 -0
- package/dist/popover.js +6 -0
- package/dist/popover.js.map +1 -0
- package/dist/popper-container.js +10 -0
- package/dist/popper-container.js.map +1 -0
- package/dist/promo-banner.js +7 -0
- package/dist/promo-banner.js.map +1 -0
- package/dist/radio-group.js +9 -0
- package/dist/radio-group.js.map +1 -0
- package/dist/rich-text-editor.js +5 -0
- package/dist/rich-text-editor.js.map +1 -0
- package/dist/search-bar.js +9 -0
- package/dist/search-bar.js.map +1 -0
- package/dist/secondary-nav.js +5 -0
- package/dist/secondary-nav.js.map +1 -0
- package/dist/segmented-control.js +7 -0
- package/dist/segmented-control.js.map +1 -0
- package/dist/selection-card.js +7 -0
- package/dist/selection-card.js.map +1 -0
- package/dist/sidepanel.js +7 -0
- package/dist/sidepanel.js.map +1 -0
- package/dist/status.js +6 -0
- package/dist/status.js.map +1 -0
- package/dist/stepper.js +8 -0
- package/dist/stepper.js.map +1 -0
- package/dist/structured-list.js +6 -0
- package/dist/structured-list.js.map +1 -0
- package/dist/styles/bento-dark.css +2055 -0
- package/dist/styles/bento-light.css +2054 -0
- package/dist/styles/bento.css +2054 -0
- package/dist/styles/legacy.css +2209 -0
- package/dist/styles/styleguide.css +2109 -0
- package/dist/styles/utility.css +987 -0
- package/dist/summary-grid.js +12 -0
- package/dist/summary-grid.js.map +1 -0
- package/dist/tabs.js +6 -0
- package/dist/tabs.js.map +1 -0
- package/dist/tag.js +6 -0
- package/dist/tag.js.map +1 -0
- package/dist/textarea.js +5 -0
- package/dist/textarea.js.map +1 -0
- package/dist/timeline.js +10 -0
- package/dist/timeline.js.map +1 -0
- package/dist/toast.js +5 -0
- package/dist/toast.js.map +1 -0
- package/dist/toggle.js +7 -0
- package/dist/toggle.js.map +1 -0
- package/dist/tutorial.js +5 -0
- package/dist/tutorial.js.map +1 -0
- package/dist/typography.js +8 -0
- package/dist/typography.js.map +1 -0
- package/dist/use-form-v4.js +8300 -0
- package/dist/use-form-v4.js.map +1 -0
- package/dist/web-types.json +49 -0
- package/package.json +5 -5
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import { defineComponent as x, toRefs as M, ref as v, provide as N, computed as I, inject as $, onUnmounted as V, withDirectives as W, createElementBlock as h, openBlock as f, renderSlot as X, createCommentVNode as C, vShow as Y, watch as O, nextTick as S, unref as Q, resolveComponent as K, createElementVNode as w, normalizeStyle as Z, normalizeClass as E, createVNode as R, withCtx as k, Fragment as ee, renderList as te, withKeys as ae, createBlock as ne, createTextVNode as D, toDisplayString as L } from "vue";
|
|
2
|
+
import { E as se, T as F, a as P } from "./tabs.keys.Bc2pSKRw.js";
|
|
3
|
+
import { _ as j } from "./_plugin-vue_export-helper.CHgC5LLL.js";
|
|
4
|
+
import { B as oe } from "./typography.DN5eC5ch.js";
|
|
5
|
+
import { g as ie } from "./generate-uid.NJ8tVoha.js";
|
|
6
|
+
import { F as re } from "./fixed-scroller.BjxA_R63.js";
|
|
7
|
+
import "../assets/tabs.css";
|
|
8
|
+
const le = x({
|
|
9
|
+
props: {
|
|
10
|
+
/**
|
|
11
|
+
* Displays a counter next to the tab title
|
|
12
|
+
*/
|
|
13
|
+
counter: {
|
|
14
|
+
type: Number,
|
|
15
|
+
default: null
|
|
16
|
+
},
|
|
17
|
+
/**
|
|
18
|
+
* Title of the tab
|
|
19
|
+
*/
|
|
20
|
+
title: {
|
|
21
|
+
type: String,
|
|
22
|
+
required: !0
|
|
23
|
+
},
|
|
24
|
+
/**
|
|
25
|
+
* Determines whether the tab is disabled
|
|
26
|
+
*/
|
|
27
|
+
disabled: {
|
|
28
|
+
type: Boolean,
|
|
29
|
+
default: !1
|
|
30
|
+
},
|
|
31
|
+
/**
|
|
32
|
+
* Displays the tab with a notification indicator
|
|
33
|
+
*/
|
|
34
|
+
withNotificationIndicator: {
|
|
35
|
+
type: Boolean,
|
|
36
|
+
default: !1
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
setup(e) {
|
|
40
|
+
const { disabled: n, withNotificationIndicator: a, counter: u } = M(e), b = v();
|
|
41
|
+
N(se, (T) => {
|
|
42
|
+
b.value = T;
|
|
43
|
+
});
|
|
44
|
+
const r = I(() => b.value ?? e.title), l = $(F), d = $(P), { id: i, unregisterTab: _ } = l({
|
|
45
|
+
disabled: n,
|
|
46
|
+
title: r,
|
|
47
|
+
withNotificationIndicator: a,
|
|
48
|
+
counter: u
|
|
49
|
+
});
|
|
50
|
+
return V(() => _()), { activeTabId: d, id: i, computedTitle: r };
|
|
51
|
+
}
|
|
52
|
+
}), de = ["id", "aria-labelledby"];
|
|
53
|
+
function ce(e, n, a, u, b, c) {
|
|
54
|
+
return W((f(), h("div", {
|
|
55
|
+
id: `${e.id}-tabpanel`,
|
|
56
|
+
class: "b-tab",
|
|
57
|
+
role: "tabpanel",
|
|
58
|
+
"aria-labelledby": e.id
|
|
59
|
+
}, [
|
|
60
|
+
e.activeTabId === e.id ? X(e.$slots, "default", { key: 0 }, void 0, !0) : C("", !0)
|
|
61
|
+
], 8, de)), [
|
|
62
|
+
[Y, e.activeTabId === e.id]
|
|
63
|
+
]);
|
|
64
|
+
}
|
|
65
|
+
const Ee = /* @__PURE__ */ j(le, [["render", ce], ["__scopeId", "data-v-4993d338"]]), z = (e, n) => {
|
|
66
|
+
const a = e === 0 ? n.length - 1 : e - 1;
|
|
67
|
+
return n[a].disabled ? z(a, n) : a;
|
|
68
|
+
}, G = (e, n) => {
|
|
69
|
+
const a = e === n.length - 1 ? 0 : e + 1;
|
|
70
|
+
return n[a].disabled ? G(a, n) : a;
|
|
71
|
+
};
|
|
72
|
+
var B = /* @__PURE__ */ ((e) => (e.ACTIVE_TAB_INDEX = "update:active-tab-index", e))(B || {});
|
|
73
|
+
const be = x({
|
|
74
|
+
components: {
|
|
75
|
+
BentoTypography: oe,
|
|
76
|
+
FixedScroller: re
|
|
77
|
+
},
|
|
78
|
+
props: {
|
|
79
|
+
/**
|
|
80
|
+
* Sets the active tab by its index (0 being the first tab item).
|
|
81
|
+
*/
|
|
82
|
+
activeTabIndex: { type: Number, default: 0 },
|
|
83
|
+
/*
|
|
84
|
+
* Renders the tab with a sticky positioning.
|
|
85
|
+
*/
|
|
86
|
+
sticky: { type: Boolean, default: !1 },
|
|
87
|
+
/**
|
|
88
|
+
* Additional configurable options for tabs rendered with a sticky positioning.
|
|
89
|
+
* It must be an object of type {@see BentoStickyTabsOption}
|
|
90
|
+
* @property {Ref<number>} stickyOptions.top - Top position the tabs should take up when rendered as sticky.
|
|
91
|
+
*/
|
|
92
|
+
stickyOptions: { type: Object, default: null }
|
|
93
|
+
},
|
|
94
|
+
emits: [B.ACTIVE_TAB_INDEX],
|
|
95
|
+
setup(e, { emit: n }) {
|
|
96
|
+
const a = v([]), u = v(null), b = v(), c = v(""), r = v(!1);
|
|
97
|
+
let l;
|
|
98
|
+
N(P, c);
|
|
99
|
+
const d = (t) => () => {
|
|
100
|
+
var s;
|
|
101
|
+
a.value = (s = a.value) == null ? void 0 : s.filter(({ id: o }) => o !== t);
|
|
102
|
+
};
|
|
103
|
+
N(F, ({ title: t, disabled: s, withNotificationIndicator: o, counter: p }) => {
|
|
104
|
+
const m = ie("b-tab");
|
|
105
|
+
return a.value.push({ disabled: s, id: m, title: t, withNotificationIndicator: o, counter: p }), { id: m, unregisterTab: d(m) };
|
|
106
|
+
});
|
|
107
|
+
const _ = (t) => {
|
|
108
|
+
if (t.code === "ArrowLeft" || t.code === "ArrowRight") {
|
|
109
|
+
const s = a.value.find((p) => document.activeElement.id === p.id);
|
|
110
|
+
let o = a.value.indexOf(s);
|
|
111
|
+
t.code === "ArrowLeft" ? o = z(o, a.value) : t.code === "ArrowRight" && (o = G(o, a.value)), u.value.children[o].focus();
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
O(
|
|
115
|
+
[() => e.activeTabIndex, a],
|
|
116
|
+
([t, s]) => {
|
|
117
|
+
S(() => {
|
|
118
|
+
var p;
|
|
119
|
+
const o = s[t];
|
|
120
|
+
c.value = o && !o.disabled ? o.id : (p = a.value.find(({ disabled: m }) => !m)) == null ? void 0 : p.id;
|
|
121
|
+
});
|
|
122
|
+
},
|
|
123
|
+
{ immediate: !0 }
|
|
124
|
+
);
|
|
125
|
+
const T = (t) => {
|
|
126
|
+
c.value = t;
|
|
127
|
+
const s = a.value.findIndex(({ id: o }) => o === c.value);
|
|
128
|
+
n(B.ACTIVE_TAB_INDEX, s);
|
|
129
|
+
}, g = (t) => t ? "disabled" : !1, y = I(() => {
|
|
130
|
+
var t;
|
|
131
|
+
return (t = e.stickyOptions) != null && t.top ? Q(e.stickyOptions.top) : 0;
|
|
132
|
+
}), J = I(() => e.sticky && y.value > 0 ? !0 : r.value), A = () => {
|
|
133
|
+
l && (l.disconnect(), l = null), r.value = !1;
|
|
134
|
+
}, U = (t) => {
|
|
135
|
+
e.sticky && y.value === 0 && (l = new IntersectionObserver(
|
|
136
|
+
([s]) => {
|
|
137
|
+
r.value = s.intersectionRatio < 1;
|
|
138
|
+
},
|
|
139
|
+
{ threshold: [1] }
|
|
140
|
+
), l.observe(t));
|
|
141
|
+
};
|
|
142
|
+
O(
|
|
143
|
+
[() => e.sticky, b, y],
|
|
144
|
+
([t, s]) => {
|
|
145
|
+
A(), t && s && S(() => U(s));
|
|
146
|
+
},
|
|
147
|
+
{ immediate: !0 }
|
|
148
|
+
), V(() => {
|
|
149
|
+
A();
|
|
150
|
+
});
|
|
151
|
+
const q = I(() => ({
|
|
152
|
+
"b-tabs__tab-list-wrapper--sticky": e.sticky,
|
|
153
|
+
"b-tabs__tab-list-wrapper--pinned": J.value
|
|
154
|
+
})), H = I(
|
|
155
|
+
() => {
|
|
156
|
+
var t;
|
|
157
|
+
return (
|
|
158
|
+
// This helps us detect when the tabs are pinned without calculations on the tabs positions because it makes the tabs intersect by 1 pixel with the element on top of it, which is getting aught by the intersection observer.
|
|
159
|
+
// Followed this example: https://css-tricks.com/how-to-detect-when-a-sticky-element-gets-pinned/
|
|
160
|
+
e.sticky ? {
|
|
161
|
+
top: `${(((t = e.stickyOptions) == null ? void 0 : t.top) ?? 0) - 1}px`
|
|
162
|
+
} : {}
|
|
163
|
+
);
|
|
164
|
+
}
|
|
165
|
+
);
|
|
166
|
+
return {
|
|
167
|
+
tabs: a,
|
|
168
|
+
tablist: u,
|
|
169
|
+
tablistwrapper: b,
|
|
170
|
+
activeTabId: c,
|
|
171
|
+
tablistWrapperConditionalClasses: q,
|
|
172
|
+
tablistWrapperStyles: H,
|
|
173
|
+
onKeydownTabsNavigation: _,
|
|
174
|
+
handleTabChange: T,
|
|
175
|
+
isDisabled: g
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
}), ue = { class: "b-tabs" }, pe = ["id", "aria-controls", "aria-selected", "tabindex", "disabled", "onClick", "onKeydown"], ve = { class: "b-tabs__tab-text" }, fe = {
|
|
179
|
+
key: 1,
|
|
180
|
+
class: "b-tabs__tab-notification-dot",
|
|
181
|
+
"aria-hidden": "true"
|
|
182
|
+
}, _e = {
|
|
183
|
+
class: "b-tabs__tab-underline",
|
|
184
|
+
"aria-hidden": "true"
|
|
185
|
+
};
|
|
186
|
+
function Te(e, n, a, u, b, c) {
|
|
187
|
+
const r = K("bento-typography"), l = K("fixed-scroller");
|
|
188
|
+
return f(), h("div", ue, [
|
|
189
|
+
w("div", {
|
|
190
|
+
ref: "tablistwrapper",
|
|
191
|
+
class: E(["b-tabs__tab-list-wrapper", e.tablistWrapperConditionalClasses]),
|
|
192
|
+
style: Z(e.tablistWrapperStyles)
|
|
193
|
+
}, [
|
|
194
|
+
R(l, {
|
|
195
|
+
condensed: "",
|
|
196
|
+
"extra-padding-top": 2
|
|
197
|
+
}, {
|
|
198
|
+
default: k(() => [
|
|
199
|
+
w("div", {
|
|
200
|
+
ref: "tablist",
|
|
201
|
+
class: "b-tabs__tab-list",
|
|
202
|
+
role: "tablist",
|
|
203
|
+
onKeydown: n[0] || (n[0] = (...d) => e.onKeydownTabsNavigation && e.onKeydownTabsNavigation(...d))
|
|
204
|
+
}, [
|
|
205
|
+
(f(!0), h(ee, null, te(e.tabs, ({ disabled: d, id: i, title: _, withNotificationIndicator: T, counter: g }) => (f(), h("button", {
|
|
206
|
+
id: i,
|
|
207
|
+
key: i,
|
|
208
|
+
role: "tab",
|
|
209
|
+
type: "button",
|
|
210
|
+
class: E(["b-tabs__tab", {
|
|
211
|
+
"b-tabs__tab--active": e.activeTabId === i,
|
|
212
|
+
"b-tabs__tab--disabled": d
|
|
213
|
+
}]),
|
|
214
|
+
"aria-controls": `${i}-tabpanel`,
|
|
215
|
+
"aria-selected": e.activeTabId === i ? "true" : "false",
|
|
216
|
+
tabindex: e.activeTabId === i && !d.value ? null : -1,
|
|
217
|
+
disabled: e.isDisabled(d),
|
|
218
|
+
onClick: (y) => e.handleTabChange(i),
|
|
219
|
+
onKeydown: ae((y) => e.handleTabChange(i), ["enter", "space"])
|
|
220
|
+
}, [
|
|
221
|
+
w("span", ve, [
|
|
222
|
+
R(r, {
|
|
223
|
+
class: "b-tabs__tab-title",
|
|
224
|
+
el: "span",
|
|
225
|
+
variant: "body",
|
|
226
|
+
stronger: ""
|
|
227
|
+
}, {
|
|
228
|
+
default: k(() => [
|
|
229
|
+
D(L(_), 1)
|
|
230
|
+
]),
|
|
231
|
+
_: 2
|
|
232
|
+
}, 1024),
|
|
233
|
+
g != null ? (f(), ne(r, {
|
|
234
|
+
key: 0,
|
|
235
|
+
class: E(["b-tabs__tab-counter", {
|
|
236
|
+
"b-tabs__tab-counter--active": e.activeTabId === i
|
|
237
|
+
}]),
|
|
238
|
+
el: "span",
|
|
239
|
+
variant: "body",
|
|
240
|
+
stronger: ""
|
|
241
|
+
}, {
|
|
242
|
+
default: k(() => [
|
|
243
|
+
D(L(g), 1)
|
|
244
|
+
]),
|
|
245
|
+
_: 2
|
|
246
|
+
}, 1032, ["class"])) : C("", !0),
|
|
247
|
+
T ? (f(), h("span", fe)) : C("", !0)
|
|
248
|
+
]),
|
|
249
|
+
W(w("span", _e, null, 512), [
|
|
250
|
+
[Y, e.activeTabId === i]
|
|
251
|
+
])
|
|
252
|
+
], 42, pe))), 128))
|
|
253
|
+
], 544)
|
|
254
|
+
]),
|
|
255
|
+
_: 1
|
|
256
|
+
})
|
|
257
|
+
], 6),
|
|
258
|
+
X(e.$slots, "default", {}, void 0, !0)
|
|
259
|
+
]);
|
|
260
|
+
}
|
|
261
|
+
const ke = /* @__PURE__ */ j(be, [["render", Te], ["__scopeId", "data-v-3a9feea5"]]);
|
|
262
|
+
export {
|
|
263
|
+
Ee as B,
|
|
264
|
+
ke as a
|
|
265
|
+
};
|
|
266
|
+
//# sourceMappingURL=tabs.Bn4YIjoy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabs.Bn4YIjoy.js","sources":["../../../vue2/src/components/tabs/components/tab.vue","../../../vue2/src/components/tabs/tabs.utils.ts","../../../vue2/src/components/tabs/tabs.types.ts","../../../vue2/src/components/tabs/tabs.vue"],"sourcesContent":["<template>\n <div v-show=\"activeTabId === id\" :id=\"`${id}-tabpanel`\" class=\"b-tab\" role=\"tabpanel\" :aria-labelledby=\"id\">\n <template v-if=\"activeTabId === id\">\n <slot />\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, inject, onUnmounted, provide, ref, toRefs } from 'vue';\n import {\n EXTERNAL_TITLE_REGISTER_ENTRY_INJECTION_KEY,\n TABS_ACTIVE_TAB_ID_KEY,\n TABS_REGISTER_TAB_INJECTION_KEY,\n } from '../tabs.keys';\n import { BentoTabsRegisterTab } from '../tabs.types';\n import { BentoTabProvidedTitle } from './tab.types';\n\n export default defineComponent({\n props: {\n /**\n * Displays a counter next to the tab title\n */\n counter: {\n type: Number,\n default: null,\n },\n /**\n * Title of the tab\n */\n title: {\n type: String,\n required: true,\n },\n /**\n * Determines whether the tab is disabled\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n /**\n * Displays the tab with a notification indicator\n */\n withNotificationIndicator: {\n type: Boolean,\n default: false,\n },\n },\n setup(props) {\n // External title injection\n const { disabled, withNotificationIndicator, counter } = toRefs(props);\n const componentTitle = ref();\n const setTitle: BentoTabProvidedTitle = (value: string) => {\n componentTitle.value = value;\n };\n provide(EXTERNAL_TITLE_REGISTER_ENTRY_INJECTION_KEY, setTitle);\n\n const computedTitle = computed(() => (componentTitle.value ?? props.title) as string);\n\n const registerTab: BentoTabsRegisterTab = inject(TABS_REGISTER_TAB_INJECTION_KEY);\n const activeTabId = inject(TABS_ACTIVE_TAB_ID_KEY);\n\n const { id, unregisterTab } = registerTab({\n disabled,\n title: computedTitle,\n withNotificationIndicator,\n counter,\n });\n\n onUnmounted(() => unregisterTab());\n\n return { activeTabId, id, computedTitle };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./tab.scss\" />\n","import { BentoTab } from './components/tab.types';\n\nexport const getPreviousTabIndex = (activeTabIndex: number, tabsValue: BentoTab[]) => {\n const newActiveTabIndex = activeTabIndex === 0 ? tabsValue.length - 1 : activeTabIndex - 1;\n if (tabsValue[newActiveTabIndex].disabled) {\n return getPreviousTabIndex(newActiveTabIndex, tabsValue);\n }\n return newActiveTabIndex;\n};\n\nexport const getNextTabIndex = (activeTabIndex: number, tabsValue: BentoTab[]) => {\n const newActiveTabIndex = activeTabIndex === tabsValue.length - 1 ? 0 : activeTabIndex + 1;\n if (tabsValue[newActiveTabIndex].disabled) {\n return getNextTabIndex(newActiveTabIndex, tabsValue);\n }\n return newActiveTabIndex;\n};\n","import type { Ref } from 'vue';\n\nexport interface BentoStickyTabsOptions {\n top?: Ref<number>;\n}\n\nexport type BentoTabsRegisterTab = (props: {\n disabled: Ref<boolean>;\n title: Ref<string>;\n withNotificationIndicator: Ref<boolean>;\n counter: Ref<number>;\n}) => { id: string; unregisterTab: () => void };\n\nexport enum BentoTabsEvent {\n ACTIVE_TAB_INDEX = 'update:active-tab-index',\n}\n","<template>\n <div class=\"b-tabs\">\n <div\n ref=\"tablistwrapper\"\n class=\"b-tabs__tab-list-wrapper\"\n :class=\"tablistWrapperConditionalClasses\"\n :style=\"tablistWrapperStyles\"\n >\n <fixed-scroller condensed :extra-padding-top=\"2\">\n <div ref=\"tablist\" class=\"b-tabs__tab-list\" role=\"tablist\" @keydown=\"onKeydownTabsNavigation\">\n <button\n v-for=\"{ disabled, id, title, withNotificationIndicator, counter } in tabs\"\n :id=\"id\"\n :key=\"id\"\n role=\"tab\"\n type=\"button\"\n class=\"b-tabs__tab\"\n :class=\"{\n 'b-tabs__tab--active': activeTabId === id,\n 'b-tabs__tab--disabled': disabled,\n }\"\n :aria-controls=\"`${id}-tabpanel`\"\n :aria-selected=\"activeTabId === id ? 'true' : 'false'\"\n :tabindex=\"activeTabId === id && !disabled.value ? null : -1\"\n :disabled=\"isDisabled(disabled)\"\n @click=\"handleTabChange(id)\"\n @keydown.enter.space=\"handleTabChange(id)\"\n >\n <span class=\"b-tabs__tab-text\">\n <bento-typography class=\"b-tabs__tab-title\" el=\"span\" variant=\"body\" stronger>\n {{ title }}\n </bento-typography>\n <bento-typography\n v-if=\"counter != null\"\n class=\"b-tabs__tab-counter\"\n el=\"span\"\n variant=\"body\"\n stronger\n :class=\"{\n 'b-tabs__tab-counter--active': activeTabId === id,\n }\"\n >\n {{ counter }}\n </bento-typography>\n <span\n v-if=\"withNotificationIndicator\"\n class=\"b-tabs__tab-notification-dot\"\n aria-hidden=\"true\"\n ></span>\n </span>\n <span v-show=\"activeTabId === id\" class=\"b-tabs__tab-underline\" aria-hidden=\"true\"></span>\n </button>\n </div>\n </fixed-scroller>\n </div>\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\">\n import { computed, defineComponent, nextTick, onUnmounted, PropType, provide, ref, Ref, unref, watch } from 'vue';\n\n // components\n import { BentoTypography } from '@/components/typography';\n import { FixedScroller } from '@/internal';\n\n // utils\n import { generateUid } from '@/core/utils/ts';\n import { getNextTabIndex, getPreviousTabIndex } from './tabs.utils';\n\n // types\n import { Booleanish } from '@/types';\n import { BentoTab } from './components/tab.types';\n import { BentoStickyTabsOptions, BentoTabsEvent, BentoTabsRegisterTab } from './tabs.types';\n\n // keys\n import { TABS_ACTIVE_TAB_ID_KEY, TABS_REGISTER_TAB_INJECTION_KEY } from './tabs.keys';\n\n /**\n * Tabs are used to navigate between different, but related content views within a page.\n * This component conforms to the official WAI-ARIA guidelines for tabs: https://www.w3.org/WAI/ARIA/apg/patterns/tabs/\n *\n * @example\n * import { BentoTabs, BentoTab } from '@adyen/bento-vue2';\n *\n * export default {\n * components: { BentoTabs, BentoTab },\n * template: `\n * <bento-tabs v-bind=\"$props\">\n * <bento-tab title=\"Maria Ahlefeldt\">\n * (16 January 1755 - 20 December 1810) was a Danish, (originally German), composer. She is known as the first female composer in Denmark.\n * </bento-tab>\n * <bento-tab title=\"Carl Andersen\">\n * (29 April 1847 - 7 May 1909) was a Danish flutist, conductor and composer born in Copenhagen, son of the flutist Christian Joachim Andersen.\n * </bento-tab>\n * <bento-tab title=\"Karl Truffel\">\n * (1 March 1981 - 7 November 1992) was a Danish dog and commander born in Berlin, son of the machinist Tom Jahoor Truffel.\n * </bento-tab>\n * <bento-tab title=\"Maria Ahlefeldt\" :disabled=\"true\">\n * (16 January 1755 - 20 December 1810) was a Danish, (originally German), composer. She is known as the first female composer in Denmark.\n * </bento-tab>\n * </bento-tabs>\n * `\n * };\n */\n\n // component\n export default defineComponent({\n components: {\n BentoTypography,\n FixedScroller,\n },\n props: {\n /**\n * Sets the active tab by its index (0 being the first tab item).\n */\n activeTabIndex: { type: Number, default: 0 },\n\n /*\n * Renders the tab with a sticky positioning.\n */\n sticky: { type: Boolean, default: false },\n\n /**\n * Additional configurable options for tabs rendered with a sticky positioning.\n * It must be an object of type {@see BentoStickyTabsOption}\n * @property {Ref<number>} stickyOptions.top - Top position the tabs should take up when rendered as sticky.\n */\n stickyOptions: { type: Object as PropType<BentoStickyTabsOptions>, default: null },\n },\n emits: [BentoTabsEvent.ACTIVE_TAB_INDEX],\n setup(props, { emit }) {\n const tabs: Ref<BentoTab[]> = ref([]);\n const tablist = ref(null);\n const tablistwrapper = ref();\n const activeTabId = ref('');\n const isPinnedByObserver = ref(false);\n let observer;\n\n provide(TABS_ACTIVE_TAB_ID_KEY, activeTabId);\n\n // unregister tab if removed / destroyed\n const unregisterTab = (tabIdToRemove: string) => () => {\n tabs.value = tabs.value?.filter(({ id }) => id !== tabIdToRemove);\n };\n\n // register tab\n const registerTab: BentoTabsRegisterTab = ({ title, disabled, withNotificationIndicator, counter }) => {\n const id = generateUid('b-tab');\n\n // add tab to tabs\n tabs.value.push({ disabled, id, title, withNotificationIndicator, counter });\n\n // return values to the Tab component\n return { id, unregisterTab: unregisterTab(id) };\n };\n\n // provide activeTab and registerTab to tab items\n provide(TABS_REGISTER_TAB_INJECTION_KEY, registerTab);\n\n // keyboard navigation\n const onKeydownTabsNavigation = (e: KeyboardEvent) => {\n if (e.code === 'ArrowLeft' || e.code === 'ArrowRight') {\n // find tab that is focussed\n const activeTab = tabs.value.find(tab => document.activeElement.id === tab.id);\n let activeTabIndex = tabs.value.indexOf(activeTab);\n\n // conditionally increase or decrease the\n if (e.code === 'ArrowLeft') {\n activeTabIndex = getPreviousTabIndex(activeTabIndex, tabs.value);\n } else if (e.code === 'ArrowRight') {\n activeTabIndex = getNextTabIndex(activeTabIndex, tabs.value);\n }\n\n // focus new active tab\n tablist.value.children[activeTabIndex].focus();\n }\n };\n\n watch(\n [() => props.activeTabIndex, tabs],\n ([index, currentTabs]) => {\n nextTick(() => {\n const tab = currentTabs[index];\n activeTabId.value =\n tab && !tab.disabled ? tab.id : tabs.value.find(({ disabled }) => !disabled)?.id;\n });\n },\n { immediate: true }\n );\n\n const handleTabChange = (tabId: string) => {\n activeTabId.value = tabId;\n const activeIndex = tabs.value.findIndex(({ id }) => id === activeTabId.value);\n emit(BentoTabsEvent.ACTIVE_TAB_INDEX, activeIndex);\n };\n\n const isDisabled = (isDisabledTab: Ref<boolean>): Booleanish =>\n (isDisabledTab ? 'disabled' : false) as Booleanish;\n\n /* == Sticky tabs logic == */\n const topOffset = computed(() => (props.stickyOptions?.top ? unref(props.stickyOptions.top) : 0));\n\n const isPinned = computed(() => {\n if (props.sticky && topOffset.value > 0) {\n return true;\n }\n return isPinnedByObserver.value;\n });\n\n const disconnectObserver = () => {\n if (observer) {\n observer.disconnect();\n observer = null;\n }\n isPinnedByObserver.value = false;\n };\n\n const setupObserver = (element: HTMLDivElement) => {\n // The observer is only needed when the tabs are sticky at the top of the screen (no top offset).\n if (props.sticky && topOffset.value === 0) {\n observer = new IntersectionObserver(\n ([e]) => {\n isPinnedByObserver.value = e.intersectionRatio < 1;\n },\n { threshold: [1] }\n );\n observer.observe(element);\n }\n };\n\n // This watcher manages the entire lifecycle of the observer.\n watch(\n [() => props.sticky, tablistwrapper, topOffset],\n ([isSticky, element]) => {\n disconnectObserver();\n if (isSticky && element) {\n nextTick(() => setupObserver(element));\n }\n },\n { immediate: true }\n );\n\n onUnmounted(() => {\n disconnectObserver();\n });\n\n const tablistWrapperConditionalClasses = computed(() => ({\n 'b-tabs__tab-list-wrapper--sticky': props.sticky,\n 'b-tabs__tab-list-wrapper--pinned': isPinned.value,\n }));\n\n const tablistWrapperStyles = computed(() =>\n // This helps us detect when the tabs are pinned without calculations on the tabs positions because it makes the tabs intersect by 1 pixel with the element on top of it, which is getting aught by the intersection observer.\n // Followed this example: https://css-tricks.com/how-to-detect-when-a-sticky-element-gets-pinned/\n props.sticky\n ? {\n top: `${(props.stickyOptions?.top ?? 0) - 1}px`,\n }\n : {}\n );\n\n return {\n tabs,\n tablist,\n tablistwrapper,\n activeTabId,\n tablistWrapperConditionalClasses,\n tablistWrapperStyles,\n onKeydownTabsNavigation,\n handleTabChange,\n isDisabled,\n };\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./tabs.scss\" />\n"],"names":["_sfc_main$1","defineComponent","props","disabled","withNotificationIndicator","counter","toRefs","componentTitle","ref","provide","EXTERNAL_TITLE_REGISTER_ENTRY_INJECTION_KEY","value","computedTitle","computed","registerTab","inject","TABS_REGISTER_TAB_INJECTION_KEY","activeTabId","TABS_ACTIVE_TAB_ID_KEY","id","unregisterTab","onUnmounted","_ctx","renderSlot","createCommentVNode","getPreviousTabIndex","activeTabIndex","tabsValue","newActiveTabIndex","getNextTabIndex","BentoTabsEvent","BentoTabsEvent2","_sfc_main","BentoTypography","FixedScroller","emit","tabs","tablist","tablistwrapper","isPinnedByObserver","observer","tabIdToRemove","_a","title","generateUid","onKeydownTabsNavigation","e","activeTab","tab","watch","index","currentTabs","nextTick","handleTabChange","tabId","activeIndex","isDisabled","isDisabledTab","topOffset","unref","isPinned","disconnectObserver","setupObserver","element","isSticky","tablistWrapperConditionalClasses","tablistWrapperStyles","_hoisted_3","openBlock","createElementBlock","_hoisted_1","createElementVNode","normalizeClass","Fragment","renderList","withKeys","$event","createVNode","_component_bento_typography","createTextVNode","toDisplayString","createBlock","_hoisted_4","vShow"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabs.keys.Bc2pSKRw.js","sources":["../../../vue2/src/components/tabs/tabs.keys.ts"],"sourcesContent":["export const TABS_REGISTER_TAB_INJECTION_KEY = Symbol('tabs registerTab injection key');\nexport const TABS_ACTIVE_TAB_ID_KEY = Symbol('tabs active tab ID key');\nexport const EXTERNAL_TITLE_REGISTER_ENTRY_INJECTION_KEY = Symbol('external title tab register entry injection key');\n"],"names":["TABS_REGISTER_TAB_INJECTION_KEY","TABS_ACTIVE_TAB_ID_KEY","EXTERNAL_TITLE_REGISTER_ENTRY_INJECTION_KEY"],"mappings":"AAAa,MAAAA,IAAkC,OAAO,gCAAgC,GACzEC,IAAyB,OAAO,wBAAwB,GACxDC,IAA8C,OAAO,iDAAiD;"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { defineComponent as m, useSlots as d, computed as l, withDirectives as f, createElementBlock as _, openBlock as v, unref as o, normalizeClass as b, createVNode as g, withCtx as h, createTextVNode as E, toDisplayString as x } from "vue";
|
|
2
|
+
import { B as C } from "./typography.DN5eC5ch.js";
|
|
3
|
+
import "./events.FNmSWp_P.js";
|
|
4
|
+
import { B as R } from "./tooltip.D2o0d8Xf.js";
|
|
5
|
+
import { u as S } from "./aria-label.CaUURpnB.js";
|
|
6
|
+
import { g as n } from "./get-slot-text.DQlZEsId.js";
|
|
7
|
+
import { _ as w } from "./_plugin-vue_export-helper.CHgC5LLL.js";
|
|
8
|
+
import "../assets/tag.css";
|
|
9
|
+
var u = /* @__PURE__ */ ((t) => (t.GREY = "grey", t.BLUE = "blue", t.GREEN = "green", t.ORANGE = "orange", t.RED = "red", t.WHITE = "white", t))(u || {});
|
|
10
|
+
const y = ["aria-label"], B = {
|
|
11
|
+
name: "bento-tag"
|
|
12
|
+
}, D = /* @__PURE__ */ m({
|
|
13
|
+
...B,
|
|
14
|
+
props: {
|
|
15
|
+
label: { default: null },
|
|
16
|
+
truncate: { default: null },
|
|
17
|
+
variant: { default: u.GREY }
|
|
18
|
+
},
|
|
19
|
+
setup(t) {
|
|
20
|
+
const e = t, r = d(), c = S({
|
|
21
|
+
label: e.label || n(r)("default"),
|
|
22
|
+
defaultFallback: "tag"
|
|
23
|
+
}), i = l(() => ({
|
|
24
|
+
[`b-tag--${e.variant}`]: e.variant
|
|
25
|
+
})), a = l(() => e.label || n(r)("default") || "tag"), s = l(() => e.truncate && a.value.length > e.truncate), p = l(() => e.truncate && s.value ? `${a.value.slice(0, e.truncate)}...` : a.value);
|
|
26
|
+
return (G, N) => f((v(), _("span", {
|
|
27
|
+
"data-testid": "tag",
|
|
28
|
+
class: b(["b-tag", i.value]),
|
|
29
|
+
"aria-label": o(c)
|
|
30
|
+
}, [
|
|
31
|
+
g(o(C), {
|
|
32
|
+
class: "b-tag__label",
|
|
33
|
+
el: "span",
|
|
34
|
+
variant: "caption",
|
|
35
|
+
stronger: ""
|
|
36
|
+
}, {
|
|
37
|
+
default: h(() => [
|
|
38
|
+
E(x(p.value), 1)
|
|
39
|
+
]),
|
|
40
|
+
_: 1
|
|
41
|
+
})
|
|
42
|
+
], 10, y)), [
|
|
43
|
+
[o(R), s.value ? a.value : null]
|
|
44
|
+
]);
|
|
45
|
+
}
|
|
46
|
+
}), $ = /* @__PURE__ */ w(D, [["__scopeId", "data-v-218b92f0"]]);
|
|
47
|
+
export {
|
|
48
|
+
$ as B,
|
|
49
|
+
u as a
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=tag.DwnsmTVq.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tag.DwnsmTVq.js","sources":["../../../core/src/components/tag/tag.types.ts","../../../vue2/src/components/tag/tag.vue"],"sourcesContent":["export interface BentoTagProps {\n /**\n * The label text content of the Tag.\n */\n label?: string;\n\n /**\n * The number of characters to limit the number of displayed characters for the tag text, truncating it with an ellipsis of three dots \"...\".\n */\n truncate?: number;\n\n /**\n * The variant variant of tag\n */\n variant?: BentoTagVariant | `${BentoTagVariant}`;\n}\n\n/**\n * @deprecated for usage with properties since version 2.0. Use the string literal instead.\n */\nexport enum BentoTagVariant {\n GREY = 'grey',\n BLUE = 'blue',\n GREEN = 'green',\n ORANGE = 'orange',\n RED = 'red',\n WHITE = 'white',\n}\n","<template>\n <span\n v-bento-tooltip-directive=\"shouldShowTooltip ? textFromSlot : null\"\n data-testid=\"tag\"\n class=\"b-tag\"\n :class=\"tagConditionalClasses\"\n :aria-label=\"computedAriaLabel\"\n >\n <bento-typography class=\"b-tag__label\" el=\"span\" variant=\"caption\" stronger>\n {{ formattedText }}\n </bento-typography>\n </span>\n</template>\n\n<script setup lang=\"ts\">\n import { computed, useSlots } from 'vue';\n // Use relative paths otherwise the interface won't be correctly detected\n // TODO: Use alias once the support is added to work with the betterDefine macro\n import { BentoTagProps, BentoTagVariant } from '../../../../core/src/components/tag/tag.types';\n import { BentoTypography } from '@/components/typography';\n import { BentoTooltipDirective as vBentoTooltipDirective } from '@/directives';\n import { useAriaLabel } from '@/utils/ts/aria-label';\n import { getSlotText } from '@/utils/ts/get-slot-text';\n\n const props = withDefaults(defineProps<BentoTagProps>(), {\n label: null,\n truncate: null,\n variant: BentoTagVariant.GREY,\n });\n\n const slots = useSlots();\n\n const computedAriaLabel = useAriaLabel({\n label: props.label || getSlotText(slots)('default'),\n defaultFallback: 'tag',\n });\n\n const tagConditionalClasses = computed(() => ({\n [`b-tag--${props.variant}`]: props.variant,\n }));\n\n const textFromSlot = computed(() => props.label || getSlotText(slots)('default') || 'tag');\n const shouldShowTooltip = computed(() => props.truncate && textFromSlot.value.length > props.truncate);\n\n const formattedText = computed(() => {\n if (!props.truncate) {\n return textFromSlot.value;\n }\n\n return shouldShowTooltip.value ? `${textFromSlot.value.slice(0, props.truncate)}...` : textFromSlot.value;\n });\n</script>\n\n<script lang=\"ts\">\n export default {\n name: 'bento-tag',\n };\n</script>\n\n<style lang=\"scss\" scoped src=\"@/core/components/tag/tag.scss\" />\n"],"names":["BentoTagVariant","BentoTagVariant2","__default__","props","__props","slots","useSlots","computedAriaLabel","useAriaLabel","getSlotText","tagConditionalClasses","computed","textFromSlot","shouldShowTooltip","formattedText"],"mappings":";;;;;;;;AAoBY,IAAAA,IAAA,kBAAAC,OACRA,EAAA,OAAA,QACAA,EAAA,OAAA,QACAA,EAAA,QAAA,SACAA,EAAA,SAAA,UACAA,EAAA,MAAA,OACAA,EAAA,QAAA,SANQA,IAAAD,KAAA,CAAA,CAAA;0BCkCRE,IAAA;AAAA,EAAe,MAAA;AAEf;;;;;;;;AAhCA,UAAAC,IAAAC,GAMAC,IAAAC,EAAA,GAEAC,IAAAC,EAAA;AAAA,MAAuC,OAAAL,EAAA,SAAAM,EAAAJ,CAAA,EAAA,SAAA;AAAA,MACe,iBAAA;AAAA,IACjC,CAAA,GAGrBK,IAAAC,EAAA,OAAA;AAAA,MAA8C,CAAA,UAAAR,EAAA,OAAA,EAAA,GAAAA,EAAA;AAAA,IACP,EAAA,GAGvCS,IAAAD,EAAA,MAAAR,EAAA,SAAAM,EAAAJ,CAAA,EAAA,SAAA,KAAA,KAAA,GACAQ,IAAAF,EAAA,MAAAR,EAAA,YAAAS,EAAA,MAAA,SAAAT,EAAA,QAAA,GAEAW,IAAAH,EAAA,MACIR,EAAA,YAIAU,EAAA,QAAA,GAAAD,EAAA,MAAA,MAAA,GAAAT,EAAA,QAAA,CAAA,QAHIS,EAAA,KAGgG;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { defineComponent as d, createElementBlock as c, createBlock as f, unref as u, openBlock as o, normalizeClass as n, renderSlot as a, Teleport as m, inject as r } from "vue";
|
|
2
|
+
import { i as l } from "./index.CWuzEfiV.js";
|
|
3
|
+
import { M as p } from "./base-modal.keys.C2PQXcE2.js";
|
|
4
|
+
import { S as v } from "./sidepanel.keys.R0DKQuYx.js";
|
|
5
|
+
import { M as g } from "./modal-fullscreen.keys.CMba3hYp.js";
|
|
6
|
+
import { _ as O } from "./_plugin-vue_export-helper.CHgC5LLL.js";
|
|
7
|
+
import "../assets/teleport.css";
|
|
8
|
+
const _ = d({
|
|
9
|
+
name: "teleport",
|
|
10
|
+
props: {
|
|
11
|
+
to: {
|
|
12
|
+
type: String,
|
|
13
|
+
default: ""
|
|
14
|
+
},
|
|
15
|
+
where: {
|
|
16
|
+
type: String,
|
|
17
|
+
default: "after"
|
|
18
|
+
},
|
|
19
|
+
disabled: Boolean
|
|
20
|
+
},
|
|
21
|
+
data: () => ({
|
|
22
|
+
childObserver: null,
|
|
23
|
+
nodes: [],
|
|
24
|
+
waiting: !1,
|
|
25
|
+
observer: null,
|
|
26
|
+
parent: null,
|
|
27
|
+
isVue2: l
|
|
28
|
+
}),
|
|
29
|
+
computed: {
|
|
30
|
+
classes() {
|
|
31
|
+
return this.disabled ? ["b-teleport"] : ["b-teleport", "b-teleport--hidden"];
|
|
32
|
+
},
|
|
33
|
+
defaultTo() {
|
|
34
|
+
if (this.to)
|
|
35
|
+
return this.to;
|
|
36
|
+
const e = r(p, "") || r(g, "") || r(v, "");
|
|
37
|
+
return e ? `#${e}` : "body";
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
watch: {
|
|
41
|
+
to: "maybeMove",
|
|
42
|
+
where: "maybeMove",
|
|
43
|
+
disabled(e) {
|
|
44
|
+
e ? (this.disable(), this.$nextTick(() => {
|
|
45
|
+
this.teardownObserver();
|
|
46
|
+
})) : (this.bootObserver(), this.move());
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
mounted() {
|
|
50
|
+
this.nodes = Array.from(this.$el.childNodes), this.disabled || this.bootObserver(), this.maybeMove();
|
|
51
|
+
},
|
|
52
|
+
beforeDestroy() {
|
|
53
|
+
this.nodes = this.getComponentChildrenNode(), this.disable(), this.teardownObserver();
|
|
54
|
+
},
|
|
55
|
+
methods: {
|
|
56
|
+
// Using a fragment is faster because it'll trigger only a single reflow
|
|
57
|
+
// See https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment
|
|
58
|
+
getFragment() {
|
|
59
|
+
const e = document.createDocumentFragment();
|
|
60
|
+
return this.nodes.forEach((t) => e.appendChild(t)), e;
|
|
61
|
+
},
|
|
62
|
+
disable() {
|
|
63
|
+
this.$el.appendChild(this.getFragment()), this.parent = null;
|
|
64
|
+
},
|
|
65
|
+
move() {
|
|
66
|
+
if (this.waiting = !1, this.parent = document.querySelector(this.defaultTo), !this.parent) {
|
|
67
|
+
this.disable(), this.waiting = !0;
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
this.where === "before" ? this.parent.prepend(this.getFragment()) : this.parent.appendChild(this.getFragment());
|
|
71
|
+
},
|
|
72
|
+
maybeMove() {
|
|
73
|
+
this.disabled || this.move();
|
|
74
|
+
},
|
|
75
|
+
onMutations(e) {
|
|
76
|
+
let t = !1;
|
|
77
|
+
for (let s = 0; s < e.length; s++) {
|
|
78
|
+
const i = e[s], h = Array.from(i.addedNodes).filter(
|
|
79
|
+
(b) => !this.nodes.includes(b)
|
|
80
|
+
);
|
|
81
|
+
Array.from(i.removedNodes).includes(this.parent) ? (this.disable(), this.waiting = !this.disabled) : this.waiting && h.length > 0 && (t = !0);
|
|
82
|
+
}
|
|
83
|
+
t && this.move();
|
|
84
|
+
},
|
|
85
|
+
bootObserver() {
|
|
86
|
+
this.observer || (this.observer = new MutationObserver((e) => this.onMutations(e)), this.observer.observe(document.body, {
|
|
87
|
+
childList: !0,
|
|
88
|
+
subtree: !0,
|
|
89
|
+
attributes: !1,
|
|
90
|
+
characterData: !1
|
|
91
|
+
}), !this.childObserver && (this.childObserver = new MutationObserver((e) => {
|
|
92
|
+
e.find((s) => s.target === this.$el) && (this.nodes.forEach((s) => s.parentNode && s.parentNode.removeChild(s)), this.nodes = this.getComponentChildrenNode(), this.maybeMove());
|
|
93
|
+
}), this.childObserver.observe(this.$el, {
|
|
94
|
+
childList: !0,
|
|
95
|
+
subtree: !1,
|
|
96
|
+
attributes: !1,
|
|
97
|
+
characterData: !1
|
|
98
|
+
})));
|
|
99
|
+
},
|
|
100
|
+
teardownObserver() {
|
|
101
|
+
this.observer && (this.observer.disconnect(), this.observer = null), this.childObserver && (this.childObserver.disconnect(), this.childObserver = null);
|
|
102
|
+
},
|
|
103
|
+
getComponentChildrenNode() {
|
|
104
|
+
return [];
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}), C = /* @__PURE__ */ d({
|
|
108
|
+
..._,
|
|
109
|
+
setup(e) {
|
|
110
|
+
return (t, s) => u(l) ? (o(), c("div", {
|
|
111
|
+
key: 0,
|
|
112
|
+
class: n(t.classes)
|
|
113
|
+
}, [
|
|
114
|
+
a(t.$slots, "default", {}, void 0, !0)
|
|
115
|
+
], 2)) : (o(), f(m, {
|
|
116
|
+
key: 1,
|
|
117
|
+
to: t.defaultTo,
|
|
118
|
+
where: t.where,
|
|
119
|
+
disabled: t.disabled,
|
|
120
|
+
class: n(t.classes)
|
|
121
|
+
}, [
|
|
122
|
+
a(t.$slots, "default", {}, void 0, !0)
|
|
123
|
+
], 8, ["to", "where", "disabled", "class"]));
|
|
124
|
+
}
|
|
125
|
+
}), D = /* @__PURE__ */ O(C, [["__scopeId", "data-v-be1595ec"]]);
|
|
126
|
+
export {
|
|
127
|
+
D as B
|
|
128
|
+
};
|
|
129
|
+
//# sourceMappingURL=teleport.CfGWjxe2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"teleport.CfGWjxe2.js","sources":["../../../vue2/src/components/internal/teleport/teleport.vue"],"sourcesContent":["<!-- Taken from: https://github.com/Mechazawa/vue2-teleport/blob/master/src/Teleport.vue -->\n<template>\n <div v-if=\"isVue2\" :class=\"classes\">\n <slot />\n </div>\n <Teleport v-else :to=\"defaultTo\" :where=\"where\" :disabled=\"disabled\" :class=\"classes\">\n <slot />\n </Teleport>\n</template>\n\n<script setup lang=\"ts\">\n import { isVue2 } from 'vue-demi';\n import { defineComponent, inject, PropType } from 'vue';\n import { MODAL_DIALOG_ID_INJECTION_KEY } from '@/components/modal/components/base-modal/base-modal.keys';\n import { SIDEPANEL_DIALOG_ID_INJECTION_KEY } from '@/components/sidepanel/sidepanel.keys';\n import { MODAL_FULLSCREEN_DIALOG_ID_INJECTION_KEY } from '@/components/modal-fullscreen/modal-fullscreen.keys';\n import type { BentoTeleportProps } from './teleport.types';\n</script>\n\n<script lang=\"ts\">\n export default defineComponent({\n name: 'teleport',\n props: {\n to: {\n type: String as PropType<BentoTeleportProps['to']>,\n default: '',\n },\n where: {\n type: String,\n default: 'after',\n },\n disabled: Boolean as PropType<BentoTeleportProps['disabled']>,\n },\n data: () => ({\n childObserver: null,\n nodes: [],\n waiting: false,\n observer: null,\n parent: null,\n isVue2,\n }),\n computed: {\n classes() {\n if (this.disabled) {\n return ['b-teleport'];\n }\n\n return ['b-teleport', 'b-teleport--hidden'];\n },\n defaultTo() {\n if (this.to) {\n return this.to;\n }\n\n const injectionKey =\n inject<string>(MODAL_DIALOG_ID_INJECTION_KEY, '') ||\n inject<string>(MODAL_FULLSCREEN_DIALOG_ID_INJECTION_KEY, '') ||\n inject<string>(SIDEPANEL_DIALOG_ID_INJECTION_KEY, '');\n\n const teleportElement = injectionKey ? `#${injectionKey}` : 'body';\n return teleportElement;\n },\n },\n watch: {\n to: 'maybeMove',\n where: 'maybeMove',\n disabled(value) {\n if (value) {\n this.disable();\n // Ensure all event done.\n this.$nextTick(() => {\n this.teardownObserver();\n });\n } else {\n this.bootObserver();\n this.move();\n }\n },\n },\n mounted() {\n // Store a reference to the nodes\n this.nodes = Array.from(this.$el.childNodes);\n\n if (!this.disabled) {\n this.bootObserver();\n }\n\n // Move slot content to target\n this.maybeMove();\n },\n beforeDestroy() {\n // Fix nodes reference\n this.nodes = this.getComponentChildrenNode();\n\n // Move back\n this.disable();\n\n // Stop observing\n this.teardownObserver();\n },\n methods: {\n // Using a fragment is faster because it'll trigger only a single reflow\n // See https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment\n getFragment(): DocumentFragment {\n const fragment = document.createDocumentFragment();\n\n this.nodes.forEach(node => fragment.appendChild(node));\n\n return fragment;\n },\n disable() {\n this.$el.appendChild(this.getFragment());\n this.parent = null;\n },\n move() {\n this.waiting = false;\n\n this.parent = document.querySelector(this.defaultTo);\n\n if (!this.parent) {\n this.disable();\n\n this.waiting = true;\n\n return;\n }\n\n if (this.where === 'before') {\n this.parent.prepend(this.getFragment());\n } else {\n this.parent.appendChild(this.getFragment());\n }\n },\n maybeMove() {\n if (!this.disabled) {\n this.move();\n }\n },\n onMutations(mutations) {\n // Makes sure the move operation is only done once\n let shouldMove = false;\n\n for (let i = 0; i < mutations.length; i++) {\n const mutation = mutations[i];\n const filteredAddedNodes = Array.from(mutation.addedNodes).filter(\n node => !this.nodes.includes(node)\n );\n\n if (Array.from(mutation.removedNodes).includes(this.parent)) {\n this.disable();\n this.waiting = !this.disabled;\n } else if (this.waiting && filteredAddedNodes.length > 0) {\n shouldMove = true;\n }\n }\n\n if (shouldMove) {\n this.move();\n }\n },\n bootObserver() {\n if (this.observer) {\n return;\n }\n\n this.observer = new MutationObserver(mutations => this.onMutations(mutations));\n\n this.observer.observe(document.body, {\n childList: true,\n subtree: true,\n attributes: false,\n characterData: false,\n });\n\n if (this.childObserver) {\n return;\n }\n // watch childNodes change\n this.childObserver = new MutationObserver(mutations => {\n const childChangeRecord = mutations.find(i => i.target === this.$el);\n if (childChangeRecord) {\n // Remove old nodes before update position.\n this.nodes.forEach(node => node.parentNode && node.parentNode.removeChild(node));\n this.nodes = this.getComponentChildrenNode();\n this.maybeMove();\n }\n });\n\n this.childObserver.observe(this.$el, {\n childList: true,\n subtree: false,\n attributes: false,\n characterData: false,\n });\n },\n teardownObserver() {\n if (this.observer) {\n this.observer.disconnect();\n this.observer = null;\n }\n if (this.childObserver) {\n this.childObserver.disconnect();\n this.childObserver = null;\n }\n },\n getComponentChildrenNode() {\n // Vue3\n if (!isVue2) {\n return [];\n }\n\n // Trick for Vue3 type checking\n return (this as any).$vnode.componentOptions.children.map(i => i.elm).filter(i => i);\n },\n },\n });\n</script>\n\n<style lang=\"scss\" scoped src=\"./teleport.scss\" />\n"],"names":["__default__","defineComponent","isVue2","injectionKey","inject","MODAL_DIALOG_ID_INJECTION_KEY","MODAL_FULLSCREEN_DIALOG_ID_INJECTION_KEY","SIDEPANEL_DIALOG_ID_INJECTION_KEY","value","fragment","node","mutations","shouldMove","i","mutation","filteredAddedNodes"],"mappings":"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"}
|