circuit-json 0.0.406 → 0.0.408

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
@@ -642,7 +642,7 @@ var source_pin_attributes = z23.object({
642
642
  expectTypesMatch(true);
643
643
 
644
644
  // src/source/any_source_component.ts
645
- import { z as z50 } from "zod";
645
+ import { z as z51 } from "zod";
646
646
 
647
647
  // src/source/source_simple_fuse.ts
648
648
  import { z as z24 } from "zod";
@@ -887,53 +887,70 @@ var source_pin_missing_trace_warning = z45.object({
887
887
  );
888
888
  expectTypesMatch(true);
889
889
 
890
- // src/source/source_simple_voltage_probe.ts
890
+ // src/source/source_missing_manufacturer_part_number_warning.ts
891
891
  import { z as z46 } from "zod";
892
+ var source_missing_manufacturer_part_number_warning = z46.object({
893
+ type: z46.literal("source_missing_manufacturer_part_number_warning"),
894
+ source_missing_manufacturer_part_number_warning_id: getZodPrefixedIdWithDefault(
895
+ "source_missing_manufacturer_part_number_warning"
896
+ ),
897
+ warning_type: z46.literal("source_missing_manufacturer_part_number_warning").default("source_missing_manufacturer_part_number_warning"),
898
+ message: z46.string(),
899
+ source_component_id: z46.string(),
900
+ standard: z46.string(),
901
+ subcircuit_id: z46.string().optional()
902
+ }).describe(
903
+ "Warning emitted when a standard connector is missing manufacturer part number"
904
+ );
905
+ expectTypesMatch(true);
906
+
907
+ // src/source/source_simple_voltage_probe.ts
908
+ import { z as z47 } from "zod";
892
909
  var source_simple_voltage_probe = source_component_base.extend({
893
- ftype: z46.literal("simple_voltage_probe")
910
+ ftype: z47.literal("simple_voltage_probe")
894
911
  });
895
912
  expectTypesMatch(
896
913
  true
897
914
  );
898
915
 
899
916
  // src/source/source_interconnect.ts
900
- import { z as z47 } from "zod";
917
+ import { z as z48 } from "zod";
901
918
  var source_interconnect = source_component_base.extend({
902
- ftype: z47.literal("interconnect")
919
+ ftype: z48.literal("interconnect")
903
920
  });
904
921
  expectTypesMatch(true);
905
922
 
906
923
  // src/source/source_i2c_misconfigured_error.ts
907
- import { z as z48 } from "zod";
924
+ import { z as z49 } from "zod";
908
925
  var source_i2c_misconfigured_error = base_circuit_json_error.extend({
909
- type: z48.literal("source_i2c_misconfigured_error"),
926
+ type: z49.literal("source_i2c_misconfigured_error"),
910
927
  source_i2c_misconfigured_error_id: getZodPrefixedIdWithDefault(
911
928
  "source_i2c_misconfigured_error"
912
929
  ),
913
- error_type: z48.literal("source_i2c_misconfigured_error").default("source_i2c_misconfigured_error"),
914
- source_port_ids: z48.array(z48.string())
930
+ error_type: z49.literal("source_i2c_misconfigured_error").default("source_i2c_misconfigured_error"),
931
+ source_port_ids: z49.array(z49.string())
915
932
  }).describe(
916
933
  "Error emitted when incompatible I2C pins (e.g. SDA and SCL) are connected to the same net"
917
934
  );
918
935
  expectTypesMatch(true);
919
936
 
920
937
  // src/source/source_simple_voltage_source.ts
921
- import { z as z49 } from "zod";
938
+ import { z as z50 } from "zod";
922
939
  var source_simple_voltage_source = source_component_base.extend({
923
- ftype: z49.literal("simple_voltage_source"),
940
+ ftype: z50.literal("simple_voltage_source"),
924
941
  voltage,
925
942
  frequency: frequency.optional(),
926
943
  peak_to_peak_voltage: voltage.optional(),
927
- wave_shape: z49.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
944
+ wave_shape: z50.enum(["sinewave", "square", "triangle", "sawtooth"]).optional(),
928
945
  phase: rotation.optional(),
929
- duty_cycle: z49.number().optional().describe("Duty cycle as a fraction (0 to 1)")
946
+ duty_cycle: z50.number().optional().describe("Duty cycle as a fraction (0 to 1)")
930
947
  });
931
948
  expectTypesMatch(
932
949
  true
933
950
  );
934
951
 
935
952
  // src/source/any_source_component.ts
936
- var any_source_component = z50.union([
953
+ var any_source_component = z51.union([
937
954
  source_simple_resistor,
938
955
  source_simple_capacitor,
939
956
  source_simple_diode,
@@ -968,126 +985,127 @@ var any_source_component = z50.union([
968
985
  source_trace_not_connected_error,
969
986
  source_property_ignored_warning,
970
987
  source_pin_missing_trace_warning,
988
+ source_missing_manufacturer_part_number_warning,
971
989
  source_i2c_misconfigured_error
972
990
  ]);
973
991
  expectTypesMatch(true);
974
992
 
975
993
  // src/source/source_port.ts
976
- import { z as z51 } from "zod";
977
- var source_port = z51.object({
978
- type: z51.literal("source_port"),
979
- pin_number: z51.number().optional(),
980
- port_hints: z51.array(z51.string()).optional(),
981
- name: z51.string(),
982
- source_port_id: z51.string(),
983
- source_component_id: z51.string().optional(),
984
- source_group_id: z51.string().optional(),
985
- most_frequently_referenced_by_name: z51.string().optional(),
986
- subcircuit_id: z51.string().optional(),
987
- subcircuit_connectivity_map_key: z51.string().optional()
994
+ import { z as z52 } from "zod";
995
+ var source_port = z52.object({
996
+ type: z52.literal("source_port"),
997
+ pin_number: z52.number().optional(),
998
+ port_hints: z52.array(z52.string()).optional(),
999
+ name: z52.string(),
1000
+ source_port_id: z52.string(),
1001
+ source_component_id: z52.string().optional(),
1002
+ source_group_id: z52.string().optional(),
1003
+ most_frequently_referenced_by_name: z52.string().optional(),
1004
+ subcircuit_id: z52.string().optional(),
1005
+ subcircuit_connectivity_map_key: z52.string().optional()
988
1006
  }).merge(source_pin_attributes);
989
1007
  expectTypesMatch(true);
990
1008
 
991
1009
  // src/source/source_component_internal_connection.ts
992
- import { z as z52 } from "zod";
993
- var source_component_internal_connection = z52.object({
994
- type: z52.literal("source_component_internal_connection"),
995
- source_component_internal_connection_id: z52.string(),
996
- source_component_id: z52.string(),
997
- source_port_ids: z52.array(z52.string()),
998
- subcircuit_id: z52.string().optional()
1010
+ import { z as z53 } from "zod";
1011
+ var source_component_internal_connection = z53.object({
1012
+ type: z53.literal("source_component_internal_connection"),
1013
+ source_component_internal_connection_id: z53.string(),
1014
+ source_component_id: z53.string(),
1015
+ source_port_ids: z53.array(z53.string()),
1016
+ subcircuit_id: z53.string().optional()
999
1017
  });
1000
1018
  expectTypesMatch(true);
1001
1019
 
1002
1020
  // src/source/source_trace.ts
1003
- import { z as z53 } from "zod";
1004
- var source_trace = z53.object({
1005
- type: z53.literal("source_trace"),
1006
- source_trace_id: z53.string(),
1007
- connected_source_port_ids: z53.array(z53.string()),
1008
- connected_source_net_ids: z53.array(z53.string()),
1009
- subcircuit_id: z53.string().optional(),
1010
- subcircuit_connectivity_map_key: z53.string().optional(),
1011
- max_length: z53.number().optional(),
1012
- min_trace_thickness: z53.number().optional(),
1013
- display_name: z53.string().optional()
1021
+ import { z as z54 } from "zod";
1022
+ var source_trace = z54.object({
1023
+ type: z54.literal("source_trace"),
1024
+ source_trace_id: z54.string(),
1025
+ connected_source_port_ids: z54.array(z54.string()),
1026
+ connected_source_net_ids: z54.array(z54.string()),
1027
+ subcircuit_id: z54.string().optional(),
1028
+ subcircuit_connectivity_map_key: z54.string().optional(),
1029
+ max_length: z54.number().optional(),
1030
+ min_trace_thickness: z54.number().optional(),
1031
+ display_name: z54.string().optional()
1014
1032
  });
1015
1033
  expectTypesMatch(true);
1016
1034
 
1017
1035
  // src/source/source_group.ts
1018
- import { z as z54 } from "zod";
1019
- var source_group = z54.object({
1020
- type: z54.literal("source_group"),
1021
- source_group_id: z54.string(),
1022
- subcircuit_id: z54.string().optional(),
1023
- parent_subcircuit_id: z54.string().optional(),
1024
- parent_source_group_id: z54.string().optional(),
1025
- is_subcircuit: z54.boolean().optional(),
1026
- show_as_schematic_box: z54.boolean().optional(),
1027
- name: z54.string().optional(),
1028
- was_automatically_named: z54.boolean().optional()
1036
+ import { z as z55 } from "zod";
1037
+ var source_group = z55.object({
1038
+ type: z55.literal("source_group"),
1039
+ source_group_id: z55.string(),
1040
+ subcircuit_id: z55.string().optional(),
1041
+ parent_subcircuit_id: z55.string().optional(),
1042
+ parent_source_group_id: z55.string().optional(),
1043
+ is_subcircuit: z55.boolean().optional(),
1044
+ show_as_schematic_box: z55.boolean().optional(),
1045
+ name: z55.string().optional(),
1046
+ was_automatically_named: z55.boolean().optional()
1029
1047
  });
1030
1048
  expectTypesMatch(true);
1031
1049
 
1032
1050
  // src/source/source_net.ts
1033
- import { z as z55 } from "zod";
1034
- var source_net = z55.object({
1035
- type: z55.literal("source_net"),
1036
- source_net_id: z55.string(),
1037
- name: z55.string(),
1038
- member_source_group_ids: z55.array(z55.string()),
1039
- is_power: z55.boolean().optional(),
1040
- is_ground: z55.boolean().optional(),
1041
- is_digital_signal: z55.boolean().optional(),
1042
- is_analog_signal: z55.boolean().optional(),
1043
- is_positive_voltage_source: z55.boolean().optional(),
1044
- trace_width: z55.number().optional(),
1045
- subcircuit_id: z55.string().optional(),
1046
- subcircuit_connectivity_map_key: z55.string().optional()
1051
+ import { z as z56 } from "zod";
1052
+ var source_net = z56.object({
1053
+ type: z56.literal("source_net"),
1054
+ source_net_id: z56.string(),
1055
+ name: z56.string(),
1056
+ member_source_group_ids: z56.array(z56.string()),
1057
+ is_power: z56.boolean().optional(),
1058
+ is_ground: z56.boolean().optional(),
1059
+ is_digital_signal: z56.boolean().optional(),
1060
+ is_analog_signal: z56.boolean().optional(),
1061
+ is_positive_voltage_source: z56.boolean().optional(),
1062
+ trace_width: z56.number().optional(),
1063
+ subcircuit_id: z56.string().optional(),
1064
+ subcircuit_connectivity_map_key: z56.string().optional()
1047
1065
  });
1048
1066
  expectTypesMatch(true);
1049
1067
 
1050
1068
  // src/source/source_board.ts
1051
- import { z as z56 } from "zod";
1052
- var source_board = z56.object({
1053
- type: z56.literal("source_board"),
1054
- source_board_id: z56.string(),
1055
- source_group_id: z56.string(),
1056
- title: z56.string().optional()
1069
+ import { z as z57 } from "zod";
1070
+ var source_board = z57.object({
1071
+ type: z57.literal("source_board"),
1072
+ source_board_id: z57.string(),
1073
+ source_group_id: z57.string(),
1074
+ title: z57.string().optional()
1057
1075
  }).describe("Defines a board in the source domain");
1058
1076
  expectTypesMatch(true);
1059
1077
 
1060
1078
  // src/source/source_ambiguous_port_reference.ts
1061
- import { z as z57 } from "zod";
1079
+ import { z as z58 } from "zod";
1062
1080
  var source_ambiguous_port_reference = base_circuit_json_error.extend({
1063
- type: z57.literal("source_ambiguous_port_reference"),
1081
+ type: z58.literal("source_ambiguous_port_reference"),
1064
1082
  source_ambiguous_port_reference_id: getZodPrefixedIdWithDefault(
1065
1083
  "source_ambiguous_port_reference"
1066
1084
  ),
1067
- error_type: z57.literal("source_ambiguous_port_reference").default("source_ambiguous_port_reference"),
1068
- source_port_id: z57.string().optional(),
1069
- source_component_id: z57.string().optional()
1085
+ error_type: z58.literal("source_ambiguous_port_reference").default("source_ambiguous_port_reference"),
1086
+ source_port_id: z58.string().optional(),
1087
+ source_component_id: z58.string().optional()
1070
1088
  }).describe(
1071
1089
  "Error emitted when a port hint matches multiple non-overlapping pads, making the port reference ambiguous"
1072
1090
  );
1073
1091
  expectTypesMatch(true);
1074
1092
 
1075
1093
  // src/source/source_pcb_ground_plane.ts
1076
- import { z as z58 } from "zod";
1077
- var source_pcb_ground_plane = z58.object({
1078
- type: z58.literal("source_pcb_ground_plane"),
1079
- source_pcb_ground_plane_id: z58.string(),
1080
- source_group_id: z58.string(),
1081
- source_net_id: z58.string(),
1082
- subcircuit_id: z58.string().optional()
1094
+ import { z as z59 } from "zod";
1095
+ var source_pcb_ground_plane = z59.object({
1096
+ type: z59.literal("source_pcb_ground_plane"),
1097
+ source_pcb_ground_plane_id: z59.string(),
1098
+ source_group_id: z59.string(),
1099
+ source_net_id: z59.string(),
1100
+ subcircuit_id: z59.string().optional()
1083
1101
  }).describe("Defines a ground plane in the source domain");
1084
1102
  expectTypesMatch(true);
1085
1103
 
1086
1104
  // src/source/source_manually_placed_via.ts
1087
- import { z as z60 } from "zod";
1105
+ import { z as z61 } from "zod";
1088
1106
 
1089
1107
  // src/pcb/properties/layer_ref.ts
1090
- import { z as z59 } from "zod";
1108
+ import { z as z60 } from "zod";
1091
1109
  var all_layers = [
1092
1110
  "top",
1093
1111
  "bottom",
@@ -1098,9 +1116,9 @@ var all_layers = [
1098
1116
  "inner5",
1099
1117
  "inner6"
1100
1118
  ];
1101
- var layer_string = z59.enum(all_layers);
1119
+ var layer_string = z60.enum(all_layers);
1102
1120
  var layer_ref = layer_string.or(
1103
- z59.object({
1121
+ z60.object({
1104
1122
  name: layer_string
1105
1123
  })
1106
1124
  ).transform((layer) => {
@@ -1110,207 +1128,207 @@ var layer_ref = layer_string.or(
1110
1128
  return layer.name;
1111
1129
  });
1112
1130
  expectTypesMatch(true);
1113
- var visible_layer = z59.enum(["top", "bottom"]);
1131
+ var visible_layer = z60.enum(["top", "bottom"]);
1114
1132
 
1115
1133
  // src/source/source_manually_placed_via.ts
1116
- var source_manually_placed_via = z60.object({
1117
- type: z60.literal("source_manually_placed_via"),
1118
- source_manually_placed_via_id: z60.string(),
1119
- source_group_id: z60.string(),
1120
- source_net_id: z60.string(),
1121
- subcircuit_id: z60.string().optional(),
1122
- source_trace_id: z60.string().optional()
1134
+ var source_manually_placed_via = z61.object({
1135
+ type: z61.literal("source_manually_placed_via"),
1136
+ source_manually_placed_via_id: z61.string(),
1137
+ source_group_id: z61.string(),
1138
+ source_net_id: z61.string(),
1139
+ subcircuit_id: z61.string().optional(),
1140
+ source_trace_id: z61.string().optional()
1123
1141
  }).describe("Defines a via that is manually placed in the source domain");
1124
1142
  expectTypesMatch(true);
1125
1143
 
1126
1144
  // src/source/source_no_power_pin_defined_warning.ts
1127
- import { z as z61 } from "zod";
1128
- var source_no_power_pin_defined_warning = z61.object({
1129
- type: z61.literal("source_no_power_pin_defined_warning"),
1145
+ import { z as z62 } from "zod";
1146
+ var source_no_power_pin_defined_warning = z62.object({
1147
+ type: z62.literal("source_no_power_pin_defined_warning"),
1130
1148
  source_no_power_pin_defined_warning_id: getZodPrefixedIdWithDefault(
1131
1149
  "source_no_power_pin_defined_warning"
1132
1150
  ),
1133
- warning_type: z61.literal("source_no_power_pin_defined_warning").default("source_no_power_pin_defined_warning"),
1134
- message: z61.string(),
1135
- source_component_id: z61.string(),
1136
- source_port_ids: z61.array(z61.string()),
1137
- subcircuit_id: z61.string().optional()
1151
+ warning_type: z62.literal("source_no_power_pin_defined_warning").default("source_no_power_pin_defined_warning"),
1152
+ message: z62.string(),
1153
+ source_component_id: z62.string(),
1154
+ source_port_ids: z62.array(z62.string()),
1155
+ subcircuit_id: z62.string().optional()
1138
1156
  }).describe(
1139
1157
  "Warning emitted when a chip has no source ports with requires_power=true"
1140
1158
  );
1141
1159
  expectTypesMatch(true);
1142
1160
 
1143
1161
  // src/source/source_no_ground_pin_defined_warning.ts
1144
- import { z as z62 } from "zod";
1145
- var source_no_ground_pin_defined_warning = z62.object({
1146
- type: z62.literal("source_no_ground_pin_defined_warning"),
1162
+ import { z as z63 } from "zod";
1163
+ var source_no_ground_pin_defined_warning = z63.object({
1164
+ type: z63.literal("source_no_ground_pin_defined_warning"),
1147
1165
  source_no_ground_pin_defined_warning_id: getZodPrefixedIdWithDefault(
1148
1166
  "source_no_ground_pin_defined_warning"
1149
1167
  ),
1150
- warning_type: z62.literal("source_no_ground_pin_defined_warning").default("source_no_ground_pin_defined_warning"),
1151
- message: z62.string(),
1152
- source_component_id: z62.string(),
1153
- source_port_ids: z62.array(z62.string()),
1154
- subcircuit_id: z62.string().optional()
1168
+ warning_type: z63.literal("source_no_ground_pin_defined_warning").default("source_no_ground_pin_defined_warning"),
1169
+ message: z63.string(),
1170
+ source_component_id: z63.string(),
1171
+ source_port_ids: z63.array(z63.string()),
1172
+ subcircuit_id: z63.string().optional()
1155
1173
  }).describe(
1156
1174
  "Warning emitted when a chip has no source ports marked as ground pins"
1157
1175
  );
1158
1176
  expectTypesMatch(true);
1159
1177
 
1160
1178
  // src/source/source_component_pins_underspecified_warning.ts
1161
- import { z as z63 } from "zod";
1162
- var source_component_pins_underspecified_warning = z63.object({
1163
- type: z63.literal("source_component_pins_underspecified_warning"),
1179
+ import { z as z64 } from "zod";
1180
+ var source_component_pins_underspecified_warning = z64.object({
1181
+ type: z64.literal("source_component_pins_underspecified_warning"),
1164
1182
  source_component_pins_underspecified_warning_id: getZodPrefixedIdWithDefault(
1165
1183
  "source_component_pins_underspecified_warning"
1166
1184
  ),
1167
- warning_type: z63.literal("source_component_pins_underspecified_warning").default("source_component_pins_underspecified_warning"),
1168
- message: z63.string(),
1169
- source_component_id: z63.string(),
1170
- source_port_ids: z63.array(z63.string()),
1171
- subcircuit_id: z63.string().optional()
1185
+ warning_type: z64.literal("source_component_pins_underspecified_warning").default("source_component_pins_underspecified_warning"),
1186
+ message: z64.string(),
1187
+ source_component_id: z64.string(),
1188
+ source_port_ids: z64.array(z64.string()),
1189
+ subcircuit_id: z64.string().optional()
1172
1190
  }).describe(
1173
1191
  "Warning emitted when all ports on a source component are underspecified"
1174
1192
  );
1175
1193
  expectTypesMatch(true);
1176
1194
 
1177
1195
  // src/source/source_pin_must_be_connected_error.ts
1178
- import { z as z64 } from "zod";
1196
+ import { z as z65 } from "zod";
1179
1197
  var source_pin_must_be_connected_error = base_circuit_json_error.extend({
1180
- type: z64.literal("source_pin_must_be_connected_error"),
1198
+ type: z65.literal("source_pin_must_be_connected_error"),
1181
1199
  source_pin_must_be_connected_error_id: getZodPrefixedIdWithDefault(
1182
1200
  "source_pin_must_be_connected_error"
1183
1201
  ),
1184
- error_type: z64.literal("source_pin_must_be_connected_error").default("source_pin_must_be_connected_error"),
1185
- source_component_id: z64.string(),
1186
- source_port_id: z64.string(),
1187
- subcircuit_id: z64.string().optional()
1202
+ error_type: z65.literal("source_pin_must_be_connected_error").default("source_pin_must_be_connected_error"),
1203
+ source_component_id: z65.string(),
1204
+ source_port_id: z65.string(),
1205
+ subcircuit_id: z65.string().optional()
1188
1206
  }).describe(
1189
1207
  "Error emitted when a pin with mustBeConnected attribute is not connected to any trace"
1190
1208
  );
1191
1209
  expectTypesMatch(true);
1192
1210
 
1193
1211
  // src/source/unknown_error_finding_part.ts
1194
- import { z as z65 } from "zod";
1212
+ import { z as z66 } from "zod";
1195
1213
  var unknown_error_finding_part = base_circuit_json_error.extend({
1196
- type: z65.literal("unknown_error_finding_part"),
1214
+ type: z66.literal("unknown_error_finding_part"),
1197
1215
  unknown_error_finding_part_id: getZodPrefixedIdWithDefault(
1198
1216
  "unknown_error_finding_part"
1199
1217
  ),
1200
- error_type: z65.literal("unknown_error_finding_part").default("unknown_error_finding_part"),
1201
- source_component_id: z65.string().optional(),
1202
- subcircuit_id: z65.string().optional()
1218
+ error_type: z66.literal("unknown_error_finding_part").default("unknown_error_finding_part"),
1219
+ source_component_id: z66.string().optional(),
1220
+ subcircuit_id: z66.string().optional()
1203
1221
  }).describe(
1204
1222
  "Error emitted when an unexpected error occurs while finding a part"
1205
1223
  );
1206
1224
  expectTypesMatch(true);
1207
1225
 
1208
1226
  // src/schematic/schematic_box.ts
1209
- import { z as z66 } from "zod";
1210
- var schematic_box = z66.object({
1211
- type: z66.literal("schematic_box"),
1212
- schematic_component_id: z66.string().optional(),
1213
- schematic_symbol_id: z66.string().optional(),
1227
+ import { z as z67 } from "zod";
1228
+ var schematic_box = z67.object({
1229
+ type: z67.literal("schematic_box"),
1230
+ schematic_component_id: z67.string().optional(),
1231
+ schematic_symbol_id: z67.string().optional(),
1214
1232
  width: distance,
1215
1233
  height: distance,
1216
- is_dashed: z66.boolean().default(false),
1234
+ is_dashed: z67.boolean().default(false),
1217
1235
  x: distance,
1218
1236
  y: distance,
1219
- subcircuit_id: z66.string().optional()
1237
+ subcircuit_id: z67.string().optional()
1220
1238
  }).describe("Draws a box on the schematic");
1221
1239
  expectTypesMatch(true);
1222
1240
 
1223
1241
  // src/schematic/schematic_path.ts
1224
- import { z as z67 } from "zod";
1225
- var schematic_path = z67.object({
1226
- type: z67.literal("schematic_path"),
1242
+ import { z as z68 } from "zod";
1243
+ var schematic_path = z68.object({
1244
+ type: z68.literal("schematic_path"),
1227
1245
  schematic_path_id: getZodPrefixedIdWithDefault("schematic_path"),
1228
- schematic_component_id: z67.string().optional(),
1229
- schematic_symbol_id: z67.string().optional(),
1230
- fill_color: z67.string().optional(),
1231
- is_filled: z67.boolean().optional(),
1246
+ schematic_component_id: z68.string().optional(),
1247
+ schematic_symbol_id: z68.string().optional(),
1248
+ fill_color: z68.string().optional(),
1249
+ is_filled: z68.boolean().optional(),
1232
1250
  stroke_width: distance.nullable().optional(),
1233
- stroke_color: z67.string().optional(),
1234
- points: z67.array(point),
1235
- subcircuit_id: z67.string().optional()
1251
+ stroke_color: z68.string().optional(),
1252
+ points: z68.array(point),
1253
+ subcircuit_id: z68.string().optional()
1236
1254
  });
1237
1255
  expectTypesMatch(true);
1238
1256
 
1239
1257
  // src/schematic/schematic_component.ts
1240
- import { z as z68 } from "zod";
1241
- var schematic_pin_styles = z68.record(
1242
- z68.object({
1258
+ import { z as z69 } from "zod";
1259
+ var schematic_pin_styles = z69.record(
1260
+ z69.object({
1243
1261
  left_margin: length.optional(),
1244
1262
  right_margin: length.optional(),
1245
1263
  top_margin: length.optional(),
1246
1264
  bottom_margin: length.optional()
1247
1265
  })
1248
1266
  );
1249
- var schematic_component_port_arrangement_by_size = z68.object({
1250
- left_size: z68.number(),
1251
- right_size: z68.number(),
1252
- top_size: z68.number().optional(),
1253
- bottom_size: z68.number().optional()
1267
+ var schematic_component_port_arrangement_by_size = z69.object({
1268
+ left_size: z69.number(),
1269
+ right_size: z69.number(),
1270
+ top_size: z69.number().optional(),
1271
+ bottom_size: z69.number().optional()
1254
1272
  });
1255
1273
  expectTypesMatch(true);
1256
- var schematic_component_port_arrangement_by_sides = z68.object({
1257
- left_side: z68.object({
1258
- pins: z68.array(z68.number()),
1274
+ var schematic_component_port_arrangement_by_sides = z69.object({
1275
+ left_side: z69.object({
1276
+ pins: z69.array(z69.number()),
1259
1277
  // @ts-ignore
1260
- direction: z68.enum(["top-to-bottom", "bottom-to-top"]).optional()
1278
+ direction: z69.enum(["top-to-bottom", "bottom-to-top"]).optional()
1261
1279
  }).optional(),
1262
- right_side: z68.object({
1263
- pins: z68.array(z68.number()),
1280
+ right_side: z69.object({
1281
+ pins: z69.array(z69.number()),
1264
1282
  // @ts-ignore
1265
- direction: z68.enum(["top-to-bottom", "bottom-to-top"]).optional()
1283
+ direction: z69.enum(["top-to-bottom", "bottom-to-top"]).optional()
1266
1284
  }).optional(),
1267
- top_side: z68.object({
1268
- pins: z68.array(z68.number()),
1285
+ top_side: z69.object({
1286
+ pins: z69.array(z69.number()),
1269
1287
  // @ts-ignore
1270
- direction: z68.enum(["left-to-right", "right-to-left"]).optional()
1288
+ direction: z69.enum(["left-to-right", "right-to-left"]).optional()
1271
1289
  }).optional(),
1272
- bottom_side: z68.object({
1273
- pins: z68.array(z68.number()),
1290
+ bottom_side: z69.object({
1291
+ pins: z69.array(z69.number()),
1274
1292
  // @ts-ignore
1275
- direction: z68.enum(["left-to-right", "right-to-left"]).optional()
1293
+ direction: z69.enum(["left-to-right", "right-to-left"]).optional()
1276
1294
  }).optional()
1277
1295
  });
1278
1296
  expectTypesMatch(true);
1279
- var port_arrangement = z68.union([
1297
+ var port_arrangement = z69.union([
1280
1298
  schematic_component_port_arrangement_by_size,
1281
1299
  schematic_component_port_arrangement_by_sides
1282
1300
  ]);
1283
- var schematic_component = z68.object({
1284
- type: z68.literal("schematic_component"),
1301
+ var schematic_component = z69.object({
1302
+ type: z69.literal("schematic_component"),
1285
1303
  size,
1286
1304
  center: point,
1287
- source_component_id: z68.string().optional(),
1288
- schematic_component_id: z68.string(),
1289
- schematic_symbol_id: z68.string().optional(),
1305
+ source_component_id: z69.string().optional(),
1306
+ schematic_component_id: z69.string(),
1307
+ schematic_symbol_id: z69.string().optional(),
1290
1308
  pin_spacing: length.optional(),
1291
1309
  pin_styles: schematic_pin_styles.optional(),
1292
1310
  box_width: length.optional(),
1293
- symbol_name: z68.string().optional(),
1311
+ symbol_name: z69.string().optional(),
1294
1312
  port_arrangement: port_arrangement.optional(),
1295
- port_labels: z68.record(z68.string()).optional(),
1296
- symbol_display_value: z68.string().optional(),
1297
- subcircuit_id: z68.string().optional(),
1298
- schematic_group_id: z68.string().optional(),
1299
- is_schematic_group: z68.boolean().optional(),
1300
- source_group_id: z68.string().optional(),
1301
- is_box_with_pins: z68.boolean().optional().default(true)
1313
+ port_labels: z69.record(z69.string()).optional(),
1314
+ symbol_display_value: z69.string().optional(),
1315
+ subcircuit_id: z69.string().optional(),
1316
+ schematic_group_id: z69.string().optional(),
1317
+ is_schematic_group: z69.boolean().optional(),
1318
+ source_group_id: z69.string().optional(),
1319
+ is_box_with_pins: z69.boolean().optional().default(true)
1302
1320
  });
1303
1321
  expectTypesMatch(true);
1304
1322
 
1305
1323
  // src/schematic/schematic_symbol.ts
1306
- import { z as z69 } from "zod";
1307
- var schematicSymbolMetadata = z69.object({
1324
+ import { z as z70 } from "zod";
1325
+ var schematicSymbolMetadata = z70.object({
1308
1326
  kicad_symbol: kicadSymbolMetadata.optional()
1309
- }).catchall(z69.unknown());
1310
- var schematic_symbol = z69.object({
1311
- type: z69.literal("schematic_symbol"),
1312
- schematic_symbol_id: z69.string(),
1313
- name: z69.string().optional(),
1327
+ }).catchall(z70.unknown());
1328
+ var schematic_symbol = z70.object({
1329
+ type: z70.literal("schematic_symbol"),
1330
+ schematic_symbol_id: z70.string(),
1331
+ name: z70.string().optional(),
1314
1332
  metadata: schematicSymbolMetadata.optional()
1315
1333
  }).describe(
1316
1334
  "Defines a named schematic symbol that can be referenced by components."
@@ -1318,119 +1336,119 @@ var schematic_symbol = z69.object({
1318
1336
  expectTypesMatch(true);
1319
1337
 
1320
1338
  // src/schematic/schematic_line.ts
1321
- import { z as z70 } from "zod";
1322
- var schematic_line = z70.object({
1323
- type: z70.literal("schematic_line"),
1339
+ import { z as z71 } from "zod";
1340
+ var schematic_line = z71.object({
1341
+ type: z71.literal("schematic_line"),
1324
1342
  schematic_line_id: getZodPrefixedIdWithDefault("schematic_line"),
1325
- schematic_component_id: z70.string().optional(),
1326
- schematic_symbol_id: z70.string().optional(),
1343
+ schematic_component_id: z71.string().optional(),
1344
+ schematic_symbol_id: z71.string().optional(),
1327
1345
  x1: distance,
1328
1346
  y1: distance,
1329
1347
  x2: distance,
1330
1348
  y2: distance,
1331
1349
  stroke_width: distance.nullable().optional(),
1332
- color: z70.string().default("#000000"),
1333
- is_dashed: z70.boolean().default(false),
1334
- subcircuit_id: z70.string().optional()
1350
+ color: z71.string().default("#000000"),
1351
+ is_dashed: z71.boolean().default(false),
1352
+ subcircuit_id: z71.string().optional()
1335
1353
  }).describe("Draws a styled line on the schematic");
1336
1354
  expectTypesMatch(true);
1337
1355
 
1338
1356
  // src/schematic/schematic_rect.ts
1339
- import { z as z71 } from "zod";
1340
- var schematic_rect = z71.object({
1341
- type: z71.literal("schematic_rect"),
1357
+ import { z as z72 } from "zod";
1358
+ var schematic_rect = z72.object({
1359
+ type: z72.literal("schematic_rect"),
1342
1360
  schematic_rect_id: getZodPrefixedIdWithDefault("schematic_rect"),
1343
- schematic_component_id: z71.string().optional(),
1344
- schematic_symbol_id: z71.string().optional(),
1361
+ schematic_component_id: z72.string().optional(),
1362
+ schematic_symbol_id: z72.string().optional(),
1345
1363
  center: point,
1346
1364
  width: distance,
1347
1365
  height: distance,
1348
1366
  rotation: rotation.default(0),
1349
1367
  stroke_width: distance.nullable().optional(),
1350
- color: z71.string().default("#000000"),
1351
- is_filled: z71.boolean().default(false),
1352
- fill_color: z71.string().optional(),
1353
- is_dashed: z71.boolean().default(false),
1354
- subcircuit_id: z71.string().optional()
1368
+ color: z72.string().default("#000000"),
1369
+ is_filled: z72.boolean().default(false),
1370
+ fill_color: z72.string().optional(),
1371
+ is_dashed: z72.boolean().default(false),
1372
+ subcircuit_id: z72.string().optional()
1355
1373
  }).describe("Draws a styled rectangle on the schematic");
1356
1374
  expectTypesMatch(true);
1357
1375
 
1358
1376
  // src/schematic/schematic_circle.ts
1359
- import { z as z72 } from "zod";
1360
- var schematic_circle = z72.object({
1361
- type: z72.literal("schematic_circle"),
1377
+ import { z as z73 } from "zod";
1378
+ var schematic_circle = z73.object({
1379
+ type: z73.literal("schematic_circle"),
1362
1380
  schematic_circle_id: getZodPrefixedIdWithDefault("schematic_circle"),
1363
- schematic_component_id: z72.string().optional(),
1364
- schematic_symbol_id: z72.string().optional(),
1381
+ schematic_component_id: z73.string().optional(),
1382
+ schematic_symbol_id: z73.string().optional(),
1365
1383
  center: point,
1366
1384
  radius: distance,
1367
1385
  stroke_width: distance.nullable().optional(),
1368
- color: z72.string().default("#000000"),
1369
- is_filled: z72.boolean().default(false),
1370
- fill_color: z72.string().optional(),
1371
- is_dashed: z72.boolean().default(false),
1372
- subcircuit_id: z72.string().optional()
1386
+ color: z73.string().default("#000000"),
1387
+ is_filled: z73.boolean().default(false),
1388
+ fill_color: z73.string().optional(),
1389
+ is_dashed: z73.boolean().default(false),
1390
+ subcircuit_id: z73.string().optional()
1373
1391
  }).describe("Draws a styled circle on the schematic");
1374
1392
  expectTypesMatch(true);
1375
1393
 
1376
1394
  // src/schematic/schematic_arc.ts
1377
- import { z as z73 } from "zod";
1378
- var schematic_arc = z73.object({
1379
- type: z73.literal("schematic_arc"),
1395
+ import { z as z74 } from "zod";
1396
+ var schematic_arc = z74.object({
1397
+ type: z74.literal("schematic_arc"),
1380
1398
  schematic_arc_id: getZodPrefixedIdWithDefault("schematic_arc"),
1381
- schematic_component_id: z73.string().optional(),
1382
- schematic_symbol_id: z73.string().optional(),
1399
+ schematic_component_id: z74.string().optional(),
1400
+ schematic_symbol_id: z74.string().optional(),
1383
1401
  center: point,
1384
1402
  radius: distance,
1385
1403
  start_angle_degrees: rotation,
1386
1404
  end_angle_degrees: rotation,
1387
- direction: z73.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
1405
+ direction: z74.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
1388
1406
  stroke_width: distance.nullable().optional(),
1389
- color: z73.string().default("#000000"),
1390
- is_dashed: z73.boolean().default(false),
1391
- subcircuit_id: z73.string().optional()
1407
+ color: z74.string().default("#000000"),
1408
+ is_dashed: z74.boolean().default(false),
1409
+ subcircuit_id: z74.string().optional()
1392
1410
  }).describe("Draws a styled arc on the schematic");
1393
1411
  expectTypesMatch(true);
1394
1412
 
1395
1413
  // src/schematic/schematic_trace.ts
1396
- import { z as z74 } from "zod";
1397
- var schematic_trace = z74.object({
1398
- type: z74.literal("schematic_trace"),
1399
- schematic_trace_id: z74.string(),
1400
- source_trace_id: z74.string().optional(),
1401
- junctions: z74.array(
1402
- z74.object({
1403
- x: z74.number(),
1404
- y: z74.number()
1414
+ import { z as z75 } from "zod";
1415
+ var schematic_trace = z75.object({
1416
+ type: z75.literal("schematic_trace"),
1417
+ schematic_trace_id: z75.string(),
1418
+ source_trace_id: z75.string().optional(),
1419
+ junctions: z75.array(
1420
+ z75.object({
1421
+ x: z75.number(),
1422
+ y: z75.number()
1405
1423
  })
1406
1424
  ),
1407
- edges: z74.array(
1408
- z74.object({
1409
- from: z74.object({
1410
- x: z74.number(),
1411
- y: z74.number()
1425
+ edges: z75.array(
1426
+ z75.object({
1427
+ from: z75.object({
1428
+ x: z75.number(),
1429
+ y: z75.number()
1412
1430
  }),
1413
- to: z74.object({
1414
- x: z74.number(),
1415
- y: z74.number()
1431
+ to: z75.object({
1432
+ x: z75.number(),
1433
+ y: z75.number()
1416
1434
  }),
1417
- is_crossing: z74.boolean().optional(),
1418
- from_schematic_port_id: z74.string().optional(),
1419
- to_schematic_port_id: z74.string().optional()
1435
+ is_crossing: z75.boolean().optional(),
1436
+ from_schematic_port_id: z75.string().optional(),
1437
+ to_schematic_port_id: z75.string().optional()
1420
1438
  })
1421
1439
  ),
1422
- subcircuit_id: z74.string().optional(),
1440
+ subcircuit_id: z75.string().optional(),
1423
1441
  // TODO: make required in a future release
1424
- subcircuit_connectivity_map_key: z74.string().optional()
1442
+ subcircuit_connectivity_map_key: z75.string().optional()
1425
1443
  });
1426
1444
  expectTypesMatch(true);
1427
1445
 
1428
1446
  // src/schematic/schematic_text.ts
1429
- import { z as z76 } from "zod";
1447
+ import { z as z77 } from "zod";
1430
1448
 
1431
1449
  // src/common/FivePointAnchor.ts
1432
- import { z as z75 } from "zod";
1433
- var fivePointAnchor = z75.enum([
1450
+ import { z as z76 } from "zod";
1451
+ var fivePointAnchor = z76.enum([
1434
1452
  "center",
1435
1453
  "left",
1436
1454
  "right",
@@ -1440,111 +1458,111 @@ var fivePointAnchor = z75.enum([
1440
1458
  expectTypesMatch(true);
1441
1459
 
1442
1460
  // src/schematic/schematic_text.ts
1443
- var schematic_text = z76.object({
1444
- type: z76.literal("schematic_text"),
1445
- schematic_component_id: z76.string().optional(),
1446
- schematic_symbol_id: z76.string().optional(),
1447
- schematic_text_id: z76.string(),
1448
- text: z76.string(),
1449
- font_size: z76.number().default(0.18),
1450
- position: z76.object({
1461
+ var schematic_text = z77.object({
1462
+ type: z77.literal("schematic_text"),
1463
+ schematic_component_id: z77.string().optional(),
1464
+ schematic_symbol_id: z77.string().optional(),
1465
+ schematic_text_id: z77.string(),
1466
+ text: z77.string(),
1467
+ font_size: z77.number().default(0.18),
1468
+ position: z77.object({
1451
1469
  x: distance,
1452
1470
  y: distance
1453
1471
  }),
1454
- rotation: z76.number().default(0),
1455
- anchor: z76.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
1456
- color: z76.string().default("#000000"),
1457
- subcircuit_id: z76.string().optional()
1472
+ rotation: z77.number().default(0),
1473
+ anchor: z77.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
1474
+ color: z77.string().default("#000000"),
1475
+ subcircuit_id: z77.string().optional()
1458
1476
  });
1459
1477
  expectTypesMatch(true);
1460
1478
 
1461
1479
  // src/schematic/schematic_port.ts
1462
- import { z as z77 } from "zod";
1463
- var schematic_port = z77.object({
1464
- type: z77.literal("schematic_port"),
1465
- schematic_port_id: z77.string(),
1466
- source_port_id: z77.string(),
1467
- schematic_component_id: z77.string().optional(),
1480
+ import { z as z78 } from "zod";
1481
+ var schematic_port = z78.object({
1482
+ type: z78.literal("schematic_port"),
1483
+ schematic_port_id: z78.string(),
1484
+ source_port_id: z78.string(),
1485
+ schematic_component_id: z78.string().optional(),
1468
1486
  center: point,
1469
- facing_direction: z77.enum(["up", "down", "left", "right"]).optional(),
1470
- distance_from_component_edge: z77.number().optional(),
1471
- side_of_component: z77.enum(["top", "bottom", "left", "right"]).optional(),
1472
- true_ccw_index: z77.number().optional(),
1473
- pin_number: z77.number().optional(),
1474
- display_pin_label: z77.string().optional(),
1475
- subcircuit_id: z77.string().optional(),
1476
- is_connected: z77.boolean().optional(),
1477
- has_input_arrow: z77.boolean().optional(),
1478
- has_output_arrow: z77.boolean().optional(),
1479
- is_drawn_with_inversion_circle: z77.boolean().optional()
1487
+ facing_direction: z78.enum(["up", "down", "left", "right"]).optional(),
1488
+ distance_from_component_edge: z78.number().optional(),
1489
+ side_of_component: z78.enum(["top", "bottom", "left", "right"]).optional(),
1490
+ true_ccw_index: z78.number().optional(),
1491
+ pin_number: z78.number().optional(),
1492
+ display_pin_label: z78.string().optional(),
1493
+ subcircuit_id: z78.string().optional(),
1494
+ is_connected: z78.boolean().optional(),
1495
+ has_input_arrow: z78.boolean().optional(),
1496
+ has_output_arrow: z78.boolean().optional(),
1497
+ is_drawn_with_inversion_circle: z78.boolean().optional()
1480
1498
  }).describe("Defines a port on a schematic component");
1481
1499
  expectTypesMatch(true);
1482
1500
 
1483
1501
  // src/schematic/schematic_net_label.ts
1484
- import { z as z78 } from "zod";
1485
- var schematic_net_label = z78.object({
1486
- type: z78.literal("schematic_net_label"),
1502
+ import { z as z79 } from "zod";
1503
+ var schematic_net_label = z79.object({
1504
+ type: z79.literal("schematic_net_label"),
1487
1505
  schematic_net_label_id: getZodPrefixedIdWithDefault("schematic_net_label"),
1488
- schematic_trace_id: z78.string().optional(),
1489
- source_trace_id: z78.string().optional(),
1490
- source_net_id: z78.string(),
1506
+ schematic_trace_id: z79.string().optional(),
1507
+ source_trace_id: z79.string().optional(),
1508
+ source_net_id: z79.string(),
1491
1509
  center: point,
1492
1510
  anchor_position: point.optional(),
1493
- anchor_side: z78.enum(["top", "bottom", "left", "right"]),
1494
- text: z78.string(),
1495
- symbol_name: z78.string().optional(),
1496
- is_movable: z78.boolean().optional(),
1497
- subcircuit_id: z78.string().optional()
1511
+ anchor_side: z79.enum(["top", "bottom", "left", "right"]),
1512
+ text: z79.string(),
1513
+ symbol_name: z79.string().optional(),
1514
+ is_movable: z79.boolean().optional(),
1515
+ subcircuit_id: z79.string().optional()
1498
1516
  });
1499
1517
  expectTypesMatch(true);
1500
1518
 
1501
1519
  // src/schematic/schematic_error.ts
1502
- import { z as z79 } from "zod";
1520
+ import { z as z80 } from "zod";
1503
1521
  var schematic_error = base_circuit_json_error.extend({
1504
- type: z79.literal("schematic_error"),
1505
- schematic_error_id: z79.string(),
1522
+ type: z80.literal("schematic_error"),
1523
+ schematic_error_id: z80.string(),
1506
1524
  // eventually each error type should be broken out into a dir of files
1507
- error_type: z79.literal("schematic_port_not_found").default("schematic_port_not_found"),
1508
- subcircuit_id: z79.string().optional()
1525
+ error_type: z80.literal("schematic_port_not_found").default("schematic_port_not_found"),
1526
+ subcircuit_id: z80.string().optional()
1509
1527
  }).describe("Defines a schematic error on the schematic");
1510
1528
  expectTypesMatch(true);
1511
1529
 
1512
1530
  // src/schematic/schematic_layout_error.ts
1513
- import { z as z80 } from "zod";
1531
+ import { z as z81 } from "zod";
1514
1532
  var schematic_layout_error = base_circuit_json_error.extend({
1515
- type: z80.literal("schematic_layout_error"),
1533
+ type: z81.literal("schematic_layout_error"),
1516
1534
  schematic_layout_error_id: getZodPrefixedIdWithDefault(
1517
1535
  "schematic_layout_error"
1518
1536
  ),
1519
- error_type: z80.literal("schematic_layout_error").default("schematic_layout_error"),
1520
- source_group_id: z80.string(),
1521
- schematic_group_id: z80.string(),
1522
- subcircuit_id: z80.string().optional()
1537
+ error_type: z81.literal("schematic_layout_error").default("schematic_layout_error"),
1538
+ source_group_id: z81.string(),
1539
+ schematic_group_id: z81.string(),
1540
+ subcircuit_id: z81.string().optional()
1523
1541
  }).describe("Error emitted when schematic layout fails for a group");
1524
1542
  expectTypesMatch(true);
1525
1543
 
1526
1544
  // src/schematic/schematic_debug_object.ts
1527
- import { z as z81 } from "zod";
1528
- var schematic_debug_object_base = z81.object({
1529
- type: z81.literal("schematic_debug_object"),
1530
- label: z81.string().optional(),
1531
- subcircuit_id: z81.string().optional()
1545
+ import { z as z82 } from "zod";
1546
+ var schematic_debug_object_base = z82.object({
1547
+ type: z82.literal("schematic_debug_object"),
1548
+ label: z82.string().optional(),
1549
+ subcircuit_id: z82.string().optional()
1532
1550
  });
1533
1551
  var schematic_debug_rect = schematic_debug_object_base.extend({
1534
- shape: z81.literal("rect"),
1552
+ shape: z82.literal("rect"),
1535
1553
  center: point,
1536
1554
  size
1537
1555
  });
1538
1556
  var schematic_debug_line = schematic_debug_object_base.extend({
1539
- shape: z81.literal("line"),
1557
+ shape: z82.literal("line"),
1540
1558
  start: point,
1541
1559
  end: point
1542
1560
  });
1543
1561
  var schematic_debug_point = schematic_debug_object_base.extend({
1544
- shape: z81.literal("point"),
1562
+ shape: z82.literal("point"),
1545
1563
  center: point
1546
1564
  });
1547
- var schematic_debug_object = z81.discriminatedUnion("shape", [
1565
+ var schematic_debug_object = z82.discriminatedUnion("shape", [
1548
1566
  schematic_debug_rect,
1549
1567
  schematic_debug_line,
1550
1568
  schematic_debug_point
@@ -1552,171 +1570,171 @@ var schematic_debug_object = z81.discriminatedUnion("shape", [
1552
1570
  expectTypesMatch(true);
1553
1571
 
1554
1572
  // src/schematic/schematic_voltage_probe.ts
1555
- import { z as z82 } from "zod";
1556
- var schematic_voltage_probe = z82.object({
1557
- type: z82.literal("schematic_voltage_probe"),
1558
- schematic_voltage_probe_id: z82.string(),
1559
- source_component_id: z82.string().optional(),
1560
- name: z82.string().optional(),
1573
+ import { z as z83 } from "zod";
1574
+ var schematic_voltage_probe = z83.object({
1575
+ type: z83.literal("schematic_voltage_probe"),
1576
+ schematic_voltage_probe_id: z83.string(),
1577
+ source_component_id: z83.string().optional(),
1578
+ name: z83.string().optional(),
1561
1579
  position: point,
1562
- schematic_trace_id: z82.string(),
1580
+ schematic_trace_id: z83.string(),
1563
1581
  voltage: voltage.optional(),
1564
- subcircuit_id: z82.string().optional(),
1565
- color: z82.string().optional(),
1582
+ subcircuit_id: z83.string().optional(),
1583
+ color: z83.string().optional(),
1566
1584
  label_alignment: ninePointAnchor.optional()
1567
1585
  }).describe("Defines a voltage probe measurement point on a schematic trace");
1568
1586
  expectTypesMatch(true);
1569
1587
 
1570
1588
  // src/schematic/schematic_manual_edit_conflict_warning.ts
1571
- import { z as z83 } from "zod";
1572
- var schematic_manual_edit_conflict_warning = z83.object({
1573
- type: z83.literal("schematic_manual_edit_conflict_warning"),
1589
+ import { z as z84 } from "zod";
1590
+ var schematic_manual_edit_conflict_warning = z84.object({
1591
+ type: z84.literal("schematic_manual_edit_conflict_warning"),
1574
1592
  schematic_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
1575
1593
  "schematic_manual_edit_conflict_warning"
1576
1594
  ),
1577
- warning_type: z83.literal("schematic_manual_edit_conflict_warning").default("schematic_manual_edit_conflict_warning"),
1578
- message: z83.string(),
1579
- schematic_component_id: z83.string(),
1580
- schematic_group_id: z83.string().optional(),
1581
- subcircuit_id: z83.string().optional(),
1582
- source_component_id: z83.string()
1595
+ warning_type: z84.literal("schematic_manual_edit_conflict_warning").default("schematic_manual_edit_conflict_warning"),
1596
+ message: z84.string(),
1597
+ schematic_component_id: z84.string(),
1598
+ schematic_group_id: z84.string().optional(),
1599
+ subcircuit_id: z84.string().optional(),
1600
+ source_component_id: z84.string()
1583
1601
  }).describe(
1584
1602
  "Warning emitted when a component has both manual placement and explicit schX/schY coordinates"
1585
1603
  );
1586
1604
  expectTypesMatch(true);
1587
1605
 
1588
1606
  // src/schematic/schematic_group.ts
1589
- import { z as z84 } from "zod";
1590
- var schematic_group = z84.object({
1591
- type: z84.literal("schematic_group"),
1607
+ import { z as z85 } from "zod";
1608
+ var schematic_group = z85.object({
1609
+ type: z85.literal("schematic_group"),
1592
1610
  schematic_group_id: getZodPrefixedIdWithDefault("schematic_group"),
1593
- source_group_id: z84.string(),
1594
- is_subcircuit: z84.boolean().optional(),
1595
- subcircuit_id: z84.string().optional(),
1611
+ source_group_id: z85.string(),
1612
+ is_subcircuit: z85.boolean().optional(),
1613
+ subcircuit_id: z85.string().optional(),
1596
1614
  width: length,
1597
1615
  height: length,
1598
1616
  center: point,
1599
- schematic_component_ids: z84.array(z84.string()),
1600
- show_as_schematic_box: z84.boolean().optional(),
1601
- name: z84.string().optional(),
1602
- description: z84.string().optional()
1617
+ schematic_component_ids: z85.array(z85.string()),
1618
+ show_as_schematic_box: z85.boolean().optional(),
1619
+ name: z85.string().optional(),
1620
+ description: z85.string().optional()
1603
1621
  }).describe("Defines a group of components on the schematic");
1604
1622
  expectTypesMatch(true);
1605
1623
 
1606
1624
  // src/schematic/schematic_table.ts
1607
- import { z as z85 } from "zod";
1608
- var schematic_table = z85.object({
1609
- type: z85.literal("schematic_table"),
1625
+ import { z as z86 } from "zod";
1626
+ var schematic_table = z86.object({
1627
+ type: z86.literal("schematic_table"),
1610
1628
  schematic_table_id: getZodPrefixedIdWithDefault("schematic_table"),
1611
1629
  anchor_position: point,
1612
- column_widths: z85.array(distance),
1613
- row_heights: z85.array(distance),
1630
+ column_widths: z86.array(distance),
1631
+ row_heights: z86.array(distance),
1614
1632
  cell_padding: distance.optional(),
1615
1633
  border_width: distance.optional(),
1616
- subcircuit_id: z85.string().optional(),
1617
- schematic_component_id: z85.string().optional(),
1634
+ subcircuit_id: z86.string().optional(),
1635
+ schematic_component_id: z86.string().optional(),
1618
1636
  anchor: ninePointAnchor.optional()
1619
1637
  }).describe("Defines a table on the schematic");
1620
1638
  expectTypesMatch(true);
1621
1639
 
1622
1640
  // src/schematic/schematic_table_cell.ts
1623
- import { z as z86 } from "zod";
1624
- var schematic_table_cell = z86.object({
1625
- type: z86.literal("schematic_table_cell"),
1641
+ import { z as z87 } from "zod";
1642
+ var schematic_table_cell = z87.object({
1643
+ type: z87.literal("schematic_table_cell"),
1626
1644
  schematic_table_cell_id: getZodPrefixedIdWithDefault(
1627
1645
  "schematic_table_cell"
1628
1646
  ),
1629
- schematic_table_id: z86.string(),
1630
- start_row_index: z86.number(),
1631
- end_row_index: z86.number(),
1632
- start_column_index: z86.number(),
1633
- end_column_index: z86.number(),
1634
- text: z86.string().optional(),
1647
+ schematic_table_id: z87.string(),
1648
+ start_row_index: z87.number(),
1649
+ end_row_index: z87.number(),
1650
+ start_column_index: z87.number(),
1651
+ end_column_index: z87.number(),
1652
+ text: z87.string().optional(),
1635
1653
  center: point,
1636
1654
  width: distance,
1637
1655
  height: distance,
1638
- horizontal_align: z86.enum(["left", "center", "right"]).optional(),
1639
- vertical_align: z86.enum(["top", "middle", "bottom"]).optional(),
1656
+ horizontal_align: z87.enum(["left", "center", "right"]).optional(),
1657
+ vertical_align: z87.enum(["top", "middle", "bottom"]).optional(),
1640
1658
  font_size: distance.optional(),
1641
- subcircuit_id: z86.string().optional()
1659
+ subcircuit_id: z87.string().optional()
1642
1660
  }).describe("Defines a cell within a schematic_table");
1643
1661
  expectTypesMatch(true);
1644
1662
 
1645
1663
  // src/schematic/schematic_sheet.ts
1646
- import { z as z87 } from "zod";
1647
- var schematic_sheet = z87.object({
1648
- type: z87.literal("schematic_sheet"),
1664
+ import { z as z88 } from "zod";
1665
+ var schematic_sheet = z88.object({
1666
+ type: z88.literal("schematic_sheet"),
1649
1667
  schematic_sheet_id: getZodPrefixedIdWithDefault("schematic_sheet"),
1650
- name: z87.string().optional(),
1651
- subcircuit_id: z87.string().optional()
1668
+ name: z88.string().optional(),
1669
+ subcircuit_id: z88.string().optional()
1652
1670
  }).describe(
1653
1671
  "Defines a schematic sheet or page that components can be placed on"
1654
1672
  );
1655
1673
  expectTypesMatch(true);
1656
1674
 
1657
1675
  // src/pcb/properties/brep.ts
1658
- import { z as z88 } from "zod";
1659
- var point_with_bulge = z88.object({
1676
+ import { z as z89 } from "zod";
1677
+ var point_with_bulge = z89.object({
1660
1678
  x: distance,
1661
1679
  y: distance,
1662
- bulge: z88.number().optional()
1680
+ bulge: z89.number().optional()
1663
1681
  });
1664
1682
  expectTypesMatch(true);
1665
- var ring = z88.object({
1666
- vertices: z88.array(point_with_bulge)
1683
+ var ring = z89.object({
1684
+ vertices: z89.array(point_with_bulge)
1667
1685
  });
1668
1686
  expectTypesMatch(true);
1669
- var brep_shape = z88.object({
1687
+ var brep_shape = z89.object({
1670
1688
  outer_ring: ring,
1671
- inner_rings: z88.array(ring).default([])
1689
+ inner_rings: z89.array(ring).default([])
1672
1690
  });
1673
1691
  expectTypesMatch(true);
1674
1692
 
1675
1693
  // src/pcb/properties/pcb_route_hints.ts
1676
- import { z as z89 } from "zod";
1677
- var pcb_route_hint = z89.object({
1694
+ import { z as z90 } from "zod";
1695
+ var pcb_route_hint = z90.object({
1678
1696
  x: distance,
1679
1697
  y: distance,
1680
- via: z89.boolean().optional(),
1698
+ via: z90.boolean().optional(),
1681
1699
  via_to_layer: layer_ref.optional()
1682
1700
  });
1683
- var pcb_route_hints = z89.array(pcb_route_hint);
1701
+ var pcb_route_hints = z90.array(pcb_route_hint);
1684
1702
  expectTypesMatch(true);
1685
1703
  expectTypesMatch(true);
1686
1704
 
1687
1705
  // src/pcb/properties/route_hint_point.ts
1688
- import { z as z90 } from "zod";
1689
- var route_hint_point = z90.object({
1706
+ import { z as z91 } from "zod";
1707
+ var route_hint_point = z91.object({
1690
1708
  x: distance,
1691
1709
  y: distance,
1692
- via: z90.boolean().optional(),
1710
+ via: z91.boolean().optional(),
1693
1711
  to_layer: layer_ref.optional(),
1694
1712
  trace_width: distance.optional()
1695
1713
  });
1696
1714
  expectTypesMatch(true);
1697
1715
 
1698
1716
  // src/pcb/pcb_component.ts
1699
- import { z as z91 } from "zod";
1700
- var pcb_component = z91.object({
1701
- type: z91.literal("pcb_component"),
1717
+ import { z as z92 } from "zod";
1718
+ var pcb_component = z92.object({
1719
+ type: z92.literal("pcb_component"),
1702
1720
  pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
1703
- source_component_id: z91.string(),
1721
+ source_component_id: z92.string(),
1704
1722
  center: point,
1705
1723
  layer: layer_ref,
1706
1724
  rotation,
1707
- display_offset_x: z91.string().optional().describe(
1725
+ display_offset_x: z92.string().optional().describe(
1708
1726
  "How to display the x offset for this part, usually corresponding with how the user specified it"
1709
1727
  ),
1710
- display_offset_y: z91.string().optional().describe(
1728
+ display_offset_y: z92.string().optional().describe(
1711
1729
  "How to display the y offset for this part, usually corresponding with how the user specified it"
1712
1730
  ),
1713
1731
  width: length,
1714
1732
  height: length,
1715
- do_not_place: z91.boolean().optional(),
1716
- is_allowed_to_be_off_board: z91.boolean().optional(),
1717
- subcircuit_id: z91.string().optional(),
1718
- pcb_group_id: z91.string().optional(),
1719
- position_mode: z91.enum([
1733
+ do_not_place: z92.boolean().optional(),
1734
+ is_allowed_to_be_off_board: z92.boolean().optional(),
1735
+ subcircuit_id: z92.string().optional(),
1736
+ pcb_group_id: z92.string().optional(),
1737
+ position_mode: z92.enum([
1720
1738
  "packed",
1721
1739
  "relative_to_group_anchor",
1722
1740
  "relative_to_another_component",
@@ -1724,122 +1742,122 @@ var pcb_component = z91.object({
1724
1742
  ]).optional(),
1725
1743
  anchor_position: point.optional(),
1726
1744
  anchor_alignment: ninePointAnchor.optional(),
1727
- positioned_relative_to_pcb_group_id: z91.string().optional(),
1728
- positioned_relative_to_pcb_board_id: z91.string().optional(),
1745
+ positioned_relative_to_pcb_group_id: z92.string().optional(),
1746
+ positioned_relative_to_pcb_board_id: z92.string().optional(),
1729
1747
  cable_insertion_center: point.optional(),
1730
- metadata: z91.object({
1748
+ metadata: z92.object({
1731
1749
  kicad_footprint: kicadFootprintMetadata.optional()
1732
1750
  }).optional(),
1733
- obstructs_within_bounds: z91.boolean().default(true).describe(
1751
+ obstructs_within_bounds: z92.boolean().default(true).describe(
1734
1752
  "Does this component take up all the space within its bounds on a layer. This is generally true except for when separated pin headers are being represented by a single component (in which case, chips can be placed between the pin headers) or for tall modules where chips fit underneath"
1735
1753
  )
1736
1754
  }).describe("Defines a component on the PCB");
1737
1755
  expectTypesMatch(true);
1738
1756
 
1739
1757
  // src/pcb/pcb_hole.ts
1740
- import { z as z92 } from "zod";
1741
- var pcb_hole_circle = z92.object({
1742
- type: z92.literal("pcb_hole"),
1758
+ import { z as z93 } from "zod";
1759
+ var pcb_hole_circle = z93.object({
1760
+ type: z93.literal("pcb_hole"),
1743
1761
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1744
- pcb_group_id: z92.string().optional(),
1745
- subcircuit_id: z92.string().optional(),
1746
- pcb_component_id: z92.string().optional(),
1747
- hole_shape: z92.literal("circle"),
1748
- hole_diameter: z92.number(),
1762
+ pcb_group_id: z93.string().optional(),
1763
+ subcircuit_id: z93.string().optional(),
1764
+ pcb_component_id: z93.string().optional(),
1765
+ hole_shape: z93.literal("circle"),
1766
+ hole_diameter: z93.number(),
1749
1767
  x: distance,
1750
1768
  y: distance,
1751
- is_covered_with_solder_mask: z92.boolean().optional(),
1752
- soldermask_margin: z92.number().optional()
1769
+ is_covered_with_solder_mask: z93.boolean().optional(),
1770
+ soldermask_margin: z93.number().optional()
1753
1771
  });
1754
1772
  var pcb_hole_circle_shape = pcb_hole_circle.describe(
1755
1773
  "Defines a circular hole on the PCB"
1756
1774
  );
1757
1775
  expectTypesMatch(true);
1758
- var pcb_hole_rect = z92.object({
1759
- type: z92.literal("pcb_hole"),
1776
+ var pcb_hole_rect = z93.object({
1777
+ type: z93.literal("pcb_hole"),
1760
1778
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1761
- pcb_group_id: z92.string().optional(),
1762
- subcircuit_id: z92.string().optional(),
1763
- pcb_component_id: z92.string().optional(),
1764
- hole_shape: z92.literal("rect"),
1765
- hole_width: z92.number(),
1766
- hole_height: z92.number(),
1779
+ pcb_group_id: z93.string().optional(),
1780
+ subcircuit_id: z93.string().optional(),
1781
+ pcb_component_id: z93.string().optional(),
1782
+ hole_shape: z93.literal("rect"),
1783
+ hole_width: z93.number(),
1784
+ hole_height: z93.number(),
1767
1785
  x: distance,
1768
1786
  y: distance,
1769
- is_covered_with_solder_mask: z92.boolean().optional(),
1770
- soldermask_margin: z92.number().optional()
1787
+ is_covered_with_solder_mask: z93.boolean().optional(),
1788
+ soldermask_margin: z93.number().optional()
1771
1789
  });
1772
1790
  var pcb_hole_rect_shape = pcb_hole_rect.describe(
1773
1791
  "Defines a rectangular (square-capable) hole on the PCB. Use equal width/height for square."
1774
1792
  );
1775
1793
  expectTypesMatch(true);
1776
- var pcb_hole_circle_or_square = z92.object({
1777
- type: z92.literal("pcb_hole"),
1794
+ var pcb_hole_circle_or_square = z93.object({
1795
+ type: z93.literal("pcb_hole"),
1778
1796
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1779
- pcb_group_id: z92.string().optional(),
1780
- subcircuit_id: z92.string().optional(),
1781
- pcb_component_id: z92.string().optional(),
1782
- hole_shape: z92.enum(["circle", "square"]),
1783
- hole_diameter: z92.number(),
1797
+ pcb_group_id: z93.string().optional(),
1798
+ subcircuit_id: z93.string().optional(),
1799
+ pcb_component_id: z93.string().optional(),
1800
+ hole_shape: z93.enum(["circle", "square"]),
1801
+ hole_diameter: z93.number(),
1784
1802
  x: distance,
1785
1803
  y: distance,
1786
- is_covered_with_solder_mask: z92.boolean().optional(),
1787
- soldermask_margin: z92.number().optional()
1804
+ is_covered_with_solder_mask: z93.boolean().optional(),
1805
+ soldermask_margin: z93.number().optional()
1788
1806
  });
1789
1807
  var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
1790
1808
  "Defines a circular or square hole on the PCB"
1791
1809
  );
1792
1810
  expectTypesMatch(true);
1793
- var pcb_hole_oval = z92.object({
1794
- type: z92.literal("pcb_hole"),
1811
+ var pcb_hole_oval = z93.object({
1812
+ type: z93.literal("pcb_hole"),
1795
1813
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1796
- pcb_group_id: z92.string().optional(),
1797
- subcircuit_id: z92.string().optional(),
1798
- pcb_component_id: z92.string().optional(),
1799
- hole_shape: z92.literal("oval"),
1800
- hole_width: z92.number(),
1801
- hole_height: z92.number(),
1814
+ pcb_group_id: z93.string().optional(),
1815
+ subcircuit_id: z93.string().optional(),
1816
+ pcb_component_id: z93.string().optional(),
1817
+ hole_shape: z93.literal("oval"),
1818
+ hole_width: z93.number(),
1819
+ hole_height: z93.number(),
1802
1820
  x: distance,
1803
1821
  y: distance,
1804
- is_covered_with_solder_mask: z92.boolean().optional(),
1805
- soldermask_margin: z92.number().optional()
1822
+ is_covered_with_solder_mask: z93.boolean().optional(),
1823
+ soldermask_margin: z93.number().optional()
1806
1824
  });
1807
1825
  var pcb_hole_oval_shape = pcb_hole_oval.describe(
1808
1826
  "Defines an oval hole on the PCB"
1809
1827
  );
1810
1828
  expectTypesMatch(true);
1811
- var pcb_hole_pill = z92.object({
1812
- type: z92.literal("pcb_hole"),
1829
+ var pcb_hole_pill = z93.object({
1830
+ type: z93.literal("pcb_hole"),
1813
1831
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1814
- pcb_group_id: z92.string().optional(),
1815
- subcircuit_id: z92.string().optional(),
1816
- pcb_component_id: z92.string().optional(),
1817
- hole_shape: z92.literal("pill"),
1818
- hole_width: z92.number(),
1819
- hole_height: z92.number(),
1832
+ pcb_group_id: z93.string().optional(),
1833
+ subcircuit_id: z93.string().optional(),
1834
+ pcb_component_id: z93.string().optional(),
1835
+ hole_shape: z93.literal("pill"),
1836
+ hole_width: z93.number(),
1837
+ hole_height: z93.number(),
1820
1838
  x: distance,
1821
1839
  y: distance,
1822
- is_covered_with_solder_mask: z92.boolean().optional(),
1823
- soldermask_margin: z92.number().optional()
1840
+ is_covered_with_solder_mask: z93.boolean().optional(),
1841
+ soldermask_margin: z93.number().optional()
1824
1842
  });
1825
1843
  var pcb_hole_pill_shape = pcb_hole_pill.describe(
1826
1844
  "Defines a pill-shaped hole on the PCB"
1827
1845
  );
1828
1846
  expectTypesMatch(true);
1829
- var pcb_hole_rotated_pill = z92.object({
1830
- type: z92.literal("pcb_hole"),
1847
+ var pcb_hole_rotated_pill = z93.object({
1848
+ type: z93.literal("pcb_hole"),
1831
1849
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1832
- pcb_group_id: z92.string().optional(),
1833
- subcircuit_id: z92.string().optional(),
1834
- pcb_component_id: z92.string().optional(),
1835
- hole_shape: z92.literal("rotated_pill"),
1836
- hole_width: z92.number(),
1837
- hole_height: z92.number(),
1850
+ pcb_group_id: z93.string().optional(),
1851
+ subcircuit_id: z93.string().optional(),
1852
+ pcb_component_id: z93.string().optional(),
1853
+ hole_shape: z93.literal("rotated_pill"),
1854
+ hole_width: z93.number(),
1855
+ hole_height: z93.number(),
1838
1856
  x: distance,
1839
1857
  y: distance,
1840
1858
  ccw_rotation: rotation,
1841
- is_covered_with_solder_mask: z92.boolean().optional(),
1842
- soldermask_margin: z92.number().optional()
1859
+ is_covered_with_solder_mask: z93.boolean().optional(),
1860
+ soldermask_margin: z93.number().optional()
1843
1861
  });
1844
1862
  var pcb_hole_rotated_pill_shape = pcb_hole_rotated_pill.describe(
1845
1863
  "Defines a rotated pill-shaped hole on the PCB"
@@ -1848,147 +1866,147 @@ expectTypesMatch(true);
1848
1866
  var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval).or(pcb_hole_pill).or(pcb_hole_rotated_pill).or(pcb_hole_circle).or(pcb_hole_rect);
1849
1867
 
1850
1868
  // src/pcb/pcb_plated_hole.ts
1851
- import { z as z93 } from "zod";
1852
- var pcb_plated_hole_circle = z93.object({
1853
- type: z93.literal("pcb_plated_hole"),
1854
- shape: z93.literal("circle"),
1855
- pcb_group_id: z93.string().optional(),
1856
- subcircuit_id: z93.string().optional(),
1857
- outer_diameter: z93.number(),
1858
- hole_diameter: z93.number(),
1859
- is_covered_with_solder_mask: z93.boolean().optional(),
1869
+ import { z as z94 } from "zod";
1870
+ var pcb_plated_hole_circle = z94.object({
1871
+ type: z94.literal("pcb_plated_hole"),
1872
+ shape: z94.literal("circle"),
1873
+ pcb_group_id: z94.string().optional(),
1874
+ subcircuit_id: z94.string().optional(),
1875
+ outer_diameter: z94.number(),
1876
+ hole_diameter: z94.number(),
1877
+ is_covered_with_solder_mask: z94.boolean().optional(),
1860
1878
  x: distance,
1861
1879
  y: distance,
1862
- layers: z93.array(layer_ref),
1863
- port_hints: z93.array(z93.string()).optional(),
1864
- pcb_component_id: z93.string().optional(),
1865
- pcb_port_id: z93.string().optional(),
1880
+ layers: z94.array(layer_ref),
1881
+ port_hints: z94.array(z94.string()).optional(),
1882
+ pcb_component_id: z94.string().optional(),
1883
+ pcb_port_id: z94.string().optional(),
1866
1884
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1867
- soldermask_margin: z93.number().optional()
1885
+ soldermask_margin: z94.number().optional()
1868
1886
  });
1869
- var pcb_plated_hole_oval = z93.object({
1870
- type: z93.literal("pcb_plated_hole"),
1871
- shape: z93.enum(["oval", "pill"]),
1872
- pcb_group_id: z93.string().optional(),
1873
- subcircuit_id: z93.string().optional(),
1874
- outer_width: z93.number(),
1875
- outer_height: z93.number(),
1876
- hole_width: z93.number(),
1877
- hole_height: z93.number(),
1878
- is_covered_with_solder_mask: z93.boolean().optional(),
1887
+ var pcb_plated_hole_oval = z94.object({
1888
+ type: z94.literal("pcb_plated_hole"),
1889
+ shape: z94.enum(["oval", "pill"]),
1890
+ pcb_group_id: z94.string().optional(),
1891
+ subcircuit_id: z94.string().optional(),
1892
+ outer_width: z94.number(),
1893
+ outer_height: z94.number(),
1894
+ hole_width: z94.number(),
1895
+ hole_height: z94.number(),
1896
+ is_covered_with_solder_mask: z94.boolean().optional(),
1879
1897
  x: distance,
1880
1898
  y: distance,
1881
1899
  ccw_rotation: rotation,
1882
- layers: z93.array(layer_ref),
1883
- port_hints: z93.array(z93.string()).optional(),
1884
- pcb_component_id: z93.string().optional(),
1885
- pcb_port_id: z93.string().optional(),
1900
+ layers: z94.array(layer_ref),
1901
+ port_hints: z94.array(z94.string()).optional(),
1902
+ pcb_component_id: z94.string().optional(),
1903
+ pcb_port_id: z94.string().optional(),
1886
1904
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1887
- soldermask_margin: z93.number().optional()
1905
+ soldermask_margin: z94.number().optional()
1888
1906
  });
1889
- var pcb_circular_hole_with_rect_pad = z93.object({
1890
- type: z93.literal("pcb_plated_hole"),
1891
- shape: z93.literal("circular_hole_with_rect_pad"),
1892
- pcb_group_id: z93.string().optional(),
1893
- subcircuit_id: z93.string().optional(),
1894
- hole_shape: z93.literal("circle"),
1895
- pad_shape: z93.literal("rect"),
1896
- hole_diameter: z93.number(),
1897
- rect_pad_width: z93.number(),
1898
- rect_pad_height: z93.number(),
1899
- rect_border_radius: z93.number().optional(),
1907
+ var pcb_circular_hole_with_rect_pad = z94.object({
1908
+ type: z94.literal("pcb_plated_hole"),
1909
+ shape: z94.literal("circular_hole_with_rect_pad"),
1910
+ pcb_group_id: z94.string().optional(),
1911
+ subcircuit_id: z94.string().optional(),
1912
+ hole_shape: z94.literal("circle"),
1913
+ pad_shape: z94.literal("rect"),
1914
+ hole_diameter: z94.number(),
1915
+ rect_pad_width: z94.number(),
1916
+ rect_pad_height: z94.number(),
1917
+ rect_border_radius: z94.number().optional(),
1900
1918
  hole_offset_x: distance.default(0),
1901
1919
  hole_offset_y: distance.default(0),
1902
- is_covered_with_solder_mask: z93.boolean().optional(),
1920
+ is_covered_with_solder_mask: z94.boolean().optional(),
1903
1921
  x: distance,
1904
1922
  y: distance,
1905
- layers: z93.array(layer_ref),
1906
- port_hints: z93.array(z93.string()).optional(),
1907
- pcb_component_id: z93.string().optional(),
1908
- pcb_port_id: z93.string().optional(),
1923
+ layers: z94.array(layer_ref),
1924
+ port_hints: z94.array(z94.string()).optional(),
1925
+ pcb_component_id: z94.string().optional(),
1926
+ pcb_port_id: z94.string().optional(),
1909
1927
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1910
- soldermask_margin: z93.number().optional(),
1928
+ soldermask_margin: z94.number().optional(),
1911
1929
  rect_ccw_rotation: rotation.optional()
1912
1930
  });
1913
- var pcb_pill_hole_with_rect_pad = z93.object({
1914
- type: z93.literal("pcb_plated_hole"),
1915
- shape: z93.literal("pill_hole_with_rect_pad"),
1916
- pcb_group_id: z93.string().optional(),
1917
- subcircuit_id: z93.string().optional(),
1918
- hole_shape: z93.literal("pill"),
1919
- pad_shape: z93.literal("rect"),
1920
- hole_width: z93.number(),
1921
- hole_height: z93.number(),
1922
- rect_pad_width: z93.number(),
1923
- rect_pad_height: z93.number(),
1924
- rect_border_radius: z93.number().optional(),
1931
+ var pcb_pill_hole_with_rect_pad = z94.object({
1932
+ type: z94.literal("pcb_plated_hole"),
1933
+ shape: z94.literal("pill_hole_with_rect_pad"),
1934
+ pcb_group_id: z94.string().optional(),
1935
+ subcircuit_id: z94.string().optional(),
1936
+ hole_shape: z94.literal("pill"),
1937
+ pad_shape: z94.literal("rect"),
1938
+ hole_width: z94.number(),
1939
+ hole_height: z94.number(),
1940
+ rect_pad_width: z94.number(),
1941
+ rect_pad_height: z94.number(),
1942
+ rect_border_radius: z94.number().optional(),
1925
1943
  hole_offset_x: distance.default(0),
1926
1944
  hole_offset_y: distance.default(0),
1927
- is_covered_with_solder_mask: z93.boolean().optional(),
1945
+ is_covered_with_solder_mask: z94.boolean().optional(),
1928
1946
  x: distance,
1929
1947
  y: distance,
1930
- layers: z93.array(layer_ref),
1931
- port_hints: z93.array(z93.string()).optional(),
1932
- pcb_component_id: z93.string().optional(),
1933
- pcb_port_id: z93.string().optional(),
1948
+ layers: z94.array(layer_ref),
1949
+ port_hints: z94.array(z94.string()).optional(),
1950
+ pcb_component_id: z94.string().optional(),
1951
+ pcb_port_id: z94.string().optional(),
1934
1952
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1935
- soldermask_margin: z93.number().optional()
1953
+ soldermask_margin: z94.number().optional()
1936
1954
  });
1937
- var pcb_rotated_pill_hole_with_rect_pad = z93.object({
1938
- type: z93.literal("pcb_plated_hole"),
1939
- shape: z93.literal("rotated_pill_hole_with_rect_pad"),
1940
- pcb_group_id: z93.string().optional(),
1941
- subcircuit_id: z93.string().optional(),
1942
- hole_shape: z93.literal("rotated_pill"),
1943
- pad_shape: z93.literal("rect"),
1944
- hole_width: z93.number(),
1945
- hole_height: z93.number(),
1955
+ var pcb_rotated_pill_hole_with_rect_pad = z94.object({
1956
+ type: z94.literal("pcb_plated_hole"),
1957
+ shape: z94.literal("rotated_pill_hole_with_rect_pad"),
1958
+ pcb_group_id: z94.string().optional(),
1959
+ subcircuit_id: z94.string().optional(),
1960
+ hole_shape: z94.literal("rotated_pill"),
1961
+ pad_shape: z94.literal("rect"),
1962
+ hole_width: z94.number(),
1963
+ hole_height: z94.number(),
1946
1964
  hole_ccw_rotation: rotation,
1947
- rect_pad_width: z93.number(),
1948
- rect_pad_height: z93.number(),
1949
- rect_border_radius: z93.number().optional(),
1965
+ rect_pad_width: z94.number(),
1966
+ rect_pad_height: z94.number(),
1967
+ rect_border_radius: z94.number().optional(),
1950
1968
  rect_ccw_rotation: rotation,
1951
1969
  hole_offset_x: distance.default(0),
1952
1970
  hole_offset_y: distance.default(0),
1953
- is_covered_with_solder_mask: z93.boolean().optional(),
1971
+ is_covered_with_solder_mask: z94.boolean().optional(),
1954
1972
  x: distance,
1955
1973
  y: distance,
1956
- layers: z93.array(layer_ref),
1957
- port_hints: z93.array(z93.string()).optional(),
1958
- pcb_component_id: z93.string().optional(),
1959
- pcb_port_id: z93.string().optional(),
1974
+ layers: z94.array(layer_ref),
1975
+ port_hints: z94.array(z94.string()).optional(),
1976
+ pcb_component_id: z94.string().optional(),
1977
+ pcb_port_id: z94.string().optional(),
1960
1978
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1961
- soldermask_margin: z93.number().optional()
1979
+ soldermask_margin: z94.number().optional()
1962
1980
  });
1963
- var pcb_hole_with_polygon_pad = z93.object({
1964
- type: z93.literal("pcb_plated_hole"),
1965
- shape: z93.literal("hole_with_polygon_pad"),
1966
- pcb_group_id: z93.string().optional(),
1967
- subcircuit_id: z93.string().optional(),
1968
- hole_shape: z93.enum(["circle", "oval", "pill", "rotated_pill"]),
1969
- hole_diameter: z93.number().optional(),
1970
- hole_width: z93.number().optional(),
1971
- hole_height: z93.number().optional(),
1972
- pad_outline: z93.array(
1973
- z93.object({
1981
+ var pcb_hole_with_polygon_pad = z94.object({
1982
+ type: z94.literal("pcb_plated_hole"),
1983
+ shape: z94.literal("hole_with_polygon_pad"),
1984
+ pcb_group_id: z94.string().optional(),
1985
+ subcircuit_id: z94.string().optional(),
1986
+ hole_shape: z94.enum(["circle", "oval", "pill", "rotated_pill"]),
1987
+ hole_diameter: z94.number().optional(),
1988
+ hole_width: z94.number().optional(),
1989
+ hole_height: z94.number().optional(),
1990
+ pad_outline: z94.array(
1991
+ z94.object({
1974
1992
  x: distance,
1975
1993
  y: distance
1976
1994
  })
1977
1995
  ).min(3),
1978
1996
  hole_offset_x: distance.default(0),
1979
1997
  hole_offset_y: distance.default(0),
1980
- is_covered_with_solder_mask: z93.boolean().optional(),
1998
+ is_covered_with_solder_mask: z94.boolean().optional(),
1981
1999
  x: distance,
1982
2000
  y: distance,
1983
- layers: z93.array(layer_ref),
1984
- port_hints: z93.array(z93.string()).optional(),
1985
- pcb_component_id: z93.string().optional(),
1986
- pcb_port_id: z93.string().optional(),
2001
+ layers: z94.array(layer_ref),
2002
+ port_hints: z94.array(z94.string()).optional(),
2003
+ pcb_component_id: z94.string().optional(),
2004
+ pcb_port_id: z94.string().optional(),
1987
2005
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1988
- soldermask_margin: z93.number().optional(),
2006
+ soldermask_margin: z94.number().optional(),
1989
2007
  ccw_rotation: rotation.optional()
1990
2008
  });
1991
- var pcb_plated_hole = z93.union([
2009
+ var pcb_plated_hole = z94.union([
1992
2010
  pcb_plated_hole_circle,
1993
2011
  pcb_plated_hole_oval,
1994
2012
  pcb_circular_hole_with_rect_pad,
@@ -2006,138 +2024,138 @@ expectTypesMatch(true);
2006
2024
  expectTypesMatch(true);
2007
2025
 
2008
2026
  // src/pcb/pcb_port.ts
2009
- import { z as z94 } from "zod";
2010
- var pcb_port = z94.object({
2011
- type: z94.literal("pcb_port"),
2027
+ import { z as z95 } from "zod";
2028
+ var pcb_port = z95.object({
2029
+ type: z95.literal("pcb_port"),
2012
2030
  pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
2013
- pcb_group_id: z94.string().optional(),
2014
- subcircuit_id: z94.string().optional(),
2015
- source_port_id: z94.string(),
2016
- pcb_component_id: z94.string().optional(),
2031
+ pcb_group_id: z95.string().optional(),
2032
+ subcircuit_id: z95.string().optional(),
2033
+ source_port_id: z95.string(),
2034
+ pcb_component_id: z95.string().optional(),
2017
2035
  x: distance,
2018
2036
  y: distance,
2019
- layers: z94.array(layer_ref),
2020
- is_board_pinout: z94.boolean().optional()
2037
+ layers: z95.array(layer_ref),
2038
+ is_board_pinout: z95.boolean().optional()
2021
2039
  }).describe("Defines a port on the PCB");
2022
2040
  expectTypesMatch(true);
2023
2041
 
2024
2042
  // src/pcb/pcb_smtpad.ts
2025
- import { z as z95 } from "zod";
2026
- var pcb_smtpad_circle = z95.object({
2027
- type: z95.literal("pcb_smtpad"),
2028
- shape: z95.literal("circle"),
2043
+ import { z as z96 } from "zod";
2044
+ var pcb_smtpad_circle = z96.object({
2045
+ type: z96.literal("pcb_smtpad"),
2046
+ shape: z96.literal("circle"),
2029
2047
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
2030
- pcb_group_id: z95.string().optional(),
2031
- subcircuit_id: z95.string().optional(),
2048
+ pcb_group_id: z96.string().optional(),
2049
+ subcircuit_id: z96.string().optional(),
2032
2050
  x: distance,
2033
2051
  y: distance,
2034
- radius: z95.number(),
2052
+ radius: z96.number(),
2035
2053
  layer: layer_ref,
2036
- port_hints: z95.array(z95.string()).optional(),
2037
- pcb_component_id: z95.string().optional(),
2038
- pcb_port_id: z95.string().optional(),
2039
- is_covered_with_solder_mask: z95.boolean().optional(),
2040
- soldermask_margin: z95.number().optional()
2054
+ port_hints: z96.array(z96.string()).optional(),
2055
+ pcb_component_id: z96.string().optional(),
2056
+ pcb_port_id: z96.string().optional(),
2057
+ is_covered_with_solder_mask: z96.boolean().optional(),
2058
+ soldermask_margin: z96.number().optional()
2041
2059
  });
2042
- var pcb_smtpad_rect = z95.object({
2043
- type: z95.literal("pcb_smtpad"),
2044
- shape: z95.literal("rect"),
2060
+ var pcb_smtpad_rect = z96.object({
2061
+ type: z96.literal("pcb_smtpad"),
2062
+ shape: z96.literal("rect"),
2045
2063
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
2046
- pcb_group_id: z95.string().optional(),
2047
- subcircuit_id: z95.string().optional(),
2064
+ pcb_group_id: z96.string().optional(),
2065
+ subcircuit_id: z96.string().optional(),
2048
2066
  x: distance,
2049
2067
  y: distance,
2050
- width: z95.number(),
2051
- height: z95.number(),
2052
- rect_border_radius: z95.number().optional(),
2053
- corner_radius: z95.number().optional(),
2068
+ width: z96.number(),
2069
+ height: z96.number(),
2070
+ rect_border_radius: z96.number().optional(),
2071
+ corner_radius: z96.number().optional(),
2054
2072
  layer: layer_ref,
2055
- port_hints: z95.array(z95.string()).optional(),
2056
- pcb_component_id: z95.string().optional(),
2057
- pcb_port_id: z95.string().optional(),
2058
- is_covered_with_solder_mask: z95.boolean().optional(),
2059
- soldermask_margin: z95.number().optional(),
2060
- soldermask_margin_left: z95.number().optional(),
2061
- soldermask_margin_top: z95.number().optional(),
2062
- soldermask_margin_right: z95.number().optional(),
2063
- soldermask_margin_bottom: z95.number().optional()
2064
- });
2065
- var pcb_smtpad_rotated_rect = z95.object({
2066
- type: z95.literal("pcb_smtpad"),
2067
- shape: z95.literal("rotated_rect"),
2073
+ port_hints: z96.array(z96.string()).optional(),
2074
+ pcb_component_id: z96.string().optional(),
2075
+ pcb_port_id: z96.string().optional(),
2076
+ is_covered_with_solder_mask: z96.boolean().optional(),
2077
+ soldermask_margin: z96.number().optional(),
2078
+ soldermask_margin_left: z96.number().optional(),
2079
+ soldermask_margin_top: z96.number().optional(),
2080
+ soldermask_margin_right: z96.number().optional(),
2081
+ soldermask_margin_bottom: z96.number().optional()
2082
+ });
2083
+ var pcb_smtpad_rotated_rect = z96.object({
2084
+ type: z96.literal("pcb_smtpad"),
2085
+ shape: z96.literal("rotated_rect"),
2068
2086
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
2069
- pcb_group_id: z95.string().optional(),
2070
- subcircuit_id: z95.string().optional(),
2087
+ pcb_group_id: z96.string().optional(),
2088
+ subcircuit_id: z96.string().optional(),
2071
2089
  x: distance,
2072
2090
  y: distance,
2073
- width: z95.number(),
2074
- height: z95.number(),
2075
- rect_border_radius: z95.number().optional(),
2076
- corner_radius: z95.number().optional(),
2091
+ width: z96.number(),
2092
+ height: z96.number(),
2093
+ rect_border_radius: z96.number().optional(),
2094
+ corner_radius: z96.number().optional(),
2077
2095
  ccw_rotation: rotation,
2078
2096
  layer: layer_ref,
2079
- port_hints: z95.array(z95.string()).optional(),
2080
- pcb_component_id: z95.string().optional(),
2081
- pcb_port_id: z95.string().optional(),
2082
- is_covered_with_solder_mask: z95.boolean().optional(),
2083
- soldermask_margin: z95.number().optional(),
2084
- soldermask_margin_left: z95.number().optional(),
2085
- soldermask_margin_top: z95.number().optional(),
2086
- soldermask_margin_right: z95.number().optional(),
2087
- soldermask_margin_bottom: z95.number().optional()
2088
- });
2089
- var pcb_smtpad_pill = z95.object({
2090
- type: z95.literal("pcb_smtpad"),
2091
- shape: z95.literal("pill"),
2097
+ port_hints: z96.array(z96.string()).optional(),
2098
+ pcb_component_id: z96.string().optional(),
2099
+ pcb_port_id: z96.string().optional(),
2100
+ is_covered_with_solder_mask: z96.boolean().optional(),
2101
+ soldermask_margin: z96.number().optional(),
2102
+ soldermask_margin_left: z96.number().optional(),
2103
+ soldermask_margin_top: z96.number().optional(),
2104
+ soldermask_margin_right: z96.number().optional(),
2105
+ soldermask_margin_bottom: z96.number().optional()
2106
+ });
2107
+ var pcb_smtpad_pill = z96.object({
2108
+ type: z96.literal("pcb_smtpad"),
2109
+ shape: z96.literal("pill"),
2092
2110
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
2093
- pcb_group_id: z95.string().optional(),
2094
- subcircuit_id: z95.string().optional(),
2111
+ pcb_group_id: z96.string().optional(),
2112
+ subcircuit_id: z96.string().optional(),
2095
2113
  x: distance,
2096
2114
  y: distance,
2097
- width: z95.number(),
2098
- height: z95.number(),
2099
- radius: z95.number(),
2115
+ width: z96.number(),
2116
+ height: z96.number(),
2117
+ radius: z96.number(),
2100
2118
  layer: layer_ref,
2101
- port_hints: z95.array(z95.string()).optional(),
2102
- pcb_component_id: z95.string().optional(),
2103
- pcb_port_id: z95.string().optional(),
2104
- is_covered_with_solder_mask: z95.boolean().optional(),
2105
- soldermask_margin: z95.number().optional()
2119
+ port_hints: z96.array(z96.string()).optional(),
2120
+ pcb_component_id: z96.string().optional(),
2121
+ pcb_port_id: z96.string().optional(),
2122
+ is_covered_with_solder_mask: z96.boolean().optional(),
2123
+ soldermask_margin: z96.number().optional()
2106
2124
  });
2107
- var pcb_smtpad_rotated_pill = z95.object({
2108
- type: z95.literal("pcb_smtpad"),
2109
- shape: z95.literal("rotated_pill"),
2125
+ var pcb_smtpad_rotated_pill = z96.object({
2126
+ type: z96.literal("pcb_smtpad"),
2127
+ shape: z96.literal("rotated_pill"),
2110
2128
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
2111
- pcb_group_id: z95.string().optional(),
2112
- subcircuit_id: z95.string().optional(),
2129
+ pcb_group_id: z96.string().optional(),
2130
+ subcircuit_id: z96.string().optional(),
2113
2131
  x: distance,
2114
2132
  y: distance,
2115
- width: z95.number(),
2116
- height: z95.number(),
2117
- radius: z95.number(),
2133
+ width: z96.number(),
2134
+ height: z96.number(),
2135
+ radius: z96.number(),
2118
2136
  ccw_rotation: rotation,
2119
2137
  layer: layer_ref,
2120
- port_hints: z95.array(z95.string()).optional(),
2121
- pcb_component_id: z95.string().optional(),
2122
- pcb_port_id: z95.string().optional(),
2123
- is_covered_with_solder_mask: z95.boolean().optional(),
2124
- soldermask_margin: z95.number().optional()
2138
+ port_hints: z96.array(z96.string()).optional(),
2139
+ pcb_component_id: z96.string().optional(),
2140
+ pcb_port_id: z96.string().optional(),
2141
+ is_covered_with_solder_mask: z96.boolean().optional(),
2142
+ soldermask_margin: z96.number().optional()
2125
2143
  });
2126
- var pcb_smtpad_polygon = z95.object({
2127
- type: z95.literal("pcb_smtpad"),
2128
- shape: z95.literal("polygon"),
2144
+ var pcb_smtpad_polygon = z96.object({
2145
+ type: z96.literal("pcb_smtpad"),
2146
+ shape: z96.literal("polygon"),
2129
2147
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
2130
- pcb_group_id: z95.string().optional(),
2131
- subcircuit_id: z95.string().optional(),
2132
- points: z95.array(point),
2148
+ pcb_group_id: z96.string().optional(),
2149
+ subcircuit_id: z96.string().optional(),
2150
+ points: z96.array(point),
2133
2151
  layer: layer_ref,
2134
- port_hints: z95.array(z95.string()).optional(),
2135
- pcb_component_id: z95.string().optional(),
2136
- pcb_port_id: z95.string().optional(),
2137
- is_covered_with_solder_mask: z95.boolean().optional(),
2138
- soldermask_margin: z95.number().optional()
2152
+ port_hints: z96.array(z96.string()).optional(),
2153
+ pcb_component_id: z96.string().optional(),
2154
+ pcb_port_id: z96.string().optional(),
2155
+ is_covered_with_solder_mask: z96.boolean().optional(),
2156
+ soldermask_margin: z96.number().optional()
2139
2157
  });
2140
- var pcb_smtpad = z95.discriminatedUnion("shape", [
2158
+ var pcb_smtpad = z96.discriminatedUnion("shape", [
2141
2159
  pcb_smtpad_circle,
2142
2160
  pcb_smtpad_rect,
2143
2161
  pcb_smtpad_rotated_rect,
@@ -2153,79 +2171,79 @@ expectTypesMatch(true);
2153
2171
  expectTypesMatch(true);
2154
2172
 
2155
2173
  // src/pcb/pcb_solder_paste.ts
2156
- import { z as z96 } from "zod";
2157
- var pcb_solder_paste_circle = z96.object({
2158
- type: z96.literal("pcb_solder_paste"),
2159
- shape: z96.literal("circle"),
2174
+ import { z as z97 } from "zod";
2175
+ var pcb_solder_paste_circle = z97.object({
2176
+ type: z97.literal("pcb_solder_paste"),
2177
+ shape: z97.literal("circle"),
2160
2178
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
2161
- pcb_group_id: z96.string().optional(),
2162
- subcircuit_id: z96.string().optional(),
2179
+ pcb_group_id: z97.string().optional(),
2180
+ subcircuit_id: z97.string().optional(),
2163
2181
  x: distance,
2164
2182
  y: distance,
2165
- radius: z96.number(),
2183
+ radius: z97.number(),
2166
2184
  layer: layer_ref,
2167
- pcb_component_id: z96.string().optional(),
2168
- pcb_smtpad_id: z96.string().optional()
2185
+ pcb_component_id: z97.string().optional(),
2186
+ pcb_smtpad_id: z97.string().optional()
2169
2187
  });
2170
- var pcb_solder_paste_rect = z96.object({
2171
- type: z96.literal("pcb_solder_paste"),
2172
- shape: z96.literal("rect"),
2188
+ var pcb_solder_paste_rect = z97.object({
2189
+ type: z97.literal("pcb_solder_paste"),
2190
+ shape: z97.literal("rect"),
2173
2191
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
2174
- pcb_group_id: z96.string().optional(),
2175
- subcircuit_id: z96.string().optional(),
2192
+ pcb_group_id: z97.string().optional(),
2193
+ subcircuit_id: z97.string().optional(),
2176
2194
  x: distance,
2177
2195
  y: distance,
2178
- width: z96.number(),
2179
- height: z96.number(),
2196
+ width: z97.number(),
2197
+ height: z97.number(),
2180
2198
  layer: layer_ref,
2181
- pcb_component_id: z96.string().optional(),
2182
- pcb_smtpad_id: z96.string().optional()
2199
+ pcb_component_id: z97.string().optional(),
2200
+ pcb_smtpad_id: z97.string().optional()
2183
2201
  });
2184
- var pcb_solder_paste_pill = z96.object({
2185
- type: z96.literal("pcb_solder_paste"),
2186
- shape: z96.literal("pill"),
2202
+ var pcb_solder_paste_pill = z97.object({
2203
+ type: z97.literal("pcb_solder_paste"),
2204
+ shape: z97.literal("pill"),
2187
2205
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
2188
- pcb_group_id: z96.string().optional(),
2189
- subcircuit_id: z96.string().optional(),
2206
+ pcb_group_id: z97.string().optional(),
2207
+ subcircuit_id: z97.string().optional(),
2190
2208
  x: distance,
2191
2209
  y: distance,
2192
- width: z96.number(),
2193
- height: z96.number(),
2194
- radius: z96.number(),
2210
+ width: z97.number(),
2211
+ height: z97.number(),
2212
+ radius: z97.number(),
2195
2213
  layer: layer_ref,
2196
- pcb_component_id: z96.string().optional(),
2197
- pcb_smtpad_id: z96.string().optional()
2214
+ pcb_component_id: z97.string().optional(),
2215
+ pcb_smtpad_id: z97.string().optional()
2198
2216
  });
2199
- var pcb_solder_paste_rotated_rect = z96.object({
2200
- type: z96.literal("pcb_solder_paste"),
2201
- shape: z96.literal("rotated_rect"),
2217
+ var pcb_solder_paste_rotated_rect = z97.object({
2218
+ type: z97.literal("pcb_solder_paste"),
2219
+ shape: z97.literal("rotated_rect"),
2202
2220
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
2203
- pcb_group_id: z96.string().optional(),
2204
- subcircuit_id: z96.string().optional(),
2221
+ pcb_group_id: z97.string().optional(),
2222
+ subcircuit_id: z97.string().optional(),
2205
2223
  x: distance,
2206
2224
  y: distance,
2207
- width: z96.number(),
2208
- height: z96.number(),
2225
+ width: z97.number(),
2226
+ height: z97.number(),
2209
2227
  ccw_rotation: distance,
2210
2228
  layer: layer_ref,
2211
- pcb_component_id: z96.string().optional(),
2212
- pcb_smtpad_id: z96.string().optional()
2229
+ pcb_component_id: z97.string().optional(),
2230
+ pcb_smtpad_id: z97.string().optional()
2213
2231
  });
2214
- var pcb_solder_paste_oval = z96.object({
2215
- type: z96.literal("pcb_solder_paste"),
2216
- shape: z96.literal("oval"),
2232
+ var pcb_solder_paste_oval = z97.object({
2233
+ type: z97.literal("pcb_solder_paste"),
2234
+ shape: z97.literal("oval"),
2217
2235
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
2218
- pcb_group_id: z96.string().optional(),
2219
- subcircuit_id: z96.string().optional(),
2236
+ pcb_group_id: z97.string().optional(),
2237
+ subcircuit_id: z97.string().optional(),
2220
2238
  x: distance,
2221
2239
  y: distance,
2222
- width: z96.number(),
2223
- height: z96.number(),
2240
+ width: z97.number(),
2241
+ height: z97.number(),
2224
2242
  layer: layer_ref,
2225
- pcb_component_id: z96.string().optional(),
2226
- pcb_smtpad_id: z96.string().optional()
2243
+ pcb_component_id: z97.string().optional(),
2244
+ pcb_smtpad_id: z97.string().optional()
2227
2245
  });
2228
- var pcb_solder_paste = z96.union([
2246
+ var pcb_solder_paste = z97.union([
2229
2247
  pcb_solder_paste_circle,
2230
2248
  pcb_solder_paste_rect,
2231
2249
  pcb_solder_paste_pill,
@@ -2241,146 +2259,146 @@ expectTypesMatch(
2241
2259
  expectTypesMatch(true);
2242
2260
 
2243
2261
  // src/pcb/pcb_text.ts
2244
- import { z as z97 } from "zod";
2245
- var pcb_text = z97.object({
2246
- type: z97.literal("pcb_text"),
2262
+ import { z as z98 } from "zod";
2263
+ var pcb_text = z98.object({
2264
+ type: z98.literal("pcb_text"),
2247
2265
  pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
2248
- pcb_group_id: z97.string().optional(),
2249
- subcircuit_id: z97.string().optional(),
2250
- text: z97.string(),
2266
+ pcb_group_id: z98.string().optional(),
2267
+ subcircuit_id: z98.string().optional(),
2268
+ text: z98.string(),
2251
2269
  center: point,
2252
2270
  layer: layer_ref,
2253
2271
  width: length,
2254
2272
  height: length,
2255
- lines: z97.number(),
2273
+ lines: z98.number(),
2256
2274
  // @ts-ignore
2257
- align: z97.enum(["bottom-left"])
2275
+ align: z98.enum(["bottom-left"])
2258
2276
  }).describe("Defines text on the PCB");
2259
2277
  expectTypesMatch(true);
2260
2278
 
2261
2279
  // src/pcb/pcb_trace.ts
2262
- import { z as z98 } from "zod";
2263
- var pcb_trace_route_point_wire = z98.object({
2264
- route_type: z98.literal("wire"),
2280
+ import { z as z99 } from "zod";
2281
+ var pcb_trace_route_point_wire = z99.object({
2282
+ route_type: z99.literal("wire"),
2265
2283
  x: distance,
2266
2284
  y: distance,
2267
2285
  width: distance,
2268
- copper_pour_id: z98.string().optional(),
2269
- is_inside_copper_pour: z98.boolean().optional(),
2270
- start_pcb_port_id: z98.string().optional(),
2271
- end_pcb_port_id: z98.string().optional(),
2286
+ copper_pour_id: z99.string().optional(),
2287
+ is_inside_copper_pour: z99.boolean().optional(),
2288
+ start_pcb_port_id: z99.string().optional(),
2289
+ end_pcb_port_id: z99.string().optional(),
2272
2290
  layer: layer_ref
2273
2291
  });
2274
- var pcb_trace_route_point_via = z98.object({
2275
- route_type: z98.literal("via"),
2292
+ var pcb_trace_route_point_via = z99.object({
2293
+ route_type: z99.literal("via"),
2276
2294
  x: distance,
2277
2295
  y: distance,
2278
- copper_pour_id: z98.string().optional(),
2279
- is_inside_copper_pour: z98.boolean().optional(),
2296
+ copper_pour_id: z99.string().optional(),
2297
+ is_inside_copper_pour: z99.boolean().optional(),
2280
2298
  hole_diameter: distance.optional(),
2281
2299
  outer_diameter: distance.optional(),
2282
2300
  from_layer: layer_ref,
2283
2301
  to_layer: layer_ref
2284
2302
  });
2285
- var pcb_trace_route_point = z98.union([
2303
+ var pcb_trace_route_point = z99.union([
2286
2304
  pcb_trace_route_point_wire,
2287
2305
  pcb_trace_route_point_via
2288
2306
  ]);
2289
- var pcb_trace = z98.object({
2290
- type: z98.literal("pcb_trace"),
2291
- source_trace_id: z98.string().optional(),
2292
- pcb_component_id: z98.string().optional(),
2307
+ var pcb_trace = z99.object({
2308
+ type: z99.literal("pcb_trace"),
2309
+ source_trace_id: z99.string().optional(),
2310
+ pcb_component_id: z99.string().optional(),
2293
2311
  pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
2294
- pcb_group_id: z98.string().optional(),
2295
- subcircuit_id: z98.string().optional(),
2296
- route_thickness_mode: z98.enum(["constant", "interpolated"]).default("constant").optional(),
2297
- route_order_index: z98.number().optional(),
2298
- should_round_corners: z98.boolean().optional(),
2299
- trace_length: z98.number().optional(),
2300
- highlight_color: z98.string().optional(),
2301
- route: z98.array(pcb_trace_route_point)
2312
+ pcb_group_id: z99.string().optional(),
2313
+ subcircuit_id: z99.string().optional(),
2314
+ route_thickness_mode: z99.enum(["constant", "interpolated"]).default("constant").optional(),
2315
+ route_order_index: z99.number().optional(),
2316
+ should_round_corners: z99.boolean().optional(),
2317
+ trace_length: z99.number().optional(),
2318
+ highlight_color: z99.string().optional(),
2319
+ route: z99.array(pcb_trace_route_point)
2302
2320
  }).describe("Defines a trace on the PCB");
2303
2321
  expectTypesMatch(true);
2304
2322
  expectTypesMatch(true);
2305
2323
 
2306
2324
  // src/pcb/pcb_trace_error.ts
2307
- import { z as z99 } from "zod";
2325
+ import { z as z100 } from "zod";
2308
2326
  var pcb_trace_error = base_circuit_json_error.extend({
2309
- type: z99.literal("pcb_trace_error"),
2327
+ type: z100.literal("pcb_trace_error"),
2310
2328
  pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
2311
- error_type: z99.literal("pcb_trace_error").default("pcb_trace_error"),
2329
+ error_type: z100.literal("pcb_trace_error").default("pcb_trace_error"),
2312
2330
  center: point.optional(),
2313
- pcb_trace_id: z99.string(),
2314
- source_trace_id: z99.string(),
2315
- pcb_component_ids: z99.array(z99.string()),
2316
- pcb_port_ids: z99.array(z99.string()),
2317
- subcircuit_id: z99.string().optional()
2331
+ pcb_trace_id: z100.string(),
2332
+ source_trace_id: z100.string(),
2333
+ pcb_component_ids: z100.array(z100.string()),
2334
+ pcb_port_ids: z100.array(z100.string()),
2335
+ subcircuit_id: z100.string().optional()
2318
2336
  }).describe("Defines a trace error on the PCB");
2319
2337
  expectTypesMatch(true);
2320
2338
 
2321
2339
  // src/pcb/pcb_trace_missing_error.ts
2322
- import { z as z100 } from "zod";
2340
+ import { z as z101 } from "zod";
2323
2341
  var pcb_trace_missing_error = base_circuit_json_error.extend({
2324
- type: z100.literal("pcb_trace_missing_error"),
2342
+ type: z101.literal("pcb_trace_missing_error"),
2325
2343
  pcb_trace_missing_error_id: getZodPrefixedIdWithDefault(
2326
2344
  "pcb_trace_missing_error"
2327
2345
  ),
2328
- error_type: z100.literal("pcb_trace_missing_error").default("pcb_trace_missing_error"),
2346
+ error_type: z101.literal("pcb_trace_missing_error").default("pcb_trace_missing_error"),
2329
2347
  center: point.optional(),
2330
- source_trace_id: z100.string(),
2331
- pcb_component_ids: z100.array(z100.string()),
2332
- pcb_port_ids: z100.array(z100.string()),
2333
- subcircuit_id: z100.string().optional()
2348
+ source_trace_id: z101.string(),
2349
+ pcb_component_ids: z101.array(z101.string()),
2350
+ pcb_port_ids: z101.array(z101.string()),
2351
+ subcircuit_id: z101.string().optional()
2334
2352
  }).describe(
2335
2353
  "Defines an error when a source trace has no corresponding PCB trace"
2336
2354
  );
2337
2355
  expectTypesMatch(true);
2338
2356
 
2339
2357
  // src/pcb/pcb_port_not_matched_error.ts
2340
- import { z as z101 } from "zod";
2358
+ import { z as z102 } from "zod";
2341
2359
  var pcb_port_not_matched_error = base_circuit_json_error.extend({
2342
- type: z101.literal("pcb_port_not_matched_error"),
2360
+ type: z102.literal("pcb_port_not_matched_error"),
2343
2361
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
2344
- error_type: z101.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
2345
- pcb_component_ids: z101.array(z101.string()),
2346
- subcircuit_id: z101.string().optional()
2362
+ error_type: z102.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
2363
+ pcb_component_ids: z102.array(z102.string()),
2364
+ subcircuit_id: z102.string().optional()
2347
2365
  }).describe("Defines a trace error on the PCB where a port is not matched");
2348
2366
  expectTypesMatch(true);
2349
2367
 
2350
2368
  // src/pcb/pcb_port_not_connected_error.ts
2351
- import { z as z102 } from "zod";
2369
+ import { z as z103 } from "zod";
2352
2370
  var pcb_port_not_connected_error = base_circuit_json_error.extend({
2353
- type: z102.literal("pcb_port_not_connected_error"),
2371
+ type: z103.literal("pcb_port_not_connected_error"),
2354
2372
  pcb_port_not_connected_error_id: getZodPrefixedIdWithDefault(
2355
2373
  "pcb_port_not_connected_error"
2356
2374
  ),
2357
- error_type: z102.literal("pcb_port_not_connected_error").default("pcb_port_not_connected_error"),
2358
- pcb_port_ids: z102.array(z102.string()),
2359
- pcb_component_ids: z102.array(z102.string()),
2360
- subcircuit_id: z102.string().optional()
2375
+ error_type: z103.literal("pcb_port_not_connected_error").default("pcb_port_not_connected_error"),
2376
+ pcb_port_ids: z103.array(z103.string()),
2377
+ pcb_component_ids: z103.array(z103.string()),
2378
+ subcircuit_id: z103.string().optional()
2361
2379
  }).describe("Defines an error when a pcb port is not connected to any trace");
2362
2380
  expectTypesMatch(
2363
2381
  true
2364
2382
  );
2365
2383
 
2366
2384
  // src/pcb/pcb_net.ts
2367
- import { z as z103 } from "zod";
2368
- var pcb_net = z103.object({
2369
- type: z103.literal("pcb_net"),
2385
+ import { z as z104 } from "zod";
2386
+ var pcb_net = z104.object({
2387
+ type: z104.literal("pcb_net"),
2370
2388
  pcb_net_id: getZodPrefixedIdWithDefault("pcb_net"),
2371
- source_net_id: z103.string().optional(),
2372
- highlight_color: z103.string().optional()
2389
+ source_net_id: z104.string().optional(),
2390
+ highlight_color: z104.string().optional()
2373
2391
  }).describe("Defines a net on the PCB");
2374
2392
  expectTypesMatch(true);
2375
2393
 
2376
2394
  // src/pcb/pcb_via.ts
2377
- import { z as z104 } from "zod";
2378
- var pcb_via = z104.object({
2379
- type: z104.literal("pcb_via"),
2395
+ import { z as z105 } from "zod";
2396
+ var pcb_via = z105.object({
2397
+ type: z105.literal("pcb_via"),
2380
2398
  pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
2381
- pcb_group_id: z104.string().optional(),
2382
- subcircuit_id: z104.string().optional(),
2383
- subcircuit_connectivity_map_key: z104.string().optional(),
2399
+ pcb_group_id: z105.string().optional(),
2400
+ subcircuit_id: z105.string().optional(),
2401
+ subcircuit_connectivity_map_key: z105.string().optional(),
2384
2402
  x: distance,
2385
2403
  y: distance,
2386
2404
  outer_diameter: distance.default("0.6mm"),
@@ -2389,101 +2407,101 @@ var pcb_via = z104.object({
2389
2407
  from_layer: layer_ref.optional(),
2390
2408
  /** @deprecated */
2391
2409
  to_layer: layer_ref.optional(),
2392
- layers: z104.array(layer_ref),
2393
- pcb_trace_id: z104.string().optional(),
2394
- net_is_assignable: z104.boolean().optional(),
2395
- net_assigned: z104.boolean().optional(),
2396
- is_tented: z104.boolean().optional()
2410
+ layers: z105.array(layer_ref),
2411
+ pcb_trace_id: z105.string().optional(),
2412
+ net_is_assignable: z105.boolean().optional(),
2413
+ net_assigned: z105.boolean().optional(),
2414
+ is_tented: z105.boolean().optional()
2397
2415
  }).describe("Defines a via on the PCB");
2398
2416
  expectTypesMatch(true);
2399
2417
 
2400
2418
  // src/pcb/pcb_board.ts
2401
- import { z as z105 } from "zod";
2402
- var pcb_board = z105.object({
2403
- type: z105.literal("pcb_board"),
2419
+ import { z as z106 } from "zod";
2420
+ var pcb_board = z106.object({
2421
+ type: z106.literal("pcb_board"),
2404
2422
  pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
2405
- pcb_panel_id: z105.string().optional(),
2406
- carrier_pcb_board_id: z105.string().optional(),
2407
- is_subcircuit: z105.boolean().optional(),
2408
- subcircuit_id: z105.string().optional(),
2409
- is_mounted_to_carrier_board: z105.boolean().optional(),
2423
+ pcb_panel_id: z106.string().optional(),
2424
+ carrier_pcb_board_id: z106.string().optional(),
2425
+ is_subcircuit: z106.boolean().optional(),
2426
+ subcircuit_id: z106.string().optional(),
2427
+ is_mounted_to_carrier_board: z106.boolean().optional(),
2410
2428
  width: length.optional(),
2411
2429
  height: length.optional(),
2412
2430
  center: point,
2413
- display_offset_x: z105.string().optional().describe(
2431
+ display_offset_x: z106.string().optional().describe(
2414
2432
  "How to display the x offset for this board, usually corresponding with how the user specified it"
2415
2433
  ),
2416
- display_offset_y: z105.string().optional().describe(
2434
+ display_offset_y: z106.string().optional().describe(
2417
2435
  "How to display the y offset for this board, usually corresponding with how the user specified it"
2418
2436
  ),
2419
2437
  thickness: length.optional().default(1.4),
2420
- num_layers: z105.number().optional().default(4),
2421
- outline: z105.array(point).optional(),
2422
- shape: z105.enum(["rect", "polygon"]).optional(),
2423
- material: z105.enum(["fr4", "fr1"]).default("fr4"),
2438
+ num_layers: z106.number().optional().default(4),
2439
+ outline: z106.array(point).optional(),
2440
+ shape: z106.enum(["rect", "polygon"]).optional(),
2441
+ material: z106.enum(["fr4", "fr1"]).default("fr4"),
2424
2442
  anchor_position: point.optional(),
2425
2443
  anchor_alignment: ninePointAnchor.optional(),
2426
- position_mode: z105.enum(["relative_to_panel_anchor", "none"]).optional()
2444
+ position_mode: z106.enum(["relative_to_panel_anchor", "none"]).optional()
2427
2445
  }).describe("Defines the board outline of the PCB");
2428
2446
  expectTypesMatch(true);
2429
2447
 
2430
2448
  // src/pcb/pcb_panel.ts
2431
- import { z as z106 } from "zod";
2432
- var pcb_panel = z106.object({
2433
- type: z106.literal("pcb_panel"),
2449
+ import { z as z107 } from "zod";
2450
+ var pcb_panel = z107.object({
2451
+ type: z107.literal("pcb_panel"),
2434
2452
  pcb_panel_id: getZodPrefixedIdWithDefault("pcb_panel"),
2435
2453
  width: length,
2436
2454
  height: length,
2437
2455
  center: point,
2438
2456
  thickness: length.optional().default(1.4),
2439
- covered_with_solder_mask: z106.boolean().optional().default(true)
2457
+ covered_with_solder_mask: z107.boolean().optional().default(true)
2440
2458
  }).describe("Defines a PCB panel that can contain multiple boards");
2441
2459
  expectTypesMatch(true);
2442
2460
 
2443
2461
  // src/pcb/pcb_placement_error.ts
2444
- import { z as z107 } from "zod";
2462
+ import { z as z108 } from "zod";
2445
2463
  var pcb_placement_error = base_circuit_json_error.extend({
2446
- type: z107.literal("pcb_placement_error"),
2464
+ type: z108.literal("pcb_placement_error"),
2447
2465
  pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
2448
- error_type: z107.literal("pcb_placement_error").default("pcb_placement_error"),
2449
- subcircuit_id: z107.string().optional()
2466
+ error_type: z108.literal("pcb_placement_error").default("pcb_placement_error"),
2467
+ subcircuit_id: z108.string().optional()
2450
2468
  }).describe("Defines a placement error on the PCB");
2451
2469
  expectTypesMatch(true);
2452
2470
 
2453
2471
  // src/pcb/pcb_panelization_placement_error.ts
2454
- import { z as z108 } from "zod";
2472
+ import { z as z109 } from "zod";
2455
2473
  var pcb_panelization_placement_error = base_circuit_json_error.extend({
2456
- type: z108.literal("pcb_panelization_placement_error"),
2474
+ type: z109.literal("pcb_panelization_placement_error"),
2457
2475
  pcb_panelization_placement_error_id: getZodPrefixedIdWithDefault(
2458
2476
  "pcb_panelization_placement_error"
2459
2477
  ),
2460
- error_type: z108.literal("pcb_panelization_placement_error").default("pcb_panelization_placement_error"),
2461
- pcb_panel_id: z108.string().optional(),
2462
- pcb_board_id: z108.string().optional(),
2463
- subcircuit_id: z108.string().optional()
2478
+ error_type: z109.literal("pcb_panelization_placement_error").default("pcb_panelization_placement_error"),
2479
+ pcb_panel_id: z109.string().optional(),
2480
+ pcb_board_id: z109.string().optional(),
2481
+ subcircuit_id: z109.string().optional()
2464
2482
  }).describe("Defines a panelization placement error on the PCB");
2465
2483
  expectTypesMatch(true);
2466
2484
 
2467
2485
  // src/pcb/pcb_trace_hint.ts
2468
- import { z as z109 } from "zod";
2469
- var pcb_trace_hint = z109.object({
2470
- type: z109.literal("pcb_trace_hint"),
2486
+ import { z as z110 } from "zod";
2487
+ var pcb_trace_hint = z110.object({
2488
+ type: z110.literal("pcb_trace_hint"),
2471
2489
  pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
2472
- pcb_port_id: z109.string(),
2473
- pcb_component_id: z109.string(),
2474
- route: z109.array(route_hint_point),
2475
- subcircuit_id: z109.string().optional()
2490
+ pcb_port_id: z110.string(),
2491
+ pcb_component_id: z110.string(),
2492
+ route: z110.array(route_hint_point),
2493
+ subcircuit_id: z110.string().optional()
2476
2494
  }).describe("A hint that can be used during generation of a PCB trace");
2477
2495
  expectTypesMatch(true);
2478
2496
 
2479
2497
  // src/pcb/pcb_silkscreen_line.ts
2480
- import { z as z110 } from "zod";
2481
- var pcb_silkscreen_line = z110.object({
2482
- type: z110.literal("pcb_silkscreen_line"),
2498
+ import { z as z111 } from "zod";
2499
+ var pcb_silkscreen_line = z111.object({
2500
+ type: z111.literal("pcb_silkscreen_line"),
2483
2501
  pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
2484
- pcb_component_id: z110.string(),
2485
- pcb_group_id: z110.string().optional(),
2486
- subcircuit_id: z110.string().optional(),
2502
+ pcb_component_id: z111.string(),
2503
+ pcb_group_id: z111.string().optional(),
2504
+ subcircuit_id: z111.string().optional(),
2487
2505
  stroke_width: distance.default("0.1mm"),
2488
2506
  x1: distance,
2489
2507
  y1: distance,
@@ -2494,32 +2512,32 @@ var pcb_silkscreen_line = z110.object({
2494
2512
  expectTypesMatch(true);
2495
2513
 
2496
2514
  // src/pcb/pcb_silkscreen_path.ts
2497
- import { z as z111 } from "zod";
2498
- var pcb_silkscreen_path = z111.object({
2499
- type: z111.literal("pcb_silkscreen_path"),
2515
+ import { z as z112 } from "zod";
2516
+ var pcb_silkscreen_path = z112.object({
2517
+ type: z112.literal("pcb_silkscreen_path"),
2500
2518
  pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
2501
- pcb_component_id: z111.string(),
2502
- pcb_group_id: z111.string().optional(),
2503
- subcircuit_id: z111.string().optional(),
2519
+ pcb_component_id: z112.string(),
2520
+ pcb_group_id: z112.string().optional(),
2521
+ subcircuit_id: z112.string().optional(),
2504
2522
  layer: visible_layer,
2505
- route: z111.array(point),
2523
+ route: z112.array(point),
2506
2524
  stroke_width: length
2507
2525
  }).describe("Defines a silkscreen path on the PCB");
2508
2526
  expectTypesMatch(true);
2509
2527
 
2510
2528
  // src/pcb/pcb_silkscreen_text.ts
2511
- import { z as z112 } from "zod";
2512
- var pcb_silkscreen_text = z112.object({
2513
- type: z112.literal("pcb_silkscreen_text"),
2529
+ import { z as z113 } from "zod";
2530
+ var pcb_silkscreen_text = z113.object({
2531
+ type: z113.literal("pcb_silkscreen_text"),
2514
2532
  pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
2515
- pcb_group_id: z112.string().optional(),
2516
- subcircuit_id: z112.string().optional(),
2517
- font: z112.literal("tscircuit2024").default("tscircuit2024"),
2533
+ pcb_group_id: z113.string().optional(),
2534
+ subcircuit_id: z113.string().optional(),
2535
+ font: z113.literal("tscircuit2024").default("tscircuit2024"),
2518
2536
  font_size: distance.default("0.2mm"),
2519
- pcb_component_id: z112.string(),
2520
- text: z112.string(),
2521
- is_knockout: z112.boolean().default(false).optional(),
2522
- knockout_padding: z112.object({
2537
+ pcb_component_id: z113.string(),
2538
+ text: z113.string(),
2539
+ is_knockout: z113.boolean().default(false).optional(),
2540
+ knockout_padding: z113.object({
2523
2541
  left: length,
2524
2542
  top: length,
2525
2543
  bottom: length,
@@ -2530,27 +2548,27 @@ var pcb_silkscreen_text = z112.object({
2530
2548
  bottom: "0.2mm",
2531
2549
  right: "0.2mm"
2532
2550
  }).optional(),
2533
- ccw_rotation: z112.number().optional(),
2551
+ ccw_rotation: z113.number().optional(),
2534
2552
  layer: layer_ref,
2535
- is_mirrored: z112.boolean().default(false).optional(),
2553
+ is_mirrored: z113.boolean().default(false).optional(),
2536
2554
  anchor_position: point.default({ x: 0, y: 0 }),
2537
2555
  anchor_alignment: ninePointAnchor.default("center")
2538
2556
  }).describe("Defines silkscreen text on the PCB");
2539
2557
  expectTypesMatch(true);
2540
2558
 
2541
2559
  // src/pcb/pcb_copper_text.ts
2542
- import { z as z113 } from "zod";
2543
- var pcb_copper_text = z113.object({
2544
- type: z113.literal("pcb_copper_text"),
2560
+ import { z as z114 } from "zod";
2561
+ var pcb_copper_text = z114.object({
2562
+ type: z114.literal("pcb_copper_text"),
2545
2563
  pcb_copper_text_id: getZodPrefixedIdWithDefault("pcb_copper_text"),
2546
- pcb_group_id: z113.string().optional(),
2547
- subcircuit_id: z113.string().optional(),
2548
- font: z113.literal("tscircuit2024").default("tscircuit2024"),
2564
+ pcb_group_id: z114.string().optional(),
2565
+ subcircuit_id: z114.string().optional(),
2566
+ font: z114.literal("tscircuit2024").default("tscircuit2024"),
2549
2567
  font_size: distance.default("0.2mm"),
2550
- pcb_component_id: z113.string(),
2551
- text: z113.string(),
2552
- is_knockout: z113.boolean().default(false).optional(),
2553
- knockout_padding: z113.object({
2568
+ pcb_component_id: z114.string(),
2569
+ text: z114.string(),
2570
+ is_knockout: z114.boolean().default(false).optional(),
2571
+ knockout_padding: z114.object({
2554
2572
  left: length,
2555
2573
  top: length,
2556
2574
  bottom: length,
@@ -2561,61 +2579,61 @@ var pcb_copper_text = z113.object({
2561
2579
  bottom: "0.2mm",
2562
2580
  right: "0.2mm"
2563
2581
  }).optional(),
2564
- ccw_rotation: z113.number().optional(),
2582
+ ccw_rotation: z114.number().optional(),
2565
2583
  layer: layer_ref,
2566
- is_mirrored: z113.boolean().default(false).optional(),
2584
+ is_mirrored: z114.boolean().default(false).optional(),
2567
2585
  anchor_position: point.default({ x: 0, y: 0 }),
2568
2586
  anchor_alignment: ninePointAnchor.default("center")
2569
2587
  }).describe("Defines copper text on the PCB");
2570
2588
  expectTypesMatch(true);
2571
2589
 
2572
2590
  // src/pcb/pcb_silkscreen_rect.ts
2573
- import { z as z114 } from "zod";
2574
- var pcb_silkscreen_rect = z114.object({
2575
- type: z114.literal("pcb_silkscreen_rect"),
2591
+ import { z as z115 } from "zod";
2592
+ var pcb_silkscreen_rect = z115.object({
2593
+ type: z115.literal("pcb_silkscreen_rect"),
2576
2594
  pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
2577
- pcb_component_id: z114.string(),
2578
- pcb_group_id: z114.string().optional(),
2579
- subcircuit_id: z114.string().optional(),
2595
+ pcb_component_id: z115.string(),
2596
+ pcb_group_id: z115.string().optional(),
2597
+ subcircuit_id: z115.string().optional(),
2580
2598
  center: point,
2581
2599
  width: length,
2582
2600
  height: length,
2583
2601
  layer: layer_ref,
2584
2602
  stroke_width: length.default("1mm"),
2585
2603
  corner_radius: length.optional(),
2586
- is_filled: z114.boolean().default(true).optional(),
2587
- has_stroke: z114.boolean().optional(),
2588
- is_stroke_dashed: z114.boolean().optional(),
2589
- ccw_rotation: z114.number().optional()
2604
+ is_filled: z115.boolean().default(true).optional(),
2605
+ has_stroke: z115.boolean().optional(),
2606
+ is_stroke_dashed: z115.boolean().optional(),
2607
+ ccw_rotation: z115.number().optional()
2590
2608
  }).describe("Defines a silkscreen rect on the PCB");
2591
2609
  expectTypesMatch(true);
2592
2610
 
2593
2611
  // src/pcb/pcb_silkscreen_circle.ts
2594
- import { z as z115 } from "zod";
2595
- var pcb_silkscreen_circle = z115.object({
2596
- type: z115.literal("pcb_silkscreen_circle"),
2612
+ import { z as z116 } from "zod";
2613
+ var pcb_silkscreen_circle = z116.object({
2614
+ type: z116.literal("pcb_silkscreen_circle"),
2597
2615
  pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
2598
2616
  "pcb_silkscreen_circle"
2599
2617
  ),
2600
- pcb_component_id: z115.string(),
2601
- pcb_group_id: z115.string().optional(),
2602
- subcircuit_id: z115.string().optional(),
2618
+ pcb_component_id: z116.string(),
2619
+ pcb_group_id: z116.string().optional(),
2620
+ subcircuit_id: z116.string().optional(),
2603
2621
  center: point,
2604
2622
  radius: length,
2605
2623
  layer: visible_layer,
2606
2624
  stroke_width: length.default("1mm"),
2607
- is_filled: z115.boolean().optional()
2625
+ is_filled: z116.boolean().optional()
2608
2626
  }).describe("Defines a silkscreen circle on the PCB");
2609
2627
  expectTypesMatch(true);
2610
2628
 
2611
2629
  // src/pcb/pcb_silkscreen_oval.ts
2612
- import { z as z116 } from "zod";
2613
- var pcb_silkscreen_oval = z116.object({
2614
- type: z116.literal("pcb_silkscreen_oval"),
2630
+ import { z as z117 } from "zod";
2631
+ var pcb_silkscreen_oval = z117.object({
2632
+ type: z117.literal("pcb_silkscreen_oval"),
2615
2633
  pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
2616
- pcb_component_id: z116.string(),
2617
- pcb_group_id: z116.string().optional(),
2618
- subcircuit_id: z116.string().optional(),
2634
+ pcb_component_id: z117.string(),
2635
+ pcb_group_id: z117.string().optional(),
2636
+ subcircuit_id: z117.string().optional(),
2619
2637
  center: point,
2620
2638
  radius_x: distance,
2621
2639
  radius_y: distance,
@@ -2625,235 +2643,240 @@ var pcb_silkscreen_oval = z116.object({
2625
2643
  expectTypesMatch(true);
2626
2644
 
2627
2645
  // src/pcb/pcb_silkscreen_pill.ts
2628
- import { z as z117 } from "zod";
2629
- var pcb_silkscreen_pill = z117.object({
2630
- type: z117.literal("pcb_silkscreen_pill"),
2646
+ import { z as z118 } from "zod";
2647
+ var pcb_silkscreen_pill = z118.object({
2648
+ type: z118.literal("pcb_silkscreen_pill"),
2631
2649
  pcb_silkscreen_pill_id: getZodPrefixedIdWithDefault("pcb_silkscreen_pill"),
2632
- pcb_component_id: z117.string(),
2633
- pcb_group_id: z117.string().optional(),
2634
- subcircuit_id: z117.string().optional(),
2650
+ pcb_component_id: z118.string(),
2651
+ pcb_group_id: z118.string().optional(),
2652
+ subcircuit_id: z118.string().optional(),
2635
2653
  center: point,
2636
2654
  width: length,
2637
2655
  height: length,
2638
2656
  layer: layer_ref,
2639
- ccw_rotation: z117.number().optional()
2657
+ ccw_rotation: z118.number().optional()
2640
2658
  }).describe("Defines a silkscreen pill on the PCB");
2641
2659
  expectTypesMatch(true);
2642
2660
 
2643
2661
  // src/pcb/pcb_fabrication_note_text.ts
2644
- import { z as z118 } from "zod";
2645
- var pcb_fabrication_note_text = z118.object({
2646
- type: z118.literal("pcb_fabrication_note_text"),
2662
+ import { z as z119 } from "zod";
2663
+ var pcb_fabrication_note_text = z119.object({
2664
+ type: z119.literal("pcb_fabrication_note_text"),
2647
2665
  pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
2648
2666
  "pcb_fabrication_note_text"
2649
2667
  ),
2650
- subcircuit_id: z118.string().optional(),
2651
- pcb_group_id: z118.string().optional(),
2652
- font: z118.literal("tscircuit2024").default("tscircuit2024"),
2668
+ subcircuit_id: z119.string().optional(),
2669
+ pcb_group_id: z119.string().optional(),
2670
+ font: z119.literal("tscircuit2024").default("tscircuit2024"),
2653
2671
  font_size: distance.default("1mm"),
2654
- pcb_component_id: z118.string(),
2655
- text: z118.string(),
2672
+ pcb_component_id: z119.string(),
2673
+ text: z119.string(),
2656
2674
  layer: visible_layer,
2657
2675
  anchor_position: point.default({ x: 0, y: 0 }),
2658
- anchor_alignment: z118.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2659
- color: z118.string().optional()
2676
+ anchor_alignment: z119.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2677
+ color: z119.string().optional()
2660
2678
  }).describe(
2661
2679
  "Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
2662
2680
  );
2663
2681
  expectTypesMatch(true);
2664
2682
 
2665
2683
  // src/pcb/pcb_fabrication_note_path.ts
2666
- import { z as z119 } from "zod";
2667
- var pcb_fabrication_note_path = z119.object({
2668
- type: z119.literal("pcb_fabrication_note_path"),
2684
+ import { z as z120 } from "zod";
2685
+ var pcb_fabrication_note_path = z120.object({
2686
+ type: z120.literal("pcb_fabrication_note_path"),
2669
2687
  pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
2670
2688
  "pcb_fabrication_note_path"
2671
2689
  ),
2672
- pcb_component_id: z119.string(),
2673
- subcircuit_id: z119.string().optional(),
2690
+ pcb_component_id: z120.string(),
2691
+ subcircuit_id: z120.string().optional(),
2674
2692
  layer: layer_ref,
2675
- route: z119.array(point),
2693
+ route: z120.array(point),
2676
2694
  stroke_width: length,
2677
- color: z119.string().optional()
2695
+ color: z120.string().optional()
2678
2696
  }).describe(
2679
2697
  "Defines a fabrication path on the PCB for fabricators or assemblers"
2680
2698
  );
2681
2699
  expectTypesMatch(true);
2682
2700
 
2683
2701
  // src/pcb/pcb_fabrication_note_rect.ts
2684
- import { z as z120 } from "zod";
2685
- var pcb_fabrication_note_rect = z120.object({
2686
- type: z120.literal("pcb_fabrication_note_rect"),
2702
+ import { z as z121 } from "zod";
2703
+ var pcb_fabrication_note_rect = z121.object({
2704
+ type: z121.literal("pcb_fabrication_note_rect"),
2687
2705
  pcb_fabrication_note_rect_id: getZodPrefixedIdWithDefault(
2688
2706
  "pcb_fabrication_note_rect"
2689
2707
  ),
2690
- pcb_component_id: z120.string(),
2691
- pcb_group_id: z120.string().optional(),
2692
- subcircuit_id: z120.string().optional(),
2708
+ pcb_component_id: z121.string(),
2709
+ pcb_group_id: z121.string().optional(),
2710
+ subcircuit_id: z121.string().optional(),
2693
2711
  center: point,
2694
2712
  width: length,
2695
2713
  height: length,
2696
2714
  layer: visible_layer,
2697
2715
  stroke_width: length.default("0.1mm"),
2698
2716
  corner_radius: length.optional(),
2699
- is_filled: z120.boolean().optional(),
2700
- has_stroke: z120.boolean().optional(),
2701
- is_stroke_dashed: z120.boolean().optional(),
2702
- color: z120.string().optional()
2717
+ is_filled: z121.boolean().optional(),
2718
+ has_stroke: z121.boolean().optional(),
2719
+ is_stroke_dashed: z121.boolean().optional(),
2720
+ color: z121.string().optional()
2703
2721
  }).describe("Defines a fabrication note rectangle on the PCB");
2704
2722
  expectTypesMatch(true);
2705
2723
 
2706
2724
  // src/pcb/pcb_fabrication_note_dimension.ts
2707
- import { z as z121 } from "zod";
2708
- var pcb_fabrication_note_dimension = z121.object({
2709
- type: z121.literal("pcb_fabrication_note_dimension"),
2725
+ import { z as z122 } from "zod";
2726
+ var pcb_fabrication_note_dimension = z122.object({
2727
+ type: z122.literal("pcb_fabrication_note_dimension"),
2710
2728
  pcb_fabrication_note_dimension_id: getZodPrefixedIdWithDefault(
2711
2729
  "pcb_fabrication_note_dimension"
2712
2730
  ),
2713
- pcb_component_id: z121.string(),
2714
- pcb_group_id: z121.string().optional(),
2715
- subcircuit_id: z121.string().optional(),
2731
+ pcb_component_id: z122.string(),
2732
+ pcb_group_id: z122.string().optional(),
2733
+ subcircuit_id: z122.string().optional(),
2716
2734
  layer: visible_layer,
2717
2735
  from: point,
2718
2736
  to: point,
2719
- text: z121.string().optional(),
2720
- text_ccw_rotation: z121.number().optional(),
2737
+ text: z122.string().optional(),
2738
+ text_ccw_rotation: z122.number().optional(),
2721
2739
  offset: length.optional(),
2722
2740
  offset_distance: length.optional(),
2723
- offset_direction: z121.object({
2724
- x: z121.number(),
2725
- y: z121.number()
2741
+ offset_direction: z122.object({
2742
+ x: z122.number(),
2743
+ y: z122.number()
2726
2744
  }).optional(),
2727
- font: z121.literal("tscircuit2024").default("tscircuit2024"),
2745
+ font: z122.literal("tscircuit2024").default("tscircuit2024"),
2728
2746
  font_size: length.default("1mm"),
2729
- color: z121.string().optional(),
2747
+ color: z122.string().optional(),
2730
2748
  arrow_size: length.default("1mm")
2731
2749
  }).describe("Defines a measurement annotation within PCB fabrication notes");
2732
2750
  expectTypesMatch(true);
2733
2751
 
2734
2752
  // src/pcb/pcb_note_text.ts
2735
- import { z as z122 } from "zod";
2736
- var pcb_note_text = z122.object({
2737
- type: z122.literal("pcb_note_text"),
2738
- pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
2739
- pcb_component_id: z122.string().optional(),
2740
- pcb_group_id: z122.string().optional(),
2741
- subcircuit_id: z122.string().optional(),
2742
- name: z122.string().optional(),
2743
- font: z122.literal("tscircuit2024").default("tscircuit2024"),
2744
- font_size: distance.default("1mm"),
2745
- text: z122.string().optional(),
2746
- anchor_position: point.default({ x: 0, y: 0 }),
2747
- anchor_alignment: z122.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2748
- color: z122.string().optional()
2749
- }).describe("Defines a documentation note in text on the PCB");
2750
- expectTypesMatch(true);
2751
-
2752
- // src/pcb/pcb_note_rect.ts
2753
2753
  import { z as z123 } from "zod";
2754
- var pcb_note_rect = z123.object({
2755
- type: z123.literal("pcb_note_rect"),
2756
- pcb_note_rect_id: getZodPrefixedIdWithDefault("pcb_note_rect"),
2754
+ var pcb_note_text = z123.object({
2755
+ type: z123.literal("pcb_note_text"),
2756
+ pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
2757
2757
  pcb_component_id: z123.string().optional(),
2758
2758
  pcb_group_id: z123.string().optional(),
2759
2759
  subcircuit_id: z123.string().optional(),
2760
2760
  name: z123.string().optional(),
2761
+ font: z123.literal("tscircuit2024").default("tscircuit2024"),
2762
+ font_size: distance.default("1mm"),
2761
2763
  text: z123.string().optional(),
2762
- center: point,
2763
- width: length,
2764
- height: length,
2765
- stroke_width: length.default("0.1mm"),
2766
- corner_radius: length.optional(),
2767
- is_filled: z123.boolean().optional(),
2768
- has_stroke: z123.boolean().optional(),
2769
- is_stroke_dashed: z123.boolean().optional(),
2764
+ anchor_position: point.default({ x: 0, y: 0 }),
2765
+ anchor_alignment: z123.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2766
+ layer: visible_layer.default("top"),
2770
2767
  color: z123.string().optional()
2771
- }).describe("Defines a rectangular documentation note on the PCB");
2768
+ }).describe("Defines a documentation note in text on the PCB");
2772
2769
  expectTypesMatch(true);
2773
2770
 
2774
- // src/pcb/pcb_note_path.ts
2771
+ // src/pcb/pcb_note_rect.ts
2775
2772
  import { z as z124 } from "zod";
2776
- var pcb_note_path = z124.object({
2777
- type: z124.literal("pcb_note_path"),
2778
- pcb_note_path_id: getZodPrefixedIdWithDefault("pcb_note_path"),
2773
+ var pcb_note_rect = z124.object({
2774
+ type: z124.literal("pcb_note_rect"),
2775
+ pcb_note_rect_id: getZodPrefixedIdWithDefault("pcb_note_rect"),
2779
2776
  pcb_component_id: z124.string().optional(),
2780
2777
  pcb_group_id: z124.string().optional(),
2781
2778
  subcircuit_id: z124.string().optional(),
2782
2779
  name: z124.string().optional(),
2783
2780
  text: z124.string().optional(),
2784
- route: z124.array(point),
2781
+ center: point,
2782
+ width: length,
2783
+ height: length,
2784
+ layer: visible_layer.default("top"),
2785
2785
  stroke_width: length.default("0.1mm"),
2786
+ corner_radius: length.optional(),
2787
+ is_filled: z124.boolean().optional(),
2788
+ has_stroke: z124.boolean().optional(),
2789
+ is_stroke_dashed: z124.boolean().optional(),
2786
2790
  color: z124.string().optional()
2787
- }).describe("Defines a polyline documentation note on the PCB");
2791
+ }).describe("Defines a rectangular documentation note on the PCB");
2788
2792
  expectTypesMatch(true);
2789
2793
 
2790
- // src/pcb/pcb_note_line.ts
2794
+ // src/pcb/pcb_note_path.ts
2791
2795
  import { z as z125 } from "zod";
2792
- var pcb_note_line = z125.object({
2793
- type: z125.literal("pcb_note_line"),
2794
- pcb_note_line_id: getZodPrefixedIdWithDefault("pcb_note_line"),
2796
+ var pcb_note_path = z125.object({
2797
+ type: z125.literal("pcb_note_path"),
2798
+ pcb_note_path_id: getZodPrefixedIdWithDefault("pcb_note_path"),
2795
2799
  pcb_component_id: z125.string().optional(),
2796
2800
  pcb_group_id: z125.string().optional(),
2797
2801
  subcircuit_id: z125.string().optional(),
2798
2802
  name: z125.string().optional(),
2799
2803
  text: z125.string().optional(),
2804
+ route: z125.array(point),
2805
+ layer: visible_layer.default("top"),
2806
+ stroke_width: length.default("0.1mm"),
2807
+ color: z125.string().optional()
2808
+ }).describe("Defines a polyline documentation note on the PCB");
2809
+ expectTypesMatch(true);
2810
+
2811
+ // src/pcb/pcb_note_line.ts
2812
+ import { z as z126 } from "zod";
2813
+ var pcb_note_line = z126.object({
2814
+ type: z126.literal("pcb_note_line"),
2815
+ pcb_note_line_id: getZodPrefixedIdWithDefault("pcb_note_line"),
2816
+ pcb_component_id: z126.string().optional(),
2817
+ pcb_group_id: z126.string().optional(),
2818
+ subcircuit_id: z126.string().optional(),
2819
+ name: z126.string().optional(),
2820
+ text: z126.string().optional(),
2800
2821
  x1: distance,
2801
2822
  y1: distance,
2802
2823
  x2: distance,
2803
2824
  y2: distance,
2825
+ layer: visible_layer.default("top"),
2804
2826
  stroke_width: distance.default("0.1mm"),
2805
- color: z125.string().optional(),
2806
- is_dashed: z125.boolean().optional()
2827
+ color: z126.string().optional(),
2828
+ is_dashed: z126.boolean().optional()
2807
2829
  }).describe("Defines a straight documentation note line on the PCB");
2808
2830
  expectTypesMatch(true);
2809
2831
 
2810
2832
  // src/pcb/pcb_note_dimension.ts
2811
- import { z as z126 } from "zod";
2812
- var pcb_note_dimension = z126.object({
2813
- type: z126.literal("pcb_note_dimension"),
2833
+ import { z as z127 } from "zod";
2834
+ var pcb_note_dimension = z127.object({
2835
+ type: z127.literal("pcb_note_dimension"),
2814
2836
  pcb_note_dimension_id: getZodPrefixedIdWithDefault("pcb_note_dimension"),
2815
- pcb_component_id: z126.string().optional(),
2816
- pcb_group_id: z126.string().optional(),
2817
- subcircuit_id: z126.string().optional(),
2818
- name: z126.string().optional(),
2837
+ pcb_component_id: z127.string().optional(),
2838
+ pcb_group_id: z127.string().optional(),
2839
+ subcircuit_id: z127.string().optional(),
2840
+ name: z127.string().optional(),
2819
2841
  from: point,
2820
2842
  to: point,
2821
- text: z126.string().optional(),
2822
- text_ccw_rotation: z126.number().optional(),
2843
+ text: z127.string().optional(),
2844
+ text_ccw_rotation: z127.number().optional(),
2823
2845
  offset_distance: length.optional(),
2824
- offset_direction: z126.object({
2825
- x: z126.number(),
2826
- y: z126.number()
2846
+ offset_direction: z127.object({
2847
+ x: z127.number(),
2848
+ y: z127.number()
2827
2849
  }).optional(),
2828
- font: z126.literal("tscircuit2024").default("tscircuit2024"),
2850
+ font: z127.literal("tscircuit2024").default("tscircuit2024"),
2829
2851
  font_size: length.default("1mm"),
2830
- color: z126.string().optional(),
2852
+ layer: visible_layer.default("top"),
2853
+ color: z127.string().optional(),
2831
2854
  arrow_size: length.default("1mm")
2832
2855
  }).describe("Defines a measurement annotation within PCB documentation notes");
2833
2856
  expectTypesMatch(true);
2834
2857
 
2835
2858
  // src/pcb/pcb_footprint_overlap_error.ts
2836
- import { z as z127 } from "zod";
2859
+ import { z as z128 } from "zod";
2837
2860
  var pcb_footprint_overlap_error = base_circuit_json_error.extend({
2838
- type: z127.literal("pcb_footprint_overlap_error"),
2861
+ type: z128.literal("pcb_footprint_overlap_error"),
2839
2862
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
2840
- error_type: z127.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
2841
- pcb_smtpad_ids: z127.array(z127.string()).optional(),
2842
- pcb_plated_hole_ids: z127.array(z127.string()).optional(),
2843
- pcb_hole_ids: z127.array(z127.string()).optional(),
2844
- pcb_keepout_ids: z127.array(z127.string()).optional()
2863
+ error_type: z128.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
2864
+ pcb_smtpad_ids: z128.array(z128.string()).optional(),
2865
+ pcb_plated_hole_ids: z128.array(z128.string()).optional(),
2866
+ pcb_hole_ids: z128.array(z128.string()).optional(),
2867
+ pcb_keepout_ids: z128.array(z128.string()).optional()
2845
2868
  }).describe("Error emitted when a pcb footprint overlaps with another element");
2846
2869
  expectTypesMatch(
2847
2870
  true
2848
2871
  );
2849
2872
 
2850
2873
  // src/pcb/pcb_courtyard_overlap_error.ts
2851
- import { z as z128 } from "zod";
2874
+ import { z as z129 } from "zod";
2852
2875
  var pcb_courtyard_overlap_error = base_circuit_json_error.extend({
2853
- type: z128.literal("pcb_courtyard_overlap_error"),
2876
+ type: z129.literal("pcb_courtyard_overlap_error"),
2854
2877
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
2855
- error_type: z128.literal("pcb_courtyard_overlap_error").default("pcb_courtyard_overlap_error"),
2856
- pcb_component_ids: z128.tuple([z128.string(), z128.string()])
2878
+ error_type: z129.literal("pcb_courtyard_overlap_error").default("pcb_courtyard_overlap_error"),
2879
+ pcb_component_ids: z129.tuple([z129.string(), z129.string()])
2857
2880
  }).describe(
2858
2881
  "Error emitted when the courtyard (CrtYd) of one PCB component overlaps with the courtyard of another"
2859
2882
  );
@@ -2862,49 +2885,49 @@ expectTypesMatch(
2862
2885
  );
2863
2886
 
2864
2887
  // src/pcb/pcb_keepout.ts
2865
- import { z as z129 } from "zod";
2866
- var pcb_keepout = z129.object({
2867
- type: z129.literal("pcb_keepout"),
2868
- shape: z129.literal("rect"),
2869
- pcb_group_id: z129.string().optional(),
2870
- subcircuit_id: z129.string().optional(),
2888
+ import { z as z130 } from "zod";
2889
+ var pcb_keepout = z130.object({
2890
+ type: z130.literal("pcb_keepout"),
2891
+ shape: z130.literal("rect"),
2892
+ pcb_group_id: z130.string().optional(),
2893
+ subcircuit_id: z130.string().optional(),
2871
2894
  center: point,
2872
2895
  width: distance,
2873
2896
  height: distance,
2874
- pcb_keepout_id: z129.string(),
2875
- layers: z129.array(z129.string()),
2897
+ pcb_keepout_id: z130.string(),
2898
+ layers: z130.array(z130.string()),
2876
2899
  // Specify layers where the keepout applies
2877
- description: z129.string().optional()
2900
+ description: z130.string().optional()
2878
2901
  // Optional description of the keepout
2879
2902
  }).or(
2880
- z129.object({
2881
- type: z129.literal("pcb_keepout"),
2882
- shape: z129.literal("circle"),
2883
- pcb_group_id: z129.string().optional(),
2884
- subcircuit_id: z129.string().optional(),
2903
+ z130.object({
2904
+ type: z130.literal("pcb_keepout"),
2905
+ shape: z130.literal("circle"),
2906
+ pcb_group_id: z130.string().optional(),
2907
+ subcircuit_id: z130.string().optional(),
2885
2908
  center: point,
2886
2909
  radius: distance,
2887
- pcb_keepout_id: z129.string(),
2888
- layers: z129.array(z129.string()),
2910
+ pcb_keepout_id: z130.string(),
2911
+ layers: z130.array(z130.string()),
2889
2912
  // Specify layers where the keepout applies
2890
- description: z129.string().optional()
2913
+ description: z130.string().optional()
2891
2914
  // Optional description of the keepout
2892
2915
  })
2893
2916
  );
2894
2917
  expectTypesMatch(true);
2895
2918
 
2896
2919
  // src/pcb/pcb_cutout.ts
2897
- import { z as z130 } from "zod";
2898
- var pcb_cutout_base = z130.object({
2899
- type: z130.literal("pcb_cutout"),
2920
+ import { z as z131 } from "zod";
2921
+ var pcb_cutout_base = z131.object({
2922
+ type: z131.literal("pcb_cutout"),
2900
2923
  pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
2901
- pcb_group_id: z130.string().optional(),
2902
- subcircuit_id: z130.string().optional(),
2903
- pcb_board_id: z130.string().optional(),
2904
- pcb_panel_id: z130.string().optional()
2924
+ pcb_group_id: z131.string().optional(),
2925
+ subcircuit_id: z131.string().optional(),
2926
+ pcb_board_id: z131.string().optional(),
2927
+ pcb_panel_id: z131.string().optional()
2905
2928
  });
2906
2929
  var pcb_cutout_rect = pcb_cutout_base.extend({
2907
- shape: z130.literal("rect"),
2930
+ shape: z131.literal("rect"),
2908
2931
  center: point,
2909
2932
  width: length,
2910
2933
  height: length,
@@ -2913,26 +2936,26 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
2913
2936
  });
2914
2937
  expectTypesMatch(true);
2915
2938
  var pcb_cutout_circle = pcb_cutout_base.extend({
2916
- shape: z130.literal("circle"),
2939
+ shape: z131.literal("circle"),
2917
2940
  center: point,
2918
2941
  radius: length
2919
2942
  });
2920
2943
  expectTypesMatch(true);
2921
2944
  var pcb_cutout_polygon = pcb_cutout_base.extend({
2922
- shape: z130.literal("polygon"),
2923
- points: z130.array(point)
2945
+ shape: z131.literal("polygon"),
2946
+ points: z131.array(point)
2924
2947
  });
2925
2948
  expectTypesMatch(true);
2926
2949
  var pcb_cutout_path = pcb_cutout_base.extend({
2927
- shape: z130.literal("path"),
2928
- route: z130.array(point),
2950
+ shape: z131.literal("path"),
2951
+ route: z131.array(point),
2929
2952
  slot_width: length,
2930
2953
  slot_length: length.optional(),
2931
2954
  space_between_slots: length.optional(),
2932
2955
  slot_corner_radius: length.optional()
2933
2956
  });
2934
2957
  expectTypesMatch(true);
2935
- var pcb_cutout = z130.discriminatedUnion("shape", [
2958
+ var pcb_cutout = z131.discriminatedUnion("shape", [
2936
2959
  pcb_cutout_rect,
2937
2960
  pcb_cutout_circle,
2938
2961
  pcb_cutout_polygon,
@@ -2941,147 +2964,147 @@ var pcb_cutout = z130.discriminatedUnion("shape", [
2941
2964
  expectTypesMatch(true);
2942
2965
 
2943
2966
  // src/pcb/pcb_missing_footprint_error.ts
2944
- import { z as z131 } from "zod";
2967
+ import { z as z132 } from "zod";
2945
2968
  var pcb_missing_footprint_error = base_circuit_json_error.extend({
2946
- type: z131.literal("pcb_missing_footprint_error"),
2969
+ type: z132.literal("pcb_missing_footprint_error"),
2947
2970
  pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
2948
2971
  "pcb_missing_footprint_error"
2949
2972
  ),
2950
- pcb_group_id: z131.string().optional(),
2951
- subcircuit_id: z131.string().optional(),
2952
- error_type: z131.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
2953
- source_component_id: z131.string()
2973
+ pcb_group_id: z132.string().optional(),
2974
+ subcircuit_id: z132.string().optional(),
2975
+ error_type: z132.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
2976
+ source_component_id: z132.string()
2954
2977
  }).describe("Defines a missing footprint error on the PCB");
2955
2978
  expectTypesMatch(
2956
2979
  true
2957
2980
  );
2958
2981
 
2959
2982
  // src/pcb/external_footprint_load_error.ts
2960
- import { z as z132 } from "zod";
2983
+ import { z as z133 } from "zod";
2961
2984
  var external_footprint_load_error = base_circuit_json_error.extend({
2962
- type: z132.literal("external_footprint_load_error"),
2985
+ type: z133.literal("external_footprint_load_error"),
2963
2986
  external_footprint_load_error_id: getZodPrefixedIdWithDefault(
2964
2987
  "external_footprint_load_error"
2965
2988
  ),
2966
- pcb_component_id: z132.string(),
2967
- source_component_id: z132.string(),
2968
- pcb_group_id: z132.string().optional(),
2969
- subcircuit_id: z132.string().optional(),
2970
- footprinter_string: z132.string().optional(),
2971
- error_type: z132.literal("external_footprint_load_error").default("external_footprint_load_error")
2989
+ pcb_component_id: z133.string(),
2990
+ source_component_id: z133.string(),
2991
+ pcb_group_id: z133.string().optional(),
2992
+ subcircuit_id: z133.string().optional(),
2993
+ footprinter_string: z133.string().optional(),
2994
+ error_type: z133.literal("external_footprint_load_error").default("external_footprint_load_error")
2972
2995
  }).describe("Defines an error when an external footprint fails to load");
2973
2996
  expectTypesMatch(true);
2974
2997
 
2975
2998
  // src/pcb/circuit_json_footprint_load_error.ts
2976
- import { z as z133 } from "zod";
2999
+ import { z as z134 } from "zod";
2977
3000
  var circuit_json_footprint_load_error = base_circuit_json_error.extend({
2978
- type: z133.literal("circuit_json_footprint_load_error"),
3001
+ type: z134.literal("circuit_json_footprint_load_error"),
2979
3002
  circuit_json_footprint_load_error_id: getZodPrefixedIdWithDefault(
2980
3003
  "circuit_json_footprint_load_error"
2981
3004
  ),
2982
- pcb_component_id: z133.string(),
2983
- source_component_id: z133.string(),
2984
- pcb_group_id: z133.string().optional(),
2985
- subcircuit_id: z133.string().optional(),
2986
- error_type: z133.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
2987
- circuit_json: z133.array(z133.any()).optional()
3005
+ pcb_component_id: z134.string(),
3006
+ source_component_id: z134.string(),
3007
+ pcb_group_id: z134.string().optional(),
3008
+ subcircuit_id: z134.string().optional(),
3009
+ error_type: z134.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
3010
+ circuit_json: z134.array(z134.any()).optional()
2988
3011
  }).describe("Defines an error when a circuit JSON footprint fails to load");
2989
3012
  expectTypesMatch(true);
2990
3013
 
2991
3014
  // src/pcb/pcb_group.ts
2992
- import { z as z134 } from "zod";
2993
- var pcb_group = z134.object({
2994
- type: z134.literal("pcb_group"),
3015
+ import { z as z135 } from "zod";
3016
+ var pcb_group = z135.object({
3017
+ type: z135.literal("pcb_group"),
2995
3018
  pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
2996
- source_group_id: z134.string(),
2997
- is_subcircuit: z134.boolean().optional(),
2998
- subcircuit_id: z134.string().optional(),
3019
+ source_group_id: z135.string(),
3020
+ is_subcircuit: z135.boolean().optional(),
3021
+ subcircuit_id: z135.string().optional(),
2999
3022
  width: length.optional(),
3000
3023
  height: length.optional(),
3001
3024
  center: point,
3002
- display_offset_x: z134.string().optional().describe(
3025
+ display_offset_x: z135.string().optional().describe(
3003
3026
  "How to display the x offset for this group, usually corresponding with how the user specified it"
3004
3027
  ),
3005
- display_offset_y: z134.string().optional().describe(
3028
+ display_offset_y: z135.string().optional().describe(
3006
3029
  "How to display the y offset for this group, usually corresponding with how the user specified it"
3007
3030
  ),
3008
- outline: z134.array(point).optional(),
3031
+ outline: z135.array(point).optional(),
3009
3032
  anchor_position: point.optional(),
3010
3033
  anchor_alignment: ninePointAnchor.default("center"),
3011
- position_mode: z134.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
3012
- positioned_relative_to_pcb_group_id: z134.string().optional(),
3013
- positioned_relative_to_pcb_board_id: z134.string().optional(),
3014
- pcb_component_ids: z134.array(z134.string()),
3015
- child_layout_mode: z134.enum(["packed", "none"]).optional(),
3016
- name: z134.string().optional(),
3017
- description: z134.string().optional(),
3018
- layout_mode: z134.string().optional(),
3019
- autorouter_configuration: z134.object({
3034
+ position_mode: z135.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
3035
+ positioned_relative_to_pcb_group_id: z135.string().optional(),
3036
+ positioned_relative_to_pcb_board_id: z135.string().optional(),
3037
+ pcb_component_ids: z135.array(z135.string()),
3038
+ child_layout_mode: z135.enum(["packed", "none"]).optional(),
3039
+ name: z135.string().optional(),
3040
+ description: z135.string().optional(),
3041
+ layout_mode: z135.string().optional(),
3042
+ autorouter_configuration: z135.object({
3020
3043
  trace_clearance: length
3021
3044
  }).optional(),
3022
- autorouter_used_string: z134.string().optional()
3045
+ autorouter_used_string: z135.string().optional()
3023
3046
  }).describe("Defines a group of components on the PCB");
3024
3047
  expectTypesMatch(true);
3025
3048
 
3026
3049
  // src/pcb/pcb_autorouting_error.ts
3027
- import { z as z135 } from "zod";
3050
+ import { z as z136 } from "zod";
3028
3051
  var pcb_autorouting_error = base_circuit_json_error.extend({
3029
- type: z135.literal("pcb_autorouting_error"),
3052
+ type: z136.literal("pcb_autorouting_error"),
3030
3053
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
3031
- error_type: z135.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
3032
- subcircuit_id: z135.string().optional()
3054
+ error_type: z136.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
3055
+ subcircuit_id: z136.string().optional()
3033
3056
  }).describe("The autorouting has failed to route a portion of the board");
3034
3057
  expectTypesMatch(true);
3035
3058
 
3036
3059
  // src/pcb/pcb_manual_edit_conflict_warning.ts
3037
- import { z as z136 } from "zod";
3038
- var pcb_manual_edit_conflict_warning = z136.object({
3039
- type: z136.literal("pcb_manual_edit_conflict_warning"),
3060
+ import { z as z137 } from "zod";
3061
+ var pcb_manual_edit_conflict_warning = z137.object({
3062
+ type: z137.literal("pcb_manual_edit_conflict_warning"),
3040
3063
  pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
3041
3064
  "pcb_manual_edit_conflict_warning"
3042
3065
  ),
3043
- warning_type: z136.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
3044
- message: z136.string(),
3045
- pcb_component_id: z136.string(),
3046
- pcb_group_id: z136.string().optional(),
3047
- subcircuit_id: z136.string().optional(),
3048
- source_component_id: z136.string()
3066
+ warning_type: z137.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
3067
+ message: z137.string(),
3068
+ pcb_component_id: z137.string(),
3069
+ pcb_group_id: z137.string().optional(),
3070
+ subcircuit_id: z137.string().optional(),
3071
+ source_component_id: z137.string()
3049
3072
  }).describe(
3050
3073
  "Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
3051
3074
  );
3052
3075
  expectTypesMatch(true);
3053
3076
 
3054
3077
  // src/pcb/pcb_connector_not_in_accessible_orientation_warning.ts
3055
- import { z as z137 } from "zod";
3056
- var connectorOrientationDirection = z137.enum(["x-", "x+", "y+", "y-"]);
3057
- var pcb_connector_not_in_accessible_orientation_warning = z137.object({
3058
- type: z137.literal("pcb_connector_not_in_accessible_orientation_warning"),
3078
+ import { z as z138 } from "zod";
3079
+ var connectorOrientationDirection = z138.enum(["x-", "x+", "y+", "y-"]);
3080
+ var pcb_connector_not_in_accessible_orientation_warning = z138.object({
3081
+ type: z138.literal("pcb_connector_not_in_accessible_orientation_warning"),
3059
3082
  pcb_connector_not_in_accessible_orientation_warning_id: getZodPrefixedIdWithDefault(
3060
3083
  "pcb_connector_not_in_accessible_orientation_warning"
3061
3084
  ),
3062
- warning_type: z137.literal("pcb_connector_not_in_accessible_orientation_warning").default("pcb_connector_not_in_accessible_orientation_warning"),
3063
- message: z137.string(),
3064
- pcb_component_id: z137.string(),
3065
- source_component_id: z137.string().optional(),
3066
- pcb_board_id: z137.string().optional(),
3085
+ warning_type: z138.literal("pcb_connector_not_in_accessible_orientation_warning").default("pcb_connector_not_in_accessible_orientation_warning"),
3086
+ message: z138.string(),
3087
+ pcb_component_id: z138.string(),
3088
+ source_component_id: z138.string().optional(),
3089
+ pcb_board_id: z138.string().optional(),
3067
3090
  facing_direction: connectorOrientationDirection,
3068
3091
  recommended_facing_direction: connectorOrientationDirection,
3069
- subcircuit_id: z137.string().optional()
3092
+ subcircuit_id: z138.string().optional()
3070
3093
  }).describe(
3071
3094
  "Warning emitted when a connector PCB component is facing inward toward the board and should be reoriented to an outward-facing direction"
3072
3095
  );
3073
3096
  expectTypesMatch(true);
3074
3097
 
3075
3098
  // src/pcb/pcb_breakout_point.ts
3076
- import { z as z138 } from "zod";
3077
- var pcb_breakout_point = z138.object({
3078
- type: z138.literal("pcb_breakout_point"),
3099
+ import { z as z139 } from "zod";
3100
+ var pcb_breakout_point = z139.object({
3101
+ type: z139.literal("pcb_breakout_point"),
3079
3102
  pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
3080
- pcb_group_id: z138.string(),
3081
- subcircuit_id: z138.string().optional(),
3082
- source_trace_id: z138.string().optional(),
3083
- source_port_id: z138.string().optional(),
3084
- source_net_id: z138.string().optional(),
3103
+ pcb_group_id: z139.string(),
3104
+ subcircuit_id: z139.string().optional(),
3105
+ source_trace_id: z139.string().optional(),
3106
+ source_port_id: z139.string().optional(),
3107
+ source_net_id: z139.string().optional(),
3085
3108
  x: distance,
3086
3109
  y: distance
3087
3110
  }).describe(
@@ -3090,61 +3113,61 @@ var pcb_breakout_point = z138.object({
3090
3113
  expectTypesMatch(true);
3091
3114
 
3092
3115
  // src/pcb/pcb_ground_plane.ts
3093
- import { z as z139 } from "zod";
3094
- var pcb_ground_plane = z139.object({
3095
- type: z139.literal("pcb_ground_plane"),
3116
+ import { z as z140 } from "zod";
3117
+ var pcb_ground_plane = z140.object({
3118
+ type: z140.literal("pcb_ground_plane"),
3096
3119
  pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
3097
- source_pcb_ground_plane_id: z139.string(),
3098
- source_net_id: z139.string(),
3099
- pcb_group_id: z139.string().optional(),
3100
- subcircuit_id: z139.string().optional()
3120
+ source_pcb_ground_plane_id: z140.string(),
3121
+ source_net_id: z140.string(),
3122
+ pcb_group_id: z140.string().optional(),
3123
+ subcircuit_id: z140.string().optional()
3101
3124
  }).describe("Defines a ground plane on the PCB");
3102
3125
  expectTypesMatch(true);
3103
3126
 
3104
3127
  // src/pcb/pcb_ground_plane_region.ts
3105
- import { z as z140 } from "zod";
3106
- var pcb_ground_plane_region = z140.object({
3107
- type: z140.literal("pcb_ground_plane_region"),
3128
+ import { z as z141 } from "zod";
3129
+ var pcb_ground_plane_region = z141.object({
3130
+ type: z141.literal("pcb_ground_plane_region"),
3108
3131
  pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
3109
3132
  "pcb_ground_plane_region"
3110
3133
  ),
3111
- pcb_ground_plane_id: z140.string(),
3112
- pcb_group_id: z140.string().optional(),
3113
- subcircuit_id: z140.string().optional(),
3134
+ pcb_ground_plane_id: z141.string(),
3135
+ pcb_group_id: z141.string().optional(),
3136
+ subcircuit_id: z141.string().optional(),
3114
3137
  layer: layer_ref,
3115
- points: z140.array(point)
3138
+ points: z141.array(point)
3116
3139
  }).describe("Defines a polygon region of a ground plane");
3117
3140
  expectTypesMatch(true);
3118
3141
 
3119
3142
  // src/pcb/pcb_thermal_spoke.ts
3120
- import { z as z141 } from "zod";
3121
- var pcb_thermal_spoke = z141.object({
3122
- type: z141.literal("pcb_thermal_spoke"),
3143
+ import { z as z142 } from "zod";
3144
+ var pcb_thermal_spoke = z142.object({
3145
+ type: z142.literal("pcb_thermal_spoke"),
3123
3146
  pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
3124
- pcb_ground_plane_id: z141.string(),
3125
- shape: z141.string(),
3126
- spoke_count: z141.number(),
3147
+ pcb_ground_plane_id: z142.string(),
3148
+ shape: z142.string(),
3149
+ spoke_count: z142.number(),
3127
3150
  spoke_thickness: distance,
3128
3151
  spoke_inner_diameter: distance,
3129
3152
  spoke_outer_diameter: distance,
3130
- pcb_plated_hole_id: z141.string().optional(),
3131
- subcircuit_id: z141.string().optional()
3153
+ pcb_plated_hole_id: z142.string().optional(),
3154
+ subcircuit_id: z142.string().optional()
3132
3155
  }).describe("Pattern for connecting a ground plane to a plated hole");
3133
3156
  expectTypesMatch(true);
3134
3157
 
3135
3158
  // src/pcb/pcb_copper_pour.ts
3136
- import { z as z142 } from "zod";
3137
- var pcb_copper_pour_base = z142.object({
3138
- type: z142.literal("pcb_copper_pour"),
3159
+ import { z as z143 } from "zod";
3160
+ var pcb_copper_pour_base = z143.object({
3161
+ type: z143.literal("pcb_copper_pour"),
3139
3162
  pcb_copper_pour_id: getZodPrefixedIdWithDefault("pcb_copper_pour"),
3140
- pcb_group_id: z142.string().optional(),
3141
- subcircuit_id: z142.string().optional(),
3163
+ pcb_group_id: z143.string().optional(),
3164
+ subcircuit_id: z143.string().optional(),
3142
3165
  layer: layer_ref,
3143
- source_net_id: z142.string().optional(),
3144
- covered_with_solder_mask: z142.boolean().optional().default(true)
3166
+ source_net_id: z143.string().optional(),
3167
+ covered_with_solder_mask: z143.boolean().optional().default(true)
3145
3168
  });
3146
3169
  var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
3147
- shape: z142.literal("rect"),
3170
+ shape: z143.literal("rect"),
3148
3171
  center: point,
3149
3172
  width: length,
3150
3173
  height: length,
@@ -3152,16 +3175,16 @@ var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
3152
3175
  });
3153
3176
  expectTypesMatch(true);
3154
3177
  var pcb_copper_pour_brep = pcb_copper_pour_base.extend({
3155
- shape: z142.literal("brep"),
3178
+ shape: z143.literal("brep"),
3156
3179
  brep_shape
3157
3180
  });
3158
3181
  expectTypesMatch(true);
3159
3182
  var pcb_copper_pour_polygon = pcb_copper_pour_base.extend({
3160
- shape: z142.literal("polygon"),
3161
- points: z142.array(point)
3183
+ shape: z143.literal("polygon"),
3184
+ points: z143.array(point)
3162
3185
  });
3163
3186
  expectTypesMatch(true);
3164
- var pcb_copper_pour = z142.discriminatedUnion("shape", [
3187
+ var pcb_copper_pour = z143.discriminatedUnion("shape", [
3165
3188
  pcb_copper_pour_rect,
3166
3189
  pcb_copper_pour_brep,
3167
3190
  pcb_copper_pour_polygon
@@ -3169,149 +3192,149 @@ var pcb_copper_pour = z142.discriminatedUnion("shape", [
3169
3192
  expectTypesMatch(true);
3170
3193
 
3171
3194
  // src/pcb/pcb_component_outside_board_error.ts
3172
- import { z as z143 } from "zod";
3195
+ import { z as z144 } from "zod";
3173
3196
  var pcb_component_outside_board_error = base_circuit_json_error.extend({
3174
- type: z143.literal("pcb_component_outside_board_error"),
3197
+ type: z144.literal("pcb_component_outside_board_error"),
3175
3198
  pcb_component_outside_board_error_id: getZodPrefixedIdWithDefault(
3176
3199
  "pcb_component_outside_board_error"
3177
3200
  ),
3178
- error_type: z143.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
3179
- pcb_component_id: z143.string(),
3180
- pcb_board_id: z143.string(),
3201
+ error_type: z144.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
3202
+ pcb_component_id: z144.string(),
3203
+ pcb_board_id: z144.string(),
3181
3204
  component_center: point,
3182
- component_bounds: z143.object({
3183
- min_x: z143.number(),
3184
- max_x: z143.number(),
3185
- min_y: z143.number(),
3186
- max_y: z143.number()
3205
+ component_bounds: z144.object({
3206
+ min_x: z144.number(),
3207
+ max_x: z144.number(),
3208
+ min_y: z144.number(),
3209
+ max_y: z144.number()
3187
3210
  }),
3188
- subcircuit_id: z143.string().optional(),
3189
- source_component_id: z143.string().optional()
3211
+ subcircuit_id: z144.string().optional(),
3212
+ source_component_id: z144.string().optional()
3190
3213
  }).describe(
3191
3214
  "Error emitted when a PCB component is placed outside the board boundaries"
3192
3215
  );
3193
3216
  expectTypesMatch(true);
3194
3217
 
3195
3218
  // src/pcb/pcb_component_not_on_board_edge_error.ts
3196
- import { z as z144 } from "zod";
3219
+ import { z as z145 } from "zod";
3197
3220
  var pcb_component_not_on_board_edge_error = base_circuit_json_error.extend({
3198
- type: z144.literal("pcb_component_not_on_board_edge_error"),
3221
+ type: z145.literal("pcb_component_not_on_board_edge_error"),
3199
3222
  pcb_component_not_on_board_edge_error_id: getZodPrefixedIdWithDefault(
3200
3223
  "pcb_component_not_on_board_edge_error"
3201
3224
  ),
3202
- error_type: z144.literal("pcb_component_not_on_board_edge_error").default("pcb_component_not_on_board_edge_error"),
3203
- pcb_component_id: z144.string(),
3204
- pcb_board_id: z144.string(),
3225
+ error_type: z145.literal("pcb_component_not_on_board_edge_error").default("pcb_component_not_on_board_edge_error"),
3226
+ pcb_component_id: z145.string(),
3227
+ pcb_board_id: z145.string(),
3205
3228
  component_center: point,
3206
- pad_to_nearest_board_edge_distance: z144.number(),
3207
- source_component_id: z144.string().optional(),
3208
- subcircuit_id: z144.string().optional()
3229
+ pad_to_nearest_board_edge_distance: z145.number(),
3230
+ source_component_id: z145.string().optional(),
3231
+ subcircuit_id: z145.string().optional()
3209
3232
  }).describe(
3210
3233
  "Error emitted when a component that must be placed on the board edge is centered away from the edge"
3211
3234
  );
3212
3235
  expectTypesMatch(true);
3213
3236
 
3214
3237
  // src/pcb/pcb_component_invalid_layer_error.ts
3215
- import { z as z145 } from "zod";
3238
+ import { z as z146 } from "zod";
3216
3239
  var pcb_component_invalid_layer_error = base_circuit_json_error.extend({
3217
- type: z145.literal("pcb_component_invalid_layer_error"),
3240
+ type: z146.literal("pcb_component_invalid_layer_error"),
3218
3241
  pcb_component_invalid_layer_error_id: getZodPrefixedIdWithDefault(
3219
3242
  "pcb_component_invalid_layer_error"
3220
3243
  ),
3221
- error_type: z145.literal("pcb_component_invalid_layer_error").default("pcb_component_invalid_layer_error"),
3222
- pcb_component_id: z145.string().optional(),
3223
- source_component_id: z145.string(),
3244
+ error_type: z146.literal("pcb_component_invalid_layer_error").default("pcb_component_invalid_layer_error"),
3245
+ pcb_component_id: z146.string().optional(),
3246
+ source_component_id: z146.string(),
3224
3247
  layer: layer_ref,
3225
- subcircuit_id: z145.string().optional()
3248
+ subcircuit_id: z146.string().optional()
3226
3249
  }).describe(
3227
3250
  "Error emitted when a component is placed on an invalid layer (components can only be on 'top' or 'bottom' layers)"
3228
3251
  );
3229
3252
  expectTypesMatch(true);
3230
3253
 
3231
3254
  // src/pcb/pcb_via_clearance_error.ts
3232
- import { z as z146 } from "zod";
3255
+ import { z as z147 } from "zod";
3233
3256
  var pcb_via_clearance_error = base_circuit_json_error.extend({
3234
- type: z146.literal("pcb_via_clearance_error"),
3257
+ type: z147.literal("pcb_via_clearance_error"),
3235
3258
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
3236
- error_type: z146.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
3237
- pcb_via_ids: z146.array(z146.string()).min(2),
3259
+ error_type: z147.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
3260
+ pcb_via_ids: z147.array(z147.string()).min(2),
3238
3261
  minimum_clearance: distance.optional(),
3239
3262
  actual_clearance: distance.optional(),
3240
- pcb_center: z146.object({
3241
- x: z146.number().optional(),
3242
- y: z146.number().optional()
3263
+ pcb_center: z147.object({
3264
+ x: z147.number().optional(),
3265
+ y: z147.number().optional()
3243
3266
  }).optional(),
3244
- subcircuit_id: z146.string().optional()
3267
+ subcircuit_id: z147.string().optional()
3245
3268
  }).describe("Error emitted when vias are closer than the allowed clearance");
3246
3269
  expectTypesMatch(true);
3247
3270
 
3248
3271
  // src/pcb/pcb_courtyard_rect.ts
3249
- import { z as z147 } from "zod";
3250
- var pcb_courtyard_rect = z147.object({
3251
- type: z147.literal("pcb_courtyard_rect"),
3272
+ import { z as z148 } from "zod";
3273
+ var pcb_courtyard_rect = z148.object({
3274
+ type: z148.literal("pcb_courtyard_rect"),
3252
3275
  pcb_courtyard_rect_id: getZodPrefixedIdWithDefault("pcb_courtyard_rect"),
3253
- pcb_component_id: z147.string(),
3254
- pcb_group_id: z147.string().optional(),
3255
- subcircuit_id: z147.string().optional(),
3276
+ pcb_component_id: z148.string(),
3277
+ pcb_group_id: z148.string().optional(),
3278
+ subcircuit_id: z148.string().optional(),
3256
3279
  center: point,
3257
3280
  width: length,
3258
3281
  height: length,
3259
3282
  layer: visible_layer,
3260
3283
  ccw_rotation: rotation.optional(),
3261
- color: z147.string().optional()
3284
+ color: z148.string().optional()
3262
3285
  }).describe("Defines a courtyard rectangle on the PCB");
3263
3286
  expectTypesMatch(true);
3264
3287
 
3265
3288
  // src/pcb/pcb_courtyard_outline.ts
3266
- import { z as z148 } from "zod";
3267
- var pcb_courtyard_outline = z148.object({
3268
- type: z148.literal("pcb_courtyard_outline"),
3289
+ import { z as z149 } from "zod";
3290
+ var pcb_courtyard_outline = z149.object({
3291
+ type: z149.literal("pcb_courtyard_outline"),
3269
3292
  pcb_courtyard_outline_id: getZodPrefixedIdWithDefault(
3270
3293
  "pcb_courtyard_outline"
3271
3294
  ),
3272
- pcb_component_id: z148.string(),
3273
- pcb_group_id: z148.string().optional(),
3274
- subcircuit_id: z148.string().optional(),
3295
+ pcb_component_id: z149.string(),
3296
+ pcb_group_id: z149.string().optional(),
3297
+ subcircuit_id: z149.string().optional(),
3275
3298
  layer: visible_layer,
3276
- outline: z148.array(point).min(2)
3299
+ outline: z149.array(point).min(2)
3277
3300
  }).describe("Defines a courtyard outline on the PCB");
3278
3301
  expectTypesMatch(true);
3279
3302
 
3280
3303
  // src/pcb/pcb_courtyard_polygon.ts
3281
- import { z as z149 } from "zod";
3282
- var pcb_courtyard_polygon = z149.object({
3283
- type: z149.literal("pcb_courtyard_polygon"),
3304
+ import { z as z150 } from "zod";
3305
+ var pcb_courtyard_polygon = z150.object({
3306
+ type: z150.literal("pcb_courtyard_polygon"),
3284
3307
  pcb_courtyard_polygon_id: getZodPrefixedIdWithDefault(
3285
3308
  "pcb_courtyard_polygon"
3286
3309
  ),
3287
- pcb_component_id: z149.string(),
3288
- pcb_group_id: z149.string().optional(),
3289
- subcircuit_id: z149.string().optional(),
3310
+ pcb_component_id: z150.string(),
3311
+ pcb_group_id: z150.string().optional(),
3312
+ subcircuit_id: z150.string().optional(),
3290
3313
  layer: visible_layer,
3291
- points: z149.array(point).min(3),
3292
- color: z149.string().optional()
3314
+ points: z150.array(point).min(3),
3315
+ color: z150.string().optional()
3293
3316
  }).describe("Defines a courtyard polygon on the PCB");
3294
3317
  expectTypesMatch(true);
3295
3318
 
3296
3319
  // src/pcb/pcb_courtyard_circle.ts
3297
- import { z as z150 } from "zod";
3298
- var pcb_courtyard_circle = z150.object({
3299
- type: z150.literal("pcb_courtyard_circle"),
3320
+ import { z as z151 } from "zod";
3321
+ var pcb_courtyard_circle = z151.object({
3322
+ type: z151.literal("pcb_courtyard_circle"),
3300
3323
  pcb_courtyard_circle_id: getZodPrefixedIdWithDefault(
3301
3324
  "pcb_courtyard_circle"
3302
3325
  ),
3303
- pcb_component_id: z150.string(),
3304
- pcb_group_id: z150.string().optional(),
3305
- subcircuit_id: z150.string().optional(),
3326
+ pcb_component_id: z151.string(),
3327
+ pcb_group_id: z151.string().optional(),
3328
+ subcircuit_id: z151.string().optional(),
3306
3329
  center: point,
3307
3330
  radius: length,
3308
3331
  layer: visible_layer,
3309
- color: z150.string().optional()
3332
+ color: z151.string().optional()
3310
3333
  }).describe("Defines a courtyard circle on the PCB");
3311
3334
  expectTypesMatch(true);
3312
3335
 
3313
3336
  // src/cad/cad_component.ts
3314
- import { z as z151 } from "zod";
3337
+ import { z as z152 } from "zod";
3315
3338
 
3316
3339
  // src/cad/cad_model_conventions.ts
3317
3340
  var cad_model_formats = [
@@ -3342,48 +3365,48 @@ var cadModelDefaultDirectionMap = {
3342
3365
  };
3343
3366
 
3344
3367
  // src/cad/cad_component.ts
3345
- var cad_component = z151.object({
3346
- type: z151.literal("cad_component"),
3347
- cad_component_id: z151.string(),
3348
- pcb_component_id: z151.string(),
3349
- source_component_id: z151.string(),
3368
+ var cad_component = z152.object({
3369
+ type: z152.literal("cad_component"),
3370
+ cad_component_id: z152.string(),
3371
+ pcb_component_id: z152.string(),
3372
+ source_component_id: z152.string(),
3350
3373
  position: point3,
3351
3374
  rotation: point3.optional(),
3352
3375
  size: point3.optional(),
3353
3376
  layer: layer_ref.optional(),
3354
- subcircuit_id: z151.string().optional(),
3377
+ subcircuit_id: z152.string().optional(),
3355
3378
  // These are all ways to generate/load the 3d model
3356
- footprinter_string: z151.string().optional(),
3357
- model_obj_url: z151.string().optional(),
3358
- model_stl_url: z151.string().optional(),
3359
- model_3mf_url: z151.string().optional(),
3360
- model_gltf_url: z151.string().optional(),
3361
- model_glb_url: z151.string().optional(),
3362
- model_step_url: z151.string().optional(),
3363
- model_wrl_url: z151.string().optional(),
3379
+ footprinter_string: z152.string().optional(),
3380
+ model_obj_url: z152.string().optional(),
3381
+ model_stl_url: z152.string().optional(),
3382
+ model_3mf_url: z152.string().optional(),
3383
+ model_gltf_url: z152.string().optional(),
3384
+ model_glb_url: z152.string().optional(),
3385
+ model_step_url: z152.string().optional(),
3386
+ model_wrl_url: z152.string().optional(),
3364
3387
  model_asset: asset.optional(),
3365
- model_unit_to_mm_scale_factor: z151.number().optional(),
3366
- model_board_normal_direction: z151.enum(cad_model_axis_directions).optional().describe(
3388
+ model_unit_to_mm_scale_factor: z152.number().optional(),
3389
+ model_board_normal_direction: z152.enum(cad_model_axis_directions).optional().describe(
3367
3390
  `The direction in the model's coordinate space that is considered "up" or "coming out of the board surface"`
3368
3391
  ),
3369
3392
  model_origin_position: point3.optional(),
3370
- model_origin_alignment: z151.enum([
3393
+ model_origin_alignment: z152.enum([
3371
3394
  "unknown",
3372
3395
  "center",
3373
3396
  "center_of_component_on_board_surface",
3374
3397
  "bottom_center_of_component"
3375
3398
  ]).optional(),
3376
- model_object_fit: z151.enum(["contain_within_bounds", "fill_bounds"]).optional().default("contain_within_bounds"),
3377
- model_jscad: z151.any().optional(),
3378
- show_as_translucent_model: z151.boolean().optional(),
3379
- anchor_alignment: z151.enum(["center", "center_of_component_on_board_surface"]).optional().default("center")
3399
+ model_object_fit: z152.enum(["contain_within_bounds", "fill_bounds"]).optional().default("contain_within_bounds"),
3400
+ model_jscad: z152.any().optional(),
3401
+ show_as_translucent_model: z152.boolean().optional(),
3402
+ anchor_alignment: z152.enum(["center", "center_of_component_on_board_surface"]).optional().default("center")
3380
3403
  }).describe("Defines a component on the PCB");
3381
3404
  expectTypesMatch(true);
3382
3405
 
3383
3406
  // src/simulation/simulation_voltage_source.ts
3384
- import { z as z152 } from "zod";
3385
- var wave_shape = z152.enum(["sinewave", "square", "triangle", "sawtooth"]);
3386
- var percentage = z152.union([z152.string(), z152.number()]).transform((val) => {
3407
+ import { z as z153 } from "zod";
3408
+ var wave_shape = z153.enum(["sinewave", "square", "triangle", "sawtooth"]);
3409
+ var percentage = z153.union([z153.string(), z153.number()]).transform((val) => {
3387
3410
  if (typeof val === "string") {
3388
3411
  if (val.endsWith("%")) {
3389
3412
  return parseFloat(val.slice(0, -1)) / 100;
@@ -3392,30 +3415,30 @@ var percentage = z152.union([z152.string(), z152.number()]).transform((val) => {
3392
3415
  }
3393
3416
  return val;
3394
3417
  }).pipe(
3395
- z152.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
3418
+ z153.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
3396
3419
  );
3397
- var simulation_dc_voltage_source = z152.object({
3398
- type: z152.literal("simulation_voltage_source"),
3420
+ var simulation_dc_voltage_source = z153.object({
3421
+ type: z153.literal("simulation_voltage_source"),
3399
3422
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
3400
3423
  "simulation_voltage_source"
3401
3424
  ),
3402
- is_dc_source: z152.literal(true).optional().default(true),
3403
- positive_source_port_id: z152.string().optional(),
3404
- negative_source_port_id: z152.string().optional(),
3405
- positive_source_net_id: z152.string().optional(),
3406
- negative_source_net_id: z152.string().optional(),
3425
+ is_dc_source: z153.literal(true).optional().default(true),
3426
+ positive_source_port_id: z153.string().optional(),
3427
+ negative_source_port_id: z153.string().optional(),
3428
+ positive_source_net_id: z153.string().optional(),
3429
+ negative_source_net_id: z153.string().optional(),
3407
3430
  voltage
3408
3431
  }).describe("Defines a DC voltage source for simulation");
3409
- var simulation_ac_voltage_source = z152.object({
3410
- type: z152.literal("simulation_voltage_source"),
3432
+ var simulation_ac_voltage_source = z153.object({
3433
+ type: z153.literal("simulation_voltage_source"),
3411
3434
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
3412
3435
  "simulation_voltage_source"
3413
3436
  ),
3414
- is_dc_source: z152.literal(false),
3415
- terminal1_source_port_id: z152.string().optional(),
3416
- terminal2_source_port_id: z152.string().optional(),
3417
- terminal1_source_net_id: z152.string().optional(),
3418
- terminal2_source_net_id: z152.string().optional(),
3437
+ is_dc_source: z153.literal(false),
3438
+ terminal1_source_port_id: z153.string().optional(),
3439
+ terminal2_source_port_id: z153.string().optional(),
3440
+ terminal1_source_net_id: z153.string().optional(),
3441
+ terminal2_source_net_id: z153.string().optional(),
3419
3442
  voltage: voltage.optional(),
3420
3443
  frequency: frequency.optional(),
3421
3444
  peak_to_peak_voltage: voltage.optional(),
@@ -3423,14 +3446,14 @@ var simulation_ac_voltage_source = z152.object({
3423
3446
  phase: rotation.optional(),
3424
3447
  duty_cycle: percentage.optional()
3425
3448
  }).describe("Defines an AC voltage source for simulation");
3426
- var simulation_voltage_source = z152.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
3449
+ var simulation_voltage_source = z153.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
3427
3450
  expectTypesMatch(true);
3428
3451
  expectTypesMatch(true);
3429
3452
  expectTypesMatch(true);
3430
3453
 
3431
3454
  // src/simulation/simulation_current_source.ts
3432
- import { z as z153 } from "zod";
3433
- var percentage2 = z153.union([z153.string(), z153.number()]).transform((val) => {
3455
+ import { z as z154 } from "zod";
3456
+ var percentage2 = z154.union([z154.string(), z154.number()]).transform((val) => {
3434
3457
  if (typeof val === "string") {
3435
3458
  if (val.endsWith("%")) {
3436
3459
  return parseFloat(val.slice(0, -1)) / 100;
@@ -3439,30 +3462,30 @@ var percentage2 = z153.union([z153.string(), z153.number()]).transform((val) =>
3439
3462
  }
3440
3463
  return val;
3441
3464
  }).pipe(
3442
- z153.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
3465
+ z154.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
3443
3466
  );
3444
- var simulation_dc_current_source = z153.object({
3445
- type: z153.literal("simulation_current_source"),
3467
+ var simulation_dc_current_source = z154.object({
3468
+ type: z154.literal("simulation_current_source"),
3446
3469
  simulation_current_source_id: getZodPrefixedIdWithDefault(
3447
3470
  "simulation_current_source"
3448
3471
  ),
3449
- is_dc_source: z153.literal(true).optional().default(true),
3450
- positive_source_port_id: z153.string().optional(),
3451
- negative_source_port_id: z153.string().optional(),
3452
- positive_source_net_id: z153.string().optional(),
3453
- negative_source_net_id: z153.string().optional(),
3472
+ is_dc_source: z154.literal(true).optional().default(true),
3473
+ positive_source_port_id: z154.string().optional(),
3474
+ negative_source_port_id: z154.string().optional(),
3475
+ positive_source_net_id: z154.string().optional(),
3476
+ negative_source_net_id: z154.string().optional(),
3454
3477
  current
3455
3478
  }).describe("Defines a DC current source for simulation");
3456
- var simulation_ac_current_source = z153.object({
3457
- type: z153.literal("simulation_current_source"),
3479
+ var simulation_ac_current_source = z154.object({
3480
+ type: z154.literal("simulation_current_source"),
3458
3481
  simulation_current_source_id: getZodPrefixedIdWithDefault(
3459
3482
  "simulation_current_source"
3460
3483
  ),
3461
- is_dc_source: z153.literal(false),
3462
- terminal1_source_port_id: z153.string().optional(),
3463
- terminal2_source_port_id: z153.string().optional(),
3464
- terminal1_source_net_id: z153.string().optional(),
3465
- terminal2_source_net_id: z153.string().optional(),
3484
+ is_dc_source: z154.literal(false),
3485
+ terminal1_source_port_id: z154.string().optional(),
3486
+ terminal2_source_port_id: z154.string().optional(),
3487
+ terminal1_source_net_id: z154.string().optional(),
3488
+ terminal2_source_net_id: z154.string().optional(),
3466
3489
  current: current.optional(),
3467
3490
  frequency: frequency.optional(),
3468
3491
  peak_to_peak_current: current.optional(),
@@ -3470,25 +3493,25 @@ var simulation_ac_current_source = z153.object({
3470
3493
  phase: rotation.optional(),
3471
3494
  duty_cycle: percentage2.optional()
3472
3495
  }).describe("Defines an AC current source for simulation");
3473
- var simulation_current_source = z153.union([simulation_dc_current_source, simulation_ac_current_source]).describe("Defines a current source for simulation");
3496
+ var simulation_current_source = z154.union([simulation_dc_current_source, simulation_ac_current_source]).describe("Defines a current source for simulation");
3474
3497
  expectTypesMatch(true);
3475
3498
  expectTypesMatch(true);
3476
3499
  expectTypesMatch(true);
3477
3500
 
3478
3501
  // src/simulation/simulation_experiment.ts
3479
- import { z as z154 } from "zod";
3480
- var experiment_type = z154.union([
3481
- z154.literal("spice_dc_sweep"),
3482
- z154.literal("spice_dc_operating_point"),
3483
- z154.literal("spice_transient_analysis"),
3484
- z154.literal("spice_ac_analysis")
3502
+ import { z as z155 } from "zod";
3503
+ var experiment_type = z155.union([
3504
+ z155.literal("spice_dc_sweep"),
3505
+ z155.literal("spice_dc_operating_point"),
3506
+ z155.literal("spice_transient_analysis"),
3507
+ z155.literal("spice_ac_analysis")
3485
3508
  ]);
3486
- var simulation_experiment = z154.object({
3487
- type: z154.literal("simulation_experiment"),
3509
+ var simulation_experiment = z155.object({
3510
+ type: z155.literal("simulation_experiment"),
3488
3511
  simulation_experiment_id: getZodPrefixedIdWithDefault(
3489
3512
  "simulation_experiment"
3490
3513
  ),
3491
- name: z154.string(),
3514
+ name: z155.string(),
3492
3515
  experiment_type,
3493
3516
  time_per_step: duration_ms.optional(),
3494
3517
  start_time_ms: ms.optional(),
@@ -3497,53 +3520,53 @@ var simulation_experiment = z154.object({
3497
3520
  expectTypesMatch(true);
3498
3521
 
3499
3522
  // src/simulation/simulation_transient_voltage_graph.ts
3500
- import { z as z155 } from "zod";
3501
- var simulation_transient_voltage_graph = z155.object({
3502
- type: z155.literal("simulation_transient_voltage_graph"),
3523
+ import { z as z156 } from "zod";
3524
+ var simulation_transient_voltage_graph = z156.object({
3525
+ type: z156.literal("simulation_transient_voltage_graph"),
3503
3526
  simulation_transient_voltage_graph_id: getZodPrefixedIdWithDefault(
3504
3527
  "simulation_transient_voltage_graph"
3505
3528
  ),
3506
- simulation_experiment_id: z155.string(),
3507
- timestamps_ms: z155.array(z155.number()).optional(),
3508
- voltage_levels: z155.array(z155.number()),
3509
- source_component_id: z155.string().optional(),
3510
- subcircuit_connectivity_map_key: z155.string().optional(),
3529
+ simulation_experiment_id: z156.string(),
3530
+ timestamps_ms: z156.array(z156.number()).optional(),
3531
+ voltage_levels: z156.array(z156.number()),
3532
+ source_component_id: z156.string().optional(),
3533
+ subcircuit_connectivity_map_key: z156.string().optional(),
3511
3534
  time_per_step: duration_ms,
3512
3535
  start_time_ms: ms,
3513
3536
  end_time_ms: ms,
3514
- name: z155.string().optional(),
3515
- color: z155.string().optional()
3537
+ name: z156.string().optional(),
3538
+ color: z156.string().optional()
3516
3539
  }).describe("Stores voltage measurements over time for a simulation");
3517
3540
  expectTypesMatch(true);
3518
3541
 
3519
3542
  // src/simulation/simulation_switch.ts
3520
- import { z as z156 } from "zod";
3521
- var simulation_switch = z156.object({
3522
- type: z156.literal("simulation_switch"),
3543
+ import { z as z157 } from "zod";
3544
+ var simulation_switch = z157.object({
3545
+ type: z157.literal("simulation_switch"),
3523
3546
  simulation_switch_id: getZodPrefixedIdWithDefault("simulation_switch"),
3524
- source_component_id: z156.string().optional(),
3547
+ source_component_id: z157.string().optional(),
3525
3548
  closes_at: ms.optional(),
3526
3549
  opens_at: ms.optional(),
3527
- starts_closed: z156.boolean().optional(),
3550
+ starts_closed: z157.boolean().optional(),
3528
3551
  switching_frequency: frequency.optional()
3529
3552
  }).describe("Defines a switch for simulation timing control");
3530
3553
  expectTypesMatch(true);
3531
3554
 
3532
3555
  // src/simulation/simulation_voltage_probe.ts
3533
- import { z as z157 } from "zod";
3534
- var simulation_voltage_probe = z157.object({
3535
- type: z157.literal("simulation_voltage_probe"),
3556
+ import { z as z158 } from "zod";
3557
+ var simulation_voltage_probe = z158.object({
3558
+ type: z158.literal("simulation_voltage_probe"),
3536
3559
  simulation_voltage_probe_id: getZodPrefixedIdWithDefault(
3537
3560
  "simulation_voltage_probe"
3538
3561
  ),
3539
- source_component_id: z157.string().optional(),
3540
- name: z157.string().optional(),
3541
- signal_input_source_port_id: z157.string().optional(),
3542
- signal_input_source_net_id: z157.string().optional(),
3543
- reference_input_source_port_id: z157.string().optional(),
3544
- reference_input_source_net_id: z157.string().optional(),
3545
- subcircuit_id: z157.string().optional(),
3546
- color: z157.string().optional()
3562
+ source_component_id: z158.string().optional(),
3563
+ name: z158.string().optional(),
3564
+ signal_input_source_port_id: z158.string().optional(),
3565
+ signal_input_source_net_id: z158.string().optional(),
3566
+ reference_input_source_port_id: z158.string().optional(),
3567
+ reference_input_source_net_id: z158.string().optional(),
3568
+ subcircuit_id: z158.string().optional(),
3569
+ color: z158.string().optional()
3547
3570
  }).describe(
3548
3571
  "Defines a voltage probe for simulation. If a reference input is not provided, it measures against ground. If a reference input is provided, it measures the differential voltage between two points."
3549
3572
  ).superRefine((data, ctx) => {
@@ -3553,20 +3576,20 @@ var simulation_voltage_probe = z157.object({
3553
3576
  const has_nets = !!data.signal_input_source_net_id || !!data.reference_input_source_net_id;
3554
3577
  if (has_ports && has_nets) {
3555
3578
  ctx.addIssue({
3556
- code: z157.ZodIssueCode.custom,
3579
+ code: z158.ZodIssueCode.custom,
3557
3580
  message: "Cannot mix port and net connections in a differential probe."
3558
3581
  });
3559
3582
  } else if (has_ports) {
3560
3583
  if (!data.signal_input_source_port_id || !data.reference_input_source_port_id) {
3561
3584
  ctx.addIssue({
3562
- code: z157.ZodIssueCode.custom,
3585
+ code: z158.ZodIssueCode.custom,
3563
3586
  message: "Differential port probe requires both signal_input_source_port_id and reference_input_source_port_id."
3564
3587
  });
3565
3588
  }
3566
3589
  } else if (has_nets) {
3567
3590
  if (!data.signal_input_source_net_id || !data.reference_input_source_net_id) {
3568
3591
  ctx.addIssue({
3569
- code: z157.ZodIssueCode.custom,
3592
+ code: z158.ZodIssueCode.custom,
3570
3593
  message: "Differential net probe requires both signal_input_source_net_id and reference_input_source_net_id."
3571
3594
  });
3572
3595
  }
@@ -3574,7 +3597,7 @@ var simulation_voltage_probe = z157.object({
3574
3597
  } else {
3575
3598
  if (!!data.signal_input_source_port_id === !!data.signal_input_source_net_id) {
3576
3599
  ctx.addIssue({
3577
- code: z157.ZodIssueCode.custom,
3600
+ code: z158.ZodIssueCode.custom,
3578
3601
  message: "A voltage probe must have exactly one of signal_input_source_port_id or signal_input_source_net_id."
3579
3602
  });
3580
3603
  }
@@ -3583,35 +3606,35 @@ var simulation_voltage_probe = z157.object({
3583
3606
  expectTypesMatch(true);
3584
3607
 
3585
3608
  // src/simulation/simulation_unknown_experiment_error.ts
3586
- import { z as z158 } from "zod";
3609
+ import { z as z159 } from "zod";
3587
3610
  var simulation_unknown_experiment_error = base_circuit_json_error.extend({
3588
- type: z158.literal("simulation_unknown_experiment_error"),
3611
+ type: z159.literal("simulation_unknown_experiment_error"),
3589
3612
  simulation_unknown_experiment_error_id: getZodPrefixedIdWithDefault(
3590
3613
  "simulation_unknown_experiment_error"
3591
3614
  ),
3592
- error_type: z158.literal("simulation_unknown_experiment_error").default("simulation_unknown_experiment_error"),
3593
- simulation_experiment_id: z158.string().optional(),
3594
- subcircuit_id: z158.string().optional()
3615
+ error_type: z159.literal("simulation_unknown_experiment_error").default("simulation_unknown_experiment_error"),
3616
+ simulation_experiment_id: z159.string().optional(),
3617
+ subcircuit_id: z159.string().optional()
3595
3618
  }).describe("An unknown error occurred during the simulation experiment.");
3596
3619
  expectTypesMatch(true);
3597
3620
 
3598
3621
  // src/simulation/simulation_op_amp.ts
3599
- import { z as z159 } from "zod";
3600
- var simulation_op_amp = z159.object({
3601
- type: z159.literal("simulation_op_amp"),
3622
+ import { z as z160 } from "zod";
3623
+ var simulation_op_amp = z160.object({
3624
+ type: z160.literal("simulation_op_amp"),
3602
3625
  simulation_op_amp_id: getZodPrefixedIdWithDefault("simulation_op_amp"),
3603
- source_component_id: z159.string().optional(),
3604
- inverting_input_source_port_id: z159.string(),
3605
- non_inverting_input_source_port_id: z159.string(),
3606
- output_source_port_id: z159.string(),
3607
- positive_supply_source_port_id: z159.string(),
3608
- negative_supply_source_port_id: z159.string()
3626
+ source_component_id: z160.string().optional(),
3627
+ inverting_input_source_port_id: z160.string(),
3628
+ non_inverting_input_source_port_id: z160.string(),
3629
+ output_source_port_id: z160.string(),
3630
+ positive_supply_source_port_id: z160.string(),
3631
+ negative_supply_source_port_id: z160.string()
3609
3632
  }).describe("Defines a simple ideal operational amplifier for simulation");
3610
3633
  expectTypesMatch(true);
3611
3634
 
3612
3635
  // src/any_circuit_element.ts
3613
- import { z as z160 } from "zod";
3614
- var any_circuit_element = z160.union([
3636
+ import { z as z161 } from "zod";
3637
+ var any_circuit_element = z161.union([
3615
3638
  source_trace,
3616
3639
  source_port,
3617
3640
  source_component_internal_connection,
@@ -3643,6 +3666,7 @@ var any_circuit_element = z160.union([
3643
3666
  source_invalid_component_property_error,
3644
3667
  source_trace_not_connected_error,
3645
3668
  source_pin_missing_trace_warning,
3669
+ source_missing_manufacturer_part_number_warning,
3646
3670
  source_no_power_pin_defined_warning,
3647
3671
  source_no_ground_pin_defined_warning,
3648
3672
  source_component_pins_underspecified_warning,
@@ -3927,6 +3951,7 @@ export {
3927
3951
  source_interconnect,
3928
3952
  source_invalid_component_property_error,
3929
3953
  source_manually_placed_via,
3954
+ source_missing_manufacturer_part_number_warning,
3930
3955
  source_missing_property_error,
3931
3956
  source_net,
3932
3957
  source_no_ground_pin_defined_warning,