circuit-json 0.0.309 → 0.0.311
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/README.md +17 -4
- package/dist/index.d.mts +195 -48
- package/dist/index.mjs +1119 -1109
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -410,7 +410,7 @@ var source_simple_power_source = source_component_base.extend({
|
|
|
410
410
|
expectTypesMatch(true);
|
|
411
411
|
|
|
412
412
|
// src/source/any_source_component.ts
|
|
413
|
-
import { z as
|
|
413
|
+
import { z as z36 } from "zod";
|
|
414
414
|
|
|
415
415
|
// src/source/source_simple_fuse.ts
|
|
416
416
|
import { z as z16 } from "zod";
|
|
@@ -625,8 +625,17 @@ var source_pin_missing_trace_warning = z34.object({
|
|
|
625
625
|
);
|
|
626
626
|
expectTypesMatch(true);
|
|
627
627
|
|
|
628
|
+
// src/source/source_simple_voltage_probe.ts
|
|
629
|
+
import { z as z35 } from "zod";
|
|
630
|
+
var source_simple_voltage_probe = source_component_base.extend({
|
|
631
|
+
ftype: z35.literal("simple_voltage_probe")
|
|
632
|
+
});
|
|
633
|
+
expectTypesMatch(
|
|
634
|
+
true
|
|
635
|
+
);
|
|
636
|
+
|
|
628
637
|
// src/source/any_source_component.ts
|
|
629
|
-
var any_source_component =
|
|
638
|
+
var any_source_component = z36.union([
|
|
630
639
|
source_simple_resistor,
|
|
631
640
|
source_simple_capacitor,
|
|
632
641
|
source_simple_diode,
|
|
@@ -647,6 +656,7 @@ var any_source_component = z35.union([
|
|
|
647
656
|
source_simple_test_point,
|
|
648
657
|
source_simple_mosfet,
|
|
649
658
|
source_simple_fuse,
|
|
659
|
+
source_simple_voltage_probe,
|
|
650
660
|
source_project_metadata,
|
|
651
661
|
source_missing_property_error,
|
|
652
662
|
source_failed_to_create_component_error,
|
|
@@ -657,94 +667,94 @@ var any_source_component = z35.union([
|
|
|
657
667
|
expectTypesMatch(true);
|
|
658
668
|
|
|
659
669
|
// src/source/source_port.ts
|
|
660
|
-
import { z as z36 } from "zod";
|
|
661
|
-
var source_port = z36.object({
|
|
662
|
-
type: z36.literal("source_port"),
|
|
663
|
-
pin_number: z36.number().optional(),
|
|
664
|
-
port_hints: z36.array(z36.string()).optional(),
|
|
665
|
-
name: z36.string(),
|
|
666
|
-
source_port_id: z36.string(),
|
|
667
|
-
source_component_id: z36.string().optional(),
|
|
668
|
-
source_group_id: z36.string().optional(),
|
|
669
|
-
subcircuit_id: z36.string().optional(),
|
|
670
|
-
subcircuit_connectivity_map_key: z36.string().optional()
|
|
671
|
-
});
|
|
672
|
-
expectTypesMatch(true);
|
|
673
|
-
|
|
674
|
-
// src/source/source_trace.ts
|
|
675
670
|
import { z as z37 } from "zod";
|
|
676
|
-
var
|
|
677
|
-
type: z37.literal("
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
671
|
+
var source_port = z37.object({
|
|
672
|
+
type: z37.literal("source_port"),
|
|
673
|
+
pin_number: z37.number().optional(),
|
|
674
|
+
port_hints: z37.array(z37.string()).optional(),
|
|
675
|
+
name: z37.string(),
|
|
676
|
+
source_port_id: z37.string(),
|
|
677
|
+
source_component_id: z37.string().optional(),
|
|
678
|
+
source_group_id: z37.string().optional(),
|
|
681
679
|
subcircuit_id: z37.string().optional(),
|
|
682
|
-
subcircuit_connectivity_map_key: z37.string().optional()
|
|
683
|
-
max_length: z37.number().optional(),
|
|
684
|
-
min_trace_thickness: z37.number().optional(),
|
|
685
|
-
display_name: z37.string().optional()
|
|
680
|
+
subcircuit_connectivity_map_key: z37.string().optional()
|
|
686
681
|
});
|
|
687
682
|
expectTypesMatch(true);
|
|
688
683
|
|
|
689
|
-
// src/source/
|
|
684
|
+
// src/source/source_trace.ts
|
|
690
685
|
import { z as z38 } from "zod";
|
|
691
|
-
var
|
|
692
|
-
type: z38.literal("
|
|
693
|
-
|
|
686
|
+
var source_trace = z38.object({
|
|
687
|
+
type: z38.literal("source_trace"),
|
|
688
|
+
source_trace_id: z38.string(),
|
|
689
|
+
connected_source_port_ids: z38.array(z38.string()),
|
|
690
|
+
connected_source_net_ids: z38.array(z38.string()),
|
|
694
691
|
subcircuit_id: z38.string().optional(),
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
name: z38.string().optional(),
|
|
700
|
-
was_automatically_named: z38.boolean().optional()
|
|
692
|
+
subcircuit_connectivity_map_key: z38.string().optional(),
|
|
693
|
+
max_length: z38.number().optional(),
|
|
694
|
+
min_trace_thickness: z38.number().optional(),
|
|
695
|
+
display_name: z38.string().optional()
|
|
701
696
|
});
|
|
702
697
|
expectTypesMatch(true);
|
|
703
698
|
|
|
704
|
-
// src/source/
|
|
699
|
+
// src/source/source_group.ts
|
|
705
700
|
import { z as z39 } from "zod";
|
|
706
|
-
var
|
|
707
|
-
type: z39.literal("
|
|
708
|
-
|
|
709
|
-
name: z39.string(),
|
|
710
|
-
member_source_group_ids: z39.array(z39.string()),
|
|
711
|
-
is_power: z39.boolean().optional(),
|
|
712
|
-
is_ground: z39.boolean().optional(),
|
|
713
|
-
is_digital_signal: z39.boolean().optional(),
|
|
714
|
-
is_analog_signal: z39.boolean().optional(),
|
|
715
|
-
is_positive_voltage_source: z39.boolean().optional(),
|
|
716
|
-
trace_width: z39.number().optional(),
|
|
701
|
+
var source_group = z39.object({
|
|
702
|
+
type: z39.literal("source_group"),
|
|
703
|
+
source_group_id: z39.string(),
|
|
717
704
|
subcircuit_id: z39.string().optional(),
|
|
718
|
-
|
|
705
|
+
parent_subcircuit_id: z39.string().optional(),
|
|
706
|
+
parent_source_group_id: z39.string().optional(),
|
|
707
|
+
is_subcircuit: z39.boolean().optional(),
|
|
708
|
+
show_as_schematic_box: z39.boolean().optional(),
|
|
709
|
+
name: z39.string().optional(),
|
|
710
|
+
was_automatically_named: z39.boolean().optional()
|
|
719
711
|
});
|
|
720
712
|
expectTypesMatch(true);
|
|
721
713
|
|
|
722
|
-
// src/source/
|
|
714
|
+
// src/source/source_net.ts
|
|
723
715
|
import { z as z40 } from "zod";
|
|
724
|
-
var
|
|
725
|
-
type: z40.literal("
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
716
|
+
var source_net = z40.object({
|
|
717
|
+
type: z40.literal("source_net"),
|
|
718
|
+
source_net_id: z40.string(),
|
|
719
|
+
name: z40.string(),
|
|
720
|
+
member_source_group_ids: z40.array(z40.string()),
|
|
721
|
+
is_power: z40.boolean().optional(),
|
|
722
|
+
is_ground: z40.boolean().optional(),
|
|
723
|
+
is_digital_signal: z40.boolean().optional(),
|
|
724
|
+
is_analog_signal: z40.boolean().optional(),
|
|
725
|
+
is_positive_voltage_source: z40.boolean().optional(),
|
|
726
|
+
trace_width: z40.number().optional(),
|
|
727
|
+
subcircuit_id: z40.string().optional(),
|
|
728
|
+
subcircuit_connectivity_map_key: z40.string().optional()
|
|
729
|
+
});
|
|
730
730
|
expectTypesMatch(true);
|
|
731
731
|
|
|
732
|
-
// src/source/
|
|
732
|
+
// src/source/source_board.ts
|
|
733
733
|
import { z as z41 } from "zod";
|
|
734
|
-
var
|
|
735
|
-
type: z41.literal("
|
|
736
|
-
|
|
734
|
+
var source_board = z41.object({
|
|
735
|
+
type: z41.literal("source_board"),
|
|
736
|
+
source_board_id: z41.string(),
|
|
737
737
|
source_group_id: z41.string(),
|
|
738
|
-
|
|
739
|
-
|
|
738
|
+
title: z41.string().optional()
|
|
739
|
+
}).describe("Defines a board in the source domain");
|
|
740
|
+
expectTypesMatch(true);
|
|
741
|
+
|
|
742
|
+
// src/source/source_pcb_ground_plane.ts
|
|
743
|
+
import { z as z42 } from "zod";
|
|
744
|
+
var source_pcb_ground_plane = z42.object({
|
|
745
|
+
type: z42.literal("source_pcb_ground_plane"),
|
|
746
|
+
source_pcb_ground_plane_id: z42.string(),
|
|
747
|
+
source_group_id: z42.string(),
|
|
748
|
+
source_net_id: z42.string(),
|
|
749
|
+
subcircuit_id: z42.string().optional()
|
|
740
750
|
}).describe("Defines a ground plane in the source domain");
|
|
741
751
|
expectTypesMatch(true);
|
|
742
752
|
|
|
743
753
|
// src/source/source_manually_placed_via.ts
|
|
744
|
-
import { z as
|
|
754
|
+
import { z as z44 } from "zod";
|
|
745
755
|
|
|
746
756
|
// src/pcb/properties/layer_ref.ts
|
|
747
|
-
import { z as
|
|
757
|
+
import { z as z43 } from "zod";
|
|
748
758
|
var all_layers = [
|
|
749
759
|
"top",
|
|
750
760
|
"bottom",
|
|
@@ -755,9 +765,9 @@ var all_layers = [
|
|
|
755
765
|
"inner5",
|
|
756
766
|
"inner6"
|
|
757
767
|
];
|
|
758
|
-
var layer_string =
|
|
768
|
+
var layer_string = z43.enum(all_layers);
|
|
759
769
|
var layer_ref = layer_string.or(
|
|
760
|
-
|
|
770
|
+
z43.object({
|
|
761
771
|
name: layer_string
|
|
762
772
|
})
|
|
763
773
|
).transform((layer) => {
|
|
@@ -767,236 +777,236 @@ var layer_ref = layer_string.or(
|
|
|
767
777
|
return layer.name;
|
|
768
778
|
});
|
|
769
779
|
expectTypesMatch(true);
|
|
770
|
-
var visible_layer =
|
|
780
|
+
var visible_layer = z43.enum(["top", "bottom"]);
|
|
771
781
|
|
|
772
782
|
// src/source/source_manually_placed_via.ts
|
|
773
|
-
var source_manually_placed_via =
|
|
774
|
-
type:
|
|
775
|
-
source_manually_placed_via_id:
|
|
776
|
-
source_group_id:
|
|
777
|
-
source_net_id:
|
|
778
|
-
subcircuit_id:
|
|
779
|
-
source_trace_id:
|
|
783
|
+
var source_manually_placed_via = z44.object({
|
|
784
|
+
type: z44.literal("source_manually_placed_via"),
|
|
785
|
+
source_manually_placed_via_id: z44.string(),
|
|
786
|
+
source_group_id: z44.string(),
|
|
787
|
+
source_net_id: z44.string(),
|
|
788
|
+
subcircuit_id: z44.string().optional(),
|
|
789
|
+
source_trace_id: z44.string().optional()
|
|
780
790
|
}).describe("Defines a via that is manually placed in the source domain");
|
|
781
791
|
expectTypesMatch(true);
|
|
782
792
|
|
|
783
793
|
// src/source/unknown_error_finding_part.ts
|
|
784
|
-
import { z as
|
|
785
|
-
var unknown_error_finding_part =
|
|
786
|
-
type:
|
|
794
|
+
import { z as z45 } from "zod";
|
|
795
|
+
var unknown_error_finding_part = z45.object({
|
|
796
|
+
type: z45.literal("unknown_error_finding_part"),
|
|
787
797
|
unknown_error_finding_part_id: getZodPrefixedIdWithDefault(
|
|
788
798
|
"unknown_error_finding_part"
|
|
789
799
|
),
|
|
790
|
-
error_type:
|
|
791
|
-
message:
|
|
792
|
-
source_component_id:
|
|
793
|
-
subcircuit_id:
|
|
800
|
+
error_type: z45.literal("unknown_error_finding_part").default("unknown_error_finding_part"),
|
|
801
|
+
message: z45.string(),
|
|
802
|
+
source_component_id: z45.string().optional(),
|
|
803
|
+
subcircuit_id: z45.string().optional()
|
|
794
804
|
}).describe(
|
|
795
805
|
"Error emitted when an unexpected error occurs while finding a part"
|
|
796
806
|
);
|
|
797
807
|
expectTypesMatch(true);
|
|
798
808
|
|
|
799
809
|
// src/schematic/schematic_box.ts
|
|
800
|
-
import { z as
|
|
801
|
-
var schematic_box =
|
|
802
|
-
type:
|
|
803
|
-
schematic_component_id:
|
|
810
|
+
import { z as z46 } from "zod";
|
|
811
|
+
var schematic_box = z46.object({
|
|
812
|
+
type: z46.literal("schematic_box"),
|
|
813
|
+
schematic_component_id: z46.string().optional(),
|
|
804
814
|
width: distance,
|
|
805
815
|
height: distance,
|
|
806
|
-
is_dashed:
|
|
816
|
+
is_dashed: z46.boolean().default(false),
|
|
807
817
|
x: distance,
|
|
808
818
|
y: distance,
|
|
809
|
-
subcircuit_id:
|
|
819
|
+
subcircuit_id: z46.string().optional()
|
|
810
820
|
}).describe("Draws a box on the schematic");
|
|
811
821
|
expectTypesMatch(true);
|
|
812
822
|
|
|
813
823
|
// src/schematic/schematic_path.ts
|
|
814
|
-
import { z as
|
|
815
|
-
var schematic_path =
|
|
816
|
-
type:
|
|
817
|
-
schematic_component_id:
|
|
818
|
-
fill_color:
|
|
819
|
-
is_filled:
|
|
820
|
-
points:
|
|
821
|
-
subcircuit_id:
|
|
824
|
+
import { z as z47 } from "zod";
|
|
825
|
+
var schematic_path = z47.object({
|
|
826
|
+
type: z47.literal("schematic_path"),
|
|
827
|
+
schematic_component_id: z47.string(),
|
|
828
|
+
fill_color: z47.enum(["red", "blue"]).optional(),
|
|
829
|
+
is_filled: z47.boolean().optional(),
|
|
830
|
+
points: z47.array(point),
|
|
831
|
+
subcircuit_id: z47.string().optional()
|
|
822
832
|
});
|
|
823
833
|
expectTypesMatch(true);
|
|
824
834
|
|
|
825
835
|
// src/schematic/schematic_component.ts
|
|
826
|
-
import { z as
|
|
827
|
-
var schematic_pin_styles =
|
|
828
|
-
|
|
836
|
+
import { z as z48 } from "zod";
|
|
837
|
+
var schematic_pin_styles = z48.record(
|
|
838
|
+
z48.object({
|
|
829
839
|
left_margin: length.optional(),
|
|
830
840
|
right_margin: length.optional(),
|
|
831
841
|
top_margin: length.optional(),
|
|
832
842
|
bottom_margin: length.optional()
|
|
833
843
|
})
|
|
834
844
|
);
|
|
835
|
-
var schematic_component_port_arrangement_by_size =
|
|
836
|
-
left_size:
|
|
837
|
-
right_size:
|
|
838
|
-
top_size:
|
|
839
|
-
bottom_size:
|
|
845
|
+
var schematic_component_port_arrangement_by_size = z48.object({
|
|
846
|
+
left_size: z48.number(),
|
|
847
|
+
right_size: z48.number(),
|
|
848
|
+
top_size: z48.number().optional(),
|
|
849
|
+
bottom_size: z48.number().optional()
|
|
840
850
|
});
|
|
841
851
|
expectTypesMatch(true);
|
|
842
|
-
var schematic_component_port_arrangement_by_sides =
|
|
843
|
-
left_side:
|
|
844
|
-
pins:
|
|
852
|
+
var schematic_component_port_arrangement_by_sides = z48.object({
|
|
853
|
+
left_side: z48.object({
|
|
854
|
+
pins: z48.array(z48.number()),
|
|
845
855
|
// @ts-ignore
|
|
846
|
-
direction:
|
|
856
|
+
direction: z48.enum(["top-to-bottom", "bottom-to-top"]).optional()
|
|
847
857
|
}).optional(),
|
|
848
|
-
right_side:
|
|
849
|
-
pins:
|
|
858
|
+
right_side: z48.object({
|
|
859
|
+
pins: z48.array(z48.number()),
|
|
850
860
|
// @ts-ignore
|
|
851
|
-
direction:
|
|
861
|
+
direction: z48.enum(["top-to-bottom", "bottom-to-top"]).optional()
|
|
852
862
|
}).optional(),
|
|
853
|
-
top_side:
|
|
854
|
-
pins:
|
|
863
|
+
top_side: z48.object({
|
|
864
|
+
pins: z48.array(z48.number()),
|
|
855
865
|
// @ts-ignore
|
|
856
|
-
direction:
|
|
866
|
+
direction: z48.enum(["left-to-right", "right-to-left"]).optional()
|
|
857
867
|
}).optional(),
|
|
858
|
-
bottom_side:
|
|
859
|
-
pins:
|
|
868
|
+
bottom_side: z48.object({
|
|
869
|
+
pins: z48.array(z48.number()),
|
|
860
870
|
// @ts-ignore
|
|
861
|
-
direction:
|
|
871
|
+
direction: z48.enum(["left-to-right", "right-to-left"]).optional()
|
|
862
872
|
}).optional()
|
|
863
873
|
});
|
|
864
874
|
expectTypesMatch(true);
|
|
865
|
-
var port_arrangement =
|
|
875
|
+
var port_arrangement = z48.union([
|
|
866
876
|
schematic_component_port_arrangement_by_size,
|
|
867
877
|
schematic_component_port_arrangement_by_sides
|
|
868
878
|
]);
|
|
869
|
-
var schematic_component =
|
|
870
|
-
type:
|
|
879
|
+
var schematic_component = z48.object({
|
|
880
|
+
type: z48.literal("schematic_component"),
|
|
871
881
|
size,
|
|
872
882
|
center: point,
|
|
873
|
-
source_component_id:
|
|
874
|
-
schematic_component_id:
|
|
883
|
+
source_component_id: z48.string().optional(),
|
|
884
|
+
schematic_component_id: z48.string(),
|
|
875
885
|
pin_spacing: length.optional(),
|
|
876
886
|
pin_styles: schematic_pin_styles.optional(),
|
|
877
887
|
box_width: length.optional(),
|
|
878
|
-
symbol_name:
|
|
888
|
+
symbol_name: z48.string().optional(),
|
|
879
889
|
port_arrangement: port_arrangement.optional(),
|
|
880
|
-
port_labels:
|
|
881
|
-
symbol_display_value:
|
|
882
|
-
subcircuit_id:
|
|
883
|
-
schematic_group_id:
|
|
884
|
-
is_schematic_group:
|
|
885
|
-
source_group_id:
|
|
886
|
-
is_box_with_pins:
|
|
890
|
+
port_labels: z48.record(z48.string()).optional(),
|
|
891
|
+
symbol_display_value: z48.string().optional(),
|
|
892
|
+
subcircuit_id: z48.string().optional(),
|
|
893
|
+
schematic_group_id: z48.string().optional(),
|
|
894
|
+
is_schematic_group: z48.boolean().optional(),
|
|
895
|
+
source_group_id: z48.string().optional(),
|
|
896
|
+
is_box_with_pins: z48.boolean().optional().default(true)
|
|
887
897
|
});
|
|
888
898
|
expectTypesMatch(true);
|
|
889
899
|
|
|
890
900
|
// src/schematic/schematic_line.ts
|
|
891
|
-
import { z as
|
|
892
|
-
var schematic_line =
|
|
893
|
-
type:
|
|
901
|
+
import { z as z49 } from "zod";
|
|
902
|
+
var schematic_line = z49.object({
|
|
903
|
+
type: z49.literal("schematic_line"),
|
|
894
904
|
schematic_line_id: getZodPrefixedIdWithDefault("schematic_line"),
|
|
895
|
-
schematic_component_id:
|
|
905
|
+
schematic_component_id: z49.string(),
|
|
896
906
|
x1: distance,
|
|
897
907
|
y1: distance,
|
|
898
908
|
x2: distance,
|
|
899
909
|
y2: distance,
|
|
900
910
|
stroke_width: distance.nullable().optional(),
|
|
901
|
-
color:
|
|
902
|
-
is_dashed:
|
|
903
|
-
subcircuit_id:
|
|
911
|
+
color: z49.string().default("#000000"),
|
|
912
|
+
is_dashed: z49.boolean().default(false),
|
|
913
|
+
subcircuit_id: z49.string().optional()
|
|
904
914
|
}).describe("Draws a styled line on the schematic");
|
|
905
915
|
expectTypesMatch(true);
|
|
906
916
|
|
|
907
917
|
// src/schematic/schematic_rect.ts
|
|
908
|
-
import { z as
|
|
909
|
-
var schematic_rect =
|
|
910
|
-
type:
|
|
918
|
+
import { z as z50 } from "zod";
|
|
919
|
+
var schematic_rect = z50.object({
|
|
920
|
+
type: z50.literal("schematic_rect"),
|
|
911
921
|
schematic_rect_id: getZodPrefixedIdWithDefault("schematic_rect"),
|
|
912
|
-
schematic_component_id:
|
|
922
|
+
schematic_component_id: z50.string(),
|
|
913
923
|
center: point,
|
|
914
924
|
width: distance,
|
|
915
925
|
height: distance,
|
|
916
926
|
rotation: rotation.default(0),
|
|
917
927
|
stroke_width: distance.nullable().optional(),
|
|
918
|
-
color:
|
|
919
|
-
is_filled:
|
|
920
|
-
fill_color:
|
|
921
|
-
is_dashed:
|
|
922
|
-
subcircuit_id:
|
|
928
|
+
color: z50.string().default("#000000"),
|
|
929
|
+
is_filled: z50.boolean().default(false),
|
|
930
|
+
fill_color: z50.string().optional(),
|
|
931
|
+
is_dashed: z50.boolean().default(false),
|
|
932
|
+
subcircuit_id: z50.string().optional()
|
|
923
933
|
}).describe("Draws a styled rectangle on the schematic");
|
|
924
934
|
expectTypesMatch(true);
|
|
925
935
|
|
|
926
936
|
// src/schematic/schematic_circle.ts
|
|
927
|
-
import { z as
|
|
928
|
-
var schematic_circle =
|
|
929
|
-
type:
|
|
937
|
+
import { z as z51 } from "zod";
|
|
938
|
+
var schematic_circle = z51.object({
|
|
939
|
+
type: z51.literal("schematic_circle"),
|
|
930
940
|
schematic_circle_id: getZodPrefixedIdWithDefault("schematic_circle"),
|
|
931
|
-
schematic_component_id:
|
|
941
|
+
schematic_component_id: z51.string(),
|
|
932
942
|
center: point,
|
|
933
943
|
radius: distance,
|
|
934
944
|
stroke_width: distance.nullable().optional(),
|
|
935
|
-
color:
|
|
936
|
-
is_filled:
|
|
937
|
-
fill_color:
|
|
938
|
-
is_dashed:
|
|
939
|
-
subcircuit_id:
|
|
945
|
+
color: z51.string().default("#000000"),
|
|
946
|
+
is_filled: z51.boolean().default(false),
|
|
947
|
+
fill_color: z51.string().optional(),
|
|
948
|
+
is_dashed: z51.boolean().default(false),
|
|
949
|
+
subcircuit_id: z51.string().optional()
|
|
940
950
|
}).describe("Draws a styled circle on the schematic");
|
|
941
951
|
expectTypesMatch(true);
|
|
942
952
|
|
|
943
953
|
// src/schematic/schematic_arc.ts
|
|
944
|
-
import { z as
|
|
945
|
-
var schematic_arc =
|
|
946
|
-
type:
|
|
954
|
+
import { z as z52 } from "zod";
|
|
955
|
+
var schematic_arc = z52.object({
|
|
956
|
+
type: z52.literal("schematic_arc"),
|
|
947
957
|
schematic_arc_id: getZodPrefixedIdWithDefault("schematic_arc"),
|
|
948
|
-
schematic_component_id:
|
|
958
|
+
schematic_component_id: z52.string(),
|
|
949
959
|
center: point,
|
|
950
960
|
radius: distance,
|
|
951
961
|
start_angle_degrees: rotation,
|
|
952
962
|
end_angle_degrees: rotation,
|
|
953
|
-
direction:
|
|
963
|
+
direction: z52.enum(["clockwise", "counterclockwise"]).default("counterclockwise"),
|
|
954
964
|
stroke_width: distance.nullable().optional(),
|
|
955
|
-
color:
|
|
956
|
-
is_dashed:
|
|
957
|
-
subcircuit_id:
|
|
965
|
+
color: z52.string().default("#000000"),
|
|
966
|
+
is_dashed: z52.boolean().default(false),
|
|
967
|
+
subcircuit_id: z52.string().optional()
|
|
958
968
|
}).describe("Draws a styled arc on the schematic");
|
|
959
969
|
expectTypesMatch(true);
|
|
960
970
|
|
|
961
971
|
// src/schematic/schematic_trace.ts
|
|
962
|
-
import { z as
|
|
963
|
-
var schematic_trace =
|
|
964
|
-
type:
|
|
965
|
-
schematic_trace_id:
|
|
966
|
-
source_trace_id:
|
|
967
|
-
junctions:
|
|
968
|
-
|
|
969
|
-
x:
|
|
970
|
-
y:
|
|
972
|
+
import { z as z53 } from "zod";
|
|
973
|
+
var schematic_trace = z53.object({
|
|
974
|
+
type: z53.literal("schematic_trace"),
|
|
975
|
+
schematic_trace_id: z53.string(),
|
|
976
|
+
source_trace_id: z53.string().optional(),
|
|
977
|
+
junctions: z53.array(
|
|
978
|
+
z53.object({
|
|
979
|
+
x: z53.number(),
|
|
980
|
+
y: z53.number()
|
|
971
981
|
})
|
|
972
982
|
),
|
|
973
|
-
edges:
|
|
974
|
-
|
|
975
|
-
from:
|
|
976
|
-
x:
|
|
977
|
-
y:
|
|
983
|
+
edges: z53.array(
|
|
984
|
+
z53.object({
|
|
985
|
+
from: z53.object({
|
|
986
|
+
x: z53.number(),
|
|
987
|
+
y: z53.number()
|
|
978
988
|
}),
|
|
979
|
-
to:
|
|
980
|
-
x:
|
|
981
|
-
y:
|
|
989
|
+
to: z53.object({
|
|
990
|
+
x: z53.number(),
|
|
991
|
+
y: z53.number()
|
|
982
992
|
}),
|
|
983
|
-
is_crossing:
|
|
984
|
-
from_schematic_port_id:
|
|
985
|
-
to_schematic_port_id:
|
|
993
|
+
is_crossing: z53.boolean().optional(),
|
|
994
|
+
from_schematic_port_id: z53.string().optional(),
|
|
995
|
+
to_schematic_port_id: z53.string().optional()
|
|
986
996
|
})
|
|
987
997
|
),
|
|
988
|
-
subcircuit_id:
|
|
998
|
+
subcircuit_id: z53.string().optional(),
|
|
989
999
|
// TODO: make required in a future release
|
|
990
|
-
subcircuit_connectivity_map_key:
|
|
1000
|
+
subcircuit_connectivity_map_key: z53.string().optional()
|
|
991
1001
|
});
|
|
992
1002
|
expectTypesMatch(true);
|
|
993
1003
|
|
|
994
1004
|
// src/schematic/schematic_text.ts
|
|
995
|
-
import { z as
|
|
1005
|
+
import { z as z55 } from "zod";
|
|
996
1006
|
|
|
997
1007
|
// src/common/FivePointAnchor.ts
|
|
998
|
-
import { z as
|
|
999
|
-
var fivePointAnchor =
|
|
1008
|
+
import { z as z54 } from "zod";
|
|
1009
|
+
var fivePointAnchor = z54.enum([
|
|
1000
1010
|
"center",
|
|
1001
1011
|
"left",
|
|
1002
1012
|
"right",
|
|
@@ -1006,111 +1016,111 @@ var fivePointAnchor = z53.enum([
|
|
|
1006
1016
|
expectTypesMatch(true);
|
|
1007
1017
|
|
|
1008
1018
|
// src/schematic/schematic_text.ts
|
|
1009
|
-
var schematic_text =
|
|
1010
|
-
type:
|
|
1011
|
-
schematic_component_id:
|
|
1012
|
-
schematic_text_id:
|
|
1013
|
-
text:
|
|
1014
|
-
font_size:
|
|
1015
|
-
position:
|
|
1019
|
+
var schematic_text = z55.object({
|
|
1020
|
+
type: z55.literal("schematic_text"),
|
|
1021
|
+
schematic_component_id: z55.string().optional(),
|
|
1022
|
+
schematic_text_id: z55.string(),
|
|
1023
|
+
text: z55.string(),
|
|
1024
|
+
font_size: z55.number().default(0.18),
|
|
1025
|
+
position: z55.object({
|
|
1016
1026
|
x: distance,
|
|
1017
1027
|
y: distance
|
|
1018
1028
|
}),
|
|
1019
|
-
rotation:
|
|
1020
|
-
anchor:
|
|
1021
|
-
color:
|
|
1022
|
-
subcircuit_id:
|
|
1029
|
+
rotation: z55.number().default(0),
|
|
1030
|
+
anchor: z55.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
|
|
1031
|
+
color: z55.string().default("#000000"),
|
|
1032
|
+
subcircuit_id: z55.string().optional()
|
|
1023
1033
|
});
|
|
1024
1034
|
expectTypesMatch(true);
|
|
1025
1035
|
|
|
1026
1036
|
// src/schematic/schematic_port.ts
|
|
1027
|
-
import { z as
|
|
1028
|
-
var schematic_port =
|
|
1029
|
-
type:
|
|
1030
|
-
schematic_port_id:
|
|
1031
|
-
source_port_id:
|
|
1032
|
-
schematic_component_id:
|
|
1037
|
+
import { z as z56 } from "zod";
|
|
1038
|
+
var schematic_port = z56.object({
|
|
1039
|
+
type: z56.literal("schematic_port"),
|
|
1040
|
+
schematic_port_id: z56.string(),
|
|
1041
|
+
source_port_id: z56.string(),
|
|
1042
|
+
schematic_component_id: z56.string().optional(),
|
|
1033
1043
|
center: point,
|
|
1034
|
-
facing_direction:
|
|
1035
|
-
distance_from_component_edge:
|
|
1036
|
-
side_of_component:
|
|
1037
|
-
true_ccw_index:
|
|
1038
|
-
pin_number:
|
|
1039
|
-
display_pin_label:
|
|
1040
|
-
subcircuit_id:
|
|
1041
|
-
is_connected:
|
|
1042
|
-
has_input_arrow:
|
|
1043
|
-
has_output_arrow:
|
|
1044
|
+
facing_direction: z56.enum(["up", "down", "left", "right"]).optional(),
|
|
1045
|
+
distance_from_component_edge: z56.number().optional(),
|
|
1046
|
+
side_of_component: z56.enum(["top", "bottom", "left", "right"]).optional(),
|
|
1047
|
+
true_ccw_index: z56.number().optional(),
|
|
1048
|
+
pin_number: z56.number().optional(),
|
|
1049
|
+
display_pin_label: z56.string().optional(),
|
|
1050
|
+
subcircuit_id: z56.string().optional(),
|
|
1051
|
+
is_connected: z56.boolean().optional(),
|
|
1052
|
+
has_input_arrow: z56.boolean().optional(),
|
|
1053
|
+
has_output_arrow: z56.boolean().optional()
|
|
1044
1054
|
}).describe("Defines a port on a schematic component");
|
|
1045
1055
|
expectTypesMatch(true);
|
|
1046
1056
|
|
|
1047
1057
|
// src/schematic/schematic_net_label.ts
|
|
1048
|
-
import { z as
|
|
1049
|
-
var schematic_net_label =
|
|
1050
|
-
type:
|
|
1058
|
+
import { z as z57 } from "zod";
|
|
1059
|
+
var schematic_net_label = z57.object({
|
|
1060
|
+
type: z57.literal("schematic_net_label"),
|
|
1051
1061
|
schematic_net_label_id: getZodPrefixedIdWithDefault("schematic_net_label"),
|
|
1052
|
-
schematic_trace_id:
|
|
1053
|
-
source_trace_id:
|
|
1054
|
-
source_net_id:
|
|
1062
|
+
schematic_trace_id: z57.string().optional(),
|
|
1063
|
+
source_trace_id: z57.string().optional(),
|
|
1064
|
+
source_net_id: z57.string(),
|
|
1055
1065
|
center: point,
|
|
1056
1066
|
anchor_position: point.optional(),
|
|
1057
|
-
anchor_side:
|
|
1058
|
-
text:
|
|
1059
|
-
symbol_name:
|
|
1060
|
-
is_movable:
|
|
1061
|
-
subcircuit_id:
|
|
1067
|
+
anchor_side: z57.enum(["top", "bottom", "left", "right"]),
|
|
1068
|
+
text: z57.string(),
|
|
1069
|
+
symbol_name: z57.string().optional(),
|
|
1070
|
+
is_movable: z57.boolean().optional(),
|
|
1071
|
+
subcircuit_id: z57.string().optional()
|
|
1062
1072
|
});
|
|
1063
1073
|
expectTypesMatch(true);
|
|
1064
1074
|
|
|
1065
1075
|
// src/schematic/schematic_error.ts
|
|
1066
|
-
import { z as
|
|
1067
|
-
var schematic_error =
|
|
1068
|
-
type:
|
|
1069
|
-
schematic_error_id:
|
|
1076
|
+
import { z as z58 } from "zod";
|
|
1077
|
+
var schematic_error = z58.object({
|
|
1078
|
+
type: z58.literal("schematic_error"),
|
|
1079
|
+
schematic_error_id: z58.string(),
|
|
1070
1080
|
// eventually each error type should be broken out into a dir of files
|
|
1071
|
-
error_type:
|
|
1072
|
-
message:
|
|
1073
|
-
subcircuit_id:
|
|
1081
|
+
error_type: z58.literal("schematic_port_not_found").default("schematic_port_not_found"),
|
|
1082
|
+
message: z58.string(),
|
|
1083
|
+
subcircuit_id: z58.string().optional()
|
|
1074
1084
|
}).describe("Defines a schematic error on the schematic");
|
|
1075
1085
|
expectTypesMatch(true);
|
|
1076
1086
|
|
|
1077
1087
|
// src/schematic/schematic_layout_error.ts
|
|
1078
|
-
import { z as
|
|
1079
|
-
var schematic_layout_error =
|
|
1080
|
-
type:
|
|
1088
|
+
import { z as z59 } from "zod";
|
|
1089
|
+
var schematic_layout_error = z59.object({
|
|
1090
|
+
type: z59.literal("schematic_layout_error"),
|
|
1081
1091
|
schematic_layout_error_id: getZodPrefixedIdWithDefault(
|
|
1082
1092
|
"schematic_layout_error"
|
|
1083
1093
|
),
|
|
1084
|
-
error_type:
|
|
1085
|
-
message:
|
|
1086
|
-
source_group_id:
|
|
1087
|
-
schematic_group_id:
|
|
1088
|
-
subcircuit_id:
|
|
1094
|
+
error_type: z59.literal("schematic_layout_error").default("schematic_layout_error"),
|
|
1095
|
+
message: z59.string(),
|
|
1096
|
+
source_group_id: z59.string(),
|
|
1097
|
+
schematic_group_id: z59.string(),
|
|
1098
|
+
subcircuit_id: z59.string().optional()
|
|
1089
1099
|
}).describe("Error emitted when schematic layout fails for a group");
|
|
1090
1100
|
expectTypesMatch(true);
|
|
1091
1101
|
|
|
1092
1102
|
// src/schematic/schematic_debug_object.ts
|
|
1093
|
-
import { z as
|
|
1094
|
-
var schematic_debug_object_base =
|
|
1095
|
-
type:
|
|
1096
|
-
label:
|
|
1097
|
-
subcircuit_id:
|
|
1103
|
+
import { z as z60 } from "zod";
|
|
1104
|
+
var schematic_debug_object_base = z60.object({
|
|
1105
|
+
type: z60.literal("schematic_debug_object"),
|
|
1106
|
+
label: z60.string().optional(),
|
|
1107
|
+
subcircuit_id: z60.string().optional()
|
|
1098
1108
|
});
|
|
1099
1109
|
var schematic_debug_rect = schematic_debug_object_base.extend({
|
|
1100
|
-
shape:
|
|
1110
|
+
shape: z60.literal("rect"),
|
|
1101
1111
|
center: point,
|
|
1102
1112
|
size
|
|
1103
1113
|
});
|
|
1104
1114
|
var schematic_debug_line = schematic_debug_object_base.extend({
|
|
1105
|
-
shape:
|
|
1115
|
+
shape: z60.literal("line"),
|
|
1106
1116
|
start: point,
|
|
1107
1117
|
end: point
|
|
1108
1118
|
});
|
|
1109
1119
|
var schematic_debug_point = schematic_debug_object_base.extend({
|
|
1110
|
-
shape:
|
|
1120
|
+
shape: z60.literal("point"),
|
|
1111
1121
|
center: point
|
|
1112
1122
|
});
|
|
1113
|
-
var schematic_debug_object =
|
|
1123
|
+
var schematic_debug_object = z60.discriminatedUnion("shape", [
|
|
1114
1124
|
schematic_debug_rect,
|
|
1115
1125
|
schematic_debug_line,
|
|
1116
1126
|
schematic_debug_point
|
|
@@ -1118,177 +1128,177 @@ var schematic_debug_object = z59.discriminatedUnion("shape", [
|
|
|
1118
1128
|
expectTypesMatch(true);
|
|
1119
1129
|
|
|
1120
1130
|
// src/schematic/schematic_voltage_probe.ts
|
|
1121
|
-
import { z as
|
|
1122
|
-
var schematic_voltage_probe =
|
|
1123
|
-
type:
|
|
1124
|
-
schematic_voltage_probe_id:
|
|
1131
|
+
import { z as z61 } from "zod";
|
|
1132
|
+
var schematic_voltage_probe = z61.object({
|
|
1133
|
+
type: z61.literal("schematic_voltage_probe"),
|
|
1134
|
+
schematic_voltage_probe_id: z61.string(),
|
|
1135
|
+
source_component_id: z61.string().optional(),
|
|
1125
1136
|
position: point,
|
|
1126
|
-
schematic_trace_id:
|
|
1137
|
+
schematic_trace_id: z61.string(),
|
|
1127
1138
|
voltage: voltage.optional(),
|
|
1128
|
-
|
|
1129
|
-
subcircuit_id: z60.string().optional()
|
|
1139
|
+
subcircuit_id: z61.string().optional()
|
|
1130
1140
|
}).describe("Defines a voltage probe measurement point on a schematic trace");
|
|
1131
1141
|
expectTypesMatch(true);
|
|
1132
1142
|
|
|
1133
1143
|
// src/schematic/schematic_manual_edit_conflict_warning.ts
|
|
1134
|
-
import { z as
|
|
1135
|
-
var schematic_manual_edit_conflict_warning =
|
|
1136
|
-
type:
|
|
1144
|
+
import { z as z62 } from "zod";
|
|
1145
|
+
var schematic_manual_edit_conflict_warning = z62.object({
|
|
1146
|
+
type: z62.literal("schematic_manual_edit_conflict_warning"),
|
|
1137
1147
|
schematic_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
1138
1148
|
"schematic_manual_edit_conflict_warning"
|
|
1139
1149
|
),
|
|
1140
|
-
warning_type:
|
|
1141
|
-
message:
|
|
1142
|
-
schematic_component_id:
|
|
1143
|
-
schematic_group_id:
|
|
1144
|
-
subcircuit_id:
|
|
1145
|
-
source_component_id:
|
|
1150
|
+
warning_type: z62.literal("schematic_manual_edit_conflict_warning").default("schematic_manual_edit_conflict_warning"),
|
|
1151
|
+
message: z62.string(),
|
|
1152
|
+
schematic_component_id: z62.string(),
|
|
1153
|
+
schematic_group_id: z62.string().optional(),
|
|
1154
|
+
subcircuit_id: z62.string().optional(),
|
|
1155
|
+
source_component_id: z62.string()
|
|
1146
1156
|
}).describe(
|
|
1147
1157
|
"Warning emitted when a component has both manual placement and explicit schX/schY coordinates"
|
|
1148
1158
|
);
|
|
1149
1159
|
expectTypesMatch(true);
|
|
1150
1160
|
|
|
1151
1161
|
// src/schematic/schematic_group.ts
|
|
1152
|
-
import { z as
|
|
1153
|
-
var schematic_group =
|
|
1154
|
-
type:
|
|
1162
|
+
import { z as z63 } from "zod";
|
|
1163
|
+
var schematic_group = z63.object({
|
|
1164
|
+
type: z63.literal("schematic_group"),
|
|
1155
1165
|
schematic_group_id: getZodPrefixedIdWithDefault("schematic_group"),
|
|
1156
|
-
source_group_id:
|
|
1157
|
-
is_subcircuit:
|
|
1158
|
-
subcircuit_id:
|
|
1166
|
+
source_group_id: z63.string(),
|
|
1167
|
+
is_subcircuit: z63.boolean().optional(),
|
|
1168
|
+
subcircuit_id: z63.string().optional(),
|
|
1159
1169
|
width: length,
|
|
1160
1170
|
height: length,
|
|
1161
1171
|
center: point,
|
|
1162
|
-
schematic_component_ids:
|
|
1163
|
-
show_as_schematic_box:
|
|
1164
|
-
name:
|
|
1165
|
-
description:
|
|
1172
|
+
schematic_component_ids: z63.array(z63.string()),
|
|
1173
|
+
show_as_schematic_box: z63.boolean().optional(),
|
|
1174
|
+
name: z63.string().optional(),
|
|
1175
|
+
description: z63.string().optional()
|
|
1166
1176
|
}).describe("Defines a group of components on the schematic");
|
|
1167
1177
|
expectTypesMatch(true);
|
|
1168
1178
|
|
|
1169
1179
|
// src/schematic/schematic_table.ts
|
|
1170
|
-
import { z as
|
|
1171
|
-
var schematic_table =
|
|
1172
|
-
type:
|
|
1180
|
+
import { z as z64 } from "zod";
|
|
1181
|
+
var schematic_table = z64.object({
|
|
1182
|
+
type: z64.literal("schematic_table"),
|
|
1173
1183
|
schematic_table_id: getZodPrefixedIdWithDefault("schematic_table"),
|
|
1174
1184
|
anchor_position: point,
|
|
1175
|
-
column_widths:
|
|
1176
|
-
row_heights:
|
|
1185
|
+
column_widths: z64.array(distance),
|
|
1186
|
+
row_heights: z64.array(distance),
|
|
1177
1187
|
cell_padding: distance.optional(),
|
|
1178
1188
|
border_width: distance.optional(),
|
|
1179
|
-
subcircuit_id:
|
|
1180
|
-
schematic_component_id:
|
|
1189
|
+
subcircuit_id: z64.string().optional(),
|
|
1190
|
+
schematic_component_id: z64.string().optional(),
|
|
1181
1191
|
anchor: ninePointAnchor.optional()
|
|
1182
1192
|
}).describe("Defines a table on the schematic");
|
|
1183
1193
|
expectTypesMatch(true);
|
|
1184
1194
|
|
|
1185
1195
|
// src/schematic/schematic_table_cell.ts
|
|
1186
|
-
import { z as
|
|
1187
|
-
var schematic_table_cell =
|
|
1188
|
-
type:
|
|
1196
|
+
import { z as z65 } from "zod";
|
|
1197
|
+
var schematic_table_cell = z65.object({
|
|
1198
|
+
type: z65.literal("schematic_table_cell"),
|
|
1189
1199
|
schematic_table_cell_id: getZodPrefixedIdWithDefault(
|
|
1190
1200
|
"schematic_table_cell"
|
|
1191
1201
|
),
|
|
1192
|
-
schematic_table_id:
|
|
1193
|
-
start_row_index:
|
|
1194
|
-
end_row_index:
|
|
1195
|
-
start_column_index:
|
|
1196
|
-
end_column_index:
|
|
1197
|
-
text:
|
|
1202
|
+
schematic_table_id: z65.string(),
|
|
1203
|
+
start_row_index: z65.number(),
|
|
1204
|
+
end_row_index: z65.number(),
|
|
1205
|
+
start_column_index: z65.number(),
|
|
1206
|
+
end_column_index: z65.number(),
|
|
1207
|
+
text: z65.string().optional(),
|
|
1198
1208
|
center: point,
|
|
1199
1209
|
width: distance,
|
|
1200
1210
|
height: distance,
|
|
1201
|
-
horizontal_align:
|
|
1202
|
-
vertical_align:
|
|
1211
|
+
horizontal_align: z65.enum(["left", "center", "right"]).optional(),
|
|
1212
|
+
vertical_align: z65.enum(["top", "middle", "bottom"]).optional(),
|
|
1203
1213
|
font_size: distance.optional(),
|
|
1204
|
-
subcircuit_id:
|
|
1214
|
+
subcircuit_id: z65.string().optional()
|
|
1205
1215
|
}).describe("Defines a cell within a schematic_table");
|
|
1206
1216
|
expectTypesMatch(true);
|
|
1207
1217
|
|
|
1208
1218
|
// src/schematic/schematic_sheet.ts
|
|
1209
|
-
import { z as
|
|
1210
|
-
var schematic_sheet =
|
|
1211
|
-
type:
|
|
1219
|
+
import { z as z66 } from "zod";
|
|
1220
|
+
var schematic_sheet = z66.object({
|
|
1221
|
+
type: z66.literal("schematic_sheet"),
|
|
1212
1222
|
schematic_sheet_id: getZodPrefixedIdWithDefault("schematic_sheet"),
|
|
1213
|
-
name:
|
|
1214
|
-
subcircuit_id:
|
|
1223
|
+
name: z66.string().optional(),
|
|
1224
|
+
subcircuit_id: z66.string().optional()
|
|
1215
1225
|
}).describe(
|
|
1216
1226
|
"Defines a schematic sheet or page that components can be placed on"
|
|
1217
1227
|
);
|
|
1218
1228
|
expectTypesMatch(true);
|
|
1219
1229
|
|
|
1220
1230
|
// src/pcb/properties/brep.ts
|
|
1221
|
-
import { z as
|
|
1222
|
-
var point_with_bulge =
|
|
1231
|
+
import { z as z67 } from "zod";
|
|
1232
|
+
var point_with_bulge = z67.object({
|
|
1223
1233
|
x: distance,
|
|
1224
1234
|
y: distance,
|
|
1225
|
-
bulge:
|
|
1235
|
+
bulge: z67.number().optional()
|
|
1226
1236
|
});
|
|
1227
1237
|
expectTypesMatch(true);
|
|
1228
|
-
var ring =
|
|
1229
|
-
vertices:
|
|
1238
|
+
var ring = z67.object({
|
|
1239
|
+
vertices: z67.array(point_with_bulge)
|
|
1230
1240
|
});
|
|
1231
1241
|
expectTypesMatch(true);
|
|
1232
|
-
var brep_shape =
|
|
1242
|
+
var brep_shape = z67.object({
|
|
1233
1243
|
outer_ring: ring,
|
|
1234
|
-
inner_rings:
|
|
1244
|
+
inner_rings: z67.array(ring).default([])
|
|
1235
1245
|
});
|
|
1236
1246
|
expectTypesMatch(true);
|
|
1237
1247
|
|
|
1238
1248
|
// src/pcb/properties/pcb_route_hints.ts
|
|
1239
|
-
import { z as
|
|
1240
|
-
var pcb_route_hint =
|
|
1249
|
+
import { z as z68 } from "zod";
|
|
1250
|
+
var pcb_route_hint = z68.object({
|
|
1241
1251
|
x: distance,
|
|
1242
1252
|
y: distance,
|
|
1243
|
-
via:
|
|
1253
|
+
via: z68.boolean().optional(),
|
|
1244
1254
|
via_to_layer: layer_ref.optional()
|
|
1245
1255
|
});
|
|
1246
|
-
var pcb_route_hints =
|
|
1256
|
+
var pcb_route_hints = z68.array(pcb_route_hint);
|
|
1247
1257
|
expectTypesMatch(true);
|
|
1248
1258
|
expectTypesMatch(true);
|
|
1249
1259
|
|
|
1250
1260
|
// src/pcb/properties/route_hint_point.ts
|
|
1251
|
-
import { z as
|
|
1252
|
-
var route_hint_point =
|
|
1261
|
+
import { z as z69 } from "zod";
|
|
1262
|
+
var route_hint_point = z69.object({
|
|
1253
1263
|
x: distance,
|
|
1254
1264
|
y: distance,
|
|
1255
|
-
via:
|
|
1265
|
+
via: z69.boolean().optional(),
|
|
1256
1266
|
to_layer: layer_ref.optional(),
|
|
1257
1267
|
trace_width: distance.optional()
|
|
1258
1268
|
});
|
|
1259
1269
|
expectTypesMatch(true);
|
|
1260
1270
|
|
|
1261
1271
|
// src/pcb/pcb_component.ts
|
|
1262
|
-
import { z as
|
|
1263
|
-
var pcb_component =
|
|
1264
|
-
type:
|
|
1272
|
+
import { z as z70 } from "zod";
|
|
1273
|
+
var pcb_component = z70.object({
|
|
1274
|
+
type: z70.literal("pcb_component"),
|
|
1265
1275
|
pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
|
|
1266
|
-
source_component_id:
|
|
1276
|
+
source_component_id: z70.string(),
|
|
1267
1277
|
center: point,
|
|
1268
1278
|
layer: layer_ref,
|
|
1269
1279
|
rotation,
|
|
1270
1280
|
width: length,
|
|
1271
1281
|
height: length,
|
|
1272
|
-
do_not_place:
|
|
1273
|
-
subcircuit_id:
|
|
1274
|
-
pcb_group_id:
|
|
1275
|
-
position_mode:
|
|
1276
|
-
positioned_relative_to_pcb_group_id:
|
|
1277
|
-
obstructs_within_bounds:
|
|
1282
|
+
do_not_place: z70.boolean().optional(),
|
|
1283
|
+
subcircuit_id: z70.string().optional(),
|
|
1284
|
+
pcb_group_id: z70.string().optional(),
|
|
1285
|
+
position_mode: z70.enum(["packed", "relative_to_group_anchor", "none"]).optional(),
|
|
1286
|
+
positioned_relative_to_pcb_group_id: z70.string().optional(),
|
|
1287
|
+
obstructs_within_bounds: z70.boolean().default(true).describe(
|
|
1278
1288
|
"Does this component take up all the space within its bounds on a layer. This is generally true except for when separated pin headers are being represented by a single component (in which case, chips can be placed between the pin headers) or for tall modules where chips fit underneath"
|
|
1279
1289
|
)
|
|
1280
1290
|
}).describe("Defines a component on the PCB");
|
|
1281
1291
|
expectTypesMatch(true);
|
|
1282
1292
|
|
|
1283
1293
|
// src/pcb/pcb_hole.ts
|
|
1284
|
-
import { z as
|
|
1285
|
-
var pcb_hole_circle =
|
|
1286
|
-
type:
|
|
1294
|
+
import { z as z71 } from "zod";
|
|
1295
|
+
var pcb_hole_circle = z71.object({
|
|
1296
|
+
type: z71.literal("pcb_hole"),
|
|
1287
1297
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1288
|
-
pcb_group_id:
|
|
1289
|
-
subcircuit_id:
|
|
1290
|
-
hole_shape:
|
|
1291
|
-
hole_diameter:
|
|
1298
|
+
pcb_group_id: z71.string().optional(),
|
|
1299
|
+
subcircuit_id: z71.string().optional(),
|
|
1300
|
+
hole_shape: z71.literal("circle"),
|
|
1301
|
+
hole_diameter: z71.number(),
|
|
1292
1302
|
x: distance,
|
|
1293
1303
|
y: distance
|
|
1294
1304
|
});
|
|
@@ -1296,14 +1306,14 @@ var pcb_hole_circle_shape = pcb_hole_circle.describe(
|
|
|
1296
1306
|
"Defines a circular hole on the PCB"
|
|
1297
1307
|
);
|
|
1298
1308
|
expectTypesMatch(true);
|
|
1299
|
-
var pcb_hole_rect =
|
|
1300
|
-
type:
|
|
1309
|
+
var pcb_hole_rect = z71.object({
|
|
1310
|
+
type: z71.literal("pcb_hole"),
|
|
1301
1311
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1302
|
-
pcb_group_id:
|
|
1303
|
-
subcircuit_id:
|
|
1304
|
-
hole_shape:
|
|
1305
|
-
hole_width:
|
|
1306
|
-
hole_height:
|
|
1312
|
+
pcb_group_id: z71.string().optional(),
|
|
1313
|
+
subcircuit_id: z71.string().optional(),
|
|
1314
|
+
hole_shape: z71.literal("rect"),
|
|
1315
|
+
hole_width: z71.number(),
|
|
1316
|
+
hole_height: z71.number(),
|
|
1307
1317
|
x: distance,
|
|
1308
1318
|
y: distance
|
|
1309
1319
|
});
|
|
@@ -1311,13 +1321,13 @@ var pcb_hole_rect_shape = pcb_hole_rect.describe(
|
|
|
1311
1321
|
"Defines a rectangular (square-capable) hole on the PCB. Use equal width/height for square."
|
|
1312
1322
|
);
|
|
1313
1323
|
expectTypesMatch(true);
|
|
1314
|
-
var pcb_hole_circle_or_square =
|
|
1315
|
-
type:
|
|
1324
|
+
var pcb_hole_circle_or_square = z71.object({
|
|
1325
|
+
type: z71.literal("pcb_hole"),
|
|
1316
1326
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1317
|
-
pcb_group_id:
|
|
1318
|
-
subcircuit_id:
|
|
1319
|
-
hole_shape:
|
|
1320
|
-
hole_diameter:
|
|
1327
|
+
pcb_group_id: z71.string().optional(),
|
|
1328
|
+
subcircuit_id: z71.string().optional(),
|
|
1329
|
+
hole_shape: z71.enum(["circle", "square"]),
|
|
1330
|
+
hole_diameter: z71.number(),
|
|
1321
1331
|
x: distance,
|
|
1322
1332
|
y: distance
|
|
1323
1333
|
});
|
|
@@ -1325,14 +1335,14 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
|
|
|
1325
1335
|
"Defines a circular or square hole on the PCB"
|
|
1326
1336
|
);
|
|
1327
1337
|
expectTypesMatch(true);
|
|
1328
|
-
var pcb_hole_oval =
|
|
1329
|
-
type:
|
|
1338
|
+
var pcb_hole_oval = z71.object({
|
|
1339
|
+
type: z71.literal("pcb_hole"),
|
|
1330
1340
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1331
|
-
pcb_group_id:
|
|
1332
|
-
subcircuit_id:
|
|
1333
|
-
hole_shape:
|
|
1334
|
-
hole_width:
|
|
1335
|
-
hole_height:
|
|
1341
|
+
pcb_group_id: z71.string().optional(),
|
|
1342
|
+
subcircuit_id: z71.string().optional(),
|
|
1343
|
+
hole_shape: z71.literal("oval"),
|
|
1344
|
+
hole_width: z71.number(),
|
|
1345
|
+
hole_height: z71.number(),
|
|
1336
1346
|
x: distance,
|
|
1337
1347
|
y: distance
|
|
1338
1348
|
});
|
|
@@ -1340,14 +1350,14 @@ var pcb_hole_oval_shape = pcb_hole_oval.describe(
|
|
|
1340
1350
|
"Defines an oval hole on the PCB"
|
|
1341
1351
|
);
|
|
1342
1352
|
expectTypesMatch(true);
|
|
1343
|
-
var pcb_hole_pill =
|
|
1344
|
-
type:
|
|
1353
|
+
var pcb_hole_pill = z71.object({
|
|
1354
|
+
type: z71.literal("pcb_hole"),
|
|
1345
1355
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1346
|
-
pcb_group_id:
|
|
1347
|
-
subcircuit_id:
|
|
1348
|
-
hole_shape:
|
|
1349
|
-
hole_width:
|
|
1350
|
-
hole_height:
|
|
1356
|
+
pcb_group_id: z71.string().optional(),
|
|
1357
|
+
subcircuit_id: z71.string().optional(),
|
|
1358
|
+
hole_shape: z71.literal("pill"),
|
|
1359
|
+
hole_width: z71.number(),
|
|
1360
|
+
hole_height: z71.number(),
|
|
1351
1361
|
x: distance,
|
|
1352
1362
|
y: distance
|
|
1353
1363
|
});
|
|
@@ -1355,14 +1365,14 @@ var pcb_hole_pill_shape = pcb_hole_pill.describe(
|
|
|
1355
1365
|
"Defines a pill-shaped hole on the PCB"
|
|
1356
1366
|
);
|
|
1357
1367
|
expectTypesMatch(true);
|
|
1358
|
-
var pcb_hole_rotated_pill =
|
|
1359
|
-
type:
|
|
1368
|
+
var pcb_hole_rotated_pill = z71.object({
|
|
1369
|
+
type: z71.literal("pcb_hole"),
|
|
1360
1370
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1361
|
-
pcb_group_id:
|
|
1362
|
-
subcircuit_id:
|
|
1363
|
-
hole_shape:
|
|
1364
|
-
hole_width:
|
|
1365
|
-
hole_height:
|
|
1371
|
+
pcb_group_id: z71.string().optional(),
|
|
1372
|
+
subcircuit_id: z71.string().optional(),
|
|
1373
|
+
hole_shape: z71.literal("rotated_pill"),
|
|
1374
|
+
hole_width: z71.number(),
|
|
1375
|
+
hole_height: z71.number(),
|
|
1366
1376
|
x: distance,
|
|
1367
1377
|
y: distance,
|
|
1368
1378
|
ccw_rotation: rotation
|
|
@@ -1374,118 +1384,118 @@ expectTypesMatch(true);
|
|
|
1374
1384
|
var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval).or(pcb_hole_pill).or(pcb_hole_rotated_pill).or(pcb_hole_circle).or(pcb_hole_rect);
|
|
1375
1385
|
|
|
1376
1386
|
// src/pcb/pcb_plated_hole.ts
|
|
1377
|
-
import { z as
|
|
1378
|
-
var pcb_plated_hole_circle =
|
|
1379
|
-
type:
|
|
1380
|
-
shape:
|
|
1381
|
-
pcb_group_id:
|
|
1382
|
-
subcircuit_id:
|
|
1383
|
-
outer_diameter:
|
|
1384
|
-
hole_diameter:
|
|
1387
|
+
import { z as z72 } from "zod";
|
|
1388
|
+
var pcb_plated_hole_circle = z72.object({
|
|
1389
|
+
type: z72.literal("pcb_plated_hole"),
|
|
1390
|
+
shape: z72.literal("circle"),
|
|
1391
|
+
pcb_group_id: z72.string().optional(),
|
|
1392
|
+
subcircuit_id: z72.string().optional(),
|
|
1393
|
+
outer_diameter: z72.number(),
|
|
1394
|
+
hole_diameter: z72.number(),
|
|
1385
1395
|
x: distance,
|
|
1386
1396
|
y: distance,
|
|
1387
|
-
layers:
|
|
1388
|
-
port_hints:
|
|
1389
|
-
pcb_component_id:
|
|
1390
|
-
pcb_port_id:
|
|
1397
|
+
layers: z72.array(layer_ref),
|
|
1398
|
+
port_hints: z72.array(z72.string()).optional(),
|
|
1399
|
+
pcb_component_id: z72.string().optional(),
|
|
1400
|
+
pcb_port_id: z72.string().optional(),
|
|
1391
1401
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1392
1402
|
});
|
|
1393
|
-
var pcb_plated_hole_oval =
|
|
1394
|
-
type:
|
|
1395
|
-
shape:
|
|
1396
|
-
pcb_group_id:
|
|
1397
|
-
subcircuit_id:
|
|
1398
|
-
outer_width:
|
|
1399
|
-
outer_height:
|
|
1400
|
-
hole_width:
|
|
1401
|
-
hole_height:
|
|
1403
|
+
var pcb_plated_hole_oval = z72.object({
|
|
1404
|
+
type: z72.literal("pcb_plated_hole"),
|
|
1405
|
+
shape: z72.enum(["oval", "pill"]),
|
|
1406
|
+
pcb_group_id: z72.string().optional(),
|
|
1407
|
+
subcircuit_id: z72.string().optional(),
|
|
1408
|
+
outer_width: z72.number(),
|
|
1409
|
+
outer_height: z72.number(),
|
|
1410
|
+
hole_width: z72.number(),
|
|
1411
|
+
hole_height: z72.number(),
|
|
1402
1412
|
x: distance,
|
|
1403
1413
|
y: distance,
|
|
1404
1414
|
ccw_rotation: rotation,
|
|
1405
|
-
layers:
|
|
1406
|
-
port_hints:
|
|
1407
|
-
pcb_component_id:
|
|
1408
|
-
pcb_port_id:
|
|
1415
|
+
layers: z72.array(layer_ref),
|
|
1416
|
+
port_hints: z72.array(z72.string()).optional(),
|
|
1417
|
+
pcb_component_id: z72.string().optional(),
|
|
1418
|
+
pcb_port_id: z72.string().optional(),
|
|
1409
1419
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1410
1420
|
});
|
|
1411
|
-
var pcb_circular_hole_with_rect_pad =
|
|
1412
|
-
type:
|
|
1413
|
-
shape:
|
|
1414
|
-
pcb_group_id:
|
|
1415
|
-
subcircuit_id:
|
|
1416
|
-
hole_shape:
|
|
1417
|
-
pad_shape:
|
|
1418
|
-
hole_diameter:
|
|
1419
|
-
rect_pad_width:
|
|
1420
|
-
rect_pad_height:
|
|
1421
|
-
rect_border_radius:
|
|
1421
|
+
var pcb_circular_hole_with_rect_pad = z72.object({
|
|
1422
|
+
type: z72.literal("pcb_plated_hole"),
|
|
1423
|
+
shape: z72.literal("circular_hole_with_rect_pad"),
|
|
1424
|
+
pcb_group_id: z72.string().optional(),
|
|
1425
|
+
subcircuit_id: z72.string().optional(),
|
|
1426
|
+
hole_shape: z72.literal("circle"),
|
|
1427
|
+
pad_shape: z72.literal("rect"),
|
|
1428
|
+
hole_diameter: z72.number(),
|
|
1429
|
+
rect_pad_width: z72.number(),
|
|
1430
|
+
rect_pad_height: z72.number(),
|
|
1431
|
+
rect_border_radius: z72.number().optional(),
|
|
1422
1432
|
hole_offset_x: distance.default(0),
|
|
1423
1433
|
hole_offset_y: distance.default(0),
|
|
1424
1434
|
x: distance,
|
|
1425
1435
|
y: distance,
|
|
1426
|
-
layers:
|
|
1427
|
-
port_hints:
|
|
1428
|
-
pcb_component_id:
|
|
1429
|
-
pcb_port_id:
|
|
1436
|
+
layers: z72.array(layer_ref),
|
|
1437
|
+
port_hints: z72.array(z72.string()).optional(),
|
|
1438
|
+
pcb_component_id: z72.string().optional(),
|
|
1439
|
+
pcb_port_id: z72.string().optional(),
|
|
1430
1440
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1431
1441
|
});
|
|
1432
|
-
var pcb_pill_hole_with_rect_pad =
|
|
1433
|
-
type:
|
|
1434
|
-
shape:
|
|
1435
|
-
pcb_group_id:
|
|
1436
|
-
subcircuit_id:
|
|
1437
|
-
hole_shape:
|
|
1438
|
-
pad_shape:
|
|
1439
|
-
hole_width:
|
|
1440
|
-
hole_height:
|
|
1441
|
-
rect_pad_width:
|
|
1442
|
-
rect_pad_height:
|
|
1443
|
-
rect_border_radius:
|
|
1442
|
+
var pcb_pill_hole_with_rect_pad = z72.object({
|
|
1443
|
+
type: z72.literal("pcb_plated_hole"),
|
|
1444
|
+
shape: z72.literal("pill_hole_with_rect_pad"),
|
|
1445
|
+
pcb_group_id: z72.string().optional(),
|
|
1446
|
+
subcircuit_id: z72.string().optional(),
|
|
1447
|
+
hole_shape: z72.literal("pill"),
|
|
1448
|
+
pad_shape: z72.literal("rect"),
|
|
1449
|
+
hole_width: z72.number(),
|
|
1450
|
+
hole_height: z72.number(),
|
|
1451
|
+
rect_pad_width: z72.number(),
|
|
1452
|
+
rect_pad_height: z72.number(),
|
|
1453
|
+
rect_border_radius: z72.number().optional(),
|
|
1444
1454
|
hole_offset_x: distance.default(0),
|
|
1445
1455
|
hole_offset_y: distance.default(0),
|
|
1446
1456
|
x: distance,
|
|
1447
1457
|
y: distance,
|
|
1448
|
-
layers:
|
|
1449
|
-
port_hints:
|
|
1450
|
-
pcb_component_id:
|
|
1451
|
-
pcb_port_id:
|
|
1458
|
+
layers: z72.array(layer_ref),
|
|
1459
|
+
port_hints: z72.array(z72.string()).optional(),
|
|
1460
|
+
pcb_component_id: z72.string().optional(),
|
|
1461
|
+
pcb_port_id: z72.string().optional(),
|
|
1452
1462
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1453
1463
|
});
|
|
1454
|
-
var pcb_rotated_pill_hole_with_rect_pad =
|
|
1455
|
-
type:
|
|
1456
|
-
shape:
|
|
1457
|
-
pcb_group_id:
|
|
1458
|
-
subcircuit_id:
|
|
1459
|
-
hole_shape:
|
|
1460
|
-
pad_shape:
|
|
1461
|
-
hole_width:
|
|
1462
|
-
hole_height:
|
|
1464
|
+
var pcb_rotated_pill_hole_with_rect_pad = z72.object({
|
|
1465
|
+
type: z72.literal("pcb_plated_hole"),
|
|
1466
|
+
shape: z72.literal("rotated_pill_hole_with_rect_pad"),
|
|
1467
|
+
pcb_group_id: z72.string().optional(),
|
|
1468
|
+
subcircuit_id: z72.string().optional(),
|
|
1469
|
+
hole_shape: z72.literal("rotated_pill"),
|
|
1470
|
+
pad_shape: z72.literal("rect"),
|
|
1471
|
+
hole_width: z72.number(),
|
|
1472
|
+
hole_height: z72.number(),
|
|
1463
1473
|
hole_ccw_rotation: rotation,
|
|
1464
|
-
rect_pad_width:
|
|
1465
|
-
rect_pad_height:
|
|
1466
|
-
rect_border_radius:
|
|
1474
|
+
rect_pad_width: z72.number(),
|
|
1475
|
+
rect_pad_height: z72.number(),
|
|
1476
|
+
rect_border_radius: z72.number().optional(),
|
|
1467
1477
|
rect_ccw_rotation: rotation,
|
|
1468
1478
|
hole_offset_x: distance.default(0),
|
|
1469
1479
|
hole_offset_y: distance.default(0),
|
|
1470
1480
|
x: distance,
|
|
1471
1481
|
y: distance,
|
|
1472
|
-
layers:
|
|
1473
|
-
port_hints:
|
|
1474
|
-
pcb_component_id:
|
|
1475
|
-
pcb_port_id:
|
|
1482
|
+
layers: z72.array(layer_ref),
|
|
1483
|
+
port_hints: z72.array(z72.string()).optional(),
|
|
1484
|
+
pcb_component_id: z72.string().optional(),
|
|
1485
|
+
pcb_port_id: z72.string().optional(),
|
|
1476
1486
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1477
1487
|
});
|
|
1478
|
-
var pcb_hole_with_polygon_pad =
|
|
1479
|
-
type:
|
|
1480
|
-
shape:
|
|
1481
|
-
pcb_group_id:
|
|
1482
|
-
subcircuit_id:
|
|
1483
|
-
hole_shape:
|
|
1484
|
-
hole_diameter:
|
|
1485
|
-
hole_width:
|
|
1486
|
-
hole_height:
|
|
1487
|
-
pad_outline:
|
|
1488
|
-
|
|
1488
|
+
var pcb_hole_with_polygon_pad = z72.object({
|
|
1489
|
+
type: z72.literal("pcb_plated_hole"),
|
|
1490
|
+
shape: z72.literal("hole_with_polygon_pad"),
|
|
1491
|
+
pcb_group_id: z72.string().optional(),
|
|
1492
|
+
subcircuit_id: z72.string().optional(),
|
|
1493
|
+
hole_shape: z72.enum(["circle", "oval", "pill", "rotated_pill"]),
|
|
1494
|
+
hole_diameter: z72.number().optional(),
|
|
1495
|
+
hole_width: z72.number().optional(),
|
|
1496
|
+
hole_height: z72.number().optional(),
|
|
1497
|
+
pad_outline: z72.array(
|
|
1498
|
+
z72.object({
|
|
1489
1499
|
x: distance,
|
|
1490
1500
|
y: distance
|
|
1491
1501
|
})
|
|
@@ -1494,13 +1504,13 @@ var pcb_hole_with_polygon_pad = z71.object({
|
|
|
1494
1504
|
hole_offset_y: distance.default(0),
|
|
1495
1505
|
x: distance,
|
|
1496
1506
|
y: distance,
|
|
1497
|
-
layers:
|
|
1498
|
-
port_hints:
|
|
1499
|
-
pcb_component_id:
|
|
1500
|
-
pcb_port_id:
|
|
1507
|
+
layers: z72.array(layer_ref),
|
|
1508
|
+
port_hints: z72.array(z72.string()).optional(),
|
|
1509
|
+
pcb_component_id: z72.string().optional(),
|
|
1510
|
+
pcb_port_id: z72.string().optional(),
|
|
1501
1511
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1502
1512
|
});
|
|
1503
|
-
var pcb_plated_hole =
|
|
1513
|
+
var pcb_plated_hole = z72.union([
|
|
1504
1514
|
pcb_plated_hole_circle,
|
|
1505
1515
|
pcb_plated_hole_oval,
|
|
1506
1516
|
pcb_circular_hole_with_rect_pad,
|
|
@@ -1518,124 +1528,124 @@ expectTypesMatch(true);
|
|
|
1518
1528
|
expectTypesMatch(true);
|
|
1519
1529
|
|
|
1520
1530
|
// src/pcb/pcb_port.ts
|
|
1521
|
-
import { z as
|
|
1522
|
-
var pcb_port =
|
|
1523
|
-
type:
|
|
1531
|
+
import { z as z73 } from "zod";
|
|
1532
|
+
var pcb_port = z73.object({
|
|
1533
|
+
type: z73.literal("pcb_port"),
|
|
1524
1534
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
1525
|
-
pcb_group_id:
|
|
1526
|
-
subcircuit_id:
|
|
1527
|
-
source_port_id:
|
|
1528
|
-
pcb_component_id:
|
|
1535
|
+
pcb_group_id: z73.string().optional(),
|
|
1536
|
+
subcircuit_id: z73.string().optional(),
|
|
1537
|
+
source_port_id: z73.string(),
|
|
1538
|
+
pcb_component_id: z73.string().optional(),
|
|
1529
1539
|
x: distance,
|
|
1530
1540
|
y: distance,
|
|
1531
|
-
layers:
|
|
1532
|
-
is_board_pinout:
|
|
1541
|
+
layers: z73.array(layer_ref),
|
|
1542
|
+
is_board_pinout: z73.boolean().optional()
|
|
1533
1543
|
}).describe("Defines a port on the PCB");
|
|
1534
1544
|
expectTypesMatch(true);
|
|
1535
1545
|
|
|
1536
1546
|
// src/pcb/pcb_smtpad.ts
|
|
1537
|
-
import { z as
|
|
1538
|
-
var pcb_smtpad_circle =
|
|
1539
|
-
type:
|
|
1540
|
-
shape:
|
|
1547
|
+
import { z as z74 } from "zod";
|
|
1548
|
+
var pcb_smtpad_circle = z74.object({
|
|
1549
|
+
type: z74.literal("pcb_smtpad"),
|
|
1550
|
+
shape: z74.literal("circle"),
|
|
1541
1551
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1542
|
-
pcb_group_id:
|
|
1543
|
-
subcircuit_id:
|
|
1552
|
+
pcb_group_id: z74.string().optional(),
|
|
1553
|
+
subcircuit_id: z74.string().optional(),
|
|
1544
1554
|
x: distance,
|
|
1545
1555
|
y: distance,
|
|
1546
|
-
radius:
|
|
1556
|
+
radius: z74.number(),
|
|
1547
1557
|
layer: layer_ref,
|
|
1548
|
-
port_hints:
|
|
1549
|
-
pcb_component_id:
|
|
1550
|
-
pcb_port_id:
|
|
1551
|
-
is_covered_with_solder_mask:
|
|
1558
|
+
port_hints: z74.array(z74.string()).optional(),
|
|
1559
|
+
pcb_component_id: z74.string().optional(),
|
|
1560
|
+
pcb_port_id: z74.string().optional(),
|
|
1561
|
+
is_covered_with_solder_mask: z74.boolean().optional()
|
|
1552
1562
|
});
|
|
1553
|
-
var pcb_smtpad_rect =
|
|
1554
|
-
type:
|
|
1555
|
-
shape:
|
|
1563
|
+
var pcb_smtpad_rect = z74.object({
|
|
1564
|
+
type: z74.literal("pcb_smtpad"),
|
|
1565
|
+
shape: z74.literal("rect"),
|
|
1556
1566
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1557
|
-
pcb_group_id:
|
|
1558
|
-
subcircuit_id:
|
|
1567
|
+
pcb_group_id: z74.string().optional(),
|
|
1568
|
+
subcircuit_id: z74.string().optional(),
|
|
1559
1569
|
x: distance,
|
|
1560
1570
|
y: distance,
|
|
1561
|
-
width:
|
|
1562
|
-
height:
|
|
1563
|
-
rect_border_radius:
|
|
1564
|
-
corner_radius:
|
|
1571
|
+
width: z74.number(),
|
|
1572
|
+
height: z74.number(),
|
|
1573
|
+
rect_border_radius: z74.number().optional(),
|
|
1574
|
+
corner_radius: z74.number().optional(),
|
|
1565
1575
|
layer: layer_ref,
|
|
1566
|
-
port_hints:
|
|
1567
|
-
pcb_component_id:
|
|
1568
|
-
pcb_port_id:
|
|
1569
|
-
is_covered_with_solder_mask:
|
|
1576
|
+
port_hints: z74.array(z74.string()).optional(),
|
|
1577
|
+
pcb_component_id: z74.string().optional(),
|
|
1578
|
+
pcb_port_id: z74.string().optional(),
|
|
1579
|
+
is_covered_with_solder_mask: z74.boolean().optional()
|
|
1570
1580
|
});
|
|
1571
|
-
var pcb_smtpad_rotated_rect =
|
|
1572
|
-
type:
|
|
1573
|
-
shape:
|
|
1581
|
+
var pcb_smtpad_rotated_rect = z74.object({
|
|
1582
|
+
type: z74.literal("pcb_smtpad"),
|
|
1583
|
+
shape: z74.literal("rotated_rect"),
|
|
1574
1584
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1575
|
-
pcb_group_id:
|
|
1576
|
-
subcircuit_id:
|
|
1585
|
+
pcb_group_id: z74.string().optional(),
|
|
1586
|
+
subcircuit_id: z74.string().optional(),
|
|
1577
1587
|
x: distance,
|
|
1578
1588
|
y: distance,
|
|
1579
|
-
width:
|
|
1580
|
-
height:
|
|
1581
|
-
rect_border_radius:
|
|
1582
|
-
corner_radius:
|
|
1589
|
+
width: z74.number(),
|
|
1590
|
+
height: z74.number(),
|
|
1591
|
+
rect_border_radius: z74.number().optional(),
|
|
1592
|
+
corner_radius: z74.number().optional(),
|
|
1583
1593
|
ccw_rotation: rotation,
|
|
1584
1594
|
layer: layer_ref,
|
|
1585
|
-
port_hints:
|
|
1586
|
-
pcb_component_id:
|
|
1587
|
-
pcb_port_id:
|
|
1588
|
-
is_covered_with_solder_mask:
|
|
1595
|
+
port_hints: z74.array(z74.string()).optional(),
|
|
1596
|
+
pcb_component_id: z74.string().optional(),
|
|
1597
|
+
pcb_port_id: z74.string().optional(),
|
|
1598
|
+
is_covered_with_solder_mask: z74.boolean().optional()
|
|
1589
1599
|
});
|
|
1590
|
-
var pcb_smtpad_pill =
|
|
1591
|
-
type:
|
|
1592
|
-
shape:
|
|
1600
|
+
var pcb_smtpad_pill = z74.object({
|
|
1601
|
+
type: z74.literal("pcb_smtpad"),
|
|
1602
|
+
shape: z74.literal("pill"),
|
|
1593
1603
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1594
|
-
pcb_group_id:
|
|
1595
|
-
subcircuit_id:
|
|
1604
|
+
pcb_group_id: z74.string().optional(),
|
|
1605
|
+
subcircuit_id: z74.string().optional(),
|
|
1596
1606
|
x: distance,
|
|
1597
1607
|
y: distance,
|
|
1598
|
-
width:
|
|
1599
|
-
height:
|
|
1600
|
-
radius:
|
|
1608
|
+
width: z74.number(),
|
|
1609
|
+
height: z74.number(),
|
|
1610
|
+
radius: z74.number(),
|
|
1601
1611
|
layer: layer_ref,
|
|
1602
|
-
port_hints:
|
|
1603
|
-
pcb_component_id:
|
|
1604
|
-
pcb_port_id:
|
|
1605
|
-
is_covered_with_solder_mask:
|
|
1612
|
+
port_hints: z74.array(z74.string()).optional(),
|
|
1613
|
+
pcb_component_id: z74.string().optional(),
|
|
1614
|
+
pcb_port_id: z74.string().optional(),
|
|
1615
|
+
is_covered_with_solder_mask: z74.boolean().optional()
|
|
1606
1616
|
});
|
|
1607
|
-
var pcb_smtpad_rotated_pill =
|
|
1608
|
-
type:
|
|
1609
|
-
shape:
|
|
1617
|
+
var pcb_smtpad_rotated_pill = z74.object({
|
|
1618
|
+
type: z74.literal("pcb_smtpad"),
|
|
1619
|
+
shape: z74.literal("rotated_pill"),
|
|
1610
1620
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1611
|
-
pcb_group_id:
|
|
1612
|
-
subcircuit_id:
|
|
1621
|
+
pcb_group_id: z74.string().optional(),
|
|
1622
|
+
subcircuit_id: z74.string().optional(),
|
|
1613
1623
|
x: distance,
|
|
1614
1624
|
y: distance,
|
|
1615
|
-
width:
|
|
1616
|
-
height:
|
|
1617
|
-
radius:
|
|
1625
|
+
width: z74.number(),
|
|
1626
|
+
height: z74.number(),
|
|
1627
|
+
radius: z74.number(),
|
|
1618
1628
|
ccw_rotation: rotation,
|
|
1619
1629
|
layer: layer_ref,
|
|
1620
|
-
port_hints:
|
|
1621
|
-
pcb_component_id:
|
|
1622
|
-
pcb_port_id:
|
|
1623
|
-
is_covered_with_solder_mask:
|
|
1630
|
+
port_hints: z74.array(z74.string()).optional(),
|
|
1631
|
+
pcb_component_id: z74.string().optional(),
|
|
1632
|
+
pcb_port_id: z74.string().optional(),
|
|
1633
|
+
is_covered_with_solder_mask: z74.boolean().optional()
|
|
1624
1634
|
});
|
|
1625
|
-
var pcb_smtpad_polygon =
|
|
1626
|
-
type:
|
|
1627
|
-
shape:
|
|
1635
|
+
var pcb_smtpad_polygon = z74.object({
|
|
1636
|
+
type: z74.literal("pcb_smtpad"),
|
|
1637
|
+
shape: z74.literal("polygon"),
|
|
1628
1638
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1629
|
-
pcb_group_id:
|
|
1630
|
-
subcircuit_id:
|
|
1631
|
-
points:
|
|
1639
|
+
pcb_group_id: z74.string().optional(),
|
|
1640
|
+
subcircuit_id: z74.string().optional(),
|
|
1641
|
+
points: z74.array(point),
|
|
1632
1642
|
layer: layer_ref,
|
|
1633
|
-
port_hints:
|
|
1634
|
-
pcb_component_id:
|
|
1635
|
-
pcb_port_id:
|
|
1636
|
-
is_covered_with_solder_mask:
|
|
1643
|
+
port_hints: z74.array(z74.string()).optional(),
|
|
1644
|
+
pcb_component_id: z74.string().optional(),
|
|
1645
|
+
pcb_port_id: z74.string().optional(),
|
|
1646
|
+
is_covered_with_solder_mask: z74.boolean().optional()
|
|
1637
1647
|
});
|
|
1638
|
-
var pcb_smtpad =
|
|
1648
|
+
var pcb_smtpad = z74.discriminatedUnion("shape", [
|
|
1639
1649
|
pcb_smtpad_circle,
|
|
1640
1650
|
pcb_smtpad_rect,
|
|
1641
1651
|
pcb_smtpad_rotated_rect,
|
|
@@ -1651,79 +1661,79 @@ expectTypesMatch(true);
|
|
|
1651
1661
|
expectTypesMatch(true);
|
|
1652
1662
|
|
|
1653
1663
|
// src/pcb/pcb_solder_paste.ts
|
|
1654
|
-
import { z as
|
|
1655
|
-
var pcb_solder_paste_circle =
|
|
1656
|
-
type:
|
|
1657
|
-
shape:
|
|
1664
|
+
import { z as z75 } from "zod";
|
|
1665
|
+
var pcb_solder_paste_circle = z75.object({
|
|
1666
|
+
type: z75.literal("pcb_solder_paste"),
|
|
1667
|
+
shape: z75.literal("circle"),
|
|
1658
1668
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1659
|
-
pcb_group_id:
|
|
1660
|
-
subcircuit_id:
|
|
1669
|
+
pcb_group_id: z75.string().optional(),
|
|
1670
|
+
subcircuit_id: z75.string().optional(),
|
|
1661
1671
|
x: distance,
|
|
1662
1672
|
y: distance,
|
|
1663
|
-
radius:
|
|
1673
|
+
radius: z75.number(),
|
|
1664
1674
|
layer: layer_ref,
|
|
1665
|
-
pcb_component_id:
|
|
1666
|
-
pcb_smtpad_id:
|
|
1675
|
+
pcb_component_id: z75.string().optional(),
|
|
1676
|
+
pcb_smtpad_id: z75.string().optional()
|
|
1667
1677
|
});
|
|
1668
|
-
var pcb_solder_paste_rect =
|
|
1669
|
-
type:
|
|
1670
|
-
shape:
|
|
1678
|
+
var pcb_solder_paste_rect = z75.object({
|
|
1679
|
+
type: z75.literal("pcb_solder_paste"),
|
|
1680
|
+
shape: z75.literal("rect"),
|
|
1671
1681
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1672
|
-
pcb_group_id:
|
|
1673
|
-
subcircuit_id:
|
|
1682
|
+
pcb_group_id: z75.string().optional(),
|
|
1683
|
+
subcircuit_id: z75.string().optional(),
|
|
1674
1684
|
x: distance,
|
|
1675
1685
|
y: distance,
|
|
1676
|
-
width:
|
|
1677
|
-
height:
|
|
1686
|
+
width: z75.number(),
|
|
1687
|
+
height: z75.number(),
|
|
1678
1688
|
layer: layer_ref,
|
|
1679
|
-
pcb_component_id:
|
|
1680
|
-
pcb_smtpad_id:
|
|
1689
|
+
pcb_component_id: z75.string().optional(),
|
|
1690
|
+
pcb_smtpad_id: z75.string().optional()
|
|
1681
1691
|
});
|
|
1682
|
-
var pcb_solder_paste_pill =
|
|
1683
|
-
type:
|
|
1684
|
-
shape:
|
|
1692
|
+
var pcb_solder_paste_pill = z75.object({
|
|
1693
|
+
type: z75.literal("pcb_solder_paste"),
|
|
1694
|
+
shape: z75.literal("pill"),
|
|
1685
1695
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1686
|
-
pcb_group_id:
|
|
1687
|
-
subcircuit_id:
|
|
1696
|
+
pcb_group_id: z75.string().optional(),
|
|
1697
|
+
subcircuit_id: z75.string().optional(),
|
|
1688
1698
|
x: distance,
|
|
1689
1699
|
y: distance,
|
|
1690
|
-
width:
|
|
1691
|
-
height:
|
|
1692
|
-
radius:
|
|
1700
|
+
width: z75.number(),
|
|
1701
|
+
height: z75.number(),
|
|
1702
|
+
radius: z75.number(),
|
|
1693
1703
|
layer: layer_ref,
|
|
1694
|
-
pcb_component_id:
|
|
1695
|
-
pcb_smtpad_id:
|
|
1704
|
+
pcb_component_id: z75.string().optional(),
|
|
1705
|
+
pcb_smtpad_id: z75.string().optional()
|
|
1696
1706
|
});
|
|
1697
|
-
var pcb_solder_paste_rotated_rect =
|
|
1698
|
-
type:
|
|
1699
|
-
shape:
|
|
1707
|
+
var pcb_solder_paste_rotated_rect = z75.object({
|
|
1708
|
+
type: z75.literal("pcb_solder_paste"),
|
|
1709
|
+
shape: z75.literal("rotated_rect"),
|
|
1700
1710
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1701
|
-
pcb_group_id:
|
|
1702
|
-
subcircuit_id:
|
|
1711
|
+
pcb_group_id: z75.string().optional(),
|
|
1712
|
+
subcircuit_id: z75.string().optional(),
|
|
1703
1713
|
x: distance,
|
|
1704
1714
|
y: distance,
|
|
1705
|
-
width:
|
|
1706
|
-
height:
|
|
1715
|
+
width: z75.number(),
|
|
1716
|
+
height: z75.number(),
|
|
1707
1717
|
ccw_rotation: distance,
|
|
1708
1718
|
layer: layer_ref,
|
|
1709
|
-
pcb_component_id:
|
|
1710
|
-
pcb_smtpad_id:
|
|
1719
|
+
pcb_component_id: z75.string().optional(),
|
|
1720
|
+
pcb_smtpad_id: z75.string().optional()
|
|
1711
1721
|
});
|
|
1712
|
-
var pcb_solder_paste_oval =
|
|
1713
|
-
type:
|
|
1714
|
-
shape:
|
|
1722
|
+
var pcb_solder_paste_oval = z75.object({
|
|
1723
|
+
type: z75.literal("pcb_solder_paste"),
|
|
1724
|
+
shape: z75.literal("oval"),
|
|
1715
1725
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1716
|
-
pcb_group_id:
|
|
1717
|
-
subcircuit_id:
|
|
1726
|
+
pcb_group_id: z75.string().optional(),
|
|
1727
|
+
subcircuit_id: z75.string().optional(),
|
|
1718
1728
|
x: distance,
|
|
1719
1729
|
y: distance,
|
|
1720
|
-
width:
|
|
1721
|
-
height:
|
|
1730
|
+
width: z75.number(),
|
|
1731
|
+
height: z75.number(),
|
|
1722
1732
|
layer: layer_ref,
|
|
1723
|
-
pcb_component_id:
|
|
1724
|
-
pcb_smtpad_id:
|
|
1733
|
+
pcb_component_id: z75.string().optional(),
|
|
1734
|
+
pcb_smtpad_id: z75.string().optional()
|
|
1725
1735
|
});
|
|
1726
|
-
var pcb_solder_paste =
|
|
1736
|
+
var pcb_solder_paste = z75.union([
|
|
1727
1737
|
pcb_solder_paste_circle,
|
|
1728
1738
|
pcb_solder_paste_rect,
|
|
1729
1739
|
pcb_solder_paste_pill,
|
|
@@ -1739,146 +1749,146 @@ expectTypesMatch(
|
|
|
1739
1749
|
expectTypesMatch(true);
|
|
1740
1750
|
|
|
1741
1751
|
// src/pcb/pcb_text.ts
|
|
1742
|
-
import { z as
|
|
1743
|
-
var pcb_text =
|
|
1744
|
-
type:
|
|
1752
|
+
import { z as z76 } from "zod";
|
|
1753
|
+
var pcb_text = z76.object({
|
|
1754
|
+
type: z76.literal("pcb_text"),
|
|
1745
1755
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
1746
|
-
pcb_group_id:
|
|
1747
|
-
subcircuit_id:
|
|
1748
|
-
text:
|
|
1756
|
+
pcb_group_id: z76.string().optional(),
|
|
1757
|
+
subcircuit_id: z76.string().optional(),
|
|
1758
|
+
text: z76.string(),
|
|
1749
1759
|
center: point,
|
|
1750
1760
|
layer: layer_ref,
|
|
1751
1761
|
width: length,
|
|
1752
1762
|
height: length,
|
|
1753
|
-
lines:
|
|
1763
|
+
lines: z76.number(),
|
|
1754
1764
|
// @ts-ignore
|
|
1755
|
-
align:
|
|
1765
|
+
align: z76.enum(["bottom-left"])
|
|
1756
1766
|
}).describe("Defines text on the PCB");
|
|
1757
1767
|
expectTypesMatch(true);
|
|
1758
1768
|
|
|
1759
1769
|
// src/pcb/pcb_trace.ts
|
|
1760
|
-
import { z as
|
|
1761
|
-
var pcb_trace_route_point_wire =
|
|
1762
|
-
route_type:
|
|
1770
|
+
import { z as z77 } from "zod";
|
|
1771
|
+
var pcb_trace_route_point_wire = z77.object({
|
|
1772
|
+
route_type: z77.literal("wire"),
|
|
1763
1773
|
x: distance,
|
|
1764
1774
|
y: distance,
|
|
1765
1775
|
width: distance,
|
|
1766
|
-
start_pcb_port_id:
|
|
1767
|
-
end_pcb_port_id:
|
|
1776
|
+
start_pcb_port_id: z77.string().optional(),
|
|
1777
|
+
end_pcb_port_id: z77.string().optional(),
|
|
1768
1778
|
layer: layer_ref
|
|
1769
1779
|
});
|
|
1770
|
-
var pcb_trace_route_point_via =
|
|
1771
|
-
route_type:
|
|
1780
|
+
var pcb_trace_route_point_via = z77.object({
|
|
1781
|
+
route_type: z77.literal("via"),
|
|
1772
1782
|
x: distance,
|
|
1773
1783
|
y: distance,
|
|
1774
1784
|
hole_diameter: distance.optional(),
|
|
1775
1785
|
outer_diameter: distance.optional(),
|
|
1776
|
-
from_layer:
|
|
1777
|
-
to_layer:
|
|
1786
|
+
from_layer: z77.string(),
|
|
1787
|
+
to_layer: z77.string()
|
|
1778
1788
|
});
|
|
1779
|
-
var pcb_trace_route_point =
|
|
1789
|
+
var pcb_trace_route_point = z77.union([
|
|
1780
1790
|
pcb_trace_route_point_wire,
|
|
1781
1791
|
pcb_trace_route_point_via
|
|
1782
1792
|
]);
|
|
1783
|
-
var pcb_trace =
|
|
1784
|
-
type:
|
|
1785
|
-
source_trace_id:
|
|
1786
|
-
pcb_component_id:
|
|
1793
|
+
var pcb_trace = z77.object({
|
|
1794
|
+
type: z77.literal("pcb_trace"),
|
|
1795
|
+
source_trace_id: z77.string().optional(),
|
|
1796
|
+
pcb_component_id: z77.string().optional(),
|
|
1787
1797
|
pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
|
|
1788
|
-
pcb_group_id:
|
|
1789
|
-
subcircuit_id:
|
|
1790
|
-
route_thickness_mode:
|
|
1791
|
-
route_order_index:
|
|
1792
|
-
should_round_corners:
|
|
1793
|
-
trace_length:
|
|
1794
|
-
highlight_color:
|
|
1795
|
-
route:
|
|
1798
|
+
pcb_group_id: z77.string().optional(),
|
|
1799
|
+
subcircuit_id: z77.string().optional(),
|
|
1800
|
+
route_thickness_mode: z77.enum(["constant", "interpolated"]).default("constant").optional(),
|
|
1801
|
+
route_order_index: z77.number().optional(),
|
|
1802
|
+
should_round_corners: z77.boolean().optional(),
|
|
1803
|
+
trace_length: z77.number().optional(),
|
|
1804
|
+
highlight_color: z77.string().optional(),
|
|
1805
|
+
route: z77.array(pcb_trace_route_point)
|
|
1796
1806
|
}).describe("Defines a trace on the PCB");
|
|
1797
1807
|
expectTypesMatch(true);
|
|
1798
1808
|
expectTypesMatch(true);
|
|
1799
1809
|
|
|
1800
1810
|
// src/pcb/pcb_trace_error.ts
|
|
1801
|
-
import { z as
|
|
1802
|
-
var pcb_trace_error =
|
|
1803
|
-
type:
|
|
1811
|
+
import { z as z78 } from "zod";
|
|
1812
|
+
var pcb_trace_error = z78.object({
|
|
1813
|
+
type: z78.literal("pcb_trace_error"),
|
|
1804
1814
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
1805
|
-
error_type:
|
|
1806
|
-
message:
|
|
1815
|
+
error_type: z78.literal("pcb_trace_error").default("pcb_trace_error"),
|
|
1816
|
+
message: z78.string(),
|
|
1807
1817
|
center: point.optional(),
|
|
1808
|
-
pcb_trace_id:
|
|
1809
|
-
source_trace_id:
|
|
1810
|
-
pcb_component_ids:
|
|
1811
|
-
pcb_port_ids:
|
|
1812
|
-
subcircuit_id:
|
|
1818
|
+
pcb_trace_id: z78.string(),
|
|
1819
|
+
source_trace_id: z78.string(),
|
|
1820
|
+
pcb_component_ids: z78.array(z78.string()),
|
|
1821
|
+
pcb_port_ids: z78.array(z78.string()),
|
|
1822
|
+
subcircuit_id: z78.string().optional()
|
|
1813
1823
|
}).describe("Defines a trace error on the PCB");
|
|
1814
1824
|
expectTypesMatch(true);
|
|
1815
1825
|
|
|
1816
1826
|
// src/pcb/pcb_trace_missing_error.ts
|
|
1817
|
-
import { z as
|
|
1818
|
-
var pcb_trace_missing_error =
|
|
1819
|
-
type:
|
|
1827
|
+
import { z as z79 } from "zod";
|
|
1828
|
+
var pcb_trace_missing_error = z79.object({
|
|
1829
|
+
type: z79.literal("pcb_trace_missing_error"),
|
|
1820
1830
|
pcb_trace_missing_error_id: getZodPrefixedIdWithDefault(
|
|
1821
1831
|
"pcb_trace_missing_error"
|
|
1822
1832
|
),
|
|
1823
|
-
error_type:
|
|
1824
|
-
message:
|
|
1833
|
+
error_type: z79.literal("pcb_trace_missing_error").default("pcb_trace_missing_error"),
|
|
1834
|
+
message: z79.string(),
|
|
1825
1835
|
center: point.optional(),
|
|
1826
|
-
source_trace_id:
|
|
1827
|
-
pcb_component_ids:
|
|
1828
|
-
pcb_port_ids:
|
|
1829
|
-
subcircuit_id:
|
|
1836
|
+
source_trace_id: z79.string(),
|
|
1837
|
+
pcb_component_ids: z79.array(z79.string()),
|
|
1838
|
+
pcb_port_ids: z79.array(z79.string()),
|
|
1839
|
+
subcircuit_id: z79.string().optional()
|
|
1830
1840
|
}).describe(
|
|
1831
1841
|
"Defines an error when a source trace has no corresponding PCB trace"
|
|
1832
1842
|
);
|
|
1833
1843
|
expectTypesMatch(true);
|
|
1834
1844
|
|
|
1835
1845
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
1836
|
-
import { z as
|
|
1837
|
-
var pcb_port_not_matched_error =
|
|
1838
|
-
type:
|
|
1846
|
+
import { z as z80 } from "zod";
|
|
1847
|
+
var pcb_port_not_matched_error = z80.object({
|
|
1848
|
+
type: z80.literal("pcb_port_not_matched_error"),
|
|
1839
1849
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
1840
|
-
error_type:
|
|
1841
|
-
message:
|
|
1842
|
-
pcb_component_ids:
|
|
1843
|
-
subcircuit_id:
|
|
1850
|
+
error_type: z80.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
|
|
1851
|
+
message: z80.string(),
|
|
1852
|
+
pcb_component_ids: z80.array(z80.string()),
|
|
1853
|
+
subcircuit_id: z80.string().optional()
|
|
1844
1854
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
1845
1855
|
expectTypesMatch(true);
|
|
1846
1856
|
|
|
1847
1857
|
// src/pcb/pcb_port_not_connected_error.ts
|
|
1848
|
-
import { z as
|
|
1849
|
-
var pcb_port_not_connected_error =
|
|
1850
|
-
type:
|
|
1858
|
+
import { z as z81 } from "zod";
|
|
1859
|
+
var pcb_port_not_connected_error = z81.object({
|
|
1860
|
+
type: z81.literal("pcb_port_not_connected_error"),
|
|
1851
1861
|
pcb_port_not_connected_error_id: getZodPrefixedIdWithDefault(
|
|
1852
1862
|
"pcb_port_not_connected_error"
|
|
1853
1863
|
),
|
|
1854
|
-
error_type:
|
|
1855
|
-
message:
|
|
1856
|
-
pcb_port_ids:
|
|
1857
|
-
pcb_component_ids:
|
|
1858
|
-
subcircuit_id:
|
|
1864
|
+
error_type: z81.literal("pcb_port_not_connected_error").default("pcb_port_not_connected_error"),
|
|
1865
|
+
message: z81.string(),
|
|
1866
|
+
pcb_port_ids: z81.array(z81.string()),
|
|
1867
|
+
pcb_component_ids: z81.array(z81.string()),
|
|
1868
|
+
subcircuit_id: z81.string().optional()
|
|
1859
1869
|
}).describe("Defines an error when a pcb port is not connected to any trace");
|
|
1860
1870
|
expectTypesMatch(
|
|
1861
1871
|
true
|
|
1862
1872
|
);
|
|
1863
1873
|
|
|
1864
1874
|
// src/pcb/pcb_net.ts
|
|
1865
|
-
import { z as
|
|
1866
|
-
var pcb_net =
|
|
1867
|
-
type:
|
|
1875
|
+
import { z as z82 } from "zod";
|
|
1876
|
+
var pcb_net = z82.object({
|
|
1877
|
+
type: z82.literal("pcb_net"),
|
|
1868
1878
|
pcb_net_id: getZodPrefixedIdWithDefault("pcb_net"),
|
|
1869
|
-
source_net_id:
|
|
1870
|
-
highlight_color:
|
|
1879
|
+
source_net_id: z82.string().optional(),
|
|
1880
|
+
highlight_color: z82.string().optional()
|
|
1871
1881
|
}).describe("Defines a net on the PCB");
|
|
1872
1882
|
expectTypesMatch(true);
|
|
1873
1883
|
|
|
1874
1884
|
// src/pcb/pcb_via.ts
|
|
1875
|
-
import { z as
|
|
1876
|
-
var pcb_via =
|
|
1877
|
-
type:
|
|
1885
|
+
import { z as z83 } from "zod";
|
|
1886
|
+
var pcb_via = z83.object({
|
|
1887
|
+
type: z83.literal("pcb_via"),
|
|
1878
1888
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
1879
|
-
pcb_group_id:
|
|
1880
|
-
subcircuit_id:
|
|
1881
|
-
subcircuit_connectivity_map_key:
|
|
1889
|
+
pcb_group_id: z83.string().optional(),
|
|
1890
|
+
subcircuit_id: z83.string().optional(),
|
|
1891
|
+
subcircuit_connectivity_map_key: z83.string().optional(),
|
|
1882
1892
|
x: distance,
|
|
1883
1893
|
y: distance,
|
|
1884
1894
|
outer_diameter: distance.default("0.6mm"),
|
|
@@ -1887,75 +1897,75 @@ var pcb_via = z82.object({
|
|
|
1887
1897
|
from_layer: layer_ref.optional(),
|
|
1888
1898
|
/** @deprecated */
|
|
1889
1899
|
to_layer: layer_ref.optional(),
|
|
1890
|
-
layers:
|
|
1891
|
-
pcb_trace_id:
|
|
1892
|
-
net_is_assignable:
|
|
1893
|
-
net_assigned:
|
|
1900
|
+
layers: z83.array(layer_ref),
|
|
1901
|
+
pcb_trace_id: z83.string().optional(),
|
|
1902
|
+
net_is_assignable: z83.boolean().optional(),
|
|
1903
|
+
net_assigned: z83.boolean().optional()
|
|
1894
1904
|
}).describe("Defines a via on the PCB");
|
|
1895
1905
|
expectTypesMatch(true);
|
|
1896
1906
|
|
|
1897
1907
|
// src/pcb/pcb_board.ts
|
|
1898
|
-
import { z as
|
|
1899
|
-
var pcb_board =
|
|
1900
|
-
type:
|
|
1908
|
+
import { z as z84 } from "zod";
|
|
1909
|
+
var pcb_board = z84.object({
|
|
1910
|
+
type: z84.literal("pcb_board"),
|
|
1901
1911
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
1902
|
-
pcb_panel_id:
|
|
1903
|
-
is_subcircuit:
|
|
1904
|
-
subcircuit_id:
|
|
1912
|
+
pcb_panel_id: z84.string().optional(),
|
|
1913
|
+
is_subcircuit: z84.boolean().optional(),
|
|
1914
|
+
subcircuit_id: z84.string().optional(),
|
|
1905
1915
|
width: length.optional(),
|
|
1906
1916
|
height: length.optional(),
|
|
1907
1917
|
center: point,
|
|
1908
1918
|
thickness: length.optional().default(1.4),
|
|
1909
|
-
num_layers:
|
|
1910
|
-
outline:
|
|
1911
|
-
shape:
|
|
1912
|
-
material:
|
|
1919
|
+
num_layers: z84.number().optional().default(4),
|
|
1920
|
+
outline: z84.array(point).optional(),
|
|
1921
|
+
shape: z84.enum(["rect", "polygon"]).optional(),
|
|
1922
|
+
material: z84.enum(["fr4", "fr1"]).default("fr4")
|
|
1913
1923
|
}).describe("Defines the board outline of the PCB");
|
|
1914
1924
|
expectTypesMatch(true);
|
|
1915
1925
|
|
|
1916
1926
|
// src/pcb/pcb_panel.ts
|
|
1917
|
-
import { z as
|
|
1918
|
-
var pcb_panel =
|
|
1919
|
-
type:
|
|
1927
|
+
import { z as z85 } from "zod";
|
|
1928
|
+
var pcb_panel = z85.object({
|
|
1929
|
+
type: z85.literal("pcb_panel"),
|
|
1920
1930
|
pcb_panel_id: getZodPrefixedIdWithDefault("pcb_panel"),
|
|
1921
1931
|
width: length,
|
|
1922
1932
|
height: length,
|
|
1923
1933
|
center: point,
|
|
1924
|
-
covered_with_solder_mask:
|
|
1934
|
+
covered_with_solder_mask: z85.boolean().optional().default(true)
|
|
1925
1935
|
}).describe("Defines a PCB panel that can contain multiple boards");
|
|
1926
1936
|
expectTypesMatch(true);
|
|
1927
1937
|
|
|
1928
1938
|
// src/pcb/pcb_placement_error.ts
|
|
1929
|
-
import { z as
|
|
1930
|
-
var pcb_placement_error =
|
|
1931
|
-
type:
|
|
1939
|
+
import { z as z86 } from "zod";
|
|
1940
|
+
var pcb_placement_error = z86.object({
|
|
1941
|
+
type: z86.literal("pcb_placement_error"),
|
|
1932
1942
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
1933
|
-
error_type:
|
|
1934
|
-
message:
|
|
1935
|
-
subcircuit_id:
|
|
1943
|
+
error_type: z86.literal("pcb_placement_error").default("pcb_placement_error"),
|
|
1944
|
+
message: z86.string(),
|
|
1945
|
+
subcircuit_id: z86.string().optional()
|
|
1936
1946
|
}).describe("Defines a placement error on the PCB");
|
|
1937
1947
|
expectTypesMatch(true);
|
|
1938
1948
|
|
|
1939
1949
|
// src/pcb/pcb_trace_hint.ts
|
|
1940
|
-
import { z as
|
|
1941
|
-
var pcb_trace_hint =
|
|
1942
|
-
type:
|
|
1950
|
+
import { z as z87 } from "zod";
|
|
1951
|
+
var pcb_trace_hint = z87.object({
|
|
1952
|
+
type: z87.literal("pcb_trace_hint"),
|
|
1943
1953
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
1944
|
-
pcb_port_id:
|
|
1945
|
-
pcb_component_id:
|
|
1946
|
-
route:
|
|
1947
|
-
subcircuit_id:
|
|
1954
|
+
pcb_port_id: z87.string(),
|
|
1955
|
+
pcb_component_id: z87.string(),
|
|
1956
|
+
route: z87.array(route_hint_point),
|
|
1957
|
+
subcircuit_id: z87.string().optional()
|
|
1948
1958
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
1949
1959
|
expectTypesMatch(true);
|
|
1950
1960
|
|
|
1951
1961
|
// src/pcb/pcb_silkscreen_line.ts
|
|
1952
|
-
import { z as
|
|
1953
|
-
var pcb_silkscreen_line =
|
|
1954
|
-
type:
|
|
1962
|
+
import { z as z88 } from "zod";
|
|
1963
|
+
var pcb_silkscreen_line = z88.object({
|
|
1964
|
+
type: z88.literal("pcb_silkscreen_line"),
|
|
1955
1965
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
1956
|
-
pcb_component_id:
|
|
1957
|
-
pcb_group_id:
|
|
1958
|
-
subcircuit_id:
|
|
1966
|
+
pcb_component_id: z88.string(),
|
|
1967
|
+
pcb_group_id: z88.string().optional(),
|
|
1968
|
+
subcircuit_id: z88.string().optional(),
|
|
1959
1969
|
stroke_width: distance.default("0.1mm"),
|
|
1960
1970
|
x1: distance,
|
|
1961
1971
|
y1: distance,
|
|
@@ -1966,32 +1976,32 @@ var pcb_silkscreen_line = z87.object({
|
|
|
1966
1976
|
expectTypesMatch(true);
|
|
1967
1977
|
|
|
1968
1978
|
// src/pcb/pcb_silkscreen_path.ts
|
|
1969
|
-
import { z as
|
|
1970
|
-
var pcb_silkscreen_path =
|
|
1971
|
-
type:
|
|
1979
|
+
import { z as z89 } from "zod";
|
|
1980
|
+
var pcb_silkscreen_path = z89.object({
|
|
1981
|
+
type: z89.literal("pcb_silkscreen_path"),
|
|
1972
1982
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
1973
|
-
pcb_component_id:
|
|
1974
|
-
pcb_group_id:
|
|
1975
|
-
subcircuit_id:
|
|
1983
|
+
pcb_component_id: z89.string(),
|
|
1984
|
+
pcb_group_id: z89.string().optional(),
|
|
1985
|
+
subcircuit_id: z89.string().optional(),
|
|
1976
1986
|
layer: visible_layer,
|
|
1977
|
-
route:
|
|
1987
|
+
route: z89.array(point),
|
|
1978
1988
|
stroke_width: length
|
|
1979
1989
|
}).describe("Defines a silkscreen path on the PCB");
|
|
1980
1990
|
expectTypesMatch(true);
|
|
1981
1991
|
|
|
1982
1992
|
// src/pcb/pcb_silkscreen_text.ts
|
|
1983
|
-
import { z as
|
|
1984
|
-
var pcb_silkscreen_text =
|
|
1985
|
-
type:
|
|
1993
|
+
import { z as z90 } from "zod";
|
|
1994
|
+
var pcb_silkscreen_text = z90.object({
|
|
1995
|
+
type: z90.literal("pcb_silkscreen_text"),
|
|
1986
1996
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
1987
|
-
pcb_group_id:
|
|
1988
|
-
subcircuit_id:
|
|
1989
|
-
font:
|
|
1997
|
+
pcb_group_id: z90.string().optional(),
|
|
1998
|
+
subcircuit_id: z90.string().optional(),
|
|
1999
|
+
font: z90.literal("tscircuit2024").default("tscircuit2024"),
|
|
1990
2000
|
font_size: distance.default("0.2mm"),
|
|
1991
|
-
pcb_component_id:
|
|
1992
|
-
text:
|
|
1993
|
-
is_knockout:
|
|
1994
|
-
knockout_padding:
|
|
2001
|
+
pcb_component_id: z90.string(),
|
|
2002
|
+
text: z90.string(),
|
|
2003
|
+
is_knockout: z90.boolean().default(false).optional(),
|
|
2004
|
+
knockout_padding: z90.object({
|
|
1995
2005
|
left: length,
|
|
1996
2006
|
top: length,
|
|
1997
2007
|
bottom: length,
|
|
@@ -2002,27 +2012,27 @@ var pcb_silkscreen_text = z89.object({
|
|
|
2002
2012
|
bottom: "0.2mm",
|
|
2003
2013
|
right: "0.2mm"
|
|
2004
2014
|
}).optional(),
|
|
2005
|
-
ccw_rotation:
|
|
2015
|
+
ccw_rotation: z90.number().optional(),
|
|
2006
2016
|
layer: layer_ref,
|
|
2007
|
-
is_mirrored:
|
|
2017
|
+
is_mirrored: z90.boolean().default(false).optional(),
|
|
2008
2018
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2009
2019
|
anchor_alignment: ninePointAnchor.default("center")
|
|
2010
2020
|
}).describe("Defines silkscreen text on the PCB");
|
|
2011
2021
|
expectTypesMatch(true);
|
|
2012
2022
|
|
|
2013
2023
|
// src/pcb/pcb_copper_text.ts
|
|
2014
|
-
import { z as
|
|
2015
|
-
var pcb_copper_text =
|
|
2016
|
-
type:
|
|
2024
|
+
import { z as z91 } from "zod";
|
|
2025
|
+
var pcb_copper_text = z91.object({
|
|
2026
|
+
type: z91.literal("pcb_copper_text"),
|
|
2017
2027
|
pcb_copper_text_id: getZodPrefixedIdWithDefault("pcb_copper_text"),
|
|
2018
|
-
pcb_group_id:
|
|
2019
|
-
subcircuit_id:
|
|
2020
|
-
font:
|
|
2028
|
+
pcb_group_id: z91.string().optional(),
|
|
2029
|
+
subcircuit_id: z91.string().optional(),
|
|
2030
|
+
font: z91.literal("tscircuit2024").default("tscircuit2024"),
|
|
2021
2031
|
font_size: distance.default("0.2mm"),
|
|
2022
|
-
pcb_component_id:
|
|
2023
|
-
text:
|
|
2024
|
-
is_knockout:
|
|
2025
|
-
knockout_padding:
|
|
2032
|
+
pcb_component_id: z91.string(),
|
|
2033
|
+
text: z91.string(),
|
|
2034
|
+
is_knockout: z91.boolean().default(false).optional(),
|
|
2035
|
+
knockout_padding: z91.object({
|
|
2026
2036
|
left: length,
|
|
2027
2037
|
top: length,
|
|
2028
2038
|
bottom: length,
|
|
@@ -2033,44 +2043,44 @@ var pcb_copper_text = z90.object({
|
|
|
2033
2043
|
bottom: "0.2mm",
|
|
2034
2044
|
right: "0.2mm"
|
|
2035
2045
|
}).optional(),
|
|
2036
|
-
ccw_rotation:
|
|
2046
|
+
ccw_rotation: z91.number().optional(),
|
|
2037
2047
|
layer: layer_ref,
|
|
2038
|
-
is_mirrored:
|
|
2048
|
+
is_mirrored: z91.boolean().default(false).optional(),
|
|
2039
2049
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2040
2050
|
anchor_alignment: ninePointAnchor.default("center")
|
|
2041
2051
|
}).describe("Defines copper text on the PCB");
|
|
2042
2052
|
expectTypesMatch(true);
|
|
2043
2053
|
|
|
2044
2054
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
2045
|
-
import { z as
|
|
2046
|
-
var pcb_silkscreen_rect =
|
|
2047
|
-
type:
|
|
2055
|
+
import { z as z92 } from "zod";
|
|
2056
|
+
var pcb_silkscreen_rect = z92.object({
|
|
2057
|
+
type: z92.literal("pcb_silkscreen_rect"),
|
|
2048
2058
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
2049
|
-
pcb_component_id:
|
|
2050
|
-
pcb_group_id:
|
|
2051
|
-
subcircuit_id:
|
|
2059
|
+
pcb_component_id: z92.string(),
|
|
2060
|
+
pcb_group_id: z92.string().optional(),
|
|
2061
|
+
subcircuit_id: z92.string().optional(),
|
|
2052
2062
|
center: point,
|
|
2053
2063
|
width: length,
|
|
2054
2064
|
height: length,
|
|
2055
2065
|
layer: layer_ref,
|
|
2056
2066
|
stroke_width: length.default("1mm"),
|
|
2057
2067
|
corner_radius: length.optional(),
|
|
2058
|
-
is_filled:
|
|
2059
|
-
has_stroke:
|
|
2060
|
-
is_stroke_dashed:
|
|
2068
|
+
is_filled: z92.boolean().default(true).optional(),
|
|
2069
|
+
has_stroke: z92.boolean().optional(),
|
|
2070
|
+
is_stroke_dashed: z92.boolean().optional()
|
|
2061
2071
|
}).describe("Defines a silkscreen rect on the PCB");
|
|
2062
2072
|
expectTypesMatch(true);
|
|
2063
2073
|
|
|
2064
2074
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
2065
|
-
import { z as
|
|
2066
|
-
var pcb_silkscreen_circle =
|
|
2067
|
-
type:
|
|
2075
|
+
import { z as z93 } from "zod";
|
|
2076
|
+
var pcb_silkscreen_circle = z93.object({
|
|
2077
|
+
type: z93.literal("pcb_silkscreen_circle"),
|
|
2068
2078
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
2069
2079
|
"pcb_silkscreen_circle"
|
|
2070
2080
|
),
|
|
2071
|
-
pcb_component_id:
|
|
2072
|
-
pcb_group_id:
|
|
2073
|
-
subcircuit_id:
|
|
2081
|
+
pcb_component_id: z93.string(),
|
|
2082
|
+
pcb_group_id: z93.string().optional(),
|
|
2083
|
+
subcircuit_id: z93.string().optional(),
|
|
2074
2084
|
center: point,
|
|
2075
2085
|
radius: length,
|
|
2076
2086
|
layer: visible_layer,
|
|
@@ -2079,13 +2089,13 @@ var pcb_silkscreen_circle = z92.object({
|
|
|
2079
2089
|
expectTypesMatch(true);
|
|
2080
2090
|
|
|
2081
2091
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
2082
|
-
import { z as
|
|
2083
|
-
var pcb_silkscreen_oval =
|
|
2084
|
-
type:
|
|
2092
|
+
import { z as z94 } from "zod";
|
|
2093
|
+
var pcb_silkscreen_oval = z94.object({
|
|
2094
|
+
type: z94.literal("pcb_silkscreen_oval"),
|
|
2085
2095
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
2086
|
-
pcb_component_id:
|
|
2087
|
-
pcb_group_id:
|
|
2088
|
-
subcircuit_id:
|
|
2096
|
+
pcb_component_id: z94.string(),
|
|
2097
|
+
pcb_group_id: z94.string().optional(),
|
|
2098
|
+
subcircuit_id: z94.string().optional(),
|
|
2089
2099
|
center: point,
|
|
2090
2100
|
radius_x: distance,
|
|
2091
2101
|
radius_y: distance,
|
|
@@ -2094,255 +2104,255 @@ var pcb_silkscreen_oval = z93.object({
|
|
|
2094
2104
|
expectTypesMatch(true);
|
|
2095
2105
|
|
|
2096
2106
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
2097
|
-
import { z as
|
|
2098
|
-
var pcb_fabrication_note_text =
|
|
2099
|
-
type:
|
|
2107
|
+
import { z as z95 } from "zod";
|
|
2108
|
+
var pcb_fabrication_note_text = z95.object({
|
|
2109
|
+
type: z95.literal("pcb_fabrication_note_text"),
|
|
2100
2110
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
2101
2111
|
"pcb_fabrication_note_text"
|
|
2102
2112
|
),
|
|
2103
|
-
subcircuit_id:
|
|
2104
|
-
pcb_group_id:
|
|
2105
|
-
font:
|
|
2113
|
+
subcircuit_id: z95.string().optional(),
|
|
2114
|
+
pcb_group_id: z95.string().optional(),
|
|
2115
|
+
font: z95.literal("tscircuit2024").default("tscircuit2024"),
|
|
2106
2116
|
font_size: distance.default("1mm"),
|
|
2107
|
-
pcb_component_id:
|
|
2108
|
-
text:
|
|
2117
|
+
pcb_component_id: z95.string(),
|
|
2118
|
+
text: z95.string(),
|
|
2109
2119
|
layer: visible_layer,
|
|
2110
2120
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2111
|
-
anchor_alignment:
|
|
2112
|
-
color:
|
|
2121
|
+
anchor_alignment: z95.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
2122
|
+
color: z95.string().optional()
|
|
2113
2123
|
}).describe(
|
|
2114
2124
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
2115
2125
|
);
|
|
2116
2126
|
expectTypesMatch(true);
|
|
2117
2127
|
|
|
2118
2128
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
2119
|
-
import { z as
|
|
2120
|
-
var pcb_fabrication_note_path =
|
|
2121
|
-
type:
|
|
2129
|
+
import { z as z96 } from "zod";
|
|
2130
|
+
var pcb_fabrication_note_path = z96.object({
|
|
2131
|
+
type: z96.literal("pcb_fabrication_note_path"),
|
|
2122
2132
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
2123
2133
|
"pcb_fabrication_note_path"
|
|
2124
2134
|
),
|
|
2125
|
-
pcb_component_id:
|
|
2126
|
-
subcircuit_id:
|
|
2135
|
+
pcb_component_id: z96.string(),
|
|
2136
|
+
subcircuit_id: z96.string().optional(),
|
|
2127
2137
|
layer: layer_ref,
|
|
2128
|
-
route:
|
|
2138
|
+
route: z96.array(point),
|
|
2129
2139
|
stroke_width: length,
|
|
2130
|
-
color:
|
|
2140
|
+
color: z96.string().optional()
|
|
2131
2141
|
}).describe(
|
|
2132
2142
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
2133
2143
|
);
|
|
2134
2144
|
expectTypesMatch(true);
|
|
2135
2145
|
|
|
2136
2146
|
// src/pcb/pcb_fabrication_note_rect.ts
|
|
2137
|
-
import { z as
|
|
2138
|
-
var pcb_fabrication_note_rect =
|
|
2139
|
-
type:
|
|
2147
|
+
import { z as z97 } from "zod";
|
|
2148
|
+
var pcb_fabrication_note_rect = z97.object({
|
|
2149
|
+
type: z97.literal("pcb_fabrication_note_rect"),
|
|
2140
2150
|
pcb_fabrication_note_rect_id: getZodPrefixedIdWithDefault(
|
|
2141
2151
|
"pcb_fabrication_note_rect"
|
|
2142
2152
|
),
|
|
2143
|
-
pcb_component_id:
|
|
2144
|
-
pcb_group_id:
|
|
2145
|
-
subcircuit_id:
|
|
2153
|
+
pcb_component_id: z97.string(),
|
|
2154
|
+
pcb_group_id: z97.string().optional(),
|
|
2155
|
+
subcircuit_id: z97.string().optional(),
|
|
2146
2156
|
center: point,
|
|
2147
2157
|
width: length,
|
|
2148
2158
|
height: length,
|
|
2149
2159
|
layer: visible_layer,
|
|
2150
2160
|
stroke_width: length.default("0.1mm"),
|
|
2151
2161
|
corner_radius: length.optional(),
|
|
2152
|
-
is_filled:
|
|
2153
|
-
has_stroke:
|
|
2154
|
-
is_stroke_dashed:
|
|
2155
|
-
color:
|
|
2162
|
+
is_filled: z97.boolean().optional(),
|
|
2163
|
+
has_stroke: z97.boolean().optional(),
|
|
2164
|
+
is_stroke_dashed: z97.boolean().optional(),
|
|
2165
|
+
color: z97.string().optional()
|
|
2156
2166
|
}).describe("Defines a fabrication note rectangle on the PCB");
|
|
2157
2167
|
expectTypesMatch(true);
|
|
2158
2168
|
|
|
2159
2169
|
// src/pcb/pcb_fabrication_note_dimension.ts
|
|
2160
|
-
import { z as
|
|
2161
|
-
var pcb_fabrication_note_dimension =
|
|
2162
|
-
type:
|
|
2170
|
+
import { z as z98 } from "zod";
|
|
2171
|
+
var pcb_fabrication_note_dimension = z98.object({
|
|
2172
|
+
type: z98.literal("pcb_fabrication_note_dimension"),
|
|
2163
2173
|
pcb_fabrication_note_dimension_id: getZodPrefixedIdWithDefault(
|
|
2164
2174
|
"pcb_fabrication_note_dimension"
|
|
2165
2175
|
),
|
|
2166
|
-
pcb_component_id:
|
|
2167
|
-
pcb_group_id:
|
|
2168
|
-
subcircuit_id:
|
|
2176
|
+
pcb_component_id: z98.string(),
|
|
2177
|
+
pcb_group_id: z98.string().optional(),
|
|
2178
|
+
subcircuit_id: z98.string().optional(),
|
|
2169
2179
|
layer: visible_layer,
|
|
2170
2180
|
from: point,
|
|
2171
2181
|
to: point,
|
|
2172
|
-
text:
|
|
2173
|
-
text_ccw_rotation:
|
|
2182
|
+
text: z98.string().optional(),
|
|
2183
|
+
text_ccw_rotation: z98.number().optional(),
|
|
2174
2184
|
offset: length.optional(),
|
|
2175
2185
|
offset_distance: length.optional(),
|
|
2176
|
-
offset_direction:
|
|
2177
|
-
x:
|
|
2178
|
-
y:
|
|
2186
|
+
offset_direction: z98.object({
|
|
2187
|
+
x: z98.number(),
|
|
2188
|
+
y: z98.number()
|
|
2179
2189
|
}).optional(),
|
|
2180
|
-
font:
|
|
2190
|
+
font: z98.literal("tscircuit2024").default("tscircuit2024"),
|
|
2181
2191
|
font_size: length.default("1mm"),
|
|
2182
|
-
color:
|
|
2192
|
+
color: z98.string().optional(),
|
|
2183
2193
|
arrow_size: length.default("1mm")
|
|
2184
2194
|
}).describe("Defines a measurement annotation within PCB fabrication notes");
|
|
2185
2195
|
expectTypesMatch(true);
|
|
2186
2196
|
|
|
2187
2197
|
// src/pcb/pcb_note_text.ts
|
|
2188
|
-
import { z as z98 } from "zod";
|
|
2189
|
-
var pcb_note_text = z98.object({
|
|
2190
|
-
type: z98.literal("pcb_note_text"),
|
|
2191
|
-
pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
|
|
2192
|
-
pcb_component_id: z98.string().optional(),
|
|
2193
|
-
pcb_group_id: z98.string().optional(),
|
|
2194
|
-
subcircuit_id: z98.string().optional(),
|
|
2195
|
-
name: z98.string().optional(),
|
|
2196
|
-
font: z98.literal("tscircuit2024").default("tscircuit2024"),
|
|
2197
|
-
font_size: distance.default("1mm"),
|
|
2198
|
-
text: z98.string().optional(),
|
|
2199
|
-
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2200
|
-
anchor_alignment: z98.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
2201
|
-
color: z98.string().optional()
|
|
2202
|
-
}).describe("Defines a documentation note in text on the PCB");
|
|
2203
|
-
expectTypesMatch(true);
|
|
2204
|
-
|
|
2205
|
-
// src/pcb/pcb_note_rect.ts
|
|
2206
2198
|
import { z as z99 } from "zod";
|
|
2207
|
-
var
|
|
2208
|
-
type: z99.literal("
|
|
2209
|
-
|
|
2199
|
+
var pcb_note_text = z99.object({
|
|
2200
|
+
type: z99.literal("pcb_note_text"),
|
|
2201
|
+
pcb_note_text_id: getZodPrefixedIdWithDefault("pcb_note_text"),
|
|
2210
2202
|
pcb_component_id: z99.string().optional(),
|
|
2211
2203
|
pcb_group_id: z99.string().optional(),
|
|
2212
2204
|
subcircuit_id: z99.string().optional(),
|
|
2213
2205
|
name: z99.string().optional(),
|
|
2206
|
+
font: z99.literal("tscircuit2024").default("tscircuit2024"),
|
|
2207
|
+
font_size: distance.default("1mm"),
|
|
2214
2208
|
text: z99.string().optional(),
|
|
2215
|
-
|
|
2216
|
-
|
|
2217
|
-
height: length,
|
|
2218
|
-
stroke_width: length.default("0.1mm"),
|
|
2219
|
-
corner_radius: length.optional(),
|
|
2220
|
-
is_filled: z99.boolean().optional(),
|
|
2221
|
-
has_stroke: z99.boolean().optional(),
|
|
2222
|
-
is_stroke_dashed: z99.boolean().optional(),
|
|
2209
|
+
anchor_position: point.default({ x: 0, y: 0 }),
|
|
2210
|
+
anchor_alignment: z99.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
2223
2211
|
color: z99.string().optional()
|
|
2224
|
-
}).describe("Defines a
|
|
2212
|
+
}).describe("Defines a documentation note in text on the PCB");
|
|
2225
2213
|
expectTypesMatch(true);
|
|
2226
2214
|
|
|
2227
|
-
// src/pcb/
|
|
2215
|
+
// src/pcb/pcb_note_rect.ts
|
|
2228
2216
|
import { z as z100 } from "zod";
|
|
2229
|
-
var
|
|
2230
|
-
type: z100.literal("
|
|
2231
|
-
|
|
2217
|
+
var pcb_note_rect = z100.object({
|
|
2218
|
+
type: z100.literal("pcb_note_rect"),
|
|
2219
|
+
pcb_note_rect_id: getZodPrefixedIdWithDefault("pcb_note_rect"),
|
|
2232
2220
|
pcb_component_id: z100.string().optional(),
|
|
2233
2221
|
pcb_group_id: z100.string().optional(),
|
|
2234
2222
|
subcircuit_id: z100.string().optional(),
|
|
2235
2223
|
name: z100.string().optional(),
|
|
2236
2224
|
text: z100.string().optional(),
|
|
2237
|
-
|
|
2225
|
+
center: point,
|
|
2226
|
+
width: length,
|
|
2227
|
+
height: length,
|
|
2238
2228
|
stroke_width: length.default("0.1mm"),
|
|
2229
|
+
corner_radius: length.optional(),
|
|
2230
|
+
is_filled: z100.boolean().optional(),
|
|
2231
|
+
has_stroke: z100.boolean().optional(),
|
|
2232
|
+
is_stroke_dashed: z100.boolean().optional(),
|
|
2239
2233
|
color: z100.string().optional()
|
|
2240
|
-
}).describe("Defines a
|
|
2234
|
+
}).describe("Defines a rectangular documentation note on the PCB");
|
|
2241
2235
|
expectTypesMatch(true);
|
|
2242
2236
|
|
|
2243
|
-
// src/pcb/
|
|
2237
|
+
// src/pcb/pcb_note_path.ts
|
|
2244
2238
|
import { z as z101 } from "zod";
|
|
2245
|
-
var
|
|
2246
|
-
type: z101.literal("
|
|
2247
|
-
|
|
2239
|
+
var pcb_note_path = z101.object({
|
|
2240
|
+
type: z101.literal("pcb_note_path"),
|
|
2241
|
+
pcb_note_path_id: getZodPrefixedIdWithDefault("pcb_note_path"),
|
|
2248
2242
|
pcb_component_id: z101.string().optional(),
|
|
2249
2243
|
pcb_group_id: z101.string().optional(),
|
|
2250
2244
|
subcircuit_id: z101.string().optional(),
|
|
2251
2245
|
name: z101.string().optional(),
|
|
2252
2246
|
text: z101.string().optional(),
|
|
2247
|
+
route: z101.array(point),
|
|
2248
|
+
stroke_width: length.default("0.1mm"),
|
|
2249
|
+
color: z101.string().optional()
|
|
2250
|
+
}).describe("Defines a polyline documentation note on the PCB");
|
|
2251
|
+
expectTypesMatch(true);
|
|
2252
|
+
|
|
2253
|
+
// src/pcb/pcb_note_line.ts
|
|
2254
|
+
import { z as z102 } from "zod";
|
|
2255
|
+
var pcb_note_line = z102.object({
|
|
2256
|
+
type: z102.literal("pcb_note_line"),
|
|
2257
|
+
pcb_note_line_id: getZodPrefixedIdWithDefault("pcb_note_line"),
|
|
2258
|
+
pcb_component_id: z102.string().optional(),
|
|
2259
|
+
pcb_group_id: z102.string().optional(),
|
|
2260
|
+
subcircuit_id: z102.string().optional(),
|
|
2261
|
+
name: z102.string().optional(),
|
|
2262
|
+
text: z102.string().optional(),
|
|
2253
2263
|
x1: distance,
|
|
2254
2264
|
y1: distance,
|
|
2255
2265
|
x2: distance,
|
|
2256
2266
|
y2: distance,
|
|
2257
2267
|
stroke_width: distance.default("0.1mm"),
|
|
2258
|
-
color:
|
|
2259
|
-
is_dashed:
|
|
2268
|
+
color: z102.string().optional(),
|
|
2269
|
+
is_dashed: z102.boolean().optional()
|
|
2260
2270
|
}).describe("Defines a straight documentation note line on the PCB");
|
|
2261
2271
|
expectTypesMatch(true);
|
|
2262
2272
|
|
|
2263
2273
|
// src/pcb/pcb_note_dimension.ts
|
|
2264
|
-
import { z as
|
|
2265
|
-
var pcb_note_dimension =
|
|
2266
|
-
type:
|
|
2274
|
+
import { z as z103 } from "zod";
|
|
2275
|
+
var pcb_note_dimension = z103.object({
|
|
2276
|
+
type: z103.literal("pcb_note_dimension"),
|
|
2267
2277
|
pcb_note_dimension_id: getZodPrefixedIdWithDefault("pcb_note_dimension"),
|
|
2268
|
-
pcb_component_id:
|
|
2269
|
-
pcb_group_id:
|
|
2270
|
-
subcircuit_id:
|
|
2271
|
-
name:
|
|
2278
|
+
pcb_component_id: z103.string().optional(),
|
|
2279
|
+
pcb_group_id: z103.string().optional(),
|
|
2280
|
+
subcircuit_id: z103.string().optional(),
|
|
2281
|
+
name: z103.string().optional(),
|
|
2272
2282
|
from: point,
|
|
2273
2283
|
to: point,
|
|
2274
|
-
text:
|
|
2275
|
-
text_ccw_rotation:
|
|
2284
|
+
text: z103.string().optional(),
|
|
2285
|
+
text_ccw_rotation: z103.number().optional(),
|
|
2276
2286
|
offset_distance: length.optional(),
|
|
2277
|
-
offset_direction:
|
|
2278
|
-
x:
|
|
2279
|
-
y:
|
|
2287
|
+
offset_direction: z103.object({
|
|
2288
|
+
x: z103.number(),
|
|
2289
|
+
y: z103.number()
|
|
2280
2290
|
}).optional(),
|
|
2281
|
-
font:
|
|
2291
|
+
font: z103.literal("tscircuit2024").default("tscircuit2024"),
|
|
2282
2292
|
font_size: length.default("1mm"),
|
|
2283
|
-
color:
|
|
2293
|
+
color: z103.string().optional(),
|
|
2284
2294
|
arrow_size: length.default("1mm")
|
|
2285
2295
|
}).describe("Defines a measurement annotation within PCB documentation notes");
|
|
2286
2296
|
expectTypesMatch(true);
|
|
2287
2297
|
|
|
2288
2298
|
// src/pcb/pcb_footprint_overlap_error.ts
|
|
2289
|
-
import { z as
|
|
2290
|
-
var pcb_footprint_overlap_error =
|
|
2291
|
-
type:
|
|
2299
|
+
import { z as z104 } from "zod";
|
|
2300
|
+
var pcb_footprint_overlap_error = z104.object({
|
|
2301
|
+
type: z104.literal("pcb_footprint_overlap_error"),
|
|
2292
2302
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
2293
|
-
error_type:
|
|
2294
|
-
message:
|
|
2295
|
-
pcb_smtpad_ids:
|
|
2296
|
-
pcb_plated_hole_ids:
|
|
2297
|
-
pcb_hole_ids:
|
|
2298
|
-
pcb_keepout_ids:
|
|
2303
|
+
error_type: z104.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
|
|
2304
|
+
message: z104.string(),
|
|
2305
|
+
pcb_smtpad_ids: z104.array(z104.string()).optional(),
|
|
2306
|
+
pcb_plated_hole_ids: z104.array(z104.string()).optional(),
|
|
2307
|
+
pcb_hole_ids: z104.array(z104.string()).optional(),
|
|
2308
|
+
pcb_keepout_ids: z104.array(z104.string()).optional()
|
|
2299
2309
|
}).describe("Error emitted when a pcb footprint overlaps with another element");
|
|
2300
2310
|
expectTypesMatch(
|
|
2301
2311
|
true
|
|
2302
2312
|
);
|
|
2303
2313
|
|
|
2304
2314
|
// src/pcb/pcb_keepout.ts
|
|
2305
|
-
import { z as
|
|
2306
|
-
var pcb_keepout =
|
|
2307
|
-
type:
|
|
2308
|
-
shape:
|
|
2309
|
-
pcb_group_id:
|
|
2310
|
-
subcircuit_id:
|
|
2315
|
+
import { z as z105 } from "zod";
|
|
2316
|
+
var pcb_keepout = z105.object({
|
|
2317
|
+
type: z105.literal("pcb_keepout"),
|
|
2318
|
+
shape: z105.literal("rect"),
|
|
2319
|
+
pcb_group_id: z105.string().optional(),
|
|
2320
|
+
subcircuit_id: z105.string().optional(),
|
|
2311
2321
|
center: point,
|
|
2312
2322
|
width: distance,
|
|
2313
2323
|
height: distance,
|
|
2314
|
-
pcb_keepout_id:
|
|
2315
|
-
layers:
|
|
2324
|
+
pcb_keepout_id: z105.string(),
|
|
2325
|
+
layers: z105.array(z105.string()),
|
|
2316
2326
|
// Specify layers where the keepout applies
|
|
2317
|
-
description:
|
|
2327
|
+
description: z105.string().optional()
|
|
2318
2328
|
// Optional description of the keepout
|
|
2319
2329
|
}).or(
|
|
2320
|
-
|
|
2321
|
-
type:
|
|
2322
|
-
shape:
|
|
2323
|
-
pcb_group_id:
|
|
2324
|
-
subcircuit_id:
|
|
2330
|
+
z105.object({
|
|
2331
|
+
type: z105.literal("pcb_keepout"),
|
|
2332
|
+
shape: z105.literal("circle"),
|
|
2333
|
+
pcb_group_id: z105.string().optional(),
|
|
2334
|
+
subcircuit_id: z105.string().optional(),
|
|
2325
2335
|
center: point,
|
|
2326
2336
|
radius: distance,
|
|
2327
|
-
pcb_keepout_id:
|
|
2328
|
-
layers:
|
|
2337
|
+
pcb_keepout_id: z105.string(),
|
|
2338
|
+
layers: z105.array(z105.string()),
|
|
2329
2339
|
// Specify layers where the keepout applies
|
|
2330
|
-
description:
|
|
2340
|
+
description: z105.string().optional()
|
|
2331
2341
|
// Optional description of the keepout
|
|
2332
2342
|
})
|
|
2333
2343
|
);
|
|
2334
2344
|
expectTypesMatch(true);
|
|
2335
2345
|
|
|
2336
2346
|
// src/pcb/pcb_cutout.ts
|
|
2337
|
-
import { z as
|
|
2338
|
-
var pcb_cutout_base =
|
|
2339
|
-
type:
|
|
2347
|
+
import { z as z106 } from "zod";
|
|
2348
|
+
var pcb_cutout_base = z106.object({
|
|
2349
|
+
type: z106.literal("pcb_cutout"),
|
|
2340
2350
|
pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
|
|
2341
|
-
pcb_group_id:
|
|
2342
|
-
subcircuit_id:
|
|
2351
|
+
pcb_group_id: z106.string().optional(),
|
|
2352
|
+
subcircuit_id: z106.string().optional()
|
|
2343
2353
|
});
|
|
2344
2354
|
var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
2345
|
-
shape:
|
|
2355
|
+
shape: z106.literal("rect"),
|
|
2346
2356
|
center: point,
|
|
2347
2357
|
width: length,
|
|
2348
2358
|
height: length,
|
|
@@ -2350,17 +2360,17 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
|
2350
2360
|
});
|
|
2351
2361
|
expectTypesMatch(true);
|
|
2352
2362
|
var pcb_cutout_circle = pcb_cutout_base.extend({
|
|
2353
|
-
shape:
|
|
2363
|
+
shape: z106.literal("circle"),
|
|
2354
2364
|
center: point,
|
|
2355
2365
|
radius: length
|
|
2356
2366
|
});
|
|
2357
2367
|
expectTypesMatch(true);
|
|
2358
2368
|
var pcb_cutout_polygon = pcb_cutout_base.extend({
|
|
2359
|
-
shape:
|
|
2360
|
-
points:
|
|
2369
|
+
shape: z106.literal("polygon"),
|
|
2370
|
+
points: z106.array(point)
|
|
2361
2371
|
});
|
|
2362
2372
|
expectTypesMatch(true);
|
|
2363
|
-
var pcb_cutout =
|
|
2373
|
+
var pcb_cutout = z106.discriminatedUnion("shape", [
|
|
2364
2374
|
pcb_cutout_rect,
|
|
2365
2375
|
pcb_cutout_circle,
|
|
2366
2376
|
pcb_cutout_polygon
|
|
@@ -2368,121 +2378,121 @@ var pcb_cutout = z105.discriminatedUnion("shape", [
|
|
|
2368
2378
|
expectTypesMatch(true);
|
|
2369
2379
|
|
|
2370
2380
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
2371
|
-
import { z as
|
|
2372
|
-
var pcb_missing_footprint_error =
|
|
2373
|
-
type:
|
|
2381
|
+
import { z as z107 } from "zod";
|
|
2382
|
+
var pcb_missing_footprint_error = z107.object({
|
|
2383
|
+
type: z107.literal("pcb_missing_footprint_error"),
|
|
2374
2384
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
2375
2385
|
"pcb_missing_footprint_error"
|
|
2376
2386
|
),
|
|
2377
|
-
pcb_group_id:
|
|
2378
|
-
subcircuit_id:
|
|
2379
|
-
error_type:
|
|
2380
|
-
source_component_id:
|
|
2381
|
-
message:
|
|
2387
|
+
pcb_group_id: z107.string().optional(),
|
|
2388
|
+
subcircuit_id: z107.string().optional(),
|
|
2389
|
+
error_type: z107.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
|
|
2390
|
+
source_component_id: z107.string(),
|
|
2391
|
+
message: z107.string()
|
|
2382
2392
|
}).describe("Defines a missing footprint error on the PCB");
|
|
2383
2393
|
expectTypesMatch(
|
|
2384
2394
|
true
|
|
2385
2395
|
);
|
|
2386
2396
|
|
|
2387
2397
|
// src/pcb/external_footprint_load_error.ts
|
|
2388
|
-
import { z as
|
|
2389
|
-
var external_footprint_load_error =
|
|
2390
|
-
type:
|
|
2398
|
+
import { z as z108 } from "zod";
|
|
2399
|
+
var external_footprint_load_error = z108.object({
|
|
2400
|
+
type: z108.literal("external_footprint_load_error"),
|
|
2391
2401
|
external_footprint_load_error_id: getZodPrefixedIdWithDefault(
|
|
2392
2402
|
"external_footprint_load_error"
|
|
2393
2403
|
),
|
|
2394
|
-
pcb_component_id:
|
|
2395
|
-
source_component_id:
|
|
2396
|
-
pcb_group_id:
|
|
2397
|
-
subcircuit_id:
|
|
2398
|
-
footprinter_string:
|
|
2399
|
-
error_type:
|
|
2400
|
-
message:
|
|
2404
|
+
pcb_component_id: z108.string(),
|
|
2405
|
+
source_component_id: z108.string(),
|
|
2406
|
+
pcb_group_id: z108.string().optional(),
|
|
2407
|
+
subcircuit_id: z108.string().optional(),
|
|
2408
|
+
footprinter_string: z108.string().optional(),
|
|
2409
|
+
error_type: z108.literal("external_footprint_load_error").default("external_footprint_load_error"),
|
|
2410
|
+
message: z108.string()
|
|
2401
2411
|
}).describe("Defines an error when an external footprint fails to load");
|
|
2402
2412
|
expectTypesMatch(true);
|
|
2403
2413
|
|
|
2404
2414
|
// src/pcb/circuit_json_footprint_load_error.ts
|
|
2405
|
-
import { z as
|
|
2406
|
-
var circuit_json_footprint_load_error =
|
|
2407
|
-
type:
|
|
2415
|
+
import { z as z109 } from "zod";
|
|
2416
|
+
var circuit_json_footprint_load_error = z109.object({
|
|
2417
|
+
type: z109.literal("circuit_json_footprint_load_error"),
|
|
2408
2418
|
circuit_json_footprint_load_error_id: getZodPrefixedIdWithDefault(
|
|
2409
2419
|
"circuit_json_footprint_load_error"
|
|
2410
2420
|
),
|
|
2411
|
-
pcb_component_id:
|
|
2412
|
-
source_component_id:
|
|
2413
|
-
pcb_group_id:
|
|
2414
|
-
subcircuit_id:
|
|
2415
|
-
error_type:
|
|
2416
|
-
message:
|
|
2417
|
-
circuit_json:
|
|
2421
|
+
pcb_component_id: z109.string(),
|
|
2422
|
+
source_component_id: z109.string(),
|
|
2423
|
+
pcb_group_id: z109.string().optional(),
|
|
2424
|
+
subcircuit_id: z109.string().optional(),
|
|
2425
|
+
error_type: z109.literal("circuit_json_footprint_load_error").default("circuit_json_footprint_load_error"),
|
|
2426
|
+
message: z109.string(),
|
|
2427
|
+
circuit_json: z109.array(z109.any()).optional()
|
|
2418
2428
|
}).describe("Defines an error when a circuit JSON footprint fails to load");
|
|
2419
2429
|
expectTypesMatch(true);
|
|
2420
2430
|
|
|
2421
2431
|
// src/pcb/pcb_group.ts
|
|
2422
|
-
import { z as
|
|
2423
|
-
var pcb_group =
|
|
2424
|
-
type:
|
|
2432
|
+
import { z as z110 } from "zod";
|
|
2433
|
+
var pcb_group = z110.object({
|
|
2434
|
+
type: z110.literal("pcb_group"),
|
|
2425
2435
|
pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
|
|
2426
|
-
source_group_id:
|
|
2427
|
-
is_subcircuit:
|
|
2428
|
-
subcircuit_id:
|
|
2436
|
+
source_group_id: z110.string(),
|
|
2437
|
+
is_subcircuit: z110.boolean().optional(),
|
|
2438
|
+
subcircuit_id: z110.string().optional(),
|
|
2429
2439
|
width: length.optional(),
|
|
2430
2440
|
height: length.optional(),
|
|
2431
2441
|
center: point,
|
|
2432
|
-
outline:
|
|
2442
|
+
outline: z110.array(point).optional(),
|
|
2433
2443
|
anchor_position: point.optional(),
|
|
2434
|
-
anchor_alignment:
|
|
2435
|
-
pcb_component_ids:
|
|
2436
|
-
child_layout_mode:
|
|
2437
|
-
name:
|
|
2438
|
-
description:
|
|
2439
|
-
layout_mode:
|
|
2440
|
-
autorouter_configuration:
|
|
2444
|
+
anchor_alignment: z110.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).optional(),
|
|
2445
|
+
pcb_component_ids: z110.array(z110.string()),
|
|
2446
|
+
child_layout_mode: z110.enum(["packed", "none"]).optional(),
|
|
2447
|
+
name: z110.string().optional(),
|
|
2448
|
+
description: z110.string().optional(),
|
|
2449
|
+
layout_mode: z110.string().optional(),
|
|
2450
|
+
autorouter_configuration: z110.object({
|
|
2441
2451
|
trace_clearance: length
|
|
2442
2452
|
}).optional(),
|
|
2443
|
-
autorouter_used_string:
|
|
2453
|
+
autorouter_used_string: z110.string().optional()
|
|
2444
2454
|
}).describe("Defines a group of components on the PCB");
|
|
2445
2455
|
expectTypesMatch(true);
|
|
2446
2456
|
|
|
2447
2457
|
// src/pcb/pcb_autorouting_error.ts
|
|
2448
|
-
import { z as
|
|
2449
|
-
var pcb_autorouting_error =
|
|
2450
|
-
type:
|
|
2458
|
+
import { z as z111 } from "zod";
|
|
2459
|
+
var pcb_autorouting_error = z111.object({
|
|
2460
|
+
type: z111.literal("pcb_autorouting_error"),
|
|
2451
2461
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
|
|
2452
|
-
error_type:
|
|
2453
|
-
message:
|
|
2454
|
-
subcircuit_id:
|
|
2462
|
+
error_type: z111.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
|
|
2463
|
+
message: z111.string(),
|
|
2464
|
+
subcircuit_id: z111.string().optional()
|
|
2455
2465
|
}).describe("The autorouting has failed to route a portion of the board");
|
|
2456
2466
|
expectTypesMatch(true);
|
|
2457
2467
|
|
|
2458
2468
|
// src/pcb/pcb_manual_edit_conflict_warning.ts
|
|
2459
|
-
import { z as
|
|
2460
|
-
var pcb_manual_edit_conflict_warning =
|
|
2461
|
-
type:
|
|
2469
|
+
import { z as z112 } from "zod";
|
|
2470
|
+
var pcb_manual_edit_conflict_warning = z112.object({
|
|
2471
|
+
type: z112.literal("pcb_manual_edit_conflict_warning"),
|
|
2462
2472
|
pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
2463
2473
|
"pcb_manual_edit_conflict_warning"
|
|
2464
2474
|
),
|
|
2465
|
-
warning_type:
|
|
2466
|
-
message:
|
|
2467
|
-
pcb_component_id:
|
|
2468
|
-
pcb_group_id:
|
|
2469
|
-
subcircuit_id:
|
|
2470
|
-
source_component_id:
|
|
2475
|
+
warning_type: z112.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
|
|
2476
|
+
message: z112.string(),
|
|
2477
|
+
pcb_component_id: z112.string(),
|
|
2478
|
+
pcb_group_id: z112.string().optional(),
|
|
2479
|
+
subcircuit_id: z112.string().optional(),
|
|
2480
|
+
source_component_id: z112.string()
|
|
2471
2481
|
}).describe(
|
|
2472
2482
|
"Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
|
|
2473
2483
|
);
|
|
2474
2484
|
expectTypesMatch(true);
|
|
2475
2485
|
|
|
2476
2486
|
// src/pcb/pcb_breakout_point.ts
|
|
2477
|
-
import { z as
|
|
2478
|
-
var pcb_breakout_point =
|
|
2479
|
-
type:
|
|
2487
|
+
import { z as z113 } from "zod";
|
|
2488
|
+
var pcb_breakout_point = z113.object({
|
|
2489
|
+
type: z113.literal("pcb_breakout_point"),
|
|
2480
2490
|
pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
|
|
2481
|
-
pcb_group_id:
|
|
2482
|
-
subcircuit_id:
|
|
2483
|
-
source_trace_id:
|
|
2484
|
-
source_port_id:
|
|
2485
|
-
source_net_id:
|
|
2491
|
+
pcb_group_id: z113.string(),
|
|
2492
|
+
subcircuit_id: z113.string().optional(),
|
|
2493
|
+
source_trace_id: z113.string().optional(),
|
|
2494
|
+
source_port_id: z113.string().optional(),
|
|
2495
|
+
source_net_id: z113.string().optional(),
|
|
2486
2496
|
x: distance,
|
|
2487
2497
|
y: distance
|
|
2488
2498
|
}).describe(
|
|
@@ -2491,61 +2501,61 @@ var pcb_breakout_point = z112.object({
|
|
|
2491
2501
|
expectTypesMatch(true);
|
|
2492
2502
|
|
|
2493
2503
|
// src/pcb/pcb_ground_plane.ts
|
|
2494
|
-
import { z as
|
|
2495
|
-
var pcb_ground_plane =
|
|
2496
|
-
type:
|
|
2504
|
+
import { z as z114 } from "zod";
|
|
2505
|
+
var pcb_ground_plane = z114.object({
|
|
2506
|
+
type: z114.literal("pcb_ground_plane"),
|
|
2497
2507
|
pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
|
|
2498
|
-
source_pcb_ground_plane_id:
|
|
2499
|
-
source_net_id:
|
|
2500
|
-
pcb_group_id:
|
|
2501
|
-
subcircuit_id:
|
|
2508
|
+
source_pcb_ground_plane_id: z114.string(),
|
|
2509
|
+
source_net_id: z114.string(),
|
|
2510
|
+
pcb_group_id: z114.string().optional(),
|
|
2511
|
+
subcircuit_id: z114.string().optional()
|
|
2502
2512
|
}).describe("Defines a ground plane on the PCB");
|
|
2503
2513
|
expectTypesMatch(true);
|
|
2504
2514
|
|
|
2505
2515
|
// src/pcb/pcb_ground_plane_region.ts
|
|
2506
|
-
import { z as
|
|
2507
|
-
var pcb_ground_plane_region =
|
|
2508
|
-
type:
|
|
2516
|
+
import { z as z115 } from "zod";
|
|
2517
|
+
var pcb_ground_plane_region = z115.object({
|
|
2518
|
+
type: z115.literal("pcb_ground_plane_region"),
|
|
2509
2519
|
pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
|
|
2510
2520
|
"pcb_ground_plane_region"
|
|
2511
2521
|
),
|
|
2512
|
-
pcb_ground_plane_id:
|
|
2513
|
-
pcb_group_id:
|
|
2514
|
-
subcircuit_id:
|
|
2522
|
+
pcb_ground_plane_id: z115.string(),
|
|
2523
|
+
pcb_group_id: z115.string().optional(),
|
|
2524
|
+
subcircuit_id: z115.string().optional(),
|
|
2515
2525
|
layer: layer_ref,
|
|
2516
|
-
points:
|
|
2526
|
+
points: z115.array(point)
|
|
2517
2527
|
}).describe("Defines a polygon region of a ground plane");
|
|
2518
2528
|
expectTypesMatch(true);
|
|
2519
2529
|
|
|
2520
2530
|
// src/pcb/pcb_thermal_spoke.ts
|
|
2521
|
-
import { z as
|
|
2522
|
-
var pcb_thermal_spoke =
|
|
2523
|
-
type:
|
|
2531
|
+
import { z as z116 } from "zod";
|
|
2532
|
+
var pcb_thermal_spoke = z116.object({
|
|
2533
|
+
type: z116.literal("pcb_thermal_spoke"),
|
|
2524
2534
|
pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
|
|
2525
|
-
pcb_ground_plane_id:
|
|
2526
|
-
shape:
|
|
2527
|
-
spoke_count:
|
|
2535
|
+
pcb_ground_plane_id: z116.string(),
|
|
2536
|
+
shape: z116.string(),
|
|
2537
|
+
spoke_count: z116.number(),
|
|
2528
2538
|
spoke_thickness: distance,
|
|
2529
2539
|
spoke_inner_diameter: distance,
|
|
2530
2540
|
spoke_outer_diameter: distance,
|
|
2531
|
-
pcb_plated_hole_id:
|
|
2532
|
-
subcircuit_id:
|
|
2541
|
+
pcb_plated_hole_id: z116.string().optional(),
|
|
2542
|
+
subcircuit_id: z116.string().optional()
|
|
2533
2543
|
}).describe("Pattern for connecting a ground plane to a plated hole");
|
|
2534
2544
|
expectTypesMatch(true);
|
|
2535
2545
|
|
|
2536
2546
|
// src/pcb/pcb_copper_pour.ts
|
|
2537
|
-
import { z as
|
|
2538
|
-
var pcb_copper_pour_base =
|
|
2539
|
-
type:
|
|
2547
|
+
import { z as z117 } from "zod";
|
|
2548
|
+
var pcb_copper_pour_base = z117.object({
|
|
2549
|
+
type: z117.literal("pcb_copper_pour"),
|
|
2540
2550
|
pcb_copper_pour_id: getZodPrefixedIdWithDefault("pcb_copper_pour"),
|
|
2541
|
-
pcb_group_id:
|
|
2542
|
-
subcircuit_id:
|
|
2551
|
+
pcb_group_id: z117.string().optional(),
|
|
2552
|
+
subcircuit_id: z117.string().optional(),
|
|
2543
2553
|
layer: layer_ref,
|
|
2544
|
-
source_net_id:
|
|
2545
|
-
covered_with_solder_mask:
|
|
2554
|
+
source_net_id: z117.string().optional(),
|
|
2555
|
+
covered_with_solder_mask: z117.boolean().optional().default(true)
|
|
2546
2556
|
});
|
|
2547
2557
|
var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
|
|
2548
|
-
shape:
|
|
2558
|
+
shape: z117.literal("rect"),
|
|
2549
2559
|
center: point,
|
|
2550
2560
|
width: length,
|
|
2551
2561
|
height: length,
|
|
@@ -2553,16 +2563,16 @@ var pcb_copper_pour_rect = pcb_copper_pour_base.extend({
|
|
|
2553
2563
|
});
|
|
2554
2564
|
expectTypesMatch(true);
|
|
2555
2565
|
var pcb_copper_pour_brep = pcb_copper_pour_base.extend({
|
|
2556
|
-
shape:
|
|
2566
|
+
shape: z117.literal("brep"),
|
|
2557
2567
|
brep_shape
|
|
2558
2568
|
});
|
|
2559
2569
|
expectTypesMatch(true);
|
|
2560
2570
|
var pcb_copper_pour_polygon = pcb_copper_pour_base.extend({
|
|
2561
|
-
shape:
|
|
2562
|
-
points:
|
|
2571
|
+
shape: z117.literal("polygon"),
|
|
2572
|
+
points: z117.array(point)
|
|
2563
2573
|
});
|
|
2564
2574
|
expectTypesMatch(true);
|
|
2565
|
-
var pcb_copper_pour =
|
|
2575
|
+
var pcb_copper_pour = z117.discriminatedUnion("shape", [
|
|
2566
2576
|
pcb_copper_pour_rect,
|
|
2567
2577
|
pcb_copper_pour_brep,
|
|
2568
2578
|
pcb_copper_pour_polygon
|
|
@@ -2570,147 +2580,147 @@ var pcb_copper_pour = z116.discriminatedUnion("shape", [
|
|
|
2570
2580
|
expectTypesMatch(true);
|
|
2571
2581
|
|
|
2572
2582
|
// src/pcb/pcb_component_outside_board_error.ts
|
|
2573
|
-
import { z as
|
|
2574
|
-
var pcb_component_outside_board_error =
|
|
2575
|
-
type:
|
|
2583
|
+
import { z as z118 } from "zod";
|
|
2584
|
+
var pcb_component_outside_board_error = z118.object({
|
|
2585
|
+
type: z118.literal("pcb_component_outside_board_error"),
|
|
2576
2586
|
pcb_component_outside_board_error_id: getZodPrefixedIdWithDefault(
|
|
2577
2587
|
"pcb_component_outside_board_error"
|
|
2578
2588
|
),
|
|
2579
|
-
error_type:
|
|
2580
|
-
message:
|
|
2581
|
-
pcb_component_id:
|
|
2582
|
-
pcb_board_id:
|
|
2589
|
+
error_type: z118.literal("pcb_component_outside_board_error").default("pcb_component_outside_board_error"),
|
|
2590
|
+
message: z118.string(),
|
|
2591
|
+
pcb_component_id: z118.string(),
|
|
2592
|
+
pcb_board_id: z118.string(),
|
|
2583
2593
|
component_center: point,
|
|
2584
|
-
component_bounds:
|
|
2585
|
-
min_x:
|
|
2586
|
-
max_x:
|
|
2587
|
-
min_y:
|
|
2588
|
-
max_y:
|
|
2594
|
+
component_bounds: z118.object({
|
|
2595
|
+
min_x: z118.number(),
|
|
2596
|
+
max_x: z118.number(),
|
|
2597
|
+
min_y: z118.number(),
|
|
2598
|
+
max_y: z118.number()
|
|
2589
2599
|
}),
|
|
2590
|
-
subcircuit_id:
|
|
2591
|
-
source_component_id:
|
|
2600
|
+
subcircuit_id: z118.string().optional(),
|
|
2601
|
+
source_component_id: z118.string().optional()
|
|
2592
2602
|
}).describe(
|
|
2593
2603
|
"Error emitted when a PCB component is placed outside the board boundaries"
|
|
2594
2604
|
);
|
|
2595
2605
|
expectTypesMatch(true);
|
|
2596
2606
|
|
|
2597
2607
|
// src/pcb/pcb_component_invalid_layer_error.ts
|
|
2598
|
-
import { z as
|
|
2599
|
-
var pcb_component_invalid_layer_error =
|
|
2600
|
-
type:
|
|
2608
|
+
import { z as z119 } from "zod";
|
|
2609
|
+
var pcb_component_invalid_layer_error = z119.object({
|
|
2610
|
+
type: z119.literal("pcb_component_invalid_layer_error"),
|
|
2601
2611
|
pcb_component_invalid_layer_error_id: getZodPrefixedIdWithDefault(
|
|
2602
2612
|
"pcb_component_invalid_layer_error"
|
|
2603
2613
|
),
|
|
2604
|
-
error_type:
|
|
2605
|
-
message:
|
|
2606
|
-
pcb_component_id:
|
|
2607
|
-
source_component_id:
|
|
2614
|
+
error_type: z119.literal("pcb_component_invalid_layer_error").default("pcb_component_invalid_layer_error"),
|
|
2615
|
+
message: z119.string(),
|
|
2616
|
+
pcb_component_id: z119.string().optional(),
|
|
2617
|
+
source_component_id: z119.string(),
|
|
2608
2618
|
layer: layer_ref,
|
|
2609
|
-
subcircuit_id:
|
|
2619
|
+
subcircuit_id: z119.string().optional()
|
|
2610
2620
|
}).describe(
|
|
2611
2621
|
"Error emitted when a component is placed on an invalid layer (components can only be on 'top' or 'bottom' layers)"
|
|
2612
2622
|
);
|
|
2613
2623
|
expectTypesMatch(true);
|
|
2614
2624
|
|
|
2615
2625
|
// src/pcb/pcb_via_clearance_error.ts
|
|
2616
|
-
import { z as
|
|
2617
|
-
var pcb_via_clearance_error =
|
|
2618
|
-
type:
|
|
2626
|
+
import { z as z120 } from "zod";
|
|
2627
|
+
var pcb_via_clearance_error = z120.object({
|
|
2628
|
+
type: z120.literal("pcb_via_clearance_error"),
|
|
2619
2629
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
2620
|
-
error_type:
|
|
2621
|
-
message:
|
|
2622
|
-
pcb_via_ids:
|
|
2630
|
+
error_type: z120.literal("pcb_via_clearance_error").default("pcb_via_clearance_error"),
|
|
2631
|
+
message: z120.string(),
|
|
2632
|
+
pcb_via_ids: z120.array(z120.string()).min(2),
|
|
2623
2633
|
minimum_clearance: distance.optional(),
|
|
2624
2634
|
actual_clearance: distance.optional(),
|
|
2625
|
-
pcb_center:
|
|
2626
|
-
x:
|
|
2627
|
-
y:
|
|
2635
|
+
pcb_center: z120.object({
|
|
2636
|
+
x: z120.number().optional(),
|
|
2637
|
+
y: z120.number().optional()
|
|
2628
2638
|
}).optional(),
|
|
2629
|
-
subcircuit_id:
|
|
2639
|
+
subcircuit_id: z120.string().optional()
|
|
2630
2640
|
}).describe("Error emitted when vias are closer than the allowed clearance");
|
|
2631
2641
|
expectTypesMatch(true);
|
|
2632
2642
|
|
|
2633
2643
|
// src/pcb/pcb_courtyard_rect.ts
|
|
2634
|
-
import { z as
|
|
2635
|
-
var pcb_courtyard_rect =
|
|
2636
|
-
type:
|
|
2644
|
+
import { z as z121 } from "zod";
|
|
2645
|
+
var pcb_courtyard_rect = z121.object({
|
|
2646
|
+
type: z121.literal("pcb_courtyard_rect"),
|
|
2637
2647
|
pcb_courtyard_rect_id: getZodPrefixedIdWithDefault("pcb_courtyard_rect"),
|
|
2638
|
-
pcb_component_id:
|
|
2639
|
-
pcb_group_id:
|
|
2640
|
-
subcircuit_id:
|
|
2648
|
+
pcb_component_id: z121.string(),
|
|
2649
|
+
pcb_group_id: z121.string().optional(),
|
|
2650
|
+
subcircuit_id: z121.string().optional(),
|
|
2641
2651
|
center: point,
|
|
2642
2652
|
width: length,
|
|
2643
2653
|
height: length,
|
|
2644
2654
|
layer: visible_layer,
|
|
2645
|
-
color:
|
|
2655
|
+
color: z121.string().optional()
|
|
2646
2656
|
}).describe("Defines a courtyard rectangle on the PCB");
|
|
2647
2657
|
expectTypesMatch(true);
|
|
2648
2658
|
|
|
2649
2659
|
// src/pcb/pcb_courtyard_outline.ts
|
|
2650
|
-
import { z as
|
|
2651
|
-
var pcb_courtyard_outline =
|
|
2652
|
-
type:
|
|
2660
|
+
import { z as z122 } from "zod";
|
|
2661
|
+
var pcb_courtyard_outline = z122.object({
|
|
2662
|
+
type: z122.literal("pcb_courtyard_outline"),
|
|
2653
2663
|
pcb_courtyard_outline_id: getZodPrefixedIdWithDefault(
|
|
2654
2664
|
"pcb_courtyard_outline"
|
|
2655
2665
|
),
|
|
2656
|
-
pcb_component_id:
|
|
2657
|
-
pcb_group_id:
|
|
2658
|
-
subcircuit_id:
|
|
2666
|
+
pcb_component_id: z122.string(),
|
|
2667
|
+
pcb_group_id: z122.string().optional(),
|
|
2668
|
+
subcircuit_id: z122.string().optional(),
|
|
2659
2669
|
layer: visible_layer,
|
|
2660
|
-
outline:
|
|
2670
|
+
outline: z122.array(point).min(2),
|
|
2661
2671
|
stroke_width: length.default("0.1mm"),
|
|
2662
|
-
is_closed:
|
|
2663
|
-
is_stroke_dashed:
|
|
2664
|
-
color:
|
|
2672
|
+
is_closed: z122.boolean().optional(),
|
|
2673
|
+
is_stroke_dashed: z122.boolean().optional(),
|
|
2674
|
+
color: z122.string().optional()
|
|
2665
2675
|
}).describe("Defines a courtyard outline on the PCB");
|
|
2666
2676
|
expectTypesMatch(true);
|
|
2667
2677
|
|
|
2668
2678
|
// src/pcb/pcb_courtyard_polygon.ts
|
|
2669
|
-
import { z as
|
|
2670
|
-
var pcb_courtyard_polygon =
|
|
2671
|
-
type:
|
|
2679
|
+
import { z as z123 } from "zod";
|
|
2680
|
+
var pcb_courtyard_polygon = z123.object({
|
|
2681
|
+
type: z123.literal("pcb_courtyard_polygon"),
|
|
2672
2682
|
pcb_courtyard_polygon_id: getZodPrefixedIdWithDefault(
|
|
2673
2683
|
"pcb_courtyard_polygon"
|
|
2674
2684
|
),
|
|
2675
|
-
pcb_component_id:
|
|
2676
|
-
pcb_group_id:
|
|
2677
|
-
subcircuit_id:
|
|
2685
|
+
pcb_component_id: z123.string(),
|
|
2686
|
+
pcb_group_id: z123.string().optional(),
|
|
2687
|
+
subcircuit_id: z123.string().optional(),
|
|
2678
2688
|
layer: visible_layer,
|
|
2679
|
-
points:
|
|
2680
|
-
color:
|
|
2689
|
+
points: z123.array(point).min(3),
|
|
2690
|
+
color: z123.string().optional()
|
|
2681
2691
|
}).describe("Defines a courtyard polygon on the PCB");
|
|
2682
2692
|
expectTypesMatch(true);
|
|
2683
2693
|
|
|
2684
2694
|
// src/cad/cad_component.ts
|
|
2685
|
-
import { z as
|
|
2686
|
-
var cad_component =
|
|
2687
|
-
type:
|
|
2688
|
-
cad_component_id:
|
|
2689
|
-
pcb_component_id:
|
|
2690
|
-
source_component_id:
|
|
2695
|
+
import { z as z124 } from "zod";
|
|
2696
|
+
var cad_component = z124.object({
|
|
2697
|
+
type: z124.literal("cad_component"),
|
|
2698
|
+
cad_component_id: z124.string(),
|
|
2699
|
+
pcb_component_id: z124.string(),
|
|
2700
|
+
source_component_id: z124.string(),
|
|
2691
2701
|
position: point3,
|
|
2692
2702
|
rotation: point3.optional(),
|
|
2693
2703
|
size: point3.optional(),
|
|
2694
2704
|
layer: layer_ref.optional(),
|
|
2695
|
-
subcircuit_id:
|
|
2705
|
+
subcircuit_id: z124.string().optional(),
|
|
2696
2706
|
// These are all ways to generate/load the 3d model
|
|
2697
|
-
footprinter_string:
|
|
2698
|
-
model_obj_url:
|
|
2699
|
-
model_stl_url:
|
|
2700
|
-
model_3mf_url:
|
|
2701
|
-
model_gltf_url:
|
|
2702
|
-
model_glb_url:
|
|
2703
|
-
model_step_url:
|
|
2704
|
-
model_wrl_url:
|
|
2705
|
-
model_unit_to_mm_scale_factor:
|
|
2706
|
-
model_jscad:
|
|
2707
|
+
footprinter_string: z124.string().optional(),
|
|
2708
|
+
model_obj_url: z124.string().optional(),
|
|
2709
|
+
model_stl_url: z124.string().optional(),
|
|
2710
|
+
model_3mf_url: z124.string().optional(),
|
|
2711
|
+
model_gltf_url: z124.string().optional(),
|
|
2712
|
+
model_glb_url: z124.string().optional(),
|
|
2713
|
+
model_step_url: z124.string().optional(),
|
|
2714
|
+
model_wrl_url: z124.string().optional(),
|
|
2715
|
+
model_unit_to_mm_scale_factor: z124.number().optional(),
|
|
2716
|
+
model_jscad: z124.any().optional()
|
|
2707
2717
|
}).describe("Defines a component on the PCB");
|
|
2708
2718
|
expectTypesMatch(true);
|
|
2709
2719
|
|
|
2710
2720
|
// src/simulation/simulation_voltage_source.ts
|
|
2711
|
-
import { z as
|
|
2712
|
-
var wave_shape =
|
|
2713
|
-
var percentage =
|
|
2721
|
+
import { z as z125 } from "zod";
|
|
2722
|
+
var wave_shape = z125.enum(["sinewave", "square", "triangle", "sawtooth"]);
|
|
2723
|
+
var percentage = z125.union([z125.string(), z125.number()]).transform((val) => {
|
|
2714
2724
|
if (typeof val === "string") {
|
|
2715
2725
|
if (val.endsWith("%")) {
|
|
2716
2726
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -2719,30 +2729,30 @@ var percentage = z124.union([z124.string(), z124.number()]).transform((val) => {
|
|
|
2719
2729
|
}
|
|
2720
2730
|
return val;
|
|
2721
2731
|
}).pipe(
|
|
2722
|
-
|
|
2732
|
+
z125.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
2723
2733
|
);
|
|
2724
|
-
var simulation_dc_voltage_source =
|
|
2725
|
-
type:
|
|
2734
|
+
var simulation_dc_voltage_source = z125.object({
|
|
2735
|
+
type: z125.literal("simulation_voltage_source"),
|
|
2726
2736
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
2727
2737
|
"simulation_voltage_source"
|
|
2728
2738
|
),
|
|
2729
|
-
is_dc_source:
|
|
2730
|
-
positive_source_port_id:
|
|
2731
|
-
negative_source_port_id:
|
|
2732
|
-
positive_source_net_id:
|
|
2733
|
-
negative_source_net_id:
|
|
2739
|
+
is_dc_source: z125.literal(true).optional().default(true),
|
|
2740
|
+
positive_source_port_id: z125.string().optional(),
|
|
2741
|
+
negative_source_port_id: z125.string().optional(),
|
|
2742
|
+
positive_source_net_id: z125.string().optional(),
|
|
2743
|
+
negative_source_net_id: z125.string().optional(),
|
|
2734
2744
|
voltage
|
|
2735
2745
|
}).describe("Defines a DC voltage source for simulation");
|
|
2736
|
-
var simulation_ac_voltage_source =
|
|
2737
|
-
type:
|
|
2746
|
+
var simulation_ac_voltage_source = z125.object({
|
|
2747
|
+
type: z125.literal("simulation_voltage_source"),
|
|
2738
2748
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
2739
2749
|
"simulation_voltage_source"
|
|
2740
2750
|
),
|
|
2741
|
-
is_dc_source:
|
|
2742
|
-
terminal1_source_port_id:
|
|
2743
|
-
terminal2_source_port_id:
|
|
2744
|
-
terminal1_source_net_id:
|
|
2745
|
-
terminal2_source_net_id:
|
|
2751
|
+
is_dc_source: z125.literal(false),
|
|
2752
|
+
terminal1_source_port_id: z125.string().optional(),
|
|
2753
|
+
terminal2_source_port_id: z125.string().optional(),
|
|
2754
|
+
terminal1_source_net_id: z125.string().optional(),
|
|
2755
|
+
terminal2_source_net_id: z125.string().optional(),
|
|
2746
2756
|
voltage: voltage.optional(),
|
|
2747
2757
|
frequency: frequency.optional(),
|
|
2748
2758
|
peak_to_peak_voltage: voltage.optional(),
|
|
@@ -2750,25 +2760,25 @@ var simulation_ac_voltage_source = z124.object({
|
|
|
2750
2760
|
phase: rotation.optional(),
|
|
2751
2761
|
duty_cycle: percentage.optional()
|
|
2752
2762
|
}).describe("Defines an AC voltage source for simulation");
|
|
2753
|
-
var simulation_voltage_source =
|
|
2763
|
+
var simulation_voltage_source = z125.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
|
|
2754
2764
|
expectTypesMatch(true);
|
|
2755
2765
|
expectTypesMatch(true);
|
|
2756
2766
|
expectTypesMatch(true);
|
|
2757
2767
|
|
|
2758
2768
|
// src/simulation/simulation_experiment.ts
|
|
2759
|
-
import { z as
|
|
2760
|
-
var experiment_type =
|
|
2761
|
-
|
|
2762
|
-
|
|
2763
|
-
|
|
2764
|
-
|
|
2769
|
+
import { z as z126 } from "zod";
|
|
2770
|
+
var experiment_type = z126.union([
|
|
2771
|
+
z126.literal("spice_dc_sweep"),
|
|
2772
|
+
z126.literal("spice_dc_operating_point"),
|
|
2773
|
+
z126.literal("spice_transient_analysis"),
|
|
2774
|
+
z126.literal("spice_ac_analysis")
|
|
2765
2775
|
]);
|
|
2766
|
-
var simulation_experiment =
|
|
2767
|
-
type:
|
|
2776
|
+
var simulation_experiment = z126.object({
|
|
2777
|
+
type: z126.literal("simulation_experiment"),
|
|
2768
2778
|
simulation_experiment_id: getZodPrefixedIdWithDefault(
|
|
2769
2779
|
"simulation_experiment"
|
|
2770
2780
|
),
|
|
2771
|
-
name:
|
|
2781
|
+
name: z126.string(),
|
|
2772
2782
|
experiment_type,
|
|
2773
2783
|
time_per_step: duration_ms.optional(),
|
|
2774
2784
|
start_time_ms: ms.optional(),
|
|
@@ -2777,49 +2787,48 @@ var simulation_experiment = z125.object({
|
|
|
2777
2787
|
expectTypesMatch(true);
|
|
2778
2788
|
|
|
2779
2789
|
// src/simulation/simulation_transient_voltage_graph.ts
|
|
2780
|
-
import { z as
|
|
2781
|
-
var simulation_transient_voltage_graph =
|
|
2782
|
-
type:
|
|
2790
|
+
import { z as z127 } from "zod";
|
|
2791
|
+
var simulation_transient_voltage_graph = z127.object({
|
|
2792
|
+
type: z127.literal("simulation_transient_voltage_graph"),
|
|
2783
2793
|
simulation_transient_voltage_graph_id: getZodPrefixedIdWithDefault(
|
|
2784
2794
|
"simulation_transient_voltage_graph"
|
|
2785
2795
|
),
|
|
2786
|
-
simulation_experiment_id:
|
|
2787
|
-
timestamps_ms:
|
|
2788
|
-
voltage_levels:
|
|
2789
|
-
|
|
2790
|
-
|
|
2791
|
-
subcircuit_connectivity_map_key: z126.string().optional(),
|
|
2796
|
+
simulation_experiment_id: z127.string(),
|
|
2797
|
+
timestamps_ms: z127.array(z127.number()).optional(),
|
|
2798
|
+
voltage_levels: z127.array(z127.number()),
|
|
2799
|
+
source_component_id: z127.string().optional(),
|
|
2800
|
+
subcircuit_connectivity_map_key: z127.string().optional(),
|
|
2792
2801
|
time_per_step: duration_ms,
|
|
2793
2802
|
start_time_ms: ms,
|
|
2794
2803
|
end_time_ms: ms,
|
|
2795
|
-
name:
|
|
2804
|
+
name: z127.string().optional()
|
|
2796
2805
|
}).describe("Stores voltage measurements over time for a simulation");
|
|
2797
2806
|
expectTypesMatch(true);
|
|
2798
2807
|
|
|
2799
2808
|
// src/simulation/simulation_switch.ts
|
|
2800
|
-
import { z as
|
|
2801
|
-
var simulation_switch =
|
|
2802
|
-
type:
|
|
2809
|
+
import { z as z128 } from "zod";
|
|
2810
|
+
var simulation_switch = z128.object({
|
|
2811
|
+
type: z128.literal("simulation_switch"),
|
|
2803
2812
|
simulation_switch_id: getZodPrefixedIdWithDefault("simulation_switch"),
|
|
2804
|
-
source_component_id:
|
|
2813
|
+
source_component_id: z128.string().optional(),
|
|
2805
2814
|
closes_at: ms.optional(),
|
|
2806
2815
|
opens_at: ms.optional(),
|
|
2807
|
-
starts_closed:
|
|
2816
|
+
starts_closed: z128.boolean().optional(),
|
|
2808
2817
|
switching_frequency: frequency.optional()
|
|
2809
2818
|
}).describe("Defines a switch for simulation timing control");
|
|
2810
2819
|
expectTypesMatch(true);
|
|
2811
2820
|
|
|
2812
2821
|
// src/simulation/simulation_voltage_probe.ts
|
|
2813
|
-
import { z as
|
|
2814
|
-
var simulation_voltage_probe =
|
|
2815
|
-
type:
|
|
2822
|
+
import { z as z129 } from "zod";
|
|
2823
|
+
var simulation_voltage_probe = z129.object({
|
|
2824
|
+
type: z129.literal("simulation_voltage_probe"),
|
|
2816
2825
|
simulation_voltage_probe_id: getZodPrefixedIdWithDefault(
|
|
2817
2826
|
"simulation_voltage_probe"
|
|
2818
2827
|
),
|
|
2819
|
-
|
|
2820
|
-
|
|
2821
|
-
|
|
2822
|
-
subcircuit_id:
|
|
2828
|
+
source_component_id: z129.string().optional(),
|
|
2829
|
+
source_port_id: z129.string().optional(),
|
|
2830
|
+
source_net_id: z129.string().optional(),
|
|
2831
|
+
subcircuit_id: z129.string().optional()
|
|
2823
2832
|
}).describe(
|
|
2824
2833
|
"Defines a voltage probe for simulation, connected to a port or a net"
|
|
2825
2834
|
).refine(
|
|
@@ -2831,22 +2840,22 @@ var simulation_voltage_probe = z128.object({
|
|
|
2831
2840
|
expectTypesMatch(true);
|
|
2832
2841
|
|
|
2833
2842
|
// src/simulation/simulation_unknown_experiment_error.ts
|
|
2834
|
-
import { z as
|
|
2835
|
-
var simulation_unknown_experiment_error =
|
|
2836
|
-
type:
|
|
2843
|
+
import { z as z130 } from "zod";
|
|
2844
|
+
var simulation_unknown_experiment_error = z130.object({
|
|
2845
|
+
type: z130.literal("simulation_unknown_experiment_error"),
|
|
2837
2846
|
simulation_unknown_experiment_error_id: getZodPrefixedIdWithDefault(
|
|
2838
2847
|
"simulation_unknown_experiment_error"
|
|
2839
2848
|
),
|
|
2840
|
-
error_type:
|
|
2841
|
-
message:
|
|
2842
|
-
simulation_experiment_id:
|
|
2843
|
-
subcircuit_id:
|
|
2849
|
+
error_type: z130.literal("simulation_unknown_experiment_error").default("simulation_unknown_experiment_error"),
|
|
2850
|
+
message: z130.string(),
|
|
2851
|
+
simulation_experiment_id: z130.string().optional(),
|
|
2852
|
+
subcircuit_id: z130.string().optional()
|
|
2844
2853
|
}).describe("An unknown error occurred during the simulation experiment.");
|
|
2845
2854
|
expectTypesMatch(true);
|
|
2846
2855
|
|
|
2847
2856
|
// src/any_circuit_element.ts
|
|
2848
|
-
import { z as
|
|
2849
|
-
var any_circuit_element =
|
|
2857
|
+
import { z as z131 } from "zod";
|
|
2858
|
+
var any_circuit_element = z131.union([
|
|
2850
2859
|
source_trace,
|
|
2851
2860
|
source_port,
|
|
2852
2861
|
any_source_component,
|
|
@@ -3131,6 +3140,7 @@ export {
|
|
|
3131
3140
|
source_simple_switch,
|
|
3132
3141
|
source_simple_test_point,
|
|
3133
3142
|
source_simple_transistor,
|
|
3143
|
+
source_simple_voltage_probe,
|
|
3134
3144
|
source_trace,
|
|
3135
3145
|
source_trace_not_connected_error,
|
|
3136
3146
|
supplier_name,
|