/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/@cardano-foundation/ledgerjs-hw-app-cardano@7.1.4/dist/Ada.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,i,r){void 0===r&&(r=i);var s=Object.getOwnPropertyDescriptor(t,i);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,r,s)}:function(e,t,i,r){void 0===r&&(r=i),e[r]=t[i]}),__exportStar=this&&this.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||__createBinding(t,e,i)},__awaiter=this&&this.__awaiter||function(e,t,i,r){return new(i||(i=Promise))((function(s,n){function a(e){try{d(r.next(e))}catch(e){n(e)}}function o(e){try{d(r.throw(e))}catch(e){n(e)}}function d(e){var t;e.done?s(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(a,o)}d((r=r.apply(e,t||[])).next())}))},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Networks=exports.utils=exports.Ada=void 0;const errors_1=require("./errors"),invalidDataReason_1=require("./errors/invalidDataReason"),deriveAddress_1=require("./interactions/deriveAddress"),deriveNativeScriptHash_1=require("./interactions/deriveNativeScriptHash"),getExtendedPublicKeys_1=require("./interactions/getExtendedPublicKeys"),getSerial_1=require("./interactions/getSerial"),getVersion_1=require("./interactions/getVersion"),runTests_1=require("./interactions/runTests"),showAddress_1=require("./interactions/showAddress"),signCVote_1=require("./interactions/signCVote"),signOperationalCertificate_1=require("./interactions/signOperationalCertificate"),signMessage_1=require("./interactions/signMessage"),messageData_1=require("./parsing/messageData"),signTx_1=require("./interactions/signTx"),address_1=require("./parsing/address"),cVote_1=require("./parsing/cVote"),nativeScript_1=require("./parsing/nativeScript"),operationalCertificate_1=require("./parsing/operationalCertificate"),transaction_1=require("./parsing/transaction"),utils_1=__importDefault(require("./utils"));exports.utils=utils_1.default;const assert_1=require("./utils/assert"),parse_1=require("./utils/parse");__exportStar(require("./errors"),exports),__exportStar(require("./types/public"),exports);const CLA=215;function wrapConvertDeviceStatusError(e){return(...t)=>__awaiter(this,void 0,void 0,(function*(){try{return yield e(...t)}catch(e){if(e&&"object"==typeof e&&"statusCode"in e&&"number"==typeof e.statusCode)throw new errors_1.DeviceStatusError(e.statusCode);throw e}}))}function wrapRetryStillInCall(e){return(...t)=>__awaiter(this,void 0,void 0,(function*(){try{return yield e(...t)}catch(i){if(i&&i.statusCode&&i.statusCode===errors_1.DeviceStatusCodes.ERR_STILL_IN_CALL)return yield e(...t);throw i}}))}function interact(e,t){return __awaiter(this,void 0,void 0,(function*(){let i=e.next(),r=!0;for(;!i.done;){const s=i.value,n=r?yield wrapRetryStillInCall(t)(s):yield t(s);r=!1,i=e.next(n)}return i.value}))}class Ada{constructor(e,t="ADA"){this.transport=e;this.transport.decorateAppAPIMethods(this,["getVersion","getSerial","getExtendedPublicKeys","signTransaction","deriveAddress","showAddress","deriveNativeScriptHash"],t),this._send=e=>__awaiter(this,void 0,void 0,(function*(){if(e.data.length>255)throw new Error("APDU too large, likely a bug");let t=yield wrapConvertDeviceStatusError(this.transport.send)(215,e.ins,e.p1,e.p2,e.data);return t=utils_1.default.stripRetcodeFromResponse(t),null!=e.expectedResponseLength&&(0,assert_1.assert)(t.length===e.expectedResponseLength,`unexpected response length: ${t.length} instead of ${e.expectedResponseLength}`),t}))}getVersion(){return __awaiter(this,void 0,void 0,(function*(){const e=yield interact(this._getVersion(),this._send);return{version:e,compatibility:(0,getVersion_1.getCompatibility)(e)}}))}*_getVersion(){return yield*(0,getVersion_1.getVersion)()}getSerial(){return __awaiter(this,void 0,void 0,(function*(){return interact(this._getSerial(),this._send)}))}*_getSerial(){const e=yield*(0,getVersion_1.getVersion)();return yield*(0,getSerial_1.getSerial)(e)}runTests(){return __awaiter(this,void 0,void 0,(function*(){return interact(this._runTests(),this._send)}))}*_runTests(){const e=yield*(0,getVersion_1.getVersion)();return yield*(0,runTests_1.runTests)(e)}getExtendedPublicKeys({paths:e}){return __awaiter(this,void 0,void 0,(function*(){(0,parse_1.validate)((0,parse_1.isArray)(e),invalidDataReason_1.InvalidDataReason.GET_EXT_PUB_KEY_PATHS_NOT_ARRAY);const t=e.map((e=>(0,parse_1.parseBIP32Path)(e,invalidDataReason_1.InvalidDataReason.INVALID_PATH)));return interact(this._getExtendedPublicKeys(t),this._send)}))}*_getExtendedPublicKeys(e){const t=yield*(0,getVersion_1.getVersion)();return yield*(0,getExtendedPublicKeys_1.getExtendedPublicKeys)(t,e)}getExtendedPublicKey({path:e}){return __awaiter(this,void 0,void 0,(function*(){return(yield this.getExtendedPublicKeys({paths:[e]}))[0]}))}deriveAddress({network:e,address:t}){return __awaiter(this,void 0,void 0,(function*(){const i=(0,address_1.parseAddress)(e,t);return interact(this._deriveAddress(i),this._send)}))}*_deriveAddress(e){const t=yield*(0,getVersion_1.getVersion)();return yield*(0,deriveAddress_1.deriveAddress)(t,e)}showAddress({network:e,address:t}){return __awaiter(this,void 0,void 0,(function*(){const i=(0,address_1.parseAddress)(e,t);return interact(this._showAddress(i),this._send)}))}*_showAddress(e){const t=yield*(0,getVersion_1.getVersion)();return yield*(0,showAddress_1.showAddress)(t,e)}signTransaction(e){return __awaiter(this,void 0,void 0,(function*(){const t=(0,transaction_1.parseSignTransactionRequest)(e);return interact(this._signTx(t),this._send)}))}*_signTx(e){const t=yield*(0,getVersion_1.getVersion)();return yield*(0,signTx_1.signTransaction)(t,e)}signOperationalCertificate(e){return __awaiter(this,void 0,void 0,(function*(){const t=(0,operationalCertificate_1.parseOperationalCertificate)(e);return interact(this._signOperationalCertificate(t),this._send)}))}*_signOperationalCertificate(e){const t=yield*(0,getVersion_1.getVersion)();return yield*(0,signOperationalCertificate_1.signOperationalCertificate)(t,e)}signMessage(e){return __awaiter(this,void 0,void 0,(function*(){const t=(0,messageData_1.parseMessageData)(e);return interact(this._signMessage(t),this._send)}))}*_signMessage(e){const t=yield*(0,getVersion_1.getVersion)();return yield*(0,signMessage_1.signMessage)(t,e)}signCIP36Vote(e){return __awaiter(this,void 0,void 0,(function*(){const t=(0,cVote_1.parseCVote)(e);return interact(this._signCIP36Vote(t),this._send)}))}*_signCIP36Vote(e){const t=yield*(0,getVersion_1.getVersion)();return yield*(0,signCVote_1.signCVote)(t,e)}deriveNativeScriptHash({script:e,displayFormat:t}){return __awaiter(this,void 0,void 0,(function*(){const i=(0,nativeScript_1.parseNativeScript)(e),r=(0,nativeScript_1.parseNativeScriptHashDisplayFormat)(t);return interact(this._deriveNativeScriptHash(i,r),this._send)}))}*_deriveNativeScriptHash(e,t){const i=yield*(0,getVersion_1.getVersion)();return yield*(0,deriveNativeScriptHash_1.deriveNativeScriptHash)(i,e,t)}}exports.Ada=Ada,exports.default=Ada,exports.Networks={Mainnet:{networkId:1,protocolMagic:764824073},Testnet:{networkId:0,protocolMagic:1097911063}};
//# sourceMappingURL=/sm/8873ad5e387c37e97a1c8115ba367e1ee94d0d2090345b7e4344ed731b7f2b8e.map