@vc-shell/framework 1.0.39 → 1.0.41
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/composables/usePermissions/index.ts +1 -1
- package/core/composables/useSettings/index.ts +31 -5
- package/core/types/index.ts +12 -12
- package/dist/core/composables/useSettings/index.d.ts +10 -1
- package/dist/core/composables/useSettings/index.d.ts.map +1 -1
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/framework.js +69 -69
- package/dist/framework.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/shared/blade-navigation/types/index.d.ts.map +1 -1
- package/dist/style.css +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/components/atoms/vc-badge/index.d.ts +5 -0
- package/dist/ui/components/atoms/vc-badge/index.d.ts.map +1 -0
- package/dist/ui/components/atoms/vc-badge/vc-badge-model.d.ts +28 -0
- package/dist/ui/components/atoms/vc-badge/vc-badge-model.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-badge/vc-badge.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-badge/vc-badge.stories.d.ts.map +1 -0
- package/dist/ui/components/atoms/vc-button/index.d.ts +5 -0
- package/dist/ui/components/atoms/vc-button/index.d.ts.map +1 -0
- package/dist/ui/components/atoms/vc-button/vc-button-model.d.ts +28 -0
- package/dist/ui/components/atoms/vc-button/vc-button-model.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-button/vc-button.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-button/vc-button.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-checkbox/vc-checkbox.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-checkbox/vc-checkbox.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-container/vc-container.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-container/vc-container.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-hint/vc-hint.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-hint/vc-hint.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-icon/vc-icon.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-icon/vc-icon.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-image/vc-image.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-image/vc-image.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-label/vc-label.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-label/vc-label.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-link/vc-link.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-link/vc-link.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-progress/vc-progress.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-progress/vc-progress.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-status/vc-status.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-status/vc-status.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/atoms/vc-switch/vc-switch.stories.d.ts +0 -0
- package/dist/ui/components/atoms/vc-switch/vc-switch.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/index.d.ts +4 -3
- package/dist/ui/components/index.d.ts.map +1 -0
- package/dist/{components → ui/components}/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.d.ts +0 -0
- package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/molecules/vc-form/vc-form.stories.d.ts +0 -0
- package/dist/ui/components/molecules/vc-form/vc-form.stories.d.ts.map +1 -0
- package/dist/ui/components/molecules/vc-input/index.d.ts +5 -0
- package/dist/ui/components/molecules/vc-input/index.d.ts.map +1 -0
- package/dist/ui/components/molecules/vc-input/vc-input-model.d.ts +140 -0
- package/dist/ui/components/molecules/vc-input/vc-input-model.d.ts.map +1 -0
- package/dist/ui/components/molecules/vc-input-currency/index.d.ts +5 -0
- package/dist/ui/components/molecules/vc-input-currency/index.d.ts.map +1 -0
- package/dist/ui/components/molecules/vc-input-currency/vc-input-currency-model.d.ts +124 -0
- package/dist/ui/components/molecules/vc-input-currency/vc-input-currency-model.d.ts.map +1 -0
- package/dist/{components → ui/components}/molecules/vc-pagination/vc-pagination.stories.d.ts +0 -0
- package/dist/ui/components/molecules/vc-pagination/vc-pagination.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/molecules/vc-rating/vc-rating.stories.d.ts +0 -0
- package/dist/ui/components/molecules/vc-rating/vc-rating.stories.d.ts.map +1 -0
- package/dist/ui/components/molecules/vc-select/index.d.ts +5 -0
- package/dist/ui/components/molecules/vc-select/index.d.ts.map +1 -0
- package/dist/ui/components/molecules/vc-select/vc-select-model.d.ts +207 -0
- package/dist/ui/components/molecules/vc-select/vc-select-model.d.ts.map +1 -0
- package/dist/{components → ui/components}/molecules/vc-textarea/vc-textarea.stories.d.ts +0 -0
- package/dist/ui/components/molecules/vc-textarea/vc-textarea.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/organisms/vc-app/vc-app.stories.d.ts +0 -0
- package/dist/ui/components/organisms/vc-app/vc-app.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/organisms/vc-blade/vc-blade.stories.d.ts +0 -0
- package/dist/ui/components/organisms/vc-blade/vc-blade.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/organisms/vc-login-form/vc-login-form.stories.d.ts +0 -0
- package/dist/ui/components/organisms/vc-login-form/vc-login-form.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/organisms/vc-popup/vc-popup.stories.d.ts +0 -0
- package/dist/ui/components/organisms/vc-popup/vc-popup.stories.d.ts.map +1 -0
- package/dist/{components → ui/components}/organisms/vc-table/vc-table.stories.d.ts +0 -0
- package/dist/ui/components/organisms/vc-table/vc-table.stories.d.ts.map +1 -0
- package/dist/ui/types/index.d.ts +13 -0
- package/dist/ui/types/index.d.ts.map +1 -0
- package/dist/ui/types/ts-helpers.d.ts +13 -0
- package/dist/ui/types/ts-helpers.d.ts.map +1 -0
- package/dist/vite.config.d.ts.map +1 -1
- package/package.json +27 -10
- package/shared/app-switcher/components/vc-app-switcher/vc-app-switcher.vue +13 -10
- package/shared/assets/components/assets-details/assets-details.vue +12 -12
- package/shared/blade-navigation/composables/useBladeNavigation/index.ts +4 -4
- package/shared/blade-navigation/types/index.ts +25 -25
- package/tailwind.config.js +4 -3
- package/ui/components/atoms/vc-badge/index.ts +7 -0
- package/ui/components/atoms/vc-badge/vc-badge-model.ts +30 -0
- package/{components → ui/components}/atoms/vc-badge/vc-badge.stories.ts +0 -0
- package/ui/components/atoms/vc-badge/vc-badge.vue +57 -0
- package/ui/components/atoms/vc-button/index.ts +7 -0
- package/ui/components/atoms/vc-button/vc-button-model.ts +30 -0
- package/{components → ui/components}/atoms/vc-button/vc-button.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-button/vc-button.vue +54 -54
- package/{components → ui/components}/atoms/vc-card/vc-card.vue +15 -15
- package/{components → ui/components}/atoms/vc-checkbox/vc-checkbox.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-checkbox/vc-checkbox.vue +21 -21
- package/{components → ui/components}/atoms/vc-col/vc-col.vue +2 -2
- package/{components → ui/components}/atoms/vc-container/vc-container.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-container/vc-container.vue +21 -19
- package/{components → ui/components}/atoms/vc-hint/vc-hint.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-hint/vc-hint.vue +1 -1
- package/{components → ui/components}/atoms/vc-icon/vc-icon.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-icon/vc-icon.vue +1 -1
- package/{components → ui/components}/atoms/vc-image/vc-image.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-image/vc-image.vue +9 -9
- package/{components → ui/components}/atoms/vc-info-row/vc-info-row.vue +3 -3
- package/{components → ui/components}/atoms/vc-label/vc-label.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-label/vc-label.vue +6 -6
- package/{components → ui/components}/atoms/vc-link/vc-link.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-link/vc-link.vue +3 -3
- package/ui/components/atoms/vc-loading/vc-loading.vue +33 -0
- package/{components → ui/components}/atoms/vc-progress/vc-progress.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-progress/vc-progress.vue +2 -2
- package/{components → ui/components}/atoms/vc-row/vc-row.vue +1 -1
- package/{components → ui/components}/atoms/vc-status/vc-status.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-status/vc-status.vue +4 -4
- package/{components → ui/components}/atoms/vc-status-icon/vc-status-icon.vue +3 -3
- package/{components → ui/components}/atoms/vc-switch/vc-switch.stories.ts +0 -0
- package/{components → ui/components}/atoms/vc-switch/vc-switch.vue +10 -10
- package/{components → ui/components}/atoms/vc-widget/vc-widget.vue +12 -12
- package/{components → ui/components}/index.ts +4 -3
- package/{components → ui/components}/molecules/vc-breadcrumbs/_internal/vc-breadcrumbs-item/vc-breadcrumbs-item.vue +17 -17
- package/{components → ui/components}/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.ts +0 -0
- package/{components → ui/components}/molecules/vc-breadcrumbs/vc-breadcrumbs.vue +1 -1
- package/{components/molecules/vc-input → ui/components/molecules/vc-currency-input}/vc-input.vue +30 -37
- package/{components → ui/components}/molecules/vc-editor/vc-editor.vue +4 -4
- package/{components → ui/components}/molecules/vc-file-upload/vc-file-upload.vue +6 -6
- package/{components → ui/components}/molecules/vc-form/vc-form.stories.ts +0 -0
- package/{components → ui/components}/molecules/vc-form/vc-form.vue +0 -0
- package/ui/components/molecules/vc-input/index.ts +8 -0
- package/ui/components/molecules/vc-input/vc-input-model.ts +150 -0
- package/ui/components/molecules/vc-input/vc-input.vue +324 -0
- package/ui/components/molecules/vc-input-currency/index.ts +8 -0
- package/ui/components/molecules/vc-input-currency/vc-input-currency-model.ts +128 -0
- package/ui/components/molecules/vc-input-currency/vc-input-currency.vue +86 -0
- package/{components → ui/components}/molecules/vc-multivalue/vc-multivalue.vue +41 -41
- package/{components → ui/components}/molecules/vc-notification/vc-notification.vue +5 -5
- package/{components → ui/components}/molecules/vc-pagination/vc-pagination.stories.ts +0 -0
- package/{components → ui/components}/molecules/vc-pagination/vc-pagination.vue +24 -24
- package/{components → ui/components}/molecules/vc-rating/vc-rating.stories.ts +0 -0
- package/{components → ui/components}/molecules/vc-rating/vc-rating.vue +6 -6
- package/ui/components/molecules/vc-select/index.ts +7 -0
- package/ui/components/molecules/vc-select/vc-select-model.ts +216 -0
- package/ui/components/molecules/vc-select/vc-select.vue +727 -0
- package/{components → ui/components}/molecules/vc-slider/vc-slider.vue +12 -12
- package/{components → ui/components}/molecules/vc-textarea/vc-textarea.stories.ts +0 -0
- package/{components → ui/components}/molecules/vc-textarea/vc-textarea.vue +17 -17
- package/{components → ui/components}/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue +20 -16
- package/{components → ui/components}/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue +31 -31
- package/{components → ui/components}/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/vc-app-menu-item.vue +9 -9
- package/{components → ui/components}/organisms/vc-app/_internal/vc-app-menu/vc-app-menu.vue +11 -11
- package/{components → ui/components}/organisms/vc-app/vc-app.stories.ts +0 -0
- package/{components → ui/components}/organisms/vc-app/vc-app.vue +9 -11
- package/{components → ui/components}/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue +10 -10
- package/{components → ui/components}/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-button/vc-blade-toolbar-button.vue +17 -17
- package/{components → ui/components}/organisms/vc-blade/_internal/vc-blade-toolbar/vc-blade-toolbar.vue +4 -4
- package/{components → ui/components}/organisms/vc-blade/vc-blade.stories.ts +0 -0
- package/{components → ui/components}/organisms/vc-blade/vc-blade.vue +5 -5
- package/ui/components/organisms/vc-dynamic-property/vc-dynamic-property.vue +426 -0
- package/{components → ui/components}/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue +12 -12
- package/{components → ui/components}/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue +9 -9
- package/{components → ui/components}/organisms/vc-gallery/vc-gallery.vue +6 -6
- package/{components → ui/components}/organisms/vc-login-form/vc-login-form.stories.ts +6 -6
- package/{components → ui/components}/organisms/vc-login-form/vc-login-form.vue +5 -5
- package/{components → ui/components}/organisms/vc-popup/vc-popup.stories.ts +0 -0
- package/{components → ui/components}/organisms/vc-popup/vc-popup.vue +13 -13
- package/{components → ui/components}/organisms/vc-table/_internal/vc-table-cell/vc-table-cell.vue +6 -6
- package/{components → ui/components}/organisms/vc-table/_internal/vc-table-counter/vc-table-counter.vue +3 -3
- package/{components → ui/components}/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue +13 -13
- package/{components → ui/components}/organisms/vc-table/_internal/vc-table-mobile-item/vc-table-mobile-item.vue +23 -23
- package/{components → ui/components}/organisms/vc-table/vc-table.stories.ts +3 -3
- package/{components → ui/components}/organisms/vc-table/vc-table.vue +42 -42
- package/ui/types/index.ts +38 -0
- package/ui/types/ts-helpers.ts +46 -0
- package/components/atoms/vc-badge/vc-badge.vue +0 -63
- package/components/atoms/vc-loading/vc-loading.vue +0 -30
- package/components/molecules/vc-input/vc-input.stories.ts +0 -26
- package/components/molecules/vc-select/vc-select.stories.ts +0 -25
- package/components/molecules/vc-select/vc-select.vue +0 -402
- package/components/organisms/vc-dynamic-property/vc-dynamic-property.vue +0 -292
- package/dist/components/atoms/vc-badge/vc-badge.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-button/vc-button.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-checkbox/vc-checkbox.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-container/vc-container.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-hint/vc-hint.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-icon/vc-icon.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-image/vc-image.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-label/vc-label.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-link/vc-link.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-progress/vc-progress.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-status/vc-status.stories.d.ts.map +0 -1
- package/dist/components/atoms/vc-switch/vc-switch.stories.d.ts.map +0 -1
- package/dist/components/index.d.ts.map +0 -1
- package/dist/components/molecules/vc-breadcrumbs/vc-breadcrumbs.stories.d.ts.map +0 -1
- package/dist/components/molecules/vc-form/vc-form.stories.d.ts.map +0 -1
- package/dist/components/molecules/vc-input/vc-input.stories.d.ts +0 -7
- package/dist/components/molecules/vc-input/vc-input.stories.d.ts.map +0 -1
- package/dist/components/molecules/vc-pagination/vc-pagination.stories.d.ts.map +0 -1
- package/dist/components/molecules/vc-rating/vc-rating.stories.d.ts.map +0 -1
- package/dist/components/molecules/vc-select/vc-select.stories.d.ts +0 -7
- package/dist/components/molecules/vc-select/vc-select.stories.d.ts.map +0 -1
- package/dist/components/molecules/vc-textarea/vc-textarea.stories.d.ts.map +0 -1
- package/dist/components/organisms/vc-app/vc-app.stories.d.ts.map +0 -1
- package/dist/components/organisms/vc-blade/vc-blade.stories.d.ts.map +0 -1
- package/dist/components/organisms/vc-login-form/vc-login-form.stories.d.ts.map +0 -1
- package/dist/components/organisms/vc-popup/vc-popup.stories.d.ts.map +0 -1
- package/dist/components/organisms/vc-table/vc-table.stories.d.ts.map +0 -1
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="vc-slider relative">
|
|
2
|
+
<div class="vc-slider tw-relative">
|
|
3
3
|
<swiper-component
|
|
4
4
|
:class="[
|
|
5
5
|
'vc-slider__swiper',
|
|
6
6
|
{
|
|
7
|
-
'overflow-visible': overflow,
|
|
8
|
-
'px-[40px]': navigation,
|
|
7
|
+
'tw-overflow-visible': overflow,
|
|
8
|
+
'tw-px-[40px]': navigation,
|
|
9
9
|
},
|
|
10
10
|
]"
|
|
11
11
|
:space-between="spaceBetweenSlides"
|
|
@@ -19,14 +19,14 @@
|
|
|
19
19
|
</swiper-component>
|
|
20
20
|
<!-- Navigation buttons-->
|
|
21
21
|
<div v-show="navigation">
|
|
22
|
-
<div class="vc-slider__prev left-0">
|
|
22
|
+
<div class="vc-slider__prev tw-left-0">
|
|
23
23
|
<slot name="prevBtn">
|
|
24
24
|
<div class="vc-slider__btn">
|
|
25
25
|
<VcIcon icon="fas fa-chevron-left"></VcIcon>
|
|
26
26
|
</div>
|
|
27
27
|
</slot>
|
|
28
28
|
</div>
|
|
29
|
-
<div class="vc-slider__next right-0">
|
|
29
|
+
<div class="vc-slider__next tw-right-0">
|
|
30
30
|
<slot name="nextBtn">
|
|
31
31
|
<div class="vc-slider__btn">
|
|
32
32
|
<VcIcon icon="fas fa-chevron-right"></VcIcon>
|
|
@@ -83,24 +83,24 @@ const buttonsList = computed(() => ({
|
|
|
83
83
|
.vc-slider {
|
|
84
84
|
&__swiper {
|
|
85
85
|
.swiper-slide {
|
|
86
|
-
@apply w-auto;
|
|
86
|
+
@apply tw-w-auto;
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
&__next,
|
|
91
91
|
&__prev {
|
|
92
|
-
@apply absolute top-2/4 -translate-y-2/4 z-[2];
|
|
92
|
+
@apply tw-absolute tw-top-2/4 -tw-translate-y-2/4 tw-z-[2];
|
|
93
93
|
|
|
94
94
|
&.swiper-button-disabled .vc-slider__btn {
|
|
95
|
-
@apply text-[#999999];
|
|
95
|
+
@apply tw-text-[#999999];
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
&__btn {
|
|
100
|
-
@apply bg-white border border-solid border-[#eaecf2]
|
|
101
|
-
box-border rounded-[3px]
|
|
102
|
-
flex items-center justify-center
|
|
103
|
-
text-[#43b0e6] w-[30px] h-[30px];
|
|
100
|
+
@apply tw-bg-white tw-border tw-border-solid tw-border-[#eaecf2]
|
|
101
|
+
tw-box-border tw-rounded-[3px]
|
|
102
|
+
tw-flex tw-items-center tw-justify-center
|
|
103
|
+
tw-text-[#43b0e6] tw-w-[30px] tw-h-[30px];
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
106
|
</style>
|
|
File without changes
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
}"
|
|
8
8
|
>
|
|
9
9
|
<!-- Textarea label -->
|
|
10
|
-
<VcLabel v-if="label" class="mb-2" :required="isRequired">
|
|
10
|
+
<VcLabel v-if="label" class="tw-mb-2" :required="isRequired">
|
|
11
11
|
<span>{{ label }}</span>
|
|
12
12
|
<template v-if="tooltip" v-slot:tooltip>
|
|
13
13
|
<span v-html="tooltip"></span>
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
|
|
37
37
|
<script lang="ts" setup>
|
|
38
38
|
import { watch } from "vue";
|
|
39
|
-
import { VcLabel } from "@/components";
|
|
39
|
+
import { VcLabel } from "@/ui/components";
|
|
40
40
|
|
|
41
41
|
const props = defineProps({
|
|
42
42
|
placeholder: {
|
|
@@ -113,43 +113,43 @@ function onInput(e: InputEvent) {
|
|
|
113
113
|
|
|
114
114
|
.vc-textarea {
|
|
115
115
|
&__field-wrapper {
|
|
116
|
-
@apply border border-solid
|
|
117
|
-
border-[color:var(--textarea-border-color)]
|
|
118
|
-
rounded-[var(--textarea-border-radius)]
|
|
119
|
-
box-border
|
|
120
|
-
bg-[color:var(--textarea-background-color)] flex items-stretch;
|
|
116
|
+
@apply tw-border tw-border-solid
|
|
117
|
+
tw-border-[color:var(--textarea-border-color)]
|
|
118
|
+
tw-rounded-[var(--textarea-border-radius)]
|
|
119
|
+
tw-box-border
|
|
120
|
+
tw-bg-[color:var(--textarea-background-color)] tw-flex tw-items-stretch;
|
|
121
121
|
}
|
|
122
122
|
|
|
123
123
|
&_error &__field-wrapper {
|
|
124
|
-
@apply border border-solid border-[color:var(--textarea-border-color-error)];
|
|
124
|
+
@apply tw-border tw-border-solid tw-border-[color:var(--textarea-border-color-error)];
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
&__error {
|
|
128
|
-
@apply text-[color:var(--textarea-border-color-error)] mt-1 #{!important};
|
|
128
|
+
@apply tw-text-[color:var(--textarea-border-color-error)] tw-mt-1 #{!important};
|
|
129
129
|
}
|
|
130
130
|
|
|
131
131
|
&__field {
|
|
132
|
-
@apply w-full resize-y box-border border-none outline-none
|
|
133
|
-
min-h-[var(--textarea-height)]
|
|
134
|
-
placeholder:text-[color:var(--textarea-placeholder-color)]
|
|
135
|
-
px-3 py-2;
|
|
132
|
+
@apply tw-w-full tw-resize-y tw-box-border tw-border-none tw-outline-none
|
|
133
|
+
tw-min-h-[var(--textarea-height)]
|
|
134
|
+
placeholder:tw-text-[color:var(--textarea-placeholder-color)]
|
|
135
|
+
tw-px-3 tw-py-2;
|
|
136
136
|
|
|
137
137
|
&::-webkit-input-placeholder {
|
|
138
|
-
@apply text-[color:var(--textarea-placeholder-color)];
|
|
138
|
+
@apply tw-text-[color:var(--textarea-placeholder-color)];
|
|
139
139
|
}
|
|
140
140
|
|
|
141
141
|
&::-moz-placeholder {
|
|
142
|
-
@apply text-[color:var(--textarea-placeholder-color)];
|
|
142
|
+
@apply tw-text-[color:var(--textarea-placeholder-color)];
|
|
143
143
|
}
|
|
144
144
|
|
|
145
145
|
&::-ms-placeholder {
|
|
146
|
-
@apply text-[color:var(--textarea-placeholder-color)];
|
|
146
|
+
@apply tw-text-[color:var(--textarea-placeholder-color)];
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
149
|
|
|
150
150
|
&_disabled &__field-wrapper,
|
|
151
151
|
&_disabled &__field {
|
|
152
|
-
@apply bg-[#fafafa] text-[#424242];
|
|
152
|
+
@apply tw-bg-[#fafafa] tw-text-[#424242];
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
155
|
</style>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
|
-
class="relative flex items-center content-between h-[var(--app-bar-height)] bg-[color:var(--app-bar-background-color)] pl-4"
|
|
3
|
+
class="tw-relative tw-flex tw-items-center tw-content-between tw-h-[var(--app-bar-height)] tw-bg-[color:var(--app-bar-background-color)] tw-pl-4"
|
|
4
4
|
>
|
|
5
5
|
<slot name="appSwitcher"></slot>
|
|
6
6
|
<!-- Logo container for mobile devices -->
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
<!-- Show logo on mobile dashboard -->
|
|
9
9
|
<img
|
|
10
10
|
v-if="blades.length === 0"
|
|
11
|
-
class="h-3/6 cursor-pointer"
|
|
11
|
+
class="h-3/6 tw-cursor-pointer"
|
|
12
|
+
alt="logo"
|
|
12
13
|
:src="logo"
|
|
13
14
|
@click="$emit('logo:click')"
|
|
14
15
|
/>
|
|
@@ -16,7 +17,7 @@
|
|
|
16
17
|
<!-- Show blades name when at least one blade is opened -->
|
|
17
18
|
<div
|
|
18
19
|
v-else-if="blades.length === 1"
|
|
19
|
-
class="overflow-ellipsis overflow-hidden whitespace-nowrap text-2xl leading-header"
|
|
20
|
+
class="tw-overflow-ellipsis tw-overflow-hidden tw-whitespace-nowrap tw-text-2xl tw-leading-header"
|
|
20
21
|
>
|
|
21
22
|
{{ blades[0].title }}
|
|
22
23
|
</div>
|
|
@@ -24,19 +25,20 @@
|
|
|
24
25
|
<!-- Show back link when more than one blade is opened -->
|
|
25
26
|
<VcLink v-else @click="$emit('backlink:click')">
|
|
26
27
|
<VcIcon icon="fas fa-chevron-left" size="s"></VcIcon>
|
|
27
|
-
<span class="ml-2 text-lg">{{ $t("Back") }}</span>
|
|
28
|
+
<span class="tw-ml-2 tw-text-lg">{{ $t("Back") }}</span>
|
|
28
29
|
</VcLink>
|
|
29
30
|
</template>
|
|
30
31
|
|
|
31
32
|
<!-- Logo container for desktop devices -->
|
|
32
33
|
<template v-else>
|
|
33
34
|
<img
|
|
34
|
-
class="h-3/6 cursor-pointer"
|
|
35
|
+
class="tw-h-3/6 tw-cursor-pointer"
|
|
35
36
|
:src="logo"
|
|
37
|
+
alt="logo"
|
|
36
38
|
@click="$emit('logo:click')"
|
|
37
39
|
/>
|
|
38
40
|
<div
|
|
39
|
-
class="text-[color:var(--app-bar-version-color)] text-xs ml-[30px]"
|
|
41
|
+
class="tw-text-[color:var(--app-bar-version-color)] tw-text-xs tw-ml-[30px]"
|
|
40
42
|
@click="$emit('version:click')"
|
|
41
43
|
>
|
|
42
44
|
{{ version }}
|
|
@@ -45,17 +47,17 @@
|
|
|
45
47
|
|
|
46
48
|
<!-- Product name slot -->
|
|
47
49
|
<div
|
|
48
|
-
class="text-[color:var(--app-bar-product-name-color)] text-[length:var(--app-bar-product-name-size)] font-medium ml-[30px]"
|
|
49
|
-
v-if="
|
|
50
|
+
class="tw-text-[color:var(--app-bar-product-name-color)] tw-text-[length:var(--app-bar-product-name-size)] tw-font-medium tw-ml-[30px]"
|
|
51
|
+
v-if="title"
|
|
50
52
|
>
|
|
51
|
-
|
|
53
|
+
{{ title }}
|
|
52
54
|
</div>
|
|
53
55
|
|
|
54
56
|
<!-- Additional spacer -->
|
|
55
|
-
<div class="grow basis-0 basis-0"></div>
|
|
57
|
+
<div class="tw-grow tw-basis-0 tw-basis-0"></div>
|
|
56
58
|
|
|
57
59
|
<!-- Toolbar container -->
|
|
58
|
-
<div class="flex h-full box-border">
|
|
60
|
+
<div class="tw-flex tw-h-full tw-box-border">
|
|
59
61
|
<template v-for="(item, index) in buttons" :key="index">
|
|
60
62
|
<template v-if="item.isVisible === undefined || item.isVisible">
|
|
61
63
|
<!-- Draw custom component is it is passed -->
|
|
@@ -69,7 +71,7 @@
|
|
|
69
71
|
<!-- Otherwise draw default toolbar button -->
|
|
70
72
|
<div
|
|
71
73
|
v-else
|
|
72
|
-
class="relative flex items-center justify-center w-[var(--app-bar-button-width)] border-l border-solid border-[color:var(--app-bar-button-border-color)] cursor-pointer text-[color: var(--app-bar-button-color)] bg-[color:var(--app-bar-button-background-color)] transition-[color] duration-200 hover:text-[color:var(--app-bar-button-color-hover)] hover:bg-[color:var(--app-bar-button-background-color-hover)]"
|
|
74
|
+
class="tw-relative tw-flex tw-items-center tw-justify-center tw-w-[var(--app-bar-button-width)] tw-border-l tw-border-solid tw-border-[color:var(--app-bar-button-border-color)] tw-cursor-pointer tw-text-[color: var(--app-bar-button-color)] tw-bg-[color:var(--app-bar-button-background-color)] tw-transition-[color] tw-duration-200 hover:tw-text-[color:var(--app-bar-button-color-hover)] hover:tw-bg-[color:var(--app-bar-button-background-color-hover)]"
|
|
73
75
|
:class="{ 'vc-app-bar__button_accent': item.isAccent }"
|
|
74
76
|
:title="item.title"
|
|
75
77
|
@click="$emit('button:click', item)"
|
|
@@ -86,7 +88,7 @@
|
|
|
86
88
|
<!-- Show menu toggler on mobile devices -->
|
|
87
89
|
<div
|
|
88
90
|
v-if="$isMobile.value"
|
|
89
|
-
class="text-[#319ed4] w-[var(--app-bar-button-width)] flex items-center justify-center h-full box-border"
|
|
91
|
+
class="tw-text-[#319ed4] tw-w-[var(--app-bar-button-width)] tw-flex tw-items-center tw-justify-center tw-h-full tw-box-border tw-cursor-pointer"
|
|
90
92
|
@click="$emit('menubutton:click')"
|
|
91
93
|
>
|
|
92
94
|
<VcIcon icon="fas fa-bars"></VcIcon>
|
|
@@ -95,14 +97,16 @@
|
|
|
95
97
|
</template>
|
|
96
98
|
|
|
97
99
|
<script lang="ts" setup>
|
|
98
|
-
import { VcIcon } from "@/components";
|
|
99
|
-
import { IBladeToolbar
|
|
100
|
+
import { VcIcon } from "@/ui/components";
|
|
101
|
+
import { IBladeToolbar } from "@/core/types";
|
|
102
|
+
import { IBladeElement } from "@/shared";
|
|
100
103
|
|
|
101
104
|
export interface Props {
|
|
102
105
|
logo: string;
|
|
103
106
|
version: string;
|
|
104
107
|
blades: IBladeElement[];
|
|
105
108
|
buttons: IBladeToolbar[];
|
|
109
|
+
title?: string;
|
|
106
110
|
}
|
|
107
111
|
|
|
108
112
|
withDefaults(defineProps<Props>(), {
|
|
@@ -139,7 +143,7 @@ defineEmits([
|
|
|
139
143
|
.vc-app-bar {
|
|
140
144
|
&__button {
|
|
141
145
|
&_accent:before {
|
|
142
|
-
@apply content-[""] block absolute right-3 top-[18px] w-[7px] h-[7px] bg-[#ff4a4a] rounded-full z-[1];
|
|
146
|
+
@apply tw-content-[""] tw-block tw-absolute tw-right-3 tw-top-[18px] tw-w-[7px] tw-h-[7px] tw-bg-[#ff4a4a] tw-rounded-full tw-z-[1];
|
|
143
147
|
}
|
|
144
148
|
}
|
|
145
149
|
}
|
|
@@ -68,80 +68,80 @@ defineEmits<Emits>();
|
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
.vc-app-menu-item {
|
|
71
|
-
@apply flex items-center w-full h-[var(--app-menu-item-height)]
|
|
72
|
-
border-none
|
|
73
|
-
flex-nowrap box-border cursor-pointer relative uppercase;
|
|
71
|
+
@apply tw-flex tw-items-center tw-w-full tw-h-[var(--app-menu-item-height)]
|
|
72
|
+
tw-border-none
|
|
73
|
+
tw-flex-nowrap tw-box-border tw-cursor-pointer tw-relative tw-uppercase;
|
|
74
74
|
|
|
75
75
|
&_active {
|
|
76
|
-
@apply bg-[color:var(--app-menu-item-background-color-hover)]
|
|
77
|
-
rounded-[var(--app-menu-item-hover-radius)]
|
|
78
|
-
before:opacity-100;
|
|
76
|
+
@apply tw-bg-[color:var(--app-menu-item-background-color-hover)]
|
|
77
|
+
tw-rounded-[var(--app-menu-item-hover-radius)]
|
|
78
|
+
before:tw-opacity-100;
|
|
79
79
|
}
|
|
80
80
|
|
|
81
81
|
&__handler {
|
|
82
|
-
@apply w-[var(--app-menu-item-handler-width)]
|
|
83
|
-
text-[color:var(--app-menu-item-handler-color)]
|
|
84
|
-
text-center invisible shrink-0;
|
|
82
|
+
@apply tw-w-[var(--app-menu-item-handler-width)]
|
|
83
|
+
tw-text-[color:var(--app-menu-item-handler-color)]
|
|
84
|
+
tw-text-center tw-invisible tw-shrink-0;
|
|
85
85
|
|
|
86
86
|
&_enabled {
|
|
87
|
-
@apply cursor-move;
|
|
87
|
+
@apply tw-cursor-move;
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
|
|
91
91
|
&__icon {
|
|
92
|
-
@apply w-[var(--app-menu-item-icon-width)]
|
|
93
|
-
text-[color:var(--app-menu-item-icon-color)]
|
|
94
|
-
overflow-hidden flex
|
|
95
|
-
justify-center shrink-0
|
|
92
|
+
@apply tw-w-[var(--app-menu-item-icon-width)]
|
|
93
|
+
tw-text-[color:var(--app-menu-item-icon-color)]
|
|
94
|
+
tw-overflow-hidden tw-flex
|
|
95
|
+
tw-justify-center tw-shrink-0 tw-transition-[color] tw-duration-200;
|
|
96
96
|
}
|
|
97
97
|
|
|
98
98
|
&_active &__icon {
|
|
99
|
-
@apply text-[color:var(--app-menu-item-icon-color-active)];
|
|
99
|
+
@apply tw-text-[color:var(--app-menu-item-icon-color-active)];
|
|
100
100
|
}
|
|
101
101
|
|
|
102
102
|
&__title {
|
|
103
|
-
@apply truncate
|
|
104
|
-
text-lg
|
|
105
|
-
font-medium
|
|
106
|
-
px-3
|
|
107
|
-
text-[color:var(--app-menu-item-title-color)]
|
|
103
|
+
@apply tw-truncate
|
|
104
|
+
tw-text-lg
|
|
105
|
+
tw-font-medium
|
|
106
|
+
tw-px-3
|
|
107
|
+
tw-text-[color:var(--app-menu-item-title-color)]
|
|
108
108
|
[transition:color_0.2s_ease] [transition:opacity_0.1s_ease]
|
|
109
|
-
opacity-100 w-full;
|
|
109
|
+
tw-opacity-100 tw-w-full;
|
|
110
110
|
}
|
|
111
111
|
|
|
112
112
|
&__title-icon {
|
|
113
|
-
@apply text-[color:var(--app-menu-item-icon-color)] ml-3;
|
|
113
|
+
@apply tw-text-[color:var(--app-menu-item-icon-color)] tw-ml-3;
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
&_active &__title {
|
|
117
|
-
@apply text-[color:var(--app-menu-item-title-color-active)]
|
|
118
|
-
font-bold;
|
|
117
|
+
@apply tw-text-[color:var(--app-menu-item-title-color-active)]
|
|
118
|
+
tw-font-bold;
|
|
119
119
|
}
|
|
120
120
|
|
|
121
121
|
&_active &__title-icon {
|
|
122
|
-
@apply text-[color:var(--app-menu-item-icon-color-active)];
|
|
122
|
+
@apply tw-text-[color:var(--app-menu-item-icon-color-active)];
|
|
123
123
|
}
|
|
124
124
|
|
|
125
125
|
&:hover {
|
|
126
|
-
@apply bg-[color:var(--app-menu-item-background-color-hover)]
|
|
127
|
-
rounded-[var(--app-menu-item-hover-radius)];
|
|
126
|
+
@apply tw-bg-[color:var(--app-menu-item-background-color-hover)]
|
|
127
|
+
tw-rounded-[var(--app-menu-item-hover-radius)];
|
|
128
128
|
}
|
|
129
129
|
|
|
130
130
|
&:hover &__title {
|
|
131
|
-
@apply text-[color:var(--app-menu-item-title-color-active)];
|
|
131
|
+
@apply tw-text-[color:var(--app-menu-item-title-color-active)];
|
|
132
132
|
}
|
|
133
133
|
|
|
134
134
|
&:hover &__icon {
|
|
135
|
-
@apply text-[color:var(--app-menu-item-icon-color-active)];
|
|
135
|
+
@apply tw-text-[color:var(--app-menu-item-icon-color-active)];
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
&:hover &__title-icon {
|
|
139
|
-
@apply text-[color:var(--app-menu-item-icon-color-active)];
|
|
139
|
+
@apply tw-text-[color:var(--app-menu-item-icon-color-active)];
|
|
140
140
|
}
|
|
141
141
|
|
|
142
142
|
&:hover &__handler {
|
|
143
143
|
&_enabled {
|
|
144
|
-
@apply invisible;
|
|
144
|
+
@apply tw-invisible;
|
|
145
145
|
}
|
|
146
146
|
}
|
|
147
147
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
:sticky="sticky"
|
|
9
9
|
:icon="icon"
|
|
10
10
|
:title="title"
|
|
11
|
-
@onClick="onMenuItemClick(navigate)"
|
|
11
|
+
@onClick="onMenuItemClick(() => navigate($event))"
|
|
12
12
|
/>
|
|
13
13
|
</router-link>
|
|
14
14
|
</template>
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
import { onMounted, ref, computed } from "vue";
|
|
57
57
|
import { ExtendedComponent, IMenuItems } from "@/core/types";
|
|
58
58
|
import VcAppMenuLink from "./_internal/vc-app-menu-link.vue";
|
|
59
|
-
import {NavigationFailure, useRoute} from "vue-router";
|
|
59
|
+
import { NavigationFailure, useRoute } from "vue-router";
|
|
60
60
|
|
|
61
61
|
export interface Props {
|
|
62
62
|
sticky?: boolean;
|
|
@@ -102,7 +102,7 @@ const emit = defineEmits<Emits>();
|
|
|
102
102
|
|
|
103
103
|
const isOpened = ref(false);
|
|
104
104
|
|
|
105
|
-
const isHomePage = computed(() => route.path ===
|
|
105
|
+
const isHomePage = computed(() => route.path === "/");
|
|
106
106
|
|
|
107
107
|
onMounted(() => {
|
|
108
108
|
if (
|
|
@@ -140,17 +140,17 @@ function onMenuItemClick(
|
|
|
140
140
|
}
|
|
141
141
|
.vc-app-menu-item {
|
|
142
142
|
&__child {
|
|
143
|
-
@apply ml-[42px] gap-[4px] flex flex-col;
|
|
143
|
+
@apply tw-ml-[42px] tw-gap-[4px] tw-flex tw-flex-col;
|
|
144
144
|
}
|
|
145
145
|
|
|
146
146
|
&__child-item {
|
|
147
|
-
@apply cursor-pointer w-fit py-[5px] px-[9px] rounded-[4px]
|
|
148
|
-
hover:bg-[color:var(--app-menu-item-background-color-hover)]
|
|
149
|
-
hover:text-[color:var(--app-menu-item-title-color-active)];
|
|
147
|
+
@apply tw-cursor-pointer tw-w-fit tw-py-[5px] tw-px-[9px] tw-rounded-[4px]
|
|
148
|
+
hover:tw-bg-[color:var(--app-menu-item-background-color-hover)]
|
|
149
|
+
hover:tw-text-[color:var(--app-menu-item-title-color-active)];
|
|
150
150
|
|
|
151
151
|
&_active {
|
|
152
|
-
@apply bg-[color:var(--app-menu-item-background-color-hover)]
|
|
153
|
-
text-[color:var(--app-menu-item-title-color-active)] font-bold;
|
|
152
|
+
@apply tw-bg-[color:var(--app-menu-item-background-color-hover)]
|
|
153
|
+
tw-text-[color:var(--app-menu-item-title-color-active)] tw-font-bold;
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
156
|
}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
|
-
class="relative w-[var(--app-menu-width)] transition duration-100 pt-4"
|
|
3
|
+
class="tw-relative tw-w-[var(--app-menu-width)] tw-transition tw-duration-100 tw-pt-4"
|
|
4
4
|
:class="{
|
|
5
|
-
'vc-app-menu_mobile hidden !fixed !left-0 !top-0 !w-full !bottom-0 !z-[9999]':
|
|
5
|
+
'vc-app-menu_mobile tw-hidden !tw-fixed !tw-left-0 !tw-top-0 !tw-w-full !tw-bottom-0 !tw-z-[9999]':
|
|
6
6
|
$isMobile.value,
|
|
7
|
-
'!block': isMobileVisible,
|
|
7
|
+
'!tw-block': isMobileVisible,
|
|
8
8
|
}"
|
|
9
9
|
>
|
|
10
10
|
<!-- Show backdrop overlay on mobile devices -->
|
|
11
11
|
<div
|
|
12
12
|
v-if="$isMobile.value"
|
|
13
|
-
class="absolute left-0 top-0 right-0 bottom-0 z-[9998] bg-[#808c99] opacity-60"
|
|
13
|
+
class="tw-absolute tw-left-0 tw-top-0 tw-right-0 tw-bottom-0 tw-z-[9998] tw-bg-[#808c99] tw-opacity-60"
|
|
14
14
|
@click="isMobileVisible = false"
|
|
15
15
|
></div>
|
|
16
|
-
<div class="vc-app-menu__inner flex flex-col h-full">
|
|
16
|
+
<div class="vc-app-menu__inner tw-flex tw-flex-col tw-h-full">
|
|
17
17
|
<!-- Show menu close handler on mobile devices -->
|
|
18
18
|
<div
|
|
19
19
|
v-if="$isMobile.value"
|
|
20
|
-
class="text-[#319ed4] flex justify-end items-center p-4"
|
|
20
|
+
class="tw-text-[#319ed4] tw-flex tw-justify-end tw-items-center tw-p-4"
|
|
21
21
|
>
|
|
22
22
|
<VcIcon
|
|
23
23
|
icon="fas fa-times"
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
</div>
|
|
28
28
|
|
|
29
29
|
<!-- Show scrollable area with menu items -->
|
|
30
|
-
<VcContainer :noPadding="true" class="grow basis-0">
|
|
31
|
-
<div class="gap-[5px] flex flex-col px-4">
|
|
30
|
+
<VcContainer :noPadding="true" class="tw-grow tw-basis-0">
|
|
31
|
+
<div class="tw-gap-[5px] tw-flex tw-flex-col tw-px-4">
|
|
32
32
|
<template
|
|
33
33
|
v-for="(item, index) in mobileMenuItems"
|
|
34
34
|
:key="`info_item_${index}`"
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
v-if="item.component"
|
|
39
39
|
:is="item.component"
|
|
40
40
|
v-bind="item.bladeOptions"
|
|
41
|
-
class="p-0 mb-2 w-full"
|
|
41
|
+
class="tw-p-0 tw-mb-2 tw-w-full"
|
|
42
42
|
></component>
|
|
43
43
|
</template>
|
|
44
44
|
</template>
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
<script lang="ts" setup>
|
|
70
70
|
import { ref } from "vue";
|
|
71
71
|
import VcAppMenuItem from "./_internal/vc-app-menu-item/vc-app-menu-item.vue";
|
|
72
|
-
import { VcContainer } from "@/components";
|
|
72
|
+
import { VcContainer } from "@/ui/components";
|
|
73
73
|
import { IMenuItems } from "@/core/types";
|
|
74
74
|
import { IMenuClickEvent } from "@/shared";
|
|
75
75
|
|
|
@@ -104,7 +104,7 @@ defineExpose({
|
|
|
104
104
|
|
|
105
105
|
.vc-app-menu {
|
|
106
106
|
&_mobile &__inner {
|
|
107
|
-
@apply absolute z-[9999] right-0 top-0 bottom-0 w-[300px] max-w-[60%] bg-[color:var(--app-menu-background-color)];
|
|
107
|
+
@apply tw-absolute tw-z-[9999] tw-right-0 tw-top-0 tw-bottom-0 tw-w-[300px] tw-max-w-[60%] tw-bg-[color:var(--app-menu-background-color)];
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
110
|
</style>
|
|
File without changes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
|
-
class="vc-app flex flex-col w-full h-full box-border m-0 overflow-hidden text-base"
|
|
3
|
+
class="vc-app tw-flex tw-flex-col tw-w-full tw-h-full tw-box-border tw-m-0 tw-overflow-hidden tw-text-base"
|
|
4
4
|
:class="[
|
|
5
5
|
`vc-theme_${theme}`,
|
|
6
6
|
{
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
>
|
|
13
13
|
<!-- Init application top bar -->
|
|
14
14
|
<VcAppBar
|
|
15
|
-
class="shrink-0"
|
|
15
|
+
class="tw-shrink-0"
|
|
16
16
|
:logo="logo"
|
|
17
17
|
:blades="bladesRefs"
|
|
18
18
|
:version="version"
|
|
@@ -21,21 +21,18 @@
|
|
|
21
21
|
@menubutton:click="$refs.menu.isMobileVisible = true"
|
|
22
22
|
@backlink:click="$emit('backlink:click', bladesRefs.length - 2)"
|
|
23
23
|
@logo:click="openDashboard"
|
|
24
|
+
:title="title"
|
|
24
25
|
>
|
|
25
26
|
<template v-slot:appSwitcher>
|
|
26
27
|
<slot name="appSwitcher"></slot>
|
|
27
28
|
</template>
|
|
28
|
-
|
|
29
|
-
<template v-slot:productName v-if="$slots['productName']">
|
|
30
|
-
<slot name="productName"></slot>
|
|
31
|
-
</template>
|
|
32
29
|
</VcAppBar>
|
|
33
30
|
|
|
34
|
-
<div class="overflow-hidden flex grow basis-0">
|
|
31
|
+
<div class="tw-overflow-hidden tw-flex tw-grow tw-basis-0">
|
|
35
32
|
<!-- Init main menu -->
|
|
36
33
|
<VcAppMenu
|
|
37
34
|
ref="menu"
|
|
38
|
-
class="shrink-0"
|
|
35
|
+
class="tw-shrink-0"
|
|
39
36
|
:items="menuItems"
|
|
40
37
|
:mobileMenuItems="mobileMenuItems"
|
|
41
38
|
@item:click="onMenuItemClick"
|
|
@@ -43,13 +40,13 @@
|
|
|
43
40
|
|
|
44
41
|
<!-- Workspace blades -->
|
|
45
42
|
<div
|
|
46
|
-
class="vc-app__workspace px-2 w-full overflow-hidden flex grow basis-0"
|
|
43
|
+
class="vc-app__workspace tw-px-2 tw-w-full tw-overflow-hidden !tw-flex tw-grow tw-basis-0"
|
|
47
44
|
>
|
|
48
45
|
<slot name="bladeNavigation"></slot>
|
|
49
46
|
</div>
|
|
50
47
|
|
|
51
48
|
<div
|
|
52
|
-
class="[pointer-events:painted] absolute flex z-[1000] overflow-hidden top-0 left-2/4 -translate-x-2/4 flex-col items-center p-2 box-border"
|
|
49
|
+
class="[pointer-events:painted] tw-absolute tw-flex tw-z-[1000] tw-overflow-hidden tw-top-0 tw-left-2/4 -tw-translate-x-2/4 tw-flex-col tw-items-center tw-p-2 tw-box-border"
|
|
53
50
|
>
|
|
54
51
|
<slot name="notifications"></slot>
|
|
55
52
|
</div>
|
|
@@ -91,6 +88,7 @@ export interface Props {
|
|
|
91
88
|
version: string;
|
|
92
89
|
theme?: "light" | "dark";
|
|
93
90
|
bladesRefs: IBladeElement[];
|
|
91
|
+
title?: string;
|
|
94
92
|
}
|
|
95
93
|
|
|
96
94
|
export interface Emits {
|
|
@@ -164,7 +162,7 @@ defineExpose({
|
|
|
164
162
|
|
|
165
163
|
&__workspace {
|
|
166
164
|
.vc-app_mobile & {
|
|
167
|
-
@apply p-0;
|
|
165
|
+
@apply tw-p-0;
|
|
168
166
|
}
|
|
169
167
|
}
|
|
170
168
|
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
|
-
class="shrink-0 h-[var(--blade-header-height)] bg-[color:var(--blade-header-background-color)] flex items-center py-0 px-4 border-solid border-b border-b-[color:#eaedf3]"
|
|
3
|
+
class="tw-shrink-0 tw-h-[var(--blade-header-height)] tw-bg-[color:var(--blade-header-background-color)] tw-flex tw-items-center tw-py-0 tw-px-4 tw-border-solid tw-border-b tw-border-b-[color:#eaedf3]"
|
|
4
4
|
>
|
|
5
|
-
<div v-if="icon" class="text-[color:var(--blade-header-icon-color)] mr-3">
|
|
5
|
+
<div v-if="icon" class="tw-text-[color:var(--blade-header-icon-color)] tw-mr-3">
|
|
6
6
|
<VcIcon :icon="icon" size="xxl"></VcIcon>
|
|
7
7
|
</div>
|
|
8
8
|
|
|
9
|
-
<div class="overflow-hidden grow basis-0">
|
|
9
|
+
<div class="tw-overflow-hidden tw-grow tw-basis-0">
|
|
10
10
|
<div
|
|
11
|
-
class="text-[color:var(--blade-header-title-color)] text-lg truncate"
|
|
11
|
+
class="tw-text-[color:var(--blade-header-title-color)] tw-text-lg tw-truncate"
|
|
12
12
|
:class="{
|
|
13
|
-
'!text-[length:var(--blade-header-title-font-size)] font-medium':
|
|
13
|
+
'!tw-text-[length:var(--blade-header-title-font-size)] tw-font-medium':
|
|
14
14
|
!subtitle,
|
|
15
15
|
}"
|
|
16
16
|
>
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
</div>
|
|
19
19
|
<div
|
|
20
20
|
v-if="subtitle"
|
|
21
|
-
class="text-[color:var(--blade-header-subtitle-color)] text-xs mt-1"
|
|
21
|
+
class="tw-text-[color:var(--blade-header-subtitle-color)] tw-text-xs tw-mt-1"
|
|
22
22
|
>
|
|
23
23
|
{{ subtitle }}
|
|
24
24
|
</div>
|
|
@@ -28,11 +28,11 @@
|
|
|
28
28
|
<slot name="actions"></slot>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
|
-
<div v-if="!$isMobile.value" class="flex items-center">
|
|
31
|
+
<div v-if="!$isMobile.value" class= "tw-flex tw-items-center">
|
|
32
32
|
<template v-if="expandable">
|
|
33
33
|
<div
|
|
34
34
|
v-if="expanded"
|
|
35
|
-
class="text-[color:var(--blade-header-button-color)] ml-4 cursor-pointer hover:text-[color:var(--blade-header-button-color-hover)]"
|
|
35
|
+
class="tw-text-[color:var(--blade-header-button-color)] tw-ml-4 tw-cursor-pointer hover:tw-text-[color:var(--blade-header-button-color-hover)]"
|
|
36
36
|
@click="onCollapse"
|
|
37
37
|
>
|
|
38
38
|
<VcIcon icon="fas fa-window-minimize" size="s"></VcIcon>
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
</template>
|
|
44
44
|
<div
|
|
45
45
|
v-if="closable"
|
|
46
|
-
class="text-[color:var(--blade-header-button-color)] ml-4 cursor-pointer hover:text-[color:var(--blade-header-button-color-hover)]"
|
|
46
|
+
class="tw-text-[color:var(--blade-header-button-color)] tw-ml-4 tw-cursor-pointer hover:tw-text-[color:var(--blade-header-button-color-hover)]"
|
|
47
47
|
@click="onClose"
|
|
48
48
|
>
|
|
49
49
|
<VcIcon icon="fas fa-times"></VcIcon>
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
</template>
|
|
54
54
|
|
|
55
55
|
<script lang="ts" setup>
|
|
56
|
-
import { VcIcon } from "@/components";
|
|
56
|
+
import { VcIcon } from "@/ui/components";
|
|
57
57
|
|
|
58
58
|
const props = defineProps({
|
|
59
59
|
expandable: {
|