igniteui-angular-charts
Version:
Ignite UI Angular charting components for building rich data visualizations for modern web apps.
149 lines (148 loc) • 6.64 kB
JavaScript
import { Component, forwardRef, Input, ChangeDetectionStrategy } from '@angular/core';
import { IgxLegendBaseComponent } from './igx-legend-base-component';
import { Legend } from "./Legend";
import { LegendOrientation_$type } from './LegendOrientation';
import { AngularRenderer } from "igniteui-angular-core";
import { DataChartStylingDefaults } from './DataChartStylingDefaults';
import { ensureEnum } from "igniteui-angular-core";
import * as i0 from "@angular/core";
/**
* Represents a legend in a IgxDataChartComponent control.
*
* The `Legend` helps end-user identify visuals of chart series with contextual information related to the data plotted in the chart control.
*
* ```html
* <igx-data-chart
* [dataSource]="data"
* [legend]="legend">
* <igx-category-x-axis
* label="label"
* #xAxis>
* </igx-category-x-axis>
* <igx-numeric-y-axis
* #yAxis>
* </igx-numeric-y-axis>
* <igx-line-series
* [xAxis]="xAxis"
* [yAxis]="yAxis"
* valueMemberPath="value">
* </igx-line-series>
* </igx-data-chart>
* <igx-legend #legend></igx-legend>
* ```
*
* ```ts
* public legend : IgxLegendComponent;
* ```
*/
export let IgxLegendComponent = /*@__PURE__*/ (() => {
class IgxLegendComponent extends IgxLegendBaseComponent {
constructor(renderer, elRef, ngZone) {
super();
this.renderer = renderer;
this.elRef = elRef;
this.ngZone = ngZone;
this._zoneRunner = (act) => this.ngZone.run(act);
this.container = renderer.createElement("div");
renderer.appendChild(elRef.nativeElement, this.container);
var root;
root = this.container;
if (this.container != null) {
root = this.container;
}
var ren = new AngularRenderer(root, this.renderer, window.document, this.ngZone, true, DataChartStylingDefaults);
this._wrapper = ren;
this.i.provideContainer(ren);
}
ngOnDestroy() {
this._wrapper.destroy();
this.i.provideContainer(null);
}
createImplementation() {
return new Legend();
}
get i() {
return this._implementation;
}
/**
* Gets or sets the current Legend object's orientation.
*/
get orientation() {
return this.i.bj;
}
set orientation(v) {
this.i.bj = ensureEnum(LegendOrientation_$type, v);
}
/**
* Gets or sets color of text
*/
get textColor() {
return this.i.bp;
}
set textColor(v) {
this.i.bp = v;
}
/**
* Gets or sets style of text.
*/
get textStyle() {
return this.i.bq;
}
set textStyle(v) {
this.i.bq = v;
}
}
IgxLegendComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxLegendComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
IgxLegendComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: IgxLegendComponent, selector: "igx-legend", inputs: { orientation: "orientation", textColor: "textColor", textStyle: "textStyle" }, host: { classAttribute: "ig-legend igx-legend" }, providers: [{ provide: IgxLegendBaseComponent, useExisting: forwardRef(() => IgxLegendComponent) }], usesInheritance: true, ngImport: i0, template: ``, isInline: true, styles: [":host {\n display: block;\n}\n.ig-legend {\n border: none;\n border: var(--legend-border, none);\n overflow: auto;\n overflow: var(--legend-item-overflow, auto);\n}\n.ig-chart-legend-item-text {\n font: 12px Verdana, Arial, sans-serif;\n font: var(--legend-item-font, 12px Verdana, Arial, sans-serif);\n vertical-align: middle;\n vertical-align: var(--legend-item-vertical-align, middle);\n}\n.ig-chart-legend-items-list\n{\n padding: 5px;\n padding: var(--legend-item-padding, 5px);\n margin: 0px;\n margin: var(--legend-item-margin, 0px);\n background-color: transparent;\n background-color: var(--legend-list-background-color, transparent);\n}\n.ig-chart-legend-item-badge, .ui-chart-legend-item-badge canvas\n{\n vertical-align: middle;\n vertical-align: var(--legend-item-badge-vertical-align, middle);\n}\n.ig-chart-legend-item\n{\n background-color: transparent;\n background-color: var(--legend-item-background-color, transparent);\n}"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
return IgxLegendComponent;
})();
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxLegendComponent, decorators: [{
type: Component,
args: [{
selector: 'igx-legend',
template: ``,
providers: [{ provide: IgxLegendBaseComponent, useExisting: forwardRef(() => IgxLegendComponent) }],
host: { 'class': 'ig-legend igx-legend' },
changeDetection: ChangeDetectionStrategy.OnPush,
styles: [`:host {
display: block;
}
.ig-legend {
border: none;
border: var(--legend-border, none);
overflow: auto;
overflow: var(--legend-item-overflow, auto);
}
.ig-chart-legend-item-text {
font: 12px Verdana, Arial, sans-serif;
font: var(--legend-item-font, 12px Verdana, Arial, sans-serif);
vertical-align: middle;
vertical-align: var(--legend-item-vertical-align, middle);
}
.ig-chart-legend-items-list
{
padding: 5px;
padding: var(--legend-item-padding, 5px);
margin: 0px;
margin: var(--legend-item-margin, 0px);
background-color: transparent;
background-color: var(--legend-list-background-color, transparent);
}
.ig-chart-legend-item-badge, .ui-chart-legend-item-badge canvas
{
vertical-align: middle;
vertical-align: var(--legend-item-badge-vertical-align, middle);
}
.ig-chart-legend-item
{
background-color: transparent;
background-color: var(--legend-item-background-color, transparent);
}`]
}]
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { orientation: [{
type: Input
}], textColor: [{
type: Input
}], textStyle: [{
type: Input
}] } });