jscad-electronics 0.0.167 → 0.0.168
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 +32 -1
- package/dist/index.js +147 -35
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -373,6 +373,37 @@ declare const SOD323F: () => react_jsx_runtime.JSX.Element;
|
|
|
373
373
|
|
|
374
374
|
declare const SOD323FL: () => react_jsx_runtime.JSX.Element;
|
|
375
375
|
|
|
376
|
+
/** Physical outline dimensions in mm, independent of a PCB land pattern. */
|
|
377
|
+
interface FlatLeadDiodeDimensions {
|
|
378
|
+
bodyLength: number;
|
|
379
|
+
bodyWidth: number;
|
|
380
|
+
/** Overall height from the seating plane, including standoff. */
|
|
381
|
+
bodyHeight: number;
|
|
382
|
+
/** Outer tip-to-tip span of the two terminals. */
|
|
383
|
+
leadSpan: number;
|
|
384
|
+
cathodeLength: number;
|
|
385
|
+
cathodeWidth: number;
|
|
386
|
+
anodeLength: number;
|
|
387
|
+
anodeWidth: number;
|
|
388
|
+
terminalThickness: number;
|
|
389
|
+
standoff: number;
|
|
390
|
+
/** Inset of each top edge relative to the mold base. */
|
|
391
|
+
taperInset: number;
|
|
392
|
+
/** Top cathode band width; zero omits the band. */
|
|
393
|
+
markingWidth: number;
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
/** SOD-323HE flat-lead outline with symmetric contacts by default.
|
|
397
|
+
* Dimensional reference: https://www.es.co.th/Schemetic/PDF/RFU02VSM6S.PDF
|
|
398
|
+
* Defaults use nominal 2.0 x 1.4 mm mold, 2.5 mm lead span and 0.6 mm height.
|
|
399
|
+
* Buried terminal length, taper and marking dimensions are visual approximations.
|
|
400
|
+
* https://www.rohm.de/products/diodes/fast-recovery-diodes/standard/rfu02vsm6s-product
|
|
401
|
+
* Dimension overrides represent variants of this standard outline. They are
|
|
402
|
+
* geometry parameters, not new Footprinter tokens or manufacturer selectors.
|
|
403
|
+
*/
|
|
404
|
+
type SOD323HEProps = Partial<FlatLeadDiodeDimensions>;
|
|
405
|
+
declare const SOD323HE: (props: SOD323HEProps) => react_jsx_runtime.JSX.Element;
|
|
406
|
+
|
|
376
407
|
declare const SOD923: () => react_jsx_runtime.JSX.Element;
|
|
377
408
|
|
|
378
409
|
interface SOT223Props {
|
|
@@ -1079,4 +1110,4 @@ declare const MelfResistor: ({ size, footprint, }: {
|
|
|
1079
1110
|
footprint?: string;
|
|
1080
1111
|
}) => react_jsx_runtime.JSX.Element;
|
|
1081
1112
|
|
|
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 };
|
|
1113
|
+
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, 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,121 @@ 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/SOD323HE.tsx
|
|
8583
|
+
var SOD323HE = (props) => createFlatLeadDiode({
|
|
8584
|
+
bodyLength: 2,
|
|
8585
|
+
bodyWidth: 1.4,
|
|
8586
|
+
bodyHeight: 0.6,
|
|
8587
|
+
leadSpan: 2.5,
|
|
8588
|
+
cathodeLength: 0.55,
|
|
8589
|
+
cathodeWidth: 0.8,
|
|
8590
|
+
anodeLength: 0.55,
|
|
8591
|
+
anodeWidth: 0.8,
|
|
8592
|
+
terminalThickness: 0.17,
|
|
8593
|
+
standoff: 0.05,
|
|
8594
|
+
taperInset: 0.15,
|
|
8595
|
+
markingWidth: 0.2,
|
|
8596
|
+
...props
|
|
8597
|
+
});
|
|
8598
|
+
|
|
8488
8599
|
// lib/TantalumCapacitor.tsx
|
|
8489
8600
|
import { fp as fp11 } from "@tscircuit/footprinter";
|
|
8490
|
-
import { Colorize as
|
|
8491
|
-
import { jsx as
|
|
8601
|
+
import { Colorize as Colorize56, Cuboid as Cuboid64, Hull as Hull29, Rotate as Rotate25, Translate as Translate42, Union as Union22 } from "jscad-fiber";
|
|
8602
|
+
import { jsx as jsx92, jsxs as jsxs87 } from "react/jsx-runtime";
|
|
8492
8603
|
var tantalumCases = {
|
|
8493
8604
|
A: [3.2, 1.6, 1.6, 1.2, 0.8],
|
|
8494
8605
|
B: [3.5, 2.8, 1.9, 2.2, 0.8],
|
|
@@ -8508,35 +8619,35 @@ var TantalumCapacitor = ({
|
|
|
8508
8619
|
if (pads.length !== 2) throw new Error("TantalumCapacitor requires two pads");
|
|
8509
8620
|
const [a, b] = pads;
|
|
8510
8621
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8511
|
-
return /* @__PURE__ */
|
|
8512
|
-
/* @__PURE__ */
|
|
8513
|
-
/* @__PURE__ */
|
|
8514
|
-
/* @__PURE__ */
|
|
8515
|
-
|
|
8622
|
+
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: [
|
|
8623
|
+
/* @__PURE__ */ jsx92(Colorize56, { color: "#d5a64e", children: /* @__PURE__ */ jsxs87(Hull29, { children: [
|
|
8624
|
+
/* @__PURE__ */ jsx92(Cuboid64, { size: [length - 0.1, width10, 0.02], center: [0, 0, 0.21] }),
|
|
8625
|
+
/* @__PURE__ */ jsx92(
|
|
8626
|
+
Cuboid64,
|
|
8516
8627
|
{
|
|
8517
8628
|
size: [length - 0.25, width10 - 0.15, 0.02],
|
|
8518
8629
|
center: [0, 0, height10 - 0.01]
|
|
8519
8630
|
}
|
|
8520
8631
|
)
|
|
8521
8632
|
] }) }),
|
|
8522
|
-
/* @__PURE__ */
|
|
8523
|
-
/* @__PURE__ */
|
|
8524
|
-
|
|
8633
|
+
/* @__PURE__ */ jsx92(Colorize56, { color: "#c5c8cb", children: [-1, 1].map((side) => /* @__PURE__ */ jsxs87(Union22, { children: [
|
|
8634
|
+
/* @__PURE__ */ jsx92(
|
|
8635
|
+
Cuboid64,
|
|
8525
8636
|
{
|
|
8526
8637
|
size: [leadLength, leadWidth, 0.25],
|
|
8527
8638
|
center: [side * (length - leadLength) / 2, 0, 0.125]
|
|
8528
8639
|
}
|
|
8529
8640
|
),
|
|
8530
|
-
/* @__PURE__ */
|
|
8531
|
-
|
|
8641
|
+
/* @__PURE__ */ jsx92(
|
|
8642
|
+
Cuboid64,
|
|
8532
8643
|
{
|
|
8533
8644
|
size: [0.15, leadWidth, height10 * 0.45],
|
|
8534
8645
|
center: [side * (length - 0.15) / 2, 0, height10 * 0.225]
|
|
8535
8646
|
}
|
|
8536
8647
|
)
|
|
8537
8648
|
] }, side)) }),
|
|
8538
|
-
/* @__PURE__ */
|
|
8539
|
-
|
|
8649
|
+
/* @__PURE__ */ jsx92(
|
|
8650
|
+
Cuboid64,
|
|
8540
8651
|
{
|
|
8541
8652
|
size: [0.25, width10 - 0.25, 0.01],
|
|
8542
8653
|
center: [-length / 2 + 0.5, 0, height10],
|
|
@@ -8548,8 +8659,8 @@ var TantalumCapacitor = ({
|
|
|
8548
8659
|
|
|
8549
8660
|
// lib/TwoPadCrystal.tsx
|
|
8550
8661
|
import { fp as fp12 } from "@tscircuit/footprinter";
|
|
8551
|
-
import { Colorize as
|
|
8552
|
-
import { jsx as
|
|
8662
|
+
import { Colorize as Colorize57, Cuboid as Cuboid65, RoundedCuboid as RoundedCuboid6, Rotate as Rotate26, Translate as Translate43 } from "jscad-fiber";
|
|
8663
|
+
import { jsx as jsx93, jsxs as jsxs88 } from "react/jsx-runtime";
|
|
8553
8664
|
var twoPadCrystalPackages = {
|
|
8554
8665
|
FC135: [3.2, 1.5, 0.9, 0.7],
|
|
8555
8666
|
FC12M: [2.05, 1.2, 0.6, 0.5],
|
|
@@ -8569,9 +8680,9 @@ var TwoPadCrystal = ({
|
|
|
8569
8680
|
if (pads.length !== 2) throw new Error("TwoPadCrystal requires two pads");
|
|
8570
8681
|
const [a, b] = pads;
|
|
8571
8682
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8572
|
-
return /* @__PURE__ */
|
|
8573
|
-
/* @__PURE__ */
|
|
8574
|
-
/* @__PURE__ */
|
|
8683
|
+
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: [
|
|
8684
|
+
/* @__PURE__ */ jsx93(Colorize57, { color: "#e0dcca", children: /* @__PURE__ */ jsx93(Cuboid65, { size: [length, width10, 0.2], center: [0, 0, 0.13] }) }),
|
|
8685
|
+
/* @__PURE__ */ jsx93(Colorize57, { color: "#acb1b8", children: /* @__PURE__ */ jsx93(
|
|
8575
8686
|
RoundedCuboid6,
|
|
8576
8687
|
{
|
|
8577
8688
|
size: [length - 0.04, width10 - 0.04, height10 - 0.18],
|
|
@@ -8579,8 +8690,8 @@ var TwoPadCrystal = ({
|
|
|
8579
8690
|
center: [0, 0, (height10 + 0.18) / 2]
|
|
8580
8691
|
}
|
|
8581
8692
|
) }),
|
|
8582
|
-
/* @__PURE__ */
|
|
8583
|
-
|
|
8693
|
+
/* @__PURE__ */ jsx93(Colorize57, { color: "#c6af65", children: [-1, 1].map((side) => /* @__PURE__ */ jsx93(
|
|
8694
|
+
Cuboid65,
|
|
8584
8695
|
{
|
|
8585
8696
|
size: [terminalLength, width10 - 0.12, 0.06],
|
|
8586
8697
|
center: [side * (length - terminalLength) / 2, 0, 0.03]
|
|
@@ -8592,8 +8703,8 @@ var TwoPadCrystal = ({
|
|
|
8592
8703
|
|
|
8593
8704
|
// lib/CeramicChipAntenna.tsx
|
|
8594
8705
|
import { fp as fp13 } from "@tscircuit/footprinter";
|
|
8595
|
-
import { Colorize as
|
|
8596
|
-
import { jsx as
|
|
8706
|
+
import { Colorize as Colorize58, Cuboid as Cuboid66, Rotate as Rotate27, Translate as Translate44 } from "jscad-fiber";
|
|
8707
|
+
import { jsx as jsx94, jsxs as jsxs89 } from "react/jsx-runtime";
|
|
8597
8708
|
var CeramicChipAntenna = ({
|
|
8598
8709
|
footprint = "smdpads2_p5.4mm_pw1mm_ph2mm"
|
|
8599
8710
|
}) => {
|
|
@@ -8603,17 +8714,17 @@ var CeramicChipAntenna = ({
|
|
|
8603
8714
|
if (pads.length !== 2) throw new Error("CeramicChipAntenna requires two pads");
|
|
8604
8715
|
const [a, b] = pads;
|
|
8605
8716
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8606
|
-
return /* @__PURE__ */
|
|
8607
|
-
/* @__PURE__ */
|
|
8608
|
-
|
|
8717
|
+
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: [
|
|
8718
|
+
/* @__PURE__ */ jsx94(
|
|
8719
|
+
Cuboid66,
|
|
8609
8720
|
{
|
|
8610
8721
|
size: [4.44, 1.99, 1.14],
|
|
8611
8722
|
center: [0, 0, 0.575],
|
|
8612
8723
|
color: "#4053a3"
|
|
8613
8724
|
}
|
|
8614
8725
|
),
|
|
8615
|
-
/* @__PURE__ */
|
|
8616
|
-
|
|
8726
|
+
/* @__PURE__ */ jsx94(Colorize58, { color: "#c2c4c7", children: [-1, 1].map((side) => /* @__PURE__ */ jsx94(
|
|
8727
|
+
Cuboid66,
|
|
8617
8728
|
{
|
|
8618
8729
|
size: [0.4, 2, 1.15],
|
|
8619
8730
|
center: [side * 2.4, 0, 0.575],
|
|
@@ -8621,8 +8732,8 @@ var CeramicChipAntenna = ({
|
|
|
8621
8732
|
},
|
|
8622
8733
|
side
|
|
8623
8734
|
)) }),
|
|
8624
|
-
/* @__PURE__ */
|
|
8625
|
-
|
|
8735
|
+
/* @__PURE__ */ jsx94(
|
|
8736
|
+
Cuboid66,
|
|
8626
8737
|
{
|
|
8627
8738
|
size: [0.9, 2, 0.01],
|
|
8628
8739
|
center: [-1.75, 0, 1.145],
|
|
@@ -8634,8 +8745,8 @@ var CeramicChipAntenna = ({
|
|
|
8634
8745
|
|
|
8635
8746
|
// lib/MelfResistor.tsx
|
|
8636
8747
|
import { fp as fp14 } from "@tscircuit/footprinter";
|
|
8637
|
-
import { Colorize as
|
|
8638
|
-
import { jsx as
|
|
8748
|
+
import { Colorize as Colorize59, Cylinder as Cylinder23, Rotate as Rotate28, Translate as Translate45 } from "jscad-fiber";
|
|
8749
|
+
import { jsx as jsx95, jsxs as jsxs90 } from "react/jsx-runtime";
|
|
8639
8750
|
var melfResistorSizes = {
|
|
8640
8751
|
"0102": [2.2, 1.1, 0.4],
|
|
8641
8752
|
"0204": [3.6, 1.4, 0.75],
|
|
@@ -8654,15 +8765,15 @@ var MelfResistor = ({
|
|
|
8654
8765
|
if (pads.length !== 2) throw new Error("MelfResistor requires two pads");
|
|
8655
8766
|
const [a, b] = pads;
|
|
8656
8767
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8657
|
-
return /* @__PURE__ */
|
|
8658
|
-
/* @__PURE__ */
|
|
8768
|
+
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: [
|
|
8769
|
+
/* @__PURE__ */ jsx95(Colorize59, { color: "#426d63", children: /* @__PURE__ */ jsx95(
|
|
8659
8770
|
Cylinder23,
|
|
8660
8771
|
{
|
|
8661
8772
|
radius: (diameter - 0.08) / 2,
|
|
8662
8773
|
height: length - 2 * capLength + 0.04
|
|
8663
8774
|
}
|
|
8664
8775
|
) }),
|
|
8665
|
-
/* @__PURE__ */
|
|
8776
|
+
/* @__PURE__ */ jsx95(Colorize59, { color: "#c6c8cb", children: [-1, 1].map((side) => /* @__PURE__ */ jsx95(
|
|
8666
8777
|
Cylinder23,
|
|
8667
8778
|
{
|
|
8668
8779
|
radius: diameter / 2,
|
|
@@ -8735,6 +8846,7 @@ export {
|
|
|
8735
8846
|
SOD323,
|
|
8736
8847
|
SOD323F,
|
|
8737
8848
|
SOD323FL,
|
|
8849
|
+
SOD323HE,
|
|
8738
8850
|
SOD523,
|
|
8739
8851
|
SOD723,
|
|
8740
8852
|
SOD882,
|