@tscircuit/footprinter 0.0.175 → 0.0.177
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 +62 -7
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -28,6 +28,7 @@ __export(fn_exports, {
|
|
|
28
28
|
msop: () => msop,
|
|
29
29
|
pad: () => pad,
|
|
30
30
|
pinrow: () => pinrow,
|
|
31
|
+
platedhole: () => platedhole3,
|
|
31
32
|
potentiometer: () => potentiometer,
|
|
32
33
|
pushbutton: () => pushbutton,
|
|
33
34
|
qfn: () => qfn,
|
|
@@ -4069,12 +4070,12 @@ var sot89_3 = (parameters) => {
|
|
|
4069
4070
|
const pads = [];
|
|
4070
4071
|
const padGap = Number.parseFloat(parameters.p);
|
|
4071
4072
|
const padWidth = Number.parseFloat(parameters.pw);
|
|
4072
|
-
const
|
|
4073
|
+
const length46 = Number.parseFloat(parameters.w);
|
|
4073
4074
|
const padHeight = Number.parseFloat(parameters.pl);
|
|
4074
4075
|
pads.push(
|
|
4075
|
-
rectpad(1, -
|
|
4076
|
-
rectpad(2, -
|
|
4077
|
-
rectpad(3, -
|
|
4076
|
+
rectpad(1, -length46 / 2, padGap, padHeight, padWidth),
|
|
4077
|
+
rectpad(2, -length46 / 2 + (1.5 - 1.3) / 2, 0, 1.5, padWidth),
|
|
4078
|
+
rectpad(3, -length46 / 2, -padGap, padHeight, padWidth)
|
|
4078
4079
|
);
|
|
4079
4080
|
const silkscreenRefText = silkscreenRef(0, 0, 0.3);
|
|
4080
4081
|
const width = Number.parseFloat(parameters.w) / 2 - 1;
|
|
@@ -4114,7 +4115,7 @@ var sot89_5 = (parameters) => {
|
|
|
4114
4115
|
const pads = [];
|
|
4115
4116
|
const padGap = Number.parseFloat(parameters.p);
|
|
4116
4117
|
const padWidth = Number.parseFloat(parameters.pw);
|
|
4117
|
-
const
|
|
4118
|
+
const length46 = Number.parseFloat(parameters.w);
|
|
4118
4119
|
pads.push(
|
|
4119
4120
|
rectpad(1, -1.85, -1.5, 1.5, 0.7),
|
|
4120
4121
|
rectpad(2, -1.85, 1.5, 1.5, 0.7),
|
|
@@ -5884,7 +5885,7 @@ import { z as z52 } from "zod";
|
|
|
5884
5885
|
import { length as length41 } from "circuit-json";
|
|
5885
5886
|
var son_def = z52.object({
|
|
5886
5887
|
fn: z52.string(),
|
|
5887
|
-
num_pins: z52.literal(8).default(8),
|
|
5888
|
+
num_pins: z52.union([z52.literal(6), z52.literal(8)]).default(8),
|
|
5888
5889
|
w: z52.string().default("3mm"),
|
|
5889
5890
|
h: z52.string().default("3mm"),
|
|
5890
5891
|
p: z52.string().default("0.5mm"),
|
|
@@ -5899,7 +5900,12 @@ var son = (raw_params) => {
|
|
|
5899
5900
|
if (raw_params.string && raw_params.string.includes("_ep")) {
|
|
5900
5901
|
raw_params.ep = true;
|
|
5901
5902
|
}
|
|
5902
|
-
const
|
|
5903
|
+
const match = raw_params.string?.match(/^son_(\d+)/);
|
|
5904
|
+
const numPins = match ? Number.parseInt(match[1], 10) : raw_params.num_pins || 8;
|
|
5905
|
+
const parameters = son_def.parse({
|
|
5906
|
+
...raw_params,
|
|
5907
|
+
num_pins: numPins
|
|
5908
|
+
});
|
|
5903
5909
|
const w = length41.parse(parameters.w);
|
|
5904
5910
|
const h = length41.parse(parameters.h);
|
|
5905
5911
|
const p = length41.parse(parameters.p);
|
|
@@ -6636,6 +6642,55 @@ var sot323_3 = (parameters) => {
|
|
|
6636
6642
|
];
|
|
6637
6643
|
};
|
|
6638
6644
|
|
|
6645
|
+
// src/fn/platedhole.ts
|
|
6646
|
+
import { z as z58 } from "zod";
|
|
6647
|
+
import { length as length45 } from "circuit-json";
|
|
6648
|
+
import { mm as mm6 } from "@tscircuit/mm";
|
|
6649
|
+
var platedhole_def = z58.object({
|
|
6650
|
+
fn: z58.string(),
|
|
6651
|
+
d: length45.optional(),
|
|
6652
|
+
hd: length45.optional(),
|
|
6653
|
+
r: length45.optional(),
|
|
6654
|
+
hr: length45.optional(),
|
|
6655
|
+
pd: length45.optional(),
|
|
6656
|
+
pr: length45.optional()
|
|
6657
|
+
}).transform((v) => {
|
|
6658
|
+
let holeD;
|
|
6659
|
+
if (v.d !== void 0)
|
|
6660
|
+
holeD = mm6(v.d);
|
|
6661
|
+
else if (v.hd !== void 0)
|
|
6662
|
+
holeD = mm6(v.hd);
|
|
6663
|
+
else if (v.r !== void 0)
|
|
6664
|
+
holeD = mm6(v.r) * 2;
|
|
6665
|
+
else if (v.hr !== void 0)
|
|
6666
|
+
holeD = mm6(v.hr) * 2;
|
|
6667
|
+
else
|
|
6668
|
+
holeD = mm6("1mm");
|
|
6669
|
+
let padD;
|
|
6670
|
+
if (v.pd !== void 0)
|
|
6671
|
+
padD = mm6(v.pd);
|
|
6672
|
+
else if (v.pr !== void 0)
|
|
6673
|
+
padD = mm6(v.pr) * 2;
|
|
6674
|
+
else
|
|
6675
|
+
padD = holeD * (1.5 / 1);
|
|
6676
|
+
return {
|
|
6677
|
+
fn: v.fn,
|
|
6678
|
+
d: holeD,
|
|
6679
|
+
pd: padD
|
|
6680
|
+
};
|
|
6681
|
+
});
|
|
6682
|
+
var platedhole3 = (raw_params) => {
|
|
6683
|
+
const params = platedhole_def.parse(raw_params);
|
|
6684
|
+
const { d, pd } = params;
|
|
6685
|
+
return {
|
|
6686
|
+
circuitJson: [
|
|
6687
|
+
platedhole(1, 0, 0, d, pd),
|
|
6688
|
+
silkscreenRef(0, pd / 2 + 0.5, 0.2)
|
|
6689
|
+
],
|
|
6690
|
+
parameters: params
|
|
6691
|
+
};
|
|
6692
|
+
};
|
|
6693
|
+
|
|
6639
6694
|
// src/helpers/is-not-null.ts
|
|
6640
6695
|
function isNotNull(value) {
|
|
6641
6696
|
return value !== null;
|