@airgap/icp 0.13.15-beta.6 → 0.13.15-beta.8

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.
@@ -40,8 +40,8 @@ const coinlib_core_1 = require("@airgap/coinlib-core");
40
40
  const index_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/axios-0.19.0/index"));
41
41
  const bignumber_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber"));
42
42
  const errors_1 = require("@airgap/coinlib-core/errors");
43
- const assert_1 = require("@airgap/coinlib-core/utils/assert");
44
43
  const array_1 = require("@airgap/coinlib-core/utils/array");
44
+ const assert_1 = require("@airgap/coinlib-core/utils/assert");
45
45
  const crypto_1 = require("@airgap/crypto");
46
46
  const module_kit_1 = require("@airgap/module-kit");
47
47
  const governance_1 = require("../types/governance");
@@ -134,23 +134,23 @@ class ICPProtocolImpl {
134
134
  case transaction_1.ICPActionType.TRANSFER:
135
135
  return (0, ICPImplementation_1.getDetailsFromSignedTransactionTransfer)(encoded, publicKey.value, this.options.network);
136
136
  case transaction_1.ICPActionType.GET_NEURON_INFO:
137
- return (0, ICPGovernance_1.getDetailsFromSignedGetNeuronInfo)(publicKey.value, this.options.network);
137
+ return (0, ICPGovernance_1.getDetailsFromSignedGetNeuronInfo)(encoded, publicKey.value, this.options.network);
138
138
  case transaction_1.ICPActionType.TRANSFER_TO_SUBACCOUNT:
139
139
  return (0, ICPGovernance_1.getDetailsFromSignedTransferToSubaccount)(encoded, publicKey.value, this.options.network);
140
140
  case transaction_1.ICPActionType.CLAIM_GOVERNANCE:
141
- return (0, ICPGovernance_1.getDetailsFromTransactionClaimGovernance)(publicKey.value, this.options.network);
141
+ return (0, ICPGovernance_1.getDetailsFromSignedClaimGovernance)(encoded, publicKey.value, this.options.network);
142
142
  case transaction_1.ICPActionType.FOLLOW_NEURON:
143
- return (0, ICPGovernance_1.getDetailsFromSignedFollowNeuron)(publicKey.value, this.options.network);
143
+ return (0, ICPGovernance_1.getDetailsFromSignedFollowNeuron)(encoded, publicKey.value, this.options.network);
144
144
  case transaction_1.ICPActionType.DISBURSE:
145
- return (0, ICPGovernance_1.getDetailsFromSignedDisburse)(publicKey.value, this.options.network);
146
- case transaction_1.ICPActionType.INCREASE_DISSOLVING_DELAY:
147
- return (0, ICPGovernance_1.getDetailsFromSignedTransactionIncreaseDelay)(publicKey.value, this.options.network);
145
+ return (0, ICPGovernance_1.getDetailsFromSignedDisburse)(encoded, publicKey.value, this.options.network);
146
+ case transaction_1.ICPActionType.INCREASE_DISSOLVE_DELAY:
147
+ return (0, ICPGovernance_1.getDetailsFromSignedIncreaseDissolveDelay)(encoded, publicKey.value, this.options.network);
148
148
  case transaction_1.ICPActionType.START_DISSOLVING:
149
- return (0, ICPGovernance_1.getDetailsFromSignedStartDissolving)(publicKey.value, this.options.network);
149
+ return (0, ICPGovernance_1.getDetailsFromSignedStartDissolving)(encoded, publicKey.value, this.options.network);
150
150
  case transaction_1.ICPActionType.STOP_DISSOLVING:
151
- return (0, ICPGovernance_1.getDetailsFromSignedTransactionStopDissolving)(publicKey.value, this.options.network);
152
- case transaction_1.ICPActionType.RESTAKE_MATURITY:
153
- return (0, ICPGovernance_1.getDetailsFromSignedTransactionRestakeMaturity)(publicKey.value, this.options.network);
151
+ return (0, ICPGovernance_1.getDetailsFromSignedStopDissolving)(encoded, publicKey.value, this.options.network);
152
+ case transaction_1.ICPActionType.AUTO_STAKE_MATURITY:
153
+ return (0, ICPGovernance_1.getDetailsFromSignedAutoStakeMaturity)(encoded, publicKey.value, this.options.network);
154
154
  default:
155
155
  (0, coinlib_core_1.assertNever)(actionType);
156
156
  throw new errors_1.UnsupportedError(coinlib_core_1.Domain.ICP, 'Unsupported ICP action type');
@@ -168,19 +168,19 @@ class ICPProtocolImpl {
168
168
  case transaction_1.ICPActionType.TRANSFER_TO_SUBACCOUNT:
169
169
  return (0, ICPGovernance_1.getDetailsFromUnsignedTransferToSubaccount)(encoded, publicKey.value, this.options.network);
170
170
  case transaction_1.ICPActionType.CLAIM_GOVERNANCE:
171
- return (0, ICPGovernance_1.getDetailsFromUnsignedClaimGovernance)(publicKey.value, this.options.network);
171
+ return (0, ICPGovernance_1.getDetailsFromUnsignedClaimGovernance)(encoded, publicKey.value, this.options.network);
172
172
  case transaction_1.ICPActionType.DISBURSE:
173
- return (0, ICPGovernance_1.getDetailsFromUnsignedDisburse)(publicKey.value, this.options.network);
174
- case transaction_1.ICPActionType.INCREASE_DISSOLVING_DELAY:
175
- return (0, ICPGovernance_1.getDetailsFromUnsignedTransactionIncreaseDelay)(publicKey.value, this.options.network);
173
+ return (0, ICPGovernance_1.getDetailsFromUnsignedDisburse)(encoded, publicKey.value, this.options.network);
174
+ case transaction_1.ICPActionType.INCREASE_DISSOLVE_DELAY:
175
+ return (0, ICPGovernance_1.getDetailsFromUnsignedIncreaseDissolveDelay)(encoded, publicKey.value, this.options.network);
176
176
  case transaction_1.ICPActionType.START_DISSOLVING:
177
- return (0, ICPGovernance_1.getDetailsFromUnsignedStartDissolving)(publicKey.value, this.options.network);
177
+ return (0, ICPGovernance_1.getDetailsFromUnsignedStartDissolving)(encoded, publicKey.value, this.options.network);
178
178
  case transaction_1.ICPActionType.STOP_DISSOLVING:
179
- return (0, ICPGovernance_1.getDetailsFromUnsignedTransactionStopDissolving)(publicKey.value, this.options.network);
179
+ return (0, ICPGovernance_1.getDetailsFromUnsignedStopDissolving)(encoded, publicKey.value, this.options.network);
180
180
  case transaction_1.ICPActionType.FOLLOW_NEURON:
181
- return (0, ICPGovernance_1.getDetailsFromUnsignedFollowNeuron)(publicKey.value, this.options.network);
182
- case transaction_1.ICPActionType.RESTAKE_MATURITY:
183
- return (0, ICPGovernance_1.getDetailsFromUnsignedTransactionRestakeMaturity)(publicKey.value, this.options.network);
181
+ return (0, ICPGovernance_1.getDetailsFromUnsignedFollowNeuron)(encoded, publicKey.value, this.options.network);
182
+ case transaction_1.ICPActionType.AUTO_STAKE_MATURITY:
183
+ return (0, ICPGovernance_1.getDetailsFromUnsignedAutoStakeMaturity)(encoded, publicKey.value, this.options.network);
184
184
  default:
185
185
  (0, coinlib_core_1.assertNever)(actionType);
186
186
  throw new errors_1.UnsupportedError(coinlib_core_1.Domain.ICP, 'Unsupported ICP action type');
@@ -235,10 +235,10 @@ class ICPProtocolImpl {
235
235
  actionType,
236
236
  encoded: yield (0, ICPGovernance_1.signDisburse)(encoded, secretKey.value, this.options.network.governanceCanisterId)
237
237
  };
238
- case transaction_1.ICPActionType.INCREASE_DISSOLVING_DELAY:
238
+ case transaction_1.ICPActionType.INCREASE_DISSOLVE_DELAY:
239
239
  return {
240
240
  actionType,
241
- encoded: yield (0, ICPGovernance_1.signTransactionIncreaseDelay)(encoded, secretKey.value, this.options.network.governanceCanisterId)
241
+ encoded: yield (0, ICPGovernance_1.signIncreaseDissolveDelay)(encoded, secretKey.value, this.options.network.governanceCanisterId)
242
242
  };
243
243
  case transaction_1.ICPActionType.START_DISSOLVING:
244
244
  return {
@@ -248,17 +248,17 @@ class ICPProtocolImpl {
248
248
  case transaction_1.ICPActionType.STOP_DISSOLVING:
249
249
  return {
250
250
  actionType,
251
- encoded: yield (0, ICPGovernance_1.signTransactionStopDissolving)(encoded, secretKey.value, this.options.network.governanceCanisterId)
251
+ encoded: yield (0, ICPGovernance_1.signStopDissolving)(encoded, secretKey.value, this.options.network.governanceCanisterId)
252
252
  };
253
253
  case transaction_1.ICPActionType.FOLLOW_NEURON:
254
254
  return {
255
255
  actionType,
256
256
  encoded: yield (0, ICPGovernance_1.signFollowNeuron)(encoded, secretKey.value, this.options.network.governanceCanisterId)
257
257
  };
258
- case transaction_1.ICPActionType.RESTAKE_MATURITY:
258
+ case transaction_1.ICPActionType.AUTO_STAKE_MATURITY:
259
259
  return {
260
260
  actionType,
261
- encoded: yield (0, ICPGovernance_1.signTransactionRestakeMaturity)(encoded, secretKey.value, this.options.network.governanceCanisterId)
261
+ encoded: yield (0, ICPGovernance_1.signAutoStakeMaturity)(encoded, secretKey.value, this.options.network.governanceCanisterId)
262
262
  };
263
263
  default:
264
264
  (0, coinlib_core_1.assertNever)(actionType);
@@ -324,7 +324,7 @@ class ICPProtocolImpl {
324
324
  const totalBalance = (0, module_kit_1.newAmount)(mainBalance.total)
325
325
  .blockchain(this.units)
326
326
  .toBigNumber()
327
- .plus((0, module_kit_1.newAmount)(neuronBalance.total).blockchain(this.units).toBigNumber());
327
+ .plus((0, module_kit_1.newAmount)(neuronBalance).blockchain(this.units).toBigNumber());
328
328
  return {
329
329
  total: (0, module_kit_1.newAmount)(totalBalance, 'blockchain'),
330
330
  transferable: mainBalance.total
@@ -498,12 +498,12 @@ class ICPProtocolImpl {
498
498
  return (id === null || id === void 0 ? void 0 : id.toString()) || '';
499
499
  });
500
500
  }
501
- getCurrentDelegateesForPublicKey(publicKey, data) {
501
+ getCurrentDelegateesForPublicKey(_publicKey, data) {
502
502
  return __awaiter(this, void 0, void 0, function* () {
503
503
  // Fetch neurons of address from governance canister (listNeurons)
504
504
  // Fetch followees from each neuron (get_full_neuron_by_id_or_subaccount)
505
505
  // Each of the functions needs a identity (signed user)
506
- return [];
506
+ return (data === null || data === void 0 ? void 0 : data.neuron) ? this.getNeuronFollowees(data.neuron) : [];
507
507
  });
508
508
  }
509
509
  getCurrentDelegateesForAddress(_address, _data) {
@@ -553,26 +553,28 @@ class ICPProtocolImpl {
553
553
  });
554
554
  }
555
555
  getDelegatorDetailsFromPublicKey(publicKey, data) {
556
- var _a, _b, _c, _d;
556
+ var _a, _b, _c, _d, _e;
557
557
  return __awaiter(this, void 0, void 0, function* () {
558
+ const fullNeuron = data === null || data === void 0 ? void 0 : data.neuron;
558
559
  const address = yield this.getAddressFromPublicKey(publicKey);
559
- const availableBalance = yield this.getBalanceOfAddress(address);
560
- const followees = (data === null || data === void 0 ? void 0 : data.neuron) ? this.getNeuronFollowees(data.neuron) : [];
561
- const availableActions = yield this.getAvailableDelegatorActions(publicKey, data === null || data === void 0 ? void 0 : data.neuron);
560
+ const totalBalance = yield this.getBalanceOfPublicKey(publicKey);
561
+ const followees = fullNeuron ? this.getNeuronFollowees(fullNeuron) : [];
562
+ const availableActions = yield this.getAvailableDelegatorActions(publicKey, data === null || data === void 0 ? void 0 : data.followee, fullNeuron);
562
563
  const neuronBalance = yield this.getNeuronBalance(publicKey);
563
564
  const partialNeuron = yield this.getNeuron(publicKey);
564
- const totalBalance = (0, module_kit_1.newAmount)(availableBalance.total).blockchain(this.units);
565
- const subaccountBalance = (0, module_kit_1.newAmount)(neuronBalance.total).blockchain(this.units);
565
+ const balance = (0, module_kit_1.newAmount)(totalBalance.total).blockchain(this.units);
566
+ const subaccountBalance = (0, module_kit_1.newAmount)(neuronBalance).blockchain(this.units);
566
567
  return {
567
568
  address,
568
- balance: totalBalance.value,
569
+ balance: balance.value,
569
570
  delegatees: followees,
570
571
  availableActions: availableActions,
571
572
  subaccountBalance: subaccountBalance.value,
572
573
  stake: (_a = partialNeuron === null || partialNeuron === void 0 ? void 0 : partialNeuron.stake_e8s) === null || _a === void 0 ? void 0 : _a.toString(),
573
574
  votingPower: (_b = partialNeuron === null || partialNeuron === void 0 ? void 0 : partialNeuron.voting_power) === null || _b === void 0 ? void 0 : _b.toString(),
574
575
  age: (_c = partialNeuron === null || partialNeuron === void 0 ? void 0 : partialNeuron.age_seconds) === null || _c === void 0 ? void 0 : _c.toString(),
575
- dissolveDelay: (_d = partialNeuron === null || partialNeuron === void 0 ? void 0 : partialNeuron.dissolve_delay_seconds) === null || _d === void 0 ? void 0 : _d.toString()
576
+ dissolveDelay: (_d = partialNeuron === null || partialNeuron === void 0 ? void 0 : partialNeuron.dissolve_delay_seconds) === null || _d === void 0 ? void 0 : _d.toString(),
577
+ maturity: (_e = fullNeuron === null || fullNeuron === void 0 ? void 0 : fullNeuron.maturity_e8s_equivalent) === null || _e === void 0 ? void 0 : _e.toString()
576
578
  };
577
579
  });
578
580
  }
@@ -584,10 +586,13 @@ class ICPProtocolImpl {
584
586
  getDelegationDetailsFromPublicKey(publicKey, delegatees, data) {
585
587
  return __awaiter(this, void 0, void 0, function* () {
586
588
  if (delegatees.length > 1) {
587
- return Promise.reject('Multiple validators for a single delegation are not supported.');
589
+ return Promise.reject('Multiple followees for a single delegation are not supported.');
588
590
  }
589
- const validator = delegatees[0];
590
- const results = yield Promise.all([this.getDelegatorDetailsFromPublicKey(publicKey, data), this.getDelegateeDetails(validator, data)]);
591
+ const followee = delegatees[0];
592
+ const results = yield Promise.all([
593
+ this.getDelegatorDetailsFromPublicKey(publicKey, Object.assign(Object.assign({}, data), { followee })),
594
+ this.getDelegateeDetails(followee, data)
595
+ ]);
591
596
  const delegatorDetails = results[0];
592
597
  const validatorDetails = results[1];
593
598
  return {
@@ -601,51 +606,42 @@ class ICPProtocolImpl {
601
606
  throw new errors_1.UnsupportedError(coinlib_core_1.Domain.ICP, '`getDelegationDetailsFromAddress` is not supported');
602
607
  });
603
608
  }
604
- getAvailableDelegatorActions(publicKey, fullNeuron) {
609
+ getAvailableDelegatorActions(publicKey, followee, fullNeuron) {
610
+ var _a;
605
611
  return __awaiter(this, void 0, void 0, function* () {
606
612
  const actions = [];
607
- const neuronBalance = yield this.getNeuronBalance(publicKey);
608
- const partialNeuron = yield this.getNeuron(publicKey);
609
- const isStaking = new bignumber_1.default(neuronBalance.total.value).gt(0);
613
+ const results = yield Promise.all([this.getBalanceOfPublicKey(publicKey), this.getNeuronBalance(publicKey), this.getNeuron(publicKey)]);
614
+ const transferableBalance = (_a = results[0].transferable) !== null && _a !== void 0 ? _a : results[0].total;
615
+ const neuronBalance = results[1];
616
+ const partialNeuron = results[2];
617
+ const canStake = new bignumber_1.default(transferableBalance.value).gt(0);
618
+ const isStaking = new bignumber_1.default(neuronBalance.value).gt(0);
610
619
  const hasNeuron = partialNeuron !== undefined;
611
- const isNeuronUpToDate = hasNeuron && partialNeuron.stake_e8s.toString() === (0, module_kit_1.newAmount)(neuronBalance.total).blockchain(this.units).value;
612
- const isFollowing = fullNeuron ? this.getNeuronFollowees(fullNeuron).length > 0 : false;
620
+ const isNeuronUpToDate = !isStaking || (hasNeuron && partialNeuron.stake_e8s.toString() === (0, module_kit_1.newAmount)(neuronBalance).blockchain(this.units).value);
621
+ const canFollow = fullNeuron && followee ? !this.getNeuronFollowees(fullNeuron).includes(followee) : false;
613
622
  const isDissolving = fullNeuron ? this.isNeuronDissolving(fullNeuron) : false;
614
623
  const canDisburse = partialNeuron ? this.canNeuronDisburse(partialNeuron) : false;
615
- if (!isStaking && !hasNeuron) {
624
+ if (canStake && isNeuronUpToDate) {
616
625
  actions.push({
617
- type: governance_1.ICPStakingActionType.CREATE_NEURON,
626
+ type: governance_1.ICPStakingActionType.STAKE_AND_FOLLOW,
618
627
  args: ['followee', 'amount', 'delay']
619
628
  });
620
629
  }
621
- if (isStaking && !hasNeuron) {
630
+ if (!canStake && isStaking && canFollow && isNeuronUpToDate) {
622
631
  actions.push({
623
- type: governance_1.ICPStakingActionType.CLAIM_GOVERNANCE,
624
- args: ['followee', 'amount', 'delay']
625
- });
626
- }
627
- if (!isNeuronUpToDate) {
628
- actions.push({
629
- type: governance_1.ICPStakingActionType.REFRESH_NEURON,
630
- args: ['amount']
632
+ type: governance_1.ICPStakingActionType.FOLLOW,
633
+ args: ['followee']
631
634
  });
632
635
  }
633
- if (isNeuronUpToDate && fullNeuron === undefined) {
636
+ if (isStaking && isNeuronUpToDate) {
634
637
  actions.push({
635
- type: governance_1.ICPStakingActionType.INCREASE_STAKE,
636
- args: ['amount']
638
+ type: governance_1.ICPStakingActionType.INCREASE_DISSOLVE_DELAY,
639
+ args: ['delay']
637
640
  });
638
641
  }
639
- if (isNeuronUpToDate && !isFollowing && fullNeuron !== undefined) {
640
- actions.push({
641
- type: governance_1.ICPStakingActionType.FOLLOW_NEURON,
642
- args: ['followee', 'amount', 'delay']
643
- });
644
- }
645
- if (isFollowing && fullNeuron !== undefined) {
642
+ if (!isNeuronUpToDate) {
646
643
  actions.push({
647
- type: governance_1.ICPStakingActionType.CHANGE_FOLLOWEE,
648
- args: ['followee', 'amount', 'delay']
644
+ type: governance_1.ICPStakingActionType.REFRESH_NEURON
649
645
  });
650
646
  }
651
647
  if (hasNeuron) {
@@ -655,8 +651,6 @@ class ICPProtocolImpl {
655
651
  }
656
652
  if (isStaking && hasNeuron && !isDissolving && fullNeuron !== undefined) {
657
653
  actions.push({
658
- type: governance_1.ICPStakingActionType.INCREASE_DISSOLVING_DELAY
659
- }, {
660
654
  type: governance_1.ICPStakingActionType.START_DISSOLVING
661
655
  });
662
656
  }
@@ -667,7 +661,7 @@ class ICPProtocolImpl {
667
661
  }
668
662
  if (canDisburse) {
669
663
  actions.push({
670
- type: governance_1.ICPStakingActionType.DISBURSE
664
+ type: governance_1.ICPStakingActionType.DISBURSE_AND_UNFOLLOW
671
665
  });
672
666
  }
673
667
  return actions;
@@ -676,60 +670,93 @@ class ICPProtocolImpl {
676
670
  prepareDelegatorActionFromPublicKey(publicKey, type, data) {
677
671
  return __awaiter(this, void 0, void 0, function* () {
678
672
  switch (type) {
679
- case governance_1.ICPStakingActionType.CREATE_NEURON:
680
- case governance_1.ICPStakingActionType.INCREASE_STAKE:
681
- (0, assert_1.assertFields)(`${type} action`, data, 'amount');
682
- return this.prepareTransferToNeuron(publicKey, data.amount);
683
- case governance_1.ICPStakingActionType.CLAIM_GOVERNANCE:
684
- case governance_1.ICPStakingActionType.REFRESH_NEURON:
685
- (0, assert_1.assertFields)(`${type} action`, data, 'amount');
686
- return this.prepareClaimOrRefreshNeuron(publicKey, data.amount);
687
673
  case governance_1.ICPStakingActionType.GET_STAKING_DETAILS:
688
674
  return this.prepareGetStakingDetails();
675
+ case governance_1.ICPStakingActionType.STAKE_AND_FOLLOW:
676
+ (0, assert_1.assertFields)(`${type} action`, data, 'followee', 'amount', 'dissolveDelay');
677
+ return this.prepareTransferToNeuronAndManage(publicKey, data.followee, data.amount, data.dissolveDelay);
678
+ case governance_1.ICPStakingActionType.FOLLOW:
679
+ (0, assert_1.assertFields)(`${type} action`, data, 'followee');
680
+ return this.prepareFollowNeuron(publicKey, data.followee);
681
+ case governance_1.ICPStakingActionType.REFRESH_NEURON:
682
+ return this.prepareClaimOrRefreshNeuron(publicKey);
683
+ case governance_1.ICPStakingActionType.INCREASE_DISSOLVE_DELAY:
684
+ (0, assert_1.assertFields)(`${type} action`, data, 'dissolveDelay');
685
+ return this.prepareIncreaseDissolveDelay(publicKey, data.dissolveDelay);
689
686
  case governance_1.ICPStakingActionType.START_DISSOLVING:
690
687
  return this.prepareStartDissolving(publicKey);
691
- case governance_1.ICPStakingActionType.DISBURSE:
692
- return this.prepareDisburse(publicKey);
688
+ case governance_1.ICPStakingActionType.STOP_DISSOLVING:
689
+ return this.prepareStopDissolving(publicKey);
690
+ case governance_1.ICPStakingActionType.DISBURSE_AND_UNFOLLOW:
691
+ return this.prepareDisburseAndUnfollow(publicKey);
693
692
  default:
694
693
  return Promise.reject(`Delegator action type ${type} is not supported.`);
695
694
  }
696
695
  });
697
696
  }
698
- prepareTransferToNeuron(publicKey, amount) {
697
+ prepareGetStakingDetails() {
699
698
  return __awaiter(this, void 0, void 0, function* () {
700
- const amountBigInt = BigInt(amount);
701
- const feeBigInt = BigInt((0, module_kit_1.newAmount)(this.feeDefaults.medium).blockchain(this.units).value);
702
699
  return [
703
700
  (0, module_kit_1.newUnsignedTransaction)({
704
- transactions: yield Promise.all([
705
- (0, ICPGovernance_1.prepareTransferToSubaccount)(publicKey.value, this.options.network.governanceCanisterId, amountBigInt, feeBigInt),
706
- (0, ICPGovernance_1.prepareClaimOrRefreshNeuron)(publicKey.value)
707
- ])
701
+ transactions: yield (0, ICPGovernance_1.prepareGetNeuronInfo)()
708
702
  })
709
703
  ];
710
704
  });
711
705
  }
712
- prepareClaimOrRefreshNeuron(publicKey, amount) {
706
+ prepareTransferToNeuronAndManage(publicKey, followee, amount, dissolveDelay) {
707
+ var _a, _b;
713
708
  return __awaiter(this, void 0, void 0, function* () {
714
709
  const amountBigInt = BigInt(amount);
715
710
  const feeBigInt = BigInt((0, module_kit_1.newAmount)(this.feeDefaults.medium).blockchain(this.units).value);
711
+ const partialNeuron = yield this.getNeuron(publicKey);
712
+ const currentDissolveDelay = (_b = (_a = partialNeuron === null || partialNeuron === void 0 ? void 0 : partialNeuron.dissolve_delay_seconds) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : '0';
713
+ const differenceInDissolveDelay = new bignumber_1.default(dissolveDelay).minus(currentDissolveDelay);
716
714
  return [
717
715
  (0, module_kit_1.newUnsignedTransaction)({
718
- transactions: (yield Promise.all([
719
- amountBigInt > 0
720
- ? (0, ICPGovernance_1.prepareTransferToSubaccount)(publicKey.value, this.options.network.governanceCanisterId, amountBigInt, feeBigInt)
721
- : Promise.resolve(undefined),
722
- (0, ICPGovernance_1.prepareClaimOrRefreshNeuron)(publicKey.value)
723
- ])).filter((tx) => tx !== undefined)
716
+ transactions: (0, array_1.flattenArray)(yield Promise.all([
717
+ ...(amountBigInt > BigInt(0)
718
+ ? [
719
+ (0, ICPGovernance_1.prepareTransferToSubaccount)(publicKey.value, this.options.network.governanceCanisterId, amountBigInt, feeBigInt),
720
+ (0, ICPGovernance_1.prepareClaimOrRefreshNeuron)(publicKey.value)
721
+ ]
722
+ : []),
723
+ (0, ICPGovernance_1.prepareFollowNeuron)(publicKey.value, BigInt(followee)),
724
+ differenceInDissolveDelay.gt(0)
725
+ ? (0, ICPGovernance_1.prepareIncreaseDissolveDelay)(publicKey.value, BigInt(differenceInDissolveDelay.toFixed()))
726
+ : Promise.resolve([]),
727
+ (0, ICPGovernance_1.prepareAutoStakeMaturity)(publicKey.value)
728
+ ]))
724
729
  })
725
730
  ];
726
731
  });
727
732
  }
728
- prepareGetStakingDetails() {
733
+ prepareFollowNeuron(publicKey, followee) {
734
+ return __awaiter(this, void 0, void 0, function* () {
735
+ return [
736
+ (0, module_kit_1.newUnsignedTransaction)({
737
+ transactions: yield (0, ICPGovernance_1.prepareFollowNeuron)(publicKey.value, BigInt(followee))
738
+ })
739
+ ];
740
+ });
741
+ }
742
+ prepareClaimOrRefreshNeuron(publicKey) {
743
+ return __awaiter(this, void 0, void 0, function* () {
744
+ return [
745
+ (0, module_kit_1.newUnsignedTransaction)({
746
+ transactions: yield (0, ICPGovernance_1.prepareClaimOrRefreshNeuron)(publicKey.value)
747
+ })
748
+ ];
749
+ });
750
+ }
751
+ prepareIncreaseDissolveDelay(publicKey, dissolveDelay) {
752
+ var _a, _b;
729
753
  return __awaiter(this, void 0, void 0, function* () {
754
+ const partialNeuron = yield this.getNeuron(publicKey);
755
+ const currentDissolveDelay = (_b = (_a = partialNeuron === null || partialNeuron === void 0 ? void 0 : partialNeuron.dissolve_delay_seconds) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : '0';
756
+ const differenceInDissolveDelay = new bignumber_1.default(dissolveDelay).minus(currentDissolveDelay);
730
757
  return [
731
758
  (0, module_kit_1.newUnsignedTransaction)({
732
- transactions: [yield (0, ICPGovernance_1.prepareGetNeuronInfo)()]
759
+ transactions: yield (0, ICPGovernance_1.prepareIncreaseDissolveDelay)(publicKey.value, BigInt(differenceInDissolveDelay.toFixed()))
733
760
  })
734
761
  ];
735
762
  });
@@ -738,16 +765,25 @@ class ICPProtocolImpl {
738
765
  return __awaiter(this, void 0, void 0, function* () {
739
766
  return [
740
767
  (0, module_kit_1.newUnsignedTransaction)({
741
- transactions: [yield (0, ICPGovernance_1.prepareStartDissolving)(publicKey.value)]
768
+ transactions: yield (0, ICPGovernance_1.prepareStartDissolving)(publicKey.value)
769
+ })
770
+ ];
771
+ });
772
+ }
773
+ prepareStopDissolving(publicKey) {
774
+ return __awaiter(this, void 0, void 0, function* () {
775
+ return [
776
+ (0, module_kit_1.newUnsignedTransaction)({
777
+ transactions: yield (0, ICPGovernance_1.prepareStopDissolving)(publicKey.value)
742
778
  })
743
779
  ];
744
780
  });
745
781
  }
746
- prepareDisburse(publicKey) {
782
+ prepareDisburseAndUnfollow(publicKey) {
747
783
  return __awaiter(this, void 0, void 0, function* () {
748
784
  return [
749
785
  (0, module_kit_1.newUnsignedTransaction)({
750
- transactions: [yield (0, ICPGovernance_1.prepareDisburse)(publicKey.value)]
786
+ transactions: (0, array_1.flattenArray)(yield Promise.all([(0, ICPGovernance_1.prepareDisburse)(publicKey.value), (0, ICPGovernance_1.prepareFollowNeuron)(publicKey.value, undefined)]))
751
787
  })
752
788
  ];
753
789
  });
@@ -793,11 +829,12 @@ class ICPProtocolImpl {
793
829
  principal: principal_1.Principal.from(this.options.network.governanceCanisterId),
794
830
  subAccount: subAccount
795
831
  });
796
- return this.getBalanceOfAddress(accountIdentifier.toHex());
832
+ return this.getBalanceOfAddress(accountIdentifier.toHex()).then((balance) => balance.total);
797
833
  });
798
834
  }
799
835
  getNeuronFollowees(neuron) {
800
- return (0, array_1.flattenArray)(neuron.followees.map(([_, { followees }]) => followees.map(({ id }) => id.toString())));
836
+ const followees = (0, array_1.flattenArray)(neuron.followees.map(([_, { followees }]) => followees.map(({ id }) => id.toString())));
837
+ return Array.from(new Set(followees));
801
838
  }
802
839
  isNeuronDissolving(neuron) {
803
840
  const dissolveState = neuron.dissolve_state[0];
@@ -1 +1 @@
1
- {"version":3,"file":"ICPProtocol.js","sourceRoot":"","sources":["../../../src/v1/protocol/ICPProtocol.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAgG;AAChG,qGAA4E;AAC5E,mHAA0F;AAC1F,wDAAmH;AACnH,8DAAgE;AAChE,4DAA+D;AAC/D,2CAAiD;AACjD,mDAwB2B;AAI3B,oDAQ4B;AAE5B,sDAS6B;AAC7B,8CAAoD;AACpD,oDAAqC;AACrC,kDAAmC;AACnC,kDAA8C;AAE9C,mDAiCwB;AACxB,2DAa4B;AAmC5B,iBAAiB;AAEJ,QAAA,mBAAmB,GAAW,mBAAmB,CAAA;AACjD,QAAA,oBAAoB,GAA4B;IAC3D,sBAAsB,EAAE,2BAAmB;IAC3C,OAAO,EAAE;QACP,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,EAAE;QACf,KAAK,EAAE,gBAAgB;KACxB;CACF,CAAA;AAED,SAAgB,wBAAwB;IACtC,OAAO;QACL,aAAa,EAAE;YACb,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;SAC3B;KACF,CAAA;AACH,CAAC;AAND,4DAMC;AAED,MAAa,eAAe;IAI1B,YAAmB,UAAgD,EAAE;QAQrE,SAAS;QACQ,UAAK,GAAoC;YACxD,GAAG,EAAE;gBACH,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;gBACvC,QAAQ,EAAE,CAAC;aACZ;SACF,CAAA;QAEgB,gBAAW,GAA0B;YACpD,GAAG,EAAE,IAAA,sBAAS,EAAC,MAAM,EAAE,KAAK,CAAC;YAC7B,MAAM,EAAE,IAAA,sBAAS,EAAC,MAAM,EAAE,KAAK,CAAC;YAChC,IAAI,EAAE,IAAA,sBAAS,EAAC,MAAM,EAAE,KAAK,CAAC;SAC/B,CAAA;QAEgB,aAAQ,GAA+B;YACtD,UAAU,EAAE,kCAAmB,CAAC,GAAG;YACnC,IAAI,EAAE,4BAA4B;YAElC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,KAAK;YAEf,GAAG,EAAE;gBACH,QAAQ,EAAE,IAAI,CAAC,WAAW;aAC3B;YAED,OAAO,EAAE,4BAAoB;YAC7B,WAAW,EAAE,wBAAwB,EAAE;SACxC,CAAA;QAyFD,UAAU;QAEO,wBAAmB,GAA2B;YAC7D,SAAS,EAAE,WAAW;SACvB,CAAA;QA/HC,IAAI,CAAC,OAAO,GAAG,wBAAwB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACxD,IAAI,CAAC,UAAU,GAAG;YAChB,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB;YAC7C,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB;SACtD,CAAA;IACH,CAAC;IA+BY,WAAW;;YACtB,OAAO,IAAI,CAAC,QAAQ,CAAA;QACtB,CAAC;KAAA;IAEY,uBAAuB,CAAC,SAAoB;;YACvD,OAAO,IAAA,2CAAuB,EAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QACjD,CAAC;KAAA;IAEY,yBAAyB,CACpC,WAA0D,EAC1D,SAAoB;;YAEpB,QAAQ,WAAW,CAAC,IAAI,EAAE;gBACxB,KAAK,QAAQ;oBACX,OAAO,IAAI,CAAC,+BAA+B,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;gBACrE,KAAK,UAAU;oBACb,OAAO,IAAI,CAAC,iCAAiC,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;gBACvE;oBACE,IAAA,0BAAW,EAAC,WAAW,CAAC,CAAA;oBACxB,MAAM,IAAI,yBAAgB,CAAC,qBAAM,CAAC,GAAG,EAAE,+BAA+B,CAAC,CAAA;aAC1E;QACH,CAAC;KAAA;IAEO,+BAA+B,CAAC,WAAiC,EAAE,SAAoB;QAC7F,MAAM,YAAY,GAAoC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE;YAC7G,QAAQ,UAAU,EAAE;gBAClB,KAAK,2BAAa,CAAC,QAAQ;oBACzB,OAAO,IAAA,2DAAuC,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAChG,KAAK,2BAAa,CAAC,eAAe;oBAChC,OAAO,IAAA,iDAAiC,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBACjF,KAAK,2BAAa,CAAC,sBAAsB;oBACvC,OAAO,IAAA,wDAAwC,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBACjG,KAAK,2BAAa,CAAC,gBAAgB;oBACjC,OAAO,IAAA,wDAAwC,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBACxF,KAAK,2BAAa,CAAC,aAAa;oBAC9B,OAAO,IAAA,gDAAgC,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAChF,KAAK,2BAAa,CAAC,QAAQ;oBACzB,OAAO,IAAA,4CAA4B,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAC5E,KAAK,2BAAa,CAAC,yBAAyB;oBAC1C,OAAO,IAAA,4DAA4C,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAC5F,KAAK,2BAAa,CAAC,gBAAgB;oBACjC,OAAO,IAAA,mDAAmC,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBACnF,KAAK,2BAAa,CAAC,eAAe;oBAChC,OAAO,IAAA,6DAA6C,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAC7F,KAAK,2BAAa,CAAC,gBAAgB;oBACjC,OAAO,IAAA,8DAA8C,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAC9F;oBACE,IAAA,0BAAW,EAAC,UAAU,CAAC,CAAA;oBACvB,MAAM,IAAI,yBAAgB,CAAC,qBAAM,CAAC,GAAG,EAAE,6BAA6B,CAAC,CAAA;aACxE;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,IAAA,oBAAY,EAAC,YAAY,CAAC,CAAA;IACnC,CAAC;IAEO,iCAAiC,CAAC,WAAmC,EAAE,SAAoB;QACjG,MAAM,YAAY,GAAoC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE;YAC7G,QAAQ,UAAU,EAAE;gBAClB,KAAK,2BAAa,CAAC,QAAQ;oBACzB,OAAO,IAAA,6DAAyC,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClG,KAAK,2BAAa,CAAC,eAAe;oBAChC,OAAO,IAAA,mDAAmC,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBACnF,KAAK,2BAAa,CAAC,sBAAsB;oBACvC,OAAO,IAAA,0DAA0C,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBACnG,KAAK,2BAAa,CAAC,gBAAgB;oBACjC,OAAO,IAAA,qDAAqC,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBACrF,KAAK,2BAAa,CAAC,QAAQ;oBACzB,OAAO,IAAA,8CAA8B,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAC9E,KAAK,2BAAa,CAAC,yBAAyB;oBAC1C,OAAO,IAAA,8DAA8C,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAC9F,KAAK,2BAAa,CAAC,gBAAgB;oBACjC,OAAO,IAAA,qDAAqC,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBACrF,KAAK,2BAAa,CAAC,eAAe;oBAChC,OAAO,IAAA,+DAA+C,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAC/F,KAAK,2BAAa,CAAC,aAAa;oBAC9B,OAAO,IAAA,kDAAkC,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClF,KAAK,2BAAa,CAAC,gBAAgB;oBACjC,OAAO,IAAA,gEAAgD,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAChG;oBACE,IAAA,0BAAW,EAAC,UAAU,CAAC,CAAA;oBACvB,MAAM,IAAI,yBAAgB,CAAC,qBAAM,CAAC,GAAG,EAAE,6BAA6B,CAAC,CAAA;aACxE;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,IAAA,oBAAY,EAAC,YAAY,CAAC,CAAA;IACnC,CAAC;IAQY,sBAAsB;;YACjC,OAAO,IAAI,CAAC,mBAAmB,CAAA;QACjC,CAAC;KAAA;IAEY,wBAAwB,CAAC,UAA4B;;YAChE,MAAM,SAAS,GAAG,IAAA,yBAAgB,EAAC,OAAO,EAAE,UAAU,CAAC,CAAA;YACvD,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAA,mDAA+B,EAAC,SAAS,CAAC,SAAS,CAAC,CAAA;YAEtF,OAAO;gBACL,SAAS,EAAE,IAAA,yBAAY,EAAC,UAAU,EAAE,KAAK,CAAC;gBAC1C,SAAS,EAAE,IAAA,yBAAY,EAAC,SAAS,EAAE,KAAK,CAAC;aAC1C,CAAA;QACH,CAAC;KAAA;IAEY,4BAA4B,CAAC,WAAmC,EAAE,SAAoB;;YACjG,IAAI,SAAS,CAAC,MAAM,KAAK,KAAK,EAAE;gBAC9B,MAAM,IAAI,gCAAuB,CAAC,qBAAM,CAAC,GAAG,EAAE,wCAAwC,CAAC,CAAA;aACxF;YAED,MAAM,YAAY,GAAqB,MAAM,OAAO,CAAC,GAAG,CACtD,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,CAAO,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE;gBAC7D,QAAQ,UAAU,EAAE;oBAClB,KAAK,2BAAa,CAAC,QAAQ;wBACzB,OAAO;4BACL,UAAU;4BACV,OAAO,EAAE,MAAM,IAAA,2CAAuB,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;yBACxG,CAAA;oBACH,KAAK,2BAAa,CAAC,eAAe;wBAChC,OAAO;4BACL,UAAU;4BACV,OAAO,EAAE,MAAM,IAAA,iCAAiB,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;yBACtG,CAAA;oBACH,KAAK,2BAAa,CAAC,sBAAsB;wBACvC,OAAO;4BACL,UAAU;4BACV,OAAO,EAAE,MAAM,IAAA,wCAAwB,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;yBACzG,CAAA;oBACH,KAAK,2BAAa,CAAC,gBAAgB;wBACjC,OAAO;4BACL,UAAU;4BACV,OAAO,EAAE,MAAM,IAAA,mCAAmB,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;yBACxG,CAAA;oBACH,KAAK,2BAAa,CAAC,QAAQ;wBACzB,OAAO;4BACL,UAAU;4BACV,OAAO,EAAE,MAAM,IAAA,4BAAY,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;yBACjG,CAAA;oBACH,KAAK,2BAAa,CAAC,yBAAyB;wBAC1C,OAAO;4BACL,UAAU;4BACV,OAAO,EAAE,MAAM,IAAA,4CAA4B,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;yBACjH,CAAA;oBACH,KAAK,2BAAa,CAAC,gBAAgB;wBACjC,OAAO;4BACL,UAAU;4BACV,OAAO,EAAE,MAAM,IAAA,mCAAmB,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;yBACxG,CAAA;oBACH,KAAK,2BAAa,CAAC,eAAe;wBAChC,OAAO;4BACL,UAAU;4BACV,OAAO,EAAE,MAAM,IAAA,6CAA6B,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;yBAClH,CAAA;oBACH,KAAK,2BAAa,CAAC,aAAa;wBAC9B,OAAO;4BACL,UAAU;4BACV,OAAO,EAAE,MAAM,IAAA,gCAAgB,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;yBACrG,CAAA;oBACH,KAAK,2BAAa,CAAC,gBAAgB;wBACjC,OAAO;4BACL,UAAU;4BACV,OAAO,EAAE,MAAM,IAAA,8CAA8B,EAAC,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;yBACnH,CAAA;oBACH;wBACE,IAAA,0BAAW,EAAC,UAAU,CAAC,CAAA;wBACvB,MAAM,IAAI,yBAAgB,CAAC,qBAAM,CAAC,GAAG,EAAE,mBAAmB,UAAU,oBAAoB,CAAC,CAAA;iBAC5F;YACH,CAAC,CAAA,CAAC,CACH,CAAA;YAED,OAAO,IAAA,iCAAoB,EAAuB,EAAE,YAAY,EAAE,CAAC,CAAA;QACrE,CAAC;KAAA;IAED,SAAS;IACI,UAAU;;YACrB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;QAC7B,CAAC;KAAA;IAEY,2BAA2B,CACtC,SAAoB,EACpB,KAAa,EACb,MAA6B;;YAE7B,MAAM,OAAO,GAAW,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAA;YACrE,OAAO,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;QAC/D,CAAC;KAAA;IAEY,yBAAyB,CACpC,OAAe,EACf,KAAa,EACb,MAA6B;;;YAE7B,MAAM,QAAQ,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,OAAO,uBAAuB,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA;YACjH,MAAM,GAAG,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;YACjG,MAAM,QAAQ,GAAG,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAErE,MAAM,gBAAgB,GAAG,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,MAAM,KAAI,EAAE,CAAA;YAErD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAA;YAClD,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAA;YACvD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAE7B,MAAM,YAAY,GAAkC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC/E,OAAO;oBACL,IAAI,EAAE,CAAC,GAAG,CAAC,uBAAuB,CAAC;oBACnC,EAAE,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC;oBAC/B,SAAS,EAAE,OAAO,KAAK,GAAG,CAAC,qBAAqB;oBAChD,MAAM,EAAE,IAAA,sBAAS,EAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC;oBAC3C,GAAG,EAAE,IAAA,sBAAS,EAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC;oBAErC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;oBAE7B,SAAS,EAAE,GAAG,CAAC,UAAU;oBACzB,MAAM,EAAE;wBACN,IAAI,EAAE,GAAG,CAAC,aAAa;wBACvB,IAAI,EAAE,GAAG,CAAC,gBAAgB;wBAC1B,KAAK,EAAE,GAAG,CAAC,YAAY;qBACxB;iBACF,CAAA;YACH,CAAC,CAAC,CAAA;YAEF,OAAO;gBACL,YAAY;gBACZ,MAAM,EAAE;oBACN,OAAO,EAAE,IAAI,KAAK,SAAS;oBAC3B,IAAI;iBACL;aACF,CAAA;;KACF;IAEY,qBAAqB,CAAC,SAAoB;;YACrD,MAAM,OAAO,GAAG,IAAA,2CAAuB,EAAC,SAAS,CAAC,KAAK,CAAC,CAAA;YACxD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAA;YAC3D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;YAE5D,MAAM,YAAY,GAAG,IAAA,sBAAS,EAAC,WAAW,CAAC,KAAK,CAAC;iBAC9C,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;iBACtB,WAAW,EAAE;iBACb,IAAI,CAAC,IAAA,sBAAS,EAAC,aAAa,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;YAE5E,OAAO;gBACL,KAAK,EAAE,IAAA,sBAAS,EAAW,YAAY,EAAE,YAAY,CAAC;gBACtD,YAAY,EAAE,WAAW,CAAC,KAAK;aAChC,CAAA;QACH,CAAC;KAAA;IAEY,mBAAmB,CAAC,OAAe;;YAC9C,IAAI,CAAC,OAAO;gBAAE,OAAO,EAAE,KAAK,EAAE,IAAA,sBAAS,EAAC,CAAC,EAAE,YAAY,CAAC,EAAE,CAAA;YAC1D,MAAM,OAAO,GAAG,MAAM,IAAA,yCAAqB,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;YACxH,OAAO,EAAE,KAAK,EAAE,IAAA,sBAAS,EAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,EAAE,CAAA;QACjE,CAAC;KAAA;IAEY,oCAAoC,CAC/C,SAAoB,EACpB,EAAY,EACZ,aAAkD;;YAElD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAA;YAC3D,MAAM,SAAS,GAAG,IAAI,mBAAS,CAAC,IAAA,sBAAS,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAA;YAE/D,IAAI,GAAc,CAAA;YAClB,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,GAAG,MAAK,SAAS,EAAE;gBACpC,GAAG,GAAG,IAAI,mBAAS,CAAC,IAAA,sBAAS,EAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA;aACxD;iBAAM;gBACL,MAAM,aAAa,GAAqB,MAAM,IAAI,CAAC,8BAA8B,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;gBAChG,GAAG,GAAG,IAAI,mBAAS,CAAC,IAAA,sBAAS,EAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAA;gBACnD,IAAI,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;oBACtB,GAAG,GAAG,IAAI,mBAAS,CAAC,CAAC,CAAC,CAAA;iBACvB;aACF;YAED,IAAI,iBAAiB,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC5C,IAAI,iBAAiB,CAAC,UAAU,EAAE,EAAE;gBAClC,iBAAiB,GAAG,IAAI,mBAAS,CAAC,CAAC,CAAC,CAAA;aACrC;YAED,OAAO,IAAA,sBAAS,EAAC,iBAAiB,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,CAAA;QAC7D,CAAC;KAAA;IAED,gCAAgC;IACnB,8BAA8B,CAAC,UAAqB,EAAE,QAAwC;;YACzG,yCAAyC;YACzC,mDAAmD;YACnD,WAAW;YACX,oDAAoD;YACpD,uDAAuD;YACvD,oDAAoD;YACpD,IAAI;YAEJ,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAA;QAChC,CAAC;KAAA;IAEY,+BAA+B,CAC1C,SAAoB,EACpB,OAAuC,EACvC,aAAkD;;YAElD,gBAAgB;YAChB,MAAM,OAAO,GAAqB,IAAA,sBAAS,EAAC,CAAC,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACvH,MAAM,SAAS,GAAW,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YAC/C,MAAM,KAAK,GACT,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,GAAG,MAAK,SAAS;gBAC9B,CAAC,CAAC,MAAM,CAAC,IAAA,sBAAS,EAAC,aAAa,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;gBACnE,CAAC,CAAC,MAAM,CAAC,IAAA,sBAAS,EAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAA;YAE7E,sCAAsC;YACtC,IAAI,SAAS,GAAG,KAAK,EAAE;gBACrB,MAAM,IAAI,qBAAY,CAAC,qBAAM,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAA;aACzD;YAED,MAAM,QAAQ,GAAW,MAAM,CAAC,IAAA,sBAAS,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAA;YAE1F,kBAAkB;YAClB,MAAM,mBAAmB,GAAG,IAAA,6CAAyB,EAAC;gBACpD,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;gBACjB,MAAM,EAAE,QAAQ;gBAChB,GAAG,EAAE,KAAK;aACX,CAAC,CAAA;YAEF,OAAO,IAAA,mCAAsB,EAAyB;gBACpD,YAAY,EAAE;oBACZ;wBACE,UAAU,EAAE,2BAAa,CAAC,QAAQ;wBAClC,OAAO,EAAE,mBAAmB;qBAC7B;iBACF;aACF,CAAC,CAAA;QACJ,CAAC;KAAA;IAED,8DAA8D;IAC9D,0DAA0D;IAC1D,yJAAyJ;IAC5I,oBAAoB,CAAC,WAAiC;;YACjE,KAAK,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,WAAW,CAAC,YAAY,EAAE;gBAC9D,MAAM,WAAW,GAAG,yCAA2B,CAAC,UAAU,CAAC,CAAA;gBAC3D,IAAI,WAAW,KAAK,MAAM;oBAAE,SAAQ;gBAEpC,MAAM,IAAA,wCAAoB,EACxB,OAAO,EACP,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAC3B,IAAI,CAAC,UAAU,CAAC,0CAA4B,CAAC,UAAU,CAAC,CAAC,EACzD,yCAA2B,CAAC,UAAU,CAAC,CACxC,CAAA;aACF;YAED,OAAO,EAAE,CAAA;QACX,CAAC;KAAA;IAEY,SAAS,CAAC,WAAiC;;YACtD,OAAO,OAAO,CAAC,GAAG,CAChB,WAAW,CAAC,YAAY;iBACrB,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,yCAA2B,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC;iBAC/E,GAAG,CAAC,CAAO,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE;gBACrC,MAAM,QAAQ,GAAG,MAAM,IAAA,wCAAoB,EACzC,OAAO,EACP,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAC3B,IAAI,CAAC,UAAU,CAAC,0CAA4B,CAAC,UAAU,CAAC,CAAC,EACzD,yCAA2B,CAAC,UAAU,CAAC,CACxC,CAAA;gBAED,MAAM,aAAa,GAAkB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;gBAC1D,IAAI,aAAa,CAAC,MAAM,iDAAgC,EAAE;oBACxD,MAAM,IAAI,qBAAY,CAAC,qBAAM,CAAC,GAAG,EAAE,EAAE,EAAE,UAAU,aAAa,CAAC,WAAW,KAAK,aAAa,CAAC,cAAc,EAAE,CAAC,CAAA;iBAC/G;gBAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACtE,CAAC,CAAA,CAAC,CACL,CAAA;QACH,CAAC;KAAA;IAEO,mBAAmB,CAAC,UAAyB,EAAE,QAAqB;QAC1E,QAAQ,UAAU,EAAE;YAClB,KAAK,2BAAa,CAAC,eAAe;gBAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAA;gBAE9C,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC;oBAC5B,IAAI,EAAE,GAAG,CAAC,KAAK;oBACf,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC;iBAC/B,CAAC,CAAA;gBAEF,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC;oBAChC,oBAAoB,EAAE,GAAG,CAAC,KAAK;oBAC/B,6BAA6B,EAAE,GAAG,CAAC,KAAK;iBACzC,CAAC,CAAA;gBAEF,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBAE9D,MAAM,mBAAmB,GAAG,GAAG,CAAC,MAAM,CAAC;oBACrC,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;oBAChC,gBAAgB,EAAE,GAAG,CAAC,KAAK;oBAC3B,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC;oBAC5B,IAAI,EAAE,GAAG,CAAC,KAAK;oBACf,eAAe,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;oBAClC,kBAAkB,EAAE,GAAG,CAAC,KAAK;oBAC7B,YAAY,EAAE,GAAG,CAAC,KAAK;iBACxB,CAAC,CAAA;gBAEF,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC;oBACjC,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;iBAC/B,CAAC,CAAA;gBAEF,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;oBACxB,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC;oBACrB,8BAA8B,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;oBAClD,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC;oBAClC,cAAc,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC;oBACnC,YAAY,EAAE,GAAG,CAAC,IAAI;oBACtB,cAAc,EAAE,GAAG,CAAC,IAAI;oBACxB,uBAAuB,EAAE,GAAG,CAAC,KAAK;oBAClC,uBAAuB,EAAE,GAAG,CAAC,KAAK;oBAClC,yBAAyB,EAAE,GAAG,CAAC,KAAK;oBACpC,mBAAmB,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;oBACtC,6BAA6B,EAAE,GAAG,CAAC,KAAK;oBACxC,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC;oBAChC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;oBAC1B,uCAAuC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;oBAC3D,cAAc,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC;oBACtC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;oBACnD,eAAe,EAAE,GAAG,CAAC,KAAK;oBAC1B,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC;oBACtC,iBAAiB,EAAE,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC;oBAC3C,0BAA0B,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;iBAC/C,CAAC,CAAA;gBAEF,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC;oBACjC,aAAa,EAAE,GAAG,CAAC,IAAI;oBACvB,UAAU,EAAE,GAAG,CAAC,KAAK;iBACtB,CAAC,CAAA;gBAEF,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAA;gBAEhE,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1C;gBACE,MAAM,IAAI,yBAAgB,CAAC,qBAAM,CAAC,GAAG,EAAE,mCAAmC,UAAU,mBAAmB,CAAC,CAAA;SAC3G;IACH,CAAC;IAED,aAAa;IAEA,mBAAmB;;;YAC9B,MAAM,YAAY,GAAG,MAAM,IAAA,oCAAgB,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;YACnH,MAAM,EAAE,GAAG,MAAA,MAAA,MAAA,YAAY,CAAC,CAAC,CAAC,0CAAE,EAAE,0CAAG,CAAC,CAAC,0CAAE,EAAE,CAAA;YACvC,OAAO,CAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,QAAQ,EAAE,KAAI,EAAE,CAAA;;KAC5B;IAEY,gCAAgC,CAAC,SAAoB,EAAE,IAA0B;;YAC5F,kEAAkE;YAClE,yEAAyE;YACzE,uDAAuD;YAEvD,OAAO,EAAE,CAAA;QACX,CAAC;KAAA;IAEY,8BAA8B,CAAC,QAAgB,EAAE,KAAW;;YACvE,MAAM,IAAI,yBAAgB,CAAC,qBAAM,CAAC,GAAG,EAAE,mDAAmD,CAAC,CAAA;QAC7F,CAAC;KAAA;IAEY,mBAAmB,CAAC,OAAe,EAAE,IAA0B;;;YAC1E,MAAM,aAAa,GAAG,MAAM,IAAA,iCAAa,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;YAC1H,MAAM,cAAc,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAEtF,OAAO;gBACL,IAAI,EAAE,CAAA,MAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,iBAAiB,0CAAG,CAAC,CAAC,0CAAE,IAAI,KAAI,EAAE;gBACvD,OAAO,EAAE,OAAO;gBAChB,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;gBACrG,WAAW,EAAE,MAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,YAAY,0CAAE,QAAQ,EAAE,mCAAI,GAAG;aAC5D,CAAA;;KACF;IAEY,qBAAqB,CAAC,SAAoB,EAAE,IAA0B;;;YACjF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;YACrD,IAAI,aAAa,KAAK,SAAS,EAAE;gBAC/B,OAAO,KAAK,CAAA;aACb;YAED,MAAM,MAAM,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAA;YAE3B,gEAAgE;YAChE,0EAA0E;YAC1E,gCAAgC;YAChC,2CAA2C;YAC3C,IAAI,MAAM,KAAK,SAAS,EAAE;gBACxB,OAAO,IAAI,CAAA;aACZ;YAED,2EAA2E;YAC3E,kDAAkD;YAClD,IAAI,CAAA,MAAA,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,0CAAE,IAAI,OAAK,MAAA,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA,EAAE;gBAClF,OAAO,IAAI,CAAA;aACZ;YAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;;KAClD;IAEY,mBAAmB,CAAC,QAAiB,EAAE,IAAU;;YAC5D,MAAM,IAAI,yBAAgB,CAAC,qBAAM,CAAC,GAAG,EAAE,wCAAwC,CAAC,CAAA;QAClF,CAAC;KAAA;IAEY,gCAAgC,CAAC,SAAoB,EAAE,IAA0B;;;YAC5F,MAAM,OAAO,GAAW,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAA;YACrE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAA;YAChE,MAAM,SAAS,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YAC1E,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,SAAS,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,CAAA;YACzF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;YAC5D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;YAErD,MAAM,YAAY,GAAG,IAAA,sBAAS,EAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC7E,MAAM,iBAAiB,GAAG,IAAA,sBAAS,EAAC,aAAa,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAE/E,OAAO;gBACL,OAAO;gBACP,OAAO,EAAE,YAAY,CAAC,KAAK;gBAC3B,UAAU,EAAE,SAAS;gBACrB,gBAAgB,EAAE,gBAAgB;gBAClC,iBAAiB,EAAE,iBAAiB,CAAC,KAAK;gBAC1C,KAAK,EAAE,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,SAAS,0CAAE,QAAQ,EAAE;gBAC3C,WAAW,EAAE,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,YAAY,0CAAE,QAAQ,EAAE;gBACpD,GAAG,EAAE,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,WAAW,0CAAE,QAAQ,EAAE;gBAC3C,aAAa,EAAE,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,sBAAsB,0CAAE,QAAQ,EAAE;aACjE,CAAA;;KACF;IAEY,8BAA8B,CAAC,QAAiB,EAAE,IAAU;;YACvE,MAAM,IAAI,yBAAgB,CAAC,qBAAM,CAAC,GAAG,EAAE,mDAAmD,CAAC,CAAA;QAC7F,CAAC;KAAA;IAEY,iCAAiC,CAC5C,SAAoB,EACpB,UAAqB,EACrB,IAA0B;;YAE1B,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;gBACzB,OAAO,OAAO,CAAC,MAAM,CAAC,gEAAgE,CAAC,CAAA;aACxF;YAED,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;YAC/B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;YAEtI,MAAM,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YACnC,MAAM,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YAEnC,OAAO;gBACL,SAAS,EAAE,gBAAgB;gBAC3B,UAAU,EAAE,CAAC,gBAAgB,CAAC;aAC/B,CAAA;QACH,CAAC;KAAA;IAEY,+BAA+B,CAAC,QAAiB,EAAE,WAAsB,EAAE,KAAW;;YACjG,MAAM,IAAI,yBAAgB,CAAC,qBAAM,CAAC,GAAG,EAAE,oDAAoD,CAAC,CAAA;QAC9F,CAAC;KAAA;IAEa,4BAA4B,CAAC,SAAoB,EAAE,UAAmB;;YAClF,MAAM,OAAO,GAAsB,EAAE,CAAA;YAErC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;YAC5D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;YAErD,MAAM,SAAS,GAAG,IAAI,mBAAS,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAChE,MAAM,SAAS,GAAG,aAAa,KAAK,SAAS,CAAA;YAC7C,MAAM,gBAAgB,GAAG,SAAS,IAAI,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,IAAA,sBAAS,EAAC,aAAa,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAA;YACxI,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;YACvF,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;YAC7E,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;YAEjF,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE;gBAC5B,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,iCAAoB,CAAC,aAAa;oBACxC,IAAI,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC;iBACtC,CAAC,CAAA;aACH;YAED,IAAI,SAAS,IAAI,CAAC,SAAS,EAAE;gBAC3B,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,iCAAoB,CAAC,gBAAgB;oBAC3C,IAAI,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC;iBACtC,CAAC,CAAA;aACH;YAED,IAAI,CAAC,gBAAgB,EAAE;gBACrB,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,iCAAoB,CAAC,cAAc;oBACzC,IAAI,EAAE,CAAC,QAAQ,CAAC;iBACjB,CAAC,CAAA;aACH;YAED,IAAI,gBAAgB,IAAI,UAAU,KAAK,SAAS,EAAE;gBAChD,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,iCAAoB,CAAC,cAAc;oBACzC,IAAI,EAAE,CAAC,QAAQ,CAAC;iBACjB,CAAC,CAAA;aACH;YAED,IAAI,gBAAgB,IAAI,CAAC,WAAW,IAAI,UAAU,KAAK,SAAS,EAAE;gBAChE,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,iCAAoB,CAAC,aAAa;oBACxC,IAAI,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC;iBACtC,CAAC,CAAA;aACH;YAED,IAAI,WAAW,IAAI,UAAU,KAAK,SAAS,EAAE;gBAC3C,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,iCAAoB,CAAC,eAAe;oBAC1C,IAAI,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC;iBACtC,CAAC,CAAA;aACH;YAED,IAAI,SAAS,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,iCAAoB,CAAC,mBAAmB;iBAC/C,CAAC,CAAA;aACH;YAED,IAAI,SAAS,IAAI,SAAS,IAAI,CAAC,YAAY,IAAI,UAAU,KAAK,SAAS,EAAE;gBACvE,OAAO,CAAC,IAAI,CACV;oBACE,IAAI,EAAE,iCAAoB,CAAC,yBAAyB;iBACrD,EACD;oBACE,IAAI,EAAE,iCAAoB,CAAC,gBAAgB;iBAC5C,CACF,CAAA;aACF;YAED,IAAI,YAAY,EAAE;gBAChB,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,iCAAoB,CAAC,eAAe;iBAC3C,CAAC,CAAA;aACH;YAED,IAAI,WAAW,EAAE;gBACf,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,iCAAoB,CAAC,QAAQ;iBACpC,CAAC,CAAA;aACH;YAED,OAAO,OAAO,CAAA;QAChB,CAAC;KAAA;IAEY,mCAAmC,CAC9C,SAAoB,EACpB,IAA0B,EAC1B,IAAU;;YAEV,QAAQ,IAAI,EAAE;gBACZ,KAAK,iCAAoB,CAAC,aAAa,CAAC;gBACxC,KAAK,iCAAoB,CAAC,cAAc;oBACtC,IAAA,qBAAY,EAAC,GAAG,IAAI,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;oBAE9C,OAAO,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC7D,KAAK,iCAAoB,CAAC,gBAAgB,CAAC;gBAC3C,KAAK,iCAAoB,CAAC,cAAc;oBACtC,IAAA,qBAAY,EAAC,GAAG,IAAI,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;oBAE9C,OAAO,IAAI,CAAC,2BAA2B,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;gBACjE,KAAK,iCAAoB,CAAC,mBAAmB;oBAC3C,OAAO,IAAI,CAAC,wBAAwB,EAAE,CAAA;gBACxC,KAAK,iCAAoB,CAAC,gBAAgB;oBACxC,OAAO,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAA;gBAC/C,KAAK,iCAAoB,CAAC,QAAQ;oBAChC,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;gBACxC;oBACE,OAAO,OAAO,CAAC,MAAM,CAAC,yBAAyB,IAAI,oBAAoB,CAAC,CAAA;aAC3E;QACH,CAAC;KAAA;IAEa,uBAAuB,CAAC,SAAoB,EAAE,MAAc;;YACxE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;YACnC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAA,sBAAS,EAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAA;YAEzF,OAAO;gBACL,IAAA,mCAAsB,EAAyB;oBAC7C,YAAY,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC;wBAC9B,IAAA,2CAA2B,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE,YAAY,EAAE,SAAS,CAAC;wBAChH,IAAA,2CAA2B,EAAC,SAAS,CAAC,KAAK,CAAC;qBAC7C,CAAC;iBACH,CAAC;aACH,CAAA;QACH,CAAC;KAAA;IAEa,2BAA2B,CAAC,SAAoB,EAAE,MAAc;;YAC5E,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;YACnC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAA,sBAAS,EAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAA;YAEzF,OAAO;gBACL,IAAA,mCAAsB,EAAyB;oBAC7C,YAAY,EAAE,CACZ,MAAM,OAAO,CAAC,GAAG,CAAC;wBAChB,YAAY,GAAG,CAAC;4BACd,CAAC,CAAC,IAAA,2CAA2B,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE,YAAY,EAAE,SAAS,CAAC;4BAClH,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;wBAC9B,IAAA,2CAA2B,EAAC,SAAS,CAAC,KAAK,CAAC;qBAC7C,CAAC,CACH,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,SAAS,CAAqB;iBACvD,CAAC;aACH,CAAA;QACH,CAAC;KAAA;IAEa,wBAAwB;;YACpC,OAAO;gBACL,IAAA,mCAAsB,EAAyB;oBAC7C,YAAY,EAAE,CAAC,MAAM,IAAA,oCAAoB,GAAE,CAAC;iBAC7C,CAAC;aACH,CAAA;QACH,CAAC;KAAA;IAEa,sBAAsB,CAAC,SAAoB;;YACvD,OAAO;gBACL,IAAA,mCAAsB,EAAyB;oBAC7C,YAAY,EAAE,CAAC,MAAM,IAAA,sCAAsB,EAAC,SAAS,CAAC,KAAK,CAAC,CAAC;iBAC9D,CAAC;aACH,CAAA;QACH,CAAC;KAAA;IAEa,eAAe,CAAC,SAAoB;;YAChD,OAAO;gBACL,IAAA,mCAAsB,EAAyB;oBAC7C,YAAY,EAAE,CAAC,MAAM,IAAA,+BAAe,EAAC,SAAS,CAAC,KAAK,CAAC,CAAC;iBACvD,CAAC;aACH,CAAA;QACH,CAAC;KAAA;IAEY,mBAAmB,CAAC,SAAoB;;;YACnD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAA;YAC3D,MAAM,EAAE,UAAU,EAAE,GAAG,IAAA,mDAA+B,EAAC,SAAS,CAAC,KAAK,CAAC,CAAA;YACvE,MAAM,iBAAiB,GAAG,2BAAiB,CAAC,aAAa,CAAC;gBACxD,SAAS,EAAE,qBAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;gBAChE,UAAU,EAAE,UAAU;aACvB,CAAC,CAAA;YAEF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,SAAS,EAAE;gBAC/D;oBACE,EAAE,EAAE,iBAAiB,CAAC,KAAK,EAAE;oBAC7B,MAAM,EAAE,MAAA,OAAO,CAAC,YAAY,mCAAI,OAAO,CAAC,KAAK;iBAC9C;aACF,CAAC,CAAA;YAEF,MAAM,SAAS,GAAG,IAAA,sBAAS,EAAC,MAAA,OAAO,CAAC,YAAY,mCAAI,OAAO,CAAC,KAAK,CAAC;iBAC/D,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;iBACtB,WAAW,EAAE;iBACb,KAAK,CAAC,IAAA,sBAAS,EAAC,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAA;YAErD,OAAO,IAAA,sBAAS,EAAW,SAAS,EAAE,YAAY,CAAC,CAAA;;KACpD;IAEY,eAAe;;YAC1B,OAAO,IAAA,oCAAgB,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;QACjG,CAAC;KAAA;IAEa,SAAS,CAAC,SAAoB;;YAC1C,MAAM,MAAM,GAAG,MAAM,IAAA,6CAAyB,EAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;YACvI,OAAO,MAAM,CAAA;QACf,CAAC;KAAA;IAEa,gBAAgB,CAAC,SAAoB;;YACjD,mCAAmC;YACnC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,IAAA,mDAA+B,EAAC,SAAS,CAAC,KAAK,CAAC,CAAA;YAEjF,MAAM,iBAAiB,GAAG,2BAAiB,CAAC,aAAa,CAAC;gBACxD,SAAS,EAAE,qBAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;gBACpE,UAAU,EAAE,UAAU;aACvB,CAAC,CAAA;YAEF,OAAO,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAA;QAC5D,CAAC;KAAA;IAEO,kBAAkB,CAAC,MAAc;QACvC,OAAO,IAAA,oBAAY,EAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;IAC7G,CAAC;IAEO,kBAAkB,CAAC,MAAc;QACvC,MAAM,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAA;QAE9C,OAAO,CACL,aAAa,KAAK,SAAS;YAC3B,+BAA+B,IAAI,aAAa;YAChD,aAAa,CAAC,6BAA6B,GAAG,MAAM,CAAC,CAAC,CAAC,CACxD,CAAA;IACH,CAAC;IAEO,iBAAiB,CAAC,MAAkB;QAC1C,OAAO,MAAM,CAAC,sBAAsB,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IACpF,CAAC;CACF;AA3zBD,0CA2zBC;AAED,UAAU;AAEV,SAAgB,iBAAiB,CAAC,UAAgD,EAAE;IAClF,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAA;AACrC,CAAC;AAFD,8CAEC;AAEY,QAAA,4BAA4B,GAAuB;IAC9D,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,kBAAkB;IAC1B,gBAAgB,EAAE,6BAA6B;IAC/C,oBAAoB,EAAE,6BAA6B;IACnD,WAAW,EAAE,yCAAyC;CACvD,CAAA;AAED,MAAM,4BAA4B,GAAuB,oCAA4B,CAAA;AAErF,SAAgB,wBAAwB,CAAC,UAAuC,EAAE;IAChF,OAAO;QACL,OAAO,kCAAO,4BAA4B,GAAK,OAAO,CAAE;KACzD,CAAA;AACH,CAAC;AAJD,4DAIC"}
1
+ {"version":3,"file":"ICPProtocol.js","sourceRoot":"","sources":["../../../src/v1/protocol/ICPProtocol.ts"],"names":[],"mappings":"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"}
@@ -13,8 +13,23 @@ var __rest = (this && this.__rest) || function (s, e) {
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.icpTransactionSignResponseToSigned = exports.icpTransactionSignRequestToUnsigned = exports.icpSignedTransactionToResponse = exports.icpUnsignedTransactionToRequest = void 0;
15
15
  const module_kit_1 = require("@airgap/module-kit");
16
+ const transaction_1 = require("../../../../types/transaction");
16
17
  function icpUnsignedTransactionToRequest(unsigned, publicKey, callbackUrl) {
17
- return { transaction: unsigned, publicKey, callbackURL: callbackUrl };
18
+ if (unsigned.transactions.length === 1 && unsigned.transactions[0].actionType === transaction_1.ICPActionType.TRANSFER /* legacy */) {
19
+ const transaction = {
20
+ networkId: '',
21
+ transaction: unsigned.transactions[0].encoded,
22
+ transactions: []
23
+ };
24
+ return { transaction, publicKey, callbackURL: callbackUrl };
25
+ }
26
+ const { transactions } = unsigned;
27
+ const transaction = {
28
+ networkId: '',
29
+ transaction: '',
30
+ transactions
31
+ };
32
+ return { transaction, publicKey, callbackURL: callbackUrl };
18
33
  }
19
34
  exports.icpUnsignedTransactionToRequest = icpUnsignedTransactionToRequest;
20
35
  function icpSignedTransactionToResponse(signed, accountIdentifier) {
@@ -23,12 +38,27 @@ function icpSignedTransactionToResponse(signed, accountIdentifier) {
23
38
  }
24
39
  exports.icpSignedTransactionToResponse = icpSignedTransactionToResponse;
25
40
  function icpTransactionSignRequestToUnsigned(request) {
26
- return (0, module_kit_1.newUnsignedTransaction)(request.transaction);
41
+ var _a;
42
+ if (request.transaction.transaction /* legacy */) {
43
+ return (0, module_kit_1.newUnsignedTransaction)({
44
+ transactions: [{ actionType: transaction_1.ICPActionType.TRANSFER, encoded: request.transaction.transaction }]
45
+ });
46
+ }
47
+ return (0, module_kit_1.newUnsignedTransaction)({
48
+ transactions: (_a = request.transaction.transactions) !== null && _a !== void 0 ? _a : []
49
+ });
27
50
  }
28
51
  exports.icpTransactionSignRequestToUnsigned = icpTransactionSignRequestToUnsigned;
29
52
  function icpTransactionSignResponseToSigned(response) {
30
- const content = JSON.parse(response.transaction);
31
- return (0, module_kit_1.newSignedTransaction)(content);
53
+ try {
54
+ const content = JSON.parse(response.transaction);
55
+ return (0, module_kit_1.newSignedTransaction)(content);
56
+ }
57
+ catch /* legacy */ (_a) {
58
+ return (0, module_kit_1.newSignedTransaction)({
59
+ transactions: [{ actionType: transaction_1.ICPActionType.TRANSFER, encoded: response.transaction }]
60
+ });
61
+ }
32
62
  }
33
63
  exports.icpTransactionSignResponseToSigned = icpTransactionSignResponseToSigned;
34
64
  //# sourceMappingURL=transaction-converter.js.map