@xyo-network/payload 2.36.1 → 2.36.2
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/Builder/Builder.d.ts +0 -2
- package/dist/cjs/Builder/Builder.d.ts.map +1 -1
- package/dist/cjs/Builder/Builder.js +1 -5
- package/dist/cjs/Builder/Builder.js.map +1 -1
- package/dist/cjs/Wrapper/Wrapper.d.ts +11 -6
- package/dist/cjs/Wrapper/Wrapper.d.ts.map +1 -1
- package/dist/cjs/Wrapper/Wrapper.js +17 -10
- package/dist/cjs/Wrapper/Wrapper.js.map +1 -1
- package/dist/cjs/models/Base.d.ts +0 -1
- package/dist/cjs/models/Base.d.ts.map +1 -1
- package/dist/docs.json +2449 -1348
- package/dist/esm/Builder/Builder.d.ts +0 -2
- package/dist/esm/Builder/Builder.d.ts.map +1 -1
- package/dist/esm/Builder/Builder.js +1 -6
- package/dist/esm/Builder/Builder.js.map +1 -1
- package/dist/esm/Wrapper/Wrapper.d.ts +11 -6
- package/dist/esm/Wrapper/Wrapper.d.ts.map +1 -1
- package/dist/esm/Wrapper/Wrapper.js +12 -6
- package/dist/esm/Wrapper/Wrapper.js.map +1 -1
- package/dist/esm/models/Base.d.ts +0 -1
- package/dist/esm/models/Base.d.ts.map +1 -1
- package/package.json +4 -3
- package/src/Builder/Builder.ts +1 -7
- package/src/Wrapper/Wrapper.ts +19 -10
- package/src/models/Base.ts +0 -1
|
@@ -4,11 +4,9 @@ export interface XyoPayloadBuilderOptions {
|
|
|
4
4
|
}
|
|
5
5
|
export declare class XyoPayloadBuilder<T extends XyoPayload = XyoPayload<Record<string, unknown>>> {
|
|
6
6
|
private _fields;
|
|
7
|
-
private _previousHash?;
|
|
8
7
|
private _schema;
|
|
9
8
|
constructor({ schema }: XyoPayloadBuilderOptions);
|
|
10
9
|
fields(fields?: Partial<T>): this;
|
|
11
|
-
previousHash(hash?: string): this;
|
|
12
10
|
hashableFields(): T;
|
|
13
11
|
build(): T;
|
|
14
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Builder.d.ts","sourceRoot":"","sources":["../../../src/Builder/Builder.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvF,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"Builder.d.ts","sourceRoot":"","sources":["../../../src/Builder/Builder.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvF,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,OAAO,CAAQ;gBAEX,EAAE,MAAM,EAAE,EAAE,wBAAwB;IAIzC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAO1B,cAAc;IAOd,KAAK,IAAI,CAAC;CAMlB"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { deepOmitUnderscoreFields, Hasher, removeEmptyFields } from '@xyo-network/core';
|
|
2
2
|
export class XyoPayloadBuilder {
|
|
3
3
|
_fields = {};
|
|
4
|
-
_previousHash;
|
|
5
4
|
_schema;
|
|
6
5
|
constructor({ schema }) {
|
|
7
6
|
this._schema = schema;
|
|
@@ -12,13 +11,9 @@ export class XyoPayloadBuilder {
|
|
|
12
11
|
}
|
|
13
12
|
return this;
|
|
14
13
|
}
|
|
15
|
-
previousHash(hash) {
|
|
16
|
-
this._previousHash = hash;
|
|
17
|
-
return this;
|
|
18
|
-
}
|
|
19
14
|
hashableFields() {
|
|
20
15
|
return {
|
|
21
|
-
...removeEmptyFields(deepOmitUnderscoreFields(
|
|
16
|
+
...removeEmptyFields(deepOmitUnderscoreFields(this._fields)),
|
|
22
17
|
schema: this._schema,
|
|
23
18
|
};
|
|
24
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Builder.js","sourceRoot":"","sources":["../../../src/Builder/Builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAQvF,MAAM,OAAO,iBAAiB;IACpB,OAAO,GAAe,EAAE,CAAA;IACxB,
|
|
1
|
+
{"version":3,"file":"Builder.js","sourceRoot":"","sources":["../../../src/Builder/Builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAQvF,MAAM,OAAO,iBAAiB;IACpB,OAAO,GAAe,EAAE,CAAA;IACxB,OAAO,CAAQ;IAEvB,YAAY,EAAE,MAAM,EAA4B;QAC9C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACvB,CAAC;IAEM,MAAM,CAAC,MAAmB;QAC/B,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAA;SACjE;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,cAAc;QACnB,OAAO;YACL,GAAG,iBAAiB,CAAC,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5D,MAAM,EAAE,IAAI,CAAC,OAAO;SAChB,CAAA;IACR,CAAC;IAEM,KAAK;QACV,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QAC5C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAA;QAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC7B,OAAO,EAAE,GAAG,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,CAAA;IACtF,CAAC;CACF"}
|
|
@@ -1,19 +1,24 @@
|
|
|
1
1
|
import { Hasher, XyoDataLike } from '@xyo-network/core';
|
|
2
|
+
import { Promisable } from '@xyo-network/promise';
|
|
2
3
|
import { Huri } from '../Huri';
|
|
3
4
|
import { XyoPayload } from '../models';
|
|
4
|
-
export declare class
|
|
5
|
-
|
|
6
|
-
get payload(): T;
|
|
5
|
+
export declare abstract class PayloadWrapperBase<TPayload extends XyoPayload = XyoPayload> extends Hasher<TPayload> {
|
|
6
|
+
get payload(): TPayload;
|
|
7
7
|
get schemaName(): string;
|
|
8
|
-
get body():
|
|
8
|
+
get body(): TPayload;
|
|
9
9
|
get valid(): boolean;
|
|
10
10
|
get errors(): Error[];
|
|
11
|
+
static load(_address: XyoDataLike | Huri): Promisable<PayloadWrapperBase | null>;
|
|
12
|
+
static parse(_obj: unknown): PayloadWrapperBase;
|
|
13
|
+
}
|
|
14
|
+
export declare class PayloadWrapper<TPayload extends XyoPayload = XyoPayload> extends PayloadWrapperBase<TPayload> {
|
|
15
|
+
private isPayloadWrapper;
|
|
11
16
|
static load(address: XyoDataLike | Huri): Promise<PayloadWrapper<import("../models").SchemaFields & import("../models").PayloadFields & {
|
|
12
17
|
schema: string;
|
|
13
|
-
}> |
|
|
18
|
+
}> | null>;
|
|
14
19
|
static parse<T extends XyoPayload = XyoPayload>(obj: unknown): PayloadWrapper<T>;
|
|
15
20
|
}
|
|
16
21
|
/** @deprecated use PayloadWrapper instead */
|
|
17
|
-
export declare class XyoPayloadWrapper<T extends XyoPayload = XyoPayload> extends
|
|
22
|
+
export declare class XyoPayloadWrapper<T extends XyoPayload = XyoPayload> extends PayloadWrapperBase<T> {
|
|
18
23
|
}
|
|
19
24
|
//# sourceMappingURL=Wrapper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Wrapper.d.ts","sourceRoot":"","sources":["../../../src/Wrapper/Wrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAA4B,MAAM,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"Wrapper.d.ts","sourceRoot":"","sources":["../../../src/Wrapper/Wrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAA4B,MAAM,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAGtC,8BAAsB,kBAAkB,CAAC,QAAQ,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,MAAM,CAAC,QAAQ,CAAC;IACzG,IAAW,OAAO,aAEjB;IAGD,IAAW,UAAU,WAEpB;IAED,IAAW,IAAI,aAEd;IAED,IAAI,KAAK,YAER;IAED,IAAI,MAAM,YAET;WAEa,IAAI,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,GAAG,UAAU,CAAC,kBAAkB,GAAG,IAAI,CAAC;WAIzE,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,kBAAkB;CAGvD;AAED,qBAAa,cAAc,CAAC,QAAQ,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,kBAAkB,CAAC,QAAQ,CAAC;IACxG,OAAO,CAAC,gBAAgB,CAAO;WAEF,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;;;WAKtC,KAAK,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,GAAG,EAAE,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC;CAUjG;AAED,6CAA6C;AAC7C,qBAAa,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,kBAAkB,CAAC,CAAC,CAAC;CAAG"}
|
|
@@ -2,8 +2,7 @@ import { assertEx } from '@xylabs/assert';
|
|
|
2
2
|
import { deepOmitUnderscoreFields, Hasher } from '@xyo-network/core';
|
|
3
3
|
import { Huri } from '../Huri';
|
|
4
4
|
import { PayloadValidator } from '../Validator';
|
|
5
|
-
export class
|
|
6
|
-
isPayloadWrapper = true;
|
|
5
|
+
export class PayloadWrapperBase extends Hasher {
|
|
7
6
|
get payload() {
|
|
8
7
|
return this.obj;
|
|
9
8
|
}
|
|
@@ -20,11 +19,18 @@ export class PayloadWrapper extends Hasher {
|
|
|
20
19
|
get errors() {
|
|
21
20
|
return new PayloadValidator(this.payload).validate();
|
|
22
21
|
}
|
|
22
|
+
static load(_address) {
|
|
23
|
+
throw Error('Not implemented');
|
|
24
|
+
}
|
|
25
|
+
static parse(_obj) {
|
|
26
|
+
throw Error('Not implemented');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export class PayloadWrapper extends PayloadWrapperBase {
|
|
30
|
+
isPayloadWrapper = true;
|
|
23
31
|
static async load(address) {
|
|
24
32
|
const payload = await new Huri(address).fetch();
|
|
25
|
-
|
|
26
|
-
return new PayloadWrapper(payload);
|
|
27
|
-
}
|
|
33
|
+
return payload ? new PayloadWrapper(payload) : null;
|
|
28
34
|
}
|
|
29
35
|
static parse(obj) {
|
|
30
36
|
assertEx(!Array.isArray(obj), 'Array can not be converted to PayloadWrapper');
|
|
@@ -38,6 +44,6 @@ export class PayloadWrapper extends Hasher {
|
|
|
38
44
|
}
|
|
39
45
|
}
|
|
40
46
|
/** @deprecated use PayloadWrapper instead */
|
|
41
|
-
export class XyoPayloadWrapper extends
|
|
47
|
+
export class XyoPayloadWrapper extends PayloadWrapperBase {
|
|
42
48
|
}
|
|
43
49
|
//# sourceMappingURL=Wrapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Wrapper.js","sourceRoot":"","sources":["../../../src/Wrapper/Wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAe,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"Wrapper.js","sourceRoot":"","sources":["../../../src/Wrapper/Wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAe,MAAM,mBAAmB,CAAA;AAGjF,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAE9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,MAAM,OAAgB,kBAA6D,SAAQ,MAAgB;IACzG,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;IAED,6FAA6F;IAC7F,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAA;IACxB,CAAC;IAED,IAAW,IAAI;QACb,OAAO,wBAAwB,CAAW,IAAI,CAAC,GAAG,CAAC,CAAA;IACrD,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAA;IACjC,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAA;IACtD,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,QAA4B;QAC7C,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAChC,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,IAAa;QAC/B,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAChC,CAAC;CACF;AAED,MAAM,OAAO,cAAyD,SAAQ,kBAA4B;IAChG,gBAAgB,GAAG,IAAI,CAAA;IAExB,MAAM,CAAU,KAAK,CAAC,IAAI,CAAC,OAA2B;QAC3D,MAAM,OAAO,GAAG,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAA;QAC/C,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACrD,CAAC;IAEM,MAAM,CAAU,KAAK,CAAoC,GAAY;QAC1E,QAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,8CAA8C,CAAC,CAAA;QAC7E,QAAQ,OAAO,GAAG,EAAE;YAClB,KAAK,QAAQ,CAAC,CAAC;gBACb,MAAM,WAAW,GAAG,GAAwB,CAAA;gBAC5C,OAAO,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,GAAQ,CAAC,CAAA;aAClF;SACF;QACD,MAAM,KAAK,CAAC,oBAAoB,OAAO,GAAG,GAAG,CAAC,CAAA;IAChD,CAAC;CACF;AAED,6CAA6C;AAC7C,MAAM,OAAO,iBAAqD,SAAQ,kBAAqB;CAAG"}
|
|
@@ -9,7 +9,6 @@ export declare type SchemaFields = {
|
|
|
9
9
|
};
|
|
10
10
|
export declare type WithSchema<T extends EmptyObject | void = void> = T extends EmptyObject ? SchemaFields & T : SchemaFields;
|
|
11
11
|
export declare type PayloadFields = {
|
|
12
|
-
previousHash?: string;
|
|
13
12
|
sources?: string[];
|
|
14
13
|
timestamp?: number;
|
|
15
14
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Base.d.ts","sourceRoot":"","sources":["../../../src/models/Base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,oBAAY,aAAa,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,CAAC,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAA;AAE1F,oBAAY,gBAAgB,GAAG,qBAAqB,CAAA;AACpD,eAAO,MAAM,gBAAgB,EAAE,gBAAwC,CAAA;AAEvE,oBAAY,YAAY,GAAG;IACzB,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,oBAAY,UAAU,CAAC,CAAC,SAAS,WAAW,GAAG,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,WAAW,GAAG,YAAY,GAAG,CAAC,GAAG,YAAY,CAAA;AAErH,oBAAY,aAAa,GAAG;IAC1B,
|
|
1
|
+
{"version":3,"file":"Base.d.ts","sourceRoot":"","sources":["../../../src/models/Base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,oBAAY,aAAa,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,CAAC,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAA;AAE1F,oBAAY,gBAAgB,GAAG,qBAAqB,CAAA;AACpD,eAAO,MAAM,gBAAgB,EAAE,gBAAwC,CAAA;AAEvE,oBAAY,YAAY,GAAG;IACzB,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,oBAAY,UAAU,CAAC,CAAC,SAAS,WAAW,GAAG,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,WAAW,GAAG,YAAY,GAAG,CAAC,GAAG,YAAY,CAAA;AAErH,oBAAY,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,oBAAY,WAAW,CAAC,CAAC,SAAS,WAAW,GAAG,IAAI,GAAG,IAAI,IAAI,UAAU,CAAC,CAAC,SAAS,WAAW,GAAG,aAAa,GAAG,CAAC,GAAG,aAAa,CAAC,CAAA;AAEpI,oBAAY,UAAU,CACpB,CAAC,SAAS,IAAI,GAAG,WAAW,GAAG,UAAU,GAAG,IAAI,EAChD,CAAC,SAAS,MAAM,GAAG,CAAC,SAAS,UAAU,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,IAC5D,CAAC,SAAS,UAAU,GAEpB,WAAW,CAAC,CAAC,CAAC,GACd,CAAC,SAAS,WAAW,GAErB,WAAW,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC,GAE9B,WAAW,CAAC;IAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -11,8 +11,9 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@xylabs/assert": "^2.6.9",
|
|
14
|
-
"@xyo-network/account": "^2.36.
|
|
15
|
-
"@xyo-network/core": "^2.36.
|
|
14
|
+
"@xyo-network/account": "^2.36.2",
|
|
15
|
+
"@xyo-network/core": "^2.36.2",
|
|
16
|
+
"@xyo-network/promise": "^2.36.2",
|
|
16
17
|
"axios": "^0.27.2",
|
|
17
18
|
"tslib": "^2.4.0"
|
|
18
19
|
},
|
|
@@ -49,5 +50,5 @@
|
|
|
49
50
|
},
|
|
50
51
|
"sideEffects": false,
|
|
51
52
|
"types": "dist/esm/index.d.ts",
|
|
52
|
-
"version": "2.36.
|
|
53
|
+
"version": "2.36.2"
|
|
53
54
|
}
|
package/src/Builder/Builder.ts
CHANGED
|
@@ -8,7 +8,6 @@ export interface XyoPayloadBuilderOptions {
|
|
|
8
8
|
|
|
9
9
|
export class XyoPayloadBuilder<T extends XyoPayload = XyoPayload<Record<string, unknown>>> {
|
|
10
10
|
private _fields: Partial<T> = {}
|
|
11
|
-
private _previousHash?: string
|
|
12
11
|
private _schema: string
|
|
13
12
|
|
|
14
13
|
constructor({ schema }: XyoPayloadBuilderOptions) {
|
|
@@ -22,14 +21,9 @@ export class XyoPayloadBuilder<T extends XyoPayload = XyoPayload<Record<string,
|
|
|
22
21
|
return this
|
|
23
22
|
}
|
|
24
23
|
|
|
25
|
-
public previousHash(hash?: string) {
|
|
26
|
-
this._previousHash = hash
|
|
27
|
-
return this
|
|
28
|
-
}
|
|
29
|
-
|
|
30
24
|
public hashableFields() {
|
|
31
25
|
return {
|
|
32
|
-
...removeEmptyFields(deepOmitUnderscoreFields(
|
|
26
|
+
...removeEmptyFields(deepOmitUnderscoreFields(this._fields)),
|
|
33
27
|
schema: this._schema,
|
|
34
28
|
} as T
|
|
35
29
|
}
|
package/src/Wrapper/Wrapper.ts
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { assertEx } from '@xylabs/assert'
|
|
2
2
|
import { deepOmitUnderscoreFields, Hasher, XyoDataLike } from '@xyo-network/core'
|
|
3
|
+
import { Promisable } from '@xyo-network/promise'
|
|
3
4
|
|
|
4
5
|
import { Huri } from '../Huri'
|
|
5
6
|
import { XyoPayload } from '../models'
|
|
6
7
|
import { PayloadValidator } from '../Validator'
|
|
7
8
|
|
|
8
|
-
export class
|
|
9
|
-
private isPayloadWrapper = true
|
|
10
|
-
|
|
9
|
+
export abstract class PayloadWrapperBase<TPayload extends XyoPayload = XyoPayload> extends Hasher<TPayload> {
|
|
11
10
|
public get payload() {
|
|
12
11
|
return this.obj
|
|
13
12
|
}
|
|
@@ -18,7 +17,7 @@ export class PayloadWrapper<T extends XyoPayload = XyoPayload> extends Hasher<T>
|
|
|
18
17
|
}
|
|
19
18
|
|
|
20
19
|
public get body() {
|
|
21
|
-
return deepOmitUnderscoreFields<
|
|
20
|
+
return deepOmitUnderscoreFields<TPayload>(this.obj)
|
|
22
21
|
}
|
|
23
22
|
|
|
24
23
|
get valid() {
|
|
@@ -29,14 +28,24 @@ export class PayloadWrapper<T extends XyoPayload = XyoPayload> extends Hasher<T>
|
|
|
29
28
|
return new PayloadValidator(this.payload).validate()
|
|
30
29
|
}
|
|
31
30
|
|
|
32
|
-
public static
|
|
31
|
+
public static load(_address: XyoDataLike | Huri): Promisable<PayloadWrapperBase | null> {
|
|
32
|
+
throw Error('Not implemented')
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
public static parse(_obj: unknown): PayloadWrapperBase {
|
|
36
|
+
throw Error('Not implemented')
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export class PayloadWrapper<TPayload extends XyoPayload = XyoPayload> extends PayloadWrapperBase<TPayload> {
|
|
41
|
+
private isPayloadWrapper = true
|
|
42
|
+
|
|
43
|
+
public static override async load(address: XyoDataLike | Huri) {
|
|
33
44
|
const payload = await new Huri(address).fetch()
|
|
34
|
-
|
|
35
|
-
return new PayloadWrapper(payload)
|
|
36
|
-
}
|
|
45
|
+
return payload ? new PayloadWrapper(payload) : null
|
|
37
46
|
}
|
|
38
47
|
|
|
39
|
-
public static parse<T extends XyoPayload = XyoPayload>(obj: unknown): PayloadWrapper<T> {
|
|
48
|
+
public static override parse<T extends XyoPayload = XyoPayload>(obj: unknown): PayloadWrapper<T> {
|
|
40
49
|
assertEx(!Array.isArray(obj), 'Array can not be converted to PayloadWrapper')
|
|
41
50
|
switch (typeof obj) {
|
|
42
51
|
case 'object': {
|
|
@@ -49,4 +58,4 @@ export class PayloadWrapper<T extends XyoPayload = XyoPayload> extends Hasher<T>
|
|
|
49
58
|
}
|
|
50
59
|
|
|
51
60
|
/** @deprecated use PayloadWrapper instead */
|
|
52
|
-
export class XyoPayloadWrapper<T extends XyoPayload = XyoPayload> extends
|
|
61
|
+
export class XyoPayloadWrapper<T extends XyoPayload = XyoPayload> extends PayloadWrapperBase<T> {}
|
package/src/models/Base.ts
CHANGED