ngx-hun-party-colors
Version:
[](https://badge.fury.io/js/ngx-hun-party-colors) [](https://travis-ci.com/madar94/ngx-hun-party-colors)
32 lines • 4.47 kB
JavaScript
import { Injectable } from '@angular/core';
import { partyColors } from './utils/colors';
import { hexToHsl, hexToRgb, } from './utils/color-utils';
export class HUNPartyColorsService {
constructor() {
this.colors = partyColors;
}
getPartyColorHex(partyName) {
return this.getColor(partyName);
}
getPartyColorRgb(partyName) {
const color = hexToRgb(this.getColor(partyName));
return `rgb(${color === null || color === void 0 ? void 0 : color.r}, ${color === null || color === void 0 ? void 0 : color.g}, ${color === null || color === void 0 ? void 0 : color.b})`;
}
getPartyColorHsl(partyName) {
const color = hexToHsl(this.getColor(partyName));
return `hsl(${color === null || color === void 0 ? void 0 : color.h}, ${color === null || color === void 0 ? void 0 : color.s}, ${color === null || color === void 0 ? void 0 : color.l})`;
}
getColor(partyName) {
let partyColor = '';
this.colors.map((color) => {
if (color.name.toLocaleString().toLowerCase().indexOf(partyName.toLowerCase()) !== -1) {
partyColor = color.color;
}
});
return partyColor;
}
}
HUNPartyColorsService.decorators = [
{ type: Injectable }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHVuLXBhcnR5LWNvbG9ycy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWh1bi1wYXJ0eS1jb2xvcnMvc3JjL2xpYi9odW4tcGFydHktY29sb3JzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQztBQUcxRCxNQUFNLE9BQU8scUJBQXFCO0lBRGxDO1FBRVksV0FBTSxHQUFHLFdBQVcsQ0FBQztJQTJCakMsQ0FBQztJQXpCRyxnQkFBZ0IsQ0FBQyxTQUFpQjtRQUM5QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELGdCQUFnQixDQUFDLFNBQWlCO1FBQzlCLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDakQsT0FBTyxPQUFPLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxDQUFDLEtBQUssS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLENBQUMsS0FBSyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsQ0FBQyxHQUFHLENBQUM7SUFDeEQsQ0FBQztJQUVELGdCQUFnQixDQUFDLFNBQWlCO1FBQzlCLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDakQsT0FBTyxPQUFPLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxDQUFDLEtBQUssS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLENBQUMsS0FBSyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsQ0FBQyxHQUFHLENBQUM7SUFDeEQsQ0FBQztJQUVPLFFBQVEsQ0FBQyxTQUFpQjtRQUM5QixJQUFJLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFFcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUN0QixJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFO2dCQUNuRixVQUFVLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQzthQUM1QjtRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxVQUFVLENBQUM7SUFDdEIsQ0FBQzs7O1lBNUJKLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBwYXJ0eUNvbG9ycyB9IGZyb20gJy4vdXRpbHMvY29sb3JzJztcbmltcG9ydCB7IGhleFRvSHNsLCBoZXhUb1JnYiwgfSBmcm9tICcuL3V0aWxzL2NvbG9yLXV0aWxzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEhVTlBhcnR5Q29sb3JzU2VydmljZSB7XG4gICAgcHJpdmF0ZSBjb2xvcnMgPSBwYXJ0eUNvbG9ycztcblxuICAgIGdldFBhcnR5Q29sb3JIZXgocGFydHlOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDb2xvcihwYXJ0eU5hbWUpO1xuICAgIH1cblxuICAgIGdldFBhcnR5Q29sb3JSZ2IocGFydHlOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBjb2xvciA9IGhleFRvUmdiKHRoaXMuZ2V0Q29sb3IocGFydHlOYW1lKSk7XG4gICAgICAgIHJldHVybiBgcmdiKCR7Y29sb3I/LnJ9LCAke2NvbG9yPy5nfSwgJHtjb2xvcj8uYn0pYDtcbiAgICB9XG5cbiAgICBnZXRQYXJ0eUNvbG9ySHNsKHBhcnR5TmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgY29sb3IgPSBoZXhUb0hzbCh0aGlzLmdldENvbG9yKHBhcnR5TmFtZSkpO1xuICAgICAgICByZXR1cm4gYGhzbCgke2NvbG9yPy5ofSwgJHtjb2xvcj8uc30sICR7Y29sb3I/Lmx9KWA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRDb2xvcihwYXJ0eU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGxldCBwYXJ0eUNvbG9yID0gJyc7XG5cbiAgICAgICAgdGhpcy5jb2xvcnMubWFwKChjb2xvcikgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbG9yLm5hbWUudG9Mb2NhbGVTdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YocGFydHlOYW1lLnRvTG93ZXJDYXNlKCkpICE9PSAtMSkge1xuICAgICAgICAgICAgICAgIHBhcnR5Q29sb3IgPSBjb2xvci5jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHBhcnR5Q29sb3I7XG4gICAgfVxufVxuIl19