@tscircuit/footprinter 0.0.144 → 0.0.146
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.d.ts +2 -0
- package/dist/index.js +499 -281
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -24,6 +24,7 @@ __export(fn_exports, {
|
|
|
24
24
|
mlp: () => mlp,
|
|
25
25
|
ms012: () => ms012,
|
|
26
26
|
ms013: () => ms013,
|
|
27
|
+
msop: () => msop,
|
|
27
28
|
pad: () => pad,
|
|
28
29
|
pinrow: () => pinrow,
|
|
29
30
|
pushbutton: () => pushbutton,
|
|
@@ -38,6 +39,7 @@ __export(fn_exports, {
|
|
|
38
39
|
sod110: () => sod110,
|
|
39
40
|
sod123: () => sod123,
|
|
40
41
|
sod123f: () => sod123f,
|
|
42
|
+
sod123fl: () => sod123fl,
|
|
41
43
|
sod123w: () => sod123w,
|
|
42
44
|
sod128: () => sod128,
|
|
43
45
|
sod323: () => sod323,
|
|
@@ -3361,20 +3363,20 @@ var sodWithoutParsing8 = (parameters) => {
|
|
|
3361
3363
|
return pads;
|
|
3362
3364
|
};
|
|
3363
3365
|
|
|
3364
|
-
// src/fn/
|
|
3366
|
+
// src/fn/sod123fl.ts
|
|
3365
3367
|
import { z as z29 } from "zod";
|
|
3366
3368
|
import { length as length23 } from "circuit-json";
|
|
3367
|
-
var
|
|
3369
|
+
var sod123FL_def = z29.object({
|
|
3368
3370
|
fn: z29.string(),
|
|
3369
3371
|
num_pins: z29.literal(2).default(2),
|
|
3370
|
-
w: z29.string().default("
|
|
3371
|
-
h: z29.string().default("
|
|
3372
|
-
pl: z29.string().default("0.
|
|
3373
|
-
pw: z29.string().default("
|
|
3374
|
-
p: z29.string().default("
|
|
3372
|
+
w: z29.string().default("4.4mm"),
|
|
3373
|
+
h: z29.string().default("2.1mm"),
|
|
3374
|
+
pl: z29.string().default("0.91mm"),
|
|
3375
|
+
pw: z29.string().default("1.22mm"),
|
|
3376
|
+
p: z29.string().default("3.146mm")
|
|
3375
3377
|
});
|
|
3376
|
-
var
|
|
3377
|
-
const parameters =
|
|
3378
|
+
var sod123fl = (raw_params) => {
|
|
3379
|
+
const parameters = sod123FL_def.parse(raw_params);
|
|
3378
3380
|
const silkscreenRefText = silkscreenRef(
|
|
3379
3381
|
0,
|
|
3380
3382
|
length23.parse(parameters.h),
|
|
@@ -3390,11 +3392,11 @@ var sod723 = (raw_params) => {
|
|
|
3390
3392
|
y: length23.parse(parameters.h) / 2
|
|
3391
3393
|
},
|
|
3392
3394
|
{
|
|
3393
|
-
x: -length23.parse(parameters.w) / 2 - 0.
|
|
3395
|
+
x: -length23.parse(parameters.w) / 2 - 0.2,
|
|
3394
3396
|
y: length23.parse(parameters.h) / 2
|
|
3395
3397
|
},
|
|
3396
3398
|
{
|
|
3397
|
-
x: -length23.parse(parameters.w) / 2 - 0.
|
|
3399
|
+
x: -length23.parse(parameters.w) / 2 - 0.2,
|
|
3398
3400
|
y: -length23.parse(parameters.h) / 2
|
|
3399
3401
|
},
|
|
3400
3402
|
{
|
|
@@ -3441,23 +3443,23 @@ var sodWithoutParsing9 = (parameters) => {
|
|
|
3441
3443
|
return pads;
|
|
3442
3444
|
};
|
|
3443
3445
|
|
|
3444
|
-
// src/fn/
|
|
3446
|
+
// src/fn/sod723.ts
|
|
3445
3447
|
import { z as z30 } from "zod";
|
|
3446
3448
|
import { length as length24 } from "circuit-json";
|
|
3447
|
-
var
|
|
3449
|
+
var sod_def9 = z30.object({
|
|
3448
3450
|
fn: z30.string(),
|
|
3449
3451
|
num_pins: z30.literal(2).default(2),
|
|
3450
|
-
w: z30.string().default("
|
|
3451
|
-
h: z30.string().default("
|
|
3452
|
-
pl: z30.string().default("
|
|
3453
|
-
pw: z30.string().default("
|
|
3454
|
-
p: z30.string().default("
|
|
3452
|
+
w: z30.string().default("1.80mm"),
|
|
3453
|
+
h: z30.string().default("1.00mm"),
|
|
3454
|
+
pl: z30.string().default("0.66mm"),
|
|
3455
|
+
pw: z30.string().default("0.5mm"),
|
|
3456
|
+
p: z30.string().default("0.8mm")
|
|
3455
3457
|
});
|
|
3456
|
-
var
|
|
3457
|
-
const parameters =
|
|
3458
|
+
var sod723 = (raw_params) => {
|
|
3459
|
+
const parameters = sod_def9.parse(raw_params);
|
|
3458
3460
|
const silkscreenRefText = silkscreenRef(
|
|
3459
3461
|
0,
|
|
3460
|
-
length24.parse(parameters.h)
|
|
3462
|
+
length24.parse(parameters.h),
|
|
3461
3463
|
0.3
|
|
3462
3464
|
);
|
|
3463
3465
|
const silkscreenLine = {
|
|
@@ -3470,11 +3472,11 @@ var sod128 = (raw_params) => {
|
|
|
3470
3472
|
y: length24.parse(parameters.h) / 2
|
|
3471
3473
|
},
|
|
3472
3474
|
{
|
|
3473
|
-
x: -length24.parse(parameters.w) / 2 - 0.
|
|
3475
|
+
x: -length24.parse(parameters.w) / 2 - 0.1,
|
|
3474
3476
|
y: length24.parse(parameters.h) / 2
|
|
3475
3477
|
},
|
|
3476
3478
|
{
|
|
3477
|
-
x: -length24.parse(parameters.w) / 2 - 0.
|
|
3479
|
+
x: -length24.parse(parameters.w) / 2 - 0.1,
|
|
3478
3480
|
y: -length24.parse(parameters.h) / 2
|
|
3479
3481
|
},
|
|
3480
3482
|
{
|
|
@@ -3521,28 +3523,108 @@ var sodWithoutParsing10 = (parameters) => {
|
|
|
3521
3523
|
return pads;
|
|
3522
3524
|
};
|
|
3523
3525
|
|
|
3524
|
-
// src/fn/
|
|
3526
|
+
// src/fn/sod128.ts
|
|
3525
3527
|
import { z as z31 } from "zod";
|
|
3526
|
-
|
|
3528
|
+
import { length as length25 } from "circuit-json";
|
|
3529
|
+
var sod_def10 = z31.object({
|
|
3527
3530
|
fn: z31.string(),
|
|
3528
|
-
num_pins: z31.
|
|
3529
|
-
w: z31.string().default("
|
|
3530
|
-
h: z31.string().default("
|
|
3531
|
-
pl: z31.string().default("1.
|
|
3532
|
-
pw: z31.string().default("
|
|
3533
|
-
p: z31.string().default("
|
|
3534
|
-
|
|
3531
|
+
num_pins: z31.literal(2).default(2),
|
|
3532
|
+
w: z31.string().default("6.2mm"),
|
|
3533
|
+
h: z31.string().default("3.4mm"),
|
|
3534
|
+
pl: z31.string().default("1.4mm"),
|
|
3535
|
+
pw: z31.string().default("2.1mm"),
|
|
3536
|
+
p: z31.string().default("4.4mm")
|
|
3537
|
+
});
|
|
3538
|
+
var sod128 = (raw_params) => {
|
|
3539
|
+
const parameters = sod_def10.parse(raw_params);
|
|
3540
|
+
const silkscreenRefText = silkscreenRef(
|
|
3541
|
+
0,
|
|
3542
|
+
length25.parse(parameters.h) / 2 + 0.4,
|
|
3543
|
+
0.3
|
|
3544
|
+
);
|
|
3545
|
+
const silkscreenLine = {
|
|
3546
|
+
type: "pcb_silkscreen_path",
|
|
3547
|
+
layer: "top",
|
|
3548
|
+
pcb_component_id: "",
|
|
3549
|
+
route: [
|
|
3550
|
+
{
|
|
3551
|
+
x: length25.parse(parameters.p) / 2,
|
|
3552
|
+
y: length25.parse(parameters.h) / 2
|
|
3553
|
+
},
|
|
3554
|
+
{
|
|
3555
|
+
x: -length25.parse(parameters.w) / 2 - 0.2,
|
|
3556
|
+
y: length25.parse(parameters.h) / 2
|
|
3557
|
+
},
|
|
3558
|
+
{
|
|
3559
|
+
x: -length25.parse(parameters.w) / 2 - 0.2,
|
|
3560
|
+
y: -length25.parse(parameters.h) / 2
|
|
3561
|
+
},
|
|
3562
|
+
{
|
|
3563
|
+
x: length25.parse(parameters.p) / 2,
|
|
3564
|
+
y: -length25.parse(parameters.h) / 2
|
|
3565
|
+
}
|
|
3566
|
+
],
|
|
3567
|
+
stroke_width: 0.1,
|
|
3568
|
+
pcb_silkscreen_path_id: ""
|
|
3569
|
+
};
|
|
3570
|
+
return {
|
|
3571
|
+
circuitJson: sodWithoutParsing11(parameters).concat(
|
|
3572
|
+
silkscreenLine,
|
|
3573
|
+
silkscreenRefText
|
|
3574
|
+
),
|
|
3575
|
+
parameters
|
|
3576
|
+
};
|
|
3577
|
+
};
|
|
3578
|
+
var getSodCoords11 = (parameters) => {
|
|
3579
|
+
const { pn, p } = parameters;
|
|
3580
|
+
if (pn === 1) {
|
|
3581
|
+
return { x: -p / 2, y: 0 };
|
|
3582
|
+
} else {
|
|
3583
|
+
return { x: p / 2, y: 0 };
|
|
3584
|
+
}
|
|
3585
|
+
};
|
|
3586
|
+
var sodWithoutParsing11 = (parameters) => {
|
|
3587
|
+
const pads = [];
|
|
3588
|
+
for (let i = 1; i <= parameters.num_pins; i++) {
|
|
3589
|
+
const { x, y } = getSodCoords11({
|
|
3590
|
+
pn: i,
|
|
3591
|
+
p: Number.parseFloat(parameters.p)
|
|
3592
|
+
});
|
|
3593
|
+
pads.push(
|
|
3594
|
+
rectpad(
|
|
3595
|
+
i,
|
|
3596
|
+
x,
|
|
3597
|
+
y,
|
|
3598
|
+
Number.parseFloat(parameters.pl),
|
|
3599
|
+
Number.parseFloat(parameters.pw)
|
|
3600
|
+
)
|
|
3601
|
+
);
|
|
3602
|
+
}
|
|
3603
|
+
return pads;
|
|
3604
|
+
};
|
|
3605
|
+
|
|
3606
|
+
// src/fn/sot89.ts
|
|
3607
|
+
import { z as z32 } from "zod";
|
|
3608
|
+
var sot89_def = z32.object({
|
|
3609
|
+
fn: z32.string(),
|
|
3610
|
+
num_pins: z32.union([z32.literal(3), z32.literal(5)]).default(3),
|
|
3611
|
+
w: z32.string().default("4.80mm"),
|
|
3612
|
+
h: z32.string().default("4.80mm"),
|
|
3613
|
+
pl: z32.string().default("1.3mm"),
|
|
3614
|
+
pw: z32.string().default("0.9mm"),
|
|
3615
|
+
p: z32.string().default("1.5mm"),
|
|
3616
|
+
string: z32.string().optional()
|
|
3535
3617
|
});
|
|
3536
3618
|
var sot89_3 = (parameters) => {
|
|
3537
3619
|
const pads = [];
|
|
3538
3620
|
const padGap = Number.parseFloat(parameters.p);
|
|
3539
3621
|
const padWidth = Number.parseFloat(parameters.pw);
|
|
3540
|
-
const
|
|
3622
|
+
const length39 = Number.parseFloat(parameters.w);
|
|
3541
3623
|
const padHeight = Number.parseFloat(parameters.pl);
|
|
3542
3624
|
pads.push(
|
|
3543
|
-
rectpad(1, -
|
|
3544
|
-
rectpad(2, -
|
|
3545
|
-
rectpad(3, -
|
|
3625
|
+
rectpad(1, -length39 / 2, padGap, padHeight, padWidth),
|
|
3626
|
+
rectpad(2, -length39 / 2 + (1.5 - 1.3) / 2, 0, 1.5, padWidth),
|
|
3627
|
+
rectpad(3, -length39 / 2, -padGap, padHeight, padWidth)
|
|
3546
3628
|
);
|
|
3547
3629
|
const silkscreenRefText = silkscreenRef(0, 0, 0.3);
|
|
3548
3630
|
const width = Number.parseFloat(parameters.w) / 2 - 1;
|
|
@@ -3582,7 +3664,7 @@ var sot89_5 = (parameters) => {
|
|
|
3582
3664
|
const pads = [];
|
|
3583
3665
|
const padGap = Number.parseFloat(parameters.p);
|
|
3584
3666
|
const padWidth = Number.parseFloat(parameters.pw);
|
|
3585
|
-
const
|
|
3667
|
+
const length39 = Number.parseFloat(parameters.w);
|
|
3586
3668
|
pads.push(
|
|
3587
3669
|
rectpad(1, -1.85, -1.5, 1.5, 0.7),
|
|
3588
3670
|
rectpad(2, -1.85, 1.5, 1.5, 0.7),
|
|
@@ -3650,18 +3732,18 @@ var sot89 = (raw_params) => {
|
|
|
3650
3732
|
|
|
3651
3733
|
// src/fn/to220.ts
|
|
3652
3734
|
import {
|
|
3653
|
-
length as
|
|
3735
|
+
length as length26
|
|
3654
3736
|
} from "circuit-json";
|
|
3655
|
-
import { z as
|
|
3656
|
-
var to220_def =
|
|
3657
|
-
fn:
|
|
3658
|
-
p:
|
|
3659
|
-
id:
|
|
3660
|
-
od:
|
|
3661
|
-
w:
|
|
3662
|
-
h:
|
|
3663
|
-
num_pins:
|
|
3664
|
-
string:
|
|
3737
|
+
import { z as z33 } from "zod";
|
|
3738
|
+
var to220_def = z33.object({
|
|
3739
|
+
fn: z33.string(),
|
|
3740
|
+
p: length26.optional().default("5.0mm"),
|
|
3741
|
+
id: length26.optional().default("1.0mm"),
|
|
3742
|
+
od: length26.optional().default("1.9mm"),
|
|
3743
|
+
w: length26.optional().default("13mm"),
|
|
3744
|
+
h: length26.optional().default("7mm"),
|
|
3745
|
+
num_pins: z33.number().optional(),
|
|
3746
|
+
string: z33.string().optional()
|
|
3665
3747
|
});
|
|
3666
3748
|
var to220 = (raw_params) => {
|
|
3667
3749
|
const parameters = to220_def.parse(raw_params);
|
|
@@ -3741,22 +3823,22 @@ var to220 = (raw_params) => {
|
|
|
3741
3823
|
};
|
|
3742
3824
|
|
|
3743
3825
|
// src/fn/minimelf.ts
|
|
3744
|
-
import { z as
|
|
3745
|
-
import { length as
|
|
3746
|
-
var minimelf_def =
|
|
3747
|
-
fn:
|
|
3748
|
-
num_pins:
|
|
3749
|
-
w:
|
|
3750
|
-
h:
|
|
3751
|
-
pl:
|
|
3752
|
-
pw:
|
|
3753
|
-
p:
|
|
3826
|
+
import { z as z34 } from "zod";
|
|
3827
|
+
import { length as length27 } from "circuit-json";
|
|
3828
|
+
var minimelf_def = z34.object({
|
|
3829
|
+
fn: z34.string(),
|
|
3830
|
+
num_pins: z34.literal(2).default(2),
|
|
3831
|
+
w: z34.string().default("5.40mm"),
|
|
3832
|
+
h: z34.string().default("2.30mm"),
|
|
3833
|
+
pl: z34.string().default("1.30mm"),
|
|
3834
|
+
pw: z34.string().default("1.70mm"),
|
|
3835
|
+
p: z34.string().default("3.5mm")
|
|
3754
3836
|
});
|
|
3755
3837
|
var minimelf = (raw_params) => {
|
|
3756
3838
|
const parameters = minimelf_def.parse(raw_params);
|
|
3757
3839
|
const silkscreenRefText = silkscreenRef(
|
|
3758
3840
|
0,
|
|
3759
|
-
|
|
3841
|
+
length27.parse(parameters.h) / 2 + 0.4,
|
|
3760
3842
|
0.3
|
|
3761
3843
|
);
|
|
3762
3844
|
const silkscreenLine = {
|
|
@@ -3765,20 +3847,20 @@ var minimelf = (raw_params) => {
|
|
|
3765
3847
|
pcb_component_id: "",
|
|
3766
3848
|
route: [
|
|
3767
3849
|
{
|
|
3768
|
-
x:
|
|
3769
|
-
y:
|
|
3850
|
+
x: length27.parse(parameters.p) / 2,
|
|
3851
|
+
y: length27.parse(parameters.h) / 2
|
|
3770
3852
|
},
|
|
3771
3853
|
{
|
|
3772
|
-
x: -
|
|
3773
|
-
y:
|
|
3854
|
+
x: -length27.parse(parameters.w) / 2,
|
|
3855
|
+
y: length27.parse(parameters.h) / 2
|
|
3774
3856
|
},
|
|
3775
3857
|
{
|
|
3776
|
-
x: -
|
|
3777
|
-
y: -
|
|
3858
|
+
x: -length27.parse(parameters.w) / 2,
|
|
3859
|
+
y: -length27.parse(parameters.h) / 2
|
|
3778
3860
|
},
|
|
3779
3861
|
{
|
|
3780
|
-
x:
|
|
3781
|
-
y: -
|
|
3862
|
+
x: length27.parse(parameters.p) / 2,
|
|
3863
|
+
y: -length27.parse(parameters.h) / 2
|
|
3782
3864
|
}
|
|
3783
3865
|
],
|
|
3784
3866
|
stroke_width: 0.1,
|
|
@@ -3817,22 +3899,22 @@ var miniMelfWithoutParsing = (parameters) => {
|
|
|
3817
3899
|
};
|
|
3818
3900
|
|
|
3819
3901
|
// src/fn/sod882d.ts
|
|
3820
|
-
import { z as
|
|
3821
|
-
import { length as
|
|
3822
|
-
var sod_def11 =
|
|
3823
|
-
fn:
|
|
3824
|
-
num_pins:
|
|
3825
|
-
w:
|
|
3826
|
-
h:
|
|
3827
|
-
pl:
|
|
3828
|
-
pw:
|
|
3829
|
-
p:
|
|
3902
|
+
import { z as z35 } from "zod";
|
|
3903
|
+
import { length as length28 } from "circuit-json";
|
|
3904
|
+
var sod_def11 = z35.object({
|
|
3905
|
+
fn: z35.string(),
|
|
3906
|
+
num_pins: z35.literal(2).default(2),
|
|
3907
|
+
w: z35.string().default("1.90mm"),
|
|
3908
|
+
h: z35.string().default("1.33mm"),
|
|
3909
|
+
pl: z35.string().default("0.5mm"),
|
|
3910
|
+
pw: z35.string().default("0.7mm"),
|
|
3911
|
+
p: z35.string().default("0.8mm")
|
|
3830
3912
|
});
|
|
3831
3913
|
var sod882d = (raw_params) => {
|
|
3832
3914
|
const parameters = sod_def11.parse(raw_params);
|
|
3833
3915
|
const silkscreenRefText = silkscreenRef(
|
|
3834
3916
|
0,
|
|
3835
|
-
|
|
3917
|
+
length28.parse(parameters.h) + 0.1,
|
|
3836
3918
|
0.3
|
|
3837
3919
|
);
|
|
3838
3920
|
const silkscreenLine = {
|
|
@@ -3841,34 +3923,34 @@ var sod882d = (raw_params) => {
|
|
|
3841
3923
|
pcb_component_id: "",
|
|
3842
3924
|
route: [
|
|
3843
3925
|
{
|
|
3844
|
-
x:
|
|
3845
|
-
y:
|
|
3926
|
+
x: length28.parse(parameters.p) / 2 + 0.1,
|
|
3927
|
+
y: length28.parse(parameters.h) / 2
|
|
3846
3928
|
},
|
|
3847
3929
|
{
|
|
3848
|
-
x: -
|
|
3849
|
-
y:
|
|
3930
|
+
x: -length28.parse(parameters.w) / 2,
|
|
3931
|
+
y: length28.parse(parameters.h) / 2
|
|
3850
3932
|
},
|
|
3851
3933
|
{
|
|
3852
|
-
x: -
|
|
3853
|
-
y: -
|
|
3934
|
+
x: -length28.parse(parameters.w) / 2,
|
|
3935
|
+
y: -length28.parse(parameters.h) / 2
|
|
3854
3936
|
},
|
|
3855
3937
|
{
|
|
3856
|
-
x:
|
|
3857
|
-
y: -
|
|
3938
|
+
x: length28.parse(parameters.p) / 2 + 0.1,
|
|
3939
|
+
y: -length28.parse(parameters.h) / 2
|
|
3858
3940
|
}
|
|
3859
3941
|
],
|
|
3860
3942
|
stroke_width: 0.1,
|
|
3861
3943
|
pcb_silkscreen_path_id: ""
|
|
3862
3944
|
};
|
|
3863
3945
|
return {
|
|
3864
|
-
circuitJson:
|
|
3946
|
+
circuitJson: sodWithoutParsing12(parameters).concat(
|
|
3865
3947
|
silkscreenLine,
|
|
3866
3948
|
silkscreenRefText
|
|
3867
3949
|
),
|
|
3868
3950
|
parameters
|
|
3869
3951
|
};
|
|
3870
3952
|
};
|
|
3871
|
-
var
|
|
3953
|
+
var getSodCoords12 = (parameters) => {
|
|
3872
3954
|
const { pn, p } = parameters;
|
|
3873
3955
|
if (pn === 1) {
|
|
3874
3956
|
return { x: -p / 2, y: 0 };
|
|
@@ -3876,10 +3958,10 @@ var getSodCoords11 = (parameters) => {
|
|
|
3876
3958
|
return { x: p / 2, y: 0 };
|
|
3877
3959
|
}
|
|
3878
3960
|
};
|
|
3879
|
-
var
|
|
3961
|
+
var sodWithoutParsing12 = (parameters) => {
|
|
3880
3962
|
const pads = [];
|
|
3881
3963
|
for (let i = 1; i <= parameters.num_pins; i++) {
|
|
3882
|
-
const { x, y } =
|
|
3964
|
+
const { x, y } = getSodCoords12({
|
|
3883
3965
|
pn: i,
|
|
3884
3966
|
p: Number.parseFloat(parameters.p)
|
|
3885
3967
|
});
|
|
@@ -3897,22 +3979,22 @@ var sodWithoutParsing11 = (parameters) => {
|
|
|
3897
3979
|
};
|
|
3898
3980
|
|
|
3899
3981
|
// src/fn/melf.ts
|
|
3900
|
-
import { z as
|
|
3901
|
-
import { length as
|
|
3902
|
-
var melf_def =
|
|
3903
|
-
fn:
|
|
3904
|
-
num_pins:
|
|
3905
|
-
w:
|
|
3906
|
-
h:
|
|
3907
|
-
pl:
|
|
3908
|
-
pw:
|
|
3909
|
-
p:
|
|
3982
|
+
import { z as z36 } from "zod";
|
|
3983
|
+
import { length as length29 } from "circuit-json";
|
|
3984
|
+
var melf_def = z36.object({
|
|
3985
|
+
fn: z36.string(),
|
|
3986
|
+
num_pins: z36.literal(2).default(2),
|
|
3987
|
+
w: z36.string().default("7.0mm"),
|
|
3988
|
+
h: z36.string().default("3.35mm"),
|
|
3989
|
+
pl: z36.string().default("1.50mm"),
|
|
3990
|
+
pw: z36.string().default("2.70mm"),
|
|
3991
|
+
p: z36.string().default("4.8mm")
|
|
3910
3992
|
});
|
|
3911
3993
|
var melf = (raw_params) => {
|
|
3912
3994
|
const parameters = melf_def.parse(raw_params);
|
|
3913
3995
|
const silkscreenRefText = silkscreenRef(
|
|
3914
3996
|
0,
|
|
3915
|
-
|
|
3997
|
+
length29.parse(parameters.h),
|
|
3916
3998
|
0.3
|
|
3917
3999
|
);
|
|
3918
4000
|
const silkscreenLine = {
|
|
@@ -3921,20 +4003,20 @@ var melf = (raw_params) => {
|
|
|
3921
4003
|
pcb_component_id: "",
|
|
3922
4004
|
route: [
|
|
3923
4005
|
{
|
|
3924
|
-
x:
|
|
3925
|
-
y:
|
|
4006
|
+
x: length29.parse(parameters.p) / 2,
|
|
4007
|
+
y: length29.parse(parameters.h) / 2
|
|
3926
4008
|
},
|
|
3927
4009
|
{
|
|
3928
|
-
x: -
|
|
3929
|
-
y:
|
|
4010
|
+
x: -length29.parse(parameters.w) / 2,
|
|
4011
|
+
y: length29.parse(parameters.h) / 2
|
|
3930
4012
|
},
|
|
3931
4013
|
{
|
|
3932
|
-
x: -
|
|
3933
|
-
y: -
|
|
4014
|
+
x: -length29.parse(parameters.w) / 2,
|
|
4015
|
+
y: -length29.parse(parameters.h) / 2
|
|
3934
4016
|
},
|
|
3935
4017
|
{
|
|
3936
|
-
x:
|
|
3937
|
-
y: -
|
|
4018
|
+
x: length29.parse(parameters.p) / 2,
|
|
4019
|
+
y: -length29.parse(parameters.h) / 2
|
|
3938
4020
|
}
|
|
3939
4021
|
],
|
|
3940
4022
|
stroke_width: 0.1,
|
|
@@ -3977,22 +4059,22 @@ var melfWithoutParsing = (parameters) => {
|
|
|
3977
4059
|
};
|
|
3978
4060
|
|
|
3979
4061
|
// src/fn/micromelf.ts
|
|
3980
|
-
import { z as
|
|
3981
|
-
import { length as
|
|
3982
|
-
var micromelf_def =
|
|
3983
|
-
fn:
|
|
3984
|
-
num_pins:
|
|
3985
|
-
w:
|
|
3986
|
-
h:
|
|
3987
|
-
pl:
|
|
3988
|
-
pw:
|
|
3989
|
-
p:
|
|
4062
|
+
import { z as z37 } from "zod";
|
|
4063
|
+
import { length as length30 } from "circuit-json";
|
|
4064
|
+
var micromelf_def = z37.object({
|
|
4065
|
+
fn: z37.string(),
|
|
4066
|
+
num_pins: z37.literal(2).default(2),
|
|
4067
|
+
w: z37.string().default("3.0mm"),
|
|
4068
|
+
h: z37.string().default("1.80mm"),
|
|
4069
|
+
pl: z37.string().default("0.80mm"),
|
|
4070
|
+
pw: z37.string().default("1.20mm"),
|
|
4071
|
+
p: z37.string().default("1.6mm")
|
|
3990
4072
|
});
|
|
3991
4073
|
var micromelf = (raw_params) => {
|
|
3992
4074
|
const parameters = micromelf_def.parse(raw_params);
|
|
3993
4075
|
const silkscreenRefText = silkscreenRef(
|
|
3994
4076
|
0,
|
|
3995
|
-
|
|
4077
|
+
length30.parse(parameters.h),
|
|
3996
4078
|
0.3
|
|
3997
4079
|
);
|
|
3998
4080
|
const silkscreenLine = {
|
|
@@ -4001,20 +4083,20 @@ var micromelf = (raw_params) => {
|
|
|
4001
4083
|
pcb_component_id: "",
|
|
4002
4084
|
route: [
|
|
4003
4085
|
{
|
|
4004
|
-
x:
|
|
4005
|
-
y:
|
|
4086
|
+
x: length30.parse(parameters.p) / 2,
|
|
4087
|
+
y: length30.parse(parameters.h) / 2
|
|
4006
4088
|
},
|
|
4007
4089
|
{
|
|
4008
|
-
x: -
|
|
4009
|
-
y:
|
|
4090
|
+
x: -length30.parse(parameters.w) / 2 - 0.1,
|
|
4091
|
+
y: length30.parse(parameters.h) / 2
|
|
4010
4092
|
},
|
|
4011
4093
|
{
|
|
4012
|
-
x: -
|
|
4013
|
-
y: -
|
|
4094
|
+
x: -length30.parse(parameters.w) / 2 - 0.1,
|
|
4095
|
+
y: -length30.parse(parameters.h) / 2
|
|
4014
4096
|
},
|
|
4015
4097
|
{
|
|
4016
|
-
x:
|
|
4017
|
-
y: -
|
|
4098
|
+
x: length30.parse(parameters.p) / 2,
|
|
4099
|
+
y: -length30.parse(parameters.h) / 2
|
|
4018
4100
|
}
|
|
4019
4101
|
],
|
|
4020
4102
|
stroke_width: 0.1,
|
|
@@ -4057,22 +4139,22 @@ var microMelfWithoutParsing = (parameters) => {
|
|
|
4057
4139
|
};
|
|
4058
4140
|
|
|
4059
4141
|
// src/fn/sma.ts
|
|
4060
|
-
import { z as
|
|
4061
|
-
import { length as
|
|
4062
|
-
var sma_def =
|
|
4063
|
-
fn:
|
|
4064
|
-
num_pins:
|
|
4065
|
-
w:
|
|
4066
|
-
h:
|
|
4067
|
-
pl:
|
|
4068
|
-
pw:
|
|
4069
|
-
p:
|
|
4142
|
+
import { z as z38 } from "zod";
|
|
4143
|
+
import { length as length31 } from "circuit-json";
|
|
4144
|
+
var sma_def = z38.object({
|
|
4145
|
+
fn: z38.string(),
|
|
4146
|
+
num_pins: z38.literal(2).default(2),
|
|
4147
|
+
w: z38.string().default("7.10mm"),
|
|
4148
|
+
h: z38.string().default("3.40mm"),
|
|
4149
|
+
pl: z38.string().default("2.45mm"),
|
|
4150
|
+
pw: z38.string().default("1.80mm"),
|
|
4151
|
+
p: z38.string().default("4.05mm")
|
|
4070
4152
|
});
|
|
4071
4153
|
var sma = (raw_params) => {
|
|
4072
4154
|
const parameters = sma_def.parse(raw_params);
|
|
4073
4155
|
const silkscreenRefText = silkscreenRef(
|
|
4074
4156
|
0,
|
|
4075
|
-
|
|
4157
|
+
length31.parse(parameters.h) / 2 + 0.5,
|
|
4076
4158
|
0.3
|
|
4077
4159
|
);
|
|
4078
4160
|
const silkscreenLine = {
|
|
@@ -4081,20 +4163,20 @@ var sma = (raw_params) => {
|
|
|
4081
4163
|
pcb_component_id: "",
|
|
4082
4164
|
route: [
|
|
4083
4165
|
{
|
|
4084
|
-
x:
|
|
4085
|
-
y:
|
|
4166
|
+
x: length31.parse(parameters.p) / 2,
|
|
4167
|
+
y: length31.parse(parameters.h) / 2
|
|
4086
4168
|
},
|
|
4087
4169
|
{
|
|
4088
|
-
x: -
|
|
4089
|
-
y:
|
|
4170
|
+
x: -length31.parse(parameters.w) / 2 - 0.5,
|
|
4171
|
+
y: length31.parse(parameters.h) / 2
|
|
4090
4172
|
},
|
|
4091
4173
|
{
|
|
4092
|
-
x: -
|
|
4093
|
-
y: -
|
|
4174
|
+
x: -length31.parse(parameters.w) / 2 - 0.5,
|
|
4175
|
+
y: -length31.parse(parameters.h) / 2
|
|
4094
4176
|
},
|
|
4095
4177
|
{
|
|
4096
|
-
x:
|
|
4097
|
-
y: -
|
|
4178
|
+
x: length31.parse(parameters.p) / 2,
|
|
4179
|
+
y: -length31.parse(parameters.h) / 2
|
|
4098
4180
|
}
|
|
4099
4181
|
],
|
|
4100
4182
|
stroke_width: 0.1,
|
|
@@ -4136,22 +4218,22 @@ var smaWithoutParsing = (parameters) => {
|
|
|
4136
4218
|
};
|
|
4137
4219
|
|
|
4138
4220
|
// src/fn/smf.ts
|
|
4139
|
-
import { z as
|
|
4140
|
-
import { length as
|
|
4141
|
-
var smf_def =
|
|
4142
|
-
fn:
|
|
4143
|
-
num_pins:
|
|
4144
|
-
w:
|
|
4145
|
-
h:
|
|
4146
|
-
pl:
|
|
4147
|
-
pw:
|
|
4148
|
-
p:
|
|
4221
|
+
import { z as z39 } from "zod";
|
|
4222
|
+
import { length as length32 } from "circuit-json";
|
|
4223
|
+
var smf_def = z39.object({
|
|
4224
|
+
fn: z39.string(),
|
|
4225
|
+
num_pins: z39.literal(2).default(2),
|
|
4226
|
+
w: z39.string().default("4.80mm"),
|
|
4227
|
+
h: z39.string().default("2.10mm"),
|
|
4228
|
+
pl: z39.string().default("1.30mm"),
|
|
4229
|
+
pw: z39.string().default("1.40mm"),
|
|
4230
|
+
p: z39.string().default("2.9mm")
|
|
4149
4231
|
});
|
|
4150
4232
|
var smf = (raw_params) => {
|
|
4151
4233
|
const parameters = smf_def.parse(raw_params);
|
|
4152
4234
|
const silkscreenRefText = silkscreenRef(
|
|
4153
4235
|
0,
|
|
4154
|
-
|
|
4236
|
+
length32.parse(parameters.h) - 0.5,
|
|
4155
4237
|
0.3
|
|
4156
4238
|
);
|
|
4157
4239
|
const silkscreenLine = {
|
|
@@ -4160,20 +4242,20 @@ var smf = (raw_params) => {
|
|
|
4160
4242
|
pcb_component_id: "",
|
|
4161
4243
|
route: [
|
|
4162
4244
|
{
|
|
4163
|
-
x:
|
|
4164
|
-
y:
|
|
4245
|
+
x: length32.parse(parameters.p) / 2,
|
|
4246
|
+
y: length32.parse(parameters.h) / 2
|
|
4165
4247
|
},
|
|
4166
4248
|
{
|
|
4167
|
-
x: -
|
|
4168
|
-
y:
|
|
4249
|
+
x: -length32.parse(parameters.w) / 2,
|
|
4250
|
+
y: length32.parse(parameters.h) / 2
|
|
4169
4251
|
},
|
|
4170
4252
|
{
|
|
4171
|
-
x: -
|
|
4172
|
-
y: -
|
|
4253
|
+
x: -length32.parse(parameters.w) / 2,
|
|
4254
|
+
y: -length32.parse(parameters.h) / 2
|
|
4173
4255
|
},
|
|
4174
4256
|
{
|
|
4175
|
-
x:
|
|
4176
|
-
y: -
|
|
4257
|
+
x: length32.parse(parameters.p) / 2,
|
|
4258
|
+
y: -length32.parse(parameters.h) / 2
|
|
4177
4259
|
}
|
|
4178
4260
|
],
|
|
4179
4261
|
stroke_width: 0.1,
|
|
@@ -4216,22 +4298,22 @@ var smfWithoutParsing = (parameters) => {
|
|
|
4216
4298
|
};
|
|
4217
4299
|
|
|
4218
4300
|
// src/fn/smb.ts
|
|
4219
|
-
import { z as
|
|
4220
|
-
import { length as
|
|
4221
|
-
var smb_def =
|
|
4222
|
-
fn:
|
|
4223
|
-
num_pins:
|
|
4224
|
-
w:
|
|
4225
|
-
h:
|
|
4226
|
-
pl:
|
|
4227
|
-
pw:
|
|
4228
|
-
p:
|
|
4301
|
+
import { z as z40 } from "zod";
|
|
4302
|
+
import { length as length33 } from "circuit-json";
|
|
4303
|
+
var smb_def = z40.object({
|
|
4304
|
+
fn: z40.string(),
|
|
4305
|
+
num_pins: z40.literal(2).default(2),
|
|
4306
|
+
w: z40.string().default("7.30mm"),
|
|
4307
|
+
h: z40.string().default("4.40mm"),
|
|
4308
|
+
pl: z40.string().default("2.50mm"),
|
|
4309
|
+
pw: z40.string().default("2.30mm"),
|
|
4310
|
+
p: z40.string().default("4.30mm")
|
|
4229
4311
|
});
|
|
4230
4312
|
var smb = (raw_params) => {
|
|
4231
4313
|
const parameters = smb_def.parse(raw_params);
|
|
4232
4314
|
const silkscreenRefText = silkscreenRef(
|
|
4233
4315
|
0,
|
|
4234
|
-
|
|
4316
|
+
length33.parse(parameters.h) / 2 + 0.5,
|
|
4235
4317
|
0.3
|
|
4236
4318
|
);
|
|
4237
4319
|
const silkscreenLine = {
|
|
@@ -4240,20 +4322,20 @@ var smb = (raw_params) => {
|
|
|
4240
4322
|
pcb_component_id: "",
|
|
4241
4323
|
route: [
|
|
4242
4324
|
{
|
|
4243
|
-
x:
|
|
4244
|
-
y:
|
|
4325
|
+
x: length33.parse(parameters.p) / 2,
|
|
4326
|
+
y: length33.parse(parameters.h) / 2
|
|
4245
4327
|
},
|
|
4246
4328
|
{
|
|
4247
|
-
x: -
|
|
4248
|
-
y:
|
|
4329
|
+
x: -length33.parse(parameters.w) / 2 - 0.1,
|
|
4330
|
+
y: length33.parse(parameters.h) / 2
|
|
4249
4331
|
},
|
|
4250
4332
|
{
|
|
4251
|
-
x: -
|
|
4252
|
-
y: -
|
|
4333
|
+
x: -length33.parse(parameters.w) / 2 - 0.1,
|
|
4334
|
+
y: -length33.parse(parameters.h) / 2
|
|
4253
4335
|
},
|
|
4254
4336
|
{
|
|
4255
|
-
x:
|
|
4256
|
-
y: -
|
|
4337
|
+
x: length33.parse(parameters.p) / 2,
|
|
4338
|
+
y: -length33.parse(parameters.h) / 2
|
|
4257
4339
|
}
|
|
4258
4340
|
],
|
|
4259
4341
|
stroke_width: 0.1,
|
|
@@ -4296,27 +4378,27 @@ var smbWithoutParsing = (parameters) => {
|
|
|
4296
4378
|
};
|
|
4297
4379
|
|
|
4298
4380
|
// src/fn/vssop8.ts
|
|
4299
|
-
import { z as
|
|
4300
|
-
import { length as
|
|
4301
|
-
var vssop8_def =
|
|
4302
|
-
fn:
|
|
4303
|
-
num_pins:
|
|
4304
|
-
w:
|
|
4305
|
-
h:
|
|
4306
|
-
p:
|
|
4307
|
-
pl:
|
|
4308
|
-
pw:
|
|
4381
|
+
import { z as z41 } from "zod";
|
|
4382
|
+
import { length as length34 } from "circuit-json";
|
|
4383
|
+
var vssop8_def = z41.object({
|
|
4384
|
+
fn: z41.string(),
|
|
4385
|
+
num_pins: z41.literal(8).default(8),
|
|
4386
|
+
w: z41.string().default("3.06mm"),
|
|
4387
|
+
h: z41.string().default("3.14mm"),
|
|
4388
|
+
p: z41.string().default("0.65mm"),
|
|
4389
|
+
pl: z41.string().default("1.6mm"),
|
|
4390
|
+
pw: z41.string().default("0.5mm")
|
|
4309
4391
|
});
|
|
4310
4392
|
var vssop8 = (raw_params) => {
|
|
4311
4393
|
const parameters = vssop8_def.parse(raw_params);
|
|
4312
|
-
const pad_spacing =
|
|
4394
|
+
const pad_spacing = length34.parse(parameters.p);
|
|
4313
4395
|
const silkscreenRefText = silkscreenRef(
|
|
4314
4396
|
0,
|
|
4315
|
-
|
|
4397
|
+
length34.parse(parameters.h) / 2 + 0.5,
|
|
4316
4398
|
0.3
|
|
4317
4399
|
);
|
|
4318
|
-
const silkscreenBoxWidth =
|
|
4319
|
-
const silkscreenBoxHeight =
|
|
4400
|
+
const silkscreenBoxWidth = length34.parse(parameters.w);
|
|
4401
|
+
const silkscreenBoxHeight = length34.parse(parameters.h);
|
|
4320
4402
|
const silkscreenTopLine = {
|
|
4321
4403
|
type: "pcb_silkscreen_path",
|
|
4322
4404
|
layer: "top",
|
|
@@ -4372,7 +4454,7 @@ var getVssop8PadCoord = (parameters) => {
|
|
|
4372
4454
|
const col = pn <= 4 ? -1 : 1;
|
|
4373
4455
|
const row = 1.5 - (pn - 1) % 4;
|
|
4374
4456
|
return {
|
|
4375
|
-
x: col *
|
|
4457
|
+
x: col * length34.parse("1.8mm"),
|
|
4376
4458
|
y: row * pad_spacing
|
|
4377
4459
|
};
|
|
4378
4460
|
};
|
|
@@ -4397,16 +4479,16 @@ var getVssop8Pads = (parameters, pad_spacing) => {
|
|
|
4397
4479
|
};
|
|
4398
4480
|
|
|
4399
4481
|
// src/fn/smc.ts
|
|
4400
|
-
import { z as
|
|
4401
|
-
import { length as
|
|
4402
|
-
var smc_def =
|
|
4403
|
-
fn:
|
|
4404
|
-
num_pins:
|
|
4405
|
-
w:
|
|
4406
|
-
h:
|
|
4407
|
-
pl:
|
|
4408
|
-
pw:
|
|
4409
|
-
p:
|
|
4482
|
+
import { z as z42 } from "zod";
|
|
4483
|
+
import { length as length35 } from "circuit-json";
|
|
4484
|
+
var smc_def = z42.object({
|
|
4485
|
+
fn: z42.string(),
|
|
4486
|
+
num_pins: z42.literal(2).default(2),
|
|
4487
|
+
w: z42.string().default("10.70mm"),
|
|
4488
|
+
h: z42.string().default("6.60mm"),
|
|
4489
|
+
pl: z42.string().default("3.30mm"),
|
|
4490
|
+
pw: z42.string().default("2.50mm"),
|
|
4491
|
+
p: z42.string().default("6.80mm")
|
|
4410
4492
|
});
|
|
4411
4493
|
var smc = (raw_params) => {
|
|
4412
4494
|
const parameters = smc_def.parse(raw_params);
|
|
@@ -4417,20 +4499,20 @@ var smc = (raw_params) => {
|
|
|
4417
4499
|
pcb_component_id: "",
|
|
4418
4500
|
route: [
|
|
4419
4501
|
{
|
|
4420
|
-
x:
|
|
4421
|
-
y:
|
|
4502
|
+
x: length35.parse(parameters.p) / 2,
|
|
4503
|
+
y: length35.parse(parameters.h) / 2 - 0.8
|
|
4422
4504
|
},
|
|
4423
4505
|
{
|
|
4424
|
-
x: -
|
|
4425
|
-
y:
|
|
4506
|
+
x: -length35.parse(parameters.w) / 2 - 0.8,
|
|
4507
|
+
y: length35.parse(parameters.h) / 2 - 0.8
|
|
4426
4508
|
},
|
|
4427
4509
|
{
|
|
4428
|
-
x: -
|
|
4429
|
-
y: -
|
|
4510
|
+
x: -length35.parse(parameters.w) / 2 - 0.8,
|
|
4511
|
+
y: -length35.parse(parameters.h) / 2 + 0.8
|
|
4430
4512
|
},
|
|
4431
4513
|
{
|
|
4432
|
-
x:
|
|
4433
|
-
y: -
|
|
4514
|
+
x: length35.parse(parameters.p) / 2,
|
|
4515
|
+
y: -length35.parse(parameters.h) / 2 + 0.8
|
|
4434
4516
|
}
|
|
4435
4517
|
],
|
|
4436
4518
|
stroke_width: 0.1,
|
|
@@ -4472,16 +4554,16 @@ var smcWithoutParsing = (parameters) => {
|
|
|
4472
4554
|
};
|
|
4473
4555
|
|
|
4474
4556
|
// src/fn/sot223.ts
|
|
4475
|
-
import { z as
|
|
4476
|
-
var sot223_def =
|
|
4477
|
-
fn:
|
|
4478
|
-
num_pins:
|
|
4479
|
-
w:
|
|
4480
|
-
h:
|
|
4481
|
-
pl:
|
|
4482
|
-
pw:
|
|
4483
|
-
p:
|
|
4484
|
-
string:
|
|
4557
|
+
import { z as z43 } from "zod";
|
|
4558
|
+
var sot223_def = z43.object({
|
|
4559
|
+
fn: z43.string(),
|
|
4560
|
+
num_pins: z43.number().default(4),
|
|
4561
|
+
w: z43.string().default("8.50mm"),
|
|
4562
|
+
h: z43.string().default("6.90mm"),
|
|
4563
|
+
pl: z43.string().default("2mm"),
|
|
4564
|
+
pw: z43.string().default("1.5mm"),
|
|
4565
|
+
p: z43.string().default("2.30mm"),
|
|
4566
|
+
string: z43.string().optional()
|
|
4485
4567
|
});
|
|
4486
4568
|
var sot223 = (raw_params) => {
|
|
4487
4569
|
const match = raw_params.string?.match(/^sot223_(\d+)/);
|
|
@@ -4727,16 +4809,16 @@ var sot223_6 = (parameters) => {
|
|
|
4727
4809
|
};
|
|
4728
4810
|
|
|
4729
4811
|
// src/fn/sot23w.ts
|
|
4730
|
-
import { z as
|
|
4731
|
-
var sot23w_def =
|
|
4732
|
-
fn:
|
|
4733
|
-
num_pins:
|
|
4734
|
-
w:
|
|
4735
|
-
h:
|
|
4736
|
-
pl:
|
|
4737
|
-
pw:
|
|
4738
|
-
p:
|
|
4739
|
-
string:
|
|
4812
|
+
import { z as z44 } from "zod";
|
|
4813
|
+
var sot23w_def = z44.object({
|
|
4814
|
+
fn: z44.string(),
|
|
4815
|
+
num_pins: z44.number().default(3),
|
|
4816
|
+
w: z44.string().default("3.40mm"),
|
|
4817
|
+
h: z44.string().default("3.30mm"),
|
|
4818
|
+
pl: z44.string().default("1mm"),
|
|
4819
|
+
pw: z44.string().default("0.7mm"),
|
|
4820
|
+
p: z44.string().default("1.2mm"),
|
|
4821
|
+
string: z44.string().optional()
|
|
4740
4822
|
});
|
|
4741
4823
|
var sot23w = (raw_params) => {
|
|
4742
4824
|
const match = raw_params.string?.match(/^sot23w_(\d+)/);
|
|
@@ -4824,16 +4906,16 @@ var sot23w_3 = (parameters) => {
|
|
|
4824
4906
|
};
|
|
4825
4907
|
|
|
4826
4908
|
// src/fn/to92s.ts
|
|
4827
|
-
import { z as
|
|
4828
|
-
var to92s_def =
|
|
4829
|
-
fn:
|
|
4830
|
-
num_pins:
|
|
4831
|
-
p:
|
|
4832
|
-
id:
|
|
4833
|
-
od:
|
|
4834
|
-
w:
|
|
4835
|
-
h:
|
|
4836
|
-
string:
|
|
4909
|
+
import { z as z45 } from "zod";
|
|
4910
|
+
var to92s_def = z45.object({
|
|
4911
|
+
fn: z45.string(),
|
|
4912
|
+
num_pins: z45.union([z45.literal(3), z45.literal(2)]).default(3),
|
|
4913
|
+
p: z45.string().default("1.27mm"),
|
|
4914
|
+
id: z45.string().default("0.72mm"),
|
|
4915
|
+
od: z45.string().default("0.95mm"),
|
|
4916
|
+
w: z45.string().default("2.5mm"),
|
|
4917
|
+
h: z45.string().default("4.2mm"),
|
|
4918
|
+
string: z45.string().optional()
|
|
4837
4919
|
});
|
|
4838
4920
|
var to92s_3 = (parameters) => {
|
|
4839
4921
|
const { p, id, od, w, h } = parameters;
|
|
@@ -4900,9 +4982,9 @@ var to92s = (raw_params) => {
|
|
|
4900
4982
|
|
|
4901
4983
|
// src/fn/jst.ts
|
|
4902
4984
|
import {
|
|
4903
|
-
length as
|
|
4985
|
+
length as length36
|
|
4904
4986
|
} from "circuit-json";
|
|
4905
|
-
import { z as
|
|
4987
|
+
import { z as z46 } from "zod";
|
|
4906
4988
|
|
|
4907
4989
|
// src/helpers/platedHoleWithRectPad.ts
|
|
4908
4990
|
import { mm as mm4 } from "@tscircuit/mm";
|
|
@@ -4925,14 +5007,14 @@ var platedHoleWithRectPad = (pn, x, y, holeDiameter, rectPadWidth, rectPadHeight
|
|
|
4925
5007
|
};
|
|
4926
5008
|
|
|
4927
5009
|
// src/fn/jst.ts
|
|
4928
|
-
var jst_def =
|
|
4929
|
-
fn:
|
|
4930
|
-
p:
|
|
4931
|
-
id:
|
|
4932
|
-
pw:
|
|
4933
|
-
pl:
|
|
4934
|
-
w:
|
|
4935
|
-
h:
|
|
5010
|
+
var jst_def = z46.object({
|
|
5011
|
+
fn: z46.string(),
|
|
5012
|
+
p: length36.optional().default("2.2mm"),
|
|
5013
|
+
id: length36.optional().default("0.70mm"),
|
|
5014
|
+
pw: length36.optional().default("1.20mm"),
|
|
5015
|
+
pl: length36.optional().default("1.20mm"),
|
|
5016
|
+
w: length36.optional().default("6mm"),
|
|
5017
|
+
h: length36.optional().default("5mm")
|
|
4936
5018
|
});
|
|
4937
5019
|
var jst = (raw_params) => {
|
|
4938
5020
|
const parameters = jst_def.parse(raw_params);
|
|
@@ -4968,22 +5050,22 @@ var jst = (raw_params) => {
|
|
|
4968
5050
|
};
|
|
4969
5051
|
|
|
4970
5052
|
// src/fn/sod110.ts
|
|
4971
|
-
import { z as
|
|
4972
|
-
import { length as
|
|
4973
|
-
var sod_def12 =
|
|
4974
|
-
fn:
|
|
4975
|
-
num_pins:
|
|
4976
|
-
w:
|
|
4977
|
-
h:
|
|
4978
|
-
pl:
|
|
4979
|
-
pw:
|
|
4980
|
-
p:
|
|
5053
|
+
import { z as z47 } from "zod";
|
|
5054
|
+
import { length as length37 } from "circuit-json";
|
|
5055
|
+
var sod_def12 = z47.object({
|
|
5056
|
+
fn: z47.string(),
|
|
5057
|
+
num_pins: z47.literal(2).default(2),
|
|
5058
|
+
w: z47.string().default("3.30mm"),
|
|
5059
|
+
h: z47.string().default("1.70mm"),
|
|
5060
|
+
pl: z47.string().default("0.80mm"),
|
|
5061
|
+
pw: z47.string().default("1mm"),
|
|
5062
|
+
p: z47.string().default("1.90mm")
|
|
4981
5063
|
});
|
|
4982
5064
|
var sod110 = (raw_params) => {
|
|
4983
5065
|
const parameters = sod_def12.parse(raw_params);
|
|
4984
5066
|
const silkscreenRefText = silkscreenRef(
|
|
4985
5067
|
0,
|
|
4986
|
-
|
|
5068
|
+
length37.parse(parameters.h) / 2 + 0.5,
|
|
4987
5069
|
0.3
|
|
4988
5070
|
);
|
|
4989
5071
|
const silkscreenLine = {
|
|
@@ -4992,44 +5074,44 @@ var sod110 = (raw_params) => {
|
|
|
4992
5074
|
pcb_component_id: "",
|
|
4993
5075
|
route: [
|
|
4994
5076
|
{
|
|
4995
|
-
x:
|
|
4996
|
-
y:
|
|
5077
|
+
x: length37.parse(parameters.p) / 2,
|
|
5078
|
+
y: length37.parse(parameters.h) / 2
|
|
4997
5079
|
},
|
|
4998
5080
|
{
|
|
4999
|
-
x: -
|
|
5000
|
-
y:
|
|
5081
|
+
x: -length37.parse(parameters.w) / 2,
|
|
5082
|
+
y: length37.parse(parameters.h) / 2
|
|
5001
5083
|
},
|
|
5002
5084
|
{
|
|
5003
|
-
x: -
|
|
5004
|
-
y: -
|
|
5085
|
+
x: -length37.parse(parameters.w) / 2,
|
|
5086
|
+
y: -length37.parse(parameters.h) / 2
|
|
5005
5087
|
},
|
|
5006
5088
|
{
|
|
5007
|
-
x:
|
|
5008
|
-
y: -
|
|
5089
|
+
x: length37.parse(parameters.p) / 2,
|
|
5090
|
+
y: -length37.parse(parameters.h) / 2
|
|
5009
5091
|
}
|
|
5010
5092
|
],
|
|
5011
5093
|
stroke_width: 0.1,
|
|
5012
5094
|
pcb_silkscreen_path_id: ""
|
|
5013
5095
|
};
|
|
5014
5096
|
return {
|
|
5015
|
-
circuitJson:
|
|
5097
|
+
circuitJson: sodWithoutParsing13(parameters).concat(
|
|
5016
5098
|
silkscreenLine,
|
|
5017
5099
|
silkscreenRefText
|
|
5018
5100
|
),
|
|
5019
5101
|
parameters
|
|
5020
5102
|
};
|
|
5021
5103
|
};
|
|
5022
|
-
var
|
|
5104
|
+
var getSodCoords13 = (parameters) => {
|
|
5023
5105
|
const { pn, p } = parameters;
|
|
5024
5106
|
if (pn === 1) {
|
|
5025
5107
|
return { x: -p / 2, y: 0 };
|
|
5026
5108
|
}
|
|
5027
5109
|
return { x: p / 2, y: 0 };
|
|
5028
5110
|
};
|
|
5029
|
-
var
|
|
5111
|
+
var sodWithoutParsing13 = (parameters) => {
|
|
5030
5112
|
const pads = [];
|
|
5031
5113
|
for (let i = 1; i <= parameters.num_pins; i++) {
|
|
5032
|
-
const { x, y } =
|
|
5114
|
+
const { x, y } = getSodCoords13({
|
|
5033
5115
|
pn: i,
|
|
5034
5116
|
p: Number.parseFloat(parameters.p)
|
|
5035
5117
|
});
|
|
@@ -5046,6 +5128,142 @@ var sodWithoutParsing12 = (parameters) => {
|
|
|
5046
5128
|
return pads;
|
|
5047
5129
|
};
|
|
5048
5130
|
|
|
5131
|
+
// src/fn/msop.ts
|
|
5132
|
+
import { z as z48 } from "zod";
|
|
5133
|
+
import { length as length38 } from "circuit-json";
|
|
5134
|
+
var getDefaultValues = (num_pins) => {
|
|
5135
|
+
switch (num_pins) {
|
|
5136
|
+
case 10:
|
|
5137
|
+
return {
|
|
5138
|
+
w: "3.10mm",
|
|
5139
|
+
h: "3.32mm",
|
|
5140
|
+
p: "0.5mm",
|
|
5141
|
+
pl: "1.63mm",
|
|
5142
|
+
pw: "0.33mm"
|
|
5143
|
+
};
|
|
5144
|
+
case 12:
|
|
5145
|
+
return {
|
|
5146
|
+
w: "3mm",
|
|
5147
|
+
h: "4mm",
|
|
5148
|
+
p: "0.65mm",
|
|
5149
|
+
pl: "0.88mm",
|
|
5150
|
+
pw: "0.4mm"
|
|
5151
|
+
};
|
|
5152
|
+
case 16:
|
|
5153
|
+
return {
|
|
5154
|
+
w: "3.10mm",
|
|
5155
|
+
h: "4mm",
|
|
5156
|
+
p: "0.5mm",
|
|
5157
|
+
pl: "0.88mm",
|
|
5158
|
+
pw: "0.3mm"
|
|
5159
|
+
};
|
|
5160
|
+
default:
|
|
5161
|
+
return {
|
|
5162
|
+
w: "3.10mm",
|
|
5163
|
+
h: "3.32mm",
|
|
5164
|
+
p: "0.65mm",
|
|
5165
|
+
pl: "1.63mm",
|
|
5166
|
+
pw: "0.4mm"
|
|
5167
|
+
};
|
|
5168
|
+
}
|
|
5169
|
+
};
|
|
5170
|
+
var msop_def = z48.object({
|
|
5171
|
+
fn: z48.string(),
|
|
5172
|
+
num_pins: z48.union([z48.literal(8), z48.literal(10), z48.literal(12), z48.literal(16)]).default(8),
|
|
5173
|
+
w: z48.string().optional(),
|
|
5174
|
+
h: z48.string().optional(),
|
|
5175
|
+
p: z48.string().optional(),
|
|
5176
|
+
pl: z48.string().optional(),
|
|
5177
|
+
pw: z48.string().optional(),
|
|
5178
|
+
string: z48.string().optional()
|
|
5179
|
+
});
|
|
5180
|
+
var getMsopCoords = (pinCount, pn, w, p) => {
|
|
5181
|
+
const half = pinCount / 2;
|
|
5182
|
+
const rowIndex = (pn - 1) % half;
|
|
5183
|
+
const col = pn <= half ? -1 : 1;
|
|
5184
|
+
const row = (half - 1) / 2 - rowIndex;
|
|
5185
|
+
return {
|
|
5186
|
+
x: col * length38.parse("2mm"),
|
|
5187
|
+
y: row * p
|
|
5188
|
+
};
|
|
5189
|
+
};
|
|
5190
|
+
var msop = (raw_params) => {
|
|
5191
|
+
const parameters = msop_def.parse(raw_params);
|
|
5192
|
+
const defaults = getDefaultValues(parameters.num_pins);
|
|
5193
|
+
const w = length38.parse(parameters.w || defaults.w);
|
|
5194
|
+
const h = length38.parse(parameters.h || defaults.h);
|
|
5195
|
+
const p = length38.parse(parameters.p || defaults.p);
|
|
5196
|
+
const pl = length38.parse(parameters.pl || defaults.pl);
|
|
5197
|
+
const pw = length38.parse(parameters.pw || defaults.pw);
|
|
5198
|
+
const pads = [];
|
|
5199
|
+
for (let i = 0; i < parameters.num_pins; i++) {
|
|
5200
|
+
const { x, y } = getMsopCoords(parameters.num_pins, i + 1, w, p);
|
|
5201
|
+
pads.push(rectpad(i + 1, x, y, pl, pw));
|
|
5202
|
+
}
|
|
5203
|
+
const silkscreenBoxWidth = w;
|
|
5204
|
+
const silkscreenBoxHeight = h;
|
|
5205
|
+
const silkscreenTopLine = {
|
|
5206
|
+
type: "pcb_silkscreen_path",
|
|
5207
|
+
layer: "top",
|
|
5208
|
+
pcb_component_id: "",
|
|
5209
|
+
route: [
|
|
5210
|
+
{ x: -silkscreenBoxWidth / 2, y: silkscreenBoxHeight / 2 },
|
|
5211
|
+
{ x: silkscreenBoxWidth / 2, y: silkscreenBoxHeight / 2 }
|
|
5212
|
+
],
|
|
5213
|
+
stroke_width: 0.05,
|
|
5214
|
+
pcb_silkscreen_path_id: ""
|
|
5215
|
+
};
|
|
5216
|
+
const silkscreenBottomLine = {
|
|
5217
|
+
type: "pcb_silkscreen_path",
|
|
5218
|
+
layer: "top",
|
|
5219
|
+
pcb_component_id: "",
|
|
5220
|
+
route: [
|
|
5221
|
+
{ x: -silkscreenBoxWidth / 2, y: -silkscreenBoxHeight / 2 },
|
|
5222
|
+
{ x: silkscreenBoxWidth / 2, y: -silkscreenBoxHeight / 2 }
|
|
5223
|
+
],
|
|
5224
|
+
stroke_width: 0.05,
|
|
5225
|
+
pcb_silkscreen_path_id: ""
|
|
5226
|
+
};
|
|
5227
|
+
const pin1Position = getMsopCoords(
|
|
5228
|
+
parameters.num_pins,
|
|
5229
|
+
1,
|
|
5230
|
+
silkscreenBoxWidth,
|
|
5231
|
+
p
|
|
5232
|
+
);
|
|
5233
|
+
const pin1MarkerPosition = {
|
|
5234
|
+
x: pin1Position.x - 0.8,
|
|
5235
|
+
y: pin1Position.y
|
|
5236
|
+
};
|
|
5237
|
+
const pin1Marking = {
|
|
5238
|
+
type: "pcb_silkscreen_path",
|
|
5239
|
+
layer: "top",
|
|
5240
|
+
pcb_component_id: "pin_marker_1",
|
|
5241
|
+
route: [
|
|
5242
|
+
{ x: pin1MarkerPosition.x - 0.4, y: pin1MarkerPosition.y },
|
|
5243
|
+
{ x: pin1MarkerPosition.x - 0.7, y: pin1MarkerPosition.y + 0.3 },
|
|
5244
|
+
{ x: pin1MarkerPosition.x - 0.7, y: pin1MarkerPosition.y - 0.3 },
|
|
5245
|
+
{ x: pin1MarkerPosition.x - 0.4, y: pin1MarkerPosition.y }
|
|
5246
|
+
],
|
|
5247
|
+
stroke_width: 0.05,
|
|
5248
|
+
pcb_silkscreen_path_id: "pin_marker_1"
|
|
5249
|
+
};
|
|
5250
|
+
const silkscreenRefText = silkscreenRef(
|
|
5251
|
+
0,
|
|
5252
|
+
silkscreenBoxHeight / 2 + 0.5,
|
|
5253
|
+
0.3
|
|
5254
|
+
);
|
|
5255
|
+
return {
|
|
5256
|
+
circuitJson: [
|
|
5257
|
+
...pads,
|
|
5258
|
+
silkscreenTopLine,
|
|
5259
|
+
silkscreenBottomLine,
|
|
5260
|
+
silkscreenRefText,
|
|
5261
|
+
pin1Marking
|
|
5262
|
+
],
|
|
5263
|
+
parameters
|
|
5264
|
+
};
|
|
5265
|
+
};
|
|
5266
|
+
|
|
5049
5267
|
// src/helpers/is-not-null.ts
|
|
5050
5268
|
function isNotNull(value) {
|
|
5051
5269
|
return value !== null;
|