circuit-json 0.0.239 → 0.0.241

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
@@ -713,146 +713,189 @@ var source_pcb_ground_plane = z40.object({
713
713
  }).describe("Defines a ground plane in the source domain");
714
714
  expectTypesMatch(true);
715
715
 
716
- // src/schematic/schematic_box.ts
716
+ // src/source/source_manually_placed_via.ts
717
+ import { z as z42 } from "zod";
718
+
719
+ // src/pcb/properties/layer_ref.ts
717
720
  import { z as z41 } from "zod";
718
- var schematic_box = z41.object({
719
- type: z41.literal("schematic_box"),
720
- schematic_component_id: z41.string().optional(),
721
+ var all_layers = [
722
+ "top",
723
+ "bottom",
724
+ "inner1",
725
+ "inner2",
726
+ "inner3",
727
+ "inner4",
728
+ "inner5",
729
+ "inner6"
730
+ ];
731
+ var layer_string = z41.enum(all_layers);
732
+ var layer_ref = layer_string.or(
733
+ z41.object({
734
+ name: layer_string
735
+ })
736
+ ).transform((layer) => {
737
+ if (typeof layer === "string") {
738
+ return layer;
739
+ }
740
+ return layer.name;
741
+ });
742
+ expectTypesMatch(true);
743
+ var visible_layer = z41.enum(["top", "bottom"]);
744
+
745
+ // src/source/source_manually_placed_via.ts
746
+ var source_manually_placed_via = z42.object({
747
+ type: z42.literal("source_manually_placed_via"),
748
+ source_manually_placed_via_id: z42.string(),
749
+ source_group_id: z42.string(),
750
+ source_net_id: z42.string(),
751
+ x: distance,
752
+ y: distance,
753
+ layers: z42.array(layer_ref),
754
+ subcircuit_id: z42.string().optional(),
755
+ source_trace_id: z42.string().optional()
756
+ }).describe("Defines a via that is manually placed in the source domain");
757
+ expectTypesMatch(true);
758
+
759
+ // src/schematic/schematic_box.ts
760
+ import { z as z43 } from "zod";
761
+ var schematic_box = z43.object({
762
+ type: z43.literal("schematic_box"),
763
+ schematic_component_id: z43.string().optional(),
721
764
  width: distance,
722
765
  height: distance,
723
- is_dashed: z41.boolean().default(false),
766
+ is_dashed: z43.boolean().default(false),
724
767
  x: distance,
725
768
  y: distance,
726
- subcircuit_id: z41.string().optional()
769
+ subcircuit_id: z43.string().optional()
727
770
  }).describe("Draws a box on the schematic");
728
771
  expectTypesMatch(true);
729
772
 
730
773
  // src/schematic/schematic_path.ts
731
- import { z as z42 } from "zod";
732
- var schematic_path = z42.object({
733
- type: z42.literal("schematic_path"),
734
- schematic_component_id: z42.string(),
735
- fill_color: z42.enum(["red", "blue"]).optional(),
736
- is_filled: z42.boolean().optional(),
737
- points: z42.array(point),
738
- subcircuit_id: z42.string().optional()
774
+ import { z as z44 } from "zod";
775
+ var schematic_path = z44.object({
776
+ type: z44.literal("schematic_path"),
777
+ schematic_component_id: z44.string(),
778
+ fill_color: z44.enum(["red", "blue"]).optional(),
779
+ is_filled: z44.boolean().optional(),
780
+ points: z44.array(point),
781
+ subcircuit_id: z44.string().optional()
739
782
  });
740
783
  expectTypesMatch(true);
741
784
 
742
785
  // src/schematic/schematic_component.ts
743
- import { z as z43 } from "zod";
744
- var schematic_pin_styles = z43.record(
745
- z43.object({
786
+ import { z as z45 } from "zod";
787
+ var schematic_pin_styles = z45.record(
788
+ z45.object({
746
789
  left_margin: length.optional(),
747
790
  right_margin: length.optional(),
748
791
  top_margin: length.optional(),
749
792
  bottom_margin: length.optional()
750
793
  })
751
794
  );
752
- var schematic_component_port_arrangement_by_size = z43.object({
753
- left_size: z43.number(),
754
- right_size: z43.number(),
755
- top_size: z43.number().optional(),
756
- bottom_size: z43.number().optional()
795
+ var schematic_component_port_arrangement_by_size = z45.object({
796
+ left_size: z45.number(),
797
+ right_size: z45.number(),
798
+ top_size: z45.number().optional(),
799
+ bottom_size: z45.number().optional()
757
800
  });
758
801
  expectTypesMatch(true);
759
- var schematic_component_port_arrangement_by_sides = z43.object({
760
- left_side: z43.object({
761
- pins: z43.array(z43.number()),
802
+ var schematic_component_port_arrangement_by_sides = z45.object({
803
+ left_side: z45.object({
804
+ pins: z45.array(z45.number()),
762
805
  // @ts-ignore
763
- direction: z43.enum(["top-to-bottom", "bottom-to-top"]).optional()
806
+ direction: z45.enum(["top-to-bottom", "bottom-to-top"]).optional()
764
807
  }).optional(),
765
- right_side: z43.object({
766
- pins: z43.array(z43.number()),
808
+ right_side: z45.object({
809
+ pins: z45.array(z45.number()),
767
810
  // @ts-ignore
768
- direction: z43.enum(["top-to-bottom", "bottom-to-top"]).optional()
811
+ direction: z45.enum(["top-to-bottom", "bottom-to-top"]).optional()
769
812
  }).optional(),
770
- top_side: z43.object({
771
- pins: z43.array(z43.number()),
813
+ top_side: z45.object({
814
+ pins: z45.array(z45.number()),
772
815
  // @ts-ignore
773
- direction: z43.enum(["left-to-right", "right-to-left"]).optional()
816
+ direction: z45.enum(["left-to-right", "right-to-left"]).optional()
774
817
  }).optional(),
775
- bottom_side: z43.object({
776
- pins: z43.array(z43.number()),
818
+ bottom_side: z45.object({
819
+ pins: z45.array(z45.number()),
777
820
  // @ts-ignore
778
- direction: z43.enum(["left-to-right", "right-to-left"]).optional()
821
+ direction: z45.enum(["left-to-right", "right-to-left"]).optional()
779
822
  }).optional()
780
823
  });
781
824
  expectTypesMatch(true);
782
- var port_arrangement = z43.union([
825
+ var port_arrangement = z45.union([
783
826
  schematic_component_port_arrangement_by_size,
784
827
  schematic_component_port_arrangement_by_sides
785
828
  ]);
786
- var schematic_component = z43.object({
787
- type: z43.literal("schematic_component"),
829
+ var schematic_component = z45.object({
830
+ type: z45.literal("schematic_component"),
788
831
  size,
789
832
  center: point,
790
- source_component_id: z43.string(),
791
- schematic_component_id: z43.string(),
833
+ source_component_id: z45.string(),
834
+ schematic_component_id: z45.string(),
792
835
  pin_spacing: length.optional(),
793
836
  pin_styles: schematic_pin_styles.optional(),
794
837
  box_width: length.optional(),
795
- symbol_name: z43.string().optional(),
838
+ symbol_name: z45.string().optional(),
796
839
  port_arrangement: port_arrangement.optional(),
797
- port_labels: z43.record(z43.string()).optional(),
798
- symbol_display_value: z43.string().optional(),
799
- subcircuit_id: z43.string().optional(),
800
- schematic_group_id: z43.string().optional()
840
+ port_labels: z45.record(z45.string()).optional(),
841
+ symbol_display_value: z45.string().optional(),
842
+ subcircuit_id: z45.string().optional(),
843
+ schematic_group_id: z45.string().optional()
801
844
  });
802
845
  expectTypesMatch(true);
803
846
 
804
847
  // src/schematic/schematic_line.ts
805
- import { z as z44 } from "zod";
806
- var schematic_line = z44.object({
807
- type: z44.literal("schematic_line"),
808
- schematic_component_id: z44.string(),
848
+ import { z as z46 } from "zod";
849
+ var schematic_line = z46.object({
850
+ type: z46.literal("schematic_line"),
851
+ schematic_component_id: z46.string(),
809
852
  x1: distance,
810
853
  x2: distance,
811
854
  y1: distance,
812
855
  y2: distance,
813
- subcircuit_id: z44.string().optional()
856
+ subcircuit_id: z46.string().optional()
814
857
  });
815
858
  expectTypesMatch(true);
816
859
 
817
860
  // src/schematic/schematic_trace.ts
818
- import { z as z45 } from "zod";
819
- var schematic_trace = z45.object({
820
- type: z45.literal("schematic_trace"),
821
- schematic_trace_id: z45.string(),
822
- source_trace_id: z45.string().optional(),
823
- junctions: z45.array(
824
- z45.object({
825
- x: z45.number(),
826
- y: z45.number()
861
+ import { z as z47 } from "zod";
862
+ var schematic_trace = z47.object({
863
+ type: z47.literal("schematic_trace"),
864
+ schematic_trace_id: z47.string(),
865
+ source_trace_id: z47.string().optional(),
866
+ junctions: z47.array(
867
+ z47.object({
868
+ x: z47.number(),
869
+ y: z47.number()
827
870
  })
828
871
  ),
829
- edges: z45.array(
830
- z45.object({
831
- from: z45.object({
832
- x: z45.number(),
833
- y: z45.number()
872
+ edges: z47.array(
873
+ z47.object({
874
+ from: z47.object({
875
+ x: z47.number(),
876
+ y: z47.number()
834
877
  }),
835
- to: z45.object({
836
- x: z45.number(),
837
- y: z45.number()
878
+ to: z47.object({
879
+ x: z47.number(),
880
+ y: z47.number()
838
881
  }),
839
- is_crossing: z45.boolean().optional(),
840
- from_schematic_port_id: z45.string().optional(),
841
- to_schematic_port_id: z45.string().optional()
882
+ is_crossing: z47.boolean().optional(),
883
+ from_schematic_port_id: z47.string().optional(),
884
+ to_schematic_port_id: z47.string().optional()
842
885
  })
843
886
  ),
844
- subcircuit_id: z45.string().optional(),
887
+ subcircuit_id: z47.string().optional(),
845
888
  // TODO: make required in a future release
846
- subcircuit_connectivity_map_key: z45.string().optional()
889
+ subcircuit_connectivity_map_key: z47.string().optional()
847
890
  });
848
891
  expectTypesMatch(true);
849
892
 
850
893
  // src/schematic/schematic_text.ts
851
- import { z as z47 } from "zod";
894
+ import { z as z49 } from "zod";
852
895
 
853
896
  // src/common/FivePointAnchor.ts
854
- import { z as z46 } from "zod";
855
- var fivePointAnchor = z46.enum([
897
+ import { z as z48 } from "zod";
898
+ var fivePointAnchor = z48.enum([
856
899
  "center",
857
900
  "left",
858
901
  "right",
@@ -862,111 +905,111 @@ var fivePointAnchor = z46.enum([
862
905
  expectTypesMatch(true);
863
906
 
864
907
  // src/schematic/schematic_text.ts
865
- var schematic_text = z47.object({
866
- type: z47.literal("schematic_text"),
867
- schematic_component_id: z47.string().optional(),
868
- schematic_text_id: z47.string(),
869
- text: z47.string(),
870
- font_size: z47.number().default(0.18),
871
- position: z47.object({
908
+ var schematic_text = z49.object({
909
+ type: z49.literal("schematic_text"),
910
+ schematic_component_id: z49.string().optional(),
911
+ schematic_text_id: z49.string(),
912
+ text: z49.string(),
913
+ font_size: z49.number().default(0.18),
914
+ position: z49.object({
872
915
  x: distance,
873
916
  y: distance
874
917
  }),
875
- rotation: z47.number().default(0),
876
- anchor: z47.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
877
- color: z47.string().default("#000000"),
878
- subcircuit_id: z47.string().optional()
918
+ rotation: z49.number().default(0),
919
+ anchor: z49.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
920
+ color: z49.string().default("#000000"),
921
+ subcircuit_id: z49.string().optional()
879
922
  });
880
923
  expectTypesMatch(true);
881
924
 
882
925
  // src/schematic/schematic_port.ts
883
- import { z as z48 } from "zod";
884
- var schematic_port = z48.object({
885
- type: z48.literal("schematic_port"),
886
- schematic_port_id: z48.string(),
887
- source_port_id: z48.string(),
888
- schematic_component_id: z48.string().optional(),
926
+ import { z as z50 } from "zod";
927
+ var schematic_port = z50.object({
928
+ type: z50.literal("schematic_port"),
929
+ schematic_port_id: z50.string(),
930
+ source_port_id: z50.string(),
931
+ schematic_component_id: z50.string().optional(),
889
932
  center: point,
890
- facing_direction: z48.enum(["up", "down", "left", "right"]).optional(),
891
- distance_from_component_edge: z48.number().optional(),
892
- side_of_component: z48.enum(["top", "bottom", "left", "right"]).optional(),
893
- true_ccw_index: z48.number().optional(),
894
- pin_number: z48.number().optional(),
895
- display_pin_label: z48.string().optional(),
896
- subcircuit_id: z48.string().optional(),
897
- is_connected: z48.boolean().optional(),
898
- has_input_arrow: z48.boolean().optional(),
899
- has_output_arrow: z48.boolean().optional()
933
+ facing_direction: z50.enum(["up", "down", "left", "right"]).optional(),
934
+ distance_from_component_edge: z50.number().optional(),
935
+ side_of_component: z50.enum(["top", "bottom", "left", "right"]).optional(),
936
+ true_ccw_index: z50.number().optional(),
937
+ pin_number: z50.number().optional(),
938
+ display_pin_label: z50.string().optional(),
939
+ subcircuit_id: z50.string().optional(),
940
+ is_connected: z50.boolean().optional(),
941
+ has_input_arrow: z50.boolean().optional(),
942
+ has_output_arrow: z50.boolean().optional()
900
943
  }).describe("Defines a port on a schematic component");
901
944
  expectTypesMatch(true);
902
945
 
903
946
  // src/schematic/schematic_net_label.ts
904
- import { z as z49 } from "zod";
905
- var schematic_net_label = z49.object({
906
- type: z49.literal("schematic_net_label"),
947
+ import { z as z51 } from "zod";
948
+ var schematic_net_label = z51.object({
949
+ type: z51.literal("schematic_net_label"),
907
950
  schematic_net_label_id: getZodPrefixedIdWithDefault("schematic_net_label"),
908
- schematic_trace_id: z49.string().optional(),
909
- source_trace_id: z49.string().optional(),
910
- source_net_id: z49.string(),
951
+ schematic_trace_id: z51.string().optional(),
952
+ source_trace_id: z51.string().optional(),
953
+ source_net_id: z51.string(),
911
954
  center: point,
912
955
  anchor_position: point.optional(),
913
- anchor_side: z49.enum(["top", "bottom", "left", "right"]),
914
- text: z49.string(),
915
- symbol_name: z49.string().optional(),
916
- is_movable: z49.boolean().optional(),
917
- subcircuit_id: z49.string().optional()
956
+ anchor_side: z51.enum(["top", "bottom", "left", "right"]),
957
+ text: z51.string(),
958
+ symbol_name: z51.string().optional(),
959
+ is_movable: z51.boolean().optional(),
960
+ subcircuit_id: z51.string().optional()
918
961
  });
919
962
  expectTypesMatch(true);
920
963
 
921
964
  // src/schematic/schematic_error.ts
922
- import { z as z50 } from "zod";
923
- var schematic_error = z50.object({
924
- type: z50.literal("schematic_error"),
925
- schematic_error_id: z50.string(),
965
+ import { z as z52 } from "zod";
966
+ var schematic_error = z52.object({
967
+ type: z52.literal("schematic_error"),
968
+ schematic_error_id: z52.string(),
926
969
  // eventually each error type should be broken out into a dir of files
927
- error_type: z50.literal("schematic_port_not_found").default("schematic_port_not_found"),
928
- message: z50.string(),
929
- subcircuit_id: z50.string().optional()
970
+ error_type: z52.literal("schematic_port_not_found").default("schematic_port_not_found"),
971
+ message: z52.string(),
972
+ subcircuit_id: z52.string().optional()
930
973
  }).describe("Defines a schematic error on the schematic");
931
974
  expectTypesMatch(true);
932
975
 
933
976
  // src/schematic/schematic_layout_error.ts
934
- import { z as z51 } from "zod";
935
- var schematic_layout_error = z51.object({
936
- type: z51.literal("schematic_layout_error"),
977
+ import { z as z53 } from "zod";
978
+ var schematic_layout_error = z53.object({
979
+ type: z53.literal("schematic_layout_error"),
937
980
  schematic_layout_error_id: getZodPrefixedIdWithDefault(
938
981
  "schematic_layout_error"
939
982
  ),
940
- error_type: z51.literal("schematic_layout_error").default("schematic_layout_error"),
941
- message: z51.string(),
942
- source_group_id: z51.string(),
943
- schematic_group_id: z51.string(),
944
- subcircuit_id: z51.string().optional()
983
+ error_type: z53.literal("schematic_layout_error").default("schematic_layout_error"),
984
+ message: z53.string(),
985
+ source_group_id: z53.string(),
986
+ schematic_group_id: z53.string(),
987
+ subcircuit_id: z53.string().optional()
945
988
  }).describe("Error emitted when schematic layout fails for a group");
946
989
  expectTypesMatch(true);
947
990
 
948
991
  // src/schematic/schematic_debug_object.ts
949
- import { z as z52 } from "zod";
950
- var schematic_debug_object_base = z52.object({
951
- type: z52.literal("schematic_debug_object"),
952
- label: z52.string().optional(),
953
- subcircuit_id: z52.string().optional()
992
+ import { z as z54 } from "zod";
993
+ var schematic_debug_object_base = z54.object({
994
+ type: z54.literal("schematic_debug_object"),
995
+ label: z54.string().optional(),
996
+ subcircuit_id: z54.string().optional()
954
997
  });
955
998
  var schematic_debug_rect = schematic_debug_object_base.extend({
956
- shape: z52.literal("rect"),
999
+ shape: z54.literal("rect"),
957
1000
  center: point,
958
1001
  size
959
1002
  });
960
1003
  var schematic_debug_line = schematic_debug_object_base.extend({
961
- shape: z52.literal("line"),
1004
+ shape: z54.literal("line"),
962
1005
  start: point,
963
1006
  end: point
964
1007
  });
965
1008
  var schematic_debug_point = schematic_debug_object_base.extend({
966
- shape: z52.literal("point"),
1009
+ shape: z54.literal("point"),
967
1010
  center: point
968
1011
  });
969
- var schematic_debug_object = z52.discriminatedUnion("shape", [
1012
+ var schematic_debug_object = z54.discriminatedUnion("shape", [
970
1013
  schematic_debug_rect,
971
1014
  schematic_debug_line,
972
1015
  schematic_debug_point
@@ -974,165 +1017,139 @@ var schematic_debug_object = z52.discriminatedUnion("shape", [
974
1017
  expectTypesMatch(true);
975
1018
 
976
1019
  // src/schematic/schematic_voltage_probe.ts
977
- import { z as z53 } from "zod";
978
- var schematic_voltage_probe = z53.object({
979
- type: z53.literal("schematic_voltage_probe"),
980
- schematic_voltage_probe_id: z53.string(),
1020
+ import { z as z55 } from "zod";
1021
+ var schematic_voltage_probe = z55.object({
1022
+ type: z55.literal("schematic_voltage_probe"),
1023
+ schematic_voltage_probe_id: z55.string(),
981
1024
  position: point,
982
- schematic_trace_id: z53.string(),
1025
+ schematic_trace_id: z55.string(),
983
1026
  voltage: voltage.optional(),
984
- subcircuit_id: z53.string().optional()
1027
+ subcircuit_id: z55.string().optional()
985
1028
  }).describe("Defines a voltage probe measurement point on a schematic trace");
986
1029
  expectTypesMatch(true);
987
1030
 
988
1031
  // src/schematic/schematic_manual_edit_conflict_warning.ts
989
- import { z as z54 } from "zod";
990
- var schematic_manual_edit_conflict_warning = z54.object({
991
- type: z54.literal("schematic_manual_edit_conflict_warning"),
1032
+ import { z as z56 } from "zod";
1033
+ var schematic_manual_edit_conflict_warning = z56.object({
1034
+ type: z56.literal("schematic_manual_edit_conflict_warning"),
992
1035
  schematic_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
993
1036
  "schematic_manual_edit_conflict_warning"
994
1037
  ),
995
- warning_type: z54.literal("schematic_manual_edit_conflict_warning").default("schematic_manual_edit_conflict_warning"),
996
- message: z54.string(),
997
- schematic_component_id: z54.string(),
998
- schematic_group_id: z54.string().optional(),
999
- subcircuit_id: z54.string().optional(),
1000
- source_component_id: z54.string()
1038
+ warning_type: z56.literal("schematic_manual_edit_conflict_warning").default("schematic_manual_edit_conflict_warning"),
1039
+ message: z56.string(),
1040
+ schematic_component_id: z56.string(),
1041
+ schematic_group_id: z56.string().optional(),
1042
+ subcircuit_id: z56.string().optional(),
1043
+ source_component_id: z56.string()
1001
1044
  }).describe(
1002
1045
  "Warning emitted when a component has both manual placement and explicit schX/schY coordinates"
1003
1046
  );
1004
1047
  expectTypesMatch(true);
1005
1048
 
1006
1049
  // src/schematic/schematic_group.ts
1007
- import { z as z55 } from "zod";
1008
- var schematic_group = z55.object({
1009
- type: z55.literal("schematic_group"),
1050
+ import { z as z57 } from "zod";
1051
+ var schematic_group = z57.object({
1052
+ type: z57.literal("schematic_group"),
1010
1053
  schematic_group_id: getZodPrefixedIdWithDefault("schematic_group"),
1011
- source_group_id: z55.string(),
1012
- is_subcircuit: z55.boolean().optional(),
1013
- subcircuit_id: z55.string().optional(),
1054
+ source_group_id: z57.string(),
1055
+ is_subcircuit: z57.boolean().optional(),
1056
+ subcircuit_id: z57.string().optional(),
1014
1057
  width: length,
1015
1058
  height: length,
1016
1059
  center: point,
1017
- schematic_component_ids: z55.array(z55.string()),
1018
- name: z55.string().optional(),
1019
- description: z55.string().optional()
1060
+ schematic_component_ids: z57.array(z57.string()),
1061
+ name: z57.string().optional(),
1062
+ description: z57.string().optional()
1020
1063
  }).describe("Defines a group of components on the schematic");
1021
1064
  expectTypesMatch(true);
1022
1065
 
1023
1066
  // src/schematic/schematic_table.ts
1024
- import { z as z56 } from "zod";
1025
- var schematic_table = z56.object({
1026
- type: z56.literal("schematic_table"),
1067
+ import { z as z58 } from "zod";
1068
+ var schematic_table = z58.object({
1069
+ type: z58.literal("schematic_table"),
1027
1070
  schematic_table_id: getZodPrefixedIdWithDefault("schematic_table"),
1028
1071
  anchor_position: point,
1029
- column_widths: z56.array(distance),
1030
- row_heights: z56.array(distance),
1072
+ column_widths: z58.array(distance),
1073
+ row_heights: z58.array(distance),
1031
1074
  cell_padding: distance.optional(),
1032
1075
  border_width: distance.optional(),
1033
- subcircuit_id: z56.string().optional(),
1034
- schematic_component_id: z56.string().optional(),
1076
+ subcircuit_id: z58.string().optional(),
1077
+ schematic_component_id: z58.string().optional(),
1035
1078
  anchor: ninePointAnchor.optional()
1036
1079
  }).describe("Defines a table on the schematic");
1037
1080
  expectTypesMatch(true);
1038
1081
 
1039
1082
  // src/schematic/schematic_table_cell.ts
1040
- import { z as z57 } from "zod";
1041
- var schematic_table_cell = z57.object({
1042
- type: z57.literal("schematic_table_cell"),
1083
+ import { z as z59 } from "zod";
1084
+ var schematic_table_cell = z59.object({
1085
+ type: z59.literal("schematic_table_cell"),
1043
1086
  schematic_table_cell_id: getZodPrefixedIdWithDefault(
1044
1087
  "schematic_table_cell"
1045
1088
  ),
1046
- schematic_table_id: z57.string(),
1047
- start_row_index: z57.number(),
1048
- end_row_index: z57.number(),
1049
- start_column_index: z57.number(),
1050
- end_column_index: z57.number(),
1051
- text: z57.string().optional(),
1089
+ schematic_table_id: z59.string(),
1090
+ start_row_index: z59.number(),
1091
+ end_row_index: z59.number(),
1092
+ start_column_index: z59.number(),
1093
+ end_column_index: z59.number(),
1094
+ text: z59.string().optional(),
1052
1095
  center: point,
1053
1096
  width: distance,
1054
1097
  height: distance,
1055
- horizontal_align: z57.enum(["left", "center", "right"]).optional(),
1056
- vertical_align: z57.enum(["top", "middle", "bottom"]).optional(),
1098
+ horizontal_align: z59.enum(["left", "center", "right"]).optional(),
1099
+ vertical_align: z59.enum(["top", "middle", "bottom"]).optional(),
1057
1100
  font_size: distance.optional(),
1058
- subcircuit_id: z57.string().optional()
1101
+ subcircuit_id: z59.string().optional()
1059
1102
  }).describe("Defines a cell within a schematic_table");
1060
1103
  expectTypesMatch(true);
1061
1104
 
1062
- // src/pcb/properties/layer_ref.ts
1063
- import { z as z58 } from "zod";
1064
- var all_layers = [
1065
- "top",
1066
- "bottom",
1067
- "inner1",
1068
- "inner2",
1069
- "inner3",
1070
- "inner4",
1071
- "inner5",
1072
- "inner6"
1073
- ];
1074
- var layer_string = z58.enum(all_layers);
1075
- var layer_ref = layer_string.or(
1076
- z58.object({
1077
- name: layer_string
1078
- })
1079
- ).transform((layer) => {
1080
- if (typeof layer === "string") {
1081
- return layer;
1082
- }
1083
- return layer.name;
1084
- });
1085
- expectTypesMatch(true);
1086
- var visible_layer = z58.enum(["top", "bottom"]);
1087
-
1088
1105
  // src/pcb/properties/pcb_route_hints.ts
1089
- import { z as z59 } from "zod";
1090
- var pcb_route_hint = z59.object({
1106
+ import { z as z60 } from "zod";
1107
+ var pcb_route_hint = z60.object({
1091
1108
  x: distance,
1092
1109
  y: distance,
1093
- via: z59.boolean().optional(),
1110
+ via: z60.boolean().optional(),
1094
1111
  via_to_layer: layer_ref.optional()
1095
1112
  });
1096
- var pcb_route_hints = z59.array(pcb_route_hint);
1113
+ var pcb_route_hints = z60.array(pcb_route_hint);
1097
1114
  expectTypesMatch(true);
1098
1115
  expectTypesMatch(true);
1099
1116
 
1100
1117
  // src/pcb/properties/route_hint_point.ts
1101
- import { z as z60 } from "zod";
1102
- var route_hint_point = z60.object({
1118
+ import { z as z61 } from "zod";
1119
+ var route_hint_point = z61.object({
1103
1120
  x: distance,
1104
1121
  y: distance,
1105
- via: z60.boolean().optional(),
1122
+ via: z61.boolean().optional(),
1106
1123
  to_layer: layer_ref.optional(),
1107
1124
  trace_width: distance.optional()
1108
1125
  });
1109
1126
  expectTypesMatch(true);
1110
1127
 
1111
1128
  // src/pcb/pcb_component.ts
1112
- import { z as z61 } from "zod";
1113
- var pcb_component = z61.object({
1114
- type: z61.literal("pcb_component"),
1129
+ import { z as z62 } from "zod";
1130
+ var pcb_component = z62.object({
1131
+ type: z62.literal("pcb_component"),
1115
1132
  pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
1116
- source_component_id: z61.string(),
1133
+ source_component_id: z62.string(),
1117
1134
  center: point,
1118
1135
  layer: layer_ref,
1119
1136
  rotation,
1120
1137
  width: length,
1121
1138
  height: length,
1122
- subcircuit_id: z61.string().optional(),
1123
- pcb_group_id: z61.string().optional()
1139
+ subcircuit_id: z62.string().optional(),
1140
+ pcb_group_id: z62.string().optional()
1124
1141
  }).describe("Defines a component on the PCB");
1125
1142
  expectTypesMatch(true);
1126
1143
 
1127
1144
  // src/pcb/pcb_hole.ts
1128
- import { z as z62 } from "zod";
1129
- var pcb_hole_circle_or_square = z62.object({
1130
- type: z62.literal("pcb_hole"),
1145
+ import { z as z63 } from "zod";
1146
+ var pcb_hole_circle_or_square = z63.object({
1147
+ type: z63.literal("pcb_hole"),
1131
1148
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1132
- pcb_group_id: z62.string().optional(),
1133
- subcircuit_id: z62.string().optional(),
1134
- hole_shape: z62.enum(["circle", "square"]),
1135
- hole_diameter: z62.number(),
1149
+ pcb_group_id: z63.string().optional(),
1150
+ subcircuit_id: z63.string().optional(),
1151
+ hole_shape: z63.enum(["circle", "square"]),
1152
+ hole_diameter: z63.number(),
1136
1153
  x: distance,
1137
1154
  y: distance
1138
1155
  });
@@ -1140,14 +1157,14 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
1140
1157
  "Defines a circular or square hole on the PCB"
1141
1158
  );
1142
1159
  expectTypesMatch(true);
1143
- var pcb_hole_oval = z62.object({
1144
- type: z62.literal("pcb_hole"),
1160
+ var pcb_hole_oval = z63.object({
1161
+ type: z63.literal("pcb_hole"),
1145
1162
  pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
1146
- pcb_group_id: z62.string().optional(),
1147
- subcircuit_id: z62.string().optional(),
1148
- hole_shape: z62.literal("oval"),
1149
- hole_width: z62.number(),
1150
- hole_height: z62.number(),
1163
+ pcb_group_id: z63.string().optional(),
1164
+ subcircuit_id: z63.string().optional(),
1165
+ hole_shape: z63.literal("oval"),
1166
+ hole_width: z63.number(),
1167
+ hole_height: z63.number(),
1151
1168
  x: distance,
1152
1169
  y: distance
1153
1170
  });
@@ -1158,98 +1175,98 @@ expectTypesMatch(true);
1158
1175
  var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
1159
1176
 
1160
1177
  // src/pcb/pcb_plated_hole.ts
1161
- import { z as z63 } from "zod";
1162
- var pcb_plated_hole_circle = z63.object({
1163
- type: z63.literal("pcb_plated_hole"),
1164
- shape: z63.literal("circle"),
1165
- pcb_group_id: z63.string().optional(),
1166
- subcircuit_id: z63.string().optional(),
1167
- outer_diameter: z63.number(),
1168
- hole_diameter: z63.number(),
1178
+ import { z as z64 } from "zod";
1179
+ var pcb_plated_hole_circle = z64.object({
1180
+ type: z64.literal("pcb_plated_hole"),
1181
+ shape: z64.literal("circle"),
1182
+ pcb_group_id: z64.string().optional(),
1183
+ subcircuit_id: z64.string().optional(),
1184
+ outer_diameter: z64.number(),
1185
+ hole_diameter: z64.number(),
1169
1186
  x: distance,
1170
1187
  y: distance,
1171
- layers: z63.array(layer_ref),
1172
- port_hints: z63.array(z63.string()).optional(),
1173
- pcb_component_id: z63.string().optional(),
1174
- pcb_port_id: z63.string().optional(),
1188
+ layers: z64.array(layer_ref),
1189
+ port_hints: z64.array(z64.string()).optional(),
1190
+ pcb_component_id: z64.string().optional(),
1191
+ pcb_port_id: z64.string().optional(),
1175
1192
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1176
1193
  });
1177
- var pcb_plated_hole_oval = z63.object({
1178
- type: z63.literal("pcb_plated_hole"),
1179
- shape: z63.enum(["oval", "pill"]),
1180
- pcb_group_id: z63.string().optional(),
1181
- subcircuit_id: z63.string().optional(),
1182
- outer_width: z63.number(),
1183
- outer_height: z63.number(),
1184
- hole_width: z63.number(),
1185
- hole_height: z63.number(),
1194
+ var pcb_plated_hole_oval = z64.object({
1195
+ type: z64.literal("pcb_plated_hole"),
1196
+ shape: z64.enum(["oval", "pill"]),
1197
+ pcb_group_id: z64.string().optional(),
1198
+ subcircuit_id: z64.string().optional(),
1199
+ outer_width: z64.number(),
1200
+ outer_height: z64.number(),
1201
+ hole_width: z64.number(),
1202
+ hole_height: z64.number(),
1186
1203
  x: distance,
1187
1204
  y: distance,
1188
- layers: z63.array(layer_ref),
1189
- port_hints: z63.array(z63.string()).optional(),
1190
- pcb_component_id: z63.string().optional(),
1191
- pcb_port_id: z63.string().optional(),
1205
+ layers: z64.array(layer_ref),
1206
+ port_hints: z64.array(z64.string()).optional(),
1207
+ pcb_component_id: z64.string().optional(),
1208
+ pcb_port_id: z64.string().optional(),
1192
1209
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1193
1210
  });
1194
- var pcb_circular_hole_with_rect_pad = z63.object({
1195
- type: z63.literal("pcb_plated_hole"),
1196
- shape: z63.literal("circular_hole_with_rect_pad"),
1197
- pcb_group_id: z63.string().optional(),
1198
- subcircuit_id: z63.string().optional(),
1199
- hole_shape: z63.literal("circle"),
1200
- pad_shape: z63.literal("rect"),
1201
- hole_diameter: z63.number(),
1202
- rect_pad_width: z63.number(),
1203
- rect_pad_height: z63.number(),
1211
+ var pcb_circular_hole_with_rect_pad = z64.object({
1212
+ type: z64.literal("pcb_plated_hole"),
1213
+ shape: z64.literal("circular_hole_with_rect_pad"),
1214
+ pcb_group_id: z64.string().optional(),
1215
+ subcircuit_id: z64.string().optional(),
1216
+ hole_shape: z64.literal("circle"),
1217
+ pad_shape: z64.literal("rect"),
1218
+ hole_diameter: z64.number(),
1219
+ rect_pad_width: z64.number(),
1220
+ rect_pad_height: z64.number(),
1204
1221
  x: distance,
1205
1222
  y: distance,
1206
- layers: z63.array(layer_ref),
1207
- port_hints: z63.array(z63.string()).optional(),
1208
- pcb_component_id: z63.string().optional(),
1209
- pcb_port_id: z63.string().optional(),
1223
+ layers: z64.array(layer_ref),
1224
+ port_hints: z64.array(z64.string()).optional(),
1225
+ pcb_component_id: z64.string().optional(),
1226
+ pcb_port_id: z64.string().optional(),
1210
1227
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1211
1228
  });
1212
- var pcb_pill_hole_with_rect_pad = z63.object({
1213
- type: z63.literal("pcb_plated_hole"),
1214
- shape: z63.literal("pill_hole_with_rect_pad"),
1215
- pcb_group_id: z63.string().optional(),
1216
- subcircuit_id: z63.string().optional(),
1217
- hole_shape: z63.literal("pill"),
1218
- pad_shape: z63.literal("rect"),
1219
- hole_width: z63.number(),
1220
- hole_height: z63.number(),
1221
- rect_pad_width: z63.number(),
1222
- rect_pad_height: z63.number(),
1229
+ var pcb_pill_hole_with_rect_pad = z64.object({
1230
+ type: z64.literal("pcb_plated_hole"),
1231
+ shape: z64.literal("pill_hole_with_rect_pad"),
1232
+ pcb_group_id: z64.string().optional(),
1233
+ subcircuit_id: z64.string().optional(),
1234
+ hole_shape: z64.literal("pill"),
1235
+ pad_shape: z64.literal("rect"),
1236
+ hole_width: z64.number(),
1237
+ hole_height: z64.number(),
1238
+ rect_pad_width: z64.number(),
1239
+ rect_pad_height: z64.number(),
1223
1240
  x: distance,
1224
1241
  y: distance,
1225
- layers: z63.array(layer_ref),
1226
- port_hints: z63.array(z63.string()).optional(),
1227
- pcb_component_id: z63.string().optional(),
1228
- pcb_port_id: z63.string().optional(),
1242
+ layers: z64.array(layer_ref),
1243
+ port_hints: z64.array(z64.string()).optional(),
1244
+ pcb_component_id: z64.string().optional(),
1245
+ pcb_port_id: z64.string().optional(),
1229
1246
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1230
1247
  });
1231
- var pcb_rotated_pill_hole_with_rect_pad = z63.object({
1232
- type: z63.literal("pcb_plated_hole"),
1233
- shape: z63.literal("rotated_pill_hole_with_rect_pad"),
1234
- pcb_group_id: z63.string().optional(),
1235
- subcircuit_id: z63.string().optional(),
1236
- hole_shape: z63.literal("rotated_pill"),
1237
- pad_shape: z63.literal("rect"),
1238
- hole_width: z63.number(),
1239
- hole_height: z63.number(),
1248
+ var pcb_rotated_pill_hole_with_rect_pad = z64.object({
1249
+ type: z64.literal("pcb_plated_hole"),
1250
+ shape: z64.literal("rotated_pill_hole_with_rect_pad"),
1251
+ pcb_group_id: z64.string().optional(),
1252
+ subcircuit_id: z64.string().optional(),
1253
+ hole_shape: z64.literal("rotated_pill"),
1254
+ pad_shape: z64.literal("rect"),
1255
+ hole_width: z64.number(),
1256
+ hole_height: z64.number(),
1240
1257
  hole_ccw_rotation: rotation,
1241
- rect_pad_width: z63.number(),
1242
- rect_pad_height: z63.number(),
1258
+ rect_pad_width: z64.number(),
1259
+ rect_pad_height: z64.number(),
1243
1260
  rect_ccw_rotation: rotation,
1244
1261
  x: distance,
1245
1262
  y: distance,
1246
- layers: z63.array(layer_ref),
1247
- port_hints: z63.array(z63.string()).optional(),
1248
- pcb_component_id: z63.string().optional(),
1249
- pcb_port_id: z63.string().optional(),
1263
+ layers: z64.array(layer_ref),
1264
+ port_hints: z64.array(z64.string()).optional(),
1265
+ pcb_component_id: z64.string().optional(),
1266
+ pcb_port_id: z64.string().optional(),
1250
1267
  pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
1251
1268
  });
1252
- var pcb_plated_hole = z63.union([
1269
+ var pcb_plated_hole = z64.union([
1253
1270
  pcb_plated_hole_circle,
1254
1271
  pcb_plated_hole_oval,
1255
1272
  pcb_circular_hole_with_rect_pad,
@@ -1265,113 +1282,113 @@ expectTypesMatch(true);
1265
1282
  expectTypesMatch(true);
1266
1283
 
1267
1284
  // src/pcb/pcb_port.ts
1268
- import { z as z64 } from "zod";
1269
- var pcb_port = z64.object({
1270
- type: z64.literal("pcb_port"),
1285
+ import { z as z65 } from "zod";
1286
+ var pcb_port = z65.object({
1287
+ type: z65.literal("pcb_port"),
1271
1288
  pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
1272
- pcb_group_id: z64.string().optional(),
1273
- subcircuit_id: z64.string().optional(),
1274
- source_port_id: z64.string(),
1275
- pcb_component_id: z64.string(),
1289
+ pcb_group_id: z65.string().optional(),
1290
+ subcircuit_id: z65.string().optional(),
1291
+ source_port_id: z65.string(),
1292
+ pcb_component_id: z65.string(),
1276
1293
  x: distance,
1277
1294
  y: distance,
1278
- layers: z64.array(layer_ref)
1295
+ layers: z65.array(layer_ref)
1279
1296
  }).describe("Defines a port on the PCB");
1280
1297
  expectTypesMatch(true);
1281
1298
 
1282
1299
  // src/pcb/pcb_smtpad.ts
1283
- import { z as z65 } from "zod";
1284
- var pcb_smtpad_circle = z65.object({
1285
- type: z65.literal("pcb_smtpad"),
1286
- shape: z65.literal("circle"),
1300
+ import { z as z66 } from "zod";
1301
+ var pcb_smtpad_circle = z66.object({
1302
+ type: z66.literal("pcb_smtpad"),
1303
+ shape: z66.literal("circle"),
1287
1304
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1288
- pcb_group_id: z65.string().optional(),
1289
- subcircuit_id: z65.string().optional(),
1305
+ pcb_group_id: z66.string().optional(),
1306
+ subcircuit_id: z66.string().optional(),
1290
1307
  x: distance,
1291
1308
  y: distance,
1292
- radius: z65.number(),
1309
+ radius: z66.number(),
1293
1310
  layer: layer_ref,
1294
- port_hints: z65.array(z65.string()).optional(),
1295
- pcb_component_id: z65.string().optional(),
1296
- pcb_port_id: z65.string().optional()
1311
+ port_hints: z66.array(z66.string()).optional(),
1312
+ pcb_component_id: z66.string().optional(),
1313
+ pcb_port_id: z66.string().optional()
1297
1314
  });
1298
- var pcb_smtpad_rect = z65.object({
1299
- type: z65.literal("pcb_smtpad"),
1300
- shape: z65.literal("rect"),
1315
+ var pcb_smtpad_rect = z66.object({
1316
+ type: z66.literal("pcb_smtpad"),
1317
+ shape: z66.literal("rect"),
1301
1318
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1302
- pcb_group_id: z65.string().optional(),
1303
- subcircuit_id: z65.string().optional(),
1319
+ pcb_group_id: z66.string().optional(),
1320
+ subcircuit_id: z66.string().optional(),
1304
1321
  x: distance,
1305
1322
  y: distance,
1306
- width: z65.number(),
1307
- height: z65.number(),
1323
+ width: z66.number(),
1324
+ height: z66.number(),
1308
1325
  layer: layer_ref,
1309
- port_hints: z65.array(z65.string()).optional(),
1310
- pcb_component_id: z65.string().optional(),
1311
- pcb_port_id: z65.string().optional()
1326
+ port_hints: z66.array(z66.string()).optional(),
1327
+ pcb_component_id: z66.string().optional(),
1328
+ pcb_port_id: z66.string().optional()
1312
1329
  });
1313
- var pcb_smtpad_rotated_rect = z65.object({
1314
- type: z65.literal("pcb_smtpad"),
1315
- shape: z65.literal("rotated_rect"),
1330
+ var pcb_smtpad_rotated_rect = z66.object({
1331
+ type: z66.literal("pcb_smtpad"),
1332
+ shape: z66.literal("rotated_rect"),
1316
1333
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1317
- pcb_group_id: z65.string().optional(),
1318
- subcircuit_id: z65.string().optional(),
1334
+ pcb_group_id: z66.string().optional(),
1335
+ subcircuit_id: z66.string().optional(),
1319
1336
  x: distance,
1320
1337
  y: distance,
1321
- width: z65.number(),
1322
- height: z65.number(),
1338
+ width: z66.number(),
1339
+ height: z66.number(),
1323
1340
  ccw_rotation: rotation,
1324
1341
  layer: layer_ref,
1325
- port_hints: z65.array(z65.string()).optional(),
1326
- pcb_component_id: z65.string().optional(),
1327
- pcb_port_id: z65.string().optional()
1342
+ port_hints: z66.array(z66.string()).optional(),
1343
+ pcb_component_id: z66.string().optional(),
1344
+ pcb_port_id: z66.string().optional()
1328
1345
  });
1329
- var pcb_smtpad_pill = z65.object({
1330
- type: z65.literal("pcb_smtpad"),
1331
- shape: z65.literal("pill"),
1346
+ var pcb_smtpad_pill = z66.object({
1347
+ type: z66.literal("pcb_smtpad"),
1348
+ shape: z66.literal("pill"),
1332
1349
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1333
- pcb_group_id: z65.string().optional(),
1334
- subcircuit_id: z65.string().optional(),
1350
+ pcb_group_id: z66.string().optional(),
1351
+ subcircuit_id: z66.string().optional(),
1335
1352
  x: distance,
1336
1353
  y: distance,
1337
- width: z65.number(),
1338
- height: z65.number(),
1339
- radius: z65.number(),
1354
+ width: z66.number(),
1355
+ height: z66.number(),
1356
+ radius: z66.number(),
1340
1357
  layer: layer_ref,
1341
- port_hints: z65.array(z65.string()).optional(),
1342
- pcb_component_id: z65.string().optional(),
1343
- pcb_port_id: z65.string().optional()
1358
+ port_hints: z66.array(z66.string()).optional(),
1359
+ pcb_component_id: z66.string().optional(),
1360
+ pcb_port_id: z66.string().optional()
1344
1361
  });
1345
- var pcb_smtpad_rotated_pill = z65.object({
1346
- type: z65.literal("pcb_smtpad"),
1347
- shape: z65.literal("rotated_pill"),
1362
+ var pcb_smtpad_rotated_pill = z66.object({
1363
+ type: z66.literal("pcb_smtpad"),
1364
+ shape: z66.literal("rotated_pill"),
1348
1365
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1349
- pcb_group_id: z65.string().optional(),
1350
- subcircuit_id: z65.string().optional(),
1366
+ pcb_group_id: z66.string().optional(),
1367
+ subcircuit_id: z66.string().optional(),
1351
1368
  x: distance,
1352
1369
  y: distance,
1353
- width: z65.number(),
1354
- height: z65.number(),
1355
- radius: z65.number(),
1370
+ width: z66.number(),
1371
+ height: z66.number(),
1372
+ radius: z66.number(),
1356
1373
  ccw_rotation: rotation,
1357
1374
  layer: layer_ref,
1358
- port_hints: z65.array(z65.string()).optional(),
1359
- pcb_component_id: z65.string().optional(),
1360
- pcb_port_id: z65.string().optional()
1375
+ port_hints: z66.array(z66.string()).optional(),
1376
+ pcb_component_id: z66.string().optional(),
1377
+ pcb_port_id: z66.string().optional()
1361
1378
  });
1362
- var pcb_smtpad_polygon = z65.object({
1363
- type: z65.literal("pcb_smtpad"),
1364
- shape: z65.literal("polygon"),
1379
+ var pcb_smtpad_polygon = z66.object({
1380
+ type: z66.literal("pcb_smtpad"),
1381
+ shape: z66.literal("polygon"),
1365
1382
  pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
1366
- pcb_group_id: z65.string().optional(),
1367
- subcircuit_id: z65.string().optional(),
1368
- points: z65.array(point),
1383
+ pcb_group_id: z66.string().optional(),
1384
+ subcircuit_id: z66.string().optional(),
1385
+ points: z66.array(point),
1369
1386
  layer: layer_ref,
1370
- port_hints: z65.array(z65.string()).optional(),
1371
- pcb_component_id: z65.string().optional(),
1372
- pcb_port_id: z65.string().optional()
1387
+ port_hints: z66.array(z66.string()).optional(),
1388
+ pcb_component_id: z66.string().optional(),
1389
+ pcb_port_id: z66.string().optional()
1373
1390
  });
1374
- var pcb_smtpad = z65.discriminatedUnion("shape", [
1391
+ var pcb_smtpad = z66.discriminatedUnion("shape", [
1375
1392
  pcb_smtpad_circle,
1376
1393
  pcb_smtpad_rect,
1377
1394
  pcb_smtpad_rotated_rect,
@@ -1387,79 +1404,79 @@ expectTypesMatch(true);
1387
1404
  expectTypesMatch(true);
1388
1405
 
1389
1406
  // src/pcb/pcb_solder_paste.ts
1390
- import { z as z66 } from "zod";
1391
- var pcb_solder_paste_circle = z66.object({
1392
- type: z66.literal("pcb_solder_paste"),
1393
- shape: z66.literal("circle"),
1407
+ import { z as z67 } from "zod";
1408
+ var pcb_solder_paste_circle = z67.object({
1409
+ type: z67.literal("pcb_solder_paste"),
1410
+ shape: z67.literal("circle"),
1394
1411
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1395
- pcb_group_id: z66.string().optional(),
1396
- subcircuit_id: z66.string().optional(),
1412
+ pcb_group_id: z67.string().optional(),
1413
+ subcircuit_id: z67.string().optional(),
1397
1414
  x: distance,
1398
1415
  y: distance,
1399
- radius: z66.number(),
1416
+ radius: z67.number(),
1400
1417
  layer: layer_ref,
1401
- pcb_component_id: z66.string().optional(),
1402
- pcb_smtpad_id: z66.string().optional()
1418
+ pcb_component_id: z67.string().optional(),
1419
+ pcb_smtpad_id: z67.string().optional()
1403
1420
  });
1404
- var pcb_solder_paste_rect = z66.object({
1405
- type: z66.literal("pcb_solder_paste"),
1406
- shape: z66.literal("rect"),
1421
+ var pcb_solder_paste_rect = z67.object({
1422
+ type: z67.literal("pcb_solder_paste"),
1423
+ shape: z67.literal("rect"),
1407
1424
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1408
- pcb_group_id: z66.string().optional(),
1409
- subcircuit_id: z66.string().optional(),
1425
+ pcb_group_id: z67.string().optional(),
1426
+ subcircuit_id: z67.string().optional(),
1410
1427
  x: distance,
1411
1428
  y: distance,
1412
- width: z66.number(),
1413
- height: z66.number(),
1429
+ width: z67.number(),
1430
+ height: z67.number(),
1414
1431
  layer: layer_ref,
1415
- pcb_component_id: z66.string().optional(),
1416
- pcb_smtpad_id: z66.string().optional()
1432
+ pcb_component_id: z67.string().optional(),
1433
+ pcb_smtpad_id: z67.string().optional()
1417
1434
  });
1418
- var pcb_solder_paste_pill = z66.object({
1419
- type: z66.literal("pcb_solder_paste"),
1420
- shape: z66.literal("pill"),
1435
+ var pcb_solder_paste_pill = z67.object({
1436
+ type: z67.literal("pcb_solder_paste"),
1437
+ shape: z67.literal("pill"),
1421
1438
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1422
- pcb_group_id: z66.string().optional(),
1423
- subcircuit_id: z66.string().optional(),
1439
+ pcb_group_id: z67.string().optional(),
1440
+ subcircuit_id: z67.string().optional(),
1424
1441
  x: distance,
1425
1442
  y: distance,
1426
- width: z66.number(),
1427
- height: z66.number(),
1428
- radius: z66.number(),
1443
+ width: z67.number(),
1444
+ height: z67.number(),
1445
+ radius: z67.number(),
1429
1446
  layer: layer_ref,
1430
- pcb_component_id: z66.string().optional(),
1431
- pcb_smtpad_id: z66.string().optional()
1447
+ pcb_component_id: z67.string().optional(),
1448
+ pcb_smtpad_id: z67.string().optional()
1432
1449
  });
1433
- var pcb_solder_paste_rotated_rect = z66.object({
1434
- type: z66.literal("pcb_solder_paste"),
1435
- shape: z66.literal("rotated_rect"),
1450
+ var pcb_solder_paste_rotated_rect = z67.object({
1451
+ type: z67.literal("pcb_solder_paste"),
1452
+ shape: z67.literal("rotated_rect"),
1436
1453
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1437
- pcb_group_id: z66.string().optional(),
1438
- subcircuit_id: z66.string().optional(),
1454
+ pcb_group_id: z67.string().optional(),
1455
+ subcircuit_id: z67.string().optional(),
1439
1456
  x: distance,
1440
1457
  y: distance,
1441
- width: z66.number(),
1442
- height: z66.number(),
1458
+ width: z67.number(),
1459
+ height: z67.number(),
1443
1460
  ccw_rotation: distance,
1444
1461
  layer: layer_ref,
1445
- pcb_component_id: z66.string().optional(),
1446
- pcb_smtpad_id: z66.string().optional()
1462
+ pcb_component_id: z67.string().optional(),
1463
+ pcb_smtpad_id: z67.string().optional()
1447
1464
  });
1448
- var pcb_solder_paste_oval = z66.object({
1449
- type: z66.literal("pcb_solder_paste"),
1450
- shape: z66.literal("oval"),
1465
+ var pcb_solder_paste_oval = z67.object({
1466
+ type: z67.literal("pcb_solder_paste"),
1467
+ shape: z67.literal("oval"),
1451
1468
  pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
1452
- pcb_group_id: z66.string().optional(),
1453
- subcircuit_id: z66.string().optional(),
1469
+ pcb_group_id: z67.string().optional(),
1470
+ subcircuit_id: z67.string().optional(),
1454
1471
  x: distance,
1455
1472
  y: distance,
1456
- width: z66.number(),
1457
- height: z66.number(),
1473
+ width: z67.number(),
1474
+ height: z67.number(),
1458
1475
  layer: layer_ref,
1459
- pcb_component_id: z66.string().optional(),
1460
- pcb_smtpad_id: z66.string().optional()
1476
+ pcb_component_id: z67.string().optional(),
1477
+ pcb_smtpad_id: z67.string().optional()
1461
1478
  });
1462
- var pcb_solder_paste = z66.union([
1479
+ var pcb_solder_paste = z67.union([
1463
1480
  pcb_solder_paste_circle,
1464
1481
  pcb_solder_paste_rect,
1465
1482
  pcb_solder_paste_pill,
@@ -1475,134 +1492,134 @@ expectTypesMatch(
1475
1492
  expectTypesMatch(true);
1476
1493
 
1477
1494
  // src/pcb/pcb_text.ts
1478
- import { z as z67 } from "zod";
1479
- var pcb_text = z67.object({
1480
- type: z67.literal("pcb_text"),
1495
+ import { z as z68 } from "zod";
1496
+ var pcb_text = z68.object({
1497
+ type: z68.literal("pcb_text"),
1481
1498
  pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
1482
- pcb_group_id: z67.string().optional(),
1483
- subcircuit_id: z67.string().optional(),
1484
- text: z67.string(),
1499
+ pcb_group_id: z68.string().optional(),
1500
+ subcircuit_id: z68.string().optional(),
1501
+ text: z68.string(),
1485
1502
  center: point,
1486
1503
  layer: layer_ref,
1487
1504
  width: length,
1488
1505
  height: length,
1489
- lines: z67.number(),
1506
+ lines: z68.number(),
1490
1507
  // @ts-ignore
1491
- align: z67.enum(["bottom-left"])
1508
+ align: z68.enum(["bottom-left"])
1492
1509
  }).describe("Defines text on the PCB");
1493
1510
  expectTypesMatch(true);
1494
1511
 
1495
1512
  // src/pcb/pcb_trace.ts
1496
- import { z as z68 } from "zod";
1497
- var pcb_trace_route_point_wire = z68.object({
1498
- route_type: z68.literal("wire"),
1513
+ import { z as z69 } from "zod";
1514
+ var pcb_trace_route_point_wire = z69.object({
1515
+ route_type: z69.literal("wire"),
1499
1516
  x: distance,
1500
1517
  y: distance,
1501
1518
  width: distance,
1502
- start_pcb_port_id: z68.string().optional(),
1503
- end_pcb_port_id: z68.string().optional(),
1519
+ start_pcb_port_id: z69.string().optional(),
1520
+ end_pcb_port_id: z69.string().optional(),
1504
1521
  layer: layer_ref
1505
1522
  });
1506
- var pcb_trace_route_point_via = z68.object({
1507
- route_type: z68.literal("via"),
1523
+ var pcb_trace_route_point_via = z69.object({
1524
+ route_type: z69.literal("via"),
1508
1525
  x: distance,
1509
1526
  y: distance,
1510
1527
  hole_diameter: distance.optional(),
1511
1528
  outer_diameter: distance.optional(),
1512
- from_layer: z68.string(),
1513
- to_layer: z68.string()
1529
+ from_layer: z69.string(),
1530
+ to_layer: z69.string()
1514
1531
  });
1515
- var pcb_trace_route_point = z68.union([
1532
+ var pcb_trace_route_point = z69.union([
1516
1533
  pcb_trace_route_point_wire,
1517
1534
  pcb_trace_route_point_via
1518
1535
  ]);
1519
- var pcb_trace = z68.object({
1520
- type: z68.literal("pcb_trace"),
1521
- source_trace_id: z68.string().optional(),
1522
- pcb_component_id: z68.string().optional(),
1536
+ var pcb_trace = z69.object({
1537
+ type: z69.literal("pcb_trace"),
1538
+ source_trace_id: z69.string().optional(),
1539
+ pcb_component_id: z69.string().optional(),
1523
1540
  pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
1524
- pcb_group_id: z68.string().optional(),
1525
- subcircuit_id: z68.string().optional(),
1526
- route_thickness_mode: z68.enum(["constant", "interpolated"]).default("constant").optional(),
1527
- route_order_index: z68.number().optional(),
1528
- should_round_corners: z68.boolean().optional(),
1529
- trace_length: z68.number().optional(),
1530
- route: z68.array(pcb_trace_route_point)
1541
+ pcb_group_id: z69.string().optional(),
1542
+ subcircuit_id: z69.string().optional(),
1543
+ route_thickness_mode: z69.enum(["constant", "interpolated"]).default("constant").optional(),
1544
+ route_order_index: z69.number().optional(),
1545
+ should_round_corners: z69.boolean().optional(),
1546
+ trace_length: z69.number().optional(),
1547
+ route: z69.array(pcb_trace_route_point)
1531
1548
  }).describe("Defines a trace on the PCB");
1532
1549
  expectTypesMatch(true);
1533
1550
  expectTypesMatch(true);
1534
1551
 
1535
1552
  // src/pcb/pcb_trace_error.ts
1536
- import { z as z69 } from "zod";
1537
- var pcb_trace_error = z69.object({
1538
- type: z69.literal("pcb_trace_error"),
1553
+ import { z as z70 } from "zod";
1554
+ var pcb_trace_error = z70.object({
1555
+ type: z70.literal("pcb_trace_error"),
1539
1556
  pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
1540
- error_type: z69.literal("pcb_trace_error").default("pcb_trace_error"),
1541
- message: z69.string(),
1557
+ error_type: z70.literal("pcb_trace_error").default("pcb_trace_error"),
1558
+ message: z70.string(),
1542
1559
  center: point.optional(),
1543
- pcb_trace_id: z69.string(),
1544
- source_trace_id: z69.string(),
1545
- pcb_component_ids: z69.array(z69.string()),
1546
- pcb_port_ids: z69.array(z69.string()),
1547
- subcircuit_id: z69.string().optional()
1560
+ pcb_trace_id: z70.string(),
1561
+ source_trace_id: z70.string(),
1562
+ pcb_component_ids: z70.array(z70.string()),
1563
+ pcb_port_ids: z70.array(z70.string()),
1564
+ subcircuit_id: z70.string().optional()
1548
1565
  }).describe("Defines a trace error on the PCB");
1549
1566
  expectTypesMatch(true);
1550
1567
 
1551
1568
  // src/pcb/pcb_trace_missing_error.ts
1552
- import { z as z70 } from "zod";
1553
- var pcb_trace_missing_error = z70.object({
1554
- type: z70.literal("pcb_trace_missing_error"),
1569
+ import { z as z71 } from "zod";
1570
+ var pcb_trace_missing_error = z71.object({
1571
+ type: z71.literal("pcb_trace_missing_error"),
1555
1572
  pcb_trace_missing_error_id: getZodPrefixedIdWithDefault(
1556
1573
  "pcb_trace_missing_error"
1557
1574
  ),
1558
- error_type: z70.literal("pcb_trace_missing_error").default("pcb_trace_missing_error"),
1559
- message: z70.string(),
1575
+ error_type: z71.literal("pcb_trace_missing_error").default("pcb_trace_missing_error"),
1576
+ message: z71.string(),
1560
1577
  center: point.optional(),
1561
- source_trace_id: z70.string(),
1562
- pcb_component_ids: z70.array(z70.string()),
1563
- pcb_port_ids: z70.array(z70.string()),
1564
- subcircuit_id: z70.string().optional()
1578
+ source_trace_id: z71.string(),
1579
+ pcb_component_ids: z71.array(z71.string()),
1580
+ pcb_port_ids: z71.array(z71.string()),
1581
+ subcircuit_id: z71.string().optional()
1565
1582
  }).describe(
1566
1583
  "Defines an error when a source trace has no corresponding PCB trace"
1567
1584
  );
1568
1585
  expectTypesMatch(true);
1569
1586
 
1570
1587
  // src/pcb/pcb_port_not_matched_error.ts
1571
- import { z as z71 } from "zod";
1572
- var pcb_port_not_matched_error = z71.object({
1573
- type: z71.literal("pcb_port_not_matched_error"),
1588
+ import { z as z72 } from "zod";
1589
+ var pcb_port_not_matched_error = z72.object({
1590
+ type: z72.literal("pcb_port_not_matched_error"),
1574
1591
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
1575
- error_type: z71.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
1576
- message: z71.string(),
1577
- pcb_component_ids: z71.array(z71.string()),
1578
- subcircuit_id: z71.string().optional()
1592
+ error_type: z72.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
1593
+ message: z72.string(),
1594
+ pcb_component_ids: z72.array(z72.string()),
1595
+ subcircuit_id: z72.string().optional()
1579
1596
  }).describe("Defines a trace error on the PCB where a port is not matched");
1580
1597
  expectTypesMatch(true);
1581
1598
 
1582
1599
  // src/pcb/pcb_port_not_connected_error.ts
1583
- import { z as z72 } from "zod";
1584
- var pcb_port_not_connected_error = z72.object({
1585
- type: z72.literal("pcb_port_not_connected_error"),
1600
+ import { z as z73 } from "zod";
1601
+ var pcb_port_not_connected_error = z73.object({
1602
+ type: z73.literal("pcb_port_not_connected_error"),
1586
1603
  pcb_port_not_connected_error_id: getZodPrefixedIdWithDefault(
1587
1604
  "pcb_port_not_connected_error"
1588
1605
  ),
1589
- error_type: z72.literal("pcb_port_not_connected_error").default("pcb_port_not_connected_error"),
1590
- message: z72.string(),
1591
- pcb_port_ids: z72.array(z72.string()),
1592
- pcb_component_ids: z72.array(z72.string()),
1593
- subcircuit_id: z72.string().optional()
1606
+ error_type: z73.literal("pcb_port_not_connected_error").default("pcb_port_not_connected_error"),
1607
+ message: z73.string(),
1608
+ pcb_port_ids: z73.array(z73.string()),
1609
+ pcb_component_ids: z73.array(z73.string()),
1610
+ subcircuit_id: z73.string().optional()
1594
1611
  }).describe("Defines an error when a pcb port is not connected to any trace");
1595
1612
  expectTypesMatch(
1596
1613
  true
1597
1614
  );
1598
1615
 
1599
1616
  // src/pcb/pcb_via.ts
1600
- import { z as z73 } from "zod";
1601
- var pcb_via = z73.object({
1602
- type: z73.literal("pcb_via"),
1617
+ import { z as z74 } from "zod";
1618
+ var pcb_via = z74.object({
1619
+ type: z74.literal("pcb_via"),
1603
1620
  pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
1604
- pcb_group_id: z73.string().optional(),
1605
- subcircuit_id: z73.string().optional(),
1621
+ pcb_group_id: z74.string().optional(),
1622
+ subcircuit_id: z74.string().optional(),
1606
1623
  x: distance,
1607
1624
  y: distance,
1608
1625
  outer_diameter: distance.default("0.6mm"),
@@ -1611,59 +1628,59 @@ var pcb_via = z73.object({
1611
1628
  from_layer: layer_ref.optional(),
1612
1629
  /** @deprecated */
1613
1630
  to_layer: layer_ref.optional(),
1614
- layers: z73.array(layer_ref),
1615
- pcb_trace_id: z73.string().optional()
1631
+ layers: z74.array(layer_ref),
1632
+ pcb_trace_id: z74.string().optional()
1616
1633
  }).describe("Defines a via on the PCB");
1617
1634
  expectTypesMatch(true);
1618
1635
 
1619
1636
  // src/pcb/pcb_board.ts
1620
- import { z as z74 } from "zod";
1621
- var pcb_board = z74.object({
1622
- type: z74.literal("pcb_board"),
1637
+ import { z as z75 } from "zod";
1638
+ var pcb_board = z75.object({
1639
+ type: z75.literal("pcb_board"),
1623
1640
  pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
1624
- is_subcircuit: z74.boolean().optional(),
1625
- subcircuit_id: z74.string().optional(),
1641
+ is_subcircuit: z75.boolean().optional(),
1642
+ subcircuit_id: z75.string().optional(),
1626
1643
  width: length,
1627
1644
  height: length,
1628
1645
  center: point,
1629
1646
  thickness: length.optional().default(1.4),
1630
- num_layers: z74.number().optional().default(4),
1631
- outline: z74.array(point).optional(),
1632
- material: z74.enum(["fr4", "fr1"]).default("fr4")
1647
+ num_layers: z75.number().optional().default(4),
1648
+ outline: z75.array(point).optional(),
1649
+ material: z75.enum(["fr4", "fr1"]).default("fr4")
1633
1650
  }).describe("Defines the board outline of the PCB");
1634
1651
  expectTypesMatch(true);
1635
1652
 
1636
1653
  // src/pcb/pcb_placement_error.ts
1637
- import { z as z75 } from "zod";
1638
- var pcb_placement_error = z75.object({
1639
- type: z75.literal("pcb_placement_error"),
1654
+ import { z as z76 } from "zod";
1655
+ var pcb_placement_error = z76.object({
1656
+ type: z76.literal("pcb_placement_error"),
1640
1657
  pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
1641
- error_type: z75.literal("pcb_placement_error").default("pcb_placement_error"),
1642
- message: z75.string(),
1643
- subcircuit_id: z75.string().optional()
1658
+ error_type: z76.literal("pcb_placement_error").default("pcb_placement_error"),
1659
+ message: z76.string(),
1660
+ subcircuit_id: z76.string().optional()
1644
1661
  }).describe("Defines a placement error on the PCB");
1645
1662
  expectTypesMatch(true);
1646
1663
 
1647
1664
  // src/pcb/pcb_trace_hint.ts
1648
- import { z as z76 } from "zod";
1649
- var pcb_trace_hint = z76.object({
1650
- type: z76.literal("pcb_trace_hint"),
1665
+ import { z as z77 } from "zod";
1666
+ var pcb_trace_hint = z77.object({
1667
+ type: z77.literal("pcb_trace_hint"),
1651
1668
  pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
1652
- pcb_port_id: z76.string(),
1653
- pcb_component_id: z76.string(),
1654
- route: z76.array(route_hint_point),
1655
- subcircuit_id: z76.string().optional()
1669
+ pcb_port_id: z77.string(),
1670
+ pcb_component_id: z77.string(),
1671
+ route: z77.array(route_hint_point),
1672
+ subcircuit_id: z77.string().optional()
1656
1673
  }).describe("A hint that can be used during generation of a PCB trace");
1657
1674
  expectTypesMatch(true);
1658
1675
 
1659
1676
  // src/pcb/pcb_silkscreen_line.ts
1660
- import { z as z77 } from "zod";
1661
- var pcb_silkscreen_line = z77.object({
1662
- type: z77.literal("pcb_silkscreen_line"),
1677
+ import { z as z78 } from "zod";
1678
+ var pcb_silkscreen_line = z78.object({
1679
+ type: z78.literal("pcb_silkscreen_line"),
1663
1680
  pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
1664
- pcb_component_id: z77.string(),
1665
- pcb_group_id: z77.string().optional(),
1666
- subcircuit_id: z77.string().optional(),
1681
+ pcb_component_id: z78.string(),
1682
+ pcb_group_id: z78.string().optional(),
1683
+ subcircuit_id: z78.string().optional(),
1667
1684
  stroke_width: distance.default("0.1mm"),
1668
1685
  x1: distance,
1669
1686
  y1: distance,
@@ -1674,67 +1691,67 @@ var pcb_silkscreen_line = z77.object({
1674
1691
  expectTypesMatch(true);
1675
1692
 
1676
1693
  // src/pcb/pcb_silkscreen_path.ts
1677
- import { z as z78 } from "zod";
1678
- var pcb_silkscreen_path = z78.object({
1679
- type: z78.literal("pcb_silkscreen_path"),
1694
+ import { z as z79 } from "zod";
1695
+ var pcb_silkscreen_path = z79.object({
1696
+ type: z79.literal("pcb_silkscreen_path"),
1680
1697
  pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
1681
- pcb_component_id: z78.string(),
1682
- pcb_group_id: z78.string().optional(),
1683
- subcircuit_id: z78.string().optional(),
1698
+ pcb_component_id: z79.string(),
1699
+ pcb_group_id: z79.string().optional(),
1700
+ subcircuit_id: z79.string().optional(),
1684
1701
  layer: visible_layer,
1685
- route: z78.array(point),
1702
+ route: z79.array(point),
1686
1703
  stroke_width: length
1687
1704
  }).describe("Defines a silkscreen path on the PCB");
1688
1705
  expectTypesMatch(true);
1689
1706
 
1690
1707
  // src/pcb/pcb_silkscreen_text.ts
1691
- import { z as z79 } from "zod";
1692
- var pcb_silkscreen_text = z79.object({
1693
- type: z79.literal("pcb_silkscreen_text"),
1708
+ import { z as z80 } from "zod";
1709
+ var pcb_silkscreen_text = z80.object({
1710
+ type: z80.literal("pcb_silkscreen_text"),
1694
1711
  pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
1695
- pcb_group_id: z79.string().optional(),
1696
- subcircuit_id: z79.string().optional(),
1697
- font: z79.literal("tscircuit2024").default("tscircuit2024"),
1712
+ pcb_group_id: z80.string().optional(),
1713
+ subcircuit_id: z80.string().optional(),
1714
+ font: z80.literal("tscircuit2024").default("tscircuit2024"),
1698
1715
  font_size: distance.default("0.2mm"),
1699
- pcb_component_id: z79.string(),
1700
- text: z79.string(),
1701
- ccw_rotation: z79.number().optional(),
1716
+ pcb_component_id: z80.string(),
1717
+ text: z80.string(),
1718
+ ccw_rotation: z80.number().optional(),
1702
1719
  layer: layer_ref,
1703
- is_mirrored: z79.boolean().default(false).optional(),
1720
+ is_mirrored: z80.boolean().default(false).optional(),
1704
1721
  anchor_position: point.default({ x: 0, y: 0 }),
1705
1722
  anchor_alignment: ninePointAnchor.default("center")
1706
1723
  }).describe("Defines silkscreen text on the PCB");
1707
1724
  expectTypesMatch(true);
1708
1725
 
1709
1726
  // src/pcb/pcb_silkscreen_rect.ts
1710
- import { z as z80 } from "zod";
1711
- var pcb_silkscreen_rect = z80.object({
1712
- type: z80.literal("pcb_silkscreen_rect"),
1727
+ import { z as z81 } from "zod";
1728
+ var pcb_silkscreen_rect = z81.object({
1729
+ type: z81.literal("pcb_silkscreen_rect"),
1713
1730
  pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
1714
- pcb_component_id: z80.string(),
1715
- pcb_group_id: z80.string().optional(),
1716
- subcircuit_id: z80.string().optional(),
1731
+ pcb_component_id: z81.string(),
1732
+ pcb_group_id: z81.string().optional(),
1733
+ subcircuit_id: z81.string().optional(),
1717
1734
  center: point,
1718
1735
  width: length,
1719
1736
  height: length,
1720
1737
  layer: layer_ref,
1721
1738
  stroke_width: length.default("1mm"),
1722
- is_filled: z80.boolean().default(true).optional(),
1723
- has_stroke: z80.boolean().optional(),
1724
- is_stroke_dashed: z80.boolean().optional()
1739
+ is_filled: z81.boolean().default(true).optional(),
1740
+ has_stroke: z81.boolean().optional(),
1741
+ is_stroke_dashed: z81.boolean().optional()
1725
1742
  }).describe("Defines a silkscreen rect on the PCB");
1726
1743
  expectTypesMatch(true);
1727
1744
 
1728
1745
  // src/pcb/pcb_silkscreen_circle.ts
1729
- import { z as z81 } from "zod";
1730
- var pcb_silkscreen_circle = z81.object({
1731
- type: z81.literal("pcb_silkscreen_circle"),
1746
+ import { z as z82 } from "zod";
1747
+ var pcb_silkscreen_circle = z82.object({
1748
+ type: z82.literal("pcb_silkscreen_circle"),
1732
1749
  pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
1733
1750
  "pcb_silkscreen_circle"
1734
1751
  ),
1735
- pcb_component_id: z81.string(),
1736
- pcb_group_id: z81.string().optional(),
1737
- subcircuit_id: z81.string().optional(),
1752
+ pcb_component_id: z82.string(),
1753
+ pcb_group_id: z82.string().optional(),
1754
+ subcircuit_id: z82.string().optional(),
1738
1755
  center: point,
1739
1756
  radius: length,
1740
1757
  layer: visible_layer,
@@ -1743,13 +1760,13 @@ var pcb_silkscreen_circle = z81.object({
1743
1760
  expectTypesMatch(true);
1744
1761
 
1745
1762
  // src/pcb/pcb_silkscreen_oval.ts
1746
- import { z as z82 } from "zod";
1747
- var pcb_silkscreen_oval = z82.object({
1748
- type: z82.literal("pcb_silkscreen_oval"),
1763
+ import { z as z83 } from "zod";
1764
+ var pcb_silkscreen_oval = z83.object({
1765
+ type: z83.literal("pcb_silkscreen_oval"),
1749
1766
  pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
1750
- pcb_component_id: z82.string(),
1751
- pcb_group_id: z82.string().optional(),
1752
- subcircuit_id: z82.string().optional(),
1767
+ pcb_component_id: z83.string(),
1768
+ pcb_group_id: z83.string().optional(),
1769
+ subcircuit_id: z83.string().optional(),
1753
1770
  center: point,
1754
1771
  radius_x: distance,
1755
1772
  radius_y: distance,
@@ -1758,103 +1775,103 @@ var pcb_silkscreen_oval = z82.object({
1758
1775
  expectTypesMatch(true);
1759
1776
 
1760
1777
  // src/pcb/pcb_fabrication_note_text.ts
1761
- import { z as z83 } from "zod";
1762
- var pcb_fabrication_note_text = z83.object({
1763
- type: z83.literal("pcb_fabrication_note_text"),
1778
+ import { z as z84 } from "zod";
1779
+ var pcb_fabrication_note_text = z84.object({
1780
+ type: z84.literal("pcb_fabrication_note_text"),
1764
1781
  pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
1765
1782
  "pcb_fabrication_note_text"
1766
1783
  ),
1767
- subcircuit_id: z83.string().optional(),
1768
- pcb_group_id: z83.string().optional(),
1769
- font: z83.literal("tscircuit2024").default("tscircuit2024"),
1784
+ subcircuit_id: z84.string().optional(),
1785
+ pcb_group_id: z84.string().optional(),
1786
+ font: z84.literal("tscircuit2024").default("tscircuit2024"),
1770
1787
  font_size: distance.default("1mm"),
1771
- pcb_component_id: z83.string(),
1772
- text: z83.string(),
1788
+ pcb_component_id: z84.string(),
1789
+ text: z84.string(),
1773
1790
  layer: visible_layer,
1774
1791
  anchor_position: point.default({ x: 0, y: 0 }),
1775
- anchor_alignment: z83.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
1776
- color: z83.string().optional()
1792
+ anchor_alignment: z84.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
1793
+ color: z84.string().optional()
1777
1794
  }).describe(
1778
1795
  "Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
1779
1796
  );
1780
1797
  expectTypesMatch(true);
1781
1798
 
1782
1799
  // src/pcb/pcb_fabrication_note_path.ts
1783
- import { z as z84 } from "zod";
1784
- var pcb_fabrication_note_path = z84.object({
1785
- type: z84.literal("pcb_fabrication_note_path"),
1800
+ import { z as z85 } from "zod";
1801
+ var pcb_fabrication_note_path = z85.object({
1802
+ type: z85.literal("pcb_fabrication_note_path"),
1786
1803
  pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
1787
1804
  "pcb_fabrication_note_path"
1788
1805
  ),
1789
- pcb_component_id: z84.string(),
1790
- subcircuit_id: z84.string().optional(),
1806
+ pcb_component_id: z85.string(),
1807
+ subcircuit_id: z85.string().optional(),
1791
1808
  layer: layer_ref,
1792
- route: z84.array(point),
1809
+ route: z85.array(point),
1793
1810
  stroke_width: length,
1794
- color: z84.string().optional()
1811
+ color: z85.string().optional()
1795
1812
  }).describe(
1796
1813
  "Defines a fabrication path on the PCB for fabricators or assemblers"
1797
1814
  );
1798
1815
  expectTypesMatch(true);
1799
1816
 
1800
1817
  // src/pcb/pcb_footprint_overlap_error.ts
1801
- import { z as z85 } from "zod";
1802
- var pcb_footprint_overlap_error = z85.object({
1803
- type: z85.literal("pcb_footprint_overlap_error"),
1818
+ import { z as z86 } from "zod";
1819
+ var pcb_footprint_overlap_error = z86.object({
1820
+ type: z86.literal("pcb_footprint_overlap_error"),
1804
1821
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
1805
- error_type: z85.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
1806
- message: z85.string(),
1807
- pcb_smtpad_ids: z85.array(z85.string()).optional(),
1808
- pcb_plated_hole_ids: z85.array(z85.string()).optional(),
1809
- pcb_hole_ids: z85.array(z85.string()).optional(),
1810
- pcb_keepout_ids: z85.array(z85.string()).optional()
1822
+ error_type: z86.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
1823
+ message: z86.string(),
1824
+ pcb_smtpad_ids: z86.array(z86.string()).optional(),
1825
+ pcb_plated_hole_ids: z86.array(z86.string()).optional(),
1826
+ pcb_hole_ids: z86.array(z86.string()).optional(),
1827
+ pcb_keepout_ids: z86.array(z86.string()).optional()
1811
1828
  }).describe("Error emitted when a pcb footprint overlaps with another element");
1812
1829
  expectTypesMatch(
1813
1830
  true
1814
1831
  );
1815
1832
 
1816
1833
  // src/pcb/pcb_keepout.ts
1817
- import { z as z86 } from "zod";
1818
- var pcb_keepout = z86.object({
1819
- type: z86.literal("pcb_keepout"),
1820
- shape: z86.literal("rect"),
1821
- pcb_group_id: z86.string().optional(),
1822
- subcircuit_id: z86.string().optional(),
1834
+ import { z as z87 } from "zod";
1835
+ var pcb_keepout = z87.object({
1836
+ type: z87.literal("pcb_keepout"),
1837
+ shape: z87.literal("rect"),
1838
+ pcb_group_id: z87.string().optional(),
1839
+ subcircuit_id: z87.string().optional(),
1823
1840
  center: point,
1824
1841
  width: distance,
1825
1842
  height: distance,
1826
- pcb_keepout_id: z86.string(),
1827
- layers: z86.array(z86.string()),
1843
+ pcb_keepout_id: z87.string(),
1844
+ layers: z87.array(z87.string()),
1828
1845
  // Specify layers where the keepout applies
1829
- description: z86.string().optional()
1846
+ description: z87.string().optional()
1830
1847
  // Optional description of the keepout
1831
1848
  }).or(
1832
- z86.object({
1833
- type: z86.literal("pcb_keepout"),
1834
- shape: z86.literal("circle"),
1835
- pcb_group_id: z86.string().optional(),
1836
- subcircuit_id: z86.string().optional(),
1849
+ z87.object({
1850
+ type: z87.literal("pcb_keepout"),
1851
+ shape: z87.literal("circle"),
1852
+ pcb_group_id: z87.string().optional(),
1853
+ subcircuit_id: z87.string().optional(),
1837
1854
  center: point,
1838
1855
  radius: distance,
1839
- pcb_keepout_id: z86.string(),
1840
- layers: z86.array(z86.string()),
1856
+ pcb_keepout_id: z87.string(),
1857
+ layers: z87.array(z87.string()),
1841
1858
  // Specify layers where the keepout applies
1842
- description: z86.string().optional()
1859
+ description: z87.string().optional()
1843
1860
  // Optional description of the keepout
1844
1861
  })
1845
1862
  );
1846
1863
  expectTypesMatch(true);
1847
1864
 
1848
1865
  // src/pcb/pcb_cutout.ts
1849
- import { z as z87 } from "zod";
1850
- var pcb_cutout_base = z87.object({
1851
- type: z87.literal("pcb_cutout"),
1866
+ import { z as z88 } from "zod";
1867
+ var pcb_cutout_base = z88.object({
1868
+ type: z88.literal("pcb_cutout"),
1852
1869
  pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
1853
- pcb_group_id: z87.string().optional(),
1854
- subcircuit_id: z87.string().optional()
1870
+ pcb_group_id: z88.string().optional(),
1871
+ subcircuit_id: z88.string().optional()
1855
1872
  });
1856
1873
  var pcb_cutout_rect = pcb_cutout_base.extend({
1857
- shape: z87.literal("rect"),
1874
+ shape: z88.literal("rect"),
1858
1875
  center: point,
1859
1876
  width: length,
1860
1877
  height: length,
@@ -1862,17 +1879,17 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
1862
1879
  });
1863
1880
  expectTypesMatch(true);
1864
1881
  var pcb_cutout_circle = pcb_cutout_base.extend({
1865
- shape: z87.literal("circle"),
1882
+ shape: z88.literal("circle"),
1866
1883
  center: point,
1867
1884
  radius: length
1868
1885
  });
1869
1886
  expectTypesMatch(true);
1870
1887
  var pcb_cutout_polygon = pcb_cutout_base.extend({
1871
- shape: z87.literal("polygon"),
1872
- points: z87.array(point)
1888
+ shape: z88.literal("polygon"),
1889
+ points: z88.array(point)
1873
1890
  });
1874
1891
  expectTypesMatch(true);
1875
- var pcb_cutout = z87.discriminatedUnion("shape", [
1892
+ var pcb_cutout = z88.discriminatedUnion("shape", [
1876
1893
  pcb_cutout_rect,
1877
1894
  pcb_cutout_circle,
1878
1895
  pcb_cutout_polygon
@@ -1880,83 +1897,83 @@ var pcb_cutout = z87.discriminatedUnion("shape", [
1880
1897
  expectTypesMatch(true);
1881
1898
 
1882
1899
  // src/pcb/pcb_missing_footprint_error.ts
1883
- import { z as z88 } from "zod";
1884
- var pcb_missing_footprint_error = z88.object({
1885
- type: z88.literal("pcb_missing_footprint_error"),
1900
+ import { z as z89 } from "zod";
1901
+ var pcb_missing_footprint_error = z89.object({
1902
+ type: z89.literal("pcb_missing_footprint_error"),
1886
1903
  pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
1887
1904
  "pcb_missing_footprint_error"
1888
1905
  ),
1889
- pcb_group_id: z88.string().optional(),
1890
- subcircuit_id: z88.string().optional(),
1891
- error_type: z88.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
1892
- source_component_id: z88.string(),
1893
- message: z88.string()
1906
+ pcb_group_id: z89.string().optional(),
1907
+ subcircuit_id: z89.string().optional(),
1908
+ error_type: z89.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
1909
+ source_component_id: z89.string(),
1910
+ message: z89.string()
1894
1911
  }).describe("Defines a missing footprint error on the PCB");
1895
1912
  expectTypesMatch(
1896
1913
  true
1897
1914
  );
1898
1915
 
1899
1916
  // src/pcb/pcb_group.ts
1900
- import { z as z89 } from "zod";
1901
- var pcb_group = z89.object({
1902
- type: z89.literal("pcb_group"),
1917
+ import { z as z90 } from "zod";
1918
+ var pcb_group = z90.object({
1919
+ type: z90.literal("pcb_group"),
1903
1920
  pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
1904
- source_group_id: z89.string(),
1905
- is_subcircuit: z89.boolean().optional(),
1906
- subcircuit_id: z89.string().optional(),
1921
+ source_group_id: z90.string(),
1922
+ is_subcircuit: z90.boolean().optional(),
1923
+ subcircuit_id: z90.string().optional(),
1907
1924
  width: length,
1908
1925
  height: length,
1909
1926
  center: point,
1910
- pcb_component_ids: z89.array(z89.string()),
1911
- name: z89.string().optional(),
1912
- description: z89.string().optional(),
1913
- layout_mode: z89.string().optional(),
1914
- autorouter_configuration: z89.object({
1927
+ pcb_component_ids: z90.array(z90.string()),
1928
+ name: z90.string().optional(),
1929
+ description: z90.string().optional(),
1930
+ layout_mode: z90.string().optional(),
1931
+ autorouter_configuration: z90.object({
1915
1932
  trace_clearance: length
1916
1933
  }).optional(),
1917
- autorouter_used_string: z89.string().optional()
1934
+ autorouter_used_string: z90.string().optional()
1918
1935
  }).describe("Defines a group of components on the PCB");
1919
1936
  expectTypesMatch(true);
1920
1937
 
1921
1938
  // src/pcb/pcb_autorouting_error.ts
1922
- import { z as z90 } from "zod";
1923
- var pcb_autorouting_error = z90.object({
1924
- type: z90.literal("pcb_autorouting_error"),
1939
+ import { z as z91 } from "zod";
1940
+ var pcb_autorouting_error = z91.object({
1941
+ type: z91.literal("pcb_autorouting_error"),
1925
1942
  pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
1926
- error_type: z90.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
1927
- message: z90.string(),
1928
- subcircuit_id: z90.string().optional()
1943
+ error_type: z91.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
1944
+ message: z91.string(),
1945
+ subcircuit_id: z91.string().optional()
1929
1946
  }).describe("The autorouting has failed to route a portion of the board");
1930
1947
  expectTypesMatch(true);
1931
1948
 
1932
1949
  // src/pcb/pcb_manual_edit_conflict_warning.ts
1933
- import { z as z91 } from "zod";
1934
- var pcb_manual_edit_conflict_warning = z91.object({
1935
- type: z91.literal("pcb_manual_edit_conflict_warning"),
1950
+ import { z as z92 } from "zod";
1951
+ var pcb_manual_edit_conflict_warning = z92.object({
1952
+ type: z92.literal("pcb_manual_edit_conflict_warning"),
1936
1953
  pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
1937
1954
  "pcb_manual_edit_conflict_warning"
1938
1955
  ),
1939
- warning_type: z91.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
1940
- message: z91.string(),
1941
- pcb_component_id: z91.string(),
1942
- pcb_group_id: z91.string().optional(),
1943
- subcircuit_id: z91.string().optional(),
1944
- source_component_id: z91.string()
1956
+ warning_type: z92.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
1957
+ message: z92.string(),
1958
+ pcb_component_id: z92.string(),
1959
+ pcb_group_id: z92.string().optional(),
1960
+ subcircuit_id: z92.string().optional(),
1961
+ source_component_id: z92.string()
1945
1962
  }).describe(
1946
1963
  "Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
1947
1964
  );
1948
1965
  expectTypesMatch(true);
1949
1966
 
1950
1967
  // src/pcb/pcb_breakout_point.ts
1951
- import { z as z92 } from "zod";
1952
- var pcb_breakout_point = z92.object({
1953
- type: z92.literal("pcb_breakout_point"),
1968
+ import { z as z93 } from "zod";
1969
+ var pcb_breakout_point = z93.object({
1970
+ type: z93.literal("pcb_breakout_point"),
1954
1971
  pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
1955
- pcb_group_id: z92.string(),
1956
- subcircuit_id: z92.string().optional(),
1957
- source_trace_id: z92.string().optional(),
1958
- source_port_id: z92.string().optional(),
1959
- source_net_id: z92.string().optional(),
1972
+ pcb_group_id: z93.string(),
1973
+ subcircuit_id: z93.string().optional(),
1974
+ source_trace_id: z93.string().optional(),
1975
+ source_port_id: z93.string().optional(),
1976
+ source_net_id: z93.string().optional(),
1960
1977
  x: distance,
1961
1978
  y: distance
1962
1979
  }).describe(
@@ -1965,73 +1982,109 @@ var pcb_breakout_point = z92.object({
1965
1982
  expectTypesMatch(true);
1966
1983
 
1967
1984
  // src/pcb/pcb_ground_plane.ts
1968
- import { z as z93 } from "zod";
1969
- var pcb_ground_plane = z93.object({
1970
- type: z93.literal("pcb_ground_plane"),
1985
+ import { z as z94 } from "zod";
1986
+ var pcb_ground_plane = z94.object({
1987
+ type: z94.literal("pcb_ground_plane"),
1971
1988
  pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
1972
- source_pcb_ground_plane_id: z93.string(),
1973
- source_net_id: z93.string(),
1974
- pcb_group_id: z93.string().optional(),
1975
- subcircuit_id: z93.string().optional()
1989
+ source_pcb_ground_plane_id: z94.string(),
1990
+ source_net_id: z94.string(),
1991
+ pcb_group_id: z94.string().optional(),
1992
+ subcircuit_id: z94.string().optional()
1976
1993
  }).describe("Defines a ground plane on the PCB");
1977
1994
  expectTypesMatch(true);
1978
1995
 
1979
1996
  // src/pcb/pcb_ground_plane_region.ts
1980
- import { z as z94 } from "zod";
1981
- var pcb_ground_plane_region = z94.object({
1982
- type: z94.literal("pcb_ground_plane_region"),
1997
+ import { z as z95 } from "zod";
1998
+ var pcb_ground_plane_region = z95.object({
1999
+ type: z95.literal("pcb_ground_plane_region"),
1983
2000
  pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
1984
2001
  "pcb_ground_plane_region"
1985
2002
  ),
1986
- pcb_ground_plane_id: z94.string(),
1987
- pcb_group_id: z94.string().optional(),
1988
- subcircuit_id: z94.string().optional(),
2003
+ pcb_ground_plane_id: z95.string(),
2004
+ pcb_group_id: z95.string().optional(),
2005
+ subcircuit_id: z95.string().optional(),
1989
2006
  layer: layer_ref,
1990
- points: z94.array(point)
2007
+ points: z95.array(point)
1991
2008
  }).describe("Defines a polygon region of a ground plane");
1992
2009
  expectTypesMatch(true);
1993
2010
 
1994
2011
  // src/pcb/pcb_thermal_spoke.ts
1995
- import { z as z95 } from "zod";
1996
- var pcb_thermal_spoke = z95.object({
1997
- type: z95.literal("pcb_thermal_spoke"),
2012
+ import { z as z96 } from "zod";
2013
+ var pcb_thermal_spoke = z96.object({
2014
+ type: z96.literal("pcb_thermal_spoke"),
1998
2015
  pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
1999
- pcb_ground_plane_id: z95.string(),
2000
- shape: z95.string(),
2001
- spoke_count: z95.number(),
2016
+ pcb_ground_plane_id: z96.string(),
2017
+ shape: z96.string(),
2018
+ spoke_count: z96.number(),
2002
2019
  spoke_thickness: distance,
2003
2020
  spoke_inner_diameter: distance,
2004
2021
  spoke_outer_diameter: distance,
2005
- pcb_plated_hole_id: z95.string().optional(),
2006
- subcircuit_id: z95.string().optional()
2022
+ pcb_plated_hole_id: z96.string().optional(),
2023
+ subcircuit_id: z96.string().optional()
2007
2024
  }).describe("Pattern for connecting a ground plane to a plated hole");
2008
2025
  expectTypesMatch(true);
2009
2026
 
2027
+ // src/pcb/pcb_copper_pour.ts
2028
+ import { z as z97 } from "zod";
2029
+ var pcb_copper_pour_base = z97.object({
2030
+ type: z97.literal("pcb_copper_pour"),
2031
+ pcb_copper_pour_id: getZodPrefixedIdWithDefault("pcb_copper_pour"),
2032
+ pcb_group_id: z97.string().optional(),
2033
+ subcircuit_id: z97.string().optional(),
2034
+ layer: layer_ref,
2035
+ source_net_id: z97.string().optional()
2036
+ });
2037
+ var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
2038
+ shape: z97.literal("rect"),
2039
+ center: point,
2040
+ width: length,
2041
+ height: length,
2042
+ rotation: rotation.optional()
2043
+ });
2044
+ expectTypesMatch(true);
2045
+ var pcb_copper_pour_circle = pcb_copper_pour_base.extend({
2046
+ shape: z97.literal("circle"),
2047
+ center: point,
2048
+ radius: length
2049
+ });
2050
+ expectTypesMatch(true);
2051
+ var pcb_copper_pour_polygon = pcb_copper_pour_base.extend({
2052
+ shape: z97.literal("polygon"),
2053
+ points: z97.array(point)
2054
+ });
2055
+ expectTypesMatch(true);
2056
+ var pcb_copper_pour = z97.discriminatedUnion("shape", [
2057
+ pcb_copper_pour_rect,
2058
+ pcb_copper_pour_circle,
2059
+ pcb_copper_pour_polygon
2060
+ ]).describe("Defines a copper pour on the PCB.");
2061
+ expectTypesMatch(true);
2062
+
2010
2063
  // src/cad/cad_component.ts
2011
- import { z as z96 } from "zod";
2012
- var cad_component = z96.object({
2013
- type: z96.literal("cad_component"),
2014
- cad_component_id: z96.string(),
2015
- pcb_component_id: z96.string(),
2016
- source_component_id: z96.string(),
2064
+ import { z as z98 } from "zod";
2065
+ var cad_component = z98.object({
2066
+ type: z98.literal("cad_component"),
2067
+ cad_component_id: z98.string(),
2068
+ pcb_component_id: z98.string(),
2069
+ source_component_id: z98.string(),
2017
2070
  position: point3,
2018
2071
  rotation: point3.optional(),
2019
2072
  size: point3.optional(),
2020
2073
  layer: layer_ref.optional(),
2021
- subcircuit_id: z96.string().optional(),
2074
+ subcircuit_id: z98.string().optional(),
2022
2075
  // These are all ways to generate/load the 3d model
2023
- footprinter_string: z96.string().optional(),
2024
- model_obj_url: z96.string().optional(),
2025
- model_stl_url: z96.string().optional(),
2026
- model_3mf_url: z96.string().optional(),
2027
- model_jscad: z96.any().optional()
2076
+ footprinter_string: z98.string().optional(),
2077
+ model_obj_url: z98.string().optional(),
2078
+ model_stl_url: z98.string().optional(),
2079
+ model_3mf_url: z98.string().optional(),
2080
+ model_jscad: z98.any().optional()
2028
2081
  }).describe("Defines a component on the PCB");
2029
2082
  expectTypesMatch(true);
2030
2083
 
2031
2084
  // src/simulation/simulation_voltage_source.ts
2032
- import { z as z97 } from "zod";
2033
- var wave_shape = z97.enum(["sinewave", "square", "triangle", "sawtooth"]);
2034
- var percentage = z97.union([z97.string(), z97.number()]).transform((val) => {
2085
+ import { z as z99 } from "zod";
2086
+ var wave_shape = z99.enum(["sinewave", "square", "triangle", "sawtooth"]);
2087
+ var percentage = z99.union([z99.string(), z99.number()]).transform((val) => {
2035
2088
  if (typeof val === "string") {
2036
2089
  if (val.endsWith("%")) {
2037
2090
  return parseFloat(val.slice(0, -1)) / 100;
@@ -2040,30 +2093,30 @@ var percentage = z97.union([z97.string(), z97.number()]).transform((val) => {
2040
2093
  }
2041
2094
  return val;
2042
2095
  }).pipe(
2043
- z97.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
2096
+ z99.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
2044
2097
  );
2045
- var simulation_dc_voltage_source = z97.object({
2046
- type: z97.literal("simulation_voltage_source"),
2098
+ var simulation_dc_voltage_source = z99.object({
2099
+ type: z99.literal("simulation_voltage_source"),
2047
2100
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
2048
2101
  "simulation_voltage_source"
2049
2102
  ),
2050
- is_dc_source: z97.literal(true).optional().default(true),
2051
- positive_source_port_id: z97.string().optional(),
2052
- negative_source_port_id: z97.string().optional(),
2053
- positive_source_net_id: z97.string().optional(),
2054
- negative_source_net_id: z97.string().optional(),
2103
+ is_dc_source: z99.literal(true).optional().default(true),
2104
+ positive_source_port_id: z99.string().optional(),
2105
+ negative_source_port_id: z99.string().optional(),
2106
+ positive_source_net_id: z99.string().optional(),
2107
+ negative_source_net_id: z99.string().optional(),
2055
2108
  voltage
2056
2109
  }).describe("Defines a DC voltage source for simulation");
2057
- var simulation_ac_voltage_source = z97.object({
2058
- type: z97.literal("simulation_voltage_source"),
2110
+ var simulation_ac_voltage_source = z99.object({
2111
+ type: z99.literal("simulation_voltage_source"),
2059
2112
  simulation_voltage_source_id: getZodPrefixedIdWithDefault(
2060
2113
  "simulation_voltage_source"
2061
2114
  ),
2062
- is_dc_source: z97.literal(false),
2063
- terminal1_source_port_id: z97.string().optional(),
2064
- terminal2_source_port_id: z97.string().optional(),
2065
- terminal1_source_net_id: z97.string().optional(),
2066
- terminal2_source_net_id: z97.string().optional(),
2115
+ is_dc_source: z99.literal(false),
2116
+ terminal1_source_port_id: z99.string().optional(),
2117
+ terminal2_source_port_id: z99.string().optional(),
2118
+ terminal1_source_net_id: z99.string().optional(),
2119
+ terminal2_source_net_id: z99.string().optional(),
2067
2120
  voltage: voltage.optional(),
2068
2121
  frequency: frequency.optional(),
2069
2122
  peak_to_peak_voltage: voltage.optional(),
@@ -2071,14 +2124,14 @@ var simulation_ac_voltage_source = z97.object({
2071
2124
  phase: rotation.optional(),
2072
2125
  duty_cycle: percentage.optional()
2073
2126
  }).describe("Defines an AC voltage source for simulation");
2074
- var simulation_voltage_source = z97.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
2127
+ var simulation_voltage_source = z99.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
2075
2128
  expectTypesMatch(true);
2076
2129
  expectTypesMatch(true);
2077
2130
  expectTypesMatch(true);
2078
2131
 
2079
2132
  // src/any_circuit_element.ts
2080
- import { z as z98 } from "zod";
2081
- var any_circuit_element = z98.union([
2133
+ import { z as z100 } from "zod";
2134
+ var any_circuit_element = z100.union([
2082
2135
  source_trace,
2083
2136
  source_port,
2084
2137
  any_source_component,
@@ -2102,6 +2155,7 @@ var any_circuit_element = z98.union([
2102
2155
  source_simple_potentiometer,
2103
2156
  source_simple_push_button,
2104
2157
  source_pcb_ground_plane,
2158
+ source_manually_placed_via,
2105
2159
  source_project_metadata,
2106
2160
  source_trace_not_connected_error,
2107
2161
  source_pin_missing_trace_warning,
@@ -2140,6 +2194,7 @@ var any_circuit_element = z98.union([
2140
2194
  pcb_ground_plane,
2141
2195
  pcb_ground_plane_region,
2142
2196
  pcb_thermal_spoke,
2197
+ pcb_copper_pour,
2143
2198
  schematic_box,
2144
2199
  schematic_text,
2145
2200
  schematic_line,
@@ -2183,6 +2238,10 @@ export {
2183
2238
  pcb_board,
2184
2239
  pcb_breakout_point,
2185
2240
  pcb_component,
2241
+ pcb_copper_pour,
2242
+ pcb_copper_pour_circle,
2243
+ pcb_copper_pour_polygon,
2244
+ pcb_copper_pour_rect,
2186
2245
  pcb_cutout,
2187
2246
  pcb_cutout_circle,
2188
2247
  pcb_cutout_polygon,
@@ -2263,6 +2322,7 @@ export {
2263
2322
  source_component_base,
2264
2323
  source_failed_to_create_component_error,
2265
2324
  source_group,
2325
+ source_manually_placed_via,
2266
2326
  source_missing_property_error,
2267
2327
  source_net,
2268
2328
  source_pcb_ground_plane,