@tscircuit/cli 0.1.351 → 0.1.352

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.
Files changed (2) hide show
  1. package/dist/main.js +75 -16
  2. package/package.json +1 -1
package/dist/main.js CHANGED
@@ -72193,7 +72193,7 @@ var getGlobalDepsInstallCommand = (packageManager, deps) => {
72193
72193
  import { execSync as execSync2 } from "node:child_process";
72194
72194
  var import_semver2 = __toESM2(require_semver2(), 1);
72195
72195
  // package.json
72196
- var version = "0.1.350";
72196
+ var version = "0.1.351";
72197
72197
  var package_default = {
72198
72198
  name: "@tscircuit/cli",
72199
72199
  version,
@@ -195885,24 +195885,83 @@ var snapshotProject = async ({
195885
195885
  const mismatches = [];
195886
195886
  let didUpdate = false;
195887
195887
  for (const file of boardFiles) {
195888
- const { circuitJson } = await generateCircuitJson({
195889
- filePath: file,
195890
- platformConfig: platformConfig2
195891
- });
195892
- const pcbSvg = convertCircuitJsonToPcbSvg3(circuitJson);
195893
- const schSvg = convertCircuitJsonToSchematicSvg3(circuitJson);
195888
+ const relativeFilePath = path31.relative(projectDir, file);
195889
+ let circuitJson;
195890
+ let pcbSvg;
195891
+ let schSvg;
195892
+ try {
195893
+ const result = await generateCircuitJson({
195894
+ filePath: file,
195895
+ platformConfig: platformConfig2
195896
+ });
195897
+ circuitJson = result.circuitJson;
195898
+ } catch (error) {
195899
+ const errorMessage = error instanceof Error ? error.message : String(error);
195900
+ onError(kleur_default.red(`
195901
+ ❌ Failed to generate circuit JSON for ${relativeFilePath}:
195902
+ `) + kleur_default.red(` ${errorMessage}
195903
+ `));
195904
+ return onExit(1);
195905
+ }
195906
+ try {
195907
+ pcbSvg = convertCircuitJsonToPcbSvg3(circuitJson);
195908
+ } catch (error) {
195909
+ const errorMessage = error instanceof Error ? error.message : String(error);
195910
+ onError(kleur_default.red(`
195911
+ ❌ Failed to generate PCB SVG for ${relativeFilePath}:
195912
+ `) + kleur_default.red(` ${errorMessage}
195913
+ `));
195914
+ return onExit(1);
195915
+ }
195916
+ try {
195917
+ schSvg = convertCircuitJsonToSchematicSvg3(circuitJson);
195918
+ } catch (error) {
195919
+ const errorMessage = error instanceof Error ? error.message : String(error);
195920
+ onError(kleur_default.red(`
195921
+ ❌ Failed to generate schematic SVG for ${relativeFilePath}:
195922
+ `) + kleur_default.red(` ${errorMessage}
195923
+ `));
195924
+ return onExit(1);
195925
+ }
195894
195926
  let png3d = null;
195895
195927
  if (threeD) {
195896
- const glbBuffer = await convertCircuitJsonToGltf3(circuitJson, {
195897
- format: "glb"
195898
- });
195899
- if (!(glbBuffer instanceof ArrayBuffer)) {
195900
- throw new Error("Expected ArrayBuffer from convertCircuitJsonToGltf with glb format");
195928
+ try {
195929
+ const glbBuffer = await convertCircuitJsonToGltf3(circuitJson, {
195930
+ format: "glb"
195931
+ });
195932
+ if (!(glbBuffer instanceof ArrayBuffer)) {
195933
+ throw new Error("Expected ArrayBuffer from convertCircuitJsonToGltf with glb format");
195934
+ }
195935
+ png3d = await renderGLTFToPNGBufferFromGLBBuffer2(glbBuffer, {
195936
+ camPos: [10, 10, 10],
195937
+ lookAt: [0, 0, 0]
195938
+ });
195939
+ } catch (error) {
195940
+ const errorMessage = error instanceof Error ? error.message : String(error);
195941
+ if (errorMessage.includes("No pcb_board found in circuit JSON")) {
195942
+ const snapDir2 = path31.join(path31.dirname(file), "__snapshots__");
195943
+ const base2 = path31.basename(file).replace(/\.tsx$/, "");
195944
+ const snap3dPath = path31.join(snapDir2, `${base2}-3d.snap.png`);
195945
+ const existing3dSnapshot = fs33.existsSync(snap3dPath);
195946
+ if (existing3dSnapshot) {
195947
+ onError(kleur_default.red(`
195948
+ ❌ Failed to generate 3D snapshot for ${relativeFilePath}:
195949
+ `) + kleur_default.red(` No pcb_board found in circuit JSON
195950
+ `) + kleur_default.red(` Existing snapshot: ${path31.relative(projectDir, snap3dPath)}
195951
+ `));
195952
+ return onExit(1);
195953
+ } else {
195954
+ console.log(kleur_default.red(`⚠️ Skipping 3D snapshot for ${relativeFilePath}:`) + kleur_default.red(` No pcb_board found in circuit JSON`));
195955
+ png3d = null;
195956
+ }
195957
+ } else {
195958
+ onError(kleur_default.red(`
195959
+ ❌ Failed to generate 3D snapshot for ${relativeFilePath}:
195960
+ `) + kleur_default.red(` ${errorMessage}
195961
+ `));
195962
+ return onExit(1);
195963
+ }
195901
195964
  }
195902
- png3d = await renderGLTFToPNGBufferFromGLBBuffer2(glbBuffer, {
195903
- camPos: [10, 10, 10],
195904
- lookAt: [0, 0, 0]
195905
- });
195906
195965
  }
195907
195966
  const snapDir = path31.join(path31.dirname(file), "__snapshots__");
195908
195967
  fs33.mkdirSync(snapDir, { recursive: true });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tscircuit/cli",
3
- "version": "0.1.351",
3
+ "version": "0.1.352",
4
4
  "main": "dist/main.js",
5
5
  "devDependencies": {
6
6
  "@babel/standalone": "^7.26.9",