UNPKG

ngx-beautiful-charts

Version:
65 lines 5.57 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component } from '@angular/core'; import { PieChartService } from '../pie-chart.service'; export class PieChartBaseComponent { /** * @param {?} pieChartService */ constructor(pieChartService) { this.pieChartService = pieChartService; } /** * @return {?} */ computeLegionXs() { this.x1 = this.pieChartService.rectWidth + 2 * this.pieChartService.xPadding + this.pieChartService.legionWidth / 4 * .2; this.x2 = this.pieChartService.rectHeight + 2 * this.pieChartService.xPadding + this.pieChartService.legionWidth / 4 * .8; } /** * @param {?} i * @return {?} */ computeLegionPath(i) { /** @type {?} */ let path = 'M '; /** @type {?} */ const y = this.pieChartService.yPadding + 25 + 30 * i; path = path + this.x1 + ' ' + y + ' ' + this.x2 + ' ' + y; return path; } /** * @return {?} */ ngOnInit() { this.computeLegionXs(); } /** * @return {?} */ ngOnChanges() { this.computeLegionXs(); } } PieChartBaseComponent.decorators = [ { type: Component, args: [{ selector: 'g[ngx-pie-chart-base]', template: "<!-- Legion -->\n<svg:rect [attr.x]=\"2*pieChartService.xPadding + pieChartService.rectWidth\" \n[attr.y]=\"pieChartService.yPadding\" \n[attr.width]=\"pieChartService.legionWidth\" \n[attr.height]=\"pieChartService.legionHeight\" \nfill=\"#f1f1f1\" />\n\n\n<svg:g *ngFor=\"let x of pieChartService.data; index as i\">\n <svg:path class=\"legion-line\" [attr.d]=\"computeLegionPath(i)\" fill=\"none\" [attr.stroke]=\"x.color\" />\n <svg:text class=\"axis-text\" \n [attr.x]=\"pieChartService.rectWidth + 2*pieChartService.xPadding + pieChartService.legionWidth / 4\" \n [attr.y]=\"pieChartService.yPadding+30+30*i\" class=\"small\"> {{ x.name }} </svg:text>\n</svg:g>\n", styles: [".legion-line{stroke-width:5}"] }] } ]; /** @nocollapse */ PieChartBaseComponent.ctorParameters = () => [ { type: PieChartService } ]; if (false) { /** @type {?} */ PieChartBaseComponent.prototype.x1; /** @type {?} */ PieChartBaseComponent.prototype.x2; /** @type {?} */ PieChartBaseComponent.prototype.pieChartService; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LWJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWJlYXV0aWZ1bC1jaGFydHMvIiwic291cmNlcyI6WyJsaWIvcGllLWNoYXJ0L3BpZS1jaGFydC1iYXNlL3BpZS1jaGFydC1iYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBT3ZELE1BQU0sT0FBTyxxQkFBcUI7Ozs7SUFpQmhDLFlBQW1CLGVBQWdDO1FBQWhDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtJQUFJLENBQUM7Ozs7SUFaeEQsZUFBZTtRQUNiLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDekgsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM1SCxDQUFDOzs7OztJQUVELGlCQUFpQixDQUFDLENBQVM7O1lBQ3JCLElBQUksR0FBRyxJQUFJOztjQUNULENBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7UUFDckQsSUFBSSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUMxRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Ozs7SUFJRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7Ozs7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7OztZQTlCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtnQkFDakMscXJCQUE4Qzs7YUFFL0M7Ozs7WUFOUSxlQUFlOzs7O0lBU3RCLG1DQUFXOztJQUNYLG1DQUFXOztJQWNDLGdEQUF1QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQaWVDaGFydFNlcnZpY2UgfSBmcm9tICcuLi9waWUtY2hhcnQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dbbmd4LXBpZS1jaGFydC1iYXNlXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9waWUtY2hhcnQtYmFzZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BpZS1jaGFydC1iYXNlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUGllQ2hhcnRCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuXG4gIHgxOiBudW1iZXI7XG4gIHgyOiBudW1iZXI7XG5cbiAgY29tcHV0ZUxlZ2lvblhzKCkge1xuICAgIHRoaXMueDEgPSB0aGlzLnBpZUNoYXJ0U2VydmljZS5yZWN0V2lkdGggKyAyICogdGhpcy5waWVDaGFydFNlcnZpY2UueFBhZGRpbmcgKyB0aGlzLnBpZUNoYXJ0U2VydmljZS5sZWdpb25XaWR0aCAvIDQgKiAuMjtcbiAgICB0aGlzLngyID0gdGhpcy5waWVDaGFydFNlcnZpY2UucmVjdEhlaWdodCArIDIgKiB0aGlzLnBpZUNoYXJ0U2VydmljZS54UGFkZGluZyArIHRoaXMucGllQ2hhcnRTZXJ2aWNlLmxlZ2lvbldpZHRoIC8gNCAqIC44O1xuICB9XG5cbiAgY29tcHV0ZUxlZ2lvblBhdGgoaTogbnVtYmVyKSB7XG4gICAgbGV0IHBhdGggPSAnTSAnO1xuICAgIGNvbnN0IHkgPSB0aGlzLnBpZUNoYXJ0U2VydmljZS55UGFkZGluZyArIDI1ICsgMzAgKiBpO1xuICAgIHBhdGggPSBwYXRoICsgdGhpcy54MSArICcgJyArIHkgKyAnICcgKyB0aGlzLngyICsgJyAnICsgeTtcbiAgICByZXR1cm4gcGF0aDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBwaWVDaGFydFNlcnZpY2U6IFBpZUNoYXJ0U2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jb21wdXRlTGVnaW9uWHMoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIHRoaXMuY29tcHV0ZUxlZ2lvblhzKCk7XG4gIH1cblxufVxuIl19