circuit-json 0.0.193 → 0.0.194
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -0
- package/dist/index.d.mts +65 -1
- package/dist/index.mjs +426 -411
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -817,27 +817,40 @@ var schematic_error = z46.object({
|
|
|
817
817
|
}).describe("Defines a schematic error on the schematic");
|
|
818
818
|
expectTypesMatch(true);
|
|
819
819
|
|
|
820
|
-
// src/schematic/
|
|
820
|
+
// src/schematic/schematic_layout_error.ts
|
|
821
821
|
import { z as z47 } from "zod";
|
|
822
|
-
var
|
|
823
|
-
type: z47.literal("
|
|
824
|
-
|
|
822
|
+
var schematic_layout_error = z47.object({
|
|
823
|
+
type: z47.literal("schematic_layout_error"),
|
|
824
|
+
schematic_layout_error_id: getZodPrefixedIdWithDefault(
|
|
825
|
+
"schematic_layout_error"
|
|
826
|
+
),
|
|
827
|
+
message: z47.string(),
|
|
828
|
+
source_group_id: z47.string(),
|
|
829
|
+
schematic_group_id: z47.string()
|
|
830
|
+
}).describe("Error emitted when schematic layout fails for a group");
|
|
831
|
+
expectTypesMatch(true);
|
|
832
|
+
|
|
833
|
+
// src/schematic/schematic_debug_object.ts
|
|
834
|
+
import { z as z48 } from "zod";
|
|
835
|
+
var schematic_debug_object_base = z48.object({
|
|
836
|
+
type: z48.literal("schematic_debug_object"),
|
|
837
|
+
label: z48.string().optional()
|
|
825
838
|
});
|
|
826
839
|
var schematic_debug_rect = schematic_debug_object_base.extend({
|
|
827
|
-
shape:
|
|
840
|
+
shape: z48.literal("rect"),
|
|
828
841
|
center: point,
|
|
829
842
|
size
|
|
830
843
|
});
|
|
831
844
|
var schematic_debug_line = schematic_debug_object_base.extend({
|
|
832
|
-
shape:
|
|
845
|
+
shape: z48.literal("line"),
|
|
833
846
|
start: point,
|
|
834
847
|
end: point
|
|
835
848
|
});
|
|
836
849
|
var schematic_debug_point = schematic_debug_object_base.extend({
|
|
837
|
-
shape:
|
|
850
|
+
shape: z48.literal("point"),
|
|
838
851
|
center: point
|
|
839
852
|
});
|
|
840
|
-
var schematic_debug_object =
|
|
853
|
+
var schematic_debug_object = z48.discriminatedUnion("shape", [
|
|
841
854
|
schematic_debug_rect,
|
|
842
855
|
schematic_debug_line,
|
|
843
856
|
schematic_debug_point
|
|
@@ -845,52 +858,52 @@ var schematic_debug_object = z47.discriminatedUnion("shape", [
|
|
|
845
858
|
expectTypesMatch(true);
|
|
846
859
|
|
|
847
860
|
// src/schematic/schematic_voltage_probe.ts
|
|
848
|
-
import { z as
|
|
849
|
-
var schematic_voltage_probe =
|
|
850
|
-
type:
|
|
851
|
-
schematic_voltage_probe_id:
|
|
861
|
+
import { z as z49 } from "zod";
|
|
862
|
+
var schematic_voltage_probe = z49.object({
|
|
863
|
+
type: z49.literal("schematic_voltage_probe"),
|
|
864
|
+
schematic_voltage_probe_id: z49.string(),
|
|
852
865
|
position: point,
|
|
853
|
-
schematic_trace_id:
|
|
866
|
+
schematic_trace_id: z49.string(),
|
|
854
867
|
voltage: voltage.optional()
|
|
855
868
|
}).describe("Defines a voltage probe measurement point on a schematic trace");
|
|
856
869
|
expectTypesMatch(true);
|
|
857
870
|
|
|
858
871
|
// src/schematic/schematic_manual_edit_conflict_warning.ts
|
|
859
|
-
import { z as
|
|
860
|
-
var schematic_manual_edit_conflict_warning =
|
|
861
|
-
type:
|
|
872
|
+
import { z as z50 } from "zod";
|
|
873
|
+
var schematic_manual_edit_conflict_warning = z50.object({
|
|
874
|
+
type: z50.literal("schematic_manual_edit_conflict_warning"),
|
|
862
875
|
schematic_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
863
876
|
"schematic_manual_edit_conflict_warning"
|
|
864
877
|
),
|
|
865
|
-
message:
|
|
866
|
-
schematic_component_id:
|
|
867
|
-
schematic_group_id:
|
|
868
|
-
subcircuit_id:
|
|
869
|
-
source_component_id:
|
|
878
|
+
message: z50.string(),
|
|
879
|
+
schematic_component_id: z50.string(),
|
|
880
|
+
schematic_group_id: z50.string().optional(),
|
|
881
|
+
subcircuit_id: z50.string().optional(),
|
|
882
|
+
source_component_id: z50.string()
|
|
870
883
|
}).describe(
|
|
871
884
|
"Warning emitted when a component has both manual placement and explicit schX/schY coordinates"
|
|
872
885
|
);
|
|
873
886
|
expectTypesMatch(true);
|
|
874
887
|
|
|
875
888
|
// src/schematic/schematic_group.ts
|
|
876
|
-
import { z as
|
|
877
|
-
var schematic_group =
|
|
878
|
-
type:
|
|
889
|
+
import { z as z51 } from "zod";
|
|
890
|
+
var schematic_group = z51.object({
|
|
891
|
+
type: z51.literal("schematic_group"),
|
|
879
892
|
schematic_group_id: getZodPrefixedIdWithDefault("schematic_group"),
|
|
880
|
-
source_group_id:
|
|
881
|
-
is_subcircuit:
|
|
882
|
-
subcircuit_id:
|
|
893
|
+
source_group_id: z51.string(),
|
|
894
|
+
is_subcircuit: z51.boolean().optional(),
|
|
895
|
+
subcircuit_id: z51.string().optional(),
|
|
883
896
|
width: length,
|
|
884
897
|
height: length,
|
|
885
898
|
center: point,
|
|
886
|
-
schematic_component_ids:
|
|
887
|
-
name:
|
|
888
|
-
description:
|
|
899
|
+
schematic_component_ids: z51.array(z51.string()),
|
|
900
|
+
name: z51.string().optional(),
|
|
901
|
+
description: z51.string().optional()
|
|
889
902
|
}).describe("Defines a group of components on the schematic");
|
|
890
903
|
expectTypesMatch(true);
|
|
891
904
|
|
|
892
905
|
// src/pcb/properties/layer_ref.ts
|
|
893
|
-
import { z as
|
|
906
|
+
import { z as z52 } from "zod";
|
|
894
907
|
var all_layers = [
|
|
895
908
|
"top",
|
|
896
909
|
"bottom",
|
|
@@ -901,9 +914,9 @@ var all_layers = [
|
|
|
901
914
|
"inner5",
|
|
902
915
|
"inner6"
|
|
903
916
|
];
|
|
904
|
-
var layer_string =
|
|
917
|
+
var layer_string = z52.enum(all_layers);
|
|
905
918
|
var layer_ref = layer_string.or(
|
|
906
|
-
|
|
919
|
+
z52.object({
|
|
907
920
|
name: layer_string
|
|
908
921
|
})
|
|
909
922
|
).transform((layer) => {
|
|
@@ -912,53 +925,53 @@ var layer_ref = layer_string.or(
|
|
|
912
925
|
}
|
|
913
926
|
return layer.name;
|
|
914
927
|
});
|
|
915
|
-
var visible_layer =
|
|
928
|
+
var visible_layer = z52.enum(["top", "bottom"]);
|
|
916
929
|
|
|
917
930
|
// src/pcb/properties/pcb_route_hints.ts
|
|
918
|
-
import { z as
|
|
919
|
-
var pcb_route_hint =
|
|
931
|
+
import { z as z53 } from "zod";
|
|
932
|
+
var pcb_route_hint = z53.object({
|
|
920
933
|
x: distance,
|
|
921
934
|
y: distance,
|
|
922
|
-
via:
|
|
935
|
+
via: z53.boolean().optional(),
|
|
923
936
|
via_to_layer: layer_ref.optional()
|
|
924
937
|
});
|
|
925
|
-
var pcb_route_hints =
|
|
938
|
+
var pcb_route_hints = z53.array(pcb_route_hint);
|
|
926
939
|
|
|
927
940
|
// src/pcb/properties/route_hint_point.ts
|
|
928
|
-
import { z as
|
|
929
|
-
var route_hint_point =
|
|
941
|
+
import { z as z54 } from "zod";
|
|
942
|
+
var route_hint_point = z54.object({
|
|
930
943
|
x: distance,
|
|
931
944
|
y: distance,
|
|
932
|
-
via:
|
|
945
|
+
via: z54.boolean().optional(),
|
|
933
946
|
to_layer: layer_ref.optional(),
|
|
934
947
|
trace_width: distance.optional()
|
|
935
948
|
});
|
|
936
949
|
|
|
937
950
|
// src/pcb/pcb_component.ts
|
|
938
|
-
import { z as
|
|
939
|
-
var pcb_component =
|
|
940
|
-
type:
|
|
951
|
+
import { z as z55 } from "zod";
|
|
952
|
+
var pcb_component = z55.object({
|
|
953
|
+
type: z55.literal("pcb_component"),
|
|
941
954
|
pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
|
|
942
|
-
source_component_id:
|
|
955
|
+
source_component_id: z55.string(),
|
|
943
956
|
center: point,
|
|
944
957
|
layer: layer_ref,
|
|
945
958
|
rotation,
|
|
946
959
|
width: length,
|
|
947
960
|
height: length,
|
|
948
|
-
subcircuit_id:
|
|
949
|
-
pcb_group_id:
|
|
961
|
+
subcircuit_id: z55.string().optional(),
|
|
962
|
+
pcb_group_id: z55.string().optional()
|
|
950
963
|
}).describe("Defines a component on the PCB");
|
|
951
964
|
expectTypesMatch(true);
|
|
952
965
|
|
|
953
966
|
// src/pcb/pcb_hole.ts
|
|
954
|
-
import { z as
|
|
955
|
-
var pcb_hole_circle_or_square =
|
|
956
|
-
type:
|
|
967
|
+
import { z as z56 } from "zod";
|
|
968
|
+
var pcb_hole_circle_or_square = z56.object({
|
|
969
|
+
type: z56.literal("pcb_hole"),
|
|
957
970
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
958
|
-
pcb_group_id:
|
|
959
|
-
subcircuit_id:
|
|
960
|
-
hole_shape:
|
|
961
|
-
hole_diameter:
|
|
971
|
+
pcb_group_id: z56.string().optional(),
|
|
972
|
+
subcircuit_id: z56.string().optional(),
|
|
973
|
+
hole_shape: z56.enum(["circle", "square"]),
|
|
974
|
+
hole_diameter: z56.number(),
|
|
962
975
|
x: distance,
|
|
963
976
|
y: distance
|
|
964
977
|
});
|
|
@@ -966,14 +979,14 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
|
|
|
966
979
|
"Defines a circular or square hole on the PCB"
|
|
967
980
|
);
|
|
968
981
|
expectTypesMatch(true);
|
|
969
|
-
var pcb_hole_oval =
|
|
970
|
-
type:
|
|
982
|
+
var pcb_hole_oval = z56.object({
|
|
983
|
+
type: z56.literal("pcb_hole"),
|
|
971
984
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
972
|
-
pcb_group_id:
|
|
973
|
-
subcircuit_id:
|
|
974
|
-
hole_shape:
|
|
975
|
-
hole_width:
|
|
976
|
-
hole_height:
|
|
985
|
+
pcb_group_id: z56.string().optional(),
|
|
986
|
+
subcircuit_id: z56.string().optional(),
|
|
987
|
+
hole_shape: z56.literal("oval"),
|
|
988
|
+
hole_width: z56.number(),
|
|
989
|
+
hole_height: z56.number(),
|
|
977
990
|
x: distance,
|
|
978
991
|
y: distance
|
|
979
992
|
});
|
|
@@ -984,77 +997,77 @@ expectTypesMatch(true);
|
|
|
984
997
|
var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
|
|
985
998
|
|
|
986
999
|
// src/pcb/pcb_plated_hole.ts
|
|
987
|
-
import { z as
|
|
988
|
-
var pcb_plated_hole_circle =
|
|
989
|
-
type:
|
|
990
|
-
shape:
|
|
991
|
-
pcb_group_id:
|
|
992
|
-
subcircuit_id:
|
|
993
|
-
outer_diameter:
|
|
994
|
-
hole_diameter:
|
|
1000
|
+
import { z as z57 } from "zod";
|
|
1001
|
+
var pcb_plated_hole_circle = z57.object({
|
|
1002
|
+
type: z57.literal("pcb_plated_hole"),
|
|
1003
|
+
shape: z57.literal("circle"),
|
|
1004
|
+
pcb_group_id: z57.string().optional(),
|
|
1005
|
+
subcircuit_id: z57.string().optional(),
|
|
1006
|
+
outer_diameter: z57.number(),
|
|
1007
|
+
hole_diameter: z57.number(),
|
|
995
1008
|
x: distance,
|
|
996
1009
|
y: distance,
|
|
997
|
-
layers:
|
|
998
|
-
port_hints:
|
|
999
|
-
pcb_component_id:
|
|
1000
|
-
pcb_port_id:
|
|
1010
|
+
layers: z57.array(layer_ref),
|
|
1011
|
+
port_hints: z57.array(z57.string()).optional(),
|
|
1012
|
+
pcb_component_id: z57.string().optional(),
|
|
1013
|
+
pcb_port_id: z57.string().optional(),
|
|
1001
1014
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1002
1015
|
});
|
|
1003
|
-
var pcb_plated_hole_oval =
|
|
1004
|
-
type:
|
|
1005
|
-
shape:
|
|
1006
|
-
pcb_group_id:
|
|
1007
|
-
subcircuit_id:
|
|
1008
|
-
outer_width:
|
|
1009
|
-
outer_height:
|
|
1010
|
-
hole_width:
|
|
1011
|
-
hole_height:
|
|
1016
|
+
var pcb_plated_hole_oval = z57.object({
|
|
1017
|
+
type: z57.literal("pcb_plated_hole"),
|
|
1018
|
+
shape: z57.enum(["oval", "pill"]),
|
|
1019
|
+
pcb_group_id: z57.string().optional(),
|
|
1020
|
+
subcircuit_id: z57.string().optional(),
|
|
1021
|
+
outer_width: z57.number(),
|
|
1022
|
+
outer_height: z57.number(),
|
|
1023
|
+
hole_width: z57.number(),
|
|
1024
|
+
hole_height: z57.number(),
|
|
1012
1025
|
x: distance,
|
|
1013
1026
|
y: distance,
|
|
1014
|
-
layers:
|
|
1015
|
-
port_hints:
|
|
1016
|
-
pcb_component_id:
|
|
1017
|
-
pcb_port_id:
|
|
1027
|
+
layers: z57.array(layer_ref),
|
|
1028
|
+
port_hints: z57.array(z57.string()).optional(),
|
|
1029
|
+
pcb_component_id: z57.string().optional(),
|
|
1030
|
+
pcb_port_id: z57.string().optional(),
|
|
1018
1031
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1019
1032
|
});
|
|
1020
|
-
var pcb_circular_hole_with_rect_pad =
|
|
1021
|
-
type:
|
|
1022
|
-
shape:
|
|
1023
|
-
pcb_group_id:
|
|
1024
|
-
subcircuit_id:
|
|
1025
|
-
hole_shape:
|
|
1026
|
-
pad_shape:
|
|
1027
|
-
hole_diameter:
|
|
1028
|
-
rect_pad_width:
|
|
1029
|
-
rect_pad_height:
|
|
1033
|
+
var pcb_circular_hole_with_rect_pad = z57.object({
|
|
1034
|
+
type: z57.literal("pcb_plated_hole"),
|
|
1035
|
+
shape: z57.literal("circular_hole_with_rect_pad"),
|
|
1036
|
+
pcb_group_id: z57.string().optional(),
|
|
1037
|
+
subcircuit_id: z57.string().optional(),
|
|
1038
|
+
hole_shape: z57.literal("circle"),
|
|
1039
|
+
pad_shape: z57.literal("rect"),
|
|
1040
|
+
hole_diameter: z57.number(),
|
|
1041
|
+
rect_pad_width: z57.number(),
|
|
1042
|
+
rect_pad_height: z57.number(),
|
|
1030
1043
|
x: distance,
|
|
1031
1044
|
y: distance,
|
|
1032
|
-
layers:
|
|
1033
|
-
port_hints:
|
|
1034
|
-
pcb_component_id:
|
|
1035
|
-
pcb_port_id:
|
|
1045
|
+
layers: z57.array(layer_ref),
|
|
1046
|
+
port_hints: z57.array(z57.string()).optional(),
|
|
1047
|
+
pcb_component_id: z57.string().optional(),
|
|
1048
|
+
pcb_port_id: z57.string().optional(),
|
|
1036
1049
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1037
1050
|
});
|
|
1038
|
-
var pcb_pill_hole_with_rect_pad =
|
|
1039
|
-
type:
|
|
1040
|
-
shape:
|
|
1041
|
-
pcb_group_id:
|
|
1042
|
-
subcircuit_id:
|
|
1043
|
-
hole_shape:
|
|
1044
|
-
pad_shape:
|
|
1045
|
-
hole_width:
|
|
1046
|
-
hole_height:
|
|
1047
|
-
rect_pad_width:
|
|
1048
|
-
rect_pad_height:
|
|
1051
|
+
var pcb_pill_hole_with_rect_pad = z57.object({
|
|
1052
|
+
type: z57.literal("pcb_plated_hole"),
|
|
1053
|
+
shape: z57.literal("pill_hole_with_rect_pad"),
|
|
1054
|
+
pcb_group_id: z57.string().optional(),
|
|
1055
|
+
subcircuit_id: z57.string().optional(),
|
|
1056
|
+
hole_shape: z57.literal("pill"),
|
|
1057
|
+
pad_shape: z57.literal("rect"),
|
|
1058
|
+
hole_width: z57.number(),
|
|
1059
|
+
hole_height: z57.number(),
|
|
1060
|
+
rect_pad_width: z57.number(),
|
|
1061
|
+
rect_pad_height: z57.number(),
|
|
1049
1062
|
x: distance,
|
|
1050
1063
|
y: distance,
|
|
1051
|
-
layers:
|
|
1052
|
-
port_hints:
|
|
1053
|
-
pcb_component_id:
|
|
1054
|
-
pcb_port_id:
|
|
1064
|
+
layers: z57.array(layer_ref),
|
|
1065
|
+
port_hints: z57.array(z57.string()).optional(),
|
|
1066
|
+
pcb_component_id: z57.string().optional(),
|
|
1067
|
+
pcb_port_id: z57.string().optional(),
|
|
1055
1068
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1056
1069
|
});
|
|
1057
|
-
var pcb_plated_hole =
|
|
1070
|
+
var pcb_plated_hole = z57.union([
|
|
1058
1071
|
pcb_plated_hole_circle,
|
|
1059
1072
|
pcb_plated_hole_oval,
|
|
1060
1073
|
pcb_circular_hole_with_rect_pad,
|
|
@@ -1068,84 +1081,84 @@ expectTypesMatch(true);
|
|
|
1068
1081
|
expectTypesMatch(true);
|
|
1069
1082
|
|
|
1070
1083
|
// src/pcb/pcb_port.ts
|
|
1071
|
-
import { z as
|
|
1072
|
-
var pcb_port =
|
|
1073
|
-
type:
|
|
1084
|
+
import { z as z58 } from "zod";
|
|
1085
|
+
var pcb_port = z58.object({
|
|
1086
|
+
type: z58.literal("pcb_port"),
|
|
1074
1087
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
1075
|
-
pcb_group_id:
|
|
1076
|
-
subcircuit_id:
|
|
1077
|
-
source_port_id:
|
|
1078
|
-
pcb_component_id:
|
|
1088
|
+
pcb_group_id: z58.string().optional(),
|
|
1089
|
+
subcircuit_id: z58.string().optional(),
|
|
1090
|
+
source_port_id: z58.string(),
|
|
1091
|
+
pcb_component_id: z58.string(),
|
|
1079
1092
|
x: distance,
|
|
1080
1093
|
y: distance,
|
|
1081
|
-
layers:
|
|
1094
|
+
layers: z58.array(layer_ref)
|
|
1082
1095
|
}).describe("Defines a port on the PCB");
|
|
1083
1096
|
expectTypesMatch(true);
|
|
1084
1097
|
|
|
1085
1098
|
// src/pcb/pcb_smtpad.ts
|
|
1086
|
-
import { z as
|
|
1087
|
-
var pcb_smtpad_circle =
|
|
1088
|
-
type:
|
|
1089
|
-
shape:
|
|
1099
|
+
import { z as z59 } from "zod";
|
|
1100
|
+
var pcb_smtpad_circle = z59.object({
|
|
1101
|
+
type: z59.literal("pcb_smtpad"),
|
|
1102
|
+
shape: z59.literal("circle"),
|
|
1090
1103
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1091
|
-
pcb_group_id:
|
|
1092
|
-
subcircuit_id:
|
|
1104
|
+
pcb_group_id: z59.string().optional(),
|
|
1105
|
+
subcircuit_id: z59.string().optional(),
|
|
1093
1106
|
x: distance,
|
|
1094
1107
|
y: distance,
|
|
1095
|
-
radius:
|
|
1108
|
+
radius: z59.number(),
|
|
1096
1109
|
layer: layer_ref,
|
|
1097
|
-
port_hints:
|
|
1098
|
-
pcb_component_id:
|
|
1099
|
-
pcb_port_id:
|
|
1110
|
+
port_hints: z59.array(z59.string()).optional(),
|
|
1111
|
+
pcb_component_id: z59.string().optional(),
|
|
1112
|
+
pcb_port_id: z59.string().optional()
|
|
1100
1113
|
});
|
|
1101
|
-
var pcb_smtpad_rect =
|
|
1102
|
-
type:
|
|
1103
|
-
shape:
|
|
1114
|
+
var pcb_smtpad_rect = z59.object({
|
|
1115
|
+
type: z59.literal("pcb_smtpad"),
|
|
1116
|
+
shape: z59.literal("rect"),
|
|
1104
1117
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1105
|
-
pcb_group_id:
|
|
1106
|
-
subcircuit_id:
|
|
1118
|
+
pcb_group_id: z59.string().optional(),
|
|
1119
|
+
subcircuit_id: z59.string().optional(),
|
|
1107
1120
|
x: distance,
|
|
1108
1121
|
y: distance,
|
|
1109
|
-
width:
|
|
1110
|
-
height:
|
|
1122
|
+
width: z59.number(),
|
|
1123
|
+
height: z59.number(),
|
|
1111
1124
|
layer: layer_ref,
|
|
1112
|
-
port_hints:
|
|
1113
|
-
pcb_component_id:
|
|
1114
|
-
pcb_port_id:
|
|
1125
|
+
port_hints: z59.array(z59.string()).optional(),
|
|
1126
|
+
pcb_component_id: z59.string().optional(),
|
|
1127
|
+
pcb_port_id: z59.string().optional()
|
|
1115
1128
|
});
|
|
1116
|
-
var pcb_smtpad_rotated_rect =
|
|
1117
|
-
type:
|
|
1118
|
-
shape:
|
|
1129
|
+
var pcb_smtpad_rotated_rect = z59.object({
|
|
1130
|
+
type: z59.literal("pcb_smtpad"),
|
|
1131
|
+
shape: z59.literal("rotated_rect"),
|
|
1119
1132
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1120
|
-
pcb_group_id:
|
|
1121
|
-
subcircuit_id:
|
|
1133
|
+
pcb_group_id: z59.string().optional(),
|
|
1134
|
+
subcircuit_id: z59.string().optional(),
|
|
1122
1135
|
x: distance,
|
|
1123
1136
|
y: distance,
|
|
1124
|
-
width:
|
|
1125
|
-
height:
|
|
1137
|
+
width: z59.number(),
|
|
1138
|
+
height: z59.number(),
|
|
1126
1139
|
ccw_rotation: rotation,
|
|
1127
1140
|
layer: layer_ref,
|
|
1128
|
-
port_hints:
|
|
1129
|
-
pcb_component_id:
|
|
1130
|
-
pcb_port_id:
|
|
1141
|
+
port_hints: z59.array(z59.string()).optional(),
|
|
1142
|
+
pcb_component_id: z59.string().optional(),
|
|
1143
|
+
pcb_port_id: z59.string().optional()
|
|
1131
1144
|
});
|
|
1132
|
-
var pcb_smtpad_pill =
|
|
1133
|
-
type:
|
|
1134
|
-
shape:
|
|
1145
|
+
var pcb_smtpad_pill = z59.object({
|
|
1146
|
+
type: z59.literal("pcb_smtpad"),
|
|
1147
|
+
shape: z59.literal("pill"),
|
|
1135
1148
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1136
|
-
pcb_group_id:
|
|
1137
|
-
subcircuit_id:
|
|
1149
|
+
pcb_group_id: z59.string().optional(),
|
|
1150
|
+
subcircuit_id: z59.string().optional(),
|
|
1138
1151
|
x: distance,
|
|
1139
1152
|
y: distance,
|
|
1140
|
-
width:
|
|
1141
|
-
height:
|
|
1142
|
-
radius:
|
|
1153
|
+
width: z59.number(),
|
|
1154
|
+
height: z59.number(),
|
|
1155
|
+
radius: z59.number(),
|
|
1143
1156
|
layer: layer_ref,
|
|
1144
|
-
port_hints:
|
|
1145
|
-
pcb_component_id:
|
|
1146
|
-
pcb_port_id:
|
|
1157
|
+
port_hints: z59.array(z59.string()).optional(),
|
|
1158
|
+
pcb_component_id: z59.string().optional(),
|
|
1159
|
+
pcb_port_id: z59.string().optional()
|
|
1147
1160
|
});
|
|
1148
|
-
var pcb_smtpad =
|
|
1161
|
+
var pcb_smtpad = z59.union([
|
|
1149
1162
|
pcb_smtpad_circle,
|
|
1150
1163
|
pcb_smtpad_rect,
|
|
1151
1164
|
pcb_smtpad_rotated_rect,
|
|
@@ -1157,79 +1170,79 @@ expectTypesMatch(true);
|
|
|
1157
1170
|
expectTypesMatch(true);
|
|
1158
1171
|
|
|
1159
1172
|
// src/pcb/pcb_solder_paste.ts
|
|
1160
|
-
import { z as
|
|
1161
|
-
var pcb_solder_paste_circle =
|
|
1162
|
-
type:
|
|
1163
|
-
shape:
|
|
1173
|
+
import { z as z60 } from "zod";
|
|
1174
|
+
var pcb_solder_paste_circle = z60.object({
|
|
1175
|
+
type: z60.literal("pcb_solder_paste"),
|
|
1176
|
+
shape: z60.literal("circle"),
|
|
1164
1177
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1165
|
-
pcb_group_id:
|
|
1166
|
-
subcircuit_id:
|
|
1178
|
+
pcb_group_id: z60.string().optional(),
|
|
1179
|
+
subcircuit_id: z60.string().optional(),
|
|
1167
1180
|
x: distance,
|
|
1168
1181
|
y: distance,
|
|
1169
|
-
radius:
|
|
1182
|
+
radius: z60.number(),
|
|
1170
1183
|
layer: layer_ref,
|
|
1171
|
-
pcb_component_id:
|
|
1172
|
-
pcb_smtpad_id:
|
|
1184
|
+
pcb_component_id: z60.string().optional(),
|
|
1185
|
+
pcb_smtpad_id: z60.string().optional()
|
|
1173
1186
|
});
|
|
1174
|
-
var pcb_solder_paste_rect =
|
|
1175
|
-
type:
|
|
1176
|
-
shape:
|
|
1187
|
+
var pcb_solder_paste_rect = z60.object({
|
|
1188
|
+
type: z60.literal("pcb_solder_paste"),
|
|
1189
|
+
shape: z60.literal("rect"),
|
|
1177
1190
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1178
|
-
pcb_group_id:
|
|
1179
|
-
subcircuit_id:
|
|
1191
|
+
pcb_group_id: z60.string().optional(),
|
|
1192
|
+
subcircuit_id: z60.string().optional(),
|
|
1180
1193
|
x: distance,
|
|
1181
1194
|
y: distance,
|
|
1182
|
-
width:
|
|
1183
|
-
height:
|
|
1195
|
+
width: z60.number(),
|
|
1196
|
+
height: z60.number(),
|
|
1184
1197
|
layer: layer_ref,
|
|
1185
|
-
pcb_component_id:
|
|
1186
|
-
pcb_smtpad_id:
|
|
1198
|
+
pcb_component_id: z60.string().optional(),
|
|
1199
|
+
pcb_smtpad_id: z60.string().optional()
|
|
1187
1200
|
});
|
|
1188
|
-
var pcb_solder_paste_pill =
|
|
1189
|
-
type:
|
|
1190
|
-
shape:
|
|
1201
|
+
var pcb_solder_paste_pill = z60.object({
|
|
1202
|
+
type: z60.literal("pcb_solder_paste"),
|
|
1203
|
+
shape: z60.literal("pill"),
|
|
1191
1204
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1192
|
-
pcb_group_id:
|
|
1193
|
-
subcircuit_id:
|
|
1205
|
+
pcb_group_id: z60.string().optional(),
|
|
1206
|
+
subcircuit_id: z60.string().optional(),
|
|
1194
1207
|
x: distance,
|
|
1195
1208
|
y: distance,
|
|
1196
|
-
width:
|
|
1197
|
-
height:
|
|
1198
|
-
radius:
|
|
1209
|
+
width: z60.number(),
|
|
1210
|
+
height: z60.number(),
|
|
1211
|
+
radius: z60.number(),
|
|
1199
1212
|
layer: layer_ref,
|
|
1200
|
-
pcb_component_id:
|
|
1201
|
-
pcb_smtpad_id:
|
|
1213
|
+
pcb_component_id: z60.string().optional(),
|
|
1214
|
+
pcb_smtpad_id: z60.string().optional()
|
|
1202
1215
|
});
|
|
1203
|
-
var pcb_solder_paste_rotated_rect =
|
|
1204
|
-
type:
|
|
1205
|
-
shape:
|
|
1216
|
+
var pcb_solder_paste_rotated_rect = z60.object({
|
|
1217
|
+
type: z60.literal("pcb_solder_paste"),
|
|
1218
|
+
shape: z60.literal("rotated_rect"),
|
|
1206
1219
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1207
|
-
pcb_group_id:
|
|
1208
|
-
subcircuit_id:
|
|
1220
|
+
pcb_group_id: z60.string().optional(),
|
|
1221
|
+
subcircuit_id: z60.string().optional(),
|
|
1209
1222
|
x: distance,
|
|
1210
1223
|
y: distance,
|
|
1211
|
-
width:
|
|
1212
|
-
height:
|
|
1224
|
+
width: z60.number(),
|
|
1225
|
+
height: z60.number(),
|
|
1213
1226
|
ccw_rotation: distance,
|
|
1214
1227
|
layer: layer_ref,
|
|
1215
|
-
pcb_component_id:
|
|
1216
|
-
pcb_smtpad_id:
|
|
1228
|
+
pcb_component_id: z60.string().optional(),
|
|
1229
|
+
pcb_smtpad_id: z60.string().optional()
|
|
1217
1230
|
});
|
|
1218
|
-
var pcb_solder_paste_oval =
|
|
1219
|
-
type:
|
|
1220
|
-
shape:
|
|
1231
|
+
var pcb_solder_paste_oval = z60.object({
|
|
1232
|
+
type: z60.literal("pcb_solder_paste"),
|
|
1233
|
+
shape: z60.literal("oval"),
|
|
1221
1234
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1222
|
-
pcb_group_id:
|
|
1223
|
-
subcircuit_id:
|
|
1235
|
+
pcb_group_id: z60.string().optional(),
|
|
1236
|
+
subcircuit_id: z60.string().optional(),
|
|
1224
1237
|
x: distance,
|
|
1225
1238
|
y: distance,
|
|
1226
|
-
width:
|
|
1227
|
-
height:
|
|
1239
|
+
width: z60.number(),
|
|
1240
|
+
height: z60.number(),
|
|
1228
1241
|
layer: layer_ref,
|
|
1229
|
-
pcb_component_id:
|
|
1230
|
-
pcb_smtpad_id:
|
|
1242
|
+
pcb_component_id: z60.string().optional(),
|
|
1243
|
+
pcb_smtpad_id: z60.string().optional()
|
|
1231
1244
|
});
|
|
1232
|
-
var pcb_solder_paste =
|
|
1245
|
+
var pcb_solder_paste = z60.union([
|
|
1233
1246
|
pcb_solder_paste_circle,
|
|
1234
1247
|
pcb_solder_paste_rect,
|
|
1235
1248
|
pcb_solder_paste_pill,
|
|
@@ -1245,95 +1258,95 @@ expectTypesMatch(
|
|
|
1245
1258
|
expectTypesMatch(true);
|
|
1246
1259
|
|
|
1247
1260
|
// src/pcb/pcb_text.ts
|
|
1248
|
-
import { z as
|
|
1249
|
-
var pcb_text =
|
|
1250
|
-
type:
|
|
1261
|
+
import { z as z61 } from "zod";
|
|
1262
|
+
var pcb_text = z61.object({
|
|
1263
|
+
type: z61.literal("pcb_text"),
|
|
1251
1264
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
1252
|
-
pcb_group_id:
|
|
1253
|
-
subcircuit_id:
|
|
1254
|
-
text:
|
|
1265
|
+
pcb_group_id: z61.string().optional(),
|
|
1266
|
+
subcircuit_id: z61.string().optional(),
|
|
1267
|
+
text: z61.string(),
|
|
1255
1268
|
center: point,
|
|
1256
1269
|
layer: layer_ref,
|
|
1257
1270
|
width: length,
|
|
1258
1271
|
height: length,
|
|
1259
|
-
lines:
|
|
1272
|
+
lines: z61.number(),
|
|
1260
1273
|
// @ts-ignore
|
|
1261
|
-
align:
|
|
1274
|
+
align: z61.enum(["bottom-left"])
|
|
1262
1275
|
}).describe("Defines text on the PCB");
|
|
1263
1276
|
expectTypesMatch(true);
|
|
1264
1277
|
|
|
1265
1278
|
// src/pcb/pcb_trace.ts
|
|
1266
|
-
import { z as
|
|
1267
|
-
var pcb_trace_route_point_wire =
|
|
1268
|
-
route_type:
|
|
1279
|
+
import { z as z62 } from "zod";
|
|
1280
|
+
var pcb_trace_route_point_wire = z62.object({
|
|
1281
|
+
route_type: z62.literal("wire"),
|
|
1269
1282
|
x: distance,
|
|
1270
1283
|
y: distance,
|
|
1271
1284
|
width: distance,
|
|
1272
|
-
start_pcb_port_id:
|
|
1273
|
-
end_pcb_port_id:
|
|
1285
|
+
start_pcb_port_id: z62.string().optional(),
|
|
1286
|
+
end_pcb_port_id: z62.string().optional(),
|
|
1274
1287
|
layer: layer_ref
|
|
1275
1288
|
});
|
|
1276
|
-
var pcb_trace_route_point_via =
|
|
1277
|
-
route_type:
|
|
1289
|
+
var pcb_trace_route_point_via = z62.object({
|
|
1290
|
+
route_type: z62.literal("via"),
|
|
1278
1291
|
x: distance,
|
|
1279
1292
|
y: distance,
|
|
1280
1293
|
hole_diameter: distance.optional(),
|
|
1281
1294
|
outer_diameter: distance.optional(),
|
|
1282
|
-
from_layer:
|
|
1283
|
-
to_layer:
|
|
1295
|
+
from_layer: z62.string(),
|
|
1296
|
+
to_layer: z62.string()
|
|
1284
1297
|
});
|
|
1285
|
-
var pcb_trace_route_point =
|
|
1298
|
+
var pcb_trace_route_point = z62.union([
|
|
1286
1299
|
pcb_trace_route_point_wire,
|
|
1287
1300
|
pcb_trace_route_point_via
|
|
1288
1301
|
]);
|
|
1289
|
-
var pcb_trace =
|
|
1290
|
-
type:
|
|
1291
|
-
source_trace_id:
|
|
1292
|
-
pcb_component_id:
|
|
1302
|
+
var pcb_trace = z62.object({
|
|
1303
|
+
type: z62.literal("pcb_trace"),
|
|
1304
|
+
source_trace_id: z62.string().optional(),
|
|
1305
|
+
pcb_component_id: z62.string().optional(),
|
|
1293
1306
|
pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
|
|
1294
|
-
pcb_group_id:
|
|
1295
|
-
subcircuit_id:
|
|
1296
|
-
route_thickness_mode:
|
|
1297
|
-
route_order_index:
|
|
1298
|
-
should_round_corners:
|
|
1299
|
-
trace_length:
|
|
1300
|
-
route:
|
|
1307
|
+
pcb_group_id: z62.string().optional(),
|
|
1308
|
+
subcircuit_id: z62.string().optional(),
|
|
1309
|
+
route_thickness_mode: z62.enum(["constant", "interpolated"]).default("constant").optional(),
|
|
1310
|
+
route_order_index: z62.number().optional(),
|
|
1311
|
+
should_round_corners: z62.boolean().optional(),
|
|
1312
|
+
trace_length: z62.number().optional(),
|
|
1313
|
+
route: z62.array(pcb_trace_route_point)
|
|
1301
1314
|
}).describe("Defines a trace on the PCB");
|
|
1302
1315
|
expectTypesMatch(true);
|
|
1303
1316
|
expectTypesMatch(true);
|
|
1304
1317
|
|
|
1305
1318
|
// src/pcb/pcb_trace_error.ts
|
|
1306
|
-
import { z as
|
|
1307
|
-
var pcb_trace_error =
|
|
1308
|
-
type:
|
|
1319
|
+
import { z as z63 } from "zod";
|
|
1320
|
+
var pcb_trace_error = z63.object({
|
|
1321
|
+
type: z63.literal("pcb_trace_error"),
|
|
1309
1322
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
1310
|
-
error_type:
|
|
1311
|
-
message:
|
|
1323
|
+
error_type: z63.literal("pcb_trace_error"),
|
|
1324
|
+
message: z63.string(),
|
|
1312
1325
|
center: point.optional(),
|
|
1313
|
-
pcb_trace_id:
|
|
1314
|
-
source_trace_id:
|
|
1315
|
-
pcb_component_ids:
|
|
1316
|
-
pcb_port_ids:
|
|
1326
|
+
pcb_trace_id: z63.string(),
|
|
1327
|
+
source_trace_id: z63.string(),
|
|
1328
|
+
pcb_component_ids: z63.array(z63.string()),
|
|
1329
|
+
pcb_port_ids: z63.array(z63.string())
|
|
1317
1330
|
}).describe("Defines a trace error on the PCB");
|
|
1318
1331
|
expectTypesMatch(true);
|
|
1319
1332
|
|
|
1320
1333
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
1321
|
-
import { z as
|
|
1322
|
-
var pcb_port_not_matched_error =
|
|
1323
|
-
type:
|
|
1334
|
+
import { z as z64 } from "zod";
|
|
1335
|
+
var pcb_port_not_matched_error = z64.object({
|
|
1336
|
+
type: z64.literal("pcb_port_not_matched_error"),
|
|
1324
1337
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
1325
|
-
message:
|
|
1326
|
-
pcb_component_ids:
|
|
1338
|
+
message: z64.string(),
|
|
1339
|
+
pcb_component_ids: z64.array(z64.string())
|
|
1327
1340
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
1328
1341
|
expectTypesMatch(true);
|
|
1329
1342
|
|
|
1330
1343
|
// src/pcb/pcb_via.ts
|
|
1331
|
-
import { z as
|
|
1332
|
-
var pcb_via =
|
|
1333
|
-
type:
|
|
1344
|
+
import { z as z65 } from "zod";
|
|
1345
|
+
var pcb_via = z65.object({
|
|
1346
|
+
type: z65.literal("pcb_via"),
|
|
1334
1347
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
1335
|
-
pcb_group_id:
|
|
1336
|
-
subcircuit_id:
|
|
1348
|
+
pcb_group_id: z65.string().optional(),
|
|
1349
|
+
subcircuit_id: z65.string().optional(),
|
|
1337
1350
|
x: distance,
|
|
1338
1351
|
y: distance,
|
|
1339
1352
|
outer_diameter: distance.default("0.6mm"),
|
|
@@ -1342,56 +1355,56 @@ var pcb_via = z64.object({
|
|
|
1342
1355
|
from_layer: layer_ref.optional(),
|
|
1343
1356
|
/** @deprecated */
|
|
1344
1357
|
to_layer: layer_ref.optional(),
|
|
1345
|
-
layers:
|
|
1346
|
-
pcb_trace_id:
|
|
1358
|
+
layers: z65.array(layer_ref),
|
|
1359
|
+
pcb_trace_id: z65.string().optional()
|
|
1347
1360
|
}).describe("Defines a via on the PCB");
|
|
1348
1361
|
expectTypesMatch(true);
|
|
1349
1362
|
|
|
1350
1363
|
// src/pcb/pcb_board.ts
|
|
1351
|
-
import { z as
|
|
1352
|
-
var pcb_board =
|
|
1353
|
-
type:
|
|
1364
|
+
import { z as z66 } from "zod";
|
|
1365
|
+
var pcb_board = z66.object({
|
|
1366
|
+
type: z66.literal("pcb_board"),
|
|
1354
1367
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
1355
|
-
is_subcircuit:
|
|
1356
|
-
subcircuit_id:
|
|
1368
|
+
is_subcircuit: z66.boolean().optional(),
|
|
1369
|
+
subcircuit_id: z66.string().optional(),
|
|
1357
1370
|
width: length,
|
|
1358
1371
|
height: length,
|
|
1359
1372
|
center: point,
|
|
1360
1373
|
thickness: length.optional().default(1.4),
|
|
1361
|
-
num_layers:
|
|
1362
|
-
outline:
|
|
1363
|
-
material:
|
|
1374
|
+
num_layers: z66.number().optional().default(4),
|
|
1375
|
+
outline: z66.array(point).optional(),
|
|
1376
|
+
material: z66.enum(["fr4", "fr1"]).default("fr4")
|
|
1364
1377
|
}).describe("Defines the board outline of the PCB");
|
|
1365
1378
|
expectTypesMatch(true);
|
|
1366
1379
|
|
|
1367
1380
|
// src/pcb/pcb_placement_error.ts
|
|
1368
|
-
import { z as
|
|
1369
|
-
var pcb_placement_error =
|
|
1370
|
-
type:
|
|
1381
|
+
import { z as z67 } from "zod";
|
|
1382
|
+
var pcb_placement_error = z67.object({
|
|
1383
|
+
type: z67.literal("pcb_placement_error"),
|
|
1371
1384
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
1372
|
-
message:
|
|
1385
|
+
message: z67.string()
|
|
1373
1386
|
}).describe("Defines a placement error on the PCB");
|
|
1374
1387
|
expectTypesMatch(true);
|
|
1375
1388
|
|
|
1376
1389
|
// src/pcb/pcb_trace_hint.ts
|
|
1377
|
-
import { z as
|
|
1378
|
-
var pcb_trace_hint =
|
|
1379
|
-
type:
|
|
1390
|
+
import { z as z68 } from "zod";
|
|
1391
|
+
var pcb_trace_hint = z68.object({
|
|
1392
|
+
type: z68.literal("pcb_trace_hint"),
|
|
1380
1393
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
1381
|
-
pcb_port_id:
|
|
1382
|
-
pcb_component_id:
|
|
1383
|
-
route:
|
|
1394
|
+
pcb_port_id: z68.string(),
|
|
1395
|
+
pcb_component_id: z68.string(),
|
|
1396
|
+
route: z68.array(route_hint_point)
|
|
1384
1397
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
1385
1398
|
expectTypesMatch(true);
|
|
1386
1399
|
|
|
1387
1400
|
// src/pcb/pcb_silkscreen_line.ts
|
|
1388
|
-
import { z as
|
|
1389
|
-
var pcb_silkscreen_line =
|
|
1390
|
-
type:
|
|
1401
|
+
import { z as z69 } from "zod";
|
|
1402
|
+
var pcb_silkscreen_line = z69.object({
|
|
1403
|
+
type: z69.literal("pcb_silkscreen_line"),
|
|
1391
1404
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
1392
|
-
pcb_component_id:
|
|
1393
|
-
pcb_group_id:
|
|
1394
|
-
subcircuit_id:
|
|
1405
|
+
pcb_component_id: z69.string(),
|
|
1406
|
+
pcb_group_id: z69.string().optional(),
|
|
1407
|
+
subcircuit_id: z69.string().optional(),
|
|
1395
1408
|
stroke_width: distance.default("0.1mm"),
|
|
1396
1409
|
x1: distance,
|
|
1397
1410
|
y1: distance,
|
|
@@ -1402,67 +1415,67 @@ var pcb_silkscreen_line = z68.object({
|
|
|
1402
1415
|
expectTypesMatch(true);
|
|
1403
1416
|
|
|
1404
1417
|
// src/pcb/pcb_silkscreen_path.ts
|
|
1405
|
-
import { z as
|
|
1406
|
-
var pcb_silkscreen_path =
|
|
1407
|
-
type:
|
|
1418
|
+
import { z as z70 } from "zod";
|
|
1419
|
+
var pcb_silkscreen_path = z70.object({
|
|
1420
|
+
type: z70.literal("pcb_silkscreen_path"),
|
|
1408
1421
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
1409
|
-
pcb_component_id:
|
|
1410
|
-
pcb_group_id:
|
|
1411
|
-
subcircuit_id:
|
|
1422
|
+
pcb_component_id: z70.string(),
|
|
1423
|
+
pcb_group_id: z70.string().optional(),
|
|
1424
|
+
subcircuit_id: z70.string().optional(),
|
|
1412
1425
|
layer: visible_layer,
|
|
1413
|
-
route:
|
|
1426
|
+
route: z70.array(point),
|
|
1414
1427
|
stroke_width: length
|
|
1415
1428
|
}).describe("Defines a silkscreen path on the PCB");
|
|
1416
1429
|
expectTypesMatch(true);
|
|
1417
1430
|
|
|
1418
1431
|
// src/pcb/pcb_silkscreen_text.ts
|
|
1419
|
-
import { z as
|
|
1420
|
-
var pcb_silkscreen_text =
|
|
1421
|
-
type:
|
|
1432
|
+
import { z as z71 } from "zod";
|
|
1433
|
+
var pcb_silkscreen_text = z71.object({
|
|
1434
|
+
type: z71.literal("pcb_silkscreen_text"),
|
|
1422
1435
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
1423
|
-
pcb_group_id:
|
|
1424
|
-
subcircuit_id:
|
|
1425
|
-
font:
|
|
1436
|
+
pcb_group_id: z71.string().optional(),
|
|
1437
|
+
subcircuit_id: z71.string().optional(),
|
|
1438
|
+
font: z71.literal("tscircuit2024").default("tscircuit2024"),
|
|
1426
1439
|
font_size: distance.default("0.2mm"),
|
|
1427
|
-
pcb_component_id:
|
|
1428
|
-
text:
|
|
1429
|
-
ccw_rotation:
|
|
1440
|
+
pcb_component_id: z71.string(),
|
|
1441
|
+
text: z71.string(),
|
|
1442
|
+
ccw_rotation: z71.number().optional(),
|
|
1430
1443
|
layer: layer_ref,
|
|
1431
|
-
is_mirrored:
|
|
1444
|
+
is_mirrored: z71.boolean().default(false).optional(),
|
|
1432
1445
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1433
1446
|
anchor_alignment: ninePointAnchor.default("center")
|
|
1434
1447
|
}).describe("Defines silkscreen text on the PCB");
|
|
1435
1448
|
expectTypesMatch(true);
|
|
1436
1449
|
|
|
1437
1450
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
1438
|
-
import { z as
|
|
1439
|
-
var pcb_silkscreen_rect =
|
|
1440
|
-
type:
|
|
1451
|
+
import { z as z72 } from "zod";
|
|
1452
|
+
var pcb_silkscreen_rect = z72.object({
|
|
1453
|
+
type: z72.literal("pcb_silkscreen_rect"),
|
|
1441
1454
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
1442
|
-
pcb_component_id:
|
|
1443
|
-
pcb_group_id:
|
|
1444
|
-
subcircuit_id:
|
|
1455
|
+
pcb_component_id: z72.string(),
|
|
1456
|
+
pcb_group_id: z72.string().optional(),
|
|
1457
|
+
subcircuit_id: z72.string().optional(),
|
|
1445
1458
|
center: point,
|
|
1446
1459
|
width: length,
|
|
1447
1460
|
height: length,
|
|
1448
1461
|
layer: layer_ref,
|
|
1449
1462
|
stroke_width: length.default("1mm"),
|
|
1450
|
-
is_filled:
|
|
1451
|
-
has_stroke:
|
|
1452
|
-
is_stroke_dashed:
|
|
1463
|
+
is_filled: z72.boolean().default(true).optional(),
|
|
1464
|
+
has_stroke: z72.boolean().optional(),
|
|
1465
|
+
is_stroke_dashed: z72.boolean().optional()
|
|
1453
1466
|
}).describe("Defines a silkscreen rect on the PCB");
|
|
1454
1467
|
expectTypesMatch(true);
|
|
1455
1468
|
|
|
1456
1469
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
1457
|
-
import { z as
|
|
1458
|
-
var pcb_silkscreen_circle =
|
|
1459
|
-
type:
|
|
1470
|
+
import { z as z73 } from "zod";
|
|
1471
|
+
var pcb_silkscreen_circle = z73.object({
|
|
1472
|
+
type: z73.literal("pcb_silkscreen_circle"),
|
|
1460
1473
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
1461
1474
|
"pcb_silkscreen_circle"
|
|
1462
1475
|
),
|
|
1463
|
-
pcb_component_id:
|
|
1464
|
-
pcb_group_id:
|
|
1465
|
-
subcircuit_id:
|
|
1476
|
+
pcb_component_id: z73.string(),
|
|
1477
|
+
pcb_group_id: z73.string().optional(),
|
|
1478
|
+
subcircuit_id: z73.string().optional(),
|
|
1466
1479
|
center: point,
|
|
1467
1480
|
radius: length,
|
|
1468
1481
|
layer: visible_layer,
|
|
@@ -1471,13 +1484,13 @@ var pcb_silkscreen_circle = z72.object({
|
|
|
1471
1484
|
expectTypesMatch(true);
|
|
1472
1485
|
|
|
1473
1486
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
1474
|
-
import { z as
|
|
1475
|
-
var pcb_silkscreen_oval =
|
|
1476
|
-
type:
|
|
1487
|
+
import { z as z74 } from "zod";
|
|
1488
|
+
var pcb_silkscreen_oval = z74.object({
|
|
1489
|
+
type: z74.literal("pcb_silkscreen_oval"),
|
|
1477
1490
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
1478
|
-
pcb_component_id:
|
|
1479
|
-
pcb_group_id:
|
|
1480
|
-
subcircuit_id:
|
|
1491
|
+
pcb_component_id: z74.string(),
|
|
1492
|
+
pcb_group_id: z74.string().optional(),
|
|
1493
|
+
subcircuit_id: z74.string().optional(),
|
|
1481
1494
|
center: point,
|
|
1482
1495
|
radius_x: distance,
|
|
1483
1496
|
radius_y: distance,
|
|
@@ -1486,86 +1499,86 @@ var pcb_silkscreen_oval = z73.object({
|
|
|
1486
1499
|
expectTypesMatch(true);
|
|
1487
1500
|
|
|
1488
1501
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
1489
|
-
import { z as
|
|
1490
|
-
var pcb_fabrication_note_text =
|
|
1491
|
-
type:
|
|
1502
|
+
import { z as z75 } from "zod";
|
|
1503
|
+
var pcb_fabrication_note_text = z75.object({
|
|
1504
|
+
type: z75.literal("pcb_fabrication_note_text"),
|
|
1492
1505
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
1493
1506
|
"pcb_fabrication_note_text"
|
|
1494
1507
|
),
|
|
1495
|
-
subcircuit_id:
|
|
1496
|
-
pcb_group_id:
|
|
1497
|
-
font:
|
|
1508
|
+
subcircuit_id: z75.string().optional(),
|
|
1509
|
+
pcb_group_id: z75.string().optional(),
|
|
1510
|
+
font: z75.literal("tscircuit2024").default("tscircuit2024"),
|
|
1498
1511
|
font_size: distance.default("1mm"),
|
|
1499
|
-
pcb_component_id:
|
|
1500
|
-
text:
|
|
1512
|
+
pcb_component_id: z75.string(),
|
|
1513
|
+
text: z75.string(),
|
|
1501
1514
|
layer: visible_layer,
|
|
1502
1515
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1503
|
-
anchor_alignment:
|
|
1504
|
-
color:
|
|
1516
|
+
anchor_alignment: z75.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
1517
|
+
color: z75.string().optional()
|
|
1505
1518
|
}).describe(
|
|
1506
1519
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
1507
1520
|
);
|
|
1508
1521
|
expectTypesMatch(true);
|
|
1509
1522
|
|
|
1510
1523
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
1511
|
-
import { z as
|
|
1512
|
-
var pcb_fabrication_note_path =
|
|
1513
|
-
type:
|
|
1524
|
+
import { z as z76 } from "zod";
|
|
1525
|
+
var pcb_fabrication_note_path = z76.object({
|
|
1526
|
+
type: z76.literal("pcb_fabrication_note_path"),
|
|
1514
1527
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
1515
1528
|
"pcb_fabrication_note_path"
|
|
1516
1529
|
),
|
|
1517
|
-
pcb_component_id:
|
|
1518
|
-
subcircuit_id:
|
|
1530
|
+
pcb_component_id: z76.string(),
|
|
1531
|
+
subcircuit_id: z76.string().optional(),
|
|
1519
1532
|
layer: layer_ref,
|
|
1520
|
-
route:
|
|
1533
|
+
route: z76.array(point),
|
|
1521
1534
|
stroke_width: length,
|
|
1522
|
-
color:
|
|
1535
|
+
color: z76.string().optional()
|
|
1523
1536
|
}).describe(
|
|
1524
1537
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
1525
1538
|
);
|
|
1526
1539
|
expectTypesMatch(true);
|
|
1527
1540
|
|
|
1528
1541
|
// src/pcb/pcb_keepout.ts
|
|
1529
|
-
import { z as
|
|
1530
|
-
var pcb_keepout =
|
|
1531
|
-
type:
|
|
1532
|
-
shape:
|
|
1533
|
-
pcb_group_id:
|
|
1534
|
-
subcircuit_id:
|
|
1542
|
+
import { z as z77 } from "zod";
|
|
1543
|
+
var pcb_keepout = z77.object({
|
|
1544
|
+
type: z77.literal("pcb_keepout"),
|
|
1545
|
+
shape: z77.literal("rect"),
|
|
1546
|
+
pcb_group_id: z77.string().optional(),
|
|
1547
|
+
subcircuit_id: z77.string().optional(),
|
|
1535
1548
|
center: point,
|
|
1536
1549
|
width: distance,
|
|
1537
1550
|
height: distance,
|
|
1538
|
-
pcb_keepout_id:
|
|
1539
|
-
layers:
|
|
1551
|
+
pcb_keepout_id: z77.string(),
|
|
1552
|
+
layers: z77.array(z77.string()),
|
|
1540
1553
|
// Specify layers where the keepout applies
|
|
1541
|
-
description:
|
|
1554
|
+
description: z77.string().optional()
|
|
1542
1555
|
// Optional description of the keepout
|
|
1543
1556
|
}).or(
|
|
1544
|
-
|
|
1545
|
-
type:
|
|
1546
|
-
shape:
|
|
1547
|
-
pcb_group_id:
|
|
1548
|
-
subcircuit_id:
|
|
1557
|
+
z77.object({
|
|
1558
|
+
type: z77.literal("pcb_keepout"),
|
|
1559
|
+
shape: z77.literal("circle"),
|
|
1560
|
+
pcb_group_id: z77.string().optional(),
|
|
1561
|
+
subcircuit_id: z77.string().optional(),
|
|
1549
1562
|
center: point,
|
|
1550
1563
|
radius: distance,
|
|
1551
|
-
pcb_keepout_id:
|
|
1552
|
-
layers:
|
|
1564
|
+
pcb_keepout_id: z77.string(),
|
|
1565
|
+
layers: z77.array(z77.string()),
|
|
1553
1566
|
// Specify layers where the keepout applies
|
|
1554
|
-
description:
|
|
1567
|
+
description: z77.string().optional()
|
|
1555
1568
|
// Optional description of the keepout
|
|
1556
1569
|
})
|
|
1557
1570
|
);
|
|
1558
1571
|
|
|
1559
1572
|
// src/pcb/pcb_cutout.ts
|
|
1560
|
-
import { z as
|
|
1561
|
-
var pcb_cutout_base =
|
|
1562
|
-
type:
|
|
1573
|
+
import { z as z78 } from "zod";
|
|
1574
|
+
var pcb_cutout_base = z78.object({
|
|
1575
|
+
type: z78.literal("pcb_cutout"),
|
|
1563
1576
|
pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
|
|
1564
|
-
pcb_group_id:
|
|
1565
|
-
subcircuit_id:
|
|
1577
|
+
pcb_group_id: z78.string().optional(),
|
|
1578
|
+
subcircuit_id: z78.string().optional()
|
|
1566
1579
|
});
|
|
1567
1580
|
var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
1568
|
-
shape:
|
|
1581
|
+
shape: z78.literal("rect"),
|
|
1569
1582
|
center: point,
|
|
1570
1583
|
width: length,
|
|
1571
1584
|
height: length,
|
|
@@ -1573,17 +1586,17 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
|
1573
1586
|
});
|
|
1574
1587
|
expectTypesMatch(true);
|
|
1575
1588
|
var pcb_cutout_circle = pcb_cutout_base.extend({
|
|
1576
|
-
shape:
|
|
1589
|
+
shape: z78.literal("circle"),
|
|
1577
1590
|
center: point,
|
|
1578
1591
|
radius: length
|
|
1579
1592
|
});
|
|
1580
1593
|
expectTypesMatch(true);
|
|
1581
1594
|
var pcb_cutout_polygon = pcb_cutout_base.extend({
|
|
1582
|
-
shape:
|
|
1583
|
-
points:
|
|
1595
|
+
shape: z78.literal("polygon"),
|
|
1596
|
+
points: z78.array(point)
|
|
1584
1597
|
});
|
|
1585
1598
|
expectTypesMatch(true);
|
|
1586
|
-
var pcb_cutout =
|
|
1599
|
+
var pcb_cutout = z78.discriminatedUnion("shape", [
|
|
1587
1600
|
pcb_cutout_rect,
|
|
1588
1601
|
pcb_cutout_circle,
|
|
1589
1602
|
pcb_cutout_polygon
|
|
@@ -1591,87 +1604,87 @@ var pcb_cutout = z77.discriminatedUnion("shape", [
|
|
|
1591
1604
|
expectTypesMatch(true);
|
|
1592
1605
|
|
|
1593
1606
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
1594
|
-
import { z as
|
|
1595
|
-
var pcb_missing_footprint_error =
|
|
1596
|
-
type:
|
|
1607
|
+
import { z as z79 } from "zod";
|
|
1608
|
+
var pcb_missing_footprint_error = z79.object({
|
|
1609
|
+
type: z79.literal("pcb_missing_footprint_error"),
|
|
1597
1610
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
1598
1611
|
"pcb_missing_footprint_error"
|
|
1599
1612
|
),
|
|
1600
|
-
pcb_group_id:
|
|
1601
|
-
subcircuit_id:
|
|
1602
|
-
error_type:
|
|
1603
|
-
source_component_id:
|
|
1604
|
-
message:
|
|
1613
|
+
pcb_group_id: z79.string().optional(),
|
|
1614
|
+
subcircuit_id: z79.string().optional(),
|
|
1615
|
+
error_type: z79.literal("pcb_missing_footprint_error"),
|
|
1616
|
+
source_component_id: z79.string(),
|
|
1617
|
+
message: z79.string()
|
|
1605
1618
|
}).describe("Defines a missing footprint error on the PCB");
|
|
1606
1619
|
expectTypesMatch(
|
|
1607
1620
|
true
|
|
1608
1621
|
);
|
|
1609
1622
|
|
|
1610
1623
|
// src/pcb/pcb_group.ts
|
|
1611
|
-
import { z as
|
|
1612
|
-
var pcb_group =
|
|
1613
|
-
type:
|
|
1624
|
+
import { z as z80 } from "zod";
|
|
1625
|
+
var pcb_group = z80.object({
|
|
1626
|
+
type: z80.literal("pcb_group"),
|
|
1614
1627
|
pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
|
|
1615
|
-
source_group_id:
|
|
1616
|
-
is_subcircuit:
|
|
1617
|
-
subcircuit_id:
|
|
1628
|
+
source_group_id: z80.string(),
|
|
1629
|
+
is_subcircuit: z80.boolean().optional(),
|
|
1630
|
+
subcircuit_id: z80.string().optional(),
|
|
1618
1631
|
width: length,
|
|
1619
1632
|
height: length,
|
|
1620
1633
|
center: point,
|
|
1621
|
-
pcb_component_ids:
|
|
1622
|
-
name:
|
|
1623
|
-
description:
|
|
1634
|
+
pcb_component_ids: z80.array(z80.string()),
|
|
1635
|
+
name: z80.string().optional(),
|
|
1636
|
+
description: z80.string().optional()
|
|
1624
1637
|
}).describe("Defines a group of components on the PCB");
|
|
1625
1638
|
expectTypesMatch(true);
|
|
1626
1639
|
|
|
1627
1640
|
// src/pcb/pcb_autorouting_error.ts
|
|
1628
|
-
import { z as
|
|
1629
|
-
var pcb_autorouting_error =
|
|
1630
|
-
type:
|
|
1641
|
+
import { z as z81 } from "zod";
|
|
1642
|
+
var pcb_autorouting_error = z81.object({
|
|
1643
|
+
type: z81.literal("pcb_autorouting_error"),
|
|
1631
1644
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
|
|
1632
|
-
message:
|
|
1645
|
+
message: z81.string()
|
|
1633
1646
|
}).describe("The autorouting has failed to route a portion of the board");
|
|
1634
1647
|
expectTypesMatch(true);
|
|
1635
1648
|
|
|
1636
1649
|
// src/pcb/pcb_manual_edit_conflict_warning.ts
|
|
1637
|
-
import { z as
|
|
1638
|
-
var pcb_manual_edit_conflict_warning =
|
|
1639
|
-
type:
|
|
1650
|
+
import { z as z82 } from "zod";
|
|
1651
|
+
var pcb_manual_edit_conflict_warning = z82.object({
|
|
1652
|
+
type: z82.literal("pcb_manual_edit_conflict_warning"),
|
|
1640
1653
|
pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
1641
1654
|
"pcb_manual_edit_conflict_warning"
|
|
1642
1655
|
),
|
|
1643
|
-
message:
|
|
1644
|
-
pcb_component_id:
|
|
1645
|
-
pcb_group_id:
|
|
1646
|
-
subcircuit_id:
|
|
1647
|
-
source_component_id:
|
|
1656
|
+
message: z82.string(),
|
|
1657
|
+
pcb_component_id: z82.string(),
|
|
1658
|
+
pcb_group_id: z82.string().optional(),
|
|
1659
|
+
subcircuit_id: z82.string().optional(),
|
|
1660
|
+
source_component_id: z82.string()
|
|
1648
1661
|
}).describe(
|
|
1649
1662
|
"Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
|
|
1650
1663
|
);
|
|
1651
1664
|
expectTypesMatch(true);
|
|
1652
1665
|
|
|
1653
1666
|
// src/cad/cad_component.ts
|
|
1654
|
-
import { z as
|
|
1655
|
-
var cad_component =
|
|
1656
|
-
type:
|
|
1657
|
-
cad_component_id:
|
|
1658
|
-
pcb_component_id:
|
|
1659
|
-
source_component_id:
|
|
1667
|
+
import { z as z83 } from "zod";
|
|
1668
|
+
var cad_component = z83.object({
|
|
1669
|
+
type: z83.literal("cad_component"),
|
|
1670
|
+
cad_component_id: z83.string(),
|
|
1671
|
+
pcb_component_id: z83.string(),
|
|
1672
|
+
source_component_id: z83.string(),
|
|
1660
1673
|
position: point3,
|
|
1661
1674
|
rotation: point3.optional(),
|
|
1662
1675
|
size: point3.optional(),
|
|
1663
1676
|
layer: layer_ref.optional(),
|
|
1664
1677
|
// These are all ways to generate/load the 3d model
|
|
1665
|
-
footprinter_string:
|
|
1666
|
-
model_obj_url:
|
|
1667
|
-
model_stl_url:
|
|
1668
|
-
model_3mf_url:
|
|
1669
|
-
model_jscad:
|
|
1678
|
+
footprinter_string: z83.string().optional(),
|
|
1679
|
+
model_obj_url: z83.string().optional(),
|
|
1680
|
+
model_stl_url: z83.string().optional(),
|
|
1681
|
+
model_3mf_url: z83.string().optional(),
|
|
1682
|
+
model_jscad: z83.any().optional()
|
|
1670
1683
|
}).describe("Defines a component on the PCB");
|
|
1671
1684
|
|
|
1672
1685
|
// src/any_circuit_element.ts
|
|
1673
|
-
import { z as
|
|
1674
|
-
var any_circuit_element =
|
|
1686
|
+
import { z as z84 } from "zod";
|
|
1687
|
+
var any_circuit_element = z84.union([
|
|
1675
1688
|
source_trace,
|
|
1676
1689
|
source_port,
|
|
1677
1690
|
any_source_component,
|
|
@@ -1731,6 +1744,7 @@ var any_circuit_element = z83.union([
|
|
|
1731
1744
|
schematic_trace,
|
|
1732
1745
|
schematic_path,
|
|
1733
1746
|
schematic_error,
|
|
1747
|
+
schematic_layout_error,
|
|
1734
1748
|
schematic_net_label,
|
|
1735
1749
|
schematic_debug_object,
|
|
1736
1750
|
schematic_voltage_probe,
|
|
@@ -1815,6 +1829,7 @@ export {
|
|
|
1815
1829
|
schematic_debug_rect,
|
|
1816
1830
|
schematic_error,
|
|
1817
1831
|
schematic_group,
|
|
1832
|
+
schematic_layout_error,
|
|
1818
1833
|
schematic_line,
|
|
1819
1834
|
schematic_manual_edit_conflict_warning,
|
|
1820
1835
|
schematic_net_label,
|