circuit-json 0.0.149 → 0.0.150

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
@@ -514,11 +514,20 @@ var source_net = z30.object({
514
514
  subcircuit_id: z30.string().optional()
515
515
  });
516
516
 
517
- // src/schematic/schematic_box.ts
517
+ // src/source/source_project_metadata.ts
518
518
  import { z as z31 } from "zod";
519
- var schematic_box = z31.object({
520
- type: z31.literal("schematic_box"),
521
- schematic_component_id: z31.string(),
519
+ var project_metadata = z31.object({
520
+ type: z31.literal("source_project_metadata"),
521
+ name: z31.string().optional(),
522
+ software_used_string: z31.string().optional(),
523
+ created_at: z31.string().datetime().optional()
524
+ });
525
+
526
+ // src/schematic/schematic_box.ts
527
+ import { z as z32 } from "zod";
528
+ var schematic_box = z32.object({
529
+ type: z32.literal("schematic_box"),
530
+ schematic_component_id: z32.string(),
522
531
  width: distance,
523
532
  height: distance,
524
533
  x: distance,
@@ -527,81 +536,81 @@ var schematic_box = z31.object({
527
536
  expectTypesMatch(true);
528
537
 
529
538
  // src/schematic/schematic_path.ts
530
- import { z as z32 } from "zod";
531
- var schematic_path = z32.object({
532
- type: z32.literal("schematic_path"),
533
- schematic_component_id: z32.string(),
534
- fill_color: z32.enum(["red", "blue"]).optional(),
535
- is_filled: z32.boolean().optional(),
536
- points: z32.array(point)
539
+ import { z as z33 } from "zod";
540
+ var schematic_path = z33.object({
541
+ type: z33.literal("schematic_path"),
542
+ schematic_component_id: z33.string(),
543
+ fill_color: z33.enum(["red", "blue"]).optional(),
544
+ is_filled: z33.boolean().optional(),
545
+ points: z33.array(point)
537
546
  });
538
547
  expectTypesMatch(true);
539
548
 
540
549
  // src/schematic/schematic_component.ts
541
- import { z as z33 } from "zod";
542
- var schematic_pin_styles = z33.record(
543
- z33.object({
550
+ import { z as z34 } from "zod";
551
+ var schematic_pin_styles = z34.record(
552
+ z34.object({
544
553
  left_margin: length.optional(),
545
554
  right_margin: length.optional(),
546
555
  top_margin: length.optional(),
547
556
  bottom_margin: length.optional()
548
557
  })
549
558
  );
550
- var schematic_component_port_arrangement_by_size = z33.object({
551
- left_size: z33.number(),
552
- right_size: z33.number(),
553
- top_size: z33.number().optional(),
554
- bottom_size: z33.number().optional()
559
+ var schematic_component_port_arrangement_by_size = z34.object({
560
+ left_size: z34.number(),
561
+ right_size: z34.number(),
562
+ top_size: z34.number().optional(),
563
+ bottom_size: z34.number().optional()
555
564
  });
556
565
  expectTypesMatch(true);
557
- var schematic_component_port_arrangement_by_sides = z33.object({
558
- left_side: z33.object({
559
- pins: z33.array(z33.number()),
566
+ var schematic_component_port_arrangement_by_sides = z34.object({
567
+ left_side: z34.object({
568
+ pins: z34.array(z34.number()),
560
569
  // @ts-ignore
561
- direction: z33.enum(["top-to-bottom", "bottom-to-top"]).optional()
570
+ direction: z34.enum(["top-to-bottom", "bottom-to-top"]).optional()
562
571
  }).optional(),
563
- right_side: z33.object({
564
- pins: z33.array(z33.number()),
572
+ right_side: z34.object({
573
+ pins: z34.array(z34.number()),
565
574
  // @ts-ignore
566
- direction: z33.enum(["top-to-bottom", "bottom-to-top"]).optional()
575
+ direction: z34.enum(["top-to-bottom", "bottom-to-top"]).optional()
567
576
  }).optional(),
568
- top_side: z33.object({
569
- pins: z33.array(z33.number()),
577
+ top_side: z34.object({
578
+ pins: z34.array(z34.number()),
570
579
  // @ts-ignore
571
- direction: z33.enum(["left-to-right", "right-to-left"]).optional()
580
+ direction: z34.enum(["left-to-right", "right-to-left"]).optional()
572
581
  }).optional(),
573
- bottom_side: z33.object({
574
- pins: z33.array(z33.number()),
582
+ bottom_side: z34.object({
583
+ pins: z34.array(z34.number()),
575
584
  // @ts-ignore
576
- direction: z33.enum(["left-to-right", "right-to-left"]).optional()
585
+ direction: z34.enum(["left-to-right", "right-to-left"]).optional()
577
586
  }).optional()
578
587
  });
579
588
  expectTypesMatch(true);
580
- var port_arrangement = z33.union([
589
+ var port_arrangement = z34.union([
581
590
  schematic_component_port_arrangement_by_size,
582
591
  schematic_component_port_arrangement_by_sides
583
592
  ]);
584
- var schematic_component = z33.object({
585
- type: z33.literal("schematic_component"),
593
+ var schematic_component = z34.object({
594
+ type: z34.literal("schematic_component"),
586
595
  size,
587
596
  center: point,
588
- source_component_id: z33.string(),
589
- schematic_component_id: z33.string(),
597
+ source_component_id: z34.string(),
598
+ schematic_component_id: z34.string(),
590
599
  pin_spacing: length.optional(),
591
600
  pin_styles: schematic_pin_styles.optional(),
592
601
  box_width: length.optional(),
593
- symbol_name: z33.string().optional(),
602
+ symbol_name: z34.string().optional(),
594
603
  port_arrangement: port_arrangement.optional(),
595
- port_labels: z33.record(z33.string()).optional(),
596
- symbol_display_value: z33.string().optional()
604
+ port_labels: z34.record(z34.string()).optional(),
605
+ symbol_display_value: z34.string().optional()
597
606
  });
598
607
  expectTypesMatch(true);
599
608
 
600
609
  // src/schematic/schematic_line.ts
601
- import { z as z34 } from "zod";
602
- var schematic_line = z34.object({
603
- type: z34.literal("schematic_line"),
604
- schematic_component_id: z34.string(),
610
+ import { z as z35 } from "zod";
611
+ var schematic_line = z35.object({
612
+ type: z35.literal("schematic_line"),
613
+ schematic_component_id: z35.string(),
605
614
  x1: distance,
606
615
  x2: distance,
607
616
  y1: distance,
@@ -610,113 +619,113 @@ var schematic_line = z34.object({
610
619
  expectTypesMatch(true);
611
620
 
612
621
  // src/schematic/schematic_trace.ts
613
- import { z as z35 } from "zod";
614
- var schematic_trace = z35.object({
615
- type: z35.literal("schematic_trace"),
616
- schematic_trace_id: z35.string(),
617
- source_trace_id: z35.string(),
618
- junctions: z35.array(
619
- z35.object({
620
- x: z35.number(),
621
- y: z35.number()
622
+ import { z as z36 } from "zod";
623
+ var schematic_trace = z36.object({
624
+ type: z36.literal("schematic_trace"),
625
+ schematic_trace_id: z36.string(),
626
+ source_trace_id: z36.string(),
627
+ junctions: z36.array(
628
+ z36.object({
629
+ x: z36.number(),
630
+ y: z36.number()
622
631
  })
623
632
  ),
624
- edges: z35.array(
625
- z35.object({
626
- from: z35.object({
627
- x: z35.number(),
628
- y: z35.number()
633
+ edges: z36.array(
634
+ z36.object({
635
+ from: z36.object({
636
+ x: z36.number(),
637
+ y: z36.number()
629
638
  }),
630
- to: z35.object({
631
- x: z35.number(),
632
- y: z35.number()
639
+ to: z36.object({
640
+ x: z36.number(),
641
+ y: z36.number()
633
642
  }),
634
- is_crossing: z35.boolean().optional(),
635
- from_schematic_port_id: z35.string().optional(),
636
- to_schematic_port_id: z35.string().optional()
643
+ is_crossing: z36.boolean().optional(),
644
+ from_schematic_port_id: z36.string().optional(),
645
+ to_schematic_port_id: z36.string().optional()
637
646
  })
638
647
  )
639
648
  });
640
649
  expectTypesMatch(true);
641
650
 
642
651
  // src/schematic/schematic_text.ts
643
- import { z as z36 } from "zod";
644
- var schematic_text = z36.object({
645
- type: z36.literal("schematic_text"),
646
- schematic_component_id: z36.string(),
647
- schematic_text_id: z36.string(),
648
- text: z36.string(),
649
- position: z36.object({
652
+ import { z as z37 } from "zod";
653
+ var schematic_text = z37.object({
654
+ type: z37.literal("schematic_text"),
655
+ schematic_component_id: z37.string(),
656
+ schematic_text_id: z37.string(),
657
+ text: z37.string(),
658
+ position: z37.object({
650
659
  x: distance,
651
660
  y: distance
652
661
  }),
653
- rotation: z36.number().default(0),
654
- anchor: z36.enum(["center", "left", "right", "top", "bottom"]).default("center"),
655
- color: z36.string().default("#000000")
662
+ rotation: z37.number().default(0),
663
+ anchor: z37.enum(["center", "left", "right", "top", "bottom"]).default("center"),
664
+ color: z37.string().default("#000000")
656
665
  });
657
666
  expectTypesMatch(true);
658
667
 
659
668
  // src/schematic/schematic_port.ts
660
- import { z as z37 } from "zod";
661
- var schematic_port = z37.object({
662
- type: z37.literal("schematic_port"),
663
- schematic_port_id: z37.string(),
664
- source_port_id: z37.string(),
665
- schematic_component_id: z37.string().optional(),
669
+ import { z as z38 } from "zod";
670
+ var schematic_port = z38.object({
671
+ type: z38.literal("schematic_port"),
672
+ schematic_port_id: z38.string(),
673
+ source_port_id: z38.string(),
674
+ schematic_component_id: z38.string().optional(),
666
675
  center: point,
667
- facing_direction: z37.enum(["up", "down", "left", "right"]).optional(),
668
- distance_from_component_edge: z37.number().optional(),
669
- side_of_component: z37.enum(["top", "bottom", "left", "right"]).optional(),
670
- true_ccw_index: z37.number().optional(),
671
- pin_number: z37.number().optional(),
672
- display_pin_label: z37.string().optional()
676
+ facing_direction: z38.enum(["up", "down", "left", "right"]).optional(),
677
+ distance_from_component_edge: z38.number().optional(),
678
+ side_of_component: z38.enum(["top", "bottom", "left", "right"]).optional(),
679
+ true_ccw_index: z38.number().optional(),
680
+ pin_number: z38.number().optional(),
681
+ display_pin_label: z38.string().optional()
673
682
  }).describe("Defines a port on a schematic component");
674
683
  expectTypesMatch(true);
675
684
 
676
685
  // src/schematic/schematic_net_label.ts
677
- import { z as z38 } from "zod";
678
- var schematic_net_label = z38.object({
679
- type: z38.literal("schematic_net_label"),
680
- source_net_id: z38.string(),
686
+ import { z as z39 } from "zod";
687
+ var schematic_net_label = z39.object({
688
+ type: z39.literal("schematic_net_label"),
689
+ source_net_id: z39.string(),
681
690
  center: point,
682
691
  anchor_position: point.optional(),
683
- anchor_side: z38.enum(["top", "bottom", "left", "right"]),
684
- text: z38.string(),
685
- symbol_name: z38.string().optional()
692
+ anchor_side: z39.enum(["top", "bottom", "left", "right"]),
693
+ text: z39.string(),
694
+ symbol_name: z39.string().optional()
686
695
  });
687
696
 
688
697
  // src/schematic/schematic_error.ts
689
- import { z as z39 } from "zod";
690
- var schematic_error = z39.object({
691
- type: z39.literal("schematic_error"),
692
- schematic_error_id: z39.string(),
698
+ import { z as z40 } from "zod";
699
+ var schematic_error = z40.object({
700
+ type: z40.literal("schematic_error"),
701
+ schematic_error_id: z40.string(),
693
702
  // eventually each error type should be broken out into a dir of files
694
- error_type: z39.literal("schematic_port_not_found"),
695
- message: z39.string()
703
+ error_type: z40.literal("schematic_port_not_found"),
704
+ message: z40.string()
696
705
  }).describe("Defines a schematic error on the schematic");
697
706
  expectTypesMatch(true);
698
707
 
699
708
  // src/schematic/schematic_debug_object.ts
700
- import { z as z40 } from "zod";
701
- var schematic_debug_object_base = z40.object({
702
- type: z40.literal("schematic_debug_object"),
703
- label: z40.string().optional()
709
+ import { z as z41 } from "zod";
710
+ var schematic_debug_object_base = z41.object({
711
+ type: z41.literal("schematic_debug_object"),
712
+ label: z41.string().optional()
704
713
  });
705
714
  var schematic_debug_rect = schematic_debug_object_base.extend({
706
- shape: z40.literal("rect"),
715
+ shape: z41.literal("rect"),
707
716
  center: point,
708
717
  size
709
718
  });
710
719
  var schematic_debug_line = schematic_debug_object_base.extend({
711
- shape: z40.literal("line"),
720
+ shape: z41.literal("line"),
712
721
  start: point,
713
722
  end: point
714
723
  });
715
724
  var schematic_debug_point = schematic_debug_object_base.extend({
716
- shape: z40.literal("point"),
725
+ shape: z41.literal("point"),
717
726
  center: point
718
727
  });
719
- var schematic_debug_object = z40.discriminatedUnion("shape", [
728
+ var schematic_debug_object = z41.discriminatedUnion("shape", [
720
729
  schematic_debug_rect,
721
730
  schematic_debug_line,
722
731
  schematic_debug_point
@@ -724,18 +733,18 @@ var schematic_debug_object = z40.discriminatedUnion("shape", [
724
733
  expectTypesMatch(true);
725
734
 
726
735
  // src/schematic/schematic_voltage_probe.ts
727
- import { z as z41 } from "zod";
728
- var schematic_voltage_probe = z41.object({
729
- type: z41.literal("schematic_voltage_probe"),
730
- schematic_voltage_probe_id: z41.string(),
736
+ import { z as z42 } from "zod";
737
+ var schematic_voltage_probe = z42.object({
738
+ type: z42.literal("schematic_voltage_probe"),
739
+ schematic_voltage_probe_id: z42.string(),
731
740
  position: point,
732
- schematic_trace_id: z41.string(),
741
+ schematic_trace_id: z42.string(),
733
742
  voltage: voltage.optional()
734
743
  }).describe("Defines a voltage probe measurement point on a schematic trace");
735
744
  expectTypesMatch(true);
736
745
 
737
746
  // src/pcb/properties/layer_ref.ts
738
- import { z as z42 } from "zod";
747
+ import { z as z43 } from "zod";
739
748
  var all_layers = [
740
749
  "top",
741
750
  "bottom",
@@ -746,9 +755,9 @@ var all_layers = [
746
755
  "inner5",
747
756
  "inner6"
748
757
  ];
749
- var layer_string = z42.enum(all_layers);
758
+ var layer_string = z43.enum(all_layers);
750
759
  var layer_ref = layer_string.or(
751
- z42.object({
760
+ z43.object({
752
761
  name: layer_string
753
762
  })
754
763
  ).transform((layer) => {
@@ -757,52 +766,52 @@ var layer_ref = layer_string.or(
757
766
  }
758
767
  return layer.name;
759
768
  });
760
- var visible_layer = z42.enum(["top", "bottom"]);
769
+ var visible_layer = z43.enum(["top", "bottom"]);
761
770
 
762
771
  // src/pcb/properties/pcb_route_hints.ts
763
- import { z as z43 } from "zod";
764
- var pcb_route_hint = z43.object({
772
+ import { z as z44 } from "zod";
773
+ var pcb_route_hint = z44.object({
765
774
  x: distance,
766
775
  y: distance,
767
- via: z43.boolean().optional(),
776
+ via: z44.boolean().optional(),
768
777
  via_to_layer: layer_ref.optional()
769
778
  });
770
- var pcb_route_hints = z43.array(pcb_route_hint);
779
+ var pcb_route_hints = z44.array(pcb_route_hint);
771
780
 
772
781
  // src/pcb/properties/route_hint_point.ts
773
- import { z as z44 } from "zod";
774
- var route_hint_point = z44.object({
782
+ import { z as z45 } from "zod";
783
+ var route_hint_point = z45.object({
775
784
  x: distance,
776
785
  y: distance,
777
- via: z44.boolean().optional(),
786
+ via: z45.boolean().optional(),
778
787
  to_layer: layer_ref.optional(),
779
788
  trace_width: distance.optional()
780
789
  });
781
790
 
782
791
  // src/pcb/pcb_component.ts
783
- import { z as z45 } from "zod";
784
- var pcb_component = z45.object({
785
- type: z45.literal("pcb_component"),
792
+ import { z as z46 } from "zod";
793
+ var pcb_component = z46.object({
794
+ type: z46.literal("pcb_component"),
786
795
  pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
787
- source_component_id: z45.string(),
796
+ source_component_id: z46.string(),
788
797
  center: point,
789
798
  layer: layer_ref,
790
799
  rotation,
791
800
  width: length,
792
801
  height: length,
793
- subcircuit_id: z45.string().optional()
802
+ subcircuit_id: z46.string().optional()
794
803
  }).describe("Defines a component on the PCB");
795
804
  expectTypesMatch(true);
796
805
 
797
806
  // src/pcb/pcb_hole.ts
798
- import { z as z46 } from "zod";
799
- var pcb_hole_circle_or_square = z46.object({
800
- type: z46.literal("pcb_hole"),
807
+ import { z as z47 } from "zod";
808
+ var pcb_hole_circle_or_square = z47.object({
809
+ type: z47.literal("pcb_hole"),
801
810
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
802
- pcb_group_id: z46.string().optional(),
803
- subcircuit_id: z46.string().optional(),
804
- hole_shape: z46.enum(["circle", "square"]),
805
- hole_diameter: z46.number(),
811
+ pcb_group_id: z47.string().optional(),
812
+ subcircuit_id: z47.string().optional(),
813
+ hole_shape: z47.enum(["circle", "square"]),
814
+ hole_diameter: z47.number(),
806
815
  x: distance,
807
816
  y: distance
808
817
  });
@@ -810,14 +819,14 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
810
819
  "Defines a circular or square hole on the PCB"
811
820
  );
812
821
  expectTypesMatch(true);
813
- var pcb_hole_oval = z46.object({
814
- type: z46.literal("pcb_hole"),
822
+ var pcb_hole_oval = z47.object({
823
+ type: z47.literal("pcb_hole"),
815
824
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
816
- pcb_group_id: z46.string().optional(),
817
- subcircuit_id: z46.string().optional(),
818
- hole_shape: z46.literal("oval"),
819
- hole_width: z46.number(),
820
- hole_height: z46.number(),
825
+ pcb_group_id: z47.string().optional(),
826
+ subcircuit_id: z47.string().optional(),
827
+ hole_shape: z47.literal("oval"),
828
+ hole_width: z47.number(),
829
+ hole_height: z47.number(),
821
830
  x: distance,
822
831
  y: distance
823
832
  });
@@ -828,58 +837,58 @@ expectTypesMatch(true);
828
837
  var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
829
838
 
830
839
  // src/pcb/pcb_plated_hole.ts
831
- import { z as z47 } from "zod";
832
- var pcb_plated_hole_circle = z47.object({
833
- type: z47.literal("pcb_plated_hole"),
834
- shape: z47.literal("circle"),
835
- pcb_group_id: z47.string().optional(),
836
- subcircuit_id: z47.string().optional(),
837
- outer_diameter: z47.number(),
838
- hole_diameter: z47.number(),
840
+ import { z as z48 } from "zod";
841
+ var pcb_plated_hole_circle = z48.object({
842
+ type: z48.literal("pcb_plated_hole"),
843
+ shape: z48.literal("circle"),
844
+ pcb_group_id: z48.string().optional(),
845
+ subcircuit_id: z48.string().optional(),
846
+ outer_diameter: z48.number(),
847
+ hole_diameter: z48.number(),
839
848
  x: distance,
840
849
  y: distance,
841
- layers: z47.array(layer_ref),
842
- port_hints: z47.array(z47.string()).optional(),
843
- pcb_component_id: z47.string().optional(),
844
- pcb_port_id: z47.string().optional(),
850
+ layers: z48.array(layer_ref),
851
+ port_hints: z48.array(z48.string()).optional(),
852
+ pcb_component_id: z48.string().optional(),
853
+ pcb_port_id: z48.string().optional(),
845
854
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
846
855
  });
847
- var pcb_plated_hole_oval = z47.object({
848
- type: z47.literal("pcb_plated_hole"),
849
- shape: z47.enum(["oval", "pill"]),
850
- pcb_group_id: z47.string().optional(),
851
- subcircuit_id: z47.string().optional(),
852
- outer_width: z47.number(),
853
- outer_height: z47.number(),
854
- hole_width: z47.number(),
855
- hole_height: z47.number(),
856
+ var pcb_plated_hole_oval = z48.object({
857
+ type: z48.literal("pcb_plated_hole"),
858
+ shape: z48.enum(["oval", "pill"]),
859
+ pcb_group_id: z48.string().optional(),
860
+ subcircuit_id: z48.string().optional(),
861
+ outer_width: z48.number(),
862
+ outer_height: z48.number(),
863
+ hole_width: z48.number(),
864
+ hole_height: z48.number(),
856
865
  x: distance,
857
866
  y: distance,
858
- layers: z47.array(layer_ref),
859
- port_hints: z47.array(z47.string()).optional(),
860
- pcb_component_id: z47.string().optional(),
861
- pcb_port_id: z47.string().optional(),
867
+ layers: z48.array(layer_ref),
868
+ port_hints: z48.array(z48.string()).optional(),
869
+ pcb_component_id: z48.string().optional(),
870
+ pcb_port_id: z48.string().optional(),
862
871
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
863
872
  });
864
- var pcb_circular_hole_with_rect_pad = z47.object({
865
- type: z47.literal("pcb_plated_hole"),
866
- shape: z47.literal("circular_hole_with_rect_pad"),
867
- pcb_group_id: z47.string().optional(),
868
- subcircuit_id: z47.string().optional(),
869
- hole_shape: z47.literal("circle"),
870
- pad_shape: z47.literal("rect"),
871
- hole_diameter: z47.number(),
872
- rect_pad_width: z47.number(),
873
- rect_pad_height: z47.number(),
873
+ var pcb_circular_hole_with_rect_pad = z48.object({
874
+ type: z48.literal("pcb_plated_hole"),
875
+ shape: z48.literal("circular_hole_with_rect_pad"),
876
+ pcb_group_id: z48.string().optional(),
877
+ subcircuit_id: z48.string().optional(),
878
+ hole_shape: z48.literal("circle"),
879
+ pad_shape: z48.literal("rect"),
880
+ hole_diameter: z48.number(),
881
+ rect_pad_width: z48.number(),
882
+ rect_pad_height: z48.number(),
874
883
  x: distance,
875
884
  y: distance,
876
- layers: z47.array(layer_ref),
877
- port_hints: z47.array(z47.string()).optional(),
878
- pcb_component_id: z47.string().optional(),
879
- pcb_port_id: z47.string().optional(),
885
+ layers: z48.array(layer_ref),
886
+ port_hints: z48.array(z48.string()).optional(),
887
+ pcb_component_id: z48.string().optional(),
888
+ pcb_port_id: z48.string().optional(),
880
889
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
881
890
  });
882
- var pcb_plated_hole = z47.union([
891
+ var pcb_plated_hole = z48.union([
883
892
  pcb_plated_hole_circle,
884
893
  pcb_plated_hole_oval,
885
894
  pcb_circular_hole_with_rect_pad
@@ -891,84 +900,84 @@ expectTypesMatch(true);
891
900
  expectTypesMatch(true);
892
901
 
893
902
  // src/pcb/pcb_port.ts
894
- import { z as z48 } from "zod";
895
- var pcb_port = z48.object({
896
- type: z48.literal("pcb_port"),
903
+ import { z as z49 } from "zod";
904
+ var pcb_port = z49.object({
905
+ type: z49.literal("pcb_port"),
897
906
  pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
898
- pcb_group_id: z48.string().optional(),
899
- subcircuit_id: z48.string().optional(),
900
- source_port_id: z48.string(),
901
- pcb_component_id: z48.string(),
907
+ pcb_group_id: z49.string().optional(),
908
+ subcircuit_id: z49.string().optional(),
909
+ source_port_id: z49.string(),
910
+ pcb_component_id: z49.string(),
902
911
  x: distance,
903
912
  y: distance,
904
- layers: z48.array(layer_ref)
913
+ layers: z49.array(layer_ref)
905
914
  }).describe("Defines a port on the PCB");
906
915
  expectTypesMatch(true);
907
916
 
908
917
  // src/pcb/pcb_smtpad.ts
909
- import { z as z49 } from "zod";
910
- var pcb_smtpad_circle = z49.object({
911
- type: z49.literal("pcb_smtpad"),
912
- shape: z49.literal("circle"),
918
+ import { z as z50 } from "zod";
919
+ var pcb_smtpad_circle = z50.object({
920
+ type: z50.literal("pcb_smtpad"),
921
+ shape: z50.literal("circle"),
913
922
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
914
- pcb_group_id: z49.string().optional(),
915
- subcircuit_id: z49.string().optional(),
923
+ pcb_group_id: z50.string().optional(),
924
+ subcircuit_id: z50.string().optional(),
916
925
  x: distance,
917
926
  y: distance,
918
- radius: z49.number(),
927
+ radius: z50.number(),
919
928
  layer: layer_ref,
920
- port_hints: z49.array(z49.string()).optional(),
921
- pcb_component_id: z49.string().optional(),
922
- pcb_port_id: z49.string().optional()
929
+ port_hints: z50.array(z50.string()).optional(),
930
+ pcb_component_id: z50.string().optional(),
931
+ pcb_port_id: z50.string().optional()
923
932
  });
924
- var pcb_smtpad_rect = z49.object({
925
- type: z49.literal("pcb_smtpad"),
926
- shape: z49.literal("rect"),
933
+ var pcb_smtpad_rect = z50.object({
934
+ type: z50.literal("pcb_smtpad"),
935
+ shape: z50.literal("rect"),
927
936
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
928
- pcb_group_id: z49.string().optional(),
929
- subcircuit_id: z49.string().optional(),
937
+ pcb_group_id: z50.string().optional(),
938
+ subcircuit_id: z50.string().optional(),
930
939
  x: distance,
931
940
  y: distance,
932
- width: z49.number(),
933
- height: z49.number(),
941
+ width: z50.number(),
942
+ height: z50.number(),
934
943
  layer: layer_ref,
935
- port_hints: z49.array(z49.string()).optional(),
936
- pcb_component_id: z49.string().optional(),
937
- pcb_port_id: z49.string().optional()
944
+ port_hints: z50.array(z50.string()).optional(),
945
+ pcb_component_id: z50.string().optional(),
946
+ pcb_port_id: z50.string().optional()
938
947
  });
939
- var pcb_smtpad_rotated_rect = z49.object({
940
- type: z49.literal("pcb_smtpad"),
941
- shape: z49.literal("rotated_rect"),
948
+ var pcb_smtpad_rotated_rect = z50.object({
949
+ type: z50.literal("pcb_smtpad"),
950
+ shape: z50.literal("rotated_rect"),
942
951
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
943
- pcb_group_id: z49.string().optional(),
944
- subcircuit_id: z49.string().optional(),
952
+ pcb_group_id: z50.string().optional(),
953
+ subcircuit_id: z50.string().optional(),
945
954
  x: distance,
946
955
  y: distance,
947
- width: z49.number(),
948
- height: z49.number(),
956
+ width: z50.number(),
957
+ height: z50.number(),
949
958
  ccw_rotation: rotation,
950
959
  layer: layer_ref,
951
- port_hints: z49.array(z49.string()).optional(),
952
- pcb_component_id: z49.string().optional(),
953
- pcb_port_id: z49.string().optional()
960
+ port_hints: z50.array(z50.string()).optional(),
961
+ pcb_component_id: z50.string().optional(),
962
+ pcb_port_id: z50.string().optional()
954
963
  });
955
- var pcb_smtpad_pill = z49.object({
956
- type: z49.literal("pcb_smtpad"),
957
- shape: z49.literal("pill"),
964
+ var pcb_smtpad_pill = z50.object({
965
+ type: z50.literal("pcb_smtpad"),
966
+ shape: z50.literal("pill"),
958
967
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
959
- pcb_group_id: z49.string().optional(),
960
- subcircuit_id: z49.string().optional(),
968
+ pcb_group_id: z50.string().optional(),
969
+ subcircuit_id: z50.string().optional(),
961
970
  x: distance,
962
971
  y: distance,
963
- width: z49.number(),
964
- height: z49.number(),
965
- radius: z49.number(),
972
+ width: z50.number(),
973
+ height: z50.number(),
974
+ radius: z50.number(),
966
975
  layer: layer_ref,
967
- port_hints: z49.array(z49.string()).optional(),
968
- pcb_component_id: z49.string().optional(),
969
- pcb_port_id: z49.string().optional()
976
+ port_hints: z50.array(z50.string()).optional(),
977
+ pcb_component_id: z50.string().optional(),
978
+ pcb_port_id: z50.string().optional()
970
979
  });
971
- var pcb_smtpad = z49.union([
980
+ var pcb_smtpad = z50.union([
972
981
  pcb_smtpad_circle,
973
982
  pcb_smtpad_rect,
974
983
  pcb_smtpad_rotated_rect,
@@ -980,106 +989,106 @@ expectTypesMatch(true);
980
989
  expectTypesMatch(true);
981
990
 
982
991
  // src/pcb/pcb_solder_paste.ts
983
- import { z as z50 } from "zod";
984
- var pcb_solder_paste_circle = z50.object({
985
- type: z50.literal("pcb_solder_paste"),
986
- shape: z50.literal("circle"),
992
+ import { z as z51 } from "zod";
993
+ var pcb_solder_paste_circle = z51.object({
994
+ type: z51.literal("pcb_solder_paste"),
995
+ shape: z51.literal("circle"),
987
996
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
988
- pcb_group_id: z50.string().optional(),
989
- subcircuit_id: z50.string().optional(),
997
+ pcb_group_id: z51.string().optional(),
998
+ subcircuit_id: z51.string().optional(),
990
999
  x: distance,
991
1000
  y: distance,
992
- radius: z50.number(),
1001
+ radius: z51.number(),
993
1002
  layer: layer_ref,
994
- pcb_component_id: z50.string().optional(),
995
- pcb_smtpad_id: z50.string().optional()
1003
+ pcb_component_id: z51.string().optional(),
1004
+ pcb_smtpad_id: z51.string().optional()
996
1005
  });
997
- var pcb_solder_paste_rect = z50.object({
998
- type: z50.literal("pcb_solder_paste"),
999
- shape: z50.literal("rect"),
1006
+ var pcb_solder_paste_rect = z51.object({
1007
+ type: z51.literal("pcb_solder_paste"),
1008
+ shape: z51.literal("rect"),
1000
1009
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1001
- pcb_group_id: z50.string().optional(),
1002
- subcircuit_id: z50.string().optional(),
1010
+ pcb_group_id: z51.string().optional(),
1011
+ subcircuit_id: z51.string().optional(),
1003
1012
  x: distance,
1004
1013
  y: distance,
1005
- width: z50.number(),
1006
- height: z50.number(),
1014
+ width: z51.number(),
1015
+ height: z51.number(),
1007
1016
  layer: layer_ref,
1008
- pcb_component_id: z50.string().optional(),
1009
- pcb_smtpad_id: z50.string().optional()
1017
+ pcb_component_id: z51.string().optional(),
1018
+ pcb_smtpad_id: z51.string().optional()
1010
1019
  });
1011
- var pcb_solder_paste = z50.union([pcb_solder_paste_circle, pcb_solder_paste_rect]).describe("Defines solderpaste on the PCB");
1020
+ var pcb_solder_paste = z51.union([pcb_solder_paste_circle, pcb_solder_paste_rect]).describe("Defines solderpaste on the PCB");
1012
1021
  expectTypesMatch(true);
1013
1022
  expectTypesMatch(true);
1014
1023
 
1015
1024
  // src/pcb/pcb_text.ts
1016
- import { z as z51 } from "zod";
1017
- var pcb_text = z51.object({
1018
- type: z51.literal("pcb_text"),
1025
+ import { z as z52 } from "zod";
1026
+ var pcb_text = z52.object({
1027
+ type: z52.literal("pcb_text"),
1019
1028
  pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
1020
- pcb_group_id: z51.string().optional(),
1021
- subcircuit_id: z51.string().optional(),
1022
- text: z51.string(),
1029
+ pcb_group_id: z52.string().optional(),
1030
+ subcircuit_id: z52.string().optional(),
1031
+ text: z52.string(),
1023
1032
  center: point,
1024
1033
  layer: layer_ref,
1025
1034
  width: length,
1026
1035
  height: length,
1027
- lines: z51.number(),
1036
+ lines: z52.number(),
1028
1037
  // @ts-ignore
1029
- align: z51.enum(["bottom-left"])
1038
+ align: z52.enum(["bottom-left"])
1030
1039
  }).describe("Defines text on the PCB");
1031
1040
  expectTypesMatch(true);
1032
1041
 
1033
1042
  // src/pcb/pcb_trace.ts
1034
- import { z as z52 } from "zod";
1035
- var pcb_trace_route_point_wire = z52.object({
1036
- route_type: z52.literal("wire"),
1043
+ import { z as z53 } from "zod";
1044
+ var pcb_trace_route_point_wire = z53.object({
1045
+ route_type: z53.literal("wire"),
1037
1046
  x: distance,
1038
1047
  y: distance,
1039
1048
  width: distance,
1040
- start_pcb_port_id: z52.string().optional(),
1041
- end_pcb_port_id: z52.string().optional(),
1049
+ start_pcb_port_id: z53.string().optional(),
1050
+ end_pcb_port_id: z53.string().optional(),
1042
1051
  layer: layer_ref
1043
1052
  });
1044
- var pcb_trace_route_point_via = z52.object({
1045
- route_type: z52.literal("via"),
1053
+ var pcb_trace_route_point_via = z53.object({
1054
+ route_type: z53.literal("via"),
1046
1055
  x: distance,
1047
1056
  y: distance,
1048
- from_layer: z52.string(),
1049
- to_layer: z52.string()
1057
+ from_layer: z53.string(),
1058
+ to_layer: z53.string()
1050
1059
  });
1051
- var pcb_trace_route_point = z52.union([
1060
+ var pcb_trace_route_point = z53.union([
1052
1061
  pcb_trace_route_point_wire,
1053
1062
  pcb_trace_route_point_via
1054
1063
  ]);
1055
- var pcb_trace = z52.object({
1056
- type: z52.literal("pcb_trace"),
1057
- source_trace_id: z52.string().optional(),
1058
- pcb_component_id: z52.string().optional(),
1064
+ var pcb_trace = z53.object({
1065
+ type: z53.literal("pcb_trace"),
1066
+ source_trace_id: z53.string().optional(),
1067
+ pcb_component_id: z53.string().optional(),
1059
1068
  pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
1060
- pcb_group_id: z52.string().optional(),
1061
- subcircuit_id: z52.string().optional(),
1062
- route_thickness_mode: z52.enum(["constant", "interpolated"]).default("constant").optional(),
1063
- route_order_index: z52.number().optional(),
1064
- should_round_corners: z52.boolean().optional(),
1065
- trace_length: z52.number().optional(),
1066
- route: z52.array(
1067
- z52.union([
1068
- z52.object({
1069
- route_type: z52.literal("wire"),
1069
+ pcb_group_id: z53.string().optional(),
1070
+ subcircuit_id: z53.string().optional(),
1071
+ route_thickness_mode: z53.enum(["constant", "interpolated"]).default("constant").optional(),
1072
+ route_order_index: z53.number().optional(),
1073
+ should_round_corners: z53.boolean().optional(),
1074
+ trace_length: z53.number().optional(),
1075
+ route: z53.array(
1076
+ z53.union([
1077
+ z53.object({
1078
+ route_type: z53.literal("wire"),
1070
1079
  x: distance,
1071
1080
  y: distance,
1072
1081
  width: distance,
1073
- start_pcb_port_id: z52.string().optional(),
1074
- end_pcb_port_id: z52.string().optional(),
1082
+ start_pcb_port_id: z53.string().optional(),
1083
+ end_pcb_port_id: z53.string().optional(),
1075
1084
  layer: layer_ref
1076
1085
  }),
1077
- z52.object({
1078
- route_type: z52.literal("via"),
1086
+ z53.object({
1087
+ route_type: z53.literal("via"),
1079
1088
  x: distance,
1080
1089
  y: distance,
1081
- from_layer: z52.string(),
1082
- to_layer: z52.string()
1090
+ from_layer: z53.string(),
1091
+ to_layer: z53.string()
1083
1092
  })
1084
1093
  ])
1085
1094
  )
@@ -1088,37 +1097,37 @@ expectTypesMatch(true);
1088
1097
  expectTypesMatch(true);
1089
1098
 
1090
1099
  // src/pcb/pcb_trace_error.ts
1091
- import { z as z53 } from "zod";
1092
- var pcb_trace_error = z53.object({
1093
- type: z53.literal("pcb_trace_error"),
1100
+ import { z as z54 } from "zod";
1101
+ var pcb_trace_error = z54.object({
1102
+ type: z54.literal("pcb_trace_error"),
1094
1103
  pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
1095
- error_type: z53.literal("pcb_trace_error"),
1096
- message: z53.string(),
1104
+ error_type: z54.literal("pcb_trace_error"),
1105
+ message: z54.string(),
1097
1106
  center: point.optional(),
1098
- pcb_trace_id: z53.string(),
1099
- source_trace_id: z53.string(),
1100
- pcb_component_ids: z53.array(z53.string()),
1101
- pcb_port_ids: z53.array(z53.string())
1107
+ pcb_trace_id: z54.string(),
1108
+ source_trace_id: z54.string(),
1109
+ pcb_component_ids: z54.array(z54.string()),
1110
+ pcb_port_ids: z54.array(z54.string())
1102
1111
  }).describe("Defines a trace error on the PCB");
1103
1112
  expectTypesMatch(true);
1104
1113
 
1105
1114
  // src/pcb/pcb_port_not_matched_error.ts
1106
- import { z as z54 } from "zod";
1107
- var pcb_port_not_matched_error = z54.object({
1108
- type: z54.literal("pcb_port_not_matched_error"),
1115
+ import { z as z55 } from "zod";
1116
+ var pcb_port_not_matched_error = z55.object({
1117
+ type: z55.literal("pcb_port_not_matched_error"),
1109
1118
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
1110
- message: z54.string(),
1111
- pcb_component_ids: z54.array(z54.string())
1119
+ message: z55.string(),
1120
+ pcb_component_ids: z55.array(z55.string())
1112
1121
  }).describe("Defines a trace error on the PCB where a port is not matched");
1113
1122
  expectTypesMatch(true);
1114
1123
 
1115
1124
  // src/pcb/pcb_via.ts
1116
- import { z as z55 } from "zod";
1117
- var pcb_via = z55.object({
1118
- type: z55.literal("pcb_via"),
1125
+ import { z as z56 } from "zod";
1126
+ var pcb_via = z56.object({
1127
+ type: z56.literal("pcb_via"),
1119
1128
  pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
1120
- pcb_group_id: z55.string().optional(),
1121
- subcircuit_id: z55.string().optional(),
1129
+ pcb_group_id: z56.string().optional(),
1130
+ subcircuit_id: z56.string().optional(),
1122
1131
  x: distance,
1123
1132
  y: distance,
1124
1133
  outer_diameter: distance.default("0.6mm"),
@@ -1127,55 +1136,55 @@ var pcb_via = z55.object({
1127
1136
  from_layer: layer_ref.optional(),
1128
1137
  /** @deprecated */
1129
1138
  to_layer: layer_ref.optional(),
1130
- layers: z55.array(layer_ref),
1131
- pcb_trace_id: z55.string().optional()
1139
+ layers: z56.array(layer_ref),
1140
+ pcb_trace_id: z56.string().optional()
1132
1141
  }).describe("Defines a via on the PCB");
1133
1142
  expectTypesMatch(true);
1134
1143
 
1135
1144
  // src/pcb/pcb_board.ts
1136
- import { z as z56 } from "zod";
1137
- var pcb_board = z56.object({
1138
- type: z56.literal("pcb_board"),
1145
+ import { z as z57 } from "zod";
1146
+ var pcb_board = z57.object({
1147
+ type: z57.literal("pcb_board"),
1139
1148
  pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
1140
- is_subcircuit: z56.boolean().optional(),
1141
- subcircuit_id: z56.string().optional(),
1149
+ is_subcircuit: z57.boolean().optional(),
1150
+ subcircuit_id: z57.string().optional(),
1142
1151
  width: length,
1143
1152
  height: length,
1144
1153
  center: point,
1145
1154
  thickness: length.optional().default(1.4),
1146
- num_layers: z56.number().optional().default(4),
1147
- outline: z56.array(point).optional()
1155
+ num_layers: z57.number().optional().default(4),
1156
+ outline: z57.array(point).optional()
1148
1157
  }).describe("Defines the board outline of the PCB");
1149
1158
  expectTypesMatch(true);
1150
1159
 
1151
1160
  // src/pcb/pcb_placement_error.ts
1152
- import { z as z57 } from "zod";
1153
- var pcb_placement_error = z57.object({
1154
- type: z57.literal("pcb_placement_error"),
1161
+ import { z as z58 } from "zod";
1162
+ var pcb_placement_error = z58.object({
1163
+ type: z58.literal("pcb_placement_error"),
1155
1164
  pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
1156
- message: z57.string()
1165
+ message: z58.string()
1157
1166
  }).describe("Defines a placement error on the PCB");
1158
1167
  expectTypesMatch(true);
1159
1168
 
1160
1169
  // src/pcb/pcb_trace_hint.ts
1161
- import { z as z58 } from "zod";
1162
- var pcb_trace_hint = z58.object({
1163
- type: z58.literal("pcb_trace_hint"),
1170
+ import { z as z59 } from "zod";
1171
+ var pcb_trace_hint = z59.object({
1172
+ type: z59.literal("pcb_trace_hint"),
1164
1173
  pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
1165
- pcb_port_id: z58.string(),
1166
- pcb_component_id: z58.string(),
1167
- route: z58.array(route_hint_point)
1174
+ pcb_port_id: z59.string(),
1175
+ pcb_component_id: z59.string(),
1176
+ route: z59.array(route_hint_point)
1168
1177
  }).describe("A hint that can be used during generation of a PCB trace");
1169
1178
  expectTypesMatch(true);
1170
1179
 
1171
1180
  // src/pcb/pcb_silkscreen_line.ts
1172
- import { z as z59 } from "zod";
1173
- var pcb_silkscreen_line = z59.object({
1174
- type: z59.literal("pcb_silkscreen_line"),
1181
+ import { z as z60 } from "zod";
1182
+ var pcb_silkscreen_line = z60.object({
1183
+ type: z60.literal("pcb_silkscreen_line"),
1175
1184
  pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
1176
- pcb_component_id: z59.string(),
1177
- pcb_group_id: z59.string().optional(),
1178
- subcircuit_id: z59.string().optional(),
1185
+ pcb_component_id: z60.string(),
1186
+ pcb_group_id: z60.string().optional(),
1187
+ subcircuit_id: z60.string().optional(),
1179
1188
  stroke_width: distance.default("0.1mm"),
1180
1189
  x1: distance,
1181
1190
  y1: distance,
@@ -1186,46 +1195,46 @@ var pcb_silkscreen_line = z59.object({
1186
1195
  expectTypesMatch(true);
1187
1196
 
1188
1197
  // src/pcb/pcb_silkscreen_path.ts
1189
- import { z as z60 } from "zod";
1190
- var pcb_silkscreen_path = z60.object({
1191
- type: z60.literal("pcb_silkscreen_path"),
1198
+ import { z as z61 } from "zod";
1199
+ var pcb_silkscreen_path = z61.object({
1200
+ type: z61.literal("pcb_silkscreen_path"),
1192
1201
  pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
1193
- pcb_component_id: z60.string(),
1194
- pcb_group_id: z60.string().optional(),
1195
- subcircuit_id: z60.string().optional(),
1202
+ pcb_component_id: z61.string(),
1203
+ pcb_group_id: z61.string().optional(),
1204
+ subcircuit_id: z61.string().optional(),
1196
1205
  layer: visible_layer,
1197
- route: z60.array(point),
1206
+ route: z61.array(point),
1198
1207
  stroke_width: length
1199
1208
  }).describe("Defines a silkscreen path on the PCB");
1200
1209
  expectTypesMatch(true);
1201
1210
 
1202
1211
  // src/pcb/pcb_silkscreen_text.ts
1203
- import { z as z61 } from "zod";
1204
- var pcb_silkscreen_text = z61.object({
1205
- type: z61.literal("pcb_silkscreen_text"),
1212
+ import { z as z62 } from "zod";
1213
+ var pcb_silkscreen_text = z62.object({
1214
+ type: z62.literal("pcb_silkscreen_text"),
1206
1215
  pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
1207
- pcb_group_id: z61.string().optional(),
1208
- subcircuit_id: z61.string().optional(),
1209
- font: z61.literal("tscircuit2024").default("tscircuit2024"),
1216
+ pcb_group_id: z62.string().optional(),
1217
+ subcircuit_id: z62.string().optional(),
1218
+ font: z62.literal("tscircuit2024").default("tscircuit2024"),
1210
1219
  font_size: distance.default("0.2mm"),
1211
- pcb_component_id: z61.string(),
1212
- text: z61.string(),
1213
- ccw_rotation: z61.number().optional(),
1220
+ pcb_component_id: z62.string(),
1221
+ text: z62.string(),
1222
+ ccw_rotation: z62.number().optional(),
1214
1223
  layer: layer_ref,
1215
- is_mirrored: z61.boolean().default(false).optional(),
1224
+ is_mirrored: z62.boolean().default(false).optional(),
1216
1225
  anchor_position: point.default({ x: 0, y: 0 }),
1217
- anchor_alignment: z61.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center")
1226
+ anchor_alignment: z62.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center")
1218
1227
  }).describe("Defines silkscreen text on the PCB");
1219
1228
  expectTypesMatch(true);
1220
1229
 
1221
1230
  // src/pcb/pcb_silkscreen_rect.ts
1222
- import { z as z62 } from "zod";
1223
- var pcb_silkscreen_rect = z62.object({
1224
- type: z62.literal("pcb_silkscreen_rect"),
1231
+ import { z as z63 } from "zod";
1232
+ var pcb_silkscreen_rect = z63.object({
1233
+ type: z63.literal("pcb_silkscreen_rect"),
1225
1234
  pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
1226
- pcb_component_id: z62.string(),
1227
- pcb_group_id: z62.string().optional(),
1228
- subcircuit_id: z62.string().optional(),
1235
+ pcb_component_id: z63.string(),
1236
+ pcb_group_id: z63.string().optional(),
1237
+ subcircuit_id: z63.string().optional(),
1229
1238
  center: point,
1230
1239
  width: length,
1231
1240
  height: length,
@@ -1235,15 +1244,15 @@ var pcb_silkscreen_rect = z62.object({
1235
1244
  expectTypesMatch(true);
1236
1245
 
1237
1246
  // src/pcb/pcb_silkscreen_circle.ts
1238
- import { z as z63 } from "zod";
1239
- var pcb_silkscreen_circle = z63.object({
1240
- type: z63.literal("pcb_silkscreen_circle"),
1247
+ import { z as z64 } from "zod";
1248
+ var pcb_silkscreen_circle = z64.object({
1249
+ type: z64.literal("pcb_silkscreen_circle"),
1241
1250
  pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
1242
1251
  "pcb_silkscreen_circle"
1243
1252
  ),
1244
- pcb_component_id: z63.string(),
1245
- pcb_group_id: z63.string().optional(),
1246
- subcircuit_id: z63.string().optional(),
1253
+ pcb_component_id: z64.string(),
1254
+ pcb_group_id: z64.string().optional(),
1255
+ subcircuit_id: z64.string().optional(),
1247
1256
  center: point,
1248
1257
  radius: length,
1249
1258
  layer: visible_layer,
@@ -1252,13 +1261,13 @@ var pcb_silkscreen_circle = z63.object({
1252
1261
  expectTypesMatch(true);
1253
1262
 
1254
1263
  // src/pcb/pcb_silkscreen_oval.ts
1255
- import { z as z64 } from "zod";
1256
- var pcb_silkscreen_oval = z64.object({
1257
- type: z64.literal("pcb_silkscreen_oval"),
1264
+ import { z as z65 } from "zod";
1265
+ var pcb_silkscreen_oval = z65.object({
1266
+ type: z65.literal("pcb_silkscreen_oval"),
1258
1267
  pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
1259
- pcb_component_id: z64.string(),
1260
- pcb_group_id: z64.string().optional(),
1261
- subcircuit_id: z64.string().optional(),
1268
+ pcb_component_id: z65.string(),
1269
+ pcb_group_id: z65.string().optional(),
1270
+ subcircuit_id: z65.string().optional(),
1262
1271
  center: point,
1263
1272
  radius_x: distance,
1264
1273
  radius_y: distance,
@@ -1267,156 +1276,156 @@ var pcb_silkscreen_oval = z64.object({
1267
1276
  expectTypesMatch(true);
1268
1277
 
1269
1278
  // src/pcb/pcb_fabrication_note_text.ts
1270
- import { z as z65 } from "zod";
1271
- var pcb_fabrication_note_text = z65.object({
1272
- type: z65.literal("pcb_fabrication_note_text"),
1279
+ import { z as z66 } from "zod";
1280
+ var pcb_fabrication_note_text = z66.object({
1281
+ type: z66.literal("pcb_fabrication_note_text"),
1273
1282
  pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
1274
1283
  "pcb_fabrication_note_text"
1275
1284
  ),
1276
- subcircuit_id: z65.string().optional(),
1277
- pcb_group_id: z65.string().optional(),
1278
- font: z65.literal("tscircuit2024").default("tscircuit2024"),
1285
+ subcircuit_id: z66.string().optional(),
1286
+ pcb_group_id: z66.string().optional(),
1287
+ font: z66.literal("tscircuit2024").default("tscircuit2024"),
1279
1288
  font_size: distance.default("1mm"),
1280
- pcb_component_id: z65.string(),
1281
- text: z65.string(),
1289
+ pcb_component_id: z66.string(),
1290
+ text: z66.string(),
1282
1291
  layer: visible_layer,
1283
1292
  anchor_position: point.default({ x: 0, y: 0 }),
1284
- anchor_alignment: z65.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
1285
- color: z65.string().optional()
1293
+ anchor_alignment: z66.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
1294
+ color: z66.string().optional()
1286
1295
  }).describe(
1287
1296
  "Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
1288
1297
  );
1289
1298
  expectTypesMatch(true);
1290
1299
 
1291
1300
  // src/pcb/pcb_fabrication_note_path.ts
1292
- import { z as z66 } from "zod";
1293
- var pcb_fabrication_note_path = z66.object({
1294
- type: z66.literal("pcb_fabrication_note_path"),
1301
+ import { z as z67 } from "zod";
1302
+ var pcb_fabrication_note_path = z67.object({
1303
+ type: z67.literal("pcb_fabrication_note_path"),
1295
1304
  pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
1296
1305
  "pcb_fabrication_note_path"
1297
1306
  ),
1298
- pcb_component_id: z66.string(),
1299
- subcircuit_id: z66.string().optional(),
1307
+ pcb_component_id: z67.string(),
1308
+ subcircuit_id: z67.string().optional(),
1300
1309
  layer: layer_ref,
1301
- route: z66.array(point),
1310
+ route: z67.array(point),
1302
1311
  stroke_width: length,
1303
- color: z66.string().optional()
1312
+ color: z67.string().optional()
1304
1313
  }).describe(
1305
1314
  "Defines a fabrication path on the PCB for fabricators or assemblers"
1306
1315
  );
1307
1316
  expectTypesMatch(true);
1308
1317
 
1309
1318
  // src/pcb/pcb_keepout.ts
1310
- import { z as z67 } from "zod";
1311
- var pcb_keepout = z67.object({
1312
- type: z67.literal("pcb_keepout"),
1313
- shape: z67.literal("rect"),
1314
- pcb_group_id: z67.string().optional(),
1315
- subcircuit_id: z67.string().optional(),
1319
+ import { z as z68 } from "zod";
1320
+ var pcb_keepout = z68.object({
1321
+ type: z68.literal("pcb_keepout"),
1322
+ shape: z68.literal("rect"),
1323
+ pcb_group_id: z68.string().optional(),
1324
+ subcircuit_id: z68.string().optional(),
1316
1325
  center: point,
1317
1326
  width: distance,
1318
1327
  height: distance,
1319
- pcb_keepout_id: z67.string(),
1320
- layers: z67.array(z67.string()),
1328
+ pcb_keepout_id: z68.string(),
1329
+ layers: z68.array(z68.string()),
1321
1330
  // Specify layers where the keepout applies
1322
- description: z67.string().optional()
1331
+ description: z68.string().optional()
1323
1332
  // Optional description of the keepout
1324
1333
  }).or(
1325
- z67.object({
1326
- type: z67.literal("pcb_keepout"),
1327
- shape: z67.literal("circle"),
1328
- pcb_group_id: z67.string().optional(),
1329
- subcircuit_id: z67.string().optional(),
1334
+ z68.object({
1335
+ type: z68.literal("pcb_keepout"),
1336
+ shape: z68.literal("circle"),
1337
+ pcb_group_id: z68.string().optional(),
1338
+ subcircuit_id: z68.string().optional(),
1330
1339
  center: point,
1331
1340
  radius: distance,
1332
- pcb_keepout_id: z67.string(),
1333
- layers: z67.array(z67.string()),
1341
+ pcb_keepout_id: z68.string(),
1342
+ layers: z68.array(z68.string()),
1334
1343
  // Specify layers where the keepout applies
1335
- description: z67.string().optional()
1344
+ description: z68.string().optional()
1336
1345
  // Optional description of the keepout
1337
1346
  })
1338
1347
  );
1339
1348
 
1340
1349
  // src/pcb/pcb_missing_footprint_error.ts
1341
- import { z as z68 } from "zod";
1342
- var pcb_missing_footprint_error = z68.object({
1343
- type: z68.literal("pcb_missing_footprint_error"),
1350
+ import { z as z69 } from "zod";
1351
+ var pcb_missing_footprint_error = z69.object({
1352
+ type: z69.literal("pcb_missing_footprint_error"),
1344
1353
  pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
1345
1354
  "pcb_missing_footprint_error"
1346
1355
  ),
1347
- pcb_group_id: z68.string().optional(),
1348
- subcircuit_id: z68.string().optional(),
1349
- error_type: z68.literal("pcb_missing_footprint_error"),
1350
- source_component_id: z68.string(),
1351
- message: z68.string()
1356
+ pcb_group_id: z69.string().optional(),
1357
+ subcircuit_id: z69.string().optional(),
1358
+ error_type: z69.literal("pcb_missing_footprint_error"),
1359
+ source_component_id: z69.string(),
1360
+ message: z69.string()
1352
1361
  }).describe("Defines a missing footprint error on the PCB");
1353
1362
  expectTypesMatch(
1354
1363
  true
1355
1364
  );
1356
1365
 
1357
1366
  // src/pcb/pcb_manual_edit_conflict_error.ts
1358
- import { z as z69 } from "zod";
1359
- var pcb_manual_edit_conflict_error = z69.object({
1360
- type: z69.literal("pcb_manual_edit_conflict_error"),
1367
+ import { z as z70 } from "zod";
1368
+ var pcb_manual_edit_conflict_error = z70.object({
1369
+ type: z70.literal("pcb_manual_edit_conflict_error"),
1361
1370
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_manual_edit_conflict_error"),
1362
- message: z69.string(),
1363
- pcb_component_id: z69.string(),
1364
- pcb_group_id: z69.string().optional(),
1365
- subcircuit_id: z69.string().optional(),
1366
- source_component_id: z69.string()
1371
+ message: z70.string(),
1372
+ pcb_component_id: z70.string(),
1373
+ pcb_group_id: z70.string().optional(),
1374
+ subcircuit_id: z70.string().optional(),
1375
+ source_component_id: z70.string()
1367
1376
  }).describe(
1368
1377
  "Error emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
1369
1378
  );
1370
1379
  expectTypesMatch(true);
1371
1380
 
1372
1381
  // src/pcb/pcb_group.ts
1373
- import { z as z70 } from "zod";
1374
- var pcb_group = z70.object({
1375
- type: z70.literal("pcb_group"),
1382
+ import { z as z71 } from "zod";
1383
+ var pcb_group = z71.object({
1384
+ type: z71.literal("pcb_group"),
1376
1385
  pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
1377
- source_group_id: z70.string(),
1378
- is_subcircuit: z70.boolean().optional(),
1379
- subcircuit_id: z70.string().optional(),
1386
+ source_group_id: z71.string(),
1387
+ is_subcircuit: z71.boolean().optional(),
1388
+ subcircuit_id: z71.string().optional(),
1380
1389
  width: length,
1381
1390
  height: length,
1382
1391
  center: point,
1383
- pcb_component_ids: z70.array(z70.string()),
1384
- name: z70.string().optional(),
1385
- description: z70.string().optional()
1392
+ pcb_component_ids: z71.array(z71.string()),
1393
+ name: z71.string().optional(),
1394
+ description: z71.string().optional()
1386
1395
  }).describe("Defines a group of components on the PCB");
1387
1396
  expectTypesMatch(true);
1388
1397
 
1389
1398
  // src/pcb/pcb_autorouting_error.ts
1390
- import { z as z71 } from "zod";
1391
- var pcb_autorouting_error = z71.object({
1392
- type: z71.literal("pcb_autorouting_error"),
1399
+ import { z as z72 } from "zod";
1400
+ var pcb_autorouting_error = z72.object({
1401
+ type: z72.literal("pcb_autorouting_error"),
1393
1402
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
1394
- message: z71.string()
1403
+ message: z72.string()
1395
1404
  }).describe("The autorouting has failed to route a portion of the board");
1396
1405
  expectTypesMatch(true);
1397
1406
 
1398
1407
  // src/cad/cad_component.ts
1399
- import { z as z72 } from "zod";
1400
- var cad_component = z72.object({
1401
- type: z72.literal("cad_component"),
1402
- cad_component_id: z72.string(),
1403
- pcb_component_id: z72.string(),
1404
- source_component_id: z72.string(),
1408
+ import { z as z73 } from "zod";
1409
+ var cad_component = z73.object({
1410
+ type: z73.literal("cad_component"),
1411
+ cad_component_id: z73.string(),
1412
+ pcb_component_id: z73.string(),
1413
+ source_component_id: z73.string(),
1405
1414
  position: point3,
1406
1415
  rotation: point3.optional(),
1407
1416
  size: point3.optional(),
1408
1417
  layer: layer_ref.optional(),
1409
1418
  // These are all ways to generate/load the 3d model
1410
- footprinter_string: z72.string().optional(),
1411
- model_obj_url: z72.string().optional(),
1412
- model_stl_url: z72.string().optional(),
1413
- model_3mf_url: z72.string().optional(),
1414
- model_jscad: z72.any().optional()
1419
+ footprinter_string: z73.string().optional(),
1420
+ model_obj_url: z73.string().optional(),
1421
+ model_stl_url: z73.string().optional(),
1422
+ model_3mf_url: z73.string().optional(),
1423
+ model_jscad: z73.any().optional()
1415
1424
  }).describe("Defines a component on the PCB");
1416
1425
 
1417
1426
  // src/any_circuit_element.ts
1418
- import { z as z73 } from "zod";
1419
- var any_circuit_element = z73.union([
1427
+ import { z as z74 } from "zod";
1428
+ var any_circuit_element = z74.union([
1420
1429
  source_trace,
1421
1430
  source_port,
1422
1431
  any_source_component,
@@ -1535,6 +1544,7 @@ export {
1535
1544
  port_arrangement,
1536
1545
  position,
1537
1546
  position3,
1547
+ project_metadata,
1538
1548
  resistance,
1539
1549
  rotation,
1540
1550
  route_hint_point,