solc-typed-ast 8.0.0 → 8.0.1

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.
@@ -1,11 +1,9 @@
1
1
  import { ImportResolver, Remapping } from "..";
2
- export declare function normalizeImportPath(path: string): string;
3
2
  /**
4
- * Given a partial map `files` from file names to file contents, a list of
5
- * `remappings` and a list of `ImportResolver`s `resolvers`, find and return all
6
- * ADDITIONAL files that are imported from the starting set `files` but are
7
- * missing in `files`. The return value is also a map from file names to file
8
- * contents.
3
+ * Given a partial map `files` from **source unit names** to file contents, a list of
4
+ * `remappings` and a list of `ImportResolver`s - `resolvers`, find all
5
+ * files that are imported from the starting set `files` but are
6
+ * **missing** in `files` and add them into the files map.
9
7
  */
10
- export declare function findAllFiles(files: Map<string, string>, remappings: Remapping[], resolvers: ImportResolver[]): Map<string, string>;
8
+ export declare function findAllFiles(files: Map<string, string>, remappings: Remapping[], resolvers: ImportResolver[]): void;
11
9
  //# sourceMappingURL=imports.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../../src/compile/inference/imports.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyB,cAAc,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAsBtE,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIxD;AAkCD;;;;;;GAMG;AACH,wBAAgB,YAAY,CACxB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,cAAc,EAAE,GAC5B,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAwErB"}
1
+ {"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../../src/compile/inference/imports.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyB,cAAc,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAsFtE;;;;;GAKG;AACH,wBAAgB,YAAY,CACxB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,UAAU,EAAE,SAAS,EAAE,EACvB,SAAS,EAAE,cAAc,EAAE,GAC5B,IAAI,CA8DN"}
@@ -3,10 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.findAllFiles = exports.normalizeImportPath = void 0;
6
+ exports.findAllFiles = void 0;
7
7
  const fs_extra_1 = __importDefault(require("fs-extra"));
8
8
  const path_1 = require("path");
9
9
  const __1 = require("..");
10
+ const __2 = require("../..");
10
11
  const file_level_definitions_parser_1 = require("./file_level_definitions_parser");
11
12
  /**
12
13
  * Apply the first remapping in `remappings` that fits `path` and
@@ -20,11 +21,6 @@ function applyRemappings(remappings, path) {
20
21
  }
21
22
  return path;
22
23
  }
23
- function normalizeImportPath(path) {
24
- const normalized = (0, path_1.normalize)(path);
25
- return (0, path_1.isAbsolute)(normalized) ? normalized : "./" + normalized;
26
- }
27
- exports.normalizeImportPath = normalizeImportPath;
28
24
  /**
29
25
  * Check that `path` starts with a relative prefix "." or "./". Note that we
30
26
  * don't use `!path.isAbsolute(path)` on purpose. Otherwise it might consider
@@ -34,58 +30,81 @@ function isPathWithRelativePrefix(path) {
34
30
  return path.startsWith("./") || path.startsWith("../");
35
31
  }
36
32
  /**
37
- * Given the `importer` unit path, and the path `imported` of an import directive
38
- * inside the unit, compute the real path of the imported unit.
33
+ * Normalize a relative import path as described in
34
+ * https://docs.soliditylang.org/en/v0.8.8/path-resolution.html#relative-imports
35
+ * @param importer - source unit name of importing unit
36
+ * @param imported - path of import directive
37
+ */
38
+ function normalizeRelativeImportPath(importer, imported) {
39
+ imported = (0, path_1.normalize)(imported);
40
+ let prefix = (0, path_1.dirname)(importer);
41
+ const importedSegments = imported.split("/").filter((s) => s != "");
42
+ let strippedSegments = 0;
43
+ while (strippedSegments < importedSegments.length &&
44
+ importedSegments[strippedSegments] === "..") {
45
+ prefix = (0, path_1.dirname)(prefix);
46
+ strippedSegments++;
47
+ }
48
+ // According to https://docs.soliditylang.org/en/v0.8.8/path-resolution.html#relative-imports when prefix
49
+ // is empty there is no leading "./". However `dirname` always returns non-empty prefixes.
50
+ // Handle this edge case.
51
+ if (prefix === "." && !importer.startsWith(".")) {
52
+ prefix = "";
53
+ }
54
+ (0, __2.assert)(prefix === "" || !prefix.endsWith("/"), `Invalid prefix ${prefix}`);
55
+ const suffix = importedSegments.slice(strippedSegments).join("/");
56
+ return prefix === "" ? suffix : prefix + "/" + suffix;
57
+ }
58
+ /**
59
+ * Given the `importer` source unit path, and the path `imported` of an import
60
+ * directive compute the expected **source unit name** of the imported file.
61
+ * This is the name the compiler will look for in its "VFS" as defined starting
62
+ * here:
39
63
  *
40
- * This takes into account remappings, relative and absolute paths.
41
- * Note: The returned path is not neccessarily absolute!
64
+ * https://docs.soliditylang.org/en/v0.8.8/path-resolution.html
65
+ *
66
+ * This takes into account relative and absolute paths and remappings.
42
67
  */
43
- function computeRealPath(importer, imported, remappings) {
44
- let result = applyRemappings(remappings, imported);
45
- if (importer !== undefined && isPathWithRelativePrefix(result)) {
46
- const importingFileDir = (0, path_1.dirname)(importer);
47
- result = normalizeImportPath((0, path_1.join)(importingFileDir, result));
68
+ function computeSourceUnitName(importerSourceUnit, imported, remappings) {
69
+ if (isPathWithRelativePrefix(imported)) {
70
+ return normalizeRelativeImportPath(importerSourceUnit, imported);
48
71
  }
49
- return result;
72
+ return applyRemappings(remappings, imported);
50
73
  }
51
74
  /**
52
- * Given a partial map `files` from file names to file contents, a list of
53
- * `remappings` and a list of `ImportResolver`s `resolvers`, find and return all
54
- * ADDITIONAL files that are imported from the starting set `files` but are
55
- * missing in `files`. The return value is also a map from file names to file
56
- * contents.
75
+ * Given a partial map `files` from **source unit names** to file contents, a list of
76
+ * `remappings` and a list of `ImportResolver`s - `resolvers`, find all
77
+ * files that are imported from the starting set `files` but are
78
+ * **missing** in `files` and add them into the files map.
57
79
  */
58
80
  function findAllFiles(files, remappings, resolvers) {
59
- const queue = [];
60
- for (const fileName of files.keys()) {
61
- queue.push([undefined, fileName]);
62
- }
81
+ // Queue of source unit names to process
82
+ const queue = [...files.keys()];
63
83
  const visited = new Set();
64
- const result = new Map();
65
84
  while (queue.length > 0) {
66
- const [importer, imported] = queue.pop();
67
- const realPath = computeRealPath(importer, imported, remappings);
85
+ const sourceUnitName = queue.pop();
68
86
  /**
69
- * Skip already processed imports
87
+ * Skip already processed units
70
88
  */
71
- if (visited.has(realPath)) {
89
+ if (visited.has(sourceUnitName)) {
72
90
  continue;
73
91
  }
74
- let content = files.get(realPath);
92
+ visited.add(sourceUnitName);
93
+ let content = files.get(sourceUnitName);
94
+ // Missing contents - try and fill them in from the resolvers
75
95
  if (content === undefined) {
76
96
  for (const resolver of resolvers) {
77
- const resolvedPath = resolver.resolve(realPath);
97
+ const resolvedPath = resolver.resolve(sourceUnitName);
78
98
  if (resolvedPath !== undefined) {
79
99
  content = fs_extra_1.default.readFileSync(resolvedPath, { encoding: "utf-8" });
80
100
  break;
81
101
  }
82
102
  }
83
103
  if (content === undefined) {
84
- throw new __1.CompileInferenceError(`Couldn't find ${realPath} imported from ${importer}`);
104
+ throw new __1.CompileInferenceError(`Couldn't find ${sourceUnitName}`);
85
105
  }
86
- result.set(isPathWithRelativePrefix(imported) ? realPath : imported, content);
106
+ files.set(sourceUnitName, content);
87
107
  }
88
- visited.add(realPath);
89
108
  let flds;
90
109
  try {
91
110
  flds = (0, file_level_definitions_parser_1.parseFileLevelDefinitions)(content);
@@ -95,17 +114,16 @@ function findAllFiles(files, remappings, resolvers) {
95
114
  const start = e.location.start.offset;
96
115
  const end = e.location.end.offset;
97
116
  const length = end - start;
98
- throw new __1.CompileInferenceError(`Failed parsing imports at ${realPath}:${start}:${length} - ${e.message}`);
117
+ throw new __1.CompileInferenceError(`Failed parsing imports at ${sourceUnitName}:${start}:${length} - ${e.message}`);
99
118
  }
100
119
  throw e;
101
120
  }
102
121
  for (const fld of flds) {
103
122
  if (fld.kind === file_level_definitions_parser_1.FileLevelNodeKind.Import) {
104
- queue.push([realPath, fld.path]);
123
+ queue.push(computeSourceUnitName(sourceUnitName, fld.path, remappings));
105
124
  }
106
125
  }
107
126
  }
108
- return result;
109
127
  }
110
128
  exports.findAllFiles = findAllFiles;
111
129
  //# sourceMappingURL=imports.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"imports.js","sourceRoot":"","sources":["../../../src/compile/inference/imports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imports.js","sourceRoot":"","sources":["../../../src/compile/inference/imports.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export interface PartialSolcInput {
3
3
  language: "Solidity";
4
4
  settings: {
5
5
  outputSelection: any;
6
+ remappings: string[];
6
7
  [otherKeys: string]: any;
7
8
  };
8
9
  [otherKeys: string]: any;
@@ -26,5 +27,5 @@ export declare type SolcInput = Solc04Input | Solc05Input;
26
27
  *
27
28
  * This handles the differences in the JSON input between different compiler versions.
28
29
  */
29
- export declare function createCompilerInput(files: Map<string, string>, version: string, kind: CompilerKind, output: CompilationOutput[], compilerSettings: any): SolcInput;
30
+ export declare function createCompilerInput(files: Map<string, string>, remappings: string[], version: string, kind: CompilerKind, output: CompilationOutput[], compilerSettings: any): SolcInput;
30
31
  //# sourceMappingURL=input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/compile/input.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE9D,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE;QAAE,eAAe,EAAE,GAAG,CAAC;QAAC,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAC7D,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC;CAC5B;AAED,MAAM,WAAW,WAAY,SAAQ,gBAAgB;IACjD,OAAO,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC3C;AAED,MAAM,WAAW,WAAY,SAAQ,gBAAgB;IACjD,OAAO,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG;YAAE,OAAO,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;CACxD;AAED,oBAAY,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;AAgBlD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,iBAAiB,EAAE,EAC3B,gBAAgB,EAAE,GAAG,GACtB,SAAS,CA+CX"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/compile/input.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE9D,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE;QACN,eAAe,EAAE,GAAG,CAAC;QACrB,UAAU,EAAE,MAAM,EAAE,CAAC;QACrB,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC;KAC5B,CAAC;IACF,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC;CAC5B;AAED,MAAM,WAAW,WAAY,SAAQ,gBAAgB;IACjD,OAAO,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC3C;AAED,MAAM,WAAW,WAAY,SAAQ,gBAAgB;IACjD,OAAO,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG;YAAE,OAAO,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;CACxD;AAED,oBAAY,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;AAgBlD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,iBAAiB,EAAE,EAC3B,gBAAgB,EAAE,GAAG,GACtB,SAAS,CAgDX"}
@@ -20,7 +20,7 @@ function mergeCompilerSettings(input, settings) {
20
20
  *
21
21
  * This handles the differences in the JSON input between different compiler versions.
22
22
  */
23
- function createCompilerInput(files, version, kind, output, compilerSettings) {
23
+ function createCompilerInput(files, remappings, version, kind, output, compilerSettings) {
24
24
  let fileOutput = [];
25
25
  let contractOutput = [];
26
26
  for (const outputSel of output) {
@@ -39,6 +39,7 @@ function createCompilerInput(files, version, kind, output, compilerSettings) {
39
39
  const partialInp = {
40
40
  language: "Solidity",
41
41
  settings: {
42
+ remappings,
42
43
  outputSelection: {
43
44
  "*": {
44
45
  "*": contractOutput,
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/compile/input.ts"],"names":[],"mappings":";;;AAAA,mCAA4B;AAC5B,2CAA8D;AAkB9D,SAAS,qBAAqB,CAAsC,KAAQ,EAAE,QAAa;IACvF,IAAI,QAAQ,KAAK,SAAS,EAAE;QACxB,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YACxB,IAAI,GAAG,KAAK,iBAAiB,EAAE;gBAC3B,SAAS;aACZ;YAED,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;SACvC;KACJ;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAC/B,KAA0B,EAC1B,OAAe,EACf,IAAkB,EAClB,MAA2B,EAC3B,gBAAqB;IAErB,IAAI,UAAU,GAAa,EAAE,CAAC;IAC9B,IAAI,cAAc,GAAa,EAAE,CAAC;IAElC,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE;QAC5B,IAAI,SAAS,KAAK,6BAAiB,CAAC,GAAG,EAAE;YACrC,UAAU,GAAG,CAAC,6BAAiB,CAAC,GAAG,CAAC,CAAC;YACrC,cAAc,GAAG,CAAC,6BAAiB,CAAC,GAAG,CAAC,CAAC;YACzC,MAAM;SACT;QAED,IAAI,SAAS,KAAK,6BAAiB,CAAC,GAAG,EAAE;YACrC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC9B;aAAM;YACH,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAClC;KACJ;IAED,MAAM,UAAU,GAAqB;QACjC,QAAQ,EAAE,UAAU;QACpB,QAAQ,EAAE;YACN,eAAe,EAAE;gBACb,GAAG,EAAE;oBACD,GAAG,EAAE,cAAc;oBACnB,EAAE,EAAE,UAAU;iBACjB;aACJ;SACJ;KACJ,CAAC;IAEF,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC;IAExB,4DAA4D;IAC5D,4CAA4C;IAC5C,IAAI,IAAA,WAAE,EAAC,OAAO,EAAE,OAAO,CAAC,IAAI,IAAI,KAAK,wBAAY,CAAC,IAAI,EAAE;QACpD,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE;YAC/C,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC;SAC1C;KACJ;SAAM;QACH,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE;YAC/C,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;SAC9C;KACJ;IAED,MAAM,KAAK,GAAG,UAAuC,CAAC;IAEtD,OAAO,qBAAqB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;AAC1D,CAAC;AArDD,kDAqDC"}
1
+ {"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/compile/input.ts"],"names":[],"mappings":";;;AAAA,mCAA4B;AAC5B,2CAA8D;AAsB9D,SAAS,qBAAqB,CAAsC,KAAQ,EAAE,QAAa;IACvF,IAAI,QAAQ,KAAK,SAAS,EAAE;QACxB,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YACxB,IAAI,GAAG,KAAK,iBAAiB,EAAE;gBAC3B,SAAS;aACZ;YAED,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;SACvC;KACJ;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAC/B,KAA0B,EAC1B,UAAoB,EACpB,OAAe,EACf,IAAkB,EAClB,MAA2B,EAC3B,gBAAqB;IAErB,IAAI,UAAU,GAAa,EAAE,CAAC;IAC9B,IAAI,cAAc,GAAa,EAAE,CAAC;IAElC,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE;QAC5B,IAAI,SAAS,KAAK,6BAAiB,CAAC,GAAG,EAAE;YACrC,UAAU,GAAG,CAAC,6BAAiB,CAAC,GAAG,CAAC,CAAC;YACrC,cAAc,GAAG,CAAC,6BAAiB,CAAC,GAAG,CAAC,CAAC;YACzC,MAAM;SACT;QAED,IAAI,SAAS,KAAK,6BAAiB,CAAC,GAAG,EAAE;YACrC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC9B;aAAM;YACH,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAClC;KACJ;IAED,MAAM,UAAU,GAAqB;QACjC,QAAQ,EAAE,UAAU;QACpB,QAAQ,EAAE;YACN,UAAU;YACV,eAAe,EAAE;gBACb,GAAG,EAAE;oBACD,GAAG,EAAE,cAAc;oBACnB,EAAE,EAAE,UAAU;iBACjB;aACJ;SACJ;KACJ,CAAC;IAEF,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC;IAExB,4DAA4D;IAC5D,4CAA4C;IAC5C,IAAI,IAAA,WAAE,EAAC,OAAO,EAAE,OAAO,CAAC,IAAI,IAAI,KAAK,wBAAY,CAAC,IAAI,EAAE;QACpD,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE;YAC/C,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC;SAC1C;KACJ;SAAM;QACH,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE;YAC/C,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;SAC9C;KACJ;IAED,MAAM,KAAK,GAAG,UAAuC,CAAC;IAEtD,OAAO,qBAAqB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;AAC1D,CAAC;AAvDD,kDAuDC"}
@@ -24,7 +24,7 @@ export declare class CompileFailedError extends Error {
24
24
  }
25
25
  export declare function parsePathRemapping(remapping: string[]): Remapping[];
26
26
  export declare function resolveFiles(files: Map<string, string>, remapping: string[], resolvers: ImportResolver[]): void;
27
- export declare function compile(files: Map<string, string>, version: string, compilationOutput?: CompilationOutput[], compilerSettings?: any, kind?: CompilerKind): Promise<any>;
27
+ export declare function compile(files: Map<string, string>, remapping: string[], version: string, compilationOutput?: CompilationOutput[], compilerSettings?: any, kind?: CompilerKind): Promise<any>;
28
28
  export declare function detectCompileErrors(data: any): string[];
29
29
  export declare function compileSourceString(fileName: string, sourceCode: string, version: string | CompilerVersionSelectionStrategy, remapping: string[], compilationOutput?: CompilationOutput[], compilerSettings?: any, kind?: CompilerKind): Promise<CompileResult>;
30
30
  export declare function compileSol(fileName: string, version: string | CompilerVersionSelectionStrategy, remapping: string[], compilationOutput?: CompilationOutput[], compilerSettings?: any, kind?: CompilerKind): Promise<CompileResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/compile/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,cAAc,EAAoB,MAAM,GAAG,CAAC;AACzE,OAAO,EACH,gCAAgC,EAInC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAM9C,MAAM,WAAW,aAAa;IAC1B,CAAC,IAAI,EAAE,MAAM,GAAG;QACZ,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;KAC9B,CAAC;CACL;AAED,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,GAAG,CAAC;IACV,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,qBAAa,qBAAsB,SAAQ,KAAK;CAAG;AAEnD,qBAAa,kBAAmB,SAAQ,KAAK;IACzC,QAAQ,EAAE,cAAc,EAAE,CAAC;gBAEf,OAAO,EAAE,cAAc,EAAE;CAWxC;AAiBD,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAanE;AAED,wBAAgB,YAAY,CACxB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,EAAE,cAAc,EAAE,GAC5B,IAAI,CAON;AA4BD,wBAAsB,OAAO,CACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,OAAO,EAAE,MAAM,EACf,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,eAAoB,GACzB,OAAO,CAAC,GAAG,CAAC,CA4Bd;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM,EAAE,CA0BvD;AAED,wBAAsB,mBAAmB,CACrC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,SAAS,EAAE,MAAM,EAAE,EACnB,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CA+BxB;AAED,wBAAsB,UAAU,CAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,SAAS,EAAE,MAAM,EAAE,EACnB,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAYxB;AAED,wBAAsB,eAAe,CACjC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAsDxB;AAED,wBAAsB,WAAW,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAIxB"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/compile/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,cAAc,EAAoB,MAAM,GAAG,CAAC;AACzE,OAAO,EACH,gCAAgC,EAInC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAM9C,MAAM,WAAW,aAAa;IAC1B,CAAC,IAAI,EAAE,MAAM,GAAG;QACZ,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;KAC9B,CAAC;CACL;AAED,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,GAAG,CAAC;IACV,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,qBAAa,qBAAsB,SAAQ,KAAK;CAAG;AAEnD,qBAAa,kBAAmB,SAAQ,KAAK;IACzC,QAAQ,EAAE,cAAc,EAAE,CAAC;gBAEf,OAAO,EAAE,cAAc,EAAE;CAWxC;AAiBD,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAanE;AAED,wBAAgB,YAAY,CACxB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,EAAE,cAAc,EAAE,GAC5B,IAAI,CAGN;AA4BD,wBAAsB,OAAO,CACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1B,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,EAAE,MAAM,EACf,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,eAAoB,GACzB,OAAO,CAAC,GAAG,CAAC,CA6Bd;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM,EAAE,CA0BvD;AAED,wBAAsB,mBAAmB,CACrC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,SAAS,EAAE,MAAM,EAAE,EACnB,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAgCxB;AAED,wBAAsB,UAAU,CAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,SAAS,EAAE,MAAM,EAAE,EACnB,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAYxB;AAED,wBAAsB,eAAe,CACjC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAuDxB;AAED,wBAAsB,WAAW,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,gCAAgC,EAClD,iBAAiB,GAAE,iBAAiB,EAA4B,EAChE,gBAAgB,CAAC,EAAE,GAAG,EACtB,IAAI,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,aAAa,CAAC,CAIxB"}
@@ -48,10 +48,7 @@ function parsePathRemapping(remapping) {
48
48
  exports.parsePathRemapping = parsePathRemapping;
49
49
  function resolveFiles(files, remapping, resolvers) {
50
50
  const parsedRemapping = parsePathRemapping(remapping);
51
- const additionalFiles = (0, inference_1.findAllFiles)(files, parsedRemapping, resolvers);
52
- for (const [fileName, source] of additionalFiles) {
53
- files.set(fileName, source);
54
- }
51
+ (0, inference_1.findAllFiles)(files, parsedRemapping, resolvers);
55
52
  }
56
53
  exports.resolveFiles = resolveFiles;
57
54
  function fillFilesFromSources(files, sources) {
@@ -70,8 +67,8 @@ function getCompilerVersionStrategy(sources, versionOrStrategy) {
70
67
  }
71
68
  return versionOrStrategy;
72
69
  }
73
- async function compile(files, version, compilationOutput = [constants_1.CompilationOutput.ALL], compilerSettings, kind = constants_1.CompilerKind.WASM) {
74
- const compilerInput = (0, input_1.createCompilerInput)(files, version, kind, compilationOutput, compilerSettings);
70
+ async function compile(files, remapping, version, compilationOutput = [constants_1.CompilationOutput.ALL], compilerSettings, kind = constants_1.CompilerKind.WASM) {
71
+ const compilerInput = (0, input_1.createCompilerInput)(files, remapping, version, kind, compilationOutput, compilerSettings);
75
72
  if (kind === constants_1.CompilerKind.WASM) {
76
73
  const compiler = (0, kinds_1.getWasmCompilerForVersion)(version);
77
74
  return compiler.compile(compilerInput);
@@ -113,15 +110,15 @@ function detectCompileErrors(data) {
113
110
  }
114
111
  exports.detectCompileErrors = detectCompileErrors;
115
112
  async function compileSourceString(fileName, sourceCode, version, remapping, compilationOutput = [constants_1.CompilationOutput.ALL], compilerSettings, kind) {
116
- const entryFileName = (0, inference_1.normalizeImportPath)(fileName);
117
- const entryFileDir = path_1.default.dirname(entryFileName);
118
- const files = new Map([[entryFileName, sourceCode]]);
113
+ const entrySourceUnit = fileName;
114
+ const entryFileDir = path_1.default.dirname(entrySourceUnit);
115
+ const files = new Map([[entrySourceUnit, sourceCode]]);
119
116
  const resolvers = [new _1.FileSystemResolver(), new _1.LocalNpmResolver(entryFileDir)];
120
117
  resolveFiles(files, remapping, resolvers);
121
118
  const compilerVersionStrategy = getCompilerVersionStrategy([...files.values()], version);
122
119
  const failures = [];
123
120
  for (const compilerVersion of compilerVersionStrategy.select()) {
124
- const data = await compile(files, compilerVersion, compilationOutput, compilerSettings, kind);
121
+ const data = await compile(files, remapping, compilerVersion, compilationOutput, compilerSettings, kind);
125
122
  const errors = detectCompileErrors(data);
126
123
  if (errors.length === 0) {
127
124
  return { data, compilerVersion, files };
@@ -158,7 +155,7 @@ async function compileJsonData(fileName, data, version, compilationOutput = [con
158
155
  const compilerVersionStrategy = getCompilerVersionStrategy([...files.values()], version);
159
156
  const failures = [];
160
157
  for (const compilerVersion of compilerVersionStrategy.select()) {
161
- const compileData = await compile(files, compilerVersion, compilationOutput, compilerSettings, kind);
158
+ const compileData = await compile(files, [], compilerVersion, compilationOutput, compilerSettings, kind);
162
159
  const errors = detectCompileErrors(compileData);
163
160
  if (errors.length === 0) {
164
161
  return { data: compileData, compilerVersion, files };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/compile/utils.ts"],"names":[],"mappings":";;;;;;AAAA,wDAA2B;AAC3B,gDAAwB;AACxB,wBAAyE;AACzE,6DAK8B;AAC9B,2CAA8D;AAE9D,2CAAgE;AAChE,mCAA8C;AAC9C,mCAAiF;AACjF,mCAAoD;AAmBpD,MAAa,qBAAsB,SAAQ,KAAK;CAAG;AAAnD,sDAAmD;AAEnD,MAAa,kBAAmB,SAAQ,KAAK;IAGzC,YAAY,OAAyB;QACjC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAExB,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CACjC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,KAAK,CAAC,eAAe,WAAW,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CACjF,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG,oBAAoB,iBAAiB,EAAE,CAAC;IAC3D,CAAC;CACJ;AAdD,gDAcC;AAED,SAAS,yBAAyB,CAC9B,OAA+B,EAC/B,GAAG,UAAoB;IAEvB,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAExC,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE;QAC/B,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,IAAI,OAAO,CAAC,EAAE;YAClD,OAAO,IAAI,CAAC;SACf;KACJ;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAgB,kBAAkB,CAAC,SAAmB;IAClD,MAAM,WAAW,GAAG,2BAA2B,CAAC;IAChD,MAAM,MAAM,GAAoC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACpE,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAEzC,IAAI,OAAO,KAAK,IAAI,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,4BAA4B,KAAK,GAAG,CAAC,CAAC;SACzD;QAED,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAClB,CAAC;AAbD,gDAaC;AAED,SAAgB,YAAY,CACxB,KAA0B,EAC1B,SAAmB,EACnB,SAA2B;IAE3B,MAAM,eAAe,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,IAAA,wBAAY,EAAC,KAAK,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC;IAExE,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,eAAe,EAAE;QAC9C,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;KAC/B;AACL,CAAC;AAXD,oCAWC;AAED,SAAS,oBAAoB,CACzB,KAA0B,EAC1B,OAAoC;IAEpC,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QACvD,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE;YAC/C,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;SACvC;KACJ;AACL,CAAC;AAED,SAAS,0BAA0B,CAC/B,OAAiB,EACjB,iBAA4D;IAE5D,IAAI,iBAAiB,KAAK,MAAM,EAAE;QAC9B,OAAO,IAAI,6CAAwB,CAAC,OAAO,EAAE,IAAI,sDAAiC,EAAE,CAAC,CAAC;KACzF;IAED,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACvC,OAAO,IAAI,yCAAoB,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;KACxD;IAED,OAAO,iBAAiB,CAAC;AAC7B,CAAC;AAEM,KAAK,UAAU,OAAO,CACzB,KAA0B,EAC1B,OAAe,EACf,oBAAyC,CAAC,6BAAiB,CAAC,GAAG,CAAC,EAChE,gBAAsB,EACtB,IAAI,GAAG,wBAAY,CAAC,IAAI;IAExB,MAAM,aAAa,GAAG,IAAA,2BAAmB,EACrC,KAAK,EACL,OAAO,EACP,IAAI,EACJ,iBAAiB,EACjB,gBAAgB,CACnB,CAAC;IAEF,IAAI,IAAI,KAAK,wBAAY,CAAC,IAAI,EAAE;QAC5B,MAAM,QAAQ,GAAG,IAAA,iCAAyB,EAAC,OAAO,CAAC,CAAC;QAEpD,OAAO,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;KAC1C;IAED,IAAI,IAAI,KAAK,wBAAY,CAAC,MAAM,EAAE;QAC9B,MAAM,QAAQ,GAAG,MAAM,IAAA,mCAA2B,EAAC,OAAO,CAAC,CAAC;QAE5D,IAAI,QAAQ,KAAK,SAAS,EAAE;YACxB,MAAM,IAAI,KAAK,CACX,6CAA6C,OAAO,yBAAyB,IAAA,2BAAsB,GAAE,EAAE,CAC1G,CAAC;SACL;QAED,OAAO,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;KAC1C;IAED,MAAM,IAAI,KAAK,CAAC,8BAA8B,IAAI,GAAG,CAAC,CAAC;AAC3D,CAAC;AAlCD,0BAkCC;AAED,SAAgB,mBAAmB,CAAC,IAAS;IACzC,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,IAAI,CAAC,MAAM,YAAY,KAAK,EAAE;QAC9B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAC7B,MAAM,MAAM,GAAG,OAAO,KAAK,CAAC;YAE5B,IAAI,MAAM,KAAK,QAAQ,EAAE;gBACrB;;mBAEG;gBACH,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO,EAAE;oBAC5B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;iBACvC;aACJ;iBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE;gBAC5B;;mBAEG;gBACH,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;oBACzB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACtB;aACJ;SACJ;KACJ;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AA1BD,kDA0BC;AAEM,KAAK,UAAU,mBAAmB,CACrC,QAAgB,EAChB,UAAkB,EAClB,OAAkD,EAClD,SAAmB,EACnB,oBAAyC,CAAC,6BAAiB,CAAC,GAAG,CAAC,EAChE,gBAAsB,EACtB,IAAmB;IAEnB,MAAM,aAAa,GAAG,IAAA,+BAAmB,EAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAEjD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,CAAC,IAAI,qBAAkB,EAAE,EAAE,IAAI,mBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC;IAEjF,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAE1C,MAAM,uBAAuB,GAAG,0BAA0B,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IACzF,MAAM,QAAQ,GAAqB,EAAE,CAAC;IAEtC,KAAK,MAAM,eAAe,IAAI,uBAAuB,CAAC,MAAM,EAAE,EAAE;QAC5D,MAAM,IAAI,GAAG,MAAM,OAAO,CACtB,KAAK,EACL,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,IAAI,CACP,CAAC;QAEF,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;SAC3C;QAED,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,CAAC;KAC9C;IAED,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AAC3C,CAAC;AAvCD,kDAuCC;AAEM,KAAK,UAAU,UAAU,CAC5B,QAAgB,EAChB,OAAkD,EAClD,SAAmB,EACnB,oBAAyC,CAAC,6BAAiB,CAAC,GAAG,CAAC,EAChE,gBAAsB,EACtB,IAAmB;IAEnB,MAAM,UAAU,GAAG,kBAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IAErE,OAAO,mBAAmB,CACtB,QAAQ,EACR,UAAU,EACV,OAAO,EACP,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,IAAI,CACP,CAAC;AACN,CAAC;AAnBD,gCAmBC;AAEM,KAAK,UAAU,eAAe,CACjC,QAAgB,EAChB,IAAS,EACT,OAAkD,EAClD,oBAAyC,CAAC,6BAAiB,CAAC,GAAG,CAAC,EAChE,gBAAsB,EACtB,IAAmB;IAEnB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IAExC,IAAI,CAAC,CAAC,IAAI,YAAY,MAAM,IAAI,IAAI,CAAC,OAAO,YAAY,MAAM,CAAC,EAAE;QAC7D,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,GAAG,CAAC,CAAC;KAC1E;IAED,MAAM,OAAO,GAAgC,IAAI,CAAC,OAAO,CAAC;IAE1D,IAAI,yBAAyB,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE;QAC/D,MAAM,eAAe,GAAG,SAAS,CAAC;QAClC,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAI,MAAM,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,kBAAkB,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;SAC/D;QAED,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAErC,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;KAC3C;IAED,IAAI,yBAAyB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE;QAC9C,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAqB,OAAO,CAAC,EAAE;YAC5E,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;SACxC;QAED,MAAM,uBAAuB,GAAG,0BAA0B,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QACzF,MAAM,QAAQ,GAAqB,EAAE,CAAC;QAEtC,KAAK,MAAM,eAAe,IAAI,uBAAuB,CAAC,MAAM,EAAE,EAAE;YAC5D,MAAM,WAAW,GAAG,MAAM,OAAO,CAC7B,KAAK,EACL,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,IAAI,CACP,CAAC;YAEF,MAAM,MAAM,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAEhD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBACrB,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;aACxD;YAED,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,CAAC;SAC9C;QAED,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,CAAC;KAC1C;IAED,MAAM,IAAI,KAAK,CACX,qFAAqF,CACxF,CAAC;AACN,CAAC;AA7DD,0CA6DC;AAEM,KAAK,UAAU,WAAW,CAC7B,QAAgB,EAChB,OAAkD,EAClD,oBAAyC,CAAC,6BAAiB,CAAC,GAAG,CAAC,EAChE,gBAAsB,EACtB,IAAmB;IAEnB,MAAM,IAAI,GAAG,kBAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAExC,OAAO,eAAe,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;AAC/F,CAAC;AAVD,kCAUC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/compile/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "solc-typed-ast",
3
- "version": "8.0.0",
3
+ "version": "8.0.1",
4
4
  "description": "A TypeScript library providing a normalized typed Solidity AST along with the utilities necessary to generate the AST (from Solc) and traverse/manipulate it.",
5
5
  "keywords": [],
6
6
  "files": [