nemesischart 2.0.9 → 2.0.10
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 +30 -15
- package/dist/nemesischart.js +1334 -1476
- package/dist/nemesischart.umd.cjs +1 -1
- package/dist/style.css +1 -1
- package/package.json +2 -15
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# NemesisChart
|
|
2
2
|
|
|
3
|
-
Biblioteca de componentes Vue 3 para construção rápida de cards e dashboards com gráficos, construída sobre [Chart.js](https://www.chartjs.org/)
|
|
3
|
+
Biblioteca de componentes Vue 3 para construção rápida de cards e dashboards com gráficos, construída sobre [Chart.js](https://www.chartjs.org/) — sem dependências de UI externas (todo o CSS necessário já vem no bundle).
|
|
4
4
|
|
|
5
5
|
Todos os componentes seguem o mesmo padrão: um cartão (`Card*`) que exibe legenda, sublegenda, valor de destaque, descrição e o gráfico correspondente — com suporte a temas claro/escuro, formatação automática de valores e exportação como imagem.
|
|
6
6
|
|
|
@@ -30,10 +30,10 @@ Todos os componentes seguem o mesmo padrão: um cartão (`Card*`) que exibe lege
|
|
|
30
30
|
## Instalação
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
-
npm install nemesischart chart.js
|
|
33
|
+
npm install nemesischart chart.js
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
`vue
|
|
36
|
+
`vue` e `chart.js` são as únicas peer-deps do bundle de lib. A partir da v2.1.0, PrimeVue, PrimeFlex e PrimeIcons **não são mais necessários** — os estilos utilitários usados pelos componentes são embutidos em `nemesischart/style.css` (prefixo `nc-`), mantendo o mesmo visual.
|
|
37
37
|
|
|
38
38
|
## Uso rápido
|
|
39
39
|
|
|
@@ -41,18 +41,12 @@ npm install nemesischart chart.js primevue primeflex primeicons
|
|
|
41
41
|
|
|
42
42
|
```js
|
|
43
43
|
import { createApp } from 'vue'
|
|
44
|
-
import PrimeVue from 'primevue/config'
|
|
45
44
|
import NemesisChart from 'nemesischart'
|
|
46
45
|
import 'nemesischart/style.css'
|
|
47
46
|
|
|
48
|
-
import 'primevue/resources/themes/lara-light-blue/theme.css'
|
|
49
|
-
import 'primeicons/primeicons.css'
|
|
50
|
-
import 'primeflex/primeflex.css'
|
|
51
|
-
|
|
52
47
|
import App from './App.vue'
|
|
53
48
|
|
|
54
49
|
createApp(App)
|
|
55
|
-
.use(PrimeVue)
|
|
56
50
|
.use(NemesisChart)
|
|
57
51
|
.mount('#app')
|
|
58
52
|
```
|
|
@@ -135,6 +129,21 @@ Props específicas:
|
|
|
135
129
|
| `corDetalhesSecundaria` | String | — | Segunda cor para gradiente combinado. |
|
|
136
130
|
| `series` | Array | — | Várias linhas. |
|
|
137
131
|
| `direcao` | `top` \| `bottom` \| `left` \| `right` | `top` | Posição do header em relação ao gráfico. |
|
|
132
|
+
| `detalheTooltip` | Function | — | `(item, index) => string \| string[]`. Recebe o item original de `data` e retorna texto(s) extra(s) exibidos no tooltip abaixo do valor. |
|
|
133
|
+
|
|
134
|
+
Exemplo — mostrar a quantidade de pagamentos por mês no tooltip, além do valor:
|
|
135
|
+
|
|
136
|
+
```vue
|
|
137
|
+
<CardLinhas
|
|
138
|
+
legenda="Pagamentos realizados"
|
|
139
|
+
tipoValor="moeda"
|
|
140
|
+
:data="[
|
|
141
|
+
{ rotulo: 'Jan', quantidade: 2456173.9, pagamentos: 1353 },
|
|
142
|
+
{ rotulo: 'Fev', quantidade: 3889895.3, pagamentos: 1269 },
|
|
143
|
+
]"
|
|
144
|
+
:detalheTooltip="(item) => `${item.pagamentos} pagamentos`"
|
|
145
|
+
/>
|
|
146
|
+
```
|
|
138
147
|
|
|
139
148
|
### CardBarra
|
|
140
149
|
|
|
@@ -160,6 +169,7 @@ Props específicas:
|
|
|
160
169
|
| `series` | Array | — |
|
|
161
170
|
| `cores` | Array<String> | paleta padrão |
|
|
162
171
|
| `mostrarLegendaSeries` | Boolean | `true` |
|
|
172
|
+
| `detalheTooltip` | Function | — | `(item, index) => string \| string[]`. Texto(s) extra(s) no tooltip, abaixo dos valores. Recebe o item da 1ª série. |
|
|
163
173
|
|
|
164
174
|
### CardPizza
|
|
165
175
|
|
|
@@ -179,12 +189,14 @@ Props específicas:
|
|
|
179
189
|
|
|
180
190
|
| Prop | Tipo | Padrão |
|
|
181
191
|
|---|---|---|
|
|
182
|
-
| `
|
|
192
|
+
| `corDetalhes` | String | `#3B82F6` (gera a paleta das fatias; itens podem sobrescrever com `cor`) |
|
|
183
193
|
| `cutout` | String/Number | `'70%'` |
|
|
184
194
|
| `direcao` | `left` \| `right` \| `top` \| `bottom` | `right` |
|
|
185
195
|
| `rotuloCategoria` | String | `'Categoria'` |
|
|
186
196
|
| `rotuloQuantidade` | String | `'Quantidade'` |
|
|
187
197
|
| `mostrarCabecalho` | Boolean | `true` |
|
|
198
|
+
| `itensClicaveis` | Boolean | `false` |
|
|
199
|
+
| `detalheTooltip` | Function | — `(item, index) => string \| string[]`. Texto(s) extra(s) no tooltip, abaixo do valor. |
|
|
188
200
|
|
|
189
201
|
### CardPolar
|
|
190
202
|
|
|
@@ -192,8 +204,10 @@ Polar area com grid configurável.
|
|
|
192
204
|
|
|
193
205
|
| Prop | Tipo | Padrão |
|
|
194
206
|
|---|---|---|
|
|
195
|
-
| `
|
|
207
|
+
| `corDetalhes` | String | `#3B82F6` (gera a paleta dos setores; itens podem sobrescrever com `cor`) |
|
|
196
208
|
| `mostrarLinhasGrade` | Boolean | `true` |
|
|
209
|
+
| `itensClicaveis` | Boolean | `false` |
|
|
210
|
+
| `detalheTooltip` | Function | — `(item, index) => string \| string[]`. Texto(s) extra(s) no tooltip, abaixo do valor. |
|
|
197
211
|
|
|
198
212
|
### CardProgresso
|
|
199
213
|
|
|
@@ -237,9 +251,8 @@ Barras de progresso lineares ou circulares. Suporta metas de **crescimento** e d
|
|
|
237
251
|
| `alturaBarra` | Number/String | `8` | Altura das barras em px. |
|
|
238
252
|
| `raioBarra` | String/Number | `'999px'` | Border-radius das barras. |
|
|
239
253
|
| `cutout` | String/Number | `'78%'` | Espessura do anel no modo circular. |
|
|
240
|
-
| `corDetalhes` | String | `'#3B82F6'` | Cor do gráfico circular em modo crescimento. |
|
|
254
|
+
| `corDetalhes` | String | `'#3B82F6'` | Cor do gráfico circular em modo crescimento e base da paleta automática dos itens. |
|
|
241
255
|
| `corExcesso` | String | `'#EF4444'` | Cor de alerta usada em itens com modo `reducao`. |
|
|
242
|
-
| `cores` | Array<String> | paleta padrão | Cores automáticas dos itens. |
|
|
243
256
|
|
|
244
257
|
### CardBase
|
|
245
258
|
|
|
@@ -318,8 +331,10 @@ Disponíveis para customizar gráficos sob medida:
|
|
|
318
331
|
|
|
319
332
|
- `useTema(props)` — calcula `palette` (bg, text, muted, …) e `cardStyle`.
|
|
320
333
|
- `useFormatadorValor(props)` — retorna `formatar(valor)` com base em `tipoValor`/`locale`/`moeda`.
|
|
321
|
-
- `useTooltipExterno` — utilitários para tooltip HTML customizado (`criarTooltipEl`, `prepararTooltipParent`, `clampHorizontal`).
|
|
322
|
-
- `
|
|
334
|
+
- `useTooltipExterno` — utilitários para tooltip HTML customizado (`criarTooltipEl`, `prepararTooltipParent`, `clampHorizontal`, `ttTitulo`, `ttLinhaValor`, `aplicarCaretFlip`, `criarTooltipExternoPadrao`).
|
|
335
|
+
- `useLinhasReferencia({ linhasReferencia, horizontal, formatar })` — plugin Chart.js de linhas de referência (metas/limites) com rótulo e tooltip próprios.
|
|
336
|
+
- `useExportarImagem` — `exportarElementoComoImagem(el, opções)`, `useExportarCard(props, palette, emit)` e o ícone SVG padrão.
|
|
337
|
+
- `propsCartao` / `propsValor` / `propsDirecao` / `propsTabela` — fábricas das definições de props compartilhadas, úteis para criar novos cards seguindo o mesmo contrato.
|
|
323
338
|
|
|
324
339
|
---
|
|
325
340
|
|