UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

32 lines 11 kB
import { Component, Input } from '@angular/core'; import { AGGREGATION_ICONS, AGGREGATION_TEXTS } from '../../../aggregation/aggregation.model'; import { gettext } from '../../../i18n'; import * as i0 from "@angular/core"; import * as i1 from "../../../common/icon.directive"; import * as i2 from "@angular/common"; import * as i3 from "ngx-bootstrap/tooltip"; import * as i4 from "@ngx-translate/core"; export class WidgetTimeContextIconBar { constructor() { this.AGGREGATION_ICONS = AGGREGATION_ICONS; this.AGGREGATION_TEXTS = AGGREGATION_TEXTS; } ngOnInit() { if (this.config.displaySettings.globalRealtimeContext && !this.config.displaySettings.globalTimeContext) { this.globalContextButtonText = gettext('This widget is in sync with the dashboard realtime context.'); } else { this.globalContextButtonText = gettext('This widget is in sync with the dashboard time range.'); } } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WidgetTimeContextIconBar, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: WidgetTimeContextIconBar, selector: "c8y-widget-time-context-icon-bar", inputs: { config: "config" }, ngImport: i0, template: "<span class=\"m-l-auto d-flex\">\n <button\n class=\"btn btn-clean btn-no-focus\"\n [attr.aria-label]=\"'Aggregation' | translate\"\n tooltip=\"{{\n (config?.aggregation ? AGGREGATION_TEXTS[config.aggregation] : AGGREGATION_TEXTS.undefined)\n | translate\n }}\"\n placement=\"top\"\n container=\"body\"\n type=\"button\"\n *ngIf=\"config.displaySettings.globalAggregationContext\"\n [adaptivePosition]=\"false\"\n >\n <i\n class=\"icon-14\"\n [c8yIcon]=\"\n config?.aggregation ? AGGREGATION_ICONS[config.aggregation] : AGGREGATION_ICONS.undefined\n \"\n ></i>\n </button>\n <button\n class=\"btn c8y-realtime btn-no-focus\"\n [attr.aria-label]=\"(config?.realtime ? 'Realtime active' : 'Realtime inactive') | translate\"\n tooltip=\"{{ (config?.realtime ? 'Realtime active' : 'Realtime inactive') | translate }}\"\n placement=\"top\"\n container=\"body\"\n type=\"button\"\n *ngIf=\"config?.widgetInstanceGlobalTimeContext\"\n >\n <span\n class=\"c8y-pulse m-0\"\n [ngClass]=\"{ active: config?.realtime, inactive: !config?.realtime }\"\n ></span>\n </button>\n <button\n class=\"btn btn-clean btn-no-focus p-l-4 p-r-0\"\n [attr.aria-label]=\"globalContextButtonText | translate\"\n [tooltip]=\"globalContextButtonText | translate\"\n placement=\"top\"\n container=\"body\"\n data-cy=\"dashboard-child--global-date-context-indicator\"\n *ngIf=\"config?.widgetInstanceGlobalTimeContext\"\n >\n <span class=\"tag tag--success chip\">\n <i c8yIcon=\"clock\"></i>\n {{ 'Realtime' | translate }}\n </span>\n </button>\n</span>\n", dependencies: [{ kind: "directive", type: i1.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.TooltipDirective, selector: "[tooltip], [tooltipHtml]", inputs: ["adaptivePosition", "tooltip", "placement", "triggers", "container", "containerClass", "boundariesElement", "isOpen", "isDisabled", "delay", "tooltipHtml", "tooltipPlacement", "tooltipIsOpen", "tooltipEnable", "tooltipAppendToBody", "tooltipAnimation", "tooltipClass", "tooltipContext", "tooltipPopupDelay", "tooltipFadeDuration", "tooltipTrigger"], outputs: ["tooltipChange", "onShown", "onHidden", "tooltipStateChanged"], exportAs: ["bs-tooltip"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WidgetTimeContextIconBar, decorators: [{ type: Component, args: [{ selector: 'c8y-widget-time-context-icon-bar', template: "<span class=\"m-l-auto d-flex\">\n <button\n class=\"btn btn-clean btn-no-focus\"\n [attr.aria-label]=\"'Aggregation' | translate\"\n tooltip=\"{{\n (config?.aggregation ? AGGREGATION_TEXTS[config.aggregation] : AGGREGATION_TEXTS.undefined)\n | translate\n }}\"\n placement=\"top\"\n container=\"body\"\n type=\"button\"\n *ngIf=\"config.displaySettings.globalAggregationContext\"\n [adaptivePosition]=\"false\"\n >\n <i\n class=\"icon-14\"\n [c8yIcon]=\"\n config?.aggregation ? AGGREGATION_ICONS[config.aggregation] : AGGREGATION_ICONS.undefined\n \"\n ></i>\n </button>\n <button\n class=\"btn c8y-realtime btn-no-focus\"\n [attr.aria-label]=\"(config?.realtime ? 'Realtime active' : 'Realtime inactive') | translate\"\n tooltip=\"{{ (config?.realtime ? 'Realtime active' : 'Realtime inactive') | translate }}\"\n placement=\"top\"\n container=\"body\"\n type=\"button\"\n *ngIf=\"config?.widgetInstanceGlobalTimeContext\"\n >\n <span\n class=\"c8y-pulse m-0\"\n [ngClass]=\"{ active: config?.realtime, inactive: !config?.realtime }\"\n ></span>\n </button>\n <button\n class=\"btn btn-clean btn-no-focus p-l-4 p-r-0\"\n [attr.aria-label]=\"globalContextButtonText | translate\"\n [tooltip]=\"globalContextButtonText | translate\"\n placement=\"top\"\n container=\"body\"\n data-cy=\"dashboard-child--global-date-context-indicator\"\n *ngIf=\"config?.widgetInstanceGlobalTimeContext\"\n >\n <span class=\"tag tag--success chip\">\n <i c8yIcon=\"clock\"></i>\n {{ 'Realtime' | translate }}\n </span>\n </button>\n</span>\n" }] }], propDecorators: { config: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXRpbWUtY29udGV4dC1pY29uLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9jb3JlL2Rhc2hib2FyZC93aWdldC10aW1lLWNvbnRleHQvd2lkZ2V0LXRpbWUtY29udGV4dC1pY29uLWJhci93aWRnZXQtdGltZS1jb250ZXh0LWljb24tYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2NvcmUvZGFzaGJvYXJkL3dpZ2V0LXRpbWUtY29udGV4dC93aWRnZXQtdGltZS1jb250ZXh0LWljb24tYmFyL3dpZGdldC10aW1lLWNvbnRleHQtaWNvbi1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBTXhDLE1BQU0sT0FBTyx3QkFBd0I7SUFKckM7UUFNVyxzQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQUN0QyxzQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztLQXFCaEQ7SUFkQyxRQUFRO1FBQ04sSUFDRSxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxxQkFBcUI7WUFDakQsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxpQkFBaUIsRUFDOUMsQ0FBQztZQUNELElBQUksQ0FBQyx1QkFBdUIsR0FBRyxPQUFPLENBQ3BDLDZEQUE2RCxDQUM5RCxDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsdUJBQXVCLEdBQUcsT0FBTyxDQUNwQyx1REFBdUQsQ0FDeEQsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDOytHQXZCVSx3QkFBd0I7bUdBQXhCLHdCQUF3QixzR0NSckMsNG9EQWtEQTs7NEZEMUNhLHdCQUF3QjtrQkFKcEMsU0FBUzsrQkFDRSxrQ0FBa0M7OEJBV25DLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFHR1JFR0FUSU9OX0lDT05TLCBBR0dSRUdBVElPTl9URVhUUyB9IGZyb20gJy4uLy4uLy4uL2FnZ3JlZ2F0aW9uL2FnZ3JlZ2F0aW9uLm1vZGVsJztcbmltcG9ydCB7IGdldHRleHQgfSBmcm9tICcuLi8uLi8uLi9pMThuJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LXdpZGdldC10aW1lLWNvbnRleHQtaWNvbi1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vd2lkZ2V0LXRpbWUtY29udGV4dC1pY29uLWJhci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgV2lkZ2V0VGltZUNvbnRleHRJY29uQmFyIHtcbiAgZ2xvYmFsQ29udGV4dEJ1dHRvblRleHQ6IHN0cmluZztcbiAgcmVhZG9ubHkgQUdHUkVHQVRJT05fSUNPTlMgPSBBR0dSRUdBVElPTl9JQ09OUztcbiAgcmVhZG9ubHkgQUdHUkVHQVRJT05fVEVYVFMgPSBBR0dSRUdBVElPTl9URVhUUztcblxuICAvKipcbiAgICogV2lkZ2V0IGNvbmZpZ3VyYXRpb24gb2JqZWN0LlxuICAgKi9cbiAgQElucHV0KCkgY29uZmlnOiBhbnk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5jb25maWcuZGlzcGxheVNldHRpbmdzLmdsb2JhbFJlYWx0aW1lQ29udGV4dCAmJlxuICAgICAgIXRoaXMuY29uZmlnLmRpc3BsYXlTZXR0aW5ncy5nbG9iYWxUaW1lQ29udGV4dFxuICAgICkge1xuICAgICAgdGhpcy5nbG9iYWxDb250ZXh0QnV0dG9uVGV4dCA9IGdldHRleHQoXG4gICAgICAgICdUaGlzIHdpZGdldCBpcyBpbiBzeW5jIHdpdGggdGhlIGRhc2hib2FyZCByZWFsdGltZSBjb250ZXh0LidcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZ2xvYmFsQ29udGV4dEJ1dHRvblRleHQgPSBnZXR0ZXh0KFxuICAgICAgICAnVGhpcyB3aWRnZXQgaXMgaW4gc3luYyB3aXRoIHRoZSBkYXNoYm9hcmQgdGltZSByYW5nZS4nXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIiwiPHNwYW4gY2xhc3M9XCJtLWwtYXV0byBkLWZsZXhcIj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwiYnRuIGJ0bi1jbGVhbiBidG4tbm8tZm9jdXNcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0FnZ3JlZ2F0aW9uJyB8IHRyYW5zbGF0ZVwiXG4gICAgdG9vbHRpcD1cInt7XG4gICAgICAoY29uZmlnPy5hZ2dyZWdhdGlvbiA/IEFHR1JFR0FUSU9OX1RFWFRTW2NvbmZpZy5hZ2dyZWdhdGlvbl0gOiBBR0dSRUdBVElPTl9URVhUUy51bmRlZmluZWQpXG4gICAgICAgIHwgdHJhbnNsYXRlXG4gICAgfX1cIlxuICAgIHBsYWNlbWVudD1cInRvcFwiXG4gICAgY29udGFpbmVyPVwiYm9keVwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgKm5nSWY9XCJjb25maWcuZGlzcGxheVNldHRpbmdzLmdsb2JhbEFnZ3JlZ2F0aW9uQ29udGV4dFwiXG4gICAgW2FkYXB0aXZlUG9zaXRpb25dPVwiZmFsc2VcIlxuICA+XG4gICAgPGlcbiAgICAgIGNsYXNzPVwiaWNvbi0xNFwiXG4gICAgICBbYzh5SWNvbl09XCJcbiAgICAgICAgY29uZmlnPy5hZ2dyZWdhdGlvbiA/IEFHR1JFR0FUSU9OX0lDT05TW2NvbmZpZy5hZ2dyZWdhdGlvbl0gOiBBR0dSRUdBVElPTl9JQ09OUy51bmRlZmluZWRcbiAgICAgIFwiXG4gICAgPjwvaT5cbiAgPC9idXR0b24+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBjOHktcmVhbHRpbWUgYnRuLW5vLWZvY3VzXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIihjb25maWc/LnJlYWx0aW1lID8gJ1JlYWx0aW1lIGFjdGl2ZScgOiAnUmVhbHRpbWUgaW5hY3RpdmUnKSB8IHRyYW5zbGF0ZVwiXG4gICAgdG9vbHRpcD1cInt7IChjb25maWc/LnJlYWx0aW1lID8gJ1JlYWx0aW1lIGFjdGl2ZScgOiAnUmVhbHRpbWUgaW5hY3RpdmUnKSB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgcGxhY2VtZW50PVwidG9wXCJcbiAgICBjb250YWluZXI9XCJib2R5XCJcbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAqbmdJZj1cImNvbmZpZz8ud2lkZ2V0SW5zdGFuY2VHbG9iYWxUaW1lQ29udGV4dFwiXG4gID5cbiAgICA8c3BhblxuICAgICAgY2xhc3M9XCJjOHktcHVsc2UgbS0wXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgYWN0aXZlOiBjb25maWc/LnJlYWx0aW1lLCBpbmFjdGl2ZTogIWNvbmZpZz8ucmVhbHRpbWUgfVwiXG4gICAgPjwvc3Bhbj5cbiAgPC9idXR0b24+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImJ0biBidG4tY2xlYW4gYnRuLW5vLWZvY3VzIHAtbC00IHAtci0wXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImdsb2JhbENvbnRleHRCdXR0b25UZXh0IHwgdHJhbnNsYXRlXCJcbiAgICBbdG9vbHRpcF09XCJnbG9iYWxDb250ZXh0QnV0dG9uVGV4dCB8IHRyYW5zbGF0ZVwiXG4gICAgcGxhY2VtZW50PVwidG9wXCJcbiAgICBjb250YWluZXI9XCJib2R5XCJcbiAgICBkYXRhLWN5PVwiZGFzaGJvYXJkLWNoaWxkLS1nbG9iYWwtZGF0ZS1jb250ZXh0LWluZGljYXRvclwiXG4gICAgKm5nSWY9XCJjb25maWc/LndpZGdldEluc3RhbmNlR2xvYmFsVGltZUNvbnRleHRcIlxuICA+XG4gICAgPHNwYW4gY2xhc3M9XCJ0YWcgdGFnLS1zdWNjZXNzIGNoaXBcIj5cbiAgICAgIDxpIGM4eUljb249XCJjbG9ja1wiPjwvaT5cbiAgICAgIHt7ICdSZWFsdGltZScgfCB0cmFuc2xhdGUgfX1cbiAgICA8L3NwYW4+XG4gIDwvYnV0dG9uPlxuPC9zcGFuPlxuIl19