ngx-frappe-chart
Version:
A simple and easy to use angular wrapper on top of frappe for generating awesome graphs.
129 lines • 10.8 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc
*/
import { Directive, ElementRef, Input } from '@angular/core';
import { FrappeChartsConstants } from '../constants/frappe-charts.constants';
export class FrappeChartsAxisDirective {
/**
* @param {?} el
*/
constructor(el) {
this.el = el;
}
/**
* @return {?}
*/
ngOnChanges() {
/** @type {?} */
const chart = new frappe.Chart(this.el.nativeElement, this.getAxisInputs());
}
/**
* @return {?}
*/
getAxisInputs() {
/** @type {?} */
const barObject = {};
barObject['colors'] = this.colors;
barObject['type'] = this.type;
barObject['title'] = this.title;
barObject['height'] = this.height;
barObject['isNavigable'] = this.isNavigable;
barObject['valuesOverPoints'] = this.valuesOverPoints;
barObject['axisOptions'] = this.axisOptions;
barObject['tooltipOptions'] = this.tooltipOptions;
this.addGraphData(barObject);
this.addLineOptions(barObject);
this.addBarOptions(barObject);
return barObject;
}
/**
* @param {?} barObject
* @return {?}
*/
addLineOptions(barObject) {
if (this.type === FrappeChartsConstants.chartType.line ||
this.type === FrappeChartsConstants.chartType.axismixed) {
barObject['lineOptions'] = this.lineOptions;
}
}
/**
* @param {?} barObject
* @return {?}
*/
addBarOptions(barObject) {
if (this.type === FrappeChartsConstants.chartType.bar ||
this.type === FrappeChartsConstants.chartType.axismixed) {
barObject['barOptions'] = this.barOptions;
}
}
/**
* @param {?} barObject
* @return {?}
*/
addGraphData(barObject) {
/** @type {?} */
const data = this.data;
if (this.yMarkers) {
data['yMarkers'] = this.yMarkers;
}
if (this.yRegions) {
data['yRegions'] = this.yRegions;
}
barObject['data'] = data;
}
}
FrappeChartsAxisDirective.decorators = [
{ type: Directive, args: [{
selector: '[ngxFrappeChartsAxis]'
},] },
];
FrappeChartsAxisDirective.ctorParameters = () => [
{ type: ElementRef }
];
FrappeChartsAxisDirective.propDecorators = {
data: [{ type: Input }],
type: [{ type: Input }],
title: [{ type: Input }],
colors: [{ type: Input }],
height: [{ type: Input }],
isNavigable: [{ type: Input }],
valuesOverPoints: [{ type: Input }],
axisOptions: [{ type: Input }],
tooltipOptions: [{ type: Input }],
barOptions: [{ type: Input }],
lineOptions: [{ type: Input }],
yMarkers: [{ type: Input }],
yRegions: [{ type: Input }]
};
if (false) {
/** @type {?} */
FrappeChartsAxisDirective.prototype.data;
/** @type {?} */
FrappeChartsAxisDirective.prototype.type;
/** @type {?} */
FrappeChartsAxisDirective.prototype.title;
/** @type {?} */
FrappeChartsAxisDirective.prototype.colors;
/** @type {?} */
FrappeChartsAxisDirective.prototype.height;
/** @type {?} */
FrappeChartsAxisDirective.prototype.isNavigable;
/** @type {?} */
FrappeChartsAxisDirective.prototype.valuesOverPoints;
/** @type {?} */
FrappeChartsAxisDirective.prototype.axisOptions;
/** @type {?} */
FrappeChartsAxisDirective.prototype.tooltipOptions;
/** @type {?} */
FrappeChartsAxisDirective.prototype.barOptions;
/** @type {?} */
FrappeChartsAxisDirective.prototype.lineOptions;
/** @type {?} */
FrappeChartsAxisDirective.prototype.yMarkers;
/** @type {?} */
FrappeChartsAxisDirective.prototype.yRegions;
/** @type {?} */
FrappeChartsAxisDirective.prototype.el;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhcHBlLWNoYXJ0cy1heGlzLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1mcmFwcGUtY2hhcnQvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9mcmFwcGUtY2hhcnRzLWF4aXMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFTN0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFRN0UsTUFBTTs7OztJQWVKLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQUcsQ0FBQzs7OztJQUV0QyxXQUFXOztjQUNILEtBQUssR0FBRyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzdFLENBQUM7Ozs7SUFFRCxhQUFhOztjQUNMLFNBQVMsR0FBRyxFQUFFO1FBQ3BCLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ2xDLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzlCLFNBQVMsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ2hDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ2xDLFNBQVMsQ0FBQyxhQUFhLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQzVDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUN0RCxTQUFTLENBQUMsYUFBYSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUM1QyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBRWxELElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTlCLE1BQU0sQ0FBQyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs7Ozs7SUFFRCxjQUFjLENBQUMsU0FBUztRQUN0QixFQUFFLENBQUMsQ0FDRCxJQUFJLENBQUMsSUFBSSxLQUFLLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxJQUFJO1lBQ2xELElBQUksQ0FBQyxJQUFJLEtBQUsscUJBQXFCLENBQUMsU0FBUyxDQUFDLFNBQ2hELENBQUMsQ0FBQyxDQUFDO1lBQ0QsU0FBUyxDQUFDLGFBQWEsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDOUMsQ0FBQztJQUNILENBQUM7Ozs7O0lBRUQsYUFBYSxDQUFDLFNBQVM7UUFDckIsRUFBRSxDQUFDLENBQ0QsSUFBSSxDQUFDLElBQUksS0FBSyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsR0FBRztZQUNqRCxJQUFJLENBQUMsSUFBSSxLQUFLLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxTQUNoRCxDQUFDLENBQUMsQ0FBQztZQUNELFNBQVMsQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQzVDLENBQUM7SUFDSCxDQUFDOzs7OztJQUVELFlBQVksQ0FBQyxTQUFTOztjQUNkLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSTtRQUN0QixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUNsQixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUNuQyxDQUFDO1FBRUQsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDbEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDbkMsQ0FBQztRQUVELFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDM0IsQ0FBQzs7O1lBdkVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2FBQ2xDOzs7WUFoQm1CLFVBQVU7OzttQkFrQjNCLEtBQUs7bUJBQ0wsS0FBSztvQkFDTCxLQUFLO3FCQUNMLEtBQUs7cUJBQ0wsS0FBSzswQkFDTCxLQUFLOytCQUNMLEtBQUs7MEJBQ0wsS0FBSzs2QkFDTCxLQUFLO3lCQUNMLEtBQUs7MEJBQ0wsS0FBSzt1QkFDTCxLQUFLO3VCQUNMLEtBQUs7Ozs7SUFaTix5Q0FBOEI7O0lBQzlCLHlDQUFzQjs7SUFDdEIsMENBQXdCOztJQUN4QiwyQ0FBMkI7O0lBQzNCLDJDQUF5Qjs7SUFDekIsZ0RBQStCOztJQUMvQixxREFBb0M7O0lBQ3BDLGdEQUFtQzs7SUFDbkMsbURBQXlDOztJQUN6QywrQ0FBaUM7O0lBQ2pDLGdEQUFtQzs7SUFDbkMsNkNBQThCOztJQUM5Qiw2Q0FBOEI7O0lBRWxCLHVDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBeGlzT3B0aW9ucyB9IGZyb20gJy4uL2ludGVyZmFjZXMvYXhpcy1vcHRpb25zLm1vZGVsJztcbmltcG9ydCB7IFRvb2x0aXBPcHRpb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy90b29sdGlwLW9wdGlvbnMubW9kZWwnO1xuaW1wb3J0IHsgQmFyT3B0aW9ucyB9IGZyb20gJy4uL2ludGVyZmFjZXMvYmFyLW9wdGlvbnMubW9kZWwnO1xuaW1wb3J0IHsgTGluZU9wdGlvbnMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2xpbmUtb3B0aW9ucy5tb2RlbCc7XG5pbXBvcnQgeyBZTWFya2VycyB9IGZyb20gJy4uL2ludGVyZmFjZXMveS1tYXJrZXJzLm1vZGVsJztcbmltcG9ydCB7IFlSZWdpb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy95LXJlZ2lvbnMubW9kZWwnO1xuaW1wb3J0IHsgRnJhcHBlQ2hhcnRzQ29uc3RhbnRzIH0gZnJvbSAnLi4vY29uc3RhbnRzL2ZyYXBwZS1jaGFydHMuY29uc3RhbnRzJztcbmltcG9ydCB7IEdyYXBoRGF0YU1vZGVsIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9ncmFwaC1kYXRhLm1vZGVsJztcblxuZGVjbGFyZSB2YXIgZnJhcHBlOiBhbnk7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuZ3hGcmFwcGVDaGFydHNBeGlzXSdcbn0pXG5leHBvcnQgY2xhc3MgRnJhcHBlQ2hhcnRzQXhpc0RpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGRhdGE6IEdyYXBoRGF0YU1vZGVsO1xuICBASW5wdXQoKSB0eXBlOiBzdHJpbmc7IC8vICdsaW5lJ1xuICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgQElucHV0KCkgY29sb3JzPzogc3RyaW5nW107XG4gIEBJbnB1dCgpIGhlaWdodD86IG51bWJlcjsgLy8gMjQwO1xuICBASW5wdXQoKSBpc05hdmlnYWJsZT86IGJvb2xlYW47IC8vIGZhbHNlO1xuICBASW5wdXQoKSB2YWx1ZXNPdmVyUG9pbnRzPzogYm9vbGVhbjsgLy8gZmFsc2U7XG4gIEBJbnB1dCgpIGF4aXNPcHRpb25zPzogQXhpc09wdGlvbnM7XG4gIEBJbnB1dCgpIHRvb2x0aXBPcHRpb25zPzogVG9vbHRpcE9wdGlvbnM7XG4gIEBJbnB1dCgpIGJhck9wdGlvbnM/OiBCYXJPcHRpb25zO1xuICBASW5wdXQoKSBsaW5lT3B0aW9ucz86IExpbmVPcHRpb25zO1xuICBASW5wdXQoKSB5TWFya2VyczogWU1hcmtlcnNbXTtcbiAgQElucHV0KCkgeVJlZ2lvbnM6IFlSZWdpb25zW107XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikge31cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICBjb25zdCBjaGFydCA9IG5ldyBmcmFwcGUuQ2hhcnQodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLmdldEF4aXNJbnB1dHMoKSk7XG4gIH1cblxuICBnZXRBeGlzSW5wdXRzKCk6IGFueSB7XG4gICAgY29uc3QgYmFyT2JqZWN0ID0ge307XG4gICAgYmFyT2JqZWN0Wydjb2xvcnMnXSA9IHRoaXMuY29sb3JzO1xuICAgIGJhck9iamVjdFsndHlwZSddID0gdGhpcy50eXBlO1xuICAgIGJhck9iamVjdFsndGl0bGUnXSA9IHRoaXMudGl0bGU7XG4gICAgYmFyT2JqZWN0WydoZWlnaHQnXSA9IHRoaXMuaGVpZ2h0O1xuICAgIGJhck9iamVjdFsnaXNOYXZpZ2FibGUnXSA9IHRoaXMuaXNOYXZpZ2FibGU7XG4gICAgYmFyT2JqZWN0Wyd2YWx1ZXNPdmVyUG9pbnRzJ10gPSB0aGlzLnZhbHVlc092ZXJQb2ludHM7XG4gICAgYmFyT2JqZWN0WydheGlzT3B0aW9ucyddID0gdGhpcy5heGlzT3B0aW9ucztcbiAgICBiYXJPYmplY3RbJ3Rvb2x0aXBPcHRpb25zJ10gPSB0aGlzLnRvb2x0aXBPcHRpb25zO1xuXG4gICAgdGhpcy5hZGRHcmFwaERhdGEoYmFyT2JqZWN0KTtcbiAgICB0aGlzLmFkZExpbmVPcHRpb25zKGJhck9iamVjdCk7XG4gICAgdGhpcy5hZGRCYXJPcHRpb25zKGJhck9iamVjdCk7XG5cbiAgICByZXR1cm4gYmFyT2JqZWN0O1xuICB9XG5cbiAgYWRkTGluZU9wdGlvbnMoYmFyT2JqZWN0KSB7XG4gICAgaWYgKFxuICAgICAgdGhpcy50eXBlID09PSBGcmFwcGVDaGFydHNDb25zdGFudHMuY2hhcnRUeXBlLmxpbmUgfHxcbiAgICAgIHRoaXMudHlwZSA9PT0gRnJhcHBlQ2hhcnRzQ29uc3RhbnRzLmNoYXJ0VHlwZS5heGlzbWl4ZWRcbiAgICApIHtcbiAgICAgIGJhck9iamVjdFsnbGluZU9wdGlvbnMnXSA9IHRoaXMubGluZU9wdGlvbnM7XG4gICAgfVxuICB9XG5cbiAgYWRkQmFyT3B0aW9ucyhiYXJPYmplY3QpIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLnR5cGUgPT09IEZyYXBwZUNoYXJ0c0NvbnN0YW50cy5jaGFydFR5cGUuYmFyIHx8XG4gICAgICB0aGlzLnR5cGUgPT09IEZyYXBwZUNoYXJ0c0NvbnN0YW50cy5jaGFydFR5cGUuYXhpc21peGVkXG4gICAgKSB7XG4gICAgICBiYXJPYmplY3RbJ2Jhck9wdGlvbnMnXSA9IHRoaXMuYmFyT3B0aW9ucztcbiAgICB9XG4gIH1cblxuICBhZGRHcmFwaERhdGEoYmFyT2JqZWN0KSB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuZGF0YTtcbiAgICBpZiAodGhpcy55TWFya2Vycykge1xuICAgICAgZGF0YVsneU1hcmtlcnMnXSA9IHRoaXMueU1hcmtlcnM7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMueVJlZ2lvbnMpIHtcbiAgICAgIGRhdGFbJ3lSZWdpb25zJ10gPSB0aGlzLnlSZWdpb25zO1xuICAgIH1cblxuICAgIGJhck9iamVjdFsnZGF0YSddID0gZGF0YTtcbiAgfVxufVxuIl19