@atcute/uint8array 1.0.2 → 1.0.3
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/index.bun.d.ts +4 -0
- package/dist/index.bun.js +56 -5
- package/dist/index.bun.js.map +1 -1
- package/dist/index.d.ts +6 -2
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/index.node.d.ts +1 -0
- package/dist/index.node.js +4 -0
- package/dist/index.node.js.map +1 -1
- package/lib/index.bun.ts +68 -9
- package/lib/index.node.ts +5 -0
- package/lib/index.ts +9 -2
- package/package.json +1 -1
package/dist/index.bun.d.ts
CHANGED
|
@@ -4,6 +4,10 @@ export declare const compare: (a: Uint8Array, b: Uint8Array) => number;
|
|
|
4
4
|
export declare const equals: (a: Uint8Array, b: Uint8Array) => boolean;
|
|
5
5
|
export declare const timingSafeEquals: (a: Uint8Array, b: Uint8Array) => boolean;
|
|
6
6
|
export declare const concat: (arrays: Uint8Array[], size?: number) => Uint8Array;
|
|
7
|
+
export declare const encodeUtf8: (str: string) => Uint8Array;
|
|
7
8
|
export declare const encodeUtf8Into: (to: Uint8Array, str: string, offset?: number, length?: number) => number;
|
|
9
|
+
/**
|
|
10
|
+
* decodes a UTF-8 string from a given buffer
|
|
11
|
+
*/
|
|
8
12
|
export declare const decodeUtf8From: (from: Uint8Array, offset?: number, length?: number) => string;
|
|
9
13
|
export declare const toSha256: (buffer: Uint8Array) => Promise<Uint8Array>;
|
package/dist/index.bun.js
CHANGED
|
@@ -3,8 +3,8 @@ import { Buffer as NodeBuffer } from 'node:buffer';
|
|
|
3
3
|
import { hash as _hash, timingSafeEqual as _timingSafeEqual } from 'node:crypto';
|
|
4
4
|
const _compare = /*#__PURE__*/ NodeBuffer.prototype.compare;
|
|
5
5
|
const _equals = /*#__PURE__*/ NodeBuffer.prototype.equals;
|
|
6
|
-
const
|
|
7
|
-
const
|
|
6
|
+
const textEncoder = new TextEncoder();
|
|
7
|
+
const textDecoder = new TextDecoder();
|
|
8
8
|
const toUint8Array = (buffer) => {
|
|
9
9
|
return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
|
|
10
10
|
};
|
|
@@ -25,11 +25,62 @@ export const concat = (arrays, size) => {
|
|
|
25
25
|
// Bun's typings is slightly wrong, *you can* pass `size: undefined` with `asUint8Array: true`
|
|
26
26
|
return _concat(arrays, size, true);
|
|
27
27
|
};
|
|
28
|
+
export const encodeUtf8 = textEncoder.encode.bind(textEncoder);
|
|
28
29
|
export const encodeUtf8Into = (to, str, offset, length) => {
|
|
29
|
-
|
|
30
|
+
let buffer;
|
|
31
|
+
if (offset === undefined) {
|
|
32
|
+
buffer = to;
|
|
33
|
+
}
|
|
34
|
+
else if (length === undefined) {
|
|
35
|
+
buffer = to.subarray(offset);
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
buffer = to.subarray(offset, offset + length);
|
|
39
|
+
}
|
|
40
|
+
const result = textEncoder.encodeInto(str, buffer);
|
|
41
|
+
return result.written;
|
|
30
42
|
};
|
|
31
|
-
|
|
32
|
-
|
|
43
|
+
const fromCharCode = String.fromCharCode;
|
|
44
|
+
/**
|
|
45
|
+
* decodes a UTF-8 string from a given buffer
|
|
46
|
+
*/
|
|
47
|
+
export const decodeUtf8From = (from, offset, length) => {
|
|
48
|
+
let buffer;
|
|
49
|
+
if (offset === undefined) {
|
|
50
|
+
buffer = from;
|
|
51
|
+
}
|
|
52
|
+
else if (length === undefined) {
|
|
53
|
+
buffer = from.subarray(offset);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
buffer = from.subarray(offset, offset + length);
|
|
57
|
+
}
|
|
58
|
+
const end = buffer.length;
|
|
59
|
+
if (end > 24) {
|
|
60
|
+
return textDecoder.decode(buffer);
|
|
61
|
+
}
|
|
62
|
+
{
|
|
63
|
+
let str = '';
|
|
64
|
+
let idx = 0;
|
|
65
|
+
for (; idx + 3 < end; idx += 4) {
|
|
66
|
+
const a = buffer[idx];
|
|
67
|
+
const b = buffer[idx + 1];
|
|
68
|
+
const c = buffer[idx + 2];
|
|
69
|
+
const d = buffer[idx + 3];
|
|
70
|
+
if ((a | b | c | d) & 0x80) {
|
|
71
|
+
return str + textDecoder.decode(buffer.subarray(idx));
|
|
72
|
+
}
|
|
73
|
+
str += fromCharCode(a, b, c, d);
|
|
74
|
+
}
|
|
75
|
+
for (; idx < end; idx++) {
|
|
76
|
+
const x = buffer[idx];
|
|
77
|
+
if (x & 0x80) {
|
|
78
|
+
return str + textDecoder.decode(buffer.subarray(idx));
|
|
79
|
+
}
|
|
80
|
+
str += fromCharCode(x);
|
|
81
|
+
}
|
|
82
|
+
return str;
|
|
83
|
+
}
|
|
33
84
|
};
|
|
34
85
|
export const toSha256 = async (buffer) => {
|
|
35
86
|
return toUint8Array(_hash('sha256', buffer, 'buffer'));
|
package/dist/index.bun.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.bun.js","sourceRoot":"","sources":["../lib/index.bun.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,kBAAkB,IAAI,OAAO,EAAE,MAAM,KAAK,CAAC;AAEjF,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEjF,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC;AAC5D,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.bun.js","sourceRoot":"","sources":["../lib/index.bun.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -24,11 +24,15 @@ export declare const timingSafeEquals: (a: Uint8Array, b: Uint8Array) => boolean
|
|
|
24
24
|
*/
|
|
25
25
|
export declare const concat: (arrays: Uint8Array[], size?: number) => Uint8Array;
|
|
26
26
|
/**
|
|
27
|
-
* encodes a UTF-8 string
|
|
27
|
+
* encodes a UTF-8 string
|
|
28
|
+
*/
|
|
29
|
+
export declare const encodeUtf8: (str: string) => Uint8Array;
|
|
30
|
+
/**
|
|
31
|
+
* encodes a UTF-8 string into a given buffer
|
|
28
32
|
*/
|
|
29
33
|
export declare const encodeUtf8Into: (to: Uint8Array, str: string, offset?: number, length?: number) => number;
|
|
30
34
|
/**
|
|
31
|
-
* decodes a UTF-8 string from a buffer
|
|
35
|
+
* decodes a UTF-8 string from a given buffer
|
|
32
36
|
*/
|
|
33
37
|
export declare const decodeUtf8From: (from: Uint8Array, offset?: number, length?: number) => string;
|
|
34
38
|
/**
|
package/dist/index.js
CHANGED
|
@@ -88,7 +88,13 @@ export const concat = (arrays, size) => {
|
|
|
88
88
|
return buffer;
|
|
89
89
|
};
|
|
90
90
|
/**
|
|
91
|
-
* encodes a UTF-8 string
|
|
91
|
+
* encodes a UTF-8 string
|
|
92
|
+
*/
|
|
93
|
+
export const encodeUtf8 = (str) => {
|
|
94
|
+
return textEncoder.encode(str);
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* encodes a UTF-8 string into a given buffer
|
|
92
98
|
*/
|
|
93
99
|
export const encodeUtf8Into = (to, str, offset, length) => {
|
|
94
100
|
let buffer;
|
|
@@ -106,7 +112,7 @@ export const encodeUtf8Into = (to, str, offset, length) => {
|
|
|
106
112
|
};
|
|
107
113
|
const fromCharCode = String.fromCharCode;
|
|
108
114
|
/**
|
|
109
|
-
* decodes a UTF-8 string from a buffer
|
|
115
|
+
* decodes a UTF-8 string from a given buffer
|
|
110
116
|
*/
|
|
111
117
|
export const decodeUtf8From = (from, offset, length) => {
|
|
112
118
|
let buffer;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AACtC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAE7B;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAc,EAAE;IACjD,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC;AAEjC;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAa,EAAE,CAAa,EAAU,EAAE;IAC/D,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC;IACtB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC;IAEtB,IAAI,IAAI,GAAG,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,CAAC;IACV,CAAC;IACD,IAAI,IAAI,GAAG,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,CAAC,CAAC;IACX,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAEhB,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;YACb,OAAO,CAAC,CAAC,CAAC;QACX,CAAC;QAED,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;YACb,OAAO,CAAC,CAAC;QACV,CAAC;IACF,CAAC;IAED,OAAO,CAAC,CAAC;AACV,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAa,EAAE,CAAa,EAAW,EAAE;IAC/D,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QACnC,OAAO,GAAG,EAAE,EAAE,CAAC;YACd,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;AACnB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAa,EAAE,CAAa,EAAW,EAAE;IACzE,IAAI,GAAW,CAAC;IAChB,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QACnC,OAAO,GAAG,EAAE,EAAE,CAAC;YACd,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;IACF,CAAC;IAED,OAAO,GAAG,KAAK,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,MAAoB,EAAE,IAAa,EAAc,EAAE;IACzE,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;IACxB,IAAI,GAAW,CAAC;IAEhB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACxB,KAAK,GAAG,GAAG,IAAI,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;YACvC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAC1B,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC;QACtB,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAEpC,KAAK,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAE1B,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC3B,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC;IACzB,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAc,EAAE;IACrD,OAAO,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAc,EAAE,GAAW,EAAE,MAAe,EAAE,MAAe,EAAU,EAAE;IACvG,IAAI,MAAkB,CAAC;IAEvB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,GAAG,EAAE,CAAC;IACb,CAAC;SAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;SAAM,CAAC;QACP,MAAM,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAEnD,OAAO,MAAM,CAAC,OAAO,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAgB,EAAE,MAAe,EAAE,MAAe,EAAU,EAAE;IAC5F,IAAI,MAAkB,CAAC;IAEvB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,GAAG,IAAI,CAAC;IACf,CAAC;SAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;SAAM,CAAC;QACP,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1B,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;QACd,OAAO,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,CAAC;QACA,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,GAAG,CAAC,CAAC;QAEZ,OAAO,GAAG,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YACtB,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YAE1B,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;gBAC5B,OAAO,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACvD,CAAC;YAED,GAAG,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,CAAC;QAED,OAAO,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;YACzB,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAEtB,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;gBACd,OAAO,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACvD,CAAC;YAED,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QAED,OAAO,GAAG,CAAC;IACZ,CAAC;AACF,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAAE,MAAkB,EAAuB,EAAE;IACzE,OAAO,IAAI,UAAU,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAC"}
|
package/dist/index.node.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export declare const compare: (a: Uint8Array, b: Uint8Array) => number;
|
|
|
4
4
|
export declare const equals: (a: Uint8Array, b: Uint8Array) => boolean;
|
|
5
5
|
export declare const timingSafeEquals: (a: Uint8Array, b: Uint8Array) => boolean;
|
|
6
6
|
export declare const concat: (arrays: Uint8Array[], size?: number) => Uint8Array;
|
|
7
|
+
export declare const encodeUtf8: (str: string) => Uint8Array;
|
|
7
8
|
export declare const encodeUtf8Into: (to: Uint8Array, str: string, offset?: number, length?: number) => number;
|
|
8
9
|
export declare const decodeUtf8From: (from: Uint8Array, offset?: number, length?: number) => string;
|
|
9
10
|
export declare const toSha256: (buffer: Uint8Array) => Promise<Uint8Array>;
|
package/dist/index.node.js
CHANGED
|
@@ -3,6 +3,7 @@ import { hash as _hash, timingSafeEqual as _timingSafeEqual } from 'node:crypto'
|
|
|
3
3
|
const _alloc = /*#__PURE__*/ NodeBuffer.alloc;
|
|
4
4
|
const _allocUnsafe = /*#__PURE__*/ NodeBuffer.allocUnsafe;
|
|
5
5
|
const _concat = /*#__PURE__*/ NodeBuffer.concat;
|
|
6
|
+
const _from = /*#__PURE__*/ NodeBuffer.from;
|
|
6
7
|
const _compare = /*#__PURE__*/ NodeBuffer.prototype.compare;
|
|
7
8
|
const _equals = /*#__PURE__*/ NodeBuffer.prototype.equals;
|
|
8
9
|
const _utf8Slice = /*#__PURE__*/ NodeBuffer.prototype.utf8Slice;
|
|
@@ -28,6 +29,9 @@ export const timingSafeEquals = (a, b) => {
|
|
|
28
29
|
export const concat = (arrays, size) => {
|
|
29
30
|
return toUint8Array(_concat(arrays, size));
|
|
30
31
|
};
|
|
32
|
+
export const encodeUtf8 = (str) => {
|
|
33
|
+
return toUint8Array(_from(str, 'utf8'));
|
|
34
|
+
};
|
|
31
35
|
export const encodeUtf8Into = (to, str, offset, length) => {
|
|
32
36
|
return _utf8Write.call(to, str, offset, length);
|
|
33
37
|
};
|
package/dist/index.node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.node.js","sourceRoot":"","sources":["../lib/index.node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEjF,MAAM,MAAM,GAAG,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC;AAC9C,MAAM,YAAY,GAAG,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC;AAC1D,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.node.js","sourceRoot":"","sources":["../lib/index.node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEjF,MAAM,MAAM,GAAG,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC;AAC9C,MAAM,YAAY,GAAG,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC;AAC1D,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC;AAChD,MAAM,KAAK,GAAG,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC;AAE5C,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC;AAC5D,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC;AAC1D,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC;AAChE,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC;AAEhE,MAAM,YAAY,GAAG,CAAC,MAAkB,EAAE,EAAE;IAC3C,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;AAC5E,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAc,EAAE;IACjD,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAY,EAAc,EAAE;IACvD,OAAO,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;AACzC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAa,EAAE,CAAa,EAAU,EAAE;IAC/D,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAa,EAAE,CAAa,EAAW,EAAE;IAC/D,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAa,EAAE,CAAa,EAAW,EAAE;IACzE,OAAO,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,MAAoB,EAAE,IAAa,EAAc,EAAE;IACzE,OAAO,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAc,EAAE;IACrD,OAAO,YAAY,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;AACzC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAc,EAAE,GAAW,EAAE,MAAe,EAAE,MAAe,EAAU,EAAE;IACvG,OAAO,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAC7B,IAAgB,EAChB,SAAiB,CAAC,EAClB,SAAiB,IAAI,CAAC,MAAM,EACnB,EAAE;IACX,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAAE,MAAkB,EAAuB,EAAE;IACzE,OAAO,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AACxD,CAAC,CAAC"}
|
package/lib/index.bun.ts
CHANGED
|
@@ -5,8 +5,9 @@ import { hash as _hash, timingSafeEqual as _timingSafeEqual } from 'node:crypto'
|
|
|
5
5
|
|
|
6
6
|
const _compare = /*#__PURE__*/ NodeBuffer.prototype.compare;
|
|
7
7
|
const _equals = /*#__PURE__*/ NodeBuffer.prototype.equals;
|
|
8
|
-
|
|
9
|
-
const
|
|
8
|
+
|
|
9
|
+
const textEncoder = new TextEncoder();
|
|
10
|
+
const textDecoder = new TextDecoder();
|
|
10
11
|
|
|
11
12
|
const toUint8Array = (buffer: NodeBuffer) => {
|
|
12
13
|
return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
|
|
@@ -35,16 +36,74 @@ export const concat = (arrays: Uint8Array[], size?: number): Uint8Array => {
|
|
|
35
36
|
return _concat(arrays, size as number, true);
|
|
36
37
|
};
|
|
37
38
|
|
|
39
|
+
export const encodeUtf8: (str: string) => Uint8Array = textEncoder.encode.bind(textEncoder);
|
|
40
|
+
|
|
38
41
|
export const encodeUtf8Into = (to: Uint8Array, str: string, offset?: number, length?: number): number => {
|
|
39
|
-
|
|
42
|
+
let buffer: Uint8Array;
|
|
43
|
+
|
|
44
|
+
if (offset === undefined) {
|
|
45
|
+
buffer = to;
|
|
46
|
+
} else if (length === undefined) {
|
|
47
|
+
buffer = to.subarray(offset);
|
|
48
|
+
} else {
|
|
49
|
+
buffer = to.subarray(offset, offset + length);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
const result = textEncoder.encodeInto(str, buffer);
|
|
53
|
+
|
|
54
|
+
return result.written;
|
|
40
55
|
};
|
|
41
56
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
57
|
+
const fromCharCode = String.fromCharCode;
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* decodes a UTF-8 string from a given buffer
|
|
61
|
+
*/
|
|
62
|
+
export const decodeUtf8From = (from: Uint8Array, offset?: number, length?: number): string => {
|
|
63
|
+
let buffer: Uint8Array;
|
|
64
|
+
|
|
65
|
+
if (offset === undefined) {
|
|
66
|
+
buffer = from;
|
|
67
|
+
} else if (length === undefined) {
|
|
68
|
+
buffer = from.subarray(offset);
|
|
69
|
+
} else {
|
|
70
|
+
buffer = from.subarray(offset, offset + length);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const end = buffer.length;
|
|
74
|
+
if (end > 24) {
|
|
75
|
+
return textDecoder.decode(buffer);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
{
|
|
79
|
+
let str = '';
|
|
80
|
+
let idx = 0;
|
|
81
|
+
|
|
82
|
+
for (; idx + 3 < end; idx += 4) {
|
|
83
|
+
const a = buffer[idx];
|
|
84
|
+
const b = buffer[idx + 1];
|
|
85
|
+
const c = buffer[idx + 2];
|
|
86
|
+
const d = buffer[idx + 3];
|
|
87
|
+
|
|
88
|
+
if ((a | b | c | d) & 0x80) {
|
|
89
|
+
return str + textDecoder.decode(buffer.subarray(idx));
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
str += fromCharCode(a, b, c, d);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
for (; idx < end; idx++) {
|
|
96
|
+
const x = buffer[idx];
|
|
97
|
+
|
|
98
|
+
if (x & 0x80) {
|
|
99
|
+
return str + textDecoder.decode(buffer.subarray(idx));
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
str += fromCharCode(x);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
return str;
|
|
106
|
+
}
|
|
48
107
|
};
|
|
49
108
|
|
|
50
109
|
export const toSha256 = async (buffer: Uint8Array): Promise<Uint8Array> => {
|
package/lib/index.node.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { hash as _hash, timingSafeEqual as _timingSafeEqual } from 'node:crypto'
|
|
|
4
4
|
const _alloc = /*#__PURE__*/ NodeBuffer.alloc;
|
|
5
5
|
const _allocUnsafe = /*#__PURE__*/ NodeBuffer.allocUnsafe;
|
|
6
6
|
const _concat = /*#__PURE__*/ NodeBuffer.concat;
|
|
7
|
+
const _from = /*#__PURE__*/ NodeBuffer.from;
|
|
7
8
|
|
|
8
9
|
const _compare = /*#__PURE__*/ NodeBuffer.prototype.compare;
|
|
9
10
|
const _equals = /*#__PURE__*/ NodeBuffer.prototype.equals;
|
|
@@ -38,6 +39,10 @@ export const concat = (arrays: Uint8Array[], size?: number): Uint8Array => {
|
|
|
38
39
|
return toUint8Array(_concat(arrays, size));
|
|
39
40
|
};
|
|
40
41
|
|
|
42
|
+
export const encodeUtf8 = (str: string): Uint8Array => {
|
|
43
|
+
return toUint8Array(_from(str, 'utf8'));
|
|
44
|
+
};
|
|
45
|
+
|
|
41
46
|
export const encodeUtf8Into = (to: Uint8Array, str: string, offset?: number, length?: number): number => {
|
|
42
47
|
return _utf8Write.call(to, str, offset, length);
|
|
43
48
|
};
|
package/lib/index.ts
CHANGED
|
@@ -110,7 +110,14 @@ export const concat = (arrays: Uint8Array[], size?: number): Uint8Array => {
|
|
|
110
110
|
};
|
|
111
111
|
|
|
112
112
|
/**
|
|
113
|
-
* encodes a UTF-8 string
|
|
113
|
+
* encodes a UTF-8 string
|
|
114
|
+
*/
|
|
115
|
+
export const encodeUtf8 = (str: string): Uint8Array => {
|
|
116
|
+
return textEncoder.encode(str);
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* encodes a UTF-8 string into a given buffer
|
|
114
121
|
*/
|
|
115
122
|
export const encodeUtf8Into = (to: Uint8Array, str: string, offset?: number, length?: number): number => {
|
|
116
123
|
let buffer: Uint8Array;
|
|
@@ -131,7 +138,7 @@ export const encodeUtf8Into = (to: Uint8Array, str: string, offset?: number, len
|
|
|
131
138
|
const fromCharCode = String.fromCharCode;
|
|
132
139
|
|
|
133
140
|
/**
|
|
134
|
-
* decodes a UTF-8 string from a buffer
|
|
141
|
+
* decodes a UTF-8 string from a given buffer
|
|
135
142
|
*/
|
|
136
143
|
export const decodeUtf8From = (from: Uint8Array, offset?: number, length?: number): string => {
|
|
137
144
|
let buffer: Uint8Array;
|