jscad-electronics 0.0.171 → 0.0.172
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 +38 -3
- package/dist/index.js +1111 -964
- package/dist/index.js.map +1 -1
- package/dist/vanilla.js +247 -110
- package/dist/vanilla.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -775,7 +775,7 @@ var ExtrudedPads = ({
|
|
|
775
775
|
// lib/Footprinter3d.tsx
|
|
776
776
|
import { fp as fp10 } from "@tscircuit/footprinter";
|
|
777
777
|
import { mp } from "@tscircuit/modelprinter";
|
|
778
|
-
import { Rotate as Rotate24, Translate as
|
|
778
|
+
import { Rotate as Rotate24, Translate as Translate43 } from "jscad-fiber";
|
|
779
779
|
|
|
780
780
|
// lib/DualInlinePackage.tsx
|
|
781
781
|
import { Polygon as Polygon3, ExtrudeLinear as ExtrudeLinear3, Rotate as Rotate4, Translate as Translate6 } from "jscad-fiber";
|
|
@@ -940,135 +940,17 @@ var Dip = ({
|
|
|
940
940
|
] });
|
|
941
941
|
};
|
|
942
942
|
|
|
943
|
-
// lib/SmdChipLead.tsx
|
|
944
|
-
import {
|
|
945
|
-
Polygon as Polygon4,
|
|
946
|
-
ExtrudeLinear as ExtrudeLinear4,
|
|
947
|
-
Translate as Translate7,
|
|
948
|
-
Rotate as Rotate5,
|
|
949
|
-
Colorize as Colorize6
|
|
950
|
-
} from "jscad-fiber";
|
|
951
|
-
import { jsx as jsx17 } from "react/jsx-runtime";
|
|
952
|
-
function calculateSCurve(x, {
|
|
953
|
-
height: height10,
|
|
954
|
-
padContactLength,
|
|
955
|
-
curveLength,
|
|
956
|
-
bodyDistance,
|
|
957
|
-
steepness = 10
|
|
958
|
-
}) {
|
|
959
|
-
if (!curveLength) curveLength = bodyDistance * 0.3;
|
|
960
|
-
let flatFromBodySectionLength = bodyDistance - padContactLength - curveLength;
|
|
961
|
-
if (flatFromBodySectionLength < 0) {
|
|
962
|
-
curveLength += flatFromBodySectionLength;
|
|
963
|
-
flatFromBodySectionLength = 0;
|
|
964
|
-
}
|
|
965
|
-
const curveStart = padContactLength * 0.75;
|
|
966
|
-
const curveEnd = padContactLength + curveLength + (bodyDistance - padContactLength - curveLength) * 0.25;
|
|
967
|
-
if (x <= curveStart) return 0;
|
|
968
|
-
if (x >= curveEnd) return height10;
|
|
969
|
-
const t = (x - curveStart) / (curveEnd - curveStart);
|
|
970
|
-
return height10 / (1 + Math.exp(-steepness * (t - 0.5)));
|
|
971
|
-
}
|
|
972
|
-
var SmdChipLead = (props) => {
|
|
973
|
-
const { thickness, width: width10, padContactLength, bodyDistance, height: height10, rotation } = props;
|
|
974
|
-
const N = 15;
|
|
975
|
-
const points = Array.from({ length: N }).map((_, i) => i / (N - 1) * bodyDistance).map((x) => [x, calculateSCurve(x, props)]);
|
|
976
|
-
const polygon = getExpandedStroke(points, thickness);
|
|
977
|
-
return /* @__PURE__ */ jsx17(Colorize6, { color: "#fff", children: /* @__PURE__ */ jsx17(Translate7, { offset: { z: 0, y: 0, x: 0, ...props.position }, children: /* @__PURE__ */ jsx17(Rotate5, { rotation: ["90deg", 0, rotation ?? 0], children: /* @__PURE__ */ jsx17(Translate7, { offset: { x: 0, y: 0, z: -width10 / 2 }, children: /* @__PURE__ */ jsx17(ExtrudeLinear4, { height: width10, children: /* @__PURE__ */ jsx17(Polygon4, { points: polygon.map((p) => [p.x, p.y]) }) }) }) }) }) });
|
|
978
|
-
};
|
|
979
|
-
|
|
980
|
-
// lib/Tssop.tsx
|
|
981
|
-
import { Fragment as Fragment14, jsx as jsx18, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
982
|
-
var Tssop = ({
|
|
983
|
-
pinCount,
|
|
984
|
-
leadLength,
|
|
985
|
-
leadWidth,
|
|
986
|
-
pitch,
|
|
987
|
-
bodyWidth
|
|
988
|
-
}) => {
|
|
989
|
-
const sidePinCount = Math.ceil(pinCount / 2);
|
|
990
|
-
const isSmallTssop = sidePinCount <= 4;
|
|
991
|
-
const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
|
|
992
|
-
const bodyLength10 = pitch * Math.max(sidePinCount - 1, 0) + (isSmallTssop ? 1.5 : 1.15);
|
|
993
|
-
const bodyVisualWidth = bodyWidth - (isSmallTssop ? 0.66 : 0.58);
|
|
994
|
-
const leadThickness = 0.15;
|
|
995
|
-
const leadHeight = 0.8;
|
|
996
|
-
const bodyHeight = 1.22;
|
|
997
|
-
const bodyStandoff = 0.24;
|
|
998
|
-
const padContactLength = leadLength * 0.5;
|
|
999
|
-
const leadReach = padContactLength + Math.max(0.22, Math.min(0.4, leadLength * 0.65));
|
|
1000
|
-
const leadStartOffset = bodyWidth / 2 + leadLength / 2;
|
|
1001
|
-
const curveLength = leadReach * 0.1;
|
|
1002
|
-
const notchInset = Math.min(Math.min(bodyVisualWidth, bodyLength10) * 0.18, 1);
|
|
1003
|
-
const notchRadius = Math.min(
|
|
1004
|
-
Math.min(bodyVisualWidth, bodyLength10) * 0.12,
|
|
1005
|
-
0.45
|
|
1006
|
-
);
|
|
1007
|
-
return /* @__PURE__ */ jsxs16(Fragment14, { children: [
|
|
1008
|
-
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx18(
|
|
1009
|
-
SmdChipLead,
|
|
1010
|
-
{
|
|
1011
|
-
position: {
|
|
1012
|
-
x: -leadStartOffset,
|
|
1013
|
-
y: i * pitch - pinOffsetToCenter,
|
|
1014
|
-
z: leadThickness / 2
|
|
1015
|
-
},
|
|
1016
|
-
width: leadWidth,
|
|
1017
|
-
thickness: leadThickness,
|
|
1018
|
-
padContactLength,
|
|
1019
|
-
bodyDistance: leadReach,
|
|
1020
|
-
curveLength,
|
|
1021
|
-
height: leadHeight
|
|
1022
|
-
},
|
|
1023
|
-
`left-${i}`
|
|
1024
|
-
)),
|
|
1025
|
-
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx18(
|
|
1026
|
-
SmdChipLead,
|
|
1027
|
-
{
|
|
1028
|
-
rotation: Math.PI,
|
|
1029
|
-
position: {
|
|
1030
|
-
x: leadStartOffset,
|
|
1031
|
-
y: i * pitch - pinOffsetToCenter,
|
|
1032
|
-
z: leadThickness / 2
|
|
1033
|
-
},
|
|
1034
|
-
width: leadWidth,
|
|
1035
|
-
thickness: leadThickness,
|
|
1036
|
-
padContactLength,
|
|
1037
|
-
bodyDistance: leadReach,
|
|
1038
|
-
curveLength,
|
|
1039
|
-
height: leadHeight
|
|
1040
|
-
},
|
|
1041
|
-
`right-${i}`
|
|
1042
|
-
)),
|
|
1043
|
-
/* @__PURE__ */ jsx18(
|
|
1044
|
-
ChipBody,
|
|
1045
|
-
{
|
|
1046
|
-
center: { x: 0, y: 0, z: 0 },
|
|
1047
|
-
width: bodyVisualWidth,
|
|
1048
|
-
length: bodyLength10,
|
|
1049
|
-
height: bodyHeight,
|
|
1050
|
-
notchPosition: {
|
|
1051
|
-
x: -(bodyVisualWidth / 2 - notchInset - 0.2),
|
|
1052
|
-
y: bodyLength10 / 2 - notchInset - 0.2,
|
|
1053
|
-
z: bodyHeight
|
|
1054
|
-
},
|
|
1055
|
-
notchRadius
|
|
1056
|
-
}
|
|
1057
|
-
)
|
|
1058
|
-
] });
|
|
1059
|
-
};
|
|
1060
|
-
|
|
1061
943
|
// lib/utils/DualRowGullWing.tsx
|
|
1062
944
|
import {
|
|
1063
|
-
Colorize as
|
|
945
|
+
Colorize as Colorize6,
|
|
1064
946
|
Cuboid as Cuboid14,
|
|
1065
947
|
Cylinder as Cylinder5,
|
|
1066
948
|
Hull as Hull4,
|
|
1067
949
|
Subtract as Subtract3,
|
|
1068
|
-
Translate as
|
|
950
|
+
Translate as Translate7,
|
|
1069
951
|
Union as Union4
|
|
1070
952
|
} from "jscad-fiber";
|
|
1071
|
-
import { Fragment as
|
|
953
|
+
import { Fragment as Fragment14, jsx as jsx17, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
1072
954
|
function createDualRowGullWing(p) {
|
|
1073
955
|
const {
|
|
1074
956
|
pinCount,
|
|
@@ -1116,8 +998,8 @@ function createDualRowGullWing(p) {
|
|
|
1116
998
|
throw new Error("Exposed pad must fit inside the bottom mold face");
|
|
1117
999
|
const midZ = standoff + moldHeight / 2;
|
|
1118
1000
|
const slice = Math.min(2e-3, moldHeight / 100);
|
|
1119
|
-
const body = /* @__PURE__ */
|
|
1120
|
-
/* @__PURE__ */
|
|
1001
|
+
const body = /* @__PURE__ */ jsxs16(Hull4, { children: [
|
|
1002
|
+
/* @__PURE__ */ jsx17(Translate7, { z: standoff + slice / 2, children: /* @__PURE__ */ jsx17(
|
|
1121
1003
|
Cuboid14,
|
|
1122
1004
|
{
|
|
1123
1005
|
size: [
|
|
@@ -1127,8 +1009,8 @@ function createDualRowGullWing(p) {
|
|
|
1127
1009
|
]
|
|
1128
1010
|
}
|
|
1129
1011
|
) }),
|
|
1130
|
-
/* @__PURE__ */
|
|
1131
|
-
/* @__PURE__ */
|
|
1012
|
+
/* @__PURE__ */ jsx17(Translate7, { z: midZ, children: /* @__PURE__ */ jsx17(Cuboid14, { size: [bodyWidth, bodyLength10, slice] }) }),
|
|
1013
|
+
/* @__PURE__ */ jsx17(Translate7, { z: bodyHeight - slice / 2, children: /* @__PURE__ */ jsx17(
|
|
1132
1014
|
Cuboid14,
|
|
1133
1015
|
{
|
|
1134
1016
|
size: [
|
|
@@ -1158,35 +1040,35 @@ function createDualRowGullWing(p) {
|
|
|
1158
1040
|
]);
|
|
1159
1041
|
}
|
|
1160
1042
|
points.push([root, midZ]);
|
|
1161
|
-
const section = ([x, z]) => /* @__PURE__ */
|
|
1162
|
-
return /* @__PURE__ */
|
|
1043
|
+
const section = ([x, z]) => /* @__PURE__ */ jsx17(Translate7, { offset: { x: side * x, y, z }, children: /* @__PURE__ */ jsx17(Cuboid14, { size: [slice, leadWidth, leadThickness] }) });
|
|
1044
|
+
return /* @__PURE__ */ jsx17(Union4, { children: points.slice(1).map((point, i) => /* @__PURE__ */ jsxs16(Hull4, { children: [
|
|
1163
1045
|
section(points[i]),
|
|
1164
1046
|
section(point)
|
|
1165
1047
|
] }, i)) });
|
|
1166
1048
|
};
|
|
1167
|
-
return /* @__PURE__ */
|
|
1168
|
-
/* @__PURE__ */
|
|
1049
|
+
return /* @__PURE__ */ jsxs16(Fragment14, { children: [
|
|
1050
|
+
/* @__PURE__ */ jsx17(Colorize6, { color: "#353535", children: /* @__PURE__ */ jsxs16(Subtract3, { children: [
|
|
1169
1051
|
body,
|
|
1170
|
-
/* @__PURE__ */
|
|
1171
|
-
|
|
1052
|
+
/* @__PURE__ */ jsx17(
|
|
1053
|
+
Translate7,
|
|
1172
1054
|
{
|
|
1173
1055
|
offset: {
|
|
1174
1056
|
x: -bodyWidth / 2 + taperInset + dimpleRadius * 2,
|
|
1175
1057
|
y: bodyLength10 / 2 - taperInset - dimpleRadius * 2,
|
|
1176
1058
|
z: bodyHeight
|
|
1177
1059
|
},
|
|
1178
|
-
children: /* @__PURE__ */
|
|
1060
|
+
children: /* @__PURE__ */ jsx17(Cylinder5, { radius: dimpleRadius, height: dimpleDepth * 2 })
|
|
1179
1061
|
}
|
|
1180
1062
|
)
|
|
1181
1063
|
] }) }),
|
|
1182
|
-
/* @__PURE__ */
|
|
1064
|
+
/* @__PURE__ */ jsx17(Colorize6, { color: "#bfc1c4", children: Array.from(
|
|
1183
1065
|
{ length: pinCount },
|
|
1184
1066
|
(_, i) => lead(
|
|
1185
1067
|
i < pinCount / 2 ? -1 : 1,
|
|
1186
1068
|
((pinCount / 2 - 1) / 2 - i % (pinCount / 2)) * pitch
|
|
1187
1069
|
)
|
|
1188
1070
|
) }),
|
|
1189
|
-
exposedPadWidth > 0 && /* @__PURE__ */
|
|
1071
|
+
exposedPadWidth > 0 && /* @__PURE__ */ jsx17(Colorize6, { color: "#bfc1c4", children: /* @__PURE__ */ jsx17(Translate7, { z: (standoff + leadThickness) / 2, children: /* @__PURE__ */ jsx17(
|
|
1190
1072
|
Cuboid14,
|
|
1191
1073
|
{
|
|
1192
1074
|
size: [
|
|
@@ -1199,6 +1081,125 @@ function createDualRowGullWing(p) {
|
|
|
1199
1081
|
] });
|
|
1200
1082
|
}
|
|
1201
1083
|
|
|
1084
|
+
// lib/SmdChipLead.tsx
|
|
1085
|
+
import {
|
|
1086
|
+
Polygon as Polygon4,
|
|
1087
|
+
ExtrudeLinear as ExtrudeLinear4,
|
|
1088
|
+
Translate as Translate8,
|
|
1089
|
+
Rotate as Rotate5,
|
|
1090
|
+
Colorize as Colorize7
|
|
1091
|
+
} from "jscad-fiber";
|
|
1092
|
+
import { jsx as jsx18 } from "react/jsx-runtime";
|
|
1093
|
+
function calculateSCurve(x, {
|
|
1094
|
+
height: height10,
|
|
1095
|
+
padContactLength,
|
|
1096
|
+
curveLength,
|
|
1097
|
+
bodyDistance,
|
|
1098
|
+
steepness = 10
|
|
1099
|
+
}) {
|
|
1100
|
+
if (!curveLength) curveLength = bodyDistance * 0.3;
|
|
1101
|
+
let flatFromBodySectionLength = bodyDistance - padContactLength - curveLength;
|
|
1102
|
+
if (flatFromBodySectionLength < 0) {
|
|
1103
|
+
curveLength += flatFromBodySectionLength;
|
|
1104
|
+
flatFromBodySectionLength = 0;
|
|
1105
|
+
}
|
|
1106
|
+
const curveStart = padContactLength * 0.75;
|
|
1107
|
+
const curveEnd = padContactLength + curveLength + (bodyDistance - padContactLength - curveLength) * 0.25;
|
|
1108
|
+
if (x <= curveStart) return 0;
|
|
1109
|
+
if (x >= curveEnd) return height10;
|
|
1110
|
+
const t = (x - curveStart) / (curveEnd - curveStart);
|
|
1111
|
+
return height10 / (1 + Math.exp(-steepness * (t - 0.5)));
|
|
1112
|
+
}
|
|
1113
|
+
var SmdChipLead = (props) => {
|
|
1114
|
+
const { thickness, width: width10, padContactLength, bodyDistance, height: height10, rotation } = props;
|
|
1115
|
+
const N = 15;
|
|
1116
|
+
const points = Array.from({ length: N }).map((_, i) => i / (N - 1) * bodyDistance).map((x) => [x, calculateSCurve(x, props)]);
|
|
1117
|
+
const polygon = getExpandedStroke(points, thickness);
|
|
1118
|
+
return /* @__PURE__ */ jsx18(Colorize7, { color: "#fff", children: /* @__PURE__ */ jsx18(Translate8, { offset: { z: 0, y: 0, x: 0, ...props.position }, children: /* @__PURE__ */ jsx18(Rotate5, { rotation: ["90deg", 0, rotation ?? 0], children: /* @__PURE__ */ jsx18(Translate8, { offset: { x: 0, y: 0, z: -width10 / 2 }, children: /* @__PURE__ */ jsx18(ExtrudeLinear4, { height: width10, children: /* @__PURE__ */ jsx18(Polygon4, { points: polygon.map((p) => [p.x, p.y]) }) }) }) }) }) });
|
|
1119
|
+
};
|
|
1120
|
+
|
|
1121
|
+
// lib/Tssop.tsx
|
|
1122
|
+
import { Fragment as Fragment15, jsx as jsx19, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
1123
|
+
var LegacyTssop = ({
|
|
1124
|
+
pinCount,
|
|
1125
|
+
leadLength,
|
|
1126
|
+
leadWidth,
|
|
1127
|
+
pitch,
|
|
1128
|
+
bodyWidth
|
|
1129
|
+
}) => {
|
|
1130
|
+
const sidePinCount = Math.ceil(pinCount / 2);
|
|
1131
|
+
const isSmallTssop = sidePinCount <= 4;
|
|
1132
|
+
const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
|
|
1133
|
+
const bodyLength10 = pitch * Math.max(sidePinCount - 1, 0) + (isSmallTssop ? 1.5 : 1.15);
|
|
1134
|
+
const bodyVisualWidth = bodyWidth - (isSmallTssop ? 0.66 : 0.58);
|
|
1135
|
+
const leadThickness = 0.15;
|
|
1136
|
+
const leadHeight = 0.8;
|
|
1137
|
+
const bodyHeight = 1.22;
|
|
1138
|
+
const bodyStandoff = 0.24;
|
|
1139
|
+
const padContactLength = leadLength * 0.5;
|
|
1140
|
+
const leadReach = padContactLength + Math.max(0.22, Math.min(0.4, leadLength * 0.65));
|
|
1141
|
+
const leadStartOffset = bodyWidth / 2 + leadLength / 2;
|
|
1142
|
+
const curveLength = leadReach * 0.1;
|
|
1143
|
+
const notchInset = Math.min(Math.min(bodyVisualWidth, bodyLength10) * 0.18, 1);
|
|
1144
|
+
const notchRadius = Math.min(
|
|
1145
|
+
Math.min(bodyVisualWidth, bodyLength10) * 0.12,
|
|
1146
|
+
0.45
|
|
1147
|
+
);
|
|
1148
|
+
return /* @__PURE__ */ jsxs17(Fragment15, { children: [
|
|
1149
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx19(
|
|
1150
|
+
SmdChipLead,
|
|
1151
|
+
{
|
|
1152
|
+
position: {
|
|
1153
|
+
x: -leadStartOffset,
|
|
1154
|
+
y: i * pitch - pinOffsetToCenter,
|
|
1155
|
+
z: leadThickness / 2
|
|
1156
|
+
},
|
|
1157
|
+
width: leadWidth,
|
|
1158
|
+
thickness: leadThickness,
|
|
1159
|
+
padContactLength,
|
|
1160
|
+
bodyDistance: leadReach,
|
|
1161
|
+
curveLength,
|
|
1162
|
+
height: leadHeight
|
|
1163
|
+
},
|
|
1164
|
+
`left-${i}`
|
|
1165
|
+
)),
|
|
1166
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx19(
|
|
1167
|
+
SmdChipLead,
|
|
1168
|
+
{
|
|
1169
|
+
rotation: Math.PI,
|
|
1170
|
+
position: {
|
|
1171
|
+
x: leadStartOffset,
|
|
1172
|
+
y: i * pitch - pinOffsetToCenter,
|
|
1173
|
+
z: leadThickness / 2
|
|
1174
|
+
},
|
|
1175
|
+
width: leadWidth,
|
|
1176
|
+
thickness: leadThickness,
|
|
1177
|
+
padContactLength,
|
|
1178
|
+
bodyDistance: leadReach,
|
|
1179
|
+
curveLength,
|
|
1180
|
+
height: leadHeight
|
|
1181
|
+
},
|
|
1182
|
+
`right-${i}`
|
|
1183
|
+
)),
|
|
1184
|
+
/* @__PURE__ */ jsx19(
|
|
1185
|
+
ChipBody,
|
|
1186
|
+
{
|
|
1187
|
+
center: { x: 0, y: 0, z: 0 },
|
|
1188
|
+
width: bodyVisualWidth,
|
|
1189
|
+
length: bodyLength10,
|
|
1190
|
+
height: bodyHeight,
|
|
1191
|
+
notchPosition: {
|
|
1192
|
+
x: -(bodyVisualWidth / 2 - notchInset - 0.2),
|
|
1193
|
+
y: bodyLength10 / 2 - notchInset - 0.2,
|
|
1194
|
+
z: bodyHeight
|
|
1195
|
+
},
|
|
1196
|
+
notchRadius
|
|
1197
|
+
}
|
|
1198
|
+
)
|
|
1199
|
+
] });
|
|
1200
|
+
};
|
|
1201
|
+
var Tssop = (props) => "leadSpan" in props ? createDualRowGullWing(props) : LegacyTssop(props);
|
|
1202
|
+
|
|
1202
1203
|
// lib/MSOP.tsx
|
|
1203
1204
|
import { Fragment as Fragment16, jsx as jsx20, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
1204
1205
|
var LegacyMSOP = ({
|
|
@@ -3459,37 +3460,182 @@ var SOT323 = () => {
|
|
|
3459
3460
|
] });
|
|
3460
3461
|
};
|
|
3461
3462
|
|
|
3462
|
-
// lib/
|
|
3463
|
+
// lib/utils/PhysicalLqfp.tsx
|
|
3464
|
+
import {
|
|
3465
|
+
Colorize as Colorize23,
|
|
3466
|
+
Cuboid as Cuboid31,
|
|
3467
|
+
Cylinder as Cylinder7,
|
|
3468
|
+
Hull as Hull18,
|
|
3469
|
+
Subtract as Subtract5,
|
|
3470
|
+
Translate as Translate22,
|
|
3471
|
+
Union as Union16
|
|
3472
|
+
} from "jscad-fiber";
|
|
3463
3473
|
import { Fragment as Fragment44, jsx as jsx48, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
3464
|
-
|
|
3465
|
-
|
|
3466
|
-
|
|
3467
|
-
|
|
3468
|
-
|
|
3469
|
-
|
|
3470
|
-
|
|
3471
|
-
|
|
3472
|
-
|
|
3473
|
-
|
|
3474
|
-
|
|
3475
|
-
|
|
3476
|
-
|
|
3477
|
-
|
|
3478
|
-
|
|
3479
|
-
const
|
|
3480
|
-
|
|
3481
|
-
|
|
3482
|
-
|
|
3483
|
-
|
|
3484
|
-
|
|
3485
|
-
|
|
3486
|
-
|
|
3487
|
-
|
|
3488
|
-
|
|
3489
|
-
|
|
3490
|
-
|
|
3491
|
-
|
|
3492
|
-
|
|
3474
|
+
function createPhysicalLqfp(p) {
|
|
3475
|
+
const {
|
|
3476
|
+
pinCount,
|
|
3477
|
+
pitch,
|
|
3478
|
+
bodyWidth,
|
|
3479
|
+
bodyLength: bodyLength10,
|
|
3480
|
+
bodyHeight,
|
|
3481
|
+
standoff,
|
|
3482
|
+
leadSpanX,
|
|
3483
|
+
leadSpanY,
|
|
3484
|
+
leadWidth,
|
|
3485
|
+
leadThickness,
|
|
3486
|
+
contactLength,
|
|
3487
|
+
taperInset
|
|
3488
|
+
} = p;
|
|
3489
|
+
for (const key of [
|
|
3490
|
+
"pitch",
|
|
3491
|
+
"bodyWidth",
|
|
3492
|
+
"bodyLength",
|
|
3493
|
+
"bodyHeight",
|
|
3494
|
+
"leadSpanX",
|
|
3495
|
+
"leadSpanY",
|
|
3496
|
+
"leadWidth",
|
|
3497
|
+
"leadThickness",
|
|
3498
|
+
"contactLength"
|
|
3499
|
+
])
|
|
3500
|
+
if (!Number.isFinite(p[key]) || p[key] <= 0)
|
|
3501
|
+
throw new Error(`${key} must be finite and positive`);
|
|
3502
|
+
for (const [name, value] of Object.entries({
|
|
3503
|
+
standoff,
|
|
3504
|
+
taperInset
|
|
3505
|
+
}))
|
|
3506
|
+
if (!Number.isFinite(value) || value < 0)
|
|
3507
|
+
throw new Error(`${name} must be finite and nonnegative`);
|
|
3508
|
+
if (!Number.isInteger(pinCount) || pinCount < 8 || pinCount % 4)
|
|
3509
|
+
throw new Error("pinCount must be divisible by four and at least eight");
|
|
3510
|
+
const moldHeight = bodyHeight - standoff;
|
|
3511
|
+
const reach = Math.min(leadSpanX - bodyWidth, leadSpanY - bodyLength10) / 2;
|
|
3512
|
+
const rowLength = (pinCount / 4 - 1) * pitch + leadWidth;
|
|
3513
|
+
if (moldHeight <= leadThickness * 2 || leadWidth >= pitch || rowLength >= Math.min(bodyWidth, bodyLength10) - 2 * taperInset || taperInset * 2 >= Math.min(bodyWidth, bodyLength10) || contactLength >= reach)
|
|
3514
|
+
throw new Error("Invalid mold, lead spacing, or terminal reach");
|
|
3515
|
+
const midZ = standoff + moldHeight / 2;
|
|
3516
|
+
const slice = Math.min(2e-3, moldHeight / 100);
|
|
3517
|
+
const body = /* @__PURE__ */ jsxs44(Hull18, { children: [
|
|
3518
|
+
/* @__PURE__ */ jsx48(Translate22, { z: standoff + slice / 2, children: /* @__PURE__ */ jsx48(
|
|
3519
|
+
Cuboid31,
|
|
3520
|
+
{
|
|
3521
|
+
size: [
|
|
3522
|
+
bodyWidth - 2 * taperInset,
|
|
3523
|
+
bodyLength10 - 2 * taperInset,
|
|
3524
|
+
slice
|
|
3525
|
+
]
|
|
3526
|
+
}
|
|
3527
|
+
) }),
|
|
3528
|
+
/* @__PURE__ */ jsx48(Translate22, { z: midZ, children: /* @__PURE__ */ jsx48(Cuboid31, { size: [bodyWidth, bodyLength10, slice] }) }),
|
|
3529
|
+
/* @__PURE__ */ jsx48(Translate22, { z: bodyHeight - slice / 2, children: /* @__PURE__ */ jsx48(
|
|
3530
|
+
Cuboid31,
|
|
3531
|
+
{
|
|
3532
|
+
size: [
|
|
3533
|
+
bodyWidth - 2 * taperInset,
|
|
3534
|
+
bodyLength10 - 2 * taperInset,
|
|
3535
|
+
slice
|
|
3536
|
+
]
|
|
3537
|
+
}
|
|
3538
|
+
) })
|
|
3539
|
+
] });
|
|
3540
|
+
const dimpleRadius = Math.min(bodyWidth, bodyLength10) * 0.045;
|
|
3541
|
+
const dimpleDepth = Math.min(0.04, moldHeight / 10);
|
|
3542
|
+
const lead = (side, along) => {
|
|
3543
|
+
const horizontal = side % 2 === 0;
|
|
3544
|
+
const sign = side < 2 ? -1 : 1;
|
|
3545
|
+
const width10 = horizontal ? bodyWidth : bodyLength10;
|
|
3546
|
+
const outer = (horizontal ? leadSpanX : leadSpanY) / 2;
|
|
3547
|
+
const root = width10 / 2 - Math.min(width10 / 8, 0.15);
|
|
3548
|
+
const bendStart = outer - contactLength;
|
|
3549
|
+
const bendEnd = width10 / 2 + Math.min(0.08, (reach - contactLength) / 4);
|
|
3550
|
+
const points = [
|
|
3551
|
+
[outer - slice / 2, leadThickness / 2],
|
|
3552
|
+
[bendStart, leadThickness / 2]
|
|
3553
|
+
];
|
|
3554
|
+
for (let i = 1; i <= 12; i++) {
|
|
3555
|
+
const t = i / 12;
|
|
3556
|
+
points.push([
|
|
3557
|
+
bendStart + (bendEnd - bendStart) * t,
|
|
3558
|
+
leadThickness / 2 + (midZ - leadThickness / 2) * t * t * (3 - 2 * t)
|
|
3559
|
+
]);
|
|
3560
|
+
}
|
|
3561
|
+
points.push([root, midZ]);
|
|
3562
|
+
const section = ([x, z]) => /* @__PURE__ */ jsx48(
|
|
3563
|
+
Translate22,
|
|
3564
|
+
{
|
|
3565
|
+
offset: {
|
|
3566
|
+
x: horizontal ? sign * x : along,
|
|
3567
|
+
y: horizontal ? along : sign * x,
|
|
3568
|
+
z
|
|
3569
|
+
},
|
|
3570
|
+
children: /* @__PURE__ */ jsx48(
|
|
3571
|
+
Cuboid31,
|
|
3572
|
+
{
|
|
3573
|
+
size: horizontal ? [slice, leadWidth, leadThickness] : [leadWidth, slice, leadThickness]
|
|
3574
|
+
}
|
|
3575
|
+
)
|
|
3576
|
+
}
|
|
3577
|
+
);
|
|
3578
|
+
return /* @__PURE__ */ jsx48(Union16, { children: points.slice(1).map((point, i) => /* @__PURE__ */ jsxs44(Hull18, { children: [
|
|
3579
|
+
section(points[i]),
|
|
3580
|
+
section(point)
|
|
3581
|
+
] }, i)) });
|
|
3582
|
+
};
|
|
3583
|
+
return /* @__PURE__ */ jsxs44(Fragment44, { children: [
|
|
3584
|
+
/* @__PURE__ */ jsx48(Colorize23, { color: "#353535", children: /* @__PURE__ */ jsxs44(Subtract5, { children: [
|
|
3585
|
+
body,
|
|
3586
|
+
/* @__PURE__ */ jsx48(
|
|
3587
|
+
Translate22,
|
|
3588
|
+
{
|
|
3589
|
+
offset: {
|
|
3590
|
+
x: -bodyWidth / 2 + taperInset + dimpleRadius * 2,
|
|
3591
|
+
y: bodyLength10 / 2 - taperInset - dimpleRadius * 2,
|
|
3592
|
+
z: bodyHeight
|
|
3593
|
+
},
|
|
3594
|
+
children: /* @__PURE__ */ jsx48(Cylinder7, { radius: dimpleRadius, height: dimpleDepth * 2 })
|
|
3595
|
+
}
|
|
3596
|
+
)
|
|
3597
|
+
] }) }),
|
|
3598
|
+
/* @__PURE__ */ jsx48(Colorize23, { color: "#bfc1c4", children: Array.from(
|
|
3599
|
+
{ length: pinCount },
|
|
3600
|
+
(_, i) => lead(
|
|
3601
|
+
Math.floor(i / (pinCount / 4)),
|
|
3602
|
+
((pinCount / 4 - 1) / 2 - i % (pinCount / 4)) * pitch
|
|
3603
|
+
)
|
|
3604
|
+
) })
|
|
3605
|
+
] });
|
|
3606
|
+
}
|
|
3607
|
+
|
|
3608
|
+
// lib/lqfp.tsx
|
|
3609
|
+
import { Fragment as Fragment45, jsx as jsx49, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
3610
|
+
var LegacyLQFP = ({
|
|
3611
|
+
pinCount,
|
|
3612
|
+
pitch,
|
|
3613
|
+
leadWidth,
|
|
3614
|
+
padContactLength,
|
|
3615
|
+
bodyWidth
|
|
3616
|
+
}) => {
|
|
3617
|
+
const sidePinCount = pinCount / 4;
|
|
3618
|
+
if (sidePinCount !== Math.floor(sidePinCount)) {
|
|
3619
|
+
throw new Error(`LQFP pinCount must be divisible by 4, got ${pinCount}`);
|
|
3620
|
+
}
|
|
3621
|
+
if (!pitch) pitch = 0.5;
|
|
3622
|
+
if (!padContactLength) padContactLength = 0.6;
|
|
3623
|
+
if (!leadWidth) leadWidth = 0.22;
|
|
3624
|
+
if (!bodyWidth) bodyWidth = pitch * (sidePinCount + 4);
|
|
3625
|
+
const bodyLength10 = bodyWidth;
|
|
3626
|
+
const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
|
|
3627
|
+
const fullLength10 = bodyLength10 + 3.3 * padContactLength;
|
|
3628
|
+
const fullWidth = fullLength10;
|
|
3629
|
+
const leadHeight = 0.8;
|
|
3630
|
+
const leadThickness = 0.2;
|
|
3631
|
+
const bodyDistance = (fullWidth - bodyWidth) / 2 + 0.4;
|
|
3632
|
+
return /* @__PURE__ */ jsxs45(Fragment45, { children: [
|
|
3633
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx49(
|
|
3634
|
+
SmdChipLead,
|
|
3635
|
+
{
|
|
3636
|
+
position: {
|
|
3637
|
+
x: -fullWidth / 2 - 0.36,
|
|
3638
|
+
y: i * pitch - pinOffsetToCenter,
|
|
3493
3639
|
z: leadThickness / 2
|
|
3494
3640
|
},
|
|
3495
3641
|
width: leadWidth,
|
|
@@ -3500,7 +3646,7 @@ var LQFP = ({
|
|
|
3500
3646
|
},
|
|
3501
3647
|
`left-${i}`
|
|
3502
3648
|
)),
|
|
3503
|
-
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */
|
|
3649
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx49(
|
|
3504
3650
|
SmdChipLead,
|
|
3505
3651
|
{
|
|
3506
3652
|
rotation: Math.PI,
|
|
@@ -3517,7 +3663,7 @@ var LQFP = ({
|
|
|
3517
3663
|
},
|
|
3518
3664
|
`right-${i}`
|
|
3519
3665
|
)),
|
|
3520
|
-
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */
|
|
3666
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx49(
|
|
3521
3667
|
SmdChipLead,
|
|
3522
3668
|
{
|
|
3523
3669
|
rotation: Math.PI / 2,
|
|
@@ -3534,7 +3680,7 @@ var LQFP = ({
|
|
|
3534
3680
|
},
|
|
3535
3681
|
`bottom-${i}`
|
|
3536
3682
|
)),
|
|
3537
|
-
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */
|
|
3683
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx49(
|
|
3538
3684
|
SmdChipLead,
|
|
3539
3685
|
{
|
|
3540
3686
|
rotation: -Math.PI / 2,
|
|
@@ -3551,7 +3697,7 @@ var LQFP = ({
|
|
|
3551
3697
|
},
|
|
3552
3698
|
`top-${i}`
|
|
3553
3699
|
)),
|
|
3554
|
-
/* @__PURE__ */
|
|
3700
|
+
/* @__PURE__ */ jsx49(
|
|
3555
3701
|
ChipBody,
|
|
3556
3702
|
{
|
|
3557
3703
|
center: { x: 0, y: 0, z: 0 },
|
|
@@ -3571,10 +3717,11 @@ var LQFP = ({
|
|
|
3571
3717
|
)
|
|
3572
3718
|
] });
|
|
3573
3719
|
};
|
|
3720
|
+
var LQFP = (props) => "leadSpanX" in props ? createPhysicalLqfp(props) : LegacyLQFP(props);
|
|
3574
3721
|
|
|
3575
3722
|
// lib/SOT-723.tsx
|
|
3576
|
-
import { Cuboid as
|
|
3577
|
-
import { Fragment as
|
|
3723
|
+
import { Cuboid as Cuboid32, Translate as Translate23, Colorize as Colorize24, Hull as Hull19, Union as Union17 } from "jscad-fiber";
|
|
3724
|
+
import { Fragment as Fragment46, jsx as jsx50, jsxs as jsxs46 } from "react/jsx-runtime";
|
|
3578
3725
|
var SOT723 = () => {
|
|
3579
3726
|
const bodyWidth = 0.85;
|
|
3580
3727
|
const bodyLength10 = 1.2;
|
|
@@ -3591,43 +3738,43 @@ var SOT723 = () => {
|
|
|
3591
3738
|
const leftTopPadCenterY = 0.4;
|
|
3592
3739
|
const leftBottomPadCenterX = -0.55;
|
|
3593
3740
|
const leftBottomPadCenterY = -0.4;
|
|
3594
|
-
return /* @__PURE__ */
|
|
3595
|
-
/* @__PURE__ */
|
|
3596
|
-
/* @__PURE__ */
|
|
3597
|
-
|
|
3741
|
+
return /* @__PURE__ */ jsxs46(Fragment46, { children: [
|
|
3742
|
+
/* @__PURE__ */ jsx50(Colorize24, { color: "#222", children: /* @__PURE__ */ jsxs46(Union17, { children: [
|
|
3743
|
+
/* @__PURE__ */ jsx50(
|
|
3744
|
+
Cuboid32,
|
|
3598
3745
|
{
|
|
3599
3746
|
size: [bodyWidth, bodyLength10, straightHeight],
|
|
3600
3747
|
center: [0, 0, straightHeight / 2]
|
|
3601
3748
|
}
|
|
3602
3749
|
),
|
|
3603
|
-
/* @__PURE__ */
|
|
3604
|
-
/* @__PURE__ */
|
|
3605
|
-
/* @__PURE__ */
|
|
3606
|
-
|
|
3750
|
+
/* @__PURE__ */ jsxs46(Hull19, { children: [
|
|
3751
|
+
/* @__PURE__ */ jsx50(Translate23, { z: straightHeight, children: /* @__PURE__ */ jsx50(Cuboid32, { size: [bodyWidth, bodyLength10, 0.01] }) }),
|
|
3752
|
+
/* @__PURE__ */ jsx50(Translate23, { z: bodyHeight, children: /* @__PURE__ */ jsx50(
|
|
3753
|
+
Cuboid32,
|
|
3607
3754
|
{
|
|
3608
3755
|
size: [bodyWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
|
|
3609
3756
|
}
|
|
3610
3757
|
) })
|
|
3611
3758
|
] })
|
|
3612
3759
|
] }) }),
|
|
3613
|
-
/* @__PURE__ */
|
|
3614
|
-
|
|
3760
|
+
/* @__PURE__ */ jsx50(
|
|
3761
|
+
Cuboid32,
|
|
3615
3762
|
{
|
|
3616
3763
|
color: "#ccc",
|
|
3617
3764
|
size: [padLength, rightPadWidth, padThickness],
|
|
3618
3765
|
center: [rightPadCenterX, rightPadCenterY, padThickness / 2]
|
|
3619
3766
|
}
|
|
3620
3767
|
),
|
|
3621
|
-
/* @__PURE__ */
|
|
3622
|
-
|
|
3768
|
+
/* @__PURE__ */ jsx50(
|
|
3769
|
+
Cuboid32,
|
|
3623
3770
|
{
|
|
3624
3771
|
color: "#ccc",
|
|
3625
3772
|
size: [padLength, leftPadWidth, padThickness],
|
|
3626
3773
|
center: [leftTopPadCenterX, leftTopPadCenterY, padThickness / 2]
|
|
3627
3774
|
}
|
|
3628
3775
|
),
|
|
3629
|
-
/* @__PURE__ */
|
|
3630
|
-
|
|
3776
|
+
/* @__PURE__ */ jsx50(
|
|
3777
|
+
Cuboid32,
|
|
3631
3778
|
{
|
|
3632
3779
|
color: "#ccc",
|
|
3633
3780
|
size: [padLength, leftPadWidth, padThickness],
|
|
@@ -3638,8 +3785,8 @@ var SOT723 = () => {
|
|
|
3638
3785
|
};
|
|
3639
3786
|
|
|
3640
3787
|
// lib/dfn.tsx
|
|
3641
|
-
import { Colorize as
|
|
3642
|
-
import { Fragment as
|
|
3788
|
+
import { Colorize as Colorize25, Cuboid as Cuboid33, Hull as Hull20, Subtract as Subtract6 } from "jscad-fiber";
|
|
3789
|
+
import { Fragment as Fragment47, jsx as jsx51, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
3643
3790
|
var DFN = ({
|
|
3644
3791
|
num_pins,
|
|
3645
3792
|
bodyWidth = 5.3,
|
|
@@ -3702,8 +3849,8 @@ var DFN = ({
|
|
|
3702
3849
|
if (bodyStyle === "rectangular") {
|
|
3703
3850
|
const top = standoff + bodyThickness;
|
|
3704
3851
|
const inkThickness = Math.min(bodyThickness, bodyLength10) / 100;
|
|
3705
|
-
const stripe = /* @__PURE__ */
|
|
3706
|
-
|
|
3852
|
+
const stripe = /* @__PURE__ */ jsx51(
|
|
3853
|
+
Cuboid33,
|
|
3707
3854
|
{
|
|
3708
3855
|
size: [pin1MarkWidth, bodyLength10 * 0.8, inkThickness],
|
|
3709
3856
|
center: [
|
|
@@ -3713,22 +3860,22 @@ var DFN = ({
|
|
|
3713
3860
|
]
|
|
3714
3861
|
}
|
|
3715
3862
|
);
|
|
3716
|
-
const body = /* @__PURE__ */
|
|
3717
|
-
|
|
3863
|
+
const body = /* @__PURE__ */ jsx51(
|
|
3864
|
+
Cuboid33,
|
|
3718
3865
|
{
|
|
3719
3866
|
size: [bodyWidth, bodyLength10, bodyThickness],
|
|
3720
3867
|
center: [0, 0, standoff + bodyThickness / 2]
|
|
3721
3868
|
}
|
|
3722
3869
|
);
|
|
3723
|
-
return /* @__PURE__ */
|
|
3724
|
-
/* @__PURE__ */
|
|
3870
|
+
return /* @__PURE__ */ jsxs47(Fragment47, { children: [
|
|
3871
|
+
/* @__PURE__ */ jsx51(Colorize25, { color: "#25272a", children: pin1MarkWidth > 0 ? /* @__PURE__ */ jsxs47(Subtract6, { children: [
|
|
3725
3872
|
body,
|
|
3726
3873
|
stripe
|
|
3727
3874
|
] }) : body }),
|
|
3728
|
-
/* @__PURE__ */
|
|
3729
|
-
(p) => p.pinNumber === 1 && pin1TerminalChamfer > 0 ? /* @__PURE__ */
|
|
3730
|
-
/* @__PURE__ */
|
|
3731
|
-
|
|
3875
|
+
/* @__PURE__ */ jsx51(Colorize25, { color: "#c7c9cd", children: pinPositions.map(
|
|
3876
|
+
(p) => p.pinNumber === 1 && pin1TerminalChamfer > 0 ? /* @__PURE__ */ jsxs47(Hull20, { children: [
|
|
3877
|
+
/* @__PURE__ */ jsx51(
|
|
3878
|
+
Cuboid33,
|
|
3732
3879
|
{
|
|
3733
3880
|
size: [
|
|
3734
3881
|
padLength - pin1TerminalChamfer,
|
|
@@ -3742,8 +3889,8 @@ var DFN = ({
|
|
|
3742
3889
|
]
|
|
3743
3890
|
}
|
|
3744
3891
|
),
|
|
3745
|
-
/* @__PURE__ */
|
|
3746
|
-
|
|
3892
|
+
/* @__PURE__ */ jsx51(
|
|
3893
|
+
Cuboid33,
|
|
3747
3894
|
{
|
|
3748
3895
|
size: [
|
|
3749
3896
|
padLength,
|
|
@@ -3753,8 +3900,8 @@ var DFN = ({
|
|
|
3753
3900
|
center: [p.x, p.y, terminalThickness / 2]
|
|
3754
3901
|
}
|
|
3755
3902
|
)
|
|
3756
|
-
] }, p.pinNumber) : /* @__PURE__ */
|
|
3757
|
-
|
|
3903
|
+
] }, p.pinNumber) : /* @__PURE__ */ jsx51(
|
|
3904
|
+
Cuboid33,
|
|
3758
3905
|
{
|
|
3759
3906
|
size: [p.padSizeX, p.padSizeY, terminalThickness],
|
|
3760
3907
|
center: [p.x, p.y, terminalThickness / 2]
|
|
@@ -3762,8 +3909,8 @@ var DFN = ({
|
|
|
3762
3909
|
p.pinNumber
|
|
3763
3910
|
)
|
|
3764
3911
|
) }),
|
|
3765
|
-
thermalPadSize && /* @__PURE__ */
|
|
3766
|
-
|
|
3912
|
+
thermalPadSize && /* @__PURE__ */ jsx51(
|
|
3913
|
+
Cuboid33,
|
|
3767
3914
|
{
|
|
3768
3915
|
color: "#c7c9cd",
|
|
3769
3916
|
size: [
|
|
@@ -3774,11 +3921,11 @@ var DFN = ({
|
|
|
3774
3921
|
center: [0, 0, thermalPadThickness / 2]
|
|
3775
3922
|
}
|
|
3776
3923
|
),
|
|
3777
|
-
pin1MarkWidth > 0 && /* @__PURE__ */
|
|
3924
|
+
pin1MarkWidth > 0 && /* @__PURE__ */ jsx51(Colorize25, { color: "#969997", children: stripe })
|
|
3778
3925
|
] });
|
|
3779
3926
|
}
|
|
3780
|
-
return /* @__PURE__ */
|
|
3781
|
-
/* @__PURE__ */
|
|
3927
|
+
return /* @__PURE__ */ jsxs47(Fragment47, { children: [
|
|
3928
|
+
/* @__PURE__ */ jsx51(
|
|
3782
3929
|
ChipBody,
|
|
3783
3930
|
{
|
|
3784
3931
|
center: { x: 0, y: 0, z: 0 },
|
|
@@ -3796,16 +3943,16 @@ var DFN = ({
|
|
|
3796
3943
|
}
|
|
3797
3944
|
}
|
|
3798
3945
|
),
|
|
3799
|
-
pinPositions.map((p, i) => /* @__PURE__ */
|
|
3800
|
-
|
|
3946
|
+
pinPositions.map((p, i) => /* @__PURE__ */ jsx51(
|
|
3947
|
+
Cuboid33,
|
|
3801
3948
|
{
|
|
3802
3949
|
center: [p.x, p.y, thermalPadThickness / 2],
|
|
3803
3950
|
size: [p.padSizeX, p.padSizeY, thermalPadThickness]
|
|
3804
3951
|
},
|
|
3805
3952
|
i
|
|
3806
3953
|
)),
|
|
3807
|
-
thermalPadSize?.length !== void 0 && thermalPadSize?.width !== void 0 && /* @__PURE__ */
|
|
3808
|
-
|
|
3954
|
+
thermalPadSize?.length !== void 0 && thermalPadSize?.width !== void 0 && /* @__PURE__ */ jsx51(
|
|
3955
|
+
Cuboid33,
|
|
3809
3956
|
{
|
|
3810
3957
|
center: [0, 0, thermalPadThickness / 2],
|
|
3811
3958
|
size: [
|
|
@@ -3819,8 +3966,8 @@ var DFN = ({
|
|
|
3819
3966
|
};
|
|
3820
3967
|
|
|
3821
3968
|
// lib/hc49.tsx
|
|
3822
|
-
import { Colorize as
|
|
3823
|
-
import { Fragment as
|
|
3969
|
+
import { Colorize as Colorize26, Cylinder as Cylinder8, Hull as Hull21, RoundedCylinder } from "jscad-fiber";
|
|
3970
|
+
import { Fragment as Fragment48, jsx as jsx52, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
3824
3971
|
var HC49 = ({
|
|
3825
3972
|
bodyLength: bodyLength10 = 10.2,
|
|
3826
3973
|
bodyWidth = 4.65,
|
|
@@ -3836,10 +3983,10 @@ var HC49 = ({
|
|
|
3836
3983
|
const endCenterX = halfLength - endRadius;
|
|
3837
3984
|
const leadCenterX = leadSpacing / 2;
|
|
3838
3985
|
const baseHeight = 0.85;
|
|
3839
|
-
return /* @__PURE__ */
|
|
3840
|
-
/* @__PURE__ */
|
|
3841
|
-
/* @__PURE__ */
|
|
3842
|
-
/* @__PURE__ */
|
|
3986
|
+
return /* @__PURE__ */ jsxs48(Fragment48, { children: [
|
|
3987
|
+
/* @__PURE__ */ jsxs48(Colorize26, { color, children: [
|
|
3988
|
+
/* @__PURE__ */ jsxs48(Hull21, { children: [
|
|
3989
|
+
/* @__PURE__ */ jsx52(
|
|
3843
3990
|
RoundedCylinder,
|
|
3844
3991
|
{
|
|
3845
3992
|
height: bodyHeight,
|
|
@@ -3848,7 +3995,7 @@ var HC49 = ({
|
|
|
3848
3995
|
center: [-endCenterX, 0, bodyHeight]
|
|
3849
3996
|
}
|
|
3850
3997
|
),
|
|
3851
|
-
/* @__PURE__ */
|
|
3998
|
+
/* @__PURE__ */ jsx52(
|
|
3852
3999
|
RoundedCylinder,
|
|
3853
4000
|
{
|
|
3854
4001
|
height: bodyHeight,
|
|
@@ -3858,8 +4005,8 @@ var HC49 = ({
|
|
|
3858
4005
|
}
|
|
3859
4006
|
)
|
|
3860
4007
|
] }),
|
|
3861
|
-
/* @__PURE__ */
|
|
3862
|
-
/* @__PURE__ */
|
|
4008
|
+
/* @__PURE__ */ jsxs48(Hull21, { children: [
|
|
4009
|
+
/* @__PURE__ */ jsx52(
|
|
3863
4010
|
RoundedCylinder,
|
|
3864
4011
|
{
|
|
3865
4012
|
height: baseHeight,
|
|
@@ -3868,7 +4015,7 @@ var HC49 = ({
|
|
|
3868
4015
|
center: [-endCenterX, 0, bodyHeight / 2 + baseHeight / 2]
|
|
3869
4016
|
}
|
|
3870
4017
|
),
|
|
3871
|
-
/* @__PURE__ */
|
|
4018
|
+
/* @__PURE__ */ jsx52(
|
|
3872
4019
|
RoundedCylinder,
|
|
3873
4020
|
{
|
|
3874
4021
|
height: baseHeight,
|
|
@@ -3879,17 +4026,17 @@ var HC49 = ({
|
|
|
3879
4026
|
)
|
|
3880
4027
|
] })
|
|
3881
4028
|
] }),
|
|
3882
|
-
/* @__PURE__ */
|
|
3883
|
-
/* @__PURE__ */
|
|
3884
|
-
|
|
4029
|
+
/* @__PURE__ */ jsxs48(Colorize26, { color: leadColor, children: [
|
|
4030
|
+
/* @__PURE__ */ jsx52(
|
|
4031
|
+
Cylinder8,
|
|
3885
4032
|
{
|
|
3886
4033
|
height: leadLength + bodyHeight / 2,
|
|
3887
4034
|
radius: leadDiameter / 2,
|
|
3888
4035
|
center: [-leadCenterX + 0.06, 0, -(leadLength / 2) + bodyHeight / 2]
|
|
3889
4036
|
}
|
|
3890
4037
|
),
|
|
3891
|
-
/* @__PURE__ */
|
|
3892
|
-
|
|
4038
|
+
/* @__PURE__ */ jsx52(
|
|
4039
|
+
Cylinder8,
|
|
3893
4040
|
{
|
|
3894
4041
|
height: leadLength + bodyHeight / 2,
|
|
3895
4042
|
radius: leadDiameter / 2,
|
|
@@ -3902,13 +4049,13 @@ var HC49 = ({
|
|
|
3902
4049
|
|
|
3903
4050
|
// lib/MicroMELF.tsx
|
|
3904
4051
|
import {
|
|
3905
|
-
Colorize as
|
|
3906
|
-
Cylinder as
|
|
4052
|
+
Colorize as Colorize27,
|
|
4053
|
+
Cylinder as Cylinder9,
|
|
3907
4054
|
RoundedCylinder as RoundedCylinder2,
|
|
3908
4055
|
Rotate as Rotate8,
|
|
3909
4056
|
RoundedCuboid as RoundedCuboid2
|
|
3910
4057
|
} from "jscad-fiber";
|
|
3911
|
-
import { Fragment as
|
|
4058
|
+
import { Fragment as Fragment49, jsx as jsx53, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
3912
4059
|
var MicroMELF = ({
|
|
3913
4060
|
bodyLength: bodyLength10 = 1.4,
|
|
3914
4061
|
bodyDiameter = 1.1,
|
|
@@ -3917,9 +4064,9 @@ var MicroMELF = ({
|
|
|
3917
4064
|
cathodeIdentification = "#111"
|
|
3918
4065
|
}) => {
|
|
3919
4066
|
const padLength = 0.2;
|
|
3920
|
-
return /* @__PURE__ */
|
|
3921
|
-
/* @__PURE__ */
|
|
3922
|
-
/* @__PURE__ */
|
|
4067
|
+
return /* @__PURE__ */ jsxs49(Fragment49, { children: [
|
|
4068
|
+
/* @__PURE__ */ jsx53(Colorize27, { color, children: /* @__PURE__ */ jsxs49(Rotate8, { rotation: [0, "90deg", 0], children: [
|
|
4069
|
+
/* @__PURE__ */ jsx53(
|
|
3923
4070
|
RoundedCuboid2,
|
|
3924
4071
|
{
|
|
3925
4072
|
size: [bodyDiameter, bodyDiameter, bodyLength10 - padLength],
|
|
@@ -3927,8 +4074,8 @@ var MicroMELF = ({
|
|
|
3927
4074
|
center: [-bodyDiameter / 2, 0, 0.05]
|
|
3928
4075
|
}
|
|
3929
4076
|
),
|
|
3930
|
-
/* @__PURE__ */
|
|
3931
|
-
|
|
4077
|
+
/* @__PURE__ */ jsx53(
|
|
4078
|
+
Cylinder9,
|
|
3932
4079
|
{
|
|
3933
4080
|
height: padLength / 2,
|
|
3934
4081
|
radius: bodyDiameter / 2 - padLength,
|
|
@@ -3936,7 +4083,7 @@ var MicroMELF = ({
|
|
|
3936
4083
|
}
|
|
3937
4084
|
)
|
|
3938
4085
|
] }) }),
|
|
3939
|
-
/* @__PURE__ */
|
|
4086
|
+
/* @__PURE__ */ jsx53(Colorize27, { color: cathodeIdentification, children: /* @__PURE__ */ jsx53(Rotate8, { rotation: [0, "90deg", 0], children: /* @__PURE__ */ jsx53(
|
|
3940
4087
|
RoundedCuboid2,
|
|
3941
4088
|
{
|
|
3942
4089
|
size: [bodyDiameter * 1.01, bodyDiameter * 1.01, bodyLength10 / 3],
|
|
@@ -3944,7 +4091,7 @@ var MicroMELF = ({
|
|
|
3944
4091
|
center: [-bodyDiameter / 2, 0, -bodyLength10 / 4 + 0.1]
|
|
3945
4092
|
}
|
|
3946
4093
|
) }) }),
|
|
3947
|
-
/* @__PURE__ */
|
|
4094
|
+
/* @__PURE__ */ jsx53(Colorize27, { color: contactColor, children: /* @__PURE__ */ jsx53(Rotate8, { rotation: [0, "90deg", 0], children: /* @__PURE__ */ jsx53(
|
|
3948
4095
|
RoundedCylinder2,
|
|
3949
4096
|
{
|
|
3950
4097
|
height: padLength,
|
|
@@ -3953,7 +4100,7 @@ var MicroMELF = ({
|
|
|
3953
4100
|
center: [-bodyDiameter / 2, 0, -bodyLength10 / 2]
|
|
3954
4101
|
}
|
|
3955
4102
|
) }) }),
|
|
3956
|
-
/* @__PURE__ */
|
|
4103
|
+
/* @__PURE__ */ jsx53(Colorize27, { color: contactColor, children: /* @__PURE__ */ jsx53(Rotate8, { rotation: [0, "90deg", 0], children: /* @__PURE__ */ jsx53(
|
|
3957
4104
|
RoundedCylinder2,
|
|
3958
4105
|
{
|
|
3959
4106
|
height: padLength,
|
|
@@ -3966,8 +4113,8 @@ var MicroMELF = ({
|
|
|
3966
4113
|
};
|
|
3967
4114
|
|
|
3968
4115
|
// lib/MINIMELF.tsx
|
|
3969
|
-
import { Colorize as
|
|
3970
|
-
import { Fragment as
|
|
4116
|
+
import { Colorize as Colorize28, RoundedCylinder as RoundedCylinder3, Rotate as Rotate9 } from "jscad-fiber";
|
|
4117
|
+
import { Fragment as Fragment50, jsx as jsx54, jsxs as jsxs50 } from "react/jsx-runtime";
|
|
3971
4118
|
var MINIMELF = ({
|
|
3972
4119
|
bodyLength: bodyLength10 = 3.5,
|
|
3973
4120
|
bodyDiameter = 1.5,
|
|
@@ -3975,8 +4122,8 @@ var MINIMELF = ({
|
|
|
3975
4122
|
contactColor = "#c6c6c6"
|
|
3976
4123
|
}) => {
|
|
3977
4124
|
const padLength = 0.5;
|
|
3978
|
-
return /* @__PURE__ */
|
|
3979
|
-
/* @__PURE__ */
|
|
4125
|
+
return /* @__PURE__ */ jsxs50(Fragment50, { children: [
|
|
4126
|
+
/* @__PURE__ */ jsx54(Colorize28, { color, children: /* @__PURE__ */ jsx54(Rotate9, { rotation: [0, "90deg", 0], children: /* @__PURE__ */ jsx54(
|
|
3980
4127
|
RoundedCylinder3,
|
|
3981
4128
|
{
|
|
3982
4129
|
height: bodyLength10,
|
|
@@ -3985,7 +4132,7 @@ var MINIMELF = ({
|
|
|
3985
4132
|
center: [-bodyDiameter / 2, 0, 0]
|
|
3986
4133
|
}
|
|
3987
4134
|
) }) }),
|
|
3988
|
-
/* @__PURE__ */
|
|
4135
|
+
/* @__PURE__ */ jsx54(Colorize28, { color: contactColor, children: /* @__PURE__ */ jsx54(Rotate9, { rotation: [0, "90deg", 0], children: /* @__PURE__ */ jsx54(
|
|
3989
4136
|
RoundedCylinder3,
|
|
3990
4137
|
{
|
|
3991
4138
|
height: padLength,
|
|
@@ -3994,7 +4141,7 @@ var MINIMELF = ({
|
|
|
3994
4141
|
center: [-bodyDiameter / 2, 0, -bodyLength10 / 2]
|
|
3995
4142
|
}
|
|
3996
4143
|
) }) }),
|
|
3997
|
-
/* @__PURE__ */
|
|
4144
|
+
/* @__PURE__ */ jsx54(Colorize28, { color: contactColor, children: /* @__PURE__ */ jsx54(Rotate9, { rotation: [0, "90deg", 0], children: /* @__PURE__ */ jsx54(
|
|
3998
4145
|
RoundedCylinder3,
|
|
3999
4146
|
{
|
|
4000
4147
|
height: padLength,
|
|
@@ -4007,8 +4154,8 @@ var MINIMELF = ({
|
|
|
4007
4154
|
};
|
|
4008
4155
|
|
|
4009
4156
|
// lib/MELF.tsx
|
|
4010
|
-
import { Colorize as
|
|
4011
|
-
import { Fragment as
|
|
4157
|
+
import { Colorize as Colorize29, RoundedCylinder as RoundedCylinder4, Rotate as Rotate10 } from "jscad-fiber";
|
|
4158
|
+
import { Fragment as Fragment51, jsx as jsx55, jsxs as jsxs51 } from "react/jsx-runtime";
|
|
4012
4159
|
var MELF = ({
|
|
4013
4160
|
bodyLength: bodyLength10 = 3.9,
|
|
4014
4161
|
bodyDiameter = 2.5,
|
|
@@ -4016,8 +4163,8 @@ var MELF = ({
|
|
|
4016
4163
|
contactColor = "#c6c6c6"
|
|
4017
4164
|
}) => {
|
|
4018
4165
|
const padLength = 0.55;
|
|
4019
|
-
return /* @__PURE__ */
|
|
4020
|
-
/* @__PURE__ */
|
|
4166
|
+
return /* @__PURE__ */ jsxs51(Fragment51, { children: [
|
|
4167
|
+
/* @__PURE__ */ jsx55(Colorize29, { color, children: /* @__PURE__ */ jsx55(Rotate10, { rotation: [0, "90deg", 0], children: /* @__PURE__ */ jsx55(
|
|
4021
4168
|
RoundedCylinder4,
|
|
4022
4169
|
{
|
|
4023
4170
|
height: bodyLength10,
|
|
@@ -4026,7 +4173,7 @@ var MELF = ({
|
|
|
4026
4173
|
center: [-bodyDiameter / 2, 0, 0]
|
|
4027
4174
|
}
|
|
4028
4175
|
) }) }),
|
|
4029
|
-
/* @__PURE__ */
|
|
4176
|
+
/* @__PURE__ */ jsx55(Colorize29, { color: contactColor, children: /* @__PURE__ */ jsx55(Rotate10, { rotation: [0, "90deg", 0], children: /* @__PURE__ */ jsx55(
|
|
4030
4177
|
RoundedCylinder4,
|
|
4031
4178
|
{
|
|
4032
4179
|
height: padLength,
|
|
@@ -4035,7 +4182,7 @@ var MELF = ({
|
|
|
4035
4182
|
center: [-bodyDiameter / 2, 0, -bodyLength10 / 2]
|
|
4036
4183
|
}
|
|
4037
4184
|
) }) }),
|
|
4038
|
-
/* @__PURE__ */
|
|
4185
|
+
/* @__PURE__ */ jsx55(Colorize29, { color: contactColor, children: /* @__PURE__ */ jsx55(Rotate10, { rotation: [0, "90deg", 0], children: /* @__PURE__ */ jsx55(
|
|
4039
4186
|
RoundedCylinder4,
|
|
4040
4187
|
{
|
|
4041
4188
|
height: padLength,
|
|
@@ -4048,7 +4195,7 @@ var MELF = ({
|
|
|
4048
4195
|
};
|
|
4049
4196
|
|
|
4050
4197
|
// lib/ms012.tsx
|
|
4051
|
-
import { Fragment as
|
|
4198
|
+
import { Fragment as Fragment52, jsx as jsx56, jsxs as jsxs52 } from "react/jsx-runtime";
|
|
4052
4199
|
var MS012 = ({
|
|
4053
4200
|
pinCount,
|
|
4054
4201
|
padContactLength = 0.6,
|
|
@@ -4063,8 +4210,8 @@ var MS012 = ({
|
|
|
4063
4210
|
const bodyLength10 = 3.9;
|
|
4064
4211
|
const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
|
|
4065
4212
|
const leadThickness = 0.2;
|
|
4066
|
-
return /* @__PURE__ */
|
|
4067
|
-
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */
|
|
4213
|
+
return /* @__PURE__ */ jsxs52(Fragment52, { children: [
|
|
4214
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx56(
|
|
4068
4215
|
SmdChipLead,
|
|
4069
4216
|
{
|
|
4070
4217
|
position: {
|
|
@@ -4080,7 +4227,7 @@ var MS012 = ({
|
|
|
4080
4227
|
},
|
|
4081
4228
|
i
|
|
4082
4229
|
)),
|
|
4083
|
-
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */
|
|
4230
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx56(
|
|
4084
4231
|
SmdChipLead,
|
|
4085
4232
|
{
|
|
4086
4233
|
rotation: Math.PI,
|
|
@@ -4097,7 +4244,7 @@ var MS012 = ({
|
|
|
4097
4244
|
},
|
|
4098
4245
|
`right-${i}`
|
|
4099
4246
|
)),
|
|
4100
|
-
/* @__PURE__ */
|
|
4247
|
+
/* @__PURE__ */ jsx56(
|
|
4101
4248
|
ChipBody,
|
|
4102
4249
|
{
|
|
4103
4250
|
center: { x: 0, y: 0, z: leadThickness / 2 },
|
|
@@ -4117,7 +4264,7 @@ var MS012 = ({
|
|
|
4117
4264
|
};
|
|
4118
4265
|
|
|
4119
4266
|
// lib/ms013.tsx
|
|
4120
|
-
import { Fragment as
|
|
4267
|
+
import { Fragment as Fragment53, jsx as jsx57, jsxs as jsxs53 } from "react/jsx-runtime";
|
|
4121
4268
|
var MS013 = ({
|
|
4122
4269
|
pinCount = 16,
|
|
4123
4270
|
padContactLength = 0.6,
|
|
@@ -4132,8 +4279,8 @@ var MS013 = ({
|
|
|
4132
4279
|
const bodyLength10 = 10.3;
|
|
4133
4280
|
const pinOffsetToCenter = (sidePinCount - 1) * pitch / 2;
|
|
4134
4281
|
const leadThickness = 0.2;
|
|
4135
|
-
return /* @__PURE__ */
|
|
4136
|
-
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */
|
|
4282
|
+
return /* @__PURE__ */ jsxs53(Fragment53, { children: [
|
|
4283
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx57(
|
|
4137
4284
|
SmdChipLead,
|
|
4138
4285
|
{
|
|
4139
4286
|
position: {
|
|
@@ -4149,7 +4296,7 @@ var MS013 = ({
|
|
|
4149
4296
|
},
|
|
4150
4297
|
i
|
|
4151
4298
|
)),
|
|
4152
|
-
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */
|
|
4299
|
+
Array.from({ length: sidePinCount }).map((_, i) => /* @__PURE__ */ jsx57(
|
|
4153
4300
|
SmdChipLead,
|
|
4154
4301
|
{
|
|
4155
4302
|
rotation: Math.PI,
|
|
@@ -4166,7 +4313,7 @@ var MS013 = ({
|
|
|
4166
4313
|
},
|
|
4167
4314
|
`right-${i}`
|
|
4168
4315
|
)),
|
|
4169
|
-
/* @__PURE__ */
|
|
4316
|
+
/* @__PURE__ */ jsx57(
|
|
4170
4317
|
ChipBody,
|
|
4171
4318
|
{
|
|
4172
4319
|
center: { x: 0, y: 0, z: leadThickness / 2 },
|
|
@@ -4187,14 +4334,14 @@ var MS013 = ({
|
|
|
4187
4334
|
|
|
4188
4335
|
// lib/TO220.tsx
|
|
4189
4336
|
import {
|
|
4190
|
-
Colorize as
|
|
4191
|
-
Cuboid as
|
|
4192
|
-
Cylinder as
|
|
4337
|
+
Colorize as Colorize30,
|
|
4338
|
+
Cuboid as Cuboid36,
|
|
4339
|
+
Cylinder as Cylinder10,
|
|
4193
4340
|
Rotate as Rotate11,
|
|
4194
|
-
Subtract as
|
|
4195
|
-
Translate as
|
|
4341
|
+
Subtract as Subtract7,
|
|
4342
|
+
Translate as Translate24
|
|
4196
4343
|
} from "jscad-fiber";
|
|
4197
|
-
import { Fragment as
|
|
4344
|
+
import { Fragment as Fragment54, jsx as jsx58, jsxs as jsxs54 } from "react/jsx-runtime";
|
|
4198
4345
|
var TO220_DEFAULT_LEADS = [
|
|
4199
4346
|
{ x: -2.54, y: -1 },
|
|
4200
4347
|
{ x: 0, y: -1 },
|
|
@@ -4224,32 +4371,32 @@ var TO220 = ({
|
|
|
4224
4371
|
const holeZ = tabTop - Math.max(mountingHoleDiameter * 0.8, 2.6);
|
|
4225
4372
|
const leadWidth = 0.8;
|
|
4226
4373
|
const leadThickness = 0.5;
|
|
4227
|
-
return /* @__PURE__ */
|
|
4228
|
-
/* @__PURE__ */
|
|
4229
|
-
|
|
4374
|
+
return /* @__PURE__ */ jsxs54(Fragment54, { children: [
|
|
4375
|
+
/* @__PURE__ */ jsx58(Colorize30, { color: bodyColor, children: /* @__PURE__ */ jsx58(
|
|
4376
|
+
Cuboid36,
|
|
4230
4377
|
{
|
|
4231
4378
|
size: [bodyWidth, bodyThickness, bodyHeight],
|
|
4232
4379
|
center: [centerX, centerY, bodyBottom + bodyHeight / 2]
|
|
4233
4380
|
}
|
|
4234
4381
|
) }),
|
|
4235
|
-
/* @__PURE__ */
|
|
4236
|
-
/* @__PURE__ */
|
|
4237
|
-
|
|
4382
|
+
/* @__PURE__ */ jsx58(Colorize30, { color: mouldedTab ? bodyColor : tabColor, children: /* @__PURE__ */ jsxs54(Subtract7, { children: [
|
|
4383
|
+
/* @__PURE__ */ jsx58(
|
|
4384
|
+
Cuboid36,
|
|
4238
4385
|
{
|
|
4239
4386
|
size: [bodyWidth, tabThickness, tabHeight],
|
|
4240
4387
|
center: [centerX, tabY, bodyTop + tabHeight / 2]
|
|
4241
4388
|
}
|
|
4242
4389
|
),
|
|
4243
|
-
/* @__PURE__ */
|
|
4244
|
-
|
|
4390
|
+
/* @__PURE__ */ jsx58(Rotate11, { rotation: ["90deg", 0, 0], children: /* @__PURE__ */ jsx58(Translate24, { center: [centerX, holeZ, -tabY], children: /* @__PURE__ */ jsx58(
|
|
4391
|
+
Cylinder10,
|
|
4245
4392
|
{
|
|
4246
4393
|
radius: mountingHoleDiameter / 2,
|
|
4247
4394
|
height: tabThickness * 3
|
|
4248
4395
|
}
|
|
4249
4396
|
) }) })
|
|
4250
4397
|
] }) }),
|
|
4251
|
-
leads.map((lead) => /* @__PURE__ */
|
|
4252
|
-
|
|
4398
|
+
leads.map((lead) => /* @__PURE__ */ jsx58(Colorize30, { color: leadColor, children: /* @__PURE__ */ jsx58(
|
|
4399
|
+
Cuboid36,
|
|
4253
4400
|
{
|
|
4254
4401
|
size: [leadWidth, leadThickness, standoff + leadLength],
|
|
4255
4402
|
center: [lead.x, lead.y, (standoff - leadLength) / 2]
|
|
@@ -4259,7 +4406,7 @@ var TO220 = ({
|
|
|
4259
4406
|
};
|
|
4260
4407
|
|
|
4261
4408
|
// lib/SOT-457.tsx
|
|
4262
|
-
import { Fragment as
|
|
4409
|
+
import { Fragment as Fragment55, jsx as jsx59, jsxs as jsxs55 } from "react/jsx-runtime";
|
|
4263
4410
|
var SOT457 = () => {
|
|
4264
4411
|
const fullWidth = 2.8;
|
|
4265
4412
|
const bodyWidth = 1.6;
|
|
@@ -4271,8 +4418,8 @@ var SOT457 = () => {
|
|
|
4271
4418
|
const padContactLength = 0.5;
|
|
4272
4419
|
const padPitch = 0.95;
|
|
4273
4420
|
const extendedBodyDistance = fullWidth - bodyWidth;
|
|
4274
|
-
return /* @__PURE__ */
|
|
4275
|
-
/* @__PURE__ */
|
|
4421
|
+
return /* @__PURE__ */ jsxs55(Fragment55, { children: [
|
|
4422
|
+
/* @__PURE__ */ jsx59(
|
|
4276
4423
|
SmdChipLead,
|
|
4277
4424
|
{
|
|
4278
4425
|
rotation: Math.PI,
|
|
@@ -4289,7 +4436,7 @@ var SOT457 = () => {
|
|
|
4289
4436
|
},
|
|
4290
4437
|
1
|
|
4291
4438
|
),
|
|
4292
|
-
/* @__PURE__ */
|
|
4439
|
+
/* @__PURE__ */ jsx59(
|
|
4293
4440
|
SmdChipLead,
|
|
4294
4441
|
{
|
|
4295
4442
|
rotation: Math.PI,
|
|
@@ -4306,7 +4453,7 @@ var SOT457 = () => {
|
|
|
4306
4453
|
},
|
|
4307
4454
|
2
|
|
4308
4455
|
),
|
|
4309
|
-
/* @__PURE__ */
|
|
4456
|
+
/* @__PURE__ */ jsx59(
|
|
4310
4457
|
SmdChipLead,
|
|
4311
4458
|
{
|
|
4312
4459
|
rotation: Math.PI,
|
|
@@ -4323,7 +4470,7 @@ var SOT457 = () => {
|
|
|
4323
4470
|
},
|
|
4324
4471
|
3
|
|
4325
4472
|
),
|
|
4326
|
-
/* @__PURE__ */
|
|
4473
|
+
/* @__PURE__ */ jsx59(
|
|
4327
4474
|
SmdChipLead,
|
|
4328
4475
|
{
|
|
4329
4476
|
position: {
|
|
@@ -4339,7 +4486,7 @@ var SOT457 = () => {
|
|
|
4339
4486
|
},
|
|
4340
4487
|
3
|
|
4341
4488
|
),
|
|
4342
|
-
/* @__PURE__ */
|
|
4489
|
+
/* @__PURE__ */ jsx59(
|
|
4343
4490
|
SmdChipLead,
|
|
4344
4491
|
{
|
|
4345
4492
|
position: {
|
|
@@ -4355,7 +4502,7 @@ var SOT457 = () => {
|
|
|
4355
4502
|
},
|
|
4356
4503
|
1
|
|
4357
4504
|
),
|
|
4358
|
-
/* @__PURE__ */
|
|
4505
|
+
/* @__PURE__ */ jsx59(
|
|
4359
4506
|
SmdChipLead,
|
|
4360
4507
|
{
|
|
4361
4508
|
position: {
|
|
@@ -4371,7 +4518,7 @@ var SOT457 = () => {
|
|
|
4371
4518
|
},
|
|
4372
4519
|
2
|
|
4373
4520
|
),
|
|
4374
|
-
/* @__PURE__ */
|
|
4521
|
+
/* @__PURE__ */ jsx59(
|
|
4375
4522
|
ChipBody,
|
|
4376
4523
|
{
|
|
4377
4524
|
center: { x: 0, y: 0, z: 0 },
|
|
@@ -4391,8 +4538,8 @@ var SOT457 = () => {
|
|
|
4391
4538
|
};
|
|
4392
4539
|
|
|
4393
4540
|
// lib/SOT-963.tsx
|
|
4394
|
-
import { Cuboid as
|
|
4395
|
-
import { Fragment as
|
|
4541
|
+
import { Cuboid as Cuboid37 } from "jscad-fiber";
|
|
4542
|
+
import { Fragment as Fragment56, jsx as jsx60, jsxs as jsxs56 } from "react/jsx-runtime";
|
|
4396
4543
|
var SOT963 = () => {
|
|
4397
4544
|
const bodyWidth = 0.8;
|
|
4398
4545
|
const bodyLength10 = 1;
|
|
@@ -4403,8 +4550,8 @@ var SOT963 = () => {
|
|
|
4403
4550
|
const pitch = 0.35;
|
|
4404
4551
|
const pinsPerSide = 3;
|
|
4405
4552
|
const pinSpan = pitch * (pinsPerSide - 1);
|
|
4406
|
-
return /* @__PURE__ */
|
|
4407
|
-
/* @__PURE__ */
|
|
4553
|
+
return /* @__PURE__ */ jsxs56(Fragment56, { children: [
|
|
4554
|
+
/* @__PURE__ */ jsx60(
|
|
4408
4555
|
ChipBody,
|
|
4409
4556
|
{
|
|
4410
4557
|
center: { x: 0, y: 0, z: 0 },
|
|
@@ -4424,8 +4571,8 @@ var SOT963 = () => {
|
|
|
4424
4571
|
),
|
|
4425
4572
|
[0, 1, 2].map((i) => {
|
|
4426
4573
|
const y = -pinSpan / 2 + i * pitch;
|
|
4427
|
-
return /* @__PURE__ */
|
|
4428
|
-
|
|
4574
|
+
return /* @__PURE__ */ jsx60(
|
|
4575
|
+
Cuboid37,
|
|
4429
4576
|
{
|
|
4430
4577
|
center: [
|
|
4431
4578
|
-bodyWidth / 2 + terminalLength / 2 - 0.1,
|
|
@@ -4439,8 +4586,8 @@ var SOT963 = () => {
|
|
|
4439
4586
|
}),
|
|
4440
4587
|
[0, 1, 2].map((i) => {
|
|
4441
4588
|
const y = -pinSpan / 2 + i * pitch;
|
|
4442
|
-
return /* @__PURE__ */
|
|
4443
|
-
|
|
4589
|
+
return /* @__PURE__ */ jsx60(
|
|
4590
|
+
Cuboid37,
|
|
4444
4591
|
{
|
|
4445
4592
|
center: [
|
|
4446
4593
|
bodyWidth / 2 - terminalLength / 2 + 0.1,
|
|
@@ -4457,14 +4604,14 @@ var SOT963 = () => {
|
|
|
4457
4604
|
|
|
4458
4605
|
// lib/TO92.tsx
|
|
4459
4606
|
import {
|
|
4460
|
-
Colorize as
|
|
4461
|
-
Cuboid as
|
|
4462
|
-
Hull as
|
|
4463
|
-
Translate as
|
|
4464
|
-
Cylinder as
|
|
4465
|
-
Subtract as
|
|
4607
|
+
Colorize as Colorize31,
|
|
4608
|
+
Cuboid as Cuboid38,
|
|
4609
|
+
Hull as Hull22,
|
|
4610
|
+
Translate as Translate25,
|
|
4611
|
+
Cylinder as Cylinder11,
|
|
4612
|
+
Subtract as Subtract8
|
|
4466
4613
|
} from "jscad-fiber";
|
|
4467
|
-
import { Fragment as
|
|
4614
|
+
import { Fragment as Fragment57, jsx as jsx61, jsxs as jsxs57 } from "react/jsx-runtime";
|
|
4468
4615
|
var TO92_DEFAULT_LEADS = [
|
|
4469
4616
|
{ x: -1.27, y: 0.98 },
|
|
4470
4617
|
{ x: 0, y: 2.25 },
|
|
@@ -4523,42 +4670,42 @@ var TO92 = ({
|
|
|
4523
4670
|
legWidth,
|
|
4524
4671
|
legThickness
|
|
4525
4672
|
];
|
|
4526
|
-
return /* @__PURE__ */
|
|
4527
|
-
/* @__PURE__ */
|
|
4528
|
-
/* @__PURE__ */
|
|
4529
|
-
|
|
4673
|
+
return /* @__PURE__ */ jsxs57(Fragment57, { children: [
|
|
4674
|
+
/* @__PURE__ */ jsx61(Colorize31, { color: bodyColor, children: /* @__PURE__ */ jsxs57(Subtract8, { children: [
|
|
4675
|
+
/* @__PURE__ */ jsx61(
|
|
4676
|
+
Translate25,
|
|
4530
4677
|
{
|
|
4531
4678
|
center: [bodyCenter.x, bodyCenter.y, standoff + bodyHeight / 2],
|
|
4532
|
-
children: /* @__PURE__ */
|
|
4679
|
+
children: /* @__PURE__ */ jsx61(Cylinder11, { radius: bodyRadius, height: bodyHeight })
|
|
4533
4680
|
}
|
|
4534
4681
|
),
|
|
4535
|
-
/* @__PURE__ */
|
|
4536
|
-
|
|
4682
|
+
/* @__PURE__ */ jsx61(
|
|
4683
|
+
Translate25,
|
|
4537
4684
|
{
|
|
4538
4685
|
center: [
|
|
4539
4686
|
bodyCenter.x,
|
|
4540
4687
|
bodyCenter.y - (bodyRadius - flatCut / 2),
|
|
4541
4688
|
standoff + bodyHeight / 2
|
|
4542
4689
|
],
|
|
4543
|
-
children: /* @__PURE__ */
|
|
4690
|
+
children: /* @__PURE__ */ jsx61(Cuboid38, { size: [bodyRadius * 2, flatCut, bodyHeight + 0.2] })
|
|
4544
4691
|
}
|
|
4545
4692
|
)
|
|
4546
4693
|
] }) }),
|
|
4547
4694
|
leads.map((lead, index) => {
|
|
4548
4695
|
const exit = exitFor(index);
|
|
4549
|
-
return /* @__PURE__ */
|
|
4550
|
-
/* @__PURE__ */
|
|
4551
|
-
/* @__PURE__ */
|
|
4552
|
-
/* @__PURE__ */
|
|
4696
|
+
return /* @__PURE__ */ jsxs57(Translate25, { center: [0, 0, 0], children: [
|
|
4697
|
+
/* @__PURE__ */ jsxs57(Hull22, { children: [
|
|
4698
|
+
/* @__PURE__ */ jsx61(Translate25, { center: [lead.x, lead.y, 0], children: /* @__PURE__ */ jsx61(Cuboid38, { size: leadSize }) }),
|
|
4699
|
+
/* @__PURE__ */ jsx61(Translate25, { center: [exit.x, exit.y, standoff], children: /* @__PURE__ */ jsx61(Cuboid38, { size: leadSize }) })
|
|
4553
4700
|
] }),
|
|
4554
|
-
/* @__PURE__ */
|
|
4701
|
+
/* @__PURE__ */ jsx61(Translate25, { center: [lead.x, lead.y, -leadLength / 2], children: /* @__PURE__ */ jsx61(Cuboid38, { size: [legThickness, legWidth, leadLength] }) })
|
|
4555
4702
|
] }, `lead-${lead.x}-${lead.y}`);
|
|
4556
4703
|
})
|
|
4557
4704
|
] });
|
|
4558
4705
|
};
|
|
4559
4706
|
|
|
4560
4707
|
// lib/SOT-363.tsx
|
|
4561
|
-
import { Fragment as
|
|
4708
|
+
import { Fragment as Fragment58, jsx as jsx62, jsxs as jsxs58 } from "react/jsx-runtime";
|
|
4562
4709
|
var SOT363 = () => {
|
|
4563
4710
|
const fullWidth = 2;
|
|
4564
4711
|
const bodyWidth = 1.25;
|
|
@@ -4569,8 +4716,8 @@ var SOT363 = () => {
|
|
|
4569
4716
|
const leadHeight = 0.85;
|
|
4570
4717
|
const padContactLength = 0.3;
|
|
4571
4718
|
const extendedBodyDistance = fullWidth - bodyWidth;
|
|
4572
|
-
return /* @__PURE__ */
|
|
4573
|
-
/* @__PURE__ */
|
|
4719
|
+
return /* @__PURE__ */ jsxs58(Fragment58, { children: [
|
|
4720
|
+
/* @__PURE__ */ jsx62(
|
|
4574
4721
|
SmdChipLead,
|
|
4575
4722
|
{
|
|
4576
4723
|
rotation: Math.PI,
|
|
@@ -4587,7 +4734,7 @@ var SOT363 = () => {
|
|
|
4587
4734
|
},
|
|
4588
4735
|
1
|
|
4589
4736
|
),
|
|
4590
|
-
/* @__PURE__ */
|
|
4737
|
+
/* @__PURE__ */ jsx62(
|
|
4591
4738
|
SmdChipLead,
|
|
4592
4739
|
{
|
|
4593
4740
|
rotation: Math.PI,
|
|
@@ -4604,7 +4751,7 @@ var SOT363 = () => {
|
|
|
4604
4751
|
},
|
|
4605
4752
|
2
|
|
4606
4753
|
),
|
|
4607
|
-
/* @__PURE__ */
|
|
4754
|
+
/* @__PURE__ */ jsx62(
|
|
4608
4755
|
SmdChipLead,
|
|
4609
4756
|
{
|
|
4610
4757
|
rotation: Math.PI,
|
|
@@ -4621,7 +4768,7 @@ var SOT363 = () => {
|
|
|
4621
4768
|
},
|
|
4622
4769
|
3
|
|
4623
4770
|
),
|
|
4624
|
-
/* @__PURE__ */
|
|
4771
|
+
/* @__PURE__ */ jsx62(
|
|
4625
4772
|
SmdChipLead,
|
|
4626
4773
|
{
|
|
4627
4774
|
position: {
|
|
@@ -4637,7 +4784,7 @@ var SOT363 = () => {
|
|
|
4637
4784
|
},
|
|
4638
4785
|
3
|
|
4639
4786
|
),
|
|
4640
|
-
/* @__PURE__ */
|
|
4787
|
+
/* @__PURE__ */ jsx62(
|
|
4641
4788
|
SmdChipLead,
|
|
4642
4789
|
{
|
|
4643
4790
|
position: {
|
|
@@ -4653,7 +4800,7 @@ var SOT363 = () => {
|
|
|
4653
4800
|
},
|
|
4654
4801
|
1
|
|
4655
4802
|
),
|
|
4656
|
-
/* @__PURE__ */
|
|
4803
|
+
/* @__PURE__ */ jsx62(
|
|
4657
4804
|
SmdChipLead,
|
|
4658
4805
|
{
|
|
4659
4806
|
position: {
|
|
@@ -4669,7 +4816,7 @@ var SOT363 = () => {
|
|
|
4669
4816
|
},
|
|
4670
4817
|
2
|
|
4671
4818
|
),
|
|
4672
|
-
/* @__PURE__ */
|
|
4819
|
+
/* @__PURE__ */ jsx62(
|
|
4673
4820
|
ChipBody,
|
|
4674
4821
|
{
|
|
4675
4822
|
center: { x: 0, y: 0, z: 0 },
|
|
@@ -4690,8 +4837,8 @@ var SOT363 = () => {
|
|
|
4690
4837
|
var SOT_363_default = SOT363;
|
|
4691
4838
|
|
|
4692
4839
|
// lib/SOT-886.tsx
|
|
4693
|
-
import { Cuboid as
|
|
4694
|
-
import { Fragment as
|
|
4840
|
+
import { Cuboid as Cuboid39 } from "jscad-fiber";
|
|
4841
|
+
import { Fragment as Fragment59, jsx as jsx63, jsxs as jsxs59 } from "react/jsx-runtime";
|
|
4695
4842
|
var SOT886 = () => {
|
|
4696
4843
|
const bodyWidth = 1;
|
|
4697
4844
|
const bodyLength10 = 1.45;
|
|
@@ -4702,8 +4849,8 @@ var SOT886 = () => {
|
|
|
4702
4849
|
const pitch = 0.5;
|
|
4703
4850
|
const pinsPerSide = 3;
|
|
4704
4851
|
const pinSpan = pitch * (pinsPerSide - 1);
|
|
4705
|
-
return /* @__PURE__ */
|
|
4706
|
-
/* @__PURE__ */
|
|
4852
|
+
return /* @__PURE__ */ jsxs59(Fragment59, { children: [
|
|
4853
|
+
/* @__PURE__ */ jsx63(
|
|
4707
4854
|
ChipBody,
|
|
4708
4855
|
{
|
|
4709
4856
|
center: { x: 0, y: 0, z: terminalThickness },
|
|
@@ -4718,8 +4865,8 @@ var SOT886 = () => {
|
|
|
4718
4865
|
),
|
|
4719
4866
|
[0, 1, 2].map((i) => {
|
|
4720
4867
|
const y = -pinSpan / 2 + i * pitch;
|
|
4721
|
-
return /* @__PURE__ */
|
|
4722
|
-
|
|
4868
|
+
return /* @__PURE__ */ jsx63(
|
|
4869
|
+
Cuboid39,
|
|
4723
4870
|
{
|
|
4724
4871
|
center: [
|
|
4725
4872
|
-bodyWidth / 2 + terminalLength / 2,
|
|
@@ -4733,8 +4880,8 @@ var SOT886 = () => {
|
|
|
4733
4880
|
}),
|
|
4734
4881
|
[0, 1, 2].map((i) => {
|
|
4735
4882
|
const y = -pinSpan / 2 + i * pitch;
|
|
4736
|
-
return /* @__PURE__ */
|
|
4737
|
-
|
|
4883
|
+
return /* @__PURE__ */ jsx63(
|
|
4884
|
+
Cuboid39,
|
|
4738
4885
|
{
|
|
4739
4886
|
center: [
|
|
4740
4887
|
bodyWidth / 2 - terminalLength / 2,
|
|
@@ -4750,8 +4897,8 @@ var SOT886 = () => {
|
|
|
4750
4897
|
};
|
|
4751
4898
|
|
|
4752
4899
|
// lib/sod-323.tsx
|
|
4753
|
-
import { Colorize as
|
|
4754
|
-
import { Fragment as
|
|
4900
|
+
import { Colorize as Colorize32, Cuboid as Cuboid40 } from "jscad-fiber";
|
|
4901
|
+
import { Fragment as Fragment60, jsx as jsx64, jsxs as jsxs60 } from "react/jsx-runtime";
|
|
4755
4902
|
var SOD323 = () => {
|
|
4756
4903
|
const fullWidth = 2.5;
|
|
4757
4904
|
const bodyLength10 = 1.4;
|
|
@@ -4763,8 +4910,8 @@ var SOD323 = () => {
|
|
|
4763
4910
|
const padCenterX = bodyWidth / 2;
|
|
4764
4911
|
const bodyDistance = 0.45;
|
|
4765
4912
|
const leadHeight = 0.7;
|
|
4766
|
-
return /* @__PURE__ */
|
|
4767
|
-
/* @__PURE__ */
|
|
4913
|
+
return /* @__PURE__ */ jsxs60(Fragment60, { children: [
|
|
4914
|
+
/* @__PURE__ */ jsx64(
|
|
4768
4915
|
SmdChipLead,
|
|
4769
4916
|
{
|
|
4770
4917
|
position: {
|
|
@@ -4780,7 +4927,7 @@ var SOD323 = () => {
|
|
|
4780
4927
|
},
|
|
4781
4928
|
1
|
|
4782
4929
|
),
|
|
4783
|
-
/* @__PURE__ */
|
|
4930
|
+
/* @__PURE__ */ jsx64(
|
|
4784
4931
|
SmdChipLead,
|
|
4785
4932
|
{
|
|
4786
4933
|
rotation: Math.PI,
|
|
@@ -4797,7 +4944,7 @@ var SOD323 = () => {
|
|
|
4797
4944
|
},
|
|
4798
4945
|
1
|
|
4799
4946
|
),
|
|
4800
|
-
/* @__PURE__ */
|
|
4947
|
+
/* @__PURE__ */ jsx64(Colorize32, { color: "#222", children: /* @__PURE__ */ jsx64(
|
|
4801
4948
|
ChipBody,
|
|
4802
4949
|
{
|
|
4803
4950
|
center: { x: 0, y: 0, z: 0 },
|
|
@@ -4810,8 +4957,8 @@ var SOD323 = () => {
|
|
|
4810
4957
|
heightAboveSurface: 0.05
|
|
4811
4958
|
}
|
|
4812
4959
|
) }),
|
|
4813
|
-
/* @__PURE__ */
|
|
4814
|
-
|
|
4960
|
+
/* @__PURE__ */ jsx64(
|
|
4961
|
+
Cuboid40,
|
|
4815
4962
|
{
|
|
4816
4963
|
color: "#777",
|
|
4817
4964
|
size: [bodyWidth / 3, bodyLength10 - 0.075, 0.02],
|
|
@@ -4822,8 +4969,8 @@ var SOD323 = () => {
|
|
|
4822
4969
|
};
|
|
4823
4970
|
|
|
4824
4971
|
// lib/sod-323F.tsx
|
|
4825
|
-
import { Colorize as
|
|
4826
|
-
import { Fragment as
|
|
4972
|
+
import { Colorize as Colorize33, Cuboid as Cuboid41, Hull as Hull24, Translate as Translate27, Union as Union19 } from "jscad-fiber";
|
|
4973
|
+
import { Fragment as Fragment61, jsx as jsx65, jsxs as jsxs61 } from "react/jsx-runtime";
|
|
4827
4974
|
var SOD323F = () => {
|
|
4828
4975
|
const fullWidth = 1.7;
|
|
4829
4976
|
const bodyLength10 = 1.25;
|
|
@@ -4835,37 +4982,37 @@ var SOD323F = () => {
|
|
|
4835
4982
|
const rightPadCenterX = fullWidth / 2 + padLength / 2;
|
|
4836
4983
|
const taperOffset = 0.2;
|
|
4837
4984
|
const straightHeight = padThickness;
|
|
4838
|
-
return /* @__PURE__ */
|
|
4839
|
-
/* @__PURE__ */
|
|
4840
|
-
|
|
4985
|
+
return /* @__PURE__ */ jsxs61(Fragment61, { children: [
|
|
4986
|
+
/* @__PURE__ */ jsx65(
|
|
4987
|
+
Cuboid41,
|
|
4841
4988
|
{
|
|
4842
4989
|
color: "#ccc",
|
|
4843
4990
|
size: [padLength, padWidth, padThickness],
|
|
4844
4991
|
center: [leftPadCenterX, 0, padThickness / 2]
|
|
4845
4992
|
}
|
|
4846
4993
|
),
|
|
4847
|
-
/* @__PURE__ */
|
|
4848
|
-
|
|
4994
|
+
/* @__PURE__ */ jsx65(
|
|
4995
|
+
Cuboid41,
|
|
4849
4996
|
{
|
|
4850
4997
|
color: "#ccc",
|
|
4851
4998
|
size: [padLength, padWidth, padThickness],
|
|
4852
4999
|
center: [rightPadCenterX, 0, padThickness / 2]
|
|
4853
5000
|
}
|
|
4854
5001
|
),
|
|
4855
|
-
/* @__PURE__ */
|
|
4856
|
-
/* @__PURE__ */
|
|
4857
|
-
/* @__PURE__ */
|
|
4858
|
-
/* @__PURE__ */
|
|
4859
|
-
/* @__PURE__ */
|
|
4860
|
-
|
|
5002
|
+
/* @__PURE__ */ jsx65(Colorize33, { color: "#222", children: /* @__PURE__ */ jsxs61(Union19, { children: [
|
|
5003
|
+
/* @__PURE__ */ jsx65(Translate27, { z: straightHeight / 2, children: /* @__PURE__ */ jsx65(Cuboid41, { size: [fullWidth, bodyLength10, straightHeight] }) }),
|
|
5004
|
+
/* @__PURE__ */ jsxs61(Hull24, { children: [
|
|
5005
|
+
/* @__PURE__ */ jsx65(Translate27, { z: straightHeight, children: /* @__PURE__ */ jsx65(Cuboid41, { size: [fullWidth, bodyLength10, 0.01] }) }),
|
|
5006
|
+
/* @__PURE__ */ jsx65(Translate27, { z: bodyHeight, children: /* @__PURE__ */ jsx65(
|
|
5007
|
+
Cuboid41,
|
|
4861
5008
|
{
|
|
4862
5009
|
size: [fullWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
|
|
4863
5010
|
}
|
|
4864
5011
|
) })
|
|
4865
5012
|
] })
|
|
4866
5013
|
] }) }),
|
|
4867
|
-
/* @__PURE__ */
|
|
4868
|
-
|
|
5014
|
+
/* @__PURE__ */ jsx65(
|
|
5015
|
+
Cuboid41,
|
|
4869
5016
|
{
|
|
4870
5017
|
color: "#777",
|
|
4871
5018
|
size: [fullWidth / 3, bodyLength10 - taperOffset, 0.02],
|
|
@@ -4876,8 +5023,8 @@ var SOD323F = () => {
|
|
|
4876
5023
|
};
|
|
4877
5024
|
|
|
4878
5025
|
// lib/sod-323FL.tsx
|
|
4879
|
-
import { Colorize as
|
|
4880
|
-
import { Fragment as
|
|
5026
|
+
import { Colorize as Colorize34, Cuboid as Cuboid42 } from "jscad-fiber";
|
|
5027
|
+
import { Fragment as Fragment62, jsx as jsx66, jsxs as jsxs62 } from "react/jsx-runtime";
|
|
4881
5028
|
var SOD323FL = () => {
|
|
4882
5029
|
const fullWidth = 1.775;
|
|
4883
5030
|
const bodyLength10 = 1.25;
|
|
@@ -4888,24 +5035,24 @@ var SOD323FL = () => {
|
|
|
4888
5035
|
const leftPadCenterX = -fullWidth / 2 - padLength / 2 + 0.04;
|
|
4889
5036
|
const rightPadCenterX = fullWidth / 2 + padLength / 2 - 0.04;
|
|
4890
5037
|
const taperOffset = 0.2;
|
|
4891
|
-
return /* @__PURE__ */
|
|
4892
|
-
/* @__PURE__ */
|
|
4893
|
-
|
|
5038
|
+
return /* @__PURE__ */ jsxs62(Fragment62, { children: [
|
|
5039
|
+
/* @__PURE__ */ jsx66(
|
|
5040
|
+
Cuboid42,
|
|
4894
5041
|
{
|
|
4895
5042
|
color: "#ccc",
|
|
4896
5043
|
size: [padLength, padWidth, padThickness],
|
|
4897
5044
|
center: [leftPadCenterX, 0, padThickness / 2]
|
|
4898
5045
|
}
|
|
4899
5046
|
),
|
|
4900
|
-
/* @__PURE__ */
|
|
4901
|
-
|
|
5047
|
+
/* @__PURE__ */ jsx66(
|
|
5048
|
+
Cuboid42,
|
|
4902
5049
|
{
|
|
4903
5050
|
color: "#ccc",
|
|
4904
5051
|
size: [padLength, padWidth, padThickness],
|
|
4905
5052
|
center: [rightPadCenterX, 0, padThickness / 2]
|
|
4906
5053
|
}
|
|
4907
5054
|
),
|
|
4908
|
-
/* @__PURE__ */
|
|
5055
|
+
/* @__PURE__ */ jsx66(Colorize34, { color: "#222", children: /* @__PURE__ */ jsx66(
|
|
4909
5056
|
ChipBody,
|
|
4910
5057
|
{
|
|
4911
5058
|
width: fullWidth,
|
|
@@ -4918,8 +5065,8 @@ var SOD323FL = () => {
|
|
|
4918
5065
|
includeNotch: false
|
|
4919
5066
|
}
|
|
4920
5067
|
) }),
|
|
4921
|
-
/* @__PURE__ */
|
|
4922
|
-
|
|
5068
|
+
/* @__PURE__ */ jsx66(
|
|
5069
|
+
Cuboid42,
|
|
4923
5070
|
{
|
|
4924
5071
|
color: "#777",
|
|
4925
5072
|
size: [fullWidth / 3, bodyLength10 - 0.05, 0.02],
|
|
@@ -4930,30 +5077,30 @@ var SOD323FL = () => {
|
|
|
4930
5077
|
};
|
|
4931
5078
|
|
|
4932
5079
|
// lib/AxialCapacitor.tsx
|
|
4933
|
-
import { Colorize as
|
|
4934
|
-
import { Fragment as
|
|
5080
|
+
import { Colorize as Colorize35, Cylinder as Cylinder12, Rotate as Rotate12, Sphere as Sphere2, Translate as Translate29 } from "jscad-fiber";
|
|
5081
|
+
import { Fragment as Fragment63, jsx as jsx67, jsxs as jsxs63 } from "react/jsx-runtime";
|
|
4935
5082
|
var AxialCapacitor = ({ pitch = 10 }) => {
|
|
4936
5083
|
const heightToCenterOfCapacitor = 0.5 + 4 / 2;
|
|
4937
|
-
return /* @__PURE__ */
|
|
4938
|
-
/* @__PURE__ */
|
|
4939
|
-
/* @__PURE__ */
|
|
5084
|
+
return /* @__PURE__ */ jsxs63(Fragment63, { children: [
|
|
5085
|
+
/* @__PURE__ */ jsx67(Cylinder12, { height: 4, radius: 0.5, center: [-pitch / 2, 0, 0.5] }),
|
|
5086
|
+
/* @__PURE__ */ jsx67(
|
|
4940
5087
|
Sphere2,
|
|
4941
5088
|
{
|
|
4942
5089
|
radius: 0.5,
|
|
4943
5090
|
center: [-pitch / 2, 0, heightToCenterOfCapacitor]
|
|
4944
5091
|
}
|
|
4945
5092
|
),
|
|
4946
|
-
/* @__PURE__ */
|
|
4947
|
-
/* @__PURE__ */
|
|
4948
|
-
|
|
5093
|
+
/* @__PURE__ */ jsx67(Translate29, { x: -2.5, y: 0, z: heightToCenterOfCapacitor, children: /* @__PURE__ */ jsxs63(Rotate12, { rotation: [0, Math.PI / 2, 0], children: [
|
|
5094
|
+
/* @__PURE__ */ jsx67(
|
|
5095
|
+
Cylinder12,
|
|
4949
5096
|
{
|
|
4950
5097
|
height: pitch,
|
|
4951
5098
|
radius: 0.5,
|
|
4952
5099
|
center: [0, 0, heightToCenterOfCapacitor]
|
|
4953
5100
|
}
|
|
4954
5101
|
),
|
|
4955
|
-
/* @__PURE__ */
|
|
4956
|
-
|
|
5102
|
+
/* @__PURE__ */ jsx67(Colorize35, { color: "#d2b48c", children: /* @__PURE__ */ jsx67(
|
|
5103
|
+
Cylinder12,
|
|
4957
5104
|
{
|
|
4958
5105
|
height: 5,
|
|
4959
5106
|
radius: 1.3,
|
|
@@ -4961,14 +5108,14 @@ var AxialCapacitor = ({ pitch = 10 }) => {
|
|
|
4961
5108
|
}
|
|
4962
5109
|
) })
|
|
4963
5110
|
] }) }),
|
|
4964
|
-
/* @__PURE__ */
|
|
4965
|
-
/* @__PURE__ */
|
|
5111
|
+
/* @__PURE__ */ jsx67(Cylinder12, { height: 4, radius: 0.5, center: [pitch / 2, 0, 0.5] }),
|
|
5112
|
+
/* @__PURE__ */ jsx67(Sphere2, { radius: 0.5, center: [pitch / 2, 0, heightToCenterOfCapacitor] })
|
|
4966
5113
|
] });
|
|
4967
5114
|
};
|
|
4968
5115
|
|
|
4969
5116
|
// lib/stampboard.tsx
|
|
4970
|
-
import { Colorize as
|
|
4971
|
-
import { Fragment as
|
|
5117
|
+
import { Colorize as Colorize36, Cuboid as Cuboid43, Cylinder as Cylinder13, Subtract as Subtract9, Union as Union21 } from "jscad-fiber";
|
|
5118
|
+
import { Fragment as Fragment64, jsx as jsx68, jsxs as jsxs64 } from "react/jsx-runtime";
|
|
4972
5119
|
var StampBoard = ({
|
|
4973
5120
|
bodyWidth = 21,
|
|
4974
5121
|
boardThickness = 0.5,
|
|
@@ -5066,16 +5213,16 @@ var StampBoard = ({
|
|
|
5066
5213
|
}
|
|
5067
5214
|
}
|
|
5068
5215
|
}
|
|
5069
|
-
const boardBody = /* @__PURE__ */
|
|
5070
|
-
/* @__PURE__ */
|
|
5071
|
-
|
|
5216
|
+
const boardBody = /* @__PURE__ */ jsx68(Colorize36, { color: "#051a0a", children: /* @__PURE__ */ jsxs64(Subtract9, { children: [
|
|
5217
|
+
/* @__PURE__ */ jsx68(
|
|
5218
|
+
Cuboid43,
|
|
5072
5219
|
{
|
|
5073
5220
|
center: [0, 0, boardCenterZ],
|
|
5074
5221
|
size: [bodyWidth, bodyLength10, boardThickness]
|
|
5075
5222
|
}
|
|
5076
5223
|
),
|
|
5077
|
-
pads.map((pad, index) => /* @__PURE__ */
|
|
5078
|
-
|
|
5224
|
+
pads.map((pad, index) => /* @__PURE__ */ jsx68(
|
|
5225
|
+
Cuboid43,
|
|
5079
5226
|
{
|
|
5080
5227
|
center: [pad.x, pad.y, boardCenterZ],
|
|
5081
5228
|
size: [pad.pl + 0.01, pad.pw + 0.01, boardHeight]
|
|
@@ -5083,8 +5230,8 @@ var StampBoard = ({
|
|
|
5083
5230
|
index
|
|
5084
5231
|
))
|
|
5085
5232
|
] }) });
|
|
5086
|
-
const holePads = innerHoles && holes.map((hole, index) => /* @__PURE__ */
|
|
5087
|
-
|
|
5233
|
+
const holePads = innerHoles && holes.map((hole, index) => /* @__PURE__ */ jsx68(
|
|
5234
|
+
Cylinder13,
|
|
5088
5235
|
{
|
|
5089
5236
|
color: "black",
|
|
5090
5237
|
center: [hole.x, hole.y, boardCenterZ],
|
|
@@ -5093,19 +5240,19 @@ var StampBoard = ({
|
|
|
5093
5240
|
},
|
|
5094
5241
|
index
|
|
5095
5242
|
));
|
|
5096
|
-
const rectPads = pads.map((pad, index) => /* @__PURE__ */
|
|
5097
|
-
|
|
5243
|
+
const rectPads = pads.map((pad, index) => /* @__PURE__ */ jsx68(
|
|
5244
|
+
Cuboid43,
|
|
5098
5245
|
{
|
|
5099
5246
|
center: [pad.x, pad.y, boardCenterZ],
|
|
5100
5247
|
size: [pad.pl + 0.01, pad.pw + 0.01, boardHeight]
|
|
5101
5248
|
},
|
|
5102
5249
|
index
|
|
5103
5250
|
));
|
|
5104
|
-
return /* @__PURE__ */
|
|
5251
|
+
return /* @__PURE__ */ jsxs64(Fragment64, { children: [
|
|
5105
5252
|
boardBody,
|
|
5106
|
-
/* @__PURE__ */
|
|
5107
|
-
/* @__PURE__ */
|
|
5108
|
-
|
|
5253
|
+
/* @__PURE__ */ jsx68(Colorize36, { color: "#FFD700", children: innerHoles ? /* @__PURE__ */ jsxs64(Subtract9, { children: [
|
|
5254
|
+
/* @__PURE__ */ jsx68(Union21, { children: pads.map((pad, index) => /* @__PURE__ */ jsx68(
|
|
5255
|
+
Cuboid43,
|
|
5109
5256
|
{
|
|
5110
5257
|
center: [pad.x, pad.y, boardCenterZ],
|
|
5111
5258
|
size: [pad.pl + 0.01, pad.pw + 0.01, boardHeight]
|
|
@@ -5118,11 +5265,11 @@ var StampBoard = ({
|
|
|
5118
5265
|
};
|
|
5119
5266
|
|
|
5120
5267
|
// lib/MountedPcbModule.tsx
|
|
5121
|
-
import { Colorize as
|
|
5268
|
+
import { Colorize as Colorize38, Cuboid as Cuboid45, Cylinder as Cylinder14, Subtract as Subtract11 } from "jscad-fiber";
|
|
5122
5269
|
|
|
5123
5270
|
// lib/Screen.tsx
|
|
5124
|
-
import { Colorize as
|
|
5125
|
-
import { jsx as
|
|
5271
|
+
import { Colorize as Colorize37, Cuboid as Cuboid44, Subtract as Subtract10, Translate as Translate30 } from "jscad-fiber";
|
|
5272
|
+
import { jsx as jsx69, jsxs as jsxs65 } from "react/jsx-runtime";
|
|
5126
5273
|
var Screen = ({
|
|
5127
5274
|
width: width10 = 30,
|
|
5128
5275
|
height: height10 = 22,
|
|
@@ -5150,32 +5297,32 @@ var Screen = ({
|
|
|
5150
5297
|
const offsetX = offset?.x ?? 0;
|
|
5151
5298
|
const offsetY = offset?.y ?? 0;
|
|
5152
5299
|
const offsetZ = offset?.z ?? 0;
|
|
5153
|
-
return /* @__PURE__ */
|
|
5154
|
-
backBlockHeight > 0 && /* @__PURE__ */
|
|
5155
|
-
|
|
5300
|
+
return /* @__PURE__ */ jsxs65(Translate30, { offset: { x: offsetX, y: offsetY, z: offsetZ }, children: [
|
|
5301
|
+
backBlockHeight > 0 && /* @__PURE__ */ jsx69(Colorize37, { color: bezelColor, children: /* @__PURE__ */ jsx69(
|
|
5302
|
+
Cuboid44,
|
|
5156
5303
|
{
|
|
5157
5304
|
size: [w, h, backBlockHeight],
|
|
5158
5305
|
offset: [0, 0, backBlockHeight / 2]
|
|
5159
5306
|
}
|
|
5160
5307
|
) }),
|
|
5161
|
-
/* @__PURE__ */
|
|
5162
|
-
/* @__PURE__ */
|
|
5163
|
-
|
|
5308
|
+
/* @__PURE__ */ jsx69(Colorize37, { color: bezelColor, children: /* @__PURE__ */ jsxs65(Subtract10, { children: [
|
|
5309
|
+
/* @__PURE__ */ jsx69(
|
|
5310
|
+
Cuboid44,
|
|
5164
5311
|
{
|
|
5165
5312
|
size: [w, h, clampedBezelDepth],
|
|
5166
5313
|
offset: [0, 0, backBlockHeight + clampedBezelDepth / 2]
|
|
5167
5314
|
}
|
|
5168
5315
|
),
|
|
5169
|
-
/* @__PURE__ */
|
|
5170
|
-
|
|
5316
|
+
/* @__PURE__ */ jsx69(
|
|
5317
|
+
Cuboid44,
|
|
5171
5318
|
{
|
|
5172
5319
|
size: [innerWidth, innerHeight, clampedBezelDepth + 0.02],
|
|
5173
5320
|
offset: [0, 0, backBlockHeight + clampedBezelDepth / 2]
|
|
5174
5321
|
}
|
|
5175
5322
|
)
|
|
5176
5323
|
] }) }),
|
|
5177
|
-
/* @__PURE__ */
|
|
5178
|
-
|
|
5324
|
+
/* @__PURE__ */ jsx69(Colorize37, { color: screenColor, children: /* @__PURE__ */ jsx69(
|
|
5325
|
+
Cuboid44,
|
|
5179
5326
|
{
|
|
5180
5327
|
size: [innerWidth, innerHeight, screenThickness],
|
|
5181
5328
|
offset: [0, 0, backBlockHeight + screenThickness / 2]
|
|
@@ -5186,7 +5333,7 @@ var Screen = ({
|
|
|
5186
5333
|
var Display = Screen;
|
|
5187
5334
|
|
|
5188
5335
|
// lib/MountedPcbModule.tsx
|
|
5189
|
-
import { Fragment as
|
|
5336
|
+
import { Fragment as Fragment65, jsx as jsx70, jsxs as jsxs66 } from "react/jsx-runtime";
|
|
5190
5337
|
var MountedPcbModule = ({
|
|
5191
5338
|
numPins = 5,
|
|
5192
5339
|
rows = 1,
|
|
@@ -5287,16 +5434,16 @@ var MountedPcbModule = ({
|
|
|
5287
5434
|
const shortSidePinLength = 3;
|
|
5288
5435
|
const boardOffsetZ = nopin || female ? 0 : pinBodyHeight;
|
|
5289
5436
|
const boardTopZ = boardOffsetZ + boardThickness;
|
|
5290
|
-
const boardBody = /* @__PURE__ */
|
|
5291
|
-
/* @__PURE__ */
|
|
5292
|
-
|
|
5437
|
+
const boardBody = /* @__PURE__ */ jsx70(Colorize38, { color: "#008080", children: /* @__PURE__ */ jsxs66(Subtract11, { children: [
|
|
5438
|
+
/* @__PURE__ */ jsx70(
|
|
5439
|
+
Cuboid45,
|
|
5293
5440
|
{
|
|
5294
5441
|
center: [0, 0, boardCenterZ + boardOffsetZ],
|
|
5295
5442
|
size: [finalWidth, finalHeight, boardThickness]
|
|
5296
5443
|
}
|
|
5297
5444
|
),
|
|
5298
|
-
holePositions.map((hole, index) => /* @__PURE__ */
|
|
5299
|
-
|
|
5445
|
+
holePositions.map((hole, index) => /* @__PURE__ */ jsx70(
|
|
5446
|
+
Cylinder14,
|
|
5300
5447
|
{
|
|
5301
5448
|
center: [hole.x, hole.y, boardCenterZ + boardOffsetZ],
|
|
5302
5449
|
radius: od / 2,
|
|
@@ -5304,8 +5451,8 @@ var MountedPcbModule = ({
|
|
|
5304
5451
|
},
|
|
5305
5452
|
`hole-${index}`
|
|
5306
5453
|
)),
|
|
5307
|
-
pins.map((pin, index) => /* @__PURE__ */
|
|
5308
|
-
|
|
5454
|
+
pins.map((pin, index) => /* @__PURE__ */ jsx70(
|
|
5455
|
+
Cylinder14,
|
|
5309
5456
|
{
|
|
5310
5457
|
center: [pin.x, pin.y, boardCenterZ + boardOffsetZ],
|
|
5311
5458
|
radius: od / 2,
|
|
@@ -5314,17 +5461,17 @@ var MountedPcbModule = ({
|
|
|
5314
5461
|
`pin-hole-${index}`
|
|
5315
5462
|
))
|
|
5316
5463
|
] }) });
|
|
5317
|
-
const platedHoles = pins.map((pin, index) => /* @__PURE__ */
|
|
5318
|
-
/* @__PURE__ */
|
|
5319
|
-
|
|
5464
|
+
const platedHoles = pins.map((pin, index) => /* @__PURE__ */ jsx70(Colorize38, { color: "#FFD700", children: /* @__PURE__ */ jsxs66(Subtract11, { children: [
|
|
5465
|
+
/* @__PURE__ */ jsx70(
|
|
5466
|
+
Cylinder14,
|
|
5320
5467
|
{
|
|
5321
5468
|
center: [pin.x, pin.y, boardThickness / 2 + boardOffsetZ],
|
|
5322
5469
|
radius: od / 2,
|
|
5323
5470
|
height: boardThickness
|
|
5324
5471
|
}
|
|
5325
5472
|
),
|
|
5326
|
-
/* @__PURE__ */
|
|
5327
|
-
|
|
5473
|
+
/* @__PURE__ */ jsx70(
|
|
5474
|
+
Cylinder14,
|
|
5328
5475
|
{
|
|
5329
5476
|
center: [pin.x, pin.y, boardThickness / 2 + boardOffsetZ],
|
|
5330
5477
|
radius: id / 2,
|
|
@@ -5332,7 +5479,7 @@ var MountedPcbModule = ({
|
|
|
5332
5479
|
}
|
|
5333
5480
|
)
|
|
5334
5481
|
] }) }, `pin-${index}`));
|
|
5335
|
-
const headerPins = pins.map((pin, index) => /* @__PURE__ */
|
|
5482
|
+
const headerPins = pins.map((pin, index) => /* @__PURE__ */ jsx70(
|
|
5336
5483
|
PinHeader,
|
|
5337
5484
|
{
|
|
5338
5485
|
x: pin.x,
|
|
@@ -5345,7 +5492,7 @@ var MountedPcbModule = ({
|
|
|
5345
5492
|
},
|
|
5346
5493
|
`pin-3d-${index}`
|
|
5347
5494
|
));
|
|
5348
|
-
const femaleHeaderRow = pins.map((pin, index) => /* @__PURE__ */
|
|
5495
|
+
const femaleHeaderRow = pins.map((pin, index) => /* @__PURE__ */ jsx70(
|
|
5349
5496
|
FemaleHeader,
|
|
5350
5497
|
{
|
|
5351
5498
|
x: pin.x,
|
|
@@ -5354,12 +5501,12 @@ var MountedPcbModule = ({
|
|
|
5354
5501
|
},
|
|
5355
5502
|
`female-pin-3d-${index}`
|
|
5356
5503
|
));
|
|
5357
|
-
return /* @__PURE__ */
|
|
5504
|
+
return /* @__PURE__ */ jsxs66(Fragment65, { children: [
|
|
5358
5505
|
boardBody,
|
|
5359
5506
|
platedHoles,
|
|
5360
5507
|
!female && !nopin && headerPins,
|
|
5361
5508
|
female && femaleHeaderRow,
|
|
5362
|
-
showScreen && /* @__PURE__ */
|
|
5509
|
+
showScreen && /* @__PURE__ */ jsx70(
|
|
5363
5510
|
Screen,
|
|
5364
5511
|
{
|
|
5365
5512
|
width: screenWidth ?? finalWidth * 0.8,
|
|
@@ -5375,8 +5522,8 @@ var MountedPcbModule = ({
|
|
|
5375
5522
|
};
|
|
5376
5523
|
|
|
5377
5524
|
// lib/SOD723.tsx
|
|
5378
|
-
import { Colorize as
|
|
5379
|
-
import { Fragment as
|
|
5525
|
+
import { Colorize as Colorize39, Cuboid as Cuboid46, Hull as Hull26, Translate as Translate31, Union as Union22 } from "jscad-fiber";
|
|
5526
|
+
import { Fragment as Fragment66, jsx as jsx71, jsxs as jsxs67 } from "react/jsx-runtime";
|
|
5380
5527
|
var SOD723 = () => {
|
|
5381
5528
|
const fullWidth = 1.4;
|
|
5382
5529
|
const bodyLength10 = 0.6;
|
|
@@ -5389,37 +5536,37 @@ var SOD723 = () => {
|
|
|
5389
5536
|
const rightPadCenterX = bodyWidth / 2 - padLength / 2 + 0.15;
|
|
5390
5537
|
const taperOffset = 0.2;
|
|
5391
5538
|
const straightHeight = bodyHeight * 0.24;
|
|
5392
|
-
return /* @__PURE__ */
|
|
5393
|
-
/* @__PURE__ */
|
|
5394
|
-
|
|
5539
|
+
return /* @__PURE__ */ jsxs67(Fragment66, { children: [
|
|
5540
|
+
/* @__PURE__ */ jsx71(
|
|
5541
|
+
Cuboid46,
|
|
5395
5542
|
{
|
|
5396
5543
|
color: "#ccc",
|
|
5397
5544
|
size: [padLength, padWidth, padThickness],
|
|
5398
5545
|
center: [leftPadCenterX, 0, padThickness / 2]
|
|
5399
5546
|
}
|
|
5400
5547
|
),
|
|
5401
|
-
/* @__PURE__ */
|
|
5402
|
-
|
|
5548
|
+
/* @__PURE__ */ jsx71(
|
|
5549
|
+
Cuboid46,
|
|
5403
5550
|
{
|
|
5404
5551
|
color: "#ccc",
|
|
5405
5552
|
size: [padLength, padWidth, padThickness],
|
|
5406
5553
|
center: [rightPadCenterX, 0, padThickness / 2]
|
|
5407
5554
|
}
|
|
5408
5555
|
),
|
|
5409
|
-
/* @__PURE__ */
|
|
5410
|
-
/* @__PURE__ */
|
|
5411
|
-
/* @__PURE__ */
|
|
5412
|
-
/* @__PURE__ */
|
|
5413
|
-
/* @__PURE__ */
|
|
5414
|
-
|
|
5556
|
+
/* @__PURE__ */ jsx71(Colorize39, { color: "#222", children: /* @__PURE__ */ jsxs67(Union22, { children: [
|
|
5557
|
+
/* @__PURE__ */ jsx71(Translate31, { z: straightHeight / 2, children: /* @__PURE__ */ jsx71(Cuboid46, { size: [bodyWidth, bodyLength10, straightHeight] }) }),
|
|
5558
|
+
/* @__PURE__ */ jsxs67(Hull26, { children: [
|
|
5559
|
+
/* @__PURE__ */ jsx71(Translate31, { z: straightHeight, children: /* @__PURE__ */ jsx71(Cuboid46, { size: [bodyWidth, bodyLength10, 0.01] }) }),
|
|
5560
|
+
/* @__PURE__ */ jsx71(Translate31, { z: bodyHeight, children: /* @__PURE__ */ jsx71(
|
|
5561
|
+
Cuboid46,
|
|
5415
5562
|
{
|
|
5416
5563
|
size: [bodyWidth - taperOffset, bodyLength10 - taperOffset, 0.01]
|
|
5417
5564
|
}
|
|
5418
5565
|
) })
|
|
5419
5566
|
] })
|
|
5420
|
-
] }) }),
|
|
5421
|
-
/* @__PURE__ */
|
|
5422
|
-
|
|
5567
|
+
] }) }),
|
|
5568
|
+
/* @__PURE__ */ jsx71(
|
|
5569
|
+
Cuboid46,
|
|
5423
5570
|
{
|
|
5424
5571
|
color: "#777",
|
|
5425
5572
|
size: [fullWidth / 6, bodyLength10 - taperOffset, 0.02],
|
|
@@ -5432,14 +5579,14 @@ var SOD723_default = SOD723;
|
|
|
5432
5579
|
|
|
5433
5580
|
// lib/JSTZH1_5mm.tsx
|
|
5434
5581
|
import {
|
|
5435
|
-
Colorize as
|
|
5436
|
-
Cuboid as
|
|
5437
|
-
Cylinder as
|
|
5582
|
+
Colorize as Colorize40,
|
|
5583
|
+
Cuboid as Cuboid47,
|
|
5584
|
+
Cylinder as Cylinder15,
|
|
5438
5585
|
Rotate as Rotate13,
|
|
5439
|
-
Subtract as
|
|
5440
|
-
Translate as
|
|
5586
|
+
Subtract as Subtract12,
|
|
5587
|
+
Translate as Translate32
|
|
5441
5588
|
} from "jscad-fiber";
|
|
5442
|
-
import { Fragment as
|
|
5589
|
+
import { Fragment as Fragment67, jsx as jsx72, jsxs as jsxs68 } from "react/jsx-runtime";
|
|
5443
5590
|
var JSTZH1_5mm = ({
|
|
5444
5591
|
numPins = 7,
|
|
5445
5592
|
showPins = true,
|
|
@@ -5455,17 +5602,17 @@ var JSTZH1_5mm = ({
|
|
|
5455
5602
|
const pinLength = 6;
|
|
5456
5603
|
const bodyWidth = (numPins - 1) * pitch + 4;
|
|
5457
5604
|
const startX = -((numPins - 1) * pitch) / 2;
|
|
5458
|
-
return /* @__PURE__ */
|
|
5459
|
-
/* @__PURE__ */
|
|
5460
|
-
/* @__PURE__ */
|
|
5461
|
-
|
|
5605
|
+
return /* @__PURE__ */ jsxs68(Fragment67, { children: [
|
|
5606
|
+
/* @__PURE__ */ jsx72(Translate32, { offset: [0, 0, bodyHeight], children: /* @__PURE__ */ jsx72(Rotate13, { angles: [Math.PI, 0, 0], children: /* @__PURE__ */ jsx72(Colorize40, { color: bodyColor, children: /* @__PURE__ */ jsxs68(Subtract12, { children: [
|
|
5607
|
+
/* @__PURE__ */ jsx72(
|
|
5608
|
+
Cuboid47,
|
|
5462
5609
|
{
|
|
5463
5610
|
size: [bodyWidth, bodyDepth, bodyHeight],
|
|
5464
5611
|
center: [0, 0, bodyHeight / 2]
|
|
5465
5612
|
}
|
|
5466
5613
|
),
|
|
5467
|
-
/* @__PURE__ */
|
|
5468
|
-
|
|
5614
|
+
/* @__PURE__ */ jsx72(
|
|
5615
|
+
Cuboid47,
|
|
5469
5616
|
{
|
|
5470
5617
|
size: [
|
|
5471
5618
|
bodyWidth - wallThickness * 2,
|
|
@@ -5475,15 +5622,15 @@ var JSTZH1_5mm = ({
|
|
|
5475
5622
|
center: [0, 0, hollowHeight / 2]
|
|
5476
5623
|
}
|
|
5477
5624
|
),
|
|
5478
|
-
/* @__PURE__ */
|
|
5479
|
-
|
|
5625
|
+
/* @__PURE__ */ jsx72(
|
|
5626
|
+
Cuboid47,
|
|
5480
5627
|
{
|
|
5481
5628
|
size: [bodyWidth, bodyDepth / 3, hollowHeight],
|
|
5482
5629
|
center: [0, 0, hollowHeight / 6]
|
|
5483
5630
|
}
|
|
5484
5631
|
),
|
|
5485
|
-
/* @__PURE__ */
|
|
5486
|
-
|
|
5632
|
+
/* @__PURE__ */ jsx72(
|
|
5633
|
+
Cuboid47,
|
|
5487
5634
|
{
|
|
5488
5635
|
size: [
|
|
5489
5636
|
bodyWidth - wallThickness * 2,
|
|
@@ -5497,8 +5644,8 @@ var JSTZH1_5mm = ({
|
|
|
5497
5644
|
]
|
|
5498
5645
|
}
|
|
5499
5646
|
),
|
|
5500
|
-
/* @__PURE__ */
|
|
5501
|
-
|
|
5647
|
+
/* @__PURE__ */ jsx72(
|
|
5648
|
+
Cuboid47,
|
|
5502
5649
|
{
|
|
5503
5650
|
size: [
|
|
5504
5651
|
bodyWidth - wallThickness * 2,
|
|
@@ -5512,37 +5659,37 @@ var JSTZH1_5mm = ({
|
|
|
5512
5659
|
]
|
|
5513
5660
|
}
|
|
5514
5661
|
),
|
|
5515
|
-
/* @__PURE__ */
|
|
5516
|
-
|
|
5662
|
+
/* @__PURE__ */ jsx72(
|
|
5663
|
+
Cuboid47,
|
|
5517
5664
|
{
|
|
5518
5665
|
size: [1, wallThickness + 2, 1],
|
|
5519
5666
|
center: [-bodyWidth / 4, bodyDepth / 2, bodyHeight / 2]
|
|
5520
5667
|
}
|
|
5521
5668
|
),
|
|
5522
|
-
/* @__PURE__ */
|
|
5523
|
-
|
|
5669
|
+
/* @__PURE__ */ jsx72(
|
|
5670
|
+
Cuboid47,
|
|
5524
5671
|
{
|
|
5525
5672
|
size: [1, wallThickness + 3, 1],
|
|
5526
5673
|
center: [bodyWidth / 4, bodyDepth / 2, bodyHeight / 2]
|
|
5527
5674
|
}
|
|
5528
5675
|
),
|
|
5529
|
-
/* @__PURE__ */
|
|
5530
|
-
|
|
5676
|
+
/* @__PURE__ */ jsx72(
|
|
5677
|
+
Cuboid47,
|
|
5531
5678
|
{
|
|
5532
5679
|
size: [1, wallThickness + 2, 1],
|
|
5533
5680
|
center: [-bodyWidth / 4, -bodyDepth / 2, bodyHeight / 2]
|
|
5534
5681
|
}
|
|
5535
5682
|
),
|
|
5536
|
-
/* @__PURE__ */
|
|
5537
|
-
|
|
5683
|
+
/* @__PURE__ */ jsx72(
|
|
5684
|
+
Cuboid47,
|
|
5538
5685
|
{
|
|
5539
5686
|
size: [1, wallThickness + 3, 1],
|
|
5540
5687
|
center: [bodyWidth / 4, -bodyDepth / 2, bodyHeight / 2]
|
|
5541
5688
|
}
|
|
5542
5689
|
)
|
|
5543
5690
|
] }) }) }) }),
|
|
5544
|
-
showPins && Array.from({ length: numPins }).map((_, i) => /* @__PURE__ */
|
|
5545
|
-
|
|
5691
|
+
showPins && Array.from({ length: numPins }).map((_, i) => /* @__PURE__ */ jsx72(Colorize40, { color: pinColor, children: /* @__PURE__ */ jsx72(
|
|
5692
|
+
Cylinder15,
|
|
5546
5693
|
{
|
|
5547
5694
|
height: pinLength,
|
|
5548
5695
|
radius: 0.35,
|
|
@@ -5577,7 +5724,7 @@ var JSTZH1_5mm = ({
|
|
|
5577
5724
|
layers: ["top", "bottom"],
|
|
5578
5725
|
port_hints: [`${i + 1}`]
|
|
5579
5726
|
};
|
|
5580
|
-
return /* @__PURE__ */
|
|
5727
|
+
return /* @__PURE__ */ jsx72(
|
|
5581
5728
|
FootprintPlatedHole,
|
|
5582
5729
|
{
|
|
5583
5730
|
hole,
|
|
@@ -5591,14 +5738,14 @@ var JSTZH1_5mm = ({
|
|
|
5591
5738
|
|
|
5592
5739
|
// lib/JSTPH2_0mm.tsx
|
|
5593
5740
|
import {
|
|
5594
|
-
Colorize as
|
|
5595
|
-
Cuboid as
|
|
5596
|
-
Cylinder as
|
|
5741
|
+
Colorize as Colorize41,
|
|
5742
|
+
Cuboid as Cuboid48,
|
|
5743
|
+
Cylinder as Cylinder16,
|
|
5597
5744
|
Rotate as Rotate14,
|
|
5598
|
-
Subtract as
|
|
5599
|
-
Translate as
|
|
5745
|
+
Subtract as Subtract13,
|
|
5746
|
+
Translate as Translate33
|
|
5600
5747
|
} from "jscad-fiber";
|
|
5601
|
-
import { Fragment as
|
|
5748
|
+
import { Fragment as Fragment68, jsx as jsx73, jsxs as jsxs69 } from "react/jsx-runtime";
|
|
5602
5749
|
var JSTPH2_0mm = ({
|
|
5603
5750
|
numPins = 2,
|
|
5604
5751
|
showPins = true,
|
|
@@ -5622,17 +5769,17 @@ var JSTPH2_0mm = ({
|
|
|
5622
5769
|
const latchWindowInset = 0.7;
|
|
5623
5770
|
const topReliefWidth = 0.8;
|
|
5624
5771
|
const topReliefDepth = 0.65;
|
|
5625
|
-
return /* @__PURE__ */
|
|
5626
|
-
/* @__PURE__ */
|
|
5627
|
-
/* @__PURE__ */
|
|
5628
|
-
|
|
5772
|
+
return /* @__PURE__ */ jsxs69(Fragment68, { children: [
|
|
5773
|
+
/* @__PURE__ */ jsx73(Translate33, { offset: [0, 0, bodyHeight], children: /* @__PURE__ */ jsx73(Rotate14, { angles: [Math.PI, 0, 0], children: /* @__PURE__ */ jsx73(Colorize41, { color: bodyColor, children: /* @__PURE__ */ jsxs69(Subtract13, { children: [
|
|
5774
|
+
/* @__PURE__ */ jsx73(
|
|
5775
|
+
Cuboid48,
|
|
5629
5776
|
{
|
|
5630
5777
|
size: [bodyWidth, bodyDepth, bodyHeight],
|
|
5631
5778
|
center: [0, 0, bodyHeight / 2]
|
|
5632
5779
|
}
|
|
5633
5780
|
),
|
|
5634
|
-
/* @__PURE__ */
|
|
5635
|
-
|
|
5781
|
+
/* @__PURE__ */ jsx73(
|
|
5782
|
+
Cuboid48,
|
|
5636
5783
|
{
|
|
5637
5784
|
size: [
|
|
5638
5785
|
bodyWidth - wallThickness * 2,
|
|
@@ -5642,15 +5789,15 @@ var JSTPH2_0mm = ({
|
|
|
5642
5789
|
center: [0, 0, hollowHeight / 2]
|
|
5643
5790
|
}
|
|
5644
5791
|
),
|
|
5645
|
-
/* @__PURE__ */
|
|
5646
|
-
|
|
5792
|
+
/* @__PURE__ */ jsx73(
|
|
5793
|
+
Cuboid48,
|
|
5647
5794
|
{
|
|
5648
5795
|
size: [bodyWidth, bodyDepth / 3, hollowHeight],
|
|
5649
5796
|
center: [0, 0, hollowHeight / 6]
|
|
5650
5797
|
}
|
|
5651
5798
|
),
|
|
5652
|
-
/* @__PURE__ */
|
|
5653
|
-
|
|
5799
|
+
/* @__PURE__ */ jsx73(
|
|
5800
|
+
Cuboid48,
|
|
5654
5801
|
{
|
|
5655
5802
|
size: [
|
|
5656
5803
|
bodyWidth - wallThickness * 2,
|
|
@@ -5664,8 +5811,8 @@ var JSTPH2_0mm = ({
|
|
|
5664
5811
|
]
|
|
5665
5812
|
}
|
|
5666
5813
|
),
|
|
5667
|
-
/* @__PURE__ */
|
|
5668
|
-
|
|
5814
|
+
/* @__PURE__ */ jsx73(
|
|
5815
|
+
Cuboid48,
|
|
5669
5816
|
{
|
|
5670
5817
|
size: [
|
|
5671
5818
|
bodyWidth - wallThickness * 2,
|
|
@@ -5679,8 +5826,8 @@ var JSTPH2_0mm = ({
|
|
|
5679
5826
|
]
|
|
5680
5827
|
}
|
|
5681
5828
|
),
|
|
5682
|
-
/* @__PURE__ */
|
|
5683
|
-
|
|
5829
|
+
/* @__PURE__ */ jsx73(
|
|
5830
|
+
Cuboid48,
|
|
5684
5831
|
{
|
|
5685
5832
|
size: [
|
|
5686
5833
|
latchWindowWidth,
|
|
@@ -5690,8 +5837,8 @@ var JSTPH2_0mm = ({
|
|
|
5690
5837
|
center: [-bodyWidth / 2 + latchWindowInset, 0, bodyHeight / 2]
|
|
5691
5838
|
}
|
|
5692
5839
|
),
|
|
5693
|
-
/* @__PURE__ */
|
|
5694
|
-
|
|
5840
|
+
/* @__PURE__ */ jsx73(
|
|
5841
|
+
Cuboid48,
|
|
5695
5842
|
{
|
|
5696
5843
|
size: [
|
|
5697
5844
|
latchWindowWidth,
|
|
@@ -5701,37 +5848,37 @@ var JSTPH2_0mm = ({
|
|
|
5701
5848
|
center: [bodyWidth / 2 - latchWindowInset, 0, bodyHeight / 2]
|
|
5702
5849
|
}
|
|
5703
5850
|
),
|
|
5704
|
-
/* @__PURE__ */
|
|
5705
|
-
|
|
5851
|
+
/* @__PURE__ */ jsx73(
|
|
5852
|
+
Cuboid48,
|
|
5706
5853
|
{
|
|
5707
5854
|
size: [wallThickness * 3, topReliefWidth, topReliefDepth],
|
|
5708
5855
|
center: [-bodyWidth / 2, 0, topReliefDepth / 2]
|
|
5709
5856
|
}
|
|
5710
5857
|
),
|
|
5711
|
-
/* @__PURE__ */
|
|
5712
|
-
|
|
5858
|
+
/* @__PURE__ */ jsx73(Translate33, { offset: [-bodyWidth / 2, 0, topReliefDepth], children: /* @__PURE__ */ jsx73(Rotate14, { angles: [0, Math.PI / 2, 0], children: /* @__PURE__ */ jsx73(
|
|
5859
|
+
Cylinder16,
|
|
5713
5860
|
{
|
|
5714
5861
|
height: wallThickness * 3,
|
|
5715
5862
|
radius: topReliefWidth / 2
|
|
5716
5863
|
}
|
|
5717
5864
|
) }) }),
|
|
5718
|
-
/* @__PURE__ */
|
|
5719
|
-
|
|
5865
|
+
/* @__PURE__ */ jsx73(
|
|
5866
|
+
Cuboid48,
|
|
5720
5867
|
{
|
|
5721
5868
|
size: [wallThickness * 3, topReliefWidth, topReliefDepth],
|
|
5722
5869
|
center: [bodyWidth / 2, 0, topReliefDepth / 2]
|
|
5723
5870
|
}
|
|
5724
5871
|
),
|
|
5725
|
-
/* @__PURE__ */
|
|
5726
|
-
|
|
5872
|
+
/* @__PURE__ */ jsx73(Translate33, { offset: [bodyWidth / 2, 0, topReliefDepth], children: /* @__PURE__ */ jsx73(Rotate14, { angles: [0, Math.PI / 2, 0], children: /* @__PURE__ */ jsx73(
|
|
5873
|
+
Cylinder16,
|
|
5727
5874
|
{
|
|
5728
5875
|
height: wallThickness * 3,
|
|
5729
5876
|
radius: topReliefWidth / 2
|
|
5730
5877
|
}
|
|
5731
5878
|
) }) })
|
|
5732
5879
|
] }) }) }) }),
|
|
5733
|
-
showPins && Array.from({ length: numPins }).map((_, i) => /* @__PURE__ */
|
|
5734
|
-
|
|
5880
|
+
showPins && Array.from({ length: numPins }).map((_, i) => /* @__PURE__ */ jsx73(Colorize41, { color: pinColor, children: /* @__PURE__ */ jsx73(
|
|
5881
|
+
Cuboid48,
|
|
5735
5882
|
{
|
|
5736
5883
|
size: [pinThickness, pinThickness, pinLength],
|
|
5737
5884
|
center: [startX + i * pitch, 0, (pinTop - pinTailLength) / 2]
|
|
@@ -5765,7 +5912,7 @@ var JSTPH2_0mm = ({
|
|
|
5765
5912
|
layers: ["top", "bottom"],
|
|
5766
5913
|
port_hints: [`${i + 1}`]
|
|
5767
5914
|
};
|
|
5768
|
-
return /* @__PURE__ */
|
|
5915
|
+
return /* @__PURE__ */ jsx73(
|
|
5769
5916
|
FootprintPlatedHole,
|
|
5770
5917
|
{
|
|
5771
5918
|
hole,
|
|
@@ -5778,9 +5925,9 @@ var JSTPH2_0mm = ({
|
|
|
5778
5925
|
};
|
|
5779
5926
|
|
|
5780
5927
|
// lib/JSTXH2_5mm.tsx
|
|
5781
|
-
import { Colorize as
|
|
5928
|
+
import { Colorize as Colorize42, Cuboid as Cuboid49, Subtract as Subtract14, Translate as Translate34 } from "jscad-fiber";
|
|
5782
5929
|
import { fp as fp3 } from "@tscircuit/footprinter";
|
|
5783
|
-
import { Fragment as
|
|
5930
|
+
import { Fragment as Fragment69, jsx as jsx74, jsxs as jsxs70 } from "react/jsx-runtime";
|
|
5784
5931
|
var JSTXH2_5mm = ({
|
|
5785
5932
|
numPins = 4,
|
|
5786
5933
|
showPins = true,
|
|
@@ -5808,11 +5955,11 @@ var JSTXH2_5mm = ({
|
|
|
5808
5955
|
Math.max(3, (numPins - 1) * pitch * 0.4 + 2.2)
|
|
5809
5956
|
);
|
|
5810
5957
|
const lockNotchHeight = 2.4;
|
|
5811
|
-
return /* @__PURE__ */
|
|
5812
|
-
/* @__PURE__ */
|
|
5813
|
-
/* @__PURE__ */
|
|
5814
|
-
/* @__PURE__ */
|
|
5815
|
-
|
|
5958
|
+
return /* @__PURE__ */ jsxs70(Fragment69, { children: [
|
|
5959
|
+
/* @__PURE__ */ jsx74(Translate34, { offset: [0, 0, bodyHeight / 2], children: /* @__PURE__ */ jsx74(Colorize42, { color: bodyColor, children: /* @__PURE__ */ jsxs70(Subtract14, { children: [
|
|
5960
|
+
/* @__PURE__ */ jsx74(Cuboid49, { size: [bodyWidth, bodyDepth, bodyHeight] }),
|
|
5961
|
+
/* @__PURE__ */ jsx74(Translate34, { offset: [0, 0, (bodyHeight - hollowHeight) / 2 + 0.1], children: /* @__PURE__ */ jsx74(
|
|
5962
|
+
Cuboid49,
|
|
5816
5963
|
{
|
|
5817
5964
|
size: [
|
|
5818
5965
|
bodyWidth - wallThickness * 2,
|
|
@@ -5821,16 +5968,16 @@ var JSTXH2_5mm = ({
|
|
|
5821
5968
|
]
|
|
5822
5969
|
}
|
|
5823
5970
|
) }),
|
|
5824
|
-
/* @__PURE__ */
|
|
5825
|
-
|
|
5971
|
+
/* @__PURE__ */ jsx74(
|
|
5972
|
+
Translate34,
|
|
5826
5973
|
{
|
|
5827
5974
|
offset: [
|
|
5828
5975
|
0,
|
|
5829
5976
|
-bodyDepth / 2 + wallThickness / 2,
|
|
5830
5977
|
bodyHeight / 2 - lockNotchHeight / 2 + 0.1
|
|
5831
5978
|
],
|
|
5832
|
-
children: /* @__PURE__ */
|
|
5833
|
-
|
|
5979
|
+
children: /* @__PURE__ */ jsx74(
|
|
5980
|
+
Cuboid49,
|
|
5834
5981
|
{
|
|
5835
5982
|
size: [
|
|
5836
5983
|
lockNotchWidth,
|
|
@@ -5841,59 +5988,59 @@ var JSTXH2_5mm = ({
|
|
|
5841
5988
|
)
|
|
5842
5989
|
}
|
|
5843
5990
|
),
|
|
5844
|
-
/* @__PURE__ */
|
|
5845
|
-
|
|
5991
|
+
/* @__PURE__ */ jsx74(
|
|
5992
|
+
Translate34,
|
|
5846
5993
|
{
|
|
5847
5994
|
offset: [
|
|
5848
5995
|
-keySlotX,
|
|
5849
5996
|
-bodyDepth / 2 + wallThickness / 2,
|
|
5850
5997
|
bodyHeight / 2 - keySlotHeight / 2 + 0.1
|
|
5851
5998
|
],
|
|
5852
|
-
children: /* @__PURE__ */
|
|
5853
|
-
|
|
5999
|
+
children: /* @__PURE__ */ jsx74(
|
|
6000
|
+
Cuboid49,
|
|
5854
6001
|
{
|
|
5855
6002
|
size: [keySlotWidth, keySlotDepth, keySlotHeight + 0.2]
|
|
5856
6003
|
}
|
|
5857
6004
|
)
|
|
5858
6005
|
}
|
|
5859
6006
|
),
|
|
5860
|
-
/* @__PURE__ */
|
|
5861
|
-
|
|
6007
|
+
/* @__PURE__ */ jsx74(
|
|
6008
|
+
Translate34,
|
|
5862
6009
|
{
|
|
5863
6010
|
offset: [
|
|
5864
6011
|
keySlotX,
|
|
5865
6012
|
-bodyDepth / 2 + wallThickness / 2,
|
|
5866
6013
|
bodyHeight / 2 - keySlotHeight / 2 + 0.1
|
|
5867
6014
|
],
|
|
5868
|
-
children: /* @__PURE__ */
|
|
5869
|
-
|
|
6015
|
+
children: /* @__PURE__ */ jsx74(
|
|
6016
|
+
Cuboid49,
|
|
5870
6017
|
{
|
|
5871
6018
|
size: [keySlotWidth, keySlotDepth, keySlotHeight + 0.2]
|
|
5872
6019
|
}
|
|
5873
6020
|
)
|
|
5874
6021
|
}
|
|
5875
6022
|
),
|
|
5876
|
-
Array.from({ length: numPins }).map((_, i) => /* @__PURE__ */
|
|
5877
|
-
|
|
6023
|
+
Array.from({ length: numPins }).map((_, i) => /* @__PURE__ */ jsx74(
|
|
6024
|
+
Translate34,
|
|
5878
6025
|
{
|
|
5879
6026
|
offset: [
|
|
5880
6027
|
startX + i * pitch,
|
|
5881
6028
|
-bodyDepth / 2 + 0.3,
|
|
5882
6029
|
-bodyHeight / 2 + 0.25
|
|
5883
6030
|
],
|
|
5884
|
-
children: /* @__PURE__ */
|
|
6031
|
+
children: /* @__PURE__ */ jsx74(Cuboid49, { size: [1, 0.8, 0.5] })
|
|
5885
6032
|
},
|
|
5886
6033
|
`vent_${i}`
|
|
5887
6034
|
))
|
|
5888
6035
|
] }) }) }),
|
|
5889
|
-
showPins && Array.from({ length: numPins }).map((_, i) => /* @__PURE__ */
|
|
6036
|
+
showPins && Array.from({ length: numPins }).map((_, i) => /* @__PURE__ */ jsx74(Colorize42, { color: pinColor, children: /* @__PURE__ */ jsx74(Translate34, { offset: [startX + i * pitch, 0, pinLength / 2 - 3.4], children: /* @__PURE__ */ jsx74(Cuboid49, { size: [0.64, 0.64, pinLength] }) }) }, i)),
|
|
5890
6037
|
showFootprint && (() => {
|
|
5891
6038
|
try {
|
|
5892
6039
|
const circuitJson = fp3.string(`jst${numPins}_xh`).circuitJson();
|
|
5893
6040
|
const platedHoles = circuitJson.filter(
|
|
5894
6041
|
(e) => e.type === "pcb_plated_hole"
|
|
5895
6042
|
);
|
|
5896
|
-
return platedHoles.map((hole, i) => /* @__PURE__ */
|
|
6043
|
+
return platedHoles.map((hole, i) => /* @__PURE__ */ jsx74(
|
|
5897
6044
|
FootprintPlatedHole,
|
|
5898
6045
|
{
|
|
5899
6046
|
hole,
|
|
@@ -5911,8 +6058,8 @@ var JSTXH2_5mm = ({
|
|
|
5911
6058
|
// lib/JstSh.tsx
|
|
5912
6059
|
import { fp as fp4 } from "@tscircuit/footprinter";
|
|
5913
6060
|
import { mm } from "@tscircuit/mm";
|
|
5914
|
-
import { Colorize as
|
|
5915
|
-
import { jsx as
|
|
6061
|
+
import { Colorize as Colorize43, Cuboid as Cuboid50, Rotate as Rotate15, Subtract as Subtract15, Union as Union23 } from "jscad-fiber";
|
|
6062
|
+
import { jsx as jsx75, jsxs as jsxs71 } from "react/jsx-runtime";
|
|
5916
6063
|
function isJstShFootprint(footprint) {
|
|
5917
6064
|
const p = fp4.string(footprint).json();
|
|
5918
6065
|
if (p.fn !== "jst") return false;
|
|
@@ -5940,32 +6087,32 @@ var JstSh = ({ footprint = "jst6_sh" }) => {
|
|
|
5940
6087
|
const direction = mounts[0].y > rowY ? 1 : -1;
|
|
5941
6088
|
const y = rowY + direction * 1.8, width10 = n + 2, depth = 2.9, height10 = 4.2;
|
|
5942
6089
|
const pinY = y - direction * 0.25;
|
|
5943
|
-
return /* @__PURE__ */
|
|
5944
|
-
/* @__PURE__ */
|
|
5945
|
-
/* @__PURE__ */
|
|
5946
|
-
|
|
6090
|
+
return /* @__PURE__ */ jsxs71(Rotate15, { rotation: [0, 0, angle], children: [
|
|
6091
|
+
/* @__PURE__ */ jsx75(Colorize43, { color: "#e4e1d6", children: /* @__PURE__ */ jsxs71(Subtract15, { children: [
|
|
6092
|
+
/* @__PURE__ */ jsx75(
|
|
6093
|
+
Cuboid50,
|
|
5947
6094
|
{
|
|
5948
6095
|
size: [width10, depth, height10],
|
|
5949
6096
|
center: [x, y, height10 / 2 + 0.05]
|
|
5950
6097
|
}
|
|
5951
6098
|
),
|
|
5952
|
-
/* @__PURE__ */
|
|
5953
|
-
|
|
6099
|
+
/* @__PURE__ */ jsx75(
|
|
6100
|
+
Cuboid50,
|
|
5954
6101
|
{
|
|
5955
6102
|
size: [width10 - 1.3, 1.8, height10],
|
|
5956
6103
|
center: [x, y, height10 / 2 + 0.8]
|
|
5957
6104
|
}
|
|
5958
6105
|
),
|
|
5959
|
-
mounts.map((pad, i) => /* @__PURE__ */
|
|
5960
|
-
|
|
6106
|
+
mounts.map((pad, i) => /* @__PURE__ */ jsx75(
|
|
6107
|
+
Cuboid50,
|
|
5961
6108
|
{
|
|
5962
6109
|
size: [0.7, pad.height * 0.8, 1.5],
|
|
5963
6110
|
center: [pad.x, pad.y, 0.75]
|
|
5964
6111
|
},
|
|
5965
6112
|
`recess-${i}`
|
|
5966
6113
|
)),
|
|
5967
|
-
[-1, 1].map((side) => /* @__PURE__ */
|
|
5968
|
-
|
|
6114
|
+
[-1, 1].map((side) => /* @__PURE__ */ jsx75(
|
|
6115
|
+
Cuboid50,
|
|
5969
6116
|
{
|
|
5970
6117
|
size: [0.55, 0.6, 1],
|
|
5971
6118
|
center: [
|
|
@@ -5977,30 +6124,30 @@ var JstSh = ({ footprint = "jst6_sh" }) => {
|
|
|
5977
6124
|
side
|
|
5978
6125
|
))
|
|
5979
6126
|
] }) }),
|
|
5980
|
-
/* @__PURE__ */
|
|
6127
|
+
/* @__PURE__ */ jsxs71(Colorize43, { color: "#c6c7c9", children: [
|
|
5981
6128
|
signals.map((pad, i) => {
|
|
5982
6129
|
const tailY = pad.y - direction * pad.height * 0.4;
|
|
5983
|
-
return /* @__PURE__ */
|
|
5984
|
-
/* @__PURE__ */
|
|
5985
|
-
|
|
6130
|
+
return /* @__PURE__ */ jsxs71(Union23, { children: [
|
|
6131
|
+
/* @__PURE__ */ jsx75(
|
|
6132
|
+
Cuboid50,
|
|
5986
6133
|
{
|
|
5987
6134
|
size: [0.2, Math.abs(pinY - tailY) + 0.1, 0.2],
|
|
5988
6135
|
center: [pad.x, (pinY + tailY) / 2, 0.1]
|
|
5989
6136
|
}
|
|
5990
6137
|
),
|
|
5991
|
-
/* @__PURE__ */
|
|
6138
|
+
/* @__PURE__ */ jsx75(Cuboid50, { size: [0.2, 0.2, 3.45], center: [pad.x, pinY, 1.725] })
|
|
5992
6139
|
] }, i);
|
|
5993
6140
|
}),
|
|
5994
|
-
mounts.map((pad, i) => /* @__PURE__ */
|
|
5995
|
-
/* @__PURE__ */
|
|
5996
|
-
|
|
6141
|
+
mounts.map((pad, i) => /* @__PURE__ */ jsxs71(Union23, { children: [
|
|
6142
|
+
/* @__PURE__ */ jsx75(
|
|
6143
|
+
Cuboid50,
|
|
5997
6144
|
{
|
|
5998
6145
|
size: [0.7, pad.height * 0.75, 0.2],
|
|
5999
6146
|
center: [pad.x, pad.y, 0.1]
|
|
6000
6147
|
}
|
|
6001
6148
|
),
|
|
6002
|
-
/* @__PURE__ */
|
|
6003
|
-
|
|
6149
|
+
/* @__PURE__ */ jsx75(
|
|
6150
|
+
Cuboid50,
|
|
6004
6151
|
{
|
|
6005
6152
|
size: [0.2, pad.height * 0.6, 1.35],
|
|
6006
6153
|
center: [pad.x, pad.y, 0.675]
|
|
@@ -6013,15 +6160,15 @@ var JstSh = ({ footprint = "jst6_sh" }) => {
|
|
|
6013
6160
|
|
|
6014
6161
|
// lib/FPC.tsx
|
|
6015
6162
|
import {
|
|
6016
|
-
Colorize as
|
|
6017
|
-
Cuboid as
|
|
6018
|
-
Cylinder as
|
|
6163
|
+
Colorize as Colorize44,
|
|
6164
|
+
Cuboid as Cuboid51,
|
|
6165
|
+
Cylinder as Cylinder17,
|
|
6019
6166
|
Rotate as Rotate16,
|
|
6020
6167
|
RoundedCuboid as RoundedCuboid3,
|
|
6021
|
-
Subtract as
|
|
6022
|
-
Translate as
|
|
6168
|
+
Subtract as Subtract16,
|
|
6169
|
+
Translate as Translate35
|
|
6023
6170
|
} from "jscad-fiber";
|
|
6024
|
-
import { Fragment as
|
|
6171
|
+
import { Fragment as Fragment70, jsx as jsx76, jsxs as jsxs72 } from "react/jsx-runtime";
|
|
6025
6172
|
var HOUSING_COLOR = "#303339";
|
|
6026
6173
|
var HOUSING_SHADOW = "#1f2227";
|
|
6027
6174
|
var ACTUATOR_COLOR = "#eee8d8";
|
|
@@ -6108,9 +6255,9 @@ var FPC = ({
|
|
|
6108
6255
|
const clipCapX = bodyWidth / 2 - 0.23;
|
|
6109
6256
|
const sideBossX = bodyWidth / 2 - 0.32;
|
|
6110
6257
|
const sideBossWidth = 0.68;
|
|
6111
|
-
return /* @__PURE__ */
|
|
6112
|
-
[-1, 1].map((direction) => /* @__PURE__ */
|
|
6113
|
-
|
|
6258
|
+
return /* @__PURE__ */ jsxs72(Fragment70, { children: [
|
|
6259
|
+
[-1, 1].map((direction) => /* @__PURE__ */ jsx76(
|
|
6260
|
+
Cuboid51,
|
|
6114
6261
|
{
|
|
6115
6262
|
color: TIN_COLOR,
|
|
6116
6263
|
center: [direction * endClipX, mountY, 0.07],
|
|
@@ -6118,8 +6265,8 @@ var FPC = ({
|
|
|
6118
6265
|
},
|
|
6119
6266
|
`mount-pad:${direction}`
|
|
6120
6267
|
)),
|
|
6121
|
-
contactRows.map((contact) => /* @__PURE__ */
|
|
6122
|
-
|
|
6268
|
+
contactRows.map((contact) => /* @__PURE__ */ jsx76(
|
|
6269
|
+
Cuboid51,
|
|
6123
6270
|
{
|
|
6124
6271
|
color: TIN_COLOR,
|
|
6125
6272
|
center: [contact.x, terminalCenterY, 0.065],
|
|
@@ -6127,7 +6274,7 @@ var FPC = ({
|
|
|
6127
6274
|
},
|
|
6128
6275
|
`terminal:${contact.index}`
|
|
6129
6276
|
)),
|
|
6130
|
-
/* @__PURE__ */
|
|
6277
|
+
/* @__PURE__ */ jsx76(
|
|
6131
6278
|
RoundedCuboid3,
|
|
6132
6279
|
{
|
|
6133
6280
|
color: HOUSING_SHADOW,
|
|
@@ -6136,8 +6283,8 @@ var FPC = ({
|
|
|
6136
6283
|
roundRadius: 0.1
|
|
6137
6284
|
}
|
|
6138
6285
|
),
|
|
6139
|
-
/* @__PURE__ */
|
|
6140
|
-
/* @__PURE__ */
|
|
6286
|
+
/* @__PURE__ */ jsx76(Colorize44, { color: HOUSING_COLOR, children: /* @__PURE__ */ jsxs72(Subtract16, { children: [
|
|
6287
|
+
/* @__PURE__ */ jsx76(
|
|
6141
6288
|
RoundedCuboid3,
|
|
6142
6289
|
{
|
|
6143
6290
|
center: [0, housingCenterY, housingBaseHeight + housingHeight / 2],
|
|
@@ -6145,22 +6292,22 @@ var FPC = ({
|
|
|
6145
6292
|
roundRadius: 0.14
|
|
6146
6293
|
}
|
|
6147
6294
|
),
|
|
6148
|
-
/* @__PURE__ */
|
|
6149
|
-
|
|
6295
|
+
/* @__PURE__ */ jsx76(
|
|
6296
|
+
Cuboid51,
|
|
6150
6297
|
{
|
|
6151
6298
|
center: [0, throatCenterY, throatCenterZ],
|
|
6152
6299
|
size: [openingWidth, throatDepth, throatHeight]
|
|
6153
6300
|
}
|
|
6154
6301
|
),
|
|
6155
|
-
/* @__PURE__ */
|
|
6156
|
-
|
|
6302
|
+
/* @__PURE__ */ jsx76(
|
|
6303
|
+
Cuboid51,
|
|
6157
6304
|
{
|
|
6158
6305
|
center: [0, actuatorCenterY, overallHeight - actuatorHeight * 0.72],
|
|
6159
6306
|
size: [actuatorWidth - 0.32, actuatorDepth - 0.16, actuatorHeight]
|
|
6160
6307
|
}
|
|
6161
6308
|
)
|
|
6162
6309
|
] }) }),
|
|
6163
|
-
contactRows.map((contact) => /* @__PURE__ */
|
|
6310
|
+
contactRows.map((contact) => /* @__PURE__ */ jsx76(
|
|
6164
6311
|
RoundedCuboid3,
|
|
6165
6312
|
{
|
|
6166
6313
|
color: TIN_HIGHLIGHT,
|
|
@@ -6170,8 +6317,8 @@ var FPC = ({
|
|
|
6170
6317
|
},
|
|
6171
6318
|
`spring:${contact.index}`
|
|
6172
6319
|
)),
|
|
6173
|
-
contactRows.map((contact) => /* @__PURE__ */
|
|
6174
|
-
|
|
6320
|
+
contactRows.map((contact) => /* @__PURE__ */ jsx76(
|
|
6321
|
+
Cuboid51,
|
|
6175
6322
|
{
|
|
6176
6323
|
color: TIN_COLOR,
|
|
6177
6324
|
center: [
|
|
@@ -6183,8 +6330,8 @@ var FPC = ({
|
|
|
6183
6330
|
},
|
|
6184
6331
|
`terminal-rise:${contact.index}`
|
|
6185
6332
|
)),
|
|
6186
|
-
/* @__PURE__ */
|
|
6187
|
-
|
|
6333
|
+
/* @__PURE__ */ jsx76(
|
|
6334
|
+
Cuboid51,
|
|
6188
6335
|
{
|
|
6189
6336
|
color: HOUSING_SHADOW,
|
|
6190
6337
|
center: [
|
|
@@ -6195,7 +6342,7 @@ var FPC = ({
|
|
|
6195
6342
|
size: [openingWidth + 0.18, 0.16, 0.8]
|
|
6196
6343
|
}
|
|
6197
6344
|
),
|
|
6198
|
-
/* @__PURE__ */
|
|
6345
|
+
/* @__PURE__ */ jsx76(
|
|
6199
6346
|
RoundedCuboid3,
|
|
6200
6347
|
{
|
|
6201
6348
|
color: ACTUATOR_COLOR,
|
|
@@ -6204,8 +6351,8 @@ var FPC = ({
|
|
|
6204
6351
|
roundRadius: 0.11
|
|
6205
6352
|
}
|
|
6206
6353
|
),
|
|
6207
|
-
/* @__PURE__ */
|
|
6208
|
-
|
|
6354
|
+
/* @__PURE__ */ jsx76(
|
|
6355
|
+
Cuboid51,
|
|
6209
6356
|
{
|
|
6210
6357
|
color: ACTUATOR_HIGHLIGHT,
|
|
6211
6358
|
center: [
|
|
@@ -6216,7 +6363,7 @@ var FPC = ({
|
|
|
6216
6363
|
size: [actuatorWidth - 0.36, 0.24, 0.07]
|
|
6217
6364
|
}
|
|
6218
6365
|
),
|
|
6219
|
-
[-1, 1].map((direction) => /* @__PURE__ */
|
|
6366
|
+
[-1, 1].map((direction) => /* @__PURE__ */ jsx76(
|
|
6220
6367
|
RoundedCuboid3,
|
|
6221
6368
|
{
|
|
6222
6369
|
color: ACTUATOR_COLOR,
|
|
@@ -6226,14 +6373,14 @@ var FPC = ({
|
|
|
6226
6373
|
},
|
|
6227
6374
|
`actuator-ear:${direction}`
|
|
6228
6375
|
)),
|
|
6229
|
-
[-1, 1].map((direction) => /* @__PURE__ */
|
|
6230
|
-
|
|
6376
|
+
[-1, 1].map((direction) => /* @__PURE__ */ jsx76(
|
|
6377
|
+
Translate35,
|
|
6231
6378
|
{
|
|
6232
6379
|
x: direction * sideBossX,
|
|
6233
6380
|
y: hingeY,
|
|
6234
6381
|
z: hingeZ,
|
|
6235
|
-
children: /* @__PURE__ */
|
|
6236
|
-
|
|
6382
|
+
children: /* @__PURE__ */ jsx76(Rotate16, { rotation: [0, Math.PI / 2, 0], children: /* @__PURE__ */ jsx76(
|
|
6383
|
+
Cylinder17,
|
|
6237
6384
|
{
|
|
6238
6385
|
color: ACTUATOR_HIGHLIGHT,
|
|
6239
6386
|
height: sideBossWidth + 0.12,
|
|
@@ -6243,7 +6390,7 @@ var FPC = ({
|
|
|
6243
6390
|
},
|
|
6244
6391
|
`hinge:${direction}`
|
|
6245
6392
|
)),
|
|
6246
|
-
[-1, 1].map((direction) => /* @__PURE__ */
|
|
6393
|
+
[-1, 1].map((direction) => /* @__PURE__ */ jsx76(
|
|
6247
6394
|
RoundedCuboid3,
|
|
6248
6395
|
{
|
|
6249
6396
|
color: HOLD_DOWN_COLOR,
|
|
@@ -6253,7 +6400,7 @@ var FPC = ({
|
|
|
6253
6400
|
},
|
|
6254
6401
|
`hold-down-wall:${direction}`
|
|
6255
6402
|
)),
|
|
6256
|
-
[-1, 1].map((direction) => /* @__PURE__ */
|
|
6403
|
+
[-1, 1].map((direction) => /* @__PURE__ */ jsx76(
|
|
6257
6404
|
RoundedCuboid3,
|
|
6258
6405
|
{
|
|
6259
6406
|
color: HOLD_DOWN_HIGHLIGHT,
|
|
@@ -6263,16 +6410,16 @@ var FPC = ({
|
|
|
6263
6410
|
},
|
|
6264
6411
|
`hold-down-cap:${direction}`
|
|
6265
6412
|
)),
|
|
6266
|
-
/* @__PURE__ */
|
|
6267
|
-
|
|
6413
|
+
/* @__PURE__ */ jsx76(
|
|
6414
|
+
Cuboid51,
|
|
6268
6415
|
{
|
|
6269
6416
|
color: HOUSING_SHADOW,
|
|
6270
6417
|
center: [0, housingCenterY, 0.025],
|
|
6271
6418
|
size: [openingWidth + 0.7, housingDepth * 0.58, 0.05]
|
|
6272
6419
|
}
|
|
6273
6420
|
),
|
|
6274
|
-
/* @__PURE__ */
|
|
6275
|
-
|
|
6421
|
+
/* @__PURE__ */ jsx76(
|
|
6422
|
+
Cuboid51,
|
|
6276
6423
|
{
|
|
6277
6424
|
color: HOUSING_SHADOW,
|
|
6278
6425
|
center: [
|
|
@@ -6287,8 +6434,8 @@ var FPC = ({
|
|
|
6287
6434
|
};
|
|
6288
6435
|
|
|
6289
6436
|
// lib/SmdPinHeader.tsx
|
|
6290
|
-
import { Colorize as
|
|
6291
|
-
import { Fragment as
|
|
6437
|
+
import { Colorize as Colorize45, Cuboid as Cuboid52, Hull as Hull27, Translate as Translate36 } from "jscad-fiber";
|
|
6438
|
+
import { Fragment as Fragment71, jsx as jsx77, jsxs as jsxs73 } from "react/jsx-runtime";
|
|
6292
6439
|
var SmdPinHeader = ({
|
|
6293
6440
|
numberOfPins,
|
|
6294
6441
|
pitch = 2.54,
|
|
@@ -6303,52 +6450,52 @@ var SmdPinHeader = ({
|
|
|
6303
6450
|
const bodyTop = standoffHeight + bodyHeight;
|
|
6304
6451
|
const tailLength = tailSpan / 2;
|
|
6305
6452
|
const tipChamferHeight = pinThickness * 0.35;
|
|
6306
|
-
return /* @__PURE__ */
|
|
6453
|
+
return /* @__PURE__ */ jsx77(Fragment71, { children: Array.from({ length: numberOfPins }, (_, index) => {
|
|
6307
6454
|
const x = xStart + index * pitch;
|
|
6308
6455
|
const tailDirection = index % 2 === 0 ? 1 : -1;
|
|
6309
6456
|
const postBodyLength = matingPinLength - tipChamferHeight;
|
|
6310
6457
|
const verticalTailLength = standoffHeight - pinThickness / 2;
|
|
6311
|
-
return /* @__PURE__ */
|
|
6312
|
-
/* @__PURE__ */
|
|
6313
|
-
|
|
6458
|
+
return /* @__PURE__ */ jsxs73(Translate36, { x, children: [
|
|
6459
|
+
/* @__PURE__ */ jsx77(
|
|
6460
|
+
Cuboid52,
|
|
6314
6461
|
{
|
|
6315
6462
|
color: "#222",
|
|
6316
6463
|
size: [pitch, bodyWidth, bodyHeight],
|
|
6317
6464
|
center: [0, 0, standoffHeight + bodyHeight / 2]
|
|
6318
6465
|
}
|
|
6319
6466
|
),
|
|
6320
|
-
/* @__PURE__ */
|
|
6321
|
-
/* @__PURE__ */
|
|
6322
|
-
|
|
6467
|
+
/* @__PURE__ */ jsxs73(Colorize45, { color: "#d4af37", children: [
|
|
6468
|
+
/* @__PURE__ */ jsx77(
|
|
6469
|
+
Cuboid52,
|
|
6323
6470
|
{
|
|
6324
6471
|
size: [pinThickness, tailLength, pinThickness],
|
|
6325
6472
|
center: [0, tailDirection * (tailLength / 2), pinThickness / 2]
|
|
6326
6473
|
}
|
|
6327
6474
|
),
|
|
6328
|
-
/* @__PURE__ */
|
|
6329
|
-
|
|
6475
|
+
/* @__PURE__ */ jsx77(
|
|
6476
|
+
Cuboid52,
|
|
6330
6477
|
{
|
|
6331
6478
|
size: [pinThickness, pinThickness, verticalTailLength],
|
|
6332
6479
|
center: [0, 0, pinThickness / 2 + verticalTailLength / 2]
|
|
6333
6480
|
}
|
|
6334
6481
|
),
|
|
6335
|
-
/* @__PURE__ */
|
|
6336
|
-
|
|
6482
|
+
/* @__PURE__ */ jsx77(
|
|
6483
|
+
Cuboid52,
|
|
6337
6484
|
{
|
|
6338
6485
|
size: [pinThickness, pinThickness, postBodyLength],
|
|
6339
6486
|
center: [0, 0, bodyTop + postBodyLength / 2]
|
|
6340
6487
|
}
|
|
6341
6488
|
),
|
|
6342
|
-
/* @__PURE__ */
|
|
6343
|
-
/* @__PURE__ */
|
|
6344
|
-
|
|
6489
|
+
/* @__PURE__ */ jsxs73(Hull27, { children: [
|
|
6490
|
+
/* @__PURE__ */ jsx77(
|
|
6491
|
+
Cuboid52,
|
|
6345
6492
|
{
|
|
6346
6493
|
size: [pinThickness, pinThickness, 0.01],
|
|
6347
6494
|
center: [0, 0, bodyTop + postBodyLength]
|
|
6348
6495
|
}
|
|
6349
6496
|
),
|
|
6350
|
-
/* @__PURE__ */
|
|
6351
|
-
|
|
6497
|
+
/* @__PURE__ */ jsx77(
|
|
6498
|
+
Cuboid52,
|
|
6352
6499
|
{
|
|
6353
6500
|
size: [pinThickness * 0.65, pinThickness * 0.65, 0.01],
|
|
6354
6501
|
center: [0, 0, bodyTop + matingPinLength]
|
|
@@ -6392,7 +6539,7 @@ var getSmtPadRects = (footprint) => {
|
|
|
6392
6539
|
};
|
|
6393
6540
|
|
|
6394
6541
|
// lib/GullWingBody.tsx
|
|
6395
|
-
import { Fragment as
|
|
6542
|
+
import { Fragment as Fragment72, jsx as jsx78, jsxs as jsxs74 } from "react/jsx-runtime";
|
|
6396
6543
|
var GullWingBody = ({
|
|
6397
6544
|
bodyWidth,
|
|
6398
6545
|
bodyLength: bodyLength10,
|
|
@@ -6404,8 +6551,8 @@ var GullWingBody = ({
|
|
|
6404
6551
|
const centerX = pads.reduce((sum, pad) => sum + pad.x, 0) / (pads.length || 1);
|
|
6405
6552
|
const centerY = pads.reduce((sum, pad) => sum + pad.y, 0) / (pads.length || 1);
|
|
6406
6553
|
const leadHeight = bodyHeight * leadHeightRatio;
|
|
6407
|
-
return /* @__PURE__ */
|
|
6408
|
-
/* @__PURE__ */
|
|
6554
|
+
return /* @__PURE__ */ jsxs74(Fragment72, { children: [
|
|
6555
|
+
/* @__PURE__ */ jsx78(
|
|
6409
6556
|
ChipBody,
|
|
6410
6557
|
{
|
|
6411
6558
|
center: { x: centerX, y: centerY, z: 0 },
|
|
@@ -6421,7 +6568,7 @@ var GullWingBody = ({
|
|
|
6421
6568
|
const outerX = pad.x + side * padWidth / 2;
|
|
6422
6569
|
const run = Math.max(Math.abs(outerX - centerX) - bodyWidth / 2, 0.1);
|
|
6423
6570
|
const overlap = Math.min(0.15, bodyWidth * 0.15);
|
|
6424
|
-
return /* @__PURE__ */
|
|
6571
|
+
return /* @__PURE__ */ jsx78(
|
|
6425
6572
|
SmdChipLead,
|
|
6426
6573
|
{
|
|
6427
6574
|
rotation: side > 0 ? Math.PI : 0,
|
|
@@ -6443,8 +6590,8 @@ var GullWingBody = ({
|
|
|
6443
6590
|
};
|
|
6444
6591
|
|
|
6445
6592
|
// lib/ParametricChip.tsx
|
|
6446
|
-
import { Cuboid as
|
|
6447
|
-
import { Fragment as
|
|
6593
|
+
import { Cuboid as Cuboid53 } from "jscad-fiber";
|
|
6594
|
+
import { Fragment as Fragment73, jsx as jsx79, jsxs as jsxs75 } from "react/jsx-runtime";
|
|
6448
6595
|
var ParametricChip = ({
|
|
6449
6596
|
padPitch,
|
|
6450
6597
|
padHeight,
|
|
@@ -6455,25 +6602,25 @@ var ParametricChip = ({
|
|
|
6455
6602
|
const height10 = width10;
|
|
6456
6603
|
const terminatorWidth9 = fullLength10 * 0.2;
|
|
6457
6604
|
const bodyLength10 = fullLength10 - terminatorWidth9 * 2;
|
|
6458
|
-
return /* @__PURE__ */
|
|
6459
|
-
/* @__PURE__ */
|
|
6460
|
-
|
|
6605
|
+
return /* @__PURE__ */ jsxs75(Fragment73, { children: [
|
|
6606
|
+
/* @__PURE__ */ jsx79(
|
|
6607
|
+
Cuboid53,
|
|
6461
6608
|
{
|
|
6462
6609
|
size: [bodyLength10, width10, height10],
|
|
6463
6610
|
offset: [0, 0, height10 / 2],
|
|
6464
6611
|
color
|
|
6465
6612
|
}
|
|
6466
6613
|
),
|
|
6467
|
-
/* @__PURE__ */
|
|
6468
|
-
|
|
6614
|
+
/* @__PURE__ */ jsx79(
|
|
6615
|
+
Cuboid53,
|
|
6469
6616
|
{
|
|
6470
6617
|
size: [terminatorWidth9, height10, width10],
|
|
6471
6618
|
offset: [fullLength10 / 2 - terminatorWidth9 / 2, 0, height10 / 2],
|
|
6472
6619
|
color: "#ccc"
|
|
6473
6620
|
}
|
|
6474
6621
|
),
|
|
6475
|
-
/* @__PURE__ */
|
|
6476
|
-
|
|
6622
|
+
/* @__PURE__ */ jsx79(
|
|
6623
|
+
Cuboid53,
|
|
6477
6624
|
{
|
|
6478
6625
|
size: [terminatorWidth9, height10, width10],
|
|
6479
6626
|
offset: [-fullLength10 / 2 + terminatorWidth9 / 2, 0, height10 / 2],
|
|
@@ -6485,14 +6632,14 @@ var ParametricChip = ({
|
|
|
6485
6632
|
|
|
6486
6633
|
// lib/Led5050.tsx
|
|
6487
6634
|
import {
|
|
6488
|
-
Colorize as
|
|
6489
|
-
Cuboid as
|
|
6490
|
-
Cylinder as
|
|
6635
|
+
Colorize as Colorize46,
|
|
6636
|
+
Cuboid as Cuboid54,
|
|
6637
|
+
Cylinder as Cylinder18,
|
|
6491
6638
|
Rotate as Rotate17,
|
|
6492
|
-
Subtract as
|
|
6493
|
-
Translate as
|
|
6639
|
+
Subtract as Subtract17,
|
|
6640
|
+
Translate as Translate37
|
|
6494
6641
|
} from "jscad-fiber";
|
|
6495
|
-
import { Fragment as
|
|
6642
|
+
import { Fragment as Fragment74, jsx as jsx80, jsxs as jsxs76 } from "react/jsx-runtime";
|
|
6496
6643
|
var Led5050 = ({
|
|
6497
6644
|
color = "#ffff00",
|
|
6498
6645
|
bodyColor = "#ffffff",
|
|
@@ -6513,10 +6660,10 @@ var Led5050 = ({
|
|
|
6513
6660
|
const cornerCutDepth = 0.3;
|
|
6514
6661
|
const leadYPositions = [-1.7, 0, 1.7];
|
|
6515
6662
|
const leadSides = [-1, 1];
|
|
6516
|
-
return /* @__PURE__ */
|
|
6663
|
+
return /* @__PURE__ */ jsxs76(Fragment74, { children: [
|
|
6517
6664
|
leadYPositions.flatMap(
|
|
6518
|
-
(y) => leadSides.map((side) => /* @__PURE__ */
|
|
6519
|
-
|
|
6665
|
+
(y) => leadSides.map((side) => /* @__PURE__ */ jsx80(
|
|
6666
|
+
Cuboid54,
|
|
6520
6667
|
{
|
|
6521
6668
|
color: leadColor,
|
|
6522
6669
|
size: [leadLength, leadWidth, leadThickness],
|
|
@@ -6525,8 +6672,8 @@ var Led5050 = ({
|
|
|
6525
6672
|
`${side}-${y}`
|
|
6526
6673
|
))
|
|
6527
6674
|
),
|
|
6528
|
-
/* @__PURE__ */
|
|
6529
|
-
/* @__PURE__ */
|
|
6675
|
+
/* @__PURE__ */ jsx80(Colorize46, { color: bodyColor, children: /* @__PURE__ */ jsxs76(Subtract17, { children: [
|
|
6676
|
+
/* @__PURE__ */ jsx80(
|
|
6530
6677
|
ChipBody,
|
|
6531
6678
|
{
|
|
6532
6679
|
width: bodySize,
|
|
@@ -6540,28 +6687,28 @@ var Led5050 = ({
|
|
|
6540
6687
|
includeNotch: false
|
|
6541
6688
|
}
|
|
6542
6689
|
),
|
|
6543
|
-
/* @__PURE__ */
|
|
6544
|
-
|
|
6690
|
+
/* @__PURE__ */ jsx80(
|
|
6691
|
+
Cylinder18,
|
|
6545
6692
|
{
|
|
6546
6693
|
radius: lensRadius,
|
|
6547
6694
|
height: lensHeight,
|
|
6548
6695
|
center: [0, 0, bodyTop - lensHeight / 2]
|
|
6549
6696
|
}
|
|
6550
6697
|
),
|
|
6551
|
-
/* @__PURE__ */
|
|
6552
|
-
|
|
6698
|
+
/* @__PURE__ */ jsx80(
|
|
6699
|
+
Translate37,
|
|
6553
6700
|
{
|
|
6554
6701
|
offset: [
|
|
6555
6702
|
-bodySize / 2,
|
|
6556
6703
|
bodySize / 2,
|
|
6557
6704
|
bodyTop - cornerCutDepth / 2 + 5e-3
|
|
6558
6705
|
],
|
|
6559
|
-
children: /* @__PURE__ */
|
|
6706
|
+
children: /* @__PURE__ */ jsx80(Rotate17, { rotation: [0, 0, Math.PI / 4], children: /* @__PURE__ */ jsx80(Cuboid54, { size: [0.9, 0.9, cornerCutDepth + 0.01] }) })
|
|
6560
6707
|
}
|
|
6561
6708
|
)
|
|
6562
6709
|
] }) }),
|
|
6563
|
-
/* @__PURE__ */
|
|
6564
|
-
|
|
6710
|
+
/* @__PURE__ */ jsx80(
|
|
6711
|
+
Cylinder18,
|
|
6565
6712
|
{
|
|
6566
6713
|
color,
|
|
6567
6714
|
radius: lensRadius,
|
|
@@ -6573,8 +6720,8 @@ var Led5050 = ({
|
|
|
6573
6720
|
};
|
|
6574
6721
|
|
|
6575
6722
|
// lib/Led2835.tsx
|
|
6576
|
-
import { Colorize as
|
|
6577
|
-
import { Fragment as
|
|
6723
|
+
import { Colorize as Colorize47, Cuboid as Cuboid55 } from "jscad-fiber";
|
|
6724
|
+
import { Fragment as Fragment75, jsx as jsx81, jsxs as jsxs77 } from "react/jsx-runtime";
|
|
6578
6725
|
var Led2835 = ({
|
|
6579
6726
|
bodyWidth = 3.5,
|
|
6580
6727
|
bodyLength: bodyLength10 = 2.8,
|
|
@@ -6593,26 +6740,26 @@ var Led2835 = ({
|
|
|
6593
6740
|
const bodyCenterX = (pad1X + pad2X) / 2;
|
|
6594
6741
|
const lensWidth = bodyWidth * 0.55;
|
|
6595
6742
|
const lensLength = bodyLength10 * 0.55;
|
|
6596
|
-
return /* @__PURE__ */
|
|
6743
|
+
return /* @__PURE__ */ jsxs77(Fragment75, { children: [
|
|
6597
6744
|
[
|
|
6598
6745
|
{ x: pad1X, w: pad1Width, key: "pad-1" },
|
|
6599
6746
|
{ x: pad2X, w: pad2Width, key: "pad-2" }
|
|
6600
|
-
].map(({ x, w, key }) => /* @__PURE__ */
|
|
6601
|
-
|
|
6747
|
+
].map(({ x, w, key }) => /* @__PURE__ */ jsx81(Colorize47, { color: padColor, children: /* @__PURE__ */ jsx81(
|
|
6748
|
+
Cuboid55,
|
|
6602
6749
|
{
|
|
6603
6750
|
size: [w, padLength, padThickness],
|
|
6604
6751
|
center: [x, 0, padThickness / 2]
|
|
6605
6752
|
}
|
|
6606
6753
|
) }, key)),
|
|
6607
|
-
/* @__PURE__ */
|
|
6608
|
-
|
|
6754
|
+
/* @__PURE__ */ jsx81(Colorize47, { color: bodyColor, children: /* @__PURE__ */ jsx81(
|
|
6755
|
+
Cuboid55,
|
|
6609
6756
|
{
|
|
6610
6757
|
size: [bodyWidth, bodyLength10, bodyHeight],
|
|
6611
6758
|
center: [bodyCenterX, 0, padThickness + bodyHeight / 2]
|
|
6612
6759
|
}
|
|
6613
6760
|
) }),
|
|
6614
|
-
/* @__PURE__ */
|
|
6615
|
-
|
|
6761
|
+
/* @__PURE__ */ jsx81(Colorize47, { color, children: /* @__PURE__ */ jsx81(
|
|
6762
|
+
Cuboid55,
|
|
6616
6763
|
{
|
|
6617
6764
|
size: [lensWidth, lensLength, lensHeight],
|
|
6618
6765
|
center: [
|
|
@@ -6627,15 +6774,15 @@ var Led2835 = ({
|
|
|
6627
6774
|
|
|
6628
6775
|
// lib/RJ45.tsx
|
|
6629
6776
|
import {
|
|
6630
|
-
Colorize as
|
|
6631
|
-
Cuboid as
|
|
6632
|
-
Cylinder as
|
|
6777
|
+
Colorize as Colorize48,
|
|
6778
|
+
Cuboid as Cuboid56,
|
|
6779
|
+
Cylinder as Cylinder19,
|
|
6633
6780
|
Rotate as Rotate18,
|
|
6634
6781
|
RoundedCuboid as RoundedCuboid4,
|
|
6635
|
-
Subtract as
|
|
6636
|
-
Translate as
|
|
6782
|
+
Subtract as Subtract18,
|
|
6783
|
+
Translate as Translate38
|
|
6637
6784
|
} from "jscad-fiber";
|
|
6638
|
-
import { Fragment as
|
|
6785
|
+
import { Fragment as Fragment76, jsx as jsx82, jsxs as jsxs78 } from "react/jsx-runtime";
|
|
6639
6786
|
var range2 = (length) => Array.from({ length }, (_, index) => index);
|
|
6640
6787
|
var RJ45 = ({
|
|
6641
6788
|
bodyWidth = 16.26,
|
|
@@ -6693,18 +6840,18 @@ var RJ45 = ({
|
|
|
6693
6840
|
const contactY = frontY - frontDirection * Math.max(cavityDepth * 0.48, 1.2);
|
|
6694
6841
|
const contactZ = openingCenterZ + openingHeight * 0.18;
|
|
6695
6842
|
const frontLipY = frontY + frontDirection * shellThickness * 0.2;
|
|
6696
|
-
return /* @__PURE__ */
|
|
6697
|
-
/* @__PURE__ */
|
|
6698
|
-
/* @__PURE__ */
|
|
6699
|
-
/* @__PURE__ */
|
|
6700
|
-
|
|
6843
|
+
return /* @__PURE__ */ jsxs78(Fragment76, { children: [
|
|
6844
|
+
/* @__PURE__ */ jsxs78(Colorize48, { color: shellColor, children: [
|
|
6845
|
+
/* @__PURE__ */ jsxs78(Subtract18, { children: [
|
|
6846
|
+
/* @__PURE__ */ jsx82(
|
|
6847
|
+
Cuboid56,
|
|
6701
6848
|
{
|
|
6702
6849
|
center: [0, bodyCenterY, bodyHeight / 2],
|
|
6703
6850
|
size: [bodyWidth, bodyDepth, bodyHeight]
|
|
6704
6851
|
}
|
|
6705
6852
|
),
|
|
6706
|
-
/* @__PURE__ */
|
|
6707
|
-
|
|
6853
|
+
/* @__PURE__ */ jsx82(
|
|
6854
|
+
Cuboid56,
|
|
6708
6855
|
{
|
|
6709
6856
|
center: [0, cavityCenterY, openingCenterZ],
|
|
6710
6857
|
size: [
|
|
@@ -6715,15 +6862,15 @@ var RJ45 = ({
|
|
|
6715
6862
|
}
|
|
6716
6863
|
)
|
|
6717
6864
|
] }),
|
|
6718
|
-
/* @__PURE__ */
|
|
6719
|
-
|
|
6865
|
+
/* @__PURE__ */ jsx82(
|
|
6866
|
+
Cuboid56,
|
|
6720
6867
|
{
|
|
6721
6868
|
center: [0, frontLipY, 0.72],
|
|
6722
6869
|
size: [openingWidth + 0.5, shellThickness * 1.25, 1.05]
|
|
6723
6870
|
}
|
|
6724
6871
|
),
|
|
6725
|
-
[-1, 1].map((direction) => /* @__PURE__ */
|
|
6726
|
-
|
|
6872
|
+
[-1, 1].map((direction) => /* @__PURE__ */ jsx82(
|
|
6873
|
+
Cuboid56,
|
|
6727
6874
|
{
|
|
6728
6875
|
center: [direction * shieldPinX, shieldPinY, 0.25],
|
|
6729
6876
|
size: [
|
|
@@ -6734,8 +6881,8 @@ var RJ45 = ({
|
|
|
6734
6881
|
},
|
|
6735
6882
|
`shield-tab:${direction}`
|
|
6736
6883
|
)),
|
|
6737
|
-
[-1, 1].map((direction) => /* @__PURE__ */
|
|
6738
|
-
|
|
6884
|
+
[-1, 1].map((direction) => /* @__PURE__ */ jsx82(
|
|
6885
|
+
Cuboid56,
|
|
6739
6886
|
{
|
|
6740
6887
|
center: [
|
|
6741
6888
|
direction * bodyWidth * 0.24,
|
|
@@ -6747,9 +6894,9 @@ var RJ45 = ({
|
|
|
6747
6894
|
`top-seam:${direction}`
|
|
6748
6895
|
))
|
|
6749
6896
|
] }),
|
|
6750
|
-
/* @__PURE__ */
|
|
6751
|
-
/* @__PURE__ */
|
|
6752
|
-
/* @__PURE__ */
|
|
6897
|
+
/* @__PURE__ */ jsxs78(Colorize48, { color: housingColor, children: [
|
|
6898
|
+
/* @__PURE__ */ jsxs78(Subtract18, { children: [
|
|
6899
|
+
/* @__PURE__ */ jsx82(
|
|
6753
6900
|
RoundedCuboid4,
|
|
6754
6901
|
{
|
|
6755
6902
|
center: [0, cavityCenterY, openingCenterZ],
|
|
@@ -6761,8 +6908,8 @@ var RJ45 = ({
|
|
|
6761
6908
|
roundRadius: 0.22
|
|
6762
6909
|
}
|
|
6763
6910
|
),
|
|
6764
|
-
/* @__PURE__ */
|
|
6765
|
-
|
|
6911
|
+
/* @__PURE__ */ jsx82(
|
|
6912
|
+
Cuboid56,
|
|
6766
6913
|
{
|
|
6767
6914
|
center: [
|
|
6768
6915
|
0,
|
|
@@ -6777,14 +6924,14 @@ var RJ45 = ({
|
|
|
6777
6924
|
}
|
|
6778
6925
|
)
|
|
6779
6926
|
] }),
|
|
6780
|
-
/* @__PURE__ */
|
|
6781
|
-
|
|
6927
|
+
/* @__PURE__ */ jsx82(
|
|
6928
|
+
Cuboid56,
|
|
6782
6929
|
{
|
|
6783
6930
|
center: [0, backWallY, openingCenterZ],
|
|
6784
6931
|
size: [openingWidth - 1.15, shellThickness, openingHeight - 1.25]
|
|
6785
6932
|
}
|
|
6786
6933
|
),
|
|
6787
|
-
/* @__PURE__ */
|
|
6934
|
+
/* @__PURE__ */ jsx82(
|
|
6788
6935
|
RoundedCuboid4,
|
|
6789
6936
|
{
|
|
6790
6937
|
center: [0, frontY - frontDirection * cavityDepth * 0.28, 1.55],
|
|
@@ -6792,8 +6939,8 @@ var RJ45 = ({
|
|
|
6792
6939
|
roundRadius: 0.16
|
|
6793
6940
|
}
|
|
6794
6941
|
),
|
|
6795
|
-
[-1, 1].map((direction) => /* @__PURE__ */
|
|
6796
|
-
|
|
6942
|
+
[-1, 1].map((direction) => /* @__PURE__ */ jsx82(
|
|
6943
|
+
Cylinder19,
|
|
6797
6944
|
{
|
|
6798
6945
|
center: [direction * locatorHoleX, locatorHoleY, -0.25],
|
|
6799
6946
|
radius: Math.max(locatorHoleDiameter * 0.41, 0.65),
|
|
@@ -6802,9 +6949,9 @@ var RJ45 = ({
|
|
|
6802
6949
|
`locator:${direction}`
|
|
6803
6950
|
))
|
|
6804
6951
|
] }),
|
|
6805
|
-
/* @__PURE__ */
|
|
6806
|
-
signalPinPositions.map(({ x, y }, index) => /* @__PURE__ */
|
|
6807
|
-
|
|
6952
|
+
/* @__PURE__ */ jsxs78(Colorize48, { color: contactColor, children: [
|
|
6953
|
+
signalPinPositions.map(({ x, y }, index) => /* @__PURE__ */ jsx82(
|
|
6954
|
+
Cylinder19,
|
|
6808
6955
|
{
|
|
6809
6956
|
center: [x, y, 0.15],
|
|
6810
6957
|
radius: signalLeadRadius,
|
|
@@ -6812,15 +6959,15 @@ var RJ45 = ({
|
|
|
6812
6959
|
},
|
|
6813
6960
|
`signal-lead:${index}`
|
|
6814
6961
|
)),
|
|
6815
|
-
range2(8).map((index) => /* @__PURE__ */
|
|
6816
|
-
|
|
6962
|
+
range2(8).map((index) => /* @__PURE__ */ jsx82(
|
|
6963
|
+
Translate38,
|
|
6817
6964
|
{
|
|
6818
6965
|
offset: [
|
|
6819
6966
|
(index - 3.5) * contactPitch,
|
|
6820
6967
|
contactY,
|
|
6821
6968
|
contactZ + (index % 2 === 0 ? 0.03 : -0.03)
|
|
6822
6969
|
],
|
|
6823
|
-
children: /* @__PURE__ */
|
|
6970
|
+
children: /* @__PURE__ */ jsx82(Rotate18, { rotation: [frontDirection * 0.2, 0, 0], children: /* @__PURE__ */ jsx82(
|
|
6824
6971
|
RoundedCuboid4,
|
|
6825
6972
|
{
|
|
6826
6973
|
size: [Math.max(contactPitch * 0.28, 0.28), 3.25, 0.16],
|
|
@@ -6830,8 +6977,8 @@ var RJ45 = ({
|
|
|
6830
6977
|
},
|
|
6831
6978
|
`socket-contact:${index}`
|
|
6832
6979
|
)),
|
|
6833
|
-
ledPins && ledPinPositions.map((x, index) => /* @__PURE__ */
|
|
6834
|
-
|
|
6980
|
+
ledPins && ledPinPositions.map((x, index) => /* @__PURE__ */ jsx82(
|
|
6981
|
+
Cylinder19,
|
|
6835
6982
|
{
|
|
6836
6983
|
center: [x, ledPinY, 0.15],
|
|
6837
6984
|
radius: signalLeadRadius,
|
|
@@ -6840,8 +6987,8 @@ var RJ45 = ({
|
|
|
6840
6987
|
`led-lead:${index}`
|
|
6841
6988
|
))
|
|
6842
6989
|
] }),
|
|
6843
|
-
ledPins && /* @__PURE__ */
|
|
6844
|
-
/* @__PURE__ */
|
|
6990
|
+
ledPins && /* @__PURE__ */ jsxs78(Fragment76, { children: [
|
|
6991
|
+
/* @__PURE__ */ jsx82(
|
|
6845
6992
|
RoundedCuboid4,
|
|
6846
6993
|
{
|
|
6847
6994
|
color: "#73b744",
|
|
@@ -6854,7 +7001,7 @@ var RJ45 = ({
|
|
|
6854
7001
|
roundRadius: 0.18
|
|
6855
7002
|
}
|
|
6856
7003
|
),
|
|
6857
|
-
/* @__PURE__ */
|
|
7004
|
+
/* @__PURE__ */ jsx82(
|
|
6858
7005
|
RoundedCuboid4,
|
|
6859
7006
|
{
|
|
6860
7007
|
color: "#e0aa35",
|
|
@@ -6872,8 +7019,8 @@ var RJ45 = ({
|
|
|
6872
7019
|
};
|
|
6873
7020
|
|
|
6874
7021
|
// lib/DPAK.tsx
|
|
6875
|
-
import { Colorize as
|
|
6876
|
-
import { Fragment as
|
|
7022
|
+
import { Colorize as Colorize49, Cuboid as Cuboid57, Hull as Hull28 } from "jscad-fiber";
|
|
7023
|
+
import { Fragment as Fragment77, jsx as jsx83, jsxs as jsxs79 } from "react/jsx-runtime";
|
|
6877
7024
|
var DPAK = ({
|
|
6878
7025
|
bodyWidth = 6.1,
|
|
6879
7026
|
bodyLength: bodyLength10 = 6.5,
|
|
@@ -6895,25 +7042,25 @@ var DPAK = ({
|
|
|
6895
7042
|
const bodyFrontX = bodyCenterX - bodyWidth / 2;
|
|
6896
7043
|
const leadZ = tabThickness / 2;
|
|
6897
7044
|
const leadThickness = 0.4;
|
|
6898
|
-
return /* @__PURE__ */
|
|
6899
|
-
/* @__PURE__ */
|
|
6900
|
-
|
|
7045
|
+
return /* @__PURE__ */ jsxs79(Fragment77, { children: [
|
|
7046
|
+
/* @__PURE__ */ jsx83(Colorize49, { color: tabColor, children: /* @__PURE__ */ jsx83(
|
|
7047
|
+
Cuboid57,
|
|
6901
7048
|
{
|
|
6902
7049
|
size: [tabWidth, tabLength, tabThickness],
|
|
6903
7050
|
center: [tabCenterX, 0, tabThickness / 2]
|
|
6904
7051
|
}
|
|
6905
7052
|
) }),
|
|
6906
|
-
/* @__PURE__ */
|
|
6907
|
-
|
|
7053
|
+
/* @__PURE__ */ jsx83(Colorize49, { color, children: /* @__PURE__ */ jsx83(
|
|
7054
|
+
Cuboid57,
|
|
6908
7055
|
{
|
|
6909
7056
|
size: [bodyWidth, bodyLength10, bodyHeight],
|
|
6910
7057
|
center: [bodyCenterX, 0, tabThickness + bodyHeight / 2]
|
|
6911
7058
|
}
|
|
6912
7059
|
) }),
|
|
6913
7060
|
[-1, 1].map((side) => {
|
|
6914
|
-
return /* @__PURE__ */
|
|
6915
|
-
/* @__PURE__ */
|
|
6916
|
-
|
|
7061
|
+
return /* @__PURE__ */ jsxs79(Colorize49, { color: leadColor, children: [
|
|
7062
|
+
/* @__PURE__ */ jsx83(
|
|
7063
|
+
Cuboid57,
|
|
6917
7064
|
{
|
|
6918
7065
|
size: [leadContactLength, leadWidth, leadThickness],
|
|
6919
7066
|
center: [
|
|
@@ -6923,9 +7070,9 @@ var DPAK = ({
|
|
|
6923
7070
|
]
|
|
6924
7071
|
}
|
|
6925
7072
|
),
|
|
6926
|
-
/* @__PURE__ */
|
|
6927
|
-
/* @__PURE__ */
|
|
6928
|
-
|
|
7073
|
+
/* @__PURE__ */ jsxs79(Hull28, { children: [
|
|
7074
|
+
/* @__PURE__ */ jsx83(
|
|
7075
|
+
Cuboid57,
|
|
6929
7076
|
{
|
|
6930
7077
|
size: [0.1, leadWidth, leadThickness],
|
|
6931
7078
|
center: [
|
|
@@ -6935,8 +7082,8 @@ var DPAK = ({
|
|
|
6935
7082
|
]
|
|
6936
7083
|
}
|
|
6937
7084
|
),
|
|
6938
|
-
/* @__PURE__ */
|
|
6939
|
-
|
|
7085
|
+
/* @__PURE__ */ jsx83(
|
|
7086
|
+
Cuboid57,
|
|
6940
7087
|
{
|
|
6941
7088
|
size: [0.1, leadWidth, leadThickness],
|
|
6942
7089
|
center: [bodyFrontX, side * pitch, leadZ + tabThickness / 2]
|
|
@@ -6950,13 +7097,13 @@ var DPAK = ({
|
|
|
6950
7097
|
|
|
6951
7098
|
// lib/ElectrolyticCapacitor.tsx
|
|
6952
7099
|
import {
|
|
6953
|
-
Colorize as
|
|
6954
|
-
Cuboid as
|
|
6955
|
-
Cylinder as
|
|
7100
|
+
Colorize as Colorize50,
|
|
7101
|
+
Cuboid as Cuboid58,
|
|
7102
|
+
Cylinder as Cylinder20,
|
|
6956
7103
|
RoundedCylinder as RoundedCylinder5,
|
|
6957
|
-
Subtract as
|
|
7104
|
+
Subtract as Subtract19
|
|
6958
7105
|
} from "jscad-fiber";
|
|
6959
|
-
import { Fragment as
|
|
7106
|
+
import { Fragment as Fragment78, jsx as jsx84, jsxs as jsxs80 } from "react/jsx-runtime";
|
|
6960
7107
|
var ElectrolyticCapacitor = ({
|
|
6961
7108
|
diameter = 6.3,
|
|
6962
7109
|
heightToDiameterRatio = 1.4,
|
|
@@ -6974,17 +7121,17 @@ var ElectrolyticCapacitor = ({
|
|
|
6974
7121
|
const canTop = canBottom + canHeight;
|
|
6975
7122
|
const grooveWidth = Math.max(diameter * 0.06, 0.2);
|
|
6976
7123
|
const grooveDepth = 0.3;
|
|
6977
|
-
return /* @__PURE__ */
|
|
6978
|
-
/* @__PURE__ */
|
|
6979
|
-
|
|
7124
|
+
return /* @__PURE__ */ jsxs80(Fragment78, { children: [
|
|
7125
|
+
/* @__PURE__ */ jsx84(Colorize50, { color: baseColor, children: /* @__PURE__ */ jsx84(
|
|
7126
|
+
Cylinder20,
|
|
6980
7127
|
{
|
|
6981
7128
|
radius: radius - 0.05,
|
|
6982
7129
|
height: baseHeight,
|
|
6983
7130
|
center: [0, 0, baseHeight / 2]
|
|
6984
7131
|
}
|
|
6985
7132
|
) }),
|
|
6986
|
-
/* @__PURE__ */
|
|
6987
|
-
/* @__PURE__ */
|
|
7133
|
+
/* @__PURE__ */ jsx84(Colorize50, { color: sleeveColor, children: /* @__PURE__ */ jsxs80(Subtract19, { children: [
|
|
7134
|
+
/* @__PURE__ */ jsx84(
|
|
6988
7135
|
RoundedCylinder5,
|
|
6989
7136
|
{
|
|
6990
7137
|
radius,
|
|
@@ -6993,23 +7140,23 @@ var ElectrolyticCapacitor = ({
|
|
|
6993
7140
|
center: [0, 0, canBottom + canHeight / 2]
|
|
6994
7141
|
}
|
|
6995
7142
|
),
|
|
6996
|
-
/* @__PURE__ */
|
|
6997
|
-
|
|
7143
|
+
/* @__PURE__ */ jsx84(
|
|
7144
|
+
Cuboid58,
|
|
6998
7145
|
{
|
|
6999
7146
|
size: [diameter, grooveWidth, grooveDepth * 2],
|
|
7000
7147
|
center: [0, 0, canTop]
|
|
7001
7148
|
}
|
|
7002
7149
|
),
|
|
7003
|
-
/* @__PURE__ */
|
|
7004
|
-
|
|
7150
|
+
/* @__PURE__ */ jsx84(
|
|
7151
|
+
Cuboid58,
|
|
7005
7152
|
{
|
|
7006
7153
|
size: [grooveWidth, diameter, grooveDepth * 2],
|
|
7007
7154
|
center: [0, 0, canTop]
|
|
7008
7155
|
}
|
|
7009
7156
|
)
|
|
7010
7157
|
] }) }),
|
|
7011
|
-
[-1, 1].map((side) => /* @__PURE__ */
|
|
7012
|
-
|
|
7158
|
+
[-1, 1].map((side) => /* @__PURE__ */ jsx84(Colorize50, { color: "#c0c0c0", children: /* @__PURE__ */ jsx84(
|
|
7159
|
+
Cylinder20,
|
|
7013
7160
|
{
|
|
7014
7161
|
radius: leadDiameter / 2,
|
|
7015
7162
|
height: leadLength + baseHeight,
|
|
@@ -7020,8 +7167,8 @@ var ElectrolyticCapacitor = ({
|
|
|
7020
7167
|
};
|
|
7021
7168
|
|
|
7022
7169
|
// lib/Potentiometer.tsx
|
|
7023
|
-
import { Colorize as
|
|
7024
|
-
import { Fragment as
|
|
7170
|
+
import { Colorize as Colorize51, Cuboid as Cuboid59, Cylinder as Cylinder21, Subtract as Subtract20 } from "jscad-fiber";
|
|
7171
|
+
import { Fragment as Fragment79, jsx as jsx85, jsxs as jsxs81 } from "react/jsx-runtime";
|
|
7025
7172
|
var Potentiometer = ({
|
|
7026
7173
|
bodyWidth = 5.35,
|
|
7027
7174
|
bodyLength: bodyLength10 = 14,
|
|
@@ -7039,41 +7186,41 @@ var Potentiometer = ({
|
|
|
7039
7186
|
const adjusterHeight = 0.8;
|
|
7040
7187
|
const adjusterZ = bodyHeight + adjusterHeight / 2;
|
|
7041
7188
|
const slotWidth = Math.max(adjusterDiameter * 0.16, 0.3);
|
|
7042
|
-
return /* @__PURE__ */
|
|
7043
|
-
/* @__PURE__ */
|
|
7044
|
-
|
|
7189
|
+
return /* @__PURE__ */ jsxs81(Fragment79, { children: [
|
|
7190
|
+
/* @__PURE__ */ jsx85(Colorize51, { color: bodyColor, children: /* @__PURE__ */ jsx85(
|
|
7191
|
+
Cuboid59,
|
|
7045
7192
|
{
|
|
7046
7193
|
size: [bodyWidth, bodyLength10, bodyHeight],
|
|
7047
7194
|
center: [bodyCenterX, 0, bodyHeight / 2]
|
|
7048
7195
|
}
|
|
7049
7196
|
) }),
|
|
7050
|
-
/* @__PURE__ */
|
|
7051
|
-
/* @__PURE__ */
|
|
7052
|
-
|
|
7197
|
+
/* @__PURE__ */ jsx85(Colorize51, { color: adjusterColor, children: /* @__PURE__ */ jsxs81(Subtract20, { children: [
|
|
7198
|
+
/* @__PURE__ */ jsx85(
|
|
7199
|
+
Cylinder21,
|
|
7053
7200
|
{
|
|
7054
7201
|
radius: adjusterDiameter / 2,
|
|
7055
7202
|
height: adjusterHeight,
|
|
7056
7203
|
center: [bodyCenterX, 0, adjusterZ]
|
|
7057
7204
|
}
|
|
7058
7205
|
),
|
|
7059
|
-
/* @__PURE__ */
|
|
7060
|
-
|
|
7206
|
+
/* @__PURE__ */ jsx85(
|
|
7207
|
+
Cuboid59,
|
|
7061
7208
|
{
|
|
7062
7209
|
size: [adjusterDiameter, slotWidth, adjusterHeight * 0.6],
|
|
7063
7210
|
center: [bodyCenterX, 0, adjusterZ + adjusterHeight / 2]
|
|
7064
7211
|
}
|
|
7065
7212
|
)
|
|
7066
7213
|
] }) }),
|
|
7067
|
-
shaftHeight > 0 && shaftDiameter > 0 ? /* @__PURE__ */
|
|
7068
|
-
|
|
7214
|
+
shaftHeight > 0 && shaftDiameter > 0 ? /* @__PURE__ */ jsx85(Colorize51, { color: adjusterColor, children: /* @__PURE__ */ jsx85(
|
|
7215
|
+
Cylinder21,
|
|
7069
7216
|
{
|
|
7070
7217
|
radius: shaftDiameter / 2,
|
|
7071
7218
|
height: shaftHeight,
|
|
7072
7219
|
center: [bodyCenterX, 0, bodyHeight + shaftHeight / 2]
|
|
7073
7220
|
}
|
|
7074
7221
|
) }) : null,
|
|
7075
|
-
leads.map((lead) => /* @__PURE__ */
|
|
7076
|
-
|
|
7222
|
+
leads.map((lead) => /* @__PURE__ */ jsx85(Colorize51, { color: "#c0c0c0", children: /* @__PURE__ */ jsx85(
|
|
7223
|
+
Cylinder21,
|
|
7077
7224
|
{
|
|
7078
7225
|
radius: leadDiameter / 2,
|
|
7079
7226
|
height: bodyHeight / 2 + leadLength,
|
|
@@ -7084,8 +7231,8 @@ var Potentiometer = ({
|
|
|
7084
7231
|
};
|
|
7085
7232
|
|
|
7086
7233
|
// lib/SmdPushButton.tsx
|
|
7087
|
-
import { Colorize as
|
|
7088
|
-
import { Fragment as
|
|
7234
|
+
import { Colorize as Colorize52, Cuboid as Cuboid60, Cylinder as Cylinder22 } from "jscad-fiber";
|
|
7235
|
+
import { Fragment as Fragment80, jsx as jsx86, jsxs as jsxs82 } from "react/jsx-runtime";
|
|
7089
7236
|
var SmdPushButton = ({
|
|
7090
7237
|
bodyWidth = 2.9,
|
|
7091
7238
|
bodyLength: bodyLength10 = 3,
|
|
@@ -7101,16 +7248,16 @@ var SmdPushButton = ({
|
|
|
7101
7248
|
leadColor = "#cccccc"
|
|
7102
7249
|
}) => {
|
|
7103
7250
|
const leadThickness = 0.15;
|
|
7104
|
-
return /* @__PURE__ */
|
|
7105
|
-
/* @__PURE__ */
|
|
7106
|
-
|
|
7251
|
+
return /* @__PURE__ */ jsxs82(Fragment80, { children: [
|
|
7252
|
+
/* @__PURE__ */ jsx86(Colorize52, { color: bodyColor, children: /* @__PURE__ */ jsx86(
|
|
7253
|
+
Cuboid60,
|
|
7107
7254
|
{
|
|
7108
7255
|
size: [bodyWidth, bodyLength10, bodyHeight],
|
|
7109
7256
|
center: [0, 0, bodyHeight / 2]
|
|
7110
7257
|
}
|
|
7111
7258
|
) }),
|
|
7112
|
-
/* @__PURE__ */
|
|
7113
|
-
|
|
7259
|
+
/* @__PURE__ */ jsx86(Colorize52, { color: actuatorColor, children: /* @__PURE__ */ jsx86(
|
|
7260
|
+
Cylinder22,
|
|
7114
7261
|
{
|
|
7115
7262
|
radius: actuatorDiameter / 2,
|
|
7116
7263
|
height: actuatorHeight,
|
|
@@ -7118,8 +7265,8 @@ var SmdPushButton = ({
|
|
|
7118
7265
|
}
|
|
7119
7266
|
) }),
|
|
7120
7267
|
[-1, 1].flatMap(
|
|
7121
|
-
(sx) => [-1, 1].map((sy) => /* @__PURE__ */
|
|
7122
|
-
|
|
7268
|
+
(sx) => [-1, 1].map((sy) => /* @__PURE__ */ jsx86(Colorize52, { color: leadColor, children: /* @__PURE__ */ jsx86(
|
|
7269
|
+
Cuboid60,
|
|
7123
7270
|
{
|
|
7124
7271
|
size: [padWidth, padLength, leadThickness],
|
|
7125
7272
|
center: [
|
|
@@ -7135,8 +7282,8 @@ var SmdPushButton = ({
|
|
|
7135
7282
|
|
|
7136
7283
|
// lib/SmdSlideSwitch.tsx
|
|
7137
7284
|
import { fp as fp7 } from "@tscircuit/footprinter";
|
|
7138
|
-
import { Colorize as
|
|
7139
|
-
import { jsx as
|
|
7285
|
+
import { Colorize as Colorize53, Cuboid as Cuboid61, Cylinder as Cylinder23, Rotate as Rotate19, Subtract as Subtract21 } from "jscad-fiber";
|
|
7286
|
+
import { jsx as jsx87, jsxs as jsxs83 } from "react/jsx-runtime";
|
|
7140
7287
|
var SmdSlideSwitch = ({
|
|
7141
7288
|
footprint = "smdslideswitch7",
|
|
7142
7289
|
position = 0
|
|
@@ -7154,36 +7301,36 @@ var SmdSlideSwitch = ({
|
|
|
7154
7301
|
throw new Error("SmdSlideSwitch needs signal pads and four mounting pads");
|
|
7155
7302
|
const angle = Math.atan2(target[1].y - target[0].y, target[1].x - target[0].x) - Math.atan2(pads[1].y - pads[0].y, pads[1].x - pads[0].x);
|
|
7156
7303
|
const width10 = params.mpx - 0.5, depth = 2.7, height10 = params.mpx > 6 ? 1.5 : 1.4, y = params.mounty;
|
|
7157
|
-
return /* @__PURE__ */
|
|
7158
|
-
/* @__PURE__ */
|
|
7159
|
-
/* @__PURE__ */
|
|
7160
|
-
/* @__PURE__ */
|
|
7161
|
-
|
|
7304
|
+
return /* @__PURE__ */ jsxs83(Rotate19, { rotation: [0, 0, angle], children: [
|
|
7305
|
+
/* @__PURE__ */ jsx87(Colorize53, { color: "#aeb4ba", children: /* @__PURE__ */ jsxs83(Subtract21, { children: [
|
|
7306
|
+
/* @__PURE__ */ jsx87(Cuboid61, { size: [width10, depth, height10], center: [0, y, height10 / 2] }),
|
|
7307
|
+
/* @__PURE__ */ jsx87(
|
|
7308
|
+
Cuboid61,
|
|
7162
7309
|
{
|
|
7163
7310
|
size: [width10 - 0.3, depth - 0.3, height10],
|
|
7164
7311
|
center: [0, y, height10 / 2 - 0.15]
|
|
7165
7312
|
}
|
|
7166
7313
|
),
|
|
7167
|
-
/* @__PURE__ */
|
|
7314
|
+
/* @__PURE__ */ jsx87(Cuboid61, { size: [2.7, 0.5, 0.9], center: [0, y - depth / 2, 0.65] })
|
|
7168
7315
|
] }) }),
|
|
7169
|
-
/* @__PURE__ */
|
|
7170
|
-
/* @__PURE__ */
|
|
7171
|
-
|
|
7316
|
+
/* @__PURE__ */ jsxs83(Colorize53, { color: "#28292c", children: [
|
|
7317
|
+
/* @__PURE__ */ jsx87(
|
|
7318
|
+
Cuboid61,
|
|
7172
7319
|
{
|
|
7173
7320
|
size: [width10 - 0.32, depth - 0.32, 0.35],
|
|
7174
7321
|
center: [0, y, 0.175]
|
|
7175
7322
|
}
|
|
7176
7323
|
),
|
|
7177
|
-
/* @__PURE__ */
|
|
7178
|
-
|
|
7324
|
+
/* @__PURE__ */ jsx87(
|
|
7325
|
+
Cuboid61,
|
|
7179
7326
|
{
|
|
7180
7327
|
size: [1, 2.25, 0.65],
|
|
7181
7328
|
center: [position === 0 ? -0.5 : 0.5, y - 1.5, 0.65]
|
|
7182
7329
|
}
|
|
7183
7330
|
),
|
|
7184
7331
|
elements.filter((e) => e.type === "pcb_hole").map(
|
|
7185
|
-
(hole, i) => "hole_diameter" in hole && "x" in hole ? /* @__PURE__ */
|
|
7186
|
-
|
|
7332
|
+
(hole, i) => "hole_diameter" in hole && "x" in hole ? /* @__PURE__ */ jsx87(
|
|
7333
|
+
Cylinder23,
|
|
7187
7334
|
{
|
|
7188
7335
|
radius: hole.hole_diameter * 0.42,
|
|
7189
7336
|
height: 0.6,
|
|
@@ -7193,12 +7340,12 @@ var SmdSlideSwitch = ({
|
|
|
7193
7340
|
) : null
|
|
7194
7341
|
)
|
|
7195
7342
|
] }),
|
|
7196
|
-
/* @__PURE__ */
|
|
7343
|
+
/* @__PURE__ */ jsx87(Colorize53, { color: "#c6c7c9", children: pads.map((pad, i) => {
|
|
7197
7344
|
const signal = i < pads.length - 4;
|
|
7198
7345
|
const outerY = pad.y + pad.height * 0.4;
|
|
7199
7346
|
const innerY = Math.min(pad.y - pad.height * 0.4, y + depth / 2 - 0.2);
|
|
7200
|
-
return /* @__PURE__ */
|
|
7201
|
-
|
|
7347
|
+
return /* @__PURE__ */ jsx87(
|
|
7348
|
+
Cuboid61,
|
|
7202
7349
|
{
|
|
7203
7350
|
size: [
|
|
7204
7351
|
pad.width * 0.8,
|
|
@@ -7214,8 +7361,8 @@ var SmdSlideSwitch = ({
|
|
|
7214
7361
|
};
|
|
7215
7362
|
|
|
7216
7363
|
// lib/SOT-563.tsx
|
|
7217
|
-
import { Cuboid as
|
|
7218
|
-
import { Fragment as
|
|
7364
|
+
import { Cuboid as Cuboid62, Translate as Translate40, Rotate as Rotate20, Colorize as Colorize54 } from "jscad-fiber";
|
|
7365
|
+
import { Fragment as Fragment81, jsx as jsx88, jsxs as jsxs84 } from "react/jsx-runtime";
|
|
7219
7366
|
var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
|
|
7220
7367
|
const bodyWidth = 1.2;
|
|
7221
7368
|
const bodyLength10 = 1.6;
|
|
@@ -7225,28 +7372,28 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
|
|
|
7225
7372
|
const leadHeight = 0.13;
|
|
7226
7373
|
const leadSpacing = 0.5;
|
|
7227
7374
|
const bodyZOffset = -0.4;
|
|
7228
|
-
return /* @__PURE__ */
|
|
7229
|
-
/* @__PURE__ */
|
|
7375
|
+
return /* @__PURE__ */ jsxs84(Fragment81, { children: [
|
|
7376
|
+
/* @__PURE__ */ jsx88(Rotate20, { rotation: [45 * Math.PI, 0, 0], children: /* @__PURE__ */ jsx88(Translate40, { center: [0, 0, bodyZOffset], children: /* @__PURE__ */ jsx88(Colorize54, { color: "grey", children: /* @__PURE__ */ jsx88(Cuboid62, { size: [bodyWidth, bodyLength10, bodyHeight] }) }) }) }),
|
|
7230
7377
|
[-1, 0, 1].flatMap((yOffset, index) => [
|
|
7231
7378
|
// Left lead
|
|
7232
|
-
/* @__PURE__ */
|
|
7233
|
-
|
|
7379
|
+
/* @__PURE__ */ jsx88(
|
|
7380
|
+
Translate40,
|
|
7234
7381
|
{
|
|
7235
7382
|
center: [
|
|
7236
7383
|
-bodyWidth / 2 - 0.03,
|
|
7237
7384
|
yOffset * leadSpacing,
|
|
7238
7385
|
leadHeight / 2
|
|
7239
7386
|
],
|
|
7240
|
-
children: /* @__PURE__ */
|
|
7387
|
+
children: /* @__PURE__ */ jsx88(Cuboid62, { size: [leadLength, leadWidth, leadHeight] })
|
|
7241
7388
|
},
|
|
7242
7389
|
`left-${index}`
|
|
7243
7390
|
),
|
|
7244
7391
|
// Right lead
|
|
7245
|
-
/* @__PURE__ */
|
|
7246
|
-
|
|
7392
|
+
/* @__PURE__ */ jsx88(
|
|
7393
|
+
Translate40,
|
|
7247
7394
|
{
|
|
7248
7395
|
center: [bodyWidth / 2 + 0.03, yOffset * leadSpacing, leadHeight / 2],
|
|
7249
|
-
children: /* @__PURE__ */
|
|
7396
|
+
children: /* @__PURE__ */ jsx88(Cuboid62, { size: [leadLength, leadWidth, leadHeight] })
|
|
7250
7397
|
},
|
|
7251
7398
|
`right-${index}`
|
|
7252
7399
|
)
|
|
@@ -7257,20 +7404,20 @@ var SOT563 = ({ fullWidth = 1.94, fullLength: fullLength10 = 1.6 }) => {
|
|
|
7257
7404
|
// lib/UsbCMidmount.tsx
|
|
7258
7405
|
import { fp as fp8 } from "@tscircuit/footprinter";
|
|
7259
7406
|
import {
|
|
7260
|
-
Colorize as
|
|
7261
|
-
Cuboid as
|
|
7262
|
-
Cylinder as
|
|
7263
|
-
Hull as
|
|
7407
|
+
Colorize as Colorize55,
|
|
7408
|
+
Cuboid as Cuboid63,
|
|
7409
|
+
Cylinder as Cylinder24,
|
|
7410
|
+
Hull as Hull29,
|
|
7264
7411
|
Rotate as Rotate21,
|
|
7265
|
-
Subtract as
|
|
7266
|
-
Translate as
|
|
7412
|
+
Subtract as Subtract22,
|
|
7413
|
+
Translate as Translate41
|
|
7267
7414
|
} from "jscad-fiber";
|
|
7268
|
-
import { jsx as
|
|
7415
|
+
import { jsx as jsx89, jsxs as jsxs85 } from "react/jsx-runtime";
|
|
7269
7416
|
var Capsule = ({
|
|
7270
7417
|
width: width10,
|
|
7271
7418
|
height: height10,
|
|
7272
7419
|
depth
|
|
7273
|
-
}) => /* @__PURE__ */
|
|
7420
|
+
}) => /* @__PURE__ */ jsx89(Hull29, { children: [-1, 1].map((side) => /* @__PURE__ */ jsx89(Translate41, { offset: [side * (width10 - height10) / 2, 0, 0], children: /* @__PURE__ */ jsx89(Rotate21, { rotation: [Math.PI / 2, 0, 0], children: /* @__PURE__ */ jsx89(Cylinder24, { radius: height10 / 2, height: depth }) }) }, side)) });
|
|
7274
7421
|
var UsbCMidmount = ({
|
|
7275
7422
|
footprint = "usbcmidmount16"
|
|
7276
7423
|
}) => {
|
|
@@ -7293,10 +7440,10 @@ var UsbCMidmount = ({
|
|
|
7293
7440
|
"UsbCMidmount requires four mounting slots and a positive body depth"
|
|
7294
7441
|
);
|
|
7295
7442
|
const tabBottom = -0.9, tabTop = centerZ + 0.1;
|
|
7296
|
-
return /* @__PURE__ */
|
|
7297
|
-
/* @__PURE__ */
|
|
7298
|
-
/* @__PURE__ */
|
|
7299
|
-
/* @__PURE__ */
|
|
7443
|
+
return /* @__PURE__ */ jsxs85(Rotate21, { rotation: [0, 0, angle], children: [
|
|
7444
|
+
/* @__PURE__ */ jsx89(Colorize55, { color: "#b8bdc4", children: /* @__PURE__ */ jsx89(Translate41, { offset: [0, centerY, centerZ], children: /* @__PURE__ */ jsxs85(Subtract22, { children: [
|
|
7445
|
+
/* @__PURE__ */ jsx89(Capsule, { width: width10, height: height10, depth }),
|
|
7446
|
+
/* @__PURE__ */ jsx89(
|
|
7300
7447
|
Capsule,
|
|
7301
7448
|
{
|
|
7302
7449
|
width: width10 - wall * 2,
|
|
@@ -7305,18 +7452,18 @@ var UsbCMidmount = ({
|
|
|
7305
7452
|
}
|
|
7306
7453
|
)
|
|
7307
7454
|
] }) }) }),
|
|
7308
|
-
/* @__PURE__ */
|
|
7309
|
-
/* @__PURE__ */
|
|
7310
|
-
|
|
7455
|
+
/* @__PURE__ */ jsxs85(Colorize55, { color: "#242529", children: [
|
|
7456
|
+
/* @__PURE__ */ jsx89(
|
|
7457
|
+
Cuboid63,
|
|
7311
7458
|
{
|
|
7312
7459
|
size: [6.65, depth - 1.1, 0.7],
|
|
7313
7460
|
center: [0, centerY + 0.3, centerZ]
|
|
7314
7461
|
}
|
|
7315
7462
|
),
|
|
7316
|
-
/* @__PURE__ */
|
|
7463
|
+
/* @__PURE__ */ jsx89(Cuboid63, { size: [7.6, 1, 2.45], center: [0, back - 0.65, centerZ] }),
|
|
7317
7464
|
holes.map(
|
|
7318
|
-
(hole, i) => "x" in hole && "hole_diameter" in hole ? /* @__PURE__ */
|
|
7319
|
-
|
|
7465
|
+
(hole, i) => "x" in hole && "hole_diameter" in hole ? /* @__PURE__ */ jsx89(
|
|
7466
|
+
Cylinder24,
|
|
7320
7467
|
{
|
|
7321
7468
|
radius: hole.hole_diameter * 0.42,
|
|
7322
7469
|
height: 0.8,
|
|
@@ -7326,10 +7473,10 @@ var UsbCMidmount = ({
|
|
|
7326
7473
|
) : null
|
|
7327
7474
|
)
|
|
7328
7475
|
] }),
|
|
7329
|
-
/* @__PURE__ */
|
|
7476
|
+
/* @__PURE__ */ jsxs85(Colorize55, { color: "#d3ad57", children: [
|
|
7330
7477
|
[-1, 1].flatMap(
|
|
7331
|
-
(side) => [-2.75, -2.25, -1.25, -0.25, 0.25, 1.25, 2.25, 2.75].map((x) => /* @__PURE__ */
|
|
7332
|
-
|
|
7478
|
+
(side) => [-2.75, -2.25, -1.25, -0.25, 0.25, 1.25, 2.25, 2.75].map((x) => /* @__PURE__ */ jsx89(
|
|
7479
|
+
Cuboid63,
|
|
7333
7480
|
{
|
|
7334
7481
|
size: [0.24, depth - 2, 0.04],
|
|
7335
7482
|
center: [x, centerY + 0.1, centerZ + side * 0.365]
|
|
@@ -7337,8 +7484,8 @@ var UsbCMidmount = ({
|
|
|
7337
7484
|
`${side}-${x}`
|
|
7338
7485
|
))
|
|
7339
7486
|
),
|
|
7340
|
-
pads.map((pad, i) => /* @__PURE__ */
|
|
7341
|
-
|
|
7487
|
+
pads.map((pad, i) => /* @__PURE__ */ jsx89(
|
|
7488
|
+
Cuboid63,
|
|
7342
7489
|
{
|
|
7343
7490
|
size: [
|
|
7344
7491
|
Math.min(pad.width * 0.7, 0.35),
|
|
@@ -7350,8 +7497,8 @@ var UsbCMidmount = ({
|
|
|
7350
7497
|
i
|
|
7351
7498
|
))
|
|
7352
7499
|
] }),
|
|
7353
|
-
/* @__PURE__ */
|
|
7354
|
-
|
|
7500
|
+
/* @__PURE__ */ jsx89(Colorize55, { color: "#b8bdc4", children: slots.map((slot, i) => /* @__PURE__ */ jsx89(
|
|
7501
|
+
Cuboid63,
|
|
7355
7502
|
{
|
|
7356
7503
|
size: [
|
|
7357
7504
|
0.4,
|
|
@@ -7368,7 +7515,7 @@ var UsbCMidmount = ({
|
|
|
7368
7515
|
// lib/SOT143.tsx
|
|
7369
7516
|
import { fp as fp9 } from "@tscircuit/footprinter";
|
|
7370
7517
|
import { Rotate as Rotate22 } from "jscad-fiber";
|
|
7371
|
-
import { jsx as
|
|
7518
|
+
import { jsx as jsx90, jsxs as jsxs86 } from "react/jsx-runtime";
|
|
7372
7519
|
var getPads = (footprint) => fp9.string(footprint).circuitJson().filter(
|
|
7373
7520
|
(element) => element.type === "pcb_smtpad" && (element.shape === "rect" || element.shape === "rotated_rect")
|
|
7374
7521
|
).map((pad) => ({ x: pad.x, y: pad.y, pin: pad.port_hints?.[0] }));
|
|
@@ -7387,8 +7534,8 @@ var SOT143 = ({ footprint = "sot143" }) => {
|
|
|
7387
7534
|
x: pad.x * Math.cos(angle) + pad.y * Math.sin(angle),
|
|
7388
7535
|
y: -pad.x * Math.sin(angle) + pad.y * Math.cos(angle)
|
|
7389
7536
|
}));
|
|
7390
|
-
return /* @__PURE__ */
|
|
7391
|
-
/* @__PURE__ */
|
|
7537
|
+
return /* @__PURE__ */ jsxs86(Rotate22, { rotation: [0, 0, angle], children: [
|
|
7538
|
+
/* @__PURE__ */ jsx90(
|
|
7392
7539
|
ChipBody,
|
|
7393
7540
|
{
|
|
7394
7541
|
width: 2.9,
|
|
@@ -7403,7 +7550,7 @@ var SOT143 = ({ footprint = "sot143" }) => {
|
|
|
7403
7550
|
local.map((pad) => {
|
|
7404
7551
|
const side = pad.y < 0 ? -1 : 1;
|
|
7405
7552
|
const leadWidth = pad.pin === "1" ? 0.83 : 0.43;
|
|
7406
|
-
return /* @__PURE__ */
|
|
7553
|
+
return /* @__PURE__ */ jsx90(
|
|
7407
7554
|
SmdChipLead,
|
|
7408
7555
|
{
|
|
7409
7556
|
width: leadWidth,
|
|
@@ -7421,9 +7568,9 @@ var SOT143 = ({ footprint = "sot143" }) => {
|
|
|
7421
7568
|
};
|
|
7422
7569
|
|
|
7423
7570
|
// lib/FlexScreen.tsx
|
|
7424
|
-
import { Colorize as
|
|
7425
|
-
import { Fragment as
|
|
7426
|
-
import { Fragment as
|
|
7571
|
+
import { Colorize as Colorize56, Rotate as Rotate23, RoundedCuboid as RoundedCuboid5, Translate as Translate42 } from "jscad-fiber";
|
|
7572
|
+
import { Fragment as Fragment82 } from "react";
|
|
7573
|
+
import { Fragment as Fragment83, jsx as jsx91, jsxs as jsxs87 } from "react/jsx-runtime";
|
|
7427
7574
|
var DEFAULT_ASPECT_RATIO = 16 / 9;
|
|
7428
7575
|
var DEFAULT_DIAGONAL = 40;
|
|
7429
7576
|
var EPSILON = 1e-6;
|
|
@@ -7653,7 +7800,7 @@ var CableStrip = ({
|
|
|
7653
7800
|
acrossOffset = 0,
|
|
7654
7801
|
normalOffset = 0,
|
|
7655
7802
|
overlap = 0.03
|
|
7656
|
-
}) => /* @__PURE__ */
|
|
7803
|
+
}) => /* @__PURE__ */ jsx91(Colorize56, { color, children: points.slice(1).map((point, index) => {
|
|
7657
7804
|
const previous = points[index];
|
|
7658
7805
|
const dx = point[0] - previous[0];
|
|
7659
7806
|
const dy = point[1] - previous[1];
|
|
@@ -7671,7 +7818,7 @@ var CableStrip = ({
|
|
|
7671
7818
|
1e-3,
|
|
7672
7819
|
Math.min(width10, thickness, segmentLength) / 2 - 1e-3
|
|
7673
7820
|
);
|
|
7674
|
-
return /* @__PURE__ */
|
|
7821
|
+
return /* @__PURE__ */ jsx91(Translate42, { offset: midpoint, children: /* @__PURE__ */ jsx91(Rotate23, { rotation: [pitch, 0, yaw], children: /* @__PURE__ */ jsx91(
|
|
7675
7822
|
RoundedCuboid5,
|
|
7676
7823
|
{
|
|
7677
7824
|
size: [width10, segmentLength + overlap, thickness],
|
|
@@ -7880,8 +8027,8 @@ var FlexScreen = (props) => {
|
|
|
7880
8027
|
);
|
|
7881
8028
|
const conductorNormalOffset = (flexCableThickness + conductorThickness) / 2;
|
|
7882
8029
|
const stiffenerNormalOffset = -(flexCableThickness + stiffenerThickness) / 2;
|
|
7883
|
-
const assembly = /* @__PURE__ */
|
|
7884
|
-
showFlexCable && /* @__PURE__ */
|
|
8030
|
+
const assembly = /* @__PURE__ */ jsxs87(Fragment83, { children: [
|
|
8031
|
+
showFlexCable && /* @__PURE__ */ jsx91(
|
|
7885
8032
|
CableStrip,
|
|
7886
8033
|
{
|
|
7887
8034
|
points: path,
|
|
@@ -7890,8 +8037,8 @@ var FlexScreen = (props) => {
|
|
|
7890
8037
|
color: flexCableColor
|
|
7891
8038
|
}
|
|
7892
8039
|
),
|
|
7893
|
-
showFlexCable && showStiffeners && resolvedStiffenerLength > EPSILON && /* @__PURE__ */
|
|
7894
|
-
/* @__PURE__ */
|
|
8040
|
+
showFlexCable && showStiffeners && resolvedStiffenerLength > EPSILON && /* @__PURE__ */ jsxs87(Fragment83, { children: [
|
|
8041
|
+
/* @__PURE__ */ jsx91(
|
|
7895
8042
|
CableStrip,
|
|
7896
8043
|
{
|
|
7897
8044
|
points: startStiffener,
|
|
@@ -7901,7 +8048,7 @@ var FlexScreen = (props) => {
|
|
|
7901
8048
|
normalOffset: stiffenerNormalOffset
|
|
7902
8049
|
}
|
|
7903
8050
|
),
|
|
7904
|
-
/* @__PURE__ */
|
|
8051
|
+
/* @__PURE__ */ jsx91(
|
|
7905
8052
|
CableStrip,
|
|
7906
8053
|
{
|
|
7907
8054
|
points: endStiffener,
|
|
@@ -7912,8 +8059,8 @@ var FlexScreen = (props) => {
|
|
|
7912
8059
|
}
|
|
7913
8060
|
)
|
|
7914
8061
|
] }),
|
|
7915
|
-
showFlexCable && showConductors && contactLength > EPSILON && conductorOffsets.map((acrossOffset, index) => /* @__PURE__ */
|
|
7916
|
-
/* @__PURE__ */
|
|
8062
|
+
showFlexCable && showConductors && contactLength > EPSILON && conductorOffsets.map((acrossOffset, index) => /* @__PURE__ */ jsxs87(Fragment82, { children: [
|
|
8063
|
+
/* @__PURE__ */ jsx91(
|
|
7917
8064
|
CableStrip,
|
|
7918
8065
|
{
|
|
7919
8066
|
points: startContacts,
|
|
@@ -7924,7 +8071,7 @@ var FlexScreen = (props) => {
|
|
|
7924
8071
|
normalOffset: conductorNormalOffset
|
|
7925
8072
|
}
|
|
7926
8073
|
),
|
|
7927
|
-
/* @__PURE__ */
|
|
8074
|
+
/* @__PURE__ */ jsx91(
|
|
7928
8075
|
CableStrip,
|
|
7929
8076
|
{
|
|
7930
8077
|
points: endContacts,
|
|
@@ -7936,7 +8083,7 @@ var FlexScreen = (props) => {
|
|
|
7936
8083
|
}
|
|
7937
8084
|
)
|
|
7938
8085
|
] }, `conductor:${index}`)),
|
|
7939
|
-
showScreen && /* @__PURE__ */
|
|
8086
|
+
showScreen && /* @__PURE__ */ jsx91(Translate42, { offset: screenCenter, children: /* @__PURE__ */ jsx91(Rotate23, { rotation: screenRotation ?? presetScreenRotation, children: /* @__PURE__ */ jsx91(
|
|
7940
8087
|
Screen,
|
|
7941
8088
|
{
|
|
7942
8089
|
width: size.width,
|
|
@@ -7951,21 +8098,21 @@ var FlexScreen = (props) => {
|
|
|
7951
8098
|
}
|
|
7952
8099
|
) }) })
|
|
7953
8100
|
] });
|
|
7954
|
-
return /* @__PURE__ */
|
|
7955
|
-
|
|
8101
|
+
return /* @__PURE__ */ jsx91(
|
|
8102
|
+
Translate42,
|
|
7956
8103
|
{
|
|
7957
8104
|
offset: {
|
|
7958
8105
|
x: offset?.x ?? 0,
|
|
7959
8106
|
y: offset?.y ?? 0,
|
|
7960
8107
|
z: offset?.z ?? 0
|
|
7961
8108
|
},
|
|
7962
|
-
children: /* @__PURE__ */
|
|
8109
|
+
children: /* @__PURE__ */ jsx91(Translate42, { offset: start, children: /* @__PURE__ */ jsx91(Rotate23, { rotation, children: /* @__PURE__ */ jsx91(Translate42, { offset: [-start[0], -start[1], -start[2]], children: assembly }) }) })
|
|
7963
8110
|
}
|
|
7964
8111
|
);
|
|
7965
8112
|
};
|
|
7966
8113
|
|
|
7967
8114
|
// lib/Footprinter3d.tsx
|
|
7968
|
-
import { Fragment as
|
|
8115
|
+
import { Fragment as Fragment84, jsx as jsx92 } from "react/jsx-runtime";
|
|
7969
8116
|
var Footprinter3d = ({ footprint }) => {
|
|
7970
8117
|
const modelFn = mp.string(footprint.split("_", 1)[0]).params().fn;
|
|
7971
8118
|
if (mp.getModelNames().includes(modelFn)) {
|
|
@@ -7973,7 +8120,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
7973
8120
|
switch (model.fn) {
|
|
7974
8121
|
case "flexscreen": {
|
|
7975
8122
|
const { fn: _, ...flexScreenProps } = model;
|
|
7976
|
-
return /* @__PURE__ */
|
|
8123
|
+
return /* @__PURE__ */ jsx92(FlexScreen, { ...flexScreenProps });
|
|
7977
8124
|
}
|
|
7978
8125
|
}
|
|
7979
8126
|
}
|
|
@@ -8001,7 +8148,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8001
8148
|
};
|
|
8002
8149
|
switch (fpJson.fn) {
|
|
8003
8150
|
case "crystal":
|
|
8004
|
-
return /* @__PURE__ */
|
|
8151
|
+
return /* @__PURE__ */ jsx92(
|
|
8005
8152
|
Crystal,
|
|
8006
8153
|
{
|
|
8007
8154
|
horizontalPadPitch: fpJson.px,
|
|
@@ -8011,11 +8158,11 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8011
8158
|
}
|
|
8012
8159
|
);
|
|
8013
8160
|
case "dip":
|
|
8014
|
-
return /* @__PURE__ */
|
|
8161
|
+
return /* @__PURE__ */ jsx92(Dip, { numPins: fpJson.num_pins, pitch: fpJson.p, bodyWidth: fpJson.w });
|
|
8015
8162
|
case "axial":
|
|
8016
|
-
return /* @__PURE__ */
|
|
8163
|
+
return /* @__PURE__ */ jsx92(AxialCapacitor, { pitch: fpJson.p });
|
|
8017
8164
|
case "tssop":
|
|
8018
|
-
return /* @__PURE__ */
|
|
8165
|
+
return /* @__PURE__ */ jsx92(
|
|
8019
8166
|
Tssop,
|
|
8020
8167
|
{
|
|
8021
8168
|
pinCount: fpJson.num_pins,
|
|
@@ -8026,7 +8173,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8026
8173
|
}
|
|
8027
8174
|
);
|
|
8028
8175
|
case "msop":
|
|
8029
|
-
return /* @__PURE__ */
|
|
8176
|
+
return /* @__PURE__ */ jsx92(
|
|
8030
8177
|
MSOP,
|
|
8031
8178
|
{
|
|
8032
8179
|
pinCount: fpJson.num_pins,
|
|
@@ -8037,7 +8184,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8037
8184
|
}
|
|
8038
8185
|
);
|
|
8039
8186
|
case "vssop":
|
|
8040
|
-
return /* @__PURE__ */
|
|
8187
|
+
return /* @__PURE__ */ jsx92(
|
|
8041
8188
|
VSSOP,
|
|
8042
8189
|
{
|
|
8043
8190
|
pinCount: fpJson.num_pins,
|
|
@@ -8049,7 +8196,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8049
8196
|
}
|
|
8050
8197
|
);
|
|
8051
8198
|
case "qfp":
|
|
8052
|
-
return /* @__PURE__ */
|
|
8199
|
+
return /* @__PURE__ */ jsx92(
|
|
8053
8200
|
QFP,
|
|
8054
8201
|
{
|
|
8055
8202
|
pinCount: fpJson.num_pins,
|
|
@@ -8060,12 +8207,12 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8060
8207
|
}
|
|
8061
8208
|
);
|
|
8062
8209
|
case "tqfp":
|
|
8063
|
-
return /* @__PURE__ */
|
|
8210
|
+
return /* @__PURE__ */ jsx92(tqfp_default, {});
|
|
8064
8211
|
case "lqfp":
|
|
8065
|
-
return /* @__PURE__ */
|
|
8212
|
+
return /* @__PURE__ */ jsx92(LQFP, { pinCount: fpJson.num_pins });
|
|
8066
8213
|
case "qfn": {
|
|
8067
8214
|
const hasThermalPad = typeof fpJson.thermalpad?.x === "number" && typeof fpJson.thermalpad?.y === "number";
|
|
8068
|
-
return /* @__PURE__ */
|
|
8215
|
+
return /* @__PURE__ */ jsx92(
|
|
8069
8216
|
qfn_default,
|
|
8070
8217
|
{
|
|
8071
8218
|
num_pins: fpJson.num_pins,
|
|
@@ -8083,7 +8230,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8083
8230
|
}
|
|
8084
8231
|
case "dfn": {
|
|
8085
8232
|
const hasThermalPad = typeof fpJson.thermalpad?.x === "number" && typeof fpJson.thermalpad?.y === "number";
|
|
8086
|
-
return /* @__PURE__ */
|
|
8233
|
+
return /* @__PURE__ */ jsx92(
|
|
8087
8234
|
DFN,
|
|
8088
8235
|
{
|
|
8089
8236
|
num_pins: fpJson.num_pins,
|
|
@@ -8103,7 +8250,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8103
8250
|
const rowsMatch = footprint.match(/_rows(\d+)/);
|
|
8104
8251
|
const rows = rowsMatch && rowsMatch[1] ? parseInt(rowsMatch[1], 10) : 1;
|
|
8105
8252
|
if (fpJson.male)
|
|
8106
|
-
return /* @__PURE__ */
|
|
8253
|
+
return /* @__PURE__ */ jsx92(
|
|
8107
8254
|
PinRow,
|
|
8108
8255
|
{
|
|
8109
8256
|
numberOfPins: fpJson.num_pins,
|
|
@@ -8115,7 +8262,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8115
8262
|
}
|
|
8116
8263
|
);
|
|
8117
8264
|
if (fpJson.female)
|
|
8118
|
-
return /* @__PURE__ */
|
|
8265
|
+
return /* @__PURE__ */ jsx92(
|
|
8119
8266
|
FemaleHeaderRow,
|
|
8120
8267
|
{
|
|
8121
8268
|
numberOfPins: fpJson.num_pins,
|
|
@@ -8125,7 +8272,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8125
8272
|
);
|
|
8126
8273
|
}
|
|
8127
8274
|
case "smdpinheader":
|
|
8128
|
-
return /* @__PURE__ */
|
|
8275
|
+
return /* @__PURE__ */ jsx92(
|
|
8129
8276
|
SmdPinHeader,
|
|
8130
8277
|
{
|
|
8131
8278
|
numberOfPins: fpJson.num_pins,
|
|
@@ -8134,44 +8281,44 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8134
8281
|
}
|
|
8135
8282
|
);
|
|
8136
8283
|
case "led5050":
|
|
8137
|
-
return /* @__PURE__ */
|
|
8284
|
+
return /* @__PURE__ */ jsx92(Led5050, { color });
|
|
8138
8285
|
case "cap": {
|
|
8139
8286
|
switch (fpJson.imperial) {
|
|
8140
8287
|
case "0402":
|
|
8141
|
-
return /* @__PURE__ */
|
|
8288
|
+
return /* @__PURE__ */ jsx92(A0402, { color: "#856c4d" });
|
|
8142
8289
|
case "0603":
|
|
8143
|
-
return /* @__PURE__ */
|
|
8290
|
+
return /* @__PURE__ */ jsx92(A0603, { color: "#856c4d" });
|
|
8144
8291
|
case "0805":
|
|
8145
|
-
return /* @__PURE__ */
|
|
8292
|
+
return /* @__PURE__ */ jsx92(A0805, { color: "#856c4d" });
|
|
8146
8293
|
case "0201":
|
|
8147
|
-
return /* @__PURE__ */
|
|
8294
|
+
return /* @__PURE__ */ jsx92(A0201, { color: "#856c4d" });
|
|
8148
8295
|
case "01005":
|
|
8149
|
-
return /* @__PURE__ */
|
|
8296
|
+
return /* @__PURE__ */ jsx92(A01005, { color: "#856c4d" });
|
|
8150
8297
|
case "1206":
|
|
8151
|
-
return /* @__PURE__ */
|
|
8298
|
+
return /* @__PURE__ */ jsx92(A1206, { color: "#856c4d" });
|
|
8152
8299
|
case "1210":
|
|
8153
|
-
return /* @__PURE__ */
|
|
8300
|
+
return /* @__PURE__ */ jsx92(A1210, { color: "#856c4d" });
|
|
8154
8301
|
case "2010":
|
|
8155
|
-
return /* @__PURE__ */
|
|
8302
|
+
return /* @__PURE__ */ jsx92(A2010, { color: "#856c4d" });
|
|
8156
8303
|
case "2512":
|
|
8157
|
-
return /* @__PURE__ */
|
|
8304
|
+
return /* @__PURE__ */ jsx92(A2512, { color: "#856c4d" });
|
|
8158
8305
|
}
|
|
8159
8306
|
break;
|
|
8160
8307
|
}
|
|
8161
8308
|
case "sot23":
|
|
8162
8309
|
switch (fpJson.num_pins) {
|
|
8163
8310
|
case 3:
|
|
8164
|
-
return /* @__PURE__ */
|
|
8311
|
+
return /* @__PURE__ */ jsx92(SOT233P, { color });
|
|
8165
8312
|
case 5:
|
|
8166
|
-
return /* @__PURE__ */
|
|
8313
|
+
return /* @__PURE__ */ jsx92(SOT_235_default, {});
|
|
8167
8314
|
}
|
|
8168
8315
|
break;
|
|
8169
8316
|
case "sot25":
|
|
8170
|
-
return /* @__PURE__ */
|
|
8317
|
+
return /* @__PURE__ */ jsx92(SOT_235_default, {});
|
|
8171
8318
|
case "sot":
|
|
8172
8319
|
case "sot343": {
|
|
8173
8320
|
const isSc70 = fpJson.fn === "sot343";
|
|
8174
|
-
return /* @__PURE__ */
|
|
8321
|
+
return /* @__PURE__ */ jsx92(
|
|
8175
8322
|
GullWingBody,
|
|
8176
8323
|
{
|
|
8177
8324
|
pads: getSmtPadRects(normalizedFootprint),
|
|
@@ -8182,10 +8329,10 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8182
8329
|
);
|
|
8183
8330
|
}
|
|
8184
8331
|
case "sot563":
|
|
8185
|
-
return /* @__PURE__ */
|
|
8332
|
+
return /* @__PURE__ */ jsx92(SOT563, {});
|
|
8186
8333
|
case "sot89": {
|
|
8187
8334
|
const padSpan = dim(fpJson.w, 4.2);
|
|
8188
|
-
return /* @__PURE__ */
|
|
8335
|
+
return /* @__PURE__ */ jsx92(
|
|
8189
8336
|
SOT223,
|
|
8190
8337
|
{
|
|
8191
8338
|
fullWidth: padSpan,
|
|
@@ -8200,31 +8347,31 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8200
8347
|
);
|
|
8201
8348
|
}
|
|
8202
8349
|
case "sot457":
|
|
8203
|
-
return /* @__PURE__ */
|
|
8350
|
+
return /* @__PURE__ */ jsx92(SOT457, {});
|
|
8204
8351
|
case "smdslideswitch":
|
|
8205
|
-
return /* @__PURE__ */
|
|
8352
|
+
return /* @__PURE__ */ jsx92(SmdSlideSwitch, { footprint: normalizedFootprint });
|
|
8206
8353
|
case "usbcmidmount":
|
|
8207
|
-
return /* @__PURE__ */
|
|
8354
|
+
return /* @__PURE__ */ jsx92(UsbCMidmount, { footprint: normalizedFootprint });
|
|
8208
8355
|
case "sot143":
|
|
8209
|
-
return /* @__PURE__ */
|
|
8356
|
+
return /* @__PURE__ */ jsx92(SOT143, { footprint: normalizedFootprint });
|
|
8210
8357
|
case "sot223":
|
|
8211
|
-
return /* @__PURE__ */
|
|
8358
|
+
return /* @__PURE__ */ jsx92(SOT223, {});
|
|
8212
8359
|
case "sot23w":
|
|
8213
|
-
return /* @__PURE__ */
|
|
8360
|
+
return /* @__PURE__ */ jsx92(SOT23W, {});
|
|
8214
8361
|
case "sot323":
|
|
8215
|
-
return /* @__PURE__ */
|
|
8362
|
+
return /* @__PURE__ */ jsx92(SOT323, {});
|
|
8216
8363
|
case "sod323f":
|
|
8217
|
-
return /* @__PURE__ */
|
|
8364
|
+
return /* @__PURE__ */ jsx92(SOD323F, {});
|
|
8218
8365
|
case "sod323fl":
|
|
8219
|
-
return /* @__PURE__ */
|
|
8366
|
+
return /* @__PURE__ */ jsx92(SOD323FL, {});
|
|
8220
8367
|
case "sot363":
|
|
8221
|
-
return /* @__PURE__ */
|
|
8368
|
+
return /* @__PURE__ */ jsx92(SOT_363_default, {});
|
|
8222
8369
|
case "sot886":
|
|
8223
|
-
return /* @__PURE__ */
|
|
8370
|
+
return /* @__PURE__ */ jsx92(SOT886, {});
|
|
8224
8371
|
case "sot963":
|
|
8225
|
-
return /* @__PURE__ */
|
|
8372
|
+
return /* @__PURE__ */ jsx92(SOT963, {});
|
|
8226
8373
|
case "pushbutton":
|
|
8227
|
-
return /* @__PURE__ */
|
|
8374
|
+
return /* @__PURE__ */ jsx92(
|
|
8228
8375
|
PushButton,
|
|
8229
8376
|
{
|
|
8230
8377
|
width: fpJson.w,
|
|
@@ -8234,20 +8381,20 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8234
8381
|
);
|
|
8235
8382
|
case "jst":
|
|
8236
8383
|
if (isJstShFootprint(normalizedFootprint)) {
|
|
8237
|
-
return /* @__PURE__ */
|
|
8384
|
+
return /* @__PURE__ */ jsx92(JstSh, { footprint: normalizedFootprint });
|
|
8238
8385
|
}
|
|
8239
8386
|
if (fpJson.zh) {
|
|
8240
|
-
return /* @__PURE__ */
|
|
8387
|
+
return /* @__PURE__ */ jsx92(JSTZH1_5mm, { numPins: fpJson.num_pins });
|
|
8241
8388
|
}
|
|
8242
8389
|
if (fpJson.ph) {
|
|
8243
|
-
return /* @__PURE__ */
|
|
8390
|
+
return /* @__PURE__ */ jsx92(JSTPH2_0mm, { numPins: fpJson.num_pins });
|
|
8244
8391
|
}
|
|
8245
8392
|
if (fpJson.xh) {
|
|
8246
|
-
return /* @__PURE__ */
|
|
8393
|
+
return /* @__PURE__ */ jsx92(JSTXH2_5mm, { numPins: fpJson.num_pins });
|
|
8247
8394
|
}
|
|
8248
8395
|
break;
|
|
8249
8396
|
case "fpc":
|
|
8250
|
-
return /* @__PURE__ */
|
|
8397
|
+
return /* @__PURE__ */ jsx92(
|
|
8251
8398
|
FPC,
|
|
8252
8399
|
{
|
|
8253
8400
|
pinCount: fpJson.num_pins,
|
|
@@ -8267,7 +8414,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8267
8414
|
}
|
|
8268
8415
|
);
|
|
8269
8416
|
case "rj45":
|
|
8270
|
-
return /* @__PURE__ */
|
|
8417
|
+
return /* @__PURE__ */ jsx92(
|
|
8271
8418
|
RJ45,
|
|
8272
8419
|
{
|
|
8273
8420
|
bodyWidth: fpJson.w,
|
|
@@ -8293,7 +8440,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8293
8440
|
case "soic":
|
|
8294
8441
|
case "sop8":
|
|
8295
8442
|
case "ssop":
|
|
8296
|
-
return /* @__PURE__ */
|
|
8443
|
+
return /* @__PURE__ */ jsx92(
|
|
8297
8444
|
SOIC,
|
|
8298
8445
|
{
|
|
8299
8446
|
pinCount: fpJson.num_pins,
|
|
@@ -8317,7 +8464,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8317
8464
|
);
|
|
8318
8465
|
const distinct = (values) => new Set(values.map((value) => value.toFixed(3))).size;
|
|
8319
8466
|
const rowsAlongY = signalPads.length > 2 && distinct(signalPads.map((pad) => pad.y)) === 2 && distinct(signalPads.map((pad) => pad.x)) > 2;
|
|
8320
|
-
const dfn = /* @__PURE__ */
|
|
8467
|
+
const dfn = /* @__PURE__ */ jsx92(
|
|
8321
8468
|
DFN,
|
|
8322
8469
|
{
|
|
8323
8470
|
num_pins: fpJson.num_pins,
|
|
@@ -8332,13 +8479,13 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8332
8479
|
} : void 0
|
|
8333
8480
|
}
|
|
8334
8481
|
);
|
|
8335
|
-
return rowsAlongY ? /* @__PURE__ */
|
|
8482
|
+
return rowsAlongY ? /* @__PURE__ */ jsx92(Rotate24, { rotation: [0, 0, "90deg"], children: dfn }) : dfn;
|
|
8336
8483
|
}
|
|
8337
8484
|
case "mlp":
|
|
8338
8485
|
case "lga":
|
|
8339
8486
|
case "quad": {
|
|
8340
8487
|
if (fpJson.legsoutside) {
|
|
8341
|
-
return /* @__PURE__ */
|
|
8488
|
+
return /* @__PURE__ */ jsx92(
|
|
8342
8489
|
QFP,
|
|
8343
8490
|
{
|
|
8344
8491
|
pinCount: fpJson.num_pins,
|
|
@@ -8349,7 +8496,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8349
8496
|
}
|
|
8350
8497
|
);
|
|
8351
8498
|
}
|
|
8352
|
-
return /* @__PURE__ */
|
|
8499
|
+
return /* @__PURE__ */ jsx92(
|
|
8353
8500
|
qfn_default,
|
|
8354
8501
|
{
|
|
8355
8502
|
num_pins: fpJson.num_pins,
|
|
@@ -8365,7 +8512,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8365
8512
|
const pitch = dim(fpJson.p, 0.8);
|
|
8366
8513
|
const columns = fpJson.grid?.x ?? 8;
|
|
8367
8514
|
const rows = fpJson.grid?.y ?? 8;
|
|
8368
|
-
return /* @__PURE__ */
|
|
8515
|
+
return /* @__PURE__ */ jsx92(
|
|
8369
8516
|
BGA,
|
|
8370
8517
|
{
|
|
8371
8518
|
ballPitch: pitch,
|
|
@@ -8378,43 +8525,43 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8378
8525
|
);
|
|
8379
8526
|
}
|
|
8380
8527
|
case "sod523":
|
|
8381
|
-
return /* @__PURE__ */
|
|
8528
|
+
return /* @__PURE__ */ jsx92(SOD523, {});
|
|
8382
8529
|
case "sod723":
|
|
8383
|
-
return /* @__PURE__ */
|
|
8530
|
+
return /* @__PURE__ */ jsx92(SOD723_default, {});
|
|
8384
8531
|
case "sod882":
|
|
8385
|
-
return /* @__PURE__ */
|
|
8532
|
+
return /* @__PURE__ */ jsx92(SOD882, {});
|
|
8386
8533
|
case "sma":
|
|
8387
|
-
return /* @__PURE__ */
|
|
8534
|
+
return /* @__PURE__ */ jsx92(SMA, {});
|
|
8388
8535
|
case "smb":
|
|
8389
|
-
return /* @__PURE__ */
|
|
8536
|
+
return /* @__PURE__ */ jsx92(SMB, {});
|
|
8390
8537
|
case "smc":
|
|
8391
|
-
return /* @__PURE__ */
|
|
8538
|
+
return /* @__PURE__ */ jsx92(SMC, {});
|
|
8392
8539
|
case "smf":
|
|
8393
|
-
return /* @__PURE__ */
|
|
8540
|
+
return /* @__PURE__ */ jsx92(SMF, {});
|
|
8394
8541
|
case "sod123":
|
|
8395
|
-
return /* @__PURE__ */
|
|
8542
|
+
return /* @__PURE__ */ jsx92(SOD123, {});
|
|
8396
8543
|
case "sod123f":
|
|
8397
|
-
return /* @__PURE__ */
|
|
8544
|
+
return /* @__PURE__ */ jsx92(SOD123F, {});
|
|
8398
8545
|
case "sod123fl":
|
|
8399
|
-
return /* @__PURE__ */
|
|
8546
|
+
return /* @__PURE__ */ jsx92(SOD123FL, {});
|
|
8400
8547
|
case "sod123w":
|
|
8401
|
-
return /* @__PURE__ */
|
|
8548
|
+
return /* @__PURE__ */ jsx92(SOD123W, {});
|
|
8402
8549
|
case "sod110":
|
|
8403
|
-
return /* @__PURE__ */
|
|
8550
|
+
return /* @__PURE__ */ jsx92(SOD123W, { bodyWidth: 2.1, bodyLength: 1.4 });
|
|
8404
8551
|
case "sod128":
|
|
8405
|
-
return /* @__PURE__ */
|
|
8552
|
+
return /* @__PURE__ */ jsx92(SOD128, {});
|
|
8406
8553
|
case "sod323":
|
|
8407
|
-
return /* @__PURE__ */
|
|
8554
|
+
return /* @__PURE__ */ jsx92(SOD323, {});
|
|
8408
8555
|
case "sod323w":
|
|
8409
|
-
return /* @__PURE__ */
|
|
8556
|
+
return /* @__PURE__ */ jsx92(SOD323, {});
|
|
8410
8557
|
case "sod80":
|
|
8411
|
-
return /* @__PURE__ */
|
|
8558
|
+
return /* @__PURE__ */ jsx92(MINIMELF, {});
|
|
8412
8559
|
case "sod882d":
|
|
8413
|
-
return /* @__PURE__ */
|
|
8560
|
+
return /* @__PURE__ */ jsx92(SOD882, {});
|
|
8414
8561
|
case "smbf":
|
|
8415
|
-
return /* @__PURE__ */
|
|
8562
|
+
return /* @__PURE__ */ jsx92(SMB, {});
|
|
8416
8563
|
case "led2835":
|
|
8417
|
-
return /* @__PURE__ */
|
|
8564
|
+
return /* @__PURE__ */ jsx92(
|
|
8418
8565
|
Led2835,
|
|
8419
8566
|
{
|
|
8420
8567
|
color,
|
|
@@ -8432,10 +8579,10 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8432
8579
|
const pitch = dim(fpJson.p, 2.5);
|
|
8433
8580
|
const namedDiameter = footprint.match(/_d([\d.]+)/);
|
|
8434
8581
|
const diameter = fpJson.d !== void 0 ? dim(fpJson.d, pitch * 2) : namedDiameter ? Number(namedDiameter[1]) : pitch * 2;
|
|
8435
|
-
return /* @__PURE__ */
|
|
8582
|
+
return /* @__PURE__ */ jsx92(ElectrolyticCapacitor, { diameter, leadPitch: pitch });
|
|
8436
8583
|
}
|
|
8437
8584
|
case "potentiometer":
|
|
8438
|
-
return /* @__PURE__ */
|
|
8585
|
+
return /* @__PURE__ */ jsx92(
|
|
8439
8586
|
Potentiometer,
|
|
8440
8587
|
{
|
|
8441
8588
|
bodyWidth: dim(fpJson.w, 5.35),
|
|
@@ -8445,7 +8592,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8445
8592
|
}
|
|
8446
8593
|
);
|
|
8447
8594
|
case "smdpushbutton":
|
|
8448
|
-
return /* @__PURE__ */
|
|
8595
|
+
return /* @__PURE__ */ jsx92(
|
|
8449
8596
|
SmdPushButton,
|
|
8450
8597
|
{
|
|
8451
8598
|
padSpanX: dim(fpJson.px, 4.2),
|
|
@@ -8461,20 +8608,20 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8461
8608
|
{ x: -halfWidth, pins: fpJson.left ?? 0, key: "left" },
|
|
8462
8609
|
{ x: halfWidth, pins: fpJson.right ?? 0, key: "right" }
|
|
8463
8610
|
];
|
|
8464
|
-
return /* @__PURE__ */
|
|
8611
|
+
return /* @__PURE__ */ jsx92(Fragment84, { children: sides.filter(({ pins }) => pins > 0).map(({ x, pins, key }) => /* @__PURE__ */ jsx92(Translate43, { center: [x, 0, 0], children: /* @__PURE__ */ jsx92(Rotate24, { rotation: [0, 0, "90deg"], children: /* @__PURE__ */ jsx92(PinRow, { numberOfPins: pins, pitch }) }) }, key)) });
|
|
8465
8612
|
}
|
|
8466
8613
|
case "sod923":
|
|
8467
|
-
return /* @__PURE__ */
|
|
8614
|
+
return /* @__PURE__ */ jsx92(SOD923, {});
|
|
8468
8615
|
case "hc49":
|
|
8469
|
-
return /* @__PURE__ */
|
|
8616
|
+
return /* @__PURE__ */ jsx92(HC49, {});
|
|
8470
8617
|
case "micromelf":
|
|
8471
|
-
return /* @__PURE__ */
|
|
8618
|
+
return /* @__PURE__ */ jsx92(MicroMELF, {});
|
|
8472
8619
|
case "minimelf":
|
|
8473
|
-
return /* @__PURE__ */
|
|
8620
|
+
return /* @__PURE__ */ jsx92(MINIMELF, {});
|
|
8474
8621
|
case "melf":
|
|
8475
|
-
return /* @__PURE__ */
|
|
8622
|
+
return /* @__PURE__ */ jsx92(MELF, {});
|
|
8476
8623
|
case "ms012":
|
|
8477
|
-
return /* @__PURE__ */
|
|
8624
|
+
return /* @__PURE__ */ jsx92(
|
|
8478
8625
|
MS012,
|
|
8479
8626
|
{
|
|
8480
8627
|
pinCount: fpJson.num_pins,
|
|
@@ -8484,7 +8631,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8484
8631
|
}
|
|
8485
8632
|
);
|
|
8486
8633
|
case "ms013":
|
|
8487
|
-
return /* @__PURE__ */
|
|
8634
|
+
return /* @__PURE__ */ jsx92(
|
|
8488
8635
|
MS013,
|
|
8489
8636
|
{
|
|
8490
8637
|
pinCount: fpJson.num_pins,
|
|
@@ -8494,19 +8641,19 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8494
8641
|
}
|
|
8495
8642
|
);
|
|
8496
8643
|
case "sot723":
|
|
8497
|
-
return /* @__PURE__ */
|
|
8644
|
+
return /* @__PURE__ */ jsx92(SOT723, {});
|
|
8498
8645
|
case "to220":
|
|
8499
|
-
return /* @__PURE__ */
|
|
8646
|
+
return /* @__PURE__ */ jsx92(TO220, { leads: getPlatedHoleCenters(normalizedFootprint) });
|
|
8500
8647
|
case "to220f":
|
|
8501
|
-
return /* @__PURE__ */
|
|
8648
|
+
return /* @__PURE__ */ jsx92(TO220, { mouldedTab: true, leads: getPlatedHoleCenters(normalizedFootprint) });
|
|
8502
8649
|
case "to92":
|
|
8503
|
-
return /* @__PURE__ */
|
|
8650
|
+
return /* @__PURE__ */ jsx92(TO92, { leads: getPlatedHoleCenters(normalizedFootprint) });
|
|
8504
8651
|
case "to92l":
|
|
8505
8652
|
case "to92s": {
|
|
8506
8653
|
const across = dim(fpJson.w, 4.8);
|
|
8507
8654
|
const along = dim(fpJson.h, 4);
|
|
8508
8655
|
const diameter = Math.max(across, along);
|
|
8509
|
-
return /* @__PURE__ */
|
|
8656
|
+
return /* @__PURE__ */ jsx92(
|
|
8510
8657
|
TO92,
|
|
8511
8658
|
{
|
|
8512
8659
|
bodyDiameter: diameter,
|
|
@@ -8525,7 +8672,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8525
8672
|
dim(fpJson.tabh, isD2Pak ? 10 : 5.8),
|
|
8526
8673
|
isD2Pak ? 10 : 6.5
|
|
8527
8674
|
);
|
|
8528
|
-
return /* @__PURE__ */
|
|
8675
|
+
return /* @__PURE__ */ jsx92(
|
|
8529
8676
|
DPAK,
|
|
8530
8677
|
{
|
|
8531
8678
|
bodyWidth: tabWidth,
|
|
@@ -8542,7 +8689,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8542
8689
|
}
|
|
8543
8690
|
case "stampboard":
|
|
8544
8691
|
case "stampreceiver":
|
|
8545
|
-
return /* @__PURE__ */
|
|
8692
|
+
return /* @__PURE__ */ jsx92(
|
|
8546
8693
|
StampBoard,
|
|
8547
8694
|
{
|
|
8548
8695
|
bodyWidth: fpJson.w,
|
|
@@ -8566,7 +8713,7 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8566
8713
|
const pinRow = fpJson.pinrow;
|
|
8567
8714
|
const pinRowHoleEdgeToEdgeDist = fpJson.pinRowHoleEdgeToEdgeDist;
|
|
8568
8715
|
const holes = Array.isArray(fpJson.holes) ? fpJson.holes : [];
|
|
8569
|
-
return /* @__PURE__ */
|
|
8716
|
+
return /* @__PURE__ */ jsx92(
|
|
8570
8717
|
MountedPcbModule,
|
|
8571
8718
|
{
|
|
8572
8719
|
numPins: pinRow,
|
|
@@ -8593,29 +8740,29 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8593
8740
|
}
|
|
8594
8741
|
switch (fpJson.imperial) {
|
|
8595
8742
|
case "0402":
|
|
8596
|
-
return /* @__PURE__ */
|
|
8743
|
+
return /* @__PURE__ */ jsx92(A0402, { color });
|
|
8597
8744
|
case "0603":
|
|
8598
|
-
return /* @__PURE__ */
|
|
8745
|
+
return /* @__PURE__ */ jsx92(A0603, { color });
|
|
8599
8746
|
case "0805":
|
|
8600
|
-
return /* @__PURE__ */
|
|
8747
|
+
return /* @__PURE__ */ jsx92(A0805, { color });
|
|
8601
8748
|
case "0201":
|
|
8602
|
-
return /* @__PURE__ */
|
|
8749
|
+
return /* @__PURE__ */ jsx92(A0201, { color });
|
|
8603
8750
|
case "01005":
|
|
8604
|
-
return /* @__PURE__ */
|
|
8751
|
+
return /* @__PURE__ */ jsx92(A01005, { color });
|
|
8605
8752
|
case "1206":
|
|
8606
|
-
return /* @__PURE__ */
|
|
8753
|
+
return /* @__PURE__ */ jsx92(A1206, { color });
|
|
8607
8754
|
case "1210":
|
|
8608
|
-
return /* @__PURE__ */
|
|
8755
|
+
return /* @__PURE__ */ jsx92(A1210, { color });
|
|
8609
8756
|
case "2010":
|
|
8610
|
-
return /* @__PURE__ */
|
|
8757
|
+
return /* @__PURE__ */ jsx92(A2010, { color });
|
|
8611
8758
|
case "2512":
|
|
8612
|
-
return /* @__PURE__ */
|
|
8759
|
+
return /* @__PURE__ */ jsx92(A2512, { color });
|
|
8613
8760
|
}
|
|
8614
8761
|
if ((fpJson.fn === "res" || fpJson.fn === "cap") && fpJson.p !== void 0 && fpJson.ph !== void 0) {
|
|
8615
8762
|
const padPitch = mm2(fpJson.p);
|
|
8616
8763
|
const padHeight = mm2(fpJson.ph);
|
|
8617
8764
|
if (Number.isFinite(padPitch) && Number.isFinite(padHeight)) {
|
|
8618
|
-
return /* @__PURE__ */
|
|
8765
|
+
return /* @__PURE__ */ jsx92(
|
|
8619
8766
|
ParametricChip,
|
|
8620
8767
|
{
|
|
8621
8768
|
padPitch,
|
|
@@ -8629,8 +8776,8 @@ var Footprinter3d = ({ footprint }) => {
|
|
|
8629
8776
|
};
|
|
8630
8777
|
|
|
8631
8778
|
// lib/utils/FlatLeadDiode.tsx
|
|
8632
|
-
import { Colorize as
|
|
8633
|
-
import { Fragment as
|
|
8779
|
+
import { Colorize as Colorize57, Cuboid as Cuboid65, Hull as Hull30, Subtract as Subtract23 } from "jscad-fiber";
|
|
8780
|
+
import { Fragment as Fragment85, jsx as jsx93, jsxs as jsxs88 } from "react/jsx-runtime";
|
|
8634
8781
|
function createFlatLeadDiode(p) {
|
|
8635
8782
|
const dimensions = [
|
|
8636
8783
|
"bodyLength",
|
|
@@ -8658,16 +8805,16 @@ function createFlatLeadDiode(p) {
|
|
|
8658
8805
|
"Diode dimensions leave disconnected terminals or an invalid mold"
|
|
8659
8806
|
);
|
|
8660
8807
|
const slice = Math.min(p.bodyHeight - p.standoff, p.bodyWidth) / 100;
|
|
8661
|
-
const body = /* @__PURE__ */
|
|
8662
|
-
/* @__PURE__ */
|
|
8663
|
-
|
|
8808
|
+
const body = /* @__PURE__ */ jsxs88(Hull30, { children: [
|
|
8809
|
+
/* @__PURE__ */ jsx93(
|
|
8810
|
+
Cuboid65,
|
|
8664
8811
|
{
|
|
8665
8812
|
size: [p.bodyLength, p.bodyWidth, slice],
|
|
8666
8813
|
center: [0, 0, p.standoff + slice / 2]
|
|
8667
8814
|
}
|
|
8668
8815
|
),
|
|
8669
|
-
/* @__PURE__ */
|
|
8670
|
-
|
|
8816
|
+
/* @__PURE__ */ jsx93(
|
|
8817
|
+
Cuboid65,
|
|
8671
8818
|
{
|
|
8672
8819
|
size: [
|
|
8673
8820
|
p.bodyLength - p.taperInset * 2,
|
|
@@ -8678,8 +8825,8 @@ function createFlatLeadDiode(p) {
|
|
|
8678
8825
|
}
|
|
8679
8826
|
)
|
|
8680
8827
|
] });
|
|
8681
|
-
const stripe = /* @__PURE__ */
|
|
8682
|
-
|
|
8828
|
+
const stripe = /* @__PURE__ */ jsx93(
|
|
8829
|
+
Cuboid65,
|
|
8683
8830
|
{
|
|
8684
8831
|
size: [p.markingWidth, (p.bodyWidth - p.taperInset * 2) * 0.9, slice],
|
|
8685
8832
|
center: [
|
|
@@ -8689,14 +8836,14 @@ function createFlatLeadDiode(p) {
|
|
|
8689
8836
|
]
|
|
8690
8837
|
}
|
|
8691
8838
|
);
|
|
8692
|
-
return /* @__PURE__ */
|
|
8693
|
-
/* @__PURE__ */
|
|
8839
|
+
return /* @__PURE__ */ jsxs88(Fragment85, { children: [
|
|
8840
|
+
/* @__PURE__ */ jsx93(Colorize57, { color: "#25272a", children: p.markingWidth > 0 ? /* @__PURE__ */ jsxs88(Subtract23, { children: [
|
|
8694
8841
|
body,
|
|
8695
8842
|
stripe
|
|
8696
8843
|
] }) : body }),
|
|
8697
|
-
/* @__PURE__ */
|
|
8698
|
-
/* @__PURE__ */
|
|
8699
|
-
|
|
8844
|
+
/* @__PURE__ */ jsxs88(Colorize57, { color: "#c7c9cd", children: [
|
|
8845
|
+
/* @__PURE__ */ jsx93(
|
|
8846
|
+
Cuboid65,
|
|
8700
8847
|
{
|
|
8701
8848
|
size: [p.cathodeLength, p.cathodeWidth, p.terminalThickness],
|
|
8702
8849
|
center: [
|
|
@@ -8706,8 +8853,8 @@ function createFlatLeadDiode(p) {
|
|
|
8706
8853
|
]
|
|
8707
8854
|
}
|
|
8708
8855
|
),
|
|
8709
|
-
/* @__PURE__ */
|
|
8710
|
-
|
|
8856
|
+
/* @__PURE__ */ jsx93(
|
|
8857
|
+
Cuboid65,
|
|
8711
8858
|
{
|
|
8712
8859
|
size: [p.anodeLength, p.anodeWidth, p.terminalThickness],
|
|
8713
8860
|
center: [
|
|
@@ -8718,7 +8865,7 @@ function createFlatLeadDiode(p) {
|
|
|
8718
8865
|
}
|
|
8719
8866
|
)
|
|
8720
8867
|
] }),
|
|
8721
|
-
p.markingWidth > 0 && /* @__PURE__ */
|
|
8868
|
+
p.markingWidth > 0 && /* @__PURE__ */ jsx93(Colorize57, { color: "#aaaaa8", children: stripe })
|
|
8722
8869
|
] });
|
|
8723
8870
|
}
|
|
8724
8871
|
|
|
@@ -8758,8 +8905,8 @@ var SOD323HE = (props) => createFlatLeadDiode({
|
|
|
8758
8905
|
|
|
8759
8906
|
// lib/TantalumCapacitor.tsx
|
|
8760
8907
|
import { fp as fp11 } from "@tscircuit/footprinter";
|
|
8761
|
-
import { Colorize as
|
|
8762
|
-
import { jsx as
|
|
8908
|
+
import { Colorize as Colorize58, Cuboid as Cuboid66, Hull as Hull31, Rotate as Rotate25, Translate as Translate44, Union as Union24 } from "jscad-fiber";
|
|
8909
|
+
import { jsx as jsx94, jsxs as jsxs89 } from "react/jsx-runtime";
|
|
8763
8910
|
var tantalumCases = {
|
|
8764
8911
|
A: [3.2, 1.6, 1.6, 1.2, 0.8],
|
|
8765
8912
|
B: [3.5, 2.8, 1.9, 2.2, 0.8],
|
|
@@ -8779,35 +8926,35 @@ var TantalumCapacitor = ({
|
|
|
8779
8926
|
if (pads.length !== 2) throw new Error("TantalumCapacitor requires two pads");
|
|
8780
8927
|
const [a, b] = pads;
|
|
8781
8928
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8782
|
-
return /* @__PURE__ */
|
|
8783
|
-
/* @__PURE__ */
|
|
8784
|
-
/* @__PURE__ */
|
|
8785
|
-
/* @__PURE__ */
|
|
8786
|
-
|
|
8929
|
+
return /* @__PURE__ */ jsx94(Translate44, { offset: [(a.x + b.x) / 2, (a.y + b.y) / 2, 0], children: /* @__PURE__ */ jsxs89(Rotate25, { rotation: [0, 0, angle], children: [
|
|
8930
|
+
/* @__PURE__ */ jsx94(Colorize58, { color: "#d5a64e", children: /* @__PURE__ */ jsxs89(Hull31, { children: [
|
|
8931
|
+
/* @__PURE__ */ jsx94(Cuboid66, { size: [length - 0.1, width10, 0.02], center: [0, 0, 0.21] }),
|
|
8932
|
+
/* @__PURE__ */ jsx94(
|
|
8933
|
+
Cuboid66,
|
|
8787
8934
|
{
|
|
8788
8935
|
size: [length - 0.25, width10 - 0.15, 0.02],
|
|
8789
8936
|
center: [0, 0, height10 - 0.01]
|
|
8790
8937
|
}
|
|
8791
8938
|
)
|
|
8792
8939
|
] }) }),
|
|
8793
|
-
/* @__PURE__ */
|
|
8794
|
-
/* @__PURE__ */
|
|
8795
|
-
|
|
8940
|
+
/* @__PURE__ */ jsx94(Colorize58, { color: "#c5c8cb", children: [-1, 1].map((side) => /* @__PURE__ */ jsxs89(Union24, { children: [
|
|
8941
|
+
/* @__PURE__ */ jsx94(
|
|
8942
|
+
Cuboid66,
|
|
8796
8943
|
{
|
|
8797
8944
|
size: [leadLength, leadWidth, 0.25],
|
|
8798
8945
|
center: [side * (length - leadLength) / 2, 0, 0.125]
|
|
8799
8946
|
}
|
|
8800
8947
|
),
|
|
8801
|
-
/* @__PURE__ */
|
|
8802
|
-
|
|
8948
|
+
/* @__PURE__ */ jsx94(
|
|
8949
|
+
Cuboid66,
|
|
8803
8950
|
{
|
|
8804
8951
|
size: [0.15, leadWidth, height10 * 0.45],
|
|
8805
8952
|
center: [side * (length - 0.15) / 2, 0, height10 * 0.225]
|
|
8806
8953
|
}
|
|
8807
8954
|
)
|
|
8808
8955
|
] }, side)) }),
|
|
8809
|
-
/* @__PURE__ */
|
|
8810
|
-
|
|
8956
|
+
/* @__PURE__ */ jsx94(
|
|
8957
|
+
Cuboid66,
|
|
8811
8958
|
{
|
|
8812
8959
|
size: [0.25, width10 - 0.25, 0.01],
|
|
8813
8960
|
center: [-length / 2 + 0.5, 0, height10],
|
|
@@ -8819,8 +8966,8 @@ var TantalumCapacitor = ({
|
|
|
8819
8966
|
|
|
8820
8967
|
// lib/TwoPadCrystal.tsx
|
|
8821
8968
|
import { fp as fp12 } from "@tscircuit/footprinter";
|
|
8822
|
-
import { Colorize as
|
|
8823
|
-
import { jsx as
|
|
8969
|
+
import { Colorize as Colorize59, Cuboid as Cuboid67, RoundedCuboid as RoundedCuboid6, Rotate as Rotate26, Translate as Translate45 } from "jscad-fiber";
|
|
8970
|
+
import { jsx as jsx95, jsxs as jsxs90 } from "react/jsx-runtime";
|
|
8824
8971
|
var twoPadCrystalPackages = {
|
|
8825
8972
|
FC135: [3.2, 1.5, 0.9, 0.7],
|
|
8826
8973
|
FC12M: [2.05, 1.2, 0.6, 0.5],
|
|
@@ -8840,9 +8987,9 @@ var TwoPadCrystal = ({
|
|
|
8840
8987
|
if (pads.length !== 2) throw new Error("TwoPadCrystal requires two pads");
|
|
8841
8988
|
const [a, b] = pads;
|
|
8842
8989
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8843
|
-
return /* @__PURE__ */
|
|
8844
|
-
/* @__PURE__ */
|
|
8845
|
-
/* @__PURE__ */
|
|
8990
|
+
return /* @__PURE__ */ jsx95(Translate45, { offset: [(a.x + b.x) / 2, (a.y + b.y) / 2, 0], children: /* @__PURE__ */ jsxs90(Rotate26, { rotation: [0, 0, angle], children: [
|
|
8991
|
+
/* @__PURE__ */ jsx95(Colorize59, { color: "#e0dcca", children: /* @__PURE__ */ jsx95(Cuboid67, { size: [length, width10, 0.2], center: [0, 0, 0.13] }) }),
|
|
8992
|
+
/* @__PURE__ */ jsx95(Colorize59, { color: "#acb1b8", children: /* @__PURE__ */ jsx95(
|
|
8846
8993
|
RoundedCuboid6,
|
|
8847
8994
|
{
|
|
8848
8995
|
size: [length - 0.04, width10 - 0.04, height10 - 0.18],
|
|
@@ -8850,8 +8997,8 @@ var TwoPadCrystal = ({
|
|
|
8850
8997
|
center: [0, 0, (height10 + 0.18) / 2]
|
|
8851
8998
|
}
|
|
8852
8999
|
) }),
|
|
8853
|
-
/* @__PURE__ */
|
|
8854
|
-
|
|
9000
|
+
/* @__PURE__ */ jsx95(Colorize59, { color: "#c6af65", children: [-1, 1].map((side) => /* @__PURE__ */ jsx95(
|
|
9001
|
+
Cuboid67,
|
|
8855
9002
|
{
|
|
8856
9003
|
size: [terminalLength, width10 - 0.12, 0.06],
|
|
8857
9004
|
center: [side * (length - terminalLength) / 2, 0, 0.03]
|
|
@@ -8863,8 +9010,8 @@ var TwoPadCrystal = ({
|
|
|
8863
9010
|
|
|
8864
9011
|
// lib/CeramicChipAntenna.tsx
|
|
8865
9012
|
import { fp as fp13 } from "@tscircuit/footprinter";
|
|
8866
|
-
import { Colorize as
|
|
8867
|
-
import { jsx as
|
|
9013
|
+
import { Colorize as Colorize60, Cuboid as Cuboid68, Rotate as Rotate27, Translate as Translate46 } from "jscad-fiber";
|
|
9014
|
+
import { jsx as jsx96, jsxs as jsxs91 } from "react/jsx-runtime";
|
|
8868
9015
|
var CeramicChipAntenna = ({
|
|
8869
9016
|
footprint = "smdpads2_p5.4mm_pw1mm_ph2mm"
|
|
8870
9017
|
}) => {
|
|
@@ -8874,17 +9021,17 @@ var CeramicChipAntenna = ({
|
|
|
8874
9021
|
if (pads.length !== 2) throw new Error("CeramicChipAntenna requires two pads");
|
|
8875
9022
|
const [a, b] = pads;
|
|
8876
9023
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8877
|
-
return /* @__PURE__ */
|
|
8878
|
-
/* @__PURE__ */
|
|
8879
|
-
|
|
9024
|
+
return /* @__PURE__ */ jsx96(Translate46, { offset: [(a.x + b.x) / 2, (a.y + b.y) / 2, 0], children: /* @__PURE__ */ jsxs91(Rotate27, { rotation: [0, 0, angle], children: [
|
|
9025
|
+
/* @__PURE__ */ jsx96(
|
|
9026
|
+
Cuboid68,
|
|
8880
9027
|
{
|
|
8881
9028
|
size: [4.44, 1.99, 1.14],
|
|
8882
9029
|
center: [0, 0, 0.575],
|
|
8883
9030
|
color: "#4053a3"
|
|
8884
9031
|
}
|
|
8885
9032
|
),
|
|
8886
|
-
/* @__PURE__ */
|
|
8887
|
-
|
|
9033
|
+
/* @__PURE__ */ jsx96(Colorize60, { color: "#c2c4c7", children: [-1, 1].map((side) => /* @__PURE__ */ jsx96(
|
|
9034
|
+
Cuboid68,
|
|
8888
9035
|
{
|
|
8889
9036
|
size: [0.4, 2, 1.15],
|
|
8890
9037
|
center: [side * 2.4, 0, 0.575],
|
|
@@ -8892,8 +9039,8 @@ var CeramicChipAntenna = ({
|
|
|
8892
9039
|
},
|
|
8893
9040
|
side
|
|
8894
9041
|
)) }),
|
|
8895
|
-
/* @__PURE__ */
|
|
8896
|
-
|
|
9042
|
+
/* @__PURE__ */ jsx96(
|
|
9043
|
+
Cuboid68,
|
|
8897
9044
|
{
|
|
8898
9045
|
size: [0.9, 2, 0.01],
|
|
8899
9046
|
center: [-1.75, 0, 1.145],
|
|
@@ -8905,8 +9052,8 @@ var CeramicChipAntenna = ({
|
|
|
8905
9052
|
|
|
8906
9053
|
// lib/MelfResistor.tsx
|
|
8907
9054
|
import { fp as fp14 } from "@tscircuit/footprinter";
|
|
8908
|
-
import { Colorize as
|
|
8909
|
-
import { jsx as
|
|
9055
|
+
import { Colorize as Colorize61, Cylinder as Cylinder25, Rotate as Rotate28, Translate as Translate47 } from "jscad-fiber";
|
|
9056
|
+
import { jsx as jsx97, jsxs as jsxs92 } from "react/jsx-runtime";
|
|
8910
9057
|
var melfResistorSizes = {
|
|
8911
9058
|
"0102": [2.2, 1.1, 0.4],
|
|
8912
9059
|
"0204": [3.6, 1.4, 0.75],
|
|
@@ -8925,16 +9072,16 @@ var MelfResistor = ({
|
|
|
8925
9072
|
if (pads.length !== 2) throw new Error("MelfResistor requires two pads");
|
|
8926
9073
|
const [a, b] = pads;
|
|
8927
9074
|
const angle = Math.atan2(b.y - a.y, b.x - a.x);
|
|
8928
|
-
return /* @__PURE__ */
|
|
8929
|
-
/* @__PURE__ */
|
|
8930
|
-
|
|
9075
|
+
return /* @__PURE__ */ jsx97(Translate47, { offset: [(a.x + b.x) / 2, (a.y + b.y) / 2, diameter / 2], children: /* @__PURE__ */ jsx97(Rotate28, { rotation: [0, 0, angle], children: /* @__PURE__ */ jsxs92(Rotate28, { rotation: [0, Math.PI / 2, 0], children: [
|
|
9076
|
+
/* @__PURE__ */ jsx97(Colorize61, { color: "#426d63", children: /* @__PURE__ */ jsx97(
|
|
9077
|
+
Cylinder25,
|
|
8931
9078
|
{
|
|
8932
9079
|
radius: (diameter - 0.08) / 2,
|
|
8933
9080
|
height: length - 2 * capLength + 0.04
|
|
8934
9081
|
}
|
|
8935
9082
|
) }),
|
|
8936
|
-
/* @__PURE__ */
|
|
8937
|
-
|
|
9083
|
+
/* @__PURE__ */ jsx97(Colorize61, { color: "#c6c8cb", children: [-1, 1].map((side) => /* @__PURE__ */ jsx97(
|
|
9084
|
+
Cylinder25,
|
|
8938
9085
|
{
|
|
8939
9086
|
radius: diameter / 2,
|
|
8940
9087
|
height: capLength,
|