@teleportdao/bitcoin 4.0.3 → 4.1.0-alpha.0

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.
@@ -121,9 +121,6 @@ class BaseTransactionBuilder {
121
121
  throw new Error(`not enough balance. details: ${JSON.stringify({ spendableBalance, totalOutputAmount, txFee, need }, null, 2)}`);
122
122
  }
123
123
  let diff = fee - txFee;
124
- if (Math.abs(diff) >= coin_select_1.DUST) {
125
- console.log("diff", diff, "fee", fee, "txFee", txFee);
126
- }
127
124
  let changeIndex = outputs.findIndex((x) => !x?.address && !x.script && (x.value || 0) > 0);
128
125
  let change;
129
126
  if (diff > 0) {
@@ -177,45 +174,45 @@ class BaseTransactionBuilder {
177
174
  outputs.splice(changeIndex, 1);
178
175
  }
179
176
  if (Math.abs(fee - newFee) > coin_select_1.DUST) {
180
- console.log("fee", fee);
181
- console.log("newFee", newFee);
182
- throw new Error("fee mismatch");
177
+ throw new Error(`fee mismatch: ${JSON.stringify({ fee, newFee })}`);
183
178
  }
184
179
  let totalOutputValue = outputs.reduce((a, b) => a + b.value, 0);
185
180
  let totalNewOutputValue = newOutputs.reduce((a, b) => a + b.value, 0);
186
181
  if (totalOutputValue - totalNewOutputValue !== 0) {
187
- console.log("totalOutputValue", totalOutputValue);
188
- console.log("totalNewOutputValue", totalNewOutputValue);
189
- console.log("diff", totalOutputValue - totalNewOutputValue);
190
- throw new Error("output value mismatch");
182
+ throw new Error(`output value mismatch${JSON.stringify({ totalOutputValue, totalNewOutputValue })}`);
191
183
  }
192
184
  if (outputs.length !== newOutputs.length) {
193
- console.log("outputs", outputs);
194
- console.log("newOutputs", newOutputs);
195
- throw new Error("output length mismatch");
185
+ throw new Error(`output length mismatch: ${JSON.stringify({ outputs, newOutputs })}`);
196
186
  }
197
187
  for (let i = 0; i < outputs.length; i += 1) {
198
188
  if (outputs[i].value !== newOutputs[i].value) {
199
- console.log("outputs[i].value", outputs[i].value);
200
- console.log("newOutputs[i].value", newOutputs[i].value);
201
- throw new Error("output value mismatch");
189
+ throw new Error(`output value mismatch: ${JSON.stringify({
190
+ old: outputs[i].value,
191
+ new: newOutputs[i].value,
192
+ })}`);
202
193
  }
203
194
  if (outputs[i].address !== newOutputs[i].address) {
204
- console.log("outputs[i].address", outputs[i].address);
205
- console.log("newOutputs[i].address", newOutputs[i].address);
206
- throw new Error("output address mismatch");
195
+ throw new Error(`output address mismatch: ${JSON.stringify({
196
+ old: outputs[i].address,
197
+ new: newOutputs[i].address,
198
+ })}`);
207
199
  }
208
200
  if (outputs[i].script !== newOutputs[i].script) {
209
- console.log("outputs[i].script", outputs[i].script);
210
- console.log("newOutputs[i].script", newOutputs[i].script);
211
- throw new Error("output script mismatch");
201
+ throw new Error(`output script mismatch: ${JSON.stringify({
202
+ old: outputs[i].script,
203
+ new: newOutputs[i].script,
204
+ })}`);
212
205
  }
213
206
  }
214
207
  let totalInputValue = inputs.reduce((a, b) => a + b.value, 0);
215
208
  let totalNewInputValue = newInputs.reduce((a, b) => a + b.value, 0);
216
209
  if (Math.abs(totalInputValue - (change?.value || 0) - (totalNewInputValue - (newChange?.value || 0))) > coin_select_1.DUST) {
217
- console.log("totalInputValue", totalInputValue);
218
- throw new Error("input value mismatch");
210
+ throw new Error(`input value mismatch: ${JSON.stringify({
211
+ totalInputValue,
212
+ totalNewInputValue,
213
+ changeValue: change?.value,
214
+ newChangeValue: newChange?.value,
215
+ })}`);
219
216
  }
220
217
  return { inputs, outputs, change, fee };
221
218
  }
@@ -1 +1 @@
1
- {"version":3,"file":"transaction-builder.js","sourceRoot":"","sources":["../../src/transaction-builder/transaction-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction-builder.js","sourceRoot":"","sources":["../../src/transaction-builder/transaction-builder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/utils/tools.ts"],"names":[],"mappings":"AAEA,iBAAS,KAAK,CAAC,EAAE,EAAE,MAAM,oBAGxB;AAED,iBAAe,cAAc,CAAC,CAAC,EAC7B,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACxB,MAAM,GAAE;IACN,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;CAIpB,GACA,OAAO,CAAC,CAAC,CAAC,CAoBZ;AAED,iBAAS,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAEjD;AAED,iBAAS,gBAAgB,CAAC,EACxB,OAAO,EACP,OAAe,EACf,OAAY,EACZ,IAAI,GACL,EAAE;IACD,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IACnC,IAAI,CAAC,EAAE;QACL,QAAQ,EAAE,MAAM,CAAA;QAChB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;CACF,iCAkCA;AAED,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAA"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/utils/tools.ts"],"names":[],"mappings":"AAEA,iBAAS,KAAK,CAAC,EAAE,EAAE,MAAM,oBAGxB;AAED,iBAAe,cAAc,CAAC,CAAC,EAC7B,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACxB,MAAM,GAAE;IACN,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;CAIpB,GACA,OAAO,CAAC,CAAC,CAAC,CAmBZ;AAED,iBAAS,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAEjD;AAED,iBAAS,gBAAgB,CAAC,EACxB,OAAO,EACP,OAAe,EACf,OAAY,EACZ,IAAI,GACL,EAAE;IACD,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IACnC,IAAI,CAAC,EAAE;QACL,QAAQ,EAAE,MAAM,CAAA;QAChB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;CACF,iCAkCA;AAED,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAA"}
@@ -25,7 +25,6 @@ async function runWithRetries(action, config = {
25
25
  }
26
26
  catch (error) {
27
27
  error.message += `\n${trace}`;
28
- console.log(`Attempt ${count + 1} failed: ${error.message}`);
29
28
  lastError = error;
30
29
  if (count < maxTries - 1) {
31
30
  await sleep(retrySleep);
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/utils/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/utils/tools.ts"],"names":[],"mappings":";;;;;AA0FS,sBAAK;AAAE,wCAAc;AAAE,4CAAgB;AAAE,4CAAgB;AA1FlE,kDAAyB;AAEzB,SAAS,KAAK,CAAC,EAAU;IAEvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;AAC1D,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,MAAwB,EACxB,SAGI;IACF,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,IAAI;CACjB;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAA;IACrC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,IAAI,CAAA;IAC5C,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEhE,IAAI,SAAc,CAAA;IAClB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC;YACH,OAAO,MAAM,MAAM,EAAE,CAAA;QACvB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,KAAK,CAAC,OAAO,IAAI,KAAK,KAAK,EAAE,CAAA;YAC7B,SAAS,GAAG,KAAK,CAAA;YACjB,IAAI,KAAK,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,KAAK,CAAC,UAAU,CAAC,CAAA;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,SAAS,IAAI,IAAI,KAAK,CAAC,yBAAyB,QAAQ,aAAa,SAAS,EAAE,OAAO,EAAE,CAAC,CAAA;AAClG,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW,EAAE,GAAW;IAChD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;AACtD,CAAC;AAED,SAAS,gBAAgB,CAAC,EACxB,OAAO,EACP,OAAO,GAAG,KAAK,EACf,OAAO,GAAG,EAAE,EACZ,IAAI,GASL;IACC,IAAI,IAAI,GAAG,OAAO,CAAA;IAClB,IAAI,QAAQ,CAAA;IAEZ,QAAQ,GAAG,eAAK,CAAC,MAAM,CAAC;QACtB,OAAO,EAAE,IAAI;QACb,OAAO;QACP,IAAI;QACJ,OAAO,EAAE;YACP,GAAG,OAAO;SACX;KACF,CAAC,CAAA;IAGF,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAChC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,EACtB,CAAC,KAAK,EAAE,EAAE;QAER,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,YAAY,GAAG,IAAI,KAAK,CAC5B,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CACtE,CAAA;YACD,OAAO,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QACrC,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC7C,OAAO,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QACrC,CAAC;QACD,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC,CACF,CAAA;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@teleportdao/bitcoin",
3
- "version": "4.0.3",
3
+ "version": "4.1.0-alpha.0",
4
4
  "description": "teleswap bitcoin package",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -14,8 +14,8 @@
14
14
  "license": "ISC",
15
15
  "dependencies": {
16
16
  "@bitcoinerlab/secp256k1": "^1.0.5",
17
- "@teleportdao/configs": "^4.0.3",
18
- "@teleportdao/providers": "^4.0.1",
17
+ "@teleportdao/configs": "^4.1.0-alpha.0",
18
+ "@teleportdao/providers": "^4.1.0-alpha.0",
19
19
  "axios": "^0.27.2",
20
20
  "bignumber.js": "^9.1.1",
21
21
  "bip32": "^4.0.0",
@@ -31,5 +31,5 @@
31
31
  "publishConfig": {
32
32
  "access": "public"
33
33
  },
34
- "gitHead": "d84300fd3883e4689b5a989d6358d75689a92e1e"
34
+ "gitHead": "48c5ab8a517c309776532137482d3416d87997c5"
35
35
  }
@@ -5,6 +5,7 @@ import {
5
5
  checkAndParseWrapRequest,
6
6
  // getBurnTransactionInfo,
7
7
  UnwrapInfo,
8
+ WrapOpReturnV2WithType,
8
9
  WrapOpReturnWithType,
9
10
  } from "./helper/teleswap-helper"
10
11
  import BitcoinInterface from "./bitcoin-interface"
@@ -18,7 +19,7 @@ export type ValidWrapRequest = {
18
19
  }
19
20
  request: {
20
21
  status: boolean
21
- data: WrapOpReturnWithType
22
+ data: WrapOpReturnWithType | WrapOpReturnV2WithType
22
23
  value: number
23
24
  valueOutputIndex: number
24
25
  }
@@ -1,4 +1,3 @@
1
- import { teleswap } from "@teleportdao/configs"
2
1
  import BigNumber from "bignumber.js"
3
2
 
4
3
  type Vin = {
@@ -25,6 +24,19 @@ export type WrapOpReturn = {
25
24
  bridgePercentageFee?: number
26
25
  }
27
26
 
27
+ export type WrapOpReturnV2 = {
28
+ chainId: number
29
+ appId: number
30
+ recipientAddress: string
31
+ thirdPartyId: number
32
+ networkFee: string
33
+ speed: boolean
34
+ outputTokenId?: string
35
+ minOutputAmount?: string
36
+ minIntermediaryTokenAmount?: string
37
+ bridgePercentageFee?: number
38
+ }
39
+
28
40
  export type UnwrapInfo = {
29
41
  receivers: (Vout & {
30
42
  index: number
@@ -44,14 +56,40 @@ export type WrapOpReturnWithType = WrapOpReturn & {
44
56
  requestType: "Wrap" | "WrapAndSwap"
45
57
  }
46
58
 
59
+ export type WrapOpReturnV2WithType = WrapOpReturnV2 & {
60
+ requestType: "WrapV2" | "WrapAndSwapV2"
61
+ }
62
+
47
63
  // hex length -> 1 byte = 2
48
64
  const wrapOpReturnLength = {
49
65
  chainId: 4,
50
66
  appId: 2,
51
- thirdPartyId: 2,
67
+ recipientAddress: 40, // 20 bytes
52
68
  networkFee: 6,
53
- bridgePercentageFee: 6,
54
- outputAmount: 28,
69
+ speed: 2, // 1 byte
70
+ thirdPartyId: 2, // 1 byte
71
+ outputToken: 40, // 20 bytes
72
+ outputAmount: 28, // 14 bytes
73
+ bridgePercentageFee: 6, // 3 bytes
74
+ //
75
+ totalWrap: 56, // 40 bytes
76
+ totalWrapAndSwap: 130, // 53 bytes
77
+ }
78
+
79
+ const wrapOpReturnV2Length = {
80
+ chainId: 4, // 2 bytes
81
+ appId: 2, // 1 byte
82
+ recipientAddress: 64, // 32 bytes
83
+ networkFee: 6, // 3 bytes
84
+ speed: 2, // 1 byte
85
+ thirdPartyId: 2, // 1 byte
86
+ outputTokenId: 16, // 8 bytes
87
+ minOutputAmount: 26, // 13 bytes
88
+ minIntermediaryTokenAmount: 26, // 13 bytes
89
+ bridgePercentageFee: 6, // 3 bytes
90
+ //
91
+ totalWrap: 80, // 40 bytes
92
+ totalWrapAndSwap: 154, // 77 bytes
55
93
  }
56
94
 
57
95
  export function generateWrapOpReturn({
@@ -89,7 +127,7 @@ export function generateWrapOpReturn({
89
127
  data += speed ? "01" : "00"
90
128
  data += BigNumber(thirdPartyId).toString(16).padStart(wrapOpReturnLength.thirdPartyId, "0")
91
129
  if (!isExchange) {
92
- if (data.length !== 28 * 2) throw new Error("invalid data length")
130
+ if (data.length !== wrapOpReturnLength.totalWrap) throw new Error("invalid data length")
93
131
  return data
94
132
  }
95
133
  if (!outputToken) {
@@ -117,7 +155,169 @@ export function generateWrapOpReturn({
117
155
  .multipliedBy(1e5)
118
156
  .toString(16)
119
157
  .padStart(wrapOpReturnLength.bridgePercentageFee, "0")
120
- if (data.length !== 65 * 2) throw new Error("invalid data length")
158
+ if (data.length !== wrapOpReturnLength.totalWrapAndSwap) throw new Error("invalid data length")
159
+ return data
160
+ }
161
+
162
+ export function parseWrapRequestV2(data: string) {
163
+ let parsedData: Partial<WrapOpReturnV2WithType> = {}
164
+ parsedData.requestType = "WrapV2"
165
+ let offset = 0
166
+ parsedData.chainId = BigNumber(
167
+ `0x${data.slice(offset, (offset += wrapOpReturnV2Length.chainId))}`,
168
+ ).toNumber()
169
+ parsedData.appId = BigNumber(
170
+ `0x${data.slice(offset, (offset += wrapOpReturnV2Length.appId))}`,
171
+ ).toNumber()
172
+ parsedData.recipientAddress = `0x${data.slice(
173
+ offset,
174
+ (offset += wrapOpReturnV2Length.recipientAddress),
175
+ )}`
176
+ parsedData.networkFee = new BigNumber(
177
+ `0x${data.slice(offset, (offset += wrapOpReturnV2Length.networkFee))}`,
178
+ ).toFixed(0)
179
+ parsedData.speed = data.slice(offset, (offset += wrapOpReturnV2Length.speed)) === "01" // 1 byte
180
+ parsedData.thirdPartyId = new BigNumber(
181
+ `0x${data.slice(offset, (offset += wrapOpReturnV2Length.thirdPartyId))}`,
182
+ ).toNumber()
183
+ if (data.length === offset) {
184
+ return {
185
+ status: true,
186
+ data: parsedData as WrapOpReturnV2WithType,
187
+ }
188
+ }
189
+
190
+ parsedData.requestType = "WrapAndSwapV2"
191
+ parsedData.outputTokenId = `0x${data.slice(
192
+ offset,
193
+ (offset += wrapOpReturnV2Length.outputTokenId),
194
+ )}`
195
+ parsedData.minOutputAmount = new BigNumber(
196
+ `0x${data.slice(offset, (offset += wrapOpReturnV2Length.minOutputAmount))}`,
197
+ ).toFixed(0)
198
+ parsedData.minIntermediaryTokenAmount = new BigNumber(
199
+ `0x${data.slice(offset, (offset += wrapOpReturnV2Length.minIntermediaryTokenAmount))}`,
200
+ ).toFixed(0)
201
+ parsedData.bridgePercentageFee = new BigNumber(
202
+ `0x${data.slice(offset, (offset += wrapOpReturnV2Length.bridgePercentageFee))}`,
203
+ )
204
+ .dividedBy(1e5)
205
+ .toNumber()
206
+
207
+ if (parsedData.bridgePercentageFee > 100) {
208
+ return {
209
+ status: false,
210
+ message: `invalid OP_RETURN data for requestType: 'wrap or wrapAndSwap'. invalid bridgePercentageFee`,
211
+ code: "INVALID_OP_RETURN",
212
+ }
213
+ }
214
+ if (data.length === offset) {
215
+ return {
216
+ status: true,
217
+ data: parsedData as WrapOpReturnV2WithType,
218
+ }
219
+ }
220
+
221
+ return {
222
+ status: false,
223
+ message: `invalid OP_RETURN data for requestType: 'wrap or wrapAndSwap'. invalid data length : ${data.length} - valid length : ${offset}`,
224
+ code: "INVALID_OP_RETURN",
225
+ }
226
+ }
227
+
228
+ export function generateWrapOpReturnV2({
229
+ chainId,
230
+ appId,
231
+ recipientAddress,
232
+ networkFee,
233
+ thirdPartyId = 0,
234
+ speed = false,
235
+ isExchange = false,
236
+ outputTokenId,
237
+ minOutputAmount,
238
+ minIntermediaryTokenAmount,
239
+ bridgePercentageFee = 0,
240
+ }: Omit<WrapOpReturnV2, "thirdPartyId"> & {
241
+ thirdPartyId?: number
242
+ isExchange?: boolean
243
+ }) {
244
+ let data = ""
245
+ if (BigNumber(chainId).toString(16).length > wrapOpReturnV2Length.chainId) {
246
+ throw new Error("invalid chainId")
247
+ }
248
+ if (BigNumber(appId).toString(16).length > wrapOpReturnV2Length.appId) {
249
+ throw new Error("invalid appId")
250
+ }
251
+ if (BigNumber(networkFee).toString(16).length > wrapOpReturnV2Length.networkFee) {
252
+ throw new Error("invalid percentageFee")
253
+ }
254
+ if (BigNumber(thirdPartyId).toString(16).length > wrapOpReturnV2Length.thirdPartyId) {
255
+ throw new Error("invalid percentageFee")
256
+ }
257
+
258
+ if (recipientAddress.length > wrapOpReturnV2Length.recipientAddress) {
259
+ throw new Error("invalid recipientAddress")
260
+ }
261
+ data += BigNumber(chainId).toString(16).padStart(wrapOpReturnV2Length.chainId, "0")
262
+ data += BigNumber(appId).toString(16).padStart(wrapOpReturnV2Length.appId, "0")
263
+ data += recipientAddress
264
+ .replace("0x", "")
265
+ .toLowerCase()
266
+ .padStart(wrapOpReturnV2Length.recipientAddress, "0")
267
+ data += BigNumber(networkFee).toString(16).padStart(wrapOpReturnV2Length.networkFee, "0")
268
+ data += speed ? "01" : "00"
269
+ data += BigNumber(thirdPartyId).toString(16).padStart(wrapOpReturnV2Length.thirdPartyId, "0")
270
+ if (!isExchange) {
271
+ if (data.length !== wrapOpReturnV2Length.totalWrap) throw new Error("invalid data length")
272
+ return data
273
+ }
274
+ if (
275
+ !outputTokenId ||
276
+ outputTokenId.replace("0x", "").length !== wrapOpReturnV2Length.outputTokenId
277
+ ) {
278
+ throw new Error("invalid outputTokenId")
279
+ }
280
+ if (
281
+ !minOutputAmount ||
282
+ BigNumber(minOutputAmount).toString(16).length > wrapOpReturnV2Length.minOutputAmount
283
+ ) {
284
+ throw new Error("invalid outputAmount")
285
+ }
286
+ if (
287
+ !minIntermediaryTokenAmount ||
288
+ BigNumber(minIntermediaryTokenAmount).toString(16).length >
289
+ wrapOpReturnV2Length.minIntermediaryTokenAmount
290
+ ) {
291
+ throw new Error("invalid minIntermediaryTokenAmount")
292
+ }
293
+ if (
294
+ (bridgePercentageFee || 0) > 100 ||
295
+ (bridgePercentageFee && bridgePercentageFee < 0.00001) ||
296
+ BigNumber(bridgePercentageFee?.toFixed(5) || 0)
297
+ .multipliedBy(1e5) // bridgePercentageFee is in %. 100 = 100% = 1e7
298
+ .toString(16).length > wrapOpReturnV2Length.bridgePercentageFee
299
+ ) {
300
+ throw new Error("invalid percentageFee")
301
+ }
302
+ data += outputTokenId
303
+ .replace("0x", "")
304
+ .toLowerCase()
305
+ .padStart(wrapOpReturnV2Length.outputTokenId, "0")
306
+ data += BigNumber(minOutputAmount)
307
+ .toString(16)
308
+ .padStart(wrapOpReturnV2Length.minOutputAmount, "0")
309
+ data += BigNumber(minIntermediaryTokenAmount)
310
+ .toString(16)
311
+ .padStart(wrapOpReturnV2Length.minIntermediaryTokenAmount, "0")
312
+
313
+ data += BigNumber(bridgePercentageFee?.toFixed(5) || 0)
314
+ .multipliedBy(1e5)
315
+ .toString(16)
316
+ .padStart(wrapOpReturnV2Length.bridgePercentageFee, "0")
317
+ if (data.length !== wrapOpReturnV2Length.totalWrapAndSwap)
318
+ throw new Error(
319
+ `invalid data length: ${data.length} - valid length: ${wrapOpReturnV2Length.totalWrapAndSwap}`,
320
+ )
121
321
  return data
122
322
  }
123
323
 
@@ -145,25 +345,29 @@ export function getBurnTransactionInfo(address: string, vin: Vin[] = [], vouts:
145
345
  })
146
346
  return { receivers, changes, totalInputValue, lockerVin }
147
347
  }
348
+ return null
148
349
  }
149
350
 
150
351
  //
151
352
 
152
- export function parseWrapRequest(data: string) {
353
+ export function parseWrapRequestV1(data: string) {
153
354
  let parsedData: Partial<WrapOpReturnWithType> = {}
154
355
  parsedData.requestType = "Wrap"
155
356
  let offset = 0
156
357
  parsedData.chainId = BigNumber(
157
358
  `0x${data.slice(offset, (offset += wrapOpReturnLength.chainId))}`,
158
- ).toNumber() // 1 bytes
359
+ ).toNumber()
159
360
  parsedData.appId = BigNumber(
160
361
  `0x${data.slice(offset, (offset += wrapOpReturnLength.appId))}`,
161
- ).toNumber() // 2 bytes
162
- parsedData.recipientAddress = `0x${data.slice(offset, (offset += 40))}` // 20 bytes
362
+ ).toNumber()
363
+ parsedData.recipientAddress = `0x${data.slice(
364
+ offset,
365
+ (offset += wrapOpReturnLength.recipientAddress),
366
+ )}`
163
367
  parsedData.networkFee = new BigNumber(
164
368
  `0x${data.slice(offset, (offset += wrapOpReturnLength.networkFee))}`,
165
369
  ).toFixed(0)
166
- parsedData.speed = data.slice(offset, (offset += 2)) === "01" // 1 byte
370
+ parsedData.speed = data.slice(offset, (offset += wrapOpReturnLength.speed)) === "01"
167
371
  parsedData.thirdPartyId = new BigNumber(
168
372
  `0x${data.slice(offset, (offset += wrapOpReturnLength.thirdPartyId))}`,
169
373
  ).toNumber()
@@ -175,10 +379,10 @@ export function parseWrapRequest(data: string) {
175
379
  }
176
380
 
177
381
  parsedData.requestType = "WrapAndSwap"
178
- parsedData.outputToken = `0x${data.slice(offset, (offset += 40))}` // 20 bytes
382
+ parsedData.outputToken = `0x${data.slice(offset, (offset += wrapOpReturnLength.outputToken))}`
179
383
  parsedData.outputAmount = new BigNumber(
180
384
  `0x${data.slice(offset, (offset += wrapOpReturnLength.outputAmount))}`,
181
- ).toFixed(0) // 28 bytes
385
+ ).toFixed(0)
182
386
  parsedData.bridgePercentageFee = new BigNumber(
183
387
  `0x${data.slice(offset, (offset += wrapOpReturnLength.bridgePercentageFee))}`,
184
388
  )
@@ -208,35 +412,34 @@ export function parseWrapRequest(data: string) {
208
412
 
209
413
  export function parseWrapRawRequest(opReturnData: string) {
210
414
  let data = opReturnData.slice(2, 4) === "4c" ? opReturnData.slice(6) : opReturnData.slice(4)
211
-
212
- let appIdHex = data.slice(
213
- wrapOpReturnLength.chainId,
214
- wrapOpReturnLength.chainId + wrapOpReturnLength.appId,
215
- )
216
-
217
- if (!appIdHex) {
415
+ let requestType: string | undefined
416
+ if (data.length === wrapOpReturnV2Length.totalWrapAndSwap) {
417
+ requestType = "WrapAndSwapV2"
418
+ } else if (data.length === wrapOpReturnV2Length.totalWrap) {
419
+ requestType = "WrapV2"
420
+ } else if (data.length === wrapOpReturnLength.totalWrapAndSwap) {
421
+ requestType = "WrapAndSwap"
422
+ } else if (data.length === wrapOpReturnLength.totalWrap) {
423
+ requestType = "Wrap"
424
+ } else {
218
425
  return {
219
426
  status: false,
220
- message: `invalid OP_RETURN data : ${data}`,
221
- code: "INVALID_APP_ID",
427
+ message: `invalid data length : ${data.length}`,
428
+ code: "INVALID_OP_RETURN",
222
429
  }
223
430
  }
224
431
 
225
- let appId = BigNumber(`0x${appIdHex}`).toNumber() // 2 bytes
226
-
227
- // get type base on appId
228
- let requestType = Object.keys(teleswap.requestAppId).find((key) =>
229
- teleswap.requestAppId[key as keyof typeof teleswap.requestAppId].appIds.includes(appId),
230
- )
231
-
232
432
  switch (requestType) {
233
433
  case "Wrap":
234
434
  case "WrapAndSwap":
235
- return parseWrapRequest(data)
435
+ return parseWrapRequestV1(data)
436
+ case "WrapAndSwapV2":
437
+ case "WrapV2":
438
+ return parseWrapRequestV2(data)
236
439
  default:
237
440
  return {
238
441
  status: false,
239
- message: `invalid appId : ${appId}`,
442
+ message: `invalid request`,
240
443
  code: "INVALID_OP_RETURN",
241
444
  }
242
445
  }
@@ -76,7 +76,6 @@ class BitcoinLikeSignTransaction {
76
76
  let type = psbt.getInputType(i)
77
77
 
78
78
  if (usingTweakSignerIfNeeded && type === "nonstandard") {
79
- console.log("using tweak signer")
80
79
  let a = tweakSigner(privateKey, this.network)
81
80
  await psbt.signInputAsync(i, a, sighashTypes)
82
81
  } else {