@snksergio/design-system 0.35.0 → 0.37.0
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/README.md +58 -12
- package/dist-lib/chunks/avatar-CIHTveDJ.mjs +1177 -0
- package/dist-lib/chunks/avatar-CIHTveDJ.mjs.map +1 -0
- package/dist-lib/chunks/avatar-YpqQgJnh.cjs +1196 -0
- package/dist-lib/chunks/avatar-YpqQgJnh.cjs.map +1 -0
- package/dist-lib/chunks/{input-CizzMZ20.cjs → input-CJnonz-G.cjs} +3 -3
- package/dist-lib/chunks/{input-CizzMZ20.cjs.map → input-CJnonz-G.cjs.map} +1 -1
- package/dist-lib/chunks/{input-Cym0k4ZI.mjs → input-jLoO8t0I.mjs} +2 -2
- package/dist-lib/chunks/{input-Cym0k4ZI.mjs.map → input-jLoO8t0I.mjs.map} +1 -1
- package/dist-lib/chunks/{kpi-delta-FhfuIg27.mjs → kpi-delta-D0g2YzDy.mjs} +3 -2
- package/dist-lib/chunks/{kpi-delta-FhfuIg27.mjs.map → kpi-delta-D0g2YzDy.mjs.map} +1 -1
- package/dist-lib/chunks/{kpi-delta-DrSJPMCY.cjs → kpi-delta-D6cLnCqW.cjs} +8 -7
- package/dist-lib/chunks/{kpi-delta-DrSJPMCY.cjs.map → kpi-delta-D6cLnCqW.cjs.map} +1 -1
- package/dist-lib/chunks/{page-header-BMzUloFi.cjs → page-header-DSTprenz.cjs} +4 -4
- package/dist-lib/chunks/{page-header-BMzUloFi.cjs.map → page-header-DSTprenz.cjs.map} +1 -1
- package/dist-lib/chunks/{page-header-Buh6YlQM.mjs → page-header-Deb1excS.mjs} +2 -2
- package/dist-lib/chunks/{page-header-Buh6YlQM.mjs.map → page-header-Deb1excS.mjs.map} +1 -1
- package/dist-lib/chunks/{panel-Cdl0GPVE.mjs → panel-Cid3m9zb.mjs} +370 -9823
- package/dist-lib/chunks/panel-Cid3m9zb.mjs.map +1 -0
- package/dist-lib/chunks/{panel-DlyaLunw.cjs → panel-DLcD8LhW.cjs} +595 -10052
- package/dist-lib/chunks/panel-DLcD8LhW.cjs.map +1 -0
- package/dist-lib/chunks/textarea-BDJRaL5h.mjs +781 -0
- package/dist-lib/chunks/textarea-BDJRaL5h.mjs.map +1 -0
- package/dist-lib/chunks/textarea-Bxl9Voe8.cjs +802 -0
- package/dist-lib/chunks/textarea-Bxl9Voe8.cjs.map +1 -0
- package/dist-lib/chunks/tooltip-DGI3hDFM.mjs +1452 -0
- package/dist-lib/chunks/tooltip-DGI3hDFM.mjs.map +1 -0
- package/dist-lib/chunks/tooltip-vLUyJ0h5.cjs +1484 -0
- package/dist-lib/chunks/tooltip-vLUyJ0h5.cjs.map +1 -0
- package/dist-lib/chunks/{useTheme-D4alxxGV.cjs → useTheme-DQ7FaHdv.cjs} +170 -1282
- package/dist-lib/chunks/useTheme-DQ7FaHdv.cjs.map +1 -0
- package/dist-lib/chunks/{useTheme-DF2xbSdI.mjs → useTheme-UrerJ3i-.mjs} +26 -1134
- package/dist-lib/chunks/useTheme-UrerJ3i-.mjs.map +1 -0
- package/dist-lib/index.cjs +1258 -311
- package/dist-lib/index.cjs.map +1 -1
- package/dist-lib/index.mjs +1631 -679
- package/dist-lib/index.mjs.map +1 -1
- package/dist-lib/preview/chat.cjs +45 -44
- package/dist-lib/preview/chat.cjs.map +1 -1
- package/dist-lib/preview/chat.mjs +3 -2
- package/dist-lib/preview/chat.mjs.map +1 -1
- package/dist-lib/preview/clientes.cjs +22 -20
- package/dist-lib/preview/clientes.cjs.map +1 -1
- package/dist-lib/preview/clientes.mjs +6 -4
- package/dist-lib/preview/clientes.mjs.map +1 -1
- package/dist-lib/preview/dashboard.cjs +40 -39
- package/dist-lib/preview/dashboard.cjs.map +1 -1
- package/dist-lib/preview/dashboard.mjs +4 -3
- package/dist-lib/preview/dashboard.mjs.map +1 -1
- package/dist-lib/shadcn.cjs +293 -0
- package/dist-lib/shadcn.cjs.map +1 -0
- package/dist-lib/shadcn.d.ts +2 -0
- package/dist-lib/shadcn.mjs +276 -0
- package/dist-lib/shadcn.mjs.map +1 -0
- package/dist-lib/src/components/index.d.ts +10 -0
- package/dist-lib/src/components/index.d.ts.map +1 -1
- package/dist-lib/src/components/shadcn/command.d.ts.map +1 -1
- package/dist-lib/src/components/shadcn/index.d.ts +60 -6
- package/dist-lib/src/components/shadcn/index.d.ts.map +1 -1
- package/dist-lib/src/hooks/useBrand.d.ts +1 -1
- package/dist-lib/theme/brand-blue.css +110 -110
- package/dist-lib/theme/brand-green.css +110 -110
- package/dist-lib/theme/brand-pay.css +189 -189
- package/dist-lib/theme/brand-vibrant.css +148 -148
- package/dist-lib/theme.css +10 -6
- package/dist-lib/tokens/brands/blue/semantic/color-dark.d.ts +4 -0
- package/dist-lib/tokens/brands/blue/semantic/color-dark.d.ts.map +1 -1
- package/dist-lib/tokens/brands/blue/semantic/color-light.d.ts +4 -0
- package/dist-lib/tokens/brands/blue/semantic/color-light.d.ts.map +1 -1
- package/dist-lib/tokens/brands/default/semantic/color-dark.d.ts +4 -0
- package/dist-lib/tokens/brands/default/semantic/color-dark.d.ts.map +1 -1
- package/dist-lib/tokens/brands/default/semantic/color-light.d.ts +4 -0
- package/dist-lib/tokens/brands/default/semantic/color-light.d.ts.map +1 -1
- package/dist-lib/tokens/brands/green/semantic/color-dark.d.ts +4 -0
- package/dist-lib/tokens/brands/green/semantic/color-dark.d.ts.map +1 -1
- package/dist-lib/tokens/brands/green/semantic/color-light.d.ts +4 -0
- package/dist-lib/tokens/brands/green/semantic/color-light.d.ts.map +1 -1
- package/dist-lib/tokens/brands/pay/semantic/color-dark.d.ts +4 -0
- package/dist-lib/tokens/brands/pay/semantic/color-dark.d.ts.map +1 -1
- package/dist-lib/tokens/brands/pay/semantic/color-light.d.ts +4 -0
- package/dist-lib/tokens/brands/pay/semantic/color-light.d.ts.map +1 -1
- package/dist-lib/tokens/brands/vibrant/semantic/color-dark.d.ts +4 -0
- package/dist-lib/tokens/brands/vibrant/semantic/color-dark.d.ts.map +1 -1
- package/dist-lib/tokens/brands/vibrant/semantic/color-light.d.ts +4 -0
- package/dist-lib/tokens/brands/vibrant/semantic/color-light.d.ts.map +1 -1
- package/dist-lib/tokens.cjs +12 -0
- package/dist-lib/tokens.cjs.map +1 -1
- package/dist-lib/tokens.mjs +12 -0
- package/dist-lib/tokens.mjs.map +1 -1
- package/package.json +11 -3
- package/dist-lib/chunks/panel-Cdl0GPVE.mjs.map +0 -1
- package/dist-lib/chunks/panel-DlyaLunw.cjs.map +0 -1
- package/dist-lib/chunks/useTheme-D4alxxGV.cjs.map +0 -1
- package/dist-lib/chunks/useTheme-DF2xbSdI.mjs.map +0 -1
package/README.md
CHANGED
|
@@ -57,7 +57,7 @@ Não é um DS público nem genérico. É opinionado para SaaS densos de dados
|
|
|
57
57
|
- **Componentes iGreen** custom em `src/components/ui/` construídos com `tv()` — Button, Chip, Avatar, AppShell, Header, MenuSidebar, Modal, AlertModal, FloatingPanel, Panel, PageHeader, FormField, Kanban, Table, TableToolbar, FooterTable e mais
|
|
58
58
|
- **Componentes Shadcn** adaptados em `src/components/shadcn/` — Badge, Input, Select, Tabs, Card, Switch, Checkbox, RadioGroup, Slider, Progress, Dialog, DropdownMenu, Tooltip, Calendar e demais primitives do Radix
|
|
59
59
|
- **3 tiers de tokens** em `tokens/brands/default/` (primitives → semantic → component)
|
|
60
|
-
- **Pipeline de AI** com
|
|
60
|
+
- **Pipeline de AI** com 6 agentes em `.claude/agents/` (4 ativos + 2 placeholders do domínio App) espelhado em `.cursor/rules/`
|
|
61
61
|
- **Preview app navegável** com docs vivas em `npm run dev` — sempre reflete o estado atual do código
|
|
62
62
|
|
|
63
63
|
---
|
|
@@ -111,7 +111,22 @@ Ver detalhes: [`cli/README.md`](cli/README.md).
|
|
|
111
111
|
|
|
112
112
|
## Consumir em outro projeto
|
|
113
113
|
|
|
114
|
-
O iGreen DS
|
|
114
|
+
O iGreen DS tem **4 canais de consumo, todos suportados — nenhum depreciado**:
|
|
115
|
+
|
|
116
|
+
| Canal | Como | O que muda |
|
|
117
|
+
|---|---|---|
|
|
118
|
+
| **copy-in / registry** (padrão shadcn) | `npm run igreen:add -- <x>` | o código é **copiado pro seu `src/`** e vira seu, editável |
|
|
119
|
+
| **scaffold** | `npm create @snksergio/design-system` | projeto novo já em copy-in, com tema + kit de IA + prompt de marca |
|
|
120
|
+
| **npm install** | `npm i @snksergio/design-system` | consome como **dependência**; exige a diretiva `@source` (abaixo) |
|
|
121
|
+
| **submódulo git** | `npm run ds:link` no repo pai | lê os componentes **do disco**; ganha o mesmo kit de IA |
|
|
122
|
+
|
|
123
|
+
O copy-in é o canal **primário** — é onde as versões saem primeiro, porque o deploy do
|
|
124
|
+
registry é automático no merge. Os outros três dependem de um `npm publish` manual do
|
|
125
|
+
mantenedor, então podem ficar uma versão atrás. Isso é **ordem de publicação**, não
|
|
126
|
+
hierarquia de suporte: escolha o canal pelo modelo que você quer (código seu × dependência
|
|
127
|
+
versionada × fonte compartilhada), não por qual "vale mais".
|
|
128
|
+
|
|
129
|
+
Detalhe por canal: `DISTRIBUICAO.md`, `SUBMODULE-SETUP.md` e a página **Distribution** do catálogo.
|
|
115
130
|
|
|
116
131
|
**Projeto novo (recomendado):**
|
|
117
132
|
|
|
@@ -123,13 +138,10 @@ Cria o projeto já conectado ao registry, com tema/`cn`/`tv` configurados, tela
|
|
|
123
138
|
|
|
124
139
|
**Projeto existente:** configure o registry `@igreen` no `components.json` (Bearer `IGREEN_TOKEN`) e puxe componentes com `npx shadcn add @igreen/<nome>` (ou o wrapper `npm run igreen:add` no scaffold, que mantém o manifesto).
|
|
125
140
|
|
|
126
|
-
>
|
|
127
|
-
>
|
|
128
|
-
>
|
|
129
|
-
>
|
|
130
|
-
> pode estar atrás do registry. Use-o só quando precisar consumir como dependência em
|
|
131
|
-
> vez de copy-in. Modelo e versionamento em `DISTRIBUICAO.md` e na página
|
|
132
|
-
> **Distribution** do catálogo.
|
|
141
|
+
> O pacote npm `@snksergio/design-system` entrega ESM + CJS + types + `theme.css` + os 4
|
|
142
|
+
> overlays de marca + as fontes Geist. Ele é publicado por passo manual do mantenedor
|
|
143
|
+
> (token/2FA), então pode estar uma versão atrás do registry — mas **não é depreciado**,
|
|
144
|
+
> e o setup abaixo é obrigatório pra ele funcionar.
|
|
133
145
|
|
|
134
146
|
### Consumindo por `npm install` — setup completo
|
|
135
147
|
|
|
@@ -170,6 +182,25 @@ Sem isso a tipografia cai em `system-ui` e os 27 presets do DS renderizam na fon
|
|
|
170
182
|
@import "tw-animate-css"; /* opcional — só as animações de entrada/saída */
|
|
171
183
|
```
|
|
172
184
|
|
|
185
|
+
**O que dá pra importar (≥ 0.37.0).** Duas entradas:
|
|
186
|
+
|
|
187
|
+
```ts
|
|
188
|
+
// raiz — 41 dos 42 componentes ui/ + os hooks de tema
|
|
189
|
+
import { Button, DataTable, AppShell, Chart, DataList, List, toast, useBrand } from "@snksergio/design-system";
|
|
190
|
+
|
|
191
|
+
// subpath — os 41 primitivos shadcn adaptados aos tokens do DS
|
|
192
|
+
import { Dialog, Select, Tabs, Popover, Tooltip, Card, Calendar } from "@snksergio/design-system/shadcn";
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
São duas entradas, e não uma, porque os primitivos somam 41 arquivos / 233 nomes exportados
|
|
196
|
+
enquanto o consumidor típico usa 3 ou 4 — no mesmo barrel, qualquer `import` do pacote
|
|
197
|
+
arrastaria Radix + cmdk + vaul + embla + input-otp + sonner antes de o bundler conseguir
|
|
198
|
+
podar. Quem não importa `/shadcn` não paga por eles.
|
|
199
|
+
|
|
200
|
+
O único componente `ui/` fora do npm é `TabelaTeste` (demo interno do showcase). Até a
|
|
201
|
+
0.36.0 o barrel tinha 37 — `Chart`, `DataList`, `List` e `Toast` ficavam de fora, e não
|
|
202
|
+
havia subpath `/shadcn`.
|
|
203
|
+
|
|
173
204
|
**O que NÃO vem no copy-in:** o pipeline interno do DS (`.claude/agents|skills|hooks`, `.ai/context`, lições) vive só neste repositório. O **kit do consumidor** (orquestrador `ds-kit` + skills de tela + `DESIGN.md` + proteção por hook) vem via CLI no scaffold.
|
|
174
205
|
|
|
175
206
|
### Trocar o tema de marca
|
|
@@ -361,11 +392,26 @@ Pipeline de 6 agentes (4 ativos + 2 placeholders 🚧 aguardando primeira tela d
|
|
|
361
392
|
| `app-designer` | Especifica telas/fluxos do app consumidor | Sonnet | 🚧 placeholder (aguardando primeira tela) |
|
|
362
393
|
| `app-dev-react` | Implementa telas com componentes DS existentes | Opus | 🚧 placeholder (aguardando primeira tela) |
|
|
363
394
|
|
|
364
|
-
**Slash commands disponíveis
|
|
395
|
+
**Slash commands disponíveis (15):**
|
|
396
|
+
|
|
397
|
+
| Comando | O que faz |
|
|
398
|
+
|---|---|
|
|
399
|
+
| `/ds-add-token` | token semântico novo (gate obrigatório) |
|
|
400
|
+
| `/ds-create-component` · `/ds-create-composite` · `/ds-add-shadcn` | componente iGreen / composto / adaptação shadcn |
|
|
401
|
+
| `/ds-extract-figma` | extrair componente ou tokens do Figma |
|
|
402
|
+
| `/ds-create-brand` | marca/tema de cor novo (overlay `[data-theme]`, 10 superfícies) |
|
|
403
|
+
| `/ds-create-screen` | front-door: desambigua e roteia pro builder certo |
|
|
404
|
+
| `/ds-create-crud` · `/ds-create-list` · `/ds-create-dashboard` | tela de tabela / lista de cards / painel (entrevista guiada) |
|
|
405
|
+
| `/ds-create-app` · `/ds-create-login` | app completo / tela de autenticação |
|
|
406
|
+
| `/ds-replicate-module` | replicar módulo existente pra outro domínio |
|
|
407
|
+
| `/ds-release` | release completa: changelog + bump + registry + branch + PR |
|
|
408
|
+
| `/ds-update` | só a timeline de updates (sem bump/PR) |
|
|
409
|
+
|
|
410
|
+
Tutorial de telas: [Tutorial](#tutorial--produzir-telas-e-cruds-com-ia-ds-como-subprojeto).
|
|
365
411
|
|
|
366
412
|
A infraestrutura inclui:
|
|
367
413
|
- **Skills** atômicas por agente (`.claude/skills/`)
|
|
368
|
-
- **Hooks** PreToolUse/PostToolUse (`ds-lint-styles`, `block-rm-rf`, `block-sensitive-edit`)
|
|
414
|
+
- **Hooks** PreToolUse/PostToolUse — 5: informativos (`ds-lint-styles`, `ds-inventory-check`, `ds-tokens-check`) e bloqueantes (`block-rm-rf`, `block-sensitive-edit`)
|
|
369
415
|
- **Output style** terse aplicado a toda sessão
|
|
370
416
|
- **MCP servers** (Figma, filesystem, chrome-devtools)
|
|
371
417
|
- **Memory system 4 camadas** (user, project, audit log, lessons system)
|
|
@@ -430,7 +476,7 @@ npm run dev
|
|
|
430
476
|
|
|
431
477
|
A preview app cobre:
|
|
432
478
|
- **Get Started** — Introduction, Structure, Installation, Transform Tokens
|
|
433
|
-
- **Agents** — Overview, Pipeline (estrutural + simulador),
|
|
479
|
+
- **Agents** — Overview, Pipeline (estrutural + simulador), 6 agentes individuais
|
|
434
480
|
- **Pipeline Infra** — Skills, Commands, Hooks, Output Styles, MCP Servers, Memory System
|
|
435
481
|
- **Foundations** — Tokens Overview, Color, Typography, Spacing, Sizing, Shape, Elevation, Icons
|
|
436
482
|
- **Components** — docs com exemplos vivos para cada componente
|