circuit-json 0.0.335 → 0.0.337

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
@@ -1352,6 +1352,7 @@ var pcb_hole_circle = z75.object({
1352
1352
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1353
1353
  pcb_group_id: z75.string().optional(),
1354
1354
  subcircuit_id: z75.string().optional(),
1355
+ pcb_component_id: z75.string().optional(),
1355
1356
  hole_shape: z75.literal("circle"),
1356
1357
  hole_diameter: z75.number(),
1357
1358
  x: distance,
@@ -1368,6 +1369,7 @@ var pcb_hole_rect = z75.object({
1368
1369
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1369
1370
  pcb_group_id: z75.string().optional(),
1370
1371
  subcircuit_id: z75.string().optional(),
1372
+ pcb_component_id: z75.string().optional(),
1371
1373
  hole_shape: z75.literal("rect"),
1372
1374
  hole_width: z75.number(),
1373
1375
  hole_height: z75.number(),
@@ -1385,6 +1387,7 @@ var pcb_hole_circle_or_square = z75.object({
1385
1387
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1386
1388
  pcb_group_id: z75.string().optional(),
1387
1389
  subcircuit_id: z75.string().optional(),
1390
+ pcb_component_id: z75.string().optional(),
1388
1391
  hole_shape: z75.enum(["circle", "square"]),
1389
1392
  hole_diameter: z75.number(),
1390
1393
  x: distance,
@@ -1401,6 +1404,7 @@ var pcb_hole_oval = z75.object({
1401
1404
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1402
1405
  pcb_group_id: z75.string().optional(),
1403
1406
  subcircuit_id: z75.string().optional(),
1407
+ pcb_component_id: z75.string().optional(),
1404
1408
  hole_shape: z75.literal("oval"),
1405
1409
  hole_width: z75.number(),
1406
1410
  hole_height: z75.number(),
@@ -1418,6 +1422,7 @@ var pcb_hole_pill = z75.object({
1418
1422
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1419
1423
  pcb_group_id: z75.string().optional(),
1420
1424
  subcircuit_id: z75.string().optional(),
1425
+ pcb_component_id: z75.string().optional(),
1421
1426
  hole_shape: z75.literal("pill"),
1422
1427
  hole_width: z75.number(),
1423
1428
  hole_height: z75.number(),
@@ -1435,6 +1440,7 @@ var pcb_hole_rotated_pill = z75.object({
1435
1440
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1436
1441
  pcb_group_id: z75.string().optional(),
1437
1442
  subcircuit_id: z75.string().optional(),
1443
+ pcb_component_id: z75.string().optional(),
1438
1444
  hole_shape: z75.literal("rotated_pill"),
1439
1445
  hole_width: z75.number(),
1440
1446
  hole_height: z75.number(),
@@ -2189,258 +2195,273 @@ var pcb_silkscreen_oval = z98.object({
2189
2195
  }).describe("Defines a silkscreen oval on the PCB");
2190
2196
  expectTypesMatch(true);
2191
2197
 
2192
- // src/pcb/pcb_fabrication_note_text.ts
2198
+ // src/pcb/pcb_silkscreen_pill.ts
2193
2199
  import { z as z99 } from "zod";
2194
- var pcb_fabrication_note_text = z99.object({
2195
- type: z99.literal("pcb_fabrication_note_text"),
2200
+ var pcb_silkscreen_pill = z99.object({
2201
+ type: z99.literal("pcb_silkscreen_pill"),
2202
+ pcb_silkscreen_pill_id: getZodPrefixedIdWithDefault("pcb_silkscreen_pill"),
2203
+ pcb_component_id: z99.string(),
2204
+ pcb_group_id: z99.string().optional(),
2205
+ subcircuit_id: z99.string().optional(),
2206
+ center: point,
2207
+ width: length,
2208
+ height: length,
2209
+ layer: layer_ref
2210
+ }).describe("Defines a silkscreen pill on the PCB");
2211
+ expectTypesMatch(true);
2212
+
2213
+ // src/pcb/pcb_fabrication_note_text.ts
2214
+ import { z as z100 } from "zod";
2215
+ var pcb_fabrication_note_text = z100.object({
2216
+ type: z100.literal("pcb_fabrication_note_text"),
2196
2217
  pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
2197
2218
  "pcb_fabrication_note_text"
2198
2219
  ),
2199
- subcircuit_id: z99.string().optional(),
2200
- pcb_group_id: z99.string().optional(),
2201
- font: z99.literal("tscircuit2024").default("tscircuit2024"),
2220
+ subcircuit_id: z100.string().optional(),
2221
+ pcb_group_id: z100.string().optional(),
2222
+ font: z100.literal("tscircuit2024").default("tscircuit2024"),
2202
2223
  font_size: distance.default("1mm"),
2203
- pcb_component_id: z99.string(),
2204
- text: z99.string(),
2224
+ pcb_component_id: z100.string(),
2225
+ text: z100.string(),
2205
2226
  layer: visible_layer,
2206
2227
  anchor_position: point.default({ x: 0, y: 0 }),
2207
- anchor_alignment: z99.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2208
- color: z99.string().optional()
2228
+ anchor_alignment: z100.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2229
+ color: z100.string().optional()
2209
2230
  }).describe(
2210
2231
  "Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
2211
2232
  );
2212
2233
  expectTypesMatch(true);
2213
2234
 
2214
2235
  // src/pcb/pcb_fabrication_note_path.ts
2215
- import { z as z100 } from "zod";
2216
- var pcb_fabrication_note_path = z100.object({
2217
- type: z100.literal("pcb_fabrication_note_path"),
2236
+ import { z as z101 } from "zod";
2237
+ var pcb_fabrication_note_path = z101.object({
2238
+ type: z101.literal("pcb_fabrication_note_path"),
2218
2239
  pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
2219
2240
  "pcb_fabrication_note_path"
2220
2241
  ),
2221
- pcb_component_id: z100.string(),
2222
- subcircuit_id: z100.string().optional(),
2242
+ pcb_component_id: z101.string(),
2243
+ subcircuit_id: z101.string().optional(),
2223
2244
  layer: layer_ref,
2224
- route: z100.array(point),
2245
+ route: z101.array(point),
2225
2246
  stroke_width: length,
2226
- color: z100.string().optional()
2247
+ color: z101.string().optional()
2227
2248
  }).describe(
2228
2249
  "Defines a fabrication path on the PCB for fabricators or assemblers"
2229
2250
  );
2230
2251
  expectTypesMatch(true);
2231
2252
 
2232
2253
  // src/pcb/pcb_fabrication_note_rect.ts
2233
- import { z as z101 } from "zod";
2234
- var pcb_fabrication_note_rect = z101.object({
2235
- type: z101.literal("pcb_fabrication_note_rect"),
2254
+ import { z as z102 } from "zod";
2255
+ var pcb_fabrication_note_rect = z102.object({
2256
+ type: z102.literal("pcb_fabrication_note_rect"),
2236
2257
  pcb_fabrication_note_rect_id: getZodPrefixedIdWithDefault(
2237
2258
  "pcb_fabrication_note_rect"
2238
2259
  ),
2239
- pcb_component_id: z101.string(),
2240
- pcb_group_id: z101.string().optional(),
2241
- subcircuit_id: z101.string().optional(),
2260
+ pcb_component_id: z102.string(),
2261
+ pcb_group_id: z102.string().optional(),
2262
+ subcircuit_id: z102.string().optional(),
2242
2263
  center: point,
2243
2264
  width: length,
2244
2265
  height: length,
2245
2266
  layer: visible_layer,
2246
2267
  stroke_width: length.default("0.1mm"),
2247
2268
  corner_radius: length.optional(),
2248
- is_filled: z101.boolean().optional(),
2249
- has_stroke: z101.boolean().optional(),
2250
- is_stroke_dashed: z101.boolean().optional(),
2251
- color: z101.string().optional()
2269
+ is_filled: z102.boolean().optional(),
2270
+ has_stroke: z102.boolean().optional(),
2271
+ is_stroke_dashed: z102.boolean().optional(),
2272
+ color: z102.string().optional()
2252
2273
  }).describe("Defines a fabrication note rectangle on the PCB");
2253
2274
  expectTypesMatch(true);
2254
2275
 
2255
2276
  // src/pcb/pcb_fabrication_note_dimension.ts
2256
- import { z as z102 } from "zod";
2257
- var pcb_fabrication_note_dimension = z102.object({
2258
- type: z102.literal("pcb_fabrication_note_dimension"),
2277
+ import { z as z103 } from "zod";
2278
+ var pcb_fabrication_note_dimension = z103.object({
2279
+ type: z103.literal("pcb_fabrication_note_dimension"),
2259
2280
  pcb_fabrication_note_dimension_id: getZodPrefixedIdWithDefault(
2260
2281
  "pcb_fabrication_note_dimension"
2261
2282
  ),
2262
- pcb_component_id: z102.string(),
2263
- pcb_group_id: z102.string().optional(),
2264
- subcircuit_id: z102.string().optional(),
2283
+ pcb_component_id: z103.string(),
2284
+ pcb_group_id: z103.string().optional(),
2285
+ subcircuit_id: z103.string().optional(),
2265
2286
  layer: visible_layer,
2266
2287
  from: point,
2267
2288
  to: point,
2268
- text: z102.string().optional(),
2269
- text_ccw_rotation: z102.number().optional(),
2289
+ text: z103.string().optional(),
2290
+ text_ccw_rotation: z103.number().optional(),
2270
2291
  offset: length.optional(),
2271
2292
  offset_distance: length.optional(),
2272
- offset_direction: z102.object({
2273
- x: z102.number(),
2274
- y: z102.number()
2293
+ offset_direction: z103.object({
2294
+ x: z103.number(),
2295
+ y: z103.number()
2275
2296
  }).optional(),
2276
- font: z102.literal("tscircuit2024").default("tscircuit2024"),
2297
+ font: z103.literal("tscircuit2024").default("tscircuit2024"),
2277
2298
  font_size: length.default("1mm"),
2278
- color: z102.string().optional(),
2299
+ color: z103.string().optional(),
2279
2300
  arrow_size: length.default("1mm")
2280
2301
  }).describe("Defines a measurement annotation within PCB fabrication notes");
2281
2302
  expectTypesMatch(true);
2282
2303
 
2283
2304
  // src/pcb/pcb_note_text.ts
2284
- import { z as z103 } from "zod";
2285
- var pcb_note_text = z103.object({
2286
- type: z103.literal("pcb_note_text"),
2287
- pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
2288
- pcb_component_id: z103.string().optional(),
2289
- pcb_group_id: z103.string().optional(),
2290
- subcircuit_id: z103.string().optional(),
2291
- name: z103.string().optional(),
2292
- font: z103.literal("tscircuit2024").default("tscircuit2024"),
2293
- font_size: distance.default("1mm"),
2294
- text: z103.string().optional(),
2295
- anchor_position: point.default({ x: 0, y: 0 }),
2296
- anchor_alignment: z103.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2297
- color: z103.string().optional()
2298
- }).describe("Defines a documentation note in text on the PCB");
2299
- expectTypesMatch(true);
2300
-
2301
- // src/pcb/pcb_note_rect.ts
2302
2305
  import { z as z104 } from "zod";
2303
- var pcb_note_rect = z104.object({
2304
- type: z104.literal("pcb_note_rect"),
2305
- pcb_note_rect_id: getZodPrefixedIdWithDefault("pcb_note_rect"),
2306
+ var pcb_note_text = z104.object({
2307
+ type: z104.literal("pcb_note_text"),
2308
+ pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
2306
2309
  pcb_component_id: z104.string().optional(),
2307
2310
  pcb_group_id: z104.string().optional(),
2308
2311
  subcircuit_id: z104.string().optional(),
2309
2312
  name: z104.string().optional(),
2313
+ font: z104.literal("tscircuit2024").default("tscircuit2024"),
2314
+ font_size: distance.default("1mm"),
2310
2315
  text: z104.string().optional(),
2311
- center: point,
2312
- width: length,
2313
- height: length,
2314
- stroke_width: length.default("0.1mm"),
2315
- corner_radius: length.optional(),
2316
- is_filled: z104.boolean().optional(),
2317
- has_stroke: z104.boolean().optional(),
2318
- is_stroke_dashed: z104.boolean().optional(),
2316
+ anchor_position: point.default({ x: 0, y: 0 }),
2317
+ anchor_alignment: z104.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2319
2318
  color: z104.string().optional()
2320
- }).describe("Defines a rectangular documentation note on the PCB");
2319
+ }).describe("Defines a documentation note in text on the PCB");
2321
2320
  expectTypesMatch(true);
2322
2321
 
2323
- // src/pcb/pcb_note_path.ts
2322
+ // src/pcb/pcb_note_rect.ts
2324
2323
  import { z as z105 } from "zod";
2325
- var pcb_note_path = z105.object({
2326
- type: z105.literal("pcb_note_path"),
2327
- pcb_note_path_id: getZodPrefixedIdWithDefault("pcb_note_path"),
2324
+ var pcb_note_rect = z105.object({
2325
+ type: z105.literal("pcb_note_rect"),
2326
+ pcb_note_rect_id: getZodPrefixedIdWithDefault("pcb_note_rect"),
2328
2327
  pcb_component_id: z105.string().optional(),
2329
2328
  pcb_group_id: z105.string().optional(),
2330
2329
  subcircuit_id: z105.string().optional(),
2331
2330
  name: z105.string().optional(),
2332
2331
  text: z105.string().optional(),
2333
- route: z105.array(point),
2332
+ center: point,
2333
+ width: length,
2334
+ height: length,
2334
2335
  stroke_width: length.default("0.1mm"),
2336
+ corner_radius: length.optional(),
2337
+ is_filled: z105.boolean().optional(),
2338
+ has_stroke: z105.boolean().optional(),
2339
+ is_stroke_dashed: z105.boolean().optional(),
2335
2340
  color: z105.string().optional()
2336
- }).describe("Defines a polyline documentation note on the PCB");
2341
+ }).describe("Defines a rectangular documentation note on the PCB");
2337
2342
  expectTypesMatch(true);
2338
2343
 
2339
- // src/pcb/pcb_note_line.ts
2344
+ // src/pcb/pcb_note_path.ts
2340
2345
  import { z as z106 } from "zod";
2341
- var pcb_note_line = z106.object({
2342
- type: z106.literal("pcb_note_line"),
2343
- pcb_note_line_id: getZodPrefixedIdWithDefault("pcb_note_line"),
2346
+ var pcb_note_path = z106.object({
2347
+ type: z106.literal("pcb_note_path"),
2348
+ pcb_note_path_id: getZodPrefixedIdWithDefault("pcb_note_path"),
2344
2349
  pcb_component_id: z106.string().optional(),
2345
2350
  pcb_group_id: z106.string().optional(),
2346
2351
  subcircuit_id: z106.string().optional(),
2347
2352
  name: z106.string().optional(),
2348
2353
  text: z106.string().optional(),
2354
+ route: z106.array(point),
2355
+ stroke_width: length.default("0.1mm"),
2356
+ color: z106.string().optional()
2357
+ }).describe("Defines a polyline documentation note on the PCB");
2358
+ expectTypesMatch(true);
2359
+
2360
+ // src/pcb/pcb_note_line.ts
2361
+ import { z as z107 } from "zod";
2362
+ var pcb_note_line = z107.object({
2363
+ type: z107.literal("pcb_note_line"),
2364
+ pcb_note_line_id: getZodPrefixedIdWithDefault("pcb_note_line"),
2365
+ pcb_component_id: z107.string().optional(),
2366
+ pcb_group_id: z107.string().optional(),
2367
+ subcircuit_id: z107.string().optional(),
2368
+ name: z107.string().optional(),
2369
+ text: z107.string().optional(),
2349
2370
  x1: distance,
2350
2371
  y1: distance,
2351
2372
  x2: distance,
2352
2373
  y2: distance,
2353
2374
  stroke_width: distance.default("0.1mm"),
2354
- color: z106.string().optional(),
2355
- is_dashed: z106.boolean().optional()
2375
+ color: z107.string().optional(),
2376
+ is_dashed: z107.boolean().optional()
2356
2377
  }).describe("Defines a straight documentation note line on the PCB");
2357
2378
  expectTypesMatch(true);
2358
2379
 
2359
2380
  // src/pcb/pcb_note_dimension.ts
2360
- import { z as z107 } from "zod";
2361
- var pcb_note_dimension = z107.object({
2362
- type: z107.literal("pcb_note_dimension"),
2381
+ import { z as z108 } from "zod";
2382
+ var pcb_note_dimension = z108.object({
2383
+ type: z108.literal("pcb_note_dimension"),
2363
2384
  pcb_note_dimension_id: getZodPrefixedIdWithDefault("pcb_note_dimension"),
2364
- pcb_component_id: z107.string().optional(),
2365
- pcb_group_id: z107.string().optional(),
2366
- subcircuit_id: z107.string().optional(),
2367
- name: z107.string().optional(),
2385
+ pcb_component_id: z108.string().optional(),
2386
+ pcb_group_id: z108.string().optional(),
2387
+ subcircuit_id: z108.string().optional(),
2388
+ name: z108.string().optional(),
2368
2389
  from: point,
2369
2390
  to: point,
2370
- text: z107.string().optional(),
2371
- text_ccw_rotation: z107.number().optional(),
2391
+ text: z108.string().optional(),
2392
+ text_ccw_rotation: z108.number().optional(),
2372
2393
  offset_distance: length.optional(),
2373
- offset_direction: z107.object({
2374
- x: z107.number(),
2375
- y: z107.number()
2394
+ offset_direction: z108.object({
2395
+ x: z108.number(),
2396
+ y: z108.number()
2376
2397
  }).optional(),
2377
- font: z107.literal("tscircuit2024").default("tscircuit2024"),
2398
+ font: z108.literal("tscircuit2024").default("tscircuit2024"),
2378
2399
  font_size: length.default("1mm"),
2379
- color: z107.string().optional(),
2400
+ color: z108.string().optional(),
2380
2401
  arrow_size: length.default("1mm")
2381
2402
  }).describe("Defines a measurement annotation within PCB documentation notes");
2382
2403
  expectTypesMatch(true);
2383
2404
 
2384
2405
  // src/pcb/pcb_footprint_overlap_error.ts
2385
- import { z as z108 } from "zod";
2386
- var pcb_footprint_overlap_error = z108.object({
2387
- type: z108.literal("pcb_footprint_overlap_error"),
2406
+ import { z as z109 } from "zod";
2407
+ var pcb_footprint_overlap_error = z109.object({
2408
+ type: z109.literal("pcb_footprint_overlap_error"),
2388
2409
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
2389
- error_type: z108.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
2390
- message: z108.string(),
2391
- pcb_smtpad_ids: z108.array(z108.string()).optional(),
2392
- pcb_plated_hole_ids: z108.array(z108.string()).optional(),
2393
- pcb_hole_ids: z108.array(z108.string()).optional(),
2394
- pcb_keepout_ids: z108.array(z108.string()).optional()
2410
+ error_type: z109.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
2411
+ message: z109.string(),
2412
+ pcb_smtpad_ids: z109.array(z109.string()).optional(),
2413
+ pcb_plated_hole_ids: z109.array(z109.string()).optional(),
2414
+ pcb_hole_ids: z109.array(z109.string()).optional(),
2415
+ pcb_keepout_ids: z109.array(z109.string()).optional()
2395
2416
  }).describe("Error emitted when a pcb footprint overlaps with another element");
2396
2417
  expectTypesMatch(
2397
2418
  true
2398
2419
  );
2399
2420
 
2400
2421
  // src/pcb/pcb_keepout.ts
2401
- import { z as z109 } from "zod";
2402
- var pcb_keepout = z109.object({
2403
- type: z109.literal("pcb_keepout"),
2404
- shape: z109.literal("rect"),
2405
- pcb_group_id: z109.string().optional(),
2406
- subcircuit_id: z109.string().optional(),
2422
+ import { z as z110 } from "zod";
2423
+ var pcb_keepout = z110.object({
2424
+ type: z110.literal("pcb_keepout"),
2425
+ shape: z110.literal("rect"),
2426
+ pcb_group_id: z110.string().optional(),
2427
+ subcircuit_id: z110.string().optional(),
2407
2428
  center: point,
2408
2429
  width: distance,
2409
2430
  height: distance,
2410
- pcb_keepout_id: z109.string(),
2411
- layers: z109.array(z109.string()),
2431
+ pcb_keepout_id: z110.string(),
2432
+ layers: z110.array(z110.string()),
2412
2433
  // Specify layers where the keepout applies
2413
- description: z109.string().optional()
2434
+ description: z110.string().optional()
2414
2435
  // Optional description of the keepout
2415
2436
  }).or(
2416
- z109.object({
2417
- type: z109.literal("pcb_keepout"),
2418
- shape: z109.literal("circle"),
2419
- pcb_group_id: z109.string().optional(),
2420
- subcircuit_id: z109.string().optional(),
2437
+ z110.object({
2438
+ type: z110.literal("pcb_keepout"),
2439
+ shape: z110.literal("circle"),
2440
+ pcb_group_id: z110.string().optional(),
2441
+ subcircuit_id: z110.string().optional(),
2421
2442
  center: point,
2422
2443
  radius: distance,
2423
- pcb_keepout_id: z109.string(),
2424
- layers: z109.array(z109.string()),
2444
+ pcb_keepout_id: z110.string(),
2445
+ layers: z110.array(z110.string()),
2425
2446
  // Specify layers where the keepout applies
2426
- description: z109.string().optional()
2447
+ description: z110.string().optional()
2427
2448
  // Optional description of the keepout
2428
2449
  })
2429
2450
  );
2430
2451
  expectTypesMatch(true);
2431
2452
 
2432
2453
  // src/pcb/pcb_cutout.ts
2433
- import { z as z110 } from "zod";
2434
- var pcb_cutout_base = z110.object({
2435
- type: z110.literal("pcb_cutout"),
2454
+ import { z as z111 } from "zod";
2455
+ var pcb_cutout_base = z111.object({
2456
+ type: z111.literal("pcb_cutout"),
2436
2457
  pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
2437
- pcb_group_id: z110.string().optional(),
2438
- subcircuit_id: z110.string().optional(),
2439
- pcb_board_id: z110.string().optional(),
2440
- pcb_panel_id: z110.string().optional()
2458
+ pcb_group_id: z111.string().optional(),
2459
+ subcircuit_id: z111.string().optional(),
2460
+ pcb_board_id: z111.string().optional(),
2461
+ pcb_panel_id: z111.string().optional()
2441
2462
  });
2442
2463
  var pcb_cutout_rect = pcb_cutout_base.extend({
2443
- shape: z110.literal("rect"),
2464
+ shape: z111.literal("rect"),
2444
2465
  center: point,
2445
2466
  width: length,
2446
2467
  height: length,
@@ -2449,26 +2470,26 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
2449
2470
  });
2450
2471
  expectTypesMatch(true);
2451
2472
  var pcb_cutout_circle = pcb_cutout_base.extend({
2452
- shape: z110.literal("circle"),
2473
+ shape: z111.literal("circle"),
2453
2474
  center: point,
2454
2475
  radius: length
2455
2476
  });
2456
2477
  expectTypesMatch(true);
2457
2478
  var pcb_cutout_polygon = pcb_cutout_base.extend({
2458
- shape: z110.literal("polygon"),
2459
- points: z110.array(point)
2479
+ shape: z111.literal("polygon"),
2480
+ points: z111.array(point)
2460
2481
  });
2461
2482
  expectTypesMatch(true);
2462
2483
  var pcb_cutout_path = pcb_cutout_base.extend({
2463
- shape: z110.literal("path"),
2464
- route: z110.array(point),
2484
+ shape: z111.literal("path"),
2485
+ route: z111.array(point),
2465
2486
  slot_width: length,
2466
2487
  slot_length: length.optional(),
2467
2488
  space_between_slots: length.optional(),
2468
2489
  slot_corner_radius: length.optional()
2469
2490
  });
2470
2491
  expectTypesMatch(true);
2471
- var pcb_cutout = z110.discriminatedUnion("shape", [
2492
+ var pcb_cutout = z111.discriminatedUnion("shape", [
2472
2493
  pcb_cutout_rect,
2473
2494
  pcb_cutout_circle,
2474
2495
  pcb_cutout_polygon,
@@ -2477,130 +2498,130 @@ var pcb_cutout = z110.discriminatedUnion("shape", [
2477
2498
  expectTypesMatch(true);
2478
2499
 
2479
2500
  // src/pcb/pcb_missing_footprint_error.ts
2480
- import { z as z111 } from "zod";
2481
- var pcb_missing_footprint_error = z111.object({
2482
- type: z111.literal("pcb_missing_footprint_error"),
2501
+ import { z as z112 } from "zod";
2502
+ var pcb_missing_footprint_error = z112.object({
2503
+ type: z112.literal("pcb_missing_footprint_error"),
2483
2504
  pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
2484
2505
  "pcb_missing_footprint_error"
2485
2506
  ),
2486
- pcb_group_id: z111.string().optional(),
2487
- subcircuit_id: z111.string().optional(),
2488
- error_type: z111.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
2489
- source_component_id: z111.string(),
2490
- message: z111.string()
2507
+ pcb_group_id: z112.string().optional(),
2508
+ subcircuit_id: z112.string().optional(),
2509
+ error_type: z112.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
2510
+ source_component_id: z112.string(),
2511
+ message: z112.string()
2491
2512
  }).describe("Defines a missing footprint error on the PCB");
2492
2513
  expectTypesMatch(
2493
2514
  true
2494
2515
  );
2495
2516
 
2496
2517
  // src/pcb/external_footprint_load_error.ts
2497
- import { z as z112 } from "zod";
2498
- var external_footprint_load_error = z112.object({
2499
- type: z112.literal("external_footprint_load_error"),
2518
+ import { z as z113 } from "zod";
2519
+ var external_footprint_load_error = z113.object({
2520
+ type: z113.literal("external_footprint_load_error"),
2500
2521
  external_footprint_load_error_id: getZodPrefixedIdWithDefault(
2501
2522
  "external_footprint_load_error"
2502
2523
  ),
2503
- pcb_component_id: z112.string(),
2504
- source_component_id: z112.string(),
2505
- pcb_group_id: z112.string().optional(),
2506
- subcircuit_id: z112.string().optional(),
2507
- footprinter_string: z112.string().optional(),
2508
- error_type: z112.literal("external_footprint_load_error").default("external_footprint_load_error"),
2509
- message: z112.string()
2524
+ pcb_component_id: z113.string(),
2525
+ source_component_id: z113.string(),
2526
+ pcb_group_id: z113.string().optional(),
2527
+ subcircuit_id: z113.string().optional(),
2528
+ footprinter_string: z113.string().optional(),
2529
+ error_type: z113.literal("external_footprint_load_error").default("external_footprint_load_error"),
2530
+ message: z113.string()
2510
2531
  }).describe("Defines an error when an external footprint fails to load");
2511
2532
  expectTypesMatch(true);
2512
2533
 
2513
2534
  // src/pcb/circuit_json_footprint_load_error.ts
2514
- import { z as z113 } from "zod";
2515
- var circuit_json_footprint_load_error = z113.object({
2516
- type: z113.literal("circuit_json_footprint_load_error"),
2535
+ import { z as z114 } from "zod";
2536
+ var circuit_json_footprint_load_error = z114.object({
2537
+ type: z114.literal("circuit_json_footprint_load_error"),
2517
2538
  circuit_json_footprint_load_error_id: getZodPrefixedIdWithDefault(
2518
2539
  "circuit_json_footprint_load_error"
2519
2540
  ),
2520
- pcb_component_id: z113.string(),
2521
- source_component_id: z113.string(),
2522
- pcb_group_id: z113.string().optional(),
2523
- subcircuit_id: z113.string().optional(),
2524
- error_type: z113.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
2525
- message: z113.string(),
2526
- circuit_json: z113.array(z113.any()).optional()
2541
+ pcb_component_id: z114.string(),
2542
+ source_component_id: z114.string(),
2543
+ pcb_group_id: z114.string().optional(),
2544
+ subcircuit_id: z114.string().optional(),
2545
+ error_type: z114.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
2546
+ message: z114.string(),
2547
+ circuit_json: z114.array(z114.any()).optional()
2527
2548
  }).describe("Defines an error when a circuit JSON footprint fails to load");
2528
2549
  expectTypesMatch(true);
2529
2550
 
2530
2551
  // src/pcb/pcb_group.ts
2531
- import { z as z114 } from "zod";
2532
- var pcb_group = z114.object({
2533
- type: z114.literal("pcb_group"),
2552
+ import { z as z115 } from "zod";
2553
+ var pcb_group = z115.object({
2554
+ type: z115.literal("pcb_group"),
2534
2555
  pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
2535
- source_group_id: z114.string(),
2536
- is_subcircuit: z114.boolean().optional(),
2537
- subcircuit_id: z114.string().optional(),
2556
+ source_group_id: z115.string(),
2557
+ is_subcircuit: z115.boolean().optional(),
2558
+ subcircuit_id: z115.string().optional(),
2538
2559
  width: length.optional(),
2539
2560
  height: length.optional(),
2540
2561
  center: point,
2541
- display_offset_x: z114.string().optional().describe(
2562
+ display_offset_x: z115.string().optional().describe(
2542
2563
  "How to display the x offset for this group, usually corresponding with how the user specified it"
2543
2564
  ),
2544
- display_offset_y: z114.string().optional().describe(
2565
+ display_offset_y: z115.string().optional().describe(
2545
2566
  "How to display the y offset for this group, usually corresponding with how the user specified it"
2546
2567
  ),
2547
- outline: z114.array(point).optional(),
2568
+ outline: z115.array(point).optional(),
2548
2569
  anchor_position: point.optional(),
2549
2570
  anchor_alignment: ninePointAnchor.default("center"),
2550
- position_mode: z114.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
2551
- positioned_relative_to_pcb_group_id: z114.string().optional(),
2552
- positioned_relative_to_pcb_board_id: z114.string().optional(),
2553
- pcb_component_ids: z114.array(z114.string()),
2554
- child_layout_mode: z114.enum(["packed", "none"]).optional(),
2555
- name: z114.string().optional(),
2556
- description: z114.string().optional(),
2557
- layout_mode: z114.string().optional(),
2558
- autorouter_configuration: z114.object({
2571
+ position_mode: z115.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
2572
+ positioned_relative_to_pcb_group_id: z115.string().optional(),
2573
+ positioned_relative_to_pcb_board_id: z115.string().optional(),
2574
+ pcb_component_ids: z115.array(z115.string()),
2575
+ child_layout_mode: z115.enum(["packed", "none"]).optional(),
2576
+ name: z115.string().optional(),
2577
+ description: z115.string().optional(),
2578
+ layout_mode: z115.string().optional(),
2579
+ autorouter_configuration: z115.object({
2559
2580
  trace_clearance: length
2560
2581
  }).optional(),
2561
- autorouter_used_string: z114.string().optional()
2582
+ autorouter_used_string: z115.string().optional()
2562
2583
  }).describe("Defines a group of components on the PCB");
2563
2584
  expectTypesMatch(true);
2564
2585
 
2565
2586
  // src/pcb/pcb_autorouting_error.ts
2566
- import { z as z115 } from "zod";
2567
- var pcb_autorouting_error = z115.object({
2568
- type: z115.literal("pcb_autorouting_error"),
2587
+ import { z as z116 } from "zod";
2588
+ var pcb_autorouting_error = z116.object({
2589
+ type: z116.literal("pcb_autorouting_error"),
2569
2590
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
2570
- error_type: z115.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
2571
- message: z115.string(),
2572
- subcircuit_id: z115.string().optional()
2591
+ error_type: z116.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
2592
+ message: z116.string(),
2593
+ subcircuit_id: z116.string().optional()
2573
2594
  }).describe("The autorouting has failed to route a portion of the board");
2574
2595
  expectTypesMatch(true);
2575
2596
 
2576
2597
  // src/pcb/pcb_manual_edit_conflict_warning.ts
2577
- import { z as z116 } from "zod";
2578
- var pcb_manual_edit_conflict_warning = z116.object({
2579
- type: z116.literal("pcb_manual_edit_conflict_warning"),
2598
+ import { z as z117 } from "zod";
2599
+ var pcb_manual_edit_conflict_warning = z117.object({
2600
+ type: z117.literal("pcb_manual_edit_conflict_warning"),
2580
2601
  pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
2581
2602
  "pcb_manual_edit_conflict_warning"
2582
2603
  ),
2583
- warning_type: z116.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
2584
- message: z116.string(),
2585
- pcb_component_id: z116.string(),
2586
- pcb_group_id: z116.string().optional(),
2587
- subcircuit_id: z116.string().optional(),
2588
- source_component_id: z116.string()
2604
+ warning_type: z117.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
2605
+ message: z117.string(),
2606
+ pcb_component_id: z117.string(),
2607
+ pcb_group_id: z117.string().optional(),
2608
+ subcircuit_id: z117.string().optional(),
2609
+ source_component_id: z117.string()
2589
2610
  }).describe(
2590
2611
  "Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
2591
2612
  );
2592
2613
  expectTypesMatch(true);
2593
2614
 
2594
2615
  // src/pcb/pcb_breakout_point.ts
2595
- import { z as z117 } from "zod";
2596
- var pcb_breakout_point = z117.object({
2597
- type: z117.literal("pcb_breakout_point"),
2616
+ import { z as z118 } from "zod";
2617
+ var pcb_breakout_point = z118.object({
2618
+ type: z118.literal("pcb_breakout_point"),
2598
2619
  pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
2599
- pcb_group_id: z117.string(),
2600
- subcircuit_id: z117.string().optional(),
2601
- source_trace_id: z117.string().optional(),
2602
- source_port_id: z117.string().optional(),
2603
- source_net_id: z117.string().optional(),
2620
+ pcb_group_id: z118.string(),
2621
+ subcircuit_id: z118.string().optional(),
2622
+ source_trace_id: z118.string().optional(),
2623
+ source_port_id: z118.string().optional(),
2624
+ source_net_id: z118.string().optional(),
2604
2625
  x: distance,
2605
2626
  y: distance
2606
2627
  }).describe(
@@ -2609,61 +2630,61 @@ var pcb_breakout_point = z117.object({
2609
2630
  expectTypesMatch(true);
2610
2631
 
2611
2632
  // src/pcb/pcb_ground_plane.ts
2612
- import { z as z118 } from "zod";
2613
- var pcb_ground_plane = z118.object({
2614
- type: z118.literal("pcb_ground_plane"),
2633
+ import { z as z119 } from "zod";
2634
+ var pcb_ground_plane = z119.object({
2635
+ type: z119.literal("pcb_ground_plane"),
2615
2636
  pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
2616
- source_pcb_ground_plane_id: z118.string(),
2617
- source_net_id: z118.string(),
2618
- pcb_group_id: z118.string().optional(),
2619
- subcircuit_id: z118.string().optional()
2637
+ source_pcb_ground_plane_id: z119.string(),
2638
+ source_net_id: z119.string(),
2639
+ pcb_group_id: z119.string().optional(),
2640
+ subcircuit_id: z119.string().optional()
2620
2641
  }).describe("Defines a ground plane on the PCB");
2621
2642
  expectTypesMatch(true);
2622
2643
 
2623
2644
  // src/pcb/pcb_ground_plane_region.ts
2624
- import { z as z119 } from "zod";
2625
- var pcb_ground_plane_region = z119.object({
2626
- type: z119.literal("pcb_ground_plane_region"),
2645
+ import { z as z120 } from "zod";
2646
+ var pcb_ground_plane_region = z120.object({
2647
+ type: z120.literal("pcb_ground_plane_region"),
2627
2648
  pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
2628
2649
  "pcb_ground_plane_region"
2629
2650
  ),
2630
- pcb_ground_plane_id: z119.string(),
2631
- pcb_group_id: z119.string().optional(),
2632
- subcircuit_id: z119.string().optional(),
2651
+ pcb_ground_plane_id: z120.string(),
2652
+ pcb_group_id: z120.string().optional(),
2653
+ subcircuit_id: z120.string().optional(),
2633
2654
  layer: layer_ref,
2634
- points: z119.array(point)
2655
+ points: z120.array(point)
2635
2656
  }).describe("Defines a polygon region of a ground plane");
2636
2657
  expectTypesMatch(true);
2637
2658
 
2638
2659
  // src/pcb/pcb_thermal_spoke.ts
2639
- import { z as z120 } from "zod";
2640
- var pcb_thermal_spoke = z120.object({
2641
- type: z120.literal("pcb_thermal_spoke"),
2660
+ import { z as z121 } from "zod";
2661
+ var pcb_thermal_spoke = z121.object({
2662
+ type: z121.literal("pcb_thermal_spoke"),
2642
2663
  pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
2643
- pcb_ground_plane_id: z120.string(),
2644
- shape: z120.string(),
2645
- spoke_count: z120.number(),
2664
+ pcb_ground_plane_id: z121.string(),
2665
+ shape: z121.string(),
2666
+ spoke_count: z121.number(),
2646
2667
  spoke_thickness: distance,
2647
2668
  spoke_inner_diameter: distance,
2648
2669
  spoke_outer_diameter: distance,
2649
- pcb_plated_hole_id: z120.string().optional(),
2650
- subcircuit_id: z120.string().optional()
2670
+ pcb_plated_hole_id: z121.string().optional(),
2671
+ subcircuit_id: z121.string().optional()
2651
2672
  }).describe("Pattern for connecting a ground plane to a plated hole");
2652
2673
  expectTypesMatch(true);
2653
2674
 
2654
2675
  // src/pcb/pcb_copper_pour.ts
2655
- import { z as z121 } from "zod";
2656
- var pcb_copper_pour_base = z121.object({
2657
- type: z121.literal("pcb_copper_pour"),
2676
+ import { z as z122 } from "zod";
2677
+ var pcb_copper_pour_base = z122.object({
2678
+ type: z122.literal("pcb_copper_pour"),
2658
2679
  pcb_copper_pour_id: getZodPrefixedIdWithDefault("pcb_copper_pour"),
2659
- pcb_group_id: z121.string().optional(),
2660
- subcircuit_id: z121.string().optional(),
2680
+ pcb_group_id: z122.string().optional(),
2681
+ subcircuit_id: z122.string().optional(),
2661
2682
  layer: layer_ref,
2662
- source_net_id: z121.string().optional(),
2663
- covered_with_solder_mask: z121.boolean().optional().default(true)
2683
+ source_net_id: z122.string().optional(),
2684
+ covered_with_solder_mask: z122.boolean().optional().default(true)
2664
2685
  });
2665
2686
  var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
2666
- shape: z121.literal("rect"),
2687
+ shape: z122.literal("rect"),
2667
2688
  center: point,
2668
2689
  width: length,
2669
2690
  height: length,
@@ -2671,16 +2692,16 @@ var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
2671
2692
  });
2672
2693
  expectTypesMatch(true);
2673
2694
  var pcb_copper_pour_brep = pcb_copper_pour_base.extend({
2674
- shape: z121.literal("brep"),
2695
+ shape: z122.literal("brep"),
2675
2696
  brep_shape
2676
2697
  });
2677
2698
  expectTypesMatch(true);
2678
2699
  var pcb_copper_pour_polygon = pcb_copper_pour_base.extend({
2679
- shape: z121.literal("polygon"),
2680
- points: z121.array(point)
2700
+ shape: z122.literal("polygon"),
2701
+ points: z122.array(point)
2681
2702
  });
2682
2703
  expectTypesMatch(true);
2683
- var pcb_copper_pour = z121.discriminatedUnion("shape", [
2704
+ var pcb_copper_pour = z122.discriminatedUnion("shape", [
2684
2705
  pcb_copper_pour_rect,
2685
2706
  pcb_copper_pour_brep,
2686
2707
  pcb_copper_pour_polygon
@@ -2688,148 +2709,148 @@ var pcb_copper_pour = z121.discriminatedUnion("shape", [
2688
2709
  expectTypesMatch(true);
2689
2710
 
2690
2711
  // src/pcb/pcb_component_outside_board_error.ts
2691
- import { z as z122 } from "zod";
2692
- var pcb_component_outside_board_error = z122.object({
2693
- type: z122.literal("pcb_component_outside_board_error"),
2712
+ import { z as z123 } from "zod";
2713
+ var pcb_component_outside_board_error = z123.object({
2714
+ type: z123.literal("pcb_component_outside_board_error"),
2694
2715
  pcb_component_outside_board_error_id: getZodPrefixedIdWithDefault(
2695
2716
  "pcb_component_outside_board_error"
2696
2717
  ),
2697
- error_type: z122.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
2698
- message: z122.string(),
2699
- pcb_component_id: z122.string(),
2700
- pcb_board_id: z122.string(),
2718
+ error_type: z123.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
2719
+ message: z123.string(),
2720
+ pcb_component_id: z123.string(),
2721
+ pcb_board_id: z123.string(),
2701
2722
  component_center: point,
2702
- component_bounds: z122.object({
2703
- min_x: z122.number(),
2704
- max_x: z122.number(),
2705
- min_y: z122.number(),
2706
- max_y: z122.number()
2723
+ component_bounds: z123.object({
2724
+ min_x: z123.number(),
2725
+ max_x: z123.number(),
2726
+ min_y: z123.number(),
2727
+ max_y: z123.number()
2707
2728
  }),
2708
- subcircuit_id: z122.string().optional(),
2709
- source_component_id: z122.string().optional()
2729
+ subcircuit_id: z123.string().optional(),
2730
+ source_component_id: z123.string().optional()
2710
2731
  }).describe(
2711
2732
  "Error emitted when a PCB component is placed outside the board boundaries"
2712
2733
  );
2713
2734
  expectTypesMatch(true);
2714
2735
 
2715
2736
  // src/pcb/pcb_component_invalid_layer_error.ts
2716
- import { z as z123 } from "zod";
2717
- var pcb_component_invalid_layer_error = z123.object({
2718
- type: z123.literal("pcb_component_invalid_layer_error"),
2737
+ import { z as z124 } from "zod";
2738
+ var pcb_component_invalid_layer_error = z124.object({
2739
+ type: z124.literal("pcb_component_invalid_layer_error"),
2719
2740
  pcb_component_invalid_layer_error_id: getZodPrefixedIdWithDefault(
2720
2741
  "pcb_component_invalid_layer_error"
2721
2742
  ),
2722
- error_type: z123.literal("pcb_component_invalid_layer_error").default("pcb_component_invalid_layer_error"),
2723
- message: z123.string(),
2724
- pcb_component_id: z123.string().optional(),
2725
- source_component_id: z123.string(),
2743
+ error_type: z124.literal("pcb_component_invalid_layer_error").default("pcb_component_invalid_layer_error"),
2744
+ message: z124.string(),
2745
+ pcb_component_id: z124.string().optional(),
2746
+ source_component_id: z124.string(),
2726
2747
  layer: layer_ref,
2727
- subcircuit_id: z123.string().optional()
2748
+ subcircuit_id: z124.string().optional()
2728
2749
  }).describe(
2729
2750
  "Error emitted when a component is placed on an invalid layer (components can only be on 'top' or 'bottom' layers)"
2730
2751
  );
2731
2752
  expectTypesMatch(true);
2732
2753
 
2733
2754
  // src/pcb/pcb_via_clearance_error.ts
2734
- import { z as z124 } from "zod";
2735
- var pcb_via_clearance_error = z124.object({
2736
- type: z124.literal("pcb_via_clearance_error"),
2755
+ import { z as z125 } from "zod";
2756
+ var pcb_via_clearance_error = z125.object({
2757
+ type: z125.literal("pcb_via_clearance_error"),
2737
2758
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
2738
- error_type: z124.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
2739
- message: z124.string(),
2740
- pcb_via_ids: z124.array(z124.string()).min(2),
2759
+ error_type: z125.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
2760
+ message: z125.string(),
2761
+ pcb_via_ids: z125.array(z125.string()).min(2),
2741
2762
  minimum_clearance: distance.optional(),
2742
2763
  actual_clearance: distance.optional(),
2743
- pcb_center: z124.object({
2744
- x: z124.number().optional(),
2745
- y: z124.number().optional()
2764
+ pcb_center: z125.object({
2765
+ x: z125.number().optional(),
2766
+ y: z125.number().optional()
2746
2767
  }).optional(),
2747
- subcircuit_id: z124.string().optional()
2768
+ subcircuit_id: z125.string().optional()
2748
2769
  }).describe("Error emitted when vias are closer than the allowed clearance");
2749
2770
  expectTypesMatch(true);
2750
2771
 
2751
2772
  // src/pcb/pcb_courtyard_rect.ts
2752
- import { z as z125 } from "zod";
2753
- var pcb_courtyard_rect = z125.object({
2754
- type: z125.literal("pcb_courtyard_rect"),
2773
+ import { z as z126 } from "zod";
2774
+ var pcb_courtyard_rect = z126.object({
2775
+ type: z126.literal("pcb_courtyard_rect"),
2755
2776
  pcb_courtyard_rect_id: getZodPrefixedIdWithDefault("pcb_courtyard_rect"),
2756
- pcb_component_id: z125.string(),
2757
- pcb_group_id: z125.string().optional(),
2758
- subcircuit_id: z125.string().optional(),
2777
+ pcb_component_id: z126.string(),
2778
+ pcb_group_id: z126.string().optional(),
2779
+ subcircuit_id: z126.string().optional(),
2759
2780
  center: point,
2760
2781
  width: length,
2761
2782
  height: length,
2762
2783
  layer: visible_layer,
2763
- color: z125.string().optional()
2784
+ color: z126.string().optional()
2764
2785
  }).describe("Defines a courtyard rectangle on the PCB");
2765
2786
  expectTypesMatch(true);
2766
2787
 
2767
2788
  // src/pcb/pcb_courtyard_outline.ts
2768
- import { z as z126 } from "zod";
2769
- var pcb_courtyard_outline = z126.object({
2770
- type: z126.literal("pcb_courtyard_outline"),
2789
+ import { z as z127 } from "zod";
2790
+ var pcb_courtyard_outline = z127.object({
2791
+ type: z127.literal("pcb_courtyard_outline"),
2771
2792
  pcb_courtyard_outline_id: getZodPrefixedIdWithDefault(
2772
2793
  "pcb_courtyard_outline"
2773
2794
  ),
2774
- pcb_component_id: z126.string(),
2775
- pcb_group_id: z126.string().optional(),
2776
- subcircuit_id: z126.string().optional(),
2795
+ pcb_component_id: z127.string(),
2796
+ pcb_group_id: z127.string().optional(),
2797
+ subcircuit_id: z127.string().optional(),
2777
2798
  layer: visible_layer,
2778
- outline: z126.array(point).min(2),
2799
+ outline: z127.array(point).min(2),
2779
2800
  stroke_width: length.default("0.1mm"),
2780
- is_closed: z126.boolean().optional(),
2781
- is_stroke_dashed: z126.boolean().optional(),
2782
- color: z126.string().optional()
2801
+ is_closed: z127.boolean().optional(),
2802
+ is_stroke_dashed: z127.boolean().optional(),
2803
+ color: z127.string().optional()
2783
2804
  }).describe("Defines a courtyard outline on the PCB");
2784
2805
  expectTypesMatch(true);
2785
2806
 
2786
2807
  // src/pcb/pcb_courtyard_polygon.ts
2787
- import { z as z127 } from "zod";
2788
- var pcb_courtyard_polygon = z127.object({
2789
- type: z127.literal("pcb_courtyard_polygon"),
2808
+ import { z as z128 } from "zod";
2809
+ var pcb_courtyard_polygon = z128.object({
2810
+ type: z128.literal("pcb_courtyard_polygon"),
2790
2811
  pcb_courtyard_polygon_id: getZodPrefixedIdWithDefault(
2791
2812
  "pcb_courtyard_polygon"
2792
2813
  ),
2793
- pcb_component_id: z127.string(),
2794
- pcb_group_id: z127.string().optional(),
2795
- subcircuit_id: z127.string().optional(),
2814
+ pcb_component_id: z128.string(),
2815
+ pcb_group_id: z128.string().optional(),
2816
+ subcircuit_id: z128.string().optional(),
2796
2817
  layer: visible_layer,
2797
- points: z127.array(point).min(3),
2798
- color: z127.string().optional()
2818
+ points: z128.array(point).min(3),
2819
+ color: z128.string().optional()
2799
2820
  }).describe("Defines a courtyard polygon on the PCB");
2800
2821
  expectTypesMatch(true);
2801
2822
 
2802
2823
  // src/cad/cad_component.ts
2803
- import { z as z128 } from "zod";
2804
- var cad_component = z128.object({
2805
- type: z128.literal("cad_component"),
2806
- cad_component_id: z128.string(),
2807
- pcb_component_id: z128.string(),
2808
- source_component_id: z128.string(),
2824
+ import { z as z129 } from "zod";
2825
+ var cad_component = z129.object({
2826
+ type: z129.literal("cad_component"),
2827
+ cad_component_id: z129.string(),
2828
+ pcb_component_id: z129.string(),
2829
+ source_component_id: z129.string(),
2809
2830
  position: point3,
2810
2831
  rotation: point3.optional(),
2811
2832
  size: point3.optional(),
2812
2833
  layer: layer_ref.optional(),
2813
- subcircuit_id: z128.string().optional(),
2834
+ subcircuit_id: z129.string().optional(),
2814
2835
  // These are all ways to generate/load the 3d model
2815
- footprinter_string: z128.string().optional(),
2816
- model_obj_url: z128.string().optional(),
2817
- model_stl_url: z128.string().optional(),
2818
- model_3mf_url: z128.string().optional(),
2819
- model_gltf_url: z128.string().optional(),
2820
- model_glb_url: z128.string().optional(),
2821
- model_step_url: z128.string().optional(),
2822
- model_wrl_url: z128.string().optional(),
2823
- model_unit_to_mm_scale_factor: z128.number().optional(),
2824
- model_jscad: z128.any().optional(),
2825
- show_as_translucent_model: z128.boolean().optional()
2836
+ footprinter_string: z129.string().optional(),
2837
+ model_obj_url: z129.string().optional(),
2838
+ model_stl_url: z129.string().optional(),
2839
+ model_3mf_url: z129.string().optional(),
2840
+ model_gltf_url: z129.string().optional(),
2841
+ model_glb_url: z129.string().optional(),
2842
+ model_step_url: z129.string().optional(),
2843
+ model_wrl_url: z129.string().optional(),
2844
+ model_unit_to_mm_scale_factor: z129.number().optional(),
2845
+ model_jscad: z129.any().optional(),
2846
+ show_as_translucent_model: z129.boolean().optional()
2826
2847
  }).describe("Defines a component on the PCB");
2827
2848
  expectTypesMatch(true);
2828
2849
 
2829
2850
  // src/simulation/simulation_voltage_source.ts
2830
- import { z as z129 } from "zod";
2831
- var wave_shape = z129.enum(["sinewave", "square", "triangle", "sawtooth"]);
2832
- var percentage = z129.union([z129.string(), z129.number()]).transform((val) => {
2851
+ import { z as z130 } from "zod";
2852
+ var wave_shape = z130.enum(["sinewave", "square", "triangle", "sawtooth"]);
2853
+ var percentage = z130.union([z130.string(), z130.number()]).transform((val) => {
2833
2854
  if (typeof val === "string") {
2834
2855
  if (val.endsWith("%")) {
2835
2856
  return parseFloat(val.slice(0, -1)) / 100;
@@ -2838,30 +2859,30 @@ var percentage = z129.union([z129.string(), z129.number()]).transform((val) => {
2838
2859
  }
2839
2860
  return val;
2840
2861
  }).pipe(
2841
- z129.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
2862
+ z130.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
2842
2863
  );
2843
- var simulation_dc_voltage_source = z129.object({
2844
- type: z129.literal("simulation_voltage_source"),
2864
+ var simulation_dc_voltage_source = z130.object({
2865
+ type: z130.literal("simulation_voltage_source"),
2845
2866
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
2846
2867
  "simulation_voltage_source"
2847
2868
  ),
2848
- is_dc_source: z129.literal(true).optional().default(true),
2849
- positive_source_port_id: z129.string().optional(),
2850
- negative_source_port_id: z129.string().optional(),
2851
- positive_source_net_id: z129.string().optional(),
2852
- negative_source_net_id: z129.string().optional(),
2869
+ is_dc_source: z130.literal(true).optional().default(true),
2870
+ positive_source_port_id: z130.string().optional(),
2871
+ negative_source_port_id: z130.string().optional(),
2872
+ positive_source_net_id: z130.string().optional(),
2873
+ negative_source_net_id: z130.string().optional(),
2853
2874
  voltage
2854
2875
  }).describe("Defines a DC voltage source for simulation");
2855
- var simulation_ac_voltage_source = z129.object({
2856
- type: z129.literal("simulation_voltage_source"),
2876
+ var simulation_ac_voltage_source = z130.object({
2877
+ type: z130.literal("simulation_voltage_source"),
2857
2878
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
2858
2879
  "simulation_voltage_source"
2859
2880
  ),
2860
- is_dc_source: z129.literal(false),
2861
- terminal1_source_port_id: z129.string().optional(),
2862
- terminal2_source_port_id: z129.string().optional(),
2863
- terminal1_source_net_id: z129.string().optional(),
2864
- terminal2_source_net_id: z129.string().optional(),
2881
+ is_dc_source: z130.literal(false),
2882
+ terminal1_source_port_id: z130.string().optional(),
2883
+ terminal2_source_port_id: z130.string().optional(),
2884
+ terminal1_source_net_id: z130.string().optional(),
2885
+ terminal2_source_net_id: z130.string().optional(),
2865
2886
  voltage: voltage.optional(),
2866
2887
  frequency: frequency.optional(),
2867
2888
  peak_to_peak_voltage: voltage.optional(),
@@ -2869,25 +2890,25 @@ var simulation_ac_voltage_source = z129.object({
2869
2890
  phase: rotation.optional(),
2870
2891
  duty_cycle: percentage.optional()
2871
2892
  }).describe("Defines an AC voltage source for simulation");
2872
- var simulation_voltage_source = z129.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
2893
+ var simulation_voltage_source = z130.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
2873
2894
  expectTypesMatch(true);
2874
2895
  expectTypesMatch(true);
2875
2896
  expectTypesMatch(true);
2876
2897
 
2877
2898
  // src/simulation/simulation_experiment.ts
2878
- import { z as z130 } from "zod";
2879
- var experiment_type = z130.union([
2880
- z130.literal("spice_dc_sweep"),
2881
- z130.literal("spice_dc_operating_point"),
2882
- z130.literal("spice_transient_analysis"),
2883
- z130.literal("spice_ac_analysis")
2899
+ import { z as z131 } from "zod";
2900
+ var experiment_type = z131.union([
2901
+ z131.literal("spice_dc_sweep"),
2902
+ z131.literal("spice_dc_operating_point"),
2903
+ z131.literal("spice_transient_analysis"),
2904
+ z131.literal("spice_ac_analysis")
2884
2905
  ]);
2885
- var simulation_experiment = z130.object({
2886
- type: z130.literal("simulation_experiment"),
2906
+ var simulation_experiment = z131.object({
2907
+ type: z131.literal("simulation_experiment"),
2887
2908
  simulation_experiment_id: getZodPrefixedIdWithDefault(
2888
2909
  "simulation_experiment"
2889
2910
  ),
2890
- name: z130.string(),
2911
+ name: z131.string(),
2891
2912
  experiment_type,
2892
2913
  time_per_step: duration_ms.optional(),
2893
2914
  start_time_ms: ms.optional(),
@@ -2896,53 +2917,53 @@ var simulation_experiment = z130.object({
2896
2917
  expectTypesMatch(true);
2897
2918
 
2898
2919
  // src/simulation/simulation_transient_voltage_graph.ts
2899
- import { z as z131 } from "zod";
2900
- var simulation_transient_voltage_graph = z131.object({
2901
- type: z131.literal("simulation_transient_voltage_graph"),
2920
+ import { z as z132 } from "zod";
2921
+ var simulation_transient_voltage_graph = z132.object({
2922
+ type: z132.literal("simulation_transient_voltage_graph"),
2902
2923
  simulation_transient_voltage_graph_id: getZodPrefixedIdWithDefault(
2903
2924
  "simulation_transient_voltage_graph"
2904
2925
  ),
2905
- simulation_experiment_id: z131.string(),
2906
- timestamps_ms: z131.array(z131.number()).optional(),
2907
- voltage_levels: z131.array(z131.number()),
2908
- source_component_id: z131.string().optional(),
2909
- subcircuit_connectivity_map_key: z131.string().optional(),
2926
+ simulation_experiment_id: z132.string(),
2927
+ timestamps_ms: z132.array(z132.number()).optional(),
2928
+ voltage_levels: z132.array(z132.number()),
2929
+ source_component_id: z132.string().optional(),
2930
+ subcircuit_connectivity_map_key: z132.string().optional(),
2910
2931
  time_per_step: duration_ms,
2911
2932
  start_time_ms: ms,
2912
2933
  end_time_ms: ms,
2913
- name: z131.string().optional(),
2914
- color: z131.string().optional()
2934
+ name: z132.string().optional(),
2935
+ color: z132.string().optional()
2915
2936
  }).describe("Stores voltage measurements over time for a simulation");
2916
2937
  expectTypesMatch(true);
2917
2938
 
2918
2939
  // src/simulation/simulation_switch.ts
2919
- import { z as z132 } from "zod";
2920
- var simulation_switch = z132.object({
2921
- type: z132.literal("simulation_switch"),
2940
+ import { z as z133 } from "zod";
2941
+ var simulation_switch = z133.object({
2942
+ type: z133.literal("simulation_switch"),
2922
2943
  simulation_switch_id: getZodPrefixedIdWithDefault("simulation_switch"),
2923
- source_component_id: z132.string().optional(),
2944
+ source_component_id: z133.string().optional(),
2924
2945
  closes_at: ms.optional(),
2925
2946
  opens_at: ms.optional(),
2926
- starts_closed: z132.boolean().optional(),
2947
+ starts_closed: z133.boolean().optional(),
2927
2948
  switching_frequency: frequency.optional()
2928
2949
  }).describe("Defines a switch for simulation timing control");
2929
2950
  expectTypesMatch(true);
2930
2951
 
2931
2952
  // src/simulation/simulation_voltage_probe.ts
2932
- import { z as z133 } from "zod";
2933
- var simulation_voltage_probe = z133.object({
2934
- type: z133.literal("simulation_voltage_probe"),
2953
+ import { z as z134 } from "zod";
2954
+ var simulation_voltage_probe = z134.object({
2955
+ type: z134.literal("simulation_voltage_probe"),
2935
2956
  simulation_voltage_probe_id: getZodPrefixedIdWithDefault(
2936
2957
  "simulation_voltage_probe"
2937
2958
  ),
2938
- source_component_id: z133.string().optional(),
2939
- name: z133.string().optional(),
2940
- signal_input_source_port_id: z133.string().optional(),
2941
- signal_input_source_net_id: z133.string().optional(),
2942
- reference_input_source_port_id: z133.string().optional(),
2943
- reference_input_source_net_id: z133.string().optional(),
2944
- subcircuit_id: z133.string().optional(),
2945
- color: z133.string().optional()
2959
+ source_component_id: z134.string().optional(),
2960
+ name: z134.string().optional(),
2961
+ signal_input_source_port_id: z134.string().optional(),
2962
+ signal_input_source_net_id: z134.string().optional(),
2963
+ reference_input_source_port_id: z134.string().optional(),
2964
+ reference_input_source_net_id: z134.string().optional(),
2965
+ subcircuit_id: z134.string().optional(),
2966
+ color: z134.string().optional()
2946
2967
  }).describe(
2947
2968
  "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."
2948
2969
  ).superRefine((data, ctx) => {
@@ -2952,20 +2973,20 @@ var simulation_voltage_probe = z133.object({
2952
2973
  const has_nets = !!data.signal_input_source_net_id || !!data.reference_input_source_net_id;
2953
2974
  if (has_ports && has_nets) {
2954
2975
  ctx.addIssue({
2955
- code: z133.ZodIssueCode.custom,
2976
+ code: z134.ZodIssueCode.custom,
2956
2977
  message: "Cannot mix port and net connections in a differential probe."
2957
2978
  });
2958
2979
  } else if (has_ports) {
2959
2980
  if (!data.signal_input_source_port_id || !data.reference_input_source_port_id) {
2960
2981
  ctx.addIssue({
2961
- code: z133.ZodIssueCode.custom,
2982
+ code: z134.ZodIssueCode.custom,
2962
2983
  message: "Differential port probe requires both signal_input_source_port_id and reference_input_source_port_id."
2963
2984
  });
2964
2985
  }
2965
2986
  } else if (has_nets) {
2966
2987
  if (!data.signal_input_source_net_id || !data.reference_input_source_net_id) {
2967
2988
  ctx.addIssue({
2968
- code: z133.ZodIssueCode.custom,
2989
+ code: z134.ZodIssueCode.custom,
2969
2990
  message: "Differential net probe requires both signal_input_source_net_id and reference_input_source_net_id."
2970
2991
  });
2971
2992
  }
@@ -2973,7 +2994,7 @@ var simulation_voltage_probe = z133.object({
2973
2994
  } else {
2974
2995
  if (!!data.signal_input_source_port_id === !!data.signal_input_source_net_id) {
2975
2996
  ctx.addIssue({
2976
- code: z133.ZodIssueCode.custom,
2997
+ code: z134.ZodIssueCode.custom,
2977
2998
  message: "A voltage probe must have exactly one of signal_input_source_port_id or signal_input_source_net_id."
2978
2999
  });
2979
3000
  }
@@ -2982,22 +3003,22 @@ var simulation_voltage_probe = z133.object({
2982
3003
  expectTypesMatch(true);
2983
3004
 
2984
3005
  // src/simulation/simulation_unknown_experiment_error.ts
2985
- import { z as z134 } from "zod";
2986
- var simulation_unknown_experiment_error = z134.object({
2987
- type: z134.literal("simulation_unknown_experiment_error"),
3006
+ import { z as z135 } from "zod";
3007
+ var simulation_unknown_experiment_error = z135.object({
3008
+ type: z135.literal("simulation_unknown_experiment_error"),
2988
3009
  simulation_unknown_experiment_error_id: getZodPrefixedIdWithDefault(
2989
3010
  "simulation_unknown_experiment_error"
2990
3011
  ),
2991
- error_type: z134.literal("simulation_unknown_experiment_error").default("simulation_unknown_experiment_error"),
2992
- message: z134.string(),
2993
- simulation_experiment_id: z134.string().optional(),
2994
- subcircuit_id: z134.string().optional()
3012
+ error_type: z135.literal("simulation_unknown_experiment_error").default("simulation_unknown_experiment_error"),
3013
+ message: z135.string(),
3014
+ simulation_experiment_id: z135.string().optional(),
3015
+ subcircuit_id: z135.string().optional()
2995
3016
  }).describe("An unknown error occurred during the simulation experiment.");
2996
3017
  expectTypesMatch(true);
2997
3018
 
2998
3019
  // src/any_circuit_element.ts
2999
- import { z as z135 } from "zod";
3000
- var any_circuit_element = z135.union([
3020
+ import { z as z136 } from "zod";
3021
+ var any_circuit_element = z136.union([
3001
3022
  source_trace,
3002
3023
  source_port,
3003
3024
  source_component_internal_connection,
@@ -3051,6 +3072,7 @@ var any_circuit_element = z135.union([
3051
3072
  pcb_silkscreen_line,
3052
3073
  pcb_silkscreen_path,
3053
3074
  pcb_silkscreen_text,
3075
+ pcb_silkscreen_pill,
3054
3076
  pcb_copper_text,
3055
3077
  pcb_silkscreen_rect,
3056
3078
  pcb_silkscreen_circle,
@@ -3192,6 +3214,7 @@ export {
3192
3214
  pcb_silkscreen_line,
3193
3215
  pcb_silkscreen_oval,
3194
3216
  pcb_silkscreen_path,
3217
+ pcb_silkscreen_pill,
3195
3218
  pcb_silkscreen_rect,
3196
3219
  pcb_silkscreen_text,
3197
3220
  pcb_smtpad,