jscad-electronics 0.0.167 → 0.0.169
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 +42 -1
- package/dist/index.js +165 -35
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -340,6 +340,36 @@ declare const SMC: () => react_jsx_runtime.JSX.Element;
|
|
|
340
340
|
|
|
341
341
|
declare const SMF: () => react_jsx_runtime.JSX.Element;
|
|
342
342
|
|
|
343
|
+
/** Physical outline dimensions in mm, independent of a PCB land pattern. */
|
|
344
|
+
interface FlatLeadDiodeDimensions {
|
|
345
|
+
bodyLength: number;
|
|
346
|
+
bodyWidth: number;
|
|
347
|
+
/** Overall height from the seating plane, including standoff. */
|
|
348
|
+
bodyHeight: number;
|
|
349
|
+
/** Outer tip-to-tip span of the two terminals. */
|
|
350
|
+
leadSpan: number;
|
|
351
|
+
cathodeLength: number;
|
|
352
|
+
cathodeWidth: number;
|
|
353
|
+
anodeLength: number;
|
|
354
|
+
anodeWidth: number;
|
|
355
|
+
terminalThickness: number;
|
|
356
|
+
standoff: number;
|
|
357
|
+
/** Inset of each top edge relative to the mold base. */
|
|
358
|
+
taperInset: number;
|
|
359
|
+
/** Top cathode band width; zero omits the band. */
|
|
360
|
+
markingWidth: number;
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
/** DO-219AD flat-lead outline, with independently sized cathode/anode contacts.
|
|
364
|
+
* Body and terminal dimensions use midpoints of the outline ranges on page 3.
|
|
365
|
+
* Mold standoff, taper and marking dimensions are visual approximations, exposed as props.
|
|
366
|
+
* https://www.vishay.com/doc/?89019=
|
|
367
|
+
* Dimension overrides represent variants of this standard outline. They are
|
|
368
|
+
* geometry parameters, not new Footprinter tokens or manufacturer selectors.
|
|
369
|
+
*/
|
|
370
|
+
type DO219ADProps = Partial<FlatLeadDiodeDimensions>;
|
|
371
|
+
declare const DO219AD: (props: DO219ADProps) => react_jsx_runtime.JSX.Element;
|
|
372
|
+
|
|
343
373
|
declare const SOD123F: () => react_jsx_runtime.JSX.Element;
|
|
344
374
|
|
|
345
375
|
declare const SOD123FL: () => react_jsx_runtime.JSX.Element;
|
|
@@ -373,6 +403,17 @@ declare const SOD323F: () => react_jsx_runtime.JSX.Element;
|
|
|
373
403
|
|
|
374
404
|
declare const SOD323FL: () => react_jsx_runtime.JSX.Element;
|
|
375
405
|
|
|
406
|
+
/** SOD-323HE flat-lead outline with symmetric contacts by default.
|
|
407
|
+
* Dimensional reference: https://www.es.co.th/Schemetic/PDF/RFU02VSM6S.PDF
|
|
408
|
+
* Defaults use nominal 2.0 x 1.4 mm mold, 2.5 mm lead span and 0.6 mm height.
|
|
409
|
+
* Buried terminal length, taper and marking dimensions are visual approximations.
|
|
410
|
+
* https://www.rohm.de/products/diodes/fast-recovery-diodes/standard/rfu02vsm6s-product
|
|
411
|
+
* Dimension overrides represent variants of this standard outline. They are
|
|
412
|
+
* geometry parameters, not new Footprinter tokens or manufacturer selectors.
|
|
413
|
+
*/
|
|
414
|
+
type SOD323HEProps = Partial<FlatLeadDiodeDimensions>;
|
|
415
|
+
declare const SOD323HE: (props: SOD323HEProps) => react_jsx_runtime.JSX.Element;
|
|
416
|
+
|
|
376
417
|
declare const SOD923: () => react_jsx_runtime.JSX.Element;
|
|
377
418
|
|
|
378
419
|
interface SOT223Props {
|
|
@@ -1079,4 +1120,4 @@ declare const MelfResistor: ({ size, footprint, }: {
|
|
|
1079
1120
|
footprint?: string;
|
|
1080
1121
|
}) => react_jsx_runtime.JSX.Element;
|
|
1081
1122
|
|
|
1082
|
-
export { A01005, A0201, A0402, A0603, A0805, A1206, A1210, A2010, A2512, AxialCapacitor, BGA, CeramicChipAntenna, ChipBody, type ChipBodyProps, Crystal, type CrystalProps, DFN, DPAK, type DPAKProps, Display, ElectrolyticCapacitor, type ElectrolyticCapacitorProps, ExtrudedPads, FPC, type FPCProps, FemaleHeader, FemaleHeaderRow, FlexScreen, type FlexScreenAspectRatio, type FlexScreenOrientation, type FlexScreenProps, FootprintPad, FootprintPlatedHole, Footprinter3d, GullWingBody, type GullWingBodyProps, HC49, type HC49Props, JSTPH2_0mm, JSTXH2_5mm, type JSTXH2_5mmProps, JSTZH1_5mm, JstSh, LQFP, Led2835, type Led2835Props, Led5050, type Led5050Props, MELF, type MELFProps, MINIMELF, type MINIMELFProps, MS012, MS013, MSOP, MelfResistor, type MelfResistorSize, MicroMELF, type MicroMELFProps, MountedPcbModule, PinHeader, PinRow, Potentiometer, type PotentiometerLead, type PotentiometerProps, QFN, QFP, RJ45, type RJ45Props, type ResolvedFlexScreenSize, SMA, SMB, SMC, SMF, SOD123, SOD123F, SOD123FL, type SOD123Props, SOD123W, type SOD123WProps, SOD128, SOD323, SOD323F, SOD323FL, SOD523, SOD723, SOD882, SOD923, SOT143, SOT223, type SOT223Props, SOT233P, SOT23W, SOT323, SOT363, SOT457, SOT563, SOT723, SOT886, SOT963, Screen, type ScreenProps, SmdChipLead, type SmdChipLeadProps, type SmdLeadPad, SmdPinHeader, type SmdPinHeaderProps, SmdPushButton, type SmdPushButtonProps, SmdSlideSwitch, StampBoard, TO220, type TO220Lead, type TO220Props, TO92, type TO92Lead, type TO92Props, TQFP, TantalumCapacitor, type TantalumCase, Tssop, TwoPadCrystal, type TwoPadCrystalPackage, UsbCMidmount, VSSOP, isJstShFootprint, melfResistorSizes, resolveFlexScreenSize, tantalumCases, twoPadCrystalPackages };
|
|
1123
|
+
export { A01005, A0201, A0402, A0603, A0805, A1206, A1210, A2010, A2512, AxialCapacitor, BGA, CeramicChipAntenna, ChipBody, type ChipBodyProps, Crystal, type CrystalProps, DFN, DO219AD, type DO219ADProps, DPAK, type DPAKProps, Display, ElectrolyticCapacitor, type ElectrolyticCapacitorProps, ExtrudedPads, FPC, type FPCProps, FemaleHeader, FemaleHeaderRow, FlexScreen, type FlexScreenAspectRatio, type FlexScreenOrientation, type FlexScreenProps, FootprintPad, FootprintPlatedHole, Footprinter3d, GullWingBody, type GullWingBodyProps, HC49, type HC49Props, JSTPH2_0mm, JSTXH2_5mm, type JSTXH2_5mmProps, JSTZH1_5mm, JstSh, LQFP, Led2835, type Led2835Props, Led5050, type Led5050Props, MELF, type MELFProps, MINIMELF, type MINIMELFProps, MS012, MS013, MSOP, MelfResistor, type MelfResistorSize, MicroMELF, type MicroMELFProps, MountedPcbModule, PinHeader, PinRow, Potentiometer, type PotentiometerLead, type PotentiometerProps, QFN, QFP, RJ45, type RJ45Props, type ResolvedFlexScreenSize, SMA, SMB, SMC, SMF, SOD123, SOD123F, SOD123FL, type SOD123Props, SOD123W, type SOD123WProps, SOD128, SOD323, SOD323F, SOD323FL, SOD323HE, type SOD323HEProps, SOD523, SOD723, SOD882, SOD923, SOT143, SOT223, type SOT223Props, SOT233P, SOT23W, SOT323, SOT363, SOT457, SOT563, SOT723, SOT886, SOT963, Screen, type ScreenProps, SmdChipLead, type SmdChipLeadProps, type SmdLeadPad, SmdPinHeader, type SmdPinHeaderProps, SmdPushButton, type SmdPushButtonProps, SmdSlideSwitch, StampBoard, TO220, type TO220Lead, type TO220Props, TO92, type TO92Lead, type TO92Props, TQFP, TantalumCapacitor, type TantalumCase, Tssop, TwoPadCrystal, type TwoPadCrystalPackage, UsbCMidmount, VSSOP, isJstShFootprint, melfResistorSizes, resolveFlexScreenSize, tantalumCases, twoPadCrystalPackages };
|
package/dist/index.js
CHANGED
|
@@ -8485,10 +8485,138 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8485
8485
|
return null;
|
|
8486
8486
|
};
|
|
8487
8487
|
|
|
8488
|
+
// lib/utils/FlatLeadDiode.tsx
|
|
8489
|
+
import { Colorize as Colorize55, Cuboid as Cuboid63, Hull as Hull28, Subtract as Subtract21 } from "jscad-fiber";
|
|
8490
|
+
import { Fragment as Fragment83, jsx as jsx91, jsxs as jsxs86 } from "react/jsx-runtime";
|
|
8491
|
+
function createFlatLeadDiode(p) {
|
|
8492
|
+
const dimensions = [
|
|
8493
|
+
"bodyLength",
|
|
8494
|
+
"bodyWidth",
|
|
8495
|
+
"bodyHeight",
|
|
8496
|
+
"leadSpan",
|
|
8497
|
+
"cathodeLength",
|
|
8498
|
+
"cathodeWidth",
|
|
8499
|
+
"anodeLength",
|
|
8500
|
+
"anodeWidth",
|
|
8501
|
+
"terminalThickness",
|
|
8502
|
+
"standoff",
|
|
8503
|
+
"taperInset",
|
|
8504
|
+
"markingWidth"
|
|
8505
|
+
];
|
|
8506
|
+
for (const name of dimensions) {
|
|
8507
|
+
const value = p[name];
|
|
8508
|
+
const allowZero = ["standoff", "taperInset", "markingWidth"].includes(name);
|
|
8509
|
+
if (!Number.isFinite(value) || (allowZero ? value < 0 : value <= 0))
|
|
8510
|
+
throw new Error(`Invalid diode dimension: ${name}`);
|
|
8511
|
+
}
|
|
8512
|
+
const overhang = (p.leadSpan - p.bodyLength) / 2;
|
|
8513
|
+
if (overhang < 0 || p.cathodeLength <= overhang || p.anodeLength <= overhang || p.cathodeLength + p.anodeLength >= p.leadSpan || p.cathodeWidth > p.bodyWidth || p.anodeWidth > p.bodyWidth || p.standoff >= p.terminalThickness || p.terminalThickness >= p.bodyHeight || p.taperInset * 2 >= Math.min(p.bodyLength, p.bodyWidth) || p.markingWidth * 2 >= p.bodyLength - p.taperInset * 2)
|
|
8514
|
+
throw new Error(
|
|
8515
|
+
"Diode dimensions leave disconnected terminals or an invalid mold"
|
|
8516
|
+
);
|
|
8517
|
+
const slice = Math.min(p.bodyHeight - p.standoff, p.bodyWidth) / 100;
|
|
8518
|
+
const body = /* @__PURE__ */ jsxs86(Hull28, { children: [
|
|
8519
|
+
/* @__PURE__ */ jsx91(
|
|
8520
|
+
Cuboid63,
|
|
8521
|
+
{
|
|
8522
|
+
size: [p.bodyLength, p.bodyWidth, slice],
|
|
8523
|
+
center: [0, 0, p.standoff + slice / 2]
|
|
8524
|
+
}
|
|
8525
|
+
),
|
|
8526
|
+
/* @__PURE__ */ jsx91(
|
|
8527
|
+
Cuboid63,
|
|
8528
|
+
{
|
|
8529
|
+
size: [
|
|
8530
|
+
p.bodyLength - p.taperInset * 2,
|
|
8531
|
+
p.bodyWidth - p.taperInset * 2,
|
|
8532
|
+
slice
|
|
8533
|
+
],
|
|
8534
|
+
center: [0, 0, p.bodyHeight - slice / 2]
|
|
8535
|
+
}
|
|
8536
|
+
)
|
|
8537
|
+
] });
|
|
8538
|
+
const stripe = /* @__PURE__ */ jsx91(
|
|
8539
|
+
Cuboid63,
|
|
8540
|
+
{
|
|
8541
|
+
size: [p.markingWidth, (p.bodyWidth - p.taperInset * 2) * 0.9, slice],
|
|
8542
|
+
center: [
|
|
8543
|
+
-p.bodyLength / 2 + p.taperInset + p.markingWidth,
|
|
8544
|
+
0,
|
|
8545
|
+
p.bodyHeight - slice / 2
|
|
8546
|
+
]
|
|
8547
|
+
}
|
|
8548
|
+
);
|
|
8549
|
+
return /* @__PURE__ */ jsxs86(Fragment83, { children: [
|
|
8550
|
+
/* @__PURE__ */ jsx91(Colorize55, { color: "#25272a", children: p.markingWidth > 0 ? /* @__PURE__ */ jsxs86(Subtract21, { children: [
|
|
8551
|
+
body,
|
|
8552
|
+
stripe
|
|
8553
|
+
] }) : body }),
|
|
8554
|
+
/* @__PURE__ */ jsxs86(Colorize55, { color: "#c7c9cd", children: [
|
|
8555
|
+
/* @__PURE__ */ jsx91(
|
|
8556
|
+
Cuboid63,
|
|
8557
|
+
{
|
|
8558
|
+
size: [p.cathodeLength, p.cathodeWidth, p.terminalThickness],
|
|
8559
|
+
center: [
|
|
8560
|
+
-p.leadSpan / 2 + p.cathodeLength / 2,
|
|
8561
|
+
0,
|
|
8562
|
+
p.terminalThickness / 2
|
|
8563
|
+
]
|
|
8564
|
+
}
|
|
8565
|
+
),
|
|
8566
|
+
/* @__PURE__ */ jsx91(
|
|
8567
|
+
Cuboid63,
|
|
8568
|
+
{
|
|
8569
|
+
size: [p.anodeLength, p.anodeWidth, p.terminalThickness],
|
|
8570
|
+
center: [
|
|
8571
|
+
p.leadSpan / 2 - p.anodeLength / 2,
|
|
8572
|
+
0,
|
|
8573
|
+
p.terminalThickness / 2
|
|
8574
|
+
]
|
|
8575
|
+
}
|
|
8576
|
+
)
|
|
8577
|
+
] }),
|
|
8578
|
+
p.markingWidth > 0 && /* @__PURE__ */ jsx91(Colorize55, { color: "#aaaaa8", children: stripe })
|
|
8579
|
+
] });
|
|
8580
|
+
}
|
|
8581
|
+
|
|
8582
|
+
// lib/DO219AD.tsx
|
|
8583
|
+
var DO219AD = (props) => createFlatLeadDiode({
|
|
8584
|
+
bodyLength: 2.2,
|
|
8585
|
+
bodyWidth: 1.3,
|
|
8586
|
+
bodyHeight: 0.68,
|
|
8587
|
+
leadSpan: 2.5,
|
|
8588
|
+
cathodeLength: 1.3,
|
|
8589
|
+
cathodeWidth: 0.88,
|
|
8590
|
+
anodeLength: 0.65,
|
|
8591
|
+
anodeWidth: 0.65,
|
|
8592
|
+
terminalThickness: 0.195,
|
|
8593
|
+
standoff: 0.11,
|
|
8594
|
+
taperInset: 0.05,
|
|
8595
|
+
markingWidth: 0.23,
|
|
8596
|
+
...props
|
|
8597
|
+
});
|
|
8598
|
+
|
|
8599
|
+
// lib/SOD323HE.tsx
|
|
8600
|
+
var SOD323HE = (props) => createFlatLeadDiode({
|
|
8601
|
+
bodyLength: 2,
|
|
8602
|
+
bodyWidth: 1.4,
|
|
8603
|
+
bodyHeight: 0.6,
|
|
8604
|
+
leadSpan: 2.5,
|
|
8605
|
+
cathodeLength: 0.55,
|
|
8606
|
+
cathodeWidth: 0.8,
|
|
8607
|
+
anodeLength: 0.55,
|
|
8608
|
+
anodeWidth: 0.8,
|
|
8609
|
+
terminalThickness: 0.17,
|
|
8610
|
+
standoff: 0.05,
|
|
8611
|
+
taperInset: 0.15,
|
|
8612
|
+
markingWidth: 0.2,
|
|
8613
|
+
...props
|
|
8614
|
+
});
|
|
8615
|
+
|
|
8488
8616
|
// lib/TantalumCapacitor.tsx
|
|
8489
8617
|
import { fp as fp11 } from "@tscircuit/footprinter";
|
|
8490
|
-
import { Colorize as
|
|
8491
|
-
import { jsx as
|
|
8618
|
+
import { Colorize as Colorize56, Cuboid as Cuboid64, Hull as Hull29, Rotate as Rotate25, Translate as Translate42, Union as Union22 } from "jscad-fiber";
|
|
8619
|
+
import { jsx as jsx92, jsxs as jsxs87 } from "react/jsx-runtime";
|
|
8492
8620
|
var tantalumCases = {
|
|
8493
8621
|
A: [3.2, 1.6, 1.6, 1.2, 0.8],
|
|
8494
8622
|
B: [3.5, 2.8, 1.9, 2.2, 0.8],
|
|
@@ -8508,35 +8636,35 @@ var TantalumCapacitor = ({
|
|
|
8508
8636
|
if (pads.length !== 2) throw new Error("TantalumCapacitor requires two pads");
|
|
8509
8637
|
const [a, b] = pads;
|
|
8510
8638
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8511
|
-
return /* @__PURE__ */
|
|
8512
|
-
/* @__PURE__ */
|
|
8513
|
-
/* @__PURE__ */
|
|
8514
|
-
/* @__PURE__ */
|
|
8515
|
-
|
|
8639
|
+
return /* @__PURE__ */ jsx92(Translate42, { offset: [(a.x + b.x) / 2, (a.y + b.y) / 2, 0], children: /* @__PURE__ */ jsxs87(Rotate25, { rotation: [0, 0, angle], children: [
|
|
8640
|
+
/* @__PURE__ */ jsx92(Colorize56, { color: "#d5a64e", children: /* @__PURE__ */ jsxs87(Hull29, { children: [
|
|
8641
|
+
/* @__PURE__ */ jsx92(Cuboid64, { size: [length - 0.1, width10, 0.02], center: [0, 0, 0.21] }),
|
|
8642
|
+
/* @__PURE__ */ jsx92(
|
|
8643
|
+
Cuboid64,
|
|
8516
8644
|
{
|
|
8517
8645
|
size: [length - 0.25, width10 - 0.15, 0.02],
|
|
8518
8646
|
center: [0, 0, height10 - 0.01]
|
|
8519
8647
|
}
|
|
8520
8648
|
)
|
|
8521
8649
|
] }) }),
|
|
8522
|
-
/* @__PURE__ */
|
|
8523
|
-
/* @__PURE__ */
|
|
8524
|
-
|
|
8650
|
+
/* @__PURE__ */ jsx92(Colorize56, { color: "#c5c8cb", children: [-1, 1].map((side) => /* @__PURE__ */ jsxs87(Union22, { children: [
|
|
8651
|
+
/* @__PURE__ */ jsx92(
|
|
8652
|
+
Cuboid64,
|
|
8525
8653
|
{
|
|
8526
8654
|
size: [leadLength, leadWidth, 0.25],
|
|
8527
8655
|
center: [side * (length - leadLength) / 2, 0, 0.125]
|
|
8528
8656
|
}
|
|
8529
8657
|
),
|
|
8530
|
-
/* @__PURE__ */
|
|
8531
|
-
|
|
8658
|
+
/* @__PURE__ */ jsx92(
|
|
8659
|
+
Cuboid64,
|
|
8532
8660
|
{
|
|
8533
8661
|
size: [0.15, leadWidth, height10 * 0.45],
|
|
8534
8662
|
center: [side * (length - 0.15) / 2, 0, height10 * 0.225]
|
|
8535
8663
|
}
|
|
8536
8664
|
)
|
|
8537
8665
|
] }, side)) }),
|
|
8538
|
-
/* @__PURE__ */
|
|
8539
|
-
|
|
8666
|
+
/* @__PURE__ */ jsx92(
|
|
8667
|
+
Cuboid64,
|
|
8540
8668
|
{
|
|
8541
8669
|
size: [0.25, width10 - 0.25, 0.01],
|
|
8542
8670
|
center: [-length / 2 + 0.5, 0, height10],
|
|
@@ -8548,8 +8676,8 @@ var TantalumCapacitor = ({
|
|
|
8548
8676
|
|
|
8549
8677
|
// lib/TwoPadCrystal.tsx
|
|
8550
8678
|
import { fp as fp12 } from "@tscircuit/footprinter";
|
|
8551
|
-
import { Colorize as
|
|
8552
|
-
import { jsx as
|
|
8679
|
+
import { Colorize as Colorize57, Cuboid as Cuboid65, RoundedCuboid as RoundedCuboid6, Rotate as Rotate26, Translate as Translate43 } from "jscad-fiber";
|
|
8680
|
+
import { jsx as jsx93, jsxs as jsxs88 } from "react/jsx-runtime";
|
|
8553
8681
|
var twoPadCrystalPackages = {
|
|
8554
8682
|
FC135: [3.2, 1.5, 0.9, 0.7],
|
|
8555
8683
|
FC12M: [2.05, 1.2, 0.6, 0.5],
|
|
@@ -8569,9 +8697,9 @@ var TwoPadCrystal = ({
|
|
|
8569
8697
|
if (pads.length !== 2) throw new Error("TwoPadCrystal requires two pads");
|
|
8570
8698
|
const [a, b] = pads;
|
|
8571
8699
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8572
|
-
return /* @__PURE__ */
|
|
8573
|
-
/* @__PURE__ */
|
|
8574
|
-
/* @__PURE__ */
|
|
8700
|
+
return /* @__PURE__ */ jsx93(Translate43, { offset: [(a.x + b.x) / 2, (a.y + b.y) / 2, 0], children: /* @__PURE__ */ jsxs88(Rotate26, { rotation: [0, 0, angle], children: [
|
|
8701
|
+
/* @__PURE__ */ jsx93(Colorize57, { color: "#e0dcca", children: /* @__PURE__ */ jsx93(Cuboid65, { size: [length, width10, 0.2], center: [0, 0, 0.13] }) }),
|
|
8702
|
+
/* @__PURE__ */ jsx93(Colorize57, { color: "#acb1b8", children: /* @__PURE__ */ jsx93(
|
|
8575
8703
|
RoundedCuboid6,
|
|
8576
8704
|
{
|
|
8577
8705
|
size: [length - 0.04, width10 - 0.04, height10 - 0.18],
|
|
@@ -8579,8 +8707,8 @@ var TwoPadCrystal = ({
|
|
|
8579
8707
|
center: [0, 0, (height10 + 0.18) / 2]
|
|
8580
8708
|
}
|
|
8581
8709
|
) }),
|
|
8582
|
-
/* @__PURE__ */
|
|
8583
|
-
|
|
8710
|
+
/* @__PURE__ */ jsx93(Colorize57, { color: "#c6af65", children: [-1, 1].map((side) => /* @__PURE__ */ jsx93(
|
|
8711
|
+
Cuboid65,
|
|
8584
8712
|
{
|
|
8585
8713
|
size: [terminalLength, width10 - 0.12, 0.06],
|
|
8586
8714
|
center: [side * (length - terminalLength) / 2, 0, 0.03]
|
|
@@ -8592,8 +8720,8 @@ var TwoPadCrystal = ({
|
|
|
8592
8720
|
|
|
8593
8721
|
// lib/CeramicChipAntenna.tsx
|
|
8594
8722
|
import { fp as fp13 } from "@tscircuit/footprinter";
|
|
8595
|
-
import { Colorize as
|
|
8596
|
-
import { jsx as
|
|
8723
|
+
import { Colorize as Colorize58, Cuboid as Cuboid66, Rotate as Rotate27, Translate as Translate44 } from "jscad-fiber";
|
|
8724
|
+
import { jsx as jsx94, jsxs as jsxs89 } from "react/jsx-runtime";
|
|
8597
8725
|
var CeramicChipAntenna = ({
|
|
8598
8726
|
footprint = "smdpads2_p5.4mm_pw1mm_ph2mm"
|
|
8599
8727
|
}) => {
|
|
@@ -8603,17 +8731,17 @@ var CeramicChipAntenna = ({
|
|
|
8603
8731
|
if (pads.length !== 2) throw new Error("CeramicChipAntenna requires two pads");
|
|
8604
8732
|
const [a, b] = pads;
|
|
8605
8733
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8606
|
-
return /* @__PURE__ */
|
|
8607
|
-
/* @__PURE__ */
|
|
8608
|
-
|
|
8734
|
+
return /* @__PURE__ */ jsx94(Translate44, { offset: [(a.x + b.x) / 2, (a.y + b.y) / 2, 0], children: /* @__PURE__ */ jsxs89(Rotate27, { rotation: [0, 0, angle], children: [
|
|
8735
|
+
/* @__PURE__ */ jsx94(
|
|
8736
|
+
Cuboid66,
|
|
8609
8737
|
{
|
|
8610
8738
|
size: [4.44, 1.99, 1.14],
|
|
8611
8739
|
center: [0, 0, 0.575],
|
|
8612
8740
|
color: "#4053a3"
|
|
8613
8741
|
}
|
|
8614
8742
|
),
|
|
8615
|
-
/* @__PURE__ */
|
|
8616
|
-
|
|
8743
|
+
/* @__PURE__ */ jsx94(Colorize58, { color: "#c2c4c7", children: [-1, 1].map((side) => /* @__PURE__ */ jsx94(
|
|
8744
|
+
Cuboid66,
|
|
8617
8745
|
{
|
|
8618
8746
|
size: [0.4, 2, 1.15],
|
|
8619
8747
|
center: [side * 2.4, 0, 0.575],
|
|
@@ -8621,8 +8749,8 @@ var CeramicChipAntenna = ({
|
|
|
8621
8749
|
},
|
|
8622
8750
|
side
|
|
8623
8751
|
)) }),
|
|
8624
|
-
/* @__PURE__ */
|
|
8625
|
-
|
|
8752
|
+
/* @__PURE__ */ jsx94(
|
|
8753
|
+
Cuboid66,
|
|
8626
8754
|
{
|
|
8627
8755
|
size: [0.9, 2, 0.01],
|
|
8628
8756
|
center: [-1.75, 0, 1.145],
|
|
@@ -8634,8 +8762,8 @@ var CeramicChipAntenna = ({
|
|
|
8634
8762
|
|
|
8635
8763
|
// lib/MelfResistor.tsx
|
|
8636
8764
|
import { fp as fp14 } from "@tscircuit/footprinter";
|
|
8637
|
-
import { Colorize as
|
|
8638
|
-
import { jsx as
|
|
8765
|
+
import { Colorize as Colorize59, Cylinder as Cylinder23, Rotate as Rotate28, Translate as Translate45 } from "jscad-fiber";
|
|
8766
|
+
import { jsx as jsx95, jsxs as jsxs90 } from "react/jsx-runtime";
|
|
8639
8767
|
var melfResistorSizes = {
|
|
8640
8768
|
"0102": [2.2, 1.1, 0.4],
|
|
8641
8769
|
"0204": [3.6, 1.4, 0.75],
|
|
@@ -8654,15 +8782,15 @@ var MelfResistor = ({
|
|
|
8654
8782
|
if (pads.length !== 2) throw new Error("MelfResistor requires two pads");
|
|
8655
8783
|
const [a, b] = pads;
|
|
8656
8784
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8657
|
-
return /* @__PURE__ */
|
|
8658
|
-
/* @__PURE__ */
|
|
8785
|
+
return /* @__PURE__ */ jsx95(Translate45, { offset: [(a.x + b.x) / 2, (a.y + b.y) / 2, diameter / 2], children: /* @__PURE__ */ jsx95(Rotate28, { rotation: [0, 0, angle], children: /* @__PURE__ */ jsxs90(Rotate28, { rotation: [0, Math.PI / 2, 0], children: [
|
|
8786
|
+
/* @__PURE__ */ jsx95(Colorize59, { color: "#426d63", children: /* @__PURE__ */ jsx95(
|
|
8659
8787
|
Cylinder23,
|
|
8660
8788
|
{
|
|
8661
8789
|
radius: (diameter - 0.08) / 2,
|
|
8662
8790
|
height: length - 2 * capLength + 0.04
|
|
8663
8791
|
}
|
|
8664
8792
|
) }),
|
|
8665
|
-
/* @__PURE__ */
|
|
8793
|
+
/* @__PURE__ */ jsx95(Colorize59, { color: "#c6c8cb", children: [-1, 1].map((side) => /* @__PURE__ */ jsx95(
|
|
8666
8794
|
Cylinder23,
|
|
8667
8795
|
{
|
|
8668
8796
|
radius: diameter / 2,
|
|
@@ -8689,6 +8817,7 @@ export {
|
|
|
8689
8817
|
ChipBody,
|
|
8690
8818
|
Crystal,
|
|
8691
8819
|
DFN,
|
|
8820
|
+
DO219AD,
|
|
8692
8821
|
DPAK,
|
|
8693
8822
|
Display,
|
|
8694
8823
|
ElectrolyticCapacitor,
|
|
@@ -8735,6 +8864,7 @@ export {
|
|
|
8735
8864
|
SOD323,
|
|
8736
8865
|
SOD323F,
|
|
8737
8866
|
SOD323FL,
|
|
8867
|
+
SOD323HE,
|
|
8738
8868
|
SOD523,
|
|
8739
8869
|
SOD723,
|
|
8740
8870
|
SOD882,
|