saro-dat 1.0.1 → 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/dist/crypto.d.ts +9 -4
- package/dist/crypto.d.ts.map +1 -1
- package/dist/crypto.js +34 -26
- package/dist/crypto.js.map +1 -1
- package/dist/dat.bank.d.ts +3 -4
- package/dist/dat.bank.d.ts.map +1 -1
- package/dist/dat.bank.js +17 -23
- package/dist/dat.bank.js.map +1 -1
- package/dist/dat.d.ts +22 -0
- package/dist/dat.d.ts.map +1 -0
- package/dist/dat.js +50 -0
- package/dist/dat.js.map +1 -0
- package/dist/dat.key.d.ts +3 -4
- package/dist/dat.key.d.ts.map +1 -1
- package/dist/dat.key.js +26 -31
- package/dist/dat.key.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/signature.d.ts +10 -4
- package/dist/signature.d.ts.map +1 -1
- package/dist/signature.js +119 -94
- package/dist/signature.js.map +1 -1
- package/dist/util.base64.d.ts +6 -0
- package/dist/util.base64.d.ts.map +1 -0
- package/dist/util.base64.js +29 -0
- package/dist/util.base64.js.map +1 -0
- package/dist/util.bytes.d.ts +17 -0
- package/dist/util.bytes.d.ts.map +1 -0
- package/dist/util.bytes.js +85 -0
- package/dist/util.bytes.js.map +1 -0
- package/dist/util.hex.d.ts +4 -0
- package/dist/util.hex.d.ts.map +1 -0
- package/dist/util.hex.js +29 -0
- package/dist/util.hex.js.map +1 -0
- package/dist/util.misc.d.ts +4 -0
- package/dist/util.misc.d.ts.map +1 -0
- package/dist/util.misc.js +22 -0
- package/dist/util.misc.js.map +1 -0
- package/package.json +3 -3
- package/dist/util.d.ts +0 -30
- package/dist/util.d.ts.map +0 -1
- package/dist/util.js +0 -110
- package/dist/util.js.map +0 -1
package/dist/util.js
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import { Buffer } from "buffer";
|
|
2
|
-
const asciiDecoder = new TextDecoder('ascii');
|
|
3
|
-
const textEncoder = new TextEncoder();
|
|
4
|
-
const base62arr = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
|
|
5
|
-
function normalizeBase64Url(base64) {
|
|
6
|
-
return base64.replace(/[+\/=]/g, (ch) => {
|
|
7
|
-
switch (ch) {
|
|
8
|
-
case '+': return '-';
|
|
9
|
-
case '/': return '_';
|
|
10
|
-
}
|
|
11
|
-
return '';
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
export function encodeBase64Url(data) {
|
|
15
|
-
if (!data) {
|
|
16
|
-
return '';
|
|
17
|
-
}
|
|
18
|
-
if (typeof data === 'string') {
|
|
19
|
-
return normalizeBase64Url(Buffer.from(data).toString('base64'));
|
|
20
|
-
}
|
|
21
|
-
else if (data instanceof ArrayBuffer) {
|
|
22
|
-
return normalizeBase64Url(Buffer.from(data).toString('base64'));
|
|
23
|
-
}
|
|
24
|
-
else if (data instanceof Uint8Array) {
|
|
25
|
-
return normalizeBase64Url(Buffer.from(data).toString('base64'));
|
|
26
|
-
}
|
|
27
|
-
else if (data instanceof Buffer) {
|
|
28
|
-
return normalizeBase64Url(data.toString('base64'));
|
|
29
|
-
}
|
|
30
|
-
throw new Error('Unsupported data type');
|
|
31
|
-
}
|
|
32
|
-
export function decodeBase64String(b64) {
|
|
33
|
-
return decodeBase64(b64).toString('utf-8');
|
|
34
|
-
}
|
|
35
|
-
export function decodeBase64(b64) {
|
|
36
|
-
if (!b64 || b64?.byteLength === 0) {
|
|
37
|
-
return Buffer.alloc(0);
|
|
38
|
-
}
|
|
39
|
-
if (typeof b64 === 'string') {
|
|
40
|
-
return Buffer.from(b64, 'base64');
|
|
41
|
-
}
|
|
42
|
-
if (b64 instanceof ArrayBuffer) {
|
|
43
|
-
return Buffer.from(asciiDecoder.decode(b64), 'base64');
|
|
44
|
-
}
|
|
45
|
-
throw new Error('Unsupported data type');
|
|
46
|
-
}
|
|
47
|
-
export function concatArrayBufferLike(arr1, arr2) {
|
|
48
|
-
const buf = new Uint8Array(arr1.byteLength + arr2.byteLength);
|
|
49
|
-
buf.set(new Uint8Array(arr1), 0);
|
|
50
|
-
buf.set(new Uint8Array(arr2), arr1.byteLength);
|
|
51
|
-
return buf.buffer;
|
|
52
|
-
}
|
|
53
|
-
export function toArrayBuffer(data) {
|
|
54
|
-
if (!data) {
|
|
55
|
-
return new ArrayBuffer(0);
|
|
56
|
-
}
|
|
57
|
-
if (typeof data === 'string') {
|
|
58
|
-
return textEncoder.encode(data).buffer;
|
|
59
|
-
}
|
|
60
|
-
if (data?.byteLength === 0) {
|
|
61
|
-
return new ArrayBuffer(0);
|
|
62
|
-
}
|
|
63
|
-
if (Buffer.isBuffer(data)) {
|
|
64
|
-
return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
|
|
65
|
-
}
|
|
66
|
-
if (data instanceof Uint8Array) {
|
|
67
|
-
return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
|
|
68
|
-
}
|
|
69
|
-
if (data instanceof ArrayBuffer) {
|
|
70
|
-
return data;
|
|
71
|
-
}
|
|
72
|
-
if (data instanceof SharedArrayBuffer) {
|
|
73
|
-
const buffer = new Uint8Array(data.byteLength);
|
|
74
|
-
buffer.set(new Uint8Array(data));
|
|
75
|
-
return buffer.buffer;
|
|
76
|
-
}
|
|
77
|
-
throw new Error('Unsupported data type');
|
|
78
|
-
}
|
|
79
|
-
export function randomString(length, mold) {
|
|
80
|
-
return [...Array(length)]
|
|
81
|
-
.map(() => mold[Math.floor(Math.random() * mold.length)])
|
|
82
|
-
.join('');
|
|
83
|
-
}
|
|
84
|
-
export function randomBase62(length) {
|
|
85
|
-
return randomString(length, base62arr);
|
|
86
|
-
}
|
|
87
|
-
export function splitDat(dat) {
|
|
88
|
-
const parts = dat?.split('.') || [];
|
|
89
|
-
if (dat && parts.length == 5) {
|
|
90
|
-
let exp = Number(parts[0] || 'x');
|
|
91
|
-
let kid = parts[1];
|
|
92
|
-
let plain = parts[2];
|
|
93
|
-
let secure = parts[3];
|
|
94
|
-
let sign = parts[4];
|
|
95
|
-
if (Number.isInteger(exp) && sign) {
|
|
96
|
-
return ({
|
|
97
|
-
error: false, dat, expire: exp, kid, plain, secure, signature: sign
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
return ({ error: true, dat: dat || '', expire: 0, kid: '', plain: '', secure: '', signature: '' });
|
|
102
|
-
}
|
|
103
|
-
export function serializePayload(payloadBuffer) {
|
|
104
|
-
return ({
|
|
105
|
-
expire: payloadBuffer.expire,
|
|
106
|
-
plain: payloadBuffer.plain.toString('utf-8'),
|
|
107
|
-
secure: payloadBuffer.secure.toString('utf-8'),
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
//# sourceMappingURL=util.js.map
|
package/dist/util.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
|