@xyo-network/core 2.20.47 → 2.21.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.
Files changed (294) hide show
  1. package/dist/cjs/BoundWitness/Builder/Builder.d.ts +5 -5
  2. package/dist/cjs/BoundWitness/Builder/Builder.js.map +1 -1
  3. package/dist/cjs/BoundWitness/Validator/BodyValidator.d.ts +7 -8
  4. package/dist/cjs/BoundWitness/Validator/BodyValidator.js +23 -20
  5. package/dist/cjs/BoundWitness/Validator/BodyValidator.js.map +1 -1
  6. package/dist/cjs/BoundWitness/Validator/MetaValidator.d.ts +4 -5
  7. package/dist/cjs/BoundWitness/Validator/MetaValidator.js +9 -11
  8. package/dist/cjs/BoundWitness/Validator/MetaValidator.js.map +1 -1
  9. package/dist/cjs/BoundWitness/Validator/Validator.d.ts +5 -5
  10. package/dist/cjs/BoundWitness/Validator/Validator.js +9 -8
  11. package/dist/cjs/BoundWitness/Validator/Validator.js.map +1 -1
  12. package/dist/cjs/BoundWitness/Wrapper/Wrapper.d.ts +5 -7
  13. package/dist/cjs/BoundWitness/Wrapper/Wrapper.js +5 -8
  14. package/dist/cjs/BoundWitness/Wrapper/Wrapper.js.map +1 -1
  15. package/dist/cjs/BoundWitness/models/Base/XyoBoundWitnessBase.d.ts +9 -0
  16. package/dist/cjs/BoundWitness/models/Base/XyoBoundWitnessBase.js +3 -0
  17. package/dist/cjs/BoundWitness/models/Base/XyoBoundWitnessBase.js.map +1 -0
  18. package/dist/cjs/BoundWitness/models/Base/XyoBoundWitnessBaseSchema.d.ts +36 -0
  19. package/dist/cjs/BoundWitness/models/Base/XyoBoundWitnessBaseSchema.js +19 -0
  20. package/dist/cjs/BoundWitness/models/Base/XyoBoundWitnessBaseSchema.js.map +1 -0
  21. package/dist/cjs/BoundWitness/models/Base/index.d.ts +2 -0
  22. package/dist/cjs/BoundWitness/models/Base/index.js +6 -0
  23. package/dist/cjs/BoundWitness/models/Base/index.js.map +1 -0
  24. package/dist/cjs/BoundWitness/models/Body/XyoBoundWitnessBody.d.ts +3 -5
  25. package/dist/cjs/BoundWitness/models/Meta/XyoBoundWitnessMeta.d.ts +7 -10
  26. package/dist/cjs/BoundWitness/models/WithXyoBoundWitnessMeta.d.ts +2 -2
  27. package/dist/cjs/BoundWitness/models/XyoBoundWitness.d.ts +2 -5
  28. package/dist/cjs/BoundWitness/models/index.d.ts +1 -1
  29. package/dist/cjs/BoundWitness/models/index.js +1 -1
  30. package/dist/cjs/Hasher/XyoAbstractHasher.d.ts +2 -2
  31. package/dist/cjs/Hasher/XyoAbstractHasher.js +3 -2
  32. package/dist/cjs/Hasher/XyoAbstractHasher.js.map +1 -1
  33. package/dist/cjs/Hasher/XyoHasher.d.ts +10 -5
  34. package/dist/cjs/Hasher/XyoHasher.js +28 -8
  35. package/dist/cjs/Hasher/XyoHasher.js.map +1 -1
  36. package/dist/cjs/Hasher/index.d.ts +0 -1
  37. package/dist/cjs/Hasher/index.js +0 -1
  38. package/dist/cjs/Hasher/index.js.map +1 -1
  39. package/dist/cjs/Hasher/removeFields.d.ts +3 -3
  40. package/dist/cjs/Hasher/removeFields.js +8 -5
  41. package/dist/cjs/Hasher/removeFields.js.map +1 -1
  42. package/dist/cjs/Hasher/sortFields.d.ts +1 -1
  43. package/dist/cjs/Hasher/sortFields.js +3 -2
  44. package/dist/cjs/Hasher/sortFields.js.map +1 -1
  45. package/dist/cjs/Huri/Huri.d.ts +2 -2
  46. package/dist/cjs/Payload/Builder/Builder.d.ts +3 -2
  47. package/dist/cjs/Payload/Builder/Builder.js.map +1 -1
  48. package/dist/cjs/Payload/Validator/BodyValidator.d.ts +4 -6
  49. package/dist/cjs/Payload/Validator/BodyValidator.js +5 -7
  50. package/dist/cjs/Payload/Validator/BodyValidator.js.map +1 -1
  51. package/dist/cjs/Payload/Validator/MetaValidator.d.ts +4 -5
  52. package/dist/cjs/Payload/Validator/MetaValidator.js +7 -9
  53. package/dist/cjs/Payload/Validator/MetaValidator.js.map +1 -1
  54. package/dist/cjs/Payload/Validator/Validator.d.ts +4 -5
  55. package/dist/cjs/Payload/Validator/Validator.js +5 -4
  56. package/dist/cjs/Payload/Validator/Validator.js.map +1 -1
  57. package/dist/cjs/Payload/Wrapper/Validator.d.ts +5 -6
  58. package/dist/cjs/Payload/Wrapper/Validator.js +5 -7
  59. package/dist/cjs/Payload/Wrapper/Validator.js.map +1 -1
  60. package/dist/cjs/Payload/Wrapper/Wrapper.d.ts +5 -7
  61. package/dist/cjs/Payload/Wrapper/Wrapper.js +5 -9
  62. package/dist/cjs/Payload/Wrapper/Wrapper.js.map +1 -1
  63. package/dist/cjs/Payload/index.d.ts +0 -1
  64. package/dist/cjs/Payload/index.js +0 -1
  65. package/dist/cjs/Payload/index.js.map +1 -1
  66. package/dist/cjs/Payload/models/Base.d.ts +6 -0
  67. package/dist/cjs/Payload/models/Base.js +3 -0
  68. package/dist/cjs/Payload/models/Base.js.map +1 -0
  69. package/dist/cjs/Payload/models/Body.d.ts +2 -3
  70. package/dist/cjs/Payload/models/Meta.d.ts +12 -7
  71. package/dist/cjs/Payload/models/WithAdditional.d.ts +4 -0
  72. package/dist/cjs/Payload/models/WithAdditional.js +3 -0
  73. package/dist/cjs/Payload/models/WithAdditional.js.map +1 -0
  74. package/dist/cjs/Payload/models/XyoPayload.d.ts +2 -4
  75. package/dist/cjs/Payload/models/index.d.ts +1 -2
  76. package/dist/cjs/Payload/models/index.js +1 -2
  77. package/dist/cjs/Payload/models/index.js.map +1 -1
  78. package/dist/cjs/Query/QueryPayload.d.ts +1 -1
  79. package/dist/cjs/Schema/Payload.d.ts +3 -3
  80. package/dist/cjs/Test/testBoundWitness.d.ts +2 -2
  81. package/dist/cjs/Test/testBoundWitness.js.map +1 -1
  82. package/dist/cjs/Test/testPayload.d.ts +3 -2
  83. package/dist/cjs/Test/testPayload.js.map +1 -1
  84. package/dist/cjs/Wallet/Base/WordsPayload.d.ts +1 -1
  85. package/dist/cjs/Witness/LegacyWitness.d.ts +3 -3
  86. package/dist/cjs/Witness/LegacyWitness.js.map +1 -1
  87. package/dist/cjs/Witness/QueryWitness.d.ts +1 -1
  88. package/dist/cjs/Witness/QueryWitness.js.map +1 -1
  89. package/dist/cjs/Witness/Witness.d.ts +1 -1
  90. package/dist/cjs/lib/StringKeyObject.d.ts +4 -0
  91. package/dist/cjs/lib/StringKeyObject.js +3 -0
  92. package/dist/cjs/lib/StringKeyObject.js.map +1 -0
  93. package/dist/cjs/lib/XyoObject.d.ts +6 -0
  94. package/dist/cjs/lib/XyoObject.js +13 -0
  95. package/dist/cjs/lib/XyoObject.js.map +1 -0
  96. package/dist/cjs/lib/XyoValidator.d.ts +4 -0
  97. package/dist/cjs/lib/XyoValidator.js +8 -0
  98. package/dist/cjs/lib/XyoValidator.js.map +1 -0
  99. package/dist/cjs/lib/index.d.ts +3 -0
  100. package/dist/cjs/lib/index.js +3 -0
  101. package/dist/cjs/lib/index.js.map +1 -1
  102. package/dist/cjs/lib/isXyoPayloadOfSchemaType.d.ts +3 -3
  103. package/dist/cjs/models/Base.d.ts +6 -0
  104. package/dist/cjs/models/Base.js +3 -0
  105. package/dist/cjs/models/Base.js.map +1 -0
  106. package/dist/cjs/models/Meta.d.ts +15 -0
  107. package/dist/cjs/models/Meta.js +3 -0
  108. package/dist/cjs/models/Meta.js.map +1 -0
  109. package/dist/cjs/models/XyoPayload.d.ts +2 -0
  110. package/dist/cjs/models/XyoPayload.js +3 -0
  111. package/dist/cjs/models/XyoPayload.js.map +1 -0
  112. package/dist/cjs/models/index.d.ts +3 -1
  113. package/dist/cjs/models/index.js +3 -1
  114. package/dist/cjs/models/index.js.map +1 -1
  115. package/dist/cjs/shared.d.ts +1 -1
  116. package/dist/cjs/shared.js +1 -1
  117. package/dist/cjs/shared.js.map +1 -1
  118. package/dist/esm/BoundWitness/Builder/Builder.d.ts +5 -5
  119. package/dist/esm/BoundWitness/Builder/Builder.js.map +1 -1
  120. package/dist/esm/BoundWitness/Validator/BodyValidator.d.ts +7 -8
  121. package/dist/esm/BoundWitness/Validator/BodyValidator.js +24 -22
  122. package/dist/esm/BoundWitness/Validator/BodyValidator.js.map +1 -1
  123. package/dist/esm/BoundWitness/Validator/MetaValidator.d.ts +4 -5
  124. package/dist/esm/BoundWitness/Validator/MetaValidator.js +9 -11
  125. package/dist/esm/BoundWitness/Validator/MetaValidator.js.map +1 -1
  126. package/dist/esm/BoundWitness/Validator/Validator.d.ts +5 -5
  127. package/dist/esm/BoundWitness/Validator/Validator.js +9 -8
  128. package/dist/esm/BoundWitness/Validator/Validator.js.map +1 -1
  129. package/dist/esm/BoundWitness/Wrapper/Wrapper.d.ts +5 -7
  130. package/dist/esm/BoundWitness/Wrapper/Wrapper.js +3 -7
  131. package/dist/esm/BoundWitness/Wrapper/Wrapper.js.map +1 -1
  132. package/dist/esm/BoundWitness/models/Base/XyoBoundWitnessBase.d.ts +9 -0
  133. package/dist/esm/BoundWitness/models/Base/XyoBoundWitnessBase.js +2 -0
  134. package/dist/esm/BoundWitness/models/Base/XyoBoundWitnessBase.js.map +1 -0
  135. package/dist/esm/BoundWitness/models/Base/XyoBoundWitnessBaseSchema.d.ts +36 -0
  136. package/dist/esm/BoundWitness/models/Base/XyoBoundWitnessBaseSchema.js +16 -0
  137. package/dist/esm/BoundWitness/models/Base/XyoBoundWitnessBaseSchema.js.map +1 -0
  138. package/dist/esm/BoundWitness/models/Base/index.d.ts +2 -0
  139. package/dist/esm/BoundWitness/models/Base/index.js +3 -0
  140. package/dist/esm/BoundWitness/models/Base/index.js.map +1 -0
  141. package/dist/esm/BoundWitness/models/Body/XyoBoundWitnessBody.d.ts +3 -5
  142. package/dist/esm/BoundWitness/models/Meta/XyoBoundWitnessMeta.d.ts +7 -10
  143. package/dist/esm/BoundWitness/models/WithXyoBoundWitnessMeta.d.ts +2 -2
  144. package/dist/esm/BoundWitness/models/XyoBoundWitness.d.ts +2 -5
  145. package/dist/esm/BoundWitness/models/index.d.ts +1 -1
  146. package/dist/esm/BoundWitness/models/index.js +1 -1
  147. package/dist/esm/Hasher/XyoAbstractHasher.d.ts +2 -2
  148. package/dist/esm/Hasher/XyoAbstractHasher.js +3 -2
  149. package/dist/esm/Hasher/XyoAbstractHasher.js.map +1 -1
  150. package/dist/esm/Hasher/XyoHasher.d.ts +10 -5
  151. package/dist/esm/Hasher/XyoHasher.js +27 -8
  152. package/dist/esm/Hasher/XyoHasher.js.map +1 -1
  153. package/dist/esm/Hasher/index.d.ts +0 -1
  154. package/dist/esm/Hasher/index.js +0 -1
  155. package/dist/esm/Hasher/index.js.map +1 -1
  156. package/dist/esm/Hasher/removeFields.d.ts +3 -3
  157. package/dist/esm/Hasher/removeFields.js +8 -5
  158. package/dist/esm/Hasher/removeFields.js.map +1 -1
  159. package/dist/esm/Hasher/sortFields.d.ts +1 -1
  160. package/dist/esm/Hasher/sortFields.js +3 -2
  161. package/dist/esm/Hasher/sortFields.js.map +1 -1
  162. package/dist/esm/Huri/Huri.d.ts +2 -2
  163. package/dist/esm/Payload/Builder/Builder.d.ts +3 -2
  164. package/dist/esm/Payload/Builder/Builder.js.map +1 -1
  165. package/dist/esm/Payload/Validator/BodyValidator.d.ts +4 -6
  166. package/dist/esm/Payload/Validator/BodyValidator.js +5 -8
  167. package/dist/esm/Payload/Validator/BodyValidator.js.map +1 -1
  168. package/dist/esm/Payload/Validator/MetaValidator.d.ts +4 -5
  169. package/dist/esm/Payload/Validator/MetaValidator.js +7 -9
  170. package/dist/esm/Payload/Validator/MetaValidator.js.map +1 -1
  171. package/dist/esm/Payload/Validator/Validator.d.ts +4 -5
  172. package/dist/esm/Payload/Validator/Validator.js +5 -5
  173. package/dist/esm/Payload/Validator/Validator.js.map +1 -1
  174. package/dist/esm/Payload/Wrapper/Validator.d.ts +5 -6
  175. package/dist/esm/Payload/Wrapper/Validator.js +5 -7
  176. package/dist/esm/Payload/Wrapper/Validator.js.map +1 -1
  177. package/dist/esm/Payload/Wrapper/Wrapper.d.ts +5 -7
  178. package/dist/esm/Payload/Wrapper/Wrapper.js +6 -10
  179. package/dist/esm/Payload/Wrapper/Wrapper.js.map +1 -1
  180. package/dist/esm/Payload/index.d.ts +0 -1
  181. package/dist/esm/Payload/index.js +0 -1
  182. package/dist/esm/Payload/index.js.map +1 -1
  183. package/dist/esm/Payload/models/Base.d.ts +6 -0
  184. package/dist/esm/Payload/models/Base.js +2 -0
  185. package/dist/esm/Payload/models/Base.js.map +1 -0
  186. package/dist/esm/Payload/models/Body.d.ts +2 -3
  187. package/dist/esm/Payload/models/Meta.d.ts +12 -7
  188. package/dist/esm/Payload/models/WithAdditional.d.ts +4 -0
  189. package/dist/esm/Payload/models/WithAdditional.js +2 -0
  190. package/dist/esm/Payload/models/WithAdditional.js.map +1 -0
  191. package/dist/esm/Payload/models/XyoPayload.d.ts +2 -4
  192. package/dist/esm/Payload/models/index.d.ts +1 -2
  193. package/dist/esm/Payload/models/index.js +1 -2
  194. package/dist/esm/Payload/models/index.js.map +1 -1
  195. package/dist/esm/Query/QueryPayload.d.ts +1 -1
  196. package/dist/esm/Schema/Payload.d.ts +3 -3
  197. package/dist/esm/Test/testBoundWitness.d.ts +2 -2
  198. package/dist/esm/Test/testBoundWitness.js.map +1 -1
  199. package/dist/esm/Test/testPayload.d.ts +3 -2
  200. package/dist/esm/Test/testPayload.js.map +1 -1
  201. package/dist/esm/Wallet/Base/WordsPayload.d.ts +1 -1
  202. package/dist/esm/Witness/LegacyWitness.d.ts +1 -1
  203. package/dist/esm/Witness/LegacyWitness.js.map +1 -1
  204. package/dist/esm/Witness/QueryWitness.d.ts +1 -1
  205. package/dist/esm/Witness/QueryWitness.js.map +1 -1
  206. package/dist/esm/Witness/Witness.d.ts +1 -1
  207. package/dist/esm/lib/StringKeyObject.d.ts +4 -0
  208. package/dist/esm/lib/StringKeyObject.js +2 -0
  209. package/dist/esm/lib/StringKeyObject.js.map +1 -0
  210. package/dist/esm/lib/XyoObject.d.ts +6 -0
  211. package/dist/esm/lib/XyoObject.js +9 -0
  212. package/dist/esm/lib/XyoObject.js.map +1 -0
  213. package/dist/esm/lib/XyoValidator.d.ts +4 -0
  214. package/dist/esm/lib/XyoValidator.js +4 -0
  215. package/dist/esm/lib/XyoValidator.js.map +1 -0
  216. package/dist/esm/lib/index.d.ts +3 -0
  217. package/dist/esm/lib/index.js +3 -0
  218. package/dist/esm/lib/index.js.map +1 -1
  219. package/dist/esm/lib/isXyoPayloadOfSchemaType.d.ts +3 -3
  220. package/dist/esm/models/Base.d.ts +6 -0
  221. package/dist/esm/models/Base.js +2 -0
  222. package/dist/esm/models/Base.js.map +1 -0
  223. package/dist/esm/models/Meta.d.ts +15 -0
  224. package/dist/esm/models/Meta.js +2 -0
  225. package/dist/esm/models/Meta.js.map +1 -0
  226. package/dist/esm/models/XyoPayload.d.ts +2 -0
  227. package/dist/esm/models/XyoPayload.js +2 -0
  228. package/dist/esm/models/XyoPayload.js.map +1 -0
  229. package/dist/esm/models/index.d.ts +3 -1
  230. package/dist/esm/models/index.js +3 -1
  231. package/dist/esm/models/index.js.map +1 -1
  232. package/dist/esm/shared.d.ts +1 -1
  233. package/dist/esm/shared.js +1 -1
  234. package/dist/esm/shared.js.map +1 -1
  235. package/package.json +1 -1
  236. package/src/BoundWitness/Builder/Builder.spec.ts +4 -3
  237. package/src/BoundWitness/Builder/Builder.ts +7 -7
  238. package/src/BoundWitness/Validator/BodyValidator.spec.ts +1 -1
  239. package/src/BoundWitness/Validator/BodyValidator.ts +26 -27
  240. package/src/BoundWitness/Validator/MetaValidator.spec.ts +10 -10
  241. package/src/BoundWitness/Validator/MetaValidator.ts +9 -13
  242. package/src/BoundWitness/Validator/Validator.spec.ts +1 -1
  243. package/src/BoundWitness/Validator/Validator.ts +11 -11
  244. package/src/BoundWitness/Wrapper/Wrapper.ts +4 -11
  245. package/src/BoundWitness/models/Base/XyoBoundWitnessBase.ts +10 -0
  246. package/src/BoundWitness/models/{Body/XyoBoundWitnessBodySchema.ts → Base/XyoBoundWitnessBaseSchema.ts} +1 -3
  247. package/src/BoundWitness/models/Base/index.ts +2 -0
  248. package/src/BoundWitness/models/Meta/XyoBoundWitnessMeta.ts +7 -10
  249. package/src/BoundWitness/models/WithXyoBoundWitnessMeta.ts +2 -2
  250. package/src/BoundWitness/models/XyoBoundWitness.ts +2 -6
  251. package/src/BoundWitness/models/index.ts +1 -1
  252. package/src/Hasher/XyoHasher.ts +31 -8
  253. package/src/Hasher/index.ts +0 -1
  254. package/src/Hasher/removeFields.ts +17 -9
  255. package/src/Hasher/sortFields.ts +8 -5
  256. package/src/Huri/Huri.spec.ts +1 -1
  257. package/src/Huri/Huri.ts +1 -1
  258. package/src/Payload/Builder/Builder.ts +3 -2
  259. package/src/Payload/Validator/BodyValidator.spec.ts +1 -1
  260. package/src/Payload/Validator/BodyValidator.ts +6 -13
  261. package/src/Payload/Validator/MetaValidator.spec.ts +1 -1
  262. package/src/Payload/Validator/MetaValidator.ts +7 -11
  263. package/src/Payload/Validator/Validator.spec.ts +16 -16
  264. package/src/Payload/Validator/Validator.ts +6 -8
  265. package/src/Payload/Wrapper/Validator.ts +6 -10
  266. package/src/Payload/Wrapper/Wrapper.ts +7 -13
  267. package/src/Payload/index.ts +0 -1
  268. package/src/Query/QueryPayload.ts +1 -1
  269. package/src/Schema/Payload.ts +3 -3
  270. package/src/Test/testBoundWitness.ts +2 -2
  271. package/src/Test/testPayload.ts +3 -2
  272. package/src/Wallet/Base/WordsPayload.ts +1 -1
  273. package/src/Witness/LegacyWitness.ts +2 -1
  274. package/src/Witness/QueryWitness.ts +2 -1
  275. package/src/Witness/Witness.ts +1 -1
  276. package/src/lib/StringKeyObject.ts +2 -0
  277. package/src/lib/XyoObject.ts +11 -0
  278. package/src/lib/XyoValidator.ts +5 -0
  279. package/src/lib/index.ts +3 -0
  280. package/src/lib/isXyoPayloadOfSchemaType.ts +1 -1
  281. package/src/models/Base.ts +6 -0
  282. package/src/models/Meta.ts +17 -0
  283. package/src/models/XyoPayload.ts +3 -0
  284. package/src/models/index.ts +3 -1
  285. package/src/shared.ts +1 -1
  286. package/src/BoundWitness/models/Body/XyoBoundWitnessBody.ts +0 -13
  287. package/src/BoundWitness/models/Body/index.ts +0 -2
  288. package/src/Hasher/XyoAbstractHasher.ts +0 -37
  289. package/src/Payload/models/Body.ts +0 -7
  290. package/src/Payload/models/Meta.ts +0 -11
  291. package/src/Payload/models/WithXyoPayloadMeta.ts +0 -6
  292. package/src/Payload/models/XyoPayload.ts +0 -6
  293. package/src/Payload/models/index.ts +0 -4
  294. package/src/models/WithStringIndex.ts +0 -1
@@ -1,5 +1,5 @@
1
- import { XyoPayload } from '../Payload';
2
- export interface XyoSchemaPayload extends XyoPayload {
1
+ import { XyoPayload } from '../models';
2
+ export declare type XyoSchemaPayload = XyoPayload<{
3
3
  /** @deprecated use definition.$id instead */
4
4
  name?: string;
5
5
  definition: {
@@ -7,4 +7,4 @@ export interface XyoSchemaPayload extends XyoPayload {
7
7
  [key: string]: unknown;
8
8
  };
9
9
  extends?: string;
10
- }
10
+ }>;
@@ -1,3 +1,3 @@
1
- import { XyoBoundWitness } from '../BoundWitness';
2
- declare const testBoundWitness: XyoBoundWitness;
1
+ import { XyoBoundWitnessWithMeta } from '../BoundWitness';
2
+ declare const testBoundWitness: XyoBoundWitnessWithMeta;
3
3
  export { testBoundWitness };
@@ -1 +1 @@
1
- {"version":3,"file":"testBoundWitness.js","sourceRoot":"","sources":["../../../src/Test/testBoundWitness.ts"],"names":[],"mappings":";;;AAEA,MAAM,gBAAgB,GAAoB;IACxC,QAAQ,EAAE,MAAM;IAChB,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,kEAAkE;IACzE,WAAW,EAAE,CAAC,kIAAkI,CAAC;IACjJ,UAAU,EAAE,aAAa;IACzB,SAAS,EAAE,CAAC,0CAA0C,CAAC;IACvD,cAAc,EAAE,CAAC,kEAAkE,CAAC;IACpF,eAAe,EAAE,CAAC,kBAAkB,CAAC;IACrC,eAAe,EAAE,CAAC,IAAI,CAAC;IACvB,MAAM,EAAE,0BAA0B;CACnC,CAAA;AAEQ,4CAAgB"}
1
+ {"version":3,"file":"testBoundWitness.js","sourceRoot":"","sources":["../../../src/Test/testBoundWitness.ts"],"names":[],"mappings":";;;AAEA,MAAM,gBAAgB,GAA4B;IAChD,QAAQ,EAAE,MAAM;IAChB,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,kEAAkE;IACzE,WAAW,EAAE,CAAC,kIAAkI,CAAC;IACjJ,UAAU,EAAE,aAAa;IACzB,SAAS,EAAE,CAAC,0CAA0C,CAAC;IACvD,cAAc,EAAE,CAAC,kEAAkE,CAAC;IACpF,eAAe,EAAE,CAAC,kBAAkB,CAAC;IACrC,eAAe,EAAE,CAAC,IAAI,CAAC;IACvB,MAAM,EAAE,0BAA0B;CACnC,CAAA;AAEQ,4CAAgB"}
@@ -1,4 +1,5 @@
1
- import { XyoPayload } from '../Payload';
1
+ import { WithAdditional } from '../lib';
2
+ import { XyoPayloadWithMeta } from '../models';
2
3
  declare const testSchema = "network.xyo.test";
3
- declare const testPayload: XyoPayload;
4
+ declare const testPayload: WithAdditional<XyoPayloadWithMeta>;
4
5
  export { testPayload, testSchema };
@@ -1 +1 @@
1
- {"version":3,"file":"testPayload.js","sourceRoot":"","sources":["../../../src/Test/testPayload.ts"],"names":[],"mappings":";;;AAEA,MAAM,UAAU,GAAG,kBAAkB,CAAA;AAcf,gCAAU;AAbhC,MAAM,WAAW,GAAe;IAC9B,QAAQ,EAAE,MAAM;IAChB,KAAK,EAAE,kEAAkE;IACzE,UAAU,EAAE,aAAa;IACzB,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;AAEQ,kCAAW"}
1
+ {"version":3,"file":"testPayload.js","sourceRoot":"","sources":["../../../src/Test/testPayload.ts"],"names":[],"mappings":";;;AAGA,MAAM,UAAU,GAAG,kBAAkB,CAAA;AAcf,gCAAU;AAbhC,MAAM,WAAW,GAAuC;IACtD,QAAQ,EAAE,MAAM;IAChB,KAAK,EAAE,kEAAkE;IACzE,UAAU,EAAE,aAAa;IACzB,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;AAEQ,kCAAW"}
@@ -1,4 +1,4 @@
1
- import { XyoPayload } from '../../Payload';
1
+ import { XyoPayload } from '../../models';
2
2
  export interface XyoWordsPayload extends XyoPayload {
3
3
  words: string[];
4
4
  }
@@ -1,4 +1,4 @@
1
- import { XyoPayload } from '../Payload';
1
+ import { XyoPayload } from '../models';
2
2
  import { XyoWitness } from './Witness';
3
3
  export interface XyoSimpleWitnessConfig<T extends XyoPayload = XyoPayload> {
4
4
  schema: string;
@@ -13,7 +13,7 @@ export declare class XyoSimpleWitness<T extends XyoPayload = XyoPayload, C exten
13
13
  observe(fields?: Partial<T>): Promise<T>;
14
14
  }
15
15
  /** @deprecated Use XyoSimpleWitness */
16
- export declare class XyoLegacyWitness extends XyoSimpleWitness {
16
+ export declare class XyoLegacyWitness<T extends XyoPayload = XyoPayload, C extends XyoSimpleWitnessConfig<T> = XyoSimpleWitnessConfig<T>> extends XyoSimpleWitness<T, C> {
17
17
  }
18
18
  /** @deprecated Use XyoSimpleWitnessConfig */
19
- export declare type XyoWitnessConfig = XyoSimpleWitnessConfig;
19
+ export declare type XyoWitnessConfig<T extends XyoPayload = XyoPayload> = XyoSimpleWitnessConfig<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"LegacyWitness.js","sourceRoot":"","sources":["../../../src/Witness/LegacyWitness.ts"],"names":[],"mappings":";;;;AAAA,wCAA0D;AAC1D,uCAAsC;AAQtC,MAAa,gBAAqH,SAAQ,oBAAa;IAIrJ,YAAY,MAAU;QACpB,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,IAAa,YAAY;;QACvB,OAAO,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,mCAAI,qBAAqB,CAAA;IACrD,CAAC;IAEY,OAAO,CAAC,MAAmB;;;YACtC,OAAO,IAAI,2BAAiB,CAAI,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;iBAC3D,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC;iBAC/B,MAAM,CAAC,MAAM,CAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ,kDAAI,CAAA,CAAC;iBACvC,MAAM,CAAC,MAAM,CAAC;iBACd,KAAK,EAAE,CAAA;;KACX;CACF;AApBD,4CAoBC;AAED,uCAAuC;AACvC,MAAa,gBAAiB,SAAQ,gBAAgB;CAAG;AAAzD,4CAAyD"}
1
+ {"version":3,"file":"LegacyWitness.js","sourceRoot":"","sources":["../../../src/Witness/LegacyWitness.ts"],"names":[],"mappings":";;;;AACA,wCAA8C;AAC9C,uCAAsC;AAQtC,MAAa,gBAAqH,SAAQ,oBAAa;IAIrJ,YAAY,MAAU;QACpB,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,IAAa,YAAY;;QACvB,OAAO,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,mCAAI,qBAAqB,CAAA;IACrD,CAAC;IAEY,OAAO,CAAC,MAAmB;;;YACtC,OAAO,IAAI,2BAAiB,CAAI,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;iBAC3D,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC;iBAC/B,MAAM,CAAC,MAAM,CAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ,kDAAI,CAAA,CAAC;iBACvC,MAAM,CAAC,MAAM,CAAC;iBACd,KAAK,EAAE,CAAA;;KACX;CACF;AApBD,4CAoBC;AAED,uCAAuC;AACvC,MAAa,gBAAqH,SAAQ,gBAAsB;CAAG;AAAnK,4CAAmK"}
@@ -1,4 +1,4 @@
1
- import { XyoPayload } from '../Payload';
1
+ import { XyoPayload } from '../models';
2
2
  import { XyoQueryPayload } from '../Query';
3
3
  import { XyoWitness } from './Witness';
4
4
  export declare class XyoQueryWitness<Q extends XyoQueryPayload, T extends XyoPayload> extends XyoWitness {
@@ -1 +1 @@
1
- {"version":3,"file":"QueryWitness.js","sourceRoot":"","sources":["../../../src/Witness/QueryWitness.ts"],"names":[],"mappings":";;;;AAAA,2CAAsC;AAEtC,wCAA0D;AAE1D,uCAAsC;AAEtC,MAAa,eAAiE,SAAQ,oBAAU;IAG9F,YAAY,KAAQ;QAClB,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,IAAa,YAAY;;QACvB,OAAO,MAAA,IAAI,CAAC,KAAK,CAAC,YAAY,mCAAI,qBAAqB,CAAA;IACzD,CAAC;IAEY,OAAO,CAAC,MAAmB;;YACtC,MAAM,IAAA,cAAK,EAAC,CAAC,CAAC,CAAA;YACd,OAAO,IAAI,2BAAiB,CAAI,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;QACvF,CAAC;KAAA;CACF;AAhBD,0CAgBC"}
1
+ {"version":3,"file":"QueryWitness.js","sourceRoot":"","sources":["../../../src/Witness/QueryWitness.ts"],"names":[],"mappings":";;;;AAAA,2CAAsC;AAGtC,wCAA8C;AAE9C,uCAAsC;AAEtC,MAAa,eAAiE,SAAQ,oBAAU;IAG9F,YAAY,KAAQ;QAClB,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,IAAa,YAAY;;QACvB,OAAO,MAAA,IAAI,CAAC,KAAK,CAAC,YAAY,mCAAI,qBAAqB,CAAA;IACzD,CAAC;IAEY,OAAO,CAAC,MAAmB;;YACtC,MAAM,IAAA,cAAK,EAAC,CAAC,CAAC,CAAA;YACd,OAAO,IAAI,2BAAiB,CAAI,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;QACvF,CAAC;KAAA;CACF;AAhBD,0CAgBC"}
@@ -1,4 +1,4 @@
1
- import { XyoPayload } from '../Payload';
1
+ import { XyoPayload } from '../models';
2
2
  export declare abstract class XyoWitness<T extends XyoPayload = XyoPayload> {
3
3
  abstract observe(fields?: Partial<T>): Promise<T>;
4
4
  abstract get targetSchema(): string;
@@ -0,0 +1,4 @@
1
+ export declare type StringKeyObject = {
2
+ [key: string]: unknown;
3
+ };
4
+ export declare type WithAdditional<T> = T & StringKeyObject;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=StringKeyObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StringKeyObject.js","sourceRoot":"","sources":["../../../src/lib/StringKeyObject.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import { StringKeyObject } from './StringKeyObject';
2
+ export declare abstract class XyoObject<T extends object = object> {
3
+ readonly obj: T;
4
+ constructor(obj: T);
5
+ protected get stringKeyObj(): StringKeyObject;
6
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.XyoObject = void 0;
4
+ class XyoObject {
5
+ constructor(obj) {
6
+ this.obj = obj;
7
+ }
8
+ get stringKeyObj() {
9
+ return this.obj;
10
+ }
11
+ }
12
+ exports.XyoObject = XyoObject;
13
+ //# sourceMappingURL=XyoObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XyoObject.js","sourceRoot":"","sources":["../../../src/lib/XyoObject.ts"],"names":[],"mappings":";;;AAEA,MAAsB,SAAS;IAE7B,YAAY,GAAM;QAChB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,CAAC;IACD,IAAc,YAAY;QACxB,OAAO,IAAI,CAAC,GAAiC,CAAA;IAC/C,CAAC;CACF;AARD,8BAQC"}
@@ -0,0 +1,4 @@
1
+ import { XyoObject } from './XyoObject';
2
+ export declare abstract class XyoValidator<T extends object = object> extends XyoObject<T> {
3
+ abstract validate(payload: T): Error[];
4
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.XyoValidator = void 0;
4
+ const XyoObject_1 = require("./XyoObject");
5
+ class XyoValidator extends XyoObject_1.XyoObject {
6
+ }
7
+ exports.XyoValidator = XyoValidator;
8
+ //# sourceMappingURL=XyoValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XyoValidator.js","sourceRoot":"","sources":["../../../src/lib/XyoValidator.ts"],"names":[],"mappings":";;;AAAA,2CAAuC;AAEvC,MAAsB,YAAwC,SAAQ,qBAAY;CAEjF;AAFD,oCAEC"}
@@ -1,4 +1,7 @@
1
1
  export * from './dns';
2
2
  export * from './dumpErrors';
3
3
  export * from './isBrowser';
4
+ export * from './StringKeyObject';
4
5
  export * from './typeOf';
6
+ export * from './XyoObject';
7
+ export * from './XyoValidator';
@@ -4,5 +4,8 @@ const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./dns"), exports);
5
5
  tslib_1.__exportStar(require("./dumpErrors"), exports);
6
6
  tslib_1.__exportStar(require("./isBrowser"), exports);
7
+ tslib_1.__exportStar(require("./StringKeyObject"), exports);
7
8
  tslib_1.__exportStar(require("./typeOf"), exports);
9
+ tslib_1.__exportStar(require("./XyoObject"), exports);
10
+ tslib_1.__exportStar(require("./XyoValidator"), exports);
8
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":";;;AAAA,gDAAqB;AACrB,uDAA4B;AAC5B,sDAA2B;AAC3B,mDAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":";;;AAAA,gDAAqB;AACrB,uDAA4B;AAC5B,sDAA2B;AAC3B,4DAAiC;AACjC,mDAAwB;AACxB,sDAA2B;AAC3B,yDAA8B"}
@@ -1,6 +1,6 @@
1
1
  import { XyoBoundWitness } from '../BoundWitness';
2
- import { XyoPayload } from '../Payload';
2
+ import { XyoPayload } from '../models';
3
3
  import { XyoSchemaPayload } from '../Schema';
4
- export declare const isXyoPayloadOfSchemaType: <T extends import("../Payload").XyoPayloadFull>(schema: string) => (x: XyoPayload) => x is T;
4
+ export declare const isXyoPayloadOfSchemaType: <T extends XyoPayload<object>>(schema: string) => (x: XyoPayload) => x is T;
5
5
  export declare const isXyoSchemaPayload: (x: XyoPayload) => x is XyoSchemaPayload;
6
- export declare const isXyoBoundWitnessPayload: (x: XyoPayload) => x is XyoBoundWitness;
6
+ export declare const isXyoBoundWitnessPayload: (x: XyoPayload) => x is XyoBoundWitness<import("../BoundWitness").XyoBoundWitnessBase>;
@@ -0,0 +1,6 @@
1
+ export interface XyoPayloadBase {
2
+ schema: string;
3
+ previousHash?: string;
4
+ sources?: string[];
5
+ timestamp?: number;
6
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=Base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Base.js","sourceRoot":"","sources":["../../../src/models/Base.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import { XyoPayloadBase } from './Base';
2
+ import { XyoPayload } from './XyoPayload';
3
+ export interface XyoPayloadMetaBase {
4
+ _hash: string;
5
+ _observeDuration?: number;
6
+ _archive: string;
7
+ _client?: string;
8
+ _reportedHash?: string;
9
+ _timestamp: number;
10
+ _sources?: XyoPayload[];
11
+ }
12
+ export declare type XyoPayloadMeta<T = unknown> = T & XyoPayloadMetaBase;
13
+ export declare type XyoPartialPayloadMeta<T = unknown> = T & Partial<XyoPayloadMetaBase>;
14
+ export declare type XyoPayloadWithMeta<T = unknown> = T & XyoPayloadMetaBase & XyoPayloadBase;
15
+ export declare type XyoPayloadWithPartialMeta<T = unknown> = T & Partial<XyoPayloadMetaBase> & XyoPayloadBase;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=Meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Meta.js","sourceRoot":"","sources":["../../../src/models/Meta.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import { XyoPayloadBase } from './Base';
2
+ export declare type XyoPayload<T extends object = object> = T & XyoPayloadBase;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=XyoPayload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XyoPayload.js","sourceRoot":"","sources":["../../../src/models/XyoPayload.ts"],"names":[],"mappings":""}
@@ -1 +1,3 @@
1
- export * from './WithStringIndex';
1
+ export * from './Base';
2
+ export * from './Meta';
3
+ export * from './XyoPayload';
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./WithStringIndex"), exports);
4
+ tslib_1.__exportStar(require("./Base"), exports);
5
+ tslib_1.__exportStar(require("./Meta"), exports);
6
+ tslib_1.__exportStar(require("./XyoPayload"), exports);
5
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/index.ts"],"names":[],"mappings":";;;AAAA,4DAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/models/index.ts"],"names":[],"mappings":";;;AAAA,iDAAsB;AACtB,iDAAsB;AACtB,uDAA4B"}
@@ -2,10 +2,10 @@ export * from './BoundWitness';
2
2
  export * from './Hasher';
3
3
  export * from './Huri';
4
4
  export * from './lib';
5
- export * from './models';
6
5
  export * from './Payload';
7
6
  export * from './Query';
8
7
  export * from './Schema';
9
8
  export * from './SchemaNameValidator';
10
9
  export * from './Wallet';
11
10
  export * from './Witness';
11
+ export * from './models';
@@ -5,11 +5,11 @@ tslib_1.__exportStar(require("./BoundWitness"), exports);
5
5
  tslib_1.__exportStar(require("./Hasher"), exports);
6
6
  tslib_1.__exportStar(require("./Huri"), exports);
7
7
  tslib_1.__exportStar(require("./lib"), exports);
8
- tslib_1.__exportStar(require("./models"), exports);
9
8
  tslib_1.__exportStar(require("./Payload"), exports);
10
9
  tslib_1.__exportStar(require("./Query"), exports);
11
10
  tslib_1.__exportStar(require("./Schema"), exports);
12
11
  tslib_1.__exportStar(require("./SchemaNameValidator"), exports);
13
12
  tslib_1.__exportStar(require("./Wallet"), exports);
14
13
  tslib_1.__exportStar(require("./Witness"), exports);
14
+ tslib_1.__exportStar(require("./models"), exports);
15
15
  //# sourceMappingURL=shared.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/shared.ts"],"names":[],"mappings":";;;AAAA,yDAA8B;AAC9B,mDAAwB;AACxB,iDAAsB;AACtB,gDAAqB;AACrB,mDAAwB;AACxB,oDAAyB;AACzB,kDAAuB;AACvB,mDAAwB;AACxB,gEAAqC;AACrC,mDAAwB;AACxB,oDAAyB"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/shared.ts"],"names":[],"mappings":";;;AAAA,yDAA8B;AAC9B,mDAAwB;AACxB,iDAAsB;AACtB,gDAAqB;AACrB,oDAAyB;AACzB,kDAAuB;AACvB,mDAAwB;AACxB,gEAAqC;AACrC,mDAAwB;AACxB,oDAAyB;AACzB,mDAAwB"}
@@ -1,6 +1,6 @@
1
- import { XyoPayload } from '../../Payload';
1
+ import { XyoPayloadWithPartialMeta } from '../../models';
2
2
  import { XyoAccount } from '../../Wallet';
3
- import { XyoBoundWitness } from '../models';
3
+ import { XyoBoundWitness, XyoBoundWitnessWithMeta } from '../models';
4
4
  export interface XyoBoundWitnessBuilderConfig {
5
5
  /** Whether or not the payloads should be included in the metadata sent to and recorded by the ArchivistApi */
6
6
  readonly inlinePayloads?: boolean;
@@ -13,10 +13,10 @@ export declare class XyoBoundWitnessBuilder {
13
13
  constructor(config?: XyoBoundWitnessBuilderConfig);
14
14
  private get _payload_hashes();
15
15
  witness(account: XyoAccount): this;
16
- payloads(payloads: (XyoPayload | null)[]): this;
17
- payload(payload?: XyoPayload): this;
16
+ payloads(payloads: (XyoPayloadWithPartialMeta | null)[]): this;
17
+ payload(payload?: XyoPayloadWithPartialMeta): this;
18
18
  hashableFields(): XyoBoundWitness;
19
19
  private signatures;
20
20
  private inlinePayloads;
21
- build(): XyoBoundWitness;
21
+ build(): XyoBoundWitnessWithMeta;
22
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Builder.js","sourceRoot":"","sources":["../../../../src/BoundWitness/Builder/Builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Builder.js","sourceRoot":"","sources":["../../../../src/BoundWitness/Builder/Builder.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import { XyoPayload } from '../../Payload';
2
- import { XyoBoundWitnessBody } from '../models';
3
- declare class XyoBoundWitnessBodyValidator {
4
- private body;
1
+ import { XyoValidator } from '../../lib';
2
+ import { XyoPayload } from '../../models';
3
+ import { XyoBoundWitness } from '../models';
4
+ export declare class XyoBoundWitnessBodyValidator<T extends XyoBoundWitness = XyoBoundWitness> extends XyoValidator<T> {
5
5
  private payloads?;
6
- constructor(body: XyoBoundWitnessBody, payloads?: XyoPayload[]);
6
+ constructor(boundWitness: T, payloads?: XyoPayload[]);
7
7
  addressesUniqueness(): Error[];
8
8
  addresses(): Error[];
9
9
  private validateArrayLength;
@@ -12,7 +12,6 @@ declare class XyoBoundWitnessBodyValidator {
12
12
  payloadHashes(): Error[];
13
13
  payloadSchemas(): Error[];
14
14
  previousHashes(): Error[];
15
- schmea(): Error[];
16
- all(): Error[];
15
+ schema(): Error[];
16
+ validate(): Error[];
17
17
  }
18
- export { XyoBoundWitnessBodyValidator };
@@ -1,15 +1,15 @@
1
1
  import uniq from 'lodash/uniq';
2
2
  import { XyoHasher } from '../../Hasher';
3
- import { validateType } from '../../lib';
3
+ import { validateType, XyoValidator } from '../../lib';
4
4
  import { XyoSchemaNameValidator } from '../../SchemaNameValidator';
5
- class XyoBoundWitnessBodyValidator {
6
- constructor(body, payloads) {
7
- this.body = body;
5
+ export class XyoBoundWitnessBodyValidator extends XyoValidator {
6
+ constructor(boundWitness, payloads) {
7
+ super(boundWitness);
8
8
  this.payloads = payloads;
9
9
  }
10
10
  addressesUniqueness() {
11
11
  const errors = [];
12
- const { addresses } = this.body;
12
+ const { addresses } = this.obj;
13
13
  const uniqAddresses = uniq(addresses);
14
14
  if (addresses?.length !== uniqAddresses?.length)
15
15
  errors.push(new Error('addresses must be unique'));
@@ -17,7 +17,7 @@ class XyoBoundWitnessBodyValidator {
17
17
  }
18
18
  addresses() {
19
19
  const errors = [];
20
- const { addresses } = this.body;
20
+ const { addresses } = this.obj;
21
21
  if (!addresses?.length)
22
22
  errors.push(new Error('addresses missing [at least one address required]'));
23
23
  errors.push(...this.addressesUniqueness());
@@ -25,8 +25,8 @@ class XyoBoundWitnessBodyValidator {
25
25
  }
26
26
  validateArrayLength(fieldName, compareArrayName) {
27
27
  const errors = [];
28
- const [array, arrayErrors] = validateType('array', this.body[fieldName], true);
29
- const [compareArray, compareArrayErrors] = validateType('array', this.body[compareArrayName], true);
28
+ const [array, arrayErrors] = validateType('array', this.stringKeyObj[fieldName], true);
29
+ const [compareArray, compareArrayErrors] = validateType('array', this.stringKeyObj[compareArrayName], true);
30
30
  if (array?.length !== compareArray?.length) {
31
31
  errors.push(new Error(`${fieldName}/${compareArrayName} count mismatch [${array?.length} !== ${compareArray?.length}]`));
32
32
  }
@@ -44,10 +44,10 @@ class XyoBoundWitnessBodyValidator {
44
44
  }
45
45
  payloadHashes() {
46
46
  const errors = [];
47
- const passedHashes = this.body.payload_hashes;
47
+ const passedHashes = this.obj.payload_hashes;
48
48
  this.payloads?.forEach((payload, index) => {
49
49
  const calcHash = new XyoHasher(payload).hash;
50
- const passedHash = passedHashes[index];
50
+ const passedHash = passedHashes?.[index];
51
51
  if (calcHash !== passedHash) {
52
52
  errors.push(new Error(`hash mismatch [${calcHash} !== ${passedHash}]`));
53
53
  }
@@ -56,31 +56,33 @@ class XyoBoundWitnessBodyValidator {
56
56
  }
57
57
  payloadSchemas() {
58
58
  const errors = [];
59
- const schemaValidators = this.body.payload_schemas.map((schema) => {
60
- return new XyoSchemaNameValidator(schema);
61
- });
62
- schemaValidators.forEach((validator) => {
63
- errors.push(...validator.all());
64
- });
59
+ const payloadSchemas = this.obj.payload_schemas;
60
+ if (payloadSchemas) {
61
+ const schemaValidators = payloadSchemas.map((schema) => {
62
+ return new XyoSchemaNameValidator(schema);
63
+ });
64
+ schemaValidators.forEach((validator) => {
65
+ errors.push(...validator.all());
66
+ });
67
+ }
65
68
  return errors;
66
69
  }
67
70
  previousHashes() {
68
71
  const errors = [];
69
72
  return errors;
70
73
  }
71
- schmea() {
74
+ schema() {
72
75
  const errors = [];
73
76
  const expectedSchema = 'network.xyo.boundwitness';
74
- if (this.body.schema !== expectedSchema) {
75
- errors.push(new Error(`invalid schema [${expectedSchema} !== ${this.body.schema}]`));
77
+ if (this.obj.schema !== expectedSchema) {
78
+ errors.push(new Error(`invalid schema [${expectedSchema} !== ${this.obj.schema}]`));
76
79
  }
77
80
  return errors;
78
81
  }
79
- all() {
82
+ validate() {
80
83
  const errors = [];
81
- errors.push(...this.addresses(), ...this.validateArrayLengths(), ...this.payloadHashes(), ...this.payloadSchemas(), ...this.previousHashes(), ...this.schmea());
84
+ errors.push(...this.addresses(), ...this.validateArrayLengths(), ...this.payloadHashes(), ...this.payloadSchemas(), ...this.previousHashes(), ...this.schema());
82
85
  return errors;
83
86
  }
84
87
  }
85
- export { XyoBoundWitnessBodyValidator };
86
88
  //# sourceMappingURL=BodyValidator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BodyValidator.js","sourceRoot":"","sources":["../../../../src/BoundWitness/Validator/BodyValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BodyValidator.js","sourceRoot":"","sources":["../../../../src/BoundWitness/Validator/BodyValidator.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAA;AAE9B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAEtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AAGlE,MAAM,OAAO,4BAA0E,SAAQ,YAAe;IAE5G,YAAY,YAAe,EAAE,QAAuB;QAClD,KAAK,CAAC,YAAY,CAAC,CAAA;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAEM,mBAAmB;QACxB,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,CAAA;QAC9B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,CAAA;QACrC,IAAI,SAAS,EAAE,MAAM,KAAK,aAAa,EAAE,MAAM;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAA;QACnG,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,SAAS;QACd,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,CAAA;QAC9B,IAAI,CAAC,SAAS,EAAE,MAAM;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC,CAAA;QACnG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAA;QAC1C,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,mBAAmB,CAAC,SAAiB,EAAE,gBAAwB;QACrE,MAAM,MAAM,GAAY,EAAE,CAAA;QAE1B,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAO,EAAE,IAAI,CAAC,CAAA;QAC5F,MAAM,CAAC,YAAY,EAAE,kBAAkB,CAAC,GAAG,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAO,EAAE,IAAI,CAAC,CAAA;QAEjH,IAAI,KAAK,EAAE,MAAM,KAAK,YAAY,EAAE,MAAM,EAAE;YAC1C,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,GAAG,SAAS,IAAI,gBAAgB,oBAAoB,KAAK,EAAE,MAAM,QAAQ,YAAY,EAAE,MAAM,GAAG,CAAC,CAAC,CAAA;SACzH;QAED,OAAO,CAAC,GAAG,WAAW,EAAE,GAAG,kBAAkB,EAAE,GAAG,MAAM,CAAC,CAAA;IAC3D,CAAC;IAEM,2BAA2B;QAChC,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC,CAAA;QAC7E,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,oBAAoB;QACzB,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,2BAA2B,EAAE,CAAC,CAAA;QAClD,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,aAAa;QAClB,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAA;QAC5C,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YACxC,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAA;YAC5C,MAAM,UAAU,GAAG,YAAY,EAAE,CAAC,KAAK,CAAC,CAAA;YACxC,IAAI,QAAQ,KAAK,UAAU,EAAE;gBAC3B,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,kBAAkB,QAAQ,QAAQ,UAAU,GAAG,CAAC,CAAC,CAAA;aACxE;QACH,CAAC,CAAC,CAAA;QACF,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,cAAc;QACnB,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAA;QAC/C,IAAI,cAAc,EAAE;YAClB,MAAM,gBAAgB,GAA6B,cAAc,CAAC,GAAG,CAAC,CAAC,MAAc,EAAE,EAAE;gBACvF,OAAO,IAAI,sBAAsB,CAAC,MAAM,CAAC,CAAA;YAC3C,CAAC,CAAC,CAAA;YACF,gBAAgB,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACrC,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,GAAG,EAAE,CAAC,CAAA;YACjC,CAAC,CAAC,CAAA;SACH;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,cAAc;QACnB,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,MAAM;QACX,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,cAAc,GAAG,0BAA0B,CAAA;QACjD,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,cAAc,EAAE;YACtC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,mBAAmB,cAAc,QAAQ,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;SACpF;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,QAAQ;QACb,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,GAAG,IAAI,CAAC,oBAAoB,EAAE,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QAC/J,OAAO,MAAM,CAAA;IACf,CAAC;CACF"}
@@ -1,7 +1,6 @@
1
- import { XyoBoundWitness } from '../models';
2
- export declare class XyoBoundWitnessMetaValidator {
3
- private bw;
4
- constructor(bw: XyoBoundWitness);
1
+ import { XyoValidator } from '../../lib';
2
+ import { XyoBoundWitnessMeta } from '../models';
3
+ export declare class XyoBoundWitnessMetaValidator<T extends XyoBoundWitnessMeta = XyoBoundWitnessMeta> extends XyoValidator<T> {
5
4
  client(): Error[];
6
5
  hash(): Error[];
7
6
  payloads(): Error[];
@@ -9,6 +8,6 @@ export declare class XyoBoundWitnessMetaValidator {
9
8
  timestamp(): Error[];
10
9
  sourceIp(): Error[];
11
10
  userAgent(): Error[];
12
- all(): Error[];
11
+ validate(): Error[];
13
12
  meta(): Error[];
14
13
  }
@@ -1,21 +1,19 @@
1
1
  import { XyoHasher } from '../../Hasher';
2
+ import { XyoValidator } from '../../lib';
2
3
  import { isIP } from './is-ip';
3
4
  const MIN_ALLOWED_TIMESTAMP = 1609459200000;
4
5
  const MAX_ALLOWED_TIMESTAMP = 4102444800000;
5
- export class XyoBoundWitnessMetaValidator {
6
- constructor(bw) {
7
- this.bw = bw;
8
- }
6
+ export class XyoBoundWitnessMetaValidator extends XyoValidator {
9
7
  client() {
10
8
  const errors = [];
11
9
  return errors;
12
10
  }
13
11
  hash() {
14
12
  const errors = [];
15
- const hasher = new XyoHasher(this.bw);
13
+ const hasher = new XyoHasher(this.obj);
16
14
  const bodyHash = hasher.hash;
17
- if (bodyHash !== this.bw._hash)
18
- errors.push(new Error(`Body hash mismatch: [calculated: ${bodyHash}] [found: ${this.bw._hash}] [sortedStringify: ${hasher.stringified}]`));
15
+ if (bodyHash !== this.obj._hash)
16
+ errors.push(new Error(`Body hash mismatch: [calculated: ${bodyHash}] [found: ${this.obj._hash}] [sortedStringify: ${hasher.stringified}]`));
19
17
  return errors;
20
18
  }
21
19
  payloads() {
@@ -28,7 +26,7 @@ export class XyoBoundWitnessMetaValidator {
28
26
  }
29
27
  timestamp() {
30
28
  const errors = [];
31
- const { _timestamp } = this.bw;
29
+ const { _timestamp } = this.obj;
32
30
  if (_timestamp === undefined)
33
31
  errors.push(new Error('Missing _timestamp'));
34
32
  else if (_timestamp < MIN_ALLOWED_TIMESTAMP)
@@ -39,7 +37,7 @@ export class XyoBoundWitnessMetaValidator {
39
37
  }
40
38
  sourceIp() {
41
39
  const errors = [];
42
- const { _source_ip } = this.bw;
40
+ const { _source_ip } = this.obj;
43
41
  if (_source_ip && !isIP(_source_ip)) {
44
42
  errors.push(new Error(`_source_ip invalid format [${_source_ip}]`));
45
43
  }
@@ -47,12 +45,12 @@ export class XyoBoundWitnessMetaValidator {
47
45
  }
48
46
  userAgent() {
49
47
  const errors = [];
50
- const { _user_agent } = this.bw;
48
+ const { _user_agent } = this.obj;
51
49
  if (!_user_agent)
52
50
  errors.push(new Error('_user_agent missing'));
53
51
  return errors;
54
52
  }
55
- all() {
53
+ validate() {
56
54
  const errors = [];
57
55
  errors.push(...this.client(), ...this.hash(), ...this.payloads(), ...this.signatures());
58
56
  return errors;
@@ -1 +1 @@
1
- {"version":3,"file":"MetaValidator.js","sourceRoot":"","sources":["../../../../src/BoundWitness/Validator/MetaValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MetaValidator.js","sourceRoot":"","sources":["../../../../src/BoundWitness/Validator/MetaValidator.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { XyoBoundWitness } from '../models';
1
+ import { XyoValidator } from '../../lib';
2
+ import { XyoBoundWitnessWithMeta } from '../models';
2
3
  import { XyoBoundWitnessBodyValidator } from './BodyValidator';
3
4
  import { XyoBoundWitnessMetaValidator } from './MetaValidator';
4
- declare class XyoBoundWitnessValidator {
5
- private bw;
5
+ declare class XyoBoundWitnessValidator<T extends XyoBoundWitnessWithMeta = XyoBoundWitnessWithMeta> extends XyoValidator<T> {
6
6
  body: XyoBoundWitnessBodyValidator;
7
7
  meta: XyoBoundWitnessMetaValidator;
8
- constructor(bw: XyoBoundWitness);
8
+ constructor(bw: T);
9
9
  signatures(): Error[];
10
- all(): Error[];
10
+ validate(): Error[];
11
11
  }
12
12
  export { XyoBoundWitnessValidator };