Reference in New Issue
Block a user
Delete Branch "fix/page-template-demo-issues"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Исправления багов/дизайна фичи page templates / page embed, найденных при ручной проверке после мержа PR #17. Одна ветка от
develop, по коммиту на баг. Closes #38, #39, #40.Что сделано
#38 — маркер шаблона в дереве (
859223db)Страницы-шаблоны были неотличимы в сайдбаре. Добавлен значок
IconTemplateрядом с заголовком строки, когдаnode.isTemplate === true, вTooltip(label="Template")+aria-label/role="img". Значок — потомок строки-ссылки, поэтому клик навигирует как обычно;pointer-eventsоставлены включёнными (иначе тултип Mantine не срабатывает). Добавлен i18n-ключTemplate(en-US, ru-RU).#39 — чистка хрома узла page-embed (
c9eb4956)outlineот.ProseMirror-selectednodeнакладывался на скруглённую рамку.includeWrap. УзелpageEmbedдобавлен в уже существующее правилоoutline:none(рядом с transclusion-узлами) — остаётся одна скруглённая рамка.IconArrowsMaximize(читалась как «развернуть») заменена на нейтральнуюIconFileText.sourceHref(ссылка не исчезает при пустых title+icon); ссылке добавленыtitle/aria-label+ ключOpen source page(en-US, ru-RU).#40 — Refresh эмбеда реально перерисовывает контент (
b8655ae5)Корень: read-only под-рендер монтирует Tiptap
EditorProvider, а тот читаетcontentтолько при первом маунте — после Refresh свежий контент не доходил до под-редактора, эмбед «не обновлялся». Фикс:key={result.sourceUpdatedAt}наPageEmbedContent— при изменении исходной страницы (еёupdatedAtбампится при каждом сохранении) компонент перемонтируется и применяет свежий контент.Ограничение: серверная свежесть относительно живых collab-правок ограничена debounce-персистом 10с (
collaboration.gateway.ts) — это отдельная задача, остаётся задокументированной в #40, вне scope этого фикса.Как рассуждал
pages.contentсразу после сохранения (REST), значит «не обновляется даже после Refresh» — это клиент. Нашёл, чтоEditorProviderне реагирует на сменуcontent-пропа → ремаунт поsourceUpdatedAt.outline:noneдля transclusion-узлов; иконки Tabler из соседних файлов), чтобы изменения были минимальны и консистентны.Косяки, найденные на ревью (и исправленные)
pointerEvents:"none"полностью отключал Tooltip (Mantine вешает hover-хендлеры на сам SVG) → убрал; клики и так проваливаются на строку-ссылку. Отсутствовал i18n-ключTemplate→ добавил (en-US, ru-RU). Дублированиеaria-label+title+Tooltip→ оставилaria-label+role="img"+Tooltip, убрал нативныйtitle.sourceHref; добавил подпись ссылке + ключOpen source page.Проверка
pnpm --filter @docmost/editor-ext build && pnpm --filter ./apps/client exec tsc --noEmit— exit 0 после каждого фикса.🤖 Generated with Claude Code
Ghost referenced this pull request2026-06-21 02:05:03 +03:00
Ghost referenced this pull request2026-06-21 02:05:23 +03:00
Ghost referenced this pull request2026-06-21 02:05:25 +03:00
Ghost referenced this pull request2026-06-21 02:05:26 +03:00
Ghost referenced this pull request2026-06-21 02:05:28 +03:00
Ghost referenced this pull request2026-06-21 02:05:29 +03:00
Ghost referenced this pull request2026-06-21 02:05:31 +03:00
Ghost referenced this pull request2026-06-21 02:05:32 +03:00
Ghost referenced this pull request2026-06-21 02:05:33 +03:00
Ghost referenced this pull request2026-06-21 02:05:35 +03:00