{ showTraitAdmin = !showTraitAdmin; }} {showTraitAdmin} onAddPanel={handleAddPanel} activeTraits={activeLayoutTraits} /> {#if showTraitAdmin && accessToken}
{ showTraitAdmin = false; }} />
{/if} {#if !connected}

Venter på tilkobling…

{:else if !collectionNode}

Samling ikke funnet

Samlingsnoden med ID {collectionId} finnes ikke eller er ikke tilgjengelig.

Tilbake til mottak
{:else if traitNames.length === 0}

Denne samlingen har ingen aktive traits.

Traits bestemmer hvilke verktøy og visninger som er tilgjengelige.

{#if accessToken && !showTraitAdmin} {/if}
{:else if isMobile}
{#each traitNames as trait, i (trait)} {/each}
{#each traitNames as trait, i (trait)} {#if activeTab === i}
{#if knownTraits.has(trait)} {#if trait === 'editor'} {:else if trait === 'chat'} {:else if trait === 'kanban'} {:else if trait === 'podcast'} {:else if trait === 'publishing'} {:else if trait === 'rss'} {:else if trait === 'calendar'} {:else if trait === 'recording'} {:else if trait === 'transcription'} {:else if trait === 'studio'} {:else if trait === 'mixer'} {/if} {:else} {/if}
{/if} {/each}
{:else}
{#snippet renderObject(obj)} {@const trait = obj.id} {@const info = getPanelInfo(trait)} {@const panel = layout.panels.find(p => p.trait === trait)} handlePanelResize(trait, w, h)} onClose={() => handlePanelClose(trait)} onMinimizeChange={(m) => handlePanelMinimize(trait, m)} > {#if knownTraits.has(trait)} {#if trait === 'editor'} {:else if trait === 'chat'} {:else if trait === 'kanban'} {:else if trait === 'podcast'} {:else if trait === 'publishing'} {:else if trait === 'rss'} {:else if trait === 'calendar'} {:else if trait === 'recording'} {:else if trait === 'transcription'} {:else if trait === 'studio'} {:else if trait === 'mixer'} {/if} {:else} {/if} {/snippet}
{/if} {#if connected && accessToken} {/if}