circuit-json 0.0.242 → 0.0.244
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.d.mts +656 -101
- package/dist/index.mjs +539 -517
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1102,54 +1102,72 @@ var schematic_table_cell = z59.object({
|
|
|
1102
1102
|
}).describe("Defines a cell within a schematic_table");
|
|
1103
1103
|
expectTypesMatch(true);
|
|
1104
1104
|
|
|
1105
|
-
// src/pcb/properties/
|
|
1105
|
+
// src/pcb/properties/brep.ts
|
|
1106
1106
|
import { z as z60 } from "zod";
|
|
1107
|
-
var
|
|
1107
|
+
var point_with_bulge = z60.object({
|
|
1108
1108
|
x: distance,
|
|
1109
1109
|
y: distance,
|
|
1110
|
-
|
|
1111
|
-
via_to_layer: layer_ref.optional()
|
|
1110
|
+
bulge: z60.number().optional()
|
|
1112
1111
|
});
|
|
1113
|
-
var pcb_route_hints = z60.array(pcb_route_hint);
|
|
1114
1112
|
expectTypesMatch(true);
|
|
1113
|
+
var ring = z60.object({
|
|
1114
|
+
vertices: z60.array(point_with_bulge)
|
|
1115
|
+
});
|
|
1116
|
+
expectTypesMatch(true);
|
|
1117
|
+
var brep_shape = z60.object({
|
|
1118
|
+
outer_ring: ring,
|
|
1119
|
+
inner_rings: z60.array(ring).default([])
|
|
1120
|
+
});
|
|
1115
1121
|
expectTypesMatch(true);
|
|
1116
1122
|
|
|
1117
|
-
// src/pcb/properties/
|
|
1123
|
+
// src/pcb/properties/pcb_route_hints.ts
|
|
1118
1124
|
import { z as z61 } from "zod";
|
|
1119
|
-
var
|
|
1125
|
+
var pcb_route_hint = z61.object({
|
|
1120
1126
|
x: distance,
|
|
1121
1127
|
y: distance,
|
|
1122
1128
|
via: z61.boolean().optional(),
|
|
1129
|
+
via_to_layer: layer_ref.optional()
|
|
1130
|
+
});
|
|
1131
|
+
var pcb_route_hints = z61.array(pcb_route_hint);
|
|
1132
|
+
expectTypesMatch(true);
|
|
1133
|
+
expectTypesMatch(true);
|
|
1134
|
+
|
|
1135
|
+
// src/pcb/properties/route_hint_point.ts
|
|
1136
|
+
import { z as z62 } from "zod";
|
|
1137
|
+
var route_hint_point = z62.object({
|
|
1138
|
+
x: distance,
|
|
1139
|
+
y: distance,
|
|
1140
|
+
via: z62.boolean().optional(),
|
|
1123
1141
|
to_layer: layer_ref.optional(),
|
|
1124
1142
|
trace_width: distance.optional()
|
|
1125
1143
|
});
|
|
1126
1144
|
expectTypesMatch(true);
|
|
1127
1145
|
|
|
1128
1146
|
// src/pcb/pcb_component.ts
|
|
1129
|
-
import { z as
|
|
1130
|
-
var pcb_component =
|
|
1131
|
-
type:
|
|
1147
|
+
import { z as z63 } from "zod";
|
|
1148
|
+
var pcb_component = z63.object({
|
|
1149
|
+
type: z63.literal("pcb_component"),
|
|
1132
1150
|
pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
|
|
1133
|
-
source_component_id:
|
|
1151
|
+
source_component_id: z63.string(),
|
|
1134
1152
|
center: point,
|
|
1135
1153
|
layer: layer_ref,
|
|
1136
1154
|
rotation,
|
|
1137
1155
|
width: length,
|
|
1138
1156
|
height: length,
|
|
1139
|
-
subcircuit_id:
|
|
1140
|
-
pcb_group_id:
|
|
1157
|
+
subcircuit_id: z63.string().optional(),
|
|
1158
|
+
pcb_group_id: z63.string().optional()
|
|
1141
1159
|
}).describe("Defines a component on the PCB");
|
|
1142
1160
|
expectTypesMatch(true);
|
|
1143
1161
|
|
|
1144
1162
|
// src/pcb/pcb_hole.ts
|
|
1145
|
-
import { z as
|
|
1146
|
-
var pcb_hole_circle_or_square =
|
|
1147
|
-
type:
|
|
1163
|
+
import { z as z64 } from "zod";
|
|
1164
|
+
var pcb_hole_circle_or_square = z64.object({
|
|
1165
|
+
type: z64.literal("pcb_hole"),
|
|
1148
1166
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1149
|
-
pcb_group_id:
|
|
1150
|
-
subcircuit_id:
|
|
1151
|
-
hole_shape:
|
|
1152
|
-
hole_diameter:
|
|
1167
|
+
pcb_group_id: z64.string().optional(),
|
|
1168
|
+
subcircuit_id: z64.string().optional(),
|
|
1169
|
+
hole_shape: z64.enum(["circle", "square"]),
|
|
1170
|
+
hole_diameter: z64.number(),
|
|
1153
1171
|
x: distance,
|
|
1154
1172
|
y: distance
|
|
1155
1173
|
});
|
|
@@ -1157,14 +1175,14 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
|
|
|
1157
1175
|
"Defines a circular or square hole on the PCB"
|
|
1158
1176
|
);
|
|
1159
1177
|
expectTypesMatch(true);
|
|
1160
|
-
var pcb_hole_oval =
|
|
1161
|
-
type:
|
|
1178
|
+
var pcb_hole_oval = z64.object({
|
|
1179
|
+
type: z64.literal("pcb_hole"),
|
|
1162
1180
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1163
|
-
pcb_group_id:
|
|
1164
|
-
subcircuit_id:
|
|
1165
|
-
hole_shape:
|
|
1166
|
-
hole_width:
|
|
1167
|
-
hole_height:
|
|
1181
|
+
pcb_group_id: z64.string().optional(),
|
|
1182
|
+
subcircuit_id: z64.string().optional(),
|
|
1183
|
+
hole_shape: z64.literal("oval"),
|
|
1184
|
+
hole_width: z64.number(),
|
|
1185
|
+
hole_height: z64.number(),
|
|
1168
1186
|
x: distance,
|
|
1169
1187
|
y: distance
|
|
1170
1188
|
});
|
|
@@ -1175,98 +1193,98 @@ expectTypesMatch(true);
|
|
|
1175
1193
|
var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
|
|
1176
1194
|
|
|
1177
1195
|
// src/pcb/pcb_plated_hole.ts
|
|
1178
|
-
import { z as
|
|
1179
|
-
var pcb_plated_hole_circle =
|
|
1180
|
-
type:
|
|
1181
|
-
shape:
|
|
1182
|
-
pcb_group_id:
|
|
1183
|
-
subcircuit_id:
|
|
1184
|
-
outer_diameter:
|
|
1185
|
-
hole_diameter:
|
|
1196
|
+
import { z as z65 } from "zod";
|
|
1197
|
+
var pcb_plated_hole_circle = z65.object({
|
|
1198
|
+
type: z65.literal("pcb_plated_hole"),
|
|
1199
|
+
shape: z65.literal("circle"),
|
|
1200
|
+
pcb_group_id: z65.string().optional(),
|
|
1201
|
+
subcircuit_id: z65.string().optional(),
|
|
1202
|
+
outer_diameter: z65.number(),
|
|
1203
|
+
hole_diameter: z65.number(),
|
|
1186
1204
|
x: distance,
|
|
1187
1205
|
y: distance,
|
|
1188
|
-
layers:
|
|
1189
|
-
port_hints:
|
|
1190
|
-
pcb_component_id:
|
|
1191
|
-
pcb_port_id:
|
|
1206
|
+
layers: z65.array(layer_ref),
|
|
1207
|
+
port_hints: z65.array(z65.string()).optional(),
|
|
1208
|
+
pcb_component_id: z65.string().optional(),
|
|
1209
|
+
pcb_port_id: z65.string().optional(),
|
|
1192
1210
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1193
1211
|
});
|
|
1194
|
-
var pcb_plated_hole_oval =
|
|
1195
|
-
type:
|
|
1196
|
-
shape:
|
|
1197
|
-
pcb_group_id:
|
|
1198
|
-
subcircuit_id:
|
|
1199
|
-
outer_width:
|
|
1200
|
-
outer_height:
|
|
1201
|
-
hole_width:
|
|
1202
|
-
hole_height:
|
|
1212
|
+
var pcb_plated_hole_oval = z65.object({
|
|
1213
|
+
type: z65.literal("pcb_plated_hole"),
|
|
1214
|
+
shape: z65.enum(["oval", "pill"]),
|
|
1215
|
+
pcb_group_id: z65.string().optional(),
|
|
1216
|
+
subcircuit_id: z65.string().optional(),
|
|
1217
|
+
outer_width: z65.number(),
|
|
1218
|
+
outer_height: z65.number(),
|
|
1219
|
+
hole_width: z65.number(),
|
|
1220
|
+
hole_height: z65.number(),
|
|
1203
1221
|
x: distance,
|
|
1204
1222
|
y: distance,
|
|
1205
|
-
layers:
|
|
1206
|
-
port_hints:
|
|
1207
|
-
pcb_component_id:
|
|
1208
|
-
pcb_port_id:
|
|
1223
|
+
layers: z65.array(layer_ref),
|
|
1224
|
+
port_hints: z65.array(z65.string()).optional(),
|
|
1225
|
+
pcb_component_id: z65.string().optional(),
|
|
1226
|
+
pcb_port_id: z65.string().optional(),
|
|
1209
1227
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1210
1228
|
});
|
|
1211
|
-
var pcb_circular_hole_with_rect_pad =
|
|
1212
|
-
type:
|
|
1213
|
-
shape:
|
|
1214
|
-
pcb_group_id:
|
|
1215
|
-
subcircuit_id:
|
|
1216
|
-
hole_shape:
|
|
1217
|
-
pad_shape:
|
|
1218
|
-
hole_diameter:
|
|
1219
|
-
rect_pad_width:
|
|
1220
|
-
rect_pad_height:
|
|
1229
|
+
var pcb_circular_hole_with_rect_pad = z65.object({
|
|
1230
|
+
type: z65.literal("pcb_plated_hole"),
|
|
1231
|
+
shape: z65.literal("circular_hole_with_rect_pad"),
|
|
1232
|
+
pcb_group_id: z65.string().optional(),
|
|
1233
|
+
subcircuit_id: z65.string().optional(),
|
|
1234
|
+
hole_shape: z65.literal("circle"),
|
|
1235
|
+
pad_shape: z65.literal("rect"),
|
|
1236
|
+
hole_diameter: z65.number(),
|
|
1237
|
+
rect_pad_width: z65.number(),
|
|
1238
|
+
rect_pad_height: z65.number(),
|
|
1221
1239
|
x: distance,
|
|
1222
1240
|
y: distance,
|
|
1223
|
-
layers:
|
|
1224
|
-
port_hints:
|
|
1225
|
-
pcb_component_id:
|
|
1226
|
-
pcb_port_id:
|
|
1241
|
+
layers: z65.array(layer_ref),
|
|
1242
|
+
port_hints: z65.array(z65.string()).optional(),
|
|
1243
|
+
pcb_component_id: z65.string().optional(),
|
|
1244
|
+
pcb_port_id: z65.string().optional(),
|
|
1227
1245
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1228
1246
|
});
|
|
1229
|
-
var pcb_pill_hole_with_rect_pad =
|
|
1230
|
-
type:
|
|
1231
|
-
shape:
|
|
1232
|
-
pcb_group_id:
|
|
1233
|
-
subcircuit_id:
|
|
1234
|
-
hole_shape:
|
|
1235
|
-
pad_shape:
|
|
1236
|
-
hole_width:
|
|
1237
|
-
hole_height:
|
|
1238
|
-
rect_pad_width:
|
|
1239
|
-
rect_pad_height:
|
|
1247
|
+
var pcb_pill_hole_with_rect_pad = z65.object({
|
|
1248
|
+
type: z65.literal("pcb_plated_hole"),
|
|
1249
|
+
shape: z65.literal("pill_hole_with_rect_pad"),
|
|
1250
|
+
pcb_group_id: z65.string().optional(),
|
|
1251
|
+
subcircuit_id: z65.string().optional(),
|
|
1252
|
+
hole_shape: z65.literal("pill"),
|
|
1253
|
+
pad_shape: z65.literal("rect"),
|
|
1254
|
+
hole_width: z65.number(),
|
|
1255
|
+
hole_height: z65.number(),
|
|
1256
|
+
rect_pad_width: z65.number(),
|
|
1257
|
+
rect_pad_height: z65.number(),
|
|
1240
1258
|
x: distance,
|
|
1241
1259
|
y: distance,
|
|
1242
|
-
layers:
|
|
1243
|
-
port_hints:
|
|
1244
|
-
pcb_component_id:
|
|
1245
|
-
pcb_port_id:
|
|
1260
|
+
layers: z65.array(layer_ref),
|
|
1261
|
+
port_hints: z65.array(z65.string()).optional(),
|
|
1262
|
+
pcb_component_id: z65.string().optional(),
|
|
1263
|
+
pcb_port_id: z65.string().optional(),
|
|
1246
1264
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1247
1265
|
});
|
|
1248
|
-
var pcb_rotated_pill_hole_with_rect_pad =
|
|
1249
|
-
type:
|
|
1250
|
-
shape:
|
|
1251
|
-
pcb_group_id:
|
|
1252
|
-
subcircuit_id:
|
|
1253
|
-
hole_shape:
|
|
1254
|
-
pad_shape:
|
|
1255
|
-
hole_width:
|
|
1256
|
-
hole_height:
|
|
1266
|
+
var pcb_rotated_pill_hole_with_rect_pad = z65.object({
|
|
1267
|
+
type: z65.literal("pcb_plated_hole"),
|
|
1268
|
+
shape: z65.literal("rotated_pill_hole_with_rect_pad"),
|
|
1269
|
+
pcb_group_id: z65.string().optional(),
|
|
1270
|
+
subcircuit_id: z65.string().optional(),
|
|
1271
|
+
hole_shape: z65.literal("rotated_pill"),
|
|
1272
|
+
pad_shape: z65.literal("rect"),
|
|
1273
|
+
hole_width: z65.number(),
|
|
1274
|
+
hole_height: z65.number(),
|
|
1257
1275
|
hole_ccw_rotation: rotation,
|
|
1258
|
-
rect_pad_width:
|
|
1259
|
-
rect_pad_height:
|
|
1276
|
+
rect_pad_width: z65.number(),
|
|
1277
|
+
rect_pad_height: z65.number(),
|
|
1260
1278
|
rect_ccw_rotation: rotation,
|
|
1261
1279
|
x: distance,
|
|
1262
1280
|
y: distance,
|
|
1263
|
-
layers:
|
|
1264
|
-
port_hints:
|
|
1265
|
-
pcb_component_id:
|
|
1266
|
-
pcb_port_id:
|
|
1281
|
+
layers: z65.array(layer_ref),
|
|
1282
|
+
port_hints: z65.array(z65.string()).optional(),
|
|
1283
|
+
pcb_component_id: z65.string().optional(),
|
|
1284
|
+
pcb_port_id: z65.string().optional(),
|
|
1267
1285
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1268
1286
|
});
|
|
1269
|
-
var pcb_plated_hole =
|
|
1287
|
+
var pcb_plated_hole = z65.union([
|
|
1270
1288
|
pcb_plated_hole_circle,
|
|
1271
1289
|
pcb_plated_hole_oval,
|
|
1272
1290
|
pcb_circular_hole_with_rect_pad,
|
|
@@ -1282,113 +1300,113 @@ expectTypesMatch(true);
|
|
|
1282
1300
|
expectTypesMatch(true);
|
|
1283
1301
|
|
|
1284
1302
|
// src/pcb/pcb_port.ts
|
|
1285
|
-
import { z as
|
|
1286
|
-
var pcb_port =
|
|
1287
|
-
type:
|
|
1303
|
+
import { z as z66 } from "zod";
|
|
1304
|
+
var pcb_port = z66.object({
|
|
1305
|
+
type: z66.literal("pcb_port"),
|
|
1288
1306
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
1289
|
-
pcb_group_id:
|
|
1290
|
-
subcircuit_id:
|
|
1291
|
-
source_port_id:
|
|
1292
|
-
pcb_component_id:
|
|
1307
|
+
pcb_group_id: z66.string().optional(),
|
|
1308
|
+
subcircuit_id: z66.string().optional(),
|
|
1309
|
+
source_port_id: z66.string(),
|
|
1310
|
+
pcb_component_id: z66.string(),
|
|
1293
1311
|
x: distance,
|
|
1294
1312
|
y: distance,
|
|
1295
|
-
layers:
|
|
1313
|
+
layers: z66.array(layer_ref)
|
|
1296
1314
|
}).describe("Defines a port on the PCB");
|
|
1297
1315
|
expectTypesMatch(true);
|
|
1298
1316
|
|
|
1299
1317
|
// src/pcb/pcb_smtpad.ts
|
|
1300
|
-
import { z as
|
|
1301
|
-
var pcb_smtpad_circle =
|
|
1302
|
-
type:
|
|
1303
|
-
shape:
|
|
1318
|
+
import { z as z67 } from "zod";
|
|
1319
|
+
var pcb_smtpad_circle = z67.object({
|
|
1320
|
+
type: z67.literal("pcb_smtpad"),
|
|
1321
|
+
shape: z67.literal("circle"),
|
|
1304
1322
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1305
|
-
pcb_group_id:
|
|
1306
|
-
subcircuit_id:
|
|
1323
|
+
pcb_group_id: z67.string().optional(),
|
|
1324
|
+
subcircuit_id: z67.string().optional(),
|
|
1307
1325
|
x: distance,
|
|
1308
1326
|
y: distance,
|
|
1309
|
-
radius:
|
|
1327
|
+
radius: z67.number(),
|
|
1310
1328
|
layer: layer_ref,
|
|
1311
|
-
port_hints:
|
|
1312
|
-
pcb_component_id:
|
|
1313
|
-
pcb_port_id:
|
|
1329
|
+
port_hints: z67.array(z67.string()).optional(),
|
|
1330
|
+
pcb_component_id: z67.string().optional(),
|
|
1331
|
+
pcb_port_id: z67.string().optional()
|
|
1314
1332
|
});
|
|
1315
|
-
var pcb_smtpad_rect =
|
|
1316
|
-
type:
|
|
1317
|
-
shape:
|
|
1333
|
+
var pcb_smtpad_rect = z67.object({
|
|
1334
|
+
type: z67.literal("pcb_smtpad"),
|
|
1335
|
+
shape: z67.literal("rect"),
|
|
1318
1336
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1319
|
-
pcb_group_id:
|
|
1320
|
-
subcircuit_id:
|
|
1337
|
+
pcb_group_id: z67.string().optional(),
|
|
1338
|
+
subcircuit_id: z67.string().optional(),
|
|
1321
1339
|
x: distance,
|
|
1322
1340
|
y: distance,
|
|
1323
|
-
width:
|
|
1324
|
-
height:
|
|
1341
|
+
width: z67.number(),
|
|
1342
|
+
height: z67.number(),
|
|
1325
1343
|
layer: layer_ref,
|
|
1326
|
-
port_hints:
|
|
1327
|
-
pcb_component_id:
|
|
1328
|
-
pcb_port_id:
|
|
1344
|
+
port_hints: z67.array(z67.string()).optional(),
|
|
1345
|
+
pcb_component_id: z67.string().optional(),
|
|
1346
|
+
pcb_port_id: z67.string().optional()
|
|
1329
1347
|
});
|
|
1330
|
-
var pcb_smtpad_rotated_rect =
|
|
1331
|
-
type:
|
|
1332
|
-
shape:
|
|
1348
|
+
var pcb_smtpad_rotated_rect = z67.object({
|
|
1349
|
+
type: z67.literal("pcb_smtpad"),
|
|
1350
|
+
shape: z67.literal("rotated_rect"),
|
|
1333
1351
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1334
|
-
pcb_group_id:
|
|
1335
|
-
subcircuit_id:
|
|
1352
|
+
pcb_group_id: z67.string().optional(),
|
|
1353
|
+
subcircuit_id: z67.string().optional(),
|
|
1336
1354
|
x: distance,
|
|
1337
1355
|
y: distance,
|
|
1338
|
-
width:
|
|
1339
|
-
height:
|
|
1356
|
+
width: z67.number(),
|
|
1357
|
+
height: z67.number(),
|
|
1340
1358
|
ccw_rotation: rotation,
|
|
1341
1359
|
layer: layer_ref,
|
|
1342
|
-
port_hints:
|
|
1343
|
-
pcb_component_id:
|
|
1344
|
-
pcb_port_id:
|
|
1360
|
+
port_hints: z67.array(z67.string()).optional(),
|
|
1361
|
+
pcb_component_id: z67.string().optional(),
|
|
1362
|
+
pcb_port_id: z67.string().optional()
|
|
1345
1363
|
});
|
|
1346
|
-
var pcb_smtpad_pill =
|
|
1347
|
-
type:
|
|
1348
|
-
shape:
|
|
1364
|
+
var pcb_smtpad_pill = z67.object({
|
|
1365
|
+
type: z67.literal("pcb_smtpad"),
|
|
1366
|
+
shape: z67.literal("pill"),
|
|
1349
1367
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1350
|
-
pcb_group_id:
|
|
1351
|
-
subcircuit_id:
|
|
1368
|
+
pcb_group_id: z67.string().optional(),
|
|
1369
|
+
subcircuit_id: z67.string().optional(),
|
|
1352
1370
|
x: distance,
|
|
1353
1371
|
y: distance,
|
|
1354
|
-
width:
|
|
1355
|
-
height:
|
|
1356
|
-
radius:
|
|
1372
|
+
width: z67.number(),
|
|
1373
|
+
height: z67.number(),
|
|
1374
|
+
radius: z67.number(),
|
|
1357
1375
|
layer: layer_ref,
|
|
1358
|
-
port_hints:
|
|
1359
|
-
pcb_component_id:
|
|
1360
|
-
pcb_port_id:
|
|
1376
|
+
port_hints: z67.array(z67.string()).optional(),
|
|
1377
|
+
pcb_component_id: z67.string().optional(),
|
|
1378
|
+
pcb_port_id: z67.string().optional()
|
|
1361
1379
|
});
|
|
1362
|
-
var pcb_smtpad_rotated_pill =
|
|
1363
|
-
type:
|
|
1364
|
-
shape:
|
|
1380
|
+
var pcb_smtpad_rotated_pill = z67.object({
|
|
1381
|
+
type: z67.literal("pcb_smtpad"),
|
|
1382
|
+
shape: z67.literal("rotated_pill"),
|
|
1365
1383
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1366
|
-
pcb_group_id:
|
|
1367
|
-
subcircuit_id:
|
|
1384
|
+
pcb_group_id: z67.string().optional(),
|
|
1385
|
+
subcircuit_id: z67.string().optional(),
|
|
1368
1386
|
x: distance,
|
|
1369
1387
|
y: distance,
|
|
1370
|
-
width:
|
|
1371
|
-
height:
|
|
1372
|
-
radius:
|
|
1388
|
+
width: z67.number(),
|
|
1389
|
+
height: z67.number(),
|
|
1390
|
+
radius: z67.number(),
|
|
1373
1391
|
ccw_rotation: rotation,
|
|
1374
1392
|
layer: layer_ref,
|
|
1375
|
-
port_hints:
|
|
1376
|
-
pcb_component_id:
|
|
1377
|
-
pcb_port_id:
|
|
1393
|
+
port_hints: z67.array(z67.string()).optional(),
|
|
1394
|
+
pcb_component_id: z67.string().optional(),
|
|
1395
|
+
pcb_port_id: z67.string().optional()
|
|
1378
1396
|
});
|
|
1379
|
-
var pcb_smtpad_polygon =
|
|
1380
|
-
type:
|
|
1381
|
-
shape:
|
|
1397
|
+
var pcb_smtpad_polygon = z67.object({
|
|
1398
|
+
type: z67.literal("pcb_smtpad"),
|
|
1399
|
+
shape: z67.literal("polygon"),
|
|
1382
1400
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1383
|
-
pcb_group_id:
|
|
1384
|
-
subcircuit_id:
|
|
1385
|
-
points:
|
|
1401
|
+
pcb_group_id: z67.string().optional(),
|
|
1402
|
+
subcircuit_id: z67.string().optional(),
|
|
1403
|
+
points: z67.array(point),
|
|
1386
1404
|
layer: layer_ref,
|
|
1387
|
-
port_hints:
|
|
1388
|
-
pcb_component_id:
|
|
1389
|
-
pcb_port_id:
|
|
1405
|
+
port_hints: z67.array(z67.string()).optional(),
|
|
1406
|
+
pcb_component_id: z67.string().optional(),
|
|
1407
|
+
pcb_port_id: z67.string().optional()
|
|
1390
1408
|
});
|
|
1391
|
-
var pcb_smtpad =
|
|
1409
|
+
var pcb_smtpad = z67.discriminatedUnion("shape", [
|
|
1392
1410
|
pcb_smtpad_circle,
|
|
1393
1411
|
pcb_smtpad_rect,
|
|
1394
1412
|
pcb_smtpad_rotated_rect,
|
|
@@ -1404,79 +1422,79 @@ expectTypesMatch(true);
|
|
|
1404
1422
|
expectTypesMatch(true);
|
|
1405
1423
|
|
|
1406
1424
|
// src/pcb/pcb_solder_paste.ts
|
|
1407
|
-
import { z as
|
|
1408
|
-
var pcb_solder_paste_circle =
|
|
1409
|
-
type:
|
|
1410
|
-
shape:
|
|
1425
|
+
import { z as z68 } from "zod";
|
|
1426
|
+
var pcb_solder_paste_circle = z68.object({
|
|
1427
|
+
type: z68.literal("pcb_solder_paste"),
|
|
1428
|
+
shape: z68.literal("circle"),
|
|
1411
1429
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1412
|
-
pcb_group_id:
|
|
1413
|
-
subcircuit_id:
|
|
1430
|
+
pcb_group_id: z68.string().optional(),
|
|
1431
|
+
subcircuit_id: z68.string().optional(),
|
|
1414
1432
|
x: distance,
|
|
1415
1433
|
y: distance,
|
|
1416
|
-
radius:
|
|
1434
|
+
radius: z68.number(),
|
|
1417
1435
|
layer: layer_ref,
|
|
1418
|
-
pcb_component_id:
|
|
1419
|
-
pcb_smtpad_id:
|
|
1436
|
+
pcb_component_id: z68.string().optional(),
|
|
1437
|
+
pcb_smtpad_id: z68.string().optional()
|
|
1420
1438
|
});
|
|
1421
|
-
var pcb_solder_paste_rect =
|
|
1422
|
-
type:
|
|
1423
|
-
shape:
|
|
1439
|
+
var pcb_solder_paste_rect = z68.object({
|
|
1440
|
+
type: z68.literal("pcb_solder_paste"),
|
|
1441
|
+
shape: z68.literal("rect"),
|
|
1424
1442
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1425
|
-
pcb_group_id:
|
|
1426
|
-
subcircuit_id:
|
|
1443
|
+
pcb_group_id: z68.string().optional(),
|
|
1444
|
+
subcircuit_id: z68.string().optional(),
|
|
1427
1445
|
x: distance,
|
|
1428
1446
|
y: distance,
|
|
1429
|
-
width:
|
|
1430
|
-
height:
|
|
1447
|
+
width: z68.number(),
|
|
1448
|
+
height: z68.number(),
|
|
1431
1449
|
layer: layer_ref,
|
|
1432
|
-
pcb_component_id:
|
|
1433
|
-
pcb_smtpad_id:
|
|
1450
|
+
pcb_component_id: z68.string().optional(),
|
|
1451
|
+
pcb_smtpad_id: z68.string().optional()
|
|
1434
1452
|
});
|
|
1435
|
-
var pcb_solder_paste_pill =
|
|
1436
|
-
type:
|
|
1437
|
-
shape:
|
|
1453
|
+
var pcb_solder_paste_pill = z68.object({
|
|
1454
|
+
type: z68.literal("pcb_solder_paste"),
|
|
1455
|
+
shape: z68.literal("pill"),
|
|
1438
1456
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1439
|
-
pcb_group_id:
|
|
1440
|
-
subcircuit_id:
|
|
1457
|
+
pcb_group_id: z68.string().optional(),
|
|
1458
|
+
subcircuit_id: z68.string().optional(),
|
|
1441
1459
|
x: distance,
|
|
1442
1460
|
y: distance,
|
|
1443
|
-
width:
|
|
1444
|
-
height:
|
|
1445
|
-
radius:
|
|
1461
|
+
width: z68.number(),
|
|
1462
|
+
height: z68.number(),
|
|
1463
|
+
radius: z68.number(),
|
|
1446
1464
|
layer: layer_ref,
|
|
1447
|
-
pcb_component_id:
|
|
1448
|
-
pcb_smtpad_id:
|
|
1465
|
+
pcb_component_id: z68.string().optional(),
|
|
1466
|
+
pcb_smtpad_id: z68.string().optional()
|
|
1449
1467
|
});
|
|
1450
|
-
var pcb_solder_paste_rotated_rect =
|
|
1451
|
-
type:
|
|
1452
|
-
shape:
|
|
1468
|
+
var pcb_solder_paste_rotated_rect = z68.object({
|
|
1469
|
+
type: z68.literal("pcb_solder_paste"),
|
|
1470
|
+
shape: z68.literal("rotated_rect"),
|
|
1453
1471
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1454
|
-
pcb_group_id:
|
|
1455
|
-
subcircuit_id:
|
|
1472
|
+
pcb_group_id: z68.string().optional(),
|
|
1473
|
+
subcircuit_id: z68.string().optional(),
|
|
1456
1474
|
x: distance,
|
|
1457
1475
|
y: distance,
|
|
1458
|
-
width:
|
|
1459
|
-
height:
|
|
1476
|
+
width: z68.number(),
|
|
1477
|
+
height: z68.number(),
|
|
1460
1478
|
ccw_rotation: distance,
|
|
1461
1479
|
layer: layer_ref,
|
|
1462
|
-
pcb_component_id:
|
|
1463
|
-
pcb_smtpad_id:
|
|
1480
|
+
pcb_component_id: z68.string().optional(),
|
|
1481
|
+
pcb_smtpad_id: z68.string().optional()
|
|
1464
1482
|
});
|
|
1465
|
-
var pcb_solder_paste_oval =
|
|
1466
|
-
type:
|
|
1467
|
-
shape:
|
|
1483
|
+
var pcb_solder_paste_oval = z68.object({
|
|
1484
|
+
type: z68.literal("pcb_solder_paste"),
|
|
1485
|
+
shape: z68.literal("oval"),
|
|
1468
1486
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1469
|
-
pcb_group_id:
|
|
1470
|
-
subcircuit_id:
|
|
1487
|
+
pcb_group_id: z68.string().optional(),
|
|
1488
|
+
subcircuit_id: z68.string().optional(),
|
|
1471
1489
|
x: distance,
|
|
1472
1490
|
y: distance,
|
|
1473
|
-
width:
|
|
1474
|
-
height:
|
|
1491
|
+
width: z68.number(),
|
|
1492
|
+
height: z68.number(),
|
|
1475
1493
|
layer: layer_ref,
|
|
1476
|
-
pcb_component_id:
|
|
1477
|
-
pcb_smtpad_id:
|
|
1494
|
+
pcb_component_id: z68.string().optional(),
|
|
1495
|
+
pcb_smtpad_id: z68.string().optional()
|
|
1478
1496
|
});
|
|
1479
|
-
var pcb_solder_paste =
|
|
1497
|
+
var pcb_solder_paste = z68.union([
|
|
1480
1498
|
pcb_solder_paste_circle,
|
|
1481
1499
|
pcb_solder_paste_rect,
|
|
1482
1500
|
pcb_solder_paste_pill,
|
|
@@ -1492,134 +1510,134 @@ expectTypesMatch(
|
|
|
1492
1510
|
expectTypesMatch(true);
|
|
1493
1511
|
|
|
1494
1512
|
// src/pcb/pcb_text.ts
|
|
1495
|
-
import { z as
|
|
1496
|
-
var pcb_text =
|
|
1497
|
-
type:
|
|
1513
|
+
import { z as z69 } from "zod";
|
|
1514
|
+
var pcb_text = z69.object({
|
|
1515
|
+
type: z69.literal("pcb_text"),
|
|
1498
1516
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
1499
|
-
pcb_group_id:
|
|
1500
|
-
subcircuit_id:
|
|
1501
|
-
text:
|
|
1517
|
+
pcb_group_id: z69.string().optional(),
|
|
1518
|
+
subcircuit_id: z69.string().optional(),
|
|
1519
|
+
text: z69.string(),
|
|
1502
1520
|
center: point,
|
|
1503
1521
|
layer: layer_ref,
|
|
1504
1522
|
width: length,
|
|
1505
1523
|
height: length,
|
|
1506
|
-
lines:
|
|
1524
|
+
lines: z69.number(),
|
|
1507
1525
|
// @ts-ignore
|
|
1508
|
-
align:
|
|
1526
|
+
align: z69.enum(["bottom-left"])
|
|
1509
1527
|
}).describe("Defines text on the PCB");
|
|
1510
1528
|
expectTypesMatch(true);
|
|
1511
1529
|
|
|
1512
1530
|
// src/pcb/pcb_trace.ts
|
|
1513
|
-
import { z as
|
|
1514
|
-
var pcb_trace_route_point_wire =
|
|
1515
|
-
route_type:
|
|
1531
|
+
import { z as z70 } from "zod";
|
|
1532
|
+
var pcb_trace_route_point_wire = z70.object({
|
|
1533
|
+
route_type: z70.literal("wire"),
|
|
1516
1534
|
x: distance,
|
|
1517
1535
|
y: distance,
|
|
1518
1536
|
width: distance,
|
|
1519
|
-
start_pcb_port_id:
|
|
1520
|
-
end_pcb_port_id:
|
|
1537
|
+
start_pcb_port_id: z70.string().optional(),
|
|
1538
|
+
end_pcb_port_id: z70.string().optional(),
|
|
1521
1539
|
layer: layer_ref
|
|
1522
1540
|
});
|
|
1523
|
-
var pcb_trace_route_point_via =
|
|
1524
|
-
route_type:
|
|
1541
|
+
var pcb_trace_route_point_via = z70.object({
|
|
1542
|
+
route_type: z70.literal("via"),
|
|
1525
1543
|
x: distance,
|
|
1526
1544
|
y: distance,
|
|
1527
1545
|
hole_diameter: distance.optional(),
|
|
1528
1546
|
outer_diameter: distance.optional(),
|
|
1529
|
-
from_layer:
|
|
1530
|
-
to_layer:
|
|
1547
|
+
from_layer: z70.string(),
|
|
1548
|
+
to_layer: z70.string()
|
|
1531
1549
|
});
|
|
1532
|
-
var pcb_trace_route_point =
|
|
1550
|
+
var pcb_trace_route_point = z70.union([
|
|
1533
1551
|
pcb_trace_route_point_wire,
|
|
1534
1552
|
pcb_trace_route_point_via
|
|
1535
1553
|
]);
|
|
1536
|
-
var pcb_trace =
|
|
1537
|
-
type:
|
|
1538
|
-
source_trace_id:
|
|
1539
|
-
pcb_component_id:
|
|
1554
|
+
var pcb_trace = z70.object({
|
|
1555
|
+
type: z70.literal("pcb_trace"),
|
|
1556
|
+
source_trace_id: z70.string().optional(),
|
|
1557
|
+
pcb_component_id: z70.string().optional(),
|
|
1540
1558
|
pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
|
|
1541
|
-
pcb_group_id:
|
|
1542
|
-
subcircuit_id:
|
|
1543
|
-
route_thickness_mode:
|
|
1544
|
-
route_order_index:
|
|
1545
|
-
should_round_corners:
|
|
1546
|
-
trace_length:
|
|
1547
|
-
route:
|
|
1559
|
+
pcb_group_id: z70.string().optional(),
|
|
1560
|
+
subcircuit_id: z70.string().optional(),
|
|
1561
|
+
route_thickness_mode: z70.enum(["constant", "interpolated"]).default("constant").optional(),
|
|
1562
|
+
route_order_index: z70.number().optional(),
|
|
1563
|
+
should_round_corners: z70.boolean().optional(),
|
|
1564
|
+
trace_length: z70.number().optional(),
|
|
1565
|
+
route: z70.array(pcb_trace_route_point)
|
|
1548
1566
|
}).describe("Defines a trace on the PCB");
|
|
1549
1567
|
expectTypesMatch(true);
|
|
1550
1568
|
expectTypesMatch(true);
|
|
1551
1569
|
|
|
1552
1570
|
// src/pcb/pcb_trace_error.ts
|
|
1553
|
-
import { z as
|
|
1554
|
-
var pcb_trace_error =
|
|
1555
|
-
type:
|
|
1571
|
+
import { z as z71 } from "zod";
|
|
1572
|
+
var pcb_trace_error = z71.object({
|
|
1573
|
+
type: z71.literal("pcb_trace_error"),
|
|
1556
1574
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
1557
|
-
error_type:
|
|
1558
|
-
message:
|
|
1575
|
+
error_type: z71.literal("pcb_trace_error").default("pcb_trace_error"),
|
|
1576
|
+
message: z71.string(),
|
|
1559
1577
|
center: point.optional(),
|
|
1560
|
-
pcb_trace_id:
|
|
1561
|
-
source_trace_id:
|
|
1562
|
-
pcb_component_ids:
|
|
1563
|
-
pcb_port_ids:
|
|
1564
|
-
subcircuit_id:
|
|
1578
|
+
pcb_trace_id: z71.string(),
|
|
1579
|
+
source_trace_id: z71.string(),
|
|
1580
|
+
pcb_component_ids: z71.array(z71.string()),
|
|
1581
|
+
pcb_port_ids: z71.array(z71.string()),
|
|
1582
|
+
subcircuit_id: z71.string().optional()
|
|
1565
1583
|
}).describe("Defines a trace error on the PCB");
|
|
1566
1584
|
expectTypesMatch(true);
|
|
1567
1585
|
|
|
1568
1586
|
// src/pcb/pcb_trace_missing_error.ts
|
|
1569
|
-
import { z as
|
|
1570
|
-
var pcb_trace_missing_error =
|
|
1571
|
-
type:
|
|
1587
|
+
import { z as z72 } from "zod";
|
|
1588
|
+
var pcb_trace_missing_error = z72.object({
|
|
1589
|
+
type: z72.literal("pcb_trace_missing_error"),
|
|
1572
1590
|
pcb_trace_missing_error_id: getZodPrefixedIdWithDefault(
|
|
1573
1591
|
"pcb_trace_missing_error"
|
|
1574
1592
|
),
|
|
1575
|
-
error_type:
|
|
1576
|
-
message:
|
|
1593
|
+
error_type: z72.literal("pcb_trace_missing_error").default("pcb_trace_missing_error"),
|
|
1594
|
+
message: z72.string(),
|
|
1577
1595
|
center: point.optional(),
|
|
1578
|
-
source_trace_id:
|
|
1579
|
-
pcb_component_ids:
|
|
1580
|
-
pcb_port_ids:
|
|
1581
|
-
subcircuit_id:
|
|
1596
|
+
source_trace_id: z72.string(),
|
|
1597
|
+
pcb_component_ids: z72.array(z72.string()),
|
|
1598
|
+
pcb_port_ids: z72.array(z72.string()),
|
|
1599
|
+
subcircuit_id: z72.string().optional()
|
|
1582
1600
|
}).describe(
|
|
1583
1601
|
"Defines an error when a source trace has no corresponding PCB trace"
|
|
1584
1602
|
);
|
|
1585
1603
|
expectTypesMatch(true);
|
|
1586
1604
|
|
|
1587
1605
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
1588
|
-
import { z as
|
|
1589
|
-
var pcb_port_not_matched_error =
|
|
1590
|
-
type:
|
|
1606
|
+
import { z as z73 } from "zod";
|
|
1607
|
+
var pcb_port_not_matched_error = z73.object({
|
|
1608
|
+
type: z73.literal("pcb_port_not_matched_error"),
|
|
1591
1609
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
1592
|
-
error_type:
|
|
1593
|
-
message:
|
|
1594
|
-
pcb_component_ids:
|
|
1595
|
-
subcircuit_id:
|
|
1610
|
+
error_type: z73.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
|
|
1611
|
+
message: z73.string(),
|
|
1612
|
+
pcb_component_ids: z73.array(z73.string()),
|
|
1613
|
+
subcircuit_id: z73.string().optional()
|
|
1596
1614
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
1597
1615
|
expectTypesMatch(true);
|
|
1598
1616
|
|
|
1599
1617
|
// src/pcb/pcb_port_not_connected_error.ts
|
|
1600
|
-
import { z as
|
|
1601
|
-
var pcb_port_not_connected_error =
|
|
1602
|
-
type:
|
|
1618
|
+
import { z as z74 } from "zod";
|
|
1619
|
+
var pcb_port_not_connected_error = z74.object({
|
|
1620
|
+
type: z74.literal("pcb_port_not_connected_error"),
|
|
1603
1621
|
pcb_port_not_connected_error_id: getZodPrefixedIdWithDefault(
|
|
1604
1622
|
"pcb_port_not_connected_error"
|
|
1605
1623
|
),
|
|
1606
|
-
error_type:
|
|
1607
|
-
message:
|
|
1608
|
-
pcb_port_ids:
|
|
1609
|
-
pcb_component_ids:
|
|
1610
|
-
subcircuit_id:
|
|
1624
|
+
error_type: z74.literal("pcb_port_not_connected_error").default("pcb_port_not_connected_error"),
|
|
1625
|
+
message: z74.string(),
|
|
1626
|
+
pcb_port_ids: z74.array(z74.string()),
|
|
1627
|
+
pcb_component_ids: z74.array(z74.string()),
|
|
1628
|
+
subcircuit_id: z74.string().optional()
|
|
1611
1629
|
}).describe("Defines an error when a pcb port is not connected to any trace");
|
|
1612
1630
|
expectTypesMatch(
|
|
1613
1631
|
true
|
|
1614
1632
|
);
|
|
1615
1633
|
|
|
1616
1634
|
// src/pcb/pcb_via.ts
|
|
1617
|
-
import { z as
|
|
1618
|
-
var pcb_via =
|
|
1619
|
-
type:
|
|
1635
|
+
import { z as z75 } from "zod";
|
|
1636
|
+
var pcb_via = z75.object({
|
|
1637
|
+
type: z75.literal("pcb_via"),
|
|
1620
1638
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
1621
|
-
pcb_group_id:
|
|
1622
|
-
subcircuit_id:
|
|
1639
|
+
pcb_group_id: z75.string().optional(),
|
|
1640
|
+
subcircuit_id: z75.string().optional(),
|
|
1623
1641
|
x: distance,
|
|
1624
1642
|
y: distance,
|
|
1625
1643
|
outer_diameter: distance.default("0.6mm"),
|
|
@@ -1628,59 +1646,59 @@ var pcb_via = z74.object({
|
|
|
1628
1646
|
from_layer: layer_ref.optional(),
|
|
1629
1647
|
/** @deprecated */
|
|
1630
1648
|
to_layer: layer_ref.optional(),
|
|
1631
|
-
layers:
|
|
1632
|
-
pcb_trace_id:
|
|
1649
|
+
layers: z75.array(layer_ref),
|
|
1650
|
+
pcb_trace_id: z75.string().optional()
|
|
1633
1651
|
}).describe("Defines a via on the PCB");
|
|
1634
1652
|
expectTypesMatch(true);
|
|
1635
1653
|
|
|
1636
1654
|
// src/pcb/pcb_board.ts
|
|
1637
|
-
import { z as
|
|
1638
|
-
var pcb_board =
|
|
1639
|
-
type:
|
|
1655
|
+
import { z as z76 } from "zod";
|
|
1656
|
+
var pcb_board = z76.object({
|
|
1657
|
+
type: z76.literal("pcb_board"),
|
|
1640
1658
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
1641
|
-
is_subcircuit:
|
|
1642
|
-
subcircuit_id:
|
|
1659
|
+
is_subcircuit: z76.boolean().optional(),
|
|
1660
|
+
subcircuit_id: z76.string().optional(),
|
|
1643
1661
|
width: length,
|
|
1644
1662
|
height: length,
|
|
1645
1663
|
center: point,
|
|
1646
1664
|
thickness: length.optional().default(1.4),
|
|
1647
|
-
num_layers:
|
|
1648
|
-
outline:
|
|
1649
|
-
material:
|
|
1665
|
+
num_layers: z76.number().optional().default(4),
|
|
1666
|
+
outline: z76.array(point).optional(),
|
|
1667
|
+
material: z76.enum(["fr4", "fr1"]).default("fr4")
|
|
1650
1668
|
}).describe("Defines the board outline of the PCB");
|
|
1651
1669
|
expectTypesMatch(true);
|
|
1652
1670
|
|
|
1653
1671
|
// src/pcb/pcb_placement_error.ts
|
|
1654
|
-
import { z as
|
|
1655
|
-
var pcb_placement_error =
|
|
1656
|
-
type:
|
|
1672
|
+
import { z as z77 } from "zod";
|
|
1673
|
+
var pcb_placement_error = z77.object({
|
|
1674
|
+
type: z77.literal("pcb_placement_error"),
|
|
1657
1675
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
1658
|
-
error_type:
|
|
1659
|
-
message:
|
|
1660
|
-
subcircuit_id:
|
|
1676
|
+
error_type: z77.literal("pcb_placement_error").default("pcb_placement_error"),
|
|
1677
|
+
message: z77.string(),
|
|
1678
|
+
subcircuit_id: z77.string().optional()
|
|
1661
1679
|
}).describe("Defines a placement error on the PCB");
|
|
1662
1680
|
expectTypesMatch(true);
|
|
1663
1681
|
|
|
1664
1682
|
// src/pcb/pcb_trace_hint.ts
|
|
1665
|
-
import { z as
|
|
1666
|
-
var pcb_trace_hint =
|
|
1667
|
-
type:
|
|
1683
|
+
import { z as z78 } from "zod";
|
|
1684
|
+
var pcb_trace_hint = z78.object({
|
|
1685
|
+
type: z78.literal("pcb_trace_hint"),
|
|
1668
1686
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
1669
|
-
pcb_port_id:
|
|
1670
|
-
pcb_component_id:
|
|
1671
|
-
route:
|
|
1672
|
-
subcircuit_id:
|
|
1687
|
+
pcb_port_id: z78.string(),
|
|
1688
|
+
pcb_component_id: z78.string(),
|
|
1689
|
+
route: z78.array(route_hint_point),
|
|
1690
|
+
subcircuit_id: z78.string().optional()
|
|
1673
1691
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
1674
1692
|
expectTypesMatch(true);
|
|
1675
1693
|
|
|
1676
1694
|
// src/pcb/pcb_silkscreen_line.ts
|
|
1677
|
-
import { z as
|
|
1678
|
-
var pcb_silkscreen_line =
|
|
1679
|
-
type:
|
|
1695
|
+
import { z as z79 } from "zod";
|
|
1696
|
+
var pcb_silkscreen_line = z79.object({
|
|
1697
|
+
type: z79.literal("pcb_silkscreen_line"),
|
|
1680
1698
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
1681
|
-
pcb_component_id:
|
|
1682
|
-
pcb_group_id:
|
|
1683
|
-
subcircuit_id:
|
|
1699
|
+
pcb_component_id: z79.string(),
|
|
1700
|
+
pcb_group_id: z79.string().optional(),
|
|
1701
|
+
subcircuit_id: z79.string().optional(),
|
|
1684
1702
|
stroke_width: distance.default("0.1mm"),
|
|
1685
1703
|
x1: distance,
|
|
1686
1704
|
y1: distance,
|
|
@@ -1691,67 +1709,67 @@ var pcb_silkscreen_line = z78.object({
|
|
|
1691
1709
|
expectTypesMatch(true);
|
|
1692
1710
|
|
|
1693
1711
|
// src/pcb/pcb_silkscreen_path.ts
|
|
1694
|
-
import { z as
|
|
1695
|
-
var pcb_silkscreen_path =
|
|
1696
|
-
type:
|
|
1712
|
+
import { z as z80 } from "zod";
|
|
1713
|
+
var pcb_silkscreen_path = z80.object({
|
|
1714
|
+
type: z80.literal("pcb_silkscreen_path"),
|
|
1697
1715
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
1698
|
-
pcb_component_id:
|
|
1699
|
-
pcb_group_id:
|
|
1700
|
-
subcircuit_id:
|
|
1716
|
+
pcb_component_id: z80.string(),
|
|
1717
|
+
pcb_group_id: z80.string().optional(),
|
|
1718
|
+
subcircuit_id: z80.string().optional(),
|
|
1701
1719
|
layer: visible_layer,
|
|
1702
|
-
route:
|
|
1720
|
+
route: z80.array(point),
|
|
1703
1721
|
stroke_width: length
|
|
1704
1722
|
}).describe("Defines a silkscreen path on the PCB");
|
|
1705
1723
|
expectTypesMatch(true);
|
|
1706
1724
|
|
|
1707
1725
|
// src/pcb/pcb_silkscreen_text.ts
|
|
1708
|
-
import { z as
|
|
1709
|
-
var pcb_silkscreen_text =
|
|
1710
|
-
type:
|
|
1726
|
+
import { z as z81 } from "zod";
|
|
1727
|
+
var pcb_silkscreen_text = z81.object({
|
|
1728
|
+
type: z81.literal("pcb_silkscreen_text"),
|
|
1711
1729
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
1712
|
-
pcb_group_id:
|
|
1713
|
-
subcircuit_id:
|
|
1714
|
-
font:
|
|
1730
|
+
pcb_group_id: z81.string().optional(),
|
|
1731
|
+
subcircuit_id: z81.string().optional(),
|
|
1732
|
+
font: z81.literal("tscircuit2024").default("tscircuit2024"),
|
|
1715
1733
|
font_size: distance.default("0.2mm"),
|
|
1716
|
-
pcb_component_id:
|
|
1717
|
-
text:
|
|
1718
|
-
ccw_rotation:
|
|
1734
|
+
pcb_component_id: z81.string(),
|
|
1735
|
+
text: z81.string(),
|
|
1736
|
+
ccw_rotation: z81.number().optional(),
|
|
1719
1737
|
layer: layer_ref,
|
|
1720
|
-
is_mirrored:
|
|
1738
|
+
is_mirrored: z81.boolean().default(false).optional(),
|
|
1721
1739
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1722
1740
|
anchor_alignment: ninePointAnchor.default("center")
|
|
1723
1741
|
}).describe("Defines silkscreen text on the PCB");
|
|
1724
1742
|
expectTypesMatch(true);
|
|
1725
1743
|
|
|
1726
1744
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
1727
|
-
import { z as
|
|
1728
|
-
var pcb_silkscreen_rect =
|
|
1729
|
-
type:
|
|
1745
|
+
import { z as z82 } from "zod";
|
|
1746
|
+
var pcb_silkscreen_rect = z82.object({
|
|
1747
|
+
type: z82.literal("pcb_silkscreen_rect"),
|
|
1730
1748
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
1731
|
-
pcb_component_id:
|
|
1732
|
-
pcb_group_id:
|
|
1733
|
-
subcircuit_id:
|
|
1749
|
+
pcb_component_id: z82.string(),
|
|
1750
|
+
pcb_group_id: z82.string().optional(),
|
|
1751
|
+
subcircuit_id: z82.string().optional(),
|
|
1734
1752
|
center: point,
|
|
1735
1753
|
width: length,
|
|
1736
1754
|
height: length,
|
|
1737
1755
|
layer: layer_ref,
|
|
1738
1756
|
stroke_width: length.default("1mm"),
|
|
1739
|
-
is_filled:
|
|
1740
|
-
has_stroke:
|
|
1741
|
-
is_stroke_dashed:
|
|
1757
|
+
is_filled: z82.boolean().default(true).optional(),
|
|
1758
|
+
has_stroke: z82.boolean().optional(),
|
|
1759
|
+
is_stroke_dashed: z82.boolean().optional()
|
|
1742
1760
|
}).describe("Defines a silkscreen rect on the PCB");
|
|
1743
1761
|
expectTypesMatch(true);
|
|
1744
1762
|
|
|
1745
1763
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
1746
|
-
import { z as
|
|
1747
|
-
var pcb_silkscreen_circle =
|
|
1748
|
-
type:
|
|
1764
|
+
import { z as z83 } from "zod";
|
|
1765
|
+
var pcb_silkscreen_circle = z83.object({
|
|
1766
|
+
type: z83.literal("pcb_silkscreen_circle"),
|
|
1749
1767
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
1750
1768
|
"pcb_silkscreen_circle"
|
|
1751
1769
|
),
|
|
1752
|
-
pcb_component_id:
|
|
1753
|
-
pcb_group_id:
|
|
1754
|
-
subcircuit_id:
|
|
1770
|
+
pcb_component_id: z83.string(),
|
|
1771
|
+
pcb_group_id: z83.string().optional(),
|
|
1772
|
+
subcircuit_id: z83.string().optional(),
|
|
1755
1773
|
center: point,
|
|
1756
1774
|
radius: length,
|
|
1757
1775
|
layer: visible_layer,
|
|
@@ -1760,13 +1778,13 @@ var pcb_silkscreen_circle = z82.object({
|
|
|
1760
1778
|
expectTypesMatch(true);
|
|
1761
1779
|
|
|
1762
1780
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
1763
|
-
import { z as
|
|
1764
|
-
var pcb_silkscreen_oval =
|
|
1765
|
-
type:
|
|
1781
|
+
import { z as z84 } from "zod";
|
|
1782
|
+
var pcb_silkscreen_oval = z84.object({
|
|
1783
|
+
type: z84.literal("pcb_silkscreen_oval"),
|
|
1766
1784
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
1767
|
-
pcb_component_id:
|
|
1768
|
-
pcb_group_id:
|
|
1769
|
-
subcircuit_id:
|
|
1785
|
+
pcb_component_id: z84.string(),
|
|
1786
|
+
pcb_group_id: z84.string().optional(),
|
|
1787
|
+
subcircuit_id: z84.string().optional(),
|
|
1770
1788
|
center: point,
|
|
1771
1789
|
radius_x: distance,
|
|
1772
1790
|
radius_y: distance,
|
|
@@ -1775,103 +1793,103 @@ var pcb_silkscreen_oval = z83.object({
|
|
|
1775
1793
|
expectTypesMatch(true);
|
|
1776
1794
|
|
|
1777
1795
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
1778
|
-
import { z as
|
|
1779
|
-
var pcb_fabrication_note_text =
|
|
1780
|
-
type:
|
|
1796
|
+
import { z as z85 } from "zod";
|
|
1797
|
+
var pcb_fabrication_note_text = z85.object({
|
|
1798
|
+
type: z85.literal("pcb_fabrication_note_text"),
|
|
1781
1799
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
1782
1800
|
"pcb_fabrication_note_text"
|
|
1783
1801
|
),
|
|
1784
|
-
subcircuit_id:
|
|
1785
|
-
pcb_group_id:
|
|
1786
|
-
font:
|
|
1802
|
+
subcircuit_id: z85.string().optional(),
|
|
1803
|
+
pcb_group_id: z85.string().optional(),
|
|
1804
|
+
font: z85.literal("tscircuit2024").default("tscircuit2024"),
|
|
1787
1805
|
font_size: distance.default("1mm"),
|
|
1788
|
-
pcb_component_id:
|
|
1789
|
-
text:
|
|
1806
|
+
pcb_component_id: z85.string(),
|
|
1807
|
+
text: z85.string(),
|
|
1790
1808
|
layer: visible_layer,
|
|
1791
1809
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1792
|
-
anchor_alignment:
|
|
1793
|
-
color:
|
|
1810
|
+
anchor_alignment: z85.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
1811
|
+
color: z85.string().optional()
|
|
1794
1812
|
}).describe(
|
|
1795
1813
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
1796
1814
|
);
|
|
1797
1815
|
expectTypesMatch(true);
|
|
1798
1816
|
|
|
1799
1817
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
1800
|
-
import { z as
|
|
1801
|
-
var pcb_fabrication_note_path =
|
|
1802
|
-
type:
|
|
1818
|
+
import { z as z86 } from "zod";
|
|
1819
|
+
var pcb_fabrication_note_path = z86.object({
|
|
1820
|
+
type: z86.literal("pcb_fabrication_note_path"),
|
|
1803
1821
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
1804
1822
|
"pcb_fabrication_note_path"
|
|
1805
1823
|
),
|
|
1806
|
-
pcb_component_id:
|
|
1807
|
-
subcircuit_id:
|
|
1824
|
+
pcb_component_id: z86.string(),
|
|
1825
|
+
subcircuit_id: z86.string().optional(),
|
|
1808
1826
|
layer: layer_ref,
|
|
1809
|
-
route:
|
|
1827
|
+
route: z86.array(point),
|
|
1810
1828
|
stroke_width: length,
|
|
1811
|
-
color:
|
|
1829
|
+
color: z86.string().optional()
|
|
1812
1830
|
}).describe(
|
|
1813
1831
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
1814
1832
|
);
|
|
1815
1833
|
expectTypesMatch(true);
|
|
1816
1834
|
|
|
1817
1835
|
// src/pcb/pcb_footprint_overlap_error.ts
|
|
1818
|
-
import { z as
|
|
1819
|
-
var pcb_footprint_overlap_error =
|
|
1820
|
-
type:
|
|
1836
|
+
import { z as z87 } from "zod";
|
|
1837
|
+
var pcb_footprint_overlap_error = z87.object({
|
|
1838
|
+
type: z87.literal("pcb_footprint_overlap_error"),
|
|
1821
1839
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
1822
|
-
error_type:
|
|
1823
|
-
message:
|
|
1824
|
-
pcb_smtpad_ids:
|
|
1825
|
-
pcb_plated_hole_ids:
|
|
1826
|
-
pcb_hole_ids:
|
|
1827
|
-
pcb_keepout_ids:
|
|
1840
|
+
error_type: z87.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
|
|
1841
|
+
message: z87.string(),
|
|
1842
|
+
pcb_smtpad_ids: z87.array(z87.string()).optional(),
|
|
1843
|
+
pcb_plated_hole_ids: z87.array(z87.string()).optional(),
|
|
1844
|
+
pcb_hole_ids: z87.array(z87.string()).optional(),
|
|
1845
|
+
pcb_keepout_ids: z87.array(z87.string()).optional()
|
|
1828
1846
|
}).describe("Error emitted when a pcb footprint overlaps with another element");
|
|
1829
1847
|
expectTypesMatch(
|
|
1830
1848
|
true
|
|
1831
1849
|
);
|
|
1832
1850
|
|
|
1833
1851
|
// src/pcb/pcb_keepout.ts
|
|
1834
|
-
import { z as
|
|
1835
|
-
var pcb_keepout =
|
|
1836
|
-
type:
|
|
1837
|
-
shape:
|
|
1838
|
-
pcb_group_id:
|
|
1839
|
-
subcircuit_id:
|
|
1852
|
+
import { z as z88 } from "zod";
|
|
1853
|
+
var pcb_keepout = z88.object({
|
|
1854
|
+
type: z88.literal("pcb_keepout"),
|
|
1855
|
+
shape: z88.literal("rect"),
|
|
1856
|
+
pcb_group_id: z88.string().optional(),
|
|
1857
|
+
subcircuit_id: z88.string().optional(),
|
|
1840
1858
|
center: point,
|
|
1841
1859
|
width: distance,
|
|
1842
1860
|
height: distance,
|
|
1843
|
-
pcb_keepout_id:
|
|
1844
|
-
layers:
|
|
1861
|
+
pcb_keepout_id: z88.string(),
|
|
1862
|
+
layers: z88.array(z88.string()),
|
|
1845
1863
|
// Specify layers where the keepout applies
|
|
1846
|
-
description:
|
|
1864
|
+
description: z88.string().optional()
|
|
1847
1865
|
// Optional description of the keepout
|
|
1848
1866
|
}).or(
|
|
1849
|
-
|
|
1850
|
-
type:
|
|
1851
|
-
shape:
|
|
1852
|
-
pcb_group_id:
|
|
1853
|
-
subcircuit_id:
|
|
1867
|
+
z88.object({
|
|
1868
|
+
type: z88.literal("pcb_keepout"),
|
|
1869
|
+
shape: z88.literal("circle"),
|
|
1870
|
+
pcb_group_id: z88.string().optional(),
|
|
1871
|
+
subcircuit_id: z88.string().optional(),
|
|
1854
1872
|
center: point,
|
|
1855
1873
|
radius: distance,
|
|
1856
|
-
pcb_keepout_id:
|
|
1857
|
-
layers:
|
|
1874
|
+
pcb_keepout_id: z88.string(),
|
|
1875
|
+
layers: z88.array(z88.string()),
|
|
1858
1876
|
// Specify layers where the keepout applies
|
|
1859
|
-
description:
|
|
1877
|
+
description: z88.string().optional()
|
|
1860
1878
|
// Optional description of the keepout
|
|
1861
1879
|
})
|
|
1862
1880
|
);
|
|
1863
1881
|
expectTypesMatch(true);
|
|
1864
1882
|
|
|
1865
1883
|
// src/pcb/pcb_cutout.ts
|
|
1866
|
-
import { z as
|
|
1867
|
-
var pcb_cutout_base =
|
|
1868
|
-
type:
|
|
1884
|
+
import { z as z89 } from "zod";
|
|
1885
|
+
var pcb_cutout_base = z89.object({
|
|
1886
|
+
type: z89.literal("pcb_cutout"),
|
|
1869
1887
|
pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
|
|
1870
|
-
pcb_group_id:
|
|
1871
|
-
subcircuit_id:
|
|
1888
|
+
pcb_group_id: z89.string().optional(),
|
|
1889
|
+
subcircuit_id: z89.string().optional()
|
|
1872
1890
|
});
|
|
1873
1891
|
var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
1874
|
-
shape:
|
|
1892
|
+
shape: z89.literal("rect"),
|
|
1875
1893
|
center: point,
|
|
1876
1894
|
width: length,
|
|
1877
1895
|
height: length,
|
|
@@ -1879,17 +1897,17 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
|
1879
1897
|
});
|
|
1880
1898
|
expectTypesMatch(true);
|
|
1881
1899
|
var pcb_cutout_circle = pcb_cutout_base.extend({
|
|
1882
|
-
shape:
|
|
1900
|
+
shape: z89.literal("circle"),
|
|
1883
1901
|
center: point,
|
|
1884
1902
|
radius: length
|
|
1885
1903
|
});
|
|
1886
1904
|
expectTypesMatch(true);
|
|
1887
1905
|
var pcb_cutout_polygon = pcb_cutout_base.extend({
|
|
1888
|
-
shape:
|
|
1889
|
-
points:
|
|
1906
|
+
shape: z89.literal("polygon"),
|
|
1907
|
+
points: z89.array(point)
|
|
1890
1908
|
});
|
|
1891
1909
|
expectTypesMatch(true);
|
|
1892
|
-
var pcb_cutout =
|
|
1910
|
+
var pcb_cutout = z89.discriminatedUnion("shape", [
|
|
1893
1911
|
pcb_cutout_rect,
|
|
1894
1912
|
pcb_cutout_circle,
|
|
1895
1913
|
pcb_cutout_polygon
|
|
@@ -1897,83 +1915,83 @@ var pcb_cutout = z88.discriminatedUnion("shape", [
|
|
|
1897
1915
|
expectTypesMatch(true);
|
|
1898
1916
|
|
|
1899
1917
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
1900
|
-
import { z as
|
|
1901
|
-
var pcb_missing_footprint_error =
|
|
1902
|
-
type:
|
|
1918
|
+
import { z as z90 } from "zod";
|
|
1919
|
+
var pcb_missing_footprint_error = z90.object({
|
|
1920
|
+
type: z90.literal("pcb_missing_footprint_error"),
|
|
1903
1921
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
1904
1922
|
"pcb_missing_footprint_error"
|
|
1905
1923
|
),
|
|
1906
|
-
pcb_group_id:
|
|
1907
|
-
subcircuit_id:
|
|
1908
|
-
error_type:
|
|
1909
|
-
source_component_id:
|
|
1910
|
-
message:
|
|
1924
|
+
pcb_group_id: z90.string().optional(),
|
|
1925
|
+
subcircuit_id: z90.string().optional(),
|
|
1926
|
+
error_type: z90.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
|
|
1927
|
+
source_component_id: z90.string(),
|
|
1928
|
+
message: z90.string()
|
|
1911
1929
|
}).describe("Defines a missing footprint error on the PCB");
|
|
1912
1930
|
expectTypesMatch(
|
|
1913
1931
|
true
|
|
1914
1932
|
);
|
|
1915
1933
|
|
|
1916
1934
|
// src/pcb/pcb_group.ts
|
|
1917
|
-
import { z as
|
|
1918
|
-
var pcb_group =
|
|
1919
|
-
type:
|
|
1935
|
+
import { z as z91 } from "zod";
|
|
1936
|
+
var pcb_group = z91.object({
|
|
1937
|
+
type: z91.literal("pcb_group"),
|
|
1920
1938
|
pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
|
|
1921
|
-
source_group_id:
|
|
1922
|
-
is_subcircuit:
|
|
1923
|
-
subcircuit_id:
|
|
1939
|
+
source_group_id: z91.string(),
|
|
1940
|
+
is_subcircuit: z91.boolean().optional(),
|
|
1941
|
+
subcircuit_id: z91.string().optional(),
|
|
1924
1942
|
width: length,
|
|
1925
1943
|
height: length,
|
|
1926
1944
|
center: point,
|
|
1927
|
-
pcb_component_ids:
|
|
1928
|
-
name:
|
|
1929
|
-
description:
|
|
1930
|
-
layout_mode:
|
|
1931
|
-
autorouter_configuration:
|
|
1945
|
+
pcb_component_ids: z91.array(z91.string()),
|
|
1946
|
+
name: z91.string().optional(),
|
|
1947
|
+
description: z91.string().optional(),
|
|
1948
|
+
layout_mode: z91.string().optional(),
|
|
1949
|
+
autorouter_configuration: z91.object({
|
|
1932
1950
|
trace_clearance: length
|
|
1933
1951
|
}).optional(),
|
|
1934
|
-
autorouter_used_string:
|
|
1952
|
+
autorouter_used_string: z91.string().optional()
|
|
1935
1953
|
}).describe("Defines a group of components on the PCB");
|
|
1936
1954
|
expectTypesMatch(true);
|
|
1937
1955
|
|
|
1938
1956
|
// src/pcb/pcb_autorouting_error.ts
|
|
1939
|
-
import { z as
|
|
1940
|
-
var pcb_autorouting_error =
|
|
1941
|
-
type:
|
|
1957
|
+
import { z as z92 } from "zod";
|
|
1958
|
+
var pcb_autorouting_error = z92.object({
|
|
1959
|
+
type: z92.literal("pcb_autorouting_error"),
|
|
1942
1960
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
|
|
1943
|
-
error_type:
|
|
1944
|
-
message:
|
|
1945
|
-
subcircuit_id:
|
|
1961
|
+
error_type: z92.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
|
|
1962
|
+
message: z92.string(),
|
|
1963
|
+
subcircuit_id: z92.string().optional()
|
|
1946
1964
|
}).describe("The autorouting has failed to route a portion of the board");
|
|
1947
1965
|
expectTypesMatch(true);
|
|
1948
1966
|
|
|
1949
1967
|
// src/pcb/pcb_manual_edit_conflict_warning.ts
|
|
1950
|
-
import { z as
|
|
1951
|
-
var pcb_manual_edit_conflict_warning =
|
|
1952
|
-
type:
|
|
1968
|
+
import { z as z93 } from "zod";
|
|
1969
|
+
var pcb_manual_edit_conflict_warning = z93.object({
|
|
1970
|
+
type: z93.literal("pcb_manual_edit_conflict_warning"),
|
|
1953
1971
|
pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
1954
1972
|
"pcb_manual_edit_conflict_warning"
|
|
1955
1973
|
),
|
|
1956
|
-
warning_type:
|
|
1957
|
-
message:
|
|
1958
|
-
pcb_component_id:
|
|
1959
|
-
pcb_group_id:
|
|
1960
|
-
subcircuit_id:
|
|
1961
|
-
source_component_id:
|
|
1974
|
+
warning_type: z93.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
|
|
1975
|
+
message: z93.string(),
|
|
1976
|
+
pcb_component_id: z93.string(),
|
|
1977
|
+
pcb_group_id: z93.string().optional(),
|
|
1978
|
+
subcircuit_id: z93.string().optional(),
|
|
1979
|
+
source_component_id: z93.string()
|
|
1962
1980
|
}).describe(
|
|
1963
1981
|
"Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
|
|
1964
1982
|
);
|
|
1965
1983
|
expectTypesMatch(true);
|
|
1966
1984
|
|
|
1967
1985
|
// src/pcb/pcb_breakout_point.ts
|
|
1968
|
-
import { z as
|
|
1969
|
-
var pcb_breakout_point =
|
|
1970
|
-
type:
|
|
1986
|
+
import { z as z94 } from "zod";
|
|
1987
|
+
var pcb_breakout_point = z94.object({
|
|
1988
|
+
type: z94.literal("pcb_breakout_point"),
|
|
1971
1989
|
pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
|
|
1972
|
-
pcb_group_id:
|
|
1973
|
-
subcircuit_id:
|
|
1974
|
-
source_trace_id:
|
|
1975
|
-
source_port_id:
|
|
1976
|
-
source_net_id:
|
|
1990
|
+
pcb_group_id: z94.string(),
|
|
1991
|
+
subcircuit_id: z94.string().optional(),
|
|
1992
|
+
source_trace_id: z94.string().optional(),
|
|
1993
|
+
source_port_id: z94.string().optional(),
|
|
1994
|
+
source_net_id: z94.string().optional(),
|
|
1977
1995
|
x: distance,
|
|
1978
1996
|
y: distance
|
|
1979
1997
|
}).describe(
|
|
@@ -1982,110 +2000,111 @@ var pcb_breakout_point = z93.object({
|
|
|
1982
2000
|
expectTypesMatch(true);
|
|
1983
2001
|
|
|
1984
2002
|
// src/pcb/pcb_ground_plane.ts
|
|
1985
|
-
import { z as
|
|
1986
|
-
var pcb_ground_plane =
|
|
1987
|
-
type:
|
|
2003
|
+
import { z as z95 } from "zod";
|
|
2004
|
+
var pcb_ground_plane = z95.object({
|
|
2005
|
+
type: z95.literal("pcb_ground_plane"),
|
|
1988
2006
|
pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
|
|
1989
|
-
source_pcb_ground_plane_id:
|
|
1990
|
-
source_net_id:
|
|
1991
|
-
pcb_group_id:
|
|
1992
|
-
subcircuit_id:
|
|
2007
|
+
source_pcb_ground_plane_id: z95.string(),
|
|
2008
|
+
source_net_id: z95.string(),
|
|
2009
|
+
pcb_group_id: z95.string().optional(),
|
|
2010
|
+
subcircuit_id: z95.string().optional()
|
|
1993
2011
|
}).describe("Defines a ground plane on the PCB");
|
|
1994
2012
|
expectTypesMatch(true);
|
|
1995
2013
|
|
|
1996
2014
|
// src/pcb/pcb_ground_plane_region.ts
|
|
1997
|
-
import { z as
|
|
1998
|
-
var pcb_ground_plane_region =
|
|
1999
|
-
type:
|
|
2015
|
+
import { z as z96 } from "zod";
|
|
2016
|
+
var pcb_ground_plane_region = z96.object({
|
|
2017
|
+
type: z96.literal("pcb_ground_plane_region"),
|
|
2000
2018
|
pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
|
|
2001
2019
|
"pcb_ground_plane_region"
|
|
2002
2020
|
),
|
|
2003
|
-
pcb_ground_plane_id:
|
|
2004
|
-
pcb_group_id:
|
|
2005
|
-
subcircuit_id:
|
|
2021
|
+
pcb_ground_plane_id: z96.string(),
|
|
2022
|
+
pcb_group_id: z96.string().optional(),
|
|
2023
|
+
subcircuit_id: z96.string().optional(),
|
|
2006
2024
|
layer: layer_ref,
|
|
2007
|
-
points:
|
|
2025
|
+
points: z96.array(point)
|
|
2008
2026
|
}).describe("Defines a polygon region of a ground plane");
|
|
2009
2027
|
expectTypesMatch(true);
|
|
2010
2028
|
|
|
2011
2029
|
// src/pcb/pcb_thermal_spoke.ts
|
|
2012
|
-
import { z as
|
|
2013
|
-
var pcb_thermal_spoke =
|
|
2014
|
-
type:
|
|
2030
|
+
import { z as z97 } from "zod";
|
|
2031
|
+
var pcb_thermal_spoke = z97.object({
|
|
2032
|
+
type: z97.literal("pcb_thermal_spoke"),
|
|
2015
2033
|
pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
|
|
2016
|
-
pcb_ground_plane_id:
|
|
2017
|
-
shape:
|
|
2018
|
-
spoke_count:
|
|
2034
|
+
pcb_ground_plane_id: z97.string(),
|
|
2035
|
+
shape: z97.string(),
|
|
2036
|
+
spoke_count: z97.number(),
|
|
2019
2037
|
spoke_thickness: distance,
|
|
2020
2038
|
spoke_inner_diameter: distance,
|
|
2021
2039
|
spoke_outer_diameter: distance,
|
|
2022
|
-
pcb_plated_hole_id:
|
|
2023
|
-
subcircuit_id:
|
|
2040
|
+
pcb_plated_hole_id: z97.string().optional(),
|
|
2041
|
+
subcircuit_id: z97.string().optional()
|
|
2024
2042
|
}).describe("Pattern for connecting a ground plane to a plated hole");
|
|
2025
2043
|
expectTypesMatch(true);
|
|
2026
2044
|
|
|
2027
2045
|
// src/pcb/pcb_copper_pour.ts
|
|
2028
|
-
import { z as
|
|
2029
|
-
var pcb_copper_pour_base =
|
|
2030
|
-
type:
|
|
2046
|
+
import { z as z98 } from "zod";
|
|
2047
|
+
var pcb_copper_pour_base = z98.object({
|
|
2048
|
+
type: z98.literal("pcb_copper_pour"),
|
|
2031
2049
|
pcb_copper_pour_id: getZodPrefixedIdWithDefault("pcb_copper_pour"),
|
|
2032
|
-
pcb_group_id:
|
|
2033
|
-
subcircuit_id:
|
|
2050
|
+
pcb_group_id: z98.string().optional(),
|
|
2051
|
+
subcircuit_id: z98.string().optional(),
|
|
2034
2052
|
layer: layer_ref,
|
|
2035
|
-
source_net_id:
|
|
2053
|
+
source_net_id: z98.string().optional()
|
|
2036
2054
|
});
|
|
2037
2055
|
var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
|
|
2038
|
-
shape:
|
|
2056
|
+
shape: z98.literal("rect"),
|
|
2039
2057
|
center: point,
|
|
2040
2058
|
width: length,
|
|
2041
2059
|
height: length,
|
|
2042
2060
|
rotation: rotation.optional()
|
|
2043
2061
|
});
|
|
2044
2062
|
expectTypesMatch(true);
|
|
2045
|
-
var
|
|
2046
|
-
shape:
|
|
2047
|
-
|
|
2048
|
-
radius: length
|
|
2063
|
+
var pcb_copper_pour_brep = pcb_copper_pour_base.extend({
|
|
2064
|
+
shape: z98.literal("brep"),
|
|
2065
|
+
brep_shape
|
|
2049
2066
|
});
|
|
2050
2067
|
expectTypesMatch(true);
|
|
2051
2068
|
var pcb_copper_pour_polygon = pcb_copper_pour_base.extend({
|
|
2052
|
-
shape:
|
|
2053
|
-
points:
|
|
2069
|
+
shape: z98.literal("polygon"),
|
|
2070
|
+
points: z98.array(point)
|
|
2054
2071
|
});
|
|
2055
2072
|
expectTypesMatch(true);
|
|
2056
|
-
var pcb_copper_pour =
|
|
2073
|
+
var pcb_copper_pour = z98.discriminatedUnion("shape", [
|
|
2057
2074
|
pcb_copper_pour_rect,
|
|
2058
|
-
|
|
2075
|
+
pcb_copper_pour_brep,
|
|
2059
2076
|
pcb_copper_pour_polygon
|
|
2060
2077
|
]).describe("Defines a copper pour on the PCB.");
|
|
2061
2078
|
expectTypesMatch(true);
|
|
2062
2079
|
|
|
2063
2080
|
// src/cad/cad_component.ts
|
|
2064
|
-
import { z as
|
|
2065
|
-
var cad_component =
|
|
2066
|
-
type:
|
|
2067
|
-
cad_component_id:
|
|
2068
|
-
pcb_component_id:
|
|
2069
|
-
source_component_id:
|
|
2081
|
+
import { z as z99 } from "zod";
|
|
2082
|
+
var cad_component = z99.object({
|
|
2083
|
+
type: z99.literal("cad_component"),
|
|
2084
|
+
cad_component_id: z99.string(),
|
|
2085
|
+
pcb_component_id: z99.string(),
|
|
2086
|
+
source_component_id: z99.string(),
|
|
2070
2087
|
position: point3,
|
|
2071
2088
|
rotation: point3.optional(),
|
|
2072
2089
|
size: point3.optional(),
|
|
2073
2090
|
layer: layer_ref.optional(),
|
|
2074
|
-
subcircuit_id:
|
|
2091
|
+
subcircuit_id: z99.string().optional(),
|
|
2075
2092
|
// These are all ways to generate/load the 3d model
|
|
2076
|
-
footprinter_string:
|
|
2077
|
-
model_obj_url:
|
|
2078
|
-
model_stl_url:
|
|
2079
|
-
model_3mf_url:
|
|
2080
|
-
model_gltf_url:
|
|
2081
|
-
|
|
2093
|
+
footprinter_string: z99.string().optional(),
|
|
2094
|
+
model_obj_url: z99.string().optional(),
|
|
2095
|
+
model_stl_url: z99.string().optional(),
|
|
2096
|
+
model_3mf_url: z99.string().optional(),
|
|
2097
|
+
model_gltf_url: z99.string().optional(),
|
|
2098
|
+
model_glb_url: z99.string().optional(),
|
|
2099
|
+
model_step_url: z99.string().optional(),
|
|
2100
|
+
model_jscad: z99.any().optional()
|
|
2082
2101
|
}).describe("Defines a component on the PCB");
|
|
2083
2102
|
expectTypesMatch(true);
|
|
2084
2103
|
|
|
2085
2104
|
// src/simulation/simulation_voltage_source.ts
|
|
2086
|
-
import { z as
|
|
2087
|
-
var wave_shape =
|
|
2088
|
-
var percentage =
|
|
2105
|
+
import { z as z100 } from "zod";
|
|
2106
|
+
var wave_shape = z100.enum(["sinewave", "square", "triangle", "sawtooth"]);
|
|
2107
|
+
var percentage = z100.union([z100.string(), z100.number()]).transform((val) => {
|
|
2089
2108
|
if (typeof val === "string") {
|
|
2090
2109
|
if (val.endsWith("%")) {
|
|
2091
2110
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -2094,30 +2113,30 @@ var percentage = z99.union([z99.string(), z99.number()]).transform((val) => {
|
|
|
2094
2113
|
}
|
|
2095
2114
|
return val;
|
|
2096
2115
|
}).pipe(
|
|
2097
|
-
|
|
2116
|
+
z100.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
2098
2117
|
);
|
|
2099
|
-
var simulation_dc_voltage_source =
|
|
2100
|
-
type:
|
|
2118
|
+
var simulation_dc_voltage_source = z100.object({
|
|
2119
|
+
type: z100.literal("simulation_voltage_source"),
|
|
2101
2120
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
2102
2121
|
"simulation_voltage_source"
|
|
2103
2122
|
),
|
|
2104
|
-
is_dc_source:
|
|
2105
|
-
positive_source_port_id:
|
|
2106
|
-
negative_source_port_id:
|
|
2107
|
-
positive_source_net_id:
|
|
2108
|
-
negative_source_net_id:
|
|
2123
|
+
is_dc_source: z100.literal(true).optional().default(true),
|
|
2124
|
+
positive_source_port_id: z100.string().optional(),
|
|
2125
|
+
negative_source_port_id: z100.string().optional(),
|
|
2126
|
+
positive_source_net_id: z100.string().optional(),
|
|
2127
|
+
negative_source_net_id: z100.string().optional(),
|
|
2109
2128
|
voltage
|
|
2110
2129
|
}).describe("Defines a DC voltage source for simulation");
|
|
2111
|
-
var simulation_ac_voltage_source =
|
|
2112
|
-
type:
|
|
2130
|
+
var simulation_ac_voltage_source = z100.object({
|
|
2131
|
+
type: z100.literal("simulation_voltage_source"),
|
|
2113
2132
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
2114
2133
|
"simulation_voltage_source"
|
|
2115
2134
|
),
|
|
2116
|
-
is_dc_source:
|
|
2117
|
-
terminal1_source_port_id:
|
|
2118
|
-
terminal2_source_port_id:
|
|
2119
|
-
terminal1_source_net_id:
|
|
2120
|
-
terminal2_source_net_id:
|
|
2135
|
+
is_dc_source: z100.literal(false),
|
|
2136
|
+
terminal1_source_port_id: z100.string().optional(),
|
|
2137
|
+
terminal2_source_port_id: z100.string().optional(),
|
|
2138
|
+
terminal1_source_net_id: z100.string().optional(),
|
|
2139
|
+
terminal2_source_net_id: z100.string().optional(),
|
|
2121
2140
|
voltage: voltage.optional(),
|
|
2122
2141
|
frequency: frequency.optional(),
|
|
2123
2142
|
peak_to_peak_voltage: voltage.optional(),
|
|
@@ -2125,14 +2144,14 @@ var simulation_ac_voltage_source = z99.object({
|
|
|
2125
2144
|
phase: rotation.optional(),
|
|
2126
2145
|
duty_cycle: percentage.optional()
|
|
2127
2146
|
}).describe("Defines an AC voltage source for simulation");
|
|
2128
|
-
var simulation_voltage_source =
|
|
2147
|
+
var simulation_voltage_source = z100.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
|
|
2129
2148
|
expectTypesMatch(true);
|
|
2130
2149
|
expectTypesMatch(true);
|
|
2131
2150
|
expectTypesMatch(true);
|
|
2132
2151
|
|
|
2133
2152
|
// src/any_circuit_element.ts
|
|
2134
|
-
import { z as
|
|
2135
|
-
var any_circuit_element =
|
|
2153
|
+
import { z as z101 } from "zod";
|
|
2154
|
+
var any_circuit_element = z101.union([
|
|
2136
2155
|
source_trace,
|
|
2137
2156
|
source_port,
|
|
2138
2157
|
any_source_component,
|
|
@@ -2224,6 +2243,7 @@ export {
|
|
|
2224
2243
|
any_soup_element,
|
|
2225
2244
|
any_source_component,
|
|
2226
2245
|
battery_capacity,
|
|
2246
|
+
brep_shape,
|
|
2227
2247
|
cad_component,
|
|
2228
2248
|
capacitance,
|
|
2229
2249
|
current,
|
|
@@ -2240,7 +2260,7 @@ export {
|
|
|
2240
2260
|
pcb_breakout_point,
|
|
2241
2261
|
pcb_component,
|
|
2242
2262
|
pcb_copper_pour,
|
|
2243
|
-
|
|
2263
|
+
pcb_copper_pour_brep,
|
|
2244
2264
|
pcb_copper_pour_polygon,
|
|
2245
2265
|
pcb_copper_pour_rect,
|
|
2246
2266
|
pcb_cutout,
|
|
@@ -2287,10 +2307,12 @@ export {
|
|
|
2287
2307
|
pcb_via,
|
|
2288
2308
|
point,
|
|
2289
2309
|
point3,
|
|
2310
|
+
point_with_bulge,
|
|
2290
2311
|
port_arrangement,
|
|
2291
2312
|
position,
|
|
2292
2313
|
position3,
|
|
2293
2314
|
resistance,
|
|
2315
|
+
ring,
|
|
2294
2316
|
rotation,
|
|
2295
2317
|
route_hint_point,
|
|
2296
2318
|
schematic_box,
|