diff --git a/frontend/src/lib/components/common/modal/Modal.svelte b/frontend/src/lib/components/common/modal/Modal.svelte index d718c3c1bd..20821a33f9 100644 --- a/frontend/src/lib/components/common/modal/Modal.svelte +++ b/frontend/src/lib/components/common/modal/Modal.svelte @@ -20,6 +20,11 @@ style?: string cancelText?: string | undefined kind?: 'button' | 'X' + /** Make the dialog fill the height it is anchored to and lay its body out as a flex + * column, so content can size itself with `h-full` / `flex-1 min-h-0`. Off by default: + * the dialog otherwise hugs its content, and percentage heights inside it do not + * resolve (the centering wrapper is `min-h-full`, i.e. height:auto). */ + fillHeight?: boolean /** Force a minimum z-index base. Defaults to elevating above the AI chat * side panel when it is open. Pass an explicit value to stack above other * surfaces (e.g. a modal opened over the /sessions preview-pane editor). */ @@ -36,6 +41,7 @@ style = '', cancelText = undefined, kind = 'button', + fillHeight = false, minZIndex: minZIndexProp = undefined, settings, children: children_render, @@ -119,12 +125,17 @@ >
-
+
(open = false)} />
{/if} -
+
-
+

{title}

{@render settings?.()}
-
+
{@render children_render?.()}
diff --git a/frontend/src/lib/components/copilot/chat/script/MermaidDisplay.svelte b/frontend/src/lib/components/copilot/chat/script/MermaidDisplay.svelte index dda1892baa..60687efcce 100644 --- a/frontend/src/lib/components/copilot/chat/script/MermaidDisplay.svelte +++ b/frontend/src/lib/components/copilot/chat/script/MermaidDisplay.svelte @@ -35,6 +35,13 @@ startOnLoad: false, theme: dark ? 'dark' : 'default', securityLevel: 'strict', + // Mermaid writes this stack into a