circuit-json 0.0.164 → 0.0.165
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 +14 -10
- package/dist/index.mjs +449 -423
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -680,83 +680,109 @@ var schematic_trace = z37.object({
|
|
|
680
680
|
expectTypesMatch(true);
|
|
681
681
|
|
|
682
682
|
// src/schematic/schematic_text.ts
|
|
683
|
+
import { z as z40 } from "zod";
|
|
684
|
+
|
|
685
|
+
// src/common/NinePointAnchor.ts
|
|
683
686
|
import { z as z38 } from "zod";
|
|
684
|
-
var
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
687
|
+
var ninePointAnchor = z38.enum([
|
|
688
|
+
"top_left",
|
|
689
|
+
"top_center",
|
|
690
|
+
"top_right",
|
|
691
|
+
"center_left",
|
|
692
|
+
"center",
|
|
693
|
+
"center_right",
|
|
694
|
+
"bottom_left",
|
|
695
|
+
"bottom_center",
|
|
696
|
+
"bottom_right"
|
|
697
|
+
]);
|
|
698
|
+
|
|
699
|
+
// src/common/FivePointAnchor.ts
|
|
700
|
+
import { z as z39 } from "zod";
|
|
701
|
+
var fivePointAnchor = z39.enum([
|
|
702
|
+
"center",
|
|
703
|
+
"left",
|
|
704
|
+
"right",
|
|
705
|
+
"top",
|
|
706
|
+
"bottom"
|
|
707
|
+
]);
|
|
708
|
+
|
|
709
|
+
// src/schematic/schematic_text.ts
|
|
710
|
+
var schematic_text = z40.object({
|
|
711
|
+
type: z40.literal("schematic_text"),
|
|
712
|
+
schematic_component_id: z40.string(),
|
|
713
|
+
schematic_text_id: z40.string(),
|
|
714
|
+
text: z40.string(),
|
|
715
|
+
position: z40.object({
|
|
690
716
|
x: distance,
|
|
691
717
|
y: distance
|
|
692
718
|
}),
|
|
693
|
-
rotation:
|
|
694
|
-
anchor:
|
|
695
|
-
color:
|
|
719
|
+
rotation: z40.number().default(0),
|
|
720
|
+
anchor: z40.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
|
|
721
|
+
color: z40.string().default("#000000")
|
|
696
722
|
});
|
|
697
723
|
expectTypesMatch(true);
|
|
698
724
|
|
|
699
725
|
// src/schematic/schematic_port.ts
|
|
700
|
-
import { z as
|
|
701
|
-
var schematic_port =
|
|
702
|
-
type:
|
|
703
|
-
schematic_port_id:
|
|
704
|
-
source_port_id:
|
|
705
|
-
schematic_component_id:
|
|
726
|
+
import { z as z41 } from "zod";
|
|
727
|
+
var schematic_port = z41.object({
|
|
728
|
+
type: z41.literal("schematic_port"),
|
|
729
|
+
schematic_port_id: z41.string(),
|
|
730
|
+
source_port_id: z41.string(),
|
|
731
|
+
schematic_component_id: z41.string().optional(),
|
|
706
732
|
center: point,
|
|
707
|
-
facing_direction:
|
|
708
|
-
distance_from_component_edge:
|
|
709
|
-
side_of_component:
|
|
710
|
-
true_ccw_index:
|
|
711
|
-
pin_number:
|
|
712
|
-
display_pin_label:
|
|
733
|
+
facing_direction: z41.enum(["up", "down", "left", "right"]).optional(),
|
|
734
|
+
distance_from_component_edge: z41.number().optional(),
|
|
735
|
+
side_of_component: z41.enum(["top", "bottom", "left", "right"]).optional(),
|
|
736
|
+
true_ccw_index: z41.number().optional(),
|
|
737
|
+
pin_number: z41.number().optional(),
|
|
738
|
+
display_pin_label: z41.string().optional()
|
|
713
739
|
}).describe("Defines a port on a schematic component");
|
|
714
740
|
expectTypesMatch(true);
|
|
715
741
|
|
|
716
742
|
// src/schematic/schematic_net_label.ts
|
|
717
|
-
import { z as
|
|
718
|
-
var schematic_net_label =
|
|
719
|
-
type:
|
|
720
|
-
source_net_id:
|
|
743
|
+
import { z as z42 } from "zod";
|
|
744
|
+
var schematic_net_label = z42.object({
|
|
745
|
+
type: z42.literal("schematic_net_label"),
|
|
746
|
+
source_net_id: z42.string(),
|
|
721
747
|
center: point,
|
|
722
748
|
anchor_position: point.optional(),
|
|
723
|
-
anchor_side:
|
|
724
|
-
text:
|
|
725
|
-
symbol_name:
|
|
749
|
+
anchor_side: z42.enum(["top", "bottom", "left", "right"]),
|
|
750
|
+
text: z42.string(),
|
|
751
|
+
symbol_name: z42.string().optional()
|
|
726
752
|
});
|
|
727
753
|
|
|
728
754
|
// src/schematic/schematic_error.ts
|
|
729
|
-
import { z as
|
|
730
|
-
var schematic_error =
|
|
731
|
-
type:
|
|
732
|
-
schematic_error_id:
|
|
755
|
+
import { z as z43 } from "zod";
|
|
756
|
+
var schematic_error = z43.object({
|
|
757
|
+
type: z43.literal("schematic_error"),
|
|
758
|
+
schematic_error_id: z43.string(),
|
|
733
759
|
// eventually each error type should be broken out into a dir of files
|
|
734
|
-
error_type:
|
|
735
|
-
message:
|
|
760
|
+
error_type: z43.literal("schematic_port_not_found"),
|
|
761
|
+
message: z43.string()
|
|
736
762
|
}).describe("Defines a schematic error on the schematic");
|
|
737
763
|
expectTypesMatch(true);
|
|
738
764
|
|
|
739
765
|
// src/schematic/schematic_debug_object.ts
|
|
740
|
-
import { z as
|
|
741
|
-
var schematic_debug_object_base =
|
|
742
|
-
type:
|
|
743
|
-
label:
|
|
766
|
+
import { z as z44 } from "zod";
|
|
767
|
+
var schematic_debug_object_base = z44.object({
|
|
768
|
+
type: z44.literal("schematic_debug_object"),
|
|
769
|
+
label: z44.string().optional()
|
|
744
770
|
});
|
|
745
771
|
var schematic_debug_rect = schematic_debug_object_base.extend({
|
|
746
|
-
shape:
|
|
772
|
+
shape: z44.literal("rect"),
|
|
747
773
|
center: point,
|
|
748
774
|
size
|
|
749
775
|
});
|
|
750
776
|
var schematic_debug_line = schematic_debug_object_base.extend({
|
|
751
|
-
shape:
|
|
777
|
+
shape: z44.literal("line"),
|
|
752
778
|
start: point,
|
|
753
779
|
end: point
|
|
754
780
|
});
|
|
755
781
|
var schematic_debug_point = schematic_debug_object_base.extend({
|
|
756
|
-
shape:
|
|
782
|
+
shape: z44.literal("point"),
|
|
757
783
|
center: point
|
|
758
784
|
});
|
|
759
|
-
var schematic_debug_object =
|
|
785
|
+
var schematic_debug_object = z44.discriminatedUnion("shape", [
|
|
760
786
|
schematic_debug_rect,
|
|
761
787
|
schematic_debug_line,
|
|
762
788
|
schematic_debug_point
|
|
@@ -764,35 +790,35 @@ var schematic_debug_object = z42.discriminatedUnion("shape", [
|
|
|
764
790
|
expectTypesMatch(true);
|
|
765
791
|
|
|
766
792
|
// src/schematic/schematic_voltage_probe.ts
|
|
767
|
-
import { z as
|
|
768
|
-
var schematic_voltage_probe =
|
|
769
|
-
type:
|
|
770
|
-
schematic_voltage_probe_id:
|
|
793
|
+
import { z as z45 } from "zod";
|
|
794
|
+
var schematic_voltage_probe = z45.object({
|
|
795
|
+
type: z45.literal("schematic_voltage_probe"),
|
|
796
|
+
schematic_voltage_probe_id: z45.string(),
|
|
771
797
|
position: point,
|
|
772
|
-
schematic_trace_id:
|
|
798
|
+
schematic_trace_id: z45.string(),
|
|
773
799
|
voltage: voltage.optional()
|
|
774
800
|
}).describe("Defines a voltage probe measurement point on a schematic trace");
|
|
775
801
|
expectTypesMatch(true);
|
|
776
802
|
|
|
777
803
|
// src/schematic/schematic_manual_edit_conflict_warning.ts
|
|
778
|
-
import { z as
|
|
779
|
-
var schematic_manual_edit_conflict_warning =
|
|
780
|
-
type:
|
|
804
|
+
import { z as z46 } from "zod";
|
|
805
|
+
var schematic_manual_edit_conflict_warning = z46.object({
|
|
806
|
+
type: z46.literal("schematic_manual_edit_conflict_warning"),
|
|
781
807
|
schematic_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
782
808
|
"schematic_manual_edit_conflict_warning"
|
|
783
809
|
),
|
|
784
|
-
message:
|
|
785
|
-
schematic_component_id:
|
|
786
|
-
schematic_group_id:
|
|
787
|
-
subcircuit_id:
|
|
788
|
-
source_component_id:
|
|
810
|
+
message: z46.string(),
|
|
811
|
+
schematic_component_id: z46.string(),
|
|
812
|
+
schematic_group_id: z46.string().optional(),
|
|
813
|
+
subcircuit_id: z46.string().optional(),
|
|
814
|
+
source_component_id: z46.string()
|
|
789
815
|
}).describe(
|
|
790
816
|
"Warning emitted when a component has both manual placement and explicit schX/schY coordinates"
|
|
791
817
|
);
|
|
792
818
|
expectTypesMatch(true);
|
|
793
819
|
|
|
794
820
|
// src/pcb/properties/layer_ref.ts
|
|
795
|
-
import { z as
|
|
821
|
+
import { z as z47 } from "zod";
|
|
796
822
|
var all_layers = [
|
|
797
823
|
"top",
|
|
798
824
|
"bottom",
|
|
@@ -803,9 +829,9 @@ var all_layers = [
|
|
|
803
829
|
"inner5",
|
|
804
830
|
"inner6"
|
|
805
831
|
];
|
|
806
|
-
var layer_string =
|
|
832
|
+
var layer_string = z47.enum(all_layers);
|
|
807
833
|
var layer_ref = layer_string.or(
|
|
808
|
-
|
|
834
|
+
z47.object({
|
|
809
835
|
name: layer_string
|
|
810
836
|
})
|
|
811
837
|
).transform((layer) => {
|
|
@@ -814,52 +840,52 @@ var layer_ref = layer_string.or(
|
|
|
814
840
|
}
|
|
815
841
|
return layer.name;
|
|
816
842
|
});
|
|
817
|
-
var visible_layer =
|
|
843
|
+
var visible_layer = z47.enum(["top", "bottom"]);
|
|
818
844
|
|
|
819
845
|
// src/pcb/properties/pcb_route_hints.ts
|
|
820
|
-
import { z as
|
|
821
|
-
var pcb_route_hint =
|
|
846
|
+
import { z as z48 } from "zod";
|
|
847
|
+
var pcb_route_hint = z48.object({
|
|
822
848
|
x: distance,
|
|
823
849
|
y: distance,
|
|
824
|
-
via:
|
|
850
|
+
via: z48.boolean().optional(),
|
|
825
851
|
via_to_layer: layer_ref.optional()
|
|
826
852
|
});
|
|
827
|
-
var pcb_route_hints =
|
|
853
|
+
var pcb_route_hints = z48.array(pcb_route_hint);
|
|
828
854
|
|
|
829
855
|
// src/pcb/properties/route_hint_point.ts
|
|
830
|
-
import { z as
|
|
831
|
-
var route_hint_point =
|
|
856
|
+
import { z as z49 } from "zod";
|
|
857
|
+
var route_hint_point = z49.object({
|
|
832
858
|
x: distance,
|
|
833
859
|
y: distance,
|
|
834
|
-
via:
|
|
860
|
+
via: z49.boolean().optional(),
|
|
835
861
|
to_layer: layer_ref.optional(),
|
|
836
862
|
trace_width: distance.optional()
|
|
837
863
|
});
|
|
838
864
|
|
|
839
865
|
// src/pcb/pcb_component.ts
|
|
840
|
-
import { z as
|
|
841
|
-
var pcb_component =
|
|
842
|
-
type:
|
|
866
|
+
import { z as z50 } from "zod";
|
|
867
|
+
var pcb_component = z50.object({
|
|
868
|
+
type: z50.literal("pcb_component"),
|
|
843
869
|
pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
|
|
844
|
-
source_component_id:
|
|
870
|
+
source_component_id: z50.string(),
|
|
845
871
|
center: point,
|
|
846
872
|
layer: layer_ref,
|
|
847
873
|
rotation,
|
|
848
874
|
width: length,
|
|
849
875
|
height: length,
|
|
850
|
-
subcircuit_id:
|
|
876
|
+
subcircuit_id: z50.string().optional()
|
|
851
877
|
}).describe("Defines a component on the PCB");
|
|
852
878
|
expectTypesMatch(true);
|
|
853
879
|
|
|
854
880
|
// src/pcb/pcb_hole.ts
|
|
855
|
-
import { z as
|
|
856
|
-
var pcb_hole_circle_or_square =
|
|
857
|
-
type:
|
|
881
|
+
import { z as z51 } from "zod";
|
|
882
|
+
var pcb_hole_circle_or_square = z51.object({
|
|
883
|
+
type: z51.literal("pcb_hole"),
|
|
858
884
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
859
|
-
pcb_group_id:
|
|
860
|
-
subcircuit_id:
|
|
861
|
-
hole_shape:
|
|
862
|
-
hole_diameter:
|
|
885
|
+
pcb_group_id: z51.string().optional(),
|
|
886
|
+
subcircuit_id: z51.string().optional(),
|
|
887
|
+
hole_shape: z51.enum(["circle", "square"]),
|
|
888
|
+
hole_diameter: z51.number(),
|
|
863
889
|
x: distance,
|
|
864
890
|
y: distance
|
|
865
891
|
});
|
|
@@ -867,14 +893,14 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
|
|
|
867
893
|
"Defines a circular or square hole on the PCB"
|
|
868
894
|
);
|
|
869
895
|
expectTypesMatch(true);
|
|
870
|
-
var pcb_hole_oval =
|
|
871
|
-
type:
|
|
896
|
+
var pcb_hole_oval = z51.object({
|
|
897
|
+
type: z51.literal("pcb_hole"),
|
|
872
898
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
873
|
-
pcb_group_id:
|
|
874
|
-
subcircuit_id:
|
|
875
|
-
hole_shape:
|
|
876
|
-
hole_width:
|
|
877
|
-
hole_height:
|
|
899
|
+
pcb_group_id: z51.string().optional(),
|
|
900
|
+
subcircuit_id: z51.string().optional(),
|
|
901
|
+
hole_shape: z51.literal("oval"),
|
|
902
|
+
hole_width: z51.number(),
|
|
903
|
+
hole_height: z51.number(),
|
|
878
904
|
x: distance,
|
|
879
905
|
y: distance
|
|
880
906
|
});
|
|
@@ -885,77 +911,77 @@ expectTypesMatch(true);
|
|
|
885
911
|
var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
|
|
886
912
|
|
|
887
913
|
// src/pcb/pcb_plated_hole.ts
|
|
888
|
-
import { z as
|
|
889
|
-
var pcb_plated_hole_circle =
|
|
890
|
-
type:
|
|
891
|
-
shape:
|
|
892
|
-
pcb_group_id:
|
|
893
|
-
subcircuit_id:
|
|
894
|
-
outer_diameter:
|
|
895
|
-
hole_diameter:
|
|
914
|
+
import { z as z52 } from "zod";
|
|
915
|
+
var pcb_plated_hole_circle = z52.object({
|
|
916
|
+
type: z52.literal("pcb_plated_hole"),
|
|
917
|
+
shape: z52.literal("circle"),
|
|
918
|
+
pcb_group_id: z52.string().optional(),
|
|
919
|
+
subcircuit_id: z52.string().optional(),
|
|
920
|
+
outer_diameter: z52.number(),
|
|
921
|
+
hole_diameter: z52.number(),
|
|
896
922
|
x: distance,
|
|
897
923
|
y: distance,
|
|
898
|
-
layers:
|
|
899
|
-
port_hints:
|
|
900
|
-
pcb_component_id:
|
|
901
|
-
pcb_port_id:
|
|
924
|
+
layers: z52.array(layer_ref),
|
|
925
|
+
port_hints: z52.array(z52.string()).optional(),
|
|
926
|
+
pcb_component_id: z52.string().optional(),
|
|
927
|
+
pcb_port_id: z52.string().optional(),
|
|
902
928
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
903
929
|
});
|
|
904
|
-
var pcb_plated_hole_oval =
|
|
905
|
-
type:
|
|
906
|
-
shape:
|
|
907
|
-
pcb_group_id:
|
|
908
|
-
subcircuit_id:
|
|
909
|
-
outer_width:
|
|
910
|
-
outer_height:
|
|
911
|
-
hole_width:
|
|
912
|
-
hole_height:
|
|
930
|
+
var pcb_plated_hole_oval = z52.object({
|
|
931
|
+
type: z52.literal("pcb_plated_hole"),
|
|
932
|
+
shape: z52.enum(["oval", "pill"]),
|
|
933
|
+
pcb_group_id: z52.string().optional(),
|
|
934
|
+
subcircuit_id: z52.string().optional(),
|
|
935
|
+
outer_width: z52.number(),
|
|
936
|
+
outer_height: z52.number(),
|
|
937
|
+
hole_width: z52.number(),
|
|
938
|
+
hole_height: z52.number(),
|
|
913
939
|
x: distance,
|
|
914
940
|
y: distance,
|
|
915
|
-
layers:
|
|
916
|
-
port_hints:
|
|
917
|
-
pcb_component_id:
|
|
918
|
-
pcb_port_id:
|
|
941
|
+
layers: z52.array(layer_ref),
|
|
942
|
+
port_hints: z52.array(z52.string()).optional(),
|
|
943
|
+
pcb_component_id: z52.string().optional(),
|
|
944
|
+
pcb_port_id: z52.string().optional(),
|
|
919
945
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
920
946
|
});
|
|
921
|
-
var pcb_circular_hole_with_rect_pad =
|
|
922
|
-
type:
|
|
923
|
-
shape:
|
|
924
|
-
pcb_group_id:
|
|
925
|
-
subcircuit_id:
|
|
926
|
-
hole_shape:
|
|
927
|
-
pad_shape:
|
|
928
|
-
hole_diameter:
|
|
929
|
-
rect_pad_width:
|
|
930
|
-
rect_pad_height:
|
|
947
|
+
var pcb_circular_hole_with_rect_pad = z52.object({
|
|
948
|
+
type: z52.literal("pcb_plated_hole"),
|
|
949
|
+
shape: z52.literal("circular_hole_with_rect_pad"),
|
|
950
|
+
pcb_group_id: z52.string().optional(),
|
|
951
|
+
subcircuit_id: z52.string().optional(),
|
|
952
|
+
hole_shape: z52.literal("circle"),
|
|
953
|
+
pad_shape: z52.literal("rect"),
|
|
954
|
+
hole_diameter: z52.number(),
|
|
955
|
+
rect_pad_width: z52.number(),
|
|
956
|
+
rect_pad_height: z52.number(),
|
|
931
957
|
x: distance,
|
|
932
958
|
y: distance,
|
|
933
|
-
layers:
|
|
934
|
-
port_hints:
|
|
935
|
-
pcb_component_id:
|
|
936
|
-
pcb_port_id:
|
|
959
|
+
layers: z52.array(layer_ref),
|
|
960
|
+
port_hints: z52.array(z52.string()).optional(),
|
|
961
|
+
pcb_component_id: z52.string().optional(),
|
|
962
|
+
pcb_port_id: z52.string().optional(),
|
|
937
963
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
938
964
|
});
|
|
939
|
-
var pcb_pill_hole_with_rect_pad =
|
|
940
|
-
type:
|
|
941
|
-
shape:
|
|
942
|
-
pcb_group_id:
|
|
943
|
-
subcircuit_id:
|
|
944
|
-
hole_shape:
|
|
945
|
-
pad_shape:
|
|
946
|
-
hole_width:
|
|
947
|
-
hole_height:
|
|
948
|
-
rect_pad_width:
|
|
949
|
-
rect_pad_height:
|
|
965
|
+
var pcb_pill_hole_with_rect_pad = z52.object({
|
|
966
|
+
type: z52.literal("pcb_plated_hole"),
|
|
967
|
+
shape: z52.literal("pill_hole_with_rect_pad"),
|
|
968
|
+
pcb_group_id: z52.string().optional(),
|
|
969
|
+
subcircuit_id: z52.string().optional(),
|
|
970
|
+
hole_shape: z52.literal("pill"),
|
|
971
|
+
pad_shape: z52.literal("rect"),
|
|
972
|
+
hole_width: z52.number(),
|
|
973
|
+
hole_height: z52.number(),
|
|
974
|
+
rect_pad_width: z52.number(),
|
|
975
|
+
rect_pad_height: z52.number(),
|
|
950
976
|
x: distance,
|
|
951
977
|
y: distance,
|
|
952
|
-
layers:
|
|
953
|
-
port_hints:
|
|
954
|
-
pcb_component_id:
|
|
955
|
-
pcb_port_id:
|
|
978
|
+
layers: z52.array(layer_ref),
|
|
979
|
+
port_hints: z52.array(z52.string()).optional(),
|
|
980
|
+
pcb_component_id: z52.string().optional(),
|
|
981
|
+
pcb_port_id: z52.string().optional(),
|
|
956
982
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
957
983
|
});
|
|
958
|
-
var pcb_plated_hole =
|
|
984
|
+
var pcb_plated_hole = z52.union([
|
|
959
985
|
pcb_plated_hole_circle,
|
|
960
986
|
pcb_plated_hole_oval,
|
|
961
987
|
pcb_circular_hole_with_rect_pad
|
|
@@ -967,84 +993,84 @@ expectTypesMatch(true);
|
|
|
967
993
|
expectTypesMatch(true);
|
|
968
994
|
|
|
969
995
|
// src/pcb/pcb_port.ts
|
|
970
|
-
import { z as
|
|
971
|
-
var pcb_port =
|
|
972
|
-
type:
|
|
996
|
+
import { z as z53 } from "zod";
|
|
997
|
+
var pcb_port = z53.object({
|
|
998
|
+
type: z53.literal("pcb_port"),
|
|
973
999
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
974
|
-
pcb_group_id:
|
|
975
|
-
subcircuit_id:
|
|
976
|
-
source_port_id:
|
|
977
|
-
pcb_component_id:
|
|
1000
|
+
pcb_group_id: z53.string().optional(),
|
|
1001
|
+
subcircuit_id: z53.string().optional(),
|
|
1002
|
+
source_port_id: z53.string(),
|
|
1003
|
+
pcb_component_id: z53.string(),
|
|
978
1004
|
x: distance,
|
|
979
1005
|
y: distance,
|
|
980
|
-
layers:
|
|
1006
|
+
layers: z53.array(layer_ref)
|
|
981
1007
|
}).describe("Defines a port on the PCB");
|
|
982
1008
|
expectTypesMatch(true);
|
|
983
1009
|
|
|
984
1010
|
// src/pcb/pcb_smtpad.ts
|
|
985
|
-
import { z as
|
|
986
|
-
var pcb_smtpad_circle =
|
|
987
|
-
type:
|
|
988
|
-
shape:
|
|
1011
|
+
import { z as z54 } from "zod";
|
|
1012
|
+
var pcb_smtpad_circle = z54.object({
|
|
1013
|
+
type: z54.literal("pcb_smtpad"),
|
|
1014
|
+
shape: z54.literal("circle"),
|
|
989
1015
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
990
|
-
pcb_group_id:
|
|
991
|
-
subcircuit_id:
|
|
1016
|
+
pcb_group_id: z54.string().optional(),
|
|
1017
|
+
subcircuit_id: z54.string().optional(),
|
|
992
1018
|
x: distance,
|
|
993
1019
|
y: distance,
|
|
994
|
-
radius:
|
|
1020
|
+
radius: z54.number(),
|
|
995
1021
|
layer: layer_ref,
|
|
996
|
-
port_hints:
|
|
997
|
-
pcb_component_id:
|
|
998
|
-
pcb_port_id:
|
|
1022
|
+
port_hints: z54.array(z54.string()).optional(),
|
|
1023
|
+
pcb_component_id: z54.string().optional(),
|
|
1024
|
+
pcb_port_id: z54.string().optional()
|
|
999
1025
|
});
|
|
1000
|
-
var pcb_smtpad_rect =
|
|
1001
|
-
type:
|
|
1002
|
-
shape:
|
|
1026
|
+
var pcb_smtpad_rect = z54.object({
|
|
1027
|
+
type: z54.literal("pcb_smtpad"),
|
|
1028
|
+
shape: z54.literal("rect"),
|
|
1003
1029
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1004
|
-
pcb_group_id:
|
|
1005
|
-
subcircuit_id:
|
|
1030
|
+
pcb_group_id: z54.string().optional(),
|
|
1031
|
+
subcircuit_id: z54.string().optional(),
|
|
1006
1032
|
x: distance,
|
|
1007
1033
|
y: distance,
|
|
1008
|
-
width:
|
|
1009
|
-
height:
|
|
1034
|
+
width: z54.number(),
|
|
1035
|
+
height: z54.number(),
|
|
1010
1036
|
layer: layer_ref,
|
|
1011
|
-
port_hints:
|
|
1012
|
-
pcb_component_id:
|
|
1013
|
-
pcb_port_id:
|
|
1037
|
+
port_hints: z54.array(z54.string()).optional(),
|
|
1038
|
+
pcb_component_id: z54.string().optional(),
|
|
1039
|
+
pcb_port_id: z54.string().optional()
|
|
1014
1040
|
});
|
|
1015
|
-
var pcb_smtpad_rotated_rect =
|
|
1016
|
-
type:
|
|
1017
|
-
shape:
|
|
1041
|
+
var pcb_smtpad_rotated_rect = z54.object({
|
|
1042
|
+
type: z54.literal("pcb_smtpad"),
|
|
1043
|
+
shape: z54.literal("rotated_rect"),
|
|
1018
1044
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1019
|
-
pcb_group_id:
|
|
1020
|
-
subcircuit_id:
|
|
1045
|
+
pcb_group_id: z54.string().optional(),
|
|
1046
|
+
subcircuit_id: z54.string().optional(),
|
|
1021
1047
|
x: distance,
|
|
1022
1048
|
y: distance,
|
|
1023
|
-
width:
|
|
1024
|
-
height:
|
|
1049
|
+
width: z54.number(),
|
|
1050
|
+
height: z54.number(),
|
|
1025
1051
|
ccw_rotation: rotation,
|
|
1026
1052
|
layer: layer_ref,
|
|
1027
|
-
port_hints:
|
|
1028
|
-
pcb_component_id:
|
|
1029
|
-
pcb_port_id:
|
|
1053
|
+
port_hints: z54.array(z54.string()).optional(),
|
|
1054
|
+
pcb_component_id: z54.string().optional(),
|
|
1055
|
+
pcb_port_id: z54.string().optional()
|
|
1030
1056
|
});
|
|
1031
|
-
var pcb_smtpad_pill =
|
|
1032
|
-
type:
|
|
1033
|
-
shape:
|
|
1057
|
+
var pcb_smtpad_pill = z54.object({
|
|
1058
|
+
type: z54.literal("pcb_smtpad"),
|
|
1059
|
+
shape: z54.literal("pill"),
|
|
1034
1060
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1035
|
-
pcb_group_id:
|
|
1036
|
-
subcircuit_id:
|
|
1061
|
+
pcb_group_id: z54.string().optional(),
|
|
1062
|
+
subcircuit_id: z54.string().optional(),
|
|
1037
1063
|
x: distance,
|
|
1038
1064
|
y: distance,
|
|
1039
|
-
width:
|
|
1040
|
-
height:
|
|
1041
|
-
radius:
|
|
1065
|
+
width: z54.number(),
|
|
1066
|
+
height: z54.number(),
|
|
1067
|
+
radius: z54.number(),
|
|
1042
1068
|
layer: layer_ref,
|
|
1043
|
-
port_hints:
|
|
1044
|
-
pcb_component_id:
|
|
1045
|
-
pcb_port_id:
|
|
1069
|
+
port_hints: z54.array(z54.string()).optional(),
|
|
1070
|
+
pcb_component_id: z54.string().optional(),
|
|
1071
|
+
pcb_port_id: z54.string().optional()
|
|
1046
1072
|
});
|
|
1047
|
-
var pcb_smtpad =
|
|
1073
|
+
var pcb_smtpad = z54.union([
|
|
1048
1074
|
pcb_smtpad_circle,
|
|
1049
1075
|
pcb_smtpad_rect,
|
|
1050
1076
|
pcb_smtpad_rotated_rect,
|
|
@@ -1056,79 +1082,79 @@ expectTypesMatch(true);
|
|
|
1056
1082
|
expectTypesMatch(true);
|
|
1057
1083
|
|
|
1058
1084
|
// src/pcb/pcb_solder_paste.ts
|
|
1059
|
-
import { z as
|
|
1060
|
-
var pcb_solder_paste_circle =
|
|
1061
|
-
type:
|
|
1062
|
-
shape:
|
|
1085
|
+
import { z as z55 } from "zod";
|
|
1086
|
+
var pcb_solder_paste_circle = z55.object({
|
|
1087
|
+
type: z55.literal("pcb_solder_paste"),
|
|
1088
|
+
shape: z55.literal("circle"),
|
|
1063
1089
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1064
|
-
pcb_group_id:
|
|
1065
|
-
subcircuit_id:
|
|
1090
|
+
pcb_group_id: z55.string().optional(),
|
|
1091
|
+
subcircuit_id: z55.string().optional(),
|
|
1066
1092
|
x: distance,
|
|
1067
1093
|
y: distance,
|
|
1068
|
-
radius:
|
|
1094
|
+
radius: z55.number(),
|
|
1069
1095
|
layer: layer_ref,
|
|
1070
|
-
pcb_component_id:
|
|
1071
|
-
pcb_smtpad_id:
|
|
1096
|
+
pcb_component_id: z55.string().optional(),
|
|
1097
|
+
pcb_smtpad_id: z55.string().optional()
|
|
1072
1098
|
});
|
|
1073
|
-
var pcb_solder_paste_rect =
|
|
1074
|
-
type:
|
|
1075
|
-
shape:
|
|
1099
|
+
var pcb_solder_paste_rect = z55.object({
|
|
1100
|
+
type: z55.literal("pcb_solder_paste"),
|
|
1101
|
+
shape: z55.literal("rect"),
|
|
1076
1102
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1077
|
-
pcb_group_id:
|
|
1078
|
-
subcircuit_id:
|
|
1103
|
+
pcb_group_id: z55.string().optional(),
|
|
1104
|
+
subcircuit_id: z55.string().optional(),
|
|
1079
1105
|
x: distance,
|
|
1080
1106
|
y: distance,
|
|
1081
|
-
width:
|
|
1082
|
-
height:
|
|
1107
|
+
width: z55.number(),
|
|
1108
|
+
height: z55.number(),
|
|
1083
1109
|
layer: layer_ref,
|
|
1084
|
-
pcb_component_id:
|
|
1085
|
-
pcb_smtpad_id:
|
|
1110
|
+
pcb_component_id: z55.string().optional(),
|
|
1111
|
+
pcb_smtpad_id: z55.string().optional()
|
|
1086
1112
|
});
|
|
1087
|
-
var pcb_solder_paste_pill =
|
|
1088
|
-
type:
|
|
1089
|
-
shape:
|
|
1113
|
+
var pcb_solder_paste_pill = z55.object({
|
|
1114
|
+
type: z55.literal("pcb_solder_paste"),
|
|
1115
|
+
shape: z55.literal("pill"),
|
|
1090
1116
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1091
|
-
pcb_group_id:
|
|
1092
|
-
subcircuit_id:
|
|
1117
|
+
pcb_group_id: z55.string().optional(),
|
|
1118
|
+
subcircuit_id: z55.string().optional(),
|
|
1093
1119
|
x: distance,
|
|
1094
1120
|
y: distance,
|
|
1095
|
-
width:
|
|
1096
|
-
height:
|
|
1097
|
-
radius:
|
|
1121
|
+
width: z55.number(),
|
|
1122
|
+
height: z55.number(),
|
|
1123
|
+
radius: z55.number(),
|
|
1098
1124
|
layer: layer_ref,
|
|
1099
|
-
pcb_component_id:
|
|
1100
|
-
pcb_smtpad_id:
|
|
1125
|
+
pcb_component_id: z55.string().optional(),
|
|
1126
|
+
pcb_smtpad_id: z55.string().optional()
|
|
1101
1127
|
});
|
|
1102
|
-
var pcb_solder_paste_rotated_rect =
|
|
1103
|
-
type:
|
|
1104
|
-
shape:
|
|
1128
|
+
var pcb_solder_paste_rotated_rect = z55.object({
|
|
1129
|
+
type: z55.literal("pcb_solder_paste"),
|
|
1130
|
+
shape: z55.literal("rotated_rect"),
|
|
1105
1131
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1106
|
-
pcb_group_id:
|
|
1107
|
-
subcircuit_id:
|
|
1132
|
+
pcb_group_id: z55.string().optional(),
|
|
1133
|
+
subcircuit_id: z55.string().optional(),
|
|
1108
1134
|
x: distance,
|
|
1109
1135
|
y: distance,
|
|
1110
|
-
width:
|
|
1111
|
-
height:
|
|
1136
|
+
width: z55.number(),
|
|
1137
|
+
height: z55.number(),
|
|
1112
1138
|
ccw_rotation: distance,
|
|
1113
1139
|
layer: layer_ref,
|
|
1114
|
-
pcb_component_id:
|
|
1115
|
-
pcb_smtpad_id:
|
|
1140
|
+
pcb_component_id: z55.string().optional(),
|
|
1141
|
+
pcb_smtpad_id: z55.string().optional()
|
|
1116
1142
|
});
|
|
1117
|
-
var pcb_solder_paste_oval =
|
|
1118
|
-
type:
|
|
1119
|
-
shape:
|
|
1143
|
+
var pcb_solder_paste_oval = z55.object({
|
|
1144
|
+
type: z55.literal("pcb_solder_paste"),
|
|
1145
|
+
shape: z55.literal("oval"),
|
|
1120
1146
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1121
|
-
pcb_group_id:
|
|
1122
|
-
subcircuit_id:
|
|
1147
|
+
pcb_group_id: z55.string().optional(),
|
|
1148
|
+
subcircuit_id: z55.string().optional(),
|
|
1123
1149
|
x: distance,
|
|
1124
1150
|
y: distance,
|
|
1125
|
-
width:
|
|
1126
|
-
height:
|
|
1151
|
+
width: z55.number(),
|
|
1152
|
+
height: z55.number(),
|
|
1127
1153
|
layer: layer_ref,
|
|
1128
|
-
pcb_component_id:
|
|
1129
|
-
pcb_smtpad_id:
|
|
1154
|
+
pcb_component_id: z55.string().optional(),
|
|
1155
|
+
pcb_smtpad_id: z55.string().optional()
|
|
1130
1156
|
});
|
|
1131
|
-
var pcb_solder_paste =
|
|
1157
|
+
var pcb_solder_paste = z55.union([
|
|
1132
1158
|
pcb_solder_paste_circle,
|
|
1133
1159
|
pcb_solder_paste_rect,
|
|
1134
1160
|
pcb_solder_paste_pill,
|
|
@@ -1144,95 +1170,95 @@ expectTypesMatch(
|
|
|
1144
1170
|
expectTypesMatch(true);
|
|
1145
1171
|
|
|
1146
1172
|
// src/pcb/pcb_text.ts
|
|
1147
|
-
import { z as
|
|
1148
|
-
var pcb_text =
|
|
1149
|
-
type:
|
|
1173
|
+
import { z as z56 } from "zod";
|
|
1174
|
+
var pcb_text = z56.object({
|
|
1175
|
+
type: z56.literal("pcb_text"),
|
|
1150
1176
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
1151
|
-
pcb_group_id:
|
|
1152
|
-
subcircuit_id:
|
|
1153
|
-
text:
|
|
1177
|
+
pcb_group_id: z56.string().optional(),
|
|
1178
|
+
subcircuit_id: z56.string().optional(),
|
|
1179
|
+
text: z56.string(),
|
|
1154
1180
|
center: point,
|
|
1155
1181
|
layer: layer_ref,
|
|
1156
1182
|
width: length,
|
|
1157
1183
|
height: length,
|
|
1158
|
-
lines:
|
|
1184
|
+
lines: z56.number(),
|
|
1159
1185
|
// @ts-ignore
|
|
1160
|
-
align:
|
|
1186
|
+
align: z56.enum(["bottom-left"])
|
|
1161
1187
|
}).describe("Defines text on the PCB");
|
|
1162
1188
|
expectTypesMatch(true);
|
|
1163
1189
|
|
|
1164
1190
|
// src/pcb/pcb_trace.ts
|
|
1165
|
-
import { z as
|
|
1166
|
-
var pcb_trace_route_point_wire =
|
|
1167
|
-
route_type:
|
|
1191
|
+
import { z as z57 } from "zod";
|
|
1192
|
+
var pcb_trace_route_point_wire = z57.object({
|
|
1193
|
+
route_type: z57.literal("wire"),
|
|
1168
1194
|
x: distance,
|
|
1169
1195
|
y: distance,
|
|
1170
1196
|
width: distance,
|
|
1171
|
-
start_pcb_port_id:
|
|
1172
|
-
end_pcb_port_id:
|
|
1197
|
+
start_pcb_port_id: z57.string().optional(),
|
|
1198
|
+
end_pcb_port_id: z57.string().optional(),
|
|
1173
1199
|
layer: layer_ref
|
|
1174
1200
|
});
|
|
1175
|
-
var pcb_trace_route_point_via =
|
|
1176
|
-
route_type:
|
|
1201
|
+
var pcb_trace_route_point_via = z57.object({
|
|
1202
|
+
route_type: z57.literal("via"),
|
|
1177
1203
|
x: distance,
|
|
1178
1204
|
y: distance,
|
|
1179
1205
|
hole_diameter: distance.optional(),
|
|
1180
1206
|
outer_diameter: distance.optional(),
|
|
1181
|
-
from_layer:
|
|
1182
|
-
to_layer:
|
|
1207
|
+
from_layer: z57.string(),
|
|
1208
|
+
to_layer: z57.string()
|
|
1183
1209
|
});
|
|
1184
|
-
var pcb_trace_route_point =
|
|
1210
|
+
var pcb_trace_route_point = z57.union([
|
|
1185
1211
|
pcb_trace_route_point_wire,
|
|
1186
1212
|
pcb_trace_route_point_via
|
|
1187
1213
|
]);
|
|
1188
|
-
var pcb_trace =
|
|
1189
|
-
type:
|
|
1190
|
-
source_trace_id:
|
|
1191
|
-
pcb_component_id:
|
|
1214
|
+
var pcb_trace = z57.object({
|
|
1215
|
+
type: z57.literal("pcb_trace"),
|
|
1216
|
+
source_trace_id: z57.string().optional(),
|
|
1217
|
+
pcb_component_id: z57.string().optional(),
|
|
1192
1218
|
pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
|
|
1193
|
-
pcb_group_id:
|
|
1194
|
-
subcircuit_id:
|
|
1195
|
-
route_thickness_mode:
|
|
1196
|
-
route_order_index:
|
|
1197
|
-
should_round_corners:
|
|
1198
|
-
trace_length:
|
|
1199
|
-
route:
|
|
1219
|
+
pcb_group_id: z57.string().optional(),
|
|
1220
|
+
subcircuit_id: z57.string().optional(),
|
|
1221
|
+
route_thickness_mode: z57.enum(["constant", "interpolated"]).default("constant").optional(),
|
|
1222
|
+
route_order_index: z57.number().optional(),
|
|
1223
|
+
should_round_corners: z57.boolean().optional(),
|
|
1224
|
+
trace_length: z57.number().optional(),
|
|
1225
|
+
route: z57.array(pcb_trace_route_point)
|
|
1200
1226
|
}).describe("Defines a trace on the PCB");
|
|
1201
1227
|
expectTypesMatch(true);
|
|
1202
1228
|
expectTypesMatch(true);
|
|
1203
1229
|
|
|
1204
1230
|
// src/pcb/pcb_trace_error.ts
|
|
1205
|
-
import { z as
|
|
1206
|
-
var pcb_trace_error =
|
|
1207
|
-
type:
|
|
1231
|
+
import { z as z58 } from "zod";
|
|
1232
|
+
var pcb_trace_error = z58.object({
|
|
1233
|
+
type: z58.literal("pcb_trace_error"),
|
|
1208
1234
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
1209
|
-
error_type:
|
|
1210
|
-
message:
|
|
1235
|
+
error_type: z58.literal("pcb_trace_error"),
|
|
1236
|
+
message: z58.string(),
|
|
1211
1237
|
center: point.optional(),
|
|
1212
|
-
pcb_trace_id:
|
|
1213
|
-
source_trace_id:
|
|
1214
|
-
pcb_component_ids:
|
|
1215
|
-
pcb_port_ids:
|
|
1238
|
+
pcb_trace_id: z58.string(),
|
|
1239
|
+
source_trace_id: z58.string(),
|
|
1240
|
+
pcb_component_ids: z58.array(z58.string()),
|
|
1241
|
+
pcb_port_ids: z58.array(z58.string())
|
|
1216
1242
|
}).describe("Defines a trace error on the PCB");
|
|
1217
1243
|
expectTypesMatch(true);
|
|
1218
1244
|
|
|
1219
1245
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
1220
|
-
import { z as
|
|
1221
|
-
var pcb_port_not_matched_error =
|
|
1222
|
-
type:
|
|
1246
|
+
import { z as z59 } from "zod";
|
|
1247
|
+
var pcb_port_not_matched_error = z59.object({
|
|
1248
|
+
type: z59.literal("pcb_port_not_matched_error"),
|
|
1223
1249
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
1224
|
-
message:
|
|
1225
|
-
pcb_component_ids:
|
|
1250
|
+
message: z59.string(),
|
|
1251
|
+
pcb_component_ids: z59.array(z59.string())
|
|
1226
1252
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
1227
1253
|
expectTypesMatch(true);
|
|
1228
1254
|
|
|
1229
1255
|
// src/pcb/pcb_via.ts
|
|
1230
|
-
import { z as
|
|
1231
|
-
var pcb_via =
|
|
1232
|
-
type:
|
|
1256
|
+
import { z as z60 } from "zod";
|
|
1257
|
+
var pcb_via = z60.object({
|
|
1258
|
+
type: z60.literal("pcb_via"),
|
|
1233
1259
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
1234
|
-
pcb_group_id:
|
|
1235
|
-
subcircuit_id:
|
|
1260
|
+
pcb_group_id: z60.string().optional(),
|
|
1261
|
+
subcircuit_id: z60.string().optional(),
|
|
1236
1262
|
x: distance,
|
|
1237
1263
|
y: distance,
|
|
1238
1264
|
outer_diameter: distance.default("0.6mm"),
|
|
@@ -1241,56 +1267,56 @@ var pcb_via = z58.object({
|
|
|
1241
1267
|
from_layer: layer_ref.optional(),
|
|
1242
1268
|
/** @deprecated */
|
|
1243
1269
|
to_layer: layer_ref.optional(),
|
|
1244
|
-
layers:
|
|
1245
|
-
pcb_trace_id:
|
|
1270
|
+
layers: z60.array(layer_ref),
|
|
1271
|
+
pcb_trace_id: z60.string().optional()
|
|
1246
1272
|
}).describe("Defines a via on the PCB");
|
|
1247
1273
|
expectTypesMatch(true);
|
|
1248
1274
|
|
|
1249
1275
|
// src/pcb/pcb_board.ts
|
|
1250
|
-
import { z as
|
|
1251
|
-
var pcb_board =
|
|
1252
|
-
type:
|
|
1276
|
+
import { z as z61 } from "zod";
|
|
1277
|
+
var pcb_board = z61.object({
|
|
1278
|
+
type: z61.literal("pcb_board"),
|
|
1253
1279
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
1254
|
-
is_subcircuit:
|
|
1255
|
-
subcircuit_id:
|
|
1280
|
+
is_subcircuit: z61.boolean().optional(),
|
|
1281
|
+
subcircuit_id: z61.string().optional(),
|
|
1256
1282
|
width: length,
|
|
1257
1283
|
height: length,
|
|
1258
1284
|
center: point,
|
|
1259
1285
|
thickness: length.optional().default(1.4),
|
|
1260
|
-
num_layers:
|
|
1261
|
-
outline:
|
|
1262
|
-
material:
|
|
1286
|
+
num_layers: z61.number().optional().default(4),
|
|
1287
|
+
outline: z61.array(point).optional(),
|
|
1288
|
+
material: z61.enum(["fr4", "fr1"]).default("fr4")
|
|
1263
1289
|
}).describe("Defines the board outline of the PCB");
|
|
1264
1290
|
expectTypesMatch(true);
|
|
1265
1291
|
|
|
1266
1292
|
// src/pcb/pcb_placement_error.ts
|
|
1267
|
-
import { z as
|
|
1268
|
-
var pcb_placement_error =
|
|
1269
|
-
type:
|
|
1293
|
+
import { z as z62 } from "zod";
|
|
1294
|
+
var pcb_placement_error = z62.object({
|
|
1295
|
+
type: z62.literal("pcb_placement_error"),
|
|
1270
1296
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
1271
|
-
message:
|
|
1297
|
+
message: z62.string()
|
|
1272
1298
|
}).describe("Defines a placement error on the PCB");
|
|
1273
1299
|
expectTypesMatch(true);
|
|
1274
1300
|
|
|
1275
1301
|
// src/pcb/pcb_trace_hint.ts
|
|
1276
|
-
import { z as
|
|
1277
|
-
var pcb_trace_hint =
|
|
1278
|
-
type:
|
|
1302
|
+
import { z as z63 } from "zod";
|
|
1303
|
+
var pcb_trace_hint = z63.object({
|
|
1304
|
+
type: z63.literal("pcb_trace_hint"),
|
|
1279
1305
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
1280
|
-
pcb_port_id:
|
|
1281
|
-
pcb_component_id:
|
|
1282
|
-
route:
|
|
1306
|
+
pcb_port_id: z63.string(),
|
|
1307
|
+
pcb_component_id: z63.string(),
|
|
1308
|
+
route: z63.array(route_hint_point)
|
|
1283
1309
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
1284
1310
|
expectTypesMatch(true);
|
|
1285
1311
|
|
|
1286
1312
|
// src/pcb/pcb_silkscreen_line.ts
|
|
1287
|
-
import { z as
|
|
1288
|
-
var pcb_silkscreen_line =
|
|
1289
|
-
type:
|
|
1313
|
+
import { z as z64 } from "zod";
|
|
1314
|
+
var pcb_silkscreen_line = z64.object({
|
|
1315
|
+
type: z64.literal("pcb_silkscreen_line"),
|
|
1290
1316
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
1291
|
-
pcb_component_id:
|
|
1292
|
-
pcb_group_id:
|
|
1293
|
-
subcircuit_id:
|
|
1317
|
+
pcb_component_id: z64.string(),
|
|
1318
|
+
pcb_group_id: z64.string().optional(),
|
|
1319
|
+
subcircuit_id: z64.string().optional(),
|
|
1294
1320
|
stroke_width: distance.default("0.1mm"),
|
|
1295
1321
|
x1: distance,
|
|
1296
1322
|
y1: distance,
|
|
@@ -1301,46 +1327,46 @@ var pcb_silkscreen_line = z62.object({
|
|
|
1301
1327
|
expectTypesMatch(true);
|
|
1302
1328
|
|
|
1303
1329
|
// src/pcb/pcb_silkscreen_path.ts
|
|
1304
|
-
import { z as
|
|
1305
|
-
var pcb_silkscreen_path =
|
|
1306
|
-
type:
|
|
1330
|
+
import { z as z65 } from "zod";
|
|
1331
|
+
var pcb_silkscreen_path = z65.object({
|
|
1332
|
+
type: z65.literal("pcb_silkscreen_path"),
|
|
1307
1333
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
1308
|
-
pcb_component_id:
|
|
1309
|
-
pcb_group_id:
|
|
1310
|
-
subcircuit_id:
|
|
1334
|
+
pcb_component_id: z65.string(),
|
|
1335
|
+
pcb_group_id: z65.string().optional(),
|
|
1336
|
+
subcircuit_id: z65.string().optional(),
|
|
1311
1337
|
layer: visible_layer,
|
|
1312
|
-
route:
|
|
1338
|
+
route: z65.array(point),
|
|
1313
1339
|
stroke_width: length
|
|
1314
1340
|
}).describe("Defines a silkscreen path on the PCB");
|
|
1315
1341
|
expectTypesMatch(true);
|
|
1316
1342
|
|
|
1317
1343
|
// src/pcb/pcb_silkscreen_text.ts
|
|
1318
|
-
import { z as
|
|
1319
|
-
var pcb_silkscreen_text =
|
|
1320
|
-
type:
|
|
1344
|
+
import { z as z66 } from "zod";
|
|
1345
|
+
var pcb_silkscreen_text = z66.object({
|
|
1346
|
+
type: z66.literal("pcb_silkscreen_text"),
|
|
1321
1347
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
1322
|
-
pcb_group_id:
|
|
1323
|
-
subcircuit_id:
|
|
1324
|
-
font:
|
|
1348
|
+
pcb_group_id: z66.string().optional(),
|
|
1349
|
+
subcircuit_id: z66.string().optional(),
|
|
1350
|
+
font: z66.literal("tscircuit2024").default("tscircuit2024"),
|
|
1325
1351
|
font_size: distance.default("0.2mm"),
|
|
1326
|
-
pcb_component_id:
|
|
1327
|
-
text:
|
|
1328
|
-
ccw_rotation:
|
|
1352
|
+
pcb_component_id: z66.string(),
|
|
1353
|
+
text: z66.string(),
|
|
1354
|
+
ccw_rotation: z66.number().optional(),
|
|
1329
1355
|
layer: layer_ref,
|
|
1330
|
-
is_mirrored:
|
|
1356
|
+
is_mirrored: z66.boolean().default(false).optional(),
|
|
1331
1357
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1332
|
-
anchor_alignment:
|
|
1358
|
+
anchor_alignment: z66.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center")
|
|
1333
1359
|
}).describe("Defines silkscreen text on the PCB");
|
|
1334
1360
|
expectTypesMatch(true);
|
|
1335
1361
|
|
|
1336
1362
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
1337
|
-
import { z as
|
|
1338
|
-
var pcb_silkscreen_rect =
|
|
1339
|
-
type:
|
|
1363
|
+
import { z as z67 } from "zod";
|
|
1364
|
+
var pcb_silkscreen_rect = z67.object({
|
|
1365
|
+
type: z67.literal("pcb_silkscreen_rect"),
|
|
1340
1366
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
1341
|
-
pcb_component_id:
|
|
1342
|
-
pcb_group_id:
|
|
1343
|
-
subcircuit_id:
|
|
1367
|
+
pcb_component_id: z67.string(),
|
|
1368
|
+
pcb_group_id: z67.string().optional(),
|
|
1369
|
+
subcircuit_id: z67.string().optional(),
|
|
1344
1370
|
center: point,
|
|
1345
1371
|
width: length,
|
|
1346
1372
|
height: length,
|
|
@@ -1350,15 +1376,15 @@ var pcb_silkscreen_rect = z65.object({
|
|
|
1350
1376
|
expectTypesMatch(true);
|
|
1351
1377
|
|
|
1352
1378
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
1353
|
-
import { z as
|
|
1354
|
-
var pcb_silkscreen_circle =
|
|
1355
|
-
type:
|
|
1379
|
+
import { z as z68 } from "zod";
|
|
1380
|
+
var pcb_silkscreen_circle = z68.object({
|
|
1381
|
+
type: z68.literal("pcb_silkscreen_circle"),
|
|
1356
1382
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
1357
1383
|
"pcb_silkscreen_circle"
|
|
1358
1384
|
),
|
|
1359
|
-
pcb_component_id:
|
|
1360
|
-
pcb_group_id:
|
|
1361
|
-
subcircuit_id:
|
|
1385
|
+
pcb_component_id: z68.string(),
|
|
1386
|
+
pcb_group_id: z68.string().optional(),
|
|
1387
|
+
subcircuit_id: z68.string().optional(),
|
|
1362
1388
|
center: point,
|
|
1363
1389
|
radius: length,
|
|
1364
1390
|
layer: visible_layer,
|
|
@@ -1367,13 +1393,13 @@ var pcb_silkscreen_circle = z66.object({
|
|
|
1367
1393
|
expectTypesMatch(true);
|
|
1368
1394
|
|
|
1369
1395
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
1370
|
-
import { z as
|
|
1371
|
-
var pcb_silkscreen_oval =
|
|
1372
|
-
type:
|
|
1396
|
+
import { z as z69 } from "zod";
|
|
1397
|
+
var pcb_silkscreen_oval = z69.object({
|
|
1398
|
+
type: z69.literal("pcb_silkscreen_oval"),
|
|
1373
1399
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
1374
|
-
pcb_component_id:
|
|
1375
|
-
pcb_group_id:
|
|
1376
|
-
subcircuit_id:
|
|
1400
|
+
pcb_component_id: z69.string(),
|
|
1401
|
+
pcb_group_id: z69.string().optional(),
|
|
1402
|
+
subcircuit_id: z69.string().optional(),
|
|
1377
1403
|
center: point,
|
|
1378
1404
|
radius_x: distance,
|
|
1379
1405
|
radius_y: distance,
|
|
@@ -1382,158 +1408,158 @@ var pcb_silkscreen_oval = z67.object({
|
|
|
1382
1408
|
expectTypesMatch(true);
|
|
1383
1409
|
|
|
1384
1410
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
1385
|
-
import { z as
|
|
1386
|
-
var pcb_fabrication_note_text =
|
|
1387
|
-
type:
|
|
1411
|
+
import { z as z70 } from "zod";
|
|
1412
|
+
var pcb_fabrication_note_text = z70.object({
|
|
1413
|
+
type: z70.literal("pcb_fabrication_note_text"),
|
|
1388
1414
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
1389
1415
|
"pcb_fabrication_note_text"
|
|
1390
1416
|
),
|
|
1391
|
-
subcircuit_id:
|
|
1392
|
-
pcb_group_id:
|
|
1393
|
-
font:
|
|
1417
|
+
subcircuit_id: z70.string().optional(),
|
|
1418
|
+
pcb_group_id: z70.string().optional(),
|
|
1419
|
+
font: z70.literal("tscircuit2024").default("tscircuit2024"),
|
|
1394
1420
|
font_size: distance.default("1mm"),
|
|
1395
|
-
pcb_component_id:
|
|
1396
|
-
text:
|
|
1421
|
+
pcb_component_id: z70.string(),
|
|
1422
|
+
text: z70.string(),
|
|
1397
1423
|
layer: visible_layer,
|
|
1398
1424
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1399
|
-
anchor_alignment:
|
|
1400
|
-
color:
|
|
1425
|
+
anchor_alignment: z70.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
1426
|
+
color: z70.string().optional()
|
|
1401
1427
|
}).describe(
|
|
1402
1428
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
1403
1429
|
);
|
|
1404
1430
|
expectTypesMatch(true);
|
|
1405
1431
|
|
|
1406
1432
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
1407
|
-
import { z as
|
|
1408
|
-
var pcb_fabrication_note_path =
|
|
1409
|
-
type:
|
|
1433
|
+
import { z as z71 } from "zod";
|
|
1434
|
+
var pcb_fabrication_note_path = z71.object({
|
|
1435
|
+
type: z71.literal("pcb_fabrication_note_path"),
|
|
1410
1436
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
1411
1437
|
"pcb_fabrication_note_path"
|
|
1412
1438
|
),
|
|
1413
|
-
pcb_component_id:
|
|
1414
|
-
subcircuit_id:
|
|
1439
|
+
pcb_component_id: z71.string(),
|
|
1440
|
+
subcircuit_id: z71.string().optional(),
|
|
1415
1441
|
layer: layer_ref,
|
|
1416
|
-
route:
|
|
1442
|
+
route: z71.array(point),
|
|
1417
1443
|
stroke_width: length,
|
|
1418
|
-
color:
|
|
1444
|
+
color: z71.string().optional()
|
|
1419
1445
|
}).describe(
|
|
1420
1446
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
1421
1447
|
);
|
|
1422
1448
|
expectTypesMatch(true);
|
|
1423
1449
|
|
|
1424
1450
|
// src/pcb/pcb_keepout.ts
|
|
1425
|
-
import { z as
|
|
1426
|
-
var pcb_keepout =
|
|
1427
|
-
type:
|
|
1428
|
-
shape:
|
|
1429
|
-
pcb_group_id:
|
|
1430
|
-
subcircuit_id:
|
|
1451
|
+
import { z as z72 } from "zod";
|
|
1452
|
+
var pcb_keepout = z72.object({
|
|
1453
|
+
type: z72.literal("pcb_keepout"),
|
|
1454
|
+
shape: z72.literal("rect"),
|
|
1455
|
+
pcb_group_id: z72.string().optional(),
|
|
1456
|
+
subcircuit_id: z72.string().optional(),
|
|
1431
1457
|
center: point,
|
|
1432
1458
|
width: distance,
|
|
1433
1459
|
height: distance,
|
|
1434
|
-
pcb_keepout_id:
|
|
1435
|
-
layers:
|
|
1460
|
+
pcb_keepout_id: z72.string(),
|
|
1461
|
+
layers: z72.array(z72.string()),
|
|
1436
1462
|
// Specify layers where the keepout applies
|
|
1437
|
-
description:
|
|
1463
|
+
description: z72.string().optional()
|
|
1438
1464
|
// Optional description of the keepout
|
|
1439
1465
|
}).or(
|
|
1440
|
-
|
|
1441
|
-
type:
|
|
1442
|
-
shape:
|
|
1443
|
-
pcb_group_id:
|
|
1444
|
-
subcircuit_id:
|
|
1466
|
+
z72.object({
|
|
1467
|
+
type: z72.literal("pcb_keepout"),
|
|
1468
|
+
shape: z72.literal("circle"),
|
|
1469
|
+
pcb_group_id: z72.string().optional(),
|
|
1470
|
+
subcircuit_id: z72.string().optional(),
|
|
1445
1471
|
center: point,
|
|
1446
1472
|
radius: distance,
|
|
1447
|
-
pcb_keepout_id:
|
|
1448
|
-
layers:
|
|
1473
|
+
pcb_keepout_id: z72.string(),
|
|
1474
|
+
layers: z72.array(z72.string()),
|
|
1449
1475
|
// Specify layers where the keepout applies
|
|
1450
|
-
description:
|
|
1476
|
+
description: z72.string().optional()
|
|
1451
1477
|
// Optional description of the keepout
|
|
1452
1478
|
})
|
|
1453
1479
|
);
|
|
1454
1480
|
|
|
1455
1481
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
1456
|
-
import { z as
|
|
1457
|
-
var pcb_missing_footprint_error =
|
|
1458
|
-
type:
|
|
1482
|
+
import { z as z73 } from "zod";
|
|
1483
|
+
var pcb_missing_footprint_error = z73.object({
|
|
1484
|
+
type: z73.literal("pcb_missing_footprint_error"),
|
|
1459
1485
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
1460
1486
|
"pcb_missing_footprint_error"
|
|
1461
1487
|
),
|
|
1462
|
-
pcb_group_id:
|
|
1463
|
-
subcircuit_id:
|
|
1464
|
-
error_type:
|
|
1465
|
-
source_component_id:
|
|
1466
|
-
message:
|
|
1488
|
+
pcb_group_id: z73.string().optional(),
|
|
1489
|
+
subcircuit_id: z73.string().optional(),
|
|
1490
|
+
error_type: z73.literal("pcb_missing_footprint_error"),
|
|
1491
|
+
source_component_id: z73.string(),
|
|
1492
|
+
message: z73.string()
|
|
1467
1493
|
}).describe("Defines a missing footprint error on the PCB");
|
|
1468
1494
|
expectTypesMatch(
|
|
1469
1495
|
true
|
|
1470
1496
|
);
|
|
1471
1497
|
|
|
1472
1498
|
// src/pcb/pcb_group.ts
|
|
1473
|
-
import { z as
|
|
1474
|
-
var pcb_group =
|
|
1475
|
-
type:
|
|
1499
|
+
import { z as z74 } from "zod";
|
|
1500
|
+
var pcb_group = z74.object({
|
|
1501
|
+
type: z74.literal("pcb_group"),
|
|
1476
1502
|
pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
|
|
1477
|
-
source_group_id:
|
|
1478
|
-
is_subcircuit:
|
|
1479
|
-
subcircuit_id:
|
|
1503
|
+
source_group_id: z74.string(),
|
|
1504
|
+
is_subcircuit: z74.boolean().optional(),
|
|
1505
|
+
subcircuit_id: z74.string().optional(),
|
|
1480
1506
|
width: length,
|
|
1481
1507
|
height: length,
|
|
1482
1508
|
center: point,
|
|
1483
|
-
pcb_component_ids:
|
|
1484
|
-
name:
|
|
1485
|
-
description:
|
|
1509
|
+
pcb_component_ids: z74.array(z74.string()),
|
|
1510
|
+
name: z74.string().optional(),
|
|
1511
|
+
description: z74.string().optional()
|
|
1486
1512
|
}).describe("Defines a group of components on the PCB");
|
|
1487
1513
|
expectTypesMatch(true);
|
|
1488
1514
|
|
|
1489
1515
|
// src/pcb/pcb_autorouting_error.ts
|
|
1490
|
-
import { z as
|
|
1491
|
-
var pcb_autorouting_error =
|
|
1492
|
-
type:
|
|
1516
|
+
import { z as z75 } from "zod";
|
|
1517
|
+
var pcb_autorouting_error = z75.object({
|
|
1518
|
+
type: z75.literal("pcb_autorouting_error"),
|
|
1493
1519
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
|
|
1494
|
-
message:
|
|
1520
|
+
message: z75.string()
|
|
1495
1521
|
}).describe("The autorouting has failed to route a portion of the board");
|
|
1496
1522
|
expectTypesMatch(true);
|
|
1497
1523
|
|
|
1498
1524
|
// src/pcb/pcb_manual_edit_conflict_warning.ts
|
|
1499
|
-
import { z as
|
|
1500
|
-
var pcb_manual_edit_conflict_warning =
|
|
1501
|
-
type:
|
|
1525
|
+
import { z as z76 } from "zod";
|
|
1526
|
+
var pcb_manual_edit_conflict_warning = z76.object({
|
|
1527
|
+
type: z76.literal("pcb_manual_edit_conflict_warning"),
|
|
1502
1528
|
pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
1503
1529
|
"pcb_manual_edit_conflict_warning"
|
|
1504
1530
|
),
|
|
1505
|
-
message:
|
|
1506
|
-
pcb_component_id:
|
|
1507
|
-
pcb_group_id:
|
|
1508
|
-
subcircuit_id:
|
|
1509
|
-
source_component_id:
|
|
1531
|
+
message: z76.string(),
|
|
1532
|
+
pcb_component_id: z76.string(),
|
|
1533
|
+
pcb_group_id: z76.string().optional(),
|
|
1534
|
+
subcircuit_id: z76.string().optional(),
|
|
1535
|
+
source_component_id: z76.string()
|
|
1510
1536
|
}).describe(
|
|
1511
1537
|
"Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
|
|
1512
1538
|
);
|
|
1513
1539
|
expectTypesMatch(true);
|
|
1514
1540
|
|
|
1515
1541
|
// src/cad/cad_component.ts
|
|
1516
|
-
import { z as
|
|
1517
|
-
var cad_component =
|
|
1518
|
-
type:
|
|
1519
|
-
cad_component_id:
|
|
1520
|
-
pcb_component_id:
|
|
1521
|
-
source_component_id:
|
|
1542
|
+
import { z as z77 } from "zod";
|
|
1543
|
+
var cad_component = z77.object({
|
|
1544
|
+
type: z77.literal("cad_component"),
|
|
1545
|
+
cad_component_id: z77.string(),
|
|
1546
|
+
pcb_component_id: z77.string(),
|
|
1547
|
+
source_component_id: z77.string(),
|
|
1522
1548
|
position: point3,
|
|
1523
1549
|
rotation: point3.optional(),
|
|
1524
1550
|
size: point3.optional(),
|
|
1525
1551
|
layer: layer_ref.optional(),
|
|
1526
1552
|
// These are all ways to generate/load the 3d model
|
|
1527
|
-
footprinter_string:
|
|
1528
|
-
model_obj_url:
|
|
1529
|
-
model_stl_url:
|
|
1530
|
-
model_3mf_url:
|
|
1531
|
-
model_jscad:
|
|
1553
|
+
footprinter_string: z77.string().optional(),
|
|
1554
|
+
model_obj_url: z77.string().optional(),
|
|
1555
|
+
model_stl_url: z77.string().optional(),
|
|
1556
|
+
model_3mf_url: z77.string().optional(),
|
|
1557
|
+
model_jscad: z77.any().optional()
|
|
1532
1558
|
}).describe("Defines a component on the PCB");
|
|
1533
1559
|
|
|
1534
1560
|
// src/any_circuit_element.ts
|
|
1535
|
-
import { z as
|
|
1536
|
-
var any_circuit_element =
|
|
1561
|
+
import { z as z78 } from "zod";
|
|
1562
|
+
var any_circuit_element = z78.union([
|
|
1537
1563
|
source_trace,
|
|
1538
1564
|
source_port,
|
|
1539
1565
|
any_source_component,
|