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