persistCurrentLetter перезаписывал файл без assemblyInfo —
прехедер, тема и статус терялись при первом же автосохранении.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Та же логика что в openLetter — при загрузке проекта письмо без
assemblyInfo теперь получает карточку из letter.title/date.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Для писем созданных до фикса (без assemblyInfo в файле) и не из плана —
карточка теперь показывается на основе данных самого письма.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- сбрасывать assemblyCardHidden при создании нового письма вручную
- заполнять dateStr из поля date для отображения в карточке
- показывать дату в заголовке acard рядом со статусом
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- New parser (contentPlanParser.js): splits text by "Письмо N.", extracts subject/preheader, recognizes text/products/buttons/banners/headings
- Supports all 3 project formats: AT, numizmatRU, KB (different ID formats, markers)
- New mapper (contentPlanMapper.js): converts parsed blocks to Pug block structures
- UI modal: paste text → preview parsed letters → create all at once
- Auto-matches subjects to plan rows for dates
- Product IDs auto-split into blocks of 1-3 based on available mixins