@libs-ui/utils 0.2.192 → 0.2.194
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/base64.d.ts +5 -0
- package/dom.d.ts +2 -0
- package/download.d.ts +3 -0
- package/escape-html.d.ts +2 -1
- package/esm2022/base64.mjs +42 -0
- package/esm2022/dom.mjs +16 -1
- package/esm2022/download.mjs +37 -0
- package/esm2022/escape-html.mjs +19 -5
- package/esm2022/file.mjs +7 -1
- package/esm2022/index.mjs +4 -6
- package/esm2022/key-cache.mjs +2 -1
- package/esm2022/uri.mjs +16 -0
- package/fesm2022/libs-ui-utils.mjs +109 -49
- package/fesm2022/libs-ui-utils.mjs.map +1 -1
- package/file.d.ts +1 -0
- package/index.d.ts +3 -5
- package/package.json +2 -2
- package/uri.d.ts +3 -0
- package/convert-base64-to-blob.d.ts +0 -1
- package/convert-blob-to-file.d.ts +0 -1
- package/convert-file-to-base64-or-object-url.d.ts +0 -1
- package/download-file-by-url.d.ts +0 -1
- package/encode-url.define.d.ts +0 -1
- package/esm2022/convert-base64-to-blob.mjs +0 -21
- package/esm2022/convert-blob-to-file.mjs +0 -7
- package/esm2022/convert-file-to-base64-or-object-url.mjs +0 -13
- package/esm2022/download-file-by-url.mjs +0 -16
- package/esm2022/encode-url.define.mjs +0 -11
package/base64.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const base64Encode: (value: string) => string;
|
|
2
|
+
export declare const base64Decode: (value: string) => string;
|
|
3
|
+
export declare const convertBase64ToBlob: (dataBase64: string) => Blob;
|
|
4
|
+
export declare const convertFileToBase64_ObjectUrl: (file: File) => Promise<string | ArrayBuffer>;
|
|
5
|
+
export declare const convertFileToBase64: (file: File) => Promise<string | ArrayBuffer>;
|
package/dom.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Renderer2 } from "@angular/core";
|
|
2
2
|
import { IBoundingClientRect } from "@libs-ui/interfaces-types";
|
|
3
3
|
import { Subject } from "rxjs";
|
|
4
|
+
import Delta from "quill-delta";
|
|
4
5
|
export declare const getPlatFromBrowser: () => string;
|
|
5
6
|
export declare const getDocumentByString: (htmlStr: string) => Document;
|
|
6
7
|
export declare const cloneIBoundingClientRect: (rect: IBoundingClientRect) => IBoundingClientRect;
|
|
@@ -28,3 +29,4 @@ export declare const getDragEventByElement: (config: {
|
|
|
28
29
|
functionMouseUp?: (event: MouseEvent) => void;
|
|
29
30
|
onDestroy: Subject<any>;
|
|
30
31
|
}) => import("rxjs").Observable<MouseEvent>;
|
|
32
|
+
export declare const getHTMLFromQuill: (delta: Delta) => string;
|
package/download.d.ts
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare const downloadFileByUrlUseXmlRequest: (fileUrl: string, filename: string) => void;
|
|
2
|
+
export declare const downloadFileByUrl: (fileUrl: string, filename: string, onlyOpen?: boolean) => Promise<void>;
|
|
3
|
+
export declare const downloadImageFromELement: (imageElement: HTMLImageElement, typeFileDownload?: string, nameFile?: string) => void;
|
package/escape-html.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export declare const escapeHtml: (
|
|
1
|
+
export declare const escapeHtml: (str: string) => string;
|
|
2
|
+
export declare const decodeEscapeHtml: (str: string) => string;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export const base64Encode = (value) => {
|
|
2
|
+
return btoa(encodeURI(value));
|
|
3
|
+
};
|
|
4
|
+
export const base64Decode = (value) => {
|
|
5
|
+
return decodeURI(atob(value));
|
|
6
|
+
};
|
|
7
|
+
export const convertBase64ToBlob = (dataBase64) => {
|
|
8
|
+
const BASE64_MARKER = ';base64,';
|
|
9
|
+
if (dataBase64.indexOf(BASE64_MARKER) === -1) {
|
|
10
|
+
const parts = dataBase64.split(',');
|
|
11
|
+
const contentType = parts[0].split(':')[1];
|
|
12
|
+
const raw = parts[1];
|
|
13
|
+
const blob = new Blob([raw], { type: contentType });
|
|
14
|
+
return blob;
|
|
15
|
+
}
|
|
16
|
+
const parts = dataBase64.split(BASE64_MARKER);
|
|
17
|
+
const contentType = parts[0].split(':')[1];
|
|
18
|
+
const raw = window.atob(parts[1]);
|
|
19
|
+
const rawLength = raw.length;
|
|
20
|
+
const uInt8Array = new Uint8Array(rawLength);
|
|
21
|
+
for (let i = 0; i < rawLength; ++i) {
|
|
22
|
+
uInt8Array[i] = raw.charCodeAt(i);
|
|
23
|
+
}
|
|
24
|
+
const blob = new Blob([uInt8Array], { type: contentType });
|
|
25
|
+
return blob;
|
|
26
|
+
};
|
|
27
|
+
export const convertFileToBase64_ObjectUrl = async (file) => {
|
|
28
|
+
if (!file.type.match(/image.*/)) {
|
|
29
|
+
return URL.createObjectURL(file);
|
|
30
|
+
}
|
|
31
|
+
return await convertFileToBase64(file);
|
|
32
|
+
};
|
|
33
|
+
export const convertFileToBase64 = (file) => {
|
|
34
|
+
return new Promise((resolve) => {
|
|
35
|
+
const reader = new FileReader();
|
|
36
|
+
reader.readAsDataURL(file);
|
|
37
|
+
reader.onload = (event) => {
|
|
38
|
+
resolve(event.target?.result ?? '');
|
|
39
|
+
};
|
|
40
|
+
});
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZTY0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy11aS91dGlscy9zcmMvYmFzZTY0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO0lBQzVDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ2hDLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO0lBQzVDLE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ2hDLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsVUFBa0IsRUFBRSxFQUFFO0lBQ3hELE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQztJQUVqQyxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM3QyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0MsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUVwRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzlDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0MsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsQyxNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBQzdCLE1BQU0sVUFBVSxHQUFHLElBQUksVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRTdDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBRTNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsS0FBSyxFQUFFLElBQVUsRUFBaUMsRUFBRTtJQUMvRixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUNoQyxPQUFPLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELE9BQU8sTUFBTSxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUV6QyxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLElBQVUsRUFBaUMsRUFBRTtJQUMvRSxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7UUFDN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUVoQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUN4QixPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLElBQUksRUFBRSxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgYmFzZTY0RW5jb2RlID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIGJ0b2EoZW5jb2RlVVJJKHZhbHVlKSk7XG59O1xuXG5leHBvcnQgY29uc3QgYmFzZTY0RGVjb2RlID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIGRlY29kZVVSSShhdG9iKHZhbHVlKSk7XG59O1xuXG5leHBvcnQgY29uc3QgY29udmVydEJhc2U2NFRvQmxvYiA9IChkYXRhQmFzZTY0OiBzdHJpbmcpID0+IHtcbiAgY29uc3QgQkFTRTY0X01BUktFUiA9ICc7YmFzZTY0LCc7XG5cbiAgaWYgKGRhdGFCYXNlNjQuaW5kZXhPZihCQVNFNjRfTUFSS0VSKSA9PT0gLTEpIHtcbiAgICBjb25zdCBwYXJ0cyA9IGRhdGFCYXNlNjQuc3BsaXQoJywnKTtcbiAgICBjb25zdCBjb250ZW50VHlwZSA9IHBhcnRzWzBdLnNwbGl0KCc6JylbMV07XG4gICAgY29uc3QgcmF3ID0gcGFydHNbMV07XG4gICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtyYXddLCB7IHR5cGU6IGNvbnRlbnRUeXBlIH0pO1xuXG4gICAgcmV0dXJuIGJsb2I7XG4gIH1cbiAgY29uc3QgcGFydHMgPSBkYXRhQmFzZTY0LnNwbGl0KEJBU0U2NF9NQVJLRVIpO1xuICBjb25zdCBjb250ZW50VHlwZSA9IHBhcnRzWzBdLnNwbGl0KCc6JylbMV07XG4gIGNvbnN0IHJhdyA9IHdpbmRvdy5hdG9iKHBhcnRzWzFdKTtcbiAgY29uc3QgcmF3TGVuZ3RoID0gcmF3Lmxlbmd0aDtcbiAgY29uc3QgdUludDhBcnJheSA9IG5ldyBVaW50OEFycmF5KHJhd0xlbmd0aCk7XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCByYXdMZW5ndGg7ICsraSkge1xuICAgIHVJbnQ4QXJyYXlbaV0gPSByYXcuY2hhckNvZGVBdChpKTtcbiAgfVxuXG4gIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbdUludDhBcnJheV0sIHsgdHlwZTogY29udGVudFR5cGUgfSk7XG5cbiAgcmV0dXJuIGJsb2I7XG59O1xuXG5leHBvcnQgY29uc3QgY29udmVydEZpbGVUb0Jhc2U2NF9PYmplY3RVcmwgPSBhc3luYyAoZmlsZTogRmlsZSk6IFByb21pc2U8c3RyaW5nIHwgQXJyYXlCdWZmZXI+ID0+IHtcbiAgaWYgKCFmaWxlLnR5cGUubWF0Y2goL2ltYWdlLiovKSkge1xuICAgIHJldHVybiBVUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpO1xuICB9XG5cbiAgcmV0dXJuIGF3YWl0IGNvbnZlcnRGaWxlVG9CYXNlNjQoZmlsZSk7XG5cbn1cblxuZXhwb3J0IGNvbnN0IGNvbnZlcnRGaWxlVG9CYXNlNjQgPSAoZmlsZTogRmlsZSk6IFByb21pc2U8c3RyaW5nIHwgQXJyYXlCdWZmZXI+ID0+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcblxuICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICAgIHJlYWRlci5vbmxvYWQgPSAoZXZlbnQpID0+IHtcbiAgICAgIHJlc29sdmUoZXZlbnQudGFyZ2V0Py5yZXN1bHQgPz8gJycpO1xuICAgIH07XG4gIH0pO1xufTtcblxuIl19
|
package/esm2022/dom.mjs
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { finalize, fromEvent, mergeMap, startWith, takeUntil, tap } from "rxjs";
|
|
2
|
+
import Quill from "quill";
|
|
3
|
+
import { decodeEscapeHtml } from "./escape-html";
|
|
2
4
|
const parser = new DOMParser();
|
|
5
|
+
const quill = new Quill(document.createElement('div'));
|
|
3
6
|
export const getPlatFromBrowser = () => {
|
|
4
7
|
const userAgent = navigator.userAgent;
|
|
5
8
|
let tem;
|
|
@@ -118,4 +121,16 @@ export const getDragEventByElement = (config) => {
|
|
|
118
121
|
}), takeUntil(mouseup));
|
|
119
122
|
return mouseDown.pipe(mergeMap((e) => config.isStartWithMouseDonwEvent ? mousemove.pipe(startWith(e)) : mousemove), takeUntil(config.onDestroy), finalize(removeClass));
|
|
120
123
|
};
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy11aS91dGlscy9zcmMvZG9tLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQVcsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6RixNQUFNLE1BQU0sR0FBRyxJQUFJLFNBQVMsRUFBRSxDQUFDO0FBRS9CLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLEdBQUcsRUFBRTtJQUNyQyxNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDO0lBQ3RDLElBQUksR0FBRyxDQUFDO0lBQ1IsSUFBSSxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyw4REFBOEQsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUVsRyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM5QixHQUFHLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUU5QyxPQUFPLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDMUIsR0FBRyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUM3QyxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNqQixPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUVILENBQUM7SUFDRCxL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aXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IFJlbmRlcmVyMiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJQm91bmRpbmdDbGllbnRSZWN0IH0gZnJvbSBcIkBsaWJzLXVpL2ludGVyZmFjZXMtdHlwZXNcIjtcbmltcG9ydCB7IGZpbmFsaXplLCBmcm9tRXZlbnQsIG1lcmdlTWFwLCBzdGFydFdpdGgsIFN1YmplY3QsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSBcInJ4anNcIjtcbmNvbnN0IHBhcnNlciA9IG5ldyBET01QYXJzZXIoKTtcblxuZXhwb3J0IGNvbnN0IGdldFBsYXRGcm9tQnJvd3NlciA9ICgpID0+IHtcbiAgY29uc3QgdXNlckFnZW50ID0gbmF2aWdhdG9yLnVzZXJBZ2VudDtcbiAgbGV0IHRlbTtcbiAgbGV0IG1hdGNoID0gdXNlckFnZW50Lm1hdGNoKC8ob3BlcmF8Y2hyb21lfHNhZmFyaXxmaXJlZm94fG1zaWV8dHJpZGVudCg/PVxcLykpXFwvP1xccyooXFxkKykvaSkgfHwgW107XG5cbiAgaWYgKC90cmlkZW50L2kudGVzdChtYXRjaFsxXSkpIHtcbiAgICB0ZW0gPSAvXFxicnZbIDpdKyhcXGQrKS9nLmV4ZWModXNlckFnZW50KSB8fCBbXTtcblxuICAgIHJldHVybiAnSUUgJyArICh0ZW1bMV0gfHwgJycpO1xuICB9XG4gIGlmIChtYXRjaFsxXSA9PT0gJ0Nocm9tZScpIHtcbiAgICB0ZW0gPSB1c2VyQWdlbnQubWF0Y2goL1xcYihPUFJ8RWRnZSlcXC8oXFxkKykvKTtcbiAgICBpZiAodGVtICE9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGVtLnNsaWNlKDEpLmpvaW4oJyAnKS5yZXBsYWNlKCdPUFInLCAnT3BlcmEnKTtcbiAgICB9XG5cbiAgfVxuICBtYXRjaCA9IG1hdGNoWzJdID8gW21hdGNoWzFdLCBtYXRjaFsyXV0gOiBbbmF2aWdhdG9yLmFwcE5hbWUsIG5hdmlnYXRvci5hcHBWZXJzaW9uLCAnLT8nXTtcbiAgaWYgKCh0ZW0gPSB1c2VyQWdlbnQubWF0Y2goL3ZlcnNpb25cXC8oXFxkKykvaSkpICE9PSBudWxsKSB7XG4gICAgbWF0Y2guc3BsaWNlKDEsIDEsIHRlbVsxXSk7XG4gIH1cblxuICByZXR1cm4gbWF0Y2guam9pbignICcpO1xufVxuXG5leHBvcnQgY29uc3QgZ2V0RG9jdW1lbnRCeVN0cmluZyA9IChodG1sU3RyOiBzdHJpbmcpOiBEb2N1bWVudCA9PiB7XG5cbiAgcmV0dXJuIHBhcnNlci5wYXJzZUZyb21TdHJpbmcoaHRtbFN0ciwgJ3RleHQvaHRtbCcpO1xufVxuXG5leHBvcnQgY29uc3QgY2xvbmVJQm91bmRpbmdDbGllbnRSZWN0ID0gKHJlY3Q6IElCb3VuZGluZ0NsaWVudFJlY3QpOiBJQm91bmRpbmdDbGllbnRSZWN0ID0+IHtcbiAgcmV0dXJuIHtcbiAgICB0b3A6IHJlY3RbJ3RvcCddLFxuICAgIGxlZnQ6IHJlY3RbJ2xlZnQnXSxcbiAgICB3aWR0aDogcmVjdFsnd2lkdGgnXSxcbiAgICBoZWlnaHQ6IHJlY3RbJ2hlaWdodCddLFxuICAgIGJvdHRvbTogcmVjdFsnYm90dG9tJ11cbiAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IHNldFN0eWxlc0VsZW1lbnQgPSAoZWw6IEhUTUxFbGVtZW50LCBzdHlsZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4sIHJlbmRlcjI6IFJlbmRlcmVyMik6IHZvaWQgPT4ge1xuICBPYmplY3Qua2V5cyhzdHlsZXMpLmZvckVhY2goKGtleTogc3RyaW5nKSA9PiByZW5kZXIyLnNldFN0eWxlKGVsLCBrZXksIHN0eWxlc1trZXldKSk7XG59XG5cbmV4cG9ydCBjb25zdCBnZXRWaWV3cG9ydCA9ICh3aW46IFdpbmRvdyA9IHdpbmRvdyk6IHsgd2lkdGg6IG51bWJlcjsgaGVpZ2h0OiBudW1iZXIgfSA9PiB7XG4gIGNvbnN0IGRvYyA9IHdpbi5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsXG4gICAgYm9keSA9IHdpbi5kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnYm9keScpWzBdLFxuICAgIHcgPSB3aW4uaW5uZXJXaWR0aCB8fCBkb2MuY2xpZW50V2lkdGggfHwgYm9keS5jbGllbnRXaWR0aCxcbiAgICBoID0gd2luLmlubmVySGVpZ2h0IHx8IGRvYy5jbGllbnRIZWlnaHQgfHwgYm9keS5jbGllbnRIZWlnaHQ7XG5cbiAgcmV0dXJuIHsgd2lkdGg6IHcsIGhlaWdodDogaCB9O1xufVxuXG5leHBvcnQgY29uc3Qgc2V0Q2FyZXRQb3NpdGlvbiA9IChlbGVtZW50OiBIVE1MVGV4dEFyZWFFbGVtZW50IHwgSFRNTElucHV0RWxlbWVudCwgcG9zaXRpb246IG51bWJlcik6IHZvaWQgPT4ge1xuICBpZiAoIWVsZW1lbnQgfHwgIWVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgZWxlbWVudC5mb2N1cygpO1xuICBlbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKHBvc2l0aW9uLCBwb3NpdGlvbik7XG59XG5cbmV4cG9ydCBjb25zdCBjaGVja1ZpZXdJblNjcmVlbiA9IChjb250YWluZXI6IEhUTUxFbGVtZW50LCBlbGVtZW50OiBIVE1MRWxlbWVudCwgZWxlbWVudFNjcm9sbD86IEhUTUxFbGVtZW50LCBtYXhUb3BMZWZ0PzogeyB0b3A/OiBudW1iZXIsIGxlZnQ/OiBudW1iZXIgfSk6IGJvb2xlYW4gPT4ge1xuICBpZiAoIWNvbnRhaW5lciB8fCAhZWxlbWVudCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IHJlY3RDb250YWluZXIgPSBjbG9uZUlCb3VuZGluZ0NsaWVudFJlY3QoY29udGFpbmVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpKTtcblxuICBpZiAoZWxlbWVudFNjcm9sbCkge1xuICAgIGNvbnN0IHJlY3RFbGVtZW50U2Nyb2xsID0gZWxlbWVudFNjcm9sbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIHJlY3RDb250YWluZXJbJ2xlZnQnXSA9IHJlY3RFbGVtZW50U2Nyb2xsLmxlZnQ7XG4gICAgcmVjdENvbnRhaW5lclsndG9wJ10gPSByZWN0RWxlbWVudFNjcm9sbC50b3A7XG5cbiAgfVxuXG4gIGNvbnN0IHJlY3RFbGVtZW50ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgY29uc3QgeyBsZWZ0LCB0b3AgfSA9IHJlY3RFbGVtZW50O1xuICBjb25zdCB0b3BDb250YWluZXIgPSByZWN0Q29udGFpbmVyWyd0b3AnXTtcbiAgY29uc3QgbGVmdENvbnRhaW5lciA9IHJlY3RDb250YWluZXJbJ2xlZnQnXTtcbiAgY29uc3Qgd2lkdGhDb250YWluZXIgPSByZWN0Q29udGFpbmVyWyd3aWR0aCddO1xuICBjb25zdCBoZWlnaHRDb250YWluZXIgPSByZWN0Q29udGFpbmVyWydoZWlnaHQnXTtcbiAgY29uc3Qgc2Nyb2xsVG9wQ29udGFpbmVyID0gY29udGFpbmVyLnNjcm9sbFRvcDtcbiAgY29uc3Qgc2Nyb2xsTGVmdENvbnRhaW5lciA9IGNvbnRhaW5lci5zY3JvbGxMZWZ0O1xuICBjb25zdCBsaW1pdFRvcCA9IHRvcENvbnRhaW5lciArIHNjcm9sbFRvcENvbnRhaW5lciArIGhlaWdodENvbnRhaW5lcjtcbiAgY29uc3QgbGltaXRMZWZ0ID0gbGVmdENvbnRhaW5lciArIHNjcm9sbExlZnRDb250YWluZXIgKyB3aWR0aENvbnRhaW5lcjtcblxuICBjb25zdCBtYXhUb3BJdGVtID0gdG9wICsgKG1heFRvcExlZnQ/LnRvcCB8fCAwKTtcbiAgY29uc3QgbWF4TGVmdEl0ZW0gPSBsZWZ0ICsgKG1heFRvcExlZnQ/LmxlZnQgfHwgMCk7XG5cbiAgaWYgKHRvcENvbnRhaW5lciA8PSBtYXhUb3BJdGVtICYmIG1heFRvcEl0ZW0gPD0gbGltaXRUb3AgJiYgbGVmdENvbnRhaW5lciA8PSBtYXhMZWZ0SXRlbSAmJiBtYXhMZWZ0SXRlbSA8PSBsaW1pdExlZnQpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn07XG5cbmV4cG9ydCBjb25zdCBjaGVja01vdXNlT3ZlckluQ29udGFpbmVyID0gKG1vdXNlUG9zaXRpb246IHsgY2xpZW50WDogbnVtYmVyOyBjbGllbnRZOiBudW1iZXIgfSwgZWxlbWVudD86IEhUTUxFbGVtZW50LCByZWN0PzogRE9NUmVjdCk6IGJvb2xlYW4gPT4ge1xuICBpZiAoIWVsZW1lbnQgJiYgIXJlY3QpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgY29uc3QgcmVjdEVsZW1lbnQgPSByZWN0IHx8IGVsZW1lbnQ/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpIHx8IHt9IGFzIERPTVJlY3Q7XG4gIGNvbnN0IHsgbGVmdCwgdG9wLCB3aWR0aCwgaGVpZ2h0IH0gPSByZWN0RWxlbWVudDtcbiAgY29uc3QgbGltaXRMZWZ0ID0gbGVmdCArIHdpZHRoO1xuICBjb25zdCBsaW1pdFRvcCA9IHRvcCArIGhlaWdodDtcbiAgY29uc3QgeyBjbGllbnRYLCBjbGllbnRZIH0gPSBtb3VzZVBvc2l0aW9uO1xuICBpZiAobGVmdCA8PSBjbGllbnRYICYmIGNsaWVudFggPD0gbGltaXRMZWZ0ICYmIHRvcCA8PSBjbGllbnRZICYmIGNsaWVudFkgPD0gbGltaXRUb3ApIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXREcmFnRXZlbnRCeUVsZW1lbnQgPSAoY29uZmlnOiB7XG4gIGVsZW1lbnRNb3VzZURvd246IEhUTUxFbGVtZW50O1xuICBmdW5jdGlvbk1vdXNlRG93bj86IChldmVudDogTW91c2VFdmVudCkgPT4gdm9pZDtcbiAgaXNTdGFydFdpdGhNb3VzZURvbndFdmVudD86IGJvb2xlYW47XG4gIGVsZW1lbnRNb3VzZU1vdmU/OiBIVE1MRWxlbWVudDtcbiAgZnVuY3Rpb25Nb3VzZU1vdmU/OiAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHZvaWQ7XG4gIGVsZW1lbnRNb3VzZVVwPzogSFRNTEVsZW1lbnQsXG4gIGZ1bmN0aW9uTW91c2VVcD86IChldmVudDogTW91c2VFdmVudCkgPT4gdm9pZDtcbiAgb25EZXN0cm95OiBTdWJqZWN0PGFueT47XG59KSA9PiB7XG4gIGxldCB0aW1lcjogbnVtYmVyO1xuICBjb25zdCBhZGRDbGFzcyA9ICgpID0+IHtcbiAgICB0aW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCchc2VsZWN0LW5vbmUnKTtcbiAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgnIWN1cnNvci1tb3ZlJyk7XG4gICAgfSwgMjUwKTtcblxuICB9O1xuICBjb25zdCByZW1vdmVDbGFzcyA9ICgpID0+IHtcbiAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoJyFzZWxlY3Qtbm9uZScpO1xuICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnIWN1cnNvci1tb3ZlJyk7XG4gICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcbiAgfVxuICBmcm9tRXZlbnQoY29uZmlnLmVsZW1lbnRNb3VzZURvd24sICdtb3VzZWxlYXZlJykucGlwZSh0YXAoKCkgPT4gZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdjdXJzb3ItcG9pbnRlcicpKSwgdGFrZVVudGlsKGNvbmZpZy5vbkRlc3Ryb3kpKS5zdWJzY3JpYmUoKTtcbiAgZnJvbUV2ZW50KGNvbmZpZy5lbGVtZW50TW91c2VEb3duLCAnbW91c2VlbnRlcicpLnBpcGUodGFwKCgpID0+IGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgnY3Vyc29yLXBvaW50ZXInKSksIHRha2VVbnRpbChjb25maWcub25EZXN0cm95KSkuc3Vic2NyaWJlKCk7XG5cbiAgY29uc3QgbW91c2VEb3duID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGNvbmZpZy5lbGVtZW50TW91c2VEb3duLCAnbW91c2Vkb3duJykucGlwZShcbiAgICB0YXAoKGUpID0+IHtcbiAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBhZGRDbGFzcygpO1xuICAgICAgY29uZmlnLmZ1bmN0aW9uTW91c2VEb3duPy4oZSk7XG4gICAgfSlcbiAgKTtcbiAgY29uc3QgbW91c2V1cCA9IGZyb21FdmVudDxNb3VzZUV2ZW50Pihjb25maWcuZWxlbWVudE1vdXNlVXAgfHwgZG9jdW1lbnQsICdtb3VzZXVwJykucGlwZShcbiAgICB0YXAoKGUpID0+IHtcbiAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICByZW1vdmVDbGFzcygpO1xuICAgICAgY29uZmlnLmZ1bmN0aW9uTW91c2VVcD8uKGUpO1xuICAgIH0pXG4gICk7XG5cbiAgY29uc3QgbW91c2Vtb3ZlID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGNvbmZpZy5lbGVtZW50TW91c2VNb3ZlIHx8IGRvY3VtZW50LCAnbW91c2Vtb3ZlJykucGlwZShcbiAgICB0YXAoKGUpID0+IHtcbiAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBjb25maWcuZnVuY3Rpb25Nb3VzZU1vdmU/LihlKTtcbiAgICB9KSxcbiAgICB0YWtlVW50aWwobW91c2V1cClcbiAgKTtcblxuICByZXR1cm4gbW91c2VEb3duLnBpcGUoXG4gICAgbWVyZ2VNYXAoKGU6IE1vdXNlRXZlbnQpID0+IGNvbmZpZy5pc1N0YXJ0V2l0aE1vdXNlRG9ud0V2ZW50ID8gbW91c2Vtb3ZlLnBpcGUoc3RhcnRXaXRoKGUpKSA6IG1vdXNlbW92ZSksXG4gICAgdGFrZVVudGlsKGNvbmZpZy5vbkRlc3Ryb3kpLFxuICAgIGZpbmFsaXplKHJlbW92ZUNsYXNzKVxuICApO1xufSJdfQ==
|
|
124
|
+
export const getHTMLFromQuill = (delta) => {
|
|
125
|
+
delta.ops.forEach((op) => {
|
|
126
|
+
if (op.insert) {
|
|
127
|
+
if (typeof op.insert === 'string') {
|
|
128
|
+
op.insert = op.insert.replace(/\n/g, "<br>");
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
quill.setContents(delta);
|
|
133
|
+
const htmlText = quill.root.firstElementChild?.innerHTML;
|
|
134
|
+
return decodeEscapeHtml(htmlText || '');
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy11aS91dGlscy9zcmMvZG9tLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQVcsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6RixPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFFMUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE1BQU0sTUFBTSxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7QUFDL0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBRXZELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLEdBQUcsRUFBRTtJQUNyQyxNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDO0lBQ3RDLElBQUksR0FBRyxDQUFDO0lBQ1IsSUFBSSxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyw4REFBOEQsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUVsRyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM5QixHQUFHLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUU5QyxPQUFPLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDMUIsR0FBRyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUM3QyxJQUFJLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNqQixPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUVILENBQUM7SUFDRCxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUYsSUFBSSxDQUFDLEdBQUcsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUN4RCxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUN6QixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLE9BQWUsRUFBWSxFQUFFO0lBRS9ELE9BQU8sTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFDdEQsQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxJQUF5QixFQUF1QixFQUFFO0lBQ3pGLE9BQU87UUFDTCxHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNoQixJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNsQixLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNwQixNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN0QixNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQztLQUN2QixDQUFDO0FBQ0osQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxFQUFlLEVBQUUsTUFBOEIsRUFBRSxPQUFrQixFQUFRLEVBQUU7SUFDNUcsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3ZGLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLE1BQWMsTUFBTSxFQUFxQyxFQUFFO0lBQ3JGLE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUN0QyxJQUFJLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDbkQsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxVQUFVLElBQUksR0FBRyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUN6RCxDQUFDLEdBQUcsR0FBRyxDQUFDLFdBQVcsSUFBSSxHQUFHLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUM7SUFFL0QsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO0FBQ2pDLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsT0FBK0MsRUFBRSxRQUFnQixFQUFRLEVBQUU7SUFDMUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzNDLE9BQU87SUFDVCxDQUFDO0lBQ0QsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2hCLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDaEQsQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxTQUFzQixFQUFFLE9BQW9CLEVBQUUsYUFBMkIsRUFBRSxVQUE0QyxFQUFXLEVBQUU7SUFDcEssSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzNCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELE1BQU0sYUFBYSxHQUFHLHdCQUF3QixDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUM7SUFFbEYsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUNsQixNQUFNLGlCQUFpQixHQUFHLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBRWhFLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUM7UUFDL0MsYUFBYSxDQUFDLEtBQUssQ0FBQyxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQztJQUUvQyxDQUFDO0lBRUQsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDcEQsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxXQUFXLENBQUM7SUFDbEMsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFDLE1BQU0sYUFBYSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QyxNQUFNLGNBQWMsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUMsTUFBTSxlQUFlLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2hELE1BQU0sa0JBQWtCLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQztJQUMvQyxNQUFNLG1CQUFtQixHQUFHLFNBQVMsQ0FBQyxVQUFVLENBQUM7SUFDakQsTUFBTSxRQUFRLEdBQUcsWUFBWSxHQUFHLGtCQUFrQixHQUFHLGVBQWUsQ0FBQztJQUNyRSxNQUFNLFNBQVMsR0FBRyxhQUFhLEdBQUcsbUJBQW1CLEdBQUcsY0FBYyxDQUFDO0lBRXZFLE1BQU0sVUFBVSxHQUFHLEdBQUcsR0FBRyxDQUFDLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDaEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxHQUFHLENBQUMsVUFBVSxFQUFFLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQztJQUVuRCxJQUFJLFlBQVksSUFBSSxVQUFVLElBQUksVUFBVSxJQUFJLFFBQVEsSUFBSSxhQUFhLElBQUksV0FBVyxJQUFJLFdBQVcsSUFBSSxTQUFTLEVBQUUsQ0FBQztRQUNySCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLENBQUMsYUFBbUQsRUFBRSxPQUFxQixFQUFFLElBQWMsRUFBVyxFQUFFO0lBQy9JLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxNQUFNLFdBQVcsR0FBRyxJQUFJLElBQUksT0FBTyxFQUFFLHFCQUFxQixFQUFFLElBQUksRUFBYSxDQUFDO0lBQzlFLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxXQUFXLENBQUM7SUFDakQsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUMvQixNQUFNLFFBQVEsR0FBRyxHQUFHLEdBQUcsTUFBTSxDQUFDO0lBQzlCLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsYUFBYSxDQUFDO0lBQzNDLElBQUksSUFBSSxJQUFJLE9BQU8sSUFBSSxPQUFPLElBQUksU0FBUyxJQUFJLEdBQUcsSUFBSSxPQUFPLElBQUksT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQ3JGLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxNQVNyQyxFQUFFLEVBQUU7SUFDSCxJQUFJLEtBQWEsQ0FBQztJQUNsQixNQUFNLFFBQVEsR0FBRyxHQUFHLEVBQUU7UUFDcEIsS0FBSyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDdEIsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzVDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM5QyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFFVixDQUFDLENBQUM7SUFDRixNQUFNLFdBQVcsR0FBRyxHQUFHLEVBQUU7UUFDdkIsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9DLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMvQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEIsQ0FBQyxDQUFBO0lBQ0QsU0FBUyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzVKLFNBQVMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUV6SixNQUFNLFNBQVMsR0FBRyxTQUFTLENBQWEsTUFBTSxDQUFDLGdCQUFnQixFQUFFLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDaEYsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDUixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDcEIsUUFBUSxFQUFFLENBQUM7UUFDWCxNQUFNLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0YsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFhLE1BQU0sQ0FBQyxjQUFjLElBQUksUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FDdEYsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDUixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDcEIsV0FBVyxFQUFFLENBQUM7UUFDZCxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUVGLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBYSxNQUFNLENBQUMsZ0JBQWdCLElBQUksUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDNUYsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDUixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDcEIsTUFBTSxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEMsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUNuQixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUNuQixRQUFRLENBQUMsQ0FBQyxDQUFhLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQ3hHLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQzNCLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FDdEIsQ0FBQztBQUNKLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsS0FBWSxFQUFVLEVBQUU7SUFDdkQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtRQUN2QixJQUFJLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLElBQUksT0FBTyxFQUFFLENBQUMsTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUNsQyxFQUFFLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztZQUMvQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0gsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFNBQVMsQ0FBQztJQUN6RCxPQUFPLGdCQUFnQixDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztBQUMxQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBSZW5kZXJlcjIgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSUJvdW5kaW5nQ2xpZW50UmVjdCB9IGZyb20gXCJAbGlicy11aS9pbnRlcmZhY2VzLXR5cGVzXCI7XG5pbXBvcnQgeyBmaW5hbGl6ZSwgZnJvbUV2ZW50LCBtZXJnZU1hcCwgc3RhcnRXaXRoLCBTdWJqZWN0LCB0YWtlVW50aWwsIHRhcCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgUXVpbGwgZnJvbSBcInF1aWxsXCI7XG5pbXBvcnQgRGVsdGEgZnJvbSBcInF1aWxsLWRlbHRhXCI7XG5pbXBvcnQgeyBkZWNvZGVFc2NhcGVIdG1sIH0gZnJvbSBcIi4vZXNjYXBlLWh0bWxcIjtcblxuY29uc3QgcGFyc2VyID0gbmV3IERPTVBhcnNlcigpO1xuY29uc3QgcXVpbGwgPSBuZXcgUXVpbGwoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JykpO1xuXG5leHBvcnQgY29uc3QgZ2V0UGxhdEZyb21Ccm93c2VyID0gKCkgPT4ge1xuICBjb25zdCB1c2VyQWdlbnQgPSBuYXZpZ2F0b3IudXNlckFnZW50O1xuICBsZXQgdGVtO1xuICBsZXQgbWF0Y2ggPSB1c2VyQWdlbnQubWF0Y2goLyhvcGVyYXxjaHJvbWV8c2FmYXJpfGZpcmVmb3h8bXNpZXx0cmlkZW50KD89XFwvKSlcXC8/XFxzKihcXGQrKS9pKSB8fCBbXTtcblxuICBpZiAoL3RyaWRlbnQvaS50ZXN0KG1hdGNoWzFdKSkge1xuICAgIHRlbSA9IC9cXGJydlsgOl0rKFxcZCspL2cuZXhlYyh1c2VyQWdlbnQpIHx8IFtdO1xuXG4gICAgcmV0dXJuICdJRSAnICsgKHRlbVsxXSB8fCAnJyk7XG4gIH1cbiAgaWYgKG1hdGNoWzFdID09PSAnQ2hyb21lJykge1xuICAgIHRlbSA9IHVzZXJBZ2VudC5tYXRjaCgvXFxiKE9QUnxFZGdlKVxcLyhcXGQrKS8pO1xuICAgIGlmICh0ZW0gIT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0ZW0uc2xpY2UoMSkuam9pbignICcpLnJlcGxhY2UoJ09QUicsICdPcGVyYScpO1xuICAgIH1cblxuICB9XG4gIG1hdGNoID0gbWF0Y2hbMl0gPyBbbWF0Y2hbMV0sIG1hdGNoWzJdXSA6IFtuYXZpZ2F0b3IuYXBwTmFtZSwgbmF2aWdhdG9yLmFwcFZlcnNpb24sICctPyddO1xuICBpZiAoKHRlbSA9IHVzZXJBZ2VudC5tYXRjaCgvdmVyc2lvblxcLyhcXGQrKS9pKSkgIT09IG51bGwpIHtcbiAgICBtYXRjaC5zcGxpY2UoMSwgMSwgdGVtWzFdKTtcbiAgfVxuXG4gIHJldHVybiBtYXRjaC5qb2luKCcgJyk7XG59XG5cbmV4cG9ydCBjb25zdCBnZXREb2N1bWVudEJ5U3RyaW5nID0gKGh0bWxTdHI6IHN0cmluZyk6IERvY3VtZW50ID0+IHtcblxuICByZXR1cm4gcGFyc2VyLnBhcnNlRnJvbVN0cmluZyhodG1sU3RyLCAndGV4dC9odG1sJyk7XG59XG5cbmV4cG9ydCBjb25zdCBjbG9uZUlCb3VuZGluZ0NsaWVudFJlY3QgPSAocmVjdDogSUJvdW5kaW5nQ2xpZW50UmVjdCk6IElCb3VuZGluZ0NsaWVudFJlY3QgPT4ge1xuICByZXR1cm4ge1xuICAgIHRvcDogcmVjdFsndG9wJ10sXG4gICAgbGVmdDogcmVjdFsnbGVmdCddLFxuICAgIHdpZHRoOiByZWN0Wyd3aWR0aCddLFxuICAgIGhlaWdodDogcmVjdFsnaGVpZ2h0J10sXG4gICAgYm90dG9tOiByZWN0Wydib3R0b20nXVxuICB9O1xufVxuXG5leHBvcnQgY29uc3Qgc2V0U3R5bGVzRWxlbWVudCA9IChlbDogSFRNTEVsZW1lbnQsIHN0eWxlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiwgcmVuZGVyMjogUmVuZGVyZXIyKTogdm9pZCA9PiB7XG4gIE9iamVjdC5rZXlzKHN0eWxlcykuZm9yRWFjaCgoa2V5OiBzdHJpbmcpID0+IHJlbmRlcjIuc2V0U3R5bGUoZWwsIGtleSwgc3R5bGVzW2tleV0pKTtcbn1cblxuZXhwb3J0IGNvbnN0IGdldFZpZXdwb3J0ID0gKHdpbjogV2luZG93ID0gd2luZG93KTogeyB3aWR0aDogbnVtYmVyOyBoZWlnaHQ6IG51bWJlciB9ID0+IHtcbiAgY29uc3QgZG9jID0gd2luLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxcbiAgICBib2R5ID0gd2luLmRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF0sXG4gICAgdyA9IHdpbi5pbm5lcldpZHRoIHx8IGRvYy5jbGllbnRXaWR0aCB8fCBib2R5LmNsaWVudFdpZHRoLFxuICAgIGggPSB3aW4uaW5uZXJIZWlnaHQgfHwgZG9jLmNsaWVudEhlaWdodCB8fCBib2R5LmNsaWVudEhlaWdodDtcblxuICByZXR1cm4geyB3aWR0aDogdywgaGVpZ2h0OiBoIH07XG59XG5cbmV4cG9ydCBjb25zdCBzZXRDYXJldFBvc2l0aW9uID0gKGVsZW1lbnQ6IEhUTUxUZXh0QXJlYUVsZW1lbnQgfCBIVE1MSW5wdXRFbGVtZW50LCBwb3NpdGlvbjogbnVtYmVyKTogdm9pZCA9PiB7XG4gIGlmICghZWxlbWVudCB8fCAhZWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZSkge1xuICAgIHJldHVybjtcbiAgfVxuICBlbGVtZW50LmZvY3VzKCk7XG4gIGVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UocG9zaXRpb24sIHBvc2l0aW9uKTtcbn1cblxuZXhwb3J0IGNvbnN0IGNoZWNrVmlld0luU2NyZWVuID0gKGNvbnRhaW5lcjogSFRNTEVsZW1lbnQsIGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBlbGVtZW50U2Nyb2xsPzogSFRNTEVsZW1lbnQsIG1heFRvcExlZnQ/OiB7IHRvcD86IG51bWJlciwgbGVmdD86IG51bWJlciB9KTogYm9vbGVhbiA9PiB7XG4gIGlmICghY29udGFpbmVyIHx8ICFlbGVtZW50KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgcmVjdENvbnRhaW5lciA9IGNsb25lSUJvdW5kaW5nQ2xpZW50UmVjdChjb250YWluZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkpO1xuXG4gIGlmIChlbGVtZW50U2Nyb2xsKSB7XG4gICAgY29uc3QgcmVjdEVsZW1lbnRTY3JvbGwgPSBlbGVtZW50U2Nyb2xsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgcmVjdENvbnRhaW5lclsnbGVmdCddID0gcmVjdEVsZW1lbnRTY3JvbGwubGVmdDtcbiAgICByZWN0Q29udGFpbmVyWyd0b3AnXSA9IHJlY3RFbGVtZW50U2Nyb2xsLnRvcDtcblxuICB9XG5cbiAgY29uc3QgcmVjdEVsZW1lbnQgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICBjb25zdCB7IGxlZnQsIHRvcCB9ID0gcmVjdEVsZW1lbnQ7XG4gIGNvbnN0IHRvcENvbnRhaW5lciA9IHJlY3RDb250YWluZXJbJ3RvcCddO1xuICBjb25zdCBsZWZ0Q29udGFpbmVyID0gcmVjdENvbnRhaW5lclsnbGVmdCddO1xuICBjb25zdCB3aWR0aENvbnRhaW5lciA9IHJlY3RDb250YWluZXJbJ3dpZHRoJ107XG4gIGNvbnN0IGhlaWdodENvbnRhaW5lciA9IHJlY3RDb250YWluZXJbJ2hlaWdodCddO1xuICBjb25zdCBzY3JvbGxUb3BDb250YWluZXIgPSBjb250YWluZXIuc2Nyb2xsVG9wO1xuICBjb25zdCBzY3JvbGxMZWZ0Q29udGFpbmVyID0gY29udGFpbmVyLnNjcm9sbExlZnQ7XG4gIGNvbnN0IGxpbWl0VG9wID0gdG9wQ29udGFpbmVyICsgc2Nyb2xsVG9wQ29udGFpbmVyICsgaGVpZ2h0Q29udGFpbmVyO1xuICBjb25zdCBsaW1pdExlZnQgPSBsZWZ0Q29udGFpbmVyICsgc2Nyb2xsTGVmdENvbnRhaW5lciArIHdpZHRoQ29udGFpbmVyO1xuXG4gIGNvbnN0IG1heFRvcEl0ZW0gPSB0b3AgKyAobWF4VG9wTGVmdD8udG9wIHx8IDApO1xuICBjb25zdCBtYXhMZWZ0SXRlbSA9IGxlZnQgKyAobWF4VG9wTGVmdD8ubGVmdCB8fCAwKTtcblxuICBpZiAodG9wQ29udGFpbmVyIDw9IG1heFRvcEl0ZW0gJiYgbWF4VG9wSXRlbSA8PSBsaW1pdFRvcCAmJiBsZWZ0Q29udGFpbmVyIDw9IG1heExlZnRJdGVtICYmIG1heExlZnRJdGVtIDw9IGxpbWl0TGVmdCkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufTtcblxuZXhwb3J0IGNvbnN0IGNoZWNrTW91c2VPdmVySW5Db250YWluZXIgPSAobW91c2VQb3NpdGlvbjogeyBjbGllbnRYOiBudW1iZXI7IGNsaWVudFk6IG51bWJlciB9LCBlbGVtZW50PzogSFRNTEVsZW1lbnQsIHJlY3Q/OiBET01SZWN0KTogYm9vbGVhbiA9PiB7XG4gIGlmICghZWxlbWVudCAmJiAhcmVjdCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICBjb25zdCByZWN0RWxlbWVudCA9IHJlY3QgfHwgZWxlbWVudD8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkgfHwge30gYXMgRE9NUmVjdDtcbiAgY29uc3QgeyBsZWZ0LCB0b3AsIHdpZHRoLCBoZWlnaHQgfSA9IHJlY3RFbGVtZW50O1xuICBjb25zdCBsaW1pdExlZnQgPSBsZWZ0ICsgd2lkdGg7XG4gIGNvbnN0IGxpbWl0VG9wID0gdG9wICsgaGVpZ2h0O1xuICBjb25zdCB7IGNsaWVudFgsIGNsaWVudFkgfSA9IG1vdXNlUG9zaXRpb247XG4gIGlmIChsZWZ0IDw9IGNsaWVudFggJiYgY2xpZW50WCA8PSBsaW1pdExlZnQgJiYgdG9wIDw9IGNsaWVudFkgJiYgY2xpZW50WSA8PSBsaW1pdFRvcCkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldERyYWdFdmVudEJ5RWxlbWVudCA9IChjb25maWc6IHtcbiAgZWxlbWVudE1vdXNlRG93bjogSFRNTEVsZW1lbnQ7XG4gIGZ1bmN0aW9uTW91c2VEb3duPzogKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB2b2lkO1xuICBpc1N0YXJ0V2l0aE1vdXNlRG9ud0V2ZW50PzogYm9vbGVhbjtcbiAgZWxlbWVudE1vdXNlTW92ZT86IEhUTUxFbGVtZW50O1xuICBmdW5jdGlvbk1vdXNlTW92ZT86IChldmVudDogTW91c2VFdmVudCkgPT4gdm9pZDtcbiAgZWxlbWVudE1vdXNlVXA/OiBIVE1MRWxlbWVudCxcbiAgZnVuY3Rpb25Nb3VzZVVwPzogKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB2b2lkO1xuICBvbkRlc3Ryb3k6IFN1YmplY3Q8YW55Pjtcbn0pID0+IHtcbiAgbGV0IHRpbWVyOiBudW1iZXI7XG4gIGNvbnN0IGFkZENsYXNzID0gKCkgPT4ge1xuICAgIHRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJyFzZWxlY3Qtbm9uZScpO1xuICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCchY3Vyc29yLW1vdmUnKTtcbiAgICB9LCAyNTApO1xuXG4gIH07XG4gIGNvbnN0IHJlbW92ZUNsYXNzID0gKCkgPT4ge1xuICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnIXNlbGVjdC1ub25lJyk7XG4gICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCchY3Vyc29yLW1vdmUnKTtcbiAgICBjbGVhclRpbWVvdXQodGltZXIpO1xuICB9XG4gIGZyb21FdmVudChjb25maWcuZWxlbWVudE1vdXNlRG93biwgJ21vdXNlbGVhdmUnKS5waXBlKHRhcCgoKSA9PiBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoJ2N1cnNvci1wb2ludGVyJykpLCB0YWtlVW50aWwoY29uZmlnLm9uRGVzdHJveSkpLnN1YnNjcmliZSgpO1xuICBmcm9tRXZlbnQoY29uZmlnLmVsZW1lbnRNb3VzZURvd24sICdtb3VzZWVudGVyJykucGlwZSh0YXAoKCkgPT4gZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCdjdXJzb3ItcG9pbnRlcicpKSwgdGFrZVVudGlsKGNvbmZpZy5vbkRlc3Ryb3kpKS5zdWJzY3JpYmUoKTtcblxuICBjb25zdCBtb3VzZURvd24gPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4oY29uZmlnLmVsZW1lbnRNb3VzZURvd24sICdtb3VzZWRvd24nKS5waXBlKFxuICAgIHRhcCgoZSkgPT4ge1xuICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIGFkZENsYXNzKCk7XG4gICAgICBjb25maWcuZnVuY3Rpb25Nb3VzZURvd24/LihlKTtcbiAgICB9KVxuICApO1xuICBjb25zdCBtb3VzZXVwID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGNvbmZpZy5lbGVtZW50TW91c2VVcCB8fCBkb2N1bWVudCwgJ21vdXNldXAnKS5waXBlKFxuICAgIHRhcCgoZSkgPT4ge1xuICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIHJlbW92ZUNsYXNzKCk7XG4gICAgICBjb25maWcuZnVuY3Rpb25Nb3VzZVVwPy4oZSk7XG4gICAgfSlcbiAgKTtcblxuICBjb25zdCBtb3VzZW1vdmUgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4oY29uZmlnLmVsZW1lbnRNb3VzZU1vdmUgfHwgZG9jdW1lbnQsICdtb3VzZW1vdmUnKS5waXBlKFxuICAgIHRhcCgoZSkgPT4ge1xuICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIGNvbmZpZy5mdW5jdGlvbk1vdXNlTW92ZT8uKGUpO1xuICAgIH0pLFxuICAgIHRha2VVbnRpbChtb3VzZXVwKVxuICApO1xuXG4gIHJldHVybiBtb3VzZURvd24ucGlwZShcbiAgICBtZXJnZU1hcCgoZTogTW91c2VFdmVudCkgPT4gY29uZmlnLmlzU3RhcnRXaXRoTW91c2VEb253RXZlbnQgPyBtb3VzZW1vdmUucGlwZShzdGFydFdpdGgoZSkpIDogbW91c2Vtb3ZlKSxcbiAgICB0YWtlVW50aWwoY29uZmlnLm9uRGVzdHJveSksXG4gICAgZmluYWxpemUocmVtb3ZlQ2xhc3MpXG4gICk7XG59XG5cbmV4cG9ydCBjb25zdCBnZXRIVE1MRnJvbVF1aWxsID0gKGRlbHRhOiBEZWx0YSk6IHN0cmluZyA9PiB7XG4gIGRlbHRhLm9wcy5mb3JFYWNoKChvcCkgPT4ge1xuICAgIGlmIChvcC5pbnNlcnQpIHtcbiAgICAgIGlmICh0eXBlb2Ygb3AuaW5zZXJ0ID09PSAnc3RyaW5nJykge1xuICAgICAgICBvcC5pbnNlcnQgPSBvcC5pbnNlcnQucmVwbGFjZSgvXFxuL2csIFwiPGJyPlwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuICBxdWlsbC5zZXRDb250ZW50cyhkZWx0YSk7XG4gIGNvbnN0IGh0bWxUZXh0ID0gcXVpbGwucm9vdC5maXJzdEVsZW1lbnRDaGlsZD8uaW5uZXJIVE1MO1xuICByZXR1cm4gZGVjb2RlRXNjYXBlSHRtbChodG1sVGV4dCB8fCAnJyk7XG59XG4iXX0=
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { convertBase64ToBlob } from "./base64";
|
|
2
|
+
export const downloadFileByUrlUseXmlRequest = (fileUrl, filename) => {
|
|
3
|
+
const xmlRequest = new XMLHttpRequest();
|
|
4
|
+
xmlRequest.open('GET', fileUrl, true);
|
|
5
|
+
xmlRequest.responseType = 'blob';
|
|
6
|
+
xmlRequest.onload = () => {
|
|
7
|
+
const url = window.URL.createObjectURL(xmlRequest.response);
|
|
8
|
+
downloadFileByUrl(url, filename);
|
|
9
|
+
};
|
|
10
|
+
xmlRequest.send();
|
|
11
|
+
};
|
|
12
|
+
export const downloadFileByUrl = async (fileUrl, filename, onlyOpen) => {
|
|
13
|
+
const downloadFileElement = document.createElement('a');
|
|
14
|
+
if (!onlyOpen) {
|
|
15
|
+
const response = await fetch(fileUrl);
|
|
16
|
+
if (response.ok) {
|
|
17
|
+
const blob = await response.blob();
|
|
18
|
+
fileUrl = URL.createObjectURL(blob);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
downloadFileElement.href = fileUrl;
|
|
22
|
+
downloadFileElement.download = filename;
|
|
23
|
+
downloadFileElement.target = '_blank';
|
|
24
|
+
downloadFileElement.click();
|
|
25
|
+
downloadFileElement.remove();
|
|
26
|
+
};
|
|
27
|
+
export const downloadImageFromELement = (imageElement, typeFileDownload, nameFile) => {
|
|
28
|
+
const parentElement = imageElement?.src;
|
|
29
|
+
const blobData = convertBase64ToBlob(parentElement);
|
|
30
|
+
const blob = new Blob([blobData], { type: typeFileDownload || "image/png" });
|
|
31
|
+
const url = window.URL.createObjectURL(blob);
|
|
32
|
+
const link = document.createElement('a');
|
|
33
|
+
link.href = url;
|
|
34
|
+
link.download = nameFile || 'barcode';
|
|
35
|
+
link.click();
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzLXVpL3V0aWxzL3NyYy9kb3dubG9hZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsQ0FBQyxPQUFlLEVBQUUsUUFBZ0IsRUFBRSxFQUFFO0lBQ2xGLE1BQU0sVUFBVSxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7SUFFeEMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RDLFVBQVUsQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDO0lBQ2pDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO1FBQ3ZCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU1RCxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDbkMsQ0FBQyxDQUFDO0lBQ0YsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0FBQ3BCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEtBQUssRUFBRSxPQUFlLEVBQUUsUUFBZ0IsRUFBRSxRQUFrQixFQUFFLEVBQUU7SUFDL0YsTUFBTSxtQkFBbUIsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRXhELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNkLE1BQU0sUUFBUSxHQUFHLE1BQU0sS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXRDLElBQUksUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ2hCLE1BQU0sSUFBSSxHQUFHLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1lBRW5DLE9BQU8sR0FBRyxHQUFHLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBQ0QsbUJBQW1CLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztJQUNuQyxtQkFBbUIsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQ3hDLG1CQUFtQixDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUM7SUFDdEMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDNUIsbUJBQW1CLENBQUMsTUFBTSxFQUFFLENBQUM7QUFDL0IsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxZQUE4QixFQUFFLGdCQUF5QixFQUFFLFFBQWlCLEVBQUUsRUFBRTtJQUN2SCxNQUFNLGFBQWEsR0FBRyxZQUFZLEVBQUUsR0FBRyxDQUFDO0lBQ3hDLE1BQU0sUUFBUSxHQUFHLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3BELE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLElBQUksV0FBVyxFQUFFLENBQUMsQ0FBQztJQUM3RSxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QyxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRXpDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO0lBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxJQUFJLFNBQVMsQ0FBQztJQUN0QyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDZixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb252ZXJ0QmFzZTY0VG9CbG9iIH0gZnJvbSBcIi4vYmFzZTY0XCI7XG5cbmV4cG9ydCBjb25zdCBkb3dubG9hZEZpbGVCeVVybFVzZVhtbFJlcXVlc3QgPSAoZmlsZVVybDogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHhtbFJlcXVlc3QgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcblxuICB4bWxSZXF1ZXN0Lm9wZW4oJ0dFVCcsIGZpbGVVcmwsIHRydWUpO1xuICB4bWxSZXF1ZXN0LnJlc3BvbnNlVHlwZSA9ICdibG9iJztcbiAgeG1sUmVxdWVzdC5vbmxvYWQgPSAoKSA9PiB7XG4gICAgY29uc3QgdXJsID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwoeG1sUmVxdWVzdC5yZXNwb25zZSk7XG5cbiAgICBkb3dubG9hZEZpbGVCeVVybCh1cmwsIGZpbGVuYW1lKTtcbiAgfTtcbiAgeG1sUmVxdWVzdC5zZW5kKCk7XG59O1xuXG5leHBvcnQgY29uc3QgZG93bmxvYWRGaWxlQnlVcmwgPSBhc3luYyAoZmlsZVVybDogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nLCBvbmx5T3Blbj86IGJvb2xlYW4pID0+IHtcbiAgY29uc3QgZG93bmxvYWRGaWxlRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcblxuICBpZiAoIW9ubHlPcGVuKSB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChmaWxlVXJsKTtcblxuICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgY29uc3QgYmxvYiA9IGF3YWl0IHJlc3BvbnNlLmJsb2IoKTtcblxuICAgICAgZmlsZVVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XG4gICAgfVxuICB9XG4gIGRvd25sb2FkRmlsZUVsZW1lbnQuaHJlZiA9IGZpbGVVcmw7XG4gIGRvd25sb2FkRmlsZUVsZW1lbnQuZG93bmxvYWQgPSBmaWxlbmFtZTtcbiAgZG93bmxvYWRGaWxlRWxlbWVudC50YXJnZXQgPSAnX2JsYW5rJztcbiAgZG93bmxvYWRGaWxlRWxlbWVudC5jbGljaygpO1xuICBkb3dubG9hZEZpbGVFbGVtZW50LnJlbW92ZSgpO1xufTtcblxuZXhwb3J0IGNvbnN0IGRvd25sb2FkSW1hZ2VGcm9tRUxlbWVudCA9IChpbWFnZUVsZW1lbnQ6IEhUTUxJbWFnZUVsZW1lbnQsIHR5cGVGaWxlRG93bmxvYWQ/OiBzdHJpbmcsIG5hbWVGaWxlPzogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHBhcmVudEVsZW1lbnQgPSBpbWFnZUVsZW1lbnQ/LnNyYztcbiAgY29uc3QgYmxvYkRhdGEgPSBjb252ZXJ0QmFzZTY0VG9CbG9iKHBhcmVudEVsZW1lbnQpO1xuICBjb25zdCBibG9iID0gbmV3IEJsb2IoW2Jsb2JEYXRhXSwgeyB0eXBlOiB0eXBlRmlsZURvd25sb2FkIHx8IFwiaW1hZ2UvcG5nXCIgfSk7XG4gIGNvbnN0IHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xuICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuXG4gIGxpbmsuaHJlZiA9IHVybDtcbiAgbGluay5kb3dubG9hZCA9IG5hbWVGaWxlIHx8ICdiYXJjb2RlJztcbiAgbGluay5jbGljaygpO1xufTsiXX0=
|
package/esm2022/escape-html.mjs
CHANGED
|
@@ -1,12 +1,26 @@
|
|
|
1
|
-
export const escapeHtml = (
|
|
2
|
-
if (!
|
|
3
|
-
return
|
|
1
|
+
export const escapeHtml = (str) => {
|
|
2
|
+
if (!str || typeof str !== 'string') {
|
|
3
|
+
return str;
|
|
4
4
|
}
|
|
5
|
-
return
|
|
5
|
+
return str
|
|
6
6
|
.replace(/&/g, "&")
|
|
7
7
|
.replace(/</g, "<")
|
|
8
8
|
.replace(/>/g, ">")
|
|
9
9
|
.replace(/"/g, """)
|
|
10
10
|
.replace(/'/g, "'");
|
|
11
11
|
};
|
|
12
|
-
|
|
12
|
+
export const decodeEscapeHtml = (str) => {
|
|
13
|
+
const htmlTag = document.createElement('textarea');
|
|
14
|
+
htmlTag.innerHTML = str;
|
|
15
|
+
while (str) {
|
|
16
|
+
if (str === htmlTag.value) {
|
|
17
|
+
str = htmlTag.value;
|
|
18
|
+
htmlTag.remove();
|
|
19
|
+
break;
|
|
20
|
+
}
|
|
21
|
+
str = htmlTag.value;
|
|
22
|
+
htmlTag.innerHTML = str;
|
|
23
|
+
}
|
|
24
|
+
return str;
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNjYXBlLWh0bWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzLXVpL3V0aWxzL3NyYy9lc2NhcGUtaHRtbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxHQUFXLEVBQVUsRUFBRTtJQUNoRCxJQUFJLENBQUMsR0FBRyxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ3BDLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELE9BQU8sR0FBRztTQUNQLE9BQU8sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDO1NBQ3RCLE9BQU8sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDO1NBQ3JCLE9BQU8sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDO1NBQ3JCLE9BQU8sQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDO1NBQ3ZCLE9BQU8sQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDN0IsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxHQUFXLEVBQVUsRUFBRTtJQUN0RCxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRW5ELE9BQU8sQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDO0lBQ3hCLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDWCxJQUFJLEdBQUcsS0FBSyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDMUIsR0FBRyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDcEIsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pCLE1BQU07UUFDUixDQUFDO1FBQ0QsR0FBRyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDcEIsT0FBTyxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7SUFDMUIsQ0FBQztJQUVELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVzY2FwZUh0bWwgPSAoc3RyOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBpZiAoIXN0ciB8fCB0eXBlb2Ygc3RyICE9PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBzdHI7XG4gIH1cblxuICByZXR1cm4gc3RyXG4gICAgLnJlcGxhY2UoLyYvZywgXCImYW1wO1wiKVxuICAgIC5yZXBsYWNlKC88L2csIFwiJmx0O1wiKVxuICAgIC5yZXBsYWNlKC8+L2csIFwiJmd0O1wiKVxuICAgIC5yZXBsYWNlKC9cIi9nLCBcIiZxdW90O1wiKVxuICAgIC5yZXBsYWNlKC8nL2csIFwiJiMwMzk7XCIpO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlY29kZUVzY2FwZUh0bWwgPSAoc3RyOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBjb25zdCBodG1sVGFnID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGV4dGFyZWEnKTtcblxuICBodG1sVGFnLmlubmVySFRNTCA9IHN0cjtcbiAgd2hpbGUgKHN0cikge1xuICAgIGlmIChzdHIgPT09IGh0bWxUYWcudmFsdWUpIHtcbiAgICAgIHN0ciA9IGh0bWxUYWcudmFsdWU7XG4gICAgICBodG1sVGFnLnJlbW92ZSgpO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHN0ciA9IGh0bWxUYWcudmFsdWU7XG4gICAgaHRtbFRhZy5pbm5lckhUTUwgPSBzdHI7XG4gIH1cblxuICByZXR1cm4gc3RyO1xufTsiXX0=
|
package/esm2022/file.mjs
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { get, set } from "./helpers";
|
|
2
|
+
import { uuid } from "./uuid";
|
|
2
3
|
export const isTypeImage = (file) => file.type.match(/image.*/) ? true : false;
|
|
3
4
|
export const isTypeVideo = (file) => file.type.match(/video.*/) ? true : false;
|
|
4
5
|
export const isTypeAudio = (file) => file.type.match(/audio.*/) ? true : false;
|
|
@@ -47,4 +48,9 @@ export const getLabelBySizeFile = (size, toFixed = 2) => {
|
|
|
47
48
|
}
|
|
48
49
|
return ` ${(size / (1024 * 1024)).toFixed(toFixed)} MB`;
|
|
49
50
|
};
|
|
50
|
-
|
|
51
|
+
export const convertBlobToFile = (blob, fileName) => {
|
|
52
|
+
const type = blob.type.split('/')[1];
|
|
53
|
+
const name = fileName ? `${fileName.split('.')[0]}.${type}` : `${uuid()}.${type}`;
|
|
54
|
+
return new File([blob], name, { type: blob.type, lastModified: Date.now() });
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMtdWkvdXRpbHMvc3JjL2ZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUU5QixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUFpQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDNUYsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQUMsSUFBaUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0FBQzVGLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLElBQWlCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztBQUM1RixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksWUFBWSxJQUFJLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFFMUksTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUss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SSxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUMvRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRmlsZSB9IGZyb20gXCJAbGlicy11aS9pbnRlcmZhY2VzLXR5cGVzXCI7XG5pbXBvcnQgeyBnZXQsIHNldCB9IGZyb20gXCIuL2hlbHBlcnNcIjtcbmltcG9ydCB7IHV1aWQgfSBmcm9tIFwiLi91dWlkXCI7XG5cbmV4cG9ydCBjb25zdCBpc1R5cGVJbWFnZSA9IChmaWxlOiBGaWxlIHwgQmxvYikgPT4gZmlsZS50eXBlLm1hdGNoKC9pbWFnZS4qLykgPyB0cnVlIDogZmFsc2U7XG5leHBvcnQgY29uc3QgaXNUeXBlVmlkZW8gPSAoZmlsZTogRmlsZSB8IEJsb2IpID0+IGZpbGUudHlwZS5tYXRjaCgvdmlkZW8uKi8pID8gdHJ1ZSA6IGZhbHNlO1xuZXhwb3J0IGNvbnN0IGlzVHlwZUF1ZGlvID0gKGZpbGU6IEZpbGUgfCBCbG9iKSA9PiBmaWxlLnR5cGUubWF0Y2goL2F1ZGlvLiovKSA/IHRydWUgOiBmYWxzZTtcbmV4cG9ydCBjb25zdCBpc1R5cGVGaWxlID0gKGZpbGU6IEZpbGUpID0+IGZpbGUgaW5zdGFuY2VvZiBGaWxlIHx8IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChmaWxlKSA9PT0gJ1tvYmplY3QgRmlsZV0nID8gdHJ1ZSA6IGZhbHNlO1xuXG5leHBvcnQgY29uc3QgRG9jdW1lbnRFeHRMaXN0ID0gWydkb2MnLCAnZG9jeCcsICd4bHMnLCAneGxzeCcsICdwcHQnLCAncHB0eCcsICdwZGYnLCAnanNvbicsICd4bWwnLCAnYXBwbGljYXRpb24vbXN3b3JkJyxcbiAgJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC53b3JkcHJvY2Vzc2luZ21sLmRvY3VtZW50JyxcbiAgJ2FwcGxpY2F0aW9uL3ZuZC5tcy1leGNlbCcsXG4gICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCcsXG4gICdhcHBsaWNhdGlvbi92bmQubXMtcG93ZXJwb2ludCcsXG4gICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQucHJlc2VudGF0aW9ubWwucHJlc2VudGF0aW9uJyxcbiAgJ2FwcGxpY2F0aW9uL3BkZicsXG4gICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgJ2FwcGxpY2F0aW9uL3htbCddO1xuZXhwb3J0IGNvbnN0IGlzSW5jbHVkZURvY3VtZW50RXh0TGlzdCA9IChleHQ6IHN0cmluZywgbGlzdEV4dDogQXJyYXk8c3RyaW5nPiA9IERvY3VtZW50RXh0TGlzdCkgPT4gbGlzdEV4dC5pbmNsdWRlcyhleHQpIHx8IGxpc3RFeHQuaW5jbHVkZXMoYGFwcGxpY2F0aW9uLyR7ZXh0fWApO1xuXG5leHBvcnQgY29uc3QgSW1hZ2VFeHRMaXN0ID0gWydnaWYnLCAnanBnJywgJ2pwZWcnLCAncG5nJywgJ2ltYWdlL2dpZicsICdpbWFnZS9qcGVnJywgJ2ltYWdlL2pwZWcnLCAnaW1hZ2UvcG5nJ107XG5leHBvcnQgY29uc3QgaXNJbmNsdWRlSW1hZ2VFeHRMaXN0ID0gKGV4dDogc3RyaW5nLCBsaXN0RXh0OiBBcnJheTxzdHJpbmc+ID0gSW1hZ2VFeHRMaXN0KSA9PiBsaXN0RXh0LmluY2x1ZGVzKGV4dCk7XG5cbmV4cG9ydCBjb25zdCBWaWRlb0V4dExpc3QgPSBbJ21wNCcsICdtb3YnLCAnbXBnJywgJ2F2aScsICd3bXYnLCAndmlkZW8vbXA0JywgJ3ZpZGVvL3F1aWNrdGltZScsICd2aWRlby9tcGVnJywgJ3ZpZGVvL3gtbXN2aWRlbycsICd2aWRlby94LW1zLXdtdiddO1xuZXhwb3J0IGNvbnN0IGlzSW5jbHVkZVZpZGVvRXh0TGlzdCA9IChleHQ6IHN0cmluZywgbGlzdEV4dDogQXJyYXk8c3RyaW5nPiA9IFZpZGVvRXh0TGlzdCkgPT4gbGlzdEV4dC5pbmNsdWRlcyhleHQpO1xuZXhwb3J0IGNvbnN0IEF1ZGlvRXh0TGlzdCA9IFsnbXAzJywgJ3dhdicsICdvZ2cnLCAnYWFjJywgJ200YScsICdmbGFjJywgJ3dtYScsICdhdWRpby9tcGVnJywgJ2F1ZGlvL3dhdicsICdhdWRpby9vZ2cnLCAnYXVkaW8vYWFjJywgJ2F1ZGlvL21wNCcsICdhdWRpby9mbGFjJywgJ2F1ZGlvL3gtbXMtd21hJ107XG5leHBvcnQgY29uc3QgaXNJbmNsdWRlQXVkaW9FeHRMaXN0ID0gKGV4dDogc3RyaW5nLCBsaXN0RXh0OiBBcnJheTxzdHJpbmc+ID0gQXVkaW9FeHRMaXN0KSA9PiBsaXN0RXh0LmluY2x1ZGVzKGV4dCk7XG5cbmV4cG9ydCBjb25zdCBnZXRGaWxlRXh0ZW5zaW9uID0gKGZpbGU6IElGaWxlIHwgRmlsZSkgPT4ge1xuICBpZiAoZmlsZSBpbnN0YW5jZW9mIEZpbGUpIHtcbiAgICByZXR1cm4gKGZpbGUudHlwZS5zcGxpdCgnLycpLnBvcCgpIHx8ICcnKS50b0xvd2VyQ2FzZSgpO1xuICB9XG4gIGlmIChmaWxlLm1pbWV0eXBlIHx8IGZpbGUuZmlsZT8udHlwZSkge1xuICAgIHJldHVybiBmaWxlLm1pbWV0eXBlIHx8IGZpbGUuZmlsZT8udHlwZTtcbiAgfVxuXG4gIGxldCBmaWxlTmFtZSA9IGZpbGUubmFtZSBhcyBzdHJpbmc7XG4gIGNvbnN0IHVybCA9IGdldChmaWxlLCAndXJsJykgfHwgZ2V0KGZpbGUsICdvcmlnaW5fdXJsJyk7XG4gIGlmICghZmlsZU5hbWUgJiYgIXVybCkge1xuICAgIHJldHVybjtcbiAgfVxuICBpZiAoIWZpbGVOYW1lICYmIHVybCkge1xuICAgIGZpbGVOYW1lID0gdXJsLnNwbGl0KCcvJykucG9wKCkgfHwgJyc7XG4gICAgc2V0KGZpbGUsICduYW1lJywgZmlsZU5hbWUpO1xuICB9XG4gIGNvbnN0IGRvdHMgPSBmaWxlTmFtZS5zcGxpdChcIi5cIik7XG5cbiAgaWYgKCFkb3RzKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcmV0dXJuIChkb3RzLnBvcCgpIHx8ICcnKS50b0xvd2VyQ2FzZSgpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldExhYmVsQnlTaXplRmlsZSA9IChzaXplOiBudW1iZXIsIHRvRml4ZWQgPSAyKSA9PiB7XG4gIGlmIChzaXplIDwgMTAyNCAqIDEwMjQpIHtcbiAgICByZXR1cm4gYCAkeyhzaXplIC8gMTAyNCkudG9GaXhlZCh0b0ZpeGVkKX0gS0JgO1xuICB9XG5cbiAgcmV0dXJuIGAgJHsoc2l6ZSAvICgxMDI0ICogMTAyNCkpLnRvRml4ZWQodG9GaXhlZCl9IE1CYDtcbn07XG5cblxuXG5leHBvcnQgY29uc3QgY29udmVydEJsb2JUb0ZpbGUgPSAoYmxvYjogQmxvYiwgZmlsZU5hbWU/OiBzdHJpbmcpOiBGaWxlID0+IHtcbiAgY29uc3QgdHlwZSA9IGJsb2IudHlwZS5zcGxpdCgnLycpWzFdO1xuICBjb25zdCBuYW1lID0gZmlsZU5hbWUgPyBgJHtmaWxlTmFtZS5zcGxpdCgnLicpWzBdfS4ke3R5cGV9YCA6IGAke3V1aWQoKX0uJHt0eXBlfWA7XG5cbiAgcmV0dXJuIG5ldyBGaWxlKFtibG9iXSwgbmFtZSwgeyB0eXBlOiBibG9iLnR5cGUsIGxhc3RNb2RpZmllZDogRGF0ZS5ub3coKSB9KTtcbn07Il19
|
package/esm2022/index.mjs
CHANGED
|
@@ -22,11 +22,9 @@ export * from './pattern';
|
|
|
22
22
|
export * from './xss-filter';
|
|
23
23
|
export * from './two-way-signal-object';
|
|
24
24
|
export * from './format-date';
|
|
25
|
-
export * from './
|
|
26
|
-
export * from './
|
|
27
|
-
export * from './convert-blob-to-file';
|
|
28
|
-
export * from './convert-base64-to-blob';
|
|
29
|
-
export * from './convert-file-to-base64-or-object-url';
|
|
25
|
+
export * from './download';
|
|
26
|
+
export * from './base64';
|
|
30
27
|
export * from './inject-token';
|
|
31
28
|
export * from './file';
|
|
32
|
-
|
|
29
|
+
export * from './uri';
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzLXVpL3V0aWxzL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZG9tJztcbmV4cG9ydCAqIGZyb20gJy4vdXJsLXNlYXJjaC1wYXJhbXMnO1xuZXhwb3J0ICogZnJvbSAnLi91dWlkJztcbmV4cG9ydCAqIGZyb20gJy4vaGVscGVycyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbG9yJztcbmV4cG9ydCAqIGZyb20gJy4vY3J5cHRvJztcbmV4cG9ydCAqIGZyb20gJy4vY3J5cHRvLTNyZCc7XG5leHBvcnQgKiBmcm9tICcuL2tleS1jb2RlJztcbmV4cG9ydCAqIGZyb20gJy4vaHR0cC1wYXJhbXMnO1xuZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZSc7XG5leHBvcnQgKiBmcm9tICcuL2tleS1jYWNoZSc7XG5leHBvcnQgKiBmcm9tICcuL2NhY2hlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybWF0LW51bWJlcic7XG5leHBvcnQgKiBmcm9tICcuL3JlbW92ZS1lbW9qaSc7XG5leHBvcnQgKiBmcm9tICcuL2VzY2FwZS1odG1sJztcbmV4cG9ydCAqIGZyb20gJy4vY29tbXVuaWNhdGUtbWljcm8nO1xuZXhwb3J0ICogZnJvbSAnLi9mdW5jdGlvbi1jaGVjay1lbWJlZC1mcmFtZSc7XG5leHBvcnQgKiBmcm9tICcuL2RlbGV0ZS11bmljb2RlJztcbmV4cG9ydCAqIGZyb20gJy4vZ2V0LWNvbG9yLWJ5LWlkJztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vcGF0dGVybic7XG5leHBvcnQgKiBmcm9tICcuL3hzcy1maWx0ZXInO1xuZXhwb3J0ICogZnJvbSAnLi90d28td2F5LXNpZ25hbC1vYmplY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtYXQtZGF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL2Rvd25sb2FkJztcbmV4cG9ydCAqIGZyb20gJy4vYmFzZTY0JztcbmV4cG9ydCAqIGZyb20gJy4vaW5qZWN0LXRva2VuJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsZSc7XG5leHBvcnQgKiBmcm9tICcuL3VyaSc7Il19
|
package/esm2022/key-cache.mjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
1
2
|
import { HttpParams } from "@angular/common/http";
|
|
2
3
|
import { md5 } from "./crypto";
|
|
3
4
|
import { get } from "./helpers";
|
|
@@ -24,4 +25,4 @@ export const getKeyCacheByArrayObject = (keyCache, argumentsValue) => {
|
|
|
24
25
|
const keyCacheMD5 = md5(keyCache);
|
|
25
26
|
return `${keyCacheMD5}-${md5(`${keyCacheMD5}-${keyCachePlus}`)}`;
|
|
26
27
|
};
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LWNhY2hlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy11aS91dGlscy9zcmMva2V5LWNhY2hlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMvQixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRWhDLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLENBQUMsUUFBZ0IsRUFBRSxjQUErQixFQUFVLEVBQUU7SUFDckcsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ2xDLE9BQU8sRUFBRSxDQUFDO0lBQ1gsQ0FBQztJQUNELElBQUksUUFBUSxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDO0lBRTNFLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTtRQUNwQyxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzlCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUN6QixRQUFRLEdBQUcsR0FBRyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUNoRCxPQUFPO1lBQ1IsQ0FBQztZQUNELE1BQU0sSUFBSSxHQUFHLENBQUMsSUFBSSxZQUFZLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFZLEVBQUUsSUFBWSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQWtCLENBQUM7WUFFOUosSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDbEIsUUFBUSxHQUFHLEdBQUcsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDM0QsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPO1FBQ1IsQ0FBQztRQUNELFFBQVEsR0FBRyxHQUFHLFFBQVEsR0FBRyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDLENBQUMsQ0FBQztJQUVILE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNuQyxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFbEMsT0FBTyxHQUFHLFdBQVcsSUFBSSxHQUFHLENBQUMsR0FBRyxXQUFXLElBQUksWUFBWSxFQUFFLENBQUMsRUFBRSxDQUFDO0FBQ2xFLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IEh0dHBQYXJhbXMgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcbmltcG9ydCB7IG1kNSB9IGZyb20gXCIuL2NyeXB0b1wiO1xuaW1wb3J0IHsgZ2V0IH0gZnJvbSBcIi4vaGVscGVyc1wiO1xuXG5leHBvcnQgY29uc3QgZ2V0S2V5Q2FjaGVCeUFycmF5T2JqZWN0ID0gKGtleUNhY2hlOiBzdHJpbmcsIGFyZ3VtZW50c1ZhbHVlPzogQXJyYXk8dW5rbm93bj4pOiBzdHJpbmcgPT4ge1xuXHRpZiAoIWtleUNhY2hlIHx8ICFhcmd1bWVudHNWYWx1ZSkge1xuXHRcdHJldHVybiAnJztcblx0fVxuXHRsZXQga2V5QnVpbGQgPSBgJHtKU09OLnN0cmluZ2lmeShhcmd1bWVudHNWYWx1ZS5zbGljZSgxKSl9LWtleS1jYWNoZS1wbHVzYDtcblxuXHRhcmd1bWVudHNWYWx1ZS5mb3JFYWNoKChpdGVtOiBhbnkpID0+IHtcblx0XHRpZiAodHlwZW9mIGl0ZW0gPT09ICdvYmplY3QnKSB7XG5cdFx0XHRpZiAoQXJyYXkuaXNBcnJheShpdGVtKSkge1xuXHRcdFx0XHRrZXlCdWlsZCA9IGAke2tleUJ1aWxkfSR7SlNPTi5zdHJpbmdpZnkoaXRlbSl9YDtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXHRcdFx0Y29uc3Qga2V5cyA9IChpdGVtIGluc3RhbmNlb2YgSHR0cFBhcmFtcyA/IGl0ZW0ua2V5cygpIDogT2JqZWN0LmtleXMoaXRlbSkpLnNvcnQoKChzdHIxOiBzdHJpbmcsIHN0cjI6IHN0cmluZykgPT4gc3RyMS5sb2NhbGVDb21wYXJlKHN0cjIpKSkgYXMgQXJyYXk8c3RyaW5nPjtcblxuXHRcdFx0a2V5cy5mb3JFYWNoKGtleSA9PiB7XG5cdFx0XHRcdGtleUJ1aWxkID0gYCR7a2V5QnVpbGR9JHtKU09OLnN0cmluZ2lmeShnZXQoaXRlbSwga2V5KSl9YDtcblx0XHRcdH0pO1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblx0XHRrZXlCdWlsZCA9IGAke2tleUJ1aWxkfSR7aXRlbX1gO1xuXHR9KTtcblxuXHRjb25zdCBrZXlDYWNoZVBsdXMgPSBtZDUoa2V5QnVpbGQpO1xuXHRjb25zdCBrZXlDYWNoZU1ENSA9IG1kNShrZXlDYWNoZSk7XG5cblx0cmV0dXJuIGAke2tleUNhY2hlTUQ1fS0ke21kNShgJHtrZXlDYWNoZU1ENX0tJHtrZXlDYWNoZVBsdXN9YCl9YDtcbn1cblxuIl19
|
package/esm2022/uri.mjs
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { omitBy } from "./helpers";
|
|
2
|
+
import { isNil } from "./helpers";
|
|
3
|
+
export const decodeURI = (value) => {
|
|
4
|
+
return decodeURIComponent(value.split('').map((c) => {
|
|
5
|
+
return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
|
|
6
|
+
}).join(''));
|
|
7
|
+
};
|
|
8
|
+
export const endCodeUrl = (params, isBody) => {
|
|
9
|
+
params = omitBy(params, param => param === '' || isNil(param));
|
|
10
|
+
let res = '';
|
|
11
|
+
for (const p in params) {
|
|
12
|
+
res += `&${p}=${encodeURIComponent(params[p])}`;
|
|
13
|
+
}
|
|
14
|
+
return res === '' ? '' : `${isBody ? '' : '?'}${res.substring(1)}`;
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy11aS91dGlscy9zcmMvdXJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVsQyxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRTtJQUN6QyxPQUFPLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUU7UUFDMUQsT0FBTyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLE1BQW1CLEVBQUUsTUFBZSxFQUFVLEVBQUU7SUFDekUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssRUFBRSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQy9ELElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQztJQUViLEtBQUssTUFBTSxDQUFDLElBQUksTUFBTSxFQUFFLENBQUM7UUFDdkIsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDbEQsQ0FBQztJQUVELE9BQU8sR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQ3JFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRZUEVfT0JKRUNUIH0gZnJvbSBcIkBsaWJzLXVpL2ludGVyZmFjZXMtdHlwZXNcIjtcbmltcG9ydCB7IG9taXRCeSB9IGZyb20gXCIuL2hlbHBlcnNcIjtcbmltcG9ydCB7IGlzTmlsIH0gZnJvbSBcIi4vaGVscGVyc1wiO1xuXG5leHBvcnQgY29uc3QgZGVjb2RlVVJJID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCh2YWx1ZS5zcGxpdCgnJykubWFwKChjOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gJyUnICsgKCcwMCcgKyBjLmNoYXJDb2RlQXQoMCkudG9TdHJpbmcoMTYpKS5zbGljZSgtMik7XG4gIH0pLmpvaW4oJycpKTtcbn07XG5cbmV4cG9ydCBjb25zdCBlbmRDb2RlVXJsID0gKHBhcmFtczogVFlQRV9PQkpFQ1QsIGlzQm9keTogYm9vbGVhbik6IHN0cmluZyA9PiB7XG4gIHBhcmFtcyA9IG9taXRCeShwYXJhbXMsIHBhcmFtID0+IHBhcmFtID09PSAnJyB8fCBpc05pbChwYXJhbSkpO1xuICBsZXQgcmVzID0gJyc7XG5cbiAgZm9yIChjb25zdCBwIGluIHBhcmFtcykge1xuICAgIHJlcyArPSBgJiR7cH09JHtlbmNvZGVVUklDb21wb25lbnQocGFyYW1zW3BdKX1gO1xuICB9XG5cbiAgcmV0dXJuIHJlcyA9PT0gJycgPyAnJyA6IGAke2lzQm9keSA/ICcnIDogJz8nfSR7cmVzLnN1YnN0cmluZygxKX1gO1xufTsiXX0=
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { fromEvent, tap, takeUntil, mergeMap, startWith, finalize, Observable, Subject, filter } from 'rxjs';
|
|
2
|
+
import Quill from 'quill';
|
|
2
3
|
import CryptoES from 'crypto-es';
|
|
3
4
|
import { HttpParams } from '@angular/common/http';
|
|
4
5
|
import { isSignal, TemplateRef, ElementRef, signal, InjectionToken } from '@angular/core';
|
|
@@ -10,7 +11,34 @@ import timezone from 'dayjs/plugin/timezone';
|
|
|
10
11
|
import updateLocale from 'dayjs/plugin/updateLocale';
|
|
11
12
|
import utc from 'dayjs/plugin/utc';
|
|
12
13
|
|
|
14
|
+
const escapeHtml = (str) => {
|
|
15
|
+
if (!str || typeof str !== 'string') {
|
|
16
|
+
return str;
|
|
17
|
+
}
|
|
18
|
+
return str
|
|
19
|
+
.replace(/&/g, "&")
|
|
20
|
+
.replace(/</g, "<")
|
|
21
|
+
.replace(/>/g, ">")
|
|
22
|
+
.replace(/"/g, """)
|
|
23
|
+
.replace(/'/g, "'");
|
|
24
|
+
};
|
|
25
|
+
const decodeEscapeHtml = (str) => {
|
|
26
|
+
const htmlTag = document.createElement('textarea');
|
|
27
|
+
htmlTag.innerHTML = str;
|
|
28
|
+
while (str) {
|
|
29
|
+
if (str === htmlTag.value) {
|
|
30
|
+
str = htmlTag.value;
|
|
31
|
+
htmlTag.remove();
|
|
32
|
+
break;
|
|
33
|
+
}
|
|
34
|
+
str = htmlTag.value;
|
|
35
|
+
htmlTag.innerHTML = str;
|
|
36
|
+
}
|
|
37
|
+
return str;
|
|
38
|
+
};
|
|
39
|
+
|
|
13
40
|
const parser = new DOMParser();
|
|
41
|
+
const quill = new Quill(document.createElement('div'));
|
|
14
42
|
const getPlatFromBrowser = () => {
|
|
15
43
|
const userAgent = navigator.userAgent;
|
|
16
44
|
let tem;
|
|
@@ -129,6 +157,18 @@ const getDragEventByElement = (config) => {
|
|
|
129
157
|
}), takeUntil(mouseup));
|
|
130
158
|
return mouseDown.pipe(mergeMap((e) => config.isStartWithMouseDonwEvent ? mousemove.pipe(startWith(e)) : mousemove), takeUntil(config.onDestroy), finalize(removeClass));
|
|
131
159
|
};
|
|
160
|
+
const getHTMLFromQuill = (delta) => {
|
|
161
|
+
delta.ops.forEach((op) => {
|
|
162
|
+
if (op.insert) {
|
|
163
|
+
if (typeof op.insert === 'string') {
|
|
164
|
+
op.insert = op.insert.replace(/\n/g, "<br>");
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
quill.setContents(delta);
|
|
169
|
+
const htmlText = quill.root.firstElementChild?.innerHTML;
|
|
170
|
+
return decodeEscapeHtml(htmlText || '');
|
|
171
|
+
};
|
|
132
172
|
|
|
133
173
|
class UtilsUrlSearchParams {
|
|
134
174
|
static instance;
|
|
@@ -953,6 +993,7 @@ class UtilsLanguageConstants {
|
|
|
953
993
|
}
|
|
954
994
|
}
|
|
955
995
|
|
|
996
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
956
997
|
const getKeyCacheByArrayObject = (keyCache, argumentsValue) => {
|
|
957
998
|
if (!keyCache || !argumentsValue) {
|
|
958
999
|
return '';
|
|
@@ -1576,18 +1617,6 @@ const removeEmoji = (text) => {
|
|
|
1576
1617
|
return text.replace(emojiPattern(), '');
|
|
1577
1618
|
};
|
|
1578
1619
|
|
|
1579
|
-
const escapeHtml = (data) => {
|
|
1580
|
-
if (!data || typeof data !== 'string') {
|
|
1581
|
-
return data;
|
|
1582
|
-
}
|
|
1583
|
-
return data
|
|
1584
|
-
.replace(/&/g, "&")
|
|
1585
|
-
.replace(/</g, "<")
|
|
1586
|
-
.replace(/>/g, ">")
|
|
1587
|
-
.replace(/"/g, """)
|
|
1588
|
-
.replace(/'/g, "'");
|
|
1589
|
-
};
|
|
1590
|
-
|
|
1591
1620
|
const deleteUnicode = (str) => {
|
|
1592
1621
|
str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');
|
|
1593
1622
|
str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ|ễ/g, 'e');
|
|
@@ -1898,38 +1927,12 @@ const getFormatData = (type, lang) => {
|
|
|
1898
1927
|
}
|
|
1899
1928
|
};
|
|
1900
1929
|
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
objectData = omitBy(objectData, param => param === '' || isNil(param));
|
|
1904
|
-
let res = '';
|
|
1905
|
-
for (const p in objectData) {
|
|
1906
|
-
res += `&${p}=${encodeURIComponent(objectData[p])}`;
|
|
1907
|
-
}
|
|
1908
|
-
return res === '' ? '' : `${isBody ? '' : '?'}${res.substring(1)}`;
|
|
1909
|
-
};
|
|
1910
|
-
|
|
1911
|
-
const downloadFileByUrl = async (fileUrl, filename, onlyOpen) => {
|
|
1912
|
-
const downloadFileElement = document.createElement('a');
|
|
1913
|
-
if (!onlyOpen) {
|
|
1914
|
-
const response = await fetch(fileUrl);
|
|
1915
|
-
if (response.ok) {
|
|
1916
|
-
const blob = await response.blob();
|
|
1917
|
-
fileUrl = URL.createObjectURL(blob);
|
|
1918
|
-
}
|
|
1919
|
-
}
|
|
1920
|
-
downloadFileElement.href = fileUrl;
|
|
1921
|
-
downloadFileElement.download = filename;
|
|
1922
|
-
downloadFileElement.target = '_blank';
|
|
1923
|
-
downloadFileElement.click();
|
|
1924
|
-
downloadFileElement.remove();
|
|
1930
|
+
const base64Encode = (value) => {
|
|
1931
|
+
return btoa(encodeURI(value));
|
|
1925
1932
|
};
|
|
1926
|
-
|
|
1927
|
-
|
|
1928
|
-
const type = blob.type.split('/')[1];
|
|
1929
|
-
const name = fileName ? `${fileName.split('.')[0]}.${type}` : `${uuid()}.${type}`;
|
|
1930
|
-
return new File([blob], name, { type: blob.type, lastModified: Date.now() });
|
|
1933
|
+
const base64Decode = (value) => {
|
|
1934
|
+
return decodeURI(atob(value));
|
|
1931
1935
|
};
|
|
1932
|
-
|
|
1933
1936
|
const convertBase64ToBlob = (dataBase64) => {
|
|
1934
1937
|
const BASE64_MARKER = ';base64,';
|
|
1935
1938
|
if (dataBase64.indexOf(BASE64_MARKER) === -1) {
|
|
@@ -1950,20 +1953,58 @@ const convertBase64ToBlob = (dataBase64) => {
|
|
|
1950
1953
|
const blob = new Blob([uInt8Array], { type: contentType });
|
|
1951
1954
|
return blob;
|
|
1952
1955
|
};
|
|
1953
|
-
|
|
1954
|
-
|
|
1956
|
+
const convertFileToBase64_ObjectUrl = async (file) => {
|
|
1957
|
+
if (!file.type.match(/image.*/)) {
|
|
1958
|
+
return URL.createObjectURL(file);
|
|
1959
|
+
}
|
|
1960
|
+
return await convertFileToBase64(file);
|
|
1961
|
+
};
|
|
1962
|
+
const convertFileToBase64 = (file) => {
|
|
1955
1963
|
return new Promise((resolve) => {
|
|
1956
|
-
if (!file.type.match(/image.*/)) {
|
|
1957
|
-
return resolve(URL.createObjectURL(file));
|
|
1958
|
-
}
|
|
1959
1964
|
const reader = new FileReader();
|
|
1960
1965
|
reader.readAsDataURL(file);
|
|
1961
1966
|
reader.onload = (event) => {
|
|
1962
|
-
resolve(event.target?.result);
|
|
1967
|
+
resolve(event.target?.result ?? '');
|
|
1963
1968
|
};
|
|
1964
1969
|
});
|
|
1965
1970
|
};
|
|
1966
1971
|
|
|
1972
|
+
const downloadFileByUrlUseXmlRequest = (fileUrl, filename) => {
|
|
1973
|
+
const xmlRequest = new XMLHttpRequest();
|
|
1974
|
+
xmlRequest.open('GET', fileUrl, true);
|
|
1975
|
+
xmlRequest.responseType = 'blob';
|
|
1976
|
+
xmlRequest.onload = () => {
|
|
1977
|
+
const url = window.URL.createObjectURL(xmlRequest.response);
|
|
1978
|
+
downloadFileByUrl(url, filename);
|
|
1979
|
+
};
|
|
1980
|
+
xmlRequest.send();
|
|
1981
|
+
};
|
|
1982
|
+
const downloadFileByUrl = async (fileUrl, filename, onlyOpen) => {
|
|
1983
|
+
const downloadFileElement = document.createElement('a');
|
|
1984
|
+
if (!onlyOpen) {
|
|
1985
|
+
const response = await fetch(fileUrl);
|
|
1986
|
+
if (response.ok) {
|
|
1987
|
+
const blob = await response.blob();
|
|
1988
|
+
fileUrl = URL.createObjectURL(blob);
|
|
1989
|
+
}
|
|
1990
|
+
}
|
|
1991
|
+
downloadFileElement.href = fileUrl;
|
|
1992
|
+
downloadFileElement.download = filename;
|
|
1993
|
+
downloadFileElement.target = '_blank';
|
|
1994
|
+
downloadFileElement.click();
|
|
1995
|
+
downloadFileElement.remove();
|
|
1996
|
+
};
|
|
1997
|
+
const downloadImageFromELement = (imageElement, typeFileDownload, nameFile) => {
|
|
1998
|
+
const parentElement = imageElement?.src;
|
|
1999
|
+
const blobData = convertBase64ToBlob(parentElement);
|
|
2000
|
+
const blob = new Blob([blobData], { type: typeFileDownload || "image/png" });
|
|
2001
|
+
const url = window.URL.createObjectURL(blob);
|
|
2002
|
+
const link = document.createElement('a');
|
|
2003
|
+
link.href = url;
|
|
2004
|
+
link.download = nameFile || 'barcode';
|
|
2005
|
+
link.click();
|
|
2006
|
+
};
|
|
2007
|
+
|
|
1967
2008
|
const LINK_IMAGE_ERROR_TOKEN_INJECT = new InjectionToken('LINK_IMAGE_ERROR_TOKEN_INJECT');
|
|
1968
2009
|
|
|
1969
2010
|
const isTypeImage = (file) => file.type.match(/image.*/) ? true : false;
|
|
@@ -2014,10 +2055,29 @@ const getLabelBySizeFile = (size, toFixed = 2) => {
|
|
|
2014
2055
|
}
|
|
2015
2056
|
return ` ${(size / (1024 * 1024)).toFixed(toFixed)} MB`;
|
|
2016
2057
|
};
|
|
2058
|
+
const convertBlobToFile = (blob, fileName) => {
|
|
2059
|
+
const type = blob.type.split('/')[1];
|
|
2060
|
+
const name = fileName ? `${fileName.split('.')[0]}.${type}` : `${uuid()}.${type}`;
|
|
2061
|
+
return new File([blob], name, { type: blob.type, lastModified: Date.now() });
|
|
2062
|
+
};
|
|
2063
|
+
|
|
2064
|
+
const decodeURI$1 = (value) => {
|
|
2065
|
+
return decodeURIComponent(value.split('').map((c) => {
|
|
2066
|
+
return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
|
|
2067
|
+
}).join(''));
|
|
2068
|
+
};
|
|
2069
|
+
const endCodeUrl = (params, isBody) => {
|
|
2070
|
+
params = omitBy(params, param => param === '' || isNil(param));
|
|
2071
|
+
let res = '';
|
|
2072
|
+
for (const p in params) {
|
|
2073
|
+
res += `&${p}=${encodeURIComponent(params[p])}`;
|
|
2074
|
+
}
|
|
2075
|
+
return res === '' ? '' : `${isBody ? '' : '?'}${res.substring(1)}`;
|
|
2076
|
+
};
|
|
2017
2077
|
|
|
2018
2078
|
/**
|
|
2019
2079
|
* Generated bundle index. Do not edit.
|
|
2020
2080
|
*/
|
|
2021
2081
|
|
|
2022
|
-
export { AudioExtList, CHARACTER_DATA_EMPTY, DEFAULT_START_PAGE_0, DocumentExtList, ERROR_MESSAGE_EMPTY_VALID, ERROR_MESSAGE_MAX_LENGTH, ERROR_MESSAGE_MAX_VALID, ERROR_MESSAGE_MIN_LENGTH, ERROR_MESSAGE_MIN_VALID, ERROR_MESSAGE_PATTEN_VALID, GetColorById, ImageExtList, LINK_IMAGE_ERROR_TOKEN_INJECT, UtilsCache, UtilsCommunicateMicro, UtilsCommunicateMicroKeyGlobal, UtilsHttpParamsRequest, UtilsHttpParamsRequestInstance, UtilsKeyCodeConstant, UtilsLanguageConstants, UtilsUrlSearchParams, VideoExtList, checkMouseOverInContainer, checkViewInScreen, cloneDeep, cloneIBoundingClientRect, colorContrastFromOrigin, colorStepContrastFromOrigin, convertBase64ToBlob, convertBlobToFile, convertFileToBase64_ObjectUrl, convertObjectToSignal, convertSignalToObject, decrypt, decrypt3rd, deleteUnicode, downloadFileByUrl, emojiPattern, encrypt, encrypt3rd, endCodeUrl, escapeHtml, formatDate, formatNumber, generateInterface, get, getColorById, getDayjs, getDocumentByString, getDragEventByElement, getFileExtension, getKeyCacheByArrayObject, getLabelBySizeFile, getPlatFromBrowser, getViewport, groupBy, isEmbedFrame, isEmpty, isEqual, isIncludeAudioExtList, isIncludeDocumentExtList, isIncludeImageExtList, isIncludeVideoExtList, isNil, isTypeAudio, isTypeFile, isTypeImage, isTypeVideo, keyBy, listColorDefine$1 as listColorDefine, md5, omitBy, patternAccount, patternDomain, patternEmail, patternEmoji, patternEncodeUri, patternGetFieldByRuleFieldReplace, patternHostUrl, patternKey, patternMobilePhone, patternName, patternNameProfile, patternNameSpecial, patternNameUtf8, patternNumber, patternPem, patternPhone, patternPhoneNormal, patternRuleFieldReplace, patternTax, patternUrl, range, removeEmoji, rgbToHex, set, setCaretPosition, setDefaultTimeZone, setKeyCrypto, setKeyCrypto3rd, setStylesElement, uniqBy, updateFunctionCheckEmbedFrame, updateFunctionFormatDate, updateFunctionXssFilter, uuid, viewDataNumberByLanguage, xssFilter };
|
|
2082
|
+
export { AudioExtList, CHARACTER_DATA_EMPTY, DEFAULT_START_PAGE_0, DocumentExtList, ERROR_MESSAGE_EMPTY_VALID, ERROR_MESSAGE_MAX_LENGTH, ERROR_MESSAGE_MAX_VALID, ERROR_MESSAGE_MIN_LENGTH, ERROR_MESSAGE_MIN_VALID, ERROR_MESSAGE_PATTEN_VALID, GetColorById, ImageExtList, LINK_IMAGE_ERROR_TOKEN_INJECT, UtilsCache, UtilsCommunicateMicro, UtilsCommunicateMicroKeyGlobal, UtilsHttpParamsRequest, UtilsHttpParamsRequestInstance, UtilsKeyCodeConstant, UtilsLanguageConstants, UtilsUrlSearchParams, VideoExtList, base64Decode, base64Encode, checkMouseOverInContainer, checkViewInScreen, cloneDeep, cloneIBoundingClientRect, colorContrastFromOrigin, colorStepContrastFromOrigin, convertBase64ToBlob, convertBlobToFile, convertFileToBase64, convertFileToBase64_ObjectUrl, convertObjectToSignal, convertSignalToObject, decodeEscapeHtml, decodeURI$1 as decodeURI, decrypt, decrypt3rd, deleteUnicode, downloadFileByUrl, downloadFileByUrlUseXmlRequest, downloadImageFromELement, emojiPattern, encrypt, encrypt3rd, endCodeUrl, escapeHtml, formatDate, formatNumber, generateInterface, get, getColorById, getDayjs, getDocumentByString, getDragEventByElement, getFileExtension, getHTMLFromQuill, getKeyCacheByArrayObject, getLabelBySizeFile, getPlatFromBrowser, getViewport, groupBy, isEmbedFrame, isEmpty, isEqual, isIncludeAudioExtList, isIncludeDocumentExtList, isIncludeImageExtList, isIncludeVideoExtList, isNil, isTypeAudio, isTypeFile, isTypeImage, isTypeVideo, keyBy, listColorDefine$1 as listColorDefine, md5, omitBy, patternAccount, patternDomain, patternEmail, patternEmoji, patternEncodeUri, patternGetFieldByRuleFieldReplace, patternHostUrl, patternKey, patternMobilePhone, patternName, patternNameProfile, patternNameSpecial, patternNameUtf8, patternNumber, patternPem, patternPhone, patternPhoneNormal, patternRuleFieldReplace, patternTax, patternUrl, range, removeEmoji, rgbToHex, set, setCaretPosition, setDefaultTimeZone, setKeyCrypto, setKeyCrypto3rd, setStylesElement, uniqBy, updateFunctionCheckEmbedFrame, updateFunctionFormatDate, updateFunctionXssFilter, uuid, viewDataNumberByLanguage, xssFilter };
|
|
2023
2083
|
//# sourceMappingURL=libs-ui-utils.mjs.map
|