@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
34 lines • 3.73 kB
JavaScript
import { Pipe } from '@angular/core';
import { Severity } from '@c8y/client';
import { ALARM_SEVERITY_ICON_MAP, HELP_ICON } from './alarms.model';
import * as i0 from "@angular/core";
/**
* Pipe for transforming alarm severity types into corresponding icons.
*
* @example
* Usage in an Angular template:
* {{ 'CRITICAL' | AlarmSeverityToIcon }}
* Result: 'exclamation-circle'
*/
export class AlarmSeverityToIconPipe {
/**
* Transforms an alarm severity type into a corresponding icon.
*
* @param alarmSeverity - The severity type of the alarm.
* @returns The corresponding icon for the given alarm severity type.
*/
transform(alarmSeverity) {
const alarmSeverityMapped = Severity[alarmSeverity?.toUpperCase()];
return ALARM_SEVERITY_ICON_MAP[alarmSeverityMapped] || HELP_ICON;
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AlarmSeverityToIconPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: AlarmSeverityToIconPipe, isStandalone: true, name: "AlarmSeverityToIcon" }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AlarmSeverityToIconPipe, decorators: [{
type: Pipe,
args: [{
name: 'AlarmSeverityToIcon',
standalone: true
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxhcm0tc2V2ZXJpdHktdG8taWNvbi5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vYWxhcm1zL2FsYXJtLXNldmVyaXR5LXRvLWljb24ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFnQixNQUFNLGFBQWEsQ0FBQztBQUNyRCxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUV2Rjs7Ozs7OztHQU9HO0FBS0gsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQzs7Ozs7T0FLRztJQUNILFNBQVMsQ0FBQyxhQUEyQjtRQUNuQyxNQUFNLG1CQUFtQixHQUFHLFFBQVEsQ0FBQyxhQUFhLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNuRSxPQUFPLHVCQUF1QixDQUFDLG1CQUFtQixDQUFDLElBQUksU0FBUyxDQUFDO0lBQ25FLENBQUM7K0dBVlUsdUJBQXVCOzZHQUF2Qix1QkFBdUI7OzRGQUF2Qix1QkFBdUI7a0JBSm5DLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLHFCQUFxQjtvQkFDM0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2V2ZXJpdHksIFNldmVyaXR5VHlwZSB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IEFMQVJNX1NFVkVSSVRZX0lDT05fTUFQLCBBbGFybVNldmVyaXR5SWNvbiwgSEVMUF9JQ09OIH0gZnJvbSAnLi9hbGFybXMubW9kZWwnO1xuXG4vKipcbiAqIFBpcGUgZm9yIHRyYW5zZm9ybWluZyBhbGFybSBzZXZlcml0eSB0eXBlcyBpbnRvIGNvcnJlc3BvbmRpbmcgaWNvbnMuXG4gKlxuICogQGV4YW1wbGVcbiAqIFVzYWdlIGluIGFuIEFuZ3VsYXIgdGVtcGxhdGU6XG4gKiB7eyAnQ1JJVElDQUwnIHwgQWxhcm1TZXZlcml0eVRvSWNvbiB9fVxuICogUmVzdWx0OiAnZXhjbGFtYXRpb24tY2lyY2xlJ1xuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdBbGFybVNldmVyaXR5VG9JY29uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBBbGFybVNldmVyaXR5VG9JY29uUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAvKipcbiAgICogVHJhbnNmb3JtcyBhbiBhbGFybSBzZXZlcml0eSB0eXBlIGludG8gYSBjb3JyZXNwb25kaW5nIGljb24uXG4gICAqXG4gICAqIEBwYXJhbSBhbGFybVNldmVyaXR5IC0gVGhlIHNldmVyaXR5IHR5cGUgb2YgdGhlIGFsYXJtLlxuICAgKiBAcmV0dXJucyBUaGUgY29ycmVzcG9uZGluZyBpY29uIGZvciB0aGUgZ2l2ZW4gYWxhcm0gc2V2ZXJpdHkgdHlwZS5cbiAgICovXG4gIHRyYW5zZm9ybShhbGFybVNldmVyaXR5OiBTZXZlcml0eVR5cGUpOiBBbGFybVNldmVyaXR5SWNvbiB8IHR5cGVvZiBIRUxQX0lDT04ge1xuICAgIGNvbnN0IGFsYXJtU2V2ZXJpdHlNYXBwZWQgPSBTZXZlcml0eVthbGFybVNldmVyaXR5Py50b1VwcGVyQ2FzZSgpXTtcbiAgICByZXR1cm4gQUxBUk1fU0VWRVJJVFlfSUNPTl9NQVBbYWxhcm1TZXZlcml0eU1hcHBlZF0gfHwgSEVMUF9JQ09OO1xuICB9XG59XG4iXX0=