@progress/kendo-angular-charts
Version:
Kendo UI Charts for Angular - A comprehensive package for creating beautiful and interactive data visualization. Every chart type, stock charts, and sparklines are included.
190 lines (189 loc) • 7.98 kB
JavaScript
/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID } from '@angular/core';
import { IntlService } from '@progress/kendo-angular-intl';
import { CollectionItemComponent } from '../common/collection-item.component';
import { CollectionService } from '../common/collection.service';
import { ConfigurationService } from '../common/configuration.service';
import { WeekStartDay } from '../common/property-types';
import * as i0 from "@angular/core";
import * as i1 from "../common/configuration.service";
import * as i2 from "../common/collection.service";
import * as i3 from "@progress/kendo-angular-intl";
/**
* The configuration component for a category axis ([see example]({% slug axes_chart_charts %})).
*/
export class CategoryAxisItemComponent extends CollectionItemComponent {
configurationService;
collectionService;
intl;
autoBaseUnitSteps;
axisCrossingValue;
background;
baseUnit;
baseUnitStep;
categories;
color;
justified;
line;
majorGridLines;
majorTicks;
max;
/**
* The maximum number of groups (categories) to display when
* [`categoryAxis.baseUnit`]({% slug api_charts_categoryaxis %}#toc-baseunit) is set to `"fit"` or
* [`categoryAxis.baseUnitStep`]({% slug api_charts_categoryaxis %}#toc-baseunitstep) is set to `"auto"`.
* @default 10
*/
maxDateGroups;
maxDivisions;
min;
minorGridLines;
minorTicks;
/**
* The unique axis name. Used to associate a series with a category axis,
* which utilizes the [`series.categoryAxis`]({% slug api_charts_series %}#toc-categoryaxis) option.
* @default 'primary'
*/
name;
pane;
plotBands;
/**
* If set to `true`, the category axis direction is reversed.
* By default, categories are listed from left to right and from bottom to top.
* @default false
*/
reverse;
/**
* If set to `true`, the Chart rounds the first and last date to the nearest base unit.
* @default true
*/
roundToBaseUnit;
/**
* The angle (degrees) of the first category on the axis.
* Angles increase clockwise with zero to the left. Negative values are acceptable.
* @default 90
*/
startAngle;
/**
* The category axis type.
* The supported values include `category` for a discrete category axis and `date` for a specialized axis for displaying chronological data.
* @default 'category'
*/
type;
/**
* If set to `true`, the Chart displays the category axis. By default, the category axis is visible.
* @default true
*/
visible;
/**
* The week start day when the `baseUnit` is set to `"weeks"`.
* @default 'Sunday'
*/
weekStartDay;
// These options are also available as child components
crosshair;
labels;
notes;
select;
title;
rangeLabels;
intlSubscription;
constructor(configurationService, collectionService, intl, localeId) {
super(configurationService, collectionService);
this.configurationService = configurationService;
this.collectionService = collectionService;
this.intl = intl;
intl.localeId = localeId;
this.notifyChanges({ weekStartDay: intl.firstDay(intl.localeId) });
this.intlSubscription = intl.changes.subscribe(() => {
this.notifyChanges({ weekStartDay: intl.firstDay(intl.localeId) });
});
}
ngOnDestroy() {
if (this.intlSubscription) {
this.intlSubscription.unsubscribe();
}
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CategoryAxisItemComponent, deps: [{ token: i1.ConfigurationService }, { token: i2.CollectionService }, { token: i3.IntlService }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CategoryAxisItemComponent, isStandalone: true, selector: "kendo-chart-category-axis-item", inputs: { autoBaseUnitSteps: "autoBaseUnitSteps", axisCrossingValue: "axisCrossingValue", background: "background", baseUnit: "baseUnit", baseUnitStep: "baseUnitStep", categories: "categories", color: "color", justified: "justified", line: "line", majorGridLines: "majorGridLines", majorTicks: "majorTicks", max: "max", maxDateGroups: "maxDateGroups", maxDivisions: "maxDivisions", min: "min", minorGridLines: "minorGridLines", minorTicks: "minorTicks", name: "name", pane: "pane", plotBands: "plotBands", reverse: "reverse", roundToBaseUnit: "roundToBaseUnit", startAngle: "startAngle", type: "type", visible: "visible", weekStartDay: "weekStartDay", crosshair: "crosshair", labels: "labels", notes: "notes", select: "select", title: "title", rangeLabels: "rangeLabels" }, providers: [ConfigurationService], usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CategoryAxisItemComponent, decorators: [{
type: Component,
args: [{
changeDetection: ChangeDetectionStrategy.OnPush,
providers: [ConfigurationService],
selector: 'kendo-chart-category-axis-item',
template: '',
standalone: true
}]
}], ctorParameters: function () { return [{ type: i1.ConfigurationService }, { type: i2.CollectionService }, { type: i3.IntlService }, { type: undefined, decorators: [{
type: Inject,
args: [LOCALE_ID]
}] }]; }, propDecorators: { autoBaseUnitSteps: [{
type: Input
}], axisCrossingValue: [{
type: Input
}], background: [{
type: Input
}], baseUnit: [{
type: Input
}], baseUnitStep: [{
type: Input
}], categories: [{
type: Input
}], color: [{
type: Input
}], justified: [{
type: Input
}], line: [{
type: Input
}], majorGridLines: [{
type: Input
}], majorTicks: [{
type: Input
}], max: [{
type: Input
}], maxDateGroups: [{
type: Input
}], maxDivisions: [{
type: Input
}], min: [{
type: Input
}], minorGridLines: [{
type: Input
}], minorTicks: [{
type: Input
}], name: [{
type: Input
}], pane: [{
type: Input
}], plotBands: [{
type: Input
}], reverse: [{
type: Input
}], roundToBaseUnit: [{
type: Input
}], startAngle: [{
type: Input
}], type: [{
type: Input
}], visible: [{
type: Input
}], weekStartDay: [{
type: Input
}], crosshair: [{
type: Input
}], labels: [{
type: Input
}], notes: [{
type: Input
}], select: [{
type: Input
}], title: [{
type: Input
}], rangeLabels: [{
type: Input
}] } });