gate-evm-tools 1.0.28 → 1.0.31
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/README.md +16 -1
- package/bin/cli.js +3 -0
- package/bin/delivery.cjs +51 -0
- package/bin/manifest-bootstrap.js +4 -15
- package/bin/workflow.cjs +1 -1
- package/dist/commands/plan/file-store.d.ts.map +1 -0
- package/dist/commands/plan/generate-deployment.d.ts +48 -0
- package/dist/commands/plan/generate-deployment.d.ts.map +1 -0
- package/dist/commands/plan/generate-deployment.js +211 -0
- package/dist/commands/plan/generate-deployment.js.map +1 -0
- package/dist/commands/plan/helpers.d.ts.map +1 -0
- package/dist/commands/plan/index.d.ts +3 -0
- package/dist/commands/plan/index.d.ts.map +1 -0
- package/dist/commands/plan/index.js +88 -0
- package/dist/commands/plan/index.js.map +1 -0
- package/dist/commands/sync.js +1 -1
- package/dist/commands/sync.js.map +1 -1
- package/dist/core/BytecodeChecker.d.ts.map +1 -1
- package/dist/core/BytecodeChecker.js +27 -8
- package/dist/core/BytecodeChecker.js.map +1 -1
- package/dist/core/preparation/artifacts.d.ts +2 -0
- package/dist/core/preparation/artifacts.d.ts.map +1 -1
- package/dist/core/preparation/artifacts.js +9 -3
- package/dist/core/preparation/artifacts.js.map +1 -1
- package/dist/core/preparation/evm.d.ts +38 -2
- package/dist/core/preparation/evm.d.ts.map +1 -1
- package/dist/core/preparation/evm.js +104 -32
- package/dist/core/preparation/evm.js.map +1 -1
- package/dist/core/preparation/evmManifestSync.d.ts +63 -0
- package/dist/core/preparation/evmManifestSync.d.ts.map +1 -0
- package/dist/core/preparation/evmManifestSync.js +146 -0
- package/dist/core/preparation/evmManifestSync.js.map +1 -0
- package/dist/core/preparation/index.d.ts +40 -2
- package/dist/core/preparation/index.d.ts.map +1 -1
- package/dist/core/preparation/index.js +3 -3
- package/dist/core/preparation/index.js.map +1 -1
- package/dist/core/preparation/manifest.d.ts +15 -3
- package/dist/core/preparation/manifest.d.ts.map +1 -1
- package/dist/core/preparation/manifest.js +21 -26
- package/dist/core/preparation/manifest.js.map +1 -1
- package/dist/core/preparation/normalize.d.ts.map +1 -1
- package/dist/core/preparation/normalize.js +14 -9
- package/dist/core/preparation/normalize.js.map +1 -1
- package/dist/core/preparation/types.d.ts +7 -2
- package/dist/core/preparation/types.d.ts.map +1 -1
- package/dist/custody/hardhat-runtime.d.ts.map +1 -1
- package/dist/custody/hardhat-runtime.js +2 -0
- package/dist/custody/hardhat-runtime.js.map +1 -1
- package/dist/custody/hardhat.d.ts +1 -0
- package/dist/custody/hardhat.d.ts.map +1 -1
- package/dist/custody/hardhat.js +1 -0
- package/dist/custody/hardhat.js.map +1 -1
- package/dist/custody/index.d.ts +1 -0
- package/dist/custody/index.d.ts.map +1 -1
- package/dist/custody/index.js +1 -0
- package/dist/custody/index.js.map +1 -1
- package/dist/custody/provider-wait.d.ts +13 -0
- package/dist/custody/provider-wait.d.ts.map +1 -0
- package/dist/custody/provider-wait.js +78 -0
- package/dist/custody/provider-wait.js.map +1 -0
- package/dist/delivery/policy.d.ts +6 -0
- package/dist/delivery/policy.d.ts.map +1 -0
- package/dist/delivery/policy.js +24 -0
- package/dist/delivery/policy.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/sync/index.d.ts +15 -0
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +8 -0
- package/dist/sync/index.js.map +1 -1
- package/dist/workflow/index.d.ts +6 -1
- package/dist/workflow/index.d.ts.map +1 -1
- package/dist/workflow/index.js +4 -0
- package/dist/workflow/index.js.map +1 -1
- package/dist-cjs/core/BytecodeChecker.js +526 -0
- package/dist-cjs/core/BytecodeChecker.js.map +1 -0
- package/dist-cjs/core/legacyProxyArtifact.js +42 -0
- package/dist-cjs/core/legacyProxyArtifact.js.map +1 -0
- package/dist-cjs/core/preparation/artifacts.js +11 -4
- package/dist-cjs/core/preparation/artifacts.js.map +1 -1
- package/dist-cjs/core/preparation/evm.js +105 -32
- package/dist-cjs/core/preparation/evm.js.map +1 -1
- package/dist-cjs/core/preparation/evmManifestSync.js +155 -0
- package/dist-cjs/core/preparation/evmManifestSync.js.map +1 -0
- package/dist-cjs/core/preparation/index.js +3 -3
- package/dist-cjs/core/preparation/index.js.map +1 -1
- package/dist-cjs/core/preparation/manifest.js +23 -28
- package/dist-cjs/core/preparation/manifest.js.map +1 -1
- package/dist-cjs/core/preparation/normalize.js +14 -9
- package/dist-cjs/core/preparation/normalize.js.map +1 -1
- package/dist-cjs/custody/hardhat-runtime.js +2 -0
- package/dist-cjs/custody/hardhat-runtime.js.map +1 -1
- package/dist-cjs/custody/hardhat.js +3 -1
- package/dist-cjs/custody/hardhat.js.map +1 -1
- package/dist-cjs/custody/index.js +3 -1
- package/dist-cjs/custody/index.js.map +1 -1
- package/dist-cjs/custody/provider-wait.js +81 -0
- package/dist-cjs/custody/provider-wait.js.map +1 -0
- package/dist-cjs/delivery/policy.js +29 -0
- package/dist-cjs/delivery/policy.js.map +1 -0
- package/dist-cjs/sync/index.js +8 -0
- package/dist-cjs/sync/index.js.map +1 -1
- package/dist-cjs/workflow/index.js +12 -1
- package/dist-cjs/workflow/index.js.map +1 -1
- package/dist-runtime/config/openzeppelin.d.ts +2 -1
- package/dist-runtime/config/openzeppelin.js +2 -19
- package/dist-runtime/config/openzeppelin.js.map +1 -1
- package/dist-runtime/delivery/abi.d.ts +14 -0
- package/dist-runtime/delivery/abi.js +161 -0
- package/dist-runtime/delivery/abi.js.map +1 -0
- package/dist-runtime/delivery/aggregate-bootstrap.d.ts +12 -0
- package/dist-runtime/delivery/aggregate-bootstrap.js +40 -0
- package/dist-runtime/delivery/aggregate-bootstrap.js.map +1 -0
- package/dist-runtime/delivery/aggregate-channel.d.ts +28 -0
- package/dist-runtime/delivery/aggregate-channel.js +155 -0
- package/dist-runtime/delivery/aggregate-channel.js.map +1 -0
- package/dist-runtime/delivery/aggregate-inputs.d.ts +168 -0
- package/dist-runtime/delivery/aggregate-inputs.js +57 -0
- package/dist-runtime/delivery/aggregate-inputs.js.map +1 -0
- package/dist-runtime/delivery/aggregate-source.d.ts +25 -0
- package/dist-runtime/delivery/aggregate-source.js +79 -0
- package/dist-runtime/delivery/aggregate-source.js.map +1 -0
- package/dist-runtime/delivery/aggregate-worker.d.ts +1 -0
- package/dist-runtime/delivery/aggregate-worker.js +191 -0
- package/dist-runtime/delivery/aggregate-worker.js.map +1 -0
- package/dist-runtime/delivery/aggregate.d.ts +51 -0
- package/dist-runtime/delivery/aggregate.js +190 -0
- package/dist-runtime/delivery/aggregate.js.map +1 -0
- package/dist-runtime/delivery/bindings.d.ts +21 -0
- package/dist-runtime/delivery/bindings.js +53 -0
- package/dist-runtime/delivery/bindings.js.map +1 -0
- package/dist-runtime/delivery/check-code.d.ts +19 -0
- package/dist-runtime/delivery/check-code.js +63 -0
- package/dist-runtime/delivery/check-code.js.map +1 -0
- package/dist-runtime/delivery/closure-format.d.ts +77 -0
- package/dist-runtime/delivery/closure-format.js +225 -0
- package/dist-runtime/delivery/closure-format.js.map +1 -0
- package/dist-runtime/delivery/codec-pin.d.ts +2 -0
- package/dist-runtime/delivery/codec-pin.js +7 -0
- package/dist-runtime/delivery/codec-pin.js.map +1 -0
- package/dist-runtime/delivery/codec.d.ts +19 -0
- package/dist-runtime/delivery/codec.js +73 -0
- package/dist-runtime/delivery/codec.js.map +1 -0
- package/dist-runtime/delivery/compiler-dependency-pins.d.ts +7 -0
- package/dist-runtime/delivery/compiler-dependency-pins.js +1689 -0
- package/dist-runtime/delivery/compiler-dependency-pins.js.map +1 -0
- package/dist-runtime/delivery/compiler-files.d.ts +40 -0
- package/dist-runtime/delivery/compiler-files.js +220 -0
- package/dist-runtime/delivery/compiler-files.js.map +1 -0
- package/dist-runtime/delivery/compiler-io.d.ts +2 -0
- package/dist-runtime/delivery/compiler-io.js +13 -0
- package/dist-runtime/delivery/compiler-io.js.map +1 -0
- package/dist-runtime/delivery/compiler-pins.d.ts +10 -0
- package/dist-runtime/delivery/compiler-pins.js +147 -0
- package/dist-runtime/delivery/compiler-pins.js.map +1 -0
- package/dist-runtime/delivery/compiler.d.ts +188 -0
- package/dist-runtime/delivery/compiler.js +850 -0
- package/dist-runtime/delivery/compiler.js.map +1 -0
- package/dist-runtime/delivery/config.d.ts +48 -0
- package/dist-runtime/delivery/config.js +99 -0
- package/dist-runtime/delivery/config.js.map +1 -0
- package/dist-runtime/delivery/configuration-definition.d.ts +22 -0
- package/dist-runtime/delivery/configuration-definition.js +316 -0
- package/dist-runtime/delivery/configuration-definition.js.map +1 -0
- package/dist-runtime/delivery/configuration-hre.d.ts +17 -0
- package/dist-runtime/delivery/configuration-hre.js +198 -0
- package/dist-runtime/delivery/configuration-hre.js.map +1 -0
- package/dist-runtime/delivery/configuration-runtime.d.ts +36 -0
- package/dist-runtime/delivery/configuration-runtime.js +248 -0
- package/dist-runtime/delivery/configuration-runtime.js.map +1 -0
- package/dist-runtime/delivery/configuration.d.ts +35 -0
- package/dist-runtime/delivery/configuration.js +83 -0
- package/dist-runtime/delivery/configuration.js.map +1 -0
- package/dist-runtime/delivery/create2.d.ts +3 -0
- package/dist-runtime/delivery/create2.js +48 -0
- package/dist-runtime/delivery/create2.js.map +1 -0
- package/dist-runtime/delivery/custom-closure.d.ts +27 -0
- package/dist-runtime/delivery/custom-closure.js +818 -0
- package/dist-runtime/delivery/custom-closure.js.map +1 -0
- package/dist-runtime/delivery/custom-format.d.ts +35 -0
- package/dist-runtime/delivery/custom-format.js +383 -0
- package/dist-runtime/delivery/custom-format.js.map +1 -0
- package/dist-runtime/delivery/custom.d.ts +32 -0
- package/dist-runtime/delivery/custom.js +158 -0
- package/dist-runtime/delivery/custom.js.map +1 -0
- package/dist-runtime/delivery/data.d.ts +7 -0
- package/dist-runtime/delivery/data.js +86 -0
- package/dist-runtime/delivery/data.js.map +1 -0
- package/dist-runtime/delivery/development.d.ts +91 -0
- package/dist-runtime/delivery/development.js +395 -0
- package/dist-runtime/delivery/development.js.map +1 -0
- package/dist-runtime/delivery/engine.d.ts +9 -0
- package/dist-runtime/delivery/engine.js +23 -0
- package/dist-runtime/delivery/engine.js.map +1 -0
- package/dist-runtime/delivery/eoa-observation.d.ts +43 -0
- package/dist-runtime/delivery/eoa-observation.js +145 -0
- package/dist-runtime/delivery/eoa-observation.js.map +1 -0
- package/dist-runtime/delivery/eoa-signed.d.ts +2 -0
- package/dist-runtime/delivery/eoa-signed.js +74 -0
- package/dist-runtime/delivery/eoa-signed.js.map +1 -0
- package/dist-runtime/delivery/eoa.d.ts +81 -0
- package/dist-runtime/delivery/eoa.js +274 -0
- package/dist-runtime/delivery/eoa.js.map +1 -0
- package/dist-runtime/delivery/execution-db.d.ts +20 -0
- package/dist-runtime/delivery/execution-db.js +153 -0
- package/dist-runtime/delivery/execution-db.js.map +1 -0
- package/dist-runtime/delivery/execution-files.d.ts +9 -0
- package/dist-runtime/delivery/execution-files.js +138 -0
- package/dist-runtime/delivery/execution-files.js.map +1 -0
- package/dist-runtime/delivery/execution-model.d.ts +56 -0
- package/dist-runtime/delivery/execution-model.js +66 -0
- package/dist-runtime/delivery/execution-model.js.map +1 -0
- package/dist-runtime/delivery/execution-store.d.ts +48 -0
- package/dist-runtime/delivery/execution-store.js +361 -0
- package/dist-runtime/delivery/execution-store.js.map +1 -0
- package/dist-runtime/delivery/existing-code.d.ts +37 -0
- package/dist-runtime/delivery/existing-code.js +75 -0
- package/dist-runtime/delivery/existing-code.js.map +1 -0
- package/dist-runtime/delivery/export.d.ts +51 -0
- package/dist-runtime/delivery/export.js +69 -0
- package/dist-runtime/delivery/export.js.map +1 -0
- package/dist-runtime/delivery/forkAudit.d.ts +119 -0
- package/dist-runtime/delivery/forkAudit.js +473 -0
- package/dist-runtime/delivery/forkAudit.js.map +1 -0
- package/dist-runtime/delivery/hardhat.d.ts +3 -0
- package/dist-runtime/delivery/hardhat.js +45 -0
- package/dist-runtime/delivery/hardhat.js.map +1 -0
- package/dist-runtime/delivery/history-registration.d.ts +2 -0
- package/dist-runtime/delivery/history-registration.js +17 -0
- package/dist-runtime/delivery/history-registration.js.map +1 -0
- package/dist-runtime/delivery/identities.d.ts +22 -0
- package/dist-runtime/delivery/identities.js +97 -0
- package/dist-runtime/delivery/identities.js.map +1 -0
- package/dist-runtime/delivery/input-files.d.ts +5 -0
- package/dist-runtime/delivery/input-files.js +70 -0
- package/dist-runtime/delivery/input-files.js.map +1 -0
- package/dist-runtime/delivery/inputs.d.ts +62 -0
- package/dist-runtime/delivery/inputs.js +187 -0
- package/dist-runtime/delivery/inputs.js.map +1 -0
- package/dist-runtime/delivery/journal.d.ts +35 -0
- package/dist-runtime/delivery/journal.js +270 -0
- package/dist-runtime/delivery/journal.js.map +1 -0
- package/dist-runtime/delivery/manifest.d.ts +14 -0
- package/dist-runtime/delivery/manifest.js +68 -0
- package/dist-runtime/delivery/manifest.js.map +1 -0
- package/dist-runtime/delivery/materialization.d.ts +20 -0
- package/dist-runtime/delivery/materialization.js +138 -0
- package/dist-runtime/delivery/materialization.js.map +1 -0
- package/dist-runtime/delivery/observations.d.ts +31 -0
- package/dist-runtime/delivery/observations.js +38 -0
- package/dist-runtime/delivery/observations.js.map +1 -0
- package/dist-runtime/delivery/parameters.d.ts +53 -0
- package/dist-runtime/delivery/parameters.js +257 -0
- package/dist-runtime/delivery/parameters.js.map +1 -0
- package/dist-runtime/delivery/pending.d.ts +70 -0
- package/dist-runtime/delivery/pending.js +99 -0
- package/dist-runtime/delivery/pending.js.map +1 -0
- package/dist-runtime/delivery/plan.d.ts +50 -0
- package/dist-runtime/delivery/plan.js +209 -0
- package/dist-runtime/delivery/plan.js.map +1 -0
- package/dist-runtime/delivery/planning.d.ts +81 -0
- package/dist-runtime/delivery/planning.js +302 -0
- package/dist-runtime/delivery/planning.js.map +1 -0
- package/dist-runtime/delivery/policy.d.ts +4 -0
- package/dist-runtime/delivery/policy.js +9 -0
- package/dist-runtime/delivery/policy.js.map +1 -0
- package/dist-runtime/delivery/preparation.d.ts +6 -0
- package/dist-runtime/delivery/preparation.js +158 -0
- package/dist-runtime/delivery/preparation.js.map +1 -0
- package/dist-runtime/delivery/production-environment.d.ts +2 -0
- package/dist-runtime/delivery/production-environment.js +12 -0
- package/dist-runtime/delivery/production-environment.js.map +1 -0
- package/dist-runtime/delivery/production-finalization.d.ts +86 -0
- package/dist-runtime/delivery/production-finalization.js +278 -0
- package/dist-runtime/delivery/production-finalization.js.map +1 -0
- package/dist-runtime/delivery/production.d.ts +461 -0
- package/dist-runtime/delivery/production.js +396 -0
- package/dist-runtime/delivery/production.js.map +1 -0
- package/dist-runtime/delivery/project-files.d.ts +8 -0
- package/dist-runtime/delivery/project-files.js +82 -0
- package/dist-runtime/delivery/project-files.js.map +1 -0
- package/dist-runtime/delivery/project.d.ts +15 -0
- package/dist-runtime/delivery/project.js +157 -0
- package/dist-runtime/delivery/project.js.map +1 -0
- package/dist-runtime/delivery/protocol.d.ts +49 -0
- package/dist-runtime/delivery/protocol.js +112 -0
- package/dist-runtime/delivery/protocol.js.map +1 -0
- package/dist-runtime/delivery/references.d.ts +19 -0
- package/dist-runtime/delivery/references.js +84 -0
- package/dist-runtime/delivery/references.js.map +1 -0
- package/dist-runtime/delivery/release-graph.d.ts +93 -0
- package/dist-runtime/delivery/release-graph.js +106 -0
- package/dist-runtime/delivery/release-graph.js.map +1 -0
- package/dist-runtime/delivery/release-history-capture.d.ts +7 -0
- package/dist-runtime/delivery/release-history-capture.js +76 -0
- package/dist-runtime/delivery/release-history-capture.js.map +1 -0
- package/dist-runtime/delivery/release-history.d.ts +43 -0
- package/dist-runtime/delivery/release-history.js +246 -0
- package/dist-runtime/delivery/release-history.js.map +1 -0
- package/dist-runtime/delivery/release.d.ts +172 -0
- package/dist-runtime/delivery/release.js +209 -0
- package/dist-runtime/delivery/release.js.map +1 -0
- package/dist-runtime/delivery/safe-manifest.d.ts +9 -0
- package/dist-runtime/delivery/safe-manifest.js +13 -0
- package/dist-runtime/delivery/safe-manifest.js.map +1 -0
- package/dist-runtime/delivery/safe-observation.d.ts +30 -0
- package/dist-runtime/delivery/safe-observation.js +487 -0
- package/dist-runtime/delivery/safe-observation.js.map +1 -0
- package/dist-runtime/delivery/safe-prepare.d.ts +13 -0
- package/dist-runtime/delivery/safe-prepare.js +81 -0
- package/dist-runtime/delivery/safe-prepare.js.map +1 -0
- package/dist-runtime/delivery/safe.d.ts +91 -0
- package/dist-runtime/delivery/safe.js +243 -0
- package/dist-runtime/delivery/safe.js.map +1 -0
- package/dist-runtime/delivery/same-fork-baseline.d.ts +8 -0
- package/dist-runtime/delivery/same-fork-baseline.js +20 -0
- package/dist-runtime/delivery/same-fork-baseline.js.map +1 -0
- package/dist-runtime/delivery/setup.d.ts +31 -0
- package/dist-runtime/delivery/setup.js +215 -0
- package/dist-runtime/delivery/setup.js.map +1 -0
- package/dist-runtime/delivery/source.d.ts +41 -0
- package/dist-runtime/delivery/source.js +137 -0
- package/dist-runtime/delivery/source.js.map +1 -0
- package/dist-runtime/delivery/target-fields.d.ts +2 -0
- package/dist-runtime/delivery/target-fields.js +11 -0
- package/dist-runtime/delivery/target-fields.js.map +1 -0
- package/dist-runtime/delivery/validation.d.ts +9 -0
- package/dist-runtime/delivery/validation.js +150 -0
- package/dist-runtime/delivery/validation.js.map +1 -0
- package/dist-runtime/delivery/verification.d.ts +16 -0
- package/dist-runtime/delivery/verification.js +65 -0
- package/dist-runtime/delivery/verification.js.map +1 -0
- package/dist-runtime/migrate.js +1 -0
- package/dist-runtime/migrate.js.map +1 -1
- package/dist-runtime/miner/binary.d.ts +2 -0
- package/dist-runtime/miner/binary.js +54 -0
- package/dist-runtime/miner/binary.js.map +1 -0
- package/dist-runtime/miner/cli.d.ts +1 -0
- package/dist-runtime/miner/cli.js +131 -0
- package/dist-runtime/miner/cli.js.map +1 -0
- package/dist-runtime/miner/index.d.ts +5 -0
- package/dist-runtime/miner/index.js +13 -0
- package/dist-runtime/miner/index.js.map +1 -0
- package/dist-runtime/miner/request.d.ts +7 -0
- package/dist-runtime/miner/request.js +73 -0
- package/dist-runtime/miner/request.js.map +1 -0
- package/dist-runtime/miner/runner.d.ts +2 -0
- package/dist-runtime/miner/runner.js +131 -0
- package/dist-runtime/miner/runner.js.map +1 -0
- package/dist-runtime/miner/types.d.ts +89 -0
- package/dist-runtime/miner/types.js +3 -0
- package/dist-runtime/miner/types.js.map +1 -0
- package/dist-runtime/miner/verify.d.ts +2 -0
- package/dist-runtime/miner/verify.js +75 -0
- package/dist-runtime/miner/verify.js.map +1 -0
- package/dist-runtime/runtime-identity.json +2 -2
- package/dist-runtime/vendor/plan-codec/index.cjs +820 -0
- package/dist-runtime/vendor/plan-codec/index.d.cts +32 -0
- package/dist-runtime/vendor/plan-codec/provenance.json +24 -0
- package/dist-runtime/workflow/engine.d.ts +14 -0
- package/dist-runtime/workflow/engine.js +160 -0
- package/dist-runtime/workflow/engine.js.map +1 -0
- package/dist-runtime/workflow/lib/authority.d.ts +6 -3
- package/dist-runtime/workflow/lib/authority.js.map +1 -1
- package/dist-runtime/workflow/lib/calls.d.ts +1 -1
- package/dist-runtime/workflow/lib/calls.js +43 -34
- package/dist-runtime/workflow/lib/calls.js.map +1 -1
- package/dist-runtime/workflow/lib/canonicalData.d.ts +8 -0
- package/dist-runtime/workflow/lib/canonicalData.js +68 -0
- package/dist-runtime/workflow/lib/canonicalData.js.map +1 -0
- package/dist-runtime/workflow/lib/config.d.ts +3 -1
- package/dist-runtime/workflow/lib/config.js.map +1 -1
- package/dist-runtime/workflow/lib/context.d.ts +76 -0
- package/dist-runtime/workflow/lib/context.js +3 -0
- package/dist-runtime/workflow/lib/context.js.map +1 -0
- package/dist-runtime/workflow/lib/create2.d.ts +1 -1
- package/dist-runtime/workflow/lib/create2.js +9 -12
- package/dist-runtime/workflow/lib/create2.js.map +1 -1
- package/dist-runtime/workflow/lib/deployments.d.ts +5 -5
- package/dist-runtime/workflow/lib/deployments.js +5 -13
- package/dist-runtime/workflow/lib/deployments.js.map +1 -1
- package/dist-runtime/workflow/lib/evidencePorts.d.ts +55 -0
- package/dist-runtime/workflow/lib/evidencePorts.js +3 -0
- package/dist-runtime/workflow/lib/evidencePorts.js.map +1 -0
- package/dist-runtime/workflow/lib/executionPlan.d.ts +4 -42
- package/dist-runtime/workflow/lib/executionPlan.js +15 -210
- package/dist-runtime/workflow/lib/executionPlan.js.map +1 -1
- package/dist-runtime/workflow/lib/gateTool.d.ts +6 -2
- package/dist-runtime/workflow/lib/gateTool.js +20 -10
- package/dist-runtime/workflow/lib/gateTool.js.map +1 -1
- package/dist-runtime/workflow/lib/gateToolSync.d.ts +1 -1
- package/dist-runtime/workflow/lib/gateToolSync.js +3 -2
- package/dist-runtime/workflow/lib/gateToolSync.js.map +1 -1
- package/dist-runtime/workflow/lib/operationNames.d.ts +3 -0
- package/dist-runtime/workflow/lib/operationNames.js +34 -0
- package/dist-runtime/workflow/lib/operationNames.js.map +1 -0
- package/dist-runtime/workflow/lib/parameters.d.ts +1 -1
- package/dist-runtime/workflow/lib/parameters.js +6 -22
- package/dist-runtime/workflow/lib/parameters.js.map +1 -1
- package/dist-runtime/workflow/lib/pendingDeploymentReuse.js +18 -52
- package/dist-runtime/workflow/lib/pendingDeploymentReuse.js.map +1 -1
- package/dist-runtime/workflow/lib/pendingUupsBinding.d.ts +42 -0
- package/dist-runtime/workflow/lib/pendingUupsBinding.js +39 -0
- package/dist-runtime/workflow/lib/pendingUupsBinding.js.map +1 -0
- package/dist-runtime/workflow/lib/plan.d.ts +55 -0
- package/dist-runtime/workflow/lib/plan.js +324 -0
- package/dist-runtime/workflow/lib/plan.js.map +1 -0
- package/dist-runtime/workflow/lib/planCli.d.ts +14 -0
- package/dist-runtime/workflow/lib/planCli.js +279 -0
- package/dist-runtime/workflow/lib/planCli.js.map +1 -0
- package/dist-runtime/workflow/lib/preparationEvidence.d.ts +4 -0
- package/dist-runtime/workflow/lib/preparationEvidence.js +19 -0
- package/dist-runtime/workflow/lib/preparationEvidence.js.map +1 -0
- package/dist-runtime/workflow/lib/proxy.d.ts +3 -2
- package/dist-runtime/workflow/lib/proxy.js +3 -4
- package/dist-runtime/workflow/lib/proxy.js.map +1 -1
- package/dist-runtime/workflow/lib/runtime.d.ts +6 -0
- package/dist-runtime/workflow/lib/runtime.js +48 -0
- package/dist-runtime/workflow/lib/runtime.js.map +1 -0
- package/dist-runtime/workflow/lib/signer.d.ts +3 -2
- package/dist-runtime/workflow/lib/signer.js +18 -18
- package/dist-runtime/workflow/lib/signer.js.map +1 -1
- package/dist-runtime/workflow/lib/simulation.d.ts +13 -6
- package/dist-runtime/workflow/lib/simulation.js +39 -31
- package/dist-runtime/workflow/lib/simulation.js.map +1 -1
- package/dist-runtime/workflow/lib/state.js +3 -3
- package/dist-runtime/workflow/lib/state.js.map +1 -1
- package/dist-runtime/workflow/lib/staticValidation.d.ts +28 -0
- package/dist-runtime/workflow/lib/staticValidation.js +54 -10
- package/dist-runtime/workflow/lib/staticValidation.js.map +1 -1
- package/dist-runtime/workflow/lib/transactionPlanner.d.ts +62 -0
- package/dist-runtime/workflow/lib/transactionPlanner.js +258 -0
- package/dist-runtime/workflow/lib/transactionPlanner.js.map +1 -0
- package/dist-runtime/workflow/lib/typedValue.d.ts +3 -0
- package/dist-runtime/workflow/lib/typedValue.js +76 -0
- package/dist-runtime/workflow/lib/typedValue.js.map +1 -0
- package/dist-runtime/workflow/lib/validation.d.ts +23 -0
- package/dist-runtime/workflow/lib/validation.js +15 -0
- package/dist-runtime/workflow/lib/validation.js.map +1 -0
- package/dist-runtime/workflow/planAdd.d.ts +1 -0
- package/dist-runtime/workflow/planAdd.js +11 -0
- package/dist-runtime/workflow/planAdd.js.map +1 -0
- package/dist-runtime/workflow/planRead.d.ts +1 -0
- package/dist-runtime/workflow/planRead.js +11 -0
- package/dist-runtime/workflow/planRead.js.map +1 -0
- package/dist-runtime/workflow/planStatus.d.ts +1 -0
- package/dist-runtime/workflow/planStatus.js +11 -0
- package/dist-runtime/workflow/planStatus.js.map +1 -0
- package/dist-runtime/workflow/planWrite.d.ts +1 -0
- package/dist-runtime/workflow/planWrite.js +11 -0
- package/dist-runtime/workflow/planWrite.js.map +1 -0
- package/dist-runtime/workflow/run.d.ts +1 -40
- package/dist-runtime/workflow/run.js +68 -136
- package/dist-runtime/workflow/run.js.map +1 -1
- package/dist-runtime/workflow/staticValidate.js +8 -3
- package/dist-runtime/workflow/staticValidate.js.map +1 -1
- package/dist-runtime/workflow/steps/call.d.ts +1 -1
- package/dist-runtime/workflow/steps/check.d.ts +1 -1
- package/dist-runtime/workflow/steps/custom.d.ts +1 -1
- package/dist-runtime/workflow/steps/deploy.d.ts +1 -1
- package/dist-runtime/workflow/steps/deploy.js +57 -55
- package/dist-runtime/workflow/steps/deploy.js.map +1 -1
- package/dist-runtime/workflow/steps/upgrade.d.ts +1 -1
- package/dist-runtime/workflow/steps/upgrade.js +62 -41
- package/dist-runtime/workflow/steps/upgrade.js.map +1 -1
- package/dist-runtime/workflow/steps/view.d.ts +1 -1
- package/docs/compiler-qualification.md +32 -0
- package/docs/configuration-runtime-observation.md +29 -0
- package/docs/create2-miner.md +100 -0
- package/docs/delivery-aggregate.md +27 -0
- package/docs/delivery-custom-input-closure.md +51 -0
- package/docs/delivery-development.md +32 -0
- package/docs/delivery-eoa.md +46 -0
- package/docs/delivery-evm-manifest.md +20 -0
- package/docs/delivery-execution-store.md +33 -0
- package/docs/delivery-inputs.md +46 -0
- package/docs/delivery-parameters.md +65 -0
- package/docs/delivery-planning.md +140 -0
- package/docs/delivery-release.md +65 -0
- package/docs/delivery-safe.md +72 -0
- package/docs/delivery-setup.md +146 -0
- package/docs/delivery-source.md +67 -0
- package/docs/superpowers/plans/2026-09-24-scheme-aware-static-validation.md +193 -0
- package/docs/superpowers/plans/2026-10-28-create2-miner.md +82 -0
- package/package.json +133 -9
- package/resources/create2/LICENSE +21 -0
- package/resources/create2/README.md +9 -0
- package/resources/create2/darwin-arm64/smartflow_miner +0 -0
- package/resources/create2/darwin-x64/smartflow_miner +0 -0
- package/resources/create2/manifest.json +27 -0
- package/runtime/config/openzeppelin.ts +3 -21
- package/runtime/delivery/abi.ts +225 -0
- package/runtime/delivery/aggregate-bootstrap.ts +29 -0
- package/runtime/delivery/aggregate-channel.ts +85 -0
- package/runtime/delivery/aggregate-inputs.ts +39 -0
- package/runtime/delivery/aggregate-source.ts +53 -0
- package/runtime/delivery/aggregate-worker.ts +133 -0
- package/runtime/delivery/aggregate.ts +139 -0
- package/runtime/delivery/bindings.ts +37 -0
- package/runtime/delivery/check-code.ts +38 -0
- package/runtime/delivery/closure-format.ts +350 -0
- package/runtime/delivery/codec-pin.ts +3 -0
- package/runtime/delivery/codec.ts +50 -0
- package/runtime/delivery/compiler-dependency-pins.ts +1685 -0
- package/runtime/delivery/compiler-files.ts +179 -0
- package/runtime/delivery/compiler-io.ts +10 -0
- package/runtime/delivery/compiler-pins.ts +143 -0
- package/runtime/delivery/compiler.ts +700 -0
- package/runtime/delivery/config.ts +93 -0
- package/runtime/delivery/configuration-definition.ts +133 -0
- package/runtime/delivery/configuration-hre.ts +130 -0
- package/runtime/delivery/configuration-runtime.ts +163 -0
- package/runtime/delivery/configuration.ts +64 -0
- package/runtime/delivery/create2.ts +57 -0
- package/runtime/delivery/custom-closure.ts +993 -0
- package/runtime/delivery/custom-format.ts +464 -0
- package/runtime/delivery/custom.ts +219 -0
- package/runtime/delivery/data.ts +94 -0
- package/runtime/delivery/development.ts +262 -0
- package/runtime/delivery/engine.ts +29 -0
- package/runtime/delivery/eoa-observation.ts +106 -0
- package/runtime/delivery/eoa-signed.ts +55 -0
- package/runtime/delivery/eoa.ts +288 -0
- package/runtime/delivery/execution-db.ts +131 -0
- package/runtime/delivery/execution-files.ts +135 -0
- package/runtime/delivery/execution-model.ts +102 -0
- package/runtime/delivery/execution-store.ts +411 -0
- package/runtime/delivery/existing-code.ts +44 -0
- package/runtime/delivery/export.ts +99 -0
- package/runtime/delivery/forkAudit.ts +620 -0
- package/runtime/delivery/hardhat.ts +38 -0
- package/runtime/delivery/history-registration.ts +10 -0
- package/runtime/delivery/identities.ts +132 -0
- package/runtime/delivery/input-files.ts +46 -0
- package/runtime/delivery/inputs.ts +197 -0
- package/runtime/delivery/journal.ts +201 -0
- package/runtime/delivery/manifest.ts +54 -0
- package/runtime/delivery/materialization.ts +53 -0
- package/runtime/delivery/observations.ts +60 -0
- package/runtime/delivery/parameters.ts +349 -0
- package/runtime/delivery/pending.ts +98 -0
- package/runtime/delivery/plan.ts +337 -0
- package/runtime/delivery/planning.ts +397 -0
- package/runtime/delivery/policy.ts +9 -0
- package/runtime/delivery/preparation.ts +224 -0
- package/runtime/delivery/production-environment.ts +6 -0
- package/runtime/delivery/production-finalization.ts +172 -0
- package/runtime/delivery/production.ts +375 -0
- package/runtime/delivery/project-files.ts +58 -0
- package/runtime/delivery/project.ts +117 -0
- package/runtime/delivery/protocol.ts +94 -0
- package/runtime/delivery/references.ts +106 -0
- package/runtime/delivery/release-graph.ts +49 -0
- package/runtime/delivery/release-history-capture.ts +32 -0
- package/runtime/delivery/release-history.ts +120 -0
- package/runtime/delivery/release.ts +128 -0
- package/runtime/delivery/safe-manifest.ts +11 -0
- package/runtime/delivery/safe-observation.ts +626 -0
- package/runtime/delivery/safe-prepare.ts +101 -0
- package/runtime/delivery/safe.ts +344 -0
- package/runtime/delivery/same-fork-baseline.ts +16 -0
- package/runtime/delivery/setup.ts +172 -0
- package/runtime/delivery/source.ts +130 -0
- package/runtime/delivery/target-fields.ts +7 -0
- package/runtime/delivery/validation.ts +247 -0
- package/runtime/delivery/verification.ts +47 -0
- package/runtime/migrate.ts +1 -0
- package/runtime/miner/binary.ts +41 -0
- package/runtime/miner/cli.ts +87 -0
- package/runtime/miner/index.ts +5 -0
- package/runtime/miner/request.ts +54 -0
- package/runtime/miner/runner.ts +90 -0
- package/runtime/miner/types.ts +71 -0
- package/runtime/miner/verify.ts +61 -0
- package/runtime/vendor/plan-codec/index.cjs +820 -0
- package/runtime/vendor/plan-codec/index.d.cts +32 -0
- package/runtime/vendor/plan-codec/provenance.json +24 -0
- package/runtime/workflow/engine.ts +174 -0
- package/runtime/workflow/lib/authority.ts +3 -3
- package/runtime/workflow/lib/calls.ts +46 -37
- package/runtime/workflow/lib/canonicalData.ts +45 -0
- package/runtime/workflow/lib/config.ts +1 -1
- package/runtime/workflow/lib/context.ts +76 -0
- package/runtime/workflow/lib/create2.ts +10 -12
- package/runtime/workflow/lib/deployments.ts +6 -14
- package/runtime/workflow/lib/evidencePorts.ts +20 -0
- package/runtime/workflow/lib/executionPlan.ts +17 -268
- package/runtime/workflow/lib/gateTool.ts +20 -8
- package/runtime/workflow/lib/gateToolSync.ts +3 -3
- package/runtime/workflow/lib/operationNames.ts +32 -0
- package/runtime/workflow/lib/parameters.ts +4 -21
- package/runtime/workflow/lib/pendingDeploymentReuse.ts +4 -56
- package/runtime/workflow/lib/pendingUupsBinding.ts +43 -0
- package/runtime/workflow/lib/plan.ts +334 -0
- package/runtime/workflow/lib/planCli.ts +279 -0
- package/runtime/workflow/lib/preparationEvidence.ts +14 -0
- package/runtime/workflow/lib/proxy.ts +5 -3
- package/runtime/workflow/lib/runtime.ts +46 -0
- package/runtime/workflow/lib/signer.ts +8 -5
- package/runtime/workflow/lib/simulation.ts +41 -17
- package/runtime/workflow/lib/state.ts +3 -3
- package/runtime/workflow/lib/staticValidation.ts +92 -11
- package/runtime/workflow/lib/transactionPlanner.ts +314 -0
- package/runtime/workflow/lib/typedValue.ts +46 -0
- package/runtime/workflow/lib/validation.ts +50 -0
- package/runtime/workflow/planAdd.ts +8 -0
- package/runtime/workflow/planRead.ts +8 -0
- package/runtime/workflow/planStatus.ts +8 -0
- package/runtime/workflow/planWrite.ts +8 -0
- package/runtime/workflow/run.ts +41 -174
- package/runtime/workflow/staticValidate.ts +8 -3
- package/runtime/workflow/steps/call.ts +1 -1
- package/runtime/workflow/steps/check.ts +1 -1
- package/runtime/workflow/steps/custom.ts +1 -1
- package/runtime/workflow/steps/deploy.ts +57 -58
- package/runtime/workflow/steps/upgrade.ts +69 -46
- package/runtime/workflow/steps/view.ts +1 -1
|
@@ -0,0 +1,396 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.productionChildEnvironment = void 0;
|
|
7
|
+
exports.inspectDeliveryProduction = inspectDeliveryProduction;
|
|
8
|
+
exports.prepareDeliveryProduction = prepareDeliveryProduction;
|
|
9
|
+
exports.runDeliveryProduction = runDeliveryProduction;
|
|
10
|
+
exports.renderProductionExport = renderProductionExport;
|
|
11
|
+
exports.productionRpc = productionRpc;
|
|
12
|
+
exports.prepareDeliveryProductionSafe = prepareDeliveryProductionSafe;
|
|
13
|
+
exports.freezeDeliveryProduction = freezeDeliveryProduction;
|
|
14
|
+
/** Public release-only production boundary. Host capabilities never enter JSON options. */
|
|
15
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
16
|
+
const node_os_1 = __importDefault(require("node:os"));
|
|
17
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
18
|
+
const node_crypto_1 = require("node:crypto");
|
|
19
|
+
const workflow_1 = require("gate-evm-tools/workflow");
|
|
20
|
+
const release_1 = require("./release");
|
|
21
|
+
const source_1 = require("./source");
|
|
22
|
+
const project_files_1 = require("./project-files");
|
|
23
|
+
const protocol_1 = require("./protocol");
|
|
24
|
+
const data_1 = require("./data");
|
|
25
|
+
const plan_1 = require("./plan");
|
|
26
|
+
const aggregate_channel_1 = require("./aggregate-channel");
|
|
27
|
+
const materialization_1 = require("./materialization");
|
|
28
|
+
const canonicalData_1 = require("../workflow/lib/canonicalData");
|
|
29
|
+
const eoa_1 = require("./eoa");
|
|
30
|
+
const production_finalization_1 = require("./production-finalization");
|
|
31
|
+
var production_environment_1 = require("./production-environment");
|
|
32
|
+
Object.defineProperty(exports, "productionChildEnvironment", { enumerable: true, get: function () { return production_environment_1.productionChildEnvironment; } });
|
|
33
|
+
const keys = ['workspaceRoot', 'projectRoot', 'handoff', 'taskId', 'deploymentId', 'releaseRef', 'planKey', 'rev', 'target', 'operator', 'executionId'];
|
|
34
|
+
const encode = (v) => (0, canonicalData_1.canonicalJson)(v) + '\n';
|
|
35
|
+
const artifactPath = (id) => `.gate-delivery/production/${(0, protocol_1.safeId)(id, 'executionId')}.json`;
|
|
36
|
+
function inspect(raw, command) {
|
|
37
|
+
const input = (0, canonicalData_1.deepFreeze)((0, data_1.strictData)(raw));
|
|
38
|
+
(0, canonicalData_1.exactObject)(input, keys, 'production options');
|
|
39
|
+
(0, protocol_1.safeId)(input.executionId, 'executionId');
|
|
40
|
+
const mode = command === 'prepare' ? 'simulate' : command;
|
|
41
|
+
const request = (0, protocol_1.parseDeliveryRequest)({ version: 1, environment: 'prod', purpose: 'prod-execution', mode, network: input.target, operator: input.operator, releaseRef: input.releaseRef, sourceRef: { path: input.handoff, taskId: input.taskId, planKey: input.planKey, rev: input.rev } });
|
|
42
|
+
const release = (0, release_1.inspectDeliveryRelease)(input);
|
|
43
|
+
if (release.status === 'pending')
|
|
44
|
+
return { status: 'pending', input };
|
|
45
|
+
const source = (0, source_1.readOwnedDeliverySource)({ workspaceRoot: input.workspaceRoot, projectRoot: input.projectRoot, request });
|
|
46
|
+
if (source.invocation.task.scope.deployment.deploymentId !== input.deploymentId)
|
|
47
|
+
throw Error('Production deployment mismatch');
|
|
48
|
+
const target = release.release.targets.find((t) => t.id === input.target);
|
|
49
|
+
if (!target)
|
|
50
|
+
throw Error('Unknown production target');
|
|
51
|
+
return { status: 'ready', input, request, source, release: release.release, releaseHash: release.bundleHash, target, root: (0, project_files_1.projectRoot)(input.workspaceRoot, input.projectRoot) };
|
|
52
|
+
}
|
|
53
|
+
/** Read the marker before consuming generated output; no missing-file error while pending. */
|
|
54
|
+
function inspectDeliveryProduction(raw, command = 'prepare') {
|
|
55
|
+
const current = inspect(raw, command);
|
|
56
|
+
if (current.status === 'pending')
|
|
57
|
+
return current;
|
|
58
|
+
const bytes = (0, materialization_1.fileBytes)(current.root, artifactPath(current.input.executionId));
|
|
59
|
+
if (bytes === null)
|
|
60
|
+
return { status: 'pending' };
|
|
61
|
+
const record = JSON.parse(bytes), { artifactHash, ...body } = record;
|
|
62
|
+
if (record.schema !== 'gate-delivery-production' || record.version !== 1 || record.status !== 'READY' || record.generation !== 'complete' || (0, canonicalData_1.semanticHash)(body) !== artifactHash)
|
|
63
|
+
throw Error('Invalid production READY artifact');
|
|
64
|
+
const plan = (0, plan_1.parseDeliveryPlan)(record.collection.plan);
|
|
65
|
+
if (record.releaseHash !== current.releaseHash || plan.inputsHash !== current.release.inputsHash || plan.sourceDefinitionHash !== current.release.sourceDefinitionHash || plan.executionId !== current.input.executionId || plan.target !== current.input.target || plan.operator !== current.input.operator.toLowerCase() || plan.environment !== 'prod' || plan.chainId !== String(current.target.chainId))
|
|
66
|
+
throw Error('Production artifact context mismatch');
|
|
67
|
+
return (0, canonicalData_1.deepFreeze)({ status: 'ready', plan, collection: record.collection, finalization: record.finalization, releaseHash: current.releaseHash, artifactHash, sha256: (0, materialization_1.byteHash)(bytes), path: artifactPath(current.input.executionId), ...(current.target.safe ? { safeTarget: current.target.safe } : {}) });
|
|
68
|
+
}
|
|
69
|
+
/** Instantiate the delivered business operations, never accept replacement operations or parameters. */
|
|
70
|
+
async function prepareDeliveryProduction(raw) {
|
|
71
|
+
const current = inspect(raw, 'prepare');
|
|
72
|
+
if (current.status === 'pending')
|
|
73
|
+
return { status: 'pending' };
|
|
74
|
+
const existing = inspectDeliveryProduction(current.input);
|
|
75
|
+
if (existing.status === 'ready')
|
|
76
|
+
return existing;
|
|
77
|
+
if (node_path_1.default.resolve(process.cwd()) !== current.root)
|
|
78
|
+
throw Error('Production prepare must run from actual project root');
|
|
79
|
+
const { input, request, release, root } = current, session = (0, node_crypto_1.randomUUID)(), dir = node_fs_1.default.mkdtempSync(node_path_1.default.join(node_os_1.default.tmpdir(), 'gate-production-'));
|
|
80
|
+
const workers = [];
|
|
81
|
+
let failure;
|
|
82
|
+
const check = () => {
|
|
83
|
+
if (failure)
|
|
84
|
+
throw failure;
|
|
85
|
+
const now = inspect(input, 'prepare');
|
|
86
|
+
if (now.status !== 'ready' || now.releaseHash !== current.releaseHash)
|
|
87
|
+
throw Error('Production release changed during generation');
|
|
88
|
+
};
|
|
89
|
+
try {
|
|
90
|
+
const source = new aggregate_channel_1.OwnedWorker(root, session, input.target, 'source', e => { failure ??= e; });
|
|
91
|
+
workers.push(source);
|
|
92
|
+
const common = { root, workspaceRoot: input.workspaceRoot, projectRoot: input.projectRoot, request }, handshakePath = node_path_1.default.join(dir, 'source.json');
|
|
93
|
+
const ready = await source.request('stage', { ...common, role: 'source', handshakePath });
|
|
94
|
+
check();
|
|
95
|
+
if (ready.ready !== true || !node_fs_1.default.existsSync(handshakePath) || (0, canonicalData_1.canonicalJson)(JSON.parse(node_fs_1.default.readFileSync(handshakePath, 'utf8'))) !== (0, canonicalData_1.canonicalJson)(ready.handshake))
|
|
96
|
+
throw Error('Source generation not READY');
|
|
97
|
+
const worker = new aggregate_channel_1.OwnedWorker(root, session, input.target, 'target', e => { failure ??= e; });
|
|
98
|
+
workers.push(worker);
|
|
99
|
+
const parameter = release.parameters.find((p) => p.target === input.target);
|
|
100
|
+
if (!parameter)
|
|
101
|
+
throw Error('Release parameters missing');
|
|
102
|
+
const staged = await worker.request('stage', { ...common, role: 'target', handshake: ready.handshake, target: current.target, params: parameter.resolved.values, steps: release.operations, deploymentId: input.deploymentId, businessRoot: `scripts/tasks/${input.deploymentId}`, executionId: input.executionId, sourceDefinitionHash: release.sourceDefinitionHash });
|
|
103
|
+
check();
|
|
104
|
+
if (staged.ready !== true)
|
|
105
|
+
throw Error('Production generation not READY');
|
|
106
|
+
const checked = await worker.request('check');
|
|
107
|
+
check();
|
|
108
|
+
const sourceChecked = await source.request('check');
|
|
109
|
+
check();
|
|
110
|
+
const candidate = JSON.parse(node_fs_1.default.readFileSync(node_path_1.default.join(root, release.candidate.path), 'utf8'));
|
|
111
|
+
const expected = candidate.aggregate.inputs.targets.find((t) => t.target === input.target);
|
|
112
|
+
for (const [actual, wanted] of [[checked.compiler.stableDigest, expected.compiler.stableDigest], [checked.custom, expected.custom], [checked.configuration.configurationRuntimeHash, expected.configuration.configurationRuntimeHash], [sourceChecked.configuration.configurationRuntimeHash, expected.sourceConfiguration.configurationRuntimeHash]])
|
|
113
|
+
if ((0, canonicalData_1.canonicalJson)(actual) !== (0, canonicalData_1.canonicalJson)(wanted))
|
|
114
|
+
throw Error('Final simulation changed released input closure');
|
|
115
|
+
const collection = await worker.request('bind', { inputsHash: release.inputsHash });
|
|
116
|
+
check();
|
|
117
|
+
(0, development_1.expectedDevelopmentAssertions)(collection, release.operations);
|
|
118
|
+
if (collection.plan.executionId !== input.executionId || collection.plan.operator !== input.operator.toLowerCase())
|
|
119
|
+
throw Error('Final simulation context mismatch');
|
|
120
|
+
await worker.request('close');
|
|
121
|
+
await source.request('close');
|
|
122
|
+
check();
|
|
123
|
+
await (0, materialization_1.withDevelopmentFileLock)(root, async () => {
|
|
124
|
+
check();
|
|
125
|
+
const paths = (0, workflow_1.resolveTargetManifestPaths)(root, input.target, Number(collection.plan.chainId), {}), manifestPath = node_path_1.default.relative(root, paths.file).split(node_path_1.default.sep).join('/');
|
|
126
|
+
if (paths.file !== paths.fallbackFile && (0, materialization_1.fileBytes)(root, node_path_1.default.relative(root, paths.fallbackFile)) !== null)
|
|
127
|
+
throw Error('Noncanonical manifest fallback requires explicit migration');
|
|
128
|
+
const finalization = { compiler: checked.compiler, registration: { registry: JSON.parse((0, materialization_1.fileBytes)(root, 'contractInfo.json') ?? '{}'), metadata: JSON.parse((0, materialization_1.fileBytes)(root, 'deploymentInfo.json') ?? '{"version":1,"networks":{}}') }, manifests: [{ path: manifestPath, contents: (0, materialization_1.fileBytes)(root, manifestPath) }] };
|
|
129
|
+
const body = { schema: 'gate-delivery-production', version: 1, status: 'READY', generation: 'complete', releaseHash: current.releaseHash, collection, finalization }, record = { ...body, artifactHash: (0, canonicalData_1.semanticHash)(body) };
|
|
130
|
+
const prior = (0, materialization_1.fileBytes)(root, artifactPath(input.executionId));
|
|
131
|
+
if (prior !== null && prior !== encode(record))
|
|
132
|
+
throw Error('Execution ID already has immutable final simulation');
|
|
133
|
+
(0, materialization_1.atomicDevelopmentWrite)(root, artifactPath(input.executionId), encode(record));
|
|
134
|
+
});
|
|
135
|
+
return inspectDeliveryProduction(input);
|
|
136
|
+
}
|
|
137
|
+
finally {
|
|
138
|
+
await Promise.all(workers.map(w => w.reap()));
|
|
139
|
+
node_fs_1.default.rmSync(dir, { recursive: true, force: true });
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
/** Capture trusted callback identities once. Caller-mutable options cannot replace ports after awaits. */
|
|
143
|
+
function productionPorts(host) {
|
|
144
|
+
const { store, signer, approval } = host;
|
|
145
|
+
return { store, finality: (0, canonicalData_1.deepFreeze)((0, data_1.strictData)(host.finality)), guard: host.assertCurrent.bind(host), request: host.provider.request.bind(host.provider),
|
|
146
|
+
signer: signer ? { address: signer.address, sign: signer.sign.bind(signer), recover: signer.recover?.bind(signer) } : undefined,
|
|
147
|
+
approval: approval ? { withApproval: approval.withApproval.bind(approval) } : undefined };
|
|
148
|
+
}
|
|
149
|
+
/** Explicit commands share validation; only in-process trusted ports can sign or send. */
|
|
150
|
+
async function runDeliveryProduction(command, raw, host, detail) {
|
|
151
|
+
if (!['execute', 'export-calldata', 'reconcile', 'verify'].includes(command))
|
|
152
|
+
throw Error('Explicit production command required');
|
|
153
|
+
const ports = host ? productionPorts(host) : undefined;
|
|
154
|
+
ports?.guard();
|
|
155
|
+
const input = (0, canonicalData_1.deepFreeze)((0, data_1.strictData)(raw)), captured = detail ? (0, canonicalData_1.deepFreeze)((0, data_1.strictData)(detail)) : undefined, ready = inspectDeliveryProduction(input, command);
|
|
156
|
+
ports?.guard();
|
|
157
|
+
if (ready.status === 'pending')
|
|
158
|
+
return { status: 'pending' };
|
|
159
|
+
if (!ports) {
|
|
160
|
+
if (command === 'execute')
|
|
161
|
+
throw Error('PRODUCTION_SIGNER_UNAVAILABLE: trusted host required');
|
|
162
|
+
if (command !== 'export-calldata')
|
|
163
|
+
throw Error('Trusted host observation provider required');
|
|
164
|
+
return renderProductionExport(ready);
|
|
165
|
+
}
|
|
166
|
+
const { guard, request, store, finality, signer, approval } = ports;
|
|
167
|
+
const check = () => {
|
|
168
|
+
guard();
|
|
169
|
+
const current = inspectDeliveryProduction(input, command);
|
|
170
|
+
if (current.status !== 'ready' || current.artifactHash !== ready.artifactHash)
|
|
171
|
+
throw Error('Production artifact changed');
|
|
172
|
+
guard();
|
|
173
|
+
};
|
|
174
|
+
const plan = ready.plan, context = { executionId: plan.executionId, planHash: plan.planHash, releaseHash: ready.releaseHash, operator: plan.operator, chainId: plan.chainId, target: plan.target, finality, policyHash: (0, canonicalData_1.semanticHash)(finality) };
|
|
175
|
+
// Read-only observations consume the immutable plan. Full release hashing belongs at effect
|
|
176
|
+
// boundaries, while the live host capability/expiry check still surrounds every RPC await.
|
|
177
|
+
const provider = { async request(method, params) { const current = method === 'eth_sendRawTransaction' ? check : guard; current(); const result = await request(method, params); current(); return result; } };
|
|
178
|
+
const controlledSigner = signer ? { address: signer.address, async sign(id, unsigned) { check(); const raw = await signer.sign(id, unsigned); check(); return raw; }, ...(signer.recover ? { async recover(id) { check(); const raw = await signer.recover(id); check(); return raw; } } : {}) } : undefined;
|
|
179
|
+
const controlledApproval = approval ? { async withApproval(snapshot, work) { check(); const result = await approval.withApproval(snapshot, async () => { check(); return work(); }); guard(); return result; } } : undefined;
|
|
180
|
+
const kernel = (0, eoa_1.createDeliveryEoaExecution)({ store, plan, context, provider, signer: controlledSigner, approval: controlledApproval });
|
|
181
|
+
const result = command === 'execute' ? await kernel.execute(captured?.unsigned) : command === 'export-calldata' ? await kernel.export() : await kernel.reconcile(captured?.hashes ?? {});
|
|
182
|
+
check();
|
|
183
|
+
if (command === 'export-calldata')
|
|
184
|
+
return renderProductionExport(ready, result);
|
|
185
|
+
if (command === 'verify' && result.status === 'complete') {
|
|
186
|
+
try {
|
|
187
|
+
const root = (0, project_files_1.projectRoot)(input.workspaceRoot, input.projectRoot), priorAnchor = (0, production_finalization_1.retainedProductionFinalizationAnchor)(root, ready);
|
|
188
|
+
const { assertions, anchor } = await verifyProductionAssertions(ready, provider, priorAnchor);
|
|
189
|
+
check();
|
|
190
|
+
const acceptance = await (0, production_finalization_1.finalizeProductionExecution)({ root, ready, provider, anchor, assertions, finalized: result.snapshot.transactions.map((t) => t.observation), assertCurrent: guard, assertInputs: check });
|
|
191
|
+
check();
|
|
192
|
+
return (0, canonicalData_1.deepFreeze)({ ...result, status: 'accepted', assertions, acceptance });
|
|
193
|
+
}
|
|
194
|
+
catch (error) {
|
|
195
|
+
guard();
|
|
196
|
+
return (0, canonicalData_1.deepFreeze)({ ...result, status: 'finalization-required', error: error instanceof Error ? error.message : String(error) });
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
return result;
|
|
200
|
+
}
|
|
201
|
+
const export_1 = require("./export");
|
|
202
|
+
function renderProductionExport(ready, exported = (0, export_1.renderDeliveryExport)(ready.plan)) {
|
|
203
|
+
const start = exported.model.completed.length, active = ready.plan.transactions[start], frozen = exported.model.safeEnvelopes ?? [];
|
|
204
|
+
const needsPreparation = !!ready.safeTarget && active?.route === 'external' && !frozen.some((x) => x.envelope.start === start);
|
|
205
|
+
const model = (0, canonicalData_1.deepFreeze)({ ...exported.model, ...(ready.safeTarget ? { safePreparation: needsPreparation ? 'preparation-required' : active?.route === 'external' ? 'ready' : 'not-applicable', futureSafeEnvelopes: 'pending until their segment becomes executable' } : {}), releaseHash: ready.releaseHash, artifactHash: ready.artifactHash });
|
|
206
|
+
const json = (0, canonicalData_1.canonicalJson)(model);
|
|
207
|
+
const artifact = (0, canonicalData_1.deepFreeze)({ status: 'artifact-delivered', model, json, markdown: `# Production calldata\n\nRelease: ${ready.releaseHash}\nExecution: ${ready.plan.executionId}\n\n\`\`\`json\n${json}\n\`\`\`\n` });
|
|
208
|
+
return needsPreparation ? (0, canonicalData_1.deepFreeze)({ status: 'preparation-required', export: artifact }) : artifact;
|
|
209
|
+
}
|
|
210
|
+
const configuration_definition_1 = require("./configuration-definition");
|
|
211
|
+
const production_environment_2 = require("./production-environment");
|
|
212
|
+
const eoa_observation_1 = require("./eoa-observation");
|
|
213
|
+
const execution_model_1 = require("./execution-model");
|
|
214
|
+
const safe_observation_1 = require("./safe-observation");
|
|
215
|
+
/** Static config parser only. No HRE, project imports, accounts or signing environment are evaluated. */
|
|
216
|
+
function productionRpc(raw, command) {
|
|
217
|
+
const current = inspect(raw, command);
|
|
218
|
+
if (current.status !== 'ready')
|
|
219
|
+
throw Error('Production release pending');
|
|
220
|
+
const config = (0, configuration_definition_1.parseConfigurationDefinition)(node_fs_1.default.readFileSync(node_path_1.default.join(current.root, 'hardhat.config.ts')), raw.target, (0, production_environment_2.productionChildEnvironment)(process.env)).userConfig.networks[raw.target];
|
|
221
|
+
const url = new URL(config.url);
|
|
222
|
+
if (!['http:', 'https:'].includes(url.protocol))
|
|
223
|
+
throw Error('Unsupported production RPC');
|
|
224
|
+
return Object.freeze({ async request(method, params) {
|
|
225
|
+
const controller = new AbortController(), timer = setTimeout(() => controller.abort(), 30000);
|
|
226
|
+
try {
|
|
227
|
+
const response = await fetch(url, { method: 'POST', headers: { 'content-type': 'application/json', ...config.httpHeaders }, body: JSON.stringify({ jsonrpc: '2.0', id: 1, method, params }), signal: controller.signal });
|
|
228
|
+
if (!response.ok || !response.body)
|
|
229
|
+
throw Error('Production RPC transport failed');
|
|
230
|
+
const maxBytes = method === 'debug_traceTransaction' ? safe_observation_1.SAFE_TRACE_MAX_BYTES : 2 * 1024 * 1024;
|
|
231
|
+
const reader = response.body.getReader(), chunks = [];
|
|
232
|
+
let size = 0;
|
|
233
|
+
try {
|
|
234
|
+
for (;;) {
|
|
235
|
+
const { done, value } = await reader.read();
|
|
236
|
+
if (done)
|
|
237
|
+
break;
|
|
238
|
+
size += value.byteLength;
|
|
239
|
+
if (size > maxBytes)
|
|
240
|
+
throw Error('Production RPC response exceeds bounded budget');
|
|
241
|
+
chunks.push(value);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
catch (error) {
|
|
245
|
+
controller.abort();
|
|
246
|
+
await reader.cancel().catch(() => { });
|
|
247
|
+
throw error;
|
|
248
|
+
}
|
|
249
|
+
finally {
|
|
250
|
+
reader.releaseLock();
|
|
251
|
+
}
|
|
252
|
+
// Parse only after the entire bounded stream completed successfully.
|
|
253
|
+
const result = JSON.parse(new TextDecoder('utf-8', { fatal: true }).decode(Buffer.concat(chunks, size)));
|
|
254
|
+
if (!result || result.error || !Object.hasOwn(result, 'result'))
|
|
255
|
+
throw Error('Production RPC rejected request');
|
|
256
|
+
return result.result;
|
|
257
|
+
}
|
|
258
|
+
catch (error) {
|
|
259
|
+
controller.abort();
|
|
260
|
+
throw error;
|
|
261
|
+
}
|
|
262
|
+
finally {
|
|
263
|
+
clearTimeout(timer);
|
|
264
|
+
}
|
|
265
|
+
} });
|
|
266
|
+
}
|
|
267
|
+
/** Separate final preparation: policy comes only from the validated release target. No signing/send. */
|
|
268
|
+
async function prepareDeliveryProductionSafe(raw, host) {
|
|
269
|
+
return prepareProductionSafe(raw, host, 'prepare');
|
|
270
|
+
}
|
|
271
|
+
/** The owning entry fixes its stage; callers cannot select a weaker task permission. */
|
|
272
|
+
async function prepareProductionSafe(raw, host, command) {
|
|
273
|
+
const ports = productionPorts(host);
|
|
274
|
+
ports.guard();
|
|
275
|
+
const input = (0, canonicalData_1.deepFreeze)((0, data_1.strictData)(raw)), ready = inspectDeliveryProduction(input, command), current = inspect(input, command);
|
|
276
|
+
ports.guard();
|
|
277
|
+
if (ready.status !== 'ready' || current.status !== 'ready')
|
|
278
|
+
return { status: 'pending' };
|
|
279
|
+
const check = () => {
|
|
280
|
+
ports.guard();
|
|
281
|
+
const now = inspectDeliveryProduction(input, command);
|
|
282
|
+
if (now.status !== 'ready' || now.artifactHash !== ready.artifactHash)
|
|
283
|
+
throw Error('Production Safe preparation changed');
|
|
284
|
+
ports.guard();
|
|
285
|
+
};
|
|
286
|
+
const prior = await ports.store.readExecution(input.executionId);
|
|
287
|
+
ports.guard();
|
|
288
|
+
if (prior && prior.planHash !== ready.plan.planHash)
|
|
289
|
+
throw Error('Original execution plan mismatch');
|
|
290
|
+
const first = ready.plan.transactions[prior?.completedCount ?? 0];
|
|
291
|
+
if (!first || first.route !== 'external')
|
|
292
|
+
return { status: 'not-applicable' };
|
|
293
|
+
if (!current.target.safe) {
|
|
294
|
+
const code = await ports.request('eth_getCode', [first.executor, 'latest']);
|
|
295
|
+
check();
|
|
296
|
+
if (code !== '0x')
|
|
297
|
+
throw Error('Developer-delivered Safe target policy required');
|
|
298
|
+
return { status: 'not-applicable' };
|
|
299
|
+
}
|
|
300
|
+
const plan = ready.plan, context = { executionId: plan.executionId, planHash: plan.planHash, releaseHash: ready.releaseHash, operator: plan.operator, chainId: plan.chainId, target: plan.target, finality: ports.finality, policyHash: (0, canonicalData_1.semanticHash)(ports.finality) };
|
|
301
|
+
const provider = { async request(method, params) { ports.guard(); const result = await ports.request(method, params); ports.guard(); return result; } };
|
|
302
|
+
const result = await (0, eoa_1.createDeliveryEoaExecution)({ plan, context, store: ports.store, provider }).prepareSafe(current.target.safe);
|
|
303
|
+
check();
|
|
304
|
+
return (0, canonicalData_1.deepFreeze)({ status: 'safe-prepared', envelope: result.envelope });
|
|
305
|
+
}
|
|
306
|
+
async function freezeDeliveryProduction(raw, host) {
|
|
307
|
+
const { guard, request, store, signer } = productionPorts(host);
|
|
308
|
+
guard();
|
|
309
|
+
const input = (0, canonicalData_1.deepFreeze)((0, data_1.strictData)(raw)), ready = inspectDeliveryProduction(input, 'execute');
|
|
310
|
+
guard();
|
|
311
|
+
if (ready.status !== 'ready')
|
|
312
|
+
return { status: 'pending' };
|
|
313
|
+
const check = () => {
|
|
314
|
+
guard();
|
|
315
|
+
const now = inspectDeliveryProduction(input, 'execute');
|
|
316
|
+
if (now.status !== 'ready' || now.artifactHash !== ready.artifactHash)
|
|
317
|
+
throw Error('Production snapshot context changed');
|
|
318
|
+
guard();
|
|
319
|
+
};
|
|
320
|
+
const rpc = async (method, params) => { guard(); const v = await request(method, params); guard(); return v; };
|
|
321
|
+
const s = await store.readExecution(input.executionId);
|
|
322
|
+
guard();
|
|
323
|
+
if (s && s.planHash !== ready.plan.planHash)
|
|
324
|
+
throw Error('Original execution plan mismatch');
|
|
325
|
+
const tx = ready.plan.transactions[s?.completedCount ?? 0];
|
|
326
|
+
if (!tx) {
|
|
327
|
+
check();
|
|
328
|
+
return { status: 'complete' };
|
|
329
|
+
}
|
|
330
|
+
if ((0, eoa_observation_1.rpcQuantity)(await rpc('eth_chainId', [])) !== ready.plan.chainId)
|
|
331
|
+
throw Error('Production chain mismatch');
|
|
332
|
+
const code = await rpc('eth_getCode', [tx.executor, 'latest']);
|
|
333
|
+
if (typeof code !== 'string' || !/^0x(?:[a-fA-F0-9]{2})*$/.test(code))
|
|
334
|
+
throw Error('Unknown executor permissions');
|
|
335
|
+
if (tx.route !== 'operator') {
|
|
336
|
+
await prepareProductionSafe(input, host, 'execute');
|
|
337
|
+
return { status: 'external-executor', export: await runDeliveryProduction('export-calldata', input, host) };
|
|
338
|
+
}
|
|
339
|
+
if (code !== '0x' || tx.operation !== 0)
|
|
340
|
+
throw Error('Unsupported contract executor; EOA operation 0 required');
|
|
341
|
+
if (!signer || signer.address !== input.operator.toLowerCase())
|
|
342
|
+
throw Error('PRODUCTION_SIGNER_UNAVAILABLE');
|
|
343
|
+
if (s?.transactions[s.completedCount]?.state && s.transactions[s.completedCount].state !== 'claimed')
|
|
344
|
+
return { status: 'reconcile-required', executionId: input.executionId, planHash: ready.plan.planHash };
|
|
345
|
+
const unsigned = (0, execution_model_1.parseUnsigned)({ chainId: ready.plan.chainId, signer: tx.executor, nonce: (0, eoa_observation_1.rpcQuantity)(await rpc('eth_getTransactionCount', [tx.executor, 'pending'])), to: tx.to, value: tx.value, data: tx.data, operation: tx.operation, type: 0, gasLimit: (0, eoa_observation_1.rpcQuantity)(await rpc('eth_estimateGas', [{ from: tx.executor, to: tx.to, data: tx.data, value: '0x' + BigInt(tx.value).toString(16) }])), gasPrice: (0, eoa_observation_1.rpcQuantity)(await rpc('eth_gasPrice', [])), maxFeePerGas: null, maxPriorityFeePerGas: null, accessList: [] }, ready.plan, s?.completedCount ?? 0);
|
|
346
|
+
check();
|
|
347
|
+
return (0, canonicalData_1.deepFreeze)({ status: 'frozen', releaseHash: ready.releaseHash, plan: ready.plan, artifactHash: ready.artifactHash, unsigned });
|
|
348
|
+
}
|
|
349
|
+
const ethers_1 = require("ethers");
|
|
350
|
+
const development_1 = require("./development");
|
|
351
|
+
const typedValue_1 = require("../workflow/lib/typedValue");
|
|
352
|
+
const abi_1 = require("./abi");
|
|
353
|
+
function assertionValue(raw) {
|
|
354
|
+
const v = (0, typedValue_1.parseTypedValue)(raw);
|
|
355
|
+
switch (v.type) {
|
|
356
|
+
case 'bigint': return v.value;
|
|
357
|
+
case 'number': return Number(v.value);
|
|
358
|
+
case 'array': return v.value.map(assertionValue);
|
|
359
|
+
case 'object': return Object.fromEntries(Object.entries(v.value).map(([k, x]) => [k, assertionValue(x)]));
|
|
360
|
+
default: return v.value;
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
async function verifyProductionAssertions(ready, provider, priorAnchor) {
|
|
364
|
+
const assertions = ready.collection.verification;
|
|
365
|
+
if (!assertions.length)
|
|
366
|
+
throw Error('Production acceptance requires business assertions');
|
|
367
|
+
for (const binding of ready.plan.verificationBindings) {
|
|
368
|
+
const rows = assertions.filter(o => o.stepId === binding.stepId);
|
|
369
|
+
if ((0, canonicalData_1.canonicalJson)(rows.map(o => o.assertionId)) !== (0, canonicalData_1.canonicalJson)(binding.assertionIds) || (0, canonicalData_1.semanticHash)(rows) !== binding.verificationHash)
|
|
370
|
+
throw Error('Frozen assertion set mismatch');
|
|
371
|
+
}
|
|
372
|
+
if (ready.plan.verificationBindings.reduce((n, b) => n + b.assertionIds.length, 0) !== assertions.length)
|
|
373
|
+
throw Error('Incomplete production assertions');
|
|
374
|
+
const finalized = await provider.request('eth_getBlockByNumber', ['finalized', false]);
|
|
375
|
+
if (!finalized?.hash || !finalized?.number)
|
|
376
|
+
throw Error('Finalized business state unavailable');
|
|
377
|
+
const block = priorAnchor ?? finalized;
|
|
378
|
+
if (BigInt(block.number) > BigInt(finalized.number))
|
|
379
|
+
throw Error('Production acceptance anchor is not finalized');
|
|
380
|
+
const results = [];
|
|
381
|
+
for (const assertion of assertions) {
|
|
382
|
+
const iface = new ethers_1.Interface(assertion.abi), data = iface.encodeFunctionData(assertion.method, assertionValue(assertion.args));
|
|
383
|
+
const raw = await provider.request('eth_call', [{ to: assertion.address, data }, { blockHash: block.hash, requireCanonical: true }]);
|
|
384
|
+
if (typeof raw !== 'string')
|
|
385
|
+
throw Error('Invalid assertion RPC response');
|
|
386
|
+
const decoded = iface.decodeFunctionResult(assertion.method, raw), actual = decoded.length === 1 ? decoded[0] : decoded, comparison = (0, abi_1.compareAbiResults)(assertion.abi, assertion.method, actual, assertionValue(assertion.expected));
|
|
387
|
+
if (comparison.actual !== comparison.expected)
|
|
388
|
+
throw Error(`Production business assertion failed: ${assertion.assertionId}`);
|
|
389
|
+
results.push({ assertionId: assertion.assertionId, actual: (0, abi_1.normalizeRuntimeValue)(actual), expected: assertion.expected, blockHash: block.hash });
|
|
390
|
+
}
|
|
391
|
+
const end = await provider.request('eth_getBlockByNumber', [block.number, false]);
|
|
392
|
+
if (end?.hash !== block.hash)
|
|
393
|
+
throw Error('Production assertion finality changed');
|
|
394
|
+
return { assertions: results, anchor: { hash: block.hash, number: block.number, timestamp: end.timestamp } };
|
|
395
|
+
}
|
|
396
|
+
//# sourceMappingURL=production.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"production.js","sourceRoot":"","sources":["../../runtime/delivery/production.ts"],"names":[],"mappings":";;;;;;AAiDA,8DAcC;AAED,8DAmEC;AAaD,sDAgDC;AAED,wDASC;AAOD,sCA6CC;AAED,sEAEC;AA+BD,4DAqCC;AAxUD,2FAA2F;AAC3F,sDAAyB;AACzB,sDAAyB;AACzB,0DAA6B;AAC7B,6CAAyC;AACzC,sDAAqE;AACrE,uCAAmD;AACnD,qCAAmD;AACnD,mDAA8C;AAC9C,yCAAgF;AAChF,iCAAoC;AACpC,iCAA2C;AAC3C,2DAAkD;AAClD,uDAAyG;AACzG,iEAAqG;AACrG,+BAAqG;AAGrG,uEAAoI;AACpI,mEAAsE;AAA7D,oIAAA,0BAA0B,OAAA;AASnC,MAAM,IAAI,GAAG,CAAC,eAAe,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;AACxJ,MAAM,MAAM,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,IAAA,6BAAa,EAAC,CAAC,CAAC,GAAG,IAAI,CAAC;AACvD,MAAM,YAAY,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,6BAA6B,IAAA,iBAAM,EAAC,EAAE,EAAE,aAAa,CAAC,OAAO,CAAC;AACnG,SAAS,OAAO,CAAC,GAAsB,EAAE,OAA0B;IAC/D,MAAM,KAAK,GAAG,IAAA,0BAAU,EAAC,IAAA,iBAAU,EAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,IAAA,2BAAW,EAAC,KAAK,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;IAC/C,IAAA,iBAAM,EAAC,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1D,MAAM,OAAO,GAAG,IAAA,+BAAoB,EAAC,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC5R,MAAM,OAAO,GAAG,IAAA,gCAAsB,EAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAC5B,OAAO,EAAE,MAAM,EAAE,SAAkB,EAAE,KAAK,EAAE,CAAC;IACjD,MAAM,MAAM,GAAG,IAAA,gCAAuB,EAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;IACxH,IAAK,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAM,CAAC,UAAkB,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY;QACrF,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/E,IAAI,CAAC,MAAM;QACP,MAAM,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC7C,OAAO,EAAE,MAAM,EAAE,OAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,IAAA,2BAAW,EAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;AAC9L,CAAC;AACD,8FAA8F;AAC9F,SAAgB,yBAAyB,CAAC,GAAsB,EAAE,UAA6B,SAAS;IACpG,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACtC,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAC5B,OAAO,OAAO,CAAC;IACnB,MAAM,KAAK,GAAG,IAAA,2BAAS,EAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IAC/E,IAAI,KAAK,KAAK,IAAI;QACd,OAAO,EAAE,MAAM,EAAE,SAAkB,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IACrE,IAAI,MAAM,CAAC,MAAM,KAAK,0BAA0B,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,IAAI,IAAA,4BAAY,EAAC,IAAI,CAAC,KAAK,YAAY;QAC5K,MAAM,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,IAAA,wBAAiB,EAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvD,IAAI,MAAM,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,oBAAoB,KAAK,OAAO,CAAC,OAAO,CAAC,oBAAoB,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;QACxY,MAAM,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACxD,OAAO,IAAA,0BAAU,EAAC,EAAE,MAAM,EAAE,OAAgB,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,UAAgC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,IAAA,0BAAQ,EAAC,KAAK,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC/U,CAAC;AACD,wGAAwG;AACjG,KAAK,UAAU,yBAAyB,CAAC,GAAsB;IAClE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACxC,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAC5B,OAAO,EAAE,MAAM,EAAE,SAAkB,EAAE,CAAC;IAC1C,MAAM,QAAQ,GAAG,yBAAyB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1D,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO;QAC3B,OAAO,QAAQ,CAAC;IACpB,IAAI,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI;QAC5C,MAAM,KAAK,CAAC,sDAAsD,CAAC,CAAC;IACxE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,OAAO,GAAG,IAAA,wBAAU,GAAE,EAAE,GAAG,GAAG,iBAAE,CAAC,WAAW,CAAC,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC5I,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,IAAI,OAA0B,CAAC;IAC/B,MAAM,KAAK,GAAG,GAAG,EAAE;QAAG,IAAI,OAAO;YAC7B,MAAM,OAAO,CAAC;QAAC,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAAC,IAAI,GAAG,CAAC,MAAM,KAAK,OAAO,IAAI,GAAG,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW;YAC3H,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAAC,CAAC,CAAC;IACnE,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,+BAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/F,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,aAAa,GAAG,mBAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QACpJ,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;QAC1F,KAAK,EAAE,CAAC;QACR,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,iBAAE,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,IAAA,6BAAa,EAAC,IAAI,CAAC,KAAK,CAAC,iBAAE,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAA,6BAAa,EAAC,KAAK,CAAC,SAAS,CAAC;YAC7J,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,IAAI,+BAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/F,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;QACjF,IAAI,CAAC,SAAS;YACV,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,YAAY,EAAE,iBAAiB,KAAK,CAAC,YAAY,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;QACzW,KAAK,EAAE,CAAC;QACR,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI;YACrB,MAAM,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,EAAE,CAAC;QACR,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpD,KAAK,EAAE,CAAC;QACR,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAE,CAAC,YAAY,CAAC,mBAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/F,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;QAChG,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,wBAAwB,EAAE,QAAQ,CAAC,aAAa,CAAC,wBAAwB,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,wBAAwB,EAAE,QAAQ,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,CAAC;YACjV,IAAI,IAAA,6BAAa,EAAC,MAAM,CAAC,KAAK,IAAA,6BAAa,EAAC,MAAM,CAAC;gBAC/C,MAAM,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACvE,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAuB,CAAC;QAC1G,KAAK,EAAE,CAAC;QACR,IAAA,2CAA6B,EAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QAC9D,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE;YAC9G,MAAM,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACrD,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9B,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9B,KAAK,EAAE,CAAC;QACR,MAAM,IAAA,yCAAuB,EAAC,IAAI,EAAE,KAAK,IAAI,EAAE;YAC3C,KAAK,EAAE,CAAC;YACR,MAAM,KAAK,GAAG,IAAA,qCAA0B,EAAC,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,YAAY,GAAG,mBAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,mBAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5K,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,YAAY,IAAI,IAAA,2BAAS,EAAC,IAAI,EAAE,mBAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,KAAK,IAAI;gBACtG,MAAM,KAAK,CAAC,4DAA4D,CAAC,CAAC;YAC9E,MAAM,YAAY,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAA,2BAAS,EAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAA,2BAAS,EAAC,IAAI,EAAE,qBAAqB,CAAC,IAAI,6BAA6B,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAA,2BAAS,EAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;YACvT,MAAM,IAAI,GAAG,EAAE,MAAM,EAAE,0BAA0B,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,MAAM,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,IAAA,4BAAY,EAAC,IAAI,CAAC,EAAE,CAAC;YAC7N,MAAM,KAAK,GAAG,IAAA,2BAAS,EAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;YAC/D,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC;gBAC1C,MAAM,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACvE,IAAA,wCAAsB,EAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;QACH,OAAO,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;YACO,CAAC;QACL,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9C,iBAAE,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;AACL,CAAC;AAKD,0GAA0G;AAC1G,SAAS,eAAe,CAAC,IAAyB;IAC9C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IACzC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAA,0BAAU,EAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QACrJ,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QAC/H,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;AAClG,CAAC;AACD,0FAA0F;AACnF,KAAK,UAAU,qBAAqB,CAAC,OAA8C,EAAE,GAAsB,EAAE,IAA0B,EAAE,MAG/I;IACG,IAAI,CAAC,CAAC,SAAS,EAAE,iBAAiB,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;QACxE,MAAM,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvD,KAAK,EAAE,KAAK,EAAE,CAAC;IACf,MAAM,KAAK,GAAG,IAAA,0BAAU,EAAC,IAAA,iBAAU,EAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,IAAA,0BAAU,EAAC,IAAA,iBAAU,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7J,KAAK,EAAE,KAAK,EAAE,CAAC;IACf,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAC1B,OAAO,EAAE,MAAM,EAAE,SAAkB,EAAE,CAAC;IAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,IAAI,OAAO,KAAK,SAAS;YACrB,MAAM,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACxE,IAAI,OAAO,KAAK,iBAAiB;YAC7B,MAAM,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC9D,OAAO,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACpE,MAAM,KAAK,GAAG,GAAG,EAAE;QAAG,KAAK,EAAE,CAAC;QAAC,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAAC,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,IAAI,OAAO,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY;YACnK,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAAC,KAAK,EAAE,CAAC;IAAC,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAA,4BAAY,EAAC,QAAQ,CAAC,EAAE,CAAC;IACjP,4FAA4F;IAC5F,2FAA2F;IAC3F,MAAM,QAAQ,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,MAA0B,IAAI,MAAM,OAAO,GAAG,MAAM,KAAK,wBAAwB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3O,MAAM,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,EAAU,EAAE,QAA2C,IAAI,KAAK,EAAE,CAAC,CAAC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,EAAU,IAAI,KAAK,EAAE,CAAC,CAAC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACjW,MAAM,kBAAkB,GAAoC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,YAAY,CAAI,QAAqD,EAAE,IAAsB,IAAI,KAAK,EAAE,CAAC,CAAC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAChU,MAAM,MAAM,GAAG,IAAA,gCAA0B,EAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACtI,MAAM,MAAM,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,iBAAiB,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;IACzL,KAAK,EAAE,CAAC;IACR,IAAI,OAAO,KAAK,iBAAiB;QAC7B,OAAO,sBAAsB,CAAC,KAAK,EAAE,MAAmD,CAAC,CAAC;IAC9F,IAAI,OAAO,KAAK,QAAQ,IAAK,MAAc,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAChE,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,IAAA,2BAAW,EAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,IAAA,8DAAoC,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAClI,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,0BAA0B,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC9F,KAAK,EAAE,CAAC;YACR,MAAM,UAAU,GAAG,MAAM,IAAA,qDAA2B,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAG,MAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;YAChO,KAAK,EAAE,CAAC;YACR,OAAO,IAAA,0BAAU,EAAC,EAAE,GAAI,MAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;QAC7F,CAAC;QACD,OAAO,KAAK,EAAE,CAAC;YACX,KAAK,EAAE,CAAC;YACR,OAAO,IAAA,0BAAU,EAAC,EAAE,GAAI,MAAiB,EAAE,MAAM,EAAE,uBAAuB,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjJ,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AACD,qCAAgD;AAChD,SAAgB,sBAAsB,CAAC,KAErC,EAAE,QAAQ,GAAG,IAAA,6BAAoB,EAAC,KAAK,CAAC,IAAI,CAAC;IAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,MAAM,GAAI,QAAQ,CAAC,KAAa,CAAC,aAAa,IAAI,EAAE,CAAC;IAC7I,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,UAAU,IAAI,MAAM,EAAE,KAAK,KAAK,UAAU,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;IACpI,MAAM,KAAK,GAAG,IAAA,0BAAU,EAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,gDAAgD,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IAClV,MAAM,IAAI,GAAG,IAAA,6BAAa,EAAC,KAAK,CAAC,CAAC;IAClC,MAAM,QAAQ,GAAG,IAAA,0BAAU,EAAC,EAAE,MAAM,EAAE,oBAA6B,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,qCAAqC,KAAK,CAAC,WAAW,gBAAgB,KAAK,CAAC,IAAI,CAAC,WAAW,mBAAmB,IAAI,YAAY,EAAE,CAAC,CAAC;IAC/N,OAAO,gBAAgB,CAAC,CAAC,CAAC,IAAA,0BAAU,EAAC,EAAE,MAAM,EAAE,sBAA+B,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACnH,CAAC;AACD,yEAA0E;AAC1E,qEAAsE;AACtE,uDAAgD;AAChD,uDAAkD;AAClD,yDAA0D;AAC1D,yGAAyG;AACzG,SAAgB,aAAa,CAAC,GAAsB,EAAE,OAA0B;IAC5E,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACtC,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO;QAC1B,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAA,uDAA4B,EAAC,iBAAE,CAAC,YAAY,CAAC,mBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,IAAA,mDAA0B,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChM,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC3C,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,MAA0B;YACvE,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,EAAE,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC,CAAC;YAC9F,IAAI,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC1N,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;oBAC9B,MAAM,KAAK,CAAC,iCAAiC,CAAC,CAAC;gBACnD,MAAM,QAAQ,GAAG,MAAM,KAAK,wBAAwB,CAAC,CAAC,CAAC,uCAAoB,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;gBAC9F,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,MAAM,GAAiB,EAAE,CAAC;gBACpE,IAAI,IAAI,GAAG,CAAC,CAAC;gBACb,IAAI,CAAC;oBACD,SAAS,CAAC;wBACN,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;wBAC5C,IAAI,IAAI;4BAAE,MAAM;wBAChB,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC;wBACzB,IAAI,IAAI,GAAG,QAAQ;4BACf,MAAM,KAAK,CAAC,gDAAgD,CAAC,CAAC;wBAClE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACvB,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,UAAU,CAAC,KAAK,EAAE,CAAC;oBACnB,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBACtC,MAAM,KAAK,CAAC;gBAChB,CAAC;wBAAS,CAAC;oBACP,MAAM,CAAC,WAAW,EAAE,CAAC;gBACzB,CAAC;gBACD,qEAAqE;gBACrE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;gBACzG,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;oBAC3D,MAAM,KAAK,CAAC,iCAAiC,CAAC,CAAC;gBACnD,OAAO,MAAM,CAAC,MAAM,CAAC;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,UAAU,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,KAAK,CAAC;YAChB,CAAC;oBAAS,CAAC;gBACP,YAAY,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACL,CAAC,EAAE,CAAC,CAAC;AACb,CAAC;AACD,wGAAwG;AACjG,KAAK,UAAU,6BAA6B,CAAC,GAAsB,EAAE,IAAyB;IACjG,OAAO,qBAAqB,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;AACvD,CAAC;AACD,wFAAwF;AACxF,KAAK,UAAU,qBAAqB,CAAC,GAAsB,EAAE,IAAyB,EAAE,OAA8B;IAClH,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IACpC,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,MAAM,KAAK,GAAG,IAAA,0BAAU,EAAC,IAAA,iBAAU,EAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChI,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO;QACtD,OAAO,EAAE,MAAM,EAAE,SAAkB,EAAE,CAAC;IAC1C,MAAM,KAAK,GAAG,GAAG,EAAE;QAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAAC,MAAM,GAAG,GAAG,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAAC,IAAI,GAAG,CAAC,MAAM,KAAK,OAAO,IAAI,GAAG,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY;YAC7J,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAAC,CAAC,CAAC;IACzE,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACjE,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ;QAC/C,MAAM,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,cAAc,IAAI,CAAC,CAAC,CAAC;IAClE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,UAAU;QACpC,OAAO,EAAE,MAAM,EAAE,gBAAyB,EAAE,CAAC;IACjD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC5E,KAAK,EAAE,CAAC;QACR,IAAI,IAAI,KAAK,IAAI;YACb,MAAM,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACnE,OAAO,EAAE,MAAM,EAAE,gBAAyB,EAAE,CAAC;IACjD,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAA,4BAAY,EAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;IACvQ,MAAM,QAAQ,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,MAA0B,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACpL,MAAM,MAAM,GAAG,MAAM,IAAA,gCAA0B,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAClI,KAAK,EAAE,CAAC;IACR,OAAO,IAAA,0BAAU,EAAC,EAAE,MAAM,EAAE,eAAwB,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AACvF,CAAC;AACM,KAAK,UAAU,wBAAwB,CAAC,GAAsB,EAAE,IAAyB;IAC5F,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAChE,KAAK,EAAE,CAAC;IACR,MAAM,KAAK,GAAG,IAAA,0BAAU,EAAC,IAAA,iBAAU,EAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC/F,KAAK,EAAE,CAAC;IACR,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QACxB,OAAO,EAAE,MAAM,EAAE,SAAkB,EAAE,CAAC;IAC1C,MAAM,KAAK,GAAG,GAAG,EAAE;QAAG,KAAK,EAAE,CAAC;QAAC,MAAM,GAAG,GAAG,yBAAyB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAAC,IAAI,GAAG,CAAC,MAAM,KAAK,OAAO,IAAI,GAAG,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY;YACzJ,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAAC,KAAK,EAAE,CAAC;IAAC,CAAC,CAAC;IACnE,MAAM,GAAG,GAAG,KAAK,EAAE,MAAc,EAAE,MAAiB,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAClI,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACvD,KAAK,EAAE,CAAC;IACR,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ;QACvC,MAAM,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACpD,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,cAAc,IAAI,CAAC,CAAC,CAAC;IAC3D,IAAI,CAAC,EAAE,EAAE,CAAC;QACN,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,MAAM,EAAE,UAAmB,EAAE,CAAC;IAC3C,CAAC;IACD,IAAI,IAAA,6BAAW,EAAC,MAAM,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,OAAO;QAChE,MAAM,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC/D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC;QACjE,MAAM,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAChD,IAAI,EAAE,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;QAC1B,MAAM,qBAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QACpD,OAAO,EAAE,MAAM,EAAE,mBAA4B,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;IACzH,CAAC;IACD,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC,SAAS,KAAK,CAAC;QACnC,MAAM,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC3E,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE;QAC1D,MAAM,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACjD,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,KAAK,SAAS;QAChG,OAAO,EAAE,MAAM,EAAE,oBAA6B,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpH,MAAM,QAAQ,GAAG,IAAA,+BAAa,EAAC,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAA,6BAAW,EAAC,MAAM,GAAG,CAAC,yBAAyB,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAA,6BAAW,EAAC,MAAM,GAAG,CAAC,iBAAiB,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAA,6BAAW,EAAC,MAAM,GAAG,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,cAAc,IAAI,CAAC,CAAC,CAAC;IACriB,KAAK,EAAE,CAAC;IACR,OAAO,IAAA,0BAAU,EAAC,EAAE,MAAM,EAAE,QAAiB,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;AACnJ,CAAC;AACD,mCAAmC;AACnC,+CAA8D;AAC9D,2DAA6D;AAC7D,+BAAiE;AACjE,SAAS,cAAc,CAAC,GAAQ;IAAS,MAAM,CAAC,GAAG,IAAA,4BAAe,EAAC,GAAG,CAAC,CAAC;IAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACtF,KAAK,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;QAC9B,KAAK,QAAQ,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACtC,KAAK,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACjD,KAAK,QAAQ,CAAC,CAAC,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1G,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;IAC5B,CAAC;AAAC,CAAC;AACH,KAAK,UAAU,0BAA0B,CAAC,KAExC,EAAE,QAAyC,EAAE,WAA6B;IACxE,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC;IACjD,IAAI,CAAC,UAAU,CAAC,MAAM;QAClB,MAAM,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACtE,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACpD,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;QACjE,IAAI,IAAA,6BAAa,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,IAAA,6BAAa,EAAC,OAAO,CAAC,YAAY,CAAC,IAAI,IAAA,4BAAY,EAAC,IAAI,CAAC,KAAK,OAAO,CAAC,gBAAgB;YACtI,MAAM,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,UAAU,CAAC,MAAM;QACpG,MAAM,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACpD,MAAM,SAAS,GAAQ,MAAM,QAAQ,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;IAC5F,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE,MAAM;QACtC,MAAM,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACxD,MAAM,KAAK,GAAQ,WAAW,IAAI,SAAS,CAAC;IAC5C,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;QAC/C,MAAM,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,kBAAS,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9H,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACrI,IAAI,OAAO,GAAG,KAAK,QAAQ;YACvB,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,GAAG,IAAA,uBAAiB,EAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrO,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,CAAC,QAAQ;YACzC,MAAM,KAAK,CAAC,yCAAyC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;QAClF,OAAO,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,IAAA,2BAAqB,EAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACrJ,CAAC;IACD,MAAM,GAAG,GAAQ,MAAM,QAAQ,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACvF,IAAI,GAAG,EAAE,IAAI,KAAK,KAAK,CAAC,IAAI;QACxB,MAAM,KAAK,CAAC,uCAAuC,CAAC,CAAC;IACzD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;AACjH,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
export declare function stat(file: string): fs.Stats | undefined;
|
|
3
|
+
export declare function confinedFile(root: string, relative: string, kind?: 'file' | 'directory'): string;
|
|
4
|
+
export declare function projectRoot(workspaceRoot: string, relative: string): string;
|
|
5
|
+
export declare function readFile(root: string, relative: string): string | undefined;
|
|
6
|
+
export declare function coreMarker(root: string): void;
|
|
7
|
+
/** Validate the same captured marker bytes whose digest is being bound. */
|
|
8
|
+
export declare function parseCoreMarker(bytes: string | Buffer): void;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.stat = stat;
|
|
7
|
+
exports.confinedFile = confinedFile;
|
|
8
|
+
exports.projectRoot = projectRoot;
|
|
9
|
+
exports.readFile = readFile;
|
|
10
|
+
exports.coreMarker = coreMarker;
|
|
11
|
+
exports.parseCoreMarker = parseCoreMarker;
|
|
12
|
+
// Filesystem-only project boundary helpers; safe to use before loading config tooling.
|
|
13
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
14
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
15
|
+
const protocol_1 = require("./protocol");
|
|
16
|
+
function stat(file) {
|
|
17
|
+
try {
|
|
18
|
+
return node_fs_1.default.lstatSync(file);
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
if (error.code === 'ENOENT')
|
|
22
|
+
return undefined;
|
|
23
|
+
throw error;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
function confinedFile(root, relative, kind = 'file') {
|
|
27
|
+
(0, protocol_1.portablePath)(relative, 'project path');
|
|
28
|
+
let current = root;
|
|
29
|
+
const parts = relative.split('/');
|
|
30
|
+
for (let i = 0; i < parts.length; i++) {
|
|
31
|
+
current = node_path_1.default.join(current, parts[i]);
|
|
32
|
+
const info = stat(current);
|
|
33
|
+
if (!info)
|
|
34
|
+
continue;
|
|
35
|
+
if (info.isSymbolicLink())
|
|
36
|
+
throw new Error(`Unsafe symlink: ${relative}`);
|
|
37
|
+
const file = i === parts.length - 1 && kind === 'file';
|
|
38
|
+
if (file ? !info.isFile() || info.nlink !== 1 : !info.isDirectory())
|
|
39
|
+
throw new Error(`Unsafe path type: ${relative}`);
|
|
40
|
+
}
|
|
41
|
+
return current;
|
|
42
|
+
}
|
|
43
|
+
function projectRoot(workspaceRoot, relative) {
|
|
44
|
+
if (typeof workspaceRoot !== 'string' || !node_path_1.default.isAbsolute(workspaceRoot))
|
|
45
|
+
throw new Error('workspaceRoot path must be absolute');
|
|
46
|
+
const workspace = node_fs_1.default.realpathSync(workspaceRoot);
|
|
47
|
+
const root = relative === '.' ? workspace : confinedFile(workspace, relative, 'directory');
|
|
48
|
+
if (!stat(root)?.isDirectory())
|
|
49
|
+
throw new Error('Project path must be an existing directory');
|
|
50
|
+
return root;
|
|
51
|
+
}
|
|
52
|
+
function readFile(root, relative) {
|
|
53
|
+
const file = confinedFile(root, relative);
|
|
54
|
+
return stat(file) ? node_fs_1.default.readFileSync(file, 'utf8') : undefined;
|
|
55
|
+
}
|
|
56
|
+
function coreMarker(root) {
|
|
57
|
+
parseCoreMarker(readFile(root, '.gate-template.json') ?? 'null');
|
|
58
|
+
}
|
|
59
|
+
/** Validate the same captured marker bytes whose digest is being bound. */
|
|
60
|
+
function parseCoreMarker(bytes) {
|
|
61
|
+
const marker = JSON.parse(bytes.toString());
|
|
62
|
+
if (!marker || marker.template !== 'gateflow-evm-core@1' || marker.templateVersion !== 1 || marker.profile !== 'core')
|
|
63
|
+
throw new Error('Unsupported core template; no legacy migration is performed');
|
|
64
|
+
if (marker.generator?.name !== 'gate-evm-hardhat-foundry' || typeof marker.generator?.version !== 'string'
|
|
65
|
+
|| !/^\d+\.\d+\.\d+(?:-[\w.-]+)?$/.test(marker.generator.version)
|
|
66
|
+
|| !marker.generation?.inputs || !marker.generation?.files || !Array.isArray(marker.generation?.preserved))
|
|
67
|
+
throw new Error('Invalid core generator provenance');
|
|
68
|
+
if (marker.generation.state !== 'complete')
|
|
69
|
+
throw new Error('Core generation is pending or invalid');
|
|
70
|
+
const inputs = (0, protocol_1.object)(marker.generation.inputs, 'core generation provenance inputs');
|
|
71
|
+
const files = (0, protocol_1.object)(marker.generation.files, 'core generation provenance files');
|
|
72
|
+
const preserved = marker.generation.preserved;
|
|
73
|
+
const optional = ['README.md', 'AGENTS.md', '.gitignore'];
|
|
74
|
+
const assets = ['package.json', 'hardhat.config.ts', 'tsconfig.json', ...optional, 'contracts/.gitkeep', 'test/.gitkeep'];
|
|
75
|
+
if (typeof inputs.projectName !== 'string' || !inputs.projectName || !Array.isArray(inputs.networks)
|
|
76
|
+
|| preserved.some(file => typeof file !== 'string' || !optional.includes(file))
|
|
77
|
+
|| new Set(preserved).size !== preserved.length
|
|
78
|
+
|| Object.keys(files).sort().join('\n') !== assets.filter(file => !preserved.includes(file)).sort().join('\n')
|
|
79
|
+
|| Object.values(files).some(hash => typeof hash !== 'string' || !/^[a-f0-9]{64}$/.test(hash)))
|
|
80
|
+
throw new Error('Invalid core generation provenance');
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=project-files.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-files.js","sourceRoot":"","sources":["../../runtime/delivery/project-files.ts"],"names":[],"mappings":";;;;;AAKA,oBAKC;AACD,oCAaC;AACD,kCAMC;AACD,4BAGC;AACD,gCAEC;AAED,0CAiBC;AAzDD,uFAAuF;AACvF,sDAAyB;AACzB,0DAA6B;AAC7B,yCAAkD;AAElD,SAAgB,IAAI,CAAC,IAAY;IAC/B,IAAI,CAAC;QAAC,OAAO,iBAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAAC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChD,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QACzE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AACD,SAAgB,YAAY,CAAC,IAAY,EAAE,QAAgB,EAAE,OAA6B,MAAM;IAC9F,IAAA,uBAAY,EAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACvC,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,OAAO,GAAG,mBAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,IAAI,IAAI,CAAC,cAAc,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QAC1E,MAAM,IAAI,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,KAAK,MAAM,CAAC;QACvD,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,EAAE,CAAC,CAAC;IACxH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AACD,SAAgB,WAAW,CAAC,aAAqB,EAAE,QAAgB;IACjE,IAAI,OAAO,aAAa,KAAK,QAAQ,IAAI,CAAC,mBAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACjI,MAAM,SAAS,GAAG,iBAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC3F,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC9F,OAAO,IAAI,CAAC;AACd,CAAC;AACD,SAAgB,QAAQ,CAAC,IAAY,EAAE,QAAgB;IACrD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAChE,CAAC;AACD,SAAgB,UAAU,CAAC,IAAY;IACrC,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC,IAAI,MAAM,CAAC,CAAC;AACnE,CAAC;AACD,2EAA2E;AAC3E,SAAgB,eAAe,CAAC,KAAsB;IACpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,qBAAqB,IAAI,MAAM,CAAC,eAAe,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACtM,IAAI,MAAM,CAAC,SAAS,EAAE,IAAI,KAAK,0BAA0B,IAAI,OAAO,MAAM,CAAC,SAAS,EAAE,OAAO,KAAK,QAAQ;WACrG,CAAC,8BAA8B,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC;WAC9D,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACnK,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,KAAK,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IACrG,MAAM,MAAM,GAAG,IAAA,iBAAM,EAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,mCAAmC,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,IAAA,iBAAM,EAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,kCAAkC,CAAC,CAAC;IAClF,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,SAAsB,CAAC;IAC3D,MAAM,QAAQ,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,CAAC,cAAc,EAAE,mBAAmB,EAAE,eAAe,EAAE,GAAG,QAAQ,EAAE,oBAAoB,EAAE,eAAe,CAAC,CAAC;IAC1H,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;WAC/F,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;WAC5E,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM;WAC5C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;WAC3G,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;AAC1J,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { type ProjectNetworkSnapshot } from './protocol';
|
|
3
|
+
export { stat, confinedFile, projectRoot, readFile, coreMarker } from './project-files';
|
|
4
|
+
export declare function parseProjectConfig(source: string): {
|
|
5
|
+
file: ts.SourceFile;
|
|
6
|
+
networks: Map<string, ts.Expression>;
|
|
7
|
+
fields: Map<string, ts.Expression>;
|
|
8
|
+
};
|
|
9
|
+
export declare function projectSourcesDirectory(root: string): string;
|
|
10
|
+
export declare function projectDefaultNetwork(root: string): string;
|
|
11
|
+
/** Read the project-owned definitions without evaluating the config, plugins or HRE. */
|
|
12
|
+
export declare function readProjectNetworkSnapshots(root: string, aliases: string[], env?: NodeJS.ProcessEnv): ProjectNetworkSnapshot[];
|
|
13
|
+
/** Parse one captured project definition without rereading files or evaluating plugins/HRE. */
|
|
14
|
+
export declare function parseProjectNetworkSnapshots(source: string, aliases: string[], env?: NodeJS.ProcessEnv): ProjectNetworkSnapshot[];
|
|
15
|
+
export declare function integratedConfig(source: string): string;
|