@hyperframes/sdk 0.7.95 → 0.7.96
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/adapters/headless.d.ts.map +1 -1
- package/dist/adapters/headless.js +8 -0
- package/dist/adapters/headless.js.map +1 -1
- package/dist/adapters/iframe.d.ts +75 -1
- package/dist/adapters/iframe.d.ts.map +1 -1
- package/dist/adapters/iframe.js +279 -3
- package/dist/adapters/iframe.js.map +1 -1
- package/dist/adapters/types.d.ts +42 -0
- package/dist/adapters/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +7 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../src/adapters/headless.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../src/adapters/headless.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAIf,MAAM,YAAY,CAAC;AAmCpB,wBAAgB,qBAAqB,IAAI,cAAc,CAEtD"}
|
|
@@ -3,6 +3,14 @@ class HeadlessPreviewAdapter {
|
|
|
3
3
|
elementAtPoint(_x, _y, _opts) {
|
|
4
4
|
return null;
|
|
5
5
|
}
|
|
6
|
+
/**
|
|
7
|
+
* Never provably empty: an adapter with no surface cannot establish that a point is
|
|
8
|
+
* free of ink, and claiming otherwise would tell a host it is safe to click through a
|
|
9
|
+
* composition nobody can see.
|
|
10
|
+
*/
|
|
11
|
+
isProvablyEmptyAt(_x, _y, _opts) {
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
6
14
|
applyDraft(_id, _props) { }
|
|
7
15
|
commitPreview() { }
|
|
8
16
|
cancelPreview() { }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headless.js","sourceRoot":"","sources":["../../src/adapters/headless.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"headless.js","sourceRoot":"","sources":["../../src/adapters/headless.ts"],"names":[],"mappings":"AAQA,gFAAgF;AAChF,MAAM,sBAAsB;IAC1B,cAAc,CAAC,EAAU,EAAE,EAAU,EAAE,KAA2B;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,EAAU,EAAE,EAAU,EAAE,KAAyB;QACjE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,UAAU,CAAC,GAAW,EAAE,MAAkB,IAAS,CAAC;IAEpD,aAAa,KAAU,CAAC;IAExB,aAAa,KAAU,CAAC;IAExB,MAAM,CAAC,IAAc,EAAE,KAA8B,IAAS,CAAC;IAE/D,EAAE,CAAC,MAAmB,EAAE,QAAiC;QACvD,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IAED,UAAU,CAAC,KAAkB;QAC3B,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;CACF;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,IAAI,sBAAsB,EAAE,CAAC;AACtC,CAAC"}
|
|
@@ -26,8 +26,18 @@
|
|
|
26
26
|
* only when currentSrc/dimensions change. Phase 1 is optimized for static images.
|
|
27
27
|
* - Phase 2 (full per-pixel alpha via drawElement rasterization) is NOT built
|
|
28
28
|
* here — gated on a perf spike.
|
|
29
|
+
*
|
|
30
|
+
* Paint query (isProvablyEmptyAt):
|
|
31
|
+
* - Answers "is this point provably free of ink", which is a different question from
|
|
32
|
+
* "what element is here" and needs a different traversal. elementsFromPoint omits
|
|
33
|
+
* `pointer-events: none` nodes; those still paint, so a paint query built on the
|
|
34
|
+
* z-stack reports no ink over visible artwork. The walk therefore covers element
|
|
35
|
+
* BOXES geometrically and is blind to pointer-events and z-index.
|
|
36
|
+
* - Ink itself is a computed-style heuristic (background, border, own text, intrinsic
|
|
37
|
+
* media) EXCEPT for <img>, which routes through the alpha sampler above — so a
|
|
38
|
+
* transparent PNG only paints where its pixels do.
|
|
29
39
|
*/
|
|
30
|
-
import type { PreviewAdapter, ElementAtPointResult } from "./types.js";
|
|
40
|
+
import type { PreviewAdapter, ElementAtPointResult, PaintQueryOptions } from "./types.js";
|
|
31
41
|
import type { EditOp } from "../types.js";
|
|
32
42
|
/**
|
|
33
43
|
* Walk from `el` upward through parentElement, looking for the nearest node
|
|
@@ -98,5 +108,69 @@ export declare function mapPointToImagePixel(rect: {
|
|
|
98
108
|
* Exported for tests that need to reset the cache between runs.
|
|
99
109
|
*/
|
|
100
110
|
export declare const _imgCanvasCache: Map<string, OffscreenCanvas | null>;
|
|
111
|
+
/**
|
|
112
|
+
* Sample the alpha at (clientX, clientY) for an <img> element.
|
|
113
|
+
*
|
|
114
|
+
* Returns true (opaque) when:
|
|
115
|
+
* - The image has not finished loading (naturalWidth/naturalHeight === 0)
|
|
116
|
+
* - The point maps outside the rendered image area (not this image's pixel)
|
|
117
|
+
* - The canvas is tainted (cross-origin, SecurityError) — fallback: opaque
|
|
118
|
+
* - Alpha >= 1
|
|
119
|
+
*
|
|
120
|
+
* Returns false (transparent/miss) only when the canvas is readable AND the
|
|
121
|
+
* alpha at the mapped pixel is 0. A click on the element's border/padding maps
|
|
122
|
+
* outside the content box → also false (the click falls through to the layer
|
|
123
|
+
* behind), since border/padding pixels aren't part of the image — intentional.
|
|
124
|
+
*
|
|
125
|
+
* `win` is the iframe's contentWindow, used to call getComputedStyle on the
|
|
126
|
+
* element which lives in the iframe's document.
|
|
127
|
+
*/
|
|
128
|
+
export declare function imageAlphaOpaqueAt(img: HTMLImageElement, clientX: number, clientY: number, win: Window & typeof globalThis,
|
|
129
|
+
/** Set to true only when pixels were actually read (or the point provably missed the
|
|
130
|
+
* rendered image). Lets callers tell a measured answer from a fail-safe assumption. */
|
|
131
|
+
probe?: {
|
|
132
|
+
sampled: boolean;
|
|
133
|
+
}): boolean;
|
|
134
|
+
/**
|
|
135
|
+
* Elements that paint by virtue of what they are, whatever their CSS says.
|
|
136
|
+
*
|
|
137
|
+
* `img` and `picture` look redundant against the branches above them in `elementPaintsInk`,
|
|
138
|
+
* and are not: those branches need a `point` to sample alpha against, so a point-free call
|
|
139
|
+
* ("could this paint at all?") falls through to this set — as does any environment without
|
|
140
|
+
* `window.HTMLImageElement`. The set is also exported, where it reads as a description of
|
|
141
|
+
* intrinsic painters rather than a switch in one function.
|
|
142
|
+
*/
|
|
143
|
+
export declare const INTRINSIC_PAINT_TAGS: ReadonlySet<string>;
|
|
144
|
+
export declare function elementPaintsInk(el: Element, win: Window & typeof globalThis, point?: {
|
|
145
|
+
x: number;
|
|
146
|
+
y: number;
|
|
147
|
+
}): boolean;
|
|
148
|
+
/**
|
|
149
|
+
* Does the composition in `doc` put ink at (x, y)?
|
|
150
|
+
*
|
|
151
|
+
* A GEOMETRIC walk, not a z-stack one: every element whose border box contains the
|
|
152
|
+
* point is a candidate, regardless of pointer-events, z-index, or what paints over
|
|
153
|
+
* it. That is what makes the answer "is there artwork here" rather than "what would
|
|
154
|
+
* receive this click" — an author's `pointer-events: none` overlay still paints.
|
|
155
|
+
*
|
|
156
|
+
* Candidates are ordered smallest-box-first (deeper node wins a near-tie, matching
|
|
157
|
+
* the way a host picks the most specific element) and ink is evaluated lazily down
|
|
158
|
+
* that order, so the common case costs at most one alpha sample rather than one per
|
|
159
|
+
* candidate.
|
|
160
|
+
*
|
|
161
|
+
* Exported so a host whose hit-test policy differs can reuse the ink test without
|
|
162
|
+
* taking the adapter with it. Two preconditions come with that:
|
|
163
|
+
*
|
|
164
|
+
* - `doc` must be hf-id-stamped (what `openComposition` produces). Against an unstamped
|
|
165
|
+
* document the default walk matches nothing and every point answers a hard `false`,
|
|
166
|
+
* indistinguishable from genuinely empty — pass `addressableOnly: false` there.
|
|
167
|
+
* - `x`/`y` are the DOCUMENT's own client coordinates, not the host page's. A host with a
|
|
168
|
+
* CSS-scaled iframe has to divide out that scale first, or it samples the wrong pixel.
|
|
169
|
+
*
|
|
170
|
+
* Note the polarity: this answers "does it paint", the positive question, and cannot say
|
|
171
|
+
* "not knowable". A caller that wants the fail-safe contract — every uncertainty resolving
|
|
172
|
+
* toward keeping the composition clickable — wants `PreviewAdapter.isProvablyEmptyAt`.
|
|
173
|
+
*/
|
|
174
|
+
export declare function compositionPaintsAt(doc: Document, win: Window & typeof globalThis, x: number, y: number, opts?: PaintQueryOptions): boolean;
|
|
101
175
|
export declare function createIframePreviewAdapter(iframe: HTMLIFrameElement, dispatch?: (op: EditOp) => void): PreviewAdapter;
|
|
102
176
|
//# sourceMappingURL=iframe.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iframe.d.ts","sourceRoot":"","sources":["../../src/adapters/iframe.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"iframe.d.ts","sourceRoot":"","sources":["../../src/adapters/iframe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAUH,OAAO,KAAK,EACV,cAAc,EACd,oBAAoB,EAEpB,iBAAiB,EAClB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,MAAM,EAAe,MAAM,aAAa,CAAC;AAKvD;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,OAAO,GAAG,IAAI,EAClB,SAAS,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,OAAO,GAClC,oBAAoB,GAAG,IAAI,CAY7B;AAID;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,GACT;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAI1B;AAID;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,SAAI,GAAG,OAAO,CAI1E;AAED;;;;;;;;;;;GAWG;AAEH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAClE,OAAO,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC1C,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA2DnC;AAiGD;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,qCAA4C,CAAC;AAkEzE;;;;;;;;;;;;;;;;GAgBG;AAEH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,gBAAgB,EACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,GAAG,OAAO,UAAU;AAC/B;wFACwF;AACxF,KAAK,CAAC,EAAE;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,GAC3B,OAAO,CAgGT;AAID;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAMnD,CAAC;AAoHH,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,OAAO,EACX,GAAG,EAAE,MAAM,GAAG,OAAO,UAAU,EAC/B,KAAK,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/B,OAAO,CAET;AAiFD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,MAAM,GAAG,OAAO,UAAU,EAC/B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,IAAI,CAAC,EAAE,iBAAiB,GACvB,OAAO,CAoCT;AAkWD,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,iBAAiB,EACzB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,GAC9B,cAAc,CAEhB"}
|
package/dist/adapters/iframe.js
CHANGED
|
@@ -26,6 +26,16 @@
|
|
|
26
26
|
* only when currentSrc/dimensions change. Phase 1 is optimized for static images.
|
|
27
27
|
* - Phase 2 (full per-pixel alpha via drawElement rasterization) is NOT built
|
|
28
28
|
* here — gated on a perf spike.
|
|
29
|
+
*
|
|
30
|
+
* Paint query (isProvablyEmptyAt):
|
|
31
|
+
* - Answers "is this point provably free of ink", which is a different question from
|
|
32
|
+
* "what element is here" and needs a different traversal. elementsFromPoint omits
|
|
33
|
+
* `pointer-events: none` nodes; those still paint, so a paint query built on the
|
|
34
|
+
* z-stack reports no ink over visible artwork. The walk therefore covers element
|
|
35
|
+
* BOXES geometrically and is blind to pointer-events and z-index.
|
|
36
|
+
* - Ink itself is a computed-style heuristic (background, border, own text, intrinsic
|
|
37
|
+
* media) EXCEPT for <img>, which routes through the alpha sampler above — so a
|
|
38
|
+
* transparent PNG only paints where its pixels do.
|
|
29
39
|
*/
|
|
30
40
|
import { EDIT_BASE_X_ATTR, EDIT_BASE_Y_ATTR, EDIT_ORIGINAL_TRANSLATE_ATTR, applyPositionEditToElement, composeTranslate, readCurrentTranslate, } from "@hyperframes/core/runtime/position-edits";
|
|
31
41
|
import { applyPatchesToDocument, applyOverrideSet } from "../engine/apply-patches.js";
|
|
@@ -324,7 +334,10 @@ function hasRotationOrSkew(el, win) {
|
|
|
324
334
|
* element which lives in the iframe's document.
|
|
325
335
|
*/
|
|
326
336
|
// fallow-ignore-next-line complexity
|
|
327
|
-
function imageAlphaOpaqueAt(img, clientX, clientY, win
|
|
337
|
+
export function imageAlphaOpaqueAt(img, clientX, clientY, win,
|
|
338
|
+
/** Set to true only when pixels were actually read (or the point provably missed the
|
|
339
|
+
* rendered image). Lets callers tell a measured answer from a fail-safe assumption. */
|
|
340
|
+
probe) {
|
|
328
341
|
// Not loaded yet — treat as opaque (safe fallback)
|
|
329
342
|
if (img.naturalWidth === 0 || img.naturalHeight === 0)
|
|
330
343
|
return true;
|
|
@@ -362,9 +375,13 @@ function imageAlphaOpaqueAt(img, clientX, clientY, win) {
|
|
|
362
375
|
height: rect.height - borderT - borderB - padT - padB,
|
|
363
376
|
}, { width: img.naturalWidth, height: img.naturalHeight }, objectFit, objectPosition, { x: clientX, y: clientY });
|
|
364
377
|
// Point is outside the rendered image area — not this image's pixel.
|
|
365
|
-
// Continue the z-stack (return false = miss on this element).
|
|
366
|
-
|
|
378
|
+
// Continue the z-stack (return false = miss on this element). Geometric certainty,
|
|
379
|
+
// so it counts as sampled.
|
|
380
|
+
if (mapped === null) {
|
|
381
|
+
if (probe)
|
|
382
|
+
probe.sampled = true;
|
|
367
383
|
return false;
|
|
384
|
+
}
|
|
368
385
|
// Retrieve or build the offscreen canvas. Key on src + natural dimensions: a
|
|
369
386
|
// srcset/responsive layout can serve the same URL at a different natural size,
|
|
370
387
|
// and keying on src alone would reuse a canvas drawn at the prior dimensions.
|
|
@@ -401,6 +418,8 @@ function imageAlphaOpaqueAt(img, clientX, clientY, win) {
|
|
|
401
418
|
// The mapped-pixel read also surfaces lazy canvas taint (SecurityError),
|
|
402
419
|
// so no separate taint probe is needed.
|
|
403
420
|
const data = ctx.getImageData(mapped.px, mapped.py, 1, 1);
|
|
421
|
+
if (probe)
|
|
422
|
+
probe.sampled = true;
|
|
404
423
|
return alphaIsOpaque(data);
|
|
405
424
|
}
|
|
406
425
|
catch {
|
|
@@ -410,6 +429,235 @@ function imageAlphaOpaqueAt(img, clientX, clientY, win) {
|
|
|
410
429
|
return true;
|
|
411
430
|
}
|
|
412
431
|
}
|
|
432
|
+
// ─── Paint query ──────────────────────────────────────────────────────────────
|
|
433
|
+
/**
|
|
434
|
+
* Elements that paint by virtue of what they are, whatever their CSS says.
|
|
435
|
+
*
|
|
436
|
+
* `img` and `picture` look redundant against the branches above them in `elementPaintsInk`,
|
|
437
|
+
* and are not: those branches need a `point` to sample alpha against, so a point-free call
|
|
438
|
+
* ("could this paint at all?") falls through to this set — as does any environment without
|
|
439
|
+
* `window.HTMLImageElement`. The set is also exported, where it reads as a description of
|
|
440
|
+
* intrinsic painters rather than a switch in one function.
|
|
441
|
+
*/
|
|
442
|
+
export const INTRINSIC_PAINT_TAGS = new Set([
|
|
443
|
+
"img",
|
|
444
|
+
"picture",
|
|
445
|
+
"video",
|
|
446
|
+
"canvas",
|
|
447
|
+
"svg",
|
|
448
|
+
]);
|
|
449
|
+
/**
|
|
450
|
+
* Does this computed colour put down no ink?
|
|
451
|
+
*
|
|
452
|
+
* The `transparent` keyword computes to `rgba(0, 0, 0, 0)`, but ANY colour can carry a zero
|
|
453
|
+
* alpha — `rgba(255, 255, 255, 0)` is exactly as invisible and is what you get from fading a
|
|
454
|
+
* white background out. Matching known spellings misses those, so the alpha is read instead.
|
|
455
|
+
*/
|
|
456
|
+
function isTransparentColor(value) {
|
|
457
|
+
if (!value || value === "transparent")
|
|
458
|
+
return true;
|
|
459
|
+
// rgb/hsl and their -a forms all carry alpha as the fourth component. Computed
|
|
460
|
+
// background-color is serialized to rgb() by every engine we target, but matching both
|
|
461
|
+
// costs one alternation and removes the dependency on that.
|
|
462
|
+
const inner = /^(?:rgba?|hsla?)\(([^)]*)\)$/.exec(value)?.[1];
|
|
463
|
+
if (inner === undefined)
|
|
464
|
+
return false;
|
|
465
|
+
// Handles both the legacy comma form and the `rgb(r g b / a)` slash form.
|
|
466
|
+
const parts = inner.split(/[\s,/]+/).filter(Boolean);
|
|
467
|
+
// An rgb() with no alpha component is fully opaque.
|
|
468
|
+
const alpha = parts[3];
|
|
469
|
+
return alpha !== undefined && Number.parseFloat(alpha) === 0;
|
|
470
|
+
}
|
|
471
|
+
const BORDER_SIDES = ["top", "right", "bottom", "left"];
|
|
472
|
+
/**
|
|
473
|
+
* The element's OWN non-whitespace text — a direct child text node, not text that
|
|
474
|
+
* lives in a descendant. A wrapper around a caption doesn't paint; the caption does.
|
|
475
|
+
* Without this, every ancestor of a text node would count and the whole frame would
|
|
476
|
+
* read as painted.
|
|
477
|
+
*/
|
|
478
|
+
function hasOwnText(el) {
|
|
479
|
+
for (const node of Array.from(el.childNodes)) {
|
|
480
|
+
if (node.nodeType === 3 /* TEXT_NODE */ && (node.textContent ?? "").trim() !== "")
|
|
481
|
+
return true;
|
|
482
|
+
}
|
|
483
|
+
return false;
|
|
484
|
+
}
|
|
485
|
+
/** Any side with a drawn border — a style that renders and a non-zero width. */
|
|
486
|
+
function hasVisibleBorder(cs) {
|
|
487
|
+
for (const side of BORDER_SIDES) {
|
|
488
|
+
const style = cs.getPropertyValue(`border-${side}-style`);
|
|
489
|
+
const width = Number.parseFloat(cs.getPropertyValue(`border-${side}-width`) || "0");
|
|
490
|
+
if (style && style !== "none" && style !== "hidden" && width > 0)
|
|
491
|
+
return true;
|
|
492
|
+
}
|
|
493
|
+
return false;
|
|
494
|
+
}
|
|
495
|
+
/** Computed-style ink: background, border, or the element's own text. */
|
|
496
|
+
function styleInk(el, win) {
|
|
497
|
+
const cs = win.getComputedStyle(el);
|
|
498
|
+
if (!isTransparentColor(cs.backgroundColor))
|
|
499
|
+
return "inferred";
|
|
500
|
+
if (cs.backgroundImage && cs.backgroundImage !== "none")
|
|
501
|
+
return "inferred";
|
|
502
|
+
if (hasVisibleBorder(cs))
|
|
503
|
+
return "inferred";
|
|
504
|
+
return hasOwnText(el) ? "inferred" : "none";
|
|
505
|
+
}
|
|
506
|
+
function inkAt(el, win, point) {
|
|
507
|
+
const tag = el.tagName.toLowerCase();
|
|
508
|
+
if (tag === "picture") {
|
|
509
|
+
const img = el.querySelector("img");
|
|
510
|
+
return img ? inkAt(img, win, point) : "inferred";
|
|
511
|
+
}
|
|
512
|
+
if (point && win.HTMLImageElement && el instanceof win.HTMLImageElement) {
|
|
513
|
+
const probe = { sampled: false };
|
|
514
|
+
if (imageAlphaOpaqueAt(el, point.x, point.y, win, probe)) {
|
|
515
|
+
// An unsampled "opaque" is the fail-safe, not a measurement, so it stays inferred.
|
|
516
|
+
return probe.sampled ? "verified" : "inferred";
|
|
517
|
+
}
|
|
518
|
+
// A clear pixel does not settle the element: its own background plate, padding and
|
|
519
|
+
// border still paint, and the point may have landed on them rather than the bitmap.
|
|
520
|
+
return styleInk(el, win);
|
|
521
|
+
}
|
|
522
|
+
if (INTRINSIC_PAINT_TAGS.has(tag))
|
|
523
|
+
return "inferred";
|
|
524
|
+
return styleInk(el, win);
|
|
525
|
+
}
|
|
526
|
+
export function elementPaintsInk(el, win, point) {
|
|
527
|
+
return inkAt(el, win, point) !== "none";
|
|
528
|
+
}
|
|
529
|
+
/**
|
|
530
|
+
* Area of the composition frame the point sits in — what a full-bleed layer is measured
|
|
531
|
+
* against. Nested sub-compositions carry `data-composition-id` too, so the innermost
|
|
532
|
+
* root CONTAINING the point wins.
|
|
533
|
+
*
|
|
534
|
+
* Containment is the load-bearing part. Taking the smallest root in the document
|
|
535
|
+
* regardless of where the point falls lets an unrelated sub-composition elsewhere on the
|
|
536
|
+
* frame shrink the reference: a 300x300 badge in a corner would make every mid-size
|
|
537
|
+
* painter in the 1920x1080 outer frame read as full-bleed, and the composition would go
|
|
538
|
+
* click-through under artwork the user can plainly see.
|
|
539
|
+
*
|
|
540
|
+
* Infinity when no root contains the point, which disables the full-bleed rule rather
|
|
541
|
+
* than guessing at a frame.
|
|
542
|
+
*/
|
|
543
|
+
function compositionFrameArea(doc, x, y) {
|
|
544
|
+
let smallest = Infinity;
|
|
545
|
+
doc.querySelectorAll("[data-composition-id]").forEach((root) => {
|
|
546
|
+
const rect = root.getBoundingClientRect();
|
|
547
|
+
if (rect.width <= 0 || rect.height <= 0)
|
|
548
|
+
return;
|
|
549
|
+
if (!boxContains(rect, x, y))
|
|
550
|
+
return;
|
|
551
|
+
smallest = Math.min(smallest, rect.width * rect.height);
|
|
552
|
+
});
|
|
553
|
+
return smallest;
|
|
554
|
+
}
|
|
555
|
+
function boxContains(rect, x, y) {
|
|
556
|
+
return x >= rect.left && x <= rect.right && y >= rect.top && y <= rect.bottom;
|
|
557
|
+
}
|
|
558
|
+
/**
|
|
559
|
+
* Is the element rendered at all?
|
|
560
|
+
*
|
|
561
|
+
* `display: none` is checked belt-and-braces: a real engine collapses the box and the area
|
|
562
|
+
* guard already rejects it, so the clause only earns its place against hosts that report a
|
|
563
|
+
* box anyway. `visibility` and `opacity` genuinely need it, and opacity has to be read up
|
|
564
|
+
* the ancestor chain — a fully opaque child inside a fade-in wrapper that has not started
|
|
565
|
+
* yet is invisible, and getComputedStyle does not multiply the cascade for us.
|
|
566
|
+
*/
|
|
567
|
+
function isRenderedVisible(el, win) {
|
|
568
|
+
const cs = win.getComputedStyle(el);
|
|
569
|
+
if (cs.display === "none" || cs.visibility === "hidden")
|
|
570
|
+
return false;
|
|
571
|
+
return isOpacityVisible(el, win);
|
|
572
|
+
}
|
|
573
|
+
function depthOf(el) {
|
|
574
|
+
let depth = 0;
|
|
575
|
+
for (let p = el.parentElement; p; p = p.parentElement)
|
|
576
|
+
depth++;
|
|
577
|
+
return depth;
|
|
578
|
+
}
|
|
579
|
+
/**
|
|
580
|
+
* `el` as a paint candidate for the point, or null when it cannot contribute ink
|
|
581
|
+
* there. Ink itself is NOT tested here — that is the expensive part, deferred until
|
|
582
|
+
* the candidates are ordered.
|
|
583
|
+
*/
|
|
584
|
+
function paintCandidateAt(el, win, x, y) {
|
|
585
|
+
// Composition roots are candidates like anything else: a root carrying a background is
|
|
586
|
+
// painting, and at fullBleedFraction 0 the literal ink question has to say so. They are
|
|
587
|
+
// not excluded here because the veto already handles them — a root's box IS the frame,
|
|
588
|
+
// so any non-zero fraction discounts it as background without a special case.
|
|
589
|
+
const rect = el.getBoundingClientRect();
|
|
590
|
+
if (rect.width <= 0 || rect.height <= 0)
|
|
591
|
+
return null;
|
|
592
|
+
if (!boxContains(rect, x, y))
|
|
593
|
+
return null;
|
|
594
|
+
if (!isRenderedVisible(el, win))
|
|
595
|
+
return null;
|
|
596
|
+
return { el, area: rect.width * rect.height, depth: depthOf(el) };
|
|
597
|
+
}
|
|
598
|
+
/**
|
|
599
|
+
* Does the composition in `doc` put ink at (x, y)?
|
|
600
|
+
*
|
|
601
|
+
* A GEOMETRIC walk, not a z-stack one: every element whose border box contains the
|
|
602
|
+
* point is a candidate, regardless of pointer-events, z-index, or what paints over
|
|
603
|
+
* it. That is what makes the answer "is there artwork here" rather than "what would
|
|
604
|
+
* receive this click" — an author's `pointer-events: none` overlay still paints.
|
|
605
|
+
*
|
|
606
|
+
* Candidates are ordered smallest-box-first (deeper node wins a near-tie, matching
|
|
607
|
+
* the way a host picks the most specific element) and ink is evaluated lazily down
|
|
608
|
+
* that order, so the common case costs at most one alpha sample rather than one per
|
|
609
|
+
* candidate.
|
|
610
|
+
*
|
|
611
|
+
* Exported so a host whose hit-test policy differs can reuse the ink test without
|
|
612
|
+
* taking the adapter with it. Two preconditions come with that:
|
|
613
|
+
*
|
|
614
|
+
* - `doc` must be hf-id-stamped (what `openComposition` produces). Against an unstamped
|
|
615
|
+
* document the default walk matches nothing and every point answers a hard `false`,
|
|
616
|
+
* indistinguishable from genuinely empty — pass `addressableOnly: false` there.
|
|
617
|
+
* - `x`/`y` are the DOCUMENT's own client coordinates, not the host page's. A host with a
|
|
618
|
+
* CSS-scaled iframe has to divide out that scale first, or it samples the wrong pixel.
|
|
619
|
+
*
|
|
620
|
+
* Note the polarity: this answers "does it paint", the positive question, and cannot say
|
|
621
|
+
* "not knowable". A caller that wants the fail-safe contract — every uncertainty resolving
|
|
622
|
+
* toward keeping the composition clickable — wants `PreviewAdapter.isProvablyEmptyAt`.
|
|
623
|
+
*/
|
|
624
|
+
export function compositionPaintsAt(doc, win, x, y, opts) {
|
|
625
|
+
const selector = (opts?.addressableOnly ?? true) ? "[data-hf-id]" : "*";
|
|
626
|
+
const candidates = [];
|
|
627
|
+
doc.querySelectorAll(selector).forEach((el) => {
|
|
628
|
+
const candidate = paintCandidateAt(el, win, x, y);
|
|
629
|
+
if (candidate)
|
|
630
|
+
candidates.push(candidate);
|
|
631
|
+
});
|
|
632
|
+
// Smallest area first, deeper element first on an exact tie. Compared exactly rather
|
|
633
|
+
// than within an epsilon: a "close enough" tie relation is intransitive, which makes
|
|
634
|
+
// Array.sort's output implementation-defined and the smallest-first guarantee (and the
|
|
635
|
+
// lazy single-sample property that rides on it) engine-dependent.
|
|
636
|
+
candidates.sort((a, b) => a.area - b.area || b.depth - a.depth);
|
|
637
|
+
let winner;
|
|
638
|
+
let winnerInk = "none";
|
|
639
|
+
for (const candidate of candidates) {
|
|
640
|
+
const ink = inkAt(candidate.el, win, { x, y });
|
|
641
|
+
if (ink === "none")
|
|
642
|
+
continue;
|
|
643
|
+
winner = candidate;
|
|
644
|
+
winnerInk = ink;
|
|
645
|
+
break;
|
|
646
|
+
}
|
|
647
|
+
if (!winner)
|
|
648
|
+
return false;
|
|
649
|
+
const fullBleed = opts?.fullBleedFraction ?? 0;
|
|
650
|
+
if (fullBleed <= 0)
|
|
651
|
+
return true;
|
|
652
|
+
// Never veto a measured pixel. The rule exists to discount paint ASSUMED to fill a box
|
|
653
|
+
// — a full-frame wrapper with a background-image — and a full-bleed transparent PNG or
|
|
654
|
+
// SVG overlay is precisely the case where that assumption is wrong: box area is not ink
|
|
655
|
+
// area, and answering "background" there makes visible artwork unclickable.
|
|
656
|
+
if (winnerInk === "verified")
|
|
657
|
+
return true;
|
|
658
|
+
const frameArea = compositionFrameArea(doc, x, y);
|
|
659
|
+
return frameArea === Infinity || winner.area < fullBleed * frameArea;
|
|
660
|
+
}
|
|
413
661
|
// ─── IframePreviewAdapter ─────────────────────────────────────────────────────
|
|
414
662
|
/**
|
|
415
663
|
* The hit-test z-stack at (x, y): the full elementsFromPoint stack, or a
|
|
@@ -492,6 +740,34 @@ class IframePreviewAdapter {
|
|
|
492
740
|
}
|
|
493
741
|
return null;
|
|
494
742
|
}
|
|
743
|
+
/**
|
|
744
|
+
* Is (x, y) provably free of ink? See PreviewAdapter.isProvablyEmptyAt.
|
|
745
|
+
*
|
|
746
|
+
* Every uncertain path answers false rather than claiming emptiness: an unreachable or
|
|
747
|
+
* cross-origin document, and a same-origin iframe mid-navigation — srcdoc and blob:
|
|
748
|
+
* assignment are async navigations, so `contentDocument` is a READABLE but empty
|
|
749
|
+
* document while the composition is arriving. Walking that would find no ink and hand
|
|
750
|
+
* back a confident "safe to click through" under a composition about to appear.
|
|
751
|
+
*/
|
|
752
|
+
isProvablyEmptyAt(x, y, opts) {
|
|
753
|
+
let doc;
|
|
754
|
+
let win;
|
|
755
|
+
try {
|
|
756
|
+
doc = this.iframe.contentDocument;
|
|
757
|
+
win = this.iframe.contentWindow;
|
|
758
|
+
}
|
|
759
|
+
catch {
|
|
760
|
+
return false; // Cross-origin access throws. Unknowable is not empty.
|
|
761
|
+
}
|
|
762
|
+
if (!doc || !win)
|
|
763
|
+
return false;
|
|
764
|
+
if (doc.readyState === "loading")
|
|
765
|
+
return false;
|
|
766
|
+
if (!doc.querySelector("[data-hf-id]") && !doc.querySelector("[data-composition-id]")) {
|
|
767
|
+
return false;
|
|
768
|
+
}
|
|
769
|
+
return !compositionPaintsAt(doc, win, x, y, opts);
|
|
770
|
+
}
|
|
495
771
|
/**
|
|
496
772
|
* Visually translate the target element inside the iframe at 60fps without
|
|
497
773
|
* touching the model: sets the element's `translate` to its pre-drag value
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iframe.js","sourceRoot":"","sources":["../../src/adapters/iframe.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"iframe.js","sourceRoot":"","sources":["../../src/adapters/iframe.ts"],"names":[],"mappings":"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"}
|
package/dist/adapters/types.d.ts
CHANGED
|
@@ -37,6 +37,25 @@ export interface DraftProps {
|
|
|
37
37
|
width?: number;
|
|
38
38
|
height?: number;
|
|
39
39
|
}
|
|
40
|
+
export interface PaintQueryOptions {
|
|
41
|
+
/**
|
|
42
|
+
* A hit whose smallest painting box covers at least this fraction of the composition
|
|
43
|
+
* frame reads as background rather than ink. 0 (the default) counts every painting box.
|
|
44
|
+
*
|
|
45
|
+
* Host policy, not a fact about the composition: an editor that treats "you clicked a
|
|
46
|
+
* full-bleed layer" as "you clicked nothing" wants ~0.9, while a caller asking the
|
|
47
|
+
* literal ink question wants 0.
|
|
48
|
+
*/
|
|
49
|
+
fullBleedFraction?: number;
|
|
50
|
+
/**
|
|
51
|
+
* Consider only model-addressable elements (`[data-hf-id]`). Default true.
|
|
52
|
+
*
|
|
53
|
+
* False widens the walk to every element, which catches nodes created after the
|
|
54
|
+
* document was stamped (split-text word spans, cloned nodes) at the cost of a larger
|
|
55
|
+
* candidate set.
|
|
56
|
+
*/
|
|
57
|
+
addressableOnly?: boolean;
|
|
58
|
+
}
|
|
40
59
|
/**
|
|
41
60
|
* Injectable preview adapter — decouples the SDK from the host preview surface.
|
|
42
61
|
* The null/headless adapter stubs all methods (no browser needed).
|
|
@@ -50,6 +69,29 @@ export interface PreviewAdapter {
|
|
|
50
69
|
elementAtPoint(x: number, y: number, opts?: {
|
|
51
70
|
atTime?: number;
|
|
52
71
|
}): ElementAtPointResult | null;
|
|
72
|
+
/**
|
|
73
|
+
* Is (x, y) provably free of ink — is it safe to let a click pass through to whatever
|
|
74
|
+
* sits beneath this composition? Same coordinate space as `elementAtPoint`.
|
|
75
|
+
*
|
|
76
|
+
* The question a host layering a transparent composition over other content has to
|
|
77
|
+
* answer before it swallows a click: is the user pointing AT something, or through an
|
|
78
|
+
* empty gap at whatever sits beneath? Geometry alone cannot tell — a composition is
|
|
79
|
+
* mostly full-bleed wrapper `<div>`s with no visual presence, and those boxes cover
|
|
80
|
+
* every pixel of the frame.
|
|
81
|
+
*
|
|
82
|
+
* True ONLY when the composition was readable and nothing painted there. Everything
|
|
83
|
+
* else is false: ink present, a document still loading or unreadable, or an adapter
|
|
84
|
+
* that does not implement this at all (`preview.isProvablyEmptyAt?.(x, y)` → undefined
|
|
85
|
+
* → falsy). The polarity is the point — it puts the burden of proof on passing the
|
|
86
|
+
* click through, so every way of failing keeps the composition clickable instead of
|
|
87
|
+
* making it vanish from under the cursor. A "does it paint" reading would leave two of
|
|
88
|
+
* those three bottom values doing the dangerous thing.
|
|
89
|
+
*
|
|
90
|
+
* Deliberately not derived from `elementsFromPoint`, which omits `pointer-events: none`
|
|
91
|
+
* nodes — those still paint, and reporting no ink over visible artwork is exactly the
|
|
92
|
+
* failure this polarity exists to prevent.
|
|
93
|
+
*/
|
|
94
|
+
isProvablyEmptyAt?(x: number, y: number, opts?: PaintQueryOptions): boolean;
|
|
53
95
|
/** Apply draft CSS markers to the preview element (60fps, SDK not involved) */
|
|
54
96
|
applyDraft(id: string, props: DraftProps): void;
|
|
55
97
|
/** Derive op from draft markers, dispatch it, emit patch event, clear markers */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/adapters/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAIlE,MAAM,WAAW,mBAAmB;IAClC,mEAAmE;IACnE,GAAG,EAAE,MAAM,CAAC;IACZ,6FAA6F;IAC7F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,0DAA0D;IAC1D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAC3D,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxE,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CACrF;AAID,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,6EAA6E;IAC7E,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,oBAAoB,GAAG,IAAI,CAAC;IAE9F,+EAA+E;IAC/E,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IAEhD,iFAAiF;IACjF,aAAa,IAAI,IAAI,CAAC;IAEtB,oEAAoE;IACpE,aAAa,IAAI,IAAI,CAAC;IAEtB,kEAAkE;IAClE,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAI3D,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAErE;;;;;;;;OAQG;IACH,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,IAAI,CAAC;IAE1C;;;;;;OAMG;IACH,mBAAmB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;CACpE"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/adapters/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAIlE,MAAM,WAAW,mBAAmB;IAClC,mEAAmE;IACnE,GAAG,EAAE,MAAM,CAAC;IACZ,6FAA6F;IAC7F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,0DAA0D;IAC1D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAC3D,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxE,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CACrF;AAID,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,6EAA6E;IAC7E,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,oBAAoB,GAAG,IAAI,CAAC;IAE9F;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC;IAE5E,+EAA+E;IAC/E,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IAEhD,iFAAiF;IACjF,aAAa,IAAI,IAAI,CAAC;IAEtB,oEAAoE;IACpE,aAAa,IAAI,IAAI,CAAC;IAEtB,kEAAkE;IAClE,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAI3D,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAErE;;;;;;;;OAQG;IACH,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,IAAI,CAAC;IAE1C;;;;;;OAMG;IACH,mBAAmB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;CACpE"}
|
package/dist/index.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ export { createHistory } from "./history.js";
|
|
|
12
12
|
export type { HistoryModule, HistoryOptions, HistoryEntry } from "./history.js";
|
|
13
13
|
export { createPersistQueue } from "./persist-queue.js";
|
|
14
14
|
export type { PersistQueueModule, PersistQueueOptions } from "./persist-queue.js";
|
|
15
|
-
export type { PersistAdapter, PreviewAdapter, PersistVersionEntry } from "./adapters/types.js";
|
|
15
|
+
export type { PersistAdapter, PreviewAdapter, PersistVersionEntry, PaintQueryOptions, } from "./adapters/types.js";
|
|
16
16
|
export { createMemoryAdapter } from "./adapters/memory.js";
|
|
17
17
|
export { createHeadlessAdapter } from "./adapters/headless.js";
|
|
18
18
|
export { createIframePreviewAdapter, resolveNearestHfElement } from "./adapters/iframe.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,MAAM,EACN,WAAW,EACX,SAAS,EACT,UAAU,EACV,aAAa,EACb,IAAI,EACJ,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,SAAS,EACT,cAAc,EACd,aAAa,EACb,WAAW,EACX,SAAS,GACV,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAIhE,YAAY,EACV,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,aAAa,EACb,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAExE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEhF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAElF,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,MAAM,EACN,WAAW,EACX,SAAS,EACT,UAAU,EACV,aAAa,EACb,IAAI,EACJ,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,SAAS,EACT,cAAc,EACd,aAAa,EACb,WAAW,EACX,SAAS,GACV,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAIhE,YAAY,EACV,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,aAAa,EACb,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAExE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEhF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAElF,YAAY,EACV,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAoBhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAExE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAoBhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAExE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAUxD,kGAAkG;AAClG,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hyperframes/sdk",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.96",
|
|
4
4
|
"description": "Headless, framework-neutral HyperFrames composition editing engine",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -30,6 +30,10 @@
|
|
|
30
30
|
"import": "./dist/adapters/headless.js",
|
|
31
31
|
"types": "./dist/adapters/headless.d.ts"
|
|
32
32
|
},
|
|
33
|
+
"./adapters/iframe": {
|
|
34
|
+
"import": "./dist/adapters/iframe.js",
|
|
35
|
+
"types": "./dist/adapters/iframe.d.ts"
|
|
36
|
+
},
|
|
33
37
|
"./editing": {
|
|
34
38
|
"import": "./dist/editing/affordances.js",
|
|
35
39
|
"types": "./dist/editing/affordances.d.ts"
|
|
@@ -40,8 +44,8 @@
|
|
|
40
44
|
},
|
|
41
45
|
"dependencies": {
|
|
42
46
|
"linkedom": "^0.18.12",
|
|
43
|
-
"@hyperframes/core": "0.7.
|
|
44
|
-
"@hyperframes/parsers": "0.7.
|
|
47
|
+
"@hyperframes/core": "0.7.96",
|
|
48
|
+
"@hyperframes/parsers": "0.7.96"
|
|
45
49
|
},
|
|
46
50
|
"devDependencies": {
|
|
47
51
|
"@types/node": "^25.0.10",
|