@oceanprotocol/lib 5.1.2 → 5.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- import e from"@oceanprotocol/contracts/addresses/address.json";import t from"fs";import{parseUnits as r,formatUnits as n,ethers as o,EventLog as i,toUtf8Bytes as s,keccak256 as a,hexlify as c,toUtf8String as u,getAddress as l,parseEther as m,getBytes as h,toBeHex as d}from"ethers";import*as f from"@oasisprotocol/sapphire-paratime";import v from"bignumber.js";import g from"decimal.js";import p from"@oceanprotocol/contracts/artifacts/contracts/pools/dispenser/Dispenser.sol/Dispenser.json";import P from"@oceanprotocol/contracts/artifacts/contracts/pools/fixedRate/FixedRateExchange.sol/FixedRateExchange.json";import y from"@oceanprotocol/contracts/artifacts/contracts/pools/FactoryRouter.sol/FactoryRouter.json";import w from"@oceanprotocol/contracts/artifacts/contracts/templates/ERC20Template.sol/ERC20Template.json";import b from"@oceanprotocol/contracts/artifacts/contracts/templates/ERC20TemplateEnterprise.sol/ERC20TemplateEnterprise.json";import k from"@oceanprotocol/contracts/artifacts/contracts/templates/ERC721Template.sol/ERC721Template.json";import T from"@oceanprotocol/contracts/artifacts/contracts/ERC721Factory.sol/ERC721Factory.json";import S from"@oceanprotocol/contracts/artifacts/contracts/interfaces/IERC20Template.sol/IERC20Template.json";import A from"@oceanprotocol/contracts/artifacts/contracts/templates/ERC20Template4.sol/ERC20Template4.json";import E from"@oceanprotocol/contracts/artifacts/contracts/accesslists/AccessList.sol/AccessList.json";import F from"@oceanprotocol/contracts/artifacts/contracts/accesslists/AccessListFactory.sol/AccessListFactory.json";import C from"@oceanprotocol/contracts/artifacts/contracts/escrow/Escrow.sol/Escrow.json";import j from"@oceanprotocol/contracts/artifacts/contracts/communityFee/EnterpriseFeeCollector.sol/EnterpriseFeeCollector.json";import x from"cross-fetch";import{DDOManager as D}from"@oceanprotocol/ddo-js";import M from"jsonwebtoken";import O from"crypto-js/sha256.js";import{createHash as N}from"crypto";var R,U;!function(e){e.URL="url",e.IPFS="ipfs",e.ARWEAVE="arweave"}(R||(R={})),function(e){e.AES="AES",e.ECIES="ECIES"}(U||(U={}));var I,L=function(){this.nodeUri=void 0,this.providerAddress=void 0,this.oceanNodeUri=void 0,this.web3Provider=void 0,this.oceanTokenAddress=void 0,this.nftFactoryAddress=void 0,this.routerFactoryAddress=void 0,this.datatokensABI=void 0,this.fixedRateExchangeAddress=void 0,this.fixedRateExchangeAddressABI=void 0,this.dispenserAddress=void 0,this.dispenserABI=void 0,this.opfCommunityFeeCollector=void 0,this.EnterpriseFeeCollector=void 0,this.sideStakingAddress=void 0,this.startBlock=void 0,this.verbose=void 0,this.authMessage=void 0,this.authTokenExpiration=void 0,this.parityUri=void 0,this.threshold=void 0,this.chainId=void 0,this.network=void 0,this.explorerUri=void 0,this.oceanTokenSymbol=void 0,this.transactionBlockTimeout=void 0,this.transactionConfirmationBlocks=void 0,this.transactionPollingTimeout=void 0,this.gasFeeMultiplier=void 0,this.sdk=void 0,this.accessListFactory=void 0,this.escrow=void 0};function G(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function _(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(r)return(r=r.call(e)).next.bind(r);if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return G(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?G(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function z(){return z=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},z.apply(null,arguments)}function B(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,q(e,t)}function q(e,t){return q=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},q(e,t)}!function(e){e[e.None=-1]="None",e[e.Error=0]="Error",e[e.Warn=1]="Warn",e[e.Log=2]="Log",e[e.Verbose=3]="Verbose"}(I||(I={}));var J=/*#__PURE__*/function(){function e(e){this.logLevel=void 0,this.logLevel=e,this.logLevel=e||I.Error}var t=e.prototype;return t.setLevel=function(e){this.logLevel=e},t.bypass=function(){this.dispatch.apply(this,["log",-Infinity].concat([].slice.call(arguments)))},t.debug=function(){this.dispatch.apply(this,["debug",I.Verbose].concat([].slice.call(arguments)))},t.log=function(){this.dispatch.apply(this,["log",I.Log].concat([].slice.call(arguments)))},t.warn=function(){this.dispatch.apply(this,["warn",I.Warn].concat([].slice.call(arguments)))},t.error=function(){this.dispatch.apply(this,["error",I.Error].concat([].slice.call(arguments)))},t.dispatch=function(e,t){var r;this.logLevel>=t&&(r=console)[e].apply(r,[].slice.call(arguments,2))},e}(),W=new J,V={chainId:null,network:"unknown",nodeUri:"http://127.0.0.1:8545",oceanNodeUri:"http://127.0.0.1:8001",explorerUri:null,oceanTokenAddress:null,oceanTokenSymbol:"OCEAN",fixedRateExchangeAddress:null,dispenserAddress:null,startBlock:0,transactionBlockTimeout:50,transactionConfirmationBlocks:1,transactionPollingTimeout:750,gasFeeMultiplier:1},H=[z({},V),z({},V,{chainId:8996,network:"development",oceanNodeUri:"http://127.0.0.1:8001",sdk:"evm"}),z({},V,{chainId:11155111,network:"sepolia",nodeUri:"https://sepolia.infura.io/v3",explorerUri:"https://sepolia.etherscan.io",gasFeeMultiplier:1.1,sdk:"evm"}),z({},V,{chainId:1,network:"mainnet",nodeUri:"https://mainnet.infura.io/v3",explorerUri:"https://etherscan.io",startBlock:11105459,transactionBlockTimeout:150,transactionConfirmationBlocks:5,transactionPollingTimeout:1750,gasFeeMultiplier:1.05,sdk:"evm"}),z({},V,{chainId:8453,network:"base",nodeUri:"https://mainnet.base.org",explorerUri:"https://etherscan.io",startBlock:30562198,transactionBlockTimeout:150,transactionConfirmationBlocks:5,transactionPollingTimeout:1750,gasFeeMultiplier:1.05,sdk:"evm"}),z({},V,{chainId:137,network:"polygon",nodeUri:"https://polygon-mainnet.infura.io/v3",explorerUri:"https://polygonscan.com",oceanTokenSymbol:"mOCEAN",gasFeeMultiplier:1.6,sdk:"evm"}),z({},V,{chainId:2021e3,network:"gaiaxtestnet",nodeUri:"https://rpc.gaiaxtestnet.oceanprotocol.com",explorerUri:"https://blockscout.gaiaxtestnet.oceanprotocol.com",sdk:"evm"}),z({},V,{chainId:80001,network:"mumbai",nodeUri:"https://polygon-mumbai.infura.io/v3",explorerUri:"https://mumbai.polygonscan.com",gasFeeMultiplier:1.1,sdk:"evm"}),z({},V,{chainId:56,network:"bsc",nodeUri:"https://bsc-dataseed.binance.org",explorerUri:"https://bscscan.com/",gasFeeMultiplier:1.05,sdk:"evm"}),z({},V,{chainId:246,network:"energyweb",nodeUri:"https://rpc.energyweb.org",explorerUri:"https://explorer.energyweb.org",gasFeeMultiplier:1.05,sdk:"evm"}),z({},V,{chainId:1285,network:"moonriver",nodeUri:"https://moonriver.api.onfinality.io/public",explorerUri:"https://moonriver.moonscan.io/",gasFeeMultiplier:1.05,sdk:"evm"}),z({},V,{chainId:100,network:"gen-x-testnet",nodeUri:"https://rpc.genx.minimal-gaia-x.eu",explorerUri:"https://explorer.genx.minimal-gaia-x.eu/",gasFeeMultiplier:1,sdk:"evm"}),z({},V,{chainId:10,network:"optimism",nodeUri:"https://mainnet.optimism.io",explorerUri:"https://optimistic.etherscan.io/",gasFeeMultiplier:1.1,sdk:"evm"}),z({},V,{chainId:11155420,network:"optimism_sepolia",nodeUri:"https://sepolia.optimism.io",explorerUri:"https://sepolia-optimism.etherscan.io/",gasFeeMultiplier:1.1,sdk:"evm"}),z({},V,{chainId:23294,network:"oasis_sapphire",nodeUri:"https://sapphire.oasis.io",explorerUri:"https://explorer.oasis.io/mainnet/sapphire/",gasFeeMultiplier:1,sdk:"oasis"}),z({},V,{chainId:23295,network:"oasis_sapphire_testnet",nodeUri:"https://testnet.sapphire.oasis.dev",explorerUri:"https://explorer.oasis.io/testnet/sapphire/",gasFeeMultiplier:1,sdk:"oasis"}),z({},V,{chainId:32456,network:"pontus-x-devnet",nodeUri:"https://rpc.dev.pontus-x.eu",explorerUri:"https://explorer.dev.pontus-x.eu/testnet/pontusx",sdk:"evm"})],Z=[23294,23295],X=/*#__PURE__*/function(){function r(){}var n=r.prototype;return n.getAddressesFromEnv=function(t,r){var n,o=function(){return process.env.NODE_URL?{oceanNodeUri:process.env.NODE_URL}:{}};if(r&&r[t]){var i=r[t];n=z({nftFactoryAddress:i.ERC721Factory,opfCommunityFeeCollector:i.OPFCommunityFeeCollector,fixedRateExchangeAddress:i.FixedPrice,dispenserAddress:i.Dispenser,oceanTokenAddress:i.Ocean,routerFactoryAddress:i.Router,chainId:i.chainId,startBlock:i.startBlock,accessListFactory:i.AccessListFactory,escrow:i.Escrow,EnterpriseFeeCollector:i.EnterpriseFeeCollector},o())}else if(e[t]){var s=e[t];n=z({nftFactoryAddress:s.ERC721Factory,opfCommunityFeeCollector:s.OPFCommunityFeeCollector,fixedRateExchangeAddress:s.FixedPrice,dispenserAddress:s.Dispenser,oceanTokenAddress:s.Ocean,routerFactoryAddress:s.Router,chainId:s.chainId,startBlock:s.startBlock,accessListFactory:s.AccessListFactory,escrow:s.Escrow,EnterpriseFeeCollector:s.EnterpriseFeeCollector},o())}return n},n.getConfig=function(e,r){var n,o="string"==typeof e?"network":"chainId",i=H.find(function(t){return t[o]===e});if(!i)return W.error("No config found for given network '"+e+"'"),null;try{n=process.env.ADDRESS_FILE?JSON.parse(t.readFileSync(process.env.ADDRESS_FILE,"utf8")):null}catch(e){console.log(e),n=null}var s=this.getAddressesFromEnv(i.network,n);return!s&&Z.includes(i.chainId)&&(s=this.getAddressesFromEnv(i.network.replace("sapph","saph"),n)),"sdk"in i&&null!==i.sdk||(i.sdk=Z.includes(i.chainId)?"oasis":"evm"),s&&"accessListFactory"in s&&(i.accessListFactory=s.accessListFactory),i=z({},i,s),z({},i,{nodeUri:r?i.nodeUri+"/"+r:i.nodeUri})},r}(),K=[{constant:!0,inputs:[],name:"name",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_spender",type:"address"},{name:"_value",type:"uint256"}],name:"approve",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_from",type:"address"},{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{name:"",type:"uint8"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"_owner",type:"address"}],name:"balanceOf",outputs:[{name:"balance",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transfer",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[{name:"_owner",type:"address"},{name:"_spender",type:"address"}],name:"allowance",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{payable:!0,stateMutability:"payable",type:"fallback"},{anonymous:!1,inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Transfer",type:"event"}],$=function(e,t,r,n){try{var o=arguments;return Promise.resolve(t.provider.getNetwork()).then(function(i){var s=i.chainId;return Promise.resolve(t.provider.getFeeData()).then(function(t){var i={};if(t.maxPriorityFeePerGas){var a=t.maxPriorityFeePerGas.toString(),c=t.maxFeePerGas.toString();r>1&&(a=Math.round(Number(t.maxPriorityFeePerGas)*r).toString(),c=Math.round(Number(t.maxFeePerGas)*r).toString()),i={maxPriorityFeePerGas:(Number(s)===se||Number(s)===ie)&&Number(a)<re?re:Number(s)===ae&&Number(a)<ne?ne:Z.includes(Number(s))&&Number(a)<oe?oe:Number(a),maxFeePerGas:(Number(s)===se||Number(s)===ie)&&Number(c)<re?re:Number(s)===ae&&Number(c)<ne?ne:Z.includes(Number(s))&&Number(c)<oe?oe:Number(c)}}else i={gasPrice:t.gasPrice};return i.gasLimit=BigInt(new v(e).plus(20000n).toString()),function(e,t){try{var r=Promise.resolve(n.apply(void 0,[].slice.call(o,4).concat([i]))).then(function(e){return Promise.resolve(e.wait()).then(function(){return e})})}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}(0,function(e){return W.error("Send tx error: ",e),null})})})}catch(e){return Promise.reject(e)}},Q=function(e,t,n,o){try{var i=function(e){return"0"===e&&(e=18),r(n,e).toString()};return Promise.resolve(o?i(o):Promise.resolve(ee(e,t)).then(i))}catch(e){return Promise.reject(e)}},Y=function(e,t,r,o){try{var i=function(e){return"0"===e&&(e=18),n(r,e).toString()};return Promise.resolve(o?i(o):Promise.resolve(ee(e,t)).then(i))}catch(e){return Promise.reject(e)}},ee=function(e,t){try{var r=new o.Contract(t,K,e);return Promise.resolve(r.decimals())}catch(e){return Promise.reject(e)}},te=function(e,t){try{return Promise.resolve(e.provider.getFeeData()).then(function(e){var r=BigInt(e.gasPrice.toString());return t?(r*BigInt(t)).toString(10):r.toString()})}catch(e){return Promise.reject(e)}},re=3e10,ne=4e9,oe=1e10,ie=137,se=80001,ae=11155111;function ce(e,t){return e}function ue(e,t){if(e&&e.logs)return e.logs.filter(function(e){return e instanceof i&&e.eventName===t})[0]}var le=/*#__PURE__*/function(){function e(e,t,r,n){this.signer=void 0,this.config=void 0,this.abi=void 0,this.signer=e,this.config=r||(new X).getConfig(t),this.abi=n||this.getDefaultAbi()}var t=e.prototype;return t.getSignerAccordingSdk=function(){return this.config&&"sdk"in this.config&&"oasis"===this.config.sdk?f.wrap(this.signer):this.signer},t.amountToUnits=function(e,t,r){try{return Promise.resolve(Q(this.signer,e,t,r))}catch(e){return Promise.reject(e)}},t.unitsToAmount=function(e,t,r){try{return Promise.resolve(Y(this.signer,e,t,r))}catch(e){return Promise.reject(e)}},t.getFairGasPrice=function(){try{var e;return Promise.resolve(te(this.signer,null==(e=this.config)?void 0:e.gasFeeMultiplier))}catch(e){return Promise.reject(e)}},t.getContract=function(e,t){if(!e)throw new Error("Contract address is required but not provided");return ce(new o.Contract(e,new o.Interface(JSON.stringify(t||this.abi)),this.signer))},e}(),me=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,r,n,o,i)||this).address=void 0,s.contract=void 0,s.address=t,s.contract=s.getContract(s.address),s}return B(t,e),t}(le),he=/*#__PURE__*/function(e){function t(){return e.apply(this,arguments)||this}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return p.abi},r.status=function(e){try{var t=this;return Promise.resolve(t.contract.status(e)).then(function(e){if(!e)throw new Error("Np dispenser found for the given datatoken address");var r=e.isMinter,n=e.owner,o=e.active;return Promise.resolve(t.unitsToAmount(null,e.maxTokens,18)).then(function(i){return Promise.resolve(t.unitsToAmount(null,e.maxBalance,18)).then(function(s){return Promise.resolve(t.unitsToAmount(null,e.balance,18)).then(function(t){return{active:o,owner:n,isMinter:r,maxTokens:i,maxBalance:s,balance:t,allowedSwapper:e.allowedSwapper}})})})})}catch(e){return Promise.reject(e)}},r.create=function(e,t,r,n,o,i){try{var s=this;return Promise.resolve(s.contract.create.estimateGas(e,s.amountToUnits(null,r,18),s.amountToUnits(null,n,18),t,o)).then(function(a){var c;return i?a:Promise.resolve($(a,s.getSignerAccordingSdk(),null==(c=s.config)?void 0:c.gasFeeMultiplier,s.contract.create,e,s.amountToUnits(null,r,18),s.amountToUnits(null,n,18),t,o))})}catch(e){return Promise.reject(e)}},r.activate=function(e,t,r,n){try{var o=this;return Promise.resolve(o.contract.activate.estimateGas(e,o.amountToUnits(null,t,18),o.amountToUnits(null,r,18))).then(function(i){var s;return n?i:Promise.resolve($(i,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,o.contract.activate,e,o.amountToUnits(null,t,18),o.amountToUnits(null,r,18)))})}catch(e){return Promise.reject(e)}},r.deactivate=function(e,t){try{var r=this;return Promise.resolve(r.contract.deactivate.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.deactivate,e))})}catch(e){return Promise.reject(e)}},r.setAllowedSwapper=function(e,t,r){try{var n=this;return Promise.resolve(n.contract.setAllowedSwapper.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.setAllowedSwapper,e,t))})}catch(e){return Promise.reject(e)}},r.dispense=function(e,t,r,n){void 0===t&&(t="1");try{var o=this;return Promise.resolve(o.contract.dispense.estimateGas(e,o.amountToUnits(null,t,18),r)).then(function(i){var s;return n?i:Promise.resolve($(i,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,o.contract.dispense,e,o.amountToUnits(null,t,18),r))})}catch(e){return Promise.reject(e)}},r.ownerWithdraw=function(e,t){try{var r=this;return Promise.resolve(r.contract.ownerWithdraw.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.ownerWithdraw,e))})}catch(e){return Promise.reject(e)}},r.isDispensable=function(e,t,r,n){void 0===n&&(n="1");try{return Promise.resolve(this.status(e)).then(function(o){return!!o&&!1!==o.active&&Promise.resolve(t.balance(e,r)).then(function(e){return!(new g(e).greaterThanOrEqualTo(o.maxBalance)||new g(String(n)).greaterThan(o.maxTokens)||!new g(o.balance).greaterThanOrEqualTo(n)&&!0!==o.isMinter)})})}catch(e){return Promise.reject(e)}},t}(me),de="0x0000000000000000000000000000000000000000",fe=1e6,ve="115792089237316195423570985008687907853269984665640564039457584007913129639934",ge="Returned error: Method eth_feeHistory not supported.",pe=/*#__PURE__*/function(e){function t(){return e.apply(this,arguments)||this}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return P.abi},r.generateExchangeId=function(e,t){try{return Promise.resolve(this.contract.generateExchangeId(e,t))}catch(e){return Promise.reject(e)}},r.buyDatatokens=function(e,t,r,n,o,i){void 0===n&&(n=de),void 0===o&&(o="0");try{var s=this;return Promise.resolve(s.getExchange(e)).then(function(a){return Promise.resolve(s.amountToUnits(null,o,18)).then(function(o){return Promise.resolve(s.amountToUnits(a.datatoken,t,Number(a.dtDecimals))).then(function(t){return Promise.resolve(s.amountToUnits(a.baseToken,r,Number(a.btDecimals))).then(function(r){return Promise.resolve(s.contract.buyDT.estimateGas(e,t,r,n,o)).then(function(a){var c;return i?a:Promise.resolve($(a,s.getSignerAccordingSdk(),null==(c=s.config)?void 0:c.gasFeeMultiplier,s.contract.buyDT,e,t,r,n,o))})})})})})}catch(e){return Promise.reject(e)}},r.sellDatatokens=function(e,t,r,n,o,i){void 0===n&&(n=de),void 0===o&&(o="0");try{var s=this;return Promise.resolve(s.getExchange(e)).then(function(a){return Promise.resolve(s.amountToUnits(null,o,18)).then(function(o){return Promise.resolve(s.amountToUnits(a.datatoken,t,Number(a.dtDecimals))).then(function(t){return Promise.resolve(s.amountToUnits(a.baseToken,r,Number(a.btDecimals))).then(function(r){return Promise.resolve(s.contract.sellDT.estimateGas(e,t,r,n,o)).then(function(a){var c;return i?a:Promise.resolve($(a,s.getSignerAccordingSdk(),null==(c=s.config)?void 0:c.gasFeeMultiplier,s.contract.sellDT,e,t,r,n,o))})})})})})}catch(e){return Promise.reject(e)}},r.getNumberOfExchanges=function(){try{return Promise.resolve(this.contract.getNumberOfExchanges()).then(Number)}catch(e){return Promise.reject(e)}},r.setRate=function(e,t,r){try{var n=this,o=n.contract.setRate,i=o.estimateGas;return Promise.resolve(n.amountToUnits(null,t,18)).then(function(s){return Promise.resolve(i.call(o,e,s)).then(function(o){var i;if(r)return o;var s=n.contract.setRate,a=null==(i=n.config)?void 0:i.gasFeeMultiplier,c=n.getSignerAccordingSdk();return Promise.resolve(n.amountToUnits(null,t,18)).then(function(t){return Promise.resolve($(o,c,a,s,e,t))})})})}catch(e){return Promise.reject(e)}},r.setAllowedSwapper=function(e,t,r){try{var n=this;return Promise.resolve(n.contract.setAllowedSwapper.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.setAllowedSwapper,e,t))})}catch(e){return Promise.reject(e)}},r.activate=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?!0===n.active?null:Promise.resolve(r.contract.toggleExchangeState.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.toggleExchangeState,e))}):null})}catch(e){return Promise.reject(e)}},r.deactivate=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?!1===n.active?null:Promise.resolve(r.contract.toggleExchangeState.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.toggleExchangeState,e))}):null})}catch(e){return Promise.reject(e)}},r.getRate=function(e){try{var t=this;return Promise.resolve(t.contract.getRate(e)).then(function(e){return Promise.resolve(t.unitsToAmount(null,e,18))})}catch(e){return Promise.reject(e)}},r.getDatatokenSupply=function(e){try{var t=this;return Promise.resolve(t.contract.getDTSupply(e)).then(function(r){return Promise.resolve(t.getExchange(e)).then(function(e){return Promise.resolve(t.unitsToAmount(e.datatoken,r,Number(e.dtDecimals)))})})}catch(e){return Promise.reject(e)}},r.getBasetokenSupply=function(e){try{var t=this;return Promise.resolve(t.contract.getBTSupply(e)).then(function(r){return Promise.resolve(t.getExchange(e)).then(function(e){return Promise.resolve(t.unitsToAmount(e.baseToken,r,Number(e.btDecimals)))})})}catch(e){return Promise.reject(e)}},r.getAllowedSwapper=function(e){try{return Promise.resolve(this.contract.getAllowedSwapper(e))}catch(e){return Promise.reject(e)}},r.calcBaseInGivenDatatokensOut=function(e,t,r){void 0===r&&(r="0");try{var n=this;return Promise.resolve(n.getExchange(e)).then(function(o){var i=n.contract,s=i.calcBaseInGivenOutDT;return Promise.resolve(n.amountToUnits(o.datatoken,t,Number(o.dtDecimals))).then(function(t){return Promise.resolve(n.amountToUnits(null,r,18)).then(function(r){return Promise.resolve(s.call(i,e,t,r)).then(function(e){return Promise.resolve(n.unitsToAmount(o.baseToken,e.baseTokenAmount,Number(o.btDecimals))).then(function(t){return Promise.resolve(n.unitsToAmount(o.baseToken,e.publishMarketFeeAmount,Number(o.btDecimals))).then(function(r){return Promise.resolve(n.unitsToAmount(o.baseToken,e.oceanFeeAmount,Number(o.btDecimals))).then(function(i){return Promise.resolve(n.unitsToAmount(o.baseToken,e.consumeMarketFeeAmount,Number(o.btDecimals))).then(function(e){return{baseTokenAmount:t,marketFeeAmount:r,oceanFeeAmount:i,consumeMarketFeeAmount:e}})})})})})})})})}catch(e){return Promise.reject(e)}},r.getAmountBasetokensOut=function(e,t,r){void 0===r&&(r="0");try{var n=this;return Promise.resolve(n.getExchange(e)).then(function(o){var i=n.contract,s=i.calcBaseOutGivenInDT;return Promise.resolve(n.amountToUnits(o.datatoken,t,Number(o.dtDecimals))).then(function(t){return Promise.resolve(n.amountToUnits(null,r,18)).then(function(r){return Promise.resolve(s.call(i,e,t,r)).then(function(e){return Promise.resolve(n.unitsToAmount(o.baseToken,e[0],Number(o.btDecimals)))})})})})}catch(e){return Promise.reject(e)}},r.getExchange=function(e){try{var t=this;return Promise.resolve(t.contract.getExchange(e)).then(function(r){var n=r.btDecimals.toString(),o=r.dtDecimals.toString(),i=r.allowedSwapper,s=r.exchangeOwner,a=r.withMint,c=r.baseToken,u=r.datatoken,l=r.active;return Promise.resolve(t.unitsToAmount(r.datatoken,r.dtBalance,Number(r.dtDecimals))).then(function(m){return Promise.resolve(t.unitsToAmount(r.baseToken,r.btBalance,Number(r.btDecimals))).then(function(h){return Promise.resolve(t.unitsToAmount(r.datatoken,r.dtSupply,Number(r.dtDecimals))).then(function(d){return Promise.resolve(t.unitsToAmount(r.baseToken,r.btSupply,Number(r.btDecimals))).then(function(f){return Promise.resolve(t.unitsToAmount(null,r.fixedRate,18)).then(function(t){return{active:l,datatoken:u,baseToken:c,withMint:a,exchangeOwner:s,allowedSwapper:i,dtDecimals:o,btDecimals:n,dtBalance:m,btBalance:h,dtSupply:d,btSupply:f,fixedRate:t,exchangeId:e}})})})})})})}catch(e){return Promise.reject(e)}},r.getFeesInfo=function(e){try{var t=this;return Promise.resolve(t.contract.getFeesInfo(e)).then(function(r){return Promise.resolve(t.getExchange(e)).then(function(n){return Promise.resolve(t.unitsToAmount(null,r.opcFee.toString(),18)).then(function(o){return Promise.resolve(t.unitsToAmount(null,r.marketFee.toString(),18)).then(function(i){var s=r.marketFeeCollector;return Promise.resolve(t.unitsToAmount(n.baseToken,r.marketFeeAvailable,Number(n.btDecimals))).then(function(a){return Promise.resolve(t.unitsToAmount(n.baseToken,r.oceanFeeAvailable,Number(n.btDecimals))).then(function(t){return{opcFee:o,marketFee:i,marketFeeCollector:s,marketFeeAvailable:a,oceanFeeAvailable:t,exchangeId:e}})})})})})})}catch(e){return Promise.reject(e)}},r.getExchanges=function(){try{return Promise.resolve(this.contract.getExchanges())}catch(e){return Promise.reject(e)}},r.isActive=function(e){try{return Promise.resolve(this.contract.isActive(e))}catch(e){return Promise.reject(e)}},r.activateMint=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?!0===n.withMint?null:Promise.resolve(r.contract.toggleMintState.estimateGas(e,!0)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.toggleMintState,e,!0))}):null})}catch(e){return Promise.reject(e)}},r.deactivateMint=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?!1===n.withMint?null:Promise.resolve(r.contract.toggleMintState.estimateGas(e,!1)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.toggleMintState,e,!1))}):null})}catch(e){return Promise.reject(e)}},r.collectBasetokens=function(e,t,r){try{var n=this;return Promise.resolve(n.getExchange(e)).then(function(o){return o?Promise.resolve(n.contract.getExchange(e)).then(function(o){return Promise.resolve(n.amountToUnits(o.baseToken,t,Number(o.btDecimals))).then(function(t){return Promise.resolve(n.contract.collectBT.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.collectBT,e,t))})})}):null})}catch(e){return Promise.reject(e)}},r.collectDatatokens=function(e,t,r){try{var n=this;return Promise.resolve(n.getExchange(e)).then(function(o){return o?Promise.resolve(n.contract.getExchange(e)).then(function(o){return Promise.resolve(n.amountToUnits(o.datatoken,t,Number(o.dtDecimals))).then(function(t){return Promise.resolve(n.contract.collectDT.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.collectDT,e,t))})})}):null})}catch(e){return Promise.reject(e)}},r.collectMarketFee=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?Promise.resolve(r.contract.collectMarketFee.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.collectMarketFee,e))}):null})}catch(e){return Promise.reject(e)}},r.collectOceanFee=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?Promise.resolve(r.contract.collectOceanFee.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.collectOceanFee,e))}):null})}catch(e){return Promise.reject(e)}},r.getOPCCollector=function(){try{return Promise.resolve(this.contract.opcCollector())}catch(e){return Promise.reject(e)}},r.getRouter=function(){try{return Promise.resolve(this.contract.router())}catch(e){return Promise.reject(e)}},r.getExchangeOwner=function(e){try{return Promise.resolve(this.getExchange(e)).then(function(e){return e.exchangeOwner})}catch(e){return Promise.reject(e)}},r.updateMarketFee=function(e,t,r){try{var n=this,o=n.contract.updateMarketFee,i=o.estimateGas;return Promise.resolve(n.amountToUnits(null,t,18)).then(function(s){return Promise.resolve(i.call(o,e,s)).then(function(o){var i;if(r)return o;var s=n.contract.updateMarketFee,a=null==(i=n.config)?void 0:i.gasFeeMultiplier,c=n.getSignerAccordingSdk();return Promise.resolve(n.amountToUnits(null,t,18)).then(function(t){return Promise.resolve($(o,c,a,s,e,t))})})})}catch(e){return Promise.reject(e)}},r.updateMarketFeeCollector=function(e,t,r){try{var n=this;return Promise.resolve(n.contract.updateMarketFeeCollector.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.updateMarketFeeCollector,e,t))})}catch(e){return Promise.reject(e)}},t}(me),Pe=/*#__PURE__*/function(e){function t(){return e.apply(this,arguments)||this}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return y.abi},r.buyDatatokenBatch=function(e,t){try{var r=this;return Promise.resolve(r.contract.buyDTBatch.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.buyDTBatch,e))})}catch(e){return Promise.reject(e)}},r.isApprovedToken=function(e){try{return Promise.resolve(this.contract.isApprovedToken(e))}catch(e){return Promise.reject(e)}},r.isFixedPrice=function(e){try{return Promise.resolve(this.contract.isFixedRateContract(e))}catch(e){return Promise.reject(e)}},r.getOwner=function(){try{return Promise.resolve(this.contract.routerOwner())}catch(e){return Promise.reject(e)}},r.getNFTFactory=function(){try{return Promise.resolve(this.contract.factory())}catch(e){return Promise.reject(e)}},r.addApprovedToken=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.addApprovedToken.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.addApprovedToken,t))})})}catch(e){return Promise.reject(e)}},r.removeApprovedToken=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.removeApprovedToken.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.removeApprovedToken,t))})})}catch(e){return Promise.reject(e)}},r.addFixedRateContract=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.addFixedRateContract.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.addFixedRateContract,t))})})}catch(e){return Promise.reject(e)}},r.removeFixedRateContract=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.removeFixedRateContract.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.removeFixedRateContract,t))})})}catch(e){return Promise.reject(e)}},r.addDispenserContract=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.addDispenserContract.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.addDispenserContract,t))})})}catch(e){return Promise.reject(e)}},r.removeDispenserContract=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.removeDispenserContract.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.removeDispenserContract,t))})})}catch(e){return Promise.reject(e)}},r.getOPCFee=function(e){try{return Promise.resolve(this.contract.getOPCFee(e)).then(Number)}catch(e){return Promise.reject(e)}},r.getCurrentOPCFee=function(){try{return Promise.resolve(this.contract.swapOceanFee()).then(Number)}catch(e){return Promise.reject(e)}},r.updateOPCFee=function(e,t,r,n,o,i){try{var s=this;return Promise.resolve(s.getOwner()).then(function(a){if(a!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(s.contract.updateOPCFee.estimateGas(t,r,n,o)).then(function(e){var a;return i?e:Promise.resolve($(e,s.getSignerAccordingSdk(),null==(a=s.config)?void 0:a.gasFeeMultiplier,s.contract.updateOPCFee,t,r,n,o))})})}catch(e){return Promise.reject(e)}},t}(me),ye={nouns:["Crab","Fish","Seal","Octopus","Shark","Seahorse","Walrus","Starfish","Whale","Orca","Penguin","Jellyfish","Squid","Lobster","Pelican","Shrimp","Oyster","Clam","Seagull","Dolphin","Shell","Cormorant","Otter","Anemone","Turtle","Coral","Ray","Barracuda","Krill","Anchovy","Angelfish","Barnacle","Clownfish","Cod","Cuttlefish","Eel","Fugu","Herring","Haddock","Ling","Mackerel","Manatee","Narwhal","Nautilus","Plankton","Porpoise","Prawn","Pufferfish","Swordfish","Tuna"],adjectives:["adamant","adroit","amatory","ambitious","amused","animistic","antic","arcadian","artistic","astonishing","astounding","baleful","bellicose","bilious","blissful","boorish","brave","breathtaking","brilliant","calamitous","caustic","cerulean","clever","charming","comely","competent","concomitant","confident","contumacious","corpulent","crapulous","creative","dazzling","dedicated","defamatory","delighted","delightful","determined","didactic","dilatory","dowdy","efficacious","effulgent","egregious","empowered","endemic","enthusiastic","equanimous","exceptional","execrable","fabulous","fantastic","fastidious","feckless","fecund","friable","fulsome","garrulous","generous","gentle","guileless","gustatory","heuristic","histrionic","hubristic","incendiary","incredible","insidious","insolent","inspired","intransigent","inveterate","invidious","invigorated","irksome","jejune","juicy","jocular","joyful","judicious","kind","lachrymose","limpid","loquacious","lovely","luminous","mannered","marvelous","mendacious","meretricious","minatory","mordant","motivated","munificent","nefarious","noxious","obtuse","optimistic","parsimonious","pendulous","pernicious","pervasive","petulant","passionate","phenomenal","platitudinous","pleasant","powerful","precipitate","propitious","puckish","querulous","quiescent","rebarbative","recalcitant","redolent","rhadamanthine","risible","ruminative","sagacious","salubrious","sartorial","sclerotic","serpentine","smart","spasmodic","strident","stunning","stupendous","taciturn","tactful","tasty","tenacious","tremendous","tremulous","trenchant","turbulent","turgid","ubiquitous","uxorious","verdant","vibrant","voluble","voracious","wheedling","withering","wonderful","zealous"]};function we(e){var t=e||ye,r=Math.floor(Math.random()*t.adjectives.length),n=Math.floor(Math.random()*t.nouns.length),o=Math.floor(100*Math.random()),i=t.adjectives[r].replace(/^\w/,function(e){return e.toUpperCase()}),s=t.nouns[n].replace(/^\w/,function(e){return e.toUpperCase()});return{name:i+" "+s+" Token",symbol:(i.substring(0,3)+s.substring(0,3)).toUpperCase()+"-"+o}}function be(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}var ke=/*#__PURE__*/function(e){function t(){return e.apply(this,arguments)||this}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return T.abi},r.createNFT=function(e,t){try{var r=this;if(e.templateIndex||(e.templateIndex=1),!e.name||!e.symbol){var n=we(),o=n.symbol;e.name=n.name,e.symbol=o}var i=e.templateIndex;return Promise.resolve(r.getCurrentNFTTemplateCount()).then(function(n){if(i>n)throw new Error("Template index doesnt exist");if(0===e.templateIndex)throw new Error("Template index cannot be ZERO");return Promise.resolve(r.getNFTTemplate(e.templateIndex)).then(function(n){if(!1===n.isActive)throw new Error("Template is not active");return Promise.resolve(r.contract.deployERC721Contract.estimateGas(e.name,e.symbol,e.templateIndex,de,de,e.tokenURI,e.transferable,e.owner)).then(function(n){return t?n:be(function(){var t;return Promise.resolve($(n,r.getSignerAccordingSdk(),null==(t=r.config)?void 0:t.gasFeeMultiplier,r.contract.deployERC721Contract,e.name,e.symbol,e.templateIndex,de,de,e.tokenURI,e.transferable,e.owner)).then(function(e){if(!e){var t="Tx for deploying new NFT contract does not exist or status is not successful.";throw console.error(t),t}return Promise.resolve(e.wait()).then(function(e){return ue(e,"NFTCreated").args[0]})})},function(e){console.error("Creation of NFT failed: "+e)})})})})}catch(e){return Promise.reject(e)}},r.getCurrentNFTCount=function(){try{return Promise.resolve(this.contract.getCurrentNFTCount()).then(Number)}catch(e){return Promise.reject(e)}},r.getCurrentTokenCount=function(){try{return Promise.resolve(this.contract.getCurrentTokenCount()).then(Number)}catch(e){return Promise.reject(e)}},r.getOwner=function(){try{return Promise.resolve(this.contract.owner())}catch(e){return Promise.reject(e)}},r.getCurrentNFTTemplateCount=function(){try{return Promise.resolve(this.contract.getCurrentNFTTemplateCount()).then(Number)}catch(e){return Promise.reject(e)}},r.getCurrentTokenTemplateCount=function(){try{return Promise.resolve(this.contract.getCurrentTemplateCount()).then(Number)}catch(e){return Promise.reject(e)}},r.getNFTTemplate=function(e){try{var t=this;return Promise.resolve(t.getCurrentNFTTemplateCount()).then(function(r){if(e>r)throw new Error("Template index doesnt exist");if(0===e)throw new Error("Template index cannot be ZERO");return Promise.resolve(t.contract.getNFTTemplate(e))})}catch(e){return Promise.reject(e)}},r.getTokenTemplate=function(e){try{return Promise.resolve(this.contract.getTokenTemplate(e))}catch(e){return Promise.reject(e)}},r.checkDatatoken=function(e){try{return Promise.resolve(this.contract.erc20List(e))}catch(e){return Promise.reject(e)}},r.checkNFT=function(e){try{return Promise.resolve(this.contract.erc721List(e))}catch(e){return Promise.reject(e)}},r.addNFTTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");if(t===de)throw new Error("Template cannot be ZERO address");return Promise.resolve(n.contract.add721TokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.add721TokenTemplate,t))})})}catch(e){return Promise.reject(e)}},r.disableNFTTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");return Promise.resolve(n.getCurrentNFTTemplateCount()).then(function(e){if(t>e)throw new Error("Template index doesnt exist");if(0===t)throw new Error("Template index cannot be ZERO");return Promise.resolve(n.contract.disable721TokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.disable721TokenTemplate,t))})})})}catch(e){return Promise.reject(e)}},r.reactivateNFTTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");return Promise.resolve(n.getCurrentNFTTemplateCount()).then(function(e){if(t>e)throw new Error("Template index doesnt exist");if(0===t)throw new Error("Template index cannot be ZERO");return Promise.resolve(n.contract.reactivate721TokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.reactivate721TokenTemplate,t))})})})}catch(e){return Promise.reject(e)}},r.addTokenTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");if(t===de)throw new Error("Template cannot be address ZERO");return Promise.resolve(n.contract.addTokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.addTokenTemplate,t))})})}catch(e){return Promise.reject(e)}},r.disableTokenTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");return Promise.resolve(n.getCurrentTokenTemplateCount()).then(function(e){if(t>e)throw new Error("Template index doesnt exist");if(0===t)throw new Error("Template index cannot be ZERO");return Promise.resolve(n.getTokenTemplate(t)).then(function(e){if(!1===e.isActive)throw new Error("Template is already disabled");return Promise.resolve(n.contract.disableTokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.disableTokenTemplate,t))})})})})}catch(e){return Promise.reject(e)}},r.reactivateTokenTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");return Promise.resolve(n.getCurrentTokenTemplateCount()).then(function(e){if(t>e)throw new Error("Template index doesnt exist");if(0===t)throw new Error("Template index cannot be ZERO");return Promise.resolve(n.getTokenTemplate(t)).then(function(e){if(!0===e.isActive)throw new Error("Template is already active");return Promise.resolve(n.contract.reactivateTokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.reactivateTokenTemplate,t))})})})})}catch(e){return Promise.reject(e)}},r.startMultipleTokenOrder=function(e,t){try{var r=this;if(e.length>50)throw new Error("Too many orders");return Promise.resolve(r.contract.startMultipleTokenOrder.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.startMultipleTokenOrder,e))})}catch(e){return Promise.reject(e)}},r.createNftWithDatatoken=function(e,t,r){try{var n=this;return Promise.resolve(n.getErcCreationParams(t)).then(function(t){return Promise.resolve(n.contract.createNftWithErc20.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.createNftWithErc20,e,t))})})}catch(e){return Promise.reject(e)}},r.createNftWithDatatokenWithFixedRate=function(e,t,r,n){try{var o=this;return Promise.resolve(o.getErcCreationParams(t)).then(function(t){return Promise.resolve(o.getFreCreationParams(r)).then(function(r){return Promise.resolve(o.contract.createNftWithErc20WithFixedRate.estimateGas(e,t,r)).then(function(i){var s;return n?i:Promise.resolve($(i,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,o.contract.createNftWithErc20WithFixedRate,e,t,r))})})})}catch(e){return Promise.reject(e)}},r.createNftWithDatatokenWithDispenser=function(e,t,r,n){try{var o=this;return Promise.resolve(o.getErcCreationParams(t)).then(function(t){return Promise.resolve(o.amountToUnits(null,r.maxBalance,18)).then(function(i){return r.maxBalance=i,Promise.resolve(o.amountToUnits(null,r.maxTokens,18)).then(function(i){return r.maxTokens=i,Promise.resolve(o.contract.createNftWithErc20WithDispenser.estimateGas(e,t,r)).then(function(i){var s;return n?i:Promise.resolve($(i,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,o.contract.createNftWithErc20WithDispenser,e,t,r))})})})})}catch(e){return Promise.reject(e)}},r.getErcCreationParams=function(e){try{var t,r,n=function(){var n=[e.minter,e.paymentCollector,e.mpFeeAddress,e.feeToken];e.filesObject&&(e.accessListFactory&&n.push(e.accessListFactory),e.allowAccessList&&n.push(e.allowAccessList),e.denyAccessList&&n.push(e.denyAccessList));var i=[e.name||t,e.symbol||r],c=e.templateIndex;return Promise.resolve(o.amountToUnits(null,e.cap,18)).then(function(t){return Promise.resolve(o.amountToUnits(null,e.feeAmount,a)).then(function(r){return{templateIndex:c,strings:i,addresses:n,uints:[t,r],bytess:e.filesObject?[s(JSON.stringify(e.filesObject))]:[]}})})},o=this;if(!e.name||!e.symbol){var i=we();t=i.name,r=i.symbol}var a=18,c=function(){if(e.feeToken!==de){var t=be(function(){return Promise.resolve(ee(o.signer,e.feeToken)).then(function(e){a=e})},function(e){W.error("getTokenDecimals error",e)});if(t&&t.then)return t.then(function(){})}}();return Promise.resolve(c&&c.then?c.then(n):n())}catch(e){return Promise.reject(e)}},r.getFreCreationParams=function(e){try{var t=this;e.allowedConsumer||(e.allowedConsumer=de);var r=!1===e.withMint?0:1,n=[e.baseTokenAddress,e.owner,e.marketFeeCollector,e.allowedConsumer],o=e.fixedRateAddress,i=e.datatokenDecimals,s=e.baseTokenDecimals;return Promise.resolve(t.amountToUnits(null,e.fixedRate,e.datatokenDecimals)).then(function(a){return Promise.resolve(t.amountToUnits(null,e.marketFee,e.datatokenDecimals)).then(function(e){return{fixedPriceAddress:o,addresses:n,uints:[s,i,a,e,r]}})})}catch(e){return Promise.reject(e)}},t}(me);function Te(e,t,r){if(!e.s){if(r instanceof Se){if(!r.s)return void(r.o=Te.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(Te.bind(null,e,t),Te.bind(null,e,2));e.s=t,e.v=r;const n=e.o;n&&n(e)}}var Se=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,r){var n=new e,o=this.s;if(o){var i=1&o?t:r;if(i){try{Te(n,1,i(this.v))}catch(e){Te(n,2,e)}return n}return this}return this.o=function(e){try{var o=e.v;1&e.s?Te(n,1,t?t(o):o):r?Te(n,1,r(o)):Te(n,2,o)}catch(e){Te(n,2,e)}},n},e}();function Ae(e){return e instanceof Se&&1&e.s}var Ee=function(e,t,r,n){try{var i="number"==typeof r,s=new ke(t,e,n);return Promise.resolve(s.getCurrentTokenTemplateCount()).then(function(t){var n;function a(e){return n?e:-1}var c=1,u=function(e,t,r){for(var n;;){var o=e();if(Ae(o)&&(o=o.v),!o)return i;if(o.then){n=0;break}var i=r();if(i&&i.then){if(!Ae(i)){n=1;break}i=i.s}if(t){var s=t();if(s&&s.then&&!Ae(s)){n=2;break}}}var a=new Se,c=Te.bind(null,a,2);return(0===n?o.then(l):1===n?i.then(u):s.then(m)).then(void 0,c),a;function u(n){i=n;do{if(t&&(s=t())&&s.then&&!Ae(s))return void s.then(m).then(void 0,c);if(!(o=e())||Ae(o)&&!o.v)return void Te(a,1,i);if(o.then)return void o.then(l).then(void 0,c);Ae(i=r())&&(i=i.v)}while(!i||!i.then);i.then(u).then(void 0,c)}function l(e){e?(i=r())&&i.then?i.then(u).then(void 0,c):u(i):Te(a,1,i)}function m(){(o=e())?o.then?o.then(l).then(void 0,c):l(o):Te(a,1,i)}}(function(){return!n&&c<=t},function(){return c++},function(){return Promise.resolve(s.getTokenTemplate(c)).then(function(t){var s=new o.Contract(t.templateAddress,S.abi,e);return i?Promise.resolve(s.getId()).then(function(e){if(t.isActive&&e.toString()===r.toString())return n=1,c}):t.isActive&&t.templateAddress===r.toString()?(n=1,c):void 0})});return u&&u.then?u.then(a):a(u)})}catch(e){return Promise.reject(e)}};function Fe(){try{if(process.env.ADDRESS_FILE){var r=t.readFileSync(process.env.ADDRESS_FILE,"utf8");return JSON.parse(r)}return e}catch(t){return e}}function Ce(e){try{var t=Fe();if(t)for(var r=Object.keys(t),n=0,o=r;n<o.length;n++){var i=o[n];if(t[i].chainId===e)return t[i]}}catch(e){console.error(e)}return null}var je=/*#__PURE__*/function(e){function t(){return e.apply(this,arguments)||this}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return k.abi},r.createDatatoken=function(e,t,r,n,o,i,a,c,u,l,m,h,d,f,v,g){try{var p=this;return Promise.resolve(p.getNftPermissions(e,t)).then(function(t){if(!0!==t.deployERC20)throw new Error("Caller is not DatatokenDeployer");if(m||(m=1),!u||!l){var P=we();u=P.name,l=P.symbol}var y=p.getContract(e);if(!p.signer.provider)throw new Error("Provider is required but not available");return Promise.resolve(p.signer.provider.getNetwork()).then(function(e){var t=e.chainId;function P(){var e=y.createERC20,t=e.estimateGas,P=[u,l],w=m;return Promise.resolve(p.amountToUnits(null,c,18)).then(function(b){return Promise.resolve(p.amountToUnits(null,a,18)).then(function(k){return Promise.resolve(t.call(e,w,P,[r,n,o,i],[b,k],[])).then(function(e){var t;if(g)return e;var P=[r,n,o,i];d&&(P.push(d.toLowerCase()),P.push(f?f.toLowerCase():de),P.push(v||de));var w=[u,l],b=m,k=y.createERC20,T=null==(t=p.config)?void 0:t.gasFeeMultiplier,S=p.getSignerAccordingSdk();return Promise.resolve(p.amountToUnits(null,c,18)).then(function(t){return Promise.resolve(p.amountToUnits(null,a,18)).then(function(r){return Promise.resolve($(e,S,T,k,b,w,P,[t,r],h?[s(h)]:[])).then(function(e){return Promise.resolve(e.wait()).then(function(e){var t=ue(e,"TokenCreated");return null==t?void 0:t.args[0]})})})})})})})}var w=Ce(Number(t)),b=function(){if(h)return Promise.resolve(Ee(p.signer,w.ERC721Factory,4,Number(t))).then(function(e){m=e})}();return b&&b.then?b.then(P):P()})})}catch(e){return Promise.reject(e)}},r.addManager=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftOwner(e)).then(function(e){if(e!==t)throw new Error("Caller is not NFT Owner");return Promise.resolve(i.addManager.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addManager,r))})})}catch(e){return Promise.reject(e)}},r.removeManager=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftOwner(e)).then(function(e){if(e!==t)throw new Error("Caller is not NFT Owner");return Promise.resolve(i.removeManager.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removeManager,r))})})}catch(e){return Promise.reject(e)}},r.addDatatokenDeployer=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(e){if(!0!==e.manager)throw new Error("Caller is not Manager");return Promise.resolve(i.addToCreateERC20List.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addToCreateERC20List,r))})})}catch(e){return Promise.reject(e)}},r.removeDatatokenDeployer=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(s){function a(e){if(c||t===r&&!0!==e.deployERC20)throw new Error("Caller is not Manager nor DatatokenDeployer");return Promise.resolve(i.removeFromCreateERC20List.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removeFromCreateERC20List,r))})}var c=!0!==s.manager;return c||t!==r?a(c||t===r&&o.getNftPermissions(e,t)):Promise.resolve(c||t===r&&o.getNftPermissions(e,t)).then(a)})}catch(e){return Promise.reject(e)}},r.addMetadataUpdater=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(e){if(!0!==e.manager)throw new Error("Caller is not Manager");return Promise.resolve(i.addToMetadataList.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addToMetadataList,r))})})}catch(e){return Promise.reject(e)}},r.removeMetadataUpdater=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(s){function a(e){if(c||t!==r&&!0!==e.updateMetadata)throw new Error("Caller is not Manager nor Metadata Updater");return Promise.resolve(i.removeFromMetadataList.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removeFromMetadataList,r))})}var c=!0!==s.manager;return c||t===r?a(c||t!==r&&o.getNftPermissions(e,t)):Promise.resolve(c||t!==r&&o.getNftPermissions(e,t)).then(a)})}catch(e){return Promise.reject(e)}},r.addStoreUpdater=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(e){if(!0!==e.manager)throw new Error("Caller is not Manager");return Promise.resolve(i.addTo725StoreList.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addTo725StoreList,r))})})}catch(e){return Promise.reject(e)}},r.removeStoreUpdater=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(s){function a(e){if(c||t!==r&&!0!==e.store)throw new Error("Caller is not Manager nor storeUpdater");return Promise.resolve(i.removeFrom725StoreList.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removeFrom725StoreList,r))})}var c=!0!==s.manager;return c||t===r?a(c||t!==r&&o.getNftPermissions(e,t)):Promise.resolve(c||t!==r&&o.getNftPermissions(e,t)).then(a)})}catch(e){return Promise.reject(e)}},r.cleanPermissions=function(e,t,r){try{var n=this,o=n.getContract(e);return Promise.resolve(n.getNftOwner(e)).then(function(e){if(e!==t)throw new Error("Caller is not NFT Owner");return Promise.resolve(o.cleanPermissions.estimateGas()).then(function(e){var t;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(t=n.config)?void 0:t.gasFeeMultiplier,o.cleanPermissions))})})}catch(e){return Promise.reject(e)}},r.transferNft=function(e,t,r,n,o){try{var i=this,s=i.getContract(e);return Promise.resolve(i.getNftOwner(e)).then(function(e){if(e!==t)throw new Error("Caller is not NFT Owner");var a=n||1;return Promise.resolve(s.transferFrom.estimateGas(t,r,a)).then(function(e){var n;return o?e:Promise.resolve($(e,i.getSignerAccordingSdk(),null==(n=i.config)?void 0:n.gasFeeMultiplier,s.transferFrom,t,r,a))})})}catch(e){return Promise.reject(e)}},r.safeTransferNft=function(e,t,r,n,o){try{var i=this,s=i.getContract(e);return Promise.resolve(i.getNftOwner(e)).then(function(e){if(e!==t)throw new Error("Caller is not NFT Owner");var a=n||1;return Promise.resolve(s.safeTransferFrom.estimateGas(t,r,a)).then(function(e){var n;return o?e:Promise.resolve($(e,i.getSignerAccordingSdk(),null==(n=i.config)?void 0:n.gasFeeMultiplier,s.safeTransferFrom,t,r,a))})})}catch(e){return Promise.reject(e)}},r.setMetadata=function(e,t,r,n,o,i,s,a,c,u){try{var l=this,m=l.getContract(e);return c||(c=[]),Promise.resolve(l.getNftPermissions(e,t)).then(function(e){if(!e.updateMetadata)throw new Error("Caller is not Metadata updater");return Promise.resolve(m.setMetaData.estimateGas(r,n,o,i,s,a,c)).then(function(e){var t;return u?e:Promise.resolve($(e,l.signer,null==(t=l.config)?void 0:t.gasFeeMultiplier,m.setMetaData,r,n,o,i,s,a,c))})})}catch(e){return Promise.reject(e)}},r.setMetadataAndTokenURI=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(e){if(!e.updateMetadata)throw new Error("Caller is not Metadata updater");var t=z({},r,{metadataProofs:r.metadataProofs||[]});return Promise.resolve(i.setMetaDataAndTokenURI.estimateGas(t)).then(function(e){var r;return n?e:Promise.resolve($(e,o.signer,null==(r=o.config)?void 0:r.gasFeeMultiplier,i.setMetaDataAndTokenURI,t))})})}catch(e){return Promise.reject(e)}},r.setMetadataState=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(e){if(!e.updateMetadata)throw new Error("Caller is not Metadata updater");return Promise.resolve(i.setMetaDataState.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.setMetaDataState,r))})})}catch(e){return Promise.reject(e)}},r.setTokenURI=function(e,t,r){try{var n=this,o=n.getContract(e);return Promise.resolve(o.setTokenURI.estimateGas("1",t)).then(function(e){var i;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,o.setTokenURI,"1",t))})}catch(e){return Promise.reject(e)}},r.getNftOwner=function(e){try{var t=this.getContract(e);return Promise.resolve(t.ownerOf(1))}catch(e){return Promise.reject(e)}},r.getNftPermissions=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.getPermissions(t))}catch(e){return Promise.reject(e)}},r.getMetadata=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getMetaData())}catch(e){return Promise.reject(e)}},r.isDatatokenDeployer=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.isERC20Deployer(t))}catch(e){return Promise.reject(e)}},r.setData=function(e,t,r,n,o){try{var i=this;return Promise.resolve(i.getNftPermissions(e,t)).then(function(t){if(!0!==t.store)throw new Error("User is not ERC20 store updater");var u=i.getContract(e),l=a(r),m=c(s(n));return Promise.resolve(u.setNewData.estimateGas(l,m)).then(function(e){var t;return o?e:Promise.resolve($(e,i.getSignerAccordingSdk(),null==(t=i.config)?void 0:t.gasFeeMultiplier,u.setNewData,l,m))})})}catch(e){return Promise.reject(e)}},r.getData=function(e,t){try{var r=this.getContract(e),n=a(t);return Promise.resolve(r.getData(n)).then(function(e){return e?u(e):null})}catch(e){return Promise.reject(e)}},r.getTokenURI=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.tokenURI(t))}catch(e){return Promise.reject(e)}},r.isDatatokenDeployed=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.isDeployed(t))}catch(e){return Promise.reject(e)}},t}(le),xe=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,r,n,o)||this).abiEnterprise=void 0,s.nft=void 0,s.abiEnterprise=i||b.abi,s.nft=new je(s.signer,r),s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return w.abi},r.approve=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(i.approve.estimateGas(t,Q(null,null,r,18))).then(function(e){var s;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.approve,t,Q(null,null,r,18)))})}catch(e){return Promise.reject(e)}},r.createFixedRate=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(e){if(!e)throw new Error("User is not Datatoken Deployer");r.allowedConsumer||(r.allowedConsumer=de);var t=!1===r.withMint?0:1;return Promise.resolve(i.createFixedRate.estimateGas(r.fixedRateAddress,[r.baseTokenAddress,r.owner,r.marketFeeCollector,r.allowedConsumer],[r.baseTokenDecimals,r.datatokenDecimals,r.fixedRate,r.marketFee,t])).then(function(e){var s;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.createFixedRate,r.fixedRateAddress,[r.baseTokenAddress,r.owner,r.marketFeeCollector,r.allowedConsumer],[r.baseTokenDecimals,r.datatokenDecimals,r.fixedRate,r.marketFee,t]))})})}catch(e){return Promise.reject(e)}},r.createDispenser=function(e,t,r,n,o){try{var i=this;return Promise.resolve(i.isDatatokenDeployer(e,t)).then(function(t){if(!t)throw new Error("User is not Datatoken Deployer");var s=i.getContract(e);return n.allowedSwapper||(n.allowedSwapper=de),n.withMint=!1!==n.withMint,Promise.resolve(s.createDispenser.estimateGas(r,n.maxTokens,n.maxBalance,n.withMint,n.allowedSwapper)).then(function(e){var t;return o?e:Promise.resolve($(e,i.getSignerAccordingSdk(),null==(t=i.config)?void 0:t.gasFeeMultiplier,s.createDispenser,r,n.maxTokens,n.maxBalance,n.withMint,n.allowedSwapper))})})}catch(e){return Promise.reject(e)}},r.mint=function(e,t,r,n,o){try{var i=this,s=i.getContract(e);return Promise.resolve(i.getPermissions(e,t)).then(function(a){if(!0!==a.minter)throw new Error("Caller is not Minter");return Promise.resolve(i.getCap(e)).then(function(e){if(new g(e).gte(r))return Promise.resolve(s.mint.estimateGas(n||t,Q(null,null,r,18))).then(function(e){var a;return o?e:Promise.resolve($(e,i.getSignerAccordingSdk(),null==(a=i.config)?void 0:a.gasFeeMultiplier,s.mint,n||t,Q(null,null,r,18)))});throw new Error("Mint amount exceeds cap available")})})}catch(e){return Promise.reject(e)}},r.addMinter=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(e){if(!0!==e)throw new Error("Caller is not DatatokenDeployer");return Promise.resolve(i.addMinter.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addMinter,r))})})}catch(e){return Promise.reject(e)}},r.removeMinter=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(e){if(!0!==e)throw new Error("Caller is not DatatokenDeployer");return Promise.resolve(i.removeMinter.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removeMinter,r))})})}catch(e){return Promise.reject(e)}},r.addPaymentManager=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(e){if(!0!==e)throw new Error("Caller is not DatatokenDeployer");return Promise.resolve(i.addPaymentManager.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addPaymentManager,r))})})}catch(e){return Promise.reject(e)}},r.removePaymentManager=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(e){if(!0!==e)throw new Error("Caller is not DatatokenDeployer");return Promise.resolve(i.removePaymentManager.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removePaymentManager,r))})})}catch(e){return Promise.reject(e)}},r.setPaymentCollector=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getPermissions(e,t)).then(function(s){function a(e){function s(s){function a(e){if(!c&&!u&&!(null==e?void 0:e.deployERC20))throw new Error("Caller is not Fee Manager, owner or Datatoken Deployer");return Promise.resolve(i.setPaymentCollector.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.setPaymentCollector,r))})}var u=e&&s===t;return e&&!u?Promise.resolve(e&&!u&&o.nft.getNftPermissions(e,t)).then(a):a(e&&!u&&o.nft.getNftPermissions(e,t))}return e?Promise.resolve(o.nft.getNftOwner(e)).then(s):s(e)}var c=s.paymentManager;return c?a(!c&&o.getNFTAddress(e)):Promise.resolve(!c&&o.getNFTAddress(e)).then(a)})}catch(e){return Promise.reject(e)}},r.getPaymentCollector=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getPaymentCollector())}catch(e){return Promise.reject(e)}},r.transfer=function(e,t,r,n){try{var o=this,i=o.transferWei;return Promise.resolve(Q(null,null,r,18)).then(function(r){return i.call(o,e,t,r,n)})}catch(e){return Promise.reject(e)}},r.transferWei=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(i.transfer.estimateGas(t,r)).then(function(e){var s;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.transfer,t,r))})}catch(e){return Promise.reject(e)}},r.startOrder=function(e,t,r,n,o,i){try{var s=this,a=s.getContract(e,s.abi);return o||(o={consumeMarketFeeAddress:de,consumeMarketFeeToken:de,consumeMarketFeeAmount:"0"}),Promise.resolve(a.startOrder.estimateGas(t,r,n,o)).then(function(e){var c;return i?e:Promise.resolve($(e,s.getSignerAccordingSdk(),null==(c=s.config)?void 0:c.gasFeeMultiplier,a.startOrder,t,r,n,o))})}catch(e){return Promise.reject(e)}},r.reuseOrder=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(i.reuseOrder.estimateGas(t,r)).then(function(e){var s;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.reuseOrder,t,r))})}catch(e){return Promise.reject(e)}},r.buyFromFreAndOrder=function(e,t,r,n){try{var o=this,i=o.getContract(e,o.abiEnterprise);return Promise.resolve(o.getFreOrderParams(r)).then(function(e){return Promise.resolve(i.buyFromFreAndOrder.estimateGas(t,e)).then(function(r){var s;return n?r:Promise.resolve($(r,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.buyFromFreAndOrder,t,e))})})}catch(e){return Promise.reject(e)}},r.buyFromDispenserAndOrder=function(e,t,r,n){try{var o=this,i=o.getContract(e,o.abiEnterprise);return Promise.resolve(i.buyFromDispenserAndOrder.estimateGas(t,r)).then(function(e){var s;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.buyFromDispenserAndOrder,t,r))})}catch(e){return Promise.reject(e)}},r.setData=function(e,t,r,n){try{var o=this;return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(t){if(!t)throw new Error("User is not Datatoken Deployer");var i=o.getContract(e),a=c(s(r));return Promise.resolve(i.setData.estimateGas(a)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.setData,a))})})}catch(e){return Promise.reject(e)}},r.cleanPermissions=function(e,t,r){try{var n=this,o=n.nft,i=o.getNftOwner;return Promise.resolve(n.getNFTAddress(e)).then(function(s){return Promise.resolve(i.call(o,s)).then(function(o){if(o!==t)throw new Error("Caller is NOT Nft Owner");var i=n.getContract(e);return Promise.resolve(i.cleanPermissions.estimateGas()).then(function(e){var t;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(t=n.config)?void 0:t.gasFeeMultiplier,i.cleanPermissions))})})})}catch(e){return Promise.reject(e)}},r.getPermissions=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.permissions(t))}catch(e){return Promise.reject(e)}},r.getCap=function(e){try{var t=this,r=t.getContract(e);return Promise.resolve(r.cap()).then(function(e){return Promise.resolve(t.unitsToAmount(null,e,18))})}catch(e){return Promise.reject(e)}},r.getDecimals=function(e){try{var t=this.getContract(e);return Promise.resolve(t.decimals()).then(Number)}catch(e){return Promise.reject(e)}},r.getId=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getId()).then(Number)}catch(e){return Promise.reject(e)}},r.getSymbol=function(e){try{var t=this.getContract(e);return Promise.resolve(t.symbol())}catch(e){return Promise.reject(e)}},r.getName=function(e){try{var t=this.getContract(e);return Promise.resolve(t.name())}catch(e){return Promise.reject(e)}},r.getNFTAddress=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getERC721Address())}catch(e){return Promise.reject(e)}},r.getFixedRates=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getFixedRates())}catch(e){return Promise.reject(e)}},r.getDispensers=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getDispensers())}catch(e){return Promise.reject(e)}},r.isDatatokenDeployer=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.isERC20Deployer(t))}catch(e){return Promise.reject(e)}},r.balance=function(e,t){try{var r=this,n=r.getContract(e);return Promise.resolve(n.balanceOf(t)).then(function(e){return Promise.resolve(r.unitsToAmount(null,e,18))})}catch(e){return Promise.reject(e)}},r.allowance=function(e,t,r,n){void 0===n&&(n=18);try{var o=this,i=o.getContract(e);return Promise.resolve(i.allowance(t,r)).then(function(e){return Promise.resolve(o.unitsToAmount(null,e,n))})}catch(e){return Promise.reject(e)}},r.setPublishingMarketFee=function(e,t,r,n,o,i){try{var s=this,a=s.getContract(e);return Promise.resolve(a.getPublishingMarketFee()).then(function(e){if(e[0]!==o)throw new Error("Caller is not the Publishing Market Fee Address");return Promise.resolve(a.setPublishingMarketFee.estimateGas(t,r,n)).then(function(e){var o;return i?e:Promise.resolve($(e,s.getSignerAccordingSdk(),null==(o=s.config)?void 0:o.gasFeeMultiplier,a.setPublishingMarketFee,t,r,n))})})}catch(e){return Promise.reject(e)}},r.getPublishingMarketFee=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getPublishingMarketFee()).then(function(e){return{publishMarketFeeAddress:e[0],publishMarketFeeToken:e[1],publishMarketFeeAmount:e[2].toString()}})}catch(e){return Promise.reject(e)}},r.getFreOrderParams=function(e){try{var t=this,r=e.exchangeId,n=e.exchangeContract;return Promise.resolve(Q(t.signer,e.baseTokenAddress,e.maxBaseTokenAmount,e.baseTokenDecimals)).then(function(o){return Promise.resolve(Q(t.signer,e.baseTokenAddress,e.swapMarketFee,e.baseTokenDecimals)).then(function(t){return{exchangeContract:n,exchangeId:r,maxBaseTokenAmount:o,swapMarketFee:t,marketFeeAddress:e.marketFeeAddress}})})}catch(e){return Promise.reject(e)}},t}(le),De=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,n,o,i)||this).accessList=void 0,s.fileObject=void 0,s.abi=s.getDefaultAbi(),s.fileObject=r,s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return A.abi},r.setFileObj=function(e){this.fileObject=e},r.getAllowlistContract=function(e){try{var t=this.getContract(e,this.getDefaultAbi());return Promise.resolve(t.getAllowListContract())}catch(e){return Promise.reject(e)}},r.getDenylistContract=function(e){try{var t=this.getContract(e,this.getDefaultAbi());return Promise.resolve(t.getDenyListContract())}catch(e){return Promise.reject(e)}},r.setAllowListContract=function(e,t,r,n){try{var o=this;return Promise.resolve(o.isDatatokenDeployer(e,r)).then(function(r){if(!r)throw new Error("User is not Datatoken Deployer");var i=o.getContract(e);return Promise.resolve(i.setAllowListContract.estimateGas(t)).then(function(e){var r;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(r=o.config)?void 0:r.gasFeeMultiplier,i.setAllowListContract,t))})})}catch(e){return Promise.reject(e)}},r.setDenyListContract=function(e,t,r,n){try{var o=this;return Promise.resolve(o.isDatatokenDeployer(e,r)).then(function(r){if(!r)throw new Error("User is not Datatoken Deployer");var i=o.getContract(e);return Promise.resolve(i.setDenyListContract.estimateGas(t)).then(function(e){var r;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(r=o.config)?void 0:r.gasFeeMultiplier,i.setDenyListContract,t))})})}catch(e){return Promise.reject(e)}},r.setFileObject=function(e,t,r){try{var n=this;return Promise.resolve(n.isDatatokenDeployer(e,t)).then(function(t){if(!t)throw new Error("User is not Datatoken Deployer");var o=n.getContract(e);return Promise.resolve(o.setFilesObject.estimateGas(n.fileObject)).then(function(e){var t;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(t=n.config)?void 0:t.gasFeeMultiplier,o.setFilesObject,n.fileObject))})})}catch(e){return Promise.reject(e)}},r.getFileObject=function(e,t,r,n,o,i,s){try{var a=this.getContract(e,this.getDefaultAbi());return Promise.resolve(a.getFileObject(t,r,n,o,i,s))}catch(e){return Promise.reject(e)}},t}(xe),Me=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,r,n,o,i)||this).abiEnterprise=void 0,s.abi=i||s.getDefaultAbi(),s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return E.abi},r.getTokenUri=function(e){try{return Promise.resolve(this.contract.tokenURI(e))}catch(e){return Promise.reject(e)}},r.getOwner=function(){try{return Promise.resolve(this.contract.owner())}catch(e){return Promise.reject(e)}},r.getId=function(){try{return Promise.resolve(this.contract.getId()).then(Number)}catch(e){return Promise.reject(e)}},r.getName=function(){try{return Promise.resolve(this.contract.name())}catch(e){return Promise.reject(e)}},r.getSymbol=function(){try{return Promise.resolve(this.contract.symbol())}catch(e){return Promise.reject(e)}},r.balance=function(e){try{var t=this;return Promise.resolve(t.contract.balanceOf(e)).then(function(e){return Promise.resolve(t.unitsToAmount(null,e,18))})}catch(e){return Promise.reject(e)}},r.mint=function(e,t,r){try{var n=this;return Promise.resolve(n.contract.mint.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.mint,e,t))})}catch(e){return Promise.reject(e)}},r.batchMint=function(e,t,r){try{var n=this;return Promise.resolve(n.contract.batchMint.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.batchMint,e,t))})}catch(e){return Promise.reject(e)}},r.burn=function(e,t){try{var r=this;return Promise.resolve(r.contract.burn.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.burn,e))})}catch(e){return Promise.reject(e)}},r.transferOwnership=function(e,t){try{var r=this;return Promise.resolve(r.contract.transferOwnership.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.transferOwnership,e))})}catch(e){return Promise.reject(e)}},r.renounceOwnership=function(e){try{var t=this;return Promise.resolve(t.contract.renounceOwnership.estimateGas()).then(function(r){var n;return e?r:Promise.resolve($(r,t.getSignerAccordingSdk(),null==(n=t.config)?void 0:n.gasFeeMultiplier,t.contract.renounceOwnership))})}catch(e){return Promise.reject(e)}},t}(me),Oe=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,r,n,o,i)||this).abi=i||s.getDefaultAbi(),s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return F.abi},r.deployAccessListContract=function(e,t,r,n,o,i,s){void 0===n&&(n=!1);try{var a=this;if(!e||!t){var c=we();e=c.name,t=c.symbol}return Promise.resolve(a.contract.deployAccessListContract.estimateGas(e,t,n,o,i,r)).then(function(c){return s?c:function(s,u){try{var l=Promise.resolve($(c,a.getSignerAccordingSdk(),null==(m=a.config)?void 0:m.gasFeeMultiplier,a.contract.deployAccessListContract,e,t,n,o,i,r)).then(function(e){if(!e){var t="Tx for deploying new access list was not processed on chain.";throw console.error(t),t}return Promise.resolve(e.wait()).then(function(e){return ue(e,"NewAccessList").args[0]})})}catch(e){return u(e)}var m;return l&&l.then?l.then(void 0,u):l}(0,function(e){console.error("Creation of AccessList failed: "+e)})})}catch(e){return Promise.reject(e)}},r.getOwner=function(){try{return Promise.resolve(this.contract.owner())}catch(e){return Promise.reject(e)}},r.isSoulbound=function(e){try{return Promise.resolve(this.contract.isSoulBound(e))}catch(e){return Promise.reject(e)}},r.isDeployed=function(e){try{return Promise.resolve(this.contract.isDeployed(e))}catch(e){return Promise.reject(e)}},r.changeTemplateAddress=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");if(t===de)throw new Error("Template address cannot be ZERO address");return Promise.resolve(n.contract.changeTemplateAddress.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.changeTemplateAddress,t))})})}catch(e){return Promise.reject(e)}},t}(me);function Ne(e,t,r){if(!e.s){if(r instanceof Re){if(!r.s)return void(r.o=Ne.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(Ne.bind(null,e,t),Ne.bind(null,e,2));e.s=t,e.v=r;const n=e.o;n&&n(e)}}var Re=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,r){var n=new e,o=this.s;if(o){var i=1&o?t:r;if(i){try{Ne(n,1,i(this.v))}catch(e){Ne(n,2,e)}return n}return this}return this.o=function(e){try{var o=e.v;1&e.s?Ne(n,1,t?t(o):o):r?Ne(n,1,r(o)):Ne(n,2,o)}catch(e){Ne(n,2,e)}},n},e}(),Ue=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,r,n,o,i)||this).abiEnterprise=void 0,s.abi=i||s.getDefaultAbi(),s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return C.abi},r.getFunds=function(e){try{return Promise.resolve(this.contract.getFunds(e))}catch(e){return Promise.reject(e)}},r.getUserFunds=function(e,t){try{return Promise.resolve(this.contract.getUserFunds(e,t))}catch(e){return Promise.reject(e)}},r.getUserTokens=function(e){try{return Promise.resolve(this.contract.getUserTokens(e))}catch(e){return Promise.reject(e)}},r.getLocks=function(e,t,r){try{return Promise.resolve(this.contract.getLocks(e,t,r))}catch(e){return Promise.reject(e)}},r.getAuthorizations=function(e,t,r){try{return Promise.resolve(this.contract.getAuthorizations(e,t,r))}catch(e){return Promise.reject(e)}},r.verifyFundsForEscrowPayment=function(e,t,r,n,o,i,s){try{var a,c=this;return Promise.resolve(null==(a=c.signer.provider)?void 0:a.getBalance(l(t))).then(function(a){if(new v(a).isZero())return{isValid:!1,message:"Native token balance is 0. Please add funds"};var u=new xe(c.signer),h=u.allowance;return Promise.resolve(c.signer.getAddress()).then(function(a){return Promise.resolve(h.call(u,e,a,c.contract.target.toString(),s)).then(function(a){return Promise.resolve(c.amountToUnits(e,a,18)).then(function(a){function h(){var a=u.balance;return Promise.resolve(c.signer.getAddress()).then(function(h){return Promise.resolve(a.call(u,e,h)).then(function(a){if(new v(a).isZero())return{isValid:!1,message:"Payment token balance is 0. Please add funds"};var u=c.getAuthorizations;return Promise.resolve(c.signer.getAddress()).then(function(h){return Promise.resolve(u.call(c,e,h,t)).then(function(u){var h=c.getUserFunds;return Promise.resolve(c.signer.getAddress()).then(function(d){return Promise.resolve(h.call(c,d,e)).then(function(h){function d(){var r=function(){if(0===u.length)return Promise.resolve(c.authorize(l(e),l(t),(Number(n)/2).toString(),o,i)).then(function(){})}();return r&&r.then?r.then(function(){return{isValid:!0,message:""}}):{isValid:!0,message:""}}var f=function(){if(new v(h[0]).isZero()){var t=function(){if(r&&new v(m(a)).isLessThanOrEqualTo(new v(m(r)))&&new v(m(r)).isGreaterThan(new v(n)))return Promise.resolve(c.deposit(e,r,s)).then(function(){});var t=function(){if(new v(m(a)).isLessThanOrEqualTo(new v(m(n)))){var t=c.deposit;return Promise.resolve(c.unitsToAmount(e,n,s)).then(function(r){return Promise.resolve(t.call(c,e,r,s)).then(function(){})})}return Promise.resolve(c.deposit(e,a,s)).then(function(){})}();return t&&t.then?t.then(function(){}):void 0}();if(t&&t.then)return t.then(function(){})}}();return f&&f.then?f.then(d):d()})})})})})})}var d=function(){if(new v(a).isLessThan(new v(n)))return Promise.resolve(u.approve(l(e),l(c.contract.target.toString()),n)).then(function(){})}();return d&&d.then?d.then(h):h()})})})})}catch(e){return Promise.reject(e)}},r.deposit=function(e,t,r,n){try{var o=this;return Promise.resolve(o.amountToUnits(e,t,r)).then(function(t){return Promise.resolve(o.contract.deposit.estimateGas(e,t)).then(function(r){var i;return n?r:Promise.resolve($(r,o.getSignerAccordingSdk(),null==(i=o.config)?void 0:i.gasFeeMultiplier,o.contract.deposit,e,t))})})}catch(e){return Promise.reject(e)}},r.withdraw=function(e,t,r,n){try{var o=this,i=[],s=[];if(e.length!==t.length)throw new Error("Tokens and amounts arrays must have the same length");return Promise.resolve(o.signer.getAddress()).then(function(a){function c(){return Promise.resolve(Promise.all(s.map(function(e,t){return o.amountToUnits(i[t],e,r)}))).then(function(t){return Promise.resolve(o.contract.withdraw.estimateGas(e,t)).then(function(e){var r;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(r=o.config)?void 0:r.gasFeeMultiplier,o.contract.withdraw,i,t))})})}var u,l,m,h,d,f=(u=e,l=function(r){var n=e[r],c=new v(t[r]);return Promise.resolve(o.getUserFunds(a,n)).then(function(e){var o=new v(e[0]);c.isGreaterThan(0)&&c.isLessThanOrEqualTo(o)?(i.push(n),s.push(t[r])):console.log("Insufficient funds for token "+n)})},d=-1,function e(t){try{for(;++d<u.length;)if((t=l(d))&&t.then){if(!((r=t)instanceof Re&&1&r.s))return void t.then(e,h||(h=Ne.bind(null,m=new Re,2)));t=t.v}m?Ne(m,1,t):m=t}catch(e){Ne(m||(m=new Re),2,e)}var r}(),m);return f&&f.then?f.then(c):c()})}catch(e){return Promise.reject(e)}},r.authorize=function(e,t,r,n,o,i,s){try{var a=this,c=a.getAuthorizations;return Promise.resolve(a.signer.getAddress()).then(function(u){return Promise.resolve(c.call(a,e,u,t)).then(function(c){return 0!==c.length?(console.log("Payee "+t+" already authorized"),null):Promise.resolve(a.amountToUnits(e,r,i)).then(function(r){return Promise.resolve(a.amountToUnits(e,n,i)).then(function(n){return Promise.resolve(a.amountToUnits(e,o,i)).then(function(o){return Promise.resolve(a.contract.authorize.estimateGas(e,t,r,n,o)).then(function(i){var c;return s?i:Promise.resolve($(i,a.getSignerAccordingSdk(),null==(c=a.config)?void 0:c.gasFeeMultiplier,a.contract.authorize,e,t,r,n,o))})})})})})})}catch(e){return Promise.reject(e)}},r.cancelExpiredLocks=function(e,t,r,n,o){try{var i=this;return Promise.resolve(i.contract.cancelExpiredLocks.estimateGas(e,t,r,n)).then(function(s){var a;return o?s:Promise.resolve($(s,i.getSignerAccordingSdk(),null==(a=i.config)?void 0:a.gasFeeMultiplier,i.contract.cancelExpiredLocks,e,t,r,n))})}catch(e){return Promise.reject(e)}},t}(me),Ie=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,r,n,o,i)||this).abi=i||s.getDefaultAbi(),s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return j.abi},r.isTokenAllowed=function(e){try{return Promise.resolve(this.contract.isTokenAllowed(e))}catch(e){return Promise.reject(e)}},r.getToken=function(e){try{return Promise.resolve(this.contract.getToken(e))}catch(e){return Promise.reject(e)}},r.calculateFee=function(e,t,r){try{var n=this,o=n.amountToUnits(e,t.toString(),r);return Promise.resolve(n.contract.calculateFee(e,o)).then(function(t){return n.unitsToAmount(e,t,r)})}catch(e){return Promise.reject(e)}},t}(me),Le=function(e){try{return Promise.resolve(new Promise(function(t){setTimeout(t,e)}))}catch(e){return Promise.reject(e)}};function Ge(e){return null!=e}var _e=function(e,t){try{var r=a(s(t)),n=h(r);if(!e.provider)throw new Error("Provider is required but not available");return Promise.resolve(e.provider.getNetwork()).then(function(t){var r=t.chainId;return function(t,r){try{var o=Promise.resolve(e.signMessage(n))}catch(e){return r(e)}return o&&o.then?o.then(void 0,r):o}(0,function(t){return W.error("Sign message error: ",t),function(){if(8996===Number(r))return console.log("Signing message with _legacySignMessage"),Promise.resolve(e._legacySignMessage(n))}()})})}catch(e){return Promise.reject(e)}},ze=function(e,t){try{var r=h(t);return Promise.resolve(e._legacySignMessage(r)).then(function(e){var t="0x"+(e=e.substr(2)).slice(0,64),r="0x"+e.slice(64,128),n="0x"+e.slice(128,130);return"0x00"===n&&(n="0x1b"),"0x01"===n&&(n="0x1c"),{v:n,r:t,s:r}})}catch(e){return Promise.reject(e)}};function Be(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}function qe(e,t,r){if(!e.s){if(r instanceof Je){if(!r.s)return void(r.o=qe.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(qe.bind(null,e,t),qe.bind(null,e,2));e.s=t,e.v=r;var n=e.o;n&&n(e)}}var Je=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,r){var n=new e,o=this.s;if(o){var i=1&o?t:r;if(i){try{qe(n,1,i(this.v))}catch(e){qe(n,2,e)}return n}return this}return this.o=function(e){try{var o=e.v;1&e.s?qe(n,1,t?t(o):o):r?qe(n,1,r(o)):qe(n,2,o)}catch(e){qe(n,2,e)}},n},e}();function We(e){return e instanceof Je&&1&e.s}var Ve=/*#__PURE__*/function(){function e(e){this.aquariusURL=void 0,this.aquariusURL=e}var t=e.prototype;return t.resolve=function(e,t,r){try{var n=this.aquariusURL+"/api/aquarius/assets/ddo/"+e;return Promise.resolve(Be(function(){return Promise.resolve(x(n,{method:"GET",headers:{"Content-Type":"application/json",Authorization:r},signal:t})).then(function(e){if(e.ok)return Promise.resolve(e.json());throw new Error("HTTP request failed with status "+e.status)})},function(e){throw W.error(e),new Error("HTTP request failed")}))}catch(e){return Promise.reject(e)}},t.waitForIndexer=function(e,t,r,n,o,i){void 0===n&&(n=3e4),void 0===o&&(o=100);try{var s,a=this,c=0;o>500&&(W.warn("Max Limit exceeded, defaulting to 500 retries."),o=500);var u=function(e,t){var r;do{var n=e();if(n&&n.then){if(!We(n)){r=!0;break}n=n.v}var o=t();if(We(o)&&(o=o.v),!o)return n}while(!o.then);var i=new Je,s=qe.bind(null,i,2);return(r?n.then(a):o.then(c)).then(void 0,s),i;function a(r){for(n=r;We(o=t())&&(o=o.v),o;){if(o.then)return void o.then(c).then(void 0,s);if((n=e())&&n.then){if(!We(n))return void n.then(a).then(void 0,s);n=n.v}}qe(i,1,n)}function c(r){if(r){do{if((n=e())&&n.then){if(!We(n))return void n.then(a).then(void 0,s);n=n.v}if(We(r=t())&&(r=r.v),!r)return void qe(i,1,n)}while(!r.then);r.then(c).then(void 0,s)}else qe(i,1,n)}}(function(){function o(e){return s?e:Promise.resolve(Le(n)).then(function(){c++})}var u=Be(function(){return Promise.resolve(x(a.aquariusURL+"/api/aquarius/assets/ddo/"+e,{method:"GET",headers:{"Content-Type":"application/json",Authorization:i},signal:r})).then(function(e){return function(){if(e.ok)return Promise.resolve(e.json()).then(function(e){var r=D.getDDOClass(e).getAssetFields().indexedMetadata;return t?r.event&&r.event.txid===t?(s=1,e):void 0:(s=1,e)})}()})},function(){});return u&&u.then?u.then(o):o(u)},function(){return!s&&c<o});return Promise.resolve(u&&u.then?u.then(function(e){return s?e:null}):s?u:null)}catch(e){return Promise.reject(e)}},t.validate=function(e,t,r,n,o){try{var i=r+"/api/aquarius/assets/ddo/validate",s=r+"/api/services/nonce";return Promise.resolve(Be(function(){return Promise.resolve(t.getAddress()).then(function(r){return Promise.resolve(x(s+"?userAddress="+r,{method:"GET",headers:{"Content-Type":"application/json",Authorization:o},signal:n})).then(function(s){return Promise.resolve(s.json()).then(function(s){var a=s.nonce;console.log("[getNonce] Consumer: "+r+" nonce: "+a),a&&null!==a||(a="0");var c=(Number(a)+1).toString();return Promise.resolve(_e(t,r+c)).then(function(t){return Promise.resolve(x(i,{method:"POST",body:JSON.stringify({ddo:e,publisherAddress:r,nonce:c,signature:t}),headers:{"Content-Type":"application/octet-stream",Authorization:o},signal:n})).then(function(e){return Promise.resolve(e.json()).then(function(t){if(200!==e.status)throw new Error("Metadata validation failed");return console.log("Ddo successfully validated"),{valid:!0,hash:t.hash,proof:{validatorAddress:t.publicKey,r:t.r[0],s:t.s[0],v:t.v}}})})})})})})},function(e){W.error("Metadata validation failed",e.message)}))}catch(e){return Promise.reject(e)}},t.getAssetMetadata=function(e,t,r){try{var n=this.aquariusURL+"/api/aquarius/assets/metadata/"+e;return Promise.resolve(Be(function(){return Promise.resolve(x(n,{method:"GET",headers:{"Content-Type":"application/json",Authorization:r},signal:t})).then(function(e){if(e.ok)return e.json();throw new Error("getAssetMetadata failed: "+e.status+e.statusText)})},function(e){throw W.error("Error getting metadata: ",e),new Error("Error getting metadata: "+e)}))}catch(e){return Promise.reject(e)}},t.querySearch=function(e,t,r){try{var n=this.aquariusURL+"/api/aquarius/assets/query";return Promise.resolve(Be(function(){return Promise.resolve(x(n,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/json",Authorization:r},signal:t})).then(function(e){if(e.ok)return e.json();throw new Error("querySearch failed: "+e.status+e.statusText)})},function(e){throw W.error("Error querying metadata: ",e),new Error("Error querying metadata: "+e)}))}catch(e){return Promise.reject(e)}},e}();function He(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}var Ze=/*#__PURE__*/function(){function e(){}var t=e.prototype;return t.getConsumerAddress=function(e){try{return Promise.resolve("string"==typeof e?function(e){try{return M.decode(e,{json:!0})}catch(e){throw new Error("Error decoding JWT")}}(e).address:e.getAddress())}catch(e){return Promise.reject(e)}},t.getSignature=function(e,t){try{return Promise.resolve("string"==typeof e?null:this.signProviderRequest(e,t))}catch(e){return Promise.reject(e)}},t.getAuthorization=function(e){return"string"==typeof e?e:void 0},t.getEndpoints=function(e,t){try{var r=this;return Promise.resolve(He(function(){return Promise.resolve(r.getData(e,t)).then(function(e){return Promise.resolve(e.json())})},function(e){throw W.error("Finding the service endpoints failed:",e),new Error("HTTP request failed calling Provider")}))}catch(e){return Promise.reject(e)}},t.getEndpointURL=function(e,t){return e?e.find(function(e){return e.serviceName.toLowerCase()===t.toLowerCase()}):null},t.getServiceEndpoints=function(e,t){try{var r=[];for(var n in t.serviceEndpoints){var o={serviceName:n,method:t.serviceEndpoints[n][0],urlPath:e.replace(/\/+$/,"")+"/"+t.serviceEndpoints[n][1].replace(/^\/+/,"")};r.push(o)}return Promise.resolve(r)}catch(e){return Promise.reject(e)}},t.getNonce=function(e,t,r,n,o){try{var i=function(){function i(){var e=s.getEndpointURL(o,"nonce")?s.getEndpointURL(o,"nonce").urlPath:null;return e?He(function(){return Promise.resolve(x(e+"?userAddress="+t,{method:"GET",headers:{"Content-Type":"application/json"},signal:r})).then(function(e){return Promise.resolve(e.json()).then(function(e){var r=e.nonce;return console.log("[getNonce] Consumer: "+t+" nonce: "+r),r&&null!==r?Number(r):0})})},function(e){throw W.error(e),new Error(e.message)}):null}var a=function(){if(!o)return Promise.resolve(s.getServiceEndpoints(e,n)).then(function(e){o=e})}();return a&&a.then?a.then(i):i()},s=this,a=function(){if(!n)return Promise.resolve(s.getEndpoints(e)).then(function(e){n=e})}();return Promise.resolve(a&&a.then?a.then(i):i())}catch(e){return Promise.reject(e)}},t.signProviderRequest=function(e,t){try{var r=o.solidityPackedKeccak256(["bytes"],[o.hexlify(o.toUtf8Bytes(t))]),n=o.toBeArray(r);return Promise.resolve(He(function(){return Promise.resolve(e.signMessage(n))},function(){return Promise.resolve(e.provider.getNetwork()).then(function(t){var r=Number(t.chainId);return function(){if(8996===r)return Promise.resolve(e._legacySignMessage(n))}()})}))}catch(e){return Promise.reject(e)}},t.encrypt=function(e,t,r,n,o,i){try{var s=this;return Promise.resolve(s.getEndpoints(r)).then(function(o){return Promise.resolve(s.getServiceEndpoints(r,o)).then(function(a){return Promise.resolve(s.getConsumerAddress(n)).then(function(c){return Promise.resolve(s.getNonce(r,c,i,o,a)).then(function(r){var o=(r+1).toString(),u=String(o);return Promise.resolve(s.getSignature(n,u)).then(function(r){var n=(s.getEndpointURL(a,"encrypt")?s.getEndpointURL(a,"encrypt").urlPath:null)+"?chainId="+t;return n?(n+="&nonce="+o,n+="&consumerAddress="+c,n+="&signature="+r,He(function(){return Promise.resolve(x(n,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/octet-stream"},signal:i})).then(function(e){return Promise.resolve(e.text())})},function(e){throw W.error(e),new Error("HTTP request failed calling Provider")})):null})})})})})}catch(e){return Promise.reject(e)}},t.checkDidFiles=function(e,t,r,n,o){void 0===n&&(n=!1);try{var i=this;return Promise.resolve(i.getEndpoints(r)).then(function(s){return Promise.resolve(i.getServiceEndpoints(r,s)).then(function(r){function s(e){var t;function r(e){return t?e:Promise.resolve(a.json()).then(function(e){throw W.error("File info call failed: ",a.status,a.statusText,e),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=a)&&e.ok)return Promise.resolve(a.json()).then(function(e){for(var r,n=_(e);!(r=n()).done;)u.push(r.value);return t=1,u})}();return n&&n.then?n.then(r):r(n)}var a,c={did:e,serviceId:t,checksum:n},u=[],l=i.getEndpointURL(r,"fileinfo")?i.getEndpointURL(r,"fileinfo").urlPath:null;if(!l)return null;var m=He(function(){return Promise.resolve(x(l,{method:"POST",body:JSON.stringify(c),headers:{"Content-Type":"application/json"},signal:o})).then(function(e){a=e})},function(e){throw W.error("File info call failed: "),W.error(e),new Error(e)});return m&&m.then?m.then(s):s()})})}catch(e){return Promise.reject(e)}},t.getFileInfo=function(e,t,r,n){void 0===r&&(r=!1);try{var o=this;return Promise.resolve(o.getEndpoints(t)).then(function(i){return Promise.resolve(o.getServiceEndpoints(t,i)).then(function(t){function i(e){var t;function r(e){return t?e:Promise.resolve(s.json()).then(function(e){throw W.error("File info call failed: ",s.status,s.statusText,e),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=s)&&e.ok)return Promise.resolve(s.json()).then(function(e){for(var r,n=_(e);!(r=n()).done;)c.push(r.value);return t=1,c})}();return n&&n.then?n.then(r):r(n)}var s,a=z({},e,{checksum:r}),c=[],u=o.getEndpointURL(t,"fileinfo")?o.getEndpointURL(t,"fileinfo").urlPath:null;if(!u)return null;var l=He(function(){return Promise.resolve(x(u,{method:"POST",body:JSON.stringify(a),headers:{"Content-Type":"application/json"},signal:n})).then(function(e){s=e})},function(e){throw W.error("File info call failed: "),W.error(e),new Error(e)});return l&&l.then?l.then(i):i()})})}catch(e){return Promise.reject(e)}},t.getComputeEnvironments=function(e,t){try{var r=this;return Promise.resolve(r.getEndpoints(e)).then(function(n){return Promise.resolve(r.getServiceEndpoints(e,n)).then(function(e){var n;function o(e){var t;return null!=(t=i)&&t.ok?i.json():Promise.resolve(i.json()).then(function(e){throw W.error("Fetch compute env failed: ",i.status,i.statusText,e),new Error(JSON.stringify(e))})}var i,s=null==(n=r.getEndpointURL(e,"computeEnvironments"))?void 0:n.urlPath;if(!s)return null;var a=He(function(){return Promise.resolve(x(s,{method:"GET",headers:{"Content-Type":"application/json"},signal:t})).then(function(e){i=e})},function(e){throw W.error("Fetch compute env failed: "),W.error(e),new Error(e)});return a&&a.then?a.then(o):o()})})}catch(e){return Promise.reject(e)}},t.initialize=function(e,t,r,n,o,i,s,a,c){try{var u=this;return Promise.resolve(u.getEndpoints(o)).then(function(l){return Promise.resolve(u.getServiceEndpoints(o,l)).then(function(o){function l(e){var t;function r(e){return t?e:Promise.resolve(m.json()).then(function(e){throw W.error("Provider initialized failed: ",m.status,m.statusText,e),new Error(JSON.stringify(e))})}var n=function(e){if(200===(null==(e=m)?void 0:e.status))return Promise.resolve(m.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var m,h=u.getEndpointURL(o,"initialize")?u.getEndpointURL(o,"initialize").urlPath:null;if(!h)return null;h+="?documentId="+e,h+="&serviceId="+t,h+="&fileIndex="+r,h+="&consumerAddress="+n,s&&(h+="&userdata="+encodeURI(JSON.stringify(s))),a&&(h+="&environment="+encodeURI(a)),c&&(h+="&validUntil="+c);var d=He(function(){return Promise.resolve(x(h,{method:"GET",headers:{"Content-Type":"application/json"},signal:i})).then(function(e){m=e})},function(e){throw W.error("Provider initialized failed: "),W.error(e),new Error("Provider initialize failed url: "+h+" ")});return d&&d.then?d.then(l):l()})})}catch(e){return Promise.reject(e)}},t.initializeComputeV1=function(e,t,r,n,o,i,s,a,c){try{var u=this;return Promise.resolve(u.getEndpoints(n)).then(function(l){return Promise.resolve(u.getServiceEndpoints(n,l)).then(function(n){function l(e){var t;function r(e){return t?e:Promise.resolve(m.json()).then(function(e){throw W.error("Initialize compute failed: ",m.status,m.statusText,e),W.error("Payload was:",JSON.stringify(h)),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=m)&&e.ok)return Promise.resolve(m.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var m,h={datasets:e,algorithm:t,payment:{chainId:i,token:s,maxJobDuration:a},consumerAddress:o,environment:r},d=u.getEndpointURL(n,"initializeCompute")?u.getEndpointURL(n,"initializeCompute").urlPath:null;if(!d)return null;var f=He(function(){return Promise.resolve(x(d,{method:"POST",body:JSON.stringify(h),headers:{"Content-Type":"application/json"},signal:c})).then(function(e){m=e})},function(e){throw W.error("Initialize compute failed: "),W.error(e),new Error("ComputeJob cannot be initialized")});return f&&f.then?f.then(l):l()})})}catch(e){return Promise.reject(e)}},t.initializeCompute=function(e,t,r,n,o,i,s,a,c,u,l){try{var m=this;return Promise.resolve(m.getEndpoints(i)).then(function(h){return Promise.resolve(m.getServiceEndpoints(i,h)).then(function(d){var f=m.getEndpointURL(d,"initializeCompute")?m.getEndpointURL(d,"initializeCompute").urlPath:null;return f?Promise.resolve(m.getConsumerAddress(s)).then(function(v){return Promise.resolve(m.getNonce(i,v,l,h,d)).then(function(i){var h,d=(i+1).toString(),g=v;return g+=null==(h=e[0])?void 0:h.documentId,g+=d,Promise.resolve(m.getSignature(s,g)).then(function(i){function h(e){var t;function r(e){return t?e:Promise.resolve(d.json()).then(function(e){throw W.error("Initialize compute failed: ",d.status,d.statusText,e),W.error("Payload was:",JSON.stringify(g)),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=d)&&e.ok)return Promise.resolve(d.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var d,g={datasets:e,algorithm:t,environment:r,payment:{chainId:c,token:n,resources:a},maxJobDuration:o,consumerAddress:v,signature:i};u&&(g.policyServer=u);var p=He(function(){return console.log("Initialize compute url:",f),Promise.resolve(x(f,{method:"POST",body:JSON.stringify(g),headers:{"Content-Type":"application/json",Authorization:m.getAuthorization(s)},signal:l})).then(function(e){return d=e,console.log("Raw response:",d),function(){if(!d.ok)return Promise.resolve(d.text()).then(function(e){throw new Error(""+e)})}()})},function(e){throw W.error("Initialize compute failed: "),W.error(e),new Error("ComputeJob cannot be initialized: "+e.message+".")});return p&&p.then?p.then(h):h()})})}):null})})}catch(e){return Promise.reject(e)}},t.getDownloadUrl=function(e,t,r,n,o,i,s,a){try{var c=this;return Promise.resolve(c.getEndpoints(o)).then(function(u){return Promise.resolve(c.getServiceEndpoints(o,u)).then(function(l){var m=c.getEndpointURL(l,"download")?c.getEndpointURL(l,"download").urlPath:null;return m?Promise.resolve(c.getConsumerAddress(i)).then(function(h){return Promise.resolve(c.getNonce(o,h,null,u,l)).then(function(o){var u=(o+1).toString();return Promise.resolve(c.getSignature(i,e+u)).then(function(o){var i=m;return i+="?fileIndex="+r,i+="&documentId="+e,i+="&transferTxId="+n,i+="&serviceId="+t,i+="&consumerAddress="+h,i+="&nonce="+u,s&&(i+="&policyServer="+encodeURI(JSON.stringify(s))),i+="&signature="+o,a&&(i+="&userdata="+encodeURI(JSON.stringify(a))),i})})}):null})})}catch(e){return Promise.reject(e)}},t.computeStartV1=function(e,t,r,n,o,i,s,a){try{var c=this;return Promise.resolve(c.getEndpoints(e)).then(function(u){return Promise.resolve(c.getServiceEndpoints(e,u)).then(function(l){var m=c.getEndpointURL(l,"computeStart")?c.getEndpointURL(l,"computeStart").urlPath:null;return Promise.resolve(t.getAddress()).then(function(h){return Promise.resolve(c.getNonce(e,h,i,u,l)).then(function(e){var u=(e+1).toString(),l=h;return l+=n.documentId,l+=u,Promise.resolve(c.signProviderRequest(t,l)).then(function(e){function t(e){var t;function r(e){if(t)return e;var r=W.error,n=c.statusText,o=c.status;return Promise.resolve(c.json()).then(function(e){return r.call(W,"Compute start failed: ",o,n,e),W.error("Payload was:",l),null})}var n=function(e){if(null!=(e=c)&&e.ok)return Promise.resolve(c.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var c,l=Object();if(l.consumerAddress=h,l.signature=e,l.nonce=u,l.environment=r,l.dataset=n,l.algorithm=o,s&&(l.additionalDatasets=s),a&&(l.output=a),!m)return null;var d=He(function(){return Promise.resolve(x(m,{method:"POST",body:JSON.stringify(l),headers:{"Content-Type":"application/json"},signal:i})).then(function(e){c=e})},function(e){throw W.error("Compute start failed:"),W.error(e),W.error("Payload was:",l),new Error("HTTP request failed calling Provider")});return d&&d.then?d.then(t):t()})})})})})}catch(e){return Promise.reject(e)}},t.computeStart=function(e,t,r,n,o,i,s,a,c,u,l,m,h,d,f){try{var v=this;return console.log("called new compute start method..."),console.log("datasets: ",n),console.log("algorithm: ",o),Promise.resolve(v.getEndpoints(e)).then(function(g){return Promise.resolve(v.getServiceEndpoints(e,g)).then(function(p){var P=v.getEndpointURL(p,"computeStart")?v.getEndpointURL(p,"computeStart").urlPath:null;return P?Promise.resolve(v.getConsumerAddress(t)).then(function(y){return Promise.resolve(v.getNonce(e,y,d,g,p)).then(function(e){var g,p=(e+1).toString(),w=String(y+(null==(g=n[0])?void 0:g.documentId)+p);return Promise.resolve(v.getSignature(t,w)).then(function(e){function g(e){var t;function r(e){return t?e:Promise.resolve(w.json()).then(function(e){throw W.error("Compute start failed: ",w.status,w.statusText,e),W.error("Payload was:",b),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=w)&&e.ok)return Promise.resolve(w.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var w,b=Object();b.consumerAddress=y,b.signature=e,b.nonce=p,b.environment=r,b.maxJobDuration=i,b.resources=a,b.dataset=n[0],b.datasets=n,b.algorithm=o,b.chainId=c,b.payment={chainId:c,token:s,maxJobDuration:i},a&&(b.resources=a),u&&(b.metadata=u),l&&(b.additionalViewers=l),m&&(b.output=m),h&&(b.policyServer=h),f&&(b.queueMaxWaitTime=f);var k=He(function(){return Promise.resolve(x(P,{method:"POST",body:JSON.stringify(b),headers:{"Content-Type":"application/json",Authorization:v.getAuthorization(t)},signal:d})).then(function(e){w=e})},function(e){throw W.error("Compute start failed:"),W.error(e),W.error("Payload was:",b),new Error("HTTP request failed calling Provider")});return k&&k.then?k.then(g):g()})})}):(W.error("Compute start failed: Cannot get proper computeStart route (perhaps not implemented on provider?)"),null)})})}catch(e){return Promise.reject(e)}},t.freeComputeStart=function(e,t,r,n,o,i,s,a,c,u,l,m){try{var h=this;return console.log("called new free compute start method..."),console.log("datasets: ",n),console.log("algorithm: ",o),Promise.resolve(h.getEndpoints(e)).then(function(d){return Promise.resolve(h.getServiceEndpoints(e,d)).then(function(f){var v=h.getEndpointURL(f,"freeCompute")?h.getEndpointURL(f,"freeCompute").urlPath:null;return v?Promise.resolve(h.getConsumerAddress(t)).then(function(g){return Promise.resolve(h.getNonce(e,g,l,d,f)).then(function(e){var d=(e+1).toString(),f=d;return console.log("signatureMessage: ",f),Promise.resolve(h.getSignature(t,f)).then(function(e){function f(e){var t;function r(e){return t?e:Promise.resolve(p.json()).then(function(e){throw W.error("Compute start failed: ",p.status,p.statusText,e),W.error("Payload was:",P),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=p)&&e.ok)return Promise.resolve(p.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var p,P=Object();P.consumerAddress=g,P.signature=e,P.nonce=d,P.environment=r,P.resources=i,P.dataset=n[0],P.datasets=n,P.algorithm=o,s&&(P.metadata=s),a&&(P.additionalViewers=a),P.output=c,u&&(P.policyServer=u),m&&(P.queueMaxWaitTime=m);var y=He(function(){return Promise.resolve(x(v,{method:"POST",body:JSON.stringify(P),headers:{"Content-Type":"application/json",Authorization:h.getAuthorization(t)},signal:l})).then(function(e){p=e})},function(e){throw W.error("Compute start failed:"),W.error(e),W.error("Payload was:",P),new Error("HTTP request failed calling Provider")});return y&&y.then?y.then(f):f()})})}):(W.error("Compute start failed: Cannot get proper computeStart route (perhaps not implemented on provider?)"),null)})})}catch(e){return Promise.reject(e)}},t.computeStreamableLogs=function(e,t,r,n){try{var o=this,i="string"==typeof t;return Promise.resolve(o.getEndpoints(e)).then(function(s){return Promise.resolve(o.getServiceEndpoints(e,s)).then(function(a){var c=o.getEndpointURL(a,"computeStreamableLogs")?o.getEndpointURL(a,"computeStreamableLogs").urlPath:null;return c?Promise.resolve(o.getConsumerAddress(t)).then(function(u){return Promise.resolve(o.getNonce(e,u,n,s,a)).then(function(e){function s(){var e;function r(t){var r,n;if(null!=(r=e)&&r.ok||200===(null==(n=e)?void 0:n.status))return console.log("Response body:",e.body),e.body;var o=W.error,i=e.statusText,s=e.status;return Promise.resolve(e.json()).then(function(e){return o.call(W,"computeStreamableLogs failed: ",s,i,e),null})}var i=He(function(){return Promise.resolve(x(c+l,{method:"GET",headers:{"Content-Type":"application/json",Authorization:o.getAuthorization(t)},signal:n})).then(function(t){e=t,console.log("Raw response:",e)})},function(e){throw W.error("computeStreamableLogs failed:"),W.error(e),new Error("HTTP request failed calling Provider")});return i&&i.then?i.then(r):r()}var a=(e+1).toString(),l="?consumerAddress="+u+"&jobId="+r,m=function(){if(!i)return Promise.resolve(o.getSignature(t,""+u+r+a)).then(function(e){l+="&signature="+e,l+="&nonce="+a})}();return m&&m.then?m.then(s):s()})}):(W.error("Compute start failed: Cannot get proper computeStreamableLogs route (perhaps not implemented on provider?)"),null)})})}catch(e){return Promise.reject(e)}},t.getComputeStartRoutes=function(e,t){void 0===t&&(t=!1);try{var r=this;return Promise.resolve(r.getEndpoints(e)).then(function(n){return Promise.resolve(r.getServiceEndpoints(e,n)).then(function(e){return t?r.getEndpointURL(e,"freeCompute")?r.getEndpointURL(e,"freeCompute").urlPath:null:r.getEndpointURL(e,"computeStart")?r.getEndpointURL(e,"computeStart").urlPath:null})})}catch(e){return Promise.reject(e)}},t.computeStop=function(e,t,r,n,o){try{var i=this,s="string"==typeof r;return Promise.resolve(i.getEndpoints(t)).then(function(a){return Promise.resolve(i.getServiceEndpoints(t,a)).then(function(c){var u=i.getEndpointURL(c,"computeStop")?i.getEndpointURL(c,"computeStop").urlPath:null;return Promise.resolve(i.getConsumerAddress(r)).then(function(l){return Promise.resolve(i.getNonce(t,l,o,a,c)).then(function(t){var a=(t+1).toString();return Promise.resolve(i.getSignature(r,l+(e||""))).then(function(t){function c(e){var t;function r(e){return t?e:Promise.resolve(h.json()).then(function(e){throw W.error("Compute stop failed: ",h.status,h.statusText,e),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=h)&&e.ok)return Promise.resolve(h.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var m=new URLSearchParams;m.set("consumerAddress",l),m.set("nonce",a),m.set("jobId",e),s||m.set("signature",t),n&&m.set("agreementId",n);var h,d=m.toString();if(!d)return null;var f=He(function(){return Promise.resolve(x(u+"?"+d,{method:"PUT",headers:{"Content-Type":"application/json",Authorization:i.getAuthorization(r)},signal:o})).then(function(e){h=e})},function(e){throw W.error("Compute stop failed:"),W.error(e),new Error("HTTP request failed calling Provider")});return f&&f.then?f.then(c):c()})})})})})}catch(e){return Promise.reject(e)}},t.computeStatus=function(e,t,r,n,o,i){try{var s=this;return Promise.resolve(s.getEndpoints(e)).then(function(a){return Promise.resolve(s.getServiceEndpoints(e,a)).then(function(e){function a(e){var t;function r(e){var r;if(t)return e;function n(e){return r?e:Promise.resolve(c.json()).then(function(e){throw W.error("Get compute status failed:",c.status,c.statusText,e),new Error(JSON.stringify(e))})}W.error("Get compute status failed:",c.status,c.statusText);var o=function(e){if(null!=(e=c)&&e.ok)return Promise.resolve(c.json()).then(function(e){return r=1,e})}();return o&&o.then?o.then(n):n(o)}var n=function(e){if(null!=(e=c)&&e.ok)return Promise.resolve(c.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var c,u=s.getEndpointURL(e,"computeStatus")?s.getEndpointURL(e,"computeStatus").urlPath:null,l="?consumerAddress="+t;if(l+=n&&"&agreementId="+n||"",l+=r&&"&jobId="+r||"",!u)return null;var m=He(function(){return console.log("computeStatusUrl: ",u+l),Promise.resolve(x(u+l,{method:"GET",headers:{"Content-Type":"application/json",Authorization:i},signal:o})).then(function(e){c=e})},function(e){throw W.error("Get compute status failed"),W.error(e),new Error(e)});return m&&m.then?m.then(a):a()})})}catch(e){return Promise.reject(e)}},t.getComputeResultUrl=function(e,t,r,n){try{var o=this,i="string"==typeof t;return Promise.resolve(o.getEndpoints(e)).then(function(s){return Promise.resolve(o.getServiceEndpoints(e,s)).then(function(a){var c=o.getEndpointURL(a,"computeResult")?o.getEndpointURL(a,"computeResult").urlPath:null;return Promise.resolve(o.getConsumerAddress(t)).then(function(u){return Promise.resolve(o.getNonce(e,u,null,s,a)).then(function(e){var s=(e+1).toString(),a=u;return a+=r,a+=n.toString(),a+=s,Promise.resolve(o.getSignature(t,a)).then(function(e){if(!c)return null;var t=c;return t+="?consumerAddress="+u,t+="&jobId="+r,t+="&index="+n.toString(),i||(t+="&nonce="+s,t+="&signature="+e),t})})})})})}catch(e){return Promise.reject(e)}},t.computeDelete=function(e,t,r,n,o){try{var i=this;return Promise.resolve(i.getEndpoints(n)).then(function(s){return Promise.resolve(i.getServiceEndpoints(n,s)).then(function(a){var c=i.getEndpointURL(a,"computeDelete")?i.getEndpointURL(a,"computeDelete").urlPath:null;return Promise.resolve(i.getConsumerAddress(t)).then(function(u){return Promise.resolve(i.getNonce(n,u,o,s,a)).then(function(n){var s=(n+1).toString(),a=u;return a+=r||"",a+=e&&""+i.noZeroX(e)||"",a+=s,Promise.resolve(i.getSignature(t,a)).then(function(n){function s(e){var t;function r(e){return t?e:Promise.resolve(a.json()).then(function(e){throw W.error("Delete compute job failed:",a.status,a.statusText,e),W.error("Payload was:",l),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=a)&&e.ok)return Promise.resolve(a.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var a,l=Object();if(l.documentId=e,l.consumerAddress=u,l.jobId=r,n&&(l.signature=n),!c)return null;var m=He(function(){return Promise.resolve(x(c,{method:"DELETE",body:JSON.stringify(l),headers:{"Content-Type":"application/json",Authorization:i.getAuthorization(t)},signal:o})).then(function(e){a=e})},function(e){throw W.error("Delete compute job failed:"),W.error(e),W.error("Payload was:",l),new Error("HTTP request failed calling Provider")});return m&&m.then?m.then(s):s()})})})})})}catch(e){return Promise.reject(e)}},t.generateAuthToken=function(e,t,r){try{var n=this;return Promise.resolve(e.getAddress()).then(function(o){return Promise.resolve(n.getEndpoints(t)).then(function(i){return Promise.resolve(n.getServiceEndpoints(t,i)).then(function(s){var a=n.getEndpointURL(s,"generateAuthToken").urlPath||null;return Promise.resolve(n.getNonce(t,o,r,i,s)).then(function(t){var i=(t+1).toString();return Promise.resolve(n.signProviderRequest(e,o+i)).then(function(e){return He(function(){return Promise.resolve(x(a,{method:"POST",body:JSON.stringify({address:o,signature:e,nonce:i}),headers:{"Content-Type":"application/json"},signal:r})).then(function(e){if(null==e||!e.ok)throw new Error("Failed to generate auth token: "+e.status+" "+e.statusText);return Promise.resolve(e.json()).then(function(e){return null==e?void 0:e.token})})},function(e){throw W.error("Generate auth token failed:"),W.error(e),new Error("HTTP request failed calling Provider")})})})})})})}catch(e){return Promise.reject(e)}},t.invalidateAuthToken=function(e,t,r,n){try{var o=this;return Promise.resolve(e.getAddress()).then(function(i){return Promise.resolve(o.getEndpoints(r)).then(function(s){return Promise.resolve(o.getServiceEndpoints(r,s)).then(function(a){var c=o.getEndpointURL(a,"invalidateAuthToken").urlPath||null;return Promise.resolve(o.getNonce(r,i,n,s,a)).then(function(r){var s=(r+1).toString();return Promise.resolve(o.signProviderRequest(e,i+s)).then(function(e){return He(function(){return Promise.resolve(x(c,{method:"POST",body:JSON.stringify({address:i,signature:e,token:t,nonce:s}),headers:{"Content-Type":"application/json"},signal:n})).then(function(e){if(null==e||!e.ok)throw new Error("Failed to invalidate auth token: "+e.status+" "+e.statusText);return Promise.resolve(e.json())})},function(e){throw W.error("Generate auth token failed:"),W.error(e),new Error("HTTP request failed calling Provider")})})})})})})}catch(e){return Promise.reject(e)}},t.isValidProvider=function(e,t){try{return Promise.resolve(He(function(){return Promise.resolve(x(e,{method:"GET",headers:{"Content-Type":"application/json"},signal:t})).then(function(e){var t,r=function(){if(null!=e&&e.ok)return Promise.resolve(e.json()).then(function(e){if(e&&(e.providerAddress||e.providerAddresses))return t=!0})}();return r&&r.then?r.then(function(e){return!!t&&e}):!!t&&r})},function(e){return W.error("Error validating provider: "+e.message),!1}))}catch(e){return Promise.reject(e)}},t.PolicyServerPassthrough=function(e,t,r){try{var n=this;return Promise.resolve(n.getEndpoints(e)).then(function(o){return Promise.resolve(n.getServiceEndpoints(e,o)).then(function(e){function o(e){var r;function n(e){return r?e:Promise.resolve(i.json()).then(function(e){throw W.error("PolicyServerPassthrough failed: ",i.status,i.statusText,e),W.error("Payload was:",JSON.stringify(t)),new Error(JSON.stringify(e))})}var o=function(e){if(null!=(e=i)&&e.ok)return Promise.resolve(i.json()).then(function(e){return r=1,e})}();return o&&o.then?o.then(n):n(o)}var i,s=n.getEndpointURL(e,"PolicyServerPassthrough")?n.getEndpointURL(e,"PolicyServerPassthrough").urlPath:null;if(!s)return null;var a=He(function(){return Promise.resolve(x(s,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"},signal:r})).then(function(e){return i=e,function(){if(!i.ok)return Promise.resolve(i.text()).then(function(e){throw new Error(""+e)})}()})},function(e){throw W.error("PolicyServerPassthrough failed: "),W.error(e),new Error("PolicyServerPassthrough failed: "+e.message+".")});return a&&a.then?a.then(o):o()})})}catch(e){return Promise.reject(e)}},t.initializePSVerification=function(e,t,r){try{var n=this;return Promise.resolve(n.getEndpoints(e)).then(function(o){return Promise.resolve(n.getServiceEndpoints(e,o)).then(function(e){function o(e){var r;function n(e){return r?e:Promise.resolve(i.json()).then(function(e){throw W.error("initializePSVerification failed: ",i.status,i.statusText,e),W.error("Payload was:",JSON.stringify(t)),new Error(JSON.stringify(e))})}var o=function(e){if(null!=(e=i)&&e.ok)return Promise.resolve(i.json()).then(function(e){return r=1,e})}();return o&&o.then?o.then(n):n(o)}var i,s=n.getEndpointURL(e,"initializePSVerification")?n.getEndpointURL(e,"initializePSVerification").urlPath:null;if(!s)return null;var a=He(function(){return Promise.resolve(x(s,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"},signal:r})).then(function(e){return i=e,function(){if(!i.ok)return Promise.resolve(i.text()).then(function(e){throw new Error(""+e)})}()})},function(e){throw W.error("initializePSVerification failed: "),W.error(e),new Error("initializePSVerification failed: "+e.message+".")});return a&&a.then?a.then(o):o()})})}catch(e){return Promise.reject(e)}},t.noZeroX=function(e){return this.zeroXTransformer(e,!1)},t.zeroXTransformer=function(e,t){void 0===e&&(e="");var r=this.inputMatch(e,/^(?:0x)*([a-f0-9]+)$/i,"zeroXTransformer");return(t&&r.valid?"0x":"")+r.output},t.inputMatch=function(e,t,r){if("string"!=typeof e)throw W.debug("Not input string:"),W.debug(e),new Error("["+r+"] Expected string, input type: "+typeof e);var n=e.match(t);return n?{valid:!0,output:n[1]}:(W.warn("["+r+"] Input transformation failed."),{valid:!1,output:e})},t.getData=function(e,t){try{return Promise.resolve(x(e,{method:"GET",headers:{"Content-type":"application/json",Authorization:t}}))}catch(e){return Promise.reject(e)}},e}(),Xe=new Ze;function Ke(e,t){return e=l(e),"did:op:"+O(e+t.toString(10)).toString()}function $e(e){return O(e).toString()}var Qe=function(e,t){try{return Promise.resolve(fetch(e)).then(function(r){if(!r.ok)throw new Error("Response error.");var n;try{n=r.headers.get("content-disposition").match(/attachment;filename=(.+)/)[1]}catch(r){try{n=e.split("/").pop()}catch(e){n="file"+t}}return Promise.resolve(r.arrayBuffer()).then(function(e){return{data:e,filename:n}})})}catch(e){return Promise.reject(e)}};function Ye(e){var t=new XMLHttpRequest;t.responseType="blob",t.open("GET",e),t.onload=function(){var e=t.getResponseHeader("content-disposition"),r=null==e?void 0:e.match(/filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/),n=r&&r[1]?r[1]:"file",o=window.URL.createObjectURL(t.response),i=document.createElement("a");i.href=o,i.setAttribute("download",n),document.body.appendChild(i),i.click(),i.remove(),window.URL.revokeObjectURL(o)},t.send()}var et=function(e,t){try{var r=new o.Contract(t,K,e);return Promise.resolve(r.decimals()).then(Number)}catch(e){return Promise.reject(e)}},tt=function(e,t,r,n){try{var i=new o.Contract(t,K,e);return Promise.resolve(i.allowance(r,n))}catch(e){return Promise.reject(e)}},rt=function(e,t,r,n){try{var i=new o.Contract(t,K,e);return Promise.resolve(i.balanceOf(r)).then(function(r){return Promise.resolve(Y(e,t,r,n))})}catch(e){return Promise.reject(e)}},nt=function(e,t,r,n,i){try{var s=new o.Contract(t,K,e);return Promise.resolve(s.allowance(r,n)).then(function(r){return Promise.resolve(Y(e,t,r,i))})}catch(e){return Promise.reject(e)}},ot=function(e,t,r,n,i,s,a){try{var c=new o.Contract(r,K,e);return Promise.resolve(Q(e,r,i,s)).then(function(r){return Promise.resolve(c.transfer.estimateGas(n,r)).then(function(o){return a?o:Promise.resolve($(o,e,null==t?void 0:t.gasFeeMultiplier,c.transfer,n,r))})})}catch(e){return Promise.reject(e)}},it=function(e,t,r,n,i,s,a,c){void 0===a&&(a=!1);try{var u,l=function(r){if(u)return r;var n=null;return Promise.resolve(m.approve.estimateGas(i,s)).then(function(r){if(c)return r;var o=function(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}(function(){return Promise.resolve($(r,e,null==t?void 0:t.gasFeeMultiplier,m.approve,i,s)).then(function(e){n=e})},function(e){W.error("ERROR: Failed to approve spender to spend tokens : "+e.message)});return o&&o.then?o.then(function(){return n}):n})},m=new o.Contract(n,K,e),h=function(){if(!a)return Promise.resolve(tt(e,n,r,i)).then(function(e){if(new v(e).isGreaterThan(new v(s))){var t=BigInt(e);return u=1,t}})}();return Promise.resolve(h&&h.then?h.then(l):l(h))}catch(e){return Promise.reject(e)}},st=function(e,t,r,n,i,s,a,c,u){void 0===a&&(a=!1);try{var l,m=function(r){return l?r:Promise.resolve(Q(e,n,s,c)).then(function(r){return Promise.resolve(h.approve.estimateGas(i,r)).then(function(n){return u?new g(n.toString()):Promise.resolve($(n,e,null==t?void 0:t.gasFeeMultiplier,h.approve,i,r))})})},h=new o.Contract(n,K,e),d=function(){if(!a)return Promise.resolve(nt(e,n,r,i)).then(function(e){if(new g(e).greaterThanOrEqualTo(new g(s))){var t=new g(e).toNumber();return l=1,t}})}();return Promise.resolve(d&&d.then?d.then(m):m(d))}catch(e){return Promise.reject(e)}},at={datasets:{invalid:"Datasets is not a list, as expected"},algorithm:{serviceId:{missing:"The serviceId key is missing from the algorithm s DDO.",not_found:"The provided serviceId does not exist.",service_not_access_compute:"Service type is neither access, nor compute.",main_service_compute:"If the main service is not compute for this asset when calling initialize endpoint.",compute_services_not_in_same_provider:"Files attached to the compute service are not decrypted by the correct provider. This occurs when both asset and algorithm are requested by their compute service which cannot be decrypted by a single provider as how it is supposed to be."},container:{checksum_prefix:"Container checksum does not start with the prefix sha256:.",mising_entrypoint_image_checksum:"Either entrypoint, either image, or either checksum are missing from the container dictionary from the algorithm s DDO."},documentId:{did_not_found:"The algorithm s DID could not be retrieved from the metadata store, because the algorithm asset does not exist.",missing:"The documentId key is missing from the algorithm s DDO."},transferTxId:{missing:"The transferTxId key is missing from the algorithm s DDO."},missing_meta_documentId:"Either algorithm metadata, or algorithm DID are missing.",did_not_found:"Either algorithm metadata, or algorithm DID are missing.",not_algo:"Either algorithm metadata, or algorithm DID are missing.",in_use_or_not_on_chain:"Either algorithm metadata, or algorithm DID are missing.",meta_oneof_url_rawcode_remote:"Either algorithm metadata, or algorithm DID are missing.",file_unavailable:"One possibility is that the asset could not be retrieved from Aquariuss database. Otherwise, there are issues related to services"},error:{not_trusted_algo_publisher:"The owner of the algorithm's DDO is not a trusted algorithms publishers list.",not_trusted_algo:"The algorithm's DID is not in the asset's trusted algorithms dictionary. ",no_publisherTrustedAlgorithms:"The algorithm's key publisherTrustedAlgorithms does not exist in the algorithm's DDO.",algorithm_file_checksum_mismatch:"filesChecksum from the algorithm's DDO is invalid.",algorithm_container_checksum_mismatch:"The containerChecksum from the algorithm's DDO is invalid.",no_raw_algo_allowed:"The asset does not allow raw algorithms to be run on it.","Asset malformed":"The asset published on chain is malformed, missing some required keys or not compliant with our schemas.","Asset is not consumable.":"Assets metadata status is not in the range of valid status codes for assets. The recognized states for the metadata are defined on our docs.","DID is not a valid algorithm.":"Either the algorithm assets DID is incorrectly typed, either the algorithm timeout expired.","Compute environment does not exist.":"The compute environment provided by the user does not exist, it is not served by our compute-to-data feature. The user can use get_c2d_environments to check the list of available compute environments.","The validUntil value is not correct.":"validUntil value is most probably expired.","Cannot resolve DID":"The dataset DID does not exist in the Metadata store.","Invalid serviceId":"The serviceId of that dataset is not correct.","Unable to get dataset files":"The files of that dataset could not be decrypted or retrieved","cannot decrypt files for this service.":"The files of that dataset could not be decrypted due to the fact that file object, which contains the structure and the type of specific file, is missing from the validation part.","Unsupported type ":"The file object type is not supported by Provider.","malformed file object":"The file object structure is invalid and does not contain the wanted information for the specific file."},order:{fees_not_paid:" Provider fees are not paid."},output:{invalid:"The algorithms validation after the build stage has not been decoded properly as a dictionary."}};function ct(e){try{var t=JSON.parse(e),r=Object.keys(t)[0];if("error"===r){var n,o=t[r];return(null==(n=at[r])?void 0:n[o])||"Provider request failed: "+o}var i=t[r];return t[Object.keys(t)[1]]+" : "+i}catch(t){return W.error("[getErrorMessage] error: ",t),e}}function ut(e,t,r){if(!e.s){if(r instanceof lt){if(!r.s)return void(r.o=ut.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(ut.bind(null,e,t),ut.bind(null,e,2));e.s=t,e.v=r;var n=e.o;n&&n(e)}}var lt=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,r){var n=new e,o=this.s;if(o){var i=1&o?t:r;if(i){try{ut(n,1,i(this.v))}catch(e){ut(n,2,e)}return n}return this}return this.o=function(e){try{var o=e.v;1&e.s?ut(n,1,t?t(o):o):r?ut(n,1,r(o)):ut(n,2,o)}catch(e){ut(n,2,e)}},n},e}(),mt=function(e,t,r,n,o,i,s,a,c,u,l,m){void 0===c&&(c="0"),void 0===u&&(u=0),void 0===l&&(l=0),void 0===m&&(m=0);try{var h=D.getDDOClass(e),d=h.getAssetFields().datatokens,f=h.getDDOFields(),v=f.chainId,p=f.services;return s||(s={consumeMarketFeeAddress:"0x0000000000000000000000000000000000000000",consumeMarketFeeAmount:"0",consumeMarketFeeToken:"0x0000000000000000000000000000000000000000"}),Promise.resolve(t.provider.getNetwork()).then(function(h){if(v!==Number(h.chainId))throw new Error("Chain ID from DDO is different than the configured network.");if(!d[u].address)throw new Error("The datatoken with index: "+u+" does not exist for the asset with did: "+e.id);if(!p[l].id)throw new Error("There is no service with index: "+l+" defined for the asset with did: "+e.id);return Promise.resolve(n.getId(d[u].address)).then(function(h){return Promise.resolve(n.getFixedRates(d[u].address)).then(function(f){return Promise.resolve(n.getDispensers(d[u].address)).then(function(v){return Promise.resolve(n.getPublishingMarketFee(d[u].address)).then(function(P){function y(e){return a?e:Promise.resolve(k.call(Xe,S,T,0,e,o||r.oceanNodeUri)).then(w)}function w(o){function v(o){function a(o){var i,a={consumer:o,serviceIndex:l,_providerFee:y,_consumeMarketFee:s};return function(e,t){var r,n=-1;e:{for(var o=0;o<t.length;o++){var i=t[o][0];if(i){var s=i();if(s&&s.then)break e;if(s===e){n=o;break}}else n=o}if(-1!==n){do{for(var a=t[n][1];!a;)n++,a=t[n][1];var c=a();if(c&&c.then){r=!0;break e}var u=t[n][2];n++}while(u&&!u());return c}}var l=new lt,m=ut.bind(null,l,2);return(r?c.then(h):s.then(function r(s){for(;;){if(s===e){n=o;break}if(++o===t.length){if(-1!==n)break;return void ut(l,1,c)}if(i=t[o][0]){if((s=i())&&s.then)return void s.then(r).then(void 0,m)}else n=o}do{for(var a=t[n][1];!a;)n++,a=t[n][1];var c=a();if(c&&c.then)return void c.then(h).then(void 0,m);var u=t[n][2];n++}while(u&&!u());ut(l,1,c)})).then(void 0,m),l;function h(e){for(;;){var r=t[n][2];if(!r||r())break;n++;for(var o=t[n][1];!o;)n++,o=t[n][1];if((e=o())&&e.then)return void e.then(h).then(void 0,m)}ut(l,1,e)}}(b,[[function(){return"free"},function(){var e=function(e){var t;if(i)return e;function o(e){if(t)return e}var s=function(){if(2===h||4===h)return Promise.resolve(n.buyFromDispenserAndOrder(p[l].datatokenAddress,a,r.dispenserAddress)).then(function(e){return t=1,e})}();return s&&s.then?s.then(o):o(s)},o=function(){if(1===h){var e=new he(r.dispenserAddress,t),o=e.dispense,s=d[u].address;return Promise.resolve(t.getAddress()).then(function(t){return Promise.resolve(o.call(e,s,"1",t)).then(function(e){if(!e)throw new Error("Failed to dispense !");return Promise.resolve(e.wait()).then(function(){return Promise.resolve(n.startOrder(d[u].address,a.consumer,a.serviceIndex,a._providerFee,a._consumeMarketFee)).then(function(e){return i=1,e})})})})}}();return o&&o.then?o.then(e):e(o)}],[function(){return"fixed"},function(){var o=new pe(r.fixedRateExchangeAddress,t);if(!f[m].id)throw new Error("There is no fixed rate exchange with index: "+l+" for the asset with did: "+e.id);return Promise.resolve(o.getFeesInfo(f[m].id)).then(function(e){return Promise.resolve(o.getExchange(f[m].id)).then(function(i){return Promise.resolve(o.calcBaseInGivenDatatokensOut(e.exchangeId,"1",s.consumeMarketFeeAmount)).then(function(l){var m;function f(e){var o;if(m)return e;function s(e){if(o)return e}var c=function(){if(2===h||4===h)return Promise.resolve(t.getAddress()).then(function(e){return Promise.resolve(st(t,r,e,i.baseToken,d[u].address,v,!1)).then(function(e){function t(e){if(!e)throw new Error("Failed to confirm/mine approval transaction!");return Promise.resolve(n.buyFromFreAndOrder(d[u].address,a,p)).then(function(e){return o=1,e})}if(!e)throw new Error("Failed to approve "+i.baseToken+" !");return"number"!=typeof e?Promise.resolve("number"!=typeof e?e.wait():e).then(t):t("number"!=typeof e?e.wait():e)})})}();return c&&c.then?c.then(s):s(c)}var v=new g(+l.baseTokenAmount||0).add(new g(s.consumeMarketFeeAmount||0)).add(new g(+P.publishMarketFeeAmount||0)).toString(),p={exchangeContract:r.fixedRateExchangeAddress,exchangeId:e.exchangeId,maxBaseTokenAmount:v,baseTokenAddress:i.baseToken,baseTokenDecimals:parseInt(i.btDecimals)||18,swapMarketFee:c,marketFeeAddress:P.publishMarketFeeAddress},y=function(){if(1===h)return Promise.resolve(t.getAddress()).then(function(e){return Promise.resolve(st(t,r,e,i.baseToken,r.fixedRateExchangeAddress,v,!1)).then(function(e){function t(e){if(!e)throw new Error("Failed to approve "+i.baseToken+" !");return Promise.resolve(o.buyDatatokens(i.exchangeId,"1",v,P.publishMarketFeeAddress,c)).then(function(e){return Promise.resolve(e.wait()).then(function(e){if(!e)throw new Error("Failed to buy datatoken from fixed rate!");return Promise.resolve(n.startOrder(d[u].address,a.consumer,a.serviceIndex,a._providerFee,a._consumeMarketFee)).then(function(e){return m=1,e})})})}return"number"!=typeof e?Promise.resolve("number"!=typeof e?e.wait():e).then(t):t("number"!=typeof e?e.wait():e)})})}();return y&&y.then?y.then(f):f(y)})})})}],[void 0,function(){throw new Error("Pricing schema not supported !")}]])}return i?a(i):Promise.resolve(t.getAddress()).then(a)}var y=a||o.providerFee,w=function(){if(y&&y.providerFeeAddress!==de&&y.providerFeeAmount&&parseInt(y.providerFeeAmount)>0)return function(e,n){try{var o=Promise.resolve(t.getAddress()).then(function(e){return Promise.resolve(it(t,r,e,y.providerFeeToken,p[0].datatokenAddress,y.providerFeeAmount)).then(function(){})})}catch(e){return n()}return o&&o.then?o.then(void 0,n):o}(0,function(){throw new Error("Failed to approve provider fee token "+y.providerFeeToken)})}();return w&&w.then?w.then(v):v()}var b=f.length>0?"fixed":v.length>0?"free":"NOT_ALLOWED",k=a||Xe.initialize,T=a||p[l].id,S=a||e.id;return a?y(w(a)):Promise.resolve(t.getAddress()).then(y)})})})})})}catch(e){return Promise.reject(e)}};function ht(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}var dt=function(e,t,r){try{var n=new o.Contract(e,F.abi,t);return Promise.resolve(t.getAddress()).then(function(e){var t,o=ht(function(){return Promise.resolve(n.deployAccessListContract("AllowList","ALLOW",!0,e,r||[e],["https://oceanprotocol.com/nft/"])).then(function(e){return function(){if(e&&e.wait)return Promise.resolve(e.wait()).then(function(e){var r=ue(e,"NewAccessList");return t=1,r.args[0]})}()})},function(e){console.log("ERROR createAccessListFactory(): ",e)});return o&&o.then?o.then(function(e){return t?e:null}):t?o:null})}catch(e){return Promise.reject(e)}},ft=function(e,t,r,n,i,a,u,l,m,h,f,v,g,p,P){void 0===u&&(u=!0);try{var y,w,b=this,k=D.getDDOClass(a),T=k.getAssetFields().indexedMetadata,S=(null==(y=k.getDDOData())||null==(y=y.stats)||null==(y=y.price)?void 0:y.value)||(null==T||null==(w=T.stats[0])||null==(w=w.prices[0])?void 0:w.price),E=k.getDDOFields(),F=E.chainId,C=E.nftAddress,j=k.getDDOFields().services;if("string"!=typeof i&&"number"!=typeof i)throw new Error('Invalid template! Must be a "number" or a "string"');return Promise.resolve(r.provider.getNetwork()).then(function(y){var w=y.chainId;if(F&&F!==Number(w))throw new Error("Chain ID from DDO is different than the configured network.");var T=(new X).getConfig(parseInt(String(w)));return Promise.resolve(Ee(r,T.nftFactoryAddress,i,Number(w))).then(function(i){if(i<1){if(Number(w)!==vt)throw new Error("Invalid template index: "+i);i=1}var y=new je(r,Number(w)),E=new ke(T.nftFactoryAddress,r,Number(w));return Promise.resolve(r.getAddress()).then(function(x){var D,M;function O(e){return M?e:Promise.resolve(U.wait()).then(function(e){var t;function i(e){if(t)return e;function o(){function e(){var e=y.setMetadata,i=C;return Promise.resolve(r.getAddress()).then(function(r){return Promise.resolve(e.call(y,i,r,0,l,"",d(o),t,n)).then(function(){return a.id})})}j[0].datatokenAddress=g,j[0].serviceEndpoint=l;var t,n,o,i=k.makeDid(C=v,F.toString());a=k.updateFields({id:i,nftAddress:C});var s=function(){if(u)return Promise.resolve(Xe.encrypt(a,Number(w),l,r,null)).then(function(e){return t=e,Promise.resolve(h.validate(a,r,l)).then(function(e){n=e.hash,o=2})});var e=JSON.stringify(a),i=Buffer.from(e);t=c(i),n="0x"+N("sha256").update(t).digest("hex"),o=0}();return s&&s.then?s.then(e):e()}var i=function(){if("oasis"!==T.sdk)return Promise.resolve(Xe.encrypt(n,Number(w),l,r,null)).then(function(e){j[0].files=e});j[0].files=""}();return i&&i.then?i.then(o):o()}var m=ue(e,"NFTCreated"),f=ue(e,"TokenCreated"),v=m.args.newTokenAddress,g=f.args.newTokenAddress;n.datatokenAddress=g,n.nftAddress=v;var p=function(){if("oasis"===T.sdk){var e=new o.Contract(g,A.abi,r);return ht(function(){return Promise.resolve(e.setFilesObject(s(JSON.stringify(n)))).then(function(e){var t=function(){if(e.wait)return Promise.resolve(e.wait()).then(function(){})}();if(t&&t.then)return t.then(function(){})})},function(e){return console.log("Error updating files object with data token and nft addresses: ",e),t=1,null})}}();return p&&p.then?p.then(i):i(p)})}var U,I={name:e,symbol:t,templateIndex:1,tokenURI:"aaa",transferable:!0,owner:x},L={templateIndex:i,cap:"100000",feeAmount:"0",paymentCollector:x,feeToken:m||T.oceanTokenAddress,minter:x,mpFeeAddress:de};null!=n&&n.files[0].type&&[R.ARWEAVE,R.IPFS,R.URL].includes(null==n||null==(D=n.files[0])||null==(D=D.type)?void 0:D.toLowerCase())||(console.log('Missing or invalid files object type, defaulting to "url"'),n.type=R.URL),"oasis"===T.sdk&&(L.filesObject=n,L.accessListFactory=f||T.accessListFactory,L.allowAccessList=v,L.denyAccessList=g);var G=ht(function(){var e=function(){if(!S)return Promise.resolve(E.createNftWithDatatoken(I,L)).then(function(e){U=e});var e=function(){if("0"===S.toString())return Promise.resolve(E.createNftWithDatatokenWithDispenser(I,L,{dispenserAddress:T.dispenserAddress,maxTokens:"1",maxBalance:"100000000",withMint:!0,allowedSwapper:de})).then(function(e){U=e});var e=p||T.oceanTokenAddress;return Promise.resolve(ee(b.signer,e)).then(function(t){P||(P=t);var r={fixedRateAddress:T.fixedRateExchangeAddress,baseTokenAddress:e,owner:x,marketFeeCollector:x,baseTokenDecimals:P,datatokenDecimals:18,fixedRate:S.toString(),marketFee:"0",allowedConsumer:x,withMint:!0};return Promise.resolve(E.createNftWithDatatokenWithFixedRate(I,L,r)).then(function(e){U=e})})}();return e&&e.then?e.then(function(){}):void 0}();if(e&&e.then)return e.then(function(){})},function(e){return console.log("ERROR creating NFT bundle",e),M=1,null});return G&&G.then?G.then(O):O(G)})})})}catch(e){return Promise.reject(e)}},vt=8996;function gt(e){var t=(new X).getConfig(e);return t&&"oasis"===t.sdk}export{Me as AccessListContract,Oe as AccesslistFactory,Ve as Aquarius,L as Config,X as ConfigHelper,vt as DEVELOPMENT_CHAIN_ID,xe as Datatoken,De as Datatoken4,he as Dispenser,U as EncryptMethod,Ie as EnterpriseFeeCollectorContract,Ue as EscrowContract,ge as FEE_HISTORY_NOT_SUPPORTED,R as FileObjectType,pe as FixedRateExchange,fe as GASLIMIT_DEFAULT,Z as KNOWN_CONFIDENTIAL_EVMS,I as LogLevel,J as Logger,W as LoggerInstance,ve as MAX_UINT_256,je as Nft,ke as NftFactory,Ze as Provider,Xe as ProviderInstance,Pe as Router,le as SmartContract,me as SmartContractWithAddress,de as ZERO_ADDRESS,nt as allowance,tt as allowanceWei,Q as amountToUnits,st as approve,it as approveWei,rt as balance,Ee as calculateActiveTemplateIndex,H as configHelperNetworks,dt as createAccessListFactory,ft as createAsset,et as decimals,Qe as downloadFile,Ye as downloadFileBrowser,Ke as generateDid,we as generateDtName,ct as getErrorMessage,ue as getEventFromTx,te as getFairGasPrice,$e as getHash,Fe as getOceanArtifactsAddresses,Ce as getOceanArtifactsAddressesByChainId,ee as getTokenDecimals,Ge as isDefined,K as minAbi,mt as orderAsset,$ as sendTx,ce as setContractDefaults,ze as signHash,_e as signRequest,Le as sleep,ot as transfer,Y as unitsToAmount,gt as useOasisSDK};
1
+ import e from"@oceanprotocol/contracts/addresses/address.json";import t from"fs";import{parseUnits as r,formatUnits as n,ethers as o,EventLog as i,toUtf8Bytes as s,keccak256 as a,hexlify as c,toUtf8String as u,getAddress as l,parseEther as m,getBytes as h,toBeHex as d}from"ethers";import*as f from"@oasisprotocol/sapphire-paratime";import v from"bignumber.js";import g from"decimal.js";import p from"@oceanprotocol/contracts/artifacts/contracts/pools/dispenser/Dispenser.sol/Dispenser.json";import P from"@oceanprotocol/contracts/artifacts/contracts/pools/fixedRate/FixedRateExchange.sol/FixedRateExchange.json";import y from"@oceanprotocol/contracts/artifacts/contracts/pools/FactoryRouter.sol/FactoryRouter.json";import w from"@oceanprotocol/contracts/artifacts/contracts/templates/ERC20Template.sol/ERC20Template.json";import b from"@oceanprotocol/contracts/artifacts/contracts/templates/ERC20TemplateEnterprise.sol/ERC20TemplateEnterprise.json";import k from"@oceanprotocol/contracts/artifacts/contracts/templates/ERC721Template.sol/ERC721Template.json";import T from"@oceanprotocol/contracts/artifacts/contracts/ERC721Factory.sol/ERC721Factory.json";import S from"@oceanprotocol/contracts/artifacts/contracts/interfaces/IERC20Template.sol/IERC20Template.json";import E from"@oceanprotocol/contracts/artifacts/contracts/templates/ERC20Template4.sol/ERC20Template4.json";import A from"@oceanprotocol/contracts/artifacts/contracts/accesslists/AccessList.sol/AccessList.json";import F from"@oceanprotocol/contracts/artifacts/contracts/accesslists/AccessListFactory.sol/AccessListFactory.json";import C from"@oceanprotocol/contracts/artifacts/contracts/escrow/Escrow.sol/Escrow.json";import j from"@oceanprotocol/contracts/artifacts/contracts/communityFee/EnterpriseFeeCollector.sol/EnterpriseFeeCollector.json";import x from"cross-fetch";import{DDOManager as D}from"@oceanprotocol/ddo-js";import M from"jsonwebtoken";import O from"crypto-js/sha256.js";import{createHash as N}from"crypto";var R,U;!function(e){e.URL="url",e.IPFS="ipfs",e.ARWEAVE="arweave"}(R||(R={})),function(e){e.AES="AES",e.ECIES="ECIES"}(U||(U={}));var I,L=function(){this.nodeUri=void 0,this.providerAddress=void 0,this.oceanNodeUri=void 0,this.web3Provider=void 0,this.oceanTokenAddress=void 0,this.nftFactoryAddress=void 0,this.routerFactoryAddress=void 0,this.datatokensABI=void 0,this.fixedRateExchangeAddress=void 0,this.fixedRateExchangeAddressABI=void 0,this.dispenserAddress=void 0,this.dispenserABI=void 0,this.opfCommunityFeeCollector=void 0,this.EnterpriseFeeCollector=void 0,this.sideStakingAddress=void 0,this.startBlock=void 0,this.verbose=void 0,this.authMessage=void 0,this.authTokenExpiration=void 0,this.parityUri=void 0,this.threshold=void 0,this.chainId=void 0,this.network=void 0,this.explorerUri=void 0,this.oceanTokenSymbol=void 0,this.transactionBlockTimeout=void 0,this.transactionConfirmationBlocks=void 0,this.transactionPollingTimeout=void 0,this.gasFeeMultiplier=void 0,this.sdk=void 0,this.accessListFactory=void 0,this.escrow=void 0};function G(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function _(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(r)return(r=r.call(e)).next.bind(r);if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return G(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?G(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function z(){return z=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},z.apply(null,arguments)}function B(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,q(e,t)}function q(e,t){return q=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},q(e,t)}!function(e){e[e.None=-1]="None",e[e.Error=0]="Error",e[e.Warn=1]="Warn",e[e.Log=2]="Log",e[e.Verbose=3]="Verbose"}(I||(I={}));var J=/*#__PURE__*/function(){function e(e){this.logLevel=void 0,this.logLevel=e,this.logLevel=e||I.Error}var t=e.prototype;return t.setLevel=function(e){this.logLevel=e},t.bypass=function(){this.dispatch.apply(this,["log",-Infinity].concat([].slice.call(arguments)))},t.debug=function(){this.dispatch.apply(this,["debug",I.Verbose].concat([].slice.call(arguments)))},t.log=function(){this.dispatch.apply(this,["log",I.Log].concat([].slice.call(arguments)))},t.warn=function(){this.dispatch.apply(this,["warn",I.Warn].concat([].slice.call(arguments)))},t.error=function(){this.dispatch.apply(this,["error",I.Error].concat([].slice.call(arguments)))},t.dispatch=function(e,t){var r;this.logLevel>=t&&(r=console)[e].apply(r,[].slice.call(arguments,2))},e}(),W=new J,V={chainId:null,network:"unknown",nodeUri:"http://127.0.0.1:8545",oceanNodeUri:"http://127.0.0.1:8001",explorerUri:null,oceanTokenAddress:null,oceanTokenSymbol:"OCEAN",fixedRateExchangeAddress:null,dispenserAddress:null,startBlock:0,transactionBlockTimeout:50,transactionConfirmationBlocks:1,transactionPollingTimeout:750,gasFeeMultiplier:1},H=[z({},V),z({},V,{chainId:8996,network:"development",oceanNodeUri:"http://127.0.0.1:8001",sdk:"evm"}),z({},V,{chainId:11155111,network:"sepolia",nodeUri:"https://sepolia.infura.io/v3",explorerUri:"https://sepolia.etherscan.io",gasFeeMultiplier:1.1,sdk:"evm"}),z({},V,{chainId:1,network:"mainnet",nodeUri:"https://mainnet.infura.io/v3",explorerUri:"https://etherscan.io",startBlock:11105459,transactionBlockTimeout:150,transactionConfirmationBlocks:5,transactionPollingTimeout:1750,gasFeeMultiplier:1.05,sdk:"evm"}),z({},V,{chainId:8453,network:"base",nodeUri:"https://mainnet.base.org",explorerUri:"https://etherscan.io",startBlock:30562198,transactionBlockTimeout:150,transactionConfirmationBlocks:5,transactionPollingTimeout:1750,gasFeeMultiplier:1.05,sdk:"evm"}),z({},V,{chainId:137,network:"polygon",nodeUri:"https://polygon-mainnet.infura.io/v3",explorerUri:"https://polygonscan.com",oceanTokenSymbol:"mOCEAN",gasFeeMultiplier:1.6,sdk:"evm"}),z({},V,{chainId:2021e3,network:"gaiaxtestnet",nodeUri:"https://rpc.gaiaxtestnet.oceanprotocol.com",explorerUri:"https://blockscout.gaiaxtestnet.oceanprotocol.com",sdk:"evm"}),z({},V,{chainId:80001,network:"mumbai",nodeUri:"https://polygon-mumbai.infura.io/v3",explorerUri:"https://mumbai.polygonscan.com",gasFeeMultiplier:1.1,sdk:"evm"}),z({},V,{chainId:56,network:"bsc",nodeUri:"https://bsc-dataseed.binance.org",explorerUri:"https://bscscan.com/",gasFeeMultiplier:1.05,sdk:"evm"}),z({},V,{chainId:246,network:"energyweb",nodeUri:"https://rpc.energyweb.org",explorerUri:"https://explorer.energyweb.org",gasFeeMultiplier:1.05,sdk:"evm"}),z({},V,{chainId:1285,network:"moonriver",nodeUri:"https://moonriver.api.onfinality.io/public",explorerUri:"https://moonriver.moonscan.io/",gasFeeMultiplier:1.05,sdk:"evm"}),z({},V,{chainId:100,network:"gen-x-testnet",nodeUri:"https://rpc.genx.minimal-gaia-x.eu",explorerUri:"https://explorer.genx.minimal-gaia-x.eu/",gasFeeMultiplier:1,sdk:"evm"}),z({},V,{chainId:10,network:"optimism",nodeUri:"https://mainnet.optimism.io",explorerUri:"https://optimistic.etherscan.io/",gasFeeMultiplier:1.1,sdk:"evm"}),z({},V,{chainId:11155420,network:"optimism_sepolia",nodeUri:"https://sepolia.optimism.io",explorerUri:"https://sepolia-optimism.etherscan.io/",gasFeeMultiplier:1.1,sdk:"evm"}),z({},V,{chainId:23294,network:"oasis_sapphire",nodeUri:"https://sapphire.oasis.io",explorerUri:"https://explorer.oasis.io/mainnet/sapphire/",gasFeeMultiplier:1,sdk:"oasis"}),z({},V,{chainId:23295,network:"oasis_sapphire_testnet",nodeUri:"https://testnet.sapphire.oasis.dev",explorerUri:"https://explorer.oasis.io/testnet/sapphire/",gasFeeMultiplier:1,sdk:"oasis"}),z({},V,{chainId:32456,network:"pontus-x-devnet",nodeUri:"https://rpc.dev.pontus-x.eu",explorerUri:"https://explorer.dev.pontus-x.eu/testnet/pontusx",sdk:"evm"})],Z=[23294,23295],X=/*#__PURE__*/function(){function r(){}var n=r.prototype;return n.getAddressesFromEnv=function(t,r){var n,o=function(){return process.env.NODE_URL?{oceanNodeUri:process.env.NODE_URL}:{}};if(r&&r[t]){var i=r[t];n=z({nftFactoryAddress:i.ERC721Factory,opfCommunityFeeCollector:i.OPFCommunityFeeCollector,fixedRateExchangeAddress:i.FixedPrice,dispenserAddress:i.Dispenser,oceanTokenAddress:i.Ocean,routerFactoryAddress:i.Router,chainId:i.chainId,startBlock:i.startBlock,accessListFactory:i.AccessListFactory,escrow:i.Escrow,EnterpriseFeeCollector:i.EnterpriseFeeCollector},o())}else if(e[t]){var s=e[t];n=z({nftFactoryAddress:s.ERC721Factory,opfCommunityFeeCollector:s.OPFCommunityFeeCollector,fixedRateExchangeAddress:s.FixedPrice,dispenserAddress:s.Dispenser,oceanTokenAddress:s.Ocean,routerFactoryAddress:s.Router,chainId:s.chainId,startBlock:s.startBlock,accessListFactory:s.AccessListFactory,escrow:s.Escrow,EnterpriseFeeCollector:s.EnterpriseFeeCollector},o())}return n},n.getConfig=function(e,r){var n,o="string"==typeof e?"network":"chainId",i=H.find(function(t){return t[o]===e});if(!i)return W.error("No config found for given network '"+e+"'"),null;try{n=process.env.ADDRESS_FILE?JSON.parse(t.readFileSync(process.env.ADDRESS_FILE,"utf8")):null}catch(e){console.log(e),n=null}var s=this.getAddressesFromEnv(i.network,n);return!s&&Z.includes(i.chainId)&&(s=this.getAddressesFromEnv(i.network.replace("sapph","saph"),n)),"sdk"in i&&null!==i.sdk||(i.sdk=Z.includes(i.chainId)?"oasis":"evm"),s&&"accessListFactory"in s&&(i.accessListFactory=s.accessListFactory),i=z({},i,s),z({},i,{nodeUri:r?i.nodeUri+"/"+r:i.nodeUri})},r}(),K=[{constant:!0,inputs:[],name:"name",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_spender",type:"address"},{name:"_value",type:"uint256"}],name:"approve",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_from",type:"address"},{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{name:"",type:"uint8"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"_owner",type:"address"}],name:"balanceOf",outputs:[{name:"balance",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transfer",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[{name:"_owner",type:"address"},{name:"_spender",type:"address"}],name:"allowance",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{payable:!0,stateMutability:"payable",type:"fallback"},{anonymous:!1,inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Transfer",type:"event"}],$=function(e,t,r,n){try{var o=arguments;return Promise.resolve(t.provider.getNetwork()).then(function(i){var s=i.chainId;return Promise.resolve(t.provider.getFeeData()).then(function(t){var i={};if(t.maxPriorityFeePerGas){var a=t.maxPriorityFeePerGas.toString(),c=t.maxFeePerGas.toString();r>1&&(a=Math.round(Number(t.maxPriorityFeePerGas)*r).toString(),c=Math.round(Number(t.maxFeePerGas)*r).toString()),i={maxPriorityFeePerGas:(Number(s)===se||Number(s)===ie)&&Number(a)<re?re:Number(s)===ae&&Number(a)<ne?ne:Z.includes(Number(s))&&Number(a)<oe?oe:Number(a),maxFeePerGas:(Number(s)===se||Number(s)===ie)&&Number(c)<re?re:Number(s)===ae&&Number(c)<ne?ne:Z.includes(Number(s))&&Number(c)<oe?oe:Number(c)}}else i={gasPrice:t.gasPrice};return i.gasLimit=BigInt(new v(e).plus(20000n).toString()),function(e,t){try{var r=Promise.resolve(n.apply(void 0,[].slice.call(o,4).concat([i]))).then(function(e){return Promise.resolve(e.wait()).then(function(){return e})})}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}(0,function(e){return W.error("Send tx error: ",e),null})})})}catch(e){return Promise.reject(e)}},Q=function(e,t,n,o){try{var i=function(e){return"0"===e&&(e=18),r(n,e).toString()};return Promise.resolve(o?i(o):Promise.resolve(ee(e,t)).then(i))}catch(e){return Promise.reject(e)}},Y=function(e,t,r,o){try{var i=function(e){return"0"===e&&(e=18),n(r,e).toString()};return Promise.resolve(o?i(o):Promise.resolve(ee(e,t)).then(i))}catch(e){return Promise.reject(e)}},ee=function(e,t){try{var r=new o.Contract(t,K,e);return Promise.resolve(r.decimals())}catch(e){return Promise.reject(e)}},te=function(e,t){try{return Promise.resolve(e.provider.getFeeData()).then(function(e){var r=BigInt(e.gasPrice.toString());return t?(r*BigInt(t)).toString(10):r.toString()})}catch(e){return Promise.reject(e)}},re=3e10,ne=4e9,oe=1e10,ie=137,se=80001,ae=11155111;function ce(e,t){return e}function ue(e,t){if(e&&e.logs)return e.logs.filter(function(e){return e instanceof i&&e.eventName===t})[0]}var le=/*#__PURE__*/function(){function e(e,t,r,n){this.signer=void 0,this.config=void 0,this.abi=void 0,this.signer=e,this.config=r||(new X).getConfig(t),this.abi=n||this.getDefaultAbi()}var t=e.prototype;return t.getSignerAccordingSdk=function(){return this.config&&"sdk"in this.config&&"oasis"===this.config.sdk?f.wrap(this.signer):this.signer},t.amountToUnits=function(e,t,r){try{return Promise.resolve(Q(this.signer,e,t,r))}catch(e){return Promise.reject(e)}},t.unitsToAmount=function(e,t,r){try{return Promise.resolve(Y(this.signer,e,t,r))}catch(e){return Promise.reject(e)}},t.getFairGasPrice=function(){try{var e;return Promise.resolve(te(this.signer,null==(e=this.config)?void 0:e.gasFeeMultiplier))}catch(e){return Promise.reject(e)}},t.getContract=function(e,t){if(!e)throw new Error("Contract address is required but not provided");return ce(new o.Contract(e,new o.Interface(JSON.stringify(t||this.abi)),this.signer))},e}(),me=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,r,n,o,i)||this).address=void 0,s.contract=void 0,s.address=t,s.contract=s.getContract(s.address),s}return B(t,e),t}(le),he=/*#__PURE__*/function(e){function t(){return e.apply(this,arguments)||this}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return p.abi},r.status=function(e){try{var t=this;return Promise.resolve(t.contract.status(e)).then(function(e){if(!e)throw new Error("Np dispenser found for the given datatoken address");var r=e.isMinter,n=e.owner,o=e.active;return Promise.resolve(t.unitsToAmount(null,e.maxTokens,18)).then(function(i){return Promise.resolve(t.unitsToAmount(null,e.maxBalance,18)).then(function(s){return Promise.resolve(t.unitsToAmount(null,e.balance,18)).then(function(t){return{active:o,owner:n,isMinter:r,maxTokens:i,maxBalance:s,balance:t,allowedSwapper:e.allowedSwapper}})})})})}catch(e){return Promise.reject(e)}},r.create=function(e,t,r,n,o,i){try{var s=this;return Promise.resolve(s.contract.create.estimateGas(e,s.amountToUnits(null,r,18),s.amountToUnits(null,n,18),t,o)).then(function(a){var c;return i?a:Promise.resolve($(a,s.getSignerAccordingSdk(),null==(c=s.config)?void 0:c.gasFeeMultiplier,s.contract.create,e,s.amountToUnits(null,r,18),s.amountToUnits(null,n,18),t,o))})}catch(e){return Promise.reject(e)}},r.activate=function(e,t,r,n){try{var o=this;return Promise.resolve(o.contract.activate.estimateGas(e,o.amountToUnits(null,t,18),o.amountToUnits(null,r,18))).then(function(i){var s;return n?i:Promise.resolve($(i,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,o.contract.activate,e,o.amountToUnits(null,t,18),o.amountToUnits(null,r,18)))})}catch(e){return Promise.reject(e)}},r.deactivate=function(e,t){try{var r=this;return Promise.resolve(r.contract.deactivate.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.deactivate,e))})}catch(e){return Promise.reject(e)}},r.setAllowedSwapper=function(e,t,r){try{var n=this;return Promise.resolve(n.contract.setAllowedSwapper.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.setAllowedSwapper,e,t))})}catch(e){return Promise.reject(e)}},r.dispense=function(e,t,r,n){void 0===t&&(t="1");try{var o=this;return Promise.resolve(o.contract.dispense.estimateGas(e,o.amountToUnits(null,t,18),r)).then(function(i){var s;return n?i:Promise.resolve($(i,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,o.contract.dispense,e,o.amountToUnits(null,t,18),r))})}catch(e){return Promise.reject(e)}},r.ownerWithdraw=function(e,t){try{var r=this;return Promise.resolve(r.contract.ownerWithdraw.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.ownerWithdraw,e))})}catch(e){return Promise.reject(e)}},r.isDispensable=function(e,t,r,n){void 0===n&&(n="1");try{return Promise.resolve(this.status(e)).then(function(o){return!!o&&!1!==o.active&&Promise.resolve(t.balance(e,r)).then(function(e){return!(new g(e).greaterThanOrEqualTo(o.maxBalance)||new g(String(n)).greaterThan(o.maxTokens)||!new g(o.balance).greaterThanOrEqualTo(n)&&!0!==o.isMinter)})})}catch(e){return Promise.reject(e)}},t}(me),de="0x0000000000000000000000000000000000000000",fe=1e6,ve="115792089237316195423570985008687907853269984665640564039457584007913129639934",ge="Returned error: Method eth_feeHistory not supported.",pe=/*#__PURE__*/function(e){function t(){return e.apply(this,arguments)||this}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return P.abi},r.generateExchangeId=function(e,t){try{return Promise.resolve(this.contract.generateExchangeId(e,t))}catch(e){return Promise.reject(e)}},r.buyDatatokens=function(e,t,r,n,o,i){void 0===n&&(n=de),void 0===o&&(o="0");try{var s=this;return Promise.resolve(s.getExchange(e)).then(function(a){return Promise.resolve(s.amountToUnits(null,o,18)).then(function(o){return Promise.resolve(s.amountToUnits(a.datatoken,t,Number(a.dtDecimals))).then(function(t){return Promise.resolve(s.amountToUnits(a.baseToken,r,Number(a.btDecimals))).then(function(r){return Promise.resolve(s.contract.buyDT.estimateGas(e,t,r,n,o)).then(function(a){var c;return i?a:Promise.resolve($(a,s.getSignerAccordingSdk(),null==(c=s.config)?void 0:c.gasFeeMultiplier,s.contract.buyDT,e,t,r,n,o))})})})})})}catch(e){return Promise.reject(e)}},r.sellDatatokens=function(e,t,r,n,o,i){void 0===n&&(n=de),void 0===o&&(o="0");try{var s=this;return Promise.resolve(s.getExchange(e)).then(function(a){return Promise.resolve(s.amountToUnits(null,o,18)).then(function(o){return Promise.resolve(s.amountToUnits(a.datatoken,t,Number(a.dtDecimals))).then(function(t){return Promise.resolve(s.amountToUnits(a.baseToken,r,Number(a.btDecimals))).then(function(r){return Promise.resolve(s.contract.sellDT.estimateGas(e,t,r,n,o)).then(function(a){var c;return i?a:Promise.resolve($(a,s.getSignerAccordingSdk(),null==(c=s.config)?void 0:c.gasFeeMultiplier,s.contract.sellDT,e,t,r,n,o))})})})})})}catch(e){return Promise.reject(e)}},r.getNumberOfExchanges=function(){try{return Promise.resolve(this.contract.getNumberOfExchanges()).then(Number)}catch(e){return Promise.reject(e)}},r.setRate=function(e,t,r){try{var n=this,o=n.contract.setRate,i=o.estimateGas;return Promise.resolve(n.amountToUnits(null,t,18)).then(function(s){return Promise.resolve(i.call(o,e,s)).then(function(o){var i;if(r)return o;var s=n.contract.setRate,a=null==(i=n.config)?void 0:i.gasFeeMultiplier,c=n.getSignerAccordingSdk();return Promise.resolve(n.amountToUnits(null,t,18)).then(function(t){return Promise.resolve($(o,c,a,s,e,t))})})})}catch(e){return Promise.reject(e)}},r.setAllowedSwapper=function(e,t,r){try{var n=this;return Promise.resolve(n.contract.setAllowedSwapper.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.setAllowedSwapper,e,t))})}catch(e){return Promise.reject(e)}},r.activate=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?!0===n.active?null:Promise.resolve(r.contract.toggleExchangeState.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.toggleExchangeState,e))}):null})}catch(e){return Promise.reject(e)}},r.deactivate=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?!1===n.active?null:Promise.resolve(r.contract.toggleExchangeState.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.toggleExchangeState,e))}):null})}catch(e){return Promise.reject(e)}},r.getRate=function(e){try{var t=this;return Promise.resolve(t.contract.getRate(e)).then(function(e){return Promise.resolve(t.unitsToAmount(null,e,18))})}catch(e){return Promise.reject(e)}},r.getDatatokenSupply=function(e){try{var t=this;return Promise.resolve(t.contract.getDTSupply(e)).then(function(r){return Promise.resolve(t.getExchange(e)).then(function(e){return Promise.resolve(t.unitsToAmount(e.datatoken,r,Number(e.dtDecimals)))})})}catch(e){return Promise.reject(e)}},r.getBasetokenSupply=function(e){try{var t=this;return Promise.resolve(t.contract.getBTSupply(e)).then(function(r){return Promise.resolve(t.getExchange(e)).then(function(e){return Promise.resolve(t.unitsToAmount(e.baseToken,r,Number(e.btDecimals)))})})}catch(e){return Promise.reject(e)}},r.getAllowedSwapper=function(e){try{return Promise.resolve(this.contract.getAllowedSwapper(e))}catch(e){return Promise.reject(e)}},r.calcBaseInGivenDatatokensOut=function(e,t,r){void 0===r&&(r="0");try{var n=this;return Promise.resolve(n.getExchange(e)).then(function(o){var i=n.contract,s=i.calcBaseInGivenOutDT;return Promise.resolve(n.amountToUnits(o.datatoken,t,Number(o.dtDecimals))).then(function(t){return Promise.resolve(n.amountToUnits(null,r,18)).then(function(r){return Promise.resolve(s.call(i,e,t,r)).then(function(e){return Promise.resolve(n.unitsToAmount(o.baseToken,e.baseTokenAmount,Number(o.btDecimals))).then(function(t){return Promise.resolve(n.unitsToAmount(o.baseToken,e.publishMarketFeeAmount,Number(o.btDecimals))).then(function(r){return Promise.resolve(n.unitsToAmount(o.baseToken,e.oceanFeeAmount,Number(o.btDecimals))).then(function(i){return Promise.resolve(n.unitsToAmount(o.baseToken,e.consumeMarketFeeAmount,Number(o.btDecimals))).then(function(e){return{baseTokenAmount:t,marketFeeAmount:r,oceanFeeAmount:i,consumeMarketFeeAmount:e}})})})})})})})})}catch(e){return Promise.reject(e)}},r.getAmountBasetokensOut=function(e,t,r){void 0===r&&(r="0");try{var n=this;return Promise.resolve(n.getExchange(e)).then(function(o){var i=n.contract,s=i.calcBaseOutGivenInDT;return Promise.resolve(n.amountToUnits(o.datatoken,t,Number(o.dtDecimals))).then(function(t){return Promise.resolve(n.amountToUnits(null,r,18)).then(function(r){return Promise.resolve(s.call(i,e,t,r)).then(function(e){return Promise.resolve(n.unitsToAmount(o.baseToken,e[0],Number(o.btDecimals)))})})})})}catch(e){return Promise.reject(e)}},r.getExchange=function(e){try{var t=this;return Promise.resolve(t.contract.getExchange(e)).then(function(r){var n=r.btDecimals.toString(),o=r.dtDecimals.toString(),i=r.allowedSwapper,s=r.exchangeOwner,a=r.withMint,c=r.baseToken,u=r.datatoken,l=r.active;return Promise.resolve(t.unitsToAmount(r.datatoken,r.dtBalance,Number(r.dtDecimals))).then(function(m){return Promise.resolve(t.unitsToAmount(r.baseToken,r.btBalance,Number(r.btDecimals))).then(function(h){return Promise.resolve(t.unitsToAmount(r.datatoken,r.dtSupply,Number(r.dtDecimals))).then(function(d){return Promise.resolve(t.unitsToAmount(r.baseToken,r.btSupply,Number(r.btDecimals))).then(function(f){return Promise.resolve(t.unitsToAmount(null,r.fixedRate,18)).then(function(t){return{active:l,datatoken:u,baseToken:c,withMint:a,exchangeOwner:s,allowedSwapper:i,dtDecimals:o,btDecimals:n,dtBalance:m,btBalance:h,dtSupply:d,btSupply:f,fixedRate:t,exchangeId:e}})})})})})})}catch(e){return Promise.reject(e)}},r.getFeesInfo=function(e){try{var t=this;return Promise.resolve(t.contract.getFeesInfo(e)).then(function(r){return Promise.resolve(t.getExchange(e)).then(function(n){return Promise.resolve(t.unitsToAmount(null,r.opcFee.toString(),18)).then(function(o){return Promise.resolve(t.unitsToAmount(null,r.marketFee.toString(),18)).then(function(i){var s=r.marketFeeCollector;return Promise.resolve(t.unitsToAmount(n.baseToken,r.marketFeeAvailable,Number(n.btDecimals))).then(function(a){return Promise.resolve(t.unitsToAmount(n.baseToken,r.oceanFeeAvailable,Number(n.btDecimals))).then(function(t){return{opcFee:o,marketFee:i,marketFeeCollector:s,marketFeeAvailable:a,oceanFeeAvailable:t,exchangeId:e}})})})})})})}catch(e){return Promise.reject(e)}},r.getExchanges=function(){try{return Promise.resolve(this.contract.getExchanges())}catch(e){return Promise.reject(e)}},r.isActive=function(e){try{return Promise.resolve(this.contract.isActive(e))}catch(e){return Promise.reject(e)}},r.activateMint=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?!0===n.withMint?null:Promise.resolve(r.contract.toggleMintState.estimateGas(e,!0)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.toggleMintState,e,!0))}):null})}catch(e){return Promise.reject(e)}},r.deactivateMint=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?!1===n.withMint?null:Promise.resolve(r.contract.toggleMintState.estimateGas(e,!1)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.toggleMintState,e,!1))}):null})}catch(e){return Promise.reject(e)}},r.collectBasetokens=function(e,t,r){try{var n=this;return Promise.resolve(n.getExchange(e)).then(function(o){return o?Promise.resolve(n.contract.getExchange(e)).then(function(o){return Promise.resolve(n.amountToUnits(o.baseToken,t,Number(o.btDecimals))).then(function(t){return Promise.resolve(n.contract.collectBT.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.collectBT,e,t))})})}):null})}catch(e){return Promise.reject(e)}},r.collectDatatokens=function(e,t,r){try{var n=this;return Promise.resolve(n.getExchange(e)).then(function(o){return o?Promise.resolve(n.contract.getExchange(e)).then(function(o){return Promise.resolve(n.amountToUnits(o.datatoken,t,Number(o.dtDecimals))).then(function(t){return Promise.resolve(n.contract.collectDT.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.collectDT,e,t))})})}):null})}catch(e){return Promise.reject(e)}},r.collectMarketFee=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?Promise.resolve(r.contract.collectMarketFee.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.collectMarketFee,e))}):null})}catch(e){return Promise.reject(e)}},r.collectOceanFee=function(e,t){try{var r=this;return Promise.resolve(r.getExchange(e)).then(function(n){return n?Promise.resolve(r.contract.collectOceanFee.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.collectOceanFee,e))}):null})}catch(e){return Promise.reject(e)}},r.getOPCCollector=function(){try{return Promise.resolve(this.contract.opcCollector())}catch(e){return Promise.reject(e)}},r.getRouter=function(){try{return Promise.resolve(this.contract.router())}catch(e){return Promise.reject(e)}},r.getExchangeOwner=function(e){try{return Promise.resolve(this.getExchange(e)).then(function(e){return e.exchangeOwner})}catch(e){return Promise.reject(e)}},r.updateMarketFee=function(e,t,r){try{var n=this,o=n.contract.updateMarketFee,i=o.estimateGas;return Promise.resolve(n.amountToUnits(null,t,18)).then(function(s){return Promise.resolve(i.call(o,e,s)).then(function(o){var i;if(r)return o;var s=n.contract.updateMarketFee,a=null==(i=n.config)?void 0:i.gasFeeMultiplier,c=n.getSignerAccordingSdk();return Promise.resolve(n.amountToUnits(null,t,18)).then(function(t){return Promise.resolve($(o,c,a,s,e,t))})})})}catch(e){return Promise.reject(e)}},r.updateMarketFeeCollector=function(e,t,r){try{var n=this;return Promise.resolve(n.contract.updateMarketFeeCollector.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.updateMarketFeeCollector,e,t))})}catch(e){return Promise.reject(e)}},t}(me),Pe=/*#__PURE__*/function(e){function t(){return e.apply(this,arguments)||this}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return y.abi},r.buyDatatokenBatch=function(e,t){try{var r=this;return Promise.resolve(r.contract.buyDTBatch.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.buyDTBatch,e))})}catch(e){return Promise.reject(e)}},r.isApprovedToken=function(e){try{return Promise.resolve(this.contract.isApprovedToken(e))}catch(e){return Promise.reject(e)}},r.isFixedPrice=function(e){try{return Promise.resolve(this.contract.isFixedRateContract(e))}catch(e){return Promise.reject(e)}},r.getOwner=function(){try{return Promise.resolve(this.contract.routerOwner())}catch(e){return Promise.reject(e)}},r.getNFTFactory=function(){try{return Promise.resolve(this.contract.factory())}catch(e){return Promise.reject(e)}},r.addApprovedToken=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.addApprovedToken.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.addApprovedToken,t))})})}catch(e){return Promise.reject(e)}},r.removeApprovedToken=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.removeApprovedToken.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.removeApprovedToken,t))})})}catch(e){return Promise.reject(e)}},r.addFixedRateContract=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.addFixedRateContract.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.addFixedRateContract,t))})})}catch(e){return Promise.reject(e)}},r.removeFixedRateContract=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.removeFixedRateContract.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.removeFixedRateContract,t))})})}catch(e){return Promise.reject(e)}},r.addDispenserContract=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.addDispenserContract.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.addDispenserContract,t))})})}catch(e){return Promise.reject(e)}},r.removeDispenserContract=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(n.contract.removeDispenserContract.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.removeDispenserContract,t))})})}catch(e){return Promise.reject(e)}},r.getOPCFee=function(e){try{return Promise.resolve(this.contract.getOPCFee(e)).then(Number)}catch(e){return Promise.reject(e)}},r.getCurrentOPCFee=function(){try{return Promise.resolve(this.contract.swapOceanFee()).then(Number)}catch(e){return Promise.reject(e)}},r.updateOPCFee=function(e,t,r,n,o,i){try{var s=this;return Promise.resolve(s.getOwner()).then(function(a){if(a!==e)throw new Error("Caller is not Router Owner");return Promise.resolve(s.contract.updateOPCFee.estimateGas(t,r,n,o)).then(function(e){var a;return i?e:Promise.resolve($(e,s.getSignerAccordingSdk(),null==(a=s.config)?void 0:a.gasFeeMultiplier,s.contract.updateOPCFee,t,r,n,o))})})}catch(e){return Promise.reject(e)}},t}(me),ye={nouns:["Crab","Fish","Seal","Octopus","Shark","Seahorse","Walrus","Starfish","Whale","Orca","Penguin","Jellyfish","Squid","Lobster","Pelican","Shrimp","Oyster","Clam","Seagull","Dolphin","Shell","Cormorant","Otter","Anemone","Turtle","Coral","Ray","Barracuda","Krill","Anchovy","Angelfish","Barnacle","Clownfish","Cod","Cuttlefish","Eel","Fugu","Herring","Haddock","Ling","Mackerel","Manatee","Narwhal","Nautilus","Plankton","Porpoise","Prawn","Pufferfish","Swordfish","Tuna"],adjectives:["adamant","adroit","amatory","ambitious","amused","animistic","antic","arcadian","artistic","astonishing","astounding","baleful","bellicose","bilious","blissful","boorish","brave","breathtaking","brilliant","calamitous","caustic","cerulean","clever","charming","comely","competent","concomitant","confident","contumacious","corpulent","crapulous","creative","dazzling","dedicated","defamatory","delighted","delightful","determined","didactic","dilatory","dowdy","efficacious","effulgent","egregious","empowered","endemic","enthusiastic","equanimous","exceptional","execrable","fabulous","fantastic","fastidious","feckless","fecund","friable","fulsome","garrulous","generous","gentle","guileless","gustatory","heuristic","histrionic","hubristic","incendiary","incredible","insidious","insolent","inspired","intransigent","inveterate","invidious","invigorated","irksome","jejune","juicy","jocular","joyful","judicious","kind","lachrymose","limpid","loquacious","lovely","luminous","mannered","marvelous","mendacious","meretricious","minatory","mordant","motivated","munificent","nefarious","noxious","obtuse","optimistic","parsimonious","pendulous","pernicious","pervasive","petulant","passionate","phenomenal","platitudinous","pleasant","powerful","precipitate","propitious","puckish","querulous","quiescent","rebarbative","recalcitant","redolent","rhadamanthine","risible","ruminative","sagacious","salubrious","sartorial","sclerotic","serpentine","smart","spasmodic","strident","stunning","stupendous","taciturn","tactful","tasty","tenacious","tremendous","tremulous","trenchant","turbulent","turgid","ubiquitous","uxorious","verdant","vibrant","voluble","voracious","wheedling","withering","wonderful","zealous"]};function we(e){var t=e||ye,r=Math.floor(Math.random()*t.adjectives.length),n=Math.floor(Math.random()*t.nouns.length),o=Math.floor(100*Math.random()),i=t.adjectives[r].replace(/^\w/,function(e){return e.toUpperCase()}),s=t.nouns[n].replace(/^\w/,function(e){return e.toUpperCase()});return{name:i+" "+s+" Token",symbol:(i.substring(0,3)+s.substring(0,3)).toUpperCase()+"-"+o}}function be(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}var ke=/*#__PURE__*/function(e){function t(){return e.apply(this,arguments)||this}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return T.abi},r.createNFT=function(e,t){try{var r=this;if(e.templateIndex||(e.templateIndex=1),!e.name||!e.symbol){var n=we(),o=n.symbol;e.name=n.name,e.symbol=o}var i=e.templateIndex;return Promise.resolve(r.getCurrentNFTTemplateCount()).then(function(n){if(i>n)throw new Error("Template index doesnt exist");if(0===e.templateIndex)throw new Error("Template index cannot be ZERO");return Promise.resolve(r.getNFTTemplate(e.templateIndex)).then(function(n){if(!1===n.isActive)throw new Error("Template is not active");return Promise.resolve(r.contract.deployERC721Contract.estimateGas(e.name,e.symbol,e.templateIndex,de,de,e.tokenURI,e.transferable,e.owner)).then(function(n){return t?n:be(function(){var t;return Promise.resolve($(n,r.getSignerAccordingSdk(),null==(t=r.config)?void 0:t.gasFeeMultiplier,r.contract.deployERC721Contract,e.name,e.symbol,e.templateIndex,de,de,e.tokenURI,e.transferable,e.owner)).then(function(e){if(!e){var t="Tx for deploying new NFT contract does not exist or status is not successful.";throw console.error(t),t}return Promise.resolve(e.wait()).then(function(e){return ue(e,"NFTCreated").args[0]})})},function(e){console.error("Creation of NFT failed: "+e)})})})})}catch(e){return Promise.reject(e)}},r.getCurrentNFTCount=function(){try{return Promise.resolve(this.contract.getCurrentNFTCount()).then(Number)}catch(e){return Promise.reject(e)}},r.getCurrentTokenCount=function(){try{return Promise.resolve(this.contract.getCurrentTokenCount()).then(Number)}catch(e){return Promise.reject(e)}},r.getOwner=function(){try{return Promise.resolve(this.contract.owner())}catch(e){return Promise.reject(e)}},r.getCurrentNFTTemplateCount=function(){try{return Promise.resolve(this.contract.getCurrentNFTTemplateCount()).then(Number)}catch(e){return Promise.reject(e)}},r.getCurrentTokenTemplateCount=function(){try{return Promise.resolve(this.contract.getCurrentTemplateCount()).then(Number)}catch(e){return Promise.reject(e)}},r.getNFTTemplate=function(e){try{var t=this;return Promise.resolve(t.getCurrentNFTTemplateCount()).then(function(r){if(e>r)throw new Error("Template index doesnt exist");if(0===e)throw new Error("Template index cannot be ZERO");return Promise.resolve(t.contract.getNFTTemplate(e))})}catch(e){return Promise.reject(e)}},r.getTokenTemplate=function(e){try{return Promise.resolve(this.contract.getTokenTemplate(e))}catch(e){return Promise.reject(e)}},r.checkDatatoken=function(e){try{return Promise.resolve(this.contract.erc20List(e))}catch(e){return Promise.reject(e)}},r.checkNFT=function(e){try{return Promise.resolve(this.contract.erc721List(e))}catch(e){return Promise.reject(e)}},r.addNFTTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");if(t===de)throw new Error("Template cannot be ZERO address");return Promise.resolve(n.contract.add721TokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.add721TokenTemplate,t))})})}catch(e){return Promise.reject(e)}},r.disableNFTTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");return Promise.resolve(n.getCurrentNFTTemplateCount()).then(function(e){if(t>e)throw new Error("Template index doesnt exist");if(0===t)throw new Error("Template index cannot be ZERO");return Promise.resolve(n.contract.disable721TokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.disable721TokenTemplate,t))})})})}catch(e){return Promise.reject(e)}},r.reactivateNFTTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");return Promise.resolve(n.getCurrentNFTTemplateCount()).then(function(e){if(t>e)throw new Error("Template index doesnt exist");if(0===t)throw new Error("Template index cannot be ZERO");return Promise.resolve(n.contract.reactivate721TokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.reactivate721TokenTemplate,t))})})})}catch(e){return Promise.reject(e)}},r.addTokenTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");if(t===de)throw new Error("Template cannot be address ZERO");return Promise.resolve(n.contract.addTokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.addTokenTemplate,t))})})}catch(e){return Promise.reject(e)}},r.disableTokenTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");return Promise.resolve(n.getCurrentTokenTemplateCount()).then(function(e){if(t>e)throw new Error("Template index doesnt exist");if(0===t)throw new Error("Template index cannot be ZERO");return Promise.resolve(n.getTokenTemplate(t)).then(function(e){if(!1===e.isActive)throw new Error("Template is already disabled");return Promise.resolve(n.contract.disableTokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.disableTokenTemplate,t))})})})})}catch(e){return Promise.reject(e)}},r.reactivateTokenTemplate=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");return Promise.resolve(n.getCurrentTokenTemplateCount()).then(function(e){if(t>e)throw new Error("Template index doesnt exist");if(0===t)throw new Error("Template index cannot be ZERO");return Promise.resolve(n.getTokenTemplate(t)).then(function(e){if(!0===e.isActive)throw new Error("Template is already active");return Promise.resolve(n.contract.reactivateTokenTemplate.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.reactivateTokenTemplate,t))})})})})}catch(e){return Promise.reject(e)}},r.startMultipleTokenOrder=function(e,t){try{var r=this;if(e.length>50)throw new Error("Too many orders");return Promise.resolve(r.contract.startMultipleTokenOrder.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.startMultipleTokenOrder,e))})}catch(e){return Promise.reject(e)}},r.createNftWithDatatoken=function(e,t,r){try{var n=this;return Promise.resolve(n.getErcCreationParams(t)).then(function(t){return Promise.resolve(n.contract.createNftWithErc20.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.createNftWithErc20,e,t))})})}catch(e){return Promise.reject(e)}},r.createNftWithDatatokenWithFixedRate=function(e,t,r,n){try{var o=this;return Promise.resolve(o.getErcCreationParams(t)).then(function(t){return Promise.resolve(o.getFreCreationParams(r)).then(function(r){return Promise.resolve(o.contract.createNftWithErc20WithFixedRate.estimateGas(e,t,r)).then(function(i){var s;return n?i:Promise.resolve($(i,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,o.contract.createNftWithErc20WithFixedRate,e,t,r))})})})}catch(e){return Promise.reject(e)}},r.createNftWithDatatokenWithDispenser=function(e,t,r,n){try{var o=this;return Promise.resolve(o.getErcCreationParams(t)).then(function(t){return Promise.resolve(o.amountToUnits(null,r.maxBalance,18)).then(function(i){return r.maxBalance=i,Promise.resolve(o.amountToUnits(null,r.maxTokens,18)).then(function(i){return r.maxTokens=i,Promise.resolve(o.contract.createNftWithErc20WithDispenser.estimateGas(e,t,r)).then(function(i){var s;return n?i:Promise.resolve($(i,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,o.contract.createNftWithErc20WithDispenser,e,t,r))})})})})}catch(e){return Promise.reject(e)}},r.getErcCreationParams=function(e){try{var t,r,n=function(){var n=[e.minter,e.paymentCollector,e.mpFeeAddress,e.feeToken];e.filesObject&&(e.accessListFactory&&n.push(e.accessListFactory),e.allowAccessList&&n.push(e.allowAccessList),e.denyAccessList&&n.push(e.denyAccessList));var i=[e.name||t,e.symbol||r],c=e.templateIndex;return Promise.resolve(o.amountToUnits(null,e.cap,18)).then(function(t){return Promise.resolve(o.amountToUnits(null,e.feeAmount,a)).then(function(r){return{templateIndex:c,strings:i,addresses:n,uints:[t,r],bytess:e.filesObject?[s(JSON.stringify(e.filesObject))]:[]}})})},o=this;if(!e.name||!e.symbol){var i=we();t=i.name,r=i.symbol}var a=18,c=function(){if(e.feeToken!==de){var t=be(function(){return Promise.resolve(ee(o.signer,e.feeToken)).then(function(e){a=e})},function(e){W.error("getTokenDecimals error",e)});if(t&&t.then)return t.then(function(){})}}();return Promise.resolve(c&&c.then?c.then(n):n())}catch(e){return Promise.reject(e)}},r.getFreCreationParams=function(e){try{var t=this;e.allowedConsumer||(e.allowedConsumer=de);var r=!1===e.withMint?0:1,n=[e.baseTokenAddress,e.owner,e.marketFeeCollector,e.allowedConsumer],o=e.fixedRateAddress,i=e.datatokenDecimals,s=e.baseTokenDecimals;return Promise.resolve(t.amountToUnits(null,e.fixedRate,e.datatokenDecimals)).then(function(a){return Promise.resolve(t.amountToUnits(null,e.marketFee,e.datatokenDecimals)).then(function(e){return{fixedPriceAddress:o,addresses:n,uints:[s,i,a,e,r]}})})}catch(e){return Promise.reject(e)}},t}(me);function Te(e,t,r){if(!e.s){if(r instanceof Se){if(!r.s)return void(r.o=Te.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(Te.bind(null,e,t),Te.bind(null,e,2));e.s=t,e.v=r;const n=e.o;n&&n(e)}}var Se=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,r){var n=new e,o=this.s;if(o){var i=1&o?t:r;if(i){try{Te(n,1,i(this.v))}catch(e){Te(n,2,e)}return n}return this}return this.o=function(e){try{var o=e.v;1&e.s?Te(n,1,t?t(o):o):r?Te(n,1,r(o)):Te(n,2,o)}catch(e){Te(n,2,e)}},n},e}();function Ee(e){return e instanceof Se&&1&e.s}var Ae=function(e,t,r,n){try{var i="number"==typeof r,s=new ke(t,e,n);return Promise.resolve(s.getCurrentTokenTemplateCount()).then(function(t){var n;function a(e){return n?e:-1}var c=1,u=function(e,t,r){for(var n;;){var o=e();if(Ee(o)&&(o=o.v),!o)return i;if(o.then){n=0;break}var i=r();if(i&&i.then){if(!Ee(i)){n=1;break}i=i.s}if(t){var s=t();if(s&&s.then&&!Ee(s)){n=2;break}}}var a=new Se,c=Te.bind(null,a,2);return(0===n?o.then(l):1===n?i.then(u):s.then(m)).then(void 0,c),a;function u(n){i=n;do{if(t&&(s=t())&&s.then&&!Ee(s))return void s.then(m).then(void 0,c);if(!(o=e())||Ee(o)&&!o.v)return void Te(a,1,i);if(o.then)return void o.then(l).then(void 0,c);Ee(i=r())&&(i=i.v)}while(!i||!i.then);i.then(u).then(void 0,c)}function l(e){e?(i=r())&&i.then?i.then(u).then(void 0,c):u(i):Te(a,1,i)}function m(){(o=e())?o.then?o.then(l).then(void 0,c):l(o):Te(a,1,i)}}(function(){return!n&&c<=t},function(){return c++},function(){return Promise.resolve(s.getTokenTemplate(c)).then(function(t){var s=new o.Contract(t.templateAddress,S.abi,e);return i?Promise.resolve(s.getId()).then(function(e){if(t.isActive&&e.toString()===r.toString())return n=1,c}):t.isActive&&t.templateAddress===r.toString()?(n=1,c):void 0})});return u&&u.then?u.then(a):a(u)})}catch(e){return Promise.reject(e)}};function Fe(){try{if(process.env.ADDRESS_FILE){var r=t.readFileSync(process.env.ADDRESS_FILE,"utf8");return JSON.parse(r)}return e}catch(t){return e}}function Ce(e){try{var t=Fe();if(t)for(var r=Object.keys(t),n=0,o=r;n<o.length;n++){var i=o[n];if(t[i].chainId===e)return t[i]}}catch(e){console.error(e)}return null}var je=/*#__PURE__*/function(e){function t(){return e.apply(this,arguments)||this}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return k.abi},r.createDatatoken=function(e,t,r,n,o,i,a,c,u,l,m,h,d,f,v,g){try{var p=this;return Promise.resolve(p.getNftPermissions(e,t)).then(function(t){if(!0!==t.deployERC20)throw new Error("Caller is not DatatokenDeployer");if(m||(m=1),!u||!l){var P=we();u=P.name,l=P.symbol}var y=p.getContract(e);if(!p.signer.provider)throw new Error("Provider is required but not available");return Promise.resolve(p.signer.provider.getNetwork()).then(function(e){var t=e.chainId;function P(){var e=y.createERC20,t=e.estimateGas,P=[u,l],w=m;return Promise.resolve(p.amountToUnits(null,c,18)).then(function(b){return Promise.resolve(p.amountToUnits(null,a,18)).then(function(k){return Promise.resolve(t.call(e,w,P,[r,n,o,i],[b,k],[])).then(function(e){var t;if(g)return e;var P=[r,n,o,i];d&&(P.push(d.toLowerCase()),P.push(f?f.toLowerCase():de),P.push(v||de));var w=[u,l],b=m,k=y.createERC20,T=null==(t=p.config)?void 0:t.gasFeeMultiplier,S=p.getSignerAccordingSdk();return Promise.resolve(p.amountToUnits(null,c,18)).then(function(t){return Promise.resolve(p.amountToUnits(null,a,18)).then(function(r){return Promise.resolve($(e,S,T,k,b,w,P,[t,r],h?[s(h)]:[])).then(function(e){return Promise.resolve(e.wait()).then(function(e){var t=ue(e,"TokenCreated");return null==t?void 0:t.args[0]})})})})})})})}var w=Ce(Number(t)),b=function(){if(h)return Promise.resolve(Ae(p.signer,w.ERC721Factory,4,Number(t))).then(function(e){m=e})}();return b&&b.then?b.then(P):P()})})}catch(e){return Promise.reject(e)}},r.addManager=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftOwner(e)).then(function(e){if(e!==t)throw new Error("Caller is not NFT Owner");return Promise.resolve(i.addManager.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addManager,r))})})}catch(e){return Promise.reject(e)}},r.removeManager=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftOwner(e)).then(function(e){if(e!==t)throw new Error("Caller is not NFT Owner");return Promise.resolve(i.removeManager.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removeManager,r))})})}catch(e){return Promise.reject(e)}},r.addDatatokenDeployer=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(e){if(!0!==e.manager)throw new Error("Caller is not Manager");return Promise.resolve(i.addToCreateERC20List.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addToCreateERC20List,r))})})}catch(e){return Promise.reject(e)}},r.removeDatatokenDeployer=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(s){function a(e){if(c||t===r&&!0!==e.deployERC20)throw new Error("Caller is not Manager nor DatatokenDeployer");return Promise.resolve(i.removeFromCreateERC20List.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removeFromCreateERC20List,r))})}var c=!0!==s.manager;return c||t!==r?a(c||t===r&&o.getNftPermissions(e,t)):Promise.resolve(c||t===r&&o.getNftPermissions(e,t)).then(a)})}catch(e){return Promise.reject(e)}},r.addMetadataUpdater=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(e){if(!0!==e.manager)throw new Error("Caller is not Manager");return Promise.resolve(i.addToMetadataList.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addToMetadataList,r))})})}catch(e){return Promise.reject(e)}},r.removeMetadataUpdater=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(s){function a(e){if(c||t!==r&&!0!==e.updateMetadata)throw new Error("Caller is not Manager nor Metadata Updater");return Promise.resolve(i.removeFromMetadataList.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removeFromMetadataList,r))})}var c=!0!==s.manager;return c||t===r?a(c||t!==r&&o.getNftPermissions(e,t)):Promise.resolve(c||t!==r&&o.getNftPermissions(e,t)).then(a)})}catch(e){return Promise.reject(e)}},r.addStoreUpdater=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(e){if(!0!==e.manager)throw new Error("Caller is not Manager");return Promise.resolve(i.addTo725StoreList.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addTo725StoreList,r))})})}catch(e){return Promise.reject(e)}},r.removeStoreUpdater=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(s){function a(e){if(c||t!==r&&!0!==e.store)throw new Error("Caller is not Manager nor storeUpdater");return Promise.resolve(i.removeFrom725StoreList.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removeFrom725StoreList,r))})}var c=!0!==s.manager;return c||t===r?a(c||t!==r&&o.getNftPermissions(e,t)):Promise.resolve(c||t!==r&&o.getNftPermissions(e,t)).then(a)})}catch(e){return Promise.reject(e)}},r.cleanPermissions=function(e,t,r){try{var n=this,o=n.getContract(e);return Promise.resolve(n.getNftOwner(e)).then(function(e){if(e!==t)throw new Error("Caller is not NFT Owner");return Promise.resolve(o.cleanPermissions.estimateGas()).then(function(e){var t;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(t=n.config)?void 0:t.gasFeeMultiplier,o.cleanPermissions))})})}catch(e){return Promise.reject(e)}},r.transferNft=function(e,t,r,n,o){try{var i=this,s=i.getContract(e);return Promise.resolve(i.getNftOwner(e)).then(function(e){if(e!==t)throw new Error("Caller is not NFT Owner");var a=n||1;return Promise.resolve(s.transferFrom.estimateGas(t,r,a)).then(function(e){var n;return o?e:Promise.resolve($(e,i.getSignerAccordingSdk(),null==(n=i.config)?void 0:n.gasFeeMultiplier,s.transferFrom,t,r,a))})})}catch(e){return Promise.reject(e)}},r.safeTransferNft=function(e,t,r,n,o){try{var i=this,s=i.getContract(e);return Promise.resolve(i.getNftOwner(e)).then(function(e){if(e!==t)throw new Error("Caller is not NFT Owner");var a=n||1;return Promise.resolve(s.safeTransferFrom.estimateGas(t,r,a)).then(function(e){var n;return o?e:Promise.resolve($(e,i.getSignerAccordingSdk(),null==(n=i.config)?void 0:n.gasFeeMultiplier,s.safeTransferFrom,t,r,a))})})}catch(e){return Promise.reject(e)}},r.setMetadata=function(e,t,r,n,o,i,s,a,c,u){try{var l=this,m=l.getContract(e);return c||(c=[]),Promise.resolve(l.getNftPermissions(e,t)).then(function(e){if(!e.updateMetadata)throw new Error("Caller is not Metadata updater");return Promise.resolve(m.setMetaData.estimateGas(r,n,o,i,s,a,c)).then(function(e){var t;return u?e:Promise.resolve($(e,l.signer,null==(t=l.config)?void 0:t.gasFeeMultiplier,m.setMetaData,r,n,o,i,s,a,c))})})}catch(e){return Promise.reject(e)}},r.setMetadataAndTokenURI=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(e){if(!e.updateMetadata)throw new Error("Caller is not Metadata updater");var t=z({},r,{metadataProofs:r.metadataProofs||[]});return Promise.resolve(i.setMetaDataAndTokenURI.estimateGas(t)).then(function(e){var r;return n?e:Promise.resolve($(e,o.signer,null==(r=o.config)?void 0:r.gasFeeMultiplier,i.setMetaDataAndTokenURI,t))})})}catch(e){return Promise.reject(e)}},r.setMetadataState=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getNftPermissions(e,t)).then(function(e){if(!e.updateMetadata)throw new Error("Caller is not Metadata updater");return Promise.resolve(i.setMetaDataState.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.setMetaDataState,r))})})}catch(e){return Promise.reject(e)}},r.setTokenURI=function(e,t,r){try{var n=this,o=n.getContract(e);return Promise.resolve(o.setTokenURI.estimateGas("1",t)).then(function(e){var i;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,o.setTokenURI,"1",t))})}catch(e){return Promise.reject(e)}},r.getNftOwner=function(e){try{var t=this.getContract(e);return Promise.resolve(t.ownerOf(1))}catch(e){return Promise.reject(e)}},r.getNftPermissions=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.getPermissions(t))}catch(e){return Promise.reject(e)}},r.getMetadata=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getMetaData())}catch(e){return Promise.reject(e)}},r.isDatatokenDeployer=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.isERC20Deployer(t))}catch(e){return Promise.reject(e)}},r.setData=function(e,t,r,n,o){try{var i=this;return Promise.resolve(i.getNftPermissions(e,t)).then(function(t){if(!0!==t.store)throw new Error("User is not ERC20 store updater");var u=i.getContract(e),l=a(r),m=c(s(n));return Promise.resolve(u.setNewData.estimateGas(l,m)).then(function(e){var t;return o?e:Promise.resolve($(e,i.getSignerAccordingSdk(),null==(t=i.config)?void 0:t.gasFeeMultiplier,u.setNewData,l,m))})})}catch(e){return Promise.reject(e)}},r.getData=function(e,t){try{var r=this.getContract(e),n=a(t);return Promise.resolve(r.getData(n)).then(function(e){return e?u(e):null})}catch(e){return Promise.reject(e)}},r.getTokenURI=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.tokenURI(t))}catch(e){return Promise.reject(e)}},r.isDatatokenDeployed=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.isDeployed(t))}catch(e){return Promise.reject(e)}},t}(le),xe=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,r,n,o)||this).abiEnterprise=void 0,s.nft=void 0,s.abiEnterprise=i||b.abi,s.nft=new je(s.signer,r),s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return w.abi},r.approve=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(i.approve.estimateGas(t,Q(null,null,r,18))).then(function(e){var s;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.approve,t,Q(null,null,r,18)))})}catch(e){return Promise.reject(e)}},r.createFixedRate=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(e){if(!e)throw new Error("User is not Datatoken Deployer");r.allowedConsumer||(r.allowedConsumer=de);var t=!1===r.withMint?0:1;return Promise.resolve(i.createFixedRate.estimateGas(r.fixedRateAddress,[r.baseTokenAddress,r.owner,r.marketFeeCollector,r.allowedConsumer],[r.baseTokenDecimals,r.datatokenDecimals,r.fixedRate,r.marketFee,t])).then(function(e){var s;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.createFixedRate,r.fixedRateAddress,[r.baseTokenAddress,r.owner,r.marketFeeCollector,r.allowedConsumer],[r.baseTokenDecimals,r.datatokenDecimals,r.fixedRate,r.marketFee,t]))})})}catch(e){return Promise.reject(e)}},r.createDispenser=function(e,t,r,n,o){try{var i=this;return Promise.resolve(i.isDatatokenDeployer(e,t)).then(function(t){if(!t)throw new Error("User is not Datatoken Deployer");var s=i.getContract(e);return n.allowedSwapper||(n.allowedSwapper=de),n.withMint=!1!==n.withMint,Promise.resolve(s.createDispenser.estimateGas(r,n.maxTokens,n.maxBalance,n.withMint,n.allowedSwapper)).then(function(e){var t;return o?e:Promise.resolve($(e,i.getSignerAccordingSdk(),null==(t=i.config)?void 0:t.gasFeeMultiplier,s.createDispenser,r,n.maxTokens,n.maxBalance,n.withMint,n.allowedSwapper))})})}catch(e){return Promise.reject(e)}},r.mint=function(e,t,r,n,o){try{var i=this,s=i.getContract(e);return Promise.resolve(i.getPermissions(e,t)).then(function(a){if(!0!==a.minter)throw new Error("Caller is not Minter");return Promise.resolve(i.getCap(e)).then(function(e){if(new g(e).gte(r))return Promise.resolve(s.mint.estimateGas(n||t,Q(null,null,r,18))).then(function(e){var a;return o?e:Promise.resolve($(e,i.getSignerAccordingSdk(),null==(a=i.config)?void 0:a.gasFeeMultiplier,s.mint,n||t,Q(null,null,r,18)))});throw new Error("Mint amount exceeds cap available")})})}catch(e){return Promise.reject(e)}},r.addMinter=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(e){if(!0!==e)throw new Error("Caller is not DatatokenDeployer");return Promise.resolve(i.addMinter.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addMinter,r))})})}catch(e){return Promise.reject(e)}},r.removeMinter=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(e){if(!0!==e)throw new Error("Caller is not DatatokenDeployer");return Promise.resolve(i.removeMinter.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removeMinter,r))})})}catch(e){return Promise.reject(e)}},r.addPaymentManager=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(e){if(!0!==e)throw new Error("Caller is not DatatokenDeployer");return Promise.resolve(i.addPaymentManager.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.addPaymentManager,r))})})}catch(e){return Promise.reject(e)}},r.removePaymentManager=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(e){if(!0!==e)throw new Error("Caller is not DatatokenDeployer");return Promise.resolve(i.removePaymentManager.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.removePaymentManager,r))})})}catch(e){return Promise.reject(e)}},r.setPaymentCollector=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(o.getPermissions(e,t)).then(function(s){function a(e){function s(s){function a(e){if(!c&&!u&&!(null==e?void 0:e.deployERC20))throw new Error("Caller is not Fee Manager, owner or Datatoken Deployer");return Promise.resolve(i.setPaymentCollector.estimateGas(r)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.setPaymentCollector,r))})}var u=e&&s===t;return e&&!u?Promise.resolve(e&&!u&&o.nft.getNftPermissions(e,t)).then(a):a(e&&!u&&o.nft.getNftPermissions(e,t))}return e?Promise.resolve(o.nft.getNftOwner(e)).then(s):s(e)}var c=s.paymentManager;return c?a(!c&&o.getNFTAddress(e)):Promise.resolve(!c&&o.getNFTAddress(e)).then(a)})}catch(e){return Promise.reject(e)}},r.getPaymentCollector=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getPaymentCollector())}catch(e){return Promise.reject(e)}},r.transfer=function(e,t,r,n){try{var o=this,i=o.transferWei;return Promise.resolve(Q(null,null,r,18)).then(function(r){return i.call(o,e,t,r,n)})}catch(e){return Promise.reject(e)}},r.transferWei=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(i.transfer.estimateGas(t,r)).then(function(e){var s;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.transfer,t,r))})}catch(e){return Promise.reject(e)}},r.startOrder=function(e,t,r,n,o,i){try{var s=this,a=s.getContract(e,s.abi);return o||(o={consumeMarketFeeAddress:de,consumeMarketFeeToken:de,consumeMarketFeeAmount:"0"}),Promise.resolve(a.startOrder.estimateGas(t,r,n,o)).then(function(e){var c;return i?e:Promise.resolve($(e,s.getSignerAccordingSdk(),null==(c=s.config)?void 0:c.gasFeeMultiplier,a.startOrder,t,r,n,o))})}catch(e){return Promise.reject(e)}},r.reuseOrder=function(e,t,r,n){try{var o=this,i=o.getContract(e);return Promise.resolve(i.reuseOrder.estimateGas(t,r)).then(function(e){var s;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.reuseOrder,t,r))})}catch(e){return Promise.reject(e)}},r.buyFromFreAndOrder=function(e,t,r,n){try{var o=this,i=o.getContract(e,o.abiEnterprise);return Promise.resolve(o.getFreOrderParams(r)).then(function(e){return Promise.resolve(i.buyFromFreAndOrder.estimateGas(t,e)).then(function(r){var s;return n?r:Promise.resolve($(r,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.buyFromFreAndOrder,t,e))})})}catch(e){return Promise.reject(e)}},r.buyFromDispenserAndOrder=function(e,t,r,n){try{var o=this,i=o.getContract(e,o.abiEnterprise);return Promise.resolve(i.buyFromDispenserAndOrder.estimateGas(t,r)).then(function(e){var s;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(s=o.config)?void 0:s.gasFeeMultiplier,i.buyFromDispenserAndOrder,t,r))})}catch(e){return Promise.reject(e)}},r.setData=function(e,t,r,n){try{var o=this;return Promise.resolve(o.isDatatokenDeployer(e,t)).then(function(t){if(!t)throw new Error("User is not Datatoken Deployer");var i=o.getContract(e),a=c(s(r));return Promise.resolve(i.setData.estimateGas(a)).then(function(e){var t;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(t=o.config)?void 0:t.gasFeeMultiplier,i.setData,a))})})}catch(e){return Promise.reject(e)}},r.cleanPermissions=function(e,t,r){try{var n=this,o=n.nft,i=o.getNftOwner;return Promise.resolve(n.getNFTAddress(e)).then(function(s){return Promise.resolve(i.call(o,s)).then(function(o){if(o!==t)throw new Error("Caller is NOT Nft Owner");var i=n.getContract(e);return Promise.resolve(i.cleanPermissions.estimateGas()).then(function(e){var t;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(t=n.config)?void 0:t.gasFeeMultiplier,i.cleanPermissions))})})})}catch(e){return Promise.reject(e)}},r.getPermissions=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.permissions(t))}catch(e){return Promise.reject(e)}},r.getCap=function(e){try{var t=this,r=t.getContract(e);return Promise.resolve(r.cap()).then(function(e){return Promise.resolve(t.unitsToAmount(null,e,18))})}catch(e){return Promise.reject(e)}},r.getDecimals=function(e){try{var t=this.getContract(e);return Promise.resolve(t.decimals()).then(Number)}catch(e){return Promise.reject(e)}},r.getId=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getId()).then(Number)}catch(e){return Promise.reject(e)}},r.getSymbol=function(e){try{var t=this.getContract(e);return Promise.resolve(t.symbol())}catch(e){return Promise.reject(e)}},r.getName=function(e){try{var t=this.getContract(e);return Promise.resolve(t.name())}catch(e){return Promise.reject(e)}},r.getNFTAddress=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getERC721Address())}catch(e){return Promise.reject(e)}},r.getFixedRates=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getFixedRates())}catch(e){return Promise.reject(e)}},r.getDispensers=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getDispensers())}catch(e){return Promise.reject(e)}},r.isDatatokenDeployer=function(e,t){try{var r=this.getContract(e);return Promise.resolve(r.isERC20Deployer(t))}catch(e){return Promise.reject(e)}},r.balance=function(e,t){try{var r=this,n=r.getContract(e);return Promise.resolve(n.balanceOf(t)).then(function(e){return Promise.resolve(r.unitsToAmount(null,e,18))})}catch(e){return Promise.reject(e)}},r.allowance=function(e,t,r,n){void 0===n&&(n=18);try{var o=this,i=o.getContract(e);return Promise.resolve(i.allowance(t,r)).then(function(e){return Promise.resolve(o.unitsToAmount(null,e,n))})}catch(e){return Promise.reject(e)}},r.setPublishingMarketFee=function(e,t,r,n,o,i){try{var s=this,a=s.getContract(e);return Promise.resolve(a.getPublishingMarketFee()).then(function(e){if(e[0]!==o)throw new Error("Caller is not the Publishing Market Fee Address");return Promise.resolve(a.setPublishingMarketFee.estimateGas(t,r,n)).then(function(e){var o;return i?e:Promise.resolve($(e,s.getSignerAccordingSdk(),null==(o=s.config)?void 0:o.gasFeeMultiplier,a.setPublishingMarketFee,t,r,n))})})}catch(e){return Promise.reject(e)}},r.getPublishingMarketFee=function(e){try{var t=this.getContract(e);return Promise.resolve(t.getPublishingMarketFee()).then(function(e){return{publishMarketFeeAddress:e[0],publishMarketFeeToken:e[1],publishMarketFeeAmount:e[2].toString()}})}catch(e){return Promise.reject(e)}},r.getFreOrderParams=function(e){try{var t=this,r=e.exchangeId,n=e.exchangeContract;return Promise.resolve(Q(t.signer,e.baseTokenAddress,e.maxBaseTokenAmount,e.baseTokenDecimals)).then(function(o){return Promise.resolve(Q(t.signer,e.baseTokenAddress,e.swapMarketFee,e.baseTokenDecimals)).then(function(t){return{exchangeContract:n,exchangeId:r,maxBaseTokenAmount:o,swapMarketFee:t,marketFeeAddress:e.marketFeeAddress}})})}catch(e){return Promise.reject(e)}},t}(le),De=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,n,o,i)||this).accessList=void 0,s.fileObject=void 0,s.abi=s.getDefaultAbi(),s.fileObject=r,s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return E.abi},r.setFileObj=function(e){this.fileObject=e},r.getAllowlistContract=function(e){try{var t=this.getContract(e,this.getDefaultAbi());return Promise.resolve(t.getAllowListContract())}catch(e){return Promise.reject(e)}},r.getDenylistContract=function(e){try{var t=this.getContract(e,this.getDefaultAbi());return Promise.resolve(t.getDenyListContract())}catch(e){return Promise.reject(e)}},r.setAllowListContract=function(e,t,r,n){try{var o=this;return Promise.resolve(o.isDatatokenDeployer(e,r)).then(function(r){if(!r)throw new Error("User is not Datatoken Deployer");var i=o.getContract(e);return Promise.resolve(i.setAllowListContract.estimateGas(t)).then(function(e){var r;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(r=o.config)?void 0:r.gasFeeMultiplier,i.setAllowListContract,t))})})}catch(e){return Promise.reject(e)}},r.setDenyListContract=function(e,t,r,n){try{var o=this;return Promise.resolve(o.isDatatokenDeployer(e,r)).then(function(r){if(!r)throw new Error("User is not Datatoken Deployer");var i=o.getContract(e);return Promise.resolve(i.setDenyListContract.estimateGas(t)).then(function(e){var r;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(r=o.config)?void 0:r.gasFeeMultiplier,i.setDenyListContract,t))})})}catch(e){return Promise.reject(e)}},r.setFileObject=function(e,t,r){try{var n=this;return Promise.resolve(n.isDatatokenDeployer(e,t)).then(function(t){if(!t)throw new Error("User is not Datatoken Deployer");var o=n.getContract(e);return Promise.resolve(o.setFilesObject.estimateGas(n.fileObject)).then(function(e){var t;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(t=n.config)?void 0:t.gasFeeMultiplier,o.setFilesObject,n.fileObject))})})}catch(e){return Promise.reject(e)}},r.getFileObject=function(e,t,r,n,o,i,s){try{var a=this.getContract(e,this.getDefaultAbi());return Promise.resolve(a.getFileObject(t,r,n,o,i,s))}catch(e){return Promise.reject(e)}},t}(xe),Me=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,r,n,o,i)||this).abiEnterprise=void 0,s.abi=i||s.getDefaultAbi(),s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return A.abi},r.getTokenUri=function(e){try{return Promise.resolve(this.contract.tokenURI(e))}catch(e){return Promise.reject(e)}},r.getOwner=function(){try{return Promise.resolve(this.contract.owner())}catch(e){return Promise.reject(e)}},r.getId=function(){try{return Promise.resolve(this.contract.getId()).then(Number)}catch(e){return Promise.reject(e)}},r.getName=function(){try{return Promise.resolve(this.contract.name())}catch(e){return Promise.reject(e)}},r.getSymbol=function(){try{return Promise.resolve(this.contract.symbol())}catch(e){return Promise.reject(e)}},r.balance=function(e){try{var t=this;return Promise.resolve(t.contract.balanceOf(e)).then(function(e){return Promise.resolve(t.unitsToAmount(null,e,18))})}catch(e){return Promise.reject(e)}},r.mint=function(e,t,r){try{var n=this;return Promise.resolve(n.contract.mint.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.mint,e,t))})}catch(e){return Promise.reject(e)}},r.batchMint=function(e,t,r){try{var n=this;return Promise.resolve(n.contract.batchMint.estimateGas(e,t)).then(function(o){var i;return r?o:Promise.resolve($(o,n.getSignerAccordingSdk(),null==(i=n.config)?void 0:i.gasFeeMultiplier,n.contract.batchMint,e,t))})}catch(e){return Promise.reject(e)}},r.burn=function(e,t){try{var r=this;return Promise.resolve(r.contract.burn.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.burn,e))})}catch(e){return Promise.reject(e)}},r.transferOwnership=function(e,t){try{var r=this;return Promise.resolve(r.contract.transferOwnership.estimateGas(e)).then(function(n){var o;return t?n:Promise.resolve($(n,r.getSignerAccordingSdk(),null==(o=r.config)?void 0:o.gasFeeMultiplier,r.contract.transferOwnership,e))})}catch(e){return Promise.reject(e)}},r.renounceOwnership=function(e){try{var t=this;return Promise.resolve(t.contract.renounceOwnership.estimateGas()).then(function(r){var n;return e?r:Promise.resolve($(r,t.getSignerAccordingSdk(),null==(n=t.config)?void 0:n.gasFeeMultiplier,t.contract.renounceOwnership))})}catch(e){return Promise.reject(e)}},t}(me),Oe=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,r,n,o,i)||this).abi=i||s.getDefaultAbi(),s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return F.abi},r.deployAccessListContract=function(e,t,r,n,o,i,s){void 0===n&&(n=!1);try{var a=this;if(!e||!t){var c=we();e=c.name,t=c.symbol}return Promise.resolve(a.contract.deployAccessListContract.estimateGas(e,t,n,o,i,r)).then(function(c){return s?c:function(s,u){try{var l=Promise.resolve($(c,a.getSignerAccordingSdk(),null==(m=a.config)?void 0:m.gasFeeMultiplier,a.contract.deployAccessListContract,e,t,n,o,i,r)).then(function(e){if(!e){var t="Tx for deploying new access list was not processed on chain.";throw console.error(t),t}return Promise.resolve(e.wait()).then(function(e){return ue(e,"NewAccessList").args[0]})})}catch(e){return u(e)}var m;return l&&l.then?l.then(void 0,u):l}(0,function(e){console.error("Creation of AccessList failed: "+e)})})}catch(e){return Promise.reject(e)}},r.getOwner=function(){try{return Promise.resolve(this.contract.owner())}catch(e){return Promise.reject(e)}},r.isSoulbound=function(e){try{return Promise.resolve(this.contract.isSoulBound(e))}catch(e){return Promise.reject(e)}},r.isDeployed=function(e){try{return Promise.resolve(this.contract.isDeployed(e))}catch(e){return Promise.reject(e)}},r.changeTemplateAddress=function(e,t,r){try{var n=this;return Promise.resolve(n.getOwner()).then(function(o){if(o!==e)throw new Error("Caller is not Factory Owner");if(t===de)throw new Error("Template address cannot be ZERO address");return Promise.resolve(n.contract.changeTemplateAddress.estimateGas(t)).then(function(e){var o;return r?e:Promise.resolve($(e,n.getSignerAccordingSdk(),null==(o=n.config)?void 0:o.gasFeeMultiplier,n.contract.changeTemplateAddress,t))})})}catch(e){return Promise.reject(e)}},t}(me);function Ne(e,t,r){if(!e.s){if(r instanceof Re){if(!r.s)return void(r.o=Ne.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(Ne.bind(null,e,t),Ne.bind(null,e,2));e.s=t,e.v=r;const n=e.o;n&&n(e)}}var Re=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,r){var n=new e,o=this.s;if(o){var i=1&o?t:r;if(i){try{Ne(n,1,i(this.v))}catch(e){Ne(n,2,e)}return n}return this}return this.o=function(e){try{var o=e.v;1&e.s?Ne(n,1,t?t(o):o):r?Ne(n,1,r(o)):Ne(n,2,o)}catch(e){Ne(n,2,e)}},n},e}(),Ue=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,r,n,o,i)||this).abiEnterprise=void 0,s.abi=i||s.getDefaultAbi(),s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return C.abi},r.getFunds=function(e){try{return Promise.resolve(this.contract.getFunds(e))}catch(e){return Promise.reject(e)}},r.getUserFunds=function(e,t){try{return Promise.resolve(this.contract.getUserFunds(e,t))}catch(e){return Promise.reject(e)}},r.getUserTokens=function(e){try{return Promise.resolve(this.contract.getUserTokens(e))}catch(e){return Promise.reject(e)}},r.getLocks=function(e,t,r){try{return Promise.resolve(this.contract.getLocks(e,t,r))}catch(e){return Promise.reject(e)}},r.getAuthorizations=function(e,t,r){try{return Promise.resolve(this.contract.getAuthorizations(e,t,r))}catch(e){return Promise.reject(e)}},r.verifyFundsForEscrowPayment=function(e,t,r,n,o,i,s){try{var a,c=this;return Promise.resolve(null==(a=c.signer.provider)?void 0:a.getBalance(l(t))).then(function(a){if(new v(a).isZero())return{isValid:!1,message:"Native token balance is 0. Please add funds"};var u=new xe(c.signer),h=u.allowance;return Promise.resolve(c.signer.getAddress()).then(function(a){return Promise.resolve(h.call(u,e,a,c.contract.target.toString(),s)).then(function(a){return Promise.resolve(c.amountToUnits(e,a,18)).then(function(a){function h(){var a=u.balance;return Promise.resolve(c.signer.getAddress()).then(function(h){return Promise.resolve(a.call(u,e,h)).then(function(a){if(new v(a).isZero())return{isValid:!1,message:"Payment token balance is 0. Please add funds"};var u=c.getAuthorizations;return Promise.resolve(c.signer.getAddress()).then(function(h){return Promise.resolve(u.call(c,e,h,t)).then(function(u){var h=c.getUserFunds;return Promise.resolve(c.signer.getAddress()).then(function(d){return Promise.resolve(h.call(c,d,e)).then(function(h){function d(){var r=function(){if(0===u.length)return Promise.resolve(c.authorize(l(e),l(t),(Number(n)/2).toString(),o,i)).then(function(){})}();return r&&r.then?r.then(function(){return{isValid:!0,message:""}}):{isValid:!0,message:""}}var f=function(){if(new v(h[0]).isZero()){var t=function(){if(r&&new v(m(a)).isLessThanOrEqualTo(new v(m(r)))&&new v(m(r)).isGreaterThan(new v(n)))return Promise.resolve(c.deposit(e,r,s)).then(function(){});var t=function(){if(new v(m(a)).isLessThanOrEqualTo(new v(m(n)))){var t=c.deposit;return Promise.resolve(c.unitsToAmount(e,n,s)).then(function(r){return Promise.resolve(t.call(c,e,r,s)).then(function(){})})}return Promise.resolve(c.deposit(e,a,s)).then(function(){})}();return t&&t.then?t.then(function(){}):void 0}();if(t&&t.then)return t.then(function(){})}}();return f&&f.then?f.then(d):d()})})})})})})}var d=function(){if(new v(a).isLessThan(new v(n)))return Promise.resolve(u.approve(l(e),l(c.contract.target.toString()),n)).then(function(){})}();return d&&d.then?d.then(h):h()})})})})}catch(e){return Promise.reject(e)}},r.deposit=function(e,t,r,n){try{var o=this;return Promise.resolve(o.amountToUnits(e,t,r)).then(function(t){return Promise.resolve(o.contract.deposit.estimateGas(e,t)).then(function(r){var i;return n?r:Promise.resolve($(r,o.getSignerAccordingSdk(),null==(i=o.config)?void 0:i.gasFeeMultiplier,o.contract.deposit,e,t))})})}catch(e){return Promise.reject(e)}},r.withdraw=function(e,t,r,n){try{var o=this,i=[],s=[];if(e.length!==t.length)throw new Error("Tokens and amounts arrays must have the same length");return Promise.resolve(o.signer.getAddress()).then(function(a){function c(){return Promise.resolve(Promise.all(s.map(function(e,t){return o.amountToUnits(i[t],e,r)}))).then(function(t){return Promise.resolve(o.contract.withdraw.estimateGas(e,t)).then(function(e){var r;return n?e:Promise.resolve($(e,o.getSignerAccordingSdk(),null==(r=o.config)?void 0:r.gasFeeMultiplier,o.contract.withdraw,i,t))})})}var u,l,m,h,d,f=(u=e,l=function(r){var n=e[r],c=new v(t[r]);return Promise.resolve(o.getUserFunds(a,n)).then(function(e){var o=new v(e[0]);c.isGreaterThan(0)&&c.isLessThanOrEqualTo(o)?(i.push(n),s.push(t[r])):console.log("Insufficient funds for token "+n)})},d=-1,function e(t){try{for(;++d<u.length;)if((t=l(d))&&t.then){if(!((r=t)instanceof Re&&1&r.s))return void t.then(e,h||(h=Ne.bind(null,m=new Re,2)));t=t.v}m?Ne(m,1,t):m=t}catch(e){Ne(m||(m=new Re),2,e)}var r}(),m);return f&&f.then?f.then(c):c()})}catch(e){return Promise.reject(e)}},r.authorize=function(e,t,r,n,o,i,s){try{var a=this,c=a.getAuthorizations;return Promise.resolve(a.signer.getAddress()).then(function(u){return Promise.resolve(c.call(a,e,u,t)).then(function(c){return 0!==c.length?(console.log("Payee "+t+" already authorized"),null):Promise.resolve(a.amountToUnits(e,r,i)).then(function(r){return Promise.resolve(a.amountToUnits(e,n,i)).then(function(n){return Promise.resolve(a.amountToUnits(e,o,i)).then(function(o){return Promise.resolve(a.contract.authorize.estimateGas(e,t,r,n,o)).then(function(i){var c;return s?i:Promise.resolve($(i,a.getSignerAccordingSdk(),null==(c=a.config)?void 0:c.gasFeeMultiplier,a.contract.authorize,e,t,r,n,o))})})})})})})}catch(e){return Promise.reject(e)}},r.cancelExpiredLocks=function(e,t,r,n,o){try{var i=this;return Promise.resolve(i.contract.cancelExpiredLocks.estimateGas(e,t,r,n)).then(function(s){var a;return o?s:Promise.resolve($(s,i.getSignerAccordingSdk(),null==(a=i.config)?void 0:a.gasFeeMultiplier,i.contract.cancelExpiredLocks,e,t,r,n))})}catch(e){return Promise.reject(e)}},t}(me),Ie=/*#__PURE__*/function(e){function t(t,r,n,o,i){var s;return(s=e.call(this,t,r,n,o,i)||this).abi=i||s.getDefaultAbi(),s}B(t,e);var r=t.prototype;return r.getDefaultAbi=function(){return j.abi},r.isTokenAllowed=function(e){try{return Promise.resolve(this.contract.isTokenAllowed(e))}catch(e){return Promise.reject(e)}},r.getToken=function(e){try{return Promise.resolve(this.contract.getToken(e))}catch(e){return Promise.reject(e)}},r.calculateFee=function(e,t,r){try{var n=this,o=n.amountToUnits(e,t.toString(),r);return Promise.resolve(n.contract.calculateFee(e,o)).then(function(t){return n.unitsToAmount(e,t,r)})}catch(e){return Promise.reject(e)}},t}(me),Le=function(e){try{return Promise.resolve(new Promise(function(t){setTimeout(t,e)}))}catch(e){return Promise.reject(e)}};function Ge(e){return null!=e}var _e=function(e,t){try{var r=a(s(t)),n=h(r);if(!e.provider)throw new Error("Provider is required but not available");return Promise.resolve(e.provider.getNetwork()).then(function(t){var r=t.chainId;return function(t,r){try{var o=Promise.resolve(e.signMessage(n))}catch(e){return r(e)}return o&&o.then?o.then(void 0,r):o}(0,function(t){return W.error("Sign message error: ",t),function(){if(8996===Number(r))return console.log("Signing message with _legacySignMessage"),Promise.resolve(e._legacySignMessage(n))}()})})}catch(e){return Promise.reject(e)}},ze=function(e,t){try{var r=h(t);return Promise.resolve(e._legacySignMessage(r)).then(function(e){var t="0x"+(e=e.substr(2)).slice(0,64),r="0x"+e.slice(64,128),n="0x"+e.slice(128,130);return"0x00"===n&&(n="0x1b"),"0x01"===n&&(n="0x1c"),{v:n,r:t,s:r}})}catch(e){return Promise.reject(e)}};function Be(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}function qe(e,t,r){if(!e.s){if(r instanceof Je){if(!r.s)return void(r.o=qe.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(qe.bind(null,e,t),qe.bind(null,e,2));e.s=t,e.v=r;var n=e.o;n&&n(e)}}var Je=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,r){var n=new e,o=this.s;if(o){var i=1&o?t:r;if(i){try{qe(n,1,i(this.v))}catch(e){qe(n,2,e)}return n}return this}return this.o=function(e){try{var o=e.v;1&e.s?qe(n,1,t?t(o):o):r?qe(n,1,r(o)):qe(n,2,o)}catch(e){qe(n,2,e)}},n},e}();function We(e){return e instanceof Je&&1&e.s}var Ve=/*#__PURE__*/function(){function e(e){this.aquariusURL=void 0,this.aquariusURL=e}var t=e.prototype;return t.resolve=function(e,t,r){try{var n=this.aquariusURL+"/api/aquarius/assets/ddo/"+e;return Promise.resolve(Be(function(){return Promise.resolve(x(n,{method:"GET",headers:{"Content-Type":"application/json",Authorization:r},signal:t})).then(function(e){if(e.ok)return Promise.resolve(e.json());throw new Error("HTTP request failed with status "+e.status)})},function(e){throw W.error(e),new Error("HTTP request failed")}))}catch(e){return Promise.reject(e)}},t.waitForIndexer=function(e,t,r,n,o,i){void 0===n&&(n=3e4),void 0===o&&(o=100);try{var s,a=this,c=0;o>500&&(W.warn("Max Limit exceeded, defaulting to 500 retries."),o=500);var u=function(e,t){var r;do{var n=e();if(n&&n.then){if(!We(n)){r=!0;break}n=n.v}var o=t();if(We(o)&&(o=o.v),!o)return n}while(!o.then);var i=new Je,s=qe.bind(null,i,2);return(r?n.then(a):o.then(c)).then(void 0,s),i;function a(r){for(n=r;We(o=t())&&(o=o.v),o;){if(o.then)return void o.then(c).then(void 0,s);if((n=e())&&n.then){if(!We(n))return void n.then(a).then(void 0,s);n=n.v}}qe(i,1,n)}function c(r){if(r){do{if((n=e())&&n.then){if(!We(n))return void n.then(a).then(void 0,s);n=n.v}if(We(r=t())&&(r=r.v),!r)return void qe(i,1,n)}while(!r.then);r.then(c).then(void 0,s)}else qe(i,1,n)}}(function(){function o(e){return s?e:Promise.resolve(Le(n)).then(function(){c++})}var u=Be(function(){return Promise.resolve(x(a.aquariusURL+"/api/aquarius/assets/ddo/"+e,{method:"GET",headers:{"Content-Type":"application/json",Authorization:i},signal:r})).then(function(e){return function(){if(e.ok)return Promise.resolve(e.json()).then(function(e){var r=D.getDDOClass(e).getAssetFields().indexedMetadata;return t?r.event&&r.event.txid===t?(s=1,e):void 0:(s=1,e)})}()})},function(){});return u&&u.then?u.then(o):o(u)},function(){return!s&&c<o});return Promise.resolve(u&&u.then?u.then(function(e){return s?e:null}):s?u:null)}catch(e){return Promise.reject(e)}},t.validate=function(e,t,r,n,o){try{var i=r+"/api/aquarius/assets/ddo/validate",s=r+"/api/services/nonce";return Promise.resolve(Be(function(){return Promise.resolve(t.getAddress()).then(function(r){return Promise.resolve(x(s+"?userAddress="+r,{method:"GET",headers:{"Content-Type":"application/json",Authorization:o},signal:n})).then(function(s){return Promise.resolve(s.json()).then(function(s){var a=s.nonce;console.log("[getNonce] Consumer: "+r+" nonce: "+a),a&&null!==a||(a="0");var c=(Number(a)+1).toString();return Promise.resolve(_e(t,r+c)).then(function(t){return Promise.resolve(x(i,{method:"POST",body:JSON.stringify({ddo:e,publisherAddress:r,nonce:c,signature:t}),headers:{"Content-Type":"application/octet-stream",Authorization:o},signal:n})).then(function(e){return Promise.resolve(e.json()).then(function(t){if(200!==e.status)throw new Error("Metadata validation failed");return console.log("Ddo successfully validated"),{valid:!0,hash:t.hash,proof:{validatorAddress:t.publicKey,r:t.r[0],s:t.s[0],v:t.v}}})})})})})})},function(e){W.error("Metadata validation failed",e.message)}))}catch(e){return Promise.reject(e)}},t.getAssetMetadata=function(e,t,r){try{var n=this.aquariusURL+"/api/aquarius/assets/metadata/"+e;return Promise.resolve(Be(function(){return Promise.resolve(x(n,{method:"GET",headers:{"Content-Type":"application/json",Authorization:r},signal:t})).then(function(e){if(e.ok)return e.json();throw new Error("getAssetMetadata failed: "+e.status+e.statusText)})},function(e){throw W.error("Error getting metadata: ",e),new Error("Error getting metadata: "+e)}))}catch(e){return Promise.reject(e)}},t.querySearch=function(e,t,r){try{var n=this.aquariusURL+"/api/aquarius/assets/query";return Promise.resolve(Be(function(){return Promise.resolve(x(n,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/json",Authorization:r},signal:t})).then(function(e){if(e.ok)return e.json();throw new Error("querySearch failed: "+e.status+e.statusText)})},function(e){throw W.error("Error querying metadata: ",e),new Error("Error querying metadata: "+e)}))}catch(e){return Promise.reject(e)}},e}();function He(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}var Ze=/*#__PURE__*/function(){function e(){}var t=e.prototype;return t.getConsumerAddress=function(e){try{return Promise.resolve("string"==typeof e?function(e){try{return M.decode(e,{json:!0})}catch(e){throw new Error("Error decoding JWT")}}(e).address:e.getAddress())}catch(e){return Promise.reject(e)}},t.getSignature=function(e,t){try{return Promise.resolve("string"==typeof e?null:this.signProviderRequest(e,t))}catch(e){return Promise.reject(e)}},t.getAuthorization=function(e){return"string"==typeof e?e:void 0},t.getEndpoints=function(e,t){try{var r=this;return Promise.resolve(He(function(){return Promise.resolve(r.getData(e,t)).then(function(e){return Promise.resolve(e.json())})},function(e){throw W.error("Finding the service endpoints failed:",e),new Error("HTTP request failed calling Provider")}))}catch(e){return Promise.reject(e)}},t.getEndpointURL=function(e,t){return e?e.find(function(e){return e.serviceName.toLowerCase()===t.toLowerCase()}):null},t.getServiceEndpoints=function(e,t){try{var r=[];for(var n in t.serviceEndpoints){var o={serviceName:n,method:t.serviceEndpoints[n][0],urlPath:e.replace(/\/+$/,"")+"/"+t.serviceEndpoints[n][1].replace(/^\/+/,"")};r.push(o)}return Promise.resolve(r)}catch(e){return Promise.reject(e)}},t.getNonce=function(e,t,r,n,o){try{var i=function(){function i(){var e=s.getEndpointURL(o,"nonce")?s.getEndpointURL(o,"nonce").urlPath:null;return e?He(function(){return Promise.resolve(x(e+"?userAddress="+t,{method:"GET",headers:{"Content-Type":"application/json"},signal:r})).then(function(e){return Promise.resolve(e.json()).then(function(e){var r=e.nonce;return console.log("[getNonce] Consumer: "+t+" nonce: "+r),r&&null!==r?Number(r):0})})},function(e){throw W.error(e),new Error(e.message)}):null}var a=function(){if(!o)return Promise.resolve(s.getServiceEndpoints(e,n)).then(function(e){o=e})}();return a&&a.then?a.then(i):i()},s=this,a=function(){if(!n)return Promise.resolve(s.getEndpoints(e)).then(function(e){n=e})}();return Promise.resolve(a&&a.then?a.then(i):i())}catch(e){return Promise.reject(e)}},t.signProviderRequest=function(e,t){try{var r=o.solidityPackedKeccak256(["bytes"],[o.hexlify(o.toUtf8Bytes(t))]),n=o.toBeArray(r);return Promise.resolve(He(function(){return Promise.resolve(e.signMessage(n))},function(){return Promise.resolve(e.provider.getNetwork()).then(function(t){var r=Number(t.chainId);return function(){if(8996===r)return Promise.resolve(e._legacySignMessage(n))}()})}))}catch(e){return Promise.reject(e)}},t.encrypt=function(e,t,r,n,o,i){try{var s=this;return Promise.resolve(s.getEndpoints(r)).then(function(o){return Promise.resolve(s.getServiceEndpoints(r,o)).then(function(a){return Promise.resolve(s.getConsumerAddress(n)).then(function(c){return Promise.resolve(s.getNonce(r,c,i,o,a)).then(function(r){var o=(r+1).toString(),u=String(o);return Promise.resolve(s.getSignature(n,u)).then(function(r){var n=(s.getEndpointURL(a,"encrypt")?s.getEndpointURL(a,"encrypt").urlPath:null)+"?chainId="+t;return n?(n+="&nonce="+o,n+="&consumerAddress="+c,n+="&signature="+r,He(function(){return Promise.resolve(x(n,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/octet-stream"},signal:i})).then(function(e){return Promise.resolve(e.text())})},function(e){throw W.error(e),new Error("HTTP request failed calling Provider")})):null})})})})})}catch(e){return Promise.reject(e)}},t.checkDidFiles=function(e,t,r,n,o){void 0===n&&(n=!1);try{var i=this;return Promise.resolve(i.getEndpoints(r)).then(function(s){return Promise.resolve(i.getServiceEndpoints(r,s)).then(function(r){function s(e){var t;function r(e){return t?e:Promise.resolve(a.json()).then(function(e){throw W.error("File info call failed: ",a.status,a.statusText,e),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=a)&&e.ok)return Promise.resolve(a.json()).then(function(e){for(var r,n=_(e);!(r=n()).done;)u.push(r.value);return t=1,u})}();return n&&n.then?n.then(r):r(n)}var a,c={did:e,serviceId:t,checksum:n},u=[],l=i.getEndpointURL(r,"fileinfo")?i.getEndpointURL(r,"fileinfo").urlPath:null;if(!l)return null;var m=He(function(){return Promise.resolve(x(l,{method:"POST",body:JSON.stringify(c),headers:{"Content-Type":"application/json"},signal:o})).then(function(e){a=e})},function(e){throw W.error("File info call failed: "),W.error(e),new Error(e)});return m&&m.then?m.then(s):s()})})}catch(e){return Promise.reject(e)}},t.getFileInfo=function(e,t,r,n){void 0===r&&(r=!1);try{var o=this;return Promise.resolve(o.getEndpoints(t)).then(function(i){return Promise.resolve(o.getServiceEndpoints(t,i)).then(function(t){function i(e){var t;function r(e){return t?e:Promise.resolve(s.json()).then(function(e){throw W.error("File info call failed: ",s.status,s.statusText,e),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=s)&&e.ok)return Promise.resolve(s.json()).then(function(e){for(var r,n=_(e);!(r=n()).done;)c.push(r.value);return t=1,c})}();return n&&n.then?n.then(r):r(n)}var s,a=z({},e,{checksum:r}),c=[],u=o.getEndpointURL(t,"fileinfo")?o.getEndpointURL(t,"fileinfo").urlPath:null;if(!u)return null;var l=He(function(){return Promise.resolve(x(u,{method:"POST",body:JSON.stringify(a),headers:{"Content-Type":"application/json"},signal:n})).then(function(e){s=e})},function(e){throw W.error("File info call failed: "),W.error(e),new Error(e)});return l&&l.then?l.then(i):i()})})}catch(e){return Promise.reject(e)}},t.getComputeEnvironments=function(e,t){try{var r=this;return Promise.resolve(r.getEndpoints(e)).then(function(n){return Promise.resolve(r.getServiceEndpoints(e,n)).then(function(e){var n;function o(e){var t;return null!=(t=i)&&t.ok?i.json():Promise.resolve(i.json()).then(function(e){throw W.error("Fetch compute env failed: ",i.status,i.statusText,e),new Error(JSON.stringify(e))})}var i,s=null==(n=r.getEndpointURL(e,"computeEnvironments"))?void 0:n.urlPath;if(!s)return null;var a=He(function(){return Promise.resolve(x(s,{method:"GET",headers:{"Content-Type":"application/json"},signal:t})).then(function(e){i=e})},function(e){throw W.error("Fetch compute env failed: "),W.error(e),new Error(e)});return a&&a.then?a.then(o):o()})})}catch(e){return Promise.reject(e)}},t.initialize=function(e,t,r,n,o,i,s,a,c){try{var u=this;return Promise.resolve(u.getEndpoints(o)).then(function(l){return Promise.resolve(u.getServiceEndpoints(o,l)).then(function(o){function l(e){var t;function r(e){return t?e:Promise.resolve(m.json()).then(function(e){throw W.error("Provider initialized failed: ",m.status,m.statusText,e),new Error(JSON.stringify(e))})}var n=function(e){if(200===(null==(e=m)?void 0:e.status))return Promise.resolve(m.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var m,h=u.getEndpointURL(o,"initialize")?u.getEndpointURL(o,"initialize").urlPath:null;if(!h)return null;h+="?documentId="+e,h+="&serviceId="+t,h+="&fileIndex="+r,h+="&consumerAddress="+n,s&&(h+="&userdata="+encodeURI(JSON.stringify(s))),a&&(h+="&environment="+encodeURI(a)),c&&(h+="&validUntil="+c);var d=He(function(){return Promise.resolve(x(h,{method:"GET",headers:{"Content-Type":"application/json"},signal:i})).then(function(e){m=e})},function(e){throw W.error("Provider initialized failed: "),W.error(e),new Error("Provider initialize failed url: "+h+" ")});return d&&d.then?d.then(l):l()})})}catch(e){return Promise.reject(e)}},t.initializeComputeV1=function(e,t,r,n,o,i,s,a,c){try{var u=this;return Promise.resolve(u.getEndpoints(n)).then(function(l){return Promise.resolve(u.getServiceEndpoints(n,l)).then(function(n){function l(e){var t;function r(e){return t?e:Promise.resolve(m.json()).then(function(e){throw W.error("Initialize compute failed: ",m.status,m.statusText,e),W.error("Payload was:",JSON.stringify(h)),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=m)&&e.ok)return Promise.resolve(m.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var m,h={datasets:e,algorithm:t,payment:{chainId:i,token:s,maxJobDuration:a},consumerAddress:o,environment:r},d=u.getEndpointURL(n,"initializeCompute")?u.getEndpointURL(n,"initializeCompute").urlPath:null;if(!d)return null;var f=He(function(){return Promise.resolve(x(d,{method:"POST",body:JSON.stringify(h),headers:{"Content-Type":"application/json"},signal:c})).then(function(e){m=e})},function(e){throw W.error("Initialize compute failed: "),W.error(e),new Error("ComputeJob cannot be initialized")});return f&&f.then?f.then(l):l()})})}catch(e){return Promise.reject(e)}},t.initializeCompute=function(e,t,r,n,o,i,s,a,c,u,l){try{var m=this;return Promise.resolve(m.getEndpoints(i)).then(function(h){return Promise.resolve(m.getServiceEndpoints(i,h)).then(function(d){var f=m.getEndpointURL(d,"initializeCompute")?m.getEndpointURL(d,"initializeCompute").urlPath:null;return f?Promise.resolve(m.getConsumerAddress(s)).then(function(v){return Promise.resolve(m.getNonce(i,v,l,h,d)).then(function(i){var h,d=(i+1).toString(),g=v;return g+=null==(h=e[0])?void 0:h.documentId,g+=d,Promise.resolve(m.getSignature(s,g)).then(function(i){function h(e){var t;function r(e){return t?e:Promise.resolve(d.json()).then(function(e){throw W.error("Initialize compute failed: ",d.status,d.statusText,e),W.error("Payload was:",JSON.stringify(g)),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=d)&&e.ok)return Promise.resolve(d.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var d,g={datasets:e,algorithm:t,environment:r,payment:{chainId:c,token:n,resources:a},maxJobDuration:o,consumerAddress:v,signature:i};u&&(g.policyServer=u);var p=He(function(){return console.log("Initialize compute url:",f),Promise.resolve(x(f,{method:"POST",body:JSON.stringify(g),headers:{"Content-Type":"application/json",Authorization:m.getAuthorization(s)},signal:l})).then(function(e){return d=e,console.log("Raw response:",d),function(){if(!d.ok)return Promise.resolve(d.text()).then(function(e){throw new Error(""+e)})}()})},function(e){throw W.error("Initialize compute failed: "),W.error(e),new Error("ComputeJob cannot be initialized: "+e.message+".")});return p&&p.then?p.then(h):h()})})}):null})})}catch(e){return Promise.reject(e)}},t.getDownloadUrl=function(e,t,r,n,o,i,s,a){try{var c=this;return Promise.resolve(c.getEndpoints(o)).then(function(u){return Promise.resolve(c.getServiceEndpoints(o,u)).then(function(l){var m=c.getEndpointURL(l,"download")?c.getEndpointURL(l,"download").urlPath:null;return m?Promise.resolve(c.getConsumerAddress(i)).then(function(h){return Promise.resolve(c.getNonce(o,h,null,u,l)).then(function(o){var u=(o+1).toString();return Promise.resolve(c.getSignature(i,e+u)).then(function(o){var i=m;return i+="?fileIndex="+r,i+="&documentId="+e,i+="&transferTxId="+n,i+="&serviceId="+t,i+="&consumerAddress="+h,i+="&nonce="+u,s&&(i+="&policyServer="+encodeURI(JSON.stringify(s))),i+="&signature="+o,a&&(i+="&userdata="+encodeURI(JSON.stringify(a))),i})})}):null})})}catch(e){return Promise.reject(e)}},t.computeStartV1=function(e,t,r,n,o,i,s,a){try{var c=this;return Promise.resolve(c.getEndpoints(e)).then(function(u){return Promise.resolve(c.getServiceEndpoints(e,u)).then(function(l){var m=c.getEndpointURL(l,"computeStart")?c.getEndpointURL(l,"computeStart").urlPath:null;return Promise.resolve(t.getAddress()).then(function(h){return Promise.resolve(c.getNonce(e,h,i,u,l)).then(function(e){var u=(e+1).toString(),l=h;return l+=n.documentId,l+=u,Promise.resolve(c.signProviderRequest(t,l)).then(function(e){function t(e){var t;function r(e){if(t)return e;var r=W.error,n=c.statusText,o=c.status;return Promise.resolve(c.json()).then(function(e){return r.call(W,"Compute start failed: ",o,n,e),W.error("Payload was:",l),null})}var n=function(e){if(null!=(e=c)&&e.ok)return Promise.resolve(c.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var c,l=Object();if(l.consumerAddress=h,l.signature=e,l.nonce=u,l.environment=r,l.dataset=n,l.algorithm=o,s&&(l.additionalDatasets=s),a&&(l.output=a),!m)return null;var d=He(function(){return Promise.resolve(x(m,{method:"POST",body:JSON.stringify(l),headers:{"Content-Type":"application/json"},signal:i})).then(function(e){c=e})},function(e){throw W.error("Compute start failed:"),W.error(e),W.error("Payload was:",l),new Error("HTTP request failed calling Provider")});return d&&d.then?d.then(t):t()})})})})})}catch(e){return Promise.reject(e)}},t.computeStart=function(e,t,r,n,o,i,s,a,c,u,l,m,h,d,f){try{var v=this;return console.log("called new compute start method..."),console.log("datasets: ",n),console.log("algorithm: ",o),Promise.resolve(v.getEndpoints(e)).then(function(g){return Promise.resolve(v.getServiceEndpoints(e,g)).then(function(p){var P=v.getEndpointURL(p,"computeStart")?v.getEndpointURL(p,"computeStart").urlPath:null;return P?Promise.resolve(v.getConsumerAddress(t)).then(function(y){return Promise.resolve(v.getNonce(e,y,d,g,p)).then(function(e){var g,p=(e+1).toString(),w=String(y+(null==(g=n[0])?void 0:g.documentId)+p);return Promise.resolve(v.getSignature(t,w)).then(function(e){function g(e){var t;function r(e){return t?e:Promise.resolve(w.json()).then(function(e){throw W.error("Compute start failed: ",w.status,w.statusText,e),W.error("Payload was:",b),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=w)&&e.ok)return Promise.resolve(w.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var w,b=Object();b.consumerAddress=y,b.signature=e,b.nonce=p,b.environment=r,b.maxJobDuration=i,b.resources=a,b.dataset=n[0],b.datasets=n,b.algorithm=o,b.chainId=c,b.payment={chainId:c,token:s,maxJobDuration:i},a&&(b.resources=a),u&&(b.metadata=u),l&&(b.additionalViewers=l),m&&(b.output=m),h&&(b.policyServer=h),f&&(b.queueMaxWaitTime=f);var k=He(function(){return Promise.resolve(x(P,{method:"POST",body:JSON.stringify(b),headers:{"Content-Type":"application/json",Authorization:v.getAuthorization(t)},signal:d})).then(function(e){w=e})},function(e){throw W.error("Compute start failed:"),W.error(e),W.error("Payload was:",b),new Error("HTTP request failed calling Provider")});return k&&k.then?k.then(g):g()})})}):(W.error("Compute start failed: Cannot get proper computeStart route (perhaps not implemented on provider?)"),null)})})}catch(e){return Promise.reject(e)}},t.freeComputeStart=function(e,t,r,n,o,i,s,a,c,u,l,m){try{var h=this;return console.log("called new free compute start method..."),console.log("datasets: ",n),console.log("algorithm: ",o),Promise.resolve(h.getEndpoints(e)).then(function(d){return Promise.resolve(h.getServiceEndpoints(e,d)).then(function(f){var v=h.getEndpointURL(f,"freeCompute")?h.getEndpointURL(f,"freeCompute").urlPath:null;return v?Promise.resolve(h.getConsumerAddress(t)).then(function(g){return Promise.resolve(h.getNonce(e,g,l,d,f)).then(function(e){var d=(e+1).toString(),f=d;return console.log("signatureMessage: ",f),Promise.resolve(h.getSignature(t,f)).then(function(e){function f(e){var t;function r(e){return t?e:Promise.resolve(p.json()).then(function(e){throw W.error("Compute start failed: ",p.status,p.statusText,e),W.error("Payload was:",P),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=p)&&e.ok)return Promise.resolve(p.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var p,P=Object();P.consumerAddress=g,P.signature=e,P.nonce=d,P.environment=r,P.resources=i,P.dataset=n[0],P.datasets=n,P.algorithm=o,s&&(P.metadata=s),a&&(P.additionalViewers=a),P.output=c,u&&(P.policyServer=u),m&&(P.queueMaxWaitTime=m);var y=He(function(){return Promise.resolve(x(v,{method:"POST",body:JSON.stringify(P),headers:{"Content-Type":"application/json",Authorization:h.getAuthorization(t)},signal:l})).then(function(e){p=e})},function(e){throw W.error("Compute start failed:"),W.error(e),W.error("Payload was:",P),new Error("HTTP request failed calling Provider")});return y&&y.then?y.then(f):f()})})}):(W.error("Compute start failed: Cannot get proper computeStart route (perhaps not implemented on provider?)"),null)})})}catch(e){return Promise.reject(e)}},t.computeStreamableLogs=function(e,t,r,n){try{var o=this,i="string"==typeof t;return Promise.resolve(o.getEndpoints(e)).then(function(s){return Promise.resolve(o.getServiceEndpoints(e,s)).then(function(a){var c=o.getEndpointURL(a,"computeStreamableLogs")?o.getEndpointURL(a,"computeStreamableLogs").urlPath:null;return c?Promise.resolve(o.getConsumerAddress(t)).then(function(u){return Promise.resolve(o.getNonce(e,u,n,s,a)).then(function(e){function s(){var e;function r(t){var r,n;if(null!=(r=e)&&r.ok||200===(null==(n=e)?void 0:n.status))return console.log("Response body:",e.body),e.body;var o=W.error,i=e.statusText,s=e.status;return Promise.resolve(e.json()).then(function(e){return o.call(W,"computeStreamableLogs failed: ",s,i,e),null})}var i=He(function(){return Promise.resolve(x(c+l,{method:"GET",headers:{"Content-Type":"application/json",Authorization:o.getAuthorization(t)},signal:n})).then(function(t){e=t,console.log("Raw response:",e)})},function(e){throw W.error("computeStreamableLogs failed:"),W.error(e),new Error("HTTP request failed calling Provider")});return i&&i.then?i.then(r):r()}var a=(e+1).toString(),l="?consumerAddress="+u+"&jobId="+r,m=function(){if(!i)return Promise.resolve(o.getSignature(t,""+u+r+a)).then(function(e){l+="&signature="+e,l+="&nonce="+a})}();return m&&m.then?m.then(s):s()})}):(W.error("Compute start failed: Cannot get proper computeStreamableLogs route (perhaps not implemented on provider?)"),null)})})}catch(e){return Promise.reject(e)}},t.getComputeStartRoutes=function(e,t){void 0===t&&(t=!1);try{var r=this;return Promise.resolve(r.getEndpoints(e)).then(function(n){return Promise.resolve(r.getServiceEndpoints(e,n)).then(function(e){return t?r.getEndpointURL(e,"freeCompute")?r.getEndpointURL(e,"freeCompute").urlPath:null:r.getEndpointURL(e,"computeStart")?r.getEndpointURL(e,"computeStart").urlPath:null})})}catch(e){return Promise.reject(e)}},t.computeStop=function(e,t,r,n,o){try{var i=this,s="string"==typeof r;return Promise.resolve(i.getEndpoints(t)).then(function(a){return Promise.resolve(i.getServiceEndpoints(t,a)).then(function(c){var u=i.getEndpointURL(c,"computeStop")?i.getEndpointURL(c,"computeStop").urlPath:null;return Promise.resolve(i.getConsumerAddress(r)).then(function(l){return Promise.resolve(i.getNonce(t,l,o,a,c)).then(function(t){var a=(t+1).toString();return Promise.resolve(i.getSignature(r,l+(e||""))).then(function(t){function c(e){var t;function r(e){return t?e:Promise.resolve(h.json()).then(function(e){throw W.error("Compute stop failed: ",h.status,h.statusText,e),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=h)&&e.ok)return Promise.resolve(h.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var m=new URLSearchParams;m.set("consumerAddress",l),m.set("nonce",a),m.set("jobId",e),s||m.set("signature",t),n&&m.set("agreementId",n);var h,d=m.toString();if(!d)return null;var f=He(function(){return Promise.resolve(x(u+"?"+d,{method:"PUT",headers:{"Content-Type":"application/json",Authorization:i.getAuthorization(r)},signal:o})).then(function(e){h=e})},function(e){throw W.error("Compute stop failed:"),W.error(e),new Error("HTTP request failed calling Provider")});return f&&f.then?f.then(c):c()})})})})})}catch(e){return Promise.reject(e)}},t.computeStatus=function(e,t,r,n,o,i){try{var s=this;return Promise.resolve(s.getEndpoints(e)).then(function(a){return Promise.resolve(s.getServiceEndpoints(e,a)).then(function(e){function a(e){var t;function r(e){var r;if(t)return e;function n(e){return r?e:Promise.resolve(c.json()).then(function(e){throw W.error("Get compute status failed:",c.status,c.statusText,e),new Error(JSON.stringify(e))})}W.error("Get compute status failed:",c.status,c.statusText);var o=function(e){if(null!=(e=c)&&e.ok)return Promise.resolve(c.json()).then(function(e){return r=1,e})}();return o&&o.then?o.then(n):n(o)}var n=function(e){if(null!=(e=c)&&e.ok)return Promise.resolve(c.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var c,u=s.getEndpointURL(e,"computeStatus")?s.getEndpointURL(e,"computeStatus").urlPath:null,l="?consumerAddress="+t;if(l+=n&&"&agreementId="+n||"",l+=r&&"&jobId="+r||"",!u)return null;var m=He(function(){return console.log("computeStatusUrl: ",u+l),Promise.resolve(x(u+l,{method:"GET",headers:{"Content-Type":"application/json",Authorization:i},signal:o})).then(function(e){c=e})},function(e){throw W.error("Get compute status failed"),W.error(e),new Error(e)});return m&&m.then?m.then(a):a()})})}catch(e){return Promise.reject(e)}},t.getComputeResultUrl=function(e,t,r,n){try{var o=this,i="string"==typeof t;return Promise.resolve(o.getEndpoints(e)).then(function(s){return Promise.resolve(o.getServiceEndpoints(e,s)).then(function(a){var c=o.getEndpointURL(a,"computeResult")?o.getEndpointURL(a,"computeResult").urlPath:null;return Promise.resolve(o.getConsumerAddress(t)).then(function(u){return Promise.resolve(o.getNonce(e,u,null,s,a)).then(function(e){var s=(e+1).toString(),a=u;return a+=r,a+=n.toString(),a+=s,Promise.resolve(o.getSignature(t,a)).then(function(e){if(!c)return null;var t=c;return t+="?consumerAddress="+u,t+="&jobId="+r,t+="&index="+n.toString(),i||(t+="&nonce="+s,t+="&signature="+e),t})})})})})}catch(e){return Promise.reject(e)}},t.computeDelete=function(e,t,r,n,o){try{var i=this;return Promise.resolve(i.getEndpoints(n)).then(function(s){return Promise.resolve(i.getServiceEndpoints(n,s)).then(function(a){var c=i.getEndpointURL(a,"computeDelete")?i.getEndpointURL(a,"computeDelete").urlPath:null;return Promise.resolve(i.getConsumerAddress(t)).then(function(u){return Promise.resolve(i.getNonce(n,u,o,s,a)).then(function(n){var s=(n+1).toString(),a=u;return a+=r||"",a+=e&&""+i.noZeroX(e)||"",a+=s,Promise.resolve(i.getSignature(t,a)).then(function(n){function s(e){var t;function r(e){return t?e:Promise.resolve(a.json()).then(function(e){throw W.error("Delete compute job failed:",a.status,a.statusText,e),W.error("Payload was:",l),new Error(JSON.stringify(e))})}var n=function(e){if(null!=(e=a)&&e.ok)return Promise.resolve(a.json()).then(function(e){return t=1,e})}();return n&&n.then?n.then(r):r(n)}var a,l=Object();if(l.documentId=e,l.consumerAddress=u,l.jobId=r,n&&(l.signature=n),!c)return null;var m=He(function(){return Promise.resolve(x(c,{method:"DELETE",body:JSON.stringify(l),headers:{"Content-Type":"application/json",Authorization:i.getAuthorization(t)},signal:o})).then(function(e){a=e})},function(e){throw W.error("Delete compute job failed:"),W.error(e),W.error("Payload was:",l),new Error("HTTP request failed calling Provider")});return m&&m.then?m.then(s):s()})})})})})}catch(e){return Promise.reject(e)}},t.generateAuthToken=function(e,t,r){try{var n=this;return Promise.resolve(e.getAddress()).then(function(o){return Promise.resolve(n.getEndpoints(t)).then(function(i){return Promise.resolve(n.getServiceEndpoints(t,i)).then(function(s){var a=n.getEndpointURL(s,"generateAuthToken").urlPath||null;return Promise.resolve(n.getNonce(t,o,r,i,s)).then(function(t){var i=(t+1).toString();return Promise.resolve(n.signProviderRequest(e,o+i)).then(function(e){return He(function(){return Promise.resolve(x(a,{method:"POST",body:JSON.stringify({address:o,signature:e,nonce:i}),headers:{"Content-Type":"application/json"},signal:r})).then(function(e){if(null==e||!e.ok)throw new Error("Failed to generate auth token: "+e.status+" "+e.statusText);return Promise.resolve(e.json()).then(function(e){return null==e?void 0:e.token})})},function(e){throw W.error("Generate auth token failed:"),W.error(e),new Error("HTTP request failed calling Provider")})})})})})})}catch(e){return Promise.reject(e)}},t.invalidateAuthToken=function(e,t,r,n){try{var o=this;return Promise.resolve(e.getAddress()).then(function(i){return Promise.resolve(o.getEndpoints(r)).then(function(s){return Promise.resolve(o.getServiceEndpoints(r,s)).then(function(a){var c=o.getEndpointURL(a,"invalidateAuthToken").urlPath||null;return Promise.resolve(o.getNonce(r,i,n,s,a)).then(function(r){var s=(r+1).toString();return Promise.resolve(o.signProviderRequest(e,i+s)).then(function(e){return He(function(){return Promise.resolve(x(c,{method:"POST",body:JSON.stringify({address:i,signature:e,token:t,nonce:s}),headers:{"Content-Type":"application/json"},signal:n})).then(function(e){if(null==e||!e.ok)throw new Error("Failed to invalidate auth token: "+e.status+" "+e.statusText);return Promise.resolve(e.json())})},function(e){throw W.error("Generate auth token failed:"),W.error(e),new Error("HTTP request failed calling Provider")})})})})})})}catch(e){return Promise.reject(e)}},t.isValidProvider=function(e,t){try{return Promise.resolve(He(function(){return Promise.resolve(x(e,{method:"GET",headers:{"Content-Type":"application/json"},signal:t})).then(function(e){var t,r=function(){if(null!=e&&e.ok)return Promise.resolve(e.json()).then(function(e){if(e&&(e.providerAddress||e.providerAddresses))return t=!0})}();return r&&r.then?r.then(function(e){return!!t&&e}):!!t&&r})},function(e){return W.error("Error validating provider: "+e.message),!1}))}catch(e){return Promise.reject(e)}},t.PolicyServerPassthrough=function(e,t,r){try{var n=this;return Promise.resolve(n.getEndpoints(e)).then(function(o){return Promise.resolve(n.getServiceEndpoints(e,o)).then(function(e){function o(e){var r;function n(e){return r?e:Promise.resolve(i.json()).then(function(e){throw W.error("PolicyServerPassthrough failed: ",i.status,i.statusText,e),W.error("Payload was:",JSON.stringify(t)),new Error(JSON.stringify(e))})}var o=function(e){if(null!=(e=i)&&e.ok)return Promise.resolve(i.json()).then(function(e){return r=1,e})}();return o&&o.then?o.then(n):n(o)}var i,s=n.getEndpointURL(e,"PolicyServerPassthrough")?n.getEndpointURL(e,"PolicyServerPassthrough").urlPath:null;if(!s)return null;var a=He(function(){return Promise.resolve(x(s,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"},signal:r})).then(function(e){return i=e,function(){if(!i.ok)return Promise.resolve(i.text()).then(function(e){throw new Error(""+e)})}()})},function(e){throw W.error("PolicyServerPassthrough failed: "),W.error(e),new Error("PolicyServerPassthrough failed: "+e.message+".")});return a&&a.then?a.then(o):o()})})}catch(e){return Promise.reject(e)}},t.initializePSVerification=function(e,t,r){try{var n=this;return Promise.resolve(n.getEndpoints(e)).then(function(o){return Promise.resolve(n.getServiceEndpoints(e,o)).then(function(e){function o(e){var r;function n(e){return r?e:Promise.resolve(i.json()).then(function(e){throw W.error("initializePSVerification failed: ",i.status,i.statusText,e),W.error("Payload was:",JSON.stringify(t)),new Error(JSON.stringify(e))})}var o=function(e){if(null!=(e=i)&&e.ok)return Promise.resolve(i.json()).then(function(e){return r=1,e})}();return o&&o.then?o.then(n):n(o)}var i,s=n.getEndpointURL(e,"initializePSVerification")?n.getEndpointURL(e,"initializePSVerification").urlPath:null;if(!s)return null;var a=He(function(){return Promise.resolve(x(s,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"},signal:r})).then(function(e){return i=e,function(){if(!i.ok)return Promise.resolve(i.text()).then(function(e){throw new Error(""+e)})}()})},function(e){throw W.error("initializePSVerification failed: "),W.error(e),new Error("initializePSVerification failed: "+e.message+".")});return a&&a.then?a.then(o):o()})})}catch(e){return Promise.reject(e)}},t.downloadNodeLogs=function(e,t,r,n,o,i,s,a,c){try{var u=this;return Promise.resolve(u.getEndpoints(e)).then(function(l){return Promise.resolve(u.getServiceEndpoints(e,l)).then(function(e){var l=u.getEndpointURL(e,"logs")?u.getEndpointURL(e,"logs").urlPath:null;if(!l)return W.error("Download node logs failed: Cannot get proper logs route (perhaps not implemented on provider?)"),null;var m=Date.now()+3e5;return Promise.resolve(t.signMessage(m.toString())).then(function(e){function t(e){var t;return null!=(t=u)&&t.ok?u.body:Promise.resolve(u.json()).then(function(e){throw W.error("Download node logs failed: ",u.status,u.statusText,e),new Error(JSON.stringify(e))})}var u,h=l+"?startTime="+r+"&endTime="+n;o&&(h+="&maxLogs="+o),i&&(h+="&moduleName="+i),s&&(h+="&level="+s),a&&(h+="&page="+a);var d=He(function(){return Promise.resolve(x(h,{method:"POST",body:JSON.stringify({signature:e,expiryTimestamp:m}),headers:{"Content-Type":"application/json"},signal:c})).then(function(e){u=e})},function(e){throw W.error("Download node logs failed:"),W.error(e),new Error("HTTP request failed calling Provider")});return d&&d.then?d.then(t):t()})})})}catch(e){return Promise.reject(e)}},t.noZeroX=function(e){return this.zeroXTransformer(e,!1)},t.zeroXTransformer=function(e,t){void 0===e&&(e="");var r=this.inputMatch(e,/^(?:0x)*([a-f0-9]+)$/i,"zeroXTransformer");return(t&&r.valid?"0x":"")+r.output},t.inputMatch=function(e,t,r){if("string"!=typeof e)throw W.debug("Not input string:"),W.debug(e),new Error("["+r+"] Expected string, input type: "+typeof e);var n=e.match(t);return n?{valid:!0,output:n[1]}:(W.warn("["+r+"] Input transformation failed."),{valid:!1,output:e})},t.getData=function(e,t){try{return Promise.resolve(x(e,{method:"GET",headers:{"Content-type":"application/json",Authorization:t}}))}catch(e){return Promise.reject(e)}},e}(),Xe=new Ze;function Ke(e,t){return e=l(e),"did:op:"+O(e+t.toString(10)).toString()}function $e(e){return O(e).toString()}var Qe=function(e,t){try{return Promise.resolve(fetch(e)).then(function(r){if(!r.ok)throw new Error("Response error.");var n;try{n=r.headers.get("content-disposition").match(/attachment;filename=(.+)/)[1]}catch(r){try{n=e.split("/").pop()}catch(e){n="file"+t}}return Promise.resolve(r.arrayBuffer()).then(function(e){return{data:e,filename:n}})})}catch(e){return Promise.reject(e)}};function Ye(e){var t=new XMLHttpRequest;t.responseType="blob",t.open("GET",e),t.onload=function(){var e=t.getResponseHeader("content-disposition"),r=null==e?void 0:e.match(/filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/),n=r&&r[1]?r[1]:"file",o=window.URL.createObjectURL(t.response),i=document.createElement("a");i.href=o,i.setAttribute("download",n),document.body.appendChild(i),i.click(),i.remove(),window.URL.revokeObjectURL(o)},t.send()}var et=function(e,t){try{var r=new o.Contract(t,K,e);return Promise.resolve(r.decimals()).then(Number)}catch(e){return Promise.reject(e)}},tt=function(e,t,r,n){try{var i=new o.Contract(t,K,e);return Promise.resolve(i.allowance(r,n))}catch(e){return Promise.reject(e)}},rt=function(e,t,r,n){try{var i=new o.Contract(t,K,e);return Promise.resolve(i.balanceOf(r)).then(function(r){return Promise.resolve(Y(e,t,r,n))})}catch(e){return Promise.reject(e)}},nt=function(e,t,r,n,i){try{var s=new o.Contract(t,K,e);return Promise.resolve(s.allowance(r,n)).then(function(r){return Promise.resolve(Y(e,t,r,i))})}catch(e){return Promise.reject(e)}},ot=function(e,t,r,n,i,s,a){try{var c=new o.Contract(r,K,e);return Promise.resolve(Q(e,r,i,s)).then(function(r){return Promise.resolve(c.transfer.estimateGas(n,r)).then(function(o){return a?o:Promise.resolve($(o,e,null==t?void 0:t.gasFeeMultiplier,c.transfer,n,r))})})}catch(e){return Promise.reject(e)}},it=function(e,t,r,n,i,s,a,c){void 0===a&&(a=!1);try{var u,l=function(r){if(u)return r;var n=null;return Promise.resolve(m.approve.estimateGas(i,s)).then(function(r){if(c)return r;var o=function(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}(function(){return Promise.resolve($(r,e,null==t?void 0:t.gasFeeMultiplier,m.approve,i,s)).then(function(e){n=e})},function(e){W.error("ERROR: Failed to approve spender to spend tokens : "+e.message)});return o&&o.then?o.then(function(){return n}):n})},m=new o.Contract(n,K,e),h=function(){if(!a)return Promise.resolve(tt(e,n,r,i)).then(function(e){if(new v(e).isGreaterThan(new v(s))){var t=BigInt(e);return u=1,t}})}();return Promise.resolve(h&&h.then?h.then(l):l(h))}catch(e){return Promise.reject(e)}},st=function(e,t,r,n,i,s,a,c,u){void 0===a&&(a=!1);try{var l,m=function(r){return l?r:Promise.resolve(Q(e,n,s,c)).then(function(r){return Promise.resolve(h.approve.estimateGas(i,r)).then(function(n){return u?new g(n.toString()):Promise.resolve($(n,e,null==t?void 0:t.gasFeeMultiplier,h.approve,i,r))})})},h=new o.Contract(n,K,e),d=function(){if(!a)return Promise.resolve(nt(e,n,r,i)).then(function(e){if(new g(e).greaterThanOrEqualTo(new g(s))){var t=new g(e).toNumber();return l=1,t}})}();return Promise.resolve(d&&d.then?d.then(m):m(d))}catch(e){return Promise.reject(e)}},at={datasets:{invalid:"Datasets is not a list, as expected"},algorithm:{serviceId:{missing:"The serviceId key is missing from the algorithm s DDO.",not_found:"The provided serviceId does not exist.",service_not_access_compute:"Service type is neither access, nor compute.",main_service_compute:"If the main service is not compute for this asset when calling initialize endpoint.",compute_services_not_in_same_provider:"Files attached to the compute service are not decrypted by the correct provider. This occurs when both asset and algorithm are requested by their compute service which cannot be decrypted by a single provider as how it is supposed to be."},container:{checksum_prefix:"Container checksum does not start with the prefix sha256:.",mising_entrypoint_image_checksum:"Either entrypoint, either image, or either checksum are missing from the container dictionary from the algorithm s DDO."},documentId:{did_not_found:"The algorithm s DID could not be retrieved from the metadata store, because the algorithm asset does not exist.",missing:"The documentId key is missing from the algorithm s DDO."},transferTxId:{missing:"The transferTxId key is missing from the algorithm s DDO."},missing_meta_documentId:"Either algorithm metadata, or algorithm DID are missing.",did_not_found:"Either algorithm metadata, or algorithm DID are missing.",not_algo:"Either algorithm metadata, or algorithm DID are missing.",in_use_or_not_on_chain:"Either algorithm metadata, or algorithm DID are missing.",meta_oneof_url_rawcode_remote:"Either algorithm metadata, or algorithm DID are missing.",file_unavailable:"One possibility is that the asset could not be retrieved from Aquariuss database. Otherwise, there are issues related to services"},error:{not_trusted_algo_publisher:"The owner of the algorithm's DDO is not a trusted algorithms publishers list.",not_trusted_algo:"The algorithm's DID is not in the asset's trusted algorithms dictionary. ",no_publisherTrustedAlgorithms:"The algorithm's key publisherTrustedAlgorithms does not exist in the algorithm's DDO.",algorithm_file_checksum_mismatch:"filesChecksum from the algorithm's DDO is invalid.",algorithm_container_checksum_mismatch:"The containerChecksum from the algorithm's DDO is invalid.",no_raw_algo_allowed:"The asset does not allow raw algorithms to be run on it.","Asset malformed":"The asset published on chain is malformed, missing some required keys or not compliant with our schemas.","Asset is not consumable.":"Assets metadata status is not in the range of valid status codes for assets. The recognized states for the metadata are defined on our docs.","DID is not a valid algorithm.":"Either the algorithm assets DID is incorrectly typed, either the algorithm timeout expired.","Compute environment does not exist.":"The compute environment provided by the user does not exist, it is not served by our compute-to-data feature. The user can use get_c2d_environments to check the list of available compute environments.","The validUntil value is not correct.":"validUntil value is most probably expired.","Cannot resolve DID":"The dataset DID does not exist in the Metadata store.","Invalid serviceId":"The serviceId of that dataset is not correct.","Unable to get dataset files":"The files of that dataset could not be decrypted or retrieved","cannot decrypt files for this service.":"The files of that dataset could not be decrypted due to the fact that file object, which contains the structure and the type of specific file, is missing from the validation part.","Unsupported type ":"The file object type is not supported by Provider.","malformed file object":"The file object structure is invalid and does not contain the wanted information for the specific file."},order:{fees_not_paid:" Provider fees are not paid."},output:{invalid:"The algorithms validation after the build stage has not been decoded properly as a dictionary."}};function ct(e){try{var t=JSON.parse(e),r=Object.keys(t)[0];if("error"===r){var n,o=t[r];return(null==(n=at[r])?void 0:n[o])||"Provider request failed: "+o}var i=t[r];return t[Object.keys(t)[1]]+" : "+i}catch(t){return W.error("[getErrorMessage] error: ",t),e}}function ut(e,t,r){if(!e.s){if(r instanceof lt){if(!r.s)return void(r.o=ut.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(ut.bind(null,e,t),ut.bind(null,e,2));e.s=t,e.v=r;var n=e.o;n&&n(e)}}var lt=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,r){var n=new e,o=this.s;if(o){var i=1&o?t:r;if(i){try{ut(n,1,i(this.v))}catch(e){ut(n,2,e)}return n}return this}return this.o=function(e){try{var o=e.v;1&e.s?ut(n,1,t?t(o):o):r?ut(n,1,r(o)):ut(n,2,o)}catch(e){ut(n,2,e)}},n},e}(),mt=function(e,t,r,n,o,i,s,a,c,u,l,m){void 0===c&&(c="0"),void 0===u&&(u=0),void 0===l&&(l=0),void 0===m&&(m=0);try{var h=D.getDDOClass(e),d=h.getAssetFields().datatokens,f=h.getDDOFields(),v=f.chainId,p=f.services;return s||(s={consumeMarketFeeAddress:"0x0000000000000000000000000000000000000000",consumeMarketFeeAmount:"0",consumeMarketFeeToken:"0x0000000000000000000000000000000000000000"}),Promise.resolve(t.provider.getNetwork()).then(function(h){if(v!==Number(h.chainId))throw new Error("Chain ID from DDO is different than the configured network.");if(!d[u].address)throw new Error("The datatoken with index: "+u+" does not exist for the asset with did: "+e.id);if(!p[l].id)throw new Error("There is no service with index: "+l+" defined for the asset with did: "+e.id);return Promise.resolve(n.getId(d[u].address)).then(function(h){return Promise.resolve(n.getFixedRates(d[u].address)).then(function(f){return Promise.resolve(n.getDispensers(d[u].address)).then(function(v){return Promise.resolve(n.getPublishingMarketFee(d[u].address)).then(function(P){function y(e){return a?e:Promise.resolve(k.call(Xe,S,T,0,e,o||r.oceanNodeUri)).then(w)}function w(o){function v(o){function a(o){var i,a={consumer:o,serviceIndex:l,_providerFee:y,_consumeMarketFee:s};return function(e,t){var r,n=-1;e:{for(var o=0;o<t.length;o++){var i=t[o][0];if(i){var s=i();if(s&&s.then)break e;if(s===e){n=o;break}}else n=o}if(-1!==n){do{for(var a=t[n][1];!a;)n++,a=t[n][1];var c=a();if(c&&c.then){r=!0;break e}var u=t[n][2];n++}while(u&&!u());return c}}var l=new lt,m=ut.bind(null,l,2);return(r?c.then(h):s.then(function r(s){for(;;){if(s===e){n=o;break}if(++o===t.length){if(-1!==n)break;return void ut(l,1,c)}if(i=t[o][0]){if((s=i())&&s.then)return void s.then(r).then(void 0,m)}else n=o}do{for(var a=t[n][1];!a;)n++,a=t[n][1];var c=a();if(c&&c.then)return void c.then(h).then(void 0,m);var u=t[n][2];n++}while(u&&!u());ut(l,1,c)})).then(void 0,m),l;function h(e){for(;;){var r=t[n][2];if(!r||r())break;n++;for(var o=t[n][1];!o;)n++,o=t[n][1];if((e=o())&&e.then)return void e.then(h).then(void 0,m)}ut(l,1,e)}}(b,[[function(){return"free"},function(){var e=function(e){var t;if(i)return e;function o(e){if(t)return e}var s=function(){if(2===h||4===h)return Promise.resolve(n.buyFromDispenserAndOrder(p[l].datatokenAddress,a,r.dispenserAddress)).then(function(e){return t=1,e})}();return s&&s.then?s.then(o):o(s)},o=function(){if(1===h){var e=new he(r.dispenserAddress,t),o=e.dispense,s=d[u].address;return Promise.resolve(t.getAddress()).then(function(t){return Promise.resolve(o.call(e,s,"1",t)).then(function(e){if(!e)throw new Error("Failed to dispense !");return Promise.resolve(e.wait()).then(function(){return Promise.resolve(n.startOrder(d[u].address,a.consumer,a.serviceIndex,a._providerFee,a._consumeMarketFee)).then(function(e){return i=1,e})})})})}}();return o&&o.then?o.then(e):e(o)}],[function(){return"fixed"},function(){var o=new pe(r.fixedRateExchangeAddress,t);if(!f[m].id)throw new Error("There is no fixed rate exchange with index: "+l+" for the asset with did: "+e.id);return Promise.resolve(o.getFeesInfo(f[m].id)).then(function(e){return Promise.resolve(o.getExchange(f[m].id)).then(function(i){return Promise.resolve(o.calcBaseInGivenDatatokensOut(e.exchangeId,"1",s.consumeMarketFeeAmount)).then(function(l){var m;function f(e){var o;if(m)return e;function s(e){if(o)return e}var c=function(){if(2===h||4===h)return Promise.resolve(t.getAddress()).then(function(e){return Promise.resolve(st(t,r,e,i.baseToken,d[u].address,v,!1)).then(function(e){function t(e){if(!e)throw new Error("Failed to confirm/mine approval transaction!");return Promise.resolve(n.buyFromFreAndOrder(d[u].address,a,p)).then(function(e){return o=1,e})}if(!e)throw new Error("Failed to approve "+i.baseToken+" !");return"number"!=typeof e?Promise.resolve("number"!=typeof e?e.wait():e).then(t):t("number"!=typeof e?e.wait():e)})})}();return c&&c.then?c.then(s):s(c)}var v=new g(+l.baseTokenAmount||0).add(new g(s.consumeMarketFeeAmount||0)).add(new g(+P.publishMarketFeeAmount||0)).toString(),p={exchangeContract:r.fixedRateExchangeAddress,exchangeId:e.exchangeId,maxBaseTokenAmount:v,baseTokenAddress:i.baseToken,baseTokenDecimals:parseInt(i.btDecimals)||18,swapMarketFee:c,marketFeeAddress:P.publishMarketFeeAddress},y=function(){if(1===h)return Promise.resolve(t.getAddress()).then(function(e){return Promise.resolve(st(t,r,e,i.baseToken,r.fixedRateExchangeAddress,v,!1)).then(function(e){function t(e){if(!e)throw new Error("Failed to approve "+i.baseToken+" !");return Promise.resolve(o.buyDatatokens(i.exchangeId,"1",v,P.publishMarketFeeAddress,c)).then(function(e){return Promise.resolve(e.wait()).then(function(e){if(!e)throw new Error("Failed to buy datatoken from fixed rate!");return Promise.resolve(n.startOrder(d[u].address,a.consumer,a.serviceIndex,a._providerFee,a._consumeMarketFee)).then(function(e){return m=1,e})})})}return"number"!=typeof e?Promise.resolve("number"!=typeof e?e.wait():e).then(t):t("number"!=typeof e?e.wait():e)})})}();return y&&y.then?y.then(f):f(y)})})})}],[void 0,function(){throw new Error("Pricing schema not supported !")}]])}return i?a(i):Promise.resolve(t.getAddress()).then(a)}var y=a||o.providerFee,w=function(){if(y&&y.providerFeeAddress!==de&&y.providerFeeAmount&&parseInt(y.providerFeeAmount)>0)return function(e,n){try{var o=Promise.resolve(t.getAddress()).then(function(e){return Promise.resolve(it(t,r,e,y.providerFeeToken,p[0].datatokenAddress,y.providerFeeAmount)).then(function(){})})}catch(e){return n()}return o&&o.then?o.then(void 0,n):o}(0,function(){throw new Error("Failed to approve provider fee token "+y.providerFeeToken)})}();return w&&w.then?w.then(v):v()}var b=f.length>0?"fixed":v.length>0?"free":"NOT_ALLOWED",k=a||Xe.initialize,T=a||p[l].id,S=a||e.id;return a?y(w(a)):Promise.resolve(t.getAddress()).then(y)})})})})})}catch(e){return Promise.reject(e)}};function ht(e,t){try{var r=e()}catch(e){return t(e)}return r&&r.then?r.then(void 0,t):r}var dt=function(e,t,r){try{var n=new o.Contract(e,F.abi,t);return Promise.resolve(t.getAddress()).then(function(e){var t,o=ht(function(){return Promise.resolve(n.deployAccessListContract("AllowList","ALLOW",!0,e,r||[e],["https://oceanprotocol.com/nft/"])).then(function(e){return function(){if(e&&e.wait)return Promise.resolve(e.wait()).then(function(e){var r=ue(e,"NewAccessList");return t=1,r.args[0]})}()})},function(e){console.log("ERROR createAccessListFactory(): ",e)});return o&&o.then?o.then(function(e){return t?e:null}):t?o:null})}catch(e){return Promise.reject(e)}},ft=function(e,t,r,n,i,a,u,l,m,h,f,v,g,p,P){void 0===u&&(u=!0);try{var y,w,b=this,k=D.getDDOClass(a),T=k.getAssetFields().indexedMetadata,S=(null==(y=k.getDDOData())||null==(y=y.stats)||null==(y=y.price)?void 0:y.value)||(null==T||null==(w=T.stats[0])||null==(w=w.prices[0])?void 0:w.price),A=k.getDDOFields(),F=A.chainId,C=A.nftAddress,j=k.getDDOFields().services;if("string"!=typeof i&&"number"!=typeof i)throw new Error('Invalid template! Must be a "number" or a "string"');return Promise.resolve(r.provider.getNetwork()).then(function(y){var w=y.chainId;if(F&&F!==Number(w))throw new Error("Chain ID from DDO is different than the configured network.");var T=(new X).getConfig(parseInt(String(w)));return Promise.resolve(Ae(r,T.nftFactoryAddress,i,Number(w))).then(function(i){if(i<1){if(Number(w)!==vt)throw new Error("Invalid template index: "+i);i=1}var y=new je(r,Number(w)),A=new ke(T.nftFactoryAddress,r,Number(w));return Promise.resolve(r.getAddress()).then(function(x){var D,M;function O(e){return M?e:Promise.resolve(U.wait()).then(function(e){var t;function i(e){if(t)return e;function o(){function e(){var e=y.setMetadata,i=C;return Promise.resolve(r.getAddress()).then(function(r){return Promise.resolve(e.call(y,i,r,0,l,"",d(o),t,n)).then(function(){return a.id})})}j[0].datatokenAddress=g,j[0].serviceEndpoint=l;var t,n,o,i=k.makeDid(C=v,F.toString());a=k.updateFields({id:i,nftAddress:C});var s=function(){if(u)return Promise.resolve(Xe.encrypt(a,Number(w),l,r,null)).then(function(e){return t=e,Promise.resolve(h.validate(a,r,l)).then(function(e){n=e.hash,o=2})});var e=JSON.stringify(a),i=Buffer.from(e);t=c(i),n="0x"+N("sha256").update(t).digest("hex"),o=0}();return s&&s.then?s.then(e):e()}var i=function(){if("oasis"!==T.sdk)return Promise.resolve(Xe.encrypt(n,Number(w),l,r,null)).then(function(e){j[0].files=e});j[0].files=""}();return i&&i.then?i.then(o):o()}var m=ue(e,"NFTCreated"),f=ue(e,"TokenCreated"),v=m.args.newTokenAddress,g=f.args.newTokenAddress;n.datatokenAddress=g,n.nftAddress=v;var p=function(){if("oasis"===T.sdk){var e=new o.Contract(g,E.abi,r);return ht(function(){return Promise.resolve(e.setFilesObject(s(JSON.stringify(n)))).then(function(e){var t=function(){if(e.wait)return Promise.resolve(e.wait()).then(function(){})}();if(t&&t.then)return t.then(function(){})})},function(e){return console.log("Error updating files object with data token and nft addresses: ",e),t=1,null})}}();return p&&p.then?p.then(i):i(p)})}var U,I={name:e,symbol:t,templateIndex:1,tokenURI:"aaa",transferable:!0,owner:x},L={templateIndex:i,cap:"100000",feeAmount:"0",paymentCollector:x,feeToken:m||T.oceanTokenAddress,minter:x,mpFeeAddress:de};null!=n&&n.files[0].type&&[R.ARWEAVE,R.IPFS,R.URL].includes(null==n||null==(D=n.files[0])||null==(D=D.type)?void 0:D.toLowerCase())||(console.log('Missing or invalid files object type, defaulting to "url"'),n.type=R.URL),"oasis"===T.sdk&&(L.filesObject=n,L.accessListFactory=f||T.accessListFactory,L.allowAccessList=v,L.denyAccessList=g);var G=ht(function(){var e=function(){if(!S)return Promise.resolve(A.createNftWithDatatoken(I,L)).then(function(e){U=e});var e=function(){if("0"===S.toString())return Promise.resolve(A.createNftWithDatatokenWithDispenser(I,L,{dispenserAddress:T.dispenserAddress,maxTokens:"1",maxBalance:"100000000",withMint:!0,allowedSwapper:de})).then(function(e){U=e});var e=p||T.oceanTokenAddress;return Promise.resolve(ee(b.signer,e)).then(function(t){P||(P=t);var r={fixedRateAddress:T.fixedRateExchangeAddress,baseTokenAddress:e,owner:x,marketFeeCollector:x,baseTokenDecimals:P,datatokenDecimals:18,fixedRate:S.toString(),marketFee:"0",allowedConsumer:x,withMint:!0};return Promise.resolve(A.createNftWithDatatokenWithFixedRate(I,L,r)).then(function(e){U=e})})}();return e&&e.then?e.then(function(){}):void 0}();if(e&&e.then)return e.then(function(){})},function(e){return console.log("ERROR creating NFT bundle",e),M=1,null});return G&&G.then?G.then(O):O(G)})})})}catch(e){return Promise.reject(e)}},vt=8996;function gt(e){var t=(new X).getConfig(e);return t&&"oasis"===t.sdk}export{Me as AccessListContract,Oe as AccesslistFactory,Ve as Aquarius,L as Config,X as ConfigHelper,vt as DEVELOPMENT_CHAIN_ID,xe as Datatoken,De as Datatoken4,he as Dispenser,U as EncryptMethod,Ie as EnterpriseFeeCollectorContract,Ue as EscrowContract,ge as FEE_HISTORY_NOT_SUPPORTED,R as FileObjectType,pe as FixedRateExchange,fe as GASLIMIT_DEFAULT,Z as KNOWN_CONFIDENTIAL_EVMS,I as LogLevel,J as Logger,W as LoggerInstance,ve as MAX_UINT_256,je as Nft,ke as NftFactory,Ze as Provider,Xe as ProviderInstance,Pe as Router,le as SmartContract,me as SmartContractWithAddress,de as ZERO_ADDRESS,nt as allowance,tt as allowanceWei,Q as amountToUnits,st as approve,it as approveWei,rt as balance,Ae as calculateActiveTemplateIndex,H as configHelperNetworks,dt as createAccessListFactory,ft as createAsset,et as decimals,Qe as downloadFile,Ye as downloadFileBrowser,Ke as generateDid,we as generateDtName,ct as getErrorMessage,ue as getEventFromTx,te as getFairGasPrice,$e as getHash,Fe as getOceanArtifactsAddresses,Ce as getOceanArtifactsAddressesByChainId,ee as getTokenDecimals,Ge as isDefined,K as minAbi,mt as orderAsset,$ as sendTx,ce as setContractDefaults,ze as signHash,_e as signRequest,Le as sleep,ot as transfer,Y as unitsToAmount,gt as useOasisSDK};
2
2
  //# sourceMappingURL=lib.module.mjs.map