easyeda-mcp-pro 0.24.0 → 0.24.2
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/bridge/manager.js +11 -0
- package/dist/bridge/manager.js.map +1 -1
- package/dist/bridge/protocol.d.ts +4 -0
- package/dist/bridge/protocol.js +4 -0
- package/dist/bridge/protocol.js.map +1 -1
- package/dist/config/profiles.js +5 -5
- package/dist/config/version.d.ts +1 -1
- package/dist/config/version.js +1 -1
- package/dist/tools/L0_diagnostics_api.js +3 -1
- package/dist/tools/L0_diagnostics_api.js.map +1 -1
- package/dist/tools/L1_pcb_write.js +24 -8
- package/dist/tools/L1_pcb_write.js.map +1 -1
- package/dist/tools/L1_schematic_read.js +95 -8
- package/dist/tools/L1_schematic_read.js.map +1 -1
- package/dist/tools/L1_schematic_write.js +116 -20
- package/dist/tools/L1_schematic_write.js.map +1 -1
- package/dist/tools/L1_visual.js +10 -3
- package/dist/tools/L1_visual.js.map +1 -1
- package/dist/tools/L2_workflows.js +233 -8
- package/dist/tools/L2_workflows.js.map +1 -1
- package/dist/tools/registry.js +22 -4
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/types.d.ts +10 -0
- package/dist/workflows/collision.d.ts +53 -0
- package/dist/workflows/collision.js +124 -0
- package/dist/workflows/collision.js.map +1 -0
- package/dist/workflows/section-layout.d.ts +60 -0
- package/dist/workflows/section-layout.js +125 -0
- package/dist/workflows/section-layout.js.map +1 -0
- package/dist/workflows/types.d.ts +1 -1
- package/easyeda-bridge-extension.eext +0 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"L2_workflows.js","sourceRoot":"","sources":["../../src/tools/L2_workflows.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"L2_workflows.js","sourceRoot":"","sources":["../../src/tools/L2_workflows.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/registry.js
CHANGED
|
@@ -95,6 +95,21 @@ function hasRequiredToolScopes(allowedScopes, requiredScopes) {
|
|
|
95
95
|
/**
|
|
96
96
|
* Build a structured error content block for MCP responses.
|
|
97
97
|
*/
|
|
98
|
+
/** Shallow-copies `value` without `fields` — used to drop large duplicate
|
|
99
|
+
* payloads (e.g. a base64 image) from structuredContent/text once they've
|
|
100
|
+
* already been extracted into a dedicated content block. See
|
|
101
|
+
* `ToolDefinition.imageContentOmitFields`. */
|
|
102
|
+
function omitFields(value, fields) {
|
|
103
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value))
|
|
104
|
+
return value;
|
|
105
|
+
const omit = new Set(fields);
|
|
106
|
+
const result = {};
|
|
107
|
+
for (const [key, val] of Object.entries(value)) {
|
|
108
|
+
if (!omit.has(key))
|
|
109
|
+
result[key] = val;
|
|
110
|
+
}
|
|
111
|
+
return result;
|
|
112
|
+
}
|
|
98
113
|
function structuredErrorResponse(error) {
|
|
99
114
|
return {
|
|
100
115
|
isError: true,
|
|
@@ -236,14 +251,17 @@ export class ToolRegistry {
|
|
|
236
251
|
details: { toolName: tool.name, issues: output.error.issues },
|
|
237
252
|
});
|
|
238
253
|
}
|
|
239
|
-
const structuredContent = typeof output.data === 'object' && output.data !== null
|
|
240
|
-
? output.data
|
|
241
|
-
: { value: output.data };
|
|
242
254
|
const images = tool.imageContent?.(output.data) ?? [];
|
|
255
|
+
const responseData = images.length > 0 && tool.imageContentOmitFields?.length
|
|
256
|
+
? omitFields(output.data, tool.imageContentOmitFields)
|
|
257
|
+
: output.data;
|
|
258
|
+
const structuredContent = typeof responseData === 'object' && responseData !== null
|
|
259
|
+
? responseData
|
|
260
|
+
: { value: responseData };
|
|
243
261
|
return {
|
|
244
262
|
structuredContent,
|
|
245
263
|
content: [
|
|
246
|
-
{ type: 'text', text: JSON.stringify(
|
|
264
|
+
{ type: 'text', text: JSON.stringify(responseData, null, 2) },
|
|
247
265
|
...images.map((image) => ({
|
|
248
266
|
type: 'image',
|
|
249
267
|
data: image.data,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/types.d.ts
CHANGED
|
@@ -45,6 +45,16 @@ export interface ToolDefinition<TInput extends z.ZodType = z.ZodType, TOutput ex
|
|
|
45
45
|
data: string;
|
|
46
46
|
mimeType: string;
|
|
47
47
|
}>;
|
|
48
|
+
/**
|
|
49
|
+
* Output field names to drop from `structuredContent` and the JSON text
|
|
50
|
+
* content block when `imageContent` successfully produced at least one
|
|
51
|
+
* image block — the same payload would otherwise be sent three times over
|
|
52
|
+
* the wire (once as raw JSON text, once in structuredContent, once as a
|
|
53
|
+
* proper image content block). The field is NOT removed from what
|
|
54
|
+
* `imageContent` itself receives, only from the response's other two
|
|
55
|
+
* copies. Most tools omit this.
|
|
56
|
+
*/
|
|
57
|
+
imageContentOmitFields?: string[];
|
|
48
58
|
}
|
|
49
59
|
export interface BridgeDiagnosticsSnapshot {
|
|
50
60
|
manager_uptime_ms?: number;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pin-coordinate collision detection for schematic component placement.
|
|
3
|
+
*
|
|
4
|
+
* EasyEDA merges any two primitives that land on the exact same (x,y) canvas point,
|
|
5
|
+
* regardless of net name, the moment either one is wired — so a newly-placed component
|
|
6
|
+
* whose pin coincides with an unrelated component's pin is a silent-short risk even
|
|
7
|
+
* before any wire is drawn. The bridge's own `NET_COLLISION` guard only catches this for
|
|
8
|
+
* pins that are already part of a net (see `easyeda-bridge-extension/src/dispatcher.ts`'s
|
|
9
|
+
* `collectPinCoordinateNets`) — a virgin, never-wired pin is invisible to it. This module
|
|
10
|
+
* closes that gap by reading every placed component's real pin coordinates directly
|
|
11
|
+
* (`SCH_PrimitiveComponent.getAllPinsByPrimitiveId` via `fetchComponentPins`), independent
|
|
12
|
+
* of net membership.
|
|
13
|
+
*
|
|
14
|
+
* @module
|
|
15
|
+
*/
|
|
16
|
+
import { type ToolContext } from '../tools/types.js';
|
|
17
|
+
export interface CollisionPinRef {
|
|
18
|
+
primitiveId: string;
|
|
19
|
+
pinNumber: string;
|
|
20
|
+
pinName: string;
|
|
21
|
+
}
|
|
22
|
+
export interface PinCollision {
|
|
23
|
+
x: number;
|
|
24
|
+
y: number;
|
|
25
|
+
pins: CollisionPinRef[];
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Full-sheet pin-coordinate collision scan. Read-only — used both standalone
|
|
29
|
+
* (`easyeda_schematic_check_collisions`) and as the basis for the workflow-apply
|
|
30
|
+
* reconcile step below.
|
|
31
|
+
*/
|
|
32
|
+
export declare function scanSheetForPinCollisions(ctx: ToolContext, projectId: string): Promise<PinCollision[]>;
|
|
33
|
+
export interface ReconcilePlacementResult {
|
|
34
|
+
/** Collisions that could not be resolved by nudging — caller should block/report these. */
|
|
35
|
+
unresolvedCollisions: PinCollision[];
|
|
36
|
+
/** primitiveId -> final {x, y} for every candidate that was moved during reconcile. */
|
|
37
|
+
movedComponents: Map<string, {
|
|
38
|
+
x: number;
|
|
39
|
+
y: number;
|
|
40
|
+
}>;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Post-placement reconcile: check the newly-placed `candidatePrimitiveIds` for pin-coordinate
|
|
44
|
+
* collisions against every other component on the sheet, and nudge (re-`modifyPrimitive`) any
|
|
45
|
+
* offender by a fixed offset up to `NUDGE_ATTEMPTS` times. Safe to call only *before* any wires
|
|
46
|
+
* are connected to the candidates — moving a component after it's wired does not move its wires
|
|
47
|
+
* (see the dispatcher's `modifyPrimitive` limitation) and would itself create the exact hazard
|
|
48
|
+
* this function exists to prevent.
|
|
49
|
+
*/
|
|
50
|
+
export declare function reconcilePlacementCollisions(ctx: ToolContext, projectId: string, candidatePrimitiveIds: string[], candidatePositions: Map<string, {
|
|
51
|
+
x: number;
|
|
52
|
+
y: number;
|
|
53
|
+
}>): Promise<ReconcilePlacementResult>;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pin-coordinate collision detection for schematic component placement.
|
|
3
|
+
*
|
|
4
|
+
* EasyEDA merges any two primitives that land on the exact same (x,y) canvas point,
|
|
5
|
+
* regardless of net name, the moment either one is wired — so a newly-placed component
|
|
6
|
+
* whose pin coincides with an unrelated component's pin is a silent-short risk even
|
|
7
|
+
* before any wire is drawn. The bridge's own `NET_COLLISION` guard only catches this for
|
|
8
|
+
* pins that are already part of a net (see `easyeda-bridge-extension/src/dispatcher.ts`'s
|
|
9
|
+
* `collectPinCoordinateNets`) — a virgin, never-wired pin is invisible to it. This module
|
|
10
|
+
* closes that gap by reading every placed component's real pin coordinates directly
|
|
11
|
+
* (`SCH_PrimitiveComponent.getAllPinsByPrimitiveId` via `fetchComponentPins`), independent
|
|
12
|
+
* of net membership.
|
|
13
|
+
*
|
|
14
|
+
* @module
|
|
15
|
+
*/
|
|
16
|
+
import { fetchComponentPins } from '../tools/schematic-helpers.js';
|
|
17
|
+
/** Round to the same precision the bridge's own coordinate-key helper uses. */
|
|
18
|
+
function pointKey(x, y) {
|
|
19
|
+
return `${Math.round(x * 1000) / 1000},${Math.round(y * 1000) / 1000}`;
|
|
20
|
+
}
|
|
21
|
+
/** Page through `schematic.listComponents` and return every component's primitiveId. */
|
|
22
|
+
async function listAllComponentIds(ctx, projectId) {
|
|
23
|
+
const pageSize = 500;
|
|
24
|
+
const all = [];
|
|
25
|
+
let offset = 0;
|
|
26
|
+
for (;;) {
|
|
27
|
+
const result = await ctx.bridge.call('schematic.listComponents', { projectId, limit: pageSize, offset });
|
|
28
|
+
const items = result?.items ?? [];
|
|
29
|
+
for (const item of items) {
|
|
30
|
+
if (item.primitiveId)
|
|
31
|
+
all.push({ primitiveId: item.primitiveId });
|
|
32
|
+
}
|
|
33
|
+
const total = result?.total ?? items.length;
|
|
34
|
+
offset += items.length;
|
|
35
|
+
if (items.length === 0 || offset >= total)
|
|
36
|
+
break;
|
|
37
|
+
}
|
|
38
|
+
return all;
|
|
39
|
+
}
|
|
40
|
+
async function buildPinCoordinateMap(ctx, components) {
|
|
41
|
+
const map = new Map();
|
|
42
|
+
for (const component of components) {
|
|
43
|
+
const pins = await fetchComponentPins(ctx, component.primitiveId);
|
|
44
|
+
for (const pin of pins) {
|
|
45
|
+
const key = pointKey(pin.x, pin.y);
|
|
46
|
+
const bucket = map.get(key) ?? { x: pin.x, y: pin.y, pins: [] };
|
|
47
|
+
bucket.pins.push({
|
|
48
|
+
primitiveId: component.primitiveId,
|
|
49
|
+
pinNumber: pin.pinNumber,
|
|
50
|
+
pinName: pin.pinName,
|
|
51
|
+
});
|
|
52
|
+
map.set(key, bucket);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return map;
|
|
56
|
+
}
|
|
57
|
+
function collisionsFromMap(map, onlyInvolving) {
|
|
58
|
+
const collisions = [];
|
|
59
|
+
for (const bucket of map.values()) {
|
|
60
|
+
const distinctPrimitives = new Set(bucket.pins.map((p) => p.primitiveId));
|
|
61
|
+
if (distinctPrimitives.size < 2)
|
|
62
|
+
continue;
|
|
63
|
+
if (onlyInvolving && ![...distinctPrimitives].some((id) => onlyInvolving.has(id)))
|
|
64
|
+
continue;
|
|
65
|
+
collisions.push({ x: bucket.x, y: bucket.y, pins: bucket.pins });
|
|
66
|
+
}
|
|
67
|
+
return collisions;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Full-sheet pin-coordinate collision scan. Read-only — used both standalone
|
|
71
|
+
* (`easyeda_schematic_check_collisions`) and as the basis for the workflow-apply
|
|
72
|
+
* reconcile step below.
|
|
73
|
+
*/
|
|
74
|
+
export async function scanSheetForPinCollisions(ctx, projectId) {
|
|
75
|
+
const components = await listAllComponentIds(ctx, projectId);
|
|
76
|
+
const map = await buildPinCoordinateMap(ctx, components);
|
|
77
|
+
return collisionsFromMap(map);
|
|
78
|
+
}
|
|
79
|
+
const NUDGE_ATTEMPTS = 3;
|
|
80
|
+
const NUDGE_STEP = 30;
|
|
81
|
+
/**
|
|
82
|
+
* Post-placement reconcile: check the newly-placed `candidatePrimitiveIds` for pin-coordinate
|
|
83
|
+
* collisions against every other component on the sheet, and nudge (re-`modifyPrimitive`) any
|
|
84
|
+
* offender by a fixed offset up to `NUDGE_ATTEMPTS` times. Safe to call only *before* any wires
|
|
85
|
+
* are connected to the candidates — moving a component after it's wired does not move its wires
|
|
86
|
+
* (see the dispatcher's `modifyPrimitive` limitation) and would itself create the exact hazard
|
|
87
|
+
* this function exists to prevent.
|
|
88
|
+
*/
|
|
89
|
+
export async function reconcilePlacementCollisions(ctx, projectId, candidatePrimitiveIds, candidatePositions) {
|
|
90
|
+
const candidateSet = new Set(candidatePrimitiveIds);
|
|
91
|
+
const movedComponents = new Map();
|
|
92
|
+
if (candidateSet.size === 0) {
|
|
93
|
+
return { unresolvedCollisions: [], movedComponents };
|
|
94
|
+
}
|
|
95
|
+
const components = await listAllComponentIds(ctx, projectId);
|
|
96
|
+
for (let attempt = 0; attempt <= NUDGE_ATTEMPTS; attempt += 1) {
|
|
97
|
+
const map = await buildPinCoordinateMap(ctx, components);
|
|
98
|
+
const collisions = collisionsFromMap(map, candidateSet);
|
|
99
|
+
if (collisions.length === 0) {
|
|
100
|
+
return { unresolvedCollisions: [], movedComponents };
|
|
101
|
+
}
|
|
102
|
+
if (attempt === NUDGE_ATTEMPTS) {
|
|
103
|
+
return { unresolvedCollisions: collisions, movedComponents };
|
|
104
|
+
}
|
|
105
|
+
const offendingCandidates = new Set(collisions.flatMap((collision) => collision.pins.map((p) => p.primitiveId).filter((id) => candidateSet.has(id))));
|
|
106
|
+
for (const primitiveId of offendingCandidates) {
|
|
107
|
+
const current = candidatePositions.get(primitiveId);
|
|
108
|
+
if (!current)
|
|
109
|
+
continue;
|
|
110
|
+
const nudged = {
|
|
111
|
+
x: current.x + NUDGE_STEP * (attempt + 1),
|
|
112
|
+
y: current.y + NUDGE_STEP * (attempt + 1),
|
|
113
|
+
};
|
|
114
|
+
await ctx.bridge.call('schematic.modifyPrimitive', {
|
|
115
|
+
primitiveId,
|
|
116
|
+
property: { x: nudged.x, y: nudged.y },
|
|
117
|
+
});
|
|
118
|
+
candidatePositions.set(primitiveId, nudged);
|
|
119
|
+
movedComponents.set(primitiveId, nudged);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return { unresolvedCollisions: [], movedComponents };
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=collision.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collision.js","sourceRoot":"","sources":["../../src/workflows/collision.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-sized section box layout for a cluster of already-placed schematic
|
|
3
|
+
* components — the "cosmetic auto-layout" gap identified from real usage: a
|
|
4
|
+
* hand-drawn section rectangle sized before all components were placed ends
|
|
5
|
+
* up too small (components spill outside it) or misaligned (an empty-looking
|
|
6
|
+
* box next to the part it's supposed to enclose).
|
|
7
|
+
*
|
|
8
|
+
* Scope, deliberately bounded: this computes a box from each component's
|
|
9
|
+
* real pin extents (the only per-component geometry this bridge can query —
|
|
10
|
+
* there is no symbol/body bounding-box API) plus a fixed padding allowance,
|
|
11
|
+
* and unions the whole cluster. It does NOT attempt symbol-level
|
|
12
|
+
* de-collision or net-label decluttering — those remain a manual review
|
|
13
|
+
* item. It also does NOT attempt to resize the sheet/page frame (EasyEDA's
|
|
14
|
+
* Width/Height title-block fields are documented read-only through this
|
|
15
|
+
* bridge — see skills/easyeda-workflow/SKILL.md's set_title_block caveat);
|
|
16
|
+
* page overflow is reported as an advisory warning only.
|
|
17
|
+
*
|
|
18
|
+
* @module
|
|
19
|
+
*/
|
|
20
|
+
import { type ToolContext } from '../tools/types.js';
|
|
21
|
+
export interface SectionBounds {
|
|
22
|
+
x: number;
|
|
23
|
+
y: number;
|
|
24
|
+
width: number;
|
|
25
|
+
height: number;
|
|
26
|
+
}
|
|
27
|
+
interface RectangleSummary {
|
|
28
|
+
primitiveId: string;
|
|
29
|
+
x?: number;
|
|
30
|
+
y?: number;
|
|
31
|
+
width?: number;
|
|
32
|
+
height?: number;
|
|
33
|
+
}
|
|
34
|
+
/** Union of every candidate's pin coordinates, padded per-component to
|
|
35
|
+
* approximate body extent beyond the pins themselves, then padded again by
|
|
36
|
+
* `margin` for breathing room around the whole cluster. */
|
|
37
|
+
export declare function computeSectionBounds(ctx: ToolContext, primitiveIds: string[], componentPadding: number, margin: number): Promise<SectionBounds | null>;
|
|
38
|
+
/**
|
|
39
|
+
* Best-effort: list every rectangle currently on the sheet (via the bridge's
|
|
40
|
+
* `schematic.listRectangles`, added alongside this feature) and report which
|
|
41
|
+
* ones the proposed section bounds would overlap. Advisory only — two
|
|
42
|
+
* sections sharing an edge is often intentional, so this never blocks a
|
|
43
|
+
* layout call, it only surfaces the overlap for the caller to judge.
|
|
44
|
+
*
|
|
45
|
+
* Caveat (live-verified 2026-07-09, see memory/easyeda_hotswap_getall_staleness.md):
|
|
46
|
+
* the underlying getAll()-style bridge enumeration can miss primitives created
|
|
47
|
+
* earlier in the same live session (confirmed for wires; unconfirmed but
|
|
48
|
+
* plausible for rectangles too, since listRectangles uses the same pattern).
|
|
49
|
+
* Treat an empty overlap list as advisory, not proof there's no overlap with
|
|
50
|
+
* a rectangle created moments earlier in the same session.
|
|
51
|
+
*/
|
|
52
|
+
export declare function findOverlappingRectangles(ctx: ToolContext, bounds: SectionBounds, excludePrimitiveIds: string[]): Promise<RectangleSummary[]>;
|
|
53
|
+
/**
|
|
54
|
+
* Best-effort: compare the proposed bounds against the sheet's reported page
|
|
55
|
+
* size. Returns a warning string if the section would extend past the page,
|
|
56
|
+
* or null if it fits (or the page size couldn't be determined). Purely
|
|
57
|
+
* advisory — see module doc for why this never attempts to resize the page.
|
|
58
|
+
*/
|
|
59
|
+
export declare function checkAgainstPageFrame(ctx: ToolContext, projectId: string, bounds: SectionBounds): Promise<string | null>;
|
|
60
|
+
export {};
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-sized section box layout for a cluster of already-placed schematic
|
|
3
|
+
* components — the "cosmetic auto-layout" gap identified from real usage: a
|
|
4
|
+
* hand-drawn section rectangle sized before all components were placed ends
|
|
5
|
+
* up too small (components spill outside it) or misaligned (an empty-looking
|
|
6
|
+
* box next to the part it's supposed to enclose).
|
|
7
|
+
*
|
|
8
|
+
* Scope, deliberately bounded: this computes a box from each component's
|
|
9
|
+
* real pin extents (the only per-component geometry this bridge can query —
|
|
10
|
+
* there is no symbol/body bounding-box API) plus a fixed padding allowance,
|
|
11
|
+
* and unions the whole cluster. It does NOT attempt symbol-level
|
|
12
|
+
* de-collision or net-label decluttering — those remain a manual review
|
|
13
|
+
* item. It also does NOT attempt to resize the sheet/page frame (EasyEDA's
|
|
14
|
+
* Width/Height title-block fields are documented read-only through this
|
|
15
|
+
* bridge — see skills/easyeda-workflow/SKILL.md's set_title_block caveat);
|
|
16
|
+
* page overflow is reported as an advisory warning only.
|
|
17
|
+
*
|
|
18
|
+
* @module
|
|
19
|
+
*/
|
|
20
|
+
import { fetchComponentPins } from '../tools/schematic-helpers.js';
|
|
21
|
+
/** Union of every candidate's pin coordinates, padded per-component to
|
|
22
|
+
* approximate body extent beyond the pins themselves, then padded again by
|
|
23
|
+
* `margin` for breathing room around the whole cluster. */
|
|
24
|
+
export async function computeSectionBounds(ctx, primitiveIds, componentPadding, margin) {
|
|
25
|
+
let minX = Infinity;
|
|
26
|
+
let minY = Infinity;
|
|
27
|
+
let maxX = -Infinity;
|
|
28
|
+
let maxY = -Infinity;
|
|
29
|
+
for (const primitiveId of primitiveIds) {
|
|
30
|
+
const pins = await fetchComponentPins(ctx, primitiveId);
|
|
31
|
+
for (const pin of pins) {
|
|
32
|
+
minX = Math.min(minX, pin.x - componentPadding);
|
|
33
|
+
minY = Math.min(minY, pin.y - componentPadding);
|
|
34
|
+
maxX = Math.max(maxX, pin.x + componentPadding);
|
|
35
|
+
maxY = Math.max(maxY, pin.y + componentPadding);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
if (!Number.isFinite(minX) || !Number.isFinite(minY))
|
|
39
|
+
return null;
|
|
40
|
+
return {
|
|
41
|
+
x: minX - margin,
|
|
42
|
+
y: minY - margin,
|
|
43
|
+
width: maxX - minX + margin * 2,
|
|
44
|
+
height: maxY - minY + margin * 2,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
function rectanglesOverlap(a, b) {
|
|
48
|
+
if (typeof b.x !== 'number' ||
|
|
49
|
+
typeof b.y !== 'number' ||
|
|
50
|
+
typeof b.width !== 'number' ||
|
|
51
|
+
typeof b.height !== 'number') {
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
return a.x < b.x + b.width && a.x + a.width > b.x && a.y < b.y + b.height && a.y + a.height > b.y;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Best-effort: list every rectangle currently on the sheet (via the bridge's
|
|
58
|
+
* `schematic.listRectangles`, added alongside this feature) and report which
|
|
59
|
+
* ones the proposed section bounds would overlap. Advisory only — two
|
|
60
|
+
* sections sharing an edge is often intentional, so this never blocks a
|
|
61
|
+
* layout call, it only surfaces the overlap for the caller to judge.
|
|
62
|
+
*
|
|
63
|
+
* Caveat (live-verified 2026-07-09, see memory/easyeda_hotswap_getall_staleness.md):
|
|
64
|
+
* the underlying getAll()-style bridge enumeration can miss primitives created
|
|
65
|
+
* earlier in the same live session (confirmed for wires; unconfirmed but
|
|
66
|
+
* plausible for rectangles too, since listRectangles uses the same pattern).
|
|
67
|
+
* Treat an empty overlap list as advisory, not proof there's no overlap with
|
|
68
|
+
* a rectangle created moments earlier in the same session.
|
|
69
|
+
*/
|
|
70
|
+
export async function findOverlappingRectangles(ctx, bounds, excludePrimitiveIds) {
|
|
71
|
+
try {
|
|
72
|
+
const result = await ctx.bridge.call('schematic.listRectangles', {});
|
|
73
|
+
const items = result?.items ?? [];
|
|
74
|
+
const exclude = new Set(excludePrimitiveIds);
|
|
75
|
+
return items.filter((r) => !exclude.has(r.primitiveId) && rectanglesOverlap(bounds, r));
|
|
76
|
+
}
|
|
77
|
+
catch {
|
|
78
|
+
// listRectangles is best-effort (getAll() on a primitive type this bridge
|
|
79
|
+
// doesn't otherwise enumerate) — degrade to "no overlap data" rather than fail.
|
|
80
|
+
return [];
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Best-effort: compare the proposed bounds against the sheet's reported page
|
|
85
|
+
* size. Returns a warning string if the section would extend past the page,
|
|
86
|
+
* or null if it fits (or the page size couldn't be determined). Purely
|
|
87
|
+
* advisory — see module doc for why this never attempts to resize the page.
|
|
88
|
+
*/
|
|
89
|
+
export async function checkAgainstPageFrame(ctx, projectId, bounds) {
|
|
90
|
+
try {
|
|
91
|
+
const result = await ctx.bridge.call('schematic.getSheetInfo', { projectId });
|
|
92
|
+
const root = result && typeof result === 'object' && !Array.isArray(result)
|
|
93
|
+
? result
|
|
94
|
+
: {};
|
|
95
|
+
const current = root.currentPage && typeof root.currentPage === 'object' && !Array.isArray(root.currentPage)
|
|
96
|
+
? root.currentPage
|
|
97
|
+
: root;
|
|
98
|
+
const readNumber = (keys) => {
|
|
99
|
+
for (const key of keys) {
|
|
100
|
+
const value = current[key] ?? root[key];
|
|
101
|
+
if (typeof value === 'number' && Number.isFinite(value))
|
|
102
|
+
return value;
|
|
103
|
+
}
|
|
104
|
+
return undefined;
|
|
105
|
+
};
|
|
106
|
+
const width = readNumber(['width', 'pageWidth', 'paperWidth', 'w']);
|
|
107
|
+
const height = readNumber(['height', 'pageHeight', 'paperHeight', 'h']);
|
|
108
|
+
if (width === undefined || height === undefined)
|
|
109
|
+
return null;
|
|
110
|
+
const right = bounds.x + bounds.width;
|
|
111
|
+
const bottom = bounds.y + bounds.height;
|
|
112
|
+
if (bounds.x < 0 || bounds.y < 0 || right > width || bottom > height) {
|
|
113
|
+
return (`Section bounds (x:${bounds.x.toFixed(0)}, y:${bounds.y.toFixed(0)}, ` +
|
|
114
|
+
`right:${right.toFixed(0)}, bottom:${bottom.toFixed(0)}) extend past the reported page ` +
|
|
115
|
+
`size (${width}x${height}, origin assumed at 0,0 — approximate). This bridge cannot ` +
|
|
116
|
+
'resize the page frame (Width/Height are read-only through this API); reposition the ' +
|
|
117
|
+
'section or resize the page manually in EasyEDA Pro.');
|
|
118
|
+
}
|
|
119
|
+
return null;
|
|
120
|
+
}
|
|
121
|
+
catch {
|
|
122
|
+
return null;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=section-layout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"section-layout.js","sourceRoot":"","sources":["../../src/workflows/section-layout.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/** Compound schematic workflow planning types. */
|
|
2
2
|
export type WorkflowExecutionMode = 'preview' | 'apply';
|
|
3
3
|
export type WorkflowSeverity = 'error' | 'warning' | 'info';
|
|
4
|
-
export type WorkflowIssueCode = 'WORKFLOW_DUPLICATE_REF' | 'WORKFLOW_EMPTY_PIN_CONNECTIONS' | 'WORKFLOW_NO_COMPONENTS' | 'WORKFLOW_MISSING_ROLE' | 'WORKFLOW_DUPLICATE_NET_PORT';
|
|
4
|
+
export type WorkflowIssueCode = 'WORKFLOW_DUPLICATE_REF' | 'WORKFLOW_EMPTY_PIN_CONNECTIONS' | 'WORKFLOW_NO_COMPONENTS' | 'WORKFLOW_MISSING_ROLE' | 'WORKFLOW_DUPLICATE_NET_PORT' | 'WORKFLOW_PIN_COLLISION';
|
|
5
5
|
export interface WorkflowIssue {
|
|
6
6
|
code: WorkflowIssueCode;
|
|
7
7
|
severity: WorkflowSeverity;
|
|
Binary file
|
package/package.json
CHANGED