@xyo-network/core 2.75.0 → 2.75.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/browser/Data/AbstractData.d.cts +13 -0
- package/dist/browser/Data/AbstractData.d.cts.map +1 -0
- package/dist/browser/Data/AbstractData.js +3 -4
- package/dist/browser/Data/AbstractData.js.map +1 -1
- package/dist/browser/Data/Data.cjs +1 -1
- package/dist/browser/Data/Data.d.cts +21 -0
- package/dist/browser/Data/Data.d.cts.map +1 -0
- package/dist/browser/Data/Data.js +14 -62
- package/dist/browser/Data/Data.js.map +1 -1
- package/dist/browser/Data/DataLike.d.cts +4 -0
- package/dist/browser/Data/DataLike.d.cts.map +1 -0
- package/dist/browser/Data/index.cjs +1 -1
- package/dist/browser/Data/index.d.cts +5 -0
- package/dist/browser/Data/index.d.cts.map +1 -0
- package/dist/browser/Data/index.js +4 -109
- package/dist/browser/Data/index.js.map +1 -1
- package/dist/browser/Data/toUint8Array.d.cts +4 -0
- package/dist/browser/Data/toUint8Array.d.cts.map +1 -0
- package/dist/browser/Data/toUint8Array.js +7 -19
- package/dist/browser/Data/toUint8Array.js.map +1 -1
- package/dist/browser/index.cjs +1 -1
- package/dist/browser/index.d.cts +7 -0
- package/dist/browser/index.d.cts.map +1 -0
- package/dist/browser/index.js +2 -164
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/lib/Base.d.cts +13 -0
- package/dist/browser/lib/Base.d.cts.map +1 -0
- package/dist/browser/lib/Base.js +3 -4
- package/dist/browser/lib/Base.js.map +1 -1
- package/dist/browser/lib/Validator.d.cts +9 -0
- package/dist/browser/lib/Validator.d.cts.map +1 -0
- package/dist/browser/lib/Validator.js +2 -3
- package/dist/browser/lib/Validator.js.map +1 -1
- package/dist/browser/lib/dumpErrors.d.cts +3 -0
- package/dist/browser/lib/dumpErrors.d.cts.map +1 -0
- package/dist/browser/lib/dumpErrors.js +1 -2
- package/dist/browser/lib/dumpErrors.js.map +1 -1
- package/dist/browser/lib/index.d.cts +6 -0
- package/dist/browser/lib/index.d.cts.map +1 -0
- package/dist/browser/lib/index.js +5 -54
- package/dist/browser/lib/index.js.map +1 -1
- package/dist/browser/lib/isBrowser.d.cts +2 -0
- package/dist/browser/lib/isBrowser.d.cts.map +1 -0
- package/dist/browser/lib/isBrowser.js +1 -2
- package/dist/browser/lib/isBrowser.js.map +1 -1
- package/dist/browser/lib/uuid.d.cts +2 -0
- package/dist/browser/lib/uuid.d.cts.map +1 -0
- package/dist/browser/lib/uuid.js +1 -2
- package/dist/browser/lib/uuid.js.map +1 -1
- package/dist/docs.json +10929 -0
- package/dist/node/Data/AbstractData.cjs +38 -0
- package/dist/node/Data/{AbstractData.mjs.map → AbstractData.cjs.map} +1 -1
- package/dist/node/Data/AbstractData.d.cts +13 -0
- package/dist/node/Data/AbstractData.d.cts.map +1 -0
- package/dist/node/Data/AbstractData.js +6 -29
- package/dist/node/Data/AbstractData.js.map +1 -1
- package/dist/node/Data/Data.cjs +142 -0
- package/dist/node/Data/Data.cjs.map +1 -0
- package/dist/node/Data/Data.d.cts +21 -0
- package/dist/node/Data/Data.d.cts.map +1 -0
- package/dist/node/Data/Data.js +67 -53
- package/dist/node/Data/Data.js.map +1 -1
- package/dist/node/Data/DataLike.cjs +19 -0
- package/dist/node/Data/DataLike.cjs.map +1 -0
- package/dist/node/Data/DataLike.d.cts +4 -0
- package/dist/node/Data/DataLike.d.cts.map +1 -0
- package/dist/node/Data/DataLike.js +0 -16
- package/dist/node/Data/DataLike.js.map +1 -1
- package/dist/node/Data/index.cjs +150 -0
- package/dist/node/Data/index.cjs.map +1 -0
- package/dist/node/Data/index.d.cts +5 -0
- package/dist/node/Data/index.d.cts.map +1 -0
- package/dist/node/Data/index.js +109 -28
- package/dist/node/Data/index.js.map +1 -1
- package/dist/node/Data/toUint8Array.cjs +79 -0
- package/dist/node/Data/toUint8Array.cjs.map +1 -0
- package/dist/node/Data/toUint8Array.d.cts +4 -0
- package/dist/node/Data/toUint8Array.d.cts.map +1 -0
- package/dist/node/Data/toUint8Array.js +29 -42
- package/dist/node/Data/toUint8Array.js.map +1 -1
- package/dist/node/index.cjs +221 -0
- package/dist/node/index.cjs.map +1 -0
- package/dist/node/index.d.cts +7 -0
- package/dist/node/index.d.cts.map +1 -0
- package/dist/node/index.js +170 -32
- package/dist/node/index.js.map +1 -1
- package/dist/node/lib/Base.cjs +42 -0
- package/dist/node/lib/{Base.mjs.map → Base.cjs.map} +1 -1
- package/dist/node/lib/Base.d.cts +13 -0
- package/dist/node/lib/Base.d.cts.map +1 -0
- package/dist/node/lib/Base.js +9 -30
- package/dist/node/lib/Base.js.map +1 -1
- package/dist/node/lib/Validator.cjs +33 -0
- package/dist/node/lib/{Validator.mjs.map → Validator.cjs.map} +1 -1
- package/dist/node/lib/Validator.d.cts +9 -0
- package/dist/node/lib/Validator.d.cts.map +1 -0
- package/dist/node/lib/Validator.js +5 -28
- package/dist/node/lib/Validator.js.map +1 -1
- package/dist/node/lib/dumpErrors.cjs +35 -0
- package/dist/node/lib/dumpErrors.cjs.map +1 -0
- package/dist/node/lib/dumpErrors.d.cts +3 -0
- package/dist/node/lib/dumpErrors.d.cts.map +1 -0
- package/dist/node/lib/dumpErrors.js +4 -27
- package/dist/node/lib/dumpErrors.js.map +1 -1
- package/dist/node/lib/index.cjs +88 -0
- package/dist/node/lib/index.cjs.map +1 -0
- package/dist/node/lib/index.d.cts +6 -0
- package/dist/node/lib/index.d.cts.map +1 -0
- package/dist/node/lib/index.js +54 -28
- package/dist/node/lib/index.js.map +1 -1
- package/dist/node/lib/isBrowser.cjs +33 -0
- package/dist/node/lib/isBrowser.cjs.map +1 -0
- package/dist/node/lib/isBrowser.d.cts +2 -0
- package/dist/node/lib/isBrowser.d.cts.map +1 -0
- package/dist/node/lib/isBrowser.js +4 -27
- package/dist/node/lib/isBrowser.js.map +1 -1
- package/dist/node/lib/uuid.cjs +47 -0
- package/dist/node/lib/uuid.cjs.map +1 -0
- package/dist/node/lib/uuid.d.cts +2 -0
- package/dist/node/lib/uuid.d.cts.map +1 -0
- package/dist/node/lib/uuid.js +6 -29
- package/dist/node/lib/uuid.js.map +1 -1
- package/package.json +28 -25
- package/dist/node/Data/AbstractData.mjs +0 -12
- package/dist/node/Data/Data.mjs +0 -59
- package/dist/node/Data/Data.mjs.map +0 -1
- package/dist/node/Data/DataLike.mjs +0 -1
- package/dist/node/Data/DataLike.mjs.map +0 -1
- package/dist/node/Data/index.mjs +0 -5
- package/dist/node/Data/index.mjs.map +0 -1
- package/dist/node/Data/toUint8Array.mjs +0 -41
- package/dist/node/Data/toUint8Array.mjs.map +0 -1
- package/dist/node/index.mjs +0 -7
- package/dist/node/index.mjs.map +0 -1
- package/dist/node/lib/Base.mjs +0 -14
- package/dist/node/lib/Validator.mjs +0 -7
- package/dist/node/lib/dumpErrors.mjs +0 -9
- package/dist/node/lib/dumpErrors.mjs.map +0 -1
- package/dist/node/lib/index.mjs +0 -6
- package/dist/node/lib/index.mjs.map +0 -1
- package/dist/node/lib/isBrowser.mjs +0 -7
- package/dist/node/lib/isBrowser.mjs.map +0 -1
- package/dist/node/lib/uuid.mjs +0 -21
- package/dist/node/lib/uuid.mjs.map +0 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { BigNumber } from '@xylabs/bignumber';
|
|
3
|
+
import { Buffer } from '@xylabs/buffer';
|
|
4
|
+
export declare abstract class AbstractData {
|
|
5
|
+
get length(): number;
|
|
6
|
+
abstract get bn(): BigNumber;
|
|
7
|
+
abstract get buffer(): Buffer;
|
|
8
|
+
abstract get bytes(): Uint8Array;
|
|
9
|
+
abstract get hex(): string;
|
|
10
|
+
abstract get keccak256(): Buffer;
|
|
11
|
+
static is(value: unknown): value is AbstractData;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=AbstractData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AbstractData.d.ts","sourceRoot":"","sources":["../../../src/Data/AbstractData.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAEvC,8BAAsB,YAAY;IAChC,IAAI,MAAM,WAET;IAED,QAAQ,KAAK,EAAE,IAAI,SAAS,CAAA;IAE5B,QAAQ,KAAK,MAAM,IAAI,MAAM,CAAA;IAE7B,QAAQ,KAAK,KAAK,IAAI,UAAU,CAAA;IAEhC,QAAQ,KAAK,GAAG,IAAI,MAAM,CAAA;IAE1B,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAA;IAEhC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY;CAGjD"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
var AbstractData = class _AbstractData {
|
|
1
|
+
class AbstractData {
|
|
3
2
|
get length() {
|
|
4
3
|
return this.bytes.length;
|
|
5
4
|
}
|
|
6
5
|
static is(value) {
|
|
7
|
-
return value instanceof
|
|
6
|
+
return value instanceof AbstractData;
|
|
8
7
|
}
|
|
9
|
-
}
|
|
8
|
+
}
|
|
10
9
|
export {
|
|
11
10
|
AbstractData
|
|
12
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Data/AbstractData.ts"],"sourcesContent":["import { BigNumber } from '@xylabs/bignumber'\nimport { Buffer } from '@xylabs/buffer'\n\nexport abstract class AbstractData {\n get length() {\n return this.bytes.length\n }\n\n abstract get bn(): BigNumber\n\n abstract get buffer(): Buffer\n\n abstract get bytes(): Uint8Array\n\n abstract get hex(): string\n\n abstract get keccak256(): Buffer\n\n static is(value: unknown): value is AbstractData {\n return value instanceof AbstractData\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/Data/AbstractData.ts"],"sourcesContent":["import { BigNumber } from '@xylabs/bignumber'\nimport { Buffer } from '@xylabs/buffer'\n\nexport abstract class AbstractData {\n get length() {\n return this.bytes.length\n }\n\n abstract get bn(): BigNumber\n\n abstract get buffer(): Buffer\n\n abstract get bytes(): Uint8Array\n\n abstract get hex(): string\n\n abstract get keccak256(): Buffer\n\n static is(value: unknown): value is AbstractData {\n return value instanceof AbstractData\n }\n}\n"],"mappings":"AAGO,MAAe,aAAa;AAAA,EACjC,IAAI,SAAS;AACX,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA,EAYA,OAAO,GAAG,OAAuC;AAC/C,WAAO,iBAAiB;AAAA,EAC1B;AACF;","names":[]}
|
|
@@ -37,7 +37,7 @@ var import_base2 = require("@scure/base");
|
|
|
37
37
|
var import_assert2 = require("@xylabs/assert");
|
|
38
38
|
var import_bignumber2 = require("@xylabs/bignumber");
|
|
39
39
|
var import_buffer2 = require("@xylabs/buffer");
|
|
40
|
-
var import_keccak256 = __toESM(require("keccak256"));
|
|
40
|
+
var import_keccak256 = __toESM(require("keccak256"), 1);
|
|
41
41
|
|
|
42
42
|
// src/Data/AbstractData.ts
|
|
43
43
|
var AbstractData = class _AbstractData {
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { BigNumber } from '@xylabs/bignumber';
|
|
3
|
+
import { Buffer } from '@xylabs/buffer';
|
|
4
|
+
import { AbstractData } from './AbstractData';
|
|
5
|
+
import { DataLike } from './DataLike';
|
|
6
|
+
export declare class Data extends AbstractData {
|
|
7
|
+
private _bytes?;
|
|
8
|
+
private _length;
|
|
9
|
+
constructor(length: number, bytes?: DataLike);
|
|
10
|
+
constructor(length: number, bytes: string, base?: number);
|
|
11
|
+
get base58(): string;
|
|
12
|
+
get bn(): BigNumber;
|
|
13
|
+
get buffer(): Buffer;
|
|
14
|
+
get bytes(): Uint8Array;
|
|
15
|
+
get hex(): string;
|
|
16
|
+
get keccak256(): Buffer;
|
|
17
|
+
static from(data: DataLike | undefined): Data | undefined;
|
|
18
|
+
static lengthOf(data: DataLike): number;
|
|
19
|
+
private checkLength;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=Data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Data.d.ts","sourceRoot":"","sources":["../../../src/Data/Data.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAkB,MAAM,gBAAgB,CAAA;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAGrC,qBAAa,IAAK,SAAQ,YAAY;IACpC,OAAO,CAAC,MAAM,CAAC,CAAY;IAC3B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ;gBAChC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAOxD,IAAI,MAAM,WAGT;IAED,IAAI,EAAE,cAGL;IAED,IAAI,MAAM,WAGT;IAED,IAAI,KAAK,eAER;IAED,IAAI,GAAG,WAGN;IAED,IAAI,SAAS,WAIZ;IAED,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS;IAItC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM;IAUvC,OAAO,CAAC,WAAW;CAGpB"}
|
|
@@ -1,59 +1,11 @@
|
|
|
1
|
-
// src/Data/Data.ts
|
|
2
|
-
import { base16 as base162, base58 as base582 } from "@scure/base";
|
|
3
|
-
import { assertEx as assertEx2 } from "@xylabs/assert";
|
|
4
|
-
import { BigNumber as BigNumber2 } from "@xylabs/bignumber";
|
|
5
|
-
import { Buffer as Buffer2, bufferPolyfill } from "@xylabs/buffer";
|
|
6
|
-
import keccak256 from "keccak256";
|
|
7
|
-
|
|
8
|
-
// src/Data/AbstractData.ts
|
|
9
|
-
var AbstractData = class _AbstractData {
|
|
10
|
-
get length() {
|
|
11
|
-
return this.bytes.length;
|
|
12
|
-
}
|
|
13
|
-
static is(value) {
|
|
14
|
-
return value instanceof _AbstractData;
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
// src/Data/toUint8Array.ts
|
|
19
1
|
import { base16, base58 } from "@scure/base";
|
|
20
2
|
import { assertEx } from "@xylabs/assert";
|
|
21
3
|
import { BigNumber } from "@xylabs/bignumber";
|
|
22
|
-
import { Buffer } from "@xylabs/buffer";
|
|
23
|
-
import
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
return base16.decode((value.startsWith("0x") ? value.slice(2) : value).toUpperCase());
|
|
28
|
-
case 58:
|
|
29
|
-
return base58.decode(value);
|
|
30
|
-
default:
|
|
31
|
-
throw Error(`Unsupported base [${base}]`);
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
var bigNumberToUint8Array = (value) => {
|
|
35
|
-
return bufferToUint8Array(Buffer.from(new BigNumber(value).toBuffer()));
|
|
36
|
-
};
|
|
37
|
-
var bufferToUint8Array = (value) => {
|
|
38
|
-
return Uint8Array.from(value);
|
|
39
|
-
};
|
|
40
|
-
var xyoDataToUint8Array = (value) => {
|
|
41
|
-
return value.bytes;
|
|
42
|
-
};
|
|
43
|
-
var toUint8ArrayOptional = (value, padLength, base) => {
|
|
44
|
-
return value ? toUint8Array(value, padLength, base) : void 0;
|
|
45
|
-
};
|
|
46
|
-
var toUint8Array = (value, padLength, base) => {
|
|
47
|
-
let result = ifTypeOf("string", value, (value2) => stringToUint8Array(value2, base)) ?? ifTypeOf("object", value, bigNumberToUint8Array, BigNumber.isBN) ?? ifTypeOf("object", value, bufferToUint8Array, Buffer.isBuffer) ?? ifTypeOf("object", value, xyoDataToUint8Array, AbstractData.is) ?? value;
|
|
48
|
-
if (padLength && result.length < padLength) {
|
|
49
|
-
result = new Uint8Array([...new Uint8Array(padLength - result.length), ...result]);
|
|
50
|
-
assertEx(result?.length <= padLength, "Resulting length is greater than padLength");
|
|
51
|
-
}
|
|
52
|
-
return result;
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
// src/Data/Data.ts
|
|
56
|
-
var Data = class _Data extends AbstractData {
|
|
4
|
+
import { Buffer, bufferPolyfill } from "@xylabs/buffer";
|
|
5
|
+
import keccak256 from "keccak256";
|
|
6
|
+
import { AbstractData } from "./AbstractData";
|
|
7
|
+
import { toUint8ArrayOptional } from "./toUint8Array";
|
|
8
|
+
class Data extends AbstractData {
|
|
57
9
|
_bytes;
|
|
58
10
|
_length;
|
|
59
11
|
constructor(length, bytes, base) {
|
|
@@ -63,30 +15,30 @@ var Data = class _Data extends AbstractData {
|
|
|
63
15
|
}
|
|
64
16
|
get base58() {
|
|
65
17
|
this.checkLength();
|
|
66
|
-
return
|
|
18
|
+
return base58.encode(this.bytes);
|
|
67
19
|
}
|
|
68
20
|
get bn() {
|
|
69
21
|
this.checkLength();
|
|
70
|
-
return new
|
|
22
|
+
return new BigNumber(this.bytes);
|
|
71
23
|
}
|
|
72
24
|
get buffer() {
|
|
73
25
|
this.checkLength();
|
|
74
|
-
return
|
|
26
|
+
return Buffer.from(this.bytes);
|
|
75
27
|
}
|
|
76
28
|
get bytes() {
|
|
77
|
-
return
|
|
29
|
+
return assertEx(this._bytes, "Data uninitialized");
|
|
78
30
|
}
|
|
79
31
|
get hex() {
|
|
80
32
|
this.checkLength();
|
|
81
|
-
return
|
|
33
|
+
return base16.encode(this.bytes).toLowerCase();
|
|
82
34
|
}
|
|
83
35
|
get keccak256() {
|
|
84
36
|
bufferPolyfill();
|
|
85
37
|
this.checkLength();
|
|
86
|
-
return
|
|
38
|
+
return Buffer.from(keccak256(`0x${this.buffer.toString("hex")}`));
|
|
87
39
|
}
|
|
88
40
|
static from(data) {
|
|
89
|
-
return data ? new
|
|
41
|
+
return data ? new Data(Data.lengthOf(data), data) : void 0;
|
|
90
42
|
}
|
|
91
43
|
static lengthOf(data) {
|
|
92
44
|
if (typeof data === "string") {
|
|
@@ -98,9 +50,9 @@ var Data = class _Data extends AbstractData {
|
|
|
98
50
|
}
|
|
99
51
|
}
|
|
100
52
|
checkLength() {
|
|
101
|
-
|
|
53
|
+
assertEx(this.bytes.length === this._length, `Length Mismatch: ${this.bytes.length} !== ${this._length}`);
|
|
102
54
|
}
|
|
103
|
-
}
|
|
55
|
+
}
|
|
104
56
|
export {
|
|
105
57
|
Data
|
|
106
58
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Data/Data.ts"
|
|
1
|
+
{"version":3,"sources":["../../../src/Data/Data.ts"],"sourcesContent":["import { base16, base58 } from '@scure/base'\nimport { assertEx } from '@xylabs/assert'\nimport { BigNumber } from '@xylabs/bignumber'\nimport { Buffer, bufferPolyfill } from '@xylabs/buffer'\nimport keccak256 from 'keccak256'\n\nimport { AbstractData } from './AbstractData'\nimport { DataLike } from './DataLike'\nimport { toUint8ArrayOptional } from './toUint8Array'\n\nexport class Data extends AbstractData {\n private _bytes?: Uint8Array\n private _length: number\n\n constructor(length: number, bytes?: DataLike)\n constructor(length: number, bytes: string, base?: number)\n constructor(length: number, bytes?: DataLike, base?: number) {\n super()\n this._bytes = toUint8ArrayOptional(bytes, length, base)\n this._length = length\n }\n\n get base58() {\n this.checkLength()\n return base58.encode(this.bytes)\n }\n\n get bn() {\n this.checkLength()\n return new BigNumber(this.bytes)\n }\n\n get buffer() {\n this.checkLength()\n return Buffer.from(this.bytes)\n }\n\n get bytes() {\n return assertEx(this._bytes, 'Data uninitialized')\n }\n\n get hex() {\n this.checkLength()\n return base16.encode(this.bytes).toLowerCase()\n }\n\n get keccak256() {\n bufferPolyfill()\n this.checkLength()\n return Buffer.from(keccak256(`0x${this.buffer.toString('hex')}`))\n }\n\n static from(data: DataLike | undefined) {\n return data ? new Data(Data.lengthOf(data), data) : undefined\n }\n\n static lengthOf(data: DataLike): number {\n if (typeof data === 'string') {\n return data.length / 2\n } else if (data instanceof AbstractData) {\n return data.length\n } else {\n return typeof data.byteLength === 'function' ? data.byteLength() : data.byteLength\n }\n }\n\n private checkLength() {\n assertEx(this.bytes.length === this._length, `Length Mismatch: ${this.bytes.length} !== ${this._length}`)\n }\n}\n"],"mappings":"AAAA,SAAS,QAAQ,cAAc;AAC/B,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAC1B,SAAS,QAAQ,sBAAsB;AACvC,OAAO,eAAe;AAEtB,SAAS,oBAAoB;AAE7B,SAAS,4BAA4B;AAE9B,MAAM,aAAa,aAAa;AAAA,EAC7B;AAAA,EACA;AAAA,EAIR,YAAY,QAAgB,OAAkB,MAAe;AAC3D,UAAM;AACN,SAAK,SAAS,qBAAqB,OAAO,QAAQ,IAAI;AACtD,SAAK,UAAU;AAAA,EACjB;AAAA,EAEA,IAAI,SAAS;AACX,SAAK,YAAY;AACjB,WAAO,OAAO,OAAO,KAAK,KAAK;AAAA,EACjC;AAAA,EAEA,IAAI,KAAK;AACP,SAAK,YAAY;AACjB,WAAO,IAAI,UAAU,KAAK,KAAK;AAAA,EACjC;AAAA,EAEA,IAAI,SAAS;AACX,SAAK,YAAY;AACjB,WAAO,OAAO,KAAK,KAAK,KAAK;AAAA,EAC/B;AAAA,EAEA,IAAI,QAAQ;AACV,WAAO,SAAS,KAAK,QAAQ,oBAAoB;AAAA,EACnD;AAAA,EAEA,IAAI,MAAM;AACR,SAAK,YAAY;AACjB,WAAO,OAAO,OAAO,KAAK,KAAK,EAAE,YAAY;AAAA,EAC/C;AAAA,EAEA,IAAI,YAAY;AACd,mBAAe;AACf,SAAK,YAAY;AACjB,WAAO,OAAO,KAAK,UAAU,KAAK,KAAK,OAAO,SAAS,KAAK,CAAC,EAAE,CAAC;AAAA,EAClE;AAAA,EAEA,OAAO,KAAK,MAA4B;AACtC,WAAO,OAAO,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG,IAAI,IAAI;AAAA,EACtD;AAAA,EAEA,OAAO,SAAS,MAAwB;AACtC,QAAI,OAAO,SAAS,UAAU;AAC5B,aAAO,KAAK,SAAS;AAAA,IACvB,WAAW,gBAAgB,cAAc;AACvC,aAAO,KAAK;AAAA,IACd,OAAO;AACL,aAAO,OAAO,KAAK,eAAe,aAAa,KAAK,WAAW,IAAI,KAAK;AAAA,IAC1E;AAAA,EACF;AAAA,EAEQ,cAAc;AACpB,aAAS,KAAK,MAAM,WAAW,KAAK,SAAS,oBAAoB,KAAK,MAAM,MAAM,QAAQ,KAAK,OAAO,EAAE;AAAA,EAC1G;AACF;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataLike.d.ts","sourceRoot":"","sources":["../../../src/Data/DataLike.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,CAAA"}
|
|
@@ -52,7 +52,7 @@ var import_base2 = require("@scure/base");
|
|
|
52
52
|
var import_assert2 = require("@xylabs/assert");
|
|
53
53
|
var import_bignumber2 = require("@xylabs/bignumber");
|
|
54
54
|
var import_buffer2 = require("@xylabs/buffer");
|
|
55
|
-
var import_keccak256 = __toESM(require("keccak256"));
|
|
55
|
+
var import_keccak256 = __toESM(require("keccak256"), 1);
|
|
56
56
|
|
|
57
57
|
// src/Data/toUint8Array.ts
|
|
58
58
|
var import_base = require("@scure/base");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Data/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA"}
|
|
@@ -1,110 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
static is(value) {
|
|
7
|
-
return value instanceof _AbstractData;
|
|
8
|
-
}
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
// src/Data/Data.ts
|
|
12
|
-
import { base16 as base162, base58 as base582 } from "@scure/base";
|
|
13
|
-
import { assertEx as assertEx2 } from "@xylabs/assert";
|
|
14
|
-
import { BigNumber as BigNumber2 } from "@xylabs/bignumber";
|
|
15
|
-
import { Buffer as Buffer2, bufferPolyfill } from "@xylabs/buffer";
|
|
16
|
-
import keccak256 from "keccak256";
|
|
17
|
-
|
|
18
|
-
// src/Data/toUint8Array.ts
|
|
19
|
-
import { base16, base58 } from "@scure/base";
|
|
20
|
-
import { assertEx } from "@xylabs/assert";
|
|
21
|
-
import { BigNumber } from "@xylabs/bignumber";
|
|
22
|
-
import { Buffer } from "@xylabs/buffer";
|
|
23
|
-
import { ifTypeOf } from "@xyo-network/typeof";
|
|
24
|
-
var stringToUint8Array = (value, base = 16) => {
|
|
25
|
-
switch (base) {
|
|
26
|
-
case 16:
|
|
27
|
-
return base16.decode((value.startsWith("0x") ? value.slice(2) : value).toUpperCase());
|
|
28
|
-
case 58:
|
|
29
|
-
return base58.decode(value);
|
|
30
|
-
default:
|
|
31
|
-
throw Error(`Unsupported base [${base}]`);
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
var bigNumberToUint8Array = (value) => {
|
|
35
|
-
return bufferToUint8Array(Buffer.from(new BigNumber(value).toBuffer()));
|
|
36
|
-
};
|
|
37
|
-
var bufferToUint8Array = (value) => {
|
|
38
|
-
return Uint8Array.from(value);
|
|
39
|
-
};
|
|
40
|
-
var xyoDataToUint8Array = (value) => {
|
|
41
|
-
return value.bytes;
|
|
42
|
-
};
|
|
43
|
-
var toUint8ArrayOptional = (value, padLength, base) => {
|
|
44
|
-
return value ? toUint8Array(value, padLength, base) : void 0;
|
|
45
|
-
};
|
|
46
|
-
var toUint8Array = (value, padLength, base) => {
|
|
47
|
-
let result = ifTypeOf("string", value, (value2) => stringToUint8Array(value2, base)) ?? ifTypeOf("object", value, bigNumberToUint8Array, BigNumber.isBN) ?? ifTypeOf("object", value, bufferToUint8Array, Buffer.isBuffer) ?? ifTypeOf("object", value, xyoDataToUint8Array, AbstractData.is) ?? value;
|
|
48
|
-
if (padLength && result.length < padLength) {
|
|
49
|
-
result = new Uint8Array([...new Uint8Array(padLength - result.length), ...result]);
|
|
50
|
-
assertEx(result?.length <= padLength, "Resulting length is greater than padLength");
|
|
51
|
-
}
|
|
52
|
-
return result;
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
// src/Data/Data.ts
|
|
56
|
-
var Data = class _Data extends AbstractData {
|
|
57
|
-
_bytes;
|
|
58
|
-
_length;
|
|
59
|
-
constructor(length, bytes, base) {
|
|
60
|
-
super();
|
|
61
|
-
this._bytes = toUint8ArrayOptional(bytes, length, base);
|
|
62
|
-
this._length = length;
|
|
63
|
-
}
|
|
64
|
-
get base58() {
|
|
65
|
-
this.checkLength();
|
|
66
|
-
return base582.encode(this.bytes);
|
|
67
|
-
}
|
|
68
|
-
get bn() {
|
|
69
|
-
this.checkLength();
|
|
70
|
-
return new BigNumber2(this.bytes);
|
|
71
|
-
}
|
|
72
|
-
get buffer() {
|
|
73
|
-
this.checkLength();
|
|
74
|
-
return Buffer2.from(this.bytes);
|
|
75
|
-
}
|
|
76
|
-
get bytes() {
|
|
77
|
-
return assertEx2(this._bytes, "Data uninitialized");
|
|
78
|
-
}
|
|
79
|
-
get hex() {
|
|
80
|
-
this.checkLength();
|
|
81
|
-
return base162.encode(this.bytes).toLowerCase();
|
|
82
|
-
}
|
|
83
|
-
get keccak256() {
|
|
84
|
-
bufferPolyfill();
|
|
85
|
-
this.checkLength();
|
|
86
|
-
return Buffer2.from(keccak256(`0x${this.buffer.toString("hex")}`));
|
|
87
|
-
}
|
|
88
|
-
static from(data) {
|
|
89
|
-
return data ? new _Data(_Data.lengthOf(data), data) : void 0;
|
|
90
|
-
}
|
|
91
|
-
static lengthOf(data) {
|
|
92
|
-
if (typeof data === "string") {
|
|
93
|
-
return data.length / 2;
|
|
94
|
-
} else if (data instanceof AbstractData) {
|
|
95
|
-
return data.length;
|
|
96
|
-
} else {
|
|
97
|
-
return typeof data.byteLength === "function" ? data.byteLength() : data.byteLength;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
checkLength() {
|
|
101
|
-
assertEx2(this.bytes.length === this._length, `Length Mismatch: ${this.bytes.length} !== ${this._length}`);
|
|
102
|
-
}
|
|
103
|
-
};
|
|
104
|
-
export {
|
|
105
|
-
AbstractData,
|
|
106
|
-
Data,
|
|
107
|
-
toUint8Array,
|
|
108
|
-
toUint8ArrayOptional
|
|
109
|
-
};
|
|
1
|
+
export * from "./AbstractData";
|
|
2
|
+
export * from "./Data";
|
|
3
|
+
export * from "./DataLike";
|
|
4
|
+
export * from "./toUint8Array";
|
|
110
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Data/
|
|
1
|
+
{"version":3,"sources":["../../../src/Data/index.ts"],"sourcesContent":["export * from './AbstractData'\nexport * from './Data'\nexport * from './DataLike'\nexport * from './toUint8Array'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { DataLike } from './DataLike';
|
|
2
|
+
export declare const toUint8ArrayOptional: (value?: DataLike, padLength?: number, base?: number) => Uint8Array | undefined;
|
|
3
|
+
export declare const toUint8Array: (value: DataLike, padLength?: number, base?: number) => Uint8Array;
|
|
4
|
+
//# sourceMappingURL=toUint8Array.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toUint8Array.d.ts","sourceRoot":"","sources":["../../../src/Data/toUint8Array.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AA0BrC,eAAO,MAAM,oBAAoB,WAAY,QAAQ,cAAc,MAAM,SAAS,MAAM,KAAG,UAAU,GAAG,SAEvG,CAAA;AAED,eAAO,MAAM,YAAY,UAAW,QAAQ,cAAc,MAAM,SAAS,MAAM,KAAG,UAcjF,CAAA"}
|
|
@@ -1,22 +1,10 @@
|
|
|
1
|
-
// src/Data/toUint8Array.ts
|
|
2
1
|
import { base16, base58 } from "@scure/base";
|
|
3
2
|
import { assertEx } from "@xylabs/assert";
|
|
4
3
|
import { BigNumber } from "@xylabs/bignumber";
|
|
5
4
|
import { Buffer } from "@xylabs/buffer";
|
|
6
5
|
import { ifTypeOf } from "@xyo-network/typeof";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
var AbstractData = class _AbstractData {
|
|
10
|
-
get length() {
|
|
11
|
-
return this.bytes.length;
|
|
12
|
-
}
|
|
13
|
-
static is(value) {
|
|
14
|
-
return value instanceof _AbstractData;
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
// src/Data/toUint8Array.ts
|
|
19
|
-
var stringToUint8Array = (value, base = 16) => {
|
|
6
|
+
import { AbstractData } from "./AbstractData";
|
|
7
|
+
const stringToUint8Array = (value, base = 16) => {
|
|
20
8
|
switch (base) {
|
|
21
9
|
case 16:
|
|
22
10
|
return base16.decode((value.startsWith("0x") ? value.slice(2) : value).toUpperCase());
|
|
@@ -26,19 +14,19 @@ var stringToUint8Array = (value, base = 16) => {
|
|
|
26
14
|
throw Error(`Unsupported base [${base}]`);
|
|
27
15
|
}
|
|
28
16
|
};
|
|
29
|
-
|
|
17
|
+
const bigNumberToUint8Array = (value) => {
|
|
30
18
|
return bufferToUint8Array(Buffer.from(new BigNumber(value).toBuffer()));
|
|
31
19
|
};
|
|
32
|
-
|
|
20
|
+
const bufferToUint8Array = (value) => {
|
|
33
21
|
return Uint8Array.from(value);
|
|
34
22
|
};
|
|
35
|
-
|
|
23
|
+
const xyoDataToUint8Array = (value) => {
|
|
36
24
|
return value.bytes;
|
|
37
25
|
};
|
|
38
|
-
|
|
26
|
+
const toUint8ArrayOptional = (value, padLength, base) => {
|
|
39
27
|
return value ? toUint8Array(value, padLength, base) : void 0;
|
|
40
28
|
};
|
|
41
|
-
|
|
29
|
+
const toUint8Array = (value, padLength, base) => {
|
|
42
30
|
let result = ifTypeOf("string", value, (value2) => stringToUint8Array(value2, base)) ?? ifTypeOf("object", value, bigNumberToUint8Array, BigNumber.isBN) ?? ifTypeOf("object", value, bufferToUint8Array, Buffer.isBuffer) ?? ifTypeOf("object", value, xyoDataToUint8Array, AbstractData.is) ?? value;
|
|
43
31
|
if (padLength && result.length < padLength) {
|
|
44
32
|
result = new Uint8Array([...new Uint8Array(padLength - result.length), ...result]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Data/toUint8Array.ts"
|
|
1
|
+
{"version":3,"sources":["../../../src/Data/toUint8Array.ts"],"sourcesContent":["import { base16, base58 } from '@scure/base'\nimport { assertEx } from '@xylabs/assert'\nimport { BigNumber } from '@xylabs/bignumber'\nimport { Buffer } from '@xylabs/buffer'\nimport { ifTypeOf } from '@xyo-network/typeof'\n\nimport { AbstractData } from './AbstractData'\nimport { DataLike } from './DataLike'\n\nconst stringToUint8Array = (value: string, base = 16) => {\n switch (base) {\n case 16:\n return base16.decode((value.startsWith('0x') ? value.slice(2) : value).toUpperCase())\n case 58:\n return base58.decode(value)\n default:\n throw Error(`Unsupported base [${base}]`)\n }\n}\n\nconst bigNumberToUint8Array = (value: BigNumber) => {\n //we do new BigNumber in case we got something BigNumberish by accident\n return bufferToUint8Array(Buffer.from(new BigNumber(value).toBuffer()))\n}\n\nconst bufferToUint8Array = (value: Buffer) => {\n return Uint8Array.from(value)\n}\n\nconst xyoDataToUint8Array = (value: AbstractData) => {\n return value.bytes\n}\n\nexport const toUint8ArrayOptional = (value?: DataLike, padLength?: number, base?: number): Uint8Array | undefined => {\n return value ? toUint8Array(value, padLength, base) : undefined\n}\n\nexport const toUint8Array = (value: DataLike, padLength?: number, base?: number): Uint8Array => {\n let result: Uint8Array | undefined =\n ifTypeOf<string, Uint8Array>('string', value as string, (value) => stringToUint8Array(value, base)) ??\n ifTypeOf<BigNumber, Uint8Array | undefined>('object', value as BigNumber, bigNumberToUint8Array, BigNumber.isBN) ??\n ifTypeOf<Buffer, Uint8Array | undefined>('object', value as Buffer, bufferToUint8Array, Buffer.isBuffer) ??\n ifTypeOf<AbstractData, Uint8Array | undefined>('object', value as Buffer, xyoDataToUint8Array, AbstractData.is) ??\n (value as Uint8Array)\n\n if (padLength && result.length < padLength) {\n result = new Uint8Array([...new Uint8Array(padLength - result.length), ...result])\n assertEx(result?.length <= padLength, 'Resulting length is greater than padLength')\n }\n\n return result\n}\n"],"mappings":"AAAA,SAAS,QAAQ,cAAc;AAC/B,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAC1B,SAAS,cAAc;AACvB,SAAS,gBAAgB;AAEzB,SAAS,oBAAoB;AAG7B,MAAM,qBAAqB,CAAC,OAAe,OAAO,OAAO;AACvD,UAAQ,MAAM;AAAA,IACZ,KAAK;AACH,aAAO,OAAO,QAAQ,MAAM,WAAW,IAAI,IAAI,MAAM,MAAM,CAAC,IAAI,OAAO,YAAY,CAAC;AAAA,IACtF,KAAK;AACH,aAAO,OAAO,OAAO,KAAK;AAAA,IAC5B;AACE,YAAM,MAAM,qBAAqB,IAAI,GAAG;AAAA,EAC5C;AACF;AAEA,MAAM,wBAAwB,CAAC,UAAqB;AAElD,SAAO,mBAAmB,OAAO,KAAK,IAAI,UAAU,KAAK,EAAE,SAAS,CAAC,CAAC;AACxE;AAEA,MAAM,qBAAqB,CAAC,UAAkB;AAC5C,SAAO,WAAW,KAAK,KAAK;AAC9B;AAEA,MAAM,sBAAsB,CAAC,UAAwB;AACnD,SAAO,MAAM;AACf;AAEO,MAAM,uBAAuB,CAAC,OAAkB,WAAoB,SAA0C;AACnH,SAAO,QAAQ,aAAa,OAAO,WAAW,IAAI,IAAI;AACxD;AAEO,MAAM,eAAe,CAAC,OAAiB,WAAoB,SAA8B;AAC9F,MAAI,SACF,SAA6B,UAAU,OAAiB,CAACA,WAAU,mBAAmBA,QAAO,IAAI,CAAC,KAClG,SAA4C,UAAU,OAAoB,uBAAuB,UAAU,IAAI,KAC/G,SAAyC,UAAU,OAAiB,oBAAoB,OAAO,QAAQ,KACvG,SAA+C,UAAU,OAAiB,qBAAqB,aAAa,EAAE,KAC7G;AAEH,MAAI,aAAa,OAAO,SAAS,WAAW;AAC1C,aAAS,IAAI,WAAW,CAAC,GAAG,IAAI,WAAW,YAAY,OAAO,MAAM,GAAG,GAAG,MAAM,CAAC;AACjF,aAAS,QAAQ,UAAU,WAAW,4CAA4C;AAAA,EACpF;AAEA,SAAO;AACT;","names":["value"]}
|
package/dist/browser/index.cjs
CHANGED
|
@@ -58,7 +58,7 @@ var import_base2 = require("@scure/base");
|
|
|
58
58
|
var import_assert2 = require("@xylabs/assert");
|
|
59
59
|
var import_bignumber2 = require("@xylabs/bignumber");
|
|
60
60
|
var import_buffer2 = require("@xylabs/buffer");
|
|
61
|
-
var import_keccak256 = __toESM(require("keccak256"));
|
|
61
|
+
var import_keccak256 = __toESM(require("keccak256"), 1);
|
|
62
62
|
|
|
63
63
|
// src/Data/toUint8Array.ts
|
|
64
64
|
var import_base = require("@scure/base");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,OAAO,CAAA;AACrB,cAAc,sBAAsB,CAAA;AACpC,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA"}
|