elcrm 1.1.27 → 1.1.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js
CHANGED
|
@@ -1430,6 +1430,7 @@ function syncElcrmCss(options) {
|
|
|
1430
1430
|
skippedPkgs.push(name);
|
|
1431
1431
|
allDefs.push(...defs);
|
|
1432
1432
|
}
|
|
1433
|
+
const pkgsWithTokens = new Set(cssExports.filter((e) => e.tokens).map((e) => e.name));
|
|
1433
1434
|
const added = {
|
|
1434
1435
|
"theme.css": [],
|
|
1435
1436
|
"theme-light.css": [],
|
|
@@ -1445,7 +1446,7 @@ function syncElcrmCss(options) {
|
|
|
1445
1446
|
continue;
|
|
1446
1447
|
let css = readFileSync7(file, "utf8");
|
|
1447
1448
|
const have = existingTokenNames(css);
|
|
1448
|
-
const missing = allDefs.filter((d) => d.bucket === bucket && !have.has(d.name) && !d.name.startsWith("--search-") && !TOKEN_DEPRECATED.has(d.name) && !isButtonShadowNoise(d.name, d.value));
|
|
1449
|
+
const missing = allDefs.filter((d) => d.bucket === bucket && !have.has(d.name) && !d.name.startsWith("--search-") && !TOKEN_DEPRECATED.has(d.name) && !isButtonShadowNoise(d.name, d.value) && !(bucket === "geometry" && pkgsWithTokens.has(d.pkg)));
|
|
1449
1450
|
const uniq = [];
|
|
1450
1451
|
const seen = new Set;
|
|
1451
1452
|
for (const d of missing) {
|
package/package.json
CHANGED
|
@@ -18,7 +18,7 @@ elcrm cursor
|
|
|
18
18
|
| # | Команда | Что делает |
|
|
19
19
|
| --- | --- | --- |
|
|
20
20
|
| 1 | `elcrm update --fix --test` | Обновляет глобальный `elcrm` + все `@elcrm/*` в `package.json` → install → **migrate front** (API/токены/css-sanitize) → внутри `--fix` ещё раз **sync CSS** → `elcrm test` |
|
|
21
|
-
| 2 | `elcrm css` | Недостающие
|
|
21
|
+
| 2 | `elcrm css` | Недостающие **цвета** → `theme-light` / `theme-dark`. Геометрию из пакетов с `tokens.css` **не** дублирует в `theme.css` (дефолты через `@import …/tokens.css`). **Не дописывает** `--button-*-shadow: none` и снимает такие строки. В `elcrm.css`: **добавляет** рабочие `@import`, **удаляет битые**. Затем css-sanitize |
|
|
22
22
|
| 3 | `elcrm docs` | Перезаписывает `docs/*.elCRM.md` (шпаргалки пакетов) |
|
|
23
23
|
| 4 | `elcrm cursor` | `.cursor/rules` + `.cursor/docs` + `AGENTS.md` для агента |
|
|
24
24
|
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
Card, Stat, ActionGroup, Toolbar, TextGroup, ItemColumn, List, Item, PageHead, PageShell, ChatList, ChatMessages, ChatSplit, Sidebar, Popover,
|
|
18
18
|
Healthmap, PanelInfo,
|
|
19
19
|
Loading, EmptyState, RadioGroup, PricingGroup, PricingTable,
|
|
20
|
-
Table, CodeBlock, SplitPane, Banner, IconButton,
|
|
20
|
+
Table, CodeBlock, SplitPane, Banner, IconButton, Text,
|
|
21
21
|
createLazyResolver,
|
|
22
22
|
} from "@elcrm/components";
|
|
23
23
|
import type { PricingPlan, HealthmapData } from "@elcrm/components";
|
|
@@ -42,6 +42,9 @@ import type { PricingPlan, HealthmapData } from "@elcrm/components";
|
|
|
42
42
|
- **ActionGroup** — ряд иконок в карточке / строке: `label` + `items` и/или `children`. Кнопки — `@elcrm/button`.
|
|
43
43
|
- **Toolbar** — фильтры над списком. `size` (`s`/`m`/`l`, по умолчанию `s`) наследуют вложенные `*Field`, `Search`, `Button`, `Dropdown` (свой `size` важнее). `align`: `start` / `center` / `end` / `between`. `width`: `l` (100%, по умолчанию) или `s` (по контенту, не растягивать). Токены `--toolbar-gap`. Не `ActionGroup`.
|
|
44
44
|
- **TextGroup** — две строки: `title` + `description` (без аватара; с аватаром — AvatarName).
|
|
45
|
+
- **Text** — короткий текст. `tone="muted"` → `--shell-color-muted`. `as` — тег (`p`/`span`/…). Не `className="muted"` в приложении.
|
|
46
|
+
- **Loading** — индикатор ожидания. Мин. высота: `--loading-min-height` (`min(50vh, 24rem)`).
|
|
47
|
+
- **EmptyState** — заглушка / ошибка страницы. `--empty-max-width`, `--empty-padding`.
|
|
45
48
|
- **Item** — строка списка. `as` button/a/li, `active`. `variant="card"` — рамка и muted-фон (идеи / тикеты / inbox). Не дублировать `.desk-row` в приложении.
|
|
46
49
|
- **ItemColumn** — внутри Item: `icon` слева, столбик `title` / `description` / `footer` или `meta`, `extra` — бейджи справа сверху, `aside` — колонка справа. `unread` — жирный title. Title: `--item-column-title-size` / `--item-column-title-line` (в console = `--button-size-s` / `--button-line-height`).
|
|
47
50
|
- **Table** — `<table>` в обёртке со скроллом. `layout="fixed"` для фиксированной сетки. Токены `--table-*`.
|