jscad-electronics 0.0.112 → 0.0.114
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 +16 -1
- package/dist/index.js +255 -85
- package/dist/index.js.map +1 -1
- package/dist/vanilla.js +168 -1
- package/dist/vanilla.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -101,6 +101,21 @@ declare const Footprinter3d: ({ footprint }: {
|
|
|
101
101
|
footprint: string;
|
|
102
102
|
}) => react_jsx_runtime.JSX.Element | null;
|
|
103
103
|
|
|
104
|
+
declare const StampBoard: ({ bodyWidth, boardThickness, leadWidth, leadLength, leadsPitch, leadsLeft, leadsRight, leadsTop, leadsBottom, innerHoles, innerHoleEdgeDistance, innerHoleDiameter, }: {
|
|
105
|
+
bodyWidth?: number;
|
|
106
|
+
boardThickness?: number;
|
|
107
|
+
leadWidth?: number;
|
|
108
|
+
leadLength?: number;
|
|
109
|
+
leadsPitch?: number;
|
|
110
|
+
leadsLeft?: number;
|
|
111
|
+
leadsRight?: number;
|
|
112
|
+
leadsTop?: number;
|
|
113
|
+
leadsBottom?: number;
|
|
114
|
+
innerHoles?: boolean;
|
|
115
|
+
innerHoleEdgeDistance?: number;
|
|
116
|
+
innerHoleDiameter?: number;
|
|
117
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
118
|
+
|
|
104
119
|
declare const SOT233P: ({ fullWidth, fullLength }: {
|
|
105
120
|
fullWidth?: number | undefined;
|
|
106
121
|
fullLength?: number | undefined;
|
|
@@ -337,4 +352,4 @@ declare const TO220: () => react_jsx_runtime.JSX.Element;
|
|
|
337
352
|
|
|
338
353
|
declare const TO92: () => react_jsx_runtime.JSX.Element;
|
|
339
354
|
|
|
340
|
-
export { A01005, A0201, A0402, A0603, A0805, A1206, A1210, A2010, A2512, AxialCapacitor, BGA, ChipBody, type ChipBodyProps, DFN, ExtrudedPads, FootprintPad, FootprintPlatedHole, Footprinter3d, HC49, type HC49Props, LQFP, MELF, type MELFProps, MINIMELF, type MINIMELFProps, MS012, MS013, MSOP, MicroMELF, type MicroMELFProps, PinRow, QFN, QFP, SMA, SMB, SMC, SMF, SOD123, SOD123F, SOD123FL, SOD123W, SOD128, SOD323, SOD323F, SOD323FL, SOD523, SOD882, SOD923, SOT223, SOT233P, SOT23W, SOT323, SOT363, SOT457, SOT563, SOT723, SOT886, SOT963, SmdChipLead, type SmdChipLeadProps, TO220, TO92, TQFP, Tssop, VSSOP };
|
|
355
|
+
export { A01005, A0201, A0402, A0603, A0805, A1206, A1210, A2010, A2512, AxialCapacitor, BGA, ChipBody, type ChipBodyProps, DFN, ExtrudedPads, FootprintPad, FootprintPlatedHole, Footprinter3d, HC49, type HC49Props, LQFP, MELF, type MELFProps, MINIMELF, type MINIMELFProps, MS012, MS013, MSOP, MicroMELF, type MicroMELFProps, PinRow, QFN, QFP, SMA, SMB, SMC, SMF, SOD123, SOD123F, SOD123FL, SOD123W, SOD128, SOD323, SOD323F, SOD323FL, SOD523, SOD882, SOD923, SOT223, SOT233P, SOT23W, SOT323, SOT363, SOT457, SOT563, SOT723, SOT886, SOT963, SmdChipLead, type SmdChipLeadProps, StampBoard, TO220, TO92, TQFP, Tssop, VSSOP };
|
package/dist/index.js
CHANGED
|
@@ -1010,7 +1010,7 @@ var getLeadWidth = (pinCount, width10) => {
|
|
|
1010
1010
|
};
|
|
1011
1011
|
|
|
1012
1012
|
// lib/PinRow.tsx
|
|
1013
|
-
import {
|
|
1013
|
+
import { Colorize as Colorize6, Cuboid as Cuboid14, Hull as Hull2, Rotate as Rotate5, Translate as Translate8 } from "jscad-fiber";
|
|
1014
1014
|
import { Fragment as Fragment16, jsx as jsx20, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
1015
1015
|
var PinRow = ({
|
|
1016
1016
|
numberOfPins,
|
|
@@ -1031,7 +1031,8 @@ var PinRow = ({
|
|
|
1031
1031
|
const shortSidePinLength = 3;
|
|
1032
1032
|
const xoff = -((pinsPerRow - 1) / 2) * pitch;
|
|
1033
1033
|
const bodyCenterY = rows > 1 ? -((rows - 1) * rowSpacing) / 2 : 0;
|
|
1034
|
-
const
|
|
1034
|
+
const zOffset = !smd && !rightangle ? -bodyHeight - 1.6 : 0;
|
|
1035
|
+
const flipZ = (z) => (invert || faceup ? -z + bodyHeight : z) + zOffset;
|
|
1035
1036
|
return /* @__PURE__ */ jsxs18(Fragment16, { children: [
|
|
1036
1037
|
/* @__PURE__ */ jsx20(Translate8, { y: rightangle ? -3 : 0, children: /* @__PURE__ */ jsx20(
|
|
1037
1038
|
Cuboid14,
|
|
@@ -4196,17 +4197,168 @@ var AxialCapacitor = ({ pitch = 10 }) => {
|
|
|
4196
4197
|
] });
|
|
4197
4198
|
};
|
|
4198
4199
|
|
|
4200
|
+
// lib/stampboard.tsx
|
|
4201
|
+
import { Colorize as Colorize32, Cuboid as Cuboid40, Cylinder as Cylinder10, Subtract as Subtract6, Union as Union19 } from "jscad-fiber";
|
|
4202
|
+
import { Fragment as Fragment56, jsx as jsx61, jsxs as jsxs59 } from "react/jsx-runtime";
|
|
4203
|
+
var StampBoard = ({
|
|
4204
|
+
bodyWidth = 21,
|
|
4205
|
+
boardThickness = 0.5,
|
|
4206
|
+
leadWidth = 1.6,
|
|
4207
|
+
leadLength = 2.4,
|
|
4208
|
+
leadsPitch = 2.54,
|
|
4209
|
+
leadsLeft,
|
|
4210
|
+
leadsRight,
|
|
4211
|
+
leadsTop,
|
|
4212
|
+
leadsBottom,
|
|
4213
|
+
innerHoles = true,
|
|
4214
|
+
innerHoleEdgeDistance = 1.61,
|
|
4215
|
+
innerHoleDiameter = 1
|
|
4216
|
+
}) => {
|
|
4217
|
+
const halfBoardWidth = bodyWidth / 2;
|
|
4218
|
+
const boardCenterZ = boardThickness / 2;
|
|
4219
|
+
const boardHeight = boardThickness * 1.05;
|
|
4220
|
+
const holeRadius = innerHoleDiameter / 2;
|
|
4221
|
+
const bodyLength10 = Math.max(leadsLeft || 0, leadsRight || 0, leadsTop || 0, leadsBottom || 0) * leadsPitch || 51;
|
|
4222
|
+
const pads = [];
|
|
4223
|
+
const holes = [];
|
|
4224
|
+
if (leadsRight) {
|
|
4225
|
+
const yOffset = -((leadsRight - 1) / 2) * leadsPitch;
|
|
4226
|
+
for (let i = 0; i < leadsRight; i++) {
|
|
4227
|
+
const y = yOffset + i * leadsPitch;
|
|
4228
|
+
pads.push({
|
|
4229
|
+
x: -halfBoardWidth + leadLength / 2,
|
|
4230
|
+
y: -y,
|
|
4231
|
+
// Flip y
|
|
4232
|
+
pl: leadLength,
|
|
4233
|
+
pw: leadWidth
|
|
4234
|
+
});
|
|
4235
|
+
if (innerHoles) {
|
|
4236
|
+
holes.push(
|
|
4237
|
+
{ x: -halfBoardWidth, y: -y },
|
|
4238
|
+
{ x: -halfBoardWidth + innerHoleEdgeDistance, y: -y }
|
|
4239
|
+
);
|
|
4240
|
+
}
|
|
4241
|
+
}
|
|
4242
|
+
}
|
|
4243
|
+
if (leadsLeft) {
|
|
4244
|
+
const yOffset = -((leadsLeft - 1) / 2) * leadsPitch;
|
|
4245
|
+
for (let i = 0; i < leadsLeft; i++) {
|
|
4246
|
+
const y = yOffset + i * leadsPitch;
|
|
4247
|
+
pads.push({
|
|
4248
|
+
x: halfBoardWidth - leadLength / 2,
|
|
4249
|
+
y: -y,
|
|
4250
|
+
// Flip y
|
|
4251
|
+
pl: leadLength,
|
|
4252
|
+
pw: leadWidth
|
|
4253
|
+
});
|
|
4254
|
+
if (innerHoles) {
|
|
4255
|
+
holes.push(
|
|
4256
|
+
{ x: halfBoardWidth, y: -y },
|
|
4257
|
+
{ x: halfBoardWidth - innerHoleEdgeDistance, y: -y }
|
|
4258
|
+
);
|
|
4259
|
+
}
|
|
4260
|
+
}
|
|
4261
|
+
}
|
|
4262
|
+
if (leadsTop) {
|
|
4263
|
+
const xOffset = -((leadsTop - 1) / 2) * leadsPitch;
|
|
4264
|
+
for (let i = 0; i < leadsTop; i++) {
|
|
4265
|
+
const x = xOffset + i * leadsPitch;
|
|
4266
|
+
pads.push({
|
|
4267
|
+
x: -x,
|
|
4268
|
+
// Flip x
|
|
4269
|
+
y: -bodyLength10 / 2 + leadLength / 2,
|
|
4270
|
+
pl: leadWidth,
|
|
4271
|
+
pw: leadLength
|
|
4272
|
+
});
|
|
4273
|
+
if (innerHoles) {
|
|
4274
|
+
holes.push(
|
|
4275
|
+
{ x: -x, y: -bodyLength10 / 2 },
|
|
4276
|
+
{ x: -x, y: -bodyLength10 / 2 + innerHoleEdgeDistance }
|
|
4277
|
+
);
|
|
4278
|
+
}
|
|
4279
|
+
}
|
|
4280
|
+
}
|
|
4281
|
+
if (leadsBottom) {
|
|
4282
|
+
const xOffset = -((leadsBottom - 1) / 2) * leadsPitch;
|
|
4283
|
+
for (let i = 0; i < leadsBottom; i++) {
|
|
4284
|
+
const x = xOffset + i * leadsPitch;
|
|
4285
|
+
pads.push({
|
|
4286
|
+
x: -x,
|
|
4287
|
+
// Flip x
|
|
4288
|
+
y: bodyLength10 / 2 - leadLength / 2,
|
|
4289
|
+
pl: leadWidth,
|
|
4290
|
+
pw: leadLength
|
|
4291
|
+
});
|
|
4292
|
+
if (innerHoles) {
|
|
4293
|
+
holes.push(
|
|
4294
|
+
{ x: -x, y: bodyLength10 / 2 },
|
|
4295
|
+
{ x: -x, y: bodyLength10 / 2 - innerHoleEdgeDistance }
|
|
4296
|
+
);
|
|
4297
|
+
}
|
|
4298
|
+
}
|
|
4299
|
+
}
|
|
4300
|
+
const boardBody = /* @__PURE__ */ jsx61(Colorize32, { color: "#008080", children: /* @__PURE__ */ jsxs59(Subtract6, { children: [
|
|
4301
|
+
/* @__PURE__ */ jsx61(
|
|
4302
|
+
Cuboid40,
|
|
4303
|
+
{
|
|
4304
|
+
center: [0, 0, boardCenterZ],
|
|
4305
|
+
size: [bodyWidth, bodyLength10, boardThickness]
|
|
4306
|
+
}
|
|
4307
|
+
),
|
|
4308
|
+
pads.map((pad, index) => /* @__PURE__ */ jsx61(
|
|
4309
|
+
Cuboid40,
|
|
4310
|
+
{
|
|
4311
|
+
center: [pad.x, pad.y, boardCenterZ],
|
|
4312
|
+
size: [pad.pl + 0.01, pad.pw + 0.01, boardHeight]
|
|
4313
|
+
},
|
|
4314
|
+
index
|
|
4315
|
+
))
|
|
4316
|
+
] }) });
|
|
4317
|
+
const holePads = innerHoles && holes.map((hole, index) => /* @__PURE__ */ jsx61(
|
|
4318
|
+
Cylinder10,
|
|
4319
|
+
{
|
|
4320
|
+
color: "black",
|
|
4321
|
+
center: [hole.x, hole.y, boardCenterZ],
|
|
4322
|
+
radius: holeRadius,
|
|
4323
|
+
height: boardThickness * 1.07
|
|
4324
|
+
},
|
|
4325
|
+
index
|
|
4326
|
+
));
|
|
4327
|
+
const rectPads = pads.map((pad, index) => /* @__PURE__ */ jsx61(
|
|
4328
|
+
Cuboid40,
|
|
4329
|
+
{
|
|
4330
|
+
center: [pad.x, pad.y, boardCenterZ],
|
|
4331
|
+
size: [pad.pl + 0.01, pad.pw + 0.01, boardHeight]
|
|
4332
|
+
},
|
|
4333
|
+
index
|
|
4334
|
+
));
|
|
4335
|
+
return /* @__PURE__ */ jsxs59(Fragment56, { children: [
|
|
4336
|
+
boardBody,
|
|
4337
|
+
/* @__PURE__ */ jsx61(Colorize32, { color: "#FFD700", children: innerHoles ? /* @__PURE__ */ jsxs59(Subtract6, { children: [
|
|
4338
|
+
/* @__PURE__ */ jsx61(Union19, { children: pads.map((pad, index) => /* @__PURE__ */ jsx61(
|
|
4339
|
+
Cuboid40,
|
|
4340
|
+
{
|
|
4341
|
+
center: [pad.x, pad.y, boardCenterZ],
|
|
4342
|
+
size: [pad.pl + 0.01, pad.pw + 0.01, boardHeight]
|
|
4343
|
+
},
|
|
4344
|
+
index
|
|
4345
|
+
)) }),
|
|
4346
|
+
holePads
|
|
4347
|
+
] }) : rectPads })
|
|
4348
|
+
] });
|
|
4349
|
+
};
|
|
4350
|
+
|
|
4199
4351
|
// lib/Footprinter3d.tsx
|
|
4200
|
-
import { jsx as
|
|
4352
|
+
import { jsx as jsx62 } from "react/jsx-runtime";
|
|
4201
4353
|
var Footprinter3d = ({ footprint }) => {
|
|
4202
4354
|
const fpJson = fp3.string(footprint).json();
|
|
4203
4355
|
switch (fpJson.fn) {
|
|
4204
4356
|
case "dip":
|
|
4205
|
-
return /* @__PURE__ */
|
|
4357
|
+
return /* @__PURE__ */ jsx62(Dip, { numPins: fpJson.num_pins, pitch: fpJson.p, bodyWidth: fpJson.w });
|
|
4206
4358
|
case "axial":
|
|
4207
|
-
return /* @__PURE__ */
|
|
4359
|
+
return /* @__PURE__ */ jsx62(AxialCapacitor, { pitch: fpJson.p });
|
|
4208
4360
|
case "tssop":
|
|
4209
|
-
return /* @__PURE__ */
|
|
4361
|
+
return /* @__PURE__ */ jsx62(
|
|
4210
4362
|
Tssop,
|
|
4211
4363
|
{
|
|
4212
4364
|
pinCount: fpJson.num_pins,
|
|
@@ -4217,7 +4369,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4217
4369
|
}
|
|
4218
4370
|
);
|
|
4219
4371
|
case "msop":
|
|
4220
|
-
return /* @__PURE__ */
|
|
4372
|
+
return /* @__PURE__ */ jsx62(
|
|
4221
4373
|
MSOP,
|
|
4222
4374
|
{
|
|
4223
4375
|
pinCount: fpJson.num_pins,
|
|
@@ -4228,7 +4380,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4228
4380
|
}
|
|
4229
4381
|
);
|
|
4230
4382
|
case "vssop":
|
|
4231
|
-
return /* @__PURE__ */
|
|
4383
|
+
return /* @__PURE__ */ jsx62(
|
|
4232
4384
|
VSSOP,
|
|
4233
4385
|
{
|
|
4234
4386
|
pinCount: fpJson.num_pins,
|
|
@@ -4240,7 +4392,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4240
4392
|
}
|
|
4241
4393
|
);
|
|
4242
4394
|
case "qfp":
|
|
4243
|
-
return /* @__PURE__ */
|
|
4395
|
+
return /* @__PURE__ */ jsx62(
|
|
4244
4396
|
QFP,
|
|
4245
4397
|
{
|
|
4246
4398
|
pinCount: fpJson.num_pins,
|
|
@@ -4251,12 +4403,12 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4251
4403
|
}
|
|
4252
4404
|
);
|
|
4253
4405
|
case "tqfp":
|
|
4254
|
-
return /* @__PURE__ */
|
|
4406
|
+
return /* @__PURE__ */ jsx62(tqfp_default, {});
|
|
4255
4407
|
case "lqfp":
|
|
4256
|
-
return /* @__PURE__ */
|
|
4408
|
+
return /* @__PURE__ */ jsx62(LQFP, { pinCount: fpJson.num_pins });
|
|
4257
4409
|
case "qfn": {
|
|
4258
4410
|
const hasThermalPad = typeof fpJson.thermalpad?.x === "number" && typeof fpJson.thermalpad?.y === "number";
|
|
4259
|
-
return /* @__PURE__ */
|
|
4411
|
+
return /* @__PURE__ */ jsx62(
|
|
4260
4412
|
qfn_default,
|
|
4261
4413
|
{
|
|
4262
4414
|
num_pins: fpJson.num_pins,
|
|
@@ -4274,7 +4426,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4274
4426
|
}
|
|
4275
4427
|
case "dfn": {
|
|
4276
4428
|
const hasThermalPad = typeof fpJson.thermalpad?.x === "number" && typeof fpJson.thermalpad?.y === "number";
|
|
4277
|
-
return /* @__PURE__ */
|
|
4429
|
+
return /* @__PURE__ */ jsx62(
|
|
4278
4430
|
DFN,
|
|
4279
4431
|
{
|
|
4280
4432
|
num_pins: fpJson.num_pins,
|
|
@@ -4294,7 +4446,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4294
4446
|
const rowsMatch = footprint.match(/_rows(\d+)/);
|
|
4295
4447
|
const rows = rowsMatch && rowsMatch[1] ? parseInt(rowsMatch[1], 10) : 1;
|
|
4296
4448
|
if (fpJson.male)
|
|
4297
|
-
return /* @__PURE__ */
|
|
4449
|
+
return /* @__PURE__ */ jsx62(
|
|
4298
4450
|
PinRow,
|
|
4299
4451
|
{
|
|
4300
4452
|
numberOfPins: fpJson.num_pins,
|
|
@@ -4307,7 +4459,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4307
4459
|
}
|
|
4308
4460
|
);
|
|
4309
4461
|
if (fpJson.female)
|
|
4310
|
-
return /* @__PURE__ */
|
|
4462
|
+
return /* @__PURE__ */ jsx62(
|
|
4311
4463
|
FemaleHeader,
|
|
4312
4464
|
{
|
|
4313
4465
|
numberOfPins: fpJson.num_pins,
|
|
@@ -4319,47 +4471,47 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4319
4471
|
case "cap": {
|
|
4320
4472
|
switch (fpJson.imperial) {
|
|
4321
4473
|
case "0402":
|
|
4322
|
-
return /* @__PURE__ */
|
|
4474
|
+
return /* @__PURE__ */ jsx62(A0402, { color: "#856c4d" });
|
|
4323
4475
|
case "0603":
|
|
4324
|
-
return /* @__PURE__ */
|
|
4476
|
+
return /* @__PURE__ */ jsx62(A0603, { color: "#856c4d" });
|
|
4325
4477
|
case "0805":
|
|
4326
|
-
return /* @__PURE__ */
|
|
4478
|
+
return /* @__PURE__ */ jsx62(A0805, { color: "#856c4d" });
|
|
4327
4479
|
case "0201":
|
|
4328
|
-
return /* @__PURE__ */
|
|
4480
|
+
return /* @__PURE__ */ jsx62(A0201, { color: "#856c4d" });
|
|
4329
4481
|
case "01005":
|
|
4330
|
-
return /* @__PURE__ */
|
|
4482
|
+
return /* @__PURE__ */ jsx62(A01005, { color: "#856c4d" });
|
|
4331
4483
|
case "1206":
|
|
4332
|
-
return /* @__PURE__ */
|
|
4484
|
+
return /* @__PURE__ */ jsx62(A1206, { color: "#856c4d" });
|
|
4333
4485
|
case "1210":
|
|
4334
|
-
return /* @__PURE__ */
|
|
4486
|
+
return /* @__PURE__ */ jsx62(A1210, { color: "#856c4d" });
|
|
4335
4487
|
case "2010":
|
|
4336
|
-
return /* @__PURE__ */
|
|
4488
|
+
return /* @__PURE__ */ jsx62(A2010, { color: "#856c4d" });
|
|
4337
4489
|
case "2512":
|
|
4338
|
-
return /* @__PURE__ */
|
|
4490
|
+
return /* @__PURE__ */ jsx62(A2512, { color: "#856c4d" });
|
|
4339
4491
|
}
|
|
4340
4492
|
}
|
|
4341
4493
|
case "sot235":
|
|
4342
|
-
return /* @__PURE__ */
|
|
4494
|
+
return /* @__PURE__ */ jsx62(SOT_235_default, {});
|
|
4343
4495
|
case "sot457":
|
|
4344
|
-
return /* @__PURE__ */
|
|
4496
|
+
return /* @__PURE__ */ jsx62(SOT457, {});
|
|
4345
4497
|
case "sot223":
|
|
4346
|
-
return /* @__PURE__ */
|
|
4498
|
+
return /* @__PURE__ */ jsx62(SOT223, {});
|
|
4347
4499
|
case "sot23w":
|
|
4348
|
-
return /* @__PURE__ */
|
|
4500
|
+
return /* @__PURE__ */ jsx62(SOT23W, {});
|
|
4349
4501
|
case "sot323":
|
|
4350
|
-
return /* @__PURE__ */
|
|
4502
|
+
return /* @__PURE__ */ jsx62(SOT323, {});
|
|
4351
4503
|
case "sod323f":
|
|
4352
|
-
return /* @__PURE__ */
|
|
4504
|
+
return /* @__PURE__ */ jsx62(SOD323F, {});
|
|
4353
4505
|
case "sod323fl":
|
|
4354
|
-
return /* @__PURE__ */
|
|
4506
|
+
return /* @__PURE__ */ jsx62(SOD323FL, {});
|
|
4355
4507
|
case "sot363":
|
|
4356
|
-
return /* @__PURE__ */
|
|
4508
|
+
return /* @__PURE__ */ jsx62(SOT_363_default, {});
|
|
4357
4509
|
case "sot886":
|
|
4358
|
-
return /* @__PURE__ */
|
|
4510
|
+
return /* @__PURE__ */ jsx62(SOT886, {});
|
|
4359
4511
|
case "sot963":
|
|
4360
|
-
return /* @__PURE__ */
|
|
4512
|
+
return /* @__PURE__ */ jsx62(SOT963, {});
|
|
4361
4513
|
case "pushbutton":
|
|
4362
|
-
return /* @__PURE__ */
|
|
4514
|
+
return /* @__PURE__ */ jsx62(
|
|
4363
4515
|
PushButton,
|
|
4364
4516
|
{
|
|
4365
4517
|
width: fpJson.w,
|
|
@@ -4368,7 +4520,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4368
4520
|
}
|
|
4369
4521
|
);
|
|
4370
4522
|
case "soic":
|
|
4371
|
-
return /* @__PURE__ */
|
|
4523
|
+
return /* @__PURE__ */ jsx62(
|
|
4372
4524
|
SOIC,
|
|
4373
4525
|
{
|
|
4374
4526
|
pinCount: fpJson.num_pins,
|
|
@@ -4379,39 +4531,39 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4379
4531
|
}
|
|
4380
4532
|
);
|
|
4381
4533
|
case "sod523":
|
|
4382
|
-
return /* @__PURE__ */
|
|
4534
|
+
return /* @__PURE__ */ jsx62(SOD523, {});
|
|
4383
4535
|
case "sod882":
|
|
4384
|
-
return /* @__PURE__ */
|
|
4536
|
+
return /* @__PURE__ */ jsx62(SOD882, {});
|
|
4385
4537
|
case "sma":
|
|
4386
|
-
return /* @__PURE__ */
|
|
4538
|
+
return /* @__PURE__ */ jsx62(SMA, {});
|
|
4387
4539
|
case "smb":
|
|
4388
|
-
return /* @__PURE__ */
|
|
4540
|
+
return /* @__PURE__ */ jsx62(SMB, {});
|
|
4389
4541
|
case "smc":
|
|
4390
|
-
return /* @__PURE__ */
|
|
4542
|
+
return /* @__PURE__ */ jsx62(SMC, {});
|
|
4391
4543
|
case "smf":
|
|
4392
|
-
return /* @__PURE__ */
|
|
4544
|
+
return /* @__PURE__ */ jsx62(SMF, {});
|
|
4393
4545
|
case "sod123f":
|
|
4394
|
-
return /* @__PURE__ */
|
|
4546
|
+
return /* @__PURE__ */ jsx62(SOD123F, {});
|
|
4395
4547
|
case "sod123fl":
|
|
4396
|
-
return /* @__PURE__ */
|
|
4548
|
+
return /* @__PURE__ */ jsx62(SOD123FL, {});
|
|
4397
4549
|
case "sod123w":
|
|
4398
|
-
return /* @__PURE__ */
|
|
4550
|
+
return /* @__PURE__ */ jsx62(SOD123W, {});
|
|
4399
4551
|
case "sod128":
|
|
4400
|
-
return /* @__PURE__ */
|
|
4552
|
+
return /* @__PURE__ */ jsx62(SOD128, {});
|
|
4401
4553
|
case "sod323":
|
|
4402
|
-
return /* @__PURE__ */
|
|
4554
|
+
return /* @__PURE__ */ jsx62(SOD323, {});
|
|
4403
4555
|
case "sod923":
|
|
4404
|
-
return /* @__PURE__ */
|
|
4556
|
+
return /* @__PURE__ */ jsx62(SOD923, {});
|
|
4405
4557
|
case "hc49":
|
|
4406
|
-
return /* @__PURE__ */
|
|
4558
|
+
return /* @__PURE__ */ jsx62(HC49, {});
|
|
4407
4559
|
case "micromelf":
|
|
4408
|
-
return /* @__PURE__ */
|
|
4560
|
+
return /* @__PURE__ */ jsx62(MicroMELF, {});
|
|
4409
4561
|
case "minimelf":
|
|
4410
|
-
return /* @__PURE__ */
|
|
4562
|
+
return /* @__PURE__ */ jsx62(MINIMELF, {});
|
|
4411
4563
|
case "melf":
|
|
4412
|
-
return /* @__PURE__ */
|
|
4564
|
+
return /* @__PURE__ */ jsx62(MELF, {});
|
|
4413
4565
|
case "ms012":
|
|
4414
|
-
return /* @__PURE__ */
|
|
4566
|
+
return /* @__PURE__ */ jsx62(
|
|
4415
4567
|
MS012,
|
|
4416
4568
|
{
|
|
4417
4569
|
pinCount: fpJson.num_pins,
|
|
@@ -4421,7 +4573,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4421
4573
|
}
|
|
4422
4574
|
);
|
|
4423
4575
|
case "ms013":
|
|
4424
|
-
return /* @__PURE__ */
|
|
4576
|
+
return /* @__PURE__ */ jsx62(
|
|
4425
4577
|
MS013,
|
|
4426
4578
|
{
|
|
4427
4579
|
pinCount: fpJson.num_pins,
|
|
@@ -4431,39 +4583,56 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
4431
4583
|
}
|
|
4432
4584
|
);
|
|
4433
4585
|
case "sot723":
|
|
4434
|
-
return /* @__PURE__ */
|
|
4586
|
+
return /* @__PURE__ */ jsx62(SOT723, {});
|
|
4435
4587
|
case "to220":
|
|
4436
|
-
return /* @__PURE__ */
|
|
4588
|
+
return /* @__PURE__ */ jsx62(TO220, {});
|
|
4437
4589
|
case "to92":
|
|
4438
|
-
return /* @__PURE__ */
|
|
4590
|
+
return /* @__PURE__ */ jsx62(TO92, {});
|
|
4591
|
+
case "stampboard":
|
|
4592
|
+
case "stampreceiver":
|
|
4593
|
+
return /* @__PURE__ */ jsx62(
|
|
4594
|
+
StampBoard,
|
|
4595
|
+
{
|
|
4596
|
+
bodyWidth: fpJson.w,
|
|
4597
|
+
leadsLeft: fpJson.left,
|
|
4598
|
+
leadsRight: fpJson.right,
|
|
4599
|
+
leadsTop: fpJson.top,
|
|
4600
|
+
leadsBottom: fpJson.bottom,
|
|
4601
|
+
leadsPitch: fpJson.p,
|
|
4602
|
+
leadWidth: fpJson.pw,
|
|
4603
|
+
leadLength: fpJson.pl,
|
|
4604
|
+
innerHoles: fpJson.innerhole,
|
|
4605
|
+
innerHoleEdgeDistance: fpJson.innerholeedgedistance
|
|
4606
|
+
}
|
|
4607
|
+
);
|
|
4439
4608
|
}
|
|
4440
4609
|
const colorMatch = footprint.match(/_color\(([^)]+)\)/);
|
|
4441
4610
|
const color = colorMatch ? colorMatch[1] : void 0;
|
|
4442
4611
|
switch (fpJson.imperial) {
|
|
4443
4612
|
case "0402":
|
|
4444
|
-
return /* @__PURE__ */
|
|
4613
|
+
return /* @__PURE__ */ jsx62(A0402, { color });
|
|
4445
4614
|
case "0603":
|
|
4446
|
-
return /* @__PURE__ */
|
|
4615
|
+
return /* @__PURE__ */ jsx62(A0603, { color });
|
|
4447
4616
|
case "0805":
|
|
4448
|
-
return /* @__PURE__ */
|
|
4617
|
+
return /* @__PURE__ */ jsx62(A0805, { color });
|
|
4449
4618
|
case "0201":
|
|
4450
|
-
return /* @__PURE__ */
|
|
4619
|
+
return /* @__PURE__ */ jsx62(A0201, { color });
|
|
4451
4620
|
case "01005":
|
|
4452
|
-
return /* @__PURE__ */
|
|
4621
|
+
return /* @__PURE__ */ jsx62(A01005, { color });
|
|
4453
4622
|
case "1206":
|
|
4454
|
-
return /* @__PURE__ */
|
|
4623
|
+
return /* @__PURE__ */ jsx62(A1206, { color });
|
|
4455
4624
|
case "1210":
|
|
4456
|
-
return /* @__PURE__ */
|
|
4625
|
+
return /* @__PURE__ */ jsx62(A1210, { color });
|
|
4457
4626
|
case "2010":
|
|
4458
|
-
return /* @__PURE__ */
|
|
4627
|
+
return /* @__PURE__ */ jsx62(A2010, { color });
|
|
4459
4628
|
case "2512":
|
|
4460
|
-
return /* @__PURE__ */
|
|
4629
|
+
return /* @__PURE__ */ jsx62(A2512, { color });
|
|
4461
4630
|
}
|
|
4462
4631
|
return null;
|
|
4463
4632
|
};
|
|
4464
4633
|
|
|
4465
4634
|
// lib/SOT-23-3P.tsx
|
|
4466
|
-
import { Fragment as
|
|
4635
|
+
import { Fragment as Fragment57, jsx as jsx63, jsxs as jsxs60 } from "react/jsx-runtime";
|
|
4467
4636
|
var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
|
|
4468
4637
|
const bodyWidth = 1.3;
|
|
4469
4638
|
const bodyLength10 = 2.9;
|
|
@@ -4474,8 +4643,8 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
|
|
|
4474
4643
|
const padContactLength = 0.4;
|
|
4475
4644
|
const padThickness = leadThickness / 2;
|
|
4476
4645
|
const extendedBodyDistance = (fullWidth - bodyWidth) / 2 + 0.3;
|
|
4477
|
-
return /* @__PURE__ */
|
|
4478
|
-
/* @__PURE__ */
|
|
4646
|
+
return /* @__PURE__ */ jsxs60(Fragment57, { children: [
|
|
4647
|
+
/* @__PURE__ */ jsx63(
|
|
4479
4648
|
SmdChipLead,
|
|
4480
4649
|
{
|
|
4481
4650
|
rotation: Math.PI,
|
|
@@ -4492,7 +4661,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
|
|
|
4492
4661
|
},
|
|
4493
4662
|
1
|
|
4494
4663
|
),
|
|
4495
|
-
/* @__PURE__ */
|
|
4664
|
+
/* @__PURE__ */ jsx63(
|
|
4496
4665
|
SmdChipLead,
|
|
4497
4666
|
{
|
|
4498
4667
|
rotation: Math.PI,
|
|
@@ -4509,7 +4678,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
|
|
|
4509
4678
|
},
|
|
4510
4679
|
2
|
|
4511
4680
|
),
|
|
4512
|
-
/* @__PURE__ */
|
|
4681
|
+
/* @__PURE__ */ jsx63(
|
|
4513
4682
|
SmdChipLead,
|
|
4514
4683
|
{
|
|
4515
4684
|
position: {
|
|
@@ -4525,7 +4694,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
|
|
|
4525
4694
|
},
|
|
4526
4695
|
3
|
|
4527
4696
|
),
|
|
4528
|
-
/* @__PURE__ */
|
|
4697
|
+
/* @__PURE__ */ jsx63(
|
|
4529
4698
|
ChipBody,
|
|
4530
4699
|
{
|
|
4531
4700
|
center: { x: 0, y: 0, z: 0 },
|
|
@@ -4538,8 +4707,8 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
|
|
|
4538
4707
|
};
|
|
4539
4708
|
|
|
4540
4709
|
// lib/SOT-563.tsx
|
|
4541
|
-
import { Cuboid as
|
|
4542
|
-
import { Fragment as
|
|
4710
|
+
import { Cuboid as Cuboid41, Translate as Translate28, Rotate as Rotate12, Colorize as Colorize33 } from "jscad-fiber";
|
|
4711
|
+
import { Fragment as Fragment58, jsx as jsx64, jsxs as jsxs61 } from "react/jsx-runtime";
|
|
4543
4712
|
var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
|
|
4544
4713
|
const bodyWidth = 1.2;
|
|
4545
4714
|
const bodyLength10 = 1.6;
|
|
@@ -4549,11 +4718,11 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
|
|
|
4549
4718
|
const leadHeight = 0.13;
|
|
4550
4719
|
const leadSpacing = 0.5;
|
|
4551
4720
|
const bodyZOffset = -0.4;
|
|
4552
|
-
return /* @__PURE__ */
|
|
4553
|
-
/* @__PURE__ */
|
|
4721
|
+
return /* @__PURE__ */ jsxs61(Fragment58, { children: [
|
|
4722
|
+
/* @__PURE__ */ jsx64(Rotate12, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx64(Translate28, { center: [0, 0, bodyZOffset], children: /* @__PURE__ */ jsx64(Colorize33, { color: "grey", children: /* @__PURE__ */ jsx64(Cuboid41, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
|
|
4554
4723
|
[-1, 0, 1].flatMap((yOffset, index) => [
|
|
4555
4724
|
// Left lead
|
|
4556
|
-
/* @__PURE__ */
|
|
4725
|
+
/* @__PURE__ */ jsx64(
|
|
4557
4726
|
Translate28,
|
|
4558
4727
|
{
|
|
4559
4728
|
center: [
|
|
@@ -4561,16 +4730,16 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
|
|
|
4561
4730
|
yOffset * leadSpacing,
|
|
4562
4731
|
leadHeight / 2
|
|
4563
4732
|
],
|
|
4564
|
-
children: /* @__PURE__ */
|
|
4733
|
+
children: /* @__PURE__ */ jsx64(Cuboid41, { size: [leadLength, leadWidth, leadHeight] })
|
|
4565
4734
|
},
|
|
4566
4735
|
`left-${index}`
|
|
4567
4736
|
),
|
|
4568
4737
|
// Right lead
|
|
4569
|
-
/* @__PURE__ */
|
|
4738
|
+
/* @__PURE__ */ jsx64(
|
|
4570
4739
|
Translate28,
|
|
4571
4740
|
{
|
|
4572
4741
|
center: [bodyWidth / 2 + 0.03, yOffset * leadSpacing, leadHeight / 2],
|
|
4573
|
-
children: /* @__PURE__ */
|
|
4742
|
+
children: /* @__PURE__ */ jsx64(Cuboid41, { size: [leadLength, leadWidth, leadHeight] })
|
|
4574
4743
|
},
|
|
4575
4744
|
`right-${index}`
|
|
4576
4745
|
)
|
|
@@ -4579,7 +4748,7 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
|
|
|
4579
4748
|
};
|
|
4580
4749
|
|
|
4581
4750
|
// lib/sod-123.tsx
|
|
4582
|
-
import { Fragment as
|
|
4751
|
+
import { Fragment as Fragment59, jsx as jsx65, jsxs as jsxs62 } from "react/jsx-runtime";
|
|
4583
4752
|
var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
|
|
4584
4753
|
const bodyWidth = 2.9;
|
|
4585
4754
|
const bodyLength10 = 1.3;
|
|
@@ -4590,8 +4759,8 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
|
|
|
4590
4759
|
const padContactLength = 0.4;
|
|
4591
4760
|
const padThickness = leadThickness / 2;
|
|
4592
4761
|
const bodyDistance = (fullWidth - bodyWidth) / 2;
|
|
4593
|
-
return /* @__PURE__ */
|
|
4594
|
-
/* @__PURE__ */
|
|
4762
|
+
return /* @__PURE__ */ jsxs62(Fragment59, { children: [
|
|
4763
|
+
/* @__PURE__ */ jsx65(
|
|
4595
4764
|
SmdChipLead,
|
|
4596
4765
|
{
|
|
4597
4766
|
position: {
|
|
@@ -4607,7 +4776,7 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
|
|
|
4607
4776
|
},
|
|
4608
4777
|
1
|
|
4609
4778
|
),
|
|
4610
|
-
/* @__PURE__ */
|
|
4779
|
+
/* @__PURE__ */ jsx65(
|
|
4611
4780
|
SmdChipLead,
|
|
4612
4781
|
{
|
|
4613
4782
|
rotation: Math.PI,
|
|
@@ -4624,7 +4793,7 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
|
|
|
4624
4793
|
},
|
|
4625
4794
|
2
|
|
4626
4795
|
),
|
|
4627
|
-
/* @__PURE__ */
|
|
4796
|
+
/* @__PURE__ */ jsx65(
|
|
4628
4797
|
ChipBody,
|
|
4629
4798
|
{
|
|
4630
4799
|
center: { x: 0, y: 0, z: 0 },
|
|
@@ -4690,6 +4859,7 @@ export {
|
|
|
4690
4859
|
SOT886,
|
|
4691
4860
|
SOT963,
|
|
4692
4861
|
SmdChipLead,
|
|
4862
|
+
StampBoard,
|
|
4693
4863
|
TO220,
|
|
4694
4864
|
TO92,
|
|
4695
4865
|
TQFP,
|