circuit-json 0.0.214 → 0.0.216

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -948,8 +948,32 @@ var schematic_group = z51.object({
948
948
  }).describe("Defines a group of components on the schematic");
949
949
  expectTypesMatch(true);
950
950
 
951
- // src/pcb/properties/layer_ref.ts
951
+ // src/schematic/schematic_table.ts
952
952
  import { z as z52 } from "zod";
953
+ var schematic_table_cell = z52.object({
954
+ text: z52.string(),
955
+ horizontal_align: z52.enum(["left", "center", "right"]).optional(),
956
+ vertical_align: z52.enum(["top", "middle", "bottom"]).optional(),
957
+ font_size: distance.optional()
958
+ });
959
+ expectTypesMatch(true);
960
+ var schematic_table = z52.object({
961
+ type: z52.literal("schematic_table"),
962
+ schematic_table_id: z52.string(),
963
+ position: point,
964
+ rows: z52.array(z52.array(schematic_table_cell)),
965
+ column_widths: z52.array(distance),
966
+ row_heights: z52.array(distance),
967
+ cell_padding: distance.optional(),
968
+ border_width: distance.optional(),
969
+ subcircuit_id: z52.string().optional(),
970
+ schematic_component_id: z52.string().optional(),
971
+ anchor: ninePointAnchor.optional()
972
+ }).describe("Defines a table on the schematic");
973
+ expectTypesMatch(true);
974
+
975
+ // src/pcb/properties/layer_ref.ts
976
+ import { z as z53 } from "zod";
953
977
  var all_layers = [
954
978
  "top",
955
979
  "bottom",
@@ -960,9 +984,9 @@ var all_layers = [
960
984
  "inner5",
961
985
  "inner6"
962
986
  ];
963
- var layer_string = z52.enum(all_layers);
987
+ var layer_string = z53.enum(all_layers);
964
988
  var layer_ref = layer_string.or(
965
- z52.object({
989
+ z53.object({
966
990
  name: layer_string
967
991
  })
968
992
  ).transform((layer) => {
@@ -972,56 +996,56 @@ var layer_ref = layer_string.or(
972
996
  return layer.name;
973
997
  });
974
998
  expectTypesMatch(true);
975
- var visible_layer = z52.enum(["top", "bottom"]);
999
+ var visible_layer = z53.enum(["top", "bottom"]);
976
1000
 
977
1001
  // src/pcb/properties/pcb_route_hints.ts
978
- import { z as z53 } from "zod";
979
- var pcb_route_hint = z53.object({
1002
+ import { z as z54 } from "zod";
1003
+ var pcb_route_hint = z54.object({
980
1004
  x: distance,
981
1005
  y: distance,
982
- via: z53.boolean().optional(),
1006
+ via: z54.boolean().optional(),
983
1007
  via_to_layer: layer_ref.optional()
984
1008
  });
985
- var pcb_route_hints = z53.array(pcb_route_hint);
1009
+ var pcb_route_hints = z54.array(pcb_route_hint);
986
1010
  expectTypesMatch(true);
987
1011
  expectTypesMatch(true);
988
1012
 
989
1013
  // src/pcb/properties/route_hint_point.ts
990
- import { z as z54 } from "zod";
991
- var route_hint_point = z54.object({
1014
+ import { z as z55 } from "zod";
1015
+ var route_hint_point = z55.object({
992
1016
  x: distance,
993
1017
  y: distance,
994
- via: z54.boolean().optional(),
1018
+ via: z55.boolean().optional(),
995
1019
  to_layer: layer_ref.optional(),
996
1020
  trace_width: distance.optional()
997
1021
  });
998
1022
  expectTypesMatch(true);
999
1023
 
1000
1024
  // src/pcb/pcb_component.ts
1001
- import { z as z55 } from "zod";
1002
- var pcb_component = z55.object({
1003
- type: z55.literal("pcb_component"),
1025
+ import { z as z56 } from "zod";
1026
+ var pcb_component = z56.object({
1027
+ type: z56.literal("pcb_component"),
1004
1028
  pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
1005
- source_component_id: z55.string(),
1029
+ source_component_id: z56.string(),
1006
1030
  center: point,
1007
1031
  layer: layer_ref,
1008
1032
  rotation,
1009
1033
  width: length,
1010
1034
  height: length,
1011
- subcircuit_id: z55.string().optional(),
1012
- pcb_group_id: z55.string().optional()
1035
+ subcircuit_id: z56.string().optional(),
1036
+ pcb_group_id: z56.string().optional()
1013
1037
  }).describe("Defines a component on the PCB");
1014
1038
  expectTypesMatch(true);
1015
1039
 
1016
1040
  // src/pcb/pcb_hole.ts
1017
- import { z as z56 } from "zod";
1018
- var pcb_hole_circle_or_square = z56.object({
1019
- type: z56.literal("pcb_hole"),
1041
+ import { z as z57 } from "zod";
1042
+ var pcb_hole_circle_or_square = z57.object({
1043
+ type: z57.literal("pcb_hole"),
1020
1044
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1021
- pcb_group_id: z56.string().optional(),
1022
- subcircuit_id: z56.string().optional(),
1023
- hole_shape: z56.enum(["circle", "square"]),
1024
- hole_diameter: z56.number(),
1045
+ pcb_group_id: z57.string().optional(),
1046
+ subcircuit_id: z57.string().optional(),
1047
+ hole_shape: z57.enum(["circle", "square"]),
1048
+ hole_diameter: z57.number(),
1025
1049
  x: distance,
1026
1050
  y: distance
1027
1051
  });
@@ -1029,14 +1053,14 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
1029
1053
  "Defines a circular or square hole on the PCB"
1030
1054
  );
1031
1055
  expectTypesMatch(true);
1032
- var pcb_hole_oval = z56.object({
1033
- type: z56.literal("pcb_hole"),
1056
+ var pcb_hole_oval = z57.object({
1057
+ type: z57.literal("pcb_hole"),
1034
1058
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1035
- pcb_group_id: z56.string().optional(),
1036
- subcircuit_id: z56.string().optional(),
1037
- hole_shape: z56.literal("oval"),
1038
- hole_width: z56.number(),
1039
- hole_height: z56.number(),
1059
+ pcb_group_id: z57.string().optional(),
1060
+ subcircuit_id: z57.string().optional(),
1061
+ hole_shape: z57.literal("oval"),
1062
+ hole_width: z57.number(),
1063
+ hole_height: z57.number(),
1040
1064
  x: distance,
1041
1065
  y: distance
1042
1066
  });
@@ -1047,77 +1071,77 @@ expectTypesMatch(true);
1047
1071
  var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
1048
1072
 
1049
1073
  // src/pcb/pcb_plated_hole.ts
1050
- import { z as z57 } from "zod";
1051
- var pcb_plated_hole_circle = z57.object({
1052
- type: z57.literal("pcb_plated_hole"),
1053
- shape: z57.literal("circle"),
1054
- pcb_group_id: z57.string().optional(),
1055
- subcircuit_id: z57.string().optional(),
1056
- outer_diameter: z57.number(),
1057
- hole_diameter: z57.number(),
1074
+ import { z as z58 } from "zod";
1075
+ var pcb_plated_hole_circle = z58.object({
1076
+ type: z58.literal("pcb_plated_hole"),
1077
+ shape: z58.literal("circle"),
1078
+ pcb_group_id: z58.string().optional(),
1079
+ subcircuit_id: z58.string().optional(),
1080
+ outer_diameter: z58.number(),
1081
+ hole_diameter: z58.number(),
1058
1082
  x: distance,
1059
1083
  y: distance,
1060
- layers: z57.array(layer_ref),
1061
- port_hints: z57.array(z57.string()).optional(),
1062
- pcb_component_id: z57.string().optional(),
1063
- pcb_port_id: z57.string().optional(),
1084
+ layers: z58.array(layer_ref),
1085
+ port_hints: z58.array(z58.string()).optional(),
1086
+ pcb_component_id: z58.string().optional(),
1087
+ pcb_port_id: z58.string().optional(),
1064
1088
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1065
1089
  });
1066
- var pcb_plated_hole_oval = z57.object({
1067
- type: z57.literal("pcb_plated_hole"),
1068
- shape: z57.enum(["oval", "pill"]),
1069
- pcb_group_id: z57.string().optional(),
1070
- subcircuit_id: z57.string().optional(),
1071
- outer_width: z57.number(),
1072
- outer_height: z57.number(),
1073
- hole_width: z57.number(),
1074
- hole_height: z57.number(),
1090
+ var pcb_plated_hole_oval = z58.object({
1091
+ type: z58.literal("pcb_plated_hole"),
1092
+ shape: z58.enum(["oval", "pill"]),
1093
+ pcb_group_id: z58.string().optional(),
1094
+ subcircuit_id: z58.string().optional(),
1095
+ outer_width: z58.number(),
1096
+ outer_height: z58.number(),
1097
+ hole_width: z58.number(),
1098
+ hole_height: z58.number(),
1075
1099
  x: distance,
1076
1100
  y: distance,
1077
- layers: z57.array(layer_ref),
1078
- port_hints: z57.array(z57.string()).optional(),
1079
- pcb_component_id: z57.string().optional(),
1080
- pcb_port_id: z57.string().optional(),
1101
+ layers: z58.array(layer_ref),
1102
+ port_hints: z58.array(z58.string()).optional(),
1103
+ pcb_component_id: z58.string().optional(),
1104
+ pcb_port_id: z58.string().optional(),
1081
1105
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1082
1106
  });
1083
- var pcb_circular_hole_with_rect_pad = z57.object({
1084
- type: z57.literal("pcb_plated_hole"),
1085
- shape: z57.literal("circular_hole_with_rect_pad"),
1086
- pcb_group_id: z57.string().optional(),
1087
- subcircuit_id: z57.string().optional(),
1088
- hole_shape: z57.literal("circle"),
1089
- pad_shape: z57.literal("rect"),
1090
- hole_diameter: z57.number(),
1091
- rect_pad_width: z57.number(),
1092
- rect_pad_height: z57.number(),
1107
+ var pcb_circular_hole_with_rect_pad = z58.object({
1108
+ type: z58.literal("pcb_plated_hole"),
1109
+ shape: z58.literal("circular_hole_with_rect_pad"),
1110
+ pcb_group_id: z58.string().optional(),
1111
+ subcircuit_id: z58.string().optional(),
1112
+ hole_shape: z58.literal("circle"),
1113
+ pad_shape: z58.literal("rect"),
1114
+ hole_diameter: z58.number(),
1115
+ rect_pad_width: z58.number(),
1116
+ rect_pad_height: z58.number(),
1093
1117
  x: distance,
1094
1118
  y: distance,
1095
- layers: z57.array(layer_ref),
1096
- port_hints: z57.array(z57.string()).optional(),
1097
- pcb_component_id: z57.string().optional(),
1098
- pcb_port_id: z57.string().optional(),
1119
+ layers: z58.array(layer_ref),
1120
+ port_hints: z58.array(z58.string()).optional(),
1121
+ pcb_component_id: z58.string().optional(),
1122
+ pcb_port_id: z58.string().optional(),
1099
1123
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1100
1124
  });
1101
- var pcb_pill_hole_with_rect_pad = z57.object({
1102
- type: z57.literal("pcb_plated_hole"),
1103
- shape: z57.literal("pill_hole_with_rect_pad"),
1104
- pcb_group_id: z57.string().optional(),
1105
- subcircuit_id: z57.string().optional(),
1106
- hole_shape: z57.literal("pill"),
1107
- pad_shape: z57.literal("rect"),
1108
- hole_width: z57.number(),
1109
- hole_height: z57.number(),
1110
- rect_pad_width: z57.number(),
1111
- rect_pad_height: z57.number(),
1125
+ var pcb_pill_hole_with_rect_pad = z58.object({
1126
+ type: z58.literal("pcb_plated_hole"),
1127
+ shape: z58.literal("pill_hole_with_rect_pad"),
1128
+ pcb_group_id: z58.string().optional(),
1129
+ subcircuit_id: z58.string().optional(),
1130
+ hole_shape: z58.literal("pill"),
1131
+ pad_shape: z58.literal("rect"),
1132
+ hole_width: z58.number(),
1133
+ hole_height: z58.number(),
1134
+ rect_pad_width: z58.number(),
1135
+ rect_pad_height: z58.number(),
1112
1136
  x: distance,
1113
1137
  y: distance,
1114
- layers: z57.array(layer_ref),
1115
- port_hints: z57.array(z57.string()).optional(),
1116
- pcb_component_id: z57.string().optional(),
1117
- pcb_port_id: z57.string().optional(),
1138
+ layers: z58.array(layer_ref),
1139
+ port_hints: z58.array(z58.string()).optional(),
1140
+ pcb_component_id: z58.string().optional(),
1141
+ pcb_port_id: z58.string().optional(),
1118
1142
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1119
1143
  });
1120
- var pcb_plated_hole = z57.union([
1144
+ var pcb_plated_hole = z58.union([
1121
1145
  pcb_plated_hole_circle,
1122
1146
  pcb_plated_hole_oval,
1123
1147
  pcb_circular_hole_with_rect_pad,
@@ -1131,96 +1155,96 @@ expectTypesMatch(true);
1131
1155
  expectTypesMatch(true);
1132
1156
 
1133
1157
  // src/pcb/pcb_port.ts
1134
- import { z as z58 } from "zod";
1135
- var pcb_port = z58.object({
1136
- type: z58.literal("pcb_port"),
1158
+ import { z as z59 } from "zod";
1159
+ var pcb_port = z59.object({
1160
+ type: z59.literal("pcb_port"),
1137
1161
  pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
1138
- pcb_group_id: z58.string().optional(),
1139
- subcircuit_id: z58.string().optional(),
1140
- source_port_id: z58.string(),
1141
- pcb_component_id: z58.string(),
1162
+ pcb_group_id: z59.string().optional(),
1163
+ subcircuit_id: z59.string().optional(),
1164
+ source_port_id: z59.string(),
1165
+ pcb_component_id: z59.string(),
1142
1166
  x: distance,
1143
1167
  y: distance,
1144
- layers: z58.array(layer_ref)
1168
+ layers: z59.array(layer_ref)
1145
1169
  }).describe("Defines a port on the PCB");
1146
1170
  expectTypesMatch(true);
1147
1171
 
1148
1172
  // src/pcb/pcb_smtpad.ts
1149
- import { z as z59 } from "zod";
1150
- var pcb_smtpad_circle = z59.object({
1151
- type: z59.literal("pcb_smtpad"),
1152
- shape: z59.literal("circle"),
1173
+ import { z as z60 } from "zod";
1174
+ var pcb_smtpad_circle = z60.object({
1175
+ type: z60.literal("pcb_smtpad"),
1176
+ shape: z60.literal("circle"),
1153
1177
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1154
- pcb_group_id: z59.string().optional(),
1155
- subcircuit_id: z59.string().optional(),
1178
+ pcb_group_id: z60.string().optional(),
1179
+ subcircuit_id: z60.string().optional(),
1156
1180
  x: distance,
1157
1181
  y: distance,
1158
- radius: z59.number(),
1182
+ radius: z60.number(),
1159
1183
  layer: layer_ref,
1160
- port_hints: z59.array(z59.string()).optional(),
1161
- pcb_component_id: z59.string().optional(),
1162
- pcb_port_id: z59.string().optional()
1184
+ port_hints: z60.array(z60.string()).optional(),
1185
+ pcb_component_id: z60.string().optional(),
1186
+ pcb_port_id: z60.string().optional()
1163
1187
  });
1164
- var pcb_smtpad_rect = z59.object({
1165
- type: z59.literal("pcb_smtpad"),
1166
- shape: z59.literal("rect"),
1188
+ var pcb_smtpad_rect = z60.object({
1189
+ type: z60.literal("pcb_smtpad"),
1190
+ shape: z60.literal("rect"),
1167
1191
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1168
- pcb_group_id: z59.string().optional(),
1169
- subcircuit_id: z59.string().optional(),
1192
+ pcb_group_id: z60.string().optional(),
1193
+ subcircuit_id: z60.string().optional(),
1170
1194
  x: distance,
1171
1195
  y: distance,
1172
- width: z59.number(),
1173
- height: z59.number(),
1196
+ width: z60.number(),
1197
+ height: z60.number(),
1174
1198
  layer: layer_ref,
1175
- port_hints: z59.array(z59.string()).optional(),
1176
- pcb_component_id: z59.string().optional(),
1177
- pcb_port_id: z59.string().optional()
1199
+ port_hints: z60.array(z60.string()).optional(),
1200
+ pcb_component_id: z60.string().optional(),
1201
+ pcb_port_id: z60.string().optional()
1178
1202
  });
1179
- var pcb_smtpad_rotated_rect = z59.object({
1180
- type: z59.literal("pcb_smtpad"),
1181
- shape: z59.literal("rotated_rect"),
1203
+ var pcb_smtpad_rotated_rect = z60.object({
1204
+ type: z60.literal("pcb_smtpad"),
1205
+ shape: z60.literal("rotated_rect"),
1182
1206
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1183
- pcb_group_id: z59.string().optional(),
1184
- subcircuit_id: z59.string().optional(),
1207
+ pcb_group_id: z60.string().optional(),
1208
+ subcircuit_id: z60.string().optional(),
1185
1209
  x: distance,
1186
1210
  y: distance,
1187
- width: z59.number(),
1188
- height: z59.number(),
1211
+ width: z60.number(),
1212
+ height: z60.number(),
1189
1213
  ccw_rotation: rotation,
1190
1214
  layer: layer_ref,
1191
- port_hints: z59.array(z59.string()).optional(),
1192
- pcb_component_id: z59.string().optional(),
1193
- pcb_port_id: z59.string().optional()
1215
+ port_hints: z60.array(z60.string()).optional(),
1216
+ pcb_component_id: z60.string().optional(),
1217
+ pcb_port_id: z60.string().optional()
1194
1218
  });
1195
- var pcb_smtpad_pill = z59.object({
1196
- type: z59.literal("pcb_smtpad"),
1197
- shape: z59.literal("pill"),
1219
+ var pcb_smtpad_pill = z60.object({
1220
+ type: z60.literal("pcb_smtpad"),
1221
+ shape: z60.literal("pill"),
1198
1222
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1199
- pcb_group_id: z59.string().optional(),
1200
- subcircuit_id: z59.string().optional(),
1223
+ pcb_group_id: z60.string().optional(),
1224
+ subcircuit_id: z60.string().optional(),
1201
1225
  x: distance,
1202
1226
  y: distance,
1203
- width: z59.number(),
1204
- height: z59.number(),
1205
- radius: z59.number(),
1227
+ width: z60.number(),
1228
+ height: z60.number(),
1229
+ radius: z60.number(),
1206
1230
  layer: layer_ref,
1207
- port_hints: z59.array(z59.string()).optional(),
1208
- pcb_component_id: z59.string().optional(),
1209
- pcb_port_id: z59.string().optional()
1231
+ port_hints: z60.array(z60.string()).optional(),
1232
+ pcb_component_id: z60.string().optional(),
1233
+ pcb_port_id: z60.string().optional()
1210
1234
  });
1211
- var pcb_smtpad_polygon = z59.object({
1212
- type: z59.literal("pcb_smtpad"),
1213
- shape: z59.literal("polygon"),
1235
+ var pcb_smtpad_polygon = z60.object({
1236
+ type: z60.literal("pcb_smtpad"),
1237
+ shape: z60.literal("polygon"),
1214
1238
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1215
- pcb_group_id: z59.string().optional(),
1216
- subcircuit_id: z59.string().optional(),
1217
- points: z59.array(point),
1239
+ pcb_group_id: z60.string().optional(),
1240
+ subcircuit_id: z60.string().optional(),
1241
+ points: z60.array(point),
1218
1242
  layer: layer_ref,
1219
- port_hints: z59.array(z59.string()).optional(),
1220
- pcb_component_id: z59.string().optional(),
1221
- pcb_port_id: z59.string().optional()
1243
+ port_hints: z60.array(z60.string()).optional(),
1244
+ pcb_component_id: z60.string().optional(),
1245
+ pcb_port_id: z60.string().optional()
1222
1246
  });
1223
- var pcb_smtpad = z59.discriminatedUnion("shape", [
1247
+ var pcb_smtpad = z60.discriminatedUnion("shape", [
1224
1248
  pcb_smtpad_circle,
1225
1249
  pcb_smtpad_rect,
1226
1250
  pcb_smtpad_rotated_rect,
@@ -1234,79 +1258,79 @@ expectTypesMatch(true);
1234
1258
  expectTypesMatch(true);
1235
1259
 
1236
1260
  // src/pcb/pcb_solder_paste.ts
1237
- import { z as z60 } from "zod";
1238
- var pcb_solder_paste_circle = z60.object({
1239
- type: z60.literal("pcb_solder_paste"),
1240
- shape: z60.literal("circle"),
1261
+ import { z as z61 } from "zod";
1262
+ var pcb_solder_paste_circle = z61.object({
1263
+ type: z61.literal("pcb_solder_paste"),
1264
+ shape: z61.literal("circle"),
1241
1265
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1242
- pcb_group_id: z60.string().optional(),
1243
- subcircuit_id: z60.string().optional(),
1266
+ pcb_group_id: z61.string().optional(),
1267
+ subcircuit_id: z61.string().optional(),
1244
1268
  x: distance,
1245
1269
  y: distance,
1246
- radius: z60.number(),
1270
+ radius: z61.number(),
1247
1271
  layer: layer_ref,
1248
- pcb_component_id: z60.string().optional(),
1249
- pcb_smtpad_id: z60.string().optional()
1272
+ pcb_component_id: z61.string().optional(),
1273
+ pcb_smtpad_id: z61.string().optional()
1250
1274
  });
1251
- var pcb_solder_paste_rect = z60.object({
1252
- type: z60.literal("pcb_solder_paste"),
1253
- shape: z60.literal("rect"),
1275
+ var pcb_solder_paste_rect = z61.object({
1276
+ type: z61.literal("pcb_solder_paste"),
1277
+ shape: z61.literal("rect"),
1254
1278
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1255
- pcb_group_id: z60.string().optional(),
1256
- subcircuit_id: z60.string().optional(),
1279
+ pcb_group_id: z61.string().optional(),
1280
+ subcircuit_id: z61.string().optional(),
1257
1281
  x: distance,
1258
1282
  y: distance,
1259
- width: z60.number(),
1260
- height: z60.number(),
1283
+ width: z61.number(),
1284
+ height: z61.number(),
1261
1285
  layer: layer_ref,
1262
- pcb_component_id: z60.string().optional(),
1263
- pcb_smtpad_id: z60.string().optional()
1286
+ pcb_component_id: z61.string().optional(),
1287
+ pcb_smtpad_id: z61.string().optional()
1264
1288
  });
1265
- var pcb_solder_paste_pill = z60.object({
1266
- type: z60.literal("pcb_solder_paste"),
1267
- shape: z60.literal("pill"),
1289
+ var pcb_solder_paste_pill = z61.object({
1290
+ type: z61.literal("pcb_solder_paste"),
1291
+ shape: z61.literal("pill"),
1268
1292
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1269
- pcb_group_id: z60.string().optional(),
1270
- subcircuit_id: z60.string().optional(),
1293
+ pcb_group_id: z61.string().optional(),
1294
+ subcircuit_id: z61.string().optional(),
1271
1295
  x: distance,
1272
1296
  y: distance,
1273
- width: z60.number(),
1274
- height: z60.number(),
1275
- radius: z60.number(),
1297
+ width: z61.number(),
1298
+ height: z61.number(),
1299
+ radius: z61.number(),
1276
1300
  layer: layer_ref,
1277
- pcb_component_id: z60.string().optional(),
1278
- pcb_smtpad_id: z60.string().optional()
1301
+ pcb_component_id: z61.string().optional(),
1302
+ pcb_smtpad_id: z61.string().optional()
1279
1303
  });
1280
- var pcb_solder_paste_rotated_rect = z60.object({
1281
- type: z60.literal("pcb_solder_paste"),
1282
- shape: z60.literal("rotated_rect"),
1304
+ var pcb_solder_paste_rotated_rect = z61.object({
1305
+ type: z61.literal("pcb_solder_paste"),
1306
+ shape: z61.literal("rotated_rect"),
1283
1307
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1284
- pcb_group_id: z60.string().optional(),
1285
- subcircuit_id: z60.string().optional(),
1308
+ pcb_group_id: z61.string().optional(),
1309
+ subcircuit_id: z61.string().optional(),
1286
1310
  x: distance,
1287
1311
  y: distance,
1288
- width: z60.number(),
1289
- height: z60.number(),
1312
+ width: z61.number(),
1313
+ height: z61.number(),
1290
1314
  ccw_rotation: distance,
1291
1315
  layer: layer_ref,
1292
- pcb_component_id: z60.string().optional(),
1293
- pcb_smtpad_id: z60.string().optional()
1316
+ pcb_component_id: z61.string().optional(),
1317
+ pcb_smtpad_id: z61.string().optional()
1294
1318
  });
1295
- var pcb_solder_paste_oval = z60.object({
1296
- type: z60.literal("pcb_solder_paste"),
1297
- shape: z60.literal("oval"),
1319
+ var pcb_solder_paste_oval = z61.object({
1320
+ type: z61.literal("pcb_solder_paste"),
1321
+ shape: z61.literal("oval"),
1298
1322
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1299
- pcb_group_id: z60.string().optional(),
1300
- subcircuit_id: z60.string().optional(),
1323
+ pcb_group_id: z61.string().optional(),
1324
+ subcircuit_id: z61.string().optional(),
1301
1325
  x: distance,
1302
1326
  y: distance,
1303
- width: z60.number(),
1304
- height: z60.number(),
1327
+ width: z61.number(),
1328
+ height: z61.number(),
1305
1329
  layer: layer_ref,
1306
- pcb_component_id: z60.string().optional(),
1307
- pcb_smtpad_id: z60.string().optional()
1330
+ pcb_component_id: z61.string().optional(),
1331
+ pcb_smtpad_id: z61.string().optional()
1308
1332
  });
1309
- var pcb_solder_paste = z60.union([
1333
+ var pcb_solder_paste = z61.union([
1310
1334
  pcb_solder_paste_circle,
1311
1335
  pcb_solder_paste_rect,
1312
1336
  pcb_solder_paste_pill,
@@ -1322,98 +1346,98 @@ expectTypesMatch(
1322
1346
  expectTypesMatch(true);
1323
1347
 
1324
1348
  // src/pcb/pcb_text.ts
1325
- import { z as z61 } from "zod";
1326
- var pcb_text = z61.object({
1327
- type: z61.literal("pcb_text"),
1349
+ import { z as z62 } from "zod";
1350
+ var pcb_text = z62.object({
1351
+ type: z62.literal("pcb_text"),
1328
1352
  pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
1329
- pcb_group_id: z61.string().optional(),
1330
- subcircuit_id: z61.string().optional(),
1331
- text: z61.string(),
1353
+ pcb_group_id: z62.string().optional(),
1354
+ subcircuit_id: z62.string().optional(),
1355
+ text: z62.string(),
1332
1356
  center: point,
1333
1357
  layer: layer_ref,
1334
1358
  width: length,
1335
1359
  height: length,
1336
- lines: z61.number(),
1360
+ lines: z62.number(),
1337
1361
  // @ts-ignore
1338
- align: z61.enum(["bottom-left"])
1362
+ align: z62.enum(["bottom-left"])
1339
1363
  }).describe("Defines text on the PCB");
1340
1364
  expectTypesMatch(true);
1341
1365
 
1342
1366
  // src/pcb/pcb_trace.ts
1343
- import { z as z62 } from "zod";
1344
- var pcb_trace_route_point_wire = z62.object({
1345
- route_type: z62.literal("wire"),
1367
+ import { z as z63 } from "zod";
1368
+ var pcb_trace_route_point_wire = z63.object({
1369
+ route_type: z63.literal("wire"),
1346
1370
  x: distance,
1347
1371
  y: distance,
1348
1372
  width: distance,
1349
- start_pcb_port_id: z62.string().optional(),
1350
- end_pcb_port_id: z62.string().optional(),
1373
+ start_pcb_port_id: z63.string().optional(),
1374
+ end_pcb_port_id: z63.string().optional(),
1351
1375
  layer: layer_ref
1352
1376
  });
1353
- var pcb_trace_route_point_via = z62.object({
1354
- route_type: z62.literal("via"),
1377
+ var pcb_trace_route_point_via = z63.object({
1378
+ route_type: z63.literal("via"),
1355
1379
  x: distance,
1356
1380
  y: distance,
1357
1381
  hole_diameter: distance.optional(),
1358
1382
  outer_diameter: distance.optional(),
1359
- from_layer: z62.string(),
1360
- to_layer: z62.string()
1383
+ from_layer: z63.string(),
1384
+ to_layer: z63.string()
1361
1385
  });
1362
- var pcb_trace_route_point = z62.union([
1386
+ var pcb_trace_route_point = z63.union([
1363
1387
  pcb_trace_route_point_wire,
1364
1388
  pcb_trace_route_point_via
1365
1389
  ]);
1366
- var pcb_trace = z62.object({
1367
- type: z62.literal("pcb_trace"),
1368
- source_trace_id: z62.string().optional(),
1369
- pcb_component_id: z62.string().optional(),
1390
+ var pcb_trace = z63.object({
1391
+ type: z63.literal("pcb_trace"),
1392
+ source_trace_id: z63.string().optional(),
1393
+ pcb_component_id: z63.string().optional(),
1370
1394
  pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
1371
- pcb_group_id: z62.string().optional(),
1372
- subcircuit_id: z62.string().optional(),
1373
- route_thickness_mode: z62.enum(["constant", "interpolated"]).default("constant").optional(),
1374
- route_order_index: z62.number().optional(),
1375
- should_round_corners: z62.boolean().optional(),
1376
- trace_length: z62.number().optional(),
1377
- route: z62.array(pcb_trace_route_point)
1395
+ pcb_group_id: z63.string().optional(),
1396
+ subcircuit_id: z63.string().optional(),
1397
+ route_thickness_mode: z63.enum(["constant", "interpolated"]).default("constant").optional(),
1398
+ route_order_index: z63.number().optional(),
1399
+ should_round_corners: z63.boolean().optional(),
1400
+ trace_length: z63.number().optional(),
1401
+ route: z63.array(pcb_trace_route_point)
1378
1402
  }).describe("Defines a trace on the PCB");
1379
1403
  expectTypesMatch(true);
1380
1404
  expectTypesMatch(true);
1381
1405
 
1382
1406
  // src/pcb/pcb_trace_error.ts
1383
- import { z as z63 } from "zod";
1384
- var pcb_trace_error = z63.object({
1385
- type: z63.literal("pcb_trace_error"),
1407
+ import { z as z64 } from "zod";
1408
+ var pcb_trace_error = z64.object({
1409
+ type: z64.literal("pcb_trace_error"),
1386
1410
  pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
1387
- error_type: z63.literal("pcb_trace_error").default("pcb_trace_error"),
1388
- message: z63.string(),
1411
+ error_type: z64.literal("pcb_trace_error").default("pcb_trace_error"),
1412
+ message: z64.string(),
1389
1413
  center: point.optional(),
1390
- pcb_trace_id: z63.string(),
1391
- source_trace_id: z63.string(),
1392
- pcb_component_ids: z63.array(z63.string()),
1393
- pcb_port_ids: z63.array(z63.string()),
1394
- subcircuit_id: z63.string().optional()
1414
+ pcb_trace_id: z64.string(),
1415
+ source_trace_id: z64.string(),
1416
+ pcb_component_ids: z64.array(z64.string()),
1417
+ pcb_port_ids: z64.array(z64.string()),
1418
+ subcircuit_id: z64.string().optional()
1395
1419
  }).describe("Defines a trace error on the PCB");
1396
1420
  expectTypesMatch(true);
1397
1421
 
1398
1422
  // src/pcb/pcb_port_not_matched_error.ts
1399
- import { z as z64 } from "zod";
1400
- var pcb_port_not_matched_error = z64.object({
1401
- type: z64.literal("pcb_port_not_matched_error"),
1423
+ import { z as z65 } from "zod";
1424
+ var pcb_port_not_matched_error = z65.object({
1425
+ type: z65.literal("pcb_port_not_matched_error"),
1402
1426
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
1403
- error_type: z64.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
1404
- message: z64.string(),
1405
- pcb_component_ids: z64.array(z64.string()),
1406
- subcircuit_id: z64.string().optional()
1427
+ error_type: z65.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
1428
+ message: z65.string(),
1429
+ pcb_component_ids: z65.array(z65.string()),
1430
+ subcircuit_id: z65.string().optional()
1407
1431
  }).describe("Defines a trace error on the PCB where a port is not matched");
1408
1432
  expectTypesMatch(true);
1409
1433
 
1410
1434
  // src/pcb/pcb_via.ts
1411
- import { z as z65 } from "zod";
1412
- var pcb_via = z65.object({
1413
- type: z65.literal("pcb_via"),
1435
+ import { z as z66 } from "zod";
1436
+ var pcb_via = z66.object({
1437
+ type: z66.literal("pcb_via"),
1414
1438
  pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
1415
- pcb_group_id: z65.string().optional(),
1416
- subcircuit_id: z65.string().optional(),
1439
+ pcb_group_id: z66.string().optional(),
1440
+ subcircuit_id: z66.string().optional(),
1417
1441
  x: distance,
1418
1442
  y: distance,
1419
1443
  outer_diameter: distance.default("0.6mm"),
@@ -1422,59 +1446,59 @@ var pcb_via = z65.object({
1422
1446
  from_layer: layer_ref.optional(),
1423
1447
  /** @deprecated */
1424
1448
  to_layer: layer_ref.optional(),
1425
- layers: z65.array(layer_ref),
1426
- pcb_trace_id: z65.string().optional()
1449
+ layers: z66.array(layer_ref),
1450
+ pcb_trace_id: z66.string().optional()
1427
1451
  }).describe("Defines a via on the PCB");
1428
1452
  expectTypesMatch(true);
1429
1453
 
1430
1454
  // src/pcb/pcb_board.ts
1431
- import { z as z66 } from "zod";
1432
- var pcb_board = z66.object({
1433
- type: z66.literal("pcb_board"),
1455
+ import { z as z67 } from "zod";
1456
+ var pcb_board = z67.object({
1457
+ type: z67.literal("pcb_board"),
1434
1458
  pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
1435
- is_subcircuit: z66.boolean().optional(),
1436
- subcircuit_id: z66.string().optional(),
1459
+ is_subcircuit: z67.boolean().optional(),
1460
+ subcircuit_id: z67.string().optional(),
1437
1461
  width: length,
1438
1462
  height: length,
1439
1463
  center: point,
1440
1464
  thickness: length.optional().default(1.4),
1441
- num_layers: z66.number().optional().default(4),
1442
- outline: z66.array(point).optional(),
1443
- material: z66.enum(["fr4", "fr1"]).default("fr4")
1465
+ num_layers: z67.number().optional().default(4),
1466
+ outline: z67.array(point).optional(),
1467
+ material: z67.enum(["fr4", "fr1"]).default("fr4")
1444
1468
  }).describe("Defines the board outline of the PCB");
1445
1469
  expectTypesMatch(true);
1446
1470
 
1447
1471
  // src/pcb/pcb_placement_error.ts
1448
- import { z as z67 } from "zod";
1449
- var pcb_placement_error = z67.object({
1450
- type: z67.literal("pcb_placement_error"),
1472
+ import { z as z68 } from "zod";
1473
+ var pcb_placement_error = z68.object({
1474
+ type: z68.literal("pcb_placement_error"),
1451
1475
  pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
1452
- error_type: z67.literal("pcb_placement_error").default("pcb_placement_error"),
1453
- message: z67.string(),
1454
- subcircuit_id: z67.string().optional()
1476
+ error_type: z68.literal("pcb_placement_error").default("pcb_placement_error"),
1477
+ message: z68.string(),
1478
+ subcircuit_id: z68.string().optional()
1455
1479
  }).describe("Defines a placement error on the PCB");
1456
1480
  expectTypesMatch(true);
1457
1481
 
1458
1482
  // src/pcb/pcb_trace_hint.ts
1459
- import { z as z68 } from "zod";
1460
- var pcb_trace_hint = z68.object({
1461
- type: z68.literal("pcb_trace_hint"),
1483
+ import { z as z69 } from "zod";
1484
+ var pcb_trace_hint = z69.object({
1485
+ type: z69.literal("pcb_trace_hint"),
1462
1486
  pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
1463
- pcb_port_id: z68.string(),
1464
- pcb_component_id: z68.string(),
1465
- route: z68.array(route_hint_point),
1466
- subcircuit_id: z68.string().optional()
1487
+ pcb_port_id: z69.string(),
1488
+ pcb_component_id: z69.string(),
1489
+ route: z69.array(route_hint_point),
1490
+ subcircuit_id: z69.string().optional()
1467
1491
  }).describe("A hint that can be used during generation of a PCB trace");
1468
1492
  expectTypesMatch(true);
1469
1493
 
1470
1494
  // src/pcb/pcb_silkscreen_line.ts
1471
- import { z as z69 } from "zod";
1472
- var pcb_silkscreen_line = z69.object({
1473
- type: z69.literal("pcb_silkscreen_line"),
1495
+ import { z as z70 } from "zod";
1496
+ var pcb_silkscreen_line = z70.object({
1497
+ type: z70.literal("pcb_silkscreen_line"),
1474
1498
  pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
1475
- pcb_component_id: z69.string(),
1476
- pcb_group_id: z69.string().optional(),
1477
- subcircuit_id: z69.string().optional(),
1499
+ pcb_component_id: z70.string(),
1500
+ pcb_group_id: z70.string().optional(),
1501
+ subcircuit_id: z70.string().optional(),
1478
1502
  stroke_width: distance.default("0.1mm"),
1479
1503
  x1: distance,
1480
1504
  y1: distance,
@@ -1485,67 +1509,67 @@ var pcb_silkscreen_line = z69.object({
1485
1509
  expectTypesMatch(true);
1486
1510
 
1487
1511
  // src/pcb/pcb_silkscreen_path.ts
1488
- import { z as z70 } from "zod";
1489
- var pcb_silkscreen_path = z70.object({
1490
- type: z70.literal("pcb_silkscreen_path"),
1512
+ import { z as z71 } from "zod";
1513
+ var pcb_silkscreen_path = z71.object({
1514
+ type: z71.literal("pcb_silkscreen_path"),
1491
1515
  pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
1492
- pcb_component_id: z70.string(),
1493
- pcb_group_id: z70.string().optional(),
1494
- subcircuit_id: z70.string().optional(),
1516
+ pcb_component_id: z71.string(),
1517
+ pcb_group_id: z71.string().optional(),
1518
+ subcircuit_id: z71.string().optional(),
1495
1519
  layer: visible_layer,
1496
- route: z70.array(point),
1520
+ route: z71.array(point),
1497
1521
  stroke_width: length
1498
1522
  }).describe("Defines a silkscreen path on the PCB");
1499
1523
  expectTypesMatch(true);
1500
1524
 
1501
1525
  // src/pcb/pcb_silkscreen_text.ts
1502
- import { z as z71 } from "zod";
1503
- var pcb_silkscreen_text = z71.object({
1504
- type: z71.literal("pcb_silkscreen_text"),
1526
+ import { z as z72 } from "zod";
1527
+ var pcb_silkscreen_text = z72.object({
1528
+ type: z72.literal("pcb_silkscreen_text"),
1505
1529
  pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
1506
- pcb_group_id: z71.string().optional(),
1507
- subcircuit_id: z71.string().optional(),
1508
- font: z71.literal("tscircuit2024").default("tscircuit2024"),
1530
+ pcb_group_id: z72.string().optional(),
1531
+ subcircuit_id: z72.string().optional(),
1532
+ font: z72.literal("tscircuit2024").default("tscircuit2024"),
1509
1533
  font_size: distance.default("0.2mm"),
1510
- pcb_component_id: z71.string(),
1511
- text: z71.string(),
1512
- ccw_rotation: z71.number().optional(),
1534
+ pcb_component_id: z72.string(),
1535
+ text: z72.string(),
1536
+ ccw_rotation: z72.number().optional(),
1513
1537
  layer: layer_ref,
1514
- is_mirrored: z71.boolean().default(false).optional(),
1538
+ is_mirrored: z72.boolean().default(false).optional(),
1515
1539
  anchor_position: point.default({ x: 0, y: 0 }),
1516
1540
  anchor_alignment: ninePointAnchor.default("center")
1517
1541
  }).describe("Defines silkscreen text on the PCB");
1518
1542
  expectTypesMatch(true);
1519
1543
 
1520
1544
  // src/pcb/pcb_silkscreen_rect.ts
1521
- import { z as z72 } from "zod";
1522
- var pcb_silkscreen_rect = z72.object({
1523
- type: z72.literal("pcb_silkscreen_rect"),
1545
+ import { z as z73 } from "zod";
1546
+ var pcb_silkscreen_rect = z73.object({
1547
+ type: z73.literal("pcb_silkscreen_rect"),
1524
1548
  pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
1525
- pcb_component_id: z72.string(),
1526
- pcb_group_id: z72.string().optional(),
1527
- subcircuit_id: z72.string().optional(),
1549
+ pcb_component_id: z73.string(),
1550
+ pcb_group_id: z73.string().optional(),
1551
+ subcircuit_id: z73.string().optional(),
1528
1552
  center: point,
1529
1553
  width: length,
1530
1554
  height: length,
1531
1555
  layer: layer_ref,
1532
1556
  stroke_width: length.default("1mm"),
1533
- is_filled: z72.boolean().default(true).optional(),
1534
- has_stroke: z72.boolean().optional(),
1535
- is_stroke_dashed: z72.boolean().optional()
1557
+ is_filled: z73.boolean().default(true).optional(),
1558
+ has_stroke: z73.boolean().optional(),
1559
+ is_stroke_dashed: z73.boolean().optional()
1536
1560
  }).describe("Defines a silkscreen rect on the PCB");
1537
1561
  expectTypesMatch(true);
1538
1562
 
1539
1563
  // src/pcb/pcb_silkscreen_circle.ts
1540
- import { z as z73 } from "zod";
1541
- var pcb_silkscreen_circle = z73.object({
1542
- type: z73.literal("pcb_silkscreen_circle"),
1564
+ import { z as z74 } from "zod";
1565
+ var pcb_silkscreen_circle = z74.object({
1566
+ type: z74.literal("pcb_silkscreen_circle"),
1543
1567
  pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
1544
1568
  "pcb_silkscreen_circle"
1545
1569
  ),
1546
- pcb_component_id: z73.string(),
1547
- pcb_group_id: z73.string().optional(),
1548
- subcircuit_id: z73.string().optional(),
1570
+ pcb_component_id: z74.string(),
1571
+ pcb_group_id: z74.string().optional(),
1572
+ subcircuit_id: z74.string().optional(),
1549
1573
  center: point,
1550
1574
  radius: length,
1551
1575
  layer: visible_layer,
@@ -1554,13 +1578,13 @@ var pcb_silkscreen_circle = z73.object({
1554
1578
  expectTypesMatch(true);
1555
1579
 
1556
1580
  // src/pcb/pcb_silkscreen_oval.ts
1557
- import { z as z74 } from "zod";
1558
- var pcb_silkscreen_oval = z74.object({
1559
- type: z74.literal("pcb_silkscreen_oval"),
1581
+ import { z as z75 } from "zod";
1582
+ var pcb_silkscreen_oval = z75.object({
1583
+ type: z75.literal("pcb_silkscreen_oval"),
1560
1584
  pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
1561
- pcb_component_id: z74.string(),
1562
- pcb_group_id: z74.string().optional(),
1563
- subcircuit_id: z74.string().optional(),
1585
+ pcb_component_id: z75.string(),
1586
+ pcb_group_id: z75.string().optional(),
1587
+ subcircuit_id: z75.string().optional(),
1564
1588
  center: point,
1565
1589
  radius_x: distance,
1566
1590
  radius_y: distance,
@@ -1569,87 +1593,87 @@ var pcb_silkscreen_oval = z74.object({
1569
1593
  expectTypesMatch(true);
1570
1594
 
1571
1595
  // src/pcb/pcb_fabrication_note_text.ts
1572
- import { z as z75 } from "zod";
1573
- var pcb_fabrication_note_text = z75.object({
1574
- type: z75.literal("pcb_fabrication_note_text"),
1596
+ import { z as z76 } from "zod";
1597
+ var pcb_fabrication_note_text = z76.object({
1598
+ type: z76.literal("pcb_fabrication_note_text"),
1575
1599
  pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
1576
1600
  "pcb_fabrication_note_text"
1577
1601
  ),
1578
- subcircuit_id: z75.string().optional(),
1579
- pcb_group_id: z75.string().optional(),
1580
- font: z75.literal("tscircuit2024").default("tscircuit2024"),
1602
+ subcircuit_id: z76.string().optional(),
1603
+ pcb_group_id: z76.string().optional(),
1604
+ font: z76.literal("tscircuit2024").default("tscircuit2024"),
1581
1605
  font_size: distance.default("1mm"),
1582
- pcb_component_id: z75.string(),
1583
- text: z75.string(),
1606
+ pcb_component_id: z76.string(),
1607
+ text: z76.string(),
1584
1608
  layer: visible_layer,
1585
1609
  anchor_position: point.default({ x: 0, y: 0 }),
1586
- anchor_alignment: z75.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
1587
- color: z75.string().optional()
1610
+ anchor_alignment: z76.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
1611
+ color: z76.string().optional()
1588
1612
  }).describe(
1589
1613
  "Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
1590
1614
  );
1591
1615
  expectTypesMatch(true);
1592
1616
 
1593
1617
  // src/pcb/pcb_fabrication_note_path.ts
1594
- import { z as z76 } from "zod";
1595
- var pcb_fabrication_note_path = z76.object({
1596
- type: z76.literal("pcb_fabrication_note_path"),
1618
+ import { z as z77 } from "zod";
1619
+ var pcb_fabrication_note_path = z77.object({
1620
+ type: z77.literal("pcb_fabrication_note_path"),
1597
1621
  pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
1598
1622
  "pcb_fabrication_note_path"
1599
1623
  ),
1600
- pcb_component_id: z76.string(),
1601
- subcircuit_id: z76.string().optional(),
1624
+ pcb_component_id: z77.string(),
1625
+ subcircuit_id: z77.string().optional(),
1602
1626
  layer: layer_ref,
1603
- route: z76.array(point),
1627
+ route: z77.array(point),
1604
1628
  stroke_width: length,
1605
- color: z76.string().optional()
1629
+ color: z77.string().optional()
1606
1630
  }).describe(
1607
1631
  "Defines a fabrication path on the PCB for fabricators or assemblers"
1608
1632
  );
1609
1633
  expectTypesMatch(true);
1610
1634
 
1611
1635
  // src/pcb/pcb_keepout.ts
1612
- import { z as z77 } from "zod";
1613
- var pcb_keepout = z77.object({
1614
- type: z77.literal("pcb_keepout"),
1615
- shape: z77.literal("rect"),
1616
- pcb_group_id: z77.string().optional(),
1617
- subcircuit_id: z77.string().optional(),
1636
+ import { z as z78 } from "zod";
1637
+ var pcb_keepout = z78.object({
1638
+ type: z78.literal("pcb_keepout"),
1639
+ shape: z78.literal("rect"),
1640
+ pcb_group_id: z78.string().optional(),
1641
+ subcircuit_id: z78.string().optional(),
1618
1642
  center: point,
1619
1643
  width: distance,
1620
1644
  height: distance,
1621
- pcb_keepout_id: z77.string(),
1622
- layers: z77.array(z77.string()),
1645
+ pcb_keepout_id: z78.string(),
1646
+ layers: z78.array(z78.string()),
1623
1647
  // Specify layers where the keepout applies
1624
- description: z77.string().optional()
1648
+ description: z78.string().optional()
1625
1649
  // Optional description of the keepout
1626
1650
  }).or(
1627
- z77.object({
1628
- type: z77.literal("pcb_keepout"),
1629
- shape: z77.literal("circle"),
1630
- pcb_group_id: z77.string().optional(),
1631
- subcircuit_id: z77.string().optional(),
1651
+ z78.object({
1652
+ type: z78.literal("pcb_keepout"),
1653
+ shape: z78.literal("circle"),
1654
+ pcb_group_id: z78.string().optional(),
1655
+ subcircuit_id: z78.string().optional(),
1632
1656
  center: point,
1633
1657
  radius: distance,
1634
- pcb_keepout_id: z77.string(),
1635
- layers: z77.array(z77.string()),
1658
+ pcb_keepout_id: z78.string(),
1659
+ layers: z78.array(z78.string()),
1636
1660
  // Specify layers where the keepout applies
1637
- description: z77.string().optional()
1661
+ description: z78.string().optional()
1638
1662
  // Optional description of the keepout
1639
1663
  })
1640
1664
  );
1641
1665
  expectTypesMatch(true);
1642
1666
 
1643
1667
  // src/pcb/pcb_cutout.ts
1644
- import { z as z78 } from "zod";
1645
- var pcb_cutout_base = z78.object({
1646
- type: z78.literal("pcb_cutout"),
1668
+ import { z as z79 } from "zod";
1669
+ var pcb_cutout_base = z79.object({
1670
+ type: z79.literal("pcb_cutout"),
1647
1671
  pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
1648
- pcb_group_id: z78.string().optional(),
1649
- subcircuit_id: z78.string().optional()
1672
+ pcb_group_id: z79.string().optional(),
1673
+ subcircuit_id: z79.string().optional()
1650
1674
  });
1651
1675
  var pcb_cutout_rect = pcb_cutout_base.extend({
1652
- shape: z78.literal("rect"),
1676
+ shape: z79.literal("rect"),
1653
1677
  center: point,
1654
1678
  width: length,
1655
1679
  height: length,
@@ -1657,17 +1681,17 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
1657
1681
  });
1658
1682
  expectTypesMatch(true);
1659
1683
  var pcb_cutout_circle = pcb_cutout_base.extend({
1660
- shape: z78.literal("circle"),
1684
+ shape: z79.literal("circle"),
1661
1685
  center: point,
1662
1686
  radius: length
1663
1687
  });
1664
1688
  expectTypesMatch(true);
1665
1689
  var pcb_cutout_polygon = pcb_cutout_base.extend({
1666
- shape: z78.literal("polygon"),
1667
- points: z78.array(point)
1690
+ shape: z79.literal("polygon"),
1691
+ points: z79.array(point)
1668
1692
  });
1669
1693
  expectTypesMatch(true);
1670
- var pcb_cutout = z78.discriminatedUnion("shape", [
1694
+ var pcb_cutout = z79.discriminatedUnion("shape", [
1671
1695
  pcb_cutout_rect,
1672
1696
  pcb_cutout_circle,
1673
1697
  pcb_cutout_polygon
@@ -1675,78 +1699,82 @@ var pcb_cutout = z78.discriminatedUnion("shape", [
1675
1699
  expectTypesMatch(true);
1676
1700
 
1677
1701
  // src/pcb/pcb_missing_footprint_error.ts
1678
- import { z as z79 } from "zod";
1679
- var pcb_missing_footprint_error = z79.object({
1680
- type: z79.literal("pcb_missing_footprint_error"),
1702
+ import { z as z80 } from "zod";
1703
+ var pcb_missing_footprint_error = z80.object({
1704
+ type: z80.literal("pcb_missing_footprint_error"),
1681
1705
  pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
1682
1706
  "pcb_missing_footprint_error"
1683
1707
  ),
1684
- pcb_group_id: z79.string().optional(),
1685
- subcircuit_id: z79.string().optional(),
1686
- error_type: z79.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
1687
- source_component_id: z79.string(),
1688
- message: z79.string()
1708
+ pcb_group_id: z80.string().optional(),
1709
+ subcircuit_id: z80.string().optional(),
1710
+ error_type: z80.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
1711
+ source_component_id: z80.string(),
1712
+ message: z80.string()
1689
1713
  }).describe("Defines a missing footprint error on the PCB");
1690
1714
  expectTypesMatch(
1691
1715
  true
1692
1716
  );
1693
1717
 
1694
1718
  // src/pcb/pcb_group.ts
1695
- import { z as z80 } from "zod";
1696
- var pcb_group = z80.object({
1697
- type: z80.literal("pcb_group"),
1719
+ import { z as z81 } from "zod";
1720
+ var pcb_group = z81.object({
1721
+ type: z81.literal("pcb_group"),
1698
1722
  pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
1699
- source_group_id: z80.string(),
1700
- is_subcircuit: z80.boolean().optional(),
1701
- subcircuit_id: z80.string().optional(),
1723
+ source_group_id: z81.string(),
1724
+ is_subcircuit: z81.boolean().optional(),
1725
+ subcircuit_id: z81.string().optional(),
1702
1726
  width: length,
1703
1727
  height: length,
1704
1728
  center: point,
1705
- pcb_component_ids: z80.array(z80.string()),
1706
- name: z80.string().optional(),
1707
- description: z80.string().optional()
1729
+ pcb_component_ids: z81.array(z81.string()),
1730
+ name: z81.string().optional(),
1731
+ description: z81.string().optional(),
1732
+ autorouter_configuration: z81.object({
1733
+ trace_clearance: length
1734
+ }).optional(),
1735
+ autorouter_used_string: z81.string().optional()
1708
1736
  }).describe("Defines a group of components on the PCB");
1709
1737
  expectTypesMatch(true);
1710
1738
 
1711
1739
  // src/pcb/pcb_autorouting_error.ts
1712
- import { z as z81 } from "zod";
1713
- var pcb_autorouting_error = z81.object({
1714
- type: z81.literal("pcb_autorouting_error"),
1740
+ import { z as z82 } from "zod";
1741
+ var pcb_autorouting_error = z82.object({
1742
+ type: z82.literal("pcb_autorouting_error"),
1715
1743
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
1716
- error_type: z81.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
1717
- message: z81.string(),
1718
- subcircuit_id: z81.string().optional()
1744
+ error_type: z82.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
1745
+ message: z82.string(),
1746
+ subcircuit_id: z82.string().optional()
1719
1747
  }).describe("The autorouting has failed to route a portion of the board");
1720
1748
  expectTypesMatch(true);
1721
1749
 
1722
1750
  // src/pcb/pcb_manual_edit_conflict_warning.ts
1723
- import { z as z82 } from "zod";
1724
- var pcb_manual_edit_conflict_warning = z82.object({
1725
- type: z82.literal("pcb_manual_edit_conflict_warning"),
1751
+ import { z as z83 } from "zod";
1752
+ var pcb_manual_edit_conflict_warning = z83.object({
1753
+ type: z83.literal("pcb_manual_edit_conflict_warning"),
1726
1754
  pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
1727
1755
  "pcb_manual_edit_conflict_warning"
1728
1756
  ),
1729
- warning_type: z82.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
1730
- message: z82.string(),
1731
- pcb_component_id: z82.string(),
1732
- pcb_group_id: z82.string().optional(),
1733
- subcircuit_id: z82.string().optional(),
1734
- source_component_id: z82.string()
1757
+ warning_type: z83.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
1758
+ message: z83.string(),
1759
+ pcb_component_id: z83.string(),
1760
+ pcb_group_id: z83.string().optional(),
1761
+ subcircuit_id: z83.string().optional(),
1762
+ source_component_id: z83.string()
1735
1763
  }).describe(
1736
1764
  "Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
1737
1765
  );
1738
1766
  expectTypesMatch(true);
1739
1767
 
1740
1768
  // src/pcb/pcb_breakout_point.ts
1741
- import { z as z83 } from "zod";
1742
- var pcb_breakout_point = z83.object({
1743
- type: z83.literal("pcb_breakout_point"),
1769
+ import { z as z84 } from "zod";
1770
+ var pcb_breakout_point = z84.object({
1771
+ type: z84.literal("pcb_breakout_point"),
1744
1772
  pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
1745
- pcb_group_id: z83.string(),
1746
- subcircuit_id: z83.string().optional(),
1747
- source_trace_id: z83.string().optional(),
1748
- source_port_id: z83.string().optional(),
1749
- source_net_id: z83.string().optional(),
1773
+ pcb_group_id: z84.string(),
1774
+ subcircuit_id: z84.string().optional(),
1775
+ source_trace_id: z84.string().optional(),
1776
+ source_port_id: z84.string().optional(),
1777
+ source_net_id: z84.string().optional(),
1750
1778
  x: distance,
1751
1779
  y: distance
1752
1780
  }).describe(
@@ -1755,72 +1783,72 @@ var pcb_breakout_point = z83.object({
1755
1783
  expectTypesMatch(true);
1756
1784
 
1757
1785
  // src/pcb/pcb_ground_plane.ts
1758
- import { z as z84 } from "zod";
1759
- var pcb_ground_plane = z84.object({
1760
- type: z84.literal("pcb_ground_plane"),
1786
+ import { z as z85 } from "zod";
1787
+ var pcb_ground_plane = z85.object({
1788
+ type: z85.literal("pcb_ground_plane"),
1761
1789
  pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
1762
- source_pcb_ground_plane_id: z84.string(),
1763
- source_net_id: z84.string(),
1764
- pcb_group_id: z84.string().optional(),
1765
- subcircuit_id: z84.string().optional()
1790
+ source_pcb_ground_plane_id: z85.string(),
1791
+ source_net_id: z85.string(),
1792
+ pcb_group_id: z85.string().optional(),
1793
+ subcircuit_id: z85.string().optional()
1766
1794
  }).describe("Defines a ground plane on the PCB");
1767
1795
  expectTypesMatch(true);
1768
1796
 
1769
1797
  // src/pcb/pcb_ground_plane_region.ts
1770
- import { z as z85 } from "zod";
1771
- var pcb_ground_plane_region = z85.object({
1772
- type: z85.literal("pcb_ground_plane_region"),
1798
+ import { z as z86 } from "zod";
1799
+ var pcb_ground_plane_region = z86.object({
1800
+ type: z86.literal("pcb_ground_plane_region"),
1773
1801
  pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
1774
1802
  "pcb_ground_plane_region"
1775
1803
  ),
1776
- pcb_ground_plane_id: z85.string(),
1777
- pcb_group_id: z85.string().optional(),
1778
- subcircuit_id: z85.string().optional(),
1804
+ pcb_ground_plane_id: z86.string(),
1805
+ pcb_group_id: z86.string().optional(),
1806
+ subcircuit_id: z86.string().optional(),
1779
1807
  layer: layer_ref,
1780
- points: z85.array(point)
1808
+ points: z86.array(point)
1781
1809
  }).describe("Defines a polygon region of a ground plane");
1782
1810
  expectTypesMatch(true);
1783
1811
 
1784
1812
  // src/pcb/pcb_thermal_spoke.ts
1785
- import { z as z86 } from "zod";
1786
- var pcb_thermal_spoke = z86.object({
1787
- type: z86.literal("pcb_thermal_spoke"),
1813
+ import { z as z87 } from "zod";
1814
+ var pcb_thermal_spoke = z87.object({
1815
+ type: z87.literal("pcb_thermal_spoke"),
1788
1816
  pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
1789
- pcb_ground_plane_id: z86.string(),
1790
- shape: z86.string(),
1791
- spoke_count: z86.number(),
1817
+ pcb_ground_plane_id: z87.string(),
1818
+ shape: z87.string(),
1819
+ spoke_count: z87.number(),
1792
1820
  spoke_thickness: distance,
1793
1821
  spoke_inner_diameter: distance,
1794
1822
  spoke_outer_diameter: distance,
1795
- pcb_plated_hole_id: z86.string().optional(),
1796
- subcircuit_id: z86.string().optional()
1823
+ pcb_plated_hole_id: z87.string().optional(),
1824
+ subcircuit_id: z87.string().optional()
1797
1825
  }).describe("Pattern for connecting a ground plane to a plated hole");
1798
1826
  expectTypesMatch(true);
1799
1827
 
1800
1828
  // src/cad/cad_component.ts
1801
- import { z as z87 } from "zod";
1802
- var cad_component = z87.object({
1803
- type: z87.literal("cad_component"),
1804
- cad_component_id: z87.string(),
1805
- pcb_component_id: z87.string(),
1806
- source_component_id: z87.string(),
1829
+ import { z as z88 } from "zod";
1830
+ var cad_component = z88.object({
1831
+ type: z88.literal("cad_component"),
1832
+ cad_component_id: z88.string(),
1833
+ pcb_component_id: z88.string(),
1834
+ source_component_id: z88.string(),
1807
1835
  position: point3,
1808
1836
  rotation: point3.optional(),
1809
1837
  size: point3.optional(),
1810
1838
  layer: layer_ref.optional(),
1811
- subcircuit_id: z87.string().optional(),
1839
+ subcircuit_id: z88.string().optional(),
1812
1840
  // These are all ways to generate/load the 3d model
1813
- footprinter_string: z87.string().optional(),
1814
- model_obj_url: z87.string().optional(),
1815
- model_stl_url: z87.string().optional(),
1816
- model_3mf_url: z87.string().optional(),
1817
- model_jscad: z87.any().optional()
1841
+ footprinter_string: z88.string().optional(),
1842
+ model_obj_url: z88.string().optional(),
1843
+ model_stl_url: z88.string().optional(),
1844
+ model_3mf_url: z88.string().optional(),
1845
+ model_jscad: z88.any().optional()
1818
1846
  }).describe("Defines a component on the PCB");
1819
1847
  expectTypesMatch(true);
1820
1848
 
1821
1849
  // src/any_circuit_element.ts
1822
- import { z as z88 } from "zod";
1823
- var any_circuit_element = z88.union([
1850
+ import { z as z89 } from "zod";
1851
+ var any_circuit_element = z89.union([
1824
1852
  source_trace,
1825
1853
  source_port,
1826
1854
  any_source_component,
@@ -1890,6 +1918,7 @@ var any_circuit_element = z88.union([
1890
1918
  schematic_voltage_probe,
1891
1919
  schematic_manual_edit_conflict_warning,
1892
1920
  schematic_group,
1921
+ schematic_table,
1893
1922
  cad_component
1894
1923
  ]);
1895
1924
  var any_soup_element = any_circuit_element;
@@ -1981,6 +2010,8 @@ export {
1981
2010
  schematic_path,
1982
2011
  schematic_pin_styles,
1983
2012
  schematic_port,
2013
+ schematic_table,
2014
+ schematic_table_cell,
1984
2015
  schematic_text,
1985
2016
  schematic_trace,
1986
2017
  schematic_voltage_probe,