@libs-ui/utils 0.1.1-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/README.md +3 -0
- package/base64.d.ts +5 -0
- package/cache.d.ts +42 -0
- package/color.d.ts +11 -0
- package/communicate-micro.d.ts +16 -0
- package/constants.d.ts +10 -0
- package/crypto-3rd.d.ts +7 -0
- package/crypto.d.ts +8 -0
- package/dangerous-object.d.ts +79 -0
- package/date.d.ts +44 -0
- package/dom.d.ts +52 -0
- package/download.d.ts +3 -0
- package/esm2022/base64.mjs +43 -0
- package/esm2022/cache.mjs +388 -0
- package/esm2022/color.mjs +133 -0
- package/esm2022/communicate-micro.mjs +149 -0
- package/esm2022/constants.mjs +11 -0
- package/esm2022/crypto-3rd.mjs +38 -0
- package/esm2022/crypto.mjs +41 -0
- package/esm2022/dangerous-object.mjs +149 -0
- package/esm2022/date.mjs +191 -0
- package/esm2022/dom.mjs +256 -0
- package/esm2022/download.mjs +41 -0
- package/esm2022/file.mjs +90 -0
- package/esm2022/format-number.mjs +66 -0
- package/esm2022/format-text.mjs +149 -0
- package/esm2022/function-check-embed-frame.mjs +10 -0
- package/esm2022/get-smart-axis-scale.mjs +174 -0
- package/esm2022/helpers.mjs +651 -0
- package/esm2022/http-params.mjs +80 -0
- package/esm2022/index.mjs +30 -0
- package/esm2022/inject-token.mjs +5 -0
- package/esm2022/key-cache.mjs +31 -0
- package/esm2022/key-code.mjs +123 -0
- package/esm2022/language.mjs +70 -0
- package/esm2022/libs-ui-utils.mjs +5 -0
- package/esm2022/pattern.mjs +62 -0
- package/esm2022/random.mjs +42 -0
- package/esm2022/two-way-signal-object.mjs +131 -0
- package/esm2022/uri.mjs +25 -0
- package/esm2022/url-search-params.mjs +99 -0
- package/esm2022/uuid.mjs +18 -0
- package/esm2022/xss-filter.mjs +10 -0
- package/fesm2022/libs-ui-utils.mjs +3234 -0
- package/fesm2022/libs-ui-utils.mjs.map +1 -0
- package/file.d.ts +18 -0
- package/format-number.d.ts +2 -0
- package/format-text.d.ts +11 -0
- package/function-check-embed-frame.d.ts +2 -0
- package/get-smart-axis-scale.d.ts +34 -0
- package/helpers.d.ts +270 -0
- package/http-params.d.ts +37 -0
- package/index.d.ts +29 -0
- package/inject-token.d.ts +4 -0
- package/key-cache.d.ts +1 -0
- package/key-code.d.ts +122 -0
- package/language.d.ts +37 -0
- package/package.json +29 -0
- package/pattern.d.ts +20 -0
- package/random.d.ts +3 -0
- package/two-way-signal-object.d.ts +15 -0
- package/uri.d.ts +5 -0
- package/url-search-params.d.ts +25 -0
- package/uuid.d.ts +1 -0
- package/xss-filter.d.ts +3 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
+
import { isSignal, signal } from '@angular/core';
|
|
3
|
+
import { isArray, isAsyncObject, isMap, isReturnAsIsObject, isSet } from './dangerous-object';
|
|
4
|
+
import { cloneDeep } from './helpers';
|
|
5
|
+
/**
|
|
6
|
+
* Chuyển đổi một đối tượng hoặc giá trị thành signal
|
|
7
|
+
* @param data Dữ liệu cần chuyển đổi thành signal
|
|
8
|
+
* @param cloneDeepIfNotSignal Có thực hiện sao chép sâu dữ liệu trước khi chuyển đổi hay không nếu data không phải signal. Mặc định là true.
|
|
9
|
+
* Đặt false nếu muốn giữ nguyên tham chiếu đến dữ liệu gốc.
|
|
10
|
+
* Nếu muốn sao chép sâu đối tượng signal thì đặt cloneDeepIfNotSignal là true và acceptConvertObjectInnerWritableSignal là true.
|
|
11
|
+
* @param isSignalPrimitiveType Có chuyển đổi các giá trị nguyên thủy (string, number, boolean) thành signal hay không. Mặc định là false.
|
|
12
|
+
* Đặt true nếu muốn bọc các giá trị nguyên thủy trong signal.
|
|
13
|
+
* @param acceptConvertObjectInnerWritableSignal Có tiếp tục tìm kiếm và chuyển đổi các đối tượng bên trong signal hay không. Mặc định là false.
|
|
14
|
+
* Đặt true nếu muốn tìm và chuyển đổi các đối tượng bên trong signal hoặc chính nó thành signal mới.
|
|
15
|
+
* @returns Dữ liệu đã được chuyển đổi theo kiểu T
|
|
16
|
+
*/
|
|
17
|
+
export const convertObjectToSignal = (data, cloneDeepIfNotSignal = true, isSignalPrimitiveType = false, acceptConvertObjectInnerWritableSignal = false, seen = new WeakMap()) => {
|
|
18
|
+
if ((data === null || typeof data !== 'object') && !isSignal(data)) {
|
|
19
|
+
return (isSignalPrimitiveType ? signal(data) : data);
|
|
20
|
+
}
|
|
21
|
+
if (seen.has(data)) {
|
|
22
|
+
return seen.get(data);
|
|
23
|
+
}
|
|
24
|
+
if (isSignal(data)) {
|
|
25
|
+
if (!acceptConvertObjectInnerWritableSignal) {
|
|
26
|
+
return data;
|
|
27
|
+
}
|
|
28
|
+
seen.set(data, convertObjectToSignal(data(), cloneDeepIfNotSignal, isSignalPrimitiveType, acceptConvertObjectInnerWritableSignal, seen));
|
|
29
|
+
return seen.get(data);
|
|
30
|
+
}
|
|
31
|
+
if (isArray(data)) {
|
|
32
|
+
seen.set(data, signal(data.map((item) => convertObjectToSignal(item, cloneDeepIfNotSignal, isSignalPrimitiveType, acceptConvertObjectInnerWritableSignal, seen))));
|
|
33
|
+
return seen.get(data);
|
|
34
|
+
}
|
|
35
|
+
if (isMap(data)) {
|
|
36
|
+
const mapCopy = new Map();
|
|
37
|
+
Array.from(data.keys()).forEach((key) => {
|
|
38
|
+
mapCopy.set(key, convertObjectToSignal(data.get(key), cloneDeepIfNotSignal, isSignalPrimitiveType, acceptConvertObjectInnerWritableSignal));
|
|
39
|
+
});
|
|
40
|
+
seen.set(data, signal(mapCopy));
|
|
41
|
+
return seen.get(data);
|
|
42
|
+
}
|
|
43
|
+
// Bỏ qua các đối tượng async
|
|
44
|
+
if (isAsyncObject(data)) {
|
|
45
|
+
return data;
|
|
46
|
+
}
|
|
47
|
+
data = signal(cloneDeepIfNotSignal ? { ...data } : data);
|
|
48
|
+
seen.set(data, data);
|
|
49
|
+
for (const key in data()) {
|
|
50
|
+
const value = data()[key];
|
|
51
|
+
// Bỏ qua các đối tượng nguy hiểm và đặc biệt
|
|
52
|
+
if (isReturnAsIsObject(value)) {
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
if (Object.prototype.hasOwnProperty.call(data(), key)) {
|
|
56
|
+
data()[key] = convertObjectToSignal(value, cloneDeepIfNotSignal, isSignalPrimitiveType, acceptConvertObjectInnerWritableSignal);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return data;
|
|
60
|
+
};
|
|
61
|
+
export const convertSignalToObject = (data, isCloneDeep = true, seen = new WeakMap()) => {
|
|
62
|
+
let ignoreCheckSeenHasDataAfterWhile = false;
|
|
63
|
+
while (isSignal(data) && !seen.has(data)) {
|
|
64
|
+
const dataConvert = data();
|
|
65
|
+
if (typeof dataConvert === 'object') {
|
|
66
|
+
if (dataConvert === null || isReturnAsIsObject(dataConvert)) {
|
|
67
|
+
return dataConvert;
|
|
68
|
+
}
|
|
69
|
+
seen.set(dataConvert, dataConvert);
|
|
70
|
+
data = dataConvert;
|
|
71
|
+
ignoreCheckSeenHasDataAfterWhile = true;
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
seen.set(data, dataConvert);
|
|
75
|
+
data = dataConvert;
|
|
76
|
+
}
|
|
77
|
+
if (data === null || typeof data === 'function' || typeof data !== 'object' || isReturnAsIsObject(data)) {
|
|
78
|
+
return data;
|
|
79
|
+
}
|
|
80
|
+
if (!ignoreCheckSeenHasDataAfterWhile && seen.has(data)) {
|
|
81
|
+
return seen.get(data);
|
|
82
|
+
}
|
|
83
|
+
if (isArray(data)) {
|
|
84
|
+
if (!isSignal(data[0])) {
|
|
85
|
+
return data;
|
|
86
|
+
}
|
|
87
|
+
seen.set(data, data.map((item) => convertSignalToObject(isCloneDeep ? cloneDeep(item) : item, isCloneDeep, seen)));
|
|
88
|
+
return seen.get(data);
|
|
89
|
+
}
|
|
90
|
+
if (isMap(data)) {
|
|
91
|
+
const mapCopy = new Map();
|
|
92
|
+
Array.from(data.keys()).forEach((key) => {
|
|
93
|
+
mapCopy.set(key, convertSignalToObject(isCloneDeep ? cloneDeep(data.get(key)) : data.get(key), isCloneDeep));
|
|
94
|
+
});
|
|
95
|
+
seen.set(data, mapCopy);
|
|
96
|
+
return seen.get(data);
|
|
97
|
+
}
|
|
98
|
+
if (isSet(data)) {
|
|
99
|
+
const setCopy = new Set();
|
|
100
|
+
Array.from(data.values()).forEach((value) => {
|
|
101
|
+
setCopy.add(convertSignalToObject(isCloneDeep ? cloneDeep(value) : value, isCloneDeep));
|
|
102
|
+
});
|
|
103
|
+
seen.set(data, setCopy);
|
|
104
|
+
return seen.get(data);
|
|
105
|
+
}
|
|
106
|
+
// Bỏ qua các đối tượng nguy hiểm và đặc biệt
|
|
107
|
+
if (isReturnAsIsObject(data)) {
|
|
108
|
+
return data;
|
|
109
|
+
}
|
|
110
|
+
const result = isCloneDeep ? {} : data;
|
|
111
|
+
seen.set(data, result);
|
|
112
|
+
for (const key in data) {
|
|
113
|
+
const value = data[key];
|
|
114
|
+
if (Object.prototype.hasOwnProperty.call(data, key)) {
|
|
115
|
+
// Bỏ qua các đối tượng nguy hiểm để tránh maximum call stack
|
|
116
|
+
if (isReturnAsIsObject(value)) {
|
|
117
|
+
result[key] = value;
|
|
118
|
+
continue;
|
|
119
|
+
}
|
|
120
|
+
result[key] = convertSignalToObject(isCloneDeep ? cloneDeep(value) : value, isCloneDeep);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
return result;
|
|
124
|
+
};
|
|
125
|
+
export const unwrapSignal = (data) => {
|
|
126
|
+
while (isSignal(data)) {
|
|
127
|
+
data = data();
|
|
128
|
+
}
|
|
129
|
+
return data;
|
|
130
|
+
};
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHdvLXdheS1zaWduYWwtb2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy11aS91dGlscy9zcmMvdHdvLXdheS1zaWduYWwtb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLGtCQUFrQixFQUFFLEtBQUssRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzlGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFdEM7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFVLElBQVMsRUFBRSxvQkFBb0IsR0FBRyxJQUFJLEVBQUUscUJBQXFCLEdBQUcsS0FBSyxFQUFFLHNDQUFzQyxHQUFHLEtBQUssRUFBRSxJQUFJLEdBQUcsSUFBSSxPQUFPLEVBQUUsRUFBSyxFQUFFO0lBQy9MLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDbkUsT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBTSxDQUFDO0lBQzVELENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNuQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLHNDQUFzQyxFQUFFLENBQUM7WUFDNUMs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LEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBpc1NpZ25hbCwgc2lnbmFsLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNBcnJheSwgaXNBc3luY09iamVjdCwgaXNNYXAsIGlzUmV0dXJuQXNJc09iamVjdCwgaXNTZXQgfSBmcm9tICcuL2Rhbmdlcm91cy1vYmplY3QnO1xuaW1wb3J0IHsgY2xvbmVEZWVwIH0gZnJvbSAnLi9oZWxwZXJzJztcblxuLyoqXG4gKiBDaHV54buDbiDEkeG7lWkgbeG7mXQgxJHhu5FpIHTGsOG7o25nIGhv4bq3YyBnacOhIHRy4buLIHRow6BuaCBzaWduYWxcbiAqIEBwYXJhbSBkYXRhIEThu68gbGnhu4d1IGPhuqduIGNodXnhu4NuIMSR4buVaSB0aMOgbmggc2lnbmFsXG4gKiBAcGFyYW0gY2xvbmVEZWVwSWZOb3RTaWduYWwgQ8OzIHRo4buxYyBoaeG7h24gc2FvIGNow6lwIHPDonUgZOG7ryBsaeG7h3UgdHLGsOG7m2Mga2hpIGNodXnhu4NuIMSR4buVaSBoYXkga2jDtG5nIG7hur91IGRhdGEga2jDtG5nIHBo4bqjaSBzaWduYWwuIE3hurdjIMSR4buLbmggbMOgIHRydWUuXG4gKiDEkOG6t3QgZmFsc2UgbuG6v3UgbXXhu5FuIGdp4buvIG5ndXnDqm4gdGhhbSBjaGnhur91IMSR4bq/biBk4buvIGxp4buHdSBn4buRYy5cbiAqIE7hur91IG114buRbiBzYW8gY2jDqXAgc8OidSDEkeG7kWkgdMaw4bujbmcgc2lnbmFsIHRow6wgxJHhurd0IGNsb25lRGVlcElmTm90U2lnbmFsIGzDoCB0cnVlIHbDoCBhY2NlcHRDb252ZXJ0T2JqZWN0SW5uZXJXcml0YWJsZVNpZ25hbCBsw6AgdHJ1ZS5cbiAqIEBwYXJhbSBpc1NpZ25hbFByaW1pdGl2ZVR5cGUgQ8OzIGNodXnhu4NuIMSR4buVaSBjw6FjIGdpw6EgdHLhu4sgbmd1ecOqbiB0aOG7p3kgKHN0cmluZywgbnVtYmVyLCBib29sZWFuKSB0aMOgbmggc2lnbmFsIGhheSBraMO0bmcuIE3hurdjIMSR4buLbmggbMOgIGZhbHNlLlxuICogxJDhurd0IHRydWUgbuG6v3UgbXXhu5FuIGLhu41jIGPDoWMgZ2nDoSB0cuG7iyBuZ3V5w6puIHRo4buneSB0cm9uZyBzaWduYWwuXG4gKiBAcGFyYW0gYWNjZXB0Q29udmVydE9iamVjdElubmVyV3JpdGFibGVTaWduYWwgQ8OzIHRp4bq/cCB04bulYyB0w6xtIGtp4bq/bSB2w6AgY2h1eeG7g24gxJHhu5VpIGPDoWMgxJHhu5FpIHTGsOG7o25nIGLDqm4gdHJvbmcgc2lnbmFsIGhheSBraMO0bmcuIE3hurdjIMSR4buLbmggbMOgIGZhbHNlLlxuICogxJDhurd0IHRydWUgbuG6v3UgbXXhu5FuIHTDrG0gdsOgIGNodXnhu4NuIMSR4buVaSBjw6FjIMSR4buRaSB0xrDhu6NuZyBiw6puIHRyb25nIHNpZ25hbCBob+G6t2MgY2jDrW5oIG7DsyB0aMOgbmggc2lnbmFsIG3hu5tpLlxuICogQHJldHVybnMgROG7ryBsaeG7h3UgxJHDoyDEkcaw4bujYyBjaHV54buDbiDEkeG7lWkgdGhlbyBraeG7g3UgVFxuICovXG5leHBvcnQgY29uc3QgY29udmVydE9iamVjdFRvU2lnbmFsID0gPFQgPSBhbnk+KGRhdGE6IGFueSwgY2xvbmVEZWVwSWZOb3RTaWduYWwgPSB0cnVlLCBpc1NpZ25hbFByaW1pdGl2ZVR5cGUgPSBmYWxzZSwgYWNjZXB0Q29udmVydE9iamVjdElubmVyV3JpdGFibGVTaWduYWwgPSBmYWxzZSwgc2VlbiA9IG5ldyBXZWFrTWFwKCkpOiBUID0+IHtcbiAgaWYgKChkYXRhID09PSBudWxsIHx8IHR5cGVvZiBkYXRhICE9PSAnb2JqZWN0JykgJiYgIWlzU2lnbmFsKGRhdGEpKSB7XG4gICAgcmV0dXJuIChpc1NpZ25hbFByaW1pdGl2ZVR5cGUgPyBzaWduYWwoZGF0YSkgOiBkYXRhKSBhcyBUO1xuICB9XG4gIGlmIChzZWVuLmhhcyhkYXRhKSkge1xuICAgIHJldHVybiBzZWVuLmdldChkYXRhKTtcbiAgfVxuXG4gIGlmIChpc1NpZ25hbChkYXRhKSkge1xuICAgIGlmICghYWNjZXB0Q29udmVydE9iamVjdElubmVyV3JpdGFibGVTaWduYWwpIHtcbiAgICAgIHJldHVybiBkYXRhIGFzIFQ7XG4gICAgfVxuICAgIHNlZW4uc2V0KGRhdGEsIGNvbnZlcnRPYmplY3RUb1NpZ25hbChkYXRhKCksIGNsb25lRGVlcElmTm90U2lnbmFsLCBpc1NpZ25hbFByaW1pdGl2ZVR5cGUsIGFjY2VwdENvbnZlcnRPYmplY3RJbm5lcldyaXRhYmxlU2lnbmFsLCBzZWVuKSk7XG4gICAgcmV0dXJuIHNlZW4uZ2V0KGRhdGEpO1xuICB9XG5cbiAgaWYgKGlzQXJyYXkoZGF0YSkpIHtcbiAgICBzZWVuLnNldChkYXRhLCBzaWduYWwoZGF0YS5tYXAoKGl0ZW0pID0+IGNvbnZlcnRPYmplY3RUb1NpZ25hbChpdGVtLCBjbG9uZURlZXBJZk5vdFNpZ25hbCwgaXNTaWduYWxQcmltaXRpdmVUeXBlLCBhY2NlcHRDb252ZXJ0T2JqZWN0SW5uZXJXcml0YWJsZVNpZ25hbCwgc2VlbikpKSBhcyBUKTtcbiAgICByZXR1cm4gc2Vlbi5nZXQoZGF0YSk7XG4gIH1cblxuICBpZiAoaXNNYXAoZGF0YSkpIHtcbiAgICBjb25zdCBtYXBDb3B5ID0gbmV3IE1hcCgpO1xuICAgIEFycmF5LmZyb20oZGF0YS5rZXlzKCkpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgbWFwQ29weS5zZXQoa2V5LCBjb252ZXJ0T2JqZWN0VG9TaWduYWwoZGF0YS5nZXQoa2V5KSwgY2xvbmVEZWVwSWZOb3RTaWduYWwsIGlzU2lnbmFsUHJpbWl0aXZlVHlwZSwgYWNjZXB0Q29udmVydE9iamVjdElubmVyV3JpdGFibGVTaWduYWwpKTtcbiAgICB9KTtcbiAgICBzZWVuLnNldChkYXRhLCBzaWduYWwobWFwQ29weSkgYXMgVCk7XG4gICAgcmV0dXJuIHNlZW4uZ2V0KGRhdGEpO1xuICB9XG5cbiAgLy8gQuG7jyBxdWEgY8OhYyDEkeG7kWkgdMaw4bujbmcgYXN5bmNcbiAgaWYgKGlzQXN5bmNPYmplY3QoZGF0YSkpIHtcbiAgICByZXR1cm4gZGF0YSBhcyBUO1xuICB9XG5cbiAgZGF0YSA9IHNpZ25hbChjbG9uZURlZXBJZk5vdFNpZ25hbCA/IHsgLi4uZGF0YSB9IDogZGF0YSk7XG4gIHNlZW4uc2V0KGRhdGEsIGRhdGEpO1xuICBmb3IgKGNvbnN0IGtleSBpbiBkYXRhKCkpIHtcbiAgICBjb25zdCB2YWx1ZSA9IGRhdGEoKVtrZXldO1xuICAgIC8vIELhu48gcXVhIGPDoWMgxJHhu5FpIHTGsOG7o25nIG5ndXkgaGnhu4NtIHbDoCDEkeG6t2MgYmnhu4d0XG4gICAgaWYgKGlzUmV0dXJuQXNJc09iamVjdCh2YWx1ZSkpIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGRhdGEoKSwga2V5KSkge1xuICAgICAgZGF0YSgpW2tleV0gPSBjb252ZXJ0T2JqZWN0VG9TaWduYWwodmFsdWUsIGNsb25lRGVlcElmTm90U2lnbmFsLCBpc1NpZ25hbFByaW1pdGl2ZVR5cGUsIGFjY2VwdENvbnZlcnRPYmplY3RJbm5lcldyaXRhYmxlU2lnbmFsKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZGF0YSBhcyBUO1xufTtcblxuZXhwb3J0IGNvbnN0IGNvbnZlcnRTaWduYWxUb09iamVjdCA9IDxUID0gYW55PihkYXRhOiBhbnksIGlzQ2xvbmVEZWVwID0gdHJ1ZSwgc2VlbiA9IG5ldyBXZWFrTWFwKCkpOiBUID0+IHtcbiAgbGV0IGlnbm9yZUNoZWNrU2Vlbkhhc0RhdGFBZnRlcldoaWxlID0gZmFsc2U7XG4gIHdoaWxlIChpc1NpZ25hbChkYXRhKSAmJiAhc2Vlbi5oYXMoZGF0YSkpIHtcbiAgICBjb25zdCBkYXRhQ29udmVydCA9IChkYXRhIGFzIFdyaXRhYmxlU2lnbmFsPHVua25vd24+KSgpO1xuICAgIGlmICh0eXBlb2YgZGF0YUNvbnZlcnQgPT09ICdvYmplY3QnKSB7XG4gICAgICBpZiAoZGF0YUNvbnZlcnQgPT09IG51bGwgfHwgaXNSZXR1cm5Bc0lzT2JqZWN0KGRhdGFDb252ZXJ0KSkge1xuICAgICAgICByZXR1cm4gZGF0YUNvbnZlcnQgYXMgVDtcbiAgICAgIH1cbiAgICAgIHNlZW4uc2V0KGRhdGFDb252ZXJ0IGFzIG9iamVjdCwgZGF0YUNvbnZlcnQpO1xuICAgICAgZGF0YSA9IGRhdGFDb252ZXJ0O1xuICAgICAgaWdub3JlQ2hlY2tTZWVuSGFzRGF0YUFmdGVyV2hpbGUgPSB0cnVlO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHNlZW4uc2V0KGRhdGEsIGRhdGFDb252ZXJ0KTtcbiAgICBkYXRhID0gZGF0YUNvbnZlcnQ7XG4gIH1cblxuICBpZiAoZGF0YSA9PT0gbnVsbCB8fCB0eXBlb2YgZGF0YSA9PT0gJ2Z1bmN0aW9uJyB8fCB0eXBlb2YgZGF0YSAhPT0gJ29iamVjdCcgfHwgaXNSZXR1cm5Bc0lzT2JqZWN0KGRhdGEpKSB7XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICBpZiAoIWlnbm9yZUNoZWNrU2Vlbkhhc0RhdGFBZnRlcldoaWxlICYmIHNlZW4uaGFzKGRhdGEpKSB7XG4gICAgcmV0dXJuIHNlZW4uZ2V0KGRhdGEpO1xuICB9XG5cbiAgaWYgKGlzQXJyYXkoZGF0YSkpIHtcbiAgICBpZiAoIWlzU2lnbmFsKGRhdGFbMF0pKSB7XG4gICAgICByZXR1cm4gZGF0YSBhcyBUO1xuICAgIH1cbiAgICBzZWVuLnNldChkYXRhLCBkYXRhLm1hcCgoaXRlbTogYW55KSA9PiBjb252ZXJ0U2lnbmFsVG9PYmplY3QoaXNDbG9uZURlZXAgPyBjbG9uZURlZXAoaXRlbSkgOiBpdGVtLCBpc0Nsb25lRGVlcCwgc2VlbikpIGFzIFQpO1xuICAgIHJldHVybiBzZWVuLmdldChkYXRhKTtcbiAgfVxuXG4gIGlmIChpc01hcChkYXRhKSkge1xuICAgIGNvbnN0IG1hcENvcHkgPSBuZXcgTWFwKCk7XG4gICAgQXJyYXkuZnJvbShkYXRhLmtleXMoKSkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBtYXBDb3B5LnNldChrZXksIGNvbnZlcnRTaWduYWxUb09iamVjdChpc0Nsb25lRGVlcCA/IGNsb25lRGVlcChkYXRhLmdldChrZXkpKSA6IGRhdGEuZ2V0KGtleSksIGlzQ2xvbmVEZWVwKSk7XG4gICAgfSk7XG4gICAgc2Vlbi5zZXQoZGF0YSwgbWFwQ29weSBhcyBUKTtcbiAgICByZXR1cm4gc2Vlbi5nZXQoZGF0YSk7XG4gIH1cblxuICBpZiAoaXNTZXQoZGF0YSkpIHtcbiAgICBjb25zdCBzZXRDb3B5ID0gbmV3IFNldCgpO1xuICAgIEFycmF5LmZyb20oZGF0YS52YWx1ZXMoKSkuZm9yRWFjaCgodmFsdWUpID0+IHtcbiAgICAgIHNldENvcHkuYWRkKGNvbnZlcnRTaWduYWxUb09iamVjdChpc0Nsb25lRGVlcCA/IGNsb25lRGVlcCh2YWx1ZSkgOiB2YWx1ZSwgaXNDbG9uZURlZXApKTtcbiAgICB9KTtcbiAgICBzZWVuLnNldChkYXRhLCBzZXRDb3B5IGFzIFQpO1xuICAgIHJldHVybiBzZWVuLmdldChkYXRhKTtcbiAgfVxuXG4gIC8vIELhu48gcXVhIGPDoWMgxJHhu5FpIHTGsOG7o25nIG5ndXkgaGnhu4NtIHbDoCDEkeG6t2MgYmnhu4d0XG4gIGlmIChpc1JldHVybkFzSXNPYmplY3QoZGF0YSkpIHtcbiAgICByZXR1cm4gZGF0YSBhcyBUO1xuICB9XG5cbiAgY29uc3QgcmVzdWx0OiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0gaXNDbG9uZURlZXAgPyB7fSA6IGRhdGE7XG4gIHNlZW4uc2V0KGRhdGEsIHJlc3VsdCk7XG4gIGZvciAoY29uc3Qga2V5IGluIGRhdGEpIHtcbiAgICBjb25zdCB2YWx1ZSA9IGRhdGFba2V5XTtcbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGRhdGEsIGtleSkpIHtcbiAgICAgIC8vIELhu48gcXVhIGPDoWMgxJHhu5FpIHTGsOG7o25nIG5ndXkgaGnhu4NtIMSR4buDIHRyw6FuaCBtYXhpbXVtIGNhbGwgc3RhY2tcbiAgICAgIGlmIChpc1JldHVybkFzSXNPYmplY3QodmFsdWUpKSB7XG4gICAgICAgIHJlc3VsdFtrZXldID0gdmFsdWU7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgcmVzdWx0W2tleV0gPSBjb252ZXJ0U2lnbmFsVG9PYmplY3QoaXNDbG9uZURlZXAgPyBjbG9uZURlZXAodmFsdWUpIDogdmFsdWUsIGlzQ2xvbmVEZWVwKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVzdWx0IGFzIFQ7XG59O1xuXG5leHBvcnQgY29uc3QgdW53cmFwU2lnbmFsID0gKGRhdGE6IGFueSkgPT4ge1xuICB3aGlsZSAoaXNTaWduYWwoZGF0YSkpIHtcbiAgICBkYXRhID0gZGF0YSgpO1xuICB9XG4gIHJldHVybiBkYXRhO1xufTtcbiJdfQ==
|
package/esm2022/uri.mjs
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { omitBy } from './helpers';
|
|
2
|
+
import { isNil } from './helpers';
|
|
3
|
+
export const ENCODE_URI_PATTERN = /%([0-9A-F]{2})/g;
|
|
4
|
+
export const decodeURI = (value) => {
|
|
5
|
+
return decodeURIComponent(value
|
|
6
|
+
.split('')
|
|
7
|
+
.map((c) => {
|
|
8
|
+
return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
|
|
9
|
+
})
|
|
10
|
+
.join(''));
|
|
11
|
+
};
|
|
12
|
+
export const encodeURI = (value) => {
|
|
13
|
+
return encodeURIComponent(value).replace(ENCODE_URI_PATTERN, (match, p1) => {
|
|
14
|
+
return String.fromCharCode(parseInt(p1, 16));
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
export const endCodeUrl = (params, isBody) => {
|
|
18
|
+
params = omitBy(params, (param) => param === '' || isNil(param));
|
|
19
|
+
let res = '';
|
|
20
|
+
for (const p in params) {
|
|
21
|
+
res += `&${p}=${encodeURIComponent(params[p])}`;
|
|
22
|
+
}
|
|
23
|
+
return res === '' ? '' : `${isBody ? '' : '?'}${res.substring(1)}`;
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy11aS91dGlscy9zcmMvdXJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVsQyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxpQkFBaUIsQ0FBQztBQUVwRCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRTtJQUN6QyxPQUFPLGtCQUFrQixDQUN2QixLQUFLO1NBQ0YsS0FBSyxDQUFDLEVBQUUsQ0FBQztTQUNULEdBQUcsQ0FBQyxDQUFDLENBQVMsRUFBRSxFQUFFO1FBQ2pCLE9BQU8sR0FBRyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQyxDQUFDO1NBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUNaLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRTtJQUN6QyxPQUFPLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRTtRQUN6RSxPQUFPLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsTUFBbUIsRUFBRSxNQUFlLEVBQVUsRUFBRTtJQUN6RSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLEVBQUUsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNqRSxJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUM7SUFFYixLQUFLLE1BQU0sQ0FBQyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQ3ZCLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFRCxPQUFPLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUNyRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUWVBFX09CSkVDVCB9IGZyb20gJ0BsaWJzLXVpL2ludGVyZmFjZXMtdHlwZXMnO1xuaW1wb3J0IHsgb21pdEJ5IH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IGlzTmlsIH0gZnJvbSAnLi9oZWxwZXJzJztcblxuZXhwb3J0IGNvbnN0IEVOQ09ERV9VUklfUEFUVEVSTiA9IC8lKFswLTlBLUZdezJ9KS9nO1xuXG5leHBvcnQgY29uc3QgZGVjb2RlVVJJID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChcbiAgICB2YWx1ZVxuICAgICAgLnNwbGl0KCcnKVxuICAgICAgLm1hcCgoYzogc3RyaW5nKSA9PiB7XG4gICAgICAgIHJldHVybiAnJScgKyAoJzAwJyArIGMuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNikpLnNsaWNlKC0yKTtcbiAgICAgIH0pXG4gICAgICAuam9pbignJylcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBlbmNvZGVVUkkgPSAodmFsdWU6IHN0cmluZykgPT4ge1xuICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKS5yZXBsYWNlKEVOQ09ERV9VUklfUEFUVEVSTiwgKG1hdGNoLCBwMSkgPT4ge1xuICAgIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKHBhcnNlSW50KHAxLCAxNikpO1xuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBlbmRDb2RlVXJsID0gKHBhcmFtczogVFlQRV9PQkpFQ1QsIGlzQm9keTogYm9vbGVhbik6IHN0cmluZyA9PiB7XG4gIHBhcmFtcyA9IG9taXRCeShwYXJhbXMsIChwYXJhbSkgPT4gcGFyYW0gPT09ICcnIHx8IGlzTmlsKHBhcmFtKSk7XG4gIGxldCByZXMgPSAnJztcblxuICBmb3IgKGNvbnN0IHAgaW4gcGFyYW1zKSB7XG4gICAgcmVzICs9IGAmJHtwfT0ke2VuY29kZVVSSUNvbXBvbmVudChwYXJhbXNbcF0pfWA7XG4gIH1cblxuICByZXR1cm4gcmVzID09PSAnJyA/ICcnIDogYCR7aXNCb2R5ID8gJycgOiAnPyd9JHtyZXMuc3Vic3RyaW5nKDEpfWA7XG59O1xuIl19
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
export class UtilsUrlSearchParams {
|
|
2
|
+
static instance;
|
|
3
|
+
params;
|
|
4
|
+
constructor(paramString) {
|
|
5
|
+
this.params = new Array();
|
|
6
|
+
this.params.length = 0;
|
|
7
|
+
this.params.push(...this.buildParams(paramString));
|
|
8
|
+
}
|
|
9
|
+
static getInstance() {
|
|
10
|
+
if (!this.instance) {
|
|
11
|
+
this.instance = new UtilsUrlSearchParams('');
|
|
12
|
+
}
|
|
13
|
+
return this.instance;
|
|
14
|
+
}
|
|
15
|
+
static toStringParamObject(params) {
|
|
16
|
+
const paramsArr = Object.keys(params).map((key) => {
|
|
17
|
+
return {
|
|
18
|
+
key,
|
|
19
|
+
value: params[key],
|
|
20
|
+
};
|
|
21
|
+
});
|
|
22
|
+
return UtilsUrlSearchParams.ToString(paramsArr);
|
|
23
|
+
}
|
|
24
|
+
static ToString(params) {
|
|
25
|
+
let paramsStr = '';
|
|
26
|
+
params
|
|
27
|
+
.sort((item1, item2) => item1.key.localeCompare(item2.key))
|
|
28
|
+
.forEach((item) => {
|
|
29
|
+
const { key, value } = item;
|
|
30
|
+
paramsStr = `${paramsStr}${paramsStr ? '&' : ''}${key}=${value}`;
|
|
31
|
+
});
|
|
32
|
+
return paramsStr;
|
|
33
|
+
}
|
|
34
|
+
buildParams(paramString) {
|
|
35
|
+
const paramsBuild = new Array();
|
|
36
|
+
if (!paramString) {
|
|
37
|
+
return paramsBuild;
|
|
38
|
+
}
|
|
39
|
+
const paramsError = paramString.split('?');
|
|
40
|
+
if (paramsError.length > 2) {
|
|
41
|
+
paramString = `${paramsError[0]}?${paramsError[1]}&${paramsError.slice(2).join('&')}`;
|
|
42
|
+
}
|
|
43
|
+
const params = paramString.replace(/\S+[?]/g, '').split('&');
|
|
44
|
+
if (params) {
|
|
45
|
+
params.forEach((param) => {
|
|
46
|
+
if (param.indexOf('=') < 0) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
let [key, value] = param.split('=');
|
|
50
|
+
key = key.replace(/[?&]+/g, '');
|
|
51
|
+
value = decodeURIComponent(value.replace(/\+/g, ' '));
|
|
52
|
+
if (!paramsBuild.some((param) => param.key === key)) {
|
|
53
|
+
paramsBuild.push({ key, value });
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
return paramsBuild;
|
|
58
|
+
}
|
|
59
|
+
set(key, value) {
|
|
60
|
+
const paramByKey = this.params.find((param) => param.key === key);
|
|
61
|
+
if (!paramByKey) {
|
|
62
|
+
this.params.push({ key, value: decodeURIComponent(value.replace(/\+/g, ' ')) });
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
paramByKey['value'] = value;
|
|
66
|
+
}
|
|
67
|
+
get(key) {
|
|
68
|
+
return this.params.find((param) => param.key === key)?.value;
|
|
69
|
+
}
|
|
70
|
+
has(key) {
|
|
71
|
+
return this.params.some((param) => param.key === key);
|
|
72
|
+
}
|
|
73
|
+
delete(key) {
|
|
74
|
+
const index = this.params.findIndex((param) => param.key === key);
|
|
75
|
+
if (index >= 0) {
|
|
76
|
+
this.params.splice(index, 1);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
length() {
|
|
80
|
+
return this.params.length;
|
|
81
|
+
}
|
|
82
|
+
toString(params) {
|
|
83
|
+
params = params || this.params;
|
|
84
|
+
return UtilsUrlSearchParams.ToString(params);
|
|
85
|
+
}
|
|
86
|
+
getParamObject() {
|
|
87
|
+
const params = {};
|
|
88
|
+
this.params.forEach((item) => {
|
|
89
|
+
params[item.key] = item.value;
|
|
90
|
+
});
|
|
91
|
+
return params;
|
|
92
|
+
}
|
|
93
|
+
compareParams(param1, param2) {
|
|
94
|
+
const params1 = this.toString(this.buildParams(param1));
|
|
95
|
+
const params2 = this.toString(this.buildParams(param2));
|
|
96
|
+
return params1 === params2;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXNlYXJjaC1wYXJhbXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzLXVpL3V0aWxzL3NyYy91cmwtc2VhcmNoLXBhcmFtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sb0JBQW9CO0lBQ3ZCLE1BQU0sQ0FBQyxRQUFRLENBQXVCO0lBQ3RDLE1BQU0sQ0FBd0M7SUFDdEQsWUFBWSxXQUFtQjtRQUM3QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksS0FBSyxFQUFrQyxDQUFDO1FBQzFELElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQVc7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksb0JBQW9CLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRU0sTUFBTSxDQUFDLG1CQUFtQixDQUFDLE1BQW1DO1FBQ25FLE1BQU0sU0FBUyxHQUEwQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3ZGLE9BQU87Z0JBQ0wsR0FBRztnQkFDSCxLQUFLLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQzthQUNuQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUE2QztRQUNsRSxJQUFJLFNBQVMs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QyxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxhQUFhLENBQUMsTUFBYyxFQUFFLE1BQWM7UUFDakQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDeEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFFeEQsT0FBTyxPQUFPLEtBQUssT0FBTyxDQUFDO0lBQzdCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBVdGlsc1VybFNlYXJjaFBhcmFtcyB7XG4gIHByaXZhdGUgc3RhdGljIGluc3RhbmNlOiBVdGlsc1VybFNlYXJjaFBhcmFtcztcbiAgcHJpdmF0ZSBwYXJhbXM6IEFycmF5PHsga2V5OiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfT47XG4gIGNvbnN0cnVjdG9yKHBhcmFtU3RyaW5nOiBzdHJpbmcpIHtcbiAgICB0aGlzLnBhcmFtcyA9IG5ldyBBcnJheTx7IGtleTogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH0+KCk7XG4gICAgdGhpcy5wYXJhbXMubGVuZ3RoID0gMDtcbiAgICB0aGlzLnBhcmFtcy5wdXNoKC4uLnRoaXMuYnVpbGRQYXJhbXMocGFyYW1TdHJpbmcpKTtcbiAgfVxuXG4gIHN0YXRpYyBnZXRJbnN0YW5jZSgpIHtcbiAgICBpZiAoIXRoaXMuaW5zdGFuY2UpIHtcbiAgICAgIHRoaXMuaW5zdGFuY2UgPSBuZXcgVXRpbHNVcmxTZWFyY2hQYXJhbXMoJycpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmluc3RhbmNlO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyB0b1N0cmluZ1BhcmFtT2JqZWN0KHBhcmFtczogeyBba2V5IGluIHN0cmluZ106IHN0cmluZyB9KSB7XG4gICAgY29uc3QgcGFyYW1zQXJyOiBBcnJheTx7IGtleTogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH0+ID0gT2JqZWN0LmtleXMocGFyYW1zKS5tYXAoKGtleSkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAga2V5LFxuICAgICAgICB2YWx1ZTogcGFyYW1zW2tleV0sXG4gICAgICB9O1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIFV0aWxzVXJsU2VhcmNoUGFyYW1zLlRvU3RyaW5nKHBhcmFtc0Fycik7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIFRvU3RyaW5nKHBhcmFtczogQXJyYXk8eyBrZXk6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9Pikge1xuICAgIGxldCBwYXJhbXNTdHIgPSAnJztcblxuICAgIHBhcmFtc1xuICAgICAgLnNvcnQoKGl0ZW0xLCBpdGVtMikgPT4gaXRlbTEua2V5LmxvY2FsZUNvbXBhcmUoaXRlbTIua2V5KSlcbiAgICAgIC5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgIGNvbnN0IHsga2V5LCB2YWx1ZSB9ID0gaXRlbTtcblxuICAgICAgICBwYXJhbXNTdHIgPSBgJHtwYXJhbXNTdHJ9JHtwYXJhbXNTdHIgPyAnJicgOiAnJ30ke2tleX09JHt2YWx1ZX1gO1xuICAgICAgfSk7XG5cbiAgICByZXR1cm4gcGFyYW1zU3RyO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFBhcmFtcyhwYXJhbVN0cmluZzogc3RyaW5nKTogQXJyYXk8eyBrZXk6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9PiB7XG4gICAgY29uc3QgcGFyYW1zQnVpbGQgPSBuZXcgQXJyYXk8eyBrZXk6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9PigpO1xuXG4gICAgaWYgKCFwYXJhbVN0cmluZykge1xuICAgICAgcmV0dXJuIHBhcmFtc0J1aWxkO1xuICAgIH1cblxuICAgIGNvbnN0IHBhcmFtc0Vycm9yID0gcGFyYW1TdHJpbmcuc3BsaXQoJz8nKTtcblxuICAgIGlmIChwYXJhbXNFcnJvci5sZW5ndGggPiAyKSB7XG4gICAgICBwYXJhbVN0cmluZyA9IGAke3BhcmFtc0Vycm9yWzBdfT8ke3BhcmFtc0Vycm9yWzFdfSYke3BhcmFtc0Vycm9yLnNsaWNlKDIpLmpvaW4oJyYnKX1gO1xuICAgIH1cblxuICAgIGNvbnN0IHBhcmFtcyA9IHBhcmFtU3RyaW5nLnJlcGxhY2UoL1xcUytbP10vZywgJycpLnNwbGl0KCcmJyk7XG5cbiAgICBpZiAocGFyYW1zKSB7XG4gICAgICBwYXJhbXMuZm9yRWFjaCgocGFyYW0pID0+IHtcbiAgICAgICAgaWYgKHBhcmFtLmluZGV4T2YoJz0nKSA8IDApIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgbGV0IFtrZXksIHZhbHVlXSA9IHBhcmFtLnNwbGl0KCc9Jyk7XG5cbiAgICAgICAga2V5ID0ga2V5LnJlcGxhY2UoL1s/Jl0rL2csICcnKTtcbiAgICAgICAgdmFsdWUgPSBkZWNvZGVVUklDb21wb25lbnQodmFsdWUucmVwbGFjZSgvXFwrL2csICcgJykpO1xuICAgICAgICBpZiAoIXBhcmFtc0J1aWxkLnNvbWUoKHBhcmFtKSA9PiBwYXJhbS5rZXkgPT09IGtleSkpIHtcbiAgICAgICAgICBwYXJhbXNCdWlsZC5wdXNoKHsga2V5LCB2YWx1ZSB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcmFtc0J1aWxkO1xuICB9XG5cbiAgcHVibGljIHNldChrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IHBhcmFtQnlLZXkgPSB0aGlzLnBhcmFtcy5maW5kKChwYXJhbSkgPT4gcGFyYW0ua2V5ID09PSBrZXkpIGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cbiAgICBpZiAoIXBhcmFtQnlLZXkpIHtcbiAgICAgIHRoaXMucGFyYW1zLnB1c2goeyBrZXksIHZhbHVlOiBkZWNvZGVVUklDb21wb25lbnQodmFsdWUucmVwbGFjZSgvXFwrL2csICcgJykpIH0pO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcGFyYW1CeUtleVsndmFsdWUnXSA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldChrZXk6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnBhcmFtcy5maW5kKChwYXJhbSkgPT4gcGFyYW0ua2V5ID09PSBrZXkpPy52YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBoYXMoa2V5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJhbXMuc29tZSgocGFyYW0pID0+IHBhcmFtLmtleSA9PT0ga2V5KTtcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGUoa2V5OiBzdHJpbmcpIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMucGFyYW1zLmZpbmRJbmRleCgocGFyYW0pID0+IHBhcmFtLmtleSA9PT0ga2V5KTtcblxuICAgIGlmIChpbmRleCA+PSAwKSB7XG4gICAgICB0aGlzLnBhcmFtcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBsZW5ndGgoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1zLmxlbmd0aDtcbiAgfVxuXG4gIHB1YmxpYyB0b1N0cmluZyhwYXJhbXM/OiBBcnJheTx7IGtleTogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH0+KSB7XG4gICAgcGFyYW1zID0gcGFyYW1zIHx8IHRoaXMucGFyYW1zO1xuXG4gICAgcmV0dXJuIFV0aWxzVXJsU2VhcmNoUGFyYW1zLlRvU3RyaW5nKHBhcmFtcyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0UGFyYW1PYmplY3QoKSB7XG4gICAgY29uc3QgcGFyYW1zID0ge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAgIHRoaXMucGFyYW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIHBhcmFtc1tpdGVtLmtleV0gPSBpdGVtLnZhbHVlO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHBhcmFtcztcbiAgfVxuXG4gIHB1YmxpYyBjb21wYXJlUGFyYW1zKHBhcmFtMTogc3RyaW5nLCBwYXJhbTI6IHN0cmluZykge1xuICAgIGNvbnN0IHBhcmFtczEgPSB0aGlzLnRvU3RyaW5nKHRoaXMuYnVpbGRQYXJhbXMocGFyYW0xKSk7XG4gICAgY29uc3QgcGFyYW1zMiA9IHRoaXMudG9TdHJpbmcodGhpcy5idWlsZFBhcmFtcyhwYXJhbTIpKTtcblxuICAgIHJldHVybiBwYXJhbXMxID09PSBwYXJhbXMyO1xuICB9XG59XG4iXX0=
|
package/esm2022/uuid.mjs
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { md5 } from './crypto';
|
|
2
|
+
export const uuid = () => {
|
|
3
|
+
const timestamp = performance.now() * 1000;
|
|
4
|
+
const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+-=[]{}|;:,.<>?/~';
|
|
5
|
+
let randomString = '';
|
|
6
|
+
for (let i = 0; i < 5; i++) {
|
|
7
|
+
randomString += chars.charAt(Math.floor(Math.random() * chars.length));
|
|
8
|
+
}
|
|
9
|
+
const baseString = `${Math.floor(timestamp)}-${randomString}`;
|
|
10
|
+
const charArray = baseString.split('');
|
|
11
|
+
for (let i = charArray.length - 1; i > 0; i--) {
|
|
12
|
+
const j = Math.floor(Math.random() * (i + 1));
|
|
13
|
+
[charArray[i], charArray[j]] = [charArray[j], charArray[i]];
|
|
14
|
+
}
|
|
15
|
+
const shuffledString = charArray.join('');
|
|
16
|
+
return md5(shuffledString);
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXVpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMtdWkvdXRpbHMvc3JjL3V1aWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUUvQixNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUcsR0FBVyxFQUFFO0lBQy9CLE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFDM0MsTUFBTSxLQUFLLEdBQUcsNEZBQTRGLENBQUM7SUFDM0csSUFBSSxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBRXRCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUMzQixZQUFZLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBQ0QsTUFBTSxVQUFVLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBQzlELE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFdkMsS0FBSyxJQUFJLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDOUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUU5QyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsTUFBTSxjQUFjLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUUxQyxPQUFPLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUM3QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtZDUgfSBmcm9tICcuL2NyeXB0byc7XG5cbmV4cG9ydCBjb25zdCB1dWlkID0gKCk6IHN0cmluZyA9PiB7XG4gIGNvbnN0IHRpbWVzdGFtcCA9IHBlcmZvcm1hbmNlLm5vdygpICogMTAwMDtcbiAgY29uc3QgY2hhcnMgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkhQCMkJV4mKigpXystPVtde318OzosLjw+Py9+JztcbiAgbGV0IHJhbmRvbVN0cmluZyA9ICcnO1xuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7XG4gICAgcmFuZG9tU3RyaW5nICs9IGNoYXJzLmNoYXJBdChNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaGFycy5sZW5ndGgpKTtcbiAgfVxuICBjb25zdCBiYXNlU3RyaW5nID0gYCR7TWF0aC5mbG9vcih0aW1lc3RhbXApfS0ke3JhbmRvbVN0cmluZ31gO1xuICBjb25zdCBjaGFyQXJyYXkgPSBiYXNlU3RyaW5nLnNwbGl0KCcnKTtcblxuICBmb3IgKGxldCBpID0gY2hhckFycmF5Lmxlbmd0aCAtIDE7IGkgPiAwOyBpLS0pIHtcbiAgICBjb25zdCBqID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKGkgKyAxKSk7XG5cbiAgICBbY2hhckFycmF5W2ldLCBjaGFyQXJyYXlbal1dID0gW2NoYXJBcnJheVtqXSwgY2hhckFycmF5W2ldXTtcbiAgfVxuXG4gIGNvbnN0IHNodWZmbGVkU3RyaW5nID0gY2hhckFycmF5LmpvaW4oJycpO1xuXG4gIHJldHVybiBtZDUoc2h1ZmZsZWRTdHJpbmcpO1xufTtcbiJdfQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
let functionXssFilter = async (value) => {
|
|
2
|
+
return value;
|
|
3
|
+
};
|
|
4
|
+
export const updateFunctionXssFilter = (functionCustom) => {
|
|
5
|
+
functionXssFilter = functionCustom;
|
|
6
|
+
};
|
|
7
|
+
export const xssFilter = async (data) => {
|
|
8
|
+
return await functionXssFilter(data);
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHNzLWZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMtdWkvdXRpbHMvc3JjL3hzcy1maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsSUFBSSxpQkFBaUIsR0FBc0IsS0FBSyxFQUFFLEtBQWEsRUFBbUIsRUFBRTtJQUNsRixPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLENBQUMsY0FBaUMsRUFBRSxFQUFFO0lBQzNFLGlCQUFpQixHQUFHLGNBQWMsQ0FBQztBQUNyQyxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQXNCLEtBQUssRUFBRSxJQUFZLEVBQUUsRUFBRTtJQUNqRSxPQUFPLE1BQU0saUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDdkMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgVFlQRV9GVU5DVElPTl9YU1MgPSAoZGF0YTogc3RyaW5nKSA9PiBQcm9taXNlPHN0cmluZz47XG5sZXQgZnVuY3Rpb25Yc3NGaWx0ZXI6IFRZUEVfRlVOQ1RJT05fWFNTID0gYXN5bmMgKHZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4gPT4ge1xuICByZXR1cm4gdmFsdWU7XG59O1xuXG5leHBvcnQgY29uc3QgdXBkYXRlRnVuY3Rpb25Yc3NGaWx0ZXIgPSAoZnVuY3Rpb25DdXN0b206IFRZUEVfRlVOQ1RJT05fWFNTKSA9PiB7XG4gIGZ1bmN0aW9uWHNzRmlsdGVyID0gZnVuY3Rpb25DdXN0b207XG59O1xuXG5leHBvcnQgY29uc3QgeHNzRmlsdGVyOiBUWVBFX0ZVTkNUSU9OX1hTUyA9IGFzeW5jIChkYXRhOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGZ1bmN0aW9uWHNzRmlsdGVyKGRhdGEpO1xufTtcbiJdfQ==
|