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