@1stdex/first-sdk 1.0.38 → 1.0.40

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.
@@ -25,7 +25,7 @@ const toCurrency = (currencyDto) => ({
25
25
  * @param chainId - chain id from {@link CHAIN_IDS}
26
26
  * @param txHash - transaction hash of the limit order placement
27
27
  * @param options {@link DefaultReadContractOptions} options.
28
- * @returns Limit order result with make, taken, and spent flows
28
+ * @returns Limit order result with make, taken, and spent flows, plus provider and referrer fees
29
29
  *
30
30
  * @example
31
31
  * import { getLimitOrderResult } from '@clober/v2-sdk'
@@ -47,6 +47,8 @@ export const getLimitOrderResult = async ({ chainId, txHash, options, }) => {
47
47
  });
48
48
  const makeEvents = logs.filter((log) => log.eventName === 'Make');
49
49
  const takeEvents = logs.filter((log) => log.eventName === 'Take');
50
+ const providerFeeEvents = logs.filter((log) => log.eventName === 'ProviderFeePaid');
51
+ const referrerFeeEvents = logs.filter((log) => log.eventName === 'ReferrerFeePaid');
50
52
  if (makeEvents.length === 0 && takeEvents.length === 0) {
51
53
  throw new Error('No Make or Take events found in transaction');
52
54
  }
@@ -251,6 +253,79 @@ export const getLimitOrderResult = async ({ chainId, txHash, options, }) => {
251
253
  if (!defaultMakeCurrency) {
252
254
  throw new Error('Unable to determine currencies from transaction events');
253
255
  }
256
+ // Process provider fees
257
+ const providerFeeMap = new Map();
258
+ providerFeeEvents.forEach((event) => {
259
+ const currency = getAddress(event.args.currency);
260
+ const current = providerFeeMap.get(currency) || 0n;
261
+ providerFeeMap.set(currency, current + event.args.amount);
262
+ });
263
+ // Process referrer fees
264
+ const referrerFeeMap = new Map();
265
+ referrerFeeEvents.forEach((event) => {
266
+ const currency = getAddress(event.args.currency);
267
+ const current = referrerFeeMap.get(currency) || 0n;
268
+ referrerFeeMap.set(currency, current + event.args.amount);
269
+ });
270
+ // Build currency map from book info (fees are paid in base/quote currencies)
271
+ const feeCurrencyMap = new Map();
272
+ bookInfoMap.forEach((bookInfo) => {
273
+ const base = toCurrency(bookInfo.base);
274
+ const quote = toCurrency(bookInfo.quote);
275
+ feeCurrencyMap.set(base.address, base);
276
+ feeCurrencyMap.set(quote.address, quote);
277
+ });
278
+ // Also add make currencies if we have them
279
+ if (makeBookBase) {
280
+ feeCurrencyMap.set(makeBookBase.address, makeBookBase);
281
+ }
282
+ if (makeBookQuote) {
283
+ feeCurrencyMap.set(makeBookQuote.address, makeBookQuote);
284
+ }
285
+ // Build provider fees array
286
+ const providerFees = Array.from(providerFeeMap.entries())
287
+ .map(([address, amount]) => {
288
+ const currency = feeCurrencyMap.get(address);
289
+ if (!currency) {
290
+ throw new Error(`Currency not found for address: ${address}`);
291
+ }
292
+ return {
293
+ currency,
294
+ amount: formatUnits(amount, currency.decimals),
295
+ direction: 'out',
296
+ };
297
+ })
298
+ .sort((a, b) => {
299
+ if (a.currency.address < b.currency.address) {
300
+ return -1;
301
+ }
302
+ if (a.currency.address > b.currency.address) {
303
+ return 1;
304
+ }
305
+ return 0;
306
+ });
307
+ // Build referrer fees array
308
+ const referrerFees = Array.from(referrerFeeMap.entries())
309
+ .map(([address, amount]) => {
310
+ const currency = feeCurrencyMap.get(address);
311
+ if (!currency) {
312
+ throw new Error(`Currency not found for address: ${address}`);
313
+ }
314
+ return {
315
+ currency,
316
+ amount: formatUnits(amount, currency.decimals),
317
+ direction: 'out',
318
+ };
319
+ })
320
+ .sort((a, b) => {
321
+ if (a.currency.address < b.currency.address) {
322
+ return -1;
323
+ }
324
+ if (a.currency.address > b.currency.address) {
325
+ return 1;
326
+ }
327
+ return 0;
328
+ });
254
329
  return {
255
330
  make: {
256
331
  currency: makeCurrency || defaultMakeCurrency,
@@ -272,6 +347,8 @@ export const getLimitOrderResult = async ({ chainId, txHash, options, }) => {
272
347
  events: spentEvents,
273
348
  averagePrice: spentAveragePrice,
274
349
  },
350
+ providerFees,
351
+ referrerFees,
275
352
  };
276
353
  };
277
354
  /**
@@ -279,7 +356,7 @@ export const getLimitOrderResult = async ({ chainId, txHash, options, }) => {
279
356
  * @param chainId - chain id from {@link CHAIN_IDS}
280
357
  * @param txHash - transaction hash of the make order placement
281
358
  * @param options {@link DefaultReadContractOptions} options.
282
- * @returns Make order result with make flow and price
359
+ * @returns Make order result with taken and spent flows (no make), plus provider and referrer fees
283
360
  *
284
361
  * @example
285
362
  * import { getMakeOrderResult } from '@clober/v2-sdk'
@@ -299,49 +376,204 @@ export const getMakeOrderResult = async ({ chainId, txHash, options, }) => {
299
376
  abi: BOOK_MANAGER_ABI,
300
377
  logs: receipt.logs,
301
378
  });
302
- const makeEvents = logs.filter((log) => log.eventName === 'Make');
303
- if (makeEvents.length === 0) {
304
- throw new Error('No Make events found in transaction');
379
+ const takeEvents = logs.filter((log) => log.eventName === 'Take');
380
+ const providerFeeEvents = logs.filter((log) => log.eventName === 'ProviderFeePaid');
381
+ const referrerFeeEvents = logs.filter((log) => log.eventName === 'ReferrerFeePaid');
382
+ if (takeEvents.length === 0) {
383
+ throw new Error('No Take events found in transaction');
305
384
  }
306
385
  // Get unique bookIds and fetch book info
307
- const bookIds = new Set(makeEvents.map((e) => e.args.bookId));
386
+ const bookIds = new Set(takeEvents.map((e) => e.args.bookId));
308
387
  const bookInfoMap = new Map();
309
388
  await Promise.all(Array.from(bookIds).map(async (bookId) => {
310
389
  const info = await fetchBookInfo(chainId, bookId);
311
390
  bookInfoMap.set(bookId, info);
312
391
  }));
313
- // Process Make events
314
- const makeBookId = makeEvents[0].args.bookId;
315
- const makeBookInfo = bookInfoMap.get(makeBookId);
316
- const makeBookBase = toCurrency(makeBookInfo.base);
317
- const makeBookQuote = toCurrency(makeBookInfo.quote);
318
- const makeUnitSize = BigInt(makeBookInfo.unitSize);
319
- // Determine if Make book is bid or ask
320
- const { quoteTokenAddress: marketQuoteAddress } = getMarketId(chainId, [
321
- makeBookBase.address,
322
- makeBookQuote.address,
323
- ]);
324
- const isMakeBidBook = isAddressEqual(makeBookQuote.address, marketQuoteAddress);
325
- // Calculate total make amount
326
- const totalMakeUnits = makeEvents.reduce((sum, e) => sum + e.args.unit, 0n);
327
- const totalMakeAmount = totalMakeUnits * makeUnitSize;
328
- // Get make tick (should be same for all Make events in same transaction)
329
- const makeTick = BigInt(makeEvents[0].args.tick);
330
- // Calculate make currency and amount
331
- const makeCurrency = isMakeBidBook ? makeBookQuote : makeBookBase;
332
- const makeAmount = formatUnits(totalMakeAmount, makeCurrency.decimals);
333
- // Calculate make price
334
- const rawPrice = isMakeBidBook
335
- ? toPrice(makeTick)
336
- : toPrice(invertTick(makeTick));
337
- const makePrice = formatPrice(rawPrice, makeBookQuote.decimals, makeBookBase.decimals);
392
+ // Process Take events
393
+ const takeEventsWithInfo = takeEvents.map((e) => {
394
+ const bookInfo = bookInfoMap.get(e.args.bookId);
395
+ const base = toCurrency(bookInfo.base);
396
+ const quote = toCurrency(bookInfo.quote);
397
+ const unitSize = BigInt(bookInfo.unitSize);
398
+ // Determine if Take book is bid or ask
399
+ const { quoteTokenAddress: marketQuoteAddress } = getMarketId(chainId, [
400
+ base.address,
401
+ quote.address,
402
+ ]);
403
+ const isTakeBidBook = isAddressEqual(quote.address, marketQuoteAddress);
404
+ const tick = BigInt(e.args.tick);
405
+ const units = e.args.unit;
406
+ const rawAmount = units * unitSize;
407
+ // Calculate price
408
+ const rawPrice = isTakeBidBook ? toPrice(tick) : toPrice(invertTick(tick));
409
+ const price = formatPrice(rawPrice, quote.decimals, base.decimals);
410
+ // Calculate taken and spent amounts
411
+ let takenAmount;
412
+ let spentAmount;
413
+ let takenCurrency;
414
+ let spentCurrency;
415
+ if (isTakeBidBook) {
416
+ // Bid book: taking means receiving base, spending quote
417
+ takenAmount = quoteToBase(tick, rawAmount, false);
418
+ spentAmount = rawAmount;
419
+ takenCurrency = base;
420
+ spentCurrency = quote;
421
+ }
422
+ else {
423
+ // Ask book: taking means receiving quote, spending base
424
+ takenAmount = rawAmount;
425
+ spentAmount = baseToQuote(invertTick(tick), rawAmount, false);
426
+ takenCurrency = quote;
427
+ spentCurrency = base;
428
+ }
429
+ return {
430
+ price,
431
+ takenAmount: formatUnits(takenAmount, takenCurrency.decimals),
432
+ spentAmount: formatUnits(spentAmount, spentCurrency.decimals),
433
+ takenCurrency,
434
+ spentCurrency,
435
+ };
436
+ });
437
+ // Group by currency and calculate totals
438
+ const takenEventsMap = new Map();
439
+ const spentEventsMap = new Map();
440
+ takeEventsWithInfo.forEach((event) => {
441
+ const takenKey = event.takenCurrency.address;
442
+ const spentKey = event.spentCurrency.address;
443
+ if (!takenEventsMap.has(takenKey)) {
444
+ takenEventsMap.set(takenKey, []);
445
+ }
446
+ if (!spentEventsMap.has(spentKey)) {
447
+ spentEventsMap.set(spentKey, []);
448
+ }
449
+ takenEventsMap.get(takenKey).push({
450
+ price: event.price,
451
+ amount: event.takenAmount,
452
+ });
453
+ spentEventsMap.get(spentKey).push({
454
+ price: event.price,
455
+ amount: event.spentAmount,
456
+ });
457
+ });
458
+ // Calculate totals and averages
459
+ const calculateTotalAndAverage = (events) => {
460
+ if (events.length === 0) {
461
+ return { total: '0', averagePrice: '0' };
462
+ }
463
+ const total = events.reduce((sum, e) => sum + Number(e.amount), 0);
464
+ const totalWeightedPrice = events.reduce((sum, e) => sum + Number(e.price) * Number(e.amount), 0);
465
+ const averagePrice = total === 0 ? '0' : (totalWeightedPrice / total).toString();
466
+ return { total: total.toString(), averagePrice };
467
+ };
468
+ // Determine taken and spent currencies from Take events
469
+ let takenCurrency;
470
+ let spentCurrency;
471
+ let takenEvents = [];
472
+ let spentEvents = [];
473
+ // Use the most common currencies from Take events
474
+ if (takenEventsMap.size > 0) {
475
+ const firstKey = Array.from(takenEventsMap.keys())[0];
476
+ takenCurrency = takeEventsWithInfo.find((e) => e.takenCurrency.address === firstKey).takenCurrency;
477
+ takenEvents = takenEventsMap.get(firstKey);
478
+ }
479
+ else {
480
+ // Fallback: use first Take event currency
481
+ takenCurrency = takeEventsWithInfo[0].takenCurrency;
482
+ }
483
+ if (spentEventsMap.size > 0) {
484
+ const firstKey = Array.from(spentEventsMap.keys())[0];
485
+ spentCurrency = takeEventsWithInfo.find((e) => e.spentCurrency.address === firstKey).spentCurrency;
486
+ spentEvents = spentEventsMap.get(firstKey);
487
+ }
488
+ else {
489
+ // Fallback: use first Take event currency
490
+ spentCurrency = takeEventsWithInfo[0].spentCurrency;
491
+ }
492
+ const { total: takenTotal, averagePrice: takenAveragePrice } = calculateTotalAndAverage(takenEvents);
493
+ const { total: spentTotal, averagePrice: spentAveragePrice } = calculateTotalAndAverage(spentEvents);
494
+ // Process provider fees
495
+ const providerFeeMap = new Map();
496
+ providerFeeEvents.forEach((event) => {
497
+ const currency = getAddress(event.args.currency);
498
+ const current = providerFeeMap.get(currency) || 0n;
499
+ providerFeeMap.set(currency, current + event.args.amount);
500
+ });
501
+ // Process referrer fees
502
+ const referrerFeeMap = new Map();
503
+ referrerFeeEvents.forEach((event) => {
504
+ const currency = getAddress(event.args.currency);
505
+ const current = referrerFeeMap.get(currency) || 0n;
506
+ referrerFeeMap.set(currency, current + event.args.amount);
507
+ });
508
+ // Build currency map from book info (fees are paid in base/quote currencies)
509
+ const feeCurrencyMap = new Map();
510
+ bookInfoMap.forEach((bookInfo) => {
511
+ const base = toCurrency(bookInfo.base);
512
+ const quote = toCurrency(bookInfo.quote);
513
+ feeCurrencyMap.set(base.address, base);
514
+ feeCurrencyMap.set(quote.address, quote);
515
+ });
516
+ // Build provider fees array
517
+ const providerFees = Array.from(providerFeeMap.entries())
518
+ .map(([address, amount]) => {
519
+ const currency = feeCurrencyMap.get(address);
520
+ if (!currency) {
521
+ throw new Error(`Currency not found for address: ${address}`);
522
+ }
523
+ return {
524
+ currency,
525
+ amount: formatUnits(amount, currency.decimals),
526
+ direction: 'out',
527
+ };
528
+ })
529
+ .sort((a, b) => {
530
+ if (a.currency.address < b.currency.address) {
531
+ return -1;
532
+ }
533
+ if (a.currency.address > b.currency.address) {
534
+ return 1;
535
+ }
536
+ return 0;
537
+ });
538
+ // Build referrer fees array
539
+ const referrerFees = Array.from(referrerFeeMap.entries())
540
+ .map(([address, amount]) => {
541
+ const currency = feeCurrencyMap.get(address);
542
+ if (!currency) {
543
+ throw new Error(`Currency not found for address: ${address}`);
544
+ }
545
+ return {
546
+ currency,
547
+ amount: formatUnits(amount, currency.decimals),
548
+ direction: 'out',
549
+ };
550
+ })
551
+ .sort((a, b) => {
552
+ if (a.currency.address < b.currency.address) {
553
+ return -1;
554
+ }
555
+ if (a.currency.address > b.currency.address) {
556
+ return 1;
557
+ }
558
+ return 0;
559
+ });
338
560
  return {
339
- make: {
340
- currency: makeCurrency,
341
- amount: makeAmount,
561
+ taken: {
562
+ currency: takenCurrency,
563
+ amount: takenTotal,
564
+ direction: 'out',
565
+ events: takenEvents,
566
+ averagePrice: takenAveragePrice,
567
+ },
568
+ spent: {
569
+ currency: spentCurrency,
570
+ amount: spentTotal,
342
571
  direction: 'in',
343
- price: makePrice,
572
+ events: spentEvents,
573
+ averagePrice: spentAveragePrice,
344
574
  },
575
+ providerFees,
576
+ referrerFees,
345
577
  };
346
578
  };
347
579
  //# sourceMappingURL=order-result.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"order-result.js","sourceRoot":"","sources":["../../../../src/views/market/order-result.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,UAAU,EACV,IAAI,EACJ,cAAc,EACd,cAAc,GACf,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAa,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAGlE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAyClE,MAAM,aAAa,GAAG,KAAK,EACzB,OAAkB,EAClB,MAAc,EACK,EAAE;IACrB,MAAM,EACJ,IAAI,EAAE,EAAE,IAAI,EAAE,GACf,GAAG,MAAM,QAAQ,CAAC,GAAG,CAKpB,OAAO,EACP,4BAA4B,EAC5B,yJAAyJ,EACzJ;QACE,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;KAC1B,CACF,CAAC;IAEF,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,WAKnB,EAAY,EAAE,CAAC,CAAC;IACf,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;IACnC,IAAI,EAAE,WAAW,CAAC,IAAI;IACtB,MAAM,EAAE,WAAW,CAAC,MAAM;IAC1B,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;CACvC,CAAC,CAAC;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,EACxC,OAAO,EACP,MAAM,EACN,OAAO,GAKR,EAUE,EAAE;IACH,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;KAC3D,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAE3E,MAAM,IAAI,GAAG,cAAc,CAAC;QAC1B,GAAG,EAAE,gBAAgB;QACrB,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAC5B,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,KAAK,MAAM,CACnB,CAAC;IACjB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAC5B,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,KAAK,MAAM,CACnB,CAAC;IAEjB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,yCAAyC;IACzC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC;QACtB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;QACvC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;KACxC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,IAAI,GAAG,EAAoB,CAAC;IAChD,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACvC,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAClD,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC,CACH,CAAC;IAEF,+BAA+B;IAC/B,IAAI,YAAY,GAAoB,IAAI,CAAC;IACzC,IAAI,UAAU,GAAG,GAAG,CAAC;IACrB,IAAI,SAAS,GAAG,GAAG,CAAC;IACpB,IAAI,YAAY,GAAoB,IAAI,CAAC;IACzC,IAAI,aAAa,GAAoB,IAAI,CAAC;IAC1C,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,MAAM,CAAC;QAC9C,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;QAClD,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC7C,aAAa,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAEnD,uCAAuC;QACvC,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE;YACrE,YAAY,CAAC,OAAO;YACpB,aAAa,CAAC,OAAO;SACtB,CAAC,CAAC;QACH,aAAa,GAAG,cAAc,CAAC,aAAa,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QAE1E,8BAA8B;QAC9B,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC5E,MAAM,eAAe,GAAG,cAAc,GAAG,YAAY,CAAC;QAEtD,yEAAyE;QACzE,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAElD,qCAAqC;QACrC,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC;QAC5D,UAAU,GAAG,WAAW,CAAC,eAAe,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;QAEjE,uBAAuB;QACvB,MAAM,QAAQ,GAAG,aAAa;YAC5B,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;YACnB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QAClC,SAAS,GAAG,WAAW,CACrB,QAAQ,EACR,aAAa,CAAC,QAAQ,EACtB,YAAY,CAAC,QAAQ,CACtB,CAAC;IACJ,CAAC;IAED,+BAA+B;IAC/B,MAAM,kBAAkB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAE,CAAC;QACjD,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAE3C,uCAAuC;QACvC,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE;YACrE,IAAI,CAAC,OAAO;YACZ,KAAK,CAAC,OAAO;SACd,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QAExE,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC1B,MAAM,SAAS,GAAG,KAAK,GAAG,QAAQ,CAAC;QAEnC,kBAAkB;QAClB,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3E,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEnE,oCAAoC;QACpC,IAAI,WAAmB,CAAC;QACxB,IAAI,WAAmB,CAAC;QACxB,IAAI,aAAuB,CAAC;QAC5B,IAAI,aAAuB,CAAC;QAE5B,IAAI,aAAa,EAAE,CAAC;YAClB,wDAAwD;YACxD,WAAW,GAAG,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YAClD,WAAW,GAAG,SAAS,CAAC;YACxB,aAAa,GAAG,IAAI,CAAC;YACrB,aAAa,GAAG,KAAK,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,wDAAwD;YACxD,WAAW,GAAG,SAAS,CAAC;YACxB,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YAC9D,aAAa,GAAG,KAAK,CAAC;YACtB,aAAa,GAAG,IAAI,CAAC;QACvB,CAAC;QAED,OAAO;YACL,KAAK;YACL,WAAW,EAAE,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,QAAQ,CAAC;YAC7D,WAAW,EAAE,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,QAAQ,CAAC;YAC7D,aAAa;YACb,aAAa;SACd,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,yCAAyC;IACzC,MAAM,cAAc,GAAG,IAAI,GAAG,EAA+C,CAAC;IAC9E,MAAM,cAAc,GAAG,IAAI,GAAG,EAA+C,CAAC;IAE9E,kBAAkB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC;QAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC;QAE7C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClC,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClC,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QAED,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,IAAI,CAAC;YACjC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,KAAK,CAAC,WAAW;SAC1B,CAAC,CAAC;QACH,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,IAAI,CAAC;YACjC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,KAAK,CAAC,WAAW;SAC1B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,gCAAgC;IAChC,MAAM,wBAAwB,GAAG,CAC/B,MAA2C,EACF,EAAE;QAC3C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC;QAC3C,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACnE,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CACtC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EACpD,CAAC,CACF,CAAC;QACF,MAAM,YAAY,GAChB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,GAAG,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC9D,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,CAAC;IACnD,CAAC,CAAC;IAEF,uCAAuC;IACvC,IAAI,aAAuB,CAAC;IAC5B,IAAI,aAAuB,CAAC;IAC5B,IAAI,WAAW,GAAwC,EAAE,CAAC;IAC1D,IAAI,WAAW,GAAwC,EAAE,CAAC;IAE1D,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,IAAI,YAAY,IAAI,aAAa,EAAE,CAAC;QAC3E,0DAA0D;QAC1D,qBAAqB;QACrB,qEAAqE;QACrE,gEAAgE;QAChE,oEAAoE;QACpE,EAAE;QACF,+EAA+E;QAC/E,+EAA+E;QAE/E,MAAM,qBAAqB,GAAG,YAAY,CAAC,CAAC,wBAAwB;QACpE,MAAM,qBAAqB,GAAG,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,4BAA4B;QAExG,4CAA4C;QAC5C,aAAa,GAAG,qBAAqB,CAAC;QACtC,aAAa,GAAG,qBAAqB,CAAC;QAEtC,kDAAkD;QAClD,KAAK,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;YAC7D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,KAAK,WAAW,CAC9C,CAAC,aAAa,CAAC;YACjB,IAAI,cAAc,CAAC,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpE,aAAa,GAAG,QAAQ,CAAC;gBACzB,WAAW,GAAG,MAAM,CAAC;gBACrB,MAAM;YACR,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;YAC7D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,KAAK,WAAW,CAC9C,CAAC,aAAa,CAAC;YACjB,IAAI,cAAc,CAAC,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpE,aAAa,GAAG,QAAQ,CAAC;gBACzB,WAAW,GAAG,MAAM,CAAC;gBACrB,MAAM;YACR,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;YACvD,aAAa,GAAG,kBAAkB,CAAC,IAAI,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,KAAK,QAAQ,CAC3C,CAAC,aAAa,CAAC;YACjB,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;QAC9C,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;YACvD,aAAa,GAAG,kBAAkB,CAAC,IAAI,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,KAAK,QAAQ,CAC3C,CAAC,aAAa,CAAC;YACjB,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;QAC9C,CAAC;IACH,CAAC;SAAM,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,4EAA4E;QAC5E,kDAAkD;QAClD,IAAI,cAAc,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;YACvD,aAAa,GAAG,kBAAkB,CAAC,IAAI,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,KAAK,QAAQ,CAC3C,CAAC,aAAa,CAAC;YACjB,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,0CAA0C;YAC1C,aAAa,GAAG,kBAAkB,CAAC,CAAC,CAAE,CAAC,aAAa,CAAC;QACvD,CAAC;QAED,IAAI,cAAc,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;YACvD,aAAa,GAAG,kBAAkB,CAAC,IAAI,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,KAAK,QAAQ,CAC3C,CAAC,aAAa,CAAC;YACjB,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,0CAA0C;YAC1C,aAAa,GAAG,kBAAkB,CAAC,CAAC,CAAE,CAAC,aAAa,CAAC;QACvD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,0EAA0E;QAC1E,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,GAC1D,wBAAwB,CAAC,WAAW,CAAC,CAAC;IACxC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,GAC1D,wBAAwB,CAAC,WAAW,CAAC,CAAC;IAExC,oEAAoE;IACpE,sFAAsF;IACtF,MAAM,mBAAmB,GACvB,YAAY,IAAI,aAAa,IAAI,kBAAkB,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC;IAExE,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IAED,OAAO;QACL,IAAI,EAAE;YACJ,QAAQ,EAAE,YAAY,IAAI,mBAAmB;YAC7C,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,IAAa;YACxB,KAAK,EAAE,SAAS;SACjB;QACD,KAAK,EAAE;YACL,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,KAAc;YACzB,MAAM,EAAE,WAAW;YACnB,YAAY,EAAE,iBAAiB;SAChC;QACD,KAAK,EAAE;YACL,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,IAAa;YACxB,MAAM,EAAE,WAAW;YACnB,YAAY,EAAE,iBAAiB;SAChC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EAAE,EACvC,OAAO,EACP,MAAM,EACN,OAAO,GAKR,EAEE,EAAE;IACH,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;KAC3D,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAE3E,MAAM,IAAI,GAAG,cAAc,CAAC;QAC1B,GAAG,EAAE,gBAAgB;QACrB,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAC5B,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,KAAK,MAAM,CACnB,CAAC;IAEjB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IAED,yCAAyC;IACzC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAE9D,MAAM,WAAW,GAAG,IAAI,GAAG,EAAoB,CAAC;IAChD,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACvC,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAClD,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC,CACH,CAAC;IAEF,sBAAsB;IACtB,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,MAAM,CAAC;IAC9C,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;IAClD,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,aAAa,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAEnD,uCAAuC;IACvC,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE;QACrE,YAAY,CAAC,OAAO;QACpB,aAAa,CAAC,OAAO;KACtB,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,cAAc,CAClC,aAAa,CAAC,OAAO,EACrB,kBAAkB,CACnB,CAAC;IAEF,8BAA8B;IAC9B,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC5E,MAAM,eAAe,GAAG,cAAc,GAAG,YAAY,CAAC;IAEtD,yEAAyE;IACzE,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAElD,qCAAqC;IACrC,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC;IAClE,MAAM,UAAU,GAAG,WAAW,CAAC,eAAe,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAEvE,uBAAuB;IACvB,MAAM,QAAQ,GAAG,aAAa;QAC5B,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACnB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,WAAW,CAC3B,QAAQ,EACR,aAAa,CAAC,QAAQ,EACtB,YAAY,CAAC,QAAQ,CACtB,CAAC;IAEF,OAAO;QACL,IAAI,EAAE;YACJ,QAAQ,EAAE,YAAY;YACtB,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,IAAa;YACxB,KAAK,EAAE,SAAS;SACjB;KACF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"order-result.js","sourceRoot":"","sources":["../../../../src/views/market/order-result.ts"],"names":[],"mappings":"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"}