@vc-shell/framework 1.0.119 → 1.0.121
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/CHANGELOG.md +15 -5771
- package/core/api/platform.ts +8215 -8033
- package/core/composables/useApiClient/index.ts +2 -1
- package/core/composables/useAsync/index.ts +3 -3
- package/core/composables/useErrorHandler/index.ts +2 -2
- package/core/composables/useFunctions/debounce.ts +2 -1
- package/core/composables/useNotifications/index.ts +4 -5
- package/core/composables/usePermissions/index.ts +8 -12
- package/core/composables/useSettings/index.ts +1 -1
- package/core/composables/useUser/index.ts +21 -17
- package/core/plugins/modularity/index.ts +7 -3
- package/core/plugins/moment/humanize.ts +3 -3
- package/core/plugins/moment/moment.ts +3 -3
- package/core/plugins/validation/rules.ts +1 -1
- package/core/types/index.ts +20 -25
- package/dist/core/api/platform.d.ts +5 -5
- package/dist/core/api/platform.d.ts.map +1 -1
- package/dist/core/composables/useApiClient/index.d.ts.map +1 -1
- package/dist/core/composables/useAsync/index.d.ts +1 -1
- package/dist/core/composables/useAsync/index.d.ts.map +1 -1
- package/dist/core/composables/useErrorHandler/index.d.ts +1 -1
- package/dist/core/composables/useErrorHandler/index.d.ts.map +1 -1
- package/dist/core/composables/useFunctions/debounce.d.ts +1 -1
- package/dist/core/composables/useFunctions/debounce.d.ts.map +1 -1
- package/dist/core/composables/useNotifications/index.d.ts.map +1 -1
- package/dist/core/composables/usePermissions/index.d.ts +1 -1
- package/dist/core/composables/usePermissions/index.d.ts.map +1 -1
- package/dist/core/composables/useUser/index.d.ts +5 -5
- package/dist/core/composables/useUser/index.d.ts.map +1 -1
- package/dist/core/plugins/modularity/index.d.ts +8 -6
- package/dist/core/plugins/modularity/index.d.ts.map +1 -1
- package/dist/core/plugins/moment/humanize.d.ts +1 -1
- package/dist/core/plugins/moment/humanize.d.ts.map +1 -1
- package/dist/core/plugins/moment/moment.d.ts.map +1 -1
- package/dist/core/types/index.d.ts +20 -19
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/framework.mjs +11021 -10956
- package/dist/index.css +1 -1
- package/dist/shared/components/app-switcher/components/vc-app-switcher/index.d.ts +3 -3
- package/dist/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue.d.ts +3 -3
- package/dist/shared/components/blade-navigation/components/vc-blade-navigation/index.d.ts +21 -21
- package/dist/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts +23 -22
- package/dist/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.d.ts.map +1 -1
- package/dist/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts +10 -10
- package/dist/shared/components/blade-navigation/composables/useBladeNavigation/index.d.ts.map +1 -1
- package/dist/shared/components/blade-navigation/types/index.d.ts +34 -18
- package/dist/shared/components/blade-navigation/types/index.d.ts.map +1 -1
- package/dist/shared/components/change-password/change-password.vue.d.ts +1 -1
- package/dist/shared/components/change-password/index.d.ts +1 -1
- package/dist/shared/components/error-interceptor/index.d.ts +35 -35
- package/dist/shared/components/error-interceptor/interceptor.d.ts +4 -4
- package/dist/shared/components/error-interceptor/interceptor.d.ts.map +1 -1
- package/dist/shared/components/language-selector/index.d.ts +7 -7
- package/dist/shared/components/language-selector/language-selector.vue.d.ts +3 -3
- package/dist/shared/components/notifications/components/notification-container/index.d.ts +9 -9
- package/dist/shared/components/notifications/composables/useContainer/index.d.ts +1 -1
- package/dist/shared/components/notifications/composables/useContainer/index.d.ts.map +1 -1
- package/dist/shared/components/notifications/core/notification.d.ts +4 -4
- package/dist/shared/components/popup-handler/composables/usePopup/index.d.ts +2 -1
- package/dist/shared/components/popup-handler/composables/usePopup/index.d.ts.map +1 -1
- package/dist/shared/components/popup-handler/types/index.d.ts +2 -7
- package/dist/shared/components/popup-handler/types/index.d.ts.map +1 -1
- package/dist/shared/components/popup-handler/utils/index.d.ts +1 -1
- package/dist/shared/components/popup-handler/utils/index.d.ts.map +1 -1
- package/dist/shared/components/user-dropdown-button/index.d.ts +5 -5
- package/dist/shared/components/user-dropdown-button/user-dropdown-button.vue.d.ts +3 -3
- package/dist/shared/modules/assets/components/assets-details/assets-details.vue.d.ts +3 -3
- package/dist/shared/modules/assets/components/assets-details/assets-details.vue.d.ts.map +1 -1
- package/dist/shared/modules/assets/components/assets-details/index.d.ts +1 -46
- package/dist/shared/modules/assets/components/assets-details/index.d.ts.map +1 -1
- package/dist/shared/modules/assets/index.d.ts +1 -1
- package/dist/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts +6 -6
- package/dist/shared/modules/assets-manager/components/assets-manager/index.d.ts +12 -12
- package/dist/shared/modules/assets-manager/index.d.ts +1 -1
- package/dist/shared/modules/dynamic/components/FIELD_MAP.d.ts +1 -2
- package/dist/shared/modules/dynamic/components/FIELD_MAP.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/SchemaRender.d.ts +83 -82
- package/dist/shared/modules/dynamic/components/SchemaRender.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/factories.d.ts +15 -14
- package/dist/shared/modules/dynamic/components/factories.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/Button.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/Button.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/Card.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/Card.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/Checkbox.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/Checkbox.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/ContentField.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/ContentField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/DynamicProperty.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/DynamicProperty.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/EditorField.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/EditorField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/Fieldset.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/Fieldset.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/GalleryField.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/GalleryField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/ImageField.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/ImageField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/InputCurrency.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/InputCurrency.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/InputField.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/InputField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/SelectField.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/SelectField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/StatusField.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/StatusField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/TextareaField.d.ts +132 -0
- package/dist/shared/modules/dynamic/components/fields/TextareaField.d.ts.map +1 -0
- package/dist/shared/modules/dynamic/components/fields/VideoField.d.ts +39 -42
- package/dist/shared/modules/dynamic/components/fields/VideoField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/props.d.ts +38 -41
- package/dist/shared/modules/dynamic/components/fields/props.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/composables/useFilterBuilder/index.d.ts +2 -2
- package/dist/shared/modules/dynamic/composables/useFilterBuilder/index.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/factories/base/useDetailsFactory.d.ts +3 -3
- package/dist/shared/modules/dynamic/factories/base/useDetailsFactory.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/factories/types/index.d.ts +10 -11
- package/dist/shared/modules/dynamic/factories/types/index.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/helpers/nodeBuilder.d.ts +2 -2
- package/dist/shared/modules/dynamic/helpers/nodeBuilder.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/helpers/override.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/helpers/safeIn.d.ts +5 -0
- package/dist/shared/modules/dynamic/helpers/safeIn.d.ts.map +1 -0
- package/dist/shared/modules/dynamic/helpers/setters.d.ts +1 -0
- package/dist/shared/modules/dynamic/helpers/setters.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/helpers/toolbarReducer.d.ts +1 -1
- package/dist/shared/modules/dynamic/helpers/toolbarReducer.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/helpers/unwrapInterpolation.d.ts +1 -1
- package/dist/shared/modules/dynamic/helpers/unwrapInterpolation.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/index.d.ts +7 -7
- package/dist/shared/modules/dynamic/index.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts +30 -30
- package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts +11 -10
- package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/types/index.d.ts +434 -34
- package/dist/shared/modules/dynamic/types/index.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/types/models.d.ts +7 -3
- package/dist/shared/modules/dynamic/types/models.d.ts.map +1 -1
- package/dist/shared/pages/InvitePage/components/invite/Invite.vue.d.ts +15 -28
- package/dist/shared/pages/InvitePage/components/invite/Invite.vue.d.ts.map +1 -1
- package/dist/shared/pages/InvitePage/components/invite/index.d.ts +13 -17
- package/dist/shared/pages/InvitePage/components/invite/index.d.ts.map +1 -1
- package/dist/shared/pages/LoginPage/components/login/Login.vue.d.ts.map +1 -1
- package/dist/shared/pages/ResetPasswordPage/components/reset-password/ResetPassword.vue.d.ts +15 -28
- package/dist/shared/pages/ResetPasswordPage/components/reset-password/ResetPassword.vue.d.ts.map +1 -1
- package/dist/shared/pages/ResetPasswordPage/components/reset-password/index.d.ts +13 -17
- package/dist/shared/pages/ResetPasswordPage/components/reset-password/index.d.ts.map +1 -1
- package/dist/shared/utilities/assets.d.ts +3 -3
- package/dist/shared/utilities/assets.d.ts.map +1 -1
- package/dist/shared/utilities/vueUtils.d.ts +34 -0
- package/dist/shared/utilities/vueUtils.d.ts.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/components/atoms/vc-badge/index.d.ts +30 -30
- package/dist/ui/components/atoms/vc-badge/vc-badge.vue.d.ts +1 -1
- package/dist/ui/components/atoms/vc-button/vc-button.vue.d.ts +1 -1
- package/dist/ui/components/atoms/vc-card/index.d.ts +37 -37
- package/dist/ui/components/atoms/vc-card/vc-card.vue.d.ts +2 -2
- package/dist/ui/components/atoms/vc-checkbox/index.d.ts +61 -44
- package/dist/ui/components/atoms/vc-checkbox/index.d.ts.map +1 -1
- package/dist/ui/components/atoms/vc-checkbox/vc-checkbox.vue.d.ts +3 -2
- package/dist/ui/components/atoms/vc-checkbox/vc-checkbox.vue.d.ts.map +1 -1
- package/dist/ui/components/atoms/vc-container/index.d.ts +33 -33
- package/dist/ui/components/atoms/vc-container/vc-container.vue.d.ts +2 -2
- package/dist/ui/components/atoms/vc-hint/index.d.ts +22 -22
- package/dist/ui/components/atoms/vc-image/index.d.ts +10 -10
- package/dist/ui/components/atoms/vc-image/vc-image.vue.d.ts +2 -2
- package/dist/ui/components/atoms/vc-info-row/index.d.ts +4 -4
- package/dist/ui/components/atoms/vc-label/index.d.ts +26 -26
- package/dist/ui/components/atoms/vc-label/vc-label.vue.d.ts +1 -1
- package/dist/ui/components/atoms/vc-link/index.d.ts +29 -29
- package/dist/ui/components/atoms/vc-link/vc-link.vue.d.ts +1 -1
- package/dist/ui/components/atoms/vc-progress/index.d.ts +43 -43
- package/dist/ui/components/atoms/vc-progress/vc-progress.vue.d.ts +1 -1
- package/dist/ui/components/atoms/vc-status-icon/index.d.ts +1 -9
- package/dist/ui/components/atoms/vc-status-icon/index.d.ts.map +1 -1
- package/dist/ui/components/atoms/vc-switch/index.d.ts +1 -1
- package/dist/ui/components/atoms/vc-switch/vc-switch.vue.d.ts +1 -1
- package/dist/ui/components/atoms/vc-video/index.d.ts +1 -19
- package/dist/ui/components/atoms/vc-video/index.d.ts.map +1 -1
- package/dist/ui/components/atoms/vc-video/vc-video.vue.d.ts +1 -4
- package/dist/ui/components/atoms/vc-video/vc-video.vue.d.ts.map +1 -1
- package/dist/ui/components/atoms/vc-widget/index.d.ts +1 -1
- package/dist/ui/components/atoms/vc-widget/vc-widget.vue.d.ts +1 -1
- package/dist/ui/components/molecules/vc-breadcrumbs/_internal/vc-breadcrumbs-item/vc-breadcrumbs-item.vue.d.ts +9 -9
- package/dist/ui/components/molecules/vc-breadcrumbs/index.d.ts +8 -8
- package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts +4 -4
- package/dist/ui/components/molecules/vc-code-editor/index.d.ts +65 -75
- package/dist/ui/components/molecules/vc-code-editor/index.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-code-editor/vc-code-editor.vue.d.ts +5 -16
- package/dist/ui/components/molecules/vc-code-editor/vc-code-editor.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts +6 -20
- package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-field/_internal/vc-field-type/vc-field-type.vue.d.ts +3 -3
- package/dist/ui/components/molecules/vc-field/_internal/vc-field-type/vc-field-type.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-field/vc-field.vue.d.ts +2 -2
- package/dist/ui/components/molecules/vc-field/vc-field.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-file-upload/index.d.ts +59 -59
- package/dist/ui/components/molecules/vc-file-upload/vc-file-upload.vue.d.ts +2 -2
- package/dist/ui/components/molecules/vc-form/index.d.ts +22 -22
- package/dist/ui/components/molecules/vc-input/vc-input.vue.d.ts +8 -8
- package/dist/ui/components/molecules/vc-input-currency/index.d.ts +99 -99
- package/dist/ui/components/molecules/vc-input-currency/index.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts +8 -8
- package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-multivalue/index.d.ts +70 -70
- package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.vue.d.ts +70 -70
- package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-notification/index.d.ts +1 -51
- package/dist/ui/components/molecules/vc-notification/index.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-pagination/index.d.ts +7 -7
- package/dist/ui/components/molecules/vc-pagination/vc-pagination.vue.d.ts +1 -1
- package/dist/ui/components/molecules/vc-rating/index.d.ts +25 -25
- package/dist/ui/components/molecules/vc-select/vc-select.vue.d.ts +80 -80
- package/dist/ui/components/molecules/vc-select/vc-select.vue.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-slider/index.d.ts +40 -40
- package/dist/ui/components/molecules/vc-slider/vc-slider.vue.d.ts +2 -2
- package/dist/ui/components/molecules/vc-textarea/index.d.ts +1 -230
- package/dist/ui/components/molecules/vc-textarea/index.d.ts.map +1 -1
- package/dist/ui/components/molecules/vc-textarea/vc-textarea.vue.d.ts +6 -6
- package/dist/ui/components/molecules/vc-textarea/vc-textarea.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue.d.ts +4 -7
- package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.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 +13 -13
- 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/_internal/vc-app-menu/vc-app-menu.vue.d.ts +10 -10
- package/dist/ui/components/organisms/vc-app/index.d.ts +93 -92
- package/dist/ui/components/organisms/vc-app/index.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts +20 -21
- 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-header/vc-blade-header.vue.d.ts +4 -4
- package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue.d.ts +9 -9
- package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_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/vc-blade-toolbar.vue.d.ts +2 -2
- package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/index.d.ts +70 -70
- package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts +5 -5
- package/dist/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue.d.ts +70 -70
- 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 +15 -15
- package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue.d.ts +3 -3
- package/dist/ui/components/organisms/vc-gallery/index.d.ts +30 -42
- package/dist/ui/components/organisms/vc-gallery/index.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts +8 -10
- package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-login-form/index.d.ts +24 -24
- package/dist/ui/components/organisms/vc-notification-dropdown/_internal/notification/notification.vue.d.ts +4 -15
- package/dist/ui/components/organisms/vc-notification-dropdown/_internal/notification/notification.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-notification-template/index.d.ts +1 -103
- package/dist/ui/components/organisms/vc-notification-template/index.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-notification-template/vc-notification-template.vue.d.ts +2 -0
- package/dist/ui/components/organisms/vc-notification-template/vc-notification-template.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-popup/_internal/vc-popup-error/vc-popup-error.vue.d.ts +1 -1
- package/dist/ui/components/organisms/vc-popup/_internal/vc-popup-warning/vc-popup-warning.vue.d.ts +2 -2
- package/dist/ui/components/organisms/vc-popup/vc-popup.vue.d.ts +2 -2
- package/dist/ui/components/organisms/vc-table/_internal/vc-table-column-switcher/vc-table-column-switcher.vue.d.ts +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-filter/vc-table-filter.vue.d.ts +2 -2
- package/dist/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue.d.ts +15 -15
- package/dist/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-table/vc-table.vue.d.ts +105 -105
- package/dist/ui/components/organisms/vc-table/vc-table.vue.d.ts.map +1 -1
- package/package.json +5 -5
- package/shared/components/app-switcher/components/vc-app-switcher/vc-app-switcher.vue +3 -3
- package/shared/components/app-switcher/composables/useAppSwitcher/index.ts +1 -1
- package/shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue +7 -7
- package/shared/components/blade-navigation/composables/useBladeNavigation/index.ts +80 -80
- package/shared/components/blade-navigation/types/index.ts +50 -18
- package/shared/components/change-password/change-password.vue +32 -5
- package/shared/components/error-interceptor/interceptor.ts +4 -4
- package/shared/components/notifications/composables/useContainer/index.ts +2 -2
- package/shared/components/notifications/composables/useInstance/index.ts +2 -2
- package/shared/components/notifications/core/notification.ts +2 -2
- package/shared/components/popup-handler/components/vc-popup-container/vc-popup-container.vue +2 -2
- package/shared/components/popup-handler/composables/usePopup/index.ts +13 -6
- package/shared/components/popup-handler/types/index.ts +1 -7
- package/shared/components/user-dropdown-button/user-dropdown-button.vue +1 -1
- package/shared/modules/assets/components/assets-details/assets-details.vue +12 -6
- package/shared/modules/assets/components/assets-details/index.ts +1 -3
- package/shared/modules/assets-manager/components/assets-manager/assets-manager.vue +10 -10
- package/shared/modules/dynamic/components/FIELD_MAP.ts +4 -2
- package/shared/modules/dynamic/components/SchemaRender.ts +2 -2
- package/shared/modules/dynamic/components/factories.ts +24 -13
- package/shared/modules/dynamic/components/fields/Button.ts +3 -3
- package/shared/modules/dynamic/components/fields/Card.ts +30 -15
- package/shared/modules/dynamic/components/fields/Checkbox.ts +2 -2
- package/shared/modules/dynamic/components/fields/ContentField.ts +2 -2
- package/shared/modules/dynamic/components/fields/DynamicProperty.ts +19 -9
- package/shared/modules/dynamic/components/fields/Fieldset.ts +7 -4
- package/shared/modules/dynamic/components/fields/GalleryField.ts +42 -22
- package/shared/modules/dynamic/components/fields/ImageField.ts +2 -2
- package/shared/modules/dynamic/components/fields/InputCurrency.ts +8 -4
- package/shared/modules/dynamic/components/fields/InputField.ts +9 -9
- package/shared/modules/dynamic/components/fields/SelectField.ts +6 -3
- package/shared/modules/dynamic/components/fields/StatusField.ts +3 -3
- package/shared/modules/dynamic/components/fields/TextareaField.ts +41 -0
- package/shared/modules/dynamic/components/fields/ValidationField.ts +9 -9
- package/shared/modules/dynamic/components/fields/VideoField.ts +2 -5
- package/shared/modules/dynamic/components/fields/props.ts +1 -2
- package/shared/modules/dynamic/composables/useFilterBuilder/index.ts +18 -10
- package/shared/modules/dynamic/factories/base/useDetailsFactory.ts +7 -6
- package/shared/modules/dynamic/factories/base/useListFactory.ts +4 -4
- package/shared/modules/dynamic/factories/types/index.ts +11 -9
- package/shared/modules/dynamic/helpers/nodeBuilder.ts +97 -34
- package/shared/modules/dynamic/helpers/override.ts +14 -27
- package/shared/modules/dynamic/helpers/safeIn.ts +6 -0
- package/shared/modules/dynamic/helpers/setters.ts +11 -2
- package/shared/modules/dynamic/helpers/toolbarReducer.ts +3 -3
- package/shared/modules/dynamic/helpers/unwrapInterpolation.ts +2 -1
- package/shared/modules/dynamic/index.ts +38 -29
- package/shared/modules/dynamic/pages/dynamic-blade-form.vue +33 -31
- package/shared/modules/dynamic/pages/dynamic-blade-list.vue +45 -33
- package/shared/modules/dynamic/types/index.ts +436 -34
- package/shared/modules/dynamic/types/models.ts +11 -3
- package/shared/pages/InvitePage/components/invite/Invite.vue +17 -19
- package/shared/pages/LoginPage/components/login/Login.vue +6 -8
- package/shared/pages/ResetPasswordPage/components/reset-password/ResetPassword.vue +17 -19
- package/shared/utilities/assets.ts +6 -4
- package/shared/utilities/vueUtils.ts +46 -0
- package/ui/components/atoms/vc-checkbox/vc-checkbox.vue +8 -2
- package/ui/components/atoms/vc-status-icon/index.ts +1 -3
- package/ui/components/atoms/vc-video/vc-video.vue +1 -14
- package/ui/components/molecules/vc-code-editor/vc-code-editor.vue +1 -3
- package/ui/components/molecules/vc-editor/vc-editor.vue +13 -7
- package/ui/components/molecules/vc-field/_internal/vc-field-type/vc-field-type.vue +14 -5
- package/ui/components/molecules/vc-field/vc-field.vue +1 -1
- package/ui/components/molecules/vc-input/vc-input.vue +4 -4
- package/ui/components/molecules/vc-input-currency/vc-input-currency.vue +11 -11
- package/ui/components/molecules/vc-multivalue/vc-multivalue.vue +1 -1
- package/ui/components/molecules/vc-notification/index.ts +1 -3
- package/ui/components/molecules/vc-notification/vc-notification.vue +6 -6
- package/ui/components/molecules/vc-select/vc-select.vue +6 -4
- package/ui/components/molecules/vc-textarea/index.ts +1 -10
- package/ui/components/molecules/vc-textarea/vc-textarea.vue +6 -1
- package/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue +0 -1
- package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue +3 -3
- package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue +7 -7
- package/ui/components/organisms/vc-app/vc-app.vue +11 -19
- package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue +2 -2
- package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue +2 -2
- package/ui/components/organisms/vc-blade/vc-blade.vue +1 -1
- package/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue +3 -3
- package/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue +1 -1
- package/ui/components/organisms/vc-gallery/vc-gallery.vue +29 -26
- package/ui/components/organisms/vc-notification-dropdown/_internal/notification/notification.vue +3 -16
- package/ui/components/organisms/vc-notification-dropdown/vc-notification-dropdown.vue +1 -1
- package/ui/components/organisms/vc-notification-template/index.ts +1 -3
- package/ui/components/organisms/vc-notification-template/vc-notification-template.vue +35 -17
- package/ui/components/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue +6 -6
- package/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue +7 -5
- package/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue +11 -16
- package/ui/components/organisms/vc-table/vc-table.vue +45 -42
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
<div
|
|
3
3
|
class="vc-app-menu-item"
|
|
4
4
|
:class="[
|
|
5
|
-
{ 'vc-app-menu-item_active': isActive && !children
|
|
6
|
-
{ 'vc-app-menu-item_no-hover': children
|
|
5
|
+
{ 'vc-app-menu-item_active': isActive && !children?.length },
|
|
6
|
+
{ 'vc-app-menu-item_no-hover': children?.length },
|
|
7
7
|
]"
|
|
8
8
|
@click="$emit('onClick')"
|
|
9
9
|
>
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
<div class="vc-app-menu-item__title">
|
|
29
29
|
{{ title }}
|
|
30
30
|
<VcIcon
|
|
31
|
-
v-if="children
|
|
31
|
+
v-if="children?.length"
|
|
32
32
|
class="vc-app-menu-item__title-icon"
|
|
33
33
|
icon="fas fa-chevron-down"
|
|
34
34
|
size="xs"
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
:is-active="isExactActive"
|
|
11
11
|
:children="children"
|
|
12
12
|
:sticky="sticky"
|
|
13
|
-
:icon="icon"
|
|
14
|
-
:title="title"
|
|
13
|
+
:icon="icon ?? ''"
|
|
14
|
+
:title="title ?? ''"
|
|
15
15
|
@on-click="onMenuItemClick"
|
|
16
16
|
/>
|
|
17
17
|
</router-link>
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
<vc-app-menu-link
|
|
21
21
|
:children="children"
|
|
22
22
|
:sticky="sticky"
|
|
23
|
-
:icon="icon"
|
|
24
|
-
:title="title"
|
|
23
|
+
:icon="icon ?? ''"
|
|
24
|
+
:title="title ?? ''"
|
|
25
25
|
@on-click="onMenuItemClick"
|
|
26
26
|
/>
|
|
27
27
|
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
>
|
|
37
37
|
<router-link
|
|
38
38
|
v-slot="{ isActive }"
|
|
39
|
-
:to="nested.component
|
|
39
|
+
:to="(nested.component?.url as string)"
|
|
40
40
|
custom
|
|
41
41
|
>
|
|
42
42
|
<div
|
|
@@ -64,12 +64,12 @@ import { onMounted, ref } from "vue";
|
|
|
64
64
|
import { BladeMenu } from "./../../../../../../../../core/types";
|
|
65
65
|
import VcAppMenuLink from "./_internal/vc-app-menu-link.vue";
|
|
66
66
|
import { useRoute } from "vue-router";
|
|
67
|
-
import {
|
|
67
|
+
import { BladeInstanceConstructor } from "./../../../../../../../../shared";
|
|
68
68
|
|
|
69
69
|
export interface Props {
|
|
70
70
|
sticky?: boolean;
|
|
71
71
|
isVisible?: boolean;
|
|
72
|
-
component?:
|
|
72
|
+
component?: BladeInstanceConstructor;
|
|
73
73
|
icon?: string;
|
|
74
74
|
title?: string;
|
|
75
75
|
children?: BladeMenu[];
|
|
@@ -17,7 +17,6 @@
|
|
|
17
17
|
:blades="bladesRefs"
|
|
18
18
|
:buttons="toolbarItems"
|
|
19
19
|
:title="title"
|
|
20
|
-
@toolbarbutton:click="onToolbarButtonClick"
|
|
21
20
|
@menubutton:click="($refs.menu as Record<'isMobileVisible', boolean>).isMobileVisible = true"
|
|
22
21
|
@backlink:click="$emit('backlink:click', bladesRefs.length - 2)"
|
|
23
22
|
@logo:click="$emit('logo:click')"
|
|
@@ -61,16 +60,16 @@ import { getCurrentInstance, markRaw } from "vue";
|
|
|
61
60
|
import { BladeMenu, IBladeToolbar } from "../../../../core/types";
|
|
62
61
|
import VcAppBar from "./_internal/vc-app-bar/vc-app-bar.vue";
|
|
63
62
|
import VcAppMenu from "./_internal/vc-app-menu/vc-app-menu.vue";
|
|
64
|
-
import {
|
|
63
|
+
import { BladeInstanceConstructor, IBladeRef, useBladeNavigation } from "./../../../../shared";
|
|
65
64
|
|
|
66
65
|
export interface Props {
|
|
67
|
-
pages?:
|
|
66
|
+
pages?: BladeInstanceConstructor[];
|
|
68
67
|
menuItems?: BladeMenu[];
|
|
69
68
|
mobileMenuItems?: IBladeToolbar[];
|
|
70
69
|
toolbarItems?: IBladeToolbar[];
|
|
71
70
|
isReady?: boolean;
|
|
72
71
|
isAuthorized?: boolean;
|
|
73
|
-
logo
|
|
72
|
+
logo: string;
|
|
74
73
|
version?: string;
|
|
75
74
|
theme?: "light" | "dark";
|
|
76
75
|
bladesRefs?: IBladeRef[];
|
|
@@ -109,25 +108,18 @@ const onMenuItemClick = function ({ item }: { item: BladeMenu }) {
|
|
|
109
108
|
if (item.clickHandler && typeof item.clickHandler === "function") {
|
|
110
109
|
item.clickHandler(instance?.exposed);
|
|
111
110
|
} else {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
const onToolbarButtonClick = function (item: Record<string, unknown>) {
|
|
122
|
-
console.debug(`vc-app#onToolbarButtonClick() called.`);
|
|
123
|
-
|
|
124
|
-
if (item.clickHandler && typeof item.clickHandler === "function") {
|
|
125
|
-
item.clickHandler(instance?.proxy);
|
|
111
|
+
if (item.component) {
|
|
112
|
+
openBlade(
|
|
113
|
+
{
|
|
114
|
+
blade: markRaw(item.component),
|
|
115
|
+
},
|
|
116
|
+
true
|
|
117
|
+
);
|
|
118
|
+
}
|
|
126
119
|
}
|
|
127
120
|
};
|
|
128
121
|
|
|
129
122
|
defineExpose({
|
|
130
|
-
onToolbarButtonClick,
|
|
131
123
|
onMenuItemClick,
|
|
132
124
|
});
|
|
133
125
|
</script>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<div
|
|
3
3
|
class="vc-blade-toolbar-button"
|
|
4
4
|
:class="{ 'vc-blade-toolbar-button_disabled': disabled || isWaiting }"
|
|
5
|
-
:title="title
|
|
5
|
+
:title="title"
|
|
6
6
|
@click="onClick"
|
|
7
7
|
>
|
|
8
8
|
<div ref="dropButtonRef">
|
|
@@ -56,7 +56,7 @@ import { IBladeDropdownItem } from "./../../../../../../../../core/types";
|
|
|
56
56
|
export interface Props {
|
|
57
57
|
isExpanded: boolean;
|
|
58
58
|
icon?: string | (() => string);
|
|
59
|
-
title?: string
|
|
59
|
+
title?: string;
|
|
60
60
|
options?: Record<string, unknown>;
|
|
61
61
|
disabled?: boolean;
|
|
62
62
|
dropdownItems?: IBladeDropdownItem[];
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
v-if="item.isVisible === undefined || item.isVisible"
|
|
14
14
|
:is-expanded="isExpanded"
|
|
15
15
|
:icon="item.icon"
|
|
16
|
-
:title="item.title"
|
|
16
|
+
:title="unref(item.title)"
|
|
17
17
|
:options="item.options"
|
|
18
18
|
:disabled="item.disabled as boolean"
|
|
19
19
|
:dropdown-items="item.dropdownItems"
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
|
|
32
32
|
<script lang="ts" setup>
|
|
33
33
|
import { IBladeToolbar } from "./../../../../../../core/types";
|
|
34
|
-
import { ref } from "vue";
|
|
34
|
+
import { ref, unref } from "vue";
|
|
35
35
|
import VcBladeToolbarButton from "./_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue";
|
|
36
36
|
import { VcIcon } from "./../../../../";
|
|
37
37
|
|
|
@@ -191,7 +191,7 @@
|
|
|
191
191
|
|
|
192
192
|
<!-- eslint-disable @typescript-eslint/no-explicit-any -->
|
|
193
193
|
<script lang="ts" setup generic="T extends {[x:string]: any; id?: string}">
|
|
194
|
-
import { ref, onMounted, computed,
|
|
194
|
+
import { ref, onMounted, computed, Ref } from "vue";
|
|
195
195
|
import { Field } from "vee-validate";
|
|
196
196
|
import { useI18n } from "vue-i18n";
|
|
197
197
|
import { VcSelect, VcInput, VcTextarea, VcCheckbox } from "./../../";
|
|
@@ -244,7 +244,7 @@ const emit = defineEmits<{
|
|
|
244
244
|
|
|
245
245
|
const { locale, te, t } = useI18n({ useScope: "global" });
|
|
246
246
|
|
|
247
|
-
const items = ref([]);
|
|
247
|
+
const items: Ref<any[]> = ref([]);
|
|
248
248
|
const loading = ref(false);
|
|
249
249
|
|
|
250
250
|
const computedProperty = computed(() => {
|
|
@@ -305,7 +305,7 @@ onMounted(async () => {
|
|
|
305
305
|
await getOptions();
|
|
306
306
|
});
|
|
307
307
|
|
|
308
|
-
async function getOptions(keyword: string =
|
|
308
|
+
async function getOptions(keyword: string | undefined = undefined) {
|
|
309
309
|
if (props.optionsGetter) {
|
|
310
310
|
try {
|
|
311
311
|
loading.value = true;
|
package/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<template #title>
|
|
8
8
|
<div>
|
|
9
9
|
<span>{{ currentImage.name }} (</span>
|
|
10
|
-
<VcLink @click="copyLink(currentImage.url)">{{
|
|
10
|
+
<VcLink @click="copyLink(currentImage.url ?? '')">{{
|
|
11
11
|
t("COMPONENTS.ORGANISMS.VC_GALLERY.INTERNAL.VC_GALLERY_PREVIEW.COPY_IMAGE_LINK")
|
|
12
12
|
}}</VcLink>
|
|
13
13
|
<span>)</span>
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
@drop="onItemDrop($event, image)"
|
|
34
34
|
></VcGalleryItem>
|
|
35
35
|
<VcFileUpload
|
|
36
|
-
v-if="!disabled && !
|
|
36
|
+
v-if="!disabled && !defaultImages.length"
|
|
37
37
|
class="tw-m-2"
|
|
38
38
|
:icon="uploadIcon"
|
|
39
39
|
:variant="variant"
|
|
@@ -84,8 +84,6 @@ export interface Props {
|
|
|
84
84
|
edit: boolean;
|
|
85
85
|
remove: boolean;
|
|
86
86
|
};
|
|
87
|
-
disableDrag?: boolean;
|
|
88
|
-
hideAfterUpload?: boolean;
|
|
89
87
|
rules?: string | Record<string, unknown>;
|
|
90
88
|
name?: string;
|
|
91
89
|
loading?: boolean;
|
|
@@ -123,6 +121,7 @@ const reorderGalleryRef = ref<HTMLElement>();
|
|
|
123
121
|
const dropPosition = ref<number>();
|
|
124
122
|
|
|
125
123
|
const currentIndex = computed(() => previewImageIndex.value);
|
|
124
|
+
const disableDrag = computed(() => defaultImages.value.length <= 1);
|
|
126
125
|
|
|
127
126
|
const { open } = usePopup(
|
|
128
127
|
computed(() => ({
|
|
@@ -165,53 +164,55 @@ const updateOrder = () => {
|
|
|
165
164
|
};
|
|
166
165
|
|
|
167
166
|
function onItemMouseDown(event: MouseEvent & { currentTarget?: { draggable: boolean } }) {
|
|
168
|
-
if (!
|
|
167
|
+
if (!disableDrag.value && !props.disabled) {
|
|
169
168
|
event.currentTarget.draggable = true;
|
|
170
169
|
return;
|
|
171
170
|
}
|
|
172
171
|
}
|
|
173
172
|
|
|
174
173
|
function onItemDragStart(event: DragEvent, item: IImage) {
|
|
175
|
-
if (!
|
|
174
|
+
if (!disableDrag.value && !props.disabled) {
|
|
176
175
|
draggedItem.value = item;
|
|
177
176
|
draggedElement.value = event.target as HTMLElement;
|
|
178
|
-
event.dataTransfer
|
|
177
|
+
event.dataTransfer?.setData("text", "gallery_reorder");
|
|
179
178
|
}
|
|
180
179
|
}
|
|
181
180
|
|
|
182
181
|
function onItemDragOver(event: DragEvent) {
|
|
183
182
|
const dropItem = findParentElement(event.target as HTMLElement);
|
|
184
183
|
|
|
185
|
-
if (!
|
|
184
|
+
if (!disableDrag.value && !props.disabled && draggedItem.value && dropItem) {
|
|
186
185
|
event.preventDefault();
|
|
187
186
|
|
|
188
|
-
const containerOffset = galleryRef.value
|
|
187
|
+
const containerOffset = galleryRef.value?.getBoundingClientRect();
|
|
189
188
|
const dropItemOffset = dropItem.getBoundingClientRect();
|
|
190
189
|
|
|
191
|
-
if (draggedElement.value !== dropItem) {
|
|
190
|
+
if (draggedElement.value !== dropItem && containerOffset) {
|
|
192
191
|
const elementStyle = getComputedStyle(dropItem);
|
|
193
192
|
const dropItemOffsetWidth = dropItem.offsetWidth + parseFloat(elementStyle.marginLeft);
|
|
194
193
|
const targetLeft = dropItemOffset.left - containerOffset.left;
|
|
195
194
|
const columnCenter = dropItemOffset.left + dropItemOffsetWidth / 2;
|
|
196
195
|
|
|
197
|
-
reorderGalleryRef.value
|
|
198
|
-
|
|
196
|
+
if (reorderGalleryRef.value) {
|
|
197
|
+
reorderGalleryRef.value.style.top = dropItemOffset.top - containerOffset.top + "px";
|
|
198
|
+
reorderGalleryRef.value.style.height = dropItem.offsetHeight + "px";
|
|
199
199
|
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
200
|
+
if (event.pageX > columnCenter) {
|
|
201
|
+
reorderGalleryRef.value.style.left = targetLeft + dropItemOffsetWidth + "px";
|
|
202
|
+
dropPosition.value = 1;
|
|
203
|
+
} else {
|
|
204
|
+
reorderGalleryRef.value.style.left = targetLeft - parseFloat(elementStyle.marginLeft) + "px";
|
|
205
|
+
dropPosition.value = -1;
|
|
206
|
+
}
|
|
207
207
|
|
|
208
|
-
|
|
208
|
+
reorderGalleryRef.value.style.display = "block";
|
|
209
|
+
}
|
|
209
210
|
}
|
|
210
211
|
}
|
|
211
212
|
}
|
|
212
213
|
|
|
213
214
|
function onItemDragLeave(event: DragEvent) {
|
|
214
|
-
if (!
|
|
215
|
+
if (!disableDrag.value && !props.disabled && draggedItem.value && reorderGalleryRef.value) {
|
|
215
216
|
event.preventDefault();
|
|
216
217
|
|
|
217
218
|
reorderGalleryRef.value.style.display = "none";
|
|
@@ -241,10 +242,12 @@ function onItemDrop(event: DragEvent, item: IImage) {
|
|
|
241
242
|
updateOrder();
|
|
242
243
|
}
|
|
243
244
|
|
|
244
|
-
reorderGalleryRef.value.
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
245
|
+
if (reorderGalleryRef.value && draggedElement.value) {
|
|
246
|
+
reorderGalleryRef.value.style.display = "none";
|
|
247
|
+
draggedElement.value.draggable = false;
|
|
248
|
+
draggedItem.value = undefined;
|
|
249
|
+
dropPosition.value = undefined;
|
|
250
|
+
}
|
|
248
251
|
}
|
|
249
252
|
}
|
|
250
253
|
|
|
@@ -265,8 +268,8 @@ function findParentElement(element: HTMLElement) {
|
|
|
265
268
|
} else {
|
|
266
269
|
let parent = element.parentElement;
|
|
267
270
|
|
|
268
|
-
while (!parent.classList.contains("vc-gallery__item")) {
|
|
269
|
-
parent = parent
|
|
271
|
+
while (!(parent && parent.classList.contains("vc-gallery__item"))) {
|
|
272
|
+
parent = parent?.parentElement || null;
|
|
270
273
|
if (!parent) break;
|
|
271
274
|
}
|
|
272
275
|
return parent;
|
package/ui/components/organisms/vc-notification-dropdown/_internal/notification/notification.vue
CHANGED
|
@@ -7,8 +7,9 @@
|
|
|
7
7
|
<template v-else>
|
|
8
8
|
<VcNotificationTemplate
|
|
9
9
|
:color="notificationStyle.color"
|
|
10
|
-
:title="notification.title"
|
|
10
|
+
:title="notification.title ?? ''"
|
|
11
11
|
:icon="notificationStyle.icon"
|
|
12
|
+
:notification="notification"
|
|
12
13
|
>
|
|
13
14
|
<VcHint
|
|
14
15
|
v-if="notification.description"
|
|
@@ -17,18 +18,12 @@
|
|
|
17
18
|
>
|
|
18
19
|
</VcNotificationTemplate>
|
|
19
20
|
</template>
|
|
20
|
-
<div class="tw-flex tw-shrink-0">
|
|
21
|
-
<p class="tw-text-s tw-leading-[18px] tw-text-[#8e8e8e] tw-m-0">
|
|
22
|
-
{{ pushTime }}
|
|
23
|
-
</p>
|
|
24
|
-
</div>
|
|
25
21
|
</VcRow>
|
|
26
22
|
</div>
|
|
27
23
|
</template>
|
|
28
24
|
|
|
29
25
|
<script lang="ts" setup>
|
|
30
26
|
import { computed, h } from "vue";
|
|
31
|
-
import moment from "moment";
|
|
32
27
|
import { PushNotification } from "./../../../../../../core/api/platform";
|
|
33
28
|
import { VcRow, VcNotificationTemplate } from "./../../../../";
|
|
34
29
|
import { NotificationTemplateConstructor } from "./../../../../../../core/types";
|
|
@@ -42,23 +37,15 @@ export interface Emits {
|
|
|
42
37
|
(event: "onClick"): void;
|
|
43
38
|
}
|
|
44
39
|
|
|
45
|
-
const props =
|
|
46
|
-
notification: undefined,
|
|
47
|
-
});
|
|
40
|
+
const props = defineProps<Props>();
|
|
48
41
|
|
|
49
42
|
const emit = defineEmits<Emits>();
|
|
50
43
|
|
|
51
|
-
const locale = window.navigator.language;
|
|
52
|
-
|
|
53
44
|
const notificationStyle = computed(() => ({
|
|
54
45
|
color: "#A9BCCD",
|
|
55
46
|
icon: "fas fa-info",
|
|
56
47
|
}));
|
|
57
48
|
|
|
58
|
-
const pushTime = computed(() => {
|
|
59
|
-
return moment(props.notification.created).locale(locale).format("L LT");
|
|
60
|
-
});
|
|
61
|
-
|
|
62
49
|
const currentTemplate = computed(() => props.templates?.find((x) => x?.notifyType === props.notification.notifyType));
|
|
63
50
|
|
|
64
51
|
function notificationTemplateRenderer() {
|
|
@@ -1,33 +1,51 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="tw-flex tw-
|
|
3
|
-
<div
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
<VcIcon
|
|
8
|
-
:icon="icon"
|
|
9
|
-
size="l"
|
|
10
|
-
></VcIcon>
|
|
11
|
-
</div>
|
|
12
|
-
<div>
|
|
13
|
-
<p
|
|
14
|
-
class="tw-text-[color:var(--basic-black-color)] tw-text-xl tw-leading-[19px] tw-font-bold tw-m-0 tw-mb-1"
|
|
15
|
-
:class="{ 'tw-mr-4': $isDesktop.value }"
|
|
2
|
+
<div class="tw-flex flex-row tw-justify-between tw-grow tw-basis-0">
|
|
3
|
+
<div class="tw-flex tw-items-center">
|
|
4
|
+
<div
|
|
5
|
+
class="tw-w-[41px] tw-h-[41px] tw-rounded-full tw-text-white tw-mr-4 tw-flex tw-items-center tw-justify-center tw-shrink-0"
|
|
6
|
+
:style="{ 'background-color': color }"
|
|
16
7
|
>
|
|
17
|
-
|
|
8
|
+
<VcIcon
|
|
9
|
+
:icon="icon"
|
|
10
|
+
size="l"
|
|
11
|
+
></VcIcon>
|
|
12
|
+
</div>
|
|
13
|
+
<div>
|
|
14
|
+
<p
|
|
15
|
+
class="tw-text-[color:var(--basic-black-color)] tw-text-xl tw-leading-[19px] tw-font-bold tw-m-0 tw-mb-1"
|
|
16
|
+
:class="{ 'tw-mr-4': $isDesktop.value }"
|
|
17
|
+
>
|
|
18
|
+
{{ title }}
|
|
19
|
+
</p>
|
|
20
|
+
<slot></slot>
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
<div class="tw-flex tw-shrink-0">
|
|
24
|
+
<p class="tw-text-s tw-leading-[18px] tw-text-[#8e8e8e] tw-m-0">
|
|
25
|
+
{{ pushTime }}
|
|
18
26
|
</p>
|
|
19
|
-
<slot></slot>
|
|
20
27
|
</div>
|
|
21
28
|
</div>
|
|
22
29
|
</template>
|
|
23
30
|
|
|
24
31
|
<script setup lang="ts">
|
|
32
|
+
import { computed } from "vue";
|
|
25
33
|
import { VcIcon } from "./../../";
|
|
34
|
+
import moment from "moment";
|
|
35
|
+
import { PushNotification } from "../../../../core/api/platform";
|
|
36
|
+
|
|
26
37
|
export interface Props {
|
|
27
38
|
color: string;
|
|
28
39
|
icon: string;
|
|
29
40
|
title: string;
|
|
41
|
+
notification: PushNotification;
|
|
30
42
|
}
|
|
31
43
|
|
|
32
|
-
defineProps<Props>();
|
|
44
|
+
const props = defineProps<Props>();
|
|
45
|
+
|
|
46
|
+
const locale = window.navigator.language;
|
|
47
|
+
|
|
48
|
+
const pushTime = computed(() => {
|
|
49
|
+
return moment(props.notification.created).locale(locale).format("L LT");
|
|
50
|
+
});
|
|
33
51
|
</script>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<!-- Money cell -->
|
|
3
3
|
<template v-if="cell.type === 'money'">
|
|
4
|
-
<template v-if="value > 0">
|
|
4
|
+
<template v-if="typeof Number(value) === 'number' && Number(value) > 0">
|
|
5
5
|
<span>{{ Math.trunc(Number(value)) }}</span
|
|
6
6
|
><span class="tw-text-[#a5a5a5] tw-text-xs"
|
|
7
7
|
>.{{ `${(Number(value) * 100) % 100}`.padEnd(2, "0").slice(0, 2) }}</span
|
|
@@ -33,8 +33,8 @@
|
|
|
33
33
|
{{ moment(value).locale(locale).format(cell.format) }}
|
|
34
34
|
</template>
|
|
35
35
|
<template v-else>
|
|
36
|
-
<template v-if="cell.type === 'date'">{{ value.toLocaleDateString() }}</template>
|
|
37
|
-
<template v-if="cell.type === 'time'">{{ value.toLocaleTimeString() }}</template>
|
|
36
|
+
<template v-if="cell.type === 'date'">{{ value instanceof Date && value.toLocaleDateString() }}</template>
|
|
37
|
+
<template v-if="cell.type === 'time'">{{ value instanceof Date && value.toLocaleTimeString() }}</template>
|
|
38
38
|
<template v-if="cell.type === 'date-time'">{{ value.toLocaleString() }}</template>
|
|
39
39
|
</template>
|
|
40
40
|
</template>
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
:bordered="true"
|
|
48
48
|
size="s"
|
|
49
49
|
aspect="1x1"
|
|
50
|
-
:src="value"
|
|
50
|
+
:src="(value as string)"
|
|
51
51
|
background="contain"
|
|
52
52
|
/>
|
|
53
53
|
</template>
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
v-else-if="cell.type === 'status-icon'"
|
|
63
63
|
class="tw-flex tw-justify-center"
|
|
64
64
|
>
|
|
65
|
-
<VcStatusIcon :status="value"></VcStatusIcon>
|
|
65
|
+
<VcStatusIcon :status="(value as boolean)"></VcStatusIcon>
|
|
66
66
|
</div>
|
|
67
67
|
|
|
68
68
|
<!-- Number cell -->
|
|
@@ -97,7 +97,7 @@ export interface Props {
|
|
|
97
97
|
const props = defineProps<Props>();
|
|
98
98
|
|
|
99
99
|
const locale = window.navigator.language;
|
|
100
|
-
const value = computed(() => {
|
|
100
|
+
const value = computed((): unknown => {
|
|
101
101
|
return (props.cell.field || props.cell.id).split(".").reduce((p: { [x: string]: unknown }, c: string) => {
|
|
102
102
|
if (p && Array.isArray(p) && p.length) {
|
|
103
103
|
const val = p && p[0][c];
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
|
|
59
59
|
<script lang="ts" setup>
|
|
60
60
|
import { ref, watch, computed, nextTick } from "vue";
|
|
61
|
-
import { offset, computePosition, ComputePositionReturn } from "@floating-ui/vue";
|
|
61
|
+
import { offset, computePosition, ComputePositionReturn, ReferenceElement } from "@floating-ui/vue";
|
|
62
62
|
|
|
63
63
|
export interface Props {
|
|
64
64
|
title?: string;
|
|
@@ -100,10 +100,12 @@ function openPanel(isMobile: boolean) {
|
|
|
100
100
|
if (!isMobile) {
|
|
101
101
|
if (isPanelVisible.value) {
|
|
102
102
|
nextTick(() => {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
103
|
+
if (filterToggle.value && filterPanel.value) {
|
|
104
|
+
computePosition(filterToggle.value as ReferenceElement, filterPanel.value, {
|
|
105
|
+
placement: "bottom-end",
|
|
106
|
+
middleware: [offset(10)],
|
|
107
|
+
}).then((item) => (popper.value = item));
|
|
108
|
+
}
|
|
107
109
|
});
|
|
108
110
|
}
|
|
109
111
|
}
|
package/ui/components/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
<div
|
|
18
18
|
class="tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
|
|
19
19
|
:class="[`vc-table-mobile__item-action_${leftSwipeActions[0].variant}`]"
|
|
20
|
-
@click.stop="leftSwipeActions[0].clickHandler(item)"
|
|
20
|
+
@click.stop="leftSwipeActions[0].clickHandler(item as T)"
|
|
21
21
|
>
|
|
22
22
|
<VcIcon :icon="leftSwipeActions[0].icon"></VcIcon>
|
|
23
23
|
<div class="tw-mt-1 tw-text-lg">
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
<div
|
|
41
41
|
class="tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
|
|
42
42
|
:class="[`vc-table-mobile__item-action_${rightSwipeActions[0].variant}`]"
|
|
43
|
-
@click.stop="rightSwipeActions[0].clickHandler(item)"
|
|
43
|
+
@click.stop="rightSwipeActions[0].clickHandler(item as T)"
|
|
44
44
|
>
|
|
45
45
|
<VcIcon :icon="rightSwipeActions[0].icon"></VcIcon>
|
|
46
46
|
<div class="vc-table-mobile__item-action-text">
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
v-if="rightSwipeActions.length === 2"
|
|
54
54
|
class="tw-flex tw-grow tw-basis-[1] tw-flex-col tw-justify-center tw-items-center tw-text-white"
|
|
55
55
|
:class="[`vc-table-mobile__item-action_${rightSwipeActions[1].variant}`]"
|
|
56
|
-
@click.stop="rightSwipeActions[1].clickHandler(item)"
|
|
56
|
+
@click.stop="rightSwipeActions[1].clickHandler(item as T)"
|
|
57
57
|
>
|
|
58
58
|
<VcIcon :icon="rightSwipeActions[1].icon"></VcIcon>
|
|
59
59
|
<div class="tw-mt-1 tw-text-lg">
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
v-for="(itemAction, i) in itemActions"
|
|
100
100
|
:key="i"
|
|
101
101
|
class="tw-flex tw-grow tw-shrink-0 tw-flex-col tw-items-center tw-text-[#319ed4] tw-my-2 tw-box-border tw-p-1 tw-max-w-[80px]"
|
|
102
|
-
@click="itemAction.clickHandler(item)"
|
|
102
|
+
@click="itemAction.clickHandler(item as T)"
|
|
103
103
|
>
|
|
104
104
|
<VcIcon
|
|
105
105
|
:icon="itemAction.icon"
|
|
@@ -119,7 +119,7 @@
|
|
|
119
119
|
</template>
|
|
120
120
|
|
|
121
121
|
<script lang="ts" setup generic="T extends TableItem | string">
|
|
122
|
-
import { computed, ref, watch } from "vue";
|
|
122
|
+
import { Ref, computed, ref, watch } from "vue";
|
|
123
123
|
import { IActionBuilderResult } from "./../../../../../../core/types";
|
|
124
124
|
import { useI18n } from "vue-i18n";
|
|
125
125
|
|
|
@@ -133,16 +133,11 @@ export interface TableItem {
|
|
|
133
133
|
actions?: IActionBuilderResult[];
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
-
const props =
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
}>(),
|
|
142
|
-
{
|
|
143
|
-
swipingItem: null,
|
|
144
|
-
}
|
|
145
|
-
);
|
|
136
|
+
const props = defineProps<{
|
|
137
|
+
item: T;
|
|
138
|
+
actionBuilder?: (item: T) => IActionBuilderResult[];
|
|
139
|
+
swipingItem?: string;
|
|
140
|
+
}>();
|
|
146
141
|
|
|
147
142
|
const emit = defineEmits<Emits>();
|
|
148
143
|
const { t } = useI18n({ useScope: "global" });
|
|
@@ -154,7 +149,7 @@ const isMoving = ref(false);
|
|
|
154
149
|
const threshold = 10;
|
|
155
150
|
const maxWidth = 80;
|
|
156
151
|
const isActionsPopupVisible = ref(false);
|
|
157
|
-
const itemActions = ref([]);
|
|
152
|
+
const itemActions: Ref<IActionBuilderResult<T>[]> = ref([]);
|
|
158
153
|
|
|
159
154
|
watch(
|
|
160
155
|
() => props.swipingItem,
|