@tscircuit/core 0.0.2020 → 0.0.2021
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +25 -20
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -55517,6 +55517,21 @@ var getUnbrokenCopperPourObstacles = ({
|
|
|
55517
55517
|
};
|
|
55518
55518
|
|
|
55519
55519
|
// lib/utils/autorouting/getSimpleRouteJsonFromCircuitJson.ts
|
|
55520
|
+
var getSrjConnectionPointsFromPcbTraceHints = (connectedPcbPorts, pcbTraceHints) => {
|
|
55521
|
+
const connectedPcbPortById = new Map(
|
|
55522
|
+
connectedPcbPorts.map((pcbPort) => [pcbPort.pcb_port_id, pcbPort])
|
|
55523
|
+
);
|
|
55524
|
+
return pcbTraceHints.flatMap((pcbTraceHint) => {
|
|
55525
|
+
const pcbPort = connectedPcbPortById.get(pcbTraceHint.pcb_port_id);
|
|
55526
|
+
if (!pcbPort) return [];
|
|
55527
|
+
const layer = pcbPort.layers?.[0] ?? "top";
|
|
55528
|
+
return pcbTraceHint.route.map((routePoint) => ({
|
|
55529
|
+
x: routePoint.x,
|
|
55530
|
+
y: routePoint.y,
|
|
55531
|
+
layer
|
|
55532
|
+
}));
|
|
55533
|
+
});
|
|
55534
|
+
};
|
|
55520
55535
|
var getOwningPcbBoardForSubcircuit = (db, subcircuitId) => {
|
|
55521
55536
|
const visitedSubcircuitIds = /* @__PURE__ */ new Set();
|
|
55522
55537
|
let currentSubcircuitId = subcircuitId;
|
|
@@ -55821,6 +55836,8 @@ var getSimpleRouteJsonFromCircuitJson = ({
|
|
|
55821
55836
|
(trace) => !sourceTraceIdsAlreadyPreservedAsSrjTraces.has(trace.source_trace_id)
|
|
55822
55837
|
).filter(
|
|
55823
55838
|
(trace) => !subcircuit_id || trace.subcircuit_id === subcircuit_id
|
|
55839
|
+
).filter(
|
|
55840
|
+
(sourceTrace) => sourceTrace.connected_source_net_ids.length === 0 || planeTerminatedSourceTraceLayers.has(sourceTrace.source_trace_id)
|
|
55824
55841
|
).map((trace) => {
|
|
55825
55842
|
const connectedPcbPorts = trace.connected_source_port_ids.map(
|
|
55826
55843
|
(sourcePortId) => db.pcb_port.getWhere({ source_port_id: sourcePortId })
|
|
@@ -55839,24 +55856,7 @@ var getSimpleRouteJsonFromCircuitJson = ({
|
|
|
55839
55856
|
return null;
|
|
55840
55857
|
}
|
|
55841
55858
|
}
|
|
55842
|
-
const
|
|
55843
|
-
connectedPcbPorts.map((port) => port.pcb_port_id)
|
|
55844
|
-
);
|
|
55845
|
-
const matchingHints = traceHints.filter(
|
|
55846
|
-
(hint) => connectedPcbPortIds.has(hint.pcb_port_id)
|
|
55847
|
-
);
|
|
55848
|
-
const hintPoints = [];
|
|
55849
|
-
for (const hint of matchingHints) {
|
|
55850
|
-
const port = db.pcb_port.get(hint.pcb_port_id);
|
|
55851
|
-
const layer = port?.layers?.[0] ?? "top";
|
|
55852
|
-
for (const pt of hint.route) {
|
|
55853
|
-
hintPoints.push({
|
|
55854
|
-
x: pt.x,
|
|
55855
|
-
y: pt.y,
|
|
55856
|
-
layer
|
|
55857
|
-
});
|
|
55858
|
-
}
|
|
55859
|
-
}
|
|
55859
|
+
const srjTraceHintConnectionPoints = getSrjConnectionPointsFromPcbTraceHints(connectedPcbPorts, traceHints);
|
|
55860
55860
|
const connectedPortRoutePoints = connectedPcbPorts.map(
|
|
55861
55861
|
(port) => getPcbPortRoutePoint(port)
|
|
55862
55862
|
);
|
|
@@ -55870,7 +55870,7 @@ var getSimpleRouteJsonFromCircuitJson = ({
|
|
|
55870
55870
|
// source trace endpoint in the autorouter input.
|
|
55871
55871
|
pointsToConnect: [
|
|
55872
55872
|
firstConnectedPortRoutePoint,
|
|
55873
|
-
...
|
|
55873
|
+
...srjTraceHintConnectionPoints,
|
|
55874
55874
|
...remainingPortRoutePoints
|
|
55875
55875
|
]
|
|
55876
55876
|
};
|
|
@@ -55953,15 +55953,20 @@ var getSimpleRouteJsonFromCircuitJson = ({
|
|
|
55953
55953
|
}
|
|
55954
55954
|
const pointsToConnect = [];
|
|
55955
55955
|
const addedPointIds = /* @__PURE__ */ new Set();
|
|
55956
|
+
const connectedPcbPorts = [];
|
|
55956
55957
|
for (const st of connectedSourceTraces) {
|
|
55957
55958
|
const pcb_ports = db.pcb_port.list().filter((p) => st.connected_source_port_ids.includes(p.source_port_id));
|
|
55958
55959
|
for (const p of pcb_ports) {
|
|
55959
55960
|
const routePoint = getPcbPortRoutePoint(p);
|
|
55960
55961
|
if (addedPointIds.has(routePoint.pointId)) continue;
|
|
55961
55962
|
addedPointIds.add(routePoint.pointId);
|
|
55963
|
+
connectedPcbPorts.push(p);
|
|
55962
55964
|
pointsToConnect.push(routePoint);
|
|
55963
55965
|
}
|
|
55964
55966
|
}
|
|
55967
|
+
pointsToConnect.push(
|
|
55968
|
+
...getSrjConnectionPointsFromPcbTraceHints(connectedPcbPorts, traceHints)
|
|
55969
|
+
);
|
|
55965
55970
|
const connection = {
|
|
55966
55971
|
name: net.source_net_id ?? sharedConnMap.getNetConnectedToId(net.source_net_id),
|
|
55967
55972
|
nominalTraceWidth: nominalTraceWidthForConnection,
|
|
@@ -64561,7 +64566,7 @@ function Group_getRoutingPhasePlans(group) {
|
|
|
64561
64566
|
var package_default = {
|
|
64562
64567
|
name: "@tscircuit/core",
|
|
64563
64568
|
type: "module",
|
|
64564
|
-
version: "0.0.
|
|
64569
|
+
version: "0.0.2020",
|
|
64565
64570
|
types: "dist/index.d.ts",
|
|
64566
64571
|
main: "dist/index.js",
|
|
64567
64572
|
module: "dist/index.js",
|