@0xsequence/catapult 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -0
- package/dist/lib/__tests__/network-loader.spec.js.map +1 -1
- package/dist/lib/core/__tests__/resolver.spec.js +22 -0
- package/dist/lib/core/__tests__/resolver.spec.js.map +1 -1
- package/dist/lib/core/__tests__/sign-actions.spec.d.ts +2 -0
- package/dist/lib/core/__tests__/sign-actions.spec.d.ts.map +1 -0
- package/dist/lib/core/__tests__/sign-actions.spec.js +128 -0
- package/dist/lib/core/__tests__/sign-actions.spec.js.map +1 -0
- package/dist/lib/core/__tests__/signer.spec.d.ts +2 -0
- package/dist/lib/core/__tests__/signer.spec.d.ts.map +1 -0
- package/dist/lib/core/__tests__/signer.spec.js +40 -0
- package/dist/lib/core/__tests__/signer.spec.js.map +1 -0
- package/dist/lib/core/context.d.ts +3 -2
- package/dist/lib/core/context.d.ts.map +1 -1
- package/dist/lib/core/context.js +3 -2
- package/dist/lib/core/context.js.map +1 -1
- package/dist/lib/core/engine.d.ts +4 -0
- package/dist/lib/core/engine.d.ts.map +1 -1
- package/dist/lib/core/engine.js +173 -0
- package/dist/lib/core/engine.js.map +1 -1
- package/dist/lib/core/signer.d.ts +7 -0
- package/dist/lib/core/signer.d.ts.map +1 -0
- package/dist/lib/core/signer.js +60 -0
- package/dist/lib/core/signer.js.map +1 -0
- package/dist/lib/parsers/__tests__/source.spec.js +37 -0
- package/dist/lib/parsers/__tests__/source.spec.js.map +1 -1
- package/dist/lib/parsers/source.js +1 -1
- package/dist/lib/parsers/source.js.map +1 -1
- package/dist/lib/provenance.js +51 -2
- package/dist/lib/provenance.js.map +1 -1
- package/dist/lib/types/actions.d.ts +26 -2
- package/dist/lib/types/actions.d.ts.map +1 -1
- package/dist/lib/types/actions.js +3 -0
- package/dist/lib/types/actions.js.map +1 -1
- package/dist/lib/types/source.d.ts +2 -0
- package/dist/lib/types/source.d.ts.map +1 -1
- package/package.json +4 -1
- package/.eslintrc.json +0 -29
- package/.github/workflows/ci.yml +0 -181
- package/CONCEPT.md +0 -24
- package/contracts/checked-call.huff +0 -65
- package/eslint.config.js +0 -48
- package/examples/jobs/guards-v1.yaml +0 -17
- package/examples/jobs/sequence-seq-0001-patch.yaml +0 -59
- package/examples/jobs/sequence-v1.yaml +0 -59
- package/examples/templates/sequence-factory-v1.yaml +0 -56
- package/jest.config.js +0 -25
- package/src/cli.ts +0 -18
- package/src/commands/common.ts +0 -61
- package/src/commands/dry.ts +0 -209
- package/src/commands/etherscan.ts +0 -360
- package/src/commands/index.ts +0 -6
- package/src/commands/list.ts +0 -262
- package/src/commands/provenance.ts +0 -120
- package/src/commands/run.ts +0 -146
- package/src/commands/utils.ts +0 -215
- package/src/index.ts +0 -67
- package/src/lib/__tests__/deployer-events.spec.ts +0 -338
- package/src/lib/__tests__/deployer.spec.ts +0 -2269
- package/src/lib/__tests__/network-loader.spec.ts +0 -150
- package/src/lib/__tests__/network-selection.spec.ts +0 -41
- package/src/lib/__tests__/network-utils.spec.ts +0 -230
- package/src/lib/__tests__/provenance.spec.ts +0 -208
- package/src/lib/artifacts/__tests__/fixtures/contract1.json +0 -19
- package/src/lib/artifacts/__tests__/fixtures/contract2.json +0 -19
- package/src/lib/artifacts/__tests__/fixtures/duplicate-name.json +0 -19
- package/src/lib/artifacts/__tests__/fixtures/nested/nested-contract.json +0 -18
- package/src/lib/artifacts/__tests__/fixtures/not-an-artifact.json +0 -8
- package/src/lib/artifacts/__tests__/fixtures/readme.txt +0 -2
- package/src/lib/contracts/__tests__/repository.spec.ts +0 -612
- package/src/lib/contracts/repository.ts +0 -411
- package/src/lib/core/__tests__/assert-action.spec.ts +0 -474
- package/src/lib/core/__tests__/context.spec.ts +0 -37
- package/src/lib/core/__tests__/engine.spec.ts +0 -2005
- package/src/lib/core/__tests__/graph.spec.ts +0 -125
- package/src/lib/core/__tests__/json-integration.spec.ts +0 -425
- package/src/lib/core/__tests__/loader.spec.ts +0 -367
- package/src/lib/core/__tests__/multi-platform-verification.spec.ts +0 -406
- package/src/lib/core/__tests__/resolver.spec.ts +0 -2496
- package/src/lib/core/__tests__/static-action.spec.ts +0 -172
- package/src/lib/core/context.ts +0 -127
- package/src/lib/core/engine.ts +0 -1834
- package/src/lib/core/graph.ts +0 -252
- package/src/lib/core/loader.ts +0 -253
- package/src/lib/core/resolver.ts +0 -873
- package/src/lib/deployer.ts +0 -1005
- package/src/lib/events/__tests__/event-system.spec.ts +0 -392
- package/src/lib/events/cli-adapter.ts +0 -369
- package/src/lib/events/emitter.ts +0 -62
- package/src/lib/events/index.ts +0 -3
- package/src/lib/events/types.ts +0 -520
- package/src/lib/index.ts +0 -17
- package/src/lib/network-loader.ts +0 -90
- package/src/lib/network-selection.ts +0 -73
- package/src/lib/network-utils.ts +0 -64
- package/src/lib/parsers/__tests__/buildinfo.spec.ts +0 -122
- package/src/lib/parsers/__tests__/fixtures/buildinfo/invalid-bytecode-buildinfo.json +0 -62
- package/src/lib/parsers/__tests__/fixtures/buildinfo/invalid-json.txt +0 -2
- package/src/lib/parsers/__tests__/fixtures/buildinfo/multi-contract-buildinfo.json +0 -89
- package/src/lib/parsers/__tests__/fixtures/buildinfo/no-contracts-buildinfo.json +0 -17
- package/src/lib/parsers/__tests__/fixtures/buildinfo/simple-buildinfo.json +0 -63
- package/src/lib/parsers/__tests__/fixtures/buildinfo/wrong-format.json +0 -4
- package/src/lib/parsers/__tests__/job.spec.ts +0 -439
- package/src/lib/parsers/__tests__/source.spec.ts +0 -134
- package/src/lib/parsers/__tests__/template.spec.ts +0 -111
- package/src/lib/parsers/artifact/__tests__/artifact.spec.ts +0 -117
- package/src/lib/parsers/artifact/__tests__/fixtures/empty-bytecode.json +0 -5
- package/src/lib/parsers/artifact/__tests__/fixtures/hardhat-artifact.json +0 -67
- package/src/lib/parsers/artifact/__tests__/fixtures/invalid-bytecode.json +0 -5
- package/src/lib/parsers/artifact/__tests__/fixtures/invalid-json.txt +0 -11
- package/src/lib/parsers/artifact/__tests__/fixtures/minimal-artifact.json +0 -5
- package/src/lib/parsers/artifact/__tests__/fixtures/missing-abi.json +0 -4
- package/src/lib/parsers/artifact/__tests__/fixtures/missing-bytecode.json +0 -11
- package/src/lib/parsers/artifact/__tests__/fixtures/missing-contract-name.json +0 -11
- package/src/lib/parsers/artifact/__tests__/fixtures/simple-artifact.json +0 -40
- package/src/lib/parsers/artifact/__tests__/fixtures/wrong-types.json +0 -7
- package/src/lib/parsers/artifact/foundry-1.2.ts +0 -72
- package/src/lib/parsers/artifact/index.ts +0 -27
- package/src/lib/parsers/artifact/types.ts +0 -9
- package/src/lib/parsers/buildinfo.ts +0 -127
- package/src/lib/parsers/constants.ts +0 -56
- package/src/lib/parsers/index.ts +0 -6
- package/src/lib/parsers/job.ts +0 -160
- package/src/lib/parsers/source.ts +0 -129
- package/src/lib/parsers/template.ts +0 -135
- package/src/lib/provenance.ts +0 -785
- package/src/lib/std/templates/arachnid-deterministic-deployment-proxy.yaml +0 -68
- package/src/lib/std/templates/assured-deployment.yaml +0 -46
- package/src/lib/std/templates/era-evm-predeploy.yaml +0 -35
- package/src/lib/std/templates/erc-2470.yaml +0 -70
- package/src/lib/std/templates/min-balance.yaml +0 -35
- package/src/lib/std/templates/nano-universal-deployer.yaml +0 -61
- package/src/lib/std/templates/raw-erc-2470.yaml +0 -62
- package/src/lib/std/templates/raw-nano-universal-deployer.yaml +0 -54
- package/src/lib/std/templates/raw-sequence-universal-deployer-2.yaml +0 -52
- package/src/lib/std/templates/sequence-universal-deployer-2.yaml +0 -61
- package/src/lib/types/__tests__/json-request-action.spec.ts +0 -243
- package/src/lib/types/__tests__/read-json-value.spec.ts +0 -278
- package/src/lib/types/__tests__/resolve-json-value.spec.ts +0 -769
- package/src/lib/types/actions.ts +0 -148
- package/src/lib/types/artifacts.ts +0 -21
- package/src/lib/types/buildinfo.ts +0 -116
- package/src/lib/types/conditions.ts +0 -50
- package/src/lib/types/contracts.ts +0 -26
- package/src/lib/types/definitions.ts +0 -77
- package/src/lib/types/index.ts +0 -9
- package/src/lib/types/network.ts +0 -33
- package/src/lib/types/project.ts +0 -9
- package/src/lib/types/source.ts +0 -26
- package/src/lib/types/task.ts +0 -9
- package/src/lib/types/values.ts +0 -221
- package/src/lib/utils/assertion.ts +0 -24
- package/src/lib/utils/validation.ts +0 -116
- package/src/lib/validation/contract-references.ts +0 -210
- package/src/lib/validation/index.ts +0 -1
- package/src/lib/verification/__tests__/etherscan.spec.ts +0 -710
- package/src/lib/verification/__tests__/sourcify.spec.ts +0 -288
- package/src/lib/verification/etherscan.ts +0 -547
- package/src/lib/verification/sourcify.ts +0 -248
- package/test_validation/artifacts/TestContract.json +0 -9
- package/test_validation/jobs/test-missing.yaml +0 -16
- package/test_validation/networks.yaml +0 -3
- package/tsconfig.json +0 -36
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
import { Network } from '../types/network'
|
|
2
|
-
import { VerificationPlatform, VerificationRequest, VerificationResult } from './etherscan'
|
|
3
|
-
|
|
4
|
-
export class SourcifyVerificationPlatform implements VerificationPlatform {
|
|
5
|
-
readonly name = 'sourcify'
|
|
6
|
-
|
|
7
|
-
supportsNetwork(network: Network): boolean {
|
|
8
|
-
// Only support networks that explicitly include this platform in their supports list
|
|
9
|
-
return Array.isArray(network.supports) && network.supports.includes(this.name)
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
isConfigured(): boolean {
|
|
13
|
-
// Sourcify requires no configuration
|
|
14
|
-
return true
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
getConfigurationRequirements(): string {
|
|
18
|
-
return 'Sourcify requires no configuration'
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
async isContractAlreadyVerified(address: string, network: Network): Promise<boolean> {
|
|
22
|
-
try {
|
|
23
|
-
const response = await fetch(
|
|
24
|
-
`https://sourcify.dev/server/check-by-addresses?addresses=${address}&chainIds=${network.chainId}`,
|
|
25
|
-
{
|
|
26
|
-
method: 'GET',
|
|
27
|
-
signal: AbortSignal.timeout(15000), // 15 second timeout
|
|
28
|
-
}
|
|
29
|
-
)
|
|
30
|
-
|
|
31
|
-
if (!response.ok) {
|
|
32
|
-
return false
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
const data = await response.json()
|
|
36
|
-
|
|
37
|
-
// Check if the contract is verified (perfect or partial match)
|
|
38
|
-
return Array.isArray(data) && data.some(item =>
|
|
39
|
-
item.address?.toLowerCase() === address.toLowerCase() &&
|
|
40
|
-
item.chainId === network.chainId.toString() &&
|
|
41
|
-
(item.status === 'perfect' || item.status === 'partial')
|
|
42
|
-
)
|
|
43
|
-
} catch (error) {
|
|
44
|
-
// If we can't determine the verification status, assume it's not verified
|
|
45
|
-
console.warn(`Failed to check Sourcify verification status for ${address}: ${error instanceof Error ? error.message : String(error)}`)
|
|
46
|
-
return false
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
async verifyContract(request: VerificationRequest): Promise<VerificationResult> {
|
|
51
|
-
const { contract, buildInfo, address, network } = request
|
|
52
|
-
|
|
53
|
-
// First check if it's already verified
|
|
54
|
-
const alreadyVerified = await this.isContractAlreadyVerified(address, network)
|
|
55
|
-
if (alreadyVerified) {
|
|
56
|
-
return {
|
|
57
|
-
success: true,
|
|
58
|
-
message: 'Contract was already verified on Sourcify (checked before attempting verification)',
|
|
59
|
-
isAlreadyVerified: true
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
try {
|
|
64
|
-
// Extract metadata and source files
|
|
65
|
-
const { metadata, sourceFiles } = await this.createVerificationData(contract, buildInfo)
|
|
66
|
-
|
|
67
|
-
// Use web standard FormData instead of node form-data package
|
|
68
|
-
const formData = new FormData()
|
|
69
|
-
|
|
70
|
-
formData.append('address', address)
|
|
71
|
-
formData.append('chain', network.chainId.toString())
|
|
72
|
-
|
|
73
|
-
// Upload files individually to Sourcify
|
|
74
|
-
// First add the metadata.json
|
|
75
|
-
const metadataJson = JSON.stringify(metadata, null, 2)
|
|
76
|
-
const metadataBlob = new Blob([metadataJson], { type: 'application/json' })
|
|
77
|
-
formData.append('files', metadataBlob, 'metadata.json')
|
|
78
|
-
|
|
79
|
-
// Add each source file individually
|
|
80
|
-
for (const [sourcePath, sourceContent] of sourceFiles) {
|
|
81
|
-
const sourceBlob = new Blob([sourceContent], { type: 'text/plain' })
|
|
82
|
-
formData.append('files', sourceBlob, sourcePath)
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
const response = await fetch('https://sourcify.dev/server/verify', {
|
|
86
|
-
method: 'POST',
|
|
87
|
-
body: formData,
|
|
88
|
-
signal: AbortSignal.timeout(60000), // 60 second timeout for verification
|
|
89
|
-
})
|
|
90
|
-
|
|
91
|
-
if (!response.ok) {
|
|
92
|
-
let responseText = ''
|
|
93
|
-
try {
|
|
94
|
-
responseText = await response.text()
|
|
95
|
-
} catch {
|
|
96
|
-
// ignore
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
// Treat partial verification conflicts as a non-error notice
|
|
100
|
-
if (response.status === 409) {
|
|
101
|
-
const lower = `${response.statusText} ${responseText}`.toLowerCase()
|
|
102
|
-
if (
|
|
103
|
-
lower.includes('already partially verified') ||
|
|
104
|
-
lower.includes('partial match') ||
|
|
105
|
-
lower.includes('partial')
|
|
106
|
-
) {
|
|
107
|
-
return {
|
|
108
|
-
success: true,
|
|
109
|
-
message: 'Contract already partially verified on Sourcify (no further action needed)',
|
|
110
|
-
isAlreadyVerified: true
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
let errorDetails = `HTTP ${response.status}: ${response.statusText}`
|
|
116
|
-
if (responseText) {
|
|
117
|
-
errorDetails += ` - ${responseText}`
|
|
118
|
-
}
|
|
119
|
-
return {
|
|
120
|
-
success: false,
|
|
121
|
-
message: `Sourcify API request failed: ${errorDetails}`
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
const result = await response.json() as any
|
|
126
|
-
|
|
127
|
-
// Check for different response formats
|
|
128
|
-
if (result.result && Array.isArray(result.result)) {
|
|
129
|
-
// Array response format - check if any items have perfect/partial status
|
|
130
|
-
const perfectMatch = result.result.find((item: any) => item.status === 'perfect')
|
|
131
|
-
const partialMatch = result.result.find((item: any) => item.status === 'partial')
|
|
132
|
-
|
|
133
|
-
if (perfectMatch || partialMatch) {
|
|
134
|
-
const matchType = perfectMatch ? 'perfect' : 'partial'
|
|
135
|
-
return {
|
|
136
|
-
success: true,
|
|
137
|
-
message: `Contract verified successfully on Sourcify (${matchType} match)`
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
return {
|
|
142
|
-
success: false,
|
|
143
|
-
message: 'Sourcify verification failed - no perfect or partial match found'
|
|
144
|
-
}
|
|
145
|
-
} else if (result.status) {
|
|
146
|
-
// Single object response format
|
|
147
|
-
if (result.status === 'perfect' || result.status === 'partial') {
|
|
148
|
-
return {
|
|
149
|
-
success: true,
|
|
150
|
-
message: `Contract verified successfully on Sourcify (status: ${result.status})`
|
|
151
|
-
}
|
|
152
|
-
} else if (result.status === 'error') {
|
|
153
|
-
return {
|
|
154
|
-
success: false,
|
|
155
|
-
message: result.message || 'Sourcify verification failed with unknown error'
|
|
156
|
-
}
|
|
157
|
-
} else {
|
|
158
|
-
return {
|
|
159
|
-
success: false,
|
|
160
|
-
message: `Sourcify verification failed with status: ${result.status}`
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
} else {
|
|
164
|
-
// Unknown response format
|
|
165
|
-
return {
|
|
166
|
-
success: false,
|
|
167
|
-
message: `Sourcify verification failed - unexpected response format: ${JSON.stringify(result)}`
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
} catch (error) {
|
|
171
|
-
return {
|
|
172
|
-
success: false,
|
|
173
|
-
message: `Sourcify verification failed: ${error instanceof Error ? error.message : String(error)}`
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
private async createVerificationData(contract: any, buildInfo: any): Promise<{
|
|
179
|
-
metadata: any,
|
|
180
|
-
sourceFiles: Array<[string, string]>
|
|
181
|
-
}> {
|
|
182
|
-
// Extract source files from the build info
|
|
183
|
-
const sourceFiles: Array<[string, string]> = []
|
|
184
|
-
for (const [sourcePath, sourceInfo] of Object.entries(buildInfo.input.sources) as [string, any][]) {
|
|
185
|
-
if (sourceInfo.content) {
|
|
186
|
-
sourceFiles.push([sourcePath, sourceInfo.content])
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
// Try to find metadata from the contract's artifact if available
|
|
191
|
-
let metadata = null
|
|
192
|
-
|
|
193
|
-
// First, try to get metadata from the contract's artifact file
|
|
194
|
-
try {
|
|
195
|
-
// Look for artifact file in contract sources (convert Set to Array)
|
|
196
|
-
const sources = Array.from(contract._sources) as string[]
|
|
197
|
-
const artifactPath = sources.find((source) =>
|
|
198
|
-
source.includes('/artifacts/') && source.endsWith('.json') && !source.includes('/build-info/')
|
|
199
|
-
)
|
|
200
|
-
|
|
201
|
-
if (artifactPath) {
|
|
202
|
-
const fs = await import('fs/promises')
|
|
203
|
-
const artifactContent = await fs.readFile(artifactPath, 'utf-8')
|
|
204
|
-
const artifact = JSON.parse(artifactContent)
|
|
205
|
-
|
|
206
|
-
// Use rawMetadata if available (it's a JSON string)
|
|
207
|
-
if (artifact.rawMetadata) {
|
|
208
|
-
metadata = JSON.parse(artifact.rawMetadata)
|
|
209
|
-
} else if (artifact.metadata) {
|
|
210
|
-
metadata = artifact.metadata
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
} catch (error) {
|
|
214
|
-
console.warn(`Failed to load artifact metadata: ${error instanceof Error ? error.message : String(error)}`)
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
// Fallback: look for metadata in the build info output
|
|
218
|
-
if (!metadata && buildInfo.output?.contracts?.[contract.sourceName]?.[contract.contractName]?.metadata) {
|
|
219
|
-
const metadataField = buildInfo.output.contracts[contract.sourceName][contract.contractName].metadata
|
|
220
|
-
metadata = typeof metadataField === 'string' ? JSON.parse(metadataField) : metadataField
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
// Last resort fallback: create basic metadata from the input
|
|
224
|
-
if (!metadata) {
|
|
225
|
-
metadata = {
|
|
226
|
-
compiler: {
|
|
227
|
-
version: buildInfo.solcLongVersion || buildInfo.solcVersion
|
|
228
|
-
},
|
|
229
|
-
language: buildInfo.input.language,
|
|
230
|
-
output: {
|
|
231
|
-
abi: buildInfo.output?.contracts?.[contract.sourceName]?.[contract.contractName]?.abi || [],
|
|
232
|
-
devdoc: { kind: 'dev', methods: {}, version: 1 },
|
|
233
|
-
userdoc: { kind: 'user', methods: {}, version: 1 }
|
|
234
|
-
},
|
|
235
|
-
settings: buildInfo.input.settings,
|
|
236
|
-
sources: buildInfo.input.sources,
|
|
237
|
-
version: 1
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
// Validation: ensure metadata has compilation target
|
|
242
|
-
if (!metadata?.settings?.compilationTarget) {
|
|
243
|
-
console.warn('Warning: Metadata missing compilation target')
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
return { metadata, sourceFiles }
|
|
247
|
-
}
|
|
248
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"abi": [],
|
|
3
|
-
"bytecode": {
|
|
4
|
-
"object": "0x608060405234801561001057600080fd5b50600160008190555050607c8061002760003960006000f3fe"
|
|
5
|
-
},
|
|
6
|
-
"deployedBytecode": {
|
|
7
|
-
"object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80638da5cb5b14610044575b36600b57005b600080fd5b61005c600480360381019061005791906100a1565b610062565b005b600080fd5b6000813590506100da81610099565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680610128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161011f906101c4565b60405180910390fd5b5080910390565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060405190508061014e82610131565b8091505090565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b82818337600083901b82529050565b600060208284031215610178576101776100c7565b5b60006101868482850161007c565b91505092915050565b7f537472696e67206d757374206265206e6f6e2d656d7074790000000000000000600082015250565b60006101c560198361021f565b91506101d08261018f565b6020820190509190565b60006020820190508181036000830152610203816101bf565b9050919050565b600082825260208201905092915050565b5050565b565b005b00fea264697066735822122013e4c7c9dd8f5cc6c8b78b5e5b5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e64736f6c634300081e0033"
|
|
8
|
-
}
|
|
9
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
name: "test-missing"
|
|
2
|
-
version: "1.0.0"
|
|
3
|
-
description: "Test job that references a non-existent contract"
|
|
4
|
-
|
|
5
|
-
actions:
|
|
6
|
-
- name: "deploy-valid"
|
|
7
|
-
template: "sequence-universal-deployer-2"
|
|
8
|
-
arguments:
|
|
9
|
-
creationCode: "{{Contract(TestContract).creationCode}}"
|
|
10
|
-
salt: "0"
|
|
11
|
-
|
|
12
|
-
- name: "deploy-missing"
|
|
13
|
-
template: "sequence-universal-deployer-2"
|
|
14
|
-
arguments:
|
|
15
|
-
creationCode: "{{Contract(NonExistentContract).creationCode}}"
|
|
16
|
-
salt: "0"
|
package/tsconfig.json
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"target": "ES2020",
|
|
4
|
-
"module": "commonjs",
|
|
5
|
-
"lib": ["ES2020"],
|
|
6
|
-
"outDir": "./dist",
|
|
7
|
-
"rootDir": "./src",
|
|
8
|
-
"strict": true,
|
|
9
|
-
"esModuleInterop": true,
|
|
10
|
-
"skipLibCheck": true,
|
|
11
|
-
"forceConsistentCasingInFileNames": true,
|
|
12
|
-
"declaration": true,
|
|
13
|
-
"declarationMap": true,
|
|
14
|
-
"sourceMap": true,
|
|
15
|
-
"removeComments": true,
|
|
16
|
-
"noImplicitAny": true,
|
|
17
|
-
"strictNullChecks": true,
|
|
18
|
-
"strictFunctionTypes": true,
|
|
19
|
-
"noImplicitThis": true,
|
|
20
|
-
"noImplicitReturns": true,
|
|
21
|
-
"noFallthroughCasesInSwitch": true,
|
|
22
|
-
"moduleResolution": "node",
|
|
23
|
-
"allowSyntheticDefaultImports": true,
|
|
24
|
-
"experimentalDecorators": true,
|
|
25
|
-
"emitDecoratorMetadata": true,
|
|
26
|
-
"resolveJsonModule": true
|
|
27
|
-
},
|
|
28
|
-
"include": [
|
|
29
|
-
"src/**/*"
|
|
30
|
-
],
|
|
31
|
-
"exclude": [
|
|
32
|
-
"node_modules",
|
|
33
|
-
"dist",
|
|
34
|
-
"**/*.test.ts"
|
|
35
|
-
]
|
|
36
|
-
}
|