circuit-json 0.0.108 → 0.0.110
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/README.md +893 -5
- package/dist/index.d.mts +290 -60
- package/dist/index.mjs +267 -236
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -2
package/dist/index.mjs
CHANGED
|
@@ -274,6 +274,7 @@ var expectTypesMatch = (shouldBe) => {
|
|
|
274
274
|
expectTypesMatch("extra props b");
|
|
275
275
|
expectTypesMatch("missing props b");
|
|
276
276
|
expectTypesMatch(true);
|
|
277
|
+
expectTypesMatch("mismatched prop types: a");
|
|
277
278
|
|
|
278
279
|
// src/source/base/source_component_base.ts
|
|
279
280
|
import { z as z7 } from "zod";
|
|
@@ -293,6 +294,7 @@ var source_simple_capacitor = source_component_base.extend({
|
|
|
293
294
|
ftype: z8.literal("simple_capacitor"),
|
|
294
295
|
capacitance
|
|
295
296
|
});
|
|
297
|
+
expectTypesMatch(true);
|
|
296
298
|
|
|
297
299
|
// src/source/source_simple_resistor.ts
|
|
298
300
|
import { z as z9 } from "zod";
|
|
@@ -300,18 +302,21 @@ var source_simple_resistor = source_component_base.extend({
|
|
|
300
302
|
ftype: z9.literal("simple_resistor"),
|
|
301
303
|
resistance
|
|
302
304
|
});
|
|
305
|
+
expectTypesMatch(true);
|
|
303
306
|
|
|
304
307
|
// src/source/source_simple_diode.ts
|
|
305
308
|
import { z as z10 } from "zod";
|
|
306
309
|
var source_simple_diode = source_component_base.extend({
|
|
307
310
|
ftype: z10.literal("simple_diode")
|
|
308
311
|
});
|
|
312
|
+
expectTypesMatch(true);
|
|
309
313
|
|
|
310
314
|
// src/source/source_simple_ground.ts
|
|
311
315
|
import { z as z11 } from "zod";
|
|
312
316
|
var source_simple_ground = source_component_base.extend({
|
|
313
317
|
ftype: z11.literal("simple_ground")
|
|
314
318
|
});
|
|
319
|
+
expectTypesMatch(true);
|
|
315
320
|
|
|
316
321
|
// src/source/source_simple_bug.ts
|
|
317
322
|
import { z as z12 } from "zod";
|
|
@@ -324,12 +329,14 @@ import { z as z13 } from "zod";
|
|
|
324
329
|
var source_simple_chip = source_component_base.extend({
|
|
325
330
|
ftype: z13.literal("simple_chip")
|
|
326
331
|
});
|
|
332
|
+
expectTypesMatch(true);
|
|
327
333
|
|
|
328
334
|
// src/source/source_led.ts
|
|
329
335
|
import { z as z14 } from "zod";
|
|
330
336
|
var source_led = source_simple_diode.extend({
|
|
331
337
|
ftype: z14.literal("led")
|
|
332
338
|
});
|
|
339
|
+
expectTypesMatch(true);
|
|
333
340
|
|
|
334
341
|
// src/source/source_simple_power_source.ts
|
|
335
342
|
import { z as z15 } from "zod";
|
|
@@ -337,6 +344,7 @@ var source_simple_power_source = source_component_base.extend({
|
|
|
337
344
|
ftype: z15.literal("simple_power_source"),
|
|
338
345
|
voltage
|
|
339
346
|
});
|
|
347
|
+
expectTypesMatch(true);
|
|
340
348
|
|
|
341
349
|
// src/source/any_source_component.ts
|
|
342
350
|
import { z as z22 } from "zod";
|
|
@@ -347,6 +355,7 @@ var source_simple_battery = source_component_base.extend({
|
|
|
347
355
|
ftype: z16.literal("simple_battery"),
|
|
348
356
|
capacity: battery_capacity
|
|
349
357
|
});
|
|
358
|
+
expectTypesMatch(true);
|
|
350
359
|
|
|
351
360
|
// src/source/source_simple_inductor.ts
|
|
352
361
|
import { z as z17 } from "zod";
|
|
@@ -354,12 +363,14 @@ var source_simple_inductor = source_component_base.extend({
|
|
|
354
363
|
ftype: z17.literal("simple_inductor"),
|
|
355
364
|
inductance
|
|
356
365
|
});
|
|
366
|
+
expectTypesMatch(true);
|
|
357
367
|
|
|
358
368
|
// src/source/source_simple_push_button.ts
|
|
359
369
|
import { z as z18 } from "zod";
|
|
360
370
|
var source_simple_push_button = source_component_base.extend({
|
|
361
371
|
ftype: z18.literal("simple_push_button")
|
|
362
372
|
});
|
|
373
|
+
expectTypesMatch(true);
|
|
363
374
|
|
|
364
375
|
// src/source/source_simple_potentiometer.ts
|
|
365
376
|
import { z as z19 } from "zod";
|
|
@@ -375,6 +386,7 @@ var source_simple_crystal = source_component_base.extend({
|
|
|
375
386
|
frequency: z20.number().describe("Frequency in Hz"),
|
|
376
387
|
load_capacitance: z20.number().optional().describe("Load capacitance in pF")
|
|
377
388
|
});
|
|
389
|
+
expectTypesMatch(true);
|
|
378
390
|
|
|
379
391
|
// src/source/source_simple_pin_header.ts
|
|
380
392
|
import { z as z21 } from "zod";
|
|
@@ -412,6 +424,7 @@ var source_port = z23.object({
|
|
|
412
424
|
source_port_id: z23.string(),
|
|
413
425
|
source_component_id: z23.string()
|
|
414
426
|
});
|
|
427
|
+
expectTypesMatch(true);
|
|
415
428
|
|
|
416
429
|
// src/source/source_trace.ts
|
|
417
430
|
import { z as z24 } from "zod";
|
|
@@ -456,6 +469,7 @@ var schematic_box = z27.object({
|
|
|
456
469
|
x: distance,
|
|
457
470
|
y: distance
|
|
458
471
|
}).describe("Draws a box on the schematic");
|
|
472
|
+
expectTypesMatch(true);
|
|
459
473
|
|
|
460
474
|
// src/schematic/schematic_path.ts
|
|
461
475
|
import { z as z28 } from "zod";
|
|
@@ -466,6 +480,7 @@ var schematic_path = z28.object({
|
|
|
466
480
|
is_filled: z28.boolean().optional(),
|
|
467
481
|
points: z28.array(point)
|
|
468
482
|
});
|
|
483
|
+
expectTypesMatch(true);
|
|
469
484
|
|
|
470
485
|
// src/schematic/schematic_component.ts
|
|
471
486
|
import { z as z29 } from "zod";
|
|
@@ -534,6 +549,7 @@ var schematic_line = z30.object({
|
|
|
534
549
|
y1: distance,
|
|
535
550
|
y2: distance
|
|
536
551
|
});
|
|
552
|
+
expectTypesMatch(true);
|
|
537
553
|
|
|
538
554
|
// src/schematic/schematic_trace.ts
|
|
539
555
|
import { z as z31 } from "zod";
|
|
@@ -580,6 +596,7 @@ var schematic_text = z32.object({
|
|
|
580
596
|
anchor: z32.enum(["center", "left", "right", "top", "bottom"]).default("center"),
|
|
581
597
|
color: z32.string().default("#000000")
|
|
582
598
|
});
|
|
599
|
+
expectTypesMatch(true);
|
|
583
600
|
|
|
584
601
|
// src/schematic/schematic_port.ts
|
|
585
602
|
import { z as z33 } from "zod";
|
|
@@ -613,12 +630,13 @@ var schematic_net_label = z34.object({
|
|
|
613
630
|
// src/schematic/schematic_error.ts
|
|
614
631
|
import { z as z35 } from "zod";
|
|
615
632
|
var schematic_error = z35.object({
|
|
616
|
-
schematic_error_id: z35.string(),
|
|
617
633
|
type: z35.literal("schematic_error"),
|
|
634
|
+
schematic_error_id: z35.string(),
|
|
618
635
|
// eventually each error type should be broken out into a dir of files
|
|
619
636
|
error_type: z35.literal("schematic_port_not_found"),
|
|
620
637
|
message: z35.string()
|
|
621
638
|
}).describe("Defines a schematic error on the schematic");
|
|
639
|
+
expectTypesMatch(true);
|
|
622
640
|
|
|
623
641
|
// src/schematic/schematic_debug_object.ts
|
|
624
642
|
import { z as z36 } from "zod";
|
|
@@ -647,8 +665,19 @@ var schematic_debug_object = z36.discriminatedUnion("shape", [
|
|
|
647
665
|
]);
|
|
648
666
|
expectTypesMatch(true);
|
|
649
667
|
|
|
650
|
-
// src/
|
|
668
|
+
// src/schematic/schematic_voltage_probe.ts
|
|
651
669
|
import { z as z37 } from "zod";
|
|
670
|
+
var schematic_voltage_probe = z37.object({
|
|
671
|
+
type: z37.literal("schematic_voltage_probe"),
|
|
672
|
+
schematic_voltage_probe_id: z37.string(),
|
|
673
|
+
position: point,
|
|
674
|
+
schematic_trace_id: z37.string(),
|
|
675
|
+
voltage: voltage.optional()
|
|
676
|
+
}).describe("Defines a voltage probe measurement point on a schematic trace");
|
|
677
|
+
expectTypesMatch(true);
|
|
678
|
+
|
|
679
|
+
// src/pcb/properties/layer_ref.ts
|
|
680
|
+
import { z as z38 } from "zod";
|
|
652
681
|
var all_layers = [
|
|
653
682
|
"top",
|
|
654
683
|
"bottom",
|
|
@@ -659,9 +688,9 @@ var all_layers = [
|
|
|
659
688
|
"inner5",
|
|
660
689
|
"inner6"
|
|
661
690
|
];
|
|
662
|
-
var layer_string =
|
|
691
|
+
var layer_string = z38.enum(all_layers);
|
|
663
692
|
var layer_ref = layer_string.or(
|
|
664
|
-
|
|
693
|
+
z38.object({
|
|
665
694
|
name: layer_string
|
|
666
695
|
})
|
|
667
696
|
).transform((layer) => {
|
|
@@ -670,34 +699,34 @@ var layer_ref = layer_string.or(
|
|
|
670
699
|
}
|
|
671
700
|
return layer.name;
|
|
672
701
|
});
|
|
673
|
-
var visible_layer =
|
|
702
|
+
var visible_layer = z38.enum(["top", "bottom"]);
|
|
674
703
|
|
|
675
704
|
// src/pcb/properties/pcb_route_hints.ts
|
|
676
|
-
import { z as
|
|
677
|
-
var pcb_route_hint =
|
|
705
|
+
import { z as z39 } from "zod";
|
|
706
|
+
var pcb_route_hint = z39.object({
|
|
678
707
|
x: distance,
|
|
679
708
|
y: distance,
|
|
680
|
-
via:
|
|
709
|
+
via: z39.boolean().optional(),
|
|
681
710
|
via_to_layer: layer_ref.optional()
|
|
682
711
|
});
|
|
683
|
-
var pcb_route_hints =
|
|
712
|
+
var pcb_route_hints = z39.array(pcb_route_hint);
|
|
684
713
|
|
|
685
714
|
// src/pcb/properties/route_hint_point.ts
|
|
686
|
-
import { z as
|
|
687
|
-
var route_hint_point =
|
|
715
|
+
import { z as z40 } from "zod";
|
|
716
|
+
var route_hint_point = z40.object({
|
|
688
717
|
x: distance,
|
|
689
718
|
y: distance,
|
|
690
|
-
via:
|
|
719
|
+
via: z40.boolean().optional(),
|
|
691
720
|
to_layer: layer_ref.optional(),
|
|
692
721
|
trace_width: distance.optional()
|
|
693
722
|
});
|
|
694
723
|
|
|
695
724
|
// src/pcb/pcb_component.ts
|
|
696
|
-
import { z as
|
|
697
|
-
var pcb_component =
|
|
698
|
-
type:
|
|
725
|
+
import { z as z41 } from "zod";
|
|
726
|
+
var pcb_component = z41.object({
|
|
727
|
+
type: z41.literal("pcb_component"),
|
|
699
728
|
pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
|
|
700
|
-
source_component_id:
|
|
729
|
+
source_component_id: z41.string(),
|
|
701
730
|
center: point,
|
|
702
731
|
layer: layer_ref,
|
|
703
732
|
rotation,
|
|
@@ -707,12 +736,12 @@ var pcb_component = z40.object({
|
|
|
707
736
|
expectTypesMatch(true);
|
|
708
737
|
|
|
709
738
|
// src/pcb/pcb_hole.ts
|
|
710
|
-
import { z as
|
|
711
|
-
var pcb_hole_circle_or_square =
|
|
712
|
-
type:
|
|
739
|
+
import { z as z42 } from "zod";
|
|
740
|
+
var pcb_hole_circle_or_square = z42.object({
|
|
741
|
+
type: z42.literal("pcb_hole"),
|
|
713
742
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
714
|
-
hole_shape:
|
|
715
|
-
hole_diameter:
|
|
743
|
+
hole_shape: z42.enum(["circle", "square"]),
|
|
744
|
+
hole_diameter: z42.number(),
|
|
716
745
|
x: distance,
|
|
717
746
|
y: distance
|
|
718
747
|
});
|
|
@@ -720,12 +749,12 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
|
|
|
720
749
|
"Defines a circular or square hole on the PCB"
|
|
721
750
|
);
|
|
722
751
|
expectTypesMatch(true);
|
|
723
|
-
var pcb_hole_oval =
|
|
724
|
-
type:
|
|
752
|
+
var pcb_hole_oval = z42.object({
|
|
753
|
+
type: z42.literal("pcb_hole"),
|
|
725
754
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
726
|
-
hole_shape:
|
|
727
|
-
hole_width:
|
|
728
|
-
hole_height:
|
|
755
|
+
hole_shape: z42.literal("oval"),
|
|
756
|
+
hole_width: z42.number(),
|
|
757
|
+
hole_height: z42.number(),
|
|
729
758
|
x: distance,
|
|
730
759
|
y: distance
|
|
731
760
|
});
|
|
@@ -736,36 +765,36 @@ expectTypesMatch(true);
|
|
|
736
765
|
var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
|
|
737
766
|
|
|
738
767
|
// src/pcb/pcb_plated_hole.ts
|
|
739
|
-
import { z as
|
|
740
|
-
var pcb_plated_hole_circle =
|
|
741
|
-
type:
|
|
742
|
-
shape:
|
|
743
|
-
outer_diameter:
|
|
744
|
-
hole_diameter:
|
|
768
|
+
import { z as z43 } from "zod";
|
|
769
|
+
var pcb_plated_hole_circle = z43.object({
|
|
770
|
+
type: z43.literal("pcb_plated_hole"),
|
|
771
|
+
shape: z43.literal("circle"),
|
|
772
|
+
outer_diameter: z43.number(),
|
|
773
|
+
hole_diameter: z43.number(),
|
|
745
774
|
x: distance,
|
|
746
775
|
y: distance,
|
|
747
|
-
layers:
|
|
748
|
-
port_hints:
|
|
749
|
-
pcb_component_id:
|
|
750
|
-
pcb_port_id:
|
|
776
|
+
layers: z43.array(layer_ref),
|
|
777
|
+
port_hints: z43.array(z43.string()).optional(),
|
|
778
|
+
pcb_component_id: z43.string().optional(),
|
|
779
|
+
pcb_port_id: z43.string().optional(),
|
|
751
780
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
752
781
|
});
|
|
753
|
-
var pcb_plated_hole_oval =
|
|
754
|
-
type:
|
|
755
|
-
shape:
|
|
756
|
-
outer_width:
|
|
757
|
-
outer_height:
|
|
758
|
-
hole_width:
|
|
759
|
-
hole_height:
|
|
782
|
+
var pcb_plated_hole_oval = z43.object({
|
|
783
|
+
type: z43.literal("pcb_plated_hole"),
|
|
784
|
+
shape: z43.enum(["oval", "pill"]),
|
|
785
|
+
outer_width: z43.number(),
|
|
786
|
+
outer_height: z43.number(),
|
|
787
|
+
hole_width: z43.number(),
|
|
788
|
+
hole_height: z43.number(),
|
|
760
789
|
x: distance,
|
|
761
790
|
y: distance,
|
|
762
|
-
layers:
|
|
763
|
-
port_hints:
|
|
764
|
-
pcb_component_id:
|
|
765
|
-
pcb_port_id:
|
|
791
|
+
layers: z43.array(layer_ref),
|
|
792
|
+
port_hints: z43.array(z43.string()).optional(),
|
|
793
|
+
pcb_component_id: z43.string().optional(),
|
|
794
|
+
pcb_port_id: z43.string().optional(),
|
|
766
795
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
767
796
|
});
|
|
768
|
-
var pcb_plated_hole =
|
|
797
|
+
var pcb_plated_hole = z43.union([
|
|
769
798
|
pcb_plated_hole_circle,
|
|
770
799
|
pcb_plated_hole_oval
|
|
771
800
|
]);
|
|
@@ -775,155 +804,155 @@ expectTypesMatch(
|
|
|
775
804
|
expectTypesMatch(true);
|
|
776
805
|
|
|
777
806
|
// src/pcb/pcb_port.ts
|
|
778
|
-
import { z as
|
|
779
|
-
var pcb_port =
|
|
780
|
-
type:
|
|
807
|
+
import { z as z44 } from "zod";
|
|
808
|
+
var pcb_port = z44.object({
|
|
809
|
+
type: z44.literal("pcb_port"),
|
|
781
810
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
782
|
-
source_port_id:
|
|
783
|
-
pcb_component_id:
|
|
811
|
+
source_port_id: z44.string(),
|
|
812
|
+
pcb_component_id: z44.string(),
|
|
784
813
|
x: distance,
|
|
785
814
|
y: distance,
|
|
786
|
-
layers:
|
|
815
|
+
layers: z44.array(layer_ref)
|
|
787
816
|
}).describe("Defines a port on the PCB");
|
|
788
817
|
expectTypesMatch(true);
|
|
789
818
|
|
|
790
819
|
// src/pcb/pcb_smtpad.ts
|
|
791
|
-
import { z as
|
|
792
|
-
var pcb_smtpad_circle =
|
|
793
|
-
type:
|
|
794
|
-
shape:
|
|
820
|
+
import { z as z45 } from "zod";
|
|
821
|
+
var pcb_smtpad_circle = z45.object({
|
|
822
|
+
type: z45.literal("pcb_smtpad"),
|
|
823
|
+
shape: z45.literal("circle"),
|
|
795
824
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
796
825
|
x: distance,
|
|
797
826
|
y: distance,
|
|
798
|
-
radius:
|
|
827
|
+
radius: z45.number(),
|
|
799
828
|
layer: layer_ref,
|
|
800
|
-
port_hints:
|
|
801
|
-
pcb_component_id:
|
|
802
|
-
pcb_port_id:
|
|
829
|
+
port_hints: z45.array(z45.string()).optional(),
|
|
830
|
+
pcb_component_id: z45.string().optional(),
|
|
831
|
+
pcb_port_id: z45.string().optional()
|
|
803
832
|
});
|
|
804
|
-
var pcb_smtpad_rect =
|
|
805
|
-
type:
|
|
806
|
-
shape:
|
|
833
|
+
var pcb_smtpad_rect = z45.object({
|
|
834
|
+
type: z45.literal("pcb_smtpad"),
|
|
835
|
+
shape: z45.literal("rect"),
|
|
807
836
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
808
837
|
x: distance,
|
|
809
838
|
y: distance,
|
|
810
|
-
width:
|
|
811
|
-
height:
|
|
839
|
+
width: z45.number(),
|
|
840
|
+
height: z45.number(),
|
|
812
841
|
layer: layer_ref,
|
|
813
|
-
port_hints:
|
|
814
|
-
pcb_component_id:
|
|
815
|
-
pcb_port_id:
|
|
842
|
+
port_hints: z45.array(z45.string()).optional(),
|
|
843
|
+
pcb_component_id: z45.string().optional(),
|
|
844
|
+
pcb_port_id: z45.string().optional()
|
|
816
845
|
});
|
|
817
|
-
var pcb_smtpad_rotated_rect =
|
|
818
|
-
type:
|
|
819
|
-
shape:
|
|
846
|
+
var pcb_smtpad_rotated_rect = z45.object({
|
|
847
|
+
type: z45.literal("pcb_smtpad"),
|
|
848
|
+
shape: z45.literal("rotated_rect"),
|
|
820
849
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
821
850
|
x: distance,
|
|
822
851
|
y: distance,
|
|
823
|
-
width:
|
|
824
|
-
height:
|
|
852
|
+
width: z45.number(),
|
|
853
|
+
height: z45.number(),
|
|
825
854
|
ccw_rotation: rotation,
|
|
826
855
|
layer: layer_ref,
|
|
827
|
-
port_hints:
|
|
828
|
-
pcb_component_id:
|
|
829
|
-
pcb_port_id:
|
|
856
|
+
port_hints: z45.array(z45.string()).optional(),
|
|
857
|
+
pcb_component_id: z45.string().optional(),
|
|
858
|
+
pcb_port_id: z45.string().optional()
|
|
830
859
|
});
|
|
831
|
-
var pcb_smtpad =
|
|
860
|
+
var pcb_smtpad = z45.union([pcb_smtpad_circle, pcb_smtpad_rect, pcb_smtpad_rotated_rect]).describe("Defines an SMT pad on the PCB");
|
|
832
861
|
expectTypesMatch(true);
|
|
833
862
|
expectTypesMatch(true);
|
|
834
863
|
expectTypesMatch(true);
|
|
835
864
|
|
|
836
865
|
// src/pcb/pcb_solder_paste.ts
|
|
837
|
-
import { z as
|
|
838
|
-
var pcb_solder_paste_circle =
|
|
839
|
-
type:
|
|
840
|
-
shape:
|
|
866
|
+
import { z as z46 } from "zod";
|
|
867
|
+
var pcb_solder_paste_circle = z46.object({
|
|
868
|
+
type: z46.literal("pcb_solder_paste"),
|
|
869
|
+
shape: z46.literal("circle"),
|
|
841
870
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
842
871
|
x: distance,
|
|
843
872
|
y: distance,
|
|
844
|
-
radius:
|
|
873
|
+
radius: z46.number(),
|
|
845
874
|
layer: layer_ref,
|
|
846
|
-
pcb_component_id:
|
|
847
|
-
pcb_smtpad_id:
|
|
875
|
+
pcb_component_id: z46.string().optional(),
|
|
876
|
+
pcb_smtpad_id: z46.string().optional()
|
|
848
877
|
});
|
|
849
|
-
var pcb_solder_paste_rect =
|
|
850
|
-
type:
|
|
851
|
-
shape:
|
|
878
|
+
var pcb_solder_paste_rect = z46.object({
|
|
879
|
+
type: z46.literal("pcb_solder_paste"),
|
|
880
|
+
shape: z46.literal("rect"),
|
|
852
881
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
853
882
|
x: distance,
|
|
854
883
|
y: distance,
|
|
855
|
-
width:
|
|
856
|
-
height:
|
|
884
|
+
width: z46.number(),
|
|
885
|
+
height: z46.number(),
|
|
857
886
|
layer: layer_ref,
|
|
858
|
-
pcb_component_id:
|
|
859
|
-
pcb_smtpad_id:
|
|
887
|
+
pcb_component_id: z46.string().optional(),
|
|
888
|
+
pcb_smtpad_id: z46.string().optional()
|
|
860
889
|
});
|
|
861
|
-
var pcb_solder_paste =
|
|
890
|
+
var pcb_solder_paste = z46.union([pcb_solder_paste_circle, pcb_solder_paste_rect]).describe("Defines solderpaste on the PCB");
|
|
862
891
|
expectTypesMatch(true);
|
|
863
892
|
expectTypesMatch(true);
|
|
864
893
|
|
|
865
894
|
// src/pcb/pcb_text.ts
|
|
866
|
-
import { z as
|
|
867
|
-
var pcb_text =
|
|
868
|
-
type:
|
|
895
|
+
import { z as z47 } from "zod";
|
|
896
|
+
var pcb_text = z47.object({
|
|
897
|
+
type: z47.literal("pcb_text"),
|
|
869
898
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
870
|
-
text:
|
|
899
|
+
text: z47.string(),
|
|
871
900
|
center: point,
|
|
872
901
|
layer: layer_ref,
|
|
873
902
|
width: length,
|
|
874
903
|
height: length,
|
|
875
|
-
lines:
|
|
876
|
-
align:
|
|
904
|
+
lines: z47.number(),
|
|
905
|
+
align: z47.enum(["bottom-left"])
|
|
877
906
|
}).describe("Defines text on the PCB");
|
|
878
907
|
expectTypesMatch(true);
|
|
879
908
|
|
|
880
909
|
// src/pcb/pcb_trace.ts
|
|
881
|
-
import { z as
|
|
882
|
-
var pcb_trace_route_point_wire =
|
|
883
|
-
route_type:
|
|
910
|
+
import { z as z48 } from "zod";
|
|
911
|
+
var pcb_trace_route_point_wire = z48.object({
|
|
912
|
+
route_type: z48.literal("wire"),
|
|
884
913
|
x: distance,
|
|
885
914
|
y: distance,
|
|
886
915
|
width: distance,
|
|
887
|
-
start_pcb_port_id:
|
|
888
|
-
end_pcb_port_id:
|
|
916
|
+
start_pcb_port_id: z48.string().optional(),
|
|
917
|
+
end_pcb_port_id: z48.string().optional(),
|
|
889
918
|
layer: layer_ref
|
|
890
919
|
});
|
|
891
|
-
var pcb_trace_route_point_via =
|
|
892
|
-
route_type:
|
|
920
|
+
var pcb_trace_route_point_via = z48.object({
|
|
921
|
+
route_type: z48.literal("via"),
|
|
893
922
|
x: distance,
|
|
894
923
|
y: distance,
|
|
895
|
-
from_layer:
|
|
896
|
-
to_layer:
|
|
924
|
+
from_layer: z48.string(),
|
|
925
|
+
to_layer: z48.string()
|
|
897
926
|
});
|
|
898
|
-
var pcb_trace_route_point =
|
|
927
|
+
var pcb_trace_route_point = z48.union([
|
|
899
928
|
pcb_trace_route_point_wire,
|
|
900
929
|
pcb_trace_route_point_via
|
|
901
930
|
]);
|
|
902
|
-
var pcb_trace =
|
|
903
|
-
type:
|
|
904
|
-
source_trace_id:
|
|
905
|
-
pcb_component_id:
|
|
931
|
+
var pcb_trace = z48.object({
|
|
932
|
+
type: z48.literal("pcb_trace"),
|
|
933
|
+
source_trace_id: z48.string().optional(),
|
|
934
|
+
pcb_component_id: z48.string().optional(),
|
|
906
935
|
pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
|
|
907
|
-
route_thickness_mode:
|
|
908
|
-
route_order_index:
|
|
909
|
-
should_round_corners:
|
|
910
|
-
route:
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
route_type:
|
|
936
|
+
route_thickness_mode: z48.enum(["constant", "interpolated"]).default("constant").optional(),
|
|
937
|
+
route_order_index: z48.number().optional(),
|
|
938
|
+
should_round_corners: z48.boolean().optional(),
|
|
939
|
+
route: z48.array(
|
|
940
|
+
z48.union([
|
|
941
|
+
z48.object({
|
|
942
|
+
route_type: z48.literal("wire"),
|
|
914
943
|
x: distance,
|
|
915
944
|
y: distance,
|
|
916
945
|
width: distance,
|
|
917
|
-
start_pcb_port_id:
|
|
918
|
-
end_pcb_port_id:
|
|
946
|
+
start_pcb_port_id: z48.string().optional(),
|
|
947
|
+
end_pcb_port_id: z48.string().optional(),
|
|
919
948
|
layer: layer_ref
|
|
920
949
|
}),
|
|
921
|
-
|
|
922
|
-
route_type:
|
|
950
|
+
z48.object({
|
|
951
|
+
route_type: z48.literal("via"),
|
|
923
952
|
x: distance,
|
|
924
953
|
y: distance,
|
|
925
|
-
from_layer:
|
|
926
|
-
to_layer:
|
|
954
|
+
from_layer: z48.string(),
|
|
955
|
+
to_layer: z48.string()
|
|
927
956
|
})
|
|
928
957
|
])
|
|
929
958
|
)
|
|
@@ -932,34 +961,34 @@ expectTypesMatch(true);
|
|
|
932
961
|
expectTypesMatch(true);
|
|
933
962
|
|
|
934
963
|
// src/pcb/pcb_trace_error.ts
|
|
935
|
-
import { z as
|
|
936
|
-
var pcb_trace_error =
|
|
937
|
-
type:
|
|
964
|
+
import { z as z49 } from "zod";
|
|
965
|
+
var pcb_trace_error = z49.object({
|
|
966
|
+
type: z49.literal("pcb_trace_error"),
|
|
938
967
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
939
|
-
error_type:
|
|
940
|
-
message:
|
|
968
|
+
error_type: z49.literal("pcb_trace_error"),
|
|
969
|
+
message: z49.string(),
|
|
941
970
|
center: point.optional(),
|
|
942
|
-
pcb_trace_id:
|
|
943
|
-
source_trace_id:
|
|
944
|
-
pcb_component_ids:
|
|
945
|
-
pcb_port_ids:
|
|
971
|
+
pcb_trace_id: z49.string(),
|
|
972
|
+
source_trace_id: z49.string(),
|
|
973
|
+
pcb_component_ids: z49.array(z49.string()),
|
|
974
|
+
pcb_port_ids: z49.array(z49.string())
|
|
946
975
|
}).describe("Defines a trace error on the PCB");
|
|
947
976
|
expectTypesMatch(true);
|
|
948
977
|
|
|
949
978
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
950
|
-
import { z as
|
|
951
|
-
var pcb_port_not_matched_error =
|
|
952
|
-
type:
|
|
979
|
+
import { z as z50 } from "zod";
|
|
980
|
+
var pcb_port_not_matched_error = z50.object({
|
|
981
|
+
type: z50.literal("pcb_port_not_matched_error"),
|
|
953
982
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
954
|
-
message:
|
|
955
|
-
pcb_component_ids:
|
|
983
|
+
message: z50.string(),
|
|
984
|
+
pcb_component_ids: z50.array(z50.string())
|
|
956
985
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
957
986
|
expectTypesMatch(true);
|
|
958
987
|
|
|
959
988
|
// src/pcb/pcb_via.ts
|
|
960
|
-
import { z as
|
|
961
|
-
var pcb_via =
|
|
962
|
-
type:
|
|
989
|
+
import { z as z51 } from "zod";
|
|
990
|
+
var pcb_via = z51.object({
|
|
991
|
+
type: z51.literal("pcb_via"),
|
|
963
992
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
964
993
|
x: distance,
|
|
965
994
|
y: distance,
|
|
@@ -969,51 +998,51 @@ var pcb_via = z50.object({
|
|
|
969
998
|
from_layer: layer_ref.optional(),
|
|
970
999
|
/** @deprecated */
|
|
971
1000
|
to_layer: layer_ref.optional(),
|
|
972
|
-
layers:
|
|
973
|
-
pcb_trace_id:
|
|
1001
|
+
layers: z51.array(layer_ref),
|
|
1002
|
+
pcb_trace_id: z51.string().optional()
|
|
974
1003
|
}).describe("Defines a via on the PCB");
|
|
975
1004
|
expectTypesMatch(true);
|
|
976
1005
|
|
|
977
1006
|
// src/pcb/pcb_board.ts
|
|
978
|
-
import { z as
|
|
979
|
-
var pcb_board =
|
|
980
|
-
type:
|
|
1007
|
+
import { z as z52 } from "zod";
|
|
1008
|
+
var pcb_board = z52.object({
|
|
1009
|
+
type: z52.literal("pcb_board"),
|
|
981
1010
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
982
1011
|
width: length,
|
|
983
1012
|
height: length,
|
|
984
1013
|
center: point,
|
|
985
1014
|
thickness: length.optional().default(1.4),
|
|
986
|
-
num_layers:
|
|
987
|
-
outline:
|
|
1015
|
+
num_layers: z52.number().optional().default(4),
|
|
1016
|
+
outline: z52.array(point).optional()
|
|
988
1017
|
}).describe("Defines the board outline of the PCB");
|
|
989
1018
|
expectTypesMatch(true);
|
|
990
1019
|
|
|
991
1020
|
// src/pcb/pcb_placement_error.ts
|
|
992
|
-
import { z as
|
|
993
|
-
var pcb_placement_error =
|
|
994
|
-
type:
|
|
1021
|
+
import { z as z53 } from "zod";
|
|
1022
|
+
var pcb_placement_error = z53.object({
|
|
1023
|
+
type: z53.literal("pcb_placement_error"),
|
|
995
1024
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
996
|
-
message:
|
|
1025
|
+
message: z53.string()
|
|
997
1026
|
}).describe("Defines a placement error on the PCB");
|
|
998
1027
|
expectTypesMatch(true);
|
|
999
1028
|
|
|
1000
1029
|
// src/pcb/pcb_trace_hint.ts
|
|
1001
|
-
import { z as
|
|
1002
|
-
var pcb_trace_hint =
|
|
1003
|
-
type:
|
|
1030
|
+
import { z as z54 } from "zod";
|
|
1031
|
+
var pcb_trace_hint = z54.object({
|
|
1032
|
+
type: z54.literal("pcb_trace_hint"),
|
|
1004
1033
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
1005
|
-
pcb_port_id:
|
|
1006
|
-
pcb_component_id:
|
|
1007
|
-
route:
|
|
1034
|
+
pcb_port_id: z54.string(),
|
|
1035
|
+
pcb_component_id: z54.string(),
|
|
1036
|
+
route: z54.array(route_hint_point)
|
|
1008
1037
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
1009
1038
|
expectTypesMatch(true);
|
|
1010
1039
|
|
|
1011
1040
|
// src/pcb/pcb_silkscreen_line.ts
|
|
1012
|
-
import { z as
|
|
1013
|
-
var pcb_silkscreen_line =
|
|
1014
|
-
type:
|
|
1041
|
+
import { z as z55 } from "zod";
|
|
1042
|
+
var pcb_silkscreen_line = z55.object({
|
|
1043
|
+
type: z55.literal("pcb_silkscreen_line"),
|
|
1015
1044
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
1016
|
-
pcb_component_id:
|
|
1045
|
+
pcb_component_id: z55.string(),
|
|
1017
1046
|
stroke_width: distance.default("0.1mm"),
|
|
1018
1047
|
x1: distance,
|
|
1019
1048
|
y1: distance,
|
|
@@ -1024,39 +1053,39 @@ var pcb_silkscreen_line = z54.object({
|
|
|
1024
1053
|
expectTypesMatch(true);
|
|
1025
1054
|
|
|
1026
1055
|
// src/pcb/pcb_silkscreen_path.ts
|
|
1027
|
-
import { z as
|
|
1028
|
-
var pcb_silkscreen_path =
|
|
1029
|
-
type:
|
|
1056
|
+
import { z as z56 } from "zod";
|
|
1057
|
+
var pcb_silkscreen_path = z56.object({
|
|
1058
|
+
type: z56.literal("pcb_silkscreen_path"),
|
|
1030
1059
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
1031
|
-
pcb_component_id:
|
|
1060
|
+
pcb_component_id: z56.string(),
|
|
1032
1061
|
layer: visible_layer,
|
|
1033
|
-
route:
|
|
1062
|
+
route: z56.array(point),
|
|
1034
1063
|
stroke_width: length
|
|
1035
1064
|
}).describe("Defines a silkscreen path on the PCB");
|
|
1036
1065
|
expectTypesMatch(true);
|
|
1037
1066
|
|
|
1038
1067
|
// src/pcb/pcb_silkscreen_text.ts
|
|
1039
|
-
import { z as
|
|
1040
|
-
var pcb_silkscreen_text =
|
|
1041
|
-
type:
|
|
1068
|
+
import { z as z57 } from "zod";
|
|
1069
|
+
var pcb_silkscreen_text = z57.object({
|
|
1070
|
+
type: z57.literal("pcb_silkscreen_text"),
|
|
1042
1071
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
1043
|
-
font:
|
|
1072
|
+
font: z57.literal("tscircuit2024").default("tscircuit2024"),
|
|
1044
1073
|
font_size: distance.default("0.2mm"),
|
|
1045
|
-
pcb_component_id:
|
|
1046
|
-
text:
|
|
1074
|
+
pcb_component_id: z57.string(),
|
|
1075
|
+
text: z57.string(),
|
|
1047
1076
|
layer: layer_ref,
|
|
1048
|
-
is_mirrored:
|
|
1077
|
+
is_mirrored: z57.boolean().default(false).optional(),
|
|
1049
1078
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1050
|
-
anchor_alignment:
|
|
1079
|
+
anchor_alignment: z57.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center")
|
|
1051
1080
|
}).describe("Defines silkscreen text on the PCB");
|
|
1052
1081
|
expectTypesMatch(true);
|
|
1053
1082
|
|
|
1054
1083
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
1055
|
-
import { z as
|
|
1056
|
-
var pcb_silkscreen_rect =
|
|
1057
|
-
type:
|
|
1084
|
+
import { z as z58 } from "zod";
|
|
1085
|
+
var pcb_silkscreen_rect = z58.object({
|
|
1086
|
+
type: z58.literal("pcb_silkscreen_rect"),
|
|
1058
1087
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
1059
|
-
pcb_component_id:
|
|
1088
|
+
pcb_component_id: z58.string(),
|
|
1060
1089
|
center: point,
|
|
1061
1090
|
width: length,
|
|
1062
1091
|
height: length,
|
|
@@ -1065,13 +1094,13 @@ var pcb_silkscreen_rect = z57.object({
|
|
|
1065
1094
|
expectTypesMatch(true);
|
|
1066
1095
|
|
|
1067
1096
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
1068
|
-
import { z as
|
|
1069
|
-
var pcb_silkscreen_circle =
|
|
1070
|
-
type:
|
|
1097
|
+
import { z as z59 } from "zod";
|
|
1098
|
+
var pcb_silkscreen_circle = z59.object({
|
|
1099
|
+
type: z59.literal("pcb_silkscreen_circle"),
|
|
1071
1100
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
1072
1101
|
"pcb_silkscreen_circle"
|
|
1073
1102
|
),
|
|
1074
|
-
pcb_component_id:
|
|
1103
|
+
pcb_component_id: z59.string(),
|
|
1075
1104
|
center: point,
|
|
1076
1105
|
radius: length,
|
|
1077
1106
|
layer: visible_layer
|
|
@@ -1079,11 +1108,11 @@ var pcb_silkscreen_circle = z58.object({
|
|
|
1079
1108
|
expectTypesMatch(true);
|
|
1080
1109
|
|
|
1081
1110
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
1082
|
-
import { z as
|
|
1083
|
-
var pcb_silkscreen_oval =
|
|
1084
|
-
type:
|
|
1111
|
+
import { z as z60 } from "zod";
|
|
1112
|
+
var pcb_silkscreen_oval = z60.object({
|
|
1113
|
+
type: z60.literal("pcb_silkscreen_oval"),
|
|
1085
1114
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
1086
|
-
pcb_component_id:
|
|
1115
|
+
pcb_component_id: z60.string(),
|
|
1087
1116
|
center: point,
|
|
1088
1117
|
radius_x: distance,
|
|
1089
1118
|
radius_y: distance,
|
|
@@ -1092,106 +1121,106 @@ var pcb_silkscreen_oval = z59.object({
|
|
|
1092
1121
|
expectTypesMatch(true);
|
|
1093
1122
|
|
|
1094
1123
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
1095
|
-
import { z as
|
|
1096
|
-
var pcb_fabrication_note_text =
|
|
1097
|
-
type:
|
|
1124
|
+
import { z as z61 } from "zod";
|
|
1125
|
+
var pcb_fabrication_note_text = z61.object({
|
|
1126
|
+
type: z61.literal("pcb_fabrication_note_text"),
|
|
1098
1127
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
1099
1128
|
"pcb_fabrication_note_text"
|
|
1100
1129
|
),
|
|
1101
|
-
font:
|
|
1130
|
+
font: z61.literal("tscircuit2024").default("tscircuit2024"),
|
|
1102
1131
|
font_size: distance.default("1mm"),
|
|
1103
|
-
pcb_component_id:
|
|
1104
|
-
text:
|
|
1132
|
+
pcb_component_id: z61.string(),
|
|
1133
|
+
text: z61.string(),
|
|
1105
1134
|
layer: visible_layer,
|
|
1106
1135
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1107
|
-
anchor_alignment:
|
|
1108
|
-
color:
|
|
1136
|
+
anchor_alignment: z61.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
1137
|
+
color: z61.string().optional()
|
|
1109
1138
|
}).describe(
|
|
1110
1139
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
1111
1140
|
);
|
|
1112
1141
|
expectTypesMatch(true);
|
|
1113
1142
|
|
|
1114
1143
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
1115
|
-
import { z as
|
|
1116
|
-
var pcb_fabrication_note_path =
|
|
1117
|
-
type:
|
|
1144
|
+
import { z as z62 } from "zod";
|
|
1145
|
+
var pcb_fabrication_note_path = z62.object({
|
|
1146
|
+
type: z62.literal("pcb_fabrication_note_path"),
|
|
1118
1147
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
1119
1148
|
"pcb_fabrication_note_path"
|
|
1120
1149
|
),
|
|
1121
|
-
pcb_component_id:
|
|
1150
|
+
pcb_component_id: z62.string(),
|
|
1122
1151
|
layer: layer_ref,
|
|
1123
|
-
route:
|
|
1152
|
+
route: z62.array(point),
|
|
1124
1153
|
stroke_width: length,
|
|
1125
|
-
color:
|
|
1154
|
+
color: z62.string().optional()
|
|
1126
1155
|
}).describe(
|
|
1127
1156
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
1128
1157
|
);
|
|
1129
1158
|
expectTypesMatch(true);
|
|
1130
1159
|
|
|
1131
1160
|
// src/pcb/pcb_keepout.ts
|
|
1132
|
-
import { z as
|
|
1133
|
-
var pcb_keepout =
|
|
1134
|
-
type:
|
|
1135
|
-
shape:
|
|
1161
|
+
import { z as z63 } from "zod";
|
|
1162
|
+
var pcb_keepout = z63.object({
|
|
1163
|
+
type: z63.literal("pcb_keepout"),
|
|
1164
|
+
shape: z63.literal("rect"),
|
|
1136
1165
|
center: point,
|
|
1137
1166
|
width: distance,
|
|
1138
1167
|
height: distance,
|
|
1139
|
-
pcb_keepout_id:
|
|
1140
|
-
layers:
|
|
1168
|
+
pcb_keepout_id: z63.string(),
|
|
1169
|
+
layers: z63.array(z63.string()),
|
|
1141
1170
|
// Specify layers where the keepout applies
|
|
1142
|
-
description:
|
|
1171
|
+
description: z63.string().optional()
|
|
1143
1172
|
// Optional description of the keepout
|
|
1144
1173
|
}).or(
|
|
1145
|
-
|
|
1146
|
-
type:
|
|
1147
|
-
shape:
|
|
1174
|
+
z63.object({
|
|
1175
|
+
type: z63.literal("pcb_keepout"),
|
|
1176
|
+
shape: z63.literal("circle"),
|
|
1148
1177
|
center: point,
|
|
1149
1178
|
radius: distance,
|
|
1150
|
-
pcb_keepout_id:
|
|
1151
|
-
layers:
|
|
1179
|
+
pcb_keepout_id: z63.string(),
|
|
1180
|
+
layers: z63.array(z63.string()),
|
|
1152
1181
|
// Specify layers where the keepout applies
|
|
1153
|
-
description:
|
|
1182
|
+
description: z63.string().optional()
|
|
1154
1183
|
// Optional description of the keepout
|
|
1155
1184
|
})
|
|
1156
1185
|
);
|
|
1157
1186
|
|
|
1158
1187
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
1159
|
-
import { z as
|
|
1160
|
-
var pcb_missing_footprint_error =
|
|
1161
|
-
type:
|
|
1188
|
+
import { z as z64 } from "zod";
|
|
1189
|
+
var pcb_missing_footprint_error = z64.object({
|
|
1190
|
+
type: z64.literal("pcb_missing_footprint_error"),
|
|
1162
1191
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
1163
1192
|
"pcb_missing_footprint_error"
|
|
1164
1193
|
),
|
|
1165
|
-
error_type:
|
|
1166
|
-
source_component_id:
|
|
1167
|
-
message:
|
|
1194
|
+
error_type: z64.literal("pcb_missing_footprint_error"),
|
|
1195
|
+
source_component_id: z64.string(),
|
|
1196
|
+
message: z64.string()
|
|
1168
1197
|
}).describe("Defines a missing footprint error on the PCB");
|
|
1169
1198
|
expectTypesMatch(
|
|
1170
1199
|
true
|
|
1171
1200
|
);
|
|
1172
1201
|
|
|
1173
1202
|
// src/cad/cad_component.ts
|
|
1174
|
-
import { z as
|
|
1175
|
-
var cad_component =
|
|
1176
|
-
type:
|
|
1177
|
-
cad_component_id:
|
|
1178
|
-
pcb_component_id:
|
|
1179
|
-
source_component_id:
|
|
1203
|
+
import { z as z65 } from "zod";
|
|
1204
|
+
var cad_component = z65.object({
|
|
1205
|
+
type: z65.literal("cad_component"),
|
|
1206
|
+
cad_component_id: z65.string(),
|
|
1207
|
+
pcb_component_id: z65.string(),
|
|
1208
|
+
source_component_id: z65.string(),
|
|
1180
1209
|
position: point3,
|
|
1181
1210
|
rotation: point3.optional(),
|
|
1182
1211
|
size: point3.optional(),
|
|
1183
1212
|
layer: layer_ref.optional(),
|
|
1184
1213
|
// These are all ways to generate/load the 3d model
|
|
1185
|
-
footprinter_string:
|
|
1186
|
-
model_obj_url:
|
|
1187
|
-
model_stl_url:
|
|
1188
|
-
model_3mf_url:
|
|
1189
|
-
model_jscad:
|
|
1214
|
+
footprinter_string: z65.string().optional(),
|
|
1215
|
+
model_obj_url: z65.string().optional(),
|
|
1216
|
+
model_stl_url: z65.string().optional(),
|
|
1217
|
+
model_3mf_url: z65.string().optional(),
|
|
1218
|
+
model_jscad: z65.any().optional()
|
|
1190
1219
|
}).describe("Defines a component on the PCB");
|
|
1191
1220
|
|
|
1192
1221
|
// src/any_circuit_element.ts
|
|
1193
|
-
import { z as
|
|
1194
|
-
var any_circuit_element =
|
|
1222
|
+
import { z as z66 } from "zod";
|
|
1223
|
+
var any_circuit_element = z66.union([
|
|
1195
1224
|
source_trace,
|
|
1196
1225
|
source_port,
|
|
1197
1226
|
any_source_component,
|
|
@@ -1243,6 +1272,7 @@ var any_circuit_element = z65.union([
|
|
|
1243
1272
|
schematic_error,
|
|
1244
1273
|
schematic_net_label,
|
|
1245
1274
|
schematic_debug_object,
|
|
1275
|
+
schematic_voltage_probe,
|
|
1246
1276
|
cad_component
|
|
1247
1277
|
]);
|
|
1248
1278
|
var any_soup_element = any_circuit_element;
|
|
@@ -1318,6 +1348,7 @@ export {
|
|
|
1318
1348
|
schematic_port,
|
|
1319
1349
|
schematic_text,
|
|
1320
1350
|
schematic_trace,
|
|
1351
|
+
schematic_voltage_probe,
|
|
1321
1352
|
size,
|
|
1322
1353
|
source_component_base,
|
|
1323
1354
|
source_group,
|