@xyo-network/payload-validator 7.0.12 → 7.0.14
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/README.md +47 -1
- package/dist/neutral/Validator.d.ts +18 -0
- package/dist/neutral/Validator.d.ts.map +1 -0
- package/dist/neutral/index.d.ts +1 -5
- package/dist/neutral/index.d.ts.map +1 -1
- package/dist/neutral/index.mjs +39 -2
- package/dist/neutral/index.mjs.map +3 -3
- package/package.json +24 -27
package/README.md
CHANGED
|
@@ -1,3 +1,49 @@
|
|
|
1
|
+
[![logo][]](https://xyo.network)
|
|
2
|
+
|
|
1
3
|
# @xyo-network/payload-validator
|
|
2
4
|
|
|
3
|
-
|
|
5
|
+
[![npm][npm-badge]][npm-link]
|
|
6
|
+
[![license][license-badge]][license-link]
|
|
7
|
+
|
|
8
|
+
> Primary SDK for using XYO Protocol 2.0
|
|
9
|
+
|
|
10
|
+
## Install
|
|
11
|
+
|
|
12
|
+
Using npm:
|
|
13
|
+
|
|
14
|
+
```sh
|
|
15
|
+
npm install {{name}}
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Using yarn:
|
|
19
|
+
|
|
20
|
+
```sh
|
|
21
|
+
yarn add {{name}}
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Using pnpm:
|
|
25
|
+
|
|
26
|
+
```sh
|
|
27
|
+
pnpm add {{name}}
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Using bun:
|
|
31
|
+
|
|
32
|
+
```sh
|
|
33
|
+
bun add {{name}}
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
## License
|
|
38
|
+
|
|
39
|
+
See the [LICENSE](LICENSE) file for license rights and limitations (LGPL-3.0-only).
|
|
40
|
+
|
|
41
|
+
## Credits
|
|
42
|
+
|
|
43
|
+
[Made with 🔥 and ❄️ by XYO Foundation](https://xyo.network)
|
|
44
|
+
|
|
45
|
+
[npm-badge]: https://img.shields.io/npm/v/@xyo-network/payload-validator.svg
|
|
46
|
+
[npm-link]: https://www.npmjs.com/package/@xyo-network/payload-validator
|
|
47
|
+
[license-badge]: https://img.shields.io/npm/l/@xyo-network/payload-validator.svg
|
|
48
|
+
[license-link]: https://github.com/xylabs/sdk-js/blob/main/LICENSE
|
|
49
|
+
[logo]: https://cdn.xy.company/img/brand/XYO_full_colored.png
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Promisable, Validator } from '@ariestools/sdk';
|
|
2
|
+
import { ValidatorBase } from '@ariestools/sdk';
|
|
3
|
+
import type { Payload } from '@xyo-network/payload-model';
|
|
4
|
+
export interface AllValidator {
|
|
5
|
+
all(): Error[];
|
|
6
|
+
}
|
|
7
|
+
export type AllValidatorFactory = (schema: string) => AllValidator;
|
|
8
|
+
export declare class PayloadValidator<T extends Payload = Payload> extends ValidatorBase<T> implements Validator<T> {
|
|
9
|
+
protected static schemaNameValidatorFactory: AllValidatorFactory;
|
|
10
|
+
private _schemaValidator?;
|
|
11
|
+
protected payload: Payload;
|
|
12
|
+
constructor(payload: T);
|
|
13
|
+
static setSchemaNameValidatorFactory(factory: AllValidatorFactory): void;
|
|
14
|
+
get schemaValidator(): AllValidator;
|
|
15
|
+
schemaName(): Error[];
|
|
16
|
+
validate(): Promisable<Error[]>;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=Validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../../src/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC5D,OAAO,EAAe,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAGzD,MAAM,WAAW,YAAY;IAC3B,GAAG,IAAI,KAAK,EAAE,CAAA;CACf;AAED,MAAM,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,YAAY,CAAA;AAIlE,qBAAa,gBAAgB,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAE,YAAW,SAAS,CAAC,CAAC,CAAC;IACzG,SAAS,CAAC,MAAM,CAAC,0BAA0B,EAAE,mBAAmB,CAAoC;IAEpG,OAAO,CAAC,gBAAgB,CAAC,CAAc;IAEvC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAA;gBAEd,OAAO,EAAE,CAAC;IAKtB,MAAM,CAAC,6BAA6B,CAAC,OAAO,EAAE,mBAAmB;IAIjE,IAAI,eAAe,iBAMlB;IAED,UAAU,IAAI,KAAK,EAAE;IAUrB,QAAQ,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;CAIhC"}
|
package/dist/neutral/index.d.ts
CHANGED
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
* @deprecated Use `@xyo-network/sdk-protocol/payload-validator` instead.
|
|
3
|
-
* `@xyo-network/payload-validator` is a backward-compatibility re-export stub.
|
|
4
|
-
*/
|
|
5
|
-
export * from '@xyo-network/sdk-protocol/payload-validator';
|
|
1
|
+
export * from './Validator.ts';
|
|
6
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA"}
|
package/dist/neutral/index.mjs
CHANGED
|
@@ -1,3 +1,40 @@
|
|
|
1
|
-
// src/
|
|
2
|
-
|
|
1
|
+
// src/Validator.ts
|
|
2
|
+
import { isUndefined, ValidatorBase } from "@ariestools/sdk";
|
|
3
|
+
import { SchemaNameValidator } from "@xyo-network/schema-name-validator";
|
|
4
|
+
var defaultSchemaNameValidatorFactory = (schema) => new SchemaNameValidator(schema);
|
|
5
|
+
var PayloadValidator = class _PayloadValidator extends ValidatorBase {
|
|
6
|
+
static schemaNameValidatorFactory = defaultSchemaNameValidatorFactory;
|
|
7
|
+
_schemaValidator;
|
|
8
|
+
payload;
|
|
9
|
+
constructor(payload) {
|
|
10
|
+
super(payload);
|
|
11
|
+
this.payload = payload;
|
|
12
|
+
}
|
|
13
|
+
static setSchemaNameValidatorFactory(factory) {
|
|
14
|
+
this.schemaNameValidatorFactory = factory;
|
|
15
|
+
}
|
|
16
|
+
get schemaValidator() {
|
|
17
|
+
this._schemaValidator = this._schemaValidator ?? _PayloadValidator.schemaNameValidatorFactory?.(this.payload.schema);
|
|
18
|
+
if (isUndefined(this._schemaValidator)) {
|
|
19
|
+
console.warn(`No schema name validator set [${this.payload.schema}]`);
|
|
20
|
+
}
|
|
21
|
+
return this._schemaValidator;
|
|
22
|
+
}
|
|
23
|
+
schemaName() {
|
|
24
|
+
const errors = [];
|
|
25
|
+
if (this.obj.schema === void 0) {
|
|
26
|
+
errors.push(new Error("schema missing"));
|
|
27
|
+
} else {
|
|
28
|
+
errors.push(...this.schemaValidator?.all() ?? []);
|
|
29
|
+
}
|
|
30
|
+
return errors;
|
|
31
|
+
}
|
|
32
|
+
validate() {
|
|
33
|
+
const errors = [...this.schemaName()];
|
|
34
|
+
return errors;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
export {
|
|
38
|
+
PayloadValidator
|
|
39
|
+
};
|
|
3
40
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/
|
|
4
|
-
"sourcesContent": ["
|
|
5
|
-
"mappings": ";
|
|
3
|
+
"sources": ["../../src/Validator.ts"],
|
|
4
|
+
"sourcesContent": ["import type { Promisable, Validator } from '@ariestools/sdk'\nimport { isUndefined, ValidatorBase } from '@ariestools/sdk'\nimport type { Payload } from '@xyo-network/payload-model'\nimport { SchemaNameValidator } from '@xyo-network/schema-name-validator'\n\nexport interface AllValidator {\n all(): Error[]\n}\n\nexport type AllValidatorFactory = (schema: string) => AllValidator\n\nconst defaultSchemaNameValidatorFactory: AllValidatorFactory = (schema: string) => new SchemaNameValidator(schema)\n\nexport class PayloadValidator<T extends Payload = Payload> extends ValidatorBase<T> implements Validator<T> {\n protected static schemaNameValidatorFactory: AllValidatorFactory = defaultSchemaNameValidatorFactory\n\n private _schemaValidator?: AllValidator\n\n protected payload: Payload\n\n constructor(payload: T) {\n super(payload)\n this.payload = payload\n }\n\n static setSchemaNameValidatorFactory(factory: AllValidatorFactory) {\n this.schemaNameValidatorFactory = factory\n }\n\n get schemaValidator() {\n this._schemaValidator = this._schemaValidator ?? PayloadValidator.schemaNameValidatorFactory?.(this.payload.schema)\n if (isUndefined(this._schemaValidator)) {\n console.warn(`No schema name validator set [${this.payload.schema}]`)\n }\n return this._schemaValidator\n }\n\n schemaName(): Error[] {\n const errors: Error[] = []\n if (this.obj.schema === undefined) {\n errors.push(new Error('schema missing'))\n } else {\n errors.push(...(this.schemaValidator?.all() ?? []))\n }\n return errors\n }\n\n validate(): Promisable<Error[]> {\n const errors: Error[] = [...this.schemaName()]\n return errors\n }\n}\n"],
|
|
5
|
+
"mappings": ";AACA,SAAS,aAAa,qBAAqB;AAE3C,SAAS,2BAA2B;AAQpC,IAAM,oCAAyD,CAAC,WAAmB,IAAI,oBAAoB,MAAM;AAE1G,IAAM,mBAAN,MAAM,0BAAsD,cAAyC;AAAA,EAC1G,OAAiB,6BAAkD;AAAA,EAE3D;AAAA,EAEE;AAAA,EAEV,YAAY,SAAY;AACtB,UAAM,OAAO;AACb,SAAK,UAAU;AAAA,EACjB;AAAA,EAEA,OAAO,8BAA8B,SAA8B;AACjE,SAAK,6BAA6B;AAAA,EACpC;AAAA,EAEA,IAAI,kBAAkB;AACpB,SAAK,mBAAmB,KAAK,oBAAoB,kBAAiB,6BAA6B,KAAK,QAAQ,MAAM;AAClH,QAAI,YAAY,KAAK,gBAAgB,GAAG;AACtC,cAAQ,KAAK,iCAAiC,KAAK,QAAQ,MAAM,GAAG;AAAA,IACtE;AACA,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,aAAsB;AACpB,UAAM,SAAkB,CAAC;AACzB,QAAI,KAAK,IAAI,WAAW,QAAW;AACjC,aAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AAAA,IACzC,OAAO;AACL,aAAO,KAAK,GAAI,KAAK,iBAAiB,IAAI,KAAK,CAAC,CAAE;AAAA,IACpD;AACA,WAAO;AAAA,EACT;AAAA,EAEA,WAAgC;AAC9B,UAAM,SAAkB,CAAC,GAAG,KAAK,WAAW,CAAC;AAC7C,WAAO;AAAA,EACT;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/payload-validator",
|
|
3
|
-
"version": "7.0.
|
|
4
|
-
"description": "
|
|
5
|
-
"deprecated": "Use @xyo-network/sdk-protocol/payload-validator instead. @xyo-network/payload-validator is a backward-compatibility re-export stub and will not receive further updates.",
|
|
3
|
+
"version": "7.0.14",
|
|
4
|
+
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
6
5
|
"homepage": "https://xyo.network",
|
|
7
6
|
"bugs": {
|
|
8
7
|
"url": "git+https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues",
|
|
@@ -35,34 +34,32 @@
|
|
|
35
34
|
"README.md"
|
|
36
35
|
],
|
|
37
36
|
"dependencies": {
|
|
38
|
-
"@xyo-network/
|
|
37
|
+
"@xyo-network/payload-model": "~7.0.14",
|
|
38
|
+
"@xyo-network/schema-name-validator": "~7.0.14"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@
|
|
42
|
-
"@
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"
|
|
41
|
+
"@ariestools/sdk": "~8.0.2",
|
|
42
|
+
"@ariestools/vitest-extended": "~8.0.2",
|
|
43
|
+
"@opentelemetry/api": "~1.9.1",
|
|
44
|
+
"@opentelemetry/sdk-trace-base": "~2.9.0",
|
|
45
|
+
"@scure/base": "~2.2.0",
|
|
46
|
+
"@xylabs/toolchain": "~8.6.3",
|
|
47
|
+
"@xylabs/tsconfig": "~8.6.3",
|
|
48
|
+
"async-mutex": "~0.5.0",
|
|
49
|
+
"eslint": "~10.6.0",
|
|
50
|
+
"eslint-import-resolver-typescript": "~4.4.5",
|
|
51
|
+
"typescript": "~6.0.3",
|
|
52
|
+
"vite": "~8.1.3",
|
|
53
|
+
"vitest": "~4.1.9",
|
|
54
|
+
"zod": "~4.4.3"
|
|
47
55
|
},
|
|
48
56
|
"peerDependencies": {
|
|
49
|
-
"@ariestools/sdk": "^
|
|
50
|
-
"@
|
|
51
|
-
"@
|
|
52
|
-
"@
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"@scure/bip39": "~2.2",
|
|
56
|
-
"@xylabs/geo": "^7.0",
|
|
57
|
-
"@xylabs/threads": "^7.0",
|
|
58
|
-
"ajv": "^8.20",
|
|
59
|
-
"async-mutex": "^0.5",
|
|
60
|
-
"debug": "^4.4",
|
|
61
|
-
"ethers": "^6.16",
|
|
62
|
-
"hash-wasm": "~4.12",
|
|
63
|
-
"idb": "^8.0",
|
|
64
|
-
"observable-fns": "^0.6",
|
|
65
|
-
"zod": "^4.4"
|
|
57
|
+
"@ariestools/sdk": "^8.0.2",
|
|
58
|
+
"@opentelemetry/api": "^1.9.1",
|
|
59
|
+
"@opentelemetry/sdk-trace-base": "^2.9.0",
|
|
60
|
+
"@scure/base": "^2.2.0",
|
|
61
|
+
"async-mutex": "^0.5.0",
|
|
62
|
+
"zod": "^4.4.3"
|
|
66
63
|
},
|
|
67
64
|
"engines": {
|
|
68
65
|
"node": "^24"
|