@tscircuit/eval 0.0.108 → 0.0.109

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/bun.lock CHANGED
@@ -5,7 +5,7 @@
5
5
  "devDependencies": {
6
6
  "@babel/standalone": "^7.26.2",
7
7
  "@biomejs/biome": "^1.9.4",
8
- "@tscircuit/core": "^0.0.339",
8
+ "@tscircuit/core": "^0.0.340",
9
9
  "@tscircuit/math-utils": "^0.0.10",
10
10
  "@types/babel__standalone": "^7.1.9",
11
11
  "@types/bun": "latest",
@@ -17,8 +17,8 @@
17
17
  "tsup": "^8.3.5",
18
18
  },
19
19
  "peerDependencies": {
20
- "@tscircuit/core": "^0.0.339",
21
- "circuit-json": "^0.0.149",
20
+ "@tscircuit/core": "^0.0.340",
21
+ "circuit-json": "*",
22
22
  "jscad-fiber": "*",
23
23
  "typescript": "^5.0.0",
24
24
  },
@@ -171,7 +171,7 @@
171
171
 
172
172
  "@tscircuit/capacity-autorouter": ["@tscircuit/capacity-autorouter@0.0.13", "", { "peerDependencies": { "typescript": "^5.7.3" } }, "sha512-lTdRP4GNb6HXk5HmSBs6qtsVPAwnsPeSlvsq/HdrtGbc3+/c3INWyfDcU8P0j7kw4lUVQJ9XfWUcDflizK88jQ=="],
173
173
 
174
- "@tscircuit/core": ["@tscircuit/core@0.0.339", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "@tscircuit/capacity-autorouter": "^0.0.13", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.9", "@tscircuit/props": "^0.0.159", "@tscircuit/schematic-autolayout": "^0.0.6", "@tscircuit/soup-util": "^0.0.41", "circuit-json": "^0.0.149", "circuit-json-to-connectivity-map": "^0.0.17", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "schematic-symbols": "^0.0.121", "transformation-matrix": "^2.16.1", "zod": "^3.23.8" }, "peerDependencies": { "@tscircuit/footprinter": "*", "typescript": "^5.0.0" } }, "sha512-JNw93T4H44JnjHhOzsVJgr/K8jKnQ3MhmKbXr+jOogxBAoLvQKpafNTlpGN0D41ACh5lZY3sLY9DpwEOHGrPQg=="],
174
+ "@tscircuit/core": ["@tscircuit/core@0.0.340", "", { "dependencies": { "@lume/kiwi": "^0.4.3", "@tscircuit/capacity-autorouter": "^0.0.13", "@tscircuit/infgrid-ijump-astar": "^0.0.33", "@tscircuit/math-utils": "^0.0.9", "@tscircuit/props": "^0.0.159", "@tscircuit/schematic-autolayout": "^0.0.6", "@tscircuit/soup-util": "^0.0.41", "circuit-json": "^0.0.151", "circuit-json-to-connectivity-map": "^0.0.17", "format-si-unit": "^0.0.3", "nanoid": "^5.0.7", "performance-now": "^2.1.0", "react-reconciler": "^0.31.0", "react-reconciler-18": "npm:react-reconciler@0.29.2", "schematic-symbols": "^0.0.121", "transformation-matrix": "^2.16.1", "zod": "^3.23.8" }, "peerDependencies": { "@tscircuit/footprinter": "*", "typescript": "^5.0.0" } }, "sha512-9FLK4Lj3VoOXCSaEuYOJpYHSsvD5/0hNEnW8to/2n9BiR/3Zxgrkv+2LJ1Ijg7JeaiMWq8gn4vKS7YdU8S78Wg=="],
175
175
 
176
176
  "@tscircuit/footprinter": ["@tscircuit/footprinter@0.0.135", "", { "dependencies": { "@tscircuit/mm": "^0.0.8", "zod": "^3.23.8" }, "peerDependencies": { "circuit-json": "*" } }, "sha512-+8MasMGTNQL/NINnlWk2v6zw/NDerfdIBG3uqhrTr0r7VOHh4lK1ymTkQR7IeoypkxTIHYGB9wHbOt39XAF3mg=="],
177
177
 
@@ -253,7 +253,7 @@
253
253
 
254
254
  "chokidar": ["chokidar@4.0.3", "", { "dependencies": { "readdirp": "^4.0.1" } }, "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA=="],
255
255
 
256
- "circuit-json": ["circuit-json@0.0.149", "", { "dependencies": { "nanoid": "^5.0.7", "zod": "^3.23.6" } }, "sha512-mza26YIFPx73MtnlosCIGtu070Sn62NojGrpJ4CLJHaJ5GWKRZHq7et+poPjSDC/0/nq7foBEeS+kMD/dPhgJA=="],
256
+ "circuit-json": ["circuit-json@0.0.151", "", { "dependencies": { "nanoid": "^5.0.7", "zod": "^3.23.6" } }, "sha512-N6+saL1EwK8OfiPhrjS+oSjdyiZrM/avBZh8wyd4GK6tFNa07CtZduiFrX7oS3vQgKTl1uCk7bKbh/TR9+kHUA=="],
257
257
 
258
258
  "circuit-json-to-connectivity-map": ["circuit-json-to-connectivity-map@0.0.17", "", { "dependencies": { "@tscircuit/math-utils": "^0.0.4" }, "peerDependencies": { "typescript": "^5.0.0" } }, "sha512-0IlFTwGWFXzlrYSvXQocXi6pYriF/JKnfihfvnVZ4p60kMC+1QvtJdivW9C4I0VNXEe922xak70v3YZNJrjI1g=="],
259
259
 
@@ -1,5 +1,5 @@
1
1
  import { AnyCircuitElement } from 'circuit-json';
2
- import { RootCircuit } from '@tscircuit/core';
2
+ import { RootCircuitEventName, RootCircuit } from '@tscircuit/core';
3
3
 
4
4
  interface CircuitRunnerConfiguration {
5
5
  snippetsApiBaseUrl: string;
@@ -28,7 +28,7 @@ interface CircuitRunnerApi {
28
28
  renderUntilSettled: () => Promise<void>;
29
29
  getCircuitJson: () => Promise<AnyCircuitElement[]>;
30
30
  setSnippetsApiBaseUrl: (baseUrl: string) => Promise<void>;
31
- on: (event: string, callback: (...args: any[]) => void) => void;
31
+ on: (event: RootCircuitEventName, callback: (...args: any[]) => void) => void;
32
32
  clearEventListeners: () => void;
33
33
  kill: () => Promise<void>;
34
34
  }
@@ -1,4 +1,5 @@
1
1
  import { AnyCircuitElement } from 'circuit-json';
2
+ import { RootCircuitEventName } from '@tscircuit/core';
2
3
 
3
4
  declare const getImportsFromCode: (code: string) => string[];
4
5
 
@@ -22,7 +23,7 @@ type CircuitWebWorker = {
22
23
  }) => Promise<void>;
23
24
  renderUntilSettled: () => Promise<void>;
24
25
  getCircuitJson: () => Promise<AnyCircuitElement[]>;
25
- on: (event: "renderable:renderLifecycle:anyEvent" | `asyncEffect:start` | `asyncEffect:end` | `renderable:renderLifecycle:${string}`, callback: (...args: any[]) => void) => void;
26
+ on: (event: RootCircuitEventName, callback: (...args: any[]) => void) => void;
26
27
  clearEventListeners: () => void;
27
28
  kill: () => Promise<void>;
28
29
  };
package/dist/lib/index.js CHANGED
@@ -66,4 +66,4 @@ export {
66
66
  createCircuitWebWorker,
67
67
  getImportsFromCode
68
68
  };
69
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vbGliL2luZGV4LnRzIiwgIi4uLy4uL2xpYi91dGlscy9nZXQtaW1wb3J0cy1mcm9tLWNvZGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB0eXBlIHsgQW55Q2lyY3VpdEVsZW1lbnQgfSBmcm9tIFwiY2lyY3VpdC1qc29uXCJcbmltcG9ydCAqIGFzIENvbWxpbmsgZnJvbSBcImNvbWxpbmtcIlxuZXhwb3J0ICogZnJvbSBcIi4vdXRpbHMvaW5kZXhcIlxuaW1wb3J0IHR5cGUge1xuICBJbnRlcm5hbFdlYldvcmtlckFwaSxcbiAgV2ViV29ya2VyQ29uZmlndXJhdGlvbixcbiAgQ2lyY3VpdFdlYldvcmtlcixcbn0gZnJvbSBcIi4vc2hhcmVkL3R5cGVzXCJcblxuZXhwb3J0IHR5cGUgeyBDaXJjdWl0V2ViV29ya2VyLCBXZWJXb3JrZXJDb25maWd1cmF0aW9uIH1cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNpcmN1aXRXZWJXb3JrZXIgPSBhc3luYyAoXG4gIGNvbmZpZ3VyYXRpb246IFBhcnRpYWw8V2ViV29ya2VyQ29uZmlndXJhdGlvbj4sXG4pOiBQcm9taXNlPENpcmN1aXRXZWJXb3JrZXI+ID0+IHtcbiAgaWYgKGNvbmZpZ3VyYXRpb24udmVyYm9zZSkge1xuICAgIGNvbnNvbGUubG9nKFxuICAgICAgXCJbV29ya2VyXSBDcmVhdGluZyBjaXJjdWl0IHdlYiB3b3JrZXIgd2l0aCBjb25maWc6XCIsXG4gICAgICBjb25maWd1cmF0aW9uLFxuICAgIClcbiAgfVxuXG4gIGxldCB3b3JrZXJCbG9iVXJsID1cbiAgICBjb25maWd1cmF0aW9uLndlYldvcmtlckJsb2JVcmwgPz8gY29uZmlndXJhdGlvbi53ZWJXb3JrZXJVcmxcblxuICBpZiAoIXdvcmtlckJsb2JVcmwpIHtcbiAgICBjb25zdCBjZG5VcmwgPVxuICAgICAgXCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL0B0c2NpcmN1aXQvZXZhbC13ZWJ3b3JrZXIvZGlzdC93ZWJ3b3JrZXIvaW5kZXguanNcIlxuXG4gICAgY29uc3Qgd29ya2VyQmxvYiA9IGF3YWl0IGZldGNoKGNkblVybCkudGhlbigocmVzKSA9PiByZXMuYmxvYigpKVxuICAgIHdvcmtlckJsb2JVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKHdvcmtlckJsb2IpXG4gIH1cblxuICBjb25zdCByYXdXb3JrZXIgPSBuZXcgV29ya2VyKHdvcmtlckJsb2JVcmwsIHsgdHlwZTogXCJtb2R1bGVcIiB9KVxuICBjb25zdCBjb21saW5rV29ya2VyID0gQ29tbGluay53cmFwPEludGVybmFsV2ViV29ya2VyQXBpPihyYXdXb3JrZXIpXG5cbiAgaWYgKGNvbmZpZ3VyYXRpb24uc25pcHBldHNBcGlCYXNlVXJsKSB7XG4gICAgYXdhaXQgY29tbGlua1dvcmtlci5zZXRTbmlwcGV0c0FwaUJhc2VVcmwoY29uZmlndXJhdGlvbi5zbmlwcGV0c0FwaUJhc2VVcmwpXG4gIH1cblxuICBsZXQgaXNUZXJtaW5hdGVkID0gZmFsc2VcblxuICAvLyBDcmVhdGUgYSB3cmFwcGVyIHRoYXQgaGFuZGxlcyBldmVudHMgZGlyZWN0bHkgdGhyb3VnaCBjaXJjdWl0IGluc3RhbmNlXG4gIGNvbnN0IHdyYXBwZXI6IENpcmN1aXRXZWJXb3JrZXIgPSB7XG4gICAgY2xlYXJFdmVudExpc3RlbmVyczogY29tbGlua1dvcmtlci5jbGVhckV2ZW50TGlzdGVuZXJzLmJpbmQoY29tbGlua1dvcmtlciksXG4gICAgZXhlY3V0ZTogYXN5bmMgKC4uLmFyZ3MpID0+IHtcbiAgICAgIGlmIChpc1Rlcm1pbmF0ZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQ2lyY3VpdFdlYldvcmtlciB3YXMgdGVybWluYXRlZCwgY2FuJ3QgZXhlY3V0ZVwiKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGNvbWxpbmtXb3JrZXIuZXhlY3V0ZS5iaW5kKGNvbWxpbmtXb3JrZXIpKC4uLmFyZ3MpXG4gICAgfSxcbiAgICBleGVjdXRlV2l0aEZzTWFwOiBhc3luYyAoLi4uYXJncykgPT4ge1xuICAgICAgaWYgKGlzVGVybWluYXRlZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgXCJDaXJjdWl0V2ViV29ya2VyIHdhcyB0ZXJtaW5hdGVkLCBjYW4ndCBleGVjdXRlV2l0aEZzTWFwXCIsXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIHJldHVybiBjb21saW5rV29ya2VyLmV4ZWN1dGVXaXRoRnNNYXAuYmluZChjb21saW5rV29ya2VyKSguLi5hcmdzKVxuICAgIH0sXG4gICAgcmVuZGVyVW50aWxTZXR0bGVkOiBjb21saW5rV29ya2VyLnJlbmRlclVudGlsU2V0dGxlZC5iaW5kKGNvbWxpbmtXb3JrZXIpLFxuICAgIGdldENpcmN1aXRKc29uOiBjb21saW5rV29ya2VyLmdldENpcmN1aXRKc29uLmJpbmQoY29tbGlua1dvcmtlciksXG4gICAgb246IChldmVudDogc3RyaW5nLCBjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkKSA9PiB7XG4gICAgICBjb25zdCBwcm94aWVkQ2FsbGJhY2sgPSBDb21saW5rLnByb3h5KGNhbGxiYWNrKVxuICAgICAgY29tbGlua1dvcmtlci5vbihldmVudCwgcHJveGllZENhbGxiYWNrKVxuICAgIH0sXG4gICAga2lsbDogYXN5bmMgKCkgPT4ge1xuICAgICAgY29tbGlua1dvcmtlcltDb21saW5rLnJlbGVhc2VQcm94eV0oKVxuICAgICAgcmF3V29ya2VyLnRlcm1pbmF0ZSgpXG4gICAgICBpc1Rlcm1pbmF0ZWQgPSB0cnVlXG4gICAgfSxcbiAgfVxuXG4gIHJldHVybiB3cmFwcGVyXG59XG4iLCAiZXhwb3J0IGNvbnN0IGdldEltcG9ydHNGcm9tQ29kZSA9IChjb2RlOiBzdHJpbmcpOiBzdHJpbmdbXSA9PiB7XG4gIC8vIE1hdGNoIGJhc2ljIGltcG9ydCBwYXR0ZXJucyBpbmNsdWRpbmcgY29tYmluZWQgZGVmYXVsdCBhbmQgbmFtZXNwYWNlIGltcG9ydHNcbiAgY29uc3QgaW1wb3J0UmVnZXggPVxuICAgIC9eXFxzKmltcG9ydFxccysoPzooPzpbXFx3XFxzXSssXFxzKik/KD86XFwqXFxzK2FzXFxzK1tcXHdcXHNdK3xcXHtbXFxzXFx3LF0rXFx9fFxcdyspXFxzK2Zyb21cXHMrKT9bJ1wiXSguKz8pWydcIl0vZ21cbiAgY29uc3QgaW1wb3J0czogc3RyaW5nW10gPSBbXVxuICBsZXQgbWF0Y2g6IFJlZ0V4cEV4ZWNBcnJheSB8IG51bGxcblxuICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL25vQXNzaWduSW5FeHByZXNzaW9uczogPGV4cGxhbmF0aW9uPlxuICB3aGlsZSAoKG1hdGNoID0gaW1wb3J0UmVnZXguZXhlYyhjb2RlKSkgIT09IG51bGwpIHtcbiAgICBpbXBvcnRzLnB1c2gobWF0Y2hbMV0pXG4gIH1cblxuICByZXR1cm4gaW1wb3J0c1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUNBLFlBQVksYUFBYTs7O0FDRGxCLElBQU0scUJBQXFCLENBQUMsU0FBMkI7QUFFNUQsUUFBTSxjQUNKO0FBQ0YsUUFBTSxVQUFvQixDQUFDO0FBQzNCLE1BQUk7QUFHSixVQUFRLFFBQVEsWUFBWSxLQUFLLElBQUksT0FBTyxNQUFNO0FBQ2hELFlBQVEsS0FBSyxNQUFNLENBQUMsQ0FBQztBQUFBLEVBQ3ZCO0FBRUEsU0FBTztBQUNUOzs7QURGTyxJQUFNLHlCQUF5QixPQUNwQyxrQkFDOEI7QUFDOUIsTUFBSSxjQUFjLFNBQVM7QUFDekIsWUFBUTtBQUFBLE1BQ047QUFBQSxNQUNBO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFFQSxNQUFJLGdCQUNGLGNBQWMsb0JBQW9CLGNBQWM7QUFFbEQsTUFBSSxDQUFDLGVBQWU7QUFDbEIsVUFBTSxTQUNKO0FBRUYsVUFBTSxhQUFhLE1BQU0sTUFBTSxNQUFNLEVBQUUsS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUM7QUFDL0Qsb0JBQWdCLElBQUksZ0JBQWdCLFVBQVU7QUFBQSxFQUNoRDtBQUVBLFFBQU0sWUFBWSxJQUFJLE9BQU8sZUFBZSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQzlELFFBQU0sZ0JBQXdCLGFBQTJCLFNBQVM7QUFFbEUsTUFBSSxjQUFjLG9CQUFvQjtBQUNwQyxVQUFNLGNBQWMsc0JBQXNCLGNBQWMsa0JBQWtCO0FBQUEsRUFDNUU7QUFFQSxNQUFJLGVBQWU7QUFHbkIsUUFBTSxVQUE0QjtBQUFBLElBQ2hDLHFCQUFxQixjQUFjLG9CQUFvQixLQUFLLGFBQWE7QUFBQSxJQUN6RSxTQUFTLFVBQVUsU0FBUztBQUMxQixVQUFJLGNBQWM7QUFDaEIsY0FBTSxJQUFJLE1BQU0sZ0RBQWdEO0FBQUEsTUFDbEU7QUFDQSxhQUFPLGNBQWMsUUFBUSxLQUFLLGFBQWEsRUFBRSxHQUFHLElBQUk7QUFBQSxJQUMxRDtBQUFBLElBQ0Esa0JBQWtCLFVBQVUsU0FBUztBQUNuQyxVQUFJLGNBQWM7QUFDaEIsY0FBTSxJQUFJO0FBQUEsVUFDUjtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBQ0EsYUFBTyxjQUFjLGlCQUFpQixLQUFLLGFBQWEsRUFBRSxHQUFHLElBQUk7QUFBQSxJQUNuRTtBQUFBLElBQ0Esb0JBQW9CLGNBQWMsbUJBQW1CLEtBQUssYUFBYTtBQUFBLElBQ3ZFLGdCQUFnQixjQUFjLGVBQWUsS0FBSyxhQUFhO0FBQUEsSUFDL0QsSUFBSSxDQUFDLE9BQWUsYUFBdUM7QUFDekQsWUFBTSxrQkFBMEIsY0FBTSxRQUFRO0FBQzlDLG9CQUFjLEdBQUcsT0FBTyxlQUFlO0FBQUEsSUFDekM7QUFBQSxJQUNBLE1BQU0sWUFBWTtBQUNoQixvQkFBc0Isb0JBQVksRUFBRTtBQUNwQyxnQkFBVSxVQUFVO0FBQ3BCLHFCQUFlO0FBQUEsSUFDakI7QUFBQSxFQUNGO0FBRUEsU0FBTztBQUNUOyIsCiAgIm5hbWVzIjogW10KfQo=
69
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vbGliL2luZGV4LnRzIiwgIi4uLy4uL2xpYi91dGlscy9nZXQtaW1wb3J0cy1mcm9tLWNvZGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB0eXBlIHsgQW55Q2lyY3VpdEVsZW1lbnQgfSBmcm9tIFwiY2lyY3VpdC1qc29uXCJcbmltcG9ydCAqIGFzIENvbWxpbmsgZnJvbSBcImNvbWxpbmtcIlxuZXhwb3J0ICogZnJvbSBcIi4vdXRpbHMvaW5kZXhcIlxuaW1wb3J0IHR5cGUge1xuICBJbnRlcm5hbFdlYldvcmtlckFwaSxcbiAgV2ViV29ya2VyQ29uZmlndXJhdGlvbixcbiAgQ2lyY3VpdFdlYldvcmtlcixcbn0gZnJvbSBcIi4vc2hhcmVkL3R5cGVzXCJcbmltcG9ydCB0eXBlIHsgUm9vdENpcmN1aXRFdmVudE5hbWUgfSBmcm9tIFwiQHRzY2lyY3VpdC9jb3JlXCJcblxuZXhwb3J0IHR5cGUgeyBDaXJjdWl0V2ViV29ya2VyLCBXZWJXb3JrZXJDb25maWd1cmF0aW9uIH1cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNpcmN1aXRXZWJXb3JrZXIgPSBhc3luYyAoXG4gIGNvbmZpZ3VyYXRpb246IFBhcnRpYWw8V2ViV29ya2VyQ29uZmlndXJhdGlvbj4sXG4pOiBQcm9taXNlPENpcmN1aXRXZWJXb3JrZXI+ID0+IHtcbiAgaWYgKGNvbmZpZ3VyYXRpb24udmVyYm9zZSkge1xuICAgIGNvbnNvbGUubG9nKFxuICAgICAgXCJbV29ya2VyXSBDcmVhdGluZyBjaXJjdWl0IHdlYiB3b3JrZXIgd2l0aCBjb25maWc6XCIsXG4gICAgICBjb25maWd1cmF0aW9uLFxuICAgIClcbiAgfVxuXG4gIGxldCB3b3JrZXJCbG9iVXJsID1cbiAgICBjb25maWd1cmF0aW9uLndlYldvcmtlckJsb2JVcmwgPz8gY29uZmlndXJhdGlvbi53ZWJXb3JrZXJVcmxcblxuICBpZiAoIXdvcmtlckJsb2JVcmwpIHtcbiAgICBjb25zdCBjZG5VcmwgPVxuICAgICAgXCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL0B0c2NpcmN1aXQvZXZhbC13ZWJ3b3JrZXIvZGlzdC93ZWJ3b3JrZXIvaW5kZXguanNcIlxuXG4gICAgY29uc3Qgd29ya2VyQmxvYiA9IGF3YWl0IGZldGNoKGNkblVybCkudGhlbigocmVzKSA9PiByZXMuYmxvYigpKVxuICAgIHdvcmtlckJsb2JVcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKHdvcmtlckJsb2IpXG4gIH1cblxuICBjb25zdCByYXdXb3JrZXIgPSBuZXcgV29ya2VyKHdvcmtlckJsb2JVcmwsIHsgdHlwZTogXCJtb2R1bGVcIiB9KVxuICBjb25zdCBjb21saW5rV29ya2VyID0gQ29tbGluay53cmFwPEludGVybmFsV2ViV29ya2VyQXBpPihyYXdXb3JrZXIpXG5cbiAgaWYgKGNvbmZpZ3VyYXRpb24uc25pcHBldHNBcGlCYXNlVXJsKSB7XG4gICAgYXdhaXQgY29tbGlua1dvcmtlci5zZXRTbmlwcGV0c0FwaUJhc2VVcmwoY29uZmlndXJhdGlvbi5zbmlwcGV0c0FwaUJhc2VVcmwpXG4gIH1cblxuICBsZXQgaXNUZXJtaW5hdGVkID0gZmFsc2VcblxuICAvLyBDcmVhdGUgYSB3cmFwcGVyIHRoYXQgaGFuZGxlcyBldmVudHMgZGlyZWN0bHkgdGhyb3VnaCBjaXJjdWl0IGluc3RhbmNlXG4gIGNvbnN0IHdyYXBwZXI6IENpcmN1aXRXZWJXb3JrZXIgPSB7XG4gICAgY2xlYXJFdmVudExpc3RlbmVyczogY29tbGlua1dvcmtlci5jbGVhckV2ZW50TGlzdGVuZXJzLmJpbmQoY29tbGlua1dvcmtlciksXG4gICAgZXhlY3V0ZTogYXN5bmMgKC4uLmFyZ3MpID0+IHtcbiAgICAgIGlmIChpc1Rlcm1pbmF0ZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQ2lyY3VpdFdlYldvcmtlciB3YXMgdGVybWluYXRlZCwgY2FuJ3QgZXhlY3V0ZVwiKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGNvbWxpbmtXb3JrZXIuZXhlY3V0ZS5iaW5kKGNvbWxpbmtXb3JrZXIpKC4uLmFyZ3MpXG4gICAgfSxcbiAgICBleGVjdXRlV2l0aEZzTWFwOiBhc3luYyAoLi4uYXJncykgPT4ge1xuICAgICAgaWYgKGlzVGVybWluYXRlZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgXCJDaXJjdWl0V2ViV29ya2VyIHdhcyB0ZXJtaW5hdGVkLCBjYW4ndCBleGVjdXRlV2l0aEZzTWFwXCIsXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIHJldHVybiBjb21saW5rV29ya2VyLmV4ZWN1dGVXaXRoRnNNYXAuYmluZChjb21saW5rV29ya2VyKSguLi5hcmdzKVxuICAgIH0sXG4gICAgcmVuZGVyVW50aWxTZXR0bGVkOiBjb21saW5rV29ya2VyLnJlbmRlclVudGlsU2V0dGxlZC5iaW5kKGNvbWxpbmtXb3JrZXIpLFxuICAgIGdldENpcmN1aXRKc29uOiBjb21saW5rV29ya2VyLmdldENpcmN1aXRKc29uLmJpbmQoY29tbGlua1dvcmtlciksXG4gICAgb246IChldmVudDogc3RyaW5nLCBjYWxsYmFjazogKC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkKSA9PiB7XG4gICAgICBjb25zdCBwcm94aWVkQ2FsbGJhY2sgPSBDb21saW5rLnByb3h5KGNhbGxiYWNrKVxuICAgICAgY29tbGlua1dvcmtlci5vbihldmVudCBhcyBSb290Q2lyY3VpdEV2ZW50TmFtZSwgcHJveGllZENhbGxiYWNrKVxuICAgIH0sXG4gICAga2lsbDogYXN5bmMgKCkgPT4ge1xuICAgICAgY29tbGlua1dvcmtlcltDb21saW5rLnJlbGVhc2VQcm94eV0oKVxuICAgICAgcmF3V29ya2VyLnRlcm1pbmF0ZSgpXG4gICAgICBpc1Rlcm1pbmF0ZWQgPSB0cnVlXG4gICAgfSxcbiAgfVxuXG4gIHJldHVybiB3cmFwcGVyXG59XG4iLCAiZXhwb3J0IGNvbnN0IGdldEltcG9ydHNGcm9tQ29kZSA9IChjb2RlOiBzdHJpbmcpOiBzdHJpbmdbXSA9PiB7XG4gIC8vIE1hdGNoIGJhc2ljIGltcG9ydCBwYXR0ZXJucyBpbmNsdWRpbmcgY29tYmluZWQgZGVmYXVsdCBhbmQgbmFtZXNwYWNlIGltcG9ydHNcbiAgY29uc3QgaW1wb3J0UmVnZXggPVxuICAgIC9eXFxzKmltcG9ydFxccysoPzooPzpbXFx3XFxzXSssXFxzKik/KD86XFwqXFxzK2FzXFxzK1tcXHdcXHNdK3xcXHtbXFxzXFx3LF0rXFx9fFxcdyspXFxzK2Zyb21cXHMrKT9bJ1wiXSguKz8pWydcIl0vZ21cbiAgY29uc3QgaW1wb3J0czogc3RyaW5nW10gPSBbXVxuICBsZXQgbWF0Y2g6IFJlZ0V4cEV4ZWNBcnJheSB8IG51bGxcblxuICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL25vQXNzaWduSW5FeHByZXNzaW9uczogPGV4cGxhbmF0aW9uPlxuICB3aGlsZSAoKG1hdGNoID0gaW1wb3J0UmVnZXguZXhlYyhjb2RlKSkgIT09IG51bGwpIHtcbiAgICBpbXBvcnRzLnB1c2gobWF0Y2hbMV0pXG4gIH1cblxuICByZXR1cm4gaW1wb3J0c1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUNBLFlBQVksYUFBYTs7O0FDRGxCLElBQU0scUJBQXFCLENBQUMsU0FBMkI7QUFFNUQsUUFBTSxjQUNKO0FBQ0YsUUFBTSxVQUFvQixDQUFDO0FBQzNCLE1BQUk7QUFHSixVQUFRLFFBQVEsWUFBWSxLQUFLLElBQUksT0FBTyxNQUFNO0FBQ2hELFlBQVEsS0FBSyxNQUFNLENBQUMsQ0FBQztBQUFBLEVBQ3ZCO0FBRUEsU0FBTztBQUNUOzs7QURETyxJQUFNLHlCQUF5QixPQUNwQyxrQkFDOEI7QUFDOUIsTUFBSSxjQUFjLFNBQVM7QUFDekIsWUFBUTtBQUFBLE1BQ047QUFBQSxNQUNBO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFFQSxNQUFJLGdCQUNGLGNBQWMsb0JBQW9CLGNBQWM7QUFFbEQsTUFBSSxDQUFDLGVBQWU7QUFDbEIsVUFBTSxTQUNKO0FBRUYsVUFBTSxhQUFhLE1BQU0sTUFBTSxNQUFNLEVBQUUsS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUM7QUFDL0Qsb0JBQWdCLElBQUksZ0JBQWdCLFVBQVU7QUFBQSxFQUNoRDtBQUVBLFFBQU0sWUFBWSxJQUFJLE9BQU8sZUFBZSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQzlELFFBQU0sZ0JBQXdCLGFBQTJCLFNBQVM7QUFFbEUsTUFBSSxjQUFjLG9CQUFvQjtBQUNwQyxVQUFNLGNBQWMsc0JBQXNCLGNBQWMsa0JBQWtCO0FBQUEsRUFDNUU7QUFFQSxNQUFJLGVBQWU7QUFHbkIsUUFBTSxVQUE0QjtBQUFBLElBQ2hDLHFCQUFxQixjQUFjLG9CQUFvQixLQUFLLGFBQWE7QUFBQSxJQUN6RSxTQUFTLFVBQVUsU0FBUztBQUMxQixVQUFJLGNBQWM7QUFDaEIsY0FBTSxJQUFJLE1BQU0sZ0RBQWdEO0FBQUEsTUFDbEU7QUFDQSxhQUFPLGNBQWMsUUFBUSxLQUFLLGFBQWEsRUFBRSxHQUFHLElBQUk7QUFBQSxJQUMxRDtBQUFBLElBQ0Esa0JBQWtCLFVBQVUsU0FBUztBQUNuQyxVQUFJLGNBQWM7QUFDaEIsY0FBTSxJQUFJO0FBQUEsVUFDUjtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBQ0EsYUFBTyxjQUFjLGlCQUFpQixLQUFLLGFBQWEsRUFBRSxHQUFHLElBQUk7QUFBQSxJQUNuRTtBQUFBLElBQ0Esb0JBQW9CLGNBQWMsbUJBQW1CLEtBQUssYUFBYTtBQUFBLElBQ3ZFLGdCQUFnQixjQUFjLGVBQWUsS0FBSyxhQUFhO0FBQUEsSUFDL0QsSUFBSSxDQUFDLE9BQWUsYUFBdUM7QUFDekQsWUFBTSxrQkFBMEIsY0FBTSxRQUFRO0FBQzlDLG9CQUFjLEdBQUcsT0FBK0IsZUFBZTtBQUFBLElBQ2pFO0FBQUEsSUFDQSxNQUFNLFlBQVk7QUFDaEIsb0JBQXNCLG9CQUFZLEVBQUU7QUFDcEMsZ0JBQVUsVUFBVTtBQUNwQixxQkFBZTtBQUFBLElBQ2pCO0FBQUEsRUFDRjtBQUVBLFNBQU87QUFDVDsiLAogICJuYW1lcyI6IFtdCn0K
package/lib/index.ts CHANGED
@@ -6,6 +6,7 @@ import type {
6
6
  WebWorkerConfiguration,
7
7
  CircuitWebWorker,
8
8
  } from "./shared/types"
9
+ import type { RootCircuitEventName } from "@tscircuit/core"
9
10
 
10
11
  export type { CircuitWebWorker, WebWorkerConfiguration }
11
12
 
@@ -60,7 +61,7 @@ export const createCircuitWebWorker = async (
60
61
  getCircuitJson: comlinkWorker.getCircuitJson.bind(comlinkWorker),
61
62
  on: (event: string, callback: (...args: any[]) => void) => {
62
63
  const proxiedCallback = Comlink.proxy(callback)
63
- comlinkWorker.on(event, proxiedCallback)
64
+ comlinkWorker.on(event as RootCircuitEventName, proxiedCallback)
64
65
  },
65
66
  kill: async () => {
66
67
  comlinkWorker[Comlink.releaseProxy]()
@@ -1,4 +1,5 @@
1
1
  import type { AnyCircuitElement } from "circuit-json"
2
+ import type { RootCircuitEventName } from "@tscircuit/core"
2
3
 
3
4
  export interface CircuitRunnerConfiguration {
4
5
  snippetsApiBaseUrl: string
@@ -32,7 +33,7 @@ export interface CircuitRunnerApi {
32
33
  renderUntilSettled: () => Promise<void>
33
34
  getCircuitJson: () => Promise<AnyCircuitElement[]>
34
35
  setSnippetsApiBaseUrl: (baseUrl: string) => Promise<void>
35
- on: (event: string, callback: (...args: any[]) => void) => void
36
+ on: (event: RootCircuitEventName, callback: (...args: any[]) => void) => void
36
37
  clearEventListeners: () => void
37
38
  kill: () => Promise<void>
38
39
  }
@@ -50,14 +51,7 @@ export type CircuitWebWorker = {
50
51
  }) => Promise<void>
51
52
  renderUntilSettled: () => Promise<void>
52
53
  getCircuitJson: () => Promise<AnyCircuitElement[]>
53
- on: (
54
- event:
55
- | "renderable:renderLifecycle:anyEvent"
56
- | `asyncEffect:start`
57
- | `asyncEffect:end`
58
- | `renderable:renderLifecycle:${string}`,
59
- callback: (...args: any[]) => void,
60
- ) => void
54
+ on: (event: RootCircuitEventName, callback: (...args: any[]) => void) => void
61
55
  clearEventListeners: () => void
62
56
  kill: () => Promise<void>
63
57
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tscircuit/eval",
3
3
  "main": "dist/lib/index.js",
4
- "version": "0.0.108",
4
+ "version": "0.0.109",
5
5
  "type": "module",
6
6
  "scripts": {
7
7
  "build": "bun run build:lib && bun run build:webworker && bun run build:blob-url && bun run build:eval",
@@ -34,7 +34,7 @@
34
34
  "devDependencies": {
35
35
  "@babel/standalone": "^7.26.2",
36
36
  "@biomejs/biome": "^1.9.4",
37
- "@tscircuit/core": "^0.0.339",
37
+ "@tscircuit/core": "^0.0.340",
38
38
  "@tscircuit/math-utils": "^0.0.10",
39
39
  "@types/babel__standalone": "^7.1.9",
40
40
  "@types/bun": "latest",