@flemo/core 2.2.1 → 2.2.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.
@@ -49,6 +49,21 @@ export declare const BAR_SPACER_ATTR = "data-flemo-bar-spacer";
49
49
  export declare const DECORATOR_ATTR = "data-flemo-decorator";
50
50
  /** The decorator definition's name, for its own compiled rules. */
51
51
  export declare const DECORATOR_NAME_ATTR = "data-flemo-decorator-name";
52
+ /**
53
+ * The screen a decorator belongs to, on every copy of it.
54
+ *
55
+ * A decorator is not one element. A screen with a `<Layer>` slot renders its
56
+ * dim TWICE — once in its own container, once portalled into the layer host so
57
+ * the dim also covers what the overlay carried out of the screen — and the
58
+ * copy is the one that paints on top. Everything that has to reach "this
59
+ * screen's dim" was reaching the in-container one by a ref or an own-child
60
+ * query, so the copy, which is what the eye is on, was reached by nothing: a
61
+ * swipe drove the original under it while the visible one stood still.
62
+ *
63
+ * The id is the screen's, so a lookup names the OWNER rather than a position,
64
+ * and finds however many copies that owner rendered.
65
+ */
66
+ export declare const DECORATOR_OWNER_ATTR = "data-flemo-decorator-owner";
52
67
  /**
53
68
  * The HOST: one childless box per screen chain, rendered by the OUTERMOST
54
69
  * screen's container and inherited by every screen nested inside it. Outermost
@@ -289,4 +304,4 @@ export declare const attrValueSelector: (attribute: string, value: string) => st
289
304
  * a devtools build can assert against the shipped set instead of a hand-kept
290
305
  * copy — the drift this module exists to end.
291
306
  */
292
- export declare const FLEMO_ATTRIBUTES: readonly ["data-flemo-screen", "data-flemo-status", "data-flemo-active", "data-flemo-transition", "data-flemo-router", "data-flemo-skip-animation", "data-flemo-bar", "data-flemo-bar-active", "data-flemo-bar-status", "data-flemo-bar-riding", "data-flemo-bar-id", "data-flemo-bar-id-type", "data-flemo-bar-transition", "data-flemo-bar-spacer", "data-flemo-decorator", "data-flemo-decorator-name", "data-flemo-layer-host", "data-flemo-layer-owner", "data-flemo-layer-slot", "data-flemo-part-name", "data-flemo-part-layer", "data-flemo-part-home", "data-flemo-part-stand-in", "data-flemo-morph", "data-flemo-morph-camera", "data-flemo-morph-ghost", "data-flemo-morph-layer", "data-flemo-morph-name", "data-flemo-morph-slot", "data-flemo-morph-stand-in", "data-flemo-morph-sheet", "data-flemo-anim-hold", "data-flemo-held-arrival", "data-flemo-img-hold", "data-flemo-governed", "data-flemo-creep", "data-flemo-desk-head", "data-flemo-park-head", "data-flemo-warm", "data-flemo-gpu-prewarm", "data-flemo-image-src", "data-flemo-devtools-panel"];
307
+ export declare const FLEMO_ATTRIBUTES: readonly ["data-flemo-screen", "data-flemo-status", "data-flemo-active", "data-flemo-transition", "data-flemo-router", "data-flemo-skip-animation", "data-flemo-bar", "data-flemo-bar-active", "data-flemo-bar-status", "data-flemo-bar-riding", "data-flemo-bar-id", "data-flemo-bar-id-type", "data-flemo-bar-transition", "data-flemo-bar-spacer", "data-flemo-decorator", "data-flemo-decorator-name", "data-flemo-decorator-owner", "data-flemo-layer-host", "data-flemo-layer-owner", "data-flemo-layer-slot", "data-flemo-part-name", "data-flemo-part-layer", "data-flemo-part-home", "data-flemo-part-stand-in", "data-flemo-morph", "data-flemo-morph-camera", "data-flemo-morph-ghost", "data-flemo-morph-layer", "data-flemo-morph-name", "data-flemo-morph-slot", "data-flemo-morph-stand-in", "data-flemo-morph-sheet", "data-flemo-anim-hold", "data-flemo-held-arrival", "data-flemo-img-hold", "data-flemo-governed", "data-flemo-creep", "data-flemo-desk-head", "data-flemo-park-head", "data-flemo-warm", "data-flemo-gpu-prewarm", "data-flemo-image-src", "data-flemo-devtools-panel"];
@@ -22,4 +22,13 @@ export interface PreserveAnimationsOptions {
22
22
  * Runs `move` — the re-parent — and carries the subtree's animation clocks
23
23
  * across it.
24
24
  */
25
- export declare function preserveAnimations(root: Element, move: () => void, options?: PreserveAnimationsOptions): void;
25
+ /**
26
+ * Move an element without restarting the animations inside it.
27
+ *
28
+ * Returns HOW MANY it had to carry, because asking is the expensive half: each
29
+ * `getAnimations({ subtree: true })` forces a style recalculation, and a flight
30
+ * lands with every one of its participants asking twice in the same frame.
31
+ * Measured on the reference grid, that frame ran 75ms. A caller that already
32
+ * knows the answer is zero can skip the question entirely.
33
+ */
34
+ export declare function preserveAnimations(root: Element, move: () => void, options?: PreserveAnimationsOptions): number;