From 93dd8271eb505809e1c1d910b21502221a983abb Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Mon, 12 Jan 2026 12:50:35 -0500 Subject: [PATCH] fix: resolve Svelte 5 'props_invalid_value' error by removing defaults from $bindable props Binding to an undefined value when a $bindable prop has a default fallback causes a runtime error in Svelte 5 runes mode. Defaults are now applied within the component logic. --- src/lib/ae_elements/AE_AITools.svelte | 20 +++++++++++++------ .../app_components/e_app_codemirror_v5.svelte | 2 +- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/lib/ae_elements/AE_AITools.svelte b/src/lib/ae_elements/AE_AITools.svelte index 1b1b5d5f..ad6529a3 100644 --- a/src/lib/ae_elements/AE_AITools.svelte +++ b/src/lib/ae_elements/AE_AITools.svelte @@ -39,18 +39,26 @@ let { content, summary = $bindable(), - model = $bindable('dgrzone-deepseek-8b-quick'), - baseUrl = $bindable('https://ai.dgrzone.com/api'), - token = $bindable(''), - systemPrompt = $bindable('You are a helpful assistant.'), - maxTokens = $bindable(512), - temperature = $bindable(0.7), + model = $bindable(), + baseUrl = $bindable(), + token = $bindable(), + systemPrompt = $bindable(), + maxTokens = $bindable(), + temperature = $bindable(), onSave, onSyncConfig, buttonClass = "btn btn-sm preset-tonal-primary shadow-lg hover:scale-105 transition-all", log_lvl = 0 }: Props = $props(); + // Apply defaults if undefined (Safe for Svelte 5 Runes) + if (model === undefined) model = 'dgrzone-deepseek-8b-quick'; + if (baseUrl === undefined) baseUrl = 'https://ai.dgrzone.com/api'; + if (token === undefined) token = ''; + if (systemPrompt === undefined) systemPrompt = 'You are a helpful assistant.'; + if (maxTokens === undefined) maxTokens = 512; + if (temperature === undefined) temperature = 0.7; + // Internal State let ae_promises: any = $state(null); let show_modal = $state(false); diff --git a/src/lib/app_components/e_app_codemirror_v5.svelte b/src/lib/app_components/e_app_codemirror_v5.svelte index 16b431e5..675c846c 100644 --- a/src/lib/app_components/e_app_codemirror_v5.svelte +++ b/src/lib/app_components/e_app_codemirror_v5.svelte @@ -29,7 +29,7 @@ let { content = 'test test test test', - new_content = $bindable(''), + new_content = $bindable(), editorView = $bindable(), // Exposed for external control theme_mode = 'light', extensions = [],