"use strict";
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const tslib_es6 = require("../../../node_modules/tslib/tslib.es6.js");
const extension = require("../../extension.js");
const AxisView = require("../axis/AxisView.js");
const PolarAxisPointer = require("../axisPointer/PolarAxisPointer.js");
const install$1 = require("../axisPointer/install.js");
const PolarModel = require("../../coord/polar/PolarModel.js");
const axisModelCreator = require("../../coord/axisModelCreator.js");
const AxisModel = require("../../coord/polar/AxisModel.js");
const polarCreator = require("../../coord/polar/polarCreator.js");
const AngleAxisView = require("../axis/AngleAxisView.js");
const RadiusAxisView = require("../axis/RadiusAxisView.js");
const Component = require("../../view/Component.js");
const util = require("../../../../../../zrender@5.4.4/node_modules/zrender/lib/core/util.js");
const barPolar = require("../../layout/barPolar.js");
var angleAxisExtraOption = {
  startAngle: 90,
  clockwise: true,
  splitNumber: 12,
  axisLabel: {
    rotate: 0
  }
};
var radiusAxisExtraOption = {
  splitNumber: 5
};
var PolarView = (
  /** @class */
  function(_super) {
    tslib_es6.__extends(PolarView2, _super);
    function PolarView2() {
      var _this = _super !== null && _super.apply(this, arguments) || this;
      _this.type = PolarView2.type;
      return _this;
    }
    PolarView2.type = "polar";
    return PolarView2;
  }(Component.default)
);
function install(registers) {
  extension.use(install$1.install);
  AxisView.default.registerAxisPointerClass("PolarAxisPointer", PolarAxisPointer.default);
  registers.registerCoordinateSystem("polar", polarCreator.default);
  registers.registerComponentModel(PolarModel.default);
  registers.registerComponentView(PolarView);
  axisModelCreator.default(registers, "angle", AxisModel.AngleAxisModel, angleAxisExtraOption);
  axisModelCreator.default(registers, "radius", AxisModel.RadiusAxisModel, radiusAxisExtraOption);
  registers.registerComponentView(AngleAxisView.default);
  registers.registerComponentView(RadiusAxisView.default);
  registers.registerLayout(util.curry(barPolar.default, "bar"));
}
exports.install = install;
