UNPKG

viser

Version:

viser is a toolkit fit for data vis engineer.

243 lines 4.76 kB
var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; import * as _ from 'lodash'; var QUICK_TYPE = [ { type: 'pie', series: { gemo: 'interval', adjust: 'stack' }, coord: { type: 'theta' } }, { type: 'sector', series: { gemo: 'interval' }, coord: { type: 'polar' } }, { type: 'line', series: { gemo: 'line' } }, { type: 'smoothLine', series: { gemo: 'line', shape: 'smooth' } }, { type: 'dashLine', series: { gemo: 'line', shape: 'dash' } }, { type: 'stackLine', series: { gemo: 'line', adjust: 'stack' } }, { type: 'area', series: { gemo: 'area' } }, { type: 'stackArea', series: { gemo: 'area', adjust: 'stack' } }, { type: 'smoothArea', series: { gemo: 'area', shape: 'smooth' } }, { type: 'interval', series: { gemo: 'interval' } }, { type: 'stackInterval', series: { gemo: 'interval', adjust: 'stack' } }, { type: 'dodgeInterval', series: { gemo: 'interval', shape: 'interval', adjust: 'dodge' } }, { type: 'bar', series: { gemo: 'interval' } }, { type: 'stackBar', series: { gemo: 'interval', shape: 'interval', adjust: 'stack' } }, { type: 'dodgeBar', series: { gemo: 'interval', shape: 'interval', adjust: 'dodge' } }, { type: 'point', series: { gemo: 'point', shape: 'hollowCircle' } }, { type: 'funnel', series: { gemo: 'interval', adjust: 'symmetric', shape: 'funnel' } }, { type: 'pyramid', series: { gemo: 'interval', adjust: 'symmetric', shape: 'pyramid' } }, { type: 'schema', series: { gemo: 'schema', shape: 'box' } }, { type: 'box', series: { gemo: 'schema', shape: 'box' } }, { type: 'candle', series: { gemo: 'schema', shape: 'candle' } }, { type: 'polygon', series: { gemo: 'polygon' } }, { type: 'contour', series: { gemo: 'contour' } }, { type: 'heatmap', series: { gemo: 'heatmap' } }, { type: 'edge', series: { gemo: 'edge' } }, { type: 'sankey', series: { gemo: 'edge', shape: 'sankey' } }, { type: 'errorBar', series: { gemo: 'schema', shape: 'errorbar' } }, { type: 'jitterPoint', series: { gemo: 'point', adjust: 'jitter' } }, { type: 'path', series: { gemo: 'path' } }, { type: 'venn', series: { gemo: 'venn' } }, ]; export var process = function (series, coord) { var quickType = {}; for (var _i = 0, QUICK_TYPE_1 = QUICK_TYPE; _i < QUICK_TYPE_1.length; _i++) { var item = QUICK_TYPE_1[_i]; quickType[item.type] = item; } for (var i = 0; i < series.length; i++) { var currType = quickType[series[i].quickType]; if (currType) { series[i] = __assign({}, currType.series, series[i]); if (coord && coord.type && _.get(currType, 'coord.type') && _.get(currType, 'coord.type') !== coord.type) { throw new Error('quickType and coord had conflicted.'); } } } return series; }; //# sourceMappingURL=setQuickType.js.map