UNPKG

@visactor/vmind

Version:

<div align="center"> <a href="https://github.com/VisActor#gh-light-mode-only" target="_blank"> <img alt="VisActor Logo" width="200" src="https://github.com/VisActor/.github/blob/main/profile/logo_500_200_light.svg"/> </a> <a href="https://githu

56 lines (47 loc) 1.81 kB
import { getFieldByDataType } from "../../../../utils/field"; import { LINEAR_COLOR_THEMES } from "../constants"; import { data, discreteLegend } from "./common"; import { DataType } from "../../../../types/base"; import { axis, seriesField } from "./cartesian"; export const colorLine = context => { const {colors: colors, spec: spec, chartTheme: chartTheme} = context; return chartTheme || (colors && colors.length > 0 ? spec.color = colors : (spec.color = LINEAR_COLOR_THEMES.map((c => ({ gradient: "linear", x0: 0, y0: .5, x1: 1, y1: .5, stops: [ { offset: 0, color: c[0] }, { offset: 1, color: c[1] } ] }))), spec.point = { style: {} })), { spec: spec }; }; export const cartesianLine = context => { const {cell: cell, spec: spec, fieldInfo: fieldInfo} = context, cellNew = Object.assign({}, cell); if (spec.xField = cell.x, spec.yField = cell.y, cell.color) spec.seriesField = cell.color; else { const remainedFields = fieldInfo.filter((({fieldName: fieldName}) => !spec.xField.includes(fieldName) && spec.yField !== fieldName)), colorField = getFieldByDataType(remainedFields, [ DataType.STRING, DataType.DATE ]); colorField && (spec.seriesField = colorField.fieldName, cellNew.color = colorField.fieldName); } return { spec: spec, cell: cellNew }; }; export const displayConfLine = context => { const {spec: spec, chartTheme: chartTheme} = context; return chartTheme || (spec.line = { style: {} }), { spec: spec }; }; export const pipelineLine = [ data, colorLine, cartesianLine, seriesField, axis, discreteLegend, displayConfLine ]; //# sourceMappingURL=line.js.map