@feugene/granularity-tokens

  • Без компонентов
  • релизов: 13
  • v2.5.0

Релизы @feugene/granularity-tokens из его CHANGELOG: последние 8 целиком, более ранние — списком версий.

тег ядра v3.7.2

На этой странице

Записи релизов — авторский текст библиотеки, и он английский. Портал его не переводит: журнал изменений — история чужого репозитория, а переписанная история перестаёт быть историей.

v2.5.02026-10-28

Added

  • Темы каталога несут значения @feugene/granularity-chrono 4: подсветку, полосу периода, «сегодня», заголовок и предпросмотр периода GrCalendar, подсветку значения GrTimePicker. «Сланец» 1.5.0 и «Чертёж» 1.4.0 — прежний вид календаря, «Тактильная» 1.4.0 наследует его у «Сланца»; «Глина» 2.1.0 — по своему языку: «сегодня» числом глиной и полужирным без обводки, наведение — полупрозрачным графитом, как пункты списков ядра, полоса периода — 6 % чернил, день под курсором при выборе периода — обводка без заливки. targets всех четырёх — с chrono ^4.0.0.
  • Темы каталога несут значения @feugene/granularity-editor 4: начертание и кегль крупных заголовков, вид цитаты GrMarkdown и GrRichText, подложку панели GrRichText. «Сланец», «Тактильная» и «Чертёж» — прежний вид; «Глина» — заголовки и цитата антиквой (--gr-font-display), цитата цветом второго текста с плотной линией, панель редактора — на бумаге. targets — с editor ^4.0.0.
  • Темы каталога несут значения @feugene/granularity-code 4: палитру подсветки, скругление листа, подложки диффа, выделение и активную строку редактора. «Сланец», «Тактильная» и «Чертёж» — прежний вид; «Глина» — тёплая палитра (ключевые слова глиной, типы охрой, литерал и функция своими цветами по режимам), дифф тоном на листе кода, выделение сплошным тоном вместо синего. targets — с code ^4.0.0.
  • Темы каталога несут значения @feugene/granularity-dashboard 3: место и призрак переноса, ручки, рамку правки, подсветку каталога. «Сланец», «Тактильная» и «Чертёж» — прежний вид; «Глина» — раскладка графитом, виджет рамкой без тени и каталог списком (componentDefaults GrDashboardItem.variant, GrDashboardPalette.appearance). targets — с dashboard ^3.0.0.
  • Темы каталога несут новые значения @feugene/granularity-media 4: панель и дорожку плеера, прицел сканера, направляющую и отступ рамки кадра. «Сланец», «Тактильная» и «Чертёж» — прежний вид; «Глина» — медиа на тёмной плёнке: слоновая кость, тёплый графит, уголки прицела вместо рамки, рамка кадра с отступом от края окна, синий — только фокус. targets — с media ^4.0.0.
  • Темы каталога несут новые значения @feugene/granularity-charts 4: подсказку, курсор, кисть, опорную линию, значение и цель bullet, итог моста, линию спарклайна. «Сланец», «Тактильная» и «Чертёж» — прежний вид; «Глина» — графитовый пузырь подсказки без тени, графит вокруг данных, вдвое тише заливка площади и приглушение (0.35), кисть графитом, а не глиной. targets — с charts ^4.0.0.
  • Темы каталога несут значения заголовка GrFormSection ядра 3.7 и формы @feugene/granularity-forms-schema 3: кегль, интерлиньяж и начертание заголовка раздела, промежуток и линии между разделами, вид строки повторителя. «Сланец», «Тактильная» и «Чертёж» — прежний вид; «Глина» — заголовок раздела антиквой 20px, разделы и строки повторителя отбиты линиями. targets — с ядром ^3.7.0 и forms-schema ^3.0.0.

v2.4.02026-10-28

Changed

  • Триггер GrColorPicker под указателем — как поле во всех темах каталога. --gr-color-picker-trigger-hover-brd у «Сланца» 1.4.0 и «Чертежа» 1.3.0 — --gr-input-hover вместо --gr-primary, как уже было у «Глины»; «Тактильная» 1.3.0 наследует это у «Сланца».

v2.3.12026-10-27

Fixed

  • «Глина» 2.0.1: заливка slate под указателем и в нажатии работает и без color-mix. В тёмном режиме --gr-slate-solid-hover и -active были формулой color-mix — роль, а не производное, и фолбэка @supports сборка темы для неё не считает: в браузере без color-mix роль была недействительной, а экспорт токенов в форматы дизайн-инструментов получал ссылку CSS вместо цвета. Теперь — литералы того же цвета (#575653, #53524e). Гейт roleFormulaFallback не даёт роли быть формулой без фолбэка ни в одной теме каталога.

v2.3.02026-10-26

Минор: «Глина» целиком из темы. Новые роли и основа разводят то, что у одной темы совпадает, а у другой — нет; у «Сланца», «Тактильной» и «Чертежа» они ссылаются на прежние роли, и их вид не меняется. Своя тема, которая не наследует тему каталога, обязана задать новые роли и значения новых токенов компонентов ядра 3.2 — doctor назовёт недостающие.

Added

  • Роли --gr-selected, --gr-selected-fg, --gr-selected-hover (выбранное), --gr-input-hover, --gr-input-focus-brd и --gr-control-brd-hover (отклик рамки), --gr-input-readonly-bg и --gr-input-readonly-brd (поле только для чтения), --gr-brd-strong (граница плотнее разделителя); основа --gr-font-display (шрифт заголовков компонентов), --gr-radius-overlay (скругление всплывающей панели), --gr-radius-control-{xs,sm,md,lg} (скругление поля по ступеням) и --gr-input-focus-ring-width (толщина кольца фокуса поля). Тема без своего решения ставит ссылку на прежнюю роль — var(--gr-primary), var(--gr-input), var(--gr-brd), var(--gr-font-ui), var(--gr-radius-xl). --gr-input описан как рамка поля ввода.
  • Значения новых токенов компонентов ядра во всех темах каталога. «Сланец» 1.3.0, «Тактильная» и «Чертёж» 1.2.0 — вид прежний.

Changed

  • «Глина» 2.0.0 — по макету «Глина · компоненты». Палитра: бумага #faf9f5, белый лист карточки и всплывающих панелей, графит #141413, глина #d97757; рамки — графит 15 %, граница переключаемого контрола — 55 %, кольцо фокуса — синее #2a78d6; мягкие подложки тонов — 13 % тона на бумаге (18 % в тёмном режиме). azure ушёл к бирюзе (#5b9fb6), чтобы не сливаться с info. --gr-radius-control — 8px. Кнопка: радиус по ступеням 6/8/8/10, без тени поверхности, мягкий вес — 13/19/25 % тона на бумаге. Пропсы по умолчанию: вкладки линией, метки semi, разделитель пути «/», ступень sm у пагинации и шагов, аватар без автоцвета, колонка подписи списка свойств 160px, прогресс без рамки.
  • «Глина» — то, что раньше было зашито в ядре. Выбранное графитом с бумажным знаком, радио — сплошным кружком; рамка поля — графит 55 %, под указателем 75 %; плотная граница — 30 %. Заголовки карточки, окна, шторки и пустого состояния — антиква 20–22px, вес 500; подсказка — графитовый пузырь; пункты меню и опции — нейтральная подложка; сообщение без рамки, заголовок чернилами; шапка таблицы на листе; выбранный пункт боковой панели и заголовки групп без капса; заглушка — бегущим бликом; окно и шторка — тенью --gr-shadow-3, шторка скруглена по внутреннему краю. Кнопка: рамка контурной не меняется под указателем, у мягкого веса тонов рамки нет, нажатие без сжатия; у всего недоступного рамка в цвет заливки (--gr-disabled-brd). Зона загрузки — на бумаге пунктиром рамки поля, значок кругом; лента событий, аватар, пагинация, OTP — по макету; пустая звезда рейтинга — контуром. Поля: скругление 6/8/8/10 по ступеням, в фокусе — синяя рамка, только для чтения — без подложки с тонкой рамкой, кольцо фокуса — 1px. Строки выбранных файлов — плашки листа; тосты — в правом нижнем углу. Переключатель компактный — 24×14 … 36×20, с подписью состояния — 44 и 52px; под шапкой таблицы — линия 30 %, рамка первой строки под ней погашена. Пропсы: подсказка поля под полем, отмена в окнах — ghost, звёзды рейтинга — графит.

v2.2.02026-10-22

Added

  • Значения графиков и медиа в темах каталога. Раздел components/@feugene/granularity-charts/ — 20 токенов вида theme (толщины линий и прозрачности), components/@feugene/granularity-media/ — маска кадра GrImageCrop. Значения — прежние литералы компонентов: вид не меняется.
  • Темы: «Сланец» и «Глина» 1.2.0, «Тактильная» и «Чертёж» 1.1.0; targets называют @feugene/granularity-charts и @feugene/granularity-media ^3.0.0.

v2.1.02026-10-21

Темы каталога написаны под ядро 3.1: targets — { "@feugene/granularity": "^3.1.0" }.

Added

  • Тема «Тактильная» (tactile) — наследник slate: кнопка-предмет со светом сверху, тенью цвета тона, подъёмом под указателем и пружиной в отклике; прозрачные веса откликаются подложкой, недоступная кнопка — штриховкой и пунктиром.
  • Тема «Чертёж» (blueprint) — копия slate: плоская кнопка без теней, линия хода по нижней кромке, угол 3px, подпись 600, ячейка иконки и загрузка бегущим отрезком (пропсы по умолчанию темы).

Changed

  • «Сланец» и «Глина» 1.1.0 — значения новых токенов GrButton, повторяющие прежний вид.
  • theme:copy копирует тему каталога без extends из исходника themes/<id> пакета: собранный манифест нужен только источнику с extends.

v2.0.02026-10-21

Мажор: тема — полный набор значений, включая значения компонентов. Переезд — docs/migration-3.md ядра.

Added

  • Значения компонентов в теме — раздел components/<пакет>/<Компонент>/ исходника темы (root.json, modes/<режим>.json): «Сланец» и «Глина» несут значения токенов вида theme компонентов ядра. defineTheme сливает раздел наследника с родительским по токену.
  • Версия и целевые пакеты темы: version и targets в theme.json и в grThemeCatalog; у тем каталога — 1.0.0 и { "@feugene/granularity": "^3.0.0" }. themes/<id>/theme.lock.json — версия и отпечаток итоговых данных: правка значений без подъёма version роняет generate.
  • Копия темы — theme:copy в монорепо, бинарь gr-theme-copy у пакета: обёртка над copyTheme granum, снимающая посчитанные фолбэки — их пересчитывает сборка темы.

Changed

  • Исходник темы — раскладка granum, читает её загрузчик granum. theme.json объявляет режимы объектом, пропсы по умолчанию — в extensions.granularity.componentDefaults, файл режима — плоские значения, его extends — в theme.json. Посторонний файл — ошибка; фолбэки в исходнике — ошибка. @feugene/granum — необязательная peer-зависимость theme/node.
  • «Глина» — копия «Сланца», а не наследник: все значения свои, правки «Сланца» в неё не приходят. Значения по парам — прежние.
  • У каталога нет темы по умолчанию: defaultTheme у провайдера убран, сборка без themes — ошибка granum со списком тем. GR_DEFAULT_THEME_ID → GR_BASE_THEME_ID — базовая тема пакета.

Fixed

  • Формулы производных — под :where(:root), [data-theme]. В CSS без слоёв (dist/themes/<id>.css ядра) голый :root перебивал специфичностью значение, которым тема переопределяет формулу в своём режиме по умолчанию: у «Глины» на странице без атрибута наведение кнопок брало формулу реестра вместо своей.

v1.4.02026-10-21

Added

  • loadThemeData(id) — полные данные темы каталога по требованию, для страниц, которые показывают значения включённой сейчас темы. У каждой темы свой чанк, загружается только запрошенная; тема не из каталога — отказ со списком тем. Данные те же, что у themes/<id>/theme.json: генератор пишет их модулями src/theme-data/<id>.generated.ts, гейт --check держит их в синхроне с темами.

Более ранние версии

Тела этих релизов не показываются: лента целиком весит больше, чем страница имеет право весить. Файл в репозитории всегда полон.

  • v1.3.02026-10-21
  • v1.2.02026-10-20
  • v1.1.12026-10-20
  • v1.1.02026-10-20
  • v1.0.02026-10-19

CHANGELOG пакета целиком