@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,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 };
@@ -6,14 +6,14 @@ const uniq_1 = tslib_1.__importDefault(require("lodash/uniq"));
6
6
  const Hasher_1 = require("../../Hasher");
7
7
  const lib_1 = require("../../lib");
8
8
  const SchemaNameValidator_1 = require("../../SchemaNameValidator");
9
- class XyoBoundWitnessBodyValidator {
10
- constructor(body, payloads) {
11
- this.body = body;
9
+ class XyoBoundWitnessBodyValidator extends lib_1.XyoValidator {
10
+ constructor(boundWitness, payloads) {
11
+ super(boundWitness);
12
12
  this.payloads = payloads;
13
13
  }
14
14
  addressesUniqueness() {
15
15
  const errors = [];
16
- const { addresses } = this.body;
16
+ const { addresses } = this.obj;
17
17
  const uniqAddresses = (0, uniq_1.default)(addresses);
18
18
  if ((addresses === null || addresses === void 0 ? void 0 : addresses.length) !== (uniqAddresses === null || uniqAddresses === void 0 ? void 0 : uniqAddresses.length))
19
19
  errors.push(new Error('addresses must be unique'));
@@ -21,7 +21,7 @@ class XyoBoundWitnessBodyValidator {
21
21
  }
22
22
  addresses() {
23
23
  const errors = [];
24
- const { addresses } = this.body;
24
+ const { addresses } = this.obj;
25
25
  if (!(addresses === null || addresses === void 0 ? void 0 : addresses.length))
26
26
  errors.push(new Error('addresses missing [at least one address required]'));
27
27
  errors.push(...this.addressesUniqueness());
@@ -29,8 +29,8 @@ class XyoBoundWitnessBodyValidator {
29
29
  }
30
30
  validateArrayLength(fieldName, compareArrayName) {
31
31
  const errors = [];
32
- const [array, arrayErrors] = (0, lib_1.validateType)('array', this.body[fieldName], true);
33
- const [compareArray, compareArrayErrors] = (0, lib_1.validateType)('array', this.body[compareArrayName], true);
32
+ const [array, arrayErrors] = (0, lib_1.validateType)('array', this.stringKeyObj[fieldName], true);
33
+ const [compareArray, compareArrayErrors] = (0, lib_1.validateType)('array', this.stringKeyObj[compareArrayName], true);
34
34
  if ((array === null || array === void 0 ? void 0 : array.length) !== (compareArray === null || compareArray === void 0 ? void 0 : compareArray.length)) {
35
35
  errors.push(new Error(`${fieldName}/${compareArrayName} count mismatch [${array === null || array === void 0 ? void 0 : array.length} !== ${compareArray === null || compareArray === void 0 ? void 0 : compareArray.length}]`));
36
36
  }
@@ -49,10 +49,10 @@ class XyoBoundWitnessBodyValidator {
49
49
  payloadHashes() {
50
50
  var _a;
51
51
  const errors = [];
52
- const passedHashes = this.body.payload_hashes;
52
+ const passedHashes = this.obj.payload_hashes;
53
53
  (_a = this.payloads) === null || _a === void 0 ? void 0 : _a.forEach((payload, index) => {
54
54
  const calcHash = new Hasher_1.XyoHasher(payload).hash;
55
- const passedHash = passedHashes[index];
55
+ const passedHash = passedHashes === null || passedHashes === void 0 ? void 0 : passedHashes[index];
56
56
  if (calcHash !== passedHash) {
57
57
  errors.push(new Error(`hash mismatch [${calcHash} !== ${passedHash}]`));
58
58
  }
@@ -61,29 +61,32 @@ class XyoBoundWitnessBodyValidator {
61
61
  }
62
62
  payloadSchemas() {
63
63
  const errors = [];
64
- const schemaValidators = this.body.payload_schemas.map((schema) => {
65
- return new SchemaNameValidator_1.XyoSchemaNameValidator(schema);
66
- });
67
- schemaValidators.forEach((validator) => {
68
- errors.push(...validator.all());
69
- });
64
+ const payloadSchemas = this.obj.payload_schemas;
65
+ if (payloadSchemas) {
66
+ const schemaValidators = payloadSchemas.map((schema) => {
67
+ return new SchemaNameValidator_1.XyoSchemaNameValidator(schema);
68
+ });
69
+ schemaValidators.forEach((validator) => {
70
+ errors.push(...validator.all());
71
+ });
72
+ }
70
73
  return errors;
71
74
  }
72
75
  previousHashes() {
73
76
  const errors = [];
74
77
  return errors;
75
78
  }
76
- schmea() {
79
+ schema() {
77
80
  const errors = [];
78
81
  const expectedSchema = 'network.xyo.boundwitness';
79
- if (this.body.schema !== expectedSchema) {
80
- errors.push(new Error(`invalid schema [${expectedSchema} !== ${this.body.schema}]`));
82
+ if (this.obj.schema !== expectedSchema) {
83
+ errors.push(new Error(`invalid schema [${expectedSchema} !== ${this.obj.schema}]`));
81
84
  }
82
85
  return errors;
83
86
  }
84
- all() {
87
+ validate() {
85
88
  const errors = [];
86
- errors.push(...this.addresses(), ...this.validateArrayLengths(), ...this.payloadHashes(), ...this.payloadSchemas(), ...this.previousHashes(), ...this.schmea());
89
+ errors.push(...this.addresses(), ...this.validateArrayLengths(), ...this.payloadHashes(), ...this.payloadSchemas(), ...this.previousHashes(), ...this.schema());
87
90
  return errors;
88
91
  }
89
92
  }
@@ -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":"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"}
@@ -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
  }
@@ -2,23 +2,21 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.XyoBoundWitnessMetaValidator = void 0;
4
4
  const Hasher_1 = require("../../Hasher");
5
+ const lib_1 = require("../../lib");
5
6
  const is_ip_1 = require("./is-ip");
6
7
  const MIN_ALLOWED_TIMESTAMP = 1609459200000;
7
8
  const MAX_ALLOWED_TIMESTAMP = 4102444800000;
8
- class XyoBoundWitnessMetaValidator {
9
- constructor(bw) {
10
- this.bw = bw;
11
- }
9
+ class XyoBoundWitnessMetaValidator extends lib_1.XyoValidator {
12
10
  client() {
13
11
  const errors = [];
14
12
  return errors;
15
13
  }
16
14
  hash() {
17
15
  const errors = [];
18
- const hasher = new Hasher_1.XyoHasher(this.bw);
16
+ const hasher = new Hasher_1.XyoHasher(this.obj);
19
17
  const bodyHash = hasher.hash;
20
- if (bodyHash !== this.bw._hash)
21
- errors.push(new Error(`Body hash mismatch: [calculated: ${bodyHash}] [found: ${this.bw._hash}] [sortedStringify: ${hasher.stringified}]`));
18
+ if (bodyHash !== this.obj._hash)
19
+ errors.push(new Error(`Body hash mismatch: [calculated: ${bodyHash}] [found: ${this.obj._hash}] [sortedStringify: ${hasher.stringified}]`));
22
20
  return errors;
23
21
  }
24
22
  payloads() {
@@ -31,7 +29,7 @@ class XyoBoundWitnessMetaValidator {
31
29
  }
32
30
  timestamp() {
33
31
  const errors = [];
34
- const { _timestamp } = this.bw;
32
+ const { _timestamp } = this.obj;
35
33
  if (_timestamp === undefined)
36
34
  errors.push(new Error('Missing _timestamp'));
37
35
  else if (_timestamp < MIN_ALLOWED_TIMESTAMP)
@@ -42,7 +40,7 @@ class XyoBoundWitnessMetaValidator {
42
40
  }
43
41
  sourceIp() {
44
42
  const errors = [];
45
- const { _source_ip } = this.bw;
43
+ const { _source_ip } = this.obj;
46
44
  if (_source_ip && !(0, is_ip_1.isIP)(_source_ip)) {
47
45
  errors.push(new Error(`_source_ip invalid format [${_source_ip}]`));
48
46
  }
@@ -50,12 +48,12 @@ class XyoBoundWitnessMetaValidator {
50
48
  }
51
49
  userAgent() {
52
50
  const errors = [];
53
- const { _user_agent } = this.bw;
51
+ const { _user_agent } = this.obj;
54
52
  if (!_user_agent)
55
53
  errors.push(new Error('_user_agent missing'));
56
54
  return errors;
57
55
  }
58
- all() {
56
+ validate() {
59
57
  const errors = [];
60
58
  errors.push(...this.client(), ...this.hash(), ...this.payloads(), ...this.signatures());
61
59
  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":";;;AAAA,yCAAwC;AACxC,mCAAwC;AAExC,mCAA8B;AAE9B,MAAM,qBAAqB,GAAG,aAAa,CAAA;AAC3C,MAAM,qBAAqB,GAAG,aAAa,CAAA;AAE3C,MAAa,4BAAkF,SAAQ,kBAAe;IAC7G,MAAM;QACX,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,IAAI;QACT,MAAM,MAAM,GAAY,EAAE,CAAA;QAE1B,MAAM,MAAM,GAAG,IAAI,kBAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEtC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAA;QAC5B,IAAI,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,oCAAoC,QAAQ,aAAa,IAAI,CAAC,GAAG,CAAC,KAAK,uBAAuB,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,CAAA;QAC5K,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,QAAQ;QACb,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,UAAU;QACf,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,SAAS;QACd,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,CAAA;QAC/B,IAAI,UAAU,KAAK,SAAS;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAA;aACrE,IAAI,UAAU,GAAG,qBAAqB;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAA;aAChG,IAAI,UAAU,GAAG,qBAAqB;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAA;QACpG,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,QAAQ;QACb,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,CAAA;QAC/B,IAAI,UAAU,IAAI,CAAC,IAAA,YAAI,EAAC,UAAU,CAAC,EAAE;YACnC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,8BAA8B,UAAU,GAAG,CAAC,CAAC,CAAA;SACpE;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,SAAS;QACd,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,GAAG,CAAA;QAChC,IAAI,CAAC,WAAW;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAA;QAC/D,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,QAAQ;QACb,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QACvF,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,IAAI;QACT,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;QACzE,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AA9DD,oEA8DC"}
@@ -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 };
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.XyoBoundWitnessValidator = void 0;
4
4
  const sdk_js_1 = require("@xylabs/sdk-js");
5
+ const lib_1 = require("../../lib");
5
6
  const Wallet_1 = require("../../Wallet");
6
7
  const BodyValidator_1 = require("./BodyValidator");
7
8
  const MetaValidator_1 = require("./MetaValidator");
@@ -17,27 +18,27 @@ const validateSignature = (hash, address, signature) => {
17
18
  }
18
19
  return [];
19
20
  };
20
- class XyoBoundWitnessValidator {
21
+ class XyoBoundWitnessValidator extends lib_1.XyoValidator {
21
22
  constructor(bw) {
22
- this.bw = bw;
23
+ super(bw);
23
24
  this.body = new BodyValidator_1.XyoBoundWitnessBodyValidator(bw, bw._payloads);
24
25
  this.meta = new MetaValidator_1.XyoBoundWitnessMetaValidator(bw);
25
26
  }
26
27
  signatures() {
27
28
  var _a;
28
- const hash = (0, sdk_js_1.assertEx)(this.bw._hash, 'Missing _hash');
29
+ const hash = (0, sdk_js_1.assertEx)(this.obj._hash, 'Missing _hash');
29
30
  return [
30
- ...validateArraysSameLength((_a = this.bw._signatures) !== null && _a !== void 0 ? _a : [], this.bw.addresses, 'Length mismatch: address/_signature'),
31
- ...this.bw.addresses.reduce((errors, address, index) => {
31
+ ...validateArraysSameLength((_a = this.obj._signatures) !== null && _a !== void 0 ? _a : [], this.obj.addresses, 'Length mismatch: address/_signature'),
32
+ ...this.obj.addresses.reduce((errors, address, index) => {
32
33
  var _a;
33
- errors.push(...validateSignature(hash, address, (_a = this.bw._signatures) === null || _a === void 0 ? void 0 : _a[index]));
34
+ errors.push(...validateSignature(hash, address, (_a = this.obj._signatures) === null || _a === void 0 ? void 0 : _a[index]));
34
35
  return errors;
35
36
  }, []),
36
37
  ];
37
38
  }
38
- all() {
39
+ validate() {
39
40
  const errors = [];
40
- errors.push(...this.meta.all(), ...this.body.all());
41
+ errors.push(...this.meta.validate(), ...this.body.validate());
41
42
  errors.push(...this.signatures());
42
43
  return errors;
43
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../../src/BoundWitness/Validator/Validator.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AAEzC,yCAA8C;AAE9C,mDAA8D;AAC9D,mDAA8D;AAE9D,MAAM,wBAAwB,GAAG,CAAC,CAAY,EAAE,CAAY,EAAE,OAAO,GAAG,uBAAuB,EAAE,EAAE;IACjG,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AAC7D,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,SAAkB,EAAE,EAAE;IAC9E,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,sBAAsB,OAAO,GAAG,CAAC,CAAC,CAAA;KACjD;IACD,IAAI,CAAC,IAAI,wBAAe,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE;QACzD,OAAO,CAAC,KAAK,CAAC,sBAAsB,OAAO,MAAM,SAAS,GAAG,CAAC,CAAC,CAAA;KAChE;IACD,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAED,MAAM,wBAAwB;IAI5B,YAAY,EAAmB;QAC7B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;QACZ,IAAI,CAAC,IAAI,GAAG,IAAI,4CAA4B,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,CAAA;QAC9D,IAAI,CAAC,IAAI,GAAG,IAAI,4CAA4B,CAAC,EAAE,CAAC,CAAA;IAClD,CAAC;IAEM,UAAU;;QACf,MAAM,IAAI,GAAG,IAAA,iBAAQ,EAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,CAAA;QACrD,OAAO;YACL,GAAG,wBAAwB,CAAC,MAAA,IAAI,CAAC,EAAE,CAAC,WAAW,mCAAI,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,qCAAqC,CAAC;YAChH,GAAG,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAU,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;;gBAC9D,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAA,IAAI,CAAC,EAAE,CAAC,WAAW,0CAAG,KAAK,CAAC,CAAC,CAAC,CAAA;gBAC9E,OAAO,MAAM,CAAA;YACf,CAAC,EAAE,EAAE,CAAC;SACP,CAAA;IACH,CAAC;IAEM,GAAG;QACR,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;QACnD,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QACjC,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAEQ,4DAAwB"}
1
+ {"version":3,"file":"Validator.js","sourceRoot":"","sources":["../../../../src/BoundWitness/Validator/Validator.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AAEzC,mCAAwC;AACxC,yCAA8C;AAE9C,mDAA8D;AAC9D,mDAA8D;AAE9D,MAAM,wBAAwB,GAAG,CAAC,CAAY,EAAE,CAAY,EAAE,OAAO,GAAG,uBAAuB,EAAE,EAAE;IACjG,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AAC7D,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,SAAkB,EAAE,EAAE;IAC9E,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,sBAAsB,OAAO,GAAG,CAAC,CAAC,CAAA;KACjD;IACD,IAAI,CAAC,IAAI,wBAAe,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE;QACzD,OAAO,CAAC,KAAK,CAAC,sBAAsB,OAAO,MAAM,SAAS,GAAG,CAAC,CAAC,CAAA;KAChE;IACD,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAED,MAAM,wBAAsF,SAAQ,kBAAe;IAGjH,YAAY,EAAK;QACf,KAAK,CAAC,EAAE,CAAC,CAAA;QACT,IAAI,CAAC,IAAI,GAAG,IAAI,4CAA4B,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,CAAA;QAC9D,IAAI,CAAC,IAAI,GAAG,IAAI,4CAA4B,CAAC,EAAE,CAAC,CAAA;IAClD,CAAC;IAEM,UAAU;;QACf,MAAM,IAAI,GAAG,IAAA,iBAAQ,EAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,eAAe,CAAC,CAAA;QACtD,OAAO;YACL,GAAG,wBAAwB,CAAC,MAAA,IAAI,CAAC,GAAG,CAAC,WAAW,mCAAI,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,qCAAqC,CAAC;YAClH,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAU,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;;gBAC/D,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAA,IAAI,CAAC,GAAG,CAAC,WAAW,0CAAG,KAAK,CAAC,CAAC,CAAC,CAAA;gBAC/E,OAAO,MAAM,CAAA;YACf,CAAC,EAAE,EAAE,CAAC;SACP,CAAA;IACH,CAAC;IAEM,QAAQ;QACb,MAAM,MAAM,GAAY,EAAE,CAAA;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC7D,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QACjC,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAEQ,4DAAwB"}
@@ -1,13 +1,11 @@
1
1
  import { XyoHasher } from '../../Hasher';
2
- import { XyoBoundWitness } from '../models';
3
- import { XyoBoundWitnessValidator } from '../Validator';
4
- declare class XyoBoundWitnessWrapper<T extends XyoBoundWitness> extends XyoHasher<T> {
2
+ import { XyoBoundWitness, XyoBoundWitnessWithMeta } from '../models';
3
+ export declare class XyoBoundWitnessWrapper<T extends XyoBoundWitness> extends XyoHasher<T> {
5
4
  readonly bw: T;
6
5
  constructor(bw: T);
7
- get scrubbedFields(): Pick<T, string>;
8
- private _validator?;
9
- get validator(): XyoBoundWitnessValidator;
6
+ get scrubbedFields(): Partial<T>;
7
+ }
8
+ export declare class XyoBoundWitnessWithMetaWrapper<T extends XyoBoundWitnessWithMeta> extends XyoBoundWitnessWrapper<T> {
10
9
  private _userAgent?;
11
10
  get userAgent(): import("ua-parser-js").UAParserInstance;
12
11
  }
13
- export { XyoBoundWitnessWrapper };
@@ -1,11 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.XyoBoundWitnessWrapper = void 0;
3
+ exports.XyoBoundWitnessWithMetaWrapper = exports.XyoBoundWitnessWrapper = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const pick_1 = tslib_1.__importDefault(require("lodash/pick"));
6
6
  const ua_parser_js_1 = require("ua-parser-js");
7
7
  const Hasher_1 = require("../../Hasher");
8
- const Validator_1 = require("../Validator");
9
8
  const scrubbedFields = ['_archive', '_client', '_hash', '_signatures', '_timestamp', '_user_agent', 'addresses', 'payload_schemas', 'previous_hashes', 'payload_hashes', 'schema'];
10
9
  class XyoBoundWitnessWrapper extends Hasher_1.XyoHasher {
11
10
  constructor(bw) {
@@ -15,16 +14,14 @@ class XyoBoundWitnessWrapper extends Hasher_1.XyoHasher {
15
14
  get scrubbedFields() {
16
15
  return (0, pick_1.default)(this.bw, scrubbedFields);
17
16
  }
18
- get validator() {
19
- var _a;
20
- this._validator = (_a = this._validator) !== null && _a !== void 0 ? _a : new Validator_1.XyoBoundWitnessValidator(this.bw);
21
- return this._validator;
22
- }
17
+ }
18
+ exports.XyoBoundWitnessWrapper = XyoBoundWitnessWrapper;
19
+ class XyoBoundWitnessWithMetaWrapper extends XyoBoundWitnessWrapper {
23
20
  get userAgent() {
24
21
  var _a;
25
22
  this._userAgent = (_a = this._userAgent) !== null && _a !== void 0 ? _a : new ua_parser_js_1.UAParser(this.bw._user_agent);
26
23
  return this._userAgent;
27
24
  }
28
25
  }
29
- exports.XyoBoundWitnessWrapper = XyoBoundWitnessWrapper;
26
+ exports.XyoBoundWitnessWithMetaWrapper = XyoBoundWitnessWithMetaWrapper;
30
27
  //# sourceMappingURL=Wrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Wrapper.js","sourceRoot":"","sources":["../../../../src/BoundWitness/Wrapper/Wrapper.ts"],"names":[],"mappings":";;;;AAAA,+DAA8B;AAC9B,+CAAuC;AAEvC,yCAAwC;AAExC,4CAAuD;AAEvD,MAAM,cAAc,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAA;AAElL,MAAM,sBAAkD,SAAQ,kBAAY;IAE1E,YAAY,EAAK;QACf,KAAK,CAAC,EAAE,CAAC,CAAA;QACT,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;IACd,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAA,cAAI,EAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC,CAAA;IACtC,CAAC;IAGD,IAAI,SAAS;;QACX,IAAI,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,mCAAI,IAAI,oCAAwB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC1E,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAGD,IAAI,SAAS;;QACX,IAAI,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,mCAAI,IAAI,uBAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAA;QACtE,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;CACF;AAEQ,wDAAsB"}
1
+ {"version":3,"file":"Wrapper.js","sourceRoot":"","sources":["../../../../src/BoundWitness/Wrapper/Wrapper.ts"],"names":[],"mappings":";;;;AAAA,+DAA8B;AAC9B,+CAAuC;AAEvC,yCAAwC;AAGxC,MAAM,cAAc,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAA;AAElL,MAAa,sBAAkD,SAAQ,kBAAY;IAEjF,YAAY,EAAK;QACf,KAAK,CAAC,EAAE,CAAC,CAAA;QACT,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;IACd,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAA,cAAI,EAAC,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC,CAAA;IACtC,CAAC;CACF;AAVD,wDAUC;AAED,MAAa,8BAAkE,SAAQ,sBAAyB;IAE9G,IAAI,SAAS;;QACX,IAAI,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,mCAAI,IAAI,uBAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAA;QACtE,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;CACF;AAND,wEAMC"}
@@ -0,0 +1,9 @@
1
+ import { XyoPayload } from '../../../models';
2
+ export declare type XyoBoundWitnessBase = XyoPayload<{
3
+ addresses: string[];
4
+ previous_hash?: string;
5
+ payload_hashes: string[];
6
+ payload_schemas: string[];
7
+ previous_hashes: (string | null)[];
8
+ schema: string;
9
+ }>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=XyoBoundWitnessBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XyoBoundWitnessBase.js","sourceRoot":"","sources":["../../../../../src/BoundWitness/models/Base/XyoBoundWitnessBase.ts"],"names":[],"mappings":""}
@@ -0,0 +1,36 @@
1
+ export declare const XyoBoundWitnessBaseSchema: {
2
+ $id: string;
3
+ additionalProperties: boolean;
4
+ properties: {
5
+ addresses: {
6
+ items: {
7
+ type: string;
8
+ };
9
+ type: string;
10
+ };
11
+ payload_hashes: {
12
+ items: {
13
+ type: string;
14
+ };
15
+ type: string;
16
+ };
17
+ payload_schemas: {
18
+ items: {
19
+ type: string;
20
+ };
21
+ type: string;
22
+ };
23
+ previous_hashes: {
24
+ items: {
25
+ nullable: boolean;
26
+ type: string;
27
+ };
28
+ type: string;
29
+ };
30
+ schema: {
31
+ type: string;
32
+ };
33
+ };
34
+ required: string[];
35
+ type: string;
36
+ };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.XyoBoundWitnessBaseSchema = void 0;
4
+ //Should type as JSONSchemaType<XyoBoundWitnessBody> once ajv/eslint issue is fixed
5
+ //https://github.com/microsoft/TypeScript/issues/44851
6
+ exports.XyoBoundWitnessBaseSchema = {
7
+ $id: 'https://schemas.xyo.network/2.0/boundwitness/body',
8
+ additionalProperties: false,
9
+ properties: {
10
+ addresses: { items: { type: 'string' }, type: 'array' },
11
+ payload_hashes: { items: { type: 'string' }, type: 'array' },
12
+ payload_schemas: { items: { type: 'string' }, type: 'array' },
13
+ previous_hashes: { items: { nullable: true, type: 'string' }, type: 'array' },
14
+ schema: { type: 'string' },
15
+ },
16
+ required: ['addresses', 'payload_hashes', 'payload_schemas', 'previous_hashes', 'schema'],
17
+ type: 'object',
18
+ };
19
+ //# sourceMappingURL=XyoBoundWitnessBaseSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XyoBoundWitnessBaseSchema.js","sourceRoot":"","sources":["../../../../../src/BoundWitness/models/Base/XyoBoundWitnessBaseSchema.ts"],"names":[],"mappings":";;;AAAA,mFAAmF;AACnF,sDAAsD;AACzC,QAAA,yBAAyB,GAAG;IACvC,GAAG,EAAE,mDAAmD;IACxD,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QACvD,cAAc,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC5D,eAAe,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC7D,eAAe,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC7E,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KAC3B;IACD,QAAQ,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,QAAQ,CAAC;IACzF,IAAI,EAAE,QAAQ;CACf,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './XyoBoundWitnessBase';
2
+ export * from './XyoBoundWitnessBaseSchema';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./XyoBoundWitnessBase"), exports);
5
+ tslib_1.__exportStar(require("./XyoBoundWitnessBaseSchema"), exports);
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/BoundWitness/models/Base/index.ts"],"names":[],"mappings":";;;AAAA,gEAAqC;AACrC,sEAA2C"}
@@ -1,11 +1,9 @@
1
- import { XyoPayloadBody } from '../../../Payload';
2
- interface XyoBoundWitnessBody extends XyoPayloadBody {
3
- [key: string]: unknown;
1
+ import { XyoPayload } from '../../../Payload';
2
+ export declare type XyoBoundWitnessBody = XyoPayload<{
4
3
  addresses: string[];
5
4
  previous_hash?: string;
6
5
  payload_hashes: string[];
7
6
  payload_schemas: string[];
8
7
  previous_hashes: (string | null)[];
9
8
  schema: string;
10
- }
11
- export type { XyoBoundWitnessBody };
9
+ }>;
@@ -1,13 +1,10 @@
1
- import { XyoPayloadBody } from '../../../Payload';
2
- interface XyoBoundWitnessMeta {
3
- [key: string]: unknown;
4
- _client?: string;
5
- _hash?: string;
6
- _archive?: string;
7
- _payloads?: XyoPayloadBody[];
1
+ import { XyoPayload, XyoPayloadMeta } from '../../../models';
2
+ import { XyoBoundWitness } from '../XyoBoundWitness';
3
+ export declare type XyoBoundWitnessMeta = XyoPayloadMeta<{
4
+ _payloads?: XyoPayload[];
8
5
  _signatures?: string[];
9
- _timestamp?: number;
10
6
  _source_ip?: string;
11
7
  _user_agent?: string;
12
- }
13
- export type { XyoBoundWitnessMeta };
8
+ }>;
9
+ export declare type XyoBoundWitnessWithMeta<T = unknown> = T & XyoBoundWitnessMeta & XyoBoundWitness;
10
+ export declare type XyoBoundWitnessWithPartialMeta<T = unknown> = T & Partial<XyoBoundWitnessMeta> & XyoBoundWitness;
@@ -1,4 +1,4 @@
1
- import { XyoBoundWitnessBody } from './Body';
2
1
  import { XyoBoundWitnessMeta } from './Meta';
3
- declare type WithXyoBoundWitnessMeta<T extends XyoBoundWitnessBody> = T & XyoBoundWitnessMeta;
2
+ import { XyoBoundWitness } from './XyoBoundWitness';
3
+ declare type WithXyoBoundWitnessMeta<T extends XyoBoundWitness> = T & XyoBoundWitnessMeta;
4
4
  export type { WithXyoBoundWitnessMeta };
@@ -1,5 +1,2 @@
1
- import { XyoPayload } from '../../Payload';
2
- import { XyoBoundWitnessBody } from './Body';
3
- import { WithXyoBoundWitnessMeta } from './WithXyoBoundWitnessMeta';
4
- declare type XyoBoundWitness = WithXyoBoundWitnessMeta<XyoBoundWitnessBody & XyoPayload>;
5
- export type { XyoBoundWitness };
1
+ import { XyoBoundWitnessBase } from './Base';
2
+ export declare type XyoBoundWitness<T extends object = XyoBoundWitnessBase> = T & XyoBoundWitnessBase;
@@ -1,4 +1,4 @@
1
- export * from './Body';
1
+ export * from './Base';
2
2
  export * from './Meta';
3
3
  export * from './WithXyoBoundWitnessMeta';
4
4
  export * from './XyoBoundWitness';
@@ -1,7 +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("./Body"), exports);
4
+ tslib_1.__exportStar(require("./Base"), exports);
5
5
  tslib_1.__exportStar(require("./Meta"), exports);
6
6
  tslib_1.__exportStar(require("./WithXyoBoundWitnessMeta"), exports);
7
7
  tslib_1.__exportStar(require("./XyoBoundWitness"), exports);
@@ -1,5 +1,5 @@
1
- export declare abstract class XyoAbstractHasher<T extends Record<string, unknown>> {
2
- protected abstract get obj(): T;
1
+ import { XyoObject } from '../Payload';
2
+ export declare abstract class XyoAbstractHasher<T extends object> extends XyoObject<T> {
3
3
  get hashFields(): Record<string, unknown>;
4
4
  /** @deprecated use stringified instead */
5
5
  sortedStringify(): string;
@@ -3,12 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.XyoAbstractHasher = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const sha_js_1 = tslib_1.__importDefault(require("sha.js"));
6
+ const Payload_1 = require("../Payload");
6
7
  const removeEmptyFields_1 = require("./removeEmptyFields");
7
8
  const removeFields_1 = require("./removeFields");
8
9
  const sortFields_1 = require("./sortFields");
9
- class XyoAbstractHasher {
10
+ class XyoAbstractHasher extends Payload_1.XyoObject {
10
11
  get hashFields() {
11
- return (0, removeEmptyFields_1.removeEmptyFields)((0, removeFields_1.deepOmitUnderscoreFields)(this.obj));
12
+ return (0, removeEmptyFields_1.removeEmptyFields)((0, removeFields_1.deepOmitUnderscoreFields)(this.stringKeyObj));
12
13
  }
13
14
  /** @deprecated use stringified instead */
14
15
  sortedStringify() {
@@ -1 +1 @@
1
- {"version":3,"file":"XyoAbstractHasher.js","sourceRoot":"","sources":["../../../src/Hasher/XyoAbstractHasher.ts"],"names":[],"mappings":";;;;AAAA,4DAA0B;AAE1B,2DAAuD;AACvD,iDAAyD;AACzD,6CAAyC;AAEzC,MAAsB,iBAAiB;IAGrC,IAAI,UAAU;QACZ,OAAO,IAAA,qCAAiB,EAAC,IAAA,uCAAwB,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IAC9D,CAAC;IAED,0CAA0C;IACnC,eAAe;QACpB,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAED,IAAW,WAAW;QACpB,MAAM,WAAW,GAAG,IAAA,uBAAU,EAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;IACpC,CAAC;IAED,mCAAmC;IAC5B,UAAU;QACf,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAED,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC9C,CAAC;IAEO,cAAc;QACpB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAA;QACrC,OAAO,IAAA,gBAAK,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAA;IACtD,CAAC;CACF;AA9BD,8CA8BC"}
1
+ {"version":3,"file":"XyoAbstractHasher.js","sourceRoot":"","sources":["../../../src/Hasher/XyoAbstractHasher.ts"],"names":[],"mappings":";;;;AAAA,4DAA0B;AAE1B,wCAAsC;AACtC,2DAAuD;AACvD,iDAAyD;AACzD,6CAAyC;AAEzC,MAAsB,iBAAoC,SAAQ,mBAAY;IAC5E,IAAI,UAAU;QACZ,OAAO,IAAA,qCAAiB,EAAC,IAAA,uCAAwB,EAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAA;IACvE,CAAC;IAED,0CAA0C;IACnC,eAAe;QACpB,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAED,IAAW,WAAW;QACpB,MAAM,WAAW,GAAG,IAAA,uBAAU,EAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;IACpC,CAAC;IAED,mCAAmC;IAC5B,UAAU;QACf,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAED,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC9C,CAAC;IAEO,cAAc;QACpB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAA;QACrC,OAAO,IAAA,gBAAK,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAA;IACtD,CAAC;CACF;AA5BD,8CA4BC"}