Композер: панель эмфазиса (B/I/code/strikethrough) с Cmd+B/I/Shift+X
Что изменилось
В композер ROX.ONE добавлена презентационная панель форматирования: жирный, курсив, код и зачёркнутый текст. Действия работают и по клику, и по горячим клавишам — без необходимости помнить Markdown-синтаксис.
- Тогглеры B/I/code/strikethrough: кнопки в правом нижнем углу композера, активное состояние подсвечивается рамкой.
- Горячие клавиши:
Cmd/Ctrl+B— bold,Cmd/Ctrl+I— italic,Cmd/Ctrl+`— inline code,Cmd/Ctrl+Shift+X— strikethrough. - Toggle-режим: если выделенный фрагмент уже отформатирован — повторное нажатие снимает форматирование, не оборачивая текст вторым слоем символов.
- Чистая функция
toggleEmphasis: покрыта unit-тестами на 100% веток — отдельно тестируется без React-рендера. - i18n: 2 ключа × 8 локалей; русские подписи кнопок и aria-labels синхронизированы.
Где попробовать
Откройте любой чат, выделите фрагмент текста и нажмите кнопку B в нижнем правом углу композера или используйте Cmd+B. Markdown-разметка применяется к выделенному диапазону, курсор сохраняет позицию.
Связано
PR #101 — pure helper + презентационный компонент. PR #115 — wire-up в FreeFormInput с горячими клавишами.