easyeda 0.0.129 → 0.0.132
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/browser/index.d.ts +102 -0
- package/dist/browser/index.js +42 -5
- package/dist/browser/index.js.map +1 -1
- package/dist/{chunk-YCCBLZAH.js → chunk-M2CO35YE.js} +44 -7
- package/dist/{chunk-YCCBLZAH.js.map → chunk-M2CO35YE.js.map} +1 -1
- package/dist/cli/main.js +3 -3
- package/dist/cli/main.js.map +1 -1
- package/dist/lib/index.d.ts +189 -0
- package/dist/lib/index.js +1 -1
- package/package.json +2 -2
package/dist/cli/main.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import {
|
|
3
3
|
convertEasyEdaJsonToVariousFormats,
|
|
4
4
|
fetchEasyEDAComponent
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-M2CO35YE.js";
|
|
6
6
|
|
|
7
7
|
// cli/main.ts
|
|
8
8
|
import { Command } from "commander";
|
|
@@ -12,7 +12,7 @@ import fs from "fs/promises";
|
|
|
12
12
|
var package_default = {
|
|
13
13
|
name: "easyeda",
|
|
14
14
|
type: "module",
|
|
15
|
-
version: "0.0.
|
|
15
|
+
version: "0.0.130",
|
|
16
16
|
files: [
|
|
17
17
|
"dist"
|
|
18
18
|
],
|
|
@@ -43,7 +43,7 @@ var package_default = {
|
|
|
43
43
|
devDependencies: {
|
|
44
44
|
"@biomejs/biome": "^1.9.4",
|
|
45
45
|
"@tscircuit/log-soup": "1.0.2",
|
|
46
|
-
"@tscircuit/props": "^0.0.
|
|
46
|
+
"@tscircuit/props": "^0.0.171",
|
|
47
47
|
"@tscircuit/soup-util": "^0.0.41",
|
|
48
48
|
"@types/bun": "latest",
|
|
49
49
|
"bun-match-svg": "^0.0.6",
|
package/dist/cli/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../cli/main.ts","../../package.json"],"sourcesContent":["#!/usr/bin/env node\n\nimport { Command } from \"commander\"\nimport { fetchEasyEDAComponent } from \"../lib/websafe/fetch-easyeda-json\"\nimport { convertEasyEdaJsonToTscircuitSoupJson } from \"../lib/convert-easyeda-json-to-tscircuit-soup-json\"\nimport fs from \"fs/promises\"\nimport packageJson from \"../package.json\"\nimport { EasyEdaJsonSchema } from \"lib/schemas/easy-eda-json-schema\"\nimport { convertRawEasyToTsx } from \"lib/websafe/convert-to-typescript-component\"\nimport * as path from \"path\"\nimport { normalizeManufacturerPartNumber } from \"lib\"\nimport { convertEasyEdaJsonToVariousFormats } from \"lib/convert-easyeda-json-to-various-formats\"\n\nconst program = new Command()\n\nprogram\n .name(\"easyeda\")\n .description(\"Convert EasyEDA JSON PCB footprints into various formats\")\n .version(packageJson.version)\n\nprogram\n .command(\"convert\")\n .description(\"Convert EasyEDA JSON to various formats\")\n .option(\"-i, --input <jlcpcbPartNumber>\", \"JLCPCB part number\")\n .option(\"-o, --output <filename>\", \"Output filename\")\n .option(\n \"--output-format <format>\",\n \"Output format (can be inferred from filename)\",\n )\n .action(async (options) => {\n await convertEasyEdaJsonToVariousFormats({\n jlcpcbPartNumberOrFilepath: options.input,\n outputFilename: options.output,\n outputFormat: options.outputFormat,\n })\n })\n\nprogram\n .command(\"download\")\n .description(\"Download JSON for footprint\")\n .requiredOption(\"-i, --input <jlcpcbPartNumber>\", \"JLCPCB part number\")\n .option(\"-o, --output <filename>\", \"Output filename\")\n .action(async (options) => {\n if (!options.output) {\n options.output = `${options.input}.raweasy.json`\n }\n try {\n const easyEdaJsonRes = await fetchEasyEDAComponent(options.input)\n await fs.writeFile(\n options.output,\n JSON.stringify(easyEdaJsonRes, null, 2),\n )\n console.log(`Downloaded JSON footprint: ${options.output}`)\n } catch (error: any) {\n console.error(\"Error:\", error.message)\n }\n })\n\nprogram.parse(process.argv)\n// perfectCli(program, process.argv)\n","{\n \"name\": \"easyeda\",\n \"type\": \"module\",\n \"version\": \"0.0.
|
|
1
|
+
{"version":3,"sources":["../../cli/main.ts","../../package.json"],"sourcesContent":["#!/usr/bin/env node\n\nimport { Command } from \"commander\"\nimport { fetchEasyEDAComponent } from \"../lib/websafe/fetch-easyeda-json\"\nimport { convertEasyEdaJsonToTscircuitSoupJson } from \"../lib/convert-easyeda-json-to-tscircuit-soup-json\"\nimport fs from \"fs/promises\"\nimport packageJson from \"../package.json\"\nimport { EasyEdaJsonSchema } from \"lib/schemas/easy-eda-json-schema\"\nimport { convertRawEasyToTsx } from \"lib/websafe/convert-to-typescript-component\"\nimport * as path from \"path\"\nimport { normalizeManufacturerPartNumber } from \"lib\"\nimport { convertEasyEdaJsonToVariousFormats } from \"lib/convert-easyeda-json-to-various-formats\"\n\nconst program = new Command()\n\nprogram\n .name(\"easyeda\")\n .description(\"Convert EasyEDA JSON PCB footprints into various formats\")\n .version(packageJson.version)\n\nprogram\n .command(\"convert\")\n .description(\"Convert EasyEDA JSON to various formats\")\n .option(\"-i, --input <jlcpcbPartNumber>\", \"JLCPCB part number\")\n .option(\"-o, --output <filename>\", \"Output filename\")\n .option(\n \"--output-format <format>\",\n \"Output format (can be inferred from filename)\",\n )\n .action(async (options) => {\n await convertEasyEdaJsonToVariousFormats({\n jlcpcbPartNumberOrFilepath: options.input,\n outputFilename: options.output,\n outputFormat: options.outputFormat,\n })\n })\n\nprogram\n .command(\"download\")\n .description(\"Download JSON for footprint\")\n .requiredOption(\"-i, --input <jlcpcbPartNumber>\", \"JLCPCB part number\")\n .option(\"-o, --output <filename>\", \"Output filename\")\n .action(async (options) => {\n if (!options.output) {\n options.output = `${options.input}.raweasy.json`\n }\n try {\n const easyEdaJsonRes = await fetchEasyEDAComponent(options.input)\n await fs.writeFile(\n options.output,\n JSON.stringify(easyEdaJsonRes, null, 2),\n )\n console.log(`Downloaded JSON footprint: ${options.output}`)\n } catch (error: any) {\n console.error(\"Error:\", error.message)\n }\n })\n\nprogram.parse(process.argv)\n// perfectCli(program, process.argv)\n","{\n \"name\": \"easyeda\",\n \"type\": \"module\",\n \"version\": \"0.0.130\",\n \"files\": [\n \"dist\"\n ],\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/tscircuit/easyeda-converter\"\n },\n \"scripts\": {\n \"test\": \"bun test\",\n \"cli\": \"bun cli/main.ts\",\n \"build\": \"bun build:node && bun build:web\",\n \"build:node\": \"tsup lib/index.ts cli/main.ts --platform node --format esm --dts --sourcemap\",\n \"build:web\": \"tsup lib/websafe/index.ts --platform browser --format esm --dts --sourcemap -d dist/browser\",\n \"aider\": \"aider\",\n \"format:check\": \"biome format .\",\n \"format\": \"biome format . --write\",\n \"add-test-for-part\": \"bun run scripts/add-test-for-part.ts\"\n },\n \"main\": \"./dist/lib/index.js\",\n \"exports\": {\n \".\": \"./dist/lib/index.js\",\n \"./browser\": \"./dist/browser/index.js\"\n },\n \"bin\": {\n \"easyeda-converter\": \"./dist/cli/main.js\",\n \"easyeda\": \"./dist/cli/main.js\"\n },\n \"devDependencies\": {\n \"@biomejs/biome\": \"^1.9.4\",\n \"@tscircuit/log-soup\": \"1.0.2\",\n \"@tscircuit/props\": \"^0.0.171\",\n \"@tscircuit/soup-util\": \"^0.0.41\",\n \"@types/bun\": \"latest\",\n \"bun-match-svg\": \"^0.0.6\",\n \"circuit-json\": \"^0.0.153\",\n \"circuit-to-svg\": \"^0.0.56\",\n \"tsup\": \"^8.4.0\"\n },\n \"peerDependencies\": {\n \"typescript\": \"^5.5.2\"\n },\n \"dependencies\": {\n \"@tscircuit/mm\": \"^0.0.8\",\n \"commander\": \"^12.1.0\",\n \"transformation-matrix\": \"^2.16.1\",\n \"zod\": \"^3.24.2\"\n }\n}\n"],"mappings":";;;;;;;AAEA,SAAS,eAAe;AAGxB,OAAO,QAAQ;;;ACLf;AAAA,EACE,MAAQ;AAAA,EACR,MAAQ;AAAA,EACR,SAAW;AAAA,EACX,OAAS;AAAA,IACP;AAAA,EACF;AAAA,EACA,YAAc;AAAA,IACZ,MAAQ;AAAA,IACR,KAAO;AAAA,EACT;AAAA,EACA,SAAW;AAAA,IACT,MAAQ;AAAA,IACR,KAAO;AAAA,IACP,OAAS;AAAA,IACT,cAAc;AAAA,IACd,aAAa;AAAA,IACb,OAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,QAAU;AAAA,IACV,qBAAqB;AAAA,EACvB;AAAA,EACA,MAAQ;AAAA,EACR,SAAW;AAAA,IACT,KAAK;AAAA,IACL,aAAa;AAAA,EACf;AAAA,EACA,KAAO;AAAA,IACL,qBAAqB;AAAA,IACrB,SAAW;AAAA,EACb;AAAA,EACA,iBAAmB;AAAA,IACjB,kBAAkB;AAAA,IAClB,uBAAuB;AAAA,IACvB,oBAAoB;AAAA,IACpB,wBAAwB;AAAA,IACxB,cAAc;AAAA,IACd,iBAAiB;AAAA,IACjB,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,IAClB,MAAQ;AAAA,EACV;AAAA,EACA,kBAAoB;AAAA,IAClB,YAAc;AAAA,EAChB;AAAA,EACA,cAAgB;AAAA,IACd,iBAAiB;AAAA,IACjB,WAAa;AAAA,IACb,yBAAyB;AAAA,IACzB,KAAO;AAAA,EACT;AACF;;;ADtCA,IAAM,UAAU,IAAI,QAAQ;AAE5B,QACG,KAAK,SAAS,EACd,YAAY,0DAA0D,EACtE,QAAQ,gBAAY,OAAO;AAE9B,QACG,QAAQ,SAAS,EACjB,YAAY,yCAAyC,EACrD,OAAO,kCAAkC,oBAAoB,EAC7D,OAAO,2BAA2B,iBAAiB,EACnD;AAAA,EACC;AAAA,EACA;AACF,EACC,OAAO,OAAO,YAAY;AACzB,QAAM,mCAAmC;AAAA,IACvC,4BAA4B,QAAQ;AAAA,IACpC,gBAAgB,QAAQ;AAAA,IACxB,cAAc,QAAQ;AAAA,EACxB,CAAC;AACH,CAAC;AAEH,QACG,QAAQ,UAAU,EAClB,YAAY,6BAA6B,EACzC,eAAe,kCAAkC,oBAAoB,EACrE,OAAO,2BAA2B,iBAAiB,EACnD,OAAO,OAAO,YAAY;AACzB,MAAI,CAAC,QAAQ,QAAQ;AACnB,YAAQ,SAAS,GAAG,QAAQ,KAAK;AAAA,EACnC;AACA,MAAI;AACF,UAAM,iBAAiB,MAAM,sBAAsB,QAAQ,KAAK;AAChE,UAAM,GAAG;AAAA,MACP,QAAQ;AAAA,MACR,KAAK,UAAU,gBAAgB,MAAM,CAAC;AAAA,IACxC;AACA,YAAQ,IAAI,8BAA8B,QAAQ,MAAM,EAAE;AAAA,EAC5D,SAAS,OAAY;AACnB,YAAQ,MAAM,UAAU,MAAM,OAAO;AAAA,EACvC;AACF,CAAC;AAEH,QAAQ,MAAM,QAAQ,IAAI;","names":[]}
|
package/dist/lib/index.d.ts
CHANGED
|
@@ -220,6 +220,21 @@ declare const DataStrSchema: z.ZodObject<{
|
|
|
220
220
|
radiusY: number;
|
|
221
221
|
lineWidth: number;
|
|
222
222
|
color: string;
|
|
223
|
+
} | {
|
|
224
|
+
type: "ARC";
|
|
225
|
+
id: string;
|
|
226
|
+
start: {
|
|
227
|
+
x: number;
|
|
228
|
+
y: number;
|
|
229
|
+
};
|
|
230
|
+
end: {
|
|
231
|
+
x: number;
|
|
232
|
+
y: number;
|
|
233
|
+
};
|
|
234
|
+
radius: number;
|
|
235
|
+
lineWidth: number;
|
|
236
|
+
sweepFlag: boolean;
|
|
237
|
+
color: string;
|
|
223
238
|
} | {
|
|
224
239
|
path: string;
|
|
225
240
|
type: "PIN";
|
|
@@ -530,6 +545,63 @@ declare const DataStrSchema: z.ZodObject<{
|
|
|
530
545
|
backgroundColor?: string | undefined;
|
|
531
546
|
fontWeight?: "normal" | "bold" | undefined;
|
|
532
547
|
fontStyle?: "normal" | "italic" | undefined;
|
|
548
|
+
}>, z.ZodObject<{
|
|
549
|
+
type: z.ZodLiteral<"ARC">;
|
|
550
|
+
start: z.ZodObject<{
|
|
551
|
+
x: z.ZodNumber;
|
|
552
|
+
y: z.ZodNumber;
|
|
553
|
+
}, "strip", z.ZodTypeAny, {
|
|
554
|
+
x: number;
|
|
555
|
+
y: number;
|
|
556
|
+
}, {
|
|
557
|
+
x: number;
|
|
558
|
+
y: number;
|
|
559
|
+
}>;
|
|
560
|
+
end: z.ZodObject<{
|
|
561
|
+
x: z.ZodNumber;
|
|
562
|
+
y: z.ZodNumber;
|
|
563
|
+
}, "strip", z.ZodTypeAny, {
|
|
564
|
+
x: number;
|
|
565
|
+
y: number;
|
|
566
|
+
}, {
|
|
567
|
+
x: number;
|
|
568
|
+
y: number;
|
|
569
|
+
}>;
|
|
570
|
+
radius: z.ZodNumber;
|
|
571
|
+
sweepFlag: z.ZodBoolean;
|
|
572
|
+
color: z.ZodString;
|
|
573
|
+
lineWidth: z.ZodNumber;
|
|
574
|
+
id: z.ZodString;
|
|
575
|
+
}, "strip", z.ZodTypeAny, {
|
|
576
|
+
type: "ARC";
|
|
577
|
+
id: string;
|
|
578
|
+
start: {
|
|
579
|
+
x: number;
|
|
580
|
+
y: number;
|
|
581
|
+
};
|
|
582
|
+
end: {
|
|
583
|
+
x: number;
|
|
584
|
+
y: number;
|
|
585
|
+
};
|
|
586
|
+
radius: number;
|
|
587
|
+
lineWidth: number;
|
|
588
|
+
sweepFlag: boolean;
|
|
589
|
+
color: string;
|
|
590
|
+
}, {
|
|
591
|
+
type: "ARC";
|
|
592
|
+
id: string;
|
|
593
|
+
start: {
|
|
594
|
+
x: number;
|
|
595
|
+
y: number;
|
|
596
|
+
};
|
|
597
|
+
end: {
|
|
598
|
+
x: number;
|
|
599
|
+
y: number;
|
|
600
|
+
};
|
|
601
|
+
radius: number;
|
|
602
|
+
lineWidth: number;
|
|
603
|
+
sweepFlag: boolean;
|
|
604
|
+
color: string;
|
|
533
605
|
}>]>>, "many">;
|
|
534
606
|
BBox: z.ZodObject<{
|
|
535
607
|
x: z.ZodNumber;
|
|
@@ -571,6 +643,21 @@ declare const DataStrSchema: z.ZodObject<{
|
|
|
571
643
|
radiusY: number;
|
|
572
644
|
lineWidth: number;
|
|
573
645
|
color: string;
|
|
646
|
+
} | {
|
|
647
|
+
type: "ARC";
|
|
648
|
+
id: string;
|
|
649
|
+
start: {
|
|
650
|
+
x: number;
|
|
651
|
+
y: number;
|
|
652
|
+
};
|
|
653
|
+
end: {
|
|
654
|
+
x: number;
|
|
655
|
+
y: number;
|
|
656
|
+
};
|
|
657
|
+
radius: number;
|
|
658
|
+
lineWidth: number;
|
|
659
|
+
sweepFlag: boolean;
|
|
660
|
+
color: string;
|
|
574
661
|
} | {
|
|
575
662
|
path: string;
|
|
576
663
|
type: "PIN";
|
|
@@ -2518,6 +2605,21 @@ declare const EasyEdaJsonSchema: z.ZodObject<{
|
|
|
2518
2605
|
radiusY: number;
|
|
2519
2606
|
lineWidth: number;
|
|
2520
2607
|
color: string;
|
|
2608
|
+
} | {
|
|
2609
|
+
type: "ARC";
|
|
2610
|
+
id: string;
|
|
2611
|
+
start: {
|
|
2612
|
+
x: number;
|
|
2613
|
+
y: number;
|
|
2614
|
+
};
|
|
2615
|
+
end: {
|
|
2616
|
+
x: number;
|
|
2617
|
+
y: number;
|
|
2618
|
+
};
|
|
2619
|
+
radius: number;
|
|
2620
|
+
lineWidth: number;
|
|
2621
|
+
sweepFlag: boolean;
|
|
2622
|
+
color: string;
|
|
2521
2623
|
} | {
|
|
2522
2624
|
path: string;
|
|
2523
2625
|
type: "PIN";
|
|
@@ -2828,6 +2930,63 @@ declare const EasyEdaJsonSchema: z.ZodObject<{
|
|
|
2828
2930
|
backgroundColor?: string | undefined;
|
|
2829
2931
|
fontWeight?: "normal" | "bold" | undefined;
|
|
2830
2932
|
fontStyle?: "normal" | "italic" | undefined;
|
|
2933
|
+
}>, z.ZodObject<{
|
|
2934
|
+
type: z.ZodLiteral<"ARC">;
|
|
2935
|
+
start: z.ZodObject<{
|
|
2936
|
+
x: z.ZodNumber;
|
|
2937
|
+
y: z.ZodNumber;
|
|
2938
|
+
}, "strip", z.ZodTypeAny, {
|
|
2939
|
+
x: number;
|
|
2940
|
+
y: number;
|
|
2941
|
+
}, {
|
|
2942
|
+
x: number;
|
|
2943
|
+
y: number;
|
|
2944
|
+
}>;
|
|
2945
|
+
end: z.ZodObject<{
|
|
2946
|
+
x: z.ZodNumber;
|
|
2947
|
+
y: z.ZodNumber;
|
|
2948
|
+
}, "strip", z.ZodTypeAny, {
|
|
2949
|
+
x: number;
|
|
2950
|
+
y: number;
|
|
2951
|
+
}, {
|
|
2952
|
+
x: number;
|
|
2953
|
+
y: number;
|
|
2954
|
+
}>;
|
|
2955
|
+
radius: z.ZodNumber;
|
|
2956
|
+
sweepFlag: z.ZodBoolean;
|
|
2957
|
+
color: z.ZodString;
|
|
2958
|
+
lineWidth: z.ZodNumber;
|
|
2959
|
+
id: z.ZodString;
|
|
2960
|
+
}, "strip", z.ZodTypeAny, {
|
|
2961
|
+
type: "ARC";
|
|
2962
|
+
id: string;
|
|
2963
|
+
start: {
|
|
2964
|
+
x: number;
|
|
2965
|
+
y: number;
|
|
2966
|
+
};
|
|
2967
|
+
end: {
|
|
2968
|
+
x: number;
|
|
2969
|
+
y: number;
|
|
2970
|
+
};
|
|
2971
|
+
radius: number;
|
|
2972
|
+
lineWidth: number;
|
|
2973
|
+
sweepFlag: boolean;
|
|
2974
|
+
color: string;
|
|
2975
|
+
}, {
|
|
2976
|
+
type: "ARC";
|
|
2977
|
+
id: string;
|
|
2978
|
+
start: {
|
|
2979
|
+
x: number;
|
|
2980
|
+
y: number;
|
|
2981
|
+
};
|
|
2982
|
+
end: {
|
|
2983
|
+
x: number;
|
|
2984
|
+
y: number;
|
|
2985
|
+
};
|
|
2986
|
+
radius: number;
|
|
2987
|
+
lineWidth: number;
|
|
2988
|
+
sweepFlag: boolean;
|
|
2989
|
+
color: string;
|
|
2831
2990
|
}>]>>, "many">;
|
|
2832
2991
|
BBox: z.ZodObject<{
|
|
2833
2992
|
x: z.ZodNumber;
|
|
@@ -2869,6 +3028,21 @@ declare const EasyEdaJsonSchema: z.ZodObject<{
|
|
|
2869
3028
|
radiusY: number;
|
|
2870
3029
|
lineWidth: number;
|
|
2871
3030
|
color: string;
|
|
3031
|
+
} | {
|
|
3032
|
+
type: "ARC";
|
|
3033
|
+
id: string;
|
|
3034
|
+
start: {
|
|
3035
|
+
x: number;
|
|
3036
|
+
y: number;
|
|
3037
|
+
};
|
|
3038
|
+
end: {
|
|
3039
|
+
x: number;
|
|
3040
|
+
y: number;
|
|
3041
|
+
};
|
|
3042
|
+
radius: number;
|
|
3043
|
+
lineWidth: number;
|
|
3044
|
+
sweepFlag: boolean;
|
|
3045
|
+
color: string;
|
|
2872
3046
|
} | {
|
|
2873
3047
|
path: string;
|
|
2874
3048
|
type: "PIN";
|
|
@@ -3978,6 +4152,21 @@ declare const EasyEdaJsonSchema: z.ZodObject<{
|
|
|
3978
4152
|
radiusY: number;
|
|
3979
4153
|
lineWidth: number;
|
|
3980
4154
|
color: string;
|
|
4155
|
+
} | {
|
|
4156
|
+
type: "ARC";
|
|
4157
|
+
id: string;
|
|
4158
|
+
start: {
|
|
4159
|
+
x: number;
|
|
4160
|
+
y: number;
|
|
4161
|
+
};
|
|
4162
|
+
end: {
|
|
4163
|
+
x: number;
|
|
4164
|
+
y: number;
|
|
4165
|
+
};
|
|
4166
|
+
radius: number;
|
|
4167
|
+
lineWidth: number;
|
|
4168
|
+
sweepFlag: boolean;
|
|
4169
|
+
color: string;
|
|
3981
4170
|
} | {
|
|
3982
4171
|
path: string;
|
|
3983
4172
|
type: "PIN";
|
package/dist/lib/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "easyeda",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.132",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist"
|
|
7
7
|
],
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@biomejs/biome": "^1.9.4",
|
|
34
34
|
"@tscircuit/log-soup": "1.0.2",
|
|
35
|
-
"@tscircuit/props": "^0.0.
|
|
35
|
+
"@tscircuit/props": "^0.0.171",
|
|
36
36
|
"@tscircuit/soup-util": "^0.0.41",
|
|
37
37
|
"@types/bun": "latest",
|
|
38
38
|
"bun-match-svg": "^0.0.6",
|