circuit-json 0.0.178 → 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 +24 -0
- package/dist/index.d.mts +173 -1
- package/dist/index.mjs +387 -368
- 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,77 +953,77 @@ 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
1029
|
pcb_circular_hole_with_rect_pad,
|
|
@@ -1020,84 +1037,84 @@ expectTypesMatch(true);
|
|
|
1020
1037
|
expectTypesMatch(true);
|
|
1021
1038
|
|
|
1022
1039
|
// src/pcb/pcb_port.ts
|
|
1023
|
-
import { z as
|
|
1024
|
-
var pcb_port =
|
|
1025
|
-
type:
|
|
1040
|
+
import { z as z55 } from "zod";
|
|
1041
|
+
var pcb_port = z55.object({
|
|
1042
|
+
type: z55.literal("pcb_port"),
|
|
1026
1043
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
1027
|
-
pcb_group_id:
|
|
1028
|
-
subcircuit_id:
|
|
1029
|
-
source_port_id:
|
|
1030
|
-
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(),
|
|
1031
1048
|
x: distance,
|
|
1032
1049
|
y: distance,
|
|
1033
|
-
layers:
|
|
1050
|
+
layers: z55.array(layer_ref)
|
|
1034
1051
|
}).describe("Defines a port on the PCB");
|
|
1035
1052
|
expectTypesMatch(true);
|
|
1036
1053
|
|
|
1037
1054
|
// src/pcb/pcb_smtpad.ts
|
|
1038
|
-
import { z as
|
|
1039
|
-
var pcb_smtpad_circle =
|
|
1040
|
-
type:
|
|
1041
|
-
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"),
|
|
1042
1059
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1043
|
-
pcb_group_id:
|
|
1044
|
-
subcircuit_id:
|
|
1060
|
+
pcb_group_id: z56.string().optional(),
|
|
1061
|
+
subcircuit_id: z56.string().optional(),
|
|
1045
1062
|
x: distance,
|
|
1046
1063
|
y: distance,
|
|
1047
|
-
radius:
|
|
1064
|
+
radius: z56.number(),
|
|
1048
1065
|
layer: layer_ref,
|
|
1049
|
-
port_hints:
|
|
1050
|
-
pcb_component_id:
|
|
1051
|
-
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()
|
|
1052
1069
|
});
|
|
1053
|
-
var pcb_smtpad_rect =
|
|
1054
|
-
type:
|
|
1055
|
-
shape:
|
|
1070
|
+
var pcb_smtpad_rect = z56.object({
|
|
1071
|
+
type: z56.literal("pcb_smtpad"),
|
|
1072
|
+
shape: z56.literal("rect"),
|
|
1056
1073
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1057
|
-
pcb_group_id:
|
|
1058
|
-
subcircuit_id:
|
|
1074
|
+
pcb_group_id: z56.string().optional(),
|
|
1075
|
+
subcircuit_id: z56.string().optional(),
|
|
1059
1076
|
x: distance,
|
|
1060
1077
|
y: distance,
|
|
1061
|
-
width:
|
|
1062
|
-
height:
|
|
1078
|
+
width: z56.number(),
|
|
1079
|
+
height: z56.number(),
|
|
1063
1080
|
layer: layer_ref,
|
|
1064
|
-
port_hints:
|
|
1065
|
-
pcb_component_id:
|
|
1066
|
-
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()
|
|
1067
1084
|
});
|
|
1068
|
-
var pcb_smtpad_rotated_rect =
|
|
1069
|
-
type:
|
|
1070
|
-
shape:
|
|
1085
|
+
var pcb_smtpad_rotated_rect = z56.object({
|
|
1086
|
+
type: z56.literal("pcb_smtpad"),
|
|
1087
|
+
shape: z56.literal("rotated_rect"),
|
|
1071
1088
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1072
|
-
pcb_group_id:
|
|
1073
|
-
subcircuit_id:
|
|
1089
|
+
pcb_group_id: z56.string().optional(),
|
|
1090
|
+
subcircuit_id: z56.string().optional(),
|
|
1074
1091
|
x: distance,
|
|
1075
1092
|
y: distance,
|
|
1076
|
-
width:
|
|
1077
|
-
height:
|
|
1093
|
+
width: z56.number(),
|
|
1094
|
+
height: z56.number(),
|
|
1078
1095
|
ccw_rotation: rotation,
|
|
1079
1096
|
layer: layer_ref,
|
|
1080
|
-
port_hints:
|
|
1081
|
-
pcb_component_id:
|
|
1082
|
-
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()
|
|
1083
1100
|
});
|
|
1084
|
-
var pcb_smtpad_pill =
|
|
1085
|
-
type:
|
|
1086
|
-
shape:
|
|
1101
|
+
var pcb_smtpad_pill = z56.object({
|
|
1102
|
+
type: z56.literal("pcb_smtpad"),
|
|
1103
|
+
shape: z56.literal("pill"),
|
|
1087
1104
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1088
|
-
pcb_group_id:
|
|
1089
|
-
subcircuit_id:
|
|
1105
|
+
pcb_group_id: z56.string().optional(),
|
|
1106
|
+
subcircuit_id: z56.string().optional(),
|
|
1090
1107
|
x: distance,
|
|
1091
1108
|
y: distance,
|
|
1092
|
-
width:
|
|
1093
|
-
height:
|
|
1094
|
-
radius:
|
|
1109
|
+
width: z56.number(),
|
|
1110
|
+
height: z56.number(),
|
|
1111
|
+
radius: z56.number(),
|
|
1095
1112
|
layer: layer_ref,
|
|
1096
|
-
port_hints:
|
|
1097
|
-
pcb_component_id:
|
|
1098
|
-
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()
|
|
1099
1116
|
});
|
|
1100
|
-
var pcb_smtpad =
|
|
1117
|
+
var pcb_smtpad = z56.union([
|
|
1101
1118
|
pcb_smtpad_circle,
|
|
1102
1119
|
pcb_smtpad_rect,
|
|
1103
1120
|
pcb_smtpad_rotated_rect,
|
|
@@ -1109,79 +1126,79 @@ expectTypesMatch(true);
|
|
|
1109
1126
|
expectTypesMatch(true);
|
|
1110
1127
|
|
|
1111
1128
|
// src/pcb/pcb_solder_paste.ts
|
|
1112
|
-
import { z as
|
|
1113
|
-
var pcb_solder_paste_circle =
|
|
1114
|
-
type:
|
|
1115
|
-
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"),
|
|
1116
1133
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1117
|
-
pcb_group_id:
|
|
1118
|
-
subcircuit_id:
|
|
1134
|
+
pcb_group_id: z57.string().optional(),
|
|
1135
|
+
subcircuit_id: z57.string().optional(),
|
|
1119
1136
|
x: distance,
|
|
1120
1137
|
y: distance,
|
|
1121
|
-
radius:
|
|
1138
|
+
radius: z57.number(),
|
|
1122
1139
|
layer: layer_ref,
|
|
1123
|
-
pcb_component_id:
|
|
1124
|
-
pcb_smtpad_id:
|
|
1140
|
+
pcb_component_id: z57.string().optional(),
|
|
1141
|
+
pcb_smtpad_id: z57.string().optional()
|
|
1125
1142
|
});
|
|
1126
|
-
var pcb_solder_paste_rect =
|
|
1127
|
-
type:
|
|
1128
|
-
shape:
|
|
1143
|
+
var pcb_solder_paste_rect = z57.object({
|
|
1144
|
+
type: z57.literal("pcb_solder_paste"),
|
|
1145
|
+
shape: z57.literal("rect"),
|
|
1129
1146
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1130
|
-
pcb_group_id:
|
|
1131
|
-
subcircuit_id:
|
|
1147
|
+
pcb_group_id: z57.string().optional(),
|
|
1148
|
+
subcircuit_id: z57.string().optional(),
|
|
1132
1149
|
x: distance,
|
|
1133
1150
|
y: distance,
|
|
1134
|
-
width:
|
|
1135
|
-
height:
|
|
1151
|
+
width: z57.number(),
|
|
1152
|
+
height: z57.number(),
|
|
1136
1153
|
layer: layer_ref,
|
|
1137
|
-
pcb_component_id:
|
|
1138
|
-
pcb_smtpad_id:
|
|
1154
|
+
pcb_component_id: z57.string().optional(),
|
|
1155
|
+
pcb_smtpad_id: z57.string().optional()
|
|
1139
1156
|
});
|
|
1140
|
-
var pcb_solder_paste_pill =
|
|
1141
|
-
type:
|
|
1142
|
-
shape:
|
|
1157
|
+
var pcb_solder_paste_pill = z57.object({
|
|
1158
|
+
type: z57.literal("pcb_solder_paste"),
|
|
1159
|
+
shape: z57.literal("pill"),
|
|
1143
1160
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1144
|
-
pcb_group_id:
|
|
1145
|
-
subcircuit_id:
|
|
1161
|
+
pcb_group_id: z57.string().optional(),
|
|
1162
|
+
subcircuit_id: z57.string().optional(),
|
|
1146
1163
|
x: distance,
|
|
1147
1164
|
y: distance,
|
|
1148
|
-
width:
|
|
1149
|
-
height:
|
|
1150
|
-
radius:
|
|
1165
|
+
width: z57.number(),
|
|
1166
|
+
height: z57.number(),
|
|
1167
|
+
radius: z57.number(),
|
|
1151
1168
|
layer: layer_ref,
|
|
1152
|
-
pcb_component_id:
|
|
1153
|
-
pcb_smtpad_id:
|
|
1169
|
+
pcb_component_id: z57.string().optional(),
|
|
1170
|
+
pcb_smtpad_id: z57.string().optional()
|
|
1154
1171
|
});
|
|
1155
|
-
var pcb_solder_paste_rotated_rect =
|
|
1156
|
-
type:
|
|
1157
|
-
shape:
|
|
1172
|
+
var pcb_solder_paste_rotated_rect = z57.object({
|
|
1173
|
+
type: z57.literal("pcb_solder_paste"),
|
|
1174
|
+
shape: z57.literal("rotated_rect"),
|
|
1158
1175
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1159
|
-
pcb_group_id:
|
|
1160
|
-
subcircuit_id:
|
|
1176
|
+
pcb_group_id: z57.string().optional(),
|
|
1177
|
+
subcircuit_id: z57.string().optional(),
|
|
1161
1178
|
x: distance,
|
|
1162
1179
|
y: distance,
|
|
1163
|
-
width:
|
|
1164
|
-
height:
|
|
1180
|
+
width: z57.number(),
|
|
1181
|
+
height: z57.number(),
|
|
1165
1182
|
ccw_rotation: distance,
|
|
1166
1183
|
layer: layer_ref,
|
|
1167
|
-
pcb_component_id:
|
|
1168
|
-
pcb_smtpad_id:
|
|
1184
|
+
pcb_component_id: z57.string().optional(),
|
|
1185
|
+
pcb_smtpad_id: z57.string().optional()
|
|
1169
1186
|
});
|
|
1170
|
-
var pcb_solder_paste_oval =
|
|
1171
|
-
type:
|
|
1172
|
-
shape:
|
|
1187
|
+
var pcb_solder_paste_oval = z57.object({
|
|
1188
|
+
type: z57.literal("pcb_solder_paste"),
|
|
1189
|
+
shape: z57.literal("oval"),
|
|
1173
1190
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1174
|
-
pcb_group_id:
|
|
1175
|
-
subcircuit_id:
|
|
1191
|
+
pcb_group_id: z57.string().optional(),
|
|
1192
|
+
subcircuit_id: z57.string().optional(),
|
|
1176
1193
|
x: distance,
|
|
1177
1194
|
y: distance,
|
|
1178
|
-
width:
|
|
1179
|
-
height:
|
|
1195
|
+
width: z57.number(),
|
|
1196
|
+
height: z57.number(),
|
|
1180
1197
|
layer: layer_ref,
|
|
1181
|
-
pcb_component_id:
|
|
1182
|
-
pcb_smtpad_id:
|
|
1198
|
+
pcb_component_id: z57.string().optional(),
|
|
1199
|
+
pcb_smtpad_id: z57.string().optional()
|
|
1183
1200
|
});
|
|
1184
|
-
var pcb_solder_paste =
|
|
1201
|
+
var pcb_solder_paste = z57.union([
|
|
1185
1202
|
pcb_solder_paste_circle,
|
|
1186
1203
|
pcb_solder_paste_rect,
|
|
1187
1204
|
pcb_solder_paste_pill,
|
|
@@ -1197,95 +1214,95 @@ expectTypesMatch(
|
|
|
1197
1214
|
expectTypesMatch(true);
|
|
1198
1215
|
|
|
1199
1216
|
// src/pcb/pcb_text.ts
|
|
1200
|
-
import { z as
|
|
1201
|
-
var pcb_text =
|
|
1202
|
-
type:
|
|
1217
|
+
import { z as z58 } from "zod";
|
|
1218
|
+
var pcb_text = z58.object({
|
|
1219
|
+
type: z58.literal("pcb_text"),
|
|
1203
1220
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
1204
|
-
pcb_group_id:
|
|
1205
|
-
subcircuit_id:
|
|
1206
|
-
text:
|
|
1221
|
+
pcb_group_id: z58.string().optional(),
|
|
1222
|
+
subcircuit_id: z58.string().optional(),
|
|
1223
|
+
text: z58.string(),
|
|
1207
1224
|
center: point,
|
|
1208
1225
|
layer: layer_ref,
|
|
1209
1226
|
width: length,
|
|
1210
1227
|
height: length,
|
|
1211
|
-
lines:
|
|
1228
|
+
lines: z58.number(),
|
|
1212
1229
|
// @ts-ignore
|
|
1213
|
-
align:
|
|
1230
|
+
align: z58.enum(["bottom-left"])
|
|
1214
1231
|
}).describe("Defines text on the PCB");
|
|
1215
1232
|
expectTypesMatch(true);
|
|
1216
1233
|
|
|
1217
1234
|
// src/pcb/pcb_trace.ts
|
|
1218
|
-
import { z as
|
|
1219
|
-
var pcb_trace_route_point_wire =
|
|
1220
|
-
route_type:
|
|
1235
|
+
import { z as z59 } from "zod";
|
|
1236
|
+
var pcb_trace_route_point_wire = z59.object({
|
|
1237
|
+
route_type: z59.literal("wire"),
|
|
1221
1238
|
x: distance,
|
|
1222
1239
|
y: distance,
|
|
1223
1240
|
width: distance,
|
|
1224
|
-
start_pcb_port_id:
|
|
1225
|
-
end_pcb_port_id:
|
|
1241
|
+
start_pcb_port_id: z59.string().optional(),
|
|
1242
|
+
end_pcb_port_id: z59.string().optional(),
|
|
1226
1243
|
layer: layer_ref
|
|
1227
1244
|
});
|
|
1228
|
-
var pcb_trace_route_point_via =
|
|
1229
|
-
route_type:
|
|
1245
|
+
var pcb_trace_route_point_via = z59.object({
|
|
1246
|
+
route_type: z59.literal("via"),
|
|
1230
1247
|
x: distance,
|
|
1231
1248
|
y: distance,
|
|
1232
1249
|
hole_diameter: distance.optional(),
|
|
1233
1250
|
outer_diameter: distance.optional(),
|
|
1234
|
-
from_layer:
|
|
1235
|
-
to_layer:
|
|
1251
|
+
from_layer: z59.string(),
|
|
1252
|
+
to_layer: z59.string()
|
|
1236
1253
|
});
|
|
1237
|
-
var pcb_trace_route_point =
|
|
1254
|
+
var pcb_trace_route_point = z59.union([
|
|
1238
1255
|
pcb_trace_route_point_wire,
|
|
1239
1256
|
pcb_trace_route_point_via
|
|
1240
1257
|
]);
|
|
1241
|
-
var pcb_trace =
|
|
1242
|
-
type:
|
|
1243
|
-
source_trace_id:
|
|
1244
|
-
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(),
|
|
1245
1262
|
pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
|
|
1246
|
-
pcb_group_id:
|
|
1247
|
-
subcircuit_id:
|
|
1248
|
-
route_thickness_mode:
|
|
1249
|
-
route_order_index:
|
|
1250
|
-
should_round_corners:
|
|
1251
|
-
trace_length:
|
|
1252
|
-
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)
|
|
1253
1270
|
}).describe("Defines a trace on the PCB");
|
|
1254
1271
|
expectTypesMatch(true);
|
|
1255
1272
|
expectTypesMatch(true);
|
|
1256
1273
|
|
|
1257
1274
|
// src/pcb/pcb_trace_error.ts
|
|
1258
|
-
import { z as
|
|
1259
|
-
var pcb_trace_error =
|
|
1260
|
-
type:
|
|
1275
|
+
import { z as z60 } from "zod";
|
|
1276
|
+
var pcb_trace_error = z60.object({
|
|
1277
|
+
type: z60.literal("pcb_trace_error"),
|
|
1261
1278
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
1262
|
-
error_type:
|
|
1263
|
-
message:
|
|
1279
|
+
error_type: z60.literal("pcb_trace_error"),
|
|
1280
|
+
message: z60.string(),
|
|
1264
1281
|
center: point.optional(),
|
|
1265
|
-
pcb_trace_id:
|
|
1266
|
-
source_trace_id:
|
|
1267
|
-
pcb_component_ids:
|
|
1268
|
-
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())
|
|
1269
1286
|
}).describe("Defines a trace error on the PCB");
|
|
1270
1287
|
expectTypesMatch(true);
|
|
1271
1288
|
|
|
1272
1289
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
1273
|
-
import { z as
|
|
1274
|
-
var pcb_port_not_matched_error =
|
|
1275
|
-
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"),
|
|
1276
1293
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
1277
|
-
message:
|
|
1278
|
-
pcb_component_ids:
|
|
1294
|
+
message: z61.string(),
|
|
1295
|
+
pcb_component_ids: z61.array(z61.string())
|
|
1279
1296
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
1280
1297
|
expectTypesMatch(true);
|
|
1281
1298
|
|
|
1282
1299
|
// src/pcb/pcb_via.ts
|
|
1283
|
-
import { z as
|
|
1284
|
-
var pcb_via =
|
|
1285
|
-
type:
|
|
1300
|
+
import { z as z62 } from "zod";
|
|
1301
|
+
var pcb_via = z62.object({
|
|
1302
|
+
type: z62.literal("pcb_via"),
|
|
1286
1303
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
1287
|
-
pcb_group_id:
|
|
1288
|
-
subcircuit_id:
|
|
1304
|
+
pcb_group_id: z62.string().optional(),
|
|
1305
|
+
subcircuit_id: z62.string().optional(),
|
|
1289
1306
|
x: distance,
|
|
1290
1307
|
y: distance,
|
|
1291
1308
|
outer_diameter: distance.default("0.6mm"),
|
|
@@ -1294,56 +1311,56 @@ var pcb_via = z61.object({
|
|
|
1294
1311
|
from_layer: layer_ref.optional(),
|
|
1295
1312
|
/** @deprecated */
|
|
1296
1313
|
to_layer: layer_ref.optional(),
|
|
1297
|
-
layers:
|
|
1298
|
-
pcb_trace_id:
|
|
1314
|
+
layers: z62.array(layer_ref),
|
|
1315
|
+
pcb_trace_id: z62.string().optional()
|
|
1299
1316
|
}).describe("Defines a via on the PCB");
|
|
1300
1317
|
expectTypesMatch(true);
|
|
1301
1318
|
|
|
1302
1319
|
// src/pcb/pcb_board.ts
|
|
1303
|
-
import { z as
|
|
1304
|
-
var pcb_board =
|
|
1305
|
-
type:
|
|
1320
|
+
import { z as z63 } from "zod";
|
|
1321
|
+
var pcb_board = z63.object({
|
|
1322
|
+
type: z63.literal("pcb_board"),
|
|
1306
1323
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
1307
|
-
is_subcircuit:
|
|
1308
|
-
subcircuit_id:
|
|
1324
|
+
is_subcircuit: z63.boolean().optional(),
|
|
1325
|
+
subcircuit_id: z63.string().optional(),
|
|
1309
1326
|
width: length,
|
|
1310
1327
|
height: length,
|
|
1311
1328
|
center: point,
|
|
1312
1329
|
thickness: length.optional().default(1.4),
|
|
1313
|
-
num_layers:
|
|
1314
|
-
outline:
|
|
1315
|
-
material:
|
|
1330
|
+
num_layers: z63.number().optional().default(4),
|
|
1331
|
+
outline: z63.array(point).optional(),
|
|
1332
|
+
material: z63.enum(["fr4", "fr1"]).default("fr4")
|
|
1316
1333
|
}).describe("Defines the board outline of the PCB");
|
|
1317
1334
|
expectTypesMatch(true);
|
|
1318
1335
|
|
|
1319
1336
|
// src/pcb/pcb_placement_error.ts
|
|
1320
|
-
import { z as
|
|
1321
|
-
var pcb_placement_error =
|
|
1322
|
-
type:
|
|
1337
|
+
import { z as z64 } from "zod";
|
|
1338
|
+
var pcb_placement_error = z64.object({
|
|
1339
|
+
type: z64.literal("pcb_placement_error"),
|
|
1323
1340
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
1324
|
-
message:
|
|
1341
|
+
message: z64.string()
|
|
1325
1342
|
}).describe("Defines a placement error on the PCB");
|
|
1326
1343
|
expectTypesMatch(true);
|
|
1327
1344
|
|
|
1328
1345
|
// src/pcb/pcb_trace_hint.ts
|
|
1329
|
-
import { z as
|
|
1330
|
-
var pcb_trace_hint =
|
|
1331
|
-
type:
|
|
1346
|
+
import { z as z65 } from "zod";
|
|
1347
|
+
var pcb_trace_hint = z65.object({
|
|
1348
|
+
type: z65.literal("pcb_trace_hint"),
|
|
1332
1349
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
1333
|
-
pcb_port_id:
|
|
1334
|
-
pcb_component_id:
|
|
1335
|
-
route:
|
|
1350
|
+
pcb_port_id: z65.string(),
|
|
1351
|
+
pcb_component_id: z65.string(),
|
|
1352
|
+
route: z65.array(route_hint_point)
|
|
1336
1353
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
1337
1354
|
expectTypesMatch(true);
|
|
1338
1355
|
|
|
1339
1356
|
// src/pcb/pcb_silkscreen_line.ts
|
|
1340
|
-
import { z as
|
|
1341
|
-
var pcb_silkscreen_line =
|
|
1342
|
-
type:
|
|
1357
|
+
import { z as z66 } from "zod";
|
|
1358
|
+
var pcb_silkscreen_line = z66.object({
|
|
1359
|
+
type: z66.literal("pcb_silkscreen_line"),
|
|
1343
1360
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
1344
|
-
pcb_component_id:
|
|
1345
|
-
pcb_group_id:
|
|
1346
|
-
subcircuit_id:
|
|
1361
|
+
pcb_component_id: z66.string(),
|
|
1362
|
+
pcb_group_id: z66.string().optional(),
|
|
1363
|
+
subcircuit_id: z66.string().optional(),
|
|
1347
1364
|
stroke_width: distance.default("0.1mm"),
|
|
1348
1365
|
x1: distance,
|
|
1349
1366
|
y1: distance,
|
|
@@ -1354,46 +1371,46 @@ var pcb_silkscreen_line = z65.object({
|
|
|
1354
1371
|
expectTypesMatch(true);
|
|
1355
1372
|
|
|
1356
1373
|
// src/pcb/pcb_silkscreen_path.ts
|
|
1357
|
-
import { z as
|
|
1358
|
-
var pcb_silkscreen_path =
|
|
1359
|
-
type:
|
|
1374
|
+
import { z as z67 } from "zod";
|
|
1375
|
+
var pcb_silkscreen_path = z67.object({
|
|
1376
|
+
type: z67.literal("pcb_silkscreen_path"),
|
|
1360
1377
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
1361
|
-
pcb_component_id:
|
|
1362
|
-
pcb_group_id:
|
|
1363
|
-
subcircuit_id:
|
|
1378
|
+
pcb_component_id: z67.string(),
|
|
1379
|
+
pcb_group_id: z67.string().optional(),
|
|
1380
|
+
subcircuit_id: z67.string().optional(),
|
|
1364
1381
|
layer: visible_layer,
|
|
1365
|
-
route:
|
|
1382
|
+
route: z67.array(point),
|
|
1366
1383
|
stroke_width: length
|
|
1367
1384
|
}).describe("Defines a silkscreen path on the PCB");
|
|
1368
1385
|
expectTypesMatch(true);
|
|
1369
1386
|
|
|
1370
1387
|
// src/pcb/pcb_silkscreen_text.ts
|
|
1371
|
-
import { z as
|
|
1372
|
-
var pcb_silkscreen_text =
|
|
1373
|
-
type:
|
|
1388
|
+
import { z as z68 } from "zod";
|
|
1389
|
+
var pcb_silkscreen_text = z68.object({
|
|
1390
|
+
type: z68.literal("pcb_silkscreen_text"),
|
|
1374
1391
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
1375
|
-
pcb_group_id:
|
|
1376
|
-
subcircuit_id:
|
|
1377
|
-
font:
|
|
1392
|
+
pcb_group_id: z68.string().optional(),
|
|
1393
|
+
subcircuit_id: z68.string().optional(),
|
|
1394
|
+
font: z68.literal("tscircuit2024").default("tscircuit2024"),
|
|
1378
1395
|
font_size: distance.default("0.2mm"),
|
|
1379
|
-
pcb_component_id:
|
|
1380
|
-
text:
|
|
1381
|
-
ccw_rotation:
|
|
1396
|
+
pcb_component_id: z68.string(),
|
|
1397
|
+
text: z68.string(),
|
|
1398
|
+
ccw_rotation: z68.number().optional(),
|
|
1382
1399
|
layer: layer_ref,
|
|
1383
|
-
is_mirrored:
|
|
1400
|
+
is_mirrored: z68.boolean().default(false).optional(),
|
|
1384
1401
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1385
|
-
anchor_alignment:
|
|
1402
|
+
anchor_alignment: z68.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center")
|
|
1386
1403
|
}).describe("Defines silkscreen text on the PCB");
|
|
1387
1404
|
expectTypesMatch(true);
|
|
1388
1405
|
|
|
1389
1406
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
1390
|
-
import { z as
|
|
1391
|
-
var pcb_silkscreen_rect =
|
|
1392
|
-
type:
|
|
1407
|
+
import { z as z69 } from "zod";
|
|
1408
|
+
var pcb_silkscreen_rect = z69.object({
|
|
1409
|
+
type: z69.literal("pcb_silkscreen_rect"),
|
|
1393
1410
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
1394
|
-
pcb_component_id:
|
|
1395
|
-
pcb_group_id:
|
|
1396
|
-
subcircuit_id:
|
|
1411
|
+
pcb_component_id: z69.string(),
|
|
1412
|
+
pcb_group_id: z69.string().optional(),
|
|
1413
|
+
subcircuit_id: z69.string().optional(),
|
|
1397
1414
|
center: point,
|
|
1398
1415
|
width: length,
|
|
1399
1416
|
height: length,
|
|
@@ -1403,15 +1420,15 @@ var pcb_silkscreen_rect = z68.object({
|
|
|
1403
1420
|
expectTypesMatch(true);
|
|
1404
1421
|
|
|
1405
1422
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
1406
|
-
import { z as
|
|
1407
|
-
var pcb_silkscreen_circle =
|
|
1408
|
-
type:
|
|
1423
|
+
import { z as z70 } from "zod";
|
|
1424
|
+
var pcb_silkscreen_circle = z70.object({
|
|
1425
|
+
type: z70.literal("pcb_silkscreen_circle"),
|
|
1409
1426
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
1410
1427
|
"pcb_silkscreen_circle"
|
|
1411
1428
|
),
|
|
1412
|
-
pcb_component_id:
|
|
1413
|
-
pcb_group_id:
|
|
1414
|
-
subcircuit_id:
|
|
1429
|
+
pcb_component_id: z70.string(),
|
|
1430
|
+
pcb_group_id: z70.string().optional(),
|
|
1431
|
+
subcircuit_id: z70.string().optional(),
|
|
1415
1432
|
center: point,
|
|
1416
1433
|
radius: length,
|
|
1417
1434
|
layer: visible_layer,
|
|
@@ -1420,13 +1437,13 @@ var pcb_silkscreen_circle = z69.object({
|
|
|
1420
1437
|
expectTypesMatch(true);
|
|
1421
1438
|
|
|
1422
1439
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
1423
|
-
import { z as
|
|
1424
|
-
var pcb_silkscreen_oval =
|
|
1425
|
-
type:
|
|
1440
|
+
import { z as z71 } from "zod";
|
|
1441
|
+
var pcb_silkscreen_oval = z71.object({
|
|
1442
|
+
type: z71.literal("pcb_silkscreen_oval"),
|
|
1426
1443
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
1427
|
-
pcb_component_id:
|
|
1428
|
-
pcb_group_id:
|
|
1429
|
-
subcircuit_id:
|
|
1444
|
+
pcb_component_id: z71.string(),
|
|
1445
|
+
pcb_group_id: z71.string().optional(),
|
|
1446
|
+
subcircuit_id: z71.string().optional(),
|
|
1430
1447
|
center: point,
|
|
1431
1448
|
radius_x: distance,
|
|
1432
1449
|
radius_y: distance,
|
|
@@ -1435,158 +1452,158 @@ var pcb_silkscreen_oval = z70.object({
|
|
|
1435
1452
|
expectTypesMatch(true);
|
|
1436
1453
|
|
|
1437
1454
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
1438
|
-
import { z as
|
|
1439
|
-
var pcb_fabrication_note_text =
|
|
1440
|
-
type:
|
|
1455
|
+
import { z as z72 } from "zod";
|
|
1456
|
+
var pcb_fabrication_note_text = z72.object({
|
|
1457
|
+
type: z72.literal("pcb_fabrication_note_text"),
|
|
1441
1458
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
1442
1459
|
"pcb_fabrication_note_text"
|
|
1443
1460
|
),
|
|
1444
|
-
subcircuit_id:
|
|
1445
|
-
pcb_group_id:
|
|
1446
|
-
font:
|
|
1461
|
+
subcircuit_id: z72.string().optional(),
|
|
1462
|
+
pcb_group_id: z72.string().optional(),
|
|
1463
|
+
font: z72.literal("tscircuit2024").default("tscircuit2024"),
|
|
1447
1464
|
font_size: distance.default("1mm"),
|
|
1448
|
-
pcb_component_id:
|
|
1449
|
-
text:
|
|
1465
|
+
pcb_component_id: z72.string(),
|
|
1466
|
+
text: z72.string(),
|
|
1450
1467
|
layer: visible_layer,
|
|
1451
1468
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1452
|
-
anchor_alignment:
|
|
1453
|
-
color:
|
|
1469
|
+
anchor_alignment: z72.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
1470
|
+
color: z72.string().optional()
|
|
1454
1471
|
}).describe(
|
|
1455
1472
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
1456
1473
|
);
|
|
1457
1474
|
expectTypesMatch(true);
|
|
1458
1475
|
|
|
1459
1476
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
1460
|
-
import { z as
|
|
1461
|
-
var pcb_fabrication_note_path =
|
|
1462
|
-
type:
|
|
1477
|
+
import { z as z73 } from "zod";
|
|
1478
|
+
var pcb_fabrication_note_path = z73.object({
|
|
1479
|
+
type: z73.literal("pcb_fabrication_note_path"),
|
|
1463
1480
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
1464
1481
|
"pcb_fabrication_note_path"
|
|
1465
1482
|
),
|
|
1466
|
-
pcb_component_id:
|
|
1467
|
-
subcircuit_id:
|
|
1483
|
+
pcb_component_id: z73.string(),
|
|
1484
|
+
subcircuit_id: z73.string().optional(),
|
|
1468
1485
|
layer: layer_ref,
|
|
1469
|
-
route:
|
|
1486
|
+
route: z73.array(point),
|
|
1470
1487
|
stroke_width: length,
|
|
1471
|
-
color:
|
|
1488
|
+
color: z73.string().optional()
|
|
1472
1489
|
}).describe(
|
|
1473
1490
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
1474
1491
|
);
|
|
1475
1492
|
expectTypesMatch(true);
|
|
1476
1493
|
|
|
1477
1494
|
// src/pcb/pcb_keepout.ts
|
|
1478
|
-
import { z as
|
|
1479
|
-
var pcb_keepout =
|
|
1480
|
-
type:
|
|
1481
|
-
shape:
|
|
1482
|
-
pcb_group_id:
|
|
1483
|
-
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(),
|
|
1484
1501
|
center: point,
|
|
1485
1502
|
width: distance,
|
|
1486
1503
|
height: distance,
|
|
1487
|
-
pcb_keepout_id:
|
|
1488
|
-
layers:
|
|
1504
|
+
pcb_keepout_id: z74.string(),
|
|
1505
|
+
layers: z74.array(z74.string()),
|
|
1489
1506
|
// Specify layers where the keepout applies
|
|
1490
|
-
description:
|
|
1507
|
+
description: z74.string().optional()
|
|
1491
1508
|
// Optional description of the keepout
|
|
1492
1509
|
}).or(
|
|
1493
|
-
|
|
1494
|
-
type:
|
|
1495
|
-
shape:
|
|
1496
|
-
pcb_group_id:
|
|
1497
|
-
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(),
|
|
1498
1515
|
center: point,
|
|
1499
1516
|
radius: distance,
|
|
1500
|
-
pcb_keepout_id:
|
|
1501
|
-
layers:
|
|
1517
|
+
pcb_keepout_id: z74.string(),
|
|
1518
|
+
layers: z74.array(z74.string()),
|
|
1502
1519
|
// Specify layers where the keepout applies
|
|
1503
|
-
description:
|
|
1520
|
+
description: z74.string().optional()
|
|
1504
1521
|
// Optional description of the keepout
|
|
1505
1522
|
})
|
|
1506
1523
|
);
|
|
1507
1524
|
|
|
1508
1525
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
1509
|
-
import { z as
|
|
1510
|
-
var pcb_missing_footprint_error =
|
|
1511
|
-
type:
|
|
1526
|
+
import { z as z75 } from "zod";
|
|
1527
|
+
var pcb_missing_footprint_error = z75.object({
|
|
1528
|
+
type: z75.literal("pcb_missing_footprint_error"),
|
|
1512
1529
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
1513
1530
|
"pcb_missing_footprint_error"
|
|
1514
1531
|
),
|
|
1515
|
-
pcb_group_id:
|
|
1516
|
-
subcircuit_id:
|
|
1517
|
-
error_type:
|
|
1518
|
-
source_component_id:
|
|
1519
|
-
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()
|
|
1520
1537
|
}).describe("Defines a missing footprint error on the PCB");
|
|
1521
1538
|
expectTypesMatch(
|
|
1522
1539
|
true
|
|
1523
1540
|
);
|
|
1524
1541
|
|
|
1525
1542
|
// src/pcb/pcb_group.ts
|
|
1526
|
-
import { z as
|
|
1527
|
-
var pcb_group =
|
|
1528
|
-
type:
|
|
1543
|
+
import { z as z76 } from "zod";
|
|
1544
|
+
var pcb_group = z76.object({
|
|
1545
|
+
type: z76.literal("pcb_group"),
|
|
1529
1546
|
pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
|
|
1530
|
-
source_group_id:
|
|
1531
|
-
is_subcircuit:
|
|
1532
|
-
subcircuit_id:
|
|
1547
|
+
source_group_id: z76.string(),
|
|
1548
|
+
is_subcircuit: z76.boolean().optional(),
|
|
1549
|
+
subcircuit_id: z76.string().optional(),
|
|
1533
1550
|
width: length,
|
|
1534
1551
|
height: length,
|
|
1535
1552
|
center: point,
|
|
1536
|
-
pcb_component_ids:
|
|
1537
|
-
name:
|
|
1538
|
-
description:
|
|
1553
|
+
pcb_component_ids: z76.array(z76.string()),
|
|
1554
|
+
name: z76.string().optional(),
|
|
1555
|
+
description: z76.string().optional()
|
|
1539
1556
|
}).describe("Defines a group of components on the PCB");
|
|
1540
1557
|
expectTypesMatch(true);
|
|
1541
1558
|
|
|
1542
1559
|
// src/pcb/pcb_autorouting_error.ts
|
|
1543
|
-
import { z as
|
|
1544
|
-
var pcb_autorouting_error =
|
|
1545
|
-
type:
|
|
1560
|
+
import { z as z77 } from "zod";
|
|
1561
|
+
var pcb_autorouting_error = z77.object({
|
|
1562
|
+
type: z77.literal("pcb_autorouting_error"),
|
|
1546
1563
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
|
|
1547
|
-
message:
|
|
1564
|
+
message: z77.string()
|
|
1548
1565
|
}).describe("The autorouting has failed to route a portion of the board");
|
|
1549
1566
|
expectTypesMatch(true);
|
|
1550
1567
|
|
|
1551
1568
|
// src/pcb/pcb_manual_edit_conflict_warning.ts
|
|
1552
|
-
import { z as
|
|
1553
|
-
var pcb_manual_edit_conflict_warning =
|
|
1554
|
-
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"),
|
|
1555
1572
|
pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
1556
1573
|
"pcb_manual_edit_conflict_warning"
|
|
1557
1574
|
),
|
|
1558
|
-
message:
|
|
1559
|
-
pcb_component_id:
|
|
1560
|
-
pcb_group_id:
|
|
1561
|
-
subcircuit_id:
|
|
1562
|
-
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()
|
|
1563
1580
|
}).describe(
|
|
1564
1581
|
"Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
|
|
1565
1582
|
);
|
|
1566
1583
|
expectTypesMatch(true);
|
|
1567
1584
|
|
|
1568
1585
|
// src/cad/cad_component.ts
|
|
1569
|
-
import { z as
|
|
1570
|
-
var cad_component =
|
|
1571
|
-
type:
|
|
1572
|
-
cad_component_id:
|
|
1573
|
-
pcb_component_id:
|
|
1574
|
-
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(),
|
|
1575
1592
|
position: point3,
|
|
1576
1593
|
rotation: point3.optional(),
|
|
1577
1594
|
size: point3.optional(),
|
|
1578
1595
|
layer: layer_ref.optional(),
|
|
1579
1596
|
// These are all ways to generate/load the 3d model
|
|
1580
|
-
footprinter_string:
|
|
1581
|
-
model_obj_url:
|
|
1582
|
-
model_stl_url:
|
|
1583
|
-
model_3mf_url:
|
|
1584
|
-
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()
|
|
1585
1602
|
}).describe("Defines a component on the PCB");
|
|
1586
1603
|
|
|
1587
1604
|
// src/any_circuit_element.ts
|
|
1588
|
-
import { z as
|
|
1589
|
-
var any_circuit_element =
|
|
1605
|
+
import { z as z80 } from "zod";
|
|
1606
|
+
var any_circuit_element = z80.union([
|
|
1590
1607
|
source_trace,
|
|
1591
1608
|
source_port,
|
|
1592
1609
|
any_source_component,
|
|
@@ -1648,6 +1665,7 @@ var any_circuit_element = z79.union([
|
|
|
1648
1665
|
schematic_debug_object,
|
|
1649
1666
|
schematic_voltage_probe,
|
|
1650
1667
|
schematic_manual_edit_conflict_warning,
|
|
1668
|
+
schematic_group,
|
|
1651
1669
|
cad_component
|
|
1652
1670
|
]);
|
|
1653
1671
|
var any_soup_element = any_circuit_element;
|
|
@@ -1722,6 +1740,7 @@ export {
|
|
|
1722
1740
|
schematic_debug_point,
|
|
1723
1741
|
schematic_debug_rect,
|
|
1724
1742
|
schematic_error,
|
|
1743
|
+
schematic_group,
|
|
1725
1744
|
schematic_line,
|
|
1726
1745
|
schematic_manual_edit_conflict_warning,
|
|
1727
1746
|
schematic_net_label,
|