@visactor/vchart-types 2.1.0-alpha.8 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { AStageAnimate } from '@visactor/vrender-animate';
1
+ import { AStageAnimate } from '@visactor/vrender-animate/custom/custom-animate';
2
2
  import { EasingType } from '@visactor/vrender-core';
3
3
  export declare class CallbackDisappearAnimate extends AStageAnimate<any> {
4
4
  protected currentAnimationRatio: number;
@@ -119,6 +119,8 @@ export declare class BaseChart<T extends IChartSpec> extends CompilableBase impl
119
119
  updateGlobalScale(result: IUpdateSpecResult): void;
120
120
  updateGlobalScaleTheme(): void;
121
121
  private _getSpecKeys;
122
+ private _isSeriesRelatedSpecKey;
123
+ private _canChangeSpecKeysWithoutRemake;
122
124
  updateSpec(spec: T): IUpdateSpecResult;
123
125
  updateChartConfig(result: IUpdateSpecResult, oldSpec: IChartSpec): void;
124
126
  updateDataSpec(): void;
@@ -1,9 +1,17 @@
1
1
  import type { IApp, IStage, IStageParams } from '@visactor/vrender-core';
2
2
  import { type RenderMode } from '../typings/spec/common';
3
+ type VRenderAppEnv = 'browser' | 'node' | 'feishu' | 'tt' | 'wx' | 'lynx' | 'harmony';
4
+ export type ResolveVRenderAppOptions = {
5
+ app?: IApp;
6
+ mode?: RenderMode;
7
+ modeParams?: unknown;
8
+ };
3
9
  export type ResolvedVRenderApp = {
4
10
  app: IApp;
5
11
  releaseAppRef?: () => void;
6
12
  };
7
- export declare const getDefaultVRenderApp: (mode?: RenderMode) => IApp;
8
- export declare const resolveVRenderApp: (app: IApp | undefined, mode?: RenderMode) => ResolvedVRenderApp;
13
+ export declare const getVRenderAppEnv: (mode?: RenderMode) => VRenderAppEnv;
14
+ export declare const getVRenderAppEnvParams: (mode?: RenderMode, modeParams?: unknown) => unknown;
15
+ export declare const resolveVRenderApp: (appOrOptions?: IApp | ResolveVRenderAppOptions, mode?: RenderMode) => ResolvedVRenderApp;
9
16
  export declare const createStageFromApp: (app: IApp, params: Partial<IStageParams>) => IStage;
17
+ export {};
@@ -1,5 +1,5 @@
1
1
  import type { IGroup } from '@visactor/vrender-core';
2
- import type { ITickDataOpt } from '@visactor/vrender-components';
2
+ import type { ITickDataOpt } from '@visactor/vrender-components/axis/type';
3
3
  import type { IBaseScale } from '@visactor/vscale';
4
4
  import type { IGraphic } from '@visactor/vrender-core';
5
5
  import type { IOrientType, IPolarOrientType, StringOrNumber, CoordinateType } from '../../typings';
@@ -4,8 +4,8 @@ import { CartesianAxis } from './axis';
4
4
  import type { IAxisHelper, ICartesianAxisCommonTheme, ICartesianLinearAxisSpec } from './interface';
5
5
  import { ComponentTypeEnum } from '../../interface/type';
6
6
  import { LinearAxisMixin } from '../mixin/linear-axis-mixin';
7
- import type { ICartesianTickDataOpt } from '@visactor/vrender-components';
8
- export interface CartesianLinearAxis<T extends ICartesianLinearAxisSpec = ICartesianLinearAxisSpec> extends Pick<LinearAxisMixin, 'setExtraAttrFromSpec' | 'computeLinearDomain' | 'valueToPosition' | 'setScaleNice' | '_domain' | 'transformScaleDomain' | 'setExtendDomain' | '_break'>, CartesianAxis<T> {
7
+ import type { ICartesianTickDataOpt } from '@visactor/vrender-components/axis/type';
8
+ export interface CartesianLinearAxis<T extends ICartesianLinearAxisSpec = ICartesianLinearAxisSpec> extends Pick<LinearAxisMixin, 'setExtraAttrFromSpec' | 'computeLinearDomain' | 'valueToPosition' | 'setScaleNice' | 'reTransformDomainByLayout' | '_domain' | 'transformScaleDomain' | 'setExtendDomain' | '_break'>, CartesianAxis<T> {
9
9
  }
10
10
  export declare class CartesianLinearAxis<T extends ICartesianLinearAxisSpec = ICartesianLinearAxisSpec> extends CartesianAxis<T> {
11
11
  static type: ComponentTypeEnum;
@@ -21,6 +21,7 @@ export declare class CartesianLinearAxis<T extends ICartesianLinearAxisSpec = IC
21
21
  protected _scales: LinearScale[] | LogScale[];
22
22
  setAttrFromSpec(): void;
23
23
  protected initScales(): void;
24
+ updateScaleRange(): boolean;
24
25
  protected _tickTransformOption(): ICartesianTickDataOpt;
25
26
  protected _getUpdateAttribute(ignoreGrid: boolean): any;
26
27
  protected getNewScaleRange(): number[];
@@ -25,6 +25,7 @@ export interface LinearAxisMixin {
25
25
  min?: number;
26
26
  };
27
27
  _tick: ITick | undefined;
28
+ _lastNiceAxisLength?: number;
28
29
  isSeriesDataEnable: any;
29
30
  computeDomain: any;
30
31
  collectData: (depth?: number, rawData?: boolean) => {
@@ -56,6 +57,7 @@ export declare class LinearAxisMixin {
56
57
  setLinearScaleNice(): false | LinearScale;
57
58
  setLogScaleNice(): false | LinearScale;
58
59
  setScaleNice(): false | LinearScale;
60
+ reTransformDomainByLayout(): void;
59
61
  dataToPosition(values: any[], cfg?: IAxisLocationCfg): number;
60
62
  valueToPosition(value: any): number;
61
63
  computeLinearDomain(data: {
@@ -76,6 +76,7 @@ export declare class Brush<T extends IBrushSpec = IBrushSpec> extends BaseCompon
76
76
  [elementKey: string]: IMarkGraphic;
77
77
  }): import("../..").Datum[];
78
78
  private _emitEvent;
79
+ private _setBrushState;
79
80
  private _reconfigItem;
80
81
  private _reconfigLinkedItem;
81
82
  private _isBrushContainItem;
@@ -1,5 +1,5 @@
1
1
  import type { IBoundsLike } from '@visactor/vutils';
2
- import { Tag } from '@visactor/vrender-components';
2
+ import { Tag } from '@visactor/vrender-components/tag';
3
3
  import type { IGraphic } from '@visactor/vrender-core';
4
4
  import { BaseComponent } from '../base/base-component';
5
5
  import type { IPoint, StringOrNumber, TooltipActiveType, TooltipData } from '../../typings';
@@ -2,6 +2,8 @@ import type { IRectMarkSpec, ISymbolMarkSpec, ITextMarkSpec } from '../../../typ
2
2
  import type { DiscreteLegendAttrs, LegendItemDatum, LegendItem, LegendPagerAttributes, LegendScrollbarAttributes } from '@visactor/vrender-components';
3
3
  import type { ILegendCommonSpec, NoVisibleMarkStyle } from '../interface';
4
4
  import type { IFormatMethod, StringOrNumber } from '../../../typings';
5
+ import type { ILayoutRect } from '../../../typings/layout';
6
+ import type { IOrientType } from '../../../typings/space';
5
7
  import type { IBaseScale } from '@visactor/vscale';
6
8
  import type { IGlobalScale } from '../../../scale/interface';
7
9
  import type { ComponentThemeWithDirection } from '../../interface';
@@ -62,6 +64,12 @@ export type ILegendScrollbar = {
62
64
  railStyle?: Omit<Partial<NoVisibleMarkStyle<IRectMarkSpec>>, 'width' | 'height'>;
63
65
  sliderStyle?: Omit<Partial<NoVisibleMarkStyle<IRectMarkSpec>>, 'width' | 'height'>;
64
66
  } & Omit<LegendScrollbarAttributes, 'railStyle' | 'sliderStyle'>;
67
+ export interface IDiscreteLegendArrangeContext {
68
+ rect: ILayoutRect;
69
+ orient: IOrientType;
70
+ id?: StringOrNumber;
71
+ }
72
+ export type DiscreteLegendArrangeCount = number | ((ctx: IDiscreteLegendArrangeContext) => number);
65
73
  export type IDiscreteLegendSpec = ILegendCommonSpec & {
66
74
  type?: 'discrete';
67
75
  data?: (data: LegendItemDatum[], colorScale: IBaseScale, globalScale: IGlobalScale) => LegendItemDatum[];
@@ -71,6 +79,8 @@ export type IDiscreteLegendSpec = ILegendCommonSpec & {
71
79
  scaleName?: string;
72
80
  field?: string;
73
81
  defaultSelected?: string[];
74
- } & Omit<DiscreteLegendAttrs, 'layout' | 'title' | 'items' | 'item' | 'pager'>;
82
+ maxRow?: DiscreteLegendArrangeCount;
83
+ maxCol?: DiscreteLegendArrangeCount;
84
+ } & Omit<DiscreteLegendAttrs, 'layout' | 'title' | 'items' | 'item' | 'pager' | 'maxRow' | 'maxCol'>;
75
85
  export type IDiscreteLegendCommonTheme = Omit<IDiscreteLegendSpec, 'type' | 'data' | 'regionIndex' | 'regionId' | 'seriesIndex' | 'seriesId' | 'id' | 'defaultSelected'>;
76
86
  export type IDiscreteLegendTheme = ComponentThemeWithDirection<IDiscreteLegendCommonTheme>;
@@ -4,7 +4,7 @@ import type { IDiscreteLegendSpec } from './interface';
4
4
  import type { ISeries } from '../../../series/interface';
5
5
  import type { IModelInitOption, IModelSpecInfo } from '../../../model/interface';
6
6
  import { ComponentTypeEnum } from '../../interface/type';
7
- import { DiscreteLegend as LegendComponent } from '@visactor/vrender-components';
7
+ import { DiscreteLegend as LegendComponent } from '@visactor/vrender-components/legend/discrete';
8
8
  import { BaseLegend } from '../base-legend';
9
9
  import type { ILayoutRect } from '../../../typings/layout';
10
10
  import type { StringOrNumber } from '../../../typings';
@@ -1,3 +1,4 @@
1
1
  import type { IDiscreteLegendSpec } from './interface';
2
2
  import type { ILayoutRect } from '../../../typings/layout';
3
- export declare function getLegendAttributes(spec: IDiscreteLegendSpec, rect: ILayoutRect): any;
3
+ import type { IOrientType } from '../../../typings/space';
4
+ export declare function getLegendAttributes(spec: IDiscreteLegendSpec, rect: ILayoutRect, layoutOrient?: IOrientType): any;
@@ -1,9 +1,11 @@
1
+ import type { DataView } from '@visactor/vdataset';
1
2
  import type { IComponent } from '../../../interface';
2
- import type { IAggrType, IMarkerPositionsSpec, IDataPointSpec, IMarkerSpec, IDataPos, IDataPosCallback, IMarkerLabelSpec, IMarkerCrossSeriesSpec, OffsetPoint, MarkerStateValue, MarkerStateCallback, IMarkerSupportSeries } from '../../interface';
3
+ import type { IAggrType, IMarkerAttributeContext, IMarkerPositionsSpec, IDataPointSpec, IMarkerSpec, IDataPos, IDataPosCallback, IMarkerLabelSpec, IMarkerCrossSeriesSpec, OffsetPoint, MarkerStateValue, MarkerStateCallback, IMarkerSupportSeries } from '../../interface';
3
4
  import type { IRegressType } from '../../mark-area/interface';
4
5
  import type { IMarkLineTheme } from './theme';
5
6
  import type { Datum, ILineMarkSpec, IPoint } from '../../../../typings';
6
7
  import type { BaseMarkerAnimation, MarkCommonLineAnimationType } from '@visactor/vrender-components';
8
+ import type { IRegion } from '../../../../region/interface';
7
9
  export type IMarkLine = IComponent;
8
10
  export type IMarkLineSpec = (IMarkerSpec & (IMarkLineXSpec | IMarkLineYSpec | IMarkLineXYSpec | IMarkLineXYY1Spec | IMarkLineYXX1Spec | IMarkLineAngleSpec | IMarkLineRadiusSpec | IMarkLineAngRadRad1Spec | IMarkLineRadAngAng1Spec | IMarkLineAngRadSpec | IMarkLineCoordinateSpec | IMarkerPositionsSpec) & IMarkLineTheme & BaseMarkerAnimation<MarkCommonLineAnimationType>) | (IStepMarkLineSpec & BaseMarkerAnimation<MarkCommonLineAnimationType>);
9
11
  export interface IMarkLineXSpec extends IMarkerCrossSeriesSpec {
@@ -64,7 +66,12 @@ export type IMarkLineCoordinateSpec = {
64
66
  export type IStepMarkLineSpec = IMarkerSpec & {
65
67
  type: 'type-step';
66
68
  connectDirection: 'top' | 'bottom' | 'left' | 'right';
67
- expandDistance?: number | string;
69
+ expandDistance?: number | string | ((markerData: DataView, context: IMarkerAttributeContext & {
70
+ region: IRegion;
71
+ startRegion: IRegion;
72
+ endRegion: IRegion;
73
+ coordinatePoints: IPoint[];
74
+ }) => number | string);
68
75
  label?: IMarkerLabelSpec;
69
76
  line?: {
70
77
  multiSegment?: boolean;
@@ -23,7 +23,8 @@ export * from '../typings/visual';
23
23
  export * from '../typings/tooltip';
24
24
  export * from '../theme/index';
25
25
  export { vglobal, createGroup, createRichText, createText, createArc, createArea, createRect, createLine, createSymbol } from '@visactor/vrender-core';
26
- export { ManualTicker, StreamLight } from '@visactor/vrender-animate';
26
+ export { ManualTicker } from '@visactor/vrender-animate/ticker/manual-ticker';
27
+ export { StreamLight } from '@visactor/vrender-animate/custom/streamLight';
27
28
  export * from '../util/space';
28
29
  export { transformToGraphic } from '../util/style';
29
30
  export { getSpecInfo } from '../component/util';
@@ -86,7 +86,6 @@ export declare class BaseMark<T extends ICommonSpec> extends GrammarItem impleme
86
86
  protected _sharedStateDefinitionsCache?: StateDefinitionsInput<Record<string, unknown>>;
87
87
  protected _sharedStateDefinitionRefIds: WeakMap<object, number>;
88
88
  protected _sharedStateDefinitionRefId: number;
89
- protected _dynamicSharedStateNames: Set<string>;
90
89
  _extensionChannel: {
91
90
  [key: string | number | symbol]: string[];
92
91
  };
@@ -22,6 +22,9 @@ export declare abstract class GlyphMark<T extends ICommonSpec = ICommonSpec, Cfg
22
22
  getPositionChannels(): string[];
23
23
  protected _positionEncoder: (glyphAttrs: any, datum: Datum, g: IGlyph) => Record<string, any>;
24
24
  protected _channelEncoder: Record<string, (channelValue: any) => Record<string, any>>;
25
+ private _getInheritedStyleAttrs;
26
+ private _getInheritedStyleAttrsMap;
27
+ private _syncInheritedStyleAttrs;
25
28
  private _onGlyphAttributeUpdate;
26
29
  protected _setStateOfGraphic: (g: IMarkGraphic) => void;
27
30
  protected _createGraphic(attrs?: IGlyphGraphicAttribute): IGraphic;
@@ -1,9 +1,9 @@
1
1
  import { BaseTooltipHandler } from './base';
2
- import { Tooltip as TooltipComponent } from '@visactor/vrender-components';
2
+ import { Tooltip as TooltipComponent } from '@visactor/vrender-components/tooltip';
3
3
  import type { TooltipHandlerParams } from '../../../component/tooltip';
4
4
  import type { IComponentPluginService } from '../interface';
5
5
  import type { ITooltipActual } from '../../../typings';
6
- import type { IContainerSize } from '@visactor/vrender-components';
6
+ import type { IContainerSize } from '@visactor/vrender-components/tooltip/type';
7
7
  import type { ITooltipAttributes } from './interface';
8
8
  export declare class CanvasTooltipHandler extends BaseTooltipHandler {
9
9
  static readonly type: string;
@@ -20,8 +20,10 @@ export interface ISeriesSpecUpdatePolicy {
20
20
  compileOnlyKeys?: Record<string, true>;
21
21
  dataRelatedKeys?: Record<string, true>;
22
22
  compileOnlySubKeys?: Record<string, Record<string, true>>;
23
+ seriesOnlyKeys?: Record<string, true>;
23
24
  }
24
25
  export declare function markSeriesCompileEffect(compareResult: IUpdateSpecResult, dataRelated?: boolean): void;
26
+ export declare function markSeriesOnlyEffect(compareResult: IUpdateSpecResult): void;
25
27
  export declare abstract class BaseSeries<T extends ISeriesSpec> extends BaseModel<T> implements ISeries {
26
28
  readonly specKey: string;
27
29
  readonly type: string;
@@ -168,6 +170,7 @@ export declare abstract class BaseSeries<T extends ISeriesSpec> extends BaseMode
168
170
  initSeriesStyleState(): void;
169
171
  afterInitMark(): void;
170
172
  getMarksWithoutRoot(): IMark[];
173
+ protected _getMarkSpecNamesForCompare(): string[];
171
174
  getMarksInType(type: string | string[]): IMark[];
172
175
  getMarkInName(name: string): IMark | undefined;
173
176
  getMarkInId(markId: number): IMark | undefined;
@@ -41,6 +41,7 @@ export declare class DotSeries<T extends IDotSeriesSpec = IDotSeriesSpec> extend
41
41
  grid: Record<"background", true>;
42
42
  };
43
43
  dataRelatedKeys?: Record<string, true>;
44
+ seriesOnlyKeys?: Record<string, true>;
44
45
  };
45
46
  initData(): void;
46
47
  getStatisticFields(): {
@@ -4,12 +4,13 @@ import type { IRegion } from '../../region/interface';
4
4
  import type { RenderMode } from '../../typings/spec/common';
5
5
  import type { ISeries } from './series';
6
6
  import type { IMarkOption } from '../../mark/interface';
7
- import type { ISeriesSpec, StringOrNumber } from '../../typings';
7
+ import type { Datum, ISeriesSpec, StringOrNumber } from '../../typings';
8
8
  import type { TransformedLabelSpec } from '../../component/label/interface';
9
9
  import type { SeriesMarkNameEnum, SeriesTypeEnum } from './type';
10
10
  export interface ISeriesSeriesInfo {
11
11
  key: string;
12
12
  originalKey: any;
13
+ datum?: Datum;
13
14
  index?: number;
14
15
  style: (attribute: string) => any;
15
16
  shapeType: string;
@@ -50,6 +50,8 @@ export declare class WaterfallSeries<T extends IWaterfallSeriesSpec = IWaterfall
50
50
  };
51
51
  totalPositionX(datum: Datum, field: string, pos?: number): number;
52
52
  totalPositionY(datum: Datum, field: string, pos?: number): number;
53
+ protected _isCategoryAxisInverse(): boolean;
54
+ protected _getLeaderLineCategoryPos(isStart: boolean, isDecrease: boolean): number;
53
55
  initMarkStyle(): void;
54
56
  protected isVisibleLeaderLine(datum: Datum): boolean;
55
57
  }
@@ -1,7 +1,7 @@
1
1
  import type { IBoundsLike } from '@visactor/vutils';
2
2
  import type { IPoint } from '../typings';
3
3
  import { isNumberClose, isGreater, isLess, normalizeAngle } from '@visactor/vutils';
4
- import { angleLabelOrientAttribute } from '@visactor/vrender-components';
4
+ import { angleLabelOrientAttribute } from '@visactor/vrender-components/axis/util';
5
5
  export declare const isClose: typeof isNumberClose;
6
6
  export { isGreater, isLess, normalizeAngle, angleLabelOrientAttribute };
7
7
  export declare function normalizeStartEndAngle(start: number | null, end: number | null): {
@@ -0,0 +1,4 @@
1
+ import { VChart } from './core';
2
+ export * from './core';
3
+ export { VChart };
4
+ export default VChart;
@@ -1,4 +1,8 @@
1
- import { VChart } from './core';
1
+ import { VChart as BaseVChart } from './core';
2
+ import type { IInitOption, ISpec } from './typings';
2
3
  export * from './core';
4
+ declare class VChart extends BaseVChart {
5
+ constructor(spec: ISpec, options: IInitOption);
6
+ }
3
7
  export { VChart };
4
8
  export default VChart;