Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
85 commits
Select commit Hold shift + click to select a range
4ca25b6
fileupload: стилизация, сторисы, обёртки
Apr 22, 2026
7a40401
фикс вызова аплоадера; стилизация интерфейса после загрузки файла
Apr 22, 2026
a4c934a
messageCss восстановлен в map-tokens.ts
Apr 23, 2026
7c9f246
Merge pull request #79 from cdek-it/overlay.dialog
AxyIX May 30, 2026
dbd76b0
Merge feature/styles-debug into file.upload, resolve conflicts
Jun 1, 2026
01dd0d0
исправлен импорт ExtraButtonComponent в fileupload
Jun 1, 2026
f4da1ae
отключён hover у dropzone в состоянии disabled
Jun 1, 2026
acb5a63
добавлена поддержка drag and drop на кастомный dropzone
Jun 1, 2026
4458850
реализован ControlValueAccessor, добавлена стори с реактивной формой
Jun 1, 2026
bf84438
кнопки удаления файлов и управления отправкой
Jun 1, 2026
1fa6c4e
удалён отладочный вывод статуса формы
Jun 2, 2026
1a94e87
@khaliulin валидация accept по MIME-типу, фильтрация файлов при drop
Jun 5, 2026
d676b2b
Merge branch 'feature/styles-debug' into file.upload
khaliulin Jun 9, 2026
4221b2b
figma-to-code
Jun 16, 2026
2b19ea0
файл с пребилдом
Jun 18, 2026
5e1bea9
Merge pull request #85 from cdek-it/feature/styles-debug
AxyIX Jun 18, 2026
0e3fbd1
fix
AxyIX Jun 18, 2026
274a9e2
Merge pull request #86 from cdek-it/fix-publish
AxyIX Jun 18, 2026
2aed3ec
починить сборку storybook: index.ts для lib/shared и baseUrl в tsconfig
Jun 18, 2026
0e94b80
добавить валидатор эквивалентности токенов (equiv/dangling/R11, с учё…
Jun 18, 2026
f8eb368
генератор боевых токенов: новая модель + backward-compat (equiv 1:1, …
Jun 18, 2026
1e1ffd3
перевести боевые токены на новую модель (фаза 1, с backward-compat); …
Jun 18, 2026
bec4731
перевести цветовые dt-ссылки CSS на новые роли (8 имён; overlay.modal…
Jun 18, 2026
24212dc
перевести размерные dt-ссылки CSS на dimension-токены (11 имён; sizin…
Jun 18, 2026
ea1365d
снять superset размеров: единая size-лестница, удалить дубль-шкалы pr…
Jun 18, 2026
c3f67bb
fix
AxyIX Jun 18, 2026
5fe1166
удалить мёртвые dimension-бакеты (list/content/navigation/overlay/fee…
Jun 18, 2026
a3001b8
фиксы ревью: confirmpopup padding (4 значения), accordion borderWidth…
Jun 18, 2026
9c529cb
лин-консолидация semantic: статус свёрнут до structured subtle/bold/t…
Jun 18, 2026
e143449
B: все CSS-стили компонентов переведены на компонентный уровень (187 …
Jun 18, 2026
67647ce
A: tokens.json переведён на чистую prebuild-модель без Aura-superset …
Jun 18, 2026
48cb47d
semantic.typography только роли: атомарные шкалы убраны, 190 ссылок п…
Jun 18, 2026
ca15f0c
нейминг обёрток выровнен по Figma
Jun 18, 2026
601ff9a
синхронизация package-lock с @primeuix/themes
Jun 19, 2026
f60ad95
обновление базы токенов для семантики
Jun 22, 2026
69cb6f5
chore: ignore .worktrees/
Jun 22, 2026
42fed01
docs(figma-cc): add spec and implementation plan
Jun 22, 2026
38cf258
feat(figma-cc): add validator and fixtures
Jun 22, 2026
ba3a2f6
feat(figma-cc): add schema and README
Jun 22, 2026
7b4e24c
feat(figma-cc): add conventions
Jun 22, 2026
f32a3f3
feat(figma-cc): add tokens, icons, missing globals
Jun 22, 2026
9f7f4f6
fix(figma-cc): tokens.md heading syntax for valid anchors
Jun 22, 2026
4e482b3
feat(figma-cc): add button.figma.md pilot
Jun 22, 2026
db5075c
fix(figma-cc): align code-fence rule with CommonMark — language on op…
Jun 22, 2026
8418b48
feat(figma-cc): add inputtext.figma.md pilot
Jun 22, 2026
5b08c68
docs(figma-cc): clarify fileKey is per-component (linked libraries)
Jun 22, 2026
59ad77a
feat(figma-cc): add dialog.figma.md pilot
Jun 22, 2026
34eb593
fix(figma-cc): drop inline icon from dialog Large variant
Jun 22, 2026
be3cfbe
fix(figma-cc): correct README directory map
Jun 22, 2026
fadd04d
fix(figma-cc): add orphan-code to status enum + validator check
Jun 22, 2026
269893a
fix(figma-cc): enforce bare closing fence in validator
Jun 22, 2026
5ab9b1e
feat(figma-cc): cross-link warnings + nodeId uniqueness in validator
Jun 22, 2026
f7b63be
feat(figma-cc): add 6 component contracts (checkbox, radiobutton, tag…
Jun 22, 2026
d7689da
feat(figma-cc): add 7 contracts wave1 (avatar, badge, chip, divider, …
Jun 23, 2026
ef17a78
feat(figma-cc): add 7 contracts wave2 (textarea, inputnumber, inputma…
Jun 23, 2026
a468da4
feat(figma-cc): add 7 contracts wave3 (select, select-button, slider,…
Jun 23, 2026
4ff7b01
feat(figma-cc): add 7 contracts wave4 (menu, menubar, megamenu, tiere…
Jun 23, 2026
5da4328
feat(figma-cc): add 7 contracts wave5 (accordion, drawer, popover, to…
Jun 23, 2026
505ee2f
feat(figma-cc): add 6 contracts wave6 (autocomplete, date-picker, lis…
Jun 23, 2026
d29d001
refactor(figma-cc): normalize fileKey to Khh7arsuXss3ncqy1Dz3OZ acros…
Jun 23, 2026
a668e0a
fix(figma-cc): correct figma.name to live node (date-picker DatePicke…
Jun 23, 2026
ad8dd20
fix(figma-cc): rebind 4 contracts to live non-deprecated nodes (megam…
Jun 23, 2026
9c448be
fix(figma-cc): rebind menubar to live non-deprecated node 16194:4260
Jun 23, 2026
185e593
fix(figma-cc): correct panelmenu nodeId to valid live node 16194:4870
Jun 23, 2026
3c70644
fix(figma-cc): rebind toast to live <Toast> node 15953:4478 (orphan-c…
Jun 23, 2026
5349a76
fix(figma-cc): real toast componentKey + drop dangling form-field link
Jun 23, 2026
dad5c43
chore(figma-cc): remove internal spec and plan from PR
Jun 23, 2026
e6f6bfb
+add tailwind configs build & publishing
evvis Jun 24, 2026
f7f41e0
OnPush-стратегия и markForCheck вместо detectChanges в fileupload
Jun 24, 2026
884a155
Типизация событий fileupload через типы PrimeNG вместо any
Jun 24, 2026
e3d8720
Регистрация CSS компонента fileupload в map-tokens
Jun 24, 2026
5246885
Merge pull request #71 from cdek-it/file.upload
persi14 Jun 24, 2026
f1284d3
~fix
evvis Jun 25, 2026
5aebc55
~update
evvis Jun 25, 2026
aa99fb2
Merge pull request #89 from cdek-it/feature/tailwind
AxyIX Jun 25, 2026
ade7de3
Merge pull request #83 from cdek-it/api-refactor
AxyIX Jun 26, 2026
b44323c
Merge pull request #84 from cdek-it/tokens-update
AxyIX Jun 26, 2026
e366690
public package preparation
AxyIX Jun 26, 2026
daa8ec5
Merge branch 'refs/heads/main' into feature/styles-debug
AxyIX Jun 26, 2026
a199484
public package preparation
AxyIX Jun 26, 2026
b810f86
public package preparation
AxyIX Jun 26, 2026
07d1289
Merge pull request #91 from cdek-it/feature/styles-debug
AxyIX Jun 26, 2026
cc175af
public package preparation
AxyIX Jun 26, 2026
a6b9f40
public package preparation
AxyIX Jun 30, 2026
76de6c9
Merge remote-tracking branch 'origin/main' into feat/figma-code-conne…
AxyIX Jun 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 3 additions & 5 deletions .github/workflows/npm-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,11 @@ jobs:
with:
version: ${{github.ref_name}}
- name: Sync src/lib/package.json version with root package.json
# Only sync the file in the working tree — the build/publish read it from here.
# Do NOT commit/push back: `main` is a protected branch and rejects direct pushes
# (GH013: Changes must be made through a pull request).
run: |
node -e "const fs=require('fs'); const path='src/lib/package.json'; const root=JSON.parse(fs.readFileSync('package.json')); const lib=JSON.parse(fs.readFileSync(path)); if(lib.version!==root.version){ lib.version=root.version; fs.writeFileSync(path, JSON.stringify(lib,null,2)+'\n'); }"
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add src/lib/package.json
# commit only if there are staged changes
git diff --cached --quiet || (git commit -m "chore(release): sync src/lib package version to ${{github.ref_name}}" && git push origin HEAD:refs/heads/${{ github.event.release.target_commitish }})
- run: npm run build:lib
- name: Prepare dist/package.json
run: |
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -59,3 +59,5 @@ src/assets/components/themes
.playwright-mcp/*

.claude/*
.qwen
.worktrees/
2 changes: 1 addition & 1 deletion .storybook/preview.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import docJson from '../documentation.json';
import { providePrimeNG } from 'primeng/config';
import { provideAnimationsAsync } from '@angular/platform-browser/animations/async';
import { GalleriaItemSlot } from 'primeng/galleria';
import { RU_TRANSLATION } from '../src/prime-preset/locale/ru';
// Fix PrimeNG bug: GalleriaItemSlot's main item slot has no `type` attribute,
// so the `item` setter's forEach loop never matches and context stays stale on updates.
(function patchGalleriaItemSlot() {
Expand All @@ -27,6 +26,7 @@ import { RU_TRANSLATION } from '../src/prime-preset/locale/ru';
import Preset from '../src/lib/providers/prime-preset/theme.preset';

import '!style-loader!css-loader!postcss-loader!sass-loader!../src/styles.scss';
import { RU_TRANSLATION } from '../src/lib/providers/prime-preset/locale/ru';

setCompodocJson(docJson);

Expand Down
57 changes: 57 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,63 @@ import { ExtraButtonComponent, ExtraTagComponent } from '@cdek-it/angular-ui-kit
export class AppExample {}
```

## Tailwind v4: вся дизайн-система из кита

Кит публикует готовую **Tailwind v4 CSS-first тему** (`@theme`), **полностью сгенерированную из
своих дизайн-токенов** (`tokens.json` — тот же источник, что и тема PrimeNG). Это единая точка
истины: поменяли токен в ките → consumer'у достаточно bump'нуть версию, чтобы получить обновление,
согласованное с компонентами `extra-*`. Никаких JS-пресетов/`@config`/v3 — только v4 CSS-first.

Генерация: `npm run generate:tailwind` (входит в `build:lib`). Артефакт: `tailwind/theme.css`.

### Подключение (одна строка)

В `styles.scss` проекта:

```scss
@use "tailwindcss";
@use "@cdek-it/angular-ui-kit/tailwind";
```

### Что отдаёт кит (утилиты из токенов)

| Namespace | Токены | Утилиты |
|---|---|---|
| colors | палитра + semantic | `bg-primary`, `text-danger`, `bg-surface-ground`, `border-surface-border`, `text-zinc-500`, … |
| fonts | `fontFamily` | `font-heading` (TT Fellows), `font-base` (PT Sans) |
| font-weight | `fontWeight` | `font-regular/medium/demibold/bold` |
| text (font-size) | `fontSize` | `text-100…text-1000` |
| leading (line-height) | `lineHeight` | `leading-100…leading-1000`, `leading-auto` |
| radius | `borderRadius` | `rounded-100…rounded-500`, `rounded-none`, `rounded-max` |
| shadow | `shadows` | `shadow-100…shadow-500`, `shadow-none` |
| ease | `transition.easing` | `ease-in/out/inOut` (плюс дефолтный `ease-linear`) |
| spacing | `spacing["1x"]` | одна ручка `--spacing` (множитель); из неё v4 выводит `p/m/w/h/gap/inset/space/translate` |

Semantic-цвета (`primary`, `surface-ground`, `text`, …) ссылаются на runtime-переменные PrimeNG
(`--p-*`) и **трекают `provideExtraThemes()`**; оттенки палитры — статический слепок (их runtime-имена
нестандартны, поэтому зафиксированы в ките).

> Не вошли в `@theme` (нет v4-namespace): `sizing`, `borderWidth` (только `--default-border-width`),
> `opacity`, `transition.duration`. Для них — дефолты v4 или произвольные значения
> (`border-[3px]`, `w-[15rem]`, `opacity-[.25]`).

### Кастомизация (без болей) — локальный `@theme` поверх

```scss
@use "tailwindcss";
@use "@cdek-it/angular-ui-kit/tailwind";

@theme {
--color-primary: #ff0000; /* перебить */
--color-brand: #123456; /* добавить */
--breakpoint-xs: 480px; /* расширить */
}
```
v4 мержит `@theme`-блоки (last-wins) — конфликта нет, кит править не нужно. Разделение: кит владеет
дизайн-токенами, проект — build-конфигом (`content`-сканирование в v4 автоматическое, плагины через `@plugin`).

---

## Используемые технологии и связанные зависимости

---
Expand Down
Loading
Loading