@hzab/form-render-mobile 0.0.13 → 0.0.15
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/lib/index.js
CHANGED
|
@@ -41765,7 +41765,7 @@
|
|
|
41765
41765
|
(c = []),
|
|
41766
41766
|
null == r ||
|
|
41767
41767
|
r.forEach(function (e) {
|
|
41768
|
-
"string" == typeof e
|
|
41768
|
+
"string" == typeof e || e.ossUrl
|
|
41769
41769
|
? c.push(Promise.resolve(e))
|
|
41770
41770
|
: c.push(
|
|
41771
41771
|
u
|
|
@@ -41874,18 +41874,18 @@
|
|
|
41874
41874
|
b = e.ossUrl,
|
|
41875
41875
|
M = e.ossOpt,
|
|
41876
41876
|
w = e.onCountExceed,
|
|
41877
|
-
k = dg((0, a.useState)(
|
|
41877
|
+
k = dg((0, a.useState)(Nb(c, p)), 2),
|
|
41878
41878
|
L = k[0],
|
|
41879
41879
|
x = k[1],
|
|
41880
|
-
Y = dg((0, a.useState)(
|
|
41880
|
+
Y = dg((0, a.useState)(!1), 2),
|
|
41881
41881
|
D = Y[0],
|
|
41882
|
-
T = Y[1]
|
|
41883
|
-
|
|
41884
|
-
E
|
|
41885
|
-
|
|
41886
|
-
function
|
|
41882
|
+
T = Y[1];
|
|
41883
|
+
function S(e) {
|
|
41884
|
+
return E.apply(this, arguments);
|
|
41885
|
+
}
|
|
41886
|
+
function E() {
|
|
41887
41887
|
return (
|
|
41888
|
-
(
|
|
41888
|
+
(E = gb(
|
|
41889
41889
|
Mb().mark(function e(t) {
|
|
41890
41890
|
var n, r;
|
|
41891
41891
|
return Mb().wrap(function (e) {
|
|
@@ -41895,7 +41895,7 @@
|
|
|
41895
41895
|
if (
|
|
41896
41896
|
(t.persist(),
|
|
41897
41897
|
(n = t.target.files),
|
|
41898
|
-
(r = [].concat(mb(
|
|
41898
|
+
(r = [].concat(mb(L), mb([].slice.call(n)))),
|
|
41899
41899
|
p > 0 &&
|
|
41900
41900
|
r.length > p &&
|
|
41901
41901
|
(w && w(r.length - p),
|
|
@@ -41918,7 +41918,7 @@
|
|
|
41918
41918
|
case 8:
|
|
41919
41919
|
r = e.sent;
|
|
41920
41920
|
case 9:
|
|
41921
|
-
(t.target.value = ""),
|
|
41921
|
+
(t.target.value = ""), O(r);
|
|
41922
41922
|
case 11:
|
|
41923
41923
|
case "end":
|
|
41924
41924
|
return e.stop();
|
|
@@ -41926,13 +41926,13 @@
|
|
|
41926
41926
|
}, e);
|
|
41927
41927
|
}),
|
|
41928
41928
|
)),
|
|
41929
|
-
|
|
41929
|
+
E.apply(this, arguments)
|
|
41930
41930
|
);
|
|
41931
41931
|
}
|
|
41932
|
-
function
|
|
41932
|
+
function O(e, t) {
|
|
41933
41933
|
var n,
|
|
41934
41934
|
r = e;
|
|
41935
|
-
("del" !== t && p > 1 && (r = [].concat(mb(
|
|
41935
|
+
("del" !== t && p > 1 && (r = [].concat(mb(L), mb(r))), (r = Rb(e, p)), x(r), _ && v) &&
|
|
41936
41936
|
(r =
|
|
41937
41937
|
null === (n = r) || void 0 === n
|
|
41938
41938
|
? void 0
|
|
@@ -41943,12 +41943,13 @@
|
|
|
41943
41943
|
}
|
|
41944
41944
|
(0, a.useEffect)(
|
|
41945
41945
|
function () {
|
|
41946
|
-
|
|
41946
|
+
x(Nb(c, p));
|
|
41947
41947
|
},
|
|
41948
41948
|
[c],
|
|
41949
41949
|
);
|
|
41950
|
-
var
|
|
41951
|
-
|
|
41950
|
+
var j = (0, a.useRef)(),
|
|
41951
|
+
C = (0, a.useRef)(),
|
|
41952
|
+
P = (0, a.useMemo)(
|
|
41952
41953
|
function () {
|
|
41953
41954
|
var e = {
|
|
41954
41955
|
select: { text: "选择文件", key: "select" },
|
|
@@ -41974,7 +41975,7 @@
|
|
|
41974
41975
|
},
|
|
41975
41976
|
[i],
|
|
41976
41977
|
);
|
|
41977
|
-
function
|
|
41978
|
+
function A(e) {
|
|
41978
41979
|
var t = e.index;
|
|
41979
41980
|
return Jw.createElement(
|
|
41980
41981
|
"div",
|
|
@@ -41992,8 +41993,8 @@
|
|
|
41992
41993
|
nu.confirm({
|
|
41993
41994
|
content: "确认删除?",
|
|
41994
41995
|
onConfirm: function () {
|
|
41995
|
-
var t = ek.cloneDeep(
|
|
41996
|
-
t.splice(e, 1),
|
|
41996
|
+
var t = ek.cloneDeep(L);
|
|
41997
|
+
t.splice(e, 1), O(t, "del"), x(t);
|
|
41997
41998
|
},
|
|
41998
41999
|
});
|
|
41999
42000
|
},
|
|
@@ -42002,35 +42003,34 @@
|
|
|
42002
42003
|
),
|
|
42003
42004
|
);
|
|
42004
42005
|
}
|
|
42006
|
+
var H = {
|
|
42007
|
+
className: "aria-hidden",
|
|
42008
|
+
style: { display: "none" },
|
|
42009
|
+
id: t,
|
|
42010
|
+
onChange: S,
|
|
42011
|
+
type: "file",
|
|
42012
|
+
name: t,
|
|
42013
|
+
multiple: n,
|
|
42014
|
+
accept: s,
|
|
42015
|
+
capture: e.capture,
|
|
42016
|
+
};
|
|
42005
42017
|
return Jw.createElement(
|
|
42006
42018
|
"div",
|
|
42007
42019
|
{ className: "uploader" },
|
|
42008
|
-
Jw.createElement("input", {
|
|
42009
|
-
|
|
42010
|
-
|
|
42011
|
-
ref: P,
|
|
42012
|
-
id: t,
|
|
42013
|
-
onChange: function (e) {
|
|
42014
|
-
return j.apply(this, arguments);
|
|
42015
|
-
},
|
|
42016
|
-
type: "file",
|
|
42017
|
-
name: t,
|
|
42018
|
-
multiple: n,
|
|
42019
|
-
accept: L,
|
|
42020
|
-
capture: e.capture,
|
|
42021
|
-
}),
|
|
42022
|
-
D.map(function (e, t) {
|
|
42020
|
+
Jw.createElement("input", by({}, H, { ref: j })),
|
|
42021
|
+
Jw.createElement("input", by({}, H, { ref: C, id: t + "-audio", accept: "audio/*" })),
|
|
42022
|
+
L.map(function (e, t) {
|
|
42023
42023
|
if (!e) return null;
|
|
42024
42024
|
var n = e || {},
|
|
42025
42025
|
r = n.type,
|
|
42026
42026
|
a = n.name,
|
|
42027
42027
|
i = n.url,
|
|
42028
42028
|
o = void 0 === i ? (null == e ? void 0 : e.ossUrl) : i,
|
|
42029
|
+
s = "",
|
|
42029
42030
|
l = "",
|
|
42030
|
-
u =
|
|
42031
|
-
c = void 0;
|
|
42031
|
+
u = void 0;
|
|
42032
42032
|
if (o) {
|
|
42033
|
-
var
|
|
42033
|
+
var c = (function (e) {
|
|
42034
42034
|
return Ab(e, [
|
|
42035
42035
|
"apng",
|
|
42036
42036
|
"avif",
|
|
@@ -42049,37 +42049,37 @@
|
|
|
42049
42049
|
"tiff",
|
|
42050
42050
|
"webp",
|
|
42051
42051
|
]);
|
|
42052
|
-
})((
|
|
42053
|
-
|
|
42054
|
-
|
|
42055
|
-
|
|
42052
|
+
})((s = o));
|
|
42053
|
+
s.startsWith("data:image/") || c
|
|
42054
|
+
? (l = Xw)
|
|
42055
|
+
: !(function (e) {
|
|
42056
42056
|
return Ab(e, ["3gp", "mpg", "mpeg", "mp4", "m4v", "m4p", "ogv", "ogg", "mov", "webm"]);
|
|
42057
|
-
})(
|
|
42058
|
-
|
|
42059
|
-
/[ ,]?audio\//.test(s) &&
|
|
42060
|
-
(function (e) {
|
|
42057
|
+
})(s)
|
|
42058
|
+
? (function (e) {
|
|
42061
42059
|
return Ab(e, ["3gp", "adts", "mpeg", "mp3", "mp4", "ogg", "mov", "webm", "rtp", "amr", "wav"]);
|
|
42062
|
-
})(
|
|
42063
|
-
|
|
42064
|
-
} else null != r && r.startsWith("image/") && ((
|
|
42060
|
+
})(s) && (l = Qw)
|
|
42061
|
+
: (l = Kw);
|
|
42062
|
+
} else null != r && r.startsWith("image/") && ((s = Pb(e)), (l = Xw)), null != r && r.startsWith("video/") && ((s = Pb(e)), (l = Kw), (u = s)), null != r && r.startsWith("audio/") && ((s = Pb(e)), (l = Qw), (u = s));
|
|
42065
42063
|
return (
|
|
42066
|
-
m && (
|
|
42067
|
-
|
|
42064
|
+
m && (s = m + s),
|
|
42065
|
+
l === Xw
|
|
42068
42066
|
? Jw.createElement(
|
|
42069
|
-
|
|
42067
|
+
A,
|
|
42070
42068
|
{ index: t, key: a + "_" + t },
|
|
42071
|
-
Jw.createElement(Ob, { className: "file-item-view", src:
|
|
42069
|
+
Jw.createElement(Ob, { className: "file-item-view", src: s, alt: a }),
|
|
42072
42070
|
)
|
|
42073
|
-
:
|
|
42074
|
-
? Jw.createElement(
|
|
42075
|
-
:
|
|
42076
|
-
? Jw.createElement(
|
|
42077
|
-
|
|
42078
|
-
|
|
42079
|
-
|
|
42071
|
+
: l === Kw
|
|
42072
|
+
? Jw.createElement(A, { index: t, key: a + "_" + t }, Jw.createElement(Db, { src: s, href: u }))
|
|
42073
|
+
: l === Qw
|
|
42074
|
+
? Jw.createElement(
|
|
42075
|
+
A,
|
|
42076
|
+
{ index: t, key: a + "_" + t },
|
|
42077
|
+
Jw.createElement("audio", { src: s, controls: !0 }),
|
|
42078
|
+
)
|
|
42079
|
+
: Jw.createElement(A, { index: t, key: a + "_" + t }, null == e ? void 0 : e.name)
|
|
42080
42080
|
);
|
|
42081
42081
|
}),
|
|
42082
|
-
l || u || (p > 0 &&
|
|
42082
|
+
l || u || (p > 0 && L.length >= p)
|
|
42083
42083
|
? null
|
|
42084
42084
|
: Jw.createElement(
|
|
42085
42085
|
Jw.Fragment,
|
|
@@ -42089,22 +42089,19 @@
|
|
|
42089
42089
|
{
|
|
42090
42090
|
className: "uploader-add-btn",
|
|
42091
42091
|
onClick: function () {
|
|
42092
|
-
|
|
42092
|
+
T(!0);
|
|
42093
42093
|
},
|
|
42094
42094
|
},
|
|
42095
42095
|
"+",
|
|
42096
42096
|
),
|
|
42097
42097
|
Jw.createElement(Ji, {
|
|
42098
42098
|
cancelText: "取消",
|
|
42099
|
-
visible:
|
|
42100
|
-
actions:
|
|
42099
|
+
visible: D,
|
|
42100
|
+
actions: P,
|
|
42101
42101
|
onAction: function (e) {
|
|
42102
42102
|
switch (e.key) {
|
|
42103
42103
|
case "select":
|
|
42104
|
-
|
|
42105
|
-
setTimeout(function () {
|
|
42106
|
-
P.current.click();
|
|
42107
|
-
}, 1e3);
|
|
42104
|
+
j.current.click();
|
|
42108
42105
|
break;
|
|
42109
42106
|
case "captureImage":
|
|
42110
42107
|
(function () {
|
|
@@ -42162,7 +42159,7 @@
|
|
|
42162
42159
|
);
|
|
42163
42160
|
});
|
|
42164
42161
|
})().then(function (e) {
|
|
42165
|
-
|
|
42162
|
+
S({ persist: function () {}, target: { value: "", files: [e] } });
|
|
42166
42163
|
});
|
|
42167
42164
|
break;
|
|
42168
42165
|
case "captureVideo":
|
|
@@ -42221,19 +42218,16 @@
|
|
|
42221
42218
|
);
|
|
42222
42219
|
});
|
|
42223
42220
|
})().then(function (e) {
|
|
42224
|
-
|
|
42221
|
+
S({ persist: function () {}, target: { value: "", files: [e] } });
|
|
42225
42222
|
});
|
|
42226
42223
|
break;
|
|
42227
42224
|
case "captureAudio":
|
|
42228
|
-
|
|
42229
|
-
setTimeout(function () {
|
|
42230
|
-
P.current.click();
|
|
42231
|
-
}, 1e3);
|
|
42225
|
+
C.current.click();
|
|
42232
42226
|
}
|
|
42233
|
-
|
|
42227
|
+
T(!1);
|
|
42234
42228
|
},
|
|
42235
42229
|
onClose: function () {
|
|
42236
|
-
return
|
|
42230
|
+
return T(!1);
|
|
42237
42231
|
},
|
|
42238
42232
|
}),
|
|
42239
42233
|
),
|
package/package.json
CHANGED
|
@@ -100,7 +100,7 @@ export async function handleOssUpload(files, opt) {
|
|
|
100
100
|
const promise = [];
|
|
101
101
|
_files?.forEach((file) => {
|
|
102
102
|
// 数据已经是 url 的情况
|
|
103
|
-
if (typeof file === "string") {
|
|
103
|
+
if (typeof file === "string" || file.ossUrl) {
|
|
104
104
|
promise.push(Promise.resolve(file));
|
|
105
105
|
} else {
|
|
106
106
|
promise.push(
|
|
@@ -50,7 +50,6 @@ function Uploader(props) {
|
|
|
50
50
|
ossOpt,
|
|
51
51
|
onCountExceed,
|
|
52
52
|
} = props;
|
|
53
|
-
const [curAccept, setCurAccept] = useState(accept);
|
|
54
53
|
const [fileList, setFileList] = useState(handleInputFileList(value, maxCount));
|
|
55
54
|
const [actionSheetVisible, setActionSheetVisible] = useState(false);
|
|
56
55
|
useEffect(() => {
|
|
@@ -114,6 +113,7 @@ function Uploader(props) {
|
|
|
114
113
|
}
|
|
115
114
|
|
|
116
115
|
const uploaderRef = useRef();
|
|
116
|
+
const audioUploaderRef = useRef();
|
|
117
117
|
|
|
118
118
|
const actions = useMemo(() => {
|
|
119
119
|
const allEnum = {
|
|
@@ -134,33 +134,44 @@ function Uploader(props) {
|
|
|
134
134
|
function onPicker({ key }) {
|
|
135
135
|
switch (key) {
|
|
136
136
|
case "select":
|
|
137
|
-
|
|
138
|
-
setCurAccept(accept);
|
|
139
|
-
setTimeout(() => {
|
|
140
|
-
uploaderRef.current.click();
|
|
141
|
-
}, 1000);
|
|
137
|
+
uploaderRef.current.click();
|
|
142
138
|
break;
|
|
143
139
|
|
|
144
140
|
case "captureImage":
|
|
145
141
|
getImage().then((res) => {
|
|
146
|
-
|
|
142
|
+
onFileChange({
|
|
143
|
+
persist: () => {},
|
|
144
|
+
target: {
|
|
145
|
+
value: "",
|
|
146
|
+
files: [res],
|
|
147
|
+
},
|
|
148
|
+
});
|
|
147
149
|
});
|
|
148
150
|
break;
|
|
149
151
|
|
|
150
152
|
case "captureVideo":
|
|
151
153
|
getVideo().then((res) => {
|
|
152
|
-
|
|
154
|
+
onFileChange({
|
|
155
|
+
persist: () => {},
|
|
156
|
+
target: {
|
|
157
|
+
value: "",
|
|
158
|
+
files: [res],
|
|
159
|
+
},
|
|
160
|
+
});
|
|
153
161
|
});
|
|
154
162
|
break;
|
|
155
163
|
|
|
156
164
|
case "captureAudio":
|
|
157
|
-
|
|
158
|
-
setTimeout(() => {
|
|
159
|
-
uploaderRef.current.click();
|
|
160
|
-
}, 1000);
|
|
165
|
+
audioUploaderRef.current.click();
|
|
161
166
|
// TODO: reader 报错
|
|
162
167
|
// getAudio().then((res) => {
|
|
163
|
-
//
|
|
168
|
+
// onFileChange({
|
|
169
|
+
// persist: () => {},
|
|
170
|
+
// target: {
|
|
171
|
+
// value: "",
|
|
172
|
+
// files: [res],
|
|
173
|
+
// },
|
|
174
|
+
// });
|
|
164
175
|
// });
|
|
165
176
|
break;
|
|
166
177
|
}
|
|
@@ -203,20 +214,22 @@ function Uploader(props) {
|
|
|
203
214
|
);
|
|
204
215
|
}
|
|
205
216
|
|
|
217
|
+
const inputProps = {
|
|
218
|
+
className: "aria-hidden",
|
|
219
|
+
style: { display: "none" },
|
|
220
|
+
id: name,
|
|
221
|
+
onChange: onFileChange,
|
|
222
|
+
type: "file",
|
|
223
|
+
name: name,
|
|
224
|
+
multiple: multiple,
|
|
225
|
+
accept: accept,
|
|
226
|
+
capture: props.capture,
|
|
227
|
+
};
|
|
228
|
+
|
|
206
229
|
return (
|
|
207
230
|
<div className="uploader">
|
|
208
|
-
<input
|
|
209
|
-
|
|
210
|
-
style={{ display: "none" }}
|
|
211
|
-
ref={uploaderRef}
|
|
212
|
-
id={name}
|
|
213
|
-
onChange={onFileChange}
|
|
214
|
-
type="file"
|
|
215
|
-
name={name}
|
|
216
|
-
multiple={multiple}
|
|
217
|
-
accept={curAccept}
|
|
218
|
-
capture={props.capture}
|
|
219
|
-
></input>
|
|
231
|
+
<input {...inputProps} ref={uploaderRef}></input>
|
|
232
|
+
<input {...inputProps} ref={audioUploaderRef} id={name + "-audio"} accept="audio/*"></input>
|
|
220
233
|
{fileList.map((it, idx) => {
|
|
221
234
|
if (!it) {
|
|
222
235
|
return null;
|
|
@@ -231,15 +244,13 @@ function Uploader(props) {
|
|
|
231
244
|
src = url;
|
|
232
245
|
// 图片
|
|
233
246
|
const isImg = checkImageUrl(src);
|
|
234
|
-
if (src.startsWith("data:image/") ||
|
|
247
|
+
if (src.startsWith("data:image/") || isImg) {
|
|
235
248
|
fileType = TYPE_IMG;
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
if (/[ ,]?video\//.test(accept) && checkVideoUrl(src)) {
|
|
249
|
+
} else if (checkVideoUrl(src)) {
|
|
250
|
+
// 视频
|
|
239
251
|
fileType = TYPE_VIDEO;
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
if (/[ ,]?audio\//.test(accept) && checkAudioUrl(src)) {
|
|
252
|
+
} else if (checkAudioUrl(src)) {
|
|
253
|
+
// 音频
|
|
243
254
|
fileType = TYPE_AUDIO;
|
|
244
255
|
}
|
|
245
256
|
} else {
|
|
@@ -283,10 +294,18 @@ function Uploader(props) {
|
|
|
283
294
|
);
|
|
284
295
|
}
|
|
285
296
|
if (fileType === TYPE_AUDIO) {
|
|
286
|
-
return
|
|
297
|
+
return (
|
|
298
|
+
<ItemRender index={idx} key={name + "_" + idx}>
|
|
299
|
+
<audio src={src} controls></audio>
|
|
300
|
+
</ItemRender>
|
|
301
|
+
);
|
|
287
302
|
}
|
|
288
303
|
|
|
289
|
-
return
|
|
304
|
+
return (
|
|
305
|
+
<ItemRender index={idx} key={name + "_" + idx}>
|
|
306
|
+
{it?.name}
|
|
307
|
+
</ItemRender>
|
|
308
|
+
);
|
|
290
309
|
})}
|
|
291
310
|
{disabled || readOnly || (maxCount > 0 && fileList.length >= maxCount) ? null : (
|
|
292
311
|
<>
|