@canvus/core 0.1.0
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/README.md +80 -0
- package/dist/drop-zone.d.ts +48 -0
- package/dist/drop-zone.d.ts.map +1 -0
- package/dist/drop-zone.js +230 -0
- package/dist/drop-zone.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/layout.d.ts +143 -0
- package/dist/layout.d.ts.map +1 -0
- package/dist/layout.js +278 -0
- package/dist/layout.js.map +1 -0
- package/dist/matrix.d.ts +168 -0
- package/dist/matrix.d.ts.map +1 -0
- package/dist/matrix.js +264 -0
- package/dist/matrix.js.map +1 -0
- package/dist/renderer.d.ts +286 -0
- package/dist/renderer.d.ts.map +1 -0
- package/dist/renderer.js +892 -0
- package/dist/renderer.js.map +1 -0
- package/dist/shadow-mount.d.ts +367 -0
- package/dist/shadow-mount.d.ts.map +1 -0
- package/dist/shadow-mount.js +1120 -0
- package/dist/shadow-mount.js.map +1 -0
- package/dist/tree.d.ts +134 -0
- package/dist/tree.d.ts.map +1 -0
- package/dist/tree.js +458 -0
- package/dist/tree.js.map +1 -0
- package/dist/types.d.ts +180 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +43 -0
- package/dist/types.js.map +1 -0
- package/dist/workspace.d.ts +371 -0
- package/dist/workspace.d.ts.map +1 -0
- package/dist/workspace.js +3922 -0
- package/dist/workspace.js.map +1 -0
- package/package.json +30 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,367 @@
|
|
|
1
|
+
import type { Rect, ViewportMatrix, WebHTMLNode } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Fired when a mounted node's bounding box changes due to
|
|
4
|
+
* content reflow, explicit resize, or initial layout.
|
|
5
|
+
*
|
|
6
|
+
* @param id - The `WebHTMLNode.id` whose rect changed.
|
|
7
|
+
* @param rect - The new canvas-space bounding rectangle.
|
|
8
|
+
*/
|
|
9
|
+
export type RectChangeCallback = (id: string, rect: Rect) => void;
|
|
10
|
+
/**
|
|
11
|
+
* Manages the Shadow DOM projection layer lifecycle.
|
|
12
|
+
*
|
|
13
|
+
* ### Responsibilities
|
|
14
|
+
* 1. Creates a host `<div>` and attaches an open `ShadowRoot`.
|
|
15
|
+
* 2. Mounts user HTML fragments as isolated, absolutely-positioned
|
|
16
|
+
* wrapper nodes inside the shadow tree.
|
|
17
|
+
* 3. Applies viewport CSS transforms to keep the shadow layer
|
|
18
|
+
* visually synchronized with the canvas overlay.
|
|
19
|
+
* 4. Runs a `ResizeObserver` on every mounted wrapper to detect
|
|
20
|
+
* content reflow and fire `RectChangeCallback` notifications.
|
|
21
|
+
* 5. Provides geometry extraction (`.measureNode`, `.measureAll`)
|
|
22
|
+
* and the flat string bridge (`.extractHTML`).
|
|
23
|
+
*
|
|
24
|
+
* ### Coordinate Convention
|
|
25
|
+
* All positions stored and returned by this class are in
|
|
26
|
+
* **canvas-space** (world coordinates). The viewport CSS transform
|
|
27
|
+
* on the host element handles the canvas→screen projection.
|
|
28
|
+
*/
|
|
29
|
+
export declare class ShadowMount {
|
|
30
|
+
/** The host element appended to the user's container. */
|
|
31
|
+
private readonly host;
|
|
32
|
+
/** The open ShadowRoot attached to the host. */
|
|
33
|
+
private readonly shadow;
|
|
34
|
+
/** Map of node ID → internal metadata (wrapper + position). */
|
|
35
|
+
private readonly nodes;
|
|
36
|
+
/** Uniform scale applied to host via applied viewport transform. */
|
|
37
|
+
private currentScale;
|
|
38
|
+
/**
|
|
39
|
+
* Reverse lookup: wrapper Element → node ID.
|
|
40
|
+
* Required because `ResizeObserver` callbacks receive the
|
|
41
|
+
* observed `Element`, not our application-level ID.
|
|
42
|
+
*/
|
|
43
|
+
private readonly elementToId;
|
|
44
|
+
/** Single shared observer watching all mounted wrappers. */
|
|
45
|
+
private readonly resizeObserver;
|
|
46
|
+
/** External rect-change callback, or `null` if none provided. */
|
|
47
|
+
private readonly onRectChange;
|
|
48
|
+
/**
|
|
49
|
+
* Guard flag to suppress ResizeObserver notifications during
|
|
50
|
+
* our own programmatic style mutations (e.g. `setNodeSize`).
|
|
51
|
+
* Prevents feedback loops where our write triggers an
|
|
52
|
+
* observer read that triggers another write.
|
|
53
|
+
*/
|
|
54
|
+
private suppressObserver;
|
|
55
|
+
/** Whether `dispose()` has been called. */
|
|
56
|
+
private disposed;
|
|
57
|
+
/**
|
|
58
|
+
* @param container - The parent DOM element to mount into.
|
|
59
|
+
* Typically the workspace root `<div>`.
|
|
60
|
+
* @param onRectChange - Optional callback fired whenever a
|
|
61
|
+
* mounted node's bounding rect changes.
|
|
62
|
+
*/
|
|
63
|
+
constructor(container: HTMLElement, onRectChange?: RectChangeCallback);
|
|
64
|
+
/**
|
|
65
|
+
* Mounts a `WebHTMLNode` into the shadow tree.
|
|
66
|
+
*
|
|
67
|
+
* Creates an absolutely-positioned wrapper `<div>`, injects
|
|
68
|
+
* the raw markup via `innerHTML`, positions it in canvas-space,
|
|
69
|
+
* and starts observing it for size changes.
|
|
70
|
+
*
|
|
71
|
+
* @param node - The node descriptor to mount.
|
|
72
|
+
* @returns The initial canvas-space bounding rect after the
|
|
73
|
+
* browser has performed synchronous layout.
|
|
74
|
+
* @throws If a node with the same `id` is already mounted.
|
|
75
|
+
*/
|
|
76
|
+
addNode(node: Readonly<WebHTMLNode>): Rect;
|
|
77
|
+
/**
|
|
78
|
+
* Mounts a node as a child of another mounted node.
|
|
79
|
+
*
|
|
80
|
+
* The child wrapper is inserted inside the parent's wrapper
|
|
81
|
+
* (not at the shadow root) and uses `position: relative` so
|
|
82
|
+
* it participates in the parent's CSS layout flow (flex, grid,
|
|
83
|
+
* block).
|
|
84
|
+
*
|
|
85
|
+
* @param node - The node descriptor to mount.
|
|
86
|
+
* @param parentId - The ID of the parent node.
|
|
87
|
+
* @param index - Optional insertion index within the parent's
|
|
88
|
+
* DOM children. Defaults to appending at the end.
|
|
89
|
+
* @returns The initial canvas-space bounding rect.
|
|
90
|
+
* @throws If the parent is not mounted or the node ID already exists.
|
|
91
|
+
*/
|
|
92
|
+
addChildNode(node: Readonly<WebHTMLNode>, parentId: string, index?: number): Rect;
|
|
93
|
+
/**
|
|
94
|
+
* Unmounts and destroys a node by ID.
|
|
95
|
+
*
|
|
96
|
+
* Stops observing, removes the wrapper from the shadow tree,
|
|
97
|
+
* and cleans up all internal references.
|
|
98
|
+
*
|
|
99
|
+
* @param id - The node ID to remove.
|
|
100
|
+
* @returns `true` if the node existed and was removed.
|
|
101
|
+
*/
|
|
102
|
+
removeNode(id: string): boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Registers an existing DOM element for tracking without modifying
|
|
105
|
+
* the DOM structure. Used for lazy child registration: when the user
|
|
106
|
+
* drills into a node, its immediate children are tracked so they
|
|
107
|
+
* get hover states, selection handles, resize, and drag.
|
|
108
|
+
*
|
|
109
|
+
* The element receives a `data-canvus-id` attribute for identity,
|
|
110
|
+
* but NO wrapper div is added — CSS selectors remain intact.
|
|
111
|
+
*
|
|
112
|
+
* @param id - The node ID to assign.
|
|
113
|
+
* @param element - The existing DOM element to track.
|
|
114
|
+
* @returns The element's canvas-space bounding rect, or null.
|
|
115
|
+
*/
|
|
116
|
+
trackExistingElement(id: string, element: HTMLElement): Rect | null;
|
|
117
|
+
/**
|
|
118
|
+
* Stops tracking a node without removing the DOM element.
|
|
119
|
+
* The inverse of `trackExistingElement` — cleans up the
|
|
120
|
+
* `data-canvus-id` attribute, ResizeObserver, and internal maps,
|
|
121
|
+
* but leaves the element in the DOM untouched.
|
|
122
|
+
*
|
|
123
|
+
* Used for lazy deregistration when the user drills back up
|
|
124
|
+
* or deselects a parent node.
|
|
125
|
+
*
|
|
126
|
+
* @param id - The node ID to stop tracking.
|
|
127
|
+
* @returns `true` if the node was being tracked and was untracked.
|
|
128
|
+
*/
|
|
129
|
+
untrackNode(id: string): boolean;
|
|
130
|
+
/**
|
|
131
|
+
* Moves a node's DOM wrapper from its current parent into a
|
|
132
|
+
* new parent's wrapper at the specified index.
|
|
133
|
+
*
|
|
134
|
+
* If `newParentId` is `null`, the node is moved to the shadow
|
|
135
|
+
* root and becomes absolutely positioned (root-level node).
|
|
136
|
+
*
|
|
137
|
+
* @param id - The node to move.
|
|
138
|
+
* @param newParentId - The new parent ID, or `null` for root.
|
|
139
|
+
* @param index - Insertion index in the new parent.
|
|
140
|
+
*/
|
|
141
|
+
reparentNodeDOM(id: string, newParentId: string | null, index?: number): void;
|
|
142
|
+
/**
|
|
143
|
+
* Replaces the inner HTML content of an already-mounted node.
|
|
144
|
+
*
|
|
145
|
+
* Preserves the wrapper's position and size constraints.
|
|
146
|
+
* After the markup swap, forces a synchronous layout read
|
|
147
|
+
* and fires the rect-change callback if dimensions changed.
|
|
148
|
+
*
|
|
149
|
+
* @param id - The mounted node's ID.
|
|
150
|
+
* @param markup - The new raw HTML fragment string.
|
|
151
|
+
* @returns The new canvas-space bounding rect, or `null` if
|
|
152
|
+
* the node is not mounted.
|
|
153
|
+
*/
|
|
154
|
+
updateMarkup(id: string, markup: string): Rect | null;
|
|
155
|
+
/**
|
|
156
|
+
* Returns whether a node with the given ID is currently mounted.
|
|
157
|
+
*/
|
|
158
|
+
hasNode(id: string): boolean;
|
|
159
|
+
/**
|
|
160
|
+
* Returns an array of all currently mounted node IDs.
|
|
161
|
+
*/
|
|
162
|
+
getNodeIds(): string[];
|
|
163
|
+
/**
|
|
164
|
+
* Applies a CSS transform to the shadow host so that all
|
|
165
|
+
* child wrappers (positioned in canvas-space) are projected
|
|
166
|
+
* correctly onto the screen in sync with the canvas overlay.
|
|
167
|
+
*
|
|
168
|
+
* Must be called every time the viewport changes (pan/zoom).
|
|
169
|
+
*
|
|
170
|
+
* The transform maps canvas-space → screen-space:
|
|
171
|
+
* `translate(offsetX, offsetY) scale(scale)`
|
|
172
|
+
*
|
|
173
|
+
* @param viewport - The current viewport matrix state.
|
|
174
|
+
*/
|
|
175
|
+
applyViewportTransform(viewport: Readonly<ViewportMatrix>): void;
|
|
176
|
+
/**
|
|
177
|
+
* Returns the wrapper DOM element for a mounted node.
|
|
178
|
+
* Useful for layout introspection (reading getComputedStyle).
|
|
179
|
+
*
|
|
180
|
+
* @param id - The node ID.
|
|
181
|
+
* @returns The wrapper element, or `null` if not mounted.
|
|
182
|
+
*/
|
|
183
|
+
getWrapper(id: string): HTMLElement | null;
|
|
184
|
+
/**
|
|
185
|
+
* Returns the content root element for a mounted node by its ID.
|
|
186
|
+
* For wrapper-based nodes, this is `wrapper.firstElementChild`.
|
|
187
|
+
* For direct (wrapper-less) nodes, the wrapper IS the content root.
|
|
188
|
+
*
|
|
189
|
+
* @param id - The node ID.
|
|
190
|
+
* @returns The content root element, or `null` if not mounted.
|
|
191
|
+
*/
|
|
192
|
+
getContentRoot(id: string): HTMLElement | null;
|
|
193
|
+
/**
|
|
194
|
+
* Temporarily disables or re-enables all CSS transitions and animations
|
|
195
|
+
* inside the shadow DOM (useful to avoid layout lag during drag-and-drop).
|
|
196
|
+
*/
|
|
197
|
+
setTransitionsEnabled(enabled: boolean): void;
|
|
198
|
+
/**
|
|
199
|
+
* Reads the current canvas-space bounding rect of a mounted
|
|
200
|
+
* node by performing a synchronous layout query.
|
|
201
|
+
*
|
|
202
|
+
* Uses `offsetWidth` / `offsetHeight` (which return pre-transform
|
|
203
|
+
* layout dimensions) combined with our tracked canvas-space
|
|
204
|
+
* position to avoid inverse-transform math.
|
|
205
|
+
*
|
|
206
|
+
* @param id - The node ID to measure.
|
|
207
|
+
* @returns The canvas-space bounding rect, or `null` if not mounted.
|
|
208
|
+
*/
|
|
209
|
+
measureNode(id: string): Rect | null;
|
|
210
|
+
/**
|
|
211
|
+
* Batch-measures all mounted nodes in a single pass.
|
|
212
|
+
*
|
|
213
|
+
* Returns a `Map<id, Rect>` of canvas-space bounding rects.
|
|
214
|
+
* Triggers a single synchronous reflow for the entire batch.
|
|
215
|
+
*
|
|
216
|
+
* This is the "Geometry Extraction Loop" from the architecture
|
|
217
|
+
* spec — a fast initialization sweep to populate state caches.
|
|
218
|
+
*/
|
|
219
|
+
measureAll(): Map<string, Rect>;
|
|
220
|
+
/**
|
|
221
|
+
* Moves a node to a new canvas-space position by directly
|
|
222
|
+
* mutating its inline `left` / `top` styles.
|
|
223
|
+
*
|
|
224
|
+
* This is the "Transient Style Surgery Pass" for drag-node
|
|
225
|
+
* interactions — no async message bus, just a direct write.
|
|
226
|
+
*
|
|
227
|
+
* @param id - The node ID to reposition.
|
|
228
|
+
* @param x - New canvas-space X position.
|
|
229
|
+
* @param y - New canvas-space Y position.
|
|
230
|
+
*/
|
|
231
|
+
setNodePosition(id: string, x: number, y: number): void;
|
|
232
|
+
/**
|
|
233
|
+
* Sets explicit width and/or height on a node's wrapper.
|
|
234
|
+
*
|
|
235
|
+
* This is the "Transient Style Surgery Pass" for resize-node
|
|
236
|
+
* interactions. The browser will reflow the inner content
|
|
237
|
+
* (e.g. text wrapping) synchronously, and the ResizeObserver
|
|
238
|
+
* will fire a rect-change callback with the new dimensions.
|
|
239
|
+
*
|
|
240
|
+
* Pass `null` for either dimension to leave it unchanged.
|
|
241
|
+
* Pass `"auto"` to clear an explicit dimension and let content
|
|
242
|
+
* determine the size.
|
|
243
|
+
*
|
|
244
|
+
* @param id - The node ID to resize.
|
|
245
|
+
* @param width - New width in canvas-space pixels, `"auto"`, or `null`.
|
|
246
|
+
* @param height - New height in canvas-space pixels, `"auto"`, or `null`.
|
|
247
|
+
*/
|
|
248
|
+
setNodeSize(id: string, width: number | "auto" | null, height: number | "auto" | null): void;
|
|
249
|
+
/**
|
|
250
|
+
* Convenience: sets both position and size in a single call.
|
|
251
|
+
* Useful during resize-from-anchor operations where both
|
|
252
|
+
* origin and dimensions change simultaneously.
|
|
253
|
+
*/
|
|
254
|
+
setNodeRect(id: string, rect: Readonly<Rect>): void;
|
|
255
|
+
/**
|
|
256
|
+
* Sets a single CSS style property directly on the node's content element
|
|
257
|
+
* (the first child element of the wrapper), and synchronizes width/height
|
|
258
|
+
* wrapper bounds if applicable.
|
|
259
|
+
*/
|
|
260
|
+
setNodeStyle(id: string, property: string, value: string | null): void;
|
|
261
|
+
/**
|
|
262
|
+
* Sets multiple CSS style properties directly on the node's content element
|
|
263
|
+
* (the first child element of the wrapper) in a single batch.
|
|
264
|
+
*/
|
|
265
|
+
setNodeStyles(id: string, styles: Record<string, string | null>): void;
|
|
266
|
+
/**
|
|
267
|
+
* Computes the canvas-space bounding rect of a node by walking
|
|
268
|
+
* the `offsetLeft`/`offsetTop` chain up to the shadow host.
|
|
269
|
+
*
|
|
270
|
+
* This handles arbitrarily nested elements — each child's offset
|
|
271
|
+
* is accumulated relative to its offsetParent until we reach the
|
|
272
|
+
* shadow host (the transform origin).
|
|
273
|
+
*
|
|
274
|
+
* The result is in **canvas-space** (pre-viewport-transform),
|
|
275
|
+
* consistent with all other rect measurements in the SDK.
|
|
276
|
+
*/
|
|
277
|
+
measureNodeCanvasSpace(id: string): Rect | null;
|
|
278
|
+
/**
|
|
279
|
+
* Computes the accumulated CSS zoom and transform scale factors of an element
|
|
280
|
+
* relative to the shadow root host.
|
|
281
|
+
*/
|
|
282
|
+
getElementScale(element: HTMLElement): number;
|
|
283
|
+
/**
|
|
284
|
+
* Extracts the pristine semantic HTML string from a mounted
|
|
285
|
+
* node's wrapper. Returns the `.innerHTML` of the wrapper,
|
|
286
|
+
* which is the user's manipulated HTML fragment without any
|
|
287
|
+
* SDK wrapper chrome.
|
|
288
|
+
*
|
|
289
|
+
* This is the "Flat String Bridge" output described in the
|
|
290
|
+
* architecture spec — clean HTML ready for AST commit.
|
|
291
|
+
*
|
|
292
|
+
* @param id - The node ID to extract HTML from.
|
|
293
|
+
* @returns The inner HTML string, or `null` if not mounted.
|
|
294
|
+
*/
|
|
295
|
+
extractHTML(id: string): string | null;
|
|
296
|
+
/**
|
|
297
|
+
* Extracts the outer HTML of the wrapper (includes the wrapper
|
|
298
|
+
* `<div>` itself). Useful for debugging or serialization that
|
|
299
|
+
* needs the positioning context.
|
|
300
|
+
*
|
|
301
|
+
* @param id - The node ID to extract.
|
|
302
|
+
* @returns The outer HTML string, or `null` if not mounted.
|
|
303
|
+
*/
|
|
304
|
+
extractOuterHTML(id: string): string | null;
|
|
305
|
+
/**
|
|
306
|
+
* Returns the `ShadowRoot` reference.
|
|
307
|
+
* Useful for injecting additional stylesheets (e.g. user theme
|
|
308
|
+
* CSS, Google Fonts `@import`, Tailwind resets).
|
|
309
|
+
*/
|
|
310
|
+
getShadowRoot(): ShadowRoot;
|
|
311
|
+
/**
|
|
312
|
+
* Injects an additional `<style>` element into the shadow root.
|
|
313
|
+
* Returns the created element so it can be removed later.
|
|
314
|
+
*
|
|
315
|
+
* @param css - Raw CSS text to inject.
|
|
316
|
+
* @returns The created `HTMLStyleElement`.
|
|
317
|
+
*/
|
|
318
|
+
injectStylesheet(css: string): HTMLStyleElement;
|
|
319
|
+
/**
|
|
320
|
+
* Injects a `<link rel="stylesheet">` into the shadow root
|
|
321
|
+
* for loading external CSS (e.g. Google Fonts, Tailwind CDN).
|
|
322
|
+
*
|
|
323
|
+
* @param href - The stylesheet URL.
|
|
324
|
+
* @returns A promise that resolves when the stylesheet loads,
|
|
325
|
+
* or rejects on error.
|
|
326
|
+
*/
|
|
327
|
+
injectStylesheetLink(href: string): Promise<HTMLLinkElement>;
|
|
328
|
+
/**
|
|
329
|
+
* Evaluates a script string inside a scoped closure where 'document' and 'window'
|
|
330
|
+
* are proxied to target the ShadowRoot.
|
|
331
|
+
*/
|
|
332
|
+
executeScopedScript(code: string, context?: HTMLElement | ShadowRoot): void;
|
|
333
|
+
/**
|
|
334
|
+
* Tears down the entire shadow mount.
|
|
335
|
+
*
|
|
336
|
+
* Disconnects the ResizeObserver, removes all wrappers,
|
|
337
|
+
* detaches the host element from the DOM, and clears all
|
|
338
|
+
* internal maps. After calling `dispose()`, the instance
|
|
339
|
+
* is inert — all mutating methods will throw.
|
|
340
|
+
*/
|
|
341
|
+
dispose(): void;
|
|
342
|
+
/**
|
|
343
|
+
* Reads the canvas-space bounding rect of a mounted wrapper
|
|
344
|
+
* using pre-transform layout dimensions.
|
|
345
|
+
*/
|
|
346
|
+
private readWrapperRect;
|
|
347
|
+
/**
|
|
348
|
+
* Computes the bounding box of an element in canvas-space relative to the shadow host.
|
|
349
|
+
* Handles scale adjustments correctly and is robust for all elements including SVGs.
|
|
350
|
+
*/
|
|
351
|
+
private getBoundingBoxCanvasSpace;
|
|
352
|
+
/**
|
|
353
|
+
* Returns the content root element for a mounted node.
|
|
354
|
+
* For wrapper-based nodes, this is `wrapper.firstElementChild`.
|
|
355
|
+
* For direct (wrapper-less) nodes, the wrapper IS the content root.
|
|
356
|
+
*/
|
|
357
|
+
private getContentRootInternal;
|
|
358
|
+
/**
|
|
359
|
+
* Processes a batch of `ResizeObserverEntry` records, resolving
|
|
360
|
+
* each observed element back to its node ID and firing the
|
|
361
|
+
* external `onRectChange` callback.
|
|
362
|
+
*/
|
|
363
|
+
private handleResizeEntries;
|
|
364
|
+
/** Throws if `dispose()` has been called. */
|
|
365
|
+
private assertNotDisposed;
|
|
366
|
+
}
|
|
367
|
+
//# sourceMappingURL=shadow-mount.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shadow-mount.d.ts","sourceRoot":"","sources":["../src/shadow-mount.ts"],"names":[],"mappings":"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"}
|