evernode-js-client 0.6.57 → 0.6.58

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js CHANGED
@@ -9189,7 +9189,7 @@ module.exports = { mask, unmask };
9189
9189
 
9190
9190
 
9191
9191
  try {
9192
- module.exports = require(__nccwpck_require__.ab + "prebuilds/linux-x64/node.napi.node");
9192
+ module.exports = require(__nccwpck_require__.ab + "prebuilds/linux-x64/node.napi1.node");
9193
9193
  } catch (e) {
9194
9194
  module.exports = __nccwpck_require__(9467);
9195
9195
  }
@@ -38321,7 +38321,7 @@ module.exports = isValidUTF8;
38321
38321
 
38322
38322
 
38323
38323
  try {
38324
- module.exports = require(__nccwpck_require__.ab + "prebuilds/linux-x64/node.napi1.node");
38324
+ module.exports = require(__nccwpck_require__.ab + "prebuilds/linux-x64/node.napi.node");
38325
38325
  } catch (e) {
38326
38326
  module.exports = __nccwpck_require__(6982);
38327
38327
  }
@@ -61103,11 +61103,8 @@ module.exports = {
61103
61103
  /***/ 538:
61104
61104
  /***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
61105
61105
 
61106
- const codec = __nccwpck_require__(597);
61107
61106
  const { StateHelpers } = __nccwpck_require__(3390);
61108
- const { XrplAccount } = __nccwpck_require__(6099);
61109
61107
  const { BaseEvernodeClient } = __nccwpck_require__(4438);
61110
- const { ReputationConstants } = __nccwpck_require__(5732);
61111
61108
 
61112
61109
  const ReputationEvents = {}
61113
61110
 
@@ -61645,58 +61642,43 @@ class HostClient extends BaseEvernodeClient {
61645
61642
 
61646
61643
  /**
61647
61644
  * Prepare host reputation score to a common format for submission.
61648
- * @param {object} collectedScores
61649
- * @returns Unified reputation score array.
61650
- */
61651
- async prepareHostReputationScores(collectedScores = {}) {
61652
- const myReputationInfo = await this.getReputationOrderByAddress(this.xrplAcc.address);
61653
- if (!("orderedId" in (myReputationInfo ?? {})))
61654
- return null;
61655
-
61656
- const myOrderId = myReputationInfo.orderedId;
61657
-
61658
- // Deciding universe.
61659
- const universeStartIndex = Math.floor(myOrderId / 64) * 64;
61660
-
61661
- const reputationClient = await HookClientFactory.create(HookTypes.reputation);
61662
- await reputationClient.connect();
61663
- let data = {};
61664
- await Promise.all(Array.from({ length: 64 }, (_, i) => i + universeStartIndex).map(async (i) => {
61665
- try {
61666
- const hostReputationInfo = await reputationClient.getReputationContractInfoByOrderedId(i);
61667
- if (!hostReputationInfo)
61668
- throw 'No reputation info for this order id';
61669
- data[i.toString()] = {
61670
- publicKey: hostReputationInfo.contract?.pubkey ?? "-1",
61671
- orderId: i
61672
- };
61673
- } catch (error) {
61674
- data[i.toString()] = { publicKey: "-1", orderId: i };
61675
- }
61676
- }));
61677
- await reputationClient.disconnect();
61678
-
61679
- return Object.entries(data).map(e => ({
61680
- ...e[1],
61681
- scoreValue: collectedScores[e[1]?.publicKey] || 0
61682
- }));
61683
- }
61684
-
61685
- /**
61686
- * Send reputation scores to the reputation hook.
61687
61645
  * @param {number} scoreVersion Version of the scores.
61688
61646
  * @param {number} clusterSize Size of the cluster.
61689
- * @param {object} scores [Optional] Score object in { host: score } format.
61647
+ * @param {object} collectedScores [Optional] Score object in { host: score } format.
61648
+ * @returns Unified reputation score buffer.
61690
61649
  */
61691
- async sendReputations(scoreVersion, clusterSize, scores = null, options = {}) {
61650
+ async prepareHostReputationScores(scoreVersion, clusterSize, collectedScores = null) {
61692
61651
  let buffer = Buffer.alloc(1);
61693
- if (scores) {
61694
- const preparedScores = await this.prepareHostReputationScores(scores);
61695
- if (preparedScores) {
61652
+ if (collectedScores) {
61653
+ const myReputationInfo = await this.getReputationOrderByAddress(this.xrplAcc.address);
61654
+ if (("orderedId" in (myReputationInfo ?? {}))) {
61655
+ const myOrderId = myReputationInfo.orderedId;
61656
+
61657
+ // Deciding universe.
61658
+ const universeStartIndex = Math.floor(myOrderId / 64) * 64;
61659
+
61660
+ const reputationClient = await HookClientFactory.create(HookTypes.reputation);
61661
+ await reputationClient.connect();
61662
+ let data = {};
61663
+ await Promise.all(Array.from({ length: 64 }, (_, i) => i + universeStartIndex).map(async (i) => {
61664
+ try {
61665
+ const hostReputationInfo = await reputationClient.getReputationContractInfoByOrderedId(i);
61666
+ if (!hostReputationInfo)
61667
+ throw 'No reputation info for this order id';
61668
+ data[i.toString()] = {
61669
+ publicKey: hostReputationInfo.contract?.pubkey ?? "-1",
61670
+ orderId: i
61671
+ };
61672
+ } catch (error) {
61673
+ data[i.toString()] = { publicKey: "-1", orderId: i };
61674
+ }
61675
+ }));
61676
+ await reputationClient.disconnect();
61677
+
61696
61678
  buffer = Buffer.alloc(66, 0);
61697
61679
  let i = 0;
61698
- for (const reputationScore of preparedScores) {
61699
- buffer.writeUIntLE(Number(reputationScore.scoreValue), i + 1, 1);
61680
+ for (const e of Object.entries(data)) {
61681
+ buffer.writeUIntLE(Number(collectedScores[e[1]?.publicKey] || 0), i + 1, 1);
61700
61682
  i++;
61701
61683
  }
61702
61684
  buffer.writeUIntLE(clusterSize, 65, 1);
@@ -61705,10 +61687,18 @@ class HostClient extends BaseEvernodeClient {
61705
61687
 
61706
61688
  buffer.writeUIntLE(scoreVersion, 0, 1);
61707
61689
 
61690
+ return buffer;
61691
+ }
61692
+
61693
+ /**
61694
+ * Send reputation scores to the reputation hook.
61695
+ * @param {string} bufferHex Prepared score buffer as hex string.
61696
+ */
61697
+ async sendReputations(bufferHex, options = {}) {
61708
61698
  const paramData = codec.decodeAccountID(this.xrplAcc.address);
61709
61699
 
61710
61700
  await this.reputationAcc.invoke(this.config.reputationAddress,
61711
- buffer ? { isHex: true, data: buffer.toString('hex') } : null,
61701
+ bufferHex ? { isHex: true, data: bufferHex } : null,
61712
61702
  {
61713
61703
  hookParams: [
61714
61704
  { name: HookParamKeys.PARAM_EVENT_TYPE_KEY, value: EventTypes.HOST_SEND_REPUTATION },
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  ],
7
7
  "homepage": "https://github.com/HotPocketDev/evernode-js-client",
8
8
  "license": "SEE LICENSE IN https://raw.githubusercontent.com/EvernodeXRPL/evernode-resources/main/license/evernode-license.pdf",
9
- "version": "0.6.57",
9
+ "version": "0.6.58",
10
10
  "dependencies": {
11
11
  "elliptic": "6.5.4",
12
12
  "libsodium-wrappers": "0.7.10",
Binary file
Binary file