@verbb/formie-browser 1.0.14 → 1.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/CHANGELOG.md +30 -0
- package/dist/chunks/{address-country-Dn71jroa.js → address-country-BcEQKw0T.js} +1 -1
- package/dist/chunks/{address-finder-O49uDRoR.js → address-finder-BWGINCSA.js} +1 -1
- package/dist/chunks/{address-state-ByYatUur.js → address-state-DI3ndhMU.js} +98 -88
- package/dist/chunks/{api-DYYsVIub.js → api-BK9b340y.js} +16 -16
- package/dist/chunks/{api-D6kJ7kXZ.js → api-Dxl_CKw-.js} +30 -25
- package/dist/chunks/{async-nPFRNQ06.js → async-2GdXNFCE.js} +18 -1
- package/dist/chunks/{bpoint-D0RKFM4F.js → bpoint-BwtuyN_O.js} +1 -1
- package/dist/chunks/{captcha-eu-DERJbXnH.js → captcha-eu-DWLoQFKB.js} +2 -2
- package/dist/chunks/{combobox-CWNdx4Fk.js → combobox-Ba08_cHL.js} +259 -258
- package/dist/chunks/{conditions-DqNHLTbN.js → conditions-Ceeg6ReZ.js} +113 -110
- package/dist/chunks/{date-picker-RUnevF7l.js → date-picker-DaPvMrop.js} +12 -11
- package/dist/chunks/{eway-or6dtjoT.js → eway-uw0DzU-L.js} +3 -3
- package/dist/chunks/{file-upload-Bm-TXyNB.js → file-upload-B8_mH012.js} +28 -16
- package/dist/chunks/{friendly-captcha-v1-GFqCt1Mh.js → friendly-captcha-v1-CVXaXgDO.js} +1 -1
- package/dist/chunks/{friendly-captcha-v2-WoW246JG.js → friendly-captcha-v2-DkeIVTKI.js} +1 -1
- package/dist/chunks/{go-cardless-DzJ-0FKg.js → go-cardless-c4wLJdOt.js} +1 -1
- package/dist/chunks/{google-address-C1P1nTDM.js → google-address-JHYvjwgN.js} +13 -8
- package/dist/chunks/{hcaptcha-D0T8aIHz.js → hcaptcha-Dt3ELLlP.js} +2 -2
- package/dist/chunks/{loqate-DD1S7PY9.js → loqate-m51iPyO1.js} +1 -1
- package/dist/chunks/{mollie-DG8Ju83x.js → mollie-Bn0PX173.js} +1 -1
- package/dist/chunks/{moneris-C8m3Fvqu.js → moneris-BRbUvI4t.js} +1 -1
- package/dist/chunks/{opayo-B3EvrVxw.js → opayo-BwWdInEP.js} +2 -2
- package/dist/chunks/{paddle-BIYR9Um3.js → paddle-CympHVvd.js} +2 -2
- package/dist/chunks/{paypal-B_yxIo2d.js → paypal-h75h6wae.js} +2 -2
- package/dist/chunks/{payway-CeOzS0sL.js → payway-C9rHTCC_.js} +2 -2
- package/dist/chunks/{phone-country-bAqje17P.js → phone-country-B8fv-L5_.js} +1 -1
- package/dist/chunks/{place-kit-BE5gi3vo.js → place-kit-BnZGQ-L1.js} +8 -8
- package/dist/chunks/{recaptcha-enterprise-CruXddZq.js → recaptcha-enterprise-CUs8BO6V.js} +2 -2
- package/dist/chunks/{recaptcha-shared-AQRMDMme.js → recaptcha-shared-DTbTw-MF.js} +2 -2
- package/dist/chunks/{recaptcha-v2-checkbox-CCnJYCnG.js → recaptcha-v2-checkbox-P1McW4Pv.js} +2 -2
- package/dist/chunks/{recaptcha-v2-invisible-BuVqRRYn.js → recaptcha-v2-invisible-FGDqozSP.js} +2 -2
- package/dist/chunks/{recaptcha-v3-CloqhO2A.js → recaptcha-v3-CflUHeZD.js} +2 -2
- package/dist/chunks/{repeater-DwE27jI1.js → repeater-CyhDbozO.js} +47 -33
- package/dist/chunks/{scripts-CbQ7agX3.js → scripts-DrccjrFv.js} +1 -1
- package/dist/chunks/skip-CEW89ExY.js +7 -0
- package/dist/chunks/{snaptcha-C04kNGYQ.js → snaptcha-C3QLYxFT.js} +1 -1
- package/dist/chunks/{square-DEzxv9D9.js → square-C1z5DPVw.js} +2 -2
- package/dist/chunks/{stripe-CVPQGDz3.js → stripe-Dmkdkq1y.js} +2 -2
- package/dist/chunks/{summary-BF_8mrXI.js → summary-Bn-g5SDx.js} +1 -1
- package/dist/chunks/{table-DnIBdeKF.js → table-j7MlLLCc.js} +1 -1
- package/dist/chunks/{turnstile-n9DNyPxi.js → turnstile-ptihQfLl.js} +2 -2
- package/dist/chunks/{upload-manager-BbiUosZq.js → upload-manager-BW7l-BhF.js} +248 -236
- package/dist/index.js +548 -535
- package/dist/js/core/create-formie-client.d.ts.map +1 -1
- package/dist/js/core/submit-result-state.d.ts.map +1 -1
- package/dist/js/core/submit-result-ui.d.ts +3 -1
- package/dist/js/core/submit-result-ui.d.ts.map +1 -1
- package/dist/js/modules/address/google-address.d.ts +10 -0
- package/dist/js/modules/address/google-address.d.ts.map +1 -1
- package/dist/js/modules/address/place-kit.d.ts.map +1 -1
- package/dist/js/modules/fields/address-state.d.ts.map +1 -1
- package/dist/js/modules/fields/combobox.d.ts.map +1 -1
- package/dist/js/modules/fields/conditions/effects.d.ts.map +1 -1
- package/dist/js/modules/fields/conditions.d.ts.map +1 -1
- package/dist/js/modules/fields/date-picker.d.ts.map +1 -1
- package/dist/js/modules/fields/file-upload.d.ts.map +1 -1
- package/dist/js/modules/fields/repeater.d.ts.map +1 -1
- package/dist/js/modules/fields/upload-manager.d.ts.map +1 -1
- package/dist/js/utils/async.d.ts +1 -0
- package/dist/js/utils/async.d.ts.map +1 -1
- package/dist/js/validation/rules/required.d.ts.map +1 -1
- package/dist/js/validation/validator.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/js/core/create-formie-client.ts +17 -10
- package/src/js/core/submit-result-state.ts +17 -0
- package/src/js/core/submit-result-ui.ts +4 -3
- package/src/js/modules/address/google-address.ts +95 -37
- package/src/js/modules/address/place-kit.ts +13 -7
- package/src/js/modules/fields/address-country.ts +5 -5
- package/src/js/modules/fields/address-state.ts +74 -23
- package/src/js/modules/fields/combobox.ts +3 -0
- package/src/js/modules/fields/conditions/effects.ts +4 -5
- package/src/js/modules/fields/conditions.ts +6 -0
- package/src/js/modules/fields/date-picker.ts +6 -3
- package/src/js/modules/fields/file-upload.ts +44 -14
- package/src/js/modules/fields/phone-country.ts +2 -2
- package/src/js/modules/fields/repeater.ts +55 -4
- package/src/js/modules/fields/upload-manager.ts +54 -18
- package/src/js/utils/async.ts +34 -0
- package/src/js/validation/rules/required.ts +12 -0
- package/src/js/validation/validator.ts +14 -2
|
@@ -160,11 +160,11 @@ function D(e) {
|
|
|
160
160
|
let t = "";
|
|
161
161
|
return e.replace(/[^A-Z0-9]/gi, (e) => (t += `-${E(e)}`, "/")) + t;
|
|
162
162
|
}
|
|
163
|
-
function
|
|
163
|
+
function O(e, t) {
|
|
164
164
|
let n = t || "uppy";
|
|
165
165
|
return typeof e.name == "string" && (n += `-${D(e.name.toLowerCase())}`), e.type !== void 0 && (n += `-${e.type}`), e.meta && typeof e.meta.relativePath == "string" && (n += `-${D(e.meta.relativePath.toLowerCase())}`), e.data?.size !== void 0 && (n += `-${e.data.size}`), e.data.lastModified !== void 0 && (n += `-${e.data.lastModified}`), n;
|
|
166
166
|
}
|
|
167
|
-
function
|
|
167
|
+
function k(e) {
|
|
168
168
|
return !e.isRemote || !e.remote ? !1 : (/* @__PURE__ */ new Set([
|
|
169
169
|
"box",
|
|
170
170
|
"dropbox",
|
|
@@ -173,36 +173,36 @@ function O(e) {
|
|
|
173
173
|
"unsplash"
|
|
174
174
|
])).has(e.remote.provider);
|
|
175
175
|
}
|
|
176
|
-
function
|
|
177
|
-
if (
|
|
176
|
+
function ee(e, t) {
|
|
177
|
+
if (k(e)) return e.id;
|
|
178
178
|
let n = T(e);
|
|
179
|
-
return
|
|
179
|
+
return O({
|
|
180
180
|
...e,
|
|
181
181
|
type: n
|
|
182
182
|
}, t);
|
|
183
183
|
}
|
|
184
184
|
//#endregion
|
|
185
185
|
//#region ../../node_modules/@uppy/utils/lib/getAllowedMetaFields.js
|
|
186
|
-
function
|
|
186
|
+
function A(e, t) {
|
|
187
187
|
return e === !0 ? Object.keys(t) : Array.isArray(e) ? e : [];
|
|
188
188
|
}
|
|
189
189
|
//#endregion
|
|
190
190
|
//#region ../../node_modules/@uppy/utils/lib/getTimeStamp.js
|
|
191
|
-
function
|
|
191
|
+
function j(e) {
|
|
192
192
|
return e < 10 ? `0${e}` : e.toString();
|
|
193
193
|
}
|
|
194
|
-
function
|
|
194
|
+
function M() {
|
|
195
195
|
let e = /* @__PURE__ */ new Date();
|
|
196
|
-
return `${
|
|
196
|
+
return `${j(e.getHours())}:${j(e.getMinutes())}:${j(e.getSeconds())}`;
|
|
197
197
|
}
|
|
198
198
|
//#endregion
|
|
199
199
|
//#region ../../node_modules/@uppy/utils/lib/isNetworkError.js
|
|
200
|
-
function
|
|
200
|
+
function N(e) {
|
|
201
201
|
return e ? e.readyState === 4 && e.status === 0 : !1;
|
|
202
202
|
}
|
|
203
203
|
//#endregion
|
|
204
204
|
//#region ../../node_modules/@uppy/utils/lib/TaskQueue.js
|
|
205
|
-
var
|
|
205
|
+
var te = class {
|
|
206
206
|
#e = [];
|
|
207
207
|
#t = 0;
|
|
208
208
|
#n;
|
|
@@ -299,26 +299,26 @@ var re = class {
|
|
|
299
299
|
};
|
|
300
300
|
//#endregion
|
|
301
301
|
//#region ../../node_modules/@uppy/utils/lib/Translator.js
|
|
302
|
-
function
|
|
302
|
+
function ne(e, t, n) {
|
|
303
303
|
let r = [];
|
|
304
304
|
return e.forEach((e) => typeof e == "string" ? t[Symbol.split](e).forEach((e, t, i) => {
|
|
305
305
|
e !== "" && r.push(e), t < i.length - 1 && r.push(n);
|
|
306
306
|
}) : r.push(e)), r;
|
|
307
307
|
}
|
|
308
|
-
function
|
|
308
|
+
function re(e, t) {
|
|
309
309
|
let n = /\$/g, r = [e];
|
|
310
310
|
if (t == null) return r;
|
|
311
311
|
for (let e of Object.keys(t)) if (e !== "_") {
|
|
312
312
|
let i = t[e];
|
|
313
|
-
typeof i == "string" && (i = n[Symbol.replace](i, "$$$$")), r =
|
|
313
|
+
typeof i == "string" && (i = n[Symbol.replace](i, "$$$$")), r = ne(r, RegExp(`%\\{${e}\\}`, "g"), i);
|
|
314
314
|
}
|
|
315
315
|
return r;
|
|
316
316
|
}
|
|
317
|
-
var
|
|
317
|
+
var ie = (e) => {
|
|
318
318
|
throw Error(`missing string: ${e}`);
|
|
319
319
|
}, P = class {
|
|
320
320
|
locale;
|
|
321
|
-
constructor(e, { onMissingKey: t =
|
|
321
|
+
constructor(e, { onMissingKey: t = ie } = {}) {
|
|
322
322
|
this.locale = {
|
|
323
323
|
strings: {},
|
|
324
324
|
pluralize(e) {
|
|
@@ -346,14 +346,14 @@ var N = (e) => {
|
|
|
346
346
|
if (n ??= (this.#e(e), e), typeof n == "object") {
|
|
347
347
|
if (t && t.smart_count !== void 0) {
|
|
348
348
|
let e = this.locale.pluralize(t.smart_count);
|
|
349
|
-
return
|
|
349
|
+
return re(n[e], t);
|
|
350
350
|
}
|
|
351
351
|
throw Error("Attempted to use a string with plural forms, but no value was given for %{smart_count}");
|
|
352
352
|
}
|
|
353
353
|
if (typeof n != "string") throw Error("string was not a string");
|
|
354
|
-
return
|
|
354
|
+
return re(n, t);
|
|
355
355
|
}
|
|
356
|
-
},
|
|
356
|
+
}, F = class {
|
|
357
357
|
uppy;
|
|
358
358
|
opts;
|
|
359
359
|
id;
|
|
@@ -400,7 +400,7 @@ var N = (e) => {
|
|
|
400
400
|
uninstall() {}
|
|
401
401
|
update(e) {}
|
|
402
402
|
afterUpdate() {}
|
|
403
|
-
},
|
|
403
|
+
}, I = class {
|
|
404
404
|
#e;
|
|
405
405
|
#t = [];
|
|
406
406
|
constructor(e) {
|
|
@@ -452,15 +452,15 @@ var N = (e) => {
|
|
|
452
452
|
this.#e.getFile(e) && t();
|
|
453
453
|
});
|
|
454
454
|
}
|
|
455
|
-
},
|
|
455
|
+
}, ae = {
|
|
456
456
|
debug: () => {},
|
|
457
457
|
warn: () => {},
|
|
458
|
-
error: (...e) => console.error(`[Uppy] [${
|
|
459
|
-
},
|
|
460
|
-
debug: (...e) => console.debug(`[Uppy] [${
|
|
461
|
-
warn: (...e) => console.warn(`[Uppy] [${
|
|
462
|
-
error: (...e) => console.error(`[Uppy] [${
|
|
463
|
-
},
|
|
458
|
+
error: (...e) => console.error(`[Uppy] [${M()}]`, ...e)
|
|
459
|
+
}, oe = {
|
|
460
|
+
debug: (...e) => console.debug(`[Uppy] [${M()}]`, ...e),
|
|
461
|
+
warn: (...e) => console.warn(`[Uppy] [${M()}]`, ...e),
|
|
462
|
+
error: (...e) => console.error(`[Uppy] [${M()}]`, ...e)
|
|
463
|
+
}, se = /* @__PURE__ */ t(((e, t) => {
|
|
464
464
|
t.exports = function(e) {
|
|
465
465
|
if (typeof e != "number" || Number.isNaN(e)) throw TypeError(`Expected a number, got ${typeof e}`);
|
|
466
466
|
let t = e < 0, n = Math.abs(e);
|
|
@@ -478,7 +478,7 @@ var N = (e) => {
|
|
|
478
478
|
], i = Math.min(Math.floor(Math.log(n) / Math.log(1024)), r.length - 1), a = Number(n / 1024 ** i), o = r[i];
|
|
479
479
|
return `${a >= 10 || a % 1 == 0 ? Math.round(a) : a.toFixed(1)} ${o}`;
|
|
480
480
|
};
|
|
481
|
-
})),
|
|
481
|
+
})), ce = /* @__PURE__ */ t(((e, t) => {
|
|
482
482
|
function n(e, t) {
|
|
483
483
|
this.text = e ||= "", this.hasWild = ~e.indexOf("*"), this.separator = t, this.parts = e.split(t);
|
|
484
484
|
}
|
|
@@ -498,8 +498,8 @@ var N = (e) => {
|
|
|
498
498
|
var i = new n(e, r || /[\/\.]/);
|
|
499
499
|
return t === void 0 ? i : i.match(t);
|
|
500
500
|
};
|
|
501
|
-
})),
|
|
502
|
-
var n =
|
|
501
|
+
})), le = /* @__PURE__ */ t(((e, t) => {
|
|
502
|
+
var n = ce(), r = /[\/\+\.]/;
|
|
503
503
|
t.exports = function(e, t) {
|
|
504
504
|
function i(t) {
|
|
505
505
|
var i = n(t, e, r);
|
|
@@ -507,7 +507,7 @@ var N = (e) => {
|
|
|
507
507
|
}
|
|
508
508
|
return t ? i(t.split(";")[0]) : i;
|
|
509
509
|
};
|
|
510
|
-
})),
|
|
510
|
+
})), L = /* @__PURE__ */ e(se(), 1), ue = /* @__PURE__ */ e(le(), 1), de = {
|
|
511
511
|
maxFileSize: null,
|
|
512
512
|
minFileSize: null,
|
|
513
513
|
maxTotalFileSize: null,
|
|
@@ -515,14 +515,14 @@ var N = (e) => {
|
|
|
515
515
|
minNumberOfFiles: null,
|
|
516
516
|
allowedFileTypes: null,
|
|
517
517
|
requiredMetaFields: []
|
|
518
|
-
},
|
|
518
|
+
}, R = class extends Error {
|
|
519
519
|
isUserFacing;
|
|
520
520
|
file;
|
|
521
521
|
constructor(e, t) {
|
|
522
522
|
super(e), this.isUserFacing = t?.isUserFacing ?? !0, t?.file && (this.file = t.file);
|
|
523
523
|
}
|
|
524
524
|
isRestriction = !0;
|
|
525
|
-
},
|
|
525
|
+
}, fe = class {
|
|
526
526
|
getI18n;
|
|
527
527
|
getOpts;
|
|
528
528
|
constructor(e, t) {
|
|
@@ -534,26 +534,26 @@ var N = (e) => {
|
|
|
534
534
|
}
|
|
535
535
|
validateAggregateRestrictions(e, t) {
|
|
536
536
|
let { maxTotalFileSize: n, maxNumberOfFiles: r } = this.getOpts().restrictions;
|
|
537
|
-
if (r && e.filter((e) => !e.isGhost).length + t.length > r) throw new
|
|
537
|
+
if (r && e.filter((e) => !e.isGhost).length + t.length > r) throw new R(`${this.getI18n()("youCanOnlyUploadX", { smart_count: r })}`);
|
|
538
538
|
if (n) {
|
|
539
539
|
let r = [...e, ...t].reduce((e, t) => e + (t.size ?? 0), 0);
|
|
540
|
-
if (r > n) throw new
|
|
541
|
-
sizeAllowed: (0,
|
|
542
|
-
size: (0,
|
|
540
|
+
if (r > n) throw new R(this.getI18n()("aggregateExceedsSize", {
|
|
541
|
+
sizeAllowed: (0, L.default)(n),
|
|
542
|
+
size: (0, L.default)(r)
|
|
543
543
|
}));
|
|
544
544
|
}
|
|
545
545
|
}
|
|
546
546
|
validateSingleFile(e) {
|
|
547
547
|
let { maxFileSize: t, minFileSize: n, allowedFileTypes: r } = this.getOpts().restrictions;
|
|
548
|
-
if (r && !r.some((t) => t.includes("/") ? e.type ? (0,
|
|
548
|
+
if (r && !r.some((t) => t.includes("/") ? e.type ? (0, ue.default)(e.type.replace(/;.*?$/, ""), t) : !1 : t[0] === "." && e.extension ? e.extension.toLowerCase() === t.slice(1).toLowerCase() : !1)) {
|
|
549
549
|
let t = r.join(", ");
|
|
550
|
-
throw new
|
|
550
|
+
throw new R(this.getI18n()("youCanOnlyUploadFileTypes", { types: t }), { file: e });
|
|
551
551
|
}
|
|
552
|
-
if (t && e.size != null && e.size > t) throw new
|
|
553
|
-
size: (0,
|
|
552
|
+
if (t && e.size != null && e.size > t) throw new R(this.getI18n()("exceedsSize", {
|
|
553
|
+
size: (0, L.default)(t),
|
|
554
554
|
file: e.name ?? this.getI18n()("unnamed")
|
|
555
555
|
}), { file: e });
|
|
556
|
-
if (n && e.size != null && e.size < n) throw new
|
|
556
|
+
if (n && e.size != null && e.size < n) throw new R(this.getI18n()("inferiorSize", { size: (0, L.default)(n) }), { file: e });
|
|
557
557
|
}
|
|
558
558
|
validate(e, t) {
|
|
559
559
|
t.forEach((e) => {
|
|
@@ -562,17 +562,17 @@ var N = (e) => {
|
|
|
562
562
|
}
|
|
563
563
|
validateMinNumberOfFiles(e) {
|
|
564
564
|
let { minNumberOfFiles: t } = this.getOpts().restrictions;
|
|
565
|
-
if (t && Object.keys(e).length < t) throw new
|
|
565
|
+
if (t && Object.keys(e).length < t) throw new R(this.getI18n()("youHaveToAtLeastSelectX", { smart_count: t }));
|
|
566
566
|
}
|
|
567
567
|
getMissingRequiredMetaFields(e) {
|
|
568
|
-
let t = new
|
|
568
|
+
let t = new R(this.getI18n()("missingRequiredMetaFieldOnFile", { fileName: e.name ?? this.getI18n()("unnamed") })), { requiredMetaFields: n } = this.getOpts().restrictions, r = [];
|
|
569
569
|
for (let t of n) (!Object.hasOwn(e.meta, t) || e.meta[t] === "") && r.push(t);
|
|
570
570
|
return {
|
|
571
571
|
missingFields: r,
|
|
572
572
|
error: t
|
|
573
573
|
};
|
|
574
574
|
}
|
|
575
|
-
},
|
|
575
|
+
}, pe = {
|
|
576
576
|
name: "@uppy/store-default",
|
|
577
577
|
description: "The default simple object-based store for Uppy.",
|
|
578
578
|
version: "5.0.0",
|
|
@@ -611,8 +611,8 @@ var N = (e) => {
|
|
|
611
611
|
"dist",
|
|
612
612
|
"CHANGELOG.md"
|
|
613
613
|
]
|
|
614
|
-
},
|
|
615
|
-
static VERSION =
|
|
614
|
+
}, me = class {
|
|
615
|
+
static VERSION = pe.version;
|
|
616
616
|
state = {};
|
|
617
617
|
#e = /* @__PURE__ */ new Set();
|
|
618
618
|
getState() {
|
|
@@ -635,39 +635,39 @@ var N = (e) => {
|
|
|
635
635
|
t(...e);
|
|
636
636
|
});
|
|
637
637
|
}
|
|
638
|
-
},
|
|
638
|
+
}, z = /* @__PURE__ */ t(((e, t) => {
|
|
639
639
|
function n(e) {
|
|
640
640
|
var t = typeof e;
|
|
641
641
|
return e != null && (t == "object" || t == "function");
|
|
642
642
|
}
|
|
643
643
|
t.exports = n;
|
|
644
|
-
})),
|
|
644
|
+
})), he = /* @__PURE__ */ t(((e, t) => {
|
|
645
645
|
t.exports = typeof global == "object" && global && global.Object === Object && global;
|
|
646
|
-
})),
|
|
647
|
-
var n =
|
|
646
|
+
})), ge = /* @__PURE__ */ t(((e, t) => {
|
|
647
|
+
var n = he(), r = typeof self == "object" && self && self.Object === Object && self;
|
|
648
648
|
t.exports = n || r || Function("return this")();
|
|
649
|
-
})),
|
|
650
|
-
var n =
|
|
649
|
+
})), _e = /* @__PURE__ */ t(((e, t) => {
|
|
650
|
+
var n = ge();
|
|
651
651
|
t.exports = function() {
|
|
652
652
|
return n.Date.now();
|
|
653
653
|
};
|
|
654
|
-
})),
|
|
654
|
+
})), ve = /* @__PURE__ */ t(((e, t) => {
|
|
655
655
|
var n = /\s/;
|
|
656
656
|
function r(e) {
|
|
657
657
|
for (var t = e.length; t-- && n.test(e.charAt(t)););
|
|
658
658
|
return t;
|
|
659
659
|
}
|
|
660
660
|
t.exports = r;
|
|
661
|
-
})),
|
|
662
|
-
var n =
|
|
661
|
+
})), ye = /* @__PURE__ */ t(((e, t) => {
|
|
662
|
+
var n = ve(), r = /^\s+/;
|
|
663
663
|
function i(e) {
|
|
664
664
|
return e && e.slice(0, n(e) + 1).replace(r, "");
|
|
665
665
|
}
|
|
666
666
|
t.exports = i;
|
|
667
|
-
})),
|
|
668
|
-
t.exports =
|
|
669
|
-
})),
|
|
670
|
-
var n =
|
|
667
|
+
})), be = /* @__PURE__ */ t(((e, t) => {
|
|
668
|
+
t.exports = ge().Symbol;
|
|
669
|
+
})), xe = /* @__PURE__ */ t(((e, t) => {
|
|
670
|
+
var n = be(), r = Object.prototype, i = r.hasOwnProperty, a = r.toString, o = n ? n.toStringTag : void 0;
|
|
671
671
|
function s(e) {
|
|
672
672
|
var t = i.call(e, o), n = e[o];
|
|
673
673
|
try {
|
|
@@ -678,31 +678,31 @@ var N = (e) => {
|
|
|
678
678
|
return r && (t ? e[o] = n : delete e[o]), s;
|
|
679
679
|
}
|
|
680
680
|
t.exports = s;
|
|
681
|
-
})),
|
|
681
|
+
})), Se = /* @__PURE__ */ t(((e, t) => {
|
|
682
682
|
var n = Object.prototype.toString;
|
|
683
683
|
function r(e) {
|
|
684
684
|
return n.call(e);
|
|
685
685
|
}
|
|
686
686
|
t.exports = r;
|
|
687
|
-
})),
|
|
688
|
-
var n =
|
|
687
|
+
})), Ce = /* @__PURE__ */ t(((e, t) => {
|
|
688
|
+
var n = be(), r = xe(), i = Se(), a = "[object Null]", o = "[object Undefined]", s = n ? n.toStringTag : void 0;
|
|
689
689
|
function c(e) {
|
|
690
690
|
return e == null ? e === void 0 ? o : a : s && s in Object(e) ? r(e) : i(e);
|
|
691
691
|
}
|
|
692
692
|
t.exports = c;
|
|
693
|
-
})),
|
|
693
|
+
})), we = /* @__PURE__ */ t(((e, t) => {
|
|
694
694
|
function n(e) {
|
|
695
695
|
return typeof e == "object" && !!e;
|
|
696
696
|
}
|
|
697
697
|
t.exports = n;
|
|
698
|
-
})),
|
|
699
|
-
var n =
|
|
698
|
+
})), Te = /* @__PURE__ */ t(((e, t) => {
|
|
699
|
+
var n = Ce(), r = we(), i = "[object Symbol]";
|
|
700
700
|
function a(e) {
|
|
701
701
|
return typeof e == "symbol" || r(e) && n(e) == i;
|
|
702
702
|
}
|
|
703
703
|
t.exports = a;
|
|
704
|
-
})),
|
|
705
|
-
var n =
|
|
704
|
+
})), Ee = /* @__PURE__ */ t(((e, t) => {
|
|
705
|
+
var n = ye(), r = z(), i = Te(), a = NaN, o = /^[-+]0x[0-9a-f]+$/i, s = /^0b[01]+$/i, c = /^0o[0-7]+$/i, l = parseInt;
|
|
706
706
|
function u(e) {
|
|
707
707
|
if (typeof e == "number") return e;
|
|
708
708
|
if (i(e)) return a;
|
|
@@ -716,8 +716,8 @@ var N = (e) => {
|
|
|
716
716
|
return u || c.test(e) ? l(e.slice(2), u ? 2 : 8) : o.test(e) ? a : +e;
|
|
717
717
|
}
|
|
718
718
|
t.exports = u;
|
|
719
|
-
})),
|
|
720
|
-
var n =
|
|
719
|
+
})), De = /* @__PURE__ */ t(((e, t) => {
|
|
720
|
+
var n = z(), r = _e(), i = Ee(), a = "Expected a function", o = Math.max, s = Math.min;
|
|
721
721
|
function c(e, t, c) {
|
|
722
722
|
var l, u, d, f, p, m, h = 0, g = !1, _ = !1, v = !0;
|
|
723
723
|
if (typeof e != "function") throw TypeError(a);
|
|
@@ -762,8 +762,8 @@ var N = (e) => {
|
|
|
762
762
|
return D.cancel = T, D.flush = E, D;
|
|
763
763
|
}
|
|
764
764
|
t.exports = c;
|
|
765
|
-
})),
|
|
766
|
-
var n =
|
|
765
|
+
})), Oe = /* @__PURE__ */ t(((e, t) => {
|
|
766
|
+
var n = De(), r = z(), i = "Expected a function";
|
|
767
767
|
function a(e, t, a) {
|
|
768
768
|
var o = !0, s = !0;
|
|
769
769
|
if (typeof e != "function") throw TypeError(i);
|
|
@@ -774,7 +774,7 @@ var N = (e) => {
|
|
|
774
774
|
});
|
|
775
775
|
}
|
|
776
776
|
t.exports = a;
|
|
777
|
-
})),
|
|
777
|
+
})), ke = /* @__PURE__ */ t(((e, t) => {
|
|
778
778
|
t.exports = function() {
|
|
779
779
|
var e = {}, t = e._fns = {};
|
|
780
780
|
e.emit = function(e, t, i, a, o, s, c) {
|
|
@@ -814,11 +814,11 @@ var N = (e) => {
|
|
|
814
814
|
}
|
|
815
815
|
return e;
|
|
816
816
|
};
|
|
817
|
-
})),
|
|
817
|
+
})), Ae = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict", je = (e = 21) => {
|
|
818
818
|
let t = "", n = e | 0;
|
|
819
|
-
for (; n-- > 0;) t +=
|
|
819
|
+
for (; n-- > 0;) t += Ae[Math.random() * 64 | 0];
|
|
820
820
|
return t;
|
|
821
|
-
},
|
|
821
|
+
}, Me = {
|
|
822
822
|
name: "@uppy/core",
|
|
823
823
|
description: "Core module for the extensible JavaScript file upload widget with support for drag&drop, resumable uploads, previews, restrictions, file processing/encoding, remote providers like Instagram, Dropbox, Google Drive, S3 and more :dog:",
|
|
824
824
|
version: "5.2.0",
|
|
@@ -880,12 +880,12 @@ var N = (e) => {
|
|
|
880
880
|
};
|
|
881
881
|
//#endregion
|
|
882
882
|
//#region ../../node_modules/@uppy/core/lib/getFileName.js
|
|
883
|
-
function
|
|
883
|
+
function Ne(e, t) {
|
|
884
884
|
return t.name ? t.name : e.split("/")[0] === "image" ? `${e.split("/")[0]}.${e.split("/")[1]}` : "noname";
|
|
885
885
|
}
|
|
886
886
|
//#endregion
|
|
887
887
|
//#region ../../node_modules/@uppy/core/lib/locale.js
|
|
888
|
-
var
|
|
888
|
+
var Pe = { strings: {
|
|
889
889
|
addBulkFilesFailed: {
|
|
890
890
|
0: "Failed to add %{smart_count} file due to an internal error",
|
|
891
891
|
1: "Failed to add %{smart_count} files due to internal errors"
|
|
@@ -949,7 +949,7 @@ var Ie = { strings: {
|
|
|
949
949
|
} };
|
|
950
950
|
//#endregion
|
|
951
951
|
//#region ../../node_modules/@uppy/core/lib/supportsUploadProgress.js
|
|
952
|
-
function
|
|
952
|
+
function Fe(e) {
|
|
953
953
|
if (e == null && typeof navigator < "u" && (e = navigator.userAgent), !e) return !0;
|
|
954
954
|
let t = /Edge\/(\d+\.\d+)/.exec(e);
|
|
955
955
|
if (!t) return !0;
|
|
@@ -958,17 +958,17 @@ function Le(e) {
|
|
|
958
958
|
}
|
|
959
959
|
//#endregion
|
|
960
960
|
//#region ../../node_modules/@uppy/core/lib/Uppy.js
|
|
961
|
-
var
|
|
961
|
+
var Ie = /* @__PURE__ */ e(Oe(), 1), Le = /* @__PURE__ */ e(ke(), 1), B = {
|
|
962
962
|
totalProgress: 0,
|
|
963
963
|
allowNewUpload: !0,
|
|
964
964
|
error: null,
|
|
965
965
|
recoveredState: null
|
|
966
|
-
},
|
|
967
|
-
static VERSION =
|
|
966
|
+
}, Re = class e {
|
|
967
|
+
static VERSION = Me.version;
|
|
968
968
|
#e = Object.create(null);
|
|
969
969
|
#t;
|
|
970
970
|
#n;
|
|
971
|
-
#r = (0,
|
|
971
|
+
#r = (0, Le.default)();
|
|
972
972
|
#i = /* @__PURE__ */ new Set();
|
|
973
973
|
#a = /* @__PURE__ */ new Set();
|
|
974
974
|
#o = /* @__PURE__ */ new Set();
|
|
@@ -981,18 +981,18 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
981
981
|
scheduledAutoProceed = null;
|
|
982
982
|
wasOffline = !1;
|
|
983
983
|
constructor(t) {
|
|
984
|
-
this.defaultLocale =
|
|
984
|
+
this.defaultLocale = Pe;
|
|
985
985
|
let n = {
|
|
986
986
|
id: "uppy",
|
|
987
987
|
autoProceed: !1,
|
|
988
988
|
allowMultipleUploadBatches: !0,
|
|
989
989
|
debug: !1,
|
|
990
|
-
restrictions:
|
|
990
|
+
restrictions: de,
|
|
991
991
|
meta: {},
|
|
992
992
|
onBeforeFileAdded: (e, t) => !Object.hasOwn(t, e.id),
|
|
993
993
|
onBeforeUpload: (e) => e,
|
|
994
|
-
store: new
|
|
995
|
-
logger:
|
|
994
|
+
store: new me(),
|
|
995
|
+
logger: ae,
|
|
996
996
|
infoTimeout: 5e3
|
|
997
997
|
}, r = {
|
|
998
998
|
...n,
|
|
@@ -1004,19 +1004,19 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1004
1004
|
...n.restrictions,
|
|
1005
1005
|
...t?.restrictions
|
|
1006
1006
|
}
|
|
1007
|
-
}, t?.logger && t.debug ? this.log("You are using a custom `logger`, but also set `debug: true`, which uses built-in logger to output logs to console. Ignoring `debug: true` and using your custom `logger`.", "warning") : t?.debug && (this.opts.logger =
|
|
1008
|
-
...
|
|
1007
|
+
}, t?.logger && t.debug ? this.log("You are using a custom `logger`, but also set `debug: true`, which uses built-in logger to output logs to console. Ignoring `debug: true` and using your custom `logger`.", "warning") : t?.debug && (this.opts.logger = oe), this.log(`Using Core v${e.VERSION}`), this.i18nInit(), this.store = this.opts.store, this.setState({
|
|
1008
|
+
...B,
|
|
1009
1009
|
plugins: {},
|
|
1010
1010
|
files: {},
|
|
1011
1011
|
currentUploads: {},
|
|
1012
1012
|
capabilities: {
|
|
1013
|
-
uploadProgress:
|
|
1013
|
+
uploadProgress: Fe(),
|
|
1014
1014
|
individualCancellation: !0,
|
|
1015
1015
|
resumableUploads: !1
|
|
1016
1016
|
},
|
|
1017
1017
|
meta: { ...this.opts.meta },
|
|
1018
1018
|
info: []
|
|
1019
|
-
}), this.#t = new
|
|
1019
|
+
}), this.#t = new fe(() => this.opts, () => this.i18n), this.#n = this.store.subscribe((e, t, n) => {
|
|
1020
1020
|
this.emit("state-update", e, t, n), this.updateAll(t);
|
|
1021
1021
|
}), this.opts.debug && typeof window < "u" && (window[this.opts.id] = this), this.#b();
|
|
1022
1022
|
}
|
|
@@ -1092,14 +1092,14 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1092
1092
|
};
|
|
1093
1093
|
}), this.setState({
|
|
1094
1094
|
files: n,
|
|
1095
|
-
...
|
|
1095
|
+
...B
|
|
1096
1096
|
});
|
|
1097
1097
|
}
|
|
1098
1098
|
clear() {
|
|
1099
1099
|
let { capabilities: e, currentUploads: t } = this.getState();
|
|
1100
1100
|
if (Object.keys(t).length > 0 && !e.individualCancellation) throw Error("The installed uploader plugin does not allow removing files during an upload.");
|
|
1101
1101
|
this.setState({
|
|
1102
|
-
...
|
|
1102
|
+
...B,
|
|
1103
1103
|
files: {}
|
|
1104
1104
|
});
|
|
1105
1105
|
}
|
|
@@ -1238,7 +1238,7 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1238
1238
|
#u(e) {
|
|
1239
1239
|
let { allowNewUpload: t } = this.getState();
|
|
1240
1240
|
if (t === !1) {
|
|
1241
|
-
let t = new
|
|
1241
|
+
let t = new R(this.i18n("noMoreFilesAllowed"), { file: e });
|
|
1242
1242
|
throw this.#s([t]), t;
|
|
1243
1243
|
}
|
|
1244
1244
|
}
|
|
@@ -1256,7 +1256,7 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1256
1256
|
isRemote: !1,
|
|
1257
1257
|
source: void 0,
|
|
1258
1258
|
preview: void 0
|
|
1259
|
-
} : e, n = T(t), r =
|
|
1259
|
+
} : e, n = T(t), r = Ne(n, t), i = C(r).extension, a = ee(t, this.getID()), o = {
|
|
1260
1260
|
...t.meta,
|
|
1261
1261
|
name: r,
|
|
1262
1262
|
type: n
|
|
@@ -1316,8 +1316,8 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1316
1316
|
if (t = this.getState().files, n = {
|
|
1317
1317
|
...t,
|
|
1318
1318
|
...n
|
|
1319
|
-
}, !s && this.checkIfFileAlreadyExists(e.id)) throw new
|
|
1320
|
-
if (s === !1 && !o) throw new
|
|
1319
|
+
}, !s && this.checkIfFileAlreadyExists(e.id)) throw new R(this.i18n("noDuplicates", { fileName: e.name ?? this.i18n("unnamed") }), { file: e });
|
|
1320
|
+
if (s === !1 && !o) throw new R("Cannot add the file because onBeforeFileAdded returned false.", {
|
|
1321
1321
|
isUserFacing: !1,
|
|
1322
1322
|
file: e
|
|
1323
1323
|
});
|
|
@@ -1462,7 +1462,7 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1462
1462
|
cancelAll() {
|
|
1463
1463
|
this.emit("cancel-all");
|
|
1464
1464
|
let { files: e } = this.getState(), t = Object.keys(e);
|
|
1465
|
-
t.length && this.removeFiles(t), this.setState(
|
|
1465
|
+
t.length && this.removeFiles(t), this.setState(B);
|
|
1466
1466
|
}
|
|
1467
1467
|
retryUpload(e) {
|
|
1468
1468
|
this.setFileState(e, {
|
|
@@ -1504,7 +1504,7 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1504
1504
|
let e = this.#y(), t = null;
|
|
1505
1505
|
e != null && (t = Math.round(e * 100), t > 100 ? t = 100 : t < 0 && (t = 0)), this.emit("progress", t ?? 0), this.setState({ totalProgress: t ?? 0 });
|
|
1506
1506
|
}
|
|
1507
|
-
#v = (0,
|
|
1507
|
+
#v = (0, Ie.default)(() => this.#_(), 500, {
|
|
1508
1508
|
leading: !0,
|
|
1509
1509
|
trailing: !0
|
|
1510
1510
|
});
|
|
@@ -1709,7 +1709,7 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1709
1709
|
#C(e, t = {}) {
|
|
1710
1710
|
let { forceAllowNewUpload: n = !1 } = t, { allowNewUpload: r, currentUploads: i } = this.getState();
|
|
1711
1711
|
if (!r && !n) throw Error("Cannot create a new upload: already uploading.");
|
|
1712
|
-
let a =
|
|
1712
|
+
let a = je();
|
|
1713
1713
|
return this.emit("upload", a, this.getFilesByIds(e)), this.setState({
|
|
1714
1714
|
allowNewUpload: this.opts.allowMultipleUploadBatches !== !1 && this.opts.allowMultipleUploads !== !1,
|
|
1715
1715
|
currentUploads: {
|
|
@@ -1808,7 +1808,7 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1808
1808
|
if (t === !1) throw Error("Not starting the upload because onBeforeUpload returned false");
|
|
1809
1809
|
t && typeof t == "object" && (e = t, this.setState({ files: e }));
|
|
1810
1810
|
try {
|
|
1811
|
-
if (this.#t.validateMinNumberOfFiles(e), !this.#l(e)) throw new
|
|
1811
|
+
if (this.#t.validateMinNumberOfFiles(e), !this.#l(e)) throw new R(this.i18n("missingRequiredMetaField"));
|
|
1812
1812
|
let { currentUploads: t } = this.getState(), n = Object.values(t).flatMap((e) => e.fileIDs), r = Object.keys(e).filter((e) => {
|
|
1813
1813
|
let t = this.getFile(e);
|
|
1814
1814
|
return t && !t.progress.uploadStarted && !n.includes(e);
|
|
@@ -1818,7 +1818,7 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1818
1818
|
throw this.#s([e]), e;
|
|
1819
1819
|
}
|
|
1820
1820
|
}
|
|
1821
|
-
},
|
|
1821
|
+
}, ze = {
|
|
1822
1822
|
name: "@uppy/xhr-upload",
|
|
1823
1823
|
description: "Plain and simple classic HTML multipart form uploads with Uppy, as well as uploads using the HTTP PUT method.",
|
|
1824
1824
|
version: "5.2.0",
|
|
@@ -1873,17 +1873,17 @@ var Re = /* @__PURE__ */ e(Ae(), 1), ze = /* @__PURE__ */ e(je(), 1), R = {
|
|
|
1873
1873
|
vitest: "^3.2.4"
|
|
1874
1874
|
},
|
|
1875
1875
|
peerDependencies: { "@uppy/core": "^5.2.0" }
|
|
1876
|
-
},
|
|
1876
|
+
}, Be = { strings: { uploadStalled: "Upload has not made any progress for %{seconds} seconds. You may want to retry it." } };
|
|
1877
1877
|
//#endregion
|
|
1878
1878
|
//#region ../../node_modules/@uppy/xhr-upload/lib/index.js
|
|
1879
|
-
function
|
|
1879
|
+
function Ve(e, t) {
|
|
1880
1880
|
let n = t;
|
|
1881
|
-
return n ||= /* @__PURE__ */ Error("Upload error"), typeof n == "string" && (n = Error(n)), n instanceof Error || (n = Object.assign(/* @__PURE__ */ Error("Upload error"), { data: n })),
|
|
1881
|
+
return n ||= /* @__PURE__ */ Error("Upload error"), typeof n == "string" && (n = Error(n)), n instanceof Error || (n = Object.assign(/* @__PURE__ */ Error("Upload error"), { data: n })), N(e) ? (n = new h(n, e), n) : (n.request = e, n);
|
|
1882
1882
|
}
|
|
1883
|
-
function
|
|
1883
|
+
function He(e) {
|
|
1884
1884
|
return e.data.slice(0, e.data.size, e.meta.type);
|
|
1885
1885
|
}
|
|
1886
|
-
var
|
|
1886
|
+
var Ue = {
|
|
1887
1887
|
formData: !0,
|
|
1888
1888
|
fieldName: "file",
|
|
1889
1889
|
method: "post",
|
|
@@ -1894,17 +1894,17 @@ var Ge = {
|
|
|
1894
1894
|
limit: 5,
|
|
1895
1895
|
withCredentials: !1,
|
|
1896
1896
|
responseType: ""
|
|
1897
|
-
},
|
|
1898
|
-
static VERSION =
|
|
1897
|
+
}, We = class extends F {
|
|
1898
|
+
static VERSION = ze.version;
|
|
1899
1899
|
#e;
|
|
1900
1900
|
#t;
|
|
1901
1901
|
uploaderEvents;
|
|
1902
1902
|
constructor(e, t) {
|
|
1903
1903
|
if (super(e, {
|
|
1904
|
-
...
|
|
1904
|
+
...Ue,
|
|
1905
1905
|
fieldName: t.bundle ? "files[]" : "file",
|
|
1906
1906
|
...t
|
|
1907
|
-
}), this.type = "uploader", this.id = this.opts.id || "XHRUpload", this.defaultLocale =
|
|
1907
|
+
}), this.type = "uploader", this.id = this.opts.id || "XHRUpload", this.defaultLocale = Be, this.i18nInit(), this.#t = new te({ concurrency: this.opts.limit }), this.opts.bundle && !this.opts.formData) throw Error("`opts.formData` must be true when `opts.bundle` is enabled.");
|
|
1908
1908
|
if (this.opts.bundle && typeof this.opts.headers == "function") throw Error("`opts.headers` can not be a function when the `bundle: true` option is set.");
|
|
1909
1909
|
if (t?.allowedMetaFields === void 0 && "metaFields" in this.opts) throw Error("The `metaFields` option has been renamed to `allowedMetaFields`.");
|
|
1910
1910
|
this.uploaderEvents = Object.create(null), this.#e = (e) => async (t, n) => {
|
|
@@ -1945,7 +1945,7 @@ var Ge = {
|
|
|
1945
1945
|
} catch (t) {
|
|
1946
1946
|
if (t.name === "AbortError") return;
|
|
1947
1947
|
let n = t.request;
|
|
1948
|
-
for (let r of e) this.uppy.emit("upload-error", this.uppy.getFile(r.id),
|
|
1948
|
+
for (let r of e) this.uppy.emit("upload-error", this.uppy.getFile(r.id), Ve(n, t), n);
|
|
1949
1949
|
throw t;
|
|
1950
1950
|
}
|
|
1951
1951
|
};
|
|
@@ -1960,7 +1960,7 @@ var Ge = {
|
|
|
1960
1960
|
return typeof n == "function" ? r.headers = n(e) : Object.assign(r.headers, this.opts.headers), t && Object.assign(r.headers, t.headers), e.xhrUpload && Object.assign(r.headers, e.xhrUpload.headers), r;
|
|
1961
1961
|
}
|
|
1962
1962
|
addMetadata(e, t, n) {
|
|
1963
|
-
|
|
1963
|
+
A(n.allowedMetaFields, t).forEach((n) => {
|
|
1964
1964
|
let r = t[n];
|
|
1965
1965
|
Array.isArray(r) ? r.forEach((t) => e.append(n, t)) : e.append(n, r);
|
|
1966
1966
|
});
|
|
@@ -1968,18 +1968,18 @@ var Ge = {
|
|
|
1968
1968
|
createFormDataUpload(e, t) {
|
|
1969
1969
|
let n = new FormData();
|
|
1970
1970
|
this.addMetadata(n, e.meta, t);
|
|
1971
|
-
let r =
|
|
1971
|
+
let r = He(e);
|
|
1972
1972
|
return e.name ? n.append(t.fieldName, r, e.meta.name) : n.append(t.fieldName, r), n;
|
|
1973
1973
|
}
|
|
1974
1974
|
createBundledUpload(e, t) {
|
|
1975
1975
|
let n = new FormData(), { meta: r } = this.uppy.getState();
|
|
1976
1976
|
return this.addMetadata(n, r, t), e.forEach((e) => {
|
|
1977
|
-
let t = this.getOptions(e), r =
|
|
1977
|
+
let t = this.getOptions(e), r = He(e);
|
|
1978
1978
|
e.name ? n.append(t.fieldName, r, e.name) : n.append(t.fieldName, r);
|
|
1979
1979
|
}), n;
|
|
1980
1980
|
}
|
|
1981
1981
|
async #n(e) {
|
|
1982
|
-
let t = new
|
|
1982
|
+
let t = new I(this.uppy), n = new AbortController();
|
|
1983
1983
|
t.onFileRemove(e.id, () => n.abort()), t.onCancelAll(e.id, () => n.abort());
|
|
1984
1984
|
try {
|
|
1985
1985
|
await this.#t.add(async (t) => {
|
|
@@ -2023,7 +2023,7 @@ var Ge = {
|
|
|
2023
2023
|
}
|
|
2024
2024
|
}
|
|
2025
2025
|
#i(e) {
|
|
2026
|
-
let t = this.getOptions(e), n =
|
|
2026
|
+
let t = this.getOptions(e), n = A(t.allowedMetaFields, e.meta);
|
|
2027
2027
|
return {
|
|
2028
2028
|
...e.remote?.body,
|
|
2029
2029
|
protocol: "multipart",
|
|
@@ -2085,64 +2085,64 @@ var Ge = {
|
|
|
2085
2085
|
}
|
|
2086
2086
|
this.uppy.removeUploader(this.#o);
|
|
2087
2087
|
}
|
|
2088
|
-
},
|
|
2089
|
-
d(
|
|
2090
|
-
function
|
|
2088
|
+
}, Ge = "@layer formie-theme{.formie-upload-manager{gap:var(--formie-gap-field);flex-direction:column;display:flex}.formie-upload-manager-dropzone{justify-content:center;align-items:center;gap:var(--formie-space-2);padding:var(--formie-space-4);min-height:calc(var(--formie-control-height) * 3);border:var(--formie-border-width) dashed var(--formie-color-border-control);border-radius:var(--formie-radius-sm);background:var(--formie-color-surface-subtle);color:var(--formie-color-text);text-align:center;cursor:pointer;flex-direction:column;transition:border-color .15s,background-color .15s,box-shadow .15s;display:flex}.formie-upload-manager-dropzone:hover,.formie-upload-manager-dropzone.formie-upload-manager-dropzone-active{border-color:var(--formie-color-focus-ring);background:var(--formie-color-surface-muted)}.formie-upload-manager-dropzone:focus{outline:0}.formie-upload-manager-dropzone:focus-visible{box-shadow:0 0 0 var(--formie-focus-ring-width) var(--formie-color-focus-ring)}.formie-field-has-error .formie-upload-manager-dropzone{border-color:var(--formie-color-danger)}.formie-upload-manager-prompt{font-size:var(--formie-font-size-sm);color:var(--formie-color-text-muted);margin:0}.formie-upload-manager-list{gap:var(--formie-space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.formie-upload-manager-item{align-items:center;gap:var(--formie-space-2);padding:var(--formie-space-2) var(--formie-space-3);border:var(--formie-border-width) solid var(--formie-color-border-control);border-radius:var(--formie-radius-sm);background:var(--formie-color-surface);grid-template-columns:minmax(0,1fr) minmax(6.5rem,8rem) auto;display:grid}.formie-upload-manager-item.is-error{border-color:var(--formie-color-danger)}.formie-upload-manager-item.is-complete .formie-upload-manager-progress{opacity:0;visibility:hidden;pointer-events:none}.formie-upload-manager-filename{text-overflow:ellipsis;white-space:nowrap;font-size:var(--formie-font-size-sm);overflow:hidden}.formie-upload-manager-progress{justify-content:center;gap:var(--formie-space-1);min-height:var(--formie-button-icon-button-size);opacity:1;visibility:visible;flex-direction:column;align-self:center;transition:opacity .2s,visibility .2s;display:flex}.formie-upload-manager-progress-track{border-radius:var(--formie-radius-full);background:var(--formie-color-surface-muted);height:.375rem;position:relative;overflow:hidden}.formie-upload-manager-progress-bar{border-radius:inherit;background:var(--formie-color-primary);width:0;height:100%;transition:width .18s ease-out,background-color .2s}.formie-upload-manager-item.is-upload-complete .formie-upload-manager-progress-bar{background:var(--formie-color-success,var(--formie-color-primary));width:100%!important}.formie-upload-manager-item.is-uploading:not(.is-upload-complete) .formie-upload-manager-progress-track[data-indeterminate=true] .formie-upload-manager-progress-bar,.formie-upload-manager-item.is-preparing .formie-upload-manager-progress-bar,.formie-upload-manager-item.is-processing .formie-upload-manager-progress-bar{width:35%;animation:1.1s ease-in-out infinite formie-upload-manager-progress-indeterminate}.formie-upload-manager-item.is-processing .formie-upload-manager-progress-bar{opacity:.85}.formie-upload-manager-item.is-processing .formie-upload-manager-progress-label{color:var(--formie-color-text)}@keyframes formie-upload-manager-progress-indeterminate{0%{transform:translate(-120%)}to{transform:translate(320%)}}.formie-upload-manager-progress-label{font-size:var(--formie-font-size-xs);color:var(--formie-color-text-muted);text-align:center;white-space:nowrap;line-height:1.2}.formie-upload-manager-item.is-upload-complete .formie-upload-manager-progress-label{color:var(--formie-color-success-dark,var(--formie-color-primary));font-weight:var(--formie-font-weight-medium)}.formie-upload-manager-error{font-size:var(--formie-font-size-xs);color:var(--formie-color-danger);grid-column:1/-1}.formie-upload-manager-browse-button{margin-top:var(--formie-space-1)}.formie-upload-manager-actions{align-items:center;gap:var(--formie-space-2);flex-shrink:0;align-self:center;display:flex}.formie-upload-manager-sort-controls{border-radius:var(--formie-radius-sm);background:0 0;flex-direction:row;align-items:center;gap:.0625rem;padding:0;display:inline-flex}.formie-upload-manager-sort-controls[hidden]{display:none}.formie-upload-manager-sort-button,.formie-upload-manager-action-button{border-radius:var(--formie-radius-sm);width:1.375rem;height:1.375rem;color:var(--formie-color-text-muted);cursor:pointer;text-indent:-9999px;white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;padding:0;font-size:0;line-height:0;transition:background-color .15s,color .15s,opacity .15s;display:inline-flex;position:relative;overflow:hidden}.formie-upload-manager-sort-button{width:1.375rem;height:1.375rem}.formie-upload-manager-sort-button:hover:not(:disabled),.formie-upload-manager-action-button:hover{background:var(--formie-color-surface-muted);color:var(--formie-color-text)}.formie-upload-manager-sort-button:focus-visible,.formie-upload-manager-action-button:focus-visible{box-shadow:0 0 0 var(--formie-focus-ring-width) var(--formie-color-focus-ring);outline:0}.formie-upload-manager-sort-button:disabled{opacity:.28;cursor:not-allowed}.formie-upload-manager-sort-button:after,.formie-upload-manager-action-button:after{content:\"\";background-color:currentColor;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.formie-upload-manager-sort-button[data-formie-icon=arrow-up]{--formie-upload-manager-icon-mask:var(--formie-icon-mask-arrow-up)}.formie-upload-manager-sort-button[data-formie-icon=arrow-down]{--formie-upload-manager-icon-mask:var(--formie-icon-mask-arrow-down)}.formie-upload-manager-action-button[data-formie-icon=close]{--formie-upload-manager-icon-mask:var(--formie-icon-mask-close)}.formie-upload-manager-sort-button:after{width:.75rem;height:.75rem;-webkit-mask-image:var(--formie-upload-manager-icon-mask);-webkit-mask-image:var(--formie-upload-manager-icon-mask);mask-image:var(--formie-upload-manager-icon-mask)}.formie-upload-manager-action-button:after{width:.825rem;height:.825rem;-webkit-mask-image:var(--formie-upload-manager-icon-mask);-webkit-mask-image:var(--formie-upload-manager-icon-mask);mask-image:var(--formie-upload-manager-icon-mask)}.formie-upload-manager-remove-button{flex-shrink:0}}", V = "[data-formie-upload-manager-root]", H = "[data-formie-upload-manager]", Ke = "[data-formie-upload-manager-browse]", qe = "[data-formie-upload-manager-input]", U = "[data-formie-upload-manager-status]", Je = "[data-formie-upload-manager-list]", Ye = "[data-formie-upload-manager-sort-controls]", Xe = "[data-formie-upload-manager-sort=\"up\"]", Ze = "[data-formie-upload-manager-sort=\"down\"]", W = "data-formie-file-upload-anchor", G = "data-formie-file-upload-asset-id", Qe = "data-formie-file-upload-token", K = "data-formie-file-upload-entry", $e = r("reset"), et = i("repeater", "init-row"), tt = "upload-manager", nt = "upload-manager", rt = ["uploadManagerRequired", "uploadManagerFileLimit"], it = 900, at = 95, ot = 12e4, q = a("fields", "upload-manager");
|
|
2089
|
+
d(tt, [Ge]);
|
|
2090
|
+
function st(e) {
|
|
2091
2091
|
return !!e && typeof e == "object" && !Array.isArray(e);
|
|
2092
2092
|
}
|
|
2093
|
-
function
|
|
2093
|
+
function J(e) {
|
|
2094
2094
|
let t = Number(e);
|
|
2095
2095
|
return Number.isInteger(t) && t > 0 ? t : null;
|
|
2096
2096
|
}
|
|
2097
|
-
function
|
|
2097
|
+
function Y(e) {
|
|
2098
2098
|
return typeof e == "string" ? e.trim() : "";
|
|
2099
2099
|
}
|
|
2100
|
-
function
|
|
2100
|
+
function ct(e) {
|
|
2101
2101
|
return e.getAttribute("data-formie-field-handle")?.trim() || "";
|
|
2102
2102
|
}
|
|
2103
|
-
function
|
|
2103
|
+
function lt(e) {
|
|
2104
2104
|
if (!e) return "";
|
|
2105
2105
|
let t = e.querySelector("input[name=\"handle\"]");
|
|
2106
2106
|
return t instanceof HTMLInputElement && t.value.trim() ? t.value.trim() : e.getAttribute("data-formie-handle")?.trim() || "";
|
|
2107
2107
|
}
|
|
2108
|
-
function
|
|
2108
|
+
function X(e) {
|
|
2109
2109
|
return Array.from(e.querySelectorAll("input[type=\"hidden\"]")).filter((e) => e instanceof HTMLInputElement);
|
|
2110
2110
|
}
|
|
2111
|
-
function
|
|
2112
|
-
let n =
|
|
2113
|
-
if (n) return n.setAttribute(
|
|
2111
|
+
function ut(e, t) {
|
|
2112
|
+
let n = X(e).find((e) => e.hasAttribute(W) || e.name === t.replace("[]", "") && e.value === "");
|
|
2113
|
+
if (n) return n.setAttribute(W, "true"), n;
|
|
2114
2114
|
let r = document.createElement("input");
|
|
2115
|
-
return r.type = "hidden", r.name = t.replace("[]", ""), r.value = "", r.setAttribute(
|
|
2115
|
+
return r.type = "hidden", r.name = t.replace("[]", ""), r.value = "", r.setAttribute(W, "true"), e.prepend(r), r;
|
|
2116
2116
|
}
|
|
2117
|
-
function
|
|
2118
|
-
return
|
|
2117
|
+
function dt(e, t) {
|
|
2118
|
+
return X(e).filter((e) => e.hasAttribute(G) || e.name === t && e.value.trim() !== "");
|
|
2119
2119
|
}
|
|
2120
|
-
function
|
|
2121
|
-
return
|
|
2120
|
+
function ft(e, t) {
|
|
2121
|
+
return dt(e, t).map((e) => J(e.getAttribute(G)) ?? J(e.value)).filter((e) => e !== null);
|
|
2122
2122
|
}
|
|
2123
2123
|
function pt(e, t) {
|
|
2124
2124
|
let n = {};
|
|
2125
|
-
return
|
|
2126
|
-
let t =
|
|
2125
|
+
return dt(e, t).forEach((e) => {
|
|
2126
|
+
let t = J(e.getAttribute(G)) ?? J(e.value), r = e.getAttribute(Qe)?.trim() || "";
|
|
2127
2127
|
t && r && (n[t] = r);
|
|
2128
2128
|
}), n;
|
|
2129
2129
|
}
|
|
2130
2130
|
function mt(e, t, n, r) {
|
|
2131
2131
|
let i = t, a = n.endsWith("[]") ? n.slice(0, -2) : n;
|
|
2132
|
-
|
|
2132
|
+
X(e).filter((e) => e.hasAttribute(K) || e.name === n && e.value.trim() !== "").forEach((e) => {
|
|
2133
2133
|
e.remove();
|
|
2134
2134
|
}), r.forEach(({ assetId: e, uploadToken: t, uploadUid: n, attachToken: r }, o) => {
|
|
2135
2135
|
let s = document.createElement("input");
|
|
2136
|
-
if (s.type = "hidden", s.setAttribute(
|
|
2136
|
+
if (s.type = "hidden", s.setAttribute(K, "true"), s.setAttribute(G, String(e)), n && r ? (s.name = `${a}[${o}][uploadUid]`, s.value = n) : (s.name = `${a}[${o}][assetId]`, s.value = String(e)), t && s.setAttribute(Qe, t), i.insertAdjacentElement("afterend", s), i = s, n && r) {
|
|
2137
2137
|
let e = document.createElement("input");
|
|
2138
|
-
e.type = "hidden", e.name = `${a}[${o}][attachToken]`, e.value = r, e.setAttribute(
|
|
2138
|
+
e.type = "hidden", e.name = `${a}[${o}][attachToken]`, e.value = r, e.setAttribute(K, "true"), i.insertAdjacentElement("afterend", e), i = e;
|
|
2139
2139
|
}
|
|
2140
2140
|
});
|
|
2141
2141
|
}
|
|
2142
2142
|
function ht(e, t, n) {
|
|
2143
2143
|
let r = n.getAttribute("data-formie-upload-key")?.trim() || n.getAttribute("data-formie-input-id")?.trim() || "", i = {
|
|
2144
|
-
handle:
|
|
2145
|
-
fieldHandle:
|
|
2144
|
+
handle: lt(e),
|
|
2145
|
+
fieldHandle: ct(t),
|
|
2146
2146
|
inputKey: r
|
|
2147
2147
|
};
|
|
2148
2148
|
return e ? ([
|
|
@@ -2161,7 +2161,7 @@ function ht(e, t, n) {
|
|
|
2161
2161
|
}), o(i, e), i) : i;
|
|
2162
2162
|
}
|
|
2163
2163
|
function gt(e, t, n, r = {}) {
|
|
2164
|
-
let i = new FormData(), a =
|
|
2164
|
+
let i = new FormData(), a = lt(e), o = ct(t);
|
|
2165
2165
|
return a && i.append("handle", a), o && i.append("fieldHandle", o), [
|
|
2166
2166
|
"submissionUid",
|
|
2167
2167
|
"resumeToken",
|
|
@@ -2184,10 +2184,10 @@ function _t(e) {
|
|
|
2184
2184
|
let t = e.split(",").map((e) => e.trim()).filter(Boolean);
|
|
2185
2185
|
return t.length ? t : null;
|
|
2186
2186
|
}
|
|
2187
|
-
function
|
|
2187
|
+
function vt(e, t, n, r) {
|
|
2188
2188
|
return t?.trim() || e.getAttribute(n)?.trim() || r;
|
|
2189
2189
|
}
|
|
2190
|
-
function
|
|
2190
|
+
function Z(e) {
|
|
2191
2191
|
let t = e.querySelector("[data-formie-upload-manager-progress]");
|
|
2192
2192
|
if (!(t instanceof HTMLElement)) return {
|
|
2193
2193
|
track: null,
|
|
@@ -2202,11 +2202,11 @@ function vt(e) {
|
|
|
2202
2202
|
};
|
|
2203
2203
|
}
|
|
2204
2204
|
function Q(e, t, n = "uploading") {
|
|
2205
|
-
let { track: r, bar: i, label: a } =
|
|
2205
|
+
let { track: r, bar: i, label: a } = Z(e);
|
|
2206
2206
|
e.classList.add("is-uploading"), e.classList.remove("is-upload-complete", "is-complete", "is-processing", "is-preparing"), n === "processing" ? e.classList.add("is-processing") : n === "preparing" && e.classList.add("is-preparing"), r && r.setAttribute("data-indeterminate", "true"), i && (i.style.removeProperty("width"), i.setAttribute("data-progress", n)), a && (a.textContent = t);
|
|
2207
2207
|
}
|
|
2208
2208
|
function yt(e, t, n) {
|
|
2209
|
-
let { track: r, bar: i, label: a } =
|
|
2209
|
+
let { track: r, bar: i, label: a } = Z(e), o = Math.max(0, Math.min(at, Math.round(t)));
|
|
2210
2210
|
e.classList.add("is-uploading"), e.classList.remove("is-upload-complete", "is-complete", "is-processing", "is-preparing"), r && r.setAttribute("data-indeterminate", "false"), i && (i.style.width = `${o}%`, i.setAttribute("data-progress", String(o))), a && (a.textContent = n || (o > 0 ? `Uploading… ${o}%` : "Uploading…"));
|
|
2211
2211
|
}
|
|
2212
2212
|
function bt(e, t, n = {}) {
|
|
@@ -2219,7 +2219,7 @@ function bt(e, t, n = {}) {
|
|
|
2219
2219
|
Q(e, "Uploading…", "uploading");
|
|
2220
2220
|
return;
|
|
2221
2221
|
}
|
|
2222
|
-
let a = Math.min(
|
|
2222
|
+
let a = Math.min(at, Math.max(1, Math.round(t)));
|
|
2223
2223
|
yt(e, a, `Uploading… ${a}%`);
|
|
2224
2224
|
}
|
|
2225
2225
|
function xt(e, t) {
|
|
@@ -2237,16 +2237,20 @@ function St(e) {
|
|
|
2237
2237
|
return e.status === 0 || e.status >= 500;
|
|
2238
2238
|
}
|
|
2239
2239
|
function Ct(e) {
|
|
2240
|
-
let { track: t, bar: n, label: r } =
|
|
2240
|
+
let { track: t, bar: n, label: r } = Z(e);
|
|
2241
2241
|
e.classList.add("is-uploading", "is-upload-complete"), e.classList.remove("is-complete", "is-processing", "is-preparing"), t && t.setAttribute("data-indeterminate", "false"), n && (n.style.width = "100%", n.setAttribute("data-progress", "100")), r && (r.textContent = "Complete"), window.setTimeout(() => {
|
|
2242
2242
|
e.classList.add("is-complete"), e.classList.remove("is-uploading", "is-upload-complete");
|
|
2243
|
-
},
|
|
2243
|
+
}, it);
|
|
2244
2244
|
}
|
|
2245
2245
|
function wt(e) {
|
|
2246
|
+
let { track: t, bar: n, label: r } = Z(e);
|
|
2247
|
+
e.classList.add("is-error"), e.classList.remove("is-uploading", "is-upload-complete", "is-processing", "is-preparing"), t?.setAttribute("data-indeterminate", "false"), n?.setAttribute("data-progress", "error"), r && (r.textContent = "Upload failed");
|
|
2248
|
+
}
|
|
2249
|
+
function Tt(e) {
|
|
2246
2250
|
let t = e === "up" ? "Move file up" : "Move file down", n = document.createElement("button");
|
|
2247
2251
|
return n.type = "button", n.className = "formie-upload-manager-sort-button", n.setAttribute("data-formie-upload-manager-sort", e), n.setAttribute("data-formie-icon", e === "up" ? "arrow-up" : "arrow-down"), n.setAttribute("aria-label", t), n.setAttribute("title", t), n.textContent = t, n;
|
|
2248
2252
|
}
|
|
2249
|
-
function
|
|
2253
|
+
function Et(e, t) {
|
|
2250
2254
|
let n = document.createElement("li");
|
|
2251
2255
|
n.className = "formie-upload-manager-item", n.setAttribute("data-formie-upload-manager-item", "true");
|
|
2252
2256
|
let r = document.createElement("span");
|
|
@@ -2261,7 +2265,7 @@ function Tt(e, t) {
|
|
|
2261
2265
|
s.className = "formie-upload-manager-progress-label", s.setAttribute("data-formie-upload-manager-progress-label", "true"), s.textContent = "Preparing…", a.append(o), i.append(a, s);
|
|
2262
2266
|
let c = document.createElement("div");
|
|
2263
2267
|
c.className = "formie-upload-manager-sort-controls", c.setAttribute("data-formie-upload-manager-sort-controls", "true"), c.hidden = !0;
|
|
2264
|
-
let l =
|
|
2268
|
+
let l = Tt("up"), u = Tt("down");
|
|
2265
2269
|
c.append(l, u);
|
|
2266
2270
|
let d = document.createElement("div");
|
|
2267
2271
|
d.className = "formie-upload-manager-actions", d.setAttribute("data-formie-upload-manager-actions", "true");
|
|
@@ -2277,13 +2281,13 @@ function Tt(e, t) {
|
|
|
2277
2281
|
sortDownButton: u
|
|
2278
2282
|
};
|
|
2279
2283
|
}
|
|
2280
|
-
function
|
|
2281
|
-
let t =
|
|
2284
|
+
function Dt(e) {
|
|
2285
|
+
let t = X(e).find((e) => e.hasAttribute(W));
|
|
2282
2286
|
if (t?.name) return t.name.endsWith("[]") ? t.name : `${t.name}[]`;
|
|
2283
|
-
let n =
|
|
2287
|
+
let n = ct(e), r = n ? u(n) : "";
|
|
2284
2288
|
return r ? `${r}[]` : "fields[fileUpload][]";
|
|
2285
2289
|
}
|
|
2286
|
-
function
|
|
2290
|
+
function Ot(e) {
|
|
2287
2291
|
return e.files.filter((e) => e.assetId !== null).length;
|
|
2288
2292
|
}
|
|
2289
2293
|
function $(e) {
|
|
@@ -2299,53 +2303,60 @@ function $(e) {
|
|
|
2299
2303
|
filename: t
|
|
2300
2304
|
})) });
|
|
2301
2305
|
}
|
|
2302
|
-
function
|
|
2303
|
-
m(e,
|
|
2306
|
+
function kt(e) {
|
|
2307
|
+
m(e, nt, (e) => {
|
|
2304
2308
|
e.addValidator("uploadManagerRequired", ({ input: e }) => {
|
|
2305
|
-
if (!e.matches(
|
|
2309
|
+
if (!e.matches(U)) return !0;
|
|
2306
2310
|
let t = e.closest("[data-formie-field-handle]");
|
|
2307
|
-
return !(t instanceof HTMLElement) || e.getAttribute("data-formie-validation-required") !== "true" ||
|
|
2311
|
+
return !(t instanceof HTMLElement) || e.getAttribute("data-formie-validation-required") !== "true" || ft(t, Dt(t)).length > 0;
|
|
2308
2312
|
}, ({ input: e, label: t, t: n }) => e.getAttribute("data-formie-required-message") ?? n("{label} cannot be blank.", { label: t })), e.addValidator("uploadManagerFileLimit", ({ input: e }) => {
|
|
2309
|
-
if (!e.matches(
|
|
2313
|
+
if (!e.matches(U)) return !0;
|
|
2310
2314
|
let t = e.closest("[data-formie-field-handle]");
|
|
2311
2315
|
if (!(t instanceof HTMLElement)) return !0;
|
|
2312
|
-
let n = t.querySelector(
|
|
2316
|
+
let n = t.querySelector(H);
|
|
2313
2317
|
if (!(n instanceof HTMLElement)) return !0;
|
|
2314
2318
|
let r = parseInt(n.getAttribute("data-formie-file-limit") || "", 10);
|
|
2315
|
-
return !r ||
|
|
2319
|
+
return !r || ft(t, Dt(t)).length <= r;
|
|
2316
2320
|
}, ({ input: e, t }) => {
|
|
2317
|
-
let n = e.closest("[data-formie-field-handle]")?.querySelector(
|
|
2321
|
+
let n = e.closest("[data-formie-field-handle]")?.querySelector(H);
|
|
2318
2322
|
return n?.getAttribute("data-formie-validation-max-files-message") ?? t("Choose up to {files} files.", { files: n?.getAttribute("data-formie-file-limit") || "" });
|
|
2319
2323
|
});
|
|
2320
2324
|
});
|
|
2321
2325
|
}
|
|
2322
|
-
function
|
|
2323
|
-
f(e,
|
|
2326
|
+
function At(e) {
|
|
2327
|
+
f(e, nt, rt);
|
|
2324
2328
|
}
|
|
2325
|
-
function
|
|
2329
|
+
function jt(e, t) {
|
|
2326
2330
|
if (e instanceof HTMLFormElement) return e;
|
|
2327
2331
|
let n = t.closest("form");
|
|
2328
2332
|
return n instanceof HTMLFormElement ? n : null;
|
|
2329
2333
|
}
|
|
2330
|
-
function
|
|
2331
|
-
let i = e.querySelector(
|
|
2334
|
+
function Mt(e, t, r) {
|
|
2335
|
+
let i = e.querySelector(V);
|
|
2332
2336
|
if (!(i instanceof HTMLElement)) return () => {};
|
|
2333
|
-
let a = i.querySelector(
|
|
2337
|
+
let a = i.querySelector(H);
|
|
2334
2338
|
if (!(a instanceof HTMLElement)) return () => {};
|
|
2335
|
-
let o = i.querySelector(
|
|
2339
|
+
let o = i.querySelector(qe), c = i.querySelector(Ke), u = i.querySelector(Je), d = i.querySelector(U);
|
|
2336
2340
|
if (!(o instanceof HTMLInputElement) || !(u instanceof HTMLElement)) return () => {};
|
|
2337
|
-
let f =
|
|
2341
|
+
let f = jt(t, e), m = d instanceof HTMLInputElement ? d : null, h = Dt(e), g = ut(e, h), _ = vt(a, r.uploadEndpoint, "data-formie-file-upload-upload-endpoint", "/actions/formie/file-upload/upload"), v = vt(a, r.deleteEndpoint, "data-formie-file-upload-delete-endpoint", "/actions/formie/file-upload/delete"), y = vt(a, r.hydrateEndpoint, "data-formie-file-upload-hydrate-endpoint", "/actions/formie/file-upload/hydrate"), b = r.maxFiles ?? J(a.getAttribute("data-formie-file-limit")), x = r.maxFileSize ?? parseFloat(a.getAttribute("data-formie-size-max-limit") || ""), S = r.minFileSize ?? parseFloat(a.getAttribute("data-formie-size-min-limit") || ""), C = _t(r.accept ?? a.getAttribute("accept") ?? o.accept), w = {};
|
|
2338
2342
|
b && (w.maxNumberOfFiles = b), x && (w.maxFileSize = x * 1e3 * 1e3), S && (w.minFileSize = S * 1e3 * 1e3), C && (w.allowedFileTypes = C);
|
|
2339
|
-
let T = new
|
|
2343
|
+
let T = new Re({
|
|
2340
2344
|
autoProceed: !0,
|
|
2341
2345
|
restrictions: w
|
|
2342
|
-
}), E =
|
|
2343
|
-
T.
|
|
2346
|
+
}), E = document.createElement("div");
|
|
2347
|
+
E.className = "formie-upload-manager-error", E.setAttribute("role", "alert"), E.hidden = !0, i.append(E), T.on("info-visible", () => {
|
|
2348
|
+
let e = T.getState().info.filter((e) => e.type === "error");
|
|
2349
|
+
e.length && (E.textContent = [...new Set(e.map((e) => e.message))].join(" "), E.hidden = !1);
|
|
2350
|
+
});
|
|
2351
|
+
let D = () => {
|
|
2352
|
+
E.textContent = "", E.hidden = !0;
|
|
2353
|
+
}, O = s(f);
|
|
2354
|
+
T.use(We, {
|
|
2344
2355
|
endpoint: _,
|
|
2345
2356
|
fieldName: "file",
|
|
2346
2357
|
formData: !0,
|
|
2347
2358
|
withCredentials: f?.dataset.formieRequestProfile !== "cross-origin-public",
|
|
2348
|
-
timeout:
|
|
2359
|
+
timeout: ot,
|
|
2349
2360
|
shouldRetry: St,
|
|
2350
2361
|
headers: { Accept: "application/json" },
|
|
2351
2362
|
allowedMetaFields: [
|
|
@@ -2360,7 +2371,7 @@ function jt(e, t, r) {
|
|
|
2360
2371
|
"submissionEditToken",
|
|
2361
2372
|
"resumeToken",
|
|
2362
2373
|
"uploadCreateToken",
|
|
2363
|
-
...
|
|
2374
|
+
...O ? [O.name] : []
|
|
2364
2375
|
],
|
|
2365
2376
|
getResponseData(e) {
|
|
2366
2377
|
try {
|
|
@@ -2375,7 +2386,7 @@ function jt(e, t, r) {
|
|
|
2375
2386
|
i && e.setRequestHeader("X-CSRF-Token", i.value);
|
|
2376
2387
|
let a = r[0];
|
|
2377
2388
|
a?.id && a.size && e.upload.addEventListener("progress", (e) => {
|
|
2378
|
-
let t =
|
|
2389
|
+
let t = P(a.id);
|
|
2379
2390
|
if (!t) return;
|
|
2380
2391
|
let n = 0;
|
|
2381
2392
|
e.lengthComputable && e.total > 0 ? n = Math.round(e.loaded / e.total * 100) : e.loaded > 0 && a.size && (n = Math.min(100, Math.round(e.loaded / a.size * 100))), bt(t.listItem, n, {
|
|
@@ -2385,7 +2396,7 @@ function jt(e, t, r) {
|
|
|
2385
2396
|
});
|
|
2386
2397
|
}
|
|
2387
2398
|
});
|
|
2388
|
-
let
|
|
2399
|
+
let k = {
|
|
2389
2400
|
field: e,
|
|
2390
2401
|
dropzone: a,
|
|
2391
2402
|
browseInput: o,
|
|
@@ -2395,31 +2406,31 @@ function jt(e, t, r) {
|
|
|
2395
2406
|
assetInputName: h,
|
|
2396
2407
|
uppy: T,
|
|
2397
2408
|
files: []
|
|
2398
|
-
}, ee = () => b ? Math.max(0, b -
|
|
2409
|
+
}, ee = () => b ? Math.max(0, b - Ot(k)) : null, A = (e) => {
|
|
2399
2410
|
a.classList.toggle("formie-upload-manager-dropzone-active", e);
|
|
2400
|
-
},
|
|
2401
|
-
let e =
|
|
2402
|
-
|
|
2403
|
-
let r = t.listItem.querySelector(
|
|
2411
|
+
}, j = (e) => e.assetId !== null && !e.listItem.classList.contains("is-error"), M = () => {
|
|
2412
|
+
let e = k.files.length >= 2;
|
|
2413
|
+
k.files.forEach((t, n) => {
|
|
2414
|
+
let r = t.listItem.querySelector(Ye), i = t.listItem.querySelector(Xe), a = t.listItem.querySelector(Ze);
|
|
2404
2415
|
if (!(r instanceof HTMLElement)) return;
|
|
2405
|
-
let o = e &&
|
|
2406
|
-
r.hidden = !o, i instanceof HTMLButtonElement && (i.disabled = !o || n === 0), a instanceof HTMLButtonElement && (a.disabled = !o || n >=
|
|
2416
|
+
let o = e && j(t);
|
|
2417
|
+
r.hidden = !o, i instanceof HTMLButtonElement && (i.disabled = !o || n === 0), a instanceof HTMLButtonElement && (a.disabled = !o || n >= k.files.length - 1);
|
|
2407
2418
|
});
|
|
2408
|
-
},
|
|
2409
|
-
let n =
|
|
2410
|
-
if (n < 0 || r < 0 || r >=
|
|
2411
|
-
let i =
|
|
2412
|
-
|
|
2419
|
+
}, N = (e, t) => {
|
|
2420
|
+
let n = k.files.indexOf(e), r = n + t;
|
|
2421
|
+
if (n < 0 || r < 0 || r >= k.files.length) return;
|
|
2422
|
+
let i = k.files[r];
|
|
2423
|
+
k.files[n] = i, k.files[r] = e, t === -1 ? e.listItem.before(i.listItem) : e.listItem.after(i.listItem), $(k), M(), p(k.field, "file-upload", "uploaded-assets-reordered", { assets: k.files.filter((e) => e.assetId !== null).map((e) => ({
|
|
2413
2424
|
assetId: e.assetId,
|
|
2414
2425
|
filename: e.filename
|
|
2415
2426
|
})) });
|
|
2416
|
-
},
|
|
2427
|
+
}, te = (e, t, n, r) => {
|
|
2417
2428
|
t.addEventListener("click", () => {
|
|
2418
2429
|
ne(e);
|
|
2419
2430
|
}), n.addEventListener("click", () => {
|
|
2420
|
-
|
|
2431
|
+
N(e, -1);
|
|
2421
2432
|
}), r.addEventListener("click", () => {
|
|
2422
|
-
|
|
2433
|
+
N(e, 1);
|
|
2423
2434
|
});
|
|
2424
2435
|
}, ne = async (t) => {
|
|
2425
2436
|
if (t.uppyFileId && T.removeFile(t.uppyFileId), t.assetId) {
|
|
@@ -2434,15 +2445,15 @@ function jt(e, t, r) {
|
|
|
2434
2445
|
body: n
|
|
2435
2446
|
});
|
|
2436
2447
|
} catch (e) {
|
|
2437
|
-
|
|
2448
|
+
q.warn("Failed to delete uploaded asset.", {
|
|
2438
2449
|
assetId: t.assetId,
|
|
2439
2450
|
error: e
|
|
2440
2451
|
});
|
|
2441
2452
|
}
|
|
2442
2453
|
}
|
|
2443
|
-
t.listItem.remove(),
|
|
2454
|
+
t.listItem.remove(), k.files = k.files.filter((e) => e !== t), $(k), M();
|
|
2444
2455
|
}, re = (t, n, r = null, i = null, a = null, o = null) => {
|
|
2445
|
-
let { listItem: s, removeButton: c, sortUpButton: l, sortDownButton: d } =
|
|
2456
|
+
let { listItem: s, removeButton: c, sortUpButton: l, sortDownButton: d } = Et(e, n);
|
|
2446
2457
|
s.classList.add("is-complete"), u.append(s);
|
|
2447
2458
|
let f = {
|
|
2448
2459
|
assetId: t,
|
|
@@ -2454,9 +2465,9 @@ function jt(e, t, r) {
|
|
|
2454
2465
|
uppyFileId: null,
|
|
2455
2466
|
listItem: s
|
|
2456
2467
|
};
|
|
2457
|
-
|
|
2468
|
+
te(f, c, l, d), k.files.push(f), M();
|
|
2458
2469
|
}, ie = async () => {
|
|
2459
|
-
let t =
|
|
2470
|
+
let t = ft(e, h);
|
|
2460
2471
|
if (!t.length) return;
|
|
2461
2472
|
let n = pt(e, h);
|
|
2462
2473
|
try {
|
|
@@ -2464,18 +2475,18 @@ function jt(e, t, r) {
|
|
|
2464
2475
|
profile: f?.dataset.formieRequestProfile,
|
|
2465
2476
|
method: "POST",
|
|
2466
2477
|
body: gt(f, e, t, n)
|
|
2467
|
-
})).assets || [], i = new Map(r.map((e) => [
|
|
2478
|
+
})).assets || [], i = new Map(r.map((e) => [J(e.assetId), e]).filter(([e]) => e !== null));
|
|
2468
2479
|
t.forEach((e) => {
|
|
2469
|
-
if (
|
|
2480
|
+
if (k.files.some((t) => t.assetId === e)) return;
|
|
2470
2481
|
let t = i.get(e);
|
|
2471
|
-
t && re(e, t.filename || `Asset #${e}`,
|
|
2472
|
-
}), $(
|
|
2482
|
+
t && re(e, t.filename || `Asset #${e}`, Y(t.uploadToken) || n[e] || null, Y(t.deleteToken) || null, Y(t.uploadUid) || null, Y(t.attachToken) || null);
|
|
2483
|
+
}), $(k), M();
|
|
2473
2484
|
} catch (e) {
|
|
2474
|
-
|
|
2485
|
+
q.warn("Failed to hydrate uploaded assets.", { error: e });
|
|
2475
2486
|
}
|
|
2476
|
-
},
|
|
2487
|
+
}, P = (e) => e && k.files.find((t) => t.uppyFileId === e) || null;
|
|
2477
2488
|
T.on("upload-progress", (e, t) => {
|
|
2478
|
-
let n =
|
|
2489
|
+
let n = P(e?.id);
|
|
2479
2490
|
if (!n) return;
|
|
2480
2491
|
let r = t.bytesTotal || 0, i = t.bytesUploaded || 0, a = r > 0 ? Math.round(i / r * 100) : 0;
|
|
2481
2492
|
bt(n.listItem, a, {
|
|
@@ -2483,26 +2494,26 @@ function jt(e, t, r) {
|
|
|
2483
2494
|
total: r
|
|
2484
2495
|
});
|
|
2485
2496
|
}), T.on("upload-retry", (e) => {
|
|
2486
|
-
let t =
|
|
2497
|
+
let t = P(e?.id);
|
|
2487
2498
|
t && Q(t.listItem, "Retrying…", "retrying");
|
|
2488
2499
|
}), T.on("upload-success", (e, t) => {
|
|
2489
|
-
let n =
|
|
2500
|
+
let n = P(e?.id);
|
|
2490
2501
|
if (!n) return;
|
|
2491
|
-
let r = n.listItem.querySelector("[data-formie-upload-manager-error]"), i =
|
|
2502
|
+
let r = n.listItem.querySelector("[data-formie-upload-manager-error]"), i = st(t?.body) ? t.body : {}, a = J(i.assetId);
|
|
2492
2503
|
if (!i.success || !a) {
|
|
2493
|
-
if (
|
|
2504
|
+
if (wt(n.listItem), r instanceof HTMLElement) {
|
|
2494
2505
|
r.hidden = !1, r.textContent = xt(null, { message: "Upload failed." });
|
|
2495
2506
|
let e = i.errors ? Object.values(i.errors).flat().find(Boolean) : null;
|
|
2496
2507
|
e && (r.textContent = e);
|
|
2497
2508
|
}
|
|
2498
2509
|
return;
|
|
2499
2510
|
}
|
|
2500
|
-
n.assetId = a, n.uploadToken =
|
|
2511
|
+
n.assetId = a, n.uploadToken = Y(i.uploadToken) || null, n.deleteToken = Y(i.deleteToken) || null, n.uploadUid = Y(i.uploadUid) || null, n.attachToken = Y(i.attachToken) || null, n.filename = i.filename || n.filename, Ct(n.listItem), $(k), M();
|
|
2501
2512
|
}), T.on("upload-error", (e, t, n) => {
|
|
2502
|
-
let r =
|
|
2513
|
+
let r = P(e?.id);
|
|
2503
2514
|
if (!r) return;
|
|
2504
2515
|
let i = r.listItem.querySelector("[data-formie-upload-manager-error]");
|
|
2505
|
-
|
|
2516
|
+
wt(r.listItem), i instanceof HTMLElement && (i.hidden = !1, i.textContent = xt(n, t));
|
|
2506
2517
|
}), T.on("file-added", (t) => {
|
|
2507
2518
|
let n = ee();
|
|
2508
2519
|
if (n !== null && n <= 0) {
|
|
@@ -2510,7 +2521,7 @@ function jt(e, t, r) {
|
|
|
2510
2521
|
return;
|
|
2511
2522
|
}
|
|
2512
2523
|
T.setFileMeta(t.id, ht(f, e, a));
|
|
2513
|
-
let { listItem: r, removeButton: i, sortUpButton: o, sortDownButton: s } =
|
|
2524
|
+
let { listItem: r, removeButton: i, sortUpButton: o, sortDownButton: s } = Et(e, t.name || "Upload");
|
|
2514
2525
|
u.append(r);
|
|
2515
2526
|
let c = {
|
|
2516
2527
|
assetId: null,
|
|
@@ -2521,21 +2532,21 @@ function jt(e, t, r) {
|
|
|
2521
2532
|
uppyFileId: t.id,
|
|
2522
2533
|
listItem: r
|
|
2523
2534
|
};
|
|
2524
|
-
|
|
2535
|
+
te(c, i, o, s), k.files.push(c), M();
|
|
2525
2536
|
});
|
|
2526
|
-
let
|
|
2537
|
+
let F = () => {
|
|
2527
2538
|
o.click();
|
|
2528
2539
|
};
|
|
2529
2540
|
c?.addEventListener("click", (e) => {
|
|
2530
|
-
e.preventDefault(), e.stopPropagation(),
|
|
2541
|
+
e.preventDefault(), e.stopPropagation(), F();
|
|
2531
2542
|
}), a.addEventListener("click", (e) => {
|
|
2532
|
-
e.target instanceof Element && e.target.closest(
|
|
2543
|
+
e.target instanceof Element && e.target.closest(Ke) || F();
|
|
2533
2544
|
}), a.addEventListener("keydown", (e) => {
|
|
2534
|
-
(e.key === "Enter" || e.key === " ") && (e.preventDefault(),
|
|
2545
|
+
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), F());
|
|
2535
2546
|
}), o.addEventListener("change", () => {
|
|
2536
2547
|
if (!o.files?.length) return;
|
|
2537
2548
|
let e = Array.from(o.files);
|
|
2538
|
-
o.value = "";
|
|
2549
|
+
o.value = "", D();
|
|
2539
2550
|
try {
|
|
2540
2551
|
T.addFiles(e.map((e) => ({
|
|
2541
2552
|
name: e.name,
|
|
@@ -2547,16 +2558,17 @@ function jt(e, t, r) {
|
|
|
2547
2558
|
}
|
|
2548
2559
|
}), ["dragenter", "dragover"].forEach((e) => {
|
|
2549
2560
|
a.addEventListener(e, (e) => {
|
|
2550
|
-
e.preventDefault(), e.stopPropagation(),
|
|
2561
|
+
e.preventDefault(), e.stopPropagation(), A(!0);
|
|
2551
2562
|
});
|
|
2552
2563
|
}), ["dragleave", "drop"].forEach((e) => {
|
|
2553
2564
|
a.addEventListener(e, (e) => {
|
|
2554
|
-
e.preventDefault(), e.stopPropagation(),
|
|
2565
|
+
e.preventDefault(), e.stopPropagation(), A(!1);
|
|
2555
2566
|
});
|
|
2556
2567
|
}), a.addEventListener("drop", (e) => {
|
|
2557
2568
|
let t = e.dataTransfer;
|
|
2558
2569
|
if (!t?.files?.length) return;
|
|
2559
2570
|
let n = Array.from(t.files);
|
|
2571
|
+
D();
|
|
2560
2572
|
try {
|
|
2561
2573
|
T.addFiles(n.map((e) => ({
|
|
2562
2574
|
name: e.name,
|
|
@@ -2567,17 +2579,17 @@ function jt(e, t, r) {
|
|
|
2567
2579
|
e instanceof Error && T.info(e.message, "error", 3e3);
|
|
2568
2580
|
}
|
|
2569
2581
|
});
|
|
2570
|
-
let
|
|
2571
|
-
D.files.forEach((e) => {
|
|
2582
|
+
let I = () => {
|
|
2583
|
+
D(), k.files.forEach((e) => {
|
|
2572
2584
|
e.listItem.remove();
|
|
2573
|
-
}),
|
|
2585
|
+
}), k.files = [], T.cancelAll(), mt(e, g, h, []);
|
|
2574
2586
|
};
|
|
2575
|
-
return f?.addEventListener(
|
|
2576
|
-
f?.removeEventListener(
|
|
2587
|
+
return f?.addEventListener($e, I), ie(), () => {
|
|
2588
|
+
f?.removeEventListener($e, I), T.destroy(), E.remove(), k.files = [];
|
|
2577
2589
|
};
|
|
2578
2590
|
}
|
|
2579
|
-
var
|
|
2580
|
-
moduleId: `formie:${
|
|
2591
|
+
var Nt = {
|
|
2592
|
+
moduleId: `formie:${tt}`,
|
|
2581
2593
|
version: 2,
|
|
2582
2594
|
surfaces: [
|
|
2583
2595
|
"server-rendered",
|
|
@@ -2585,34 +2597,34 @@ var Mt = {
|
|
|
2585
2597
|
"cp-edit"
|
|
2586
2598
|
],
|
|
2587
2599
|
kind: "field",
|
|
2588
|
-
match: (e) => !!e.target.querySelector(
|
|
2600
|
+
match: (e) => !!e.target.querySelector(V),
|
|
2589
2601
|
setup: async (e) => {
|
|
2590
2602
|
let t = e.options || {}, n = e.form, r = /* @__PURE__ */ new WeakSet(), i = [];
|
|
2591
|
-
|
|
2603
|
+
kt(n);
|
|
2592
2604
|
let a = (e) => {
|
|
2593
2605
|
let a = /* @__PURE__ */ new Set();
|
|
2594
2606
|
e instanceof HTMLElement && e.hasAttribute("data-formie-field-handle") && a.add(e), e instanceof Element && (e.querySelectorAll("[data-formie-field-handle]").forEach((e) => {
|
|
2595
2607
|
e instanceof HTMLElement && a.add(e);
|
|
2596
|
-
}), e.querySelectorAll(
|
|
2608
|
+
}), e.querySelectorAll(V).forEach((e) => {
|
|
2597
2609
|
let t = e.closest("[data-formie-field-handle]");
|
|
2598
2610
|
t instanceof HTMLElement && a.add(t);
|
|
2599
2611
|
})), a.forEach((e) => {
|
|
2600
|
-
!r.has(e) && e.querySelector(
|
|
2612
|
+
!r.has(e) && e.querySelector(V) && (r.add(e), i.push(Mt(e, n, t)));
|
|
2601
2613
|
});
|
|
2602
2614
|
};
|
|
2603
2615
|
a(e.target);
|
|
2604
2616
|
let o = (e) => {
|
|
2605
2617
|
let t = e.detail;
|
|
2606
|
-
if (!
|
|
2618
|
+
if (!st(t)) return;
|
|
2607
2619
|
let n = t.row;
|
|
2608
2620
|
n instanceof HTMLElement && a(n);
|
|
2609
2621
|
};
|
|
2610
|
-
return n?.addEventListener(
|
|
2611
|
-
n?.removeEventListener(
|
|
2622
|
+
return n?.addEventListener(et, o), q.log("Module setup.", { count: i.length }), await e.emit("formie:module:upload-manager:init", { count: i.length }), { destroy: () => {
|
|
2623
|
+
n?.removeEventListener(et, o), i.forEach((e) => {
|
|
2612
2624
|
e();
|
|
2613
|
-
}),
|
|
2625
|
+
}), At(n), q.log("Module destroy."), e.emit("formie:module:upload-manager:destroy", {});
|
|
2614
2626
|
} };
|
|
2615
2627
|
}
|
|
2616
2628
|
};
|
|
2617
2629
|
//#endregion
|
|
2618
|
-
export {
|
|
2630
|
+
export { Nt as uploadManagerModule };
|