@lautarobock/color-picker
Version:
Angular Material Color Picker
30 lines • 3.5 kB
JavaScript
import { Injectable } from '@angular/core';
import { stringInputToObject } from '../helpers';
import { Color } from '../models';
import * as i0 from "@angular/core";
export class ColorAdapter {
constructor() { }
sameColor(a, b) {
if (a == null && b == null)
return true;
if (a != null && b != null)
return a.rgba === b.rgba;
return false;
}
format(c, format) {
return c.toString(format);
}
parse(value) {
const obj = stringInputToObject(value);
if (obj) {
return new Color(obj.r, obj.g, obj.b, obj.a);
}
return null;
}
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ColorAdapter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ColorAdapter }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ColorAdapter, decorators: [{
type: Injectable
}], ctorParameters: () => [] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItYWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbG9yLXBpY2tlci9zcmMvbGliL3NlcnZpY2VzL2NvbG9yLWFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDakQsT0FBTyxFQUFFLEtBQUssRUFBb0IsTUFBTSxXQUFXLENBQUM7O0FBR3BELE1BQU0sT0FBTyxZQUFZO0lBRXZCLGdCQUFnQixDQUFDO0lBRWpCLFNBQVMsQ0FBQyxDQUFRLEVBQUUsQ0FBUTtRQUMxQixJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUk7WUFBRSxPQUFPLElBQUksQ0FBQztRQUN4QyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUk7WUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNyRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxNQUFNLENBQUMsQ0FBUSxFQUFFLE1BQXdCO1FBQ3ZDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQWE7UUFDakIsTUFBTSxHQUFHLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNSLE9BQU8sSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7a0lBcEJVLFlBQVk7c0lBQVosWUFBWTs7NEZBQVosWUFBWTtrQkFEeEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgc3RyaW5nSW5wdXRUb09iamVjdCB9IGZyb20gJy4uL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBDb2xvciwgQ29sb3JJbnB1dEZvcm1hdCB9IGZyb20gJy4uL21vZGVscyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBDb2xvckFkYXB0ZXIge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBzYW1lQ29sb3IoYTogQ29sb3IsIGI6IENvbG9yKSB7XHJcbiAgICBpZiAoYSA9PSBudWxsICYmIGIgPT0gbnVsbCkgcmV0dXJuIHRydWU7XHJcbiAgICBpZiAoYSAhPSBudWxsICYmIGIgIT0gbnVsbCkgcmV0dXJuIGEucmdiYSA9PT0gYi5yZ2JhO1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZm9ybWF0KGM6IENvbG9yLCBmb3JtYXQ6IENvbG9ySW5wdXRGb3JtYXQpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGMudG9TdHJpbmcoZm9ybWF0KTtcclxuICB9XHJcblxyXG4gIHBhcnNlKHZhbHVlOiBzdHJpbmcpOiBDb2xvciB8IG51bGwge1xyXG4gICAgY29uc3Qgb2JqID0gc3RyaW5nSW5wdXRUb09iamVjdCh2YWx1ZSk7XHJcbiAgICBpZiAob2JqKSB7XHJcbiAgICAgIHJldHVybiBuZXcgQ29sb3Iob2JqLnIsIG9iai5nLCBvYmouYiwgb2JqLmEpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=