@vc-shell/framework 1.1.99-alpha.1 → 1.2.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/core/api/platform.ts +9883 -9883
- package/core/composables/useDynamicProperties/index.ts +16 -10
- package/core/composables/useNotifications/index.ts +1 -32
- package/core/composables/useSettings/index.ts +3 -8
- package/core/composables/useUser/index.ts +171 -74
- package/core/composables/useUserManagement/index.ts +25 -67
- package/core/interceptors/index.ts +56 -19
- package/core/plugins/signalR/index.ts +1 -27
- package/core/types/index.ts +0 -2
- package/dist/core/api/platform.d.ts +1 -1
- package/dist/core/api/platform.d.ts.map +1 -1
- package/dist/core/composables/useDynamicProperties/index.d.ts.map +1 -1
- package/dist/core/composables/useNotifications/index.d.ts.map +1 -1
- package/dist/core/composables/useSettings/index.d.ts.map +1 -1
- package/dist/core/composables/useUser/index.d.ts +9 -18
- package/dist/core/composables/useUser/index.d.ts.map +1 -1
- package/dist/core/composables/useUserManagement/index.d.ts +7 -7
- package/dist/core/composables/useUserManagement/index.d.ts.map +1 -1
- package/dist/core/interceptors/index.d.ts +1 -2
- package/dist/core/interceptors/index.d.ts.map +1 -1
- package/dist/core/plugins/signalR/index.d.ts +0 -2
- package/dist/core/plugins/signalR/index.d.ts.map +1 -1
- package/dist/core/types/index.d.ts +1 -1
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/index.d.ts +0 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/injection-keys.d.ts +1 -2
- package/dist/injection-keys.d.ts.map +1 -1
- package/dist/shared/components/app-switcher/composables/useAppSwitcher/index.d.ts.map +1 -1
- package/dist/shared/components/multilanguage-selector/multilanguage-selector.vue.d.ts +1 -1
- package/dist/shared/components/notifications/components/notification-container/index.d.ts +10 -10
- package/dist/shared/components/notifications/components/notification-container/index.d.ts.map +1 -1
- package/dist/shared/components/sign-in/useExternalProvider.d.ts +1 -1
- package/dist/shared/components/sign-in/useExternalProvider.d.ts.map +1 -1
- package/dist/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts +2 -2
- package/dist/shared/modules/dynamic/helpers/nodeBuilder.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts +2 -2
- package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts +2 -2
- package/dist/shared/pages/InvitePage/components/invite/Invite.vue.d.ts +1 -1
- package/dist/shared/pages/InvitePage/components/invite/Invite.vue.d.ts.map +1 -1
- package/dist/shared/pages/ResetPasswordPage/components/reset-password/ResetPassword.vue.d.ts +1 -1
- package/dist/shared/pages/ResetPasswordPage/components/reset-password/ResetPassword.vue.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/components/atoms/vc-badge/vc-badge.vue.d.ts +1 -1
- package/dist/ui/components/atoms/vc-badge/vc-badge.vue.d.ts.map +1 -1
- package/dist/ui/components/atoms/vc-container/vc-container.vue.d.ts +2 -2
- package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts +1 -1
- package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts.map +1 -1
- package/dist/ui/components/atoms/vc-progress/vc-progress.vue.d.ts +1 -1
- package/dist/ui/components/atoms/vc-progress/vc-progress.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/index.d.ts +1 -0
- package/dist/ui/components/molecules/index.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-accordion/_internal/vc-accordion-item/vc-accordion-item.vue.d.ts +34 -0
- package/dist/ui/components/molecules/vc-accordion/_internal/vc-accordion-item/vc-accordion-item.vue.d.ts.map +1 -0
- package/dist/ui/components/molecules/vc-accordion/index.d.ts +7 -0
- package/dist/ui/components/molecules/vc-accordion/index.d.ts.map +1 -0
- package/dist/ui/components/molecules/vc-accordion/vc-accordion.vue.d.ts +42 -0
- package/dist/ui/components/molecules/vc-accordion/vc-accordion.vue.d.ts.map +1 -0
- package/dist/ui/components/molecules/vc-editor/_internal/vc-editor-button.vue.d.ts +1 -1
- package/dist/ui/components/molecules/vc-file-upload/vc-file-upload.vue.d.ts +2 -2
- package/dist/ui/components/molecules/vc-file-upload/vc-file-upload.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts +1 -1
- package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.vue.d.ts +1 -1
- package/dist/ui/components/molecules/vc-rating/vc-rating.vue.d.ts +1 -1
- package/dist/ui/components/molecules/vc-rating/vc-rating.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-base-button.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-circle-button.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/_internal/vc-blade-toolbar-button/vc-blade-toolbar-circle-button.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/vc-blade.backupsb.d.ts +3 -3
- package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts +2 -2
- package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts +5 -5
- package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-popup/vc-popup.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-popup/vc-popup.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-table/_internal/vc-table-counter/vc-table-counter.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-table/_internal/vc-table-counter/vc-table-counter.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-body/vc-table-body.vue.d.ts +2 -2
- package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/_internal/vc-table-row/vc-table-row.vue.d.ts +2 -2
- package/dist/ui/components/organisms/vc-table/_internal/vc-table-desktop-view/vc-table-desktop-view.vue.d.ts +3 -3
- package/dist/ui/components/organisms/vc-table/vc-table.vue.d.ts +1 -1
- package/package.json +5 -7
- package/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue +2 -2
- package/shared/components/app-switcher/composables/useAppSwitcher/index.ts +1 -15
- package/shared/components/sign-in/useExternalProvider.ts +1 -11
- package/shared/modules/dynamic/helpers/nodeBuilder.ts +3 -11
- package/ui/components/atoms/vc-badge/vc-badge.stories.ts +1 -1
- package/ui/components/atoms/vc-button/vc-button.stories.ts +1 -1
- package/ui/components/atoms/vc-card/vc-card.stories.ts +1 -1
- package/ui/components/atoms/vc-col/vc-col.stories.ts +1 -1
- package/ui/components/atoms/vc-container/vc-container.stories.ts +1 -1
- package/ui/components/atoms/vc-hint/vc-hint.stories.ts +1 -1
- package/ui/components/atoms/vc-icon/vc-icon.stories.ts +1 -1
- package/ui/components/atoms/vc-image/vc-image.stories.ts +1 -1
- package/ui/components/atoms/vc-label/vc-label.stories.ts +1 -1
- package/ui/components/atoms/vc-link/vc-link.stories.ts +1 -1
- package/ui/components/atoms/vc-progress/vc-progress.stories.ts +1 -1
- package/ui/components/atoms/vc-row/vc-row.stories.ts +1 -1
- package/ui/components/atoms/vc-skeleton/vc-skeleton.stories.ts +1 -1
- package/ui/components/atoms/vc-status/vc-status.stories.ts +1 -1
- package/ui/components/atoms/vc-status-icon/vc-status-icon.stories.ts +1 -1
- package/ui/components/atoms/vc-tooltip/vc-tooltip.stories.ts +1 -1
- package/ui/components/atoms/vc-video/vc-video.stories.ts +1 -1
- package/ui/components/atoms/vc-widget/vc-widget.stories.ts +1 -1
- package/ui/components/molecules/index.ts +1 -0
- package/ui/components/molecules/vc-accordion/_internal/vc-accordion-item/vc-accordion-item.vue +251 -0
- package/ui/components/molecules/vc-accordion/index.ts +11 -0
- package/ui/components/molecules/vc-accordion/vc-accordion.stories.ts +526 -0
- package/ui/components/molecules/vc-accordion/vc-accordion.vue +176 -0
- package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.ts +1 -1
- package/ui/components/molecules/vc-checkbox/vc-checkbox.stories.ts +1 -1
- package/ui/components/molecules/vc-editor/vc-editor.stories.ts +1 -1
- package/ui/components/molecules/vc-field/vc-field.stories.ts +1 -1
- package/ui/components/molecules/vc-file-upload/vc-file-upload.stories.ts +1 -1
- package/ui/components/molecules/vc-form/vc-form.stories.ts +1 -1
- package/ui/components/molecules/vc-input/vc-input.stories.ts +1 -1
- package/ui/components/molecules/vc-input-currency/vc-input-currency.stories.ts +1 -1
- package/ui/components/molecules/vc-input-dropdown/vc-input-dropdown.stories.ts +1 -1
- package/ui/components/molecules/vc-multivalue/vc-multivalue.stories.ts +1 -1
- package/ui/components/molecules/vc-pagination/vc-pagination.stories.ts +1 -1
- package/ui/components/molecules/vc-radio-button/vc-radio-button.stories.ts +1 -1
- package/ui/components/molecules/vc-rating/vc-rating.stories.ts +1 -1
- package/ui/components/molecules/vc-select/vc-select.stories.ts +1 -1
- package/ui/components/molecules/vc-slider/vc-slider.stories.ts +1 -1
- package/ui/components/molecules/vc-switch/vc-switch.stories.ts +1 -1
- package/ui/components/molecules/vc-textarea/vc-textarea.stories.ts +1 -1
- package/ui/components/molecules/vc-toast/vc-toast.stories.ts +1 -1
- package/ui/components/organisms/vc-app/vc-app.vue +2 -20
- package/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue +4 -0
- package/ui/components/organisms/vc-gallery/vc-gallery.stories.ts +1 -1
- package/ui/components/organisms/vc-popup/vc-popup.stories.ts +1 -1
- package/core/providers/README.md +0 -176
- package/core/providers/auth-provider-manager.ts +0 -74
- package/core/providers/auth-provider-utils.ts +0 -26
- package/core/providers/example-custom-auth-provider.ts +0 -162
- package/core/providers/index.ts +0 -3
- package/core/providers/platform-auth-provider.ts +0 -207
- package/core/types/auth-provider.ts +0 -40
- package/dist/assets/042c75b764bc78a7.svg +0 -1
- package/dist/assets/0ba156439a339f2a.svg +0 -1
- package/dist/assets/0be560bfb22d0e72.woff2 +0 -0
- package/dist/assets/0f590f8a94577092.svg +0 -1
- package/dist/assets/0fc5820f8be53a1b.svg +0 -1
- package/dist/assets/105efd028edc1dfe.woff +0 -0
- package/dist/assets/10768e2cc79fc60b.svg +0 -1
- package/dist/assets/11b3d25a56fd9a21.woff2 +0 -0
- package/dist/assets/154365acf3010d96.woff2 +0 -0
- package/dist/assets/157b8721e0600ea8.svg +0 -1
- package/dist/assets/15e91cdd649cde9a.svg +0 -1
- package/dist/assets/19275e398ae57130.woff2 +0 -0
- package/dist/assets/1a3e84b2457f709a.woff +0 -0
- package/dist/assets/1de63eb118636cce.svg +0 -1
- package/dist/assets/1ea01de36eb5491b.svg +0 -1
- package/dist/assets/204eaf512fde2023.svg +0 -1
- package/dist/assets/2088983edf42e153.svg +0 -1
- package/dist/assets/208f810a9321a327.svg +0 -1
- package/dist/assets/21220a9d10e6c558.svg +0 -1
- package/dist/assets/220db345a102045d.woff2 +0 -0
- package/dist/assets/225da11d23968333.svg +0 -1
- package/dist/assets/226f862dd81bdc13.woff2 +0 -0
- package/dist/assets/23a2d53395ddb14f.woff +0 -0
- package/dist/assets/259e6ad461a52ad7.svg +0 -1
- package/dist/assets/261e6dec4d53b9ac.woff +0 -0
- package/dist/assets/262f46a0b6d94bb6.svg +0 -1
- package/dist/assets/2857c513073467da.svg +0 -1
- package/dist/assets/2b3be7889467d98f.woff +0 -0
- package/dist/assets/2d4e6190eec72737.svg +0 -1
- package/dist/assets/2eba973185078bc8.woff +0 -0
- package/dist/assets/334d3f6bc766c516.woff +0 -0
- package/dist/assets/34ff7dd0c2285956.svg +0 -1
- package/dist/assets/3d26b7c1ab78bbe2.woff +0 -0
- package/dist/assets/3d892965ab4f1cbb.woff2 +0 -0
- package/dist/assets/3f8c4cc8099e34b6.woff2 +0 -0
- package/dist/assets/40a0e53b79ce63c6.woff2 +0 -0
- package/dist/assets/41275bcb979cb650.svg +0 -1
- package/dist/assets/434f7982590e462f.woff +0 -0
- package/dist/assets/475937116ee3314a.woff2 +0 -0
- package/dist/assets/489710fb710e73f0.woff +0 -0
- package/dist/assets/49791943b3872376.woff2 +0 -0
- package/dist/assets/4ae5f23e0ca888e7.woff2 +0 -0
- package/dist/assets/4d7a77b0e5373992.svg +0 -1
- package/dist/assets/4e43c74354534fb3.svg +0 -1
- package/dist/assets/4fe75f5117100705.svg +0 -1
- package/dist/assets/52e261a005074e1b.woff +0 -0
- package/dist/assets/5304c3d05a5f9789.woff2 +0 -0
- package/dist/assets/54cda5482c6c9218.woff +0 -0
- package/dist/assets/550f52072e8ccafe.woff2 +0 -0
- package/dist/assets/572bb1bb4156a9c1.svg +0 -1
- package/dist/assets/6075995d7e74da46.woff2 +0 -0
- package/dist/assets/617c4736236e199e.woff +0 -0
- package/dist/assets/67230f05dc94a265.svg +0 -1
- package/dist/assets/6798e4dd4add9b48.svg +0 -1
- package/dist/assets/686d4077c1e26876.woff2 +0 -0
- package/dist/assets/698ec6c722d4cb05.woff2 +0 -0
- package/dist/assets/6a3e73faf406cf33.svg +0 -1
- package/dist/assets/72de3a63bc0b70dd.svg +0 -1
- package/dist/assets/74c6a6ab81bb6340.woff2 +0 -0
- package/dist/assets/74ed5f8a78e71106.svg +0 -1
- package/dist/assets/7a5aa5abd625137f.ttf +0 -0
- package/dist/assets/7ce0c166fd6a1204.woff +0 -0
- package/dist/assets/7d55399c2a7bc985.svg +0 -1
- package/dist/assets/7d970675c69fca1d.woff +0 -0
- package/dist/assets/7eda727273fd98d3.svg +0 -1
- package/dist/assets/7f6ebfd707b76ca2.woff +0 -0
- package/dist/assets/7fa898d213fcc7bc.woff2 +0 -0
- package/dist/assets/861e6b7192b3b6c7.woff +0 -0
- package/dist/assets/8bbcde81ba21ecb2.woff2 +0 -0
- package/dist/assets/8f6657e5e0b8d3e4.woff +0 -0
- package/dist/assets/910b0d99b9e26568.svg +0 -1
- package/dist/assets/91fe94e424323d61.woff +0 -0
- package/dist/assets/92508f8707159b51.svg +0 -1
- package/dist/assets/9392bf1d591e1abb.svg +0 -1
- package/dist/assets/97e8d4984ba0713a.woff2 +0 -0
- package/dist/assets/9cb83236f6bb7ab1.svg +0 -1
- package/dist/assets/9d37314695c0b68d.woff +0 -0
- package/dist/assets/a03cdcd8da5bb987.woff +0 -0
- package/dist/assets/a18404194e3f9047.svg +0 -1
- package/dist/assets/a2017fe7f0a26510.svg +0 -1
- package/dist/assets/ab6e7190bb1492d5.woff2 +0 -0
- package/dist/assets/abf88f301a0730f4.svg +0 -1
- package/dist/assets/ac1a99b3d05d8232.woff +0 -0
- package/dist/assets/aed17cb6fdad2ada.woff2 +0 -0
- package/dist/assets/b1a596e31ad1185a.svg +0 -1
- package/dist/assets/b27767411c8427be.woff +0 -0
- package/dist/assets/b325adcae33bbe7a.svg +0 -1
- package/dist/assets/b372390551ca2fa1.svg +0 -1
- package/dist/assets/b5bb1e8fc975decd.svg +0 -1
- package/dist/assets/b645a4a2181b9dc1.svg +0 -1
- package/dist/assets/b6499ddce0a4ef7d.svg +0 -1
- package/dist/assets/b94421fadd23b0f2.svg +0 -1
- package/dist/assets/bb28fb0f27f1c11b.svg +0 -1
- package/dist/assets/c9191b638a10f67b.woff2 +0 -0
- package/dist/assets/ca791c5ca5848a03.svg +0 -1
- package/dist/assets/cb32840ce330103f.woff +0 -0
- package/dist/assets/ccc878931d74181b.woff2 +0 -0
- package/dist/assets/d084bda16abe8a56.svg +0 -1
- package/dist/assets/d32b129cae2fffd6.svg +0 -1
- package/dist/assets/d35a4c7113315758.woff2 +0 -0
- package/dist/assets/d3f792f54ae4c307.svg +0 -1
- package/dist/assets/d5a5b8630120073d.svg +0 -1
- package/dist/assets/d5f9664ebbfb104b.svg +0 -1
- package/dist/assets/d84247b59449dd88.woff2 +0 -0
- package/dist/assets/dceaf3b39091e6a4.woff +0 -0
- package/dist/assets/dd05d43ff0df2fc7.svg +0 -1
- package/dist/assets/e2ad5b3428289141.woff +0 -0
- package/dist/assets/e38acaa1757232e0.svg +0 -1
- package/dist/assets/e4a8550f1c7ffe36.svg +0 -1
- package/dist/assets/e5adb5ae3a3698f6.svg +0 -1
- package/dist/assets/e61a1889bac955f4.woff2 +0 -0
- package/dist/assets/e72bb11356af94c7.svg +0 -1
- package/dist/assets/e98196a9f8dcb2f0.svg +0 -1
- package/dist/assets/ebec912a42ad49ff.woff +0 -0
- package/dist/assets/ee6983981ffcbb41.woff2 +0 -0
- package/dist/assets/f09d89268e4c0317.svg +0 -1
- package/dist/assets/f239394367fcf005.woff2 +0 -0
- package/dist/assets/f5722262b6e7214e.woff2 +0 -0
- package/dist/assets/f7fc8bf46089d8b2.svg +0 -1
- package/dist/assets/fc829e3f399b70e0.woff2 +0 -0
- package/dist/assets/fe141d99763f5d2b.woff +0 -0
- package/dist/assets/fed13b0d59903483.svg +0 -1
- package/dist/assets/fed757d2c2344ead.woff2 +0 -0
- package/dist/assets/ffc438f20e79ce73.woff +0 -0
- package/dist/core/providers/auth-provider-manager.d.ts +0 -34
- package/dist/core/providers/auth-provider-manager.d.ts.map +0 -1
- package/dist/core/providers/auth-provider-utils.d.ts +0 -17
- package/dist/core/providers/auth-provider-utils.d.ts.map +0 -1
- package/dist/core/providers/example-custom-auth-provider.d.ts +0 -45
- package/dist/core/providers/example-custom-auth-provider.d.ts.map +0 -1
- package/dist/core/providers/index.d.ts +0 -3
- package/dist/core/providers/index.d.ts.map +0 -1
- package/dist/core/providers/platform-auth-provider.d.ts +0 -34
- package/dist/core/providers/platform-auth-provider.d.ts.map +0 -1
- package/dist/core/types/auth-provider.d.ts +0 -27
- package/dist/core/types/auth-provider.d.ts.map +0 -1
- package/dist/framework.js +0 -25048
- package/dist/index.css +0 -9
- package/dist/vendor-boolbase-A_-Pp38P.js +0 -23
- package/dist/vendor-cheerio-C46iBpCu.js +0 -1053
- package/dist/vendor-cheerio-select-C8emRZsx.js +0 -191
- package/dist/vendor-core-js-DDuR6YMQ.js +0 -1206
- package/dist/vendor-css-select-DR9bp36p.js +0 -622
- package/dist/vendor-css-what-CZZaquJM.js +0 -267
- package/dist/vendor-cypress-signalr-mock-DjBxJHA6.js +0 -769
- package/dist/vendor-date-fns-sZ1zMzTH.js +0 -3008
- package/dist/vendor-dom-serializer-Sk3xHhQk.js +0 -213
- package/dist/vendor-domelementtype-B3sFIGaC.js +0 -21
- package/dist/vendor-domhandler-CL40eeX9.js +0 -311
- package/dist/vendor-dompurify-BuxjWxA2.js +0 -553
- package/dist/vendor-domutils-BiVCXO8c.js +0 -386
- package/dist/vendor-entities-CCReaWqU.js +0 -364
- package/dist/vendor-floating-ui-core-Cl9nBI4j.js +0 -349
- package/dist/vendor-floating-ui-dom-3z44E4mf.js +0 -395
- package/dist/vendor-floating-ui-utils-D2sT7feD.js +0 -259
- package/dist/vendor-floating-ui-vue-ClrgkeO5.js +0 -107
- package/dist/vendor-headlessui-vue-D7tzx4PC.js +0 -961
- package/dist/vendor-htmlparser2-CpQu33io.js +0 -735
- package/dist/vendor-intlify-core-base-Da62SG4M.js +0 -1130
- package/dist/vendor-intlify-message-compiler-CHvGSH2u.js +0 -952
- package/dist/vendor-intlify-shared-jWBPd9WB.js +0 -144
- package/dist/vendor-iso-639-1-BJO6WZAt.js +0 -781
- package/dist/vendor-linkify-it-LzoUhj6C.js +0 -199
- package/dist/vendor-linkifyjs-dCH9UYes.js +0 -701
- package/dist/vendor-lodash-es-BqkGj3Jl.js +0 -4816
- package/dist/vendor-lucide-vue-next-m0L4DzUL.js +0 -29780
- package/dist/vendor-markdown-it-Czg9qJTh.js +0 -2263
- package/dist/vendor-markdown-it-task-lists-BxLwscWK.js +0 -69
- package/dist/vendor-mdurl-DZFDNdqC.js +0 -192
- package/dist/vendor-microsoft-applicationinsights-analytics-js-C1Yxuzwg.js +0 -1207
- package/dist/vendor-microsoft-applicationinsights-cfgsync-js-DArHD4Dn.js +0 -261
- package/dist/vendor-microsoft-applicationinsights-channel-js-Dbs0XRes.js +0 -1822
- package/dist/vendor-microsoft-applicationinsights-common-OjU3Zs6r.js +0 -1921
- package/dist/vendor-microsoft-applicationinsights-core-js-DWRvqBek.js +0 -4276
- package/dist/vendor-microsoft-applicationinsights-dependencies-js-BxTNw-Sk.js +0 -1407
- package/dist/vendor-microsoft-applicationinsights-properties-js-Gfhpu-At.js +0 -572
- package/dist/vendor-microsoft-applicationinsights-shims-CxtPYiwp.js +0 -43
- package/dist/vendor-microsoft-applicationinsights-web-9yeJ0EZv.js +0 -487
- package/dist/vendor-microsoft-dynamicproto-js-DSkQkH3T.js +0 -147
- package/dist/vendor-microsoft-signalr-Bgpbb4fW.js +0 -1761
- package/dist/vendor-moment-DMLRxgRE.js +0 -2589
- package/dist/vendor-nevware21-ts-async-CdMc_sGt.js +0 -261
- package/dist/vendor-nevware21-ts-utils-Dy41wRhA.js +0 -853
- package/dist/vendor-nth-check-CS1D-zr5.js +0 -45
- package/dist/vendor-orderedmap-B3SOk52B.js +0 -103
- package/dist/vendor-parse5-htmlparser2-tree-adapter-BWywtwol.js +0 -143
- package/dist/vendor-parse5-zq5Hn0y9.js +0 -5749
- package/dist/vendor-prettier-cZc5sCiS.js +0 -4875
- package/dist/vendor-prosemirror-commands-Cu1q5ZDk.js +0 -385
- package/dist/vendor-prosemirror-dropcursor-BuGmFgFS.js +0 -86
- package/dist/vendor-prosemirror-gapcursor-CyYcCWVK.js +0 -203
- package/dist/vendor-prosemirror-history-DzRcbrCw.js +0 -248
- package/dist/vendor-prosemirror-keymap-KfbdOEJw.js +0 -62
- package/dist/vendor-prosemirror-markdown-OyxRuawK.js +0 -650
- package/dist/vendor-prosemirror-model-DFp4ML7B.js +0 -2730
- package/dist/vendor-prosemirror-schema-list-CwCUArvx.js +0 -87
- package/dist/vendor-prosemirror-state-DHaVEu5h.js +0 -821
- package/dist/vendor-prosemirror-tables-mYok4vGT.js +0 -1711
- package/dist/vendor-prosemirror-transform-CAHmg-qG.js +0 -1508
- package/dist/vendor-prosemirror-view-CspJa44O.js +0 -3751
- package/dist/vendor-punycode-js-CgGegfA_.js +0 -133
- package/dist/vendor-rope-sequence-BWC2FSrq.js +0 -100
- package/dist/vendor-semver-Dar8oU3V.js +0 -1023
- package/dist/vendor-swiper-1bp0oJwt.js +0 -3387
- package/dist/vendor-tanstack-virtual-core-l0sNRNKZ.js +0 -1
- package/dist/vendor-tanstack-vue-virtual-CD9yLWd7.js +0 -1
- package/dist/vendor-tiptap-core-ClsTgaMv.js +0 -3699
- package/dist/vendor-tiptap-extension-blockquote-r1MBx4hD.js +0 -54
- package/dist/vendor-tiptap-extension-bold-BjLI4i8b.js +0 -74
- package/dist/vendor-tiptap-extension-code-D5-kDnMW.js +0 -52
- package/dist/vendor-tiptap-extension-code-block-RjEb0zPA.js +0 -215
- package/dist/vendor-tiptap-extension-document--PLOxIdq.js +0 -12
- package/dist/vendor-tiptap-extension-hard-break-9cxC2YOS.js +0 -59
- package/dist/vendor-tiptap-extension-heading-2w0TutHn.js +0 -63
- package/dist/vendor-tiptap-extension-horizontal-rule-CFowa_lc.js +0 -56
- package/dist/vendor-tiptap-extension-image-aWn-na6j.js +0 -127
- package/dist/vendor-tiptap-extension-italic-Bn-6saY0.js +0 -73
- package/dist/vendor-tiptap-extension-link-BmcG1_k-.js +0 -298
- package/dist/vendor-tiptap-extension-list-BrNBJ45n.js +0 -707
- package/dist/vendor-tiptap-extension-paragraph-DAiYhwUB.js +0 -41
- package/dist/vendor-tiptap-extension-placeholder-9tURDKy-.js +0 -1
- package/dist/vendor-tiptap-extension-strike-DqbXPfos.js +0 -64
- package/dist/vendor-tiptap-extension-table-DQwPaR7v.js +0 -374
- package/dist/vendor-tiptap-extension-table-cell-C0tEP_0i.js +0 -1
- package/dist/vendor-tiptap-extension-table-header-C0tEP_0i.js +0 -1
- package/dist/vendor-tiptap-extension-table-row-C0tEP_0i.js +0 -1
- package/dist/vendor-tiptap-extension-text-BFnfj70b.js +0 -13
- package/dist/vendor-tiptap-extension-text-style-Darua3qr.js +0 -235
- package/dist/vendor-tiptap-extension-underline-QyVnBqQZ.js +0 -65
- package/dist/vendor-tiptap-extensions-CU-D7bfm.js +0 -290
- package/dist/vendor-tiptap-markdown-BwATYN5A.js +0 -826
- package/dist/vendor-tiptap-pm-d91nGny8.js +0 -1
- package/dist/vendor-tiptap-starter-kit-5luf7zzS.js +0 -28
- package/dist/vendor-tiptap-vue-3-CFBErZGb.js +0 -157
- package/dist/vendor-truncate-html-DYC0Lj9o.js +0 -145
- package/dist/vendor-uc-micro-4lbSaZOs.js +0 -17
- package/dist/vendor-vee-validate-i18n-zT8NxX3R.js +0 -93
- package/dist/vendor-vee-validate-rules-4oWUZPpG.js +0 -316
- package/dist/vendor-vue-currency-input-BqaYAdhD.js +0 -317
- package/dist/vendor-vue-demi-CD9yLWd7.js +0 -1
- package/dist/vendor-vue-devtools-api-aVYGocXp.js +0 -93
- package/dist/vendor-vue-i18n-CO5LWKE0.js +0 -1370
- package/dist/vendor-vue3-application-insights-BKiiWnf2.js +0 -69
- package/dist/vendor-vue3-touch-events-DqysuuWh.js +0 -169
- package/dist/vendor-vuepic-vue-datepicker-CaY_xSnG.js +0 -4998
- package/dist/vendor-vueuse-components-sgKpNzof.js +0 -542
- package/dist/vendor-vueuse-core-D0cN7FqY.js +0 -5130
- package/dist/vendor-vueuse-shared-Pt0UEStA.js +0 -1169
- package/dist/vendor-w3c-keyname-CLxH8j-f.js +0 -92
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vc-shell/framework",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/framework.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -90,9 +90,9 @@
|
|
|
90
90
|
"@fullhuman/postcss-purgecss": "^7.0.2",
|
|
91
91
|
"@laynezh/vite-plugin-lib-assets": "v1.1.0",
|
|
92
92
|
"@types/dompurify": "^3.0.5",
|
|
93
|
-
"@vc-shell/api-client-generator": "1.
|
|
94
|
-
"@vc-shell/config-generator": "1.
|
|
95
|
-
"@vc-shell/ts-config": "1.
|
|
93
|
+
"@vc-shell/api-client-generator": "1.2.0",
|
|
94
|
+
"@vc-shell/config-generator": "1.2.0",
|
|
95
|
+
"@vc-shell/ts-config": "1.2.0",
|
|
96
96
|
"@vitejs/plugin-vue": "^5.2.3",
|
|
97
97
|
"@vue/test-utils": "^2.4.5",
|
|
98
98
|
"cypress-signalr-mock": "^1.5.0",
|
|
@@ -112,7 +112,5 @@
|
|
|
112
112
|
"access": "public",
|
|
113
113
|
"registry": "https://registry.npmjs.org/"
|
|
114
114
|
},
|
|
115
|
-
"
|
|
116
|
-
"npmTag": "alpha",
|
|
117
|
-
"gitHead": "104a5b740c2b93da7702cd073a2d39d17977c83e"
|
|
115
|
+
"gitHead": "b2d01aef92535f1a9b6af0d621a43f920d541ba8"
|
|
118
116
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
@contextmenu.prevent
|
|
7
7
|
>
|
|
8
8
|
<GenericDropdown
|
|
9
|
-
opened
|
|
9
|
+
:opened="true"
|
|
10
10
|
:items="appsList"
|
|
11
11
|
:is-item-active="(item) => locationHandler(item.relativeUrl ?? '')"
|
|
12
12
|
max-height="auto"
|
|
@@ -72,7 +72,7 @@ const switchApp = (app: AppDescriptor) => {
|
|
|
72
72
|
@apply tw-relative tw-flex tw-shrink-0 tw-h-full;
|
|
73
73
|
|
|
74
74
|
&__item {
|
|
75
|
-
@apply tw-flex tw-items-center tw-w-full tw-p-3;
|
|
75
|
+
@apply tw-flex tw-items-center tw-w-full tw-p-3 tw-w-full;
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
&__item-icon {
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import { computed, Ref, ref
|
|
1
|
+
import { computed, Ref, ref } from "vue";
|
|
2
2
|
import { AppDescriptor, AppsClient } from "../../../../../core/api/platform";
|
|
3
3
|
import { usePermissions } from "../../../../../core/composables";
|
|
4
4
|
import { notification } from "./../../../notifications";
|
|
5
5
|
import { i18n } from "../../../../../core/plugins";
|
|
6
|
-
import { AuthProviderKey } from "../../../../../injection-keys";
|
|
7
|
-
import { IAuthProvider } from "../../../../../core/types/auth-provider";
|
|
8
|
-
import { shouldEnablePlatformFeatures } from "../../../../../core/providers/auth-provider-utils";
|
|
9
6
|
|
|
10
7
|
interface IUseAppSwitcher {
|
|
11
8
|
readonly appsList: Ref<AppDescriptor[]>;
|
|
@@ -17,23 +14,12 @@ export function useAppSwitcher(): IUseAppSwitcher {
|
|
|
17
14
|
const { hasAccess } = usePermissions();
|
|
18
15
|
const appsList = ref<AppDescriptor[]>([]);
|
|
19
16
|
|
|
20
|
-
// Inject auth provider to check if platform features should be enabled
|
|
21
|
-
const authProvider = inject(AuthProviderKey);
|
|
22
|
-
|
|
23
17
|
async function getApiClient(): Promise<AppsClient> {
|
|
24
18
|
const client = new AppsClient();
|
|
25
19
|
return client;
|
|
26
20
|
}
|
|
27
21
|
|
|
28
22
|
async function getApps() {
|
|
29
|
-
// Skip loading apps for custom authentication providers
|
|
30
|
-
if (!shouldEnablePlatformFeatures(authProvider)) {
|
|
31
|
-
console.log("[useAppSwitcher] Skipping getApps - custom authentication provider detected");
|
|
32
|
-
appsList.value = []; // Ensure empty list for custom providers
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
console.log("[useAppSwitcher] Loading apps from platform");
|
|
37
23
|
const client = await getApiClient();
|
|
38
24
|
|
|
39
25
|
try {
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { useLocalStorage } from "@vueuse/core";
|
|
2
|
-
import {
|
|
2
|
+
import type { Ref } from "vue";
|
|
3
3
|
import { ExternalSignInClient, ExternalSignInProviderInfo } from "../../../core/api/platform";
|
|
4
|
-
import { shouldEnablePlatformFeatures } from "../../../core/providers/auth-provider-utils";
|
|
5
|
-
import { AuthProviderKey } from "../../../injection-keys";
|
|
6
4
|
|
|
7
5
|
export interface IUseExternalProvider {
|
|
8
6
|
storage: Ref<{ providerType?: string | undefined }>;
|
|
@@ -14,9 +12,6 @@ export interface IUseExternalProvider {
|
|
|
14
12
|
const VC_EXTERNAL_AUTH_DATA_KEY = "externalSignIn";
|
|
15
13
|
|
|
16
14
|
export const useExternalProvider = (): IUseExternalProvider => {
|
|
17
|
-
// Check if we're using a custom auth provider
|
|
18
|
-
const authProvider = inject(AuthProviderKey);
|
|
19
|
-
const isPlatformProvider = shouldEnablePlatformFeatures(authProvider);
|
|
20
15
|
const externalSecurityClient = new ExternalSignInClient();
|
|
21
16
|
const externalSignInStorage = useLocalStorage<{ providerType?: string | undefined }>(
|
|
22
17
|
VC_EXTERNAL_AUTH_DATA_KEY,
|
|
@@ -86,11 +81,6 @@ export const useExternalProvider = (): IUseExternalProvider => {
|
|
|
86
81
|
}
|
|
87
82
|
|
|
88
83
|
async function getExternalLoginProviders() {
|
|
89
|
-
if (!isPlatformProvider) {
|
|
90
|
-
console.log("[useExternalProvider] Skipping getExternalLoginProviders - custom authentication provider detected");
|
|
91
|
-
return undefined;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
84
|
let result: ExternalSignInProviderInfo[] | undefined = undefined;
|
|
95
85
|
try {
|
|
96
86
|
result = await externalSecurityClient.getExternalLoginProviders();
|
|
@@ -14,15 +14,7 @@ import { toRefs } from "@vueuse/core";
|
|
|
14
14
|
import { unrefNested } from "./unrefNested";
|
|
15
15
|
import { usePermissions } from "../../../../core/composables";
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
let hasAccess: ReturnType<typeof usePermissions>["hasAccess"] | null = null;
|
|
19
|
-
function getHasAccess() {
|
|
20
|
-
if (!hasAccess) {
|
|
21
|
-
const permissions = usePermissions();
|
|
22
|
-
hasAccess = permissions.hasAccess;
|
|
23
|
-
}
|
|
24
|
-
return hasAccess;
|
|
25
|
-
}
|
|
17
|
+
const { hasAccess } = usePermissions();
|
|
26
18
|
|
|
27
19
|
function disabledHandler(
|
|
28
20
|
disabled: { method?: string } | boolean,
|
|
@@ -177,7 +169,7 @@ function nodeBuilder<
|
|
|
177
169
|
if (toValue(model) && Array.isArray(toValue(model))) {
|
|
178
170
|
return toValue(model).map((modelItem: ToRefs<{ [x: string]: unknown; id: string }>) => {
|
|
179
171
|
return controlSchema.fields.reduce((arr, fieldItem) => {
|
|
180
|
-
if (safeIn("permissions", fieldItem) && !
|
|
172
|
+
if (safeIn("permissions", fieldItem) && !hasAccess(fieldItem.permissions)) {
|
|
181
173
|
return arr;
|
|
182
174
|
}
|
|
183
175
|
|
|
@@ -206,7 +198,7 @@ function nodeBuilder<
|
|
|
206
198
|
|
|
207
199
|
return [
|
|
208
200
|
controlSchema.fields.reduce((arr, field) => {
|
|
209
|
-
if (safeIn("permissions", field) && !
|
|
201
|
+
if (safeIn("permissions", field) && !hasAccess(field.permissions)) {
|
|
210
202
|
return arr;
|
|
211
203
|
}
|
|
212
204
|
|
package/ui/components/molecules/vc-accordion/_internal/vc-accordion-item/vc-accordion-item.vue
ADDED
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div
|
|
3
|
+
class="vc-accordion-item"
|
|
4
|
+
:class="{
|
|
5
|
+
'vc-accordion-item--expanded': isExpandedInternal,
|
|
6
|
+
'vc-accordion-item--disabled': disabled,
|
|
7
|
+
'vc-accordion-item--has-overflow': hasOverflow,
|
|
8
|
+
}"
|
|
9
|
+
>
|
|
10
|
+
<div
|
|
11
|
+
class="vc-accordion-item__header"
|
|
12
|
+
@click="toggle"
|
|
13
|
+
>
|
|
14
|
+
<div class="vc-accordion-item__title">
|
|
15
|
+
<slot name="title">
|
|
16
|
+
{{ title }}
|
|
17
|
+
</slot>
|
|
18
|
+
</div>
|
|
19
|
+
<VcIcon
|
|
20
|
+
v-if="hasOverflow"
|
|
21
|
+
class="vc-accordion-item__icon"
|
|
22
|
+
:class="{ 'vc-accordion-item__icon--rotated': isExpandedInternal }"
|
|
23
|
+
icon="lucide-chevron-down"
|
|
24
|
+
/>
|
|
25
|
+
</div>
|
|
26
|
+
|
|
27
|
+
<div
|
|
28
|
+
ref="contentWrapperRef"
|
|
29
|
+
class="vc-accordion-item__content-wrapper"
|
|
30
|
+
:class="{
|
|
31
|
+
'vc-accordion-item__content-wrapper--faded': hasOverflow && !isExpandedInternal,
|
|
32
|
+
'vc-accordion-item__content-wrapper--scrollable': isExpandedInternal && hasScrollInExpandedState,
|
|
33
|
+
}"
|
|
34
|
+
:style="contentWrapperStyle"
|
|
35
|
+
>
|
|
36
|
+
<div
|
|
37
|
+
ref="contentRef"
|
|
38
|
+
class="vc-accordion-item__content"
|
|
39
|
+
>
|
|
40
|
+
<slot></slot>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
</template>
|
|
45
|
+
|
|
46
|
+
<script lang="ts" setup>
|
|
47
|
+
import { ref, computed, watch, onMounted, onBeforeUnmount } from "vue";
|
|
48
|
+
import { VcIcon } from "../../../../atoms/vc-icon";
|
|
49
|
+
|
|
50
|
+
export interface Props {
|
|
51
|
+
title?: string;
|
|
52
|
+
collapsedHeight?: number;
|
|
53
|
+
maxExpandedHeight?: number;
|
|
54
|
+
isExpanded?: boolean;
|
|
55
|
+
disabled?: boolean;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export interface Emits {
|
|
59
|
+
(event: "toggle", value: boolean): void;
|
|
60
|
+
(event: "update:isExpanded", value: boolean): void;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
const props = withDefaults(defineProps<Props>(), {
|
|
64
|
+
collapsedHeight: 0,
|
|
65
|
+
isExpanded: false,
|
|
66
|
+
disabled: false,
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
const emit = defineEmits<Emits>();
|
|
70
|
+
|
|
71
|
+
defineOptions({
|
|
72
|
+
name: "VcAccordionItem",
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
defineSlots<{
|
|
76
|
+
default: (props?: any) => any;
|
|
77
|
+
title: (props?: any) => any;
|
|
78
|
+
}>();
|
|
79
|
+
|
|
80
|
+
const contentRef = ref<HTMLElement>();
|
|
81
|
+
const contentWrapperRef = ref<HTMLElement>();
|
|
82
|
+
const contentHeight = ref(0);
|
|
83
|
+
const isExpandedInternal = ref(props.isExpanded);
|
|
84
|
+
const resizeObserver = ref<ResizeObserver>();
|
|
85
|
+
|
|
86
|
+
const hasOverflow = computed(() => {
|
|
87
|
+
return contentHeight.value > props.collapsedHeight;
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
const hasScrollInExpandedState = computed(() => {
|
|
91
|
+
return props.maxExpandedHeight !== undefined && contentHeight.value > props.maxExpandedHeight;
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
const contentWrapperStyle = computed(() => {
|
|
95
|
+
if (isExpandedInternal.value) {
|
|
96
|
+
// If maxExpandedHeight is set and content exceeds it, limit to maxExpandedHeight
|
|
97
|
+
if (props.maxExpandedHeight !== undefined && contentHeight.value > props.maxExpandedHeight) {
|
|
98
|
+
return {
|
|
99
|
+
maxHeight: `${props.maxExpandedHeight}px`,
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
// Otherwise use full content height
|
|
103
|
+
return {
|
|
104
|
+
maxHeight: `${contentHeight.value}px`,
|
|
105
|
+
};
|
|
106
|
+
} else {
|
|
107
|
+
return {
|
|
108
|
+
maxHeight: props.collapsedHeight > 0 ? `${props.collapsedHeight}px` : "0px",
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
function toggle() {
|
|
114
|
+
if (props.disabled || !hasOverflow.value) return;
|
|
115
|
+
|
|
116
|
+
isExpandedInternal.value = !isExpandedInternal.value;
|
|
117
|
+
emit("toggle", isExpandedInternal.value);
|
|
118
|
+
emit("update:isExpanded", isExpandedInternal.value);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
function updateContentHeight() {
|
|
122
|
+
if (contentRef.value) {
|
|
123
|
+
contentHeight.value = contentRef.value.scrollHeight;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
watch(
|
|
128
|
+
() => props.isExpanded,
|
|
129
|
+
(newValue) => {
|
|
130
|
+
isExpandedInternal.value = newValue;
|
|
131
|
+
},
|
|
132
|
+
);
|
|
133
|
+
|
|
134
|
+
onMounted(() => {
|
|
135
|
+
updateContentHeight();
|
|
136
|
+
|
|
137
|
+
// Setup ResizeObserver to track content height changes
|
|
138
|
+
if (contentRef.value) {
|
|
139
|
+
resizeObserver.value = new ResizeObserver(() => {
|
|
140
|
+
updateContentHeight();
|
|
141
|
+
});
|
|
142
|
+
resizeObserver.value.observe(contentRef.value);
|
|
143
|
+
}
|
|
144
|
+
});
|
|
145
|
+
|
|
146
|
+
onBeforeUnmount(() => {
|
|
147
|
+
if (resizeObserver.value) {
|
|
148
|
+
resizeObserver.value.disconnect();
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
</script>
|
|
152
|
+
|
|
153
|
+
<style lang="scss">
|
|
154
|
+
:root {
|
|
155
|
+
--accordion-item-border-color: var(--neutrals-200);
|
|
156
|
+
--accordion-item-header-background: var(--additional-50);
|
|
157
|
+
--accordion-item-header-background-hover: var(--primary-50);
|
|
158
|
+
--accordion-item-header-color: var(--secondary-950);
|
|
159
|
+
--accordion-item-content-background: var(--additional-50);
|
|
160
|
+
--accordion-item-content-color: var(--secondary-950);
|
|
161
|
+
--accordion-item-transition-duration: 300ms;
|
|
162
|
+
--accordion-item-border-radius: 6px;
|
|
163
|
+
--accordion-item-fade-height: 60px;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
.vc-accordion-item {
|
|
167
|
+
position: relative;
|
|
168
|
+
background: var(--accordion-item-header-background);
|
|
169
|
+
border-radius: var(--accordion-item-border-radius);
|
|
170
|
+
overflow: hidden;
|
|
171
|
+
|
|
172
|
+
&__header {
|
|
173
|
+
display: flex;
|
|
174
|
+
align-items: center;
|
|
175
|
+
justify-content: space-between;
|
|
176
|
+
padding: 12px 16px;
|
|
177
|
+
background: var(--accordion-item-header-background);
|
|
178
|
+
color: var(--accordion-item-header-color);
|
|
179
|
+
transition: background-color var(--accordion-item-transition-duration) ease;
|
|
180
|
+
user-select: none;
|
|
181
|
+
|
|
182
|
+
.vc-accordion-item--has-overflow & {
|
|
183
|
+
cursor: pointer;
|
|
184
|
+
|
|
185
|
+
&:hover {
|
|
186
|
+
background: var(--accordion-item-header-background-hover);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
&__title {
|
|
192
|
+
flex: 1;
|
|
193
|
+
font-weight: 500;
|
|
194
|
+
font-size: 14px;
|
|
195
|
+
line-height: 20px;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
&__icon {
|
|
199
|
+
margin-left: 12px;
|
|
200
|
+
transition: transform var(--accordion-item-transition-duration) ease;
|
|
201
|
+
flex-shrink: 0;
|
|
202
|
+
|
|
203
|
+
&--rotated {
|
|
204
|
+
transform: rotate(180deg);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
&__content-wrapper {
|
|
209
|
+
position: relative;
|
|
210
|
+
overflow: hidden;
|
|
211
|
+
transition: max-height var(--accordion-item-transition-duration) ease;
|
|
212
|
+
|
|
213
|
+
&--faded::after {
|
|
214
|
+
content: "";
|
|
215
|
+
position: absolute;
|
|
216
|
+
bottom: 0;
|
|
217
|
+
left: 0;
|
|
218
|
+
right: 0;
|
|
219
|
+
height: var(--accordion-item-fade-height);
|
|
220
|
+
background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, var(--accordion-item-content-background) 100%);
|
|
221
|
+
pointer-events: none;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
&--scrollable {
|
|
225
|
+
overflow-y: auto;
|
|
226
|
+
overflow-x: hidden;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
&__content {
|
|
231
|
+
background: var(--accordion-item-content-background);
|
|
232
|
+
color: var(--accordion-item-content-color);
|
|
233
|
+
padding: 16px;
|
|
234
|
+
font-size: 14px;
|
|
235
|
+
line-height: 20px;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
&--disabled {
|
|
239
|
+
opacity: 0.5;
|
|
240
|
+
cursor: not-allowed;
|
|
241
|
+
|
|
242
|
+
.vc-accordion-item__header {
|
|
243
|
+
cursor: not-allowed;
|
|
244
|
+
|
|
245
|
+
&:hover {
|
|
246
|
+
background: var(--accordion-item-header-background);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
</style>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import _Accordion from "./vc-accordion.vue";
|
|
2
|
+
import _AccordionItem from "./_internal/vc-accordion-item/vc-accordion-item.vue";
|
|
3
|
+
|
|
4
|
+
export const VcAccordion = _Accordion as typeof _Accordion;
|
|
5
|
+
export const VcAccordionItem = _AccordionItem as typeof _AccordionItem;
|
|
6
|
+
|
|
7
|
+
export type { AccordionItem, Props as AccordionProps, Emits as AccordionEmits } from "./vc-accordion.vue";
|
|
8
|
+
export type {
|
|
9
|
+
Props as AccordionItemProps,
|
|
10
|
+
Emits as AccordionItemEmits,
|
|
11
|
+
} from "./_internal/vc-accordion-item/vc-accordion-item.vue";
|