zartui 3.1.41 → 3.1.43
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/README.md +27 -27
- package/es/index.d.ts +1 -1
- package/es/index.mjs +1 -1
- package/es/lazyload/vue-lazyload/index.d.ts +55 -55
- package/es/media-picker/MediaPicker.d.ts +2 -1
- package/es/media-picker/MediaPicker.mjs +41 -14
- package/es/media-picker/index.d.ts +2 -1
- package/es/media-picker/type.d.ts +1 -1
- package/es/vue-sfc-shim.d.ts +6 -6
- package/es/vue-tsx-shim.d.ts +23 -23
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/lazyload/vue-lazyload/index.d.ts +55 -55
- package/lib/media-picker/MediaPicker.d.ts +2 -1
- package/lib/media-picker/MediaPicker.js +41 -14
- package/lib/media-picker/index.d.ts +2 -1
- package/lib/media-picker/type.d.ts +1 -1
- package/lib/vue-sfc-shim.d.ts +6 -6
- package/lib/vue-tsx-shim.d.ts +23 -23
- package/lib/web-types.json +1 -1
- package/lib/zartui.cjs.js +42 -15
- package/lib/zartui.es.js +42 -15
- package/lib/zartui.js +42 -15
- package/lib/zartui.min.js +1 -1
- package/package.json +5 -5
package/lib/zartui.cjs.js
CHANGED
|
@@ -13816,7 +13816,7 @@ const mediaPickerProps = {
|
|
|
13816
13816
|
var stdin_default$B = vue.defineComponent({
|
|
13817
13817
|
name: name$u,
|
|
13818
13818
|
props: mediaPickerProps,
|
|
13819
|
-
emits: ["update:mediaList", "delete"],
|
|
13819
|
+
emits: ["update:mediaList", "delete", "processing"],
|
|
13820
13820
|
setup(props, {
|
|
13821
13821
|
emit,
|
|
13822
13822
|
slots
|
|
@@ -13834,6 +13834,7 @@ var stdin_default$B = vue.defineComponent({
|
|
|
13834
13834
|
const audioRecorderInputRef = vue.ref();
|
|
13835
13835
|
const audioFileInputRef = vue.ref();
|
|
13836
13836
|
const fileInputRef = vue.ref();
|
|
13837
|
+
const mediaListPlaceholder = vue.ref([]);
|
|
13837
13838
|
const checkFileCountBeforeAdd = (mediaType) => {
|
|
13838
13839
|
if (props.mediaList.length === props.maxMediaCount) {
|
|
13839
13840
|
showFailToast("已达到文件最大数量限制");
|
|
@@ -14043,11 +14044,6 @@ var stdin_default$B = vue.defineComponent({
|
|
|
14043
14044
|
return media;
|
|
14044
14045
|
});
|
|
14045
14046
|
});
|
|
14046
|
-
showLoadingToast({
|
|
14047
|
-
message: "处理中...",
|
|
14048
|
-
forbidClick: true,
|
|
14049
|
-
duration: 0
|
|
14050
|
-
});
|
|
14051
14047
|
return Promise.all(mediaList).then((medias) => {
|
|
14052
14048
|
const _medias = [];
|
|
14053
14049
|
medias.forEach((media) => {
|
|
@@ -14057,7 +14053,6 @@ var stdin_default$B = vue.defineComponent({
|
|
|
14057
14053
|
});
|
|
14058
14054
|
return _medias;
|
|
14059
14055
|
}).finally(() => {
|
|
14060
|
-
closeToast();
|
|
14061
14056
|
});
|
|
14062
14057
|
};
|
|
14063
14058
|
const transformImageFiles = (files) => {
|
|
@@ -14116,11 +14111,6 @@ var stdin_default$B = vue.defineComponent({
|
|
|
14116
14111
|
});
|
|
14117
14112
|
promisesTodo.push(promise);
|
|
14118
14113
|
}
|
|
14119
|
-
showLoadingToast({
|
|
14120
|
-
message: "处理中...",
|
|
14121
|
-
forbidClick: true,
|
|
14122
|
-
duration: 0
|
|
14123
|
-
});
|
|
14124
14114
|
return Promise.all(promisesTodo).then((medias) => {
|
|
14125
14115
|
const _medias = [];
|
|
14126
14116
|
medias.forEach((media) => {
|
|
@@ -14130,10 +14120,28 @@ var stdin_default$B = vue.defineComponent({
|
|
|
14130
14120
|
});
|
|
14131
14121
|
return _medias;
|
|
14132
14122
|
}).finally(() => {
|
|
14133
|
-
closeToast();
|
|
14134
14123
|
});
|
|
14135
14124
|
};
|
|
14136
14125
|
const readFiles = (files) => {
|
|
14126
|
+
emit("processing", true);
|
|
14127
|
+
mediaListPlaceholder.value = files.map((file) => {
|
|
14128
|
+
let type;
|
|
14129
|
+
if (isAudioType(file)) {
|
|
14130
|
+
type = "audio";
|
|
14131
|
+
} else if (isVideoType(file)) {
|
|
14132
|
+
type = "video";
|
|
14133
|
+
} else if (isImageType(file)) {
|
|
14134
|
+
type = "photo";
|
|
14135
|
+
} else {
|
|
14136
|
+
type = "file";
|
|
14137
|
+
}
|
|
14138
|
+
return {
|
|
14139
|
+
file,
|
|
14140
|
+
message: "处理中...",
|
|
14141
|
+
status: "processing",
|
|
14142
|
+
type
|
|
14143
|
+
};
|
|
14144
|
+
});
|
|
14137
14145
|
const notImages = files.filter((f) => !isImageType(f)).map((f) => transformNotImageFile(f));
|
|
14138
14146
|
let newMedias = [];
|
|
14139
14147
|
if (notImages.length > 0) {
|
|
@@ -14156,6 +14164,8 @@ var stdin_default$B = vue.defineComponent({
|
|
|
14156
14164
|
newMedia.label = newMedia.originalName;
|
|
14157
14165
|
});
|
|
14158
14166
|
}
|
|
14167
|
+
mediaListPlaceholder.value = [];
|
|
14168
|
+
emit("processing", false);
|
|
14159
14169
|
emit("update:mediaList", [...props.mediaList, ...newMedias]);
|
|
14160
14170
|
if (props.afterRead) {
|
|
14161
14171
|
props.afterRead(newMedias);
|
|
@@ -14332,7 +14342,7 @@ var stdin_default$B = vue.defineComponent({
|
|
|
14332
14342
|
status,
|
|
14333
14343
|
message
|
|
14334
14344
|
} = media;
|
|
14335
|
-
if (status === "uploading" || status === "failed") {
|
|
14345
|
+
if (status === "processing" || status === "uploading" || status === "failed") {
|
|
14336
14346
|
const MaskIcon = status === "failed" ? vue.createVNode(stdin_default$1V, {
|
|
14337
14347
|
"name": "close",
|
|
14338
14348
|
"class": bem$t("mask-icon")
|
|
@@ -14467,6 +14477,15 @@ var stdin_default$B = vue.defineComponent({
|
|
|
14467
14477
|
showFailToast("暂不支持此类文件的预览");
|
|
14468
14478
|
}
|
|
14469
14479
|
});
|
|
14480
|
+
const renderMediaListPlaceholder = () => {
|
|
14481
|
+
return mediaListPlaceholder.value.map((media) => {
|
|
14482
|
+
return vue.createVNode(stdin_default$U, {
|
|
14483
|
+
"key": media.uniqueCode
|
|
14484
|
+
}, {
|
|
14485
|
+
default: () => [renderMediaThumbnail(media), renderMediaLabel(media), genThumbnailMask(media)]
|
|
14486
|
+
});
|
|
14487
|
+
});
|
|
14488
|
+
};
|
|
14470
14489
|
const renderMediaList = () => props.mediaList.map((media, index) => {
|
|
14471
14490
|
const showDelete = media.deletable && media.status !== "uploading";
|
|
14472
14491
|
const deleteIcon = showDelete && vue.createVNode(stdin_default$M, {
|
|
@@ -14518,6 +14537,14 @@ var stdin_default$B = vue.defineComponent({
|
|
|
14518
14537
|
"square": true,
|
|
14519
14538
|
"gutter": "4",
|
|
14520
14539
|
"class": bem$t("grid")
|
|
14540
|
+
}, {
|
|
14541
|
+
default: () => [renderMediaListPlaceholder()]
|
|
14542
|
+
}), [[vue.vShow, mediaListPlaceholder.value.length]]), vue.withDirectives(vue.createVNode(stdin_default$W, {
|
|
14543
|
+
"column-num": "3",
|
|
14544
|
+
"border": false,
|
|
14545
|
+
"square": true,
|
|
14546
|
+
"gutter": "4",
|
|
14547
|
+
"class": bem$t("grid")
|
|
14521
14548
|
}, {
|
|
14522
14549
|
default: () => [renderMediaList()]
|
|
14523
14550
|
}), [[vue.vShow, props.mediaList.length]])]);
|
|
@@ -20631,7 +20658,7 @@ const Lazyload = {
|
|
|
20631
20658
|
});
|
|
20632
20659
|
}
|
|
20633
20660
|
};
|
|
20634
|
-
const version = "3.1.
|
|
20661
|
+
const version = "3.1.43";
|
|
20635
20662
|
function install(app) {
|
|
20636
20663
|
const components = [
|
|
20637
20664
|
ActionSheet,
|
package/lib/zartui.es.js
CHANGED
|
@@ -13814,7 +13814,7 @@ const mediaPickerProps = {
|
|
|
13814
13814
|
var stdin_default$B = defineComponent({
|
|
13815
13815
|
name: name$u,
|
|
13816
13816
|
props: mediaPickerProps,
|
|
13817
|
-
emits: ["update:mediaList", "delete"],
|
|
13817
|
+
emits: ["update:mediaList", "delete", "processing"],
|
|
13818
13818
|
setup(props, {
|
|
13819
13819
|
emit,
|
|
13820
13820
|
slots
|
|
@@ -13832,6 +13832,7 @@ var stdin_default$B = defineComponent({
|
|
|
13832
13832
|
const audioRecorderInputRef = ref();
|
|
13833
13833
|
const audioFileInputRef = ref();
|
|
13834
13834
|
const fileInputRef = ref();
|
|
13835
|
+
const mediaListPlaceholder = ref([]);
|
|
13835
13836
|
const checkFileCountBeforeAdd = (mediaType) => {
|
|
13836
13837
|
if (props.mediaList.length === props.maxMediaCount) {
|
|
13837
13838
|
showFailToast("已达到文件最大数量限制");
|
|
@@ -14041,11 +14042,6 @@ var stdin_default$B = defineComponent({
|
|
|
14041
14042
|
return media;
|
|
14042
14043
|
});
|
|
14043
14044
|
});
|
|
14044
|
-
showLoadingToast({
|
|
14045
|
-
message: "处理中...",
|
|
14046
|
-
forbidClick: true,
|
|
14047
|
-
duration: 0
|
|
14048
|
-
});
|
|
14049
14045
|
return Promise.all(mediaList).then((medias) => {
|
|
14050
14046
|
const _medias = [];
|
|
14051
14047
|
medias.forEach((media) => {
|
|
@@ -14055,7 +14051,6 @@ var stdin_default$B = defineComponent({
|
|
|
14055
14051
|
});
|
|
14056
14052
|
return _medias;
|
|
14057
14053
|
}).finally(() => {
|
|
14058
|
-
closeToast();
|
|
14059
14054
|
});
|
|
14060
14055
|
};
|
|
14061
14056
|
const transformImageFiles = (files) => {
|
|
@@ -14114,11 +14109,6 @@ var stdin_default$B = defineComponent({
|
|
|
14114
14109
|
});
|
|
14115
14110
|
promisesTodo.push(promise);
|
|
14116
14111
|
}
|
|
14117
|
-
showLoadingToast({
|
|
14118
|
-
message: "处理中...",
|
|
14119
|
-
forbidClick: true,
|
|
14120
|
-
duration: 0
|
|
14121
|
-
});
|
|
14122
14112
|
return Promise.all(promisesTodo).then((medias) => {
|
|
14123
14113
|
const _medias = [];
|
|
14124
14114
|
medias.forEach((media) => {
|
|
@@ -14128,10 +14118,28 @@ var stdin_default$B = defineComponent({
|
|
|
14128
14118
|
});
|
|
14129
14119
|
return _medias;
|
|
14130
14120
|
}).finally(() => {
|
|
14131
|
-
closeToast();
|
|
14132
14121
|
});
|
|
14133
14122
|
};
|
|
14134
14123
|
const readFiles = (files) => {
|
|
14124
|
+
emit("processing", true);
|
|
14125
|
+
mediaListPlaceholder.value = files.map((file) => {
|
|
14126
|
+
let type;
|
|
14127
|
+
if (isAudioType(file)) {
|
|
14128
|
+
type = "audio";
|
|
14129
|
+
} else if (isVideoType(file)) {
|
|
14130
|
+
type = "video";
|
|
14131
|
+
} else if (isImageType(file)) {
|
|
14132
|
+
type = "photo";
|
|
14133
|
+
} else {
|
|
14134
|
+
type = "file";
|
|
14135
|
+
}
|
|
14136
|
+
return {
|
|
14137
|
+
file,
|
|
14138
|
+
message: "处理中...",
|
|
14139
|
+
status: "processing",
|
|
14140
|
+
type
|
|
14141
|
+
};
|
|
14142
|
+
});
|
|
14135
14143
|
const notImages = files.filter((f) => !isImageType(f)).map((f) => transformNotImageFile(f));
|
|
14136
14144
|
let newMedias = [];
|
|
14137
14145
|
if (notImages.length > 0) {
|
|
@@ -14154,6 +14162,8 @@ var stdin_default$B = defineComponent({
|
|
|
14154
14162
|
newMedia.label = newMedia.originalName;
|
|
14155
14163
|
});
|
|
14156
14164
|
}
|
|
14165
|
+
mediaListPlaceholder.value = [];
|
|
14166
|
+
emit("processing", false);
|
|
14157
14167
|
emit("update:mediaList", [...props.mediaList, ...newMedias]);
|
|
14158
14168
|
if (props.afterRead) {
|
|
14159
14169
|
props.afterRead(newMedias);
|
|
@@ -14330,7 +14340,7 @@ var stdin_default$B = defineComponent({
|
|
|
14330
14340
|
status,
|
|
14331
14341
|
message
|
|
14332
14342
|
} = media;
|
|
14333
|
-
if (status === "uploading" || status === "failed") {
|
|
14343
|
+
if (status === "processing" || status === "uploading" || status === "failed") {
|
|
14334
14344
|
const MaskIcon = status === "failed" ? createVNode(stdin_default$1V, {
|
|
14335
14345
|
"name": "close",
|
|
14336
14346
|
"class": bem$t("mask-icon")
|
|
@@ -14465,6 +14475,15 @@ var stdin_default$B = defineComponent({
|
|
|
14465
14475
|
showFailToast("暂不支持此类文件的预览");
|
|
14466
14476
|
}
|
|
14467
14477
|
});
|
|
14478
|
+
const renderMediaListPlaceholder = () => {
|
|
14479
|
+
return mediaListPlaceholder.value.map((media) => {
|
|
14480
|
+
return createVNode(stdin_default$U, {
|
|
14481
|
+
"key": media.uniqueCode
|
|
14482
|
+
}, {
|
|
14483
|
+
default: () => [renderMediaThumbnail(media), renderMediaLabel(media), genThumbnailMask(media)]
|
|
14484
|
+
});
|
|
14485
|
+
});
|
|
14486
|
+
};
|
|
14468
14487
|
const renderMediaList = () => props.mediaList.map((media, index) => {
|
|
14469
14488
|
const showDelete = media.deletable && media.status !== "uploading";
|
|
14470
14489
|
const deleteIcon = showDelete && createVNode(stdin_default$M, {
|
|
@@ -14516,6 +14535,14 @@ var stdin_default$B = defineComponent({
|
|
|
14516
14535
|
"square": true,
|
|
14517
14536
|
"gutter": "4",
|
|
14518
14537
|
"class": bem$t("grid")
|
|
14538
|
+
}, {
|
|
14539
|
+
default: () => [renderMediaListPlaceholder()]
|
|
14540
|
+
}), [[vShow, mediaListPlaceholder.value.length]]), withDirectives(createVNode(stdin_default$W, {
|
|
14541
|
+
"column-num": "3",
|
|
14542
|
+
"border": false,
|
|
14543
|
+
"square": true,
|
|
14544
|
+
"gutter": "4",
|
|
14545
|
+
"class": bem$t("grid")
|
|
14519
14546
|
}, {
|
|
14520
14547
|
default: () => [renderMediaList()]
|
|
14521
14548
|
}), [[vShow, props.mediaList.length]])]);
|
|
@@ -20629,7 +20656,7 @@ const Lazyload = {
|
|
|
20629
20656
|
});
|
|
20630
20657
|
}
|
|
20631
20658
|
};
|
|
20632
|
-
const version = "3.1.
|
|
20659
|
+
const version = "3.1.43";
|
|
20633
20660
|
function install(app) {
|
|
20634
20661
|
const components = [
|
|
20635
20662
|
ActionSheet,
|
package/lib/zartui.js
CHANGED
|
@@ -15592,7 +15592,7 @@
|
|
|
15592
15592
|
var stdin_default$B = vue.defineComponent({
|
|
15593
15593
|
name: name$u,
|
|
15594
15594
|
props: mediaPickerProps,
|
|
15595
|
-
emits: ["update:mediaList", "delete"],
|
|
15595
|
+
emits: ["update:mediaList", "delete", "processing"],
|
|
15596
15596
|
setup(props, {
|
|
15597
15597
|
emit,
|
|
15598
15598
|
slots
|
|
@@ -15610,6 +15610,7 @@
|
|
|
15610
15610
|
const audioRecorderInputRef = vue.ref();
|
|
15611
15611
|
const audioFileInputRef = vue.ref();
|
|
15612
15612
|
const fileInputRef = vue.ref();
|
|
15613
|
+
const mediaListPlaceholder = vue.ref([]);
|
|
15613
15614
|
const checkFileCountBeforeAdd = (mediaType) => {
|
|
15614
15615
|
if (props.mediaList.length === props.maxMediaCount) {
|
|
15615
15616
|
showFailToast("已达到文件最大数量限制");
|
|
@@ -15819,11 +15820,6 @@
|
|
|
15819
15820
|
return media;
|
|
15820
15821
|
});
|
|
15821
15822
|
});
|
|
15822
|
-
showLoadingToast({
|
|
15823
|
-
message: "处理中...",
|
|
15824
|
-
forbidClick: true,
|
|
15825
|
-
duration: 0
|
|
15826
|
-
});
|
|
15827
15823
|
return Promise.all(mediaList).then((medias) => {
|
|
15828
15824
|
const _medias = [];
|
|
15829
15825
|
medias.forEach((media) => {
|
|
@@ -15833,7 +15829,6 @@
|
|
|
15833
15829
|
});
|
|
15834
15830
|
return _medias;
|
|
15835
15831
|
}).finally(() => {
|
|
15836
|
-
closeToast();
|
|
15837
15832
|
});
|
|
15838
15833
|
};
|
|
15839
15834
|
const transformImageFiles = (files) => {
|
|
@@ -15892,11 +15887,6 @@
|
|
|
15892
15887
|
});
|
|
15893
15888
|
promisesTodo.push(promise);
|
|
15894
15889
|
}
|
|
15895
|
-
showLoadingToast({
|
|
15896
|
-
message: "处理中...",
|
|
15897
|
-
forbidClick: true,
|
|
15898
|
-
duration: 0
|
|
15899
|
-
});
|
|
15900
15890
|
return Promise.all(promisesTodo).then((medias) => {
|
|
15901
15891
|
const _medias = [];
|
|
15902
15892
|
medias.forEach((media) => {
|
|
@@ -15906,10 +15896,28 @@
|
|
|
15906
15896
|
});
|
|
15907
15897
|
return _medias;
|
|
15908
15898
|
}).finally(() => {
|
|
15909
|
-
closeToast();
|
|
15910
15899
|
});
|
|
15911
15900
|
};
|
|
15912
15901
|
const readFiles = (files) => {
|
|
15902
|
+
emit("processing", true);
|
|
15903
|
+
mediaListPlaceholder.value = files.map((file) => {
|
|
15904
|
+
let type;
|
|
15905
|
+
if (isAudioType(file)) {
|
|
15906
|
+
type = "audio";
|
|
15907
|
+
} else if (isVideoType(file)) {
|
|
15908
|
+
type = "video";
|
|
15909
|
+
} else if (isImageType(file)) {
|
|
15910
|
+
type = "photo";
|
|
15911
|
+
} else {
|
|
15912
|
+
type = "file";
|
|
15913
|
+
}
|
|
15914
|
+
return {
|
|
15915
|
+
file,
|
|
15916
|
+
message: "处理中...",
|
|
15917
|
+
status: "processing",
|
|
15918
|
+
type
|
|
15919
|
+
};
|
|
15920
|
+
});
|
|
15913
15921
|
const notImages = files.filter((f) => !isImageType(f)).map((f) => transformNotImageFile(f));
|
|
15914
15922
|
let newMedias = [];
|
|
15915
15923
|
if (notImages.length > 0) {
|
|
@@ -15932,6 +15940,8 @@
|
|
|
15932
15940
|
newMedia.label = newMedia.originalName;
|
|
15933
15941
|
});
|
|
15934
15942
|
}
|
|
15943
|
+
mediaListPlaceholder.value = [];
|
|
15944
|
+
emit("processing", false);
|
|
15935
15945
|
emit("update:mediaList", [...props.mediaList, ...newMedias]);
|
|
15936
15946
|
if (props.afterRead) {
|
|
15937
15947
|
props.afterRead(newMedias);
|
|
@@ -16108,7 +16118,7 @@
|
|
|
16108
16118
|
status,
|
|
16109
16119
|
message
|
|
16110
16120
|
} = media;
|
|
16111
|
-
if (status === "uploading" || status === "failed") {
|
|
16121
|
+
if (status === "processing" || status === "uploading" || status === "failed") {
|
|
16112
16122
|
const MaskIcon = status === "failed" ? vue.createVNode(stdin_default$1V, {
|
|
16113
16123
|
"name": "close",
|
|
16114
16124
|
"class": bem$t("mask-icon")
|
|
@@ -16243,6 +16253,15 @@
|
|
|
16243
16253
|
showFailToast("暂不支持此类文件的预览");
|
|
16244
16254
|
}
|
|
16245
16255
|
});
|
|
16256
|
+
const renderMediaListPlaceholder = () => {
|
|
16257
|
+
return mediaListPlaceholder.value.map((media) => {
|
|
16258
|
+
return vue.createVNode(stdin_default$U, {
|
|
16259
|
+
"key": media.uniqueCode
|
|
16260
|
+
}, {
|
|
16261
|
+
default: () => [renderMediaThumbnail(media), renderMediaLabel(media), genThumbnailMask(media)]
|
|
16262
|
+
});
|
|
16263
|
+
});
|
|
16264
|
+
};
|
|
16246
16265
|
const renderMediaList = () => props.mediaList.map((media, index2) => {
|
|
16247
16266
|
const showDelete = media.deletable && media.status !== "uploading";
|
|
16248
16267
|
const deleteIcon = showDelete && vue.createVNode(stdin_default$M, {
|
|
@@ -16294,6 +16313,14 @@
|
|
|
16294
16313
|
"square": true,
|
|
16295
16314
|
"gutter": "4",
|
|
16296
16315
|
"class": bem$t("grid")
|
|
16316
|
+
}, {
|
|
16317
|
+
default: () => [renderMediaListPlaceholder()]
|
|
16318
|
+
}), [[vue.vShow, mediaListPlaceholder.value.length]]), vue.withDirectives(vue.createVNode(stdin_default$W, {
|
|
16319
|
+
"column-num": "3",
|
|
16320
|
+
"border": false,
|
|
16321
|
+
"square": true,
|
|
16322
|
+
"gutter": "4",
|
|
16323
|
+
"class": bem$t("grid")
|
|
16297
16324
|
}, {
|
|
16298
16325
|
default: () => [renderMediaList()]
|
|
16299
16326
|
}), [[vue.vShow, props.mediaList.length]])]);
|
|
@@ -24691,7 +24718,7 @@
|
|
|
24691
24718
|
});
|
|
24692
24719
|
}
|
|
24693
24720
|
};
|
|
24694
|
-
const version = "3.1.
|
|
24721
|
+
const version = "3.1.43";
|
|
24695
24722
|
function install(app) {
|
|
24696
24723
|
const components = [
|
|
24697
24724
|
ActionSheet,
|