| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- import { __assign } from "tslib";
- import { tooltip } from '../../adaptor/common';
- import { deepAssign, flow } from '../../utils';
- import { adaptor as columnAdaptor } from '../column/adaptor';
- export { meta } from '../column/adaptor';
- /**
- * 处理默认配置项
- * 1. switch xField、 yField
- * 2. switch xAxis、 yAxis and adjust axis.position configuration
- */
- function defaultOptions(params) {
- var options = params.options;
- var xField = options.xField, yField = options.yField, xAxis = options.xAxis, yAxis = options.yAxis;
- var position = {
- left: 'bottom',
- right: 'top',
- top: 'left',
- bottom: 'right',
- };
- var verticalAxis = yAxis !== false
- ? __assign({ position: position[(yAxis === null || yAxis === void 0 ? void 0 : yAxis.position) || 'left'] }, yAxis) : false;
- var horizontalAxis = xAxis !== false
- ? __assign({ position: position[(xAxis === null || xAxis === void 0 ? void 0 : xAxis.position) || 'bottom'] }, xAxis) : false;
- return __assign(__assign({}, params), { options: __assign(__assign({}, options), { xField: yField, yField: xField,
- // 条形图 xAxis,yAxis 不可以做 deepAssign
- xAxis: verticalAxis, yAxis: horizontalAxis }) });
- }
- /**
- * label 适配器
- * @param params
- */
- function label(params) {
- var options = params.options;
- var label = options.label;
- // label of bar charts default position is left, if plot has label
- if (label && !label.position) {
- label.position = 'left';
- // 配置默认的 label layout: 如果用户没有指定 layout 和 position, 则自动配置 layout
- if (!label.layout) {
- label.layout = [
- { type: 'interval-adjust-position' },
- { type: 'interval-hide-overlap' },
- { type: 'adjust-color' },
- { type: 'limit-in-plot', cfg: { action: 'hide' } },
- ];
- }
- }
- return deepAssign({}, params, { options: { label: label } });
- }
- /**
- * legend 适配器
- * @param params
- */
- function legend(params) {
- var options = params.options;
- // 默认 legend 位置
- var seriesField = options.seriesField, isStack = options.isStack;
- var legend = options.legend;
- if (seriesField) {
- if (legend !== false) {
- legend = __assign({ position: isStack ? 'top-left' : 'right-top' }, (legend || {}));
- }
- }
- else {
- legend = false;
- }
- return deepAssign({}, params, { options: { legend: legend } });
- }
- /**
- * coordinate 适配器
- * @param params
- */
- function coordinate(params) {
- // transpose column to bar 对角变换 & y 方向镜像变换
- var options = params.options;
- var coordinateOptions = [{ type: 'transpose' }, { type: 'reflectY' }].concat(options.coordinate || []);
- return deepAssign({}, params, { options: { coordinate: coordinateOptions } });
- }
- /**
- * 柱形图适配器
- * @param params
- */
- export function geometry(params) {
- var chart = params.chart, options = params.options;
- var barStyle = options.barStyle, barWidthRatio = options.barWidthRatio, minBarWidth = options.minBarWidth, maxBarWidth = options.maxBarWidth, barBackground = options.barBackground;
- return columnAdaptor({
- chart: chart,
- options: __assign(__assign({}, options), {
- // rename attrs as column
- columnStyle: barStyle, columnWidthRatio: barWidthRatio, minColumnWidth: minBarWidth, maxColumnWidth: maxBarWidth, columnBackground: barBackground }),
- }, true);
- }
- /**
- * @param chart
- * @param options
- */
- export function adaptor(params) {
- // flow 的方式处理所有的配置到 G2 API
- return flow(defaultOptions, label, legend, tooltip, coordinate, geometry)(params);
- }
- //# sourceMappingURL=adaptor.js.map
|