@primuslabs/fund-js-sdk 0.1.4 → 0.1.5

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/dist/index.js CHANGED
@@ -42,6 +42,10 @@ var DATASOURCETEMPLATESMAP = {
42
42
  "google account": {
43
43
  id: "3bad8a55-4415-4bec-9b47-a4c7bbe93518",
44
44
  field: "2"
45
+ },
46
+ xiaohongshu: {
47
+ id: "93c6e6df-63ab-41af-8cba-f2927c0d2f1c",
48
+ field: "red_id"
45
49
  }
46
50
  };
47
51
  var SUPPORTEDSOCIALPLATFORMS = Object.keys(DATASOURCETEMPLATESMAP);
@@ -80,6 +84,16 @@ var SUPPORTEDCHAINIDS = Object.keys(Fund_CONTRACTS).map((i) => Number(i));
80
84
 
81
85
  // src/classes/Contract.ts
82
86
  var import_ethers = require("ethers");
87
+
88
+ // src/utils/utils.ts
89
+ var hasErrorFlagFn = (curErrorArr, targetErrorStrArr) => {
90
+ return curErrorArr.some((curErrorStr) => {
91
+ let f = targetErrorStrArr.some((targetErrorStr) => curErrorStr.toLowerCase().includes(targetErrorStr.toLowerCase()));
92
+ return f;
93
+ });
94
+ };
95
+
96
+ // src/classes/Contract.ts
83
97
  var Contract = class {
84
98
  address;
85
99
  provider;
@@ -132,17 +146,21 @@ var Contract = class {
132
146
  } catch (error) {
133
147
  console.log("sendTransaction error:", error);
134
148
  const errStr = error?.message || error?.toString()?.toLowerCase() || "";
149
+ const errorMsg1 = typeof error === "string" ? error : error instanceof Error ? error.message : typeof error.message === "string" ? error.message : JSON.stringify(error);
150
+ const errorMsg2 = typeof error === "object" ? JSON.stringify(error) : error?.toString();
151
+ const curErrorStrArr = [errorMsg1, errorMsg2];
135
152
  const userRejectErrStrArr = ["user rejected", "approval denied"];
136
- const isUserRejected = userRejectErrStrArr.some((str) => errStr.indexOf(str) > -1);
153
+ const isUserRejected = hasErrorFlagFn(curErrorStrArr, userRejectErrStrArr);
137
154
  if (error?.code === "ACTION_REJECTED" || isUserRejected) {
138
155
  return reject("user rejected transaction");
139
156
  }
140
157
  const insufficientBalanceErrStrArr = ["insufficient balance", "unpredictable_gas_limit"];
141
- const isInsufficientBalance = insufficientBalanceErrStrArr.some((str) => errStr.indexOf(str) > -1);
158
+ const isInsufficientBalance = hasErrorFlagFn(curErrorStrArr, insufficientBalanceErrStrArr);
142
159
  if (isInsufficientBalance) {
143
160
  return reject("insufficient balance");
144
161
  }
145
- if (errStr.indexOf("no pending withdrawals") > -1) {
162
+ const isNoPendingWithdrawals = hasErrorFlagFn(curErrorStrArr, ["no pending withdrawals"]);
163
+ if (isNoPendingWithdrawals) {
146
164
  return reject("no pending withdrawals");
147
165
  }
148
166
  return reject(error);
@@ -1410,8 +1428,13 @@ var Fund = class {
1410
1428
  let decimals = 18;
1411
1429
  let symbol = "";
1412
1430
  if (tokenType === 0) {
1413
- const web3Provider = new import_ethers2.ethers.providers.Web3Provider(this.provider);
1414
- const erc20Contract = new import_ethers2.ethers.Contract(tokenAddress, erc20Abi_default, web3Provider);
1431
+ let formatProvider;
1432
+ if (this.provider instanceof import_ethers2.ethers.providers.JsonRpcProvider) {
1433
+ formatProvider = this.provider;
1434
+ } else {
1435
+ formatProvider = new import_ethers2.ethers.providers.Web3Provider(this.provider);
1436
+ }
1437
+ const erc20Contract = new import_ethers2.ethers.Contract(tokenAddress, erc20Abi_default, formatProvider);
1415
1438
  decimals = await erc20Contract.decimals();
1416
1439
  symbol = await erc20Contract.symbol();
1417
1440
  } else if (tokenType === 1) {
package/dist/index.mjs CHANGED
@@ -18,6 +18,10 @@ var DATASOURCETEMPLATESMAP = {
18
18
  "google account": {
19
19
  id: "3bad8a55-4415-4bec-9b47-a4c7bbe93518",
20
20
  field: "2"
21
+ },
22
+ xiaohongshu: {
23
+ id: "93c6e6df-63ab-41af-8cba-f2927c0d2f1c",
24
+ field: "red_id"
21
25
  }
22
26
  };
23
27
  var SUPPORTEDSOCIALPLATFORMS = Object.keys(DATASOURCETEMPLATESMAP);
@@ -56,6 +60,16 @@ var SUPPORTEDCHAINIDS = Object.keys(Fund_CONTRACTS).map((i) => Number(i));
56
60
 
57
61
  // src/classes/Contract.ts
58
62
  import { ethers } from "ethers";
63
+
64
+ // src/utils/utils.ts
65
+ var hasErrorFlagFn = (curErrorArr, targetErrorStrArr) => {
66
+ return curErrorArr.some((curErrorStr) => {
67
+ let f = targetErrorStrArr.some((targetErrorStr) => curErrorStr.toLowerCase().includes(targetErrorStr.toLowerCase()));
68
+ return f;
69
+ });
70
+ };
71
+
72
+ // src/classes/Contract.ts
59
73
  var Contract = class {
60
74
  address;
61
75
  provider;
@@ -108,17 +122,21 @@ var Contract = class {
108
122
  } catch (error) {
109
123
  console.log("sendTransaction error:", error);
110
124
  const errStr = error?.message || error?.toString()?.toLowerCase() || "";
125
+ const errorMsg1 = typeof error === "string" ? error : error instanceof Error ? error.message : typeof error.message === "string" ? error.message : JSON.stringify(error);
126
+ const errorMsg2 = typeof error === "object" ? JSON.stringify(error) : error?.toString();
127
+ const curErrorStrArr = [errorMsg1, errorMsg2];
111
128
  const userRejectErrStrArr = ["user rejected", "approval denied"];
112
- const isUserRejected = userRejectErrStrArr.some((str) => errStr.indexOf(str) > -1);
129
+ const isUserRejected = hasErrorFlagFn(curErrorStrArr, userRejectErrStrArr);
113
130
  if (error?.code === "ACTION_REJECTED" || isUserRejected) {
114
131
  return reject("user rejected transaction");
115
132
  }
116
133
  const insufficientBalanceErrStrArr = ["insufficient balance", "unpredictable_gas_limit"];
117
- const isInsufficientBalance = insufficientBalanceErrStrArr.some((str) => errStr.indexOf(str) > -1);
134
+ const isInsufficientBalance = hasErrorFlagFn(curErrorStrArr, insufficientBalanceErrStrArr);
118
135
  if (isInsufficientBalance) {
119
136
  return reject("insufficient balance");
120
137
  }
121
- if (errStr.indexOf("no pending withdrawals") > -1) {
138
+ const isNoPendingWithdrawals = hasErrorFlagFn(curErrorStrArr, ["no pending withdrawals"]);
139
+ if (isNoPendingWithdrawals) {
122
140
  return reject("no pending withdrawals");
123
141
  }
124
142
  return reject(error);
@@ -1386,8 +1404,13 @@ var Fund = class {
1386
1404
  let decimals = 18;
1387
1405
  let symbol = "";
1388
1406
  if (tokenType === 0) {
1389
- const web3Provider = new ethers2.providers.Web3Provider(this.provider);
1390
- const erc20Contract = new ethers2.Contract(tokenAddress, erc20Abi_default, web3Provider);
1407
+ let formatProvider;
1408
+ if (this.provider instanceof ethers2.providers.JsonRpcProvider) {
1409
+ formatProvider = this.provider;
1410
+ } else {
1411
+ formatProvider = new ethers2.providers.Web3Provider(this.provider);
1412
+ }
1413
+ const erc20Contract = new ethers2.Contract(tokenAddress, erc20Abi_default, formatProvider);
1391
1414
  decimals = await erc20Contract.decimals();
1392
1415
  symbol = await erc20Contract.symbol();
1393
1416
  } else if (tokenType === 1) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@primuslabs/fund-js-sdk",
3
- "version": "0.1.4",
3
+ "version": "0.1.5",
4
4
  "author": "Primus Labs <dev@primuslabs.org>",
5
5
  "description": "Primus fund js sdk",
6
6
  "repository": {