@markw65/monkeyc-optimizer 1.1.89 → 1.1.90

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.
@@ -16,8 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var chunk_JDC43A3I_exports = {};
20
- __export(chunk_JDC43A3I_exports, {
19
+ var chunk_UBAYZSM3_exports = {};
20
+ __export(chunk_UBAYZSM3_exports, {
21
21
  adjustLoc: () => adjustLoc,
22
22
  cloneDeep: () => cloneDeep,
23
23
  getLiteralNode: () => getLiteralNode,
@@ -36,23 +36,21 @@ __export(chunk_JDC43A3I_exports, {
36
36
  withLocDeep: () => withLocDeep,
37
37
  wrap: () => wrap
38
38
  });
39
- module.exports = __toCommonJS(chunk_JDC43A3I_exports);
40
- var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
39
+ module.exports = __toCommonJS(chunk_UBAYZSM3_exports);
40
+ var import_chunk_VS2QQHAK = require("./chunk-VS2QQHAK.cjs");
41
41
  var import_prettier_plugin_monkeyc = require("@markw65/prettier-plugin-monkeyc");
42
42
  function isMCTreeNode(node) {
43
43
  return node ? typeof node === "object" && "type" in node : false;
44
44
  }
45
45
  function traverseAst(node, pre, post, parent) {
46
46
  const nodes = pre && pre(node);
47
- if (nodes === false)
48
- return;
47
+ if (nodes === false) return;
49
48
  if (!mctreeTypeInfo[node.type]) {
50
49
  throw new Error("what?");
51
50
  }
52
51
  for (const key of nodes || mctreeTypeInfo[node.type].keys) {
53
52
  const value = node[key];
54
- if (!value)
55
- continue;
53
+ if (!value) continue;
56
54
  if (Array.isArray(value)) {
57
55
  const values = value;
58
56
  const deletions = values.reduce(
@@ -60,12 +58,10 @@ function traverseAst(node, pre, post, parent) {
60
58
  if (isMCTreeNode(obj)) {
61
59
  const repl = traverseAst(obj, pre, post, node);
62
60
  if (repl === false) {
63
- if (!state)
64
- state = {};
61
+ if (!state) state = {};
65
62
  state[i] = true;
66
63
  } else if (repl != null) {
67
- if (!state)
68
- state = {};
64
+ if (!state) state = {};
69
65
  values[i] = repl;
70
66
  }
71
67
  }
@@ -130,8 +126,7 @@ function hasProperty(obj, prop) {
130
126
  function withLoc(node, start, end) {
131
127
  if (start && start.loc) {
132
128
  node.start = start.start;
133
- if (!node.end)
134
- node.end = start.end;
129
+ if (!node.end) node.end = start.end;
135
130
  node.loc = { ...node.loc || start.loc, start: start.loc.start };
136
131
  if (end === start && start.origins) {
137
132
  node.origins = start.origins;
@@ -155,8 +150,7 @@ function withLocDeep(node, start, end, inplace) {
155
150
  }
156
151
  for (const key of mctreeTypeInfo[node.type].keys) {
157
152
  const value = node[key];
158
- if (!value)
159
- continue;
153
+ if (!value) continue;
160
154
  const fix = (v) => isMCTreeNode(v) ? withLocDeep(v, start, end, inplace) : v;
161
155
  const repl = Array.isArray(value) ? value.map(fix) : fix(value);
162
156
  inplace || (node[key] = repl);
@@ -257,21 +251,17 @@ function makeScopedName(dotted, l, base) {
257
251
  },
258
252
  { cur: base, offset: 0 }
259
253
  ).cur;
260
- if (!result)
261
- throw new Error("Failed to make a ScopedName");
254
+ if (!result) throw new Error("Failed to make a ScopedName");
262
255
  return result;
263
256
  }
264
257
  function getLiteralNode(node) {
265
- if (node == null)
266
- return null;
267
- if (node.type === "Literal")
268
- return node;
258
+ if (node == null) return null;
259
+ if (node.type === "Literal") return node;
269
260
  if (node.type === "BinaryExpression" && node.operator === "as") {
270
261
  return getLiteralNode(node.left) && node;
271
262
  }
272
263
  if (node.type === "UnaryExpression") {
273
- if (node.argument.type !== "Literal")
274
- return null;
264
+ if (node.argument.type !== "Literal") return null;
275
265
  switch (node.operator) {
276
266
  case "-": {
277
267
  const [arg, type] = getNodeValue(node.argument);
@@ -284,7 +274,7 @@ function getLiteralNode(node) {
284
274
  return null;
285
275
  }
286
276
  var mctreeTypeInfo;
287
- var init_ast = (0, import_chunk_ABYVSU2C.__esm)({
277
+ var init_ast = (0, import_chunk_VS2QQHAK.__esm)({
288
278
  "src/ast.ts"() {
289
279
  "use strict";
290
280
  mctreeTypeInfo = {
@@ -16,15 +16,15 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var chunk_ABYVSU2C_exports = {};
20
- __export(chunk_ABYVSU2C_exports, {
19
+ var chunk_VS2QQHAK_exports = {};
20
+ __export(chunk_VS2QQHAK_exports, {
21
21
  __commonJS: () => __commonJS,
22
22
  __esm: () => __esm,
23
23
  __export: () => __export2,
24
24
  __require: () => __require,
25
25
  __toESM: () => __toESM
26
26
  });
27
- module.exports = __toCommonJS(chunk_ABYVSU2C_exports);
27
+ module.exports = __toCommonJS(chunk_VS2QQHAK_exports);
28
28
  var __create = Object.create;
29
29
  var __defProp2 = Object.defineProperty;
30
30
  var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
@@ -34,9 +34,8 @@ var __hasOwnProp2 = Object.prototype.hasOwnProperty;
34
34
  var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
35
35
  get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
36
36
  }) : x)(function(x) {
37
- if (typeof require !== "undefined")
38
- return require.apply(this, arguments);
39
- throw new Error('Dynamic require of "' + x + '" is not supported');
37
+ if (typeof require !== "undefined") return require.apply(this, arguments);
38
+ throw Error('Dynamic require of "' + x + '" is not supported');
40
39
  });
41
40
  var __esm = (fn, res) => function __init() {
42
41
  return fn && (res = (0, fn[__getOwnPropNames2(fn)[0]])(fn = 0)), res;
@@ -18,30 +18,30 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var optimizer_exports = {};
20
20
  __export(optimizer_exports, {
21
- StateNodeAttributes: () => import_chunk_7CG7CM26.StateNodeAttributes,
22
- buildConfigDescription: () => import_chunk_7CG7CM26.buildConfigDescription,
23
- buildOptimizedProject: () => import_chunk_7CG7CM26.buildOptimizedProject,
24
- copyRecursiveAsNeeded: () => import_chunk_X7QCZR3F.copyRecursiveAsNeeded,
25
- defaultConfig: () => import_chunk_7CG7CM26.defaultConfig,
26
- display: () => import_chunk_7CG7CM26.display,
27
- generateOneConfig: () => import_chunk_7CG7CM26.generateOneConfig,
28
- generateOptimizedProject: () => import_chunk_7CG7CM26.generateOptimizedProject,
29
- getConfig: () => import_chunk_7CG7CM26.getConfig,
30
- getFnMapAnalysis: () => import_chunk_7CG7CM26.getFnMapAnalysis,
31
- getProjectAnalysis: () => import_chunk_7CG7CM26.getProjectAnalysis,
32
- get_jungle: () => import_chunk_7CG7CM26.get_jungle,
33
- isErrorWithLocation: () => import_chunk_7CG7CM26.isErrorWithLocation,
34
- launchSimulator: () => import_chunk_7CG7CM26.launchSimulator,
35
- manifestProducts: () => import_chunk_7CG7CM26.manifestProducts,
36
- mctree: () => import_chunk_7CG7CM26.mctree,
37
- simulateProgram: () => import_chunk_7CG7CM26.simulateProgram
21
+ StateNodeAttributes: () => import_chunk_BOVSYC7N.StateNodeAttributes,
22
+ buildConfigDescription: () => import_chunk_BOVSYC7N.buildConfigDescription,
23
+ buildOptimizedProject: () => import_chunk_BOVSYC7N.buildOptimizedProject,
24
+ copyRecursiveAsNeeded: () => import_chunk_KHQPCXSJ.copyRecursiveAsNeeded,
25
+ defaultConfig: () => import_chunk_BOVSYC7N.defaultConfig,
26
+ display: () => import_chunk_BOVSYC7N.display,
27
+ generateOneConfig: () => import_chunk_BOVSYC7N.generateOneConfig,
28
+ generateOptimizedProject: () => import_chunk_BOVSYC7N.generateOptimizedProject,
29
+ getConfig: () => import_chunk_BOVSYC7N.getConfig,
30
+ getFnMapAnalysis: () => import_chunk_BOVSYC7N.getFnMapAnalysis,
31
+ getProjectAnalysis: () => import_chunk_BOVSYC7N.getProjectAnalysis,
32
+ get_jungle: () => import_chunk_BOVSYC7N.get_jungle,
33
+ isErrorWithLocation: () => import_chunk_BOVSYC7N.isErrorWithLocation,
34
+ launchSimulator: () => import_chunk_BOVSYC7N.launchSimulator,
35
+ manifestProducts: () => import_chunk_BOVSYC7N.manifestProducts,
36
+ mctree: () => import_chunk_BOVSYC7N.mctree,
37
+ simulateProgram: () => import_chunk_BOVSYC7N.simulateProgram
38
38
  });
39
39
  module.exports = __toCommonJS(optimizer_exports);
40
- var import_chunk_7CG7CM26 = require("./chunk-7CG7CM26.cjs");
41
- var import_chunk_X7QCZR3F = require("./chunk-X7QCZR3F.cjs");
42
- var import_chunk_JDC43A3I = require("./chunk-JDC43A3I.cjs");
43
- var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
44
- (0, import_chunk_7CG7CM26.init_optimizer)();
40
+ var import_chunk_BOVSYC7N = require("./chunk-BOVSYC7N.cjs");
41
+ var import_chunk_KHQPCXSJ = require("./chunk-KHQPCXSJ.cjs");
42
+ var import_chunk_UBAYZSM3 = require("./chunk-UBAYZSM3.cjs");
43
+ var import_chunk_VS2QQHAK = require("./chunk-VS2QQHAK.cjs");
44
+ (0, import_chunk_BOVSYC7N.init_optimizer)();
45
45
  // Annotate the CommonJS export names for ESM import in node:
46
46
  0 && (module.exports = {
47
47
  StateNodeAttributes,
@@ -18,25 +18,25 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var sdk_util_exports = {};
20
20
  __export(sdk_util_exports, {
21
- SectionKinds: () => import_chunk_7CG7CM26.SectionKinds,
22
- appSupport: () => import_chunk_7CG7CM26.appSupport,
23
- connectiq: () => import_chunk_7CG7CM26.connectiq,
24
- getDeviceInfo: () => import_chunk_7CG7CM26.getDeviceInfo,
25
- getFunctionDocumentation: () => import_chunk_7CG7CM26.getFunctionDocumentation,
26
- getLanguages: () => import_chunk_7CG7CM26.getLanguages,
27
- getSdkPath: () => import_chunk_7CG7CM26.getSdkPath,
28
- isWin: () => import_chunk_7CG7CM26.isWin,
29
- optimizeProgram: () => import_chunk_7CG7CM26.optimizeProgram,
30
- readPrg: () => import_chunk_7CG7CM26.readPrg,
31
- readPrgWithOffsets: () => import_chunk_7CG7CM26.readPrgWithOffsets,
32
- xmlUtil: () => import_chunk_7CG7CM26.xml_util_exports
21
+ SectionKinds: () => import_chunk_BOVSYC7N.SectionKinds,
22
+ appSupport: () => import_chunk_BOVSYC7N.appSupport,
23
+ connectiq: () => import_chunk_BOVSYC7N.connectiq,
24
+ getDeviceInfo: () => import_chunk_BOVSYC7N.getDeviceInfo,
25
+ getFunctionDocumentation: () => import_chunk_BOVSYC7N.getFunctionDocumentation,
26
+ getLanguages: () => import_chunk_BOVSYC7N.getLanguages,
27
+ getSdkPath: () => import_chunk_BOVSYC7N.getSdkPath,
28
+ isWin: () => import_chunk_BOVSYC7N.isWin,
29
+ optimizeProgram: () => import_chunk_BOVSYC7N.optimizeProgram,
30
+ readPrg: () => import_chunk_BOVSYC7N.readPrg,
31
+ readPrgWithOffsets: () => import_chunk_BOVSYC7N.readPrgWithOffsets,
32
+ xmlUtil: () => import_chunk_BOVSYC7N.xml_util_exports
33
33
  });
34
34
  module.exports = __toCommonJS(sdk_util_exports);
35
- var import_chunk_7CG7CM26 = require("./chunk-7CG7CM26.cjs");
36
- var import_chunk_X7QCZR3F = require("./chunk-X7QCZR3F.cjs");
37
- var import_chunk_JDC43A3I = require("./chunk-JDC43A3I.cjs");
38
- var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
39
- (0, import_chunk_7CG7CM26.init_sdk_util)();
35
+ var import_chunk_BOVSYC7N = require("./chunk-BOVSYC7N.cjs");
36
+ var import_chunk_KHQPCXSJ = require("./chunk-KHQPCXSJ.cjs");
37
+ var import_chunk_UBAYZSM3 = require("./chunk-UBAYZSM3.cjs");
38
+ var import_chunk_VS2QQHAK = require("./chunk-VS2QQHAK.cjs");
39
+ (0, import_chunk_BOVSYC7N.init_sdk_util)();
40
40
  // Annotate the CommonJS export names for ESM import in node:
41
41
  0 && (module.exports = {
42
42
  SectionKinds,
@@ -0,0 +1,2 @@
1
+ import { ExactOrUnion } from "./types";
2
+ export declare function inferenceType(a: ExactOrUnion, expandNull?: boolean): ExactOrUnion;
@@ -38,7 +38,7 @@ export declare function evaluateUnaryTypes(op: mctree.UnaryOperator, argument: E
38
38
  type: ExactOrUnion;
39
39
  } & OpMatch;
40
40
  export declare function deEnumerate(t: ExactOrUnion): ExactOrUnion;
41
- export declare function getLhsConstraint(istate: InterpState, node: mctree.MemberExpression | mctree.Identifier): import("./types").UnionType | import("./types").NumberType | import("./types").LongType | import("./types").FloatType | import("./types").DoubleType | import("./types").CharType | import("./types").StringType | import("./types").ArrayType | import("./types").DictionaryType | import("./types").MethodType | import("./types").ModuleType | import("./types").FunctionType | import("./types").ClassType | ObjectType | import("./types").EnumType | import("./types").SymbolType | import("./types").TypedefType | null | undefined;
41
+ export declare function getLhsConstraint(istate: InterpState, node: mctree.MemberExpression | mctree.Identifier): import("./types").UnionType | import("./types").NumberType | import("./types").LongType | import("./types").FloatType | import("./types").DoubleType | import("./types").CharType | import("./types").StringType | import("./types").ArrayType | import("./types").DictionaryType | import("./types").MethodType | import("./types").ModuleType | import("./types").FunctionType | import("./types").ClassType | ObjectType | import("./types").EnumType | import("./types").SymbolType | import("./types").TypedefType | null;
42
42
  export declare function evaluateNode(istate: InterpState, node: mctree.Node): void;
43
43
  export declare function roundToFloat(value: number): number;
44
44
  export declare function mustBeIdentical(a: ExactOrUnion, b: ExactOrUnion): boolean;
@@ -184,7 +184,9 @@ export declare function isSingleton(v: AbstractValue): v is SingletonType;
184
184
  export declare function hasValue(v: AbstractValue): v is WithValue<ExactTypes>;
185
185
  export declare function hasNoData(v: AbstractValue, t: TypeTag): boolean;
186
186
  export declare function cloneType<T extends ExactOrUnion>(t: T): T;
187
- export declare function relaxType(type: ExactOrUnion): ExactOrUnion;
187
+ export declare function relaxType(type: ExactOrUnion): {
188
+ type: number;
189
+ };
188
190
  export declare function typeFromTypeStateNode(state: ProgramStateAnalysis, sn: StateNodeDecl, classVsObj?: boolean): ExactOrUnion;
189
191
  export declare function typeFromTypeStateNodes(state: ProgramStateAnalysis, sns: StateNodeDecl[], classVsObj?: boolean): ExactOrUnion;
190
192
  export declare function arrayLiteralKeyFromType(k: ExactOrUnion | null | undefined): number | null;
package/build/util.cjs CHANGED
@@ -18,35 +18,35 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var util_exports = {};
20
20
  __export(util_exports, {
21
- AwaitedError: () => import_chunk_X7QCZR3F.AwaitedError,
22
- GenericQueue: () => import_chunk_X7QCZR3F.GenericQueue,
23
- bumpLogging: () => import_chunk_X7QCZR3F.bumpLogging,
24
- copyRecursiveAsNeeded: () => import_chunk_X7QCZR3F.copyRecursiveAsNeeded,
25
- every: () => import_chunk_X7QCZR3F.every,
26
- first_modified: () => import_chunk_X7QCZR3F.first_modified,
27
- forEach: () => import_chunk_X7QCZR3F.forEach,
28
- globSome: () => import_chunk_X7QCZR3F.globSome,
29
- globa: () => import_chunk_X7QCZR3F.globa,
30
- last_modified: () => import_chunk_X7QCZR3F.last_modified,
31
- log: () => import_chunk_X7QCZR3F.log,
32
- logPromise: () => import_chunk_X7QCZR3F.logPromise,
33
- logger: () => import_chunk_X7QCZR3F.logger,
34
- map: () => import_chunk_X7QCZR3F.map,
35
- popcount: () => import_chunk_X7QCZR3F.popcount,
36
- promiseAll: () => import_chunk_X7QCZR3F.promiseAll,
37
- pushUnique: () => import_chunk_X7QCZR3F.pushUnique,
38
- readByLine: () => import_chunk_X7QCZR3F.readByLine,
39
- reduce: () => import_chunk_X7QCZR3F.reduce,
40
- sameArrays: () => import_chunk_X7QCZR3F.sameArrays,
41
- setBanner: () => import_chunk_X7QCZR3F.setBanner,
42
- some: () => import_chunk_X7QCZR3F.some,
43
- spawnByLine: () => import_chunk_X7QCZR3F.spawnByLine,
44
- wouldLog: () => import_chunk_X7QCZR3F.wouldLog
21
+ AwaitedError: () => import_chunk_KHQPCXSJ.AwaitedError,
22
+ GenericQueue: () => import_chunk_KHQPCXSJ.GenericQueue,
23
+ bumpLogging: () => import_chunk_KHQPCXSJ.bumpLogging,
24
+ copyRecursiveAsNeeded: () => import_chunk_KHQPCXSJ.copyRecursiveAsNeeded,
25
+ every: () => import_chunk_KHQPCXSJ.every,
26
+ first_modified: () => import_chunk_KHQPCXSJ.first_modified,
27
+ forEach: () => import_chunk_KHQPCXSJ.forEach,
28
+ globSome: () => import_chunk_KHQPCXSJ.globSome,
29
+ globa: () => import_chunk_KHQPCXSJ.globa,
30
+ last_modified: () => import_chunk_KHQPCXSJ.last_modified,
31
+ log: () => import_chunk_KHQPCXSJ.log,
32
+ logPromise: () => import_chunk_KHQPCXSJ.logPromise,
33
+ logger: () => import_chunk_KHQPCXSJ.logger,
34
+ map: () => import_chunk_KHQPCXSJ.map,
35
+ popcount: () => import_chunk_KHQPCXSJ.popcount,
36
+ promiseAll: () => import_chunk_KHQPCXSJ.promiseAll,
37
+ pushUnique: () => import_chunk_KHQPCXSJ.pushUnique,
38
+ readByLine: () => import_chunk_KHQPCXSJ.readByLine,
39
+ reduce: () => import_chunk_KHQPCXSJ.reduce,
40
+ sameArrays: () => import_chunk_KHQPCXSJ.sameArrays,
41
+ setBanner: () => import_chunk_KHQPCXSJ.setBanner,
42
+ some: () => import_chunk_KHQPCXSJ.some,
43
+ spawnByLine: () => import_chunk_KHQPCXSJ.spawnByLine,
44
+ wouldLog: () => import_chunk_KHQPCXSJ.wouldLog
45
45
  });
46
46
  module.exports = __toCommonJS(util_exports);
47
- var import_chunk_X7QCZR3F = require("./chunk-X7QCZR3F.cjs");
48
- var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
49
- (0, import_chunk_X7QCZR3F.init_util)();
47
+ var import_chunk_KHQPCXSJ = require("./chunk-KHQPCXSJ.cjs");
48
+ var import_chunk_VS2QQHAK = require("./chunk-VS2QQHAK.cjs");
49
+ (0, import_chunk_KHQPCXSJ.init_util)();
50
50
  // Annotate the CommonJS export names for ESM import in node:
51
51
  0 && (module.exports = {
52
52
  AwaitedError,
@@ -21,17 +21,17 @@ __export(worker_thread_exports, {
21
21
  default: () => worker_thread_default
22
22
  });
23
23
  module.exports = __toCommonJS(worker_thread_exports);
24
- var import_chunk_7CG7CM26 = require("./chunk-7CG7CM26.cjs");
25
- var import_chunk_X7QCZR3F = require("./chunk-X7QCZR3F.cjs");
26
- var import_chunk_JDC43A3I = require("./chunk-JDC43A3I.cjs");
27
- var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
24
+ var import_chunk_BOVSYC7N = require("./chunk-BOVSYC7N.cjs");
25
+ var import_chunk_KHQPCXSJ = require("./chunk-KHQPCXSJ.cjs");
26
+ var import_chunk_UBAYZSM3 = require("./chunk-UBAYZSM3.cjs");
27
+ var import_chunk_VS2QQHAK = require("./chunk-VS2QQHAK.cjs");
28
28
  var import_node_worker_threads = require("node:worker_threads");
29
- var require_worker_thread = (0, import_chunk_ABYVSU2C.__commonJS)({
29
+ var require_worker_thread = (0, import_chunk_VS2QQHAK.__commonJS)({
30
30
  "src/worker-thread.ts"() {
31
- (0, import_chunk_7CG7CM26.init_worker_task)();
31
+ (0, import_chunk_BOVSYC7N.init_worker_task)();
32
32
  if (import_node_worker_threads.parentPort) {
33
33
  import_node_worker_threads.parentPort.on("message", async (task) => {
34
- return import_node_worker_threads.parentPort.postMessage(await (0, import_chunk_7CG7CM26.performTask)(task));
34
+ return import_node_worker_threads.parentPort.postMessage(await (0, import_chunk_BOVSYC7N.performTask)(task));
35
35
  });
36
36
  }
37
37
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@markw65/monkeyc-optimizer",
3
3
  "type": "commonjs",
4
- "version": "1.1.89",
4
+ "version": "1.1.90",
5
5
  "description": "Source to source optimizer for Garmin Monkey C code",
6
6
  "main": "build/optimizer.cjs",
7
7
  "types": "build/src/optimizer.d.ts",
@@ -70,7 +70,7 @@
70
70
  "@typescript-eslint/eslint-plugin": "^5.28.0",
71
71
  "@typescript-eslint/parser": "^5.28.0",
72
72
  "chai": "^4.3.7",
73
- "esbuild": "^0.17.16",
73
+ "esbuild": "^0.25.8",
74
74
  "eslint": "^8.12.0",
75
75
  "extract-zip": "^2.0.1",
76
76
  "fast-glob": "^3.2.12",