circuit-json 0.0.86 → 0.0.87
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/index.d.mts +449 -39
- package/dist/index.mjs +247 -221
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.mjs
CHANGED
|
@@ -511,8 +511,29 @@ var schematic_error = z31.object({
|
|
|
511
511
|
message: z31.string()
|
|
512
512
|
}).describe("Defines a schematic error on the schematic");
|
|
513
513
|
|
|
514
|
-
// src/
|
|
514
|
+
// src/schematic/schematic_debug_object.ts
|
|
515
515
|
import { z as z32 } from "zod";
|
|
516
|
+
var schematic_debug_object_base = z32.object({
|
|
517
|
+
type: z32.literal("schematic_debug_object"),
|
|
518
|
+
label: z32.string().optional()
|
|
519
|
+
});
|
|
520
|
+
var schematic_debug_rect = schematic_debug_object_base.extend({
|
|
521
|
+
shape: z32.literal("rect"),
|
|
522
|
+
center: point,
|
|
523
|
+
size
|
|
524
|
+
});
|
|
525
|
+
var schematic_debug_line = schematic_debug_object_base.extend({
|
|
526
|
+
shape: z32.literal("line"),
|
|
527
|
+
start: point,
|
|
528
|
+
end: point
|
|
529
|
+
});
|
|
530
|
+
var schematic_debug_object = z32.discriminatedUnion("shape", [
|
|
531
|
+
schematic_debug_rect,
|
|
532
|
+
schematic_debug_line
|
|
533
|
+
]);
|
|
534
|
+
|
|
535
|
+
// src/pcb/properties/layer_ref.ts
|
|
536
|
+
import { z as z33 } from "zod";
|
|
516
537
|
var all_layers = [
|
|
517
538
|
"top",
|
|
518
539
|
"bottom",
|
|
@@ -523,9 +544,9 @@ var all_layers = [
|
|
|
523
544
|
"inner5",
|
|
524
545
|
"inner6"
|
|
525
546
|
];
|
|
526
|
-
var layer_string =
|
|
547
|
+
var layer_string = z33.enum(all_layers);
|
|
527
548
|
var layer_ref = layer_string.or(
|
|
528
|
-
|
|
549
|
+
z33.object({
|
|
529
550
|
name: layer_string
|
|
530
551
|
})
|
|
531
552
|
).transform((layer) => {
|
|
@@ -534,40 +555,40 @@ var layer_ref = layer_string.or(
|
|
|
534
555
|
}
|
|
535
556
|
return layer.name;
|
|
536
557
|
});
|
|
537
|
-
var visible_layer =
|
|
558
|
+
var visible_layer = z33.enum(["top", "bottom"]);
|
|
538
559
|
|
|
539
560
|
// src/pcb/properties/pcb_route_hints.ts
|
|
540
|
-
import { z as
|
|
541
|
-
var pcb_route_hint =
|
|
561
|
+
import { z as z34 } from "zod";
|
|
562
|
+
var pcb_route_hint = z34.object({
|
|
542
563
|
x: distance,
|
|
543
564
|
y: distance,
|
|
544
|
-
via:
|
|
565
|
+
via: z34.boolean().optional(),
|
|
545
566
|
via_to_layer: layer_ref.optional()
|
|
546
567
|
});
|
|
547
|
-
var pcb_route_hints =
|
|
568
|
+
var pcb_route_hints = z34.array(pcb_route_hint);
|
|
548
569
|
|
|
549
570
|
// src/pcb/properties/route_hint_point.ts
|
|
550
|
-
import { z as
|
|
551
|
-
var route_hint_point =
|
|
571
|
+
import { z as z35 } from "zod";
|
|
572
|
+
var route_hint_point = z35.object({
|
|
552
573
|
x: distance,
|
|
553
574
|
y: distance,
|
|
554
|
-
via:
|
|
575
|
+
via: z35.boolean().optional(),
|
|
555
576
|
to_layer: layer_ref.optional(),
|
|
556
577
|
trace_width: distance.optional()
|
|
557
578
|
});
|
|
558
579
|
|
|
559
580
|
// src/pcb/pcb_component.ts
|
|
560
|
-
import { z as
|
|
581
|
+
import { z as z36 } from "zod";
|
|
561
582
|
|
|
562
583
|
// src/utils/expect-types-match.ts
|
|
563
584
|
var expectTypesMatch = (shouldBe) => {
|
|
564
585
|
};
|
|
565
586
|
|
|
566
587
|
// src/pcb/pcb_component.ts
|
|
567
|
-
var pcb_component =
|
|
568
|
-
type:
|
|
588
|
+
var pcb_component = z36.object({
|
|
589
|
+
type: z36.literal("pcb_component"),
|
|
569
590
|
pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
|
|
570
|
-
source_component_id:
|
|
591
|
+
source_component_id: z36.string(),
|
|
571
592
|
center: point,
|
|
572
593
|
layer: layer_ref,
|
|
573
594
|
rotation,
|
|
@@ -577,12 +598,12 @@ var pcb_component = z35.object({
|
|
|
577
598
|
expectTypesMatch(true);
|
|
578
599
|
|
|
579
600
|
// src/pcb/pcb_hole.ts
|
|
580
|
-
import { z as
|
|
581
|
-
var pcb_hole_circle_or_square =
|
|
582
|
-
type:
|
|
601
|
+
import { z as z37 } from "zod";
|
|
602
|
+
var pcb_hole_circle_or_square = z37.object({
|
|
603
|
+
type: z37.literal("pcb_hole"),
|
|
583
604
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
584
|
-
hole_shape:
|
|
585
|
-
hole_diameter:
|
|
605
|
+
hole_shape: z37.enum(["circle", "square"]),
|
|
606
|
+
hole_diameter: z37.number(),
|
|
586
607
|
x: distance,
|
|
587
608
|
y: distance
|
|
588
609
|
});
|
|
@@ -590,12 +611,12 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
|
|
|
590
611
|
"Defines a circular or square hole on the PCB"
|
|
591
612
|
);
|
|
592
613
|
expectTypesMatch(true);
|
|
593
|
-
var pcb_hole_oval =
|
|
594
|
-
type:
|
|
614
|
+
var pcb_hole_oval = z37.object({
|
|
615
|
+
type: z37.literal("pcb_hole"),
|
|
595
616
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
596
|
-
hole_shape:
|
|
597
|
-
hole_width:
|
|
598
|
-
hole_height:
|
|
617
|
+
hole_shape: z37.literal("oval"),
|
|
618
|
+
hole_width: z37.number(),
|
|
619
|
+
hole_height: z37.number(),
|
|
599
620
|
x: distance,
|
|
600
621
|
y: distance
|
|
601
622
|
});
|
|
@@ -606,36 +627,36 @@ expectTypesMatch(true);
|
|
|
606
627
|
var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
|
|
607
628
|
|
|
608
629
|
// src/pcb/pcb_plated_hole.ts
|
|
609
|
-
import { z as
|
|
610
|
-
var pcb_plated_hole_circle =
|
|
611
|
-
type:
|
|
612
|
-
shape:
|
|
613
|
-
outer_diameter:
|
|
614
|
-
hole_diameter:
|
|
630
|
+
import { z as z38 } from "zod";
|
|
631
|
+
var pcb_plated_hole_circle = z38.object({
|
|
632
|
+
type: z38.literal("pcb_plated_hole"),
|
|
633
|
+
shape: z38.literal("circle"),
|
|
634
|
+
outer_diameter: z38.number(),
|
|
635
|
+
hole_diameter: z38.number(),
|
|
615
636
|
x: distance,
|
|
616
637
|
y: distance,
|
|
617
|
-
layers:
|
|
618
|
-
port_hints:
|
|
619
|
-
pcb_component_id:
|
|
620
|
-
pcb_port_id:
|
|
638
|
+
layers: z38.array(layer_ref),
|
|
639
|
+
port_hints: z38.array(z38.string()).optional(),
|
|
640
|
+
pcb_component_id: z38.string().optional(),
|
|
641
|
+
pcb_port_id: z38.string().optional(),
|
|
621
642
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
622
643
|
});
|
|
623
|
-
var pcb_plated_hole_oval =
|
|
624
|
-
type:
|
|
625
|
-
shape:
|
|
626
|
-
outer_width:
|
|
627
|
-
outer_height:
|
|
628
|
-
hole_width:
|
|
629
|
-
hole_height:
|
|
644
|
+
var pcb_plated_hole_oval = z38.object({
|
|
645
|
+
type: z38.literal("pcb_plated_hole"),
|
|
646
|
+
shape: z38.enum(["oval", "pill"]),
|
|
647
|
+
outer_width: z38.number(),
|
|
648
|
+
outer_height: z38.number(),
|
|
649
|
+
hole_width: z38.number(),
|
|
650
|
+
hole_height: z38.number(),
|
|
630
651
|
x: distance,
|
|
631
652
|
y: distance,
|
|
632
|
-
layers:
|
|
633
|
-
port_hints:
|
|
634
|
-
pcb_component_id:
|
|
635
|
-
pcb_port_id:
|
|
653
|
+
layers: z38.array(layer_ref),
|
|
654
|
+
port_hints: z38.array(z38.string()).optional(),
|
|
655
|
+
pcb_component_id: z38.string().optional(),
|
|
656
|
+
pcb_port_id: z38.string().optional(),
|
|
636
657
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
637
658
|
});
|
|
638
|
-
var pcb_plated_hole =
|
|
659
|
+
var pcb_plated_hole = z38.union([
|
|
639
660
|
pcb_plated_hole_circle,
|
|
640
661
|
pcb_plated_hole_oval
|
|
641
662
|
]);
|
|
@@ -645,140 +666,140 @@ expectTypesMatch(
|
|
|
645
666
|
expectTypesMatch(true);
|
|
646
667
|
|
|
647
668
|
// src/pcb/pcb_port.ts
|
|
648
|
-
import { z as
|
|
649
|
-
var pcb_port =
|
|
650
|
-
type:
|
|
669
|
+
import { z as z39 } from "zod";
|
|
670
|
+
var pcb_port = z39.object({
|
|
671
|
+
type: z39.literal("pcb_port"),
|
|
651
672
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
652
|
-
source_port_id:
|
|
653
|
-
pcb_component_id:
|
|
673
|
+
source_port_id: z39.string(),
|
|
674
|
+
pcb_component_id: z39.string(),
|
|
654
675
|
x: distance,
|
|
655
676
|
y: distance,
|
|
656
|
-
layers:
|
|
677
|
+
layers: z39.array(layer_ref)
|
|
657
678
|
}).describe("Defines a port on the PCB");
|
|
658
679
|
expectTypesMatch(true);
|
|
659
680
|
|
|
660
681
|
// src/pcb/pcb_smtpad.ts
|
|
661
|
-
import { z as
|
|
662
|
-
var pcb_smtpad_circle =
|
|
663
|
-
type:
|
|
664
|
-
shape:
|
|
682
|
+
import { z as z40 } from "zod";
|
|
683
|
+
var pcb_smtpad_circle = z40.object({
|
|
684
|
+
type: z40.literal("pcb_smtpad"),
|
|
685
|
+
shape: z40.literal("circle"),
|
|
665
686
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
666
687
|
x: distance,
|
|
667
688
|
y: distance,
|
|
668
|
-
radius:
|
|
689
|
+
radius: z40.number(),
|
|
669
690
|
layer: layer_ref,
|
|
670
|
-
port_hints:
|
|
671
|
-
pcb_component_id:
|
|
672
|
-
pcb_port_id:
|
|
691
|
+
port_hints: z40.array(z40.string()).optional(),
|
|
692
|
+
pcb_component_id: z40.string().optional(),
|
|
693
|
+
pcb_port_id: z40.string().optional()
|
|
673
694
|
});
|
|
674
|
-
var pcb_smtpad_rect =
|
|
675
|
-
type:
|
|
676
|
-
shape:
|
|
695
|
+
var pcb_smtpad_rect = z40.object({
|
|
696
|
+
type: z40.literal("pcb_smtpad"),
|
|
697
|
+
shape: z40.literal("rect"),
|
|
677
698
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
678
699
|
x: distance,
|
|
679
700
|
y: distance,
|
|
680
|
-
width:
|
|
681
|
-
height:
|
|
701
|
+
width: z40.number(),
|
|
702
|
+
height: z40.number(),
|
|
682
703
|
layer: layer_ref,
|
|
683
|
-
port_hints:
|
|
684
|
-
pcb_component_id:
|
|
685
|
-
pcb_port_id:
|
|
704
|
+
port_hints: z40.array(z40.string()).optional(),
|
|
705
|
+
pcb_component_id: z40.string().optional(),
|
|
706
|
+
pcb_port_id: z40.string().optional()
|
|
686
707
|
});
|
|
687
|
-
var pcb_smtpad =
|
|
708
|
+
var pcb_smtpad = z40.union([pcb_smtpad_circle, pcb_smtpad_rect]).describe("Defines an SMT pad on the PCB");
|
|
688
709
|
expectTypesMatch(true);
|
|
689
710
|
expectTypesMatch(true);
|
|
690
711
|
|
|
691
712
|
// src/pcb/pcb_solder_paste.ts
|
|
692
|
-
import { z as
|
|
693
|
-
var pcb_solder_paste_circle =
|
|
694
|
-
type:
|
|
695
|
-
shape:
|
|
713
|
+
import { z as z41 } from "zod";
|
|
714
|
+
var pcb_solder_paste_circle = z41.object({
|
|
715
|
+
type: z41.literal("pcb_solder_paste"),
|
|
716
|
+
shape: z41.literal("circle"),
|
|
696
717
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
697
718
|
x: distance,
|
|
698
719
|
y: distance,
|
|
699
|
-
radius:
|
|
720
|
+
radius: z41.number(),
|
|
700
721
|
layer: layer_ref,
|
|
701
|
-
pcb_component_id:
|
|
702
|
-
pcb_smtpad_id:
|
|
722
|
+
pcb_component_id: z41.string().optional(),
|
|
723
|
+
pcb_smtpad_id: z41.string().optional()
|
|
703
724
|
});
|
|
704
|
-
var pcb_solder_paste_rect =
|
|
705
|
-
type:
|
|
706
|
-
shape:
|
|
725
|
+
var pcb_solder_paste_rect = z41.object({
|
|
726
|
+
type: z41.literal("pcb_solder_paste"),
|
|
727
|
+
shape: z41.literal("rect"),
|
|
707
728
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
708
729
|
x: distance,
|
|
709
730
|
y: distance,
|
|
710
|
-
width:
|
|
711
|
-
height:
|
|
731
|
+
width: z41.number(),
|
|
732
|
+
height: z41.number(),
|
|
712
733
|
layer: layer_ref,
|
|
713
|
-
pcb_component_id:
|
|
714
|
-
pcb_smtpad_id:
|
|
734
|
+
pcb_component_id: z41.string().optional(),
|
|
735
|
+
pcb_smtpad_id: z41.string().optional()
|
|
715
736
|
});
|
|
716
|
-
var pcb_solder_paste =
|
|
737
|
+
var pcb_solder_paste = z41.union([pcb_solder_paste_circle, pcb_solder_paste_rect]).describe("Defines solderpaste on the PCB");
|
|
717
738
|
expectTypesMatch(true);
|
|
718
739
|
expectTypesMatch(true);
|
|
719
740
|
|
|
720
741
|
// src/pcb/pcb_text.ts
|
|
721
|
-
import { z as
|
|
722
|
-
var pcb_text =
|
|
723
|
-
type:
|
|
742
|
+
import { z as z42 } from "zod";
|
|
743
|
+
var pcb_text = z42.object({
|
|
744
|
+
type: z42.literal("pcb_text"),
|
|
724
745
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
725
|
-
text:
|
|
746
|
+
text: z42.string(),
|
|
726
747
|
center: point,
|
|
727
748
|
layer: layer_ref,
|
|
728
749
|
width: length,
|
|
729
750
|
height: length,
|
|
730
|
-
lines:
|
|
731
|
-
align:
|
|
751
|
+
lines: z42.number(),
|
|
752
|
+
align: z42.enum(["bottom-left"])
|
|
732
753
|
}).describe("Defines text on the PCB");
|
|
733
754
|
expectTypesMatch(true);
|
|
734
755
|
|
|
735
756
|
// src/pcb/pcb_trace.ts
|
|
736
|
-
import { z as
|
|
737
|
-
var pcb_trace_route_point_wire =
|
|
738
|
-
route_type:
|
|
757
|
+
import { z as z43 } from "zod";
|
|
758
|
+
var pcb_trace_route_point_wire = z43.object({
|
|
759
|
+
route_type: z43.literal("wire"),
|
|
739
760
|
x: distance,
|
|
740
761
|
y: distance,
|
|
741
762
|
width: distance,
|
|
742
|
-
start_pcb_port_id:
|
|
743
|
-
end_pcb_port_id:
|
|
763
|
+
start_pcb_port_id: z43.string().optional(),
|
|
764
|
+
end_pcb_port_id: z43.string().optional(),
|
|
744
765
|
layer: layer_ref
|
|
745
766
|
});
|
|
746
|
-
var pcb_trace_route_point_via =
|
|
747
|
-
route_type:
|
|
767
|
+
var pcb_trace_route_point_via = z43.object({
|
|
768
|
+
route_type: z43.literal("via"),
|
|
748
769
|
x: distance,
|
|
749
770
|
y: distance,
|
|
750
|
-
from_layer:
|
|
751
|
-
to_layer:
|
|
771
|
+
from_layer: z43.string(),
|
|
772
|
+
to_layer: z43.string()
|
|
752
773
|
});
|
|
753
|
-
var pcb_trace_route_point =
|
|
774
|
+
var pcb_trace_route_point = z43.union([
|
|
754
775
|
pcb_trace_route_point_wire,
|
|
755
776
|
pcb_trace_route_point_via
|
|
756
777
|
]);
|
|
757
|
-
var pcb_trace =
|
|
758
|
-
type:
|
|
759
|
-
source_trace_id:
|
|
760
|
-
pcb_component_id:
|
|
778
|
+
var pcb_trace = z43.object({
|
|
779
|
+
type: z43.literal("pcb_trace"),
|
|
780
|
+
source_trace_id: z43.string().optional(),
|
|
781
|
+
pcb_component_id: z43.string().optional(),
|
|
761
782
|
pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
|
|
762
|
-
route_thickness_mode:
|
|
763
|
-
route_order_index:
|
|
764
|
-
should_round_corners:
|
|
765
|
-
route:
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
route_type:
|
|
783
|
+
route_thickness_mode: z43.enum(["constant", "interpolated"]).default("constant").optional(),
|
|
784
|
+
route_order_index: z43.number().optional(),
|
|
785
|
+
should_round_corners: z43.boolean().optional(),
|
|
786
|
+
route: z43.array(
|
|
787
|
+
z43.union([
|
|
788
|
+
z43.object({
|
|
789
|
+
route_type: z43.literal("wire"),
|
|
769
790
|
x: distance,
|
|
770
791
|
y: distance,
|
|
771
792
|
width: distance,
|
|
772
|
-
start_pcb_port_id:
|
|
773
|
-
end_pcb_port_id:
|
|
793
|
+
start_pcb_port_id: z43.string().optional(),
|
|
794
|
+
end_pcb_port_id: z43.string().optional(),
|
|
774
795
|
layer: layer_ref
|
|
775
796
|
}),
|
|
776
|
-
|
|
777
|
-
route_type:
|
|
797
|
+
z43.object({
|
|
798
|
+
route_type: z43.literal("via"),
|
|
778
799
|
x: distance,
|
|
779
800
|
y: distance,
|
|
780
|
-
from_layer:
|
|
781
|
-
to_layer:
|
|
801
|
+
from_layer: z43.string(),
|
|
802
|
+
to_layer: z43.string()
|
|
782
803
|
})
|
|
783
804
|
])
|
|
784
805
|
)
|
|
@@ -787,34 +808,34 @@ expectTypesMatch(true);
|
|
|
787
808
|
expectTypesMatch(true);
|
|
788
809
|
|
|
789
810
|
// src/pcb/pcb_trace_error.ts
|
|
790
|
-
import { z as
|
|
791
|
-
var pcb_trace_error =
|
|
792
|
-
type:
|
|
811
|
+
import { z as z44 } from "zod";
|
|
812
|
+
var pcb_trace_error = z44.object({
|
|
813
|
+
type: z44.literal("pcb_trace_error"),
|
|
793
814
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
794
|
-
error_type:
|
|
795
|
-
message:
|
|
815
|
+
error_type: z44.literal("pcb_trace_error"),
|
|
816
|
+
message: z44.string(),
|
|
796
817
|
center: point.optional(),
|
|
797
|
-
pcb_trace_id:
|
|
798
|
-
source_trace_id:
|
|
799
|
-
pcb_component_ids:
|
|
800
|
-
pcb_port_ids:
|
|
818
|
+
pcb_trace_id: z44.string(),
|
|
819
|
+
source_trace_id: z44.string(),
|
|
820
|
+
pcb_component_ids: z44.array(z44.string()),
|
|
821
|
+
pcb_port_ids: z44.array(z44.string())
|
|
801
822
|
}).describe("Defines a trace error on the PCB");
|
|
802
823
|
expectTypesMatch(true);
|
|
803
824
|
|
|
804
825
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
805
|
-
import { z as
|
|
806
|
-
var pcb_port_not_matched_error =
|
|
807
|
-
type:
|
|
826
|
+
import { z as z45 } from "zod";
|
|
827
|
+
var pcb_port_not_matched_error = z45.object({
|
|
828
|
+
type: z45.literal("pcb_port_not_matched_error"),
|
|
808
829
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
809
|
-
message:
|
|
810
|
-
pcb_component_ids:
|
|
830
|
+
message: z45.string(),
|
|
831
|
+
pcb_component_ids: z45.array(z45.string())
|
|
811
832
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
812
833
|
expectTypesMatch(true);
|
|
813
834
|
|
|
814
835
|
// src/pcb/pcb_via.ts
|
|
815
|
-
import { z as
|
|
816
|
-
var pcb_via =
|
|
817
|
-
type:
|
|
836
|
+
import { z as z46 } from "zod";
|
|
837
|
+
var pcb_via = z46.object({
|
|
838
|
+
type: z46.literal("pcb_via"),
|
|
818
839
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
819
840
|
x: distance,
|
|
820
841
|
y: distance,
|
|
@@ -824,51 +845,51 @@ var pcb_via = z45.object({
|
|
|
824
845
|
from_layer: layer_ref.optional(),
|
|
825
846
|
/** @deprecated */
|
|
826
847
|
to_layer: layer_ref.optional(),
|
|
827
|
-
layers:
|
|
828
|
-
pcb_trace_id:
|
|
848
|
+
layers: z46.array(layer_ref),
|
|
849
|
+
pcb_trace_id: z46.string().optional()
|
|
829
850
|
}).describe("Defines a via on the PCB");
|
|
830
851
|
expectTypesMatch(true);
|
|
831
852
|
|
|
832
853
|
// src/pcb/pcb_board.ts
|
|
833
|
-
import { z as
|
|
834
|
-
var pcb_board =
|
|
835
|
-
type:
|
|
854
|
+
import { z as z47 } from "zod";
|
|
855
|
+
var pcb_board = z47.object({
|
|
856
|
+
type: z47.literal("pcb_board"),
|
|
836
857
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
837
858
|
width: length,
|
|
838
859
|
height: length,
|
|
839
860
|
center: point,
|
|
840
861
|
thickness: length.optional().default(1.4),
|
|
841
|
-
num_layers:
|
|
842
|
-
outline:
|
|
862
|
+
num_layers: z47.number().optional().default(4),
|
|
863
|
+
outline: z47.array(point).optional()
|
|
843
864
|
}).describe("Defines the board outline of the PCB");
|
|
844
865
|
expectTypesMatch(true);
|
|
845
866
|
|
|
846
867
|
// src/pcb/pcb_placement_error.ts
|
|
847
|
-
import { z as
|
|
848
|
-
var pcb_placement_error =
|
|
849
|
-
type:
|
|
868
|
+
import { z as z48 } from "zod";
|
|
869
|
+
var pcb_placement_error = z48.object({
|
|
870
|
+
type: z48.literal("pcb_placement_error"),
|
|
850
871
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
851
|
-
message:
|
|
872
|
+
message: z48.string()
|
|
852
873
|
}).describe("Defines a placement error on the PCB");
|
|
853
874
|
expectTypesMatch(true);
|
|
854
875
|
|
|
855
876
|
// src/pcb/pcb_trace_hint.ts
|
|
856
|
-
import { z as
|
|
857
|
-
var pcb_trace_hint =
|
|
858
|
-
type:
|
|
877
|
+
import { z as z49 } from "zod";
|
|
878
|
+
var pcb_trace_hint = z49.object({
|
|
879
|
+
type: z49.literal("pcb_trace_hint"),
|
|
859
880
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
860
|
-
pcb_port_id:
|
|
861
|
-
pcb_component_id:
|
|
862
|
-
route:
|
|
881
|
+
pcb_port_id: z49.string(),
|
|
882
|
+
pcb_component_id: z49.string(),
|
|
883
|
+
route: z49.array(route_hint_point)
|
|
863
884
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
864
885
|
expectTypesMatch(true);
|
|
865
886
|
|
|
866
887
|
// src/pcb/pcb_silkscreen_line.ts
|
|
867
|
-
import { z as
|
|
868
|
-
var pcb_silkscreen_line =
|
|
869
|
-
type:
|
|
888
|
+
import { z as z50 } from "zod";
|
|
889
|
+
var pcb_silkscreen_line = z50.object({
|
|
890
|
+
type: z50.literal("pcb_silkscreen_line"),
|
|
870
891
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
871
|
-
pcb_component_id:
|
|
892
|
+
pcb_component_id: z50.string(),
|
|
872
893
|
stroke_width: distance.default("0.1mm"),
|
|
873
894
|
x1: distance,
|
|
874
895
|
y1: distance,
|
|
@@ -879,39 +900,39 @@ var pcb_silkscreen_line = z49.object({
|
|
|
879
900
|
expectTypesMatch(true);
|
|
880
901
|
|
|
881
902
|
// src/pcb/pcb_silkscreen_path.ts
|
|
882
|
-
import { z as
|
|
883
|
-
var pcb_silkscreen_path =
|
|
884
|
-
type:
|
|
903
|
+
import { z as z51 } from "zod";
|
|
904
|
+
var pcb_silkscreen_path = z51.object({
|
|
905
|
+
type: z51.literal("pcb_silkscreen_path"),
|
|
885
906
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
886
|
-
pcb_component_id:
|
|
907
|
+
pcb_component_id: z51.string(),
|
|
887
908
|
layer: visible_layer,
|
|
888
|
-
route:
|
|
909
|
+
route: z51.array(point),
|
|
889
910
|
stroke_width: length
|
|
890
911
|
}).describe("Defines a silkscreen path on the PCB");
|
|
891
912
|
expectTypesMatch(true);
|
|
892
913
|
|
|
893
914
|
// src/pcb/pcb_silkscreen_text.ts
|
|
894
|
-
import { z as
|
|
895
|
-
var pcb_silkscreen_text =
|
|
896
|
-
type:
|
|
915
|
+
import { z as z52 } from "zod";
|
|
916
|
+
var pcb_silkscreen_text = z52.object({
|
|
917
|
+
type: z52.literal("pcb_silkscreen_text"),
|
|
897
918
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
898
|
-
font:
|
|
919
|
+
font: z52.literal("tscircuit2024").default("tscircuit2024"),
|
|
899
920
|
font_size: distance.default("0.2mm"),
|
|
900
|
-
pcb_component_id:
|
|
901
|
-
text:
|
|
921
|
+
pcb_component_id: z52.string(),
|
|
922
|
+
text: z52.string(),
|
|
902
923
|
layer: layer_ref,
|
|
903
|
-
is_mirrored:
|
|
924
|
+
is_mirrored: z52.boolean().default(false).optional(),
|
|
904
925
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
905
|
-
anchor_alignment:
|
|
926
|
+
anchor_alignment: z52.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center")
|
|
906
927
|
}).describe("Defines silkscreen text on the PCB");
|
|
907
928
|
expectTypesMatch(true);
|
|
908
929
|
|
|
909
930
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
910
|
-
import { z as
|
|
911
|
-
var pcb_silkscreen_rect =
|
|
912
|
-
type:
|
|
931
|
+
import { z as z53 } from "zod";
|
|
932
|
+
var pcb_silkscreen_rect = z53.object({
|
|
933
|
+
type: z53.literal("pcb_silkscreen_rect"),
|
|
913
934
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
914
|
-
pcb_component_id:
|
|
935
|
+
pcb_component_id: z53.string(),
|
|
915
936
|
center: point,
|
|
916
937
|
width: length,
|
|
917
938
|
height: length,
|
|
@@ -920,13 +941,13 @@ var pcb_silkscreen_rect = z52.object({
|
|
|
920
941
|
expectTypesMatch(true);
|
|
921
942
|
|
|
922
943
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
923
|
-
import { z as
|
|
924
|
-
var pcb_silkscreen_circle =
|
|
925
|
-
type:
|
|
944
|
+
import { z as z54 } from "zod";
|
|
945
|
+
var pcb_silkscreen_circle = z54.object({
|
|
946
|
+
type: z54.literal("pcb_silkscreen_circle"),
|
|
926
947
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
927
948
|
"pcb_silkscreen_circle"
|
|
928
949
|
),
|
|
929
|
-
pcb_component_id:
|
|
950
|
+
pcb_component_id: z54.string(),
|
|
930
951
|
center: point,
|
|
931
952
|
radius: length,
|
|
932
953
|
layer: visible_layer
|
|
@@ -934,11 +955,11 @@ var pcb_silkscreen_circle = z53.object({
|
|
|
934
955
|
expectTypesMatch(true);
|
|
935
956
|
|
|
936
957
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
937
|
-
import { z as
|
|
938
|
-
var pcb_silkscreen_oval =
|
|
939
|
-
type:
|
|
958
|
+
import { z as z55 } from "zod";
|
|
959
|
+
var pcb_silkscreen_oval = z55.object({
|
|
960
|
+
type: z55.literal("pcb_silkscreen_oval"),
|
|
940
961
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
941
|
-
pcb_component_id:
|
|
962
|
+
pcb_component_id: z55.string(),
|
|
942
963
|
center: point,
|
|
943
964
|
radius_x: distance,
|
|
944
965
|
radius_y: distance,
|
|
@@ -947,91 +968,91 @@ var pcb_silkscreen_oval = z54.object({
|
|
|
947
968
|
expectTypesMatch(true);
|
|
948
969
|
|
|
949
970
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
950
|
-
import { z as
|
|
951
|
-
var pcb_fabrication_note_text =
|
|
952
|
-
type:
|
|
971
|
+
import { z as z56 } from "zod";
|
|
972
|
+
var pcb_fabrication_note_text = z56.object({
|
|
973
|
+
type: z56.literal("pcb_fabrication_note_text"),
|
|
953
974
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
954
975
|
"pcb_fabrication_note_text"
|
|
955
976
|
),
|
|
956
|
-
font:
|
|
977
|
+
font: z56.literal("tscircuit2024").default("tscircuit2024"),
|
|
957
978
|
font_size: distance.default("1mm"),
|
|
958
|
-
pcb_component_id:
|
|
959
|
-
text:
|
|
979
|
+
pcb_component_id: z56.string(),
|
|
980
|
+
text: z56.string(),
|
|
960
981
|
layer: visible_layer,
|
|
961
982
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
962
|
-
anchor_alignment:
|
|
963
|
-
color:
|
|
983
|
+
anchor_alignment: z56.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
984
|
+
color: z56.string().optional()
|
|
964
985
|
}).describe(
|
|
965
986
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
966
987
|
);
|
|
967
988
|
expectTypesMatch(true);
|
|
968
989
|
|
|
969
990
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
970
|
-
import { z as
|
|
971
|
-
var pcb_fabrication_note_path =
|
|
972
|
-
type:
|
|
991
|
+
import { z as z57 } from "zod";
|
|
992
|
+
var pcb_fabrication_note_path = z57.object({
|
|
993
|
+
type: z57.literal("pcb_fabrication_note_path"),
|
|
973
994
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
974
995
|
"pcb_fabrication_note_path"
|
|
975
996
|
),
|
|
976
|
-
pcb_component_id:
|
|
997
|
+
pcb_component_id: z57.string(),
|
|
977
998
|
layer: layer_ref,
|
|
978
|
-
route:
|
|
999
|
+
route: z57.array(point),
|
|
979
1000
|
stroke_width: length,
|
|
980
|
-
color:
|
|
1001
|
+
color: z57.string().optional()
|
|
981
1002
|
}).describe(
|
|
982
1003
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
983
1004
|
);
|
|
984
1005
|
expectTypesMatch(true);
|
|
985
1006
|
|
|
986
1007
|
// src/pcb/pcb_keepout.ts
|
|
987
|
-
import { z as
|
|
988
|
-
var pcb_keepout =
|
|
989
|
-
type:
|
|
990
|
-
shape:
|
|
1008
|
+
import { z as z58 } from "zod";
|
|
1009
|
+
var pcb_keepout = z58.object({
|
|
1010
|
+
type: z58.literal("pcb_keepout"),
|
|
1011
|
+
shape: z58.literal("rect"),
|
|
991
1012
|
center: point,
|
|
992
1013
|
width: distance,
|
|
993
1014
|
height: distance,
|
|
994
|
-
pcb_keepout_id:
|
|
995
|
-
layers:
|
|
1015
|
+
pcb_keepout_id: z58.string(),
|
|
1016
|
+
layers: z58.array(z58.string()),
|
|
996
1017
|
// Specify layers where the keepout applies
|
|
997
|
-
description:
|
|
1018
|
+
description: z58.string().optional()
|
|
998
1019
|
// Optional description of the keepout
|
|
999
1020
|
}).or(
|
|
1000
|
-
|
|
1001
|
-
type:
|
|
1002
|
-
shape:
|
|
1021
|
+
z58.object({
|
|
1022
|
+
type: z58.literal("pcb_keepout"),
|
|
1023
|
+
shape: z58.literal("circle"),
|
|
1003
1024
|
center: point,
|
|
1004
1025
|
radius: distance,
|
|
1005
|
-
pcb_keepout_id:
|
|
1006
|
-
layers:
|
|
1026
|
+
pcb_keepout_id: z58.string(),
|
|
1027
|
+
layers: z58.array(z58.string()),
|
|
1007
1028
|
// Specify layers where the keepout applies
|
|
1008
|
-
description:
|
|
1029
|
+
description: z58.string().optional()
|
|
1009
1030
|
// Optional description of the keepout
|
|
1010
1031
|
})
|
|
1011
1032
|
);
|
|
1012
1033
|
|
|
1013
1034
|
// src/cad/cad_component.ts
|
|
1014
|
-
import { z as
|
|
1015
|
-
var cad_component =
|
|
1016
|
-
type:
|
|
1017
|
-
cad_component_id:
|
|
1018
|
-
pcb_component_id:
|
|
1019
|
-
source_component_id:
|
|
1035
|
+
import { z as z59 } from "zod";
|
|
1036
|
+
var cad_component = z59.object({
|
|
1037
|
+
type: z59.literal("cad_component"),
|
|
1038
|
+
cad_component_id: z59.string(),
|
|
1039
|
+
pcb_component_id: z59.string(),
|
|
1040
|
+
source_component_id: z59.string(),
|
|
1020
1041
|
position: point3,
|
|
1021
1042
|
rotation: point3.optional(),
|
|
1022
1043
|
size: point3.optional(),
|
|
1023
1044
|
layer: layer_ref.optional(),
|
|
1024
1045
|
// These are all ways to generate/load the 3d model
|
|
1025
|
-
footprinter_string:
|
|
1026
|
-
model_obj_url:
|
|
1027
|
-
model_stl_url:
|
|
1028
|
-
model_3mf_url:
|
|
1029
|
-
model_jscad:
|
|
1046
|
+
footprinter_string: z59.string().optional(),
|
|
1047
|
+
model_obj_url: z59.string().optional(),
|
|
1048
|
+
model_stl_url: z59.string().optional(),
|
|
1049
|
+
model_3mf_url: z59.string().optional(),
|
|
1050
|
+
model_jscad: z59.any().optional()
|
|
1030
1051
|
}).describe("Defines a component on the PCB");
|
|
1031
1052
|
|
|
1032
1053
|
// src/any_circuit_element.ts
|
|
1033
|
-
import { z as
|
|
1034
|
-
var any_circuit_element =
|
|
1054
|
+
import { z as z60 } from "zod";
|
|
1055
|
+
var any_circuit_element = z60.union([
|
|
1035
1056
|
source_trace,
|
|
1036
1057
|
source_port,
|
|
1037
1058
|
any_source_component,
|
|
@@ -1077,6 +1098,7 @@ var any_circuit_element = z59.union([
|
|
|
1077
1098
|
schematic_path,
|
|
1078
1099
|
schematic_error,
|
|
1079
1100
|
schematic_net_label,
|
|
1101
|
+
schematic_debug_object,
|
|
1080
1102
|
cad_component
|
|
1081
1103
|
]);
|
|
1082
1104
|
var any_soup_element = any_circuit_element;
|
|
@@ -1134,6 +1156,10 @@ export {
|
|
|
1134
1156
|
route_hint_point,
|
|
1135
1157
|
schematic_box,
|
|
1136
1158
|
schematic_component,
|
|
1159
|
+
schematic_debug_line,
|
|
1160
|
+
schematic_debug_object,
|
|
1161
|
+
schematic_debug_object_base,
|
|
1162
|
+
schematic_debug_rect,
|
|
1137
1163
|
schematic_error,
|
|
1138
1164
|
schematic_line,
|
|
1139
1165
|
schematic_net_label,
|