UNPKG

@alauda-fe/common

Version:

Alauda frontend team common codes.

102 lines 9.41 kB
import { __decorate, __metadata } from "tslib"; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core'; import { Observable, Subject, merge, takeUntil } from 'rxjs'; import { ObservableInput } from '../../../core/public-api'; import { ContextChartService } from '../../chart.service'; import * as i0 from "@angular/core"; import * as i1 from "../../chart.service"; import * as i2 from "@angular/common"; const _c0 = ["aclXPlotLines", ""]; function XPlotLinesComponent__svg_g_0_Template(rf, ctx) { if (rf & 1) { i0.ɵɵnamespaceSVG(); i0.ɵɵelementStart(0, "g")(1, "text", 1); i0.ɵɵtext(2); i0.ɵɵelementEnd(); i0.ɵɵelement(3, "path", 2); i0.ɵɵelementEnd(); } if (rf & 2) { const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵadvance(); i0.ɵɵattribute("y", ctx_r0.y)("fill", ctx_r0.color || "#FF0000"); i0.ɵɵadvance(); i0.ɵɵtextInterpolate1(" ", ctx_r0.value, " "); i0.ɵɵadvance(); i0.ɵɵattribute("d", ctx_r0.path)("stroke-width", ctx_r0.width || 1)("stroke", ctx_r0.color || "#FF0000")("stroke-dasharray", ctx_r0.dasharray); } } export class XPlotLinesComponent { get dasharray() { return this.dashType === 'dash' ? [4, 2] : [0, 0]; } get view() { return this.context.chartView; } constructor(context, cdr) { this.context = context; this.cdr = cdr; this.dashType = 'solid'; this.y = 0; this.destroy$$ = new Subject(); } ngOnInit() { merge([this.value$, this.context.seriesData$]) .pipe(takeUntil(this.destroy$$)) .subscribe(() => { this.y = this.context.y(this.value); this.path = `M0 ${this.y}L${this.view.width} ${this.y}`; this.cdr.detectChanges(); }); } ngOnDestroy() { this.destroy$$.next(); this.destroy$$.complete(); } static { this.ɵfac = function XPlotLinesComponent_Factory(t) { return new (t || XPlotLinesComponent)(i0.ɵɵdirectiveInject(i1.ContextChartService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); }; } static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: XPlotLinesComponent, selectors: [["g", "aclXPlotLines", ""]], inputs: { value: "value", color: "color", dashType: "dashType", width: "width" }, attrs: _c0, decls: 1, vars: 1, consts: [[4, "ngIf"], ["x", "-8", "text-anchor", "end", "font-size", "11", "alignment-baseline", "middle"], ["fill", "none"]], template: function XPlotLinesComponent_Template(rf, ctx) { if (rf & 1) { i0.ɵɵtemplate(0, XPlotLinesComponent__svg_g_0_Template, 4, 7, "g", 0); } if (rf & 2) { i0.ɵɵproperty("ngIf", !!ctx.path); } }, dependencies: [i2.NgIf], encapsulation: 2, changeDetection: 0 }); } } __decorate([ ObservableInput(), __metadata("design:type", Observable) ], XPlotLinesComponent.prototype, "value$", void 0); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(XPlotLinesComponent, [{ type: Component, args: [{ // eslint-disable-next-line @angular-eslint/component-selector selector: 'g[aclXPlotLines]', template: ` <svg:g *ngIf="!!path"> <text x="-8" [attr.y]="y" [attr.fill]="color || '#FF0000'" text-anchor="end" font-size="11" alignment-baseline="middle" > {{ value }} </text> <path [attr.d]="path" fill="none" [attr.stroke-width]="width || 1" [attr.stroke]="color || '#FF0000'" [attr.stroke-dasharray]="dasharray" /> </svg:g> `, changeDetection: ChangeDetectionStrategy.OnPush, }] }], () => [{ type: i1.ContextChartService }, { type: i0.ChangeDetectorRef }], { value: [{ type: Input }], value$: [], color: [{ type: Input }], dashType: [{ type: Input }], width: [{ type: Input }] }); })(); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(XPlotLinesComponent, { className: "XPlotLinesComponent" }); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieC1wbG90LWxpbmVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9jaGFydC9jb21tb24vYXhpcy94LXBsb3QtbGluZXMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0lBT3BELEFBREYseUJBQXNCLGNBUW5CO0lBQ0MsWUFDRjtJQUFBLGlCQUFPO0lBQ1AsMEJBTUU7SUFDSixpQkFBUTs7O0lBZkosY0FBWTs7SUFNWixjQUNGO0lBREUsNkNBQ0Y7SUFFRSxjQUFlOzs7QUFVdkIsTUFBTSxPQUFPLG1CQUFtQjtJQWU5QixJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7SUFDaEMsQ0FBQztJQUlELFlBQ21CLE9BQTRCLEVBQzVCLEdBQXNCO1FBRHRCLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBQzVCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBcEJoQyxhQUFRLEdBQXFCLE9BQU8sQ0FBQztRQU05QyxNQUFDLEdBQUcsQ0FBQyxDQUFDO1FBVVcsY0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFLOUMsQ0FBQztJQUVKLFFBQVE7UUFDTixLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDM0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BDLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN4RCxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztvRkEzQ1UsbUJBQW1CO29FQUFuQixtQkFBbUI7WUF0QjVCLHFFQUFzQjs7WUFBZCxpQ0FBWTs7O0FBeUJ0QjtJQURDLGVBQWUsRUFBRTs4QkFDVCxVQUFVO21EQUFTO2lGQUhqQixtQkFBbUI7Y0ExQi9CLFNBQVM7ZUFBQztnQkFDVCw4REFBOEQ7Z0JBQzlELFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQlQ7Z0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07YUFDaEQ7b0ZBRVUsS0FBSztrQkFBYixLQUFLO1lBRU4sTUFBTSxNQUVHLEtBQUs7a0JBQWIsS0FBSztZQUVHLFFBQVE7a0JBQWhCLEtBQUs7WUFFRyxLQUFLO2tCQUFiLEtBQUs7O2tGQVRLLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgbWVyZ2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlSW5wdXQgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgQ29udGV4dENoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL2NoYXJ0LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdnW2FjbFhQbG90TGluZXNdJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8c3ZnOmcgKm5nSWY9XCIhIXBhdGhcIj5cbiAgICAgIDx0ZXh0XG4gICAgICAgIHg9XCItOFwiXG4gICAgICAgIFthdHRyLnldPVwieVwiXG4gICAgICAgIFthdHRyLmZpbGxdPVwiY29sb3IgfHwgJyNGRjAwMDAnXCJcbiAgICAgICAgdGV4dC1hbmNob3I9XCJlbmRcIlxuICAgICAgICBmb250LXNpemU9XCIxMVwiXG4gICAgICAgIGFsaWdubWVudC1iYXNlbGluZT1cIm1pZGRsZVwiXG4gICAgICA+XG4gICAgICAgIHt7IHZhbHVlIH19XG4gICAgICA8L3RleHQ+XG4gICAgICA8cGF0aFxuICAgICAgICBbYXR0ci5kXT1cInBhdGhcIlxuICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgIFthdHRyLnN0cm9rZS13aWR0aF09XCJ3aWR0aCB8fCAxXCJcbiAgICAgICAgW2F0dHIuc3Ryb2tlXT1cImNvbG9yIHx8ICcjRkYwMDAwJ1wiXG4gICAgICAgIFthdHRyLnN0cm9rZS1kYXNoYXJyYXldPVwiZGFzaGFycmF5XCJcbiAgICAgIC8+XG4gICAgPC9zdmc6Zz5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFhQbG90TGluZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHZhbHVlOiBudW1iZXI7XG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICB2YWx1ZSQhOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgQElucHV0KCkgY29sb3I6IHN0cmluZztcblxuICBASW5wdXQoKSBkYXNoVHlwZTogJ3NvbGlkJyB8ICdkYXNoJyA9ICdzb2xpZCc7XG5cbiAgQElucHV0KCkgd2lkdGg6IG51bWJlcjtcblxuICBwYXRoOiBzdHJpbmc7XG5cbiAgeSA9IDA7XG5cbiAgZ2V0IGRhc2hhcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5kYXNoVHlwZSA9PT0gJ2Rhc2gnID8gWzQsIDJdIDogWzAsIDBdO1xuICB9XG5cbiAgZ2V0IHZpZXcoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5jaGFydFZpZXc7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250ZXh0OiBDb250ZXh0Q2hhcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIG1lcmdlKFt0aGlzLnZhbHVlJCwgdGhpcy5jb250ZXh0LnNlcmllc0RhdGEkXSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkJCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy55ID0gdGhpcy5jb250ZXh0LnkodGhpcy52YWx1ZSk7XG4gICAgICAgIHRoaXMucGF0aCA9IGBNMCAke3RoaXMueX1MJHt0aGlzLnZpZXcud2lkdGh9ICR7dGhpcy55fWA7XG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==