You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@echarts.apache.org by sh...@apache.org on 2021/09/09 02:49:06 UTC
[echarts] branch improve-types updated: fix(type): fix some type
errors in custom series
This is an automated email from the ASF dual-hosted git repository.
shenyi pushed a commit to branch improve-types
in repository https://gitbox.apache.org/repos/asf/echarts.git
The following commit(s) were added to refs/heads/improve-types by this push:
new 179b20a fix(type): fix some type errors in custom series
179b20a is described below
commit 179b20ad52c3a0d9428a0cf93315369b10f39416
Author: pissang <bm...@gmail.com>
AuthorDate: Thu Sep 9 10:48:16 2021 +0800
fix(type): fix some type errors in custom series
---
src/chart/custom/CustomSeries.ts | 32 ++++++++++++++++++++++++--------
src/chart/custom/CustomView.ts | 18 +++++++++---------
src/layout/barGrid.ts | 10 +++++-----
3 files changed, 38 insertions(+), 22 deletions(-)
diff --git a/src/chart/custom/CustomSeries.ts b/src/chart/custom/CustomSeries.ts
index 2b8bb3c..c34cbdf 100644
--- a/src/chart/custom/CustomSeries.ts
+++ b/src/chart/custom/CustomSeries.ts
@@ -335,13 +335,8 @@ type CustomSeriesRenderItem = (
api: CustomSeriesRenderItemAPI
) => CustomElementOption;
-interface CustomSeriesStateOption {
- itemStyle?: ItemStyleOption;
- label?: LabelOption;
-}
-
export interface CustomSeriesOption extends
- SeriesOption<never>, // don't support StateOption in custom series.
+ SeriesOption<unknown>, // don't support StateOption in custom series.
SeriesEncodeOptionMixin,
SeriesOnCartesianOptionMixin,
SeriesOnPolarOptionMixin,
@@ -356,12 +351,33 @@ export interface CustomSeriesOption extends
renderItem?: CustomSeriesRenderItem;
+ /**
+ * @deprecated
+ */
+ itemStyle?: ItemStyleOption;
+ /**
+ * @deprecated
+ */
+ label?: LabelOption;
+
+ /**
+ * @deprecated
+ */
+ emphasis?: {
+ /**
+ * @deprecated
+ */
+ itemStyle?: ItemStyleOption;
+ /**
+ * @deprecated
+ */
+ label?: LabelOption;
+ }
+
// Only works on polar and cartesian2d coordinate system.
clip?: boolean;
}
-export interface LegacyCustomSeriesOption extends SeriesOption<CustomSeriesStateOption>, CustomSeriesStateOption {}
-
export const customInnerStore = makeInner<{
info: CustomExtraElementInfo;
customPathData: string;
diff --git a/src/chart/custom/CustomView.ts b/src/chart/custom/CustomView.ts
index 1ba6d86..ae042b7 100644
--- a/src/chart/custom/CustomView.ts
+++ b/src/chart/custom/CustomView.ts
@@ -82,7 +82,6 @@ import CustomSeriesModel, {
CustomDisplayableOption,
CustomSeriesRenderItemAPI,
CustomSeriesRenderItemParams,
- LegacyCustomSeriesOption,
CustomGroupOption,
WrapEncodeDefRet,
NonStyleVisualProps,
@@ -102,6 +101,7 @@ import {
prepareTransformTransitionFrom
} from './prepare';
import { PatternObject } from 'zrender/src/graphic/Pattern';
+import { CustomSeriesOption } from '../../export/option';
const transformPropNamesStr = keys(TRANSFORM_PROPS).join(', ');
@@ -879,23 +879,23 @@ function makeRenderItem(
// Do not support call `api` asynchronously without dataIndexInside input.
let currDataIndexInside: number;
- let currItemModel: Model<LegacyCustomSeriesOption>;
- let currItemStyleModels: Partial<Record<DisplayState, Model<LegacyCustomSeriesOption['itemStyle']>>> = {};
- let currLabelModels: Partial<Record<DisplayState, Model<LegacyCustomSeriesOption['label']>>> = {};
+ let currItemModel: Model<CustomSeriesOption>;
+ let currItemStyleModels: Partial<Record<DisplayState, Model<CustomSeriesOption['itemStyle']>>> = {};
+ let currLabelModels: Partial<Record<DisplayState, Model<CustomSeriesOption['label']>>> = {};
- const seriesItemStyleModels = {} as Record<DisplayState, Model<LegacyCustomSeriesOption['itemStyle']>>;
+ const seriesItemStyleModels = {} as Record<DisplayState, Model<CustomSeriesOption['itemStyle']>>;
- const seriesLabelModels = {} as Record<DisplayState, Model<LegacyCustomSeriesOption['label']>>;
+ const seriesLabelModels = {} as Record<DisplayState, Model<CustomSeriesOption['label']>>;
for (let i = 0; i < STATES.length; i++) {
const stateName = STATES[i];
- seriesItemStyleModels[stateName] = (customSeries as Model<LegacyCustomSeriesOption>)
+ seriesItemStyleModels[stateName] = (customSeries as Model<CustomSeriesOption>)
.getModel(PATH_ITEM_STYLE[stateName]);
- seriesLabelModels[stateName] = (customSeries as Model<LegacyCustomSeriesOption>)
+ seriesLabelModels[stateName] = (customSeries as Model<CustomSeriesOption>)
.getModel(PATH_LABEL[stateName]);
}
- function getItemModel(dataIndexInside: number): Model<LegacyCustomSeriesOption> {
+ function getItemModel(dataIndexInside: number): Model<CustomSeriesOption> {
return dataIndexInside === currDataIndexInside
? (currItemModel || (currItemModel = data.getItemModel(dataIndexInside)))
: data.getItemModel(dataIndexInside);
diff --git a/src/layout/barGrid.ts b/src/layout/barGrid.ts
index 4a7c908..9c78076 100644
--- a/src/layout/barGrid.ts
+++ b/src/layout/barGrid.ts
@@ -77,11 +77,11 @@ type BarWidthAndOffset = Dictionary<Dictionary<{
export interface BarGridLayoutOptionForCustomSeries {
count: number
- barWidth?: number
- barMaxWidth?: number
- barMinWidth?: number
- barGap?: number
- barCategoryGap?: number
+ barWidth?: number | string
+ barMaxWidth?: number | string
+ barMinWidth?: number | string
+ barGap?: number | string
+ barCategoryGap?: number | string
}
interface LayoutOption extends BarGridLayoutOptionForCustomSeries {
axis: Axis2D
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@echarts.apache.org
For additional commands, e-mail: commits-help@echarts.apache.org