@xyo-network/core 2.32.0-rc.2 → 2.32.0
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/Data/Data.d.ts +2 -0
- package/dist/cjs/Data/Data.d.ts.map +1 -1
- package/dist/cjs/Data/Data.js +8 -3
- package/dist/cjs/Data/Data.js.map +1 -1
- package/dist/cjs/Data/toUint8Array.d.ts +2 -2
- package/dist/cjs/Data/toUint8Array.d.ts.map +1 -1
- package/dist/cjs/Data/toUint8Array.js +14 -6
- package/dist/cjs/Data/toUint8Array.js.map +1 -1
- package/dist/docs.json +644 -524
- package/dist/esm/Data/Data.d.ts +2 -0
- package/dist/esm/Data/Data.d.ts.map +1 -1
- package/dist/esm/Data/Data.js +8 -3
- package/dist/esm/Data/Data.js.map +1 -1
- package/dist/esm/Data/toUint8Array.d.ts +2 -2
- package/dist/esm/Data/toUint8Array.d.ts.map +1 -1
- package/dist/esm/Data/toUint8Array.js +14 -6
- package/dist/esm/Data/toUint8Array.js.map +1 -1
- package/package.json +3 -3
- package/src/Data/Data.ts +12 -3
- package/src/Data/toUint8Array.spec.ts +6 -0
- package/src/Data/toUint8Array.ts +14 -6
package/dist/esm/Data/Data.d.ts
CHANGED
|
@@ -7,8 +7,10 @@ export declare class XyoData extends XyoAbstractData {
|
|
|
7
7
|
private _bytes?;
|
|
8
8
|
private _length;
|
|
9
9
|
constructor(length: number, bytes?: XyoDataLike);
|
|
10
|
+
constructor(length: number, bytes: string, base?: number);
|
|
10
11
|
private checkLength;
|
|
11
12
|
get hex(): string;
|
|
13
|
+
get base58(): string;
|
|
12
14
|
get buffer(): Buffer;
|
|
13
15
|
get bn(): BigNumber;
|
|
14
16
|
get bytes(): Uint8Array;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Data.d.ts","sourceRoot":"","sources":["../../../src/Data/Data.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Data.d.ts","sourceRoot":"","sources":["../../../src/Data/Data.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAkB,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAY,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAGpD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAE3C,qBAAa,OAAQ,SAAQ,eAAe;IAC1C,OAAO,CAAC,MAAM,CAAC,CAAY;IAC3B,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW;gBACnC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAOxD,OAAO,CAAC,WAAW;IAInB,IAAW,GAAG,WAGb;IAED,IAAW,MAAM,WAGhB;IAED,IAAW,MAAM,WAGhB;IAED,IAAW,EAAE,cAGZ;IAED,IAAW,KAAK,eAEf;IAED,IAAW,SAAS,WAInB;CACF"}
|
package/dist/esm/Data/Data.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { base16, base58 } from '@scure/base';
|
|
1
2
|
import { Buffer, bufferPolyfill } from '@xylabs/buffer';
|
|
2
3
|
import { assertEx, BigNumber } from '@xylabs/sdk-js';
|
|
3
4
|
import keccak256 from 'keccak256';
|
|
@@ -6,9 +7,9 @@ import { toUint8ArrayOptional } from './toUint8Array';
|
|
|
6
7
|
export class XyoData extends XyoAbstractData {
|
|
7
8
|
_bytes;
|
|
8
9
|
_length;
|
|
9
|
-
constructor(length, bytes) {
|
|
10
|
+
constructor(length, bytes, base) {
|
|
10
11
|
super();
|
|
11
|
-
this._bytes = toUint8ArrayOptional(bytes);
|
|
12
|
+
this._bytes = toUint8ArrayOptional(bytes, length, base);
|
|
12
13
|
this._length = length;
|
|
13
14
|
}
|
|
14
15
|
checkLength() {
|
|
@@ -16,7 +17,11 @@ export class XyoData extends XyoAbstractData {
|
|
|
16
17
|
}
|
|
17
18
|
get hex() {
|
|
18
19
|
this.checkLength();
|
|
19
|
-
return
|
|
20
|
+
return base16.encode(this.bytes).toLowerCase();
|
|
21
|
+
}
|
|
22
|
+
get base58() {
|
|
23
|
+
this.checkLength();
|
|
24
|
+
return base58.encode(this.bytes);
|
|
20
25
|
}
|
|
21
26
|
get buffer() {
|
|
22
27
|
this.checkLength();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Data.js","sourceRoot":"","sources":["../../../src/Data/Data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,SAAS,MAAM,WAAW,CAAA;AAEjC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAGrD,MAAM,OAAO,OAAQ,SAAQ,eAAe;IAClC,MAAM,CAAa;IACnB,OAAO,CAAQ;
|
|
1
|
+
{"version":3,"file":"Data.js","sourceRoot":"","sources":["../../../src/Data/Data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,SAAS,MAAM,WAAW,CAAA;AAEjC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAGrD,MAAM,OAAO,OAAQ,SAAQ,eAAe;IAClC,MAAM,CAAa;IACnB,OAAO,CAAQ;IAIvB,YAAY,MAAc,EAAE,KAAmB,EAAE,IAAa;QAC5D,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QACvD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACvB,CAAC;IAEO,WAAW;QACjB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,OAAO,EAAE,oBAAoB,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;IAC3G,CAAC;IAED,IAAW,GAAG;QACZ,IAAI,CAAC,WAAW,EAAE,CAAA;QAClB,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IAChD,CAAC;IAED,IAAW,MAAM;QACf,IAAI,CAAC,WAAW,EAAE,CAAA;QAClB,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAClC,CAAC;IAED,IAAW,MAAM;QACf,IAAI,CAAC,WAAW,EAAE,CAAA;QAClB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC;IAED,IAAW,EAAE;QACX,IAAI,CAAC,WAAW,EAAE,CAAA;QAClB,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAClC,CAAC;IAED,IAAW,KAAK;QACd,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;IACvD,CAAC;IAED,IAAW,SAAS;QAClB,cAAc,EAAE,CAAA;QAChB,IAAI,CAAC,WAAW,EAAE,CAAA;QAClB,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;IACnE,CAAC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { XyoDataLike } from './XyoDataLike';
|
|
2
|
-
export declare const toUint8ArrayOptional: (value?: XyoDataLike, padLength?: number) => Uint8Array | undefined;
|
|
3
|
-
export declare const toUint8Array: (value: XyoDataLike, padLength?: number) => Uint8Array;
|
|
2
|
+
export declare const toUint8ArrayOptional: (value?: XyoDataLike, padLength?: number, base?: number) => Uint8Array | undefined;
|
|
3
|
+
export declare const toUint8Array: (value: XyoDataLike, padLength?: number, base?: number) => Uint8Array;
|
|
4
4
|
//# sourceMappingURL=toUint8Array.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toUint8Array.d.ts","sourceRoot":"","sources":["../../../src/Data/toUint8Array.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toUint8Array.d.ts","sourceRoot":"","sources":["../../../src/Data/toUint8Array.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AA0B3C,eAAO,MAAM,oBAAoB,WAAY,WAAW,cAAc,MAAM,SAAS,MAAM,KAAG,UAAU,GAAG,SAE1G,CAAA;AAED,eAAO,MAAM,YAAY,UAAW,WAAW,cAAc,MAAM,SAAS,MAAM,KAAG,UAcpF,CAAA"}
|
|
@@ -1,9 +1,17 @@
|
|
|
1
|
+
import { base16, base58 } from '@scure/base';
|
|
1
2
|
import { Buffer } from '@xylabs/buffer';
|
|
2
3
|
import { assertEx, BigNumber } from '@xylabs/sdk-js';
|
|
3
4
|
import { ifTypeOf } from '@xyo-network/typeof';
|
|
4
5
|
import { XyoAbstractData } from './AbstractData';
|
|
5
|
-
const stringToUint8Array = (value) => {
|
|
6
|
-
|
|
6
|
+
const stringToUint8Array = (value, base = 16) => {
|
|
7
|
+
switch (base) {
|
|
8
|
+
case 16:
|
|
9
|
+
return base16.decode((value.startsWith('0x') ? value.slice(2) : value).toUpperCase());
|
|
10
|
+
case 58:
|
|
11
|
+
return base58.decode(value);
|
|
12
|
+
default:
|
|
13
|
+
throw Error(`Unsupported base [${base}]`);
|
|
14
|
+
}
|
|
7
15
|
};
|
|
8
16
|
const bigNumberToUint8Array = (value) => {
|
|
9
17
|
//we do new BigNumber in case we got something BigNumberish by accident
|
|
@@ -15,11 +23,11 @@ const bufferToUint8Array = (value) => {
|
|
|
15
23
|
const xyoDataToUint8Array = (value) => {
|
|
16
24
|
return value.bytes;
|
|
17
25
|
};
|
|
18
|
-
export const toUint8ArrayOptional = (value, padLength) => {
|
|
19
|
-
return value ? toUint8Array(value, padLength) : undefined;
|
|
26
|
+
export const toUint8ArrayOptional = (value, padLength, base) => {
|
|
27
|
+
return value ? toUint8Array(value, padLength, base) : undefined;
|
|
20
28
|
};
|
|
21
|
-
export const toUint8Array = (value, padLength) => {
|
|
22
|
-
let result = ifTypeOf('string', value, stringToUint8Array) ??
|
|
29
|
+
export const toUint8Array = (value, padLength, base) => {
|
|
30
|
+
let result = ifTypeOf('string', value, (value) => stringToUint8Array(value, base)) ??
|
|
23
31
|
ifTypeOf('object', value, bigNumberToUint8Array, BigNumber.isBN) ??
|
|
24
32
|
ifTypeOf('object', value, bufferToUint8Array, Buffer.isBuffer) ??
|
|
25
33
|
ifTypeOf('object', value, xyoDataToUint8Array, XyoAbstractData.isXyoData) ??
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toUint8Array.js","sourceRoot":"","sources":["../../../src/Data/toUint8Array.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAGhD,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"toUint8Array.js","sourceRoot":"","sources":["../../../src/Data/toUint8Array.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAGhD,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,IAAI,GAAG,EAAE,EAAE,EAAE;IACtD,QAAQ,IAAI,EAAE;QACZ,KAAK,EAAE;YACL,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;QACvF,KAAK,EAAE;YACL,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC7B;YACE,MAAM,KAAK,CAAC,qBAAqB,IAAI,GAAG,CAAC,CAAA;KAC5C;AACH,CAAC,CAAA;AAED,MAAM,qBAAqB,GAAG,CAAC,KAAgB,EAAE,EAAE;IACjD,uEAAuE;IACvE,OAAO,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;AACzE,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAC3C,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC/B,CAAC,CAAA;AAED,MAAM,mBAAmB,GAAG,CAAC,KAAsB,EAAE,EAAE;IACrD,OAAO,KAAK,CAAC,KAAK,CAAA;AACpB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAmB,EAAE,SAAkB,EAAE,IAAa,EAA0B,EAAE;IACrH,OAAO,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AACjE,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAkB,EAAE,SAAkB,EAAE,IAAa,EAAc,EAAE;IAChG,IAAI,MAAM,GACR,QAAQ,CAAqB,QAAQ,EAAE,KAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACnG,QAAQ,CAAoC,QAAQ,EAAE,KAAkB,EAAE,qBAAqB,EAAE,SAAS,CAAC,IAAI,CAAC;QAChH,QAAQ,CAAiC,QAAQ,EAAE,KAAe,EAAE,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC;QACxG,QAAQ,CAA0C,QAAQ,EAAE,KAAe,EAAE,mBAAmB,EAAE,eAAe,CAAC,SAAS,CAAC;QAC3H,KAAoB,CAAA;IAEvB,IAAI,SAAS,IAAI,MAAM,CAAC,MAAM,GAAG,SAAS,EAAE;QAC1C,MAAM,GAAG,IAAI,UAAU,CAAC,CAAC,GAAG,IAAI,UAAU,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAA;QAClF,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,SAAS,EAAE,4CAA4C,CAAC,CAAA;KACpF;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -10,9 +10,10 @@
|
|
|
10
10
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
+
"@scure/base": "^1.1.1",
|
|
13
14
|
"@xylabs/buffer": "^2.6.7",
|
|
14
15
|
"@xylabs/sdk-js": "^2.6.7",
|
|
15
|
-
"@xyo-network/typeof": "^2.32.0
|
|
16
|
+
"@xyo-network/typeof": "^2.32.0",
|
|
16
17
|
"axios": "^0.27.2",
|
|
17
18
|
"keccak256": "^1.0.6",
|
|
18
19
|
"lodash": "^4.17.21",
|
|
@@ -58,6 +59,5 @@
|
|
|
58
59
|
},
|
|
59
60
|
"sideEffects": false,
|
|
60
61
|
"types": "dist/esm/index.d.ts",
|
|
61
|
-
"version": "2.32.0
|
|
62
|
-
"stableVersion": "2.31.5"
|
|
62
|
+
"version": "2.32.0"
|
|
63
63
|
}
|
package/src/Data/Data.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { base16, base58 } from '@scure/base'
|
|
1
2
|
import { Buffer, bufferPolyfill } from '@xylabs/buffer'
|
|
2
3
|
import { assertEx, BigNumber } from '@xylabs/sdk-js'
|
|
3
4
|
import keccak256 from 'keccak256'
|
|
@@ -9,9 +10,12 @@ import { XyoDataLike } from './XyoDataLike'
|
|
|
9
10
|
export class XyoData extends XyoAbstractData {
|
|
10
11
|
private _bytes?: Uint8Array
|
|
11
12
|
private _length: number
|
|
12
|
-
|
|
13
|
+
|
|
14
|
+
constructor(length: number, bytes?: XyoDataLike)
|
|
15
|
+
constructor(length: number, bytes: string, base?: number)
|
|
16
|
+
constructor(length: number, bytes?: XyoDataLike, base?: number) {
|
|
13
17
|
super()
|
|
14
|
-
this._bytes = toUint8ArrayOptional(bytes)
|
|
18
|
+
this._bytes = toUint8ArrayOptional(bytes, length, base)
|
|
15
19
|
this._length = length
|
|
16
20
|
}
|
|
17
21
|
|
|
@@ -21,7 +25,12 @@ export class XyoData extends XyoAbstractData {
|
|
|
21
25
|
|
|
22
26
|
public get hex() {
|
|
23
27
|
this.checkLength()
|
|
24
|
-
return
|
|
28
|
+
return base16.encode(this.bytes).toLowerCase()
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
public get base58() {
|
|
32
|
+
this.checkLength()
|
|
33
|
+
return base58.encode(this.bytes)
|
|
25
34
|
}
|
|
26
35
|
|
|
27
36
|
public get buffer() {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { base58 } from '@scure/base'
|
|
1
2
|
import { Buffer } from 'buffer'
|
|
2
3
|
|
|
3
4
|
import { toUint8Array } from './toUint8Array'
|
|
@@ -16,4 +17,9 @@ describe('toUint8Array', () => {
|
|
|
16
17
|
const testHexPrime = Buffer.from(toUint8Array(testHex)).toString('hex')
|
|
17
18
|
expect(testHex).toBe(testHexPrime)
|
|
18
19
|
})
|
|
20
|
+
test('Base58 Round Trip', () => {
|
|
21
|
+
const testBase58 = '1a2FZb3caz'
|
|
22
|
+
const testBase58Prime = base58.encode(Buffer.from(toUint8Array(testBase58, undefined, 58)))
|
|
23
|
+
expect(testBase58).toBe(testBase58Prime)
|
|
24
|
+
})
|
|
19
25
|
})
|
package/src/Data/toUint8Array.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { base16, base58 } from '@scure/base'
|
|
1
2
|
import { Buffer } from '@xylabs/buffer'
|
|
2
3
|
import { assertEx, BigNumber } from '@xylabs/sdk-js'
|
|
3
4
|
import { ifTypeOf } from '@xyo-network/typeof'
|
|
@@ -5,8 +6,15 @@ import { ifTypeOf } from '@xyo-network/typeof'
|
|
|
5
6
|
import { XyoAbstractData } from './AbstractData'
|
|
6
7
|
import { XyoDataLike } from './XyoDataLike'
|
|
7
8
|
|
|
8
|
-
const stringToUint8Array = (value: string) => {
|
|
9
|
-
|
|
9
|
+
const stringToUint8Array = (value: string, base = 16) => {
|
|
10
|
+
switch (base) {
|
|
11
|
+
case 16:
|
|
12
|
+
return base16.decode((value.startsWith('0x') ? value.slice(2) : value).toUpperCase())
|
|
13
|
+
case 58:
|
|
14
|
+
return base58.decode(value)
|
|
15
|
+
default:
|
|
16
|
+
throw Error(`Unsupported base [${base}]`)
|
|
17
|
+
}
|
|
10
18
|
}
|
|
11
19
|
|
|
12
20
|
const bigNumberToUint8Array = (value: BigNumber) => {
|
|
@@ -22,13 +30,13 @@ const xyoDataToUint8Array = (value: XyoAbstractData) => {
|
|
|
22
30
|
return value.bytes
|
|
23
31
|
}
|
|
24
32
|
|
|
25
|
-
export const toUint8ArrayOptional = (value?: XyoDataLike, padLength?: number): Uint8Array | undefined => {
|
|
26
|
-
return value ? toUint8Array(value, padLength) : undefined
|
|
33
|
+
export const toUint8ArrayOptional = (value?: XyoDataLike, padLength?: number, base?: number): Uint8Array | undefined => {
|
|
34
|
+
return value ? toUint8Array(value, padLength, base) : undefined
|
|
27
35
|
}
|
|
28
36
|
|
|
29
|
-
export const toUint8Array = (value: XyoDataLike, padLength?: number): Uint8Array => {
|
|
37
|
+
export const toUint8Array = (value: XyoDataLike, padLength?: number, base?: number): Uint8Array => {
|
|
30
38
|
let result: Uint8Array | undefined =
|
|
31
|
-
ifTypeOf<string, Uint8Array>('string', value as string, stringToUint8Array) ??
|
|
39
|
+
ifTypeOf<string, Uint8Array>('string', value as string, (value) => stringToUint8Array(value, base)) ??
|
|
32
40
|
ifTypeOf<BigNumber, Uint8Array | undefined>('object', value as BigNumber, bigNumberToUint8Array, BigNumber.isBN) ??
|
|
33
41
|
ifTypeOf<Buffer, Uint8Array | undefined>('object', value as Buffer, bufferToUint8Array, Buffer.isBuffer) ??
|
|
34
42
|
ifTypeOf<XyoAbstractData, Uint8Array | undefined>('object', value as Buffer, xyoDataToUint8Array, XyoAbstractData.isXyoData) ??
|