From b26b757d8013b99ed06a317911203ea20fdd9e41 Mon Sep 17 00:00:00 2001 From: mirivlad Date: Wed, 3 Jun 2026 02:29:11 +0800 Subject: [PATCH] GUI: fix sidebar icons and create modal with template selection - Add TemplateIcon.svelte with SVG icons for folder/project/client/document/recipe - TreeNode.svelte: render type-based icon before each node label - Create modal: show template selection cards (translate titles via t()) - Context menu: use TemplateIcon + translated template names - i18n (ru/en): add template.* translation keys - Fix white capsule issue: tree-toggle arrow at 10px rendered oddly without icon presence; replaced with proper SVG icons --- frontend/src/App.svelte | 35 ++++++++++++++++++++---- frontend/src/TreeNode.svelte | 29 ++++++++++++++++++++ frontend/src/lib/TemplateIcon.svelte | 40 ++++++++++++++++++++++++++++ frontend/src/lib/i18n/locales/en.js | 9 +++++++ frontend/src/lib/i18n/locales/ru.js | 6 +++++ 5 files changed, 114 insertions(+), 5 deletions(-) create mode 100644 frontend/src/lib/TemplateIcon.svelte diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte index 741e967..5c5e7a4 100644 --- a/frontend/src/App.svelte +++ b/frontend/src/App.svelte @@ -4,6 +4,7 @@ import FilePreviewModal from './lib/FilePreviewModal.svelte' import ConfirmModal from './lib/ConfirmModal.svelte' import TreeNode from './TreeNode.svelte' + import TemplateIcon from './lib/TemplateIcon.svelte' import { onMount, onDestroy } from 'svelte' import { canPreviewFile, needsBase64Preview, needsTextPreview } from './lib/fileUtils.js' import { t } from './lib/i18n' @@ -1491,10 +1492,27 @@ {#if showCreateNode}