@cardano-sdk/hardware-trezor 0.7.25 → 0.7.27

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.
@@ -1,7 +1,7 @@
1
1
  import * as Crypto from '@cardano-sdk/crypto';
2
2
  import * as Trezor from '@trezor/connect';
3
3
  import { Cardano, Serialization } from '@cardano-sdk/core';
4
- import { CommunicationType, KeyAgentBase, KeyAgentDependencies, KeyPurpose, SerializableTrezorKeyAgentData, SignBlobResult, SignTransactionContext, TrezorConfig } from '@cardano-sdk/key-management';
4
+ import { CommunicationType, KeyAgentBase, KeyAgentDependencies, KeyPurpose, MasterKeyGeneration, SerializableTrezorKeyAgentData, SignBlobResult, SignTransactionContext, TrezorConfig } from '@cardano-sdk/key-management';
5
5
  import { Cip30DataSignature } from '@cardano-sdk/dapp-connector';
6
6
  declare const TrezorConnectNode: Trezor.TrezorConnect;
7
7
  declare const TrezorConnectWeb: Trezor.TrezorConnect;
@@ -12,6 +12,7 @@ export interface GetTrezorXpubProps {
12
12
  accountIndex: number;
13
13
  communicationType: CommunicationType;
14
14
  purpose: KeyPurpose;
15
+ derivationType?: MasterKeyGeneration;
15
16
  }
16
17
  export interface CreateTrezorKeyAgentProps {
17
18
  chainId: Cardano.ChainId;
@@ -24,9 +25,10 @@ export declare class TrezorKeyAgent extends KeyAgentBase {
24
25
  #private;
25
26
  readonly isTrezorInitialized: Promise<boolean>;
26
27
  constructor({ isTrezorInitialized, ...serializableData }: TrezorKeyAgentProps, dependencies: KeyAgentDependencies);
28
+ get trezorConfig(): TrezorConfig;
27
29
  static initializeTrezorTransport({ manifest, communicationType, silentMode, lazyLoad, shouldHandlePassphrase }: TrezorConfig): Promise<boolean>;
28
30
  static checkDeviceConnection(communicationType: CommunicationType): Promise<Trezor.Features>;
29
- static getXpub({ accountIndex, communicationType, purpose }: GetTrezorXpubProps): Promise<Crypto.Bip32PublicKeyHex>;
31
+ static getXpub({ accountIndex, communicationType, purpose, derivationType }: GetTrezorXpubProps): Promise<Crypto.Bip32PublicKeyHex>;
30
32
  static createWithDevice({ chainId, accountIndex, trezorConfig, purpose }: CreateTrezorKeyAgentProps, dependencies: KeyAgentDependencies): Promise<TrezorKeyAgent>;
31
33
  static matchSigningMode(tx: Omit<Trezor.CardanoSignTransaction, 'signingMode'>): Trezor.PROTO.CardanoTxSigningMode;
32
34
  signTransaction(txBody: Serialization.TransactionBody, { knownAddresses, txInKeyPathMap, scripts }: SignTransactionContext): Promise<Cardano.Signatures>;
@@ -1 +1 @@
1
- {"version":3,"file":"TrezorKeyAgent.d.ts","sourceRoot":"","sources":["../../src/TrezorKeyAgent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAE,OAAO,EAAuB,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAEL,iBAAiB,EACjB,YAAY,EACZ,oBAAoB,EAEpB,UAAU,EAEV,8BAA8B,EAC9B,cAAc,EACd,sBAAsB,EACtB,YAAY,EAGb,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAKjE,QAAA,MAAM,iBAAiB,sBAAiB,CAAC;AACzC,QAAA,MAAM,gBAAgB,sBAED,CAAC;AAQtB,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,8BAA8B,EAAE,YAAY,CAAC;IAC7F,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,OAAO,EAAE,UAAU,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,CAAC,EAAE,UAAU,CAAC;CACtB;AAED,oBAAY,yBAAyB,GAAG,OAAO,iBAAiB,GAAG,OAAO,gBAAgB,CAAC;AAuC3F,qBAAa,cAAe,SAAQ,YAAY;;IAC9C,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBAGnC,EAAE,mBAAmB,EAAE,GAAG,gBAAgB,EAAE,EAAE,mBAAmB,EAAE,YAAY,EAAE,oBAAoB;WAQpG,yBAAyB,CAAC,EACrC,QAAQ,EACR,iBAAiB,EACjB,UAAkB,EAClB,QAAgB,EAChB,sBAA8B,EAC/B,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;WAuCrB,qBAAqB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;WAarF,OAAO,CAAC,EACnB,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACR,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;WAkB5C,gBAAgB,CAC3B,EAAE,OAAO,EAAE,YAAgB,EAAE,YAAY,EAAE,OAA6B,EAAE,EAAE,yBAAyB,EACrG,YAAY,EAAE,oBAAoB;IA0BpC,MAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,aAAa,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,oBAAoB;IA2B5G,eAAe,CACnB,MAAM,EAAE,aAAa,CAAC,eAAe,EACrC,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,sBAAsB,GAClE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;IAyExB,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAInC,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAI3C,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;CAGjE"}
1
+ {"version":3,"file":"TrezorKeyAgent.d.ts","sourceRoot":"","sources":["../../src/TrezorKeyAgent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAE,OAAO,EAAuB,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAEL,iBAAiB,EACjB,YAAY,EACZ,oBAAoB,EAEpB,UAAU,EAEV,mBAAmB,EACnB,8BAA8B,EAC9B,cAAc,EACd,sBAAsB,EACtB,YAAY,EAGb,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAKjE,QAAA,MAAM,iBAAiB,sBAAiB,CAAC;AACzC,QAAA,MAAM,gBAAgB,sBAED,CAAC;AAQtB,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,8BAA8B,EAAE,YAAY,CAAC;IAC7F,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,OAAO,EAAE,UAAU,CAAC;IACpB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,CAAC,EAAE,UAAU,CAAC;CACtB;AAED,oBAAY,yBAAyB,GAAG,OAAO,iBAAiB,GAAG,OAAO,gBAAgB,CAAC;AAqD3F,qBAAa,cAAe,SAAQ,YAAY;;IAC9C,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBAInC,EAAE,mBAAmB,EAAE,GAAG,gBAAgB,EAAE,EAAE,mBAAmB,EAAE,YAAY,EAAE,oBAAoB;IASjH,IAAI,YAAY,IAAI,YAAY,CAE/B;WAEY,yBAAyB,CAAC,EACrC,QAAQ,EACR,iBAAiB,EACjB,UAAkB,EAClB,QAAgB,EAChB,sBAA8B,EAC/B,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;WAuCrB,qBAAqB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;WAarF,OAAO,CAAC,EACnB,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACP,cAAc,EACf,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;WAuB5C,gBAAgB,CAC3B,EAAE,OAAO,EAAE,YAAgB,EAAE,YAAY,EAAE,OAA6B,EAAE,EAAE,yBAAyB,EACrG,YAAY,EAAE,oBAAoB;IA2BpC,MAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,aAAa,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,oBAAoB;IA2B5G,eAAe,CACnB,MAAM,EAAE,aAAa,CAAC,eAAe,EACrC,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,sBAAsB,GAClE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;IA8ExB,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAInC,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAI3C,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;CAGjE"}
@@ -9,7 +9,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
9
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
- var _TrezorKeyAgent_communicationType;
12
+ var _TrezorKeyAgent_communicationType, _TrezorKeyAgent_trezorConfig;
13
13
  import * as Crypto from '@cardano-sdk/crypto';
14
14
  import * as Trezor from '@trezor/connect';
15
15
  import { NotImplementedError } from '@cardano-sdk/core';
@@ -23,6 +23,18 @@ const TrezorConnectWeb = _TrezorConnectWeb.default
23
23
  : _TrezorConnectWeb;
24
24
  const transportTypedError = (error) => new errors.AuthenticationError('Trezor transport failed', new errors.TransportError('Trezor transport failed', error));
25
25
  const getTrezorConnect = (communicationType) => communicationType === CommunicationType.Node ? TrezorConnectNode : TrezorConnectWeb;
26
+ const mapDerivationType = (derivationType) => {
27
+ switch (derivationType) {
28
+ case 'ICARUS':
29
+ return Trezor.PROTO.CardanoDerivationType.ICARUS;
30
+ case 'ICARUS_TREZOR':
31
+ return Trezor.PROTO.CardanoDerivationType.ICARUS_TREZOR;
32
+ case 'LEDGER':
33
+ return Trezor.PROTO.CardanoDerivationType.LEDGER;
34
+ default:
35
+ throw new Error(`Unsupported derivation type: ${derivationType}`);
36
+ }
37
+ };
26
38
  const stakeCredentialCert = (certificateType) => certificateType === Trezor.PROTO.CardanoCertificateType.STAKE_REGISTRATION ||
27
39
  certificateType === Trezor.PROTO.CardanoCertificateType.STAKE_DEREGISTRATION ||
28
40
  certificateType === Trezor.PROTO.CardanoCertificateType.STAKE_DELEGATION;
@@ -53,10 +65,15 @@ export class TrezorKeyAgent extends KeyAgentBase {
53
65
  constructor({ isTrezorInitialized, ...serializableData }, dependencies) {
54
66
  super({ ...serializableData, __typename: KeyAgentType.Trezor }, dependencies);
55
67
  _TrezorKeyAgent_communicationType.set(this, void 0);
68
+ _TrezorKeyAgent_trezorConfig.set(this, void 0);
56
69
  if (!isTrezorInitialized) {
57
70
  this.isTrezorInitialized = TrezorKeyAgent.initializeTrezorTransport(serializableData.trezorConfig);
58
71
  }
59
72
  __classPrivateFieldSet(this, _TrezorKeyAgent_communicationType, serializableData.trezorConfig.communicationType, "f");
73
+ __classPrivateFieldSet(this, _TrezorKeyAgent_trezorConfig, serializableData.trezorConfig, "f");
74
+ }
75
+ get trezorConfig() {
76
+ return __classPrivateFieldGet(this, _TrezorKeyAgent_trezorConfig, "f");
60
77
  }
61
78
  static async initializeTrezorTransport({ manifest, communicationType, silentMode = false, lazyLoad = false, shouldHandlePassphrase = false }) {
62
79
  const trezorConnect = getTrezorConnect(communicationType);
@@ -101,14 +118,18 @@ export class TrezorKeyAgent extends KeyAgentBase {
101
118
  throw transportTypedError(error);
102
119
  }
103
120
  }
104
- static async getXpub({ accountIndex, communicationType, purpose }) {
121
+ static async getXpub({ accountIndex, communicationType, purpose, derivationType }) {
105
122
  try {
106
123
  await TrezorKeyAgent.checkDeviceConnection(communicationType);
107
124
  const derivationPath = `m/${purpose}'/${CardanoKeyConst.COIN_TYPE}'/${accountIndex}'`;
108
125
  const trezorConnect = getTrezorConnect(communicationType);
126
+ const trezorDerivationType = derivationType ? mapDerivationType(derivationType) : undefined;
109
127
  const extendedPublicKey = await trezorConnect.cardanoGetPublicKey({
110
128
  path: derivationPath,
111
- showOnTrezor: true
129
+ showOnTrezor: true,
130
+ ...(derivationType && {
131
+ derivationType: trezorDerivationType
132
+ })
112
133
  });
113
134
  if (!extendedPublicKey.success) {
114
135
  throw new errors.TransportError('Failed to export extended account public key', extendedPublicKey.payload);
@@ -124,6 +145,7 @@ export class TrezorKeyAgent extends KeyAgentBase {
124
145
  const extendedAccountPublicKey = await TrezorKeyAgent.getXpub({
125
146
  accountIndex,
126
147
  communicationType: trezorConfig.communicationType,
148
+ derivationType: trezorConfig.derivationType,
127
149
  purpose
128
150
  });
129
151
  return new TrezorKeyAgent({
@@ -180,7 +202,12 @@ export class TrezorKeyAgent extends KeyAgentBase {
180
202
  ...(signingMode === Trezor.PROTO.CardanoTxSigningMode.MULTISIG_TRANSACTION && {
181
203
  additionalWitnessRequests: multiSigWitnessPaths
182
204
  }),
183
- signingMode
205
+ signingMode,
206
+ ...(this.trezorConfig.derivationType
207
+ ? {
208
+ derivationType: mapDerivationType(this.trezorConfig.derivationType)
209
+ }
210
+ : {})
184
211
  });
185
212
  const expectedPublicKeys = await Promise.all(util
186
213
  .ownSignatureKeyPaths(body, knownAddresses, txInKeyPathMap, undefined, scripts)
@@ -217,5 +244,5 @@ export class TrezorKeyAgent extends KeyAgentBase {
217
244
  throw new NotImplementedError('Operation not supported!');
218
245
  }
219
246
  }
220
- _TrezorKeyAgent_communicationType = new WeakMap();
247
+ _TrezorKeyAgent_communicationType = new WeakMap(), _TrezorKeyAgent_trezorConfig = new WeakMap();
221
248
  //# sourceMappingURL=TrezorKeyAgent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TrezorKeyAgent.js","sourceRoot":"","sources":["../../src/TrezorKeyAgent.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAW,mBAAmB,EAAiB,MAAM,mBAAmB,CAAC;AAChF,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,YAAY,EAEZ,YAAY,EACZ,UAAU,EACV,OAAO,EAKP,MAAM,EACN,IAAI,EACL,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAW,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAEpD,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC;AACzC,MAAM,gBAAgB,GAAI,iBAAyB,CAAC,OAAO;IACzD,CAAC,CAAG,iBAAyB,CAAC,OAAoC;IAClE,CAAC,CAAC,iBAAiB,CAAC;AAEtB,MAAM,mBAAmB,GAAG,CAAC,KAAW,EAAE,EAAE,CAC1C,IAAI,MAAM,CAAC,mBAAmB,CAC5B,yBAAyB,EACzB,IAAI,MAAM,CAAC,cAAc,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAC5D,CAAC;AAqBJ,MAAM,gBAAgB,GAAG,CAAC,iBAAoC,EAA6B,EAAE,CAC3F,iBAAiB,KAAK,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,CAAC;AAEtF,MAAM,mBAAmB,GAAG,CAAC,eAAoD,EAAW,EAAE,CAC5F,eAAe,KAAK,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,kBAAkB;IAC1E,eAAe,KAAK,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,oBAAoB;IAC5E,eAAe,KAAK,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,gBAAgB,CAAC;AAE3E,MAAM,iCAAiC,GAAG,CAAC,EAAsD,EAAW,EAAE;IAC5G,IAAI,EAAE,CAAC,YAAY,EAAE;QACnB,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,YAAY,EAAE;YAClC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU;gBAAE,OAAO,KAAK,CAAC;SACvE;KACF;IACD,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAgB;IACxC,IAAI,CAAC,mCAAmC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,SAAS,CAAC;CACxG,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,EAAsD,EAAW,EAAE;IACrF,MAAM,mBAAmB,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEnE,MAAM,oBAAoB,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAmB,IAAI,GAAG,CAAC,CAAC;IAEnF,OAAO,CACL,mBAAmB;QACnB,oBAAoB;QACpB,CAAC,EAAE,CAAC,gBAAgB;QACpB,CAAC,EAAE,CAAC,gBAAgB;QACpB,CAAC,EAAE,CAAC,eAAe;QACnB,CAAC,EAAE,CAAC,eAAe;QACnB,iCAAiC,CAAC,EAAE,CAAC,CACtC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,OAAO,cAAe,SAAQ,YAAY;IAI9C,YAAY,EAAE,mBAAmB,EAAE,GAAG,gBAAgB,EAAuB,EAAE,YAAkC;QAC/G,KAAK,CAAC,EAAE,GAAG,gBAAgB,EAAE,UAAU,EAAE,YAAY,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC;QAHhF,oDAA+C;QAI7C,IAAI,CAAC,mBAAmB,EAAE;YACxB,IAAI,CAAC,mBAAmB,GAAG,cAAc,CAAC,yBAAyB,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;SACpG;QACD,uBAAA,IAAI,qCAAsB,gBAAgB,CAAC,YAAY,CAAC,iBAAiB,MAAA,CAAC;IAC5E,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,EACrC,QAAQ,EACR,iBAAiB,EACjB,UAAU,GAAG,KAAK,EAClB,QAAQ,GAAG,KAAK,EAChB,sBAAsB,GAAG,KAAK,EACjB;QACb,MAAM,aAAa,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;QAC1D,IAAI;YACF,MAAM,aAAa,CAAC,IAAI,CAAC;gBAKvB,QAAQ,EAAE,iBAAiB,KAAK,iBAAiB,CAAC,IAAI,IAAI,QAAQ;gBAGlE,QAAQ;gBAER,KAAK,EAAE,iBAAiB,KAAK,iBAAiB,CAAC,IAAI,IAAI,CAAC,UAAU;aACnE,CAAC,CAAC;YAEH,IAAI,sBAAsB,EAAE;gBAC1B,aAAa,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;oBAE1C,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;wBACvE,aAAa,CAAC,UAAU,CAAC;4BACvB,OAAO,EAAE;gCACP,kBAAkB,EAAE,IAAI;gCACxB,IAAI,EAAE,IAAI;gCACV,KAAK,EAAE,EAAE;6BACV;4BACD,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,kBAAkB;yBACnC,CAAC,CAAC;qBACJ;gBACH,CAAC,CAAC,CAAC;aACJ;YAED,OAAO,IAAI,CAAC;SACb;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,KAAK,CAAC,IAAI,KAAK,yBAAyB;gBAAE,OAAO,IAAI,CAAC;YAC1D,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;SAClC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,iBAAoC;QACrE,MAAM,aAAa,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;QAC1D,IAAI;YACF,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC;YACzD,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;gBAC3B,MAAM,IAAI,MAAM,CAAC,cAAc,CAAC,sBAAsB,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;aACjF;YACD,OAAO,cAAc,CAAC,OAAO,CAAC;SAC/B;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;SAClC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EACnB,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACY;QACnB,IAAI;YACF,MAAM,cAAc,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;YAC9D,MAAM,cAAc,GAAG,KAAK,OAAO,KAAK,eAAe,CAAC,SAAS,KAAK,YAAY,GAAG,CAAC;YACtF,MAAM,aAAa,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;YAC1D,MAAM,iBAAiB,GAAG,MAAM,aAAa,CAAC,mBAAmB,CAAC;gBAChE,IAAI,EAAE,cAAc;gBACpB,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;YACH,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE;gBAC9B,MAAM,IAAI,MAAM,CAAC,cAAc,CAAC,8CAA8C,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;aAC5G;YACD,OAAO,MAAM,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SACtE;QAAC,OAAO,KAAU,EAAE;YACnB,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;SAClC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,EAAE,OAAO,EAAE,YAAY,GAAG,CAAC,EAAE,YAAY,EAAE,OAAO,GAAG,UAAU,CAAC,QAAQ,EAA6B,EACrG,YAAkC;QAElC,MAAM,mBAAmB,GAAG,MAAM,cAAc,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC;QACzF,MAAM,wBAAwB,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC;YAC5D,YAAY;YACZ,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;YACjD,OAAO;SACR,CAAC,CAAC;QACH,OAAO,IAAI,cAAc,CACvB;YACE,YAAY;YACZ,OAAO;YACP,wBAAwB;YACxB,mBAAmB;YACnB,OAAO;YACP,YAAY;SACb,EACD,YAAY,CACb,CAAC;IACJ,CAAC;IAOD,MAAM,CAAC,gBAAgB,CAAC,EAAsD;QAC5E,IAAI,EAAE,CAAC,YAAY,EAAE;YACnB,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,YAAY,EAAE;gBAElC,IACE,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,uBAAuB;oBACzE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC;oBAEjE,OAAO,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,0BAA0B,CAAC;aACvE;SACF;QAGD,IAAI,EAAE,CAAC,gBAAgB,IAAI,EAAE,CAAC,gBAAgB,IAAI,EAAE,CAAC,eAAe,IAAI,EAAE,CAAC,eAAe,EAAE;YAC1F,OAAO,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,kBAAkB,CAAC;SAC7D;QAID,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE;YAClB,OAAO,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,oBAAoB,CAAC;SAC/D;QAGD,OAAO,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,oBAAoB,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,MAAqC,EACrC,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAA0B;QAEnE,IAAI;YACF,MAAM,IAAI,CAAC,mBAAmB,CAAC;YAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAwB,CAAC;YAEjD,MAAM,aAAa,GAAG,MAAM;iBACzB,OAAO,EAAE;iBACT,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACX,GAAG,CAAC,eAAe,EAAE;gBACnB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,WAAW;gBAC7D,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,YAAY,CACjE,CAAC;YACJ,MAAM,sBAAsB,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAE,eAAe,EAAE;gBACzE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,WAAW;gBAC7D,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,YAAY,CAAC;YAEjE,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE;gBAC1C,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,sBAAsB;gBACtB,cAAc;gBACd,aAAa;gBACb,WAAW,EAAE,MAAM,CAAC,aAAa,EAAE;gBACnC,cAAc;aACf,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,cAAc,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAElE,MAAM,aAAa,GAAG,gBAAgB,CAAC,uBAAA,IAAI,yCAAmB,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,sBAAsB,CAAC;gBACxD,GAAG,YAAY;gBACf,GAAG,CAAC,WAAW,KAAK,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,oBAAoB,IAAI;oBAC5E,yBAAyB,EAAE,oBAAoB;iBAChD,CAAC;gBACF,WAAW;aACZ,CAAC,CAAC;YAEH,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1C,IAAI;iBACD,oBAAoB,CAAC,IAAI,EAAE,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC;iBAC9E,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,CACjE,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;gBACnB,MAAM,IAAI,MAAM,CAAC,cAAc,CAAC,8CAA8C,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;aACjG;YAED,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC;YAElC,IAAI,CAAC,6BAA6B,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;gBACzD,MAAM,IAAI,MAAM,CAAC,cAAc,CAAC,4CAA4C,CAAC,CAAC;aAC/E;YAED,OAAO,IAAI,GAAG,CACZ,MAAM,OAAO,CAAC,GAAG,CACf,UAAU,CAAC,SAAS;iBACjB,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;iBAC5F,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBACrB,MAAM,SAAS,GAAG,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC7D,MAAM,SAAS,GAAG,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAChE,OAAO,CAAC,SAAS,EAAE,SAAS,CAAU,CAAC;YACzC,CAAC,CAAC,CACL,CACF,CAAC;SACH;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,yBAAyB,EAAE;gBACvD,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;aAC5E;YACD,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;SAClC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,mBAAmB,CAAC,cAAc,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,MAAM,IAAI,mBAAmB,CAAC,0BAA0B,CAAC,CAAC;IAC5D,CAAC;CACF"}
1
+ {"version":3,"file":"TrezorKeyAgent.js","sourceRoot":"","sources":["../../src/TrezorKeyAgent.ts"],"names":[],"mappings":"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"}