circuit-json 0.0.222 → 0.0.224
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 +44 -0
- package/dist/index.d.mts +626 -4
- package/dist/index.mjs +738 -676
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -390,7 +390,7 @@ var source_simple_power_source = source_component_base.extend({
|
|
|
390
390
|
expectTypesMatch(true);
|
|
391
391
|
|
|
392
392
|
// src/source/any_source_component.ts
|
|
393
|
-
import { z as
|
|
393
|
+
import { z as z32 } from "zod";
|
|
394
394
|
|
|
395
395
|
// src/source/source_simple_fuse.ts
|
|
396
396
|
import { z as z16 } from "zod";
|
|
@@ -549,8 +549,25 @@ var source_failed_to_create_component_error = z30.object({
|
|
|
549
549
|
}).describe("Error emitted when a component fails to be constructed");
|
|
550
550
|
expectTypesMatch(true);
|
|
551
551
|
|
|
552
|
+
// src/source/source_trace_not_connected.ts
|
|
553
|
+
import { z as z31 } from "zod";
|
|
554
|
+
var source_trace_not_connected = z31.object({
|
|
555
|
+
type: z31.literal("source_trace_not_connected"),
|
|
556
|
+
source_trace_not_connected_id: getZodPrefixedIdWithDefault(
|
|
557
|
+
"source_trace_not_connected"
|
|
558
|
+
),
|
|
559
|
+
error_type: z31.literal("source_trace_not_connected").default("source_trace_not_connected"),
|
|
560
|
+
message: z31.string(),
|
|
561
|
+
subcircuit_id: z31.string().optional(),
|
|
562
|
+
source_group_id: z31.string().optional(),
|
|
563
|
+
source_trace_id: z31.string().optional(),
|
|
564
|
+
connected_source_port_ids: z31.array(z31.string()).optional(),
|
|
565
|
+
selectors_not_found: z31.array(z31.string()).optional()
|
|
566
|
+
}).describe("Occurs when a source trace selector does not match any ports");
|
|
567
|
+
expectTypesMatch(true);
|
|
568
|
+
|
|
552
569
|
// src/source/any_source_component.ts
|
|
553
|
-
var any_source_component =
|
|
570
|
+
var any_source_component = z32.union([
|
|
554
571
|
source_simple_resistor,
|
|
555
572
|
source_simple_capacitor,
|
|
556
573
|
source_simple_diode,
|
|
@@ -572,218 +589,219 @@ var any_source_component = z31.union([
|
|
|
572
589
|
source_simple_fuse,
|
|
573
590
|
source_project_metadata,
|
|
574
591
|
source_missing_property_error,
|
|
575
|
-
source_failed_to_create_component_error
|
|
592
|
+
source_failed_to_create_component_error,
|
|
593
|
+
source_trace_not_connected
|
|
576
594
|
]);
|
|
577
595
|
expectTypesMatch(true);
|
|
578
596
|
|
|
579
597
|
// src/source/source_port.ts
|
|
580
|
-
import { z as z32 } from "zod";
|
|
581
|
-
var source_port = z32.object({
|
|
582
|
-
type: z32.literal("source_port"),
|
|
583
|
-
pin_number: z32.number().optional(),
|
|
584
|
-
port_hints: z32.array(z32.string()).optional(),
|
|
585
|
-
name: z32.string(),
|
|
586
|
-
source_port_id: z32.string(),
|
|
587
|
-
source_component_id: z32.string(),
|
|
588
|
-
subcircuit_id: z32.string().optional(),
|
|
589
|
-
subcircuit_connectivity_map_key: z32.string().optional()
|
|
590
|
-
});
|
|
591
|
-
expectTypesMatch(true);
|
|
592
|
-
|
|
593
|
-
// src/source/source_trace.ts
|
|
594
598
|
import { z as z33 } from "zod";
|
|
595
|
-
var
|
|
596
|
-
type: z33.literal("
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
599
|
+
var source_port = z33.object({
|
|
600
|
+
type: z33.literal("source_port"),
|
|
601
|
+
pin_number: z33.number().optional(),
|
|
602
|
+
port_hints: z33.array(z33.string()).optional(),
|
|
603
|
+
name: z33.string(),
|
|
604
|
+
source_port_id: z33.string(),
|
|
605
|
+
source_component_id: z33.string(),
|
|
600
606
|
subcircuit_id: z33.string().optional(),
|
|
601
|
-
subcircuit_connectivity_map_key: z33.string().optional()
|
|
602
|
-
max_length: z33.number().optional(),
|
|
603
|
-
min_trace_thickness: z33.number().optional(),
|
|
604
|
-
display_name: z33.string().optional()
|
|
607
|
+
subcircuit_connectivity_map_key: z33.string().optional()
|
|
605
608
|
});
|
|
606
609
|
expectTypesMatch(true);
|
|
607
610
|
|
|
608
|
-
// src/source/
|
|
611
|
+
// src/source/source_trace.ts
|
|
609
612
|
import { z as z34 } from "zod";
|
|
610
|
-
var
|
|
611
|
-
type: z34.literal("
|
|
612
|
-
|
|
613
|
+
var source_trace = z34.object({
|
|
614
|
+
type: z34.literal("source_trace"),
|
|
615
|
+
source_trace_id: z34.string(),
|
|
616
|
+
connected_source_port_ids: z34.array(z34.string()),
|
|
617
|
+
connected_source_net_ids: z34.array(z34.string()),
|
|
613
618
|
subcircuit_id: z34.string().optional(),
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
619
|
+
subcircuit_connectivity_map_key: z34.string().optional(),
|
|
620
|
+
max_length: z34.number().optional(),
|
|
621
|
+
min_trace_thickness: z34.number().optional(),
|
|
622
|
+
display_name: z34.string().optional()
|
|
618
623
|
});
|
|
619
624
|
expectTypesMatch(true);
|
|
620
625
|
|
|
621
|
-
// src/source/
|
|
626
|
+
// src/source/source_group.ts
|
|
622
627
|
import { z as z35 } from "zod";
|
|
623
|
-
var
|
|
624
|
-
type: z35.literal("
|
|
625
|
-
|
|
626
|
-
name: z35.string(),
|
|
627
|
-
member_source_group_ids: z35.array(z35.string()),
|
|
628
|
-
is_power: z35.boolean().optional(),
|
|
629
|
-
is_ground: z35.boolean().optional(),
|
|
630
|
-
is_digital_signal: z35.boolean().optional(),
|
|
631
|
-
is_analog_signal: z35.boolean().optional(),
|
|
632
|
-
trace_width: z35.number().optional(),
|
|
628
|
+
var source_group = z35.object({
|
|
629
|
+
type: z35.literal("source_group"),
|
|
630
|
+
source_group_id: z35.string(),
|
|
633
631
|
subcircuit_id: z35.string().optional(),
|
|
634
|
-
|
|
632
|
+
parent_subcircuit_id: z35.string().optional(),
|
|
633
|
+
parent_source_group_id: z35.string().optional(),
|
|
634
|
+
is_subcircuit: z35.boolean().optional(),
|
|
635
|
+
name: z35.string().optional()
|
|
635
636
|
});
|
|
636
637
|
expectTypesMatch(true);
|
|
637
638
|
|
|
638
|
-
// src/source/
|
|
639
|
+
// src/source/source_net.ts
|
|
639
640
|
import { z as z36 } from "zod";
|
|
640
|
-
var
|
|
641
|
-
type: z36.literal("
|
|
642
|
-
source_pcb_ground_plane_id: z36.string(),
|
|
643
|
-
source_group_id: z36.string(),
|
|
641
|
+
var source_net = z36.object({
|
|
642
|
+
type: z36.literal("source_net"),
|
|
644
643
|
source_net_id: z36.string(),
|
|
645
|
-
|
|
644
|
+
name: z36.string(),
|
|
645
|
+
member_source_group_ids: z36.array(z36.string()),
|
|
646
|
+
is_power: z36.boolean().optional(),
|
|
647
|
+
is_ground: z36.boolean().optional(),
|
|
648
|
+
is_digital_signal: z36.boolean().optional(),
|
|
649
|
+
is_analog_signal: z36.boolean().optional(),
|
|
650
|
+
trace_width: z36.number().optional(),
|
|
651
|
+
subcircuit_id: z36.string().optional(),
|
|
652
|
+
subcircuit_connectivity_map_key: z36.string().optional()
|
|
653
|
+
});
|
|
654
|
+
expectTypesMatch(true);
|
|
655
|
+
|
|
656
|
+
// src/source/source_pcb_ground_plane.ts
|
|
657
|
+
import { z as z37 } from "zod";
|
|
658
|
+
var source_pcb_ground_plane = z37.object({
|
|
659
|
+
type: z37.literal("source_pcb_ground_plane"),
|
|
660
|
+
source_pcb_ground_plane_id: z37.string(),
|
|
661
|
+
source_group_id: z37.string(),
|
|
662
|
+
source_net_id: z37.string(),
|
|
663
|
+
subcircuit_id: z37.string().optional()
|
|
646
664
|
}).describe("Defines a ground plane in the source domain");
|
|
647
665
|
expectTypesMatch(true);
|
|
648
666
|
|
|
649
667
|
// src/schematic/schematic_box.ts
|
|
650
|
-
import { z as
|
|
651
|
-
var schematic_box =
|
|
652
|
-
type:
|
|
653
|
-
schematic_component_id:
|
|
668
|
+
import { z as z38 } from "zod";
|
|
669
|
+
var schematic_box = z38.object({
|
|
670
|
+
type: z38.literal("schematic_box"),
|
|
671
|
+
schematic_component_id: z38.string().optional(),
|
|
654
672
|
width: distance,
|
|
655
673
|
height: distance,
|
|
656
|
-
is_dashed:
|
|
674
|
+
is_dashed: z38.boolean().default(false),
|
|
657
675
|
x: distance,
|
|
658
676
|
y: distance,
|
|
659
|
-
subcircuit_id:
|
|
677
|
+
subcircuit_id: z38.string().optional()
|
|
660
678
|
}).describe("Draws a box on the schematic");
|
|
661
679
|
expectTypesMatch(true);
|
|
662
680
|
|
|
663
681
|
// src/schematic/schematic_path.ts
|
|
664
|
-
import { z as
|
|
665
|
-
var schematic_path =
|
|
666
|
-
type:
|
|
667
|
-
schematic_component_id:
|
|
668
|
-
fill_color:
|
|
669
|
-
is_filled:
|
|
670
|
-
points:
|
|
671
|
-
subcircuit_id:
|
|
682
|
+
import { z as z39 } from "zod";
|
|
683
|
+
var schematic_path = z39.object({
|
|
684
|
+
type: z39.literal("schematic_path"),
|
|
685
|
+
schematic_component_id: z39.string(),
|
|
686
|
+
fill_color: z39.enum(["red", "blue"]).optional(),
|
|
687
|
+
is_filled: z39.boolean().optional(),
|
|
688
|
+
points: z39.array(point),
|
|
689
|
+
subcircuit_id: z39.string().optional()
|
|
672
690
|
});
|
|
673
691
|
expectTypesMatch(true);
|
|
674
692
|
|
|
675
693
|
// src/schematic/schematic_component.ts
|
|
676
|
-
import { z as
|
|
677
|
-
var schematic_pin_styles =
|
|
678
|
-
|
|
694
|
+
import { z as z40 } from "zod";
|
|
695
|
+
var schematic_pin_styles = z40.record(
|
|
696
|
+
z40.object({
|
|
679
697
|
left_margin: length.optional(),
|
|
680
698
|
right_margin: length.optional(),
|
|
681
699
|
top_margin: length.optional(),
|
|
682
700
|
bottom_margin: length.optional()
|
|
683
701
|
})
|
|
684
702
|
);
|
|
685
|
-
var schematic_component_port_arrangement_by_size =
|
|
686
|
-
left_size:
|
|
687
|
-
right_size:
|
|
688
|
-
top_size:
|
|
689
|
-
bottom_size:
|
|
703
|
+
var schematic_component_port_arrangement_by_size = z40.object({
|
|
704
|
+
left_size: z40.number(),
|
|
705
|
+
right_size: z40.number(),
|
|
706
|
+
top_size: z40.number().optional(),
|
|
707
|
+
bottom_size: z40.number().optional()
|
|
690
708
|
});
|
|
691
709
|
expectTypesMatch(true);
|
|
692
|
-
var schematic_component_port_arrangement_by_sides =
|
|
693
|
-
left_side:
|
|
694
|
-
pins:
|
|
710
|
+
var schematic_component_port_arrangement_by_sides = z40.object({
|
|
711
|
+
left_side: z40.object({
|
|
712
|
+
pins: z40.array(z40.number()),
|
|
695
713
|
// @ts-ignore
|
|
696
|
-
direction:
|
|
714
|
+
direction: z40.enum(["top-to-bottom", "bottom-to-top"]).optional()
|
|
697
715
|
}).optional(),
|
|
698
|
-
right_side:
|
|
699
|
-
pins:
|
|
716
|
+
right_side: z40.object({
|
|
717
|
+
pins: z40.array(z40.number()),
|
|
700
718
|
// @ts-ignore
|
|
701
|
-
direction:
|
|
719
|
+
direction: z40.enum(["top-to-bottom", "bottom-to-top"]).optional()
|
|
702
720
|
}).optional(),
|
|
703
|
-
top_side:
|
|
704
|
-
pins:
|
|
721
|
+
top_side: z40.object({
|
|
722
|
+
pins: z40.array(z40.number()),
|
|
705
723
|
// @ts-ignore
|
|
706
|
-
direction:
|
|
724
|
+
direction: z40.enum(["left-to-right", "right-to-left"]).optional()
|
|
707
725
|
}).optional(),
|
|
708
|
-
bottom_side:
|
|
709
|
-
pins:
|
|
726
|
+
bottom_side: z40.object({
|
|
727
|
+
pins: z40.array(z40.number()),
|
|
710
728
|
// @ts-ignore
|
|
711
|
-
direction:
|
|
729
|
+
direction: z40.enum(["left-to-right", "right-to-left"]).optional()
|
|
712
730
|
}).optional()
|
|
713
731
|
});
|
|
714
732
|
expectTypesMatch(true);
|
|
715
|
-
var port_arrangement =
|
|
733
|
+
var port_arrangement = z40.union([
|
|
716
734
|
schematic_component_port_arrangement_by_size,
|
|
717
735
|
schematic_component_port_arrangement_by_sides
|
|
718
736
|
]);
|
|
719
|
-
var schematic_component =
|
|
720
|
-
type:
|
|
737
|
+
var schematic_component = z40.object({
|
|
738
|
+
type: z40.literal("schematic_component"),
|
|
721
739
|
size,
|
|
722
740
|
center: point,
|
|
723
|
-
source_component_id:
|
|
724
|
-
schematic_component_id:
|
|
741
|
+
source_component_id: z40.string(),
|
|
742
|
+
schematic_component_id: z40.string(),
|
|
725
743
|
pin_spacing: length.optional(),
|
|
726
744
|
pin_styles: schematic_pin_styles.optional(),
|
|
727
745
|
box_width: length.optional(),
|
|
728
|
-
symbol_name:
|
|
746
|
+
symbol_name: z40.string().optional(),
|
|
729
747
|
port_arrangement: port_arrangement.optional(),
|
|
730
|
-
port_labels:
|
|
731
|
-
symbol_display_value:
|
|
732
|
-
subcircuit_id:
|
|
733
|
-
schematic_group_id:
|
|
748
|
+
port_labels: z40.record(z40.string()).optional(),
|
|
749
|
+
symbol_display_value: z40.string().optional(),
|
|
750
|
+
subcircuit_id: z40.string().optional(),
|
|
751
|
+
schematic_group_id: z40.string().optional()
|
|
734
752
|
});
|
|
735
753
|
expectTypesMatch(true);
|
|
736
754
|
|
|
737
755
|
// src/schematic/schematic_line.ts
|
|
738
|
-
import { z as
|
|
739
|
-
var schematic_line =
|
|
740
|
-
type:
|
|
741
|
-
schematic_component_id:
|
|
756
|
+
import { z as z41 } from "zod";
|
|
757
|
+
var schematic_line = z41.object({
|
|
758
|
+
type: z41.literal("schematic_line"),
|
|
759
|
+
schematic_component_id: z41.string(),
|
|
742
760
|
x1: distance,
|
|
743
761
|
x2: distance,
|
|
744
762
|
y1: distance,
|
|
745
763
|
y2: distance,
|
|
746
|
-
subcircuit_id:
|
|
764
|
+
subcircuit_id: z41.string().optional()
|
|
747
765
|
});
|
|
748
766
|
expectTypesMatch(true);
|
|
749
767
|
|
|
750
768
|
// src/schematic/schematic_trace.ts
|
|
751
|
-
import { z as
|
|
752
|
-
var schematic_trace =
|
|
753
|
-
type:
|
|
754
|
-
schematic_trace_id:
|
|
755
|
-
source_trace_id:
|
|
756
|
-
junctions:
|
|
757
|
-
|
|
758
|
-
x:
|
|
759
|
-
y:
|
|
769
|
+
import { z as z42 } from "zod";
|
|
770
|
+
var schematic_trace = z42.object({
|
|
771
|
+
type: z42.literal("schematic_trace"),
|
|
772
|
+
schematic_trace_id: z42.string(),
|
|
773
|
+
source_trace_id: z42.string(),
|
|
774
|
+
junctions: z42.array(
|
|
775
|
+
z42.object({
|
|
776
|
+
x: z42.number(),
|
|
777
|
+
y: z42.number()
|
|
760
778
|
})
|
|
761
779
|
),
|
|
762
|
-
edges:
|
|
763
|
-
|
|
764
|
-
from:
|
|
765
|
-
x:
|
|
766
|
-
y:
|
|
780
|
+
edges: z42.array(
|
|
781
|
+
z42.object({
|
|
782
|
+
from: z42.object({
|
|
783
|
+
x: z42.number(),
|
|
784
|
+
y: z42.number()
|
|
767
785
|
}),
|
|
768
|
-
to:
|
|
769
|
-
x:
|
|
770
|
-
y:
|
|
786
|
+
to: z42.object({
|
|
787
|
+
x: z42.number(),
|
|
788
|
+
y: z42.number()
|
|
771
789
|
}),
|
|
772
|
-
is_crossing:
|
|
773
|
-
from_schematic_port_id:
|
|
774
|
-
to_schematic_port_id:
|
|
790
|
+
is_crossing: z42.boolean().optional(),
|
|
791
|
+
from_schematic_port_id: z42.string().optional(),
|
|
792
|
+
to_schematic_port_id: z42.string().optional()
|
|
775
793
|
})
|
|
776
794
|
),
|
|
777
|
-
subcircuit_id:
|
|
795
|
+
subcircuit_id: z42.string().optional()
|
|
778
796
|
});
|
|
779
797
|
expectTypesMatch(true);
|
|
780
798
|
|
|
781
799
|
// src/schematic/schematic_text.ts
|
|
782
|
-
import { z as
|
|
800
|
+
import { z as z44 } from "zod";
|
|
783
801
|
|
|
784
802
|
// src/common/FivePointAnchor.ts
|
|
785
|
-
import { z as
|
|
786
|
-
var fivePointAnchor =
|
|
803
|
+
import { z as z43 } from "zod";
|
|
804
|
+
var fivePointAnchor = z43.enum([
|
|
787
805
|
"center",
|
|
788
806
|
"left",
|
|
789
807
|
"right",
|
|
@@ -793,109 +811,109 @@ var fivePointAnchor = z42.enum([
|
|
|
793
811
|
expectTypesMatch(true);
|
|
794
812
|
|
|
795
813
|
// src/schematic/schematic_text.ts
|
|
796
|
-
var schematic_text =
|
|
797
|
-
type:
|
|
798
|
-
schematic_component_id:
|
|
799
|
-
schematic_text_id:
|
|
800
|
-
text:
|
|
801
|
-
font_size:
|
|
802
|
-
position:
|
|
814
|
+
var schematic_text = z44.object({
|
|
815
|
+
type: z44.literal("schematic_text"),
|
|
816
|
+
schematic_component_id: z44.string().optional(),
|
|
817
|
+
schematic_text_id: z44.string(),
|
|
818
|
+
text: z44.string(),
|
|
819
|
+
font_size: z44.number().default(0.18),
|
|
820
|
+
position: z44.object({
|
|
803
821
|
x: distance,
|
|
804
822
|
y: distance
|
|
805
823
|
}),
|
|
806
|
-
rotation:
|
|
807
|
-
anchor:
|
|
808
|
-
color:
|
|
809
|
-
subcircuit_id:
|
|
824
|
+
rotation: z44.number().default(0),
|
|
825
|
+
anchor: z44.union([fivePointAnchor.describe("legacy"), ninePointAnchor]).default("center"),
|
|
826
|
+
color: z44.string().default("#000000"),
|
|
827
|
+
subcircuit_id: z44.string().optional()
|
|
810
828
|
});
|
|
811
829
|
expectTypesMatch(true);
|
|
812
830
|
|
|
813
831
|
// src/schematic/schematic_port.ts
|
|
814
|
-
import { z as
|
|
815
|
-
var schematic_port =
|
|
816
|
-
type:
|
|
817
|
-
schematic_port_id:
|
|
818
|
-
source_port_id:
|
|
819
|
-
schematic_component_id:
|
|
832
|
+
import { z as z45 } from "zod";
|
|
833
|
+
var schematic_port = z45.object({
|
|
834
|
+
type: z45.literal("schematic_port"),
|
|
835
|
+
schematic_port_id: z45.string(),
|
|
836
|
+
source_port_id: z45.string(),
|
|
837
|
+
schematic_component_id: z45.string().optional(),
|
|
820
838
|
center: point,
|
|
821
|
-
facing_direction:
|
|
822
|
-
distance_from_component_edge:
|
|
823
|
-
side_of_component:
|
|
824
|
-
true_ccw_index:
|
|
825
|
-
pin_number:
|
|
826
|
-
display_pin_label:
|
|
827
|
-
subcircuit_id:
|
|
828
|
-
is_connected:
|
|
839
|
+
facing_direction: z45.enum(["up", "down", "left", "right"]).optional(),
|
|
840
|
+
distance_from_component_edge: z45.number().optional(),
|
|
841
|
+
side_of_component: z45.enum(["top", "bottom", "left", "right"]).optional(),
|
|
842
|
+
true_ccw_index: z45.number().optional(),
|
|
843
|
+
pin_number: z45.number().optional(),
|
|
844
|
+
display_pin_label: z45.string().optional(),
|
|
845
|
+
subcircuit_id: z45.string().optional(),
|
|
846
|
+
is_connected: z45.boolean().optional()
|
|
829
847
|
}).describe("Defines a port on a schematic component");
|
|
830
848
|
expectTypesMatch(true);
|
|
831
849
|
|
|
832
850
|
// src/schematic/schematic_net_label.ts
|
|
833
|
-
import { z as
|
|
834
|
-
var schematic_net_label =
|
|
835
|
-
type:
|
|
851
|
+
import { z as z46 } from "zod";
|
|
852
|
+
var schematic_net_label = z46.object({
|
|
853
|
+
type: z46.literal("schematic_net_label"),
|
|
836
854
|
schematic_net_label_id: getZodPrefixedIdWithDefault("schematic_net_label"),
|
|
837
|
-
schematic_trace_id:
|
|
838
|
-
source_trace_id:
|
|
839
|
-
source_net_id:
|
|
855
|
+
schematic_trace_id: z46.string().optional(),
|
|
856
|
+
source_trace_id: z46.string().optional(),
|
|
857
|
+
source_net_id: z46.string(),
|
|
840
858
|
center: point,
|
|
841
859
|
anchor_position: point.optional(),
|
|
842
|
-
anchor_side:
|
|
843
|
-
text:
|
|
844
|
-
symbol_name:
|
|
845
|
-
is_movable:
|
|
846
|
-
subcircuit_id:
|
|
860
|
+
anchor_side: z46.enum(["top", "bottom", "left", "right"]),
|
|
861
|
+
text: z46.string(),
|
|
862
|
+
symbol_name: z46.string().optional(),
|
|
863
|
+
is_movable: z46.boolean().optional(),
|
|
864
|
+
subcircuit_id: z46.string().optional()
|
|
847
865
|
});
|
|
848
866
|
expectTypesMatch(true);
|
|
849
867
|
|
|
850
868
|
// src/schematic/schematic_error.ts
|
|
851
|
-
import { z as
|
|
852
|
-
var schematic_error =
|
|
853
|
-
type:
|
|
854
|
-
schematic_error_id:
|
|
869
|
+
import { z as z47 } from "zod";
|
|
870
|
+
var schematic_error = z47.object({
|
|
871
|
+
type: z47.literal("schematic_error"),
|
|
872
|
+
schematic_error_id: z47.string(),
|
|
855
873
|
// eventually each error type should be broken out into a dir of files
|
|
856
|
-
error_type:
|
|
857
|
-
message:
|
|
858
|
-
subcircuit_id:
|
|
874
|
+
error_type: z47.literal("schematic_port_not_found").default("schematic_port_not_found"),
|
|
875
|
+
message: z47.string(),
|
|
876
|
+
subcircuit_id: z47.string().optional()
|
|
859
877
|
}).describe("Defines a schematic error on the schematic");
|
|
860
878
|
expectTypesMatch(true);
|
|
861
879
|
|
|
862
880
|
// src/schematic/schematic_layout_error.ts
|
|
863
|
-
import { z as
|
|
864
|
-
var schematic_layout_error =
|
|
865
|
-
type:
|
|
881
|
+
import { z as z48 } from "zod";
|
|
882
|
+
var schematic_layout_error = z48.object({
|
|
883
|
+
type: z48.literal("schematic_layout_error"),
|
|
866
884
|
schematic_layout_error_id: getZodPrefixedIdWithDefault(
|
|
867
885
|
"schematic_layout_error"
|
|
868
886
|
),
|
|
869
|
-
error_type:
|
|
870
|
-
message:
|
|
871
|
-
source_group_id:
|
|
872
|
-
schematic_group_id:
|
|
873
|
-
subcircuit_id:
|
|
887
|
+
error_type: z48.literal("schematic_layout_error").default("schematic_layout_error"),
|
|
888
|
+
message: z48.string(),
|
|
889
|
+
source_group_id: z48.string(),
|
|
890
|
+
schematic_group_id: z48.string(),
|
|
891
|
+
subcircuit_id: z48.string().optional()
|
|
874
892
|
}).describe("Error emitted when schematic layout fails for a group");
|
|
875
893
|
expectTypesMatch(true);
|
|
876
894
|
|
|
877
895
|
// src/schematic/schematic_debug_object.ts
|
|
878
|
-
import { z as
|
|
879
|
-
var schematic_debug_object_base =
|
|
880
|
-
type:
|
|
881
|
-
label:
|
|
882
|
-
subcircuit_id:
|
|
896
|
+
import { z as z49 } from "zod";
|
|
897
|
+
var schematic_debug_object_base = z49.object({
|
|
898
|
+
type: z49.literal("schematic_debug_object"),
|
|
899
|
+
label: z49.string().optional(),
|
|
900
|
+
subcircuit_id: z49.string().optional()
|
|
883
901
|
});
|
|
884
902
|
var schematic_debug_rect = schematic_debug_object_base.extend({
|
|
885
|
-
shape:
|
|
903
|
+
shape: z49.literal("rect"),
|
|
886
904
|
center: point,
|
|
887
905
|
size
|
|
888
906
|
});
|
|
889
907
|
var schematic_debug_line = schematic_debug_object_base.extend({
|
|
890
|
-
shape:
|
|
908
|
+
shape: z49.literal("line"),
|
|
891
909
|
start: point,
|
|
892
910
|
end: point
|
|
893
911
|
});
|
|
894
912
|
var schematic_debug_point = schematic_debug_object_base.extend({
|
|
895
|
-
shape:
|
|
913
|
+
shape: z49.literal("point"),
|
|
896
914
|
center: point
|
|
897
915
|
});
|
|
898
|
-
var schematic_debug_object =
|
|
916
|
+
var schematic_debug_object = z49.discriminatedUnion("shape", [
|
|
899
917
|
schematic_debug_rect,
|
|
900
918
|
schematic_debug_line,
|
|
901
919
|
schematic_debug_point
|
|
@@ -903,93 +921,93 @@ var schematic_debug_object = z48.discriminatedUnion("shape", [
|
|
|
903
921
|
expectTypesMatch(true);
|
|
904
922
|
|
|
905
923
|
// src/schematic/schematic_voltage_probe.ts
|
|
906
|
-
import { z as
|
|
907
|
-
var schematic_voltage_probe =
|
|
908
|
-
type:
|
|
909
|
-
schematic_voltage_probe_id:
|
|
924
|
+
import { z as z50 } from "zod";
|
|
925
|
+
var schematic_voltage_probe = z50.object({
|
|
926
|
+
type: z50.literal("schematic_voltage_probe"),
|
|
927
|
+
schematic_voltage_probe_id: z50.string(),
|
|
910
928
|
position: point,
|
|
911
|
-
schematic_trace_id:
|
|
929
|
+
schematic_trace_id: z50.string(),
|
|
912
930
|
voltage: voltage.optional(),
|
|
913
|
-
subcircuit_id:
|
|
931
|
+
subcircuit_id: z50.string().optional()
|
|
914
932
|
}).describe("Defines a voltage probe measurement point on a schematic trace");
|
|
915
933
|
expectTypesMatch(true);
|
|
916
934
|
|
|
917
935
|
// src/schematic/schematic_manual_edit_conflict_warning.ts
|
|
918
|
-
import { z as
|
|
919
|
-
var schematic_manual_edit_conflict_warning =
|
|
920
|
-
type:
|
|
936
|
+
import { z as z51 } from "zod";
|
|
937
|
+
var schematic_manual_edit_conflict_warning = z51.object({
|
|
938
|
+
type: z51.literal("schematic_manual_edit_conflict_warning"),
|
|
921
939
|
schematic_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
922
940
|
"schematic_manual_edit_conflict_warning"
|
|
923
941
|
),
|
|
924
|
-
warning_type:
|
|
925
|
-
message:
|
|
926
|
-
schematic_component_id:
|
|
927
|
-
schematic_group_id:
|
|
928
|
-
subcircuit_id:
|
|
929
|
-
source_component_id:
|
|
942
|
+
warning_type: z51.literal("schematic_manual_edit_conflict_warning").default("schematic_manual_edit_conflict_warning"),
|
|
943
|
+
message: z51.string(),
|
|
944
|
+
schematic_component_id: z51.string(),
|
|
945
|
+
schematic_group_id: z51.string().optional(),
|
|
946
|
+
subcircuit_id: z51.string().optional(),
|
|
947
|
+
source_component_id: z51.string()
|
|
930
948
|
}).describe(
|
|
931
949
|
"Warning emitted when a component has both manual placement and explicit schX/schY coordinates"
|
|
932
950
|
);
|
|
933
951
|
expectTypesMatch(true);
|
|
934
952
|
|
|
935
953
|
// src/schematic/schematic_group.ts
|
|
936
|
-
import { z as
|
|
937
|
-
var schematic_group =
|
|
938
|
-
type:
|
|
954
|
+
import { z as z52 } from "zod";
|
|
955
|
+
var schematic_group = z52.object({
|
|
956
|
+
type: z52.literal("schematic_group"),
|
|
939
957
|
schematic_group_id: getZodPrefixedIdWithDefault("schematic_group"),
|
|
940
|
-
source_group_id:
|
|
941
|
-
is_subcircuit:
|
|
942
|
-
subcircuit_id:
|
|
958
|
+
source_group_id: z52.string(),
|
|
959
|
+
is_subcircuit: z52.boolean().optional(),
|
|
960
|
+
subcircuit_id: z52.string().optional(),
|
|
943
961
|
width: length,
|
|
944
962
|
height: length,
|
|
945
963
|
center: point,
|
|
946
|
-
schematic_component_ids:
|
|
947
|
-
name:
|
|
948
|
-
description:
|
|
964
|
+
schematic_component_ids: z52.array(z52.string()),
|
|
965
|
+
name: z52.string().optional(),
|
|
966
|
+
description: z52.string().optional()
|
|
949
967
|
}).describe("Defines a group of components on the schematic");
|
|
950
968
|
expectTypesMatch(true);
|
|
951
969
|
|
|
952
970
|
// src/schematic/schematic_table.ts
|
|
953
|
-
import { z as
|
|
954
|
-
var schematic_table =
|
|
955
|
-
type:
|
|
971
|
+
import { z as z53 } from "zod";
|
|
972
|
+
var schematic_table = z53.object({
|
|
973
|
+
type: z53.literal("schematic_table"),
|
|
956
974
|
schematic_table_id: getZodPrefixedIdWithDefault("schematic_table"),
|
|
957
975
|
anchor_position: point,
|
|
958
|
-
column_widths:
|
|
959
|
-
row_heights:
|
|
976
|
+
column_widths: z53.array(distance),
|
|
977
|
+
row_heights: z53.array(distance),
|
|
960
978
|
cell_padding: distance.optional(),
|
|
961
979
|
border_width: distance.optional(),
|
|
962
|
-
subcircuit_id:
|
|
963
|
-
schematic_component_id:
|
|
980
|
+
subcircuit_id: z53.string().optional(),
|
|
981
|
+
schematic_component_id: z53.string().optional(),
|
|
964
982
|
anchor: ninePointAnchor.optional()
|
|
965
983
|
}).describe("Defines a table on the schematic");
|
|
966
984
|
expectTypesMatch(true);
|
|
967
985
|
|
|
968
986
|
// src/schematic/schematic_table_cell.ts
|
|
969
|
-
import { z as
|
|
970
|
-
var schematic_table_cell =
|
|
971
|
-
type:
|
|
987
|
+
import { z as z54 } from "zod";
|
|
988
|
+
var schematic_table_cell = z54.object({
|
|
989
|
+
type: z54.literal("schematic_table_cell"),
|
|
972
990
|
schematic_table_cell_id: getZodPrefixedIdWithDefault(
|
|
973
991
|
"schematic_table_cell"
|
|
974
992
|
),
|
|
975
|
-
schematic_table_id:
|
|
976
|
-
start_row_index:
|
|
977
|
-
end_row_index:
|
|
978
|
-
start_column_index:
|
|
979
|
-
end_column_index:
|
|
980
|
-
text:
|
|
993
|
+
schematic_table_id: z54.string(),
|
|
994
|
+
start_row_index: z54.number(),
|
|
995
|
+
end_row_index: z54.number(),
|
|
996
|
+
start_column_index: z54.number(),
|
|
997
|
+
end_column_index: z54.number(),
|
|
998
|
+
text: z54.string().optional(),
|
|
981
999
|
center: point,
|
|
982
1000
|
width: distance,
|
|
983
1001
|
height: distance,
|
|
984
|
-
horizontal_align:
|
|
985
|
-
vertical_align:
|
|
1002
|
+
horizontal_align: z54.enum(["left", "center", "right"]).optional(),
|
|
1003
|
+
vertical_align: z54.enum(["top", "middle", "bottom"]).optional(),
|
|
986
1004
|
font_size: distance.optional(),
|
|
987
|
-
subcircuit_id:
|
|
1005
|
+
subcircuit_id: z54.string().optional()
|
|
988
1006
|
}).describe("Defines a cell within a schematic_table");
|
|
989
1007
|
expectTypesMatch(true);
|
|
990
1008
|
|
|
991
1009
|
// src/pcb/properties/layer_ref.ts
|
|
992
|
-
import { z as
|
|
1010
|
+
import { z as z55 } from "zod";
|
|
993
1011
|
var all_layers = [
|
|
994
1012
|
"top",
|
|
995
1013
|
"bottom",
|
|
@@ -1000,9 +1018,9 @@ var all_layers = [
|
|
|
1000
1018
|
"inner5",
|
|
1001
1019
|
"inner6"
|
|
1002
1020
|
];
|
|
1003
|
-
var layer_string =
|
|
1021
|
+
var layer_string = z55.enum(all_layers);
|
|
1004
1022
|
var layer_ref = layer_string.or(
|
|
1005
|
-
|
|
1023
|
+
z55.object({
|
|
1006
1024
|
name: layer_string
|
|
1007
1025
|
})
|
|
1008
1026
|
).transform((layer) => {
|
|
@@ -1012,56 +1030,56 @@ var layer_ref = layer_string.or(
|
|
|
1012
1030
|
return layer.name;
|
|
1013
1031
|
});
|
|
1014
1032
|
expectTypesMatch(true);
|
|
1015
|
-
var visible_layer =
|
|
1033
|
+
var visible_layer = z55.enum(["top", "bottom"]);
|
|
1016
1034
|
|
|
1017
1035
|
// src/pcb/properties/pcb_route_hints.ts
|
|
1018
|
-
import { z as
|
|
1019
|
-
var pcb_route_hint =
|
|
1036
|
+
import { z as z56 } from "zod";
|
|
1037
|
+
var pcb_route_hint = z56.object({
|
|
1020
1038
|
x: distance,
|
|
1021
1039
|
y: distance,
|
|
1022
|
-
via:
|
|
1040
|
+
via: z56.boolean().optional(),
|
|
1023
1041
|
via_to_layer: layer_ref.optional()
|
|
1024
1042
|
});
|
|
1025
|
-
var pcb_route_hints =
|
|
1043
|
+
var pcb_route_hints = z56.array(pcb_route_hint);
|
|
1026
1044
|
expectTypesMatch(true);
|
|
1027
1045
|
expectTypesMatch(true);
|
|
1028
1046
|
|
|
1029
1047
|
// src/pcb/properties/route_hint_point.ts
|
|
1030
|
-
import { z as
|
|
1031
|
-
var route_hint_point =
|
|
1048
|
+
import { z as z57 } from "zod";
|
|
1049
|
+
var route_hint_point = z57.object({
|
|
1032
1050
|
x: distance,
|
|
1033
1051
|
y: distance,
|
|
1034
|
-
via:
|
|
1052
|
+
via: z57.boolean().optional(),
|
|
1035
1053
|
to_layer: layer_ref.optional(),
|
|
1036
1054
|
trace_width: distance.optional()
|
|
1037
1055
|
});
|
|
1038
1056
|
expectTypesMatch(true);
|
|
1039
1057
|
|
|
1040
1058
|
// src/pcb/pcb_component.ts
|
|
1041
|
-
import { z as
|
|
1042
|
-
var pcb_component =
|
|
1043
|
-
type:
|
|
1059
|
+
import { z as z58 } from "zod";
|
|
1060
|
+
var pcb_component = z58.object({
|
|
1061
|
+
type: z58.literal("pcb_component"),
|
|
1044
1062
|
pcb_component_id: getZodPrefixedIdWithDefault("pcb_component"),
|
|
1045
|
-
source_component_id:
|
|
1063
|
+
source_component_id: z58.string(),
|
|
1046
1064
|
center: point,
|
|
1047
1065
|
layer: layer_ref,
|
|
1048
1066
|
rotation,
|
|
1049
1067
|
width: length,
|
|
1050
1068
|
height: length,
|
|
1051
|
-
subcircuit_id:
|
|
1052
|
-
pcb_group_id:
|
|
1069
|
+
subcircuit_id: z58.string().optional(),
|
|
1070
|
+
pcb_group_id: z58.string().optional()
|
|
1053
1071
|
}).describe("Defines a component on the PCB");
|
|
1054
1072
|
expectTypesMatch(true);
|
|
1055
1073
|
|
|
1056
1074
|
// src/pcb/pcb_hole.ts
|
|
1057
|
-
import { z as
|
|
1058
|
-
var pcb_hole_circle_or_square =
|
|
1059
|
-
type:
|
|
1075
|
+
import { z as z59 } from "zod";
|
|
1076
|
+
var pcb_hole_circle_or_square = z59.object({
|
|
1077
|
+
type: z59.literal("pcb_hole"),
|
|
1060
1078
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1061
|
-
pcb_group_id:
|
|
1062
|
-
subcircuit_id:
|
|
1063
|
-
hole_shape:
|
|
1064
|
-
hole_diameter:
|
|
1079
|
+
pcb_group_id: z59.string().optional(),
|
|
1080
|
+
subcircuit_id: z59.string().optional(),
|
|
1081
|
+
hole_shape: z59.enum(["circle", "square"]),
|
|
1082
|
+
hole_diameter: z59.number(),
|
|
1065
1083
|
x: distance,
|
|
1066
1084
|
y: distance
|
|
1067
1085
|
});
|
|
@@ -1069,14 +1087,14 @@ var pcb_hole_circle_or_square_shape = pcb_hole_circle_or_square.describe(
|
|
|
1069
1087
|
"Defines a circular or square hole on the PCB"
|
|
1070
1088
|
);
|
|
1071
1089
|
expectTypesMatch(true);
|
|
1072
|
-
var pcb_hole_oval =
|
|
1073
|
-
type:
|
|
1090
|
+
var pcb_hole_oval = z59.object({
|
|
1091
|
+
type: z59.literal("pcb_hole"),
|
|
1074
1092
|
pcb_hole_id: getZodPrefixedIdWithDefault("pcb_hole"),
|
|
1075
|
-
pcb_group_id:
|
|
1076
|
-
subcircuit_id:
|
|
1077
|
-
hole_shape:
|
|
1078
|
-
hole_width:
|
|
1079
|
-
hole_height:
|
|
1093
|
+
pcb_group_id: z59.string().optional(),
|
|
1094
|
+
subcircuit_id: z59.string().optional(),
|
|
1095
|
+
hole_shape: z59.literal("oval"),
|
|
1096
|
+
hole_width: z59.number(),
|
|
1097
|
+
hole_height: z59.number(),
|
|
1080
1098
|
x: distance,
|
|
1081
1099
|
y: distance
|
|
1082
1100
|
});
|
|
@@ -1087,81 +1105,103 @@ expectTypesMatch(true);
|
|
|
1087
1105
|
var pcb_hole = pcb_hole_circle_or_square.or(pcb_hole_oval);
|
|
1088
1106
|
|
|
1089
1107
|
// src/pcb/pcb_plated_hole.ts
|
|
1090
|
-
import { z as
|
|
1091
|
-
var pcb_plated_hole_circle =
|
|
1092
|
-
type:
|
|
1093
|
-
shape:
|
|
1094
|
-
pcb_group_id:
|
|
1095
|
-
subcircuit_id:
|
|
1096
|
-
outer_diameter:
|
|
1097
|
-
hole_diameter:
|
|
1108
|
+
import { z as z60 } from "zod";
|
|
1109
|
+
var pcb_plated_hole_circle = z60.object({
|
|
1110
|
+
type: z60.literal("pcb_plated_hole"),
|
|
1111
|
+
shape: z60.literal("circle"),
|
|
1112
|
+
pcb_group_id: z60.string().optional(),
|
|
1113
|
+
subcircuit_id: z60.string().optional(),
|
|
1114
|
+
outer_diameter: z60.number(),
|
|
1115
|
+
hole_diameter: z60.number(),
|
|
1098
1116
|
x: distance,
|
|
1099
1117
|
y: distance,
|
|
1100
|
-
layers:
|
|
1101
|
-
port_hints:
|
|
1102
|
-
pcb_component_id:
|
|
1103
|
-
pcb_port_id:
|
|
1118
|
+
layers: z60.array(layer_ref),
|
|
1119
|
+
port_hints: z60.array(z60.string()).optional(),
|
|
1120
|
+
pcb_component_id: z60.string().optional(),
|
|
1121
|
+
pcb_port_id: z60.string().optional(),
|
|
1104
1122
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1105
1123
|
});
|
|
1106
|
-
var pcb_plated_hole_oval =
|
|
1107
|
-
type:
|
|
1108
|
-
shape:
|
|
1109
|
-
pcb_group_id:
|
|
1110
|
-
subcircuit_id:
|
|
1111
|
-
outer_width:
|
|
1112
|
-
outer_height:
|
|
1113
|
-
hole_width:
|
|
1114
|
-
hole_height:
|
|
1124
|
+
var pcb_plated_hole_oval = z60.object({
|
|
1125
|
+
type: z60.literal("pcb_plated_hole"),
|
|
1126
|
+
shape: z60.enum(["oval", "pill"]),
|
|
1127
|
+
pcb_group_id: z60.string().optional(),
|
|
1128
|
+
subcircuit_id: z60.string().optional(),
|
|
1129
|
+
outer_width: z60.number(),
|
|
1130
|
+
outer_height: z60.number(),
|
|
1131
|
+
hole_width: z60.number(),
|
|
1132
|
+
hole_height: z60.number(),
|
|
1115
1133
|
x: distance,
|
|
1116
1134
|
y: distance,
|
|
1117
|
-
layers:
|
|
1118
|
-
port_hints:
|
|
1119
|
-
pcb_component_id:
|
|
1120
|
-
pcb_port_id:
|
|
1135
|
+
layers: z60.array(layer_ref),
|
|
1136
|
+
port_hints: z60.array(z60.string()).optional(),
|
|
1137
|
+
pcb_component_id: z60.string().optional(),
|
|
1138
|
+
pcb_port_id: z60.string().optional(),
|
|
1121
1139
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1122
1140
|
});
|
|
1123
|
-
var pcb_circular_hole_with_rect_pad =
|
|
1124
|
-
type:
|
|
1125
|
-
shape:
|
|
1126
|
-
pcb_group_id:
|
|
1127
|
-
subcircuit_id:
|
|
1128
|
-
hole_shape:
|
|
1129
|
-
pad_shape:
|
|
1130
|
-
hole_diameter:
|
|
1131
|
-
rect_pad_width:
|
|
1132
|
-
rect_pad_height:
|
|
1141
|
+
var pcb_circular_hole_with_rect_pad = z60.object({
|
|
1142
|
+
type: z60.literal("pcb_plated_hole"),
|
|
1143
|
+
shape: z60.literal("circular_hole_with_rect_pad"),
|
|
1144
|
+
pcb_group_id: z60.string().optional(),
|
|
1145
|
+
subcircuit_id: z60.string().optional(),
|
|
1146
|
+
hole_shape: z60.literal("circle"),
|
|
1147
|
+
pad_shape: z60.literal("rect"),
|
|
1148
|
+
hole_diameter: z60.number(),
|
|
1149
|
+
rect_pad_width: z60.number(),
|
|
1150
|
+
rect_pad_height: z60.number(),
|
|
1133
1151
|
x: distance,
|
|
1134
1152
|
y: distance,
|
|
1135
|
-
layers:
|
|
1136
|
-
port_hints:
|
|
1137
|
-
pcb_component_id:
|
|
1138
|
-
pcb_port_id:
|
|
1153
|
+
layers: z60.array(layer_ref),
|
|
1154
|
+
port_hints: z60.array(z60.string()).optional(),
|
|
1155
|
+
pcb_component_id: z60.string().optional(),
|
|
1156
|
+
pcb_port_id: z60.string().optional(),
|
|
1139
1157
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1140
1158
|
});
|
|
1141
|
-
var pcb_pill_hole_with_rect_pad =
|
|
1142
|
-
type:
|
|
1143
|
-
shape:
|
|
1144
|
-
pcb_group_id:
|
|
1145
|
-
subcircuit_id:
|
|
1146
|
-
hole_shape:
|
|
1147
|
-
pad_shape:
|
|
1148
|
-
hole_width:
|
|
1149
|
-
hole_height:
|
|
1150
|
-
rect_pad_width:
|
|
1151
|
-
rect_pad_height:
|
|
1159
|
+
var pcb_pill_hole_with_rect_pad = z60.object({
|
|
1160
|
+
type: z60.literal("pcb_plated_hole"),
|
|
1161
|
+
shape: z60.literal("pill_hole_with_rect_pad"),
|
|
1162
|
+
pcb_group_id: z60.string().optional(),
|
|
1163
|
+
subcircuit_id: z60.string().optional(),
|
|
1164
|
+
hole_shape: z60.literal("pill"),
|
|
1165
|
+
pad_shape: z60.literal("rect"),
|
|
1166
|
+
hole_width: z60.number(),
|
|
1167
|
+
hole_height: z60.number(),
|
|
1168
|
+
rect_pad_width: z60.number(),
|
|
1169
|
+
rect_pad_height: z60.number(),
|
|
1152
1170
|
x: distance,
|
|
1153
1171
|
y: distance,
|
|
1154
|
-
layers:
|
|
1155
|
-
port_hints:
|
|
1156
|
-
pcb_component_id:
|
|
1157
|
-
pcb_port_id:
|
|
1172
|
+
layers: z60.array(layer_ref),
|
|
1173
|
+
port_hints: z60.array(z60.string()).optional(),
|
|
1174
|
+
pcb_component_id: z60.string().optional(),
|
|
1175
|
+
pcb_port_id: z60.string().optional(),
|
|
1158
1176
|
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1159
1177
|
});
|
|
1160
|
-
var
|
|
1178
|
+
var pcb_rotated_pill_hole_with_rect_pad = z60.object({
|
|
1179
|
+
type: z60.literal("pcb_plated_hole"),
|
|
1180
|
+
shape: z60.literal("rotated_pill_hole_with_rect_pad"),
|
|
1181
|
+
pcb_group_id: z60.string().optional(),
|
|
1182
|
+
subcircuit_id: z60.string().optional(),
|
|
1183
|
+
hole_shape: z60.literal("rotated_pill"),
|
|
1184
|
+
pad_shape: z60.literal("rect"),
|
|
1185
|
+
hole_width: z60.number(),
|
|
1186
|
+
hole_height: z60.number(),
|
|
1187
|
+
hole_ccw_rotation: rotation,
|
|
1188
|
+
rect_pad_width: z60.number(),
|
|
1189
|
+
rect_pad_height: z60.number(),
|
|
1190
|
+
rect_ccw_rotation: rotation,
|
|
1191
|
+
x: distance,
|
|
1192
|
+
y: distance,
|
|
1193
|
+
layers: z60.array(layer_ref),
|
|
1194
|
+
port_hints: z60.array(z60.string()).optional(),
|
|
1195
|
+
pcb_component_id: z60.string().optional(),
|
|
1196
|
+
pcb_port_id: z60.string().optional(),
|
|
1197
|
+
pcb_plated_hole_id: getZodPrefixedIdWithDefault("pcb_plated_hole")
|
|
1198
|
+
});
|
|
1199
|
+
var pcb_plated_hole = z60.union([
|
|
1161
1200
|
pcb_plated_hole_circle,
|
|
1162
1201
|
pcb_plated_hole_oval,
|
|
1163
1202
|
pcb_circular_hole_with_rect_pad,
|
|
1164
|
-
pcb_pill_hole_with_rect_pad
|
|
1203
|
+
pcb_pill_hole_with_rect_pad,
|
|
1204
|
+
pcb_rotated_pill_hole_with_rect_pad
|
|
1165
1205
|
]);
|
|
1166
1206
|
expectTypesMatch(
|
|
1167
1207
|
true
|
|
@@ -1169,101 +1209,120 @@ expectTypesMatch(
|
|
|
1169
1209
|
expectTypesMatch(true);
|
|
1170
1210
|
expectTypesMatch(true);
|
|
1171
1211
|
expectTypesMatch(true);
|
|
1212
|
+
expectTypesMatch(true);
|
|
1172
1213
|
|
|
1173
1214
|
// src/pcb/pcb_port.ts
|
|
1174
|
-
import { z as
|
|
1175
|
-
var pcb_port =
|
|
1176
|
-
type:
|
|
1215
|
+
import { z as z61 } from "zod";
|
|
1216
|
+
var pcb_port = z61.object({
|
|
1217
|
+
type: z61.literal("pcb_port"),
|
|
1177
1218
|
pcb_port_id: getZodPrefixedIdWithDefault("pcb_port"),
|
|
1178
|
-
pcb_group_id:
|
|
1179
|
-
subcircuit_id:
|
|
1180
|
-
source_port_id:
|
|
1181
|
-
pcb_component_id:
|
|
1219
|
+
pcb_group_id: z61.string().optional(),
|
|
1220
|
+
subcircuit_id: z61.string().optional(),
|
|
1221
|
+
source_port_id: z61.string(),
|
|
1222
|
+
pcb_component_id: z61.string(),
|
|
1182
1223
|
x: distance,
|
|
1183
1224
|
y: distance,
|
|
1184
|
-
layers:
|
|
1225
|
+
layers: z61.array(layer_ref)
|
|
1185
1226
|
}).describe("Defines a port on the PCB");
|
|
1186
1227
|
expectTypesMatch(true);
|
|
1187
1228
|
|
|
1188
1229
|
// src/pcb/pcb_smtpad.ts
|
|
1189
|
-
import { z as
|
|
1190
|
-
var pcb_smtpad_circle =
|
|
1191
|
-
type:
|
|
1192
|
-
shape:
|
|
1230
|
+
import { z as z62 } from "zod";
|
|
1231
|
+
var pcb_smtpad_circle = z62.object({
|
|
1232
|
+
type: z62.literal("pcb_smtpad"),
|
|
1233
|
+
shape: z62.literal("circle"),
|
|
1193
1234
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1194
|
-
pcb_group_id:
|
|
1195
|
-
subcircuit_id:
|
|
1235
|
+
pcb_group_id: z62.string().optional(),
|
|
1236
|
+
subcircuit_id: z62.string().optional(),
|
|
1196
1237
|
x: distance,
|
|
1197
1238
|
y: distance,
|
|
1198
|
-
radius:
|
|
1239
|
+
radius: z62.number(),
|
|
1199
1240
|
layer: layer_ref,
|
|
1200
|
-
port_hints:
|
|
1201
|
-
pcb_component_id:
|
|
1202
|
-
pcb_port_id:
|
|
1241
|
+
port_hints: z62.array(z62.string()).optional(),
|
|
1242
|
+
pcb_component_id: z62.string().optional(),
|
|
1243
|
+
pcb_port_id: z62.string().optional()
|
|
1203
1244
|
});
|
|
1204
|
-
var pcb_smtpad_rect =
|
|
1205
|
-
type:
|
|
1206
|
-
shape:
|
|
1245
|
+
var pcb_smtpad_rect = z62.object({
|
|
1246
|
+
type: z62.literal("pcb_smtpad"),
|
|
1247
|
+
shape: z62.literal("rect"),
|
|
1207
1248
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1208
|
-
pcb_group_id:
|
|
1209
|
-
subcircuit_id:
|
|
1249
|
+
pcb_group_id: z62.string().optional(),
|
|
1250
|
+
subcircuit_id: z62.string().optional(),
|
|
1210
1251
|
x: distance,
|
|
1211
1252
|
y: distance,
|
|
1212
|
-
width:
|
|
1213
|
-
height:
|
|
1253
|
+
width: z62.number(),
|
|
1254
|
+
height: z62.number(),
|
|
1214
1255
|
layer: layer_ref,
|
|
1215
|
-
port_hints:
|
|
1216
|
-
pcb_component_id:
|
|
1217
|
-
pcb_port_id:
|
|
1256
|
+
port_hints: z62.array(z62.string()).optional(),
|
|
1257
|
+
pcb_component_id: z62.string().optional(),
|
|
1258
|
+
pcb_port_id: z62.string().optional()
|
|
1218
1259
|
});
|
|
1219
|
-
var pcb_smtpad_rotated_rect =
|
|
1220
|
-
type:
|
|
1221
|
-
shape:
|
|
1260
|
+
var pcb_smtpad_rotated_rect = z62.object({
|
|
1261
|
+
type: z62.literal("pcb_smtpad"),
|
|
1262
|
+
shape: z62.literal("rotated_rect"),
|
|
1222
1263
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1223
|
-
pcb_group_id:
|
|
1224
|
-
subcircuit_id:
|
|
1264
|
+
pcb_group_id: z62.string().optional(),
|
|
1265
|
+
subcircuit_id: z62.string().optional(),
|
|
1225
1266
|
x: distance,
|
|
1226
1267
|
y: distance,
|
|
1227
|
-
width:
|
|
1228
|
-
height:
|
|
1268
|
+
width: z62.number(),
|
|
1269
|
+
height: z62.number(),
|
|
1229
1270
|
ccw_rotation: rotation,
|
|
1230
1271
|
layer: layer_ref,
|
|
1231
|
-
port_hints:
|
|
1232
|
-
pcb_component_id:
|
|
1233
|
-
pcb_port_id:
|
|
1272
|
+
port_hints: z62.array(z62.string()).optional(),
|
|
1273
|
+
pcb_component_id: z62.string().optional(),
|
|
1274
|
+
pcb_port_id: z62.string().optional()
|
|
1234
1275
|
});
|
|
1235
|
-
var pcb_smtpad_pill =
|
|
1236
|
-
type:
|
|
1237
|
-
shape:
|
|
1276
|
+
var pcb_smtpad_pill = z62.object({
|
|
1277
|
+
type: z62.literal("pcb_smtpad"),
|
|
1278
|
+
shape: z62.literal("pill"),
|
|
1238
1279
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1239
|
-
pcb_group_id:
|
|
1240
|
-
subcircuit_id:
|
|
1280
|
+
pcb_group_id: z62.string().optional(),
|
|
1281
|
+
subcircuit_id: z62.string().optional(),
|
|
1241
1282
|
x: distance,
|
|
1242
1283
|
y: distance,
|
|
1243
|
-
width:
|
|
1244
|
-
height:
|
|
1245
|
-
radius:
|
|
1284
|
+
width: z62.number(),
|
|
1285
|
+
height: z62.number(),
|
|
1286
|
+
radius: z62.number(),
|
|
1246
1287
|
layer: layer_ref,
|
|
1247
|
-
port_hints:
|
|
1248
|
-
pcb_component_id:
|
|
1249
|
-
pcb_port_id:
|
|
1288
|
+
port_hints: z62.array(z62.string()).optional(),
|
|
1289
|
+
pcb_component_id: z62.string().optional(),
|
|
1290
|
+
pcb_port_id: z62.string().optional()
|
|
1250
1291
|
});
|
|
1251
|
-
var
|
|
1252
|
-
type:
|
|
1253
|
-
shape:
|
|
1292
|
+
var pcb_smtpad_rotated_pill = z62.object({
|
|
1293
|
+
type: z62.literal("pcb_smtpad"),
|
|
1294
|
+
shape: z62.literal("rotated_pill"),
|
|
1254
1295
|
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1255
|
-
pcb_group_id:
|
|
1256
|
-
subcircuit_id:
|
|
1257
|
-
|
|
1296
|
+
pcb_group_id: z62.string().optional(),
|
|
1297
|
+
subcircuit_id: z62.string().optional(),
|
|
1298
|
+
x: distance,
|
|
1299
|
+
y: distance,
|
|
1300
|
+
width: z62.number(),
|
|
1301
|
+
height: z62.number(),
|
|
1302
|
+
radius: z62.number(),
|
|
1303
|
+
ccw_rotation: rotation,
|
|
1304
|
+
layer: layer_ref,
|
|
1305
|
+
port_hints: z62.array(z62.string()).optional(),
|
|
1306
|
+
pcb_component_id: z62.string().optional(),
|
|
1307
|
+
pcb_port_id: z62.string().optional()
|
|
1308
|
+
});
|
|
1309
|
+
var pcb_smtpad_polygon = z62.object({
|
|
1310
|
+
type: z62.literal("pcb_smtpad"),
|
|
1311
|
+
shape: z62.literal("polygon"),
|
|
1312
|
+
pcb_smtpad_id: getZodPrefixedIdWithDefault("pcb_smtpad"),
|
|
1313
|
+
pcb_group_id: z62.string().optional(),
|
|
1314
|
+
subcircuit_id: z62.string().optional(),
|
|
1315
|
+
points: z62.array(point),
|
|
1258
1316
|
layer: layer_ref,
|
|
1259
|
-
port_hints:
|
|
1260
|
-
pcb_component_id:
|
|
1261
|
-
pcb_port_id:
|
|
1317
|
+
port_hints: z62.array(z62.string()).optional(),
|
|
1318
|
+
pcb_component_id: z62.string().optional(),
|
|
1319
|
+
pcb_port_id: z62.string().optional()
|
|
1262
1320
|
});
|
|
1263
|
-
var pcb_smtpad =
|
|
1321
|
+
var pcb_smtpad = z62.discriminatedUnion("shape", [
|
|
1264
1322
|
pcb_smtpad_circle,
|
|
1265
1323
|
pcb_smtpad_rect,
|
|
1266
1324
|
pcb_smtpad_rotated_rect,
|
|
1325
|
+
pcb_smtpad_rotated_pill,
|
|
1267
1326
|
pcb_smtpad_pill,
|
|
1268
1327
|
pcb_smtpad_polygon
|
|
1269
1328
|
]).describe("Defines an SMT pad on the PCB");
|
|
@@ -1272,81 +1331,82 @@ expectTypesMatch(true);
|
|
|
1272
1331
|
expectTypesMatch(true);
|
|
1273
1332
|
expectTypesMatch(true);
|
|
1274
1333
|
expectTypesMatch(true);
|
|
1334
|
+
expectTypesMatch(true);
|
|
1275
1335
|
|
|
1276
1336
|
// src/pcb/pcb_solder_paste.ts
|
|
1277
|
-
import { z as
|
|
1278
|
-
var pcb_solder_paste_circle =
|
|
1279
|
-
type:
|
|
1280
|
-
shape:
|
|
1337
|
+
import { z as z63 } from "zod";
|
|
1338
|
+
var pcb_solder_paste_circle = z63.object({
|
|
1339
|
+
type: z63.literal("pcb_solder_paste"),
|
|
1340
|
+
shape: z63.literal("circle"),
|
|
1281
1341
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1282
|
-
pcb_group_id:
|
|
1283
|
-
subcircuit_id:
|
|
1342
|
+
pcb_group_id: z63.string().optional(),
|
|
1343
|
+
subcircuit_id: z63.string().optional(),
|
|
1284
1344
|
x: distance,
|
|
1285
1345
|
y: distance,
|
|
1286
|
-
radius:
|
|
1346
|
+
radius: z63.number(),
|
|
1287
1347
|
layer: layer_ref,
|
|
1288
|
-
pcb_component_id:
|
|
1289
|
-
pcb_smtpad_id:
|
|
1348
|
+
pcb_component_id: z63.string().optional(),
|
|
1349
|
+
pcb_smtpad_id: z63.string().optional()
|
|
1290
1350
|
});
|
|
1291
|
-
var pcb_solder_paste_rect =
|
|
1292
|
-
type:
|
|
1293
|
-
shape:
|
|
1351
|
+
var pcb_solder_paste_rect = z63.object({
|
|
1352
|
+
type: z63.literal("pcb_solder_paste"),
|
|
1353
|
+
shape: z63.literal("rect"),
|
|
1294
1354
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1295
|
-
pcb_group_id:
|
|
1296
|
-
subcircuit_id:
|
|
1355
|
+
pcb_group_id: z63.string().optional(),
|
|
1356
|
+
subcircuit_id: z63.string().optional(),
|
|
1297
1357
|
x: distance,
|
|
1298
1358
|
y: distance,
|
|
1299
|
-
width:
|
|
1300
|
-
height:
|
|
1359
|
+
width: z63.number(),
|
|
1360
|
+
height: z63.number(),
|
|
1301
1361
|
layer: layer_ref,
|
|
1302
|
-
pcb_component_id:
|
|
1303
|
-
pcb_smtpad_id:
|
|
1362
|
+
pcb_component_id: z63.string().optional(),
|
|
1363
|
+
pcb_smtpad_id: z63.string().optional()
|
|
1304
1364
|
});
|
|
1305
|
-
var pcb_solder_paste_pill =
|
|
1306
|
-
type:
|
|
1307
|
-
shape:
|
|
1365
|
+
var pcb_solder_paste_pill = z63.object({
|
|
1366
|
+
type: z63.literal("pcb_solder_paste"),
|
|
1367
|
+
shape: z63.literal("pill"),
|
|
1308
1368
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1309
|
-
pcb_group_id:
|
|
1310
|
-
subcircuit_id:
|
|
1369
|
+
pcb_group_id: z63.string().optional(),
|
|
1370
|
+
subcircuit_id: z63.string().optional(),
|
|
1311
1371
|
x: distance,
|
|
1312
1372
|
y: distance,
|
|
1313
|
-
width:
|
|
1314
|
-
height:
|
|
1315
|
-
radius:
|
|
1373
|
+
width: z63.number(),
|
|
1374
|
+
height: z63.number(),
|
|
1375
|
+
radius: z63.number(),
|
|
1316
1376
|
layer: layer_ref,
|
|
1317
|
-
pcb_component_id:
|
|
1318
|
-
pcb_smtpad_id:
|
|
1377
|
+
pcb_component_id: z63.string().optional(),
|
|
1378
|
+
pcb_smtpad_id: z63.string().optional()
|
|
1319
1379
|
});
|
|
1320
|
-
var pcb_solder_paste_rotated_rect =
|
|
1321
|
-
type:
|
|
1322
|
-
shape:
|
|
1380
|
+
var pcb_solder_paste_rotated_rect = z63.object({
|
|
1381
|
+
type: z63.literal("pcb_solder_paste"),
|
|
1382
|
+
shape: z63.literal("rotated_rect"),
|
|
1323
1383
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1324
|
-
pcb_group_id:
|
|
1325
|
-
subcircuit_id:
|
|
1384
|
+
pcb_group_id: z63.string().optional(),
|
|
1385
|
+
subcircuit_id: z63.string().optional(),
|
|
1326
1386
|
x: distance,
|
|
1327
1387
|
y: distance,
|
|
1328
|
-
width:
|
|
1329
|
-
height:
|
|
1388
|
+
width: z63.number(),
|
|
1389
|
+
height: z63.number(),
|
|
1330
1390
|
ccw_rotation: distance,
|
|
1331
1391
|
layer: layer_ref,
|
|
1332
|
-
pcb_component_id:
|
|
1333
|
-
pcb_smtpad_id:
|
|
1392
|
+
pcb_component_id: z63.string().optional(),
|
|
1393
|
+
pcb_smtpad_id: z63.string().optional()
|
|
1334
1394
|
});
|
|
1335
|
-
var pcb_solder_paste_oval =
|
|
1336
|
-
type:
|
|
1337
|
-
shape:
|
|
1395
|
+
var pcb_solder_paste_oval = z63.object({
|
|
1396
|
+
type: z63.literal("pcb_solder_paste"),
|
|
1397
|
+
shape: z63.literal("oval"),
|
|
1338
1398
|
pcb_solder_paste_id: getZodPrefixedIdWithDefault("pcb_solder_paste"),
|
|
1339
|
-
pcb_group_id:
|
|
1340
|
-
subcircuit_id:
|
|
1399
|
+
pcb_group_id: z63.string().optional(),
|
|
1400
|
+
subcircuit_id: z63.string().optional(),
|
|
1341
1401
|
x: distance,
|
|
1342
1402
|
y: distance,
|
|
1343
|
-
width:
|
|
1344
|
-
height:
|
|
1403
|
+
width: z63.number(),
|
|
1404
|
+
height: z63.number(),
|
|
1345
1405
|
layer: layer_ref,
|
|
1346
|
-
pcb_component_id:
|
|
1347
|
-
pcb_smtpad_id:
|
|
1406
|
+
pcb_component_id: z63.string().optional(),
|
|
1407
|
+
pcb_smtpad_id: z63.string().optional()
|
|
1348
1408
|
});
|
|
1349
|
-
var pcb_solder_paste =
|
|
1409
|
+
var pcb_solder_paste = z63.union([
|
|
1350
1410
|
pcb_solder_paste_circle,
|
|
1351
1411
|
pcb_solder_paste_rect,
|
|
1352
1412
|
pcb_solder_paste_pill,
|
|
@@ -1362,98 +1422,98 @@ expectTypesMatch(
|
|
|
1362
1422
|
expectTypesMatch(true);
|
|
1363
1423
|
|
|
1364
1424
|
// src/pcb/pcb_text.ts
|
|
1365
|
-
import { z as
|
|
1366
|
-
var pcb_text =
|
|
1367
|
-
type:
|
|
1425
|
+
import { z as z64 } from "zod";
|
|
1426
|
+
var pcb_text = z64.object({
|
|
1427
|
+
type: z64.literal("pcb_text"),
|
|
1368
1428
|
pcb_text_id: getZodPrefixedIdWithDefault("pcb_text"),
|
|
1369
|
-
pcb_group_id:
|
|
1370
|
-
subcircuit_id:
|
|
1371
|
-
text:
|
|
1429
|
+
pcb_group_id: z64.string().optional(),
|
|
1430
|
+
subcircuit_id: z64.string().optional(),
|
|
1431
|
+
text: z64.string(),
|
|
1372
1432
|
center: point,
|
|
1373
1433
|
layer: layer_ref,
|
|
1374
1434
|
width: length,
|
|
1375
1435
|
height: length,
|
|
1376
|
-
lines:
|
|
1436
|
+
lines: z64.number(),
|
|
1377
1437
|
// @ts-ignore
|
|
1378
|
-
align:
|
|
1438
|
+
align: z64.enum(["bottom-left"])
|
|
1379
1439
|
}).describe("Defines text on the PCB");
|
|
1380
1440
|
expectTypesMatch(true);
|
|
1381
1441
|
|
|
1382
1442
|
// src/pcb/pcb_trace.ts
|
|
1383
|
-
import { z as
|
|
1384
|
-
var pcb_trace_route_point_wire =
|
|
1385
|
-
route_type:
|
|
1443
|
+
import { z as z65 } from "zod";
|
|
1444
|
+
var pcb_trace_route_point_wire = z65.object({
|
|
1445
|
+
route_type: z65.literal("wire"),
|
|
1386
1446
|
x: distance,
|
|
1387
1447
|
y: distance,
|
|
1388
1448
|
width: distance,
|
|
1389
|
-
start_pcb_port_id:
|
|
1390
|
-
end_pcb_port_id:
|
|
1449
|
+
start_pcb_port_id: z65.string().optional(),
|
|
1450
|
+
end_pcb_port_id: z65.string().optional(),
|
|
1391
1451
|
layer: layer_ref
|
|
1392
1452
|
});
|
|
1393
|
-
var pcb_trace_route_point_via =
|
|
1394
|
-
route_type:
|
|
1453
|
+
var pcb_trace_route_point_via = z65.object({
|
|
1454
|
+
route_type: z65.literal("via"),
|
|
1395
1455
|
x: distance,
|
|
1396
1456
|
y: distance,
|
|
1397
1457
|
hole_diameter: distance.optional(),
|
|
1398
1458
|
outer_diameter: distance.optional(),
|
|
1399
|
-
from_layer:
|
|
1400
|
-
to_layer:
|
|
1459
|
+
from_layer: z65.string(),
|
|
1460
|
+
to_layer: z65.string()
|
|
1401
1461
|
});
|
|
1402
|
-
var pcb_trace_route_point =
|
|
1462
|
+
var pcb_trace_route_point = z65.union([
|
|
1403
1463
|
pcb_trace_route_point_wire,
|
|
1404
1464
|
pcb_trace_route_point_via
|
|
1405
1465
|
]);
|
|
1406
|
-
var pcb_trace =
|
|
1407
|
-
type:
|
|
1408
|
-
source_trace_id:
|
|
1409
|
-
pcb_component_id:
|
|
1466
|
+
var pcb_trace = z65.object({
|
|
1467
|
+
type: z65.literal("pcb_trace"),
|
|
1468
|
+
source_trace_id: z65.string().optional(),
|
|
1469
|
+
pcb_component_id: z65.string().optional(),
|
|
1410
1470
|
pcb_trace_id: getZodPrefixedIdWithDefault("pcb_trace"),
|
|
1411
|
-
pcb_group_id:
|
|
1412
|
-
subcircuit_id:
|
|
1413
|
-
route_thickness_mode:
|
|
1414
|
-
route_order_index:
|
|
1415
|
-
should_round_corners:
|
|
1416
|
-
trace_length:
|
|
1417
|
-
route:
|
|
1471
|
+
pcb_group_id: z65.string().optional(),
|
|
1472
|
+
subcircuit_id: z65.string().optional(),
|
|
1473
|
+
route_thickness_mode: z65.enum(["constant", "interpolated"]).default("constant").optional(),
|
|
1474
|
+
route_order_index: z65.number().optional(),
|
|
1475
|
+
should_round_corners: z65.boolean().optional(),
|
|
1476
|
+
trace_length: z65.number().optional(),
|
|
1477
|
+
route: z65.array(pcb_trace_route_point)
|
|
1418
1478
|
}).describe("Defines a trace on the PCB");
|
|
1419
1479
|
expectTypesMatch(true);
|
|
1420
1480
|
expectTypesMatch(true);
|
|
1421
1481
|
|
|
1422
1482
|
// src/pcb/pcb_trace_error.ts
|
|
1423
|
-
import { z as
|
|
1424
|
-
var pcb_trace_error =
|
|
1425
|
-
type:
|
|
1483
|
+
import { z as z66 } from "zod";
|
|
1484
|
+
var pcb_trace_error = z66.object({
|
|
1485
|
+
type: z66.literal("pcb_trace_error"),
|
|
1426
1486
|
pcb_trace_error_id: getZodPrefixedIdWithDefault("pcb_trace_error"),
|
|
1427
|
-
error_type:
|
|
1428
|
-
message:
|
|
1487
|
+
error_type: z66.literal("pcb_trace_error").default("pcb_trace_error"),
|
|
1488
|
+
message: z66.string(),
|
|
1429
1489
|
center: point.optional(),
|
|
1430
|
-
pcb_trace_id:
|
|
1431
|
-
source_trace_id:
|
|
1432
|
-
pcb_component_ids:
|
|
1433
|
-
pcb_port_ids:
|
|
1434
|
-
subcircuit_id:
|
|
1490
|
+
pcb_trace_id: z66.string(),
|
|
1491
|
+
source_trace_id: z66.string(),
|
|
1492
|
+
pcb_component_ids: z66.array(z66.string()),
|
|
1493
|
+
pcb_port_ids: z66.array(z66.string()),
|
|
1494
|
+
subcircuit_id: z66.string().optional()
|
|
1435
1495
|
}).describe("Defines a trace error on the PCB");
|
|
1436
1496
|
expectTypesMatch(true);
|
|
1437
1497
|
|
|
1438
1498
|
// src/pcb/pcb_port_not_matched_error.ts
|
|
1439
|
-
import { z as
|
|
1440
|
-
var pcb_port_not_matched_error =
|
|
1441
|
-
type:
|
|
1499
|
+
import { z as z67 } from "zod";
|
|
1500
|
+
var pcb_port_not_matched_error = z67.object({
|
|
1501
|
+
type: z67.literal("pcb_port_not_matched_error"),
|
|
1442
1502
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
1443
|
-
error_type:
|
|
1444
|
-
message:
|
|
1445
|
-
pcb_component_ids:
|
|
1446
|
-
subcircuit_id:
|
|
1503
|
+
error_type: z67.literal("pcb_port_not_matched_error").default("pcb_port_not_matched_error"),
|
|
1504
|
+
message: z67.string(),
|
|
1505
|
+
pcb_component_ids: z67.array(z67.string()),
|
|
1506
|
+
subcircuit_id: z67.string().optional()
|
|
1447
1507
|
}).describe("Defines a trace error on the PCB where a port is not matched");
|
|
1448
1508
|
expectTypesMatch(true);
|
|
1449
1509
|
|
|
1450
1510
|
// src/pcb/pcb_via.ts
|
|
1451
|
-
import { z as
|
|
1452
|
-
var pcb_via =
|
|
1453
|
-
type:
|
|
1511
|
+
import { z as z68 } from "zod";
|
|
1512
|
+
var pcb_via = z68.object({
|
|
1513
|
+
type: z68.literal("pcb_via"),
|
|
1454
1514
|
pcb_via_id: getZodPrefixedIdWithDefault("pcb_via"),
|
|
1455
|
-
pcb_group_id:
|
|
1456
|
-
subcircuit_id:
|
|
1515
|
+
pcb_group_id: z68.string().optional(),
|
|
1516
|
+
subcircuit_id: z68.string().optional(),
|
|
1457
1517
|
x: distance,
|
|
1458
1518
|
y: distance,
|
|
1459
1519
|
outer_diameter: distance.default("0.6mm"),
|
|
@@ -1462,59 +1522,59 @@ var pcb_via = z67.object({
|
|
|
1462
1522
|
from_layer: layer_ref.optional(),
|
|
1463
1523
|
/** @deprecated */
|
|
1464
1524
|
to_layer: layer_ref.optional(),
|
|
1465
|
-
layers:
|
|
1466
|
-
pcb_trace_id:
|
|
1525
|
+
layers: z68.array(layer_ref),
|
|
1526
|
+
pcb_trace_id: z68.string().optional()
|
|
1467
1527
|
}).describe("Defines a via on the PCB");
|
|
1468
1528
|
expectTypesMatch(true);
|
|
1469
1529
|
|
|
1470
1530
|
// src/pcb/pcb_board.ts
|
|
1471
|
-
import { z as
|
|
1472
|
-
var pcb_board =
|
|
1473
|
-
type:
|
|
1531
|
+
import { z as z69 } from "zod";
|
|
1532
|
+
var pcb_board = z69.object({
|
|
1533
|
+
type: z69.literal("pcb_board"),
|
|
1474
1534
|
pcb_board_id: getZodPrefixedIdWithDefault("pcb_board"),
|
|
1475
|
-
is_subcircuit:
|
|
1476
|
-
subcircuit_id:
|
|
1535
|
+
is_subcircuit: z69.boolean().optional(),
|
|
1536
|
+
subcircuit_id: z69.string().optional(),
|
|
1477
1537
|
width: length,
|
|
1478
1538
|
height: length,
|
|
1479
1539
|
center: point,
|
|
1480
1540
|
thickness: length.optional().default(1.4),
|
|
1481
|
-
num_layers:
|
|
1482
|
-
outline:
|
|
1483
|
-
material:
|
|
1541
|
+
num_layers: z69.number().optional().default(4),
|
|
1542
|
+
outline: z69.array(point).optional(),
|
|
1543
|
+
material: z69.enum(["fr4", "fr1"]).default("fr4")
|
|
1484
1544
|
}).describe("Defines the board outline of the PCB");
|
|
1485
1545
|
expectTypesMatch(true);
|
|
1486
1546
|
|
|
1487
1547
|
// src/pcb/pcb_placement_error.ts
|
|
1488
|
-
import { z as
|
|
1489
|
-
var pcb_placement_error =
|
|
1490
|
-
type:
|
|
1548
|
+
import { z as z70 } from "zod";
|
|
1549
|
+
var pcb_placement_error = z70.object({
|
|
1550
|
+
type: z70.literal("pcb_placement_error"),
|
|
1491
1551
|
pcb_placement_error_id: getZodPrefixedIdWithDefault("pcb_placement_error"),
|
|
1492
|
-
error_type:
|
|
1493
|
-
message:
|
|
1494
|
-
subcircuit_id:
|
|
1552
|
+
error_type: z70.literal("pcb_placement_error").default("pcb_placement_error"),
|
|
1553
|
+
message: z70.string(),
|
|
1554
|
+
subcircuit_id: z70.string().optional()
|
|
1495
1555
|
}).describe("Defines a placement error on the PCB");
|
|
1496
1556
|
expectTypesMatch(true);
|
|
1497
1557
|
|
|
1498
1558
|
// src/pcb/pcb_trace_hint.ts
|
|
1499
|
-
import { z as
|
|
1500
|
-
var pcb_trace_hint =
|
|
1501
|
-
type:
|
|
1559
|
+
import { z as z71 } from "zod";
|
|
1560
|
+
var pcb_trace_hint = z71.object({
|
|
1561
|
+
type: z71.literal("pcb_trace_hint"),
|
|
1502
1562
|
pcb_trace_hint_id: getZodPrefixedIdWithDefault("pcb_trace_hint"),
|
|
1503
|
-
pcb_port_id:
|
|
1504
|
-
pcb_component_id:
|
|
1505
|
-
route:
|
|
1506
|
-
subcircuit_id:
|
|
1563
|
+
pcb_port_id: z71.string(),
|
|
1564
|
+
pcb_component_id: z71.string(),
|
|
1565
|
+
route: z71.array(route_hint_point),
|
|
1566
|
+
subcircuit_id: z71.string().optional()
|
|
1507
1567
|
}).describe("A hint that can be used during generation of a PCB trace");
|
|
1508
1568
|
expectTypesMatch(true);
|
|
1509
1569
|
|
|
1510
1570
|
// src/pcb/pcb_silkscreen_line.ts
|
|
1511
|
-
import { z as
|
|
1512
|
-
var pcb_silkscreen_line =
|
|
1513
|
-
type:
|
|
1571
|
+
import { z as z72 } from "zod";
|
|
1572
|
+
var pcb_silkscreen_line = z72.object({
|
|
1573
|
+
type: z72.literal("pcb_silkscreen_line"),
|
|
1514
1574
|
pcb_silkscreen_line_id: getZodPrefixedIdWithDefault("pcb_silkscreen_line"),
|
|
1515
|
-
pcb_component_id:
|
|
1516
|
-
pcb_group_id:
|
|
1517
|
-
subcircuit_id:
|
|
1575
|
+
pcb_component_id: z72.string(),
|
|
1576
|
+
pcb_group_id: z72.string().optional(),
|
|
1577
|
+
subcircuit_id: z72.string().optional(),
|
|
1518
1578
|
stroke_width: distance.default("0.1mm"),
|
|
1519
1579
|
x1: distance,
|
|
1520
1580
|
y1: distance,
|
|
@@ -1525,67 +1585,67 @@ var pcb_silkscreen_line = z71.object({
|
|
|
1525
1585
|
expectTypesMatch(true);
|
|
1526
1586
|
|
|
1527
1587
|
// src/pcb/pcb_silkscreen_path.ts
|
|
1528
|
-
import { z as
|
|
1529
|
-
var pcb_silkscreen_path =
|
|
1530
|
-
type:
|
|
1588
|
+
import { z as z73 } from "zod";
|
|
1589
|
+
var pcb_silkscreen_path = z73.object({
|
|
1590
|
+
type: z73.literal("pcb_silkscreen_path"),
|
|
1531
1591
|
pcb_silkscreen_path_id: getZodPrefixedIdWithDefault("pcb_silkscreen_path"),
|
|
1532
|
-
pcb_component_id:
|
|
1533
|
-
pcb_group_id:
|
|
1534
|
-
subcircuit_id:
|
|
1592
|
+
pcb_component_id: z73.string(),
|
|
1593
|
+
pcb_group_id: z73.string().optional(),
|
|
1594
|
+
subcircuit_id: z73.string().optional(),
|
|
1535
1595
|
layer: visible_layer,
|
|
1536
|
-
route:
|
|
1596
|
+
route: z73.array(point),
|
|
1537
1597
|
stroke_width: length
|
|
1538
1598
|
}).describe("Defines a silkscreen path on the PCB");
|
|
1539
1599
|
expectTypesMatch(true);
|
|
1540
1600
|
|
|
1541
1601
|
// src/pcb/pcb_silkscreen_text.ts
|
|
1542
|
-
import { z as
|
|
1543
|
-
var pcb_silkscreen_text =
|
|
1544
|
-
type:
|
|
1602
|
+
import { z as z74 } from "zod";
|
|
1603
|
+
var pcb_silkscreen_text = z74.object({
|
|
1604
|
+
type: z74.literal("pcb_silkscreen_text"),
|
|
1545
1605
|
pcb_silkscreen_text_id: getZodPrefixedIdWithDefault("pcb_silkscreen_text"),
|
|
1546
|
-
pcb_group_id:
|
|
1547
|
-
subcircuit_id:
|
|
1548
|
-
font:
|
|
1606
|
+
pcb_group_id: z74.string().optional(),
|
|
1607
|
+
subcircuit_id: z74.string().optional(),
|
|
1608
|
+
font: z74.literal("tscircuit2024").default("tscircuit2024"),
|
|
1549
1609
|
font_size: distance.default("0.2mm"),
|
|
1550
|
-
pcb_component_id:
|
|
1551
|
-
text:
|
|
1552
|
-
ccw_rotation:
|
|
1610
|
+
pcb_component_id: z74.string(),
|
|
1611
|
+
text: z74.string(),
|
|
1612
|
+
ccw_rotation: z74.number().optional(),
|
|
1553
1613
|
layer: layer_ref,
|
|
1554
|
-
is_mirrored:
|
|
1614
|
+
is_mirrored: z74.boolean().default(false).optional(),
|
|
1555
1615
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1556
1616
|
anchor_alignment: ninePointAnchor.default("center")
|
|
1557
1617
|
}).describe("Defines silkscreen text on the PCB");
|
|
1558
1618
|
expectTypesMatch(true);
|
|
1559
1619
|
|
|
1560
1620
|
// src/pcb/pcb_silkscreen_rect.ts
|
|
1561
|
-
import { z as
|
|
1562
|
-
var pcb_silkscreen_rect =
|
|
1563
|
-
type:
|
|
1621
|
+
import { z as z75 } from "zod";
|
|
1622
|
+
var pcb_silkscreen_rect = z75.object({
|
|
1623
|
+
type: z75.literal("pcb_silkscreen_rect"),
|
|
1564
1624
|
pcb_silkscreen_rect_id: getZodPrefixedIdWithDefault("pcb_silkscreen_rect"),
|
|
1565
|
-
pcb_component_id:
|
|
1566
|
-
pcb_group_id:
|
|
1567
|
-
subcircuit_id:
|
|
1625
|
+
pcb_component_id: z75.string(),
|
|
1626
|
+
pcb_group_id: z75.string().optional(),
|
|
1627
|
+
subcircuit_id: z75.string().optional(),
|
|
1568
1628
|
center: point,
|
|
1569
1629
|
width: length,
|
|
1570
1630
|
height: length,
|
|
1571
1631
|
layer: layer_ref,
|
|
1572
1632
|
stroke_width: length.default("1mm"),
|
|
1573
|
-
is_filled:
|
|
1574
|
-
has_stroke:
|
|
1575
|
-
is_stroke_dashed:
|
|
1633
|
+
is_filled: z75.boolean().default(true).optional(),
|
|
1634
|
+
has_stroke: z75.boolean().optional(),
|
|
1635
|
+
is_stroke_dashed: z75.boolean().optional()
|
|
1576
1636
|
}).describe("Defines a silkscreen rect on the PCB");
|
|
1577
1637
|
expectTypesMatch(true);
|
|
1578
1638
|
|
|
1579
1639
|
// src/pcb/pcb_silkscreen_circle.ts
|
|
1580
|
-
import { z as
|
|
1581
|
-
var pcb_silkscreen_circle =
|
|
1582
|
-
type:
|
|
1640
|
+
import { z as z76 } from "zod";
|
|
1641
|
+
var pcb_silkscreen_circle = z76.object({
|
|
1642
|
+
type: z76.literal("pcb_silkscreen_circle"),
|
|
1583
1643
|
pcb_silkscreen_circle_id: getZodPrefixedIdWithDefault(
|
|
1584
1644
|
"pcb_silkscreen_circle"
|
|
1585
1645
|
),
|
|
1586
|
-
pcb_component_id:
|
|
1587
|
-
pcb_group_id:
|
|
1588
|
-
subcircuit_id:
|
|
1646
|
+
pcb_component_id: z76.string(),
|
|
1647
|
+
pcb_group_id: z76.string().optional(),
|
|
1648
|
+
subcircuit_id: z76.string().optional(),
|
|
1589
1649
|
center: point,
|
|
1590
1650
|
radius: length,
|
|
1591
1651
|
layer: visible_layer,
|
|
@@ -1594,13 +1654,13 @@ var pcb_silkscreen_circle = z75.object({
|
|
|
1594
1654
|
expectTypesMatch(true);
|
|
1595
1655
|
|
|
1596
1656
|
// src/pcb/pcb_silkscreen_oval.ts
|
|
1597
|
-
import { z as
|
|
1598
|
-
var pcb_silkscreen_oval =
|
|
1599
|
-
type:
|
|
1657
|
+
import { z as z77 } from "zod";
|
|
1658
|
+
var pcb_silkscreen_oval = z77.object({
|
|
1659
|
+
type: z77.literal("pcb_silkscreen_oval"),
|
|
1600
1660
|
pcb_silkscreen_oval_id: getZodPrefixedIdWithDefault("pcb_silkscreen_oval"),
|
|
1601
|
-
pcb_component_id:
|
|
1602
|
-
pcb_group_id:
|
|
1603
|
-
subcircuit_id:
|
|
1661
|
+
pcb_component_id: z77.string(),
|
|
1662
|
+
pcb_group_id: z77.string().optional(),
|
|
1663
|
+
subcircuit_id: z77.string().optional(),
|
|
1604
1664
|
center: point,
|
|
1605
1665
|
radius_x: distance,
|
|
1606
1666
|
radius_y: distance,
|
|
@@ -1609,103 +1669,103 @@ var pcb_silkscreen_oval = z76.object({
|
|
|
1609
1669
|
expectTypesMatch(true);
|
|
1610
1670
|
|
|
1611
1671
|
// src/pcb/pcb_fabrication_note_text.ts
|
|
1612
|
-
import { z as
|
|
1613
|
-
var pcb_fabrication_note_text =
|
|
1614
|
-
type:
|
|
1672
|
+
import { z as z78 } from "zod";
|
|
1673
|
+
var pcb_fabrication_note_text = z78.object({
|
|
1674
|
+
type: z78.literal("pcb_fabrication_note_text"),
|
|
1615
1675
|
pcb_fabrication_note_text_id: getZodPrefixedIdWithDefault(
|
|
1616
1676
|
"pcb_fabrication_note_text"
|
|
1617
1677
|
),
|
|
1618
|
-
subcircuit_id:
|
|
1619
|
-
pcb_group_id:
|
|
1620
|
-
font:
|
|
1678
|
+
subcircuit_id: z78.string().optional(),
|
|
1679
|
+
pcb_group_id: z78.string().optional(),
|
|
1680
|
+
font: z78.literal("tscircuit2024").default("tscircuit2024"),
|
|
1621
1681
|
font_size: distance.default("1mm"),
|
|
1622
|
-
pcb_component_id:
|
|
1623
|
-
text:
|
|
1682
|
+
pcb_component_id: z78.string(),
|
|
1683
|
+
text: z78.string(),
|
|
1624
1684
|
layer: visible_layer,
|
|
1625
1685
|
anchor_position: point.default({ x: 0, y: 0 }),
|
|
1626
|
-
anchor_alignment:
|
|
1627
|
-
color:
|
|
1686
|
+
anchor_alignment: z78.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
|
|
1687
|
+
color: z78.string().optional()
|
|
1628
1688
|
}).describe(
|
|
1629
1689
|
"Defines a fabrication note in text on the PCB, useful for leaving notes for assemblers or fabricators"
|
|
1630
1690
|
);
|
|
1631
1691
|
expectTypesMatch(true);
|
|
1632
1692
|
|
|
1633
1693
|
// src/pcb/pcb_fabrication_note_path.ts
|
|
1634
|
-
import { z as
|
|
1635
|
-
var pcb_fabrication_note_path =
|
|
1636
|
-
type:
|
|
1694
|
+
import { z as z79 } from "zod";
|
|
1695
|
+
var pcb_fabrication_note_path = z79.object({
|
|
1696
|
+
type: z79.literal("pcb_fabrication_note_path"),
|
|
1637
1697
|
pcb_fabrication_note_path_id: getZodPrefixedIdWithDefault(
|
|
1638
1698
|
"pcb_fabrication_note_path"
|
|
1639
1699
|
),
|
|
1640
|
-
pcb_component_id:
|
|
1641
|
-
subcircuit_id:
|
|
1700
|
+
pcb_component_id: z79.string(),
|
|
1701
|
+
subcircuit_id: z79.string().optional(),
|
|
1642
1702
|
layer: layer_ref,
|
|
1643
|
-
route:
|
|
1703
|
+
route: z79.array(point),
|
|
1644
1704
|
stroke_width: length,
|
|
1645
|
-
color:
|
|
1705
|
+
color: z79.string().optional()
|
|
1646
1706
|
}).describe(
|
|
1647
1707
|
"Defines a fabrication path on the PCB for fabricators or assemblers"
|
|
1648
1708
|
);
|
|
1649
1709
|
expectTypesMatch(true);
|
|
1650
1710
|
|
|
1651
1711
|
// src/pcb/pcb_footprint_overlap_error.ts
|
|
1652
|
-
import { z as
|
|
1653
|
-
var pcb_footprint_overlap_error =
|
|
1654
|
-
type:
|
|
1712
|
+
import { z as z80 } from "zod";
|
|
1713
|
+
var pcb_footprint_overlap_error = z80.object({
|
|
1714
|
+
type: z80.literal("pcb_footprint_overlap_error"),
|
|
1655
1715
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_error"),
|
|
1656
|
-
error_type:
|
|
1657
|
-
message:
|
|
1658
|
-
pcb_smtpad_ids:
|
|
1659
|
-
pcb_plated_hole_ids:
|
|
1660
|
-
pcb_hole_ids:
|
|
1661
|
-
pcb_keepout_ids:
|
|
1716
|
+
error_type: z80.literal("pcb_footprint_overlap_error").default("pcb_footprint_overlap_error"),
|
|
1717
|
+
message: z80.string(),
|
|
1718
|
+
pcb_smtpad_ids: z80.array(z80.string()).optional(),
|
|
1719
|
+
pcb_plated_hole_ids: z80.array(z80.string()).optional(),
|
|
1720
|
+
pcb_hole_ids: z80.array(z80.string()).optional(),
|
|
1721
|
+
pcb_keepout_ids: z80.array(z80.string()).optional()
|
|
1662
1722
|
}).describe("Error emitted when a pcb footprint overlaps with another element");
|
|
1663
1723
|
expectTypesMatch(
|
|
1664
1724
|
true
|
|
1665
1725
|
);
|
|
1666
1726
|
|
|
1667
1727
|
// src/pcb/pcb_keepout.ts
|
|
1668
|
-
import { z as
|
|
1669
|
-
var pcb_keepout =
|
|
1670
|
-
type:
|
|
1671
|
-
shape:
|
|
1672
|
-
pcb_group_id:
|
|
1673
|
-
subcircuit_id:
|
|
1728
|
+
import { z as z81 } from "zod";
|
|
1729
|
+
var pcb_keepout = z81.object({
|
|
1730
|
+
type: z81.literal("pcb_keepout"),
|
|
1731
|
+
shape: z81.literal("rect"),
|
|
1732
|
+
pcb_group_id: z81.string().optional(),
|
|
1733
|
+
subcircuit_id: z81.string().optional(),
|
|
1674
1734
|
center: point,
|
|
1675
1735
|
width: distance,
|
|
1676
1736
|
height: distance,
|
|
1677
|
-
pcb_keepout_id:
|
|
1678
|
-
layers:
|
|
1737
|
+
pcb_keepout_id: z81.string(),
|
|
1738
|
+
layers: z81.array(z81.string()),
|
|
1679
1739
|
// Specify layers where the keepout applies
|
|
1680
|
-
description:
|
|
1740
|
+
description: z81.string().optional()
|
|
1681
1741
|
// Optional description of the keepout
|
|
1682
1742
|
}).or(
|
|
1683
|
-
|
|
1684
|
-
type:
|
|
1685
|
-
shape:
|
|
1686
|
-
pcb_group_id:
|
|
1687
|
-
subcircuit_id:
|
|
1743
|
+
z81.object({
|
|
1744
|
+
type: z81.literal("pcb_keepout"),
|
|
1745
|
+
shape: z81.literal("circle"),
|
|
1746
|
+
pcb_group_id: z81.string().optional(),
|
|
1747
|
+
subcircuit_id: z81.string().optional(),
|
|
1688
1748
|
center: point,
|
|
1689
1749
|
radius: distance,
|
|
1690
|
-
pcb_keepout_id:
|
|
1691
|
-
layers:
|
|
1750
|
+
pcb_keepout_id: z81.string(),
|
|
1751
|
+
layers: z81.array(z81.string()),
|
|
1692
1752
|
// Specify layers where the keepout applies
|
|
1693
|
-
description:
|
|
1753
|
+
description: z81.string().optional()
|
|
1694
1754
|
// Optional description of the keepout
|
|
1695
1755
|
})
|
|
1696
1756
|
);
|
|
1697
1757
|
expectTypesMatch(true);
|
|
1698
1758
|
|
|
1699
1759
|
// src/pcb/pcb_cutout.ts
|
|
1700
|
-
import { z as
|
|
1701
|
-
var pcb_cutout_base =
|
|
1702
|
-
type:
|
|
1760
|
+
import { z as z82 } from "zod";
|
|
1761
|
+
var pcb_cutout_base = z82.object({
|
|
1762
|
+
type: z82.literal("pcb_cutout"),
|
|
1703
1763
|
pcb_cutout_id: getZodPrefixedIdWithDefault("pcb_cutout"),
|
|
1704
|
-
pcb_group_id:
|
|
1705
|
-
subcircuit_id:
|
|
1764
|
+
pcb_group_id: z82.string().optional(),
|
|
1765
|
+
subcircuit_id: z82.string().optional()
|
|
1706
1766
|
});
|
|
1707
1767
|
var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
1708
|
-
shape:
|
|
1768
|
+
shape: z82.literal("rect"),
|
|
1709
1769
|
center: point,
|
|
1710
1770
|
width: length,
|
|
1711
1771
|
height: length,
|
|
@@ -1713,17 +1773,17 @@ var pcb_cutout_rect = pcb_cutout_base.extend({
|
|
|
1713
1773
|
});
|
|
1714
1774
|
expectTypesMatch(true);
|
|
1715
1775
|
var pcb_cutout_circle = pcb_cutout_base.extend({
|
|
1716
|
-
shape:
|
|
1776
|
+
shape: z82.literal("circle"),
|
|
1717
1777
|
center: point,
|
|
1718
1778
|
radius: length
|
|
1719
1779
|
});
|
|
1720
1780
|
expectTypesMatch(true);
|
|
1721
1781
|
var pcb_cutout_polygon = pcb_cutout_base.extend({
|
|
1722
|
-
shape:
|
|
1723
|
-
points:
|
|
1782
|
+
shape: z82.literal("polygon"),
|
|
1783
|
+
points: z82.array(point)
|
|
1724
1784
|
});
|
|
1725
1785
|
expectTypesMatch(true);
|
|
1726
|
-
var pcb_cutout =
|
|
1786
|
+
var pcb_cutout = z82.discriminatedUnion("shape", [
|
|
1727
1787
|
pcb_cutout_rect,
|
|
1728
1788
|
pcb_cutout_circle,
|
|
1729
1789
|
pcb_cutout_polygon
|
|
@@ -1731,82 +1791,82 @@ var pcb_cutout = z81.discriminatedUnion("shape", [
|
|
|
1731
1791
|
expectTypesMatch(true);
|
|
1732
1792
|
|
|
1733
1793
|
// src/pcb/pcb_missing_footprint_error.ts
|
|
1734
|
-
import { z as
|
|
1735
|
-
var pcb_missing_footprint_error =
|
|
1736
|
-
type:
|
|
1794
|
+
import { z as z83 } from "zod";
|
|
1795
|
+
var pcb_missing_footprint_error = z83.object({
|
|
1796
|
+
type: z83.literal("pcb_missing_footprint_error"),
|
|
1737
1797
|
pcb_missing_footprint_error_id: getZodPrefixedIdWithDefault(
|
|
1738
1798
|
"pcb_missing_footprint_error"
|
|
1739
1799
|
),
|
|
1740
|
-
pcb_group_id:
|
|
1741
|
-
subcircuit_id:
|
|
1742
|
-
error_type:
|
|
1743
|
-
source_component_id:
|
|
1744
|
-
message:
|
|
1800
|
+
pcb_group_id: z83.string().optional(),
|
|
1801
|
+
subcircuit_id: z83.string().optional(),
|
|
1802
|
+
error_type: z83.literal("pcb_missing_footprint_error").default("pcb_missing_footprint_error"),
|
|
1803
|
+
source_component_id: z83.string(),
|
|
1804
|
+
message: z83.string()
|
|
1745
1805
|
}).describe("Defines a missing footprint error on the PCB");
|
|
1746
1806
|
expectTypesMatch(
|
|
1747
1807
|
true
|
|
1748
1808
|
);
|
|
1749
1809
|
|
|
1750
1810
|
// src/pcb/pcb_group.ts
|
|
1751
|
-
import { z as
|
|
1752
|
-
var pcb_group =
|
|
1753
|
-
type:
|
|
1811
|
+
import { z as z84 } from "zod";
|
|
1812
|
+
var pcb_group = z84.object({
|
|
1813
|
+
type: z84.literal("pcb_group"),
|
|
1754
1814
|
pcb_group_id: getZodPrefixedIdWithDefault("pcb_group"),
|
|
1755
|
-
source_group_id:
|
|
1756
|
-
is_subcircuit:
|
|
1757
|
-
subcircuit_id:
|
|
1815
|
+
source_group_id: z84.string(),
|
|
1816
|
+
is_subcircuit: z84.boolean().optional(),
|
|
1817
|
+
subcircuit_id: z84.string().optional(),
|
|
1758
1818
|
width: length,
|
|
1759
1819
|
height: length,
|
|
1760
1820
|
center: point,
|
|
1761
|
-
pcb_component_ids:
|
|
1762
|
-
name:
|
|
1763
|
-
description:
|
|
1764
|
-
autorouter_configuration:
|
|
1821
|
+
pcb_component_ids: z84.array(z84.string()),
|
|
1822
|
+
name: z84.string().optional(),
|
|
1823
|
+
description: z84.string().optional(),
|
|
1824
|
+
autorouter_configuration: z84.object({
|
|
1765
1825
|
trace_clearance: length
|
|
1766
1826
|
}).optional(),
|
|
1767
|
-
autorouter_used_string:
|
|
1827
|
+
autorouter_used_string: z84.string().optional()
|
|
1768
1828
|
}).describe("Defines a group of components on the PCB");
|
|
1769
1829
|
expectTypesMatch(true);
|
|
1770
1830
|
|
|
1771
1831
|
// src/pcb/pcb_autorouting_error.ts
|
|
1772
|
-
import { z as
|
|
1773
|
-
var pcb_autorouting_error =
|
|
1774
|
-
type:
|
|
1832
|
+
import { z as z85 } from "zod";
|
|
1833
|
+
var pcb_autorouting_error = z85.object({
|
|
1834
|
+
type: z85.literal("pcb_autorouting_error"),
|
|
1775
1835
|
pcb_error_id: getZodPrefixedIdWithDefault("pcb_autorouting_error"),
|
|
1776
|
-
error_type:
|
|
1777
|
-
message:
|
|
1778
|
-
subcircuit_id:
|
|
1836
|
+
error_type: z85.literal("pcb_autorouting_error").default("pcb_autorouting_error"),
|
|
1837
|
+
message: z85.string(),
|
|
1838
|
+
subcircuit_id: z85.string().optional()
|
|
1779
1839
|
}).describe("The autorouting has failed to route a portion of the board");
|
|
1780
1840
|
expectTypesMatch(true);
|
|
1781
1841
|
|
|
1782
1842
|
// src/pcb/pcb_manual_edit_conflict_warning.ts
|
|
1783
|
-
import { z as
|
|
1784
|
-
var pcb_manual_edit_conflict_warning =
|
|
1785
|
-
type:
|
|
1843
|
+
import { z as z86 } from "zod";
|
|
1844
|
+
var pcb_manual_edit_conflict_warning = z86.object({
|
|
1845
|
+
type: z86.literal("pcb_manual_edit_conflict_warning"),
|
|
1786
1846
|
pcb_manual_edit_conflict_warning_id: getZodPrefixedIdWithDefault(
|
|
1787
1847
|
"pcb_manual_edit_conflict_warning"
|
|
1788
1848
|
),
|
|
1789
|
-
warning_type:
|
|
1790
|
-
message:
|
|
1791
|
-
pcb_component_id:
|
|
1792
|
-
pcb_group_id:
|
|
1793
|
-
subcircuit_id:
|
|
1794
|
-
source_component_id:
|
|
1849
|
+
warning_type: z86.literal("pcb_manual_edit_conflict_warning").default("pcb_manual_edit_conflict_warning"),
|
|
1850
|
+
message: z86.string(),
|
|
1851
|
+
pcb_component_id: z86.string(),
|
|
1852
|
+
pcb_group_id: z86.string().optional(),
|
|
1853
|
+
subcircuit_id: z86.string().optional(),
|
|
1854
|
+
source_component_id: z86.string()
|
|
1795
1855
|
}).describe(
|
|
1796
1856
|
"Warning emitted when a component has both manual placement and explicit pcbX/pcbY coordinates"
|
|
1797
1857
|
);
|
|
1798
1858
|
expectTypesMatch(true);
|
|
1799
1859
|
|
|
1800
1860
|
// src/pcb/pcb_breakout_point.ts
|
|
1801
|
-
import { z as
|
|
1802
|
-
var pcb_breakout_point =
|
|
1803
|
-
type:
|
|
1861
|
+
import { z as z87 } from "zod";
|
|
1862
|
+
var pcb_breakout_point = z87.object({
|
|
1863
|
+
type: z87.literal("pcb_breakout_point"),
|
|
1804
1864
|
pcb_breakout_point_id: getZodPrefixedIdWithDefault("pcb_breakout_point"),
|
|
1805
|
-
pcb_group_id:
|
|
1806
|
-
subcircuit_id:
|
|
1807
|
-
source_trace_id:
|
|
1808
|
-
source_port_id:
|
|
1809
|
-
source_net_id:
|
|
1865
|
+
pcb_group_id: z87.string(),
|
|
1866
|
+
subcircuit_id: z87.string().optional(),
|
|
1867
|
+
source_trace_id: z87.string().optional(),
|
|
1868
|
+
source_port_id: z87.string().optional(),
|
|
1869
|
+
source_net_id: z87.string().optional(),
|
|
1810
1870
|
x: distance,
|
|
1811
1871
|
y: distance
|
|
1812
1872
|
}).describe(
|
|
@@ -1815,85 +1875,85 @@ var pcb_breakout_point = z86.object({
|
|
|
1815
1875
|
expectTypesMatch(true);
|
|
1816
1876
|
|
|
1817
1877
|
// src/pcb/pcb_ground_plane.ts
|
|
1818
|
-
import { z as
|
|
1819
|
-
var pcb_ground_plane =
|
|
1820
|
-
type:
|
|
1878
|
+
import { z as z88 } from "zod";
|
|
1879
|
+
var pcb_ground_plane = z88.object({
|
|
1880
|
+
type: z88.literal("pcb_ground_plane"),
|
|
1821
1881
|
pcb_ground_plane_id: getZodPrefixedIdWithDefault("pcb_ground_plane"),
|
|
1822
|
-
source_pcb_ground_plane_id:
|
|
1823
|
-
source_net_id:
|
|
1824
|
-
pcb_group_id:
|
|
1825
|
-
subcircuit_id:
|
|
1882
|
+
source_pcb_ground_plane_id: z88.string(),
|
|
1883
|
+
source_net_id: z88.string(),
|
|
1884
|
+
pcb_group_id: z88.string().optional(),
|
|
1885
|
+
subcircuit_id: z88.string().optional()
|
|
1826
1886
|
}).describe("Defines a ground plane on the PCB");
|
|
1827
1887
|
expectTypesMatch(true);
|
|
1828
1888
|
|
|
1829
1889
|
// src/pcb/pcb_ground_plane_region.ts
|
|
1830
|
-
import { z as
|
|
1831
|
-
var pcb_ground_plane_region =
|
|
1832
|
-
type:
|
|
1890
|
+
import { z as z89 } from "zod";
|
|
1891
|
+
var pcb_ground_plane_region = z89.object({
|
|
1892
|
+
type: z89.literal("pcb_ground_plane_region"),
|
|
1833
1893
|
pcb_ground_plane_region_id: getZodPrefixedIdWithDefault(
|
|
1834
1894
|
"pcb_ground_plane_region"
|
|
1835
1895
|
),
|
|
1836
|
-
pcb_ground_plane_id:
|
|
1837
|
-
pcb_group_id:
|
|
1838
|
-
subcircuit_id:
|
|
1896
|
+
pcb_ground_plane_id: z89.string(),
|
|
1897
|
+
pcb_group_id: z89.string().optional(),
|
|
1898
|
+
subcircuit_id: z89.string().optional(),
|
|
1839
1899
|
layer: layer_ref,
|
|
1840
|
-
points:
|
|
1900
|
+
points: z89.array(point)
|
|
1841
1901
|
}).describe("Defines a polygon region of a ground plane");
|
|
1842
1902
|
expectTypesMatch(true);
|
|
1843
1903
|
|
|
1844
1904
|
// src/pcb/pcb_thermal_spoke.ts
|
|
1845
|
-
import { z as
|
|
1846
|
-
var pcb_thermal_spoke =
|
|
1847
|
-
type:
|
|
1905
|
+
import { z as z90 } from "zod";
|
|
1906
|
+
var pcb_thermal_spoke = z90.object({
|
|
1907
|
+
type: z90.literal("pcb_thermal_spoke"),
|
|
1848
1908
|
pcb_thermal_spoke_id: getZodPrefixedIdWithDefault("pcb_thermal_spoke"),
|
|
1849
|
-
pcb_ground_plane_id:
|
|
1850
|
-
shape:
|
|
1851
|
-
spoke_count:
|
|
1909
|
+
pcb_ground_plane_id: z90.string(),
|
|
1910
|
+
shape: z90.string(),
|
|
1911
|
+
spoke_count: z90.number(),
|
|
1852
1912
|
spoke_thickness: distance,
|
|
1853
1913
|
spoke_inner_diameter: distance,
|
|
1854
1914
|
spoke_outer_diameter: distance,
|
|
1855
|
-
pcb_plated_hole_id:
|
|
1856
|
-
subcircuit_id:
|
|
1915
|
+
pcb_plated_hole_id: z90.string().optional(),
|
|
1916
|
+
subcircuit_id: z90.string().optional()
|
|
1857
1917
|
}).describe("Pattern for connecting a ground plane to a plated hole");
|
|
1858
1918
|
expectTypesMatch(true);
|
|
1859
1919
|
|
|
1860
1920
|
// src/cad/cad_component.ts
|
|
1861
|
-
import { z as
|
|
1862
|
-
var cad_component =
|
|
1863
|
-
type:
|
|
1864
|
-
cad_component_id:
|
|
1865
|
-
pcb_component_id:
|
|
1866
|
-
source_component_id:
|
|
1921
|
+
import { z as z91 } from "zod";
|
|
1922
|
+
var cad_component = z91.object({
|
|
1923
|
+
type: z91.literal("cad_component"),
|
|
1924
|
+
cad_component_id: z91.string(),
|
|
1925
|
+
pcb_component_id: z91.string(),
|
|
1926
|
+
source_component_id: z91.string(),
|
|
1867
1927
|
position: point3,
|
|
1868
1928
|
rotation: point3.optional(),
|
|
1869
1929
|
size: point3.optional(),
|
|
1870
1930
|
layer: layer_ref.optional(),
|
|
1871
|
-
subcircuit_id:
|
|
1931
|
+
subcircuit_id: z91.string().optional(),
|
|
1872
1932
|
// These are all ways to generate/load the 3d model
|
|
1873
|
-
footprinter_string:
|
|
1874
|
-
model_obj_url:
|
|
1875
|
-
model_stl_url:
|
|
1876
|
-
model_3mf_url:
|
|
1877
|
-
model_jscad:
|
|
1933
|
+
footprinter_string: z91.string().optional(),
|
|
1934
|
+
model_obj_url: z91.string().optional(),
|
|
1935
|
+
model_stl_url: z91.string().optional(),
|
|
1936
|
+
model_3mf_url: z91.string().optional(),
|
|
1937
|
+
model_jscad: z91.any().optional()
|
|
1878
1938
|
}).describe("Defines a component on the PCB");
|
|
1879
1939
|
expectTypesMatch(true);
|
|
1880
1940
|
|
|
1881
1941
|
// src/simulation/simulation_voltage_source.ts
|
|
1882
|
-
import { z as
|
|
1883
|
-
var simulation_voltage_source =
|
|
1884
|
-
type:
|
|
1942
|
+
import { z as z92 } from "zod";
|
|
1943
|
+
var simulation_voltage_source = z92.object({
|
|
1944
|
+
type: z92.literal("simulation_voltage_source"),
|
|
1885
1945
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
1886
1946
|
"simulation_voltage_source"
|
|
1887
1947
|
),
|
|
1888
|
-
positive_source_port_id:
|
|
1889
|
-
negative_source_port_id:
|
|
1948
|
+
positive_source_port_id: z92.string(),
|
|
1949
|
+
negative_source_port_id: z92.string(),
|
|
1890
1950
|
voltage
|
|
1891
1951
|
}).describe("Defines a voltage source for simulation");
|
|
1892
1952
|
expectTypesMatch(true);
|
|
1893
1953
|
|
|
1894
1954
|
// src/any_circuit_element.ts
|
|
1895
|
-
import { z as
|
|
1896
|
-
var any_circuit_element =
|
|
1955
|
+
import { z as z93 } from "zod";
|
|
1956
|
+
var any_circuit_element = z93.union([
|
|
1897
1957
|
source_trace,
|
|
1898
1958
|
source_port,
|
|
1899
1959
|
any_source_component,
|
|
@@ -1917,6 +1977,7 @@ var any_circuit_element = z92.union([
|
|
|
1917
1977
|
source_simple_push_button,
|
|
1918
1978
|
source_pcb_ground_plane,
|
|
1919
1979
|
source_project_metadata,
|
|
1980
|
+
source_trace_not_connected,
|
|
1920
1981
|
pcb_component,
|
|
1921
1982
|
pcb_hole,
|
|
1922
1983
|
pcb_missing_footprint_error,
|
|
@@ -2093,6 +2154,7 @@ export {
|
|
|
2093
2154
|
source_simple_test_point,
|
|
2094
2155
|
source_simple_transistor,
|
|
2095
2156
|
source_trace,
|
|
2157
|
+
source_trace_not_connected,
|
|
2096
2158
|
supplier_name,
|
|
2097
2159
|
time,
|
|
2098
2160
|
visible_layer,
|