jscad-electronics 0.0.81 → 0.0.82

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.js CHANGED
@@ -456,7 +456,7 @@ var ChipBody = ({
456
456
  }
457
457
  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: [
458
458
  finalBody,
459
- /* @__PURE__ */ jsx11(Translate3, { offset: actualNotchPosition, children: /* @__PURE__ */ jsx11(Rotate2, { rotation: notchRotation, children: /* @__PURE__ */ jsx11(Cylinder, { radius: notchLength, height: notchWidth }) }) })
459
+ /* @__PURE__ */ jsx11(Translate3, { offset: actualNotchPosition, children: /* @__PURE__ */ jsx11(Rotate2, { rotation: notchRotation, children: /* @__PURE__ */ jsx11(Cylinder, { radius: actualNotchRadius, height: notchWidth }) }) })
460
460
  ] }) : finalBody }) }) });
461
461
  };
462
462
 
@@ -784,8 +784,69 @@ var Tssop = ({
784
784
  ] });
785
785
  };
786
786
 
787
- // lib/qfp.tsx
787
+ // lib/MSOP.tsx
788
788
  import { Fragment as Fragment14, jsx as jsx18, jsxs as jsxs16 } from "react/jsx-runtime";
789
+ var MSOP = ({
790
+ pinCount,
791
+ padContactLength = 0.4,
792
+ leadWidth = 0.2,
793
+ pitch = 0.65,
794
+ bodyWidth = 3
795
+ }) => {
796
+ const sidePinCount = Math.ceil(pinCount / 2);
797
+ const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
798
+ const leadThickness = 0.2;
799
+ return /* @__PURE__ */ jsxs16(Fragment14, { children: [
800
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx18(
801
+ SmdChipLead,
802
+ {
803
+ position: {
804
+ x: -bodyWidth / 2 - padContactLength - 0.3,
805
+ y: i * pitch - pinOffsetToCenter,
806
+ z: leadThickness / 2
807
+ },
808
+ width: leadWidth,
809
+ thickness: leadThickness,
810
+ padContactLength,
811
+ bodyDistance: padContactLength + 0.4,
812
+ height: 0.6
813
+ },
814
+ i
815
+ )),
816
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx18(
817
+ SmdChipLead,
818
+ {
819
+ rotation: Math.PI,
820
+ position: {
821
+ x: bodyWidth / 2 + padContactLength + 0.3,
822
+ y: i * pitch - pinOffsetToCenter,
823
+ z: leadThickness / 2
824
+ },
825
+ width: leadWidth,
826
+ thickness: leadThickness,
827
+ padContactLength,
828
+ bodyDistance: padContactLength + 0.4,
829
+ height: 0.6
830
+ },
831
+ i
832
+ )),
833
+ /* @__PURE__ */ jsx18(
834
+ ChipBody,
835
+ {
836
+ center: { x: 0, y: 0, z: leadThickness / 2 },
837
+ width: bodyWidth,
838
+ length: bodyWidth,
839
+ height: 1.1,
840
+ notchRadius: 0.35,
841
+ heightAboveSurface: 0.1,
842
+ taperRatio: 0.09
843
+ }
844
+ )
845
+ ] });
846
+ };
847
+
848
+ // lib/qfp.tsx
849
+ import { Fragment as Fragment15, jsx as jsx19, jsxs as jsxs17 } from "react/jsx-runtime";
789
850
  var QFP = ({
790
851
  pinCount,
791
852
  pitch,
@@ -805,8 +866,8 @@ var QFP = ({
805
866
  const leadHeight = 0.8;
806
867
  const leadThickness = 0.15;
807
868
  const bodyDistance = (fullWidth - bodyWidth) / 2 + 0.2;
808
- return /* @__PURE__ */ jsxs16(Fragment14, { children: [
809
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx18(
869
+ return /* @__PURE__ */ jsxs17(Fragment15, { children: [
870
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx19(
810
871
  SmdChipLead,
811
872
  {
812
873
  position: {
@@ -822,7 +883,7 @@ var QFP = ({
822
883
  },
823
884
  `left-${i}`
824
885
  )),
825
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx18(
886
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx19(
826
887
  SmdChipLead,
827
888
  {
828
889
  rotation: Math.PI,
@@ -839,7 +900,7 @@ var QFP = ({
839
900
  },
840
901
  `right-${i}`
841
902
  )),
842
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx18(
903
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx19(
843
904
  SmdChipLead,
844
905
  {
845
906
  rotation: Math.PI / 2,
@@ -856,7 +917,7 @@ var QFP = ({
856
917
  },
857
918
  `bottom-${i}`
858
919
  )),
859
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx18(
920
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx19(
860
921
  SmdChipLead,
861
922
  {
862
923
  rotation: -Math.PI / 2,
@@ -873,7 +934,7 @@ var QFP = ({
873
934
  },
874
935
  `top-${i}`
875
936
  )),
876
- /* @__PURE__ */ jsx18(
937
+ /* @__PURE__ */ jsx19(
877
938
  ChipBody,
878
939
  {
879
940
  center: { x: 0, y: 0, z: leadThickness / 2 },
@@ -932,7 +993,7 @@ var getLeadWidth = (pinCount, width10) => {
932
993
 
933
994
  // lib/PinRow.tsx
934
995
  import { Cuboid as Cuboid14, Colorize as Colorize6, Hull as Hull2 } from "jscad-fiber";
935
- import { Fragment as Fragment15, jsx as jsx19, jsxs as jsxs17 } from "react/jsx-runtime";
996
+ import { Fragment as Fragment16, jsx as jsx20, jsxs as jsxs18 } from "react/jsx-runtime";
936
997
  var PinRow = ({
937
998
  numberOfPins,
938
999
  pitch = 2.54,
@@ -943,8 +1004,8 @@ var PinRow = ({
943
1004
  const bodyWidth = numberOfPins * pitch;
944
1005
  const shortSidePinLength = 3;
945
1006
  const xoff = -((numberOfPins - 1) / 2) * pitch;
946
- return /* @__PURE__ */ jsxs17(Fragment15, { children: [
947
- /* @__PURE__ */ jsx19(
1007
+ return /* @__PURE__ */ jsxs18(Fragment16, { children: [
1008
+ /* @__PURE__ */ jsx20(
948
1009
  Cuboid14,
949
1010
  {
950
1011
  color: "#222",
@@ -952,9 +1013,9 @@ var PinRow = ({
952
1013
  center: [0, 0, bodyHeight / 2]
953
1014
  }
954
1015
  ),
955
- Array.from({ length: numberOfPins }, (_, i) => /* @__PURE__ */ jsxs17(Fragment15, { children: [
956
- /* @__PURE__ */ jsx19(Colorize6, { color: "gold", children: /* @__PURE__ */ jsxs17(Hull2, { children: [
957
- /* @__PURE__ */ jsx19(
1016
+ Array.from({ length: numberOfPins }, (_, i) => /* @__PURE__ */ jsxs18(Fragment16, { children: [
1017
+ /* @__PURE__ */ jsx20(Colorize6, { color: "gold", children: /* @__PURE__ */ jsxs18(Hull2, { children: [
1018
+ /* @__PURE__ */ jsx20(
958
1019
  Cuboid14,
959
1020
  {
960
1021
  color: "gold",
@@ -966,7 +1027,7 @@ var PinRow = ({
966
1027
  ]
967
1028
  }
968
1029
  ),
969
- /* @__PURE__ */ jsx19(
1030
+ /* @__PURE__ */ jsx20(
970
1031
  Cuboid14,
971
1032
  {
972
1033
  color: "gold",
@@ -979,8 +1040,8 @@ var PinRow = ({
979
1040
  }
980
1041
  )
981
1042
  ] }) }),
982
- /* @__PURE__ */ jsx19(Colorize6, { color: "gold", children: /* @__PURE__ */ jsxs17(Hull2, { children: [
983
- /* @__PURE__ */ jsx19(
1043
+ /* @__PURE__ */ jsx20(Colorize6, { color: "gold", children: /* @__PURE__ */ jsxs18(Hull2, { children: [
1044
+ /* @__PURE__ */ jsx20(
984
1045
  Cuboid14,
985
1046
  {
986
1047
  color: "gold",
@@ -988,7 +1049,7 @@ var PinRow = ({
988
1049
  center: [xoff + i * pitch, 0, -longSidePinLength / 2 * 0.9]
989
1050
  }
990
1051
  ),
991
- /* @__PURE__ */ jsx19(
1052
+ /* @__PURE__ */ jsx20(
992
1053
  Cuboid14,
993
1054
  {
994
1055
  color: "gold",
@@ -1096,7 +1157,7 @@ var getQuadPinMap = ({
1096
1157
  };
1097
1158
 
1098
1159
  // lib/qfn.tsx
1099
- import { Fragment as Fragment16, jsx as jsx20, jsxs as jsxs18 } from "react/jsx-runtime";
1160
+ import { Fragment as Fragment17, jsx as jsx21, jsxs as jsxs19 } from "react/jsx-runtime";
1100
1161
  var QFN = ({
1101
1162
  num_pins = 16,
1102
1163
  bodyWidth = 9,
@@ -1138,15 +1199,15 @@ var QFN = ({
1138
1199
  const pn = pin_map[i + 1];
1139
1200
  pinPositions.push({ pn, x, y, pw, pl });
1140
1201
  }
1141
- return /* @__PURE__ */ jsxs18(Fragment16, { children: [
1142
- /* @__PURE__ */ jsx20(Colorize7, { color: "grey", children: /* @__PURE__ */ jsx20(
1202
+ return /* @__PURE__ */ jsxs19(Fragment17, { children: [
1203
+ /* @__PURE__ */ jsx21(Colorize7, { color: "grey", children: /* @__PURE__ */ jsx21(
1143
1204
  Cuboid15,
1144
1205
  {
1145
1206
  center: { x: 0, y: 0, z: bodyThickness / 2 },
1146
1207
  size: [bodyWidth, bodyLength10, bodyThickness]
1147
1208
  }
1148
1209
  ) }),
1149
- pinPositions.map((p, i) => /* @__PURE__ */ jsx20(
1210
+ pinPositions.map((p, i) => /* @__PURE__ */ jsx21(
1150
1211
  Cuboid15,
1151
1212
  {
1152
1213
  center: { x: p.x, y: p.y, z: thermalPadThickness / 2 },
@@ -1154,7 +1215,7 @@ var QFN = ({
1154
1215
  },
1155
1216
  i
1156
1217
  )),
1157
- thermalPadSize?.length !== void 0 && thermalPadSize?.width !== void 0 && /* @__PURE__ */ jsx20(
1218
+ thermalPadSize?.length !== void 0 && thermalPadSize?.width !== void 0 && /* @__PURE__ */ jsx21(
1158
1219
  Cuboid15,
1159
1220
  {
1160
1221
  center: { x: 0, y: 0, z: thermalPadThickness / 2 },
@@ -1170,7 +1231,7 @@ var QFN = ({
1170
1231
  var qfn_default = QFN;
1171
1232
 
1172
1233
  // lib/SOT-235.tsx
1173
- import { Fragment as Fragment17, jsx as jsx21, jsxs as jsxs19 } from "react/jsx-runtime";
1234
+ import { Fragment as Fragment18, jsx as jsx22, jsxs as jsxs20 } from "react/jsx-runtime";
1174
1235
  var SOT235 = () => {
1175
1236
  const fullWidth = 2.8;
1176
1237
  const bodyWidth = 1.6;
@@ -1182,8 +1243,8 @@ var SOT235 = () => {
1182
1243
  const padContactLength = 0.5;
1183
1244
  const padPitch = 0.95;
1184
1245
  const extendedBodyDistance = fullWidth - bodyWidth;
1185
- return /* @__PURE__ */ jsxs19(Fragment17, { children: [
1186
- /* @__PURE__ */ jsx21(
1246
+ return /* @__PURE__ */ jsxs20(Fragment18, { children: [
1247
+ /* @__PURE__ */ jsx22(
1187
1248
  SmdChipLead,
1188
1249
  {
1189
1250
  rotation: Math.PI,
@@ -1200,7 +1261,7 @@ var SOT235 = () => {
1200
1261
  },
1201
1262
  1
1202
1263
  ),
1203
- /* @__PURE__ */ jsx21(
1264
+ /* @__PURE__ */ jsx22(
1204
1265
  SmdChipLead,
1205
1266
  {
1206
1267
  rotation: Math.PI,
@@ -1217,7 +1278,7 @@ var SOT235 = () => {
1217
1278
  },
1218
1279
  2
1219
1280
  ),
1220
- /* @__PURE__ */ jsx21(
1281
+ /* @__PURE__ */ jsx22(
1221
1282
  SmdChipLead,
1222
1283
  {
1223
1284
  position: {
@@ -1233,7 +1294,7 @@ var SOT235 = () => {
1233
1294
  },
1234
1295
  3
1235
1296
  ),
1236
- /* @__PURE__ */ jsx21(
1297
+ /* @__PURE__ */ jsx22(
1237
1298
  SmdChipLead,
1238
1299
  {
1239
1300
  position: {
@@ -1249,7 +1310,7 @@ var SOT235 = () => {
1249
1310
  },
1250
1311
  1
1251
1312
  ),
1252
- /* @__PURE__ */ jsx21(
1313
+ /* @__PURE__ */ jsx22(
1253
1314
  SmdChipLead,
1254
1315
  {
1255
1316
  position: {
@@ -1265,7 +1326,7 @@ var SOT235 = () => {
1265
1326
  },
1266
1327
  2
1267
1328
  ),
1268
- /* @__PURE__ */ jsx21(
1329
+ /* @__PURE__ */ jsx22(
1269
1330
  ChipBody,
1270
1331
  {
1271
1332
  center: { x: 0, y: 0, z: 0 },
@@ -1280,7 +1341,7 @@ var SOT_235_default = SOT235;
1280
1341
 
1281
1342
  // lib/FemaleHeader.tsx
1282
1343
  import { Cuboid as Cuboid16, Colorize as Colorize8, Hull as Hull3, Subtract as Subtract3, Cylinder as Cylinder4 } from "jscad-fiber";
1283
- import { Fragment as Fragment18, jsx as jsx22, jsxs as jsxs20 } from "react/jsx-runtime";
1344
+ import { Fragment as Fragment19, jsx as jsx23, jsxs as jsxs21 } from "react/jsx-runtime";
1284
1345
  var FemaleHeader = ({
1285
1346
  numberOfPins,
1286
1347
  pitch = 2.54,
@@ -1294,8 +1355,8 @@ var FemaleHeader = ({
1294
1355
  const bodyWidth = (numberOfPins - 1) * pitch + outerDiameter + pitch / 2;
1295
1356
  const gapWidth = pinThickness * 1.6;
1296
1357
  const xoff = -((numberOfPins - 1) / 2) * pitch;
1297
- const Body = /* @__PURE__ */ jsx22(Colorize8, { color: "#1a1a1a", children: /* @__PURE__ */ jsxs20(Subtract3, { children: [
1298
- /* @__PURE__ */ jsx22(
1358
+ const Body = /* @__PURE__ */ jsx23(Colorize8, { color: "#1a1a1a", children: /* @__PURE__ */ jsxs21(Subtract3, { children: [
1359
+ /* @__PURE__ */ jsx23(
1299
1360
  Cuboid16,
1300
1361
  {
1301
1362
  color: "#000",
@@ -1305,7 +1366,7 @@ var FemaleHeader = ({
1305
1366
  ),
1306
1367
  Array.from(
1307
1368
  { length: numberOfPins },
1308
- (_, i) => innerDiameter ? /* @__PURE__ */ jsx22(
1369
+ (_, i) => innerDiameter ? /* @__PURE__ */ jsx23(
1309
1370
  Cylinder4,
1310
1371
  {
1311
1372
  height: bodyHeight + 0.1,
@@ -1314,7 +1375,7 @@ var FemaleHeader = ({
1314
1375
  color: "#222"
1315
1376
  },
1316
1377
  i
1317
- ) : /* @__PURE__ */ jsx22(
1378
+ ) : /* @__PURE__ */ jsx23(
1318
1379
  Cuboid16,
1319
1380
  {
1320
1381
  size: [gapWidth, gapWidth, bodyHeight],
@@ -1324,11 +1385,11 @@ var FemaleHeader = ({
1324
1385
  )
1325
1386
  )
1326
1387
  ] }) });
1327
- return /* @__PURE__ */ jsxs20(Fragment18, { children: [
1388
+ return /* @__PURE__ */ jsxs21(Fragment19, { children: [
1328
1389
  Body,
1329
- Array.from({ length: numberOfPins }, (_, i) => /* @__PURE__ */ jsxs20(Colorize8, { color: "silver", children: [
1330
- /* @__PURE__ */ jsxs20(Hull3, { children: [
1331
- /* @__PURE__ */ jsx22(
1390
+ Array.from({ length: numberOfPins }, (_, i) => /* @__PURE__ */ jsxs21(Colorize8, { color: "silver", children: [
1391
+ /* @__PURE__ */ jsxs21(Hull3, { children: [
1392
+ /* @__PURE__ */ jsx23(
1332
1393
  Cuboid16,
1333
1394
  {
1334
1395
  color: "silver",
@@ -1336,7 +1397,7 @@ var FemaleHeader = ({
1336
1397
  center: [xoff + i * pitch, 0, -legsLength / 2 * 0.9]
1337
1398
  }
1338
1399
  ),
1339
- /* @__PURE__ */ jsx22(
1400
+ /* @__PURE__ */ jsx23(
1340
1401
  Cuboid16,
1341
1402
  {
1342
1403
  color: "silver",
@@ -1345,7 +1406,7 @@ var FemaleHeader = ({
1345
1406
  }
1346
1407
  )
1347
1408
  ] }),
1348
- /* @__PURE__ */ jsx22(
1409
+ /* @__PURE__ */ jsx23(
1349
1410
  Cuboid16,
1350
1411
  {
1351
1412
  color: "silver",
@@ -1367,7 +1428,7 @@ import {
1367
1428
  RoundedCuboid,
1368
1429
  Translate as Translate8
1369
1430
  } from "jscad-fiber";
1370
- import { Fragment as Fragment19, jsx as jsx23, jsxs as jsxs21 } from "react/jsx-runtime";
1431
+ import { Fragment as Fragment20, jsx as jsx24, jsxs as jsxs22 } from "react/jsx-runtime";
1371
1432
  var PushButton = ({
1372
1433
  width: width10,
1373
1434
  length,
@@ -1377,8 +1438,8 @@ var PushButton = ({
1377
1438
  const bodyLength10 = length;
1378
1439
  const bodyHeight = width10 * 0.7;
1379
1440
  const legWidth = innerDiameter / 2.5;
1380
- return /* @__PURE__ */ jsxs21(Fragment19, { children: [
1381
- /* @__PURE__ */ jsx23(
1441
+ return /* @__PURE__ */ jsxs22(Fragment20, { children: [
1442
+ /* @__PURE__ */ jsx24(
1382
1443
  RoundedCuboid,
1383
1444
  {
1384
1445
  color: "#1a1a1f",
@@ -1387,7 +1448,7 @@ var PushButton = ({
1387
1448
  roundRadius: 0.3
1388
1449
  }
1389
1450
  ),
1390
- /* @__PURE__ */ jsx23(
1451
+ /* @__PURE__ */ jsx24(
1391
1452
  RoundedCuboid,
1392
1453
  {
1393
1454
  color: "#f2f2f2",
@@ -1396,7 +1457,7 @@ var PushButton = ({
1396
1457
  roundRadius: 0.14
1397
1458
  }
1398
1459
  ),
1399
- /* @__PURE__ */ jsx23(
1460
+ /* @__PURE__ */ jsx24(
1400
1461
  Cylinder5,
1401
1462
  {
1402
1463
  color: "#1a1a1f",
@@ -1405,7 +1466,7 @@ var PushButton = ({
1405
1466
  center: [0, 0, bodyHeight + bodyHeight * 0.8 / 2]
1406
1467
  }
1407
1468
  ),
1408
- /* @__PURE__ */ jsx23(
1469
+ /* @__PURE__ */ jsx24(
1409
1470
  Cylinder5,
1410
1471
  {
1411
1472
  color: "#1a1a1f",
@@ -1418,7 +1479,7 @@ var PushButton = ({
1418
1479
  ]
1419
1480
  }
1420
1481
  ),
1421
- /* @__PURE__ */ jsx23(
1482
+ /* @__PURE__ */ jsx24(
1422
1483
  Cylinder5,
1423
1484
  {
1424
1485
  color: "#1a1a1f",
@@ -1431,7 +1492,7 @@ var PushButton = ({
1431
1492
  ]
1432
1493
  }
1433
1494
  ),
1434
- /* @__PURE__ */ jsx23(
1495
+ /* @__PURE__ */ jsx24(
1435
1496
  Cylinder5,
1436
1497
  {
1437
1498
  color: "#1a1a1f",
@@ -1444,7 +1505,7 @@ var PushButton = ({
1444
1505
  ]
1445
1506
  }
1446
1507
  ),
1447
- /* @__PURE__ */ jsx23(
1508
+ /* @__PURE__ */ jsx24(
1448
1509
  Cylinder5,
1449
1510
  {
1450
1511
  color: "#1a1a1f",
@@ -1457,7 +1518,7 @@ var PushButton = ({
1457
1518
  ]
1458
1519
  }
1459
1520
  ),
1460
- /* @__PURE__ */ jsx23(
1521
+ /* @__PURE__ */ jsx24(
1461
1522
  PushButtonLeg,
1462
1523
  {
1463
1524
  thickness: innerDiameter / 3,
@@ -1471,7 +1532,7 @@ var PushButton = ({
1471
1532
  }
1472
1533
  }
1473
1534
  ),
1474
- /* @__PURE__ */ jsx23(
1535
+ /* @__PURE__ */ jsx24(
1475
1536
  PushButtonLeg,
1476
1537
  {
1477
1538
  thickness: innerDiameter / 3,
@@ -1486,7 +1547,7 @@ var PushButton = ({
1486
1547
  rotation: Math.PI
1487
1548
  }
1488
1549
  ),
1489
- /* @__PURE__ */ jsx23(
1550
+ /* @__PURE__ */ jsx24(
1490
1551
  PushButtonLeg,
1491
1552
  {
1492
1553
  thickness: innerDiameter / 3,
@@ -1497,7 +1558,7 @@ var PushButton = ({
1497
1558
  rotation: Math.PI
1498
1559
  }
1499
1560
  ),
1500
- /* @__PURE__ */ jsx23(
1561
+ /* @__PURE__ */ jsx24(
1501
1562
  PushButtonLeg,
1502
1563
  {
1503
1564
  thickness: innerDiameter / 3,
@@ -1529,7 +1590,7 @@ var PushButtonLeg = (props) => {
1529
1590
  [0, 0]
1530
1591
  ];
1531
1592
  const polygon = getExpandedStroke(points, thickness);
1532
- return /* @__PURE__ */ jsx23(Colorize9, { color: "#f2f2f2", children: /* @__PURE__ */ jsx23(
1593
+ return /* @__PURE__ */ jsx24(Colorize9, { color: "#f2f2f2", children: /* @__PURE__ */ jsx24(
1533
1594
  Translate8,
1534
1595
  {
1535
1596
  offset: {
@@ -1537,13 +1598,13 @@ var PushButtonLeg = (props) => {
1537
1598
  y: position?.y || 0,
1538
1599
  z: position?.z || 0
1539
1600
  },
1540
- children: /* @__PURE__ */ jsx23(Rotate5, { rotation: [0, 55, rotation], children: /* @__PURE__ */ jsx23(ExtrudeLinear3, { height: width10, children: /* @__PURE__ */ jsx23(Polygon3, { points: polygon.map((p) => [p.y, p.x]) }) }) })
1601
+ children: /* @__PURE__ */ jsx24(Rotate5, { rotation: [0, 55, rotation], children: /* @__PURE__ */ jsx24(ExtrudeLinear3, { height: width10, children: /* @__PURE__ */ jsx24(Polygon3, { points: polygon.map((p) => [p.y, p.x]) }) }) })
1541
1602
  }
1542
1603
  ) });
1543
1604
  };
1544
1605
 
1545
1606
  // lib/SOIC.tsx
1546
- import { Fragment as Fragment20, jsx as jsx24, jsxs as jsxs22 } from "react/jsx-runtime";
1607
+ import { Fragment as Fragment21, jsx as jsx25, jsxs as jsxs23 } from "react/jsx-runtime";
1547
1608
  var SOIC = ({
1548
1609
  pinCount,
1549
1610
  leadLength,
@@ -1559,8 +1620,8 @@ var SOIC = ({
1559
1620
  const leadBodyOffset = leadLength * 0;
1560
1621
  const fullLength10 = pitch * (sidePinCount - 1) + leadWidth + 0.2;
1561
1622
  const bodyWidthAdjusted = bodyWidth * 0.55;
1562
- return /* @__PURE__ */ jsxs22(Fragment20, { children: [
1563
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx24(
1623
+ return /* @__PURE__ */ jsxs23(Fragment21, { children: [
1624
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx25(
1564
1625
  SmdChipLead,
1565
1626
  {
1566
1627
  position: {
@@ -1576,7 +1637,7 @@ var SOIC = ({
1576
1637
  },
1577
1638
  i
1578
1639
  )),
1579
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx24(
1640
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx25(
1580
1641
  SmdChipLead,
1581
1642
  {
1582
1643
  rotation: Math.PI,
@@ -1593,7 +1654,7 @@ var SOIC = ({
1593
1654
  },
1594
1655
  i
1595
1656
  )),
1596
- /* @__PURE__ */ jsx24(
1657
+ /* @__PURE__ */ jsx25(
1597
1658
  ChipBody,
1598
1659
  {
1599
1660
  center: { x: 0, y: 0, z: leadThickness / 2 },
@@ -1606,7 +1667,7 @@ var SOIC = ({
1606
1667
  };
1607
1668
 
1608
1669
  // lib/VSSOP.tsx
1609
- import { Fragment as Fragment21, jsx as jsx25, jsxs as jsxs23 } from "react/jsx-runtime";
1670
+ import { Fragment as Fragment22, jsx as jsx26, jsxs as jsxs24 } from "react/jsx-runtime";
1610
1671
  var VSSOP = ({
1611
1672
  pinCount,
1612
1673
  pitch,
@@ -1636,8 +1697,8 @@ var VSSOP = ({
1636
1697
  const componentFullWidth = 4.5;
1637
1698
  const leadBodyDistance = (componentFullWidth - _bodyWidth) / 2;
1638
1699
  const padContactLength = leadBodyDistance * 0.5;
1639
- return /* @__PURE__ */ jsxs23(Fragment21, { children: [
1640
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx25(
1700
+ return /* @__PURE__ */ jsxs24(Fragment22, { children: [
1701
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx26(
1641
1702
  SmdChipLead,
1642
1703
  {
1643
1704
  position: {
@@ -1653,7 +1714,7 @@ var VSSOP = ({
1653
1714
  },
1654
1715
  `left-${i}`
1655
1716
  )),
1656
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx25(
1717
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx26(
1657
1718
  SmdChipLead,
1658
1719
  {
1659
1720
  rotation: Math.PI,
@@ -1670,7 +1731,7 @@ var VSSOP = ({
1670
1731
  },
1671
1732
  `right-${i}`
1672
1733
  )),
1673
- /* @__PURE__ */ jsx25(
1734
+ /* @__PURE__ */ jsx26(
1674
1735
  ChipBody,
1675
1736
  {
1676
1737
  center: { x: 0, y: 0, z: leadThickness / 2 },
@@ -1684,7 +1745,7 @@ var VSSOP = ({
1684
1745
 
1685
1746
  // lib/SOD523.tsx
1686
1747
  import { Colorize as Colorize10, Cuboid as Cuboid18, Hull as Hull4, Translate as Translate9, Union as Union5 } from "jscad-fiber";
1687
- import { Fragment as Fragment22, jsx as jsx26, jsxs as jsxs24 } from "react/jsx-runtime";
1748
+ import { Fragment as Fragment23, jsx as jsx27, jsxs as jsxs25 } from "react/jsx-runtime";
1688
1749
  var SOD523 = () => {
1689
1750
  const fullWidth = 2.15;
1690
1751
  const bodyLength10 = 0.8;
@@ -1697,8 +1758,8 @@ var SOD523 = () => {
1697
1758
  const rightPadCenterX = bodyWidth / 2 - padLength / 2 + 0.15;
1698
1759
  const taperOffset = 0.2;
1699
1760
  const straightHeight = bodyHeight * 0.5;
1700
- return /* @__PURE__ */ jsxs24(Fragment22, { children: [
1701
- /* @__PURE__ */ jsx26(
1761
+ return /* @__PURE__ */ jsxs25(Fragment23, { children: [
1762
+ /* @__PURE__ */ jsx27(
1702
1763
  Cuboid18,
1703
1764
  {
1704
1765
  color: "#ccc",
@@ -1706,7 +1767,7 @@ var SOD523 = () => {
1706
1767
  center: [leftPadCenterX, 0, padThickness / 2]
1707
1768
  }
1708
1769
  ),
1709
- /* @__PURE__ */ jsx26(
1770
+ /* @__PURE__ */ jsx27(
1710
1771
  Cuboid18,
1711
1772
  {
1712
1773
  color: "#ccc",
@@ -1714,11 +1775,11 @@ var SOD523 = () => {
1714
1775
  center: [rightPadCenterX, 0, padThickness / 2]
1715
1776
  }
1716
1777
  ),
1717
- /* @__PURE__ */ jsx26(Colorize10, { color: "#222", children: /* @__PURE__ */ jsxs24(Union5, { children: [
1718
- /* @__PURE__ */ jsx26(Translate9, { z: straightHeight / 2, children: /* @__PURE__ */ jsx26(Cuboid18, { size: [bodyWidth, bodyLength10, straightHeight] }) }),
1719
- /* @__PURE__ */ jsxs24(Hull4, { children: [
1720
- /* @__PURE__ */ jsx26(Translate9, { z: straightHeight, children: /* @__PURE__ */ jsx26(Cuboid18, { size: [bodyWidth, bodyLength10, 0.01] }) }),
1721
- /* @__PURE__ */ jsx26(Translate9, { z: bodyHeight, children: /* @__PURE__ */ jsx26(
1778
+ /* @__PURE__ */ jsx27(Colorize10, { color: "#222", children: /* @__PURE__ */ jsxs25(Union5, { children: [
1779
+ /* @__PURE__ */ jsx27(Translate9, { z: straightHeight / 2, children: /* @__PURE__ */ jsx27(Cuboid18, { size: [bodyWidth, bodyLength10, straightHeight] }) }),
1780
+ /* @__PURE__ */ jsxs25(Hull4, { children: [
1781
+ /* @__PURE__ */ jsx27(Translate9, { z: straightHeight, children: /* @__PURE__ */ jsx27(Cuboid18, { size: [bodyWidth, bodyLength10, 0.01] }) }),
1782
+ /* @__PURE__ */ jsx27(Translate9, { z: bodyHeight, children: /* @__PURE__ */ jsx27(
1722
1783
  Cuboid18,
1723
1784
  {
1724
1785
  size: [bodyWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
@@ -1731,7 +1792,7 @@ var SOD523 = () => {
1731
1792
 
1732
1793
  // lib/SMA.tsx
1733
1794
  import { Cuboid as Cuboid19, Colorize as Colorize11, Union as Union6, Hull as Hull5, Translate as Translate10 } from "jscad-fiber";
1734
- import { Fragment as Fragment23, jsx as jsx27, jsxs as jsxs25 } from "react/jsx-runtime";
1795
+ import { Fragment as Fragment24, jsx as jsx28, jsxs as jsxs26 } from "react/jsx-runtime";
1735
1796
  var SMA = () => {
1736
1797
  const bodyWidth = 4.4;
1737
1798
  const bodyLength10 = 3.4;
@@ -1742,19 +1803,19 @@ var SMA = () => {
1742
1803
  const leadHeight = 1.14;
1743
1804
  const taperOffset = 0.4;
1744
1805
  const straightHeight = bodyHeight * 0.5;
1745
- const Body = /* @__PURE__ */ jsx27(Colorize11, { color: "#1a1a1a", children: /* @__PURE__ */ jsxs25(Union6, { children: [
1746
- /* @__PURE__ */ jsxs25(Hull5, { children: [
1747
- /* @__PURE__ */ jsx27(Translate10, { z: padThickness + 0.01, children: /* @__PURE__ */ jsx27(
1806
+ const Body = /* @__PURE__ */ jsx28(Colorize11, { color: "#1a1a1a", children: /* @__PURE__ */ jsxs26(Union6, { children: [
1807
+ /* @__PURE__ */ jsxs26(Hull5, { children: [
1808
+ /* @__PURE__ */ jsx28(Translate10, { z: padThickness + 0.01, children: /* @__PURE__ */ jsx28(
1748
1809
  Cuboid19,
1749
1810
  {
1750
1811
  size: [bodyWidth - taperOffset, bodyLength10 - taperOffset, 0.03]
1751
1812
  }
1752
1813
  ) }),
1753
- /* @__PURE__ */ jsx27(Translate10, { z: straightHeight, children: /* @__PURE__ */ jsx27(Cuboid19, { size: [bodyWidth, bodyLength10, 0.01] }) })
1814
+ /* @__PURE__ */ jsx28(Translate10, { z: straightHeight, children: /* @__PURE__ */ jsx28(Cuboid19, { size: [bodyWidth, bodyLength10, 0.01] }) })
1754
1815
  ] }),
1755
- /* @__PURE__ */ jsxs25(Hull5, { children: [
1756
- /* @__PURE__ */ jsx27(Translate10, { z: straightHeight, children: /* @__PURE__ */ jsx27(Cuboid19, { size: [bodyWidth, bodyLength10, 0.01] }) }),
1757
- /* @__PURE__ */ jsx27(Translate10, { z: bodyHeight, children: /* @__PURE__ */ jsx27(
1816
+ /* @__PURE__ */ jsxs26(Hull5, { children: [
1817
+ /* @__PURE__ */ jsx28(Translate10, { z: straightHeight, children: /* @__PURE__ */ jsx28(Cuboid19, { size: [bodyWidth, bodyLength10, 0.01] }) }),
1818
+ /* @__PURE__ */ jsx28(Translate10, { z: bodyHeight, children: /* @__PURE__ */ jsx28(
1758
1819
  Cuboid19,
1759
1820
  {
1760
1821
  size: [bodyWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
@@ -1770,22 +1831,22 @@ var SMA = () => {
1770
1831
  const bodyEdgeX = xDir * (bodyLength10 / 2 - leadThickness / 2);
1771
1832
  const bridgeLength = Math.abs(bodyEdgeX - verticalLeadX);
1772
1833
  const bridgeCenterX = (verticalLeadX + bodyEdgeX) / 2;
1773
- return /* @__PURE__ */ jsx27(Colorize11, { color: "#c0c0c0", children: /* @__PURE__ */ jsxs25(Union6, { children: [
1774
- /* @__PURE__ */ jsx27(
1834
+ return /* @__PURE__ */ jsx28(Colorize11, { color: "#c0c0c0", children: /* @__PURE__ */ jsxs26(Union6, { children: [
1835
+ /* @__PURE__ */ jsx28(
1775
1836
  Cuboid19,
1776
1837
  {
1777
1838
  size: [bodyHeight * 0.8, padWidth, leadThickness],
1778
1839
  center: [lowerPadX, 0, leadThickness / 2]
1779
1840
  }
1780
1841
  ),
1781
- /* @__PURE__ */ jsx27(
1842
+ /* @__PURE__ */ jsx28(
1782
1843
  Cuboid19,
1783
1844
  {
1784
1845
  size: [leadThickness, padWidth, leadHeight],
1785
1846
  center: [verticalLeadX, 0, leadHeight / 2 + leadThickness]
1786
1847
  }
1787
1848
  ),
1788
- /* @__PURE__ */ jsx27(
1849
+ /* @__PURE__ */ jsx28(
1789
1850
  Cuboid19,
1790
1851
  {
1791
1852
  size: [bridgeLength, padWidth, leadThickness],
@@ -1794,16 +1855,16 @@ var SMA = () => {
1794
1855
  )
1795
1856
  ] }) });
1796
1857
  };
1797
- return /* @__PURE__ */ jsxs25(Fragment23, { children: [
1798
- /* @__PURE__ */ jsx27(Lead, { xDir: 1 }),
1799
- /* @__PURE__ */ jsx27(Lead, { xDir: -1 }),
1858
+ return /* @__PURE__ */ jsxs26(Fragment24, { children: [
1859
+ /* @__PURE__ */ jsx28(Lead, { xDir: 1 }),
1860
+ /* @__PURE__ */ jsx28(Lead, { xDir: -1 }),
1800
1861
  Body
1801
1862
  ] });
1802
1863
  };
1803
1864
 
1804
1865
  // lib/SMB.tsx
1805
1866
  import { Cuboid as Cuboid20, Colorize as Colorize12, Union as Union7, Hull as Hull6, Translate as Translate11 } from "jscad-fiber";
1806
- import { Fragment as Fragment24, jsx as jsx28, jsxs as jsxs26 } from "react/jsx-runtime";
1867
+ import { Fragment as Fragment25, jsx as jsx29, jsxs as jsxs27 } from "react/jsx-runtime";
1807
1868
  var SMB = () => {
1808
1869
  const bodyWidth = 4.4;
1809
1870
  const bodyLength10 = 3.4;
@@ -1814,19 +1875,19 @@ var SMB = () => {
1814
1875
  const leadHeight = 1.14;
1815
1876
  const taperOffset = 0.4;
1816
1877
  const straightHeight = bodyHeight * 0.5;
1817
- const Body = /* @__PURE__ */ jsx28(Colorize12, { color: "#1a1a1a", children: /* @__PURE__ */ jsxs26(Union7, { children: [
1818
- /* @__PURE__ */ jsxs26(Hull6, { children: [
1819
- /* @__PURE__ */ jsx28(Translate11, { z: padThickness + 0.01, children: /* @__PURE__ */ jsx28(
1878
+ const Body = /* @__PURE__ */ jsx29(Colorize12, { color: "#1a1a1a", children: /* @__PURE__ */ jsxs27(Union7, { children: [
1879
+ /* @__PURE__ */ jsxs27(Hull6, { children: [
1880
+ /* @__PURE__ */ jsx29(Translate11, { z: padThickness + 0.01, children: /* @__PURE__ */ jsx29(
1820
1881
  Cuboid20,
1821
1882
  {
1822
1883
  size: [bodyWidth - taperOffset, bodyLength10 - taperOffset, 0.03]
1823
1884
  }
1824
1885
  ) }),
1825
- /* @__PURE__ */ jsx28(Translate11, { z: straightHeight, children: /* @__PURE__ */ jsx28(Cuboid20, { size: [bodyWidth, bodyLength10, 0.01] }) })
1886
+ /* @__PURE__ */ jsx29(Translate11, { z: straightHeight, children: /* @__PURE__ */ jsx29(Cuboid20, { size: [bodyWidth, bodyLength10, 0.01] }) })
1826
1887
  ] }),
1827
- /* @__PURE__ */ jsxs26(Hull6, { children: [
1828
- /* @__PURE__ */ jsx28(Translate11, { z: straightHeight, children: /* @__PURE__ */ jsx28(Cuboid20, { size: [bodyWidth, bodyLength10, 0.01] }) }),
1829
- /* @__PURE__ */ jsx28(Translate11, { z: bodyHeight, children: /* @__PURE__ */ jsx28(
1888
+ /* @__PURE__ */ jsxs27(Hull6, { children: [
1889
+ /* @__PURE__ */ jsx29(Translate11, { z: straightHeight, children: /* @__PURE__ */ jsx29(Cuboid20, { size: [bodyWidth, bodyLength10, 0.01] }) }),
1890
+ /* @__PURE__ */ jsx29(Translate11, { z: bodyHeight, children: /* @__PURE__ */ jsx29(
1830
1891
  Cuboid20,
1831
1892
  {
1832
1893
  size: [bodyWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
@@ -1842,22 +1903,22 @@ var SMB = () => {
1842
1903
  const bodyEdgeX = xDir * (bodyLength10 / 2 - leadThickness / 2);
1843
1904
  const bridgeLength = Math.abs(bodyEdgeX - verticalLeadX);
1844
1905
  const bridgeCenterX = (verticalLeadX + bodyEdgeX) / 2;
1845
- return /* @__PURE__ */ jsx28(Colorize12, { color: "#c0c0c0", children: /* @__PURE__ */ jsxs26(Union7, { children: [
1846
- /* @__PURE__ */ jsx28(
1906
+ return /* @__PURE__ */ jsx29(Colorize12, { color: "#c0c0c0", children: /* @__PURE__ */ jsxs27(Union7, { children: [
1907
+ /* @__PURE__ */ jsx29(
1847
1908
  Cuboid20,
1848
1909
  {
1849
1910
  size: [bodyHeight * 0.8, padWidth, leadThickness],
1850
1911
  center: [lowerPadX, 0, leadThickness / 2]
1851
1912
  }
1852
1913
  ),
1853
- /* @__PURE__ */ jsx28(
1914
+ /* @__PURE__ */ jsx29(
1854
1915
  Cuboid20,
1855
1916
  {
1856
1917
  size: [leadThickness, padWidth, leadHeight],
1857
1918
  center: [verticalLeadX, 0, leadHeight / 2 + leadThickness]
1858
1919
  }
1859
1920
  ),
1860
- /* @__PURE__ */ jsx28(
1921
+ /* @__PURE__ */ jsx29(
1861
1922
  Cuboid20,
1862
1923
  {
1863
1924
  size: [bridgeLength, padWidth, leadThickness],
@@ -1866,16 +1927,16 @@ var SMB = () => {
1866
1927
  )
1867
1928
  ] }) });
1868
1929
  };
1869
- return /* @__PURE__ */ jsxs26(Fragment24, { children: [
1870
- /* @__PURE__ */ jsx28(Lead, { xDir: 1 }),
1871
- /* @__PURE__ */ jsx28(Lead, { xDir: -1 }),
1930
+ return /* @__PURE__ */ jsxs27(Fragment25, { children: [
1931
+ /* @__PURE__ */ jsx29(Lead, { xDir: 1 }),
1932
+ /* @__PURE__ */ jsx29(Lead, { xDir: -1 }),
1872
1933
  Body
1873
1934
  ] });
1874
1935
  };
1875
1936
 
1876
1937
  // lib/SMC.tsx
1877
1938
  import { Cuboid as Cuboid21, Colorize as Colorize13, Union as Union8, Hull as Hull7, Translate as Translate12 } from "jscad-fiber";
1878
- import { Fragment as Fragment25, jsx as jsx29, jsxs as jsxs27 } from "react/jsx-runtime";
1939
+ import { Fragment as Fragment26, jsx as jsx30, jsxs as jsxs28 } from "react/jsx-runtime";
1879
1940
  var SMC = () => {
1880
1941
  const bodyWidth = 6.8;
1881
1942
  const bodyLength10 = 6;
@@ -1886,19 +1947,19 @@ var SMC = () => {
1886
1947
  const leadHeight = 1.14;
1887
1948
  const taperOffset = 0.4;
1888
1949
  const straightHeight = bodyHeight * 0.5;
1889
- const Body = /* @__PURE__ */ jsx29(Colorize13, { color: "#1a1a1a", children: /* @__PURE__ */ jsxs27(Union8, { children: [
1890
- /* @__PURE__ */ jsxs27(Hull7, { children: [
1891
- /* @__PURE__ */ jsx29(Translate12, { z: padThickness + 0.01, children: /* @__PURE__ */ jsx29(
1950
+ const Body = /* @__PURE__ */ jsx30(Colorize13, { color: "#1a1a1a", children: /* @__PURE__ */ jsxs28(Union8, { children: [
1951
+ /* @__PURE__ */ jsxs28(Hull7, { children: [
1952
+ /* @__PURE__ */ jsx30(Translate12, { z: padThickness + 0.01, children: /* @__PURE__ */ jsx30(
1892
1953
  Cuboid21,
1893
1954
  {
1894
1955
  size: [bodyWidth - taperOffset, bodyLength10 - taperOffset, 0.03]
1895
1956
  }
1896
1957
  ) }),
1897
- /* @__PURE__ */ jsx29(Translate12, { z: straightHeight, children: /* @__PURE__ */ jsx29(Cuboid21, { size: [bodyWidth, bodyLength10, 0.01] }) })
1958
+ /* @__PURE__ */ jsx30(Translate12, { z: straightHeight, children: /* @__PURE__ */ jsx30(Cuboid21, { size: [bodyWidth, bodyLength10, 0.01] }) })
1898
1959
  ] }),
1899
- /* @__PURE__ */ jsxs27(Hull7, { children: [
1900
- /* @__PURE__ */ jsx29(Translate12, { z: straightHeight, children: /* @__PURE__ */ jsx29(Cuboid21, { size: [bodyWidth, bodyLength10, 0.01] }) }),
1901
- /* @__PURE__ */ jsx29(Translate12, { z: bodyHeight, children: /* @__PURE__ */ jsx29(
1960
+ /* @__PURE__ */ jsxs28(Hull7, { children: [
1961
+ /* @__PURE__ */ jsx30(Translate12, { z: straightHeight, children: /* @__PURE__ */ jsx30(Cuboid21, { size: [bodyWidth, bodyLength10, 0.01] }) }),
1962
+ /* @__PURE__ */ jsx30(Translate12, { z: bodyHeight, children: /* @__PURE__ */ jsx30(
1902
1963
  Cuboid21,
1903
1964
  {
1904
1965
  size: [bodyWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
@@ -1914,22 +1975,22 @@ var SMC = () => {
1914
1975
  const bodyEdgeX = xDir * (bodyLength10 / 2 - leadThickness / 2);
1915
1976
  const bridgeLength = Math.abs(bodyEdgeX - verticalLeadX);
1916
1977
  const bridgeCenterX = (verticalLeadX + bodyEdgeX) / 2;
1917
- return /* @__PURE__ */ jsx29(Colorize13, { color: "#c0c0c0", children: /* @__PURE__ */ jsxs27(Union8, { children: [
1918
- /* @__PURE__ */ jsx29(
1978
+ return /* @__PURE__ */ jsx30(Colorize13, { color: "#c0c0c0", children: /* @__PURE__ */ jsxs28(Union8, { children: [
1979
+ /* @__PURE__ */ jsx30(
1919
1980
  Cuboid21,
1920
1981
  {
1921
1982
  size: [bodyHeight * 0.8, padWidth, leadThickness],
1922
1983
  center: [lowerPadX, 0, leadThickness / 2]
1923
1984
  }
1924
1985
  ),
1925
- /* @__PURE__ */ jsx29(
1986
+ /* @__PURE__ */ jsx30(
1926
1987
  Cuboid21,
1927
1988
  {
1928
1989
  size: [leadThickness, padWidth, leadHeight],
1929
1990
  center: [verticalLeadX, 0, leadHeight / 2 + leadThickness]
1930
1991
  }
1931
1992
  ),
1932
- /* @__PURE__ */ jsx29(
1993
+ /* @__PURE__ */ jsx30(
1933
1994
  Cuboid21,
1934
1995
  {
1935
1996
  size: [bridgeLength, padWidth, leadThickness],
@@ -1938,16 +1999,16 @@ var SMC = () => {
1938
1999
  )
1939
2000
  ] }) });
1940
2001
  };
1941
- return /* @__PURE__ */ jsxs27(Fragment25, { children: [
1942
- /* @__PURE__ */ jsx29(Lead, { xDir: 1 }),
1943
- /* @__PURE__ */ jsx29(Lead, { xDir: -1 }),
2002
+ return /* @__PURE__ */ jsxs28(Fragment26, { children: [
2003
+ /* @__PURE__ */ jsx30(Lead, { xDir: 1 }),
2004
+ /* @__PURE__ */ jsx30(Lead, { xDir: -1 }),
1944
2005
  Body
1945
2006
  ] });
1946
2007
  };
1947
2008
 
1948
2009
  // lib/SMF.tsx
1949
2010
  import { Colorize as Colorize14, Cuboid as Cuboid22, Hull as Hull8, Translate as Translate13, Union as Union9 } from "jscad-fiber";
1950
- import { Fragment as Fragment26, jsx as jsx30, jsxs as jsxs28 } from "react/jsx-runtime";
2011
+ import { Fragment as Fragment27, jsx as jsx31, jsxs as jsxs29 } from "react/jsx-runtime";
1951
2012
  var SMF = () => {
1952
2013
  const fullWidth = 2.9;
1953
2014
  const bodyLength10 = 1.9;
@@ -1960,11 +2021,11 @@ var SMF = () => {
1960
2021
  const rightPadCenterX = 1.3;
1961
2022
  const taperOffset = 0.2;
1962
2023
  const straightHeight = bodyHeight * 0.5;
1963
- const Body = /* @__PURE__ */ jsx30(Colorize14, { color: "#222", children: /* @__PURE__ */ jsxs28(Union9, { children: [
1964
- /* @__PURE__ */ jsx30(Translate13, { z: straightHeight / 2, children: /* @__PURE__ */ jsx30(Cuboid22, { size: [bodyWidth, bodyLength10, straightHeight] }) }),
1965
- /* @__PURE__ */ jsxs28(Hull8, { children: [
1966
- /* @__PURE__ */ jsx30(Translate13, { z: straightHeight, children: /* @__PURE__ */ jsx30(Cuboid22, { size: [bodyWidth, bodyLength10, 0.01] }) }),
1967
- /* @__PURE__ */ jsx30(Translate13, { z: bodyHeight, children: /* @__PURE__ */ jsx30(
2024
+ const Body = /* @__PURE__ */ jsx31(Colorize14, { color: "#222", children: /* @__PURE__ */ jsxs29(Union9, { children: [
2025
+ /* @__PURE__ */ jsx31(Translate13, { z: straightHeight / 2, children: /* @__PURE__ */ jsx31(Cuboid22, { size: [bodyWidth, bodyLength10, straightHeight] }) }),
2026
+ /* @__PURE__ */ jsxs29(Hull8, { children: [
2027
+ /* @__PURE__ */ jsx31(Translate13, { z: straightHeight, children: /* @__PURE__ */ jsx31(Cuboid22, { size: [bodyWidth, bodyLength10, 0.01] }) }),
2028
+ /* @__PURE__ */ jsx31(Translate13, { z: bodyHeight, children: /* @__PURE__ */ jsx31(
1968
2029
  Cuboid22,
1969
2030
  {
1970
2031
  size: [bodyWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
@@ -1972,8 +2033,8 @@ var SMF = () => {
1972
2033
  ) })
1973
2034
  ] })
1974
2035
  ] }) });
1975
- return /* @__PURE__ */ jsxs28(Fragment26, { children: [
1976
- /* @__PURE__ */ jsx30(
2036
+ return /* @__PURE__ */ jsxs29(Fragment27, { children: [
2037
+ /* @__PURE__ */ jsx31(
1977
2038
  Cuboid22,
1978
2039
  {
1979
2040
  color: "#ccc",
@@ -1981,7 +2042,7 @@ var SMF = () => {
1981
2042
  center: [leftPadCenterX, 0, padThickness / 2]
1982
2043
  }
1983
2044
  ),
1984
- /* @__PURE__ */ jsx30(
2045
+ /* @__PURE__ */ jsx31(
1985
2046
  Cuboid22,
1986
2047
  {
1987
2048
  color: "#ccc",
@@ -1995,7 +2056,7 @@ var SMF = () => {
1995
2056
 
1996
2057
  // lib/sod-123F.tsx
1997
2058
  import { Colorize as Colorize15, Cuboid as Cuboid23, Hull as Hull9, Translate as Translate14, Union as Union10 } from "jscad-fiber";
1998
- import { Fragment as Fragment27, jsx as jsx31, jsxs as jsxs29 } from "react/jsx-runtime";
2059
+ import { Fragment as Fragment28, jsx as jsx32, jsxs as jsxs30 } from "react/jsx-runtime";
1999
2060
  var SOD123F = () => {
2000
2061
  const fullWidth = 2.7;
2001
2062
  const bodyLength10 = 1.6;
@@ -2007,8 +2068,8 @@ var SOD123F = () => {
2007
2068
  const rightPadCenterX = 1.3;
2008
2069
  const taperOffset = 0.2;
2009
2070
  const straightHeight = bodyHeight * 0.5;
2010
- return /* @__PURE__ */ jsxs29(Fragment27, { children: [
2011
- /* @__PURE__ */ jsx31(
2071
+ return /* @__PURE__ */ jsxs30(Fragment28, { children: [
2072
+ /* @__PURE__ */ jsx32(
2012
2073
  Cuboid23,
2013
2074
  {
2014
2075
  color: "#ccc",
@@ -2016,7 +2077,7 @@ var SOD123F = () => {
2016
2077
  center: [leftPadCenterX, 0, padThickness / 2]
2017
2078
  }
2018
2079
  ),
2019
- /* @__PURE__ */ jsx31(
2080
+ /* @__PURE__ */ jsx32(
2020
2081
  Cuboid23,
2021
2082
  {
2022
2083
  color: "#ccc",
@@ -2024,11 +2085,11 @@ var SOD123F = () => {
2024
2085
  center: [rightPadCenterX, 0, padThickness / 2]
2025
2086
  }
2026
2087
  ),
2027
- /* @__PURE__ */ jsx31(Colorize15, { color: "#222", children: /* @__PURE__ */ jsxs29(Union10, { children: [
2028
- /* @__PURE__ */ jsx31(Translate14, { z: straightHeight / 2, children: /* @__PURE__ */ jsx31(Cuboid23, { size: [fullWidth, bodyLength10, straightHeight] }) }),
2029
- /* @__PURE__ */ jsxs29(Hull9, { children: [
2030
- /* @__PURE__ */ jsx31(Translate14, { z: straightHeight, children: /* @__PURE__ */ jsx31(Cuboid23, { size: [fullWidth, bodyLength10, 0.01] }) }),
2031
- /* @__PURE__ */ jsx31(Translate14, { z: bodyHeight, children: /* @__PURE__ */ jsx31(
2088
+ /* @__PURE__ */ jsx32(Colorize15, { color: "#222", children: /* @__PURE__ */ jsxs30(Union10, { children: [
2089
+ /* @__PURE__ */ jsx32(Translate14, { z: straightHeight / 2, children: /* @__PURE__ */ jsx32(Cuboid23, { size: [fullWidth, bodyLength10, straightHeight] }) }),
2090
+ /* @__PURE__ */ jsxs30(Hull9, { children: [
2091
+ /* @__PURE__ */ jsx32(Translate14, { z: straightHeight, children: /* @__PURE__ */ jsx32(Cuboid23, { size: [fullWidth, bodyLength10, 0.01] }) }),
2092
+ /* @__PURE__ */ jsx32(Translate14, { z: bodyHeight, children: /* @__PURE__ */ jsx32(
2032
2093
  Cuboid23,
2033
2094
  {
2034
2095
  size: [fullWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
@@ -2041,7 +2102,7 @@ var SOD123F = () => {
2041
2102
 
2042
2103
  // lib/sod-123FL.tsx
2043
2104
  import { Colorize as Colorize16, Cuboid as Cuboid24, Hull as Hull10, Translate as Translate15, Union as Union11 } from "jscad-fiber";
2044
- import { Fragment as Fragment28, jsx as jsx32, jsxs as jsxs30 } from "react/jsx-runtime";
2105
+ import { Fragment as Fragment29, jsx as jsx33, jsxs as jsxs31 } from "react/jsx-runtime";
2045
2106
  var SOD123FL = () => {
2046
2107
  const fullWidth = 2.75;
2047
2108
  const bodyLength10 = 1.8;
@@ -2053,8 +2114,8 @@ var SOD123FL = () => {
2053
2114
  const rightPadCenterX = fullWidth / 2 - 0.075;
2054
2115
  const taperOffset = 0.4;
2055
2116
  const straightHeight = bodyHeight * 0.2;
2056
- return /* @__PURE__ */ jsxs30(Fragment28, { children: [
2057
- /* @__PURE__ */ jsx32(
2117
+ return /* @__PURE__ */ jsxs31(Fragment29, { children: [
2118
+ /* @__PURE__ */ jsx33(
2058
2119
  Cuboid24,
2059
2120
  {
2060
2121
  color: "#ccc",
@@ -2062,7 +2123,7 @@ var SOD123FL = () => {
2062
2123
  center: [leftPadCenterX, 0, padThickness / 2]
2063
2124
  }
2064
2125
  ),
2065
- /* @__PURE__ */ jsx32(
2126
+ /* @__PURE__ */ jsx33(
2066
2127
  Cuboid24,
2067
2128
  {
2068
2129
  color: "#ccc",
@@ -2070,11 +2131,11 @@ var SOD123FL = () => {
2070
2131
  center: [rightPadCenterX, 0, padThickness / 2]
2071
2132
  }
2072
2133
  ),
2073
- /* @__PURE__ */ jsx32(Colorize16, { color: "#222", children: /* @__PURE__ */ jsxs30(Union11, { children: [
2074
- /* @__PURE__ */ jsx32(Translate15, { z: straightHeight / 2, children: /* @__PURE__ */ jsx32(Cuboid24, { size: [fullWidth, bodyLength10, straightHeight] }) }),
2075
- /* @__PURE__ */ jsxs30(Hull10, { children: [
2076
- /* @__PURE__ */ jsx32(Translate15, { z: straightHeight, children: /* @__PURE__ */ jsx32(Cuboid24, { size: [fullWidth, bodyLength10, 0.01] }) }),
2077
- /* @__PURE__ */ jsx32(Translate15, { z: bodyHeight, children: /* @__PURE__ */ jsx32(
2134
+ /* @__PURE__ */ jsx33(Colorize16, { color: "#222", children: /* @__PURE__ */ jsxs31(Union11, { children: [
2135
+ /* @__PURE__ */ jsx33(Translate15, { z: straightHeight / 2, children: /* @__PURE__ */ jsx33(Cuboid24, { size: [fullWidth, bodyLength10, straightHeight] }) }),
2136
+ /* @__PURE__ */ jsxs31(Hull10, { children: [
2137
+ /* @__PURE__ */ jsx33(Translate15, { z: straightHeight, children: /* @__PURE__ */ jsx33(Cuboid24, { size: [fullWidth, bodyLength10, 0.01] }) }),
2138
+ /* @__PURE__ */ jsx33(Translate15, { z: bodyHeight, children: /* @__PURE__ */ jsx33(
2078
2139
  Cuboid24,
2079
2140
  {
2080
2141
  size: [fullWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
@@ -2082,7 +2143,7 @@ var SOD123FL = () => {
2082
2143
  ) })
2083
2144
  ] })
2084
2145
  ] }) }),
2085
- /* @__PURE__ */ jsx32(
2146
+ /* @__PURE__ */ jsx33(
2086
2147
  Cuboid24,
2087
2148
  {
2088
2149
  color: "#777",
@@ -2095,7 +2156,7 @@ var SOD123FL = () => {
2095
2156
 
2096
2157
  // lib/SOD-923.tsx
2097
2158
  import { Colorize as Colorize17, Cuboid as Cuboid25, Hull as Hull11, Translate as Translate16, Union as Union12 } from "jscad-fiber";
2098
- import { Fragment as Fragment29, jsx as jsx33, jsxs as jsxs31 } from "react/jsx-runtime";
2159
+ import { Fragment as Fragment30, jsx as jsx34, jsxs as jsxs32 } from "react/jsx-runtime";
2099
2160
  var SOD923 = () => {
2100
2161
  const fullWidth = 0.8;
2101
2162
  const bodyLength10 = 0.6;
@@ -2107,8 +2168,8 @@ var SOD923 = () => {
2107
2168
  const rightPadCenterX = fullWidth / 2;
2108
2169
  const taperOffset = 0.1;
2109
2170
  const straightHeight = padThickness;
2110
- return /* @__PURE__ */ jsxs31(Fragment29, { children: [
2111
- /* @__PURE__ */ jsx33(
2171
+ return /* @__PURE__ */ jsxs32(Fragment30, { children: [
2172
+ /* @__PURE__ */ jsx34(
2112
2173
  Cuboid25,
2113
2174
  {
2114
2175
  color: "#ccc",
@@ -2116,7 +2177,7 @@ var SOD923 = () => {
2116
2177
  center: [leftPadCenterX, 0, padThickness / 2]
2117
2178
  }
2118
2179
  ),
2119
- /* @__PURE__ */ jsx33(
2180
+ /* @__PURE__ */ jsx34(
2120
2181
  Cuboid25,
2121
2182
  {
2122
2183
  color: "#ccc",
@@ -2124,11 +2185,11 @@ var SOD923 = () => {
2124
2185
  center: [rightPadCenterX, 0, padThickness / 2]
2125
2186
  }
2126
2187
  ),
2127
- /* @__PURE__ */ jsx33(Colorize17, { color: "#222", children: /* @__PURE__ */ jsxs31(Union12, { children: [
2128
- /* @__PURE__ */ jsx33(Translate16, { z: straightHeight / 2, children: /* @__PURE__ */ jsx33(Cuboid25, { size: [fullWidth, bodyLength10, straightHeight] }) }),
2129
- /* @__PURE__ */ jsxs31(Hull11, { children: [
2130
- /* @__PURE__ */ jsx33(Translate16, { z: straightHeight, children: /* @__PURE__ */ jsx33(Cuboid25, { size: [fullWidth, bodyLength10, 0.01] }) }),
2131
- /* @__PURE__ */ jsx33(Translate16, { z: bodyHeight, children: /* @__PURE__ */ jsx33(
2188
+ /* @__PURE__ */ jsx34(Colorize17, { color: "#222", children: /* @__PURE__ */ jsxs32(Union12, { children: [
2189
+ /* @__PURE__ */ jsx34(Translate16, { z: straightHeight / 2, children: /* @__PURE__ */ jsx34(Cuboid25, { size: [fullWidth, bodyLength10, straightHeight] }) }),
2190
+ /* @__PURE__ */ jsxs32(Hull11, { children: [
2191
+ /* @__PURE__ */ jsx34(Translate16, { z: straightHeight, children: /* @__PURE__ */ jsx34(Cuboid25, { size: [fullWidth, bodyLength10, 0.01] }) }),
2192
+ /* @__PURE__ */ jsx34(Translate16, { z: bodyHeight, children: /* @__PURE__ */ jsx34(
2132
2193
  Cuboid25,
2133
2194
  {
2134
2195
  size: [fullWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
@@ -2140,7 +2201,7 @@ var SOD923 = () => {
2140
2201
  };
2141
2202
 
2142
2203
  // lib/SOT-223.tsx
2143
- import { Fragment as Fragment30, jsx as jsx34, jsxs as jsxs32 } from "react/jsx-runtime";
2204
+ import { Fragment as Fragment31, jsx as jsx35, jsxs as jsxs33 } from "react/jsx-runtime";
2144
2205
  var SOT223 = () => {
2145
2206
  const fullWidth = 6.6;
2146
2207
  const bodyWidth = 3.5;
@@ -2153,8 +2214,8 @@ var SOT223 = () => {
2153
2214
  const padContactLength = 0.5;
2154
2215
  const padPitch = 2.3;
2155
2216
  const extendedBodyDistance = fullWidth - bodyWidth;
2156
- return /* @__PURE__ */ jsxs32(Fragment30, { children: [
2157
- /* @__PURE__ */ jsx34(
2217
+ return /* @__PURE__ */ jsxs33(Fragment31, { children: [
2218
+ /* @__PURE__ */ jsx35(
2158
2219
  SmdChipLead,
2159
2220
  {
2160
2221
  rotation: Math.PI,
@@ -2171,7 +2232,7 @@ var SOT223 = () => {
2171
2232
  },
2172
2233
  4
2173
2234
  ),
2174
- /* @__PURE__ */ jsx34(
2235
+ /* @__PURE__ */ jsx35(
2175
2236
  SmdChipLead,
2176
2237
  {
2177
2238
  position: {
@@ -2187,7 +2248,7 @@ var SOT223 = () => {
2187
2248
  },
2188
2249
  3
2189
2250
  ),
2190
- /* @__PURE__ */ jsx34(
2251
+ /* @__PURE__ */ jsx35(
2191
2252
  SmdChipLead,
2192
2253
  {
2193
2254
  position: {
@@ -2203,7 +2264,7 @@ var SOT223 = () => {
2203
2264
  },
2204
2265
  1
2205
2266
  ),
2206
- /* @__PURE__ */ jsx34(
2267
+ /* @__PURE__ */ jsx35(
2207
2268
  SmdChipLead,
2208
2269
  {
2209
2270
  position: {
@@ -2219,7 +2280,7 @@ var SOT223 = () => {
2219
2280
  },
2220
2281
  2
2221
2282
  ),
2222
- /* @__PURE__ */ jsx34(
2283
+ /* @__PURE__ */ jsx35(
2223
2284
  ChipBody,
2224
2285
  {
2225
2286
  center: { x: 0, y: 0, z: 0 },
@@ -2235,7 +2296,7 @@ var SOT223 = () => {
2235
2296
  };
2236
2297
 
2237
2298
  // lib/tqfp.tsx
2238
- import { Fragment as Fragment31, jsx as jsx35, jsxs as jsxs33 } from "react/jsx-runtime";
2299
+ import { Fragment as Fragment32, jsx as jsx36, jsxs as jsxs34 } from "react/jsx-runtime";
2239
2300
  var TQFP = () => {
2240
2301
  const pinCount = 64;
2241
2302
  const pitch = 0.5;
@@ -2250,8 +2311,8 @@ var TQFP = () => {
2250
2311
  const leadHeight = 0.8;
2251
2312
  const leadThickness = 0.25;
2252
2313
  const bodyDistance = (fullWidth - bodyWidth) / 2 + 0.2;
2253
- return /* @__PURE__ */ jsxs33(Fragment31, { children: [
2254
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx35(
2314
+ return /* @__PURE__ */ jsxs34(Fragment32, { children: [
2315
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx36(
2255
2316
  SmdChipLead,
2256
2317
  {
2257
2318
  position: {
@@ -2267,7 +2328,7 @@ var TQFP = () => {
2267
2328
  },
2268
2329
  `left-${i}`
2269
2330
  )),
2270
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx35(
2331
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx36(
2271
2332
  SmdChipLead,
2272
2333
  {
2273
2334
  rotation: Math.PI,
@@ -2284,7 +2345,7 @@ var TQFP = () => {
2284
2345
  },
2285
2346
  `right-${i}`
2286
2347
  )),
2287
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx35(
2348
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx36(
2288
2349
  SmdChipLead,
2289
2350
  {
2290
2351
  rotation: Math.PI / 2,
@@ -2301,7 +2362,7 @@ var TQFP = () => {
2301
2362
  },
2302
2363
  `bottom-${i}`
2303
2364
  )),
2304
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx35(
2365
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx36(
2305
2366
  SmdChipLead,
2306
2367
  {
2307
2368
  rotation: -Math.PI / 2,
@@ -2318,7 +2379,7 @@ var TQFP = () => {
2318
2379
  },
2319
2380
  `top-${i}`
2320
2381
  )),
2321
- /* @__PURE__ */ jsx35(
2382
+ /* @__PURE__ */ jsx36(
2322
2383
  ChipBody,
2323
2384
  {
2324
2385
  center: { x: 0, y: 0, z: leadThickness / 2 },
@@ -2335,7 +2396,7 @@ var TQFP = () => {
2335
2396
  var tqfp_default = TQFP;
2336
2397
 
2337
2398
  // lib/SOT-323.tsx
2338
- import { Fragment as Fragment32, jsx as jsx36, jsxs as jsxs34 } from "react/jsx-runtime";
2399
+ import { Fragment as Fragment33, jsx as jsx37, jsxs as jsxs35 } from "react/jsx-runtime";
2339
2400
  var SOT323 = () => {
2340
2401
  const fullWidth = 2.05;
2341
2402
  const bodyWidth = 1.25;
@@ -2347,8 +2408,8 @@ var SOT323 = () => {
2347
2408
  const padContactLength = 0.2;
2348
2409
  const padPitch = 0.65;
2349
2410
  const extendedBodyDistance = fullWidth - bodyWidth;
2350
- return /* @__PURE__ */ jsxs34(Fragment32, { children: [
2351
- /* @__PURE__ */ jsx36(
2411
+ return /* @__PURE__ */ jsxs35(Fragment33, { children: [
2412
+ /* @__PURE__ */ jsx37(
2352
2413
  SmdChipLead,
2353
2414
  {
2354
2415
  rotation: Math.PI,
@@ -2365,7 +2426,7 @@ var SOT323 = () => {
2365
2426
  },
2366
2427
  4
2367
2428
  ),
2368
- /* @__PURE__ */ jsx36(
2429
+ /* @__PURE__ */ jsx37(
2369
2430
  SmdChipLead,
2370
2431
  {
2371
2432
  position: {
@@ -2381,7 +2442,7 @@ var SOT323 = () => {
2381
2442
  },
2382
2443
  1
2383
2444
  ),
2384
- /* @__PURE__ */ jsx36(
2445
+ /* @__PURE__ */ jsx37(
2385
2446
  SmdChipLead,
2386
2447
  {
2387
2448
  position: {
@@ -2397,7 +2458,7 @@ var SOT323 = () => {
2397
2458
  },
2398
2459
  2
2399
2460
  ),
2400
- /* @__PURE__ */ jsx36(
2461
+ /* @__PURE__ */ jsx37(
2401
2462
  ChipBody,
2402
2463
  {
2403
2464
  center: { x: 0, y: 0, z: 0 },
@@ -2414,7 +2475,7 @@ var SOT323 = () => {
2414
2475
  };
2415
2476
 
2416
2477
  // lib/lqfp.tsx
2417
- import { Fragment as Fragment33, jsx as jsx37, jsxs as jsxs35 } from "react/jsx-runtime";
2478
+ import { Fragment as Fragment34, jsx as jsx38, jsxs as jsxs36 } from "react/jsx-runtime";
2418
2479
  var LQFP = ({
2419
2480
  pinCount,
2420
2481
  pitch,
@@ -2437,8 +2498,8 @@ var LQFP = ({
2437
2498
  const leadHeight = 0.8;
2438
2499
  const leadThickness = 0.2;
2439
2500
  const bodyDistance = (fullWidth - bodyWidth) / 2 + 0.2;
2440
- return /* @__PURE__ */ jsxs35(Fragment33, { children: [
2441
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx37(
2501
+ return /* @__PURE__ */ jsxs36(Fragment34, { children: [
2502
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx38(
2442
2503
  SmdChipLead,
2443
2504
  {
2444
2505
  position: {
@@ -2454,7 +2515,7 @@ var LQFP = ({
2454
2515
  },
2455
2516
  `left-${i}`
2456
2517
  )),
2457
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx37(
2518
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx38(
2458
2519
  SmdChipLead,
2459
2520
  {
2460
2521
  rotation: Math.PI,
@@ -2471,7 +2532,7 @@ var LQFP = ({
2471
2532
  },
2472
2533
  `right-${i}`
2473
2534
  )),
2474
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx37(
2535
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx38(
2475
2536
  SmdChipLead,
2476
2537
  {
2477
2538
  rotation: Math.PI / 2,
@@ -2488,7 +2549,7 @@ var LQFP = ({
2488
2549
  },
2489
2550
  `bottom-${i}`
2490
2551
  )),
2491
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx37(
2552
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx38(
2492
2553
  SmdChipLead,
2493
2554
  {
2494
2555
  rotation: -Math.PI / 2,
@@ -2505,7 +2566,7 @@ var LQFP = ({
2505
2566
  },
2506
2567
  `top-${i}`
2507
2568
  )),
2508
- /* @__PURE__ */ jsx37(
2569
+ /* @__PURE__ */ jsx38(
2509
2570
  ChipBody,
2510
2571
  {
2511
2572
  center: { x: 0, y: 0, z: leadThickness / 2 },
@@ -2527,7 +2588,7 @@ var LQFP = ({
2527
2588
 
2528
2589
  // lib/dfn.tsx
2529
2590
  import { Cuboid as Cuboid26 } from "jscad-fiber";
2530
- import { Fragment as Fragment34, jsx as jsx38, jsxs as jsxs36 } from "react/jsx-runtime";
2591
+ import { Fragment as Fragment35, jsx as jsx39, jsxs as jsxs37 } from "react/jsx-runtime";
2531
2592
  var DFN = ({
2532
2593
  num_pins,
2533
2594
  bodyWidth = 5.3,
@@ -2554,8 +2615,8 @@ var DFN = ({
2554
2615
  const pinNumber = i + 1;
2555
2616
  pinPositions.push({ pinNumber, x, y, padSizeX, padSizeY });
2556
2617
  }
2557
- return /* @__PURE__ */ jsxs36(Fragment34, { children: [
2558
- /* @__PURE__ */ jsx38(
2618
+ return /* @__PURE__ */ jsxs37(Fragment35, { children: [
2619
+ /* @__PURE__ */ jsx39(
2559
2620
  ChipBody,
2560
2621
  {
2561
2622
  center: { x: 0, y: 0, z: 0 },
@@ -2573,7 +2634,7 @@ var DFN = ({
2573
2634
  }
2574
2635
  }
2575
2636
  ),
2576
- pinPositions.map((p, i) => /* @__PURE__ */ jsx38(
2637
+ pinPositions.map((p, i) => /* @__PURE__ */ jsx39(
2577
2638
  Cuboid26,
2578
2639
  {
2579
2640
  center: [p.x, p.y, thermalPadThickness / 2],
@@ -2581,7 +2642,7 @@ var DFN = ({
2581
2642
  },
2582
2643
  i
2583
2644
  )),
2584
- thermalPadSize?.length !== void 0 && thermalPadSize?.width !== void 0 && /* @__PURE__ */ jsx38(
2645
+ thermalPadSize?.length !== void 0 && thermalPadSize?.width !== void 0 && /* @__PURE__ */ jsx39(
2585
2646
  Cuboid26,
2586
2647
  {
2587
2648
  center: [0, 0, thermalPadThickness / 2],
@@ -2597,7 +2658,7 @@ var DFN = ({
2597
2658
 
2598
2659
  // lib/hc49.tsx
2599
2660
  import { Colorize as Colorize18, Cylinder as Cylinder6, Hull as Hull12, RoundedCylinder } from "jscad-fiber";
2600
- import { Fragment as Fragment35, jsx as jsx39, jsxs as jsxs37 } from "react/jsx-runtime";
2661
+ import { Fragment as Fragment36, jsx as jsx40, jsxs as jsxs38 } from "react/jsx-runtime";
2601
2662
  var HC49 = ({
2602
2663
  bodyLength: bodyLength10 = 10.2,
2603
2664
  bodyWidth = 4.65,
@@ -2613,10 +2674,10 @@ var HC49 = ({
2613
2674
  const endCenterX = halfLength - endRadius;
2614
2675
  const leadCenterX = leadSpacing / 2;
2615
2676
  const baseHeight = 0.85;
2616
- return /* @__PURE__ */ jsxs37(Fragment35, { children: [
2617
- /* @__PURE__ */ jsxs37(Colorize18, { color, children: [
2618
- /* @__PURE__ */ jsxs37(Hull12, { children: [
2619
- /* @__PURE__ */ jsx39(
2677
+ return /* @__PURE__ */ jsxs38(Fragment36, { children: [
2678
+ /* @__PURE__ */ jsxs38(Colorize18, { color, children: [
2679
+ /* @__PURE__ */ jsxs38(Hull12, { children: [
2680
+ /* @__PURE__ */ jsx40(
2620
2681
  RoundedCylinder,
2621
2682
  {
2622
2683
  height: bodyHeight,
@@ -2625,7 +2686,7 @@ var HC49 = ({
2625
2686
  center: [-endCenterX, 0, bodyHeight]
2626
2687
  }
2627
2688
  ),
2628
- /* @__PURE__ */ jsx39(
2689
+ /* @__PURE__ */ jsx40(
2629
2690
  RoundedCylinder,
2630
2691
  {
2631
2692
  height: bodyHeight,
@@ -2635,8 +2696,8 @@ var HC49 = ({
2635
2696
  }
2636
2697
  )
2637
2698
  ] }),
2638
- /* @__PURE__ */ jsxs37(Hull12, { children: [
2639
- /* @__PURE__ */ jsx39(
2699
+ /* @__PURE__ */ jsxs38(Hull12, { children: [
2700
+ /* @__PURE__ */ jsx40(
2640
2701
  RoundedCylinder,
2641
2702
  {
2642
2703
  height: baseHeight,
@@ -2645,7 +2706,7 @@ var HC49 = ({
2645
2706
  center: [-endCenterX, 0, bodyHeight / 2 + baseHeight / 2]
2646
2707
  }
2647
2708
  ),
2648
- /* @__PURE__ */ jsx39(
2709
+ /* @__PURE__ */ jsx40(
2649
2710
  RoundedCylinder,
2650
2711
  {
2651
2712
  height: baseHeight,
@@ -2656,8 +2717,8 @@ var HC49 = ({
2656
2717
  )
2657
2718
  ] })
2658
2719
  ] }),
2659
- /* @__PURE__ */ jsxs37(Colorize18, { color: leadColor, children: [
2660
- /* @__PURE__ */ jsx39(
2720
+ /* @__PURE__ */ jsxs38(Colorize18, { color: leadColor, children: [
2721
+ /* @__PURE__ */ jsx40(
2661
2722
  Cylinder6,
2662
2723
  {
2663
2724
  height: leadLength + bodyHeight / 2,
@@ -2665,7 +2726,7 @@ var HC49 = ({
2665
2726
  center: [-leadCenterX + 0.06, 0, -(leadLength / 2) + bodyHeight / 2]
2666
2727
  }
2667
2728
  ),
2668
- /* @__PURE__ */ jsx39(
2729
+ /* @__PURE__ */ jsx40(
2669
2730
  Cylinder6,
2670
2731
  {
2671
2732
  height: leadLength + bodyHeight / 2,
@@ -2678,7 +2739,7 @@ var HC49 = ({
2678
2739
  };
2679
2740
 
2680
2741
  // lib/ms012.tsx
2681
- import { Fragment as Fragment36, jsx as jsx40, jsxs as jsxs38 } from "react/jsx-runtime";
2742
+ import { Fragment as Fragment37, jsx as jsx41, jsxs as jsxs39 } from "react/jsx-runtime";
2682
2743
  var MS012 = ({
2683
2744
  pinCount,
2684
2745
  padContactLength = 0.6,
@@ -2693,8 +2754,8 @@ var MS012 = ({
2693
2754
  const bodyLength10 = 3.9;
2694
2755
  const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
2695
2756
  const leadThickness = 0.2;
2696
- return /* @__PURE__ */ jsxs38(Fragment36, { children: [
2697
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx40(
2757
+ return /* @__PURE__ */ jsxs39(Fragment37, { children: [
2758
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx41(
2698
2759
  SmdChipLead,
2699
2760
  {
2700
2761
  position: {
@@ -2710,7 +2771,7 @@ var MS012 = ({
2710
2771
  },
2711
2772
  i
2712
2773
  )),
2713
- Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx40(
2774
+ Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx41(
2714
2775
  SmdChipLead,
2715
2776
  {
2716
2777
  rotation: Math.PI,
@@ -2727,7 +2788,7 @@ var MS012 = ({
2727
2788
  },
2728
2789
  `right-${i}`
2729
2790
  )),
2730
- /* @__PURE__ */ jsx40(
2791
+ /* @__PURE__ */ jsx41(
2731
2792
  ChipBody,
2732
2793
  {
2733
2794
  center: { x: 0, y: 0, z: leadThickness / 2 },
@@ -2743,14 +2804,14 @@ var MS012 = ({
2743
2804
  };
2744
2805
 
2745
2806
  // lib/Footprinter3d.tsx
2746
- import { jsx as jsx41 } from "react/jsx-runtime";
2807
+ import { jsx as jsx42 } from "react/jsx-runtime";
2747
2808
  var Footprinter3d = ({ footprint }) => {
2748
2809
  const fpJson = fp3.string(footprint).json();
2749
2810
  switch (fpJson.fn) {
2750
2811
  case "dip":
2751
- return /* @__PURE__ */ jsx41(Dip, { numPins: fpJson.num_pins, pitch: fpJson.p, bodyWidth: fpJson.w });
2812
+ return /* @__PURE__ */ jsx42(Dip, { numPins: fpJson.num_pins, pitch: fpJson.p, bodyWidth: fpJson.w });
2752
2813
  case "tssop":
2753
- return /* @__PURE__ */ jsx41(
2814
+ return /* @__PURE__ */ jsx42(
2754
2815
  Tssop,
2755
2816
  {
2756
2817
  pinCount: fpJson.num_pins,
@@ -2760,8 +2821,19 @@ var Footprinter3d = ({ footprint }) => {
2760
2821
  bodyWidth: fpJson.w
2761
2822
  }
2762
2823
  );
2824
+ case "msop":
2825
+ return /* @__PURE__ */ jsx42(
2826
+ MSOP,
2827
+ {
2828
+ pinCount: fpJson.num_pins,
2829
+ padContactLength: fpJson.pl,
2830
+ leadWidth: fpJson.pw,
2831
+ pitch: fpJson.p,
2832
+ bodyWidth: fpJson.w
2833
+ }
2834
+ );
2763
2835
  case "vssop":
2764
- return /* @__PURE__ */ jsx41(
2836
+ return /* @__PURE__ */ jsx42(
2765
2837
  VSSOP,
2766
2838
  {
2767
2839
  pinCount: fpJson.num_pins,
@@ -2773,7 +2845,7 @@ var Footprinter3d = ({ footprint }) => {
2773
2845
  }
2774
2846
  );
2775
2847
  case "qfp":
2776
- return /* @__PURE__ */ jsx41(
2848
+ return /* @__PURE__ */ jsx42(
2777
2849
  QFP,
2778
2850
  {
2779
2851
  pinCount: fpJson.num_pins,
@@ -2784,12 +2856,12 @@ var Footprinter3d = ({ footprint }) => {
2784
2856
  }
2785
2857
  );
2786
2858
  case "tqfp":
2787
- return /* @__PURE__ */ jsx41(tqfp_default, {});
2859
+ return /* @__PURE__ */ jsx42(tqfp_default, {});
2788
2860
  case "lqfp":
2789
- return /* @__PURE__ */ jsx41(LQFP, { pinCount: fpJson.num_pins });
2861
+ return /* @__PURE__ */ jsx42(LQFP, { pinCount: fpJson.num_pins });
2790
2862
  case "qfn": {
2791
2863
  const hasThermalPad = typeof fpJson.thermalpad?.x === "number" && typeof fpJson.thermalpad?.y === "number";
2792
- return /* @__PURE__ */ jsx41(
2864
+ return /* @__PURE__ */ jsx42(
2793
2865
  qfn_default,
2794
2866
  {
2795
2867
  num_pins: fpJson.num_pins,
@@ -2807,7 +2879,7 @@ var Footprinter3d = ({ footprint }) => {
2807
2879
  }
2808
2880
  case "dfn": {
2809
2881
  const hasThermalPad = typeof fpJson.thermalpad?.x === "number" && typeof fpJson.thermalpad?.y === "number";
2810
- return /* @__PURE__ */ jsx41(
2882
+ return /* @__PURE__ */ jsx42(
2811
2883
  DFN,
2812
2884
  {
2813
2885
  num_pins: fpJson.num_pins,
@@ -2825,39 +2897,39 @@ var Footprinter3d = ({ footprint }) => {
2825
2897
  }
2826
2898
  case "pinrow":
2827
2899
  if (fpJson.male)
2828
- return /* @__PURE__ */ jsx41(PinRow, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2900
+ return /* @__PURE__ */ jsx42(PinRow, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2829
2901
  if (fpJson.female)
2830
- return /* @__PURE__ */ jsx41(FemaleHeader, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2902
+ return /* @__PURE__ */ jsx42(FemaleHeader, { numberOfPins: fpJson.num_pins, pitch: fpJson.p });
2831
2903
  case "cap": {
2832
2904
  switch (fpJson.imperial) {
2833
2905
  case "0402":
2834
- return /* @__PURE__ */ jsx41(A0402, { color: "#856c4d" });
2906
+ return /* @__PURE__ */ jsx42(A0402, { color: "#856c4d" });
2835
2907
  case "0603":
2836
- return /* @__PURE__ */ jsx41(A0603, { color: "#856c4d" });
2908
+ return /* @__PURE__ */ jsx42(A0603, { color: "#856c4d" });
2837
2909
  case "0805":
2838
- return /* @__PURE__ */ jsx41(A0805, { color: "#856c4d" });
2910
+ return /* @__PURE__ */ jsx42(A0805, { color: "#856c4d" });
2839
2911
  case "0201":
2840
- return /* @__PURE__ */ jsx41(A0201, { color: "#856c4d" });
2912
+ return /* @__PURE__ */ jsx42(A0201, { color: "#856c4d" });
2841
2913
  case "01005":
2842
- return /* @__PURE__ */ jsx41(A01005, { color: "#856c4d" });
2914
+ return /* @__PURE__ */ jsx42(A01005, { color: "#856c4d" });
2843
2915
  case "1206":
2844
- return /* @__PURE__ */ jsx41(A1206, { color: "#856c4d" });
2916
+ return /* @__PURE__ */ jsx42(A1206, { color: "#856c4d" });
2845
2917
  case "1210":
2846
- return /* @__PURE__ */ jsx41(A1210, { color: "#856c4d" });
2918
+ return /* @__PURE__ */ jsx42(A1210, { color: "#856c4d" });
2847
2919
  case "2010":
2848
- return /* @__PURE__ */ jsx41(A2010, { color: "#856c4d" });
2920
+ return /* @__PURE__ */ jsx42(A2010, { color: "#856c4d" });
2849
2921
  case "2512":
2850
- return /* @__PURE__ */ jsx41(A2512, { color: "#856c4d" });
2922
+ return /* @__PURE__ */ jsx42(A2512, { color: "#856c4d" });
2851
2923
  }
2852
2924
  }
2853
2925
  case "sot235":
2854
- return /* @__PURE__ */ jsx41(SOT_235_default, {});
2926
+ return /* @__PURE__ */ jsx42(SOT_235_default, {});
2855
2927
  case "sot223":
2856
- return /* @__PURE__ */ jsx41(SOT223, {});
2928
+ return /* @__PURE__ */ jsx42(SOT223, {});
2857
2929
  case "sot323":
2858
- return /* @__PURE__ */ jsx41(SOT323, {});
2930
+ return /* @__PURE__ */ jsx42(SOT323, {});
2859
2931
  case "pushbutton":
2860
- return /* @__PURE__ */ jsx41(
2932
+ return /* @__PURE__ */ jsx42(
2861
2933
  PushButton,
2862
2934
  {
2863
2935
  width: fpJson.w,
@@ -2866,7 +2938,7 @@ var Footprinter3d = ({ footprint }) => {
2866
2938
  }
2867
2939
  );
2868
2940
  case "soic":
2869
- return /* @__PURE__ */ jsx41(
2941
+ return /* @__PURE__ */ jsx42(
2870
2942
  SOIC,
2871
2943
  {
2872
2944
  pinCount: fpJson.num_pins,
@@ -2877,25 +2949,25 @@ var Footprinter3d = ({ footprint }) => {
2877
2949
  }
2878
2950
  );
2879
2951
  case "sod523":
2880
- return /* @__PURE__ */ jsx41(SOD523, {});
2952
+ return /* @__PURE__ */ jsx42(SOD523, {});
2881
2953
  case "sma":
2882
- return /* @__PURE__ */ jsx41(SMA, {});
2954
+ return /* @__PURE__ */ jsx42(SMA, {});
2883
2955
  case "smb":
2884
- return /* @__PURE__ */ jsx41(SMB, {});
2956
+ return /* @__PURE__ */ jsx42(SMB, {});
2885
2957
  case "smc":
2886
- return /* @__PURE__ */ jsx41(SMC, {});
2958
+ return /* @__PURE__ */ jsx42(SMC, {});
2887
2959
  case "smf":
2888
- return /* @__PURE__ */ jsx41(SMF, {});
2960
+ return /* @__PURE__ */ jsx42(SMF, {});
2889
2961
  case "sod123f":
2890
- return /* @__PURE__ */ jsx41(SOD123F, {});
2962
+ return /* @__PURE__ */ jsx42(SOD123F, {});
2891
2963
  case "sod123fl":
2892
- return /* @__PURE__ */ jsx41(SOD123FL, {});
2964
+ return /* @__PURE__ */ jsx42(SOD123FL, {});
2893
2965
  case "sod923":
2894
- return /* @__PURE__ */ jsx41(SOD923, {});
2966
+ return /* @__PURE__ */ jsx42(SOD923, {});
2895
2967
  case "hc49":
2896
- return /* @__PURE__ */ jsx41(HC49, {});
2968
+ return /* @__PURE__ */ jsx42(HC49, {});
2897
2969
  case "ms012":
2898
- return /* @__PURE__ */ jsx41(
2970
+ return /* @__PURE__ */ jsx42(
2899
2971
  MS012,
2900
2972
  {
2901
2973
  pinCount: fpJson.num_pins,
@@ -2909,29 +2981,29 @@ var Footprinter3d = ({ footprint }) => {
2909
2981
  const color = colorMatch ? colorMatch[1] : void 0;
2910
2982
  switch (fpJson.imperial) {
2911
2983
  case "0402":
2912
- return /* @__PURE__ */ jsx41(A0402, { color });
2984
+ return /* @__PURE__ */ jsx42(A0402, { color });
2913
2985
  case "0603":
2914
- return /* @__PURE__ */ jsx41(A0603, { color });
2986
+ return /* @__PURE__ */ jsx42(A0603, { color });
2915
2987
  case "0805":
2916
- return /* @__PURE__ */ jsx41(A0805, { color });
2988
+ return /* @__PURE__ */ jsx42(A0805, { color });
2917
2989
  case "0201":
2918
- return /* @__PURE__ */ jsx41(A0201, { color });
2990
+ return /* @__PURE__ */ jsx42(A0201, { color });
2919
2991
  case "01005":
2920
- return /* @__PURE__ */ jsx41(A01005, { color });
2992
+ return /* @__PURE__ */ jsx42(A01005, { color });
2921
2993
  case "1206":
2922
- return /* @__PURE__ */ jsx41(A1206, { color });
2994
+ return /* @__PURE__ */ jsx42(A1206, { color });
2923
2995
  case "1210":
2924
- return /* @__PURE__ */ jsx41(A1210, { color });
2996
+ return /* @__PURE__ */ jsx42(A1210, { color });
2925
2997
  case "2010":
2926
- return /* @__PURE__ */ jsx41(A2010, { color });
2998
+ return /* @__PURE__ */ jsx42(A2010, { color });
2927
2999
  case "2512":
2928
- return /* @__PURE__ */ jsx41(A2512, { color });
3000
+ return /* @__PURE__ */ jsx42(A2512, { color });
2929
3001
  }
2930
3002
  return null;
2931
3003
  };
2932
3004
 
2933
3005
  // lib/SOT-23-3P.tsx
2934
- import { Fragment as Fragment37, jsx as jsx42, jsxs as jsxs39 } from "react/jsx-runtime";
3006
+ import { Fragment as Fragment38, jsx as jsx43, jsxs as jsxs40 } from "react/jsx-runtime";
2935
3007
  var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2936
3008
  const bodyWidth = 1.3;
2937
3009
  const bodyLength10 = 2.9;
@@ -2942,8 +3014,8 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2942
3014
  const padContactLength = 0.4;
2943
3015
  const padThickness = leadThickness / 2;
2944
3016
  const extendedBodyDistance = (fullWidth - bodyWidth) / 2 + 0.3;
2945
- return /* @__PURE__ */ jsxs39(Fragment37, { children: [
2946
- /* @__PURE__ */ jsx42(
3017
+ return /* @__PURE__ */ jsxs40(Fragment38, { children: [
3018
+ /* @__PURE__ */ jsx43(
2947
3019
  SmdChipLead,
2948
3020
  {
2949
3021
  rotation: Math.PI,
@@ -2960,7 +3032,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2960
3032
  },
2961
3033
  1
2962
3034
  ),
2963
- /* @__PURE__ */ jsx42(
3035
+ /* @__PURE__ */ jsx43(
2964
3036
  SmdChipLead,
2965
3037
  {
2966
3038
  rotation: Math.PI,
@@ -2977,7 +3049,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2977
3049
  },
2978
3050
  2
2979
3051
  ),
2980
- /* @__PURE__ */ jsx42(
3052
+ /* @__PURE__ */ jsx43(
2981
3053
  SmdChipLead,
2982
3054
  {
2983
3055
  position: {
@@ -2993,7 +3065,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
2993
3065
  },
2994
3066
  3
2995
3067
  ),
2996
- /* @__PURE__ */ jsx42(
3068
+ /* @__PURE__ */ jsx43(
2997
3069
  ChipBody,
2998
3070
  {
2999
3071
  center: { x: 0, y: 0, z: 0 },
@@ -3007,7 +3079,7 @@ var SOT233P = ({ fullWidth = 2.9, fullLength: fullLength10 = 2.8 }) => {
3007
3079
 
3008
3080
  // lib/SOT-563.tsx
3009
3081
  import { Cuboid as Cuboid27, Translate as Translate17, Rotate as Rotate6, Colorize as Colorize19 } from "jscad-fiber";
3010
- import { Fragment as Fragment38, jsx as jsx43, jsxs as jsxs40 } from "react/jsx-runtime";
3082
+ import { Fragment as Fragment39, jsx as jsx44, jsxs as jsxs41 } from "react/jsx-runtime";
3011
3083
  var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
3012
3084
  const bodyWidth = 1.2;
3013
3085
  const bodyLength10 = 1.6;
@@ -3017,11 +3089,11 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
3017
3089
  const leadHeight = 0.13;
3018
3090
  const leadSpacing = 0.5;
3019
3091
  const bodyZOffset = -0.4;
3020
- return /* @__PURE__ */ jsxs40(Fragment38, { children: [
3021
- /* @__PURE__ */ jsx43(Rotate6, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx43(Translate17, { center: [0, 0, bodyZOffset], children: /* @__PURE__ */ jsx43(Colorize19, { color: "grey", children: /* @__PURE__ */ jsx43(Cuboid27, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
3092
+ return /* @__PURE__ */ jsxs41(Fragment39, { children: [
3093
+ /* @__PURE__ */ jsx44(Rotate6, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx44(Translate17, { center: [0, 0, bodyZOffset], children: /* @__PURE__ */ jsx44(Colorize19, { color: "grey", children: /* @__PURE__ */ jsx44(Cuboid27, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
3022
3094
  [-1, 0, 1].flatMap((yOffset, index) => [
3023
3095
  // Left lead
3024
- /* @__PURE__ */ jsx43(
3096
+ /* @__PURE__ */ jsx44(
3025
3097
  Translate17,
3026
3098
  {
3027
3099
  center: [
@@ -3029,16 +3101,16 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
3029
3101
  yOffset * leadSpacing,
3030
3102
  leadHeight / 2
3031
3103
  ],
3032
- children: /* @__PURE__ */ jsx43(Cuboid27, { size: [leadLength, leadWidth, leadHeight] })
3104
+ children: /* @__PURE__ */ jsx44(Cuboid27, { size: [leadLength, leadWidth, leadHeight] })
3033
3105
  },
3034
3106
  `left-${index}`
3035
3107
  ),
3036
3108
  // Right lead
3037
- /* @__PURE__ */ jsx43(
3109
+ /* @__PURE__ */ jsx44(
3038
3110
  Translate17,
3039
3111
  {
3040
3112
  center: [bodyWidth / 2 + 0.03, yOffset * leadSpacing, leadHeight / 2],
3041
- children: /* @__PURE__ */ jsx43(Cuboid27, { size: [leadLength, leadWidth, leadHeight] })
3113
+ children: /* @__PURE__ */ jsx44(Cuboid27, { size: [leadLength, leadWidth, leadHeight] })
3042
3114
  },
3043
3115
  `right-${index}`
3044
3116
  )
@@ -3048,7 +3120,7 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
3048
3120
 
3049
3121
  // lib/SOT-723.tsx
3050
3122
  import { Cuboid as Cuboid28, Translate as Translate18, Rotate as Rotate7, Colorize as Colorize20 } from "jscad-fiber";
3051
- import { Fragment as Fragment39, jsx as jsx44, jsxs as jsxs41 } from "react/jsx-runtime";
3123
+ import { Fragment as Fragment40, jsx as jsx45, jsxs as jsxs42 } from "react/jsx-runtime";
3052
3124
  var getCcwSot723Coords = (pn) => {
3053
3125
  if (pn === 1) {
3054
3126
  return { x: 0, y: 0 };
@@ -3066,11 +3138,11 @@ var SOT723 = () => {
3066
3138
  const leadLength = 0.3;
3067
3139
  const leadHeight = 0.1;
3068
3140
  const centerLeadWidth = 0.42;
3069
- return /* @__PURE__ */ jsxs41(Fragment39, { children: [
3070
- /* @__PURE__ */ jsx44(Rotate7, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx44(Translate18, { center: [0.475, leadHeight / 2, -0.25], children: /* @__PURE__ */ jsx44(Colorize20, { color: "grey", children: /* @__PURE__ */ jsx44(Cuboid28, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
3141
+ return /* @__PURE__ */ jsxs42(Fragment40, { children: [
3142
+ /* @__PURE__ */ jsx45(Rotate7, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx45(Translate18, { center: [0.475, leadHeight / 2, -0.25], children: /* @__PURE__ */ jsx45(Colorize20, { color: "grey", children: /* @__PURE__ */ jsx45(Cuboid28, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
3071
3143
  [1, 2, 3].map((pn) => {
3072
3144
  const { x, y } = getCcwSot723Coords(pn);
3073
- return /* @__PURE__ */ jsx44(Translate18, { center: [x, y, 0.05], children: /* @__PURE__ */ jsx44(
3145
+ return /* @__PURE__ */ jsx45(Translate18, { center: [x, y, 0.05], children: /* @__PURE__ */ jsx45(
3074
3146
  Cuboid28,
3075
3147
  {
3076
3148
  size: [
@@ -3085,7 +3157,7 @@ var SOT723 = () => {
3085
3157
  };
3086
3158
 
3087
3159
  // lib/sod-123.tsx
3088
- import { Fragment as Fragment40, jsx as jsx45, jsxs as jsxs42 } from "react/jsx-runtime";
3160
+ import { Fragment as Fragment41, jsx as jsx46, jsxs as jsxs43 } from "react/jsx-runtime";
3089
3161
  var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
3090
3162
  const bodyWidth = 2.9;
3091
3163
  const bodyLength10 = 1.3;
@@ -3096,8 +3168,8 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
3096
3168
  const padContactLength = 0.4;
3097
3169
  const padThickness = leadThickness / 2;
3098
3170
  const bodyDistance = (fullWidth - bodyWidth) / 2;
3099
- return /* @__PURE__ */ jsxs42(Fragment40, { children: [
3100
- /* @__PURE__ */ jsx45(
3171
+ return /* @__PURE__ */ jsxs43(Fragment41, { children: [
3172
+ /* @__PURE__ */ jsx46(
3101
3173
  SmdChipLead,
3102
3174
  {
3103
3175
  position: {
@@ -3113,7 +3185,7 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
3113
3185
  },
3114
3186
  1
3115
3187
  ),
3116
- /* @__PURE__ */ jsx45(
3188
+ /* @__PURE__ */ jsx46(
3117
3189
  SmdChipLead,
3118
3190
  {
3119
3191
  rotation: Math.PI,
@@ -3130,7 +3202,7 @@ var SOD123 = ({ fullWidth = 3.8, fullLength: fullLength10 = 1.6 }) => {
3130
3202
  },
3131
3203
  2
3132
3204
  ),
3133
- /* @__PURE__ */ jsx45(
3205
+ /* @__PURE__ */ jsx46(
3134
3206
  ChipBody,
3135
3207
  {
3136
3208
  center: { x: 0, y: 0, z: 0 },
@@ -3161,6 +3233,7 @@ export {
3161
3233
  HC49,
3162
3234
  LQFP,
3163
3235
  MS012,
3236
+ MSOP,
3164
3237
  PinRow,
3165
3238
  QFN,
3166
3239
  QFP,