UNPKG

igniteui-webcomponents-charts

Version:

Ignite UI Web Components charting components for building rich data visualizations using TypeScript APIs.

225 lines (223 loc) 9.48 kB
import { IgcTimeAxisBreakCollection } from "./igc-time-axis-break-collection"; import { TimeAxisLabellingMode_$type } from "./TimeAxisLabellingMode"; import { IgcTimeAxisLabelFormatCollection } from "./igc-time-axis-label-format-collection"; import { IgcTimeAxisIntervalCollection } from "./igc-time-axis-interval-collection"; import { IgcTimeAxisBaseComponent } from "./igc-time-axis-base-component"; import { TimeXAxis } from "./TimeXAxis"; import { getAllPropertyNames, toSpinal, ensureEnum, enumToString } from "igniteui-webcomponents-core"; import { RegisterElementHelper } from "igniteui-webcomponents-core"; import { TimeAxisBreakCollection as TimeAxisBreakCollection_internal } from "./TimeAxisBreakCollection"; import { TimeAxisBreak } from "./TimeAxisBreak"; import { SyncableObservableCollection$1 } from "igniteui-webcomponents-core"; import { TimeAxisLabelFormatCollection as TimeAxisLabelFormatCollection_internal } from "./TimeAxisLabelFormatCollection"; import { TimeAxisLabelFormat } from "./TimeAxisLabelFormat"; import { TimeAxisIntervalCollection as TimeAxisIntervalCollection_internal } from "./TimeAxisIntervalCollection"; import { TimeAxisInterval } from "./TimeAxisInterval"; /** * A horizontal axis that uses a DateTime scale. * * The `TimeXAxis` is a horizontal axis that uses a DateTime scale. */ export let IgcTimeXAxisComponent = /*@__PURE__*/ (() => { class IgcTimeXAxisComponent extends IgcTimeAxisBaseComponent { createImplementation() { return new TimeXAxis(); } /** * @hidden */ get i() { return this._implementation; } constructor() { super(); this._breaks = null; this._labelFormats = null; this._intervals = 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 (IgcTimeXAxisComponent._observedAttributesIgcTimeXAxisComponent == null) { let names = getAllPropertyNames(IgcTimeXAxisComponent); for (let i = 0; i < names.length; i++) { names[i] = toSpinal(names[i]); } IgcTimeXAxisComponent._observedAttributesIgcTimeXAxisComponent = names; } return IgcTimeXAxisComponent._observedAttributesIgcTimeXAxisComponent; } static register() { if (!IgcTimeXAxisComponent._isElementRegistered) { IgcTimeXAxisComponent._isElementRegistered = true; RegisterElementHelper.registerElement(IgcTimeXAxisComponent.htmlTagName, IgcTimeXAxisComponent); } } get isPiecewise() { return this.i.cl; } /** * TimeAxisBreaks to apply to this axis, representing spans of time to omit, such as weekends. * * The `Breaks` to apply to this axis, representing spans of time to omit, such as weekends. */ get breaks() { if (this._breaks === null) { let coll = new IgcTimeAxisBreakCollection(); let innerColl = this.i.breaks; if (!innerColl) { innerColl = new TimeAxisBreakCollection_internal(); } this._breaks = coll._fromInner(innerColl); } return this._breaks; } set breaks(v) { if (this._breaks !== null) { this._breaks._setSyncTarget(null); this._breaks = null; } let coll = new IgcTimeAxisBreakCollection(); this._breaks = coll._fromOuter(v); let syncColl = new SyncableObservableCollection$1(TimeAxisBreak.$type); let innerColl = this.i.breaks; if (!innerColl) { innerColl = new TimeAxisBreakCollection_internal(); } syncColl._inner = innerColl; syncColl.clear(); this._breaks._setSyncTarget(syncColl); } /** * Gets or sets the labelling mode to use when the automatic label formats are applied. */ get labellingMode() { return this.i.n5; } set labellingMode(v) { this.i.n5 = ensureEnum(TimeAxisLabellingMode_$type, v); this._a("labellingMode", enumToString(TimeAxisLabellingMode_$type, this.i.n5)); } /** * A list of axis label formats to apply, which are selected according to the visible axis range. * The label format selected will be the one with the largest range smaller than the visible range of the axis. */ get labelFormats() { if (this._labelFormats === null) { let coll = new IgcTimeAxisLabelFormatCollection(); let innerColl = this.i.labelFormats; if (!innerColl) { innerColl = new TimeAxisLabelFormatCollection_internal(); } this._labelFormats = coll._fromInner(innerColl); } return this._labelFormats; } set labelFormats(v) { if (this._labelFormats !== null) { this._labelFormats._setSyncTarget(null); this._labelFormats = null; } let coll = new IgcTimeAxisLabelFormatCollection(); this._labelFormats = coll._fromOuter(v); let syncColl = new SyncableObservableCollection$1(TimeAxisLabelFormat.$type); let innerColl = this.i.labelFormats; if (!innerColl) { innerColl = new TimeAxisLabelFormatCollection_internal(); } syncColl._inner = innerColl; syncColl.clear(); this._labelFormats._setSyncTarget(syncColl); } /** * A list of axis label intervals to apply, which are selected according to the visible axis range. * The interval selected will be the one with the largest range smaller than the visible range of the axis. */ get intervals() { if (this._intervals === null) { let coll = new IgcTimeAxisIntervalCollection(); let innerColl = this.i.intervals; if (!innerColl) { innerColl = new TimeAxisIntervalCollection_internal(); } this._intervals = coll._fromInner(innerColl); } return this._intervals; } set intervals(v) { if (this._intervals !== null) { this._intervals._setSyncTarget(null); this._intervals = null; } let coll = new IgcTimeAxisIntervalCollection(); this._intervals = coll._fromOuter(v); let syncColl = new SyncableObservableCollection$1(TimeAxisInterval.$type); let innerColl = this.i.intervals; if (!innerColl) { innerColl = new TimeAxisIntervalCollection_internal(); } syncColl._inner = innerColl; syncColl.clear(); this._intervals._setSyncTarget(syncColl); } /** * Gets if the current axis is of category date time axis type */ get isCategoryDateTime() { return this.i.cc; } findByName(name) { var baseResult = super.findByName(name); if (baseResult) { return baseResult; } if (this.breaks != null && this.breaks.findByName && this.breaks.findByName(name)) { return this.breaks.findByName(name); } if (this.labelFormats != null && this.labelFormats.findByName && this.labelFormats.findByName(name)) { return this.labelFormats.findByName(name); } if (this.intervals != null && this.intervals.findByName && this.intervals.findByName(name)) { return this.intervals.findByName(name); } return null; } getValueLabel(value) { let iv = this.i.gf(value); return (iv); } /** * Gets the index of the data item with the value nearest the given value. * @param unscaledValue * The value to find a value close to. */ getIndexClosestToUnscaledValue(unscaledValue) { let iv = this.i.i$f(unscaledValue); return (iv); } } IgcTimeXAxisComponent._observedAttributesIgcTimeXAxisComponent = null; IgcTimeXAxisComponent.htmlTagName = "igc-time-x-axis"; IgcTimeXAxisComponent._isElementRegistered = false; return IgcTimeXAxisComponent; })();