@esperanca-ui/componentes 2.14.24 → 2.16.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/COMPONENTS.md +12 -12
- package/README.md +2 -3
- package/dist/componentes-esperanca.es.js +6506 -6708
- package/dist/componentes-esperanca.es.js.map +1 -1
- package/dist/componentes-esperanca.umd.js +51 -51
- package/dist/componentes-esperanca.umd.js.map +1 -1
- package/dist/components/Background/Background.d.ts +1 -2
- package/dist/components/Button/Button.d.ts +1 -1
- package/dist/components/Charts/ChartPreferencesMenu.d.ts +0 -1
- package/dist/components/Charts/chartTypes.d.ts +0 -1
- package/dist/components/GanttChart/GanttChart.d.ts +0 -10
- package/dist/components/PageHeader/PageHeader.d.ts +1 -2
- package/dist/components/Table/DataTable.d.ts +14 -1
- package/dist/components/TaskCalendar/TaskCalendar.d.ts +0 -17
- package/dist/index.d.ts +3 -7
- package/dist/style.css +1 -1
- package/package.json +4 -4
- package/dist/components/DateInput/DateInput.d.ts +0 -5
- package/dist/components/DateTimeInput/DateTimeInput.d.ts +0 -5
- package/dist/hooks/useHorizontalDragScroll.d.ts +0 -17
package/COMPONENTS.md
CHANGED
|
@@ -67,7 +67,7 @@ const sections = [
|
|
|
67
67
|
|
|
68
68
|
export function WorkspaceShell() {
|
|
69
69
|
return (
|
|
70
|
-
<Background
|
|
70
|
+
<Background pattern="dots">
|
|
71
71
|
<div className="esp-shell esp-shell-density-comfortable">
|
|
72
72
|
<Sidebar
|
|
73
73
|
surface="glass"
|
|
@@ -134,7 +134,6 @@ Classes disponiveis:
|
|
|
134
134
|
- `esp-quick-action-text`: texto que participa da expansao no hover
|
|
135
135
|
|
|
136
136
|
Essas classes cuidam do visual do botao. Para o layout do topo, prefira usar as classes publicas `esp-shell-actions` e `esp-shell-header`.
|
|
137
|
-
Para headers mais densos, `Button size="xs"` reduz quick actions e botoes de texto sem criar outra variante de componente.
|
|
138
137
|
|
|
139
138
|
Exemplo:
|
|
140
139
|
|
|
@@ -146,16 +145,16 @@ import { FiBell, FiPlus, FiSearch } from 'react-icons/fi';
|
|
|
146
145
|
export function TopQuickActions() {
|
|
147
146
|
return (
|
|
148
147
|
<div style={{ display: 'flex', justifyContent: 'flex-end', gap: 8 }}>
|
|
149
|
-
<Button variant="ghost" size="
|
|
148
|
+
<Button variant="ghost" size="sm" className="esp-quick-action esp-quick-action-expand" aria-label="Buscar">
|
|
150
149
|
<FiSearch />
|
|
151
150
|
<span className="esp-quick-action-text">Buscar</span>
|
|
152
151
|
</Button>
|
|
153
152
|
|
|
154
|
-
<Button variant="ghost" size="
|
|
153
|
+
<Button variant="ghost" size="sm" className="esp-quick-action esp-quick-action-outline" aria-label="Novo projeto">
|
|
155
154
|
<FiPlus />
|
|
156
155
|
</Button>
|
|
157
156
|
|
|
158
|
-
<Button variant="ghost" size="
|
|
157
|
+
<Button variant="ghost" size="sm" className="esp-quick-action esp-quick-action-soft" aria-label="Notificacoes">
|
|
159
158
|
<FiBell />
|
|
160
159
|
</Button>
|
|
161
160
|
</div>
|
|
@@ -165,9 +164,8 @@ export function TopQuickActions() {
|
|
|
165
164
|
|
|
166
165
|
## Notas de Integracao
|
|
167
166
|
|
|
168
|
-
- `Background` entrega a superficie e os patterns.
|
|
167
|
+
- `Background` entrega a superficie e os patterns. Blobs borrados, cards glass e outros adornos dos exemplos continuam sendo estilos da aplicacao consumidora.
|
|
169
168
|
- `PageHeader` aceita qualquer `actions`, mas o layout do grupo de acoes continua sendo responsabilidade do app.
|
|
170
|
-
- `PageHeader` agora aceita `variant="page" | "section"` para trocar a escala do titulo e da descricao sem criar outro componente para subtitulos de area.
|
|
171
169
|
- `Tabs` foi pensado para dois niveis: navegacao contextual (`Resumo`, `Timeline`, `Gantt`, `Calendario`) e troca de modo (`Dia`, `Semana`, `Mes`).
|
|
172
170
|
- `Sidebar` agora expõe `surface="default" | "soft" | "glass"` como API publica para definir a superficie do menu lateral.
|
|
173
171
|
- Itens do `Sidebar` aceitam `children` para submenu nativo. Em desktop o grupo abre no hover; em mobile o mesmo item funciona como toggle por clique.
|
|
@@ -180,16 +178,18 @@ export function TopQuickActions() {
|
|
|
180
178
|
- Para ajustar dashboards mais densos sem CSS manual, os charts tambem aceitam `axisFontSize`, `axisTitleFontSize`, `legendFontSize`, `valueLabelFontSize`, `valueLabelFontWeight` e `fontFamily`; no `LineChart`, `lineWidth` controla a espessura da linha.
|
|
181
179
|
- No `LineChart`, os labels de valor acompanham a ordem vertical das series em cada ponto: linha mais alta com valor acima, linha mais baixa com valor abaixo; quando cruzam, o lado do rotulo troca junto.
|
|
182
180
|
- Quando `enableUserPreferences` estiver ativo, o proprio usuario pode ajustar itens como titulo, legenda, nomes dos eixos, valores sobre os dados e orientacao do eixo X. Se `preferencesStorageKey` for informado, isso fica salvo em `localStorage`.
|
|
183
|
-
- `TaskCalendar` usa o mesmo contrato visual do `Card` e agora suporta `month`, `week` e `day`. No mes
|
|
184
|
-
- `GanttChart` fecha a visao horizontal de planejamento e usa `groups` como primeiro nivel. Assim, o mesmo componente serve para agrupar por projeto ou por responsavel.
|
|
181
|
+
- `TaskCalendar` usa o mesmo contrato visual do `Card` e agora suporta `month`, `week` e `day`. No mes as tarefas ficam pequenas como badges; em semana e dia o padrao vira card com mais contexto.
|
|
182
|
+
- `GanttChart` fecha a visao horizontal de planejamento e usa `groups` como primeiro nivel. Assim, o mesmo componente serve para agrupar por projeto ou por responsavel.
|
|
185
183
|
- `LineChart` e `StepLineChart` aceitam `yStartAtZero` para forcar o eixo Y a comecar em 0, `yMin` e `yMax` para definir limites customizados do eixo Y. Se nenhum for informado, o eixo e calculado automaticamente.
|
|
186
184
|
- `DataTable` agora suporta ordenacao por coluna. Colunas com `sortable: true` exibem indicador de ordenacao clicavel (none → asc → desc → none). Dois modos: **local** (sem `onSortChange`, ordena os dados automaticamente) e **controlado/server-side** (com `onSortChange`, o consumidor controla a ordenacao via API). Props: `sortKey`, `sortDirection`, `onSortChange`. Tipo `SortDirection` exportado como `'asc' | 'desc'`.
|
|
185
|
+
- `DataTable` agora suporta densidade de linhas. O botao na toolbar alterna entre `compact`, `comfortable` e `spacious` — mesma escala de `esp-shell-density-*` — reduzindo/aumentando o padding das celulas (e dos cards no mobile). Padrao: `comfortable`. Sem a prop `density` o componente controla e persiste sozinho no `localStorage`; com ela, o consumidor controla via `onDensityChange`. Props: `density`, `onDensityChange`, `densityStorageKey`. Tipo `TableDensity` exportado como `'compact' | 'comfortable' | 'spacious'`.
|
|
186
|
+
- `DataTable` agora aceita `maxHeight` (numero em px ou string CSS como `'60vh'`/`'calc(100vh - 240px)'`). Com ela a area de linhas ganha altura maxima e scroll vertical proprio, com o cabecalho fixo no topo — em vez de a tabela crescer e a pagina inteira rolar. Sem a prop, o comportamento continua o de antes.
|
|
187
187
|
|
|
188
188
|
## Componentes Publicos
|
|
189
189
|
|
|
190
190
|
| Componente | Import | Uso minimo |
|
|
191
191
|
| --- | --- | --- |
|
|
192
|
-
| `Background` | `import { Background } from '@esperanca-ui/componentes'` | `<Background
|
|
192
|
+
| `Background` | `import { Background } from '@esperanca-ui/componentes'` | `<Background pattern="dots" />` |
|
|
193
193
|
| `Button` | `import { Button } from '@esperanca-ui/componentes'` | `<Button>Salvar</Button>` |
|
|
194
194
|
| `Card` | `import { Card } from '@esperanca-ui/componentes'` | `<Card><Card.Body>Conteudo</Card.Body></Card>` |
|
|
195
195
|
| `MetricCard` | `import { MetricCard } from '@esperanca-ui/componentes'` | `<MetricCard value="42" title="Ativos" />` |
|
|
@@ -204,7 +204,7 @@ export function TopQuickActions() {
|
|
|
204
204
|
| `BarChart` | `import { BarChart } from '@esperanca-ui/componentes'` | `<BarChart data={data} series={series} xAxisLabel="Mes" yAxisLabel="Valor" yAxisTickWidth={112} axisFontSize={11} valueLabelFontSize={10} valueLabelFontWeight={600} showValueLabels enableUserPreferences />` |
|
|
205
205
|
| `Loading` | `import { Loading } from '@esperanca-ui/componentes'` | `<Loading variant="spinner" />` ou `<Loading fullScreen text="Validando acesso" />` |
|
|
206
206
|
| `Modal` | `import { Modal } from '@esperanca-ui/componentes'` | `<Modal isOpen={open} onClose={...}>...</Modal>` |
|
|
207
|
-
| `PageHeader` | `import { PageHeader } from '@esperanca-ui/componentes'` | `<PageHeader title="Clientes" />`
|
|
207
|
+
| `PageHeader` | `import { PageHeader } from '@esperanca-ui/componentes'` | `<PageHeader title="Clientes" />` |
|
|
208
208
|
| `Tabs` | `import { Tabs } from '@esperanca-ui/componentes'` | `<Tabs items={items} variant="underline" />` |
|
|
209
209
|
| `Portal` | `import { Portal } from '@esperanca-ui/componentes'` | `<Portal><div>Overlay</div></Portal>` |
|
|
210
210
|
| `Radio` | `import { Radio } from '@esperanca-ui/componentes'` | `<Radio label="Opcao A" />` |
|
|
@@ -215,7 +215,7 @@ export function TopQuickActions() {
|
|
|
215
215
|
| `TaskCard` | `import { TaskCard } from '@esperanca-ui/componentes'` | `<TaskCard title="Revisar agenda" status="in_progress" />` |
|
|
216
216
|
| `TaskCalendar` | `import { TaskCalendar } from '@esperanca-ui/componentes'` | `<TaskCalendar tasks={tasks} defaultDate="2026-03-01" showViewSwitcher />` |
|
|
217
217
|
| `GanttChart` | `import { GanttChart } from '@esperanca-ui/componentes'` | `<GanttChart groups={groups} defaultView="month" />` |
|
|
218
|
-
| `DataTable` | `import { DataTable } from '@esperanca-ui/componentes'` | `<DataTable columns={columns} data={data} layoutMode="scroll" dragToScroll />` |
|
|
218
|
+
| `DataTable` | `import { DataTable } from '@esperanca-ui/componentes'` | `<DataTable columns={columns} data={data} density="compact" layoutMode="scroll" dragToScroll />` |
|
|
219
219
|
| `Textarea` | `import { Textarea } from '@esperanca-ui/componentes'` | `<Textarea label="Descricao" />` |
|
|
220
220
|
| `ThemeProvider` | `import { ThemeProvider } from '@esperanca-ui/componentes'` | `<ThemeProvider defaultTheme="system"><App /></ThemeProvider>` |
|
|
221
221
|
| `ToastProvider` + `useToast` | `import { ToastProvider, useToast } from '@esperanca-ui/componentes'` | `<ToastProvider><App /></ToastProvider>` |
|
package/README.md
CHANGED
|
@@ -26,12 +26,11 @@ Biblioteca de componentes React com estilos em CSS puro, build com Vite e um sit
|
|
|
26
26
|
├── docs-site/ # app de documentacao
|
|
27
27
|
├── docker/ # imagens e configuracao nginx
|
|
28
28
|
├── docs/ # guias de uso/publicacao
|
|
29
|
-
├── scripts/ # wrappers Node para tarefas locais das docs
|
|
30
29
|
├── src/ # biblioteca publicada
|
|
31
30
|
├── .gitlab-ci.yml # validacao + publicacao
|
|
32
31
|
├── package.json # scripts e metadados do pacote
|
|
33
|
-
├── vite.config.ts
|
|
34
|
-
└── vite.config.docs.
|
|
32
|
+
├── vite.config.ts # build da biblioteca
|
|
33
|
+
└── vite.config.docs.ts # build das docs
|
|
35
34
|
```
|
|
36
35
|
|
|
37
36
|
## Configuracao (.env)
|