jscad-electronics 0.0.71 → 0.0.73

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 CHANGED
@@ -75,8 +75,9 @@ interface ChipBodyProps {
75
75
  notchRotation?: [number, number, number];
76
76
  notchLength?: number;
77
77
  notchWidth?: number;
78
+ chamferSize?: number;
78
79
  }
79
- declare const ChipBody: ({ center, width, length, height, heightAboveSurface, color, taperRatio, faceRatio, straightHeightRatio, includeNotch, notchRadius, notchPosition, notchRotation, notchLength, notchWidth, }: ChipBodyProps) => react_jsx_runtime.JSX.Element;
80
+ declare const ChipBody: ({ center, width, length, height, heightAboveSurface, color, taperRatio, faceRatio, straightHeightRatio, includeNotch, notchRadius, notchPosition, notchRotation, notchLength, notchWidth, chamferSize, }: ChipBodyProps) => react_jsx_runtime.JSX.Element;
80
81
 
81
82
  declare const ExtrudedPads: ({ circuitJson, footprint, }: {
82
83
  circuitJson?: AnyCircuitElement[];
@@ -170,6 +171,8 @@ declare const QFP: ({ pinCount, pitch, leadWidth, padContactLength, bodyWidth, }
170
171
  bodyWidth?: number;
171
172
  }) => react_jsx_runtime.JSX.Element;
172
173
 
174
+ declare const TQFP: () => react_jsx_runtime.JSX.Element;
175
+
173
176
  declare const SOD123: ({ fullWidth, fullLength }: {
174
177
  fullWidth?: number | undefined;
175
178
  fullLength?: number | undefined;
@@ -201,4 +204,4 @@ declare const SOT223: () => react_jsx_runtime.JSX.Element;
201
204
 
202
205
  declare const SOT323: () => react_jsx_runtime.JSX.Element;
203
206
 
204
- export { A01005, A0201, A0402, A0603, A0805, A1206, A1210, A2010, A2512, BGA, ChipBody, type ChipBodyProps, ExtrudedPads, FootprintPad, FootprintPlatedHole, Footprinter3d, PinRow, QFN, QFP, SMA, SMB, SMC, SMF, SOD123, SOD123F, SOD123FL, SOD523, SOD923, SOT223, SOT233P, SOT323, SOT563, SOT723, SmdChipLead, type SmdChipLeadProps, Tssop, VSSOP };
207
+ export { A01005, A0201, A0402, A0603, A0805, A1206, A1210, A2010, A2512, BGA, ChipBody, type ChipBodyProps, ExtrudedPads, FootprintPad, FootprintPlatedHole, Footprinter3d, PinRow, QFN, QFP, SMA, SMB, SMC, SMF, SOD123, SOD123F, SOD123FL, SOD523, SOD923, SOT223, SOT233P, SOT323, SOT563, SOT723, SmdChipLead, type SmdChipLeadProps, TQFP, Tssop, VSSOP };
package/dist/index.js CHANGED
@@ -411,7 +411,8 @@ var ChipBody = ({
411
411
  notchPosition,
412
412
  notchRotation = [0, 0, 0],
413
413
  notchLength = 0.5,
414
- notchWidth = 0.25
414
+ notchWidth = 0.25,
415
+ chamferSize = 0
415
416
  }) => {
416
417
  const straightHeight = height10 * straightHeightRatio;
417
418
  const taperHeight = height10 - straightHeight;
@@ -436,10 +437,32 @@ var ChipBody = ({
436
437
  /* @__PURE__ */ jsx11(Translate3, { z: straightHeight + taperHeight, children: /* @__PURE__ */ jsx11(Cuboid11, { size: [faceWidth, faceLength, 0.01] }) })
437
438
  ] })
438
439
  ] });
440
+ const chamferCutout = (xPos, yPos) => /* @__PURE__ */ jsx11(Translate3, { offset: { x: xPos, y: yPos, z: 0 }, children: /* @__PURE__ */ jsx11(Rotate2, { rotation: [0, 0, Math.PI / 4], children: /* @__PURE__ */ jsx11(
441
+ Cuboid11,
442
+ {
443
+ size: [
444
+ chamferSize * Math.SQRT2,
445
+ chamferSize * Math.SQRT2,
446
+ height10 * 3
447
+ ]
448
+ }
449
+ ) }) });
450
+ let finalBody = body;
451
+ if (chamferSize > 0) {
452
+ const xOffset = width10 / 2;
453
+ const yOffset = length / 2;
454
+ finalBody = /* @__PURE__ */ jsxs11(Subtract, { children: [
455
+ body,
456
+ chamferCutout(xOffset, yOffset),
457
+ chamferCutout(-xOffset, yOffset),
458
+ chamferCutout(xOffset, -yOffset),
459
+ chamferCutout(-xOffset, -yOffset)
460
+ ] });
461
+ }
439
462
  return /* @__PURE__ */ jsx11(Colorize2, { color, children: /* @__PURE__ */ jsx11(Translate3, { offset: center, children: /* @__PURE__ */ jsx11(Translate3, { offset: { x: 0, y: 0, z: heightAboveSurface2 }, children: includeNotch ? /* @__PURE__ */ jsxs11(Subtract, { children: [
440
- body,
463
+ finalBody,
441
464
  /* @__PURE__ */ jsx11(Translate3, { offset: actualNotchPosition, children: /* @__PURE__ */ jsx11(Rotate2, { rotation: notchRotation, children: /* @__PURE__ */ jsx11(Cylinder, { radius: notchLength, height: notchWidth }) }) })
442
- ] }) : body }) }) });
465
+ ] }) : finalBody }) }) });
443
466
  };
444
467
 
445
468
  // lib/ExtrudedPads.tsx
@@ -2209,8 +2232,108 @@ var SOT223 = () => {
2209
2232
  ] });
2210
2233
  };
2211
2234
 
2212
- // lib/SOT-323.tsx
2235
+ // lib/tqfp.tsx
2213
2236
  import { Fragment as Fragment31, jsx as jsx35, jsxs as jsxs33 } from "react/jsx-runtime";
2237
+ var TQFP = () => {
2238
+ const pinCount = 64;
2239
+ const pitch = 0.5;
2240
+ const leadWidth = 0.2;
2241
+ const padContactLength = 0.45;
2242
+ const bodyWidth = 9;
2243
+ const sidePinCount = pinCount / 4;
2244
+ const bodyLength10 = bodyWidth;
2245
+ const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
2246
+ const fullLength10 = bodyLength10 + 2 * padContactLength + 0.6;
2247
+ const fullWidth = fullLength10;
2248
+ const leadHeight = 0.8;
2249
+ const leadThickness = 0.25;
2250
+ const bodyDistance = (fullWidth - bodyWidth) / 2 + 0.2;
2251
+ return /* @__PURE__ */ jsxs33(Fragment31, { children: [
2252
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx35(
2253
+ SmdChipLead,
2254
+ {
2255
+ position: {
2256
+ x: -fullWidth / 2,
2257
+ y: i * pitch - pinOffsetToCenter,
2258
+ z: leadThickness / 2
2259
+ },
2260
+ width: leadWidth,
2261
+ thickness: leadThickness,
2262
+ padContactLength,
2263
+ bodyDistance,
2264
+ height: leadHeight
2265
+ },
2266
+ `left-${i}`
2267
+ )),
2268
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx35(
2269
+ SmdChipLead,
2270
+ {
2271
+ rotation: Math.PI,
2272
+ position: {
2273
+ x: fullWidth / 2,
2274
+ y: i * pitch - pinOffsetToCenter,
2275
+ z: leadThickness / 2
2276
+ },
2277
+ width: leadWidth,
2278
+ thickness: leadThickness,
2279
+ padContactLength,
2280
+ bodyDistance,
2281
+ height: leadHeight
2282
+ },
2283
+ `right-${i}`
2284
+ )),
2285
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx35(
2286
+ SmdChipLead,
2287
+ {
2288
+ rotation: Math.PI / 2,
2289
+ position: {
2290
+ x: i * pitch - pinOffsetToCenter,
2291
+ y: -fullLength10 / 2,
2292
+ z: leadThickness / 2
2293
+ },
2294
+ width: leadWidth,
2295
+ thickness: leadThickness,
2296
+ padContactLength,
2297
+ bodyDistance,
2298
+ height: leadHeight
2299
+ },
2300
+ `bottom-${i}`
2301
+ )),
2302
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx35(
2303
+ SmdChipLead,
2304
+ {
2305
+ rotation: -Math.PI / 2,
2306
+ position: {
2307
+ x: i * pitch - pinOffsetToCenter,
2308
+ y: fullLength10 / 2,
2309
+ z: leadThickness / 2
2310
+ },
2311
+ width: leadWidth,
2312
+ thickness: leadThickness,
2313
+ padContactLength,
2314
+ bodyDistance,
2315
+ height: leadHeight
2316
+ },
2317
+ `top-${i}`
2318
+ )),
2319
+ /* @__PURE__ */ jsx35(
2320
+ ChipBody,
2321
+ {
2322
+ center: { x: 0, y: 0, z: leadThickness / 2 },
2323
+ width: bodyWidth,
2324
+ length: bodyLength10,
2325
+ height: 1.2,
2326
+ chamferSize: 0.6,
2327
+ taperRatio: 0.05,
2328
+ notchPosition: { x: 3.5, y: 3.5, z: 1.2 }
2329
+ }
2330
+ )
2331
+ ] });
2332
+ };
2333
+ var tqfp_default = TQFP;
2334
+
2335
+ // lib/SOT-323.tsx
2336
+ import { Fragment as Fragment32, jsx as jsx36, jsxs as jsxs34 } from "react/jsx-runtime";
2214
2337
  var SOT323 = () => {
2215
2338
  const fullWidth = 2.05;
2216
2339
  const bodyWidth = 1.25;
@@ -2222,8 +2345,8 @@ var SOT323 = () => {
2222
2345
  const padContactLength = 0.2;
2223
2346
  const padPitch = 0.65;
2224
2347
  const extendedBodyDistance = fullWidth - bodyWidth;
2225
- return /* @__PURE__ */ jsxs33(Fragment31, { children: [
2226
- /* @__PURE__ */ jsx35(
2348
+ return /* @__PURE__ */ jsxs34(Fragment32, { children: [
2349
+ /* @__PURE__ */ jsx36(
2227
2350
  SmdChipLead,
2228
2351
  {
2229
2352
  rotation: Math.PI,
@@ -2240,7 +2363,7 @@ var SOT323 = () => {
2240
2363
  },
2241
2364
  4
2242
2365
  ),
2243
- /* @__PURE__ */ jsx35(
2366
+ /* @__PURE__ */ jsx36(
2244
2367
  SmdChipLead,
2245
2368
  {
2246
2369
  position: {
@@ -2256,7 +2379,7 @@ var SOT323 = () => {
2256
2379
  },
2257
2380
  1
2258
2381
  ),
2259
- /* @__PURE__ */ jsx35(
2382
+ /* @__PURE__ */ jsx36(
2260
2383
  SmdChipLead,
2261
2384
  {
2262
2385
  position: {
@@ -2272,7 +2395,7 @@ var SOT323 = () => {
2272
2395
  },
2273
2396
  2
2274
2397
  ),
2275
- /* @__PURE__ */ jsx35(
2398
+ /* @__PURE__ */ jsx36(
2276
2399
  ChipBody,
2277
2400
  {
2278
2401
  center: { x: 0, y: 0, z: 0 },
@@ -2289,14 +2412,14 @@ var SOT323 = () => {
2289
2412
  };
2290
2413
 
2291
2414
  // lib/Footprinter3d.tsx
2292
- import { jsx as jsx36 } from "react/jsx-runtime";
2415
+ import { jsx as jsx37 } from "react/jsx-runtime";
2293
2416
  var Footprinter3d = ({ footprint }) => {
2294
2417
  const fpJson = fp3.string(footprint).json();
2295
2418
  switch (fpJson.fn) {
2296
2419
  case "dip":
2297
- return /* @__PURE__ */ jsx36(Dip, { numPins: fpJson.num_pins, pitch: fpJson.p, bodyWidth: fpJson.w });
2420
+ return /* @__PURE__ */ jsx37(Dip, { numPins: fpJson.num_pins, pitch: fpJson.p, bodyWidth: fpJson.w });
2298
2421
  case "tssop":
2299
- return /* @__PURE__ */ jsx36(
2422
+ return /* @__PURE__ */ jsx37(
2300
2423
  Tssop,
2301
2424
  {
2302
2425
  pinCount: fpJson.num_pins,
@@ -2307,7 +2430,7 @@ var Footprinter3d = ({ footprint }) => {
2307
2430
  }
2308
2431
  );
2309
2432
  case "vssop":
2310
- return /* @__PURE__ */ jsx36(
2433
+ return /* @__PURE__ */ jsx37(
2311
2434
  VSSOP,
2312
2435
  {
2313
2436
  pinCount: fpJson.num_pins,
@@ -2319,7 +2442,7 @@ var Footprinter3d = ({ footprint }) => {
2319
2442
  }
2320
2443
  );
2321
2444
  case "qfp":
2322
- return /* @__PURE__ */ jsx36(
2445
+ return /* @__PURE__ */ jsx37(
2323
2446
  QFP,
2324
2447
  {
2325
2448
  pinCount: fpJson.num_pins,
@@ -2329,9 +2452,11 @@ var Footprinter3d = ({ footprint }) => {
2329
2452
  bodyWidth: fpJson.w
2330
2453
  }
2331
2454
  );
2455
+ case "tqfp":
2456
+ return /* @__PURE__ */ jsx37(tqfp_default, {});
2332
2457
  case "qfn":
2333
2458
  const hasThermalPad = typeof fpJson.thermalpad?.x === "number" && typeof fpJson.thermalpad?.y === "number";
2334
- return /* @__PURE__ */ jsx36(
2459
+ return /* @__PURE__ */ jsx37(
2335
2460
  qfn_default,
2336
2461
  {
2337
2462
  num_pins: fpJson.num_pins,
@@ -2348,39 +2473,39 @@ var Footprinter3d = ({ footprint }) => {
2348
2473
  );
2349
2474
  case "pinrow":
2350
2475
  if (fpJson.male)
2351
- return /* @__PURE__ */ jsx36(PinRow, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2476
+ return /* @__PURE__ */ jsx37(PinRow, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2352
2477
  if (fpJson.female)
2353
- return /* @__PURE__ */ jsx36(FemaleHeader, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2478
+ return /* @__PURE__ */ jsx37(FemaleHeader, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2354
2479
  case "cap": {
2355
2480
  switch (fpJson.imperial) {
2356
2481
  case "0402":
2357
- return /* @__PURE__ */ jsx36(A0402, { color: "#856c4d" });
2482
+ return /* @__PURE__ */ jsx37(A0402, { color: "#856c4d" });
2358
2483
  case "0603":
2359
- return /* @__PURE__ */ jsx36(A0603, { color: "#856c4d" });
2484
+ return /* @__PURE__ */ jsx37(A0603, { color: "#856c4d" });
2360
2485
  case "0805":
2361
- return /* @__PURE__ */ jsx36(A0805, { color: "#856c4d" });
2486
+ return /* @__PURE__ */ jsx37(A0805, { color: "#856c4d" });
2362
2487
  case "0201":
2363
- return /* @__PURE__ */ jsx36(A0201, { color: "#856c4d" });
2488
+ return /* @__PURE__ */ jsx37(A0201, { color: "#856c4d" });
2364
2489
  case "01005":
2365
- return /* @__PURE__ */ jsx36(A01005, { color: "#856c4d" });
2490
+ return /* @__PURE__ */ jsx37(A01005, { color: "#856c4d" });
2366
2491
  case "1206":
2367
- return /* @__PURE__ */ jsx36(A1206, { color: "#856c4d" });
2492
+ return /* @__PURE__ */ jsx37(A1206, { color: "#856c4d" });
2368
2493
  case "1210":
2369
- return /* @__PURE__ */ jsx36(A1210, { color: "#856c4d" });
2494
+ return /* @__PURE__ */ jsx37(A1210, { color: "#856c4d" });
2370
2495
  case "2010":
2371
- return /* @__PURE__ */ jsx36(A2010, { color: "#856c4d" });
2496
+ return /* @__PURE__ */ jsx37(A2010, { color: "#856c4d" });
2372
2497
  case "2512":
2373
- return /* @__PURE__ */ jsx36(A2512, { color: "#856c4d" });
2498
+ return /* @__PURE__ */ jsx37(A2512, { color: "#856c4d" });
2374
2499
  }
2375
2500
  }
2376
2501
  case "sot235":
2377
- return /* @__PURE__ */ jsx36(SOT_235_default, {});
2502
+ return /* @__PURE__ */ jsx37(SOT_235_default, {});
2378
2503
  case "sot223":
2379
- return /* @__PURE__ */ jsx36(SOT223, {});
2504
+ return /* @__PURE__ */ jsx37(SOT223, {});
2380
2505
  case "sot323":
2381
- return /* @__PURE__ */ jsx36(SOT323, {});
2506
+ return /* @__PURE__ */ jsx37(SOT323, {});
2382
2507
  case "pushbutton":
2383
- return /* @__PURE__ */ jsx36(
2508
+ return /* @__PURE__ */ jsx37(
2384
2509
  PushButton,
2385
2510
  {
2386
2511
  width: fpJson.w,
@@ -2389,7 +2514,7 @@ var Footprinter3d = ({ footprint }) => {
2389
2514
  }
2390
2515
  );
2391
2516
  case "soic":
2392
- return /* @__PURE__ */ jsx36(
2517
+ return /* @__PURE__ */ jsx37(
2393
2518
  SOIC,
2394
2519
  {
2395
2520
  pinCount: fpJson.num_pins,
@@ -2400,49 +2525,49 @@ var Footprinter3d = ({ footprint }) => {
2400
2525
  }
2401
2526
  );
2402
2527
  case "sod523":
2403
- return /* @__PURE__ */ jsx36(SOD523, {});
2528
+ return /* @__PURE__ */ jsx37(SOD523, {});
2404
2529
  case "sma":
2405
- return /* @__PURE__ */ jsx36(SMA, {});
2530
+ return /* @__PURE__ */ jsx37(SMA, {});
2406
2531
  case "smb":
2407
- return /* @__PURE__ */ jsx36(SMB, {});
2532
+ return /* @__PURE__ */ jsx37(SMB, {});
2408
2533
  case "smc":
2409
- return /* @__PURE__ */ jsx36(SMC, {});
2534
+ return /* @__PURE__ */ jsx37(SMC, {});
2410
2535
  case "smf":
2411
- return /* @__PURE__ */ jsx36(SMF, {});
2536
+ return /* @__PURE__ */ jsx37(SMF, {});
2412
2537
  case "sod123f":
2413
- return /* @__PURE__ */ jsx36(SOD123F, {});
2538
+ return /* @__PURE__ */ jsx37(SOD123F, {});
2414
2539
  case "sod123fl":
2415
- return /* @__PURE__ */ jsx36(SOD123FL, {});
2540
+ return /* @__PURE__ */ jsx37(SOD123FL, {});
2416
2541
  case "sod923":
2417
- return /* @__PURE__ */ jsx36(SOD923, {});
2542
+ return /* @__PURE__ */ jsx37(SOD923, {});
2418
2543
  }
2419
2544
  const colorMatch = footprint.match(/_color\(([^)]+)\)/);
2420
2545
  const color = colorMatch ? colorMatch[1] : void 0;
2421
2546
  switch (fpJson.imperial) {
2422
2547
  case "0402":
2423
- return /* @__PURE__ */ jsx36(A0402, { color });
2548
+ return /* @__PURE__ */ jsx37(A0402, { color });
2424
2549
  case "0603":
2425
- return /* @__PURE__ */ jsx36(A0603, { color });
2550
+ return /* @__PURE__ */ jsx37(A0603, { color });
2426
2551
  case "0805":
2427
- return /* @__PURE__ */ jsx36(A0805, { color });
2552
+ return /* @__PURE__ */ jsx37(A0805, { color });
2428
2553
  case "0201":
2429
- return /* @__PURE__ */ jsx36(A0201, { color });
2554
+ return /* @__PURE__ */ jsx37(A0201, { color });
2430
2555
  case "01005":
2431
- return /* @__PURE__ */ jsx36(A01005, { color });
2556
+ return /* @__PURE__ */ jsx37(A01005, { color });
2432
2557
  case "1206":
2433
- return /* @__PURE__ */ jsx36(A1206, { color });
2558
+ return /* @__PURE__ */ jsx37(A1206, { color });
2434
2559
  case "1210":
2435
- return /* @__PURE__ */ jsx36(A1210, { color });
2560
+ return /* @__PURE__ */ jsx37(A1210, { color });
2436
2561
  case "2010":
2437
- return /* @__PURE__ */ jsx36(A2010, { color });
2562
+ return /* @__PURE__ */ jsx37(A2010, { color });
2438
2563
  case "2512":
2439
- return /* @__PURE__ */ jsx36(A2512, { color });
2564
+ return /* @__PURE__ */ jsx37(A2512, { color });
2440
2565
  }
2441
2566
  return null;
2442
2567
  };
2443
2568
 
2444
2569
  // lib/SOT-23-3P.tsx
2445
- import { Fragment as Fragment32, jsx as jsx37, jsxs as jsxs34 } from "react/jsx-runtime";
2570
+ import { Fragment as Fragment33, jsx as jsx38, jsxs as jsxs35 } from "react/jsx-runtime";
2446
2571
  var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2447
2572
  const bodyWidth = 1.3;
2448
2573
  const bodyLength10 = 2.9;
@@ -2453,8 +2578,8 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2453
2578
  const padContactLength = 0.4;
2454
2579
  const padThickness = leadThickness / 2;
2455
2580
  const extendedBodyDistance = (fullWidth - bodyWidth) / 2 + 0.3;
2456
- return /* @__PURE__ */ jsxs34(Fragment32, { children: [
2457
- /* @__PURE__ */ jsx37(
2581
+ return /* @__PURE__ */ jsxs35(Fragment33, { children: [
2582
+ /* @__PURE__ */ jsx38(
2458
2583
  SmdChipLead,
2459
2584
  {
2460
2585
  rotation: Math.PI,
@@ -2471,7 +2596,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2471
2596
  },
2472
2597
  1
2473
2598
  ),
2474
- /* @__PURE__ */ jsx37(
2599
+ /* @__PURE__ */ jsx38(
2475
2600
  SmdChipLead,
2476
2601
  {
2477
2602
  rotation: Math.PI,
@@ -2488,7 +2613,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2488
2613
  },
2489
2614
  2
2490
2615
  ),
2491
- /* @__PURE__ */ jsx37(
2616
+ /* @__PURE__ */ jsx38(
2492
2617
  SmdChipLead,
2493
2618
  {
2494
2619
  position: {
@@ -2504,7 +2629,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2504
2629
  },
2505
2630
  3
2506
2631
  ),
2507
- /* @__PURE__ */ jsx37(
2632
+ /* @__PURE__ */ jsx38(
2508
2633
  ChipBody,
2509
2634
  {
2510
2635
  center: { x: 0, y: 0, z: 0 },
@@ -2518,7 +2643,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2518
2643
 
2519
2644
  // lib/SOT-563.tsx
2520
2645
  import { Cuboid as Cuboid26, Translate as Translate17, Rotate as Rotate6, Colorize as Colorize18 } from "jscad-fiber";
2521
- import { Fragment as Fragment33, jsx as jsx38, jsxs as jsxs35 } from "react/jsx-runtime";
2646
+ import { Fragment as Fragment34, jsx as jsx39, jsxs as jsxs36 } from "react/jsx-runtime";
2522
2647
  var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
2523
2648
  const bodyWidth = 1.2;
2524
2649
  const bodyLength10 = 1.6;
@@ -2528,11 +2653,11 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
2528
2653
  const leadHeight = 0.13;
2529
2654
  const leadSpacing = 0.5;
2530
2655
  const bodyZOffset = -0.4;
2531
- return /* @__PURE__ */ jsxs35(Fragment33, { children: [
2532
- /* @__PURE__ */ jsx38(Rotate6, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx38(Translate17, { center: [0, 0, bodyZOffset], children: /* @__PURE__ */ jsx38(Colorize18, { color: "grey", children: /* @__PURE__ */ jsx38(Cuboid26, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
2656
+ return /* @__PURE__ */ jsxs36(Fragment34, { children: [
2657
+ /* @__PURE__ */ jsx39(Rotate6, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx39(Translate17, { center: [0, 0, bodyZOffset], children: /* @__PURE__ */ jsx39(Colorize18, { color: "grey", children: /* @__PURE__ */ jsx39(Cuboid26, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
2533
2658
  [-1, 0, 1].flatMap((yOffset, index) => [
2534
2659
  // Left lead
2535
- /* @__PURE__ */ jsx38(
2660
+ /* @__PURE__ */ jsx39(
2536
2661
  Translate17,
2537
2662
  {
2538
2663
  center: [
@@ -2540,16 +2665,16 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
2540
2665
  yOffset * leadSpacing,
2541
2666
  leadHeight / 2
2542
2667
  ],
2543
- children: /* @__PURE__ */ jsx38(Cuboid26, { size: [leadLength, leadWidth, leadHeight] })
2668
+ children: /* @__PURE__ */ jsx39(Cuboid26, { size: [leadLength, leadWidth, leadHeight] })
2544
2669
  },
2545
2670
  `left-${index}`
2546
2671
  ),
2547
2672
  // Right lead
2548
- /* @__PURE__ */ jsx38(
2673
+ /* @__PURE__ */ jsx39(
2549
2674
  Translate17,
2550
2675
  {
2551
2676
  center: [bodyWidth / 2 + 0.03, yOffset * leadSpacing, leadHeight / 2],
2552
- children: /* @__PURE__ */ jsx38(Cuboid26, { size: [leadLength, leadWidth, leadHeight] })
2677
+ children: /* @__PURE__ */ jsx39(Cuboid26, { size: [leadLength, leadWidth, leadHeight] })
2553
2678
  },
2554
2679
  `right-${index}`
2555
2680
  )
@@ -2559,7 +2684,7 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
2559
2684
 
2560
2685
  // lib/SOT-723.tsx
2561
2686
  import { Cuboid as Cuboid27, Translate as Translate18, Rotate as Rotate7, Colorize as Colorize19 } from "jscad-fiber";
2562
- import { Fragment as Fragment34, jsx as jsx39, jsxs as jsxs36 } from "react/jsx-runtime";
2687
+ import { Fragment as Fragment35, jsx as jsx40, jsxs as jsxs37 } from "react/jsx-runtime";
2563
2688
  var getCcwSot723Coords = (pn) => {
2564
2689
  if (pn === 1) {
2565
2690
  return { x: 0, y: 0 };
@@ -2577,11 +2702,11 @@ var SOT723 = () => {
2577
2702
  const leadLength = 0.3;
2578
2703
  const leadHeight = 0.1;
2579
2704
  const centerLeadWidth = 0.42;
2580
- return /* @__PURE__ */ jsxs36(Fragment34, { children: [
2581
- /* @__PURE__ */ jsx39(Rotate7, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx39(Translate18, { center: [0.475, leadHeight / 2, -0.25], children: /* @__PURE__ */ jsx39(Colorize19, { color: "grey", children: /* @__PURE__ */ jsx39(Cuboid27, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
2705
+ return /* @__PURE__ */ jsxs37(Fragment35, { children: [
2706
+ /* @__PURE__ */ jsx40(Rotate7, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx40(Translate18, { center: [0.475, leadHeight / 2, -0.25], children: /* @__PURE__ */ jsx40(Colorize19, { color: "grey", children: /* @__PURE__ */ jsx40(Cuboid27, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
2582
2707
  [1, 2, 3].map((pn) => {
2583
2708
  const { x, y } = getCcwSot723Coords(pn);
2584
- return /* @__PURE__ */ jsx39(Translate18, { center: [x, y, 0], children: /* @__PURE__ */ jsx39(
2709
+ return /* @__PURE__ */ jsx40(Translate18, { center: [x, y, 0], children: /* @__PURE__ */ jsx40(
2585
2710
  Cuboid27,
2586
2711
  {
2587
2712
  size: [
@@ -2596,7 +2721,7 @@ var SOT723 = () => {
2596
2721
  };
2597
2722
 
2598
2723
  // lib/sod-123.tsx
2599
- import { Fragment as Fragment35, jsx as jsx40, jsxs as jsxs37 } from "react/jsx-runtime";
2724
+ import { Fragment as Fragment36, jsx as jsx41, jsxs as jsxs38 } from "react/jsx-runtime";
2600
2725
  var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
2601
2726
  const bodyWidth = 2.9;
2602
2727
  const bodyLength10 = 1.3;
@@ -2607,8 +2732,8 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
2607
2732
  const padContactLength = 0.4;
2608
2733
  const padThickness = leadThickness / 2;
2609
2734
  const bodyDistance = (fullWidth - bodyWidth) / 2;
2610
- return /* @__PURE__ */ jsxs37(Fragment35, { children: [
2611
- /* @__PURE__ */ jsx40(
2735
+ return /* @__PURE__ */ jsxs38(Fragment36, { children: [
2736
+ /* @__PURE__ */ jsx41(
2612
2737
  SmdChipLead,
2613
2738
  {
2614
2739
  position: {
@@ -2624,7 +2749,7 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
2624
2749
  },
2625
2750
  1
2626
2751
  ),
2627
- /* @__PURE__ */ jsx40(
2752
+ /* @__PURE__ */ jsx41(
2628
2753
  SmdChipLead,
2629
2754
  {
2630
2755
  rotation: Math.PI,
@@ -2641,7 +2766,7 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
2641
2766
  },
2642
2767
  2
2643
2768
  ),
2644
- /* @__PURE__ */ jsx40(
2769
+ /* @__PURE__ */ jsx41(
2645
2770
  ChipBody,
2646
2771
  {
2647
2772
  center: { x: 0, y: 0, z: 0 },
@@ -2686,6 +2811,7 @@ export {
2686
2811
  SOT563,
2687
2812
  SOT723,
2688
2813
  SmdChipLead,
2814
+ TQFP,
2689
2815
  Tssop,
2690
2816
  VSSOP
2691
2817
  };