@tscircuit/footprinter 0.0.287 → 0.0.289

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
@@ -519,25 +519,25 @@ var led = (parameters) => {
519
519
 
520
520
  // src/helpers/chipArray.ts
521
521
  var chipArray = (params) => {
522
- const { padSpacing: padSpacing7, padWidth: padWidth7, padHeight: padHeight7, padPitch: padPitch7, numRows, textbottom } = params;
522
+ const { padSpacing: padSpacing7, padWidth, padHeight, padPitch, numRows, textbottom } = params;
523
523
  const yPositions = [];
524
- const halfRange = (numRows - 1) * (padPitch7 / 2);
524
+ const halfRange = (numRows - 1) * (padPitch / 2);
525
525
  for (let i = 0; i < numRows; i++) {
526
- yPositions.push(halfRange - i * padPitch7);
526
+ yPositions.push(halfRange - i * padPitch);
527
527
  }
528
528
  const pads = [];
529
529
  yPositions.forEach((y, index) => {
530
- pads.push(rectpad(index + 1, -padSpacing7 / 2, y, padWidth7, padHeight7));
530
+ pads.push(rectpad(index + 1, -padSpacing7 / 2, y, padWidth, padHeight));
531
531
  });
532
532
  yPositions.slice().reverse().forEach((y, index) => {
533
533
  pads.push(
534
- rectpad(index + numRows + 1, padSpacing7 / 2, y, padWidth7, padHeight7)
534
+ rectpad(index + numRows + 1, padSpacing7 / 2, y, padWidth, padHeight)
535
535
  );
536
536
  });
537
- const top = Math.max(...yPositions) + padHeight7 / 2 + 0.4;
538
- const bottom = Math.min(...yPositions) - padHeight7 / 2 - 0.4;
539
- const left = -padSpacing7 / 2 - padWidth7 / 2 - 0.4;
540
- const right = padSpacing7 / 2 + padWidth7 / 2 + 0.4;
537
+ const top = Math.max(...yPositions) + padHeight / 2 + 0.4;
538
+ const bottom = Math.min(...yPositions) - padHeight / 2 - 0.4;
539
+ const left = -padSpacing7 / 2 - padWidth / 2 - 0.4;
540
+ const right = padSpacing7 / 2 + padWidth / 2 + 0.4;
541
541
  const silkscreenTop = {
542
542
  type: "pcb_silkscreen_path",
543
543
  layer: "top",
@@ -563,8 +563,8 @@ var chipArray = (params) => {
563
563
  const pin1X = -padSpacing7 / 2;
564
564
  const pin1Y = Math.max(...yPositions);
565
565
  const pin1MarkerSize = 0.2;
566
- const pin1Left = pin1X - padWidth7 / 2 - 0.1;
567
- const pin1Top = pin1Y + padHeight7 / 2 + 0.1;
566
+ const pin1Left = pin1X - padWidth / 2 - 0.1;
567
+ const pin1Top = pin1Y + padHeight / 2 + 0.1;
568
568
  const pin1Marker = {
569
569
  type: "pcb_silkscreen_path",
570
570
  layer: "top",
@@ -590,11 +590,20 @@ var chipArray = (params) => {
590
590
  };
591
591
 
592
592
  // src/helpers/res0402-array2.ts
593
+ import { z as z4 } from "zod";
594
+ import mm4 from "@tscircuit/mm";
595
+ var res0402Array2_def = base_def.extend({
596
+ pw: z4.string().default("0.5mm"),
597
+ ph: z4.string().default("0.4mm"),
598
+ p: z4.string().default("0.7mm"),
599
+ textbottom: z4.boolean().optional()
600
+ });
593
601
  var padSpacing = 1;
594
- var padWidth = 0.5;
595
- var padHeight = 0.4;
596
- var padPitch = 0.7;
597
- var res0402Array2 = (params) => {
602
+ var res0402Array2 = (rawParams) => {
603
+ const params = res0402Array2_def.parse(rawParams);
604
+ const padWidth = mm4(params.pw);
605
+ const padHeight = mm4(params.ph);
606
+ const padPitch = mm4(params.p);
598
607
  return chipArray({
599
608
  padSpacing,
600
609
  padWidth,
@@ -606,80 +615,125 @@ var res0402Array2 = (params) => {
606
615
  };
607
616
 
608
617
  // src/helpers/res0402-array4.ts
618
+ import { z as z5 } from "zod";
619
+ import mm5 from "@tscircuit/mm";
620
+ var res0402Array4_def = base_def.extend({
621
+ pw: z5.string().default("0.5mm"),
622
+ ph: z5.string().default("0.32mm"),
623
+ p: z5.string().default("0.5mm"),
624
+ textbottom: z5.boolean().optional()
625
+ });
609
626
  var padSpacing2 = 1;
610
- var padWidth2 = 0.5;
611
- var padHeight2 = 0.32;
612
- var padPitch2 = 0.5;
613
- var res0402Array4 = (params) => {
627
+ var res0402Array4 = (rawParams) => {
628
+ const params = res0402Array4_def.parse(rawParams);
629
+ const padWidth = mm5(params.pw);
630
+ const padHeight = mm5(params.ph);
631
+ const padPitch = mm5(params.p);
614
632
  return chipArray({
615
633
  padSpacing: padSpacing2,
616
- padWidth: padWidth2,
617
- padHeight: padHeight2,
618
- padPitch: padPitch2,
634
+ padWidth,
635
+ padHeight,
636
+ padPitch,
619
637
  numRows: 4,
620
638
  textbottom: params.textbottom
621
639
  });
622
640
  };
623
641
 
624
642
  // src/helpers/res0603-array2.ts
643
+ import { z as z6 } from "zod";
644
+ import mm6 from "@tscircuit/mm";
645
+ var res0603Array2_def = base_def.extend({
646
+ pw: z6.string().default("0.9mm"),
647
+ ph: z6.string().default("0.4mm"),
648
+ p: z6.string().default("0.8mm"),
649
+ textbottom: z6.boolean().optional()
650
+ });
625
651
  var padSpacing3 = 1.7;
626
- var padWidth3 = 0.9;
627
- var padHeight3 = 0.4;
628
- var padPitch3 = 0.8;
629
- var res0603Array2 = (params) => {
652
+ var res0603Array2 = (rawParams) => {
653
+ const params = res0603Array2_def.parse(rawParams);
654
+ const padWidth = mm6(params.pw);
655
+ const padHeight = mm6(params.ph);
656
+ const padPitch = mm6(params.p);
630
657
  return chipArray({
631
658
  padSpacing: padSpacing3,
632
- padWidth: padWidth3,
633
- padHeight: padHeight3,
634
- padPitch: padPitch3,
659
+ padWidth,
660
+ padHeight,
661
+ padPitch,
635
662
  numRows: 2,
636
663
  textbottom: params.textbottom
637
664
  });
638
665
  };
639
666
 
640
667
  // src/helpers/res0603-array4.ts
668
+ import { z as z7 } from "zod";
669
+ import mm7 from "@tscircuit/mm";
670
+ var res0603Array4_def = base_def.extend({
671
+ pw: z7.string().default("0.9mm"),
672
+ ph: z7.string().default("0.4mm"),
673
+ p: z7.string().default("0.8mm"),
674
+ textbottom: z7.boolean().optional()
675
+ });
641
676
  var padSpacing4 = 1.7;
642
- var padWidth4 = 0.9;
643
- var padHeight4 = 0.4;
644
- var padPitch4 = 0.8;
645
- var res0603Array4 = (params) => {
677
+ var res0603Array4 = (rawParams) => {
678
+ const params = res0603Array4_def.parse(rawParams);
679
+ const padWidth = mm7(params.pw);
680
+ const padHeight = mm7(params.ph);
681
+ const padPitch = mm7(params.p);
646
682
  return chipArray({
647
683
  padSpacing: padSpacing4,
648
- padWidth: padWidth4,
649
- padHeight: padHeight4,
650
- padPitch: padPitch4,
684
+ padWidth,
685
+ padHeight,
686
+ padPitch,
651
687
  numRows: 4,
652
688
  textbottom: params.textbottom
653
689
  });
654
690
  };
655
691
 
656
692
  // src/helpers/res0606-array2.ts
693
+ import { z as z8 } from "zod";
694
+ import mm8 from "@tscircuit/mm";
695
+ var res0606Array2_def = base_def.extend({
696
+ pw: z8.string().default("0.7mm"),
697
+ ph: z8.string().default("0.64mm"),
698
+ p: z8.string().default("0.94mm"),
699
+ textbottom: z8.boolean().optional()
700
+ });
657
701
  var padSpacing5 = 1.4;
658
- var padWidth5 = 0.7;
659
- var padHeight5 = 0.64;
660
- var padPitch5 = 0.94;
661
- var res0606Array2 = (params) => {
702
+ var res0606Array2 = (rawParams) => {
703
+ const params = res0606Array2_def.parse(rawParams);
704
+ const padWidth = mm8(params.pw);
705
+ const padHeight = mm8(params.ph);
706
+ const padPitch = mm8(params.p);
662
707
  return chipArray({
663
708
  padSpacing: padSpacing5,
664
- padWidth: padWidth5,
665
- padHeight: padHeight5,
666
- padPitch: padPitch5,
709
+ padWidth,
710
+ padHeight,
711
+ padPitch,
667
712
  numRows: 2,
668
713
  textbottom: params.textbottom
669
714
  });
670
715
  };
671
716
 
672
717
  // src/helpers/res1206-array4.ts
718
+ import { z as z9 } from "zod";
719
+ import mm9 from "@tscircuit/mm";
720
+ var res1206Array4_def = base_def.extend({
721
+ pw: z9.string().default("0.9mm"),
722
+ ph: z9.string().default("0.9mm"),
723
+ p: z9.string().default("1.34mm"),
724
+ textbottom: z9.boolean().optional()
725
+ });
673
726
  var padSpacing6 = 3;
674
- var padWidth6 = 0.9;
675
- var padHeight6 = 0.9;
676
- var padPitch6 = 1.34;
677
- var res1206Array4 = (params) => {
727
+ var res1206Array4 = (rawParams) => {
728
+ const params = res1206Array4_def.parse(rawParams);
729
+ const padWidth = mm9(params.pw);
730
+ const padHeight = mm9(params.ph);
731
+ const padPitch = mm9(params.p);
678
732
  return chipArray({
679
733
  padSpacing: padSpacing6,
680
- padWidth: padWidth6,
681
- padHeight: padHeight6,
682
- padPitch: padPitch6,
734
+ padWidth,
735
+ padHeight,
736
+ padPitch,
683
737
  numRows: 4,
684
738
  textbottom: params.textbottom
685
739
  });
@@ -769,27 +823,27 @@ var circlepad = (pn, { x, y, radius }) => {
769
823
  var ALPHABET = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
770
824
 
771
825
  // src/fn/bga.ts
772
- import { z as z6 } from "zod";
826
+ import { z as z12 } from "zod";
773
827
  import { length as length2, distance as distance2 } from "circuit-json";
774
828
 
775
829
  // src/helpers/zod/dim-2d.ts
776
- import { z as z4 } from "zod";
777
- var dim2d = z4.string().transform((a) => {
830
+ import { z as z10 } from "zod";
831
+ var dim2d = z10.string().transform((a) => {
778
832
  const [x, y] = a.split(/[x ]/);
779
833
  return {
780
834
  x: parseFloat(x),
781
835
  y: parseFloat(y)
782
836
  };
783
837
  }).pipe(
784
- z4.object({
785
- x: z4.number(),
786
- y: z4.number()
838
+ z10.object({
839
+ x: z10.number(),
840
+ y: z10.number()
787
841
  })
788
842
  );
789
843
 
790
844
  // src/helpers/zod/function-call.ts
791
- import { z as z5 } from "zod";
792
- var function_call = z5.string().or(z5.array(z5.any())).transform((a) => {
845
+ import { z as z11 } from "zod";
846
+ var function_call = z11.string().or(z11.array(z11.any())).transform((a) => {
793
847
  if (Array.isArray(a)) return a;
794
848
  if (a.startsWith("(") && a.endsWith(")")) {
795
849
  a = a.slice(1, -1);
@@ -798,24 +852,24 @@ var function_call = z5.string().or(z5.array(z5.any())).transform((a) => {
798
852
  const numVal = Number(v);
799
853
  return isNaN(numVal) ? v : numVal;
800
854
  });
801
- }).pipe(z5.array(z5.string().or(z5.number())));
855
+ }).pipe(z11.array(z11.string().or(z11.number())));
802
856
 
803
857
  // src/fn/bga.ts
804
858
  import "circuit-json";
805
859
  var bga_def = base_def.extend({
806
- fn: z6.string(),
807
- num_pins: z6.number().optional().default(64),
860
+ fn: z12.string(),
861
+ num_pins: z12.number().optional().default(64),
808
862
  grid: dim2d.optional(),
809
863
  p: distance2.default("0.8mm"),
810
864
  w: length2.optional(),
811
865
  h: length2.optional(),
812
866
  ball: length2.optional().describe("ball diameter"),
813
867
  pad: length2.optional().describe("pad width/height"),
814
- circularpads: z6.boolean().optional().describe("use circular pads"),
815
- tlorigin: z6.boolean().optional(),
816
- blorigin: z6.boolean().optional(),
817
- trorigin: z6.boolean().optional(),
818
- brorigin: z6.boolean().optional(),
868
+ circularpads: z12.boolean().optional().describe("use circular pads"),
869
+ tlorigin: z12.boolean().optional(),
870
+ blorigin: z12.boolean().optional(),
871
+ trorigin: z12.boolean().optional(),
872
+ brorigin: z12.boolean().optional(),
819
873
  missing: function_call.default([])
820
874
  }).transform((a) => {
821
875
  let origin = "tl";
@@ -985,7 +1039,7 @@ var bga = (raw_params) => {
985
1039
  };
986
1040
 
987
1041
  // src/fn/soic.ts
988
- import { z as z7 } from "zod";
1042
+ import { z as z13 } from "zod";
989
1043
  import { length as length3 } from "circuit-json";
990
1044
 
991
1045
  // src/helpers/pillpad.ts
@@ -1006,15 +1060,15 @@ var pillpad = (pn, x, y, w, h) => {
1006
1060
 
1007
1061
  // src/fn/soic.ts
1008
1062
  var extendSoicDef = (newDefaults) => base_def.extend({
1009
- fn: z7.string(),
1010
- num_pins: z7.number().optional().default(8),
1063
+ fn: z13.string(),
1064
+ num_pins: z13.number().optional().default(8),
1011
1065
  w: length3.default(length3.parse(newDefaults.w ?? "5.3mm")),
1012
1066
  p: length3.default(length3.parse(newDefaults.p ?? "1.27mm")),
1013
1067
  pw: length3.default(length3.parse(newDefaults.pw ?? "0.6mm")),
1014
1068
  pl: length3.default(length3.parse(newDefaults.pl ?? "1.0mm")),
1015
- legsoutside: z7.boolean().optional().default(newDefaults.legsoutside ?? false),
1016
- pillpads: z7.boolean().optional().default(newDefaults.pillpads ?? false),
1017
- silkscreen_stroke_width: z7.number().optional().default(0.1)
1069
+ legsoutside: z13.boolean().optional().default(newDefaults.legsoutside ?? false),
1070
+ pillpads: z13.boolean().optional().default(newDefaults.pillpads ?? false),
1071
+ silkscreen_stroke_width: z13.number().optional().default(0.1)
1018
1072
  }).transform((v) => {
1019
1073
  if (!v.pw && !v.pl) {
1020
1074
  v.pw = length3.parse("0.6mm");
@@ -1098,12 +1152,12 @@ var soicWithoutParsing = (parameters) => {
1098
1152
  };
1099
1153
 
1100
1154
  // src/fn/quad.ts
1101
- import { z as z9 } from "zod";
1155
+ import { z as z15 } from "zod";
1102
1156
  import { length as length4 } from "circuit-json";
1103
1157
 
1104
1158
  // src/helpers/zod/pin-order-specifier.ts
1105
- import { z as z8 } from "zod";
1106
- var pin_order_specifier = z8.enum([
1159
+ import { z as z14 } from "zod";
1160
+ var pin_order_specifier = z14.enum([
1107
1161
  "leftside",
1108
1162
  "topside",
1109
1163
  "rightside",
@@ -1179,18 +1233,18 @@ var getQuadPinMap = ({
1179
1233
 
1180
1234
  // src/fn/quad.ts
1181
1235
  var base_quad_def = base_def.extend({
1182
- fn: z9.string(),
1183
- cc: z9.boolean().default(true).optional(),
1184
- ccw: z9.boolean().default(true).optional(),
1185
- startingpin: z9.string().or(z9.array(pin_order_specifier)).transform((a) => typeof a === "string" ? a.slice(1, -1).split(",") : a).pipe(z9.array(pin_order_specifier)).optional(),
1186
- num_pins: z9.number().optional().default(64),
1236
+ fn: z15.string(),
1237
+ cc: z15.boolean().default(true).optional(),
1238
+ ccw: z15.boolean().default(true).optional(),
1239
+ startingpin: z15.string().or(z15.array(pin_order_specifier)).transform((a) => typeof a === "string" ? a.slice(1, -1).split(",") : a).pipe(z15.array(pin_order_specifier)).optional(),
1240
+ num_pins: z15.number().optional().default(64),
1187
1241
  w: length4.optional(),
1188
1242
  h: length4.optional(),
1189
1243
  p: length4.default(length4.parse("0.5mm")),
1190
1244
  pw: length4.optional(),
1191
1245
  pl: length4.optional(),
1192
- thermalpad: z9.union([z9.literal(true), dim2d]).optional(),
1193
- legsoutside: z9.boolean().default(false)
1246
+ thermalpad: z15.union([z15.literal(true), dim2d]).optional(),
1247
+ legsoutside: z15.boolean().default(false)
1194
1248
  });
1195
1249
  var quadTransform = (v) => {
1196
1250
  if (v.w && !v.h) {
@@ -1594,43 +1648,106 @@ var tssop = (raw_params) => {
1594
1648
  };
1595
1649
 
1596
1650
  // src/fn/sot363.ts
1597
- var sot363_def = extendSoicDef({});
1651
+ import { z as z16 } from "zod";
1652
+ import { length as length5 } from "circuit-json";
1653
+ var sot363_def = base_def.extend({
1654
+ fn: z16.string(),
1655
+ num_pins: z16.literal(6).default(6),
1656
+ w: z16.string().default("3.1mm"),
1657
+ h: z16.string().default("2.0mm"),
1658
+ p: z16.string().default("0.65mm"),
1659
+ pl: z16.string().default("1.325mm"),
1660
+ pw: z16.string().default("0.4mm"),
1661
+ string: z16.string().optional()
1662
+ });
1598
1663
  var sot363 = (raw_params) => {
1599
- const parameters = sot363_def.parse({
1600
- fn: "sot363",
1601
- num_pins: 6,
1602
- w: 2.56,
1603
- p: 0.65,
1604
- pw: 0.4,
1605
- pl: 0.65,
1606
- legoutside: true
1607
- });
1664
+ const parameters = sot363_def.parse({ ...raw_params, fn: "sot363" });
1665
+ const w = length5.parse(parameters.w);
1666
+ const h = length5.parse(parameters.h);
1667
+ const p = length5.parse(parameters.p);
1668
+ const pl = length5.parse(parameters.pl);
1669
+ const pw = length5.parse(parameters.pw);
1670
+ const pads = [];
1671
+ for (let i = 0; i < 6; i++) {
1672
+ const { x, y } = getSot363PadCoord(i + 1, w, p, pl);
1673
+ pads.push(rectpad(i + 1, x, y, pl, pw));
1674
+ }
1675
+ const silkscreenTopLine = {
1676
+ type: "pcb_silkscreen_path",
1677
+ layer: "top",
1678
+ pcb_component_id: "",
1679
+ route: [
1680
+ { x: -w / 4, y: h / 2 + 0.1 },
1681
+ { x: w / 4, y: h / 2 + 0.1 }
1682
+ ],
1683
+ stroke_width: 0.05,
1684
+ pcb_silkscreen_path_id: ""
1685
+ };
1686
+ const silkscreenBottomLine = {
1687
+ type: "pcb_silkscreen_path",
1688
+ layer: "top",
1689
+ pcb_component_id: "",
1690
+ route: [
1691
+ { x: -w / 4, y: -h / 2 - 0.1 },
1692
+ { x: w / 4, y: -h / 2 - 0.1 }
1693
+ ],
1694
+ stroke_width: 0.05,
1695
+ pcb_silkscreen_path_id: ""
1696
+ };
1697
+ const pin1Position = getSot363PadCoord(1, w, p, pl);
1698
+ const pin1Marking = {
1699
+ type: "pcb_silkscreen_path",
1700
+ layer: "top",
1701
+ pcb_component_id: "pin_marker_1",
1702
+ route: [
1703
+ { x: pin1Position.x - pl / 2 - 0.3, y: pin1Position.y },
1704
+ { x: pin1Position.x - pl / 2 - 0.45, y: pin1Position.y + 0.15 },
1705
+ { x: pin1Position.x - pl / 2 - 0.45, y: pin1Position.y - 0.15 },
1706
+ { x: pin1Position.x - pl / 2 - 0.3, y: pin1Position.y }
1707
+ ],
1708
+ stroke_width: 0.05,
1709
+ pcb_silkscreen_path_id: "pin_marker_1"
1710
+ };
1711
+ const silkscreenRefText = silkscreenRef(0, h / 2 + 0.4, 0.25);
1608
1712
  return {
1609
- circuitJson: soicWithoutParsing(parameters),
1713
+ circuitJson: [
1714
+ ...pads,
1715
+ silkscreenTopLine,
1716
+ silkscreenBottomLine,
1717
+ silkscreenRefText,
1718
+ pin1Marking
1719
+ ],
1610
1720
  parameters
1611
1721
  };
1612
1722
  };
1723
+ var getSot363PadCoord = (pn, w, p, pl) => {
1724
+ const padCenterOffset = w / 2 - pl / 2;
1725
+ if (pn <= 3) {
1726
+ return { x: -padCenterOffset, y: p - (pn - 1) * p };
1727
+ }
1728
+ return { x: padCenterOffset, y: -p + (pn - 4) * p };
1729
+ };
1613
1730
 
1614
1731
  // src/fn/sot886.ts
1615
- import { z as z10 } from "zod";
1616
- import { length as length5 } from "circuit-json";
1732
+ import { z as z17 } from "zod";
1733
+ import { length as length6 } from "circuit-json";
1617
1734
  var sot886_def = base_def.extend({
1618
- fn: z10.string(),
1619
- num_pins: z10.literal(6).default(6),
1620
- w: z10.string().default("1.01mm"),
1621
- h: z10.string().default("1.45mm"),
1622
- p: z10.string().default("0.5mm"),
1623
- pl: z10.string().default("0.33mm"),
1624
- pw: z10.string().default("0.27mm"),
1625
- string: z10.string().optional()
1735
+ fn: z17.string(),
1736
+ num_pins: z17.literal(6).default(6),
1737
+ w: z17.string().default("1.01mm"),
1738
+ h: z17.string().default("1.45mm"),
1739
+ p: z17.string().default("0.5mm"),
1740
+ pl: z17.string().default("0.33mm"),
1741
+ pw: z17.string().default("0.27mm"),
1742
+ string: z17.string().optional()
1626
1743
  });
1627
1744
  var sot886 = (raw_params) => {
1628
- const parameters = sot886_def.parse({ fn: "sot886", ...raw_params });
1629
- const w = length5.parse(parameters.w);
1630
- const h = length5.parse(parameters.h);
1631
- const p = length5.parse(parameters.p);
1632
- const pl = length5.parse(parameters.pl);
1633
- const pw = length5.parse(parameters.pw);
1745
+ const parameters = sot886_def.parse({ ...raw_params, fn: "sot886" });
1746
+ const w = length6.parse(parameters.w);
1747
+ const h = length6.parse(parameters.h);
1748
+ const p = length6.parse(parameters.p);
1749
+ const pl = length6.parse(parameters.pl);
1750
+ const pw = length6.parse(parameters.pw);
1634
1751
  const pads = [];
1635
1752
  for (let i = 0; i < 6; i++) {
1636
1753
  const { x, y } = getSot886PadCoord(i + 1, w, p, pl);
@@ -1693,16 +1810,16 @@ var getSot886PadCoord = (pn, w, p, pl) => {
1693
1810
  };
1694
1811
 
1695
1812
  // src/fn/sot23.ts
1696
- import { z as z11 } from "zod";
1813
+ import { z as z18 } from "zod";
1697
1814
  var sot23_def = base_def.extend({
1698
- fn: z11.string(),
1699
- num_pins: z11.number().default(3),
1700
- w: z11.string().default("1.92mm"),
1701
- h: z11.string().default("2.74mm"),
1702
- pl: z11.string().default("1.32mm"),
1703
- pw: z11.string().default("0.6mm"),
1704
- p: z11.string().default("0.95mm"),
1705
- string: z11.string().optional()
1815
+ fn: z18.string(),
1816
+ num_pins: z18.number().default(3),
1817
+ w: z18.string().default("1.92mm"),
1818
+ h: z18.string().default("2.74mm"),
1819
+ pl: z18.string().default("1.32mm"),
1820
+ pw: z18.string().default("0.6mm"),
1821
+ p: z18.string().default("0.95mm"),
1822
+ string: z18.string().optional()
1706
1823
  });
1707
1824
  var sot23_6_or_8_def = extendSoicDef({
1708
1825
  p: "0.95mm",
@@ -1992,8 +2109,8 @@ var dfn = (raw_params) => {
1992
2109
  };
1993
2110
 
1994
2111
  // src/fn/pinrow.ts
1995
- import { z as z14 } from "zod";
1996
- import { length as length6 } from "circuit-json";
2112
+ import { z as z21 } from "zod";
2113
+ import { length as length7 } from "circuit-json";
1997
2114
 
1998
2115
  // src/helpers/silkscreenPin.ts
1999
2116
  var silkscreenPin = ({
@@ -2080,28 +2197,28 @@ function determinePinlabelAnchorSide({
2080
2197
 
2081
2198
  // src/fn/pinrow.ts
2082
2199
  var pinrow_def = base_def.extend({
2083
- fn: z14.string(),
2084
- num_pins: z14.number().optional().default(6),
2085
- rows: z14.union([z14.string(), z14.number()]).transform((val) => Number(val)).optional().default(1).describe("number of rows"),
2086
- p: length6.default("0.1in").describe("pitch"),
2087
- id: length6.default("1.0mm").describe("inner diameter"),
2088
- od: length6.default("1.5mm").describe("outer diameter"),
2089
- male: z14.boolean().optional().describe("for male pin headers"),
2090
- female: z14.boolean().optional().describe("for female pin headers"),
2091
- smd: z14.boolean().optional().describe("surface mount device"),
2092
- surfacemount: z14.boolean().optional().describe("surface mount device (verbose)"),
2093
- rightangle: z14.boolean().optional().describe("right angle"),
2094
- pw: length6.optional().default("1.0mm").describe("pad width for SMD"),
2095
- pl: length6.optional().default("2.0mm").describe("pad length for SMD"),
2096
- pinlabeltextalignleft: z14.boolean().optional().default(false),
2097
- pinlabeltextaligncenter: z14.boolean().optional().default(false),
2098
- pinlabeltextalignright: z14.boolean().optional().default(false),
2099
- pinlabelverticallyinverted: z14.boolean().optional().default(false),
2100
- pinlabelorthogonal: z14.boolean().optional().default(false),
2101
- nosquareplating: z14.boolean().optional().default(false).describe("do not use rectangular pad for pin 1"),
2102
- nopinlabels: z14.boolean().optional().default(false).describe("omit silkscreen pin labels"),
2103
- doublesidedpinlabel: z14.boolean().optional().default(false).describe("add silkscreen pins in top and bottom layers"),
2104
- bottomsidepinlabel: z14.boolean().optional().default(false).describe(
2200
+ fn: z21.string(),
2201
+ num_pins: z21.number().optional().default(6),
2202
+ rows: z21.union([z21.string(), z21.number()]).transform((val) => Number(val)).optional().default(1).describe("number of rows"),
2203
+ p: length7.default("0.1in").describe("pitch"),
2204
+ id: length7.default("1.0mm").describe("inner diameter"),
2205
+ od: length7.default("1.5mm").describe("outer diameter"),
2206
+ male: z21.boolean().optional().describe("for male pin headers"),
2207
+ female: z21.boolean().optional().describe("for female pin headers"),
2208
+ smd: z21.boolean().optional().describe("surface mount device"),
2209
+ surfacemount: z21.boolean().optional().describe("surface mount device (verbose)"),
2210
+ rightangle: z21.boolean().optional().describe("right angle"),
2211
+ pw: length7.optional().default("1.0mm").describe("pad width for SMD"),
2212
+ pl: length7.optional().default("2.0mm").describe("pad length for SMD"),
2213
+ pinlabeltextalignleft: z21.boolean().optional().default(false),
2214
+ pinlabeltextaligncenter: z21.boolean().optional().default(false),
2215
+ pinlabeltextalignright: z21.boolean().optional().default(false),
2216
+ pinlabelverticallyinverted: z21.boolean().optional().default(false),
2217
+ pinlabelorthogonal: z21.boolean().optional().default(false),
2218
+ nosquareplating: z21.boolean().optional().default(false).describe("do not use rectangular pad for pin 1"),
2219
+ nopinlabels: z21.boolean().optional().default(false).describe("omit silkscreen pin labels"),
2220
+ doublesidedpinlabel: z21.boolean().optional().default(false).describe("add silkscreen pins in top and bottom layers"),
2221
+ bottomsidepinlabel: z21.boolean().optional().default(false).describe(
2105
2222
  "place the silkscreen reference text on the bottom layer instead of top"
2106
2223
  )
2107
2224
  }).transform((data) => {
@@ -2117,7 +2234,7 @@ var pinrow_def = base_def.extend({
2117
2234
  }).superRefine((data, ctx) => {
2118
2235
  if (data.male && data.female) {
2119
2236
  ctx.addIssue({
2120
- code: z14.ZodIssueCode.custom,
2237
+ code: z21.ZodIssueCode.custom,
2121
2238
  message: "'male' and 'female' cannot both be true; it should be male or female.",
2122
2239
  path: ["male", "female"]
2123
2240
  });
@@ -2348,25 +2465,25 @@ var pinrow = (raw_params) => {
2348
2465
  };
2349
2466
 
2350
2467
  // src/fn/sot563.ts
2351
- import { z as z15 } from "zod";
2352
- import { length as length7 } from "circuit-json";
2468
+ import { z as z22 } from "zod";
2469
+ import { length as length8 } from "circuit-json";
2353
2470
  var sot563_def = base_def.extend({
2354
- fn: z15.string(),
2355
- num_pins: z15.literal(6).default(6),
2356
- w: z15.string().default("2.1mm"),
2357
- h: z15.string().default("2.45mm"),
2358
- p: z15.string().default("0.5mm"),
2359
- pl: z15.string().default("0.675mm"),
2360
- pw: z15.string().default("0.35mm"),
2361
- string: z15.string().optional()
2471
+ fn: z22.string(),
2472
+ num_pins: z22.literal(6).default(6),
2473
+ w: z22.string().default("2.1mm"),
2474
+ h: z22.string().default("2.45mm"),
2475
+ p: z22.string().default("0.5mm"),
2476
+ pl: z22.string().default("0.675mm"),
2477
+ pw: z22.string().default("0.35mm"),
2478
+ string: z22.string().optional()
2362
2479
  });
2363
2480
  var sot563 = (raw_params) => {
2364
2481
  const parameters = sot563_def.parse({ ...raw_params, fn: "sot563" });
2365
- const w = length7.parse(parameters.w);
2366
- const h = length7.parse(parameters.h);
2367
- const p = length7.parse(parameters.p);
2368
- const pl = length7.parse(parameters.pl);
2369
- const pw = length7.parse(parameters.pw);
2482
+ const w = length8.parse(parameters.w);
2483
+ const h = length8.parse(parameters.h);
2484
+ const p = length8.parse(parameters.p);
2485
+ const pl = length8.parse(parameters.pl);
2486
+ const pw = length8.parse(parameters.pw);
2370
2487
  const pads = [];
2371
2488
  for (let i = 0; i < 6; i++) {
2372
2489
  const { x, y } = getSot563PadCoord(i + 1, w, p, pl);
@@ -2457,23 +2574,23 @@ var ms013 = (raw_params) => {
2457
2574
  };
2458
2575
 
2459
2576
  // src/fn/sot723.ts
2460
- import { length as length8 } from "circuit-json";
2461
- import { z as z16 } from "zod";
2577
+ import { length as length9 } from "circuit-json";
2578
+ import { z as z23 } from "zod";
2462
2579
  var sot723_def = base_def.extend({
2463
- fn: z16.string(),
2464
- num_pins: z16.literal(3).default(3),
2465
- w: z16.string().default("1.2mm"),
2466
- h: z16.string().default("1.2mm"),
2467
- pw: z16.string().default("0.40mm"),
2468
- pl: z16.string().default("0.45mm"),
2469
- p: z16.string().default("0.575mm")
2580
+ fn: z23.string(),
2581
+ num_pins: z23.literal(3).default(3),
2582
+ w: z23.string().default("1.2mm"),
2583
+ h: z23.string().default("1.2mm"),
2584
+ pw: z23.string().default("0.40mm"),
2585
+ pl: z23.string().default("0.45mm"),
2586
+ p: z23.string().default("0.575mm")
2470
2587
  });
2471
2588
  var sot723 = (raw_params) => {
2472
2589
  const parameters = sot723_def.parse(raw_params);
2473
2590
  const pad2 = sot723WithoutParsing(parameters);
2474
2591
  const silkscreenRefText = silkscreenRef(
2475
2592
  0,
2476
- length8.parse(parameters.h),
2593
+ length9.parse(parameters.h),
2477
2594
  0.2
2478
2595
  );
2479
2596
  return {
@@ -2516,22 +2633,22 @@ var sot723WithoutParsing = (parameters) => {
2516
2633
  };
2517
2634
 
2518
2635
  // src/fn/sod123.ts
2519
- import { z as z17 } from "zod";
2520
- import { length as length9 } from "circuit-json";
2636
+ import { z as z24 } from "zod";
2637
+ import { length as length10 } from "circuit-json";
2521
2638
  var sod_def = base_def.extend({
2522
- fn: z17.string(),
2523
- num_pins: z17.literal(2).default(2),
2524
- w: z17.string().default("2.36mm"),
2525
- h: z17.string().default("1.22mm"),
2526
- pl: z17.string().default("0.9mm"),
2527
- pw: z17.string().default("1.2mm"),
2528
- p: z17.string().default("3.30mm")
2639
+ fn: z24.string(),
2640
+ num_pins: z24.literal(2).default(2),
2641
+ w: z24.string().default("2.36mm"),
2642
+ h: z24.string().default("1.22mm"),
2643
+ pl: z24.string().default("0.9mm"),
2644
+ pw: z24.string().default("1.2mm"),
2645
+ p: z24.string().default("3.30mm")
2529
2646
  });
2530
2647
  var sod123 = (raw_params) => {
2531
2648
  const parameters = sod_def.parse(raw_params);
2532
2649
  const silkscreenRefText = silkscreenRef(
2533
2650
  0,
2534
- length9.parse(parameters.h) / 4 + 0.4,
2651
+ length10.parse(parameters.h) / 4 + 0.4,
2535
2652
  0.3
2536
2653
  );
2537
2654
  return {
@@ -2571,14 +2688,14 @@ var sodWithoutParsing = (parameters) => {
2571
2688
 
2572
2689
  // src/fn/axial.ts
2573
2690
  import {
2574
- length as length10
2691
+ length as length11
2575
2692
  } from "circuit-json";
2576
- import { z as z18 } from "zod";
2693
+ import { z as z25 } from "zod";
2577
2694
  var axial_def = base_def.extend({
2578
- fn: z18.string(),
2579
- p: length10.optional().default("2.54mm"),
2580
- id: length10.optional().default("0.7mm"),
2581
- od: length10.optional().default("1.4mm")
2695
+ fn: z25.string(),
2696
+ p: length11.optional().default("2.54mm"),
2697
+ id: length11.optional().default("0.7mm"),
2698
+ od: length11.optional().default("1.4mm")
2582
2699
  });
2583
2700
  var axial = (raw_params) => {
2584
2701
  const parameters = axial_def.parse(raw_params);
@@ -2611,9 +2728,9 @@ var axial = (raw_params) => {
2611
2728
 
2612
2729
  // src/fn/radial.ts
2613
2730
  import {
2614
- length as length11
2731
+ length as length12
2615
2732
  } from "circuit-json";
2616
- import { z as z19 } from "zod";
2733
+ import { z as z26 } from "zod";
2617
2734
 
2618
2735
  // src/helpers/generateCircleArcs.ts
2619
2736
  var generateCircleArcs = (centerX, centerY, radius, cut, cutHeight, segmentLength = 0.1) => {
@@ -2644,13 +2761,13 @@ var generateCircleArcs = (centerX, centerY, radius, cut, cutHeight, segmentLengt
2644
2761
 
2645
2762
  // src/fn/radial.ts
2646
2763
  var radial_def = base_def.extend({
2647
- fn: z19.string(),
2648
- p: length11.optional().default("5mm"),
2649
- id: length11.optional().default("0.8mm"),
2650
- od: length11.optional().default("1.6mm"),
2651
- ceramic: z19.boolean().optional(),
2652
- electrolytic: z19.boolean().optional(),
2653
- polarized: z19.boolean().optional()
2764
+ fn: z26.string(),
2765
+ p: length12.optional().default("5mm"),
2766
+ id: length12.optional().default("0.8mm"),
2767
+ od: length12.optional().default("1.6mm"),
2768
+ ceramic: z26.boolean().optional(),
2769
+ electrolytic: z26.boolean().optional(),
2770
+ polarized: z26.boolean().optional()
2654
2771
  });
2655
2772
  var radial = (raw_params) => {
2656
2773
  const parameters = radial_def.parse(raw_params);
@@ -2747,8 +2864,8 @@ var radial = (raw_params) => {
2747
2864
  };
2748
2865
 
2749
2866
  // src/fn/pushbutton.ts
2750
- import { length as length12 } from "circuit-json";
2751
- import { z as z20 } from "zod";
2867
+ import { length as length13 } from "circuit-json";
2868
+ import { z as z27 } from "zod";
2752
2869
 
2753
2870
  // src/helpers/silkscreenpath.ts
2754
2871
  var silkscreenpath = (route, options = {}) => {
@@ -2764,11 +2881,11 @@ var silkscreenpath = (route, options = {}) => {
2764
2881
 
2765
2882
  // src/fn/pushbutton.ts
2766
2883
  var pushbutton_def = base_def.extend({
2767
- fn: z20.literal("pushbutton"),
2768
- w: length12.default(4.5),
2769
- h: length12.default(6.5),
2770
- id: length12.default(1),
2771
- od: length12.default(1.2)
2884
+ fn: z27.literal("pushbutton"),
2885
+ w: length13.default(4.5),
2886
+ h: length13.default(6.5),
2887
+ id: length13.default(1),
2888
+ od: length13.default(1.2)
2772
2889
  });
2773
2890
  var pushbutton = (raw_params) => {
2774
2891
  const parameters = pushbutton_def.parse(raw_params);
@@ -2815,24 +2932,24 @@ var pushbutton = (raw_params) => {
2815
2932
 
2816
2933
  // src/fn/stampboard.ts
2817
2934
  import {
2818
- length as length13
2935
+ length as length14
2819
2936
  } from "circuit-json";
2820
- import { z as z21 } from "zod";
2937
+ import { z as z28 } from "zod";
2821
2938
  var stampboard_def = base_def.extend({
2822
- fn: z21.string(),
2823
- w: length13.default("22.58mm"),
2824
- h: length13.optional(),
2825
- left: length13.optional().default(20),
2826
- right: length13.optional().default(20),
2827
- top: length13.optional().default(2),
2828
- bottom: length13.optional().default(2),
2829
- p: length13.default(length13.parse("2.54mm")),
2830
- pw: length13.default(length13.parse("1.6mm")),
2831
- pl: length13.default(length13.parse("2.4mm")),
2832
- innerhole: z21.boolean().default(false),
2833
- innerholeedgedistance: length13.default(length13.parse("1.61mm")),
2834
- silkscreenlabels: z21.boolean().default(false),
2835
- silkscreenlabelmargin: length13.default(length13.parse("0.1mm"))
2939
+ fn: z28.string(),
2940
+ w: length14.default("22.58mm"),
2941
+ h: length14.optional(),
2942
+ left: length14.optional().default(20),
2943
+ right: length14.optional().default(20),
2944
+ top: length14.optional().default(2),
2945
+ bottom: length14.optional().default(2),
2946
+ p: length14.default(length14.parse("2.54mm")),
2947
+ pw: length14.default(length14.parse("1.6mm")),
2948
+ pl: length14.default(length14.parse("2.4mm")),
2949
+ innerhole: z28.boolean().default(false),
2950
+ innerholeedgedistance: length14.default(length14.parse("1.61mm")),
2951
+ silkscreenlabels: z28.boolean().default(false),
2952
+ silkscreenlabelmargin: length14.default(length14.parse("0.1mm"))
2836
2953
  });
2837
2954
  var getHeight = (parameters) => {
2838
2955
  const params = stampboard_def.parse(parameters);
@@ -3241,22 +3358,22 @@ var stampboard = (raw_params) => {
3241
3358
 
3242
3359
  // src/fn/stampreceiver.ts
3243
3360
  import {
3244
- length as length14
3361
+ length as length15
3245
3362
  } from "circuit-json";
3246
- import { z as z22 } from "zod";
3363
+ import { z as z29 } from "zod";
3247
3364
  var stampreceiver_def = base_def.extend({
3248
- fn: z22.string(),
3249
- w: length14.default("22.58mm"),
3250
- h: length14.optional(),
3251
- left: length14.optional().default(20),
3252
- right: length14.optional().default(20),
3253
- top: length14.optional().default(2),
3254
- bottom: length14.optional().default(2),
3255
- p: length14.default(length14.parse("2.54mm")),
3256
- pw: length14.default(length14.parse("1.6mm")),
3257
- pl: length14.default(length14.parse("3.2mm")),
3258
- innerhole: z22.boolean().default(false),
3259
- innerholeedgedistance: length14.default(length14.parse("1.61mm"))
3365
+ fn: z29.string(),
3366
+ w: length15.default("22.58mm"),
3367
+ h: length15.optional(),
3368
+ left: length15.optional().default(20),
3369
+ right: length15.optional().default(20),
3370
+ top: length15.optional().default(2),
3371
+ bottom: length15.optional().default(2),
3372
+ p: length15.default(length15.parse("2.54mm")),
3373
+ pw: length15.default(length15.parse("1.6mm")),
3374
+ pl: length15.default(length15.parse("3.2mm")),
3375
+ innerhole: z29.boolean().default(false),
3376
+ innerholeedgedistance: length15.default(length15.parse("1.61mm"))
3260
3377
  });
3261
3378
  var getHeight2 = (parameters) => {
3262
3379
  const params = stampreceiver_def.parse(parameters);
@@ -3557,20 +3674,20 @@ var lqfp = (parameters) => {
3557
3674
 
3558
3675
  // src/fn/breakoutheaders.ts
3559
3676
  import {
3560
- length as length15
3677
+ length as length16
3561
3678
  } from "circuit-json";
3562
- import { z as z23 } from "zod";
3679
+ import { z as z30 } from "zod";
3563
3680
  var breakoutheaders_def = base_def.extend({
3564
- fn: z23.string(),
3565
- w: length15.default("10mm"),
3566
- h: length15.optional(),
3567
- left: length15.optional().default(20),
3568
- right: length15.optional().default(20),
3569
- top: length15.optional().default(0),
3570
- bottom: length15.optional().default(0),
3571
- p: length15.default(length15.parse("2.54mm")),
3572
- id: length15.optional().default(length15.parse("1mm")),
3573
- od: length15.optional().default(length15.parse("1.5mm"))
3681
+ fn: z30.string(),
3682
+ w: length16.default("10mm"),
3683
+ h: length16.optional(),
3684
+ left: length16.optional().default(20),
3685
+ right: length16.optional().default(20),
3686
+ top: length16.optional().default(0),
3687
+ bottom: length16.optional().default(0),
3688
+ p: length16.default(length16.parse("2.54mm")),
3689
+ id: length16.optional().default(length16.parse("1mm")),
3690
+ od: length16.optional().default(length16.parse("1.5mm"))
3574
3691
  });
3575
3692
  var getHeight3 = (parameters) => {
3576
3693
  const params = breakoutheaders_def.parse(parameters);
@@ -3762,9 +3879,9 @@ var breakoutheaders = (raw_params) => {
3762
3879
 
3763
3880
  // src/fn/hc49.ts
3764
3881
  import {
3765
- length as length16
3882
+ length as length17
3766
3883
  } from "circuit-json";
3767
- import { z as z24 } from "zod";
3884
+ import { z as z31 } from "zod";
3768
3885
  var generate_u_curve = (centerX, centerY, radius, direction) => {
3769
3886
  return Array.from({ length: 25 }, (_, i) => {
3770
3887
  const theta = i / 24 * Math.PI - Math.PI / 2;
@@ -3775,12 +3892,12 @@ var generate_u_curve = (centerX, centerY, radius, direction) => {
3775
3892
  });
3776
3893
  };
3777
3894
  var hc49_def = base_def.extend({
3778
- fn: z24.string(),
3779
- p: length16.optional().default("4.88mm"),
3780
- id: length16.optional().default("0.8mm"),
3781
- od: length16.optional().default("1.5mm"),
3782
- w: length16.optional().default("5.6mm"),
3783
- h: length16.optional().default("3.5mm")
3895
+ fn: z31.string(),
3896
+ p: length17.optional().default("4.88mm"),
3897
+ id: length17.optional().default("0.8mm"),
3898
+ od: length17.optional().default("1.5mm"),
3899
+ w: length17.optional().default("5.6mm"),
3900
+ h: length17.optional().default("3.5mm")
3784
3901
  });
3785
3902
  var hc49 = (raw_params) => {
3786
3903
  const parameters = hc49_def.parse(raw_params);
@@ -3821,16 +3938,16 @@ var hc49 = (raw_params) => {
3821
3938
 
3822
3939
  // src/fn/pad.ts
3823
3940
  import "zod";
3824
- import { length as length17 } from "circuit-json";
3825
- import { mm as mm5 } from "@tscircuit/mm";
3941
+ import { length as length18 } from "circuit-json";
3942
+ import { mm as mm11 } from "@tscircuit/mm";
3826
3943
  var pad_def = base_def.extend({
3827
- w: length17,
3828
- h: length17
3944
+ w: length18,
3945
+ h: length18
3829
3946
  });
3830
3947
  var pad = (params) => {
3831
3948
  const { w, h } = params;
3832
- const width = mm5(w);
3833
- const height = mm5(h);
3949
+ const width = mm11(w);
3950
+ const height = mm11(h);
3834
3951
  return {
3835
3952
  circuitJson: [
3836
3953
  rectpad(1, 0, 0, width, height),
@@ -3841,11 +3958,11 @@ var pad = (params) => {
3841
3958
  };
3842
3959
 
3843
3960
  // src/fn/to92.ts
3844
- import { z as z26 } from "zod";
3961
+ import { z as z33 } from "zod";
3845
3962
  import "@tscircuit/mm";
3846
3963
 
3847
3964
  // src/helpers/platedHolePill.ts
3848
- import { mm as mm6 } from "@tscircuit/mm";
3965
+ import { mm as mm12 } from "@tscircuit/mm";
3849
3966
  var platedHolePill = (pn, x, y, holeDiameter, outerWidth, outerHeight) => {
3850
3967
  return {
3851
3968
  pcb_plated_hole_id: "",
@@ -3853,10 +3970,10 @@ var platedHolePill = (pn, x, y, holeDiameter, outerWidth, outerHeight) => {
3853
3970
  shape: "pill",
3854
3971
  x,
3855
3972
  y,
3856
- outer_width: mm6(outerWidth),
3857
- outer_height: mm6(outerHeight),
3858
- hole_width: mm6(holeDiameter),
3859
- hole_height: mm6(holeDiameter),
3973
+ outer_width: mm12(outerWidth),
3974
+ outer_height: mm12(outerHeight),
3975
+ hole_width: mm12(holeDiameter),
3976
+ hole_height: mm12(holeDiameter),
3860
3977
  pcb_port_id: "",
3861
3978
  layers: ["top", "bottom"],
3862
3979
  port_hints: [pn.toString()],
@@ -3866,15 +3983,15 @@ var platedHolePill = (pn, x, y, holeDiameter, outerWidth, outerHeight) => {
3866
3983
 
3867
3984
  // src/fn/to92.ts
3868
3985
  var to92_def = base_def.extend({
3869
- fn: z26.string(),
3870
- num_pins: z26.union([z26.literal(3), z26.literal(2)]).default(3),
3871
- p: z26.string().default("1.27mm"),
3872
- id: z26.string().default("0.72mm"),
3873
- od: z26.string().default("0.95mm"),
3874
- w: z26.string().default("4.5mm"),
3875
- h: z26.string().default("4.5mm"),
3876
- inline: z26.boolean().default(false),
3877
- string: z26.string().optional()
3986
+ fn: z33.string(),
3987
+ num_pins: z33.union([z33.literal(3), z33.literal(2)]).default(3),
3988
+ p: z33.string().default("1.27mm"),
3989
+ id: z33.string().default("0.72mm"),
3990
+ od: z33.string().default("0.95mm"),
3991
+ w: z33.string().default("4.5mm"),
3992
+ h: z33.string().default("4.5mm"),
3993
+ inline: z33.boolean().default(false),
3994
+ string: z33.string().optional()
3878
3995
  });
3879
3996
  var generateSemicircle = (centerX, centerY, radius) => {
3880
3997
  return Array.from({ length: 25 }, (_, i) => {
@@ -3897,8 +4014,8 @@ var to92 = (raw_params) => {
3897
4014
  const padSpacing7 = Number.parseFloat(p);
3898
4015
  const holeDia = Number.parseFloat(id);
3899
4016
  const padDia = Number.parseFloat(od);
3900
- const padWidth7 = padDia;
3901
- const padHeight7 = padDia * (1.5 / 1.05);
4017
+ const padWidth = padDia;
4018
+ const padHeight = padDia * (1.5 / 1.05);
3902
4019
  let platedHoles = [];
3903
4020
  if (parameters.num_pins === 3) {
3904
4021
  if (inline) {
@@ -3909,18 +4026,18 @@ var to92 = (raw_params) => {
3909
4026
  holeY - padSpacing7,
3910
4027
  holeDia,
3911
4028
  padDia,
3912
- padHeight7,
4029
+ padHeight,
3913
4030
  0,
3914
4031
  0
3915
4032
  ),
3916
- platedHolePill(2, 0, holeY - padSpacing7, holeDia, padWidth7, padHeight7),
4033
+ platedHolePill(2, 0, holeY - padSpacing7, holeDia, padWidth, padHeight),
3917
4034
  platedHolePill(
3918
4035
  3,
3919
4036
  padSpacing7,
3920
4037
  holeY - padSpacing7,
3921
4038
  holeDia,
3922
- padWidth7,
3923
- padHeight7
4039
+ padWidth,
4040
+ padHeight
3924
4041
  )
3925
4042
  ];
3926
4043
  } else {
@@ -3946,8 +4063,8 @@ var to92 = (raw_params) => {
3946
4063
  -padSpacing7,
3947
4064
  holeY - padSpacing7,
3948
4065
  holeDia,
3949
- padWidth7,
3950
- padHeight7,
4066
+ padWidth,
4067
+ padHeight,
3951
4068
  0,
3952
4069
  0
3953
4070
  ),
@@ -3956,8 +4073,8 @@ var to92 = (raw_params) => {
3956
4073
  padSpacing7,
3957
4074
  holeY - padSpacing7,
3958
4075
  holeDia,
3959
- padWidth7,
3960
- padHeight7
4076
+ padWidth,
4077
+ padHeight
3961
4078
  )
3962
4079
  ];
3963
4080
  } else {
@@ -3990,22 +4107,22 @@ var to92 = (raw_params) => {
3990
4107
  };
3991
4108
 
3992
4109
  // src/fn/sod523.ts
3993
- import { z as z27 } from "zod";
3994
- import { length as length18 } from "circuit-json";
4110
+ import { z as z34 } from "zod";
4111
+ import { length as length19 } from "circuit-json";
3995
4112
  var sod_def2 = base_def.extend({
3996
- fn: z27.string(),
3997
- num_pins: z27.literal(2).default(2),
3998
- w: z27.string().default("2.15mm"),
3999
- h: z27.string().default("1.20mm"),
4000
- pl: z27.string().default("0.5mm"),
4001
- pw: z27.string().default("0.6mm"),
4002
- p: z27.string().default("1.4mm")
4113
+ fn: z34.string(),
4114
+ num_pins: z34.literal(2).default(2),
4115
+ w: z34.string().default("2.15mm"),
4116
+ h: z34.string().default("1.20mm"),
4117
+ pl: z34.string().default("0.5mm"),
4118
+ pw: z34.string().default("0.6mm"),
4119
+ p: z34.string().default("1.4mm")
4003
4120
  });
4004
4121
  var sod523 = (raw_params) => {
4005
4122
  const parameters = sod_def2.parse(raw_params);
4006
4123
  const silkscreenRefText = silkscreenRef(
4007
4124
  0,
4008
- length18.parse(parameters.h),
4125
+ length19.parse(parameters.h),
4009
4126
  0.3
4010
4127
  );
4011
4128
  const silkscreenLine = {
@@ -4014,20 +4131,20 @@ var sod523 = (raw_params) => {
4014
4131
  pcb_component_id: "",
4015
4132
  route: [
4016
4133
  {
4017
- x: length18.parse(parameters.p) / 2,
4018
- y: length18.parse(parameters.h) / 2
4134
+ x: length19.parse(parameters.p) / 2,
4135
+ y: length19.parse(parameters.h) / 2
4019
4136
  },
4020
4137
  {
4021
- x: -length18.parse(parameters.w) / 2 - 0.2,
4022
- y: length18.parse(parameters.h) / 2
4138
+ x: -length19.parse(parameters.w) / 2 - 0.2,
4139
+ y: length19.parse(parameters.h) / 2
4023
4140
  },
4024
4141
  {
4025
- x: -length18.parse(parameters.w) / 2 - 0.2,
4026
- y: -length18.parse(parameters.h) / 2
4142
+ x: -length19.parse(parameters.w) / 2 - 0.2,
4143
+ y: -length19.parse(parameters.h) / 2
4027
4144
  },
4028
4145
  {
4029
- x: length18.parse(parameters.p) / 2,
4030
- y: -length18.parse(parameters.h) / 2
4146
+ x: length19.parse(parameters.p) / 2,
4147
+ y: -length19.parse(parameters.h) / 2
4031
4148
  }
4032
4149
  ],
4033
4150
  stroke_width: 0.1,
@@ -4115,22 +4232,22 @@ var sop8 = (raw_params) => {
4115
4232
  };
4116
4233
 
4117
4234
  // src/fn/sod80.ts
4118
- import { z as z28 } from "zod";
4119
- import { length as length19 } from "circuit-json";
4235
+ import { z as z35 } from "zod";
4236
+ import { length as length20 } from "circuit-json";
4120
4237
  var sod80_def = base_def.extend({
4121
- fn: z28.string(),
4122
- num_pins: z28.literal(2).default(2),
4123
- w: z28.string().default("5.0mm"),
4124
- h: z28.string().default("2.30mm"),
4125
- pl: z28.string().default("1.25mm"),
4126
- pw: z28.string().default("2mm"),
4127
- p: z28.string().default("3.75mm")
4238
+ fn: z35.string(),
4239
+ num_pins: z35.literal(2).default(2),
4240
+ w: z35.string().default("5.0mm"),
4241
+ h: z35.string().default("2.30mm"),
4242
+ pl: z35.string().default("1.25mm"),
4243
+ pw: z35.string().default("2mm"),
4244
+ p: z35.string().default("3.75mm")
4128
4245
  });
4129
4246
  var sod80 = (raw_params) => {
4130
4247
  const parameters = sod80_def.parse(raw_params);
4131
4248
  const silkscreenRefText = silkscreenRef(
4132
4249
  0,
4133
- length19.parse(parameters.h) / 2 + 1,
4250
+ length20.parse(parameters.h) / 2 + 1,
4134
4251
  0.3
4135
4252
  );
4136
4253
  const silkscreenLine = {
@@ -4139,20 +4256,20 @@ var sod80 = (raw_params) => {
4139
4256
  pcb_component_id: "",
4140
4257
  route: [
4141
4258
  {
4142
- x: length19.parse(parameters.p) / 2 + 0.5,
4143
- y: length19.parse(parameters.h) / 2 + 0.5
4259
+ x: length20.parse(parameters.p) / 2 + 0.5,
4260
+ y: length20.parse(parameters.h) / 2 + 0.5
4144
4261
  },
4145
4262
  {
4146
- x: -length19.parse(parameters.w) / 2 - 0.5,
4147
- y: length19.parse(parameters.h) / 2 + 0.5
4263
+ x: -length20.parse(parameters.w) / 2 - 0.5,
4264
+ y: length20.parse(parameters.h) / 2 + 0.5
4148
4265
  },
4149
4266
  {
4150
- x: -length19.parse(parameters.w) / 2 - 0.5,
4151
- y: -length19.parse(parameters.h) / 2 - 0.5
4267
+ x: -length20.parse(parameters.w) / 2 - 0.5,
4268
+ y: -length20.parse(parameters.h) / 2 - 0.5
4152
4269
  },
4153
4270
  {
4154
- x: length19.parse(parameters.p) / 2 + 0.5,
4155
- y: -length19.parse(parameters.h) / 2 - 0.5
4271
+ x: length20.parse(parameters.p) / 2 + 0.5,
4272
+ y: -length20.parse(parameters.h) / 2 - 0.5
4156
4273
  }
4157
4274
  ],
4158
4275
  stroke_width: 0.1,
@@ -4191,22 +4308,22 @@ var sod80WithoutParsing = (parameters) => {
4191
4308
  };
4192
4309
 
4193
4310
  // src/fn/sod123w.ts
4194
- import { z as z29 } from "zod";
4195
- import { length as length20 } from "circuit-json";
4311
+ import { z as z36 } from "zod";
4312
+ import { length as length21 } from "circuit-json";
4196
4313
  var sod_def3 = base_def.extend({
4197
- fn: z29.string(),
4198
- num_pins: z29.literal(2).default(2),
4199
- w: z29.string().default("4.4mm"),
4200
- h: z29.string().default("2.1mm"),
4201
- pl: z29.string().default("1.2mm"),
4202
- pw: z29.string().default("1.2mm"),
4203
- p: z29.string().default("2.9mm")
4314
+ fn: z36.string(),
4315
+ num_pins: z36.literal(2).default(2),
4316
+ w: z36.string().default("4.4mm"),
4317
+ h: z36.string().default("2.1mm"),
4318
+ pl: z36.string().default("1.2mm"),
4319
+ pw: z36.string().default("1.2mm"),
4320
+ p: z36.string().default("2.9mm")
4204
4321
  });
4205
4322
  var sod123w = (raw_params) => {
4206
4323
  const parameters = sod_def3.parse(raw_params);
4207
4324
  const silkscreenRefText = silkscreenRef(
4208
4325
  0,
4209
- length20.parse(parameters.h) - 0.5,
4326
+ length21.parse(parameters.h) - 0.5,
4210
4327
  0.3
4211
4328
  );
4212
4329
  const silkscreenLine = {
@@ -4215,20 +4332,20 @@ var sod123w = (raw_params) => {
4215
4332
  pcb_component_id: "",
4216
4333
  route: [
4217
4334
  {
4218
- x: length20.parse(parameters.p) / 2,
4219
- y: length20.parse(parameters.h) / 2
4335
+ x: length21.parse(parameters.p) / 2,
4336
+ y: length21.parse(parameters.h) / 2
4220
4337
  },
4221
4338
  {
4222
- x: -length20.parse(parameters.w) / 2 - 0.2,
4223
- y: length20.parse(parameters.h) / 2
4339
+ x: -length21.parse(parameters.w) / 2 - 0.2,
4340
+ y: length21.parse(parameters.h) / 2
4224
4341
  },
4225
4342
  {
4226
- x: -length20.parse(parameters.w) / 2 - 0.2,
4227
- y: -length20.parse(parameters.h) / 2
4343
+ x: -length21.parse(parameters.w) / 2 - 0.2,
4344
+ y: -length21.parse(parameters.h) / 2
4228
4345
  },
4229
4346
  {
4230
- x: length20.parse(parameters.p) / 2,
4231
- y: -length20.parse(parameters.h) / 2
4347
+ x: length21.parse(parameters.p) / 2,
4348
+ y: -length21.parse(parameters.h) / 2
4232
4349
  }
4233
4350
  ],
4234
4351
  stroke_width: 0.1,
@@ -4270,22 +4387,22 @@ var sodWithoutParsing3 = (parameters) => {
4270
4387
  };
4271
4388
 
4272
4389
  // src/fn/sod323.ts
4273
- import { z as z30 } from "zod";
4274
- import { length as length21 } from "circuit-json";
4390
+ import { z as z37 } from "zod";
4391
+ import { length as length22 } from "circuit-json";
4275
4392
  var sod_def4 = base_def.extend({
4276
- fn: z30.string(),
4277
- num_pins: z30.literal(2).default(2),
4278
- w: z30.string().default("3.30mm"),
4279
- h: z30.string().default("1.80mm"),
4280
- pl: z30.string().default("0.60mm"),
4281
- pw: z30.string().default("0.45mm"),
4282
- p: z30.string().default("2.1mm")
4393
+ fn: z37.string(),
4394
+ num_pins: z37.literal(2).default(2),
4395
+ w: z37.string().default("3.30mm"),
4396
+ h: z37.string().default("1.80mm"),
4397
+ pl: z37.string().default("0.60mm"),
4398
+ pw: z37.string().default("0.45mm"),
4399
+ p: z37.string().default("2.1mm")
4283
4400
  });
4284
4401
  var sod323 = (raw_params) => {
4285
4402
  const parameters = sod_def4.parse(raw_params);
4286
4403
  const silkscreenRefText = silkscreenRef(
4287
4404
  0,
4288
- length21.parse(parameters.h) - 0.5,
4405
+ length22.parse(parameters.h) - 0.5,
4289
4406
  0.3
4290
4407
  );
4291
4408
  const silkscreenLine = {
@@ -4294,20 +4411,20 @@ var sod323 = (raw_params) => {
4294
4411
  pcb_component_id: "",
4295
4412
  route: [
4296
4413
  {
4297
- x: length21.parse(parameters.p) / 2,
4298
- y: length21.parse(parameters.h) / 2
4414
+ x: length22.parse(parameters.p) / 2,
4415
+ y: length22.parse(parameters.h) / 2
4299
4416
  },
4300
4417
  {
4301
- x: -length21.parse(parameters.w) / 2,
4302
- y: length21.parse(parameters.h) / 2
4418
+ x: -length22.parse(parameters.w) / 2,
4419
+ y: length22.parse(parameters.h) / 2
4303
4420
  },
4304
4421
  {
4305
- x: -length21.parse(parameters.w) / 2,
4306
- y: -length21.parse(parameters.h) / 2
4422
+ x: -length22.parse(parameters.w) / 2,
4423
+ y: -length22.parse(parameters.h) / 2
4307
4424
  },
4308
4425
  {
4309
- x: length21.parse(parameters.p) / 2,
4310
- y: -length21.parse(parameters.h) / 2
4426
+ x: length22.parse(parameters.p) / 2,
4427
+ y: -length22.parse(parameters.h) / 2
4311
4428
  }
4312
4429
  ],
4313
4430
  stroke_width: 0.1,
@@ -4349,22 +4466,22 @@ var sodWithoutParsing4 = (parameters) => {
4349
4466
  };
4350
4467
 
4351
4468
  // src/fn/sod923.ts
4352
- import { z as z31 } from "zod";
4353
- import { length as length22 } from "circuit-json";
4469
+ import { z as z38 } from "zod";
4470
+ import { length as length23 } from "circuit-json";
4354
4471
  var sod_def5 = base_def.extend({
4355
- fn: z31.string(),
4356
- num_pins: z31.literal(2).default(2),
4357
- w: z31.string().default("1.4mm"),
4358
- h: z31.string().default("0.9mm"),
4359
- pl: z31.string().default("0.36mm"),
4360
- pw: z31.string().default("0.25mm"),
4361
- p: z31.string().default("0.85mm")
4472
+ fn: z38.string(),
4473
+ num_pins: z38.literal(2).default(2),
4474
+ w: z38.string().default("1.4mm"),
4475
+ h: z38.string().default("0.9mm"),
4476
+ pl: z38.string().default("0.36mm"),
4477
+ pw: z38.string().default("0.25mm"),
4478
+ p: z38.string().default("0.85mm")
4362
4479
  });
4363
4480
  var sod923 = (raw_params) => {
4364
4481
  const parameters = sod_def5.parse(raw_params);
4365
4482
  const silkscreenRefText = silkscreenRef(
4366
4483
  0,
4367
- length22.parse(parameters.h),
4484
+ length23.parse(parameters.h),
4368
4485
  0.3
4369
4486
  );
4370
4487
  const silkscreenLine = {
@@ -4373,20 +4490,20 @@ var sod923 = (raw_params) => {
4373
4490
  pcb_component_id: "",
4374
4491
  route: [
4375
4492
  {
4376
- x: length22.parse(parameters.p) / 2 + 0.15,
4377
- y: length22.parse(parameters.h) / 2
4493
+ x: length23.parse(parameters.p) / 2 + 0.15,
4494
+ y: length23.parse(parameters.h) / 2
4378
4495
  },
4379
4496
  {
4380
- x: -length22.parse(parameters.w) / 2 - 0.15,
4381
- y: length22.parse(parameters.h) / 2
4497
+ x: -length23.parse(parameters.w) / 2 - 0.15,
4498
+ y: length23.parse(parameters.h) / 2
4382
4499
  },
4383
4500
  {
4384
- x: -length22.parse(parameters.w) / 2 - 0.15,
4385
- y: -length22.parse(parameters.h) / 2
4501
+ x: -length23.parse(parameters.w) / 2 - 0.15,
4502
+ y: -length23.parse(parameters.h) / 2
4386
4503
  },
4387
4504
  {
4388
- x: length22.parse(parameters.p) / 2 + 0.15,
4389
- y: -length22.parse(parameters.h) / 2
4505
+ x: length23.parse(parameters.p) / 2 + 0.15,
4506
+ y: -length23.parse(parameters.h) / 2
4390
4507
  }
4391
4508
  ],
4392
4509
  stroke_width: 0.1,
@@ -4429,22 +4546,22 @@ var sodWithoutParsing5 = (parameters) => {
4429
4546
  };
4430
4547
 
4431
4548
  // src/fn/sod882.ts
4432
- import { z as z32 } from "zod";
4433
- import { length as length23 } from "circuit-json";
4549
+ import { z as z39 } from "zod";
4550
+ import { length as length24 } from "circuit-json";
4434
4551
  var sod_def6 = base_def.extend({
4435
- fn: z32.string(),
4436
- num_pins: z32.literal(2).default(2),
4437
- w: z32.string().default("1.3mm"),
4438
- h: z32.string().default("0.9mm"),
4439
- pl: z32.string().default("0.4mm"),
4440
- pw: z32.string().default("0.7mm"),
4441
- p: z32.string().default("0.7mm")
4552
+ fn: z39.string(),
4553
+ num_pins: z39.literal(2).default(2),
4554
+ w: z39.string().default("1.3mm"),
4555
+ h: z39.string().default("0.9mm"),
4556
+ pl: z39.string().default("0.4mm"),
4557
+ pw: z39.string().default("0.7mm"),
4558
+ p: z39.string().default("0.7mm")
4442
4559
  });
4443
4560
  var sod882 = (raw_params) => {
4444
4561
  const parameters = sod_def6.parse(raw_params);
4445
4562
  const silkscreenRefText = silkscreenRef(
4446
4563
  0,
4447
- length23.parse(parameters.h) + 0.1,
4564
+ length24.parse(parameters.h) + 0.1,
4448
4565
  0.3
4449
4566
  );
4450
4567
  const silkscreenLine = {
@@ -4453,20 +4570,20 @@ var sod882 = (raw_params) => {
4453
4570
  pcb_component_id: "",
4454
4571
  route: [
4455
4572
  {
4456
- x: length23.parse(parameters.p) / 2 + 0.2,
4457
- y: length23.parse(parameters.h) / 2 + 0.2
4573
+ x: length24.parse(parameters.p) / 2 + 0.2,
4574
+ y: length24.parse(parameters.h) / 2 + 0.2
4458
4575
  },
4459
4576
  {
4460
- x: -length23.parse(parameters.w) / 2 - 0.2,
4461
- y: length23.parse(parameters.h) / 2 + 0.2
4577
+ x: -length24.parse(parameters.w) / 2 - 0.2,
4578
+ y: length24.parse(parameters.h) / 2 + 0.2
4462
4579
  },
4463
4580
  {
4464
- x: -length23.parse(parameters.w) / 2 - 0.2,
4465
- y: -length23.parse(parameters.h) / 2 - 0.2
4581
+ x: -length24.parse(parameters.w) / 2 - 0.2,
4582
+ y: -length24.parse(parameters.h) / 2 - 0.2
4466
4583
  },
4467
4584
  {
4468
- x: length23.parse(parameters.p) / 2 + 0.2,
4469
- y: -length23.parse(parameters.h) / 2 - 0.2
4585
+ x: length24.parse(parameters.p) / 2 + 0.2,
4586
+ y: -length24.parse(parameters.h) / 2 - 0.2
4470
4587
  }
4471
4588
  ],
4472
4589
  stroke_width: 0.1,
@@ -4509,22 +4626,22 @@ var sodWithoutParsing6 = (parameters) => {
4509
4626
  };
4510
4627
 
4511
4628
  // src/fn/sod323f.ts
4512
- import { z as z33 } from "zod";
4513
- import { length as length24 } from "circuit-json";
4629
+ import { z as z40 } from "zod";
4630
+ import { length as length25 } from "circuit-json";
4514
4631
  var sod_def7 = base_def.extend({
4515
- fn: z33.string(),
4516
- num_pins: z33.literal(2).default(2),
4517
- w: z33.string().default("3,05mm"),
4518
- h: z33.string().default("1.65mm"),
4519
- pl: z33.string().default("0.6mm"),
4520
- pw: z33.string().default("0.6mm"),
4521
- pad_spacing: z33.string().default("2.2mm")
4632
+ fn: z40.string(),
4633
+ num_pins: z40.literal(2).default(2),
4634
+ w: z40.string().default("3,05mm"),
4635
+ h: z40.string().default("1.65mm"),
4636
+ pl: z40.string().default("0.6mm"),
4637
+ pw: z40.string().default("0.6mm"),
4638
+ pad_spacing: z40.string().default("2.2mm")
4522
4639
  });
4523
4640
  var sod323f = (raw_params) => {
4524
4641
  const parameters = sod_def7.parse(raw_params);
4525
4642
  const silkscreenRefText = silkscreenRef(
4526
4643
  0,
4527
- length24.parse(parameters.h),
4644
+ length25.parse(parameters.h),
4528
4645
  0.3
4529
4646
  );
4530
4647
  const silkscreenLine = {
@@ -4533,20 +4650,20 @@ var sod323f = (raw_params) => {
4533
4650
  pcb_component_id: "",
4534
4651
  route: [
4535
4652
  {
4536
- x: length24.parse(parameters.pad_spacing) / 2,
4537
- y: length24.parse(parameters.h) / 2
4653
+ x: length25.parse(parameters.pad_spacing) / 2,
4654
+ y: length25.parse(parameters.h) / 2
4538
4655
  },
4539
4656
  {
4540
- x: -length24.parse(parameters.w) / 2 - 0.2,
4541
- y: length24.parse(parameters.h) / 2
4657
+ x: -length25.parse(parameters.w) / 2 - 0.2,
4658
+ y: length25.parse(parameters.h) / 2
4542
4659
  },
4543
4660
  {
4544
- x: -length24.parse(parameters.w) / 2 - 0.2,
4545
- y: -length24.parse(parameters.h) / 2
4661
+ x: -length25.parse(parameters.w) / 2 - 0.2,
4662
+ y: -length25.parse(parameters.h) / 2
4546
4663
  },
4547
4664
  {
4548
- x: length24.parse(parameters.pad_spacing) / 2,
4549
- y: -length24.parse(parameters.h) / 2
4665
+ x: length25.parse(parameters.pad_spacing) / 2,
4666
+ y: -length25.parse(parameters.h) / 2
4550
4667
  }
4551
4668
  ],
4552
4669
  stroke_width: 0.1,
@@ -4589,22 +4706,22 @@ var sodWithoutParsing7 = (parameters) => {
4589
4706
  };
4590
4707
 
4591
4708
  // src/fn/sod123f.ts
4592
- import { z as z34 } from "zod";
4593
- import { length as length25 } from "circuit-json";
4709
+ import { z as z41 } from "zod";
4710
+ import { length as length26 } from "circuit-json";
4594
4711
  var sod_def8 = base_def.extend({
4595
- fn: z34.string(),
4596
- num_pins: z34.literal(2).default(2),
4597
- w: z34.string().default("4.4mm"),
4598
- h: z34.string().default("2.1mm"),
4599
- pl: z34.string().default("1.2mm"),
4600
- pw: z34.string().default("1.2mm"),
4601
- p: z34.string().default("2.9mm")
4712
+ fn: z41.string(),
4713
+ num_pins: z41.literal(2).default(2),
4714
+ w: z41.string().default("4.4mm"),
4715
+ h: z41.string().default("2.1mm"),
4716
+ pl: z41.string().default("1.2mm"),
4717
+ pw: z41.string().default("1.2mm"),
4718
+ p: z41.string().default("2.9mm")
4602
4719
  });
4603
4720
  var sod123f = (raw_params) => {
4604
4721
  const parameters = sod_def8.parse(raw_params);
4605
4722
  const silkscreenRefText = silkscreenRef(
4606
4723
  0,
4607
- length25.parse(parameters.h),
4724
+ length26.parse(parameters.h),
4608
4725
  0.3
4609
4726
  );
4610
4727
  const silkscreenLine = {
@@ -4613,20 +4730,20 @@ var sod123f = (raw_params) => {
4613
4730
  pcb_component_id: "",
4614
4731
  route: [
4615
4732
  {
4616
- x: length25.parse(parameters.p) / 2,
4617
- y: length25.parse(parameters.h) / 2
4733
+ x: length26.parse(parameters.p) / 2,
4734
+ y: length26.parse(parameters.h) / 2
4618
4735
  },
4619
4736
  {
4620
- x: -length25.parse(parameters.w) / 2 - 0.2,
4621
- y: length25.parse(parameters.h) / 2
4737
+ x: -length26.parse(parameters.w) / 2 - 0.2,
4738
+ y: length26.parse(parameters.h) / 2
4622
4739
  },
4623
4740
  {
4624
- x: -length25.parse(parameters.w) / 2 - 0.2,
4625
- y: -length25.parse(parameters.h) / 2
4741
+ x: -length26.parse(parameters.w) / 2 - 0.2,
4742
+ y: -length26.parse(parameters.h) / 2
4626
4743
  },
4627
4744
  {
4628
- x: length25.parse(parameters.p) / 2,
4629
- y: -length25.parse(parameters.h) / 2
4745
+ x: length26.parse(parameters.p) / 2,
4746
+ y: -length26.parse(parameters.h) / 2
4630
4747
  }
4631
4748
  ],
4632
4749
  stroke_width: 0.1,
@@ -4669,22 +4786,22 @@ var sodWithoutParsing8 = (parameters) => {
4669
4786
  };
4670
4787
 
4671
4788
  // src/fn/sod123fl.ts
4672
- import { z as z35 } from "zod";
4673
- import { length as length26 } from "circuit-json";
4789
+ import { z as z42 } from "zod";
4790
+ import { length as length27 } from "circuit-json";
4674
4791
  var sod123FL_def = base_def.extend({
4675
- fn: z35.string(),
4676
- num_pins: z35.literal(2).default(2),
4677
- w: z35.string().default("4.4mm"),
4678
- h: z35.string().default("2.1mm"),
4679
- pl: z35.string().default("0.91mm"),
4680
- pw: z35.string().default("1.22mm"),
4681
- p: z35.string().default("3.146mm")
4792
+ fn: z42.string(),
4793
+ num_pins: z42.literal(2).default(2),
4794
+ w: z42.string().default("4.4mm"),
4795
+ h: z42.string().default("2.1mm"),
4796
+ pl: z42.string().default("0.91mm"),
4797
+ pw: z42.string().default("1.22mm"),
4798
+ p: z42.string().default("3.146mm")
4682
4799
  });
4683
4800
  var sod123fl = (raw_params) => {
4684
4801
  const parameters = sod123FL_def.parse(raw_params);
4685
4802
  const silkscreenRefText = silkscreenRef(
4686
4803
  0,
4687
- length26.parse(parameters.h),
4804
+ length27.parse(parameters.h),
4688
4805
  0.3
4689
4806
  );
4690
4807
  const silkscreenLine = {
@@ -4693,20 +4810,20 @@ var sod123fl = (raw_params) => {
4693
4810
  pcb_component_id: "",
4694
4811
  route: [
4695
4812
  {
4696
- x: length26.parse(parameters.p) / 2,
4697
- y: length26.parse(parameters.h) / 2
4813
+ x: length27.parse(parameters.p) / 2,
4814
+ y: length27.parse(parameters.h) / 2
4698
4815
  },
4699
4816
  {
4700
- x: -length26.parse(parameters.w) / 2 - 0.2,
4701
- y: length26.parse(parameters.h) / 2
4817
+ x: -length27.parse(parameters.w) / 2 - 0.2,
4818
+ y: length27.parse(parameters.h) / 2
4702
4819
  },
4703
4820
  {
4704
- x: -length26.parse(parameters.w) / 2 - 0.2,
4705
- y: -length26.parse(parameters.h) / 2
4821
+ x: -length27.parse(parameters.w) / 2 - 0.2,
4822
+ y: -length27.parse(parameters.h) / 2
4706
4823
  },
4707
4824
  {
4708
- x: length26.parse(parameters.p) / 2,
4709
- y: -length26.parse(parameters.h) / 2
4825
+ x: length27.parse(parameters.p) / 2,
4826
+ y: -length27.parse(parameters.h) / 2
4710
4827
  }
4711
4828
  ],
4712
4829
  stroke_width: 0.1,
@@ -4749,22 +4866,22 @@ var sodWithoutParsing9 = (parameters) => {
4749
4866
  };
4750
4867
 
4751
4868
  // src/fn/sod723.ts
4752
- import { z as z36 } from "zod";
4753
- import { length as length27 } from "circuit-json";
4869
+ import { z as z43 } from "zod";
4870
+ import { length as length28 } from "circuit-json";
4754
4871
  var sod_def9 = base_def.extend({
4755
- fn: z36.string(),
4756
- num_pins: z36.literal(2).default(2),
4757
- w: z36.string().default("1.80mm"),
4758
- h: z36.string().default("1.00mm"),
4759
- pl: z36.string().default("0.66mm"),
4760
- pw: z36.string().default("0.5mm"),
4761
- p: z36.string().default("0.8mm")
4872
+ fn: z43.string(),
4873
+ num_pins: z43.literal(2).default(2),
4874
+ w: z43.string().default("1.80mm"),
4875
+ h: z43.string().default("1.00mm"),
4876
+ pl: z43.string().default("0.66mm"),
4877
+ pw: z43.string().default("0.5mm"),
4878
+ p: z43.string().default("0.8mm")
4762
4879
  });
4763
4880
  var sod723 = (raw_params) => {
4764
4881
  const parameters = sod_def9.parse(raw_params);
4765
4882
  const silkscreenRefText = silkscreenRef(
4766
4883
  0,
4767
- length27.parse(parameters.h),
4884
+ length28.parse(parameters.h),
4768
4885
  0.3
4769
4886
  );
4770
4887
  const silkscreenLine = {
@@ -4773,20 +4890,20 @@ var sod723 = (raw_params) => {
4773
4890
  pcb_component_id: "",
4774
4891
  route: [
4775
4892
  {
4776
- x: length27.parse(parameters.p) / 2,
4777
- y: length27.parse(parameters.h) / 2
4893
+ x: length28.parse(parameters.p) / 2,
4894
+ y: length28.parse(parameters.h) / 2
4778
4895
  },
4779
4896
  {
4780
- x: -length27.parse(parameters.w) / 2 - 0.1,
4781
- y: length27.parse(parameters.h) / 2
4897
+ x: -length28.parse(parameters.w) / 2 - 0.1,
4898
+ y: length28.parse(parameters.h) / 2
4782
4899
  },
4783
4900
  {
4784
- x: -length27.parse(parameters.w) / 2 - 0.1,
4785
- y: -length27.parse(parameters.h) / 2
4901
+ x: -length28.parse(parameters.w) / 2 - 0.1,
4902
+ y: -length28.parse(parameters.h) / 2
4786
4903
  },
4787
4904
  {
4788
- x: length27.parse(parameters.p) / 2,
4789
- y: -length27.parse(parameters.h) / 2
4905
+ x: length28.parse(parameters.p) / 2,
4906
+ y: -length28.parse(parameters.h) / 2
4790
4907
  }
4791
4908
  ],
4792
4909
  stroke_width: 0.1,
@@ -4829,22 +4946,22 @@ var sodWithoutParsing10 = (parameters) => {
4829
4946
  };
4830
4947
 
4831
4948
  // src/fn/sod128.ts
4832
- import { z as z37 } from "zod";
4833
- import { length as length28 } from "circuit-json";
4949
+ import { z as z44 } from "zod";
4950
+ import { length as length29 } from "circuit-json";
4834
4951
  var sod_def10 = base_def.extend({
4835
- fn: z37.string(),
4836
- num_pins: z37.literal(2).default(2),
4837
- w: z37.string().default("6.2mm"),
4838
- h: z37.string().default("3.4mm"),
4839
- pl: z37.string().default("1.4mm"),
4840
- pw: z37.string().default("2.1mm"),
4841
- p: z37.string().default("4.4mm")
4952
+ fn: z44.string(),
4953
+ num_pins: z44.literal(2).default(2),
4954
+ w: z44.string().default("6.2mm"),
4955
+ h: z44.string().default("3.4mm"),
4956
+ pl: z44.string().default("1.4mm"),
4957
+ pw: z44.string().default("2.1mm"),
4958
+ p: z44.string().default("4.4mm")
4842
4959
  });
4843
4960
  var sod128 = (raw_params) => {
4844
4961
  const parameters = sod_def10.parse(raw_params);
4845
4962
  const silkscreenRefText = silkscreenRef(
4846
4963
  0,
4847
- length28.parse(parameters.h) / 2 + 0.4,
4964
+ length29.parse(parameters.h) / 2 + 0.4,
4848
4965
  0.3
4849
4966
  );
4850
4967
  const silkscreenLine = {
@@ -4853,20 +4970,20 @@ var sod128 = (raw_params) => {
4853
4970
  pcb_component_id: "",
4854
4971
  route: [
4855
4972
  {
4856
- x: length28.parse(parameters.p) / 2,
4857
- y: length28.parse(parameters.h) / 2
4973
+ x: length29.parse(parameters.p) / 2,
4974
+ y: length29.parse(parameters.h) / 2
4858
4975
  },
4859
4976
  {
4860
- x: -length28.parse(parameters.w) / 2 - 0.2,
4861
- y: length28.parse(parameters.h) / 2
4977
+ x: -length29.parse(parameters.w) / 2 - 0.2,
4978
+ y: length29.parse(parameters.h) / 2
4862
4979
  },
4863
4980
  {
4864
- x: -length28.parse(parameters.w) / 2 - 0.2,
4865
- y: -length28.parse(parameters.h) / 2
4981
+ x: -length29.parse(parameters.w) / 2 - 0.2,
4982
+ y: -length29.parse(parameters.h) / 2
4866
4983
  },
4867
4984
  {
4868
- x: length28.parse(parameters.p) / 2,
4869
- y: -length28.parse(parameters.h) / 2
4985
+ x: length29.parse(parameters.p) / 2,
4986
+ y: -length29.parse(parameters.h) / 2
4870
4987
  }
4871
4988
  ],
4872
4989
  stroke_width: 0.1,
@@ -4909,29 +5026,29 @@ var sodWithoutParsing11 = (parameters) => {
4909
5026
  };
4910
5027
 
4911
5028
  // src/fn/sot89.ts
4912
- import { z as z38 } from "zod";
5029
+ import { z as z45 } from "zod";
4913
5030
  var sot89_def = base_def.extend({
4914
- fn: z38.string(),
4915
- num_pins: z38.union([z38.literal(3), z38.literal(5)]).default(3),
4916
- w: z38.string().default("4.20mm"),
4917
- h: z38.string().default("4.80mm"),
4918
- pl: z38.string().default("1.3mm"),
4919
- pw: z38.string().default("0.9mm"),
4920
- p: z38.string().default("1.5mm"),
4921
- string: z38.string().optional()
5031
+ fn: z45.string(),
5032
+ num_pins: z45.union([z45.literal(3), z45.literal(5)]).default(3),
5033
+ w: z45.string().default("4.20mm"),
5034
+ h: z45.string().default("4.80mm"),
5035
+ pl: z45.string().default("1.3mm"),
5036
+ pw: z45.string().default("0.9mm"),
5037
+ p: z45.string().default("1.5mm"),
5038
+ string: z45.string().optional()
4922
5039
  });
4923
5040
  var sot89_3 = (parameters) => {
4924
5041
  const pads = [];
4925
5042
  const padGap = Number.parseFloat(parameters.p);
4926
- const padWidth7 = Number.parseFloat(parameters.pw);
4927
- const length51 = Number.parseFloat(parameters.w);
4928
- const padHeight7 = Number.parseFloat(parameters.pl);
5043
+ const padWidth = Number.parseFloat(parameters.pw);
5044
+ const length52 = Number.parseFloat(parameters.w);
5045
+ const padHeight = Number.parseFloat(parameters.pl);
4929
5046
  const centerExtra = 0.175;
4930
- const outerPadXShift = (padHeight7 - (padHeight7 + centerExtra)) / 2;
5047
+ const outerPadXShift = (padHeight - (padHeight + centerExtra)) / 2;
4931
5048
  pads.push(
4932
- rectpad(1, -length51 / 2 + outerPadXShift, padGap, padHeight7, padWidth7),
4933
- rectpad(2, -length51 / 2, 0, padHeight7 + centerExtra, padWidth7),
4934
- rectpad(3, -length51 / 2 + outerPadXShift, -padGap, padHeight7, padWidth7)
5049
+ rectpad(1, -length52 / 2 + outerPadXShift, padGap, padHeight, padWidth),
5050
+ rectpad(2, -length52 / 2, 0, padHeight + centerExtra, padWidth),
5051
+ rectpad(3, -length52 / 2 + outerPadXShift, -padGap, padHeight, padWidth)
4935
5052
  );
4936
5053
  const silkscreenRefText = silkscreenRef(0, 0, 0.3);
4937
5054
  const width = Number.parseFloat(parameters.w) / 2 - 1;
@@ -4970,8 +5087,8 @@ var sot89_3 = (parameters) => {
4970
5087
  var sot89_5 = (parameters) => {
4971
5088
  const pads = [];
4972
5089
  const padGap = Number.parseFloat(parameters.p);
4973
- const padWidth7 = Number.parseFloat(parameters.pw);
4974
- const length51 = Number.parseFloat(parameters.w);
5090
+ const padWidth = Number.parseFloat(parameters.pw);
5091
+ const length52 = Number.parseFloat(parameters.w);
4975
5092
  pads.push(
4976
5093
  rectpad(1, -1.85, -1.5, 1.5, 0.7),
4977
5094
  rectpad(2, -1.85, 1.5, 1.5, 0.7),
@@ -5039,18 +5156,18 @@ var sot89 = (raw_params) => {
5039
5156
 
5040
5157
  // src/fn/to220.ts
5041
5158
  import {
5042
- length as length29
5159
+ length as length30
5043
5160
  } from "circuit-json";
5044
- import { z as z39 } from "zod";
5161
+ import { z as z46 } from "zod";
5045
5162
  var to220_def = base_def.extend({
5046
- fn: z39.string(),
5047
- p: length29.optional().default("5.0mm"),
5048
- id: length29.optional().default("1.0mm"),
5049
- od: length29.optional().default("1.9mm"),
5050
- w: length29.optional().default("13mm"),
5051
- h: length29.optional().default("7mm"),
5052
- num_pins: z39.number().optional(),
5053
- string: z39.string().optional()
5163
+ fn: z46.string(),
5164
+ p: length30.optional().default("5.0mm"),
5165
+ id: length30.optional().default("1.0mm"),
5166
+ od: length30.optional().default("1.9mm"),
5167
+ w: length30.optional().default("13mm"),
5168
+ h: length30.optional().default("7mm"),
5169
+ num_pins: z46.number().optional(),
5170
+ string: z46.string().optional()
5054
5171
  });
5055
5172
  var to220 = (raw_params) => {
5056
5173
  const parameters = to220_def.parse(raw_params);
@@ -5130,22 +5247,22 @@ var to220 = (raw_params) => {
5130
5247
  };
5131
5248
 
5132
5249
  // src/fn/minimelf.ts
5133
- import { z as z40 } from "zod";
5134
- import { length as length30 } from "circuit-json";
5250
+ import { z as z47 } from "zod";
5251
+ import { length as length31 } from "circuit-json";
5135
5252
  var minimelf_def = base_def.extend({
5136
- fn: z40.string(),
5137
- num_pins: z40.literal(2).default(2),
5138
- w: z40.string().default("5.40mm"),
5139
- h: z40.string().default("2.30mm"),
5140
- pl: z40.string().default("1.30mm"),
5141
- pw: z40.string().default("1.70mm"),
5142
- p: z40.string().default("3.5mm")
5253
+ fn: z47.string(),
5254
+ num_pins: z47.literal(2).default(2),
5255
+ w: z47.string().default("5.40mm"),
5256
+ h: z47.string().default("2.30mm"),
5257
+ pl: z47.string().default("1.30mm"),
5258
+ pw: z47.string().default("1.70mm"),
5259
+ p: z47.string().default("3.5mm")
5143
5260
  });
5144
5261
  var minimelf = (raw_params) => {
5145
5262
  const parameters = minimelf_def.parse(raw_params);
5146
5263
  const silkscreenRefText = silkscreenRef(
5147
5264
  0,
5148
- length30.parse(parameters.h) / 2 + 0.4,
5265
+ length31.parse(parameters.h) / 2 + 0.4,
5149
5266
  0.3
5150
5267
  );
5151
5268
  const silkscreenLine = {
@@ -5154,20 +5271,20 @@ var minimelf = (raw_params) => {
5154
5271
  pcb_component_id: "",
5155
5272
  route: [
5156
5273
  {
5157
- x: length30.parse(parameters.p) / 2,
5158
- y: length30.parse(parameters.h) / 2
5274
+ x: length31.parse(parameters.p) / 2,
5275
+ y: length31.parse(parameters.h) / 2
5159
5276
  },
5160
5277
  {
5161
- x: -length30.parse(parameters.w) / 2,
5162
- y: length30.parse(parameters.h) / 2
5278
+ x: -length31.parse(parameters.w) / 2,
5279
+ y: length31.parse(parameters.h) / 2
5163
5280
  },
5164
5281
  {
5165
- x: -length30.parse(parameters.w) / 2,
5166
- y: -length30.parse(parameters.h) / 2
5282
+ x: -length31.parse(parameters.w) / 2,
5283
+ y: -length31.parse(parameters.h) / 2
5167
5284
  },
5168
5285
  {
5169
- x: length30.parse(parameters.p) / 2,
5170
- y: -length30.parse(parameters.h) / 2
5286
+ x: length31.parse(parameters.p) / 2,
5287
+ y: -length31.parse(parameters.h) / 2
5171
5288
  }
5172
5289
  ],
5173
5290
  stroke_width: 0.1,
@@ -5206,22 +5323,22 @@ var miniMelfWithoutParsing = (parameters) => {
5206
5323
  };
5207
5324
 
5208
5325
  // src/fn/sod882d.ts
5209
- import { z as z41 } from "zod";
5210
- import { length as length31 } from "circuit-json";
5326
+ import { z as z48 } from "zod";
5327
+ import { length as length32 } from "circuit-json";
5211
5328
  var sod_def11 = base_def.extend({
5212
- fn: z41.string(),
5213
- num_pins: z41.literal(2).default(2),
5214
- w: z41.string().default("1.90mm"),
5215
- h: z41.string().default("1.33mm"),
5216
- pl: z41.string().default("0.5mm"),
5217
- pw: z41.string().default("0.7mm"),
5218
- p: z41.string().default("0.8mm")
5329
+ fn: z48.string(),
5330
+ num_pins: z48.literal(2).default(2),
5331
+ w: z48.string().default("1.90mm"),
5332
+ h: z48.string().default("1.33mm"),
5333
+ pl: z48.string().default("0.5mm"),
5334
+ pw: z48.string().default("0.7mm"),
5335
+ p: z48.string().default("0.8mm")
5219
5336
  });
5220
5337
  var sod882d = (raw_params) => {
5221
5338
  const parameters = sod_def11.parse(raw_params);
5222
5339
  const silkscreenRefText = silkscreenRef(
5223
5340
  0,
5224
- length31.parse(parameters.h) + 0.1,
5341
+ length32.parse(parameters.h) + 0.1,
5225
5342
  0.3
5226
5343
  );
5227
5344
  const silkscreenLine = {
@@ -5230,20 +5347,20 @@ var sod882d = (raw_params) => {
5230
5347
  pcb_component_id: "",
5231
5348
  route: [
5232
5349
  {
5233
- x: length31.parse(parameters.p) / 2 + 0.1,
5234
- y: length31.parse(parameters.h) / 2
5350
+ x: length32.parse(parameters.p) / 2 + 0.1,
5351
+ y: length32.parse(parameters.h) / 2
5235
5352
  },
5236
5353
  {
5237
- x: -length31.parse(parameters.w) / 2,
5238
- y: length31.parse(parameters.h) / 2
5354
+ x: -length32.parse(parameters.w) / 2,
5355
+ y: length32.parse(parameters.h) / 2
5239
5356
  },
5240
5357
  {
5241
- x: -length31.parse(parameters.w) / 2,
5242
- y: -length31.parse(parameters.h) / 2
5358
+ x: -length32.parse(parameters.w) / 2,
5359
+ y: -length32.parse(parameters.h) / 2
5243
5360
  },
5244
5361
  {
5245
- x: length31.parse(parameters.p) / 2 + 0.1,
5246
- y: -length31.parse(parameters.h) / 2
5362
+ x: length32.parse(parameters.p) / 2 + 0.1,
5363
+ y: -length32.parse(parameters.h) / 2
5247
5364
  }
5248
5365
  ],
5249
5366
  stroke_width: 0.1,
@@ -5286,22 +5403,22 @@ var sodWithoutParsing12 = (parameters) => {
5286
5403
  };
5287
5404
 
5288
5405
  // src/fn/melf.ts
5289
- import { z as z42 } from "zod";
5290
- import { length as length32 } from "circuit-json";
5406
+ import { z as z49 } from "zod";
5407
+ import { length as length33 } from "circuit-json";
5291
5408
  var melf_def = base_def.extend({
5292
- fn: z42.string(),
5293
- num_pins: z42.literal(2).default(2),
5294
- w: z42.string().default("7.0mm"),
5295
- h: z42.string().default("3.35mm"),
5296
- pl: z42.string().default("1.50mm"),
5297
- pw: z42.string().default("2.70mm"),
5298
- p: z42.string().default("4.8mm")
5409
+ fn: z49.string(),
5410
+ num_pins: z49.literal(2).default(2),
5411
+ w: z49.string().default("7.0mm"),
5412
+ h: z49.string().default("3.35mm"),
5413
+ pl: z49.string().default("1.50mm"),
5414
+ pw: z49.string().default("2.70mm"),
5415
+ p: z49.string().default("4.8mm")
5299
5416
  });
5300
5417
  var melf = (raw_params) => {
5301
5418
  const parameters = melf_def.parse(raw_params);
5302
5419
  const silkscreenRefText = silkscreenRef(
5303
5420
  0,
5304
- length32.parse(parameters.h),
5421
+ length33.parse(parameters.h),
5305
5422
  0.3
5306
5423
  );
5307
5424
  const silkscreenLine = {
@@ -5310,20 +5427,20 @@ var melf = (raw_params) => {
5310
5427
  pcb_component_id: "",
5311
5428
  route: [
5312
5429
  {
5313
- x: length32.parse(parameters.p) / 2,
5314
- y: length32.parse(parameters.h) / 2
5430
+ x: length33.parse(parameters.p) / 2,
5431
+ y: length33.parse(parameters.h) / 2
5315
5432
  },
5316
5433
  {
5317
- x: -length32.parse(parameters.w) / 2,
5318
- y: length32.parse(parameters.h) / 2
5434
+ x: -length33.parse(parameters.w) / 2,
5435
+ y: length33.parse(parameters.h) / 2
5319
5436
  },
5320
5437
  {
5321
- x: -length32.parse(parameters.w) / 2,
5322
- y: -length32.parse(parameters.h) / 2
5438
+ x: -length33.parse(parameters.w) / 2,
5439
+ y: -length33.parse(parameters.h) / 2
5323
5440
  },
5324
5441
  {
5325
- x: length32.parse(parameters.p) / 2,
5326
- y: -length32.parse(parameters.h) / 2
5442
+ x: length33.parse(parameters.p) / 2,
5443
+ y: -length33.parse(parameters.h) / 2
5327
5444
  }
5328
5445
  ],
5329
5446
  stroke_width: 0.1,
@@ -5366,22 +5483,22 @@ var melfWithoutParsing = (parameters) => {
5366
5483
  };
5367
5484
 
5368
5485
  // src/fn/micromelf.ts
5369
- import { z as z43 } from "zod";
5370
- import { length as length33 } from "circuit-json";
5486
+ import { z as z50 } from "zod";
5487
+ import { length as length34 } from "circuit-json";
5371
5488
  var micromelf_def = base_def.extend({
5372
- fn: z43.string(),
5373
- num_pins: z43.literal(2).default(2),
5374
- w: z43.string().default("3.0mm"),
5375
- h: z43.string().default("1.80mm"),
5376
- pl: z43.string().default("0.80mm"),
5377
- pw: z43.string().default("1.20mm"),
5378
- p: z43.string().default("1.6mm")
5489
+ fn: z50.string(),
5490
+ num_pins: z50.literal(2).default(2),
5491
+ w: z50.string().default("3.0mm"),
5492
+ h: z50.string().default("1.80mm"),
5493
+ pl: z50.string().default("0.80mm"),
5494
+ pw: z50.string().default("1.20mm"),
5495
+ p: z50.string().default("1.6mm")
5379
5496
  });
5380
5497
  var micromelf = (raw_params) => {
5381
5498
  const parameters = micromelf_def.parse(raw_params);
5382
5499
  const silkscreenRefText = silkscreenRef(
5383
5500
  0,
5384
- length33.parse(parameters.h),
5501
+ length34.parse(parameters.h),
5385
5502
  0.3
5386
5503
  );
5387
5504
  const silkscreenLine = {
@@ -5390,20 +5507,20 @@ var micromelf = (raw_params) => {
5390
5507
  pcb_component_id: "",
5391
5508
  route: [
5392
5509
  {
5393
- x: length33.parse(parameters.p) / 2,
5394
- y: length33.parse(parameters.h) / 2
5510
+ x: length34.parse(parameters.p) / 2,
5511
+ y: length34.parse(parameters.h) / 2
5395
5512
  },
5396
5513
  {
5397
- x: -length33.parse(parameters.w) / 2 - 0.1,
5398
- y: length33.parse(parameters.h) / 2
5514
+ x: -length34.parse(parameters.w) / 2 - 0.1,
5515
+ y: length34.parse(parameters.h) / 2
5399
5516
  },
5400
5517
  {
5401
- x: -length33.parse(parameters.w) / 2 - 0.1,
5402
- y: -length33.parse(parameters.h) / 2
5518
+ x: -length34.parse(parameters.w) / 2 - 0.1,
5519
+ y: -length34.parse(parameters.h) / 2
5403
5520
  },
5404
5521
  {
5405
- x: length33.parse(parameters.p) / 2,
5406
- y: -length33.parse(parameters.h) / 2
5522
+ x: length34.parse(parameters.p) / 2,
5523
+ y: -length34.parse(parameters.h) / 2
5407
5524
  }
5408
5525
  ],
5409
5526
  stroke_width: 0.1,
@@ -5446,22 +5563,22 @@ var microMelfWithoutParsing = (parameters) => {
5446
5563
  };
5447
5564
 
5448
5565
  // src/fn/sma.ts
5449
- import { z as z44 } from "zod";
5450
- import { length as length34 } from "circuit-json";
5566
+ import { z as z51 } from "zod";
5567
+ import { length as length35 } from "circuit-json";
5451
5568
  var sma_def = base_def.extend({
5452
- fn: z44.string(),
5453
- num_pins: z44.literal(2).default(2),
5454
- w: z44.string().default("7.10mm"),
5455
- h: z44.string().default("3.40mm"),
5456
- pl: z44.string().default("2.45mm"),
5457
- pw: z44.string().default("1.80mm"),
5458
- p: z44.string().default("4.05mm")
5569
+ fn: z51.string(),
5570
+ num_pins: z51.literal(2).default(2),
5571
+ w: z51.string().default("7.10mm"),
5572
+ h: z51.string().default("3.40mm"),
5573
+ pl: z51.string().default("2.45mm"),
5574
+ pw: z51.string().default("1.80mm"),
5575
+ p: z51.string().default("4.05mm")
5459
5576
  });
5460
5577
  var sma = (raw_params) => {
5461
5578
  const parameters = sma_def.parse(raw_params);
5462
5579
  const silkscreenRefText = silkscreenRef(
5463
5580
  0,
5464
- length34.parse(parameters.h) / 2 + 0.5,
5581
+ length35.parse(parameters.h) / 2 + 0.5,
5465
5582
  0.3
5466
5583
  );
5467
5584
  const silkscreenLine = {
@@ -5470,20 +5587,20 @@ var sma = (raw_params) => {
5470
5587
  pcb_component_id: "",
5471
5588
  route: [
5472
5589
  {
5473
- x: length34.parse(parameters.p) / 2,
5474
- y: length34.parse(parameters.h) / 2
5590
+ x: length35.parse(parameters.p) / 2,
5591
+ y: length35.parse(parameters.h) / 2
5475
5592
  },
5476
5593
  {
5477
- x: -length34.parse(parameters.w) / 2 - 0.5,
5478
- y: length34.parse(parameters.h) / 2
5594
+ x: -length35.parse(parameters.w) / 2 - 0.5,
5595
+ y: length35.parse(parameters.h) / 2
5479
5596
  },
5480
5597
  {
5481
- x: -length34.parse(parameters.w) / 2 - 0.5,
5482
- y: -length34.parse(parameters.h) / 2
5598
+ x: -length35.parse(parameters.w) / 2 - 0.5,
5599
+ y: -length35.parse(parameters.h) / 2
5483
5600
  },
5484
5601
  {
5485
- x: length34.parse(parameters.p) / 2,
5486
- y: -length34.parse(parameters.h) / 2
5602
+ x: length35.parse(parameters.p) / 2,
5603
+ y: -length35.parse(parameters.h) / 2
5487
5604
  }
5488
5605
  ],
5489
5606
  stroke_width: 0.1,
@@ -5525,22 +5642,22 @@ var smaWithoutParsing = (parameters) => {
5525
5642
  };
5526
5643
 
5527
5644
  // src/fn/smf.ts
5528
- import { z as z45 } from "zod";
5529
- import { length as length35 } from "circuit-json";
5645
+ import { z as z52 } from "zod";
5646
+ import { length as length36 } from "circuit-json";
5530
5647
  var smf_def = base_def.extend({
5531
- fn: z45.string(),
5532
- num_pins: z45.literal(2).default(2),
5533
- w: z45.string().default("4.80mm"),
5534
- h: z45.string().default("2.10mm"),
5535
- pl: z45.string().default("1.30mm"),
5536
- pw: z45.string().default("1.40mm"),
5537
- p: z45.string().default("2.9mm")
5648
+ fn: z52.string(),
5649
+ num_pins: z52.literal(2).default(2),
5650
+ w: z52.string().default("4.80mm"),
5651
+ h: z52.string().default("2.10mm"),
5652
+ pl: z52.string().default("1.30mm"),
5653
+ pw: z52.string().default("1.40mm"),
5654
+ p: z52.string().default("2.9mm")
5538
5655
  });
5539
5656
  var smf = (raw_params) => {
5540
5657
  const parameters = smf_def.parse(raw_params);
5541
5658
  const silkscreenRefText = silkscreenRef(
5542
5659
  0,
5543
- length35.parse(parameters.h) - 0.5,
5660
+ length36.parse(parameters.h) - 0.5,
5544
5661
  0.3
5545
5662
  );
5546
5663
  const silkscreenLine = {
@@ -5549,20 +5666,20 @@ var smf = (raw_params) => {
5549
5666
  pcb_component_id: "",
5550
5667
  route: [
5551
5668
  {
5552
- x: length35.parse(parameters.p) / 2,
5553
- y: length35.parse(parameters.h) / 2
5669
+ x: length36.parse(parameters.p) / 2,
5670
+ y: length36.parse(parameters.h) / 2
5554
5671
  },
5555
5672
  {
5556
- x: -length35.parse(parameters.w) / 2,
5557
- y: length35.parse(parameters.h) / 2
5673
+ x: -length36.parse(parameters.w) / 2,
5674
+ y: length36.parse(parameters.h) / 2
5558
5675
  },
5559
5676
  {
5560
- x: -length35.parse(parameters.w) / 2,
5561
- y: -length35.parse(parameters.h) / 2
5677
+ x: -length36.parse(parameters.w) / 2,
5678
+ y: -length36.parse(parameters.h) / 2
5562
5679
  },
5563
5680
  {
5564
- x: length35.parse(parameters.p) / 2,
5565
- y: -length35.parse(parameters.h) / 2
5681
+ x: length36.parse(parameters.p) / 2,
5682
+ y: -length36.parse(parameters.h) / 2
5566
5683
  }
5567
5684
  ],
5568
5685
  stroke_width: 0.1,
@@ -5605,22 +5722,22 @@ var smfWithoutParsing = (parameters) => {
5605
5722
  };
5606
5723
 
5607
5724
  // src/fn/smb.ts
5608
- import { z as z46 } from "zod";
5609
- import { length as length36 } from "circuit-json";
5725
+ import { z as z53 } from "zod";
5726
+ import { length as length37 } from "circuit-json";
5610
5727
  var smb_def = base_def.extend({
5611
- fn: z46.string(),
5612
- num_pins: z46.literal(2).default(2),
5613
- w: z46.string().default("7.30mm"),
5614
- h: z46.string().default("4.40mm"),
5615
- pl: z46.string().default("2.50mm"),
5616
- pw: z46.string().default("2.30mm"),
5617
- p: z46.string().default("4.30mm")
5728
+ fn: z53.string(),
5729
+ num_pins: z53.literal(2).default(2),
5730
+ w: z53.string().default("7.30mm"),
5731
+ h: z53.string().default("4.40mm"),
5732
+ pl: z53.string().default("2.50mm"),
5733
+ pw: z53.string().default("2.30mm"),
5734
+ p: z53.string().default("4.30mm")
5618
5735
  });
5619
5736
  var smb = (raw_params) => {
5620
5737
  const parameters = smb_def.parse(raw_params);
5621
5738
  const silkscreenRefText = silkscreenRef(
5622
5739
  0,
5623
- length36.parse(parameters.h) / 2 + 0.5,
5740
+ length37.parse(parameters.h) / 2 + 0.5,
5624
5741
  0.3
5625
5742
  );
5626
5743
  const silkscreenLine = {
@@ -5629,20 +5746,20 @@ var smb = (raw_params) => {
5629
5746
  pcb_component_id: "",
5630
5747
  route: [
5631
5748
  {
5632
- x: length36.parse(parameters.p) / 2,
5633
- y: length36.parse(parameters.h) / 2
5749
+ x: length37.parse(parameters.p) / 2,
5750
+ y: length37.parse(parameters.h) / 2
5634
5751
  },
5635
5752
  {
5636
- x: -length36.parse(parameters.w) / 2 - 0.1,
5637
- y: length36.parse(parameters.h) / 2
5753
+ x: -length37.parse(parameters.w) / 2 - 0.1,
5754
+ y: length37.parse(parameters.h) / 2
5638
5755
  },
5639
5756
  {
5640
- x: -length36.parse(parameters.w) / 2 - 0.1,
5641
- y: -length36.parse(parameters.h) / 2
5757
+ x: -length37.parse(parameters.w) / 2 - 0.1,
5758
+ y: -length37.parse(parameters.h) / 2
5642
5759
  },
5643
5760
  {
5644
- x: length36.parse(parameters.p) / 2,
5645
- y: -length36.parse(parameters.h) / 2
5761
+ x: length37.parse(parameters.p) / 2,
5762
+ y: -length37.parse(parameters.h) / 2
5646
5763
  }
5647
5764
  ],
5648
5765
  stroke_width: 0.1,
@@ -5685,16 +5802,16 @@ var smbWithoutParsing = (parameters) => {
5685
5802
  };
5686
5803
 
5687
5804
  // src/fn/smc.ts
5688
- import { z as z47 } from "zod";
5689
- import { length as length37 } from "circuit-json";
5805
+ import { z as z54 } from "zod";
5806
+ import { length as length38 } from "circuit-json";
5690
5807
  var smc_def = base_def.extend({
5691
- fn: z47.string(),
5692
- num_pins: z47.literal(2).default(2),
5693
- w: z47.string().default("10.70mm"),
5694
- h: z47.string().default("6.60mm"),
5695
- pl: z47.string().default("3.30mm"),
5696
- pw: z47.string().default("2.50mm"),
5697
- p: z47.string().default("6.80mm")
5808
+ fn: z54.string(),
5809
+ num_pins: z54.literal(2).default(2),
5810
+ w: z54.string().default("10.70mm"),
5811
+ h: z54.string().default("6.60mm"),
5812
+ pl: z54.string().default("3.30mm"),
5813
+ pw: z54.string().default("2.50mm"),
5814
+ p: z54.string().default("6.80mm")
5698
5815
  });
5699
5816
  var smc = (raw_params) => {
5700
5817
  const parameters = smc_def.parse(raw_params);
@@ -5705,20 +5822,20 @@ var smc = (raw_params) => {
5705
5822
  pcb_component_id: "",
5706
5823
  route: [
5707
5824
  {
5708
- x: length37.parse(parameters.p) / 2,
5709
- y: length37.parse(parameters.h) / 2 - 0.8
5825
+ x: length38.parse(parameters.p) / 2,
5826
+ y: length38.parse(parameters.h) / 2 - 0.8
5710
5827
  },
5711
5828
  {
5712
- x: -length37.parse(parameters.w) / 2 - 0.8,
5713
- y: length37.parse(parameters.h) / 2 - 0.8
5829
+ x: -length38.parse(parameters.w) / 2 - 0.8,
5830
+ y: length38.parse(parameters.h) / 2 - 0.8
5714
5831
  },
5715
5832
  {
5716
- x: -length37.parse(parameters.w) / 2 - 0.8,
5717
- y: -length37.parse(parameters.h) / 2 + 0.8
5833
+ x: -length38.parse(parameters.w) / 2 - 0.8,
5834
+ y: -length38.parse(parameters.h) / 2 + 0.8
5718
5835
  },
5719
5836
  {
5720
- x: length37.parse(parameters.p) / 2,
5721
- y: -length37.parse(parameters.h) / 2 + 0.8
5837
+ x: length38.parse(parameters.p) / 2,
5838
+ y: -length38.parse(parameters.h) / 2 + 0.8
5722
5839
  }
5723
5840
  ],
5724
5841
  stroke_width: 0.1,
@@ -5760,16 +5877,16 @@ var smcWithoutParsing = (parameters) => {
5760
5877
  };
5761
5878
 
5762
5879
  // src/fn/sot223.ts
5763
- import { z as z48 } from "zod";
5880
+ import { z as z55 } from "zod";
5764
5881
  var sot223_def = base_def.extend({
5765
- fn: z48.string(),
5766
- num_pins: z48.number().default(4),
5767
- w: z48.string().default("8.50mm"),
5768
- h: z48.string().default("6.90mm"),
5769
- pl: z48.string().default("2mm"),
5770
- pw: z48.string().default("1.5mm"),
5771
- p: z48.string().default("2.30mm"),
5772
- string: z48.string().optional()
5882
+ fn: z55.string(),
5883
+ num_pins: z55.number().default(4),
5884
+ w: z55.string().default("8.50mm"),
5885
+ h: z55.string().default("6.90mm"),
5886
+ pl: z55.string().default("2mm"),
5887
+ pw: z55.string().default("1.5mm"),
5888
+ p: z55.string().default("2.30mm"),
5889
+ string: z55.string().optional()
5773
5890
  });
5774
5891
  var sot223 = (raw_params) => {
5775
5892
  const match = raw_params.string?.match(/^sot223_(\d+)/);
@@ -6015,16 +6132,16 @@ var sot223_6 = (parameters) => {
6015
6132
  };
6016
6133
 
6017
6134
  // src/fn/sot23w.ts
6018
- import { z as z49 } from "zod";
6135
+ import { z as z56 } from "zod";
6019
6136
  var sot23w_def = base_def.extend({
6020
- fn: z49.string(),
6021
- num_pins: z49.number().default(3),
6022
- w: z49.string().default("3.40mm"),
6023
- h: z49.string().default("3.30mm"),
6024
- pl: z49.string().default("1mm"),
6025
- pw: z49.string().default("0.7mm"),
6026
- p: z49.string().default("1.2mm"),
6027
- string: z49.string().optional()
6137
+ fn: z56.string(),
6138
+ num_pins: z56.number().default(3),
6139
+ w: z56.string().default("3.40mm"),
6140
+ h: z56.string().default("3.30mm"),
6141
+ pl: z56.string().default("1mm"),
6142
+ pw: z56.string().default("0.7mm"),
6143
+ p: z56.string().default("1.2mm"),
6144
+ string: z56.string().optional()
6028
6145
  });
6029
6146
  var sot23w = (raw_params) => {
6030
6147
  const match = raw_params.string?.match(/^sot23w_(\d+)/);
@@ -6112,16 +6229,16 @@ var sot23w_3 = (parameters) => {
6112
6229
  };
6113
6230
 
6114
6231
  // src/fn/to92s.ts
6115
- import { z as z50 } from "zod";
6232
+ import { z as z57 } from "zod";
6116
6233
  var to92s_def = base_def.extend({
6117
- fn: z50.string(),
6118
- num_pins: z50.union([z50.literal(3), z50.literal(2)]).default(3),
6119
- p: z50.string().default("1.27mm"),
6120
- id: z50.string().default("0.72mm"),
6121
- od: z50.string().default("0.95mm"),
6122
- w: z50.string().default("2.5mm"),
6123
- h: z50.string().default("4.2mm"),
6124
- string: z50.string().optional()
6234
+ fn: z57.string(),
6235
+ num_pins: z57.union([z57.literal(3), z57.literal(2)]).default(3),
6236
+ p: z57.string().default("1.27mm"),
6237
+ id: z57.string().default("0.72mm"),
6238
+ od: z57.string().default("0.95mm"),
6239
+ w: z57.string().default("2.5mm"),
6240
+ h: z57.string().default("4.2mm"),
6241
+ string: z57.string().optional()
6125
6242
  });
6126
6243
  var to92s_3 = (parameters) => {
6127
6244
  const { p, id, od, w, h } = parameters;
@@ -6188,18 +6305,18 @@ var to92s = (raw_params) => {
6188
6305
 
6189
6306
  // src/fn/jst.ts
6190
6307
  import {
6191
- length as length38
6308
+ length as length39
6192
6309
  } from "circuit-json";
6193
- import { z as z51 } from "zod";
6310
+ import { z as z58 } from "zod";
6194
6311
  var jst_def = base_def.extend({
6195
- fn: z51.string(),
6196
- p: length38.optional(),
6197
- id: length38.optional(),
6198
- pw: length38.optional(),
6199
- pl: length38.optional(),
6200
- w: length38.optional(),
6201
- h: length38.optional(),
6202
- sh: z51.union([z51.boolean(), z51.string(), z51.number()]).optional().transform((v) => {
6312
+ fn: z58.string(),
6313
+ p: length39.optional(),
6314
+ id: length39.optional(),
6315
+ pw: length39.optional(),
6316
+ pl: length39.optional(),
6317
+ w: length39.optional(),
6318
+ h: length39.optional(),
6319
+ sh: z58.union([z58.boolean(), z58.string(), z58.number()]).optional().transform((v) => {
6203
6320
  if (typeof v === "string") {
6204
6321
  const n = Number(v);
6205
6322
  return Number.isNaN(n) ? true : n;
@@ -6208,26 +6325,26 @@ var jst_def = base_def.extend({
6208
6325
  }).describe(
6209
6326
  'JST SH (Surface-mount) connector family. SH stands for "Super High-density".'
6210
6327
  ),
6211
- ph: z51.boolean().optional().describe(
6328
+ ph: z58.boolean().optional().describe(
6212
6329
  'JST PH (Through-hole) connector family. PH stands for "Pin Header".'
6213
6330
  ),
6214
- string: z51.string().optional()
6331
+ string: z58.string().optional()
6215
6332
  });
6216
6333
  var variantDefaults = {
6217
6334
  ph: {
6218
- p: length38.parse("2.2mm"),
6219
- id: length38.parse("0.70mm"),
6220
- pw: length38.parse("1.20mm"),
6221
- pl: length38.parse("1.20mm"),
6222
- w: length38.parse("6mm"),
6223
- h: length38.parse("5mm")
6335
+ p: length39.parse("2.2mm"),
6336
+ id: length39.parse("0.70mm"),
6337
+ pw: length39.parse("1.20mm"),
6338
+ pl: length39.parse("1.20mm"),
6339
+ w: length39.parse("6mm"),
6340
+ h: length39.parse("5mm")
6224
6341
  },
6225
6342
  sh: {
6226
- p: length38.parse("1mm"),
6227
- pw: length38.parse("0.6mm"),
6228
- pl: length38.parse("1.55mm"),
6229
- w: length38.parse("5.8mm"),
6230
- h: length38.parse("7.8mm")
6343
+ p: length39.parse("1mm"),
6344
+ pw: length39.parse("0.6mm"),
6345
+ pl: length39.parse("1.55mm"),
6346
+ w: length39.parse("5.8mm"),
6347
+ h: length39.parse("7.8mm")
6231
6348
  }
6232
6349
  };
6233
6350
  function getVariant(params) {
@@ -6326,22 +6443,22 @@ var jst = (raw_params) => {
6326
6443
  };
6327
6444
 
6328
6445
  // src/fn/sod110.ts
6329
- import { z as z52 } from "zod";
6330
- import { length as length39 } from "circuit-json";
6446
+ import { z as z59 } from "zod";
6447
+ import { length as length40 } from "circuit-json";
6331
6448
  var sod_def12 = base_def.extend({
6332
- fn: z52.string(),
6333
- num_pins: z52.literal(2).default(2),
6334
- w: z52.string().default("3.30mm"),
6335
- h: z52.string().default("1.70mm"),
6336
- pl: z52.string().default("0.80mm"),
6337
- pw: z52.string().default("1mm"),
6338
- p: z52.string().default("1.90mm")
6449
+ fn: z59.string(),
6450
+ num_pins: z59.literal(2).default(2),
6451
+ w: z59.string().default("3.30mm"),
6452
+ h: z59.string().default("1.70mm"),
6453
+ pl: z59.string().default("0.80mm"),
6454
+ pw: z59.string().default("1mm"),
6455
+ p: z59.string().default("1.90mm")
6339
6456
  });
6340
6457
  var sod110 = (raw_params) => {
6341
6458
  const parameters = sod_def12.parse(raw_params);
6342
6459
  const silkscreenRefText = silkscreenRef(
6343
6460
  0,
6344
- length39.parse(parameters.h) / 2 + 0.5,
6461
+ length40.parse(parameters.h) / 2 + 0.5,
6345
6462
  0.3
6346
6463
  );
6347
6464
  const silkscreenLine = {
@@ -6350,20 +6467,20 @@ var sod110 = (raw_params) => {
6350
6467
  pcb_component_id: "",
6351
6468
  route: [
6352
6469
  {
6353
- x: length39.parse(parameters.p) / 2,
6354
- y: length39.parse(parameters.h) / 2
6470
+ x: length40.parse(parameters.p) / 2,
6471
+ y: length40.parse(parameters.h) / 2
6355
6472
  },
6356
6473
  {
6357
- x: -length39.parse(parameters.w) / 2,
6358
- y: length39.parse(parameters.h) / 2
6474
+ x: -length40.parse(parameters.w) / 2,
6475
+ y: length40.parse(parameters.h) / 2
6359
6476
  },
6360
6477
  {
6361
- x: -length39.parse(parameters.w) / 2,
6362
- y: -length39.parse(parameters.h) / 2
6478
+ x: -length40.parse(parameters.w) / 2,
6479
+ y: -length40.parse(parameters.h) / 2
6363
6480
  },
6364
6481
  {
6365
- x: length39.parse(parameters.p) / 2,
6366
- y: -length39.parse(parameters.h) / 2
6482
+ x: length40.parse(parameters.p) / 2,
6483
+ y: -length40.parse(parameters.h) / 2
6367
6484
  }
6368
6485
  ],
6369
6486
  stroke_width: 0.1,
@@ -6405,8 +6522,8 @@ var sodWithoutParsing13 = (parameters) => {
6405
6522
  };
6406
6523
 
6407
6524
  // src/fn/vssop.ts
6408
- import { z as z53 } from "zod";
6409
- import { length as length40 } from "circuit-json";
6525
+ import { z as z60 } from "zod";
6526
+ import { length as length41 } from "circuit-json";
6410
6527
  var getDefaultValues = (num_pins) => {
6411
6528
  switch (num_pins) {
6412
6529
  case 8:
@@ -6436,23 +6553,23 @@ var getDefaultValues = (num_pins) => {
6436
6553
  }
6437
6554
  };
6438
6555
  var vssop_def = base_def.extend({
6439
- fn: z53.string(),
6440
- num_pins: z53.union([z53.literal(8), z53.literal(10)]).default(8),
6441
- w: z53.string().optional(),
6442
- h: z53.string().optional(),
6443
- p: z53.string().optional(),
6444
- pl: z53.string().optional(),
6445
- pw: z53.string().optional(),
6446
- string: z53.string().optional()
6556
+ fn: z60.string(),
6557
+ num_pins: z60.union([z60.literal(8), z60.literal(10)]).default(8),
6558
+ w: z60.string().optional(),
6559
+ h: z60.string().optional(),
6560
+ p: z60.string().optional(),
6561
+ pl: z60.string().optional(),
6562
+ pw: z60.string().optional(),
6563
+ string: z60.string().optional()
6447
6564
  });
6448
6565
  var vssop = (raw_params) => {
6449
6566
  const parameters = vssop_def.parse(raw_params);
6450
6567
  const defaults = getDefaultValues(parameters.num_pins);
6451
- const w = length40.parse(parameters.w || defaults.w);
6452
- const h = length40.parse(parameters.h || defaults.h);
6453
- const p = length40.parse(parameters.p || defaults.p);
6454
- const pl = length40.parse(parameters.pl || defaults.pl);
6455
- const pw = length40.parse(parameters.pw || defaults.pw);
6568
+ const w = length41.parse(parameters.w || defaults.w);
6569
+ const h = length41.parse(parameters.h || defaults.h);
6570
+ const p = length41.parse(parameters.p || defaults.p);
6571
+ const pl = length41.parse(parameters.pl || defaults.pl);
6572
+ const pw = length41.parse(parameters.pw || defaults.pw);
6456
6573
  const pads = [];
6457
6574
  const half = parameters.num_pins / 2;
6458
6575
  for (let i = 0; i < parameters.num_pins; i++) {
@@ -6529,14 +6646,14 @@ var getVssopPadCoord = (pinCount, pn, w, p) => {
6529
6646
  const col = pn <= half ? -1 : 1;
6530
6647
  const row = (half - 1) / 2 - rowIndex;
6531
6648
  return {
6532
- x: col * length40.parse(pinCount === 8 ? "1.8mm" : "2.2mm"),
6649
+ x: col * length41.parse(pinCount === 8 ? "1.8mm" : "2.2mm"),
6533
6650
  y: row * p
6534
6651
  };
6535
6652
  };
6536
6653
 
6537
6654
  // src/fn/msop.ts
6538
- import { z as z54 } from "zod";
6539
- import { length as length41 } from "circuit-json";
6655
+ import { z as z61 } from "zod";
6656
+ import { length as length42 } from "circuit-json";
6540
6657
  var getDefaultValues2 = (num_pins) => {
6541
6658
  switch (num_pins) {
6542
6659
  case 10:
@@ -6574,14 +6691,14 @@ var getDefaultValues2 = (num_pins) => {
6574
6691
  }
6575
6692
  };
6576
6693
  var msop_def = base_def.extend({
6577
- fn: z54.string(),
6578
- num_pins: z54.union([z54.literal(8), z54.literal(10), z54.literal(12), z54.literal(16)]).default(8),
6579
- w: z54.string().optional(),
6580
- h: z54.string().optional(),
6581
- p: z54.string().optional(),
6582
- pl: z54.string().optional(),
6583
- pw: z54.string().optional(),
6584
- string: z54.string().optional()
6694
+ fn: z61.string(),
6695
+ num_pins: z61.union([z61.literal(8), z61.literal(10), z61.literal(12), z61.literal(16)]).default(8),
6696
+ w: z61.string().optional(),
6697
+ h: z61.string().optional(),
6698
+ p: z61.string().optional(),
6699
+ pl: z61.string().optional(),
6700
+ pw: z61.string().optional(),
6701
+ string: z61.string().optional()
6585
6702
  });
6586
6703
  var getMsopCoords = (pinCount, pn, w, p) => {
6587
6704
  const half = pinCount / 2;
@@ -6589,18 +6706,18 @@ var getMsopCoords = (pinCount, pn, w, p) => {
6589
6706
  const col = pn <= half ? -1 : 1;
6590
6707
  const row = (half - 1) / 2 - rowIndex;
6591
6708
  return {
6592
- x: col * length41.parse("2mm"),
6709
+ x: col * length42.parse("2mm"),
6593
6710
  y: row * p
6594
6711
  };
6595
6712
  };
6596
6713
  var msop = (raw_params) => {
6597
6714
  const parameters = msop_def.parse(raw_params);
6598
6715
  const defaults = getDefaultValues2(parameters.num_pins);
6599
- const w = length41.parse(parameters.w || defaults.w);
6600
- const h = length41.parse(parameters.h || defaults.h);
6601
- const p = length41.parse(parameters.p || defaults.p);
6602
- const pl = length41.parse(parameters.pl || defaults.pl);
6603
- const pw = length41.parse(parameters.pw || defaults.pw);
6716
+ const w = length42.parse(parameters.w || defaults.w);
6717
+ const h = length42.parse(parameters.h || defaults.h);
6718
+ const p = length42.parse(parameters.p || defaults.p);
6719
+ const pl = length42.parse(parameters.pl || defaults.pl);
6720
+ const pw = length42.parse(parameters.pw || defaults.pw);
6604
6721
  const pads = [];
6605
6722
  for (let i = 0; i < parameters.num_pins; i++) {
6606
6723
  const { x, y } = getMsopCoords(parameters.num_pins, i + 1, w, p);
@@ -6671,22 +6788,22 @@ var msop = (raw_params) => {
6671
6788
  };
6672
6789
 
6673
6790
  // src/fn/sod323w.ts
6674
- import { z as z55 } from "zod";
6675
- import { length as length42 } from "circuit-json";
6791
+ import { z as z62 } from "zod";
6792
+ import { length as length43 } from "circuit-json";
6676
6793
  var sod323w_def = base_def.extend({
6677
- fn: z55.string(),
6678
- num_pins: z55.literal(2).default(2),
6679
- w: z55.string().default("3.8mm"),
6680
- h: z55.string().default("1.65mm"),
6681
- pl: z55.string().default("1.2mm"),
6682
- pw: z55.string().default("1.2mm"),
6683
- pad_spacing: z55.string().default("2.6mm")
6794
+ fn: z62.string(),
6795
+ num_pins: z62.literal(2).default(2),
6796
+ w: z62.string().default("3.8mm"),
6797
+ h: z62.string().default("1.65mm"),
6798
+ pl: z62.string().default("1.2mm"),
6799
+ pw: z62.string().default("1.2mm"),
6800
+ pad_spacing: z62.string().default("2.6mm")
6684
6801
  });
6685
6802
  var sod323w = (raw_params) => {
6686
6803
  const parameters = sod323w_def.parse(raw_params);
6687
6804
  const silkscreenRefText = silkscreenRef(
6688
6805
  0,
6689
- length42.parse(parameters.h),
6806
+ length43.parse(parameters.h),
6690
6807
  0.3
6691
6808
  );
6692
6809
  const silkscreenLine = {
@@ -6695,20 +6812,20 @@ var sod323w = (raw_params) => {
6695
6812
  pcb_component_id: "",
6696
6813
  route: [
6697
6814
  {
6698
- x: length42.parse(parameters.pad_spacing) / 2,
6699
- y: length42.parse(parameters.h) / 2
6815
+ x: length43.parse(parameters.pad_spacing) / 2,
6816
+ y: length43.parse(parameters.h) / 2
6700
6817
  },
6701
6818
  {
6702
- x: -length42.parse(parameters.w) / 2 - 0.2,
6703
- y: length42.parse(parameters.h) / 2
6819
+ x: -length43.parse(parameters.w) / 2 - 0.2,
6820
+ y: length43.parse(parameters.h) / 2
6704
6821
  },
6705
6822
  {
6706
- x: -length42.parse(parameters.w) / 2 - 0.2,
6707
- y: -length42.parse(parameters.h) / 2
6823
+ x: -length43.parse(parameters.w) / 2 - 0.2,
6824
+ y: -length43.parse(parameters.h) / 2
6708
6825
  },
6709
6826
  {
6710
- x: length42.parse(parameters.pad_spacing) / 2,
6711
- y: -length42.parse(parameters.h) / 2
6827
+ x: length43.parse(parameters.pad_spacing) / 2,
6828
+ y: -length43.parse(parameters.h) / 2
6712
6829
  }
6713
6830
  ],
6714
6831
  stroke_width: 0.1,
@@ -6751,22 +6868,22 @@ var sodWithoutParsing14 = (parameters) => {
6751
6868
  };
6752
6869
 
6753
6870
  // src/fn/sod323fl.ts
6754
- import { z as z56 } from "zod";
6755
- import { length as length43 } from "circuit-json";
6871
+ import { z as z63 } from "zod";
6872
+ import { length as length44 } from "circuit-json";
6756
6873
  var sod323FL_def = base_def.extend({
6757
- fn: z56.string(),
6758
- num_pins: z56.literal(2).default(2),
6759
- w: z56.string().default("3.20mm"),
6760
- h: z56.string().default("1.65mm"),
6761
- pl: z56.string().default("0.8mm"),
6762
- pw: z56.string().default("0.9mm"),
6763
- pad_spacing: z56.string().default("2.1mm")
6874
+ fn: z63.string(),
6875
+ num_pins: z63.literal(2).default(2),
6876
+ w: z63.string().default("3.20mm"),
6877
+ h: z63.string().default("1.65mm"),
6878
+ pl: z63.string().default("0.8mm"),
6879
+ pw: z63.string().default("0.9mm"),
6880
+ pad_spacing: z63.string().default("2.1mm")
6764
6881
  });
6765
6882
  var sod323fl = (raw_params) => {
6766
6883
  const parameters = sod323FL_def.parse(raw_params);
6767
6884
  const silkscreenRefText = silkscreenRef(
6768
6885
  0,
6769
- length43.parse(parameters.h),
6886
+ length44.parse(parameters.h),
6770
6887
  0.3
6771
6888
  );
6772
6889
  const silkscreenLine = {
@@ -6775,20 +6892,20 @@ var sod323fl = (raw_params) => {
6775
6892
  pcb_component_id: "",
6776
6893
  route: [
6777
6894
  {
6778
- x: length43.parse(parameters.pad_spacing) / 2,
6779
- y: length43.parse(parameters.h) / 2
6895
+ x: length44.parse(parameters.pad_spacing) / 2,
6896
+ y: length44.parse(parameters.h) / 2
6780
6897
  },
6781
6898
  {
6782
- x: -length43.parse(parameters.w) / 2 - 0.2,
6783
- y: length43.parse(parameters.h) / 2
6899
+ x: -length44.parse(parameters.w) / 2 - 0.2,
6900
+ y: length44.parse(parameters.h) / 2
6784
6901
  },
6785
6902
  {
6786
- x: -length43.parse(parameters.w) / 2 - 0.2,
6787
- y: -length43.parse(parameters.h) / 2
6903
+ x: -length44.parse(parameters.w) / 2 - 0.2,
6904
+ y: -length44.parse(parameters.h) / 2
6788
6905
  },
6789
6906
  {
6790
- x: length43.parse(parameters.pad_spacing) / 2,
6791
- y: -length43.parse(parameters.h) / 2
6907
+ x: length44.parse(parameters.pad_spacing) / 2,
6908
+ y: -length44.parse(parameters.h) / 2
6792
6909
  }
6793
6910
  ],
6794
6911
  stroke_width: 0.1,
@@ -6831,20 +6948,20 @@ var sodWithoutParsing15 = (parameters) => {
6831
6948
  };
6832
6949
 
6833
6950
  // src/fn/son.ts
6834
- import { z as z57 } from "zod";
6835
- import { length as length44 } from "circuit-json";
6951
+ import { z as z64 } from "zod";
6952
+ import { length as length45 } from "circuit-json";
6836
6953
  var son_def = base_def.extend({
6837
- fn: z57.string(),
6838
- num_pins: z57.union([z57.literal(6), z57.literal(8)]).default(8),
6839
- w: z57.string().default("3mm"),
6840
- h: z57.string().default("3mm"),
6841
- p: z57.string().default("0.5mm"),
6842
- pl: z57.string().default("0.52mm"),
6843
- pw: z57.string().default("0.35mm"),
6844
- epw: z57.string().default("1.40mm"),
6845
- eph: z57.string().default("1.60mm"),
6846
- string: z57.string().optional(),
6847
- ep: z57.boolean().default(false)
6954
+ fn: z64.string(),
6955
+ num_pins: z64.union([z64.literal(6), z64.literal(8)]).default(8),
6956
+ w: z64.string().default("3mm"),
6957
+ h: z64.string().default("3mm"),
6958
+ p: z64.string().default("0.5mm"),
6959
+ pl: z64.string().default("0.52mm"),
6960
+ pw: z64.string().default("0.35mm"),
6961
+ epw: z64.string().default("1.40mm"),
6962
+ eph: z64.string().default("1.60mm"),
6963
+ string: z64.string().optional(),
6964
+ ep: z64.boolean().default(false)
6848
6965
  });
6849
6966
  var son = (raw_params) => {
6850
6967
  if (raw_params.string && raw_params.string.includes("_ep")) {
@@ -6856,13 +6973,13 @@ var son = (raw_params) => {
6856
6973
  ...raw_params,
6857
6974
  num_pins: numPins
6858
6975
  });
6859
- const w = length44.parse(parameters.w);
6860
- const h = length44.parse(parameters.h);
6861
- const p = length44.parse(parameters.p);
6862
- const pl = length44.parse(parameters.pl);
6863
- const pw = length44.parse(parameters.pw);
6864
- const epw = length44.parse(parameters.epw);
6865
- const eph = length44.parse(parameters.eph);
6976
+ const w = length45.parse(parameters.w);
6977
+ const h = length45.parse(parameters.h);
6978
+ const p = length45.parse(parameters.p);
6979
+ const pl = length45.parse(parameters.pl);
6980
+ const pw = length45.parse(parameters.pw);
6981
+ const epw = length45.parse(parameters.epw);
6982
+ const eph = length45.parse(parameters.eph);
6866
6983
  const pads = [];
6867
6984
  for (let i = 0; i < parameters.num_pins; i++) {
6868
6985
  const { x, y } = getSonPadCoord(parameters.num_pins, i + 1, w, p);
@@ -6940,22 +7057,22 @@ var getSonPadCoord = (num_pins, pn, w, p) => {
6940
7057
  const col = pn <= half ? -1 : 1;
6941
7058
  const row = (half - 1) / 2 - rowIndex;
6942
7059
  return {
6943
- x: col * length44.parse("1.4mm"),
7060
+ x: col * length45.parse("1.4mm"),
6944
7061
  y: row * p
6945
7062
  };
6946
7063
  };
6947
7064
 
6948
7065
  // src/fn/solderjumper.ts
6949
- import { length as length45 } from "circuit-json";
7066
+ import { length as length46 } from "circuit-json";
6950
7067
  var solderjumper = (params) => {
6951
7068
  const { num_pins, bridged, p = 2.54, pw = 1.5, ph = 1.5 } = params;
6952
- const padSpacing7 = length45.parse(p);
6953
- const padWidth7 = length45.parse(pw);
6954
- const padHeight7 = length45.parse(ph);
6955
- const traceWidth = Math.min(padHeight7 / 4, 0.5);
7069
+ const padSpacing7 = length46.parse(p);
7070
+ const padWidth = length46.parse(pw);
7071
+ const padHeight = length46.parse(ph);
7072
+ const traceWidth = Math.min(padHeight / 4, 0.5);
6956
7073
  const pads = [];
6957
7074
  for (let i = 0; i < num_pins; i++) {
6958
- pads.push(rectpad(i + 1, i * padSpacing7, 0, padWidth7, padHeight7));
7075
+ pads.push(rectpad(i + 1, i * padSpacing7, 0, padWidth, padHeight));
6959
7076
  }
6960
7077
  let traces = [];
6961
7078
  if (bridged) {
@@ -6968,8 +7085,8 @@ var solderjumper = (params) => {
6968
7085
  const xCenterFrom = (from - 1) * padSpacing7;
6969
7086
  const xCenterTo = (to - 1) * padSpacing7;
6970
7087
  const directionMult = Math.sign(xCenterTo - xCenterFrom);
6971
- const x1 = xCenterFrom + directionMult * (padWidth7 / 2);
6972
- const x2 = xCenterTo - directionMult * (padWidth7 / 2);
7088
+ const x1 = xCenterFrom + directionMult * (padWidth / 2);
7089
+ const x2 = xCenterTo - directionMult * (padWidth / 2);
6973
7090
  traces.push({
6974
7091
  type: "pcb_trace",
6975
7092
  pcb_trace_id: "",
@@ -6996,8 +7113,8 @@ var solderjumper = (params) => {
6996
7113
  }
6997
7114
  }
6998
7115
  }
6999
- const outlineWidth = (num_pins - 1) * padSpacing7 + padWidth7 + 0.7;
7000
- const outlineHeight = padHeight7 + 1;
7116
+ const outlineWidth = (num_pins - 1) * padSpacing7 + padWidth + 0.7;
7117
+ const outlineHeight = padHeight + 1;
7001
7118
  const outlineCenterX = (num_pins - 1) * padSpacing7 / 2;
7002
7119
  const outlineCenterY = 0;
7003
7120
  const silkscreenRect = {
@@ -7039,34 +7156,34 @@ var solderjumper = (params) => {
7039
7156
  };
7040
7157
 
7041
7158
  // src/fn/sot457.ts
7042
- import { z as z58 } from "zod";
7159
+ import { z as z65 } from "zod";
7043
7160
  var commonSchema = {
7044
- fn: z58.literal("sot457"),
7045
- num_pins: z58.literal(6).default(6),
7046
- pillh: z58.string().default("0.45mm"),
7047
- pillw: z58.string().default("1.45mm"),
7048
- pl: z58.string(),
7049
- pw: z58.string(),
7050
- p: z58.string(),
7051
- wave: z58.boolean().optional(),
7052
- reflow: z58.boolean().optional()
7161
+ fn: z65.literal("sot457"),
7162
+ num_pins: z65.literal(6).default(6),
7163
+ pillh: z65.string().default("0.45mm"),
7164
+ pillw: z65.string().default("1.45mm"),
7165
+ pl: z65.string(),
7166
+ pw: z65.string(),
7167
+ p: z65.string(),
7168
+ wave: z65.boolean().optional(),
7169
+ reflow: z65.boolean().optional()
7053
7170
  };
7054
7171
  var sot457DefSchema = base_def.extend({
7055
7172
  ...commonSchema,
7056
- h: z58.string().default("2.5mm"),
7057
- w: z58.string().default("2.7mm"),
7058
- pl: z58.string().default("0.8mm"),
7059
- pw: z58.string().default("0.55mm"),
7060
- p: z58.string().default("0.95mm")
7173
+ h: z65.string().default("2.5mm"),
7174
+ w: z65.string().default("2.7mm"),
7175
+ pl: z65.string().default("0.8mm"),
7176
+ pw: z65.string().default("0.55mm"),
7177
+ p: z65.string().default("0.95mm")
7061
7178
  });
7062
7179
  var sot457WaveSchema = base_def.extend({
7063
7180
  ...commonSchema,
7064
- h: z58.string().default("3mm"),
7065
- w: z58.string().default("4mm"),
7066
- pillr: z58.string().default("0.225mm"),
7067
- pl: z58.string().default("1.45mm"),
7068
- pw: z58.string().default("1.5mm"),
7069
- p: z58.string().default("1.475mm")
7181
+ h: z65.string().default("3mm"),
7182
+ w: z65.string().default("4mm"),
7183
+ pillr: z65.string().default("0.225mm"),
7184
+ pl: z65.string().default("1.45mm"),
7185
+ pw: z65.string().default("1.5mm"),
7186
+ p: z65.string().default("1.475mm")
7070
7187
  }).transform((data) => ({
7071
7188
  ...data,
7072
7189
  wave: data.wave ?? (data.reflow === void 0 ? true : !data.reflow),
@@ -7099,40 +7216,40 @@ var generateSot457Elements = (params) => {
7099
7216
  const pads = [];
7100
7217
  const pitch = parseDimension(params.p);
7101
7218
  const padLength = parseDimension(params.pl);
7102
- const padWidth7 = parseDimension(params.pw);
7219
+ const padWidth = parseDimension(params.pw);
7103
7220
  const width = parseDimension(params.w);
7104
7221
  const height = parseDimension(params.h);
7105
7222
  if (params.wave) {
7106
7223
  const pinConfigs = {
7107
- 1: ({ padWidth: padWidth8, padHeight: padHeight7 }) => rectpad(1, -pitch, pitch, padHeight7, padWidth8),
7108
- 2: ({ padWidth: padWidth8, padHeight: padHeight7 }) => rectpad(2, -pitch, -pitch, padHeight7, padWidth8),
7109
- 3: ({ padWidth: padWidth8, padHeight: padHeight7 }) => pillpad(
7224
+ 1: ({ padWidth: padWidth2, padHeight }) => rectpad(1, -pitch, pitch, padHeight, padWidth2),
7225
+ 2: ({ padWidth: padWidth2, padHeight }) => rectpad(2, -pitch, -pitch, padHeight, padWidth2),
7226
+ 3: ({ padWidth: padWidth2, padHeight }) => pillpad(
7110
7227
  3,
7111
7228
  -pitch,
7112
7229
  0,
7113
7230
  parseDimension(params.pillw),
7114
7231
  parseDimension(params.pillh)
7115
7232
  ),
7116
- 4: ({ padWidth: padWidth8, padHeight: padHeight7 }) => pillpad(
7233
+ 4: ({ padWidth: padWidth2, padHeight }) => pillpad(
7117
7234
  4,
7118
7235
  pitch,
7119
7236
  0,
7120
7237
  parseDimension(params.pillw),
7121
7238
  parseDimension(params.pillh)
7122
7239
  ),
7123
- 5: ({ padWidth: padWidth8, padHeight: padHeight7 }) => rectpad(5, pitch, pitch, padHeight7, padWidth8),
7124
- 6: ({ padWidth: padWidth8, padHeight: padHeight7 }) => rectpad(6, pitch, -pitch, padHeight7, padWidth8)
7240
+ 5: ({ padWidth: padWidth2, padHeight }) => rectpad(5, pitch, pitch, padHeight, padWidth2),
7241
+ 6: ({ padWidth: padWidth2, padHeight }) => rectpad(6, pitch, -pitch, padHeight, padWidth2)
7125
7242
  };
7126
7243
  for (let i = 1; i <= params.num_pins; i++) {
7127
7244
  const config = pinConfigs[i];
7128
7245
  if (config) {
7129
- pads.push(config({ padWidth: padLength, padHeight: padWidth7 }));
7246
+ pads.push(config({ padWidth: padLength, padHeight: padWidth }));
7130
7247
  }
7131
7248
  }
7132
7249
  } else {
7133
7250
  for (let i = 1; i <= params.num_pins; i++) {
7134
7251
  const { x, y } = getCcwSot457Coords({ pitch, width, pinNumber: i });
7135
- pads.push(rectpad(i, x, y, padLength, padWidth7));
7252
+ pads.push(rectpad(i, x, y, padLength, padWidth));
7136
7253
  }
7137
7254
  }
7138
7255
  const silkscreenPath1 = {
@@ -7161,7 +7278,7 @@ var generateSot457Elements = (params) => {
7161
7278
  const pin1Position = getCcwSot457Coords({ pitch, width, pinNumber: 1 });
7162
7279
  const triangleHeight = params.wave ? 1 : 0.5;
7163
7280
  const triangleWidth = params.wave ? 0.7 : 0.3;
7164
- pin1Position.x -= params.wave ? padWidth7 : padWidth7 * 1.7;
7281
+ pin1Position.x -= params.wave ? padWidth : padWidth * 1.7;
7165
7282
  const pin1Indicator = {
7166
7283
  type: "pcb_silkscreen_path",
7167
7284
  layer: "top",
@@ -7205,25 +7322,25 @@ var sot457 = (rawParams) => {
7205
7322
  };
7206
7323
 
7207
7324
  // src/fn/sot963.ts
7208
- import { z as z59 } from "zod";
7209
- import { length as length46 } from "circuit-json";
7325
+ import { z as z66 } from "zod";
7326
+ import { length as length47 } from "circuit-json";
7210
7327
  var sot963_def = base_def.extend({
7211
- fn: z59.string(),
7212
- num_pins: z59.literal(6).default(6),
7213
- w: z59.string().default("1.1mm"),
7214
- h: z59.string().default("1.45mm"),
7215
- p: z59.string().default("0.35mm"),
7216
- pl: z59.string().default("0.2mm"),
7217
- pw: z59.string().default("0.2mm"),
7218
- string: z59.string().optional()
7328
+ fn: z66.string(),
7329
+ num_pins: z66.literal(6).default(6),
7330
+ w: z66.string().default("1.1mm"),
7331
+ h: z66.string().default("1.45mm"),
7332
+ p: z66.string().default("0.35mm"),
7333
+ pl: z66.string().default("0.2mm"),
7334
+ pw: z66.string().default("0.2mm"),
7335
+ string: z66.string().optional()
7219
7336
  });
7220
7337
  var sot963 = (raw_params) => {
7221
7338
  const parameters = sot963_def.parse({ ...raw_params, fn: "sot963" });
7222
- const w = length46.parse(parameters.w);
7223
- const h = length46.parse(parameters.h);
7224
- const p = length46.parse(parameters.p);
7225
- const pl = length46.parse(parameters.pl);
7226
- const pw = length46.parse(parameters.pw);
7339
+ const w = length47.parse(parameters.w);
7340
+ const h = length47.parse(parameters.h);
7341
+ const p = length47.parse(parameters.p);
7342
+ const pl = length47.parse(parameters.pl);
7343
+ const pw = length47.parse(parameters.pw);
7227
7344
  const pads = [];
7228
7345
  for (let i = 0; i < 6; i++) {
7229
7346
  const { x, y } = getSot963PadCoord(i + 1, w, p, pl);
@@ -7286,19 +7403,19 @@ var getSot963PadCoord = (pn, w, p, pl) => {
7286
7403
  };
7287
7404
 
7288
7405
  // src/fn/potentiometer.ts
7289
- import { z as z60 } from "zod";
7406
+ import { z as z67 } from "zod";
7290
7407
  var potentiometer_def = base_def.extend({
7291
- fn: z60.string(),
7292
- num_pins: z60.union([z60.literal(3), z60.literal(2)]).default(3),
7293
- p: z60.string().default("3.8mm"),
7294
- id: z60.string().default("1.25mm"),
7295
- od: z60.string().default("2.35mm"),
7296
- ca: z60.string().default("14mm").describe(
7408
+ fn: z67.string(),
7409
+ num_pins: z67.union([z67.literal(3), z67.literal(2)]).default(3),
7410
+ p: z67.string().default("3.8mm"),
7411
+ id: z67.string().default("1.25mm"),
7412
+ od: z67.string().default("2.35mm"),
7413
+ ca: z67.string().default("14mm").describe(
7297
7414
  "Caliper axis (width or diameter of the potentiometer body or adjustment knob)"
7298
7415
  ),
7299
- w: z60.string().default("5.35mm"),
7300
- h: z60.string().default("4mm"),
7301
- string: z60.string().optional()
7416
+ w: z67.string().default("5.35mm"),
7417
+ h: z67.string().default("4mm"),
7418
+ string: z67.string().optional()
7302
7419
  });
7303
7420
  var potentiometer_acp = (parameters) => {
7304
7421
  const { p, id, od, h, ca } = parameters;
@@ -7365,15 +7482,15 @@ var potentiometer = (raw_params) => {
7365
7482
 
7366
7483
  // src/fn/electrolytic.ts
7367
7484
  import {
7368
- length as length47
7485
+ length as length48
7369
7486
  } from "circuit-json";
7370
- import { z as z61 } from "zod";
7487
+ import { z as z68 } from "zod";
7371
7488
  var electrolytic_def = base_def.extend({
7372
- fn: z61.string(),
7373
- p: length47.optional().default("7.5mm"),
7374
- id: length47.optional().default("1mm"),
7375
- od: length47.optional().default("2mm"),
7376
- d: length47.optional().default("10.5mm")
7489
+ fn: z68.string(),
7490
+ p: length48.optional().default("7.5mm"),
7491
+ id: length48.optional().default("1mm"),
7492
+ od: length48.optional().default("2mm"),
7493
+ d: length48.optional().default("10.5mm")
7377
7494
  });
7378
7495
  var generate_circle_arcs = (centerX, centerY, radius, cut, cutHeight) => {
7379
7496
  const topArc = [];
@@ -7480,22 +7597,22 @@ var electrolytic = (raw_params) => {
7480
7597
  };
7481
7598
 
7482
7599
  // src/fn/smbf.ts
7483
- import { z as z62 } from "zod";
7484
- import { length as length48 } from "circuit-json";
7600
+ import { z as z69 } from "zod";
7601
+ import { length as length49 } from "circuit-json";
7485
7602
  var smbf_def = base_def.extend({
7486
- fn: z62.string(),
7487
- num_pins: z62.literal(2).default(2),
7488
- w: z62.string().default("6.5mm"),
7489
- h: z62.string().default("3mm"),
7490
- pl: z62.string().default("1.75mm"),
7491
- pw: z62.string().default("2.40mm"),
7492
- p: z62.string().default("4.75mm")
7603
+ fn: z69.string(),
7604
+ num_pins: z69.literal(2).default(2),
7605
+ w: z69.string().default("6.5mm"),
7606
+ h: z69.string().default("3mm"),
7607
+ pl: z69.string().default("1.75mm"),
7608
+ pw: z69.string().default("2.40mm"),
7609
+ p: z69.string().default("4.75mm")
7493
7610
  });
7494
7611
  var smbf = (raw_params) => {
7495
7612
  const parameters = smbf_def.parse(raw_params);
7496
7613
  const silkscreenRefText = silkscreenRef(
7497
7614
  0,
7498
- length48.parse(parameters.h) - 0.5,
7615
+ length49.parse(parameters.h) - 0.5,
7499
7616
  0.3
7500
7617
  );
7501
7618
  const silkscreenLine = {
@@ -7504,20 +7621,20 @@ var smbf = (raw_params) => {
7504
7621
  pcb_component_id: "",
7505
7622
  route: [
7506
7623
  {
7507
- x: length48.parse(parameters.p) / 2,
7508
- y: length48.parse(parameters.h) / 2
7624
+ x: length49.parse(parameters.p) / 2,
7625
+ y: length49.parse(parameters.h) / 2
7509
7626
  },
7510
7627
  {
7511
- x: -length48.parse(parameters.w) / 2 - 0.3,
7512
- y: length48.parse(parameters.h) / 2
7628
+ x: -length49.parse(parameters.w) / 2 - 0.3,
7629
+ y: length49.parse(parameters.h) / 2
7513
7630
  },
7514
7631
  {
7515
- x: -length48.parse(parameters.w) / 2 - 0.3,
7516
- y: -length48.parse(parameters.h) / 2
7632
+ x: -length49.parse(parameters.w) / 2 - 0.3,
7633
+ y: -length49.parse(parameters.h) / 2
7517
7634
  },
7518
7635
  {
7519
- x: length48.parse(parameters.p) / 2,
7520
- y: -length48.parse(parameters.h) / 2
7636
+ x: length49.parse(parameters.p) / 2,
7637
+ y: -length49.parse(parameters.h) / 2
7521
7638
  }
7522
7639
  ],
7523
7640
  stroke_width: 0.1,
@@ -7559,16 +7676,16 @@ var smbfWithoutParsing = (parameters) => {
7559
7676
  };
7560
7677
 
7561
7678
  // src/fn/sot323.ts
7562
- import { z as z63 } from "zod";
7679
+ import { z as z70 } from "zod";
7563
7680
  var sot323_def = base_def.extend({
7564
- fn: z63.string(),
7565
- num_pins: z63.number().default(3),
7566
- w: z63.string().default("2.45mm"),
7567
- h: z63.string().default("2.40mm"),
7568
- pl: z63.string().default("1.225mm"),
7569
- pw: z63.string().default("0.5mm"),
7570
- p: z63.string().default("0.95mm"),
7571
- string: z63.string().optional()
7681
+ fn: z70.string(),
7682
+ num_pins: z70.number().default(3),
7683
+ w: z70.string().default("2.45mm"),
7684
+ h: z70.string().default("2.40mm"),
7685
+ pl: z70.string().default("1.225mm"),
7686
+ pw: z70.string().default("0.5mm"),
7687
+ p: z70.string().default("0.95mm"),
7688
+ string: z70.string().optional()
7572
7689
  });
7573
7690
  var sot323 = (raw_params) => {
7574
7691
  const match = raw_params.string?.match(/^sot323_(\d+)/);
@@ -7656,30 +7773,30 @@ var sot323_3 = (parameters) => {
7656
7773
  };
7657
7774
 
7658
7775
  // src/fn/smtpad.ts
7659
- import { z as z64 } from "zod";
7660
- import { length as length49 } from "circuit-json";
7661
- import { mm as mm8 } from "@tscircuit/mm";
7776
+ import { z as z71 } from "zod";
7777
+ import { length as length50 } from "circuit-json";
7778
+ import { mm as mm14 } from "@tscircuit/mm";
7662
7779
  var smtpad_def = base_def.extend({
7663
- fn: z64.string(),
7664
- circle: z64.boolean().optional(),
7665
- rect: z64.boolean().optional(),
7666
- square: z64.boolean().optional(),
7667
- pill: z64.boolean().optional(),
7668
- d: length49.optional(),
7669
- pd: length49.optional(),
7670
- diameter: length49.optional(),
7671
- r: length49.optional(),
7672
- pr: length49.optional(),
7673
- radius: length49.optional(),
7674
- w: length49.optional(),
7675
- pw: length49.optional(),
7676
- width: length49.optional(),
7677
- h: length49.optional(),
7678
- ph: length49.optional(),
7679
- height: length49.optional(),
7680
- s: length49.optional(),
7681
- size: length49.optional(),
7682
- string: z64.string().optional()
7780
+ fn: z71.string(),
7781
+ circle: z71.boolean().optional(),
7782
+ rect: z71.boolean().optional(),
7783
+ square: z71.boolean().optional(),
7784
+ pill: z71.boolean().optional(),
7785
+ d: length50.optional(),
7786
+ pd: length50.optional(),
7787
+ diameter: length50.optional(),
7788
+ r: length50.optional(),
7789
+ pr: length50.optional(),
7790
+ radius: length50.optional(),
7791
+ w: length50.optional(),
7792
+ pw: length50.optional(),
7793
+ width: length50.optional(),
7794
+ h: length50.optional(),
7795
+ ph: length50.optional(),
7796
+ height: length50.optional(),
7797
+ s: length50.optional(),
7798
+ size: length50.optional(),
7799
+ string: z71.string().optional()
7683
7800
  }).transform((v) => {
7684
7801
  let shape = "rect";
7685
7802
  if (v.circle) shape = "circle";
@@ -7690,27 +7807,27 @@ var smtpad_def = base_def.extend({
7690
7807
  let width;
7691
7808
  let height;
7692
7809
  if (shape === "circle") {
7693
- if (v.r !== void 0) radius = mm8(v.r);
7694
- else if (v.pr !== void 0) radius = mm8(v.pr);
7695
- else if (v.radius !== void 0) radius = mm8(v.radius);
7696
- else if (v.d !== void 0) radius = mm8(v.d) / 2;
7697
- else if (v.pd !== void 0) radius = mm8(v.pd) / 2;
7698
- else if (v.diameter !== void 0) radius = mm8(v.diameter) / 2;
7699
- else radius = mm8("1mm") / 2;
7810
+ if (v.r !== void 0) radius = mm14(v.r);
7811
+ else if (v.pr !== void 0) radius = mm14(v.pr);
7812
+ else if (v.radius !== void 0) radius = mm14(v.radius);
7813
+ else if (v.d !== void 0) radius = mm14(v.d) / 2;
7814
+ else if (v.pd !== void 0) radius = mm14(v.pd) / 2;
7815
+ else if (v.diameter !== void 0) radius = mm14(v.diameter) / 2;
7816
+ else radius = mm14("1mm") / 2;
7700
7817
  } else {
7701
- if (v.w !== void 0) width = mm8(v.w);
7702
- else if (v.pw !== void 0) width = mm8(v.pw);
7703
- else if (v.width !== void 0) width = mm8(v.width);
7704
- else if (v.s !== void 0) width = mm8(v.s);
7705
- else if (v.size !== void 0) width = mm8(v.size);
7706
- else width = mm8("1mm");
7707
- if (v.h !== void 0) height = mm8(v.h);
7708
- else if (v.ph !== void 0) height = mm8(v.ph);
7709
- else if (v.height !== void 0) height = mm8(v.height);
7818
+ if (v.w !== void 0) width = mm14(v.w);
7819
+ else if (v.pw !== void 0) width = mm14(v.pw);
7820
+ else if (v.width !== void 0) width = mm14(v.width);
7821
+ else if (v.s !== void 0) width = mm14(v.s);
7822
+ else if (v.size !== void 0) width = mm14(v.size);
7823
+ else width = mm14("1mm");
7824
+ if (v.h !== void 0) height = mm14(v.h);
7825
+ else if (v.ph !== void 0) height = mm14(v.ph);
7826
+ else if (v.height !== void 0) height = mm14(v.height);
7710
7827
  else if (shape === "square") height = width;
7711
7828
  else if (shape === "rect")
7712
7829
  height = width;
7713
- else height = mm8("1mm");
7830
+ else height = mm14("1mm");
7714
7831
  }
7715
7832
  return {
7716
7833
  fn: v.fn,
@@ -7745,28 +7862,28 @@ var smtpad = (raw_params) => {
7745
7862
  };
7746
7863
 
7747
7864
  // src/fn/platedhole.ts
7748
- import { z as z65 } from "zod";
7749
- import { length as length50 } from "circuit-json";
7750
- import { mm as mm9 } from "@tscircuit/mm";
7865
+ import { z as z72 } from "zod";
7866
+ import { length as length51 } from "circuit-json";
7867
+ import { mm as mm15 } from "@tscircuit/mm";
7751
7868
  var platedhole_def = base_def.extend({
7752
- fn: z65.string(),
7753
- d: length50.optional(),
7754
- hd: length50.optional(),
7755
- r: length50.optional(),
7756
- hr: length50.optional(),
7757
- pd: length50.optional(),
7758
- pr: length50.optional(),
7759
- squarepad: z65.boolean().optional().default(false)
7869
+ fn: z72.string(),
7870
+ d: length51.optional(),
7871
+ hd: length51.optional(),
7872
+ r: length51.optional(),
7873
+ hr: length51.optional(),
7874
+ pd: length51.optional(),
7875
+ pr: length51.optional(),
7876
+ squarepad: z72.boolean().optional().default(false)
7760
7877
  }).transform((v) => {
7761
7878
  let holeD;
7762
- if (v.d !== void 0) holeD = mm9(v.d);
7763
- else if (v.hd !== void 0) holeD = mm9(v.hd);
7764
- else if (v.r !== void 0) holeD = mm9(v.r) * 2;
7765
- else if (v.hr !== void 0) holeD = mm9(v.hr) * 2;
7766
- else holeD = mm9("1mm");
7879
+ if (v.d !== void 0) holeD = mm15(v.d);
7880
+ else if (v.hd !== void 0) holeD = mm15(v.hd);
7881
+ else if (v.r !== void 0) holeD = mm15(v.r) * 2;
7882
+ else if (v.hr !== void 0) holeD = mm15(v.hr) * 2;
7883
+ else holeD = mm15("1mm");
7767
7884
  let padD;
7768
- if (v.pd !== void 0) padD = mm9(v.pd);
7769
- else if (v.pr !== void 0) padD = mm9(v.pr) * 2;
7885
+ if (v.pd !== void 0) padD = mm15(v.pd);
7886
+ else if (v.pr !== void 0) padD = mm15(v.pr) * 2;
7770
7887
  else padD = holeD * (1.5 / 1);
7771
7888
  return {
7772
7889
  fn: v.fn,
@@ -7788,14 +7905,14 @@ var platedhole2 = (raw_params) => {
7788
7905
  };
7789
7906
 
7790
7907
  // src/fn/sot.ts
7791
- import { z as z66 } from "zod";
7908
+ import { z as z73 } from "zod";
7792
7909
  var sot_def = base_def.extend({
7793
- fn: z66.string(),
7794
- num_pins: z66.literal(6).default(6),
7795
- h: z66.string().default("1.6mm"),
7796
- pl: z66.string().default("1mm"),
7797
- pw: z66.string().default("0.7mm"),
7798
- p: z66.string().default("0.95mm")
7910
+ fn: z73.string(),
7911
+ num_pins: z73.literal(6).default(6),
7912
+ h: z73.string().default("1.6mm"),
7913
+ pl: z73.string().default("1mm"),
7914
+ pw: z73.string().default("0.7mm"),
7915
+ p: z73.string().default("0.95mm")
7799
7916
  });
7800
7917
  var sot = (raw_params) => {
7801
7918
  const parameters = sot_def.parse(raw_params);
@@ -7912,16 +8029,16 @@ var sotWithoutParsing = (parameters) => {
7912
8029
  };
7913
8030
 
7914
8031
  // src/fn/sot343.ts
7915
- import { z as z67 } from "zod";
8032
+ import { z as z74 } from "zod";
7916
8033
  var sot343_def = base_def.extend({
7917
- fn: z67.string(),
7918
- num_pins: z67.number().default(4),
7919
- w: z67.string().default("3.2mm"),
7920
- h: z67.string().default("2.6mm"),
7921
- pl: z67.string().default("1.35mm"),
7922
- pw: z67.string().default("0.50mm"),
7923
- p: z67.string().default("0.6mm"),
7924
- string: z67.string().optional()
8034
+ fn: z74.string(),
8035
+ num_pins: z74.number().default(4),
8036
+ w: z74.string().default("3.2mm"),
8037
+ h: z74.string().default("2.6mm"),
8038
+ pl: z74.string().default("1.35mm"),
8039
+ pw: z74.string().default("0.50mm"),
8040
+ p: z74.string().default("0.6mm"),
8041
+ string: z74.string().optional()
7925
8042
  });
7926
8043
  var sot343 = (raw_params) => {
7927
8044
  const match = raw_params.string?.match(/^sot343_(\d+)/);
@@ -8016,14 +8133,14 @@ var sot343_4 = (parameters) => {
8016
8133
  };
8017
8134
 
8018
8135
  // src/fn/m2host.ts
8019
- import { z as z68 } from "zod";
8136
+ import { z as z75 } from "zod";
8020
8137
  var m2host_def = base_def.extend({
8021
- fn: z68.string()
8138
+ fn: z75.string()
8022
8139
  });
8023
8140
  var m2host = (raw_params) => {
8024
8141
  const parameters = m2host_def.parse(raw_params);
8025
8142
  const pads = [];
8026
- const padWidth7 = 0.5 - 0.15;
8143
+ const padWidth = 0.5 - 0.15;
8027
8144
  const padLength = 1.5;
8028
8145
  const pitch = 0.5;
8029
8146
  const halfPitch = pitch / 2;
@@ -8038,7 +8155,7 @@ var m2host = (raw_params) => {
8038
8155
  const padLengthWithOffset = padLength + (isBottomLayer ? 0.25 : 0);
8039
8156
  const rightEdgeOffset = 0.5;
8040
8157
  const x = rightEdgeOffset - padLengthWithOffset / 2;
8041
- const pad2 = rectpad(pn, x, y, padLengthWithOffset, padWidth7);
8158
+ const pad2 = rectpad(pn, x, y, padLengthWithOffset, padWidth);
8042
8159
  pad2.layer = isBottomLayer ? "bottom" : "top";
8043
8160
  pads.push(pad2);
8044
8161
  }
@@ -8121,16 +8238,16 @@ var m2host = (raw_params) => {
8121
8238
  };
8122
8239
 
8123
8240
  // src/fn/to92l.ts
8124
- import { z as z69 } from "zod";
8241
+ import { z as z76 } from "zod";
8125
8242
  var to92l_def = base_def.extend({
8126
- fn: z69.string(),
8127
- num_pins: z69.number().default(3),
8128
- inline: z69.boolean().default(false),
8129
- p: z69.string().default("1.27mm"),
8130
- id: z69.string().default("0.75mm"),
8131
- od: z69.string().default("1.3mm"),
8132
- w: z69.string().default("4.8mm"),
8133
- h: z69.string().default("4.0mm")
8243
+ fn: z76.string(),
8244
+ num_pins: z76.number().default(3),
8245
+ inline: z76.boolean().default(false),
8246
+ p: z76.string().default("1.27mm"),
8247
+ id: z76.string().default("0.75mm"),
8248
+ od: z76.string().default("1.3mm"),
8249
+ w: z76.string().default("4.8mm"),
8250
+ h: z76.string().default("4.0mm")
8134
8251
  });
8135
8252
  var to92l = (raw_params) => {
8136
8253
  const parameters = to92l_def.parse(raw_params);