@vc-shell/framework 1.0.121 → 1.0.123
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 +21 -0
- package/core/composables/index.ts +1 -0
- package/core/composables/useAssets/index.ts +100 -0
- package/core/types/index.ts +5 -13
- package/dist/core/composables/index.d.ts +1 -0
- package/dist/core/composables/index.d.ts.map +1 -1
- package/dist/core/composables/useAssets/index.d.ts +10 -0
- package/dist/core/composables/useAssets/index.d.ts.map +1 -0
- package/dist/core/types/index.d.ts +5 -12
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/framework.mjs +14885 -14344
- package/dist/shared/modules/assets/components/assets-details/assets-details.vue.d.ts +4 -4
- package/dist/shared/modules/assets/components/assets-details/assets-details.vue.d.ts.map +1 -1
- package/dist/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts +7 -5
- package/dist/shared/modules/assets-manager/components/assets-manager/assets-manager.vue.d.ts.map +1 -1
- package/dist/shared/modules/assets-manager/components/assets-manager/index.d.ts +10 -8
- package/dist/shared/modules/assets-manager/components/assets-manager/index.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/SchemaRender.d.ts +18 -30
- package/dist/shared/modules/dynamic/components/SchemaRender.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/Button.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/Button.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/Card.d.ts +10 -14
- package/dist/shared/modules/dynamic/components/fields/Card.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/Checkbox.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/Checkbox.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/ContentField.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/ContentField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/DynamicProperty.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/DynamicProperty.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/EditorField.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/EditorField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/Fieldset.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/Fieldset.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/GalleryField.d.ts +7 -11
- package/dist/shared/modules/dynamic/components/fields/GalleryField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/ImageField.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/ImageField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/InputCurrency.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/InputCurrency.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/InputField.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/InputField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/SelectField.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/SelectField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/StatusField.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/StatusField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/TextareaField.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/TextareaField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/VideoField.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/VideoField.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/components/fields/props.d.ts +6 -10
- package/dist/shared/modules/dynamic/components/fields/props.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/factories/types/index.d.ts +3 -3
- package/dist/shared/modules/dynamic/factories/types/index.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/helpers/nodeBuilder.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/helpers/override.d.ts +1 -0
- package/dist/shared/modules/dynamic/helpers/override.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/helpers/toolbarReducer.d.ts +2 -2
- package/dist/shared/modules/dynamic/helpers/toolbarReducer.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts +6 -10
- 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 +25 -2
- package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts.map +1 -1
- package/dist/shared/modules/dynamic/types/index.d.ts +28 -14
- package/dist/shared/modules/dynamic/types/index.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts +6 -8
- package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts.map +1 -1
- 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/_internal/vc-gallery-preview/vc-gallery-preview.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-gallery/index.d.ts +17 -14
- 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 +16 -17
- package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-table/vc-table.vue.d.ts +3 -3
- package/package.json +6 -5
- package/shared/modules/assets/components/assets-details/assets-details.vue +5 -5
- package/shared/modules/assets-manager/components/assets-manager/assets-manager.vue +25 -34
- package/shared/modules/dynamic/components/fields/Card.ts +27 -42
- package/shared/modules/dynamic/components/fields/GalleryField.ts +25 -28
- package/shared/modules/dynamic/factories/types/index.ts +3 -3
- package/shared/modules/dynamic/helpers/nodeBuilder.ts +2 -4
- package/shared/modules/dynamic/helpers/override.ts +1 -0
- package/shared/modules/dynamic/helpers/toolbarReducer.ts +2 -2
- package/shared/modules/dynamic/pages/dynamic-blade-list.vue +151 -112
- package/shared/modules/dynamic/types/index.ts +30 -15
- package/ui/components/atoms/vc-card/vc-card.vue +1 -1
- package/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue +8 -11
- package/ui/components/organisms/vc-gallery/_internal/vc-gallery-preview/vc-gallery-preview.vue +2 -2
- package/ui/components/organisms/vc-gallery/vc-gallery.vue +18 -13
- package/ui/components/organisms/vc-table/vc-table.vue +2 -2
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
@drop="onItemDrop($event, image)"
|
|
34
34
|
></VcGalleryItem>
|
|
35
35
|
<VcFileUpload
|
|
36
|
-
v-if="!disabled && !
|
|
36
|
+
v-if="!disabled && !uploadHidden"
|
|
37
37
|
class="tw-m-2"
|
|
38
38
|
:icon="uploadIcon"
|
|
39
39
|
:variant="variant"
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
|
|
62
62
|
<script lang="ts" setup>
|
|
63
63
|
import { MaybeRef, computed, ref, unref, watch } from "vue";
|
|
64
|
-
import {
|
|
64
|
+
import { ICommonAsset } from "../../../../core/types";
|
|
65
65
|
import { VcLabel, VcFileUpload, VcHint } from "./../../";
|
|
66
66
|
import VcGalleryItem from "./_internal/vc-gallery-item/vc-gallery-item.vue";
|
|
67
67
|
import VcGalleryPreview from "./_internal/vc-gallery-preview/vc-gallery-preview.vue";
|
|
@@ -69,7 +69,7 @@ import { usePopup } from "./../../../../shared/components/popup-handler/composab
|
|
|
69
69
|
import { useI18n } from "vue-i18n";
|
|
70
70
|
|
|
71
71
|
export interface Props {
|
|
72
|
-
images?:
|
|
72
|
+
images?: ICommonAsset[];
|
|
73
73
|
disabled?: boolean;
|
|
74
74
|
required?: boolean;
|
|
75
75
|
label?: string;
|
|
@@ -79,21 +79,21 @@ export interface Props {
|
|
|
79
79
|
multiple?: boolean;
|
|
80
80
|
variant?: "gallery" | "file-upload";
|
|
81
81
|
itemActions?: {
|
|
82
|
-
name?: string;
|
|
83
82
|
preview: boolean;
|
|
84
83
|
edit: boolean;
|
|
85
84
|
remove: boolean;
|
|
86
85
|
};
|
|
86
|
+
hideAfterUpload?: boolean;
|
|
87
87
|
rules?: string | Record<string, unknown>;
|
|
88
88
|
name?: string;
|
|
89
89
|
loading?: boolean;
|
|
90
90
|
}
|
|
91
91
|
|
|
92
92
|
export interface Emits {
|
|
93
|
-
(event: "upload", files: FileList): void;
|
|
94
|
-
(event: "sort", sorted:
|
|
95
|
-
(event: "edit", image:
|
|
96
|
-
(event: "remove", image:
|
|
93
|
+
(event: "upload", files: FileList, startingSortOrder?: number): void;
|
|
94
|
+
(event: "sort", sorted: ICommonAsset[]): void;
|
|
95
|
+
(event: "edit", image: ICommonAsset): void;
|
|
96
|
+
(event: "remove", image: ICommonAsset): void;
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
const props = withDefaults(defineProps<Props>(), {
|
|
@@ -113,8 +113,8 @@ const emit = defineEmits<Emits>();
|
|
|
113
113
|
const { t } = useI18n({ useScope: "global" });
|
|
114
114
|
const previewImageIndex = ref<number>();
|
|
115
115
|
|
|
116
|
-
const defaultImages = ref<MaybeRef<
|
|
117
|
-
const draggedItem = ref<
|
|
116
|
+
const defaultImages = ref<MaybeRef<ICommonAsset[]>>([]);
|
|
117
|
+
const draggedItem = ref<ICommonAsset>();
|
|
118
118
|
const draggedElement = ref<HTMLElement>();
|
|
119
119
|
const galleryRef = ref<HTMLElement>();
|
|
120
120
|
const reorderGalleryRef = ref<HTMLElement>();
|
|
@@ -122,6 +122,7 @@ const dropPosition = ref<number>();
|
|
|
122
122
|
|
|
123
123
|
const currentIndex = computed(() => previewImageIndex.value);
|
|
124
124
|
const disableDrag = computed(() => defaultImages.value.length <= 1);
|
|
125
|
+
const uploadHidden = ref(false);
|
|
125
126
|
|
|
126
127
|
const { open } = usePopup(
|
|
127
128
|
computed(() => ({
|
|
@@ -137,13 +138,17 @@ watch(
|
|
|
137
138
|
() => props.images,
|
|
138
139
|
(newVal) => {
|
|
139
140
|
defaultImages.value = unref(newVal);
|
|
141
|
+
|
|
142
|
+
if (props.hideAfterUpload) {
|
|
143
|
+
uploadHidden.value = !!defaultImages.value.length;
|
|
144
|
+
}
|
|
140
145
|
},
|
|
141
146
|
{ deep: true, immediate: true }
|
|
142
147
|
);
|
|
143
148
|
|
|
144
149
|
const onUpload = (files: FileList) => {
|
|
145
150
|
if (files && files.length) {
|
|
146
|
-
emit("upload", files);
|
|
151
|
+
emit("upload", files, props.images[props.images.length - 1]?.sortOrder);
|
|
147
152
|
}
|
|
148
153
|
};
|
|
149
154
|
|
|
@@ -170,7 +175,7 @@ function onItemMouseDown(event: MouseEvent & { currentTarget?: { draggable: bool
|
|
|
170
175
|
}
|
|
171
176
|
}
|
|
172
177
|
|
|
173
|
-
function onItemDragStart(event: DragEvent, item:
|
|
178
|
+
function onItemDragStart(event: DragEvent, item: ICommonAsset) {
|
|
174
179
|
if (!disableDrag.value && !props.disabled) {
|
|
175
180
|
draggedItem.value = item;
|
|
176
181
|
draggedElement.value = event.target as HTMLElement;
|
|
@@ -219,7 +224,7 @@ function onItemDragLeave(event: DragEvent) {
|
|
|
219
224
|
}
|
|
220
225
|
}
|
|
221
226
|
|
|
222
|
-
function onItemDrop(event: DragEvent, item:
|
|
227
|
+
function onItemDrop(event: DragEvent, item: ICommonAsset) {
|
|
223
228
|
event.preventDefault();
|
|
224
229
|
|
|
225
230
|
if (draggedItem.value) {
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
ref="scrollContainer"
|
|
66
66
|
:no-padding="true"
|
|
67
67
|
class="tw-grow tw-basis-0"
|
|
68
|
-
:use-ptr="
|
|
68
|
+
:use-ptr="pullToReload"
|
|
69
69
|
@scroll:ptr="$emit('scroll:ptr')"
|
|
70
70
|
>
|
|
71
71
|
<!-- Mobile table view -->
|
|
@@ -492,7 +492,7 @@ const props = withDefaults(
|
|
|
492
492
|
footer?: boolean;
|
|
493
493
|
activeFilterCount?: number;
|
|
494
494
|
selectedItemId?: string;
|
|
495
|
-
|
|
495
|
+
pullToReload?: boolean;
|
|
496
496
|
resizableColumns?: boolean;
|
|
497
497
|
reorderableColumns?: boolean;
|
|
498
498
|
reorderableRows?: boolean;
|