@tscircuit/core 0.0.1812 → 0.0.1814
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 +1 -1
- package/dist/index.js +69 -6
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -15486,7 +15486,7 @@ declare class Capacitor extends NormalComponent<typeof capacitorProps, Polarized
|
|
|
15486
15486
|
doInitialSourceRender(): void;
|
|
15487
15487
|
}
|
|
15488
15488
|
|
|
15489
|
-
declare class Antenna extends NormalComponent<typeof antennaProps, "pin1" | "feed" | "pin2" | "ground" | "gnd" | "feed2"> {
|
|
15489
|
+
declare class Antenna extends NormalComponent<typeof antennaProps, "pin1" | "feed" | "feed1" | "pin2" | "ground" | "gnd" | "feed2"> {
|
|
15490
15490
|
get config(): {
|
|
15491
15491
|
componentName: string;
|
|
15492
15492
|
zodProps: zod.ZodObject<{
|
package/dist/index.js
CHANGED
|
@@ -42293,7 +42293,7 @@ function Group_getRoutingPhasePlans(group) {
|
|
|
42293
42293
|
var package_default = {
|
|
42294
42294
|
name: "@tscircuit/core",
|
|
42295
42295
|
type: "module",
|
|
42296
|
-
version: "0.0.
|
|
42296
|
+
version: "0.0.1813",
|
|
42297
42297
|
types: "dist/index.d.ts",
|
|
42298
42298
|
main: "dist/index.js",
|
|
42299
42299
|
module: "dist/index.js",
|
|
@@ -49172,12 +49172,54 @@ var Panel = class extends Subpanel {
|
|
|
49172
49172
|
import { antennaProps } from "@tscircuit/props";
|
|
49173
49173
|
|
|
49174
49174
|
// lib/components/normal-components/get-generated-antenna-geometry.ts
|
|
49175
|
+
var GENERATED_ANTENNA_KEEPOUT_CLEARANCE_MM = 1;
|
|
49176
|
+
var GENERATED_ANTENNA_FEED_OPENING_CLEARANCE_MM = 1;
|
|
49177
|
+
var getGeneratedAntennaKeepouts = (geometry) => {
|
|
49178
|
+
const xCoordinates = geometry.route.map((point6) => point6.x);
|
|
49179
|
+
const yCoordinates = geometry.route.map((point6) => point6.y);
|
|
49180
|
+
const edgeClearance = geometry.traceWidth / 2 + GENERATED_ANTENNA_KEEPOUT_CLEARANCE_MM;
|
|
49181
|
+
const left = Math.min(...xCoordinates) - edgeClearance;
|
|
49182
|
+
const right = Math.max(...xCoordinates) + edgeClearance;
|
|
49183
|
+
const bottom = Math.min(...yCoordinates) - edgeClearance;
|
|
49184
|
+
const top = Math.max(...yCoordinates) + edgeClearance;
|
|
49185
|
+
const feedOpeningPoints = [
|
|
49186
|
+
geometry.feedPoint,
|
|
49187
|
+
...geometry.secondaryPort ? [geometry.secondaryPort.point] : []
|
|
49188
|
+
];
|
|
49189
|
+
const openingLeft = Math.min(...feedOpeningPoints.map((point6) => point6.x)) - GENERATED_ANTENNA_FEED_OPENING_CLEARANCE_MM;
|
|
49190
|
+
const openingRight = Math.max(...feedOpeningPoints.map((point6) => point6.x)) + GENERATED_ANTENNA_FEED_OPENING_CLEARANCE_MM;
|
|
49191
|
+
const openingBottom = Math.min(...feedOpeningPoints.map((point6) => point6.y)) - GENERATED_ANTENNA_FEED_OPENING_CLEARANCE_MM;
|
|
49192
|
+
const openingTop = Math.max(...feedOpeningPoints.map((point6) => point6.y)) + GENERATED_ANTENNA_FEED_OPENING_CLEARANCE_MM;
|
|
49193
|
+
const rects = [];
|
|
49194
|
+
const addRect = (rectLeft, rectRight, rectBottom, rectTop) => {
|
|
49195
|
+
if (rectRight <= rectLeft || rectTop <= rectBottom) return;
|
|
49196
|
+
rects.push({
|
|
49197
|
+
center: {
|
|
49198
|
+
x: (rectLeft + rectRight) / 2,
|
|
49199
|
+
y: (rectBottom + rectTop) / 2
|
|
49200
|
+
},
|
|
49201
|
+
width: rectRight - rectLeft,
|
|
49202
|
+
height: rectTop - rectBottom
|
|
49203
|
+
});
|
|
49204
|
+
};
|
|
49205
|
+
if (geometry.feedKeepoutOpeningDirection === "left") {
|
|
49206
|
+
addRect(left, right, openingTop, top);
|
|
49207
|
+
addRect(left, right, bottom, openingBottom);
|
|
49208
|
+
addRect(openingRight, right, openingBottom, openingTop);
|
|
49209
|
+
} else {
|
|
49210
|
+
addRect(left, openingLeft, bottom, openingTop);
|
|
49211
|
+
addRect(openingRight, right, bottom, openingTop);
|
|
49212
|
+
addRect(left, right, openingTop, top);
|
|
49213
|
+
}
|
|
49214
|
+
return rects;
|
|
49215
|
+
};
|
|
49175
49216
|
var getGeneratedAntennaGeometry = (antennaShape) => {
|
|
49176
49217
|
switch (antennaShape) {
|
|
49177
49218
|
case "2.4ghz_quarter_wave_monopole":
|
|
49178
49219
|
return {
|
|
49179
49220
|
traceWidth: 0.6,
|
|
49180
49221
|
feedPoint: { x: 0, y: 0 },
|
|
49222
|
+
feedKeepoutOpeningDirection: "left",
|
|
49181
49223
|
route: [
|
|
49182
49224
|
{ x: 0, y: 0 },
|
|
49183
49225
|
{ x: 31, y: 0 }
|
|
@@ -49187,6 +49229,7 @@ var getGeneratedAntennaGeometry = (antennaShape) => {
|
|
|
49187
49229
|
return {
|
|
49188
49230
|
traceWidth: 0.5,
|
|
49189
49231
|
feedPoint: { x: 0, y: 0 },
|
|
49232
|
+
feedKeepoutOpeningDirection: "bottom",
|
|
49190
49233
|
route: [
|
|
49191
49234
|
{ x: 0, y: 0 },
|
|
49192
49235
|
{ x: 0, y: 6 },
|
|
@@ -49205,6 +49248,7 @@ var getGeneratedAntennaGeometry = (antennaShape) => {
|
|
|
49205
49248
|
return {
|
|
49206
49249
|
traceWidth: 0.8,
|
|
49207
49250
|
feedPoint: { x: 0, y: 0 },
|
|
49251
|
+
feedKeepoutOpeningDirection: "bottom",
|
|
49208
49252
|
secondaryPort: { point: { x: -4, y: 0 }, role: "ground" },
|
|
49209
49253
|
groundViaPoint: { x: -4, y: 0 },
|
|
49210
49254
|
route: [
|
|
@@ -49222,6 +49266,7 @@ var getGeneratedAntennaGeometry = (antennaShape) => {
|
|
|
49222
49266
|
return {
|
|
49223
49267
|
traceWidth: 0.5,
|
|
49224
49268
|
feedPoint: { x: 0, y: 0 },
|
|
49269
|
+
feedKeepoutOpeningDirection: "bottom",
|
|
49225
49270
|
secondaryPort: { point: { x: -1.7, y: 0 }, role: "ground" },
|
|
49226
49271
|
groundViaPoint: { x: -1.7, y: 0 },
|
|
49227
49272
|
route: [
|
|
@@ -49246,6 +49291,7 @@ var getGeneratedAntennaGeometry = (antennaShape) => {
|
|
|
49246
49291
|
return {
|
|
49247
49292
|
traceWidth: 0.9,
|
|
49248
49293
|
feedPoint: { x: 0, y: 0 },
|
|
49294
|
+
feedKeepoutOpeningDirection: "bottom",
|
|
49249
49295
|
secondaryPort: { point: { x: 1.2, y: 0 }, role: "feed2" },
|
|
49250
49296
|
route: [
|
|
49251
49297
|
{ x: 0, y: 0 },
|
|
@@ -49278,7 +49324,7 @@ var Antenna = class extends NormalComponent3 {
|
|
|
49278
49324
|
super.initPorts({
|
|
49279
49325
|
pinCount: secondaryPortRole ? 2 : 1,
|
|
49280
49326
|
additionalAliases: {
|
|
49281
|
-
pin1: ["feed"],
|
|
49327
|
+
pin1: secondaryPortRole === "feed2" ? ["feed", "feed1"] : ["feed"],
|
|
49282
49328
|
...secondaryPortRole === "ground" ? { pin2: ["ground", "gnd"] } : secondaryPortRole === "feed2" ? { pin2: ["feed2"] } : {}
|
|
49283
49329
|
}
|
|
49284
49330
|
});
|
|
@@ -49310,6 +49356,22 @@ var Antenna = class extends NormalComponent3 {
|
|
|
49310
49356
|
);
|
|
49311
49357
|
}
|
|
49312
49358
|
if (geometry) {
|
|
49359
|
+
const keepouts = getGeneratedAntennaKeepouts(geometry);
|
|
49360
|
+
for (const keepout of keepouts) {
|
|
49361
|
+
generatedFootprint.add(
|
|
49362
|
+
new Keepout({
|
|
49363
|
+
shape: "rect",
|
|
49364
|
+
pcbX: keepout.center.x,
|
|
49365
|
+
pcbY: keepout.center.y,
|
|
49366
|
+
width: keepout.width,
|
|
49367
|
+
height: keepout.height,
|
|
49368
|
+
layers: [
|
|
49369
|
+
...this.root?._getBoard()?.allLayers ?? ["top", "bottom"]
|
|
49370
|
+
],
|
|
49371
|
+
excludeRefs: [this.getSubcircuitSelector()]
|
|
49372
|
+
})
|
|
49373
|
+
);
|
|
49374
|
+
}
|
|
49313
49375
|
generatedFootprint.add(
|
|
49314
49376
|
new PcbTrace({
|
|
49315
49377
|
route: geometry.route.map((point6) => ({
|
|
@@ -49320,7 +49382,7 @@ var Antenna = class extends NormalComponent3 {
|
|
|
49320
49382
|
}))
|
|
49321
49383
|
})
|
|
49322
49384
|
);
|
|
49323
|
-
if (geometry.secondaryPort && !hasFootprint) {
|
|
49385
|
+
if (geometry.secondaryPort && !geometry.groundViaPoint && !hasFootprint) {
|
|
49324
49386
|
generatedFootprint.add(
|
|
49325
49387
|
new SmtPad({
|
|
49326
49388
|
shape: "rect",
|
|
@@ -49336,13 +49398,14 @@ var Antenna = class extends NormalComponent3 {
|
|
|
49336
49398
|
}
|
|
49337
49399
|
if (geometry.groundViaPoint) {
|
|
49338
49400
|
generatedFootprint.add(
|
|
49339
|
-
new
|
|
49401
|
+
new PlatedHole({
|
|
49402
|
+
shape: "circle",
|
|
49340
49403
|
pcbX: geometry.groundViaPoint.x,
|
|
49341
49404
|
pcbY: geometry.groundViaPoint.y,
|
|
49342
49405
|
holeDiameter: 0.3,
|
|
49343
49406
|
outerDiameter: 0.7,
|
|
49344
|
-
|
|
49345
|
-
|
|
49407
|
+
portHints: ["pin2"],
|
|
49408
|
+
coveredWithSolderMask: true
|
|
49346
49409
|
})
|
|
49347
49410
|
);
|
|
49348
49411
|
}
|