UNPKG

@alauda-fe/common

Version:

Alauda frontend team common codes.

89 lines 10.5 kB
import { ChangeDetectionStrategy, Component, Input, } from '@angular/core'; import { Orientation } from '../../types'; import { ChartSeriesComponent } from './series.component'; import * as i0 from "@angular/core"; const _c0 = ["aclBarSeries", ""]; function ChartBarSeriesComponent__svg_g_1_Template(rf, ctx) { if (rf & 1) { i0.ɵɵnamespaceSVG(); i0.ɵɵelement(0, "g", 2); i0.ɵɵpipe(1, "pure"); } if (rf & 2) { const item_r1 = ctx.$implicit; const ctx_r1 = i0.ɵɵnextContext(); i0.ɵɵproperty("data", item_r1.values)("groupName", item_r1.name)("type", ctx_r1.type)("bandWidth", ctx_r1.bandWidth); i0.ɵɵattribute("transform", i0.ɵɵpipeBind3(1, 5, item_r1.name, ctx_r1.transform, item_r1 == null ? null : item_r1.values == null ? null : item_r1.values.length)); } } export class ChartBarSeriesComponent extends ChartSeriesComponent { constructor() { super(...arguments); this.orientation = Orientation.VERTICAL; this.type = 'standard'; this.seriesType = 'bar'; this.bandWidth = 15; this.transform = (name, length) => { const offset = this.context.x(name); const width = this.bandWidth / 2; const barPosition = this.context.x.bandwidth() * 0.5 - width; const bandwidth = this.type === 'stacked' ? barPosition : barPosition / length - width; return `translate(${this.context.horizontal ? 0 : offset + bandwidth}, ${this.context.horizontal ? offset + bandwidth : 0})`; }; } ngOnInit() { this.context.barOptions.isBand = true; this.context.barOptions.orientation = this.orientation; this.context.barOptions.type = this.type; super.ngOnInit(); } getData(seriesData) { return seriesData?.flatMap(d => d.values)?.every(item => item.y === 0) ? seriesData.map(item => ({ ...item, values: item.values.map(d => ({ ...d, y: null })), })) : seriesData; } static { this.ɵfac = /*@__PURE__*/ (() => { let ɵChartBarSeriesComponent_BaseFactory; return function ChartBarSeriesComponent_Factory(t) { return (ɵChartBarSeriesComponent_BaseFactory || (ɵChartBarSeriesComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ChartBarSeriesComponent)))(t || ChartBarSeriesComponent); }; })(); } static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ChartBarSeriesComponent, selectors: [["g", "aclBarSeries", ""]], inputs: { orientation: "orientation", type: "type", seriesType: "seriesType", bandWidth: "bandWidth", adaptiveBandWidth: "adaptiveBandWidth" }, features: [i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 3, vars: 4, consts: [[1, "acl-bar-series"], ["aclBarPath", "", 3, "data", "groupName", "type", "bandWidth", 4, "ngFor", "ngForOf"], ["aclBarPath", "", 3, "data", "groupName", "type", "bandWidth"]], template: function ChartBarSeriesComponent_Template(rf, ctx) { if (rf & 1) { i0.ɵɵnamespaceSVG(); i0.ɵɵelementStart(0, "g", 0); i0.ɵɵtemplate(1, ChartBarSeriesComponent__svg_g_1_Template, 2, 9, "g", 1); i0.ɵɵpipe(2, "pure"); i0.ɵɵelementEnd(); } if (rf & 2) { i0.ɵɵadvance(); i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind2(2, 1, ctx.seriesData, ctx.getData)); } }, encapsulation: 2, changeDetection: 0 }); } } (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ChartBarSeriesComponent, [{ type: Component, args: [{ // eslint-disable-next-line @angular-eslint/component-selector selector: 'g[aclBarSeries]', template: ` <svg:g class="acl-bar-series"> <svg:g *ngFor="let item of seriesData | pure: getData" aclBarPath [data]="$any(item.values)" [groupName]="item.name" [type]="type" [bandWidth]="bandWidth" [attr.transform]="item.name | pure: transform:item?.values?.length" ></svg:g> </svg:g> `, changeDetection: ChangeDetectionStrategy.OnPush, }] }], null, { orientation: [{ type: Input }], type: [{ type: Input }], seriesType: [{ type: Input }], bandWidth: [{ type: Input }], adaptiveBandWidth: [{ type: Input }] }); })(); (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ChartBarSeriesComponent, { className: "ChartBarSeriesComponent" }); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLXNlcmllcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY2hhcnQvY29tbW9uL3Nlcmllcy9iYXItc2VyaWVzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLFdBQVcsRUFBYyxNQUFNLGFBQWEsQ0FBQztBQUV0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7SUFPcEQsdUJBUVM7Ozs7O0lBRlAsQUFEQSxBQURBLEFBREEscUNBQTBCLDJCQUNILHFCQUNWLCtCQUNVOzs7QUFPL0IsTUFBTSxPQUFPLHVCQUNYLFNBQVEsb0JBQW9CO0lBbkI5Qjs7UUFzQlcsZ0JBQVcsR0FBeUIsV0FBVyxDQUFDLFFBQVEsQ0FBQztRQUVoRCxTQUFJLEdBQTJCLFVBQVUsQ0FBQztRQUUxQyxlQUFVLEdBQTRCLEtBQUssQ0FBQztRQUVyRCxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBV3hCLGNBQVMsR0FBRyxDQUFDLElBQVksRUFBRSxNQUFjLEVBQUUsRUFBRTtZQUMzQyxNQUFNLE1BQU0sR0FBdUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDekQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7WUFDakMsTUFBTSxXQUFXLEdBQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUF3QixDQUFDLFNBQVMsRUFBRSxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUM7WUFDbkUsTUFBTSxTQUFTLEdBQ2IsSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxHQUFHLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDdkUsT0FBTyxhQUFhLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxTQUFTLEtBQ2xFLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUNqRCxHQUFHLENBQUM7UUFDTixDQUFDLENBQUM7S0FVSDtJQTNCVSxRQUFRO1FBQ2YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUN0QyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUN2RCxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN6QyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQWNELE9BQU8sQ0FBQyxVQUF3QjtRQUM5QixPQUFPLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUN0QixHQUFHLElBQUk7Z0JBQ1AsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2FBQ2xELENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxVQUFVLENBQUM7SUFDakIsQ0FBQztnUUF4Q1UsdUJBQXVCLFNBQXZCLHVCQUF1QjtvRUFBdkIsdUJBQXVCOztZQWRoQyw0QkFBOEI7WUFDNUIseUVBUUM7O1lBQ0gsaUJBQVE7O1lBUmEsY0FBNkI7WUFBN0IsMkVBQTZCOzs7aUZBWXpDLHVCQUF1QjtjQWxCbkMsU0FBUztlQUFDO2dCQUNULDhEQUE4RDtnQkFDOUQsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7R0FZVDtnQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTthQUNoRDtnQkFLVSxXQUFXO2tCQUFuQixLQUFLO1lBRVksSUFBSTtrQkFBckIsS0FBSztZQUVZLFVBQVU7a0JBQTNCLEtBQUs7WUFFRyxTQUFTO2tCQUFqQixLQUFLO1lBRUcsaUJBQWlCO2tCQUF6QixLQUFLOztrRkFaSyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNjYWxlQmFuZCwgU2NhbGVQb2ludCB9IGZyb20gJ2QzJztcblxuaW1wb3J0IHsgT3JpZW50YXRpb24sIFNlcmllc0RhdGEgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbmltcG9ydCB7IENoYXJ0U2VyaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9zZXJpZXMuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnZ1thY2xCYXJTZXJpZXNdJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8c3ZnOmcgY2xhc3M9XCJhY2wtYmFyLXNlcmllc1wiPlxuICAgICAgPHN2ZzpnXG4gICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHNlcmllc0RhdGEgfCBwdXJlOiBnZXREYXRhXCJcbiAgICAgICAgYWNsQmFyUGF0aFxuICAgICAgICBbZGF0YV09XCIkYW55KGl0ZW0udmFsdWVzKVwiXG4gICAgICAgIFtncm91cE5hbWVdPVwiaXRlbS5uYW1lXCJcbiAgICAgICAgW3R5cGVdPVwidHlwZVwiXG4gICAgICAgIFtiYW5kV2lkdGhdPVwiYmFuZFdpZHRoXCJcbiAgICAgICAgW2F0dHIudHJhbnNmb3JtXT1cIml0ZW0ubmFtZSB8IHB1cmU6IHRyYW5zZm9ybTppdGVtPy52YWx1ZXM/Lmxlbmd0aFwiXG4gICAgICA+PC9zdmc6Zz5cbiAgICA8L3N2ZzpnPlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQ2hhcnRCYXJTZXJpZXNDb21wb25lbnRcbiAgZXh0ZW5kcyBDaGFydFNlcmllc0NvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdFxue1xuICBASW5wdXQoKSBvcmllbnRhdGlvbjogT3JpZW50YXRpb24gfCBzdHJpbmcgPSBPcmllbnRhdGlvbi5WRVJUSUNBTDtcblxuICBASW5wdXQoKSBvdmVycmlkZSB0eXBlOiAnc3RhbmRhcmQnIHwgJ3N0YWNrZWQnID0gJ3N0YW5kYXJkJztcblxuICBASW5wdXQoKSBvdmVycmlkZSBzZXJpZXNUeXBlOiAnbGluZScgfCAnYXJlYScgfCAnYmFyJyA9ICdiYXInO1xuXG4gIEBJbnB1dCgpIGJhbmRXaWR0aCA9IDE1O1xuXG4gIEBJbnB1dCgpIGFkYXB0aXZlQmFuZFdpZHRoOiBib29sZWFuO1xuXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29udGV4dC5iYXJPcHRpb25zLmlzQmFuZCA9IHRydWU7XG4gICAgdGhpcy5jb250ZXh0LmJhck9wdGlvbnMub3JpZW50YXRpb24gPSB0aGlzLm9yaWVudGF0aW9uO1xuICAgIHRoaXMuY29udGV4dC5iYXJPcHRpb25zLnR5cGUgPSB0aGlzLnR5cGU7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgfVxuXG4gIHRyYW5zZm9ybSA9IChuYW1lOiBzdHJpbmcsIGxlbmd0aDogbnVtYmVyKSA9PiB7XG4gICAgY29uc3Qgb2Zmc2V0ID0gKDxTY2FsZUJhbmQ8c3RyaW5nPj50aGlzLmNvbnRleHQueCkobmFtZSk7XG4gICAgY29uc3Qgd2lkdGggPSB0aGlzLmJhbmRXaWR0aCAvIDI7XG4gICAgY29uc3QgYmFyUG9zaXRpb24gPVxuICAgICAgKHRoaXMuY29udGV4dC54IGFzIFNjYWxlUG9pbnQ8c3RyaW5nPikuYmFuZHdpZHRoKCkgKiAwLjUgLSB3aWR0aDtcbiAgICBjb25zdCBiYW5kd2lkdGggPVxuICAgICAgdGhpcy50eXBlID09PSAnc3RhY2tlZCcgPyBiYXJQb3NpdGlvbiA6IGJhclBvc2l0aW9uIC8gbGVuZ3RoIC0gd2lkdGg7XG4gICAgcmV0dXJuIGB0cmFuc2xhdGUoJHt0aGlzLmNvbnRleHQuaG9yaXpvbnRhbCA/IDAgOiBvZmZzZXQgKyBiYW5kd2lkdGh9LCAke1xuICAgICAgdGhpcy5jb250ZXh0Lmhvcml6b250YWwgPyBvZmZzZXQgKyBiYW5kd2lkdGggOiAwXG4gICAgfSlgO1xuICB9O1xuXG4gIGdldERhdGEoc2VyaWVzRGF0YTogU2VyaWVzRGF0YVtdKSB7XG4gICAgcmV0dXJuIHNlcmllc0RhdGE/LmZsYXRNYXAoZCA9PiBkLnZhbHVlcyk/LmV2ZXJ5KGl0ZW0gPT4gaXRlbS55ID09PSAwKVxuICAgICAgPyBzZXJpZXNEYXRhLm1hcChpdGVtID0+ICh7XG4gICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICB2YWx1ZXM6IGl0ZW0udmFsdWVzLm1hcChkID0+ICh7IC4uLmQsIHk6IG51bGwgfSkpLFxuICAgICAgICB9KSlcbiAgICAgIDogc2VyaWVzRGF0YTtcbiAgfVxufVxuIl19