@xyo-network/payload 2.42.13 → 2.42.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.
Files changed (177) hide show
  1. package/dist/cjs/Payloads.d.ts +1 -1
  2. package/dist/cjs/Payloads.d.ts.map +1 -1
  3. package/dist/cjs/index.d.ts +5 -6
  4. package/dist/cjs/index.d.ts.map +1 -1
  5. package/dist/cjs/index.js +5 -6
  6. package/dist/cjs/index.js.map +1 -1
  7. package/dist/cjs/isXyoPayloadOfSchemaType.d.ts +2 -2
  8. package/dist/cjs/isXyoPayloadOfSchemaType.d.ts.map +1 -1
  9. package/dist/esm/Payloads.d.ts +1 -1
  10. package/dist/esm/Payloads.d.ts.map +1 -1
  11. package/dist/esm/index.d.ts +5 -6
  12. package/dist/esm/index.d.ts.map +1 -1
  13. package/dist/esm/index.js +5 -6
  14. package/dist/esm/index.js.map +1 -1
  15. package/dist/esm/isXyoPayloadOfSchemaType.d.ts +2 -2
  16. package/dist/esm/isXyoPayloadOfSchemaType.d.ts.map +1 -1
  17. package/package.json +7 -8
  18. package/src/Payloads.ts +1 -1
  19. package/src/index.ts +5 -6
  20. package/src/isXyoPayloadOfSchemaType.ts +1 -1
  21. package/dist/cjs/Builder/Builder.d.ts +0 -13
  22. package/dist/cjs/Builder/Builder.d.ts.map +0 -1
  23. package/dist/cjs/Builder/Builder.js +0 -27
  24. package/dist/cjs/Builder/Builder.js.map +0 -1
  25. package/dist/cjs/Builder/index.d.ts +0 -2
  26. package/dist/cjs/Builder/index.d.ts.map +0 -1
  27. package/dist/cjs/Builder/index.js +0 -5
  28. package/dist/cjs/Builder/index.js.map +0 -1
  29. package/dist/cjs/Huri/Huri.d.ts +0 -32
  30. package/dist/cjs/Huri/Huri.d.ts.map +0 -1
  31. package/dist/cjs/Huri/Huri.js +0 -111
  32. package/dist/cjs/Huri/Huri.js.map +0 -1
  33. package/dist/cjs/Huri/index.d.ts +0 -2
  34. package/dist/cjs/Huri/index.d.ts.map +0 -1
  35. package/dist/cjs/Huri/index.js +0 -5
  36. package/dist/cjs/Huri/index.js.map +0 -1
  37. package/dist/cjs/SchemaNameValidator.d.ts +0 -68
  38. package/dist/cjs/SchemaNameValidator.d.ts.map +0 -1
  39. package/dist/cjs/SchemaNameValidator.js +0 -127
  40. package/dist/cjs/SchemaNameValidator.js.map +0 -1
  41. package/dist/cjs/Test/index.d.ts +0 -2
  42. package/dist/cjs/Test/index.d.ts.map +0 -1
  43. package/dist/cjs/Test/index.js +0 -5
  44. package/dist/cjs/Test/index.js.map +0 -1
  45. package/dist/cjs/Test/testPayload.d.ts +0 -6
  46. package/dist/cjs/Test/testPayload.d.ts.map +0 -1
  47. package/dist/cjs/Test/testPayload.js +0 -16
  48. package/dist/cjs/Test/testPayload.js.map +0 -1
  49. package/dist/cjs/Validator/Validator.d.ts +0 -11
  50. package/dist/cjs/Validator/Validator.d.ts.map +0 -1
  51. package/dist/cjs/Validator/Validator.js +0 -32
  52. package/dist/cjs/Validator/Validator.js.map +0 -1
  53. package/dist/cjs/Validator/index.d.ts +0 -2
  54. package/dist/cjs/Validator/index.d.ts.map +0 -1
  55. package/dist/cjs/Validator/index.js +0 -5
  56. package/dist/cjs/Validator/index.js.map +0 -1
  57. package/dist/cjs/Wrapper/Wrapper.d.ts +0 -23
  58. package/dist/cjs/Wrapper/Wrapper.d.ts.map +0 -1
  59. package/dist/cjs/Wrapper/Wrapper.js +0 -63
  60. package/dist/cjs/Wrapper/Wrapper.js.map +0 -1
  61. package/dist/cjs/Wrapper/index.d.ts +0 -2
  62. package/dist/cjs/Wrapper/index.d.ts.map +0 -1
  63. package/dist/cjs/Wrapper/index.js +0 -5
  64. package/dist/cjs/Wrapper/index.js.map +0 -1
  65. package/dist/cjs/models/PayloadFindFilter.d.ts +0 -16
  66. package/dist/cjs/models/PayloadFindFilter.d.ts.map +0 -1
  67. package/dist/cjs/models/PayloadFindFilter.js +0 -3
  68. package/dist/cjs/models/PayloadFindFilter.js.map +0 -1
  69. package/dist/cjs/models/PayloadSet/PayloadSetPayload.d.ts +0 -8
  70. package/dist/cjs/models/PayloadSet/PayloadSetPayload.d.ts.map +0 -1
  71. package/dist/cjs/models/PayloadSet/PayloadSetPayload.js +0 -3
  72. package/dist/cjs/models/PayloadSet/PayloadSetPayload.js.map +0 -1
  73. package/dist/cjs/models/PayloadSet/PayloadSetSchema.d.ts +0 -3
  74. package/dist/cjs/models/PayloadSet/PayloadSetSchema.d.ts.map +0 -1
  75. package/dist/cjs/models/PayloadSet/PayloadSetSchema.js +0 -5
  76. package/dist/cjs/models/PayloadSet/PayloadSetSchema.js.map +0 -1
  77. package/dist/cjs/models/PayloadSet/index.d.ts +0 -3
  78. package/dist/cjs/models/PayloadSet/index.d.ts.map +0 -1
  79. package/dist/cjs/models/PayloadSet/index.js +0 -6
  80. package/dist/cjs/models/PayloadSet/index.js.map +0 -1
  81. package/dist/cjs/models/XyoPayload.d.ts +0 -21
  82. package/dist/cjs/models/XyoPayload.d.ts.map +0 -1
  83. package/dist/cjs/models/XyoPayload.js +0 -5
  84. package/dist/cjs/models/XyoPayload.js.map +0 -1
  85. package/dist/cjs/models/index.d.ts +0 -4
  86. package/dist/cjs/models/index.d.ts.map +0 -1
  87. package/dist/cjs/models/index.js +0 -7
  88. package/dist/cjs/models/index.js.map +0 -1
  89. package/dist/docs.json +0 -7103
  90. package/dist/esm/Builder/Builder.d.ts +0 -13
  91. package/dist/esm/Builder/Builder.d.ts.map +0 -1
  92. package/dist/esm/Builder/Builder.js +0 -27
  93. package/dist/esm/Builder/Builder.js.map +0 -1
  94. package/dist/esm/Builder/index.d.ts +0 -2
  95. package/dist/esm/Builder/index.d.ts.map +0 -1
  96. package/dist/esm/Builder/index.js +0 -2
  97. package/dist/esm/Builder/index.js.map +0 -1
  98. package/dist/esm/Huri/Huri.d.ts +0 -32
  99. package/dist/esm/Huri/Huri.d.ts.map +0 -1
  100. package/dist/esm/Huri/Huri.js +0 -104
  101. package/dist/esm/Huri/Huri.js.map +0 -1
  102. package/dist/esm/Huri/index.d.ts +0 -2
  103. package/dist/esm/Huri/index.d.ts.map +0 -1
  104. package/dist/esm/Huri/index.js +0 -2
  105. package/dist/esm/Huri/index.js.map +0 -1
  106. package/dist/esm/SchemaNameValidator.d.ts +0 -68
  107. package/dist/esm/SchemaNameValidator.d.ts.map +0 -1
  108. package/dist/esm/SchemaNameValidator.js +0 -114
  109. package/dist/esm/SchemaNameValidator.js.map +0 -1
  110. package/dist/esm/Test/index.d.ts +0 -2
  111. package/dist/esm/Test/index.d.ts.map +0 -1
  112. package/dist/esm/Test/index.js +0 -2
  113. package/dist/esm/Test/index.js.map +0 -1
  114. package/dist/esm/Test/testPayload.d.ts +0 -6
  115. package/dist/esm/Test/testPayload.d.ts.map +0 -1
  116. package/dist/esm/Test/testPayload.js +0 -12
  117. package/dist/esm/Test/testPayload.js.map +0 -1
  118. package/dist/esm/Validator/Validator.d.ts +0 -11
  119. package/dist/esm/Validator/Validator.d.ts.map +0 -1
  120. package/dist/esm/Validator/Validator.js +0 -28
  121. package/dist/esm/Validator/Validator.js.map +0 -1
  122. package/dist/esm/Validator/index.d.ts +0 -2
  123. package/dist/esm/Validator/index.d.ts.map +0 -1
  124. package/dist/esm/Validator/index.js +0 -2
  125. package/dist/esm/Validator/index.js.map +0 -1
  126. package/dist/esm/Wrapper/Wrapper.d.ts +0 -23
  127. package/dist/esm/Wrapper/Wrapper.d.ts.map +0 -1
  128. package/dist/esm/Wrapper/Wrapper.js +0 -52
  129. package/dist/esm/Wrapper/Wrapper.js.map +0 -1
  130. package/dist/esm/Wrapper/index.d.ts +0 -2
  131. package/dist/esm/Wrapper/index.d.ts.map +0 -1
  132. package/dist/esm/Wrapper/index.js +0 -2
  133. package/dist/esm/Wrapper/index.js.map +0 -1
  134. package/dist/esm/models/PayloadFindFilter.d.ts +0 -16
  135. package/dist/esm/models/PayloadFindFilter.d.ts.map +0 -1
  136. package/dist/esm/models/PayloadFindFilter.js +0 -2
  137. package/dist/esm/models/PayloadFindFilter.js.map +0 -1
  138. package/dist/esm/models/PayloadSet/PayloadSetPayload.d.ts +0 -8
  139. package/dist/esm/models/PayloadSet/PayloadSetPayload.d.ts.map +0 -1
  140. package/dist/esm/models/PayloadSet/PayloadSetPayload.js +0 -2
  141. package/dist/esm/models/PayloadSet/PayloadSetPayload.js.map +0 -1
  142. package/dist/esm/models/PayloadSet/PayloadSetSchema.d.ts +0 -3
  143. package/dist/esm/models/PayloadSet/PayloadSetSchema.d.ts.map +0 -1
  144. package/dist/esm/models/PayloadSet/PayloadSetSchema.js +0 -2
  145. package/dist/esm/models/PayloadSet/PayloadSetSchema.js.map +0 -1
  146. package/dist/esm/models/PayloadSet/index.d.ts +0 -3
  147. package/dist/esm/models/PayloadSet/index.d.ts.map +0 -1
  148. package/dist/esm/models/PayloadSet/index.js +0 -3
  149. package/dist/esm/models/PayloadSet/index.js.map +0 -1
  150. package/dist/esm/models/XyoPayload.d.ts +0 -21
  151. package/dist/esm/models/XyoPayload.d.ts.map +0 -1
  152. package/dist/esm/models/XyoPayload.js +0 -2
  153. package/dist/esm/models/XyoPayload.js.map +0 -1
  154. package/dist/esm/models/index.d.ts +0 -4
  155. package/dist/esm/models/index.d.ts.map +0 -1
  156. package/dist/esm/models/index.js +0 -4
  157. package/dist/esm/models/index.js.map +0 -1
  158. package/src/Builder/Builder.spec.ts +0 -38
  159. package/src/Builder/Builder.ts +0 -37
  160. package/src/Builder/index.ts +0 -1
  161. package/src/Huri/Huri.spec.ts +0 -92
  162. package/src/Huri/Huri.ts +0 -154
  163. package/src/Huri/index.ts +0 -1
  164. package/src/SchemaNameValidator.ts +0 -120
  165. package/src/Test/index.ts +0 -1
  166. package/src/Test/testPayload.ts +0 -16
  167. package/src/Validator/Validator.spec.ts +0 -52
  168. package/src/Validator/Validator.ts +0 -33
  169. package/src/Validator/index.ts +0 -1
  170. package/src/Wrapper/Wrapper.ts +0 -69
  171. package/src/Wrapper/index.ts +0 -1
  172. package/src/models/PayloadFindFilter.ts +0 -19
  173. package/src/models/PayloadSet/PayloadSetPayload.ts +0 -9
  174. package/src/models/PayloadSet/PayloadSetSchema.ts +0 -2
  175. package/src/models/PayloadSet/index.ts +0 -2
  176. package/src/models/XyoPayload.ts +0 -31
  177. package/src/models/index.ts +0 -3
@@ -1,13 +0,0 @@
1
- import { XyoPayload } from '../models';
2
- export interface XyoPayloadBuilderOptions {
3
- schema: string;
4
- }
5
- export declare class XyoPayloadBuilder<T extends XyoPayload = XyoPayload<Record<string, unknown>>> {
6
- private _fields;
7
- private _schema;
8
- constructor({ schema }: XyoPayloadBuilderOptions);
9
- build(): T;
10
- fields(fields?: Partial<T>): this;
11
- hashableFields(): T;
12
- }
13
- //# sourceMappingURL=Builder.d.ts.map
@@ -1 +0,0 @@
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,KAAK,IAAI,CAAC;IAOV,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAO1B,cAAc;CAMtB"}
@@ -1,27 +0,0 @@
1
- import { deepOmitUnderscoreFields, Hasher, removeEmptyFields } from '@xyo-network/core';
2
- export class XyoPayloadBuilder {
3
- _fields = {};
4
- _schema;
5
- constructor({ schema }) {
6
- this._schema = schema;
7
- }
8
- build() {
9
- const hashableFields = this.hashableFields();
10
- const _hash = new Hasher(hashableFields).hash;
11
- const _timestamp = Date.now();
12
- return { ...hashableFields, _client: 'js', _hash, _timestamp, schema: this._schema };
13
- }
14
- fields(fields) {
15
- if (fields) {
16
- this._fields = { ...this._fields, ...removeEmptyFields(fields) };
17
- }
18
- return this;
19
- }
20
- hashableFields() {
21
- return {
22
- ...removeEmptyFields(deepOmitUnderscoreFields(this._fields)),
23
- schema: this._schema,
24
- };
25
- }
26
- }
27
- //# sourceMappingURL=Builder.js.map
@@ -1 +0,0 @@
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,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;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;CACF"}
@@ -1,2 +0,0 @@
1
- export * from './Builder';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Builder/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './Builder';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Builder/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
@@ -1,32 +0,0 @@
1
- import { DataLike } from '@xyo-network/core';
2
- import { XyoPayload } from '../models';
3
- export type XyoObjectCategory = 'block' | 'payload';
4
- export type HuriFetchFunction = (huri: Huri) => Promise<XyoPayload | undefined>;
5
- export interface HuriOptions {
6
- archivistUri?: string;
7
- }
8
- export interface FetchedPayload<T extends XyoPayload = XyoPayload> {
9
- huri?: Huri;
10
- payload: T;
11
- }
12
- export declare class Huri<T extends XyoPayload = XyoPayload> {
13
- archive?: string;
14
- archivist?: string;
15
- hash: string;
16
- originalHref: string;
17
- protocol?: string;
18
- private isHuri;
19
- constructor(huri: DataLike | Huri, { archivistUri }?: HuriOptions);
20
- get href(): string;
21
- static fetch<T extends XyoPayload = XyoPayload>(huri: Huri): Promise<T | undefined>;
22
- static isHuri(value: unknown): Huri<import("../models").SchemaFields & import("../models").PayloadFields & {
23
- schema: string;
24
- }> | undefined;
25
- private static parsePath;
26
- private static parseProtocol;
27
- fetch(): Promise<T | undefined>;
28
- toString(): string;
29
- private parsePath;
30
- private validateParse;
31
- }
32
- //# sourceMappingURL=Huri.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Huri.d.ts","sourceRoot":"","sources":["../../../src/Huri/Huri.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAG5C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,SAAS,CAAA;AAEnD,MAAM,MAAM,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,cAAc,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC/D,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,OAAO,EAAE,CAAC,CAAA;CACX;AAED,qBAAa,IAAI,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAExB,OAAO,CAAC,MAAM,CAAO;gBAET,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,EAAE,YAAY,EAAE,GAAE,WAAgB;IAuBrE,IAAW,IAAI,WAad;WAEY,KAAK,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;WAI3E,MAAM,CAAC,KAAK,EAAE,OAAO;;;IAOnC,OAAO,CAAC,MAAM,CAAC,SAAS;IAWxB,OAAO,CAAC,MAAM,CAAC,aAAa;IAYf,KAAK,IAAI,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAIrC,QAAQ;IAIf,OAAO,CAAC,SAAS;IAwBjB,OAAO,CAAC,aAAa;CAUtB"}
@@ -1,104 +0,0 @@
1
- import { assertEx } from '@xylabs/assert';
2
- import { AddressValue } from '@xyo-network/account';
3
- import axios from 'axios';
4
- export class Huri {
5
- archive;
6
- archivist;
7
- hash;
8
- originalHref;
9
- protocol;
10
- isHuri = true;
11
- constructor(huri, { archivistUri } = {}) {
12
- const huriString = (Huri.isHuri(huri)?.href ?? typeof huri === 'string') ? huri : new AddressValue(huri).hex;
13
- this.originalHref = huriString;
14
- const protocol = Huri.parseProtocol(huriString);
15
- this.protocol = protocol ?? 'https';
16
- const path = assertEx(Huri.parsePath(huriString), 'Missing path');
17
- this.hash = this.parsePath(path, protocol !== undefined);
18
- //if archivistUri sent, overwrite protocol and archivist
19
- if (archivistUri) {
20
- const archivistUriParts = archivistUri.split('://');
21
- this.protocol = archivistUriParts[0];
22
- this.archivist = archivistUriParts[1];
23
- }
24
- this.validateParse();
25
- }
26
- /*
27
- The full href or the hash
28
- */
29
- get href() {
30
- const parts = [];
31
- if (this.protocol) {
32
- parts.push(`${this.protocol}:/`);
33
- }
34
- if (this.archive) {
35
- parts.push(`${this.archive}`);
36
- }
37
- if (this.archivist) {
38
- parts.push(`${this.archivist}`);
39
- }
40
- parts.push(this.hash);
41
- return parts.join('/');
42
- }
43
- static async fetch(huri) {
44
- return (await axios.get(huri.href)).data;
45
- }
46
- static isHuri(value) {
47
- if (typeof value === 'object') {
48
- return value.isHuri ? value : undefined;
49
- }
50
- return undefined;
51
- }
52
- static parsePath(huri) {
53
- const protocolSplit = huri.split('//');
54
- assertEx(protocolSplit.length <= 2, `Invalid format [${huri}]`);
55
- if (protocolSplit.length === 1) {
56
- return huri;
57
- }
58
- if (protocolSplit.length === 2) {
59
- return protocolSplit[1];
60
- }
61
- }
62
- static parseProtocol(huri) {
63
- const protocolSplit = huri.split('//');
64
- assertEx(protocolSplit.length <= 2, `Invalid second protocol [${protocolSplit[2]}]`);
65
- const rawProtocol = protocolSplit.length === 2 ? protocolSplit.shift() : undefined;
66
- if (rawProtocol) {
67
- const protocolParts = rawProtocol?.split(':');
68
- assertEx(protocolParts.length === 2, `Invalid protocol format [${rawProtocol}]`);
69
- assertEx(protocolParts[1].length === 0, `Invalid protocol format (post :) [${rawProtocol}]`);
70
- return protocolParts.shift();
71
- }
72
- }
73
- async fetch() {
74
- return await Huri.fetch(this);
75
- }
76
- toString() {
77
- return this.href;
78
- }
79
- parsePath(path, hasProtocol) {
80
- const pathParts = path.split('/');
81
- //if the protocol was found, then there is not allowed to be a leading /
82
- assertEx(!(hasProtocol && pathParts[0].length === 0), 'Invalid protocol separator');
83
- //remove leading '/' if needed
84
- pathParts[0].length === 0 ? pathParts.shift() : null;
85
- //hash is assumed to be the last part
86
- const hash = assertEx(pathParts.pop(), 'No hash specified');
87
- //archivist is assumed to be the first part
88
- this.archivist = pathParts.shift() ?? 'api.archivist.xyo.network';
89
- //the archive is whatever is left
90
- this.archive = pathParts.pop();
91
- //after we pull off all the path parts, there should be nothing left
92
- assertEx(pathParts.length === 0, 'Too many path parts');
93
- return hash;
94
- }
95
- validateParse() {
96
- //the archivist should not be zero length
97
- assertEx(this.archivist?.length !== 0, 'Invalid archivist length');
98
- //the archivist should not be zero length (can be undefined)
99
- assertEx(this.archive?.length !== 0, 'Invalid archive length');
100
- //the archive should not be set if the archivist is not set
101
- assertEx(!(this.archive && !this.archivist), 'If specifying archive, archivist is also required');
102
- }
103
- }
104
- //# sourceMappingURL=Huri.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Huri.js","sourceRoot":"","sources":["../../../src/Huri/Huri.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export * from './Huri';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Huri/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './Huri';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Huri/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA"}
@@ -1,68 +0,0 @@
1
- /**
2
- * Validates a XYO schema structure and existence
3
- */
4
- export declare class XyoSchemaNameValidator {
5
- schema?: string;
6
- private _parts?;
7
- private _rootDomain?;
8
- constructor(schema?: string);
9
- /**
10
- * Checks whether the schema is all lowercase
11
- *
12
- * @returns boolean
13
- */
14
- get isLowercase(): boolean;
15
- /**
16
- * Levels in the schema
17
- *
18
- * @returns number
19
- */
20
- get levels(): number | undefined;
21
- /**
22
- * The schema converted into a string array split on '.'
23
- *
24
- * @returns string[]
25
- */
26
- get parts(): string[] | undefined;
27
- /**
28
- * The rootDomain is the first two levels of the schema, in reverse order
29
- * This can be used to determine who 'owns' that schema, based on domain
30
- * registration
31
- *
32
- * @returns string
33
- */
34
- get rootDomain(): string | undefined;
35
- /**
36
- * Run all static validations
37
- * @returns Error[]
38
- */
39
- all(): Error[];
40
- /**
41
- * Run all the validations
42
- * @param checkExistance - boolean
43
- * @returns Error[]
44
- */
45
- allDynamic(): Promise<Error[]>;
46
- /**
47
- * Determines how many levels of the schema's reverse domain
48
- * pass DNS resolution
49
- *
50
- * @returns number (0 if none exist)
51
- */
52
- domainExistenceDepth(): Promise<number>;
53
- /**
54
- * Checks if the root domain validates via DNS resolution
55
- *
56
- * @returns boolean
57
- */
58
- rootDomainExists(): Promise<boolean>;
59
- /**
60
- *
61
- * Get a domain for the schema at a certain level
62
- *
63
- * @param level - Zero based level to check
64
- * @returns string
65
- */
66
- private domainLevel;
67
- }
68
- //# sourceMappingURL=SchemaNameValidator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SchemaNameValidator.d.ts","sourceRoot":"","sources":["../../src/SchemaNameValidator.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,qBAAa,sBAAsB;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,MAAM,CAAC,CAAU;IACzB,OAAO,CAAC,WAAW,CAAC,CAAQ;gBAChB,MAAM,CAAC,EAAE,MAAM;IAI3B;;;;OAIG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;;;OAIG;IACH,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAE/B;IAED;;;;OAIG;IACH,IAAI,KAAK,yBAGR;IAED;;;;;;OAMG;IACH,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAGnC;IAED;;;OAGG;IAEI,GAAG;IAQV;;;;OAIG;IAEU,UAAU;IAOvB;;;;;OAKG;IACU,oBAAoB;IAYjC;;;;OAIG;IACU,gBAAgB;IAI7B;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;CAMpB"}
@@ -1,114 +0,0 @@
1
- import { domainExists } from '@xyo-network/core';
2
- /**
3
- * Validates a XYO schema structure and existence
4
- */
5
- export class XyoSchemaNameValidator {
6
- schema;
7
- _parts;
8
- _rootDomain;
9
- constructor(schema) {
10
- this.schema = schema;
11
- }
12
- /**
13
- * Checks whether the schema is all lowercase
14
- *
15
- * @returns boolean
16
- */
17
- get isLowercase() {
18
- return this.schema === this.schema?.toLowerCase();
19
- }
20
- /**
21
- * Levels in the schema
22
- *
23
- * @returns number
24
- */
25
- get levels() {
26
- return this.parts?.length;
27
- }
28
- /**
29
- * The schema converted into a string array split on '.'
30
- *
31
- * @returns string[]
32
- */
33
- get parts() {
34
- this._parts = this._parts ?? this.schema?.split('.');
35
- return this._parts;
36
- }
37
- /**
38
- * The rootDomain is the first two levels of the schema, in reverse order
39
- * This can be used to determine who 'owns' that schema, based on domain
40
- * registration
41
- *
42
- * @returns string
43
- */
44
- get rootDomain() {
45
- this._rootDomain = this._rootDomain ?? this.domainLevel(1);
46
- return this._rootDomain;
47
- }
48
- /**
49
- * Run all static validations
50
- * @returns Error[]
51
- */
52
- all() {
53
- const errors = [];
54
- if ((this.schema?.length ?? 0) === 0)
55
- errors.push(Error('schema missing'));
56
- else if ((this.levels ?? 0) < 3)
57
- errors.push(Error(`schema levels < 3 [${this.levels}, ${this.schema}]`));
58
- else if (!this.isLowercase)
59
- errors.push(Error(`schema not lowercase [${this.schema}]`));
60
- return errors;
61
- }
62
- /**
63
- * Run all the validations
64
- * @param checkExistance - boolean
65
- * @returns Error[]
66
- */
67
- async allDynamic() {
68
- const errors = [];
69
- if ((this.schema?.length ?? 0) === 0)
70
- errors.push(Error('schema missing'));
71
- else if (!(await this.rootDomainExists()))
72
- errors.push(Error(`schema root domain must exist [${this.rootDomain}]`));
73
- return errors;
74
- }
75
- /**
76
- * Determines how many levels of the schema's reverse domain
77
- * pass DNS resolution
78
- *
79
- * @returns number (0 if none exist)
80
- */
81
- async domainExistenceDepth() {
82
- const levels = this.levels ?? 0;
83
- let level = 0;
84
- while (level < levels) {
85
- if (!(await domainExists(this.domainLevel(level)))) {
86
- break;
87
- }
88
- level += 1;
89
- }
90
- return level;
91
- }
92
- /**
93
- * Checks if the root domain validates via DNS resolution
94
- *
95
- * @returns boolean
96
- */
97
- async rootDomainExists() {
98
- return await domainExists(this.rootDomain);
99
- }
100
- /**
101
- *
102
- * Get a domain for the schema at a certain level
103
- *
104
- * @param level - Zero based level to check
105
- * @returns string
106
- */
107
- domainLevel(level) {
108
- return this.parts
109
- ?.slice(0, level + 1)
110
- .reverse()
111
- .join('.');
112
- }
113
- }
114
- //# sourceMappingURL=SchemaNameValidator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SchemaNameValidator.js","sourceRoot":"","sources":["../../src/SchemaNameValidator.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export * from './testPayload';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Test/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './testPayload';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Test/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
@@ -1,6 +0,0 @@
1
- import { StringKeyObject } from '@xyo-network/core';
2
- import { XyoPayload } from '../models';
3
- declare const testSchema = "network.xyo.test";
4
- declare const testPayload: XyoPayload<StringKeyObject>;
5
- export { testPayload, testSchema };
6
- //# sourceMappingURL=testPayload.d.ts.map
@@ -1 +0,0 @@
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,12 +0,0 @@
1
- const testSchema = 'network.xyo.test';
2
- const testPayload = {
3
- numberField: 1,
4
- objectField: {
5
- numberField: 1,
6
- stringField: 'stringValue',
7
- },
8
- schema: testSchema,
9
- stringField: 'stringValue',
10
- };
11
- export { testPayload, testSchema };
12
- //# sourceMappingURL=testPayload.js.map
@@ -1 +0,0 @@
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,11 +0,0 @@
1
- import { Validator, XyoValidatorBase } from '@xyo-network/core';
2
- import { XyoPayload } from '../models';
3
- import { XyoSchemaNameValidator } from '../SchemaNameValidator';
4
- export declare class PayloadValidator<T extends XyoPayload = XyoPayload> extends XyoValidatorBase<T> implements Validator<T> {
5
- private _schemaValidator?;
6
- constructor(payload: T);
7
- get schemaValidator(): XyoSchemaNameValidator;
8
- schemaName(): Error[];
9
- validate(): Error[];
10
- }
11
- //# sourceMappingURL=Validator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../../../src/Validator/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAE/D,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAE/D,qBAAa,gBAAgB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,gBAAgB,CAAC,CAAC,CAAE,YAAW,SAAS,CAAC,CAAC,CAAC;IAClH,OAAO,CAAC,gBAAgB,CAAC,CAAwB;gBAErC,OAAO,EAAE,CAAC;IAItB,IAAI,eAAe,2BAGlB;IAEM,UAAU;IAUV,QAAQ;CAKhB"}
@@ -1,28 +0,0 @@
1
- import { XyoValidatorBase } from '@xyo-network/core';
2
- import { XyoSchemaNameValidator } from '../SchemaNameValidator';
3
- export class PayloadValidator extends XyoValidatorBase {
4
- _schemaValidator;
5
- constructor(payload) {
6
- super(payload);
7
- }
8
- get schemaValidator() {
9
- this._schemaValidator = this._schemaValidator ?? new XyoSchemaNameValidator(this.obj.schema ?? '');
10
- return this._schemaValidator;
11
- }
12
- schemaName() {
13
- const errors = [];
14
- if (this.obj.schema === undefined) {
15
- errors.push(Error('schema missing'));
16
- }
17
- else {
18
- errors.push(...this.schemaValidator.all());
19
- }
20
- return errors;
21
- }
22
- validate() {
23
- const errors = [];
24
- errors.push(...this.schemaName());
25
- return errors;
26
- }
27
- }
28
- //# sourceMappingURL=Validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../src/Validator/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAG/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAE/D,MAAM,OAAO,gBAAoD,SAAQ,gBAAmB;IAClF,gBAAgB,CAAyB;IAEjD,YAAY,OAAU;QACpB,KAAK,CAAC,OAAO,CAAC,CAAA;IAChB,CAAC;IAED,IAAI,eAAe;QACjB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,IAAI,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;QAClG,OAAO,IAAI,CAAC,gBAAgB,CAAA;IAC9B,CAAC;IAEM,UAAU;QACf,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE;YACjC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAA;SACrC;aAAM;YACL,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC,CAAA;SAC3C;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,QAAQ;QACb,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QACjC,OAAO,MAAM,CAAA;IACf,CAAC;CACF"}
@@ -1,2 +0,0 @@
1
- export * from './Validator';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './Validator';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA"}
@@ -1,23 +0,0 @@
1
- import { DataLike, Hasher } from '@xyo-network/core';
2
- import { Promisable } from '@xyo-network/promise';
3
- import { Huri } from '../Huri';
4
- import { XyoPayload } from '../models';
5
- export declare abstract class PayloadWrapperBase<TPayload extends XyoPayload = XyoPayload> extends Hasher<TPayload> {
6
- get body(): TPayload;
7
- get errors(): Error[];
8
- get payload(): TPayload;
9
- get previousHash(): null;
10
- get schema(): string;
11
- get schemaName(): string;
12
- get valid(): boolean;
13
- static load(_address: DataLike | Huri): Promisable<PayloadWrapperBase | null>;
14
- static parse(_obj: unknown): PayloadWrapperBase;
15
- }
16
- export declare class PayloadWrapper<TPayload extends XyoPayload = XyoPayload> extends PayloadWrapperBase<TPayload> {
17
- private isPayloadWrapper;
18
- static load(address: DataLike | Huri): Promise<PayloadWrapper<import("../models").SchemaFields & import("../models").PayloadFields & {
19
- schema: string;
20
- }> | null>;
21
- static parse<T extends XyoPayload = XyoPayload>(obj: unknown): PayloadWrapper<T>;
22
- }
23
- //# sourceMappingURL=Wrapper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Wrapper.d.ts","sourceRoot":"","sources":["../../../src/Wrapper/Wrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAA4B,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC9E,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,IAAI,aAEd;IAED,IAAI,MAAM,YAET;IAED,IAAW,OAAO,aAEjB;IAED,IAAW,YAAY,SAEtB;IAED,IAAW,MAAM,WAEhB;IAGD,IAAW,UAAU,WAEpB;IAED,IAAI,KAAK,YAER;WAEa,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,GAAG,UAAU,CAAC,kBAAkB,GAAG,IAAI,CAAC;WAItE,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,QAAQ,GAAG,IAAI;;;WAKnC,KAAK,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EAAE,GAAG,EAAE,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC;CAajG"}
@@ -1,52 +0,0 @@
1
- import { assertEx } from '@xylabs/assert';
2
- import { deepOmitUnderscoreFields, Hasher } from '@xyo-network/core';
3
- import { Huri } from '../Huri';
4
- import { PayloadValidator } from '../Validator';
5
- export class PayloadWrapperBase extends Hasher {
6
- get body() {
7
- return deepOmitUnderscoreFields(this.obj);
8
- }
9
- get errors() {
10
- return new PayloadValidator(this.payload).validate();
11
- }
12
- get payload() {
13
- return assertEx(this.obj, 'Missing payload object');
14
- }
15
- get previousHash() {
16
- return null;
17
- }
18
- get schema() {
19
- return this.payload.schema;
20
- }
21
- //intentionally not naming this 'schema' so that the wrapper is not confused for a XyoPayload
22
- get schemaName() {
23
- return assertEx(this.obj.schema, 'Missing payload schema');
24
- }
25
- get valid() {
26
- return this.errors.length === 0;
27
- }
28
- static load(_address) {
29
- throw Error('Not implemented');
30
- }
31
- static parse(_obj) {
32
- throw Error('Not implemented');
33
- }
34
- }
35
- export class PayloadWrapper extends PayloadWrapperBase {
36
- isPayloadWrapper = true;
37
- static async load(address) {
38
- const payload = await new Huri(address).fetch();
39
- return payload ? new PayloadWrapper(payload) : null;
40
- }
41
- static parse(obj) {
42
- assertEx(!Array.isArray(obj), 'Array can not be converted to PayloadWrapper');
43
- switch (typeof obj) {
44
- case 'object': {
45
- const castWrapper = obj;
46
- return assertEx(castWrapper?.isPayloadWrapper ? castWrapper : obj.schema ? new PayloadWrapper(obj) : null, 'Unable to parse payload object');
47
- }
48
- }
49
- throw Error(`Unable to parse [${typeof obj}]`);
50
- }
51
- }
52
- //# sourceMappingURL=Wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Wrapper.js","sourceRoot":"","sources":["../../../src/Wrapper/Wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAY,wBAAwB,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAG9E,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAE9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,MAAM,OAAgB,kBAA6D,SAAQ,MAAgB;IACzG,IAAW,IAAI;QACb,OAAO,wBAAwB,CAAW,IAAI,CAAC,GAAG,CAAC,CAAA;IACrD,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAA;IACtD,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAA;IACrD,CAAC;IAED,IAAW,YAAY;QACrB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;IAC5B,CAAC;IAED,6FAA6F;IAC7F,IAAW,UAAU;QACnB,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAA;IAC5D,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAA;IACjC,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,QAAyB;QAC1C,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,OAAwB;QACxD,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,QAAQ,CACb,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAE,GAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,GAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAC9G,gCAAgC,CACjC,CAAA;aACF;SACF;QACD,MAAM,KAAK,CAAC,oBAAoB,OAAO,GAAG,GAAG,CAAC,CAAA;IAChD,CAAC;CACF"}
@@ -1,2 +0,0 @@
1
- export * from './Wrapper';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Wrapper/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './Wrapper';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Wrapper/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}