circuit-json 0.0.164 → 0.0.165

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
@@ -680,83 +680,109 @@ var schematic_trace = z37.object({
680
680
  expectTypesMatch(true);
681
681
 
682
682
  // src/schematic/schematic_text.ts
683
+ import { z as z40 } from "zod";
684
+
685
+ // src/common/NinePointAnchor.ts
683
686
  import { z as z38 } from "zod";
684
- var schematic_text = z38.object({
685
- type: z38.literal("schematic_text"),
686
- schematic_component_id: z38.string(),
687
- schematic_text_id: z38.string(),
688
- text: z38.string(),
689
- position: z38.object({
687
+ var ninePointAnchor = z38.enum([
688
+ "top_left",
689
+ "top_center",
690
+ "top_right",
691
+ "center_left",
692
+ "center",
693
+ "center_right",
694
+ "bottom_left",
695
+ "bottom_center",
696
+ "bottom_right"
697
+ ]);
698
+
699
+ // src/common/FivePointAnchor.ts
700
+ import { z as z39 } from "zod";
701
+ var fivePointAnchor = z39.enum([
702
+ "center",
703
+ "left",
704
+ "right",
705
+ "top",
706
+ "bottom"
707
+ ]);
708
+
709
+ // src/schematic/schematic_text.ts
710
+ var schematic_text = z40.object({
711
+ type: z40.literal("schematic_text"),
712
+ schematic_component_id: z40.string(),
713
+ schematic_text_id: z40.string(),
714
+ text: z40.string(),
715
+ position: z40.object({
690
716
  x: distance,
691
717
  y: distance
692
718
  }),
693
- rotation: z38.number().default(0),
694
- anchor: z38.enum(["center", "left", "right", "top", "bottom"]).default("center"),
695
- color: z38.string().default("#000000")
719
+ rotation: z40.number().default(0),
720
+ anchor: z40.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
721
+ color: z40.string().default("#000000")
696
722
  });
697
723
  expectTypesMatch(true);
698
724
 
699
725
  // src/schematic/schematic_port.ts
700
- import { z as z39 } from "zod";
701
- var schematic_port = z39.object({
702
- type: z39.literal("schematic_port"),
703
- schematic_port_id: z39.string(),
704
- source_port_id: z39.string(),
705
- schematic_component_id: z39.string().optional(),
726
+ import { z as z41 } from "zod";
727
+ var schematic_port = z41.object({
728
+ type: z41.literal("schematic_port"),
729
+ schematic_port_id: z41.string(),
730
+ source_port_id: z41.string(),
731
+ schematic_component_id: z41.string().optional(),
706
732
  center: point,
707
- facing_direction: z39.enum(["up", "down", "left", "right"]).optional(),
708
- distance_from_component_edge: z39.number().optional(),
709
- side_of_component: z39.enum(["top", "bottom", "left", "right"]).optional(),
710
- true_ccw_index: z39.number().optional(),
711
- pin_number: z39.number().optional(),
712
- display_pin_label: z39.string().optional()
733
+ facing_direction: z41.enum(["up", "down", "left", "right"]).optional(),
734
+ distance_from_component_edge: z41.number().optional(),
735
+ side_of_component: z41.enum(["top", "bottom", "left", "right"]).optional(),
736
+ true_ccw_index: z41.number().optional(),
737
+ pin_number: z41.number().optional(),
738
+ display_pin_label: z41.string().optional()
713
739
  }).describe("Defines a port on a schematic component");
714
740
  expectTypesMatch(true);
715
741
 
716
742
  // src/schematic/schematic_net_label.ts
717
- import { z as z40 } from "zod";
718
- var schematic_net_label = z40.object({
719
- type: z40.literal("schematic_net_label"),
720
- source_net_id: z40.string(),
743
+ import { z as z42 } from "zod";
744
+ var schematic_net_label = z42.object({
745
+ type: z42.literal("schematic_net_label"),
746
+ source_net_id: z42.string(),
721
747
  center: point,
722
748
  anchor_position: point.optional(),
723
- anchor_side: z40.enum(["top", "bottom", "left", "right"]),
724
- text: z40.string(),
725
- symbol_name: z40.string().optional()
749
+ anchor_side: z42.enum(["top", "bottom", "left", "right"]),
750
+ text: z42.string(),
751
+ symbol_name: z42.string().optional()
726
752
  });
727
753
 
728
754
  // src/schematic/schematic_error.ts
729
- import { z as z41 } from "zod";
730
- var schematic_error = z41.object({
731
- type: z41.literal("schematic_error"),
732
- schematic_error_id: z41.string(),
755
+ import { z as z43 } from "zod";
756
+ var schematic_error = z43.object({
757
+ type: z43.literal("schematic_error"),
758
+ schematic_error_id: z43.string(),
733
759
  // eventually each error type should be broken out into a dir of files
734
- error_type: z41.literal("schematic_port_not_found"),
735
- message: z41.string()
760
+ error_type: z43.literal("schematic_port_not_found"),
761
+ message: z43.string()
736
762
  }).describe("Defines a schematic error on the schematic");
737
763
  expectTypesMatch(true);
738
764
 
739
765
  // src/schematic/schematic_debug_object.ts
740
- import { z as z42 } from "zod";
741
- var schematic_debug_object_base = z42.object({
742
- type: z42.literal("schematic_debug_object"),
743
- label: z42.string().optional()
766
+ import { z as z44 } from "zod";
767
+ var schematic_debug_object_base = z44.object({
768
+ type: z44.literal("schematic_debug_object"),
769
+ label: z44.string().optional()
744
770
  });
745
771
  var schematic_debug_rect = schematic_debug_object_base.extend({
746
- shape: z42.literal("rect"),
772
+ shape: z44.literal("rect"),
747
773
  center: point,
748
774
  size
749
775
  });
750
776
  var schematic_debug_line = schematic_debug_object_base.extend({
751
- shape: z42.literal("line"),
777
+ shape: z44.literal("line"),
752
778
  start: point,
753
779
  end: point
754
780
  });
755
781
  var schematic_debug_point = schematic_debug_object_base.extend({
756
- shape: z42.literal("point"),
782
+ shape: z44.literal("point"),
757
783
  center: point
758
784
  });
759
- var schematic_debug_object = z42.discriminatedUnion("shape", [
785
+ var schematic_debug_object = z44.discriminatedUnion("shape", [
760
786
  schematic_debug_rect,
761
787
  schematic_debug_line,
762
788
  schematic_debug_point
@@ -764,35 +790,35 @@ var schematic_debug_object = z42.discriminatedUnion("shape", [
764
790
  expectTypesMatch(true);
765
791
 
766
792
  // src/schematic/schematic_voltage_probe.ts
767
- import { z as z43 } from "zod";
768
- var schematic_voltage_probe = z43.object({
769
- type: z43.literal("schematic_voltage_probe"),
770
- schematic_voltage_probe_id: z43.string(),
793
+ import { z as z45 } from "zod";
794
+ var schematic_voltage_probe = z45.object({
795
+ type: z45.literal("schematic_voltage_probe"),
796
+ schematic_voltage_probe_id: z45.string(),
771
797
  position: point,
772
- schematic_trace_id: z43.string(),
798
+ schematic_trace_id: z45.string(),
773
799
  voltage: voltage.optional()
774
800
  }).describe("Defines a voltage probe measurement point on a schematic trace");
775
801
  expectTypesMatch(true);
776
802
 
777
803
  // src/schematic/schematic_manual_edit_conflict_warning.ts
778
- import { z as z44 } from "zod";
779
- var schematic_manual_edit_conflict_warning = z44.object({
780
- type: z44.literal("schematic_manual_edit_conflict_warning"),
804
+ import { z as z46 } from "zod";
805
+ var schematic_manual_edit_conflict_warning = z46.object({
806
+ type: z46.literal("schematic_manual_edit_conflict_warning"),
781
807
  schematic_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
782
808
  "schematic_manual_edit_conflict_warning"
783
809
  ),
784
- message: z44.string(),
785
- schematic_component_id: z44.string(),
786
- schematic_group_id: z44.string().optional(),
787
- subcircuit_id: z44.string().optional(),
788
- source_component_id: z44.string()
810
+ message: z46.string(),
811
+ schematic_component_id: z46.string(),
812
+ schematic_group_id: z46.string().optional(),
813
+ subcircuit_id: z46.string().optional(),
814
+ source_component_id: z46.string()
789
815
  }).describe(
790
816
  "Warning emitted when a component has both manual placement and explicit schX/schY coordinates"
791
817
  );
792
818
  expectTypesMatch(true);
793
819
 
794
820
  // src/pcb/properties/layer_ref.ts
795
- import { z as z45 } from "zod";
821
+ import { z as z47 } from "zod";
796
822
  var all_layers = [
797
823
  "top",
798
824
  "bottom",
@@ -803,9 +829,9 @@ var all_layers = [
803
829
  "inner5",
804
830
  "inner6"
805
831
  ];
806
- var layer_string = z45.enum(all_layers);
832
+ var layer_string = z47.enum(all_layers);
807
833
  var layer_ref = layer_string.or(
808
- z45.object({
834
+ z47.object({
809
835
  name: layer_string
810
836
  })
811
837
  ).transform((layer) => {
@@ -814,52 +840,52 @@ var layer_ref = layer_string.or(
814
840
  }
815
841
  return layer.name;
816
842
  });
817
- var visible_layer = z45.enum(["top", "bottom"]);
843
+ var visible_layer = z47.enum(["top", "bottom"]);
818
844
 
819
845
  // src/pcb/properties/pcb_route_hints.ts
820
- import { z as z46 } from "zod";
821
- var pcb_route_hint = z46.object({
846
+ import { z as z48 } from "zod";
847
+ var pcb_route_hint = z48.object({
822
848
  x: distance,
823
849
  y: distance,
824
- via: z46.boolean().optional(),
850
+ via: z48.boolean().optional(),
825
851
  via_to_layer: layer_ref.optional()
826
852
  });
827
- var pcb_route_hints = z46.array(pcb_route_hint);
853
+ var pcb_route_hints = z48.array(pcb_route_hint);
828
854
 
829
855
  // src/pcb/properties/route_hint_point.ts
830
- import { z as z47 } from "zod";
831
- var route_hint_point = z47.object({
856
+ import { z as z49 } from "zod";
857
+ var route_hint_point = z49.object({
832
858
  x: distance,
833
859
  y: distance,
834
- via: z47.boolean().optional(),
860
+ via: z49.boolean().optional(),
835
861
  to_layer: layer_ref.optional(),
836
862
  trace_width: distance.optional()
837
863
  });
838
864
 
839
865
  // src/pcb/pcb_component.ts
840
- import { z as z48 } from "zod";
841
- var pcb_component = z48.object({
842
- type: z48.literal("pcb_component"),
866
+ import { z as z50 } from "zod";
867
+ var pcb_component = z50.object({
868
+ type: z50.literal("pcb_component"),
843
869
  pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
844
- source_component_id: z48.string(),
870
+ source_component_id: z50.string(),
845
871
  center: point,
846
872
  layer: layer_ref,
847
873
  rotation,
848
874
  width: length,
849
875
  height: length,
850
- subcircuit_id: z48.string().optional()
876
+ subcircuit_id: z50.string().optional()
851
877
  }).describe("Defines a component on the PCB");
852
878
  expectTypesMatch(true);
853
879
 
854
880
  // src/pcb/pcb_hole.ts
855
- import { z as z49 } from "zod";
856
- var pcb_hole_circle_or_square = z49.object({
857
- type: z49.literal("pcb_hole"),
881
+ import { z as z51 } from "zod";
882
+ var pcb_hole_circle_or_square = z51.object({
883
+ type: z51.literal("pcb_hole"),
858
884
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
859
- pcb_group_id: z49.string().optional(),
860
- subcircuit_id: z49.string().optional(),
861
- hole_shape: z49.enum(["circle", "square"]),
862
- hole_diameter: z49.number(),
885
+ pcb_group_id: z51.string().optional(),
886
+ subcircuit_id: z51.string().optional(),
887
+ hole_shape: z51.enum(["circle", "square"]),
888
+ hole_diameter: z51.number(),
863
889
  x: distance,
864
890
  y: distance
865
891
  });
@@ -867,14 +893,14 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
867
893
  "Defines a circular or square hole on the PCB"
868
894
  );
869
895
  expectTypesMatch(true);
870
- var pcb_hole_oval = z49.object({
871
- type: z49.literal("pcb_hole"),
896
+ var pcb_hole_oval = z51.object({
897
+ type: z51.literal("pcb_hole"),
872
898
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
873
- pcb_group_id: z49.string().optional(),
874
- subcircuit_id: z49.string().optional(),
875
- hole_shape: z49.literal("oval"),
876
- hole_width: z49.number(),
877
- hole_height: z49.number(),
899
+ pcb_group_id: z51.string().optional(),
900
+ subcircuit_id: z51.string().optional(),
901
+ hole_shape: z51.literal("oval"),
902
+ hole_width: z51.number(),
903
+ hole_height: z51.number(),
878
904
  x: distance,
879
905
  y: distance
880
906
  });
@@ -885,77 +911,77 @@ expectTypesMatch(true);
885
911
  var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
886
912
 
887
913
  // src/pcb/pcb_plated_hole.ts
888
- import { z as z50 } from "zod";
889
- var pcb_plated_hole_circle = z50.object({
890
- type: z50.literal("pcb_plated_hole"),
891
- shape: z50.literal("circle"),
892
- pcb_group_id: z50.string().optional(),
893
- subcircuit_id: z50.string().optional(),
894
- outer_diameter: z50.number(),
895
- hole_diameter: z50.number(),
914
+ import { z as z52 } from "zod";
915
+ var pcb_plated_hole_circle = z52.object({
916
+ type: z52.literal("pcb_plated_hole"),
917
+ shape: z52.literal("circle"),
918
+ pcb_group_id: z52.string().optional(),
919
+ subcircuit_id: z52.string().optional(),
920
+ outer_diameter: z52.number(),
921
+ hole_diameter: z52.number(),
896
922
  x: distance,
897
923
  y: distance,
898
- layers: z50.array(layer_ref),
899
- port_hints: z50.array(z50.string()).optional(),
900
- pcb_component_id: z50.string().optional(),
901
- pcb_port_id: z50.string().optional(),
924
+ layers: z52.array(layer_ref),
925
+ port_hints: z52.array(z52.string()).optional(),
926
+ pcb_component_id: z52.string().optional(),
927
+ pcb_port_id: z52.string().optional(),
902
928
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
903
929
  });
904
- var pcb_plated_hole_oval = z50.object({
905
- type: z50.literal("pcb_plated_hole"),
906
- shape: z50.enum(["oval", "pill"]),
907
- pcb_group_id: z50.string().optional(),
908
- subcircuit_id: z50.string().optional(),
909
- outer_width: z50.number(),
910
- outer_height: z50.number(),
911
- hole_width: z50.number(),
912
- hole_height: z50.number(),
930
+ var pcb_plated_hole_oval = z52.object({
931
+ type: z52.literal("pcb_plated_hole"),
932
+ shape: z52.enum(["oval", "pill"]),
933
+ pcb_group_id: z52.string().optional(),
934
+ subcircuit_id: z52.string().optional(),
935
+ outer_width: z52.number(),
936
+ outer_height: z52.number(),
937
+ hole_width: z52.number(),
938
+ hole_height: z52.number(),
913
939
  x: distance,
914
940
  y: distance,
915
- layers: z50.array(layer_ref),
916
- port_hints: z50.array(z50.string()).optional(),
917
- pcb_component_id: z50.string().optional(),
918
- pcb_port_id: z50.string().optional(),
941
+ layers: z52.array(layer_ref),
942
+ port_hints: z52.array(z52.string()).optional(),
943
+ pcb_component_id: z52.string().optional(),
944
+ pcb_port_id: z52.string().optional(),
919
945
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
920
946
  });
921
- var pcb_circular_hole_with_rect_pad = z50.object({
922
- type: z50.literal("pcb_plated_hole"),
923
- shape: z50.literal("circular_hole_with_rect_pad"),
924
- pcb_group_id: z50.string().optional(),
925
- subcircuit_id: z50.string().optional(),
926
- hole_shape: z50.literal("circle"),
927
- pad_shape: z50.literal("rect"),
928
- hole_diameter: z50.number(),
929
- rect_pad_width: z50.number(),
930
- rect_pad_height: z50.number(),
947
+ var pcb_circular_hole_with_rect_pad = z52.object({
948
+ type: z52.literal("pcb_plated_hole"),
949
+ shape: z52.literal("circular_hole_with_rect_pad"),
950
+ pcb_group_id: z52.string().optional(),
951
+ subcircuit_id: z52.string().optional(),
952
+ hole_shape: z52.literal("circle"),
953
+ pad_shape: z52.literal("rect"),
954
+ hole_diameter: z52.number(),
955
+ rect_pad_width: z52.number(),
956
+ rect_pad_height: z52.number(),
931
957
  x: distance,
932
958
  y: distance,
933
- layers: z50.array(layer_ref),
934
- port_hints: z50.array(z50.string()).optional(),
935
- pcb_component_id: z50.string().optional(),
936
- pcb_port_id: z50.string().optional(),
959
+ layers: z52.array(layer_ref),
960
+ port_hints: z52.array(z52.string()).optional(),
961
+ pcb_component_id: z52.string().optional(),
962
+ pcb_port_id: z52.string().optional(),
937
963
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
938
964
  });
939
- var pcb_pill_hole_with_rect_pad = z50.object({
940
- type: z50.literal("pcb_plated_hole"),
941
- shape: z50.literal("pill_hole_with_rect_pad"),
942
- pcb_group_id: z50.string().optional(),
943
- subcircuit_id: z50.string().optional(),
944
- hole_shape: z50.literal("pill"),
945
- pad_shape: z50.literal("rect"),
946
- hole_width: z50.number(),
947
- hole_height: z50.number(),
948
- rect_pad_width: z50.number(),
949
- rect_pad_height: z50.number(),
965
+ var pcb_pill_hole_with_rect_pad = z52.object({
966
+ type: z52.literal("pcb_plated_hole"),
967
+ shape: z52.literal("pill_hole_with_rect_pad"),
968
+ pcb_group_id: z52.string().optional(),
969
+ subcircuit_id: z52.string().optional(),
970
+ hole_shape: z52.literal("pill"),
971
+ pad_shape: z52.literal("rect"),
972
+ hole_width: z52.number(),
973
+ hole_height: z52.number(),
974
+ rect_pad_width: z52.number(),
975
+ rect_pad_height: z52.number(),
950
976
  x: distance,
951
977
  y: distance,
952
- layers: z50.array(layer_ref),
953
- port_hints: z50.array(z50.string()).optional(),
954
- pcb_component_id: z50.string().optional(),
955
- pcb_port_id: z50.string().optional(),
978
+ layers: z52.array(layer_ref),
979
+ port_hints: z52.array(z52.string()).optional(),
980
+ pcb_component_id: z52.string().optional(),
981
+ pcb_port_id: z52.string().optional(),
956
982
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
957
983
  });
958
- var pcb_plated_hole = z50.union([
984
+ var pcb_plated_hole = z52.union([
959
985
  pcb_plated_hole_circle,
960
986
  pcb_plated_hole_oval,
961
987
  pcb_circular_hole_with_rect_pad
@@ -967,84 +993,84 @@ expectTypesMatch(true);
967
993
  expectTypesMatch(true);
968
994
 
969
995
  // src/pcb/pcb_port.ts
970
- import { z as z51 } from "zod";
971
- var pcb_port = z51.object({
972
- type: z51.literal("pcb_port"),
996
+ import { z as z53 } from "zod";
997
+ var pcb_port = z53.object({
998
+ type: z53.literal("pcb_port"),
973
999
  pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
974
- pcb_group_id: z51.string().optional(),
975
- subcircuit_id: z51.string().optional(),
976
- source_port_id: z51.string(),
977
- pcb_component_id: z51.string(),
1000
+ pcb_group_id: z53.string().optional(),
1001
+ subcircuit_id: z53.string().optional(),
1002
+ source_port_id: z53.string(),
1003
+ pcb_component_id: z53.string(),
978
1004
  x: distance,
979
1005
  y: distance,
980
- layers: z51.array(layer_ref)
1006
+ layers: z53.array(layer_ref)
981
1007
  }).describe("Defines a port on the PCB");
982
1008
  expectTypesMatch(true);
983
1009
 
984
1010
  // src/pcb/pcb_smtpad.ts
985
- import { z as z52 } from "zod";
986
- var pcb_smtpad_circle = z52.object({
987
- type: z52.literal("pcb_smtpad"),
988
- shape: z52.literal("circle"),
1011
+ import { z as z54 } from "zod";
1012
+ var pcb_smtpad_circle = z54.object({
1013
+ type: z54.literal("pcb_smtpad"),
1014
+ shape: z54.literal("circle"),
989
1015
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
990
- pcb_group_id: z52.string().optional(),
991
- subcircuit_id: z52.string().optional(),
1016
+ pcb_group_id: z54.string().optional(),
1017
+ subcircuit_id: z54.string().optional(),
992
1018
  x: distance,
993
1019
  y: distance,
994
- radius: z52.number(),
1020
+ radius: z54.number(),
995
1021
  layer: layer_ref,
996
- port_hints: z52.array(z52.string()).optional(),
997
- pcb_component_id: z52.string().optional(),
998
- pcb_port_id: z52.string().optional()
1022
+ port_hints: z54.array(z54.string()).optional(),
1023
+ pcb_component_id: z54.string().optional(),
1024
+ pcb_port_id: z54.string().optional()
999
1025
  });
1000
- var pcb_smtpad_rect = z52.object({
1001
- type: z52.literal("pcb_smtpad"),
1002
- shape: z52.literal("rect"),
1026
+ var pcb_smtpad_rect = z54.object({
1027
+ type: z54.literal("pcb_smtpad"),
1028
+ shape: z54.literal("rect"),
1003
1029
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1004
- pcb_group_id: z52.string().optional(),
1005
- subcircuit_id: z52.string().optional(),
1030
+ pcb_group_id: z54.string().optional(),
1031
+ subcircuit_id: z54.string().optional(),
1006
1032
  x: distance,
1007
1033
  y: distance,
1008
- width: z52.number(),
1009
- height: z52.number(),
1034
+ width: z54.number(),
1035
+ height: z54.number(),
1010
1036
  layer: layer_ref,
1011
- port_hints: z52.array(z52.string()).optional(),
1012
- pcb_component_id: z52.string().optional(),
1013
- pcb_port_id: z52.string().optional()
1037
+ port_hints: z54.array(z54.string()).optional(),
1038
+ pcb_component_id: z54.string().optional(),
1039
+ pcb_port_id: z54.string().optional()
1014
1040
  });
1015
- var pcb_smtpad_rotated_rect = z52.object({
1016
- type: z52.literal("pcb_smtpad"),
1017
- shape: z52.literal("rotated_rect"),
1041
+ var pcb_smtpad_rotated_rect = z54.object({
1042
+ type: z54.literal("pcb_smtpad"),
1043
+ shape: z54.literal("rotated_rect"),
1018
1044
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1019
- pcb_group_id: z52.string().optional(),
1020
- subcircuit_id: z52.string().optional(),
1045
+ pcb_group_id: z54.string().optional(),
1046
+ subcircuit_id: z54.string().optional(),
1021
1047
  x: distance,
1022
1048
  y: distance,
1023
- width: z52.number(),
1024
- height: z52.number(),
1049
+ width: z54.number(),
1050
+ height: z54.number(),
1025
1051
  ccw_rotation: rotation,
1026
1052
  layer: layer_ref,
1027
- port_hints: z52.array(z52.string()).optional(),
1028
- pcb_component_id: z52.string().optional(),
1029
- pcb_port_id: z52.string().optional()
1053
+ port_hints: z54.array(z54.string()).optional(),
1054
+ pcb_component_id: z54.string().optional(),
1055
+ pcb_port_id: z54.string().optional()
1030
1056
  });
1031
- var pcb_smtpad_pill = z52.object({
1032
- type: z52.literal("pcb_smtpad"),
1033
- shape: z52.literal("pill"),
1057
+ var pcb_smtpad_pill = z54.object({
1058
+ type: z54.literal("pcb_smtpad"),
1059
+ shape: z54.literal("pill"),
1034
1060
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1035
- pcb_group_id: z52.string().optional(),
1036
- subcircuit_id: z52.string().optional(),
1061
+ pcb_group_id: z54.string().optional(),
1062
+ subcircuit_id: z54.string().optional(),
1037
1063
  x: distance,
1038
1064
  y: distance,
1039
- width: z52.number(),
1040
- height: z52.number(),
1041
- radius: z52.number(),
1065
+ width: z54.number(),
1066
+ height: z54.number(),
1067
+ radius: z54.number(),
1042
1068
  layer: layer_ref,
1043
- port_hints: z52.array(z52.string()).optional(),
1044
- pcb_component_id: z52.string().optional(),
1045
- pcb_port_id: z52.string().optional()
1069
+ port_hints: z54.array(z54.string()).optional(),
1070
+ pcb_component_id: z54.string().optional(),
1071
+ pcb_port_id: z54.string().optional()
1046
1072
  });
1047
- var pcb_smtpad = z52.union([
1073
+ var pcb_smtpad = z54.union([
1048
1074
  pcb_smtpad_circle,
1049
1075
  pcb_smtpad_rect,
1050
1076
  pcb_smtpad_rotated_rect,
@@ -1056,79 +1082,79 @@ expectTypesMatch(true);
1056
1082
  expectTypesMatch(true);
1057
1083
 
1058
1084
  // src/pcb/pcb_solder_paste.ts
1059
- import { z as z53 } from "zod";
1060
- var pcb_solder_paste_circle = z53.object({
1061
- type: z53.literal("pcb_solder_paste"),
1062
- shape: z53.literal("circle"),
1085
+ import { z as z55 } from "zod";
1086
+ var pcb_solder_paste_circle = z55.object({
1087
+ type: z55.literal("pcb_solder_paste"),
1088
+ shape: z55.literal("circle"),
1063
1089
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1064
- pcb_group_id: z53.string().optional(),
1065
- subcircuit_id: z53.string().optional(),
1090
+ pcb_group_id: z55.string().optional(),
1091
+ subcircuit_id: z55.string().optional(),
1066
1092
  x: distance,
1067
1093
  y: distance,
1068
- radius: z53.number(),
1094
+ radius: z55.number(),
1069
1095
  layer: layer_ref,
1070
- pcb_component_id: z53.string().optional(),
1071
- pcb_smtpad_id: z53.string().optional()
1096
+ pcb_component_id: z55.string().optional(),
1097
+ pcb_smtpad_id: z55.string().optional()
1072
1098
  });
1073
- var pcb_solder_paste_rect = z53.object({
1074
- type: z53.literal("pcb_solder_paste"),
1075
- shape: z53.literal("rect"),
1099
+ var pcb_solder_paste_rect = z55.object({
1100
+ type: z55.literal("pcb_solder_paste"),
1101
+ shape: z55.literal("rect"),
1076
1102
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1077
- pcb_group_id: z53.string().optional(),
1078
- subcircuit_id: z53.string().optional(),
1103
+ pcb_group_id: z55.string().optional(),
1104
+ subcircuit_id: z55.string().optional(),
1079
1105
  x: distance,
1080
1106
  y: distance,
1081
- width: z53.number(),
1082
- height: z53.number(),
1107
+ width: z55.number(),
1108
+ height: z55.number(),
1083
1109
  layer: layer_ref,
1084
- pcb_component_id: z53.string().optional(),
1085
- pcb_smtpad_id: z53.string().optional()
1110
+ pcb_component_id: z55.string().optional(),
1111
+ pcb_smtpad_id: z55.string().optional()
1086
1112
  });
1087
- var pcb_solder_paste_pill = z53.object({
1088
- type: z53.literal("pcb_solder_paste"),
1089
- shape: z53.literal("pill"),
1113
+ var pcb_solder_paste_pill = z55.object({
1114
+ type: z55.literal("pcb_solder_paste"),
1115
+ shape: z55.literal("pill"),
1090
1116
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1091
- pcb_group_id: z53.string().optional(),
1092
- subcircuit_id: z53.string().optional(),
1117
+ pcb_group_id: z55.string().optional(),
1118
+ subcircuit_id: z55.string().optional(),
1093
1119
  x: distance,
1094
1120
  y: distance,
1095
- width: z53.number(),
1096
- height: z53.number(),
1097
- radius: z53.number(),
1121
+ width: z55.number(),
1122
+ height: z55.number(),
1123
+ radius: z55.number(),
1098
1124
  layer: layer_ref,
1099
- pcb_component_id: z53.string().optional(),
1100
- pcb_smtpad_id: z53.string().optional()
1125
+ pcb_component_id: z55.string().optional(),
1126
+ pcb_smtpad_id: z55.string().optional()
1101
1127
  });
1102
- var pcb_solder_paste_rotated_rect = z53.object({
1103
- type: z53.literal("pcb_solder_paste"),
1104
- shape: z53.literal("rotated_rect"),
1128
+ var pcb_solder_paste_rotated_rect = z55.object({
1129
+ type: z55.literal("pcb_solder_paste"),
1130
+ shape: z55.literal("rotated_rect"),
1105
1131
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1106
- pcb_group_id: z53.string().optional(),
1107
- subcircuit_id: z53.string().optional(),
1132
+ pcb_group_id: z55.string().optional(),
1133
+ subcircuit_id: z55.string().optional(),
1108
1134
  x: distance,
1109
1135
  y: distance,
1110
- width: z53.number(),
1111
- height: z53.number(),
1136
+ width: z55.number(),
1137
+ height: z55.number(),
1112
1138
  ccw_rotation: distance,
1113
1139
  layer: layer_ref,
1114
- pcb_component_id: z53.string().optional(),
1115
- pcb_smtpad_id: z53.string().optional()
1140
+ pcb_component_id: z55.string().optional(),
1141
+ pcb_smtpad_id: z55.string().optional()
1116
1142
  });
1117
- var pcb_solder_paste_oval = z53.object({
1118
- type: z53.literal("pcb_solder_paste"),
1119
- shape: z53.literal("oval"),
1143
+ var pcb_solder_paste_oval = z55.object({
1144
+ type: z55.literal("pcb_solder_paste"),
1145
+ shape: z55.literal("oval"),
1120
1146
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1121
- pcb_group_id: z53.string().optional(),
1122
- subcircuit_id: z53.string().optional(),
1147
+ pcb_group_id: z55.string().optional(),
1148
+ subcircuit_id: z55.string().optional(),
1123
1149
  x: distance,
1124
1150
  y: distance,
1125
- width: z53.number(),
1126
- height: z53.number(),
1151
+ width: z55.number(),
1152
+ height: z55.number(),
1127
1153
  layer: layer_ref,
1128
- pcb_component_id: z53.string().optional(),
1129
- pcb_smtpad_id: z53.string().optional()
1154
+ pcb_component_id: z55.string().optional(),
1155
+ pcb_smtpad_id: z55.string().optional()
1130
1156
  });
1131
- var pcb_solder_paste = z53.union([
1157
+ var pcb_solder_paste = z55.union([
1132
1158
  pcb_solder_paste_circle,
1133
1159
  pcb_solder_paste_rect,
1134
1160
  pcb_solder_paste_pill,
@@ -1144,95 +1170,95 @@ expectTypesMatch(
1144
1170
  expectTypesMatch(true);
1145
1171
 
1146
1172
  // src/pcb/pcb_text.ts
1147
- import { z as z54 } from "zod";
1148
- var pcb_text = z54.object({
1149
- type: z54.literal("pcb_text"),
1173
+ import { z as z56 } from "zod";
1174
+ var pcb_text = z56.object({
1175
+ type: z56.literal("pcb_text"),
1150
1176
  pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
1151
- pcb_group_id: z54.string().optional(),
1152
- subcircuit_id: z54.string().optional(),
1153
- text: z54.string(),
1177
+ pcb_group_id: z56.string().optional(),
1178
+ subcircuit_id: z56.string().optional(),
1179
+ text: z56.string(),
1154
1180
  center: point,
1155
1181
  layer: layer_ref,
1156
1182
  width: length,
1157
1183
  height: length,
1158
- lines: z54.number(),
1184
+ lines: z56.number(),
1159
1185
  // @ts-ignore
1160
- align: z54.enum(["bottom-left"])
1186
+ align: z56.enum(["bottom-left"])
1161
1187
  }).describe("Defines text on the PCB");
1162
1188
  expectTypesMatch(true);
1163
1189
 
1164
1190
  // src/pcb/pcb_trace.ts
1165
- import { z as z55 } from "zod";
1166
- var pcb_trace_route_point_wire = z55.object({
1167
- route_type: z55.literal("wire"),
1191
+ import { z as z57 } from "zod";
1192
+ var pcb_trace_route_point_wire = z57.object({
1193
+ route_type: z57.literal("wire"),
1168
1194
  x: distance,
1169
1195
  y: distance,
1170
1196
  width: distance,
1171
- start_pcb_port_id: z55.string().optional(),
1172
- end_pcb_port_id: z55.string().optional(),
1197
+ start_pcb_port_id: z57.string().optional(),
1198
+ end_pcb_port_id: z57.string().optional(),
1173
1199
  layer: layer_ref
1174
1200
  });
1175
- var pcb_trace_route_point_via = z55.object({
1176
- route_type: z55.literal("via"),
1201
+ var pcb_trace_route_point_via = z57.object({
1202
+ route_type: z57.literal("via"),
1177
1203
  x: distance,
1178
1204
  y: distance,
1179
1205
  hole_diameter: distance.optional(),
1180
1206
  outer_diameter: distance.optional(),
1181
- from_layer: z55.string(),
1182
- to_layer: z55.string()
1207
+ from_layer: z57.string(),
1208
+ to_layer: z57.string()
1183
1209
  });
1184
- var pcb_trace_route_point = z55.union([
1210
+ var pcb_trace_route_point = z57.union([
1185
1211
  pcb_trace_route_point_wire,
1186
1212
  pcb_trace_route_point_via
1187
1213
  ]);
1188
- var pcb_trace = z55.object({
1189
- type: z55.literal("pcb_trace"),
1190
- source_trace_id: z55.string().optional(),
1191
- pcb_component_id: z55.string().optional(),
1214
+ var pcb_trace = z57.object({
1215
+ type: z57.literal("pcb_trace"),
1216
+ source_trace_id: z57.string().optional(),
1217
+ pcb_component_id: z57.string().optional(),
1192
1218
  pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
1193
- pcb_group_id: z55.string().optional(),
1194
- subcircuit_id: z55.string().optional(),
1195
- route_thickness_mode: z55.enum(["constant", "interpolated"]).default("constant").optional(),
1196
- route_order_index: z55.number().optional(),
1197
- should_round_corners: z55.boolean().optional(),
1198
- trace_length: z55.number().optional(),
1199
- route: z55.array(pcb_trace_route_point)
1219
+ pcb_group_id: z57.string().optional(),
1220
+ subcircuit_id: z57.string().optional(),
1221
+ route_thickness_mode: z57.enum(["constant", "interpolated"]).default("constant").optional(),
1222
+ route_order_index: z57.number().optional(),
1223
+ should_round_corners: z57.boolean().optional(),
1224
+ trace_length: z57.number().optional(),
1225
+ route: z57.array(pcb_trace_route_point)
1200
1226
  }).describe("Defines a trace on the PCB");
1201
1227
  expectTypesMatch(true);
1202
1228
  expectTypesMatch(true);
1203
1229
 
1204
1230
  // src/pcb/pcb_trace_error.ts
1205
- import { z as z56 } from "zod";
1206
- var pcb_trace_error = z56.object({
1207
- type: z56.literal("pcb_trace_error"),
1231
+ import { z as z58 } from "zod";
1232
+ var pcb_trace_error = z58.object({
1233
+ type: z58.literal("pcb_trace_error"),
1208
1234
  pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
1209
- error_type: z56.literal("pcb_trace_error"),
1210
- message: z56.string(),
1235
+ error_type: z58.literal("pcb_trace_error"),
1236
+ message: z58.string(),
1211
1237
  center: point.optional(),
1212
- pcb_trace_id: z56.string(),
1213
- source_trace_id: z56.string(),
1214
- pcb_component_ids: z56.array(z56.string()),
1215
- pcb_port_ids: z56.array(z56.string())
1238
+ pcb_trace_id: z58.string(),
1239
+ source_trace_id: z58.string(),
1240
+ pcb_component_ids: z58.array(z58.string()),
1241
+ pcb_port_ids: z58.array(z58.string())
1216
1242
  }).describe("Defines a trace error on the PCB");
1217
1243
  expectTypesMatch(true);
1218
1244
 
1219
1245
  // src/pcb/pcb_port_not_matched_error.ts
1220
- import { z as z57 } from "zod";
1221
- var pcb_port_not_matched_error = z57.object({
1222
- type: z57.literal("pcb_port_not_matched_error"),
1246
+ import { z as z59 } from "zod";
1247
+ var pcb_port_not_matched_error = z59.object({
1248
+ type: z59.literal("pcb_port_not_matched_error"),
1223
1249
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
1224
- message: z57.string(),
1225
- pcb_component_ids: z57.array(z57.string())
1250
+ message: z59.string(),
1251
+ pcb_component_ids: z59.array(z59.string())
1226
1252
  }).describe("Defines a trace error on the PCB where a port is not matched");
1227
1253
  expectTypesMatch(true);
1228
1254
 
1229
1255
  // src/pcb/pcb_via.ts
1230
- import { z as z58 } from "zod";
1231
- var pcb_via = z58.object({
1232
- type: z58.literal("pcb_via"),
1256
+ import { z as z60 } from "zod";
1257
+ var pcb_via = z60.object({
1258
+ type: z60.literal("pcb_via"),
1233
1259
  pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
1234
- pcb_group_id: z58.string().optional(),
1235
- subcircuit_id: z58.string().optional(),
1260
+ pcb_group_id: z60.string().optional(),
1261
+ subcircuit_id: z60.string().optional(),
1236
1262
  x: distance,
1237
1263
  y: distance,
1238
1264
  outer_diameter: distance.default("0.6mm"),
@@ -1241,56 +1267,56 @@ var pcb_via = z58.object({
1241
1267
  from_layer: layer_ref.optional(),
1242
1268
  /** @deprecated */
1243
1269
  to_layer: layer_ref.optional(),
1244
- layers: z58.array(layer_ref),
1245
- pcb_trace_id: z58.string().optional()
1270
+ layers: z60.array(layer_ref),
1271
+ pcb_trace_id: z60.string().optional()
1246
1272
  }).describe("Defines a via on the PCB");
1247
1273
  expectTypesMatch(true);
1248
1274
 
1249
1275
  // src/pcb/pcb_board.ts
1250
- import { z as z59 } from "zod";
1251
- var pcb_board = z59.object({
1252
- type: z59.literal("pcb_board"),
1276
+ import { z as z61 } from "zod";
1277
+ var pcb_board = z61.object({
1278
+ type: z61.literal("pcb_board"),
1253
1279
  pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
1254
- is_subcircuit: z59.boolean().optional(),
1255
- subcircuit_id: z59.string().optional(),
1280
+ is_subcircuit: z61.boolean().optional(),
1281
+ subcircuit_id: z61.string().optional(),
1256
1282
  width: length,
1257
1283
  height: length,
1258
1284
  center: point,
1259
1285
  thickness: length.optional().default(1.4),
1260
- num_layers: z59.number().optional().default(4),
1261
- outline: z59.array(point).optional(),
1262
- material: z59.enum(["fr4", "fr1"]).default("fr4")
1286
+ num_layers: z61.number().optional().default(4),
1287
+ outline: z61.array(point).optional(),
1288
+ material: z61.enum(["fr4", "fr1"]).default("fr4")
1263
1289
  }).describe("Defines the board outline of the PCB");
1264
1290
  expectTypesMatch(true);
1265
1291
 
1266
1292
  // src/pcb/pcb_placement_error.ts
1267
- import { z as z60 } from "zod";
1268
- var pcb_placement_error = z60.object({
1269
- type: z60.literal("pcb_placement_error"),
1293
+ import { z as z62 } from "zod";
1294
+ var pcb_placement_error = z62.object({
1295
+ type: z62.literal("pcb_placement_error"),
1270
1296
  pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
1271
- message: z60.string()
1297
+ message: z62.string()
1272
1298
  }).describe("Defines a placement error on the PCB");
1273
1299
  expectTypesMatch(true);
1274
1300
 
1275
1301
  // src/pcb/pcb_trace_hint.ts
1276
- import { z as z61 } from "zod";
1277
- var pcb_trace_hint = z61.object({
1278
- type: z61.literal("pcb_trace_hint"),
1302
+ import { z as z63 } from "zod";
1303
+ var pcb_trace_hint = z63.object({
1304
+ type: z63.literal("pcb_trace_hint"),
1279
1305
  pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
1280
- pcb_port_id: z61.string(),
1281
- pcb_component_id: z61.string(),
1282
- route: z61.array(route_hint_point)
1306
+ pcb_port_id: z63.string(),
1307
+ pcb_component_id: z63.string(),
1308
+ route: z63.array(route_hint_point)
1283
1309
  }).describe("A hint that can be used during generation of a PCB trace");
1284
1310
  expectTypesMatch(true);
1285
1311
 
1286
1312
  // src/pcb/pcb_silkscreen_line.ts
1287
- import { z as z62 } from "zod";
1288
- var pcb_silkscreen_line = z62.object({
1289
- type: z62.literal("pcb_silkscreen_line"),
1313
+ import { z as z64 } from "zod";
1314
+ var pcb_silkscreen_line = z64.object({
1315
+ type: z64.literal("pcb_silkscreen_line"),
1290
1316
  pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
1291
- pcb_component_id: z62.string(),
1292
- pcb_group_id: z62.string().optional(),
1293
- subcircuit_id: z62.string().optional(),
1317
+ pcb_component_id: z64.string(),
1318
+ pcb_group_id: z64.string().optional(),
1319
+ subcircuit_id: z64.string().optional(),
1294
1320
  stroke_width: distance.default("0.1mm"),
1295
1321
  x1: distance,
1296
1322
  y1: distance,
@@ -1301,46 +1327,46 @@ var pcb_silkscreen_line = z62.object({
1301
1327
  expectTypesMatch(true);
1302
1328
 
1303
1329
  // src/pcb/pcb_silkscreen_path.ts
1304
- import { z as z63 } from "zod";
1305
- var pcb_silkscreen_path = z63.object({
1306
- type: z63.literal("pcb_silkscreen_path"),
1330
+ import { z as z65 } from "zod";
1331
+ var pcb_silkscreen_path = z65.object({
1332
+ type: z65.literal("pcb_silkscreen_path"),
1307
1333
  pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
1308
- pcb_component_id: z63.string(),
1309
- pcb_group_id: z63.string().optional(),
1310
- subcircuit_id: z63.string().optional(),
1334
+ pcb_component_id: z65.string(),
1335
+ pcb_group_id: z65.string().optional(),
1336
+ subcircuit_id: z65.string().optional(),
1311
1337
  layer: visible_layer,
1312
- route: z63.array(point),
1338
+ route: z65.array(point),
1313
1339
  stroke_width: length
1314
1340
  }).describe("Defines a silkscreen path on the PCB");
1315
1341
  expectTypesMatch(true);
1316
1342
 
1317
1343
  // src/pcb/pcb_silkscreen_text.ts
1318
- import { z as z64 } from "zod";
1319
- var pcb_silkscreen_text = z64.object({
1320
- type: z64.literal("pcb_silkscreen_text"),
1344
+ import { z as z66 } from "zod";
1345
+ var pcb_silkscreen_text = z66.object({
1346
+ type: z66.literal("pcb_silkscreen_text"),
1321
1347
  pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
1322
- pcb_group_id: z64.string().optional(),
1323
- subcircuit_id: z64.string().optional(),
1324
- font: z64.literal("tscircuit2024").default("tscircuit2024"),
1348
+ pcb_group_id: z66.string().optional(),
1349
+ subcircuit_id: z66.string().optional(),
1350
+ font: z66.literal("tscircuit2024").default("tscircuit2024"),
1325
1351
  font_size: distance.default("0.2mm"),
1326
- pcb_component_id: z64.string(),
1327
- text: z64.string(),
1328
- ccw_rotation: z64.number().optional(),
1352
+ pcb_component_id: z66.string(),
1353
+ text: z66.string(),
1354
+ ccw_rotation: z66.number().optional(),
1329
1355
  layer: layer_ref,
1330
- is_mirrored: z64.boolean().default(false).optional(),
1356
+ is_mirrored: z66.boolean().default(false).optional(),
1331
1357
  anchor_position: point.default({ x: 0, y: 0 }),
1332
- anchor_alignment: z64.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center")
1358
+ anchor_alignment: z66.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center")
1333
1359
  }).describe("Defines silkscreen text on the PCB");
1334
1360
  expectTypesMatch(true);
1335
1361
 
1336
1362
  // src/pcb/pcb_silkscreen_rect.ts
1337
- import { z as z65 } from "zod";
1338
- var pcb_silkscreen_rect = z65.object({
1339
- type: z65.literal("pcb_silkscreen_rect"),
1363
+ import { z as z67 } from "zod";
1364
+ var pcb_silkscreen_rect = z67.object({
1365
+ type: z67.literal("pcb_silkscreen_rect"),
1340
1366
  pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
1341
- pcb_component_id: z65.string(),
1342
- pcb_group_id: z65.string().optional(),
1343
- subcircuit_id: z65.string().optional(),
1367
+ pcb_component_id: z67.string(),
1368
+ pcb_group_id: z67.string().optional(),
1369
+ subcircuit_id: z67.string().optional(),
1344
1370
  center: point,
1345
1371
  width: length,
1346
1372
  height: length,
@@ -1350,15 +1376,15 @@ var pcb_silkscreen_rect = z65.object({
1350
1376
  expectTypesMatch(true);
1351
1377
 
1352
1378
  // src/pcb/pcb_silkscreen_circle.ts
1353
- import { z as z66 } from "zod";
1354
- var pcb_silkscreen_circle = z66.object({
1355
- type: z66.literal("pcb_silkscreen_circle"),
1379
+ import { z as z68 } from "zod";
1380
+ var pcb_silkscreen_circle = z68.object({
1381
+ type: z68.literal("pcb_silkscreen_circle"),
1356
1382
  pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
1357
1383
  "pcb_silkscreen_circle"
1358
1384
  ),
1359
- pcb_component_id: z66.string(),
1360
- pcb_group_id: z66.string().optional(),
1361
- subcircuit_id: z66.string().optional(),
1385
+ pcb_component_id: z68.string(),
1386
+ pcb_group_id: z68.string().optional(),
1387
+ subcircuit_id: z68.string().optional(),
1362
1388
  center: point,
1363
1389
  radius: length,
1364
1390
  layer: visible_layer,
@@ -1367,13 +1393,13 @@ var pcb_silkscreen_circle = z66.object({
1367
1393
  expectTypesMatch(true);
1368
1394
 
1369
1395
  // src/pcb/pcb_silkscreen_oval.ts
1370
- import { z as z67 } from "zod";
1371
- var pcb_silkscreen_oval = z67.object({
1372
- type: z67.literal("pcb_silkscreen_oval"),
1396
+ import { z as z69 } from "zod";
1397
+ var pcb_silkscreen_oval = z69.object({
1398
+ type: z69.literal("pcb_silkscreen_oval"),
1373
1399
  pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
1374
- pcb_component_id: z67.string(),
1375
- pcb_group_id: z67.string().optional(),
1376
- subcircuit_id: z67.string().optional(),
1400
+ pcb_component_id: z69.string(),
1401
+ pcb_group_id: z69.string().optional(),
1402
+ subcircuit_id: z69.string().optional(),
1377
1403
  center: point,
1378
1404
  radius_x: distance,
1379
1405
  radius_y: distance,
@@ -1382,158 +1408,158 @@ var pcb_silkscreen_oval = z67.object({
1382
1408
  expectTypesMatch(true);
1383
1409
 
1384
1410
  // src/pcb/pcb_fabrication_note_text.ts
1385
- import { z as z68 } from "zod";
1386
- var pcb_fabrication_note_text = z68.object({
1387
- type: z68.literal("pcb_fabrication_note_text"),
1411
+ import { z as z70 } from "zod";
1412
+ var pcb_fabrication_note_text = z70.object({
1413
+ type: z70.literal("pcb_fabrication_note_text"),
1388
1414
  pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
1389
1415
  "pcb_fabrication_note_text"
1390
1416
  ),
1391
- subcircuit_id: z68.string().optional(),
1392
- pcb_group_id: z68.string().optional(),
1393
- font: z68.literal("tscircuit2024").default("tscircuit2024"),
1417
+ subcircuit_id: z70.string().optional(),
1418
+ pcb_group_id: z70.string().optional(),
1419
+ font: z70.literal("tscircuit2024").default("tscircuit2024"),
1394
1420
  font_size: distance.default("1mm"),
1395
- pcb_component_id: z68.string(),
1396
- text: z68.string(),
1421
+ pcb_component_id: z70.string(),
1422
+ text: z70.string(),
1397
1423
  layer: visible_layer,
1398
1424
  anchor_position: point.default({ x: 0, y: 0 }),
1399
- anchor_alignment: z68.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
1400
- color: z68.string().optional()
1425
+ anchor_alignment: z70.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
1426
+ color: z70.string().optional()
1401
1427
  }).describe(
1402
1428
  "Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
1403
1429
  );
1404
1430
  expectTypesMatch(true);
1405
1431
 
1406
1432
  // src/pcb/pcb_fabrication_note_path.ts
1407
- import { z as z69 } from "zod";
1408
- var pcb_fabrication_note_path = z69.object({
1409
- type: z69.literal("pcb_fabrication_note_path"),
1433
+ import { z as z71 } from "zod";
1434
+ var pcb_fabrication_note_path = z71.object({
1435
+ type: z71.literal("pcb_fabrication_note_path"),
1410
1436
  pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
1411
1437
  "pcb_fabrication_note_path"
1412
1438
  ),
1413
- pcb_component_id: z69.string(),
1414
- subcircuit_id: z69.string().optional(),
1439
+ pcb_component_id: z71.string(),
1440
+ subcircuit_id: z71.string().optional(),
1415
1441
  layer: layer_ref,
1416
- route: z69.array(point),
1442
+ route: z71.array(point),
1417
1443
  stroke_width: length,
1418
- color: z69.string().optional()
1444
+ color: z71.string().optional()
1419
1445
  }).describe(
1420
1446
  "Defines a fabrication path on the PCB for fabricators or assemblers"
1421
1447
  );
1422
1448
  expectTypesMatch(true);
1423
1449
 
1424
1450
  // src/pcb/pcb_keepout.ts
1425
- import { z as z70 } from "zod";
1426
- var pcb_keepout = z70.object({
1427
- type: z70.literal("pcb_keepout"),
1428
- shape: z70.literal("rect"),
1429
- pcb_group_id: z70.string().optional(),
1430
- subcircuit_id: z70.string().optional(),
1451
+ import { z as z72 } from "zod";
1452
+ var pcb_keepout = z72.object({
1453
+ type: z72.literal("pcb_keepout"),
1454
+ shape: z72.literal("rect"),
1455
+ pcb_group_id: z72.string().optional(),
1456
+ subcircuit_id: z72.string().optional(),
1431
1457
  center: point,
1432
1458
  width: distance,
1433
1459
  height: distance,
1434
- pcb_keepout_id: z70.string(),
1435
- layers: z70.array(z70.string()),
1460
+ pcb_keepout_id: z72.string(),
1461
+ layers: z72.array(z72.string()),
1436
1462
  // Specify layers where the keepout applies
1437
- description: z70.string().optional()
1463
+ description: z72.string().optional()
1438
1464
  // Optional description of the keepout
1439
1465
  }).or(
1440
- z70.object({
1441
- type: z70.literal("pcb_keepout"),
1442
- shape: z70.literal("circle"),
1443
- pcb_group_id: z70.string().optional(),
1444
- subcircuit_id: z70.string().optional(),
1466
+ z72.object({
1467
+ type: z72.literal("pcb_keepout"),
1468
+ shape: z72.literal("circle"),
1469
+ pcb_group_id: z72.string().optional(),
1470
+ subcircuit_id: z72.string().optional(),
1445
1471
  center: point,
1446
1472
  radius: distance,
1447
- pcb_keepout_id: z70.string(),
1448
- layers: z70.array(z70.string()),
1473
+ pcb_keepout_id: z72.string(),
1474
+ layers: z72.array(z72.string()),
1449
1475
  // Specify layers where the keepout applies
1450
- description: z70.string().optional()
1476
+ description: z72.string().optional()
1451
1477
  // Optional description of the keepout
1452
1478
  })
1453
1479
  );
1454
1480
 
1455
1481
  // src/pcb/pcb_missing_footprint_error.ts
1456
- import { z as z71 } from "zod";
1457
- var pcb_missing_footprint_error = z71.object({
1458
- type: z71.literal("pcb_missing_footprint_error"),
1482
+ import { z as z73 } from "zod";
1483
+ var pcb_missing_footprint_error = z73.object({
1484
+ type: z73.literal("pcb_missing_footprint_error"),
1459
1485
  pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
1460
1486
  "pcb_missing_footprint_error"
1461
1487
  ),
1462
- pcb_group_id: z71.string().optional(),
1463
- subcircuit_id: z71.string().optional(),
1464
- error_type: z71.literal("pcb_missing_footprint_error"),
1465
- source_component_id: z71.string(),
1466
- message: z71.string()
1488
+ pcb_group_id: z73.string().optional(),
1489
+ subcircuit_id: z73.string().optional(),
1490
+ error_type: z73.literal("pcb_missing_footprint_error"),
1491
+ source_component_id: z73.string(),
1492
+ message: z73.string()
1467
1493
  }).describe("Defines a missing footprint error on the PCB");
1468
1494
  expectTypesMatch(
1469
1495
  true
1470
1496
  );
1471
1497
 
1472
1498
  // src/pcb/pcb_group.ts
1473
- import { z as z72 } from "zod";
1474
- var pcb_group = z72.object({
1475
- type: z72.literal("pcb_group"),
1499
+ import { z as z74 } from "zod";
1500
+ var pcb_group = z74.object({
1501
+ type: z74.literal("pcb_group"),
1476
1502
  pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
1477
- source_group_id: z72.string(),
1478
- is_subcircuit: z72.boolean().optional(),
1479
- subcircuit_id: z72.string().optional(),
1503
+ source_group_id: z74.string(),
1504
+ is_subcircuit: z74.boolean().optional(),
1505
+ subcircuit_id: z74.string().optional(),
1480
1506
  width: length,
1481
1507
  height: length,
1482
1508
  center: point,
1483
- pcb_component_ids: z72.array(z72.string()),
1484
- name: z72.string().optional(),
1485
- description: z72.string().optional()
1509
+ pcb_component_ids: z74.array(z74.string()),
1510
+ name: z74.string().optional(),
1511
+ description: z74.string().optional()
1486
1512
  }).describe("Defines a group of components on the PCB");
1487
1513
  expectTypesMatch(true);
1488
1514
 
1489
1515
  // src/pcb/pcb_autorouting_error.ts
1490
- import { z as z73 } from "zod";
1491
- var pcb_autorouting_error = z73.object({
1492
- type: z73.literal("pcb_autorouting_error"),
1516
+ import { z as z75 } from "zod";
1517
+ var pcb_autorouting_error = z75.object({
1518
+ type: z75.literal("pcb_autorouting_error"),
1493
1519
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
1494
- message: z73.string()
1520
+ message: z75.string()
1495
1521
  }).describe("The autorouting has failed to route a portion of the board");
1496
1522
  expectTypesMatch(true);
1497
1523
 
1498
1524
  // src/pcb/pcb_manual_edit_conflict_warning.ts
1499
- import { z as z74 } from "zod";
1500
- var pcb_manual_edit_conflict_warning = z74.object({
1501
- type: z74.literal("pcb_manual_edit_conflict_warning"),
1525
+ import { z as z76 } from "zod";
1526
+ var pcb_manual_edit_conflict_warning = z76.object({
1527
+ type: z76.literal("pcb_manual_edit_conflict_warning"),
1502
1528
  pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
1503
1529
  "pcb_manual_edit_conflict_warning"
1504
1530
  ),
1505
- message: z74.string(),
1506
- pcb_component_id: z74.string(),
1507
- pcb_group_id: z74.string().optional(),
1508
- subcircuit_id: z74.string().optional(),
1509
- source_component_id: z74.string()
1531
+ message: z76.string(),
1532
+ pcb_component_id: z76.string(),
1533
+ pcb_group_id: z76.string().optional(),
1534
+ subcircuit_id: z76.string().optional(),
1535
+ source_component_id: z76.string()
1510
1536
  }).describe(
1511
1537
  "Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
1512
1538
  );
1513
1539
  expectTypesMatch(true);
1514
1540
 
1515
1541
  // src/cad/cad_component.ts
1516
- import { z as z75 } from "zod";
1517
- var cad_component = z75.object({
1518
- type: z75.literal("cad_component"),
1519
- cad_component_id: z75.string(),
1520
- pcb_component_id: z75.string(),
1521
- source_component_id: z75.string(),
1542
+ import { z as z77 } from "zod";
1543
+ var cad_component = z77.object({
1544
+ type: z77.literal("cad_component"),
1545
+ cad_component_id: z77.string(),
1546
+ pcb_component_id: z77.string(),
1547
+ source_component_id: z77.string(),
1522
1548
  position: point3,
1523
1549
  rotation: point3.optional(),
1524
1550
  size: point3.optional(),
1525
1551
  layer: layer_ref.optional(),
1526
1552
  // These are all ways to generate/load the 3d model
1527
- footprinter_string: z75.string().optional(),
1528
- model_obj_url: z75.string().optional(),
1529
- model_stl_url: z75.string().optional(),
1530
- model_3mf_url: z75.string().optional(),
1531
- model_jscad: z75.any().optional()
1553
+ footprinter_string: z77.string().optional(),
1554
+ model_obj_url: z77.string().optional(),
1555
+ model_stl_url: z77.string().optional(),
1556
+ model_3mf_url: z77.string().optional(),
1557
+ model_jscad: z77.any().optional()
1532
1558
  }).describe("Defines a component on the PCB");
1533
1559
 
1534
1560
  // src/any_circuit_element.ts
1535
- import { z as z76 } from "zod";
1536
- var any_circuit_element = z76.union([
1561
+ import { z as z78 } from "zod";
1562
+ var any_circuit_element = z78.union([
1537
1563
  source_trace,
1538
1564
  source_port,
1539
1565
  any_source_component,