ngx-gem-spaas
Version:
This library contains services, components, images and styles to provide a unified look and way-of-working throughout GEM SPaaS.
43 lines • 5.24 kB
JavaScript
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
export class UtilsService {
static copy(objIn) {
return JSON.parse(JSON.stringify(objIn));
}
// DISTINCT SORTED LIST WITHOUT NULL/UNDEFINED VALUES
static distinct(listIn, prefix = '', sortAsc = true) {
const sortCorr = sortAsc ? 1 : -1;
let listOut = listIn
.filter((value, index, self) => value && self.indexOf(value) === index)
.sort((a, b) => a < b ? -1 * sortCorr : 1 * sortCorr);
if (prefix) {
listOut = listOut.map((c) => prefix + c);
}
return listOut;
}
static round(num, dec) {
if (num === null || num === undefined) {
return null;
}
return Number((num).toFixed(dec));
}
static checkJSON(itemToCheck) {
let item = {};
try {
item = JSON.parse(itemToCheck);
}
catch (e) {
return false;
}
return typeof item === 'object' && item !== null;
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UtilsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UtilsService, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UtilsService, decorators: [{
type: Injectable,
args: [{
providedIn: 'root'
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1nZW0tc3BhYXMvc3JjL19zZXJ2aWNlcy91dGlscy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBS3pDLE1BQU0sT0FBTyxZQUFZO0lBRXZCLE1BQU0sQ0FBQyxJQUFJLENBQUksS0FBUTtRQUNyQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxxREFBcUQ7SUFDckQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFnQixFQUFFLE1BQU0sR0FBRyxFQUFFLEVBQUUsT0FBTyxHQUFHLElBQUk7UUFDM0QsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLElBQUksT0FBTyxHQUFHLE1BQU07YUFDakIsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUssQ0FBQzthQUN0RSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztRQUN4RCxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBVyxFQUFFLEdBQVc7UUFDbkMsSUFBSSxHQUFHLEtBQUssSUFBSSxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QyxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLFdBQW1CO1FBQ2xDLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNkLElBQUksQ0FBQztZQUNILElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pDLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsT0FBTyxPQUFPLElBQUksS0FBSyxRQUFRLElBQUksSUFBSSxLQUFLLElBQUksQ0FBQztJQUNuRCxDQUFDOytHQWpDVSxZQUFZO21IQUFaLFlBQVksY0FGWCxNQUFNOzs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVdGlsc1NlcnZpY2Uge1xyXG5cclxuICBzdGF0aWMgY29weTxUPihvYmpJbjogVCk6IFQge1xyXG4gICAgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkob2JqSW4pKTtcclxuICB9XHJcblxyXG4gIC8vIERJU1RJTkNUIFNPUlRFRCBMSVNUIFdJVEhPVVQgTlVMTC9VTkRFRklORUQgVkFMVUVTXHJcbiAgc3RhdGljIGRpc3RpbmN0KGxpc3RJbjogc3RyaW5nW10sIHByZWZpeCA9ICcnLCBzb3J0QXNjID0gdHJ1ZSk6IHN0cmluZ1tdIHtcclxuICAgIGNvbnN0IHNvcnRDb3JyID0gc29ydEFzYyA/IDEgOiAtMTtcclxuICAgIGxldCBsaXN0T3V0ID0gbGlzdEluXHJcbiAgICAgIC5maWx0ZXIoKHZhbHVlLCBpbmRleCwgc2VsZikgPT4gdmFsdWUgJiYgc2VsZi5pbmRleE9mKHZhbHVlKSA9PT0gaW5kZXgpXHJcbiAgICAgIC5zb3J0KChhLCBiKSA9PiBhIDwgYiA/IC0xICogc29ydENvcnIgOiAxICogc29ydENvcnIpO1xyXG4gICAgaWYgKHByZWZpeCkge1xyXG4gICAgICBsaXN0T3V0ID0gbGlzdE91dC5tYXAoKGMpID0+IHByZWZpeCArIGMpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGxpc3RPdXQ7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgcm91bmQobnVtOiBudW1iZXIsIGRlYzogbnVtYmVyKTogbnVtYmVyIHwgbnVsbCB7XHJcbiAgICBpZiAobnVtID09PSBudWxsIHx8IG51bSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIE51bWJlcigobnVtKS50b0ZpeGVkKGRlYykpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGNoZWNrSlNPTihpdGVtVG9DaGVjazogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgaXRlbSA9IHt9O1xyXG4gICAgdHJ5IHtcclxuICAgICAgaXRlbSA9IEpTT04ucGFyc2UoaXRlbVRvQ2hlY2spO1xyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHlwZW9mIGl0ZW0gPT09ICdvYmplY3QnICYmIGl0ZW0gIT09IG51bGw7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=