@swapkit/wallet-hardware 6.1.1 → 6.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/chunk-035dayv6.js +4 -0
  2. package/dist/chunk-035dayv6.js.map +10 -0
  3. package/dist/{chunk-yrxe491r.js → chunk-2jddegc1.js} +3 -3
  4. package/dist/{chunk-yrxe491r.js.map → chunk-2jddegc1.js.map} +1 -1
  5. package/dist/{chunk-gr3eswf1.js → chunk-42xrtarj.js} +3 -3
  6. package/dist/{chunk-gr3eswf1.js.map → chunk-42xrtarj.js.map} +1 -1
  7. package/dist/{chunk-3t17wpjg.js → chunk-545s1tsc.js} +3 -3
  8. package/dist/{chunk-3t17wpjg.js.map → chunk-545s1tsc.js.map} +1 -1
  9. package/dist/{chunk-1amf58aq.js → chunk-5xg0xc0g.js} +3 -3
  10. package/dist/{chunk-1amf58aq.js.map → chunk-5xg0xc0g.js.map} +1 -1
  11. package/dist/{chunk-xn0fnag5.js → chunk-71kfnwdp.js} +3 -3
  12. package/dist/{chunk-xn0fnag5.js.map → chunk-71kfnwdp.js.map} +1 -1
  13. package/dist/{chunk-xmvg4cds.js → chunk-7kwtpk70.js} +3 -3
  14. package/dist/{chunk-xmvg4cds.js.map → chunk-7kwtpk70.js.map} +1 -1
  15. package/dist/{chunk-0arpsm5f.js → chunk-7rbvcts9.js} +3 -3
  16. package/dist/{chunk-0arpsm5f.js.map → chunk-7rbvcts9.js.map} +1 -1
  17. package/dist/{chunk-k3thje6a.js → chunk-a47dwwv6.js} +3 -3
  18. package/dist/{chunk-k3thje6a.js.map → chunk-a47dwwv6.js.map} +1 -1
  19. package/dist/{chunk-5c7b7z2d.js → chunk-a6vcbcyd.js} +3 -3
  20. package/dist/{chunk-5c7b7z2d.js.map → chunk-a6vcbcyd.js.map} +1 -1
  21. package/dist/{chunk-wfbg89d3.js → chunk-b093ajcq.js} +3 -3
  22. package/dist/{chunk-wfbg89d3.js.map → chunk-b093ajcq.js.map} +1 -1
  23. package/dist/{chunk-ds2m83jp.js → chunk-b7htg03t.js} +3 -3
  24. package/dist/{chunk-ds2m83jp.js.map → chunk-b7htg03t.js.map} +1 -1
  25. package/dist/chunk-g6rrzxcx.js +5 -0
  26. package/dist/chunk-g6rrzxcx.js.map +10 -0
  27. package/dist/{chunk-jewm2ag3.js → chunk-j3n6fbqh.js} +4 -4
  28. package/dist/{chunk-jewm2ag3.js.map → chunk-j3n6fbqh.js.map} +1 -1
  29. package/dist/{chunk-nhva847d.js → chunk-kaw35ae2.js} +3 -3
  30. package/dist/{chunk-nhva847d.js.map → chunk-kaw35ae2.js.map} +1 -1
  31. package/dist/{chunk-dptbnkzm.js → chunk-mzan0m09.js} +4 -4
  32. package/dist/{chunk-dptbnkzm.js.map → chunk-mzan0m09.js.map} +1 -1
  33. package/dist/{chunk-jzrytcrf.js → chunk-rydhx4se.js} +3 -3
  34. package/dist/{chunk-jzrytcrf.js.map → chunk-rydhx4se.js.map} +1 -1
  35. package/dist/{chunk-09e51wma.js → chunk-s2akss77.js} +3 -3
  36. package/dist/{chunk-09e51wma.js.map → chunk-s2akss77.js.map} +1 -1
  37. package/dist/{chunk-tm47brht.js → chunk-s5a5v0m1.js} +3 -3
  38. package/dist/{chunk-tm47brht.js.map → chunk-s5a5v0m1.js.map} +1 -1
  39. package/dist/{chunk-8m2sn76p.js → chunk-sbebfr50.js} +3 -3
  40. package/dist/{chunk-8m2sn76p.js.map → chunk-sbebfr50.js.map} +1 -1
  41. package/dist/{chunk-xx7cwpzq.js → chunk-sp3dq5hr.js} +2 -2
  42. package/dist/{chunk-hg71hp4m.js → chunk-tecse0bj.js} +3 -3
  43. package/dist/{chunk-hg71hp4m.js.map → chunk-tecse0bj.js.map} +1 -1
  44. package/dist/chunk-tm5gk51g.js +4 -0
  45. package/dist/{chunk-eenx3cv6.js → chunk-x28a37pz.js} +3 -3
  46. package/dist/{chunk-eenx3cv6.js.map → chunk-x28a37pz.js.map} +1 -1
  47. package/dist/{chunk-3h1f3hyp.js → chunk-ys51wj1c.js} +3 -3
  48. package/dist/{chunk-3h1f3hyp.js.map → chunk-ys51wj1c.js.map} +1 -1
  49. package/dist/keepkey/index.cjs +2 -2
  50. package/dist/keepkey/index.cjs.map +3 -3
  51. package/dist/keepkey/index.js +2 -2
  52. package/dist/keepkey/index.js.map +3 -3
  53. package/dist/ledger/index.cjs +30 -30
  54. package/dist/ledger/index.cjs.map +11 -7
  55. package/dist/ledger/index.js +2 -2
  56. package/dist/ledger/index.js.map +10 -7
  57. package/dist/trezor/index.cjs +2 -2
  58. package/dist/trezor/index.cjs.map +6 -5
  59. package/dist/trezor/index.js +2 -2
  60. package/dist/trezor/index.js.map +3 -3
  61. package/dist/types/helpers/cardano.d.ts +35 -0
  62. package/dist/types/helpers/cardano.d.ts.map +1 -0
  63. package/dist/types/keepkey/index.d.ts +1 -0
  64. package/dist/types/keepkey/index.d.ts.map +1 -1
  65. package/dist/types/ledger/clients/cardano.d.ts +24 -0
  66. package/dist/types/ledger/clients/cardano.d.ts.map +1 -0
  67. package/dist/types/ledger/clients/evm.d.ts +1 -0
  68. package/dist/types/ledger/clients/evm.d.ts.map +1 -1
  69. package/dist/types/ledger/clients/stellar.d.ts +13 -0
  70. package/dist/types/ledger/clients/stellar.d.ts.map +1 -0
  71. package/dist/types/ledger/clients/ton.d.ts +13 -0
  72. package/dist/types/ledger/clients/ton.d.ts.map +1 -0
  73. package/dist/types/ledger/helpers/getLedgerAddress.d.ts.map +1 -1
  74. package/dist/types/ledger/helpers/getLedgerClient.d.ts +8 -1
  75. package/dist/types/ledger/helpers/getLedgerClient.d.ts.map +1 -1
  76. package/dist/types/ledger/index.d.ts +3 -2
  77. package/dist/types/ledger/index.d.ts.map +1 -1
  78. package/dist/types/ledger/types.d.ts +2 -2
  79. package/dist/types/ledger/types.d.ts.map +1 -1
  80. package/dist/types/trezor/cardanoSigner.d.ts.map +1 -1
  81. package/dist/types/trezor/index.d.ts +1 -0
  82. package/dist/types/trezor/index.d.ts.map +1 -1
  83. package/dist/types/trezor/stellarSigner.d.ts +1 -1
  84. package/package.json +16 -4
  85. package/src/helpers/cardano.ts +112 -0
  86. package/src/keepkey/index.ts +14 -14
  87. package/src/ledger/clients/cardano.ts +204 -0
  88. package/src/ledger/clients/evm.ts +4 -0
  89. package/src/ledger/clients/stellar.ts +83 -0
  90. package/src/ledger/clients/ton.ts +282 -0
  91. package/src/ledger/helpers/getLedgerAddress.ts +16 -0
  92. package/src/ledger/helpers/getLedgerClient.ts +13 -0
  93. package/src/ledger/index.ts +100 -28
  94. package/src/ledger/types.ts +2 -0
  95. package/src/trezor/cardanoSigner.ts +24 -80
  96. package/src/trezor/index.ts +86 -64
  97. package/dist/chunk-5p3ttw6y.js +0 -4
  98. package/dist/chunk-qjq7gvyx.js +0 -4
  99. package/dist/chunk-qjq7gvyx.js.map +0 -10
  100. /package/dist/{chunk-xx7cwpzq.js.map → chunk-sp3dq5hr.js.map} +0 -0
  101. /package/dist/{chunk-5p3ttw6y.js.map → chunk-tm5gk51g.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import{Ba as D,Ca as H}from"./chunk-jzrytcrf.js";import{$a as z,$c as VQ,Ib as o,Jb as U,La as qY,Mc as zQ,Oa as _Q,Pa as _0,Sc as s0,Sd as vX,Ta as i,Tc as q0,Ua as CQ,Uc as a0,Va as W,Vc as r,Wc as TQ,Xa as qQ,Xc as c,Ya as j,Yc as GQ,Zc as n0,_c as i0,ab as nX,bb as P,cb as b,eb as DQ,hb as I0,id as hQ,jd as T,kd as I,ld as p,md as $8,pc as FX}from"./chunk-dptbnkzm.js";import{Wd as ZY}from"./chunk-nhva847d.js";var BK=ZY(qY(),1);var V={AppBinding:Symbol.for("AppBinding")};var d="Zcash";var ZQ={Dmk:Symbol.for("Dmk"),SessionId:Symbol.for("SessionId")};var v=224,m={FIRST:0,NEXT:128,CHANGE_PATH:255},g={DEFAULT:0,SAPLING:5,HASH_INPUT_CONTINUE:128},A={FIRST:0,NEXT:128,LAST:1},e={CONTINUE:0,FINISHED:1},UQ=255;var R={6300:{message:"GPAuthFailedError"},"63c0":{message:"PinRemainingAttemptsError"},6400:{message:"ExecutionError"},6700:{message:"IncorrectLengthError"},6981:{message:"CommandIncompatibleFileStructureError"},6982:{message:"SecurityStatusNotSatisfiedError"},6985:{message:"UserRejectedError"},6986:{message:"ConditionsOfUseNotSatisfiedError"},"6a80":{message:"IncorrectDataError"},"6a84":{message:"NotEnoughMemorySpaceError"},"6a88":{message:"ReferencedDataNotFoundError"},"6a89":{message:"FileAlreadyExistsError"},"6a8a":{message:"SwapWithoutTrustedInputsError"},"6b00":{message:"IncorrectP1P2Error"},"6d00":{message:"InsNotSupportedError"},"6e00":{message:"ClaNotSupportedError"},"6f00":{message:"TechnicalProblemError"},"6f01":{message:"VersionParsingFailError"},"6f03":{message:"RngFailureError"},"6f42":{message:"LicensingError"},"6faa":{message:"HaltedError"},9240:{message:"MemoryProblemError"},9400:{message:"NoEFSelectedError"},9402:{message:"InvalidOffsetError"},9404:{message:"FileNotFoundError"},9408:{message:"InconsistentFileError"},9484:{message:"AlgorithmNotSupportedError"},9485:{message:"InvalidKCVError"},9802:{message:"CodeNotInitializedError"},9804:{message:"AccessConditionNotFullfilledError"},9808:{message:"ContradictionSecretCodeStatusError"},9810:{message:"ContradictionInvalidationError"},9840:{message:"CodeBlockedError"},9850:{message:"MaxValueReachedError"},b007:{message:"BadStateError"},unsupported_v6_transaction:{message:"UnsupportedV6TransactionError"}};class c0 extends DQ{constructor(Q){super({tag:"ZcashAppCommandError",...Q})}}var M=(Q)=>new c0(Q);var l0=32,Z8=64;class KQ{name="GetAddress";args;errorHelper=new D(R,M);constructor(Q){this.args=Q}getApdu(){let Q={cla:v,ins:Z8,p1:this.args.checkOnDevice?1:0,p2:0},X=new W(Q),$=H.splitPath(this.args.derivationPath);return X.add8BitUIntToData($.length),$.forEach((Y)=>{X.add32BitUIntToData(Y)}),X.build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new qQ(Q),$=X.extract8BitUInt();if($===void 0)return P({error:new j("Public key length is missing")});if(X.testMinimalLength($)===!1)return P({error:new j("Public key is missing")});let Y=X.extractFieldByLength($);if(Y===void 0)return P({error:new j("Unable to extract public key")});let J=X.extract8BitUInt();if(J===void 0)return P({error:new j("Address length is missing")});if(X.testMinimalLength(J)===!1)return P({error:new j("Address is missing")});let N=X.extractFieldByLength(J);if(N===void 0)return P({error:new j("Unable to extract address")});let Z=X.encodeToString(N);if(X.testMinimalLength(l0)===!1)return P({error:new j("Chain code is missing")});let q=X.extractFieldByLength(l0);return q===void 0?P({error:new j("Unable to extract chain code")}):P({data:{publicKey:Y,address:Z,chainCode:q}})})}}var q8=196;class Q0{name="getAppConfig";errorHelper=new D(R,M);getApdu(){return new W({cla:v,ins:q8,p1:0,p2:g.DEFAULT}).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new qQ(Q);X.extract8BitUInt(),X.extract8BitUInt();let $=X.extract8BitUInt(),Y=X.extract8BitUInt(),J=X.extract8BitUInt();return $===void 0||Y===void 0||J===void 0?P({error:new j("Cannot extract version")}):P({data:{version:`${$}.${Y}.${J}`}})})}}class X0{name="SignMessage";args;constructor(Q){this.args=Q}getApdu(){throw console.log(this.args),Error("SignMessageCommand.getApdu() not implemented")}parseResponse(Q){throw Error("SignMessageCommand.parseResponse() not implemented")}}var OQ={UFVK:0,ORCHARD_FVK:1},K8=80;class LQ{name="GetFullViewingKey";errorHelper=new D(R,M);args;constructor(Q){this.args=Q}getApdu(){let Q=this.args.isContinue?m.NEXT:m.FIRST,X={cla:v,ins:K8,p1:Q,p2:this.args.p2},$=new W(X);if(!this.args.isContinue){let Y=H.splitPath(this.args.derivationPath);if($.add8BitUIntToData(Y.length),Y.forEach((J)=>{$.add32BitUIntToData(J)}),this.args.p2===OQ.UFVK){if(!this.args.transparentDerivationPath)throw Error("GetFullViewingKeyCommand: UFVK export requires a transparent derivation path (app-zcash >= v3.8.0)");let J=H.splitPath(this.args.transparentDerivationPath);$.add8BitUIntToData(J.length),J.forEach((N)=>{$.add32BitUIntToData(N)})}}return $.build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>P({data:{data:new Uint8Array(Q.data)}}))}}function o0(Q){return Q==="orchardFvk"?OQ.ORCHARD_FVK:OQ.UFVK}function L(...Q){let X=Q.reduce((J,N)=>J+N.length,0),$=new Uint8Array(X),Y=0;return Q.forEach((J)=>{$.set(J,Y),Y+=J.length}),$}function bQ(Q,X){return`32'/${Q}/${X}`}var p0=96;function O8(Q){let X=`Orchard FVK must be ${p0} bytes (got ${Q.length})`;if(Q.length<2)return X;let $=new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint16(0,!1);return 2+$===Q.length?`${X}. Payload matches UFVK framing (u16 BE length + ${$} bytes). Use mode "ufvk" for this response, or use a Zcash app build that exports raw Orchard FVK for GET_VK P2=0x01.`:X}function P8(Q){return Q.length!==p0?z({error:new j(O8(Q))}):z({data:{mode:"orchardFvk",fullViewingKey:Q}})}function z8(Q){if(Q.length<2)return!1;let X=new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint16(0,!1);return Q.length>=2+X}function j8(Q){if(Q.length<2)return z({error:new j("UFVK string length is missing")});let X=new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint16(0,!1);if(2+X>Q.length)return z({error:new j("UFVK string is truncated")});let $=Q.slice(2,2+X),Y;try{Y=new TextDecoder("utf-8",{fatal:!0}).decode($)}catch{return z({error:new j("UFVK is not valid UTF-8")})}return 2+X<Q.length?z({error:new j("UFVK response has extra trailing bytes")}):z({data:{mode:"ufvk",fullViewingKey:Y}})}function x8(Q){let X=Q.split("/");if(X.length<3)return{error:new j(`Zcash UFVK derivation path must have at least purpose/coin/account levels (got "${Q}")`)};let[,$,Y]=X;return!$||!Y?{error:new j(`Zcash UFVK derivation path components are malformed (got "${Q}")`)}:{orchardDerivationPath:bQ($,Y),transparentDerivationPath:`44'/${$}/${Y}`}}class $0{constructor(Q,X){this.api=Q,this.args=X}async run(){let Q=o0(this.args.mode),X;if(this.args.mode==="ufvk"){let N=x8(this.args.derivationPath);if("error"in N)return z({error:N.error});X={isContinue:!1,p2:OQ.UFVK,derivationPath:N.orchardDerivationPath,transparentDerivationPath:N.transparentDerivationPath}}else X={isContinue:!1,p2:OQ.ORCHARD_FVK,derivationPath:this.args.derivationPath};let $=await this.api.sendCommand(new LQ(X));if(!b($))return z({error:$.error});let Y=new Uint8Array($.data.data),J=Y;for(;Y.length===CQ&&!(this.args.mode==="ufvk"&&z8(J));){let N=await this.api.sendCommand(new LQ({isContinue:!0,p2:Q}));if(!b(N))return z({error:N.error});Y=new Uint8Array(N.data.data),J=L(J,Y)}return this.args.mode==="ufvk"?j8(J):P8(J)}}var G8=81;class Y0{name="GetShieldedAddress";args;errorHelper=new D(R,M);constructor(Q){this.args=Q}getApdu(){let Q={cla:v,ins:G8,p1:this.args.checkOnDevice?1:0,p2:0},X=new W(Q),$=H.splitPath(this.args.orchardDerivationPath),Y=H.splitPath(this.args.transparentDerivationPath);return[$,Y].forEach((J)=>{X.add8BitUIntToData(J.length),J.forEach((N)=>{X.add32BitUIntToData(N)})}),X.build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{if(Q.data.length===CQ)return P({error:new j("Response requires continuation which is not supported")});let X=new qQ(Q),$=X.extract16BitUInt();if($===void 0)return P({error:new j("Address length is missing")});if(X.testMinimalLength($)===!1)return P({error:new j("Address is missing")});let Y=X.extractFieldByLength($);if(Y===void 0)return P({error:new j("Unable to extract address")});if(X.testMinimalLength(1))return P({error:new j("Unexpected trailing bytes in response")});let J;try{J=new TextDecoder("utf-8",{fatal:!0}).decode(Y)}catch{return P({error:new j("Address is not valid UTF-8")})}return P({data:{address:J}})})}}function w8(Q){let X=Q.startsWith("m/")?Q.slice(2):Q,$=X.split("/");if($.length!==5)return{error:new j(`Shielded address derivation path must have exactly 5 levels purpose/coin/account/change/index (got "${Q}")`)};let Y=(O)=>/^\d+'?$/.test(O);if(!$.every(Y))return{error:new j(`Shielded address derivation path contains non-numeric components (got "${Q}")`)};let[J,N,Z,q]=$;return J!=="44'"?{error:new j(`Shielded address derivation path purpose must be 44' (got "${J}")`)}:N?.endsWith("'")?Z?.endsWith("'")?q!=="0"?{error:new j(`Shielded address derivation path change must be 0 (got "${q}")`)}:{orchardDerivationPath:bQ(N,Z),transparentDerivationPath:X}:{error:new j(`Shielded address derivation path account must be hardened (got "${Z}")`)}:{error:new j(`Shielded address derivation path coin type must be hardened (got "${N}")`)}}class J0{constructor(Q,X){this.api=Q,this.args=X}async run(){let Q=w8(this.args.derivationPath);if("error"in Q)return z({error:Q.error});let X=await this.api.sendCommand(new Y0({orchardDerivationPath:Q.orchardDerivationPath,transparentDerivationPath:Q.transparentDerivationPath,checkOnDevice:this.args.checkOnDevice}));return b(X)?z({data:{address:X.data.address}}):z({error:X.error})}}var N0=4,k8=66;class yQ{name="GetTrustedInput";errorHelper=new D(R,M);args;constructor(Q){this.args=Q}getApdu(){let{transaction:Q,indexLookup:X}=this.args,$,Y=!1;if(typeof X=="number"&&X>=0){Y=!0;let N=new Uint8Array(N0);new DataView(N.buffer,N.byteOffset,N.byteLength).setUint32(0,X,!1),$=new Uint8Array(Q.length+N0),$.set(N,0),$.set(Q,N0)}else $=Q;let J={cla:v,ins:k8,p1:Y?m.FIRST:m.NEXT,p2:g.DEFAULT};return new W(J).addBufferToData($).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:Q}))}}class Z0 extends DQ{appVersion;constructor(Q){super({tag:"UnsupportedV6TransactionError",message:`The Zcash app version ${Q} installed on the device does not support V6 (Ironwood) source transactions, so a UTXO received from one cannot be signed. Support is expected in a future Zcash app update.`,errorCode:"unsupported_v6_transaction"}),this.appVersion=Q}}function F8(Q,X,$,Y){if(typeof Q.setBigUint64==="function")return Q.setBigUint64(X,$,Y);let J=BigInt(32),N=BigInt(4294967295),Z=Number($>>J&N),q=Number($&N),O=Y?4:0,w=Y?0:4;Q.setUint32(X+O,Z,Y),Q.setUint32(X+w,q,Y)}function K0(Q,X,$){return Q&X^~Q&$}function O0(Q,X,$){return Q&X^Q&$^X&$}class xQ extends i0{constructor(Q,X,$,Y){super();this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=Q,this.outputLen=X,this.padOffset=$,this.isLE=Y,this.buffer=new Uint8Array(Q),this.view=TQ(this.buffer)}update(Q){q0(this),Q=n0(Q),s0(Q);let{view:X,buffer:$,blockLen:Y}=this,J=Q.length;for(let N=0;N<J;){let Z=Math.min(Y-this.pos,J-N);if(Z===Y){let q=TQ(Q);for(;Y<=J-N;N+=Y)this.process(q,N);continue}if($.set(Q.subarray(N,N+Z),this.pos),this.pos+=Z,N+=Z,this.pos===Y)this.process(X,0),this.pos=0}return this.length+=Q.length,this.roundClean(),this}digestInto(Q){q0(this),a0(Q,this),this.finished=!0;let{buffer:X,view:$,blockLen:Y,isLE:J}=this,{pos:N}=this;if(X[N++]=128,r(this.buffer.subarray(N)),this.padOffset>Y-N)this.process($,0),N=0;for(let K=N;K<Y;K++)X[K]=0;F8($,Y-8,BigInt(this.length*8),J),this.process($,0);let Z=TQ(Q),q=this.outputLen;if(q%4)throw Error("_sha2: outputLen should be aligned to 32bit");let O=q/4,w=this.get();if(O>w.length)throw Error("_sha2: outputLen bigger than state");for(let K=0;K<O;K++)Z.setUint32(4*K,w[K],J)}digest(){let{buffer:Q,outputLen:X}=this;this.digestInto(Q);let $=Q.slice(0,X);return this.destroy(),$}_cloneInto(Q){Q||(Q=new this.constructor),Q.set(...this.get());let{blockLen:X,buffer:$,length:Y,finished:J,destroyed:N,pos:Z}=this;if(Q.destroyed=N,Q.finished=J,Q.length=Y,Q.pos=Z,Y%X)Q.buffer.set($);return Q}clone(){return this._cloneInto()}}var s=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var v8=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),e0=(()=>Uint8Array.from(Array(16).fill(0).map((Q,X)=>X)))(),R8=(()=>e0.map((Q)=>(9*Q+5)%16))(),r0=(()=>{let $=[[e0],[R8]];for(let Y=0;Y<4;Y++)for(let J of $)J.push(J[Y].map((N)=>v8[N]));return $})(),QX=(()=>r0[0])(),XX=(()=>r0[1])(),$X=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map((Q)=>Uint8Array.from(Q)),M8=QX.map((Q,X)=>Q.map(($)=>$X[X][$])),W8=XX.map((Q,X)=>Q.map(($)=>$X[X][$])),U8=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),D8=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function t0(Q,X,$,Y){if(Q===0)return X^$^Y;if(Q===1)return X&$|~X&Y;if(Q===2)return(X|~$)^Y;if(Q===3)return X&Y|$&~Y;return X^($|~Y)}var BQ=new Uint32Array(16);class P0 extends xQ{constructor(){super(64,20,8,!0);this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){let{h0:Q,h1:X,h2:$,h3:Y,h4:J}=this;return[Q,X,$,Y,J]}set(Q,X,$,Y,J){this.h0=Q|0,this.h1=X|0,this.h2=$|0,this.h3=Y|0,this.h4=J|0}process(Q,X){for(let x=0;x<16;x++,X+=4)BQ[x]=Q.getUint32(X,!0);let $=this.h0|0,Y=$,J=this.h1|0,N=J,Z=this.h2|0,q=Z,O=this.h3|0,w=O,K=this.h4|0,k=K;for(let x=0;x<5;x++){let f=4-x,y=U8[x],h=D8[x],F=QX[x],G=XX[x],t=M8[x],jQ=W8[x];for(let u=0;u<16;u++){let NQ=GQ($+t0(x,J,Z,O)+BQ[F[u]]+y,t[u])+K|0;$=K,K=O,O=GQ(Z,10)|0,Z=J,J=NQ}for(let u=0;u<16;u++){let NQ=GQ(Y+t0(f,N,q,w)+BQ[G[u]]+h,jQ[u])+k|0;Y=k,k=w,w=GQ(q,10)|0,q=N,N=NQ}}this.set(this.h1+Z+w|0,this.h2+O+k|0,this.h3+K+Y|0,this.h4+$+N|0,this.h0+J+q|0)}roundClean(){r(BQ)}destroy(){this.destroyed=!0,r(this.buffer),this.set(0,0,0,0,0)}}var YX=VQ(()=>new P0);var JX=YX;var L8=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),QQ=new Uint32Array(64);class z0 extends xQ{constructor(Q=32){super(64,Q,8,!1);this.A=s[0]|0,this.B=s[1]|0,this.C=s[2]|0,this.D=s[3]|0,this.E=s[4]|0,this.F=s[5]|0,this.G=s[6]|0,this.H=s[7]|0}get(){let{A:Q,B:X,C:$,D:Y,E:J,F:N,G:Z,H:q}=this;return[Q,X,$,Y,J,N,Z,q]}set(Q,X,$,Y,J,N,Z,q){this.A=Q|0,this.B=X|0,this.C=$|0,this.D=Y|0,this.E=J|0,this.F=N|0,this.G=Z|0,this.H=q|0}process(Q,X){for(let K=0;K<16;K++,X+=4)QQ[K]=Q.getUint32(X,!1);for(let K=16;K<64;K++){let k=QQ[K-15],x=QQ[K-2],f=c(k,7)^c(k,18)^k>>>3,y=c(x,17)^c(x,19)^x>>>10;QQ[K]=y+QQ[K-7]+f+QQ[K-16]|0}let{A:$,B:Y,C:J,D:N,E:Z,F:q,G:O,H:w}=this;for(let K=0;K<64;K++){let k=c(Z,6)^c(Z,11)^c(Z,25),x=w+k+K0(Z,q,O)+L8[K]+QQ[K]|0,y=(c($,2)^c($,13)^c($,22))+O0($,Y,J)|0;w=O,O=q,q=Z,Z=N+x|0,N=J,J=Y,Y=$,$=x+y|0}$=$+this.A|0,Y=Y+this.B|0,J=J+this.C|0,N=N+this.D|0,Z=Z+this.E|0,q=q+this.F|0,O=O+this.G|0,w=w+this.H|0,this.set($,Y,J,N,Z,q,O,w)}roundClean(){r(QQ)}destroy(){this.set(0,0,0,0,0,0,0,0),r(this.buffer)}}var NX=VQ(()=>new z0);var ZX=NX;function qX(Q){let X=new Uint8Array(4);return new DataView(X.buffer).setUint32(0,Q>>>0,!1),X}function E(Q){let X=new Uint8Array(4);return new DataView(X.buffer).setUint32(0,Q>>>0,!0),X}var fQ=50,PX=0,x0=4294967295,gQ=1,b8=118,C8=169,y8=20,T8=136,B8=172,a={NU6_3:3428143,NU6_2:3364600,NU6_1:3146400,NU6:2726400,NU5:1687104,CANOPY:1046400,HEARTWOOD:903000,BLOSSOM:653600,SAPLING:419200},_=(Q)=>Uint8Array.from(Q),V8=(Q,X)=>new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint16(X,!0),EQ=(Q,X)=>new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint32(X,!0),E8=(Q)=>({prevout:_(Q.prevout),script:_(Q.script),sequence:_(Q.sequence),tree:Q.tree?_(Q.tree):void 0}),I8=(Q)=>({amount:_(Q.amount),script:_(Q.script)}),zX=(Q)=>({version:_(Q.version),inputs:Q.inputs.map(E8),outputs:Q.outputs?.map(I8),locktime:Q.locktime?_(Q.locktime):void 0,timestamp:Q.timestamp?_(Q.timestamp):void 0,nVersionGroupId:Q.nVersionGroupId?_(Q.nVersionGroupId):void 0,nExpiryHeight:Q.nExpiryHeight?_(Q.nExpiryHeight):void 0,extraData:Q.extraData?_(Q.extraData):void 0,consensusBranchId:Q.consensusBranchId?_(Q.consensusBranchId):void 0}),C=(Q)=>Q<253?Uint8Array.of(Q):Q<=65535?Uint8Array.of(253,Q&255,Q>>8&255):Uint8Array.of(254,Q&255,Q>>8&255,Q>>16&255,Q>>24&255),KX=(Q,X)=>{if(X>=Q.length)return null;let $=Q[X];if($<253)return[$,X+1];if($===253)return X+3>Q.length?null:[V8(Q,X+1),X+3];if($===254)return X+5>Q.length?null:[EQ(Q,X+1)>>>0,X+5];if($===255){if(X+9>Q.length)return null;let Y=EQ(Q,X+1);return EQ(Q,X+5)!==0?null:[Y,X+9]}return null},jX=(Q)=>{if(Q.length===0)return null;let X=KX(Q,0);if(X===null||X[0]<0)return null;let $=X[0],Y=X[1],J=[];for(let N=0;N<$;N+=1){if(Y+8>Q.length)return null;Y+=8;let Z=KX(Q,Y);if(Z===null)return null;let[q,O]=Z;if(q<0||O+q>Q.length)return null;J.push(Q.subarray(O,O+q)),Y=O+q}return Y!==Q.length?null:J},OX=({outputs:Q})=>{let X=new Uint8Array(0);return Q&&(X=L(X,C(Q.length)),Q.forEach(($)=>{X=L(X,$.amount,C($.script.length),$.script)})),X},G0=(Q,X)=>{let $=new Uint8Array(0);if(Q.inputs.forEach((Z)=>{$=L($,Z.prevout,C(Z.script.length),Z.script,Z.sequence)}),Q.version.length>=4&&(EQ(Q.version,0)&2147483647)===4){let Z=Q.locktime&&Q.locktime.byteLength>0?Q.locktime:new Uint8Array(4),q=IQ(Q.nExpiryHeight),O=Q.extraData||new Uint8Array(0);return L(Q.version,Q.nVersionGroupId||new Uint8Array(0),Q.consensusBranchId||new Uint8Array(0),C(Q.inputs.length),$,OX(Q),new Uint8Array(3),Z,C(q.length+O.length),q,O)}let Y=OX(Q);Q.outputs&&Q.locktime&&(Y=L(Y,new Uint8Array(3),Q.extraData||new Uint8Array(0)));let J=Q.locktime&&Q.locktime.byteLength>0?Q.locktime:new Uint8Array(4),N=IQ(Q.nExpiryHeight);return L(Q.version,X??Q.timestamp??new Uint8Array(0),Q.nVersionGroupId||new Uint8Array(0),Q.consensusBranchId||new Uint8Array(0),J,N,C(Q.inputs.length),$,Y)},w0=(Q)=>{let X=((Q.at(64)??0)&1)===0?2:3;return L(Uint8Array.of(X),Q.subarray(1,33))},f8=(Q)=>JX(ZX(Q)),xX=(Q)=>{let X;if(Q.length===65?X=w0(Q):Q.length===33?X=Q:X=null,X?.length!==33)throw Error("Expected 65-byte uncompressed or 33-byte compressed secp256k1 public key");let $=f8(X);return L(Uint8Array.of(b8,C8,y8),$,Uint8Array.of(T8,B8))},SQ=(Q)=>Q==null||Q>=a.NU6_3?E(933566043):Q>=a.NU6_2?E(1412952880):Q>=a.NU6_1?E(1307332080):Q>=a.NU6?E(3370586197):Q>=a.NU5?E(3268858036):Q>=a.CANOPY?E(3925833126):Q>=a.HEARTWOOD?E(4122551051):Q>=a.BLOSSOM?E(733220448):Q>=a.SAPLING?E(1991772603):E(1537743641),GX=()=>E(2147483653),j0=4;function IQ(Q){if(Q===void 0||Q.byteLength===0)return new Uint8Array(j0);if(Q.byteLength!==j0)throw Error(`expiryHeight must be ${j0} bytes (got ${Q.byteLength})`);return _(Q)}var wX="0.0.0",kX={version:""},g8="3.8.0";class RX{resolve(Q,X){if(Q.sessionStateType===FX.Connected)return{isCompatible:!1,version:wX};let $=Q.currentApp;return $?.name!==d?{isCompatible:!1,version:wX}:{isCompatible:!0,version:$.version}}}function MX(Q){try{let X=Q.getDeviceSessionState(),$=new RX,{isCompatible:Y,version:J}=$.resolve(X,kX);return Y?new vX(X,kX,$).withMinVersionInclusive(g8).check()?void 0:J:void 0}catch{return}}var VX=255,S8=4,m8=VX-S8,H8=VX,W0=4,_8=5*W0,XQ=3*W0,S=32,EX=8,h8=1,mQ=64,WX=192,n=52,u8=16,FQ=512,PQ=n+FQ+u8,IX=80,A8=S,d8=A8+S,c8=d8+S,F0=S,l8=F0+S,wQ=l8+S,o8=wQ+PQ+IX,v0=S,R0=v0+S,M0=R0+S,p8=M0+S,kQ=p8+S,s8=kQ+PQ+IX,fX=h8+EX,a8=fX+S,UX=128,DX=50,n8=2147483647,i8=4,t8=5,gX=6,LX=3632576152,k0=(Q,X)=>(l(Q,X,X+1),Q[X]??0),U0=(Q,X)=>(l(Q,X,X+4),new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint32(X,!0)),e8=(Q,X)=>{l(Q,X,X+8);let $=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),Y=$.getUint32(X,!0);return $.getUint32(X+4,!0)*4294967296+Y},bX=(Q)=>`0x${Q.toString(16).padStart(8,"0")}`,l=(Q,X,$)=>{if(X<0||$<X||$>Q.length)throw Error("Malformed transaction while splitting trusted input chunks")},$Q=(Q,X)=>{let $=k0(Q,X);if($<253)return{value:$,byteLength:1,nextOffset:X+1};if($===253)return{value:k0(Q,X+1)+(k0(Q,X+2)<<8),byteLength:3,nextOffset:X+3};if($===254)return{value:U0(Q,X+1),byteLength:5,nextOffset:X+5};l(Q,X+1,X+9);let Y=e8(Q,X+1);if(!Number.isSafeInteger(Y))throw Error("CompactSize value exceeds JavaScript safe integer range");return{value:Y,byteLength:9,nextOffset:X+9}},CX=(Q)=>{let X=Q.filter((J)=>J.length>0);if(X.length===0)throw Error("Cannot send trusted input for an empty transaction");let $=[],Y=!0;return X.forEach((J)=>{let N=0;for(;N<J.length;){let Z=Math.min(N+(Y?m8:H8),J.length);$.push(J.slice(N,Z)),N=Z,Y=!1}}),$},r8=(Q,X)=>L(Q,new Uint8Array([4]),X),Q$={actions:[],digestData:new Uint8Array},X$=(Q,X)=>{let $=X;return{take:(Y)=>{l(Q,$,$+Y);let J=Q.slice($,$+Y);return $+=Y,J},skip:(Y)=>{l(Q,$,$+Y),$+=Y},takeCount:()=>{let{value:Y,nextOffset:J}=$Q(Q,$);return $=J,Y},consumed:()=>$}},yX=(Q,X)=>{let $=Q.takeCount();if($===0)return Q$;let Y=Array.from({length:$},()=>Q.take(s8)),J=Q.take(X?a8:fX);return X||Q.skip(S),{actions:Y,digestData:J}},TX=(Q,X)=>{if(X===0)return;let $=Q.takeCount();Q.skip($+X*mQ+mQ)},$$=(Q,X,$)=>{let Y=X$(Q,X),J=Y.takeCount(),N=Array.from({length:J},()=>Y.take(c8)),Z=Y.takeCount(),q=Array.from({length:Z},()=>Y.take(o8)),O=new Uint8Array,w=new Uint8Array;(J>0||Z>0)&&(O=Y.take(EX),J>0&&($?Y.skip(S):w=Y.take(S)),Y.skip(J*(WX+mQ)+Z*WX+mQ));let K=yX(Y,!$);TX(Y,K.actions.length);let k;if($&&(k=yX(Y,!1),TX(Y,k.actions.length)),Y.consumed()!==Q.length)throw Error("Malformed transaction while splitting trusted input chunks");return{saplingSpends:N,saplingOutputs:q,saplingValueBalance:O,saplingAnchor:w,orchard:K,ironwood:k}},Y$=(Q)=>{let X=Q.subarray(0,F0),$=Q.subarray(F0,wQ),Y=Q.subarray(wQ,wQ+PQ),J=Q.subarray(wQ+PQ);return{compact:L($,Y.subarray(0,n)),memo:Y.subarray(n,n+FQ),nonCompact:L(X,Y.subarray(n+FQ),J)}},J$=(Q)=>{let X=Q.subarray(0,v0),$=Q.subarray(v0,R0),Y=Q.subarray(R0,M0),J=Q.subarray(M0,kQ),N=Q.subarray(kQ,kQ+PQ),Z=Q.subarray(kQ+PQ);return{compact:L($,J,N.subarray(0,n)),memo:N.subarray(n,n+FQ),nonCompact:L(X,Y,N.subarray(n+FQ),Z)}},BX=(Q,X)=>{X.forEach(($)=>{for(let Y=0;Y<$.length;Y+=UX)Q.push($.subarray(Y,Y+UX))})},N$=(Q,X)=>{if(Q.push(L(C(X.saplingSpends.length),C(X.saplingOutputs.length),C(X.orchard.actions.length),...X.ironwood!==void 0?[C(X.ironwood.actions.length)]:[])),X.saplingSpends.length>0||X.saplingOutputs.length>0){Q.push(L(X.saplingValueBalance,X.saplingAnchor)),X.saplingSpends.forEach((Y)=>Q.push(Y));let $=X.saplingOutputs.map(Y$);$.forEach(({compact:Y})=>Q.push(Y)),BX(Q,$.map(({memo:Y})=>Y)),$.forEach(({nonCompact:Y})=>Q.push(Y))}(X.ironwood!==void 0?[X.orchard,X.ironwood]:[X.orchard]).forEach(($)=>{if($.actions.length===0)return;let Y=$.actions.map(J$);Y.forEach(({compact:J})=>Q.push(J)),BX(Q,Y.map(({memo:J})=>J)),Y.forEach(({nonCompact:J})=>Q.push(J)),Q.push($.digestData)})},SX=(Q)=>U0(Q,0)&n8,Z$=(Q)=>SX(Q)===gX,q$=(Q)=>{let X=SX(Q),$=X===i8,Y=X===gX;if(!$&&!Y&&X!==t8)throw Error(`Unsupported transaction version ${X} while splitting trusted input chunks`);if(Y){let K=U0(Q,W0);if(K!==LX)throw Error(`Unexpected version group id for a v6 transaction while splitting trusted input chunks: expected ${bX(LX)}, got ${bX(K)}`)}let J=0,N=new Uint8Array,Z=new Uint8Array,q=[];$?J+=XQ:(l(Q,XQ,XQ+8),N=Q.slice(XQ,XQ+4),Z=Q.slice(XQ+4,XQ+8),J+=_8);let O=$Q(Q,J);J=O.nextOffset,q.push(L(Q.slice(0,XQ),Q.slice(J-O.byteLength,J)));for(let K=0;K<O.value;K+=1){let k=J;l(Q,J,J+36),J+=36;let x=$Q(Q,J);J=x.nextOffset,q.push(Q.slice(k,J));let f=J;l(Q,J,J+x.value+4),J+=x.value+4;let y=Q.slice(f,J);for(let h=0;h<y.length;h+=DX)q.push(y.slice(h,h+DX))}let w=$Q(Q,J);J=w.nextOffset,q.push(Q.slice(J-w.byteLength,J));for(let K=0;K<w.value;K+=1){let k=J;l(Q,J,J+8),J+=8;let x=$Q(Q,J);J=x.nextOffset,l(Q,J,J+x.value),J+=x.value,q.push(Q.slice(k,J))}if($){let K=$Q(Q,J),k=$Q(Q,K.nextOffset),x=$Q(Q,k.nextOffset);return q.push(Q.slice(J,x.nextOffset)),q.push(Q.slice(x.nextOffset)),CX(q)}return N$(q,$$(Q,J,Y)),q.push(r8(N,Z)),CX(q)};class vQ{constructor(Q,X){this.api=Q,this.args=X}async run(){let Q=this.args.indexLookup??0,X=q$(this.args.transaction);if(Z$(this.args.transaction)){let Z=MX(this.api);if(Z!==void 0)return z({error:new Z0(Z)})}let $=X[0];if(!$)throw Error("Unable to prepare first trusted input APDU chunk");let Y=await this.api.sendCommand(new yQ({transaction:$,indexLookup:Q}));if(!b(Y))return z({error:Y.error});let J=Y.data,N=1;for(;N<X.length;){let Z=X[N];if(!Z)throw Error("Unable to prepare trusted input APDU chunk");let q=await this.api.sendCommand(new yQ({transaction:Z}));if(!b(q))return z({error:q.error});J=q.data,N+=1}return z({data:J})}}var K$=82;class D0{constructor(Q){this.args=Q}name="PcztHeader";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:K$,p1:A.FIRST,p2:e.CONTINUE};return new W(Q).addBufferToData(this.args.data).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:void 0}))}}var O$=88;class L0{constructor(Q){this.args=Q}name="PcztIronwoodAction";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:O$,p1:this.args.p1,p2:this.args.p2};return new W(Q).addBufferToData(this.args.data).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:void 0}))}}var P$=86;class b0{constructor(Q){this.args=Q}name="PcztOrchardAction";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:P$,p1:this.args.p1,p2:this.args.p2};return new W(Q).addBufferToData(this.args.data).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:void 0}))}}var z$=83;class C0{constructor(Q){this.args=Q}name="PcztTransparentInput";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:z$,p1:this.args.p1,p2:this.args.p2};return new W(Q).addBufferToData(this.args.data).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:void 0}))}}var j$=84;class y0{constructor(Q){this.args=Q}name="PcztTransparentOutput";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:j$,p1:this.args.p1,p2:this.args.p2};return new W(Q).addBufferToData(this.args.data).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:void 0}))}}var x$=89,mX=64;class T0{constructor(Q){this.args=Q}name="SignPcztIronwood";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:x$,p1:A.FIRST,p2:this.args.actionIndex};return new W(Q).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new Uint8Array(Q.data);return X.length!==mX?P({error:new j(`Expected ${mX}-byte Ironwood spendAuthSig, got ${X.length}`)}):P({data:{spendAuthSig:X}})})}}var G$=87,HX=64;class B0{constructor(Q){this.args=Q}name="SignPcztOrchard";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:G$,p1:A.FIRST,p2:this.args.actionIndex};return new W(Q).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new Uint8Array(Q.data);return X.length!==HX?P({error:new j(`Expected ${HX}-byte Orchard spendAuthSig, got ${X.length}`)}):P({data:{spendAuthSig:X}})})}}var w$=85;class V0{constructor(Q){this.args=Q}name="SignPcztTransparent";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:w$,p1:A.FIRST,p2:this.args.inputIndex};return new W(Q).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new Uint8Array(Q.data);return X.length<2?P({error:new j(`Expected a transparent signature with a trailing sighash byte, got ${X.length} bytes`)}):X[X.length-1]!==gQ?P({error:new j(`Expected sighash_type SIGHASH_ALL (0x01), got 0x${X[X.length-1].toString(16)}`)}):P({data:{signature:X}})})}}var _X=new Uint8Array(32),hX=(Q)=>{let X=H.splitPath(Q),$=new i;return $.add8BitUIntToData(X.length),X.forEach((Y)=>$.add32BitUIntToData(Y)),$.build()},uX=(Q)=>{if(Q===null)return Uint8Array.of(0);let X=new i;return X.add8BitUIntToData(1),X.add32BitUIntToData(Q,!1),X.build()},AX=(Q)=>Q?L(C(1),Q.pubkey,Q.seedFingerprint??_X,hX(Q.signingPath)):C(0),k$=(Q,X)=>L(X??_X,hX(Q)),HQ=(Q)=>F$(L(C(Q.length),Q)),F$=(Q)=>{if(Q.length<=UQ)return[Q];let X=[];for(let $=0;$<Q.length;$+=UQ)X.push(Q.subarray($,$+UQ));return X},dX=(Q)=>{let X=new i;return X.addBufferToData(Uint8Array.of(80,67,90,84)),X.add32BitUIntToData(Q.txVersion>=6?2:1,!1),X.add32BitUIntToData(Q.txVersion,!1),X.add32BitUIntToData(Q.versionGroupId,!1),X.add32BitUIntToData(Q.consensusBranchId,!1),X.addBufferToData(uX(Q.fallbackLockTime)),X.add32BitUIntToData(Q.expiryHeight,!1),X.add32BitUIntToData(Q.coinType,!1),X.add8BitUIntToData(Q.txModifiable),X.build()},cX=(Q)=>{let X=[C(Q.length)];for(let $ of Q){let Y=new i;Y.addBufferToData($.prevoutTxid),Y.add32BitUIntToData($.prevoutIndex,!1),Y.addBufferToData(uX($.sequence)),Y.add64BitUIntToData($.value,!1),X.push(Y.build()),X.push(...HQ($.scriptPubKey)),X.push(L(Uint8Array.of($.sighashType),AX($.derivation)))}return X},lX=(Q)=>{let X=[C(Q.length)];for(let $ of Q){let Y=new i;Y.add64BitUIntToData($.value,!1),X.push(Y.build()),X.push(...HQ($.scriptPubKey)),X.push(AX($.derivation))}return X},oX=(Q)=>{let X=[C(Q.actions.length)];if(Q.actions.length===0)return X;for(let J of Q.actions){let N=new i;N.addBufferToData(J.cvNet),N.addBufferToData(J.nullifier),N.addBufferToData(J.rk),N.addBufferToData(J.spendRecipient),N.add64BitUIntToData(J.spendValue,!1),N.addBufferToData(J.spendRho),N.addBufferToData(J.spendRseed),N.addBufferToData(J.alpha),X.push(N.build()),X.push(k$(J.signingPath,J.seedFingerprint)),X.push(L(J.cmx,J.ephemeralKey)),X.push(...HQ(J.encCiphertext)),X.push(...HQ(J.outCiphertext));let Z=new i;Z.addBufferToData(J.recipient),Z.add64BitUIntToData(J.value,!1),Z.addBufferToData(J.rseed),Z.addBufferToData(J.rcv),"notePlaintextVersion"in J&&Z.add8BitUIntToData(J.notePlaintextVersion),X.push(Z.build())}let $=new i,Y=Q.valueBalance;return $.add8BitUIntToData(Q.flags),$.add64BitUIntToData(Y<0n?-Y:Y,!1),$.add8BitUIntToData(Y<0n?1:0),$.addBufferToData(Q.anchor),X.push($.build()),X},pX=(Q)=>oX(Q),sX=(Q)=>oX(Q),RQ=(Q,X)=>Q===0?A.FIRST:Q===X-1?A.LAST:A.NEXT,E0=(Q,X,$)=>$&&Q===X-1?e.FINISHED:e.CONTINUE;var v$={actions:[],flags:0,valueBalance:0n,anchor:new Uint8Array(32)},R$=6;class f0{constructor(Q,X){this.api=Q,this.args=X}async run(){let{global:Q,transparentInputs:X,transparentOutputs:$,orchardBundle:Y,ironwoodBundle:J}=this.args.transaction,N=Y??v$,Z=J??null,q=Q.txVersion===R$;if(q&&Z===null)return z({error:new I0("V6 transaction requires a non-null Ironwood bundle")});if(!q&&Z!==null)return z({error:new I0("V5 transaction does not support an Ironwood bundle")});let O=q&&Z!==null,w=await this.api.sendCommand(new D0({data:dX(Q)}));if(!b(w))return z({error:w.error});let K=cX(X);for(let F=0;F<K.length;F+=1){let G=await this.api.sendCommand(new C0({data:K[F],p1:RQ(F,K.length),p2:e.CONTINUE}));if(!b(G))return z({error:G.error})}let k=lX($);for(let F=0;F<k.length;F+=1){let G=await this.api.sendCommand(new y0({data:k[F],p1:RQ(F,k.length),p2:e.CONTINUE}));if(!b(G))return z({error:G.error})}let x=pX(N);for(let F=0;F<x.length;F+=1){let G=await this.api.sendCommand(new b0({data:x[F],p1:RQ(F,x.length),p2:E0(F,x.length,!q)}));if(!b(G))return z({error:G.error})}if(O){let F=sX(Z);for(let G=0;G<F.length;G+=1){let t=await this.api.sendCommand(new L0({data:F[G],p1:RQ(G,F.length),p2:E0(G,F.length,!0)}));if(!b(t))return z({error:t.error})}}let f=[];for(let F=0;F<N.actions.length;F+=1){if(N.actions[F].spendValue===0n)continue;let G=await this.api.sendCommand(new B0({actionIndex:F}));if(!b(G))return z({error:G.error});f.push(G.data)}let y=[];if(O)for(let F=0;F<Z.actions.length;F+=1){if(Z.actions[F].spendValue===0n)continue;let G=await this.api.sendCommand(new T0({actionIndex:F}));if(!b(G))return z({error:G.error});y.push(G.data)}let h=[];for(let F=0;F<X.length;F+=1){let G=await this.api.sendCommand(new V0({inputIndex:F}));if(!b(G))return z({error:G.error});h.push(G.data.signature)}return z({data:{orchard:f,transparentInputSigs:h,ironwood:y}})}}var M$=74;class g0{constructor(Q){this.args=Q}name="HashOutputFull";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:M$,p1:this.args.isLastChunk?m.NEXT:m.FIRST,p2:g.DEFAULT};return new W(Q).addBufferToData(this.args.outputChunk).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:Q}))}}var W$=74;class S0{constructor(Q){this.args=Q}name="ProvideOutputFullChangePath";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:W$,p1:m.CHANGE_PATH,p2:g.DEFAULT},X=new W(Q),$=H.splitPath(this.args.derivationPath);return X.add8BitUIntToData($.length),$.forEach((Y)=>{X.add32BitUIntToData(Y)}),X.build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:Q}))}}class m0{constructor(Q){this.args=Q}name="SignTransaction";errorHelper=new D(R,M);getApdu(){let{derivationPath:Q,expiryHeight:X,lockTime:$,sigHashType:Y}=this.args,J=H.splitPath(Q),N=qX($),Z={cla:v,ins:72,p2:g.DEFAULT,p1:0},q=new W(Z);return q.add8BitUIntToData(J.length),J.forEach((O)=>{q.add32BitUIntToData(O)}),q.add8BitUIntToData(0).addBufferToData(N).add8BitUIntToData(Y),q.addBufferToData(X),q.build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new Uint8Array(Q.data);return X.length>0&&(X[0]=48),P({data:{signature:X}})})}}var U$=68;class MQ{constructor(Q){this.args=Q}name="StartUntrustedHashTransactionInput";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:U$,p1:this.args.firstRound?m.FIRST:m.NEXT,p2:this.args.newTransaction?g.SAPLING:g.HASH_INPUT_CONTINUE};return new W(Q).addBufferToData(this.args.transactionData).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:Q}))}}var D$=72;class H0{constructor(Q){this.args=Q}name="ZcashSaplingOutputCommit";errorHelper=new D(R,M);getApdu(){let{lockTime:Q,sigHashType:X,expiryHeight:$}=this.args,Y=L(E(Q),Uint8Array.of(0,0),Uint8Array.of(X&255),$);if(Y.length!==11)throw Error("ZcashSaplingOutputCommit: internal payload length");let J={cla:v,ins:D$,p1:0,p2:g.DEFAULT};return new W(J).addBufferToData(Y).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:{committed:!0}}))}}function aX(Q,X){if(Q.length!==X.length)return!1;for(let $=0;$<Q.length;$+=1)if(Q[$]!==X[$])return!1;return!0}class h0{constructor(Q,X){this.api=Q,this.args=X}async run(){let Q={...{lockTime:PX,sigHashType:gQ,additionals:[]},...this.args.transactionArg},{inputs:X,associatedKeysets:$,blockHeight:Y,changePath:J,outputScriptHex:N,lockTime:Z,sigHashType:q,additionals:O,expiryHeight:w}=Q,K=new Set(O.map((B)=>B.trim().toLowerCase()));if(!K.has("zcash"))return z({error:new j('signTransaction requires additionals to include "zcash" (Zcash transparent signing only).')});let k=K.has("sapling");if(X.length!==$.length)return z({error:new j("Inputs and associatedKeysets lengths mismatch")});let x=E(Z),f=GX(),y;try{y=IQ(w)}catch(B){return z({error:new j(B instanceof Error?B.message:"Invalid expiryHeight")})}let h=_Q(N)??new Uint8Array,F=new Uint8Array(0),G={inputs:[],version:f,timestamp:new Uint8Array(0)};G.nVersionGroupId=Uint8Array.of(10,39,167,38),G.nExpiryHeight=y,G.extraData=k?new Uint8Array(11):Uint8Array.of(0);let t=await this.collectTrustedInputsAndOutputs(X);if(!("trustedInputs"in t))return t;let{trustedInputs:jQ,regularOutputs:u}=t;G.inputs=X.map((B,WQ)=>{let N8=E(B.length>=4&&typeof B[3]=="number"?B[3]:x0);return{script:u[WQ].script,prevout:F,sequence:N8}});let NQ=await this.collectPublicKeys($);if(!Array.isArray(NQ))return NQ;let tQ=NQ,eQ=await this.shouldProvideChangePath(J,$,tQ,h);if(typeof eQ!="boolean")return eQ;G.consensusBranchId=SQ(Y);let A0=await this.executeHashSequence(G,jQ,J,eQ,h,k,Z,q,y);if(A0)return A0;let rQ=await this.signEachInput(X,$,u,G,jQ,Z,q,y);if(!Array.isArray(rQ))return rQ;let d0=rQ;G.version=f,G.consensusBranchId=SQ(Y);for(let B=0;B<X.length;B+=1){G.inputs[B].script=L(Uint8Array.of(d0[B].length),d0[B],Uint8Array.of(tQ[B].length),tQ[B]);let WQ=4;G.inputs[B].prevout=jQ[B].value.subarray(WQ,WQ+36)}G.locktime=x;let J8=L(G0(G,G.timestamp),h,Uint8Array.of(0,0,0));return z({data:_0(J8,!0)})}async collectTrustedInputsAndOutputs(Q){let X=[],$=[];for(let Y of Q){let J=Y[0],N=zX(J);N.consensusBranchId=SQ(Y[4]);let Z=await this.getTrustedInput(Y[1],N,J.serializedPreviousTransactionOverride);if(typeof Z!="string")return Z;let q=E(Y.length>=4&&typeof Y[3]=="number"?Y[3]:x0);if(X.push({trustedInput:!0,value:_Q(Z)??new Uint8Array,sequence:q}),N.outputs&&Y[1]<=N.outputs.length-1){let O=N.outputs[Y[1]];if(!O)return z({error:new j("Invalid output index in previous transaction")});$.push(O)}else return z({error:new j("Invalid output index in previous transaction")})}return{trustedInputs:X,regularOutputs:$}}async collectPublicKeys(Q){let X=[];for(let $ of Q){let Y=await this.api.sendCommand(new KQ({derivationPath:$,checkOnDevice:!1}));if(!b(Y))return z({error:Y.error});X.push(w0(Y.data.publicKey))}return X}async shouldProvideChangePath(Q,X,$,Y){let J=typeof Q=="string"?Q.trim():"";if(J==="")return!1;let N=X.indexOf(J),Z;if(N>=0)Z=$[N];else{let q=await this.api.sendCommand(new KQ({derivationPath:J,checkOnDevice:!1}));if(!b(q))return z({error:q.error});Z=q.data.publicKey}try{let q=xX(Z),O=jX(Y);return O!==null&&O.length>=2&&O.some((w)=>aX(w,q))}catch{return!1}}async executeHashSequence(Q,X,$,Y,J,N,Z,q,O){let w=await this.startUntrustedHashTransactionInput(!0,Q,X);if(w)return w;if(Y&&$){let k=await this.api.sendCommand(new S0({derivationPath:$}));if(!b(k))return z({error:k.error})}let K=await this.hashOutputFull(J);if(K)return K;if(N){let k=await this.api.sendCommand(new H0({lockTime:Z,sigHashType:q,expiryHeight:O}));if(!b(k))return z({error:k.error})}return null}async signEachInput(Q,X,$,Y,J,N,Z,q){let O=[];for(let w=0;w<Q.length;w+=1){let K=Q[w],k=K.length>=3&&typeof K[2]=="string"?_Q(K[2])??new Uint8Array:$[w].script,x={...Y,inputs:[{...Y.inputs[w],script:k}]},f=await this.startUntrustedHashTransactionInput(!1,x,[J[w]]);if(f)return f;let y=await this.api.sendCommand(new m0({derivationPath:X[w],lockTime:N,sigHashType:Z,expiryHeight:q}));if(!b(y))return z({error:y.error});O.push(y.data.signature)}return O}async getTrustedInput(Q,X,$){let Y=$&&$.length>0?$:G0(X,X.timestamp),J=await new vQ(this.api,{transaction:Y,indexLookup:Q}).run();return nX(J)?_0(J.data.data,!1):z({error:J.error})}async hashOutputFull(Q){let X=0;for(;X<Q.length;){let $=X+fQ>=Q.length?Q.length-X:fQ,Y=Q.subarray(X,X+$),J=await this.api.sendCommand(new g0({outputChunk:Y,isLastChunk:X+$===Q.length}));if(!b(J))return z({error:J.error});X+=$}return null}buildScriptBlocks(Q){if(Q.script.length===0)return[Q.sequence];let X=[],$=0;for(;$!==Q.script.length;){let Y=Math.min(fQ,Q.script.length-$),J=Q.script.subarray($,$+Y);X.push($+Y===Q.script.length?L(J,Q.sequence):Uint8Array.from(J)),$+=Y}return X}async sendInputBlocks(Q,X){for(let $ of Q){let Y=await this.api.sendCommand(new MQ({newTransaction:X,firstRound:!1,transactionData:$}));if(!b(Y))return z({error:Y.error})}return null}async startUntrustedHashTransactionInput(Q,X,$){let Y=X.consensusBranchId||new Uint8Array(0),J=L(X.version,X.timestamp||new Uint8Array(0),X.nVersionGroupId||new Uint8Array(0),Y,C(X.inputs.length)),N=await this.api.sendCommand(new MQ({newTransaction:Q,firstRound:!0,transactionData:J}));if(!b(N))return z({error:N.error});for(let Z=0;Z<X.inputs.length;Z+=1){let q=X.inputs[Z],O=$[Z].value,w=$[Z].trustedInput?Uint8Array.of(1,O.length):Uint8Array.of(0),K=L(w,O,C(q.script.length)),k=await this.api.sendCommand(new MQ({newTransaction:Q,firstRound:!1,transactionData:K}));if(!b(k))return z({error:k.error});let x=await this.sendInputBlocks(this.buildScriptBlocks(q),Q);if(x)return x}return null}}var{defineProperty:L$,getOwnPropertyDescriptor:b$}=Object,C$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?b$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&L$(X,$,J),J},iX=(Q,X)=>($,Y)=>X($,Y,Q),uQ=class{constructor(Q,X){this.dmk=Q,this.sessionId=X}getAppConfig(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new hQ({input:{command:new Q0,appName:d,requiredUserInteraction:o.None,skipOpenApp:Q.skipOpenApp}})})}getAddress(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new hQ({input:{command:new KQ(Q),appName:d,requiredUserInteraction:Q.checkOnDevice?o.VerifyAddress:o.None,skipOpenApp:Q.skipOpenApp}})})}getShieldedAddress(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new zQ({input:{task:async(X)=>new J0(X,{derivationPath:Q.derivationPath,checkOnDevice:Q.checkOnDevice}).run(),appName:d,requiredUserInteraction:Q.checkOnDevice?o.VerifyAddress:o.None,skipOpenApp:Q.skipOpenApp}})})}getFullViewingKey(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new zQ({input:{task:async(X)=>new $0(X,{derivationPath:Q.derivationPath,mode:Q.mode}).run(),appName:d,requiredUserInteraction:o.None,skipOpenApp:Q.skipOpenApp}})})}signTransaction(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new zQ({input:{task:async(X)=>new h0(X,Q).run(),appName:d,requiredUserInteraction:o.SignTransaction,skipOpenApp:Q.skipOpenApp??!1}})})}signPcztTransaction(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new zQ({input:{task:async(X)=>new f0(X,{transaction:Q.transaction}).run(),appName:d,requiredUserInteraction:o.SignTransaction,skipOpenApp:Q.skipOpenApp??!1}})})}signMessage(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new hQ({input:{command:new X0(Q),appName:d,requiredUserInteraction:o.SignPersonalMessage,skipOpenApp:Q.skipOpenApp}})})}getTrustedInput(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new zQ({input:{task:async(X)=>new vQ(X,Q).run(),appName:d,requiredUserInteraction:o.None,skipOpenApp:Q.skipOpenApp??!1}})})}};uQ=C$([I(),iX(0,T(ZQ.Dmk)),iX(1,T(ZQ.SessionId))],uQ);var tX=()=>new p(({bind:Q})=>{Q(V.AppBinding).to(uQ)});var YQ={GetAddressUseCase:Symbol.for("GetAddressUseCase"),GetFullViewingKeyUseCase:Symbol.for("GetFullViewingKeyUseCase"),GetShieldedAddressUseCase:Symbol.for("GetShieldedAddressUseCase")};var{defineProperty:y$,getOwnPropertyDescriptor:T$}=Object,B$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?T$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&y$(X,$,J),J},V$=(Q,X)=>($,Y)=>X($,Y,Q),AQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.getAddress({derivationPath:Q,checkOnDevice:X?.checkOnDevice??!1,skipOpenApp:X?.skipOpenApp??!1})}};AQ=B$([I(),V$(0,T(V.AppBinding))],AQ);var{defineProperty:E$,getOwnPropertyDescriptor:I$}=Object,f$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?I$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&E$(X,$,J),J},g$=(Q,X)=>($,Y)=>X($,Y,Q),dQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.getFullViewingKey({derivationPath:Q,mode:X?.mode??"ufvk",skipOpenApp:X?.skipOpenApp??!1})}};dQ=f$([I(),g$(0,T(V.AppBinding))],dQ);var{defineProperty:S$,getOwnPropertyDescriptor:m$}=Object,H$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?m$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&S$(X,$,J),J},_$=(Q,X)=>($,Y)=>X($,Y,Q),cQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.getShieldedAddress({derivationPath:Q,checkOnDevice:X?.checkOnDevice??!1,skipOpenApp:X?.skipOpenApp??!1})}};cQ=H$([I(),_$(0,T(V.AppBinding))],cQ);var eX=()=>new p(({bind:Q})=>{Q(YQ.GetAddressUseCase).to(AQ),Q(YQ.GetFullViewingKeyUseCase).to(dQ),Q(YQ.GetShieldedAddressUseCase).to(cQ)});var lQ={GetAppConfigUseCase:Symbol.for("GetAppConfigUseCase")};var{defineProperty:h$,getOwnPropertyDescriptor:u$}=Object,A$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?u$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&h$(X,$,J),J},d$=(Q,X)=>($,Y)=>X($,Y,Q),oQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(){return this._appBinder.getAppConfig({skipOpenApp:!1})}};oQ=A$([I(),d$(0,T(V.AppBinding))],oQ);var rX=()=>new p(({bind:Q})=>{Q(lQ.GetAppConfigUseCase).to(oQ)});var pQ={SignMessageUseCase:Symbol.for("SignMessageUseCase")};var{defineProperty:c$,getOwnPropertyDescriptor:l$}=Object,o$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?l$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&c$(X,$,J),J},p$=(Q,X)=>($,Y)=>X($,Y,Q),sQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.signMessage({derivationPath:Q,message:X,skipOpenApp:!1})}};sQ=o$([I(),p$(0,T(V.AppBinding))],sQ);var Q8=()=>new p(({bind:Q})=>{Q(pQ.SignMessageUseCase).to(sQ)});var JQ={GetTrustedInputUseCase:Symbol.for("GetTrustedInputUseCase"),SignTransactionUseCase:Symbol.for("SignTransactionUseCase"),SignPcztTransactionUseCase:Symbol.for("SignPcztTransactionUseCase")};var{defineProperty:s$,getOwnPropertyDescriptor:a$}=Object,n$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?a$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&s$(X,$,J),J},i$=(Q,X)=>($,Y)=>X($,Y,Q),aQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.getTrustedInput({transaction:Q,indexLookup:X?.indexLookup,skipOpenApp:X?.skipOpenApp??!1})}};aQ=n$([I(),i$(0,T(V.AppBinding))],aQ);var{defineProperty:t$,getOwnPropertyDescriptor:e$}=Object,r$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?e$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&t$(X,$,J),J},QY=(Q,X)=>($,Y)=>X($,Y,Q),nQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.signPcztTransaction({transaction:Q,skipOpenApp:X?.skipOpenApp})}};nQ=r$([I(),QY(0,T(V.AppBinding))],nQ);var{defineProperty:XY,getOwnPropertyDescriptor:$Y}=Object,YY=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?$Y(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&XY(X,$,J),J},JY=(Q,X)=>($,Y)=>X($,Y,Q),iQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.signTransaction({transactionArg:Q,skipOpenApp:X?.skipOpenApp})}};iQ=YY([I(),JY(0,T(V.AppBinding))],iQ);var X8=()=>new p(({bind:Q})=>{Q(JQ.GetTrustedInputUseCase).to(aQ),Q(JQ.SignTransactionUseCase).to(iQ),Q(JQ.SignPcztTransactionUseCase).to(nQ)});var Y8=({dmk:Q,sessionId:X})=>{let $=new $8;return $.bind(ZQ.Dmk).toConstantValue(Q),$.bind(ZQ.SessionId).toConstantValue(X),$.loadSync(tX(),rX(),eX(),X8(),Q8()),$};class u0{_container;constructor({dmk:Q,sessionId:X}){this._container=Y8({dmk:Q,sessionId:X})}getAppConfig(){return this._container.get(lQ.GetAppConfigUseCase).execute()}getAddress(Q,X){return this._container.get(YQ.GetAddressUseCase).execute(Q,X)}getFullViewingKey(Q,X){return this._container.get(YQ.GetFullViewingKeyUseCase).execute(Q,X)}getShieldedAddress(Q,X){return this._container.get(YQ.GetShieldedAddressUseCase).execute(Q,X)}signTransaction(Q,X){return this._container.get(JQ.SignTransactionUseCase).execute(Q,X)}signPcztTransaction(Q,X){return this._container.get(JQ.SignPcztTransactionUseCase).execute(Q,X)}signMessage(Q,X){return this._container.get(pQ.SignMessageUseCase).execute(Q,X)}getTrustedInput(Q,X){return this._container.get(JQ.GetTrustedInputUseCase).execute(Q,X)}}class NY{_dmk;_sessionId;constructor({dmk:Q,sessionId:X}){this._dmk=Q,this._sessionId=X}build(){return new u0({dmk:this._dmk,sessionId:this._sessionId})}}export{NY as SignerZcashBuilder};
1
+ import{Ba as D,Ca as H}from"./chunk-rydhx4se.js";import{$c as i0,Jb as o,Kb as U,Ma as qY,Nc as zQ,Pa as _Q,Qa as _0,Tc as s0,Td as vX,Ua as i,Uc as q0,Va as CQ,Vc as a0,Wa as W,Wc as r,Xc as TQ,Ya as qQ,Yc as c,Za as j,Zc as GQ,_c as n0,ab as z,ad as VQ,bb as nX,cb as P,db as b,fb as DQ,ib as I0,jd as hQ,kd as T,ld as I,md as p,nd as $8,qc as FX}from"./chunk-mzan0m09.js";import{Xd as ZY}from"./chunk-kaw35ae2.js";var BK=ZY(qY(),1);var V={AppBinding:Symbol.for("AppBinding")};var d="Zcash";var ZQ={Dmk:Symbol.for("Dmk"),SessionId:Symbol.for("SessionId")};var v=224,m={FIRST:0,NEXT:128,CHANGE_PATH:255},g={DEFAULT:0,SAPLING:5,HASH_INPUT_CONTINUE:128},A={FIRST:0,NEXT:128,LAST:1},e={CONTINUE:0,FINISHED:1},UQ=255;var R={6300:{message:"GPAuthFailedError"},"63c0":{message:"PinRemainingAttemptsError"},6400:{message:"ExecutionError"},6700:{message:"IncorrectLengthError"},6981:{message:"CommandIncompatibleFileStructureError"},6982:{message:"SecurityStatusNotSatisfiedError"},6985:{message:"UserRejectedError"},6986:{message:"ConditionsOfUseNotSatisfiedError"},"6a80":{message:"IncorrectDataError"},"6a84":{message:"NotEnoughMemorySpaceError"},"6a88":{message:"ReferencedDataNotFoundError"},"6a89":{message:"FileAlreadyExistsError"},"6a8a":{message:"SwapWithoutTrustedInputsError"},"6b00":{message:"IncorrectP1P2Error"},"6d00":{message:"InsNotSupportedError"},"6e00":{message:"ClaNotSupportedError"},"6f00":{message:"TechnicalProblemError"},"6f01":{message:"VersionParsingFailError"},"6f03":{message:"RngFailureError"},"6f42":{message:"LicensingError"},"6faa":{message:"HaltedError"},9240:{message:"MemoryProblemError"},9400:{message:"NoEFSelectedError"},9402:{message:"InvalidOffsetError"},9404:{message:"FileNotFoundError"},9408:{message:"InconsistentFileError"},9484:{message:"AlgorithmNotSupportedError"},9485:{message:"InvalidKCVError"},9802:{message:"CodeNotInitializedError"},9804:{message:"AccessConditionNotFullfilledError"},9808:{message:"ContradictionSecretCodeStatusError"},9810:{message:"ContradictionInvalidationError"},9840:{message:"CodeBlockedError"},9850:{message:"MaxValueReachedError"},b007:{message:"BadStateError"},unsupported_v6_transaction:{message:"UnsupportedV6TransactionError"}};class c0 extends DQ{constructor(Q){super({tag:"ZcashAppCommandError",...Q})}}var M=(Q)=>new c0(Q);var l0=32,Z8=64;class KQ{name="GetAddress";args;errorHelper=new D(R,M);constructor(Q){this.args=Q}getApdu(){let Q={cla:v,ins:Z8,p1:this.args.checkOnDevice?1:0,p2:0},X=new W(Q),$=H.splitPath(this.args.derivationPath);return X.add8BitUIntToData($.length),$.forEach((Y)=>{X.add32BitUIntToData(Y)}),X.build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new qQ(Q),$=X.extract8BitUInt();if($===void 0)return P({error:new j("Public key length is missing")});if(X.testMinimalLength($)===!1)return P({error:new j("Public key is missing")});let Y=X.extractFieldByLength($);if(Y===void 0)return P({error:new j("Unable to extract public key")});let J=X.extract8BitUInt();if(J===void 0)return P({error:new j("Address length is missing")});if(X.testMinimalLength(J)===!1)return P({error:new j("Address is missing")});let N=X.extractFieldByLength(J);if(N===void 0)return P({error:new j("Unable to extract address")});let Z=X.encodeToString(N);if(X.testMinimalLength(l0)===!1)return P({error:new j("Chain code is missing")});let q=X.extractFieldByLength(l0);return q===void 0?P({error:new j("Unable to extract chain code")}):P({data:{publicKey:Y,address:Z,chainCode:q}})})}}var q8=196;class Q0{name="getAppConfig";errorHelper=new D(R,M);getApdu(){return new W({cla:v,ins:q8,p1:0,p2:g.DEFAULT}).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new qQ(Q);X.extract8BitUInt(),X.extract8BitUInt();let $=X.extract8BitUInt(),Y=X.extract8BitUInt(),J=X.extract8BitUInt();return $===void 0||Y===void 0||J===void 0?P({error:new j("Cannot extract version")}):P({data:{version:`${$}.${Y}.${J}`}})})}}class X0{name="SignMessage";args;constructor(Q){this.args=Q}getApdu(){throw console.log(this.args),Error("SignMessageCommand.getApdu() not implemented")}parseResponse(Q){throw Error("SignMessageCommand.parseResponse() not implemented")}}var OQ={UFVK:0,ORCHARD_FVK:1},K8=80;class LQ{name="GetFullViewingKey";errorHelper=new D(R,M);args;constructor(Q){this.args=Q}getApdu(){let Q=this.args.isContinue?m.NEXT:m.FIRST,X={cla:v,ins:K8,p1:Q,p2:this.args.p2},$=new W(X);if(!this.args.isContinue){let Y=H.splitPath(this.args.derivationPath);if($.add8BitUIntToData(Y.length),Y.forEach((J)=>{$.add32BitUIntToData(J)}),this.args.p2===OQ.UFVK){if(!this.args.transparentDerivationPath)throw Error("GetFullViewingKeyCommand: UFVK export requires a transparent derivation path (app-zcash >= v3.8.0)");let J=H.splitPath(this.args.transparentDerivationPath);$.add8BitUIntToData(J.length),J.forEach((N)=>{$.add32BitUIntToData(N)})}}return $.build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>P({data:{data:new Uint8Array(Q.data)}}))}}function o0(Q){return Q==="orchardFvk"?OQ.ORCHARD_FVK:OQ.UFVK}function L(...Q){let X=Q.reduce((J,N)=>J+N.length,0),$=new Uint8Array(X),Y=0;return Q.forEach((J)=>{$.set(J,Y),Y+=J.length}),$}function bQ(Q,X){return`32'/${Q}/${X}`}var p0=96;function O8(Q){let X=`Orchard FVK must be ${p0} bytes (got ${Q.length})`;if(Q.length<2)return X;let $=new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint16(0,!1);return 2+$===Q.length?`${X}. Payload matches UFVK framing (u16 BE length + ${$} bytes). Use mode "ufvk" for this response, or use a Zcash app build that exports raw Orchard FVK for GET_VK P2=0x01.`:X}function P8(Q){return Q.length!==p0?z({error:new j(O8(Q))}):z({data:{mode:"orchardFvk",fullViewingKey:Q}})}function z8(Q){if(Q.length<2)return!1;let X=new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint16(0,!1);return Q.length>=2+X}function j8(Q){if(Q.length<2)return z({error:new j("UFVK string length is missing")});let X=new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint16(0,!1);if(2+X>Q.length)return z({error:new j("UFVK string is truncated")});let $=Q.slice(2,2+X),Y;try{Y=new TextDecoder("utf-8",{fatal:!0}).decode($)}catch{return z({error:new j("UFVK is not valid UTF-8")})}return 2+X<Q.length?z({error:new j("UFVK response has extra trailing bytes")}):z({data:{mode:"ufvk",fullViewingKey:Y}})}function x8(Q){let X=Q.split("/");if(X.length<3)return{error:new j(`Zcash UFVK derivation path must have at least purpose/coin/account levels (got "${Q}")`)};let[,$,Y]=X;return!$||!Y?{error:new j(`Zcash UFVK derivation path components are malformed (got "${Q}")`)}:{orchardDerivationPath:bQ($,Y),transparentDerivationPath:`44'/${$}/${Y}`}}class $0{constructor(Q,X){this.api=Q,this.args=X}async run(){let Q=o0(this.args.mode),X;if(this.args.mode==="ufvk"){let N=x8(this.args.derivationPath);if("error"in N)return z({error:N.error});X={isContinue:!1,p2:OQ.UFVK,derivationPath:N.orchardDerivationPath,transparentDerivationPath:N.transparentDerivationPath}}else X={isContinue:!1,p2:OQ.ORCHARD_FVK,derivationPath:this.args.derivationPath};let $=await this.api.sendCommand(new LQ(X));if(!b($))return z({error:$.error});let Y=new Uint8Array($.data.data),J=Y;for(;Y.length===CQ&&!(this.args.mode==="ufvk"&&z8(J));){let N=await this.api.sendCommand(new LQ({isContinue:!0,p2:Q}));if(!b(N))return z({error:N.error});Y=new Uint8Array(N.data.data),J=L(J,Y)}return this.args.mode==="ufvk"?j8(J):P8(J)}}var G8=81;class Y0{name="GetShieldedAddress";args;errorHelper=new D(R,M);constructor(Q){this.args=Q}getApdu(){let Q={cla:v,ins:G8,p1:this.args.checkOnDevice?1:0,p2:0},X=new W(Q),$=H.splitPath(this.args.orchardDerivationPath),Y=H.splitPath(this.args.transparentDerivationPath);return[$,Y].forEach((J)=>{X.add8BitUIntToData(J.length),J.forEach((N)=>{X.add32BitUIntToData(N)})}),X.build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{if(Q.data.length===CQ)return P({error:new j("Response requires continuation which is not supported")});let X=new qQ(Q),$=X.extract16BitUInt();if($===void 0)return P({error:new j("Address length is missing")});if(X.testMinimalLength($)===!1)return P({error:new j("Address is missing")});let Y=X.extractFieldByLength($);if(Y===void 0)return P({error:new j("Unable to extract address")});if(X.testMinimalLength(1))return P({error:new j("Unexpected trailing bytes in response")});let J;try{J=new TextDecoder("utf-8",{fatal:!0}).decode(Y)}catch{return P({error:new j("Address is not valid UTF-8")})}return P({data:{address:J}})})}}function w8(Q){let X=Q.startsWith("m/")?Q.slice(2):Q,$=X.split("/");if($.length!==5)return{error:new j(`Shielded address derivation path must have exactly 5 levels purpose/coin/account/change/index (got "${Q}")`)};let Y=(O)=>/^\d+'?$/.test(O);if(!$.every(Y))return{error:new j(`Shielded address derivation path contains non-numeric components (got "${Q}")`)};let[J,N,Z,q]=$;return J!=="44'"?{error:new j(`Shielded address derivation path purpose must be 44' (got "${J}")`)}:N?.endsWith("'")?Z?.endsWith("'")?q!=="0"?{error:new j(`Shielded address derivation path change must be 0 (got "${q}")`)}:{orchardDerivationPath:bQ(N,Z),transparentDerivationPath:X}:{error:new j(`Shielded address derivation path account must be hardened (got "${Z}")`)}:{error:new j(`Shielded address derivation path coin type must be hardened (got "${N}")`)}}class J0{constructor(Q,X){this.api=Q,this.args=X}async run(){let Q=w8(this.args.derivationPath);if("error"in Q)return z({error:Q.error});let X=await this.api.sendCommand(new Y0({orchardDerivationPath:Q.orchardDerivationPath,transparentDerivationPath:Q.transparentDerivationPath,checkOnDevice:this.args.checkOnDevice}));return b(X)?z({data:{address:X.data.address}}):z({error:X.error})}}var N0=4,k8=66;class yQ{name="GetTrustedInput";errorHelper=new D(R,M);args;constructor(Q){this.args=Q}getApdu(){let{transaction:Q,indexLookup:X}=this.args,$,Y=!1;if(typeof X=="number"&&X>=0){Y=!0;let N=new Uint8Array(N0);new DataView(N.buffer,N.byteOffset,N.byteLength).setUint32(0,X,!1),$=new Uint8Array(Q.length+N0),$.set(N,0),$.set(Q,N0)}else $=Q;let J={cla:v,ins:k8,p1:Y?m.FIRST:m.NEXT,p2:g.DEFAULT};return new W(J).addBufferToData($).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:Q}))}}class Z0 extends DQ{appVersion;constructor(Q){super({tag:"UnsupportedV6TransactionError",message:`The Zcash app version ${Q} installed on the device does not support V6 (Ironwood) source transactions, so a UTXO received from one cannot be signed. Support is expected in a future Zcash app update.`,errorCode:"unsupported_v6_transaction"}),this.appVersion=Q}}function F8(Q,X,$,Y){if(typeof Q.setBigUint64==="function")return Q.setBigUint64(X,$,Y);let J=BigInt(32),N=BigInt(4294967295),Z=Number($>>J&N),q=Number($&N),O=Y?4:0,w=Y?0:4;Q.setUint32(X+O,Z,Y),Q.setUint32(X+w,q,Y)}function K0(Q,X,$){return Q&X^~Q&$}function O0(Q,X,$){return Q&X^Q&$^X&$}class xQ extends i0{constructor(Q,X,$,Y){super();this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=Q,this.outputLen=X,this.padOffset=$,this.isLE=Y,this.buffer=new Uint8Array(Q),this.view=TQ(this.buffer)}update(Q){q0(this),Q=n0(Q),s0(Q);let{view:X,buffer:$,blockLen:Y}=this,J=Q.length;for(let N=0;N<J;){let Z=Math.min(Y-this.pos,J-N);if(Z===Y){let q=TQ(Q);for(;Y<=J-N;N+=Y)this.process(q,N);continue}if($.set(Q.subarray(N,N+Z),this.pos),this.pos+=Z,N+=Z,this.pos===Y)this.process(X,0),this.pos=0}return this.length+=Q.length,this.roundClean(),this}digestInto(Q){q0(this),a0(Q,this),this.finished=!0;let{buffer:X,view:$,blockLen:Y,isLE:J}=this,{pos:N}=this;if(X[N++]=128,r(this.buffer.subarray(N)),this.padOffset>Y-N)this.process($,0),N=0;for(let K=N;K<Y;K++)X[K]=0;F8($,Y-8,BigInt(this.length*8),J),this.process($,0);let Z=TQ(Q),q=this.outputLen;if(q%4)throw Error("_sha2: outputLen should be aligned to 32bit");let O=q/4,w=this.get();if(O>w.length)throw Error("_sha2: outputLen bigger than state");for(let K=0;K<O;K++)Z.setUint32(4*K,w[K],J)}digest(){let{buffer:Q,outputLen:X}=this;this.digestInto(Q);let $=Q.slice(0,X);return this.destroy(),$}_cloneInto(Q){Q||(Q=new this.constructor),Q.set(...this.get());let{blockLen:X,buffer:$,length:Y,finished:J,destroyed:N,pos:Z}=this;if(Q.destroyed=N,Q.finished=J,Q.length=Y,Q.pos=Z,Y%X)Q.buffer.set($);return Q}clone(){return this._cloneInto()}}var s=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var v8=Uint8Array.from([7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8]),e0=(()=>Uint8Array.from(Array(16).fill(0).map((Q,X)=>X)))(),R8=(()=>e0.map((Q)=>(9*Q+5)%16))(),r0=(()=>{let $=[[e0],[R8]];for(let Y=0;Y<4;Y++)for(let J of $)J.push(J[Y].map((N)=>v8[N]));return $})(),QX=(()=>r0[0])(),XX=(()=>r0[1])(),$X=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map((Q)=>Uint8Array.from(Q)),M8=QX.map((Q,X)=>Q.map(($)=>$X[X][$])),W8=XX.map((Q,X)=>Q.map(($)=>$X[X][$])),U8=Uint32Array.from([0,1518500249,1859775393,2400959708,2840853838]),D8=Uint32Array.from([1352829926,1548603684,1836072691,2053994217,0]);function t0(Q,X,$,Y){if(Q===0)return X^$^Y;if(Q===1)return X&$|~X&Y;if(Q===2)return(X|~$)^Y;if(Q===3)return X&Y|$&~Y;return X^($|~Y)}var BQ=new Uint32Array(16);class P0 extends xQ{constructor(){super(64,20,8,!0);this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){let{h0:Q,h1:X,h2:$,h3:Y,h4:J}=this;return[Q,X,$,Y,J]}set(Q,X,$,Y,J){this.h0=Q|0,this.h1=X|0,this.h2=$|0,this.h3=Y|0,this.h4=J|0}process(Q,X){for(let x=0;x<16;x++,X+=4)BQ[x]=Q.getUint32(X,!0);let $=this.h0|0,Y=$,J=this.h1|0,N=J,Z=this.h2|0,q=Z,O=this.h3|0,w=O,K=this.h4|0,k=K;for(let x=0;x<5;x++){let f=4-x,y=U8[x],h=D8[x],F=QX[x],G=XX[x],t=M8[x],jQ=W8[x];for(let u=0;u<16;u++){let NQ=GQ($+t0(x,J,Z,O)+BQ[F[u]]+y,t[u])+K|0;$=K,K=O,O=GQ(Z,10)|0,Z=J,J=NQ}for(let u=0;u<16;u++){let NQ=GQ(Y+t0(f,N,q,w)+BQ[G[u]]+h,jQ[u])+k|0;Y=k,k=w,w=GQ(q,10)|0,q=N,N=NQ}}this.set(this.h1+Z+w|0,this.h2+O+k|0,this.h3+K+Y|0,this.h4+$+N|0,this.h0+J+q|0)}roundClean(){r(BQ)}destroy(){this.destroyed=!0,r(this.buffer),this.set(0,0,0,0,0)}}var YX=VQ(()=>new P0);var JX=YX;var L8=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),QQ=new Uint32Array(64);class z0 extends xQ{constructor(Q=32){super(64,Q,8,!1);this.A=s[0]|0,this.B=s[1]|0,this.C=s[2]|0,this.D=s[3]|0,this.E=s[4]|0,this.F=s[5]|0,this.G=s[6]|0,this.H=s[7]|0}get(){let{A:Q,B:X,C:$,D:Y,E:J,F:N,G:Z,H:q}=this;return[Q,X,$,Y,J,N,Z,q]}set(Q,X,$,Y,J,N,Z,q){this.A=Q|0,this.B=X|0,this.C=$|0,this.D=Y|0,this.E=J|0,this.F=N|0,this.G=Z|0,this.H=q|0}process(Q,X){for(let K=0;K<16;K++,X+=4)QQ[K]=Q.getUint32(X,!1);for(let K=16;K<64;K++){let k=QQ[K-15],x=QQ[K-2],f=c(k,7)^c(k,18)^k>>>3,y=c(x,17)^c(x,19)^x>>>10;QQ[K]=y+QQ[K-7]+f+QQ[K-16]|0}let{A:$,B:Y,C:J,D:N,E:Z,F:q,G:O,H:w}=this;for(let K=0;K<64;K++){let k=c(Z,6)^c(Z,11)^c(Z,25),x=w+k+K0(Z,q,O)+L8[K]+QQ[K]|0,y=(c($,2)^c($,13)^c($,22))+O0($,Y,J)|0;w=O,O=q,q=Z,Z=N+x|0,N=J,J=Y,Y=$,$=x+y|0}$=$+this.A|0,Y=Y+this.B|0,J=J+this.C|0,N=N+this.D|0,Z=Z+this.E|0,q=q+this.F|0,O=O+this.G|0,w=w+this.H|0,this.set($,Y,J,N,Z,q,O,w)}roundClean(){r(QQ)}destroy(){this.set(0,0,0,0,0,0,0,0),r(this.buffer)}}var NX=VQ(()=>new z0);var ZX=NX;function qX(Q){let X=new Uint8Array(4);return new DataView(X.buffer).setUint32(0,Q>>>0,!1),X}function E(Q){let X=new Uint8Array(4);return new DataView(X.buffer).setUint32(0,Q>>>0,!0),X}var fQ=50,PX=0,x0=4294967295,gQ=1,b8=118,C8=169,y8=20,T8=136,B8=172,a={NU6_3:3428143,NU6_2:3364600,NU6_1:3146400,NU6:2726400,NU5:1687104,CANOPY:1046400,HEARTWOOD:903000,BLOSSOM:653600,SAPLING:419200},_=(Q)=>Uint8Array.from(Q),V8=(Q,X)=>new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint16(X,!0),EQ=(Q,X)=>new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint32(X,!0),E8=(Q)=>({prevout:_(Q.prevout),script:_(Q.script),sequence:_(Q.sequence),tree:Q.tree?_(Q.tree):void 0}),I8=(Q)=>({amount:_(Q.amount),script:_(Q.script)}),zX=(Q)=>({version:_(Q.version),inputs:Q.inputs.map(E8),outputs:Q.outputs?.map(I8),locktime:Q.locktime?_(Q.locktime):void 0,timestamp:Q.timestamp?_(Q.timestamp):void 0,nVersionGroupId:Q.nVersionGroupId?_(Q.nVersionGroupId):void 0,nExpiryHeight:Q.nExpiryHeight?_(Q.nExpiryHeight):void 0,extraData:Q.extraData?_(Q.extraData):void 0,consensusBranchId:Q.consensusBranchId?_(Q.consensusBranchId):void 0}),C=(Q)=>Q<253?Uint8Array.of(Q):Q<=65535?Uint8Array.of(253,Q&255,Q>>8&255):Uint8Array.of(254,Q&255,Q>>8&255,Q>>16&255,Q>>24&255),KX=(Q,X)=>{if(X>=Q.length)return null;let $=Q[X];if($<253)return[$,X+1];if($===253)return X+3>Q.length?null:[V8(Q,X+1),X+3];if($===254)return X+5>Q.length?null:[EQ(Q,X+1)>>>0,X+5];if($===255){if(X+9>Q.length)return null;let Y=EQ(Q,X+1);return EQ(Q,X+5)!==0?null:[Y,X+9]}return null},jX=(Q)=>{if(Q.length===0)return null;let X=KX(Q,0);if(X===null||X[0]<0)return null;let $=X[0],Y=X[1],J=[];for(let N=0;N<$;N+=1){if(Y+8>Q.length)return null;Y+=8;let Z=KX(Q,Y);if(Z===null)return null;let[q,O]=Z;if(q<0||O+q>Q.length)return null;J.push(Q.subarray(O,O+q)),Y=O+q}return Y!==Q.length?null:J},OX=({outputs:Q})=>{let X=new Uint8Array(0);return Q&&(X=L(X,C(Q.length)),Q.forEach(($)=>{X=L(X,$.amount,C($.script.length),$.script)})),X},G0=(Q,X)=>{let $=new Uint8Array(0);if(Q.inputs.forEach((Z)=>{$=L($,Z.prevout,C(Z.script.length),Z.script,Z.sequence)}),Q.version.length>=4&&(EQ(Q.version,0)&2147483647)===4){let Z=Q.locktime&&Q.locktime.byteLength>0?Q.locktime:new Uint8Array(4),q=IQ(Q.nExpiryHeight),O=Q.extraData||new Uint8Array(0);return L(Q.version,Q.nVersionGroupId||new Uint8Array(0),Q.consensusBranchId||new Uint8Array(0),C(Q.inputs.length),$,OX(Q),new Uint8Array(3),Z,C(q.length+O.length),q,O)}let Y=OX(Q);Q.outputs&&Q.locktime&&(Y=L(Y,new Uint8Array(3),Q.extraData||new Uint8Array(0)));let J=Q.locktime&&Q.locktime.byteLength>0?Q.locktime:new Uint8Array(4),N=IQ(Q.nExpiryHeight);return L(Q.version,X??Q.timestamp??new Uint8Array(0),Q.nVersionGroupId||new Uint8Array(0),Q.consensusBranchId||new Uint8Array(0),J,N,C(Q.inputs.length),$,Y)},w0=(Q)=>{let X=((Q.at(64)??0)&1)===0?2:3;return L(Uint8Array.of(X),Q.subarray(1,33))},f8=(Q)=>JX(ZX(Q)),xX=(Q)=>{let X;if(Q.length===65?X=w0(Q):Q.length===33?X=Q:X=null,X?.length!==33)throw Error("Expected 65-byte uncompressed or 33-byte compressed secp256k1 public key");let $=f8(X);return L(Uint8Array.of(b8,C8,y8),$,Uint8Array.of(T8,B8))},SQ=(Q)=>Q==null||Q>=a.NU6_3?E(933566043):Q>=a.NU6_2?E(1412952880):Q>=a.NU6_1?E(1307332080):Q>=a.NU6?E(3370586197):Q>=a.NU5?E(3268858036):Q>=a.CANOPY?E(3925833126):Q>=a.HEARTWOOD?E(4122551051):Q>=a.BLOSSOM?E(733220448):Q>=a.SAPLING?E(1991772603):E(1537743641),GX=()=>E(2147483653),j0=4;function IQ(Q){if(Q===void 0||Q.byteLength===0)return new Uint8Array(j0);if(Q.byteLength!==j0)throw Error(`expiryHeight must be ${j0} bytes (got ${Q.byteLength})`);return _(Q)}var wX="0.0.0",kX={version:""},g8="3.8.0";class RX{resolve(Q,X){if(Q.sessionStateType===FX.Connected)return{isCompatible:!1,version:wX};let $=Q.currentApp;return $?.name!==d?{isCompatible:!1,version:wX}:{isCompatible:!0,version:$.version}}}function MX(Q){try{let X=Q.getDeviceSessionState(),$=new RX,{isCompatible:Y,version:J}=$.resolve(X,kX);return Y?new vX(X,kX,$).withMinVersionInclusive(g8).check()?void 0:J:void 0}catch{return}}var VX=255,S8=4,m8=VX-S8,H8=VX,W0=4,_8=5*W0,XQ=3*W0,S=32,EX=8,h8=1,mQ=64,WX=192,n=52,u8=16,FQ=512,PQ=n+FQ+u8,IX=80,A8=S,d8=A8+S,c8=d8+S,F0=S,l8=F0+S,wQ=l8+S,o8=wQ+PQ+IX,v0=S,R0=v0+S,M0=R0+S,p8=M0+S,kQ=p8+S,s8=kQ+PQ+IX,fX=h8+EX,a8=fX+S,UX=128,DX=50,n8=2147483647,i8=4,t8=5,gX=6,LX=3632576152,k0=(Q,X)=>(l(Q,X,X+1),Q[X]??0),U0=(Q,X)=>(l(Q,X,X+4),new DataView(Q.buffer,Q.byteOffset,Q.byteLength).getUint32(X,!0)),e8=(Q,X)=>{l(Q,X,X+8);let $=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),Y=$.getUint32(X,!0);return $.getUint32(X+4,!0)*4294967296+Y},bX=(Q)=>`0x${Q.toString(16).padStart(8,"0")}`,l=(Q,X,$)=>{if(X<0||$<X||$>Q.length)throw Error("Malformed transaction while splitting trusted input chunks")},$Q=(Q,X)=>{let $=k0(Q,X);if($<253)return{value:$,byteLength:1,nextOffset:X+1};if($===253)return{value:k0(Q,X+1)+(k0(Q,X+2)<<8),byteLength:3,nextOffset:X+3};if($===254)return{value:U0(Q,X+1),byteLength:5,nextOffset:X+5};l(Q,X+1,X+9);let Y=e8(Q,X+1);if(!Number.isSafeInteger(Y))throw Error("CompactSize value exceeds JavaScript safe integer range");return{value:Y,byteLength:9,nextOffset:X+9}},CX=(Q)=>{let X=Q.filter((J)=>J.length>0);if(X.length===0)throw Error("Cannot send trusted input for an empty transaction");let $=[],Y=!0;return X.forEach((J)=>{let N=0;for(;N<J.length;){let Z=Math.min(N+(Y?m8:H8),J.length);$.push(J.slice(N,Z)),N=Z,Y=!1}}),$},r8=(Q,X)=>L(Q,new Uint8Array([4]),X),Q$={actions:[],digestData:new Uint8Array},X$=(Q,X)=>{let $=X;return{take:(Y)=>{l(Q,$,$+Y);let J=Q.slice($,$+Y);return $+=Y,J},skip:(Y)=>{l(Q,$,$+Y),$+=Y},takeCount:()=>{let{value:Y,nextOffset:J}=$Q(Q,$);return $=J,Y},consumed:()=>$}},yX=(Q,X)=>{let $=Q.takeCount();if($===0)return Q$;let Y=Array.from({length:$},()=>Q.take(s8)),J=Q.take(X?a8:fX);return X||Q.skip(S),{actions:Y,digestData:J}},TX=(Q,X)=>{if(X===0)return;let $=Q.takeCount();Q.skip($+X*mQ+mQ)},$$=(Q,X,$)=>{let Y=X$(Q,X),J=Y.takeCount(),N=Array.from({length:J},()=>Y.take(c8)),Z=Y.takeCount(),q=Array.from({length:Z},()=>Y.take(o8)),O=new Uint8Array,w=new Uint8Array;(J>0||Z>0)&&(O=Y.take(EX),J>0&&($?Y.skip(S):w=Y.take(S)),Y.skip(J*(WX+mQ)+Z*WX+mQ));let K=yX(Y,!$);TX(Y,K.actions.length);let k;if($&&(k=yX(Y,!1),TX(Y,k.actions.length)),Y.consumed()!==Q.length)throw Error("Malformed transaction while splitting trusted input chunks");return{saplingSpends:N,saplingOutputs:q,saplingValueBalance:O,saplingAnchor:w,orchard:K,ironwood:k}},Y$=(Q)=>{let X=Q.subarray(0,F0),$=Q.subarray(F0,wQ),Y=Q.subarray(wQ,wQ+PQ),J=Q.subarray(wQ+PQ);return{compact:L($,Y.subarray(0,n)),memo:Y.subarray(n,n+FQ),nonCompact:L(X,Y.subarray(n+FQ),J)}},J$=(Q)=>{let X=Q.subarray(0,v0),$=Q.subarray(v0,R0),Y=Q.subarray(R0,M0),J=Q.subarray(M0,kQ),N=Q.subarray(kQ,kQ+PQ),Z=Q.subarray(kQ+PQ);return{compact:L($,J,N.subarray(0,n)),memo:N.subarray(n,n+FQ),nonCompact:L(X,Y,N.subarray(n+FQ),Z)}},BX=(Q,X)=>{X.forEach(($)=>{for(let Y=0;Y<$.length;Y+=UX)Q.push($.subarray(Y,Y+UX))})},N$=(Q,X)=>{if(Q.push(L(C(X.saplingSpends.length),C(X.saplingOutputs.length),C(X.orchard.actions.length),...X.ironwood!==void 0?[C(X.ironwood.actions.length)]:[])),X.saplingSpends.length>0||X.saplingOutputs.length>0){Q.push(L(X.saplingValueBalance,X.saplingAnchor)),X.saplingSpends.forEach((Y)=>Q.push(Y));let $=X.saplingOutputs.map(Y$);$.forEach(({compact:Y})=>Q.push(Y)),BX(Q,$.map(({memo:Y})=>Y)),$.forEach(({nonCompact:Y})=>Q.push(Y))}(X.ironwood!==void 0?[X.orchard,X.ironwood]:[X.orchard]).forEach(($)=>{if($.actions.length===0)return;let Y=$.actions.map(J$);Y.forEach(({compact:J})=>Q.push(J)),BX(Q,Y.map(({memo:J})=>J)),Y.forEach(({nonCompact:J})=>Q.push(J)),Q.push($.digestData)})},SX=(Q)=>U0(Q,0)&n8,Z$=(Q)=>SX(Q)===gX,q$=(Q)=>{let X=SX(Q),$=X===i8,Y=X===gX;if(!$&&!Y&&X!==t8)throw Error(`Unsupported transaction version ${X} while splitting trusted input chunks`);if(Y){let K=U0(Q,W0);if(K!==LX)throw Error(`Unexpected version group id for a v6 transaction while splitting trusted input chunks: expected ${bX(LX)}, got ${bX(K)}`)}let J=0,N=new Uint8Array,Z=new Uint8Array,q=[];$?J+=XQ:(l(Q,XQ,XQ+8),N=Q.slice(XQ,XQ+4),Z=Q.slice(XQ+4,XQ+8),J+=_8);let O=$Q(Q,J);J=O.nextOffset,q.push(L(Q.slice(0,XQ),Q.slice(J-O.byteLength,J)));for(let K=0;K<O.value;K+=1){let k=J;l(Q,J,J+36),J+=36;let x=$Q(Q,J);J=x.nextOffset,q.push(Q.slice(k,J));let f=J;l(Q,J,J+x.value+4),J+=x.value+4;let y=Q.slice(f,J);for(let h=0;h<y.length;h+=DX)q.push(y.slice(h,h+DX))}let w=$Q(Q,J);J=w.nextOffset,q.push(Q.slice(J-w.byteLength,J));for(let K=0;K<w.value;K+=1){let k=J;l(Q,J,J+8),J+=8;let x=$Q(Q,J);J=x.nextOffset,l(Q,J,J+x.value),J+=x.value,q.push(Q.slice(k,J))}if($){let K=$Q(Q,J),k=$Q(Q,K.nextOffset),x=$Q(Q,k.nextOffset);return q.push(Q.slice(J,x.nextOffset)),q.push(Q.slice(x.nextOffset)),CX(q)}return N$(q,$$(Q,J,Y)),q.push(r8(N,Z)),CX(q)};class vQ{constructor(Q,X){this.api=Q,this.args=X}async run(){let Q=this.args.indexLookup??0,X=q$(this.args.transaction);if(Z$(this.args.transaction)){let Z=MX(this.api);if(Z!==void 0)return z({error:new Z0(Z)})}let $=X[0];if(!$)throw Error("Unable to prepare first trusted input APDU chunk");let Y=await this.api.sendCommand(new yQ({transaction:$,indexLookup:Q}));if(!b(Y))return z({error:Y.error});let J=Y.data,N=1;for(;N<X.length;){let Z=X[N];if(!Z)throw Error("Unable to prepare trusted input APDU chunk");let q=await this.api.sendCommand(new yQ({transaction:Z}));if(!b(q))return z({error:q.error});J=q.data,N+=1}return z({data:J})}}var K$=82;class D0{constructor(Q){this.args=Q}name="PcztHeader";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:K$,p1:A.FIRST,p2:e.CONTINUE};return new W(Q).addBufferToData(this.args.data).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:void 0}))}}var O$=88;class L0{constructor(Q){this.args=Q}name="PcztIronwoodAction";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:O$,p1:this.args.p1,p2:this.args.p2};return new W(Q).addBufferToData(this.args.data).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:void 0}))}}var P$=86;class b0{constructor(Q){this.args=Q}name="PcztOrchardAction";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:P$,p1:this.args.p1,p2:this.args.p2};return new W(Q).addBufferToData(this.args.data).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:void 0}))}}var z$=83;class C0{constructor(Q){this.args=Q}name="PcztTransparentInput";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:z$,p1:this.args.p1,p2:this.args.p2};return new W(Q).addBufferToData(this.args.data).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:void 0}))}}var j$=84;class y0{constructor(Q){this.args=Q}name="PcztTransparentOutput";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:j$,p1:this.args.p1,p2:this.args.p2};return new W(Q).addBufferToData(this.args.data).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:void 0}))}}var x$=89,mX=64;class T0{constructor(Q){this.args=Q}name="SignPcztIronwood";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:x$,p1:A.FIRST,p2:this.args.actionIndex};return new W(Q).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new Uint8Array(Q.data);return X.length!==mX?P({error:new j(`Expected ${mX}-byte Ironwood spendAuthSig, got ${X.length}`)}):P({data:{spendAuthSig:X}})})}}var G$=87,HX=64;class B0{constructor(Q){this.args=Q}name="SignPcztOrchard";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:G$,p1:A.FIRST,p2:this.args.actionIndex};return new W(Q).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new Uint8Array(Q.data);return X.length!==HX?P({error:new j(`Expected ${HX}-byte Orchard spendAuthSig, got ${X.length}`)}):P({data:{spendAuthSig:X}})})}}var w$=85;class V0{constructor(Q){this.args=Q}name="SignPcztTransparent";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:w$,p1:A.FIRST,p2:this.args.inputIndex};return new W(Q).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new Uint8Array(Q.data);return X.length<2?P({error:new j(`Expected a transparent signature with a trailing sighash byte, got ${X.length} bytes`)}):X[X.length-1]!==gQ?P({error:new j(`Expected sighash_type SIGHASH_ALL (0x01), got 0x${X[X.length-1].toString(16)}`)}):P({data:{signature:X}})})}}var _X=new Uint8Array(32),hX=(Q)=>{let X=H.splitPath(Q),$=new i;return $.add8BitUIntToData(X.length),X.forEach((Y)=>$.add32BitUIntToData(Y)),$.build()},uX=(Q)=>{if(Q===null)return Uint8Array.of(0);let X=new i;return X.add8BitUIntToData(1),X.add32BitUIntToData(Q,!1),X.build()},AX=(Q)=>Q?L(C(1),Q.pubkey,Q.seedFingerprint??_X,hX(Q.signingPath)):C(0),k$=(Q,X)=>L(X??_X,hX(Q)),HQ=(Q)=>F$(L(C(Q.length),Q)),F$=(Q)=>{if(Q.length<=UQ)return[Q];let X=[];for(let $=0;$<Q.length;$+=UQ)X.push(Q.subarray($,$+UQ));return X},dX=(Q)=>{let X=new i;return X.addBufferToData(Uint8Array.of(80,67,90,84)),X.add32BitUIntToData(Q.txVersion>=6?2:1,!1),X.add32BitUIntToData(Q.txVersion,!1),X.add32BitUIntToData(Q.versionGroupId,!1),X.add32BitUIntToData(Q.consensusBranchId,!1),X.addBufferToData(uX(Q.fallbackLockTime)),X.add32BitUIntToData(Q.expiryHeight,!1),X.add32BitUIntToData(Q.coinType,!1),X.add8BitUIntToData(Q.txModifiable),X.build()},cX=(Q)=>{let X=[C(Q.length)];for(let $ of Q){let Y=new i;Y.addBufferToData($.prevoutTxid),Y.add32BitUIntToData($.prevoutIndex,!1),Y.addBufferToData(uX($.sequence)),Y.add64BitUIntToData($.value,!1),X.push(Y.build()),X.push(...HQ($.scriptPubKey)),X.push(L(Uint8Array.of($.sighashType),AX($.derivation)))}return X},lX=(Q)=>{let X=[C(Q.length)];for(let $ of Q){let Y=new i;Y.add64BitUIntToData($.value,!1),X.push(Y.build()),X.push(...HQ($.scriptPubKey)),X.push(AX($.derivation))}return X},oX=(Q)=>{let X=[C(Q.actions.length)];if(Q.actions.length===0)return X;for(let J of Q.actions){let N=new i;N.addBufferToData(J.cvNet),N.addBufferToData(J.nullifier),N.addBufferToData(J.rk),N.addBufferToData(J.spendRecipient),N.add64BitUIntToData(J.spendValue,!1),N.addBufferToData(J.spendRho),N.addBufferToData(J.spendRseed),N.addBufferToData(J.alpha),X.push(N.build()),X.push(k$(J.signingPath,J.seedFingerprint)),X.push(L(J.cmx,J.ephemeralKey)),X.push(...HQ(J.encCiphertext)),X.push(...HQ(J.outCiphertext));let Z=new i;Z.addBufferToData(J.recipient),Z.add64BitUIntToData(J.value,!1),Z.addBufferToData(J.rseed),Z.addBufferToData(J.rcv),"notePlaintextVersion"in J&&Z.add8BitUIntToData(J.notePlaintextVersion),X.push(Z.build())}let $=new i,Y=Q.valueBalance;return $.add8BitUIntToData(Q.flags),$.add64BitUIntToData(Y<0n?-Y:Y,!1),$.add8BitUIntToData(Y<0n?1:0),$.addBufferToData(Q.anchor),X.push($.build()),X},pX=(Q)=>oX(Q),sX=(Q)=>oX(Q),RQ=(Q,X)=>Q===0?A.FIRST:Q===X-1?A.LAST:A.NEXT,E0=(Q,X,$)=>$&&Q===X-1?e.FINISHED:e.CONTINUE;var v$={actions:[],flags:0,valueBalance:0n,anchor:new Uint8Array(32)},R$=6;class f0{constructor(Q,X){this.api=Q,this.args=X}async run(){let{global:Q,transparentInputs:X,transparentOutputs:$,orchardBundle:Y,ironwoodBundle:J}=this.args.transaction,N=Y??v$,Z=J??null,q=Q.txVersion===R$;if(q&&Z===null)return z({error:new I0("V6 transaction requires a non-null Ironwood bundle")});if(!q&&Z!==null)return z({error:new I0("V5 transaction does not support an Ironwood bundle")});let O=q&&Z!==null,w=await this.api.sendCommand(new D0({data:dX(Q)}));if(!b(w))return z({error:w.error});let K=cX(X);for(let F=0;F<K.length;F+=1){let G=await this.api.sendCommand(new C0({data:K[F],p1:RQ(F,K.length),p2:e.CONTINUE}));if(!b(G))return z({error:G.error})}let k=lX($);for(let F=0;F<k.length;F+=1){let G=await this.api.sendCommand(new y0({data:k[F],p1:RQ(F,k.length),p2:e.CONTINUE}));if(!b(G))return z({error:G.error})}let x=pX(N);for(let F=0;F<x.length;F+=1){let G=await this.api.sendCommand(new b0({data:x[F],p1:RQ(F,x.length),p2:E0(F,x.length,!q)}));if(!b(G))return z({error:G.error})}if(O){let F=sX(Z);for(let G=0;G<F.length;G+=1){let t=await this.api.sendCommand(new L0({data:F[G],p1:RQ(G,F.length),p2:E0(G,F.length,!0)}));if(!b(t))return z({error:t.error})}}let f=[];for(let F=0;F<N.actions.length;F+=1){if(N.actions[F].spendValue===0n)continue;let G=await this.api.sendCommand(new B0({actionIndex:F}));if(!b(G))return z({error:G.error});f.push(G.data)}let y=[];if(O)for(let F=0;F<Z.actions.length;F+=1){if(Z.actions[F].spendValue===0n)continue;let G=await this.api.sendCommand(new T0({actionIndex:F}));if(!b(G))return z({error:G.error});y.push(G.data)}let h=[];for(let F=0;F<X.length;F+=1){let G=await this.api.sendCommand(new V0({inputIndex:F}));if(!b(G))return z({error:G.error});h.push(G.data.signature)}return z({data:{orchard:f,transparentInputSigs:h,ironwood:y}})}}var M$=74;class g0{constructor(Q){this.args=Q}name="HashOutputFull";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:M$,p1:this.args.isLastChunk?m.NEXT:m.FIRST,p2:g.DEFAULT};return new W(Q).addBufferToData(this.args.outputChunk).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:Q}))}}var W$=74;class S0{constructor(Q){this.args=Q}name="ProvideOutputFullChangePath";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:W$,p1:m.CHANGE_PATH,p2:g.DEFAULT},X=new W(Q),$=H.splitPath(this.args.derivationPath);return X.add8BitUIntToData($.length),$.forEach((Y)=>{X.add32BitUIntToData(Y)}),X.build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:Q}))}}class m0{constructor(Q){this.args=Q}name="SignTransaction";errorHelper=new D(R,M);getApdu(){let{derivationPath:Q,expiryHeight:X,lockTime:$,sigHashType:Y}=this.args,J=H.splitPath(Q),N=qX($),Z={cla:v,ins:72,p2:g.DEFAULT,p1:0},q=new W(Z);return q.add8BitUIntToData(J.length),J.forEach((O)=>{q.add32BitUIntToData(O)}),q.add8BitUIntToData(0).addBufferToData(N).add8BitUIntToData(Y),q.addBufferToData(X),q.build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefaultLazy(()=>{let X=new Uint8Array(Q.data);return X.length>0&&(X[0]=48),P({data:{signature:X}})})}}var U$=68;class MQ{constructor(Q){this.args=Q}name="StartUntrustedHashTransactionInput";errorHelper=new D(R,M);getApdu(){let Q={cla:v,ins:U$,p1:this.args.firstRound?m.FIRST:m.NEXT,p2:this.args.newTransaction?g.SAPLING:g.HASH_INPUT_CONTINUE};return new W(Q).addBufferToData(this.args.transactionData).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:Q}))}}var D$=72;class H0{constructor(Q){this.args=Q}name="ZcashSaplingOutputCommit";errorHelper=new D(R,M);getApdu(){let{lockTime:Q,sigHashType:X,expiryHeight:$}=this.args,Y=L(E(Q),Uint8Array.of(0,0),Uint8Array.of(X&255),$);if(Y.length!==11)throw Error("ZcashSaplingOutputCommit: internal payload length");let J={cla:v,ins:D$,p1:0,p2:g.DEFAULT};return new W(J).addBufferToData(Y).build()}parseResponse(Q){return U.fromNullable(this.errorHelper.getError(Q)).orDefault(P({data:{committed:!0}}))}}function aX(Q,X){if(Q.length!==X.length)return!1;for(let $=0;$<Q.length;$+=1)if(Q[$]!==X[$])return!1;return!0}class h0{constructor(Q,X){this.api=Q,this.args=X}async run(){let Q={...{lockTime:PX,sigHashType:gQ,additionals:[]},...this.args.transactionArg},{inputs:X,associatedKeysets:$,blockHeight:Y,changePath:J,outputScriptHex:N,lockTime:Z,sigHashType:q,additionals:O,expiryHeight:w}=Q,K=new Set(O.map((B)=>B.trim().toLowerCase()));if(!K.has("zcash"))return z({error:new j('signTransaction requires additionals to include "zcash" (Zcash transparent signing only).')});let k=K.has("sapling");if(X.length!==$.length)return z({error:new j("Inputs and associatedKeysets lengths mismatch")});let x=E(Z),f=GX(),y;try{y=IQ(w)}catch(B){return z({error:new j(B instanceof Error?B.message:"Invalid expiryHeight")})}let h=_Q(N)??new Uint8Array,F=new Uint8Array(0),G={inputs:[],version:f,timestamp:new Uint8Array(0)};G.nVersionGroupId=Uint8Array.of(10,39,167,38),G.nExpiryHeight=y,G.extraData=k?new Uint8Array(11):Uint8Array.of(0);let t=await this.collectTrustedInputsAndOutputs(X);if(!("trustedInputs"in t))return t;let{trustedInputs:jQ,regularOutputs:u}=t;G.inputs=X.map((B,WQ)=>{let N8=E(B.length>=4&&typeof B[3]=="number"?B[3]:x0);return{script:u[WQ].script,prevout:F,sequence:N8}});let NQ=await this.collectPublicKeys($);if(!Array.isArray(NQ))return NQ;let tQ=NQ,eQ=await this.shouldProvideChangePath(J,$,tQ,h);if(typeof eQ!="boolean")return eQ;G.consensusBranchId=SQ(Y);let A0=await this.executeHashSequence(G,jQ,J,eQ,h,k,Z,q,y);if(A0)return A0;let rQ=await this.signEachInput(X,$,u,G,jQ,Z,q,y);if(!Array.isArray(rQ))return rQ;let d0=rQ;G.version=f,G.consensusBranchId=SQ(Y);for(let B=0;B<X.length;B+=1){G.inputs[B].script=L(Uint8Array.of(d0[B].length),d0[B],Uint8Array.of(tQ[B].length),tQ[B]);let WQ=4;G.inputs[B].prevout=jQ[B].value.subarray(WQ,WQ+36)}G.locktime=x;let J8=L(G0(G,G.timestamp),h,Uint8Array.of(0,0,0));return z({data:_0(J8,!0)})}async collectTrustedInputsAndOutputs(Q){let X=[],$=[];for(let Y of Q){let J=Y[0],N=zX(J);N.consensusBranchId=SQ(Y[4]);let Z=await this.getTrustedInput(Y[1],N,J.serializedPreviousTransactionOverride);if(typeof Z!="string")return Z;let q=E(Y.length>=4&&typeof Y[3]=="number"?Y[3]:x0);if(X.push({trustedInput:!0,value:_Q(Z)??new Uint8Array,sequence:q}),N.outputs&&Y[1]<=N.outputs.length-1){let O=N.outputs[Y[1]];if(!O)return z({error:new j("Invalid output index in previous transaction")});$.push(O)}else return z({error:new j("Invalid output index in previous transaction")})}return{trustedInputs:X,regularOutputs:$}}async collectPublicKeys(Q){let X=[];for(let $ of Q){let Y=await this.api.sendCommand(new KQ({derivationPath:$,checkOnDevice:!1}));if(!b(Y))return z({error:Y.error});X.push(w0(Y.data.publicKey))}return X}async shouldProvideChangePath(Q,X,$,Y){let J=typeof Q=="string"?Q.trim():"";if(J==="")return!1;let N=X.indexOf(J),Z;if(N>=0)Z=$[N];else{let q=await this.api.sendCommand(new KQ({derivationPath:J,checkOnDevice:!1}));if(!b(q))return z({error:q.error});Z=q.data.publicKey}try{let q=xX(Z),O=jX(Y);return O!==null&&O.length>=2&&O.some((w)=>aX(w,q))}catch{return!1}}async executeHashSequence(Q,X,$,Y,J,N,Z,q,O){let w=await this.startUntrustedHashTransactionInput(!0,Q,X);if(w)return w;if(Y&&$){let k=await this.api.sendCommand(new S0({derivationPath:$}));if(!b(k))return z({error:k.error})}let K=await this.hashOutputFull(J);if(K)return K;if(N){let k=await this.api.sendCommand(new H0({lockTime:Z,sigHashType:q,expiryHeight:O}));if(!b(k))return z({error:k.error})}return null}async signEachInput(Q,X,$,Y,J,N,Z,q){let O=[];for(let w=0;w<Q.length;w+=1){let K=Q[w],k=K.length>=3&&typeof K[2]=="string"?_Q(K[2])??new Uint8Array:$[w].script,x={...Y,inputs:[{...Y.inputs[w],script:k}]},f=await this.startUntrustedHashTransactionInput(!1,x,[J[w]]);if(f)return f;let y=await this.api.sendCommand(new m0({derivationPath:X[w],lockTime:N,sigHashType:Z,expiryHeight:q}));if(!b(y))return z({error:y.error});O.push(y.data.signature)}return O}async getTrustedInput(Q,X,$){let Y=$&&$.length>0?$:G0(X,X.timestamp),J=await new vQ(this.api,{transaction:Y,indexLookup:Q}).run();return nX(J)?_0(J.data.data,!1):z({error:J.error})}async hashOutputFull(Q){let X=0;for(;X<Q.length;){let $=X+fQ>=Q.length?Q.length-X:fQ,Y=Q.subarray(X,X+$),J=await this.api.sendCommand(new g0({outputChunk:Y,isLastChunk:X+$===Q.length}));if(!b(J))return z({error:J.error});X+=$}return null}buildScriptBlocks(Q){if(Q.script.length===0)return[Q.sequence];let X=[],$=0;for(;$!==Q.script.length;){let Y=Math.min(fQ,Q.script.length-$),J=Q.script.subarray($,$+Y);X.push($+Y===Q.script.length?L(J,Q.sequence):Uint8Array.from(J)),$+=Y}return X}async sendInputBlocks(Q,X){for(let $ of Q){let Y=await this.api.sendCommand(new MQ({newTransaction:X,firstRound:!1,transactionData:$}));if(!b(Y))return z({error:Y.error})}return null}async startUntrustedHashTransactionInput(Q,X,$){let Y=X.consensusBranchId||new Uint8Array(0),J=L(X.version,X.timestamp||new Uint8Array(0),X.nVersionGroupId||new Uint8Array(0),Y,C(X.inputs.length)),N=await this.api.sendCommand(new MQ({newTransaction:Q,firstRound:!0,transactionData:J}));if(!b(N))return z({error:N.error});for(let Z=0;Z<X.inputs.length;Z+=1){let q=X.inputs[Z],O=$[Z].value,w=$[Z].trustedInput?Uint8Array.of(1,O.length):Uint8Array.of(0),K=L(w,O,C(q.script.length)),k=await this.api.sendCommand(new MQ({newTransaction:Q,firstRound:!1,transactionData:K}));if(!b(k))return z({error:k.error});let x=await this.sendInputBlocks(this.buildScriptBlocks(q),Q);if(x)return x}return null}}var{defineProperty:L$,getOwnPropertyDescriptor:b$}=Object,C$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?b$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&L$(X,$,J),J},iX=(Q,X)=>($,Y)=>X($,Y,Q),uQ=class{constructor(Q,X){this.dmk=Q,this.sessionId=X}getAppConfig(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new hQ({input:{command:new Q0,appName:d,requiredUserInteraction:o.None,skipOpenApp:Q.skipOpenApp}})})}getAddress(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new hQ({input:{command:new KQ(Q),appName:d,requiredUserInteraction:Q.checkOnDevice?o.VerifyAddress:o.None,skipOpenApp:Q.skipOpenApp}})})}getShieldedAddress(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new zQ({input:{task:async(X)=>new J0(X,{derivationPath:Q.derivationPath,checkOnDevice:Q.checkOnDevice}).run(),appName:d,requiredUserInteraction:Q.checkOnDevice?o.VerifyAddress:o.None,skipOpenApp:Q.skipOpenApp}})})}getFullViewingKey(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new zQ({input:{task:async(X)=>new $0(X,{derivationPath:Q.derivationPath,mode:Q.mode}).run(),appName:d,requiredUserInteraction:o.None,skipOpenApp:Q.skipOpenApp}})})}signTransaction(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new zQ({input:{task:async(X)=>new h0(X,Q).run(),appName:d,requiredUserInteraction:o.SignTransaction,skipOpenApp:Q.skipOpenApp??!1}})})}signPcztTransaction(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new zQ({input:{task:async(X)=>new f0(X,{transaction:Q.transaction}).run(),appName:d,requiredUserInteraction:o.SignTransaction,skipOpenApp:Q.skipOpenApp??!1}})})}signMessage(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new hQ({input:{command:new X0(Q),appName:d,requiredUserInteraction:o.SignPersonalMessage,skipOpenApp:Q.skipOpenApp}})})}getTrustedInput(Q){return this.dmk.executeDeviceAction({sessionId:this.sessionId,deviceAction:new zQ({input:{task:async(X)=>new vQ(X,Q).run(),appName:d,requiredUserInteraction:o.None,skipOpenApp:Q.skipOpenApp??!1}})})}};uQ=C$([I(),iX(0,T(ZQ.Dmk)),iX(1,T(ZQ.SessionId))],uQ);var tX=()=>new p(({bind:Q})=>{Q(V.AppBinding).to(uQ)});var YQ={GetAddressUseCase:Symbol.for("GetAddressUseCase"),GetFullViewingKeyUseCase:Symbol.for("GetFullViewingKeyUseCase"),GetShieldedAddressUseCase:Symbol.for("GetShieldedAddressUseCase")};var{defineProperty:y$,getOwnPropertyDescriptor:T$}=Object,B$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?T$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&y$(X,$,J),J},V$=(Q,X)=>($,Y)=>X($,Y,Q),AQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.getAddress({derivationPath:Q,checkOnDevice:X?.checkOnDevice??!1,skipOpenApp:X?.skipOpenApp??!1})}};AQ=B$([I(),V$(0,T(V.AppBinding))],AQ);var{defineProperty:E$,getOwnPropertyDescriptor:I$}=Object,f$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?I$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&E$(X,$,J),J},g$=(Q,X)=>($,Y)=>X($,Y,Q),dQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.getFullViewingKey({derivationPath:Q,mode:X?.mode??"ufvk",skipOpenApp:X?.skipOpenApp??!1})}};dQ=f$([I(),g$(0,T(V.AppBinding))],dQ);var{defineProperty:S$,getOwnPropertyDescriptor:m$}=Object,H$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?m$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&S$(X,$,J),J},_$=(Q,X)=>($,Y)=>X($,Y,Q),cQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.getShieldedAddress({derivationPath:Q,checkOnDevice:X?.checkOnDevice??!1,skipOpenApp:X?.skipOpenApp??!1})}};cQ=H$([I(),_$(0,T(V.AppBinding))],cQ);var eX=()=>new p(({bind:Q})=>{Q(YQ.GetAddressUseCase).to(AQ),Q(YQ.GetFullViewingKeyUseCase).to(dQ),Q(YQ.GetShieldedAddressUseCase).to(cQ)});var lQ={GetAppConfigUseCase:Symbol.for("GetAppConfigUseCase")};var{defineProperty:h$,getOwnPropertyDescriptor:u$}=Object,A$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?u$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&h$(X,$,J),J},d$=(Q,X)=>($,Y)=>X($,Y,Q),oQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(){return this._appBinder.getAppConfig({skipOpenApp:!1})}};oQ=A$([I(),d$(0,T(V.AppBinding))],oQ);var rX=()=>new p(({bind:Q})=>{Q(lQ.GetAppConfigUseCase).to(oQ)});var pQ={SignMessageUseCase:Symbol.for("SignMessageUseCase")};var{defineProperty:c$,getOwnPropertyDescriptor:l$}=Object,o$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?l$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&c$(X,$,J),J},p$=(Q,X)=>($,Y)=>X($,Y,Q),sQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.signMessage({derivationPath:Q,message:X,skipOpenApp:!1})}};sQ=o$([I(),p$(0,T(V.AppBinding))],sQ);var Q8=()=>new p(({bind:Q})=>{Q(pQ.SignMessageUseCase).to(sQ)});var JQ={GetTrustedInputUseCase:Symbol.for("GetTrustedInputUseCase"),SignTransactionUseCase:Symbol.for("SignTransactionUseCase"),SignPcztTransactionUseCase:Symbol.for("SignPcztTransactionUseCase")};var{defineProperty:s$,getOwnPropertyDescriptor:a$}=Object,n$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?a$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&s$(X,$,J),J},i$=(Q,X)=>($,Y)=>X($,Y,Q),aQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.getTrustedInput({transaction:Q,indexLookup:X?.indexLookup,skipOpenApp:X?.skipOpenApp??!1})}};aQ=n$([I(),i$(0,T(V.AppBinding))],aQ);var{defineProperty:t$,getOwnPropertyDescriptor:e$}=Object,r$=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?e$(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&t$(X,$,J),J},QY=(Q,X)=>($,Y)=>X($,Y,Q),nQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.signPcztTransaction({transaction:Q,skipOpenApp:X?.skipOpenApp})}};nQ=r$([I(),QY(0,T(V.AppBinding))],nQ);var{defineProperty:XY,getOwnPropertyDescriptor:$Y}=Object,YY=(Q,X,$,Y)=>{for(var J=Y>1?void 0:Y?$Y(X,$):X,N=Q.length-1,Z;N>=0;N--)(Z=Q[N])&&(J=(Y?Z(X,$,J):Z(J))||J);return Y&&J&&XY(X,$,J),J},JY=(Q,X)=>($,Y)=>X($,Y,Q),iQ=class{_appBinder;constructor(Q){this._appBinder=Q}execute(Q,X){return this._appBinder.signTransaction({transactionArg:Q,skipOpenApp:X?.skipOpenApp})}};iQ=YY([I(),JY(0,T(V.AppBinding))],iQ);var X8=()=>new p(({bind:Q})=>{Q(JQ.GetTrustedInputUseCase).to(aQ),Q(JQ.SignTransactionUseCase).to(iQ),Q(JQ.SignPcztTransactionUseCase).to(nQ)});var Y8=({dmk:Q,sessionId:X})=>{let $=new $8;return $.bind(ZQ.Dmk).toConstantValue(Q),$.bind(ZQ.SessionId).toConstantValue(X),$.loadSync(tX(),rX(),eX(),X8(),Q8()),$};class u0{_container;constructor({dmk:Q,sessionId:X}){this._container=Y8({dmk:Q,sessionId:X})}getAppConfig(){return this._container.get(lQ.GetAppConfigUseCase).execute()}getAddress(Q,X){return this._container.get(YQ.GetAddressUseCase).execute(Q,X)}getFullViewingKey(Q,X){return this._container.get(YQ.GetFullViewingKeyUseCase).execute(Q,X)}getShieldedAddress(Q,X){return this._container.get(YQ.GetShieldedAddressUseCase).execute(Q,X)}signTransaction(Q,X){return this._container.get(JQ.SignTransactionUseCase).execute(Q,X)}signPcztTransaction(Q,X){return this._container.get(JQ.SignPcztTransactionUseCase).execute(Q,X)}signMessage(Q,X){return this._container.get(pQ.SignMessageUseCase).execute(Q,X)}getTrustedInput(Q,X){return this._container.get(JQ.GetTrustedInputUseCase).execute(Q,X)}}class NY{_dmk;_sessionId;constructor({dmk:Q,sessionId:X}){this._dmk=Q,this._sessionId=X}build(){return new u0({dmk:this._dmk,sessionId:this._sessionId})}}export{NY as SignerZcashBuilder};
2
2
 
3
- //# debugId=1EFBC544E95CC49764756E2164756E21
4
- //# sourceMappingURL=chunk-gr3eswf1.js.map
3
+ //# debugId=D52C30B5021C73FE64756E2164756E21
4
+ //# sourceMappingURL=chunk-42xrtarj.js.map
@@ -68,6 +68,6 @@
68
68
  "import{DefaultSignerZcash as i}from\"../internal/DefaultSignerZcash\";class n{_dmk;_sessionId;constructor({dmk:e,sessionId:s}){this._dmk=e,this._sessionId=s}build(){return new i({dmk:this._dmk,sessionId:this._sessionId})}}export{n as SignerZcashBuilder};\n//# sourceMappingURL=SignerZcashBuilder.js.map\n"
69
69
  ],
70
70
  "mappings": "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",
71
- "debugId": "1EFBC544E95CC49764756E2164756E21",
71
+ "debugId": "D52C30B5021C73FE64756E2164756E21",
72
72
  "names": []
73
73
  }
@@ -1,4 +1,4 @@
1
- import{Ad as Ef,Bd as zf,Ed as qf,Fd as Kf,Jb as D,Lb as Xf,Nb as O,Ob as q,Pd as Bf,Qd as e,Xb as a,rc as u,tc as Df,uc as b,vc as L,wc as t,xb as n,zc as Gf}from"./chunk-dptbnkzm.js";import"./chunk-nhva847d.js";class d extends u{constructor(A){super(A);this.err=A}_tag="WebHidTransportNotSupportedError"}class v extends u{constructor(A){super(A);this.err=A}_tag="WebHidSendReportError"}/*! *****************************************************************************
1
+ import{Ac as Gf,Bd as Ef,Cd as zf,Fd as qf,Gd as Kf,Kb as D,Mb as Xf,Ob as O,Pb as q,Qd as Bf,Rd as e,Yb as a,sc as u,uc as Df,vc as b,wc as L,xc as t,yb as n}from"./chunk-mzan0m09.js";import"./chunk-kaw35ae2.js";class d extends u{constructor(A){super(A);this.err=A}_tag="WebHidTransportNotSupportedError"}class v extends u{constructor(A){super(A);this.err=A}_tag="WebHidSendReportError"}/*! *****************************************************************************
2
2
  Copyright (c) Microsoft Corporation.
3
3
 
4
4
  Permission to use, copy, modify, and/or distribute this software for any
@@ -13,5 +13,5 @@ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
13
13
  PERFORMANCE OF THIS SOFTWARE.
14
14
  ***************************************************************************** */var Y=function(){return Y=Object.assign||function(f){for(var T,N=1,I=arguments.length;N<I;N++){T=arguments[N];for(var W in T)if(Object.prototype.hasOwnProperty.call(T,W))f[W]=T[W]}return f},Y.apply(this,arguments)};function Nf(A){var f=typeof Symbol==="function"&&Symbol.iterator,T=f&&A[f],N=0;if(T)return T.call(A);if(A&&typeof A.length==="number")return{next:function(){if(A&&N>=A.length)A=void 0;return{value:A&&A[N++],done:!A}}};throw TypeError(f?"Object is not iterable.":"Symbol.iterator is not defined.")}function B(A,f){var T=typeof Symbol==="function"&&A[Symbol.iterator];if(!T)return A;var N=T.call(A),I,W=[],Q;try{while((f===void 0||f-- >0)&&!(I=N.next()).done)W.push(I.value)}catch(J){Q={error:J}}finally{try{if(I&&!I.done&&(T=N.return))T.call(N)}finally{if(Q)throw Q.error}}return W}function R(){for(var A=[],f=0;f<arguments.length;f++)A=A.concat(B(arguments[f]));return A}function If(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}function K(){return!If()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}function Wf(A,f){return A.require(f)}var Mf={};function F(){return K()?global:typeof window<"u"?window:typeof self<"u"?self:Mf}function P(A,f,T){var N=T||F(),I=N.__SENTRY__=N.__SENTRY__||{},W=I[A]||(I[A]=f());return W}var Lf=Object.prototype.toString;function yf(A,f){return Lf.call(A)==="[object "+f+"]"}function y(A){return yf(A,"Object")}function w(A){return Boolean(A&&A.then&&typeof A.then==="function")}var _=typeof __SENTRY_DEBUG__>"u"?!0:__SENTRY_DEBUG__;var wf=F(),jf="Sentry Logger ",g=["debug","info","warn","error","log","assert"];function x(A){var f=F();if(!("console"in f))return A();var T=f.console,N={};g.forEach(function(I){var W=T[I]&&T[I].__sentry_original__;if(I in f.console&&W)N[I]=T[I],T[I]=W});try{return A()}finally{Object.keys(N).forEach(function(I){T[I]=N[I]})}}function Yf(){var A=!1,f={enable:function(){A=!0},disable:function(){A=!1}};if(_)g.forEach(function(T){f[T]=function(){var N=[];for(var I=0;I<arguments.length;I++)N[I]=arguments[I];if(A)x(function(){var W;(W=wf.console)[T].apply(W,R([jf+"["+T+"]:"],N))})}});else g.forEach(function(T){f[T]=function(){return}});return f}var U;if(_)U=P("logger",Yf);else U=Yf();function j(A){var f,T;if(y(A)){var N={};try{for(var I=Nf(Object.keys(A)),W=I.next();!W.done;W=I.next()){var Q=W.value;if(typeof A[Q]<"u")N[Q]=j(A[Q])}}catch(J){f={error:J}}finally{try{if(W&&!W.done&&(T=I.return))T.call(I)}finally{if(f)throw f.error}}return N}if(Array.isArray(A))return A.map(j);return A}function G(){var A=F(),f=A.crypto||A.msCrypto;if(f!==void 0&&f.getRandomValues){var T=new Uint16Array(8);f.getRandomValues(T),T[3]=T[3]&4095|16384,T[4]=T[4]&16383|32768;var N=function(I){var W=I.toString(16);while(W.length<4)W="0"+W;return W};return N(T[0])+N(T[1])+N(T[2])+N(T[3])+N(T[4])+N(T[5])+N(T[6])+N(T[7])}return"xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g,function(I){var W=Math.random()*16|0,Q=I==="x"?W:W&3|8;return Q.toString(16)})}var Qf=function(){function A(f){var T=this;this._state=0,this._handlers=[],this._resolve=function(N){T._setResult(1,N)},this._reject=function(N){T._setResult(2,N)},this._setResult=function(N,I){if(T._state!==0)return;if(w(I)){I.then(T._resolve,T._reject);return}T._state=N,T._value=I,T._executeHandlers()},this._executeHandlers=function(){if(T._state===0)return;var N=T._handlers.slice();T._handlers=[],N.forEach(function(I){if(I[0])return;if(T._state===1)I[1](T._value);if(T._state===2)I[2](T._value);I[0]=!0})};try{f(this._resolve,this._reject)}catch(N){this._reject(N)}}return A.prototype.then=function(f,T){var N=this;return new A(function(I,W){N._handlers.push([!1,function(Q){if(!f)I(Q);else try{I(f(Q))}catch(J){W(J)}},function(Q){if(!T)W(Q);else try{I(T(Q))}catch(J){W(J)}}]),N._executeHandlers()})},A.prototype.catch=function(f){return this.then(function(T){return T},f)},A.prototype.finally=function(f){var T=this;return new A(function(N,I){var W,Q;return T.then(function(J){if(Q=!1,W=J,f)f()},function(J){if(Q=!0,W=J,f)f()}).then(function(){if(Q){I(W);return}N(W)})})},A}();var l={nowSeconds:function(){return Date.now()/1000}};function Hf(){var A=F().performance;if(!A||!A.now)return;var f=Date.now()-A.now();return{now:function(){return A.now()},timeOrigin:f}}function kf(){try{var A=Wf(hf,"perf_hooks");return A.performance}catch(f){return}}var m=K()?kf():Hf(),Jf=m===void 0?l:{nowSeconds:function(){return(m.timeOrigin+m.now())/1000}},k=l.nowSeconds.bind(l),p=Jf.nowSeconds.bind(Jf);var H,z0=function(){var A=F().performance;if(!A||!A.now){H="none";return}var f=3600000,T=A.now(),N=Date.now(),I=A.timeOrigin?Math.abs(A.timeOrigin+T-N):f,W=I<f,Q=A.timing&&A.timing.navigationStart,J=typeof Q==="number",Z=J?Math.abs(Q+T-N):f,$=Z<f;if(W||$)if(I<=Z)return H="timeOrigin",A.timeOrigin;else return H="navigationStart",Q;return H="dateNow",N}();var r=typeof __SENTRY_DEBUG__>"u"?!0:__SENTRY_DEBUG__;var Zf=100,h=function(){function A(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={}}return A.clone=function(f){var T=new A;if(f)T._breadcrumbs=R(f._breadcrumbs),T._tags=Y({},f._tags),T._extra=Y({},f._extra),T._contexts=Y({},f._contexts),T._user=f._user,T._level=f._level,T._span=f._span,T._session=f._session,T._transactionName=f._transactionName,T._fingerprint=f._fingerprint,T._eventProcessors=R(f._eventProcessors),T._requestSession=f._requestSession;return T},A.prototype.addScopeListener=function(f){this._scopeListeners.push(f)},A.prototype.addEventProcessor=function(f){return this._eventProcessors.push(f),this},A.prototype.setUser=function(f){if(this._user=f||{},this._session)this._session.update({user:f});return this._notifyScopeListeners(),this},A.prototype.getUser=function(){return this._user},A.prototype.getRequestSession=function(){return this._requestSession},A.prototype.setRequestSession=function(f){return this._requestSession=f,this},A.prototype.setTags=function(f){return this._tags=Y(Y({},this._tags),f),this._notifyScopeListeners(),this},A.prototype.setTag=function(f,T){var N;return this._tags=Y(Y({},this._tags),(N={},N[f]=T,N)),this._notifyScopeListeners(),this},A.prototype.setExtras=function(f){return this._extra=Y(Y({},this._extra),f),this._notifyScopeListeners(),this},A.prototype.setExtra=function(f,T){var N;return this._extra=Y(Y({},this._extra),(N={},N[f]=T,N)),this._notifyScopeListeners(),this},A.prototype.setFingerprint=function(f){return this._fingerprint=f,this._notifyScopeListeners(),this},A.prototype.setLevel=function(f){return this._level=f,this._notifyScopeListeners(),this},A.prototype.setTransactionName=function(f){return this._transactionName=f,this._notifyScopeListeners(),this},A.prototype.setTransaction=function(f){return this.setTransactionName(f)},A.prototype.setContext=function(f,T){var N;if(T===null)delete this._contexts[f];else this._contexts=Y(Y({},this._contexts),(N={},N[f]=T,N));return this._notifyScopeListeners(),this},A.prototype.setSpan=function(f){return this._span=f,this._notifyScopeListeners(),this},A.prototype.getSpan=function(){return this._span},A.prototype.getTransaction=function(){var f=this.getSpan();return f&&f.transaction},A.prototype.setSession=function(f){if(!f)delete this._session;else this._session=f;return this._notifyScopeListeners(),this},A.prototype.getSession=function(){return this._session},A.prototype.update=function(f){if(!f)return this;if(typeof f==="function"){var T=f(this);return T instanceof A?T:this}if(f instanceof A){if(this._tags=Y(Y({},this._tags),f._tags),this._extra=Y(Y({},this._extra),f._extra),this._contexts=Y(Y({},this._contexts),f._contexts),f._user&&Object.keys(f._user).length)this._user=f._user;if(f._level)this._level=f._level;if(f._fingerprint)this._fingerprint=f._fingerprint;if(f._requestSession)this._requestSession=f._requestSession}else if(y(f)){if(f=f,this._tags=Y(Y({},this._tags),f.tags),this._extra=Y(Y({},this._extra),f.extra),this._contexts=Y(Y({},this._contexts),f.contexts),f.user)this._user=f.user;if(f.level)this._level=f.level;if(f.fingerprint)this._fingerprint=f.fingerprint;if(f.requestSession)this._requestSession=f.requestSession}return this},A.prototype.clear=function(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._requestSession=void 0,this._span=void 0,this._session=void 0,this._notifyScopeListeners(),this},A.prototype.addBreadcrumb=function(f,T){var N=typeof T==="number"?Math.min(T,Zf):Zf;if(N<=0)return this;var I=Y({timestamp:k()},f);return this._breadcrumbs=R(this._breadcrumbs,[I]).slice(-N),this._notifyScopeListeners(),this},A.prototype.clearBreadcrumbs=function(){return this._breadcrumbs=[],this._notifyScopeListeners(),this},A.prototype.applyToEvent=function(f,T){if(this._extra&&Object.keys(this._extra).length)f.extra=Y(Y({},this._extra),f.extra);if(this._tags&&Object.keys(this._tags).length)f.tags=Y(Y({},this._tags),f.tags);if(this._user&&Object.keys(this._user).length)f.user=Y(Y({},this._user),f.user);if(this._contexts&&Object.keys(this._contexts).length)f.contexts=Y(Y({},this._contexts),f.contexts);if(this._level)f.level=this._level;if(this._transactionName)f.transaction=this._transactionName;if(this._span){f.contexts=Y({trace:this._span.getTraceContext()},f.contexts);var N=this._span.transaction&&this._span.transaction.name;if(N)f.tags=Y({transaction:N},f.tags)}return this._applyFingerprint(f),f.breadcrumbs=R(f.breadcrumbs||[],this._breadcrumbs),f.breadcrumbs=f.breadcrumbs.length>0?f.breadcrumbs:void 0,f.sdkProcessingMetadata=this._sdkProcessingMetadata,this._notifyEventProcessors(R(Sf(),this._eventProcessors),f,T)},A.prototype.setSDKProcessingMetadata=function(f){return this._sdkProcessingMetadata=Y(Y({},this._sdkProcessingMetadata),f),this},A.prototype._notifyEventProcessors=function(f,T,N,I){var W=this;if(I===void 0)I=0;return new Qf(function(Q,J){var Z=f[I];if(T===null||typeof Z!=="function")Q(T);else{var $=Z(Y({},T),N);if(w($))$.then(function(X){return W._notifyEventProcessors(f,X,N,I+1).then(Q)}).then(null,J);else W._notifyEventProcessors(f,$,N,I+1).then(Q).then(null,J)}})},A.prototype._notifyScopeListeners=function(){var f=this;if(!this._notifyingListeners)this._notifyingListeners=!0,this._scopeListeners.forEach(function(T){T(f)}),this._notifyingListeners=!1},A.prototype._applyFingerprint=function(f){if(f.fingerprint=f.fingerprint?Array.isArray(f.fingerprint)?f.fingerprint:[f.fingerprint]:[],this._fingerprint)f.fingerprint=f.fingerprint.concat(this._fingerprint);if(f.fingerprint&&!f.fingerprint.length)delete f.fingerprint},A}();function Sf(){return P("globalEventProcessors",function(){return[]})}var $f=function(){function A(f){this.errors=0,this.sid=G(),this.duration=0,this.status="ok",this.init=!0,this.ignoreDuration=!1;var T=p();if(this.timestamp=T,this.started=T,f)this.update(f)}return A.prototype.update=function(f){if(f===void 0)f={};if(f.user){if(!this.ipAddress&&f.user.ip_address)this.ipAddress=f.user.ip_address;if(!this.did&&!f.did)this.did=f.user.id||f.user.email||f.user.username}if(this.timestamp=f.timestamp||p(),f.ignoreDuration)this.ignoreDuration=f.ignoreDuration;if(f.sid)this.sid=f.sid.length===32?f.sid:G();if(f.init!==void 0)this.init=f.init;if(!this.did&&f.did)this.did=""+f.did;if(typeof f.started==="number")this.started=f.started;if(this.ignoreDuration)this.duration=void 0;else if(typeof f.duration==="number")this.duration=f.duration;else{var T=this.timestamp-this.started;this.duration=T>=0?T:0}if(f.release)this.release=f.release;if(f.environment)this.environment=f.environment;if(!this.ipAddress&&f.ipAddress)this.ipAddress=f.ipAddress;if(!this.userAgent&&f.userAgent)this.userAgent=f.userAgent;if(typeof f.errors==="number")this.errors=f.errors;if(f.status)this.status=f.status},A.prototype.close=function(f){if(f)this.update({status:f});else if(this.status==="ok")this.update({status:"exited"});else this.update()},A.prototype.toJSON=function(){return j({sid:""+this.sid,init:this.init,started:new Date(this.started*1000).toISOString(),timestamp:new Date(this.timestamp*1000).toISOString(),status:this.status,errors:this.errors,did:typeof this.did==="number"||typeof this.did==="string"?""+this.did:void 0,duration:this.duration,attrs:{release:this.release,environment:this.environment,ip_address:this.ipAddress,user_agent:this.userAgent}})},A}();var c=4,Cf=100,S=function(){function A(f,T,N){if(T===void 0)T=new h;if(N===void 0)N=c;if(this._version=N,this._stack=[{}],this.getStackTop().scope=T,f)this.bindClient(f)}return A.prototype.isOlderThan=function(f){return this._version<f},A.prototype.bindClient=function(f){var T=this.getStackTop();if(T.client=f,f&&f.setupIntegrations)f.setupIntegrations()},A.prototype.pushScope=function(){var f=h.clone(this.getScope());return this.getStack().push({client:this.getClient(),scope:f}),f},A.prototype.popScope=function(){if(this.getStack().length<=1)return!1;return!!this.getStack().pop()},A.prototype.withScope=function(f){var T=this.pushScope();try{f(T)}finally{this.popScope()}},A.prototype.getClient=function(){return this.getStackTop().client},A.prototype.getScope=function(){return this.getStackTop().scope},A.prototype.getStack=function(){return this._stack},A.prototype.getStackTop=function(){return this._stack[this._stack.length-1]},A.prototype.captureException=function(f,T){var N=this._lastEventId=T&&T.event_id?T.event_id:G(),I=T;if(!T){var W=void 0;try{throw Error("Sentry syntheticException")}catch(Q){W=Q}I={originalException:f,syntheticException:W}}return this._invokeClient("captureException",f,Y(Y({},I),{event_id:N})),N},A.prototype.captureMessage=function(f,T,N){var I=this._lastEventId=N&&N.event_id?N.event_id:G(),W=N;if(!N){var Q=void 0;try{throw Error(f)}catch(J){Q=J}W={originalException:f,syntheticException:Q}}return this._invokeClient("captureMessage",f,T,Y(Y({},W),{event_id:I})),I},A.prototype.captureEvent=function(f,T){var N=T&&T.event_id?T.event_id:G();if(f.type!=="transaction")this._lastEventId=N;return this._invokeClient("captureEvent",f,Y(Y({},T),{event_id:N})),N},A.prototype.lastEventId=function(){return this._lastEventId},A.prototype.addBreadcrumb=function(f,T){var N=this.getStackTop(),I=N.scope,W=N.client;if(!I||!W)return;var Q=W.getOptions&&W.getOptions()||{},J=Q.beforeBreadcrumb,Z=J===void 0?null:J,$=Q.maxBreadcrumbs,X=$===void 0?Cf:$;if(X<=0)return;var E=k(),Af=Y({timestamp:E},f),Tf=Z?x(function(){return Z(Af,T)}):Af;if(Tf===null)return;I.addBreadcrumb(Tf,X)},A.prototype.setUser=function(f){var T=this.getScope();if(T)T.setUser(f)},A.prototype.setTags=function(f){var T=this.getScope();if(T)T.setTags(f)},A.prototype.setExtras=function(f){var T=this.getScope();if(T)T.setExtras(f)},A.prototype.setTag=function(f,T){var N=this.getScope();if(N)N.setTag(f,T)},A.prototype.setExtra=function(f,T){var N=this.getScope();if(N)N.setExtra(f,T)},A.prototype.setContext=function(f,T){var N=this.getScope();if(N)N.setContext(f,T)},A.prototype.configureScope=function(f){var T=this.getStackTop(),N=T.scope,I=T.client;if(N&&I)f(N)},A.prototype.run=function(f){var T=o(this);try{f(this)}finally{o(T)}},A.prototype.getIntegration=function(f){var T=this.getClient();if(!T)return null;try{return T.getIntegration(f)}catch(N){return r&&U.warn("Cannot retrieve integration "+f.id+" from the current Hub"),null}},A.prototype.startSpan=function(f){return this._callExtensionMethod("startSpan",f)},A.prototype.startTransaction=function(f,T){return this._callExtensionMethod("startTransaction",f,T)},A.prototype.traceHeaders=function(){return this._callExtensionMethod("traceHeaders")},A.prototype.captureSession=function(f){if(f===void 0)f=!1;if(f)return this.endSession();this._sendSessionUpdate()},A.prototype.endSession=function(){var f=this.getStackTop(),T=f&&f.scope,N=T&&T.getSession();if(N)N.close();if(this._sendSessionUpdate(),T)T.setSession()},A.prototype.startSession=function(f){var T=this.getStackTop(),N=T.scope,I=T.client,W=I&&I.getOptions()||{},Q=W.release,J=W.environment,Z=F(),$=(Z.navigator||{}).userAgent,X=new $f(Y(Y(Y({release:Q,environment:J},N&&{user:N.getUser()}),$&&{userAgent:$}),f));if(N){var E=N.getSession&&N.getSession();if(E&&E.status==="ok")E.update({status:"exited"});this.endSession(),N.setSession(X)}return X},A.prototype._sendSessionUpdate=function(){var f=this.getStackTop(),T=f.scope,N=f.client;if(!T)return;var I=T.getSession&&T.getSession();if(I){if(N&&N.captureSession)N.captureSession(I)}},A.prototype._invokeClient=function(f){var T,N=[];for(var I=1;I<arguments.length;I++)N[I-1]=arguments[I];var W=this.getStackTop(),Q=W.scope,J=W.client;if(J&&J[f])(T=J)[f].apply(T,R(N,[Q]))},A.prototype._callExtensionMethod=function(f){var T=[];for(var N=1;N<arguments.length;N++)T[N-1]=arguments[N];var I=M(),W=I.__SENTRY__;if(W&&W.extensions&&typeof W.extensions[f]==="function")return W.extensions[f].apply(this,T);r&&U.warn("Extension method "+f+" couldn't be found, doing nothing.")},A}();function M(){var A=F();return A.__SENTRY__=A.__SENTRY__||{extensions:{},hub:void 0},A}function o(A){var f=M(),T=V(f);return C(f,A),T}function i(){var A=M();if(!Rf(A)||V(A).isOlderThan(c))C(A,new S);if(K())return bf(A);return V(A)}function bf(A){try{var f=M().__SENTRY__,T=f&&f.extensions&&f.extensions.domain&&f.extensions.domain.active;if(!T)return V(A);if(!Rf(T)||V(T).isOlderThan(c)){var N=V(A).getStackTop();C(T,new S(N.client,h.clone(N.scope)))}return V(T)}catch(I){return V(A)}}function Rf(A){return!!(A&&A.__SENTRY__&&A.__SENTRY__.hub)}function V(A){return P("hub",function(){return new S},A)}function C(A,f){if(!A)return!1;var T=A.__SENTRY__=A.__SENTRY__||{};return T.hub=f,!0}function uf(A){var f=[];for(var T=1;T<arguments.length;T++)f[T-1]=arguments[T];var N=i();if(N&&N[A])return N[A].apply(N,R(f));throw Error("No hub defined or "+A+" was not found on the hub, please open a bug report.")}function z(A,f){var T=Error("Sentry syntheticException");return uf("captureException",A,{captureContext:f,originalException:A,syntheticException:T})}import{BehaviorSubject as df,from as Pf,map as vf,switchMap as _f}from"rxjs";var Of=64,Vf=6000;class s{dependencies;apduSender;apduReceiver;sendApduPromiseResolver;logger;constructor({dependencies:A,apduSenderFactory:f,apduReceiverFactory:T},N){let I=D.of(zf.numberToByteArray(Math.floor(Math.random()*65535),2));this.logger=N("WebHidApduSender"),this.apduSender=f({frameSize:Of,channel:I,padding:!0}),this.apduReceiver=T({channel:I}),this.sendApduPromiseResolver=Xf,this.dependencies=A,this.logger.info("\uD83D\uDD0C Connected to device")}async sendApdu(A,f,T){let N,I=new Promise((W)=>{this.sendApduPromiseResolver=D.of((...Q)=>(N&&clearTimeout(N),W(...Q)))});for(let W of this.apduSender.getFrames(A))try{await this.dependencies.device.sendReport(0,new Uint8Array(W.getRawData()))}catch(Q){return this.logger.info("Error sending frame",{data:{error:Q}}),Promise.resolve(O(new v(Q)))}return this.logger.debug(qf(A)),T&&(N=setTimeout(()=>{this.logger.debug("[sendApdu] Abort timeout",{data:{abortTimeout:T}}),this.sendApduPromiseResolver.map((W)=>W(O(new Gf("Abort timeout"))))},T)),I}receiveHidInputReport(A){let f=new Uint8Array(A.data.buffer);this.apduReceiver.handleFrame(f).map((T)=>{T.map((N)=>{this.logger.debug(Kf(N)),this.sendApduPromiseResolver.map((I)=>I(q(N)))})}).mapLeft((T)=>{this.sendApduPromiseResolver.map((N)=>N(O(T)))})}getDependencies(){return this.dependencies}setDependencies(A){this.dependencies=A}async setupConnection(){try{this.dependencies.device.oninputreport=(A)=>this.receiveHidInputReport(A),await this.dependencies.device.open()}catch(A){if(A instanceof DOMException&&A.name==="InvalidStateError")this.logger.info("Device is already opened");else{let f=new L(A);throw this.logger.error("Error while opening device",{data:{error:A}}),z(f),A}}}closeConnection(){this.logger.info("\uD83D\uDD1A Disconnect"),this.dependencies.device.close().catch((A)=>{this.logger.error("Error while closing device",{data:{device:this.dependencies.device,error:A}})})}}var Uf="WEB-HID";class ff{constructor(A,f,T,N,I=(Q)=>new Bf(Q),W=(Q,J)=>new s(Q,J)){this._deviceModelDataSource=A,this._loggerServiceFactory=f,this._apduSenderFactory=T,this._apduReceiverFactory=N,this._deviceConnectionStateMachineFactory=I,this._deviceApduSenderFactory=W,this._logger=f("WebWebHidTransport"),this.startListeningToConnectionEvents()}_transportDiscoveredDevices=new df([]);_deviceConnectionsByHidDevice=new Map;_deviceConnectionsPendingReconnection=new Set;_connectionListenersAbortController=new AbortController;_logger;connectionType="USB";identifier=Uf;get hidApi(){return this.isSupported()?q(navigator.hid):O(new d("WebHID not supported"))}isSupported(){try{let A=!!navigator?.hid;return this._logger.debug(`isSupported: ${A}`),A}catch(A){return this._logger.error("isSupported: error",{data:{error:A}}),!1}}getIdentifier(){return this.identifier}async getDevices(){return a.liftEither(this.hidApi).map(async(A)=>{try{return(await A.getDevices()).filter((f)=>f.vendorId===n)}catch(f){let T=new b(f);throw this._logger.error("getDevices: error getting devices",{data:{error:f}}),z(T),T}})}mapHIDDeviceToTransportDiscoveredDevice(A){let f=this._transportDiscoveredDevices.getValue().find((N)=>N.hidDevice===A);if(f)return f;let T=this._deviceConnectionsByHidDevice.get(A);return this.getDeviceModel(A).caseOf({Just:(N)=>{let I=T?.getDeviceId()??Ef(),W={id:I,deviceModel:N,hidDevice:A,transport:this.identifier};return this._logger.debug(`Discovered device ${I} ${W.deviceModel.productName}`),W},Nothing:()=>{throw this._logger.warn(`Device not recognized: hidDevice.productId: 0x${A.productId.toString(16)}`),new Df(`Device not recognized: hidDevice.productId: 0x${A.productId.toString(16)}`)}})}listenToAvailableDevices(){return this.updateTransportDiscoveredDevices(),this._transportDiscoveredDevices.pipe(vf((A)=>A.map(({hidDevice:f,...T})=>T)))}async updateTransportDiscoveredDevices(){(await this.getDevices()).caseOf({Left:(A)=>{this._logger.error("Error while getting accessible device",{data:{error:A}}),z(A)},Right:(A)=>{this._transportDiscoveredDevices.next(A.map((f)=>this.mapHIDDeviceToTransportDiscoveredDevice(f)))}})}async promptDeviceAccess(){return a.liftEither(this.hidApi).map(async(A)=>{let f=[];try{f=await A.requestDevice({filters:[{vendorId:n}]}),await this.updateTransportDiscoveredDevices()}catch(N){let I=new b(N);throw this._logger.error("promptDeviceAccess: error requesting device",{data:{error:N}}),z(I),I}if(this._logger.debug(`promptDeviceAccess: hidDevices len ${f.length}`),f.length===0)throw this._logger.warn("No device was selected"),new b("No selected device");let T=[];for(let N of f)T.push(N),this._logger.debug("promptDeviceAccess: selected device",{data:{hidDevice:N}});return T}).run()}startDiscovering(){return this._logger.debug("startDiscovering"),Pf(this.promptDeviceAccess()).pipe(_f((A)=>A.caseOf({Left:(f)=>{throw this._logger.error("Error while getting accessible device",{data:{error:f}}),z(f),f},Right:(f)=>{this._logger.info(`Got access to ${f.length} HID devices`);let T=f.map((N)=>this.mapHIDDeviceToTransportDiscoveredDevice(N));return Pf(T)}})))}stopDiscovering(){}startListeningToConnectionEvents(){this._logger.debug("startListeningToConnectionEvents"),this.hidApi.map((A)=>{A.addEventListener("connect",(f)=>this.handleDeviceConnectionEvent(f),{signal:this._connectionListenersAbortController.signal}),A.addEventListener("disconnect",(f)=>this.handleDeviceDisconnectionEvent(f),{signal:this._connectionListenersAbortController.signal})})}stopListeningToConnectionEvents(){this._logger.debug("stopListeningToConnectionEvents"),this._connectionListenersAbortController.abort()}async connect({deviceId:A,onDisconnect:f}){this._logger.debug("connect",{data:{deviceId:A}});let T=this._transportDiscoveredDevices.getValue().find((Z)=>Z.id===A);if(!T)return this._logger.error(`Unknown device ${A}`),O(new t(`Unknown device ${A}`));let{deviceModel:N}=T,I=this._deviceConnectionsByHidDevice.get(T.hidDevice);if(I)return q(new e({id:A,deviceModel:N,type:this.connectionType,sendApdu:(...Z)=>I.sendApdu(...Z),transport:this.identifier}));let W=this._deviceApduSenderFactory({apduSenderFactory:this._apduSenderFactory,apduReceiverFactory:this._apduReceiverFactory,dependencies:{device:T.hidDevice}},this._loggerServiceFactory),Q=this._deviceConnectionStateMachineFactory({deviceId:A,deviceApduSender:W,timeoutDuration:Vf,tryToReconnect:()=>{this._deviceConnectionsByHidDevice.forEach((Z,$)=>{Z.getDeviceId()===A&&(this._deviceConnectionsPendingReconnection.add(Z),this._deviceConnectionsByHidDevice.delete($))})},onTerminated:()=>{this._deviceConnectionsPendingReconnection.forEach((Z)=>{Z.getDeviceId()===A&&(this._deviceConnectionsPendingReconnection.delete(Z),f(Z.getDeviceId()))}),this._deviceConnectionsByHidDevice.forEach((Z,$)=>{Z.getDeviceId()===A&&(this._deviceConnectionsByHidDevice.delete($),f(Z.getDeviceId()))})}});try{await W.setupConnection()}catch(Z){return Z instanceof L?O(Z):O(new L(Z))}this._deviceConnectionsByHidDevice.set(T.hidDevice,Q);let J=new e({sendApdu:(...Z)=>Q.sendApdu(...Z),deviceModel:N,id:A,type:this.connectionType,transport:this.identifier});return q(J)}getDeviceModel(A){let{productId:f}=A,T=this._deviceModelDataSource.getAllDeviceModels().find((N)=>N.usbProductId===f>>8||N.bootloaderUsbProductId===f);return T?D.of(T):D.zero()}getHidUsbProductId(A){return this.getDeviceModel(A).caseOf({Just:(f)=>f.usbProductId,Nothing:()=>A.productId>>8})}async disconnect(A){this._logger.debug("disconnect",{data:{connectedDevice:A}});let f=Array.from(this._deviceConnectionsByHidDevice.values()).find((T)=>T.getDeviceId()===A.connectedDevice.id);return f?(f.closeConnection(),Promise.resolve(q(void 0))):(this._logger.error("No matching device connection found",{data:{connectedDevice:A}}),Promise.resolve(O(new t(`Unknown device ${A.connectedDevice.id}`))))}isHIDConnectionEvent(A){return"device"in A&&typeof A.device=="object"&&A.device!==null&&"productId"in A.device&&typeof A.device.productId=="number"}async handleDeviceDisconnectionEvent(A){if(!this.isHIDConnectionEvent(A)){this._logger.error("Invalid event",{data:{event:A}});return}this._logger.info("[handleDeviceDisconnectionEvent] Device disconnected",{data:{event:A}}),this.updateTransportDiscoveredDevices();try{await A.device.close()}catch(T){this._logger.error("Error while closing device ",{data:{event:A,error:T}})}let f=this._deviceConnectionsByHidDevice.get(A.device);f&&f.eventDeviceDisconnected()}async handleDeviceReconnection(A,f){this._deviceConnectionsPendingReconnection.delete(A),this._deviceConnectionsByHidDevice.set(f,A);try{A.setDependencies({device:f}),await A.setupConnection(),A.eventDeviceConnected()}catch(T){this._logger.error("Error while reconnecting to device",{data:{event,error:T}}),A.closeConnection()}}async handleDeviceConnectionEvent(A){if(!this.isHIDConnectionEvent(A)){this._logger.error("Invalid event",{data:{event:A}});return}this._logger.info("[handleDeviceConnectionEvent] Device connected",{data:{event:A}});let f=Array.from(this._deviceConnectionsPendingReconnection).find((T)=>this.getHidUsbProductId(T.getDependencies().device)===this.getHidUsbProductId(A.device));f&&await this.handleDeviceReconnection(f,A.device),this.updateTransportDiscoveredDevices()}destroy(){this.stopListeningToConnectionEvents(),this._deviceConnectionsByHidDevice.forEach((A)=>{A.closeConnection()}),this._deviceConnectionsPendingReconnection.clear()}}var gf=({deviceModelDataSource:A,loggerServiceFactory:f,apduSenderServiceFactory:T,apduReceiverServiceFactory:N})=>new ff(A,f,T,N);export{gf as webHidTransportFactory,Uf as webHidIdentifier,d as WebHidTransportNotSupportedError,ff as WebHidTransport,v as WebHidSendReportError};
15
15
 
16
- //# debugId=DEDC796086BA898864756E2164756E21
17
- //# sourceMappingURL=chunk-3t17wpjg.js.map
16
+ //# debugId=C93D5C3704FCD9C764756E2164756E21
17
+ //# sourceMappingURL=chunk-545s1tsc.js.map
@@ -24,6 +24,6 @@
24
24
  "import{formatApduReceivedLog as c,formatApduSentLog as a,FramerUtils as u,OpeningConnectionError as v,SendApduTimeoutError as m}from\"@ledgerhq/device-management-kit\";import*as g from\"@sentry/minimal\";import{Left as p,Maybe as s,Nothing as h,Right as l}from\"purify-ts\";import{FRAME_SIZE as A}from\"../data/WebHidConfig\";import{WebHidSendReportError as y}from\"../model/Errors\";class E{dependencies;apduSender;apduReceiver;sendApduPromiseResolver;logger;constructor({dependencies:e,apduSenderFactory:n,apduReceiverFactory:d},r){const i=s.of(u.numberToByteArray(Math.floor(Math.random()*65535),2));this.logger=r(\"WebHidApduSender\"),this.apduSender=n({frameSize:A,channel:i,padding:!0}),this.apduReceiver=d({channel:i}),this.sendApduPromiseResolver=h,this.dependencies=e,this.logger.info(\"\\u{1F50C} Connected to device\")}async sendApdu(e,n,d){let r;const i=new Promise(t=>{this.sendApduPromiseResolver=s.of((...o)=>(r&&clearTimeout(r),t(...o)))});for(const t of this.apduSender.getFrames(e))try{await this.dependencies.device.sendReport(0,new Uint8Array(t.getRawData()))}catch(o){return this.logger.info(\"Error sending frame\",{data:{error:o}}),Promise.resolve(p(new y(o)))}return this.logger.debug(a(e)),d&&(r=setTimeout(()=>{this.logger.debug(\"[sendApdu] Abort timeout\",{data:{abortTimeout:d}}),this.sendApduPromiseResolver.map(t=>t(p(new m(\"Abort timeout\"))))},d)),i}receiveHidInputReport(e){const n=new Uint8Array(e.data.buffer);this.apduReceiver.handleFrame(n).map(r=>{r.map(i=>{this.logger.debug(c(i)),this.sendApduPromiseResolver.map(t=>t(l(i)))})}).mapLeft(r=>{this.sendApduPromiseResolver.map(i=>i(p(r)))})}getDependencies(){return this.dependencies}setDependencies(e){this.dependencies=e}async setupConnection(){try{this.dependencies.device.oninputreport=e=>this.receiveHidInputReport(e),await this.dependencies.device.open()}catch(e){if(e instanceof DOMException&&e.name===\"InvalidStateError\")this.logger.info(\"Device is already opened\");else{const n=new v(e);throw this.logger.error(\"Error while opening device\",{data:{error:e}}),g.captureException(n),e}}}closeConnection(){this.logger.info(\"\\u{1F51A} Disconnect\"),this.dependencies.device.close().catch(e=>{this.logger.error(\"Error while closing device\",{data:{device:this.dependencies.device,error:e}})})}}export{E as WebHidApduSender};\n//# sourceMappingURL=WebHidApduSender.js.map\n"
25
25
  ],
26
26
  "mappings": "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",
27
- "debugId": "DEDC796086BA898864756E2164756E21",
27
+ "debugId": "C93D5C3704FCD9C764756E2164756E21",
28
28
  "names": []
29
29
  }
@@ -1,4 +1,4 @@
1
- import{Ka as z}from"./chunk-hg71hp4m.js";import"./chunk-nhva847d.js";import{Chain as W,DerivationPath as X,derivationPathToString as Y}from"@swapkit/helpers";import{getRippleToolbox as Z}from"@swapkit/toolboxes/ripple";var w=async({sdk:E,derivationPath:F})=>{let G=F?Y(F):`${X[W.Ripple]}/0`,{address:j}=await E.address.xrpGetAddress({address_n:z(G)}),y=await Z({signer:{getAddress:()=>Promise.resolve(j),signTransaction:()=>{throw Error("signTransaction not supported via toolbox")}}});return{...y,address:j,getAddress:()=>j,transfer:async({recipient:I,assetValue:M,memo:q})=>{let f=await y.createTransaction({assetValue:M,memo:q,recipient:I,sender:j}),O={type:"auth/StdTx",value:{fee:{amount:[{amount:"1000",denom:"drop"}],gas:"28000"},memo:q&&q.length>0?q:"",msg:[{type:"ripple-sdk/MsgSend",value:{amount:[{amount:f.Amount,denom:"drop"}],from_address:j,to_address:I}}],signatures:null}},Q={addressNList:z(G),flags:f.Flags===0?void 0:f.Flags,lastLedgerSequence:f.LastLedgerSequence?.toString(),payment:{amount:f.Amount,destination:f.Destination,destinationTag:(f.DestinationTag??"0").toString()},sequence:(f.Sequence??0).toString(),tx:O},J=JSON.parse(await E.xrp.xrpSignTransaction(Q)),K=J.tx_blob??J.value?.signatures?.[0]?.serializedTx;if(!K)throw Error("KeepKey XRP sign failed");let U=Buffer.from(K,"base64").toString("hex");return y.broadcastTransaction(U)}}};export{w as rippleWalletMethods};
1
+ import{La as z}from"./chunk-tecse0bj.js";import"./chunk-kaw35ae2.js";import{Chain as W,DerivationPath as X,derivationPathToString as Y}from"@swapkit/helpers";import{getRippleToolbox as Z}from"@swapkit/toolboxes/ripple";var w=async({sdk:E,derivationPath:F})=>{let G=F?Y(F):`${X[W.Ripple]}/0`,{address:j}=await E.address.xrpGetAddress({address_n:z(G)}),y=await Z({signer:{getAddress:()=>Promise.resolve(j),signTransaction:()=>{throw Error("signTransaction not supported via toolbox")}}});return{...y,address:j,getAddress:()=>j,transfer:async({recipient:I,assetValue:M,memo:q})=>{let f=await y.createTransaction({assetValue:M,memo:q,recipient:I,sender:j}),O={type:"auth/StdTx",value:{fee:{amount:[{amount:"1000",denom:"drop"}],gas:"28000"},memo:q&&q.length>0?q:"",msg:[{type:"ripple-sdk/MsgSend",value:{amount:[{amount:f.Amount,denom:"drop"}],from_address:j,to_address:I}}],signatures:null}},Q={addressNList:z(G),flags:f.Flags===0?void 0:f.Flags,lastLedgerSequence:f.LastLedgerSequence?.toString(),payment:{amount:f.Amount,destination:f.Destination,destinationTag:(f.DestinationTag??"0").toString()},sequence:(f.Sequence??0).toString(),tx:O},J=JSON.parse(await E.xrp.xrpSignTransaction(Q)),K=J.tx_blob??J.value?.signatures?.[0]?.serializedTx;if(!K)throw Error("KeepKey XRP sign failed");let U=Buffer.from(K,"base64").toString("hex");return y.broadcastTransaction(U)}}};export{w as rippleWalletMethods};
2
2
 
3
- //# debugId=1EFC9904932EBBBF64756E2164756E21
4
- //# sourceMappingURL=chunk-1amf58aq.js.map
3
+ //# debugId=DAAC2DDF369E0E7964756E2164756E21
4
+ //# sourceMappingURL=chunk-5xg0xc0g.js.map
@@ -5,6 +5,6 @@
5
5
  "import type { KeepKeySdk } from \"@keepkey/keepkey-sdk\";\nimport {\n Chain,\n DerivationPath,\n type DerivationPathArray,\n derivationPathToString,\n type GenericTransferParams,\n} from \"@swapkit/helpers\";\nimport { getRippleToolbox } from \"@swapkit/toolboxes/ripple\";\nimport { bip32ToAddressNList } from \"../coins\";\n\nexport const rippleWalletMethods = async ({\n sdk,\n derivationPath,\n}: {\n sdk: KeepKeySdk;\n derivationPath?: DerivationPathArray;\n}) => {\n // Derivation path handling (default to standard XRP 44'/144'/0'/0/0)\n const derivationPathString = derivationPath\n ? derivationPathToString(derivationPath)\n : `${DerivationPath[Chain.Ripple]}/0`;\n\n // Fetch address from KeepKey\n const { address } = await (sdk as any).address.xrpGetAddress({\n address_n: bip32ToAddressNList(derivationPathString),\n });\n\n // Inject minimal signer so toolbox's address helpers work\n const signer = {\n getAddress: () => Promise.resolve(address),\n signTransaction: () => {\n throw new Error(\"signTransaction not supported via toolbox\");\n },\n };\n\n const toolbox = await getRippleToolbox({ signer });\n\n const transfer = async ({ recipient, assetValue, memo }: GenericTransferParams) => {\n // Build XRPL Payment tx using toolbox helper\n const tx = await toolbox.createTransaction({ assetValue, memo, recipient, sender: address });\n\n // Convert toolbox Payment tx into KeepKey StdTx wrapper (KeepKey-specific format)\n const stdTx = {\n type: \"auth/StdTx\",\n value: {\n fee: { amount: [{ amount: \"1000\", denom: \"drop\" }], gas: \"28000\" },\n memo: memo && memo.length > 0 ? memo : \"\",\n msg: [\n {\n type: \"ripple-sdk/MsgSend\",\n value: { amount: [{ amount: tx.Amount, denom: \"drop\" }], from_address: address, to_address: recipient },\n },\n ],\n signatures: null,\n },\n };\n\n const unsignedTx = {\n addressNList: bip32ToAddressNList(derivationPathString),\n flags: tx.Flags === 0 ? undefined : tx.Flags,\n lastLedgerSequence: tx.LastLedgerSequence?.toString(),\n payment: {\n amount: tx.Amount,\n destination: tx.Destination,\n destinationTag: (tx.DestinationTag ?? \"0\").toString(),\n },\n sequence: (tx.Sequence ?? 0).toString(),\n tx: stdTx,\n } as any;\n\n // Sign with KeepKey\n const responseSign = JSON.parse(await (sdk as any).xrp.xrpSignTransaction(unsignedTx));\n\n // keepkey-sdk may return either { tx_blob } or StdTx with Base64 serializedTx\n const txBlob: string | undefined =\n (responseSign as any).tx_blob ?? (responseSign as any).value?.signatures?.[0]?.serializedTx;\n if (!txBlob) throw new Error(\"KeepKey XRP sign failed\");\n\n const buffer = Buffer.from(txBlob, \"base64\");\n const txBlobHex = buffer.toString(\"hex\");\n\n // Broadcast signed tx via toolbox\n return toolbox.broadcastTransaction(txBlobHex);\n };\n\n return { ...toolbox, address, getAddress: () => address, transfer };\n};\n"
6
6
  ],
7
7
  "mappings": "2EACA,UACE,oBACA,4BAEA,yBAGF,2BAAS,kCAGF,IAAM,EAAsB,OACjC,MACA,oBAII,CAEJ,IAAM,EAAuB,EACzB,EAAuB,CAAc,EACrC,GAAG,EAAe,EAAM,aAGpB,WAAY,MAAO,EAAY,QAAQ,cAAc,CAC3D,UAAW,EAAoB,CAAoB,CACrD,CAAC,EAUK,EAAU,MAAM,EAAiB,CAAE,OAP1B,CACb,WAAY,IAAM,QAAQ,QAAQ,CAAO,EACzC,gBAAiB,IAAM,CACrB,MAAU,MAAM,2CAA2C,EAE/D,CAEgD,CAAC,EAkDjD,MAAO,IAAK,EAAS,UAAS,WAAY,IAAM,EAAS,SAhDxC,OAAS,YAAW,aAAY,UAAkC,CAEjF,IAAM,EAAK,MAAM,EAAQ,kBAAkB,CAAE,aAAY,OAAM,YAAW,OAAQ,CAAQ,CAAC,EAGrF,EAAQ,CACZ,KAAM,aACN,MAAO,CACL,IAAK,CAAE,OAAQ,CAAC,CAAE,OAAQ,OAAQ,MAAO,MAAO,CAAC,EAAG,IAAK,OAAQ,EACjE,KAAM,GAAQ,EAAK,OAAS,EAAI,EAAO,GACvC,IAAK,CACH,CACE,KAAM,qBACN,MAAO,CAAE,OAAQ,CAAC,CAAE,OAAQ,EAAG,OAAQ,MAAO,MAAO,CAAC,EAAG,aAAc,EAAS,WAAY,CAAU,CACxG,CACF,EACA,WAAY,IACd,CACF,EAEM,EAAa,CACjB,aAAc,EAAoB,CAAoB,EACtD,MAAO,EAAG,QAAU,EAAI,OAAY,EAAG,MACvC,mBAAoB,EAAG,oBAAoB,SAAS,EACpD,QAAS,CACP,OAAQ,EAAG,OACX,YAAa,EAAG,YAChB,gBAAiB,EAAG,gBAAkB,KAAK,SAAS,CACtD,EACA,UAAW,EAAG,UAAY,GAAG,SAAS,EACtC,GAAI,CACN,EAGM,EAAe,KAAK,MAAM,MAAO,EAAY,IAAI,mBAAmB,CAAU,CAAC,EAG/E,EACH,EAAqB,SAAY,EAAqB,OAAO,aAAa,IAAI,aACjF,GAAI,CAAC,EAAQ,MAAU,MAAM,yBAAyB,EAGtD,IAAM,EADS,OAAO,KAAK,EAAQ,QAAQ,EAClB,SAAS,KAAK,EAGvC,OAAO,EAAQ,qBAAqB,CAAS,EAGmB",
8
- "debugId": "1EFC9904932EBBBF64756E2164756E21",
8
+ "debugId": "DAAC2DDF369E0E7964756E2164756E21",
9
9
  "names": []
10
10
  }