fika-editor 3.0.41 → 3.0.42

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.
@@ -35,8 +35,9 @@ interface MathliveModule {
35
35
  * keys. Fika's canvas is `height: 100%` of that body, so the padding
36
36
  * shrinks the slide and the viewport observer refits it smaller.
37
37
  *
38
- * Dock the keyboard in a fixed overlay instead — MathLive skips the padding
39
- * whenever `container !== document.body`.
38
+ * Dock the keyboard in a host that spans the portal (the Fika root) instead —
39
+ * MathLive skips the padding whenever `container !== document.body`, and its
40
+ * custom-container rules stack the keys at the host's bottom edge.
40
41
  */
41
42
  export declare function dockMathVirtualKeyboard(): void;
42
43
  /**
@@ -24,8 +24,11 @@ export declare function getFikaPortalTarget(): HTMLElement;
24
24
  * its own embed. Falls back to the standalone portal root.
25
25
  */
26
26
  export declare function resolveFikaPortalTarget(el?: Element | null): HTMLElement;
27
- /** Ancestor that becomes the containing block for `position: fixed` descendants. */
28
- export declare function findFixedContainingBlock(from: HTMLElement): HTMLElement | null;
27
+ /**
28
+ * Pointer position and available space in the portal's own box. Menus are
29
+ * absolutely positioned inside the portal (which spans the Fika root), so
30
+ * viewport coordinates are translated into it.
31
+ */
29
32
  export declare function menuAxisFromEvent(event: MouseEvent, portal: HTMLElement): {
30
33
  x: number;
31
34
  y: number;
package/docs/EMBED.md CHANGED
@@ -69,6 +69,10 @@ export function FikaEditor({ locale }: { locale: 'cs' | 'en' | 'sk' | 'pl' }) {
69
69
  }
70
70
  ```
71
71
 
72
+ ### Overlays stay inside the host
73
+
74
+ Dialogs, loaders, toasts, context menus and the MathLive virtual keyboard render into a portal that spans the **host element**, not the viewport. The host becomes their containing block: if it is `position: static`, `mountFika` sets `position: relative` on it for the lifetime of the mount. Size the host to the area Fika may cover. Only presentation mode takes the whole viewport.
75
+
72
76
  ## Imperative API (`FikaController`)
73
77
 
74
78
  | Method | Description |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fika-editor",
3
- "version": "3.0.41",
3
+ "version": "3.0.42",
4
4
  "description": "Fika presentation editor embed bundle with a typed agentic bridge.",
5
5
  "type": "module",
6
6
  "main": "dist/embed/fika-embed.js",
@@ -109,7 +109,7 @@
109
109
  "lucide-react": "^1.33.0",
110
110
  "markdown-it": "^15.0.0",
111
111
  "markdown-it-texmath": "^1.0.0",
112
- "mathlive": "npm:@lofcz/mathlive@^0.110.9",
112
+ "mathlive": "npm:@lofcz/mathlive@^0.110.10",
113
113
  "mathml2omml-plus": "^0.6.4",
114
114
  "mermaid": "^11.17.0",
115
115
  "mitt": "^3.0.1",