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