cione-comp-lib
Version:
`$ yarn add cione-comp-lib` 或者 `$ npm i cione-comp-lib -S`
38 lines (37 loc) • 1.55 kB
JavaScript
import "../../../../echarts/lib/echarts.mjs";
import axisDefault from "./axis3DDefault.mjs";
import OrdinalMeta from "../../../../echarts/lib/data/OrdinalMeta.mjs";
import { merge, clone, curry } from "../../../../zrender/lib/core/util.mjs";
var AXIS_TYPES = ["value", "category", "time", "log"];
function createAxis3DModel(registers, dim, BaseAxisModelClass, axisTypeDefaulter, extraDefaultOption) {
AXIS_TYPES.forEach(function(axisType) {
var AxisModel = BaseAxisModelClass.extend({
type: dim + "Axis3D." + axisType,
__ordinalMeta: null,
mergeDefaultAndTheme: function(option, ecModel) {
var themeModel = ecModel.getTheme();
merge(option, themeModel.get(axisType + "Axis3D"));
merge(option, this.getDefaultOption());
option.type = axisTypeDefaulter(dim, option);
},
optionUpdated: function() {
var thisOption = this.option;
if (thisOption.type === "category") {
this.__ordinalMeta = OrdinalMeta.createByAxisModel(this);
}
},
getCategories: function() {
if (this.option.type === "category") {
return this.__ordinalMeta.categories;
}
},
getOrdinalMeta: function() {
return this.__ordinalMeta;
},
defaultOption: merge(clone(axisDefault[axisType + "Axis3D"]), extraDefaultOption || {}, true)
});
registers.registerComponentModel(AxisModel);
});
registers.registerSubTypeDefaulter(dim + "Axis3D", curry(axisTypeDefaulter, dim));
}
export { createAxis3DModel as default };