233 lines
13 KiB
Markdown
233 lines
13 KiB
Markdown
|
|
---
|
|||
|
|
title: Atualização para a nova versão do FLUIG.chart
|
|||
|
|
source: https://tdn.totvs.com/pages/viewpage.action?pageId=808476695
|
|||
|
|
path: \Plataforma Documentação técnica\Recurso de Páginas e Widgets (WCM)\Atualização para a nova versão do FLUIG.chart.md
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# Índice
|
|||
|
|
|
|||
|
|
- 1 [Objetivo](#AtualizaçãoparaanovaversãodoFLUIG.chart-Objetivo)
|
|||
|
|
- 2 [Identificação do que precisa ser ajustado](#AtualizaçãoparaanovaversãodoFLUIG.chart-Identificaçãodoqueprecisaserajustado)
|
|||
|
|
- 3 [Breaking changes](#AtualizaçãoparaanovaversãodoFLUIG.chart-Breakingchanges)
|
|||
|
|
- 3.1 [Breaking Change: Gráfico LineBar removido. Agora utilize o gráfico Mixed.](#AtualizaçãoparaanovaversãodoFLUIG.chart-BreakingChange:GráficoLineBarremovido.AgorautilizeográficoMixed.)
|
|||
|
|
- 3.2 [Breaking Change: Somente um evento para todos os gráficos.](#AtualizaçãoparaanovaversãodoFLUIG.chart-BreakingChange:Somenteumeventoparatodososgráficos.)
|
|||
|
|
- 3.3 [Breaking change: Nova estrutura de datasets para alguns gráficos](#AtualizaçãoparaanovaversãodoFLUIG.chart-Breakingchange:Novaestruturadedatasetsparaalgunsgráficos)
|
|||
|
|
- 3.4 [Breaking change: Propriedades removidas na estrutura do dataset.](#AtualizaçãoparaanovaversãodoFLUIG.chart-Breakingchange:Propriedadesremovidasnaestruturadodataset.)
|
|||
|
|
- 3.5 [Breaking change: Mudança para adicionar, remover ou atualizar dados nos gráficos.](#AtualizaçãoparaanovaversãodoFLUIG.chart-Breakingchange:Mudançaparaadicionar,removerouatualizardadosnosgráficos.)
|
|||
|
|
- 3.6 [Alterações por gráfico:](#AtualizaçãoparaanovaversãodoFLUIG.chart-Alteraçõesporgráfico:)
|
|||
|
|
- 3.6.1 [Gráfico do tipo Line](#AtualizaçãoparaanovaversãodoFLUIG.chart-GráficodotipoLine)
|
|||
|
|
- 3.6.2 [Gráfico do tipo Bar ou Horizontal Bar](#AtualizaçãoparaanovaversãodoFLUIG.chart-GráficodotipoBarouHorizontalBar)
|
|||
|
|
- 3.6.3 [Gráfico do tipo Radar](#AtualizaçãoparaanovaversãodoFLUIG.chart-GráficodotipoRadar)
|
|||
|
|
- 3.6.4 [Gráfico do tipo Polar](#AtualizaçãoparaanovaversãodoFLUIG.chart-GráficodotipoPolar)
|
|||
|
|
- 3.6.5 [Gráfico do tipo Pie e Doughnut](#AtualizaçãoparaanovaversãodoFLUIG.chart-GráficodotipoPieeDoughnut)
|
|||
|
|
|
|||
|
|
## Objetivo
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
Este guia tem por objetivo auxiliar os usuários a seguir o passo a passo necessário para identificação dos pontos onde é necessária a revisão e atualização do código, por conta da atualização de bibliotecas que tivemos. Mais uma medida para reforçar ainda mais a segurança do Fluig.
|
|||
|
|
|
|||
|
|
## Identificação do que precisa ser ajustado
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
Na versão **1.8.2 do Fluig <VALIDAR>**, por conta de uma vulnerabilidade, liberamos no Style Guide uma atualização dos plugins base do componente **FLUIGC.chart**, que são o **Chart.js** e o **Gauge.js**.
|
|||
|
|
|
|||
|
|
Na versão **2.9.4** do **Chart.js**, algumas dessas propriedades foram alteradas ou removidas, enquanto outras ainda são suportadas com pequenas modificações. Abaixo estão as informações para cada propriedade.
|
|||
|
|
|
|||
|
|
**Legenda de alterações**
|
|||
|
|
|
|||
|
|
**Breaking Change:** Alteração significativa que pode impactar o código existente, geralmente modificando a interface da API. Pode causar problemas em casos específicos.
|
|||
|
|
|
|||
|
|
**Feature (Recurso):** Adição à API que normalmente não afeta o código existente. Introduz novas funcionalidades, mas há a possibilidade de interações negativas com o código existente.
|
|||
|
|
|
|||
|
|
**Deprecated (Descontinuado):** Recurso ou API ainda presente, mas seu uso é desencorajado. Pode ser removido em futuras atualizações de versões principais.
|
|||
|
|
|
|||
|
|
## Breaking changes
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### **Breaking Change: Gráfico LineBar removido. Agora utilize o gráfico Mixed.**
|
|||
|
|
|
|||
|
|
O gráfico `**chart.lineBar(data, options)**` foi removido. Agora o gráfico `**chart.mixed(data, options)**` deve ser usado em seu lugar. Exemplo:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
var chart = FLUIGC.chart('#MY_SELECTOR');
|
|||
|
|
// call the mixed function
|
|||
|
|
var mixedChart = chart.mixed(data, options);
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### **Breaking Change: Somente um evento para todos os gráficos.**
|
|||
|
|
|
|||
|
|
Agora, quando você clica em alguma sessão do gráfico, todos eles emitem um mesmo evento, chamado `**fluig.chart.click**`. Os eventos abaixo foram removidos:
|
|||
|
|
|
|||
|
|
- line: 'fluig.chart.line.click'
|
|||
|
|
- bar: 'fluig.chart.vertical.click'
|
|||
|
|
- radar: 'fluig.chart.radar.click'
|
|||
|
|
- polarArea: 'fluig.chart.polar.click'
|
|||
|
|
- pie: 'fluig.chart.pie.click'
|
|||
|
|
- doughnut: 'fluig.chart.doughnut.click'
|
|||
|
|
- gauge: 'fluig.chart.gauge.click'
|
|||
|
|
- donut: 'fluig.chart.donut.click'
|
|||
|
|
- lineBar: 'fluig.chart.lineBar.click'
|
|||
|
|
- horizontalBar: 'fluig.chart.horizontal.click'
|
|||
|
|
|
|||
|
|
Exemplo:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
$('YOUR_SELECTOR').on('fluig.chart.click', function(ev) {
|
|||
|
|
// Para saber qual é o chart, pegar pelo ev.chart.config.type
|
|||
|
|
console.log(ev.chart.config.type);
|
|||
|
|
});
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### **Breaking change: Nova estrutura de datasets para alguns gráficos**
|
|||
|
|
|
|||
|
|
Os gráficos `**polar**`, `**pie**` e `**doughnut**` sofreram uma modificação em sua estrutura de **datasets**. O motivo foi para equalizar a estrutura de todos os gráficos. Exemplo:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
// Estrutura antiga
|
|||
|
|
var dataPolarOld = [{
|
|||
|
|
value: 300,
|
|||
|
|
label: 'bpm'
|
|||
|
|
}, {
|
|||
|
|
value: 50,
|
|||
|
|
label: 'ecm'
|
|||
|
|
}, {
|
|||
|
|
value: 100,
|
|||
|
|
label: 'social'
|
|||
|
|
}];
|
|||
|
|
|
|||
|
|
// Estrutura nova
|
|||
|
|
var dataPolarNew = {
|
|||
|
|
labels: ['bpm', 'ecm', 'social'],
|
|||
|
|
datasets: [{
|
|||
|
|
label: 'My First Dataset',
|
|||
|
|
data: [300, 50, 100]
|
|||
|
|
}]
|
|||
|
|
};
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### **Breaking change: Propriedades removidas na estrutura do dataset.**
|
|||
|
|
|
|||
|
|
A estrutura geral de **datasets** dos gráficos mudaram. As propriedades `**fillColor**`, `**strokeColor**`, `**highlightFill**` e `**highlightStroke**` foram removidas. Agora deve ser usado as propriedades `**backgroundColor**`, `**borderColor**`, `**hoverBackgroundColor**` e `**hoverBorderColor**`. Exemplo:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
var dataPie = {
|
|||
|
|
labels: ['bpm', 'ecm', 'social'],
|
|||
|
|
datasets: [{
|
|||
|
|
label: 'My First Dataset',
|
|||
|
|
data: [300, 50, 100],
|
|||
|
|
backgroundColor: ['#4CAF50', '#8BC34A', '#CDDC39'],
|
|||
|
|
hoverBackgroundColor: ['#45A049', '#7CB342', '#C0CA33'],
|
|||
|
|
borderColor: ['#4CAF50', '#8BC34A', '#CDDC39'],
|
|||
|
|
hoverBorderColor: ['#45A049', '#7CB342', '#C0CA33'],
|
|||
|
|
}]
|
|||
|
|
};
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### **Breaking change: Mudança para adicionar, remover ou atualizar dados nos gráficos.**
|
|||
|
|
|
|||
|
|
Agora, para realizar qualquer alteração em um dado no gráfico, é necessário utilizar o código a seguir:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
// Adiciona novos dados no gráfico
|
|||
|
|
$('#btn-chart-line-add').on('click', function (e) {
|
|||
|
|
e.preventDefault();
|
|||
|
|
line.addData([40, 60], "August");
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
// Adiciona atualiza os dados no gráfico
|
|||
|
|
$('#btn-chart-line-update').on('click', function (e) {
|
|||
|
|
e.preventDefault();
|
|||
|
|
line.data.datasets[0].data[2] = 50;
|
|||
|
|
line.update();
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
// Remove o último dado no gráfico
|
|||
|
|
$('#btn-chart-line-remove').on('click', function (e) {
|
|||
|
|
e.preventDefault();
|
|||
|
|
line.removeData();
|
|||
|
|
});
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### **Alterações por gráfico:**
|
|||
|
|
|
|||
|
|
#### **Gráfico do tipo Line**
|
|||
|
|
|
|||
|
|
| Propriedade | Situação | Orientação |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| scaleShowGridLines | Removida | Para controlar as linhas de grade, agora você deve usar as configurações dentro de scales. |
|
|||
|
|
| scaleGridLineColor | Removida | Use as configurações dentro de scales. |
|
|||
|
|
| scaleGridLineWidth | Removida | Use as configurações dentro de scales. |
|
|||
|
|
| pointDot | Removida | Use point dentro de elements em dataset para controlar os pontos. |
|
|||
|
|
| pointDotRadius | Removida | Use radius dentro de point em elements no nível do conjunto de dados. |
|
|||
|
|
| pointDotStrokeWidth | Removida | Use borderWidth dentro de point em elements no nível do conjunto de dados. |
|
|||
|
|
| pointHitDetectionRadius | Removida | Use hitRadius dentro de point em elements no nível do conjunto de dados. |
|
|||
|
|
| datasetStroke | Removida | Use borderColor dentro de datasets. |
|
|||
|
|
| datasetFill | Removida | Use fill dentro de datasets. |
|
|||
|
|
| legendTemplate | Removida | Não existe mais a propriedade legendTemplate. A lógica para personalizar a legenda agora deve ser feita na propriedade legend. Consulte a documentação para mais detalhes. |
|
|||
|
|
|
|||
|
|
#### **Gráfico do tipo Bar ou Horizontal Bar**
|
|||
|
|
|
|||
|
|
| Propriedade | Situação | Orientação |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| scaleShowGridLines | Removida | Use as configurações dentro de scales para controlar as linhas de grade. |
|
|||
|
|
| scaleGridLineColor | Removida | Use as configurações dentro de scales para definir a cor das linhas de grade. |
|
|||
|
|
| scaleGridLineWidth | Removida | Use as configurações dentro de scales para definir a largura das linhas de grade. |
|
|||
|
|
| barShowStroke | Removida | Use borderColor dentro de datasets para controlar se as barras têm uma borda. |
|
|||
|
|
| barStrokeWidth | Removida | Use borderWidth dentro de datasets para controlar a largura da borda das barras. |
|
|||
|
|
| barDatasetSpacing | Removida | A versão 2.9.4 usa barPercentage e categoryPercentage dentro de scales para controlar o espaçamento entre barras e conjuntos de dados. |
|
|||
|
|
| legendTemplate | Removida | Não existe mais a propriedade legendTemplate. A lógica para personalizar a legenda agora deve ser feita na propriedade legend. Consulte a documentação para mais detalhes. |
|
|||
|
|
|
|||
|
|
#### **Gráfico do tipo Radar**
|
|||
|
|
|
|||
|
|
| Propriedade | Situação | Orientação |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| scaleShowLine | Removida | Use as configurações dentro de scales para controlar a exibição das linhas do eixo. |
|
|||
|
|
| angleShowLineOut | Removida | Não está mais disponível na versão 2.9.4. Considere usar outras propriedades em scales ou gridLines para obter o efeito desejado. |
|
|||
|
|
| scaleShowLabels | Removida | Use as configurações dentro de scales para controlar a exibição de rótulos. |
|
|||
|
|
| angleLineColor | Removida | Use as configurações dentro de gridLines em scales para definir a cor das linhas de grade radiais. |
|
|||
|
|
| pointLabelFontFamily | Removida | Use as configurações dentro de ticks em scales para configurar a família da fonte. |
|
|||
|
|
| pointLabelFontStyle | Removida | Use as configurações dentro de ticks em scales para configurar o estilo da fonte. |
|
|||
|
|
| pointLabelFontSize | Removida | Use as configurações dentro de ticks em scales para configurar o estilo da fonte. |
|
|||
|
|
| pointLabelFontColor | Removida | Use as configurações dentro de ticks em scales para configurar a cor da fonte. |
|
|||
|
|
| pointDot | Removida | Use point dentro de elements em dataset para controlar a exibição de pontos. |
|
|||
|
|
| pointDotRadius | Removida | Use radius dentro de point em elements no nível do conjunto de dados. |
|
|||
|
|
| pointDotStrokeWidth | Removida | Use borderWidth dentro de point em elements no nível do conjunto de dados. |
|
|||
|
|
| pointHitDetectionRadius | Removida | Use hitRadius dentro de point em elements no nível do conjunto de dados. |
|
|||
|
|
| datasetStroke | Removida | Use borderColor dentro de datasets. |
|
|||
|
|
| datasetStrokeWidth | Removida | Use borderWidth dentro de datasets. |
|
|||
|
|
| datasetFill | Removida | Use fill dentro de datasets. |
|
|||
|
|
| legendTemplate | Removida | Não existe mais a propriedade legendTemplate. A lógica para personalizar a legenda agora deve ser feita na propriedade legend. Consulte a documentação para mais detalhes. |
|
|||
|
|
|
|||
|
|
#### **Gráfico do tipo Polar**
|
|||
|
|
|
|||
|
|
| Propriedade | Situação | Orientação |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| scaleShowLabelBackdrop | Removida | O recurso de fundo para rótulos de escala foi removido. |
|
|||
|
|
| scaleBackdropColor | Removida | O fundo para rótulos de escala agora é controlado por backgroundColor em ticks dentro de scales. |
|
|||
|
|
| scaleBackdropPaddingY | Removida | O preenchimento vertical para o fundo dos rótulos de escala agora é configurado por padding em ticks dentro de scales. |
|
|||
|
|
| scaleBackdropPaddingX | Removida | O preenchimento horizontal para o fundo dos rótulos de escala agora é configurado por padding em ticks dentro de scales. |
|
|||
|
|
| scaleShowLine | Removida | Use as configurações dentro de scales para controlar a exibição das linhas do eixo. |
|
|||
|
|
| segmentShowStroke | Removida | A propriedade de controle de traçado de segmento foi removida. O controle de borda agora é feito usando borderColor dentro de datasets. |
|
|||
|
|
| segmentborderColor | Removida | Use borderColor dentro de datasets para controlar a cor da borda do segmento. |
|
|||
|
|
| segmentStrokeWidth | Removida | Use borderWidth dentro de datasets para controlar a largura da borda do segmento. |
|
|||
|
|
| animationSteps | Removida | A animação agora é controlada por animation em options. |
|
|||
|
|
| animationEasing | Removida | Use animation em options para controlar a função de easing. |
|
|||
|
|
| animateRotate | Removida | Use animate em options para controlar a animação de rotação. |
|
|||
|
|
| animateScale | Removida | Use animate em options para controlar a animação de escala. |
|
|||
|
|
| legendTemplate | Removida | Não existe mais a propriedade legendTemplate. A lógica para personalizar a legenda agora deve ser feita na propriedade legend. Consulte a documentação para mais detalhes. |
|
|||
|
|
|
|||
|
|
#### **Gráfico do tipo Pie e Doughnut**
|
|||
|
|
|
|||
|
|
| Propriedade | Situação | Orientação |
|
|||
|
|
| --- | --- | --- |
|
|||
|
|
| segmentShowStroke | Removida | A propriedade de controle de traçado de segmento foi removida. O controle de borda agora é feito usando borderColor dentro de datasets. |
|
|||
|
|
| segmentborderColor | Removida | Use borderColor dentro de datasets para controlar a cor da borda do segmento. |
|
|||
|
|
| segmentStrokeWidth | Removida | Use borderWidth dentro de datasets para controlar a largura da borda do segmento. |
|
|||
|
|
| animationSteps | Removida | A animação agora é controlada por animation em options. |
|
|||
|
|
| animationEasing | Removida | Use animation em options para controlar a função de easing. |
|
|||
|
|
| animateRotate | Removida | Use animate em options para controlar a animação de rotação. |
|
|||
|
|
| animateScale | Removida | Use animate em options para controlar a animação de escala. |
|
|||
|
|
| legendTemplate | Removida | Não existe mais a propriedade legendTemplate. A lógica para personalizar a legenda agora deve ser feita na propriedade legend. Consulte a documentação para mais detalhes. |
|