@huma-finance/shared 0.0.20 → 0.0.22

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.
@@ -71,8 +71,9 @@ export type ApprovalResult = {
71
71
  /**
72
72
  * Object representing the receivable in an underwriting request.
73
73
  * @typedef {Object} ReceivableRequest
74
- * @property {string} [address] The address of the receivable asset contract.
75
- * @property {string} [param] The parameter for the receivable asset.
74
+ * @property {string} address The address of the receivable asset contract.
75
+ * @property {string} [param] The parameter for the receivable asset. E.g. For Request Network integrations,
76
+ * this would be the request ID associated with the ERC20TransferableReceivable.
76
77
  */
77
78
  type ReceivableRequest = {
78
79
  address: string;
@@ -88,7 +89,7 @@ type EARequestContextReceivable = {
88
89
  };
89
90
  /**
90
91
  * Object representing the additional data required for a stream factoring underwriting request.
91
- * @typedef {Object} EAContextStream
92
+ * @typedef {Object} EARequestContextStream
92
93
  * @property {ReceivableRequest} receivable The receivable information.
93
94
  * @property {string} payerWalletAddress The address of the payer.
94
95
  * @property {string} superToken The address of the SuperToken contract.
@@ -98,16 +99,55 @@ type EARequestContextStream = {
98
99
  payerWalletAddress: string;
99
100
  superToken: string;
100
101
  };
102
+ /**
103
+ * Object that represents the payload for an underwriting request.
104
+ * @typedef {Object} EAPayload
105
+ * @property {string} poolAddress The pool address to approve.
106
+ * @property {string} borrowerWalletAddress The address of the borrower.
107
+ * @property {EARequestContextReceivable | EARequestContextStream} [context] Extra values to submit with the approval request.
108
+ */
101
109
  export type EAPayload = {
102
110
  poolAddress: string;
103
111
  borrowerWalletAddress: string;
104
112
  context?: EARequestContextReceivable | EARequestContextStream;
105
113
  };
114
+ /**
115
+ * Object representing the response to the underwriting preapproval request.
116
+ * @typedef {Object} PreapprovalResult
117
+ * @property {boolean} approved the EA decision, either an approval or rejection.
118
+ * @property {string[]} [rejectionReasons] The reasons for rejection, if any
119
+ */
120
+ export type PreapprovalResult = {
121
+ approved: boolean;
122
+ rejectionReasons?: string[];
123
+ };
124
+ /**
125
+ * Object that includes extra data to be submitted to the underwriting preapproval request when
126
+ * checking for receivable requests
127
+ * @typedef {Object} EAPreapproveContextReceivable
128
+ * @property {string} payerWalletAddress The wallet of the payer of the receivable
129
+ */
130
+ type EAPreapproveContextReceivable = {
131
+ payerWalletAddress: string;
132
+ };
133
+ /**
134
+ * Object that represents the payload for a preapprove check.
135
+ * @typedef {Object} EAPreapprovalPayload
136
+ * @property {string} poolAddress The pool address to approve.
137
+ * @property {string} borrowerWalletAddress The address of the borrower.
138
+ * @property {EAPreapproveContextReceivable} [context] Extra values to submit with the preapproval request.
139
+ */
140
+ export type EAPreapprovalPayload = {
141
+ poolAddress: string;
142
+ borrowerWalletAddress: string;
143
+ context?: EAPreapproveContextReceivable;
144
+ };
106
145
  export declare const EAService: {
107
146
  approve: (payload: EAPayload, chainId: number, isDev?: boolean) => Promise<Approval>;
108
147
  approveLender: (payload: {
109
148
  poolAddress: string;
110
149
  lenderWalletAddress: string;
111
150
  }, chainId: number) => Promise<ApprovalResult>;
151
+ preapprove: (payload: EAPreapprovalPayload, chainId: number, isDev?: boolean) => Promise<PreapprovalResult>;
112
152
  };
113
153
  export {};
@@ -8,7 +8,9 @@ const request_1 = require("../utils/request");
8
8
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
9
  const isRejection = (obj) => obj !== null && typeof obj === 'object' && Array.isArray(obj.reasons);
10
10
  /**
11
- * Submits a credit underwriting request to Huma's EAVerse.
11
+ * Submits a credit underwriting request to Huma's EAVerse. This approves a creditline
12
+ * in Huma's pools that can be drawn down by the borrower.
13
+ *
12
14
  * @param {EAPayload} payload The payload for the underwrite approval.
13
15
  * @param {number} chainId The chain ID.
14
16
  * @param {boolean} isDev Is dev environment or not.
@@ -37,6 +39,16 @@ const approve = async (payload, chainId, isDev = false) => {
37
39
  }
38
40
  return result;
39
41
  };
42
+ /**
43
+ * Checks whether or not a credit underwriting request to Huma's EAVerse would be approved.
44
+ * Note that this does not approve a creditline in Huma's pools and an approve call is still required.
45
+ *
46
+ * @param {EAPreapprovalPayload} payload The payload for the underwrite approval.
47
+ * @param {number} chainId The chain ID.
48
+ * @param {boolean} isDev Is dev environment or not.
49
+ * @returns {Promise<Approval>} Promise that returns the approval on success.
50
+ */
51
+ const preapprove = async (payload, chainId, isDev = false) => (0, request_1.requestPost)(`${config_1.configUtil.getEAVerseUrl(chainId, isDev)}/underwriter/pre-approve`, payload);
40
52
  const approveLender = async (payload, chainId) => {
41
53
  var _a, _b;
42
54
  const generalErrorMessage = 'Sorry, there was an error approving your wallet as a lender.';
@@ -64,5 +76,6 @@ const approveLender = async (payload, chainId) => {
64
76
  exports.EAService = {
65
77
  approve,
66
78
  approveLender,
79
+ preapprove,
67
80
  };
68
81
  //# sourceMappingURL=EAService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EAService.js","sourceRoot":"","sources":["../../../src/services/EAService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EAService.js","sourceRoot":"","sources":["../../../src/services/EAService.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAC5C,4CAAkD;AAClD,4CAA2C;AAC3C,8CAA8C;AA+J9C,8DAA8D;AAC9D,MAAM,WAAW,GAAG,CAAC,GAAQ,EAAoB,EAAE,CACjD,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAEvE;;;;;;;;;GASG;AACH,MAAM,OAAO,GAAG,KAAK,EAAE,OAAkB,EAAE,OAAe,EAAE,KAAK,GAAG,KAAK,EAAE,EAAE;IAC3E,MAAM,cAAc,GAAmB,MAAM,IAAA,qBAAW,EACtD,GAAG,mBAAU,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,yBAAyB,EACpE,OAAO,CACR,CAAA;IACD,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAA;IACjC,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE;QACvB,MAAM,IAAI,yBAAgB,EAAE,CAAA;KAC7B;IACD,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,iDAAiD,EAAE;YACjE,KAAK,EAAE,cAAc;SACtB,CAAC,CAAA;KACH;IAED,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAC3C,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,EAAE;QACtB,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QACpD,KAAK,CAAC,oBAAoB,GAAG,IAAA,kBAAS,EACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,EAChC,KAAK,CAAC,OAAO,CACd,CAAA;KACF;IACD,IAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,EAAE;QACtB,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAC7C,UAAU,CAAC,eAAe,GAAG,IAAA,kBAAS,EACpC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EACzB,KAAK,CAAC,OAAO,CACd,CAAA;KACF;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,GAAG,KAAK,EACtB,OAA6B,EAC7B,OAAe,EACf,KAAK,GAAG,KAAK,EACe,EAAE,CAC9B,IAAA,qBAAW,EACT,GAAG,mBAAU,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,0BAA0B,EACrE,OAAO,CACR,CAAA;AAEH,MAAM,aAAa,GAAG,KAAK,EACzB,OAGC,EACD,OAAe,EACf,EAAE;;IACF,MAAM,mBAAmB,GACvB,8DAA8D,CAAA;IAChE,IAAI;QACF,8DAA8D;QAC9D,MAAM,IAAI,GAAQ,MAAM,IAAA,qBAAW,EACjC,GAAG,mBAAU,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,EACzD,OAAO,CACR,CAAA;QACD,IAAI,IAAI,CAAC,UAAU,IAAI,GAAG,EAAE;YAC1B,MAAM,IAAI,KAAK,CACb,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAC/D,CAAA;SACF;aAAM,IAAI,IAAI,CAAC,MAAM,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;SAChC;aAAM,IAAI,MAAA,IAAI,CAAC,eAAe,0CAAE,MAAM,EAAE;YACvC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;SACzC;QACD,OAAO,IAAsB,CAAA;QAC7B,8DAA8D;KAC/D;IAAC,OAAO,KAAU,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,MAAA,KAAK,CAAC,OAAO,mCAAI,mBAAmB,EAAE;YACpD,KAAK,EAAE,cAAc;SACtB,CAAC,CAAA;KACH;AACH,CAAC,CAAA;AAEY,QAAA,SAAS,GAAG;IACvB,OAAO;IACP,aAAa;IACb,UAAU;CACX,CAAA"}
@@ -127,7 +127,6 @@ exports.PoolContractMap = {
127
127
  },
128
128
  extra: {
129
129
  borrower: '0xEA57a8A51377752fFddaa3db4d13CE8F97677F2D',
130
- hidden: true,
131
130
  },
132
131
  },
133
132
  },
@@ -151,6 +150,9 @@ exports.PoolContractMap = {
151
150
  address: '0xf5F9297c74e464933e42F4a989e81D931fb20f83',
152
151
  abi: HDT_json_1.default,
153
152
  },
153
+ extra: {
154
+ hidden: true,
155
+ },
154
156
  },
155
157
  },
156
158
  },
@@ -243,6 +245,9 @@ exports.PoolContractMap = {
243
245
  address: '0x27Fa332a5cA06492C2007FF4b143C921Cf779C3b',
244
246
  abi: HDT_json_1.default,
245
247
  },
248
+ extra: {
249
+ hidden: true,
250
+ },
246
251
  },
247
252
  },
248
253
  },
@@ -298,6 +303,7 @@ exports.SupplementaryContractsMap = {
298
303
  },
299
304
  [chain_1.ChainEnum.Mumbai]: {
300
305
  [SupplementaryContracts.MultiSend]: '0x7DeabC1F7E47eD5Cf23Fa4390C48D6ab8543eE82',
306
+ [SupplementaryContracts.RealWorldReceivable]: '0x5F9E8b946472C9bA78491a4AbeA9d3BAccfB28E5',
301
307
  },
302
308
  };
303
309
  function getPoolInfo(chainId, poolType, poolName) {
@@ -1 +1 @@
1
- {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../src/utils/pool.ts"],"names":[],"mappings":";;;;AAAA,8FAA8D;AAC9D,8FAA8D;AAC9D,wEAAsC;AACtC,gHAAgF;AAChF,wGAAuE;AACvE,8FAA6D;AAC7D,mCAAmC;AACnC,qCAAqC;AAErC,IAAY,SAMX;AAND,WAAY,SAAS;IACnB,8CAAiC,CAAA;IACjC,8CAAiC,CAAA;IACjC,sCAAyB,CAAA;IACzB,wBAAW,CAAA;IACX,wBAAW,CAAA;AACb,CAAC,EANW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAMpB;AAED,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,sCAAyB,CAAA;IACzB,8BAAiB,CAAA;AACnB,CAAC,EAJW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAIpB;AAsDY,QAAA,OAAO,GAAgB;IAClC,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;QACtB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE;YAC1B,IAAI,EAAE,kBAAkB;YACxB,UAAU,EACR,8GAA8G;YAChH,QAAQ,EACN,0IAA0I;SAC7I;QACD,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YACf,IAAI,EAAE,uBAAuB;YAC7B,UAAU,EACR,uUAAuU;YACzU,QAAQ,EACN,uUAAuU;YACzU,MAAM,EAAE,QAAQ;SACjB;QACD,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YACf,IAAI,EAAE,UAAU;YAChB,UAAU,EAAE,cAAc;YAC1B,QAAQ,EAAE,cAAc;YACxB,MAAM,EAAE,QAAQ;SACjB;KACF;IACD,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;QACnB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE;YAC1B,IAAI,EAAE,iBAAiB;YACvB,UAAU,EACR,qHAAqH;YACvH,QAAQ,EACN,wLAAwL;SAC3L;KACF;IACD,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;QAClB,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;YACtB,IAAI,EAAE,YAAY;YAClB,UAAU,EACR,oHAAoH;YACtH,QAAQ,EACN,+KAA+K;SAClL;KACF;CACF,CAAA;AAEY,QAAA,eAAe,GAAwB;IAClD,CAAC,iBAAS,CAAC,OAAO,CAAC,EAAE;QACnB,QAAQ,EAAE,6DAA6D;QACvE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;YACtB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE;gBAC1B,cAAc,EAAE,4CAA4C;gBAC5D,IAAI,EAAE,4CAA4C;gBAClD,cAAc,EAAE,4CAA4C;gBAC5D,mBAAmB,EAAE;oBACnB,OAAO,EAAE,4CAA4C;oBACrD,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,CAAC;oBACX,IAAI,EAAE,MAAM;iBACb;gBACD,QAAQ,EAAE,SAAS,CAAC,cAAc;gBAClC,QAAQ,EAAE,SAAS,CAAC,UAAU;gBAC9B,OAAO,EAAE,6BAAoB;gBAC7B,iBAAiB,EAAE,6BAAoB;gBACvC,GAAG,EAAE;oBACH,OAAO,EAAE,4CAA4C;oBACrD,GAAG,EAAE,kBAAO;iBACb;gBACD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;aACxB;YACD,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;gBACf,cAAc,EAAE,4CAA4C;gBAC5D,IAAI,EAAE,4CAA4C;gBAClD,cAAc,EAAE,4CAA4C;gBAC5D,mBAAmB,EAAE;oBACnB,OAAO,EAAE,4CAA4C;oBACrD,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,CAAC;oBACX,IAAI,EAAE,MAAM;iBACb;gBACD,QAAQ,EAAE,SAAS,CAAC,GAAG;gBACvB,QAAQ,EAAE,SAAS,CAAC,UAAU;gBAC9B,OAAO,EAAE,6BAAoB;gBAC7B,iBAAiB,EAAE,6BAAoB;gBACvC,GAAG,EAAE;oBACH,OAAO,EAAE,4CAA4C;oBACrD,GAAG,EAAE,kBAAO;iBACb;gBACD,KAAK,EAAE;oBACL,KAAK,EAAE,CAAC;oBACR,QAAQ,EAAE,4CAA4C;oBACtD,aAAa,EAAE,IAAI;iBACpB;aACF;YACD,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;gBACf,cAAc,EAAE,4CAA4C;gBAC5D,IAAI,EAAE,4CAA4C;gBAClD,cAAc,EAAE,4CAA4C;gBAC5D,mBAAmB,EAAE;oBACnB,OAAO,EAAE,4CAA4C;oBACrD,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,CAAC;oBACX,IAAI,EAAE,MAAM;iBACb;gBACD,QAAQ,EAAE,SAAS,CAAC,GAAG;gBACvB,QAAQ,EAAE,SAAS,CAAC,UAAU;gBAC9B,OAAO,EAAE,6BAAoB;gBAC7B,iBAAiB,EAAE,6BAAoB;gBACvC,GAAG,EAAE;oBACH,OAAO,EAAE,4CAA4C;oBACrD,GAAG,EAAE,kBAAO;iBACb;gBACD,KAAK,EAAE;oBACL,QAAQ,EAAE,4CAA4C;oBACtD,MAAM,EAAE,IAAI;iBACb;aACF;SACF;QACD,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;YACnB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE;gBAC1B,cAAc,EAAE,4CAA4C;gBAC5D,IAAI,EAAE,4CAA4C;gBAClD,cAAc,EAAE,4CAA4C;gBAC5D,mBAAmB,EAAE;oBACnB,OAAO,EAAE,4CAA4C;oBACrD,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,CAAC;oBACX,IAAI,EAAE,MAAM;iBACb;gBACD,YAAY,EAAE,4CAA4C;gBAC1D,QAAQ,EAAE,SAAS,CAAC,cAAc;gBAClC,QAAQ,EAAE,SAAS,CAAC,OAAO;gBAC3B,OAAO,EAAE,sCAA6B;gBACtC,iBAAiB,EAAE,6BAAoB;gBACvC,GAAG,EAAE;oBACH,OAAO,EAAE,4CAA4C;oBACrD,GAAG,EAAE,kBAAO;iBACb;aACF;SACF;KACF;IACD,CAAC,iBAAS,CAAC,MAAM,CAAC,EAAE;QAClB,QAAQ,EAAE,4DAA4D;QACtE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;YACtB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE;gBAC1B,cAAc,EAAE,4CAA4C;gBAC5D,IAAI,EAAE,4CAA4C;gBAClD,cAAc,EAAE,4CAA4C;gBAC5D,mBAAmB,EAAE;oBACnB,OAAO,EAAE,4CAA4C;oBACrD,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,CAAC;oBACX,IAAI,EAAE,MAAM;iBACb;gBACD,QAAQ,EAAE,SAAS,CAAC,cAAc;gBAClC,QAAQ,EAAE,SAAS,CAAC,UAAU;gBAC9B,OAAO,EAAE,6BAAoB;gBAC7B,iBAAiB,EAAE,6BAAoB;gBACvC,GAAG,EAAE;oBACH,OAAO,EAAE,4CAA4C;oBACrD,GAAG,EAAE,kBAAO;iBACb;aACF;YACD,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;gBACf,cAAc,EAAE,4CAA4C;gBAC5D,IAAI,EAAE,4CAA4C;gBAClD,cAAc,EAAE,4CAA4C;gBAC5D,mBAAmB,EAAE;oBACnB,OAAO,EAAE,4CAA4C;oBACrD,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,CAAC;oBACX,IAAI,EAAE,MAAM;iBACb;gBACD,QAAQ,EAAE,SAAS,CAAC,GAAG;gBACvB,QAAQ,EAAE,SAAS,CAAC,UAAU;gBAC9B,OAAO,EAAE,6BAAoB;gBAC7B,iBAAiB,EAAE,6BAAoB;gBACvC,GAAG,EAAE;oBACH,OAAO,EAAE,4CAA4C;oBACrD,GAAG,EAAE,kBAAO;iBACb;gBACD,KAAK,EAAE;oBACL,QAAQ,EAAE,4CAA4C;oBACtD,KAAK,EAAE,CAAC;oBACR,MAAM,EAAE,IAAI;iBACb;aACF;YACD,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;gBACf,cAAc,EAAE,4CAA4C;gBAC5D,IAAI,EAAE,4CAA4C;gBAClD,cAAc,EAAE,4CAA4C;gBAC5D,mBAAmB,EAAE;oBACnB,OAAO,EAAE,4CAA4C;oBACrD,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,CAAC;oBACX,IAAI,EAAE,MAAM;iBACb;gBACD,QAAQ,EAAE,SAAS,CAAC,GAAG;gBACvB,QAAQ,EAAE,SAAS,CAAC,UAAU;gBAC9B,OAAO,EAAE,6BAAoB;gBAC7B,iBAAiB,EAAE,6BAAoB;gBACvC,GAAG,EAAE;oBACH,OAAO,EAAE,4CAA4C;oBACrD,GAAG,EAAE,kBAAO;iBACb;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF;SACF;QACD,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;YACnB,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE;gBAC1B,cAAc,EAAE,4CAA4C;gBAC5D,IAAI,EAAE,4CAA4C;gBAClD,cAAc,EAAE,4CAA4C;gBAC5D,mBAAmB,EAAE;oBACnB,OAAO,EAAE,4CAA4C;oBACrD,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,CAAC;oBACX,IAAI,EAAE,MAAM;iBACb;gBACD,YAAY,EAAE,4CAA4C;gBAC1D,QAAQ,EAAE,SAAS,CAAC,cAAc;gBAClC,QAAQ,EAAE,SAAS,CAAC,OAAO;gBAC3B,OAAO,EAAE,sCAA6B;gBACtC,iBAAiB,EAAE,6BAAoB;gBACvC,GAAG,EAAE;oBACH,OAAO,EAAE,4CAA4C;oBACrD,GAAG,EAAE,kBAAO;iBACb;aACF;SACF;KACF;IACD,CAAC,iBAAS,CAAC,MAAM,CAAC,EAAE;QAClB,QAAQ,EAAE,4DAA4D;QACtE,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YAClB,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;gBACtB,cAAc,EAAE,4CAA4C;gBAC5D,IAAI,EAAE,4CAA4C;gBAClD,aAAa,EAAE,4CAA4C;gBAC3D,cAAc,EAAE,4CAA4C;gBAC5D,mBAAmB,EAAE;oBACnB,OAAO,EAAE,4CAA4C;oBACrD,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,EAAE;oBACZ,IAAI,EAAE,MAAM;iBACb;gBACD,YAAY,EAAE,4CAA4C;gBAC1D,QAAQ,EAAE,SAAS,CAAC,UAAU;gBAC9B,QAAQ,EAAE,SAAS,CAAC,MAAM;gBAC1B,OAAO,EAAE,kCAAwB;gBACjC,iBAAiB,EAAE,6BAAoB;gBACvC,YAAY,EAAE,6BAAmB;gBACjC,GAAG,EAAE;oBACH,OAAO,EAAE,4CAA4C;oBACrD,GAAG,EAAE,kBAAO;iBACb;gBACD,KAAK,EAAE;oBACL,QAAQ,EACN,+EAA+E;oBACjF,WAAW,EAAE;wBACX;4BACE,EAAE,EAAE,4CAA4C;4BAChD,MAAM,EAAE,QAAQ;4BAChB,QAAQ,EAAE,EAAE;yBACb;qBACF;iBACF;aACF;SACF;KACF;CACF,CAAA;AAED,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,iDAAuB,CAAA;IACvB,qEAA2C,CAAA;IAC3C,qFAA2D,CAAA;AAC7D,CAAC,EAJW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAIjC;AAEY,QAAA,yBAAyB,GAIlC;IACF,CAAC,iBAAS,CAAC,MAAM,CAAC,EAAE;QAClB,CAAC,sBAAsB,CAAC,SAAS,CAAC,EAChC,4CAA4C;QAC9C,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,EAC1C,4CAA4C;QAC9C,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,EAClD,4CAA4C;KAC/C;IACD,CAAC,iBAAS,CAAC,MAAM,CAAC,EAAE;QAClB,CAAC,sBAAsB,CAAC,SAAS,CAAC,EAChC,4CAA4C;KAC/C;CACF,CAAA;AAED,SAAgB,WAAW,CACzB,OAA2B,EAC3B,QAAmB,EACnB,QAAmB;;IAEnB,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,OAAO,GAAG,mBAAU,CAAC,gBAAgB,CAAA;KACtC;IAED,OAAO,MAAA,MAAA,MAAA,uBAAe,CAAC,OAAO,CAAC,0CAAG,QAAQ,CAAC,0CAAG,QAAQ,CAAC,mCAAI,IAAI,CAAA;AACjE,CAAC;AAVD,kCAUC;AAED,SAAgB,QAAQ,CACtB,OAA2B;IAE3B,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,OAAO,GAAG,mBAAU,CAAC,gBAAgB,CAAA;KACtC;IAED,MAAM,UAAU,GAAG,uBAAe,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;IACjD,MAAM,KAAK,GAIN,EAAE,CAAA;IACP,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,QAAmB,EAAE,EAAE;QACvD,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;QACvC,IAAI,UAAU,EAAE;YACd,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;;gBAC3C,MAAM,YAAY,GAAG,QAAqB,CAAA;gBAC1C,KAAK,CAAC,IAAI,CAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,QAAQ;oBACR,KAAK,EAAE,MAAA,MAAA,MAAA,UAAU,CAAC,YAAY,CAAC,0CAAE,KAAK,0CAAE,KAAK,mCAAI,CAAC;iBACnD,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;SACH;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,mBAAmB,GAAG,CAC1B,KAA6C,EAC7C,KAA6C,EACrC,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;IAEtC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;IAE/B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC,CAAA;AACL,CAAC;AAtCD,4BAsCC"}
1
+ {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../../src/utils/pool.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.requestPost = exports.requestGet = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const axios_1 = tslib_1.__importDefault(require("axios"));
4
6
  const requestGet = async (url) => {
5
7
  const config = {
6
8
  method: 'GET',
@@ -9,7 +11,7 @@ const requestGet = async (url) => {
9
11
  },
10
12
  };
11
13
  // @ts-ignore
12
- return window.fetch(url, config).then((response) => response.json());
14
+ return axios_1.default.get(url, {}, config).then((response) => response.data);
13
15
  };
14
16
  exports.requestGet = requestGet;
15
17
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -19,10 +21,11 @@ const requestPost = async (url, payload) => {
19
21
  headers: {
20
22
  'Content-Type': 'application/json',
21
23
  },
22
- body: JSON.stringify(payload),
23
24
  };
24
- // @ts-ignore
25
- return window.fetch(url, config).then((response) => response.json());
25
+ return (axios_1.default
26
+ .post(url, payload, config)
27
+ // @ts-ignore
28
+ .then((response) => response.data));
26
29
  };
27
30
  exports.requestPost = requestPost;
28
31
  //# sourceMappingURL=request.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/utils/request.ts"],"names":[],"mappings":";;;AAAO,MAAM,UAAU,GAAG,KAAK,EAAK,GAAW,EAAE,EAAE;IACjD,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAA;IAED,aAAa;IACb,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAA;AAC3E,CAAC,CAAA;AAVY,QAAA,UAAU,cAUtB;AAED,8DAA8D;AACvD,MAAM,WAAW,GAAG,KAAK,EAAK,GAAW,EAAE,OAAY,EAAE,EAAE;IAChE,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;KAC9B,CAAA;IAED,aAAa;IACb,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAO,CAAC,CAAA;AAC3E,CAAC,CAAA;AAXY,QAAA,WAAW,eAWvB"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/utils/request.ts"],"names":[],"mappings":";;;;AAAA,0DAAyB;AAElB,MAAM,UAAU,GAAG,KAAK,EAAK,GAAW,EAAE,EAAE;IACjD,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAA;IAED,aAAa;IACb,OAAO,eAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAS,CAAC,CAAA;AAC1E,CAAC,CAAA;AAVY,QAAA,UAAU,cAUtB;AAED,8DAA8D;AACvD,MAAM,WAAW,GAAG,KAAK,EAAK,GAAW,EAAE,OAAY,EAAE,EAAE;IAChE,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAA;IAED,OAAO,CACL,eAAK;SACF,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC;QAC3B,aAAa;SACZ,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAS,CAAC,CAC1C,CAAA;AACH,CAAC,CAAA;AAdY,QAAA,WAAW,eAcvB"}
@@ -71,8 +71,9 @@ export type ApprovalResult = {
71
71
  /**
72
72
  * Object representing the receivable in an underwriting request.
73
73
  * @typedef {Object} ReceivableRequest
74
- * @property {string} [address] The address of the receivable asset contract.
75
- * @property {string} [param] The parameter for the receivable asset.
74
+ * @property {string} address The address of the receivable asset contract.
75
+ * @property {string} [param] The parameter for the receivable asset. E.g. For Request Network integrations,
76
+ * this would be the request ID associated with the ERC20TransferableReceivable.
76
77
  */
77
78
  type ReceivableRequest = {
78
79
  address: string;
@@ -88,7 +89,7 @@ type EARequestContextReceivable = {
88
89
  };
89
90
  /**
90
91
  * Object representing the additional data required for a stream factoring underwriting request.
91
- * @typedef {Object} EAContextStream
92
+ * @typedef {Object} EARequestContextStream
92
93
  * @property {ReceivableRequest} receivable The receivable information.
93
94
  * @property {string} payerWalletAddress The address of the payer.
94
95
  * @property {string} superToken The address of the SuperToken contract.
@@ -98,16 +99,55 @@ type EARequestContextStream = {
98
99
  payerWalletAddress: string;
99
100
  superToken: string;
100
101
  };
102
+ /**
103
+ * Object that represents the payload for an underwriting request.
104
+ * @typedef {Object} EAPayload
105
+ * @property {string} poolAddress The pool address to approve.
106
+ * @property {string} borrowerWalletAddress The address of the borrower.
107
+ * @property {EARequestContextReceivable | EARequestContextStream} [context] Extra values to submit with the approval request.
108
+ */
101
109
  export type EAPayload = {
102
110
  poolAddress: string;
103
111
  borrowerWalletAddress: string;
104
112
  context?: EARequestContextReceivable | EARequestContextStream;
105
113
  };
114
+ /**
115
+ * Object representing the response to the underwriting preapproval request.
116
+ * @typedef {Object} PreapprovalResult
117
+ * @property {boolean} approved the EA decision, either an approval or rejection.
118
+ * @property {string[]} [rejectionReasons] The reasons for rejection, if any
119
+ */
120
+ export type PreapprovalResult = {
121
+ approved: boolean;
122
+ rejectionReasons?: string[];
123
+ };
124
+ /**
125
+ * Object that includes extra data to be submitted to the underwriting preapproval request when
126
+ * checking for receivable requests
127
+ * @typedef {Object} EAPreapproveContextReceivable
128
+ * @property {string} payerWalletAddress The wallet of the payer of the receivable
129
+ */
130
+ type EAPreapproveContextReceivable = {
131
+ payerWalletAddress: string;
132
+ };
133
+ /**
134
+ * Object that represents the payload for a preapprove check.
135
+ * @typedef {Object} EAPreapprovalPayload
136
+ * @property {string} poolAddress The pool address to approve.
137
+ * @property {string} borrowerWalletAddress The address of the borrower.
138
+ * @property {EAPreapproveContextReceivable} [context] Extra values to submit with the preapproval request.
139
+ */
140
+ export type EAPreapprovalPayload = {
141
+ poolAddress: string;
142
+ borrowerWalletAddress: string;
143
+ context?: EAPreapproveContextReceivable;
144
+ };
106
145
  export declare const EAService: {
107
146
  approve: (payload: EAPayload, chainId: number, isDev?: boolean) => Promise<Approval>;
108
147
  approveLender: (payload: {
109
148
  poolAddress: string;
110
149
  lenderWalletAddress: string;
111
150
  }, chainId: number) => Promise<ApprovalResult>;
151
+ preapprove: (payload: EAPreapprovalPayload, chainId: number, isDev?: boolean) => Promise<PreapprovalResult>;
112
152
  };
113
153
  export {};
@@ -5,7 +5,9 @@ import { requestPost } from '../utils/request';
5
5
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
6
  const isRejection = (obj) => obj !== null && typeof obj === 'object' && Array.isArray(obj.reasons);
7
7
  /**
8
- * Submits a credit underwriting request to Huma's EAVerse.
8
+ * Submits a credit underwriting request to Huma's EAVerse. This approves a creditline
9
+ * in Huma's pools that can be drawn down by the borrower.
10
+ *
9
11
  * @param {EAPayload} payload The payload for the underwrite approval.
10
12
  * @param {number} chainId The chain ID.
11
13
  * @param {boolean} isDev Is dev environment or not.
@@ -34,6 +36,16 @@ const approve = async (payload, chainId, isDev = false) => {
34
36
  }
35
37
  return result;
36
38
  };
39
+ /**
40
+ * Checks whether or not a credit underwriting request to Huma's EAVerse would be approved.
41
+ * Note that this does not approve a creditline in Huma's pools and an approve call is still required.
42
+ *
43
+ * @param {EAPreapprovalPayload} payload The payload for the underwrite approval.
44
+ * @param {number} chainId The chain ID.
45
+ * @param {boolean} isDev Is dev environment or not.
46
+ * @returns {Promise<Approval>} Promise that returns the approval on success.
47
+ */
48
+ const preapprove = async (payload, chainId, isDev = false) => requestPost(`${configUtil.getEAVerseUrl(chainId, isDev)}/underwriter/pre-approve`, payload);
37
49
  const approveLender = async (payload, chainId) => {
38
50
  var _a, _b;
39
51
  const generalErrorMessage = 'Sorry, there was an error approving your wallet as a lender.';
@@ -61,5 +73,6 @@ const approveLender = async (payload, chainId) => {
61
73
  export const EAService = {
62
74
  approve,
63
75
  approveLender,
76
+ preapprove,
64
77
  };
65
78
  //# sourceMappingURL=EAService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EAService.js","sourceRoot":"","sources":["../../src/services/EAService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EAService.js","sourceRoot":"","sources":["../../src/services/EAService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AA+J9C,8DAA8D;AAC9D,MAAM,WAAW,GAAG,CAAC,GAAQ,EAAoB,EAAE,CACjD,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAEvE;;;;;;;;;GASG;AACH,MAAM,OAAO,GAAG,KAAK,EAAE,OAAkB,EAAE,OAAe,EAAE,KAAK,GAAG,KAAK,EAAE,EAAE;IAC3E,MAAM,cAAc,GAAmB,MAAM,WAAW,CACtD,GAAG,UAAU,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,yBAAyB,EACpE,OAAO,CACR,CAAA;IACD,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAA;IACjC,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE;QACvB,MAAM,IAAI,gBAAgB,EAAE,CAAA;KAC7B;IACD,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,iDAAiD,EAAE;YACjE,KAAK,EAAE,cAAc;SACtB,CAAC,CAAA;KACH;IAED,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAC3C,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,EAAE;QACtB,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QACpD,KAAK,CAAC,oBAAoB,GAAG,SAAS,CACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,EAChC,KAAK,CAAC,OAAO,CACd,CAAA;KACF;IACD,IAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,EAAE;QACtB,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAC7C,UAAU,CAAC,eAAe,GAAG,SAAS,CACpC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EACzB,KAAK,CAAC,OAAO,CACd,CAAA;KACF;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,GAAG,KAAK,EACtB,OAA6B,EAC7B,OAAe,EACf,KAAK,GAAG,KAAK,EACe,EAAE,CAC9B,WAAW,CACT,GAAG,UAAU,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,0BAA0B,EACrE,OAAO,CACR,CAAA;AAEH,MAAM,aAAa,GAAG,KAAK,EACzB,OAGC,EACD,OAAe,EACf,EAAE;;IACF,MAAM,mBAAmB,GACvB,8DAA8D,CAAA;IAChE,IAAI;QACF,8DAA8D;QAC9D,MAAM,IAAI,GAAQ,MAAM,WAAW,CACjC,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,EACzD,OAAO,CACR,CAAA;QACD,IAAI,IAAI,CAAC,UAAU,IAAI,GAAG,EAAE;YAC1B,MAAM,IAAI,KAAK,CACb,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAC/D,CAAA;SACF;aAAM,IAAI,IAAI,CAAC,MAAM,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;SAChC;aAAM,IAAI,MAAA,IAAI,CAAC,eAAe,0CAAE,MAAM,EAAE;YACvC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;SACzC;QACD,OAAO,IAAsB,CAAA;QAC7B,8DAA8D;KAC/D;IAAC,OAAO,KAAU,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,MAAA,KAAK,CAAC,OAAO,mCAAI,mBAAmB,EAAE;YACpD,KAAK,EAAE,cAAc;SACtB,CAAC,CAAA;KACH;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,OAAO;IACP,aAAa;IACb,UAAU;CACX,CAAA"}