adm.synops.no viser admin-arbeidsflate
- Header viser "Administrasjon" i stedet for "Hjem" på adm.synops.no - Tom-tilstand foreslår admin-verktøy (Nodeutforsker, Forbruk, AI) - homeLabel prop i ContextHeader for konfigurerbar tittel - isAdminHost fra layout server → +page.svelte Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
b8c38a901e
commit
8885a13d9b
2 changed files with 44 additions and 18 deletions
|
|
@ -42,6 +42,8 @@
|
|||
theme?: ThemeConfig;
|
||||
/** Callback when theme changes */
|
||||
onThemeChange?: (theme: ThemeConfig) => void;
|
||||
/** Label for home workspace (default "Hjem") */
|
||||
homeLabel?: string;
|
||||
/** User's saved theme slots (up to 6) */
|
||||
savedThemes?: ThemeConfig[];
|
||||
/** Callback when saved themes change */
|
||||
|
|
@ -61,6 +63,7 @@
|
|||
activeTraits,
|
||||
theme = DEFAULT_THEME,
|
||||
onThemeChange,
|
||||
homeLabel = 'Hjem',
|
||||
savedThemes = [],
|
||||
onSavedThemesChange,
|
||||
}: Props = $props();
|
||||
|
|
@ -372,7 +375,7 @@
|
|||
title="Bytt kontekst"
|
||||
>
|
||||
<span class="context-selector-title">
|
||||
{isPersonalWorkspace ? 'Hjem' : (collectionNode?.title || 'Arbeidsflate')}
|
||||
{isPersonalWorkspace ? homeLabel : (collectionNode?.title || 'Arbeidsflate')}
|
||||
</span>
|
||||
<span class="context-selector-chevron" class:open={selectorOpen}>▾</span>
|
||||
</button>
|
||||
|
|
@ -397,7 +400,7 @@
|
|||
class:current={isPersonalWorkspace}
|
||||
onclick={() => { selectorOpen = false; goto('/'); }}
|
||||
>
|
||||
<span class="context-selector-item-title">Hjem</span>
|
||||
<span class="context-selector-item-title">{homeLabel}</span>
|
||||
{#if isPersonalWorkspace}
|
||||
<span class="context-selector-item-check">✓</span>
|
||||
{/if}
|
||||
|
|
|
|||
|
|
@ -369,6 +369,7 @@
|
|||
onThemeChange={handleThemeChange}
|
||||
{savedThemes}
|
||||
onSavedThemesChange={handleSavedThemesChange}
|
||||
homeLabel={isAdminHost ? 'Administrasjon' : 'Hjem'}
|
||||
/>
|
||||
|
||||
<!-- Main content -->
|
||||
|
|
@ -388,22 +389,44 @@
|
|||
{:else if layout.panels.length === 0}
|
||||
<div class="workspace-empty">
|
||||
<div class="workspace-empty-inner">
|
||||
<p class="workspace-empty-title">Din personlige arbeidsflate</p>
|
||||
<p class="workspace-empty-desc">
|
||||
Legg til verktøy-paneler for å bygge opp arbeidsflaten din.
|
||||
Arrangementet huskes mellom besøk.
|
||||
</p>
|
||||
<div class="workspace-empty-tools">
|
||||
{#each Object.entries(TRAIT_PANEL_INFO) as [key, info] (key)}
|
||||
<button
|
||||
class="workspace-empty-tool"
|
||||
onclick={() => handleAddPanel(key)}
|
||||
>
|
||||
<span class="workspace-empty-tool-icon">{info.icon}</span>
|
||||
<span class="workspace-empty-tool-label">{info.title}</span>
|
||||
</button>
|
||||
{/each}
|
||||
</div>
|
||||
{#if isAdminHost}
|
||||
<p class="workspace-empty-title">Administrasjon</p>
|
||||
<p class="workspace-empty-desc">
|
||||
Legg til admin-verktøy for å komme i gang.
|
||||
</p>
|
||||
<div class="workspace-empty-tools">
|
||||
{#each [
|
||||
['node_explorer', '🔍', 'Nodeutforsker'],
|
||||
['usage', '📊', 'Forbruk'],
|
||||
['ai', '🤖', 'AI-verktøy'],
|
||||
] as [key, icon, label] (key)}
|
||||
<button
|
||||
class="workspace-empty-tool"
|
||||
onclick={() => handleAddPanel(key)}
|
||||
>
|
||||
<span class="workspace-empty-tool-icon">{icon}</span>
|
||||
<span class="workspace-empty-tool-label">{label}</span>
|
||||
</button>
|
||||
{/each}
|
||||
</div>
|
||||
{:else}
|
||||
<p class="workspace-empty-title">Din personlige arbeidsflate</p>
|
||||
<p class="workspace-empty-desc">
|
||||
Legg til verktøy-paneler for å bygge opp arbeidsflaten din.
|
||||
Arrangementet huskes mellom besøk.
|
||||
</p>
|
||||
<div class="workspace-empty-tools">
|
||||
{#each Object.entries(TRAIT_PANEL_INFO) as [key, info] (key)}
|
||||
<button
|
||||
class="workspace-empty-tool"
|
||||
onclick={() => handleAddPanel(key)}
|
||||
>
|
||||
<span class="workspace-empty-tool-icon">{info.icon}</span>
|
||||
<span class="workspace-empty-tool-label">{info.title}</span>
|
||||
</button>
|
||||
{/each}
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
{:else if isMobile}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue