@pasosdejesus/contract-test 0.3.5 → 0.3.6
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/dist/solc-parity.d.ts +22 -3
- package/dist/solc-parity.d.ts.map +1 -1
- package/dist/solc-parity.js +64 -4
- package/dist/solc-parity.js.map +1 -1
- package/package.json +3 -2
package/dist/solc-parity.d.ts
CHANGED
|
@@ -5,6 +5,8 @@ export interface CompileSettings {
|
|
|
5
5
|
};
|
|
6
6
|
evmVersion?: string;
|
|
7
7
|
viaIR?: boolean;
|
|
8
|
+
/** e.g. `@openzeppelin/=node_modules/@openzeppelin/` — applied by both compilers. */
|
|
9
|
+
remappings?: string[];
|
|
8
10
|
}
|
|
9
11
|
export interface ContractOutput {
|
|
10
12
|
abi: unknown[];
|
|
@@ -38,15 +40,32 @@ export interface ParityReport {
|
|
|
38
40
|
ok: boolean;
|
|
39
41
|
}
|
|
40
42
|
export interface SolcJs {
|
|
41
|
-
compile(input: string
|
|
43
|
+
compile(input: string, options?: {
|
|
44
|
+
import: (path: string) => SolcJsImport;
|
|
45
|
+
}): string;
|
|
42
46
|
version(): string;
|
|
43
47
|
}
|
|
48
|
+
export interface SolcJsImport {
|
|
49
|
+
contents?: string;
|
|
50
|
+
error?: string;
|
|
51
|
+
}
|
|
52
|
+
export interface SolcJsOptions {
|
|
53
|
+
/** Directories where imports missing from the standard JSON input are looked up. */
|
|
54
|
+
includePaths?: string[];
|
|
55
|
+
}
|
|
56
|
+
export interface NativeOptions {
|
|
57
|
+
/** Extra directories to resolve imports from (base path is already included). */
|
|
58
|
+
includePaths?: string[];
|
|
59
|
+
/** Extra directories the native compiler may read from (remapping targets). */
|
|
60
|
+
allowPaths?: string[];
|
|
61
|
+
}
|
|
44
62
|
/** Removes the CBOR metadata blob Solidity appends to bytecode. */
|
|
45
63
|
export declare function stripMetadata(hex: string): string;
|
|
46
64
|
export declare function standardInput(sources: Record<string, string>, settings?: CompileSettings): string;
|
|
47
65
|
export declare function parseOutput(output: string, version: string): Compiled;
|
|
48
|
-
|
|
49
|
-
export declare function
|
|
66
|
+
/** Without `includePaths`, imports must already be part of the standard JSON input. */
|
|
67
|
+
export declare function compileWithSolcJs(solc: SolcJs, input: string, options?: SolcJsOptions): Compiled;
|
|
68
|
+
export declare function compileWithNative(solcPath: string, input: string, basePath: string, options?: NativeOptions): Compiled;
|
|
50
69
|
/** Compares ABI, selectors, storage layout and (metadata-stripped) bytecode. */
|
|
51
70
|
export declare function compareCompilers(reference: Compiled, candidate: Compiled): ParityReport;
|
|
52
71
|
//# sourceMappingURL=solc-parity.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solc-parity.d.ts","sourceRoot":"","sources":["../src/solc-parity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"solc-parity.d.ts","sourceRoot":"","sources":["../src/solc-parity.ts"],"names":[],"mappings":"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"}
|
package/dist/solc-parity.js
CHANGED
|
@@ -9,6 +9,8 @@
|
|
|
9
9
|
* https://gitlab.com/pasosdeJesus/m/-/work_items/58
|
|
10
10
|
*/
|
|
11
11
|
import { spawnSync } from 'child_process';
|
|
12
|
+
import { existsSync, readdirSync, readFileSync, realpathSync } from 'node:fs';
|
|
13
|
+
import { isAbsolute, join } from 'node:path';
|
|
12
14
|
function normalizeHex(value) {
|
|
13
15
|
const raw = value.startsWith('0x') ? value.slice(2) : value;
|
|
14
16
|
return `0x${raw.toLowerCase()}`;
|
|
@@ -45,6 +47,7 @@ export function standardInput(sources, settings = {}) {
|
|
|
45
47
|
optimizer: { enabled: settings.optimizer?.enabled ?? false, runs: settings.optimizer?.runs ?? 200 },
|
|
46
48
|
...(settings.evmVersion ? { evmVersion: settings.evmVersion } : {}),
|
|
47
49
|
...(settings.viaIR ? { viaIR: true } : {}),
|
|
50
|
+
...(settings.remappings && settings.remappings.length > 0 ? { remappings: settings.remappings } : {}),
|
|
48
51
|
outputSelection: {
|
|
49
52
|
'*': {
|
|
50
53
|
'*': [
|
|
@@ -84,10 +87,54 @@ export function parseOutput(output, version) {
|
|
|
84
87
|
warnings: diagnostics.filter((entry) => entry.severity === 'warning').map((entry) => entry.formattedMessage),
|
|
85
88
|
};
|
|
86
89
|
}
|
|
87
|
-
|
|
88
|
-
|
|
90
|
+
function allowPathVariants(dir) {
|
|
91
|
+
const variants = [dir];
|
|
92
|
+
try {
|
|
93
|
+
variants.push(realpathSync(dir));
|
|
94
|
+
}
|
|
95
|
+
catch {
|
|
96
|
+
return variants;
|
|
97
|
+
}
|
|
98
|
+
// pnpm links each package (`node_modules/@openzeppelin/contracts`) into the
|
|
99
|
+
// store, and solc checks the resolved path, so the real location of the
|
|
100
|
+
// symlinked entries one level down has to be allowed as well.
|
|
101
|
+
try {
|
|
102
|
+
for (const entry of readdirSync(dir, { withFileTypes: true })) {
|
|
103
|
+
if (!entry.isSymbolicLink())
|
|
104
|
+
continue;
|
|
105
|
+
try {
|
|
106
|
+
variants.push(realpathSync(join(dir, entry.name)));
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
// dangling link
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
// not a directory
|
|
115
|
+
}
|
|
116
|
+
return variants;
|
|
117
|
+
}
|
|
118
|
+
function importLoader(includePaths) {
|
|
119
|
+
return (importPath) => {
|
|
120
|
+
const candidates = isAbsolute(importPath)
|
|
121
|
+
? [importPath]
|
|
122
|
+
: includePaths.map((dir) => join(dir, importPath));
|
|
123
|
+
for (const candidate of candidates) {
|
|
124
|
+
if (existsSync(candidate))
|
|
125
|
+
return { contents: readFileSync(candidate, 'utf-8') };
|
|
126
|
+
}
|
|
127
|
+
return { error: `File not found: ${importPath} (looked in ${candidates.join(', ')})` };
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
/** Without `includePaths`, imports must already be part of the standard JSON input. */
|
|
131
|
+
export function compileWithSolcJs(solc, input, options = {}) {
|
|
132
|
+
const includePaths = options.includePaths ?? [];
|
|
133
|
+
if (includePaths.length === 0)
|
|
134
|
+
return parseOutput(solc.compile(input), solc.version());
|
|
135
|
+
return parseOutput(solc.compile(input, { import: importLoader(includePaths) }), solc.version());
|
|
89
136
|
}
|
|
90
|
-
export function compileWithNative(solcPath, input, basePath) {
|
|
137
|
+
export function compileWithNative(solcPath, input, basePath, options = {}) {
|
|
91
138
|
const versionRun = spawnSync(solcPath, ['--version'], { encoding: 'utf-8' });
|
|
92
139
|
const version = (versionRun.stdout ?? '')
|
|
93
140
|
.split('\n')
|
|
@@ -95,7 +142,20 @@ export function compileWithNative(solcPath, input, basePath) {
|
|
|
95
142
|
?.replace(/.*Version:\s*/, '')
|
|
96
143
|
.split('.Emscripten')[0]
|
|
97
144
|
.trim() ?? 'unknown';
|
|
98
|
-
|
|
145
|
+
// The base path already resolves relative imports; listing it again in
|
|
146
|
+
// `--include-path`/`--allow-paths` makes solc see the same file twice and fail
|
|
147
|
+
// with "Ambiguous import". pnpm's `node_modules` is a symlink farm, and solc
|
|
148
|
+
// checks the resolved path, so each allowed directory is also allowed at its
|
|
149
|
+
// real location.
|
|
150
|
+
const onlyOutsideBase = (dirs = []) => [...new Set(dirs)].filter((dir) => dir !== basePath);
|
|
151
|
+
const allowPaths = [...new Set(onlyOutsideBase(options.allowPaths).flatMap(allowPathVariants))];
|
|
152
|
+
const includePaths = onlyOutsideBase(options.includePaths);
|
|
153
|
+
const args = ['--standard-json', '--base-path', basePath];
|
|
154
|
+
if (includePaths.length > 0)
|
|
155
|
+
args.push('--include-path', includePaths.join(','));
|
|
156
|
+
if (allowPaths.length > 0)
|
|
157
|
+
args.push('--allow-paths', allowPaths.join(','));
|
|
158
|
+
const run = spawnSync(solcPath, args, { input, encoding: 'utf-8', maxBuffer: 200 * 1024 * 1024 });
|
|
99
159
|
if (!run.stdout)
|
|
100
160
|
throw new Error(run.stderr || `solc exited with ${run.status}`);
|
|
101
161
|
return parseOutput(run.stdout, version);
|
package/dist/solc-parity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solc-parity.js","sourceRoot":"","sources":["../src/solc-parity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"solc-parity.js","sourceRoot":"","sources":["../src/solc-parity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAmE5C,SAAS,YAAY,CAAC,KAAa;IACjC,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IAC3D,OAAO,KAAK,GAAG,CAAC,WAAW,EAAE,EAAE,CAAA;AACjC,CAAC;AAED,SAAS,MAAM,CAAC,KAAc;IAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IACnE,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC;aAC7D,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;aACtC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACjE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IACjC,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IACrD,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,CAAA;IACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC1C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,GAAG,CAAA;IACxC,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;IAC9B,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM;QAAE,OAAO,GAAG,CAAA;IAClC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAA+B,EAAE,WAA4B,EAAE;IAC3F,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QAClG,QAAQ,EAAE;YACR,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,SAAS,EAAE,OAAO,IAAI,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,SAAS,EAAE,IAAI,IAAI,GAAG,EAAE;YACnG,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1C,GAAG,CAAC,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrG,eAAe,EAAE;gBACf,GAAG,EAAE;oBACH,GAAG,EAAE;wBACH,KAAK;wBACL,uBAAuB;wBACvB,qBAAqB;wBACrB,6BAA6B;wBAC7B,6BAA6B;wBAC7B,qCAAqC;wBACrC,eAAe;wBACf,UAAU;qBACX;iBACF;aACF;SACF;KACF,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,OAAe;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,SAAS,GAAmC,EAAE,CAAA;IACpD,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAwC,CAAC,EAAE,CAAC;QAC9G,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,SAAS,CAAC,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC,GAAG;gBAC/B,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE;gBACnB,iBAAiB,EAAE,IAAI,CAAC,GAAG,EAAE,iBAAiB,IAAI,EAAE;gBACpD,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,IAAI,EAAE,CAAC;gBACxD,gBAAgB,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,IAAI,EAAE,CAAC;aACzE,CAAA;QACH,CAAC;IACH,CAAC;IACD,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAA0D,CAAA;IAClG,OAAO;QACL,OAAO;QACP,SAAS;QACT,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC;QACxG,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC;KAC7G,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAA;IACtB,IAAI,CAAC;QACH,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAA;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAA;IACjB,CAAC;IACD,4EAA4E;IAC5E,wEAAwE;IACxE,8DAA8D;IAC9D,IAAI,CAAC;QACH,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE;gBAAE,SAAQ;YACrC,IAAI,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACpD,CAAC;YAAC,MAAM,CAAC;gBACP,gBAAgB;YAClB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,kBAAkB;IACpB,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,YAA+B;IACnD,OAAO,CAAC,UAAkB,EAAE,EAAE;QAC5B,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;YACvC,CAAC,CAAC,CAAC,UAAU,CAAC;YACd,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAA;QACpD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,UAAU,CAAC,SAAS,CAAC;gBAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAA;QAClF,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,mBAAmB,UAAU,eAAe,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;IACxF,CAAC,CAAA;AACH,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,KAAa,EAAE,UAAyB,EAAE;IACxF,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAA;IAC/C,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;IACtF,OAAO,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;AACjG,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,QAAgB,EAChB,KAAa,EACb,QAAgB,EAChB,UAAyB,EAAE;IAE3B,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;IAC5E,MAAM,OAAO,GAAG,CAAC,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC;SACtC,KAAK,CAAC,IAAI,CAAC;SACX,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC1C,EAAE,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC;SAC7B,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;SACvB,IAAI,EAAE,IAAI,SAAS,CAAA;IAEtB,uEAAuE;IACvE,+EAA+E;IAC/E,6EAA6E;IAC7E,6EAA6E;IAC7E,iBAAiB;IACjB,MAAM,eAAe,GAAG,CAAC,OAA0B,EAAE,EAAE,EAAE,CACvD,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAA;IACtD,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAA;IAC/F,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;IAC1D,MAAM,IAAI,GAAG,CAAC,iBAAiB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;IACzD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;QAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IAChF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;QAAE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;IAC3E,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC,CAAA;IACjG,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,IAAI,oBAAoB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;IAChF,OAAO,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AACzC,CAAC;AAED,SAAS,cAAc,CAAC,SAAiB,EAAE,SAAiB;IAC1D,MAAM,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACrE,MAAM,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACrE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAC9C,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACjD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrE,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC;YAAE,SAAS,EAAE,CAAA;IAC1E,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;AAC7B,CAAC;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,SAAyB,EAAE,SAAqC;IACrG,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,KAAK;YACf,cAAc,EAAE,KAAK;YACrB,YAAY,EAAE,KAAK;YACnB,aAAa,EAAE,KAAK;YACpB,aAAa,EAAE,KAAK;YACpB,sBAAsB,EAAE,CAAC;YACzB,kBAAkB,EAAE,CAAC;YACrB,kBAAkB,EAAE,IAAI;SACzB,CAAA;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,cAAc,CAAC,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAA;IACrH,OAAO;QACL,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC;QACzD,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,iBAAiB,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC,iBAAiB,CAAC;QAC3F,YAAY,EAAE,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC;QACjF,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC;QACtF,aAAa,EAAE,QAAQ,CAAC,SAAS,KAAK,CAAC;QACvC,sBAAsB,EAAE,QAAQ,CAAC,SAAS;QAC1C,kBAAkB,EAAE,QAAQ,CAAC,KAAK;QAClC,kBAAkB,EAAE,KAAK;KAC1B,CAAA;AACH,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,gBAAgB,CAAC,SAAmB,EAAE,SAAmB;IACvE,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAC7G,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAClH,OAAO;QACL,gBAAgB,EAAE,SAAS,CAAC,OAAO;QACnC,gBAAgB,EAAE,SAAS,CAAC,OAAO;QACnC,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAChF,SAAS;QACT,EAAE,EACA,SAAS,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAC7B,SAAS,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAC7B,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,YAAY,CAAC;KAC3F,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pasosdejesus/contract-test",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.6",
|
|
4
4
|
"description": "Hardhat test runner for OpenBSD — Mocha + @ethereumjs/vm EDR fallback",
|
|
5
5
|
"mEngine": true,
|
|
6
6
|
"author": "",
|
|
@@ -32,11 +32,12 @@
|
|
|
32
32
|
"solc": "0.8.26"
|
|
33
33
|
},
|
|
34
34
|
"peerDependencies": {
|
|
35
|
-
"@pasosdejesus/m": "^0.37.
|
|
35
|
+
"@pasosdejesus/m": "^0.37.15",
|
|
36
36
|
"ethers": "^6",
|
|
37
37
|
"viem": "^2"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
+
"@openzeppelin/contracts": "^5.4.0",
|
|
40
41
|
"@types/mocha": "^10.0.10",
|
|
41
42
|
"@types/node": "^20.19.41",
|
|
42
43
|
"solc037": "npm:solc@0.8.37",
|