igniteui-webcomponents-charts
Version:
Ignite UI Web Components charting components for building rich data visualizations using TypeScript APIs.
195 lines (192 loc) • 7.57 kB
JavaScript
import { delegateCombine, delegateRemove } from "igniteui-webcomponents-core";
import { AxisAngleLabelMode_$type } from "./AxisAngleLabelMode";
import { IgcCategoryAxisBaseComponent } from "./igc-category-axis-base-component";
import { CategoryAngleAxis } from "./CategoryAngleAxis";
import { getAllPropertyNames, toSpinal, ensureEnum, enumToString } from "igniteui-webcomponents-core";
import { RegisterElementHelper } from "igniteui-webcomponents-core";
/**
* Represents a IgxDataChartComponent category angle axis. Useful for displaying radial categories.
*
* `CategoryAngleAxis` represents a IgxDataChartComponent category angle axis. Useful for displaying radial categories
*/
export let IgcCategoryAngleAxisComponent = /*@__PURE__*/ (() => {
class IgcCategoryAngleAxisComponent extends IgcCategoryAxisBaseComponent {
createImplementation() {
return new CategoryAngleAxis();
}
/**
* @hidden
*/
get i() {
return this._implementation;
}
constructor() {
super();
this._actualIntervalChange = null;
this._actualIntervalChange_wrapped = null;
}
connectedCallback() {
if (super["connectedCallback"]) {
super["connectedCallback"]();
}
if (this.i.connectedCallback) {
this.i.connectedCallback();
}
if (!this._attached) {
this._attached = true;
this._flushQueuedAttributes();
}
}
disconnectedCallback() {
if (super["disconnectedCallback"]) {
super["disconnectedCallback"]();
}
if (this.i.disconnectedCallback) {
this.i.disconnectedCallback();
}
if (this._attached) {
this._attached = false;
}
}
static get observedAttributes() {
if (IgcCategoryAngleAxisComponent._observedAttributesIgcCategoryAngleAxisComponent == null) {
let names = getAllPropertyNames(IgcCategoryAngleAxisComponent);
for (let i = 0; i < names.length; i++) {
names[i] = toSpinal(names[i]);
}
IgcCategoryAngleAxisComponent._observedAttributesIgcCategoryAngleAxisComponent = names;
}
return IgcCategoryAngleAxisComponent._observedAttributesIgcCategoryAngleAxisComponent;
}
static register() {
if (!IgcCategoryAngleAxisComponent._isElementRegistered) {
IgcCategoryAngleAxisComponent._isElementRegistered = true;
RegisterElementHelper.registerElement(IgcCategoryAngleAxisComponent.htmlTagName, IgcCategoryAngleAxisComponent);
}
}
/**
* Checks if the axis is of angular type
*/
get isAngular() {
return this.i.b9;
}
/**
* Indicates the angle in degress that the chart's 0th angle should be offset.
*
* Indicates the angle in degress that the chart's 0th angle should be offset.
*/
get startAngleOffset() {
return this.i.ne;
}
set startAngleOffset(v) {
this.i.ne = +v;
this._a("startAngleOffset", this.i.ne);
}
/**
* Indicates the mode axis labels will operate in.
*/
get labelMode() {
return this.i.ml;
}
set labelMode(v) {
this.i.ml = ensureEnum(AxisAngleLabelMode_$type, v);
this._a("labelMode", enumToString(AxisAngleLabelMode_$type, this.i.ml));
}
get areGroupSizesUneven() {
return this.i.mv;
}
/**
* Gets or sets the frequency of displayed labels.
* The set value is a factor that determines which labels will be hidden. For example, an interval of 2 will display every other label.
*
* Gets or sets the frequency of displayed labels.The set value is a factor that determines which labels will be hidden.
* For example, an interval of 2 will display every other label.
*/
get interval() {
return this.i.nb;
}
set interval(v) {
this.i.nb = +v;
this._a("interval", this.i.nb);
}
/**
* Gets the effective value for the current Interval.
*
* Gets the effective value for the current Interval.
*/
get actualInterval() {
return this.i.m3;
}
set actualInterval(v) {
this.i.m3 = +v;
this._a("actualInterval", this.i.m3);
}
/**
* Gets or sets the frequency of displayed minor lines.
* The set value is a factor that determines how the minor lines will be displayed.
*
* Gets or sets the frequency of displayed minor lines. The set value is a factor that determines how the minor lines will be displayed.
*/
get minorInterval() {
return this.i.nc;
}
set minorInterval(v) {
this.i.nc = +v;
this._a("minorInterval", this.i.nc);
}
/**
* Gets the effective value for the current MinorInterval.
*
* Get the effective value for the current minorInterval.
*/
get actualMinorInterval() {
return this.i.m4;
}
set actualMinorInterval(v) {
this.i.m4 = +v;
this._a("actualMinorInterval", this.i.m4);
}
/**
* Gets the scaled angle in radians from the raw axis value.
* @param unscaledAngle * The raw axis value.
*/
getScaledAngle(unscaledAngle) {
let iv = this.i.getScaledAngle(unscaledAngle);
return (iv);
}
/**
* Gets the raw axis value from the scaled angle in radians.
*/
getUnscaledAngle(scaledAngle) {
let iv = this.i.getUnscaledAngle(scaledAngle);
return (iv);
}
get actualIntervalChange() {
return this._actualIntervalChange;
}
set actualIntervalChange(ev) {
if (this._actualIntervalChange_wrapped !== null) {
this.i.propertyChanged = delegateRemove(this.i.propertyChanged, this._actualIntervalChange_wrapped);
this._actualIntervalChange_wrapped = null;
this._actualIntervalChange = null;
}
this._actualIntervalChange = ev;
this._actualIntervalChange_wrapped = (o, e) => {
let ext = this.actualInterval;
if (e.propertyName == 'M3') {
if (this.beforeActualIntervalChange) {
this.beforeActualIntervalChange(this, ext);
}
if (this._actualIntervalChange) {
this._actualIntervalChange(this, ext);
}
}
};
this.i.propertyChanged = delegateCombine(this.i.propertyChanged, this._actualIntervalChange_wrapped);
}
}
IgcCategoryAngleAxisComponent._observedAttributesIgcCategoryAngleAxisComponent = null;
IgcCategoryAngleAxisComponent.htmlTagName = "igc-category-angle-axis";
IgcCategoryAngleAxisComponent._isElementRegistered = false;
return IgcCategoryAngleAxisComponent;
})();