@xyo-network/core 2.57.4 → 2.57.6

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 (80) hide show
  1. package/dist/cjs/Hasher/Hasher.js +19 -3
  2. package/dist/cjs/Hasher/Hasher.js.map +1 -1
  3. package/dist/cjs/lib/Address/index.js +6 -0
  4. package/dist/cjs/lib/Address/index.js.map +1 -0
  5. package/dist/cjs/lib/Address/normalizeAddress.js +9 -0
  6. package/dist/cjs/lib/Address/normalizeAddress.js.map +1 -0
  7. package/dist/cjs/lib/Address/trimAddressPrefix.js +13 -0
  8. package/dist/cjs/lib/Address/trimAddressPrefix.js.map +1 -0
  9. package/dist/cjs/lib/index.js +1 -0
  10. package/dist/cjs/lib/index.js.map +1 -1
  11. package/dist/docs.json +2817 -965
  12. package/dist/esm/Hasher/Hasher.js +17 -3
  13. package/dist/esm/Hasher/Hasher.js.map +1 -1
  14. package/dist/esm/lib/Address/index.js +3 -0
  15. package/dist/esm/lib/Address/index.js.map +1 -0
  16. package/dist/esm/lib/Address/normalizeAddress.js +5 -0
  17. package/dist/esm/lib/Address/normalizeAddress.js.map +1 -0
  18. package/dist/esm/lib/Address/trimAddressPrefix.js +9 -0
  19. package/dist/esm/lib/Address/trimAddressPrefix.js.map +1 -0
  20. package/dist/esm/lib/index.js +1 -0
  21. package/dist/esm/lib/index.js.map +1 -1
  22. package/dist/types/Hasher/Hasher.d.ts +4 -1
  23. package/dist/types/Hasher/Hasher.d.ts.map +1 -1
  24. package/dist/types/lib/Address/index.d.ts +3 -0
  25. package/dist/types/lib/Address/index.d.ts.map +1 -0
  26. package/dist/types/lib/Address/normalizeAddress.d.ts +2 -0
  27. package/dist/types/lib/Address/normalizeAddress.d.ts.map +1 -0
  28. package/dist/types/lib/Address/trimAddressPrefix.d.ts +3 -0
  29. package/dist/types/lib/Address/trimAddressPrefix.d.ts.map +1 -0
  30. package/dist/types/lib/index.d.ts +1 -0
  31. package/dist/types/lib/index.d.ts.map +1 -1
  32. package/docs/assets/highlight.css +22 -0
  33. package/docs/assets/main.js +58 -0
  34. package/docs/assets/search.js +1 -0
  35. package/docs/assets/style.css +1367 -0
  36. package/docs/classes/Base.html +146 -0
  37. package/docs/classes/Hasher.html +283 -0
  38. package/docs/classes/ObjectWrapper.html +143 -0
  39. package/docs/classes/XyoAbstractData.html +194 -0
  40. package/docs/classes/XyoData.html +253 -0
  41. package/docs/classes/XyoObjectWrapper.html +134 -0
  42. package/docs/classes/XyoValidatorBase.html +169 -0
  43. package/docs/functions/deepBy.html +88 -0
  44. package/docs/functions/deepOmitUnderscoreFields.html +84 -0
  45. package/docs/functions/deepPickUnderscoreFields.html +84 -0
  46. package/docs/functions/dumpErrors.html +79 -0
  47. package/docs/functions/isBrowser.html +74 -0
  48. package/docs/functions/normalizeAddress.html +79 -0
  49. package/docs/functions/removeEmptyFields.html +84 -0
  50. package/docs/functions/sortFields.html +84 -0
  51. package/docs/functions/toUint8Array.html +83 -0
  52. package/docs/functions/toUint8ArrayOptional.html +83 -0
  53. package/docs/functions/trimAddressPrefix.html +79 -0
  54. package/docs/functions/uuid.html +74 -0
  55. package/docs/index.html +82 -0
  56. package/docs/interfaces/Logger.html +126 -0
  57. package/docs/interfaces/Validator.html +111 -0
  58. package/docs/modules.html +112 -0
  59. package/docs/types/AnyObject.html +73 -0
  60. package/docs/types/BaseParams.html +75 -0
  61. package/docs/types/BaseParamsFields.html +75 -0
  62. package/docs/types/DataLike.html +70 -0
  63. package/docs/types/EmptyObject.html +75 -0
  64. package/docs/types/LogFunction.html +83 -0
  65. package/docs/types/StringKeyObject.html +75 -0
  66. package/docs/types/WithAdditional.html +77 -0
  67. package/docs/variables/addressPrefix.html +70 -0
  68. package/package.json +8 -7
  69. package/src/Hasher/Hasher.ts +18 -3
  70. package/src/lib/Address/index.ts +2 -0
  71. package/src/lib/Address/normalizeAddress.ts +5 -0
  72. package/src/lib/Address/trimAddressPrefix.ts +10 -0
  73. package/src/lib/index.ts +1 -0
  74. package/dist/cjs/lib/exists.js +0 -8
  75. package/dist/cjs/lib/exists.js.map +0 -1
  76. package/dist/esm/lib/exists.js +0 -4
  77. package/dist/esm/lib/exists.js.map +0 -1
  78. package/dist/types/lib/exists.d.ts +0 -2
  79. package/dist/types/lib/exists.d.ts.map +0 -1
  80. package/src/lib/exists.ts +0 -3
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Hasher = void 0;
4
4
  const tslib_1 = require("tslib");
5
+ const hash_wasm_1 = require("hash-wasm");
5
6
  const sha_js_1 = tslib_1.__importDefault(require("sha.js"));
6
7
  const lib_1 = require("../lib");
7
8
  const removeEmptyFields_1 = require("./removeEmptyFields");
@@ -18,7 +19,20 @@ class Hasher extends lib_1.ObjectWrapper {
18
19
  return Hasher.stringify(this.obj);
19
20
  }
20
21
  static hash(obj) {
21
- return this.sortedHashData(obj).toString('hex');
22
+ return (0, sha_js_1.default)('sha256').update(this.stringify(obj)).digest().toString('hex');
23
+ }
24
+ static hashAsync(obj) {
25
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
26
+ if (this.allowWasm && this.wasmSupported) {
27
+ try {
28
+ return yield (0, hash_wasm_1.sha256)(this.stringify(obj));
29
+ }
30
+ catch (ex) {
31
+ this.wasmSupported = false;
32
+ }
33
+ }
34
+ return this.hash(obj);
35
+ });
22
36
  }
23
37
  static hashFields(obj) {
24
38
  return (0, removeEmptyFields_1.removeEmptyFields)((0, removeFields_1.deepOmitUnderscoreFields)(obj));
@@ -26,9 +40,11 @@ class Hasher extends lib_1.ObjectWrapper {
26
40
  static stringify(obj) {
27
41
  return JSON.stringify((0, sortFields_1.sortFields)(this.hashFields(obj)));
28
42
  }
29
- static sortedHashData(obj) {
30
- return (0, sha_js_1.default)('sha256').update(this.stringify(obj)).digest();
43
+ hashAsync() {
44
+ return Hasher.hashAsync(this.obj);
31
45
  }
32
46
  }
33
47
  exports.Hasher = Hasher;
48
+ Hasher.allowWasm = true;
49
+ Hasher.wasmSupported = true;
34
50
  //# sourceMappingURL=Hasher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Hasher.js","sourceRoot":"","sources":["../../../src/Hasher/Hasher.ts"],"names":[],"mappings":";;;;AAAA,4DAA0B;AAE1B,gCAAiD;AACjD,2DAAuD;AACvD,iDAAyD;AACzD,6CAAyC;AAEzC,MAAa,MAAwC,SAAQ,mBAAgB;IAC3E,IAAI,IAAI;QACN,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACpC,CAAC;IAED,IAAI,WAAW;QACb,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACnC,CAAC;IAED,MAAM,CAAC,IAAI,CAAsB,GAAM;QACrC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IACjD,CAAC;IAED,MAAM,CAAC,UAAU,CAAsB,GAAM;QAC3C,OAAO,IAAA,qCAAiB,EAAC,IAAA,uCAAwB,EAAC,GAAG,CAAC,CAAC,CAAA;IACzD,CAAC;IAED,MAAM,CAAC,SAAS,CAAsB,GAAM;QAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAA,uBAAU,EAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACzD,CAAC;IAEO,MAAM,CAAC,cAAc,CAAsB,GAAM;QACvD,OAAO,IAAA,gBAAK,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;IAC7D,CAAC;CACF;AA5BD,wBA4BC"}
1
+ {"version":3,"file":"Hasher.js","sourceRoot":"","sources":["../../../src/Hasher/Hasher.ts"],"names":[],"mappings":";;;;AAAA,yCAAkC;AAClC,4DAA0B;AAE1B,gCAAiD;AACjD,2DAAuD;AACvD,iDAAyD;AACzD,6CAAyC;AAEzC,MAAa,MAAwC,SAAQ,mBAAgB;IAI3E,IAAI,IAAI;QACN,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACpC,CAAC;IAED,IAAI,WAAW;QACb,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACnC,CAAC;IAED,MAAM,CAAC,IAAI,CAAsB,GAAM;QACrC,OAAO,IAAA,gBAAK,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC7E,CAAC;IAED,MAAM,CAAO,SAAS,CAAsB,GAAM;;YAChD,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,EAAE;gBACxC,IAAI;oBACF,OAAO,MAAM,IAAA,kBAAM,EAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;iBACzC;gBAAC,OAAO,EAAE,EAAE;oBACX,IAAI,CAAC,aAAa,GAAG,KAAK,CAAA;iBAC3B;aACF;YACD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACvB,CAAC;KAAA;IAED,MAAM,CAAC,UAAU,CAAsB,GAAM;QAC3C,OAAO,IAAA,qCAAiB,EAAC,IAAA,uCAAwB,EAAC,GAAG,CAAC,CAAC,CAAA;IACzD,CAAC;IAED,MAAM,CAAC,SAAS,CAAsB,GAAM;QAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAA,uBAAU,EAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACzD,CAAC;IAED,SAAS;QACP,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACnC,CAAC;;AAzCH,wBA0CC;AAzCQ,gBAAS,GAAG,IAAI,CAAA;AAChB,oBAAa,GAAG,IAAI,CAAA"}
@@ -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("./normalizeAddress"), exports);
5
+ tslib_1.__exportStar(require("./trimAddressPrefix"), exports);
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/Address/index.ts"],"names":[],"mappings":";;;AAAA,6DAAkC;AAClC,8DAAmC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeAddress = void 0;
4
+ const trimAddressPrefix_1 = require("./trimAddressPrefix");
5
+ const normalizeAddress = (address) => {
6
+ return (0, trimAddressPrefix_1.trimAddressPrefix)(address.toLowerCase());
7
+ };
8
+ exports.normalizeAddress = normalizeAddress;
9
+ //# sourceMappingURL=normalizeAddress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizeAddress.js","sourceRoot":"","sources":["../../../../src/lib/Address/normalizeAddress.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AAEhD,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAE,EAAE;IAClD,OAAO,IAAA,qCAAiB,EAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;AACjD,CAAC,CAAA;AAFY,QAAA,gBAAgB,oBAE5B"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.trimAddressPrefix = exports.addressPrefix = void 0;
4
+ exports.addressPrefix = '0x';
5
+ // NOTE: To prevent calling `.length` on every invocation, we cache the length
6
+ // but do want to tether it to the length of the actual prefix so it's not some
7
+ // magic number.
8
+ const addressPrefixLength = exports.addressPrefix.length;
9
+ const trimAddressPrefix = (address) => {
10
+ return address.toLowerCase().startsWith(exports.addressPrefix) ? address.substring(addressPrefixLength) : address;
11
+ };
12
+ exports.trimAddressPrefix = trimAddressPrefix;
13
+ //# sourceMappingURL=trimAddressPrefix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trimAddressPrefix.js","sourceRoot":"","sources":["../../../../src/lib/Address/trimAddressPrefix.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG,IAAI,CAAA;AAEjC,8EAA8E;AAC9E,+EAA+E;AAC/E,gBAAgB;AAChB,MAAM,mBAAmB,GAAG,qBAAa,CAAC,MAAM,CAAA;AAEzC,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAE,EAAE;IACnD,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,qBAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;AAC3G,CAAC,CAAA;AAFY,QAAA,iBAAiB,qBAE7B"}
@@ -1,6 +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("./Address"), exports);
4
5
  tslib_1.__exportStar(require("./AnyObject"), exports);
5
6
  tslib_1.__exportStar(require("./Base"), exports);
6
7
  tslib_1.__exportStar(require("./dumpErrors"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":";;;AAAA,sDAA2B;AAC3B,iDAAsB;AACtB,uDAA4B;AAC5B,wDAA6B;AAC7B,sDAA2B;AAC3B,0DAA+B;AAC/B,4DAAiC;AACjC,iDAAsB;AACtB,sDAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":";;;AAAA,oDAAyB;AACzB,sDAA2B;AAC3B,iDAAsB;AACtB,uDAA4B;AAC5B,wDAA6B;AAC7B,sDAA2B;AAC3B,0DAA+B;AAC/B,4DAAiC;AACjC,iDAAsB;AACtB,sDAA2B"}