- 04 Sep, 2026 1 commit
-
-
Яков authored
-
- 01 Sep, 2026 1 commit
-
-
Яков authored
-
- 29 Aug, 2026 8 commits
- 28 Aug, 2026 17 commits
-
-
Яков authored
-
Яков authored
-
Яков authored
Слова «урок» в платформе нет — от него отказались в самом начале в пользу «модуля». Оно пришло из входящего ТЗ и из имени сущности Lesson, а в подписи для методиста попало по моей невнимательности: в переводах интерфейса «урок» встречается ровно три раза, и все три — про удаление. Заодно по существу: «Видео по ссылке» → «Встроить по ссылке». Через этот iframe вставляют не только ролики: документы Google и курсы SCORM ходят тем же путём, и подпись их скрывала. «Скачать урок в PDF — действие над готовым уроком, а не вставка» → «Скачать в PDF — сохранить готовый материал файлом». Объяснять, что скачивание это не вставка, взрослому человеку незачем. Co-Authored-By:Claude Opus 5 (1M context) <noreply@anthropic.com>
-
Яков authored
Полный набор на 390 px — это 25 кнопок по 44 px, пять рядов и 234 px: больше половины экрана до первой строки текста. Замер, не оценка. Частое остаётся на виду, редкое уходит в два списка с подписями словами — «Вставить» и «Ещё». Стало 98 px. Горизонтальной прокрутки нет намеренно: кнопка за правым краем на телефоне не находится вообще, методист не знает, что там что-то есть. Набор выбирается по ширине САМОЙ панели через ResizeObserver, а не по ширине окна: в админке панель 1080 при окне 1600, и по окну решение было бы неверным. Отдельно: умолчания больше не подсвечиваются активными. «Обычный текст» и «по левому краю» редактор честно считает применёнными, но применил их не автор. Пока подсветка была бледно-серой, это не мешало; теперь она ярко-синяя, и пустой урок встречал автора двумя горящими кнопками, которых он не нажимал. Два глифа («Вставить», «Ещё») дорисованы в языке набора: в поставке их нет, макет описывает эти списки словами. Co-Authored-By:Claude Opus 5 (1M context) <noreply@anthropic.com>
-
Яков authored
-
Яков authored
-
Яков authored
-
Яков authored
Каждая граница стоит 17 px — разделитель и поля по 8. Почти каждая кнопка была своей группой: 289 px уходило на волосяные линии, и панель на реальной ширине 1080 не укладывалась в один ряд. Двадцать две линии к тому же не показывают структуру, а превращаются в частокол. Подпись группы теперь решает по ширине самой панели (@container), а не окна: в админке панель 1080 при окне 1600, и правило по @media показало бы подпись там, где она не влезает. Co-Authored-By:Claude Opus 5 (1M context) <noreply@anthropic.com>
-
Яков authored
Ответ на макет: 56 иконок в одном визуальном языке (сетка 24×24, штрих 1.5), шесть состояний кнопки, ритм групп, поведение на телефоне. Главная правка не косметическая. Иконка перестала быть background-image с зашитым цветом и стала дочерним <svg> со stroke="currentColor". Без этого не собирались сами состояния: наведение приходилось изображать прозрачностью (иконка тускнела — читается как «кнопка выключилась»), а активное состояние с белой иконкой на синей подложке было невозможно в принципе. Заодно ушли ручные подпорки, которые были следствием разнокалиберных картинок: width 46px у блока кода, margin-top 4px у PPTX, второй вид разделителя. Все кнопки теперь 32×32 на десктопе и 44×44 на телефоне. Четыре кнопки, использованные на боевой базе ноль раз (аудио, картинка с подсказками, скрытый блок, кнопка-ссылка), собраны в подписанную группу «Оживить урок»: растворённые между «изображением» и «ссылкой», они не читались как отдельная возможность. Горизонтальной прокрутки на телефоне нет намеренно: скрытая справа кнопка не находится вообще — методист не знает, что там что-то есть. Co-Authored-By:Claude Opus 5 (1M context) <noreply@anthropic.com>
-
Яков authored
Точки жили в атрибуте data-points внутри разметки урока. Библиотечный модуль при установке в карту клонируется — точки уезжали копией, и правка схемы в библиотеке до карт больше не доходила. Молча, как это уже было бы с содержимым задания. Теперь у узла есть imageId: он ссылается на сущность платформы, а точки читаются и пишутся тремя колбэками (пакет о маршрутах не знает). Колбэков нет — узел работает по-старому, точки лежат в документе: накопленные уроки открываются без изменений и конвертировать их не будем. Ошибка записи точки не глотается: состояние возвращается назад и автор видит сообщение. Иначе точка осталась бы на экране, но не в базе. Co-Authored-By:Claude Opus 5 (1M context) <noreply@anthropic.com>
-
Яков authored
Своя таблица в пакете разошлась со словами платформы в первый же день: в окне выбора «Тестирование», в карточке того же задания — «Тест». Автор видит два разных названия одной вещи и решает, что это две разные вещи. Прежняя таблица остаётся запасной — на случай, если хост подписи не передал. Co-Authored-By:Claude Opus 5 (1M context) <noreply@anthropic.com>
-
Яков authored
Ссылка на существующее задание как блок документа. Узел хранит только положение задания в уроке и то, как его показать: вопросы, ответы и правила проверки остаются в конструкторе задания. Дублировать их в документ нельзя — правка вопроса не доехала бы до урока, а попытки сотрудников ссылались бы на две разные версии одного и того же. Два поля под идентификатор (activityScope + activityId) — потому что у упражнений в платформе два пространства идентификаторов: целое в библиотеке и строка «e-<uuid>» в карте. Урок карты — клон библиотечного, при установке упражнениям выдаются новые идентификаторы, и ссылка без указания пространства после установки указала бы в никуда. Тип задания хранится доменный (question, essay, videoTask), а не клиентский: иначе сверять его с самой сущностью не с чем. Пакет про маршруты и сущности платформы не знает: выбор задания и открытие его конструктора приходят колбэками onPickActivity / onOpenActivity. Co-Authored-By:Claude Opus 5 (1M context) <noreply@anthropic.com>
-
Яков authored
-
Яков authored
Новый необязательный проп onChangeDoc. Отдельным пропом, а не вторым аргументом onChange: редактор используется в 21 месте, и все ждут строку с HTML. Документ отдаётся и при onCreate, а не только по первой правке — иначе автор открыл урок, ничего не тронул, сохранил, и body_doc остался пуст. Co-Authored-By:Claude Opus 5 (1M context) <noreply@anthropic.com>
-
Яков authored
Пресеты (было два, и хост не передавал их ни разу): lesson — урок, полный набор без произвольного размера шрифта text — описания, инфо, глоссарий, база знаний comment — комментарий проверяющего answer — ответ учащегося, с audio Заголовки вынесены из выпадающего списка на верхний уровень: на боевой базе жирный абзац вместо заголовка встречается в 289 уроках, настоящий h2 — в 31. Нативный browser title заменён на подсказку с названием и пояснением «что я получу». Кнопки получили role/tabIndex/aria-label и видимый фокус. Палитра цветов сведена с 12 произвольных оттенков к 6 семантическим из темы платформы. Удалена кнопка pdfToText: её onClick дублировал кнопку pdf, в пресетах она не значилась и автору не показывалась. Новый проп labels — словарь подписей от хоста: своей локализации у пакета нет. Co-Authored-By:Claude Opus 5 (1M context) <noreply@anthropic.com>
-
Яков authored
-
Яков authored
-
- 17 Jun, 2026 5 commits
- 25 May, 2026 4 commits
- 22 May, 2026 4 commits