@0xsequence/catapult 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +29 -0
- package/.github/workflows/ci.yml +181 -0
- package/CONCEPT.md +24 -0
- package/README.md +772 -0
- package/contracts/checked-call.huff +65 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +16 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/common.d.ts +11 -0
- package/dist/commands/common.d.ts.map +1 -0
- package/dist/commands/common.js +73 -0
- package/dist/commands/common.js.map +1 -0
- package/dist/commands/dry.d.ts +3 -0
- package/dist/commands/dry.d.ts.map +1 -0
- package/dist/commands/dry.js +171 -0
- package/dist/commands/dry.js.map +1 -0
- package/dist/commands/etherscan.d.ts +3 -0
- package/dist/commands/etherscan.d.ts.map +1 -0
- package/dist/commands/etherscan.js +323 -0
- package/dist/commands/etherscan.js.map +1 -0
- package/dist/commands/index.d.ts +6 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +22 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/list.d.ts +3 -0
- package/dist/commands/list.d.ts.map +1 -0
- package/dist/commands/list.js +259 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/run.d.ts +3 -0
- package/dist/commands/run.d.ts.map +1 -0
- package/dist/commands/run.js +96 -0
- package/dist/commands/run.js.map +1 -0
- package/dist/commands/utils.d.ts +3 -0
- package/dist/commands/utils.d.ts.map +1 -0
- package/dist/commands/utils.js +46 -0
- package/dist/commands/utils.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +58 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/__tests__/deployer-events.spec.d.ts +2 -0
- package/dist/lib/__tests__/deployer-events.spec.d.ts.map +1 -0
- package/dist/lib/__tests__/deployer-events.spec.js +260 -0
- package/dist/lib/__tests__/deployer-events.spec.js.map +1 -0
- package/dist/lib/__tests__/deployer.spec.d.ts +2 -0
- package/dist/lib/__tests__/deployer.spec.d.ts.map +1 -0
- package/dist/lib/__tests__/deployer.spec.js +884 -0
- package/dist/lib/__tests__/deployer.spec.js.map +1 -0
- package/dist/lib/__tests__/network-utils.spec.d.ts +2 -0
- package/dist/lib/__tests__/network-utils.spec.d.ts.map +1 -0
- package/dist/lib/__tests__/network-utils.spec.js +140 -0
- package/dist/lib/__tests__/network-utils.spec.js.map +1 -0
- package/dist/lib/contracts/__tests__/repository.spec.d.ts +2 -0
- package/dist/lib/contracts/__tests__/repository.spec.d.ts.map +1 -0
- package/dist/lib/contracts/__tests__/repository.spec.js +321 -0
- package/dist/lib/contracts/__tests__/repository.spec.js.map +1 -0
- package/dist/lib/contracts/repository.d.ts +27 -0
- package/dist/lib/contracts/repository.d.ts.map +1 -0
- package/dist/lib/contracts/repository.js +241 -0
- package/dist/lib/contracts/repository.js.map +1 -0
- package/dist/lib/core/__tests__/engine.spec.d.ts +2 -0
- package/dist/lib/core/__tests__/engine.spec.d.ts.map +1 -0
- package/dist/lib/core/__tests__/engine.spec.js +1212 -0
- package/dist/lib/core/__tests__/engine.spec.js.map +1 -0
- package/dist/lib/core/__tests__/graph.spec.d.ts +2 -0
- package/dist/lib/core/__tests__/graph.spec.d.ts.map +1 -0
- package/dist/lib/core/__tests__/graph.spec.js +116 -0
- package/dist/lib/core/__tests__/graph.spec.js.map +1 -0
- package/dist/lib/core/__tests__/json-integration.spec.d.ts +2 -0
- package/dist/lib/core/__tests__/json-integration.spec.d.ts.map +1 -0
- package/dist/lib/core/__tests__/json-integration.spec.js +300 -0
- package/dist/lib/core/__tests__/json-integration.spec.js.map +1 -0
- package/dist/lib/core/__tests__/loader.spec.d.ts +2 -0
- package/dist/lib/core/__tests__/loader.spec.d.ts.map +1 -0
- package/dist/lib/core/__tests__/loader.spec.js +288 -0
- package/dist/lib/core/__tests__/loader.spec.js.map +1 -0
- package/dist/lib/core/__tests__/multi-platform-verification.spec.d.ts +2 -0
- package/dist/lib/core/__tests__/multi-platform-verification.spec.d.ts.map +1 -0
- package/dist/lib/core/__tests__/multi-platform-verification.spec.js +342 -0
- package/dist/lib/core/__tests__/multi-platform-verification.spec.js.map +1 -0
- package/dist/lib/core/__tests__/resolver.spec.d.ts +2 -0
- package/dist/lib/core/__tests__/resolver.spec.d.ts.map +1 -0
- package/dist/lib/core/__tests__/resolver.spec.js +1367 -0
- package/dist/lib/core/__tests__/resolver.spec.js.map +1 -0
- package/dist/lib/core/__tests__/static-action.spec.d.ts +2 -0
- package/dist/lib/core/__tests__/static-action.spec.d.ts.map +1 -0
- package/dist/lib/core/__tests__/static-action.spec.js +136 -0
- package/dist/lib/core/__tests__/static-action.spec.js.map +1 -0
- package/dist/lib/core/context.d.ts +29 -0
- package/dist/lib/core/context.d.ts.map +1 -0
- package/dist/lib/core/context.js +88 -0
- package/dist/lib/core/context.js.map +1 -0
- package/dist/lib/core/engine.d.ts +25 -0
- package/dist/lib/core/engine.d.ts.map +1 -0
- package/dist/lib/core/engine.js +1191 -0
- package/dist/lib/core/engine.js.map +1 -0
- package/dist/lib/core/graph.d.ts +18 -0
- package/dist/lib/core/graph.d.ts.map +1 -0
- package/dist/lib/core/graph.js +158 -0
- package/dist/lib/core/graph.js.map +1 -0
- package/dist/lib/core/loader.d.ts +25 -0
- package/dist/lib/core/loader.d.ts.map +1 -0
- package/dist/lib/core/loader.js +248 -0
- package/dist/lib/core/loader.js.map +1 -0
- package/dist/lib/core/resolver.d.ts +20 -0
- package/dist/lib/core/resolver.d.ts.map +1 -0
- package/dist/lib/core/resolver.js +307 -0
- package/dist/lib/core/resolver.js.map +1 -0
- package/dist/lib/deployer.d.ts +39 -0
- package/dist/lib/deployer.d.ts.map +1 -0
- package/dist/lib/deployer.js +533 -0
- package/dist/lib/deployer.js.map +1 -0
- package/dist/lib/events/__tests__/event-system.spec.d.ts +2 -0
- package/dist/lib/events/__tests__/event-system.spec.d.ts.map +1 -0
- package/dist/lib/events/__tests__/event-system.spec.js +256 -0
- package/dist/lib/events/__tests__/event-system.spec.js.map +1 -0
- package/dist/lib/events/cli-adapter.d.ts +13 -0
- package/dist/lib/events/cli-adapter.d.ts.map +1 -0
- package/dist/lib/events/cli-adapter.js +244 -0
- package/dist/lib/events/cli-adapter.js.map +1 -0
- package/dist/lib/events/emitter.d.ts +11 -0
- package/dist/lib/events/emitter.d.ts.map +1 -0
- package/dist/lib/events/emitter.js +29 -0
- package/dist/lib/events/emitter.js.map +1 -0
- package/dist/lib/events/index.d.ts +4 -0
- package/dist/lib/events/index.d.ts.map +1 -0
- package/dist/lib/events/index.js +20 -0
- package/dist/lib/events/index.js.map +1 -0
- package/dist/lib/events/types.d.ts +368 -0
- package/dist/lib/events/types.d.ts.map +1 -0
- package/dist/lib/events/types.js +3 -0
- package/dist/lib/events/types.js.map +1 -0
- package/dist/lib/index.d.ts +5 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +44 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/network-loader.d.ts +3 -0
- package/dist/lib/network-loader.d.ts.map +1 -0
- package/dist/lib/network-loader.js +80 -0
- package/dist/lib/network-loader.js.map +1 -0
- package/dist/lib/network-match.d.ts +3 -0
- package/dist/lib/network-match.d.ts.map +1 -0
- package/dist/lib/network-match.js +62 -0
- package/dist/lib/network-match.js.map +1 -0
- package/dist/lib/network-utils.d.ts +4 -0
- package/dist/lib/network-utils.d.ts.map +1 -0
- package/dist/lib/network-utils.js +39 -0
- package/dist/lib/network-utils.js.map +1 -0
- package/dist/lib/parsers/__tests__/buildinfo.spec.d.ts +2 -0
- package/dist/lib/parsers/__tests__/buildinfo.spec.d.ts.map +1 -0
- package/dist/lib/parsers/__tests__/buildinfo.spec.js +132 -0
- package/dist/lib/parsers/__tests__/buildinfo.spec.js.map +1 -0
- package/dist/lib/parsers/__tests__/job.spec.d.ts +2 -0
- package/dist/lib/parsers/__tests__/job.spec.d.ts.map +1 -0
- package/dist/lib/parsers/__tests__/job.spec.js +318 -0
- package/dist/lib/parsers/__tests__/job.spec.js.map +1 -0
- package/dist/lib/parsers/__tests__/template.spec.d.ts +2 -0
- package/dist/lib/parsers/__tests__/template.spec.d.ts.map +1 -0
- package/dist/lib/parsers/__tests__/template.spec.js +126 -0
- package/dist/lib/parsers/__tests__/template.spec.js.map +1 -0
- package/dist/lib/parsers/artifact/__tests__/artifact.spec.d.ts +2 -0
- package/dist/lib/parsers/artifact/__tests__/artifact.spec.d.ts.map +1 -0
- package/dist/lib/parsers/artifact/__tests__/artifact.spec.js +128 -0
- package/dist/lib/parsers/artifact/__tests__/artifact.spec.js.map +1 -0
- package/dist/lib/parsers/artifact/foundry-1.2.d.ts +3 -0
- package/dist/lib/parsers/artifact/foundry-1.2.d.ts.map +1 -0
- package/dist/lib/parsers/artifact/foundry-1.2.js +82 -0
- package/dist/lib/parsers/artifact/foundry-1.2.js.map +1 -0
- package/dist/lib/parsers/artifact/index.d.ts +3 -0
- package/dist/lib/parsers/artifact/index.d.ts.map +1 -0
- package/dist/lib/parsers/artifact/index.js +17 -0
- package/dist/lib/parsers/artifact/index.js.map +1 -0
- package/dist/lib/parsers/artifact/types.d.ts +3 -0
- package/dist/lib/parsers/artifact/types.d.ts.map +1 -0
- package/dist/lib/parsers/artifact/types.js +3 -0
- package/dist/lib/parsers/artifact/types.js.map +1 -0
- package/dist/lib/parsers/buildinfo.d.ts +5 -0
- package/dist/lib/parsers/buildinfo.d.ts.map +1 -0
- package/dist/lib/parsers/buildinfo.js +85 -0
- package/dist/lib/parsers/buildinfo.js.map +1 -0
- package/dist/lib/parsers/constants.d.ts +4 -0
- package/dist/lib/parsers/constants.d.ts.map +1 -0
- package/dist/lib/parsers/constants.js +45 -0
- package/dist/lib/parsers/constants.js.map +1 -0
- package/dist/lib/parsers/index.d.ts +5 -0
- package/dist/lib/parsers/index.d.ts.map +1 -0
- package/dist/lib/parsers/index.js +21 -0
- package/dist/lib/parsers/index.js.map +1 -0
- package/dist/lib/parsers/job.d.ts +3 -0
- package/dist/lib/parsers/job.d.ts.map +1 -0
- package/dist/lib/parsers/job.js +74 -0
- package/dist/lib/parsers/job.js.map +1 -0
- package/dist/lib/parsers/template.d.ts +3 -0
- package/dist/lib/parsers/template.d.ts.map +1 -0
- package/dist/lib/parsers/template.js +91 -0
- package/dist/lib/parsers/template.js.map +1 -0
- package/dist/lib/std/templates/assured-deployment.yaml +45 -0
- package/dist/lib/std/templates/erc-2470.yaml +67 -0
- package/dist/lib/std/templates/min-balance.yaml +32 -0
- package/dist/lib/std/templates/nano-universal-deployer.yaml +59 -0
- package/dist/lib/std/templates/raw-erc-2470.yaml +59 -0
- package/dist/lib/std/templates/raw-nano-universal-deployer.yaml +51 -0
- package/dist/lib/std/templates/raw-sequence-universal-deployer-2.yaml +48 -0
- package/dist/lib/std/templates/sequence-universal-deployer-2.yaml +57 -0
- package/dist/lib/types/__tests__/json-request-action.spec.d.ts +2 -0
- package/dist/lib/types/__tests__/json-request-action.spec.d.ts.map +1 -0
- package/dist/lib/types/__tests__/json-request-action.spec.js +219 -0
- package/dist/lib/types/__tests__/json-request-action.spec.js.map +1 -0
- package/dist/lib/types/__tests__/read-json-value.spec.d.ts +2 -0
- package/dist/lib/types/__tests__/read-json-value.spec.d.ts.map +1 -0
- package/dist/lib/types/__tests__/read-json-value.spec.js +233 -0
- package/dist/lib/types/__tests__/read-json-value.spec.js.map +1 -0
- package/dist/lib/types/actions.d.ts +74 -0
- package/dist/lib/types/actions.d.ts.map +1 -0
- package/dist/lib/types/actions.js +18 -0
- package/dist/lib/types/actions.js.map +1 -0
- package/dist/lib/types/artifacts.d.ts +15 -0
- package/dist/lib/types/artifacts.d.ts.map +1 -0
- package/dist/lib/types/artifacts.js +3 -0
- package/dist/lib/types/artifacts.js.map +1 -0
- package/dist/lib/types/buildinfo.d.ts +112 -0
- package/dist/lib/types/buildinfo.d.ts.map +1 -0
- package/dist/lib/types/buildinfo.js +3 -0
- package/dist/lib/types/buildinfo.js.map +1 -0
- package/dist/lib/types/conditions.d.ts +17 -0
- package/dist/lib/types/conditions.d.ts.map +1 -0
- package/dist/lib/types/conditions.js +21 -0
- package/dist/lib/types/conditions.js.map +1 -0
- package/dist/lib/types/contracts.d.ts +14 -0
- package/dist/lib/types/contracts.d.ts.map +1 -0
- package/dist/lib/types/contracts.js +3 -0
- package/dist/lib/types/contracts.js.map +1 -0
- package/dist/lib/types/definitions.d.ts +51 -0
- package/dist/lib/types/definitions.d.ts.map +1 -0
- package/dist/lib/types/definitions.js +3 -0
- package/dist/lib/types/definitions.js.map +1 -0
- package/dist/lib/types/index.d.ts +9 -0
- package/dist/lib/types/index.d.ts.map +1 -0
- package/dist/lib/types/index.js +25 -0
- package/dist/lib/types/index.js.map +1 -0
- package/dist/lib/types/network.d.ts +9 -0
- package/dist/lib/types/network.d.ts.map +1 -0
- package/dist/lib/types/network.js +3 -0
- package/dist/lib/types/network.js.map +1 -0
- package/dist/lib/types/project.d.ts +5 -0
- package/dist/lib/types/project.d.ts.map +1 -0
- package/dist/lib/types/project.js +3 -0
- package/dist/lib/types/project.js.map +1 -0
- package/dist/lib/types/task.d.ts +9 -0
- package/dist/lib/types/task.d.ts.map +1 -0
- package/dist/lib/types/task.js +3 -0
- package/dist/lib/types/task.js.map +1 -0
- package/dist/lib/types/values.d.ts +78 -0
- package/dist/lib/types/values.d.ts.map +1 -0
- package/dist/lib/types/values.js +3 -0
- package/dist/lib/types/values.js.map +1 -0
- package/dist/lib/utils/validation.d.ts +5 -0
- package/dist/lib/utils/validation.d.ts.map +1 -0
- package/dist/lib/utils/validation.js +77 -0
- package/dist/lib/utils/validation.js.map +1 -0
- package/dist/lib/validation/contract-references.d.ts +12 -0
- package/dist/lib/validation/contract-references.d.ts.map +1 -0
- package/dist/lib/validation/contract-references.js +112 -0
- package/dist/lib/validation/contract-references.js.map +1 -0
- package/dist/lib/validation/index.d.ts +1 -0
- package/dist/lib/validation/index.d.ts.map +1 -0
- package/dist/lib/validation/index.js +2 -0
- package/dist/lib/validation/index.js.map +1 -0
- package/dist/lib/verification/__tests__/etherscan.spec.d.ts +2 -0
- package/dist/lib/verification/__tests__/etherscan.spec.d.ts.map +1 -0
- package/dist/lib/verification/__tests__/etherscan.spec.js +565 -0
- package/dist/lib/verification/__tests__/etherscan.spec.js.map +1 -0
- package/dist/lib/verification/__tests__/sourcify.spec.d.ts +2 -0
- package/dist/lib/verification/__tests__/sourcify.spec.d.ts.map +1 -0
- package/dist/lib/verification/__tests__/sourcify.spec.js +212 -0
- package/dist/lib/verification/__tests__/sourcify.spec.js.map +1 -0
- package/dist/lib/verification/etherscan.d.ts +56 -0
- package/dist/lib/verification/etherscan.d.ts.map +1 -0
- package/dist/lib/verification/etherscan.js +340 -0
- package/dist/lib/verification/etherscan.js.map +1 -0
- package/dist/lib/verification/sourcify.d.ts +12 -0
- package/dist/lib/verification/sourcify.d.ts.map +1 -0
- package/dist/lib/verification/sourcify.js +227 -0
- package/dist/lib/verification/sourcify.js.map +1 -0
- package/eslint.config.js +48 -0
- package/examples/jobs/guards-v1.yaml +17 -0
- package/examples/jobs/sequence-seq-0001-patch.yaml +59 -0
- package/examples/jobs/sequence-v1.yaml +59 -0
- package/examples/templates/sequence-factory-v1.yaml +56 -0
- package/jest.config.js +25 -0
- package/package.json +68 -0
- package/src/cli.ts +17 -0
- package/src/commands/common.ts +61 -0
- package/src/commands/dry.ts +208 -0
- package/src/commands/etherscan.ts +360 -0
- package/src/commands/index.ts +5 -0
- package/src/commands/list.ts +249 -0
- package/src/commands/run.ts +136 -0
- package/src/commands/utils.ts +52 -0
- package/src/index.ts +67 -0
- package/src/lib/__tests__/deployer-events.spec.ts +338 -0
- package/src/lib/__tests__/deployer.spec.ts +1204 -0
- package/src/lib/__tests__/network-utils.spec.ts +181 -0
- package/src/lib/artifacts/__tests__/fixtures/contract1.json +19 -0
- package/src/lib/artifacts/__tests__/fixtures/contract2.json +19 -0
- package/src/lib/artifacts/__tests__/fixtures/duplicate-name.json +19 -0
- package/src/lib/artifacts/__tests__/fixtures/nested/nested-contract.json +18 -0
- package/src/lib/artifacts/__tests__/fixtures/not-an-artifact.json +8 -0
- package/src/lib/artifacts/__tests__/fixtures/readme.txt +2 -0
- package/src/lib/contracts/__tests__/repository.spec.ts +344 -0
- package/src/lib/contracts/repository.ts +313 -0
- package/src/lib/core/__tests__/engine.spec.ts +1514 -0
- package/src/lib/core/__tests__/graph.spec.ts +125 -0
- package/src/lib/core/__tests__/json-integration.spec.ts +360 -0
- package/src/lib/core/__tests__/loader.spec.ts +334 -0
- package/src/lib/core/__tests__/multi-platform-verification.spec.ts +406 -0
- package/src/lib/core/__tests__/resolver.spec.ts +1693 -0
- package/src/lib/core/__tests__/static-action.spec.ts +172 -0
- package/src/lib/core/context.ts +127 -0
- package/src/lib/core/engine.ts +1531 -0
- package/src/lib/core/graph.ts +252 -0
- package/src/lib/core/loader.ts +263 -0
- package/src/lib/core/resolver.ts +498 -0
- package/src/lib/deployer.ts +768 -0
- package/src/lib/events/__tests__/event-system.spec.ts +343 -0
- package/src/lib/events/cli-adapter.ts +325 -0
- package/src/lib/events/emitter.ts +62 -0
- package/src/lib/events/index.ts +3 -0
- package/src/lib/events/types.ts +469 -0
- package/src/lib/index.ts +14 -0
- package/src/lib/network-loader.ts +59 -0
- package/src/lib/network-utils.ts +64 -0
- package/src/lib/parsers/__tests__/buildinfo.spec.ts +122 -0
- package/src/lib/parsers/__tests__/fixtures/buildinfo/invalid-bytecode-buildinfo.json +62 -0
- package/src/lib/parsers/__tests__/fixtures/buildinfo/invalid-json.txt +2 -0
- package/src/lib/parsers/__tests__/fixtures/buildinfo/multi-contract-buildinfo.json +89 -0
- package/src/lib/parsers/__tests__/fixtures/buildinfo/no-contracts-buildinfo.json +17 -0
- package/src/lib/parsers/__tests__/fixtures/buildinfo/simple-buildinfo.json +63 -0
- package/src/lib/parsers/__tests__/fixtures/buildinfo/wrong-format.json +4 -0
- package/src/lib/parsers/__tests__/job.spec.ts +335 -0
- package/src/lib/parsers/__tests__/template.spec.ts +111 -0
- package/src/lib/parsers/artifact/__tests__/artifact.spec.ts +117 -0
- package/src/lib/parsers/artifact/__tests__/fixtures/empty-bytecode.json +5 -0
- package/src/lib/parsers/artifact/__tests__/fixtures/hardhat-artifact.json +67 -0
- package/src/lib/parsers/artifact/__tests__/fixtures/invalid-bytecode.json +5 -0
- package/src/lib/parsers/artifact/__tests__/fixtures/invalid-json.txt +11 -0
- package/src/lib/parsers/artifact/__tests__/fixtures/minimal-artifact.json +5 -0
- package/src/lib/parsers/artifact/__tests__/fixtures/missing-abi.json +4 -0
- package/src/lib/parsers/artifact/__tests__/fixtures/missing-bytecode.json +11 -0
- package/src/lib/parsers/artifact/__tests__/fixtures/missing-contract-name.json +11 -0
- package/src/lib/parsers/artifact/__tests__/fixtures/simple-artifact.json +40 -0
- package/src/lib/parsers/artifact/__tests__/fixtures/wrong-types.json +7 -0
- package/src/lib/parsers/artifact/foundry-1.2.ts +72 -0
- package/src/lib/parsers/artifact/index.ts +27 -0
- package/src/lib/parsers/artifact/types.ts +9 -0
- package/src/lib/parsers/buildinfo.ts +127 -0
- package/src/lib/parsers/constants.ts +56 -0
- package/src/lib/parsers/index.ts +5 -0
- package/src/lib/parsers/job.ts +101 -0
- package/src/lib/parsers/template.ts +131 -0
- package/src/lib/std/templates/assured-deployment.yaml +45 -0
- package/src/lib/std/templates/erc-2470.yaml +67 -0
- package/src/lib/std/templates/min-balance.yaml +32 -0
- package/src/lib/std/templates/nano-universal-deployer.yaml +59 -0
- package/src/lib/std/templates/raw-erc-2470.yaml +59 -0
- package/src/lib/std/templates/raw-nano-universal-deployer.yaml +51 -0
- package/src/lib/std/templates/raw-sequence-universal-deployer-2.yaml +48 -0
- package/src/lib/std/templates/sequence-universal-deployer-2.yaml +57 -0
- package/src/lib/types/__tests__/json-request-action.spec.ts +243 -0
- package/src/lib/types/__tests__/read-json-value.spec.ts +264 -0
- package/src/lib/types/actions.ts +127 -0
- package/src/lib/types/artifacts.ts +21 -0
- package/src/lib/types/buildinfo.ts +116 -0
- package/src/lib/types/conditions.ts +50 -0
- package/src/lib/types/contracts.ts +23 -0
- package/src/lib/types/definitions.ts +68 -0
- package/src/lib/types/index.ts +8 -0
- package/src/lib/types/network.ts +22 -0
- package/src/lib/types/project.ts +9 -0
- package/src/lib/types/task.ts +9 -0
- package/src/lib/types/values.ts +116 -0
- package/src/lib/utils/validation.ts +116 -0
- package/src/lib/validation/contract-references.ts +210 -0
- package/src/lib/validation/index.ts +1 -0
- package/src/lib/verification/__tests__/etherscan.spec.ts +710 -0
- package/src/lib/verification/__tests__/sourcify.spec.ts +288 -0
- package/src/lib/verification/etherscan.ts +546 -0
- package/src/lib/verification/sourcify.ts +248 -0
- package/test_validation/artifacts/TestContract.json +9 -0
- package/test_validation/jobs/test-missing.yaml +16 -0
- package/test_validation/networks.yaml +3 -0
- package/tsconfig.json +36 -0
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
export interface BuildInfoSource {
|
|
2
|
+
content?: string;
|
|
3
|
+
urls?: string[];
|
|
4
|
+
keccak256?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface BuildInfoInput {
|
|
7
|
+
language: string;
|
|
8
|
+
sources: Record<string, BuildInfoSource>;
|
|
9
|
+
settings: {
|
|
10
|
+
optimizer?: {
|
|
11
|
+
enabled: boolean;
|
|
12
|
+
runs: number;
|
|
13
|
+
};
|
|
14
|
+
evmVersion?: string;
|
|
15
|
+
remappings?: string[];
|
|
16
|
+
viaIR?: boolean;
|
|
17
|
+
libraries?: Record<string, Record<string, string>>;
|
|
18
|
+
outputSelection: Record<string, Record<string, string[]>>;
|
|
19
|
+
[key: string]: any;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export interface BuildInfoError {
|
|
23
|
+
component?: string;
|
|
24
|
+
errorCode?: string;
|
|
25
|
+
formattedMessage?: string;
|
|
26
|
+
message?: string;
|
|
27
|
+
severity?: 'error' | 'warning' | 'info';
|
|
28
|
+
sourceLocation?: {
|
|
29
|
+
file: string;
|
|
30
|
+
start: number;
|
|
31
|
+
end: number;
|
|
32
|
+
};
|
|
33
|
+
type?: string;
|
|
34
|
+
}
|
|
35
|
+
export interface BuildInfoBytecode {
|
|
36
|
+
functionDebugData?: Record<string, any>;
|
|
37
|
+
generatedSources?: any[];
|
|
38
|
+
linkReferences?: Record<string, Record<string, Array<{
|
|
39
|
+
length: number;
|
|
40
|
+
start: number;
|
|
41
|
+
}>>>;
|
|
42
|
+
object: string;
|
|
43
|
+
opcodes?: string;
|
|
44
|
+
sourceMap?: string;
|
|
45
|
+
}
|
|
46
|
+
export interface BuildInfoContract {
|
|
47
|
+
abi: any[];
|
|
48
|
+
metadata?: string;
|
|
49
|
+
storageLayout?: {
|
|
50
|
+
storage: Array<{
|
|
51
|
+
astId: number;
|
|
52
|
+
contract: string;
|
|
53
|
+
label: string;
|
|
54
|
+
offset: number;
|
|
55
|
+
slot: string;
|
|
56
|
+
type: string;
|
|
57
|
+
}>;
|
|
58
|
+
types: Record<string, {
|
|
59
|
+
encoding: string;
|
|
60
|
+
label: string;
|
|
61
|
+
numberOfBytes: string;
|
|
62
|
+
[key: string]: any;
|
|
63
|
+
}>;
|
|
64
|
+
};
|
|
65
|
+
userdoc?: any;
|
|
66
|
+
devdoc?: any;
|
|
67
|
+
ir?: string;
|
|
68
|
+
irOptimized?: string;
|
|
69
|
+
evm: {
|
|
70
|
+
assembly?: string;
|
|
71
|
+
legacyAssembly?: any;
|
|
72
|
+
bytecode: BuildInfoBytecode;
|
|
73
|
+
deployedBytecode: BuildInfoBytecode;
|
|
74
|
+
methodIdentifiers?: Record<string, string>;
|
|
75
|
+
gasEstimates?: any;
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
export interface BuildInfoOutput {
|
|
79
|
+
errors?: BuildInfoError[];
|
|
80
|
+
sources: Record<string, {
|
|
81
|
+
id: number;
|
|
82
|
+
ast?: any;
|
|
83
|
+
}>;
|
|
84
|
+
contracts: Record<string, Record<string, BuildInfoContract>>;
|
|
85
|
+
}
|
|
86
|
+
export interface BuildInfo {
|
|
87
|
+
_format?: 'hh-sol-build-info-1' | 'ethers-rs-sol-build-info-1';
|
|
88
|
+
id: string;
|
|
89
|
+
solcVersion: string;
|
|
90
|
+
solcLongVersion?: string;
|
|
91
|
+
input: BuildInfoInput;
|
|
92
|
+
output: BuildInfoOutput;
|
|
93
|
+
zksolcVersion?: string;
|
|
94
|
+
eraVersion?: string;
|
|
95
|
+
zkevmVersion?: string;
|
|
96
|
+
[key: string]: any;
|
|
97
|
+
}
|
|
98
|
+
export interface ExtractedContract {
|
|
99
|
+
contractName: string;
|
|
100
|
+
sourceName: string;
|
|
101
|
+
fullyQualifiedName: string;
|
|
102
|
+
abi: any[];
|
|
103
|
+
bytecode: string;
|
|
104
|
+
deployedBytecode?: string;
|
|
105
|
+
source?: string;
|
|
106
|
+
compiler: {
|
|
107
|
+
version: string;
|
|
108
|
+
};
|
|
109
|
+
buildInfoId: string;
|
|
110
|
+
buildInfoPath?: string;
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=buildinfo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildinfo.d.ts","sourceRoot":"","sources":["../../../src/lib/types/buildinfo.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildinfo.js","sourceRoot":"","sources":["../../../src/lib/types/buildinfo.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { AddressValue, BooleanValue } from './values';
|
|
2
|
+
export interface ContractExistsCondition {
|
|
3
|
+
type: 'contract-exists';
|
|
4
|
+
arguments: {
|
|
5
|
+
address: AddressValue;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export declare function isContractExistsCondition(obj: any): obj is ContractExistsCondition;
|
|
9
|
+
export interface JobCompletedCondition {
|
|
10
|
+
type: 'job-completed';
|
|
11
|
+
arguments: {
|
|
12
|
+
job: string;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
export declare function isJobCompletedCondition(obj: any): obj is JobCompletedCondition;
|
|
16
|
+
export type Condition = BooleanValue | ContractExistsCondition | JobCompletedCondition;
|
|
17
|
+
//# sourceMappingURL=conditions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conditions.d.ts","sourceRoot":"","sources":["../../../src/lib/types/conditions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAKrD,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,iBAAiB,CAAC;IACxB,SAAS,EAAE;QACP,OAAO,EAAE,YAAY,CAAC;KACzB,CAAC;CACL;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,uBAAuB,CASlF;AAKD,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,eAAe,CAAC;IACtB,SAAS,EAAE;QACP,GAAG,EAAE,MAAM,CAAC;KACf,CAAC;CACL;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,qBAAqB,CAS9E;AAOD,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,uBAAuB,GAAG,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isContractExistsCondition = isContractExistsCondition;
|
|
4
|
+
exports.isJobCompletedCondition = isJobCompletedCondition;
|
|
5
|
+
function isContractExistsCondition(obj) {
|
|
6
|
+
return (obj &&
|
|
7
|
+
typeof obj === 'object' &&
|
|
8
|
+
obj.type === 'contract-exists' &&
|
|
9
|
+
obj.arguments &&
|
|
10
|
+
typeof obj.arguments === 'object' &&
|
|
11
|
+
'address' in obj.arguments);
|
|
12
|
+
}
|
|
13
|
+
function isJobCompletedCondition(obj) {
|
|
14
|
+
return (obj &&
|
|
15
|
+
typeof obj === 'object' &&
|
|
16
|
+
obj.type === 'job-completed' &&
|
|
17
|
+
obj.arguments &&
|
|
18
|
+
typeof obj.arguments === 'object' &&
|
|
19
|
+
typeof obj.arguments.job === 'string');
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=conditions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conditions.js","sourceRoot":"","sources":["../../../src/lib/types/conditions.ts"],"names":[],"mappings":";;AAYA,8DASC;AAYD,0DASC;AA9BD,SAAgB,yBAAyB,CAAC,GAAQ;IAC9C,OAAO,CACH,GAAG;QACH,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,CAAC,IAAI,KAAK,iBAAiB;QAC9B,GAAG,CAAC,SAAS;QACb,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;QACjC,SAAS,IAAI,GAAG,CAAC,SAAS,CAC7B,CAAC;AACN,CAAC;AAYD,SAAgB,uBAAuB,CAAC,GAAQ;IAC5C,OAAO,CACH,GAAG;QACH,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,CAAC,IAAI,KAAK,eAAe;QAC5B,GAAG,CAAC,SAAS;QACb,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;QACjC,OAAO,GAAG,CAAC,SAAS,CAAC,GAAG,KAAK,QAAQ,CACxC,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CompilerInfo } from './artifacts';
|
|
2
|
+
export interface Contract {
|
|
3
|
+
uniqueHash: string;
|
|
4
|
+
creationCode: string;
|
|
5
|
+
runtimeBytecode?: string;
|
|
6
|
+
abi?: any[];
|
|
7
|
+
sourceName?: string;
|
|
8
|
+
contractName?: string;
|
|
9
|
+
source?: string;
|
|
10
|
+
compiler?: CompilerInfo;
|
|
11
|
+
buildInfoId?: string;
|
|
12
|
+
_sources: Set<string>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=contracts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../src/lib/types/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,MAAM,WAAW,QAAQ;IAEvB,UAAU,EAAE,MAAM,CAAA;IAGlB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,GAAG,CAAC,EAAE,GAAG,EAAE,CAAA;IAGX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IAGf,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IAGpB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../src/lib/types/contracts.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { Action } from './actions';
|
|
2
|
+
import { Condition } from './conditions';
|
|
3
|
+
import { Value } from './values';
|
|
4
|
+
export interface TemplateArgument {
|
|
5
|
+
type: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface Template {
|
|
9
|
+
type?: 'template';
|
|
10
|
+
name: string;
|
|
11
|
+
description?: string;
|
|
12
|
+
arguments?: Record<string, TemplateArgument>;
|
|
13
|
+
returns?: Record<string, TemplateArgument>;
|
|
14
|
+
setup?: {
|
|
15
|
+
skip_condition?: Condition[];
|
|
16
|
+
actions?: Action[];
|
|
17
|
+
};
|
|
18
|
+
actions: Action[];
|
|
19
|
+
skip_condition?: Condition[];
|
|
20
|
+
outputs?: Record<string, Value<any>>;
|
|
21
|
+
_path?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface JobAction {
|
|
24
|
+
name: string;
|
|
25
|
+
template?: string;
|
|
26
|
+
type?: string;
|
|
27
|
+
arguments: Record<string, Value<any>>;
|
|
28
|
+
skip_condition?: Condition[];
|
|
29
|
+
depends_on?: string[];
|
|
30
|
+
output?: boolean | Record<string, Value<any>>;
|
|
31
|
+
}
|
|
32
|
+
export interface Job {
|
|
33
|
+
name: string;
|
|
34
|
+
version: string;
|
|
35
|
+
description?: string;
|
|
36
|
+
depends_on?: string[];
|
|
37
|
+
actions: JobAction[];
|
|
38
|
+
only_networks?: number[];
|
|
39
|
+
skip_networks?: number[];
|
|
40
|
+
skip_condition?: Condition[];
|
|
41
|
+
constants?: Record<string, Value<any>>;
|
|
42
|
+
deprecated?: boolean;
|
|
43
|
+
_path?: string;
|
|
44
|
+
}
|
|
45
|
+
export interface ConstantsDocument {
|
|
46
|
+
type: 'constants';
|
|
47
|
+
name?: string;
|
|
48
|
+
constants: Record<string, Value<any>>;
|
|
49
|
+
_path?: string;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=definitions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../../src/lib/types/definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAIhC,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,QAAQ;IAErB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE;QACJ,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC;QAC7B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;KACtB,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAID,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAOtB,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;CACjD;AAED,MAAM,WAAW,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,cAAc,CAAC,EAAE,SAAS,EAAE,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAID,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../../src/lib/types/definitions.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './network';
|
|
2
|
+
export * from './project';
|
|
3
|
+
export * from './values';
|
|
4
|
+
export * from './conditions';
|
|
5
|
+
export * from './actions';
|
|
6
|
+
export * from './definitions';
|
|
7
|
+
export * from './artifacts';
|
|
8
|
+
export * from './buildinfo';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./network"), exports);
|
|
18
|
+
__exportStar(require("./project"), exports);
|
|
19
|
+
__exportStar(require("./values"), exports);
|
|
20
|
+
__exportStar(require("./conditions"), exports);
|
|
21
|
+
__exportStar(require("./actions"), exports);
|
|
22
|
+
__exportStar(require("./definitions"), exports);
|
|
23
|
+
__exportStar(require("./artifacts"), exports);
|
|
24
|
+
__exportStar(require("./buildinfo"), exports);
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAAyB;AACzB,4CAAyB;AACzB,2CAAwB;AACxB,+CAA4B;AAC5B,4CAAyB;AACzB,gDAA6B;AAC7B,8CAA2B;AAC3B,8CAA2B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../../src/lib/types/network.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,OAAO;IAEtB,IAAI,EAAE,MAAM,CAAA;IAGZ,OAAO,EAAE,MAAM,CAAA;IAGf,MAAM,EAAE,MAAM,CAAA;IAGd,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IAGnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAGjB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../../src/lib/types/network.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/lib/types/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKnC,MAAM,WAAW,OAAO;IAEtB,QAAQ,EAAE,OAAO,EAAE,CAAA;CACpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../../src/lib/types/project.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/lib/types/task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,SAAS,EAAE,CAAA;CACpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/lib/types/task.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
export type Reference = string;
|
|
2
|
+
export interface AbiEncodeValue {
|
|
3
|
+
type: 'abi-encode';
|
|
4
|
+
arguments: {
|
|
5
|
+
signature: Value<string>;
|
|
6
|
+
values: Value<any>[];
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
export interface AbiPackValue {
|
|
10
|
+
type: 'abi-pack';
|
|
11
|
+
arguments: {
|
|
12
|
+
types: Value<string>[];
|
|
13
|
+
values: Value<any>[];
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export interface ConstructorEncodeValue {
|
|
17
|
+
type: 'constructor-encode';
|
|
18
|
+
arguments: {
|
|
19
|
+
creationCode?: Value<string>;
|
|
20
|
+
types: Value<string>[];
|
|
21
|
+
values: Value<any>[];
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export interface ComputeCreate2Value {
|
|
25
|
+
type: 'compute-create2';
|
|
26
|
+
arguments: {
|
|
27
|
+
deployerAddress: AddressValue;
|
|
28
|
+
salt: BytesValue;
|
|
29
|
+
initCode: BytesValue;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export interface ReadBalanceValue {
|
|
33
|
+
type: 'read-balance';
|
|
34
|
+
arguments: {
|
|
35
|
+
address: AddressValue;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
export interface BasicArithmeticValue {
|
|
39
|
+
type: 'basic-arithmetic';
|
|
40
|
+
arguments: {
|
|
41
|
+
operation: 'add' | 'sub' | 'mul' | 'div' | 'eq' | 'neq' | 'gt' | 'lt' | 'gte' | 'lte';
|
|
42
|
+
values: Value<any>[];
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
export interface CallValue {
|
|
46
|
+
type: 'call';
|
|
47
|
+
arguments: {
|
|
48
|
+
to?: AddressValue;
|
|
49
|
+
signature: Value<string>;
|
|
50
|
+
values: Value<any>[];
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
export interface ContractExistsValue {
|
|
54
|
+
type: 'contract-exists';
|
|
55
|
+
arguments: {
|
|
56
|
+
address: AddressValue;
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
export interface JobCompletedValue {
|
|
60
|
+
type: 'job-completed';
|
|
61
|
+
arguments: {
|
|
62
|
+
job: Value<string>;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
export interface ReadJsonValue {
|
|
66
|
+
type: 'read-json';
|
|
67
|
+
arguments: {
|
|
68
|
+
json: Value<any>;
|
|
69
|
+
path: Value<string>;
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
export type ValueResolver = AbiEncodeValue | AbiPackValue | ConstructorEncodeValue | ComputeCreate2Value | ReadBalanceValue | BasicArithmeticValue | CallValue | ContractExistsValue | JobCompletedValue | ReadJsonValue;
|
|
73
|
+
export type Value<T = string | number | boolean> = T | Reference | ValueResolver;
|
|
74
|
+
export type BytesValue = Value<string>;
|
|
75
|
+
export type AddressValue = Value<string>;
|
|
76
|
+
export type Uint256Value = Value<string | number>;
|
|
77
|
+
export type BooleanValue = Value<boolean>;
|
|
78
|
+
//# sourceMappingURL=values.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../../src/lib/types/values.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../../src/lib/types/values.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare function validateAddress(value: unknown, actionName: string): string;
|
|
2
|
+
export declare function validateHexData(value: unknown, actionName: string, fieldName: string): string;
|
|
3
|
+
export declare function validateBigNumberish(value: unknown, actionName: string, fieldName: string): string | number | bigint;
|
|
4
|
+
export declare function validateRawTransaction(value: unknown, actionName: string): string;
|
|
5
|
+
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/validation.ts"],"names":[],"mappings":"AAQA,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAW1E;AAKD,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAoB7F;AAKD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAqCpH;AAKD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAwBjF"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateAddress = validateAddress;
|
|
4
|
+
exports.validateHexData = validateHexData;
|
|
5
|
+
exports.validateBigNumberish = validateBigNumberish;
|
|
6
|
+
exports.validateRawTransaction = validateRawTransaction;
|
|
7
|
+
function validateAddress(value, actionName) {
|
|
8
|
+
if (typeof value !== 'string') {
|
|
9
|
+
throw new Error(`Invalid 'to' address for action "${actionName}": expected string, got ${typeof value}`);
|
|
10
|
+
}
|
|
11
|
+
if (!/^0x[a-fA-F0-9]{40}$/.test(value)) {
|
|
12
|
+
throw new Error(`Invalid 'to' address format for action "${actionName}": ${value}`);
|
|
13
|
+
}
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
function validateHexData(value, actionName, fieldName) {
|
|
17
|
+
if (value === null || value === undefined) {
|
|
18
|
+
return '0x';
|
|
19
|
+
}
|
|
20
|
+
if (typeof value !== 'string') {
|
|
21
|
+
throw new Error(`Invalid '${fieldName}' for action "${actionName}": expected string, got ${typeof value}`);
|
|
22
|
+
}
|
|
23
|
+
if (!value.startsWith('0x')) {
|
|
24
|
+
throw new Error(`Invalid '${fieldName}' format for action "${actionName}": must start with '0x', got ${value}`);
|
|
25
|
+
}
|
|
26
|
+
if (value.length > 2 && !/^0x[a-fA-F0-9]*$/.test(value)) {
|
|
27
|
+
throw new Error(`Invalid '${fieldName}' format for action "${actionName}": contains non-hex characters: ${value}`);
|
|
28
|
+
}
|
|
29
|
+
return value;
|
|
30
|
+
}
|
|
31
|
+
function validateBigNumberish(value, actionName, fieldName) {
|
|
32
|
+
if (value === null || value === undefined) {
|
|
33
|
+
return 0;
|
|
34
|
+
}
|
|
35
|
+
if (typeof value === 'number') {
|
|
36
|
+
if (!Number.isInteger(value) || value < 0) {
|
|
37
|
+
throw new Error(`Invalid '${fieldName}' for action "${actionName}": must be a non-negative integer, got ${value}`);
|
|
38
|
+
}
|
|
39
|
+
return value;
|
|
40
|
+
}
|
|
41
|
+
if (typeof value === 'string') {
|
|
42
|
+
if (value.startsWith('0x')) {
|
|
43
|
+
if (!/^0x[a-fA-F0-9]+$/.test(value)) {
|
|
44
|
+
throw new Error(`Invalid '${fieldName}' hex format for action "${actionName}": ${value}`);
|
|
45
|
+
}
|
|
46
|
+
return value;
|
|
47
|
+
}
|
|
48
|
+
if (!/^\d+$/.test(value)) {
|
|
49
|
+
throw new Error(`Invalid '${fieldName}' format for action "${actionName}": must be a number or hex string, got ${value}`);
|
|
50
|
+
}
|
|
51
|
+
return value;
|
|
52
|
+
}
|
|
53
|
+
if (typeof value === 'bigint') {
|
|
54
|
+
if (value < 0n) {
|
|
55
|
+
throw new Error(`Invalid '${fieldName}' for action "${actionName}": must be non-negative, got ${value}`);
|
|
56
|
+
}
|
|
57
|
+
return value;
|
|
58
|
+
}
|
|
59
|
+
throw new Error(`Invalid '${fieldName}' type for action "${actionName}": expected number, string, or bigint, got ${typeof value}`);
|
|
60
|
+
}
|
|
61
|
+
function validateRawTransaction(value, actionName) {
|
|
62
|
+
if (typeof value !== 'string') {
|
|
63
|
+
throw new Error(`Invalid raw transaction for action "${actionName}": expected string, got ${typeof value}`);
|
|
64
|
+
}
|
|
65
|
+
const trimmed = value.trim();
|
|
66
|
+
const withoutPrefix = trimmed.startsWith('0x') ? trimmed.slice(2) : trimmed;
|
|
67
|
+
if (withoutPrefix.length === 0) {
|
|
68
|
+
return '0x';
|
|
69
|
+
}
|
|
70
|
+
if (!/^[a-fA-F0-9]+$/.test(withoutPrefix)) {
|
|
71
|
+
const idx = withoutPrefix.search(/[^a-fA-F0-9]/);
|
|
72
|
+
const marker = idx >= 0 ? ` at index ${idx} ('${withoutPrefix[idx]}')` : '';
|
|
73
|
+
throw new Error(`Invalid raw transaction format for action "${actionName}": contains non-hex characters${marker}: ${value}`);
|
|
74
|
+
}
|
|
75
|
+
return '0x' + withoutPrefix;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/lib/utils/validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ProjectLoader } from '../core/loader';
|
|
2
|
+
export interface MissingContractReference {
|
|
3
|
+
reference: string;
|
|
4
|
+
location: string;
|
|
5
|
+
}
|
|
6
|
+
export interface UsedContractReference {
|
|
7
|
+
reference: string;
|
|
8
|
+
location: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function extractUsedContractReferences(loader: ProjectLoader): Promise<UsedContractReference[]>;
|
|
11
|
+
export declare function validateContractReferences(loader: ProjectLoader): Promise<MissingContractReference[]>;
|
|
12
|
+
//# sourceMappingURL=contract-references.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract-references.d.ts","sourceRoot":"","sources":["../../../src/lib/validation/contract-references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAG9C,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAKD,wBAAsB,6BAA6B,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAwB3G;AAKD,wBAAsB,0BAA0B,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAwB3G"}
|