@xyo-network/payload 2.33.0-rc.13 → 2.33.0-rc.15
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 +1 -2
- package/dist/cjs/Builder/Builder.d.ts.map +1 -1
- package/dist/cjs/Builder/Builder.js +1 -1
- package/dist/cjs/Builder/Builder.js.map +1 -1
- package/dist/cjs/Huri/Huri.d.ts +3 -0
- package/dist/cjs/Huri/Huri.d.ts.map +1 -1
- package/dist/cjs/Test/testPayload.d.ts +2 -2
- package/dist/cjs/Test/testPayload.d.ts.map +1 -1
- package/dist/cjs/Test/testPayload.js +0 -3
- package/dist/cjs/Test/testPayload.js.map +1 -1
- package/dist/cjs/Validator/index.d.ts +0 -1
- package/dist/cjs/Validator/index.d.ts.map +1 -1
- package/dist/cjs/Validator/index.js +0 -1
- package/dist/cjs/Validator/index.js.map +1 -1
- package/dist/cjs/Wrapper/Validator.d.ts +11 -3
- package/dist/cjs/Wrapper/Validator.d.ts.map +1 -1
- package/dist/cjs/Wrapper/Validator.js.map +1 -1
- package/dist/cjs/Wrapper/Wrapper.d.ts +6 -2
- package/dist/cjs/Wrapper/Wrapper.d.ts.map +1 -1
- package/dist/cjs/Wrapper/Wrapper.js +2 -1
- package/dist/cjs/Wrapper/Wrapper.js.map +1 -1
- package/dist/cjs/isXyoPayloadOfSchemaType.d.ts +3 -0
- package/dist/cjs/isXyoPayloadOfSchemaType.d.ts.map +1 -1
- package/dist/cjs/models/Base.d.ts +10 -2
- package/dist/cjs/models/Base.d.ts.map +1 -1
- package/dist/cjs/models/Meta.d.ts +6 -0
- package/dist/cjs/models/Meta.d.ts.map +1 -1
- package/dist/cjs/models/Meta.js +1 -0
- package/dist/cjs/models/Meta.js.map +1 -1
- package/dist/docs.json +5704 -3302
- package/dist/esm/Builder/Builder.d.ts +1 -2
- package/dist/esm/Builder/Builder.d.ts.map +1 -1
- package/dist/esm/Builder/Builder.js +2 -2
- package/dist/esm/Builder/Builder.js.map +1 -1
- package/dist/esm/Huri/Huri.d.ts +3 -0
- package/dist/esm/Huri/Huri.d.ts.map +1 -1
- package/dist/esm/Test/testPayload.d.ts +2 -2
- package/dist/esm/Test/testPayload.d.ts.map +1 -1
- package/dist/esm/Test/testPayload.js +0 -3
- package/dist/esm/Test/testPayload.js.map +1 -1
- package/dist/esm/Validator/index.d.ts +0 -1
- package/dist/esm/Validator/index.d.ts.map +1 -1
- package/dist/esm/Validator/index.js +0 -1
- package/dist/esm/Validator/index.js.map +1 -1
- package/dist/esm/Wrapper/Validator.d.ts +11 -3
- package/dist/esm/Wrapper/Validator.d.ts.map +1 -1
- package/dist/esm/Wrapper/Validator.js.map +1 -1
- package/dist/esm/Wrapper/Wrapper.d.ts +6 -2
- package/dist/esm/Wrapper/Wrapper.d.ts.map +1 -1
- package/dist/esm/Wrapper/Wrapper.js +3 -2
- package/dist/esm/Wrapper/Wrapper.js.map +1 -1
- package/dist/esm/isXyoPayloadOfSchemaType.d.ts +3 -0
- package/dist/esm/isXyoPayloadOfSchemaType.d.ts.map +1 -1
- package/dist/esm/models/Base.d.ts +10 -2
- package/dist/esm/models/Base.d.ts.map +1 -1
- package/dist/esm/models/Meta.d.ts +6 -0
- package/dist/esm/models/Meta.d.ts.map +1 -1
- package/dist/esm/models/Meta.js +1 -0
- package/dist/esm/models/Meta.js.map +1 -1
- package/package.json +3 -3
- package/src/Builder/Builder.spec.ts +2 -1
- package/src/Builder/Builder.ts +3 -3
- package/src/Test/testPayload.ts +2 -5
- package/src/Validator/Validator.spec.ts +10 -21
- package/src/Validator/index.ts +0 -1
- package/src/Wrapper/Validator.ts +2 -4
- package/src/Wrapper/Wrapper.ts +3 -2
- package/src/models/Base.ts +23 -7
- package/src/models/Meta.ts +7 -0
- package/dist/cjs/Validator/MetaValidator.d.ts +0 -9
- package/dist/cjs/Validator/MetaValidator.d.ts.map +0 -1
- package/dist/cjs/Validator/MetaValidator.js +0 -34
- package/dist/cjs/Validator/MetaValidator.js.map +0 -1
- package/dist/esm/Validator/MetaValidator.d.ts +0 -9
- package/dist/esm/Validator/MetaValidator.d.ts.map +0 -1
- package/dist/esm/Validator/MetaValidator.js +0 -31
- package/dist/esm/Validator/MetaValidator.js.map +0 -1
- package/src/Validator/MetaValidator.spec.ts +0 -11
- package/src/Validator/MetaValidator.ts +0 -34
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { StringKeyObject } from '@xyo-network/core';
|
|
2
1
|
import { XyoPayload } from '../models';
|
|
3
2
|
export interface XyoPayloadBuilderOptions {
|
|
4
3
|
schema: string;
|
|
5
4
|
}
|
|
6
|
-
export declare class XyoPayloadBuilder<T extends XyoPayload = XyoPayload
|
|
5
|
+
export declare class XyoPayloadBuilder<T extends XyoPayload = XyoPayload> {
|
|
7
6
|
private _fields;
|
|
8
7
|
private _previousHash?;
|
|
9
8
|
private _schema;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Builder.d.ts","sourceRoot":"","sources":["../../../src/Builder/Builder.ts"],"names":[],"mappings":"
|
|
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;IAC9D,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,aAAa,CAAC,CAAQ;IAC9B,OAAO,CAAC,OAAO,CAAQ;gBAEX,EAAE,MAAM,EAAE,EAAE,wBAAwB;IAIzC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAO1B,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM;IAK1B,cAAc;IAOd,KAAK,IAAI,CAAC;CAMlB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { deepOmitUnderscoreFields,
|
|
1
|
+
import { deepOmitUnderscoreFields, Hasher, removeEmptyFields } from '@xyo-network/core';
|
|
2
2
|
export class XyoPayloadBuilder {
|
|
3
3
|
_fields = {};
|
|
4
4
|
_previousHash;
|
|
@@ -24,7 +24,7 @@ export class XyoPayloadBuilder {
|
|
|
24
24
|
}
|
|
25
25
|
build() {
|
|
26
26
|
const hashableFields = this.hashableFields();
|
|
27
|
-
const _hash = new
|
|
27
|
+
const _hash = new Hasher(hashableFields).hash;
|
|
28
28
|
const _timestamp = Date.now();
|
|
29
29
|
return { ...hashableFields, _client: 'js', _hash, _timestamp, schema: this._schema };
|
|
30
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Builder.js","sourceRoot":"","sources":["../../../src/Builder/Builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,
|
|
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,aAAa,CAAS;IACtB,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,YAAY,CAAC,IAAa;QAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;QACzB,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,cAAc;QACnB,OAAO;YACL,GAAG,iBAAiB,CAAC,wBAAwB,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;YACrG,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"}
|
package/dist/esm/Huri/Huri.d.ts
CHANGED
|
@@ -27,9 +27,12 @@ export declare class Huri<T extends XyoPayload = XyoPayload> {
|
|
|
27
27
|
private static parsePath;
|
|
28
28
|
static isHuri(value: unknown): Huri<{
|
|
29
29
|
schema: string;
|
|
30
|
+
} & {
|
|
30
31
|
previousHash?: string | undefined;
|
|
31
32
|
sources?: string[] | undefined;
|
|
32
33
|
timestamp?: number | undefined;
|
|
34
|
+
} & {
|
|
35
|
+
schema: string;
|
|
33
36
|
}> | undefined;
|
|
34
37
|
}
|
|
35
38
|
//# sourceMappingURL=Huri.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Huri.d.ts","sourceRoot":"","sources":["../../../src/Huri/Huri.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAG/C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,oBAAY,iBAAiB,GAAG,OAAO,GAAG,SAAS,CAAA;AAEnD,oBAAY,iBAAiB,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAA;AAY/E,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAClE,OAAO,EAAE,CAAC,CAAA;IACV,IAAI,CAAC,EAAE,IAAI,CAAA;CACZ;AAED,qBAAa,IAAI,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC1C,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IAEnB,OAAO,CAAC,MAAM,CAAO;gBAET,IAAI,EAAE,WAAW,GAAG,IAAI,EAAE,EAAE,YAAY,EAAE,GAAE,WAAgB;IAoBxE,OAAO,CAAC,SAAS;IAwBjB,OAAO,CAAC,aAAa;IAerB,IAAW,IAAI,WAad;IAEM,QAAQ;IAIF,KAAK,IAAI,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;WAI/B,KAAK,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAIzF,OAAO,CAAC,MAAM,CAAC,aAAa;IAY5B,OAAO,CAAC,MAAM,CAAC,SAAS;WAWV,MAAM,CAAC,KAAK,EAAE,OAAO
|
|
1
|
+
{"version":3,"file":"Huri.d.ts","sourceRoot":"","sources":["../../../src/Huri/Huri.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAG/C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,oBAAY,iBAAiB,GAAG,OAAO,GAAG,SAAS,CAAA;AAEnD,oBAAY,iBAAiB,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAA;AAY/E,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAClE,OAAO,EAAE,CAAC,CAAA;IACV,IAAI,CAAC,EAAE,IAAI,CAAA;CACZ;AAED,qBAAa,IAAI,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC1C,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IAEnB,OAAO,CAAC,MAAM,CAAO;gBAET,IAAI,EAAE,WAAW,GAAG,IAAI,EAAE,EAAE,YAAY,EAAE,GAAE,WAAgB;IAoBxE,OAAO,CAAC,SAAS;IAwBjB,OAAO,CAAC,aAAa;IAerB,IAAW,IAAI,WAad;IAEM,QAAQ;IAIF,KAAK,IAAI,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;WAI/B,KAAK,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAIzF,OAAO,CAAC,MAAM,CAAC,aAAa;IAY5B,OAAO,CAAC,MAAM,CAAC,SAAS;WAWV,MAAM,CAAC,KAAK,EAAE,OAAO;;;;;;;;;CAMpC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { StringKeyObject } from '@xyo-network/core';
|
|
2
|
-
import {
|
|
2
|
+
import { XyoPayload } from '../models';
|
|
3
3
|
declare const testSchema = "network.xyo.test";
|
|
4
|
-
declare const testPayload:
|
|
4
|
+
declare const testPayload: XyoPayload<StringKeyObject>;
|
|
5
5
|
export { testPayload, testSchema };
|
|
6
6
|
//# sourceMappingURL=testPayload.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testPayload.d.ts","sourceRoot":"","sources":["../../../src/Test/testPayload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"testPayload.d.ts","sourceRoot":"","sources":["../../../src/Test/testPayload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,QAAA,MAAM,UAAU,qBAAqB,CAAA;AACrC,QAAA,MAAM,WAAW,EAAE,UAAU,CAAC,eAAe,CAQ5C,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testPayload.js","sourceRoot":"","sources":["../../../src/Test/testPayload.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,GAAG,kBAAkB,CAAA;AACrC,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"testPayload.js","sourceRoot":"","sources":["../../../src/Test/testPayload.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,GAAG,kBAAkB,CAAA;AACrC,MAAM,WAAW,GAAgC;IAC/C,WAAW,EAAE,CAAC;IACd,WAAW,EAAE;QACX,WAAW,EAAE,CAAC;QACd,WAAW,EAAE,aAAa;KAC3B;IACD,MAAM,EAAE,UAAU;IAClB,WAAW,EAAE,aAAa;CAC3B,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA"}
|
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
import { XyoValidatorBase } from '@xyo-network/core';
|
|
2
|
-
import {
|
|
2
|
+
import { XyoPayload } from '../models';
|
|
3
3
|
import { XyoPayloadValidator } from '../Validator';
|
|
4
4
|
import { XyoPayloadWrapper } from './Wrapper';
|
|
5
|
-
export declare class XyoPayloadWrapperValidator<T extends XyoPayloadWrapper<
|
|
6
|
-
get payload(): XyoPayloadValidator<
|
|
5
|
+
export declare class XyoPayloadWrapperValidator<T extends XyoPayloadWrapper<XyoPayload> = XyoPayloadWrapper<XyoPayload>> extends XyoValidatorBase<T> {
|
|
6
|
+
get payload(): XyoPayloadValidator<{
|
|
7
|
+
schema: string;
|
|
8
|
+
} & {
|
|
9
|
+
previousHash?: string | undefined;
|
|
10
|
+
sources?: string[] | undefined;
|
|
11
|
+
timestamp?: number | undefined;
|
|
12
|
+
} & {
|
|
13
|
+
schema: string;
|
|
14
|
+
}>;
|
|
7
15
|
validate(): Error[];
|
|
8
16
|
}
|
|
9
17
|
//# sourceMappingURL=Validator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../../../src/Wrapper/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEpD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../../../src/Wrapper/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAE7C,qBAAa,0BAA0B,CAAC,CAAC,SAAS,iBAAiB,CAAC,UAAU,CAAC,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAE,SAAQ,gBAAgB,CAAC,CAAC,CAAC;IAC1I,IAAW,OAAO;;;;;;;;OAEjB;IAEM,QAAQ;CAKhB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../src/Wrapper/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAGpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAGlD,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../src/Wrapper/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAGpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAGlD,MAAM,OAAO,0BAAoG,SAAQ,gBAAmB;IAC1I,IAAW,OAAO;QAChB,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC/C,CAAC;IAEM,QAAQ;QACb,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;QACvC,OAAO,MAAM,CAAA;IACf,CAAC;CACF"}
|
|
@@ -1,15 +1,19 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Hasher, XyoDataLike } from '@xyo-network/core';
|
|
2
2
|
import { Huri } from '../Huri';
|
|
3
3
|
import { XyoPayload } from '../models';
|
|
4
|
-
export declare class XyoPayloadWrapper<T extends XyoPayload = XyoPayload> extends
|
|
4
|
+
export declare class XyoPayloadWrapper<T extends XyoPayload = XyoPayload> extends Hasher<T> {
|
|
5
5
|
get payload(): T;
|
|
6
6
|
get body(): T;
|
|
7
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
7
8
|
get meta(): T;
|
|
8
9
|
static load(address: XyoDataLike | Huri): Promise<XyoPayloadWrapper<{
|
|
9
10
|
schema: string;
|
|
11
|
+
} & {
|
|
10
12
|
previousHash?: string | undefined;
|
|
11
13
|
sources?: string[] | undefined;
|
|
12
14
|
timestamp?: number | undefined;
|
|
15
|
+
} & {
|
|
16
|
+
schema: string;
|
|
13
17
|
}> | undefined>;
|
|
14
18
|
}
|
|
15
19
|
//# sourceMappingURL=Wrapper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Wrapper.d.ts","sourceRoot":"","sources":["../../../src/Wrapper/Wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsD,
|
|
1
|
+
{"version":3,"file":"Wrapper.d.ts","sourceRoot":"","sources":["../../../src/Wrapper/Wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsD,MAAM,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE3G,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,qBAAa,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,MAAM,CAAC,CAAC,CAAC;IACjF,IAAW,OAAO,MAEjB;IAED,IAAW,IAAI,MAEd;IAED,gEAAgE;IAChE,IAAW,IAAI,MAEd;WAEmB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;;;;;;;;;CAMrD"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { deepOmitUnderscoreFields, deepPickUnderscoreFields,
|
|
1
|
+
import { deepOmitUnderscoreFields, deepPickUnderscoreFields, Hasher } from '@xyo-network/core';
|
|
2
2
|
import { Huri } from '../Huri';
|
|
3
|
-
export class XyoPayloadWrapper extends
|
|
3
|
+
export class XyoPayloadWrapper extends Hasher {
|
|
4
4
|
get payload() {
|
|
5
5
|
return this.obj;
|
|
6
6
|
}
|
|
7
7
|
get body() {
|
|
8
8
|
return deepOmitUnderscoreFields(this.obj);
|
|
9
9
|
}
|
|
10
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
10
11
|
get meta() {
|
|
11
12
|
return deepPickUnderscoreFields(this.obj);
|
|
12
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Wrapper.js","sourceRoot":"","sources":["../../../src/Wrapper/Wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,
|
|
1
|
+
{"version":3,"file":"Wrapper.js","sourceRoot":"","sources":["../../../src/Wrapper/Wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,EAAe,MAAM,mBAAmB,CAAA;AAE3G,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAG9B,MAAM,OAAO,iBAAqD,SAAQ,MAAS;IACjF,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;IAED,IAAW,IAAI;QACb,OAAO,wBAAwB,CAAI,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9C,CAAC;IAED,gEAAgE;IAChE,IAAW,IAAI;QACb,OAAO,wBAAwB,CAAI,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9C,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAA2B;QAClD,MAAM,OAAO,GAAG,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAA;QAC/C,IAAI,OAAO,EAAE;YACX,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAA;SACtC;IACH,CAAC;CACF"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { XyoPayload } from './models';
|
|
2
2
|
export declare const isXyoPayloadOfSchemaType: <T extends {
|
|
3
3
|
schema: string;
|
|
4
|
+
} & {
|
|
4
5
|
previousHash?: string | undefined;
|
|
5
6
|
sources?: string[] | undefined;
|
|
6
7
|
timestamp?: number | undefined;
|
|
8
|
+
} & {
|
|
9
|
+
schema: string;
|
|
7
10
|
}>(schema: string) => (x: XyoPayload) => x is T;
|
|
8
11
|
//# sourceMappingURL=isXyoPayloadOfSchemaType.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isXyoPayloadOfSchemaType.d.ts","sourceRoot":"","sources":["../../src/isXyoPayloadOfSchemaType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAErC,eAAO,MAAM,wBAAwB
|
|
1
|
+
{"version":3,"file":"isXyoPayloadOfSchemaType.d.ts","sourceRoot":"","sources":["../../src/isXyoPayloadOfSchemaType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAErC,eAAO,MAAM,wBAAwB;;;;;;;;WAAkC,MAAM,SAChE,UAAU,WACtB,CAAA"}
|
|
@@ -4,10 +4,18 @@ export declare type WithTimestamp<T extends EmptyObject = EmptyObject> = T & {
|
|
|
4
4
|
};
|
|
5
5
|
export declare type XyoPayloadSchema = 'network.xyo.payload';
|
|
6
6
|
export declare const XyoPayloadSchema: XyoPayloadSchema;
|
|
7
|
-
|
|
8
|
-
schema:
|
|
7
|
+
declare type XyoPayloadBaseWithSchema<T extends EmptyObject = EmptyObject> = {
|
|
8
|
+
schema: string;
|
|
9
|
+
} & T;
|
|
10
|
+
declare type XyoPayloadBase<T extends EmptyObject = EmptyObject> = XyoPayloadBaseWithSchema<{
|
|
9
11
|
previousHash?: string;
|
|
10
12
|
sources?: string[];
|
|
11
13
|
timestamp?: number;
|
|
14
|
+
} & T>;
|
|
15
|
+
export declare type XyoPayload<T extends void | EmptyObject | XyoPayloadBaseWithSchema = void, S extends string = T extends XyoPayloadBaseWithSchema ? T['schema'] : string> = T extends XyoPayloadBaseWithSchema ? XyoPayloadBase<T> : T extends EmptyObject ? /* Type sent is an Object */ XyoPayloadBase & T & {
|
|
16
|
+
schema: S;
|
|
17
|
+
} : /* Type sent is void */ XyoPayloadBase & {
|
|
18
|
+
schema: S;
|
|
12
19
|
};
|
|
20
|
+
export {};
|
|
13
21
|
//# sourceMappingURL=Base.d.ts.map
|
|
@@ -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;
|
|
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,aAAK,wBAAwB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI;IACnE,MAAM,EAAE,MAAM,CAAA;CACf,GAAG,CAAC,CAAA;AAEL,aAAK,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,wBAAwB,CACjF;IACE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,CAAC,CACN,CAAA;AAED,oBAAY,UAAU,CACpB,CAAC,SAAS,IAAI,GAAG,WAAW,GAAG,wBAAwB,GAAG,IAAI,EAC9D,CAAC,SAAS,MAAM,GAAG,CAAC,SAAS,wBAAwB,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,MAAM,IAC1E,CAAC,SAAS,wBAAwB,GAElC,cAAc,CAAC,CAAC,CAAC,GACjB,CAAC,SAAS,WAAW,GAErB,AADA,4BAA4B,CAC5B,cAAc,GAAG,CAAC,GAAG;IAAE,MAAM,EAAE,CAAC,CAAA;CAAE,GAElC,AADA,uBAAuB,CACvB,cAAc,GAAG;IAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { EmptyObject } from '@xyo-network/core';
|
|
2
2
|
import { XyoPayload } from './Base';
|
|
3
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
3
4
|
export interface XyoPayloadMetaBase {
|
|
4
5
|
_hash: string;
|
|
5
6
|
_observeDuration?: number;
|
|
@@ -11,8 +12,13 @@ export interface XyoPayloadMetaBase {
|
|
|
11
12
|
_user_agent?: string;
|
|
12
13
|
_schemaValid?: boolean;
|
|
13
14
|
}
|
|
15
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
14
16
|
export declare type XyoPayloadMeta<T extends EmptyObject = EmptyObject> = T & XyoPayloadMetaBase;
|
|
17
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
15
18
|
export declare type XyoPartialPayloadMeta<T extends EmptyObject = EmptyObject> = T & Partial<XyoPayloadMetaBase>;
|
|
19
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
16
20
|
export declare type XyoPayloadWithMeta<T extends EmptyObject = EmptyObject> = XyoPayload<T & XyoPayloadMetaBase>;
|
|
21
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
17
22
|
export declare type XyoPayloadWithPartialMeta<T extends EmptyObject = EmptyObject> = XyoPayload<T & Partial<XyoPayloadMetaBase>>;
|
|
23
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
18
24
|
//# sourceMappingURL=Meta.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Meta.d.ts","sourceRoot":"","sources":["../../../src/models/Meta.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Meta.d.ts","sourceRoot":"","sources":["../../../src/models/Meta.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAEnC,gEAAgE;AAChE,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED,gEAAgE;AAChE,oBAAY,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,CAAC,GAAG,kBAAkB,CAAA;AACxF,gEAAgE;AAChE,oBAAY,qBAAqB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;AACxG,gEAAgE;AAChE,oBAAY,kBAAkB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,UAAU,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAA;AACxG,gEAAgE;AAChE,oBAAY,yBAAyB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,UAAU,CAAC,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAA;AACxH,gEAAgE"}
|
package/dist/esm/models/Meta.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Meta.js","sourceRoot":"","sources":["../../../src/models/Meta.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"Meta.js","sourceRoot":"","sources":["../../../src/models/Meta.ts"],"names":[],"mappings":";AA0BA,gEAAgE"}
|
package/package.json
CHANGED
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@xylabs/sdk-js": "^2.6.7",
|
|
14
|
-
"@xyo-network/account": "^2.33.0-rc.
|
|
15
|
-
"@xyo-network/core": "^2.33.0-rc.
|
|
14
|
+
"@xyo-network/account": "^2.33.0-rc.15",
|
|
15
|
+
"@xyo-network/core": "^2.33.0-rc.15",
|
|
16
16
|
"axios": "^0.27.2",
|
|
17
17
|
"tslib": "^2.4.0"
|
|
18
18
|
},
|
|
@@ -49,6 +49,6 @@
|
|
|
49
49
|
},
|
|
50
50
|
"sideEffects": false,
|
|
51
51
|
"types": "dist/esm/index.d.ts",
|
|
52
|
-
"version": "2.33.0-rc.
|
|
52
|
+
"version": "2.33.0-rc.15",
|
|
53
53
|
"stableVersion": "2.32.1"
|
|
54
54
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { XyoPayload } from '../models'
|
|
1
2
|
import { XyoPayloadBuilder } from './Builder'
|
|
2
3
|
|
|
3
4
|
const schema = 'network.xyo.temp'
|
|
@@ -8,7 +9,7 @@ const ADDITIONAL_FIELD_COUNT = 4
|
|
|
8
9
|
|
|
9
10
|
describe('XyoBoundWitnessBuilder', () => {
|
|
10
11
|
test('build', () => {
|
|
11
|
-
let builder = new XyoPayloadBuilder({ schema })
|
|
12
|
+
let builder = new XyoPayloadBuilder<XyoPayload<Record<string, unknown>>>({ schema })
|
|
12
13
|
expect(builder).toBeDefined()
|
|
13
14
|
builder = builder.fields({
|
|
14
15
|
testArray: [1, 2, 3],
|
package/src/Builder/Builder.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { deepOmitUnderscoreFields,
|
|
1
|
+
import { deepOmitUnderscoreFields, Hasher, removeEmptyFields } from '@xyo-network/core'
|
|
2
2
|
|
|
3
3
|
import { XyoPayload } from '../models'
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@ export interface XyoPayloadBuilderOptions {
|
|
|
6
6
|
schema: string
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
-
export class XyoPayloadBuilder<T extends XyoPayload = XyoPayload
|
|
9
|
+
export class XyoPayloadBuilder<T extends XyoPayload = XyoPayload> {
|
|
10
10
|
private _fields: Partial<T> = {}
|
|
11
11
|
private _previousHash?: string
|
|
12
12
|
private _schema: string
|
|
@@ -36,7 +36,7 @@ export class XyoPayloadBuilder<T extends XyoPayload = XyoPayload<StringKeyObject
|
|
|
36
36
|
|
|
37
37
|
public build(): T {
|
|
38
38
|
const hashableFields = this.hashableFields()
|
|
39
|
-
const _hash = new
|
|
39
|
+
const _hash = new Hasher(hashableFields).hash
|
|
40
40
|
const _timestamp = Date.now()
|
|
41
41
|
return { ...hashableFields, _client: 'js', _hash, _timestamp, schema: this._schema }
|
|
42
42
|
}
|
package/src/Test/testPayload.ts
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
import { StringKeyObject } from '@xyo-network/core'
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { XyoPayload } from '../models'
|
|
4
4
|
|
|
5
5
|
const testSchema = 'network.xyo.test'
|
|
6
|
-
const testPayload:
|
|
7
|
-
_archive: 'test',
|
|
8
|
-
_hash: '20e14207f952a09f767ff614a648546c037fe524ace0bfe55db31f818aff1f1c',
|
|
9
|
-
_timestamp: 1609459255555,
|
|
6
|
+
const testPayload: XyoPayload<StringKeyObject> = {
|
|
10
7
|
numberField: 1,
|
|
11
8
|
objectField: {
|
|
12
9
|
numberField: 1,
|
|
@@ -1,32 +1,21 @@
|
|
|
1
1
|
import { dumpErrors } from '@xyo-network/core'
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { XyoPayload } from '../models'
|
|
4
4
|
import { XyoPayloadValidator } from './Validator'
|
|
5
5
|
|
|
6
|
-
const testPayloadNoSchema:
|
|
7
|
-
|
|
8
|
-
_timestamp: 1609459255555,
|
|
9
|
-
} as XyoPayloadWithMeta
|
|
10
|
-
const testPayloadMixedCase: XyoPayloadWithMeta = {
|
|
11
|
-
_hash: '9a67116e05c33135f6ba23768f9a3fbbba155297ee1bb0a7e21d91fdc3835769',
|
|
12
|
-
_timestamp: 1609459255555,
|
|
6
|
+
const testPayloadNoSchema: XyoPayload = {} as XyoPayload
|
|
7
|
+
const testPayloadMixedCase: XyoPayload = {
|
|
13
8
|
schema: 'network.xyo.testMixedCaseSchema',
|
|
14
|
-
} as
|
|
15
|
-
const testPayloadTooFewLevels:
|
|
16
|
-
_hash: '95206b26e3173deaac5e3f5d4510d50112b6348d3a2128b1eb6fe3ca66957628',
|
|
17
|
-
_timestamp: 1609459255555,
|
|
9
|
+
} as XyoPayload
|
|
10
|
+
const testPayloadTooFewLevels: XyoPayload = {
|
|
18
11
|
schema: 'network.xyo',
|
|
19
|
-
} as
|
|
20
|
-
const testPayloadDoesNotExist:
|
|
21
|
-
_hash: '360b4ce36862ef2a20dd572d69283a86d351b2b4a9cd4f61ae6f7a320be81dbf',
|
|
22
|
-
_timestamp: 1609459255555,
|
|
12
|
+
} as XyoPayload
|
|
13
|
+
const testPayloadDoesNotExist: XyoPayload = {
|
|
23
14
|
schema: 'network.dfd-sf-sf-s.blahblah',
|
|
24
|
-
} as
|
|
25
|
-
const testPayloadValid:
|
|
26
|
-
_hash: '4b5958c6d16b26d6790e33f5be45578728b0ea36e40a0d1b9c9164822341cac1',
|
|
27
|
-
_timestamp: 1609459255555,
|
|
15
|
+
} as XyoPayload
|
|
16
|
+
const testPayloadValid: XyoPayload = {
|
|
28
17
|
schema: 'network.xyo.test',
|
|
29
|
-
} as
|
|
18
|
+
} as XyoPayload
|
|
30
19
|
|
|
31
20
|
test('all [missing schema]', () => {
|
|
32
21
|
const validator = new XyoPayloadValidator(testPayloadNoSchema)
|
package/src/Validator/index.ts
CHANGED
package/src/Wrapper/Validator.ts
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { XyoValidatorBase } from '@xyo-network/core'
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { XyoPayload } from '../models'
|
|
4
4
|
import { XyoPayloadValidator } from '../Validator'
|
|
5
5
|
import { XyoPayloadWrapper } from './Wrapper'
|
|
6
6
|
|
|
7
|
-
export class XyoPayloadWrapperValidator<
|
|
8
|
-
T extends XyoPayloadWrapper<XyoPayloadWithMeta> = XyoPayloadWrapper<XyoPayloadWithMeta>,
|
|
9
|
-
> extends XyoValidatorBase<T> {
|
|
7
|
+
export class XyoPayloadWrapperValidator<T extends XyoPayloadWrapper<XyoPayload> = XyoPayloadWrapper<XyoPayload>> extends XyoValidatorBase<T> {
|
|
10
8
|
public get payload() {
|
|
11
9
|
return new XyoPayloadValidator(this.obj.body)
|
|
12
10
|
}
|
package/src/Wrapper/Wrapper.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { deepOmitUnderscoreFields, deepPickUnderscoreFields,
|
|
1
|
+
import { deepOmitUnderscoreFields, deepPickUnderscoreFields, Hasher, XyoDataLike } from '@xyo-network/core'
|
|
2
2
|
|
|
3
3
|
import { Huri } from '../Huri'
|
|
4
4
|
import { XyoPayload } from '../models'
|
|
5
5
|
|
|
6
|
-
export class XyoPayloadWrapper<T extends XyoPayload = XyoPayload> extends
|
|
6
|
+
export class XyoPayloadWrapper<T extends XyoPayload = XyoPayload> extends Hasher<T> {
|
|
7
7
|
public get payload() {
|
|
8
8
|
return this.obj
|
|
9
9
|
}
|
|
@@ -12,6 +12,7 @@ export class XyoPayloadWrapper<T extends XyoPayload = XyoPayload> extends XyoHas
|
|
|
12
12
|
return deepOmitUnderscoreFields<T>(this.obj)
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
15
16
|
public get meta() {
|
|
16
17
|
return deepPickUnderscoreFields<T>(this.obj)
|
|
17
18
|
}
|
package/src/models/Base.ts
CHANGED
|
@@ -5,10 +5,26 @@ export type WithTimestamp<T extends EmptyObject = EmptyObject> = T & { timestamp
|
|
|
5
5
|
export type XyoPayloadSchema = 'network.xyo.payload'
|
|
6
6
|
export const XyoPayloadSchema: XyoPayloadSchema = 'network.xyo.payload'
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
type XyoPayloadBaseWithSchema<T extends EmptyObject = EmptyObject> = {
|
|
9
|
+
schema: string
|
|
10
|
+
} & T
|
|
11
|
+
|
|
12
|
+
type XyoPayloadBase<T extends EmptyObject = EmptyObject> = XyoPayloadBaseWithSchema<
|
|
13
|
+
{
|
|
14
|
+
previousHash?: string
|
|
15
|
+
sources?: string[]
|
|
16
|
+
timestamp?: number
|
|
17
|
+
} & T
|
|
18
|
+
>
|
|
19
|
+
|
|
20
|
+
export type XyoPayload<
|
|
21
|
+
T extends void | EmptyObject | XyoPayloadBaseWithSchema = void,
|
|
22
|
+
S extends string = T extends XyoPayloadBaseWithSchema ? T['schema'] : string,
|
|
23
|
+
> = T extends XyoPayloadBaseWithSchema
|
|
24
|
+
? /* Type sent is an XyoPayload */
|
|
25
|
+
XyoPayloadBase<T>
|
|
26
|
+
: T extends EmptyObject
|
|
27
|
+
? /* Type sent is an Object */
|
|
28
|
+
XyoPayloadBase & T & { schema: S }
|
|
29
|
+
: /* Type sent is void */
|
|
30
|
+
XyoPayloadBase & { schema: S }
|
package/src/models/Meta.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
/* eslint-disable deprecation/deprecation */
|
|
1
2
|
import { EmptyObject } from '@xyo-network/core'
|
|
2
3
|
|
|
3
4
|
import { XyoPayload } from './Base'
|
|
4
5
|
|
|
6
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
5
7
|
export interface XyoPayloadMetaBase {
|
|
6
8
|
_hash: string
|
|
7
9
|
_observeDuration?: number
|
|
@@ -14,7 +16,12 @@ export interface XyoPayloadMetaBase {
|
|
|
14
16
|
_schemaValid?: boolean
|
|
15
17
|
}
|
|
16
18
|
|
|
19
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
17
20
|
export type XyoPayloadMeta<T extends EmptyObject = EmptyObject> = T & XyoPayloadMetaBase
|
|
21
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
18
22
|
export type XyoPartialPayloadMeta<T extends EmptyObject = EmptyObject> = T & Partial<XyoPayloadMetaBase>
|
|
23
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
19
24
|
export type XyoPayloadWithMeta<T extends EmptyObject = EmptyObject> = XyoPayload<T & XyoPayloadMetaBase>
|
|
25
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
20
26
|
export type XyoPayloadWithPartialMeta<T extends EmptyObject = EmptyObject> = XyoPayload<T & Partial<XyoPayloadMetaBase>>
|
|
27
|
+
/** @deprecated - meta fields not supported by client anymore */
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { XyoValidatorBase } from '@xyo-network/core';
|
|
2
|
-
import { XyoPayloadMeta } from '../models';
|
|
3
|
-
declare class XyoPayloadMetaValidator<T extends XyoPayloadMeta = XyoPayloadMeta> extends XyoValidatorBase<T> {
|
|
4
|
-
hash(): Error[];
|
|
5
|
-
timestamp(): Error[];
|
|
6
|
-
validate(): Error[];
|
|
7
|
-
}
|
|
8
|
-
export { XyoPayloadMetaValidator };
|
|
9
|
-
//# sourceMappingURL=MetaValidator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MetaValidator.d.ts","sourceRoot":"","sources":["../../../src/Validator/MetaValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAK1C,cAAM,uBAAuB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,CAAE,SAAQ,gBAAgB,CAAC,CAAC,CAAC;IAC3F,IAAI;IASJ,SAAS;IAST,QAAQ;CAKhB;AAED,OAAO,EAAE,uBAAuB,EAAE,CAAA"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.XyoPayloadMetaValidator = void 0;
|
|
4
|
-
const core_1 = require("@xyo-network/core");
|
|
5
|
-
const MIN_ALLOWED_TIMESTAMP = 1609459200000;
|
|
6
|
-
const MAX_ALLOWED_TIMESTAMP = 4102444800000;
|
|
7
|
-
class XyoPayloadMetaValidator extends core_1.XyoValidatorBase {
|
|
8
|
-
hash() {
|
|
9
|
-
const errors = [];
|
|
10
|
-
const wrapper = new core_1.XyoHasher(this.obj);
|
|
11
|
-
const bodyHash = wrapper.hash;
|
|
12
|
-
if (bodyHash !== this.obj._hash)
|
|
13
|
-
errors.push(new Error(`Body hash mismatch: [calculated: ${bodyHash}] [found: ${this.obj._hash}]`));
|
|
14
|
-
return errors;
|
|
15
|
-
}
|
|
16
|
-
timestamp() {
|
|
17
|
-
const errors = [];
|
|
18
|
-
const { _timestamp } = this.obj;
|
|
19
|
-
if (_timestamp === undefined)
|
|
20
|
-
errors.push(new Error('Missing _timestamp'));
|
|
21
|
-
else if (_timestamp < MIN_ALLOWED_TIMESTAMP)
|
|
22
|
-
errors.push(new Error('_timestamp is before year 2021'));
|
|
23
|
-
else if (_timestamp > MAX_ALLOWED_TIMESTAMP)
|
|
24
|
-
errors.push(new Error('_timestamp is after year 2100'));
|
|
25
|
-
return errors;
|
|
26
|
-
}
|
|
27
|
-
validate() {
|
|
28
|
-
const errors = [];
|
|
29
|
-
errors.push(...this.hash(), ...this.timestamp());
|
|
30
|
-
return errors;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
exports.XyoPayloadMetaValidator = XyoPayloadMetaValidator;
|
|
34
|
-
//# sourceMappingURL=MetaValidator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MetaValidator.js","sourceRoot":"","sources":["../../../src/Validator/MetaValidator.ts"],"names":[],"mappings":";;;AAAA,4CAA+D;AAI/D,MAAM,qBAAqB,GAAG,aAAa,CAAA;AAC3C,MAAM,qBAAqB,GAAG,aAAa,CAAA;AAE3C,MAAM,uBAAmE,SAAQ,uBAAmB;IAC3F,IAAI;QACT,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,OAAO,GAAG,IAAI,gBAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEvC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAA;QAC7B,IAAI,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,oCAAoC,QAAQ,aAAa,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;QACnI,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,SAAS;QACd,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,CAAA;QAC/B,IAAI,UAAU,KAAK,SAAS;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAA;aACrE,IAAI,UAAU,GAAG,qBAAqB;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAA;aAChG,IAAI,UAAU,GAAG,qBAAqB;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAA;QACpG,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,QAAQ;QACb,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;QAChD,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAEQ,0DAAuB"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { XyoValidatorBase } from '@xyo-network/core';
|
|
2
|
-
import { XyoPayloadMeta } from '../models';
|
|
3
|
-
declare class XyoPayloadMetaValidator<T extends XyoPayloadMeta = XyoPayloadMeta> extends XyoValidatorBase<T> {
|
|
4
|
-
hash(): Error[];
|
|
5
|
-
timestamp(): Error[];
|
|
6
|
-
validate(): Error[];
|
|
7
|
-
}
|
|
8
|
-
export { XyoPayloadMetaValidator };
|
|
9
|
-
//# sourceMappingURL=MetaValidator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MetaValidator.d.ts","sourceRoot":"","sources":["../../../src/Validator/MetaValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAK1C,cAAM,uBAAuB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,CAAE,SAAQ,gBAAgB,CAAC,CAAC,CAAC;IAC3F,IAAI;IASJ,SAAS;IAST,QAAQ;CAKhB;AAED,OAAO,EAAE,uBAAuB,EAAE,CAAA"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { XyoHasher, XyoValidatorBase } from '@xyo-network/core';
|
|
2
|
-
const MIN_ALLOWED_TIMESTAMP = 1609459200000;
|
|
3
|
-
const MAX_ALLOWED_TIMESTAMP = 4102444800000;
|
|
4
|
-
class XyoPayloadMetaValidator extends XyoValidatorBase {
|
|
5
|
-
hash() {
|
|
6
|
-
const errors = [];
|
|
7
|
-
const wrapper = new XyoHasher(this.obj);
|
|
8
|
-
const bodyHash = wrapper.hash;
|
|
9
|
-
if (bodyHash !== this.obj._hash)
|
|
10
|
-
errors.push(new Error(`Body hash mismatch: [calculated: ${bodyHash}] [found: ${this.obj._hash}]`));
|
|
11
|
-
return errors;
|
|
12
|
-
}
|
|
13
|
-
timestamp() {
|
|
14
|
-
const errors = [];
|
|
15
|
-
const { _timestamp } = this.obj;
|
|
16
|
-
if (_timestamp === undefined)
|
|
17
|
-
errors.push(new Error('Missing _timestamp'));
|
|
18
|
-
else if (_timestamp < MIN_ALLOWED_TIMESTAMP)
|
|
19
|
-
errors.push(new Error('_timestamp is before year 2021'));
|
|
20
|
-
else if (_timestamp > MAX_ALLOWED_TIMESTAMP)
|
|
21
|
-
errors.push(new Error('_timestamp is after year 2100'));
|
|
22
|
-
return errors;
|
|
23
|
-
}
|
|
24
|
-
validate() {
|
|
25
|
-
const errors = [];
|
|
26
|
-
errors.push(...this.hash(), ...this.timestamp());
|
|
27
|
-
return errors;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
export { XyoPayloadMetaValidator };
|
|
31
|
-
//# sourceMappingURL=MetaValidator.js.map
|