@tscircuit/props 0.0.152 → 0.0.154

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -463,84 +463,101 @@ var resonatorProps = commonComponentProps.extend({
463
463
  });
464
464
  expectTypesMatch(true);
465
465
 
466
+ // lib/components/stampboard.ts
467
+ import { distance as distance9 } from "circuit-json";
468
+ import { z as z28 } from "zod";
469
+ var stampboardProps = boardProps.extend({
470
+ leftPinCount: z28.number().optional(),
471
+ rightPinCount: z28.number().optional(),
472
+ topPinCount: z28.number().optional(),
473
+ bottomPinCount: z28.number().optional(),
474
+ leftPins: z28.array(z28.string()).optional(),
475
+ rightPins: z28.array(z28.string()).optional(),
476
+ topPins: z28.array(z28.string()).optional(),
477
+ bottomPins: z28.array(z28.string()).optional(),
478
+ pinPitch: distance9.optional(),
479
+ innerHoles: z28.boolean().optional()
480
+ });
481
+ expectTypesMatch(true);
482
+
466
483
  // lib/components/capacitor.ts
467
484
  import { capacitance as capacitance3, voltage } from "circuit-json";
468
- import { z as z28 } from "zod";
485
+ import { z as z29 } from "zod";
469
486
  var capacitorProps = commonComponentProps.extend({
470
487
  capacitance: capacitance3,
471
488
  maxVoltageRating: voltage.optional(),
472
- schShowRatings: z28.boolean().optional().default(false),
473
- polarized: z28.boolean().optional().default(false),
474
- decouplingFor: z28.string().optional(),
475
- decouplingTo: z28.string().optional(),
476
- bypassFor: z28.string().optional(),
477
- bypassTo: z28.string().optional(),
478
- maxDecouplingTraceLength: z28.number().optional()
489
+ schShowRatings: z29.boolean().optional().default(false),
490
+ polarized: z29.boolean().optional().default(false),
491
+ decouplingFor: z29.string().optional(),
492
+ decouplingTo: z29.string().optional(),
493
+ bypassFor: z29.string().optional(),
494
+ bypassTo: z29.string().optional(),
495
+ maxDecouplingTraceLength: z29.number().optional()
479
496
  });
480
497
  var capacitorPins = lrPolarPins;
481
498
  expectTypesMatch(true);
482
499
 
483
500
  // lib/components/net.ts
484
- import { z as z29 } from "zod";
485
- var netProps = z29.object({
486
- name: z29.string()
501
+ import { z as z30 } from "zod";
502
+ var netProps = z30.object({
503
+ name: z30.string()
487
504
  });
488
505
  expectTypesMatch(true);
489
506
 
490
507
  // lib/components/constrainedlayout.ts
491
- import { z as z30 } from "zod";
492
- var constrainedLayoutProps = z30.object({
493
- name: z30.string().optional(),
494
- pcbOnly: z30.boolean().optional(),
495
- schOnly: z30.boolean().optional()
508
+ import { z as z31 } from "zod";
509
+ var constrainedLayoutProps = z31.object({
510
+ name: z31.string().optional(),
511
+ pcbOnly: z31.boolean().optional(),
512
+ schOnly: z31.boolean().optional()
496
513
  });
497
514
  expectTypesMatch(true);
498
515
 
499
516
  // lib/common/distance.ts
500
517
  import "zod";
501
- import { distance as distance9, length as length2 } from "circuit-json";
518
+ import { distance as distance10, length as length2 } from "circuit-json";
502
519
 
503
520
  // lib/components/constraint.ts
504
- import { z as z32 } from "zod";
505
- var pcbXDistConstraintProps = z32.object({
506
- pcb: z32.literal(true).optional(),
507
- xDist: distance9,
508
- left: z32.string(),
509
- right: z32.string(),
510
- edgeToEdge: z32.literal(true).optional(),
511
- centerToCenter: z32.literal(true).optional()
521
+ import { z as z33 } from "zod";
522
+ var pcbXDistConstraintProps = z33.object({
523
+ pcb: z33.literal(true).optional(),
524
+ xDist: distance10,
525
+ left: z33.string(),
526
+ right: z33.string(),
527
+ edgeToEdge: z33.literal(true).optional(),
528
+ centerToCenter: z33.literal(true).optional()
512
529
  });
513
530
  expectTypesMatch(
514
531
  true
515
532
  );
516
- var pcbYDistConstraintProps = z32.object({
517
- pcb: z32.literal(true).optional(),
518
- yDist: distance9,
519
- top: z32.string(),
520
- bottom: z32.string(),
521
- edgeToEdge: z32.literal(true).optional(),
522
- centerToCenter: z32.literal(true).optional()
533
+ var pcbYDistConstraintProps = z33.object({
534
+ pcb: z33.literal(true).optional(),
535
+ yDist: distance10,
536
+ top: z33.string(),
537
+ bottom: z33.string(),
538
+ edgeToEdge: z33.literal(true).optional(),
539
+ centerToCenter: z33.literal(true).optional()
523
540
  });
524
541
  expectTypesMatch(
525
542
  true
526
543
  );
527
- var pcbSameYConstraintProps = z32.object({
528
- pcb: z32.literal(true).optional(),
529
- sameY: z32.literal(true).optional(),
530
- for: z32.array(z32.string())
544
+ var pcbSameYConstraintProps = z33.object({
545
+ pcb: z33.literal(true).optional(),
546
+ sameY: z33.literal(true).optional(),
547
+ for: z33.array(z33.string())
531
548
  });
532
549
  expectTypesMatch(
533
550
  true
534
551
  );
535
- var pcbSameXConstraintProps = z32.object({
536
- pcb: z32.literal(true).optional(),
537
- sameX: z32.literal(true).optional(),
538
- for: z32.array(z32.string())
552
+ var pcbSameXConstraintProps = z33.object({
553
+ pcb: z33.literal(true).optional(),
554
+ sameX: z33.literal(true).optional(),
555
+ for: z33.array(z33.string())
539
556
  });
540
557
  expectTypesMatch(
541
558
  true
542
559
  );
543
- var constraintProps = z32.union([
560
+ var constraintProps = z33.union([
544
561
  pcbXDistConstraintProps,
545
562
  pcbYDistConstraintProps,
546
563
  pcbSameYConstraintProps,
@@ -549,37 +566,37 @@ var constraintProps = z32.union([
549
566
  expectTypesMatch(true);
550
567
 
551
568
  // lib/components/smtpad.ts
552
- import { z as z33 } from "zod";
569
+ import { z as z34 } from "zod";
553
570
  var rectSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
554
- shape: z33.literal("rect"),
555
- width: distance9,
556
- height: distance9,
571
+ shape: z34.literal("rect"),
572
+ width: distance10,
573
+ height: distance10,
557
574
  portHints: portHints.optional()
558
575
  });
559
576
  expectTypesMatch(true);
560
577
  var rotatedRectSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
561
- shape: z33.literal("rotated_rect"),
562
- width: distance9,
563
- height: distance9,
564
- ccwRotation: z33.number(),
578
+ shape: z34.literal("rotated_rect"),
579
+ width: distance10,
580
+ height: distance10,
581
+ ccwRotation: z34.number(),
565
582
  portHints: portHints.optional()
566
583
  });
567
584
  expectTypesMatch(true);
568
585
  var circleSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
569
- shape: z33.literal("circle"),
570
- radius: distance9,
586
+ shape: z34.literal("circle"),
587
+ radius: distance10,
571
588
  portHints: portHints.optional()
572
589
  });
573
590
  expectTypesMatch(true);
574
591
  var pillSmtPadProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
575
- shape: z33.literal("pill"),
576
- width: distance9,
577
- height: distance9,
578
- radius: distance9,
592
+ shape: z34.literal("pill"),
593
+ width: distance10,
594
+ height: distance10,
595
+ radius: distance10,
579
596
  portHints: portHints.optional()
580
597
  });
581
598
  expectTypesMatch(true);
582
- var smtPadProps = z33.union([
599
+ var smtPadProps = z34.union([
583
600
  circleSmtPadProps,
584
601
  rectSmtPadProps,
585
602
  rotatedRectSmtPadProps,
@@ -588,30 +605,30 @@ var smtPadProps = z33.union([
588
605
  expectTypesMatch(true);
589
606
 
590
607
  // lib/components/solderpaste.ts
591
- import { z as z34 } from "zod";
608
+ import { z as z35 } from "zod";
592
609
  var rectSolderPasteProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
593
- shape: z34.literal("rect"),
594
- width: distance9,
595
- height: distance9
610
+ shape: z35.literal("rect"),
611
+ width: distance10,
612
+ height: distance10
596
613
  });
597
614
  expectTypesMatch(true);
598
615
  var circleSolderPasteProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
599
- shape: z34.literal("circle"),
600
- radius: distance9
616
+ shape: z35.literal("circle"),
617
+ radius: distance10
601
618
  });
602
619
  expectTypesMatch(true);
603
- var solderPasteProps = z34.union([
620
+ var solderPasteProps = z35.union([
604
621
  circleSolderPasteProps,
605
622
  rectSolderPasteProps
606
623
  ]);
607
624
  expectTypesMatch(true);
608
625
 
609
626
  // lib/components/hole.ts
610
- import { z as z35 } from "zod";
627
+ import { z as z36 } from "zod";
611
628
  var holeProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
612
- name: z35.string().optional(),
613
- diameter: distance9.optional(),
614
- radius: distance9.optional()
629
+ name: z36.string().optional(),
630
+ diameter: distance10.optional(),
631
+ radius: distance10.optional()
615
632
  }).transform((d) => ({
616
633
  ...d,
617
634
  diameter: d.diameter ?? 2 * d.radius,
@@ -620,25 +637,25 @@ var holeProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
620
637
  expectTypesMatch(true);
621
638
 
622
639
  // lib/components/trace.ts
623
- import { distance as distance10, route_hint_point as route_hint_point3 } from "circuit-json";
624
- import { z as z36 } from "zod";
625
- var portRef = z36.union([
626
- z36.string(),
627
- z36.custom(
640
+ import { distance as distance11, route_hint_point as route_hint_point3 } from "circuit-json";
641
+ import { z as z37 } from "zod";
642
+ var portRef = z37.union([
643
+ z37.string(),
644
+ z37.custom(
628
645
  (v) => Boolean(v.getPortSelector)
629
646
  )
630
647
  ]);
631
- var baseTraceProps = z36.object({
632
- key: z36.string().optional(),
633
- thickness: distance10.optional(),
634
- schematicRouteHints: z36.array(point).optional(),
635
- pcbRouteHints: z36.array(route_hint_point3).optional(),
636
- schDisplayLabel: z36.string().optional(),
637
- maxLength: distance10.optional()
638
- });
639
- var traceProps = z36.union([
648
+ var baseTraceProps = z37.object({
649
+ key: z37.string().optional(),
650
+ thickness: distance11.optional(),
651
+ schematicRouteHints: z37.array(point).optional(),
652
+ pcbRouteHints: z37.array(route_hint_point3).optional(),
653
+ schDisplayLabel: z37.string().optional(),
654
+ maxLength: distance11.optional()
655
+ });
656
+ var traceProps = z37.union([
640
657
  baseTraceProps.extend({
641
- path: z36.array(portRef)
658
+ path: z37.array(portRef)
642
659
  }),
643
660
  baseTraceProps.extend({
644
661
  from: portRef,
@@ -648,15 +665,15 @@ var traceProps = z36.union([
648
665
 
649
666
  // lib/components/footprint.ts
650
667
  import { layer_ref as layer_ref3 } from "circuit-json";
651
- import { z as z37 } from "zod";
652
- var footprintProps = z37.object({
668
+ import { z as z38 } from "zod";
669
+ var footprintProps = z38.object({
653
670
  originalLayer: layer_ref3.default("top").optional()
654
671
  });
655
672
  expectTypesMatch(true);
656
673
 
657
674
  // lib/components/battery.ts
658
- import { z as z38 } from "zod";
659
- var capacity = z38.number().or(z38.string().endsWith("mAh")).transform((v) => {
675
+ import { z as z39 } from "zod";
676
+ var capacity = z39.number().or(z39.string().endsWith("mAh")).transform((v) => {
660
677
  if (typeof v === "string") {
661
678
  const valString = v.replace("mAh", "");
662
679
  const num = Number.parseFloat(valString);
@@ -674,38 +691,38 @@ var batteryPins = lrPolarPins;
674
691
  expectTypesMatch(true);
675
692
 
676
693
  // lib/components/pin-header.ts
677
- import { distance as distance11 } from "circuit-json";
678
- import { z as z39 } from "zod";
694
+ import { distance as distance12 } from "circuit-json";
695
+ import { z as z40 } from "zod";
679
696
  var pinHeaderProps = commonComponentProps.extend({
680
- pinCount: z39.number(),
681
- pitch: distance11.optional(),
682
- schFacingDirection: z39.enum(["up", "down", "left", "right"]).optional(),
683
- gender: z39.enum(["male", "female"]).optional().default("male"),
684
- showSilkscreenPinLabels: z39.boolean().optional(),
685
- doubleRow: z39.boolean().optional(),
686
- holeDiameter: distance11.optional(),
687
- platedDiameter: distance11.optional(),
688
- pinLabels: z39.array(z39.string()).optional(),
689
- facingDirection: z39.enum(["left", "right"]).optional()
697
+ pinCount: z40.number(),
698
+ pitch: distance12.optional(),
699
+ schFacingDirection: z40.enum(["up", "down", "left", "right"]).optional(),
700
+ gender: z40.enum(["male", "female"]).optional().default("male"),
701
+ showSilkscreenPinLabels: z40.boolean().optional(),
702
+ doubleRow: z40.boolean().optional(),
703
+ holeDiameter: distance12.optional(),
704
+ platedDiameter: distance12.optional(),
705
+ pinLabels: z40.array(z40.string()).optional(),
706
+ facingDirection: z40.enum(["left", "right"]).optional()
690
707
  });
691
708
  expectTypesMatch(true);
692
709
 
693
710
  // lib/components/netalias.ts
694
- import { z as z40 } from "zod";
711
+ import { z as z41 } from "zod";
695
712
  import { rotation as rotation2 } from "circuit-json";
696
- var netAliasProps = z40.object({
697
- net: z40.string().optional(),
698
- schX: distance9.optional(),
699
- schY: distance9.optional(),
713
+ var netAliasProps = z41.object({
714
+ net: z41.string().optional(),
715
+ schX: distance10.optional(),
716
+ schY: distance10.optional(),
700
717
  schRotation: rotation2.optional(),
701
- anchorSide: z40.enum(["left", "up", "right", "down"]).optional()
718
+ anchorSide: z41.enum(["left", "up", "right", "down"]).optional()
702
719
  });
703
720
  expectTypesMatch(true);
704
721
 
705
722
  // lib/components/push-button.ts
706
- import { z as z41 } from "zod";
723
+ import { z as z42 } from "zod";
707
724
  var pushButtonProps = commonComponentProps.extend({
708
- internallyConnectedPins: z41.array(z41.array(z41.string())).optional()
725
+ internallyConnectedPins: z42.array(z42.array(z42.string())).optional()
709
726
  });
710
727
  expectTypesMatch(true);
711
728
 
@@ -714,9 +731,9 @@ var subcircuitProps = subcircuitGroupProps;
714
731
  expectTypesMatch(true);
715
732
 
716
733
  // lib/components/transistor.ts
717
- import { z as z42 } from "zod";
734
+ import { z as z43 } from "zod";
718
735
  var transistorProps = commonComponentProps.extend({
719
- type: z42.enum(["npn", "pnp", "bjt", "jfet", "mosfet"])
736
+ type: z43.enum(["npn", "pnp", "bjt", "jfet", "mosfet"])
720
737
  });
721
738
  var transistorPins = [
722
739
  "pin1",
@@ -729,10 +746,10 @@ var transistorPins = [
729
746
  expectTypesMatch(true);
730
747
 
731
748
  // lib/components/mosfet.ts
732
- import { z as z43 } from "zod";
749
+ import { z as z44 } from "zod";
733
750
  var mosfetProps = commonComponentProps.extend({
734
- channelType: z43.enum(["n", "p"]),
735
- mosfetMode: z43.enum(["enhancement", "depletion"])
751
+ channelType: z44.enum(["n", "p"]),
752
+ mosfetMode: z44.enum(["enhancement", "depletion"])
736
753
  });
737
754
  var mosfetPins = [
738
755
  "pin1",
@@ -756,21 +773,21 @@ var diodeProps = commonComponentProps.extend({});
756
773
  var diodePins = lrPolarPins;
757
774
 
758
775
  // lib/components/led.ts
759
- import { z as z44 } from "zod";
776
+ import { z as z45 } from "zod";
760
777
  var ledProps = commonComponentProps.extend({
761
- color: z44.string().optional()
778
+ color: z45.string().optional()
762
779
  });
763
780
  var ledPins = lrPolarPins;
764
781
 
765
782
  // lib/components/switch.ts
766
- import { z as z45 } from "zod";
783
+ import { z as z46 } from "zod";
767
784
  var switchProps = commonComponentProps.extend({
768
- type: z45.enum(["spst", "spdt", "dpst", "dpdt"]).optional(),
769
- isNormallyClosed: z45.boolean().optional().default(false),
770
- spst: z45.boolean().optional(),
771
- spdt: z45.boolean().optional(),
772
- dpst: z45.boolean().optional(),
773
- dpdt: z45.boolean().optional()
785
+ type: z46.enum(["spst", "spdt", "dpst", "dpdt"]).optional(),
786
+ isNormallyClosed: z46.boolean().optional().default(false),
787
+ spst: z46.boolean().optional(),
788
+ spdt: z46.boolean().optional(),
789
+ dpst: z46.boolean().optional(),
790
+ dpdt: z46.boolean().optional()
774
791
  }).transform((props) => {
775
792
  const updatedProps = { ...props };
776
793
  if (updatedProps.dpdt) {
@@ -802,54 +819,54 @@ expectTypesMatch(true);
802
819
 
803
820
  // lib/components/fabrication-note-text.ts
804
821
  import { length as length3 } from "circuit-json";
805
- import { z as z46 } from "zod";
822
+ import { z as z47 } from "zod";
806
823
  var fabricationNoteTextProps = pcbLayoutProps.extend({
807
- text: z46.string(),
808
- anchorAlignment: z46.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
809
- font: z46.enum(["tscircuit2024"]).optional(),
824
+ text: z47.string(),
825
+ anchorAlignment: z47.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
826
+ font: z47.enum(["tscircuit2024"]).optional(),
810
827
  fontSize: length3.optional(),
811
- color: z46.string().optional()
828
+ color: z47.string().optional()
812
829
  });
813
830
 
814
831
  // lib/components/fabrication-note-path.ts
815
832
  import { length as length4, route_hint_point as route_hint_point4 } from "circuit-json";
816
- import { z as z47 } from "zod";
833
+ import { z as z48 } from "zod";
817
834
  var fabricationNotePathProps = pcbLayoutProps.omit({ pcbX: true, pcbY: true, pcbRotation: true }).extend({
818
- route: z47.array(route_hint_point4),
835
+ route: z48.array(route_hint_point4),
819
836
  strokeWidth: length4.optional(),
820
- color: z47.string().optional()
837
+ color: z48.string().optional()
821
838
  });
822
839
 
823
840
  // lib/components/pcb-trace.ts
824
- import { distance as distance12, route_hint_point as route_hint_point5 } from "circuit-json";
825
- import { z as z48 } from "zod";
826
- var pcbTraceProps = z48.object({
827
- layer: z48.string().optional(),
828
- thickness: distance12.optional(),
829
- route: z48.array(route_hint_point5)
841
+ import { distance as distance13, route_hint_point as route_hint_point5 } from "circuit-json";
842
+ import { z as z49 } from "zod";
843
+ var pcbTraceProps = z49.object({
844
+ layer: z49.string().optional(),
845
+ thickness: distance13.optional(),
846
+ route: z49.array(route_hint_point5)
830
847
  });
831
848
 
832
849
  // lib/components/via.ts
833
- import { distance as distance13, layer_ref as layer_ref4 } from "circuit-json";
850
+ import { distance as distance14, layer_ref as layer_ref4 } from "circuit-json";
834
851
  var viaProps = commonLayoutProps.extend({
835
852
  fromLayer: layer_ref4,
836
853
  toLayer: layer_ref4,
837
- holeDiameter: distance13,
838
- outerDiameter: distance13
854
+ holeDiameter: distance14,
855
+ outerDiameter: distance14
839
856
  });
840
857
 
841
858
  // lib/components/pcb-keepout.ts
842
- import { distance as distance14 } from "circuit-json";
843
- import { z as z49 } from "zod";
844
- var pcbKeepoutProps = z49.union([
859
+ import { distance as distance15 } from "circuit-json";
860
+ import { z as z50 } from "zod";
861
+ var pcbKeepoutProps = z50.union([
845
862
  pcbLayoutProps.omit({ pcbRotation: true }).extend({
846
- shape: z49.literal("circle"),
847
- radius: distance14
863
+ shape: z50.literal("circle"),
864
+ radius: distance15
848
865
  }),
849
866
  pcbLayoutProps.extend({
850
- shape: z49.literal("rect"),
851
- width: distance14,
852
- height: distance14
867
+ shape: z50.literal("rect"),
868
+ width: distance15,
869
+ height: distance15
853
870
  })
854
871
  ]);
855
872
 
@@ -860,127 +877,127 @@ var powerSourceProps = commonComponentProps.extend({
860
877
  });
861
878
 
862
879
  // lib/components/schematic-box.ts
863
- import { distance as distance15 } from "circuit-json";
864
- import { z as z50 } from "zod";
865
- var schematicBoxProps = z50.object({
866
- schX: distance15,
867
- schY: distance15,
868
- width: distance15,
869
- height: distance15
870
- });
871
-
872
- // lib/components/schematic-line.ts
873
880
  import { distance as distance16 } from "circuit-json";
874
881
  import { z as z51 } from "zod";
875
- var schematicLineProps = z51.object({
876
- x1: distance16,
877
- y1: distance16,
878
- x2: distance16,
879
- y2: distance16
882
+ var schematicBoxProps = z51.object({
883
+ schX: distance16,
884
+ schY: distance16,
885
+ width: distance16,
886
+ height: distance16
880
887
  });
881
888
 
882
- // lib/components/schematic-text.ts
889
+ // lib/components/schematic-line.ts
883
890
  import { distance as distance17 } from "circuit-json";
884
891
  import { z as z52 } from "zod";
885
- var schematicTextProps = z52.object({
886
- schX: distance17,
887
- schY: distance17,
888
- text: z52.string()
892
+ var schematicLineProps = z52.object({
893
+ x1: distance17,
894
+ y1: distance17,
895
+ x2: distance17,
896
+ y2: distance17
897
+ });
898
+
899
+ // lib/components/schematic-text.ts
900
+ import { distance as distance18 } from "circuit-json";
901
+ import { z as z53 } from "zod";
902
+ var schematicTextProps = z53.object({
903
+ schX: distance18,
904
+ schY: distance18,
905
+ text: z53.string()
889
906
  });
890
907
 
891
908
  // lib/components/schematic-path.ts
892
909
  import { point as point5 } from "circuit-json";
893
- import { z as z53 } from "zod";
894
- var schematicPathProps = z53.object({
895
- points: z53.array(point5),
896
- isFilled: z53.boolean().optional().default(false),
897
- fillColor: z53.enum(["red", "blue"]).optional()
910
+ import { z as z54 } from "zod";
911
+ var schematicPathProps = z54.object({
912
+ points: z54.array(point5),
913
+ isFilled: z54.boolean().optional().default(false),
914
+ fillColor: z54.enum(["red", "blue"]).optional()
898
915
  });
899
916
 
900
917
  // lib/components/silkscreen-text.ts
901
918
  import { length as length5 } from "circuit-json";
902
- import { z as z54 } from "zod";
919
+ import { z as z55 } from "zod";
903
920
  var silkscreenTextProps = pcbLayoutProps.extend({
904
- text: z54.string(),
905
- anchorAlignment: z54.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
906
- font: z54.enum(["tscircuit2024"]).optional(),
921
+ text: z55.string(),
922
+ anchorAlignment: z55.enum(["center", "top_left", "top_right", "bottom_left", "bottom_right"]).default("center"),
923
+ font: z55.enum(["tscircuit2024"]).optional(),
907
924
  fontSize: length5.optional()
908
925
  });
909
926
 
910
927
  // lib/components/silkscreen-path.ts
911
928
  import { length as length6, route_hint_point as route_hint_point6 } from "circuit-json";
912
- import { z as z55 } from "zod";
929
+ import { z as z56 } from "zod";
913
930
  var silkscreenPathProps = pcbLayoutProps.omit({ pcbX: true, pcbY: true, pcbRotation: true }).extend({
914
- route: z55.array(route_hint_point6),
931
+ route: z56.array(route_hint_point6),
915
932
  strokeWidth: length6.optional()
916
933
  });
917
934
 
918
935
  // lib/components/silkscreen-line.ts
919
- import { distance as distance18 } from "circuit-json";
936
+ import { distance as distance19 } from "circuit-json";
920
937
  var silkscreenLineProps = pcbLayoutProps.omit({ pcbX: true, pcbY: true, pcbRotation: true }).extend({
921
- strokeWidth: distance18,
922
- x1: distance18,
923
- y1: distance18,
924
- x2: distance18,
925
- y2: distance18
938
+ strokeWidth: distance19,
939
+ x1: distance19,
940
+ y1: distance19,
941
+ x2: distance19,
942
+ y2: distance19
926
943
  });
927
944
 
928
945
  // lib/components/silkscreen-rect.ts
929
- import { distance as distance19 } from "circuit-json";
930
- import { z as z56 } from "zod";
931
- var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
932
- isFilled: z56.boolean().optional(),
933
- isOutline: z56.boolean().optional(),
934
- strokeWidth: distance19.optional(),
935
- width: distance19,
936
- height: distance19
937
- });
938
-
939
- // lib/components/silkscreen-circle.ts
940
946
  import { distance as distance20 } from "circuit-json";
941
947
  import { z as z57 } from "zod";
942
- var silkscreenCircleProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
948
+ var silkscreenRectProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
943
949
  isFilled: z57.boolean().optional(),
944
950
  isOutline: z57.boolean().optional(),
945
951
  strokeWidth: distance20.optional(),
946
- radius: distance20
952
+ width: distance20,
953
+ height: distance20
947
954
  });
948
955
 
949
- // lib/components/trace-hint.ts
950
- import { distance as distance21, layer_ref as layer_ref5, route_hint_point as route_hint_point7 } from "circuit-json";
956
+ // lib/components/silkscreen-circle.ts
957
+ import { distance as distance21 } from "circuit-json";
951
958
  import { z as z58 } from "zod";
952
- var routeHintPointProps = z58.object({
953
- x: distance21,
954
- y: distance21,
955
- via: z58.boolean().optional(),
959
+ var silkscreenCircleProps = pcbLayoutProps.omit({ pcbRotation: true }).extend({
960
+ isFilled: z58.boolean().optional(),
961
+ isOutline: z58.boolean().optional(),
962
+ strokeWidth: distance21.optional(),
963
+ radius: distance21
964
+ });
965
+
966
+ // lib/components/trace-hint.ts
967
+ import { distance as distance22, layer_ref as layer_ref5, route_hint_point as route_hint_point7 } from "circuit-json";
968
+ import { z as z59 } from "zod";
969
+ var routeHintPointProps = z59.object({
970
+ x: distance22,
971
+ y: distance22,
972
+ via: z59.boolean().optional(),
956
973
  toLayer: layer_ref5.optional()
957
974
  });
958
- var traceHintProps = z58.object({
959
- for: z58.string().optional().describe(
975
+ var traceHintProps = z59.object({
976
+ for: z59.string().optional().describe(
960
977
  "Selector for the port you're targeting, not required if you're inside a trace"
961
978
  ),
962
- order: z58.number().optional(),
979
+ order: z59.number().optional(),
963
980
  offset: route_hint_point7.or(routeHintPointProps).optional(),
964
- offsets: z58.array(route_hint_point7).or(z58.array(routeHintPointProps)).optional(),
965
- traceWidth: z58.number().optional()
981
+ offsets: z59.array(route_hint_point7).or(z59.array(routeHintPointProps)).optional(),
982
+ traceWidth: z59.number().optional()
966
983
  });
967
984
 
968
985
  // lib/components/port.ts
969
- import { z as z59 } from "zod";
986
+ import { z as z60 } from "zod";
970
987
  var portProps = commonLayoutProps.extend({
971
- name: z59.string(),
972
- pinNumber: z59.number().optional(),
973
- aliases: z59.array(z59.string()).optional(),
988
+ name: z60.string(),
989
+ pinNumber: z60.number().optional(),
990
+ aliases: z60.array(z60.string()).optional(),
974
991
  direction
975
992
  });
976
993
 
977
994
  // lib/platformConfig.ts
978
- import { z as z60 } from "zod";
979
- var platformConfig = z60.object({
995
+ import { z as z61 } from "zod";
996
+ var platformConfig = z61.object({
980
997
  partsEngine: partsEngine.optional(),
981
998
  autorouter: autorouterProp.optional(),
982
- registryApiUrl: z60.string().optional(),
983
- cloudAutorouterUrl: z60.string().optional()
999
+ registryApiUrl: z61.string().optional(),
1000
+ cloudAutorouterUrl: z61.string().optional()
984
1001
  });
985
1002
  expectTypesMatch(true);
986
1003
  export {
@@ -1083,6 +1100,7 @@ export {
1083
1100
  silkscreenTextProps,
1084
1101
  smtPadProps,
1085
1102
  solderPasteProps,
1103
+ stampboardProps,
1086
1104
  subcircuitGroupProps,
1087
1105
  subcircuitGroupPropsWithBool,
1088
1106
  subcircuitProps,