harsta
Version:
Harsta is a contract development tool based on Hardhat, designed to streamline the development, testing, and referencing of contracts, addresses, ABIs, and contract instances.
2 lines (1 loc) • 4.78 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _pathe = require('pathe'); var _pathe2 = _interopRequireDefault(_pathe);var _resolveimportpath = require('resolve-import-path');var n=process.env.userRoot||process.cwd().replace(/\\/g,"/"),l= exports.b =_resolveimportpath.resolveImport.call(void 0, "@harsta/client/package.json",!1,{basedir:n}),m= exports.c =process.env.clientRoot||(l?_pathe2.default.dirname(l):void 0),h= exports.d =process.env.packRoot||_pathe2.default.dirname(_resolveimportpath.resolveImport.call(void 0, "harsta/package.json",!0)),s= exports.e =_pathe2.default.resolve(h,"./generated");var r={userFragments:"./config/fragments",userTest:"./test",userSources:"./contracts",harstaCache:"./.harsta/cache",harstaArtifacts:"./.harsta/artifacts",harstaDeployments:"./.harsta/deployments",harstaFragments:"./.harsta/exports",packDeploy:"./deploy",packSources:"./contracts",generateFactories:"./factories",generateContracts:"./contracts",generateFactoriesTypechain:"./_typechain-factories",generateContractsTypechain:"./_typechain-contracts",generateFactoriesTypechainIndexTS:"./_typechain-factories/index.ts",generateContractsTypechainIndexTS:"./_typechain-contracts/index.ts",generateFactoriesFragments:"./_fragments-factories",generateContractsFragments:"./_fragments-contracts",generateChains:"./chains",generateChainsIndexTS:"./chains/index.ts",generateAddresses:"./addresses",generateAddressesIndexTS:"./addresses/index.ts"},o= exports.g ={userFragments:_pathe2.default.resolve(n,r.userFragments),userTest:_pathe2.default.resolve(n,r.userTest),userSources:_pathe2.default.resolve(n,r.userSources),harstaCache:_pathe2.default.resolve(n,r.harstaCache),harstaArtifacts:_pathe2.default.resolve(n,r.harstaArtifacts),harstaDeployments:_pathe2.default.resolve(n,r.harstaDeployments),harstaFragments:_pathe2.default.resolve(n,r.harstaFragments),packDeploy:_pathe2.default.resolve(h,r.packDeploy),packSources:_pathe2.default.resolve(h,r.packSources),generateFactories:_pathe2.default.resolve(s,r.generateFactories),generateContracts:_pathe2.default.resolve(s,r.generateContracts),generateFactoriesTypechain:_pathe2.default.resolve(s,r.generateFactoriesTypechain),generateContractsTypechain:_pathe2.default.resolve(s,r.generateContractsTypechain),generateFactoriesTypechainIndexTS:_pathe2.default.resolve(s,r.generateFactoriesTypechainIndexTS),generateContractsTypechainIndexTS:_pathe2.default.resolve(s,r.generateContractsTypechainIndexTS),generateFactoriesFragments:_pathe2.default.resolve(s,r.generateFactoriesFragments),generateContractsFragments:_pathe2.default.resolve(s,r.generateContractsFragments),generateChains:_pathe2.default.resolve(s,r.generateChains),generateChainsIndexTS:_pathe2.default.resolve(s,r.generateChainsIndexTS),generateAddresses:_pathe2.default.resolve(s,r.generateAddresses),generateAddressesIndexTS:_pathe2.default.resolve(s,r.generateAddressesIndexTS)};function k(t){let c={},p={apiKey:{},customChains:[]};for(let i in t.networks){let a=t.networks[i];c[i]={url:a.rpc,chainId:a.id,...a.deploy},a.verify&&(p.apiKey[i]=a.verify.key||" ",c[i].verify={etherscan:{apiUrl:a.verify.api||`${a.verify.uri}/api`,apiKey:a.verify.key||""}},p.customChains.push({chainId:a.id,network:i,urls:{apiURL:a.verify.api||`${a.verify.uri}/api`,browserURL:_optionalChain([a, 'access', _ => _.explorer, 'optionalAccess', _2 => _2.url])||a.verify.uri||""}}))}let d={sourcify:{enabled:!1},...t,etherscan:p,networks:c,paths:{sources:o.packSources,deploy:o.packDeploy,tests:o.userTest,cache:o.harstaCache,artifacts:o.harstaArtifacts,deployments:o.harstaDeployments},typechain:{outDir:o.generateFactoriesTypechain},abiExporter:{path:o.generateFactoriesFragments}};return d.harsta=t,d}function S(t,c){return{id:t.id,name:t.name,nativeCurrency:t.currency,rpcUrls:{default:{http:[t.rpc].filter(Boolean)},public:{http:[t.rpc].filter(Boolean)}},...t.explorer?{blockExplorers:{default:t.explorer}}:{},iconUrl:_optionalChain([t, 'optionalAccess', _3 => _3.icon]),testnet:t.testnet,addresses:c||{}}}exports.a = n; exports.b = l; exports.c = m; exports.d = h; exports.e = s; exports.f = r; exports.g = o; exports.h = k; exports.i = S;