circuit-json 0.0.344 → 0.0.346

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
@@ -320,12 +320,32 @@ var ninePointAnchor = z6.enum([
320
320
  ]);
321
321
  expectTypesMatch(true);
322
322
 
323
+ // src/common/PcbRenderLayer.ts
324
+ import { z as z7 } from "zod";
325
+ var pcbRenderLayer = z7.enum([
326
+ "top_silkscreen",
327
+ "bottom_silkscreen",
328
+ "top_copper",
329
+ "bottom_copper",
330
+ "top_soldermask",
331
+ "bottom_soldermask",
332
+ "top_fabrication_note",
333
+ "bottom_fabrication_note",
334
+ "inner1_copper",
335
+ "inner2_copper",
336
+ "inner3_copper",
337
+ "inner4_copper",
338
+ "inner5_copper",
339
+ "inner6_copper"
340
+ ]);
341
+ expectTypesMatch(true);
342
+
323
343
  // src/source/source_simple_capacitor.ts
324
- import { z as z9 } from "zod";
344
+ import { z as z10 } from "zod";
325
345
 
326
346
  // src/pcb/properties/supplier_name.ts
327
- import { z as z7 } from "zod";
328
- var supplier_name = z7.enum([
347
+ import { z as z8 } from "zod";
348
+ var supplier_name = z8.enum([
329
349
  "jlcpcb",
330
350
  "macrofab",
331
351
  "pcbway",
@@ -336,126 +356,126 @@ var supplier_name = z7.enum([
336
356
  expectTypesMatch(true);
337
357
 
338
358
  // src/source/base/source_component_base.ts
339
- import { z as z8 } from "zod";
340
- var source_component_base = z8.object({
341
- type: z8.literal("source_component"),
342
- ftype: z8.string().optional(),
343
- source_component_id: z8.string(),
344
- name: z8.string(),
345
- manufacturer_part_number: z8.string().optional(),
346
- supplier_part_numbers: z8.record(supplier_name, z8.array(z8.string())).optional(),
347
- display_value: z8.string().optional(),
348
- are_pins_interchangeable: z8.boolean().optional(),
349
- internally_connected_source_port_ids: z8.array(z8.array(z8.string())).optional(),
350
- source_group_id: z8.string().optional(),
351
- subcircuit_id: z8.string().optional()
359
+ import { z as z9 } from "zod";
360
+ var source_component_base = z9.object({
361
+ type: z9.literal("source_component"),
362
+ ftype: z9.string().optional(),
363
+ source_component_id: z9.string(),
364
+ name: z9.string(),
365
+ manufacturer_part_number: z9.string().optional(),
366
+ supplier_part_numbers: z9.record(supplier_name, z9.array(z9.string())).optional(),
367
+ display_value: z9.string().optional(),
368
+ are_pins_interchangeable: z9.boolean().optional(),
369
+ internally_connected_source_port_ids: z9.array(z9.array(z9.string())).optional(),
370
+ source_group_id: z9.string().optional(),
371
+ subcircuit_id: z9.string().optional()
352
372
  });
353
373
  expectTypesMatch(true);
354
374
 
355
375
  // src/source/source_simple_capacitor.ts
356
376
  var source_simple_capacitor = source_component_base.extend({
357
- ftype: z9.literal("simple_capacitor"),
377
+ ftype: z10.literal("simple_capacitor"),
358
378
  capacitance,
359
379
  max_voltage_rating: voltage.optional(),
360
- display_capacitance: z9.string().optional(),
380
+ display_capacitance: z10.string().optional(),
361
381
  max_decoupling_trace_length: distance.optional()
362
382
  });
363
383
  expectTypesMatch(true);
364
384
 
365
385
  // src/source/source_simple_resistor.ts
366
- import { z as z10 } from "zod";
386
+ import { z as z11 } from "zod";
367
387
  var source_simple_resistor = source_component_base.extend({
368
- ftype: z10.literal("simple_resistor"),
388
+ ftype: z11.literal("simple_resistor"),
369
389
  resistance,
370
- display_resistance: z10.string().optional()
390
+ display_resistance: z11.string().optional()
371
391
  });
372
392
  expectTypesMatch(true);
373
393
 
374
394
  // src/source/source_simple_diode.ts
375
- import { z as z11 } from "zod";
395
+ import { z as z12 } from "zod";
376
396
  var source_simple_diode = source_component_base.extend({
377
- ftype: z11.literal("simple_diode")
397
+ ftype: z12.literal("simple_diode")
378
398
  });
379
399
  expectTypesMatch(true);
380
400
 
381
401
  // src/source/source_simple_fiducial.ts
382
- import { z as z12 } from "zod";
402
+ import { z as z13 } from "zod";
383
403
  var source_simple_fiducial = source_component_base.extend({
384
- ftype: z12.literal("simple_fiducial")
404
+ ftype: z13.literal("simple_fiducial")
385
405
  });
386
406
  expectTypesMatch(true);
387
407
 
388
408
  // src/source/source_simple_led.ts
389
- import { z as z13 } from "zod";
409
+ import { z as z14 } from "zod";
390
410
  var source_simple_led = source_simple_diode.extend({
391
- ftype: z13.literal("simple_led"),
392
- color: z13.string().optional(),
393
- wavelength: z13.string().optional()
411
+ ftype: z14.literal("simple_led"),
412
+ color: z14.string().optional(),
413
+ wavelength: z14.string().optional()
394
414
  });
395
415
  expectTypesMatch(true);
396
416
 
397
417
  // src/source/source_simple_ground.ts
398
- import { z as z14 } from "zod";
418
+ import { z as z15 } from "zod";
399
419
  var source_simple_ground = source_component_base.extend({
400
- ftype: z14.literal("simple_ground")
420
+ ftype: z15.literal("simple_ground")
401
421
  });
402
422
  expectTypesMatch(true);
403
423
 
404
424
  // src/source/source_simple_chip.ts
405
- import { z as z15 } from "zod";
425
+ import { z as z16 } from "zod";
406
426
  var source_simple_chip = source_component_base.extend({
407
- ftype: z15.literal("simple_chip")
427
+ ftype: z16.literal("simple_chip")
408
428
  });
409
429
  expectTypesMatch(true);
410
430
 
411
431
  // src/source/source_simple_power_source.ts
412
- import { z as z16 } from "zod";
432
+ import { z as z17 } from "zod";
413
433
  var source_simple_power_source = source_component_base.extend({
414
- ftype: z16.literal("simple_power_source"),
434
+ ftype: z17.literal("simple_power_source"),
415
435
  voltage
416
436
  });
417
437
  expectTypesMatch(true);
418
438
 
419
439
  // src/source/any_source_component.ts
420
- import { z as z38 } from "zod";
440
+ import { z as z39 } from "zod";
421
441
 
422
442
  // src/source/source_simple_fuse.ts
423
- import { z as z17 } from "zod";
443
+ import { z as z18 } from "zod";
424
444
  var source_simple_fuse = source_component_base.extend({
425
- ftype: z17.literal("simple_fuse"),
426
- current_rating_amps: z17.number().describe("Nominal current in amps the fuse is rated for"),
427
- voltage_rating_volts: z17.number().describe("Voltage rating in volts, e.g. \xB15V would be 5")
445
+ ftype: z18.literal("simple_fuse"),
446
+ current_rating_amps: z18.number().describe("Nominal current in amps the fuse is rated for"),
447
+ voltage_rating_volts: z18.number().describe("Voltage rating in volts, e.g. \xB15V would be 5")
428
448
  });
429
449
  expectTypesMatch(true);
430
450
 
431
451
  // src/source/source_simple_battery.ts
432
- import { z as z18 } from "zod";
452
+ import { z as z19 } from "zod";
433
453
  var source_simple_battery = source_component_base.extend({
434
- ftype: z18.literal("simple_battery"),
454
+ ftype: z19.literal("simple_battery"),
435
455
  capacity: battery_capacity
436
456
  });
437
457
  expectTypesMatch(true);
438
458
 
439
459
  // src/source/source_simple_inductor.ts
440
- import { z as z19 } from "zod";
460
+ import { z as z20 } from "zod";
441
461
  var source_simple_inductor = source_component_base.extend({
442
- ftype: z19.literal("simple_inductor"),
462
+ ftype: z20.literal("simple_inductor"),
443
463
  inductance,
444
- max_current_rating: z19.number().optional()
464
+ max_current_rating: z20.number().optional()
445
465
  });
446
466
  expectTypesMatch(true);
447
467
 
448
468
  // src/source/source_simple_push_button.ts
449
- import { z as z20 } from "zod";
469
+ import { z as z21 } from "zod";
450
470
  var source_simple_push_button = source_component_base.extend({
451
- ftype: z20.literal("simple_push_button")
471
+ ftype: z21.literal("simple_push_button")
452
472
  });
453
473
  expectTypesMatch(true);
454
474
 
455
475
  // src/source/source_simple_potentiometer.ts
456
- import { z as z21 } from "zod";
476
+ import { z as z22 } from "zod";
457
477
  var source_simple_potentiometer = source_component_base.extend({
458
- ftype: z21.literal("simple_potentiometer"),
478
+ ftype: z22.literal("simple_potentiometer"),
459
479
  max_resistance: resistance
460
480
  });
461
481
  expectTypesMatch(
@@ -463,34 +483,34 @@ expectTypesMatch(
463
483
  );
464
484
 
465
485
  // src/source/source_simple_crystal.ts
466
- import { z as z22 } from "zod";
486
+ import { z as z23 } from "zod";
467
487
  var source_simple_crystal = source_component_base.extend({
468
- ftype: z22.literal("simple_crystal"),
469
- frequency: z22.number().describe("Frequency in Hz"),
470
- load_capacitance: z22.number().optional().describe("Load capacitance in pF")
488
+ ftype: z23.literal("simple_crystal"),
489
+ frequency: z23.number().describe("Frequency in Hz"),
490
+ load_capacitance: z23.number().optional().describe("Load capacitance in pF")
471
491
  });
472
492
  expectTypesMatch(true);
473
493
 
474
494
  // src/source/source_simple_pin_header.ts
475
- import { z as z23 } from "zod";
495
+ import { z as z24 } from "zod";
476
496
  var source_simple_pin_header = source_component_base.extend({
477
- ftype: z23.literal("simple_pin_header"),
478
- pin_count: z23.number(),
479
- gender: z23.enum(["male", "female"]).optional().default("male")
497
+ ftype: z24.literal("simple_pin_header"),
498
+ pin_count: z24.number(),
499
+ gender: z24.enum(["male", "female"]).optional().default("male")
480
500
  });
481
501
  expectTypesMatch(true);
482
502
 
483
503
  // src/source/source_simple_pinout.ts
484
- import { z as z24 } from "zod";
504
+ import { z as z25 } from "zod";
485
505
  var source_simple_pinout = source_component_base.extend({
486
- ftype: z24.literal("simple_pinout")
506
+ ftype: z25.literal("simple_pinout")
487
507
  });
488
508
  expectTypesMatch(true);
489
509
 
490
510
  // src/source/source_simple_resonator.ts
491
- import { z as z25 } from "zod";
511
+ import { z as z26 } from "zod";
492
512
  var source_simple_resonator = source_component_base.extend({
493
- ftype: z25.literal("simple_resonator"),
513
+ ftype: z26.literal("simple_resonator"),
494
514
  load_capacitance: capacitance,
495
515
  equivalent_series_resistance: resistance.optional(),
496
516
  frequency
@@ -498,158 +518,158 @@ var source_simple_resonator = source_component_base.extend({
498
518
  expectTypesMatch(true);
499
519
 
500
520
  // src/source/source_simple_transistor.ts
501
- import { z as z26 } from "zod";
521
+ import { z as z27 } from "zod";
502
522
  var source_simple_transistor = source_component_base.extend({
503
- ftype: z26.literal("simple_transistor"),
504
- transistor_type: z26.enum(["npn", "pnp"])
523
+ ftype: z27.literal("simple_transistor"),
524
+ transistor_type: z27.enum(["npn", "pnp"])
505
525
  });
506
526
  expectTypesMatch(true);
507
527
 
508
528
  // src/source/source_simple_test_point.ts
509
- import { z as z27 } from "zod";
529
+ import { z as z28 } from "zod";
510
530
  var source_simple_test_point = source_component_base.extend({
511
- ftype: z27.literal("simple_test_point"),
512
- footprint_variant: z27.enum(["pad", "through_hole"]).optional(),
513
- pad_shape: z27.enum(["rect", "circle"]).optional(),
514
- pad_diameter: z27.union([z27.number(), z27.string()]).optional(),
515
- hole_diameter: z27.union([z27.number(), z27.string()]).optional(),
516
- width: z27.union([z27.number(), z27.string()]).optional(),
517
- height: z27.union([z27.number(), z27.string()]).optional()
531
+ ftype: z28.literal("simple_test_point"),
532
+ footprint_variant: z28.enum(["pad", "through_hole"]).optional(),
533
+ pad_shape: z28.enum(["rect", "circle"]).optional(),
534
+ pad_diameter: z28.union([z28.number(), z28.string()]).optional(),
535
+ hole_diameter: z28.union([z28.number(), z28.string()]).optional(),
536
+ width: z28.union([z28.number(), z28.string()]).optional(),
537
+ height: z28.union([z28.number(), z28.string()]).optional()
518
538
  });
519
539
  expectTypesMatch(true);
520
540
 
521
541
  // src/source/source_simple_mosfet.ts
522
- import { z as z28 } from "zod";
542
+ import { z as z29 } from "zod";
523
543
  var source_simple_mosfet = source_component_base.extend({
524
- ftype: z28.literal("simple_mosfet"),
525
- channel_type: z28.enum(["n", "p"]),
526
- mosfet_mode: z28.enum(["enhancement", "depletion"])
544
+ ftype: z29.literal("simple_mosfet"),
545
+ channel_type: z29.enum(["n", "p"]),
546
+ mosfet_mode: z29.enum(["enhancement", "depletion"])
527
547
  });
528
548
  expectTypesMatch(true);
529
549
 
530
550
  // src/source/source_simple_switch.ts
531
- import { z as z29 } from "zod";
551
+ import { z as z30 } from "zod";
532
552
  var source_simple_switch = source_component_base.extend({
533
- ftype: z29.literal("simple_switch")
553
+ ftype: z30.literal("simple_switch")
534
554
  });
535
555
  expectTypesMatch(true);
536
556
 
537
557
  // src/source/source_project_metadata.ts
538
- import { z as z30 } from "zod";
539
- var source_project_metadata = z30.object({
540
- type: z30.literal("source_project_metadata"),
541
- name: z30.string().optional(),
542
- software_used_string: z30.string().optional(),
543
- project_url: z30.string().optional(),
558
+ import { z as z31 } from "zod";
559
+ var source_project_metadata = z31.object({
560
+ type: z31.literal("source_project_metadata"),
561
+ name: z31.string().optional(),
562
+ software_used_string: z31.string().optional(),
563
+ project_url: z31.string().optional(),
544
564
  created_at: timestamp.optional()
545
565
  });
546
566
  expectTypesMatch(true);
547
567
 
548
568
  // src/source/source_missing_property_error.ts
549
- import { z as z31 } from "zod";
550
- var source_missing_property_error = z31.object({
551
- type: z31.literal("source_missing_property_error"),
569
+ import { z as z32 } from "zod";
570
+ var source_missing_property_error = z32.object({
571
+ type: z32.literal("source_missing_property_error"),
552
572
  source_missing_property_error_id: getZodPrefixedIdWithDefault(
553
573
  "source_missing_property_error"
554
574
  ),
555
- source_component_id: z31.string(),
556
- property_name: z31.string(),
557
- subcircuit_id: z31.string().optional(),
558
- error_type: z31.literal("source_missing_property_error").default("source_missing_property_error"),
559
- message: z31.string()
575
+ source_component_id: z32.string(),
576
+ property_name: z32.string(),
577
+ subcircuit_id: z32.string().optional(),
578
+ error_type: z32.literal("source_missing_property_error").default("source_missing_property_error"),
579
+ message: z32.string()
560
580
  }).describe("The source code is missing a property");
561
581
  expectTypesMatch(true);
562
582
 
563
583
  // src/source/source_failed_to_create_component_error.ts
564
- import { z as z32 } from "zod";
565
- var source_failed_to_create_component_error = z32.object({
566
- type: z32.literal("source_failed_to_create_component_error"),
584
+ import { z as z33 } from "zod";
585
+ var source_failed_to_create_component_error = z33.object({
586
+ type: z33.literal("source_failed_to_create_component_error"),
567
587
  source_failed_to_create_component_error_id: getZodPrefixedIdWithDefault(
568
588
  "source_failed_to_create_component_error"
569
589
  ),
570
- error_type: z32.literal("source_failed_to_create_component_error").default("source_failed_to_create_component_error"),
571
- component_name: z32.string().optional(),
572
- subcircuit_id: z32.string().optional(),
573
- parent_source_component_id: z32.string().optional(),
574
- message: z32.string(),
575
- pcb_center: z32.object({
576
- x: z32.number().optional(),
577
- y: z32.number().optional()
590
+ error_type: z33.literal("source_failed_to_create_component_error").default("source_failed_to_create_component_error"),
591
+ component_name: z33.string().optional(),
592
+ subcircuit_id: z33.string().optional(),
593
+ parent_source_component_id: z33.string().optional(),
594
+ message: z33.string(),
595
+ pcb_center: z33.object({
596
+ x: z33.number().optional(),
597
+ y: z33.number().optional()
578
598
  }).optional(),
579
- schematic_center: z32.object({
580
- x: z32.number().optional(),
581
- y: z32.number().optional()
599
+ schematic_center: z33.object({
600
+ x: z33.number().optional(),
601
+ y: z33.number().optional()
582
602
  }).optional()
583
603
  }).describe("Error emitted when a component fails to be constructed");
584
604
  expectTypesMatch(true);
585
605
 
586
606
  // src/source/source_trace_not_connected_error.ts
587
- import { z as z33 } from "zod";
588
- var source_trace_not_connected_error = z33.object({
589
- type: z33.literal("source_trace_not_connected_error"),
607
+ import { z as z34 } from "zod";
608
+ var source_trace_not_connected_error = z34.object({
609
+ type: z34.literal("source_trace_not_connected_error"),
590
610
  source_trace_not_connected_error_id: getZodPrefixedIdWithDefault(
591
611
  "source_trace_not_connected_error"
592
612
  ),
593
- error_type: z33.literal("source_trace_not_connected_error").default("source_trace_not_connected_error"),
594
- message: z33.string(),
595
- subcircuit_id: z33.string().optional(),
596
- source_group_id: z33.string().optional(),
597
- source_trace_id: z33.string().optional(),
598
- connected_source_port_ids: z33.array(z33.string()).optional(),
599
- selectors_not_found: z33.array(z33.string()).optional()
613
+ error_type: z34.literal("source_trace_not_connected_error").default("source_trace_not_connected_error"),
614
+ message: z34.string(),
615
+ subcircuit_id: z34.string().optional(),
616
+ source_group_id: z34.string().optional(),
617
+ source_trace_id: z34.string().optional(),
618
+ connected_source_port_ids: z34.array(z34.string()).optional(),
619
+ selectors_not_found: z34.array(z34.string()).optional()
600
620
  }).describe("Occurs when a source trace selector does not match any ports");
601
621
  expectTypesMatch(true);
602
622
 
603
623
  // src/source/source_property_ignored_warning.ts
604
- import { z as z34 } from "zod";
605
- var source_property_ignored_warning = z34.object({
606
- type: z34.literal("source_property_ignored_warning"),
624
+ import { z as z35 } from "zod";
625
+ var source_property_ignored_warning = z35.object({
626
+ type: z35.literal("source_property_ignored_warning"),
607
627
  source_property_ignored_warning_id: getZodPrefixedIdWithDefault(
608
628
  "source_property_ignored_warning"
609
629
  ),
610
- source_component_id: z34.string(),
611
- property_name: z34.string(),
612
- subcircuit_id: z34.string().optional(),
613
- error_type: z34.literal("source_property_ignored_warning").default("source_property_ignored_warning"),
614
- message: z34.string()
630
+ source_component_id: z35.string(),
631
+ property_name: z35.string(),
632
+ subcircuit_id: z35.string().optional(),
633
+ error_type: z35.literal("source_property_ignored_warning").default("source_property_ignored_warning"),
634
+ message: z35.string()
615
635
  }).describe("The source property was ignored");
616
636
  expectTypesMatch(true);
617
637
 
618
638
  // src/source/source_pin_missing_trace_warning.ts
619
- import { z as z35 } from "zod";
620
- var source_pin_missing_trace_warning = z35.object({
621
- type: z35.literal("source_pin_missing_trace_warning"),
639
+ import { z as z36 } from "zod";
640
+ var source_pin_missing_trace_warning = z36.object({
641
+ type: z36.literal("source_pin_missing_trace_warning"),
622
642
  source_pin_missing_trace_warning_id: getZodPrefixedIdWithDefault(
623
643
  "source_pin_missing_trace_warning"
624
644
  ),
625
- warning_type: z35.literal("source_pin_missing_trace_warning").default("source_pin_missing_trace_warning"),
626
- message: z35.string(),
627
- source_component_id: z35.string(),
628
- source_port_id: z35.string(),
629
- subcircuit_id: z35.string().optional()
645
+ warning_type: z36.literal("source_pin_missing_trace_warning").default("source_pin_missing_trace_warning"),
646
+ message: z36.string(),
647
+ source_component_id: z36.string(),
648
+ source_port_id: z36.string(),
649
+ subcircuit_id: z36.string().optional()
630
650
  }).describe(
631
651
  "Warning emitted when a source component pin is missing a trace connection"
632
652
  );
633
653
  expectTypesMatch(true);
634
654
 
635
655
  // src/source/source_simple_voltage_probe.ts
636
- import { z as z36 } from "zod";
656
+ import { z as z37 } from "zod";
637
657
  var source_simple_voltage_probe = source_component_base.extend({
638
- ftype: z36.literal("simple_voltage_probe")
658
+ ftype: z37.literal("simple_voltage_probe")
639
659
  });
640
660
  expectTypesMatch(
641
661
  true
642
662
  );
643
663
 
644
664
  // src/source/source_interconnect.ts
645
- import { z as z37 } from "zod";
665
+ import { z as z38 } from "zod";
646
666
  var source_interconnect = source_component_base.extend({
647
- ftype: z37.literal("interconnect")
667
+ ftype: z38.literal("interconnect")
648
668
  });
649
669
  expectTypesMatch(true);
650
670
 
651
671
  // src/source/any_source_component.ts
652
- var any_source_component = z38.union([
672
+ var any_source_component = z39.union([
653
673
  source_simple_resistor,
654
674
  source_simple_capacitor,
655
675
  source_simple_diode,
@@ -683,106 +703,106 @@ var any_source_component = z38.union([
683
703
  expectTypesMatch(true);
684
704
 
685
705
  // src/source/source_port.ts
686
- import { z as z39 } from "zod";
687
- var source_port = z39.object({
688
- type: z39.literal("source_port"),
689
- pin_number: z39.number().optional(),
690
- port_hints: z39.array(z39.string()).optional(),
691
- name: z39.string(),
692
- source_port_id: z39.string(),
693
- source_component_id: z39.string().optional(),
694
- source_group_id: z39.string().optional(),
695
- subcircuit_id: z39.string().optional(),
696
- subcircuit_connectivity_map_key: z39.string().optional(),
697
- must_be_connected: z39.boolean().optional()
706
+ import { z as z40 } from "zod";
707
+ var source_port = z40.object({
708
+ type: z40.literal("source_port"),
709
+ pin_number: z40.number().optional(),
710
+ port_hints: z40.array(z40.string()).optional(),
711
+ name: z40.string(),
712
+ source_port_id: z40.string(),
713
+ source_component_id: z40.string().optional(),
714
+ source_group_id: z40.string().optional(),
715
+ subcircuit_id: z40.string().optional(),
716
+ subcircuit_connectivity_map_key: z40.string().optional(),
717
+ must_be_connected: z40.boolean().optional()
698
718
  });
699
719
  expectTypesMatch(true);
700
720
 
701
721
  // src/source/source_component_internal_connection.ts
702
- import { z as z40 } from "zod";
703
- var source_component_internal_connection = z40.object({
704
- type: z40.literal("source_component_internal_connection"),
705
- source_component_internal_connection_id: z40.string(),
706
- source_component_id: z40.string(),
707
- source_port_ids: z40.array(z40.string()),
708
- subcircuit_id: z40.string().optional()
722
+ import { z as z41 } from "zod";
723
+ var source_component_internal_connection = z41.object({
724
+ type: z41.literal("source_component_internal_connection"),
725
+ source_component_internal_connection_id: z41.string(),
726
+ source_component_id: z41.string(),
727
+ source_port_ids: z41.array(z41.string()),
728
+ subcircuit_id: z41.string().optional()
709
729
  });
710
730
  expectTypesMatch(true);
711
731
 
712
732
  // src/source/source_trace.ts
713
- import { z as z41 } from "zod";
714
- var source_trace = z41.object({
715
- type: z41.literal("source_trace"),
716
- source_trace_id: z41.string(),
717
- connected_source_port_ids: z41.array(z41.string()),
718
- connected_source_net_ids: z41.array(z41.string()),
719
- subcircuit_id: z41.string().optional(),
720
- subcircuit_connectivity_map_key: z41.string().optional(),
721
- max_length: z41.number().optional(),
722
- min_trace_thickness: z41.number().optional(),
723
- display_name: z41.string().optional()
733
+ import { z as z42 } from "zod";
734
+ var source_trace = z42.object({
735
+ type: z42.literal("source_trace"),
736
+ source_trace_id: z42.string(),
737
+ connected_source_port_ids: z42.array(z42.string()),
738
+ connected_source_net_ids: z42.array(z42.string()),
739
+ subcircuit_id: z42.string().optional(),
740
+ subcircuit_connectivity_map_key: z42.string().optional(),
741
+ max_length: z42.number().optional(),
742
+ min_trace_thickness: z42.number().optional(),
743
+ display_name: z42.string().optional()
724
744
  });
725
745
  expectTypesMatch(true);
726
746
 
727
747
  // src/source/source_group.ts
728
- import { z as z42 } from "zod";
729
- var source_group = z42.object({
730
- type: z42.literal("source_group"),
731
- source_group_id: z42.string(),
732
- subcircuit_id: z42.string().optional(),
733
- parent_subcircuit_id: z42.string().optional(),
734
- parent_source_group_id: z42.string().optional(),
735
- is_subcircuit: z42.boolean().optional(),
736
- show_as_schematic_box: z42.boolean().optional(),
737
- name: z42.string().optional(),
738
- was_automatically_named: z42.boolean().optional()
748
+ import { z as z43 } from "zod";
749
+ var source_group = z43.object({
750
+ type: z43.literal("source_group"),
751
+ source_group_id: z43.string(),
752
+ subcircuit_id: z43.string().optional(),
753
+ parent_subcircuit_id: z43.string().optional(),
754
+ parent_source_group_id: z43.string().optional(),
755
+ is_subcircuit: z43.boolean().optional(),
756
+ show_as_schematic_box: z43.boolean().optional(),
757
+ name: z43.string().optional(),
758
+ was_automatically_named: z43.boolean().optional()
739
759
  });
740
760
  expectTypesMatch(true);
741
761
 
742
762
  // src/source/source_net.ts
743
- import { z as z43 } from "zod";
744
- var source_net = z43.object({
745
- type: z43.literal("source_net"),
746
- source_net_id: z43.string(),
747
- name: z43.string(),
748
- member_source_group_ids: z43.array(z43.string()),
749
- is_power: z43.boolean().optional(),
750
- is_ground: z43.boolean().optional(),
751
- is_digital_signal: z43.boolean().optional(),
752
- is_analog_signal: z43.boolean().optional(),
753
- is_positive_voltage_source: z43.boolean().optional(),
754
- trace_width: z43.number().optional(),
755
- subcircuit_id: z43.string().optional(),
756
- subcircuit_connectivity_map_key: z43.string().optional()
763
+ import { z as z44 } from "zod";
764
+ var source_net = z44.object({
765
+ type: z44.literal("source_net"),
766
+ source_net_id: z44.string(),
767
+ name: z44.string(),
768
+ member_source_group_ids: z44.array(z44.string()),
769
+ is_power: z44.boolean().optional(),
770
+ is_ground: z44.boolean().optional(),
771
+ is_digital_signal: z44.boolean().optional(),
772
+ is_analog_signal: z44.boolean().optional(),
773
+ is_positive_voltage_source: z44.boolean().optional(),
774
+ trace_width: z44.number().optional(),
775
+ subcircuit_id: z44.string().optional(),
776
+ subcircuit_connectivity_map_key: z44.string().optional()
757
777
  });
758
778
  expectTypesMatch(true);
759
779
 
760
780
  // src/source/source_board.ts
761
- import { z as z44 } from "zod";
762
- var source_board = z44.object({
763
- type: z44.literal("source_board"),
764
- source_board_id: z44.string(),
765
- source_group_id: z44.string(),
766
- title: z44.string().optional()
781
+ import { z as z45 } from "zod";
782
+ var source_board = z45.object({
783
+ type: z45.literal("source_board"),
784
+ source_board_id: z45.string(),
785
+ source_group_id: z45.string(),
786
+ title: z45.string().optional()
767
787
  }).describe("Defines a board in the source domain");
768
788
  expectTypesMatch(true);
769
789
 
770
790
  // src/source/source_pcb_ground_plane.ts
771
- import { z as z45 } from "zod";
772
- var source_pcb_ground_plane = z45.object({
773
- type: z45.literal("source_pcb_ground_plane"),
774
- source_pcb_ground_plane_id: z45.string(),
775
- source_group_id: z45.string(),
776
- source_net_id: z45.string(),
777
- subcircuit_id: z45.string().optional()
791
+ import { z as z46 } from "zod";
792
+ var source_pcb_ground_plane = z46.object({
793
+ type: z46.literal("source_pcb_ground_plane"),
794
+ source_pcb_ground_plane_id: z46.string(),
795
+ source_group_id: z46.string(),
796
+ source_net_id: z46.string(),
797
+ subcircuit_id: z46.string().optional()
778
798
  }).describe("Defines a ground plane in the source domain");
779
799
  expectTypesMatch(true);
780
800
 
781
801
  // src/source/source_manually_placed_via.ts
782
- import { z as z47 } from "zod";
802
+ import { z as z48 } from "zod";
783
803
 
784
804
  // src/pcb/properties/layer_ref.ts
785
- import { z as z46 } from "zod";
805
+ import { z as z47 } from "zod";
786
806
  var all_layers = [
787
807
  "top",
788
808
  "bottom",
@@ -793,9 +813,9 @@ var all_layers = [
793
813
  "inner5",
794
814
  "inner6"
795
815
  ];
796
- var layer_string = z46.enum(all_layers);
816
+ var layer_string = z47.enum(all_layers);
797
817
  var layer_ref = layer_string.or(
798
- z46.object({
818
+ z47.object({
799
819
  name: layer_string
800
820
  })
801
821
  ).transform((layer) => {
@@ -805,253 +825,253 @@ var layer_ref = layer_string.or(
805
825
  return layer.name;
806
826
  });
807
827
  expectTypesMatch(true);
808
- var visible_layer = z46.enum(["top", "bottom"]);
828
+ var visible_layer = z47.enum(["top", "bottom"]);
809
829
 
810
830
  // src/source/source_manually_placed_via.ts
811
- var source_manually_placed_via = z47.object({
812
- type: z47.literal("source_manually_placed_via"),
813
- source_manually_placed_via_id: z47.string(),
814
- source_group_id: z47.string(),
815
- source_net_id: z47.string(),
816
- subcircuit_id: z47.string().optional(),
817
- source_trace_id: z47.string().optional()
831
+ var source_manually_placed_via = z48.object({
832
+ type: z48.literal("source_manually_placed_via"),
833
+ source_manually_placed_via_id: z48.string(),
834
+ source_group_id: z48.string(),
835
+ source_net_id: z48.string(),
836
+ subcircuit_id: z48.string().optional(),
837
+ source_trace_id: z48.string().optional()
818
838
  }).describe("Defines a via that is manually placed in the source domain");
819
839
  expectTypesMatch(true);
820
840
 
821
841
  // src/source/source_pin_must_be_connected_error.ts
822
- import { z as z48 } from "zod";
823
- var source_pin_must_be_connected_error = z48.object({
824
- type: z48.literal("source_pin_must_be_connected_error"),
842
+ import { z as z49 } from "zod";
843
+ var source_pin_must_be_connected_error = z49.object({
844
+ type: z49.literal("source_pin_must_be_connected_error"),
825
845
  source_pin_must_be_connected_error_id: getZodPrefixedIdWithDefault(
826
846
  "source_pin_must_be_connected_error"
827
847
  ),
828
- error_type: z48.literal("source_pin_must_be_connected_error").default("source_pin_must_be_connected_error"),
829
- message: z48.string(),
830
- source_component_id: z48.string(),
831
- source_port_id: z48.string(),
832
- subcircuit_id: z48.string().optional()
848
+ error_type: z49.literal("source_pin_must_be_connected_error").default("source_pin_must_be_connected_error"),
849
+ message: z49.string(),
850
+ source_component_id: z49.string(),
851
+ source_port_id: z49.string(),
852
+ subcircuit_id: z49.string().optional()
833
853
  }).describe(
834
854
  "Error emitted when a pin with mustBeConnected attribute is not connected to any trace"
835
855
  );
836
856
  expectTypesMatch(true);
837
857
 
838
858
  // src/source/unknown_error_finding_part.ts
839
- import { z as z49 } from "zod";
840
- var unknown_error_finding_part = z49.object({
841
- type: z49.literal("unknown_error_finding_part"),
859
+ import { z as z50 } from "zod";
860
+ var unknown_error_finding_part = z50.object({
861
+ type: z50.literal("unknown_error_finding_part"),
842
862
  unknown_error_finding_part_id: getZodPrefixedIdWithDefault(
843
863
  "unknown_error_finding_part"
844
864
  ),
845
- error_type: z49.literal("unknown_error_finding_part").default("unknown_error_finding_part"),
846
- message: z49.string(),
847
- source_component_id: z49.string().optional(),
848
- subcircuit_id: z49.string().optional()
865
+ error_type: z50.literal("unknown_error_finding_part").default("unknown_error_finding_part"),
866
+ message: z50.string(),
867
+ source_component_id: z50.string().optional(),
868
+ subcircuit_id: z50.string().optional()
849
869
  }).describe(
850
870
  "Error emitted when an unexpected error occurs while finding a part"
851
871
  );
852
872
  expectTypesMatch(true);
853
873
 
854
874
  // src/schematic/schematic_box.ts
855
- import { z as z50 } from "zod";
856
- var schematic_box = z50.object({
857
- type: z50.literal("schematic_box"),
858
- schematic_component_id: z50.string().optional(),
875
+ import { z as z51 } from "zod";
876
+ var schematic_box = z51.object({
877
+ type: z51.literal("schematic_box"),
878
+ schematic_component_id: z51.string().optional(),
859
879
  width: distance,
860
880
  height: distance,
861
- is_dashed: z50.boolean().default(false),
881
+ is_dashed: z51.boolean().default(false),
862
882
  x: distance,
863
883
  y: distance,
864
- subcircuit_id: z50.string().optional()
884
+ subcircuit_id: z51.string().optional()
865
885
  }).describe("Draws a box on the schematic");
866
886
  expectTypesMatch(true);
867
887
 
868
888
  // src/schematic/schematic_path.ts
869
- import { z as z51 } from "zod";
870
- var schematic_path = z51.object({
871
- type: z51.literal("schematic_path"),
872
- schematic_component_id: z51.string(),
873
- fill_color: z51.enum(["red", "blue"]).optional(),
874
- is_filled: z51.boolean().optional(),
875
- points: z51.array(point),
876
- subcircuit_id: z51.string().optional()
889
+ import { z as z52 } from "zod";
890
+ var schematic_path = z52.object({
891
+ type: z52.literal("schematic_path"),
892
+ schematic_component_id: z52.string(),
893
+ fill_color: z52.enum(["red", "blue"]).optional(),
894
+ is_filled: z52.boolean().optional(),
895
+ points: z52.array(point),
896
+ subcircuit_id: z52.string().optional()
877
897
  });
878
898
  expectTypesMatch(true);
879
899
 
880
900
  // src/schematic/schematic_component.ts
881
- import { z as z52 } from "zod";
882
- var schematic_pin_styles = z52.record(
883
- z52.object({
901
+ import { z as z53 } from "zod";
902
+ var schematic_pin_styles = z53.record(
903
+ z53.object({
884
904
  left_margin: length.optional(),
885
905
  right_margin: length.optional(),
886
906
  top_margin: length.optional(),
887
907
  bottom_margin: length.optional()
888
908
  })
889
909
  );
890
- var schematic_component_port_arrangement_by_size = z52.object({
891
- left_size: z52.number(),
892
- right_size: z52.number(),
893
- top_size: z52.number().optional(),
894
- bottom_size: z52.number().optional()
910
+ var schematic_component_port_arrangement_by_size = z53.object({
911
+ left_size: z53.number(),
912
+ right_size: z53.number(),
913
+ top_size: z53.number().optional(),
914
+ bottom_size: z53.number().optional()
895
915
  });
896
916
  expectTypesMatch(true);
897
- var schematic_component_port_arrangement_by_sides = z52.object({
898
- left_side: z52.object({
899
- pins: z52.array(z52.number()),
917
+ var schematic_component_port_arrangement_by_sides = z53.object({
918
+ left_side: z53.object({
919
+ pins: z53.array(z53.number()),
900
920
  // @ts-ignore
901
- direction: z52.enum(["top-to-bottom", "bottom-to-top"]).optional()
921
+ direction: z53.enum(["top-to-bottom", "bottom-to-top"]).optional()
902
922
  }).optional(),
903
- right_side: z52.object({
904
- pins: z52.array(z52.number()),
923
+ right_side: z53.object({
924
+ pins: z53.array(z53.number()),
905
925
  // @ts-ignore
906
- direction: z52.enum(["top-to-bottom", "bottom-to-top"]).optional()
926
+ direction: z53.enum(["top-to-bottom", "bottom-to-top"]).optional()
907
927
  }).optional(),
908
- top_side: z52.object({
909
- pins: z52.array(z52.number()),
928
+ top_side: z53.object({
929
+ pins: z53.array(z53.number()),
910
930
  // @ts-ignore
911
- direction: z52.enum(["left-to-right", "right-to-left"]).optional()
931
+ direction: z53.enum(["left-to-right", "right-to-left"]).optional()
912
932
  }).optional(),
913
- bottom_side: z52.object({
914
- pins: z52.array(z52.number()),
933
+ bottom_side: z53.object({
934
+ pins: z53.array(z53.number()),
915
935
  // @ts-ignore
916
- direction: z52.enum(["left-to-right", "right-to-left"]).optional()
936
+ direction: z53.enum(["left-to-right", "right-to-left"]).optional()
917
937
  }).optional()
918
938
  });
919
939
  expectTypesMatch(true);
920
- var port_arrangement = z52.union([
940
+ var port_arrangement = z53.union([
921
941
  schematic_component_port_arrangement_by_size,
922
942
  schematic_component_port_arrangement_by_sides
923
943
  ]);
924
- var schematic_component = z52.object({
925
- type: z52.literal("schematic_component"),
944
+ var schematic_component = z53.object({
945
+ type: z53.literal("schematic_component"),
926
946
  size,
927
947
  center: point,
928
- source_component_id: z52.string().optional(),
929
- schematic_component_id: z52.string(),
948
+ source_component_id: z53.string().optional(),
949
+ schematic_component_id: z53.string(),
930
950
  pin_spacing: length.optional(),
931
951
  pin_styles: schematic_pin_styles.optional(),
932
952
  box_width: length.optional(),
933
- symbol_name: z52.string().optional(),
953
+ symbol_name: z53.string().optional(),
934
954
  port_arrangement: port_arrangement.optional(),
935
- port_labels: z52.record(z52.string()).optional(),
936
- symbol_display_value: z52.string().optional(),
937
- subcircuit_id: z52.string().optional(),
938
- schematic_group_id: z52.string().optional(),
939
- is_schematic_group: z52.boolean().optional(),
940
- source_group_id: z52.string().optional(),
941
- is_box_with_pins: z52.boolean().optional().default(true)
955
+ port_labels: z53.record(z53.string()).optional(),
956
+ symbol_display_value: z53.string().optional(),
957
+ subcircuit_id: z53.string().optional(),
958
+ schematic_group_id: z53.string().optional(),
959
+ is_schematic_group: z53.boolean().optional(),
960
+ source_group_id: z53.string().optional(),
961
+ is_box_with_pins: z53.boolean().optional().default(true)
942
962
  });
943
963
  expectTypesMatch(true);
944
964
 
945
965
  // src/schematic/schematic_line.ts
946
- import { z as z53 } from "zod";
947
- var schematic_line = z53.object({
948
- type: z53.literal("schematic_line"),
966
+ import { z as z54 } from "zod";
967
+ var schematic_line = z54.object({
968
+ type: z54.literal("schematic_line"),
949
969
  schematic_line_id: getZodPrefixedIdWithDefault("schematic_line"),
950
- schematic_component_id: z53.string(),
970
+ schematic_component_id: z54.string(),
951
971
  x1: distance,
952
972
  y1: distance,
953
973
  x2: distance,
954
974
  y2: distance,
955
975
  stroke_width: distance.nullable().optional(),
956
- color: z53.string().default("#000000"),
957
- is_dashed: z53.boolean().default(false),
958
- subcircuit_id: z53.string().optional()
976
+ color: z54.string().default("#000000"),
977
+ is_dashed: z54.boolean().default(false),
978
+ subcircuit_id: z54.string().optional()
959
979
  }).describe("Draws a styled line on the schematic");
960
980
  expectTypesMatch(true);
961
981
 
962
982
  // src/schematic/schematic_rect.ts
963
- import { z as z54 } from "zod";
964
- var schematic_rect = z54.object({
965
- type: z54.literal("schematic_rect"),
983
+ import { z as z55 } from "zod";
984
+ var schematic_rect = z55.object({
985
+ type: z55.literal("schematic_rect"),
966
986
  schematic_rect_id: getZodPrefixedIdWithDefault("schematic_rect"),
967
- schematic_component_id: z54.string(),
987
+ schematic_component_id: z55.string(),
968
988
  center: point,
969
989
  width: distance,
970
990
  height: distance,
971
991
  rotation: rotation.default(0),
972
992
  stroke_width: distance.nullable().optional(),
973
- color: z54.string().default("#000000"),
974
- is_filled: z54.boolean().default(false),
975
- fill_color: z54.string().optional(),
976
- is_dashed: z54.boolean().default(false),
977
- subcircuit_id: z54.string().optional()
993
+ color: z55.string().default("#000000"),
994
+ is_filled: z55.boolean().default(false),
995
+ fill_color: z55.string().optional(),
996
+ is_dashed: z55.boolean().default(false),
997
+ subcircuit_id: z55.string().optional()
978
998
  }).describe("Draws a styled rectangle on the schematic");
979
999
  expectTypesMatch(true);
980
1000
 
981
1001
  // src/schematic/schematic_circle.ts
982
- import { z as z55 } from "zod";
983
- var schematic_circle = z55.object({
984
- type: z55.literal("schematic_circle"),
1002
+ import { z as z56 } from "zod";
1003
+ var schematic_circle = z56.object({
1004
+ type: z56.literal("schematic_circle"),
985
1005
  schematic_circle_id: getZodPrefixedIdWithDefault("schematic_circle"),
986
- schematic_component_id: z55.string(),
1006
+ schematic_component_id: z56.string(),
987
1007
  center: point,
988
1008
  radius: distance,
989
1009
  stroke_width: distance.nullable().optional(),
990
- color: z55.string().default("#000000"),
991
- is_filled: z55.boolean().default(false),
992
- fill_color: z55.string().optional(),
993
- is_dashed: z55.boolean().default(false),
994
- subcircuit_id: z55.string().optional()
1010
+ color: z56.string().default("#000000"),
1011
+ is_filled: z56.boolean().default(false),
1012
+ fill_color: z56.string().optional(),
1013
+ is_dashed: z56.boolean().default(false),
1014
+ subcircuit_id: z56.string().optional()
995
1015
  }).describe("Draws a styled circle on the schematic");
996
1016
  expectTypesMatch(true);
997
1017
 
998
1018
  // src/schematic/schematic_arc.ts
999
- import { z as z56 } from "zod";
1000
- var schematic_arc = z56.object({
1001
- type: z56.literal("schematic_arc"),
1019
+ import { z as z57 } from "zod";
1020
+ var schematic_arc = z57.object({
1021
+ type: z57.literal("schematic_arc"),
1002
1022
  schematic_arc_id: getZodPrefixedIdWithDefault("schematic_arc"),
1003
- schematic_component_id: z56.string(),
1023
+ schematic_component_id: z57.string(),
1004
1024
  center: point,
1005
1025
  radius: distance,
1006
1026
  start_angle_degrees: rotation,
1007
1027
  end_angle_degrees: rotation,
1008
- direction: z56.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
1028
+ direction: z57.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
1009
1029
  stroke_width: distance.nullable().optional(),
1010
- color: z56.string().default("#000000"),
1011
- is_dashed: z56.boolean().default(false),
1012
- subcircuit_id: z56.string().optional()
1030
+ color: z57.string().default("#000000"),
1031
+ is_dashed: z57.boolean().default(false),
1032
+ subcircuit_id: z57.string().optional()
1013
1033
  }).describe("Draws a styled arc on the schematic");
1014
1034
  expectTypesMatch(true);
1015
1035
 
1016
1036
  // src/schematic/schematic_trace.ts
1017
- import { z as z57 } from "zod";
1018
- var schematic_trace = z57.object({
1019
- type: z57.literal("schematic_trace"),
1020
- schematic_trace_id: z57.string(),
1021
- source_trace_id: z57.string().optional(),
1022
- junctions: z57.array(
1023
- z57.object({
1024
- x: z57.number(),
1025
- y: z57.number()
1037
+ import { z as z58 } from "zod";
1038
+ var schematic_trace = z58.object({
1039
+ type: z58.literal("schematic_trace"),
1040
+ schematic_trace_id: z58.string(),
1041
+ source_trace_id: z58.string().optional(),
1042
+ junctions: z58.array(
1043
+ z58.object({
1044
+ x: z58.number(),
1045
+ y: z58.number()
1026
1046
  })
1027
1047
  ),
1028
- edges: z57.array(
1029
- z57.object({
1030
- from: z57.object({
1031
- x: z57.number(),
1032
- y: z57.number()
1048
+ edges: z58.array(
1049
+ z58.object({
1050
+ from: z58.object({
1051
+ x: z58.number(),
1052
+ y: z58.number()
1033
1053
  }),
1034
- to: z57.object({
1035
- x: z57.number(),
1036
- y: z57.number()
1054
+ to: z58.object({
1055
+ x: z58.number(),
1056
+ y: z58.number()
1037
1057
  }),
1038
- is_crossing: z57.boolean().optional(),
1039
- from_schematic_port_id: z57.string().optional(),
1040
- to_schematic_port_id: z57.string().optional()
1058
+ is_crossing: z58.boolean().optional(),
1059
+ from_schematic_port_id: z58.string().optional(),
1060
+ to_schematic_port_id: z58.string().optional()
1041
1061
  })
1042
1062
  ),
1043
- subcircuit_id: z57.string().optional(),
1063
+ subcircuit_id: z58.string().optional(),
1044
1064
  // TODO: make required in a future release
1045
- subcircuit_connectivity_map_key: z57.string().optional()
1065
+ subcircuit_connectivity_map_key: z58.string().optional()
1046
1066
  });
1047
1067
  expectTypesMatch(true);
1048
1068
 
1049
1069
  // src/schematic/schematic_text.ts
1050
- import { z as z59 } from "zod";
1070
+ import { z as z60 } from "zod";
1051
1071
 
1052
1072
  // src/common/FivePointAnchor.ts
1053
- import { z as z58 } from "zod";
1054
- var fivePointAnchor = z58.enum([
1073
+ import { z as z59 } from "zod";
1074
+ var fivePointAnchor = z59.enum([
1055
1075
  "center",
1056
1076
  "left",
1057
1077
  "right",
@@ -1061,111 +1081,111 @@ var fivePointAnchor = z58.enum([
1061
1081
  expectTypesMatch(true);
1062
1082
 
1063
1083
  // src/schematic/schematic_text.ts
1064
- var schematic_text = z59.object({
1065
- type: z59.literal("schematic_text"),
1066
- schematic_component_id: z59.string().optional(),
1067
- schematic_text_id: z59.string(),
1068
- text: z59.string(),
1069
- font_size: z59.number().default(0.18),
1070
- position: z59.object({
1084
+ var schematic_text = z60.object({
1085
+ type: z60.literal("schematic_text"),
1086
+ schematic_component_id: z60.string().optional(),
1087
+ schematic_text_id: z60.string(),
1088
+ text: z60.string(),
1089
+ font_size: z60.number().default(0.18),
1090
+ position: z60.object({
1071
1091
  x: distance,
1072
1092
  y: distance
1073
1093
  }),
1074
- rotation: z59.number().default(0),
1075
- anchor: z59.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
1076
- color: z59.string().default("#000000"),
1077
- subcircuit_id: z59.string().optional()
1094
+ rotation: z60.number().default(0),
1095
+ anchor: z60.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
1096
+ color: z60.string().default("#000000"),
1097
+ subcircuit_id: z60.string().optional()
1078
1098
  });
1079
1099
  expectTypesMatch(true);
1080
1100
 
1081
1101
  // src/schematic/schematic_port.ts
1082
- import { z as z60 } from "zod";
1083
- var schematic_port = z60.object({
1084
- type: z60.literal("schematic_port"),
1085
- schematic_port_id: z60.string(),
1086
- source_port_id: z60.string(),
1087
- schematic_component_id: z60.string().optional(),
1102
+ import { z as z61 } from "zod";
1103
+ var schematic_port = z61.object({
1104
+ type: z61.literal("schematic_port"),
1105
+ schematic_port_id: z61.string(),
1106
+ source_port_id: z61.string(),
1107
+ schematic_component_id: z61.string().optional(),
1088
1108
  center: point,
1089
- facing_direction: z60.enum(["up", "down", "left", "right"]).optional(),
1090
- distance_from_component_edge: z60.number().optional(),
1091
- side_of_component: z60.enum(["top", "bottom", "left", "right"]).optional(),
1092
- true_ccw_index: z60.number().optional(),
1093
- pin_number: z60.number().optional(),
1094
- display_pin_label: z60.string().optional(),
1095
- subcircuit_id: z60.string().optional(),
1096
- is_connected: z60.boolean().optional(),
1097
- has_input_arrow: z60.boolean().optional(),
1098
- has_output_arrow: z60.boolean().optional()
1109
+ facing_direction: z61.enum(["up", "down", "left", "right"]).optional(),
1110
+ distance_from_component_edge: z61.number().optional(),
1111
+ side_of_component: z61.enum(["top", "bottom", "left", "right"]).optional(),
1112
+ true_ccw_index: z61.number().optional(),
1113
+ pin_number: z61.number().optional(),
1114
+ display_pin_label: z61.string().optional(),
1115
+ subcircuit_id: z61.string().optional(),
1116
+ is_connected: z61.boolean().optional(),
1117
+ has_input_arrow: z61.boolean().optional(),
1118
+ has_output_arrow: z61.boolean().optional()
1099
1119
  }).describe("Defines a port on a schematic component");
1100
1120
  expectTypesMatch(true);
1101
1121
 
1102
1122
  // src/schematic/schematic_net_label.ts
1103
- import { z as z61 } from "zod";
1104
- var schematic_net_label = z61.object({
1105
- type: z61.literal("schematic_net_label"),
1123
+ import { z as z62 } from "zod";
1124
+ var schematic_net_label = z62.object({
1125
+ type: z62.literal("schematic_net_label"),
1106
1126
  schematic_net_label_id: getZodPrefixedIdWithDefault("schematic_net_label"),
1107
- schematic_trace_id: z61.string().optional(),
1108
- source_trace_id: z61.string().optional(),
1109
- source_net_id: z61.string(),
1127
+ schematic_trace_id: z62.string().optional(),
1128
+ source_trace_id: z62.string().optional(),
1129
+ source_net_id: z62.string(),
1110
1130
  center: point,
1111
1131
  anchor_position: point.optional(),
1112
- anchor_side: z61.enum(["top", "bottom", "left", "right"]),
1113
- text: z61.string(),
1114
- symbol_name: z61.string().optional(),
1115
- is_movable: z61.boolean().optional(),
1116
- subcircuit_id: z61.string().optional()
1132
+ anchor_side: z62.enum(["top", "bottom", "left", "right"]),
1133
+ text: z62.string(),
1134
+ symbol_name: z62.string().optional(),
1135
+ is_movable: z62.boolean().optional(),
1136
+ subcircuit_id: z62.string().optional()
1117
1137
  });
1118
1138
  expectTypesMatch(true);
1119
1139
 
1120
1140
  // src/schematic/schematic_error.ts
1121
- import { z as z62 } from "zod";
1122
- var schematic_error = z62.object({
1123
- type: z62.literal("schematic_error"),
1124
- schematic_error_id: z62.string(),
1141
+ import { z as z63 } from "zod";
1142
+ var schematic_error = z63.object({
1143
+ type: z63.literal("schematic_error"),
1144
+ schematic_error_id: z63.string(),
1125
1145
  // eventually each error type should be broken out into a dir of files
1126
- error_type: z62.literal("schematic_port_not_found").default("schematic_port_not_found"),
1127
- message: z62.string(),
1128
- subcircuit_id: z62.string().optional()
1146
+ error_type: z63.literal("schematic_port_not_found").default("schematic_port_not_found"),
1147
+ message: z63.string(),
1148
+ subcircuit_id: z63.string().optional()
1129
1149
  }).describe("Defines a schematic error on the schematic");
1130
1150
  expectTypesMatch(true);
1131
1151
 
1132
1152
  // src/schematic/schematic_layout_error.ts
1133
- import { z as z63 } from "zod";
1134
- var schematic_layout_error = z63.object({
1135
- type: z63.literal("schematic_layout_error"),
1153
+ import { z as z64 } from "zod";
1154
+ var schematic_layout_error = z64.object({
1155
+ type: z64.literal("schematic_layout_error"),
1136
1156
  schematic_layout_error_id: getZodPrefixedIdWithDefault(
1137
1157
  "schematic_layout_error"
1138
1158
  ),
1139
- error_type: z63.literal("schematic_layout_error").default("schematic_layout_error"),
1140
- message: z63.string(),
1141
- source_group_id: z63.string(),
1142
- schematic_group_id: z63.string(),
1143
- subcircuit_id: z63.string().optional()
1159
+ error_type: z64.literal("schematic_layout_error").default("schematic_layout_error"),
1160
+ message: z64.string(),
1161
+ source_group_id: z64.string(),
1162
+ schematic_group_id: z64.string(),
1163
+ subcircuit_id: z64.string().optional()
1144
1164
  }).describe("Error emitted when schematic layout fails for a group");
1145
1165
  expectTypesMatch(true);
1146
1166
 
1147
1167
  // src/schematic/schematic_debug_object.ts
1148
- import { z as z64 } from "zod";
1149
- var schematic_debug_object_base = z64.object({
1150
- type: z64.literal("schematic_debug_object"),
1151
- label: z64.string().optional(),
1152
- subcircuit_id: z64.string().optional()
1168
+ import { z as z65 } from "zod";
1169
+ var schematic_debug_object_base = z65.object({
1170
+ type: z65.literal("schematic_debug_object"),
1171
+ label: z65.string().optional(),
1172
+ subcircuit_id: z65.string().optional()
1153
1173
  });
1154
1174
  var schematic_debug_rect = schematic_debug_object_base.extend({
1155
- shape: z64.literal("rect"),
1175
+ shape: z65.literal("rect"),
1156
1176
  center: point,
1157
1177
  size
1158
1178
  });
1159
1179
  var schematic_debug_line = schematic_debug_object_base.extend({
1160
- shape: z64.literal("line"),
1180
+ shape: z65.literal("line"),
1161
1181
  start: point,
1162
1182
  end: point
1163
1183
  });
1164
1184
  var schematic_debug_point = schematic_debug_object_base.extend({
1165
- shape: z64.literal("point"),
1185
+ shape: z65.literal("point"),
1166
1186
  center: point
1167
1187
  });
1168
- var schematic_debug_object = z64.discriminatedUnion("shape", [
1188
+ var schematic_debug_object = z65.discriminatedUnion("shape", [
1169
1189
  schematic_debug_rect,
1170
1190
  schematic_debug_line,
1171
1191
  schematic_debug_point
@@ -1173,282 +1193,282 @@ var schematic_debug_object = z64.discriminatedUnion("shape", [
1173
1193
  expectTypesMatch(true);
1174
1194
 
1175
1195
  // src/schematic/schematic_voltage_probe.ts
1176
- import { z as z65 } from "zod";
1177
- var schematic_voltage_probe = z65.object({
1178
- type: z65.literal("schematic_voltage_probe"),
1179
- schematic_voltage_probe_id: z65.string(),
1180
- source_component_id: z65.string().optional(),
1181
- name: z65.string().optional(),
1196
+ import { z as z66 } from "zod";
1197
+ var schematic_voltage_probe = z66.object({
1198
+ type: z66.literal("schematic_voltage_probe"),
1199
+ schematic_voltage_probe_id: z66.string(),
1200
+ source_component_id: z66.string().optional(),
1201
+ name: z66.string().optional(),
1182
1202
  position: point,
1183
- schematic_trace_id: z65.string(),
1203
+ schematic_trace_id: z66.string(),
1184
1204
  voltage: voltage.optional(),
1185
- subcircuit_id: z65.string().optional(),
1186
- color: z65.string().optional(),
1205
+ subcircuit_id: z66.string().optional(),
1206
+ color: z66.string().optional(),
1187
1207
  label_alignment: ninePointAnchor.optional()
1188
1208
  }).describe("Defines a voltage probe measurement point on a schematic trace");
1189
1209
  expectTypesMatch(true);
1190
1210
 
1191
1211
  // src/schematic/schematic_manual_edit_conflict_warning.ts
1192
- import { z as z66 } from "zod";
1193
- var schematic_manual_edit_conflict_warning = z66.object({
1194
- type: z66.literal("schematic_manual_edit_conflict_warning"),
1212
+ import { z as z67 } from "zod";
1213
+ var schematic_manual_edit_conflict_warning = z67.object({
1214
+ type: z67.literal("schematic_manual_edit_conflict_warning"),
1195
1215
  schematic_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
1196
1216
  "schematic_manual_edit_conflict_warning"
1197
1217
  ),
1198
- warning_type: z66.literal("schematic_manual_edit_conflict_warning").default("schematic_manual_edit_conflict_warning"),
1199
- message: z66.string(),
1200
- schematic_component_id: z66.string(),
1201
- schematic_group_id: z66.string().optional(),
1202
- subcircuit_id: z66.string().optional(),
1203
- source_component_id: z66.string()
1218
+ warning_type: z67.literal("schematic_manual_edit_conflict_warning").default("schematic_manual_edit_conflict_warning"),
1219
+ message: z67.string(),
1220
+ schematic_component_id: z67.string(),
1221
+ schematic_group_id: z67.string().optional(),
1222
+ subcircuit_id: z67.string().optional(),
1223
+ source_component_id: z67.string()
1204
1224
  }).describe(
1205
1225
  "Warning emitted when a component has both manual placement and explicit schX/schY coordinates"
1206
1226
  );
1207
1227
  expectTypesMatch(true);
1208
1228
 
1209
1229
  // src/schematic/schematic_group.ts
1210
- import { z as z67 } from "zod";
1211
- var schematic_group = z67.object({
1212
- type: z67.literal("schematic_group"),
1230
+ import { z as z68 } from "zod";
1231
+ var schematic_group = z68.object({
1232
+ type: z68.literal("schematic_group"),
1213
1233
  schematic_group_id: getZodPrefixedIdWithDefault("schematic_group"),
1214
- source_group_id: z67.string(),
1215
- is_subcircuit: z67.boolean().optional(),
1216
- subcircuit_id: z67.string().optional(),
1234
+ source_group_id: z68.string(),
1235
+ is_subcircuit: z68.boolean().optional(),
1236
+ subcircuit_id: z68.string().optional(),
1217
1237
  width: length,
1218
1238
  height: length,
1219
1239
  center: point,
1220
- schematic_component_ids: z67.array(z67.string()),
1221
- show_as_schematic_box: z67.boolean().optional(),
1222
- name: z67.string().optional(),
1223
- description: z67.string().optional()
1240
+ schematic_component_ids: z68.array(z68.string()),
1241
+ show_as_schematic_box: z68.boolean().optional(),
1242
+ name: z68.string().optional(),
1243
+ description: z68.string().optional()
1224
1244
  }).describe("Defines a group of components on the schematic");
1225
1245
  expectTypesMatch(true);
1226
1246
 
1227
1247
  // src/schematic/schematic_table.ts
1228
- import { z as z68 } from "zod";
1229
- var schematic_table = z68.object({
1230
- type: z68.literal("schematic_table"),
1248
+ import { z as z69 } from "zod";
1249
+ var schematic_table = z69.object({
1250
+ type: z69.literal("schematic_table"),
1231
1251
  schematic_table_id: getZodPrefixedIdWithDefault("schematic_table"),
1232
1252
  anchor_position: point,
1233
- column_widths: z68.array(distance),
1234
- row_heights: z68.array(distance),
1253
+ column_widths: z69.array(distance),
1254
+ row_heights: z69.array(distance),
1235
1255
  cell_padding: distance.optional(),
1236
1256
  border_width: distance.optional(),
1237
- subcircuit_id: z68.string().optional(),
1238
- schematic_component_id: z68.string().optional(),
1257
+ subcircuit_id: z69.string().optional(),
1258
+ schematic_component_id: z69.string().optional(),
1239
1259
  anchor: ninePointAnchor.optional()
1240
1260
  }).describe("Defines a table on the schematic");
1241
1261
  expectTypesMatch(true);
1242
1262
 
1243
1263
  // src/schematic/schematic_table_cell.ts
1244
- import { z as z69 } from "zod";
1245
- var schematic_table_cell = z69.object({
1246
- type: z69.literal("schematic_table_cell"),
1264
+ import { z as z70 } from "zod";
1265
+ var schematic_table_cell = z70.object({
1266
+ type: z70.literal("schematic_table_cell"),
1247
1267
  schematic_table_cell_id: getZodPrefixedIdWithDefault(
1248
1268
  "schematic_table_cell"
1249
1269
  ),
1250
- schematic_table_id: z69.string(),
1251
- start_row_index: z69.number(),
1252
- end_row_index: z69.number(),
1253
- start_column_index: z69.number(),
1254
- end_column_index: z69.number(),
1255
- text: z69.string().optional(),
1270
+ schematic_table_id: z70.string(),
1271
+ start_row_index: z70.number(),
1272
+ end_row_index: z70.number(),
1273
+ start_column_index: z70.number(),
1274
+ end_column_index: z70.number(),
1275
+ text: z70.string().optional(),
1256
1276
  center: point,
1257
1277
  width: distance,
1258
1278
  height: distance,
1259
- horizontal_align: z69.enum(["left", "center", "right"]).optional(),
1260
- vertical_align: z69.enum(["top", "middle", "bottom"]).optional(),
1279
+ horizontal_align: z70.enum(["left", "center", "right"]).optional(),
1280
+ vertical_align: z70.enum(["top", "middle", "bottom"]).optional(),
1261
1281
  font_size: distance.optional(),
1262
- subcircuit_id: z69.string().optional()
1282
+ subcircuit_id: z70.string().optional()
1263
1283
  }).describe("Defines a cell within a schematic_table");
1264
1284
  expectTypesMatch(true);
1265
1285
 
1266
1286
  // src/schematic/schematic_sheet.ts
1267
- import { z as z70 } from "zod";
1268
- var schematic_sheet = z70.object({
1269
- type: z70.literal("schematic_sheet"),
1287
+ import { z as z71 } from "zod";
1288
+ var schematic_sheet = z71.object({
1289
+ type: z71.literal("schematic_sheet"),
1270
1290
  schematic_sheet_id: getZodPrefixedIdWithDefault("schematic_sheet"),
1271
- name: z70.string().optional(),
1272
- subcircuit_id: z70.string().optional()
1291
+ name: z71.string().optional(),
1292
+ subcircuit_id: z71.string().optional()
1273
1293
  }).describe(
1274
1294
  "Defines a schematic sheet or page that components can be placed on"
1275
1295
  );
1276
1296
  expectTypesMatch(true);
1277
1297
 
1278
1298
  // src/pcb/properties/brep.ts
1279
- import { z as z71 } from "zod";
1280
- var point_with_bulge = z71.object({
1299
+ import { z as z72 } from "zod";
1300
+ var point_with_bulge = z72.object({
1281
1301
  x: distance,
1282
1302
  y: distance,
1283
- bulge: z71.number().optional()
1303
+ bulge: z72.number().optional()
1284
1304
  });
1285
1305
  expectTypesMatch(true);
1286
- var ring = z71.object({
1287
- vertices: z71.array(point_with_bulge)
1306
+ var ring = z72.object({
1307
+ vertices: z72.array(point_with_bulge)
1288
1308
  });
1289
1309
  expectTypesMatch(true);
1290
- var brep_shape = z71.object({
1310
+ var brep_shape = z72.object({
1291
1311
  outer_ring: ring,
1292
- inner_rings: z71.array(ring).default([])
1312
+ inner_rings: z72.array(ring).default([])
1293
1313
  });
1294
1314
  expectTypesMatch(true);
1295
1315
 
1296
1316
  // src/pcb/properties/pcb_route_hints.ts
1297
- import { z as z72 } from "zod";
1298
- var pcb_route_hint = z72.object({
1317
+ import { z as z73 } from "zod";
1318
+ var pcb_route_hint = z73.object({
1299
1319
  x: distance,
1300
1320
  y: distance,
1301
- via: z72.boolean().optional(),
1321
+ via: z73.boolean().optional(),
1302
1322
  via_to_layer: layer_ref.optional()
1303
1323
  });
1304
- var pcb_route_hints = z72.array(pcb_route_hint);
1324
+ var pcb_route_hints = z73.array(pcb_route_hint);
1305
1325
  expectTypesMatch(true);
1306
1326
  expectTypesMatch(true);
1307
1327
 
1308
1328
  // src/pcb/properties/route_hint_point.ts
1309
- import { z as z73 } from "zod";
1310
- var route_hint_point = z73.object({
1329
+ import { z as z74 } from "zod";
1330
+ var route_hint_point = z74.object({
1311
1331
  x: distance,
1312
1332
  y: distance,
1313
- via: z73.boolean().optional(),
1333
+ via: z74.boolean().optional(),
1314
1334
  to_layer: layer_ref.optional(),
1315
1335
  trace_width: distance.optional()
1316
1336
  });
1317
1337
  expectTypesMatch(true);
1318
1338
 
1319
1339
  // src/pcb/pcb_component.ts
1320
- import { z as z74 } from "zod";
1321
- var pcb_component = z74.object({
1322
- type: z74.literal("pcb_component"),
1340
+ import { z as z75 } from "zod";
1341
+ var pcb_component = z75.object({
1342
+ type: z75.literal("pcb_component"),
1323
1343
  pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
1324
- source_component_id: z74.string(),
1344
+ source_component_id: z75.string(),
1325
1345
  center: point,
1326
1346
  layer: layer_ref,
1327
1347
  rotation,
1328
- display_offset_x: z74.string().optional().describe(
1348
+ display_offset_x: z75.string().optional().describe(
1329
1349
  "How to display the x offset for this part, usually corresponding with how the user specified it"
1330
1350
  ),
1331
- display_offset_y: z74.string().optional().describe(
1351
+ display_offset_y: z75.string().optional().describe(
1332
1352
  "How to display the y offset for this part, usually corresponding with how the user specified it"
1333
1353
  ),
1334
1354
  width: length,
1335
1355
  height: length,
1336
- do_not_place: z74.boolean().optional(),
1337
- subcircuit_id: z74.string().optional(),
1338
- pcb_group_id: z74.string().optional(),
1339
- position_mode: z74.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
1340
- positioned_relative_to_pcb_group_id: z74.string().optional(),
1341
- positioned_relative_to_pcb_board_id: z74.string().optional(),
1342
- obstructs_within_bounds: z74.boolean().default(true).describe(
1356
+ do_not_place: z75.boolean().optional(),
1357
+ subcircuit_id: z75.string().optional(),
1358
+ pcb_group_id: z75.string().optional(),
1359
+ position_mode: z75.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
1360
+ positioned_relative_to_pcb_group_id: z75.string().optional(),
1361
+ positioned_relative_to_pcb_board_id: z75.string().optional(),
1362
+ obstructs_within_bounds: z75.boolean().default(true).describe(
1343
1363
  "Does this component take up all the space within its bounds on a layer. This is generally true except for when separated pin headers are being represented by a single component (in which case, chips can be placed between the pin headers) or for tall modules where chips fit underneath"
1344
1364
  )
1345
1365
  }).describe("Defines a component on the PCB");
1346
1366
  expectTypesMatch(true);
1347
1367
 
1348
1368
  // src/pcb/pcb_hole.ts
1349
- import { z as z75 } from "zod";
1350
- var pcb_hole_circle = z75.object({
1351
- type: z75.literal("pcb_hole"),
1369
+ import { z as z76 } from "zod";
1370
+ var pcb_hole_circle = z76.object({
1371
+ type: z76.literal("pcb_hole"),
1352
1372
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1353
- pcb_group_id: z75.string().optional(),
1354
- subcircuit_id: z75.string().optional(),
1355
- pcb_component_id: z75.string().optional(),
1356
- hole_shape: z75.literal("circle"),
1357
- hole_diameter: z75.number(),
1373
+ pcb_group_id: z76.string().optional(),
1374
+ subcircuit_id: z76.string().optional(),
1375
+ pcb_component_id: z76.string().optional(),
1376
+ hole_shape: z76.literal("circle"),
1377
+ hole_diameter: z76.number(),
1358
1378
  x: distance,
1359
1379
  y: distance,
1360
- is_covered_with_solder_mask: z75.boolean().optional(),
1361
- soldermask_margin: z75.number().optional()
1380
+ is_covered_with_solder_mask: z76.boolean().optional(),
1381
+ soldermask_margin: z76.number().optional()
1362
1382
  });
1363
1383
  var pcb_hole_circle_shape = pcb_hole_circle.describe(
1364
1384
  "Defines a circular hole on the PCB"
1365
1385
  );
1366
1386
  expectTypesMatch(true);
1367
- var pcb_hole_rect = z75.object({
1368
- type: z75.literal("pcb_hole"),
1387
+ var pcb_hole_rect = z76.object({
1388
+ type: z76.literal("pcb_hole"),
1369
1389
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1370
- pcb_group_id: z75.string().optional(),
1371
- subcircuit_id: z75.string().optional(),
1372
- pcb_component_id: z75.string().optional(),
1373
- hole_shape: z75.literal("rect"),
1374
- hole_width: z75.number(),
1375
- hole_height: z75.number(),
1390
+ pcb_group_id: z76.string().optional(),
1391
+ subcircuit_id: z76.string().optional(),
1392
+ pcb_component_id: z76.string().optional(),
1393
+ hole_shape: z76.literal("rect"),
1394
+ hole_width: z76.number(),
1395
+ hole_height: z76.number(),
1376
1396
  x: distance,
1377
1397
  y: distance,
1378
- is_covered_with_solder_mask: z75.boolean().optional(),
1379
- soldermask_margin: z75.number().optional()
1398
+ is_covered_with_solder_mask: z76.boolean().optional(),
1399
+ soldermask_margin: z76.number().optional()
1380
1400
  });
1381
1401
  var pcb_hole_rect_shape = pcb_hole_rect.describe(
1382
1402
  "Defines a rectangular (square-capable) hole on the PCB. Use equal width/height for square."
1383
1403
  );
1384
1404
  expectTypesMatch(true);
1385
- var pcb_hole_circle_or_square = z75.object({
1386
- type: z75.literal("pcb_hole"),
1405
+ var pcb_hole_circle_or_square = z76.object({
1406
+ type: z76.literal("pcb_hole"),
1387
1407
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1388
- pcb_group_id: z75.string().optional(),
1389
- subcircuit_id: z75.string().optional(),
1390
- pcb_component_id: z75.string().optional(),
1391
- hole_shape: z75.enum(["circle", "square"]),
1392
- hole_diameter: z75.number(),
1408
+ pcb_group_id: z76.string().optional(),
1409
+ subcircuit_id: z76.string().optional(),
1410
+ pcb_component_id: z76.string().optional(),
1411
+ hole_shape: z76.enum(["circle", "square"]),
1412
+ hole_diameter: z76.number(),
1393
1413
  x: distance,
1394
1414
  y: distance,
1395
- is_covered_with_solder_mask: z75.boolean().optional(),
1396
- soldermask_margin: z75.number().optional()
1415
+ is_covered_with_solder_mask: z76.boolean().optional(),
1416
+ soldermask_margin: z76.number().optional()
1397
1417
  });
1398
1418
  var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
1399
1419
  "Defines a circular or square hole on the PCB"
1400
1420
  );
1401
1421
  expectTypesMatch(true);
1402
- var pcb_hole_oval = z75.object({
1403
- type: z75.literal("pcb_hole"),
1422
+ var pcb_hole_oval = z76.object({
1423
+ type: z76.literal("pcb_hole"),
1404
1424
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1405
- pcb_group_id: z75.string().optional(),
1406
- subcircuit_id: z75.string().optional(),
1407
- pcb_component_id: z75.string().optional(),
1408
- hole_shape: z75.literal("oval"),
1409
- hole_width: z75.number(),
1410
- hole_height: z75.number(),
1425
+ pcb_group_id: z76.string().optional(),
1426
+ subcircuit_id: z76.string().optional(),
1427
+ pcb_component_id: z76.string().optional(),
1428
+ hole_shape: z76.literal("oval"),
1429
+ hole_width: z76.number(),
1430
+ hole_height: z76.number(),
1411
1431
  x: distance,
1412
1432
  y: distance,
1413
- is_covered_with_solder_mask: z75.boolean().optional(),
1414
- soldermask_margin: z75.number().optional()
1433
+ is_covered_with_solder_mask: z76.boolean().optional(),
1434
+ soldermask_margin: z76.number().optional()
1415
1435
  });
1416
1436
  var pcb_hole_oval_shape = pcb_hole_oval.describe(
1417
1437
  "Defines an oval hole on the PCB"
1418
1438
  );
1419
1439
  expectTypesMatch(true);
1420
- var pcb_hole_pill = z75.object({
1421
- type: z75.literal("pcb_hole"),
1440
+ var pcb_hole_pill = z76.object({
1441
+ type: z76.literal("pcb_hole"),
1422
1442
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1423
- pcb_group_id: z75.string().optional(),
1424
- subcircuit_id: z75.string().optional(),
1425
- pcb_component_id: z75.string().optional(),
1426
- hole_shape: z75.literal("pill"),
1427
- hole_width: z75.number(),
1428
- hole_height: z75.number(),
1443
+ pcb_group_id: z76.string().optional(),
1444
+ subcircuit_id: z76.string().optional(),
1445
+ pcb_component_id: z76.string().optional(),
1446
+ hole_shape: z76.literal("pill"),
1447
+ hole_width: z76.number(),
1448
+ hole_height: z76.number(),
1429
1449
  x: distance,
1430
1450
  y: distance,
1431
- is_covered_with_solder_mask: z75.boolean().optional(),
1432
- soldermask_margin: z75.number().optional()
1451
+ is_covered_with_solder_mask: z76.boolean().optional(),
1452
+ soldermask_margin: z76.number().optional()
1433
1453
  });
1434
1454
  var pcb_hole_pill_shape = pcb_hole_pill.describe(
1435
1455
  "Defines a pill-shaped hole on the PCB"
1436
1456
  );
1437
1457
  expectTypesMatch(true);
1438
- var pcb_hole_rotated_pill = z75.object({
1439
- type: z75.literal("pcb_hole"),
1458
+ var pcb_hole_rotated_pill = z76.object({
1459
+ type: z76.literal("pcb_hole"),
1440
1460
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1441
- pcb_group_id: z75.string().optional(),
1442
- subcircuit_id: z75.string().optional(),
1443
- pcb_component_id: z75.string().optional(),
1444
- hole_shape: z75.literal("rotated_pill"),
1445
- hole_width: z75.number(),
1446
- hole_height: z75.number(),
1461
+ pcb_group_id: z76.string().optional(),
1462
+ subcircuit_id: z76.string().optional(),
1463
+ pcb_component_id: z76.string().optional(),
1464
+ hole_shape: z76.literal("rotated_pill"),
1465
+ hole_width: z76.number(),
1466
+ hole_height: z76.number(),
1447
1467
  x: distance,
1448
1468
  y: distance,
1449
1469
  ccw_rotation: rotation,
1450
- is_covered_with_solder_mask: z75.boolean().optional(),
1451
- soldermask_margin: z75.number().optional()
1470
+ is_covered_with_solder_mask: z76.boolean().optional(),
1471
+ soldermask_margin: z76.number().optional()
1452
1472
  });
1453
1473
  var pcb_hole_rotated_pill_shape = pcb_hole_rotated_pill.describe(
1454
1474
  "Defines a rotated pill-shaped hole on the PCB"
@@ -1457,145 +1477,145 @@ expectTypesMatch(true);
1457
1477
  var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval).or(pcb_hole_pill).or(pcb_hole_rotated_pill).or(pcb_hole_circle).or(pcb_hole_rect);
1458
1478
 
1459
1479
  // src/pcb/pcb_plated_hole.ts
1460
- import { z as z76 } from "zod";
1461
- var pcb_plated_hole_circle = z76.object({
1462
- type: z76.literal("pcb_plated_hole"),
1463
- shape: z76.literal("circle"),
1464
- pcb_group_id: z76.string().optional(),
1465
- subcircuit_id: z76.string().optional(),
1466
- outer_diameter: z76.number(),
1467
- hole_diameter: z76.number(),
1468
- is_covered_with_solder_mask: z76.boolean().optional(),
1480
+ import { z as z77 } from "zod";
1481
+ var pcb_plated_hole_circle = z77.object({
1482
+ type: z77.literal("pcb_plated_hole"),
1483
+ shape: z77.literal("circle"),
1484
+ pcb_group_id: z77.string().optional(),
1485
+ subcircuit_id: z77.string().optional(),
1486
+ outer_diameter: z77.number(),
1487
+ hole_diameter: z77.number(),
1488
+ is_covered_with_solder_mask: z77.boolean().optional(),
1469
1489
  x: distance,
1470
1490
  y: distance,
1471
- layers: z76.array(layer_ref),
1472
- port_hints: z76.array(z76.string()).optional(),
1473
- pcb_component_id: z76.string().optional(),
1474
- pcb_port_id: z76.string().optional(),
1491
+ layers: z77.array(layer_ref),
1492
+ port_hints: z77.array(z77.string()).optional(),
1493
+ pcb_component_id: z77.string().optional(),
1494
+ pcb_port_id: z77.string().optional(),
1475
1495
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1476
- soldermask_margin: z76.number().optional()
1496
+ soldermask_margin: z77.number().optional()
1477
1497
  });
1478
- var pcb_plated_hole_oval = z76.object({
1479
- type: z76.literal("pcb_plated_hole"),
1480
- shape: z76.enum(["oval", "pill"]),
1481
- pcb_group_id: z76.string().optional(),
1482
- subcircuit_id: z76.string().optional(),
1483
- outer_width: z76.number(),
1484
- outer_height: z76.number(),
1485
- hole_width: z76.number(),
1486
- hole_height: z76.number(),
1487
- is_covered_with_solder_mask: z76.boolean().optional(),
1498
+ var pcb_plated_hole_oval = z77.object({
1499
+ type: z77.literal("pcb_plated_hole"),
1500
+ shape: z77.enum(["oval", "pill"]),
1501
+ pcb_group_id: z77.string().optional(),
1502
+ subcircuit_id: z77.string().optional(),
1503
+ outer_width: z77.number(),
1504
+ outer_height: z77.number(),
1505
+ hole_width: z77.number(),
1506
+ hole_height: z77.number(),
1507
+ is_covered_with_solder_mask: z77.boolean().optional(),
1488
1508
  x: distance,
1489
1509
  y: distance,
1490
1510
  ccw_rotation: rotation,
1491
- layers: z76.array(layer_ref),
1492
- port_hints: z76.array(z76.string()).optional(),
1493
- pcb_component_id: z76.string().optional(),
1494
- pcb_port_id: z76.string().optional(),
1511
+ layers: z77.array(layer_ref),
1512
+ port_hints: z77.array(z77.string()).optional(),
1513
+ pcb_component_id: z77.string().optional(),
1514
+ pcb_port_id: z77.string().optional(),
1495
1515
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1496
- soldermask_margin: z76.number().optional()
1516
+ soldermask_margin: z77.number().optional()
1497
1517
  });
1498
- var pcb_circular_hole_with_rect_pad = z76.object({
1499
- type: z76.literal("pcb_plated_hole"),
1500
- shape: z76.literal("circular_hole_with_rect_pad"),
1501
- pcb_group_id: z76.string().optional(),
1502
- subcircuit_id: z76.string().optional(),
1503
- hole_shape: z76.literal("circle"),
1504
- pad_shape: z76.literal("rect"),
1505
- hole_diameter: z76.number(),
1506
- rect_pad_width: z76.number(),
1507
- rect_pad_height: z76.number(),
1508
- rect_border_radius: z76.number().optional(),
1518
+ var pcb_circular_hole_with_rect_pad = z77.object({
1519
+ type: z77.literal("pcb_plated_hole"),
1520
+ shape: z77.literal("circular_hole_with_rect_pad"),
1521
+ pcb_group_id: z77.string().optional(),
1522
+ subcircuit_id: z77.string().optional(),
1523
+ hole_shape: z77.literal("circle"),
1524
+ pad_shape: z77.literal("rect"),
1525
+ hole_diameter: z77.number(),
1526
+ rect_pad_width: z77.number(),
1527
+ rect_pad_height: z77.number(),
1528
+ rect_border_radius: z77.number().optional(),
1509
1529
  hole_offset_x: distance.default(0),
1510
1530
  hole_offset_y: distance.default(0),
1511
- is_covered_with_solder_mask: z76.boolean().optional(),
1531
+ is_covered_with_solder_mask: z77.boolean().optional(),
1512
1532
  x: distance,
1513
1533
  y: distance,
1514
- layers: z76.array(layer_ref),
1515
- port_hints: z76.array(z76.string()).optional(),
1516
- pcb_component_id: z76.string().optional(),
1517
- pcb_port_id: z76.string().optional(),
1534
+ layers: z77.array(layer_ref),
1535
+ port_hints: z77.array(z77.string()).optional(),
1536
+ pcb_component_id: z77.string().optional(),
1537
+ pcb_port_id: z77.string().optional(),
1518
1538
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1519
- soldermask_margin: z76.number().optional()
1539
+ soldermask_margin: z77.number().optional()
1520
1540
  });
1521
- var pcb_pill_hole_with_rect_pad = z76.object({
1522
- type: z76.literal("pcb_plated_hole"),
1523
- shape: z76.literal("pill_hole_with_rect_pad"),
1524
- pcb_group_id: z76.string().optional(),
1525
- subcircuit_id: z76.string().optional(),
1526
- hole_shape: z76.literal("pill"),
1527
- pad_shape: z76.literal("rect"),
1528
- hole_width: z76.number(),
1529
- hole_height: z76.number(),
1530
- rect_pad_width: z76.number(),
1531
- rect_pad_height: z76.number(),
1532
- rect_border_radius: z76.number().optional(),
1541
+ var pcb_pill_hole_with_rect_pad = z77.object({
1542
+ type: z77.literal("pcb_plated_hole"),
1543
+ shape: z77.literal("pill_hole_with_rect_pad"),
1544
+ pcb_group_id: z77.string().optional(),
1545
+ subcircuit_id: z77.string().optional(),
1546
+ hole_shape: z77.literal("pill"),
1547
+ pad_shape: z77.literal("rect"),
1548
+ hole_width: z77.number(),
1549
+ hole_height: z77.number(),
1550
+ rect_pad_width: z77.number(),
1551
+ rect_pad_height: z77.number(),
1552
+ rect_border_radius: z77.number().optional(),
1533
1553
  hole_offset_x: distance.default(0),
1534
1554
  hole_offset_y: distance.default(0),
1535
- is_covered_with_solder_mask: z76.boolean().optional(),
1555
+ is_covered_with_solder_mask: z77.boolean().optional(),
1536
1556
  x: distance,
1537
1557
  y: distance,
1538
- layers: z76.array(layer_ref),
1539
- port_hints: z76.array(z76.string()).optional(),
1540
- pcb_component_id: z76.string().optional(),
1541
- pcb_port_id: z76.string().optional(),
1558
+ layers: z77.array(layer_ref),
1559
+ port_hints: z77.array(z77.string()).optional(),
1560
+ pcb_component_id: z77.string().optional(),
1561
+ pcb_port_id: z77.string().optional(),
1542
1562
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1543
- soldermask_margin: z76.number().optional()
1563
+ soldermask_margin: z77.number().optional()
1544
1564
  });
1545
- var pcb_rotated_pill_hole_with_rect_pad = z76.object({
1546
- type: z76.literal("pcb_plated_hole"),
1547
- shape: z76.literal("rotated_pill_hole_with_rect_pad"),
1548
- pcb_group_id: z76.string().optional(),
1549
- subcircuit_id: z76.string().optional(),
1550
- hole_shape: z76.literal("rotated_pill"),
1551
- pad_shape: z76.literal("rect"),
1552
- hole_width: z76.number(),
1553
- hole_height: z76.number(),
1565
+ var pcb_rotated_pill_hole_with_rect_pad = z77.object({
1566
+ type: z77.literal("pcb_plated_hole"),
1567
+ shape: z77.literal("rotated_pill_hole_with_rect_pad"),
1568
+ pcb_group_id: z77.string().optional(),
1569
+ subcircuit_id: z77.string().optional(),
1570
+ hole_shape: z77.literal("rotated_pill"),
1571
+ pad_shape: z77.literal("rect"),
1572
+ hole_width: z77.number(),
1573
+ hole_height: z77.number(),
1554
1574
  hole_ccw_rotation: rotation,
1555
- rect_pad_width: z76.number(),
1556
- rect_pad_height: z76.number(),
1557
- rect_border_radius: z76.number().optional(),
1575
+ rect_pad_width: z77.number(),
1576
+ rect_pad_height: z77.number(),
1577
+ rect_border_radius: z77.number().optional(),
1558
1578
  rect_ccw_rotation: rotation,
1559
1579
  hole_offset_x: distance.default(0),
1560
1580
  hole_offset_y: distance.default(0),
1561
- is_covered_with_solder_mask: z76.boolean().optional(),
1581
+ is_covered_with_solder_mask: z77.boolean().optional(),
1562
1582
  x: distance,
1563
1583
  y: distance,
1564
- layers: z76.array(layer_ref),
1565
- port_hints: z76.array(z76.string()).optional(),
1566
- pcb_component_id: z76.string().optional(),
1567
- pcb_port_id: z76.string().optional(),
1584
+ layers: z77.array(layer_ref),
1585
+ port_hints: z77.array(z77.string()).optional(),
1586
+ pcb_component_id: z77.string().optional(),
1587
+ pcb_port_id: z77.string().optional(),
1568
1588
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1569
- soldermask_margin: z76.number().optional()
1589
+ soldermask_margin: z77.number().optional()
1570
1590
  });
1571
- var pcb_hole_with_polygon_pad = z76.object({
1572
- type: z76.literal("pcb_plated_hole"),
1573
- shape: z76.literal("hole_with_polygon_pad"),
1574
- pcb_group_id: z76.string().optional(),
1575
- subcircuit_id: z76.string().optional(),
1576
- hole_shape: z76.enum(["circle", "oval", "pill", "rotated_pill"]),
1577
- hole_diameter: z76.number().optional(),
1578
- hole_width: z76.number().optional(),
1579
- hole_height: z76.number().optional(),
1580
- pad_outline: z76.array(
1581
- z76.object({
1591
+ var pcb_hole_with_polygon_pad = z77.object({
1592
+ type: z77.literal("pcb_plated_hole"),
1593
+ shape: z77.literal("hole_with_polygon_pad"),
1594
+ pcb_group_id: z77.string().optional(),
1595
+ subcircuit_id: z77.string().optional(),
1596
+ hole_shape: z77.enum(["circle", "oval", "pill", "rotated_pill"]),
1597
+ hole_diameter: z77.number().optional(),
1598
+ hole_width: z77.number().optional(),
1599
+ hole_height: z77.number().optional(),
1600
+ pad_outline: z77.array(
1601
+ z77.object({
1582
1602
  x: distance,
1583
1603
  y: distance
1584
1604
  })
1585
1605
  ).min(3),
1586
1606
  hole_offset_x: distance.default(0),
1587
1607
  hole_offset_y: distance.default(0),
1588
- is_covered_with_solder_mask: z76.boolean().optional(),
1608
+ is_covered_with_solder_mask: z77.boolean().optional(),
1589
1609
  x: distance,
1590
1610
  y: distance,
1591
- layers: z76.array(layer_ref),
1592
- port_hints: z76.array(z76.string()).optional(),
1593
- pcb_component_id: z76.string().optional(),
1594
- pcb_port_id: z76.string().optional(),
1611
+ layers: z77.array(layer_ref),
1612
+ port_hints: z77.array(z77.string()).optional(),
1613
+ pcb_component_id: z77.string().optional(),
1614
+ pcb_port_id: z77.string().optional(),
1595
1615
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole"),
1596
- soldermask_margin: z76.number().optional()
1616
+ soldermask_margin: z77.number().optional()
1597
1617
  });
1598
- var pcb_plated_hole = z76.union([
1618
+ var pcb_plated_hole = z77.union([
1599
1619
  pcb_plated_hole_circle,
1600
1620
  pcb_plated_hole_oval,
1601
1621
  pcb_circular_hole_with_rect_pad,
@@ -1613,130 +1633,130 @@ expectTypesMatch(true);
1613
1633
  expectTypesMatch(true);
1614
1634
 
1615
1635
  // src/pcb/pcb_port.ts
1616
- import { z as z77 } from "zod";
1617
- var pcb_port = z77.object({
1618
- type: z77.literal("pcb_port"),
1636
+ import { z as z78 } from "zod";
1637
+ var pcb_port = z78.object({
1638
+ type: z78.literal("pcb_port"),
1619
1639
  pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
1620
- pcb_group_id: z77.string().optional(),
1621
- subcircuit_id: z77.string().optional(),
1622
- source_port_id: z77.string(),
1623
- pcb_component_id: z77.string().optional(),
1640
+ pcb_group_id: z78.string().optional(),
1641
+ subcircuit_id: z78.string().optional(),
1642
+ source_port_id: z78.string(),
1643
+ pcb_component_id: z78.string().optional(),
1624
1644
  x: distance,
1625
1645
  y: distance,
1626
- layers: z77.array(layer_ref),
1627
- is_board_pinout: z77.boolean().optional()
1646
+ layers: z78.array(layer_ref),
1647
+ is_board_pinout: z78.boolean().optional()
1628
1648
  }).describe("Defines a port on the PCB");
1629
1649
  expectTypesMatch(true);
1630
1650
 
1631
1651
  // src/pcb/pcb_smtpad.ts
1632
- import { z as z78 } from "zod";
1633
- var pcb_smtpad_circle = z78.object({
1634
- type: z78.literal("pcb_smtpad"),
1635
- shape: z78.literal("circle"),
1652
+ import { z as z79 } from "zod";
1653
+ var pcb_smtpad_circle = z79.object({
1654
+ type: z79.literal("pcb_smtpad"),
1655
+ shape: z79.literal("circle"),
1636
1656
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1637
- pcb_group_id: z78.string().optional(),
1638
- subcircuit_id: z78.string().optional(),
1657
+ pcb_group_id: z79.string().optional(),
1658
+ subcircuit_id: z79.string().optional(),
1639
1659
  x: distance,
1640
1660
  y: distance,
1641
- radius: z78.number(),
1661
+ radius: z79.number(),
1642
1662
  layer: layer_ref,
1643
- port_hints: z78.array(z78.string()).optional(),
1644
- pcb_component_id: z78.string().optional(),
1645
- pcb_port_id: z78.string().optional(),
1646
- is_covered_with_solder_mask: z78.boolean().optional(),
1647
- soldermask_margin: z78.number().optional()
1663
+ port_hints: z79.array(z79.string()).optional(),
1664
+ pcb_component_id: z79.string().optional(),
1665
+ pcb_port_id: z79.string().optional(),
1666
+ is_covered_with_solder_mask: z79.boolean().optional(),
1667
+ soldermask_margin: z79.number().optional()
1648
1668
  });
1649
- var pcb_smtpad_rect = z78.object({
1650
- type: z78.literal("pcb_smtpad"),
1651
- shape: z78.literal("rect"),
1669
+ var pcb_smtpad_rect = z79.object({
1670
+ type: z79.literal("pcb_smtpad"),
1671
+ shape: z79.literal("rect"),
1652
1672
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1653
- pcb_group_id: z78.string().optional(),
1654
- subcircuit_id: z78.string().optional(),
1673
+ pcb_group_id: z79.string().optional(),
1674
+ subcircuit_id: z79.string().optional(),
1655
1675
  x: distance,
1656
1676
  y: distance,
1657
- width: z78.number(),
1658
- height: z78.number(),
1659
- rect_border_radius: z78.number().optional(),
1660
- corner_radius: z78.number().optional(),
1677
+ width: z79.number(),
1678
+ height: z79.number(),
1679
+ rect_border_radius: z79.number().optional(),
1680
+ corner_radius: z79.number().optional(),
1661
1681
  layer: layer_ref,
1662
- port_hints: z78.array(z78.string()).optional(),
1663
- pcb_component_id: z78.string().optional(),
1664
- pcb_port_id: z78.string().optional(),
1665
- is_covered_with_solder_mask: z78.boolean().optional(),
1666
- soldermask_margin: z78.number().optional()
1682
+ port_hints: z79.array(z79.string()).optional(),
1683
+ pcb_component_id: z79.string().optional(),
1684
+ pcb_port_id: z79.string().optional(),
1685
+ is_covered_with_solder_mask: z79.boolean().optional(),
1686
+ soldermask_margin: z79.number().optional()
1667
1687
  });
1668
- var pcb_smtpad_rotated_rect = z78.object({
1669
- type: z78.literal("pcb_smtpad"),
1670
- shape: z78.literal("rotated_rect"),
1688
+ var pcb_smtpad_rotated_rect = z79.object({
1689
+ type: z79.literal("pcb_smtpad"),
1690
+ shape: z79.literal("rotated_rect"),
1671
1691
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1672
- pcb_group_id: z78.string().optional(),
1673
- subcircuit_id: z78.string().optional(),
1692
+ pcb_group_id: z79.string().optional(),
1693
+ subcircuit_id: z79.string().optional(),
1674
1694
  x: distance,
1675
1695
  y: distance,
1676
- width: z78.number(),
1677
- height: z78.number(),
1678
- rect_border_radius: z78.number().optional(),
1679
- corner_radius: z78.number().optional(),
1696
+ width: z79.number(),
1697
+ height: z79.number(),
1698
+ rect_border_radius: z79.number().optional(),
1699
+ corner_radius: z79.number().optional(),
1680
1700
  ccw_rotation: rotation,
1681
1701
  layer: layer_ref,
1682
- port_hints: z78.array(z78.string()).optional(),
1683
- pcb_component_id: z78.string().optional(),
1684
- pcb_port_id: z78.string().optional(),
1685
- is_covered_with_solder_mask: z78.boolean().optional(),
1686
- soldermask_margin: z78.number().optional()
1702
+ port_hints: z79.array(z79.string()).optional(),
1703
+ pcb_component_id: z79.string().optional(),
1704
+ pcb_port_id: z79.string().optional(),
1705
+ is_covered_with_solder_mask: z79.boolean().optional(),
1706
+ soldermask_margin: z79.number().optional()
1687
1707
  });
1688
- var pcb_smtpad_pill = z78.object({
1689
- type: z78.literal("pcb_smtpad"),
1690
- shape: z78.literal("pill"),
1708
+ var pcb_smtpad_pill = z79.object({
1709
+ type: z79.literal("pcb_smtpad"),
1710
+ shape: z79.literal("pill"),
1691
1711
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1692
- pcb_group_id: z78.string().optional(),
1693
- subcircuit_id: z78.string().optional(),
1712
+ pcb_group_id: z79.string().optional(),
1713
+ subcircuit_id: z79.string().optional(),
1694
1714
  x: distance,
1695
1715
  y: distance,
1696
- width: z78.number(),
1697
- height: z78.number(),
1698
- radius: z78.number(),
1716
+ width: z79.number(),
1717
+ height: z79.number(),
1718
+ radius: z79.number(),
1699
1719
  layer: layer_ref,
1700
- port_hints: z78.array(z78.string()).optional(),
1701
- pcb_component_id: z78.string().optional(),
1702
- pcb_port_id: z78.string().optional(),
1703
- is_covered_with_solder_mask: z78.boolean().optional(),
1704
- soldermask_margin: z78.number().optional()
1720
+ port_hints: z79.array(z79.string()).optional(),
1721
+ pcb_component_id: z79.string().optional(),
1722
+ pcb_port_id: z79.string().optional(),
1723
+ is_covered_with_solder_mask: z79.boolean().optional(),
1724
+ soldermask_margin: z79.number().optional()
1705
1725
  });
1706
- var pcb_smtpad_rotated_pill = z78.object({
1707
- type: z78.literal("pcb_smtpad"),
1708
- shape: z78.literal("rotated_pill"),
1726
+ var pcb_smtpad_rotated_pill = z79.object({
1727
+ type: z79.literal("pcb_smtpad"),
1728
+ shape: z79.literal("rotated_pill"),
1709
1729
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1710
- pcb_group_id: z78.string().optional(),
1711
- subcircuit_id: z78.string().optional(),
1730
+ pcb_group_id: z79.string().optional(),
1731
+ subcircuit_id: z79.string().optional(),
1712
1732
  x: distance,
1713
1733
  y: distance,
1714
- width: z78.number(),
1715
- height: z78.number(),
1716
- radius: z78.number(),
1734
+ width: z79.number(),
1735
+ height: z79.number(),
1736
+ radius: z79.number(),
1717
1737
  ccw_rotation: rotation,
1718
1738
  layer: layer_ref,
1719
- port_hints: z78.array(z78.string()).optional(),
1720
- pcb_component_id: z78.string().optional(),
1721
- pcb_port_id: z78.string().optional(),
1722
- is_covered_with_solder_mask: z78.boolean().optional(),
1723
- soldermask_margin: z78.number().optional()
1739
+ port_hints: z79.array(z79.string()).optional(),
1740
+ pcb_component_id: z79.string().optional(),
1741
+ pcb_port_id: z79.string().optional(),
1742
+ is_covered_with_solder_mask: z79.boolean().optional(),
1743
+ soldermask_margin: z79.number().optional()
1724
1744
  });
1725
- var pcb_smtpad_polygon = z78.object({
1726
- type: z78.literal("pcb_smtpad"),
1727
- shape: z78.literal("polygon"),
1745
+ var pcb_smtpad_polygon = z79.object({
1746
+ type: z79.literal("pcb_smtpad"),
1747
+ shape: z79.literal("polygon"),
1728
1748
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1729
- pcb_group_id: z78.string().optional(),
1730
- subcircuit_id: z78.string().optional(),
1731
- points: z78.array(point),
1749
+ pcb_group_id: z79.string().optional(),
1750
+ subcircuit_id: z79.string().optional(),
1751
+ points: z79.array(point),
1732
1752
  layer: layer_ref,
1733
- port_hints: z78.array(z78.string()).optional(),
1734
- pcb_component_id: z78.string().optional(),
1735
- pcb_port_id: z78.string().optional(),
1736
- is_covered_with_solder_mask: z78.boolean().optional(),
1737
- soldermask_margin: z78.number().optional()
1753
+ port_hints: z79.array(z79.string()).optional(),
1754
+ pcb_component_id: z79.string().optional(),
1755
+ pcb_port_id: z79.string().optional(),
1756
+ is_covered_with_solder_mask: z79.boolean().optional(),
1757
+ soldermask_margin: z79.number().optional()
1738
1758
  });
1739
- var pcb_smtpad = z78.discriminatedUnion("shape", [
1759
+ var pcb_smtpad = z79.discriminatedUnion("shape", [
1740
1760
  pcb_smtpad_circle,
1741
1761
  pcb_smtpad_rect,
1742
1762
  pcb_smtpad_rotated_rect,
@@ -1752,79 +1772,79 @@ expectTypesMatch(true);
1752
1772
  expectTypesMatch(true);
1753
1773
 
1754
1774
  // src/pcb/pcb_solder_paste.ts
1755
- import { z as z79 } from "zod";
1756
- var pcb_solder_paste_circle = z79.object({
1757
- type: z79.literal("pcb_solder_paste"),
1758
- shape: z79.literal("circle"),
1775
+ import { z as z80 } from "zod";
1776
+ var pcb_solder_paste_circle = z80.object({
1777
+ type: z80.literal("pcb_solder_paste"),
1778
+ shape: z80.literal("circle"),
1759
1779
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1760
- pcb_group_id: z79.string().optional(),
1761
- subcircuit_id: z79.string().optional(),
1780
+ pcb_group_id: z80.string().optional(),
1781
+ subcircuit_id: z80.string().optional(),
1762
1782
  x: distance,
1763
1783
  y: distance,
1764
- radius: z79.number(),
1784
+ radius: z80.number(),
1765
1785
  layer: layer_ref,
1766
- pcb_component_id: z79.string().optional(),
1767
- pcb_smtpad_id: z79.string().optional()
1786
+ pcb_component_id: z80.string().optional(),
1787
+ pcb_smtpad_id: z80.string().optional()
1768
1788
  });
1769
- var pcb_solder_paste_rect = z79.object({
1770
- type: z79.literal("pcb_solder_paste"),
1771
- shape: z79.literal("rect"),
1789
+ var pcb_solder_paste_rect = z80.object({
1790
+ type: z80.literal("pcb_solder_paste"),
1791
+ shape: z80.literal("rect"),
1772
1792
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1773
- pcb_group_id: z79.string().optional(),
1774
- subcircuit_id: z79.string().optional(),
1793
+ pcb_group_id: z80.string().optional(),
1794
+ subcircuit_id: z80.string().optional(),
1775
1795
  x: distance,
1776
1796
  y: distance,
1777
- width: z79.number(),
1778
- height: z79.number(),
1797
+ width: z80.number(),
1798
+ height: z80.number(),
1779
1799
  layer: layer_ref,
1780
- pcb_component_id: z79.string().optional(),
1781
- pcb_smtpad_id: z79.string().optional()
1800
+ pcb_component_id: z80.string().optional(),
1801
+ pcb_smtpad_id: z80.string().optional()
1782
1802
  });
1783
- var pcb_solder_paste_pill = z79.object({
1784
- type: z79.literal("pcb_solder_paste"),
1785
- shape: z79.literal("pill"),
1803
+ var pcb_solder_paste_pill = z80.object({
1804
+ type: z80.literal("pcb_solder_paste"),
1805
+ shape: z80.literal("pill"),
1786
1806
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1787
- pcb_group_id: z79.string().optional(),
1788
- subcircuit_id: z79.string().optional(),
1807
+ pcb_group_id: z80.string().optional(),
1808
+ subcircuit_id: z80.string().optional(),
1789
1809
  x: distance,
1790
1810
  y: distance,
1791
- width: z79.number(),
1792
- height: z79.number(),
1793
- radius: z79.number(),
1811
+ width: z80.number(),
1812
+ height: z80.number(),
1813
+ radius: z80.number(),
1794
1814
  layer: layer_ref,
1795
- pcb_component_id: z79.string().optional(),
1796
- pcb_smtpad_id: z79.string().optional()
1815
+ pcb_component_id: z80.string().optional(),
1816
+ pcb_smtpad_id: z80.string().optional()
1797
1817
  });
1798
- var pcb_solder_paste_rotated_rect = z79.object({
1799
- type: z79.literal("pcb_solder_paste"),
1800
- shape: z79.literal("rotated_rect"),
1818
+ var pcb_solder_paste_rotated_rect = z80.object({
1819
+ type: z80.literal("pcb_solder_paste"),
1820
+ shape: z80.literal("rotated_rect"),
1801
1821
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1802
- pcb_group_id: z79.string().optional(),
1803
- subcircuit_id: z79.string().optional(),
1822
+ pcb_group_id: z80.string().optional(),
1823
+ subcircuit_id: z80.string().optional(),
1804
1824
  x: distance,
1805
1825
  y: distance,
1806
- width: z79.number(),
1807
- height: z79.number(),
1826
+ width: z80.number(),
1827
+ height: z80.number(),
1808
1828
  ccw_rotation: distance,
1809
1829
  layer: layer_ref,
1810
- pcb_component_id: z79.string().optional(),
1811
- pcb_smtpad_id: z79.string().optional()
1830
+ pcb_component_id: z80.string().optional(),
1831
+ pcb_smtpad_id: z80.string().optional()
1812
1832
  });
1813
- var pcb_solder_paste_oval = z79.object({
1814
- type: z79.literal("pcb_solder_paste"),
1815
- shape: z79.literal("oval"),
1833
+ var pcb_solder_paste_oval = z80.object({
1834
+ type: z80.literal("pcb_solder_paste"),
1835
+ shape: z80.literal("oval"),
1816
1836
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1817
- pcb_group_id: z79.string().optional(),
1818
- subcircuit_id: z79.string().optional(),
1837
+ pcb_group_id: z80.string().optional(),
1838
+ subcircuit_id: z80.string().optional(),
1819
1839
  x: distance,
1820
1840
  y: distance,
1821
- width: z79.number(),
1822
- height: z79.number(),
1841
+ width: z80.number(),
1842
+ height: z80.number(),
1823
1843
  layer: layer_ref,
1824
- pcb_component_id: z79.string().optional(),
1825
- pcb_smtpad_id: z79.string().optional()
1844
+ pcb_component_id: z80.string().optional(),
1845
+ pcb_smtpad_id: z80.string().optional()
1826
1846
  });
1827
- var pcb_solder_paste = z79.union([
1847
+ var pcb_solder_paste = z80.union([
1828
1848
  pcb_solder_paste_circle,
1829
1849
  pcb_solder_paste_rect,
1830
1850
  pcb_solder_paste_pill,
@@ -1840,146 +1860,146 @@ expectTypesMatch(
1840
1860
  expectTypesMatch(true);
1841
1861
 
1842
1862
  // src/pcb/pcb_text.ts
1843
- import { z as z80 } from "zod";
1844
- var pcb_text = z80.object({
1845
- type: z80.literal("pcb_text"),
1863
+ import { z as z81 } from "zod";
1864
+ var pcb_text = z81.object({
1865
+ type: z81.literal("pcb_text"),
1846
1866
  pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
1847
- pcb_group_id: z80.string().optional(),
1848
- subcircuit_id: z80.string().optional(),
1849
- text: z80.string(),
1867
+ pcb_group_id: z81.string().optional(),
1868
+ subcircuit_id: z81.string().optional(),
1869
+ text: z81.string(),
1850
1870
  center: point,
1851
1871
  layer: layer_ref,
1852
1872
  width: length,
1853
1873
  height: length,
1854
- lines: z80.number(),
1874
+ lines: z81.number(),
1855
1875
  // @ts-ignore
1856
- align: z80.enum(["bottom-left"])
1876
+ align: z81.enum(["bottom-left"])
1857
1877
  }).describe("Defines text on the PCB");
1858
1878
  expectTypesMatch(true);
1859
1879
 
1860
1880
  // src/pcb/pcb_trace.ts
1861
- import { z as z81 } from "zod";
1862
- var pcb_trace_route_point_wire = z81.object({
1863
- route_type: z81.literal("wire"),
1881
+ import { z as z82 } from "zod";
1882
+ var pcb_trace_route_point_wire = z82.object({
1883
+ route_type: z82.literal("wire"),
1864
1884
  x: distance,
1865
1885
  y: distance,
1866
1886
  width: distance,
1867
- start_pcb_port_id: z81.string().optional(),
1868
- end_pcb_port_id: z81.string().optional(),
1887
+ start_pcb_port_id: z82.string().optional(),
1888
+ end_pcb_port_id: z82.string().optional(),
1869
1889
  layer: layer_ref
1870
1890
  });
1871
- var pcb_trace_route_point_via = z81.object({
1872
- route_type: z81.literal("via"),
1891
+ var pcb_trace_route_point_via = z82.object({
1892
+ route_type: z82.literal("via"),
1873
1893
  x: distance,
1874
1894
  y: distance,
1875
1895
  hole_diameter: distance.optional(),
1876
1896
  outer_diameter: distance.optional(),
1877
- from_layer: z81.string(),
1878
- to_layer: z81.string()
1897
+ from_layer: z82.string(),
1898
+ to_layer: z82.string()
1879
1899
  });
1880
- var pcb_trace_route_point = z81.union([
1900
+ var pcb_trace_route_point = z82.union([
1881
1901
  pcb_trace_route_point_wire,
1882
1902
  pcb_trace_route_point_via
1883
1903
  ]);
1884
- var pcb_trace = z81.object({
1885
- type: z81.literal("pcb_trace"),
1886
- source_trace_id: z81.string().optional(),
1887
- pcb_component_id: z81.string().optional(),
1904
+ var pcb_trace = z82.object({
1905
+ type: z82.literal("pcb_trace"),
1906
+ source_trace_id: z82.string().optional(),
1907
+ pcb_component_id: z82.string().optional(),
1888
1908
  pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
1889
- pcb_group_id: z81.string().optional(),
1890
- subcircuit_id: z81.string().optional(),
1891
- route_thickness_mode: z81.enum(["constant", "interpolated"]).default("constant").optional(),
1892
- route_order_index: z81.number().optional(),
1893
- should_round_corners: z81.boolean().optional(),
1894
- trace_length: z81.number().optional(),
1895
- highlight_color: z81.string().optional(),
1896
- route: z81.array(pcb_trace_route_point)
1909
+ pcb_group_id: z82.string().optional(),
1910
+ subcircuit_id: z82.string().optional(),
1911
+ route_thickness_mode: z82.enum(["constant", "interpolated"]).default("constant").optional(),
1912
+ route_order_index: z82.number().optional(),
1913
+ should_round_corners: z82.boolean().optional(),
1914
+ trace_length: z82.number().optional(),
1915
+ highlight_color: z82.string().optional(),
1916
+ route: z82.array(pcb_trace_route_point)
1897
1917
  }).describe("Defines a trace on the PCB");
1898
1918
  expectTypesMatch(true);
1899
1919
  expectTypesMatch(true);
1900
1920
 
1901
1921
  // src/pcb/pcb_trace_error.ts
1902
- import { z as z82 } from "zod";
1903
- var pcb_trace_error = z82.object({
1904
- type: z82.literal("pcb_trace_error"),
1922
+ import { z as z83 } from "zod";
1923
+ var pcb_trace_error = z83.object({
1924
+ type: z83.literal("pcb_trace_error"),
1905
1925
  pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
1906
- error_type: z82.literal("pcb_trace_error").default("pcb_trace_error"),
1907
- message: z82.string(),
1926
+ error_type: z83.literal("pcb_trace_error").default("pcb_trace_error"),
1927
+ message: z83.string(),
1908
1928
  center: point.optional(),
1909
- pcb_trace_id: z82.string(),
1910
- source_trace_id: z82.string(),
1911
- pcb_component_ids: z82.array(z82.string()),
1912
- pcb_port_ids: z82.array(z82.string()),
1913
- subcircuit_id: z82.string().optional()
1929
+ pcb_trace_id: z83.string(),
1930
+ source_trace_id: z83.string(),
1931
+ pcb_component_ids: z83.array(z83.string()),
1932
+ pcb_port_ids: z83.array(z83.string()),
1933
+ subcircuit_id: z83.string().optional()
1914
1934
  }).describe("Defines a trace error on the PCB");
1915
1935
  expectTypesMatch(true);
1916
1936
 
1917
1937
  // src/pcb/pcb_trace_missing_error.ts
1918
- import { z as z83 } from "zod";
1919
- var pcb_trace_missing_error = z83.object({
1920
- type: z83.literal("pcb_trace_missing_error"),
1938
+ import { z as z84 } from "zod";
1939
+ var pcb_trace_missing_error = z84.object({
1940
+ type: z84.literal("pcb_trace_missing_error"),
1921
1941
  pcb_trace_missing_error_id: getZodPrefixedIdWithDefault(
1922
1942
  "pcb_trace_missing_error"
1923
1943
  ),
1924
- error_type: z83.literal("pcb_trace_missing_error").default("pcb_trace_missing_error"),
1925
- message: z83.string(),
1944
+ error_type: z84.literal("pcb_trace_missing_error").default("pcb_trace_missing_error"),
1945
+ message: z84.string(),
1926
1946
  center: point.optional(),
1927
- source_trace_id: z83.string(),
1928
- pcb_component_ids: z83.array(z83.string()),
1929
- pcb_port_ids: z83.array(z83.string()),
1930
- subcircuit_id: z83.string().optional()
1947
+ source_trace_id: z84.string(),
1948
+ pcb_component_ids: z84.array(z84.string()),
1949
+ pcb_port_ids: z84.array(z84.string()),
1950
+ subcircuit_id: z84.string().optional()
1931
1951
  }).describe(
1932
1952
  "Defines an error when a source trace has no corresponding PCB trace"
1933
1953
  );
1934
1954
  expectTypesMatch(true);
1935
1955
 
1936
1956
  // src/pcb/pcb_port_not_matched_error.ts
1937
- import { z as z84 } from "zod";
1938
- var pcb_port_not_matched_error = z84.object({
1939
- type: z84.literal("pcb_port_not_matched_error"),
1957
+ import { z as z85 } from "zod";
1958
+ var pcb_port_not_matched_error = z85.object({
1959
+ type: z85.literal("pcb_port_not_matched_error"),
1940
1960
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
1941
- error_type: z84.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
1942
- message: z84.string(),
1943
- pcb_component_ids: z84.array(z84.string()),
1944
- subcircuit_id: z84.string().optional()
1961
+ error_type: z85.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
1962
+ message: z85.string(),
1963
+ pcb_component_ids: z85.array(z85.string()),
1964
+ subcircuit_id: z85.string().optional()
1945
1965
  }).describe("Defines a trace error on the PCB where a port is not matched");
1946
1966
  expectTypesMatch(true);
1947
1967
 
1948
1968
  // src/pcb/pcb_port_not_connected_error.ts
1949
- import { z as z85 } from "zod";
1950
- var pcb_port_not_connected_error = z85.object({
1951
- type: z85.literal("pcb_port_not_connected_error"),
1969
+ import { z as z86 } from "zod";
1970
+ var pcb_port_not_connected_error = z86.object({
1971
+ type: z86.literal("pcb_port_not_connected_error"),
1952
1972
  pcb_port_not_connected_error_id: getZodPrefixedIdWithDefault(
1953
1973
  "pcb_port_not_connected_error"
1954
1974
  ),
1955
- error_type: z85.literal("pcb_port_not_connected_error").default("pcb_port_not_connected_error"),
1956
- message: z85.string(),
1957
- pcb_port_ids: z85.array(z85.string()),
1958
- pcb_component_ids: z85.array(z85.string()),
1959
- subcircuit_id: z85.string().optional()
1975
+ error_type: z86.literal("pcb_port_not_connected_error").default("pcb_port_not_connected_error"),
1976
+ message: z86.string(),
1977
+ pcb_port_ids: z86.array(z86.string()),
1978
+ pcb_component_ids: z86.array(z86.string()),
1979
+ subcircuit_id: z86.string().optional()
1960
1980
  }).describe("Defines an error when a pcb port is not connected to any trace");
1961
1981
  expectTypesMatch(
1962
1982
  true
1963
1983
  );
1964
1984
 
1965
1985
  // src/pcb/pcb_net.ts
1966
- import { z as z86 } from "zod";
1967
- var pcb_net = z86.object({
1968
- type: z86.literal("pcb_net"),
1986
+ import { z as z87 } from "zod";
1987
+ var pcb_net = z87.object({
1988
+ type: z87.literal("pcb_net"),
1969
1989
  pcb_net_id: getZodPrefixedIdWithDefault("pcb_net"),
1970
- source_net_id: z86.string().optional(),
1971
- highlight_color: z86.string().optional()
1990
+ source_net_id: z87.string().optional(),
1991
+ highlight_color: z87.string().optional()
1972
1992
  }).describe("Defines a net on the PCB");
1973
1993
  expectTypesMatch(true);
1974
1994
 
1975
1995
  // src/pcb/pcb_via.ts
1976
- import { z as z87 } from "zod";
1977
- var pcb_via = z87.object({
1978
- type: z87.literal("pcb_via"),
1996
+ import { z as z88 } from "zod";
1997
+ var pcb_via = z88.object({
1998
+ type: z88.literal("pcb_via"),
1979
1999
  pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
1980
- pcb_group_id: z87.string().optional(),
1981
- subcircuit_id: z87.string().optional(),
1982
- subcircuit_connectivity_map_key: z87.string().optional(),
2000
+ pcb_group_id: z88.string().optional(),
2001
+ subcircuit_id: z88.string().optional(),
2002
+ subcircuit_connectivity_map_key: z88.string().optional(),
1983
2003
  x: distance,
1984
2004
  y: distance,
1985
2005
  outer_diameter: distance.default("0.6mm"),
@@ -1988,85 +2008,85 @@ var pcb_via = z87.object({
1988
2008
  from_layer: layer_ref.optional(),
1989
2009
  /** @deprecated */
1990
2010
  to_layer: layer_ref.optional(),
1991
- layers: z87.array(layer_ref),
1992
- pcb_trace_id: z87.string().optional(),
1993
- net_is_assignable: z87.boolean().optional(),
1994
- net_assigned: z87.boolean().optional(),
1995
- is_tented: z87.boolean().optional()
2011
+ layers: z88.array(layer_ref),
2012
+ pcb_trace_id: z88.string().optional(),
2013
+ net_is_assignable: z88.boolean().optional(),
2014
+ net_assigned: z88.boolean().optional(),
2015
+ is_tented: z88.boolean().optional()
1996
2016
  }).describe("Defines a via on the PCB");
1997
2017
  expectTypesMatch(true);
1998
2018
 
1999
2019
  // src/pcb/pcb_board.ts
2000
- import { z as z88 } from "zod";
2001
- var pcb_board = z88.object({
2002
- type: z88.literal("pcb_board"),
2020
+ import { z as z89 } from "zod";
2021
+ var pcb_board = z89.object({
2022
+ type: z89.literal("pcb_board"),
2003
2023
  pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
2004
- pcb_panel_id: z88.string().optional(),
2005
- is_subcircuit: z88.boolean().optional(),
2006
- subcircuit_id: z88.string().optional(),
2024
+ pcb_panel_id: z89.string().optional(),
2025
+ is_subcircuit: z89.boolean().optional(),
2026
+ subcircuit_id: z89.string().optional(),
2007
2027
  width: length.optional(),
2008
2028
  height: length.optional(),
2009
2029
  center: point,
2010
- display_offset_x: z88.string().optional().describe(
2030
+ display_offset_x: z89.string().optional().describe(
2011
2031
  "How to display the x offset for this board, usually corresponding with how the user specified it"
2012
2032
  ),
2013
- display_offset_y: z88.string().optional().describe(
2033
+ display_offset_y: z89.string().optional().describe(
2014
2034
  "How to display the y offset for this board, usually corresponding with how the user specified it"
2015
2035
  ),
2016
2036
  thickness: length.optional().default(1.4),
2017
- num_layers: z88.number().optional().default(4),
2018
- outline: z88.array(point).optional(),
2019
- shape: z88.enum(["rect", "polygon"]).optional(),
2020
- material: z88.enum(["fr4", "fr1"]).default("fr4"),
2037
+ num_layers: z89.number().optional().default(4),
2038
+ outline: z89.array(point).optional(),
2039
+ shape: z89.enum(["rect", "polygon"]).optional(),
2040
+ material: z89.enum(["fr4", "fr1"]).default("fr4"),
2021
2041
  anchor_position: point.optional(),
2022
2042
  anchor_alignment: ninePointAnchor.optional(),
2023
- position_mode: z88.enum(["relative_to_panel_anchor", "none"]).optional()
2043
+ position_mode: z89.enum(["relative_to_panel_anchor", "none"]).optional()
2024
2044
  }).describe("Defines the board outline of the PCB");
2025
2045
  expectTypesMatch(true);
2026
2046
 
2027
2047
  // src/pcb/pcb_panel.ts
2028
- import { z as z89 } from "zod";
2029
- var pcb_panel = z89.object({
2030
- type: z89.literal("pcb_panel"),
2048
+ import { z as z90 } from "zod";
2049
+ var pcb_panel = z90.object({
2050
+ type: z90.literal("pcb_panel"),
2031
2051
  pcb_panel_id: getZodPrefixedIdWithDefault("pcb_panel"),
2032
2052
  width: length,
2033
2053
  height: length,
2034
2054
  center: point,
2035
- covered_with_solder_mask: z89.boolean().optional().default(true)
2055
+ covered_with_solder_mask: z90.boolean().optional().default(true)
2036
2056
  }).describe("Defines a PCB panel that can contain multiple boards");
2037
2057
  expectTypesMatch(true);
2038
2058
 
2039
2059
  // src/pcb/pcb_placement_error.ts
2040
- import { z as z90 } from "zod";
2041
- var pcb_placement_error = z90.object({
2042
- type: z90.literal("pcb_placement_error"),
2060
+ import { z as z91 } from "zod";
2061
+ var pcb_placement_error = z91.object({
2062
+ type: z91.literal("pcb_placement_error"),
2043
2063
  pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
2044
- error_type: z90.literal("pcb_placement_error").default("pcb_placement_error"),
2045
- message: z90.string(),
2046
- subcircuit_id: z90.string().optional()
2064
+ error_type: z91.literal("pcb_placement_error").default("pcb_placement_error"),
2065
+ message: z91.string(),
2066
+ subcircuit_id: z91.string().optional()
2047
2067
  }).describe("Defines a placement error on the PCB");
2048
2068
  expectTypesMatch(true);
2049
2069
 
2050
2070
  // src/pcb/pcb_trace_hint.ts
2051
- import { z as z91 } from "zod";
2052
- var pcb_trace_hint = z91.object({
2053
- type: z91.literal("pcb_trace_hint"),
2071
+ import { z as z92 } from "zod";
2072
+ var pcb_trace_hint = z92.object({
2073
+ type: z92.literal("pcb_trace_hint"),
2054
2074
  pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
2055
- pcb_port_id: z91.string(),
2056
- pcb_component_id: z91.string(),
2057
- route: z91.array(route_hint_point),
2058
- subcircuit_id: z91.string().optional()
2075
+ pcb_port_id: z92.string(),
2076
+ pcb_component_id: z92.string(),
2077
+ route: z92.array(route_hint_point),
2078
+ subcircuit_id: z92.string().optional()
2059
2079
  }).describe("A hint that can be used during generation of a PCB trace");
2060
2080
  expectTypesMatch(true);
2061
2081
 
2062
2082
  // src/pcb/pcb_silkscreen_line.ts
2063
- import { z as z92 } from "zod";
2064
- var pcb_silkscreen_line = z92.object({
2065
- type: z92.literal("pcb_silkscreen_line"),
2083
+ import { z as z93 } from "zod";
2084
+ var pcb_silkscreen_line = z93.object({
2085
+ type: z93.literal("pcb_silkscreen_line"),
2066
2086
  pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
2067
- pcb_component_id: z92.string(),
2068
- pcb_group_id: z92.string().optional(),
2069
- subcircuit_id: z92.string().optional(),
2087
+ pcb_component_id: z93.string(),
2088
+ pcb_group_id: z93.string().optional(),
2089
+ subcircuit_id: z93.string().optional(),
2070
2090
  stroke_width: distance.default("0.1mm"),
2071
2091
  x1: distance,
2072
2092
  y1: distance,
@@ -2077,32 +2097,32 @@ var pcb_silkscreen_line = z92.object({
2077
2097
  expectTypesMatch(true);
2078
2098
 
2079
2099
  // src/pcb/pcb_silkscreen_path.ts
2080
- import { z as z93 } from "zod";
2081
- var pcb_silkscreen_path = z93.object({
2082
- type: z93.literal("pcb_silkscreen_path"),
2100
+ import { z as z94 } from "zod";
2101
+ var pcb_silkscreen_path = z94.object({
2102
+ type: z94.literal("pcb_silkscreen_path"),
2083
2103
  pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
2084
- pcb_component_id: z93.string(),
2085
- pcb_group_id: z93.string().optional(),
2086
- subcircuit_id: z93.string().optional(),
2104
+ pcb_component_id: z94.string(),
2105
+ pcb_group_id: z94.string().optional(),
2106
+ subcircuit_id: z94.string().optional(),
2087
2107
  layer: visible_layer,
2088
- route: z93.array(point),
2108
+ route: z94.array(point),
2089
2109
  stroke_width: length
2090
2110
  }).describe("Defines a silkscreen path on the PCB");
2091
2111
  expectTypesMatch(true);
2092
2112
 
2093
2113
  // src/pcb/pcb_silkscreen_text.ts
2094
- import { z as z94 } from "zod";
2095
- var pcb_silkscreen_text = z94.object({
2096
- type: z94.literal("pcb_silkscreen_text"),
2114
+ import { z as z95 } from "zod";
2115
+ var pcb_silkscreen_text = z95.object({
2116
+ type: z95.literal("pcb_silkscreen_text"),
2097
2117
  pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
2098
- pcb_group_id: z94.string().optional(),
2099
- subcircuit_id: z94.string().optional(),
2100
- font: z94.literal("tscircuit2024").default("tscircuit2024"),
2118
+ pcb_group_id: z95.string().optional(),
2119
+ subcircuit_id: z95.string().optional(),
2120
+ font: z95.literal("tscircuit2024").default("tscircuit2024"),
2101
2121
  font_size: distance.default("0.2mm"),
2102
- pcb_component_id: z94.string(),
2103
- text: z94.string(),
2104
- is_knockout: z94.boolean().default(false).optional(),
2105
- knockout_padding: z94.object({
2122
+ pcb_component_id: z95.string(),
2123
+ text: z95.string(),
2124
+ is_knockout: z95.boolean().default(false).optional(),
2125
+ knockout_padding: z95.object({
2106
2126
  left: length,
2107
2127
  top: length,
2108
2128
  bottom: length,
@@ -2113,27 +2133,27 @@ var pcb_silkscreen_text = z94.object({
2113
2133
  bottom: "0.2mm",
2114
2134
  right: "0.2mm"
2115
2135
  }).optional(),
2116
- ccw_rotation: z94.number().optional(),
2136
+ ccw_rotation: z95.number().optional(),
2117
2137
  layer: layer_ref,
2118
- is_mirrored: z94.boolean().default(false).optional(),
2138
+ is_mirrored: z95.boolean().default(false).optional(),
2119
2139
  anchor_position: point.default({ x: 0, y: 0 }),
2120
2140
  anchor_alignment: ninePointAnchor.default("center")
2121
2141
  }).describe("Defines silkscreen text on the PCB");
2122
2142
  expectTypesMatch(true);
2123
2143
 
2124
2144
  // src/pcb/pcb_copper_text.ts
2125
- import { z as z95 } from "zod";
2126
- var pcb_copper_text = z95.object({
2127
- type: z95.literal("pcb_copper_text"),
2145
+ import { z as z96 } from "zod";
2146
+ var pcb_copper_text = z96.object({
2147
+ type: z96.literal("pcb_copper_text"),
2128
2148
  pcb_copper_text_id: getZodPrefixedIdWithDefault("pcb_copper_text"),
2129
- pcb_group_id: z95.string().optional(),
2130
- subcircuit_id: z95.string().optional(),
2131
- font: z95.literal("tscircuit2024").default("tscircuit2024"),
2149
+ pcb_group_id: z96.string().optional(),
2150
+ subcircuit_id: z96.string().optional(),
2151
+ font: z96.literal("tscircuit2024").default("tscircuit2024"),
2132
2152
  font_size: distance.default("0.2mm"),
2133
- pcb_component_id: z95.string(),
2134
- text: z95.string(),
2135
- is_knockout: z95.boolean().default(false).optional(),
2136
- knockout_padding: z95.object({
2153
+ pcb_component_id: z96.string(),
2154
+ text: z96.string(),
2155
+ is_knockout: z96.boolean().default(false).optional(),
2156
+ knockout_padding: z96.object({
2137
2157
  left: length,
2138
2158
  top: length,
2139
2159
  bottom: length,
@@ -2144,44 +2164,44 @@ var pcb_copper_text = z95.object({
2144
2164
  bottom: "0.2mm",
2145
2165
  right: "0.2mm"
2146
2166
  }).optional(),
2147
- ccw_rotation: z95.number().optional(),
2167
+ ccw_rotation: z96.number().optional(),
2148
2168
  layer: layer_ref,
2149
- is_mirrored: z95.boolean().default(false).optional(),
2169
+ is_mirrored: z96.boolean().default(false).optional(),
2150
2170
  anchor_position: point.default({ x: 0, y: 0 }),
2151
2171
  anchor_alignment: ninePointAnchor.default("center")
2152
2172
  }).describe("Defines copper text on the PCB");
2153
2173
  expectTypesMatch(true);
2154
2174
 
2155
2175
  // src/pcb/pcb_silkscreen_rect.ts
2156
- import { z as z96 } from "zod";
2157
- var pcb_silkscreen_rect = z96.object({
2158
- type: z96.literal("pcb_silkscreen_rect"),
2176
+ import { z as z97 } from "zod";
2177
+ var pcb_silkscreen_rect = z97.object({
2178
+ type: z97.literal("pcb_silkscreen_rect"),
2159
2179
  pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
2160
- pcb_component_id: z96.string(),
2161
- pcb_group_id: z96.string().optional(),
2162
- subcircuit_id: z96.string().optional(),
2180
+ pcb_component_id: z97.string(),
2181
+ pcb_group_id: z97.string().optional(),
2182
+ subcircuit_id: z97.string().optional(),
2163
2183
  center: point,
2164
2184
  width: length,
2165
2185
  height: length,
2166
2186
  layer: layer_ref,
2167
2187
  stroke_width: length.default("1mm"),
2168
2188
  corner_radius: length.optional(),
2169
- is_filled: z96.boolean().default(true).optional(),
2170
- has_stroke: z96.boolean().optional(),
2171
- is_stroke_dashed: z96.boolean().optional()
2189
+ is_filled: z97.boolean().default(true).optional(),
2190
+ has_stroke: z97.boolean().optional(),
2191
+ is_stroke_dashed: z97.boolean().optional()
2172
2192
  }).describe("Defines a silkscreen rect on the PCB");
2173
2193
  expectTypesMatch(true);
2174
2194
 
2175
2195
  // src/pcb/pcb_silkscreen_circle.ts
2176
- import { z as z97 } from "zod";
2177
- var pcb_silkscreen_circle = z97.object({
2178
- type: z97.literal("pcb_silkscreen_circle"),
2196
+ import { z as z98 } from "zod";
2197
+ var pcb_silkscreen_circle = z98.object({
2198
+ type: z98.literal("pcb_silkscreen_circle"),
2179
2199
  pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
2180
2200
  "pcb_silkscreen_circle"
2181
2201
  ),
2182
- pcb_component_id: z97.string(),
2183
- pcb_group_id: z97.string().optional(),
2184
- subcircuit_id: z97.string().optional(),
2202
+ pcb_component_id: z98.string(),
2203
+ pcb_group_id: z98.string().optional(),
2204
+ subcircuit_id: z98.string().optional(),
2185
2205
  center: point,
2186
2206
  radius: length,
2187
2207
  layer: visible_layer,
@@ -2190,13 +2210,13 @@ var pcb_silkscreen_circle = z97.object({
2190
2210
  expectTypesMatch(true);
2191
2211
 
2192
2212
  // src/pcb/pcb_silkscreen_oval.ts
2193
- import { z as z98 } from "zod";
2194
- var pcb_silkscreen_oval = z98.object({
2195
- type: z98.literal("pcb_silkscreen_oval"),
2213
+ import { z as z99 } from "zod";
2214
+ var pcb_silkscreen_oval = z99.object({
2215
+ type: z99.literal("pcb_silkscreen_oval"),
2196
2216
  pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
2197
- pcb_component_id: z98.string(),
2198
- pcb_group_id: z98.string().optional(),
2199
- subcircuit_id: z98.string().optional(),
2217
+ pcb_component_id: z99.string(),
2218
+ pcb_group_id: z99.string().optional(),
2219
+ subcircuit_id: z99.string().optional(),
2200
2220
  center: point,
2201
2221
  radius_x: distance,
2202
2222
  radius_y: distance,
@@ -2205,13 +2225,13 @@ var pcb_silkscreen_oval = z98.object({
2205
2225
  expectTypesMatch(true);
2206
2226
 
2207
2227
  // src/pcb/pcb_silkscreen_pill.ts
2208
- import { z as z99 } from "zod";
2209
- var pcb_silkscreen_pill = z99.object({
2210
- type: z99.literal("pcb_silkscreen_pill"),
2228
+ import { z as z100 } from "zod";
2229
+ var pcb_silkscreen_pill = z100.object({
2230
+ type: z100.literal("pcb_silkscreen_pill"),
2211
2231
  pcb_silkscreen_pill_id: getZodPrefixedIdWithDefault("pcb_silkscreen_pill"),
2212
- pcb_component_id: z99.string(),
2213
- pcb_group_id: z99.string().optional(),
2214
- subcircuit_id: z99.string().optional(),
2232
+ pcb_component_id: z100.string(),
2233
+ pcb_group_id: z100.string().optional(),
2234
+ subcircuit_id: z100.string().optional(),
2215
2235
  center: point,
2216
2236
  width: length,
2217
2237
  height: length,
@@ -2220,257 +2240,257 @@ var pcb_silkscreen_pill = z99.object({
2220
2240
  expectTypesMatch(true);
2221
2241
 
2222
2242
  // src/pcb/pcb_fabrication_note_text.ts
2223
- import { z as z100 } from "zod";
2224
- var pcb_fabrication_note_text = z100.object({
2225
- type: z100.literal("pcb_fabrication_note_text"),
2243
+ import { z as z101 } from "zod";
2244
+ var pcb_fabrication_note_text = z101.object({
2245
+ type: z101.literal("pcb_fabrication_note_text"),
2226
2246
  pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
2227
2247
  "pcb_fabrication_note_text"
2228
2248
  ),
2229
- subcircuit_id: z100.string().optional(),
2230
- pcb_group_id: z100.string().optional(),
2231
- font: z100.literal("tscircuit2024").default("tscircuit2024"),
2249
+ subcircuit_id: z101.string().optional(),
2250
+ pcb_group_id: z101.string().optional(),
2251
+ font: z101.literal("tscircuit2024").default("tscircuit2024"),
2232
2252
  font_size: distance.default("1mm"),
2233
- pcb_component_id: z100.string(),
2234
- text: z100.string(),
2253
+ pcb_component_id: z101.string(),
2254
+ text: z101.string(),
2235
2255
  layer: visible_layer,
2236
2256
  anchor_position: point.default({ x: 0, y: 0 }),
2237
- anchor_alignment: z100.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2238
- color: z100.string().optional()
2257
+ anchor_alignment: z101.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2258
+ color: z101.string().optional()
2239
2259
  }).describe(
2240
2260
  "Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
2241
2261
  );
2242
2262
  expectTypesMatch(true);
2243
2263
 
2244
2264
  // src/pcb/pcb_fabrication_note_path.ts
2245
- import { z as z101 } from "zod";
2246
- var pcb_fabrication_note_path = z101.object({
2247
- type: z101.literal("pcb_fabrication_note_path"),
2265
+ import { z as z102 } from "zod";
2266
+ var pcb_fabrication_note_path = z102.object({
2267
+ type: z102.literal("pcb_fabrication_note_path"),
2248
2268
  pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
2249
2269
  "pcb_fabrication_note_path"
2250
2270
  ),
2251
- pcb_component_id: z101.string(),
2252
- subcircuit_id: z101.string().optional(),
2271
+ pcb_component_id: z102.string(),
2272
+ subcircuit_id: z102.string().optional(),
2253
2273
  layer: layer_ref,
2254
- route: z101.array(point),
2274
+ route: z102.array(point),
2255
2275
  stroke_width: length,
2256
- color: z101.string().optional()
2276
+ color: z102.string().optional()
2257
2277
  }).describe(
2258
2278
  "Defines a fabrication path on the PCB for fabricators or assemblers"
2259
2279
  );
2260
2280
  expectTypesMatch(true);
2261
2281
 
2262
2282
  // src/pcb/pcb_fabrication_note_rect.ts
2263
- import { z as z102 } from "zod";
2264
- var pcb_fabrication_note_rect = z102.object({
2265
- type: z102.literal("pcb_fabrication_note_rect"),
2283
+ import { z as z103 } from "zod";
2284
+ var pcb_fabrication_note_rect = z103.object({
2285
+ type: z103.literal("pcb_fabrication_note_rect"),
2266
2286
  pcb_fabrication_note_rect_id: getZodPrefixedIdWithDefault(
2267
2287
  "pcb_fabrication_note_rect"
2268
2288
  ),
2269
- pcb_component_id: z102.string(),
2270
- pcb_group_id: z102.string().optional(),
2271
- subcircuit_id: z102.string().optional(),
2289
+ pcb_component_id: z103.string(),
2290
+ pcb_group_id: z103.string().optional(),
2291
+ subcircuit_id: z103.string().optional(),
2272
2292
  center: point,
2273
2293
  width: length,
2274
2294
  height: length,
2275
2295
  layer: visible_layer,
2276
2296
  stroke_width: length.default("0.1mm"),
2277
2297
  corner_radius: length.optional(),
2278
- is_filled: z102.boolean().optional(),
2279
- has_stroke: z102.boolean().optional(),
2280
- is_stroke_dashed: z102.boolean().optional(),
2281
- color: z102.string().optional()
2298
+ is_filled: z103.boolean().optional(),
2299
+ has_stroke: z103.boolean().optional(),
2300
+ is_stroke_dashed: z103.boolean().optional(),
2301
+ color: z103.string().optional()
2282
2302
  }).describe("Defines a fabrication note rectangle on the PCB");
2283
2303
  expectTypesMatch(true);
2284
2304
 
2285
2305
  // src/pcb/pcb_fabrication_note_dimension.ts
2286
- import { z as z103 } from "zod";
2287
- var pcb_fabrication_note_dimension = z103.object({
2288
- type: z103.literal("pcb_fabrication_note_dimension"),
2306
+ import { z as z104 } from "zod";
2307
+ var pcb_fabrication_note_dimension = z104.object({
2308
+ type: z104.literal("pcb_fabrication_note_dimension"),
2289
2309
  pcb_fabrication_note_dimension_id: getZodPrefixedIdWithDefault(
2290
2310
  "pcb_fabrication_note_dimension"
2291
2311
  ),
2292
- pcb_component_id: z103.string(),
2293
- pcb_group_id: z103.string().optional(),
2294
- subcircuit_id: z103.string().optional(),
2312
+ pcb_component_id: z104.string(),
2313
+ pcb_group_id: z104.string().optional(),
2314
+ subcircuit_id: z104.string().optional(),
2295
2315
  layer: visible_layer,
2296
2316
  from: point,
2297
2317
  to: point,
2298
- text: z103.string().optional(),
2299
- text_ccw_rotation: z103.number().optional(),
2318
+ text: z104.string().optional(),
2319
+ text_ccw_rotation: z104.number().optional(),
2300
2320
  offset: length.optional(),
2301
2321
  offset_distance: length.optional(),
2302
- offset_direction: z103.object({
2303
- x: z103.number(),
2304
- y: z103.number()
2322
+ offset_direction: z104.object({
2323
+ x: z104.number(),
2324
+ y: z104.number()
2305
2325
  }).optional(),
2306
- font: z103.literal("tscircuit2024").default("tscircuit2024"),
2326
+ font: z104.literal("tscircuit2024").default("tscircuit2024"),
2307
2327
  font_size: length.default("1mm"),
2308
- color: z103.string().optional(),
2328
+ color: z104.string().optional(),
2309
2329
  arrow_size: length.default("1mm")
2310
2330
  }).describe("Defines a measurement annotation within PCB fabrication notes");
2311
2331
  expectTypesMatch(true);
2312
2332
 
2313
2333
  // src/pcb/pcb_note_text.ts
2314
- import { z as z104 } from "zod";
2315
- var pcb_note_text = z104.object({
2316
- type: z104.literal("pcb_note_text"),
2317
- pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
2318
- pcb_component_id: z104.string().optional(),
2319
- pcb_group_id: z104.string().optional(),
2320
- subcircuit_id: z104.string().optional(),
2321
- name: z104.string().optional(),
2322
- font: z104.literal("tscircuit2024").default("tscircuit2024"),
2323
- font_size: distance.default("1mm"),
2324
- text: z104.string().optional(),
2325
- anchor_position: point.default({ x: 0, y: 0 }),
2326
- anchor_alignment: z104.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2327
- color: z104.string().optional()
2328
- }).describe("Defines a documentation note in text on the PCB");
2329
- expectTypesMatch(true);
2330
-
2331
- // src/pcb/pcb_note_rect.ts
2332
2334
  import { z as z105 } from "zod";
2333
- var pcb_note_rect = z105.object({
2334
- type: z105.literal("pcb_note_rect"),
2335
- pcb_note_rect_id: getZodPrefixedIdWithDefault("pcb_note_rect"),
2335
+ var pcb_note_text = z105.object({
2336
+ type: z105.literal("pcb_note_text"),
2337
+ pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
2336
2338
  pcb_component_id: z105.string().optional(),
2337
2339
  pcb_group_id: z105.string().optional(),
2338
2340
  subcircuit_id: z105.string().optional(),
2339
2341
  name: z105.string().optional(),
2342
+ font: z105.literal("tscircuit2024").default("tscircuit2024"),
2343
+ font_size: distance.default("1mm"),
2340
2344
  text: z105.string().optional(),
2341
- center: point,
2342
- width: length,
2343
- height: length,
2344
- stroke_width: length.default("0.1mm"),
2345
- corner_radius: length.optional(),
2346
- is_filled: z105.boolean().optional(),
2347
- has_stroke: z105.boolean().optional(),
2348
- is_stroke_dashed: z105.boolean().optional(),
2345
+ anchor_position: point.default({ x: 0, y: 0 }),
2346
+ anchor_alignment: z105.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
2349
2347
  color: z105.string().optional()
2350
- }).describe("Defines a rectangular documentation note on the PCB");
2348
+ }).describe("Defines a documentation note in text on the PCB");
2351
2349
  expectTypesMatch(true);
2352
2350
 
2353
- // src/pcb/pcb_note_path.ts
2351
+ // src/pcb/pcb_note_rect.ts
2354
2352
  import { z as z106 } from "zod";
2355
- var pcb_note_path = z106.object({
2356
- type: z106.literal("pcb_note_path"),
2357
- pcb_note_path_id: getZodPrefixedIdWithDefault("pcb_note_path"),
2353
+ var pcb_note_rect = z106.object({
2354
+ type: z106.literal("pcb_note_rect"),
2355
+ pcb_note_rect_id: getZodPrefixedIdWithDefault("pcb_note_rect"),
2358
2356
  pcb_component_id: z106.string().optional(),
2359
2357
  pcb_group_id: z106.string().optional(),
2360
2358
  subcircuit_id: z106.string().optional(),
2361
2359
  name: z106.string().optional(),
2362
2360
  text: z106.string().optional(),
2363
- route: z106.array(point),
2361
+ center: point,
2362
+ width: length,
2363
+ height: length,
2364
2364
  stroke_width: length.default("0.1mm"),
2365
+ corner_radius: length.optional(),
2366
+ is_filled: z106.boolean().optional(),
2367
+ has_stroke: z106.boolean().optional(),
2368
+ is_stroke_dashed: z106.boolean().optional(),
2365
2369
  color: z106.string().optional()
2366
- }).describe("Defines a polyline documentation note on the PCB");
2370
+ }).describe("Defines a rectangular documentation note on the PCB");
2367
2371
  expectTypesMatch(true);
2368
2372
 
2369
- // src/pcb/pcb_note_line.ts
2373
+ // src/pcb/pcb_note_path.ts
2370
2374
  import { z as z107 } from "zod";
2371
- var pcb_note_line = z107.object({
2372
- type: z107.literal("pcb_note_line"),
2373
- pcb_note_line_id: getZodPrefixedIdWithDefault("pcb_note_line"),
2375
+ var pcb_note_path = z107.object({
2376
+ type: z107.literal("pcb_note_path"),
2377
+ pcb_note_path_id: getZodPrefixedIdWithDefault("pcb_note_path"),
2374
2378
  pcb_component_id: z107.string().optional(),
2375
2379
  pcb_group_id: z107.string().optional(),
2376
2380
  subcircuit_id: z107.string().optional(),
2377
2381
  name: z107.string().optional(),
2378
2382
  text: z107.string().optional(),
2383
+ route: z107.array(point),
2384
+ stroke_width: length.default("0.1mm"),
2385
+ color: z107.string().optional()
2386
+ }).describe("Defines a polyline documentation note on the PCB");
2387
+ expectTypesMatch(true);
2388
+
2389
+ // src/pcb/pcb_note_line.ts
2390
+ import { z as z108 } from "zod";
2391
+ var pcb_note_line = z108.object({
2392
+ type: z108.literal("pcb_note_line"),
2393
+ pcb_note_line_id: getZodPrefixedIdWithDefault("pcb_note_line"),
2394
+ pcb_component_id: z108.string().optional(),
2395
+ pcb_group_id: z108.string().optional(),
2396
+ subcircuit_id: z108.string().optional(),
2397
+ name: z108.string().optional(),
2398
+ text: z108.string().optional(),
2379
2399
  x1: distance,
2380
2400
  y1: distance,
2381
2401
  x2: distance,
2382
2402
  y2: distance,
2383
2403
  stroke_width: distance.default("0.1mm"),
2384
- color: z107.string().optional(),
2385
- is_dashed: z107.boolean().optional()
2404
+ color: z108.string().optional(),
2405
+ is_dashed: z108.boolean().optional()
2386
2406
  }).describe("Defines a straight documentation note line on the PCB");
2387
2407
  expectTypesMatch(true);
2388
2408
 
2389
2409
  // src/pcb/pcb_note_dimension.ts
2390
- import { z as z108 } from "zod";
2391
- var pcb_note_dimension = z108.object({
2392
- type: z108.literal("pcb_note_dimension"),
2410
+ import { z as z109 } from "zod";
2411
+ var pcb_note_dimension = z109.object({
2412
+ type: z109.literal("pcb_note_dimension"),
2393
2413
  pcb_note_dimension_id: getZodPrefixedIdWithDefault("pcb_note_dimension"),
2394
- pcb_component_id: z108.string().optional(),
2395
- pcb_group_id: z108.string().optional(),
2396
- subcircuit_id: z108.string().optional(),
2397
- name: z108.string().optional(),
2414
+ pcb_component_id: z109.string().optional(),
2415
+ pcb_group_id: z109.string().optional(),
2416
+ subcircuit_id: z109.string().optional(),
2417
+ name: z109.string().optional(),
2398
2418
  from: point,
2399
2419
  to: point,
2400
- text: z108.string().optional(),
2401
- text_ccw_rotation: z108.number().optional(),
2420
+ text: z109.string().optional(),
2421
+ text_ccw_rotation: z109.number().optional(),
2402
2422
  offset_distance: length.optional(),
2403
- offset_direction: z108.object({
2404
- x: z108.number(),
2405
- y: z108.number()
2423
+ offset_direction: z109.object({
2424
+ x: z109.number(),
2425
+ y: z109.number()
2406
2426
  }).optional(),
2407
- font: z108.literal("tscircuit2024").default("tscircuit2024"),
2427
+ font: z109.literal("tscircuit2024").default("tscircuit2024"),
2408
2428
  font_size: length.default("1mm"),
2409
- color: z108.string().optional(),
2429
+ color: z109.string().optional(),
2410
2430
  arrow_size: length.default("1mm")
2411
2431
  }).describe("Defines a measurement annotation within PCB documentation notes");
2412
2432
  expectTypesMatch(true);
2413
2433
 
2414
2434
  // src/pcb/pcb_footprint_overlap_error.ts
2415
- import { z as z109 } from "zod";
2416
- var pcb_footprint_overlap_error = z109.object({
2417
- type: z109.literal("pcb_footprint_overlap_error"),
2435
+ import { z as z110 } from "zod";
2436
+ var pcb_footprint_overlap_error = z110.object({
2437
+ type: z110.literal("pcb_footprint_overlap_error"),
2418
2438
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
2419
- error_type: z109.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
2420
- message: z109.string(),
2421
- pcb_smtpad_ids: z109.array(z109.string()).optional(),
2422
- pcb_plated_hole_ids: z109.array(z109.string()).optional(),
2423
- pcb_hole_ids: z109.array(z109.string()).optional(),
2424
- pcb_keepout_ids: z109.array(z109.string()).optional()
2439
+ error_type: z110.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
2440
+ message: z110.string(),
2441
+ pcb_smtpad_ids: z110.array(z110.string()).optional(),
2442
+ pcb_plated_hole_ids: z110.array(z110.string()).optional(),
2443
+ pcb_hole_ids: z110.array(z110.string()).optional(),
2444
+ pcb_keepout_ids: z110.array(z110.string()).optional()
2425
2445
  }).describe("Error emitted when a pcb footprint overlaps with another element");
2426
2446
  expectTypesMatch(
2427
2447
  true
2428
2448
  );
2429
2449
 
2430
2450
  // src/pcb/pcb_keepout.ts
2431
- import { z as z110 } from "zod";
2432
- var pcb_keepout = z110.object({
2433
- type: z110.literal("pcb_keepout"),
2434
- shape: z110.literal("rect"),
2435
- pcb_group_id: z110.string().optional(),
2436
- subcircuit_id: z110.string().optional(),
2451
+ import { z as z111 } from "zod";
2452
+ var pcb_keepout = z111.object({
2453
+ type: z111.literal("pcb_keepout"),
2454
+ shape: z111.literal("rect"),
2455
+ pcb_group_id: z111.string().optional(),
2456
+ subcircuit_id: z111.string().optional(),
2437
2457
  center: point,
2438
2458
  width: distance,
2439
2459
  height: distance,
2440
- pcb_keepout_id: z110.string(),
2441
- layers: z110.array(z110.string()),
2460
+ pcb_keepout_id: z111.string(),
2461
+ layers: z111.array(z111.string()),
2442
2462
  // Specify layers where the keepout applies
2443
- description: z110.string().optional()
2463
+ description: z111.string().optional()
2444
2464
  // Optional description of the keepout
2445
2465
  }).or(
2446
- z110.object({
2447
- type: z110.literal("pcb_keepout"),
2448
- shape: z110.literal("circle"),
2449
- pcb_group_id: z110.string().optional(),
2450
- subcircuit_id: z110.string().optional(),
2466
+ z111.object({
2467
+ type: z111.literal("pcb_keepout"),
2468
+ shape: z111.literal("circle"),
2469
+ pcb_group_id: z111.string().optional(),
2470
+ subcircuit_id: z111.string().optional(),
2451
2471
  center: point,
2452
2472
  radius: distance,
2453
- pcb_keepout_id: z110.string(),
2454
- layers: z110.array(z110.string()),
2473
+ pcb_keepout_id: z111.string(),
2474
+ layers: z111.array(z111.string()),
2455
2475
  // Specify layers where the keepout applies
2456
- description: z110.string().optional()
2476
+ description: z111.string().optional()
2457
2477
  // Optional description of the keepout
2458
2478
  })
2459
2479
  );
2460
2480
  expectTypesMatch(true);
2461
2481
 
2462
2482
  // src/pcb/pcb_cutout.ts
2463
- import { z as z111 } from "zod";
2464
- var pcb_cutout_base = z111.object({
2465
- type: z111.literal("pcb_cutout"),
2483
+ import { z as z112 } from "zod";
2484
+ var pcb_cutout_base = z112.object({
2485
+ type: z112.literal("pcb_cutout"),
2466
2486
  pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
2467
- pcb_group_id: z111.string().optional(),
2468
- subcircuit_id: z111.string().optional(),
2469
- pcb_board_id: z111.string().optional(),
2470
- pcb_panel_id: z111.string().optional()
2487
+ pcb_group_id: z112.string().optional(),
2488
+ subcircuit_id: z112.string().optional(),
2489
+ pcb_board_id: z112.string().optional(),
2490
+ pcb_panel_id: z112.string().optional()
2471
2491
  });
2472
2492
  var pcb_cutout_rect = pcb_cutout_base.extend({
2473
- shape: z111.literal("rect"),
2493
+ shape: z112.literal("rect"),
2474
2494
  center: point,
2475
2495
  width: length,
2476
2496
  height: length,
@@ -2479,26 +2499,26 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
2479
2499
  });
2480
2500
  expectTypesMatch(true);
2481
2501
  var pcb_cutout_circle = pcb_cutout_base.extend({
2482
- shape: z111.literal("circle"),
2502
+ shape: z112.literal("circle"),
2483
2503
  center: point,
2484
2504
  radius: length
2485
2505
  });
2486
2506
  expectTypesMatch(true);
2487
2507
  var pcb_cutout_polygon = pcb_cutout_base.extend({
2488
- shape: z111.literal("polygon"),
2489
- points: z111.array(point)
2508
+ shape: z112.literal("polygon"),
2509
+ points: z112.array(point)
2490
2510
  });
2491
2511
  expectTypesMatch(true);
2492
2512
  var pcb_cutout_path = pcb_cutout_base.extend({
2493
- shape: z111.literal("path"),
2494
- route: z111.array(point),
2513
+ shape: z112.literal("path"),
2514
+ route: z112.array(point),
2495
2515
  slot_width: length,
2496
2516
  slot_length: length.optional(),
2497
2517
  space_between_slots: length.optional(),
2498
2518
  slot_corner_radius: length.optional()
2499
2519
  });
2500
2520
  expectTypesMatch(true);
2501
- var pcb_cutout = z111.discriminatedUnion("shape", [
2521
+ var pcb_cutout = z112.discriminatedUnion("shape", [
2502
2522
  pcb_cutout_rect,
2503
2523
  pcb_cutout_circle,
2504
2524
  pcb_cutout_polygon,
@@ -2507,130 +2527,130 @@ var pcb_cutout = z111.discriminatedUnion("shape", [
2507
2527
  expectTypesMatch(true);
2508
2528
 
2509
2529
  // src/pcb/pcb_missing_footprint_error.ts
2510
- import { z as z112 } from "zod";
2511
- var pcb_missing_footprint_error = z112.object({
2512
- type: z112.literal("pcb_missing_footprint_error"),
2530
+ import { z as z113 } from "zod";
2531
+ var pcb_missing_footprint_error = z113.object({
2532
+ type: z113.literal("pcb_missing_footprint_error"),
2513
2533
  pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
2514
2534
  "pcb_missing_footprint_error"
2515
2535
  ),
2516
- pcb_group_id: z112.string().optional(),
2517
- subcircuit_id: z112.string().optional(),
2518
- error_type: z112.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
2519
- source_component_id: z112.string(),
2520
- message: z112.string()
2536
+ pcb_group_id: z113.string().optional(),
2537
+ subcircuit_id: z113.string().optional(),
2538
+ error_type: z113.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
2539
+ source_component_id: z113.string(),
2540
+ message: z113.string()
2521
2541
  }).describe("Defines a missing footprint error on the PCB");
2522
2542
  expectTypesMatch(
2523
2543
  true
2524
2544
  );
2525
2545
 
2526
2546
  // src/pcb/external_footprint_load_error.ts
2527
- import { z as z113 } from "zod";
2528
- var external_footprint_load_error = z113.object({
2529
- type: z113.literal("external_footprint_load_error"),
2547
+ import { z as z114 } from "zod";
2548
+ var external_footprint_load_error = z114.object({
2549
+ type: z114.literal("external_footprint_load_error"),
2530
2550
  external_footprint_load_error_id: getZodPrefixedIdWithDefault(
2531
2551
  "external_footprint_load_error"
2532
2552
  ),
2533
- pcb_component_id: z113.string(),
2534
- source_component_id: z113.string(),
2535
- pcb_group_id: z113.string().optional(),
2536
- subcircuit_id: z113.string().optional(),
2537
- footprinter_string: z113.string().optional(),
2538
- error_type: z113.literal("external_footprint_load_error").default("external_footprint_load_error"),
2539
- message: z113.string()
2553
+ pcb_component_id: z114.string(),
2554
+ source_component_id: z114.string(),
2555
+ pcb_group_id: z114.string().optional(),
2556
+ subcircuit_id: z114.string().optional(),
2557
+ footprinter_string: z114.string().optional(),
2558
+ error_type: z114.literal("external_footprint_load_error").default("external_footprint_load_error"),
2559
+ message: z114.string()
2540
2560
  }).describe("Defines an error when an external footprint fails to load");
2541
2561
  expectTypesMatch(true);
2542
2562
 
2543
2563
  // src/pcb/circuit_json_footprint_load_error.ts
2544
- import { z as z114 } from "zod";
2545
- var circuit_json_footprint_load_error = z114.object({
2546
- type: z114.literal("circuit_json_footprint_load_error"),
2564
+ import { z as z115 } from "zod";
2565
+ var circuit_json_footprint_load_error = z115.object({
2566
+ type: z115.literal("circuit_json_footprint_load_error"),
2547
2567
  circuit_json_footprint_load_error_id: getZodPrefixedIdWithDefault(
2548
2568
  "circuit_json_footprint_load_error"
2549
2569
  ),
2550
- pcb_component_id: z114.string(),
2551
- source_component_id: z114.string(),
2552
- pcb_group_id: z114.string().optional(),
2553
- subcircuit_id: z114.string().optional(),
2554
- error_type: z114.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
2555
- message: z114.string(),
2556
- circuit_json: z114.array(z114.any()).optional()
2570
+ pcb_component_id: z115.string(),
2571
+ source_component_id: z115.string(),
2572
+ pcb_group_id: z115.string().optional(),
2573
+ subcircuit_id: z115.string().optional(),
2574
+ error_type: z115.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
2575
+ message: z115.string(),
2576
+ circuit_json: z115.array(z115.any()).optional()
2557
2577
  }).describe("Defines an error when a circuit JSON footprint fails to load");
2558
2578
  expectTypesMatch(true);
2559
2579
 
2560
2580
  // src/pcb/pcb_group.ts
2561
- import { z as z115 } from "zod";
2562
- var pcb_group = z115.object({
2563
- type: z115.literal("pcb_group"),
2581
+ import { z as z116 } from "zod";
2582
+ var pcb_group = z116.object({
2583
+ type: z116.literal("pcb_group"),
2564
2584
  pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
2565
- source_group_id: z115.string(),
2566
- is_subcircuit: z115.boolean().optional(),
2567
- subcircuit_id: z115.string().optional(),
2585
+ source_group_id: z116.string(),
2586
+ is_subcircuit: z116.boolean().optional(),
2587
+ subcircuit_id: z116.string().optional(),
2568
2588
  width: length.optional(),
2569
2589
  height: length.optional(),
2570
2590
  center: point,
2571
- display_offset_x: z115.string().optional().describe(
2591
+ display_offset_x: z116.string().optional().describe(
2572
2592
  "How to display the x offset for this group, usually corresponding with how the user specified it"
2573
2593
  ),
2574
- display_offset_y: z115.string().optional().describe(
2594
+ display_offset_y: z116.string().optional().describe(
2575
2595
  "How to display the y offset for this group, usually corresponding with how the user specified it"
2576
2596
  ),
2577
- outline: z115.array(point).optional(),
2597
+ outline: z116.array(point).optional(),
2578
2598
  anchor_position: point.optional(),
2579
2599
  anchor_alignment: ninePointAnchor.default("center"),
2580
- position_mode: z115.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
2581
- positioned_relative_to_pcb_group_id: z115.string().optional(),
2582
- positioned_relative_to_pcb_board_id: z115.string().optional(),
2583
- pcb_component_ids: z115.array(z115.string()),
2584
- child_layout_mode: z115.enum(["packed", "none"]).optional(),
2585
- name: z115.string().optional(),
2586
- description: z115.string().optional(),
2587
- layout_mode: z115.string().optional(),
2588
- autorouter_configuration: z115.object({
2600
+ position_mode: z116.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
2601
+ positioned_relative_to_pcb_group_id: z116.string().optional(),
2602
+ positioned_relative_to_pcb_board_id: z116.string().optional(),
2603
+ pcb_component_ids: z116.array(z116.string()),
2604
+ child_layout_mode: z116.enum(["packed", "none"]).optional(),
2605
+ name: z116.string().optional(),
2606
+ description: z116.string().optional(),
2607
+ layout_mode: z116.string().optional(),
2608
+ autorouter_configuration: z116.object({
2589
2609
  trace_clearance: length
2590
2610
  }).optional(),
2591
- autorouter_used_string: z115.string().optional()
2611
+ autorouter_used_string: z116.string().optional()
2592
2612
  }).describe("Defines a group of components on the PCB");
2593
2613
  expectTypesMatch(true);
2594
2614
 
2595
2615
  // src/pcb/pcb_autorouting_error.ts
2596
- import { z as z116 } from "zod";
2597
- var pcb_autorouting_error = z116.object({
2598
- type: z116.literal("pcb_autorouting_error"),
2616
+ import { z as z117 } from "zod";
2617
+ var pcb_autorouting_error = z117.object({
2618
+ type: z117.literal("pcb_autorouting_error"),
2599
2619
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
2600
- error_type: z116.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
2601
- message: z116.string(),
2602
- subcircuit_id: z116.string().optional()
2620
+ error_type: z117.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
2621
+ message: z117.string(),
2622
+ subcircuit_id: z117.string().optional()
2603
2623
  }).describe("The autorouting has failed to route a portion of the board");
2604
2624
  expectTypesMatch(true);
2605
2625
 
2606
2626
  // src/pcb/pcb_manual_edit_conflict_warning.ts
2607
- import { z as z117 } from "zod";
2608
- var pcb_manual_edit_conflict_warning = z117.object({
2609
- type: z117.literal("pcb_manual_edit_conflict_warning"),
2627
+ import { z as z118 } from "zod";
2628
+ var pcb_manual_edit_conflict_warning = z118.object({
2629
+ type: z118.literal("pcb_manual_edit_conflict_warning"),
2610
2630
  pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
2611
2631
  "pcb_manual_edit_conflict_warning"
2612
2632
  ),
2613
- warning_type: z117.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
2614
- message: z117.string(),
2615
- pcb_component_id: z117.string(),
2616
- pcb_group_id: z117.string().optional(),
2617
- subcircuit_id: z117.string().optional(),
2618
- source_component_id: z117.string()
2633
+ warning_type: z118.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
2634
+ message: z118.string(),
2635
+ pcb_component_id: z118.string(),
2636
+ pcb_group_id: z118.string().optional(),
2637
+ subcircuit_id: z118.string().optional(),
2638
+ source_component_id: z118.string()
2619
2639
  }).describe(
2620
2640
  "Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
2621
2641
  );
2622
2642
  expectTypesMatch(true);
2623
2643
 
2624
2644
  // src/pcb/pcb_breakout_point.ts
2625
- import { z as z118 } from "zod";
2626
- var pcb_breakout_point = z118.object({
2627
- type: z118.literal("pcb_breakout_point"),
2645
+ import { z as z119 } from "zod";
2646
+ var pcb_breakout_point = z119.object({
2647
+ type: z119.literal("pcb_breakout_point"),
2628
2648
  pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
2629
- pcb_group_id: z118.string(),
2630
- subcircuit_id: z118.string().optional(),
2631
- source_trace_id: z118.string().optional(),
2632
- source_port_id: z118.string().optional(),
2633
- source_net_id: z118.string().optional(),
2649
+ pcb_group_id: z119.string(),
2650
+ subcircuit_id: z119.string().optional(),
2651
+ source_trace_id: z119.string().optional(),
2652
+ source_port_id: z119.string().optional(),
2653
+ source_net_id: z119.string().optional(),
2634
2654
  x: distance,
2635
2655
  y: distance
2636
2656
  }).describe(
@@ -2639,61 +2659,61 @@ var pcb_breakout_point = z118.object({
2639
2659
  expectTypesMatch(true);
2640
2660
 
2641
2661
  // src/pcb/pcb_ground_plane.ts
2642
- import { z as z119 } from "zod";
2643
- var pcb_ground_plane = z119.object({
2644
- type: z119.literal("pcb_ground_plane"),
2662
+ import { z as z120 } from "zod";
2663
+ var pcb_ground_plane = z120.object({
2664
+ type: z120.literal("pcb_ground_plane"),
2645
2665
  pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
2646
- source_pcb_ground_plane_id: z119.string(),
2647
- source_net_id: z119.string(),
2648
- pcb_group_id: z119.string().optional(),
2649
- subcircuit_id: z119.string().optional()
2666
+ source_pcb_ground_plane_id: z120.string(),
2667
+ source_net_id: z120.string(),
2668
+ pcb_group_id: z120.string().optional(),
2669
+ subcircuit_id: z120.string().optional()
2650
2670
  }).describe("Defines a ground plane on the PCB");
2651
2671
  expectTypesMatch(true);
2652
2672
 
2653
2673
  // src/pcb/pcb_ground_plane_region.ts
2654
- import { z as z120 } from "zod";
2655
- var pcb_ground_plane_region = z120.object({
2656
- type: z120.literal("pcb_ground_plane_region"),
2674
+ import { z as z121 } from "zod";
2675
+ var pcb_ground_plane_region = z121.object({
2676
+ type: z121.literal("pcb_ground_plane_region"),
2657
2677
  pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
2658
2678
  "pcb_ground_plane_region"
2659
2679
  ),
2660
- pcb_ground_plane_id: z120.string(),
2661
- pcb_group_id: z120.string().optional(),
2662
- subcircuit_id: z120.string().optional(),
2680
+ pcb_ground_plane_id: z121.string(),
2681
+ pcb_group_id: z121.string().optional(),
2682
+ subcircuit_id: z121.string().optional(),
2663
2683
  layer: layer_ref,
2664
- points: z120.array(point)
2684
+ points: z121.array(point)
2665
2685
  }).describe("Defines a polygon region of a ground plane");
2666
2686
  expectTypesMatch(true);
2667
2687
 
2668
2688
  // src/pcb/pcb_thermal_spoke.ts
2669
- import { z as z121 } from "zod";
2670
- var pcb_thermal_spoke = z121.object({
2671
- type: z121.literal("pcb_thermal_spoke"),
2689
+ import { z as z122 } from "zod";
2690
+ var pcb_thermal_spoke = z122.object({
2691
+ type: z122.literal("pcb_thermal_spoke"),
2672
2692
  pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
2673
- pcb_ground_plane_id: z121.string(),
2674
- shape: z121.string(),
2675
- spoke_count: z121.number(),
2693
+ pcb_ground_plane_id: z122.string(),
2694
+ shape: z122.string(),
2695
+ spoke_count: z122.number(),
2676
2696
  spoke_thickness: distance,
2677
2697
  spoke_inner_diameter: distance,
2678
2698
  spoke_outer_diameter: distance,
2679
- pcb_plated_hole_id: z121.string().optional(),
2680
- subcircuit_id: z121.string().optional()
2699
+ pcb_plated_hole_id: z122.string().optional(),
2700
+ subcircuit_id: z122.string().optional()
2681
2701
  }).describe("Pattern for connecting a ground plane to a plated hole");
2682
2702
  expectTypesMatch(true);
2683
2703
 
2684
2704
  // src/pcb/pcb_copper_pour.ts
2685
- import { z as z122 } from "zod";
2686
- var pcb_copper_pour_base = z122.object({
2687
- type: z122.literal("pcb_copper_pour"),
2705
+ import { z as z123 } from "zod";
2706
+ var pcb_copper_pour_base = z123.object({
2707
+ type: z123.literal("pcb_copper_pour"),
2688
2708
  pcb_copper_pour_id: getZodPrefixedIdWithDefault("pcb_copper_pour"),
2689
- pcb_group_id: z122.string().optional(),
2690
- subcircuit_id: z122.string().optional(),
2709
+ pcb_group_id: z123.string().optional(),
2710
+ subcircuit_id: z123.string().optional(),
2691
2711
  layer: layer_ref,
2692
- source_net_id: z122.string().optional(),
2693
- covered_with_solder_mask: z122.boolean().optional().default(true)
2712
+ source_net_id: z123.string().optional(),
2713
+ covered_with_solder_mask: z123.boolean().optional().default(true)
2694
2714
  });
2695
2715
  var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
2696
- shape: z122.literal("rect"),
2716
+ shape: z123.literal("rect"),
2697
2717
  center: point,
2698
2718
  width: length,
2699
2719
  height: length,
@@ -2701,16 +2721,16 @@ var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
2701
2721
  });
2702
2722
  expectTypesMatch(true);
2703
2723
  var pcb_copper_pour_brep = pcb_copper_pour_base.extend({
2704
- shape: z122.literal("brep"),
2724
+ shape: z123.literal("brep"),
2705
2725
  brep_shape
2706
2726
  });
2707
2727
  expectTypesMatch(true);
2708
2728
  var pcb_copper_pour_polygon = pcb_copper_pour_base.extend({
2709
- shape: z122.literal("polygon"),
2710
- points: z122.array(point)
2729
+ shape: z123.literal("polygon"),
2730
+ points: z123.array(point)
2711
2731
  });
2712
2732
  expectTypesMatch(true);
2713
- var pcb_copper_pour = z122.discriminatedUnion("shape", [
2733
+ var pcb_copper_pour = z123.discriminatedUnion("shape", [
2714
2734
  pcb_copper_pour_rect,
2715
2735
  pcb_copper_pour_brep,
2716
2736
  pcb_copper_pour_polygon
@@ -2718,148 +2738,148 @@ var pcb_copper_pour = z122.discriminatedUnion("shape", [
2718
2738
  expectTypesMatch(true);
2719
2739
 
2720
2740
  // src/pcb/pcb_component_outside_board_error.ts
2721
- import { z as z123 } from "zod";
2722
- var pcb_component_outside_board_error = z123.object({
2723
- type: z123.literal("pcb_component_outside_board_error"),
2741
+ import { z as z124 } from "zod";
2742
+ var pcb_component_outside_board_error = z124.object({
2743
+ type: z124.literal("pcb_component_outside_board_error"),
2724
2744
  pcb_component_outside_board_error_id: getZodPrefixedIdWithDefault(
2725
2745
  "pcb_component_outside_board_error"
2726
2746
  ),
2727
- error_type: z123.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
2728
- message: z123.string(),
2729
- pcb_component_id: z123.string(),
2730
- pcb_board_id: z123.string(),
2747
+ error_type: z124.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
2748
+ message: z124.string(),
2749
+ pcb_component_id: z124.string(),
2750
+ pcb_board_id: z124.string(),
2731
2751
  component_center: point,
2732
- component_bounds: z123.object({
2733
- min_x: z123.number(),
2734
- max_x: z123.number(),
2735
- min_y: z123.number(),
2736
- max_y: z123.number()
2752
+ component_bounds: z124.object({
2753
+ min_x: z124.number(),
2754
+ max_x: z124.number(),
2755
+ min_y: z124.number(),
2756
+ max_y: z124.number()
2737
2757
  }),
2738
- subcircuit_id: z123.string().optional(),
2739
- source_component_id: z123.string().optional()
2758
+ subcircuit_id: z124.string().optional(),
2759
+ source_component_id: z124.string().optional()
2740
2760
  }).describe(
2741
2761
  "Error emitted when a PCB component is placed outside the board boundaries"
2742
2762
  );
2743
2763
  expectTypesMatch(true);
2744
2764
 
2745
2765
  // src/pcb/pcb_component_invalid_layer_error.ts
2746
- import { z as z124 } from "zod";
2747
- var pcb_component_invalid_layer_error = z124.object({
2748
- type: z124.literal("pcb_component_invalid_layer_error"),
2766
+ import { z as z125 } from "zod";
2767
+ var pcb_component_invalid_layer_error = z125.object({
2768
+ type: z125.literal("pcb_component_invalid_layer_error"),
2749
2769
  pcb_component_invalid_layer_error_id: getZodPrefixedIdWithDefault(
2750
2770
  "pcb_component_invalid_layer_error"
2751
2771
  ),
2752
- error_type: z124.literal("pcb_component_invalid_layer_error").default("pcb_component_invalid_layer_error"),
2753
- message: z124.string(),
2754
- pcb_component_id: z124.string().optional(),
2755
- source_component_id: z124.string(),
2772
+ error_type: z125.literal("pcb_component_invalid_layer_error").default("pcb_component_invalid_layer_error"),
2773
+ message: z125.string(),
2774
+ pcb_component_id: z125.string().optional(),
2775
+ source_component_id: z125.string(),
2756
2776
  layer: layer_ref,
2757
- subcircuit_id: z124.string().optional()
2777
+ subcircuit_id: z125.string().optional()
2758
2778
  }).describe(
2759
2779
  "Error emitted when a component is placed on an invalid layer (components can only be on 'top' or 'bottom' layers)"
2760
2780
  );
2761
2781
  expectTypesMatch(true);
2762
2782
 
2763
2783
  // src/pcb/pcb_via_clearance_error.ts
2764
- import { z as z125 } from "zod";
2765
- var pcb_via_clearance_error = z125.object({
2766
- type: z125.literal("pcb_via_clearance_error"),
2784
+ import { z as z126 } from "zod";
2785
+ var pcb_via_clearance_error = z126.object({
2786
+ type: z126.literal("pcb_via_clearance_error"),
2767
2787
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
2768
- error_type: z125.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
2769
- message: z125.string(),
2770
- pcb_via_ids: z125.array(z125.string()).min(2),
2788
+ error_type: z126.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
2789
+ message: z126.string(),
2790
+ pcb_via_ids: z126.array(z126.string()).min(2),
2771
2791
  minimum_clearance: distance.optional(),
2772
2792
  actual_clearance: distance.optional(),
2773
- pcb_center: z125.object({
2774
- x: z125.number().optional(),
2775
- y: z125.number().optional()
2793
+ pcb_center: z126.object({
2794
+ x: z126.number().optional(),
2795
+ y: z126.number().optional()
2776
2796
  }).optional(),
2777
- subcircuit_id: z125.string().optional()
2797
+ subcircuit_id: z126.string().optional()
2778
2798
  }).describe("Error emitted when vias are closer than the allowed clearance");
2779
2799
  expectTypesMatch(true);
2780
2800
 
2781
2801
  // src/pcb/pcb_courtyard_rect.ts
2782
- import { z as z126 } from "zod";
2783
- var pcb_courtyard_rect = z126.object({
2784
- type: z126.literal("pcb_courtyard_rect"),
2802
+ import { z as z127 } from "zod";
2803
+ var pcb_courtyard_rect = z127.object({
2804
+ type: z127.literal("pcb_courtyard_rect"),
2785
2805
  pcb_courtyard_rect_id: getZodPrefixedIdWithDefault("pcb_courtyard_rect"),
2786
- pcb_component_id: z126.string(),
2787
- pcb_group_id: z126.string().optional(),
2788
- subcircuit_id: z126.string().optional(),
2806
+ pcb_component_id: z127.string(),
2807
+ pcb_group_id: z127.string().optional(),
2808
+ subcircuit_id: z127.string().optional(),
2789
2809
  center: point,
2790
2810
  width: length,
2791
2811
  height: length,
2792
2812
  layer: visible_layer,
2793
- color: z126.string().optional()
2813
+ color: z127.string().optional()
2794
2814
  }).describe("Defines a courtyard rectangle on the PCB");
2795
2815
  expectTypesMatch(true);
2796
2816
 
2797
2817
  // src/pcb/pcb_courtyard_outline.ts
2798
- import { z as z127 } from "zod";
2799
- var pcb_courtyard_outline = z127.object({
2800
- type: z127.literal("pcb_courtyard_outline"),
2818
+ import { z as z128 } from "zod";
2819
+ var pcb_courtyard_outline = z128.object({
2820
+ type: z128.literal("pcb_courtyard_outline"),
2801
2821
  pcb_courtyard_outline_id: getZodPrefixedIdWithDefault(
2802
2822
  "pcb_courtyard_outline"
2803
2823
  ),
2804
- pcb_component_id: z127.string(),
2805
- pcb_group_id: z127.string().optional(),
2806
- subcircuit_id: z127.string().optional(),
2824
+ pcb_component_id: z128.string(),
2825
+ pcb_group_id: z128.string().optional(),
2826
+ subcircuit_id: z128.string().optional(),
2807
2827
  layer: visible_layer,
2808
- outline: z127.array(point).min(2),
2828
+ outline: z128.array(point).min(2),
2809
2829
  stroke_width: length.default("0.1mm"),
2810
- is_closed: z127.boolean().optional(),
2811
- is_stroke_dashed: z127.boolean().optional(),
2812
- color: z127.string().optional()
2830
+ is_closed: z128.boolean().optional(),
2831
+ is_stroke_dashed: z128.boolean().optional(),
2832
+ color: z128.string().optional()
2813
2833
  }).describe("Defines a courtyard outline on the PCB");
2814
2834
  expectTypesMatch(true);
2815
2835
 
2816
2836
  // src/pcb/pcb_courtyard_polygon.ts
2817
- import { z as z128 } from "zod";
2818
- var pcb_courtyard_polygon = z128.object({
2819
- type: z128.literal("pcb_courtyard_polygon"),
2837
+ import { z as z129 } from "zod";
2838
+ var pcb_courtyard_polygon = z129.object({
2839
+ type: z129.literal("pcb_courtyard_polygon"),
2820
2840
  pcb_courtyard_polygon_id: getZodPrefixedIdWithDefault(
2821
2841
  "pcb_courtyard_polygon"
2822
2842
  ),
2823
- pcb_component_id: z128.string(),
2824
- pcb_group_id: z128.string().optional(),
2825
- subcircuit_id: z128.string().optional(),
2843
+ pcb_component_id: z129.string(),
2844
+ pcb_group_id: z129.string().optional(),
2845
+ subcircuit_id: z129.string().optional(),
2826
2846
  layer: visible_layer,
2827
- points: z128.array(point).min(3),
2828
- color: z128.string().optional()
2847
+ points: z129.array(point).min(3),
2848
+ color: z129.string().optional()
2829
2849
  }).describe("Defines a courtyard polygon on the PCB");
2830
2850
  expectTypesMatch(true);
2831
2851
 
2832
2852
  // src/cad/cad_component.ts
2833
- import { z as z129 } from "zod";
2834
- var cad_component = z129.object({
2835
- type: z129.literal("cad_component"),
2836
- cad_component_id: z129.string(),
2837
- pcb_component_id: z129.string(),
2838
- source_component_id: z129.string(),
2853
+ import { z as z130 } from "zod";
2854
+ var cad_component = z130.object({
2855
+ type: z130.literal("cad_component"),
2856
+ cad_component_id: z130.string(),
2857
+ pcb_component_id: z130.string(),
2858
+ source_component_id: z130.string(),
2839
2859
  position: point3,
2840
2860
  rotation: point3.optional(),
2841
2861
  size: point3.optional(),
2842
2862
  layer: layer_ref.optional(),
2843
- subcircuit_id: z129.string().optional(),
2863
+ subcircuit_id: z130.string().optional(),
2844
2864
  // These are all ways to generate/load the 3d model
2845
- footprinter_string: z129.string().optional(),
2846
- model_obj_url: z129.string().optional(),
2847
- model_stl_url: z129.string().optional(),
2848
- model_3mf_url: z129.string().optional(),
2849
- model_gltf_url: z129.string().optional(),
2850
- model_glb_url: z129.string().optional(),
2851
- model_step_url: z129.string().optional(),
2852
- model_wrl_url: z129.string().optional(),
2853
- model_unit_to_mm_scale_factor: z129.number().optional(),
2854
- model_jscad: z129.any().optional(),
2855
- show_as_translucent_model: z129.boolean().optional()
2865
+ footprinter_string: z130.string().optional(),
2866
+ model_obj_url: z130.string().optional(),
2867
+ model_stl_url: z130.string().optional(),
2868
+ model_3mf_url: z130.string().optional(),
2869
+ model_gltf_url: z130.string().optional(),
2870
+ model_glb_url: z130.string().optional(),
2871
+ model_step_url: z130.string().optional(),
2872
+ model_wrl_url: z130.string().optional(),
2873
+ model_unit_to_mm_scale_factor: z130.number().optional(),
2874
+ model_jscad: z130.any().optional(),
2875
+ show_as_translucent_model: z130.boolean().optional()
2856
2876
  }).describe("Defines a component on the PCB");
2857
2877
  expectTypesMatch(true);
2858
2878
 
2859
2879
  // src/simulation/simulation_voltage_source.ts
2860
- import { z as z130 } from "zod";
2861
- var wave_shape = z130.enum(["sinewave", "square", "triangle", "sawtooth"]);
2862
- var percentage = z130.union([z130.string(), z130.number()]).transform((val) => {
2880
+ import { z as z131 } from "zod";
2881
+ var wave_shape = z131.enum(["sinewave", "square", "triangle", "sawtooth"]);
2882
+ var percentage = z131.union([z131.string(), z131.number()]).transform((val) => {
2863
2883
  if (typeof val === "string") {
2864
2884
  if (val.endsWith("%")) {
2865
2885
  return parseFloat(val.slice(0, -1)) / 100;
@@ -2868,30 +2888,30 @@ var percentage = z130.union([z130.string(), z130.number()]).transform((val) => {
2868
2888
  }
2869
2889
  return val;
2870
2890
  }).pipe(
2871
- z130.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
2891
+ z131.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
2872
2892
  );
2873
- var simulation_dc_voltage_source = z130.object({
2874
- type: z130.literal("simulation_voltage_source"),
2893
+ var simulation_dc_voltage_source = z131.object({
2894
+ type: z131.literal("simulation_voltage_source"),
2875
2895
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
2876
2896
  "simulation_voltage_source"
2877
2897
  ),
2878
- is_dc_source: z130.literal(true).optional().default(true),
2879
- positive_source_port_id: z130.string().optional(),
2880
- negative_source_port_id: z130.string().optional(),
2881
- positive_source_net_id: z130.string().optional(),
2882
- negative_source_net_id: z130.string().optional(),
2898
+ is_dc_source: z131.literal(true).optional().default(true),
2899
+ positive_source_port_id: z131.string().optional(),
2900
+ negative_source_port_id: z131.string().optional(),
2901
+ positive_source_net_id: z131.string().optional(),
2902
+ negative_source_net_id: z131.string().optional(),
2883
2903
  voltage
2884
2904
  }).describe("Defines a DC voltage source for simulation");
2885
- var simulation_ac_voltage_source = z130.object({
2886
- type: z130.literal("simulation_voltage_source"),
2905
+ var simulation_ac_voltage_source = z131.object({
2906
+ type: z131.literal("simulation_voltage_source"),
2887
2907
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
2888
2908
  "simulation_voltage_source"
2889
2909
  ),
2890
- is_dc_source: z130.literal(false),
2891
- terminal1_source_port_id: z130.string().optional(),
2892
- terminal2_source_port_id: z130.string().optional(),
2893
- terminal1_source_net_id: z130.string().optional(),
2894
- terminal2_source_net_id: z130.string().optional(),
2910
+ is_dc_source: z131.literal(false),
2911
+ terminal1_source_port_id: z131.string().optional(),
2912
+ terminal2_source_port_id: z131.string().optional(),
2913
+ terminal1_source_net_id: z131.string().optional(),
2914
+ terminal2_source_net_id: z131.string().optional(),
2895
2915
  voltage: voltage.optional(),
2896
2916
  frequency: frequency.optional(),
2897
2917
  peak_to_peak_voltage: voltage.optional(),
@@ -2899,14 +2919,14 @@ var simulation_ac_voltage_source = z130.object({
2899
2919
  phase: rotation.optional(),
2900
2920
  duty_cycle: percentage.optional()
2901
2921
  }).describe("Defines an AC voltage source for simulation");
2902
- var simulation_voltage_source = z130.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
2922
+ var simulation_voltage_source = z131.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
2903
2923
  expectTypesMatch(true);
2904
2924
  expectTypesMatch(true);
2905
2925
  expectTypesMatch(true);
2906
2926
 
2907
2927
  // src/simulation/simulation_current_source.ts
2908
- import { z as z131 } from "zod";
2909
- var percentage2 = z131.union([z131.string(), z131.number()]).transform((val) => {
2928
+ import { z as z132 } from "zod";
2929
+ var percentage2 = z132.union([z132.string(), z132.number()]).transform((val) => {
2910
2930
  if (typeof val === "string") {
2911
2931
  if (val.endsWith("%")) {
2912
2932
  return parseFloat(val.slice(0, -1)) / 100;
@@ -2915,30 +2935,30 @@ var percentage2 = z131.union([z131.string(), z131.number()]).transform((val) =>
2915
2935
  }
2916
2936
  return val;
2917
2937
  }).pipe(
2918
- z131.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
2938
+ z132.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
2919
2939
  );
2920
- var simulation_dc_current_source = z131.object({
2921
- type: z131.literal("simulation_current_source"),
2940
+ var simulation_dc_current_source = z132.object({
2941
+ type: z132.literal("simulation_current_source"),
2922
2942
  simulation_current_source_id: getZodPrefixedIdWithDefault(
2923
2943
  "simulation_current_source"
2924
2944
  ),
2925
- is_dc_source: z131.literal(true).optional().default(true),
2926
- positive_source_port_id: z131.string().optional(),
2927
- negative_source_port_id: z131.string().optional(),
2928
- positive_source_net_id: z131.string().optional(),
2929
- negative_source_net_id: z131.string().optional(),
2945
+ is_dc_source: z132.literal(true).optional().default(true),
2946
+ positive_source_port_id: z132.string().optional(),
2947
+ negative_source_port_id: z132.string().optional(),
2948
+ positive_source_net_id: z132.string().optional(),
2949
+ negative_source_net_id: z132.string().optional(),
2930
2950
  current
2931
2951
  }).describe("Defines a DC current source for simulation");
2932
- var simulation_ac_current_source = z131.object({
2933
- type: z131.literal("simulation_current_source"),
2952
+ var simulation_ac_current_source = z132.object({
2953
+ type: z132.literal("simulation_current_source"),
2934
2954
  simulation_current_source_id: getZodPrefixedIdWithDefault(
2935
2955
  "simulation_current_source"
2936
2956
  ),
2937
- is_dc_source: z131.literal(false),
2938
- terminal1_source_port_id: z131.string().optional(),
2939
- terminal2_source_port_id: z131.string().optional(),
2940
- terminal1_source_net_id: z131.string().optional(),
2941
- terminal2_source_net_id: z131.string().optional(),
2957
+ is_dc_source: z132.literal(false),
2958
+ terminal1_source_port_id: z132.string().optional(),
2959
+ terminal2_source_port_id: z132.string().optional(),
2960
+ terminal1_source_net_id: z132.string().optional(),
2961
+ terminal2_source_net_id: z132.string().optional(),
2942
2962
  current: current.optional(),
2943
2963
  frequency: frequency.optional(),
2944
2964
  peak_to_peak_current: current.optional(),
@@ -2946,25 +2966,25 @@ var simulation_ac_current_source = z131.object({
2946
2966
  phase: rotation.optional(),
2947
2967
  duty_cycle: percentage2.optional()
2948
2968
  }).describe("Defines an AC current source for simulation");
2949
- var simulation_current_source = z131.union([simulation_dc_current_source, simulation_ac_current_source]).describe("Defines a current source for simulation");
2969
+ var simulation_current_source = z132.union([simulation_dc_current_source, simulation_ac_current_source]).describe("Defines a current source for simulation");
2950
2970
  expectTypesMatch(true);
2951
2971
  expectTypesMatch(true);
2952
2972
  expectTypesMatch(true);
2953
2973
 
2954
2974
  // src/simulation/simulation_experiment.ts
2955
- import { z as z132 } from "zod";
2956
- var experiment_type = z132.union([
2957
- z132.literal("spice_dc_sweep"),
2958
- z132.literal("spice_dc_operating_point"),
2959
- z132.literal("spice_transient_analysis"),
2960
- z132.literal("spice_ac_analysis")
2975
+ import { z as z133 } from "zod";
2976
+ var experiment_type = z133.union([
2977
+ z133.literal("spice_dc_sweep"),
2978
+ z133.literal("spice_dc_operating_point"),
2979
+ z133.literal("spice_transient_analysis"),
2980
+ z133.literal("spice_ac_analysis")
2961
2981
  ]);
2962
- var simulation_experiment = z132.object({
2963
- type: z132.literal("simulation_experiment"),
2982
+ var simulation_experiment = z133.object({
2983
+ type: z133.literal("simulation_experiment"),
2964
2984
  simulation_experiment_id: getZodPrefixedIdWithDefault(
2965
2985
  "simulation_experiment"
2966
2986
  ),
2967
- name: z132.string(),
2987
+ name: z133.string(),
2968
2988
  experiment_type,
2969
2989
  time_per_step: duration_ms.optional(),
2970
2990
  start_time_ms: ms.optional(),
@@ -2973,53 +2993,53 @@ var simulation_experiment = z132.object({
2973
2993
  expectTypesMatch(true);
2974
2994
 
2975
2995
  // src/simulation/simulation_transient_voltage_graph.ts
2976
- import { z as z133 } from "zod";
2977
- var simulation_transient_voltage_graph = z133.object({
2978
- type: z133.literal("simulation_transient_voltage_graph"),
2996
+ import { z as z134 } from "zod";
2997
+ var simulation_transient_voltage_graph = z134.object({
2998
+ type: z134.literal("simulation_transient_voltage_graph"),
2979
2999
  simulation_transient_voltage_graph_id: getZodPrefixedIdWithDefault(
2980
3000
  "simulation_transient_voltage_graph"
2981
3001
  ),
2982
- simulation_experiment_id: z133.string(),
2983
- timestamps_ms: z133.array(z133.number()).optional(),
2984
- voltage_levels: z133.array(z133.number()),
2985
- source_component_id: z133.string().optional(),
2986
- subcircuit_connectivity_map_key: z133.string().optional(),
3002
+ simulation_experiment_id: z134.string(),
3003
+ timestamps_ms: z134.array(z134.number()).optional(),
3004
+ voltage_levels: z134.array(z134.number()),
3005
+ source_component_id: z134.string().optional(),
3006
+ subcircuit_connectivity_map_key: z134.string().optional(),
2987
3007
  time_per_step: duration_ms,
2988
3008
  start_time_ms: ms,
2989
3009
  end_time_ms: ms,
2990
- name: z133.string().optional(),
2991
- color: z133.string().optional()
3010
+ name: z134.string().optional(),
3011
+ color: z134.string().optional()
2992
3012
  }).describe("Stores voltage measurements over time for a simulation");
2993
3013
  expectTypesMatch(true);
2994
3014
 
2995
3015
  // src/simulation/simulation_switch.ts
2996
- import { z as z134 } from "zod";
2997
- var simulation_switch = z134.object({
2998
- type: z134.literal("simulation_switch"),
3016
+ import { z as z135 } from "zod";
3017
+ var simulation_switch = z135.object({
3018
+ type: z135.literal("simulation_switch"),
2999
3019
  simulation_switch_id: getZodPrefixedIdWithDefault("simulation_switch"),
3000
- source_component_id: z134.string().optional(),
3020
+ source_component_id: z135.string().optional(),
3001
3021
  closes_at: ms.optional(),
3002
3022
  opens_at: ms.optional(),
3003
- starts_closed: z134.boolean().optional(),
3023
+ starts_closed: z135.boolean().optional(),
3004
3024
  switching_frequency: frequency.optional()
3005
3025
  }).describe("Defines a switch for simulation timing control");
3006
3026
  expectTypesMatch(true);
3007
3027
 
3008
3028
  // src/simulation/simulation_voltage_probe.ts
3009
- import { z as z135 } from "zod";
3010
- var simulation_voltage_probe = z135.object({
3011
- type: z135.literal("simulation_voltage_probe"),
3029
+ import { z as z136 } from "zod";
3030
+ var simulation_voltage_probe = z136.object({
3031
+ type: z136.literal("simulation_voltage_probe"),
3012
3032
  simulation_voltage_probe_id: getZodPrefixedIdWithDefault(
3013
3033
  "simulation_voltage_probe"
3014
3034
  ),
3015
- source_component_id: z135.string().optional(),
3016
- name: z135.string().optional(),
3017
- signal_input_source_port_id: z135.string().optional(),
3018
- signal_input_source_net_id: z135.string().optional(),
3019
- reference_input_source_port_id: z135.string().optional(),
3020
- reference_input_source_net_id: z135.string().optional(),
3021
- subcircuit_id: z135.string().optional(),
3022
- color: z135.string().optional()
3035
+ source_component_id: z136.string().optional(),
3036
+ name: z136.string().optional(),
3037
+ signal_input_source_port_id: z136.string().optional(),
3038
+ signal_input_source_net_id: z136.string().optional(),
3039
+ reference_input_source_port_id: z136.string().optional(),
3040
+ reference_input_source_net_id: z136.string().optional(),
3041
+ subcircuit_id: z136.string().optional(),
3042
+ color: z136.string().optional()
3023
3043
  }).describe(
3024
3044
  "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."
3025
3045
  ).superRefine((data, ctx) => {
@@ -3029,20 +3049,20 @@ var simulation_voltage_probe = z135.object({
3029
3049
  const has_nets = !!data.signal_input_source_net_id || !!data.reference_input_source_net_id;
3030
3050
  if (has_ports && has_nets) {
3031
3051
  ctx.addIssue({
3032
- code: z135.ZodIssueCode.custom,
3052
+ code: z136.ZodIssueCode.custom,
3033
3053
  message: "Cannot mix port and net connections in a differential probe."
3034
3054
  });
3035
3055
  } else if (has_ports) {
3036
3056
  if (!data.signal_input_source_port_id || !data.reference_input_source_port_id) {
3037
3057
  ctx.addIssue({
3038
- code: z135.ZodIssueCode.custom,
3058
+ code: z136.ZodIssueCode.custom,
3039
3059
  message: "Differential port probe requires both signal_input_source_port_id and reference_input_source_port_id."
3040
3060
  });
3041
3061
  }
3042
3062
  } else if (has_nets) {
3043
3063
  if (!data.signal_input_source_net_id || !data.reference_input_source_net_id) {
3044
3064
  ctx.addIssue({
3045
- code: z135.ZodIssueCode.custom,
3065
+ code: z136.ZodIssueCode.custom,
3046
3066
  message: "Differential net probe requires both signal_input_source_net_id and reference_input_source_net_id."
3047
3067
  });
3048
3068
  }
@@ -3050,7 +3070,7 @@ var simulation_voltage_probe = z135.object({
3050
3070
  } else {
3051
3071
  if (!!data.signal_input_source_port_id === !!data.signal_input_source_net_id) {
3052
3072
  ctx.addIssue({
3053
- code: z135.ZodIssueCode.custom,
3073
+ code: z136.ZodIssueCode.custom,
3054
3074
  message: "A voltage probe must have exactly one of signal_input_source_port_id or signal_input_source_net_id."
3055
3075
  });
3056
3076
  }
@@ -3059,22 +3079,22 @@ var simulation_voltage_probe = z135.object({
3059
3079
  expectTypesMatch(true);
3060
3080
 
3061
3081
  // src/simulation/simulation_unknown_experiment_error.ts
3062
- import { z as z136 } from "zod";
3063
- var simulation_unknown_experiment_error = z136.object({
3064
- type: z136.literal("simulation_unknown_experiment_error"),
3082
+ import { z as z137 } from "zod";
3083
+ var simulation_unknown_experiment_error = z137.object({
3084
+ type: z137.literal("simulation_unknown_experiment_error"),
3065
3085
  simulation_unknown_experiment_error_id: getZodPrefixedIdWithDefault(
3066
3086
  "simulation_unknown_experiment_error"
3067
3087
  ),
3068
- error_type: z136.literal("simulation_unknown_experiment_error").default("simulation_unknown_experiment_error"),
3069
- message: z136.string(),
3070
- simulation_experiment_id: z136.string().optional(),
3071
- subcircuit_id: z136.string().optional()
3088
+ error_type: z137.literal("simulation_unknown_experiment_error").default("simulation_unknown_experiment_error"),
3089
+ message: z137.string(),
3090
+ simulation_experiment_id: z137.string().optional(),
3091
+ subcircuit_id: z137.string().optional()
3072
3092
  }).describe("An unknown error occurred during the simulation experiment.");
3073
3093
  expectTypesMatch(true);
3074
3094
 
3075
3095
  // src/any_circuit_element.ts
3076
- import { z as z137 } from "zod";
3077
- var any_circuit_element = z137.union([
3096
+ import { z as z138 } from "zod";
3097
+ var any_circuit_element = z138.union([
3078
3098
  source_trace,
3079
3099
  source_port,
3080
3100
  source_component_internal_connection,
@@ -3216,6 +3236,7 @@ export {
3216
3236
  length,
3217
3237
  ms,
3218
3238
  ninePointAnchor,
3239
+ pcbRenderLayer,
3219
3240
  pcb_autorouting_error,
3220
3241
  pcb_board,
3221
3242
  pcb_breakout_point,