jscad-electronics 0.0.69 → 0.0.70

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
@@ -61,8 +61,22 @@ interface ChipBodyProps {
61
61
  y: number;
62
62
  z: number;
63
63
  };
64
+ color?: string;
65
+ taperRatio?: number;
66
+ faceRatio?: number;
67
+ straightHeightRatio?: number;
68
+ includeNotch?: boolean;
69
+ notchRadius?: number;
70
+ notchPosition?: {
71
+ x: number;
72
+ y: number;
73
+ z: number;
74
+ };
75
+ notchRotation?: [number, number, number];
76
+ notchLength?: number;
77
+ notchWidth?: number;
64
78
  }
65
- declare const ChipBody: ({ center, width, length, height, heightAboveSurface, }: ChipBodyProps) => react_jsx_runtime.JSX.Element;
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;
66
80
 
67
81
  declare const ExtrudedPads: ({ circuitJson, footprint, }: {
68
82
  circuitJson?: AnyCircuitElement[];
@@ -183,4 +197,6 @@ declare const SOD123FL: () => react_jsx_runtime.JSX.Element;
183
197
 
184
198
  declare const SOD923: () => react_jsx_runtime.JSX.Element;
185
199
 
186
- 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, SOT233P, SOT563, SOT723, SmdChipLead, type SmdChipLeadProps, Tssop, VSSOP };
200
+ declare const SOT223: () => react_jsx_runtime.JSX.Element;
201
+
202
+ 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, SOT563, SOT723, SmdChipLead, type SmdChipLeadProps, Tssop, VSSOP };
package/dist/index.js CHANGED
@@ -401,31 +401,45 @@ var ChipBody = ({
401
401
  width: width10,
402
402
  length,
403
403
  height: height10,
404
- heightAboveSurface: heightAboveSurface2 = 0.15
404
+ heightAboveSurface: heightAboveSurface2 = 0.15,
405
+ color = "#555",
406
+ taperRatio = 0.12,
407
+ faceRatio = 0.75,
408
+ straightHeightRatio = 0.5,
409
+ includeNotch = true,
410
+ notchRadius,
411
+ notchPosition,
412
+ notchRotation = [0, 0, 0],
413
+ notchLength = 0.5,
414
+ notchWidth = 0.25
405
415
  }) => {
406
- const straightHeight = height10 * 0.5;
416
+ const straightHeight = height10 * straightHeightRatio;
407
417
  const taperHeight = height10 - straightHeight;
408
- const taperInset = Math.min(width10, length) * 0.12;
409
- const faceWidth = Math.max(width10 - taperInset, width10 * 0.75);
410
- const faceLength = Math.max(length - taperInset, length * 0.75);
411
- const notchRadius = Math.min(width10, length) * 0.12;
412
- const notchCenterZ = height10 - notchRadius * 0.6;
413
- const notchCenterY = length / 2 - notchRadius * 0.25;
414
- const notchLength = 0.5;
415
- const notchWidth = 0.25;
416
- return /* @__PURE__ */ jsx11(Colorize2, { color: "#555", children: /* @__PURE__ */ jsx11(Translate3, { offset: center, children: /* @__PURE__ */ jsx11(Translate3, { offset: { x: 0, y: 0, z: heightAboveSurface2 }, children: /* @__PURE__ */ jsxs11(Subtract, { children: [
417
- /* @__PURE__ */ jsxs11(Union2, { children: [
418
- /* @__PURE__ */ jsxs11(Hull, { children: [
419
- /* @__PURE__ */ jsx11(Translate3, { z: 5e-3, children: /* @__PURE__ */ jsx11(Cuboid11, { size: [faceWidth, faceLength, 0.01] }) }),
420
- /* @__PURE__ */ jsx11(Translate3, { z: straightHeight, children: /* @__PURE__ */ jsx11(Cuboid11, { size: [width10, length, 0.01] }) })
421
- ] }),
422
- /* @__PURE__ */ jsxs11(Hull, { children: [
423
- /* @__PURE__ */ jsx11(Translate3, { z: straightHeight, children: /* @__PURE__ */ jsx11(Cuboid11, { size: [width10, length, 0.01] }) }),
424
- /* @__PURE__ */ jsx11(Translate3, { z: straightHeight + taperHeight, children: /* @__PURE__ */ jsx11(Cuboid11, { size: [faceWidth, faceLength, 0.01] }) })
425
- ] })
418
+ const taperInset = Math.min(width10, length) * taperRatio;
419
+ const faceWidth = Math.max(width10 - taperInset, width10 * faceRatio);
420
+ const faceLength = Math.max(length - taperInset, length * faceRatio);
421
+ const defaultNotchRadius = Math.min(width10, length) * 0.12;
422
+ const actualNotchRadius = notchRadius ?? defaultNotchRadius;
423
+ const defaultNotchPosition = {
424
+ x: 0,
425
+ y: length / 2 - actualNotchRadius * 0.25,
426
+ z: height10
427
+ };
428
+ const actualNotchPosition = notchPosition ?? defaultNotchPosition;
429
+ const body = /* @__PURE__ */ jsxs11(Union2, { children: [
430
+ /* @__PURE__ */ jsxs11(Hull, { children: [
431
+ /* @__PURE__ */ jsx11(Translate3, { z: 5e-3, children: /* @__PURE__ */ jsx11(Cuboid11, { size: [faceWidth, faceLength, 0.01] }) }),
432
+ /* @__PURE__ */ jsx11(Translate3, { z: straightHeight, children: /* @__PURE__ */ jsx11(Cuboid11, { size: [width10, length, 0.01] }) })
426
433
  ] }),
427
- /* @__PURE__ */ jsx11(Translate3, { offset: { x: 0, y: notchCenterY, z: height10 }, children: /* @__PURE__ */ jsx11(Rotate2, { rotation: [0, 0, 0], children: /* @__PURE__ */ jsx11(Cylinder, { radius: notchLength, height: notchWidth }) }) })
428
- ] }) }) }) });
434
+ /* @__PURE__ */ jsxs11(Hull, { children: [
435
+ /* @__PURE__ */ jsx11(Translate3, { z: straightHeight, children: /* @__PURE__ */ jsx11(Cuboid11, { size: [width10, length, 0.01] }) }),
436
+ /* @__PURE__ */ jsx11(Translate3, { z: straightHeight + taperHeight, children: /* @__PURE__ */ jsx11(Cuboid11, { size: [faceWidth, faceLength, 0.01] }) })
437
+ ] })
438
+ ] });
439
+ 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,
441
+ /* @__PURE__ */ jsx11(Translate3, { offset: actualNotchPosition, children: /* @__PURE__ */ jsx11(Rotate2, { rotation: notchRotation, children: /* @__PURE__ */ jsx11(Cylinder, { radius: notchLength, height: notchWidth }) }) })
442
+ ] }) : body }) }) });
429
443
  };
430
444
 
431
445
  // lib/ExtrudedPads.tsx
@@ -2100,15 +2114,110 @@ var SOD923 = () => {
2100
2114
  ] });
2101
2115
  };
2102
2116
 
2117
+ // lib/SOT-223.tsx
2118
+ import { Fragment as Fragment30, jsx as jsx34, jsxs as jsxs32 } from "react/jsx-runtime";
2119
+ var SOT223 = () => {
2120
+ const fullWidth = 6.6;
2121
+ const bodyWidth = 3.5;
2122
+ const bodyLength10 = 6.5;
2123
+ const bodyHeight = 1.7;
2124
+ const leadWidth = 0.7;
2125
+ const leftLeadWidth = 3;
2126
+ const leadThickness = 0.25;
2127
+ const leadHeight = 0.75;
2128
+ const padContactLength = 0.5;
2129
+ const padPitch = 2.3;
2130
+ const extendedBodyDistance = fullWidth - bodyWidth;
2131
+ return /* @__PURE__ */ jsxs32(Fragment30, { children: [
2132
+ /* @__PURE__ */ jsx34(
2133
+ SmdChipLead,
2134
+ {
2135
+ rotation: Math.PI,
2136
+ position: {
2137
+ x: fullWidth / 2 + extendedBodyDistance / 4,
2138
+ y: 0,
2139
+ z: leadThickness / 2
2140
+ },
2141
+ width: leftLeadWidth,
2142
+ thickness: leadThickness,
2143
+ padContactLength,
2144
+ bodyDistance: extendedBodyDistance,
2145
+ height: leadHeight
2146
+ },
2147
+ 4
2148
+ ),
2149
+ /* @__PURE__ */ jsx34(
2150
+ SmdChipLead,
2151
+ {
2152
+ position: {
2153
+ x: -fullWidth / 2 - extendedBodyDistance / 4,
2154
+ y: 0,
2155
+ z: leadThickness / 2
2156
+ },
2157
+ width: leadWidth,
2158
+ thickness: leadThickness,
2159
+ padContactLength,
2160
+ bodyDistance: extendedBodyDistance,
2161
+ height: leadHeight
2162
+ },
2163
+ 3
2164
+ ),
2165
+ /* @__PURE__ */ jsx34(
2166
+ SmdChipLead,
2167
+ {
2168
+ position: {
2169
+ x: -fullWidth / 2 - extendedBodyDistance / 4,
2170
+ y: -padPitch,
2171
+ z: leadThickness / 2
2172
+ },
2173
+ width: leadWidth,
2174
+ thickness: leadThickness,
2175
+ padContactLength,
2176
+ bodyDistance: extendedBodyDistance,
2177
+ height: leadHeight
2178
+ },
2179
+ 1
2180
+ ),
2181
+ /* @__PURE__ */ jsx34(
2182
+ SmdChipLead,
2183
+ {
2184
+ position: {
2185
+ x: -fullWidth / 2 - extendedBodyDistance / 4,
2186
+ y: padPitch,
2187
+ z: leadThickness / 2
2188
+ },
2189
+ width: leadWidth,
2190
+ thickness: leadThickness,
2191
+ padContactLength,
2192
+ bodyDistance: extendedBodyDistance,
2193
+ height: leadHeight
2194
+ },
2195
+ 2
2196
+ ),
2197
+ /* @__PURE__ */ jsx34(
2198
+ ChipBody,
2199
+ {
2200
+ center: { x: 0, y: 0, z: 0 },
2201
+ width: bodyWidth,
2202
+ length: bodyLength10,
2203
+ height: bodyHeight,
2204
+ includeNotch: false,
2205
+ taperRatio: 0.06,
2206
+ straightHeightRatio: 0.45
2207
+ }
2208
+ )
2209
+ ] });
2210
+ };
2211
+
2103
2212
  // lib/Footprinter3d.tsx
2104
- import { jsx as jsx34 } from "react/jsx-runtime";
2213
+ import { jsx as jsx35 } from "react/jsx-runtime";
2105
2214
  var Footprinter3d = ({ footprint }) => {
2106
2215
  const fpJson = fp3.string(footprint).json();
2107
2216
  switch (fpJson.fn) {
2108
2217
  case "dip":
2109
- return /* @__PURE__ */ jsx34(Dip, { numPins: fpJson.num_pins, pitch: fpJson.p, bodyWidth: fpJson.w });
2218
+ return /* @__PURE__ */ jsx35(Dip, { numPins: fpJson.num_pins, pitch: fpJson.p, bodyWidth: fpJson.w });
2110
2219
  case "tssop":
2111
- return /* @__PURE__ */ jsx34(
2220
+ return /* @__PURE__ */ jsx35(
2112
2221
  Tssop,
2113
2222
  {
2114
2223
  pinCount: fpJson.num_pins,
@@ -2119,7 +2228,7 @@ var Footprinter3d = ({ footprint }) => {
2119
2228
  }
2120
2229
  );
2121
2230
  case "vssop":
2122
- return /* @__PURE__ */ jsx34(
2231
+ return /* @__PURE__ */ jsx35(
2123
2232
  VSSOP,
2124
2233
  {
2125
2234
  pinCount: fpJson.num_pins,
@@ -2131,7 +2240,7 @@ var Footprinter3d = ({ footprint }) => {
2131
2240
  }
2132
2241
  );
2133
2242
  case "qfp":
2134
- return /* @__PURE__ */ jsx34(
2243
+ return /* @__PURE__ */ jsx35(
2135
2244
  QFP,
2136
2245
  {
2137
2246
  pinCount: fpJson.num_pins,
@@ -2143,7 +2252,7 @@ var Footprinter3d = ({ footprint }) => {
2143
2252
  );
2144
2253
  case "qfn":
2145
2254
  const hasThermalPad = typeof fpJson.thermalpad?.x === "number" && typeof fpJson.thermalpad?.y === "number";
2146
- return /* @__PURE__ */ jsx34(
2255
+ return /* @__PURE__ */ jsx35(
2147
2256
  qfn_default,
2148
2257
  {
2149
2258
  num_pins: fpJson.num_pins,
@@ -2160,35 +2269,37 @@ var Footprinter3d = ({ footprint }) => {
2160
2269
  );
2161
2270
  case "pinrow":
2162
2271
  if (fpJson.male)
2163
- return /* @__PURE__ */ jsx34(PinRow, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2272
+ return /* @__PURE__ */ jsx35(PinRow, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2164
2273
  if (fpJson.female)
2165
- return /* @__PURE__ */ jsx34(FemaleHeader, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2274
+ return /* @__PURE__ */ jsx35(FemaleHeader, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2166
2275
  case "cap": {
2167
2276
  switch (fpJson.imperial) {
2168
2277
  case "0402":
2169
- return /* @__PURE__ */ jsx34(A0402, { color: "#856c4d" });
2278
+ return /* @__PURE__ */ jsx35(A0402, { color: "#856c4d" });
2170
2279
  case "0603":
2171
- return /* @__PURE__ */ jsx34(A0603, { color: "#856c4d" });
2280
+ return /* @__PURE__ */ jsx35(A0603, { color: "#856c4d" });
2172
2281
  case "0805":
2173
- return /* @__PURE__ */ jsx34(A0805, { color: "#856c4d" });
2282
+ return /* @__PURE__ */ jsx35(A0805, { color: "#856c4d" });
2174
2283
  case "0201":
2175
- return /* @__PURE__ */ jsx34(A0201, { color: "#856c4d" });
2284
+ return /* @__PURE__ */ jsx35(A0201, { color: "#856c4d" });
2176
2285
  case "01005":
2177
- return /* @__PURE__ */ jsx34(A01005, { color: "#856c4d" });
2286
+ return /* @__PURE__ */ jsx35(A01005, { color: "#856c4d" });
2178
2287
  case "1206":
2179
- return /* @__PURE__ */ jsx34(A1206, { color: "#856c4d" });
2288
+ return /* @__PURE__ */ jsx35(A1206, { color: "#856c4d" });
2180
2289
  case "1210":
2181
- return /* @__PURE__ */ jsx34(A1210, { color: "#856c4d" });
2290
+ return /* @__PURE__ */ jsx35(A1210, { color: "#856c4d" });
2182
2291
  case "2010":
2183
- return /* @__PURE__ */ jsx34(A2010, { color: "#856c4d" });
2292
+ return /* @__PURE__ */ jsx35(A2010, { color: "#856c4d" });
2184
2293
  case "2512":
2185
- return /* @__PURE__ */ jsx34(A2512, { color: "#856c4d" });
2294
+ return /* @__PURE__ */ jsx35(A2512, { color: "#856c4d" });
2186
2295
  }
2187
2296
  }
2188
2297
  case "sot235":
2189
- return /* @__PURE__ */ jsx34(SOT_235_default, {});
2298
+ return /* @__PURE__ */ jsx35(SOT_235_default, {});
2299
+ case "sot223":
2300
+ return /* @__PURE__ */ jsx35(SOT223, {});
2190
2301
  case "pushbutton":
2191
- return /* @__PURE__ */ jsx34(
2302
+ return /* @__PURE__ */ jsx35(
2192
2303
  PushButton,
2193
2304
  {
2194
2305
  width: fpJson.w,
@@ -2197,7 +2308,7 @@ var Footprinter3d = ({ footprint }) => {
2197
2308
  }
2198
2309
  );
2199
2310
  case "soic":
2200
- return /* @__PURE__ */ jsx34(
2311
+ return /* @__PURE__ */ jsx35(
2201
2312
  SOIC,
2202
2313
  {
2203
2314
  pinCount: fpJson.num_pins,
@@ -2208,49 +2319,49 @@ var Footprinter3d = ({ footprint }) => {
2208
2319
  }
2209
2320
  );
2210
2321
  case "sod523":
2211
- return /* @__PURE__ */ jsx34(SOD523, {});
2322
+ return /* @__PURE__ */ jsx35(SOD523, {});
2212
2323
  case "sma":
2213
- return /* @__PURE__ */ jsx34(SMA, {});
2324
+ return /* @__PURE__ */ jsx35(SMA, {});
2214
2325
  case "smb":
2215
- return /* @__PURE__ */ jsx34(SMB, {});
2326
+ return /* @__PURE__ */ jsx35(SMB, {});
2216
2327
  case "smc":
2217
- return /* @__PURE__ */ jsx34(SMC, {});
2328
+ return /* @__PURE__ */ jsx35(SMC, {});
2218
2329
  case "smf":
2219
- return /* @__PURE__ */ jsx34(SMF, {});
2330
+ return /* @__PURE__ */ jsx35(SMF, {});
2220
2331
  case "sod123f":
2221
- return /* @__PURE__ */ jsx34(SOD123F, {});
2332
+ return /* @__PURE__ */ jsx35(SOD123F, {});
2222
2333
  case "sod123fl":
2223
- return /* @__PURE__ */ jsx34(SOD123FL, {});
2334
+ return /* @__PURE__ */ jsx35(SOD123FL, {});
2224
2335
  case "sod923":
2225
- return /* @__PURE__ */ jsx34(SOD923, {});
2336
+ return /* @__PURE__ */ jsx35(SOD923, {});
2226
2337
  }
2227
2338
  const colorMatch = footprint.match(/_color\(([^)]+)\)/);
2228
2339
  const color = colorMatch ? colorMatch[1] : void 0;
2229
2340
  switch (fpJson.imperial) {
2230
2341
  case "0402":
2231
- return /* @__PURE__ */ jsx34(A0402, { color });
2342
+ return /* @__PURE__ */ jsx35(A0402, { color });
2232
2343
  case "0603":
2233
- return /* @__PURE__ */ jsx34(A0603, { color });
2344
+ return /* @__PURE__ */ jsx35(A0603, { color });
2234
2345
  case "0805":
2235
- return /* @__PURE__ */ jsx34(A0805, { color });
2346
+ return /* @__PURE__ */ jsx35(A0805, { color });
2236
2347
  case "0201":
2237
- return /* @__PURE__ */ jsx34(A0201, { color });
2348
+ return /* @__PURE__ */ jsx35(A0201, { color });
2238
2349
  case "01005":
2239
- return /* @__PURE__ */ jsx34(A01005, { color });
2350
+ return /* @__PURE__ */ jsx35(A01005, { color });
2240
2351
  case "1206":
2241
- return /* @__PURE__ */ jsx34(A1206, { color });
2352
+ return /* @__PURE__ */ jsx35(A1206, { color });
2242
2353
  case "1210":
2243
- return /* @__PURE__ */ jsx34(A1210, { color });
2354
+ return /* @__PURE__ */ jsx35(A1210, { color });
2244
2355
  case "2010":
2245
- return /* @__PURE__ */ jsx34(A2010, { color });
2356
+ return /* @__PURE__ */ jsx35(A2010, { color });
2246
2357
  case "2512":
2247
- return /* @__PURE__ */ jsx34(A2512, { color });
2358
+ return /* @__PURE__ */ jsx35(A2512, { color });
2248
2359
  }
2249
2360
  return null;
2250
2361
  };
2251
2362
 
2252
2363
  // lib/SOT-23-3P.tsx
2253
- import { Fragment as Fragment30, jsx as jsx35, jsxs as jsxs32 } from "react/jsx-runtime";
2364
+ import { Fragment as Fragment31, jsx as jsx36, jsxs as jsxs33 } from "react/jsx-runtime";
2254
2365
  var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2255
2366
  const bodyWidth = 1.3;
2256
2367
  const bodyLength10 = 2.9;
@@ -2261,8 +2372,8 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2261
2372
  const padContactLength = 0.4;
2262
2373
  const padThickness = leadThickness / 2;
2263
2374
  const extendedBodyDistance = (fullWidth - bodyWidth) / 2 + 0.3;
2264
- return /* @__PURE__ */ jsxs32(Fragment30, { children: [
2265
- /* @__PURE__ */ jsx35(
2375
+ return /* @__PURE__ */ jsxs33(Fragment31, { children: [
2376
+ /* @__PURE__ */ jsx36(
2266
2377
  SmdChipLead,
2267
2378
  {
2268
2379
  rotation: Math.PI,
@@ -2279,7 +2390,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2279
2390
  },
2280
2391
  1
2281
2392
  ),
2282
- /* @__PURE__ */ jsx35(
2393
+ /* @__PURE__ */ jsx36(
2283
2394
  SmdChipLead,
2284
2395
  {
2285
2396
  rotation: Math.PI,
@@ -2296,7 +2407,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2296
2407
  },
2297
2408
  2
2298
2409
  ),
2299
- /* @__PURE__ */ jsx35(
2410
+ /* @__PURE__ */ jsx36(
2300
2411
  SmdChipLead,
2301
2412
  {
2302
2413
  position: {
@@ -2312,7 +2423,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2312
2423
  },
2313
2424
  3
2314
2425
  ),
2315
- /* @__PURE__ */ jsx35(
2426
+ /* @__PURE__ */ jsx36(
2316
2427
  ChipBody,
2317
2428
  {
2318
2429
  center: { x: 0, y: 0, z: 0 },
@@ -2326,7 +2437,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2326
2437
 
2327
2438
  // lib/SOT-563.tsx
2328
2439
  import { Cuboid as Cuboid26, Translate as Translate17, Rotate as Rotate6, Colorize as Colorize18 } from "jscad-fiber";
2329
- import { Fragment as Fragment31, jsx as jsx36, jsxs as jsxs33 } from "react/jsx-runtime";
2440
+ import { Fragment as Fragment32, jsx as jsx37, jsxs as jsxs34 } from "react/jsx-runtime";
2330
2441
  var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
2331
2442
  const bodyWidth = 1.2;
2332
2443
  const bodyLength10 = 1.6;
@@ -2336,11 +2447,11 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
2336
2447
  const leadHeight = 0.13;
2337
2448
  const leadSpacing = 0.5;
2338
2449
  const bodyZOffset = -0.4;
2339
- return /* @__PURE__ */ jsxs33(Fragment31, { children: [
2340
- /* @__PURE__ */ jsx36(Rotate6, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx36(Translate17, { center: [0, 0, bodyZOffset], children: /* @__PURE__ */ jsx36(Colorize18, { color: "grey", children: /* @__PURE__ */ jsx36(Cuboid26, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
2450
+ return /* @__PURE__ */ jsxs34(Fragment32, { children: [
2451
+ /* @__PURE__ */ jsx37(Rotate6, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx37(Translate17, { center: [0, 0, bodyZOffset], children: /* @__PURE__ */ jsx37(Colorize18, { color: "grey", children: /* @__PURE__ */ jsx37(Cuboid26, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
2341
2452
  [-1, 0, 1].flatMap((yOffset, index) => [
2342
2453
  // Left lead
2343
- /* @__PURE__ */ jsx36(
2454
+ /* @__PURE__ */ jsx37(
2344
2455
  Translate17,
2345
2456
  {
2346
2457
  center: [
@@ -2348,16 +2459,16 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
2348
2459
  yOffset * leadSpacing,
2349
2460
  leadHeight / 2
2350
2461
  ],
2351
- children: /* @__PURE__ */ jsx36(Cuboid26, { size: [leadLength, leadWidth, leadHeight] })
2462
+ children: /* @__PURE__ */ jsx37(Cuboid26, { size: [leadLength, leadWidth, leadHeight] })
2352
2463
  },
2353
2464
  `left-${index}`
2354
2465
  ),
2355
2466
  // Right lead
2356
- /* @__PURE__ */ jsx36(
2467
+ /* @__PURE__ */ jsx37(
2357
2468
  Translate17,
2358
2469
  {
2359
2470
  center: [bodyWidth / 2 + 0.03, yOffset * leadSpacing, leadHeight / 2],
2360
- children: /* @__PURE__ */ jsx36(Cuboid26, { size: [leadLength, leadWidth, leadHeight] })
2471
+ children: /* @__PURE__ */ jsx37(Cuboid26, { size: [leadLength, leadWidth, leadHeight] })
2361
2472
  },
2362
2473
  `right-${index}`
2363
2474
  )
@@ -2367,7 +2478,7 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
2367
2478
 
2368
2479
  // lib/SOT-723.tsx
2369
2480
  import { Cuboid as Cuboid27, Translate as Translate18, Rotate as Rotate7, Colorize as Colorize19 } from "jscad-fiber";
2370
- import { Fragment as Fragment32, jsx as jsx37, jsxs as jsxs34 } from "react/jsx-runtime";
2481
+ import { Fragment as Fragment33, jsx as jsx38, jsxs as jsxs35 } from "react/jsx-runtime";
2371
2482
  var getCcwSot723Coords = (pn) => {
2372
2483
  if (pn === 1) {
2373
2484
  return { x: 0, y: 0 };
@@ -2385,11 +2496,11 @@ var SOT723 = () => {
2385
2496
  const leadLength = 0.3;
2386
2497
  const leadHeight = 0.1;
2387
2498
  const centerLeadWidth = 0.42;
2388
- return /* @__PURE__ */ jsxs34(Fragment32, { children: [
2389
- /* @__PURE__ */ jsx37(Rotate7, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx37(Translate18, { center: [0.475, leadHeight / 2, -0.25], children: /* @__PURE__ */ jsx37(Colorize19, { color: "grey", children: /* @__PURE__ */ jsx37(Cuboid27, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
2499
+ return /* @__PURE__ */ jsxs35(Fragment33, { children: [
2500
+ /* @__PURE__ */ jsx38(Rotate7, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx38(Translate18, { center: [0.475, leadHeight / 2, -0.25], children: /* @__PURE__ */ jsx38(Colorize19, { color: "grey", children: /* @__PURE__ */ jsx38(Cuboid27, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
2390
2501
  [1, 2, 3].map((pn) => {
2391
2502
  const { x, y } = getCcwSot723Coords(pn);
2392
- return /* @__PURE__ */ jsx37(Translate18, { center: [x, y, 0], children: /* @__PURE__ */ jsx37(
2503
+ return /* @__PURE__ */ jsx38(Translate18, { center: [x, y, 0], children: /* @__PURE__ */ jsx38(
2393
2504
  Cuboid27,
2394
2505
  {
2395
2506
  size: [
@@ -2404,7 +2515,7 @@ var SOT723 = () => {
2404
2515
  };
2405
2516
 
2406
2517
  // lib/sod-123.tsx
2407
- import { Fragment as Fragment33, jsx as jsx38, jsxs as jsxs35 } from "react/jsx-runtime";
2518
+ import { Fragment as Fragment34, jsx as jsx39, jsxs as jsxs36 } from "react/jsx-runtime";
2408
2519
  var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
2409
2520
  const bodyWidth = 2.9;
2410
2521
  const bodyLength10 = 1.3;
@@ -2415,8 +2526,8 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
2415
2526
  const padContactLength = 0.4;
2416
2527
  const padThickness = leadThickness / 2;
2417
2528
  const bodyDistance = (fullWidth - bodyWidth) / 2;
2418
- return /* @__PURE__ */ jsxs35(Fragment33, { children: [
2419
- /* @__PURE__ */ jsx38(
2529
+ return /* @__PURE__ */ jsxs36(Fragment34, { children: [
2530
+ /* @__PURE__ */ jsx39(
2420
2531
  SmdChipLead,
2421
2532
  {
2422
2533
  position: {
@@ -2432,7 +2543,7 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
2432
2543
  },
2433
2544
  1
2434
2545
  ),
2435
- /* @__PURE__ */ jsx38(
2546
+ /* @__PURE__ */ jsx39(
2436
2547
  SmdChipLead,
2437
2548
  {
2438
2549
  rotation: Math.PI,
@@ -2449,7 +2560,7 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
2449
2560
  },
2450
2561
  2
2451
2562
  ),
2452
- /* @__PURE__ */ jsx38(
2563
+ /* @__PURE__ */ jsx39(
2453
2564
  ChipBody,
2454
2565
  {
2455
2566
  center: { x: 0, y: 0, z: 0 },
@@ -2488,6 +2599,7 @@ export {
2488
2599
  SOD123FL,
2489
2600
  SOD523,
2490
2601
  SOD923,
2602
+ SOT223,
2491
2603
  SOT233P,
2492
2604
  SOT563,
2493
2605
  SOT723,