diff --git a/configurator/src/App.svelte b/configurator/src/App.svelte index 10be2e5c..91dc2997 100644 --- a/configurator/src/App.svelte +++ b/configurator/src/App.svelte @@ -274,6 +274,7 @@
import { Check, Copy, Download, Link } from '@lucide/svelte'; import { generateCSS, buildShareUrl } from '../../lib/codec'; + import { getShareBaseUrl } from '../../lib/persistence'; let { overrides }: { overrides: Record; @@ -23,7 +24,7 @@ async function handleCopyLink() { try { - const url = buildShareUrl(overrides); + const url = buildShareUrl(overrides, getShareBaseUrl()); await navigator.clipboard.writeText(url); copiedLink = true; setTimeout(() => { copiedLink = false; }, 2000); diff --git a/configurator/src/components/shell/StudioHeader.svelte b/configurator/src/components/shell/StudioHeader.svelte index d23ff8c2..daf8e72c 100644 --- a/configurator/src/components/shell/StudioHeader.svelte +++ b/configurator/src/components/shell/StudioHeader.svelte @@ -2,10 +2,13 @@ import { tick } from 'svelte'; import { Undo2, Redo2, Trash2, Share2, FolderOpen, Check, Save, Loader2, AlertTriangle, Sun, Moon } from '@lucide/svelte'; import { themeState, toggleTheme } from '../../lib/theme.svelte'; + import { buildShareUrl } from '../../lib/codec'; + import { getShareBaseUrl } from '../../lib/persistence'; const version = typeof __SLASHED_VERSION__ !== "undefined" ? __SLASHED_VERSION__ : ""; - let { overridesCount, canUndo, canRedo, hasPendingChanges, saveState, onUndo, onRedo, onResetAll, onImport, onExport, onSave }: { + let { overrides, overridesCount, canUndo, canRedo, hasPendingChanges, saveState, onUndo, onRedo, onResetAll, onImport, onExport, onSave }: { + overrides: Record; overridesCount: number; canUndo: boolean; canRedo: boolean; @@ -32,7 +35,8 @@ async function handleShare() { try { - await navigator.clipboard.writeText(window.location.href); + const url = buildShareUrl(overrides, getShareBaseUrl()); + await navigator.clipboard.writeText(url); shareFeedback = true; setTimeout(() => { shareFeedback = false; }, 2000); } catch { @@ -83,13 +87,13 @@
-
+
@@ -118,7 +122,7 @@ onclick={onUndo} disabled={!canUndo} title="Undo (Ctrl+Z)" - class="p-1.5 rounded-lg text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white hover:bg-black/8 dark:hover:bg-white/8 disabled:opacity-25 disabled:pointer-events-none transition-all cursor-pointer" + class="p-1.5 rounded-lg text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white hover:bg-black/8 dark:hover:bg-white/8 disabled:opacity-25 disabled:pointer-events-none transition-all cursor-pointer shrink-0" > @@ -126,17 +130,17 @@ onclick={onRedo} disabled={!canRedo} title="Redo (Ctrl+Shift+Z)" - class="p-1.5 rounded-lg text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white hover:bg-black/8 dark:hover:bg-white/8 disabled:opacity-25 disabled:pointer-events-none transition-all cursor-pointer" + class="p-1.5 rounded-lg text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white hover:bg-black/8 dark:hover:bg-white/8 disabled:opacity-25 disabled:pointer-events-none transition-all cursor-pointer shrink-0" > -
+
@@ -157,19 +161,19 @@ onclick={handleResetAllClick} disabled={overridesCount === 0} title="Reset all overrides" - class="p-1.5 rounded-lg text-rose-600 dark:text-rose-400 hover:text-rose-700 dark:hover:text-rose-300 hover:bg-rose-500/10 disabled:opacity-25 disabled:pointer-events-none transition-all cursor-pointer" + class="p-1.5 rounded-lg text-rose-600 dark:text-rose-400 hover:text-rose-700 dark:hover:text-rose-300 hover:bg-rose-500/10 disabled:opacity-25 disabled:pointer-events-none transition-all cursor-pointer shrink-0" > -
+