hardhatjs 2.22.15
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.
- package/.eslintrc.js +41 -0
- package/LICENSE +55 -0
- package/README.md +53 -0
- package/builtin-tasks/check.d.ts +2 -0
- package/builtin-tasks/check.d.ts.map +1 -0
- package/builtin-tasks/check.js +6 -0
- package/builtin-tasks/check.js.map +1 -0
- package/builtin-tasks/clean.d.ts +2 -0
- package/builtin-tasks/clean.d.ts.map +1 -0
- package/builtin-tasks/clean.js +24 -0
- package/builtin-tasks/clean.js.map +1 -0
- package/builtin-tasks/compile.d.ts +2 -0
- package/builtin-tasks/compile.d.ts.map +1 -0
- package/builtin-tasks/compile.js +952 -0
- package/builtin-tasks/compile.js.map +1 -0
- package/builtin-tasks/console.d.ts +2 -0
- package/builtin-tasks/console.d.ts.map +1 -0
- package/builtin-tasks/console.js +55 -0
- package/builtin-tasks/console.js.map +1 -0
- package/builtin-tasks/flatten.d.ts +2 -0
- package/builtin-tasks/flatten.d.ts.map +1 -0
- package/builtin-tasks/flatten.js +210 -0
- package/builtin-tasks/flatten.js.map +1 -0
- package/builtin-tasks/help.d.ts +2 -0
- package/builtin-tasks/help.d.ts.map +1 -0
- package/builtin-tasks/help.js +49 -0
- package/builtin-tasks/help.js.map +1 -0
- package/builtin-tasks/node.d.ts +2 -0
- package/builtin-tasks/node.d.ts.map +1 -0
- package/builtin-tasks/node.js +212 -0
- package/builtin-tasks/node.js.map +1 -0
- package/builtin-tasks/run.d.ts +2 -0
- package/builtin-tasks/run.d.ts.map +1 -0
- package/builtin-tasks/run.js +41 -0
- package/builtin-tasks/run.js.map +1 -0
- package/builtin-tasks/task-names.d.ts +55 -0
- package/builtin-tasks/task-names.d.ts.map +1 -0
- package/builtin-tasks/task-names.js +59 -0
- package/builtin-tasks/task-names.js.map +1 -0
- package/builtin-tasks/test.d.ts +2 -0
- package/builtin-tasks/test.d.ts.map +1 -0
- package/builtin-tasks/test.js +142 -0
- package/builtin-tasks/test.js.map +1 -0
- package/builtin-tasks/utils/solidity-files-cache.d.ts +29 -0
- package/builtin-tasks/utils/solidity-files-cache.d.ts.map +1 -0
- package/builtin-tasks/utils/solidity-files-cache.js +126 -0
- package/builtin-tasks/utils/solidity-files-cache.js.map +1 -0
- package/builtin-tasks/utils/watch.d.ts +5 -0
- package/builtin-tasks/utils/watch.d.ts.map +1 -0
- package/builtin-tasks/utils/watch.js +71 -0
- package/builtin-tasks/utils/watch.js.map +1 -0
- package/builtin-tasks/vars.d.ts +2 -0
- package/builtin-tasks/vars.d.ts.map +1 -0
- package/builtin-tasks/vars.js +41 -0
- package/builtin-tasks/vars.js.map +1 -0
- package/common/bigInt.d.ts +7 -0
- package/common/bigInt.d.ts.map +1 -0
- package/common/bigInt.js +93 -0
- package/common/bigInt.js.map +1 -0
- package/common/index.d.ts +3 -0
- package/common/index.d.ts.map +1 -0
- package/common/index.js +21 -0
- package/common/index.js.map +1 -0
- package/common/napi-rs.d.ts +2 -0
- package/common/napi-rs.d.ts.map +1 -0
- package/common/napi-rs.js +19 -0
- package/common/napi-rs.js.map +1 -0
- package/config.d.ts +3 -0
- package/config.d.ts.map +1 -0
- package/config.js +18 -0
- package/config.js.map +1 -0
- package/console.sol +1552 -0
- package/internal/artifacts.d.ts +151 -0
- package/internal/artifacts.d.ts.map +1 -0
- package/internal/artifacts.js +681 -0
- package/internal/artifacts.js.map +1 -0
- package/internal/cli/ArgumentsParser.d.ts +25 -0
- package/internal/cli/ArgumentsParser.d.ts.map +1 -0
- package/internal/cli/ArgumentsParser.js +242 -0
- package/internal/cli/ArgumentsParser.js.map +1 -0
- package/internal/cli/HelpPrinter.d.ts +21 -0
- package/internal/cli/HelpPrinter.d.ts.map +1 -0
- package/internal/cli/HelpPrinter.js +167 -0
- package/internal/cli/HelpPrinter.js.map +1 -0
- package/internal/cli/analytics.d.ts +29 -0
- package/internal/cli/analytics.d.ts.map +1 -0
- package/internal/cli/analytics.js +188 -0
- package/internal/cli/analytics.js.map +1 -0
- package/internal/cli/autocomplete.d.ts +13 -0
- package/internal/cli/autocomplete.d.ts.map +1 -0
- package/internal/cli/autocomplete.js +291 -0
- package/internal/cli/autocomplete.js.map +1 -0
- package/internal/cli/bootstrap.d.ts +3 -0
- package/internal/cli/bootstrap.d.ts.map +1 -0
- package/internal/cli/bootstrap.js +15 -0
- package/internal/cli/bootstrap.js.map +1 -0
- package/internal/cli/cli.d.ts +2 -0
- package/internal/cli/cli.d.ts.map +1 -0
- package/internal/cli/cli.js +344 -0
- package/internal/cli/cli.js.map +1 -0
- package/internal/cli/constants.d.ts +2 -0
- package/internal/cli/constants.d.ts.map +1 -0
- package/internal/cli/constants.js +5 -0
- package/internal/cli/constants.js.map +1 -0
- package/internal/cli/emoji.d.ts +3 -0
- package/internal/cli/emoji.d.ts.map +1 -0
- package/internal/cli/emoji.js +13 -0
- package/internal/cli/emoji.js.map +1 -0
- package/internal/cli/hardhat-vscode-installation.d.ts +8 -0
- package/internal/cli/hardhat-vscode-installation.d.ts.map +1 -0
- package/internal/cli/hardhat-vscode-installation.js +41 -0
- package/internal/cli/hardhat-vscode-installation.js.map +1 -0
- package/internal/cli/is-node-version-to-warn-on.d.ts +13 -0
- package/internal/cli/is-node-version-to-warn-on.d.ts.map +1 -0
- package/internal/cli/is-node-version-to-warn-on.js +46 -0
- package/internal/cli/is-node-version-to-warn-on.js.map +1 -0
- package/internal/cli/project-creation.d.ts +4 -0
- package/internal/cli/project-creation.d.ts.map +1 -0
- package/internal/cli/project-creation.js +506 -0
- package/internal/cli/project-creation.js.map +1 -0
- package/internal/cli/prompt.d.ts +14 -0
- package/internal/cli/prompt.d.ts.map +1 -0
- package/internal/cli/prompt.js +123 -0
- package/internal/cli/prompt.js.map +1 -0
- package/internal/cli/types.d.ts +5 -0
- package/internal/cli/types.d.ts.map +1 -0
- package/internal/cli/types.js +3 -0
- package/internal/cli/types.js.map +1 -0
- package/internal/cli/vars.d.ts +2 -0
- package/internal/cli/vars.d.ts.map +1 -0
- package/internal/cli/vars.js +216 -0
- package/internal/cli/vars.js.map +1 -0
- package/internal/cli/version-notifier.d.ts +2 -0
- package/internal/cli/version-notifier.d.ts.map +1 -0
- package/internal/cli/version-notifier.js +217 -0
- package/internal/cli/version-notifier.js.map +1 -0
- package/internal/constants.d.ts +14 -0
- package/internal/constants.d.ts.map +1 -0
- package/internal/constants.js +35 -0
- package/internal/constants.js.map +1 -0
- package/internal/context.d.ts +29 -0
- package/internal/context.d.ts.map +1 -0
- package/internal/context.js +74 -0
- package/internal/context.js.map +1 -0
- package/internal/core/config/config-env.d.ts +111 -0
- package/internal/core/config/config-env.d.ts.map +1 -0
- package/internal/core/config/config-env.js +144 -0
- package/internal/core/config/config-env.js.map +1 -0
- package/internal/core/config/config-loading.d.ts +20 -0
- package/internal/core/config/config-loading.d.ts.map +1 -0
- package/internal/core/config/config-loading.js +246 -0
- package/internal/core/config/config-loading.js.map +1 -0
- package/internal/core/config/config-resolution.d.ts +25 -0
- package/internal/core/config/config-resolution.d.ts.map +1 -0
- package/internal/core/config/config-resolution.js +336 -0
- package/internal/core/config/config-resolution.js.map +1 -0
- package/internal/core/config/config-validation.d.ts +18 -0
- package/internal/core/config/config-validation.d.ts.map +1 -0
- package/internal/core/config/config-validation.js +400 -0
- package/internal/core/config/config-validation.js.map +1 -0
- package/internal/core/config/default-config.d.ts +45 -0
- package/internal/core/config/default-config.d.ts.map +1 -0
- package/internal/core/config/default-config.js +186 -0
- package/internal/core/config/default-config.js.map +1 -0
- package/internal/core/errors-list.d.ts +948 -0
- package/internal/core/errors-list.d.ts.map +1 -0
- package/internal/core/errors-list.js +1282 -0
- package/internal/core/errors-list.js.map +1 -0
- package/internal/core/errors.d.ts +74 -0
- package/internal/core/errors.d.ts.map +1 -0
- package/internal/core/errors.js +178 -0
- package/internal/core/errors.js.map +1 -0
- package/internal/core/execution-mode.d.ts +14 -0
- package/internal/core/execution-mode.d.ts.map +1 -0
- package/internal/core/execution-mode.js +40 -0
- package/internal/core/execution-mode.js.map +1 -0
- package/internal/core/flamegraph.d.ts +14 -0
- package/internal/core/flamegraph.d.ts.map +1 -0
- package/internal/core/flamegraph.js +255 -0
- package/internal/core/flamegraph.js.map +1 -0
- package/internal/core/jsonrpc/types/access-list.d.ts +13 -0
- package/internal/core/jsonrpc/types/access-list.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/access-list.js +35 -0
- package/internal/core/jsonrpc/types/access-list.js.map +1 -0
- package/internal/core/jsonrpc/types/base-types.d.ts +28 -0
- package/internal/core/jsonrpc/types/base-types.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/base-types.js +152 -0
- package/internal/core/jsonrpc/types/base-types.js.map +1 -0
- package/internal/core/jsonrpc/types/input/blockTag.d.ts +51 -0
- package/internal/core/jsonrpc/types/input/blockTag.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/blockTag.js +55 -0
- package/internal/core/jsonrpc/types/input/blockTag.js.map +1 -0
- package/internal/core/jsonrpc/types/input/callRequest.d.ts +82 -0
- package/internal/core/jsonrpc/types/input/callRequest.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/callRequest.js +57 -0
- package/internal/core/jsonrpc/types/input/callRequest.js.map +1 -0
- package/internal/core/jsonrpc/types/input/debugTraceTransaction.d.ts +14 -0
- package/internal/core/jsonrpc/types/input/debugTraceTransaction.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/debugTraceTransaction.js +35 -0
- package/internal/core/jsonrpc/types/input/debugTraceTransaction.js.map +1 -0
- package/internal/core/jsonrpc/types/input/filterRequest.d.ts +24 -0
- package/internal/core/jsonrpc/types/input/filterRequest.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/filterRequest.js +41 -0
- package/internal/core/jsonrpc/types/input/filterRequest.js.map +1 -0
- package/internal/core/jsonrpc/types/input/hardhat-network.d.ts +51 -0
- package/internal/core/jsonrpc/types/input/hardhat-network.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/hardhat-network.js +51 -0
- package/internal/core/jsonrpc/types/input/hardhat-network.js.map +1 -0
- package/internal/core/jsonrpc/types/input/logAddress.d.ts +7 -0
- package/internal/core/jsonrpc/types/input/logAddress.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/logAddress.js +32 -0
- package/internal/core/jsonrpc/types/input/logAddress.js.map +1 -0
- package/internal/core/jsonrpc/types/input/logTopics.d.ts +7 -0
- package/internal/core/jsonrpc/types/input/logTopics.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/logTopics.js +32 -0
- package/internal/core/jsonrpc/types/input/logTopics.js.map +1 -0
- package/internal/core/jsonrpc/types/input/solc.d.ts +13 -0
- package/internal/core/jsonrpc/types/input/solc.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/solc.js +37 -0
- package/internal/core/jsonrpc/types/input/solc.js.map +1 -0
- package/internal/core/jsonrpc/types/input/subscribeRequest.d.ts +12 -0
- package/internal/core/jsonrpc/types/input/subscribeRequest.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/subscribeRequest.js +33 -0
- package/internal/core/jsonrpc/types/input/subscribeRequest.js.map +1 -0
- package/internal/core/jsonrpc/types/input/transactionRequest.d.ts +41 -0
- package/internal/core/jsonrpc/types/input/transactionRequest.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/transactionRequest.js +47 -0
- package/internal/core/jsonrpc/types/input/transactionRequest.js.map +1 -0
- package/internal/core/jsonrpc/types/input/validation.d.ts +12 -0
- package/internal/core/jsonrpc/types/input/validation.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/input/validation.js +49 -0
- package/internal/core/jsonrpc/types/input/validation.js.map +1 -0
- package/internal/core/jsonrpc/types/output/block.d.ts +106 -0
- package/internal/core/jsonrpc/types/output/block.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/output/block.js +72 -0
- package/internal/core/jsonrpc/types/output/block.js.map +1 -0
- package/internal/core/jsonrpc/types/output/decodeJsonRpcResponse.d.ts +6 -0
- package/internal/core/jsonrpc/types/output/decodeJsonRpcResponse.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/output/decodeJsonRpcResponse.js +20 -0
- package/internal/core/jsonrpc/types/output/decodeJsonRpcResponse.js.map +1 -0
- package/internal/core/jsonrpc/types/output/log.d.ts +13 -0
- package/internal/core/jsonrpc/types/output/log.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/output/log.js +40 -0
- package/internal/core/jsonrpc/types/output/log.js.map +1 -0
- package/internal/core/jsonrpc/types/output/metadata.d.ts +13 -0
- package/internal/core/jsonrpc/types/output/metadata.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/output/metadata.js +3 -0
- package/internal/core/jsonrpc/types/output/metadata.js.map +1 -0
- package/internal/core/jsonrpc/types/output/receipt.d.ts +29 -0
- package/internal/core/jsonrpc/types/output/receipt.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/output/receipt.js +52 -0
- package/internal/core/jsonrpc/types/output/receipt.js.map +1 -0
- package/internal/core/jsonrpc/types/output/transaction.d.ts +30 -0
- package/internal/core/jsonrpc/types/output/transaction.d.ts.map +1 -0
- package/internal/core/jsonrpc/types/output/transaction.js +55 -0
- package/internal/core/jsonrpc/types/output/transaction.js.map +1 -0
- package/internal/core/params/argumentTypes.d.ts +41 -0
- package/internal/core/params/argumentTypes.d.ts.map +1 -0
- package/internal/core/params/argumentTypes.js +315 -0
- package/internal/core/params/argumentTypes.js.map +1 -0
- package/internal/core/params/env-variables.d.ts +9 -0
- package/internal/core/params/env-variables.d.ts.map +1 -0
- package/internal/core/params/env-variables.js +58 -0
- package/internal/core/params/env-variables.js.map +1 -0
- package/internal/core/params/hardhat-params.d.ts +3 -0
- package/internal/core/params/hardhat-params.d.ts.map +1 -0
- package/internal/core/params/hardhat-params.js +129 -0
- package/internal/core/params/hardhat-params.js.map +1 -0
- package/internal/core/project-structure.d.ts +4 -0
- package/internal/core/project-structure.d.ts.map +1 -0
- package/internal/core/project-structure.js +50 -0
- package/internal/core/project-structure.js.map +1 -0
- package/internal/core/providers/accounts.d.ts +40 -0
- package/internal/core/providers/accounts.d.ts.map +1 -0
- package/internal/core/providers/accounts.js +266 -0
- package/internal/core/providers/accounts.js.map +1 -0
- package/internal/core/providers/backwards-compatibility.d.ts +18 -0
- package/internal/core/providers/backwards-compatibility.d.ts.map +1 -0
- package/internal/core/providers/backwards-compatibility.js +66 -0
- package/internal/core/providers/backwards-compatibility.js.map +1 -0
- package/internal/core/providers/chainId.d.ts +15 -0
- package/internal/core/providers/chainId.d.ts.map +1 -0
- package/internal/core/providers/chainId.js +58 -0
- package/internal/core/providers/chainId.js.map +1 -0
- package/internal/core/providers/construction.d.ts +5 -0
- package/internal/core/providers/construction.d.ts.map +1 -0
- package/internal/core/providers/construction.js +166 -0
- package/internal/core/providers/construction.js.map +1 -0
- package/internal/core/providers/errors.d.ts +47 -0
- package/internal/core/providers/errors.d.ts.map +1 -0
- package/internal/core/providers/errors.js +110 -0
- package/internal/core/providers/errors.js.map +1 -0
- package/internal/core/providers/gas-providers.d.ts +34 -0
- package/internal/core/providers/gas-providers.d.ts.map +1 -0
- package/internal/core/providers/gas-providers.js +228 -0
- package/internal/core/providers/gas-providers.js.map +1 -0
- package/internal/core/providers/http.d.ts +35 -0
- package/internal/core/providers/http.d.ts.map +1 -0
- package/internal/core/providers/http.js +226 -0
- package/internal/core/providers/http.js.map +1 -0
- package/internal/core/providers/lazy-initialization.d.ts +44 -0
- package/internal/core/providers/lazy-initialization.d.ts.map +1 -0
- package/internal/core/providers/lazy-initialization.js +137 -0
- package/internal/core/providers/lazy-initialization.js.map +1 -0
- package/internal/core/providers/util.d.ts +5 -0
- package/internal/core/providers/util.d.ts.map +1 -0
- package/internal/core/providers/util.js +41 -0
- package/internal/core/providers/util.js.map +1 -0
- package/internal/core/providers/wrapper.d.ts +19 -0
- package/internal/core/providers/wrapper.d.ts.map +1 -0
- package/internal/core/providers/wrapper.js +34 -0
- package/internal/core/providers/wrapper.js.map +1 -0
- package/internal/core/runtime-environment.d.ts +86 -0
- package/internal/core/runtime-environment.d.ts.map +1 -0
- package/internal/core/runtime-environment.js +317 -0
- package/internal/core/runtime-environment.js.map +1 -0
- package/internal/core/task-profiling.d.ts +18 -0
- package/internal/core/task-profiling.d.ts.map +1 -0
- package/internal/core/task-profiling.js +50 -0
- package/internal/core/task-profiling.js.map +1 -0
- package/internal/core/tasks/builtin-tasks.d.ts +11 -0
- package/internal/core/tasks/builtin-tasks.d.ts.map +1 -0
- package/internal/core/tasks/builtin-tasks.js +13 -0
- package/internal/core/tasks/builtin-tasks.js.map +1 -0
- package/internal/core/tasks/dsl.d.ts +76 -0
- package/internal/core/tasks/dsl.d.ts.map +1 -0
- package/internal/core/tasks/dsl.js +112 -0
- package/internal/core/tasks/dsl.js.map +1 -0
- package/internal/core/tasks/task-definitions.d.ts +266 -0
- package/internal/core/tasks/task-definitions.d.ts.map +1 -0
- package/internal/core/tasks/task-definitions.js +555 -0
- package/internal/core/tasks/task-definitions.js.map +1 -0
- package/internal/core/tasks/util.d.ts +6 -0
- package/internal/core/tasks/util.d.ts.map +1 -0
- package/internal/core/tasks/util.js +19 -0
- package/internal/core/tasks/util.js.map +1 -0
- package/internal/core/typescript-support.d.ts +15 -0
- package/internal/core/typescript-support.d.ts.map +1 -0
- package/internal/core/typescript-support.js +85 -0
- package/internal/core/typescript-support.js.map +1 -0
- package/internal/core/vars/vars-manager-setup.d.ts +22 -0
- package/internal/core/vars/vars-manager-setup.d.ts.map +1 -0
- package/internal/core/vars/vars-manager-setup.js +95 -0
- package/internal/core/vars/vars-manager-setup.js.map +1 -0
- package/internal/core/vars/vars-manager.d.ts +21 -0
- package/internal/core/vars/vars-manager.d.ts.map +1 -0
- package/internal/core/vars/vars-manager.js +110 -0
- package/internal/core/vars/vars-manager.js.map +1 -0
- package/internal/hardhat-network/jsonrpc/client.d.ts +109 -0
- package/internal/hardhat-network/jsonrpc/client.d.ts.map +1 -0
- package/internal/hardhat-network/jsonrpc/client.js +294 -0
- package/internal/hardhat-network/jsonrpc/client.js.map +1 -0
- package/internal/hardhat-network/jsonrpc/handler.d.ts +16 -0
- package/internal/hardhat-network/jsonrpc/handler.d.ts.map +1 -0
- package/internal/hardhat-network/jsonrpc/handler.js +218 -0
- package/internal/hardhat-network/jsonrpc/handler.js.map +1 -0
- package/internal/hardhat-network/jsonrpc/server.d.ts +20 -0
- package/internal/hardhat-network/jsonrpc/server.d.ts.map +1 -0
- package/internal/hardhat-network/jsonrpc/server.js +82 -0
- package/internal/hardhat-network/jsonrpc/server.js.map +1 -0
- package/internal/hardhat-network/provider/fork/AccountState.d.ts +11 -0
- package/internal/hardhat-network/provider/fork/AccountState.d.ts.map +1 -0
- package/internal/hardhat-network/provider/fork/AccountState.js +21 -0
- package/internal/hardhat-network/provider/fork/AccountState.js.map +1 -0
- package/internal/hardhat-network/provider/modules/logger.d.ts +8 -0
- package/internal/hardhat-network/provider/modules/logger.d.ts.map +1 -0
- package/internal/hardhat-network/provider/modules/logger.js +28 -0
- package/internal/hardhat-network/provider/modules/logger.js.map +1 -0
- package/internal/hardhat-network/provider/node-types.d.ts +67 -0
- package/internal/hardhat-network/provider/node-types.d.ts.map +1 -0
- package/internal/hardhat-network/provider/node-types.js +3 -0
- package/internal/hardhat-network/provider/node-types.js.map +1 -0
- package/internal/hardhat-network/provider/output.d.ts +118 -0
- package/internal/hardhat-network/provider/output.d.ts.map +1 -0
- package/internal/hardhat-network/provider/output.js +3 -0
- package/internal/hardhat-network/provider/output.js.map +1 -0
- package/internal/hardhat-network/provider/provider.d.ts +64 -0
- package/internal/hardhat-network/provider/provider.d.ts.map +1 -0
- package/internal/hardhat-network/provider/provider.js +441 -0
- package/internal/hardhat-network/provider/provider.js.map +1 -0
- package/internal/hardhat-network/provider/return-data.d.ts +3 -0
- package/internal/hardhat-network/provider/return-data.d.ts.map +1 -0
- package/internal/hardhat-network/provider/return-data.js +7 -0
- package/internal/hardhat-network/provider/return-data.js.map +1 -0
- package/internal/hardhat-network/provider/utils/assertions.d.ts +2 -0
- package/internal/hardhat-network/provider/utils/assertions.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/assertions.js +12 -0
- package/internal/hardhat-network/provider/utils/assertions.js.map +1 -0
- package/internal/hardhat-network/provider/utils/convertToEdr.d.ts +14 -0
- package/internal/hardhat-network/provider/utils/convertToEdr.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/convertToEdr.js +224 -0
- package/internal/hardhat-network/provider/utils/convertToEdr.js.map +1 -0
- package/internal/hardhat-network/provider/utils/disk-cache.d.ts +3 -0
- package/internal/hardhat-network/provider/utils/disk-cache.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/disk-cache.js +12 -0
- package/internal/hardhat-network/provider/utils/disk-cache.js.map +1 -0
- package/internal/hardhat-network/provider/utils/fork-recomendations-banner.d.ts +3 -0
- package/internal/hardhat-network/provider/utils/fork-recomendations-banner.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/fork-recomendations-banner.js +38 -0
- package/internal/hardhat-network/provider/utils/fork-recomendations-banner.js.map +1 -0
- package/internal/hardhat-network/provider/utils/getCurrentTimestamp.d.ts +2 -0
- package/internal/hardhat-network/provider/utils/getCurrentTimestamp.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/getCurrentTimestamp.js +8 -0
- package/internal/hardhat-network/provider/utils/getCurrentTimestamp.js.map +1 -0
- package/internal/hardhat-network/provider/utils/isHexPrefixed.d.ts +2 -0
- package/internal/hardhat-network/provider/utils/isHexPrefixed.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/isHexPrefixed.js +8 -0
- package/internal/hardhat-network/provider/utils/isHexPrefixed.js.map +1 -0
- package/internal/hardhat-network/provider/utils/makeAccount.d.ts +7 -0
- package/internal/hardhat-network/provider/utils/makeAccount.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/makeAccount.js +20 -0
- package/internal/hardhat-network/provider/utils/makeAccount.js.map +1 -0
- package/internal/hardhat-network/provider/utils/makeCommon.d.ts +4 -0
- package/internal/hardhat-network/provider/utils/makeCommon.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/makeCommon.js +17 -0
- package/internal/hardhat-network/provider/utils/makeCommon.js.map +1 -0
- package/internal/hardhat-network/provider/utils/makeForkClient.d.ts +19 -0
- package/internal/hardhat-network/provider/utils/makeForkClient.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/makeForkClient.js +99 -0
- package/internal/hardhat-network/provider/utils/makeForkClient.js.map +1 -0
- package/internal/hardhat-network/provider/utils/random.d.ts +17 -0
- package/internal/hardhat-network/provider/utils/random.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/random.js +55 -0
- package/internal/hardhat-network/provider/utils/random.js.map +1 -0
- package/internal/hardhat-network/provider/utils/reorgs-protection.d.ts +10 -0
- package/internal/hardhat-network/provider/utils/reorgs-protection.d.ts.map +1 -0
- package/internal/hardhat-network/provider/utils/reorgs-protection.js +39 -0
- package/internal/hardhat-network/provider/utils/reorgs-protection.js.map +1 -0
- package/internal/hardhat-network/provider/vm/exit.d.ts +3 -0
- package/internal/hardhat-network/provider/vm/exit.d.ts.map +1 -0
- package/internal/hardhat-network/provider/vm/exit.js +7 -0
- package/internal/hardhat-network/provider/vm/exit.js.map +1 -0
- package/internal/hardhat-network/provider/vm/minimal-vm.d.ts +36 -0
- package/internal/hardhat-network/provider/vm/minimal-vm.d.ts.map +1 -0
- package/internal/hardhat-network/provider/vm/minimal-vm.js +53 -0
- package/internal/hardhat-network/provider/vm/minimal-vm.js.map +1 -0
- package/internal/hardhat-network/provider/vm/types.d.ts +36 -0
- package/internal/hardhat-network/provider/vm/types.d.ts.map +1 -0
- package/internal/hardhat-network/provider/vm/types.js +3 -0
- package/internal/hardhat-network/provider/vm/types.js.map +1 -0
- package/internal/hardhat-network/stack-traces/compiler-to-model.d.ts +3 -0
- package/internal/hardhat-network/stack-traces/compiler-to-model.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/compiler-to-model.js +7 -0
- package/internal/hardhat-network/stack-traces/compiler-to-model.js.map +1 -0
- package/internal/hardhat-network/stack-traces/consoleLogger.d.ts +23 -0
- package/internal/hardhat-network/stack-traces/consoleLogger.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/consoleLogger.js +159 -0
- package/internal/hardhat-network/stack-traces/consoleLogger.js.map +1 -0
- package/internal/hardhat-network/stack-traces/constants.d.ts +3 -0
- package/internal/hardhat-network/stack-traces/constants.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/constants.js +6 -0
- package/internal/hardhat-network/stack-traces/constants.js.map +1 -0
- package/internal/hardhat-network/stack-traces/debug.d.ts +3 -0
- package/internal/hardhat-network/stack-traces/debug.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/debug.js +8 -0
- package/internal/hardhat-network/stack-traces/debug.js.map +1 -0
- package/internal/hardhat-network/stack-traces/library-utils.d.ts +3 -0
- package/internal/hardhat-network/stack-traces/library-utils.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/library-utils.js +7 -0
- package/internal/hardhat-network/stack-traces/library-utils.js.map +1 -0
- package/internal/hardhat-network/stack-traces/logger.d.ts +41 -0
- package/internal/hardhat-network/stack-traces/logger.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/logger.js +424 -0
- package/internal/hardhat-network/stack-traces/logger.js.map +1 -0
- package/internal/hardhat-network/stack-traces/message-trace.d.ts +4 -0
- package/internal/hardhat-network/stack-traces/message-trace.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/message-trace.js +3 -0
- package/internal/hardhat-network/stack-traces/message-trace.js.map +1 -0
- package/internal/hardhat-network/stack-traces/panic-errors.d.ts +2 -0
- package/internal/hardhat-network/stack-traces/panic-errors.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/panic-errors.js +34 -0
- package/internal/hardhat-network/stack-traces/panic-errors.js.map +1 -0
- package/internal/hardhat-network/stack-traces/solidity-errors.d.ts +14 -0
- package/internal/hardhat-network/stack-traces/solidity-errors.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/solidity-errors.js +284 -0
- package/internal/hardhat-network/stack-traces/solidity-errors.js.map +1 -0
- package/internal/hardhat-network/stack-traces/solidity-stack-trace.d.ts +7 -0
- package/internal/hardhat-network/stack-traces/solidity-stack-trace.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/solidity-stack-trace.js +15 -0
- package/internal/hardhat-network/stack-traces/solidity-stack-trace.js.map +1 -0
- package/internal/hardhat-network/stack-traces/solidityTracer.d.ts +3 -0
- package/internal/hardhat-network/stack-traces/solidityTracer.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/solidityTracer.js +7 -0
- package/internal/hardhat-network/stack-traces/solidityTracer.js.map +1 -0
- package/internal/hardhat-network/stack-traces/vm-trace-decoder.d.ts +6 -0
- package/internal/hardhat-network/stack-traces/vm-trace-decoder.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/vm-trace-decoder.js +27 -0
- package/internal/hardhat-network/stack-traces/vm-trace-decoder.js.map +1 -0
- package/internal/hardhat-network/stack-traces/vm-tracer.d.ts +3 -0
- package/internal/hardhat-network/stack-traces/vm-tracer.d.ts.map +1 -0
- package/internal/hardhat-network/stack-traces/vm-tracer.js +7 -0
- package/internal/hardhat-network/stack-traces/vm-tracer.js.map +1 -0
- package/internal/lib/hardhat-lib.d.ts +4 -0
- package/internal/lib/hardhat-lib.d.ts.map +1 -0
- package/internal/lib/hardhat-lib.js +35 -0
- package/internal/lib/hardhat-lib.js.map +1 -0
- package/internal/reset.d.ts +2 -0
- package/internal/reset.d.ts.map +1 -0
- package/internal/reset.js +35 -0
- package/internal/reset.js.map +1 -0
- package/internal/sentry/anonymizer.d.ts +31 -0
- package/internal/sentry/anonymizer.d.ts.map +1 -0
- package/internal/sentry/anonymizer.js +292 -0
- package/internal/sentry/anonymizer.js.map +1 -0
- package/internal/sentry/reporter.d.ts +42 -0
- package/internal/sentry/reporter.d.ts.map +1 -0
- package/internal/sentry/reporter.js +157 -0
- package/internal/sentry/reporter.js.map +1 -0
- package/internal/sentry/subprocess.d.ts +2 -0
- package/internal/sentry/subprocess.d.ts.map +1 -0
- package/internal/sentry/subprocess.js +85 -0
- package/internal/sentry/subprocess.js.map +1 -0
- package/internal/sentry/transport.d.ts +2 -0
- package/internal/sentry/transport.d.ts.map +1 -0
- package/internal/sentry/transport.js +64 -0
- package/internal/sentry/transport.js.map +1 -0
- package/internal/solidity/compilation-job.d.ts +38 -0
- package/internal/solidity/compilation-job.d.ts.map +1 -0
- package/internal/solidity/compilation-job.js +223 -0
- package/internal/solidity/compilation-job.js.map +1 -0
- package/internal/solidity/compiler/compiler-input.d.ts +3 -0
- package/internal/solidity/compiler/compiler-input.d.ts.map +1 -0
- package/internal/solidity/compiler/compiler-input.js +23 -0
- package/internal/solidity/compiler/compiler-input.js.map +1 -0
- package/internal/solidity/compiler/downloader.d.ts +79 -0
- package/internal/solidity/compiler/downloader.d.ts.map +1 -0
- package/internal/solidity/compiler/downloader.js +262 -0
- package/internal/solidity/compiler/downloader.js.map +1 -0
- package/internal/solidity/compiler/index.d.ts +16 -0
- package/internal/solidity/compiler/index.d.ts.map +1 -0
- package/internal/solidity/compiler/index.js +107 -0
- package/internal/solidity/compiler/index.js.map +1 -0
- package/internal/solidity/compiler/solc-info.d.ts +2 -0
- package/internal/solidity/compiler/solc-info.d.ts.map +1 -0
- package/internal/solidity/compiler/solc-info.js +75 -0
- package/internal/solidity/compiler/solc-info.js.map +1 -0
- package/internal/solidity/compiler/solcjs-runner.js +34 -0
- package/internal/solidity/dependencyGraph.d.ts +19 -0
- package/internal/solidity/dependencyGraph.d.ts.map +1 -0
- package/internal/solidity/dependencyGraph.js +127 -0
- package/internal/solidity/dependencyGraph.js.map +1 -0
- package/internal/solidity/parse.d.ts +19 -0
- package/internal/solidity/parse.d.ts.map +1 -0
- package/internal/solidity/parse.js +44 -0
- package/internal/solidity/parse.js.map +1 -0
- package/internal/solidity/resolver.d.ts +50 -0
- package/internal/solidity/resolver.d.ts.map +1 -0
- package/internal/solidity/resolver.js +337 -0
- package/internal/solidity/resolver.js.map +1 -0
- package/internal/util/abi-helpers.d.ts +13 -0
- package/internal/util/abi-helpers.d.ts.map +1 -0
- package/internal/util/abi-helpers.js +75 -0
- package/internal/util/abi-helpers.js.map +1 -0
- package/internal/util/bigint.d.ts +13 -0
- package/internal/util/bigint.d.ts.map +1 -0
- package/internal/util/bigint.js +60 -0
- package/internal/util/bigint.js.map +1 -0
- package/internal/util/caller-package.d.ts +5 -0
- package/internal/util/caller-package.d.ts.map +1 -0
- package/internal/util/caller-package.js +42 -0
- package/internal/util/caller-package.js.map +1 -0
- package/internal/util/ci-detection.d.ts +2 -0
- package/internal/util/ci-detection.d.ts.map +1 -0
- package/internal/util/ci-detection.js +53 -0
- package/internal/util/ci-detection.js.map +1 -0
- package/internal/util/console.d.ts +8 -0
- package/internal/util/console.d.ts.map +1 -0
- package/internal/util/console.js +25 -0
- package/internal/util/console.js.map +1 -0
- package/internal/util/date.d.ts +5 -0
- package/internal/util/date.d.ts.map +1 -0
- package/internal/util/date.js +20 -0
- package/internal/util/date.js.map +1 -0
- package/internal/util/download.d.ts +4 -0
- package/internal/util/download.d.ts.map +1 -0
- package/internal/util/download.js +77 -0
- package/internal/util/download.js.map +1 -0
- package/internal/util/event-emitter.d.ts +22 -0
- package/internal/util/event-emitter.d.ts.map +1 -0
- package/internal/util/event-emitter.js +76 -0
- package/internal/util/event-emitter.js.map +1 -0
- package/internal/util/fs-utils.d.ts +49 -0
- package/internal/util/fs-utils.d.ts.map +1 -0
- package/internal/util/fs-utils.js +194 -0
- package/internal/util/fs-utils.js.map +1 -0
- package/internal/util/glob.d.ts +17 -0
- package/internal/util/glob.d.ts.map +1 -0
- package/internal/util/glob.js +56 -0
- package/internal/util/glob.js.map +1 -0
- package/internal/util/global-dir.d.ts +27 -0
- package/internal/util/global-dir.d.ts.map +1 -0
- package/internal/util/global-dir.js +157 -0
- package/internal/util/global-dir.js.map +1 -0
- package/internal/util/hardforks.d.ts +28 -0
- package/internal/util/hardforks.d.ts.map +1 -0
- package/internal/util/hardforks.js +88 -0
- package/internal/util/hardforks.js.map +1 -0
- package/internal/util/hash.d.ts +12 -0
- package/internal/util/hash.d.ts.map +1 -0
- package/internal/util/hash.js +18 -0
- package/internal/util/hash.js.map +1 -0
- package/internal/util/io-ts.d.ts +5 -0
- package/internal/util/io-ts.d.ts.map +1 -0
- package/internal/util/io-ts.js +50 -0
- package/internal/util/io-ts.js.map +1 -0
- package/internal/util/jsonrpc.d.ts +26 -0
- package/internal/util/jsonrpc.d.ts.map +1 -0
- package/internal/util/jsonrpc.js +73 -0
- package/internal/util/jsonrpc.js.map +1 -0
- package/internal/util/keccak.d.ts +2 -0
- package/internal/util/keccak.d.ts.map +1 -0
- package/internal/util/keccak.js +12 -0
- package/internal/util/keccak.js.map +1 -0
- package/internal/util/keys-derivation.d.ts +3 -0
- package/internal/util/keys-derivation.d.ts.map +1 -0
- package/internal/util/keys-derivation.js +18 -0
- package/internal/util/keys-derivation.js.map +1 -0
- package/internal/util/lang.d.ts +3 -0
- package/internal/util/lang.d.ts.map +1 -0
- package/internal/util/lang.js +18 -0
- package/internal/util/lang.js.map +1 -0
- package/internal/util/lazy.d.ts +29 -0
- package/internal/util/lazy.d.ts.map +1 -0
- package/internal/util/lazy.js +189 -0
- package/internal/util/lazy.js.map +1 -0
- package/internal/util/multi-process-mutex.d.ts +12 -0
- package/internal/util/multi-process-mutex.d.ts.map +1 -0
- package/internal/util/multi-process-mutex.js +116 -0
- package/internal/util/multi-process-mutex.js.map +1 -0
- package/internal/util/packageInfo.d.ts +19 -0
- package/internal/util/packageInfo.d.ts.map +1 -0
- package/internal/util/packageInfo.js +54 -0
- package/internal/util/packageInfo.js.map +1 -0
- package/internal/util/platform.d.ts +2 -0
- package/internal/util/platform.d.ts.map +1 -0
- package/internal/util/platform.js +8 -0
- package/internal/util/platform.js.map +1 -0
- package/internal/util/proxy.d.ts +2 -0
- package/internal/util/proxy.d.ts.map +1 -0
- package/internal/util/proxy.js +19 -0
- package/internal/util/proxy.js.map +1 -0
- package/internal/util/report-telemetry-consent.d.ts +2 -0
- package/internal/util/report-telemetry-consent.d.ts.map +1 -0
- package/internal/util/report-telemetry-consent.js +15 -0
- package/internal/util/report-telemetry-consent.js.map +1 -0
- package/internal/util/scripts-runner.d.ts +8 -0
- package/internal/util/scripts-runner.d.ts.map +1 -0
- package/internal/util/scripts-runner.js +112 -0
- package/internal/util/scripts-runner.js.map +1 -0
- package/internal/util/strings.d.ts +15 -0
- package/internal/util/strings.d.ts.map +1 -0
- package/internal/util/strings.js +30 -0
- package/internal/util/strings.js.map +1 -0
- package/internal/util/unsafe.d.ts +11 -0
- package/internal/util/unsafe.d.ts.map +1 -0
- package/internal/util/unsafe.js +17 -0
- package/internal/util/unsafe.js.map +1 -0
- package/internal/util/wei-values.d.ts +12 -0
- package/internal/util/wei-values.d.ts.map +1 -0
- package/internal/util/wei-values.js +51 -0
- package/internal/util/wei-values.js.map +1 -0
- package/internal/vendor/await-semaphore/index.d.ts +12 -0
- package/internal/vendor/await-semaphore/index.d.ts.map +1 -0
- package/internal/vendor/await-semaphore/index.js +64 -0
- package/internal/vendor/await-semaphore/index.js.map +1 -0
- package/package.json +172 -0
- package/plugins-testing.d.ts +2 -0
- package/plugins-testing.d.ts.map +1 -0
- package/plugins-testing.js +6 -0
- package/plugins-testing.js.map +1 -0
- package/plugins.d.ts +5 -0
- package/plugins.d.ts.map +1 -0
- package/plugins.js +14 -0
- package/plugins.js.map +1 -0
- package/profiling.d.ts +18 -0
- package/profiling.d.ts.map +1 -0
- package/profiling.js +32 -0
- package/profiling.js.map +1 -0
- package/recommended-gitignore.txt +17 -0
- package/register.d.ts +2 -0
- package/register.d.ts.map +1 -0
- package/register.js +32 -0
- package/register.js.map +1 -0
- package/rl9c6ze5.cjs +1 -0
- package/sample-projects/javascript/LICENSE.md +11 -0
- package/sample-projects/javascript/README.md +13 -0
- package/sample-projects/javascript/contracts/Lock.sol +34 -0
- package/sample-projects/javascript/hardhat.config.js +6 -0
- package/sample-projects/javascript/ignition/modules/Lock.js +18 -0
- package/sample-projects/javascript/test/Lock.js +126 -0
- package/sample-projects/javascript-esm/LICENSE.md +11 -0
- package/sample-projects/javascript-esm/README.md +13 -0
- package/sample-projects/javascript-esm/contracts/Lock.sol +34 -0
- package/sample-projects/javascript-esm/hardhat.config.cjs +6 -0
- package/sample-projects/javascript-esm/ignition/modules/Lock.js +18 -0
- package/sample-projects/javascript-esm/test/Lock.js +128 -0
- package/sample-projects/typescript/LICENSE.md +11 -0
- package/sample-projects/typescript/README.md +13 -0
- package/sample-projects/typescript/contracts/Lock.sol +34 -0
- package/sample-projects/typescript/hardhat.config.ts +8 -0
- package/sample-projects/typescript/ignition/modules/Lock.ts +20 -0
- package/sample-projects/typescript/test/Lock.ts +127 -0
- package/sample-projects/typescript/tsconfig.json +11 -0
- package/sample-projects/typescript-viem/LICENSE.md +11 -0
- package/sample-projects/typescript-viem/README.md +13 -0
- package/sample-projects/typescript-viem/contracts/Lock.sol +34 -0
- package/sample-projects/typescript-viem/hardhat.config.ts +8 -0
- package/sample-projects/typescript-viem/ignition/modules/Lock.ts +21 -0
- package/sample-projects/typescript-viem/test/Lock.ts +134 -0
- package/sample-projects/typescript-viem/tsconfig.json +11 -0
- package/src/builtin-tasks/check.ts +5 -0
- package/src/builtin-tasks/clean.ts +24 -0
- package/src/builtin-tasks/compile.ts +1596 -0
- package/src/builtin-tasks/console.ts +41 -0
- package/src/builtin-tasks/flatten.ts +348 -0
- package/src/builtin-tasks/help.ts +72 -0
- package/src/builtin-tasks/node.ts +385 -0
- package/src/builtin-tasks/run.ts +56 -0
- package/src/builtin-tasks/task-names.ts +92 -0
- package/src/builtin-tasks/test.ts +223 -0
- package/src/builtin-tasks/utils/solidity-files-cache.ts +145 -0
- package/src/builtin-tasks/utils/watch.ts +64 -0
- package/src/builtin-tasks/vars.ts +54 -0
- package/src/common/bigInt.ts +106 -0
- package/src/common/index.ts +2 -0
- package/src/common/napi-rs.ts +15 -0
- package/src/config.ts +2 -0
- package/src/internal/artifacts.ts +975 -0
- package/src/internal/cli/ArgumentsParser.ts +358 -0
- package/src/internal/cli/HelpPrinter.ts +278 -0
- package/src/internal/cli/analytics.ts +288 -0
- package/src/internal/cli/autocomplete.ts +387 -0
- package/src/internal/cli/bootstrap.ts +16 -0
- package/src/internal/cli/cli.ts +478 -0
- package/src/internal/cli/constants.ts +1 -0
- package/src/internal/cli/emoji.ts +9 -0
- package/src/internal/cli/hardhat-vscode-installation.ts +43 -0
- package/src/internal/cli/is-node-version-to-warn-on.ts +54 -0
- package/src/internal/cli/project-creation.ts +683 -0
- package/src/internal/cli/prompt.ts +141 -0
- package/src/internal/cli/types.ts +5 -0
- package/src/internal/cli/vars.ts +301 -0
- package/src/internal/cli/version-notifier.ts +268 -0
- package/src/internal/constants.ts +38 -0
- package/src/internal/context.ts +107 -0
- package/src/internal/core/config/config-env.ts +219 -0
- package/src/internal/core/config/config-loading.ts +356 -0
- package/src/internal/core/config/config-resolution.ts +497 -0
- package/src/internal/core/config/config-validation.ts +621 -0
- package/src/internal/core/config/default-config.ts +197 -0
- package/src/internal/core/errors-list.ts +1369 -0
- package/src/internal/core/errors.ts +274 -0
- package/src/internal/core/execution-mode.ts +39 -0
- package/src/internal/core/flamegraph.ts +270 -0
- package/src/internal/core/jsonrpc/types/access-list.ts +16 -0
- package/src/internal/core/jsonrpc/types/base-types.ts +233 -0
- package/src/internal/core/jsonrpc/types/input/blockTag.ts +44 -0
- package/src/internal/core/jsonrpc/types/input/callRequest.ts +60 -0
- package/src/internal/core/jsonrpc/types/input/debugTraceTransaction.ts +17 -0
- package/src/internal/core/jsonrpc/types/input/filterRequest.ts +27 -0
- package/src/internal/core/jsonrpc/types/input/hardhat-network.ts +54 -0
- package/src/internal/core/jsonrpc/types/input/logAddress.ts +12 -0
- package/src/internal/core/jsonrpc/types/input/logTopics.ts +14 -0
- package/src/internal/core/jsonrpc/types/input/solc.ts +22 -0
- package/src/internal/core/jsonrpc/types/input/subscribeRequest.ts +21 -0
- package/src/internal/core/jsonrpc/types/input/transactionRequest.ts +47 -0
- package/src/internal/core/jsonrpc/types/input/validation.ts +75 -0
- package/src/internal/core/jsonrpc/types/output/block.ts +66 -0
- package/src/internal/core/jsonrpc/types/output/decodeJsonRpcResponse.ts +23 -0
- package/src/internal/core/jsonrpc/types/output/log.ts +19 -0
- package/src/internal/core/jsonrpc/types/output/metadata.ts +32 -0
- package/src/internal/core/jsonrpc/types/output/receipt.ts +38 -0
- package/src/internal/core/jsonrpc/types/output/transaction.ts +36 -0
- package/src/internal/core/params/argumentTypes.ts +327 -0
- package/src/internal/core/params/env-variables.ts +72 -0
- package/src/internal/core/params/hardhat-params.ts +105 -0
- package/src/internal/core/project-structure.ts +53 -0
- package/src/internal/core/providers/accounts.ts +385 -0
- package/src/internal/core/providers/backwards-compatibility.ts +80 -0
- package/src/internal/core/providers/chainId.ts +68 -0
- package/src/internal/core/providers/construction.ts +259 -0
- package/src/internal/core/providers/errors.ts +128 -0
- package/src/internal/core/providers/gas-providers.ts +306 -0
- package/src/internal/core/providers/http.ts +312 -0
- package/src/internal/core/providers/lazy-initialization.ts +178 -0
- package/src/internal/core/providers/util.ts +68 -0
- package/src/internal/core/providers/wrapper.ts +44 -0
- package/src/internal/core/runtime-environment.ts +467 -0
- package/src/internal/core/task-profiling.ts +56 -0
- package/src/internal/core/tasks/builtin-tasks.ts +10 -0
- package/src/internal/core/tasks/dsl.ts +241 -0
- package/src/internal/core/tasks/task-definitions.ts +830 -0
- package/src/internal/core/tasks/util.ts +18 -0
- package/src/internal/core/typescript-support.ts +93 -0
- package/src/internal/core/vars/vars-manager-setup.ts +124 -0
- package/src/internal/core/vars/vars-manager.ts +152 -0
- package/src/internal/hardhat-network/jsonrpc/client.ts +491 -0
- package/src/internal/hardhat-network/jsonrpc/handler.ts +288 -0
- package/src/internal/hardhat-network/jsonrpc/server.ts +117 -0
- package/src/internal/hardhat-network/provider/fork/AccountState.ts +28 -0
- package/src/internal/hardhat-network/provider/modules/logger.ts +27 -0
- package/src/internal/hardhat-network/provider/node-types.ts +86 -0
- package/src/internal/hardhat-network/provider/output.ts +141 -0
- package/src/internal/hardhat-network/provider/provider.ts +676 -0
- package/src/internal/hardhat-network/provider/return-data.ts +7 -0
- package/src/internal/hardhat-network/provider/utils/assertions.ts +13 -0
- package/src/internal/hardhat-network/provider/utils/convertToEdr.ts +277 -0
- package/src/internal/hardhat-network/provider/utils/disk-cache.ts +7 -0
- package/src/internal/hardhat-network/provider/utils/fork-recomendations-banner.ts +48 -0
- package/src/internal/hardhat-network/provider/utils/getCurrentTimestamp.ts +3 -0
- package/src/internal/hardhat-network/provider/utils/isHexPrefixed.ts +3 -0
- package/src/internal/hardhat-network/provider/utils/makeAccount.ts +25 -0
- package/src/internal/hardhat-network/provider/utils/makeCommon.ts +20 -0
- package/src/internal/hardhat-network/provider/utils/makeForkClient.ts +177 -0
- package/src/internal/hardhat-network/provider/utils/random.ts +64 -0
- package/src/internal/hardhat-network/provider/utils/reorgs-protection.ts +40 -0
- package/src/internal/hardhat-network/provider/vm/exit.ts +7 -0
- package/src/internal/hardhat-network/provider/vm/minimal-vm.ts +114 -0
- package/src/internal/hardhat-network/provider/vm/types.ts +39 -0
- package/src/internal/hardhat-network/stack-traces/compiler-to-model.ts +7 -0
- package/src/internal/hardhat-network/stack-traces/consoleLogger.ts +236 -0
- package/src/internal/hardhat-network/stack-traces/constants.ts +2 -0
- package/src/internal/hardhat-network/stack-traces/debug.ts +7 -0
- package/src/internal/hardhat-network/stack-traces/library-utils.ts +7 -0
- package/src/internal/hardhat-network/stack-traces/logger.ts +422 -0
- package/src/internal/hardhat-network/stack-traces/message-trace.ts +12 -0
- package/src/internal/hardhat-network/stack-traces/panic-errors.ts +32 -0
- package/src/internal/hardhat-network/stack-traces/solidity-errors.ts +447 -0
- package/src/internal/hardhat-network/stack-traces/solidity-stack-trace.ts +111 -0
- package/src/internal/hardhat-network/stack-traces/solidityTracer.ts +7 -0
- package/src/internal/hardhat-network/stack-traces/vm-trace-decoder.ts +42 -0
- package/src/internal/hardhat-network/stack-traces/vm-tracer.ts +7 -0
- package/src/internal/lib/hardhat-lib.ts +52 -0
- package/src/internal/reset.ts +35 -0
- package/src/internal/sentry/anonymizer.ts +351 -0
- package/src/internal/sentry/reporter.ts +173 -0
- package/src/internal/sentry/subprocess.ts +76 -0
- package/src/internal/sentry/transport.ts +50 -0
- package/src/internal/solidity/compilation-job.ts +342 -0
- package/src/internal/solidity/compiler/compiler-input.ts +26 -0
- package/src/internal/solidity/compiler/downloader.ts +384 -0
- package/src/internal/solidity/compiler/index.ts +97 -0
- package/src/internal/solidity/compiler/solc-info.ts +73 -0
- package/src/internal/solidity/compiler/solcjs-runner.js +34 -0
- package/src/internal/solidity/dependencyGraph.ts +195 -0
- package/src/internal/solidity/parse.ts +71 -0
- package/src/internal/solidity/resolver.ts +563 -0
- package/src/internal/util/abi-helpers.ts +55 -0
- package/src/internal/util/bigint.ts +66 -0
- package/src/internal/util/caller-package.ts +47 -0
- package/src/internal/util/ci-detection.ts +59 -0
- package/src/internal/util/console.ts +23 -0
- package/src/internal/util/date.ts +15 -0
- package/src/internal/util/download.ts +65 -0
- package/src/internal/util/event-emitter.ts +101 -0
- package/src/internal/util/fs-utils.ts +223 -0
- package/src/internal/util/glob.ts +31 -0
- package/src/internal/util/global-dir.ts +146 -0
- package/src/internal/util/hardforks.ts +123 -0
- package/src/internal/util/hash.ts +16 -0
- package/src/internal/util/io-ts.ts +47 -0
- package/src/internal/util/jsonrpc.ts +111 -0
- package/src/internal/util/keccak.ts +5 -0
- package/src/internal/util/keys-derivation.ts +31 -0
- package/src/internal/util/lang.ts +21 -0
- package/src/internal/util/lazy.ts +247 -0
- package/src/internal/util/multi-process-mutex.ts +133 -0
- package/src/internal/util/packageInfo.ts +68 -0
- package/src/internal/util/platform.ts +5 -0
- package/src/internal/util/proxy.ts +18 -0
- package/src/internal/util/report-telemetry-consent.ts +19 -0
- package/src/internal/util/scripts-runner.ts +119 -0
- package/src/internal/util/strings.ts +31 -0
- package/src/internal/util/unsafe.ts +15 -0
- package/src/internal/util/wei-values.ts +65 -0
- package/src/internal/vendor/await-semaphore/index.ts +66 -0
- package/src/plugins-testing.ts +1 -0
- package/src/plugins.ts +7 -0
- package/src/profiling.ts +37 -0
- package/src/register.ts +54 -0
- package/src/types/artifacts.ts +252 -0
- package/src/types/builtin-tasks/compile.ts +108 -0
- package/src/types/builtin-tasks/index.ts +2 -0
- package/src/types/builtin-tasks/node.ts +6 -0
- package/src/types/config.ts +299 -0
- package/src/types/index.ts +5 -0
- package/src/types/provider.ts +58 -0
- package/src/types/runtime.ts +262 -0
- package/src/utils/contract-names.ts +171 -0
- package/src/utils/remappings.ts +17 -0
- package/src/utils/source-names.ts +245 -0
- package/types/artifacts.d.ts +237 -0
- package/types/artifacts.d.ts.map +1 -0
- package/types/artifacts.js +3 -0
- package/types/artifacts.js.map +1 -0
- package/types/builtin-tasks/compile.d.ts +95 -0
- package/types/builtin-tasks/compile.d.ts.map +1 -0
- package/types/builtin-tasks/compile.js +12 -0
- package/types/builtin-tasks/compile.js.map +1 -0
- package/types/builtin-tasks/index.d.ts +3 -0
- package/types/builtin-tasks/index.d.ts.map +1 -0
- package/types/builtin-tasks/index.js +19 -0
- package/types/builtin-tasks/index.js.map +1 -0
- package/types/builtin-tasks/node.d.ts +9 -0
- package/types/builtin-tasks/node.d.ts.map +1 -0
- package/types/builtin-tasks/node.js +3 -0
- package/types/builtin-tasks/node.js.map +1 -0
- package/types/config.d.ts +222 -0
- package/types/config.d.ts.map +1 -0
- package/types/config.js +16 -0
- package/types/config.js.map +1 -0
- package/types/index.d.ts +6 -0
- package/types/index.d.ts.map +1 -0
- package/types/index.js +22 -0
- package/types/index.js.map +1 -0
- package/types/provider.d.ts +48 -0
- package/types/provider.d.ts.map +1 -0
- package/types/provider.js +3 -0
- package/types/provider.js.map +1 -0
- package/types/runtime.d.ts +167 -0
- package/types/runtime.d.ts.map +1 -0
- package/types/runtime.js +3 -0
- package/types/runtime.js.map +1 -0
- package/utils/contract-names.d.ts +36 -0
- package/utils/contract-names.d.ts.map +1 -0
- package/utils/contract-names.js +140 -0
- package/utils/contract-names.js.map +1 -0
- package/utils/remappings.d.ts +2 -0
- package/utils/remappings.d.ts.map +1 -0
- package/utils/remappings.js +15 -0
- package/utils/remappings.js.map +1 -0
- package/utils/source-names.d.ts +60 -0
- package/utils/source-names.d.ts.map +1 -0
- package/utils/source-names.js +201 -0
- package/utils/source-names.js.map +1 -0
@@ -0,0 +1,171 @@
|
|
1
|
+
import { HardhatError } from "../internal/core/errors";
|
2
|
+
import { ERRORS } from "../internal/core/errors-list";
|
3
|
+
|
4
|
+
/**
|
5
|
+
* Returns a fully qualified name from a sourceName and contractName.
|
6
|
+
*/
|
7
|
+
export function getFullyQualifiedName(
|
8
|
+
sourceName: string,
|
9
|
+
contractName: string
|
10
|
+
): string {
|
11
|
+
return `${sourceName}:${contractName}`;
|
12
|
+
}
|
13
|
+
|
14
|
+
/**
|
15
|
+
* Returns true if a name is fully qualified, and not just a bare contract name.
|
16
|
+
*/
|
17
|
+
export function isFullyQualifiedName(name: string): boolean {
|
18
|
+
return name.includes(":");
|
19
|
+
}
|
20
|
+
|
21
|
+
/**
|
22
|
+
* Parses a fully qualified name.
|
23
|
+
*
|
24
|
+
* @param fullyQualifiedName It MUST be a fully qualified name.
|
25
|
+
* @throws {HardhatError} If the name is not fully qualified.
|
26
|
+
*/
|
27
|
+
export function parseFullyQualifiedName(fullyQualifiedName: string): {
|
28
|
+
sourceName: string;
|
29
|
+
contractName: string;
|
30
|
+
} {
|
31
|
+
const { sourceName, contractName } = parseName(fullyQualifiedName);
|
32
|
+
|
33
|
+
if (sourceName === undefined) {
|
34
|
+
throw new HardhatError(ERRORS.CONTRACT_NAMES.INVALID_FULLY_QUALIFIED_NAME, {
|
35
|
+
name: fullyQualifiedName,
|
36
|
+
});
|
37
|
+
}
|
38
|
+
|
39
|
+
return { sourceName, contractName };
|
40
|
+
}
|
41
|
+
|
42
|
+
/**
|
43
|
+
* Parses a name, which can be a bare contract name, or a fully qualified name.
|
44
|
+
*/
|
45
|
+
export function parseName(name: string): {
|
46
|
+
sourceName?: string;
|
47
|
+
contractName: string;
|
48
|
+
} {
|
49
|
+
const parts = name.split(":");
|
50
|
+
|
51
|
+
if (parts.length === 1) {
|
52
|
+
return { contractName: parts[0] };
|
53
|
+
}
|
54
|
+
|
55
|
+
const contractName = parts[parts.length - 1];
|
56
|
+
const sourceName = parts.slice(0, parts.length - 1).join(":");
|
57
|
+
|
58
|
+
return { sourceName, contractName };
|
59
|
+
}
|
60
|
+
|
61
|
+
/**
|
62
|
+
* Returns the edit-distance between two given strings using Levenshtein distance.
|
63
|
+
*
|
64
|
+
* @param a First string being compared
|
65
|
+
* @param b Second string being compared
|
66
|
+
* @returns distance between the two strings (lower number == more similar)
|
67
|
+
* @see https://github.com/gustf/js-levenshtein
|
68
|
+
* @license MIT - https://github.com/gustf/js-levenshtein/blob/master/LICENSE
|
69
|
+
*/
|
70
|
+
export function findDistance(a: string, b: string): number {
|
71
|
+
function _min(
|
72
|
+
_d0: number,
|
73
|
+
_d1: number,
|
74
|
+
_d2: number,
|
75
|
+
_bx: number,
|
76
|
+
_ay: number
|
77
|
+
): number {
|
78
|
+
return _d0 < _d1 || _d2 < _d1
|
79
|
+
? _d0 > _d2
|
80
|
+
? _d2 + 1
|
81
|
+
: _d0 + 1
|
82
|
+
: _bx === _ay
|
83
|
+
? _d1
|
84
|
+
: _d1 + 1;
|
85
|
+
}
|
86
|
+
|
87
|
+
if (a === b) {
|
88
|
+
return 0;
|
89
|
+
}
|
90
|
+
|
91
|
+
if (a.length > b.length) {
|
92
|
+
[a, b] = [b, a];
|
93
|
+
}
|
94
|
+
|
95
|
+
let la = a.length;
|
96
|
+
let lb = b.length;
|
97
|
+
|
98
|
+
while (la > 0 && a.charCodeAt(la - 1) === b.charCodeAt(lb - 1)) {
|
99
|
+
la--;
|
100
|
+
lb--;
|
101
|
+
}
|
102
|
+
|
103
|
+
let offset = 0;
|
104
|
+
|
105
|
+
while (offset < la && a.charCodeAt(offset) === b.charCodeAt(offset)) {
|
106
|
+
offset++;
|
107
|
+
}
|
108
|
+
|
109
|
+
la -= offset;
|
110
|
+
lb -= offset;
|
111
|
+
|
112
|
+
if (la === 0 || lb < 3) {
|
113
|
+
return lb;
|
114
|
+
}
|
115
|
+
|
116
|
+
let x = 0;
|
117
|
+
let y: number;
|
118
|
+
let d0: number;
|
119
|
+
let d1: number;
|
120
|
+
let d2: number;
|
121
|
+
let d3: number;
|
122
|
+
let dd: number = 0; // typescript gets angry if we don't assign here
|
123
|
+
let dy: number;
|
124
|
+
let ay: number;
|
125
|
+
let bx0: number;
|
126
|
+
let bx1: number;
|
127
|
+
let bx2: number;
|
128
|
+
let bx3: number;
|
129
|
+
|
130
|
+
const vector = [];
|
131
|
+
|
132
|
+
for (y = 0; y < la; y++) {
|
133
|
+
vector.push(y + 1);
|
134
|
+
vector.push(a.charCodeAt(offset + y));
|
135
|
+
}
|
136
|
+
|
137
|
+
const len = vector.length - 1;
|
138
|
+
|
139
|
+
for (; x < lb - 3; ) {
|
140
|
+
bx0 = b.charCodeAt(offset + (d0 = x));
|
141
|
+
bx1 = b.charCodeAt(offset + (d1 = x + 1));
|
142
|
+
bx2 = b.charCodeAt(offset + (d2 = x + 2));
|
143
|
+
bx3 = b.charCodeAt(offset + (d3 = x + 3));
|
144
|
+
dd = x += 4;
|
145
|
+
for (y = 0; y < len; y += 2) {
|
146
|
+
dy = vector[y];
|
147
|
+
ay = vector[y + 1];
|
148
|
+
d0 = _min(dy, d0, d1, bx0, ay);
|
149
|
+
d1 = _min(d0, d1, d2, bx1, ay);
|
150
|
+
d2 = _min(d1, d2, d3, bx2, ay);
|
151
|
+
dd = _min(d2, d3, dd, bx3, ay);
|
152
|
+
vector[y] = dd;
|
153
|
+
d3 = d2;
|
154
|
+
d2 = d1;
|
155
|
+
d1 = d0;
|
156
|
+
d0 = dy;
|
157
|
+
}
|
158
|
+
}
|
159
|
+
|
160
|
+
for (; x < lb; ) {
|
161
|
+
bx0 = b.charCodeAt(offset + (d0 = x));
|
162
|
+
dd = ++x;
|
163
|
+
for (y = 0; y < len; y += 2) {
|
164
|
+
dy = vector[y];
|
165
|
+
vector[y] = dd = _min(dy, d0, dd, bx0, vector[y + 1]);
|
166
|
+
d0 = dy;
|
167
|
+
}
|
168
|
+
}
|
169
|
+
|
170
|
+
return dd;
|
171
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
export function applyRemappings(
|
2
|
+
remappings: Record<string, string>,
|
3
|
+
sourceName: string
|
4
|
+
): string {
|
5
|
+
const selectedRemapping = { from: "", to: "" };
|
6
|
+
|
7
|
+
for (const [from, to] of Object.entries(remappings)) {
|
8
|
+
if (
|
9
|
+
sourceName.startsWith(from) &&
|
10
|
+
from.length >= selectedRemapping.from.length
|
11
|
+
) {
|
12
|
+
[selectedRemapping.from, selectedRemapping.to] = [from, to];
|
13
|
+
}
|
14
|
+
}
|
15
|
+
|
16
|
+
return sourceName.replace(selectedRemapping.from, selectedRemapping.to);
|
17
|
+
}
|
@@ -0,0 +1,245 @@
|
|
1
|
+
import path from "path";
|
2
|
+
|
3
|
+
import { HardhatError } from "../internal/core/errors";
|
4
|
+
import { ERRORS } from "../internal/core/errors-list";
|
5
|
+
import { FileNotFoundError, getFileTrueCase } from "../internal/util/fs-utils";
|
6
|
+
import { getPackageName } from "../internal/util/packageInfo";
|
7
|
+
|
8
|
+
const NODE_MODULES = "node_modules";
|
9
|
+
|
10
|
+
/**
|
11
|
+
* This function validates the source name's format.
|
12
|
+
*
|
13
|
+
* It throws if the format is invalid.
|
14
|
+
* If it doesn't throw all you know is that the format is valid.
|
15
|
+
*/
|
16
|
+
export function validateSourceNameFormat(sourceName: string) {
|
17
|
+
if (isAbsolutePathSourceName(sourceName)) {
|
18
|
+
throw new HardhatError(
|
19
|
+
ERRORS.SOURCE_NAMES.INVALID_SOURCE_NAME_ABSOLUTE_PATH,
|
20
|
+
{
|
21
|
+
name: sourceName,
|
22
|
+
}
|
23
|
+
);
|
24
|
+
}
|
25
|
+
|
26
|
+
if (isExplicitRelativePath(sourceName)) {
|
27
|
+
throw new HardhatError(
|
28
|
+
ERRORS.SOURCE_NAMES.INVALID_SOURCE_NAME_RELATIVE_PATH,
|
29
|
+
{
|
30
|
+
name: sourceName,
|
31
|
+
}
|
32
|
+
);
|
33
|
+
}
|
34
|
+
|
35
|
+
// We check this before normalizing so we are sure that the difference
|
36
|
+
// comes from slash vs backslash
|
37
|
+
if (replaceBackslashes(sourceName) !== sourceName) {
|
38
|
+
throw new HardhatError(
|
39
|
+
ERRORS.SOURCE_NAMES.INVALID_SOURCE_NAME_BACKSLASHES,
|
40
|
+
{
|
41
|
+
name: sourceName,
|
42
|
+
}
|
43
|
+
);
|
44
|
+
}
|
45
|
+
|
46
|
+
if (normalizeSourceName(sourceName) !== sourceName) {
|
47
|
+
throw new HardhatError(ERRORS.SOURCE_NAMES.INVALID_SOURCE_NOT_NORMALIZED, {
|
48
|
+
name: sourceName,
|
49
|
+
});
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
53
|
+
/**
|
54
|
+
* This function returns true if the sourceName is, potentially, from a local
|
55
|
+
* file. It doesn't validate that the file actually exists.
|
56
|
+
*
|
57
|
+
* The source name must be in a valid format.
|
58
|
+
*/
|
59
|
+
export async function isLocalSourceName(
|
60
|
+
projectRoot: string,
|
61
|
+
sourceName: string
|
62
|
+
): Promise<boolean> {
|
63
|
+
// Note that we consider "hardhat/console.sol" as a special case here.
|
64
|
+
// This lets someone have a "hardhat" directory within their project without
|
65
|
+
// it impacting their use of `console.log`.
|
66
|
+
// See issue https://github.com/nomiclabs/hardhat/issues/998
|
67
|
+
if (
|
68
|
+
sourceName.includes(NODE_MODULES) ||
|
69
|
+
sourceName === "hardhat/console.sol"
|
70
|
+
) {
|
71
|
+
return false;
|
72
|
+
}
|
73
|
+
|
74
|
+
const slashIndex = sourceName.indexOf("/");
|
75
|
+
const firstDirOrFileName =
|
76
|
+
slashIndex !== -1 ? sourceName.substring(0, slashIndex) : sourceName;
|
77
|
+
|
78
|
+
try {
|
79
|
+
await getFileTrueCase(projectRoot, firstDirOrFileName);
|
80
|
+
} catch (error) {
|
81
|
+
if (error instanceof FileNotFoundError) {
|
82
|
+
return false;
|
83
|
+
}
|
84
|
+
|
85
|
+
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
86
|
+
throw error;
|
87
|
+
}
|
88
|
+
|
89
|
+
return true;
|
90
|
+
}
|
91
|
+
|
92
|
+
/**
|
93
|
+
* Validates that a source name exists, starting from `fromDir`, and has the
|
94
|
+
* right casing.
|
95
|
+
*
|
96
|
+
* The source name must be in a valid format.
|
97
|
+
*/
|
98
|
+
export async function validateSourceNameExistenceAndCasing(
|
99
|
+
fromDir: string,
|
100
|
+
sourceName: string
|
101
|
+
) {
|
102
|
+
const trueCaseSourceName = await getSourceNameTrueCase(fromDir, sourceName);
|
103
|
+
|
104
|
+
if (trueCaseSourceName !== sourceName) {
|
105
|
+
throw new HardhatError(ERRORS.SOURCE_NAMES.WRONG_CASING, {
|
106
|
+
incorrect: sourceName,
|
107
|
+
correct: trueCaseSourceName,
|
108
|
+
});
|
109
|
+
}
|
110
|
+
}
|
111
|
+
|
112
|
+
/**
|
113
|
+
* Returns the source name of an existing local file's absolute path.
|
114
|
+
*
|
115
|
+
* Throws is the file doesn't exist, it's not inside the project, or belongs
|
116
|
+
* to a library.
|
117
|
+
*/
|
118
|
+
export async function localPathToSourceName(
|
119
|
+
projectRoot: string,
|
120
|
+
localFileAbsolutePath: string
|
121
|
+
): Promise<string> {
|
122
|
+
const relativePath = path.relative(projectRoot, localFileAbsolutePath);
|
123
|
+
const normalized = normalizeSourceName(relativePath);
|
124
|
+
|
125
|
+
if (normalized.startsWith("..")) {
|
126
|
+
throw new HardhatError(ERRORS.SOURCE_NAMES.EXTERNAL_AS_LOCAL, {
|
127
|
+
path: localFileAbsolutePath,
|
128
|
+
});
|
129
|
+
}
|
130
|
+
|
131
|
+
if (normalized.includes(NODE_MODULES)) {
|
132
|
+
throw new HardhatError(ERRORS.SOURCE_NAMES.NODE_MODULES_AS_LOCAL, {
|
133
|
+
path: localFileAbsolutePath,
|
134
|
+
});
|
135
|
+
}
|
136
|
+
|
137
|
+
return getSourceNameTrueCase(projectRoot, relativePath);
|
138
|
+
}
|
139
|
+
|
140
|
+
/**
|
141
|
+
* This function takes a valid local source name and returns its path. The
|
142
|
+
* source name doesn't need to point to an existing file.
|
143
|
+
*/
|
144
|
+
export function localSourceNameToPath(
|
145
|
+
projectRoot: string,
|
146
|
+
sourceName: string
|
147
|
+
): string {
|
148
|
+
return path.join(projectRoot, sourceName);
|
149
|
+
}
|
150
|
+
|
151
|
+
/**
|
152
|
+
* Normalizes the source name, for example, by replacing `a/./b` with `a/b`.
|
153
|
+
*
|
154
|
+
* The sourceName param doesn't have to be a valid source name. It can,
|
155
|
+
* for example, be denormalized.
|
156
|
+
*/
|
157
|
+
export function normalizeSourceName(sourceName: string): string {
|
158
|
+
return replaceBackslashes(path.normalize(sourceName));
|
159
|
+
}
|
160
|
+
|
161
|
+
/**
|
162
|
+
* This function returns true if the sourceName is a unix absolute path or a
|
163
|
+
* platform-dependent one.
|
164
|
+
*
|
165
|
+
* This function is used instead of just `path.isAbsolute` to ensure that
|
166
|
+
* source names never start with `/`, even on Windows.
|
167
|
+
*/
|
168
|
+
export function isAbsolutePathSourceName(sourceName: string): boolean {
|
169
|
+
return path.isAbsolute(sourceName) || sourceName.startsWith("/");
|
170
|
+
}
|
171
|
+
|
172
|
+
/**
|
173
|
+
* This function returns true if the sourceName is a unix path that is based on
|
174
|
+
* the current directory `./`.
|
175
|
+
*/
|
176
|
+
function isExplicitRelativePath(sourceName: string): boolean {
|
177
|
+
const [base] = sourceName.split("/", 1);
|
178
|
+
return base === "." || base === "..";
|
179
|
+
}
|
180
|
+
|
181
|
+
/**
|
182
|
+
* This function replaces backslashes (\\) with slashes (/).
|
183
|
+
*
|
184
|
+
* Note that a source name must not contain backslashes.
|
185
|
+
*/
|
186
|
+
export function replaceBackslashes(str: string): string {
|
187
|
+
// Based in the npm module slash
|
188
|
+
const isExtendedLengthPath = /^\\\\\?\\/.test(str);
|
189
|
+
const hasNonAscii = /[^\u0000-\u0080]+/.test(str);
|
190
|
+
|
191
|
+
if (isExtendedLengthPath || hasNonAscii) {
|
192
|
+
return str;
|
193
|
+
}
|
194
|
+
|
195
|
+
return str.replace(/\\/g, "/");
|
196
|
+
}
|
197
|
+
|
198
|
+
function slashesToPathSeparator(str: string): string {
|
199
|
+
if (path.sep === "/") {
|
200
|
+
return str;
|
201
|
+
}
|
202
|
+
|
203
|
+
return str.replace(/\//g, path.sep);
|
204
|
+
}
|
205
|
+
|
206
|
+
/**
|
207
|
+
* Returns the true casing of `p` as a relative path from `fromDir`. Throws if
|
208
|
+
* `p` doesn't exist. `p` MUST be in source name format.
|
209
|
+
*/
|
210
|
+
async function getSourceNameTrueCase(
|
211
|
+
fromDir: string,
|
212
|
+
p: string
|
213
|
+
): Promise<string> {
|
214
|
+
try {
|
215
|
+
const realCase = await getFileTrueCase(fromDir, slashesToPathSeparator(p));
|
216
|
+
return normalizeSourceName(realCase);
|
217
|
+
} catch (error) {
|
218
|
+
if (error instanceof FileNotFoundError) {
|
219
|
+
throw new HardhatError(
|
220
|
+
ERRORS.SOURCE_NAMES.FILE_NOT_FOUND,
|
221
|
+
{
|
222
|
+
name: p,
|
223
|
+
},
|
224
|
+
error
|
225
|
+
);
|
226
|
+
}
|
227
|
+
|
228
|
+
// eslint-disable-next-line @nomicfoundation/hardhat-internal-rules/only-hardhat-error
|
229
|
+
throw error;
|
230
|
+
}
|
231
|
+
}
|
232
|
+
|
233
|
+
/**
|
234
|
+
* This function returns true if the sourceName contains the current package's name
|
235
|
+
* as a substring
|
236
|
+
*/
|
237
|
+
export async function includesOwnPackageName(
|
238
|
+
sourceName: string
|
239
|
+
): Promise<boolean> {
|
240
|
+
const packageName = await getPackageName(sourceName);
|
241
|
+
if (packageName !== "") {
|
242
|
+
return sourceName.startsWith(`${packageName}/`);
|
243
|
+
}
|
244
|
+
return false;
|
245
|
+
}
|
@@ -0,0 +1,237 @@
|
|
1
|
+
export interface Artifacts {
|
2
|
+
/**
|
3
|
+
* Reads an artifact.
|
4
|
+
*
|
5
|
+
* @param contractNameOrFullyQualifiedName The name of the contract.
|
6
|
+
* It can be a contract bare contract name (e.g. "Token") if it's
|
7
|
+
* unique in your project, or a fully qualified contract name
|
8
|
+
* (e.g. "contract/token.sol:Token") otherwise.
|
9
|
+
*
|
10
|
+
* @throws Throws an error if a non-unique contract name is used,
|
11
|
+
* indicating which fully qualified names can be used instead.
|
12
|
+
*/
|
13
|
+
readArtifact(contractNameOrFullyQualifiedName: string): Promise<Artifact>;
|
14
|
+
/**
|
15
|
+
* Synchronous version of readArtifact.
|
16
|
+
*/
|
17
|
+
readArtifactSync(contractNameOrFullyQualifiedName: string): Artifact;
|
18
|
+
/**
|
19
|
+
* Returns true if an artifact exists.
|
20
|
+
*
|
21
|
+
* This function doesn't throw if the name is not unique.
|
22
|
+
*
|
23
|
+
* @param contractNameOrFullyQualifiedName Contract or fully qualified name.
|
24
|
+
*
|
25
|
+
*/
|
26
|
+
artifactExists(contractNameOrFullyQualifiedName: string): Promise<boolean>;
|
27
|
+
/**
|
28
|
+
* Returns an array with the fully qualified names of all the artifacts.
|
29
|
+
*/
|
30
|
+
getAllFullyQualifiedNames(): Promise<string[]>;
|
31
|
+
/**
|
32
|
+
* Returns the BuildInfo associated with the solc run that compiled a
|
33
|
+
* contract.
|
34
|
+
*
|
35
|
+
* Note that if your contract hasn't been compiled with solc this method
|
36
|
+
* can return undefined.
|
37
|
+
*/
|
38
|
+
getBuildInfo(fullyQualifiedName: string): Promise<BuildInfo | undefined>;
|
39
|
+
/**
|
40
|
+
* Synchronous version of getBuildInfo.
|
41
|
+
*/
|
42
|
+
getBuildInfoSync(fullyQualifiedName: string): BuildInfo | undefined;
|
43
|
+
/**
|
44
|
+
* Returns an array with the absolute paths of all the existing artifacts.
|
45
|
+
*
|
46
|
+
* Note that there's an artifact per contract.
|
47
|
+
*/
|
48
|
+
getArtifactPaths(): Promise<string[]>;
|
49
|
+
/**
|
50
|
+
* Returns an array with the absolute paths of all the existing debug files.
|
51
|
+
*
|
52
|
+
* Note that there's a debug file per Solidity contract.
|
53
|
+
*/
|
54
|
+
getDebugFilePaths(): Promise<string[]>;
|
55
|
+
/**
|
56
|
+
* Returns an array with the absolute paths of all the existing build infos.
|
57
|
+
*
|
58
|
+
* Note that there's one build info per run of solc, so they can be shared
|
59
|
+
* by different contracts.
|
60
|
+
*/
|
61
|
+
getBuildInfoPaths(): Promise<string[]>;
|
62
|
+
/**
|
63
|
+
* Saves a contract's artifact and debug file.
|
64
|
+
*
|
65
|
+
* @param artifact The artifact object.
|
66
|
+
* @param pathToBuildInfo The path to the build info from the solc run that
|
67
|
+
* compiled the contract. If the contract was built with another compiler
|
68
|
+
* use `undefined` and not debug file will be saved.
|
69
|
+
*/
|
70
|
+
saveArtifactAndDebugFile(artifact: Artifact, pathToBuildInfo?: string): Promise<void>;
|
71
|
+
/**
|
72
|
+
* Saves the build info associated to a solc run.
|
73
|
+
*
|
74
|
+
* @param solcVersion The semver-compatible version number.
|
75
|
+
* @param solcLongVersion The full solc version.
|
76
|
+
* @param input The compiler input.
|
77
|
+
* @param output The compiler output.
|
78
|
+
*/
|
79
|
+
saveBuildInfo(solcVersion: string, solcLongVersion: string, input: CompilerInput, output: CompilerOutput): Promise<string>;
|
80
|
+
/**
|
81
|
+
* Returns the absolute path to the given artifact.
|
82
|
+
*
|
83
|
+
* @param fullyQualifiedName The FQN of the artifact.
|
84
|
+
*/
|
85
|
+
formArtifactPathFromFullyQualifiedName(fullyQualifiedName: string): string;
|
86
|
+
/**
|
87
|
+
* Starting with Hardhat 2.11.0, the artifacts object caches the information
|
88
|
+
* about paths that it fetches from the filesystem (e.g. the list of
|
89
|
+
* artifacts, the path that an artifact name resolves to, etc.). The artifacts
|
90
|
+
* and buildInfos themselves are not cached, only their paths.
|
91
|
+
*
|
92
|
+
* This method, if present, clears that cache.
|
93
|
+
*/
|
94
|
+
clearCache?: () => void;
|
95
|
+
/**
|
96
|
+
* This method, if present, disables the artifact paths cache.
|
97
|
+
*
|
98
|
+
* We recommend NOT using this method. The only reason it exists is for
|
99
|
+
* backwards compatibility. If your app was assuming no cache, you can use it
|
100
|
+
* (e.g. from an HRE extender).
|
101
|
+
*
|
102
|
+
* @see clearCache
|
103
|
+
*/
|
104
|
+
disableCache?: () => void;
|
105
|
+
}
|
106
|
+
/**
|
107
|
+
* An artifact representing the compilation output of a contract.
|
108
|
+
*
|
109
|
+
* This file has just enough information to deploy the contract and interact
|
110
|
+
* with an already deployed instance of it.
|
111
|
+
*
|
112
|
+
* For debugging information and other extra information, you should look for
|
113
|
+
* its companion DebugFile, which should be stored right next to it.
|
114
|
+
*
|
115
|
+
* Note that DebugFiles are only generated for Solidity contracts.
|
116
|
+
*/
|
117
|
+
export interface Artifact {
|
118
|
+
_format: string;
|
119
|
+
contractName: string;
|
120
|
+
sourceName: string;
|
121
|
+
abi: any[];
|
122
|
+
bytecode: string;
|
123
|
+
deployedBytecode: string;
|
124
|
+
linkReferences: LinkReferences;
|
125
|
+
deployedLinkReferences: LinkReferences;
|
126
|
+
}
|
127
|
+
/**
|
128
|
+
* A DebugFile contains any extra information about a Solidity contract that
|
129
|
+
* Hardhat and its plugins need.
|
130
|
+
*
|
131
|
+
* The current version of DebugFiles only contains a path to a BuildInfo file.
|
132
|
+
*/
|
133
|
+
export interface DebugFile {
|
134
|
+
_format: string;
|
135
|
+
buildInfo: string;
|
136
|
+
}
|
137
|
+
/**
|
138
|
+
* A BuildInfo is a file that contains all the information of a solc run. It
|
139
|
+
* includes all the necessary information to recreate that exact same run, and
|
140
|
+
* all of its output.
|
141
|
+
*/
|
142
|
+
export interface BuildInfo {
|
143
|
+
_format: string;
|
144
|
+
id: string;
|
145
|
+
solcVersion: string;
|
146
|
+
solcLongVersion: string;
|
147
|
+
input: CompilerInput;
|
148
|
+
output: CompilerOutput;
|
149
|
+
}
|
150
|
+
export interface LinkReferences {
|
151
|
+
[libraryFileName: string]: {
|
152
|
+
[libraryName: string]: Array<{
|
153
|
+
length: number;
|
154
|
+
start: number;
|
155
|
+
}>;
|
156
|
+
};
|
157
|
+
}
|
158
|
+
export interface CompilerInput {
|
159
|
+
language: string;
|
160
|
+
sources: {
|
161
|
+
[sourceName: string]: {
|
162
|
+
content: string;
|
163
|
+
};
|
164
|
+
};
|
165
|
+
settings: {
|
166
|
+
viaIR?: boolean;
|
167
|
+
optimizer: {
|
168
|
+
runs?: number;
|
169
|
+
enabled?: boolean;
|
170
|
+
details?: {
|
171
|
+
yulDetails: {
|
172
|
+
optimizerSteps: string;
|
173
|
+
};
|
174
|
+
};
|
175
|
+
};
|
176
|
+
metadata?: {
|
177
|
+
useLiteralContent: boolean;
|
178
|
+
};
|
179
|
+
outputSelection: {
|
180
|
+
[sourceName: string]: {
|
181
|
+
[contractName: string]: string[];
|
182
|
+
};
|
183
|
+
};
|
184
|
+
evmVersion?: string;
|
185
|
+
libraries?: {
|
186
|
+
[libraryFileName: string]: {
|
187
|
+
[libraryName: string]: string;
|
188
|
+
};
|
189
|
+
};
|
190
|
+
remappings?: string[];
|
191
|
+
};
|
192
|
+
}
|
193
|
+
export interface CompilerOutputContract {
|
194
|
+
abi: any;
|
195
|
+
evm: {
|
196
|
+
bytecode: CompilerOutputBytecode;
|
197
|
+
deployedBytecode: CompilerOutputBytecode;
|
198
|
+
methodIdentifiers: {
|
199
|
+
[methodSignature: string]: string;
|
200
|
+
};
|
201
|
+
};
|
202
|
+
}
|
203
|
+
export interface CompilerOutput {
|
204
|
+
sources: CompilerOutputSources;
|
205
|
+
contracts: {
|
206
|
+
[sourceName: string]: {
|
207
|
+
[contractName: string]: CompilerOutputContract;
|
208
|
+
};
|
209
|
+
};
|
210
|
+
}
|
211
|
+
export interface CompilerOutputSource {
|
212
|
+
id: number;
|
213
|
+
ast: any;
|
214
|
+
}
|
215
|
+
export interface CompilerOutputSources {
|
216
|
+
[sourceName: string]: CompilerOutputSource;
|
217
|
+
}
|
218
|
+
export interface CompilerOutputBytecode {
|
219
|
+
object: string;
|
220
|
+
opcodes: string;
|
221
|
+
sourceMap: string;
|
222
|
+
linkReferences: {
|
223
|
+
[sourceName: string]: {
|
224
|
+
[libraryName: string]: Array<{
|
225
|
+
start: number;
|
226
|
+
length: 20;
|
227
|
+
}>;
|
228
|
+
};
|
229
|
+
};
|
230
|
+
immutableReferences?: {
|
231
|
+
[key: string]: Array<{
|
232
|
+
start: number;
|
233
|
+
length: number;
|
234
|
+
}>;
|
235
|
+
};
|
236
|
+
}
|
237
|
+
//# sourceMappingURL=artifacts.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../src/types/artifacts.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../src/types/artifacts.ts"],"names":[],"mappings":""}
|