@ickb/sdk 1000.0.40 → 1000.0.52

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/esm/index.js CHANGED
@@ -1,100 +1,195 @@
1
1
  import { ccc } from "@ckb-ccc/core";
2
- import { collect, epochCompare, CapacityManager, SmartTransaction, epochAdd, asyncBinarySearch, RestrictedTransaction, } from "@ickb/utils";
2
+ import { collect, epochCompare, CapacityManager, SmartTransaction, epochAdd, asyncBinarySearch, RestrictedTransaction, binarySearch, } from "@ickb/utils";
3
3
  import { convert, ICKB_DEPOSIT_CAP, ickbExchangeRatio, IckbUdtManager, LogicManager, OwnedOwnerManager, } from "@ickb/core";
4
4
  import { DaoManager } from "@ickb/dao";
5
- import { Info, OrderManager, Ratio, } from "@ickb/order";
5
+ import { Info, OrderManager, } from "@ickb/order";
6
+ /**
7
+ * Controller for managing iCKB operations.
8
+ */
6
9
  export class IckbController {
7
- constructor(ickbUdtManager, logicManager, ownedOwnerManager, orderManager, daoManager) {
10
+ /**
11
+ * Creates an instance of IckbController.
12
+ * @param ickbUdtManager - The manager for iCKB UDT operations.
13
+ * @param logicManager - The logic manager for handling business logic.
14
+ * @param ownedOwnerManager - The manager for owned owner operations.
15
+ * @param orderManager - The manager for order operations.
16
+ * @param daoManager - The manager for DAO operations.
17
+ */
18
+ constructor(ickbUdtManager, logicManager, ownedOwnerManager, orderManager, daoManager, bots) {
8
19
  this.ickbUdtManager = ickbUdtManager;
9
20
  this.logicManager = logicManager;
10
21
  this.ownedOwnerManager = ownedOwnerManager;
11
22
  this.orderManager = orderManager;
12
23
  this.daoManager = daoManager;
24
+ this.bots = bots;
13
25
  }
14
- static fromDeps({ xudt, dao, ickbLogic, ownedOwner, order, }) {
15
- const daoManager = DaoManager.fromDeps(dao);
16
- const { script: { codeHash, hashType }, cellDeps, } = xudt;
17
- const ickbXudt = {
18
- script: new ccc.Script(codeHash, hashType, [ickbLogic.script.hash(), "00000080"].join("")),
26
+ /**
27
+ * Creates an instance of IckbController from script dependencies.
28
+ * @param deps - The script dependencies.
29
+ * @param deps.udt - The script dependencies for UDT.
30
+ * @param deps.dao - The script dependencies for DAO.
31
+ * @param deps.ickbLogic - The script dependencies for iCKB logic.
32
+ * @param deps.ownedOwner - The script dependencies for owned owner.
33
+ * @param deps.order - The script dependencies for order.
34
+ * @returns An instance of IckbController.
35
+ */
36
+ static fromDeps(deps, bots) {
37
+ const { udt: { script: { codeHash, hashType }, cellDeps, }, ickbLogic: { script: ickbLogicScript }, } = deps;
38
+ const daoManager = DaoManager.fromDeps(deps);
39
+ const udt = {
40
+ script: new ccc.Script(codeHash, hashType, [ickbLogicScript.hash(), "00000080"].join("")),
19
41
  cellDeps,
20
42
  };
21
- const ickbUdtManager = IckbUdtManager.fromDeps(ickbXudt, daoManager);
22
- return new IckbController(ickbUdtManager, LogicManager.fromDeps(ickbLogic, daoManager, ickbUdtManager), OwnedOwnerManager.fromDeps(ownedOwner, daoManager, ickbUdtManager), OrderManager.fromDeps(order, ickbUdtManager), daoManager);
43
+ const ickbUdtManager = IckbUdtManager.fromDeps({ udt }, daoManager);
44
+ return new IckbController(ickbUdtManager, LogicManager.fromDeps(deps, daoManager, ickbUdtManager), OwnedOwnerManager.fromDeps(deps, daoManager, ickbUdtManager), OrderManager.fromDeps(deps, ickbUdtManager), daoManager, bots);
23
45
  }
24
- previewConversion(isCkb2Udt, amount, rate, fee) {
25
- let convertedAmount = convert(isCkb2Udt, amount, rate);
26
- if (fee) {
27
- const { numerator, denominator } = fee;
28
- convertedAmount -= (convertedAmount * numerator) / denominator;
46
+ /**
47
+ * Previews the conversion between CKB and UDT.
48
+ * @param conversion - The conversion parameters.
49
+ * @param conversion.isCkb2Udt - Indicates if the conversion is from CKB to UDT.
50
+ * @param conversion.amount - The amount to convert.
51
+ * @param conversion.rate - The exchange rate for conversion.
52
+ * @param conversion.fee - The fee for the conversion.
53
+ * @returns The rate and converted amount.
54
+ *
55
+ * Fee meaning examples:
56
+ * - 100000n => 0.001%
57
+ * - 10000n => 0.01%
58
+ * - 1000n => 0.1%
59
+ * - 100n => 1%
60
+ * - 10n => 10%
61
+ * - 1n => 100%
62
+ * - less than 1n => 0%
63
+ */
64
+ static previewConversion(conversion) {
65
+ const { isCkb2Udt, amount, fee } = conversion;
66
+ let rate = conversion.rate;
67
+ rate = "dao" in rate ? ickbExchangeRatio(rate) : rate;
68
+ if (fee > ccc.Zero) {
69
+ const { ckbScale, udtScale } = rate;
70
+ rate = {
71
+ ckbScale,
72
+ // Worst case scenario where fee applies to the full amount
73
+ udtScale: udtScale + (isCkb2Udt ? 1n : -1n) * (udtScale / fee),
74
+ };
29
75
  }
30
- return convertedAmount;
76
+ const convertedAmount = amount > ccc.Zero ? convert(isCkb2Udt, amount, rate) : ccc.Zero;
77
+ return { rate, convertedAmount };
31
78
  }
32
- // TODO streamline parameters with previewConversion
79
+ /**
80
+ * Converts between CKB and UDT based on the provided options.
81
+ * @param options - The conversion options.
82
+ * @param options.conversion - The conversion parameters.
83
+ * @param options.conversion.isCkb2Udt - Indicates if the conversion is from CKB to UDT.
84
+ * @param options.conversion.amount - The amount to convert.
85
+ * @param options.conversion.rate - The exchange rate for conversion.
86
+ * @param options.conversion.ckbMinMatchLog - Minimum CKB match log (optional).
87
+ * @param options.conversion.ckbMinFee - Minimum CKB fee (optional).
88
+ * @param options.signer - The signer for the transaction.
89
+ * @param options.userCells - The user's cells.
90
+ * @param options.system - The current system state.
91
+ * @param options.filters - The filters for the conversion.
92
+ * @param options.filters.isReadyOnly - Indicates if only ready conversions should be considered.
93
+ * @param options.filters.isFulfilledOnly - Indicates if only fulfilled conversions should be considered.
94
+ * @returns A promise that resolves to the conversion result or undefined.
95
+ */
33
96
  async convert(options) {
34
- const { isCkb2Udt, amount, system, signer } = options;
35
- // TODO: RatioLike and specify fee!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
36
- // Or let outside specify adjusted rate...
37
- const info = Info.create(isCkb2Udt, Ratio.from(system.exchangeRatio));
38
- const address = await signer.getRecommendedAddressObj();
97
+ // Get user lock
98
+ const { system, signer } = options;
99
+ const lock = (await signer.getRecommendedAddressObj()).script;
100
+ // Normalize rate
101
+ const { rate } = IckbController.previewConversion({
102
+ ...options.conversion,
103
+ amount: ccc.Zero,
104
+ });
105
+ const { isCkb2Udt, amount, ckbMinMatchLog } = options.conversion;
106
+ const info = Info.create(isCkb2Udt, rate, ckbMinMatchLog);
107
+ // feeRate is a good approximation of the bot tx size matching the order
108
+ const ckbMinFee = options.conversion.ckbMinFee ?? 10n * system.feeRate;
109
+ const conversion = {
110
+ isCkb2Udt,
111
+ amount,
112
+ rate,
113
+ info,
114
+ ckbMinFee,
115
+ lock,
116
+ };
39
117
  const N = isCkb2Udt
40
118
  ? Number(amount / system.ckbDepositCap)
41
- : system.deposits.slice(0, 30).length;
119
+ : system.depositPool.slice(0, 30).length;
42
120
  const cache = Array(N);
43
- const attempt = (n) => {
121
+ const cachedAttempt = (n) => {
44
122
  n = N - n;
45
- return (cache[n] =
46
- cache[n] ?? this.attemptConversion(n, info, address, options));
123
+ return (cache[n] = cache[n] ?? this.attempt(n, conversion, options));
47
124
  };
48
- return attempt(await asyncBinarySearch(N, async (n) => (await attempt(n)) !== undefined));
125
+ return cachedAttempt(await asyncBinarySearch(N, async (n) => (await cachedAttempt(n)) !== undefined));
49
126
  }
50
- async attemptConversion(n, info, address, { signer, isCkb2Udt, amount, userCells, system: { feeRate, tip, deposits, ckbDepositCap, exchangeRatio }, }) {
127
+ /**
128
+ * Attempts to perform a conversion based on the provided parameters.
129
+ * @param n - The size of deposit to make or withdraw from.
130
+ * @param conversion - The conversion parameters.
131
+ * @param conversion.isCkb2Udt - Indicates if the conversion is from CKB to UDT.
132
+ * @param conversion.amount - The amount to convert.
133
+ * @param conversion.rate - The exchange rate for conversion.
134
+ * @param conversion.info - Additional information for the conversion.
135
+ * @param conversion.ckbMinFee - Minimum CKB fee.
136
+ * @param conversion.lock - The script lock for the transaction.
137
+ * @param options - Additional options for the conversion.
138
+ * @returns A promise that resolves to the conversion result or undefined.
139
+ */
140
+ async attempt(n, conversion, options) {
51
141
  try {
142
+ const { isCkb2Udt, rate, info, ckbMinFee, lock } = conversion;
143
+ const { signer, userCells, filters, system } = options;
144
+ const { feeRate, ckbDepositCap, exchangeRatio, depositPool } = system;
52
145
  const tx = SmartTransaction.default();
53
- const maturities = [];
146
+ const maturities = [[0n, 1n, 80n]]; // 3 minutes minimum
54
147
  let ckbFee = ccc.Zero;
148
+ let amount = conversion.amount;
149
+ let udtWithdrawed = ccc.Zero;
150
+ // Core protocol
55
151
  if (n > 0) {
56
152
  if (isCkb2Udt) {
57
153
  amount -= ckbDepositCap * BigInt(n);
58
- if (amount < 0n) {
154
+ if (amount < ccc.Zero) {
59
155
  // Too many Deposits respectfully to the amount
60
156
  return undefined;
61
157
  }
62
- this.logicManager.deposit(tx, n, ckbDepositCap, address.script);
158
+ this.logicManager.deposit(tx, n, ckbDepositCap, lock);
63
159
  }
64
160
  else {
65
- const myDeposits = deposits.slice(0, n);
161
+ const myDeposits = depositPool.slice(0, n);
66
162
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
67
- amount -= myDeposits.slice(-1)[0].udtCumulative;
68
- if (amount < 0n) {
163
+ udtWithdrawed = myDeposits.slice(-1)[0].udtCumulative;
164
+ amount -= udtWithdrawed;
165
+ if (amount < ccc.Zero) {
69
166
  // Too many Withdrawal Requests respectfully to the amount
70
167
  return undefined;
71
168
  }
72
- this.ownedOwnerManager.requestWithdrawal(tx, myDeposits, address.script);
169
+ this.ownedOwnerManager.requestWithdrawal(tx, myDeposits, lock);
73
170
  maturities.push(...myDeposits.map((d) => d.maturity));
74
171
  }
75
172
  }
76
- if (amount > 0n) {
77
- this.orderManager.mint(tx, address.script, info, isCkb2Udt ? amount : ccc.Zero, isCkb2Udt ? ccc.Zero : amount);
78
- const ratio = isCkb2Udt ? info.ckbToUdt : info.udtToCkb;
79
- const convertedAmount = convert(isCkb2Udt, amount, ratio);
173
+ // Order protocol
174
+ if (amount > ccc.Zero) {
175
+ this.orderManager.mint(tx, lock, info, {
176
+ ckbValue: isCkb2Udt ? amount : ccc.Zero,
177
+ udtValue: isCkb2Udt ? ccc.Zero : amount,
178
+ });
179
+ const convertedAmount = convert(isCkb2Udt, amount, rate);
80
180
  ckbFee = isCkb2Udt
81
181
  ? amount - convert(false, convertedAmount, exchangeRatio)
82
182
  : convert(true, amount, exchangeRatio) - convertedAmount;
83
- maturities.push(
84
- // TODO: use real world data from deposits, open orders and bot balances
85
- orderMaturityEstimate(isCkb2Udt, amount, tip));
86
- }
87
- // Check that order provides enough fee to the bot for being matched
88
- // feeRate is a good approximation of the bot tx size matching the order
89
- if (10n * (feeRate - ckbFee) > ckbFee) {
90
- return undefined;
183
+ maturities.push(orderMaturityEstimate(isCkb2Udt, amount, udtWithdrawed, system));
184
+ // Check that order provides enough fee to the bot for being matched
185
+ if (ckbFee < ckbMinFee) {
186
+ return undefined;
187
+ }
91
188
  }
92
189
  const { receipts, withdrawalGroups, orders, udts, capacities } = userCells;
93
190
  this.logicManager.completeDeposit(tx, receipts);
94
- this.ownedOwnerManager.withdraw(tx, withdrawalGroups, {
95
- isReadyOnly: true,
96
- });
97
- this.orderManager.melt(tx, orders);
191
+ this.ownedOwnerManager.withdraw(tx, withdrawalGroups, filters);
192
+ this.orderManager.melt(tx, orders, filters);
98
193
  this.ickbUdtManager.addUdts(tx, udts);
99
194
  CapacityManager.addCapacities(tx, capacities);
100
195
  // Throw an error if inputs do not cover for outputs
@@ -112,22 +207,47 @@ export class IckbController {
112
207
  return undefined;
113
208
  }
114
209
  }
115
- // TODO: Allow filtering which cells are fetched
116
- async getL1State(client, locks, options) {
210
+ /**
211
+ * Retrieves the L1 state based on the provided parameters.
212
+ * @param client - The client to interact with the blockchain.
213
+ * @param filter - The set of filters to apply.
214
+ * @param locks - The script locks to filter the user cells.
215
+ * @param options - Optional parameters for the state retrieval.
216
+ * @param options.minLockUp - The minimum lock-up period (optional).
217
+ * @param options.maxLockUp - The maximum lock-up period (optional).
218
+ * @returns A promise that resolves to an object containing the system state and user cells.
219
+ */
220
+ async getL1State(client, filter, locks, options) {
117
221
  const tip = await client.getTipHeader();
118
222
  const onChain = true;
119
223
  const opts = { ...options, tip, onChain };
120
- const [feeRate, depositPool, capacities, udts, receipts, withdrawalGroups, orders, deposits, withdrawalRequests,] = await Promise.all([
224
+ const [feeRate, depositPool, capacities, udts, receipts, withdrawalGroups, orders, deposits, withdrawalRequests, botCapacities,] = await Promise.all([
121
225
  client.getFeeRate(),
122
- collect(this.logicManager.findDeposits(client, opts)),
123
- collect(CapacityManager.findCapacities(client, locks, opts)),
124
- collect(this.ickbUdtManager.findUdts(client, locks, opts)),
125
- collect(this.logicManager.findReceipts(client, locks, opts)),
126
- collect(this.ownedOwnerManager.findWithdrawalGroups(client, locks, opts)),
127
- collect(this.orderManager.findOrders(client)),
128
- collect(this.daoManager.findDeposits(client, locks, opts)),
129
- collect(this.daoManager.findWithdrawalRequests(client, locks, opts)),
130
- // TODO: fetch bot cells for estimating timings
226
+ filter.has("depositPool")
227
+ ? collect(this.logicManager.findDeposits(client, opts))
228
+ : [],
229
+ filter.has("capacities")
230
+ ? collect(CapacityManager.findCapacities(client, locks, opts))
231
+ : [],
232
+ filter.has("udts")
233
+ ? collect(this.ickbUdtManager.findUdts(client, locks, opts))
234
+ : [],
235
+ filter.has("receipts")
236
+ ? collect(this.logicManager.findReceipts(client, locks, opts))
237
+ : [],
238
+ filter.has("withdrawalGroups")
239
+ ? collect(this.ownedOwnerManager.findWithdrawalGroups(client, locks, opts))
240
+ : [],
241
+ filter.has("orders") ? collect(this.orderManager.findOrders(client)) : [],
242
+ filter.has("deposits")
243
+ ? collect(this.daoManager.findDeposits(client, locks, opts))
244
+ : [],
245
+ filter.has("withdrawalRequests")
246
+ ? collect(this.daoManager.findWithdrawalRequests(client, locks, opts))
247
+ : [],
248
+ filter.has("ckbBots")
249
+ ? collect(CapacityManager.findCapacities(client, locks, opts))
250
+ : [],
131
251
  ]);
132
252
  // Sort depositPool by maturity
133
253
  depositPool.sort((a, b) => epochCompare(a.maturity, b.maturity));
@@ -150,6 +270,11 @@ export class IckbController {
150
270
  }
151
271
  const exchangeRatio = ickbExchangeRatio(tip);
152
272
  const ckbDepositCap = convert(false, ICKB_DEPOSIT_CAP, exchangeRatio);
273
+ // Calculate the ckb ready to match incoming transactions
274
+ let ckbBots = botCapacities.reduce((acc, c) => acc + c.ckbValue, ccc.Zero);
275
+ // Each bot keeps a reserve of CKB for operations
276
+ ckbBots -= ccc.numFrom(this.bots.length) * ccc.fixedPointFrom("2000");
277
+ ckbBots = ckbBots > ccc.Zero ? ckbBots : ccc.Zero;
153
278
  return {
154
279
  system: {
155
280
  feeRate,
@@ -157,8 +282,9 @@ export class IckbController {
157
282
  exchangeRatio,
158
283
  ckbDepositCap,
159
284
  udtDepositCap: ICKB_DEPOSIT_CAP,
160
- deposits: cumulativeDepositPool,
161
- orders: nonUserOrders,
285
+ depositPool: cumulativeDepositPool,
286
+ orderPool: nonUserOrders,
287
+ ckbBots,
162
288
  },
163
289
  user: {
164
290
  capacities,
@@ -171,39 +297,41 @@ export class IckbController {
171
297
  },
172
298
  };
173
299
  }
174
- // TODO: Allow filtering which cells are accounted for
175
- static getBalance({ capacities, udts, receipts, withdrawalGroups, orders, }) {
176
- const cells = [
177
- capacities,
178
- udts,
179
- receipts,
180
- ].flat();
181
- for (const { owner, owned } of withdrawalGroups) {
182
- cells.push(owned, owner);
183
- }
184
- for (const { master, order } of orders) {
185
- cells.push(master, order);
186
- }
187
- let ckb = ccc.Zero;
188
- let udt = ccc.Zero;
189
- for (const cell of cells) {
190
- ckb += cell.cell.cellOutput.capacity;
191
- udt += cell.udtValue ?? ccc.Zero;
192
- }
193
- return {
194
- ckb,
195
- udt,
196
- };
197
- }
198
300
  }
199
- // Estimate bot ability to fulfill orders:
200
- // - CKB to iCKB orders at 100k CKB every minute
201
- // - iCKB to CKB orders at 200 CKB every minute
202
- function orderMaturityEstimate(isCkb2Udt, amount, tip) {
203
- return epochAdd(tip.epoch, [
301
+ /**
302
+ * Estimates the maturity of an order based on the type of conversion and amount.
303
+ *
304
+ * @param isCkb2Udt - A boolean indicating if the order is from CKB to UDT.
305
+ * @param amount - The amount of CKB or UDT involved in the order.
306
+ * @param udtWithdrawed - The amount of UDT that has been withdrawn by the current conversion via core.
307
+ * @param system - The current system state, which includes the block header tip, order pool, deposit pool, CKB bots, and exchange ratio.
308
+ *
309
+ * @returns The estimated maturity epoch for the order.
310
+ */
311
+ function orderMaturityEstimate(isCkb2Udt, amount, udtWithdrawed, system) {
312
+ const { tip, orderPool, depositPool, ckbBots, exchangeRatio } = system;
313
+ // Maturity estimate a priori, the estimation is based on:
314
+ // - CKB to iCKB orders at 100k CKB every minute
315
+ // - iCKB to CKB orders at 200 CKB every minute
316
+ let maturity = epochAdd(tip.epoch, [
204
317
  0n,
205
318
  1n + amount / ccc.fixedPointFrom(isCkb2Udt ? 100000 : 200),
206
319
  4n * 60n,
207
320
  ]);
321
+ if (isCkb2Udt) {
322
+ return maturity;
323
+ }
324
+ if (depositPool.length > 0) {
325
+ const udtWaiting = orderPool
326
+ .filter((o) => o.isUdt2CkbMatchable())
327
+ .reduce((acc, o) => acc + o.udtValue, ccc.Zero);
328
+ const udtAvailable = convert(isCkb2Udt, ckbBots, exchangeRatio);
329
+ const udtToConvert = amount + udtWithdrawed + udtWaiting - udtAvailable;
330
+ const i = binarySearch(depositPool.length,
331
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
332
+ (n) => depositPool[n].udtCumulative >= udtToConvert);
333
+ maturity = depositPool[i]?.maturity ?? maturity;
334
+ }
335
+ return maturity;
208
336
  }
209
337
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAc,MAAM,eAAe,CAAC;AAChD,OAAO,EACL,OAAO,EACP,YAAY,EACZ,eAAe,EACf,gBAAgB,EAIhB,QAAQ,EACR,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,OAAO,EACP,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,iBAAiB,GAIlB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAgB,MAAM,WAAW,CAAC;AACrD,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,KAAK,GAIN,MAAM,aAAa,CAAC;AAErB,MAAM,OAAO,cAAc;IACzB,YACkB,cAA8B,EAC9B,YAA0B,EAC1B,iBAAoC,EACpC,YAA0B,EAC1B,UAAsB;QAJtB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,eAAU,GAAV,UAAU,CAAY;IACrC,CAAC;IAEJ,MAAM,CAAC,QAAQ,CAAC,EACd,IAAI,EACJ,GAAG,EACH,SAAS,EACT,UAAU,EACV,KAAK,GAON;QACC,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAE5C,MAAM,EACJ,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAC9B,QAAQ,GACT,GAAG,IAAI,CAAC;QACT,MAAM,QAAQ,GAAG;YACf,MAAM,EAAE,IAAI,GAAG,CAAC,MAAM,CACpB,QAAQ,EACR,QAAQ,EACR,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,CAAY,CAC1D;YACD,QAAQ;SACT,CAAC;QACF,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAErE,OAAO,IAAI,cAAc,CACvB,cAAc,EACd,YAAY,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,EAC5D,iBAAiB,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,cAAc,CAAC,EAClE,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,EAC5C,UAAU,CACX,CAAC;IACJ,CAAC;IAED,iBAAiB,CACf,SAAkB,EAClB,MAAsB,EACtB,IAAuC,EACvC,GAGC;QAED,IAAI,eAAe,GAAG,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAEvD,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;YACvC,eAAe,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,GAAG,WAAW,CAAC;QACjE,CAAC;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,oDAAoD;IACpD,KAAK,CAAC,OAAO,CAAC,OAYb;QACC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QACtD,yEAAyE;QACzE,0CAA0C;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,wBAAwB,EAAE,CAAC;QACxD,MAAM,CAAC,GAAG,SAAS;YACjB,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;YACvC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC;QACxC,MAAM,KAAK,GAAG,KAAK,CAAwC,CAAC,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,CAAC,CAAS,EAAyC,EAAE;YACnE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACV,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBACd,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACnE,CAAC,CAAC;QACF,OAAO,OAAO,CACZ,MAAM,iBAAiB,CACrB,CAAC,EACD,KAAK,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CACtD,CACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,CAAS,EACT,IAAU,EACV,OAAoB,EACpB,EACE,MAAM,EACN,SAAS,EACT,MAAM,EACN,SAAS,EACT,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,GACvB;QAE3C,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,gBAAgB,CAAC,OAAO,EAAE,CAAC;YACtC,MAAM,UAAU,GAAY,EAAE,CAAC;YAC/B,IAAI,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC;YAEtB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,IAAI,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;oBACpC,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;wBAChB,+CAA+C;wBAC/C,OAAO,SAAS,CAAC;oBACnB,CAAC;oBACD,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBAClE,CAAC;qBAAM,CAAC;oBACN,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACxC,oEAAoE;oBACpE,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,aAAa,CAAC;oBACjD,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;wBAChB,0DAA0D;wBAC1D,OAAO,SAAS,CAAC;oBACnB,CAAC;oBACD,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CACtC,EAAE,EACF,UAAU,EACV,OAAO,CAAC,MAAM,CACf,CAAC;oBACF,UAAU,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;YAED,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;gBAChB,IAAI,CAAC,YAAY,CAAC,IAAI,CACpB,EAAE,EACF,OAAO,CAAC,MAAM,EACd,IAAI,EACJ,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAC7B,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAC9B,CAAC;gBAEF,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACxD,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC1D,MAAM,GAAG,SAAS;oBAChB,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC;oBACzD,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG,eAAe,CAAC;gBAE3D,UAAU,CAAC,IAAI;gBACb,wEAAwE;gBACxE,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,CAC9C,CAAC;YACJ,CAAC;YAED,oEAAoE;YACpE,wEAAwE;YACxE,IAAI,GAAG,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC;gBACtC,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAC5D,SAAS,CAAC;YAEZ,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAChD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,EAAE,gBAAgB,EAAE;gBACpD,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACnC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACtC,eAAe,CAAC,aAAa,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;YAE9C,oDAAoD;YACpD,MAAM,IAAI,qBAAqB,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAEnE,+CAA+C;YAC/C,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC1C,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAClC,CAAC;YAEF,OAAO;gBACL,EAAE;gBACF,MAAM;gBACN,QAAQ;aACT,CAAC;YAEF,6DAA6D;QAC/D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,gDAAgD;IAChD,KAAK,CAAC,UAAU,CACd,MAAkB,EAClB,KAAmB,EACnB,OAGC;QAKD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,YAAY,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;QAC1C,MAAM,CACJ,OAAO,EACP,WAAW,EACX,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,gBAAgB,EAChB,MAAM,EACN,QAAQ,EACR,kBAAkB,EACnB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpB,MAAM,CAAC,UAAU,EAAE;YACnB,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACrD,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACzE,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACpE,+CAA+C;SAChD,CAAC,CAAC;QAEH,+BAA+B;QAC/B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjE,qDAAqD;QACrD,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,MAAM,qBAAqB,GAA4B,EAAE,CAAC;QAC1D,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;YAClC,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC;YAClC,qBAAqB,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,UAAU,GAAiB,EAAE,CAAC;QACpC,MAAM,aAAa,GAAgB,EAAE,CAAC;QACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;gBAC5B,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;QAEtE,OAAO;YACL,MAAM,EAAE;gBACN,OAAO;gBACP,GAAG;gBACH,aAAa;gBACb,aAAa;gBACb,aAAa,EAAE,gBAAgB;gBAC/B,QAAQ,EAAE,qBAAqB;gBAC/B,MAAM,EAAE,aAAa;aACtB;YACD,IAAI,EAAE;gBACJ,UAAU;gBACV,IAAI;gBACJ,QAAQ;gBACR,gBAAgB;gBAChB,MAAM,EAAE,UAAU;gBAClB,QAAQ;gBACR,kBAAkB;aACnB;SACF,CAAC;IACJ,CAAC;IAED,sDAAsD;IACtD,MAAM,CAAC,UAAU,CAAC,EAChB,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,gBAAgB,EAChB,MAAM,GACI;QACV,MAAM,KAAK,GAAoD;YAC7D,UAAU;YACV,IAAI;YACJ,QAAQ;SACT,CAAC,IAAI,EAAE,CAAC;QACT,KAAK,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,gBAAgB,EAAE,CAAC;YAChD,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3B,CAAC;QACD,KAAK,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,MAAM,EAAE,CAAC;YACvC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;QACnB,IAAI,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC;QACnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YACrC,GAAG,IAAI,IAAI,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC;QACnC,CAAC;QACD,OAAO;YACL,GAAG;YACH,GAAG;SACJ,CAAC;IACJ,CAAC;CACF;AAoCD,0CAA0C;AAC1C,gDAAgD;AAChD,+CAA+C;AAC/C,SAAS,qBAAqB,CAC5B,SAAkB,EAClB,MAAc,EACd,GAA0B;IAE1B,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE;QACzB,EAAE;QACF,EAAE,GAAG,MAAM,GAAG,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;QAC1D,EAAE,GAAG,GAAG;KACT,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EACL,OAAO,EACP,YAAY,EACZ,eAAe,EACf,gBAAgB,EAIhB,QAAQ,EACR,iBAAiB,EACjB,qBAAqB,EAErB,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,OAAO,EACP,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,iBAAiB,GAIlB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAgB,MAAM,WAAW,CAAC;AACrD,OAAO,EACL,IAAI,EACJ,YAAY,GAGb,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,OAAO,cAAc;IACzB;;;;;;;OAOG;IACH,YACkB,cAA8B,EAC9B,YAA0B,EAC1B,iBAAoC,EACpC,YAA0B,EAC1B,UAAsB,EACtB,IAAkB;QALlB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,eAAU,GAAV,UAAU,CAAY;QACtB,SAAI,GAAJ,IAAI,CAAc;IACjC,CAAC;IAEJ;;;;;;;;;OASG;IACH,MAAM,CAAC,QAAQ,CACb,IAMC,EACD,IAAkB;QAElB,MAAM,EACJ,GAAG,EAAE,EACH,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAC9B,QAAQ,GACT,EACD,SAAS,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,GACvC,GAAG,IAAI,CAAC;QAET,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG;YACV,MAAM,EAAE,IAAI,GAAG,CAAC,MAAM,CACpB,QAAQ,EACR,QAAQ,EACR,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,CAAY,CACzD;YACD,QAAQ;SACT,CAAC;QACF,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;QAEpE,OAAO,IAAI,cAAc,CACvB,cAAc,EACd,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,EACvD,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,EAC5D,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,EAC3C,UAAU,EACV,IAAI,CACL,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,iBAAiB,CAAC,UAKxB;QACC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC;QAC9C,IAAI,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC3B,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEtD,IAAI,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;YACpC,IAAI,GAAG;gBACL,QAAQ;gBACR,2DAA2D;gBAC3D,QAAQ,EAAE,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC;aAC/D,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,GACnB,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;QAElE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;IACnC,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,OAAO,CAAC,OAYb;QACC,gBAAgB;QAChB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QACnC,MAAM,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,wBAAwB,EAAE,CAAC,CAAC,MAAM,CAAC;QAE9D,iBAAiB;QACjB,MAAM,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC,iBAAiB,CAAC;YAChD,GAAG,OAAO,CAAC,UAAU;YACrB,MAAM,EAAE,GAAG,CAAC,IAAI;SACjB,CAAC,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAC1D,wEAAwE;QACxE,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,IAAI,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC;QACvE,MAAM,UAAU,GAAG;YACjB,SAAS;YACT,MAAM;YACN,IAAI;YACJ,IAAI;YACJ,SAAS;YACT,IAAI;SACL,CAAC;QAEF,MAAM,CAAC,GAAG,SAAS;YACjB,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;YACvC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC;QAE3C,MAAM,KAAK,GAAG,KAAK,CAAwC,CAAC,CAAC,CAAC;QAC9D,MAAM,aAAa,GAAG,CACpB,CAAS,EAC8B,EAAE;YACzC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACV,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACvE,CAAC,CAAC;QAEF,OAAO,aAAa,CAClB,MAAM,iBAAiB,CACrB,CAAC,EACD,KAAK,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAC5D,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,OAAO,CACnB,CAAS,EACT,UAOC,EACD,OAAqE;QAErE,IAAI,CAAC;YACH,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;YAC9D,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;YACvD,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;YAEtE,MAAM,EAAE,GAAG,gBAAgB,CAAC,OAAO,EAAE,CAAC;YACtC,MAAM,UAAU,GAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB;YACrE,IAAI,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC;YACtB,IAAI,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;YAC/B,IAAI,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC;YAE7B,gBAAgB;YAChB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,IAAI,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;oBACpC,IAAI,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;wBACtB,+CAA+C;wBAC/C,OAAO,SAAS,CAAC;oBACnB,CAAC;oBACD,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;gBACxD,CAAC;qBAAM,CAAC;oBACN,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC3C,oEAAoE;oBACpE,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,aAAa,CAAC;oBACvD,MAAM,IAAI,aAAa,CAAC;oBACxB,IAAI,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;wBACtB,0DAA0D;wBAC1D,OAAO,SAAS,CAAC;oBACnB,CAAC;oBACD,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;oBAC/D,UAAU,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;YAED,iBAAiB;YACjB,IAAI,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;gBACtB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;oBACrC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI;oBACvC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;iBACxC,CAAC,CAAC;gBAEH,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBACzD,MAAM,GAAG,SAAS;oBAChB,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,eAAe,EAAE,aAAa,CAAC;oBACzD,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG,eAAe,CAAC;gBAE3D,UAAU,CAAC,IAAI,CACb,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,CAAC,CAChE,CAAC;gBAEF,oEAAoE;gBACpE,IAAI,MAAM,GAAG,SAAS,EAAE,CAAC;oBACvB,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC;YAED,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAC5D,SAAS,CAAC;YAEZ,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAChD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;YAC/D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACtC,eAAe,CAAC,aAAa,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;YAE9C,oDAAoD;YACpD,MAAM,IAAI,qBAAqB,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAEnE,+CAA+C;YAC/C,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC1C,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAClC,CAAC;YAEF,OAAO;gBACL,EAAE;gBACF,MAAM;gBACN,QAAQ;aACT,CAAC;YAEF,6DAA6D;QAC/D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,UAAU,CACd,MAAkB,EAClB,MAAwD,EACxD,KAAmB,EACnB,OAGC;QAKD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,YAAY,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;QAC1C,MAAM,CACJ,OAAO,EACP,WAAW,EACX,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,gBAAgB,EAChB,MAAM,EACN,QAAQ,EACR,kBAAkB,EAClB,aAAa,EACd,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpB,MAAM,CAAC,UAAU,EAAE;YACnB,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;gBACvB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACvD,CAAC,CAAC,EAAE;YACN,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;gBACtB,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC9D,CAAC,CAAC,EAAE;YACN,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;gBAChB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC5D,CAAC,CAAC,EAAE;YACN,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;gBACpB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC9D,CAAC,CAAC,EAAE;YACN,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;gBAC5B,CAAC,CAAC,OAAO,CACL,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CACjE;gBACH,CAAC,CAAC,EAAE;YACN,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YACzE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;gBACpB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC5D,CAAC,CAAC,EAAE;YACN,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC;gBAC9B,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBACtE,CAAC,CAAC,EAAE;YACN,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC;gBACnB,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC9D,CAAC,CAAC,EAAE;SACP,CAAC,CAAC;QAEH,+BAA+B;QAC/B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjE,qDAAqD;QACrD,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,MAAM,qBAAqB,GAA+B,EAAE,CAAC;QAC7D,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;YAClC,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC;YAClC,qBAAqB,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,UAAU,GAAiB,EAAE,CAAC;QACpC,MAAM,aAAa,GAAgB,EAAE,CAAC;QACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;gBAC5B,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;QAEtE,yDAAyD;QACzD,IAAI,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3E,iDAAiD;QACjD,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACtE,OAAO,GAAG,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;QAElD,OAAO;YACL,MAAM,EAAE;gBACN,OAAO;gBACP,GAAG;gBACH,aAAa;gBACb,aAAa;gBACb,aAAa,EAAE,gBAAgB;gBAC/B,WAAW,EAAE,qBAAqB;gBAClC,SAAS,EAAE,aAAa;gBACxB,OAAO;aACR;YACD,IAAI,EAAE;gBACJ,UAAU;gBACV,IAAI;gBACJ,QAAQ;gBACR,gBAAgB;gBAChB,MAAM,EAAE,UAAU;gBAClB,QAAQ;gBACR,kBAAkB;aACnB;SACF,CAAC;IACJ,CAAC;CACF;AA6ED;;;;;;;;;GASG;AACH,SAAS,qBAAqB,CAC5B,SAAkB,EAClB,MAAc,EACd,aAA6B,EAC7B,MAAmB;IAEnB,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAEvE,0DAA0D;IAC1D,gDAAgD;IAChD,+CAA+C;IAC/C,IAAI,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE;QACjC,EAAE;QACF,EAAE,GAAG,MAAM,GAAG,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;QAC1D,EAAE,GAAG,GAAG;KACT,CAAC,CAAC;IAEH,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,SAAS;aACzB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC;aACrC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;QAEhE,MAAM,YAAY,GAAG,MAAM,GAAG,aAAa,GAAG,UAAU,GAAG,YAAY,CAAC;QACxE,MAAM,CAAC,GAAG,YAAY,CACpB,WAAW,CAAC,MAAM;QAClB,oEAAoE;QACpE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC,aAAa,IAAI,YAAY,CACrD,CAAC;QAEF,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,IAAI,QAAQ,CAAC;IAClD,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ickb/sdk",
3
- "version": "1000.0.40",
3
+ "version": "1000.0.52",
4
4
  "description": "iCKB SDK built on top of CCC",
5
5
  "author": "phroi",
6
6
  "license": "MIT",
@@ -23,18 +23,18 @@
23
23
  "provenance": true
24
24
  },
25
25
  "devDependencies": {
26
- "@eslint/js": "^9.25.1",
27
- "eslint": "^9.25.1",
26
+ "@eslint/js": "^9.27.0",
27
+ "eslint": "^9.27.0",
28
28
  "prettier": "^3.5.3",
29
29
  "typescript": "^5.8.3",
30
- "typescript-eslint": "^8.31.1"
30
+ "typescript-eslint": "^8.32.1"
31
31
  },
32
32
  "dependencies": {
33
- "@ckb-ccc/core": "^1.8.0",
34
- "@ickb/core": "^1000.0.39",
35
- "@ickb/dao": "^1000.0.35",
36
- "@ickb/order": "^1000.0.36",
37
- "@ickb/utils": "^1000.0.40"
33
+ "@ckb-ccc/core": "^1.8.1",
34
+ "@ickb/core": "^1000.0.52",
35
+ "@ickb/dao": "^1000.0.52",
36
+ "@ickb/order": "^1000.0.52",
37
+ "@ickb/utils": "^1000.0.52"
38
38
  },
39
39
  "scripts": {
40
40
  "build": "pnpm run build:esm && pnpm run build:cjs && node dist/cjs/index.js",