fix: hide system properties (trashed, archived, icon) from Properties panel

These properties have dedicated UI elsewhere (trash/archive banner, emoji picker)
and should not appear as generic editable properties.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Test
2026-03-19 03:28:29 +01:00
parent 975931ec6d
commit d4b0cd5cc2
2 changed files with 56 additions and 7 deletions

View File

@@ -11,7 +11,8 @@ import {
import { containsWikilinks } from '../components/DynamicPropertiesPanel'
// Keys to skip showing in Properties (handled by dedicated UI or internal)
const SKIP_KEYS = new Set(['aliases', 'workspace', 'title', 'type', 'is_a', 'Is A'])
// Compared case-insensitively via isVisibleProperty()
const SKIP_KEYS = new Set(['aliases', 'workspace', 'title', 'type', 'is_a', 'is a', 'trashed', 'trashed_at', 'archived', 'archived_at', 'icon'])
function coerceValue(raw: string): FrontmatterValue {
if (raw.toLowerCase() === 'true') return true
@@ -79,7 +80,7 @@ function collectAllVaultTags(entries: VaultEntry[] | undefined): Record<string,
}
function isVisibleProperty([key, value]: [string, FrontmatterValue]): boolean {
return !SKIP_KEYS.has(key) && !containsWikilinks(value)
return !SKIP_KEYS.has(key.toLowerCase()) && !containsWikilinks(value)
}
function parseAddedValue(rawValue: string, mode: PropertyDisplayMode): FrontmatterValue {