@visactor/vchart 2.1.2 → 2.1.3-alpha.1
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.
- package/build/es5/index.js +1 -1
- package/build/index.es.js +24552 -69025
- package/build/index.js +54 -29
- package/build/index.min.js +2 -2
- package/build/tsconfig.tsbuildinfo +1 -1
- package/cjs/core/factory-registry.d.ts +69 -0
- package/cjs/core/factory-registry.js +39 -0
- package/cjs/core/factory-registry.js.map +1 -0
- package/cjs/core/factory.js +20 -19
- package/cjs/core/factory.js.map +1 -1
- package/cjs/core/index.d.ts +1 -1
- package/cjs/core/index.js +1 -1
- package/cjs/core/index.js.map +1 -1
- package/esm/core/factory-registry.d.ts +69 -0
- package/esm/core/factory-registry.js +33 -0
- package/esm/core/factory-registry.js.map +1 -0
- package/esm/core/factory.js +16 -19
- package/esm/core/factory.js.map +1 -1
- package/esm/core/index.d.ts +1 -1
- package/esm/core/index.js +1 -1
- package/esm/core/index.js.map +1 -1
- package/package.json +9 -9
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type { Transform, Parser } from '@visactor/vdataset';
|
|
2
|
+
import type { IChartConstructor } from '../chart/interface';
|
|
3
|
+
import type { ISeriesConstructor } from '../series/interface';
|
|
4
|
+
import type { IComponentConstructor } from '../component/interface';
|
|
5
|
+
import type { MarkConstructor } from '../mark/interface';
|
|
6
|
+
import type { IRegionConstructor } from '../region/interface';
|
|
7
|
+
import type { ILayoutConstructor } from '../layout/interface';
|
|
8
|
+
import type { IChartPluginConstructor } from '../plugin/chart/interface';
|
|
9
|
+
import type { IComponentPluginConstructor } from '../plugin/components/interface';
|
|
10
|
+
import type { IGraphic } from '@visactor/vrender-core';
|
|
11
|
+
import type { GrammarTransformOption, IStageEventPlugin, VRenderComponentOptions } from './interface';
|
|
12
|
+
import type { MarkAnimationSpec } from '../animation/interface';
|
|
13
|
+
import type { ITriggerConstructor } from '../interaction/interface/trigger';
|
|
14
|
+
import type { IComposedEventConstructor } from '../index-harmony-simple';
|
|
15
|
+
import type { ITooltipProcessorConstructor } from '../component/tooltip/processor/interface';
|
|
16
|
+
import type { IVChartPluginConstructor } from '../plugin/vchart';
|
|
17
|
+
export interface IFactoryRegistry {
|
|
18
|
+
charts: {
|
|
19
|
+
[key: string]: IChartConstructor;
|
|
20
|
+
};
|
|
21
|
+
series: {
|
|
22
|
+
[key: string]: ISeriesConstructor;
|
|
23
|
+
};
|
|
24
|
+
components: {
|
|
25
|
+
[key: string]: {
|
|
26
|
+
cmp: IComponentConstructor;
|
|
27
|
+
alwaysCheck?: boolean;
|
|
28
|
+
createOrder: number;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
graphicComponents: Record<string, (attrs: any, options?: VRenderComponentOptions) => IGraphic>;
|
|
32
|
+
marks: {
|
|
33
|
+
[key: string]: MarkConstructor;
|
|
34
|
+
};
|
|
35
|
+
regions: {
|
|
36
|
+
[key: string]: IRegionConstructor;
|
|
37
|
+
};
|
|
38
|
+
animations: {
|
|
39
|
+
[key: string]: (params?: any, preset?: any) => MarkAnimationSpec;
|
|
40
|
+
};
|
|
41
|
+
implements: {
|
|
42
|
+
[key: string]: (...args: any) => void;
|
|
43
|
+
};
|
|
44
|
+
chartPlugin: {
|
|
45
|
+
[key: string]: IChartPluginConstructor;
|
|
46
|
+
};
|
|
47
|
+
vChartPlugin: {
|
|
48
|
+
[key: string]: IVChartPluginConstructor;
|
|
49
|
+
};
|
|
50
|
+
componentPlugin: {
|
|
51
|
+
[key: string]: IComponentPluginConstructor;
|
|
52
|
+
};
|
|
53
|
+
transforms: {
|
|
54
|
+
[key: string]: Transform;
|
|
55
|
+
};
|
|
56
|
+
dataParser: {
|
|
57
|
+
[key: string]: Parser;
|
|
58
|
+
};
|
|
59
|
+
layout: {
|
|
60
|
+
[key: string]: ILayoutConstructor;
|
|
61
|
+
};
|
|
62
|
+
grammarTransforms: Record<string, GrammarTransformOption>;
|
|
63
|
+
stageEventPlugins: Record<string, IStageEventPlugin<any>>;
|
|
64
|
+
interactionTriggers: Record<string, ITriggerConstructor>;
|
|
65
|
+
composedEventMap: Record<string, IComposedEventConstructor>;
|
|
66
|
+
tooltipProcessors: Record<string, ITooltipProcessorConstructor>;
|
|
67
|
+
formatter?: (text: string | number | string[] | number[], datum: any, formatter: string | string[]) => any;
|
|
68
|
+
}
|
|
69
|
+
export declare const factoryRegistry: IFactoryRegistry;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.factoryRegistry = void 0;
|
|
6
|
+
|
|
7
|
+
const vdataset_1 = require("@visactor/vdataset");
|
|
8
|
+
|
|
9
|
+
exports.factoryRegistry = {
|
|
10
|
+
charts: {},
|
|
11
|
+
series: {},
|
|
12
|
+
components: {},
|
|
13
|
+
graphicComponents: {},
|
|
14
|
+
marks: {},
|
|
15
|
+
regions: {},
|
|
16
|
+
animations: {},
|
|
17
|
+
implements: {},
|
|
18
|
+
chartPlugin: {},
|
|
19
|
+
vChartPlugin: {},
|
|
20
|
+
componentPlugin: {},
|
|
21
|
+
transforms: {
|
|
22
|
+
fields: vdataset_1.fields,
|
|
23
|
+
filter: vdataset_1.filter,
|
|
24
|
+
fold: vdataset_1.fold
|
|
25
|
+
},
|
|
26
|
+
dataParser: {
|
|
27
|
+
csv: vdataset_1.csvParser,
|
|
28
|
+
dsv: vdataset_1.dsvParser,
|
|
29
|
+
tsv: vdataset_1.tsvParser
|
|
30
|
+
},
|
|
31
|
+
layout: {},
|
|
32
|
+
grammarTransforms: {},
|
|
33
|
+
stageEventPlugins: {},
|
|
34
|
+
interactionTriggers: {},
|
|
35
|
+
composedEventMap: {},
|
|
36
|
+
tooltipProcessors: {},
|
|
37
|
+
formatter: void 0
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=factory-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/core/factory-registry.ts"],"names":[],"mappings":";;;AAEA,iDAA2F;AA8C9E,QAAA,eAAe,GAAqB;IAC/C,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;IACV,UAAU,EAAE,EAAE;IACd,iBAAiB,EAAE,EAAE;IACrB,KAAK,EAAE,EAAE;IACT,OAAO,EAAE,EAAE;IACX,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,EAAE;IACf,YAAY,EAAE,EAAE;IAChB,eAAe,EAAE,EAAE;IACnB,UAAU,EAAE;QAEV,MAAM,EAAN,iBAAM;QACN,MAAM,EAAN,iBAAM;QACN,IAAI,EAAJ,eAAI;KACL;IACD,UAAU,EAAE;QAEV,GAAG,EAAE,oBAAS;QACd,GAAG,EAAE,oBAAS;QACd,GAAG,EAAE,oBAAS;KACf;IACD,MAAM,EAAE,EAAE;IACV,iBAAiB,EAAE,EAAE;IACrB,iBAAiB,EAAE,EAAE;IACrB,mBAAmB,EAAE,EAAE;IACvB,gBAAgB,EAAE,EAAE;IACpB,iBAAiB,EAAE,EAAE;IACrB,SAAS,EAAE,SAAS;CACrB,CAAC","file":"factory-registry.js","sourcesContent":["import type { Transform, Parser } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { fields, filter, fold, csvParser, dsvParser, tsvParser } from '@visactor/vdataset';\nimport type { IChartConstructor } from '../chart/interface';\nimport type { ISeriesConstructor } from '../series/interface';\nimport type { IComponentConstructor } from '../component/interface';\nimport type { MarkConstructor } from '../mark/interface';\nimport type { IRegionConstructor } from '../region/interface';\nimport type { ILayoutConstructor } from '../layout/interface';\nimport type { IChartPluginConstructor } from '../plugin/chart/interface';\nimport type { IComponentPluginConstructor } from '../plugin/components/interface';\nimport type { IGraphic } from '@visactor/vrender-core';\nimport type { GrammarTransformOption, IStageEventPlugin, VRenderComponentOptions } from './interface';\nimport type { MarkAnimationSpec } from '../animation/interface';\nimport type { ITriggerConstructor } from '../interaction/interface/trigger';\nimport type { IComposedEventConstructor } from '../index-harmony-simple';\nimport type { ITooltipProcessorConstructor } from '../component/tooltip/processor/interface';\nimport type { IVChartPluginConstructor } from '../plugin/vchart';\n\nexport interface IFactoryRegistry {\n charts: { [key: string]: IChartConstructor };\n series: { [key: string]: ISeriesConstructor };\n components: {\n [key: string]: {\n cmp: IComponentConstructor;\n alwaysCheck?: boolean;\n createOrder: number;\n };\n };\n graphicComponents: Record<string, (attrs: any, options?: VRenderComponentOptions) => IGraphic>;\n marks: { [key: string]: MarkConstructor };\n regions: { [key: string]: IRegionConstructor };\n animations: { [key: string]: (params?: any, preset?: any) => MarkAnimationSpec };\n implements: { [key: string]: (...args: any) => void };\n chartPlugin: { [key: string]: IChartPluginConstructor };\n vChartPlugin: { [key: string]: IVChartPluginConstructor };\n componentPlugin: { [key: string]: IComponentPluginConstructor };\n transforms: { [key: string]: Transform };\n dataParser: { [key: string]: Parser };\n layout: { [key: string]: ILayoutConstructor };\n grammarTransforms: Record<string, GrammarTransformOption>;\n stageEventPlugins: Record<string, IStageEventPlugin<any>>;\n interactionTriggers: Record<string, ITriggerConstructor>;\n composedEventMap: Record<string, IComposedEventConstructor>;\n tooltipProcessors: Record<string, ITooltipProcessorConstructor>;\n formatter?: (text: string | number | string[] | number[], datum: any, formatter: string | string[]) => any;\n}\n\nexport const factoryRegistry: IFactoryRegistry = {\n charts: {},\n series: {},\n components: {},\n graphicComponents: {},\n marks: {},\n regions: {},\n animations: {},\n implements: {},\n chartPlugin: {},\n vChartPlugin: {},\n componentPlugin: {},\n transforms: {\n // buildIn transforms\n fields,\n filter,\n fold\n },\n dataParser: {\n // buildIn parser\n csv: csvParser,\n dsv: dsvParser,\n tsv: tsvParser\n },\n layout: {},\n grammarTransforms: {},\n stageEventPlugins: {},\n interactionTriggers: {},\n composedEventMap: {},\n tooltipProcessors: {},\n formatter: undefined\n};\n"]}
|
package/cjs/core/factory.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.Factory = void 0;
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
const factory_registry_1 = require("./factory-registry");
|
|
8
8
|
|
|
9
9
|
class Factory {
|
|
10
10
|
static registerChart(key, chart) {
|
|
@@ -154,10 +154,11 @@ class Factory {
|
|
|
154
154
|
return Factory._componentPlugin[type];
|
|
155
155
|
}
|
|
156
156
|
static registerFormatter(func) {
|
|
157
|
-
this._formatter = func;
|
|
157
|
+
this._formatter = func, factory_registry_1.factoryRegistry.formatter = func;
|
|
158
158
|
}
|
|
159
159
|
static getFormatter() {
|
|
160
|
-
|
|
160
|
+
var _a;
|
|
161
|
+
return null !== (_a = factory_registry_1.factoryRegistry.formatter) && void 0 !== _a ? _a : this._formatter;
|
|
161
162
|
}
|
|
162
163
|
static createInteractionTrigger(interactionType, options) {
|
|
163
164
|
const Ctor = Factory._interactionTriggers[interactionType];
|
|
@@ -171,29 +172,29 @@ class Factory {
|
|
|
171
172
|
}
|
|
172
173
|
}
|
|
173
174
|
|
|
174
|
-
exports.Factory = Factory, Factory._charts =
|
|
175
|
-
Factory.
|
|
176
|
-
Factory.
|
|
177
|
-
Factory.
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
tsv: vdataset_1.tsvParser
|
|
185
|
-
}, Factory._layout = {}, Factory._grammarTransforms = {}, Factory._stageEventPlugins = {},
|
|
175
|
+
exports.Factory = Factory, Factory._charts = factory_registry_1.factoryRegistry.charts,
|
|
176
|
+
Factory._series = factory_registry_1.factoryRegistry.series, Factory._components = factory_registry_1.factoryRegistry.components,
|
|
177
|
+
Factory._graphicComponents = factory_registry_1.factoryRegistry.graphicComponents,
|
|
178
|
+
Factory._marks = factory_registry_1.factoryRegistry.marks, Factory._regions = factory_registry_1.factoryRegistry.regions,
|
|
179
|
+
Factory._animations = factory_registry_1.factoryRegistry.animations, Factory._implements = factory_registry_1.factoryRegistry.implements,
|
|
180
|
+
Factory._chartPlugin = factory_registry_1.factoryRegistry.chartPlugin, Factory._vChartPlugin = factory_registry_1.factoryRegistry.vChartPlugin,
|
|
181
|
+
Factory._componentPlugin = factory_registry_1.factoryRegistry.componentPlugin, Factory.transforms = factory_registry_1.factoryRegistry.transforms,
|
|
182
|
+
Factory.dataParser = factory_registry_1.factoryRegistry.dataParser, Factory._layout = factory_registry_1.factoryRegistry.layout,
|
|
183
|
+
Factory._grammarTransforms = factory_registry_1.factoryRegistry.grammarTransforms,
|
|
184
|
+
Factory._stageEventPlugins = factory_registry_1.factoryRegistry.stageEventPlugins,
|
|
186
185
|
Factory.registerStageEventPlugin = (type, Plugin) => {
|
|
187
186
|
Factory._stageEventPlugins[type] = Plugin;
|
|
188
|
-
}, Factory.getStageEventPlugin = type => Factory._stageEventPlugins[type], Factory._interactionTriggers =
|
|
187
|
+
}, Factory.getStageEventPlugin = type => Factory._stageEventPlugins[type], Factory._interactionTriggers = factory_registry_1.factoryRegistry.interactionTriggers,
|
|
189
188
|
Factory.registerInteractionTrigger = (interactionType, interaction) => {
|
|
190
189
|
Factory._interactionTriggers[interactionType] = interaction;
|
|
191
|
-
}, Factory._composedEventMap =
|
|
190
|
+
}, Factory._composedEventMap = factory_registry_1.factoryRegistry.composedEventMap,
|
|
191
|
+
Factory.registerComposedEvent = (eType, composedEvent) => {
|
|
192
192
|
Factory._composedEventMap[eType] = composedEvent;
|
|
193
|
-
}, Factory._tooltipProcessors =
|
|
193
|
+
}, Factory._tooltipProcessors = factory_registry_1.factoryRegistry.tooltipProcessors,
|
|
194
|
+
Factory.registerTooltipProcessor = (type, processor) => {
|
|
194
195
|
Factory._tooltipProcessors[type] = processor;
|
|
195
196
|
}, Factory.createTooltipProcessor = (type, tooltip) => {
|
|
196
197
|
const Cror = Factory._tooltipProcessors[type];
|
|
197
198
|
return Cror ? new Cror(tooltip) : null;
|
|
198
199
|
};
|
|
199
|
-
//# sourceMappingURL=factory.js.map
|
|
200
|
+
//# sourceMappingURL=factory.js.map
|
package/cjs/core/factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/core/factory.ts"],"names":[],"mappings":"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","file":"factory.js","sourcesContent":["import type {\n IChartConstructor,\n IChartOption,\n IChart,\n IChartSpecTransformerOption,\n IChartSpecTransformer\n} from '../chart/interface';\nimport type { ISeriesConstructor, ISeriesMarkInfo, ISeriesOption, SeriesMarkNameEnum } from '../series/interface';\nimport type { IComponentConstructor } from '../component/interface';\nimport type { IMarkConstructor, IMarkOption, MarkConstructor } from '../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from '../mark/interface/type';\nimport type { IRegion, IRegionConstructor } from '../region/interface';\nimport type { IBaseModelSpecTransformer, IBaseModelSpecTransformerOption, IModelOption } from '../model/interface';\nimport type { Transform, Parser } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { fields, filter, fold, csvParser, dsvParser, tsvParser } from '@visactor/vdataset';\nimport type { ILayoutConstructor } from '../layout/interface';\nimport type { IChartPluginConstructor } from '../plugin/chart/interface';\nimport type { IComponentPluginConstructor } from '../plugin/components/interface';\nimport type { IGraphic } from '@visactor/vrender-core';\nimport type { GrammarTransformOption, IStageEventPlugin, VRenderComponentOptions } from './interface';\nimport type { MarkAnimationSpec } from '../animation/interface';\nimport type { IBaseTriggerOptions, ITriggerConstructor } from '../interaction/interface/trigger';\nimport type { IComposedEventConstructor } from '../index-harmony-simple';\nimport type { ITooltipProcessorConstructor } from '../component/tooltip/processor/interface';\nimport type { ITooltip } from '../component';\nimport type { IVChartPluginConstructor } from '../plugin/vchart';\n\nexport class Factory {\n private static _charts: { [key: string]: IChartConstructor } = {};\n private static _series: { [key: string]: ISeriesConstructor } = {};\n private static _components: {\n [key: string]: {\n cmp: IComponentConstructor;\n alwaysCheck?: boolean;\n createOrder: number;\n };\n } = {};\n private static _graphicComponents: Record<string, (attrs: any, options?: VRenderComponentOptions) => IGraphic> = {};\n private static _marks: { [key: string]: MarkConstructor } = {};\n private static _regions: { [key: string]: IRegionConstructor } = {};\n private static _animations: { [key: string]: (params?: any, preset?: any) => MarkAnimationSpec } = {};\n private static _implements: { [key: string]: (...args: any) => void } = {};\n private static _chartPlugin: { [key: string]: IChartPluginConstructor } = {};\n private static _vChartPlugin: { [key: string]: IVChartPluginConstructor } = {};\n private static _componentPlugin: { [key: string]: IComponentPluginConstructor } = {};\n private static _formatter: (\n text: string | number | string[] | number[],\n datum: any,\n formatter: string | string[]\n ) => any;\n\n static transforms: { [key: string]: Transform } = {\n // buildIn transforms\n fields: fields,\n filter: filter,\n fold: fold\n };\n static dataParser: { [key: string]: Parser } = {\n // buildIn parser\n csv: csvParser,\n dsv: dsvParser,\n tsv: tsvParser\n };\n static _layout: { [key: string]: ILayoutConstructor } = {};\n\n static registerChart(key: string, chart: IChartConstructor) {\n Factory._charts[key] = chart;\n }\n static registerSeries(key: string, series: ISeriesConstructor) {\n Factory._series[key] = series;\n }\n static registerComponent(key: string, cmp: IComponentConstructor, alwaysCheck?: boolean, createOrder?: number) {\n Factory._components[key] = { cmp, alwaysCheck, createOrder: createOrder ?? 0 };\n }\n\n static registerGraphicComponent(key: string, creator: (attrs: any, options?: VRenderComponentOptions) => IGraphic) {\n Factory._graphicComponents[key] = creator;\n }\n\n static createGraphicComponent(componentType: string, attrs: any, options?: VRenderComponentOptions) {\n const compCreator = Factory._graphicComponents[componentType];\n\n if (!compCreator) {\n return null;\n }\n\n return compCreator(attrs, options);\n }\n static registerMark(key: string, mark: MarkConstructor) {\n Factory._marks[key] = mark;\n }\n static registerRegion(key: string, region: IRegionConstructor) {\n Factory._regions[key] = region;\n }\n static registerTransform(key: string, transform: Transform) {\n Factory.transforms[key] = transform;\n }\n\n private static _grammarTransforms: Record<string, GrammarTransformOption> = {};\n\n static registerGrammarTransform(type: string, transform: GrammarTransformOption) {\n Factory._grammarTransforms[type] = transform;\n }\n\n static getGrammarTransform(type: string) {\n return Factory._grammarTransforms[type];\n }\n static registerLayout(key: string, layout: ILayoutConstructor) {\n Factory._layout[key] = layout;\n }\n static registerAnimation(key: string, animation: (params?: any, preset?: any) => MarkAnimationSpec) {\n Factory._animations[key] = animation;\n }\n static registerImplement(key: string, implement: (...args: any) => void) {\n Factory._implements[key] = implement;\n }\n static registerChartPlugin(key: string, plugin: IChartPluginConstructor) {\n Factory._chartPlugin[key] = plugin;\n }\n static registerVChartPlugin(key: string, plugin: IVChartPluginConstructor) {\n Factory._vChartPlugin[key] = plugin;\n }\n static registerComponentPlugin(key: string, plugin: IComponentPluginConstructor) {\n Factory._componentPlugin[key] = plugin;\n }\n\n static createChart(chartType: string, spec: any, options: IChartOption): IChart | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n return new ChartConstructor(spec, options);\n }\n\n static getChart(chartType: string) {\n return Factory._charts[chartType];\n }\n\n static createChartSpecTransformer(\n chartType: string,\n option: IChartSpecTransformerOption\n ): IChartSpecTransformer | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n const ChartSpecTransformerConstructor = ChartConstructor.transformerConstructor;\n return new ChartSpecTransformerConstructor({\n seriesType: ChartConstructor.seriesType,\n ...option\n });\n }\n\n static createRegion(regionType: string, spec: any, options: IModelOption): IRegion | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n return new RegionConstructor(spec, options);\n }\n\n static createRegionSpecTransformer(\n regionType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n const RegionSpecTransformerConstructor = RegionConstructor.transformerConstructor;\n return new RegionSpecTransformerConstructor(options);\n }\n\n static createSeries(seriesType: string, spec: any, options: ISeriesOption) {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n return new SeriesConstructor(spec, options);\n }\n\n static createSeriesSpecTransformer(\n seriesType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n const SeriesSpecTransformerConstructor = SeriesConstructor.transformerConstructor;\n return new SeriesSpecTransformerConstructor(options);\n }\n\n static createMark(markType: string, name: string, options: IMarkOption) {\n if (!Factory._marks[markType]) {\n return null;\n }\n const MarkConstructor = Factory._marks[markType] as IMarkConstructor;\n const markInstance = new MarkConstructor(name, options);\n if (markInstance.type === MarkTypeEnum.group) {\n // group 目前关闭交互,不参与事件拾取\n markInstance.setMarkConfig({ interactive: false });\n }\n return markInstance;\n }\n\n static getComponents() {\n return Object.values(Factory._components);\n }\n\n static getComponentInKey(name: string) {\n return Factory._components[name].cmp;\n }\n\n static getLayout() {\n return Object.values(Factory._layout);\n }\n\n static getLayoutInKey(name: string) {\n return Factory._layout[name];\n }\n\n static getSeries() {\n return Object.values(Factory._series);\n }\n\n static getSeriesInType(type: string) {\n return Factory._series[type];\n }\n\n static getRegionInType(type: string) {\n return Factory._regions[type];\n }\n\n static getAnimationInKey(key: string) {\n return Factory._animations[key];\n }\n\n static getImplementInKey(key: string) {\n return Factory._implements[key];\n }\n\n static getSeriesMarkMap(seriesType: string): Partial<Record<SeriesMarkNameEnum, ISeriesMarkInfo>> {\n if (!Factory._series[seriesType]) {\n return {};\n }\n return Factory._series[seriesType].mark;\n }\n\n static getSeriesBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._series) {\n const item = Factory._series[key];\n if (item && item.builtInTheme && item.builtInTheme[themeKey]) {\n return item.builtInTheme[themeKey];\n }\n }\n\n return null;\n }\n\n static getComponentBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._components) {\n const item = Factory._components[key];\n if (item && item.cmp && item.cmp.builtInTheme && item.cmp.builtInTheme[themeKey]) {\n return item.cmp.builtInTheme[themeKey];\n }\n }\n return null;\n }\n\n static getChartPlugins() {\n return Object.values(Factory._chartPlugin);\n }\n\n static getVChartPlugins() {\n return Object.values(Factory._vChartPlugin);\n }\n\n static getComponentPlugins() {\n return Object.values(Factory._componentPlugin);\n }\n\n static getComponentPluginInType(type: string) {\n return Factory._componentPlugin[type];\n }\n\n static registerFormatter(func: typeof Factory['_formatter']) {\n this._formatter = func;\n }\n\n static getFormatter() {\n return this._formatter;\n }\n\n private static _stageEventPlugins: Record<string, IStageEventPlugin<any>> = {};\n\n static registerStageEventPlugin = (type: string, Plugin: IStageEventPlugin<any>) => {\n Factory._stageEventPlugins[type] = Plugin;\n };\n\n static getStageEventPlugin = (type: string) => {\n return Factory._stageEventPlugins[type];\n };\n\n private static _interactionTriggers: Record<string, ITriggerConstructor> = {};\n\n static registerInteractionTrigger = (interactionType: string, interaction: ITriggerConstructor) => {\n Factory._interactionTriggers[interactionType] = interaction;\n };\n\n static createInteractionTrigger(interactionType: string, options?: IBaseTriggerOptions) {\n const Ctor = Factory._interactionTriggers[interactionType];\n if (!Ctor) {\n return null;\n }\n\n return new Ctor(options);\n }\n\n static hasInteractionTrigger(interactionType: string) {\n return !!Factory._interactionTriggers[interactionType];\n }\n\n private static _composedEventMap: Record<string, IComposedEventConstructor> = {};\n\n static registerComposedEvent = (eType: string, composedEvent: IComposedEventConstructor) => {\n Factory._composedEventMap[eType] = composedEvent;\n };\n\n static getComposedEvent(eType: string) {\n return Factory._composedEventMap[eType];\n }\n\n private static _tooltipProcessors: Record<string, ITooltipProcessorConstructor> = {};\n static registerTooltipProcessor = (type: string, processor: ITooltipProcessorConstructor) => {\n Factory._tooltipProcessors[type] = processor;\n };\n static createTooltipProcessor = (type: string, tooltip: ITooltip) => {\n const Cror = Factory._tooltipProcessors[type];\n if (!Cror) {\n return null;\n }\n return new Cror(tooltip);\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/core/factory.ts"],"names":[],"mappings":"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","file":"factory.js","sourcesContent":["import type {\n IChartConstructor,\n IChartOption,\n IChart,\n IChartSpecTransformerOption,\n IChartSpecTransformer\n} from '../chart/interface';\nimport type { ISeriesConstructor, ISeriesMarkInfo, ISeriesOption, SeriesMarkNameEnum } from '../series/interface';\nimport type { IComponentConstructor } from '../component/interface';\nimport type { IMarkConstructor, IMarkOption, MarkConstructor } from '../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from '../mark/interface/type';\nimport type { IRegion, IRegionConstructor } from '../region/interface';\nimport type { IBaseModelSpecTransformer, IBaseModelSpecTransformerOption, IModelOption } from '../model/interface';\nimport type { Transform, Parser } from '@visactor/vdataset';\nimport type { ILayoutConstructor } from '../layout/interface';\nimport type { IChartPluginConstructor } from '../plugin/chart/interface';\nimport type { IComponentPluginConstructor } from '../plugin/components/interface';\nimport type { IGraphic } from '@visactor/vrender-core';\nimport type { GrammarTransformOption, IStageEventPlugin, VRenderComponentOptions } from './interface';\nimport type { MarkAnimationSpec } from '../animation/interface';\nimport type { IBaseTriggerOptions, ITriggerConstructor } from '../interaction/interface/trigger';\nimport type { IComposedEventConstructor } from '../index-harmony-simple';\nimport type { ITooltipProcessorConstructor } from '../component/tooltip/processor/interface';\nimport type { ITooltip } from '../component';\nimport type { IVChartPluginConstructor } from '../plugin/vchart';\nimport { factoryRegistry } from './factory-registry';\n\nexport class Factory {\n private static _charts: { [key: string]: IChartConstructor } = factoryRegistry.charts;\n private static _series: { [key: string]: ISeriesConstructor } = factoryRegistry.series;\n private static _components: {\n [key: string]: {\n cmp: IComponentConstructor;\n alwaysCheck?: boolean;\n createOrder: number;\n };\n } = factoryRegistry.components;\n private static _graphicComponents: Record<string, (attrs: any, options?: VRenderComponentOptions) => IGraphic> =\n factoryRegistry.graphicComponents;\n private static _marks: { [key: string]: MarkConstructor } = factoryRegistry.marks;\n private static _regions: { [key: string]: IRegionConstructor } = factoryRegistry.regions;\n private static _animations: { [key: string]: (params?: any, preset?: any) => MarkAnimationSpec } =\n factoryRegistry.animations;\n private static _implements: { [key: string]: (...args: any) => void } = factoryRegistry.implements;\n private static _chartPlugin: { [key: string]: IChartPluginConstructor } = factoryRegistry.chartPlugin;\n private static _vChartPlugin: { [key: string]: IVChartPluginConstructor } = factoryRegistry.vChartPlugin;\n private static _componentPlugin: { [key: string]: IComponentPluginConstructor } = factoryRegistry.componentPlugin;\n private static _formatter: (\n text: string | number | string[] | number[],\n datum: any,\n formatter: string | string[]\n ) => any;\n\n static transforms: { [key: string]: Transform } = factoryRegistry.transforms;\n static dataParser: { [key: string]: Parser } = factoryRegistry.dataParser;\n static _layout: { [key: string]: ILayoutConstructor } = factoryRegistry.layout;\n\n static registerChart(key: string, chart: IChartConstructor) {\n Factory._charts[key] = chart;\n }\n static registerSeries(key: string, series: ISeriesConstructor) {\n Factory._series[key] = series;\n }\n static registerComponent(key: string, cmp: IComponentConstructor, alwaysCheck?: boolean, createOrder?: number) {\n Factory._components[key] = { cmp, alwaysCheck, createOrder: createOrder ?? 0 };\n }\n\n static registerGraphicComponent(key: string, creator: (attrs: any, options?: VRenderComponentOptions) => IGraphic) {\n Factory._graphicComponents[key] = creator;\n }\n\n static createGraphicComponent(componentType: string, attrs: any, options?: VRenderComponentOptions) {\n const compCreator = Factory._graphicComponents[componentType];\n\n if (!compCreator) {\n return null;\n }\n\n return compCreator(attrs, options);\n }\n static registerMark(key: string, mark: MarkConstructor) {\n Factory._marks[key] = mark;\n }\n static registerRegion(key: string, region: IRegionConstructor) {\n Factory._regions[key] = region;\n }\n static registerTransform(key: string, transform: Transform) {\n Factory.transforms[key] = transform;\n }\n\n private static _grammarTransforms: Record<string, GrammarTransformOption> = factoryRegistry.grammarTransforms;\n\n static registerGrammarTransform(type: string, transform: GrammarTransformOption) {\n Factory._grammarTransforms[type] = transform;\n }\n\n static getGrammarTransform(type: string) {\n return Factory._grammarTransforms[type];\n }\n static registerLayout(key: string, layout: ILayoutConstructor) {\n Factory._layout[key] = layout;\n }\n static registerAnimation(key: string, animation: (params?: any, preset?: any) => MarkAnimationSpec) {\n Factory._animations[key] = animation;\n }\n static registerImplement(key: string, implement: (...args: any) => void) {\n Factory._implements[key] = implement;\n }\n static registerChartPlugin(key: string, plugin: IChartPluginConstructor) {\n Factory._chartPlugin[key] = plugin;\n }\n static registerVChartPlugin(key: string, plugin: IVChartPluginConstructor) {\n Factory._vChartPlugin[key] = plugin;\n }\n static registerComponentPlugin(key: string, plugin: IComponentPluginConstructor) {\n Factory._componentPlugin[key] = plugin;\n }\n\n static createChart(chartType: string, spec: any, options: IChartOption): IChart | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n return new ChartConstructor(spec, options);\n }\n\n static getChart(chartType: string) {\n return Factory._charts[chartType];\n }\n\n static createChartSpecTransformer(\n chartType: string,\n option: IChartSpecTransformerOption\n ): IChartSpecTransformer | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n const ChartSpecTransformerConstructor = ChartConstructor.transformerConstructor;\n return new ChartSpecTransformerConstructor({\n seriesType: ChartConstructor.seriesType,\n ...option\n });\n }\n\n static createRegion(regionType: string, spec: any, options: IModelOption): IRegion | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n return new RegionConstructor(spec, options);\n }\n\n static createRegionSpecTransformer(\n regionType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n const RegionSpecTransformerConstructor = RegionConstructor.transformerConstructor;\n return new RegionSpecTransformerConstructor(options);\n }\n\n static createSeries(seriesType: string, spec: any, options: ISeriesOption) {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n return new SeriesConstructor(spec, options);\n }\n\n static createSeriesSpecTransformer(\n seriesType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n const SeriesSpecTransformerConstructor = SeriesConstructor.transformerConstructor;\n return new SeriesSpecTransformerConstructor(options);\n }\n\n static createMark(markType: string, name: string, options: IMarkOption) {\n if (!Factory._marks[markType]) {\n return null;\n }\n const MarkConstructor = Factory._marks[markType] as IMarkConstructor;\n const markInstance = new MarkConstructor(name, options);\n if (markInstance.type === MarkTypeEnum.group) {\n // group 目前关闭交互,不参与事件拾取\n markInstance.setMarkConfig({ interactive: false });\n }\n return markInstance;\n }\n\n static getComponents() {\n return Object.values(Factory._components);\n }\n\n static getComponentInKey(name: string) {\n return Factory._components[name].cmp;\n }\n\n static getLayout() {\n return Object.values(Factory._layout);\n }\n\n static getLayoutInKey(name: string) {\n return Factory._layout[name];\n }\n\n static getSeries() {\n return Object.values(Factory._series);\n }\n\n static getSeriesInType(type: string) {\n return Factory._series[type];\n }\n\n static getRegionInType(type: string) {\n return Factory._regions[type];\n }\n\n static getAnimationInKey(key: string) {\n return Factory._animations[key];\n }\n\n static getImplementInKey(key: string) {\n return Factory._implements[key];\n }\n\n static getSeriesMarkMap(seriesType: string): Partial<Record<SeriesMarkNameEnum, ISeriesMarkInfo>> {\n if (!Factory._series[seriesType]) {\n return {};\n }\n return Factory._series[seriesType].mark;\n }\n\n static getSeriesBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._series) {\n const item = Factory._series[key];\n if (item && item.builtInTheme && item.builtInTheme[themeKey]) {\n return item.builtInTheme[themeKey];\n }\n }\n\n return null;\n }\n\n static getComponentBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._components) {\n const item = Factory._components[key];\n if (item && item.cmp && item.cmp.builtInTheme && item.cmp.builtInTheme[themeKey]) {\n return item.cmp.builtInTheme[themeKey];\n }\n }\n return null;\n }\n\n static getChartPlugins() {\n return Object.values(Factory._chartPlugin);\n }\n\n static getVChartPlugins() {\n return Object.values(Factory._vChartPlugin);\n }\n\n static getComponentPlugins() {\n return Object.values(Factory._componentPlugin);\n }\n\n static getComponentPluginInType(type: string) {\n return Factory._componentPlugin[type];\n }\n\n static registerFormatter(func: typeof Factory['_formatter']) {\n this._formatter = func;\n factoryRegistry.formatter = func;\n }\n\n static getFormatter() {\n return factoryRegistry.formatter ?? this._formatter;\n }\n\n private static _stageEventPlugins: Record<string, IStageEventPlugin<any>> = factoryRegistry.stageEventPlugins;\n\n static registerStageEventPlugin = (type: string, Plugin: IStageEventPlugin<any>) => {\n Factory._stageEventPlugins[type] = Plugin;\n };\n\n static getStageEventPlugin = (type: string) => {\n return Factory._stageEventPlugins[type];\n };\n\n private static _interactionTriggers: Record<string, ITriggerConstructor> = factoryRegistry.interactionTriggers;\n\n static registerInteractionTrigger = (interactionType: string, interaction: ITriggerConstructor) => {\n Factory._interactionTriggers[interactionType] = interaction;\n };\n\n static createInteractionTrigger(interactionType: string, options?: IBaseTriggerOptions) {\n const Ctor = Factory._interactionTriggers[interactionType];\n if (!Ctor) {\n return null;\n }\n\n return new Ctor(options);\n }\n\n static hasInteractionTrigger(interactionType: string) {\n return !!Factory._interactionTriggers[interactionType];\n }\n\n private static _composedEventMap: Record<string, IComposedEventConstructor> = factoryRegistry.composedEventMap;\n\n static registerComposedEvent = (eType: string, composedEvent: IComposedEventConstructor) => {\n Factory._composedEventMap[eType] = composedEvent;\n };\n\n static getComposedEvent(eType: string) {\n return Factory._composedEventMap[eType];\n }\n\n private static _tooltipProcessors: Record<string, ITooltipProcessorConstructor> = factoryRegistry.tooltipProcessors;\n static registerTooltipProcessor = (type: string, processor: ITooltipProcessorConstructor) => {\n Factory._tooltipProcessors[type] = processor;\n };\n static createTooltipProcessor = (type: string, tooltip: ITooltip) => {\n const Cror = Factory._tooltipProcessors[type];\n if (!Cror) {\n return null;\n }\n return new Cror(tooltip);\n };\n}\n"]}
|
package/cjs/core/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VChart } from './vchart';
|
|
2
2
|
import { Factory } from './factory';
|
|
3
3
|
export { VChart, Factory };
|
|
4
|
-
export declare const version = "2.1.
|
|
4
|
+
export declare const version = "2.1.1";
|
|
5
5
|
export type { IVChart } from './interface';
|
|
6
6
|
export type { IStateSpec, StateValueType } from '../compile/mark';
|
|
7
7
|
export type { IRegion } from '../region/interface';
|
package/cjs/core/index.js
CHANGED
|
@@ -35,7 +35,7 @@ Object.defineProperty(exports, "Factory", {
|
|
|
35
35
|
get: function() {
|
|
36
36
|
return factory_1.Factory;
|
|
37
37
|
}
|
|
38
|
-
}), exports.version = "2.1.
|
|
38
|
+
}), exports.version = "2.1.1", __exportStar(require("../event/interface"), exports),
|
|
39
39
|
__exportStar(require("../theme/interface"), exports), __exportStar(require("../model/interface"), exports),
|
|
40
40
|
__exportStar(require("./interface"), exports), __exportStar(require("../typings"), exports),
|
|
41
41
|
__exportStar(require("../constant/base"), exports), __exportStar(require("../constant/data"), exports),
|
package/cjs/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,qCAAkC;AAGzB,uFAHA,eAAM,OAGA;AAFf,uCAAoC;AAEnB,wFAFR,iBAAO,OAEQ;AAGX,QAAA,OAAO,GAAG,OAAO,CAAC;AAO/B,qDAAmC;AACnC,qDAAmC;AACnC,qDAAmC;AAEnC,8CAA4B;AAC5B,6CAA2B;AAI3B,mDAAiC;AACjC,mDAAiC;AACjC,qDAAmC;AACnC,mDAAuD;AAA9C,2GAAA,cAAc,OAAA;AACvB,iDAAoD;AAA3C,4GAAA,cAAc,OAAA;AACvB,uDAA6D;AAApD,6GAAA,gBAAgB,OAAA;AACzB,2CAA+C;AAAtC,mGAAA,UAAU,OAAA;AAKnB,wDAAsC;AACtC,oDAAkC;AAGlC,qDAAmC;AAGnC,iDAA+B;AAG/B,uDAUgC;AAT9B,uGAAA,OAAO,OAAA;AACP,2GAAA,WAAW,OAAA;AACX,8GAAA,cAAc,OAAA;AACd,0GAAA,UAAU,OAAA;AACV,yGAAA,SAAS,OAAA;AACT,0GAAA,UAAU,OAAA;AACV,0GAAA,UAAU,OAAA;AACV,0GAAA,UAAU,OAAA;AACV,4GAAA,YAAY,OAAA;AAEd,gFAA8E;AAArE,6GAAA,YAAY,OAAA;AACrB,4EAA2E;AAAlE,0GAAA,WAAW,OAAA;AAGpB,gDAA8B;AAC9B,uCAAmD;AAA1C,2GAAA,kBAAkB,OAAA;AAC3B,0CAAgD;AAAvC,mGAAA,WAAW,OAAA;AACpB,6CAAmG;AAA1F,yHAAA,6BAA6B,OAAA;AAAE,4HAAA,gCAAgC,OAAA;AACxE,oDAAmD;AAA1C,gGAAA,MAAM,OAAA;AACf,uCAAqC;AAA5B,6FAAA,IAAI,OAAA;AACb,qCAA2C;AAAlC,mGAAA,WAAW,OAAA","file":"index.js","sourcesContent":["/**\n * @description The core module of VChart, containing the necessary interfaces for using VChart.\n */\n\nimport { VChart } from './vchart';\nimport { Factory } from './factory';\n\nexport { VChart, Factory };\n\n// export the version\nexport const version = \"2.1.
|
|
1
|
+
{"version":3,"sources":["../src/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,qCAAkC;AAGzB,uFAHA,eAAM,OAGA;AAFf,uCAAoC;AAEnB,wFAFR,iBAAO,OAEQ;AAGX,QAAA,OAAO,GAAG,OAAO,CAAC;AAO/B,qDAAmC;AACnC,qDAAmC;AACnC,qDAAmC;AAEnC,8CAA4B;AAC5B,6CAA2B;AAI3B,mDAAiC;AACjC,mDAAiC;AACjC,qDAAmC;AACnC,mDAAuD;AAA9C,2GAAA,cAAc,OAAA;AACvB,iDAAoD;AAA3C,4GAAA,cAAc,OAAA;AACvB,uDAA6D;AAApD,6GAAA,gBAAgB,OAAA;AACzB,2CAA+C;AAAtC,mGAAA,UAAU,OAAA;AAKnB,wDAAsC;AACtC,oDAAkC;AAGlC,qDAAmC;AAGnC,iDAA+B;AAG/B,uDAUgC;AAT9B,uGAAA,OAAO,OAAA;AACP,2GAAA,WAAW,OAAA;AACX,8GAAA,cAAc,OAAA;AACd,0GAAA,UAAU,OAAA;AACV,yGAAA,SAAS,OAAA;AACT,0GAAA,UAAU,OAAA;AACV,0GAAA,UAAU,OAAA;AACV,0GAAA,UAAU,OAAA;AACV,4GAAA,YAAY,OAAA;AAEd,gFAA8E;AAArE,6GAAA,YAAY,OAAA;AACrB,4EAA2E;AAAlE,0GAAA,WAAW,OAAA;AAGpB,gDAA8B;AAC9B,uCAAmD;AAA1C,2GAAA,kBAAkB,OAAA;AAC3B,0CAAgD;AAAvC,mGAAA,WAAW,OAAA;AACpB,6CAAmG;AAA1F,yHAAA,6BAA6B,OAAA;AAAE,4HAAA,gCAAgC,OAAA;AACxE,oDAAmD;AAA1C,gGAAA,MAAM,OAAA;AACf,uCAAqC;AAA5B,6FAAA,IAAI,OAAA;AACb,qCAA2C;AAAlC,mGAAA,WAAW,OAAA","file":"index.js","sourcesContent":["/**\n * @description The core module of VChart, containing the necessary interfaces for using VChart.\n */\n\nimport { VChart } from './vchart';\nimport { Factory } from './factory';\n\nexport { VChart, Factory };\n\n// export the version\nexport const version = \"2.1.1\";\n\n// export necessary types\nexport type { IVChart } from './interface';\nexport type { IStateSpec, StateValueType } from '../compile/mark';\nexport type { IRegion } from '../region/interface';\n\nexport * from '../event/interface';\nexport * from '../theme/interface';\nexport * from '../model/interface';\n\nexport * from './interface';\nexport * from '../typings';\nexport type { IMarkGraphic, IGraphicContext } from '../mark/interface/';\n\n// some constants\nexport * from '../constant/base';\nexport * from '../constant/data';\nexport * from '../constant/layout';\nexport { AttributeLevel } from '../constant/attribute';\nexport { TransformLevel } from '../data/initialize';\nexport { STATE_VALUE_ENUM } from '../compile/mark/interface';\nexport { ChartEvent } from '../constant/event';\n\n/**\n * spec\n */\nexport * from '../typings/spec/index';\nexport * from '../typings/visual';\n\n// tooltip\nexport * from '../typings/tooltip';\n\n// theme\nexport * from '../theme/index';\n\n// vrender\nexport {\n vglobal,\n createGroup,\n createRichText,\n createText,\n createArc,\n createArea,\n createRect,\n createLine,\n createSymbol\n} from '@visactor/vrender-core';\nexport { ManualTicker } from '@visactor/vrender-animate/ticker/manual-ticker';\nexport { StreamLight } from '@visactor/vrender-animate/custom/streamLight';\n\n// utils\nexport * from '../util/space';\nexport { transformToGraphic } from '../util/style';\nexport { getSpecInfo } from '../component/util';\nexport { registerDataSetInstanceParser, registerDataSetInstanceTransform } from '../data/register';\nexport { lookup } from '../data/transforms/lookup';\nexport { warn } from '../util/debug';\nexport { measureText } from '../util/text';\n"]}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type { Transform, Parser } from '@visactor/vdataset';
|
|
2
|
+
import type { IChartConstructor } from '../chart/interface';
|
|
3
|
+
import type { ISeriesConstructor } from '../series/interface';
|
|
4
|
+
import type { IComponentConstructor } from '../component/interface';
|
|
5
|
+
import type { MarkConstructor } from '../mark/interface';
|
|
6
|
+
import type { IRegionConstructor } from '../region/interface';
|
|
7
|
+
import type { ILayoutConstructor } from '../layout/interface';
|
|
8
|
+
import type { IChartPluginConstructor } from '../plugin/chart/interface';
|
|
9
|
+
import type { IComponentPluginConstructor } from '../plugin/components/interface';
|
|
10
|
+
import type { IGraphic } from '@visactor/vrender-core';
|
|
11
|
+
import type { GrammarTransformOption, IStageEventPlugin, VRenderComponentOptions } from './interface';
|
|
12
|
+
import type { MarkAnimationSpec } from '../animation/interface';
|
|
13
|
+
import type { ITriggerConstructor } from '../interaction/interface/trigger';
|
|
14
|
+
import type { IComposedEventConstructor } from '../index-harmony-simple';
|
|
15
|
+
import type { ITooltipProcessorConstructor } from '../component/tooltip/processor/interface';
|
|
16
|
+
import type { IVChartPluginConstructor } from '../plugin/vchart';
|
|
17
|
+
export interface IFactoryRegistry {
|
|
18
|
+
charts: {
|
|
19
|
+
[key: string]: IChartConstructor;
|
|
20
|
+
};
|
|
21
|
+
series: {
|
|
22
|
+
[key: string]: ISeriesConstructor;
|
|
23
|
+
};
|
|
24
|
+
components: {
|
|
25
|
+
[key: string]: {
|
|
26
|
+
cmp: IComponentConstructor;
|
|
27
|
+
alwaysCheck?: boolean;
|
|
28
|
+
createOrder: number;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
graphicComponents: Record<string, (attrs: any, options?: VRenderComponentOptions) => IGraphic>;
|
|
32
|
+
marks: {
|
|
33
|
+
[key: string]: MarkConstructor;
|
|
34
|
+
};
|
|
35
|
+
regions: {
|
|
36
|
+
[key: string]: IRegionConstructor;
|
|
37
|
+
};
|
|
38
|
+
animations: {
|
|
39
|
+
[key: string]: (params?: any, preset?: any) => MarkAnimationSpec;
|
|
40
|
+
};
|
|
41
|
+
implements: {
|
|
42
|
+
[key: string]: (...args: any) => void;
|
|
43
|
+
};
|
|
44
|
+
chartPlugin: {
|
|
45
|
+
[key: string]: IChartPluginConstructor;
|
|
46
|
+
};
|
|
47
|
+
vChartPlugin: {
|
|
48
|
+
[key: string]: IVChartPluginConstructor;
|
|
49
|
+
};
|
|
50
|
+
componentPlugin: {
|
|
51
|
+
[key: string]: IComponentPluginConstructor;
|
|
52
|
+
};
|
|
53
|
+
transforms: {
|
|
54
|
+
[key: string]: Transform;
|
|
55
|
+
};
|
|
56
|
+
dataParser: {
|
|
57
|
+
[key: string]: Parser;
|
|
58
|
+
};
|
|
59
|
+
layout: {
|
|
60
|
+
[key: string]: ILayoutConstructor;
|
|
61
|
+
};
|
|
62
|
+
grammarTransforms: Record<string, GrammarTransformOption>;
|
|
63
|
+
stageEventPlugins: Record<string, IStageEventPlugin<any>>;
|
|
64
|
+
interactionTriggers: Record<string, ITriggerConstructor>;
|
|
65
|
+
composedEventMap: Record<string, IComposedEventConstructor>;
|
|
66
|
+
tooltipProcessors: Record<string, ITooltipProcessorConstructor>;
|
|
67
|
+
formatter?: (text: string | number | string[] | number[], datum: any, formatter: string | string[]) => any;
|
|
68
|
+
}
|
|
69
|
+
export declare const factoryRegistry: IFactoryRegistry;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { fields, filter, fold, csvParser, dsvParser, tsvParser } from "@visactor/vdataset";
|
|
2
|
+
|
|
3
|
+
export const factoryRegistry = {
|
|
4
|
+
charts: {},
|
|
5
|
+
series: {},
|
|
6
|
+
components: {},
|
|
7
|
+
graphicComponents: {},
|
|
8
|
+
marks: {},
|
|
9
|
+
regions: {},
|
|
10
|
+
animations: {},
|
|
11
|
+
implements: {},
|
|
12
|
+
chartPlugin: {},
|
|
13
|
+
vChartPlugin: {},
|
|
14
|
+
componentPlugin: {},
|
|
15
|
+
transforms: {
|
|
16
|
+
fields: fields,
|
|
17
|
+
filter: filter,
|
|
18
|
+
fold: fold
|
|
19
|
+
},
|
|
20
|
+
dataParser: {
|
|
21
|
+
csv: csvParser,
|
|
22
|
+
dsv: dsvParser,
|
|
23
|
+
tsv: tsvParser
|
|
24
|
+
},
|
|
25
|
+
layout: {},
|
|
26
|
+
grammarTransforms: {},
|
|
27
|
+
stageEventPlugins: {},
|
|
28
|
+
interactionTriggers: {},
|
|
29
|
+
composedEventMap: {},
|
|
30
|
+
tooltipProcessors: {},
|
|
31
|
+
formatter: void 0
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=factory-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/core/factory-registry.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AA8C3F,MAAM,CAAC,MAAM,eAAe,GAAqB;IAC/C,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;IACV,UAAU,EAAE,EAAE;IACd,iBAAiB,EAAE,EAAE;IACrB,KAAK,EAAE,EAAE;IACT,OAAO,EAAE,EAAE;IACX,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,EAAE;IACf,YAAY,EAAE,EAAE;IAChB,eAAe,EAAE,EAAE;IACnB,UAAU,EAAE;QAEV,MAAM;QACN,MAAM;QACN,IAAI;KACL;IACD,UAAU,EAAE;QAEV,GAAG,EAAE,SAAS;QACd,GAAG,EAAE,SAAS;QACd,GAAG,EAAE,SAAS;KACf;IACD,MAAM,EAAE,EAAE;IACV,iBAAiB,EAAE,EAAE;IACrB,iBAAiB,EAAE,EAAE;IACrB,mBAAmB,EAAE,EAAE;IACvB,gBAAgB,EAAE,EAAE;IACpB,iBAAiB,EAAE,EAAE;IACrB,SAAS,EAAE,SAAS;CACrB,CAAC","file":"factory-registry.js","sourcesContent":["import type { Transform, Parser } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { fields, filter, fold, csvParser, dsvParser, tsvParser } from '@visactor/vdataset';\nimport type { IChartConstructor } from '../chart/interface';\nimport type { ISeriesConstructor } from '../series/interface';\nimport type { IComponentConstructor } from '../component/interface';\nimport type { MarkConstructor } from '../mark/interface';\nimport type { IRegionConstructor } from '../region/interface';\nimport type { ILayoutConstructor } from '../layout/interface';\nimport type { IChartPluginConstructor } from '../plugin/chart/interface';\nimport type { IComponentPluginConstructor } from '../plugin/components/interface';\nimport type { IGraphic } from '@visactor/vrender-core';\nimport type { GrammarTransformOption, IStageEventPlugin, VRenderComponentOptions } from './interface';\nimport type { MarkAnimationSpec } from '../animation/interface';\nimport type { ITriggerConstructor } from '../interaction/interface/trigger';\nimport type { IComposedEventConstructor } from '../index-harmony-simple';\nimport type { ITooltipProcessorConstructor } from '../component/tooltip/processor/interface';\nimport type { IVChartPluginConstructor } from '../plugin/vchart';\n\nexport interface IFactoryRegistry {\n charts: { [key: string]: IChartConstructor };\n series: { [key: string]: ISeriesConstructor };\n components: {\n [key: string]: {\n cmp: IComponentConstructor;\n alwaysCheck?: boolean;\n createOrder: number;\n };\n };\n graphicComponents: Record<string, (attrs: any, options?: VRenderComponentOptions) => IGraphic>;\n marks: { [key: string]: MarkConstructor };\n regions: { [key: string]: IRegionConstructor };\n animations: { [key: string]: (params?: any, preset?: any) => MarkAnimationSpec };\n implements: { [key: string]: (...args: any) => void };\n chartPlugin: { [key: string]: IChartPluginConstructor };\n vChartPlugin: { [key: string]: IVChartPluginConstructor };\n componentPlugin: { [key: string]: IComponentPluginConstructor };\n transforms: { [key: string]: Transform };\n dataParser: { [key: string]: Parser };\n layout: { [key: string]: ILayoutConstructor };\n grammarTransforms: Record<string, GrammarTransformOption>;\n stageEventPlugins: Record<string, IStageEventPlugin<any>>;\n interactionTriggers: Record<string, ITriggerConstructor>;\n composedEventMap: Record<string, IComposedEventConstructor>;\n tooltipProcessors: Record<string, ITooltipProcessorConstructor>;\n formatter?: (text: string | number | string[] | number[], datum: any, formatter: string | string[]) => any;\n}\n\nexport const factoryRegistry: IFactoryRegistry = {\n charts: {},\n series: {},\n components: {},\n graphicComponents: {},\n marks: {},\n regions: {},\n animations: {},\n implements: {},\n chartPlugin: {},\n vChartPlugin: {},\n componentPlugin: {},\n transforms: {\n // buildIn transforms\n fields,\n filter,\n fold\n },\n dataParser: {\n // buildIn parser\n csv: csvParser,\n dsv: dsvParser,\n tsv: tsvParser\n },\n layout: {},\n grammarTransforms: {},\n stageEventPlugins: {},\n interactionTriggers: {},\n composedEventMap: {},\n tooltipProcessors: {},\n formatter: undefined\n};\n"]}
|
package/esm/core/factory.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { factoryRegistry } from "./factory-registry";
|
|
2
2
|
|
|
3
3
|
export class Factory {
|
|
4
4
|
static registerChart(key, chart) {
|
|
@@ -148,10 +148,11 @@ export class Factory {
|
|
|
148
148
|
return Factory._componentPlugin[type];
|
|
149
149
|
}
|
|
150
150
|
static registerFormatter(func) {
|
|
151
|
-
this._formatter = func;
|
|
151
|
+
this._formatter = func, factoryRegistry.formatter = func;
|
|
152
152
|
}
|
|
153
153
|
static getFormatter() {
|
|
154
|
-
|
|
154
|
+
var _a;
|
|
155
|
+
return null !== (_a = factoryRegistry.formatter) && void 0 !== _a ? _a : this._formatter;
|
|
155
156
|
}
|
|
156
157
|
static createInteractionTrigger(interactionType, options) {
|
|
157
158
|
const Ctor = Factory._interactionTriggers[interactionType];
|
|
@@ -165,29 +166,25 @@ export class Factory {
|
|
|
165
166
|
}
|
|
166
167
|
}
|
|
167
168
|
|
|
168
|
-
Factory._charts =
|
|
169
|
-
Factory.
|
|
170
|
-
Factory.
|
|
171
|
-
Factory.
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
csv: csvParser,
|
|
177
|
-
dsv: dsvParser,
|
|
178
|
-
tsv: tsvParser
|
|
179
|
-
}, Factory._layout = {}, Factory._grammarTransforms = {}, Factory._stageEventPlugins = {},
|
|
169
|
+
Factory._charts = factoryRegistry.charts, Factory._series = factoryRegistry.series,
|
|
170
|
+
Factory._components = factoryRegistry.components, Factory._graphicComponents = factoryRegistry.graphicComponents,
|
|
171
|
+
Factory._marks = factoryRegistry.marks, Factory._regions = factoryRegistry.regions,
|
|
172
|
+
Factory._animations = factoryRegistry.animations, Factory._implements = factoryRegistry.implements,
|
|
173
|
+
Factory._chartPlugin = factoryRegistry.chartPlugin, Factory._vChartPlugin = factoryRegistry.vChartPlugin,
|
|
174
|
+
Factory._componentPlugin = factoryRegistry.componentPlugin, Factory.transforms = factoryRegistry.transforms,
|
|
175
|
+
Factory.dataParser = factoryRegistry.dataParser, Factory._layout = factoryRegistry.layout,
|
|
176
|
+
Factory._grammarTransforms = factoryRegistry.grammarTransforms, Factory._stageEventPlugins = factoryRegistry.stageEventPlugins,
|
|
180
177
|
Factory.registerStageEventPlugin = (type, Plugin) => {
|
|
181
178
|
Factory._stageEventPlugins[type] = Plugin;
|
|
182
|
-
}, Factory.getStageEventPlugin = type => Factory._stageEventPlugins[type], Factory._interactionTriggers =
|
|
179
|
+
}, Factory.getStageEventPlugin = type => Factory._stageEventPlugins[type], Factory._interactionTriggers = factoryRegistry.interactionTriggers,
|
|
183
180
|
Factory.registerInteractionTrigger = (interactionType, interaction) => {
|
|
184
181
|
Factory._interactionTriggers[interactionType] = interaction;
|
|
185
|
-
}, Factory._composedEventMap =
|
|
182
|
+
}, Factory._composedEventMap = factoryRegistry.composedEventMap, Factory.registerComposedEvent = (eType, composedEvent) => {
|
|
186
183
|
Factory._composedEventMap[eType] = composedEvent;
|
|
187
|
-
}, Factory._tooltipProcessors =
|
|
184
|
+
}, Factory._tooltipProcessors = factoryRegistry.tooltipProcessors, Factory.registerTooltipProcessor = (type, processor) => {
|
|
188
185
|
Factory._tooltipProcessors[type] = processor;
|
|
189
186
|
}, Factory.createTooltipProcessor = (type, tooltip) => {
|
|
190
187
|
const Cror = Factory._tooltipProcessors[type];
|
|
191
188
|
return Cror ? new Cror(tooltip) : null;
|
|
192
189
|
};
|
|
193
|
-
//# sourceMappingURL=factory.js.map
|
|
190
|
+
//# sourceMappingURL=factory.js.map
|
package/esm/core/factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/core/factory.ts"],"names":[],"mappings":"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","file":"factory.js","sourcesContent":["import type {\n IChartConstructor,\n IChartOption,\n IChart,\n IChartSpecTransformerOption,\n IChartSpecTransformer\n} from '../chart/interface';\nimport type { ISeriesConstructor, ISeriesMarkInfo, ISeriesOption, SeriesMarkNameEnum } from '../series/interface';\nimport type { IComponentConstructor } from '../component/interface';\nimport type { IMarkConstructor, IMarkOption, MarkConstructor } from '../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from '../mark/interface/type';\nimport type { IRegion, IRegionConstructor } from '../region/interface';\nimport type { IBaseModelSpecTransformer, IBaseModelSpecTransformerOption, IModelOption } from '../model/interface';\nimport type { Transform, Parser } from '@visactor/vdataset';\n// eslint-disable-next-line no-duplicate-imports\nimport { fields, filter, fold, csvParser, dsvParser, tsvParser } from '@visactor/vdataset';\nimport type { ILayoutConstructor } from '../layout/interface';\nimport type { IChartPluginConstructor } from '../plugin/chart/interface';\nimport type { IComponentPluginConstructor } from '../plugin/components/interface';\nimport type { IGraphic } from '@visactor/vrender-core';\nimport type { GrammarTransformOption, IStageEventPlugin, VRenderComponentOptions } from './interface';\nimport type { MarkAnimationSpec } from '../animation/interface';\nimport type { IBaseTriggerOptions, ITriggerConstructor } from '../interaction/interface/trigger';\nimport type { IComposedEventConstructor } from '../index-harmony-simple';\nimport type { ITooltipProcessorConstructor } from '../component/tooltip/processor/interface';\nimport type { ITooltip } from '../component';\nimport type { IVChartPluginConstructor } from '../plugin/vchart';\n\nexport class Factory {\n private static _charts: { [key: string]: IChartConstructor } = {};\n private static _series: { [key: string]: ISeriesConstructor } = {};\n private static _components: {\n [key: string]: {\n cmp: IComponentConstructor;\n alwaysCheck?: boolean;\n createOrder: number;\n };\n } = {};\n private static _graphicComponents: Record<string, (attrs: any, options?: VRenderComponentOptions) => IGraphic> = {};\n private static _marks: { [key: string]: MarkConstructor } = {};\n private static _regions: { [key: string]: IRegionConstructor } = {};\n private static _animations: { [key: string]: (params?: any, preset?: any) => MarkAnimationSpec } = {};\n private static _implements: { [key: string]: (...args: any) => void } = {};\n private static _chartPlugin: { [key: string]: IChartPluginConstructor } = {};\n private static _vChartPlugin: { [key: string]: IVChartPluginConstructor } = {};\n private static _componentPlugin: { [key: string]: IComponentPluginConstructor } = {};\n private static _formatter: (\n text: string | number | string[] | number[],\n datum: any,\n formatter: string | string[]\n ) => any;\n\n static transforms: { [key: string]: Transform } = {\n // buildIn transforms\n fields: fields,\n filter: filter,\n fold: fold\n };\n static dataParser: { [key: string]: Parser } = {\n // buildIn parser\n csv: csvParser,\n dsv: dsvParser,\n tsv: tsvParser\n };\n static _layout: { [key: string]: ILayoutConstructor } = {};\n\n static registerChart(key: string, chart: IChartConstructor) {\n Factory._charts[key] = chart;\n }\n static registerSeries(key: string, series: ISeriesConstructor) {\n Factory._series[key] = series;\n }\n static registerComponent(key: string, cmp: IComponentConstructor, alwaysCheck?: boolean, createOrder?: number) {\n Factory._components[key] = { cmp, alwaysCheck, createOrder: createOrder ?? 0 };\n }\n\n static registerGraphicComponent(key: string, creator: (attrs: any, options?: VRenderComponentOptions) => IGraphic) {\n Factory._graphicComponents[key] = creator;\n }\n\n static createGraphicComponent(componentType: string, attrs: any, options?: VRenderComponentOptions) {\n const compCreator = Factory._graphicComponents[componentType];\n\n if (!compCreator) {\n return null;\n }\n\n return compCreator(attrs, options);\n }\n static registerMark(key: string, mark: MarkConstructor) {\n Factory._marks[key] = mark;\n }\n static registerRegion(key: string, region: IRegionConstructor) {\n Factory._regions[key] = region;\n }\n static registerTransform(key: string, transform: Transform) {\n Factory.transforms[key] = transform;\n }\n\n private static _grammarTransforms: Record<string, GrammarTransformOption> = {};\n\n static registerGrammarTransform(type: string, transform: GrammarTransformOption) {\n Factory._grammarTransforms[type] = transform;\n }\n\n static getGrammarTransform(type: string) {\n return Factory._grammarTransforms[type];\n }\n static registerLayout(key: string, layout: ILayoutConstructor) {\n Factory._layout[key] = layout;\n }\n static registerAnimation(key: string, animation: (params?: any, preset?: any) => MarkAnimationSpec) {\n Factory._animations[key] = animation;\n }\n static registerImplement(key: string, implement: (...args: any) => void) {\n Factory._implements[key] = implement;\n }\n static registerChartPlugin(key: string, plugin: IChartPluginConstructor) {\n Factory._chartPlugin[key] = plugin;\n }\n static registerVChartPlugin(key: string, plugin: IVChartPluginConstructor) {\n Factory._vChartPlugin[key] = plugin;\n }\n static registerComponentPlugin(key: string, plugin: IComponentPluginConstructor) {\n Factory._componentPlugin[key] = plugin;\n }\n\n static createChart(chartType: string, spec: any, options: IChartOption): IChart | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n return new ChartConstructor(spec, options);\n }\n\n static getChart(chartType: string) {\n return Factory._charts[chartType];\n }\n\n static createChartSpecTransformer(\n chartType: string,\n option: IChartSpecTransformerOption\n ): IChartSpecTransformer | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n const ChartSpecTransformerConstructor = ChartConstructor.transformerConstructor;\n return new ChartSpecTransformerConstructor({\n seriesType: ChartConstructor.seriesType,\n ...option\n });\n }\n\n static createRegion(regionType: string, spec: any, options: IModelOption): IRegion | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n return new RegionConstructor(spec, options);\n }\n\n static createRegionSpecTransformer(\n regionType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n const RegionSpecTransformerConstructor = RegionConstructor.transformerConstructor;\n return new RegionSpecTransformerConstructor(options);\n }\n\n static createSeries(seriesType: string, spec: any, options: ISeriesOption) {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n return new SeriesConstructor(spec, options);\n }\n\n static createSeriesSpecTransformer(\n seriesType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n const SeriesSpecTransformerConstructor = SeriesConstructor.transformerConstructor;\n return new SeriesSpecTransformerConstructor(options);\n }\n\n static createMark(markType: string, name: string, options: IMarkOption) {\n if (!Factory._marks[markType]) {\n return null;\n }\n const MarkConstructor = Factory._marks[markType] as IMarkConstructor;\n const markInstance = new MarkConstructor(name, options);\n if (markInstance.type === MarkTypeEnum.group) {\n // group 目前关闭交互,不参与事件拾取\n markInstance.setMarkConfig({ interactive: false });\n }\n return markInstance;\n }\n\n static getComponents() {\n return Object.values(Factory._components);\n }\n\n static getComponentInKey(name: string) {\n return Factory._components[name].cmp;\n }\n\n static getLayout() {\n return Object.values(Factory._layout);\n }\n\n static getLayoutInKey(name: string) {\n return Factory._layout[name];\n }\n\n static getSeries() {\n return Object.values(Factory._series);\n }\n\n static getSeriesInType(type: string) {\n return Factory._series[type];\n }\n\n static getRegionInType(type: string) {\n return Factory._regions[type];\n }\n\n static getAnimationInKey(key: string) {\n return Factory._animations[key];\n }\n\n static getImplementInKey(key: string) {\n return Factory._implements[key];\n }\n\n static getSeriesMarkMap(seriesType: string): Partial<Record<SeriesMarkNameEnum, ISeriesMarkInfo>> {\n if (!Factory._series[seriesType]) {\n return {};\n }\n return Factory._series[seriesType].mark;\n }\n\n static getSeriesBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._series) {\n const item = Factory._series[key];\n if (item && item.builtInTheme && item.builtInTheme[themeKey]) {\n return item.builtInTheme[themeKey];\n }\n }\n\n return null;\n }\n\n static getComponentBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._components) {\n const item = Factory._components[key];\n if (item && item.cmp && item.cmp.builtInTheme && item.cmp.builtInTheme[themeKey]) {\n return item.cmp.builtInTheme[themeKey];\n }\n }\n return null;\n }\n\n static getChartPlugins() {\n return Object.values(Factory._chartPlugin);\n }\n\n static getVChartPlugins() {\n return Object.values(Factory._vChartPlugin);\n }\n\n static getComponentPlugins() {\n return Object.values(Factory._componentPlugin);\n }\n\n static getComponentPluginInType(type: string) {\n return Factory._componentPlugin[type];\n }\n\n static registerFormatter(func: typeof Factory['_formatter']) {\n this._formatter = func;\n }\n\n static getFormatter() {\n return this._formatter;\n }\n\n private static _stageEventPlugins: Record<string, IStageEventPlugin<any>> = {};\n\n static registerStageEventPlugin = (type: string, Plugin: IStageEventPlugin<any>) => {\n Factory._stageEventPlugins[type] = Plugin;\n };\n\n static getStageEventPlugin = (type: string) => {\n return Factory._stageEventPlugins[type];\n };\n\n private static _interactionTriggers: Record<string, ITriggerConstructor> = {};\n\n static registerInteractionTrigger = (interactionType: string, interaction: ITriggerConstructor) => {\n Factory._interactionTriggers[interactionType] = interaction;\n };\n\n static createInteractionTrigger(interactionType: string, options?: IBaseTriggerOptions) {\n const Ctor = Factory._interactionTriggers[interactionType];\n if (!Ctor) {\n return null;\n }\n\n return new Ctor(options);\n }\n\n static hasInteractionTrigger(interactionType: string) {\n return !!Factory._interactionTriggers[interactionType];\n }\n\n private static _composedEventMap: Record<string, IComposedEventConstructor> = {};\n\n static registerComposedEvent = (eType: string, composedEvent: IComposedEventConstructor) => {\n Factory._composedEventMap[eType] = composedEvent;\n };\n\n static getComposedEvent(eType: string) {\n return Factory._composedEventMap[eType];\n }\n\n private static _tooltipProcessors: Record<string, ITooltipProcessorConstructor> = {};\n static registerTooltipProcessor = (type: string, processor: ITooltipProcessorConstructor) => {\n Factory._tooltipProcessors[type] = processor;\n };\n static createTooltipProcessor = (type: string, tooltip: ITooltip) => {\n const Cror = Factory._tooltipProcessors[type];\n if (!Cror) {\n return null;\n }\n return new Cror(tooltip);\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/core/factory.ts"],"names":[],"mappings":"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","file":"factory.js","sourcesContent":["import type {\n IChartConstructor,\n IChartOption,\n IChart,\n IChartSpecTransformerOption,\n IChartSpecTransformer\n} from '../chart/interface';\nimport type { ISeriesConstructor, ISeriesMarkInfo, ISeriesOption, SeriesMarkNameEnum } from '../series/interface';\nimport type { IComponentConstructor } from '../component/interface';\nimport type { IMarkConstructor, IMarkOption, MarkConstructor } from '../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from '../mark/interface/type';\nimport type { IRegion, IRegionConstructor } from '../region/interface';\nimport type { IBaseModelSpecTransformer, IBaseModelSpecTransformerOption, IModelOption } from '../model/interface';\nimport type { Transform, Parser } from '@visactor/vdataset';\nimport type { ILayoutConstructor } from '../layout/interface';\nimport type { IChartPluginConstructor } from '../plugin/chart/interface';\nimport type { IComponentPluginConstructor } from '../plugin/components/interface';\nimport type { IGraphic } from '@visactor/vrender-core';\nimport type { GrammarTransformOption, IStageEventPlugin, VRenderComponentOptions } from './interface';\nimport type { MarkAnimationSpec } from '../animation/interface';\nimport type { IBaseTriggerOptions, ITriggerConstructor } from '../interaction/interface/trigger';\nimport type { IComposedEventConstructor } from '../index-harmony-simple';\nimport type { ITooltipProcessorConstructor } from '../component/tooltip/processor/interface';\nimport type { ITooltip } from '../component';\nimport type { IVChartPluginConstructor } from '../plugin/vchart';\nimport { factoryRegistry } from './factory-registry';\n\nexport class Factory {\n private static _charts: { [key: string]: IChartConstructor } = factoryRegistry.charts;\n private static _series: { [key: string]: ISeriesConstructor } = factoryRegistry.series;\n private static _components: {\n [key: string]: {\n cmp: IComponentConstructor;\n alwaysCheck?: boolean;\n createOrder: number;\n };\n } = factoryRegistry.components;\n private static _graphicComponents: Record<string, (attrs: any, options?: VRenderComponentOptions) => IGraphic> =\n factoryRegistry.graphicComponents;\n private static _marks: { [key: string]: MarkConstructor } = factoryRegistry.marks;\n private static _regions: { [key: string]: IRegionConstructor } = factoryRegistry.regions;\n private static _animations: { [key: string]: (params?: any, preset?: any) => MarkAnimationSpec } =\n factoryRegistry.animations;\n private static _implements: { [key: string]: (...args: any) => void } = factoryRegistry.implements;\n private static _chartPlugin: { [key: string]: IChartPluginConstructor } = factoryRegistry.chartPlugin;\n private static _vChartPlugin: { [key: string]: IVChartPluginConstructor } = factoryRegistry.vChartPlugin;\n private static _componentPlugin: { [key: string]: IComponentPluginConstructor } = factoryRegistry.componentPlugin;\n private static _formatter: (\n text: string | number | string[] | number[],\n datum: any,\n formatter: string | string[]\n ) => any;\n\n static transforms: { [key: string]: Transform } = factoryRegistry.transforms;\n static dataParser: { [key: string]: Parser } = factoryRegistry.dataParser;\n static _layout: { [key: string]: ILayoutConstructor } = factoryRegistry.layout;\n\n static registerChart(key: string, chart: IChartConstructor) {\n Factory._charts[key] = chart;\n }\n static registerSeries(key: string, series: ISeriesConstructor) {\n Factory._series[key] = series;\n }\n static registerComponent(key: string, cmp: IComponentConstructor, alwaysCheck?: boolean, createOrder?: number) {\n Factory._components[key] = { cmp, alwaysCheck, createOrder: createOrder ?? 0 };\n }\n\n static registerGraphicComponent(key: string, creator: (attrs: any, options?: VRenderComponentOptions) => IGraphic) {\n Factory._graphicComponents[key] = creator;\n }\n\n static createGraphicComponent(componentType: string, attrs: any, options?: VRenderComponentOptions) {\n const compCreator = Factory._graphicComponents[componentType];\n\n if (!compCreator) {\n return null;\n }\n\n return compCreator(attrs, options);\n }\n static registerMark(key: string, mark: MarkConstructor) {\n Factory._marks[key] = mark;\n }\n static registerRegion(key: string, region: IRegionConstructor) {\n Factory._regions[key] = region;\n }\n static registerTransform(key: string, transform: Transform) {\n Factory.transforms[key] = transform;\n }\n\n private static _grammarTransforms: Record<string, GrammarTransformOption> = factoryRegistry.grammarTransforms;\n\n static registerGrammarTransform(type: string, transform: GrammarTransformOption) {\n Factory._grammarTransforms[type] = transform;\n }\n\n static getGrammarTransform(type: string) {\n return Factory._grammarTransforms[type];\n }\n static registerLayout(key: string, layout: ILayoutConstructor) {\n Factory._layout[key] = layout;\n }\n static registerAnimation(key: string, animation: (params?: any, preset?: any) => MarkAnimationSpec) {\n Factory._animations[key] = animation;\n }\n static registerImplement(key: string, implement: (...args: any) => void) {\n Factory._implements[key] = implement;\n }\n static registerChartPlugin(key: string, plugin: IChartPluginConstructor) {\n Factory._chartPlugin[key] = plugin;\n }\n static registerVChartPlugin(key: string, plugin: IVChartPluginConstructor) {\n Factory._vChartPlugin[key] = plugin;\n }\n static registerComponentPlugin(key: string, plugin: IComponentPluginConstructor) {\n Factory._componentPlugin[key] = plugin;\n }\n\n static createChart(chartType: string, spec: any, options: IChartOption): IChart | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n return new ChartConstructor(spec, options);\n }\n\n static getChart(chartType: string) {\n return Factory._charts[chartType];\n }\n\n static createChartSpecTransformer(\n chartType: string,\n option: IChartSpecTransformerOption\n ): IChartSpecTransformer | null {\n if (!Factory._charts[chartType]) {\n return null;\n }\n const ChartConstructor = Factory._charts[chartType];\n const ChartSpecTransformerConstructor = ChartConstructor.transformerConstructor;\n return new ChartSpecTransformerConstructor({\n seriesType: ChartConstructor.seriesType,\n ...option\n });\n }\n\n static createRegion(regionType: string, spec: any, options: IModelOption): IRegion | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n return new RegionConstructor(spec, options);\n }\n\n static createRegionSpecTransformer(\n regionType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._regions[regionType]) {\n return null;\n }\n const RegionConstructor = Factory._regions[regionType];\n const RegionSpecTransformerConstructor = RegionConstructor.transformerConstructor;\n return new RegionSpecTransformerConstructor(options);\n }\n\n static createSeries(seriesType: string, spec: any, options: ISeriesOption) {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n return new SeriesConstructor(spec, options);\n }\n\n static createSeriesSpecTransformer(\n seriesType: string,\n options: IBaseModelSpecTransformerOption\n ): IBaseModelSpecTransformer | null {\n if (!Factory._series[seriesType]) {\n return null;\n }\n const SeriesConstructor = Factory._series[seriesType];\n const SeriesSpecTransformerConstructor = SeriesConstructor.transformerConstructor;\n return new SeriesSpecTransformerConstructor(options);\n }\n\n static createMark(markType: string, name: string, options: IMarkOption) {\n if (!Factory._marks[markType]) {\n return null;\n }\n const MarkConstructor = Factory._marks[markType] as IMarkConstructor;\n const markInstance = new MarkConstructor(name, options);\n if (markInstance.type === MarkTypeEnum.group) {\n // group 目前关闭交互,不参与事件拾取\n markInstance.setMarkConfig({ interactive: false });\n }\n return markInstance;\n }\n\n static getComponents() {\n return Object.values(Factory._components);\n }\n\n static getComponentInKey(name: string) {\n return Factory._components[name].cmp;\n }\n\n static getLayout() {\n return Object.values(Factory._layout);\n }\n\n static getLayoutInKey(name: string) {\n return Factory._layout[name];\n }\n\n static getSeries() {\n return Object.values(Factory._series);\n }\n\n static getSeriesInType(type: string) {\n return Factory._series[type];\n }\n\n static getRegionInType(type: string) {\n return Factory._regions[type];\n }\n\n static getAnimationInKey(key: string) {\n return Factory._animations[key];\n }\n\n static getImplementInKey(key: string) {\n return Factory._implements[key];\n }\n\n static getSeriesMarkMap(seriesType: string): Partial<Record<SeriesMarkNameEnum, ISeriesMarkInfo>> {\n if (!Factory._series[seriesType]) {\n return {};\n }\n return Factory._series[seriesType].mark;\n }\n\n static getSeriesBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._series) {\n const item = Factory._series[key];\n if (item && item.builtInTheme && item.builtInTheme[themeKey]) {\n return item.builtInTheme[themeKey];\n }\n }\n\n return null;\n }\n\n static getComponentBuiltInTheme(themeKey: string): Record<string, any> {\n for (const key in Factory._components) {\n const item = Factory._components[key];\n if (item && item.cmp && item.cmp.builtInTheme && item.cmp.builtInTheme[themeKey]) {\n return item.cmp.builtInTheme[themeKey];\n }\n }\n return null;\n }\n\n static getChartPlugins() {\n return Object.values(Factory._chartPlugin);\n }\n\n static getVChartPlugins() {\n return Object.values(Factory._vChartPlugin);\n }\n\n static getComponentPlugins() {\n return Object.values(Factory._componentPlugin);\n }\n\n static getComponentPluginInType(type: string) {\n return Factory._componentPlugin[type];\n }\n\n static registerFormatter(func: typeof Factory['_formatter']) {\n this._formatter = func;\n factoryRegistry.formatter = func;\n }\n\n static getFormatter() {\n return factoryRegistry.formatter ?? this._formatter;\n }\n\n private static _stageEventPlugins: Record<string, IStageEventPlugin<any>> = factoryRegistry.stageEventPlugins;\n\n static registerStageEventPlugin = (type: string, Plugin: IStageEventPlugin<any>) => {\n Factory._stageEventPlugins[type] = Plugin;\n };\n\n static getStageEventPlugin = (type: string) => {\n return Factory._stageEventPlugins[type];\n };\n\n private static _interactionTriggers: Record<string, ITriggerConstructor> = factoryRegistry.interactionTriggers;\n\n static registerInteractionTrigger = (interactionType: string, interaction: ITriggerConstructor) => {\n Factory._interactionTriggers[interactionType] = interaction;\n };\n\n static createInteractionTrigger(interactionType: string, options?: IBaseTriggerOptions) {\n const Ctor = Factory._interactionTriggers[interactionType];\n if (!Ctor) {\n return null;\n }\n\n return new Ctor(options);\n }\n\n static hasInteractionTrigger(interactionType: string) {\n return !!Factory._interactionTriggers[interactionType];\n }\n\n private static _composedEventMap: Record<string, IComposedEventConstructor> = factoryRegistry.composedEventMap;\n\n static registerComposedEvent = (eType: string, composedEvent: IComposedEventConstructor) => {\n Factory._composedEventMap[eType] = composedEvent;\n };\n\n static getComposedEvent(eType: string) {\n return Factory._composedEventMap[eType];\n }\n\n private static _tooltipProcessors: Record<string, ITooltipProcessorConstructor> = factoryRegistry.tooltipProcessors;\n static registerTooltipProcessor = (type: string, processor: ITooltipProcessorConstructor) => {\n Factory._tooltipProcessors[type] = processor;\n };\n static createTooltipProcessor = (type: string, tooltip: ITooltip) => {\n const Cror = Factory._tooltipProcessors[type];\n if (!Cror) {\n return null;\n }\n return new Cror(tooltip);\n };\n}\n"]}
|
package/esm/core/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VChart } from './vchart';
|
|
2
2
|
import { Factory } from './factory';
|
|
3
3
|
export { VChart, Factory };
|
|
4
|
-
export declare const version = "2.1.
|
|
4
|
+
export declare const version = "2.1.1";
|
|
5
5
|
export type { IVChart } from './interface';
|
|
6
6
|
export type { IStateSpec, StateValueType } from '../compile/mark';
|
|
7
7
|
export type { IRegion } from '../region/interface';
|