This commit is contained in:
Jan Prochazka
2021-01-23 07:22:09 +01:00
parent 37cc86f8d2
commit 451af5d09f
141 changed files with 763 additions and 787 deletions

View File

@@ -19,7 +19,7 @@ import { presetPrimaryColors } from '@ant-design/colors';
import ErrorInfo from '../widgets/ErrorInfo';
const LeftContainer = styled.div`
background-color: ${(props) => props.theme.manager_background};
background-color: ${props => props.theme.manager_background};
display: flex;
flex: 1;
`;
@@ -71,7 +71,7 @@ export default function ChartEditor({ data, config, setConfig, sql, conid, datab
React.useEffect(() => {
if (data) {
setAvailableColumnNames(data ? data.structure.columns.map((x) => x.columnName) : []);
setAvailableColumnNames(data ? data.structure.columns.map(x => x.columnName) : []);
}
}, [data]);
@@ -119,21 +119,21 @@ export default function ChartEditor({ data, config, setConfig, sql, conid, datab
{availableColumnNames.length > 0 && (
<FormSelectField label="Label column" name="labelColumn">
<option value=""></option>
{availableColumnNames.map((col) => (
{availableColumnNames.map(col => (
<option value={col} key={col}>
{col}
</option>
))}
</FormSelectField>
)}
{availableColumnNames.map((col) => (
{availableColumnNames.map(col => (
<React.Fragment key={col}>
<FormCheckboxField label={col} name={`dataColumn_${col}`} />
{config[`dataColumn_${col}`] && (
<FormSelectField label="Color" name={`dataColumnColor_${col}`}>
<option value="">Random</option>
{_.keys(presetPrimaryColors).map((color) => (
{_.keys(presetPrimaryColors).map(color => (
<option value={color} key={color}>
{_.startCase(color)}
</option>

View File

@@ -27,8 +27,8 @@ function getTimeAxis(labels) {
function getLabels(labelValues, timeAxis, chartType) {
if (!timeAxis) return labelValues;
if (chartType === 'line') return timeAxis.map((x) => x.toDate());
return timeAxis.map((x) => x.format('D. M. YYYY'));
if (chartType === 'line') return timeAxis.map(x => x.toDate());
return timeAxis.map(x => x.format('D. M. YYYY'));
}
function getOptions(timeAxis, chartType) {
@@ -70,7 +70,7 @@ function createChartData(freeData, labelColumn, dataColumns, colorSeed, chartTyp
});
let backgroundColor = null;
let borderColor = null;
const labelValues = freeData.rows.map((x) => x[labelColumn]);
const labelValues = freeData.rows.map(x => x[labelColumn]);
const timeAxis = getTimeAxis(labelValues);
const labels = getLabels(labelValues, timeAxis, chartType);
const res = {
@@ -91,7 +91,7 @@ function createChartData(freeData, labelColumn, dataColumns, colorSeed, chartTyp
return {
label: dataColumn,
data: freeData.rows.map((row) => row[dataColumn]),
data: freeData.rows.map(row => row[dataColumn]),
backgroundColor,
borderColor,
borderWidth: 1,

View File

@@ -19,7 +19,7 @@ export async function loadChartStructure(driver: EngineDriver, conid, database,
dumpSqlSelect(dmp, select);
const resp = await axios.post('database-connections/query-data', { conid, database, sql: dmp.s });
if (resp.data.errorMessage) throw new Error(resp.data.errorMessage);
return resp.data.columns.map((x) => x.columnName);
return resp.data.columns.map(x => x.columnName);
}
export async function loadChartData(driver: EngineDriver, conid, database, sql, config) {
@@ -38,7 +38,7 @@ export async function loadChartData(driver: EngineDriver, conid, database, sql,
alias: labelColumn,
},
// @ts-ignore
...dataColumns.map((columnName) => ({
...dataColumns.map(columnName => ({
exprType: 'call',
func: 'SUM',
args: [
@@ -81,12 +81,12 @@ export async function loadChartData(driver: EngineDriver, conid, database, sql,
rows = _.reverse([...rows]);
}
if (showRelativeValues) {
const maxValues = dataColumns.map((col) => _.max(rows.map((row) => row[col])));
const maxValues = dataColumns.map(col => _.max(rows.map(row => row[col])));
for (const [col, max] of _.zip(dataColumns, maxValues)) {
if (!max) continue;
if (!_.isNumber(max)) continue;
if (!(max > 0)) continue;
rows = rows.map((row) => ({
rows = rows.map(row => ({
...row,
[col]: (row[col] / max) * 100,
}));