circuit-json 0.0.107 → 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/dist/index.d.mts +116 -7
- package/dist/index.mjs +249 -236
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -381,7 +381,7 @@ import { z as z21 } from "zod";
|
|
|
381
381
|
var source_simple_pin_header = source_component_base.extend({
|
|
382
382
|
ftype: z21.literal("simple_pin_header"),
|
|
383
383
|
pin_count: z21.number(),
|
|
384
|
-
gender: z21.enum(["male", "female"]).default("male")
|
|
384
|
+
gender: z21.enum(["male", "female"]).optional().default("male")
|
|
385
385
|
});
|
|
386
386
|
|
|
387
387
|
// src/source/any_source_component.ts
|
|
@@ -647,8 +647,19 @@ var schematic_debug_object = z36.discriminatedUnion("shape", [
|
|
|
647
647
|
]);
|
|
648
648
|
expectTypesMatch(true);
|
|
649
649
|
|
|
650
|
-
// src/
|
|
650
|
+
// src/schematic/schematic_voltage_probe.ts
|
|
651
651
|
import { z as z37 } from "zod";
|
|
652
|
+
var schematic_voltage_probe = z37.object({
|
|
653
|
+
type: z37.literal("schematic_voltage_probe"),
|
|
654
|
+
schematic_voltage_probe_id: z37.string(),
|
|
655
|
+
position: point,
|
|
656
|
+
schematic_trace_id: z37.string(),
|
|
657
|
+
voltage: voltage.optional()
|
|
658
|
+
}).describe("Defines a voltage probe measurement point on a schematic trace");
|
|
659
|
+
expectTypesMatch(true);
|
|
660
|
+
|
|
661
|
+
// src/pcb/properties/layer_ref.ts
|
|
662
|
+
import { z as z38 } from "zod";
|
|
652
663
|
var all_layers = [
|
|
653
664
|
"top",
|
|
654
665
|
"bottom",
|
|
@@ -659,9 +670,9 @@ var all_layers = [
|
|
|
659
670
|
"inner5",
|
|
660
671
|
"inner6"
|
|
661
672
|
];
|
|
662
|
-
var layer_string =
|
|
673
|
+
var layer_string = z38.enum(all_layers);
|
|
663
674
|
var layer_ref = layer_string.or(
|
|
664
|
-
|
|
675
|
+
z38.object({
|
|
665
676
|
name: layer_string
|
|
666
677
|
})
|
|
667
678
|
).transform((layer) => {
|
|
@@ -670,34 +681,34 @@ var layer_ref = layer_string.or(
|
|
|
670
681
|
}
|
|
671
682
|
return layer.name;
|
|
672
683
|
});
|
|
673
|
-
var visible_layer =
|
|
684
|
+
var visible_layer = z38.enum(["top", "bottom"]);
|
|
674
685
|
|
|
675
686
|
// src/pcb/properties/pcb_route_hints.ts
|
|
676
|
-
import { z as
|
|
677
|
-
var pcb_route_hint =
|
|
687
|
+
import { z as z39 } from "zod";
|
|
688
|
+
var pcb_route_hint = z39.object({
|
|
678
689
|
x: distance,
|
|
679
690
|
y: distance,
|
|
680
|
-
via:
|
|
691
|
+
via: z39.boolean().optional(),
|
|
681
692
|
via_to_layer: layer_ref.optional()
|
|
682
693
|
});
|
|
683
|
-
var pcb_route_hints =
|
|
694
|
+
var pcb_route_hints = z39.array(pcb_route_hint);
|
|
684
695
|
|
|
685
696
|
// src/pcb/properties/route_hint_point.ts
|
|
686
|
-
import { z as
|
|
687
|
-
var route_hint_point =
|
|
697
|
+
import { z as z40 } from "zod";
|
|
698
|
+
var route_hint_point = z40.object({
|
|
688
699
|
x: distance,
|
|
689
700
|
y: distance,
|
|
690
|
-
via:
|
|
701
|
+
via: z40.boolean().optional(),
|
|
691
702
|
to_layer: layer_ref.optional(),
|
|
692
703
|
trace_width: distance.optional()
|
|
693
704
|
});
|
|
694
705
|
|
|
695
706
|
// src/pcb/pcb_component.ts
|
|
696
|
-
import { z as
|
|
697
|
-
var pcb_component =
|
|
698
|
-
type:
|
|
707
|
+
import { z as z41 } from "zod";
|
|
708
|
+
var pcb_component = z41.object({
|
|
709
|
+
type: z41.literal("pcb_component"),
|
|
699
710
|
pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
|
|
700
|
-
source_component_id:
|
|
711
|
+
source_component_id: z41.string(),
|
|
701
712
|
center: point,
|
|
702
713
|
layer: layer_ref,
|
|
703
714
|
rotation,
|
|
@@ -707,12 +718,12 @@ var pcb_component = z40.object({
|
|
|
707
718
|
expectTypesMatch(true);
|
|
708
719
|
|
|
709
720
|
// src/pcb/pcb_hole.ts
|
|
710
|
-
import { z as
|
|
711
|
-
var pcb_hole_circle_or_square =
|
|
712
|
-
type:
|
|
721
|
+
import { z as z42 } from "zod";
|
|
722
|
+
var pcb_hole_circle_or_square = z42.object({
|
|
723
|
+
type: z42.literal("pcb_hole"),
|
|
713
724
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
714
|
-
hole_shape:
|
|
715
|
-
hole_diameter:
|
|
725
|
+
hole_shape: z42.enum(["circle", "square"]),
|
|
726
|
+
hole_diameter: z42.number(),
|
|
716
727
|
x: distance,
|
|
717
728
|
y: distance
|
|
718
729
|
});
|
|
@@ -720,12 +731,12 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
|
|
|
720
731
|
"Defines a circular or square hole on the PCB"
|
|
721
732
|
);
|
|
722
733
|
expectTypesMatch(true);
|
|
723
|
-
var pcb_hole_oval =
|
|
724
|
-
type:
|
|
734
|
+
var pcb_hole_oval = z42.object({
|
|
735
|
+
type: z42.literal("pcb_hole"),
|
|
725
736
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
726
|
-
hole_shape:
|
|
727
|
-
hole_width:
|
|
728
|
-
hole_height:
|
|
737
|
+
hole_shape: z42.literal("oval"),
|
|
738
|
+
hole_width: z42.number(),
|
|
739
|
+
hole_height: z42.number(),
|
|
729
740
|
x: distance,
|
|
730
741
|
y: distance
|
|
731
742
|
});
|
|
@@ -736,36 +747,36 @@ expectTypesMatch(true);
|
|
|
736
747
|
var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
|
|
737
748
|
|
|
738
749
|
// 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:
|
|
750
|
+
import { z as z43 } from "zod";
|
|
751
|
+
var pcb_plated_hole_circle = z43.object({
|
|
752
|
+
type: z43.literal("pcb_plated_hole"),
|
|
753
|
+
shape: z43.literal("circle"),
|
|
754
|
+
outer_diameter: z43.number(),
|
|
755
|
+
hole_diameter: z43.number(),
|
|
745
756
|
x: distance,
|
|
746
757
|
y: distance,
|
|
747
|
-
layers:
|
|
748
|
-
port_hints:
|
|
749
|
-
pcb_component_id:
|
|
750
|
-
pcb_port_id:
|
|
758
|
+
layers: z43.array(layer_ref),
|
|
759
|
+
port_hints: z43.array(z43.string()).optional(),
|
|
760
|
+
pcb_component_id: z43.string().optional(),
|
|
761
|
+
pcb_port_id: z43.string().optional(),
|
|
751
762
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
752
763
|
});
|
|
753
|
-
var pcb_plated_hole_oval =
|
|
754
|
-
type:
|
|
755
|
-
shape:
|
|
756
|
-
outer_width:
|
|
757
|
-
outer_height:
|
|
758
|
-
hole_width:
|
|
759
|
-
hole_height:
|
|
764
|
+
var pcb_plated_hole_oval = z43.object({
|
|
765
|
+
type: z43.literal("pcb_plated_hole"),
|
|
766
|
+
shape: z43.enum(["oval", "pill"]),
|
|
767
|
+
outer_width: z43.number(),
|
|
768
|
+
outer_height: z43.number(),
|
|
769
|
+
hole_width: z43.number(),
|
|
770
|
+
hole_height: z43.number(),
|
|
760
771
|
x: distance,
|
|
761
772
|
y: distance,
|
|
762
|
-
layers:
|
|
763
|
-
port_hints:
|
|
764
|
-
pcb_component_id:
|
|
765
|
-
pcb_port_id:
|
|
773
|
+
layers: z43.array(layer_ref),
|
|
774
|
+
port_hints: z43.array(z43.string()).optional(),
|
|
775
|
+
pcb_component_id: z43.string().optional(),
|
|
776
|
+
pcb_port_id: z43.string().optional(),
|
|
766
777
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
767
778
|
});
|
|
768
|
-
var pcb_plated_hole =
|
|
779
|
+
var pcb_plated_hole = z43.union([
|
|
769
780
|
pcb_plated_hole_circle,
|
|
770
781
|
pcb_plated_hole_oval
|
|
771
782
|
]);
|
|
@@ -775,155 +786,155 @@ expectTypesMatch(
|
|
|
775
786
|
expectTypesMatch(true);
|
|
776
787
|
|
|
777
788
|
// src/pcb/pcb_port.ts
|
|
778
|
-
import { z as
|
|
779
|
-
var pcb_port =
|
|
780
|
-
type:
|
|
789
|
+
import { z as z44 } from "zod";
|
|
790
|
+
var pcb_port = z44.object({
|
|
791
|
+
type: z44.literal("pcb_port"),
|
|
781
792
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
782
|
-
source_port_id:
|
|
783
|
-
pcb_component_id:
|
|
793
|
+
source_port_id: z44.string(),
|
|
794
|
+
pcb_component_id: z44.string(),
|
|
784
795
|
x: distance,
|
|
785
796
|
y: distance,
|
|
786
|
-
layers:
|
|
797
|
+
layers: z44.array(layer_ref)
|
|
787
798
|
}).describe("Defines a port on the PCB");
|
|
788
799
|
expectTypesMatch(true);
|
|
789
800
|
|
|
790
801
|
// src/pcb/pcb_smtpad.ts
|
|
791
|
-
import { z as
|
|
792
|
-
var pcb_smtpad_circle =
|
|
793
|
-
type:
|
|
794
|
-
shape:
|
|
802
|
+
import { z as z45 } from "zod";
|
|
803
|
+
var pcb_smtpad_circle = z45.object({
|
|
804
|
+
type: z45.literal("pcb_smtpad"),
|
|
805
|
+
shape: z45.literal("circle"),
|
|
795
806
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
796
807
|
x: distance,
|
|
797
808
|
y: distance,
|
|
798
|
-
radius:
|
|
809
|
+
radius: z45.number(),
|
|
799
810
|
layer: layer_ref,
|
|
800
|
-
port_hints:
|
|
801
|
-
pcb_component_id:
|
|
802
|
-
pcb_port_id:
|
|
811
|
+
port_hints: z45.array(z45.string()).optional(),
|
|
812
|
+
pcb_component_id: z45.string().optional(),
|
|
813
|
+
pcb_port_id: z45.string().optional()
|
|
803
814
|
});
|
|
804
|
-
var pcb_smtpad_rect =
|
|
805
|
-
type:
|
|
806
|
-
shape:
|
|
815
|
+
var pcb_smtpad_rect = z45.object({
|
|
816
|
+
type: z45.literal("pcb_smtpad"),
|
|
817
|
+
shape: z45.literal("rect"),
|
|
807
818
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
808
819
|
x: distance,
|
|
809
820
|
y: distance,
|
|
810
|
-
width:
|
|
811
|
-
height:
|
|
821
|
+
width: z45.number(),
|
|
822
|
+
height: z45.number(),
|
|
812
823
|
layer: layer_ref,
|
|
813
|
-
port_hints:
|
|
814
|
-
pcb_component_id:
|
|
815
|
-
pcb_port_id:
|
|
824
|
+
port_hints: z45.array(z45.string()).optional(),
|
|
825
|
+
pcb_component_id: z45.string().optional(),
|
|
826
|
+
pcb_port_id: z45.string().optional()
|
|
816
827
|
});
|
|
817
|
-
var pcb_smtpad_rotated_rect =
|
|
818
|
-
type:
|
|
819
|
-
shape:
|
|
828
|
+
var pcb_smtpad_rotated_rect = z45.object({
|
|
829
|
+
type: z45.literal("pcb_smtpad"),
|
|
830
|
+
shape: z45.literal("rotated_rect"),
|
|
820
831
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
821
832
|
x: distance,
|
|
822
833
|
y: distance,
|
|
823
|
-
width:
|
|
824
|
-
height:
|
|
834
|
+
width: z45.number(),
|
|
835
|
+
height: z45.number(),
|
|
825
836
|
ccw_rotation: rotation,
|
|
826
837
|
layer: layer_ref,
|
|
827
|
-
port_hints:
|
|
828
|
-
pcb_component_id:
|
|
829
|
-
pcb_port_id:
|
|
838
|
+
port_hints: z45.array(z45.string()).optional(),
|
|
839
|
+
pcb_component_id: z45.string().optional(),
|
|
840
|
+
pcb_port_id: z45.string().optional()
|
|
830
841
|
});
|
|
831
|
-
var pcb_smtpad =
|
|
842
|
+
var pcb_smtpad = z45.union([pcb_smtpad_circle, pcb_smtpad_rect, pcb_smtpad_rotated_rect]).describe("Defines an SMT pad on the PCB");
|
|
832
843
|
expectTypesMatch(true);
|
|
833
844
|
expectTypesMatch(true);
|
|
834
845
|
expectTypesMatch(true);
|
|
835
846
|
|
|
836
847
|
// src/pcb/pcb_solder_paste.ts
|
|
837
|
-
import { z as
|
|
838
|
-
var pcb_solder_paste_circle =
|
|
839
|
-
type:
|
|
840
|
-
shape:
|
|
848
|
+
import { z as z46 } from "zod";
|
|
849
|
+
var pcb_solder_paste_circle = z46.object({
|
|
850
|
+
type: z46.literal("pcb_solder_paste"),
|
|
851
|
+
shape: z46.literal("circle"),
|
|
841
852
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
842
853
|
x: distance,
|
|
843
854
|
y: distance,
|
|
844
|
-
radius:
|
|
855
|
+
radius: z46.number(),
|
|
845
856
|
layer: layer_ref,
|
|
846
|
-
pcb_component_id:
|
|
847
|
-
pcb_smtpad_id:
|
|
857
|
+
pcb_component_id: z46.string().optional(),
|
|
858
|
+
pcb_smtpad_id: z46.string().optional()
|
|
848
859
|
});
|
|
849
|
-
var pcb_solder_paste_rect =
|
|
850
|
-
type:
|
|
851
|
-
shape:
|
|
860
|
+
var pcb_solder_paste_rect = z46.object({
|
|
861
|
+
type: z46.literal("pcb_solder_paste"),
|
|
862
|
+
shape: z46.literal("rect"),
|
|
852
863
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
853
864
|
x: distance,
|
|
854
865
|
y: distance,
|
|
855
|
-
width:
|
|
856
|
-
height:
|
|
866
|
+
width: z46.number(),
|
|
867
|
+
height: z46.number(),
|
|
857
868
|
layer: layer_ref,
|
|
858
|
-
pcb_component_id:
|
|
859
|
-
pcb_smtpad_id:
|
|
869
|
+
pcb_component_id: z46.string().optional(),
|
|
870
|
+
pcb_smtpad_id: z46.string().optional()
|
|
860
871
|
});
|
|
861
|
-
var pcb_solder_paste =
|
|
872
|
+
var pcb_solder_paste = z46.union([pcb_solder_paste_circle, pcb_solder_paste_rect]).describe("Defines solderpaste on the PCB");
|
|
862
873
|
expectTypesMatch(true);
|
|
863
874
|
expectTypesMatch(true);
|
|
864
875
|
|
|
865
876
|
// src/pcb/pcb_text.ts
|
|
866
|
-
import { z as
|
|
867
|
-
var pcb_text =
|
|
868
|
-
type:
|
|
877
|
+
import { z as z47 } from "zod";
|
|
878
|
+
var pcb_text = z47.object({
|
|
879
|
+
type: z47.literal("pcb_text"),
|
|
869
880
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
870
|
-
text:
|
|
881
|
+
text: z47.string(),
|
|
871
882
|
center: point,
|
|
872
883
|
layer: layer_ref,
|
|
873
884
|
width: length,
|
|
874
885
|
height: length,
|
|
875
|
-
lines:
|
|
876
|
-
align:
|
|
886
|
+
lines: z47.number(),
|
|
887
|
+
align: z47.enum(["bottom-left"])
|
|
877
888
|
}).describe("Defines text on the PCB");
|
|
878
889
|
expectTypesMatch(true);
|
|
879
890
|
|
|
880
891
|
// src/pcb/pcb_trace.ts
|
|
881
|
-
import { z as
|
|
882
|
-
var pcb_trace_route_point_wire =
|
|
883
|
-
route_type:
|
|
892
|
+
import { z as z48 } from "zod";
|
|
893
|
+
var pcb_trace_route_point_wire = z48.object({
|
|
894
|
+
route_type: z48.literal("wire"),
|
|
884
895
|
x: distance,
|
|
885
896
|
y: distance,
|
|
886
897
|
width: distance,
|
|
887
|
-
start_pcb_port_id:
|
|
888
|
-
end_pcb_port_id:
|
|
898
|
+
start_pcb_port_id: z48.string().optional(),
|
|
899
|
+
end_pcb_port_id: z48.string().optional(),
|
|
889
900
|
layer: layer_ref
|
|
890
901
|
});
|
|
891
|
-
var pcb_trace_route_point_via =
|
|
892
|
-
route_type:
|
|
902
|
+
var pcb_trace_route_point_via = z48.object({
|
|
903
|
+
route_type: z48.literal("via"),
|
|
893
904
|
x: distance,
|
|
894
905
|
y: distance,
|
|
895
|
-
from_layer:
|
|
896
|
-
to_layer:
|
|
906
|
+
from_layer: z48.string(),
|
|
907
|
+
to_layer: z48.string()
|
|
897
908
|
});
|
|
898
|
-
var pcb_trace_route_point =
|
|
909
|
+
var pcb_trace_route_point = z48.union([
|
|
899
910
|
pcb_trace_route_point_wire,
|
|
900
911
|
pcb_trace_route_point_via
|
|
901
912
|
]);
|
|
902
|
-
var pcb_trace =
|
|
903
|
-
type:
|
|
904
|
-
source_trace_id:
|
|
905
|
-
pcb_component_id:
|
|
913
|
+
var pcb_trace = z48.object({
|
|
914
|
+
type: z48.literal("pcb_trace"),
|
|
915
|
+
source_trace_id: z48.string().optional(),
|
|
916
|
+
pcb_component_id: z48.string().optional(),
|
|
906
917
|
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:
|
|
918
|
+
route_thickness_mode: z48.enum(["constant", "interpolated"]).default("constant").optional(),
|
|
919
|
+
route_order_index: z48.number().optional(),
|
|
920
|
+
should_round_corners: z48.boolean().optional(),
|
|
921
|
+
route: z48.array(
|
|
922
|
+
z48.union([
|
|
923
|
+
z48.object({
|
|
924
|
+
route_type: z48.literal("wire"),
|
|
914
925
|
x: distance,
|
|
915
926
|
y: distance,
|
|
916
927
|
width: distance,
|
|
917
|
-
start_pcb_port_id:
|
|
918
|
-
end_pcb_port_id:
|
|
928
|
+
start_pcb_port_id: z48.string().optional(),
|
|
929
|
+
end_pcb_port_id: z48.string().optional(),
|
|
919
930
|
layer: layer_ref
|
|
920
931
|
}),
|
|
921
|
-
|
|
922
|
-
route_type:
|
|
932
|
+
z48.object({
|
|
933
|
+
route_type: z48.literal("via"),
|
|
923
934
|
x: distance,
|
|
924
935
|
y: distance,
|
|
925
|
-
from_layer:
|
|
926
|
-
to_layer:
|
|
936
|
+
from_layer: z48.string(),
|
|
937
|
+
to_layer: z48.string()
|
|
927
938
|
})
|
|
928
939
|
])
|
|
929
940
|
)
|
|
@@ -932,34 +943,34 @@ expectTypesMatch(true);
|
|
|
932
943
|
expectTypesMatch(true);
|
|
933
944
|
|
|
934
945
|
// src/pcb/pcb_trace_error.ts
|
|
935
|
-
import { z as
|
|
936
|
-
var pcb_trace_error =
|
|
937
|
-
type:
|
|
946
|
+
import { z as z49 } from "zod";
|
|
947
|
+
var pcb_trace_error = z49.object({
|
|
948
|
+
type: z49.literal("pcb_trace_error"),
|
|
938
949
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
939
|
-
error_type:
|
|
940
|
-
message:
|
|
950
|
+
error_type: z49.literal("pcb_trace_error"),
|
|
951
|
+
message: z49.string(),
|
|
941
952
|
center: point.optional(),
|
|
942
|
-
pcb_trace_id:
|
|
943
|
-
source_trace_id:
|
|
944
|
-
pcb_component_ids:
|
|
945
|
-
pcb_port_ids:
|
|
953
|
+
pcb_trace_id: z49.string(),
|
|
954
|
+
source_trace_id: z49.string(),
|
|
955
|
+
pcb_component_ids: z49.array(z49.string()),
|
|
956
|
+
pcb_port_ids: z49.array(z49.string())
|
|
946
957
|
}).describe("Defines a trace error on the PCB");
|
|
947
958
|
expectTypesMatch(true);
|
|
948
959
|
|
|
949
960
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
950
|
-
import { z as
|
|
951
|
-
var pcb_port_not_matched_error =
|
|
952
|
-
type:
|
|
961
|
+
import { z as z50 } from "zod";
|
|
962
|
+
var pcb_port_not_matched_error = z50.object({
|
|
963
|
+
type: z50.literal("pcb_port_not_matched_error"),
|
|
953
964
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
954
|
-
message:
|
|
955
|
-
pcb_component_ids:
|
|
965
|
+
message: z50.string(),
|
|
966
|
+
pcb_component_ids: z50.array(z50.string())
|
|
956
967
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
957
968
|
expectTypesMatch(true);
|
|
958
969
|
|
|
959
970
|
// src/pcb/pcb_via.ts
|
|
960
|
-
import { z as
|
|
961
|
-
var pcb_via =
|
|
962
|
-
type:
|
|
971
|
+
import { z as z51 } from "zod";
|
|
972
|
+
var pcb_via = z51.object({
|
|
973
|
+
type: z51.literal("pcb_via"),
|
|
963
974
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
964
975
|
x: distance,
|
|
965
976
|
y: distance,
|
|
@@ -969,51 +980,51 @@ var pcb_via = z50.object({
|
|
|
969
980
|
from_layer: layer_ref.optional(),
|
|
970
981
|
/** @deprecated */
|
|
971
982
|
to_layer: layer_ref.optional(),
|
|
972
|
-
layers:
|
|
973
|
-
pcb_trace_id:
|
|
983
|
+
layers: z51.array(layer_ref),
|
|
984
|
+
pcb_trace_id: z51.string().optional()
|
|
974
985
|
}).describe("Defines a via on the PCB");
|
|
975
986
|
expectTypesMatch(true);
|
|
976
987
|
|
|
977
988
|
// src/pcb/pcb_board.ts
|
|
978
|
-
import { z as
|
|
979
|
-
var pcb_board =
|
|
980
|
-
type:
|
|
989
|
+
import { z as z52 } from "zod";
|
|
990
|
+
var pcb_board = z52.object({
|
|
991
|
+
type: z52.literal("pcb_board"),
|
|
981
992
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
982
993
|
width: length,
|
|
983
994
|
height: length,
|
|
984
995
|
center: point,
|
|
985
996
|
thickness: length.optional().default(1.4),
|
|
986
|
-
num_layers:
|
|
987
|
-
outline:
|
|
997
|
+
num_layers: z52.number().optional().default(4),
|
|
998
|
+
outline: z52.array(point).optional()
|
|
988
999
|
}).describe("Defines the board outline of the PCB");
|
|
989
1000
|
expectTypesMatch(true);
|
|
990
1001
|
|
|
991
1002
|
// src/pcb/pcb_placement_error.ts
|
|
992
|
-
import { z as
|
|
993
|
-
var pcb_placement_error =
|
|
994
|
-
type:
|
|
1003
|
+
import { z as z53 } from "zod";
|
|
1004
|
+
var pcb_placement_error = z53.object({
|
|
1005
|
+
type: z53.literal("pcb_placement_error"),
|
|
995
1006
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
996
|
-
message:
|
|
1007
|
+
message: z53.string()
|
|
997
1008
|
}).describe("Defines a placement error on the PCB");
|
|
998
1009
|
expectTypesMatch(true);
|
|
999
1010
|
|
|
1000
1011
|
// src/pcb/pcb_trace_hint.ts
|
|
1001
|
-
import { z as
|
|
1002
|
-
var pcb_trace_hint =
|
|
1003
|
-
type:
|
|
1012
|
+
import { z as z54 } from "zod";
|
|
1013
|
+
var pcb_trace_hint = z54.object({
|
|
1014
|
+
type: z54.literal("pcb_trace_hint"),
|
|
1004
1015
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
1005
|
-
pcb_port_id:
|
|
1006
|
-
pcb_component_id:
|
|
1007
|
-
route:
|
|
1016
|
+
pcb_port_id: z54.string(),
|
|
1017
|
+
pcb_component_id: z54.string(),
|
|
1018
|
+
route: z54.array(route_hint_point)
|
|
1008
1019
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
1009
1020
|
expectTypesMatch(true);
|
|
1010
1021
|
|
|
1011
1022
|
// src/pcb/pcb_silkscreen_line.ts
|
|
1012
|
-
import { z as
|
|
1013
|
-
var pcb_silkscreen_line =
|
|
1014
|
-
type:
|
|
1023
|
+
import { z as z55 } from "zod";
|
|
1024
|
+
var pcb_silkscreen_line = z55.object({
|
|
1025
|
+
type: z55.literal("pcb_silkscreen_line"),
|
|
1015
1026
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
1016
|
-
pcb_component_id:
|
|
1027
|
+
pcb_component_id: z55.string(),
|
|
1017
1028
|
stroke_width: distance.default("0.1mm"),
|
|
1018
1029
|
x1: distance,
|
|
1019
1030
|
y1: distance,
|
|
@@ -1024,39 +1035,39 @@ var pcb_silkscreen_line = z54.object({
|
|
|
1024
1035
|
expectTypesMatch(true);
|
|
1025
1036
|
|
|
1026
1037
|
// src/pcb/pcb_silkscreen_path.ts
|
|
1027
|
-
import { z as
|
|
1028
|
-
var pcb_silkscreen_path =
|
|
1029
|
-
type:
|
|
1038
|
+
import { z as z56 } from "zod";
|
|
1039
|
+
var pcb_silkscreen_path = z56.object({
|
|
1040
|
+
type: z56.literal("pcb_silkscreen_path"),
|
|
1030
1041
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
1031
|
-
pcb_component_id:
|
|
1042
|
+
pcb_component_id: z56.string(),
|
|
1032
1043
|
layer: visible_layer,
|
|
1033
|
-
route:
|
|
1044
|
+
route: z56.array(point),
|
|
1034
1045
|
stroke_width: length
|
|
1035
1046
|
}).describe("Defines a silkscreen path on the PCB");
|
|
1036
1047
|
expectTypesMatch(true);
|
|
1037
1048
|
|
|
1038
1049
|
// src/pcb/pcb_silkscreen_text.ts
|
|
1039
|
-
import { z as
|
|
1040
|
-
var pcb_silkscreen_text =
|
|
1041
|
-
type:
|
|
1050
|
+
import { z as z57 } from "zod";
|
|
1051
|
+
var pcb_silkscreen_text = z57.object({
|
|
1052
|
+
type: z57.literal("pcb_silkscreen_text"),
|
|
1042
1053
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
1043
|
-
font:
|
|
1054
|
+
font: z57.literal("tscircuit2024").default("tscircuit2024"),
|
|
1044
1055
|
font_size: distance.default("0.2mm"),
|
|
1045
|
-
pcb_component_id:
|
|
1046
|
-
text:
|
|
1056
|
+
pcb_component_id: z57.string(),
|
|
1057
|
+
text: z57.string(),
|
|
1047
1058
|
layer: layer_ref,
|
|
1048
|
-
is_mirrored:
|
|
1059
|
+
is_mirrored: z57.boolean().default(false).optional(),
|
|
1049
1060
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1050
|
-
anchor_alignment:
|
|
1061
|
+
anchor_alignment: z57.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center")
|
|
1051
1062
|
}).describe("Defines silkscreen text on the PCB");
|
|
1052
1063
|
expectTypesMatch(true);
|
|
1053
1064
|
|
|
1054
1065
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
1055
|
-
import { z as
|
|
1056
|
-
var pcb_silkscreen_rect =
|
|
1057
|
-
type:
|
|
1066
|
+
import { z as z58 } from "zod";
|
|
1067
|
+
var pcb_silkscreen_rect = z58.object({
|
|
1068
|
+
type: z58.literal("pcb_silkscreen_rect"),
|
|
1058
1069
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
1059
|
-
pcb_component_id:
|
|
1070
|
+
pcb_component_id: z58.string(),
|
|
1060
1071
|
center: point,
|
|
1061
1072
|
width: length,
|
|
1062
1073
|
height: length,
|
|
@@ -1065,13 +1076,13 @@ var pcb_silkscreen_rect = z57.object({
|
|
|
1065
1076
|
expectTypesMatch(true);
|
|
1066
1077
|
|
|
1067
1078
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
1068
|
-
import { z as
|
|
1069
|
-
var pcb_silkscreen_circle =
|
|
1070
|
-
type:
|
|
1079
|
+
import { z as z59 } from "zod";
|
|
1080
|
+
var pcb_silkscreen_circle = z59.object({
|
|
1081
|
+
type: z59.literal("pcb_silkscreen_circle"),
|
|
1071
1082
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
1072
1083
|
"pcb_silkscreen_circle"
|
|
1073
1084
|
),
|
|
1074
|
-
pcb_component_id:
|
|
1085
|
+
pcb_component_id: z59.string(),
|
|
1075
1086
|
center: point,
|
|
1076
1087
|
radius: length,
|
|
1077
1088
|
layer: visible_layer
|
|
@@ -1079,11 +1090,11 @@ var pcb_silkscreen_circle = z58.object({
|
|
|
1079
1090
|
expectTypesMatch(true);
|
|
1080
1091
|
|
|
1081
1092
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
1082
|
-
import { z as
|
|
1083
|
-
var pcb_silkscreen_oval =
|
|
1084
|
-
type:
|
|
1093
|
+
import { z as z60 } from "zod";
|
|
1094
|
+
var pcb_silkscreen_oval = z60.object({
|
|
1095
|
+
type: z60.literal("pcb_silkscreen_oval"),
|
|
1085
1096
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
1086
|
-
pcb_component_id:
|
|
1097
|
+
pcb_component_id: z60.string(),
|
|
1087
1098
|
center: point,
|
|
1088
1099
|
radius_x: distance,
|
|
1089
1100
|
radius_y: distance,
|
|
@@ -1092,106 +1103,106 @@ var pcb_silkscreen_oval = z59.object({
|
|
|
1092
1103
|
expectTypesMatch(true);
|
|
1093
1104
|
|
|
1094
1105
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
1095
|
-
import { z as
|
|
1096
|
-
var pcb_fabrication_note_text =
|
|
1097
|
-
type:
|
|
1106
|
+
import { z as z61 } from "zod";
|
|
1107
|
+
var pcb_fabrication_note_text = z61.object({
|
|
1108
|
+
type: z61.literal("pcb_fabrication_note_text"),
|
|
1098
1109
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
1099
1110
|
"pcb_fabrication_note_text"
|
|
1100
1111
|
),
|
|
1101
|
-
font:
|
|
1112
|
+
font: z61.literal("tscircuit2024").default("tscircuit2024"),
|
|
1102
1113
|
font_size: distance.default("1mm"),
|
|
1103
|
-
pcb_component_id:
|
|
1104
|
-
text:
|
|
1114
|
+
pcb_component_id: z61.string(),
|
|
1115
|
+
text: z61.string(),
|
|
1105
1116
|
layer: visible_layer,
|
|
1106
1117
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1107
|
-
anchor_alignment:
|
|
1108
|
-
color:
|
|
1118
|
+
anchor_alignment: z61.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
1119
|
+
color: z61.string().optional()
|
|
1109
1120
|
}).describe(
|
|
1110
1121
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
1111
1122
|
);
|
|
1112
1123
|
expectTypesMatch(true);
|
|
1113
1124
|
|
|
1114
1125
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
1115
|
-
import { z as
|
|
1116
|
-
var pcb_fabrication_note_path =
|
|
1117
|
-
type:
|
|
1126
|
+
import { z as z62 } from "zod";
|
|
1127
|
+
var pcb_fabrication_note_path = z62.object({
|
|
1128
|
+
type: z62.literal("pcb_fabrication_note_path"),
|
|
1118
1129
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
1119
1130
|
"pcb_fabrication_note_path"
|
|
1120
1131
|
),
|
|
1121
|
-
pcb_component_id:
|
|
1132
|
+
pcb_component_id: z62.string(),
|
|
1122
1133
|
layer: layer_ref,
|
|
1123
|
-
route:
|
|
1134
|
+
route: z62.array(point),
|
|
1124
1135
|
stroke_width: length,
|
|
1125
|
-
color:
|
|
1136
|
+
color: z62.string().optional()
|
|
1126
1137
|
}).describe(
|
|
1127
1138
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
1128
1139
|
);
|
|
1129
1140
|
expectTypesMatch(true);
|
|
1130
1141
|
|
|
1131
1142
|
// src/pcb/pcb_keepout.ts
|
|
1132
|
-
import { z as
|
|
1133
|
-
var pcb_keepout =
|
|
1134
|
-
type:
|
|
1135
|
-
shape:
|
|
1143
|
+
import { z as z63 } from "zod";
|
|
1144
|
+
var pcb_keepout = z63.object({
|
|
1145
|
+
type: z63.literal("pcb_keepout"),
|
|
1146
|
+
shape: z63.literal("rect"),
|
|
1136
1147
|
center: point,
|
|
1137
1148
|
width: distance,
|
|
1138
1149
|
height: distance,
|
|
1139
|
-
pcb_keepout_id:
|
|
1140
|
-
layers:
|
|
1150
|
+
pcb_keepout_id: z63.string(),
|
|
1151
|
+
layers: z63.array(z63.string()),
|
|
1141
1152
|
// Specify layers where the keepout applies
|
|
1142
|
-
description:
|
|
1153
|
+
description: z63.string().optional()
|
|
1143
1154
|
// Optional description of the keepout
|
|
1144
1155
|
}).or(
|
|
1145
|
-
|
|
1146
|
-
type:
|
|
1147
|
-
shape:
|
|
1156
|
+
z63.object({
|
|
1157
|
+
type: z63.literal("pcb_keepout"),
|
|
1158
|
+
shape: z63.literal("circle"),
|
|
1148
1159
|
center: point,
|
|
1149
1160
|
radius: distance,
|
|
1150
|
-
pcb_keepout_id:
|
|
1151
|
-
layers:
|
|
1161
|
+
pcb_keepout_id: z63.string(),
|
|
1162
|
+
layers: z63.array(z63.string()),
|
|
1152
1163
|
// Specify layers where the keepout applies
|
|
1153
|
-
description:
|
|
1164
|
+
description: z63.string().optional()
|
|
1154
1165
|
// Optional description of the keepout
|
|
1155
1166
|
})
|
|
1156
1167
|
);
|
|
1157
1168
|
|
|
1158
1169
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
1159
|
-
import { z as
|
|
1160
|
-
var pcb_missing_footprint_error =
|
|
1161
|
-
type:
|
|
1170
|
+
import { z as z64 } from "zod";
|
|
1171
|
+
var pcb_missing_footprint_error = z64.object({
|
|
1172
|
+
type: z64.literal("pcb_missing_footprint_error"),
|
|
1162
1173
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
1163
1174
|
"pcb_missing_footprint_error"
|
|
1164
1175
|
),
|
|
1165
|
-
error_type:
|
|
1166
|
-
source_component_id:
|
|
1167
|
-
message:
|
|
1176
|
+
error_type: z64.literal("pcb_missing_footprint_error"),
|
|
1177
|
+
source_component_id: z64.string(),
|
|
1178
|
+
message: z64.string()
|
|
1168
1179
|
}).describe("Defines a missing footprint error on the PCB");
|
|
1169
1180
|
expectTypesMatch(
|
|
1170
1181
|
true
|
|
1171
1182
|
);
|
|
1172
1183
|
|
|
1173
1184
|
// 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:
|
|
1185
|
+
import { z as z65 } from "zod";
|
|
1186
|
+
var cad_component = z65.object({
|
|
1187
|
+
type: z65.literal("cad_component"),
|
|
1188
|
+
cad_component_id: z65.string(),
|
|
1189
|
+
pcb_component_id: z65.string(),
|
|
1190
|
+
source_component_id: z65.string(),
|
|
1180
1191
|
position: point3,
|
|
1181
1192
|
rotation: point3.optional(),
|
|
1182
1193
|
size: point3.optional(),
|
|
1183
1194
|
layer: layer_ref.optional(),
|
|
1184
1195
|
// 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:
|
|
1196
|
+
footprinter_string: z65.string().optional(),
|
|
1197
|
+
model_obj_url: z65.string().optional(),
|
|
1198
|
+
model_stl_url: z65.string().optional(),
|
|
1199
|
+
model_3mf_url: z65.string().optional(),
|
|
1200
|
+
model_jscad: z65.any().optional()
|
|
1190
1201
|
}).describe("Defines a component on the PCB");
|
|
1191
1202
|
|
|
1192
1203
|
// src/any_circuit_element.ts
|
|
1193
|
-
import { z as
|
|
1194
|
-
var any_circuit_element =
|
|
1204
|
+
import { z as z66 } from "zod";
|
|
1205
|
+
var any_circuit_element = z66.union([
|
|
1195
1206
|
source_trace,
|
|
1196
1207
|
source_port,
|
|
1197
1208
|
any_source_component,
|
|
@@ -1243,6 +1254,7 @@ var any_circuit_element = z65.union([
|
|
|
1243
1254
|
schematic_error,
|
|
1244
1255
|
schematic_net_label,
|
|
1245
1256
|
schematic_debug_object,
|
|
1257
|
+
schematic_voltage_probe,
|
|
1246
1258
|
cad_component
|
|
1247
1259
|
]);
|
|
1248
1260
|
var any_soup_element = any_circuit_element;
|
|
@@ -1318,6 +1330,7 @@ export {
|
|
|
1318
1330
|
schematic_port,
|
|
1319
1331
|
schematic_text,
|
|
1320
1332
|
schematic_trace,
|
|
1333
|
+
schematic_voltage_probe,
|
|
1321
1334
|
size,
|
|
1322
1335
|
source_component_base,
|
|
1323
1336
|
source_group,
|