Поднимите панель инструментов аннотации z-index до 1000, чтобы она всегда отображала элементы над страницей
Исправьте водяной знак выше уровня z-index, добавьте меню правого клика страницы, добавьте страницу выше / ниже, улучшите индикатор сопротивления
- ModifierLayer: теперь используется zIndex 20, поэтому водяные знаки отображаются поверх полей и аннотаций - PdfCanvas: контекстное меню правого клика с поворо...
Место выпало поле в точном визуальном положении призрака
Вместо этого используйте active.rect.current.translated (клиент DragOverlay) соответствует переведенной прямой, поэтому поле теперь приземляется именно там, где...
Remap field signerUids, когда backend возвращает новые UID после сохранения
Размещение полей Drag-and-drop, плавающая панель инструментов аннотации и интервал между страницами PDF
- Заменить click-to-place на @dnd-kit drag-and-drop для всей подписи, личности, и инструментами поля ввода; перетаскивание призрака соответствует точному визуал...
Маршрутизация всех вызовов API esig через forwardToApi() для исправления сбоев сохранения
Все 10 обработчиков маршрута Esig указывали на ESIG SERVICE URL, который разрешает к несуществующему доверенному лицу камовсига. Заменить каждого куратора forwa...
Добавить опцию положения слоя в модификатор Watermark (за / над контентом)
WatermarkModifier получает «слойное» поле: «за» | «выше» (по умолчанию — «за»). - ModifierLayer теперь принимает "пропускной" реквизит (ниже "выше"): - ниже про...
Добавить модификатор Watermark в набор инструментов
- Тип WatermarkModifier: logoType (полный/простой), startPage, endPage, ротация (-180-180), размер (10-90% ширины страницы), непрозрачность (2-60%), solidColor ...
Только покажите намёк на токен формата номера страницы при выборе Custom
Расширить модификатор этикетки до полной 8-позиционной сетки с вращением LM/RM
- LabelModifier.position теперь использует ModifierPosition8 (та же 8-позиционная сетка, что и номера страниц) - LM (Middle Left): каждая строка отображается ка...
Добавьте вкладки Tools/Modifiers для подписи Toolbox с наложениями живого холста
- Сплит Toolbox левая боковая панель в Tools и Modifiers вкладки - Вкладка Модификаторов: раздельный список + панель настроек (вариант B) - Модификатор номеров ...
Корректировка поворотного положения миниатюры и восстановление преобразования вращения
Два бага в ThumbnailCanvas: 1. Заменить "высота: \"${displayAspect * 100}%\" (процентная высота на абс- позиционируемый элемент — ненадежный, когда высота блок...
Fix floating zoom control visibility and polish thumbnail placeholders
- Move floating zoom controls outside the scroll container and use position:absolute so they remain visible at all times regardless of scroll position; offs...
Page selection with animated glow border synced between canvas and thumbnail sidebar
- DesignTab holds selectedPageIndex as the single source of truth - Clicking any page in the main canvas selects it (onPageSelect) - Clicking a thumbnail select...
Move scroll ownership from PdfCanvas to canvasContainerRef
PdfCanvas root Box previously had overflow-auto + h-full, making it its own scroll container. This meant: - scrollbarGutter: stable on canvasContainerRef had no...
Fit to Width calculates actual container width instead of resetting to zoom 1
Reads **************** (which accounts for the stable scrollbar gutter) and the page's natural width via **************** then computes fitZoom = (availableWidt...
Replace all hardcoded purple with var(--color-primary) on Settings & Signers page
Signers icon, icon background, count badge, Add Signer buttons, Add First Signer button, empty-state illustration tint, add-another hover, and the ALL_OF_TYPE s...
Auto-select first signer, fix zoom control scrollbar gap, animate properties panel
- Toolbox auto-selects the first signer's UID when signers go from 0→1 - Canvas container uses scrollbar-gutter: stable so the sticky zoom/undo control mainta...
Reorder tabs, gate field tools by signer, redesign Settings & Signers tab
- Design is now the first tab; Settings & Signers is second - Toolbox shows "Add Signer" CTA (navigates to Settings) when no signers exist - Signature Tools, Id...
Render field controls as actual-looking form elements with signer color tinting
Each field type now renders a visual representation of the real control (text input, checkbox, toggle, dropdown, radio group, date picker, etc.) tinted with the...
Remove fixed height and scroll bars from field properties panel
The panel had two vertical scrollbars: 1. DesignTab wrapper had height: 200 + overflowY: auto 2. FieldPropertiesPanel root had height: 200 + overflow: hidden, ...
Откажитесь от установкиTotalPages до тех пор, пока PDF не затухнет, чтобы предотвратить насыщение рабочего PDF.js
На 50-страничном PDF вызов setTotalPages перед установкой петли размерности getPage() Все 50 компонентов ThumbnailCanvas немедленно. Каждый возвращается в PDF.j...
Переместите все маршруты API визуализации из SecurityService в ConversionService/DocsService
Маршруты загрузки теперь вызывают ConversionService напрямую через CONVERSION SERVICE URL: - POST /api/imaging/upload → /api/conversion/imaging/upload - POST/ap...
Добавить шаг Thumbnails для загрузки индикатора прогресса, трек генерации thumbnails этап WS
Предотвратите укладку страниц, исправьте миниатюры, добавьте миниатюры на стороне сервера с резервным копированием PDF.js
Добавить flexShrink: 0 на страницы divs в PdfCanvas, чтобы страницы не сжимались в гибких столбцах Добавить flexShrink: 0 к миниатюрам в PageThumbnailSidebar по...
Стремительный PDF-рендеринг, нормализация естественного масштаба, отсутствие горизонтальной прокрутки
- PdfCanvas: замените IntersectionObserver на полные рендеринга страницы. Подход, основанный на наблюдении, был ненадежным при запуске вкладки дизайна. с диспле...
Устранение конфликта Child DOM в рендеринге миниатюр PDF
Заменить container.innerHTML + appendChild pattern в ThumbnailCanvas React-managed <canvas> ref. Старый подход очистил React Узлы DOM напрямую, в результате чег...
Вернуть прокси-маршруты в OTK auth, удалить неиспользуемый помощник esigProxy
OTK — это правильный механизм аута — подход предыдущего заголовка сессии. Обойдя установленный шаблон безопасности. Все прокси-маршруты esig используются Снова ...
Используйте заголовки сеансов вместо OTK для прокси-маршрутов ESigService
Читайте *** сессию от Redis в Next.js и передайте orgId/memberId как надежный Заголовки в ESigService через внутренние K8s DNS. Устранение зависимости OTK.
Используйте конечную точку init для поиска или создания шаблона imgId на загрузке редактора
Страница создания проходит imgId в URL. Страница редактирования теперь называется конечная точка init, чтобы найти или создать шаблон ESign, затем использует Ве...
Добавьте редактор шаблонов электронной подписи с холстом дизайна, подписчиками и версиями
Полное переписывание страницы /doc/sign/edit с помощью интерфейса с вкладками (Настройки и подписчики, Дизайн), PDF.js холст с перетаскивающимся наложением поля...
Правильное отображение имени поля между backend и frontend для API уровня доступа
Map backend securityLevelId→accessLevel, isOrganizationOwner→isOwner, memberType→isTeamMember в API маршруте. Исправьте правильную проверку на использование EDI...
Удалите обходные пути анализа JSON для массивов ID плана подписки
Backend теперь возвращает правильные массивы вместо строк JSON. логика резервного копирования try/parse/catch больше не требуется в надстройке, пакете, и промоу...
Добавление редактора уровня доступа к настройкам членов с заменой метки для конкретной организации
Переименовать CLIENT→MEMBER и INTERNAL→TEAM MEMBER в ImageAccessLevelType.ts с {var}-заполнителями. Добавьте раздел уровня доступа к RolesPermissionsTab с элеме...
Показать конкретное сообщение об ошибке на странице редактирования вместо общего отказа
Используйте кнопку React JSX в AG Grid CellRenderer вместо исходного элемента DOM
Добавить вход в список шаблонов API-маршрут для диагностики пустой датагрид
Установите proxyClientMaxBodySize до 500 Мб для загрузки больших файлов в Next.js 16.2
Next.js 16.2.3, TypeScript 6.0, Node 24, React 19.2
Next.js 16.0.10 → 16.2.3, TypeScript 5.8 → 6.0.2, Node 20 → 24, React 19.2.3 → 19.2.5 - Переместить ESLint из .eslintrc.json в плоский конфигуратор (eslint.conf...
Редизайн страницы поддержки и мастер вебинара, чтобы соответствовать макету страницы учетной записи
Обе страницы теперь используют один и тот же градиентный заголовок героя со встроенной вкладкой Навигация, соответствующая шаблону страницы /account. Расписание...
Правильная пересылка многочастных FormData и установленный предел размера тела обработчика маршрута
- Возврат к разбору FormData и восстановлению для пересылки (исправления) MalformedStreamException from raw arrayBuffer forwarding (недоступная ссылка) - Добави...
Добавить выпадение поддержки с разделами, извлечь расписание вебинара на выделенную страницу
Кнопка поддержки nav теперь имеет выпадающую стрелку и Popover с двумя разделами: «Онлайн-поддержка» (Контактная поддержка, просмотр активных билетов) и «Обучен...
Поток загружает тело напрямую, чтобы избежать ограничения размера тела Next.js 10 МБ
- читать запрос как массив Буфер и пересылать необработанные байты с типом контента Заголовок вместо разбора FormData (который запускает Next.js body limit) Доб...
Переименовать вкладки электронной подписи и переупорядочить на доступные шаблоны, черновики, архивные
Конверсия в реальном времени через WebSocket с двойным процентом
- Добавьте крюк ConversionWebSocket, поддерживающий темы как для членов, так и для шаблонов Создайте страницу, подключающую WebSocket перед загрузкой, показывае...
Позвоните в службу безопасности напрямую через RKE2 DNS, исправьте хэш-вычисления, добавьте поэтапный прогресс загрузки
Все маршруты API теперь вызывают SecurityService напрямую через внутренний интерфейс. K8s DNS вместо прокси-сервера Используйте вместо этого computeBlake3/compu...
Использование асинхронных параметров в динамических маршрутах API для совместимости Next.js 16
Как вы видите судоходство?
Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.