@wener/utils 1.1.12 → 1.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/globalThis-ee7c1669.js +2 -0
- package/dist/cjs/globalThis-ee7c1669.js.map +1 -0
- package/dist/cjs/index.cjs +2 -2
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/server.cjs +1 -1
- package/dist/cjs/server.cjs.map +1 -1
- package/dist/esm/globalThis-000611c3.js +2 -0
- package/dist/esm/globalThis-000611c3.js.map +1 -0
- package/dist/esm/index.js +4 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/server.js +1 -1
- package/dist/esm/server.js.map +1 -1
- package/dist/system/globalThis-7bba6592.js +2 -0
- package/dist/system/globalThis-7bba6592.js.map +1 -0
- package/dist/system/index.js +4 -4
- package/dist/system/index.js.map +1 -1
- package/dist/system/server.js +1 -1
- package/dist/system/server.js.map +1 -1
- package/lib/asyncs/timeout.js +3 -1
- package/lib/asyncs/timeout.js.map +1 -1
- package/lib/browsers/copy.js.map +1 -1
- package/lib/browsers/download.js +3 -1
- package/lib/browsers/download.js.map +1 -1
- package/lib/browsers/loaders.js +6 -2
- package/lib/browsers/loaders.js.map +1 -1
- package/lib/crypto/getRandomValues.js +1 -0
- package/lib/crypto/getRandomValues.js.map +1 -1
- package/lib/crypto/randomUUID.js +2 -0
- package/lib/crypto/randomUUID.js.map +1 -1
- package/lib/i18n/createTranslate.js +2 -1
- package/lib/i18n/createTranslate.js.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/io/ArrayBuffers.js +1 -0
- package/lib/io/ArrayBuffers.js.map +1 -1
- package/lib/io/isTransferable.js +2 -0
- package/lib/io/isTransferable.js.map +1 -1
- package/lib/isomorphics/getGlobalThis.js.map +1 -1
- package/lib/isomorphics/globalThis.js +6 -0
- package/lib/isomorphics/globalThis.js.map +1 -0
- package/lib/isomorphics/structuredClone.js +1 -0
- package/lib/isomorphics/structuredClone.js.map +1 -1
- package/lib/logging/createLogger.js +15 -5
- package/lib/logging/createLogger.js.map +1 -1
- package/lib/servers/createProxyFetch.js +2 -0
- package/lib/servers/createProxyFetch.js.map +1 -1
- package/lib/servers/polyfillCrypto.js +2 -0
- package/lib/servers/polyfillCrypto.js.map +1 -1
- package/lib/servers/polyfillJsDom.js +2 -0
- package/lib/servers/polyfillJsDom.js.map +1 -1
- package/package.json +1 -1
- package/src/asyncs/timeout.ts +1 -1
- package/src/browsers/copy.ts +1 -1
- package/src/browsers/download.ts +1 -1
- package/src/browsers/loaders.ts +2 -2
- package/src/crypto/getRandomValues.ts +1 -0
- package/src/crypto/randomUUID.ts +2 -0
- package/src/i18n/createTranslate.ts +2 -1
- package/src/index.ts +1 -0
- package/src/io/ArrayBuffers.ts +1 -0
- package/src/io/isTransferable.ts +2 -0
- package/src/isomorphics/getGlobalThis.ts +3 -1
- package/src/isomorphics/globalThis.ts +3 -0
- package/src/isomorphics/structuredClone.ts +1 -0
- package/src/logging/createLogger.ts +5 -5
- package/src/objects/set.test.ts +1 -1
- package/src/servers/createProxyFetch.ts +2 -1
- package/src/servers/polyfillCrypto.ts +3 -1
- package/src/servers/polyfillJsDom.ts +1 -0
- package/src/servers/polyfillWebSocket.ts +1 -0
package/package.json
CHANGED
package/src/asyncs/timeout.ts
CHANGED
|
@@ -4,7 +4,7 @@ export function timeout<T = any>(v: Promise<T>, ms: number): Promise<T> {
|
|
|
4
4
|
return Promise.race([
|
|
5
5
|
v,
|
|
6
6
|
new Promise((_resolve, reject) => {
|
|
7
|
-
timeout = setTimeout(() => reject(error), ms);
|
|
7
|
+
timeout = setTimeout(() => { reject(error); }, ms);
|
|
8
8
|
}),
|
|
9
9
|
]).then(
|
|
10
10
|
(v) => {
|
package/src/browsers/copy.ts
CHANGED
package/src/browsers/download.ts
CHANGED
|
@@ -26,7 +26,7 @@ export function download(filename: string, data: any, { type = 'application/octe
|
|
|
26
26
|
|
|
27
27
|
if (data instanceof File || data instanceof Blob || data instanceof MediaSource) {
|
|
28
28
|
a.href = URL.createObjectURL(data);
|
|
29
|
-
closer = () => URL.revokeObjectURL(a.href);
|
|
29
|
+
closer = () => { URL.revokeObjectURL(a.href); };
|
|
30
30
|
} else {
|
|
31
31
|
console.error(`invalid download data`, data);
|
|
32
32
|
throw new Error(`can not download ${Object.getPrototypeOf(data)}`);
|
package/src/browsers/loaders.ts
CHANGED
|
@@ -4,13 +4,13 @@ function load(
|
|
|
4
4
|
reject: (v: any) => void,
|
|
5
5
|
options: { attributes: Record<string, string> } | undefined,
|
|
6
6
|
) {
|
|
7
|
-
el.onload = () => resolve(el);
|
|
7
|
+
el.onload = () => { resolve(el); };
|
|
8
8
|
el.onerror = (e) => {
|
|
9
9
|
el.remove();
|
|
10
10
|
reject(e);
|
|
11
11
|
};
|
|
12
12
|
const { attributes = {} } = options || {};
|
|
13
|
-
Object.entries(attributes).forEach(([k, v]) => el.setAttribute(k, v));
|
|
13
|
+
Object.entries(attributes).forEach(([k, v]) => { el.setAttribute(k, v); });
|
|
14
14
|
|
|
15
15
|
document.head.appendChild(el);
|
|
16
16
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// eslint-disable-next-line @typescript-eslint/consistent-type-imports
|
|
2
2
|
import type { TypedArray } from '../io/ArrayBuffers';
|
|
3
|
+
import { globalThis } from '../isomorphics/globalThis';
|
|
3
4
|
import { getNodeCrypto } from './getNodeCrypto';
|
|
4
5
|
|
|
5
6
|
export let getRandomValues: <T extends Exclude<TypedArray, Float32Array | Float64Array>>(typedArray: T) => T =
|
package/src/crypto/randomUUID.ts
CHANGED
|
@@ -53,11 +53,12 @@ export function createTranslate<T extends object>(obj?: Record<string, T>): Tran
|
|
|
53
53
|
}
|
|
54
54
|
if (process.env.NODE_ENV === 'development') {
|
|
55
55
|
if (val == null) {
|
|
56
|
-
|
|
56
|
+
console.error(
|
|
57
57
|
`[Translate] Missing the "${[].concat(key as any).join('.')}" key within the "${
|
|
58
58
|
lang || locale
|
|
59
59
|
}" dictionary`,
|
|
60
60
|
);
|
|
61
|
+
return;
|
|
61
62
|
}
|
|
62
63
|
}
|
|
63
64
|
if (typeof val === 'function') return val(params);
|
package/src/index.ts
CHANGED
|
@@ -72,6 +72,7 @@ export { getFileFromDataTransfer } from './browsers/getFileFromDataTransfer';
|
|
|
72
72
|
|
|
73
73
|
// polyfills
|
|
74
74
|
export { getGlobalThis } from './isomorphics/getGlobalThis';
|
|
75
|
+
export { globalThis } from './isomorphics/globalThis';
|
|
75
76
|
export { structuredClone } from './isomorphics/structuredClone';
|
|
76
77
|
|
|
77
78
|
// crypto
|
package/src/io/ArrayBuffers.ts
CHANGED
package/src/io/isTransferable.ts
CHANGED
|
@@ -5,6 +5,8 @@ declare const global: typeof globalThis;
|
|
|
5
5
|
*
|
|
6
6
|
* globalThis supported by ff 65, Chrome 71, Node 12, babel
|
|
7
7
|
*
|
|
8
|
+
* non-standard globalThis supported for Alipay Miniprogram
|
|
9
|
+
*
|
|
8
10
|
* @see https://caniuse.com/#search=globalThis
|
|
9
11
|
* @see https://v8.dev/features/globalthis
|
|
10
12
|
*/
|
|
@@ -13,6 +15,6 @@ export const getGlobalThis = (): typeof globalThis => {
|
|
|
13
15
|
if (typeof self !== 'undefined') return self;
|
|
14
16
|
if (typeof window !== 'undefined') return window;
|
|
15
17
|
if (typeof global !== 'undefined') return global as any;
|
|
16
|
-
|
|
18
|
+
if (typeof this !== 'undefined') return this as any;
|
|
17
19
|
throw new Error('Unable to locate global `this`');
|
|
18
20
|
};
|
|
@@ -12,11 +12,11 @@ export function createLogger(
|
|
|
12
12
|
context: object = {},
|
|
13
13
|
): LoggerWithChild {
|
|
14
14
|
return {
|
|
15
|
-
trace: (...values) => write({ ...context, level: 'trace', values }),
|
|
16
|
-
debug: (...values) => write({ ...context, level: 'debug', values }),
|
|
17
|
-
info: (...values) => write({ ...context, level: 'info', values }),
|
|
18
|
-
warn: (...values) => write({ ...context, level: 'warn', values }),
|
|
19
|
-
error: (...values) => write({ ...context, level: 'error', values }),
|
|
15
|
+
trace: (...values) => { write({ ...context, level: 'trace', values }); },
|
|
16
|
+
debug: (...values) => { write({ ...context, level: 'debug', values }); },
|
|
17
|
+
info: (...values) => { write({ ...context, level: 'info', values }); },
|
|
18
|
+
warn: (...values) => { write({ ...context, level: 'warn', values }); },
|
|
19
|
+
error: (...values) => { write({ ...context, level: 'error', values }); },
|
|
20
20
|
child: (ctx) => createLogger(write, { ...context, ...ctx }),
|
|
21
21
|
};
|
|
22
22
|
}
|
package/src/objects/set.test.ts
CHANGED
|
@@ -28,7 +28,7 @@ test('set objects', (t) => {
|
|
|
28
28
|
const orig = set;
|
|
29
29
|
|
|
30
30
|
function run(isMerge: boolean) {
|
|
31
|
-
const set = (a: any, b: any, c: any) => orig(a, b, c, isMerge);
|
|
31
|
+
const set = (a: any, b: any, c: any) => { orig(a, b, c, isMerge); };
|
|
32
32
|
const verb = isMerge ? 'merge' : 'overwrite';
|
|
33
33
|
objects(`should ${verb} existing object value :: simple`, () => {
|
|
34
34
|
const { input } = prepare({
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import { globalThis } from '../isomorphics/globalThis';
|
|
2
|
+
|
|
1
3
|
export async function polyfillCrypto() {
|
|
2
4
|
if ('crypto' in globalThis) {
|
|
3
5
|
return false;
|
|
4
6
|
}
|
|
5
|
-
globalThis.crypto = (await import('node:crypto')).webcrypto as Crypto;
|
|
7
|
+
(globalThis as any).crypto = (await import('node:crypto')).webcrypto as Crypto;
|
|
6
8
|
return true;
|
|
7
9
|
}
|