diginext-utils 0.2.0 → 1.0.1

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/dist/main.js ADDED
@@ -0,0 +1,1611 @@
1
+ function $parcel$export(e, n, v, s) {
2
+ Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
3
+ }
4
+ function $parcel$exportWildcard(dest, source) {
5
+ Object.keys(source).forEach(function(key) {
6
+ if (key === 'default' || key === '__esModule' || dest.hasOwnProperty(key)) {
7
+ return;
8
+ }
9
+
10
+ Object.defineProperty(dest, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return source[key];
14
+ }
15
+ });
16
+ });
17
+
18
+ return dest;
19
+ }
20
+
21
+ $parcel$export(module.exports, "requestCamera", () => $25160c7bc1de3077$export$2e2bcd8739ae039);
22
+ $parcel$export(module.exports, "requestDeviceOrientationControl", () => $cb40f1ea47093623$export$2e2bcd8739ae039);
23
+ $parcel$export(module.exports, "Timer", () => $5faef40d80b088b8$export$2e2bcd8739ae039);
24
+ const $5faef40d80b088b8$var$Timer = {
25
+ wait: async (ms)=>{
26
+ return new Promise((resolve)=>setTimeout(resolve, ms));
27
+ }
28
+ };
29
+ var $5faef40d80b088b8$export$2e2bcd8739ae039 = $5faef40d80b088b8$var$Timer;
30
+
31
+
32
+ const $25160c7bc1de3077$var$requestCamera = ({ audio: audio = true , video: video = true })=>{
33
+ if (typeof window == "undefined") return false;
34
+ return new Promise((resolve, reject)=>{
35
+ // Older browsers might not implement mediaDevices at all, so we set an empty object first
36
+ if (navigator.mediaDevices === undefined) navigator.mediaDevices = {};
37
+ // Some browsers partially implement mediaDevices. We can't just assign an object
38
+ // with getUserMedia as it would overwrite existing properties.
39
+ // Here, we will just add the getUserMedia property if it's missing.
40
+ if (navigator.mediaDevices.getUserMedia === undefined) navigator.mediaDevices.getUserMedia = function(constraints) {
41
+ // First get ahold of the legacy getUserMedia, if present
42
+ var getUserMedia = navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
43
+ // Some browsers just don't implement it - return a rejected promise with an error
44
+ // to keep a consistent interface
45
+ if (!getUserMedia) return Promise.reject(new Error("getUserMedia is not implemented in this browser"));
46
+ // Otherwise, wrap the call to the old navigator.getUserMedia with a Promise
47
+ return new Promise(function(resolve, reject) {
48
+ getUserMedia.call(navigator, constraints, resolve, reject);
49
+ });
50
+ };
51
+ navigator.mediaDevices.getUserMedia({
52
+ audio: audio,
53
+ video: video
54
+ }).then(function(stream) {
55
+ resolve(true);
56
+ }).catch(function(err) {
57
+ console.log(err.name + ": " + err.message);
58
+ resolve(false);
59
+ });
60
+ });
61
+ };
62
+ var $25160c7bc1de3077$export$2e2bcd8739ae039 = $25160c7bc1de3077$var$requestCamera;
63
+
64
+
65
+ var $0ceaaa89a2e12982$exports = {};
66
+
67
+ $parcel$export($0ceaaa89a2e12982$exports, "isIos", () => $0ceaaa89a2e12982$export$41a665f744414057);
68
+ $parcel$export($0ceaaa89a2e12982$exports, "checkOS", () => $0ceaaa89a2e12982$export$569c67be1cdf360d);
69
+ $parcel$export($0ceaaa89a2e12982$exports, "isAndroid", () => $0ceaaa89a2e12982$export$a11b0059900ceec8);
70
+ $parcel$export($0ceaaa89a2e12982$exports, "isMobile", () => $0ceaaa89a2e12982$export$d0a8044dce8ff2fc);
71
+ const $0ceaaa89a2e12982$export$41a665f744414057 = ()=>{
72
+ const deviceInfo = $0ceaaa89a2e12982$export$569c67be1cdf360d();
73
+ if (deviceInfo) return deviceInfo.os.toLowerCase() == "ios";
74
+ console.log("Can't check OS");
75
+ return null;
76
+ };
77
+ const $0ceaaa89a2e12982$export$a11b0059900ceec8 = ()=>{
78
+ const deviceInfo = $0ceaaa89a2e12982$export$569c67be1cdf360d();
79
+ if (deviceInfo) return deviceInfo.os.toLowerCase() == "android";
80
+ console.log("Can't check OS");
81
+ return null;
82
+ };
83
+ const $0ceaaa89a2e12982$export$d0a8044dce8ff2fc = ()=>{
84
+ if (typeof navigator == "undefined") return null;
85
+ if (navigator.userAgent.match(/Android/i) || navigator.userAgent.match(/webOS/i) || navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPad/i) || navigator.userAgent.match(/iPod/i) || navigator.userAgent.match(/BlackBerry/i) || navigator.userAgent.match(/Windows Phone/i)) return true;
86
+ else return false;
87
+ };
88
+ const $0ceaaa89a2e12982$export$569c67be1cdf360d = ()=>{
89
+ if (typeof window == "undefined") return {};
90
+ if (typeof window?.deviceInfo == "undefined") {
91
+ var unknown = "-";
92
+ // screen
93
+ var screenSize = "";
94
+ if (screen.width) {
95
+ var width = screen.width ? screen.width : "";
96
+ var height = screen.height ? screen.height : "";
97
+ screenSize += "" + width + " x " + height;
98
+ }
99
+ // browser
100
+ var nVer = navigator.appVersion;
101
+ var nAgt = navigator.userAgent;
102
+ var browser = navigator.appName;
103
+ var version = "" + parseFloat(navigator.appVersion);
104
+ var majorVersion = parseInt(navigator.appVersion, 10);
105
+ var nameOffset, verOffset, ix;
106
+ // Opera
107
+ if ((verOffset = nAgt.indexOf("Opera")) != -1) {
108
+ browser = "Opera";
109
+ version = nAgt.substring(verOffset + 6);
110
+ if ((verOffset = nAgt.indexOf("Version")) != -1) version = nAgt.substring(verOffset + 8);
111
+ }
112
+ // Opera Next
113
+ if ((verOffset = nAgt.indexOf("OPR")) != -1) {
114
+ browser = "Opera";
115
+ version = nAgt.substring(verOffset + 4);
116
+ } else if ((verOffset = nAgt.indexOf("Edge")) != -1) {
117
+ browser = "Microsoft Edge";
118
+ version = nAgt.substring(verOffset + 5);
119
+ } else if ((verOffset = nAgt.indexOf("MSIE")) != -1) {
120
+ browser = "Microsoft Internet Explorer";
121
+ version = nAgt.substring(verOffset + 5);
122
+ } else if ((verOffset = nAgt.indexOf("Chrome")) != -1) {
123
+ browser = "Chrome";
124
+ version = nAgt.substring(verOffset + 7);
125
+ } else if ((verOffset = nAgt.indexOf("Safari")) != -1) {
126
+ browser = "Safari";
127
+ version = nAgt.substring(verOffset + 7);
128
+ if ((verOffset = nAgt.indexOf("Version")) != -1) version = nAgt.substring(verOffset + 8);
129
+ } else if ((verOffset = nAgt.indexOf("Firefox")) != -1) {
130
+ browser = "Firefox";
131
+ version = nAgt.substring(verOffset + 8);
132
+ } else if (nAgt.indexOf("Trident/") != -1) {
133
+ browser = "Microsoft Internet Explorer";
134
+ version = nAgt.substring(nAgt.indexOf("rv:") + 3);
135
+ } else if ((nameOffset = nAgt.lastIndexOf(" ") + 1) < (verOffset = nAgt.lastIndexOf("/"))) {
136
+ browser = nAgt.substring(nameOffset, verOffset);
137
+ version = nAgt.substring(verOffset + 1);
138
+ if (browser.toLowerCase() == browser.toUpperCase()) browser = navigator.appName;
139
+ }
140
+ // trim the version string
141
+ if ((ix = version.indexOf(";")) != -1) version = version.substring(0, ix);
142
+ if ((ix = version.indexOf(" ")) != -1) version = version.substring(0, ix);
143
+ if ((ix = version.indexOf(")")) != -1) version = version.substring(0, ix);
144
+ majorVersion = parseInt("" + version, 10);
145
+ if (isNaN(majorVersion)) {
146
+ version = "" + parseFloat(navigator.appVersion);
147
+ majorVersion = parseInt(navigator.appVersion, 10);
148
+ }
149
+ // mobile version
150
+ var mobile = /Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test(nVer);
151
+ // cookie
152
+ var cookieEnabled = navigator.cookieEnabled ? true : false;
153
+ if (typeof navigator.cookieEnabled == "undefined" && !cookieEnabled) {
154
+ document.cookie = "testcookie";
155
+ cookieEnabled = document.cookie.indexOf("testcookie") != -1 ? true : false;
156
+ }
157
+ // system
158
+ var os = unknown;
159
+ var clientStrings = [
160
+ {
161
+ s: "Windows 10",
162
+ r: /(Windows 10.0|Windows NT 10.0)/
163
+ },
164
+ {
165
+ s: "Windows 8.1",
166
+ r: /(Windows 8.1|Windows NT 6.3)/
167
+ },
168
+ {
169
+ s: "Windows 8",
170
+ r: /(Windows 8|Windows NT 6.2)/
171
+ },
172
+ {
173
+ s: "Windows 7",
174
+ r: /(Windows 7|Windows NT 6.1)/
175
+ },
176
+ {
177
+ s: "Windows Vista",
178
+ r: /Windows NT 6.0/
179
+ },
180
+ {
181
+ s: "Windows Server 2003",
182
+ r: /Windows NT 5.2/
183
+ },
184
+ {
185
+ s: "Windows XP",
186
+ r: /(Windows NT 5.1|Windows XP)/
187
+ },
188
+ {
189
+ s: "Windows 2000",
190
+ r: /(Windows NT 5.0|Windows 2000)/
191
+ },
192
+ {
193
+ s: "Windows ME",
194
+ r: /(Win 9x 4.90|Windows ME)/
195
+ },
196
+ {
197
+ s: "Windows 98",
198
+ r: /(Windows 98|Win98)/
199
+ },
200
+ {
201
+ s: "Windows 95",
202
+ r: /(Windows 95|Win95|Windows_95)/
203
+ },
204
+ {
205
+ s: "Windows NT 4.0",
206
+ r: /(Windows NT 4.0|WinNT4.0|WinNT|Windows NT)/
207
+ },
208
+ {
209
+ s: "Windows CE",
210
+ r: /Windows CE/
211
+ },
212
+ {
213
+ s: "Windows 3.11",
214
+ r: /Win16/
215
+ },
216
+ {
217
+ s: "Android",
218
+ r: /Android/
219
+ },
220
+ {
221
+ s: "Open BSD",
222
+ r: /OpenBSD/
223
+ },
224
+ {
225
+ s: "Sun OS",
226
+ r: /SunOS/
227
+ },
228
+ {
229
+ s: "Linux",
230
+ r: /(Linux|X11)/
231
+ },
232
+ {
233
+ s: "iOS",
234
+ r: /(iPhone|iPad|iPod)/
235
+ },
236
+ {
237
+ s: "Mac OS X",
238
+ r: /Mac OS X/
239
+ },
240
+ {
241
+ s: "Mac OS",
242
+ r: /(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/
243
+ },
244
+ {
245
+ s: "QNX",
246
+ r: /QNX/
247
+ },
248
+ {
249
+ s: "UNIX",
250
+ r: /UNIX/
251
+ },
252
+ {
253
+ s: "BeOS",
254
+ r: /BeOS/
255
+ },
256
+ {
257
+ s: "OS/2",
258
+ r: /OS\/2/
259
+ },
260
+ {
261
+ s: "Search Bot",
262
+ r: /(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask Jeeves\/Teoma|ia_archiver)/
263
+ },
264
+ ];
265
+ for(var id in clientStrings){
266
+ var cs = clientStrings[id];
267
+ if (cs.r.test(nAgt)) {
268
+ os = cs.s;
269
+ break;
270
+ }
271
+ }
272
+ var osVersion = unknown;
273
+ if (/Windows/.test(os)) {
274
+ osVersion = /Windows (.*)/.exec(os)[1];
275
+ os = "Windows";
276
+ }
277
+ switch(os){
278
+ case "Mac OS X":
279
+ osVersion = /Mac OS X (10[\.\_\d]+)/.exec(nAgt)[1];
280
+ break;
281
+ case "Android":
282
+ osVersion = /Android ([\.\_\d]+)/.exec(nAgt)[1];
283
+ break;
284
+ case "iOS":
285
+ osVersion = /OS (\d+)_(\d+)_?(\d+)?/.exec(nVer);
286
+ osVersion = osVersion[1] + "." + osVersion[2] + "." + (osVersion[3] | 0);
287
+ break;
288
+ }
289
+ // flash (you'll need to include swfobject)
290
+ /* script src="//ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js" */ var flashVersion = "no check";
291
+ if (typeof swfobject != "undefined") {
292
+ var fv = swfobject.getFlashPlayerVersion();
293
+ if (fv.major > 0) flashVersion = fv.major + "." + fv.minor + " r" + fv.release;
294
+ else flashVersion = unknown;
295
+ }
296
+ const deviceInfo = {
297
+ screen: screenSize,
298
+ browser: browser,
299
+ browserVersion: version,
300
+ browserMajorVersion: majorVersion,
301
+ mobile: mobile,
302
+ os: os,
303
+ osVersion: osVersion,
304
+ cookies: cookieEnabled,
305
+ flashVersion: flashVersion
306
+ };
307
+ window.deviceInfo = deviceInfo;
308
+ }
309
+ return window.deviceInfo;
310
+ };
311
+
312
+
313
+ const $cb40f1ea47093623$var$requestDeviceOrientationControl = ()=>{
314
+ if (typeof window == "undefined") return false;
315
+ return new Promise((resolve, reject)=>{
316
+ if ((0, $0ceaaa89a2e12982$export$a11b0059900ceec8)()) resolve(true);
317
+ if (typeof DeviceMotionEvent != "undefined" && DeviceMotionEvent.requestPermission) // (optional) Do something before API request prompt.
318
+ DeviceOrientationEvent.requestPermission().then((response)=>{
319
+ // (optional) Do something after API prompt dismissed.
320
+ if (response == "granted") resolve(true);
321
+ else resolve(false);
322
+ }).catch((response)=>{
323
+ resolve(false);
324
+ // resolve({ status: false, reason: response })
325
+ });
326
+ else resolve(false);
327
+ });
328
+ };
329
+ var $cb40f1ea47093623$export$2e2bcd8739ae039 = $cb40f1ea47093623$var$requestDeviceOrientationControl;
330
+
331
+
332
+ var $6f2c75dc39b33f1a$exports = {};
333
+
334
+ $parcel$export($6f2c75dc39b33f1a$exports, "sumArray", () => $6f2c75dc39b33f1a$export$49bdca8d9bee322f, (v) => $6f2c75dc39b33f1a$export$49bdca8d9bee322f = v);
335
+ $parcel$export($6f2c75dc39b33f1a$exports, "averageArray", () => $6f2c75dc39b33f1a$export$ac670fb62802935a, (v) => $6f2c75dc39b33f1a$export$ac670fb62802935a = v);
336
+ $parcel$export($6f2c75dc39b33f1a$exports, "minArray", () => $6f2c75dc39b33f1a$export$a1f1952d9b4428af, (v) => $6f2c75dc39b33f1a$export$a1f1952d9b4428af = v);
337
+ $parcel$export($6f2c75dc39b33f1a$exports, "maxArray", () => $6f2c75dc39b33f1a$export$efc4a9e0e0ac75e, (v) => $6f2c75dc39b33f1a$export$efc4a9e0e0ac75e = v);
338
+ $parcel$export($6f2c75dc39b33f1a$exports, "sortElementByString", () => $6f2c75dc39b33f1a$export$4fd64e376619fa84, (v) => $6f2c75dc39b33f1a$export$4fd64e376619fa84 = v);
339
+ $parcel$export($6f2c75dc39b33f1a$exports, "sortElementByNumber", () => $6f2c75dc39b33f1a$export$dcc0320e182596b5, (v) => $6f2c75dc39b33f1a$export$dcc0320e182596b5 = v);
340
+ $parcel$export($6f2c75dc39b33f1a$exports, "firstElement", () => $6f2c75dc39b33f1a$export$43c7f521acf6e6cf, (v) => $6f2c75dc39b33f1a$export$43c7f521acf6e6cf = v);
341
+ $parcel$export($6f2c75dc39b33f1a$exports, "lastElement", () => $6f2c75dc39b33f1a$export$2b172101b53b52e6, (v) => $6f2c75dc39b33f1a$export$2b172101b53b52e6 = v);
342
+ $parcel$export($6f2c75dc39b33f1a$exports, "randomIndex", () => $6f2c75dc39b33f1a$export$23b1f9ce5361528e, (v) => $6f2c75dc39b33f1a$export$23b1f9ce5361528e = v);
343
+ $parcel$export($6f2c75dc39b33f1a$exports, "randomElement", () => $6f2c75dc39b33f1a$export$d3d80cee07107776, (v) => $6f2c75dc39b33f1a$export$d3d80cee07107776 = v);
344
+ $parcel$export($6f2c75dc39b33f1a$exports, "mergeAndMakeUniqueElement", () => $6f2c75dc39b33f1a$export$33132b67042f2f2a, (v) => $6f2c75dc39b33f1a$export$33132b67042f2f2a = v);
345
+ $parcel$export($6f2c75dc39b33f1a$exports, "allMatchInArray", () => $6f2c75dc39b33f1a$export$79ac041f2b324c04, (v) => $6f2c75dc39b33f1a$export$79ac041f2b324c04 = v);
346
+ $parcel$export($6f2c75dc39b33f1a$exports, "removeItem", () => $6f2c75dc39b33f1a$export$fe2d9b4e03920b4c, (v) => $6f2c75dc39b33f1a$export$fe2d9b4e03920b4c = v);
347
+ $parcel$export($6f2c75dc39b33f1a$exports, "removeItemByKey", () => $6f2c75dc39b33f1a$export$846415a11802e0e, (v) => $6f2c75dc39b33f1a$export$846415a11802e0e = v);
348
+ $parcel$export($6f2c75dc39b33f1a$exports, "getRandom", () => $6f2c75dc39b33f1a$export$1a76347094524b3b, (v) => $6f2c75dc39b33f1a$export$1a76347094524b3b = v);
349
+ $parcel$export($6f2c75dc39b33f1a$exports, "getHalfRandom", () => $6f2c75dc39b33f1a$export$333626154b16d34f, (v) => $6f2c75dc39b33f1a$export$333626154b16d34f = v);
350
+ $parcel$export($6f2c75dc39b33f1a$exports, "shuffle", () => $6f2c75dc39b33f1a$export$448332262467e042, (v) => $6f2c75dc39b33f1a$export$448332262467e042 = v);
351
+ $parcel$export($6f2c75dc39b33f1a$exports, "moveIndex", () => $6f2c75dc39b33f1a$export$8d895961bc96a6b2, (v) => $6f2c75dc39b33f1a$export$8d895961bc96a6b2 = v);
352
+ $parcel$export($6f2c75dc39b33f1a$exports, "moveArray", () => $6f2c75dc39b33f1a$export$2f3f9678178e797c, (v) => $6f2c75dc39b33f1a$export$2f3f9678178e797c = v);
353
+ var $a4ef464576eb54bc$exports = {};
354
+
355
+ $parcel$export($a4ef464576eb54bc$exports, "randRound", () => $a4ef464576eb54bc$export$6f50058d820858c5);
356
+ $parcel$export($a4ef464576eb54bc$exports, "rand", () => $a4ef464576eb54bc$export$bb0a9c36cf454ea0);
357
+ $parcel$export($a4ef464576eb54bc$exports, "randHalt", () => $a4ef464576eb54bc$export$b647c187d1d74a5e);
358
+ $parcel$export($a4ef464576eb54bc$exports, "randInt", () => $a4ef464576eb54bc$export$a85cdcada2f6e6d0);
359
+ $parcel$export($a4ef464576eb54bc$exports, "randFloat", () => $a4ef464576eb54bc$export$8dceb61b660164cc);
360
+ $parcel$export($a4ef464576eb54bc$exports, "degToRad", () => $a4ef464576eb54bc$export$e6bfdeff8bfc94f9);
361
+ $parcel$export($a4ef464576eb54bc$exports, "radToDeg", () => $a4ef464576eb54bc$export$54390e3b44c4a9cb);
362
+ const $a4ef464576eb54bc$var$DEG2RAD = Math.PI / 180;
363
+ const $a4ef464576eb54bc$var$RAD2DEG = 180 / Math.PI;
364
+ const $a4ef464576eb54bc$export$6f50058d820858c5 = (number)=>{
365
+ return Math.round(Math.random() * number);
366
+ };
367
+ const $a4ef464576eb54bc$export$bb0a9c36cf454ea0 = (number)=>{
368
+ return (Math.random() - Math.random()) * number;
369
+ };
370
+ const $a4ef464576eb54bc$export$b647c187d1d74a5e = (number)=>{
371
+ var rand = Math.random() - Math.random();
372
+ var res;
373
+ if (rand > 0) res = rand * (number / 2) + number / 2;
374
+ else res = rand * (number / 2) - number / 2;
375
+ return Math.abs(res);
376
+ };
377
+ const $a4ef464576eb54bc$export$a85cdcada2f6e6d0 = (low, high)=>{
378
+ return low + Math.floor(Math.random() * (high - low + 1));
379
+ };
380
+ const $a4ef464576eb54bc$export$8dceb61b660164cc = (low, high)=>{
381
+ return low + Math.random() * (high - low);
382
+ };
383
+ const $a4ef464576eb54bc$export$e6bfdeff8bfc94f9 = (degrees)=>{
384
+ return degrees * $a4ef464576eb54bc$var$DEG2RAD;
385
+ };
386
+ const $a4ef464576eb54bc$export$54390e3b44c4a9cb = (radians)=>{
387
+ return radians * $a4ef464576eb54bc$var$RAD2DEG;
388
+ }; // const MathExtra = {
389
+ // isRotateLeft(a, b, c) {
390
+ // return (b.x - a.x) * (c.y - a.y) - (b.y - a.y) * (c.x - a.x) > 0;
391
+ // },
392
+ // deg_between_points_360(cx, cy, ex, ey) {
393
+ // var theta = this.angleLine(cx, cy, ex, ey); // range (-180, 180]
394
+ // if (theta < 0) theta = 360 + theta; // range [0, 360)
395
+ // return theta;
396
+ // },
397
+ // deg_between_points(cx, cy, ex, ey) {
398
+ // var dy = ey - cy;
399
+ // var dx = ex - cx;
400
+ // var theta = Math.atan2(dy, dx); // range (-PI, PI]
401
+ // theta *= 180 / Math.PI; // rads to degs, range (-180, 180]
402
+ // return theta;
403
+ // },
404
+ // angle_between_points(cx, cy, ex, ey) {
405
+ // var dy = ey - cy;
406
+ // var dx = ex - cx;
407
+ // var theta = Math.atan2(dy, dx); // range (-PI, PI]
408
+ // // theta *= 180 / Math.PI; // rads to degs, range (-180, 180]
409
+ // return theta;
410
+ // },
411
+ // distance2Point(x1, y1, x2, y2) {
412
+ // var dist = Math.sqrt(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2));
413
+ // return dist;
414
+ // },
415
+ // clamp(value, min, max) {
416
+ // return Math.max(min, Math.min(max, value));
417
+ // },
418
+ // // compute euclidian modulo of m % n
419
+ // // https://en.wikipedia.org/wiki/Modulo_operation
420
+ // euclideanModulo(n, m) {
421
+ // return ((n % m) + m) % m;
422
+ // },
423
+ // // Linear mapping from range <a1, a2> to range <b1, b2>
424
+ // mapLinear(x, a1, a2, b1, b2) {
425
+ // return b1 + ((x - a1) * (b2 - b1)) / (a2 - a1);
426
+ // },
427
+ // // https://en.wikipedia.org/wiki/Linear_interpolation
428
+ // lerp(x, y, t) {
429
+ // return (1 - t) * x + t * y;
430
+ // },
431
+ // // http://en.wikipedia.org/wiki/Smoothstep
432
+ // smoothstep(x, min, max) {
433
+ // if (x <= min) return 0;
434
+ // if (x >= max) return 1;
435
+ // x = (x - min) / (max - min);
436
+ // return x * x * (3 - 2 * x);
437
+ // },
438
+ // smootherstep(x, min, max) {
439
+ // if (x <= min) return 0;
440
+ // if (x >= max) return 1;
441
+ // x = (x - min) / (max - min);
442
+ // return x * x * x * (x * (x * 6 - 15) + 10);
443
+ // },
444
+ // // Random integer from <low, high> interval
445
+ // // Random float from <-range/2, range/2> interval
446
+ // randFloatSpread(range) {
447
+ // return range * (0.5 - Math.random());
448
+ // },
449
+ // rotationDegToRad(rotation) {
450
+ // return {
451
+ // x: this.degToRad(rotation.x),
452
+ // y: this.degToRad(rotation.y),
453
+ // z: this.degToRad(rotation.z),
454
+ // };
455
+ // },
456
+ // radToDeg(radians) {
457
+ // return radians * RAD2DEG;
458
+ // },
459
+ // isPowerOfTwo(value) {
460
+ // return (value & (value - 1)) === 0 && value !== 0;
461
+ // },
462
+ // nearestPowerOfTwo(value) {
463
+ // return Math.pow(2, Math.round(Math.log(value) / Math.LN2));
464
+ // },
465
+ // nextPowerOfTwo(value) {
466
+ // value--;
467
+ // value |= value >> 1;
468
+ // value |= value >> 2;
469
+ // value |= value >> 4;
470
+ // value |= value >> 8;
471
+ // value |= value >> 16;
472
+ // value++;
473
+ // return value;
474
+ // },
475
+ // circleByPercentRadius(percent, radius) {
476
+ // const theta = ((percent * 360 - 90) * Math.PI) / 180;
477
+ // const x = radius * Math.cos(theta);
478
+ // const y = -radius * Math.sin(theta);
479
+ // return { x, y };
480
+ // },
481
+ // /**
482
+ // *
483
+ // * @param {Array} array
484
+ // */
485
+ // arrayToVector(array = [0, 0, 0]) {
486
+ // const keys = ['x', 'y', 'z', 'w'];
487
+ // const result = {};
488
+ // array.map((item, index) => {
489
+ // result[keys[index]] = item;
490
+ // });
491
+ // return result;
492
+ // },
493
+ // };
494
+ // export default MathExtra;
495
+
496
+
497
+ const $6f2c75dc39b33f1a$export$49bdca8d9bee322f = (array, key)=>{
498
+ if (!array) {
499
+ console.warn("ARRAY NOT EXITED !");
500
+ return 0;
501
+ }
502
+ if (key) return array.reduce((c, v)=>c + v[key], 0);
503
+ else return array.reduce((c, v)=>c + v, 0);
504
+ };
505
+ const $6f2c75dc39b33f1a$export$ac670fb62802935a = (array, key)=>{
506
+ if (!array) {
507
+ console.warn("ARRAY NOT EXITED !");
508
+ return 0;
509
+ }
510
+ return undefined.sum(array, key) / array.length || 0;
511
+ };
512
+ const $6f2c75dc39b33f1a$export$a1f1952d9b4428af = (array, key)=>{
513
+ if (!array) {
514
+ console.warn("ARRAY NOT EXITED !");
515
+ return 0;
516
+ }
517
+ if (array.length > 0) {
518
+ if (key) return array.reduce((c, v)=>c < v[key] ? c : v[key]);
519
+ else return array.reduce((c, v)=>c < v ? c : v);
520
+ }
521
+ return 0;
522
+ };
523
+ const $6f2c75dc39b33f1a$export$efc4a9e0e0ac75e = (array, key)=>{
524
+ if (!array) {
525
+ console.warn("ARRAY NOT EXITED !");
526
+ return 0;
527
+ }
528
+ if (array.length > 0) {
529
+ if (key) return array.reduce((c, v)=>c > v[key] ? c : v[key]);
530
+ else return array.reduce((c, v)=>c > v ? c : v);
531
+ }
532
+ return 0;
533
+ };
534
+ const $6f2c75dc39b33f1a$export$4fd64e376619fa84 = (array, key)=>{
535
+ if (!Array.isArray(array)) return [];
536
+ if (key) return array.sort((x, y)=>{
537
+ var a = x[key].toUpperCase(), b = y[key].toUpperCase();
538
+ return a == b ? 0 : a > b ? 1 : -1;
539
+ });
540
+ console.log("NO KEY");
541
+ };
542
+ const $6f2c75dc39b33f1a$export$dcc0320e182596b5 = (array, key)=>{
543
+ if (!Array.isArray(array)) return [];
544
+ if (key) return array.sort((a, b)=>{
545
+ return a[key] - b[key];
546
+ });
547
+ console.log("NO KEY");
548
+ };
549
+ const $6f2c75dc39b33f1a$export$43c7f521acf6e6cf = (array)=>{
550
+ if (array) {
551
+ if (array.length || array.length > 0) return array[0];
552
+ }
553
+ return null;
554
+ };
555
+ const $6f2c75dc39b33f1a$export$2b172101b53b52e6 = (array)=>{
556
+ if (array) {
557
+ if (array.length || array.length > 0) return array[array.length - 1];
558
+ }
559
+ return null;
560
+ };
561
+ const $6f2c75dc39b33f1a$export$23b1f9ce5361528e = (array)=>{
562
+ if (array) return (0, $a4ef464576eb54bc$export$a85cdcada2f6e6d0)(0, array.length - 1);
563
+ return -1;
564
+ };
565
+ const $6f2c75dc39b33f1a$export$d3d80cee07107776 = (array)=>{
566
+ if (array) return array[$6f2c75dc39b33f1a$export$23b1f9ce5361528e(array)];
567
+ return null;
568
+ };
569
+ const $6f2c75dc39b33f1a$export$33132b67042f2f2a = (list1, list2, key)=>{
570
+ if (!list1 || !list2) return;
571
+ if (key) return list1.concat(list2).filter((item, index, self)=>{
572
+ return self.findIndex((x)=>x[key] == item[key]) === index;
573
+ });
574
+ else return list1.concat(list2).filter((x, index, self)=>{
575
+ return self.indexOf(x) === index;
576
+ });
577
+ };
578
+ const $6f2c75dc39b33f1a$export$79ac041f2b324c04 = (target, toMatch)=>{
579
+ if (!target || !toMatch) return false;
580
+ const found = toMatch.every((item)=>{
581
+ return target.includes(item);
582
+ });
583
+ return found;
584
+ };
585
+ const $6f2c75dc39b33f1a$export$fe2d9b4e03920b4c = (item, array)=>{
586
+ const index = array.indexOf(item);
587
+ if (index == -1) {
588
+ console.warn("[ArrayExtra.removeItem] Item not found.");
589
+ return array;
590
+ }
591
+ array.splice(index, 1);
592
+ return array;
593
+ };
594
+ const $6f2c75dc39b33f1a$export$846415a11802e0e = (key, value, array)=>{
595
+ const foundIndex = array.findIndex((item)=>{
596
+ return item[key] == value;
597
+ });
598
+ if (foundIndex < 0) {
599
+ console.warn("[ArrayExtra.removeItemByKey] Item not found.", key, value);
600
+ return array;
601
+ }
602
+ array.splice(foundIndex, 1);
603
+ return array;
604
+ };
605
+ const $6f2c75dc39b33f1a$export$1a76347094524b3b = (array, n)=>{
606
+ var result = new Array(n), len = array.length, taken = new Array(len);
607
+ if (n > len) throw new RangeError("getRandom: more elements taken than available");
608
+ while(n--){
609
+ var x = Math.floor(Math.random() * len);
610
+ result[n] = array[x in taken ? taken[x] : x];
611
+ taken[x] = --len in taken ? taken[len] : len;
612
+ }
613
+ return result;
614
+ };
615
+ const $6f2c75dc39b33f1a$export$333626154b16d34f = (array, n)=>{
616
+ var n = Math.ceil(array.length / 2);
617
+ return array.getRandom(n);
618
+ };
619
+ const $6f2c75dc39b33f1a$export$448332262467e042 = (array)=>{
620
+ var i = array.length, j, temp;
621
+ if (i == 0) return array;
622
+ while(--i){
623
+ j = Math.floor(Math.random() * (i + 1));
624
+ temp = array[i];
625
+ array[i] = array[j];
626
+ array[j] = temp;
627
+ }
628
+ return array;
629
+ };
630
+ const $6f2c75dc39b33f1a$export$8d895961bc96a6b2 = (array, oldIndex, newIndex)=>{
631
+ if (newIndex >= array.length) {
632
+ var k = newIndex - array.length + 1;
633
+ while(k--)array.push(undefined);
634
+ }
635
+ array.splice(newIndex, 0, array.splice(oldIndex, 1)[0]);
636
+ return array;
637
+ };
638
+ const $6f2c75dc39b33f1a$export$2f3f9678178e797c = (array, oldIndex, newIndex)=>{
639
+ while(oldIndex < 0)oldIndex += array.length;
640
+ while(newIndex < 0)newIndex += array.length;
641
+ if (newIndex >= array.length) {
642
+ var k = newIndex - array.length;
643
+ while((k--) + 1)array.push(999);
644
+ }
645
+ array.splice(newIndex, 0, array.splice(oldIndex, 1)[0]);
646
+ return array;
647
+ };
648
+
649
+
650
+
651
+ var $cd264381f56635cb$exports = {};
652
+
653
+ $parcel$export($cd264381f56635cb$exports, "isPotrait", () => $cd264381f56635cb$export$59bf81beacc278c9);
654
+ $parcel$export($cd264381f56635cb$exports, "isLandscape", () => $cd264381f56635cb$export$5cd843239dff6e53);
655
+ $parcel$export($cd264381f56635cb$exports, "ua", () => $cd264381f56635cb$export$1a85a5b39245481e);
656
+ $parcel$export($cd264381f56635cb$exports, "isFacebookWebview", () => $cd264381f56635cb$export$2ffb895ad65f87b);
657
+ $parcel$export($cd264381f56635cb$exports, "isInAppWebview", () => $cd264381f56635cb$export$e9f1d34d540bf7cc);
658
+ const $cd264381f56635cb$export$59bf81beacc278c9 = (params)=>{
659
+ if (typeof window == "undefined") return false;
660
+ if (!window.orientation) return window.matchMedia("(orientation: portrait)").matches;
661
+ return !(window.orientation === 90 || window.orientation === -90);
662
+ };
663
+ const $cd264381f56635cb$export$5cd843239dff6e53 = (params)=>{
664
+ return !$cd264381f56635cb$export$59bf81beacc278c9();
665
+ };
666
+ const $cd264381f56635cb$export$1a85a5b39245481e = (params)=>{
667
+ if (typeof navigator == "undefined") return null;
668
+ if (typeof window == "undefined") return null;
669
+ return navigator.userAgent || navigator.vendor || window.opera;
670
+ };
671
+ const $cd264381f56635cb$export$2ffb895ad65f87b = (params)=>{
672
+ var ua = ua();
673
+ if (ua) return ua.indexOf("FBAN") > -1 || ua.indexOf("FBAV") > -1;
674
+ };
675
+ const $cd264381f56635cb$export$e9f1d34d540bf7cc = (params)=>{
676
+ const rules = [
677
+ "WebView",
678
+ "(iPhone|iPod|iPad)(?!.*Safari/)",
679
+ "Android.*(wv|.0.0.0)"
680
+ ];
681
+ const regex = new RegExp(`(${rules.join("|")})`, "ig");
682
+ if ($cd264381f56635cb$export$1a85a5b39245481e()) return Boolean($cd264381f56635cb$export$1a85a5b39245481e().match(regex));
683
+ return false;
684
+ };
685
+
686
+
687
+ var $78b0cf1b50f4e3c3$exports = {};
688
+
689
+ $parcel$export($78b0cf1b50f4e3c3$exports, "getWebcam", () => $78b0cf1b50f4e3c3$export$a6b361d6bfb7a093);
690
+
691
+ function $78b0cf1b50f4e3c3$export$a6b361d6bfb7a093({ container: //
692
+ container , facingMode: facingMode = "environment" , audio: audio = false , }) {
693
+ if (typeof window == "undefined") return;
694
+ container = container || document.body;
695
+ return new Promise(async (resolve, reject)=>{
696
+ const video = document.createElement("video");
697
+ video.style.position = "absolute";
698
+ video.style.top = 0;
699
+ video.style.left = 0;
700
+ video.style.width = "100%";
701
+ video.style.height = "100%";
702
+ container.append(video);
703
+ let inputCameras = [];
704
+ let currentCamera;
705
+ /**
706
+ * @type {MediaStreamConstraints}
707
+ */ const requestedMediaConstraints = {
708
+ video: {
709
+ facingMode: {
710
+ exact: facingMode
711
+ }
712
+ },
713
+ audio: audio
714
+ };
715
+ /**
716
+ * @type {MediaStream}
717
+ */ let stream;
718
+ let isAllowed = false;
719
+ console.log("[Camera.js] Requesting:", requestedMediaConstraints);
720
+ const res = await (0, $25160c7bc1de3077$export$2e2bcd8739ae039)({
721
+ audio: audio
722
+ });
723
+ if (!res) setTimeout(function() {
724
+ handleError({
725
+ name: "Error",
726
+ message: "NotSupported"
727
+ });
728
+ }, 50);
729
+ // start requesting media permissions:
730
+ // console.log("[Camera.js] Requesting:", requestedMediaConstraints);
731
+ // if (navigator.mediaDevices.enumerateDevices === undefined) {
732
+ // setTimeout(function () {
733
+ // handleError({ name: "Error", message: "NotSupported" });
734
+ // }, 50);
735
+ // } else {
736
+ navigator.mediaDevices.enumerateDevices().then(parseDevices).catch(handleError);
737
+ // }
738
+ /**
739
+ * @param {MediaDeviceInfo[]} devices
740
+ */ function parseDevices(devices) {
741
+ inputCameras = [];
742
+ let backCameras = [];
743
+ devices.forEach(function(device) {
744
+ if (device.kind == "videoinput" && typeof device.deviceId != "undefined" && device.deviceId != "") inputCameras.push(device);
745
+ });
746
+ // //alert (JSON.stringify (devices));
747
+ console.log("[Camera.js] inputCameras:", inputCameras);
748
+ if (inputCameras.length > 0) {
749
+ let cams = "";
750
+ let backCamera;
751
+ inputCameras.map((cam, index)=>{
752
+ cams += `[${cam.deviceId}] ${cam.kind} | ${cam.label}\n`;
753
+ // console.log(cam);
754
+ let label = cam.label.toLowerCase();
755
+ if (label.indexOf("back") > -1 || label.indexOf("facetime") > -1) {
756
+ backCamera = cam;
757
+ backCameras.push(backCamera);
758
+ }
759
+ });
760
+ if (backCameras.length > 1) backCamera = backCameras[backCameras.length - 1];
761
+ console.log(`[Camera.js] All input sources:`, cams);
762
+ console.log(`[Camera.js] This device has ${backCameras.length} back camera${backCameras.length > 1 ? "s" : ""}.`);
763
+ console.log("[Camera.js] backCameras:", JSON.stringify(backCameras));
764
+ currentCamera = backCamera;
765
+ if (scope.onGotDevices) scope.onGotDevices(devices);
766
+ // Lấy stream của camera sau
767
+ // (Lấy cái cuối cùng trong danh sách trước, thường sẽ là camera chính trên Android)
768
+ getStreamOfCameraId(backCamera.deviceId).then(onStreamReceived).catch((e)=>{
769
+ if (backCameras.length > 1) {
770
+ // nếu thiết bị có nhiều hơn 1 camera sau -> thử lấy camera khác
771
+ backCamera = backCameras[backCameras.length - 2];
772
+ getStreamOfCameraId(backCamera.deviceId).then(onStreamReceived).catch(handleError);
773
+ } else if (backCameras.length > 2) {
774
+ // nếu thiết bị có nhiều hơn 2 camera sau -> thử lấy camera khác nữa
775
+ backCamera = backCameras[backCameras.length - 3];
776
+ getStreamOfCameraId(backCamera.deviceId).then(onStreamReceived).catch(handleError);
777
+ } else // nếu thiết bị đéo có camera sau...
778
+ handleError(e);
779
+ });
780
+ } else navigator.mediaDevices.getUserMedia(requestedMediaConstraints).then(onStreamReceived).catch(handleError);
781
+ }
782
+ /**
783
+ * @param {MediaStream} stream
784
+ */ function onStreamReceived(stream) {
785
+ if (inputCameras.length == 0) {
786
+ console.log("[Camera.js] Not found any back cameras, request again?");
787
+ navigator.mediaDevices.enumerateDevices().then(parseDevices).catch(handleError);
788
+ return;
789
+ }
790
+ isAllowed = true;
791
+ playWebcamVideo(stream);
792
+ }
793
+ /**
794
+ * @param {MediaStream} _stream
795
+ */ function playWebcamVideo(_stream) {
796
+ stream = _stream;
797
+ if ("srcObject" in video) // //alert ('GOT STREAM VIDEO OBJECT');
798
+ video.srcObject = _stream;
799
+ else // //alert ('GOT STREAM VIDEO SOURCE URL');
800
+ // Avoid using this in new browsers, as it is going away.
801
+ video.src = window.URL.createObjectURL(_stream);
802
+ // required to tell iOS safari we don't want fullscreen
803
+ video.setAttribute("playsinline", true);
804
+ video.setAttribute("muted", true);
805
+ video.setAttribute("autoplay", true);
806
+ video.muted = true;
807
+ video.autoplay = true;
808
+ video.style.objectFit = "cover";
809
+ video.play();
810
+ // auto play
811
+ video.addEventListener("canplay", function(e) {
812
+ // //alert ('CAN PLAY');
813
+ });
814
+ video.addEventListener("canplaythrough", function(e) {
815
+ // //alert ('CAN PLAY THROUGH');
816
+ });
817
+ video.addEventListener("error", (e)=>console.log("[Camera.js] <video> error:", e));
818
+ video.addEventListener("stalled", function(e) {
819
+ // //alert ('CANNOT GET METADATA');
820
+ isAllowed = false;
821
+ console.log("[Camera.js] <video> stalled:", e);
822
+ reject();
823
+ });
824
+ video.addEventListener("loadedmetadata", function(e) {
825
+ if (currentCamera.label.toLowerCase().indexOf("facetime") > -1) {
826
+ video.style.transform = "scaleX(-1)";
827
+ video.style.webkitTransform = "scaleX(-1)";
828
+ }
829
+ video.play();
830
+ resolve(video);
831
+ });
832
+ }
833
+ function getStreamOfCameraId(id) {
834
+ const constraints = {
835
+ video: {
836
+ deviceId: {
837
+ exact: id
838
+ }
839
+ },
840
+ audio: false
841
+ };
842
+ return new Promise((resolve, reject)=>{
843
+ navigator.mediaDevices.getUserMedia(constraints).then(resolve).catch(reject);
844
+ });
845
+ }
846
+ function handleError(err) {
847
+ console.error(err);
848
+ const errMsg = "[Camera.js] " + err.name + ": " + err.message;
849
+ console.error(errMsg);
850
+ isAllowed = false;
851
+ reject();
852
+ }
853
+ });
854
+ }
855
+
856
+
857
+
858
+ var $f062db65da1a3a19$exports = {};
859
+
860
+ $parcel$export($f062db65da1a3a19$exports, "isNull", () => $f062db65da1a3a19$export$630801d484da15df);
861
+ $parcel$export($f062db65da1a3a19$exports, "toBool", () => $f062db65da1a3a19$export$a5e0e20515fe635);
862
+ $parcel$export($f062db65da1a3a19$exports, "toInt", () => $f062db65da1a3a19$export$e7a1baa2fae31f0f);
863
+ $parcel$export($f062db65da1a3a19$exports, "toFloat", () => $f062db65da1a3a19$export$d94660d4b808c5a8);
864
+ $parcel$export($f062db65da1a3a19$exports, "toArray", () => $f062db65da1a3a19$export$45b10814cc054894);
865
+ const $f062db65da1a3a19$export$630801d484da15df = (object)=>{
866
+ if (typeof object == "undefined") return true;
867
+ if (object == "") return true;
868
+ if (Array.isArray(object)) return object.length == 0;
869
+ return object == null;
870
+ };
871
+ const $f062db65da1a3a19$export$a5e0e20515fe635 = (object)=>{
872
+ if ($f062db65da1a3a19$export$630801d484da15df(object)) return false;
873
+ object = object.toString();
874
+ return object === "true" || object == "1";
875
+ };
876
+ const $f062db65da1a3a19$export$e7a1baa2fae31f0f = (object)=>{
877
+ if ($f062db65da1a3a19$export$630801d484da15df(object)) return 0;
878
+ object = object.toString();
879
+ return parseInt(object, 10);
880
+ };
881
+ const $f062db65da1a3a19$export$d94660d4b808c5a8 = (object)=>{
882
+ if ($f062db65da1a3a19$export$630801d484da15df(object)) return 0;
883
+ object = object.toString();
884
+ return parseFloat(object);
885
+ };
886
+ const $f062db65da1a3a19$export$45b10814cc054894 = (obj)=>{
887
+ const array = [];
888
+ for(const key in obj)array.push(obj[key]);
889
+ return array;
890
+ };
891
+
892
+
893
+ var $4d63c45d489e4cb5$exports = {};
894
+
895
+ $parcel$export($4d63c45d489e4cb5$exports, "textLowCase", () => $4d63c45d489e4cb5$export$4645b4fcee4cd202);
896
+ $parcel$export($4d63c45d489e4cb5$exports, "numeric", () => $4d63c45d489e4cb5$export$b7a508fa8dae59fc);
897
+ $parcel$export($4d63c45d489e4cb5$exports, "punctuation", () => $4d63c45d489e4cb5$export$cb2021665d0782e2);
898
+ $parcel$export($4d63c45d489e4cb5$exports, "allCharacter", () => $4d63c45d489e4cb5$export$c7acbaf62ee0a77a);
899
+ $parcel$export($4d63c45d489e4cb5$exports, "randAllCharacterByLength", () => $4d63c45d489e4cb5$export$1553b55b39fe0033);
900
+ $parcel$export($4d63c45d489e4cb5$exports, "randomStringByLength", () => $4d63c45d489e4cb5$export$6263a4b5f5ed507b);
901
+ $parcel$export($4d63c45d489e4cb5$exports, "getBetween", () => $4d63c45d489e4cb5$export$7587f8e6781523e5);
902
+ $parcel$export($4d63c45d489e4cb5$exports, "makeString", () => $4d63c45d489e4cb5$export$992e00a9150f373b);
903
+ $parcel$export($4d63c45d489e4cb5$exports, "toUpperCase", () => $4d63c45d489e4cb5$export$d80c591a9e16646);
904
+ $parcel$export($4d63c45d489e4cb5$exports, "toLowerCase", () => $4d63c45d489e4cb5$export$84b9399c77df0edf);
905
+ $parcel$export($4d63c45d489e4cb5$exports, "titleize", () => $4d63c45d489e4cb5$export$29d0dd1cc36cee26);
906
+ $parcel$export($4d63c45d489e4cb5$exports, "capitalize", () => $4d63c45d489e4cb5$export$9a00dee1beb8f576);
907
+ $parcel$export($4d63c45d489e4cb5$exports, "capitalizeName", () => $4d63c45d489e4cb5$export$ca69f6a6464047b4);
908
+ $parcel$export($4d63c45d489e4cb5$exports, "clearUnicodeCharacters", () => $4d63c45d489e4cb5$export$b2c326c8102a62cd);
909
+ $parcel$export($4d63c45d489e4cb5$exports, "generateUUID", () => $4d63c45d489e4cb5$export$e73c8bd0f20705a);
910
+
911
+ const $4d63c45d489e4cb5$export$4645b4fcee4cd202 = "abcdefghijklmnopqrstuvwxyz";
912
+ const $4d63c45d489e4cb5$export$b7a508fa8dae59fc = "0123456789";
913
+ const $4d63c45d489e4cb5$export$cb2021665d0782e2 = "!@#$%^&*()_+~|}{[];?><,./-=";
914
+ const $4d63c45d489e4cb5$export$c7acbaf62ee0a77a = `đĐaáàảãạăắằẳẵặâấầẩẫậeéèẻẽẹêếềểễệoóòỏõọôốồổỗộơớờởỡợiíìỉĩịuúùủũụưứừửữựyýỳỷỹỵAÁÀẢÃẠĂẮẰẲẴẶÂẤẦẨẪẬEÉÈẺẼẸÊẾỀỂỄỆOÓÒỎÕỌÔỐỒỔỖỘƠỚỜỞỠỢIÍÌỈĨỊUÚÙỦŨỤƯỨỪỬỮỰYÝỲ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_\`abcdefghijklmnopqrstuvwxyz{|}`;
915
+ //prettier-ignore
916
+ const $4d63c45d489e4cb5$var$char_map = {
917
+ À: "A",
918
+ Á: "A",
919
+ Â: "A",
920
+ Ã: "A",
921
+ Ä: "A",
922
+ Å: "A",
923
+ Æ: "AE",
924
+ Ç: "C",
925
+ È: "E",
926
+ É: "E",
927
+ Ê: "E",
928
+ Ë: "E",
929
+ Ì: "I",
930
+ Í: "I",
931
+ Î: "I",
932
+ Ï: "I",
933
+ Ð: "D",
934
+ Ñ: "N",
935
+ Ò: "O",
936
+ Ó: "O",
937
+ Ô: "O",
938
+ Õ: "O",
939
+ Ö: "O",
940
+ Ő: "O",
941
+ Ø: "O",
942
+ Ù: "U",
943
+ Ú: "U",
944
+ Û: "U",
945
+ Ü: "U",
946
+ Ű: "U",
947
+ Ý: "Y",
948
+ Þ: "TH",
949
+ ß: "ss",
950
+ à: "a",
951
+ á: "a",
952
+ â: "a",
953
+ ã: "a",
954
+ ä: "a",
955
+ å: "a",
956
+ æ: "ae",
957
+ ç: "c",
958
+ è: "e",
959
+ é: "e",
960
+ ê: "e",
961
+ ë: "e",
962
+ ì: "i",
963
+ í: "i",
964
+ î: "i",
965
+ ï: "i",
966
+ ð: "d",
967
+ ñ: "n",
968
+ ò: "o",
969
+ ó: "o",
970
+ ô: "o",
971
+ õ: "o",
972
+ ö: "o",
973
+ ő: "o",
974
+ ø: "o",
975
+ ù: "u",
976
+ ú: "u",
977
+ û: "u",
978
+ ü: "u",
979
+ ű: "u",
980
+ ý: "y",
981
+ þ: "th",
982
+ ÿ: "y",
983
+ "\xa9": "(c)",
984
+ Α: "A",
985
+ Β: "B",
986
+ Γ: "G",
987
+ Δ: "D",
988
+ Ε: "E",
989
+ Ζ: "Z",
990
+ Η: "H",
991
+ Θ: "8",
992
+ Ι: "I",
993
+ Κ: "K",
994
+ Λ: "L",
995
+ Μ: "M",
996
+ Ν: "N",
997
+ Ξ: "3",
998
+ Ο: "O",
999
+ Π: "P",
1000
+ Ρ: "R",
1001
+ Σ: "S",
1002
+ Τ: "T",
1003
+ Υ: "Y",
1004
+ Φ: "F",
1005
+ Χ: "X",
1006
+ Ψ: "PS",
1007
+ Ω: "W",
1008
+ Ά: "A",
1009
+ Έ: "E",
1010
+ Ί: "I",
1011
+ Ό: "O",
1012
+ Ύ: "Y",
1013
+ Ή: "H",
1014
+ Ώ: "W",
1015
+ Ϊ: "I",
1016
+ Ϋ: "Y",
1017
+ α: "a",
1018
+ β: "b",
1019
+ γ: "g",
1020
+ δ: "d",
1021
+ ε: "e",
1022
+ ζ: "z",
1023
+ η: "h",
1024
+ θ: "8",
1025
+ ι: "i",
1026
+ κ: "k",
1027
+ λ: "l",
1028
+ μ: "m",
1029
+ ν: "n",
1030
+ ξ: "3",
1031
+ ο: "o",
1032
+ π: "p",
1033
+ ρ: "r",
1034
+ σ: "s",
1035
+ τ: "t",
1036
+ υ: "y",
1037
+ φ: "f",
1038
+ χ: "x",
1039
+ ψ: "ps",
1040
+ ω: "w",
1041
+ ά: "a",
1042
+ έ: "e",
1043
+ ί: "i",
1044
+ ό: "o",
1045
+ ύ: "y",
1046
+ ή: "h",
1047
+ ώ: "w",
1048
+ ς: "s",
1049
+ ϊ: "i",
1050
+ ΰ: "y",
1051
+ ϋ: "y",
1052
+ ΐ: "i",
1053
+ Ş: "S",
1054
+ İ: "I",
1055
+ Ç: "C",
1056
+ Ü: "U",
1057
+ Ö: "O",
1058
+ Ğ: "G",
1059
+ ş: "s",
1060
+ ı: "i",
1061
+ ç: "c",
1062
+ ü: "u",
1063
+ ö: "o",
1064
+ ğ: "g",
1065
+ А: "A",
1066
+ Б: "B",
1067
+ В: "V",
1068
+ Г: "G",
1069
+ Д: "D",
1070
+ Е: "E",
1071
+ Ё: "Yo",
1072
+ Ж: "Zh",
1073
+ З: "Z",
1074
+ И: "I",
1075
+ Й: "J",
1076
+ К: "K",
1077
+ Л: "L",
1078
+ М: "M",
1079
+ Н: "N",
1080
+ О: "O",
1081
+ П: "P",
1082
+ Р: "R",
1083
+ С: "S",
1084
+ Т: "T",
1085
+ У: "U",
1086
+ Ф: "F",
1087
+ Х: "H",
1088
+ Ц: "C",
1089
+ Ч: "Ch",
1090
+ Ш: "Sh",
1091
+ Щ: "Sh",
1092
+ Ъ: "",
1093
+ Ы: "Y",
1094
+ Ь: "",
1095
+ Э: "E",
1096
+ Ю: "Yu",
1097
+ Я: "Ya",
1098
+ а: "a",
1099
+ б: "b",
1100
+ в: "v",
1101
+ г: "g",
1102
+ д: "d",
1103
+ е: "e",
1104
+ ё: "yo",
1105
+ ж: "zh",
1106
+ з: "z",
1107
+ и: "i",
1108
+ й: "j",
1109
+ к: "k",
1110
+ л: "l",
1111
+ м: "m",
1112
+ н: "n",
1113
+ о: "o",
1114
+ п: "p",
1115
+ р: "r",
1116
+ с: "s",
1117
+ т: "t",
1118
+ у: "u",
1119
+ ф: "f",
1120
+ х: "h",
1121
+ ц: "c",
1122
+ ч: "ch",
1123
+ ш: "sh",
1124
+ щ: "sh",
1125
+ ъ: "",
1126
+ ы: "y",
1127
+ ь: "",
1128
+ э: "e",
1129
+ ю: "yu",
1130
+ я: "ya",
1131
+ Є: "Ye",
1132
+ І: "I",
1133
+ Ї: "Yi",
1134
+ Ґ: "G",
1135
+ є: "ye",
1136
+ і: "i",
1137
+ ї: "yi",
1138
+ ґ: "g",
1139
+ Č: "C",
1140
+ Ď: "D",
1141
+ Ě: "E",
1142
+ Ň: "N",
1143
+ Ř: "R",
1144
+ Š: "S",
1145
+ Ť: "T",
1146
+ Ů: "U",
1147
+ Ž: "Z",
1148
+ č: "c",
1149
+ ď: "d",
1150
+ ě: "e",
1151
+ ň: "n",
1152
+ ř: "r",
1153
+ š: "s",
1154
+ ť: "t",
1155
+ ů: "u",
1156
+ ž: "z",
1157
+ Ą: "A",
1158
+ Ć: "C",
1159
+ Ę: "e",
1160
+ Ł: "L",
1161
+ Ń: "N",
1162
+ Ó: "o",
1163
+ Ś: "S",
1164
+ Ź: "Z",
1165
+ Ż: "Z",
1166
+ ą: "a",
1167
+ ć: "c",
1168
+ ę: "e",
1169
+ ł: "l",
1170
+ ń: "n",
1171
+ ó: "o",
1172
+ ś: "s",
1173
+ ź: "z",
1174
+ ż: "z",
1175
+ Ā: "A",
1176
+ Č: "C",
1177
+ Ē: "E",
1178
+ Ģ: "G",
1179
+ Ī: "i",
1180
+ Ķ: "k",
1181
+ Ļ: "L",
1182
+ Ņ: "N",
1183
+ Š: "S",
1184
+ Ū: "u",
1185
+ Ž: "Z",
1186
+ ā: "a",
1187
+ č: "c",
1188
+ ē: "e",
1189
+ ģ: "g",
1190
+ ī: "i",
1191
+ ķ: "k",
1192
+ ļ: "l",
1193
+ ņ: "n",
1194
+ š: "s",
1195
+ ū: "u",
1196
+ ž: "z"
1197
+ };
1198
+ //prettier-ignore
1199
+ const $4d63c45d489e4cb5$var$_lut = [
1200
+ "00",
1201
+ "01",
1202
+ "02",
1203
+ "03",
1204
+ "04",
1205
+ "05",
1206
+ "06",
1207
+ "07",
1208
+ "08",
1209
+ "09",
1210
+ "0a",
1211
+ "0b",
1212
+ "0c",
1213
+ "0d",
1214
+ "0e",
1215
+ "0f",
1216
+ "10",
1217
+ "11",
1218
+ "12",
1219
+ "13",
1220
+ "14",
1221
+ "15",
1222
+ "16",
1223
+ "17",
1224
+ "18",
1225
+ "19",
1226
+ "1a",
1227
+ "1b",
1228
+ "1c",
1229
+ "1d",
1230
+ "1e",
1231
+ "1f",
1232
+ "20",
1233
+ "21",
1234
+ "22",
1235
+ "23",
1236
+ "24",
1237
+ "25",
1238
+ "26",
1239
+ "27",
1240
+ "28",
1241
+ "29",
1242
+ "2a",
1243
+ "2b",
1244
+ "2c",
1245
+ "2d",
1246
+ "2e",
1247
+ "2f",
1248
+ "30",
1249
+ "31",
1250
+ "32",
1251
+ "33",
1252
+ "34",
1253
+ "35",
1254
+ "36",
1255
+ "37",
1256
+ "38",
1257
+ "39",
1258
+ "3a",
1259
+ "3b",
1260
+ "3c",
1261
+ "3d",
1262
+ "3e",
1263
+ "3f",
1264
+ "40",
1265
+ "41",
1266
+ "42",
1267
+ "43",
1268
+ "44",
1269
+ "45",
1270
+ "46",
1271
+ "47",
1272
+ "48",
1273
+ "49",
1274
+ "4a",
1275
+ "4b",
1276
+ "4c",
1277
+ "4d",
1278
+ "4e",
1279
+ "4f",
1280
+ "50",
1281
+ "51",
1282
+ "52",
1283
+ "53",
1284
+ "54",
1285
+ "55",
1286
+ "56",
1287
+ "57",
1288
+ "58",
1289
+ "59",
1290
+ "5a",
1291
+ "5b",
1292
+ "5c",
1293
+ "5d",
1294
+ "5e",
1295
+ "5f",
1296
+ "60",
1297
+ "61",
1298
+ "62",
1299
+ "63",
1300
+ "64",
1301
+ "65",
1302
+ "66",
1303
+ "67",
1304
+ "68",
1305
+ "69",
1306
+ "6a",
1307
+ "6b",
1308
+ "6c",
1309
+ "6d",
1310
+ "6e",
1311
+ "6f",
1312
+ "70",
1313
+ "71",
1314
+ "72",
1315
+ "73",
1316
+ "74",
1317
+ "75",
1318
+ "76",
1319
+ "77",
1320
+ "78",
1321
+ "79",
1322
+ "7a",
1323
+ "7b",
1324
+ "7c",
1325
+ "7d",
1326
+ "7e",
1327
+ "7f",
1328
+ "80",
1329
+ "81",
1330
+ "82",
1331
+ "83",
1332
+ "84",
1333
+ "85",
1334
+ "86",
1335
+ "87",
1336
+ "88",
1337
+ "89",
1338
+ "8a",
1339
+ "8b",
1340
+ "8c",
1341
+ "8d",
1342
+ "8e",
1343
+ "8f",
1344
+ "90",
1345
+ "91",
1346
+ "92",
1347
+ "93",
1348
+ "94",
1349
+ "95",
1350
+ "96",
1351
+ "97",
1352
+ "98",
1353
+ "99",
1354
+ "9a",
1355
+ "9b",
1356
+ "9c",
1357
+ "9d",
1358
+ "9e",
1359
+ "9f",
1360
+ "a0",
1361
+ "a1",
1362
+ "a2",
1363
+ "a3",
1364
+ "a4",
1365
+ "a5",
1366
+ "a6",
1367
+ "a7",
1368
+ "a8",
1369
+ "a9",
1370
+ "aa",
1371
+ "ab",
1372
+ "ac",
1373
+ "ad",
1374
+ "ae",
1375
+ "af",
1376
+ "b0",
1377
+ "b1",
1378
+ "b2",
1379
+ "b3",
1380
+ "b4",
1381
+ "b5",
1382
+ "b6",
1383
+ "b7",
1384
+ "b8",
1385
+ "b9",
1386
+ "ba",
1387
+ "bb",
1388
+ "bc",
1389
+ "bd",
1390
+ "be",
1391
+ "bf",
1392
+ "c0",
1393
+ "c1",
1394
+ "c2",
1395
+ "c3",
1396
+ "c4",
1397
+ "c5",
1398
+ "c6",
1399
+ "c7",
1400
+ "c8",
1401
+ "c9",
1402
+ "ca",
1403
+ "cb",
1404
+ "cc",
1405
+ "cd",
1406
+ "ce",
1407
+ "cf",
1408
+ "d0",
1409
+ "d1",
1410
+ "d2",
1411
+ "d3",
1412
+ "d4",
1413
+ "d5",
1414
+ "d6",
1415
+ "d7",
1416
+ "d8",
1417
+ "d9",
1418
+ "da",
1419
+ "db",
1420
+ "dc",
1421
+ "dd",
1422
+ "de",
1423
+ "df",
1424
+ "e0",
1425
+ "e1",
1426
+ "e2",
1427
+ "e3",
1428
+ "e4",
1429
+ "e5",
1430
+ "e6",
1431
+ "e7",
1432
+ "e8",
1433
+ "e9",
1434
+ "ea",
1435
+ "eb",
1436
+ "ec",
1437
+ "ed",
1438
+ "ee",
1439
+ "ef",
1440
+ "f0",
1441
+ "f1",
1442
+ "f2",
1443
+ "f3",
1444
+ "f4",
1445
+ "f5",
1446
+ "f6",
1447
+ "f7",
1448
+ "f8",
1449
+ "f9",
1450
+ "fa",
1451
+ "fb",
1452
+ "fc",
1453
+ "fd",
1454
+ "fe",
1455
+ "ff"
1456
+ ];
1457
+ const $4d63c45d489e4cb5$export$1553b55b39fe0033 = (length = 0)=>{
1458
+ return $4d63c45d489e4cb5$export$6263a4b5f5ed507b(length, $4d63c45d489e4cb5$export$c7acbaf62ee0a77a);
1459
+ };
1460
+ const $4d63c45d489e4cb5$export$6263a4b5f5ed507b = (length, str = $4d63c45d489e4cb5$export$4645b4fcee4cd202)=>{
1461
+ let result = "";
1462
+ for(let i = 0; i < length; i++)result += str.charAt(Math.floor(Math.random() * str.length));
1463
+ return result;
1464
+ };
1465
+ const $4d63c45d489e4cb5$export$7587f8e6781523e5 = (text, str1, str2 = "")=>{
1466
+ if (!text) return "";
1467
+ if (text.indexOf(str1) <= -1) return "";
1468
+ const firstIndex = text.indexOf(str1) + str1.length;
1469
+ const secondIndex = str2 ? text.indexOf(str2, firstIndex) : text.length;
1470
+ return text.substring(firstIndex, secondIndex);
1471
+ };
1472
+ const $4d63c45d489e4cb5$export$992e00a9150f373b = (object = "")=>{
1473
+ /// Ensure some object is a coerced to a string
1474
+ if ((0, $f062db65da1a3a19$export$630801d484da15df)(object)) return "";
1475
+ return "" + object;
1476
+ };
1477
+ const $4d63c45d489e4cb5$export$d80c591a9e16646 = (str = "")=>{
1478
+ return $4d63c45d489e4cb5$export$992e00a9150f373b(str).toUpperCase();
1479
+ };
1480
+ const $4d63c45d489e4cb5$export$84b9399c77df0edf = (str = "")=>{
1481
+ return $4d63c45d489e4cb5$export$992e00a9150f373b(str).toLowerCase();
1482
+ };
1483
+ const $4d63c45d489e4cb5$export$29d0dd1cc36cee26 = (str = "")=>{
1484
+ const regString = new RegExp(/(?:^|\s|-)\S/g);
1485
+ return $4d63c45d489e4cb5$export$84b9399c77df0edf(str).replace(regString, function(c) {
1486
+ return c.toUpperCase();
1487
+ });
1488
+ };
1489
+ const $4d63c45d489e4cb5$export$9a00dee1beb8f576 = (str, lowercaseRest = 1)=>{
1490
+ str = $4d63c45d489e4cb5$export$992e00a9150f373b(str);
1491
+ const remainingChars = !lowercaseRest ? str.slice(1) : str.slice(1).toLowerCase();
1492
+ return str.charAt(0).toUpperCase() + remainingChars;
1493
+ };
1494
+ const $4d63c45d489e4cb5$export$ca69f6a6464047b4 = (str)=>{
1495
+ str = $4d63c45d489e4cb5$export$992e00a9150f373b(str);
1496
+ str = str.trim();
1497
+ str = str.replace(/^\s+|\s+$/gm, "");
1498
+ str = str.toLowerCase();
1499
+ const arr = str.split(" ");
1500
+ str = arr.map((item)=>{
1501
+ return $4d63c45d489e4cb5$export$9a00dee1beb8f576(item);
1502
+ }).filter((x)=>x).join(" ");
1503
+ return str;
1504
+ };
1505
+ const $4d63c45d489e4cb5$export$b2c326c8102a62cd = (s, opt = {})=>{
1506
+ s = $4d63c45d489e4cb5$export$992e00a9150f373b(s);
1507
+ var defaults = {
1508
+ delimiter: " ",
1509
+ limit: undefined,
1510
+ lowercase: true,
1511
+ replacements: {},
1512
+ transliterate: typeof XRegExp === "undefined" ? true : false
1513
+ };
1514
+ // Merge options
1515
+ for(var k in defaults)if (!opt.hasOwnProperty(k)) opt[k] = defaults[k];
1516
+ // Vietnamese
1517
+ s = s.replace(/á|à|ả|ạ|ã|ă|ắ|ằ|ẳ|ẵ|ặ|â|ấ|ầ|ẩ|ẫ|ậ/gi, "a");
1518
+ s = s.replace(/é|è|ẻ|ẽ|ẹ|ê|ế|ề|ể|ễ|ệ/gi, "e");
1519
+ s = s.replace(/i|í|ì|ỉ|ĩ|ị/gi, "i");
1520
+ s = s.replace(/ó|ò|ỏ|õ|ọ|ô|ố|ồ|ổ|ỗ|ộ|ơ|ớ|ờ|ở|ỡ|ợ/gi, "o");
1521
+ s = s.replace(/ú|ù|ủ|ũ|ụ|ư|ứ|ừ|ử|ữ|ự/gi, "u");
1522
+ s = s.replace(/ý|ỳ|ỷ|ỹ|ỵ/gi, "y");
1523
+ s = s.replace(/đ/gi, "d");
1524
+ s = "@" + s + "@";
1525
+ s = s.replace(/\@\-|\-\@|\@/gi, "");
1526
+ // Make custom replacements
1527
+ for(var k in opt.replacements)s = s.replace(RegExp(k, "g"), opt.replacements[k]);
1528
+ // Transliterate characters to ASCII
1529
+ if (opt.transliterate) for(var k in $4d63c45d489e4cb5$var$char_map)s = s.replace(RegExp(k, "g"), $4d63c45d489e4cb5$var$char_map[k]);
1530
+ // Replace non-alphanumeric characters with our delimiter
1531
+ var alnum = typeof XRegExp === "undefined" ? RegExp("[^a-z0-9]+", "ig") : XRegExp("[^\\p{L}\\p{N}]+", "ig");
1532
+ s = s.replace(alnum, opt.delimiter);
1533
+ // Remove duplicate delimiters
1534
+ s = s.replace(RegExp("[" + opt.delimiter + "]{2,}", "g"), opt.delimiter);
1535
+ // Truncate slug to max. characters
1536
+ s = s.substring(0, opt.limit);
1537
+ // Remove delimiter from ends
1538
+ s = s.replace(RegExp("(^" + opt.delimiter + "|" + opt.delimiter + "$)", "g"), "");
1539
+ return opt.lowercase ? s.toLowerCase() : s;
1540
+ };
1541
+ function $4d63c45d489e4cb5$export$e73c8bd0f20705a() {
1542
+ // http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/21963136#21963136
1543
+ const d0 = Math.random() * 0xffffffff | 0;
1544
+ const d1 = Math.random() * 0xffffffff | 0;
1545
+ const d2 = Math.random() * 0xffffffff | 0;
1546
+ const d3 = Math.random() * 0xffffffff | 0;
1547
+ const uuid = $4d63c45d489e4cb5$var$_lut[d0 & 0xff] + $4d63c45d489e4cb5$var$_lut[d0 >> 8 & 0xff] + $4d63c45d489e4cb5$var$_lut[d0 >> 16 & 0xff] + $4d63c45d489e4cb5$var$_lut[d0 >> 24 & 0xff] + "-" + $4d63c45d489e4cb5$var$_lut[d1 & 0xff] + $4d63c45d489e4cb5$var$_lut[d1 >> 8 & 0xff] + "-" + $4d63c45d489e4cb5$var$_lut[d1 >> 16 & 0x0f | 0x40] + $4d63c45d489e4cb5$var$_lut[d1 >> 24 & 0xff] + "-" + $4d63c45d489e4cb5$var$_lut[d2 & 0x3f | 0x80] + $4d63c45d489e4cb5$var$_lut[d2 >> 8 & 0xff] + "-" + $4d63c45d489e4cb5$var$_lut[d2 >> 16 & 0xff] + $4d63c45d489e4cb5$var$_lut[d2 >> 24 & 0xff] + $4d63c45d489e4cb5$var$_lut[d3 & 0xff] + $4d63c45d489e4cb5$var$_lut[d3 >> 8 & 0xff] + $4d63c45d489e4cb5$var$_lut[d3 >> 16 & 0xff] + $4d63c45d489e4cb5$var$_lut[d3 >> 24 & 0xff];
1548
+ // .toLowerCase() here flattens concatenated strings to save heap memory space.
1549
+ return uuid.toLowerCase();
1550
+ }
1551
+
1552
+
1553
+ var $2530072174f8c591$exports = {};
1554
+
1555
+ $parcel$export($2530072174f8c591$exports, "getUrlParams", () => $2530072174f8c591$export$1061071041ba84d4);
1556
+ $parcel$export($2530072174f8c591$exports, "isLink", () => $2530072174f8c591$export$4e4336b95bdd3a81);
1557
+ $parcel$export($2530072174f8c591$exports, "getFileNameWithoutExtension", () => $2530072174f8c591$export$afd41bce1ef3e9cf);
1558
+ $parcel$export($2530072174f8c591$exports, "getFileNameWithExtension", () => $2530072174f8c591$export$f8ed5ad7fba8ab94);
1559
+ $parcel$export($2530072174f8c591$exports, "getFileExtension", () => $2530072174f8c591$export$5f7821c344028c56);
1560
+
1561
+ var $2530072174f8c591$var$urlRegex = /(https?:\/\/[^\s]+)/g;
1562
+ const $2530072174f8c591$export$1061071041ba84d4 = (parameter, staticURL, decode)=>{
1563
+ if (typeof window == "undefined") return "";
1564
+ staticURL = staticURL == undefined ? window.location : staticURL;
1565
+ var currLocation = staticURL.length ? staticURL : window.location.search;
1566
+ if (currLocation.split("?").length < 2) return "";
1567
+ var parArr = currLocation.split("?")[1].split("&"), returnBool = true;
1568
+ for(var i = 0; i < parArr.length; i++){
1569
+ var parr = parArr[i].split("=");
1570
+ if (parr[0] == parameter) return decode ? decodeURIComponent(parr[1]) : parr[1];
1571
+ else returnBool = false;
1572
+ }
1573
+ if (!returnBool) return false;
1574
+ };
1575
+ const $2530072174f8c591$export$4e4336b95bdd3a81 = (str)=>{
1576
+ return $2530072174f8c591$var$urlRegex.test(str);
1577
+ };
1578
+ const $2530072174f8c591$export$afd41bce1ef3e9cf = (url)=>{
1579
+ url = decodeURIComponent(url);
1580
+ if (url) {
1581
+ const m = url.toString().match(/.*\/(.+?)\./);
1582
+ if (m && m.length > 1) return m[1];
1583
+ if (!(0, $f062db65da1a3a19$export$630801d484da15df)(url)) return url.split(".").shift();
1584
+ }
1585
+ return "";
1586
+ };
1587
+ const $2530072174f8c591$export$f8ed5ad7fba8ab94 = (url)=>{
1588
+ url = decodeURIComponent(url);
1589
+ if (url) {
1590
+ const m = url.toString().match(/.*\/(.*)$/);
1591
+ if (m && m.length > 1) return m[1].split("/").pop().split("?")[0];
1592
+ if (!(0, $f062db65da1a3a19$export$630801d484da15df)(url)) return url;
1593
+ }
1594
+ return "";
1595
+ };
1596
+ const $2530072174f8c591$export$5f7821c344028c56 = (url)=>{
1597
+ return $2530072174f8c591$export$f8ed5ad7fba8ab94(url).split(".").pop();
1598
+ };
1599
+
1600
+
1601
+ $parcel$exportWildcard(module.exports, $6f2c75dc39b33f1a$exports);
1602
+ $parcel$exportWildcard(module.exports, $0ceaaa89a2e12982$exports);
1603
+ $parcel$exportWildcard(module.exports, $cd264381f56635cb$exports);
1604
+ $parcel$exportWildcard(module.exports, $78b0cf1b50f4e3c3$exports);
1605
+ $parcel$exportWildcard(module.exports, $a4ef464576eb54bc$exports);
1606
+ $parcel$exportWildcard(module.exports, $f062db65da1a3a19$exports);
1607
+ $parcel$exportWildcard(module.exports, $4d63c45d489e4cb5$exports);
1608
+ $parcel$exportWildcard(module.exports, $2530072174f8c591$exports);
1609
+
1610
+
1611
+ //# sourceMappingURL=main.js.map