jscad-electronics 0.0.90 → 0.0.92

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
@@ -237,6 +237,8 @@ declare const SOT223: () => react_jsx_runtime.JSX.Element;
237
237
 
238
238
  declare const SOT323: () => react_jsx_runtime.JSX.Element;
239
239
 
240
+ declare const SOT363: () => react_jsx_runtime.JSX.Element;
241
+
240
242
  interface MINIMELFProps {
241
243
  bodyLength?: number;
242
244
  bodyDiameter?: number;
@@ -291,4 +293,6 @@ declare const MS012: ({ pinCount, padContactLength, leadWidth, pitch, }: {
291
293
  padContactLength?: number;
292
294
  }) => react_jsx_runtime.JSX.Element;
293
295
 
294
- export { A01005, A0201, A0402, A0603, A0805, A1206, A1210, A2010, A2512, BGA, ChipBody, type ChipBodyProps, DFN, ExtrudedPads, FootprintPad, FootprintPlatedHole, Footprinter3d, HC49, type HC49Props, LQFP, MELF, type MELFProps, MINIMELF, type MINIMELFProps, MS012, MSOP, MicroMELF, type MicroMELFProps, PinRow, QFN, QFP, SMA, SMB, SMC, SMF, SOD123, SOD123F, SOD123FL, SOD523, SOD882, SOD923, SOT223, SOT233P, SOT323, SOT563, SOT723, SmdChipLead, type SmdChipLeadProps, TQFP, Tssop, VSSOP };
296
+ declare const TO220: () => react_jsx_runtime.JSX.Element;
297
+
298
+ export { A01005, A0201, A0402, A0603, A0805, A1206, A1210, A2010, A2512, BGA, ChipBody, type ChipBodyProps, DFN, ExtrudedPads, FootprintPad, FootprintPlatedHole, Footprinter3d, HC49, type HC49Props, LQFP, MELF, type MELFProps, MINIMELF, type MINIMELFProps, MS012, MSOP, MicroMELF, type MicroMELFProps, PinRow, QFN, QFP, SMA, SMB, SMC, SMF, SOD123, SOD123F, SOD123FL, SOD523, SOD882, SOD923, SOT223, SOT233P, SOT323, SOT363, SOT563, SOT723, SmdChipLead, type SmdChipLeadProps, TO220, TQFP, Tssop, VSSOP };
package/dist/index.js CHANGED
@@ -3087,15 +3087,232 @@ var MS012 = ({
3087
3087
  ] });
3088
3088
  };
3089
3089
 
3090
+ // lib/TO220.tsx
3091
+ import {
3092
+ Colorize as Colorize24,
3093
+ Cuboid as Cuboid31,
3094
+ Hull as Hull15,
3095
+ Rotate as Rotate9,
3096
+ Translate as Translate19,
3097
+ Cylinder as Cylinder8,
3098
+ Subtract as Subtract4
3099
+ } from "jscad-fiber";
3100
+ import { Fragment as Fragment43, jsx as jsx47, jsxs as jsxs45 } from "react/jsx-runtime";
3101
+ var TO220 = () => {
3102
+ const fullLength10 = 20;
3103
+ const bodyLength10 = 9.9;
3104
+ const bodyHeight = 4.5;
3105
+ const zOffset = 1;
3106
+ const padWidth = 9.9;
3107
+ const padLength = 6.5;
3108
+ const padThickness = 1.3;
3109
+ const padHoleDiameter = 3;
3110
+ const prongWidth = 0.81;
3111
+ const prongLength = 16;
3112
+ const prongHeight = 0.5;
3113
+ const prongPitch = 2.7;
3114
+ const bodyWidth = padWidth;
3115
+ const bodyFrontX = fullLength10 - bodyLength10 / 2;
3116
+ const bodyBackX = fullLength10 + bodyLength10 / 2;
3117
+ const prongCenterX = bodyFrontX - prongLength / 2;
3118
+ const padCenterX = bodyBackX + padLength / 2;
3119
+ return /* @__PURE__ */ jsx47(Translate19, { center: [0, 0, zOffset], children: /* @__PURE__ */ jsxs45(Fragment43, { children: [
3120
+ /* @__PURE__ */ jsxs45(Rotate9, { rotation: [0, 55, -55], children: [
3121
+ /* @__PURE__ */ jsxs45(Subtract4, { children: [
3122
+ /* @__PURE__ */ jsx47(
3123
+ Cuboid31,
3124
+ {
3125
+ color: "#ccc",
3126
+ size: [padLength + 0.1, padWidth, padThickness],
3127
+ center: [padCenterX, 0, padThickness - 2]
3128
+ }
3129
+ ),
3130
+ /* @__PURE__ */ jsx47(
3131
+ Cylinder8,
3132
+ {
3133
+ color: "black",
3134
+ center: [padCenterX, 0, padThickness - 2],
3135
+ radius: padHoleDiameter / 2,
3136
+ height: padThickness * 1.2
3137
+ }
3138
+ )
3139
+ ] }),
3140
+ /* @__PURE__ */ jsx47(Colorize24, { color: "#222", children: /* @__PURE__ */ jsx47(
3141
+ ChipBody,
3142
+ {
3143
+ width: bodyWidth,
3144
+ length: bodyLength10,
3145
+ height: bodyHeight,
3146
+ center: { x: fullLength10, y: 0, z: -2.4 },
3147
+ includeNotch: false,
3148
+ straightHeightRatio: 0.3,
3149
+ taperRatio: 0.04,
3150
+ heightAboveSurface: 1
3151
+ }
3152
+ ) })
3153
+ ] }),
3154
+ /* @__PURE__ */ jsx47(Rotate9, { rotation: [0, 55, 55], children: Array.from({ length: 3 }).map((_, i) => {
3155
+ const x = prongCenterX;
3156
+ const y = (i - 1) * prongPitch;
3157
+ const z = -prongHeight - 0.6;
3158
+ return /* @__PURE__ */ jsxs45(Colorize24, { color: "gold", children: [
3159
+ /* @__PURE__ */ jsxs45(Hull15, { children: [
3160
+ /* @__PURE__ */ jsx47(Translate19, { center: [bodyFrontX - bodyHeight / 2 + 0.1, y, z], children: /* @__PURE__ */ jsx47(Cuboid31, { size: [bodyHeight, prongWidth + 1, prongHeight] }) }),
3161
+ /* @__PURE__ */ jsx47(
3162
+ Translate19,
3163
+ {
3164
+ center: [bodyFrontX - bodyHeight / 2 - 1 + 0.1, y, z],
3165
+ children: /* @__PURE__ */ jsx47(Cuboid31, { size: [bodyHeight, prongWidth, prongHeight] })
3166
+ }
3167
+ )
3168
+ ] }),
3169
+ /* @__PURE__ */ jsx47(Translate19, { center: [x, y, z], children: /* @__PURE__ */ jsx47(Cuboid31, { size: [prongLength + 0.1, prongWidth, prongHeight] }) })
3170
+ ] }, `prong-${i}`);
3171
+ }) })
3172
+ ] }) });
3173
+ };
3174
+
3175
+ // lib/SOT-363.tsx
3176
+ import { Fragment as Fragment44, jsx as jsx48, jsxs as jsxs46 } from "react/jsx-runtime";
3177
+ var SOT363 = () => {
3178
+ const fullWidth = 2;
3179
+ const bodyWidth = 1.25;
3180
+ const bodyLength10 = 2;
3181
+ const bodyHeight = 1.1;
3182
+ const leadWidth = 0.25;
3183
+ const leadThickness = 0.15;
3184
+ const leadHeight = 0.85;
3185
+ const padContactLength = 0.3;
3186
+ const extendedBodyDistance = fullWidth - bodyWidth;
3187
+ return /* @__PURE__ */ jsxs46(Fragment44, { children: [
3188
+ /* @__PURE__ */ jsx48(
3189
+ SmdChipLead,
3190
+ {
3191
+ rotation: Math.PI,
3192
+ position: {
3193
+ x: fullWidth / 2 + extendedBodyDistance / 4,
3194
+ y: -0.65,
3195
+ z: leadThickness / 2
3196
+ },
3197
+ width: leadWidth,
3198
+ thickness: leadThickness,
3199
+ padContactLength,
3200
+ bodyDistance: extendedBodyDistance,
3201
+ height: leadHeight
3202
+ },
3203
+ 1
3204
+ ),
3205
+ /* @__PURE__ */ jsx48(
3206
+ SmdChipLead,
3207
+ {
3208
+ rotation: Math.PI,
3209
+ position: {
3210
+ x: fullWidth / 2 + extendedBodyDistance / 4,
3211
+ y: 0,
3212
+ z: leadThickness / 2
3213
+ },
3214
+ width: leadWidth,
3215
+ thickness: leadThickness,
3216
+ padContactLength,
3217
+ bodyDistance: extendedBodyDistance,
3218
+ height: leadHeight
3219
+ },
3220
+ 2
3221
+ ),
3222
+ /* @__PURE__ */ jsx48(
3223
+ SmdChipLead,
3224
+ {
3225
+ rotation: Math.PI,
3226
+ position: {
3227
+ x: fullWidth / 2 + extendedBodyDistance / 4,
3228
+ y: 0.65,
3229
+ z: leadThickness / 2
3230
+ },
3231
+ width: leadWidth,
3232
+ thickness: leadThickness,
3233
+ padContactLength,
3234
+ bodyDistance: extendedBodyDistance,
3235
+ height: leadHeight
3236
+ },
3237
+ 3
3238
+ ),
3239
+ /* @__PURE__ */ jsx48(
3240
+ SmdChipLead,
3241
+ {
3242
+ position: {
3243
+ x: -fullWidth / 2 - extendedBodyDistance / 4,
3244
+ y: 0,
3245
+ z: leadThickness / 2
3246
+ },
3247
+ width: leadWidth,
3248
+ thickness: leadThickness,
3249
+ padContactLength,
3250
+ bodyDistance: extendedBodyDistance,
3251
+ height: leadHeight
3252
+ },
3253
+ 3
3254
+ ),
3255
+ /* @__PURE__ */ jsx48(
3256
+ SmdChipLead,
3257
+ {
3258
+ position: {
3259
+ x: -fullWidth / 2 - extendedBodyDistance / 4,
3260
+ y: -0.65,
3261
+ z: leadThickness / 2
3262
+ },
3263
+ width: leadWidth,
3264
+ thickness: leadThickness,
3265
+ padContactLength,
3266
+ bodyDistance: extendedBodyDistance,
3267
+ height: leadHeight
3268
+ },
3269
+ 1
3270
+ ),
3271
+ /* @__PURE__ */ jsx48(
3272
+ SmdChipLead,
3273
+ {
3274
+ position: {
3275
+ x: -fullWidth / 2 - extendedBodyDistance / 4,
3276
+ y: 0.65,
3277
+ z: leadThickness / 2
3278
+ },
3279
+ width: leadWidth,
3280
+ thickness: leadThickness,
3281
+ padContactLength,
3282
+ bodyDistance: extendedBodyDistance,
3283
+ height: leadHeight
3284
+ },
3285
+ 2
3286
+ ),
3287
+ /* @__PURE__ */ jsx48(
3288
+ ChipBody,
3289
+ {
3290
+ center: { x: 0, y: 0, z: 0 },
3291
+ width: bodyWidth,
3292
+ length: bodyLength10,
3293
+ height: bodyHeight,
3294
+ straightHeightRatio: 0.6,
3295
+ notchPosition: {
3296
+ x: bodyWidth / 2 - 0.25,
3297
+ y: bodyHeight / 2 + 0.2,
3298
+ z: bodyHeight
3299
+ },
3300
+ heightAboveSurface: 0.1
3301
+ }
3302
+ )
3303
+ ] });
3304
+ };
3305
+ var SOT_363_default = SOT363;
3306
+
3090
3307
  // lib/Footprinter3d.tsx
3091
- import { jsx as jsx47 } from "react/jsx-runtime";
3308
+ import { jsx as jsx49 } from "react/jsx-runtime";
3092
3309
  var Footprinter3d = ({ footprint }) => {
3093
3310
  const fpJson = fp3.string(footprint).json();
3094
3311
  switch (fpJson.fn) {
3095
3312
  case "dip":
3096
- return /* @__PURE__ */ jsx47(Dip, { numPins: fpJson.num_pins, pitch: fpJson.p, bodyWidth: fpJson.w });
3313
+ return /* @__PURE__ */ jsx49(Dip, { numPins: fpJson.num_pins, pitch: fpJson.p, bodyWidth: fpJson.w });
3097
3314
  case "tssop":
3098
- return /* @__PURE__ */ jsx47(
3315
+ return /* @__PURE__ */ jsx49(
3099
3316
  Tssop,
3100
3317
  {
3101
3318
  pinCount: fpJson.num_pins,
@@ -3106,7 +3323,7 @@ var Footprinter3d = ({ footprint }) => {
3106
3323
  }
3107
3324
  );
3108
3325
  case "msop":
3109
- return /* @__PURE__ */ jsx47(
3326
+ return /* @__PURE__ */ jsx49(
3110
3327
  MSOP,
3111
3328
  {
3112
3329
  pinCount: fpJson.num_pins,
@@ -3117,7 +3334,7 @@ var Footprinter3d = ({ footprint }) => {
3117
3334
  }
3118
3335
  );
3119
3336
  case "vssop":
3120
- return /* @__PURE__ */ jsx47(
3337
+ return /* @__PURE__ */ jsx49(
3121
3338
  VSSOP,
3122
3339
  {
3123
3340
  pinCount: fpJson.num_pins,
@@ -3129,7 +3346,7 @@ var Footprinter3d = ({ footprint }) => {
3129
3346
  }
3130
3347
  );
3131
3348
  case "qfp":
3132
- return /* @__PURE__ */ jsx47(
3349
+ return /* @__PURE__ */ jsx49(
3133
3350
  QFP,
3134
3351
  {
3135
3352
  pinCount: fpJson.num_pins,
@@ -3140,12 +3357,12 @@ var Footprinter3d = ({ footprint }) => {
3140
3357
  }
3141
3358
  );
3142
3359
  case "tqfp":
3143
- return /* @__PURE__ */ jsx47(tqfp_default, {});
3360
+ return /* @__PURE__ */ jsx49(tqfp_default, {});
3144
3361
  case "lqfp":
3145
- return /* @__PURE__ */ jsx47(LQFP, { pinCount: fpJson.num_pins });
3362
+ return /* @__PURE__ */ jsx49(LQFP, { pinCount: fpJson.num_pins });
3146
3363
  case "qfn": {
3147
3364
  const hasThermalPad = typeof fpJson.thermalpad?.x === "number" && typeof fpJson.thermalpad?.y === "number";
3148
- return /* @__PURE__ */ jsx47(
3365
+ return /* @__PURE__ */ jsx49(
3149
3366
  qfn_default,
3150
3367
  {
3151
3368
  num_pins: fpJson.num_pins,
@@ -3163,7 +3380,7 @@ var Footprinter3d = ({ footprint }) => {
3163
3380
  }
3164
3381
  case "dfn": {
3165
3382
  const hasThermalPad = typeof fpJson.thermalpad?.x === "number" && typeof fpJson.thermalpad?.y === "number";
3166
- return /* @__PURE__ */ jsx47(
3383
+ return /* @__PURE__ */ jsx49(
3167
3384
  DFN,
3168
3385
  {
3169
3386
  num_pins: fpJson.num_pins,
@@ -3181,39 +3398,41 @@ var Footprinter3d = ({ footprint }) => {
3181
3398
  }
3182
3399
  case "pinrow":
3183
3400
  if (fpJson.male)
3184
- return /* @__PURE__ */ jsx47(PinRow, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
3401
+ return /* @__PURE__ */ jsx49(PinRow, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
3185
3402
  if (fpJson.female)
3186
- return /* @__PURE__ */ jsx47(FemaleHeader, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
3403
+ return /* @__PURE__ */ jsx49(FemaleHeader, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
3187
3404
  case "cap": {
3188
3405
  switch (fpJson.imperial) {
3189
3406
  case "0402":
3190
- return /* @__PURE__ */ jsx47(A0402, { color: "#856c4d" });
3407
+ return /* @__PURE__ */ jsx49(A0402, { color: "#856c4d" });
3191
3408
  case "0603":
3192
- return /* @__PURE__ */ jsx47(A0603, { color: "#856c4d" });
3409
+ return /* @__PURE__ */ jsx49(A0603, { color: "#856c4d" });
3193
3410
  case "0805":
3194
- return /* @__PURE__ */ jsx47(A0805, { color: "#856c4d" });
3411
+ return /* @__PURE__ */ jsx49(A0805, { color: "#856c4d" });
3195
3412
  case "0201":
3196
- return /* @__PURE__ */ jsx47(A0201, { color: "#856c4d" });
3413
+ return /* @__PURE__ */ jsx49(A0201, { color: "#856c4d" });
3197
3414
  case "01005":
3198
- return /* @__PURE__ */ jsx47(A01005, { color: "#856c4d" });
3415
+ return /* @__PURE__ */ jsx49(A01005, { color: "#856c4d" });
3199
3416
  case "1206":
3200
- return /* @__PURE__ */ jsx47(A1206, { color: "#856c4d" });
3417
+ return /* @__PURE__ */ jsx49(A1206, { color: "#856c4d" });
3201
3418
  case "1210":
3202
- return /* @__PURE__ */ jsx47(A1210, { color: "#856c4d" });
3419
+ return /* @__PURE__ */ jsx49(A1210, { color: "#856c4d" });
3203
3420
  case "2010":
3204
- return /* @__PURE__ */ jsx47(A2010, { color: "#856c4d" });
3421
+ return /* @__PURE__ */ jsx49(A2010, { color: "#856c4d" });
3205
3422
  case "2512":
3206
- return /* @__PURE__ */ jsx47(A2512, { color: "#856c4d" });
3423
+ return /* @__PURE__ */ jsx49(A2512, { color: "#856c4d" });
3207
3424
  }
3208
3425
  }
3209
3426
  case "sot235":
3210
- return /* @__PURE__ */ jsx47(SOT_235_default, {});
3427
+ return /* @__PURE__ */ jsx49(SOT_235_default, {});
3211
3428
  case "sot223":
3212
- return /* @__PURE__ */ jsx47(SOT223, {});
3429
+ return /* @__PURE__ */ jsx49(SOT223, {});
3213
3430
  case "sot323":
3214
- return /* @__PURE__ */ jsx47(SOT323, {});
3431
+ return /* @__PURE__ */ jsx49(SOT323, {});
3432
+ case "sot363":
3433
+ return /* @__PURE__ */ jsx49(SOT_363_default, {});
3215
3434
  case "pushbutton":
3216
- return /* @__PURE__ */ jsx47(
3435
+ return /* @__PURE__ */ jsx49(
3217
3436
  PushButton,
3218
3437
  {
3219
3438
  width: fpJson.w,
@@ -3222,7 +3441,7 @@ var Footprinter3d = ({ footprint }) => {
3222
3441
  }
3223
3442
  );
3224
3443
  case "soic":
3225
- return /* @__PURE__ */ jsx47(
3444
+ return /* @__PURE__ */ jsx49(
3226
3445
  SOIC,
3227
3446
  {
3228
3447
  pinCount: fpJson.num_pins,
@@ -3233,33 +3452,33 @@ var Footprinter3d = ({ footprint }) => {
3233
3452
  }
3234
3453
  );
3235
3454
  case "sod523":
3236
- return /* @__PURE__ */ jsx47(SOD523, {});
3455
+ return /* @__PURE__ */ jsx49(SOD523, {});
3237
3456
  case "sod882":
3238
- return /* @__PURE__ */ jsx47(SOD882, {});
3457
+ return /* @__PURE__ */ jsx49(SOD882, {});
3239
3458
  case "sma":
3240
- return /* @__PURE__ */ jsx47(SMA, {});
3459
+ return /* @__PURE__ */ jsx49(SMA, {});
3241
3460
  case "smb":
3242
- return /* @__PURE__ */ jsx47(SMB, {});
3461
+ return /* @__PURE__ */ jsx49(SMB, {});
3243
3462
  case "smc":
3244
- return /* @__PURE__ */ jsx47(SMC, {});
3463
+ return /* @__PURE__ */ jsx49(SMC, {});
3245
3464
  case "smf":
3246
- return /* @__PURE__ */ jsx47(SMF, {});
3465
+ return /* @__PURE__ */ jsx49(SMF, {});
3247
3466
  case "sod123f":
3248
- return /* @__PURE__ */ jsx47(SOD123F, {});
3467
+ return /* @__PURE__ */ jsx49(SOD123F, {});
3249
3468
  case "sod123fl":
3250
- return /* @__PURE__ */ jsx47(SOD123FL, {});
3469
+ return /* @__PURE__ */ jsx49(SOD123FL, {});
3251
3470
  case "sod923":
3252
- return /* @__PURE__ */ jsx47(SOD923, {});
3471
+ return /* @__PURE__ */ jsx49(SOD923, {});
3253
3472
  case "hc49":
3254
- return /* @__PURE__ */ jsx47(HC49, {});
3473
+ return /* @__PURE__ */ jsx49(HC49, {});
3255
3474
  case "micromelf":
3256
- return /* @__PURE__ */ jsx47(MicroMELF, {});
3475
+ return /* @__PURE__ */ jsx49(MicroMELF, {});
3257
3476
  case "minimelf":
3258
- return /* @__PURE__ */ jsx47(MINIMELF, {});
3477
+ return /* @__PURE__ */ jsx49(MINIMELF, {});
3259
3478
  case "melf":
3260
- return /* @__PURE__ */ jsx47(MELF, {});
3479
+ return /* @__PURE__ */ jsx49(MELF, {});
3261
3480
  case "ms012":
3262
- return /* @__PURE__ */ jsx47(
3481
+ return /* @__PURE__ */ jsx49(
3263
3482
  MS012,
3264
3483
  {
3265
3484
  pinCount: fpJson.num_pins,
@@ -3269,35 +3488,37 @@ var Footprinter3d = ({ footprint }) => {
3269
3488
  }
3270
3489
  );
3271
3490
  case "sot723":
3272
- return /* @__PURE__ */ jsx47(SOT723, {});
3491
+ return /* @__PURE__ */ jsx49(SOT723, {});
3492
+ case "to220":
3493
+ return /* @__PURE__ */ jsx49(TO220, {});
3273
3494
  }
3274
3495
  const colorMatch = footprint.match(/_color\(([^)]+)\)/);
3275
3496
  const color = colorMatch ? colorMatch[1] : void 0;
3276
3497
  switch (fpJson.imperial) {
3277
3498
  case "0402":
3278
- return /* @__PURE__ */ jsx47(A0402, { color });
3499
+ return /* @__PURE__ */ jsx49(A0402, { color });
3279
3500
  case "0603":
3280
- return /* @__PURE__ */ jsx47(A0603, { color });
3501
+ return /* @__PURE__ */ jsx49(A0603, { color });
3281
3502
  case "0805":
3282
- return /* @__PURE__ */ jsx47(A0805, { color });
3503
+ return /* @__PURE__ */ jsx49(A0805, { color });
3283
3504
  case "0201":
3284
- return /* @__PURE__ */ jsx47(A0201, { color });
3505
+ return /* @__PURE__ */ jsx49(A0201, { color });
3285
3506
  case "01005":
3286
- return /* @__PURE__ */ jsx47(A01005, { color });
3507
+ return /* @__PURE__ */ jsx49(A01005, { color });
3287
3508
  case "1206":
3288
- return /* @__PURE__ */ jsx47(A1206, { color });
3509
+ return /* @__PURE__ */ jsx49(A1206, { color });
3289
3510
  case "1210":
3290
- return /* @__PURE__ */ jsx47(A1210, { color });
3511
+ return /* @__PURE__ */ jsx49(A1210, { color });
3291
3512
  case "2010":
3292
- return /* @__PURE__ */ jsx47(A2010, { color });
3513
+ return /* @__PURE__ */ jsx49(A2010, { color });
3293
3514
  case "2512":
3294
- return /* @__PURE__ */ jsx47(A2512, { color });
3515
+ return /* @__PURE__ */ jsx49(A2512, { color });
3295
3516
  }
3296
3517
  return null;
3297
3518
  };
3298
3519
 
3299
3520
  // lib/SOT-23-3P.tsx
3300
- import { Fragment as Fragment43, jsx as jsx48, jsxs as jsxs45 } from "react/jsx-runtime";
3521
+ import { Fragment as Fragment45, jsx as jsx50, jsxs as jsxs47 } from "react/jsx-runtime";
3301
3522
  var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
3302
3523
  const bodyWidth = 1.3;
3303
3524
  const bodyLength10 = 2.9;
@@ -3308,8 +3529,8 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
3308
3529
  const padContactLength = 0.4;
3309
3530
  const padThickness = leadThickness / 2;
3310
3531
  const extendedBodyDistance = (fullWidth - bodyWidth) / 2 + 0.3;
3311
- return /* @__PURE__ */ jsxs45(Fragment43, { children: [
3312
- /* @__PURE__ */ jsx48(
3532
+ return /* @__PURE__ */ jsxs47(Fragment45, { children: [
3533
+ /* @__PURE__ */ jsx50(
3313
3534
  SmdChipLead,
3314
3535
  {
3315
3536
  rotation: Math.PI,
@@ -3326,7 +3547,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
3326
3547
  },
3327
3548
  1
3328
3549
  ),
3329
- /* @__PURE__ */ jsx48(
3550
+ /* @__PURE__ */ jsx50(
3330
3551
  SmdChipLead,
3331
3552
  {
3332
3553
  rotation: Math.PI,
@@ -3343,7 +3564,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
3343
3564
  },
3344
3565
  2
3345
3566
  ),
3346
- /* @__PURE__ */ jsx48(
3567
+ /* @__PURE__ */ jsx50(
3347
3568
  SmdChipLead,
3348
3569
  {
3349
3570
  position: {
@@ -3359,7 +3580,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
3359
3580
  },
3360
3581
  3
3361
3582
  ),
3362
- /* @__PURE__ */ jsx48(
3583
+ /* @__PURE__ */ jsx50(
3363
3584
  ChipBody,
3364
3585
  {
3365
3586
  center: { x: 0, y: 0, z: 0 },
@@ -3372,8 +3593,8 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
3372
3593
  };
3373
3594
 
3374
3595
  // lib/SOT-563.tsx
3375
- import { Cuboid as Cuboid31, Translate as Translate19, Rotate as Rotate9, Colorize as Colorize24 } from "jscad-fiber";
3376
- import { Fragment as Fragment44, jsx as jsx49, jsxs as jsxs46 } from "react/jsx-runtime";
3596
+ import { Cuboid as Cuboid32, Translate as Translate20, Rotate as Rotate10, Colorize as Colorize25 } from "jscad-fiber";
3597
+ import { Fragment as Fragment46, jsx as jsx51, jsxs as jsxs48 } from "react/jsx-runtime";
3377
3598
  var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
3378
3599
  const bodyWidth = 1.2;
3379
3600
  const bodyLength10 = 1.6;
@@ -3383,28 +3604,28 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
3383
3604
  const leadHeight = 0.13;
3384
3605
  const leadSpacing = 0.5;
3385
3606
  const bodyZOffset = -0.4;
3386
- return /* @__PURE__ */ jsxs46(Fragment44, { children: [
3387
- /* @__PURE__ */ jsx49(Rotate9, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx49(Translate19, { center: [0, 0, bodyZOffset], children: /* @__PURE__ */ jsx49(Colorize24, { color: "grey", children: /* @__PURE__ */ jsx49(Cuboid31, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
3607
+ return /* @__PURE__ */ jsxs48(Fragment46, { children: [
3608
+ /* @__PURE__ */ jsx51(Rotate10, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx51(Translate20, { center: [0, 0, bodyZOffset], children: /* @__PURE__ */ jsx51(Colorize25, { color: "grey", children: /* @__PURE__ */ jsx51(Cuboid32, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
3388
3609
  [-1, 0, 1].flatMap((yOffset, index) => [
3389
3610
  // Left lead
3390
- /* @__PURE__ */ jsx49(
3391
- Translate19,
3611
+ /* @__PURE__ */ jsx51(
3612
+ Translate20,
3392
3613
  {
3393
3614
  center: [
3394
3615
  -bodyWidth / 2 - 0.03,
3395
3616
  yOffset * leadSpacing,
3396
3617
  leadHeight / 2
3397
3618
  ],
3398
- children: /* @__PURE__ */ jsx49(Cuboid31, { size: [leadLength, leadWidth, leadHeight] })
3619
+ children: /* @__PURE__ */ jsx51(Cuboid32, { size: [leadLength, leadWidth, leadHeight] })
3399
3620
  },
3400
3621
  `left-${index}`
3401
3622
  ),
3402
3623
  // Right lead
3403
- /* @__PURE__ */ jsx49(
3404
- Translate19,
3624
+ /* @__PURE__ */ jsx51(
3625
+ Translate20,
3405
3626
  {
3406
3627
  center: [bodyWidth / 2 + 0.03, yOffset * leadSpacing, leadHeight / 2],
3407
- children: /* @__PURE__ */ jsx49(Cuboid31, { size: [leadLength, leadWidth, leadHeight] })
3628
+ children: /* @__PURE__ */ jsx51(Cuboid32, { size: [leadLength, leadWidth, leadHeight] })
3408
3629
  },
3409
3630
  `right-${index}`
3410
3631
  )
@@ -3413,7 +3634,7 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
3413
3634
  };
3414
3635
 
3415
3636
  // lib/sod-123.tsx
3416
- import { Fragment as Fragment45, jsx as jsx50, jsxs as jsxs47 } from "react/jsx-runtime";
3637
+ import { Fragment as Fragment47, jsx as jsx52, jsxs as jsxs49 } from "react/jsx-runtime";
3417
3638
  var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
3418
3639
  const bodyWidth = 2.9;
3419
3640
  const bodyLength10 = 1.3;
@@ -3424,8 +3645,8 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
3424
3645
  const padContactLength = 0.4;
3425
3646
  const padThickness = leadThickness / 2;
3426
3647
  const bodyDistance = (fullWidth - bodyWidth) / 2;
3427
- return /* @__PURE__ */ jsxs47(Fragment45, { children: [
3428
- /* @__PURE__ */ jsx50(
3648
+ return /* @__PURE__ */ jsxs49(Fragment47, { children: [
3649
+ /* @__PURE__ */ jsx52(
3429
3650
  SmdChipLead,
3430
3651
  {
3431
3652
  position: {
@@ -3441,7 +3662,7 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
3441
3662
  },
3442
3663
  1
3443
3664
  ),
3444
- /* @__PURE__ */ jsx50(
3665
+ /* @__PURE__ */ jsx52(
3445
3666
  SmdChipLead,
3446
3667
  {
3447
3668
  rotation: Math.PI,
@@ -3458,7 +3679,7 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
3458
3679
  },
3459
3680
  2
3460
3681
  ),
3461
- /* @__PURE__ */ jsx50(
3682
+ /* @__PURE__ */ jsx52(
3462
3683
  ChipBody,
3463
3684
  {
3464
3685
  center: { x: 0, y: 0, z: 0 },
@@ -3509,9 +3730,11 @@ export {
3509
3730
  SOT223,
3510
3731
  SOT233P,
3511
3732
  SOT323,
3733
+ SOT363,
3512
3734
  SOT563,
3513
3735
  SOT723,
3514
3736
  SmdChipLead,
3737
+ TO220,
3515
3738
  TQFP,
3516
3739
  Tssop,
3517
3740
  VSSOP