UNPKG

com.phloxui

Version:

PhloxUI Ng2+ Framework

83 lines (82 loc) 7.22 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} checked by tsc */ import { Injectable } from '@angular/core'; export class ColorThemeProvider { /** * @param {?} defaultTheme * @return {?} */ setDefaultTheme(defaultTheme) { this.defaultTheme = defaultTheme; } /** * @return {?} */ reload() { this.colorThemes = []; return Promise.resolve(this.colorThemes); } /** * @return {?} */ getColorThemes() { if (this.colorThemes !== null && typeof this.colorThemes !== 'undefined') { return Promise.resolve(this.colorThemes); } else { let /** @type {?} */ prom = this.reload(); if (prom !== null && prom !== undefined) { return new Promise((resolve, reject) => { prom.then((result) => { this.colorThemes = result; resolve(this.colorThemes); }).catch((error) => { reject(error); }); }); } return Promise.resolve([]); } } /** * @param {?} name * @param {?=} useDefault * @return {?} */ getColorTheme(name, useDefault = true) { return this.getColorThemes().then((result) => { let /** @type {?} */ theme = null; for (let /** @type {?} */ i = 0; i < result.length; i++) { if (result[i].name === name) { theme = result[i]; break; } } if (theme === null && useDefault) { return Promise.resolve(this.defaultTheme); } else { return Promise.resolve(theme); } }); } } ColorThemeProvider.decorators = [ { type: Injectable }, ]; function ColorThemeProvider_tsickle_Closure_declarations() { /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */ ColorThemeProvider.decorators; /** * @nocollapse * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>} */ ColorThemeProvider.ctorParameters; /** @type {?} */ ColorThemeProvider.prototype.colorThemes; /** @type {?} */ ColorThemeProvider.prototype.defaultTheme; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29sb3JUaGVtZVByb3ZpZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9jb20ucGhsb3h1aS8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlL0NvbG9yVGhlbWVQcm92aWRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE1BQU07Ozs7O0lBS0ssZUFBZSxDQUFDLFlBQXdCO1FBQzdDLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDOzs7OztJQUc1QixNQUFNO1FBQ1QsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFFdEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDOzs7OztJQUd0QyxjQUFjO1FBQ2pCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQ3ZFLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUM1QztRQUFDLElBQUksQ0FBQyxDQUFDO1lBQ0oscUJBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUV6QixFQUFFLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUN4QyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFDLEVBQUU7b0JBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFvQixFQUFFLEVBQUU7d0JBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDO3dCQUUxQixPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO3FCQUM3QixDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFDLEVBQUU7d0JBQ2hCLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztxQkFDZixDQUFDLENBQUM7aUJBQ0osQ0FBQyxDQUFDO2FBQ0o7WUFFRCxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUM5Qjs7Ozs7OztJQUdFLGFBQWEsQ0FBQyxJQUFZLEVBQUUsYUFBcUIsSUFBSTtRQUN4RCxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQW9CLEVBQUUsRUFBRTtZQUN2RCxxQkFBSSxLQUFLLEdBQWUsSUFBSSxDQUFDO1lBRTdCLEdBQUcsQ0FBQyxDQUFDLHFCQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDN0MsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDO29CQUMxQixLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUVsQixLQUFLLENBQUM7aUJBQ1Q7YUFDSjtZQUVELEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQztnQkFDL0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQzdDO1lBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ0osTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDakM7U0FDSixDQUFDLENBQUM7Ozs7WUF2RFYsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbG9yVGhlbWUgfSBmcm9tICcuLi9jb21wb25lbnQvbW9kZWwvbW9kZWxzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbG9yVGhlbWVQcm92aWRlciB7XG5cbiAgICBwcm90ZWN0ZWQgY29sb3JUaGVtZXM6IENvbG9yVGhlbWVbXTtcbiAgICBwcm90ZWN0ZWQgZGVmYXVsdFRoZW1lOiBDb2xvclRoZW1lO1xuXG4gICAgcHVibGljIHNldERlZmF1bHRUaGVtZShkZWZhdWx0VGhlbWU6IENvbG9yVGhlbWUpOiB2b2lkIHtcbiAgICAgIHRoaXMuZGVmYXVsdFRoZW1lID0gZGVmYXVsdFRoZW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWxvYWQoKTogUHJvbWlzZTxDb2xvclRoZW1lW10+IHtcbiAgICAgICAgdGhpcy5jb2xvclRoZW1lcyA9IFtdO1xuXG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5jb2xvclRoZW1lcyk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldENvbG9yVGhlbWVzKCk6IFByb21pc2U8Q29sb3JUaGVtZVtdPiB7XG4gICAgICAgIGlmICh0aGlzLmNvbG9yVGhlbWVzICE9PSBudWxsICYmIHR5cGVvZiB0aGlzLmNvbG9yVGhlbWVzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLmNvbG9yVGhlbWVzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCBwcm9tID0gdGhpcy5yZWxvYWQoKTtcblxuICAgICAgICAgICAgaWYgKHByb20gIT09IG51bGwgJiYgcHJvbSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KT0+e1xuICAgICAgICAgICAgICAgIHByb20udGhlbigocmVzdWx0OiBDb2xvclRoZW1lW10pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb2xvclRoZW1lcyA9IHJlc3VsdDtcblxuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHRoaXMuY29sb3JUaGVtZXMpO1xuICAgICAgICAgICAgICAgIH0pLmNhdGNoKChlcnJvcik9PntcbiAgICAgICAgICAgICAgICAgIHJlamVjdChlcnJvcik7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKFtdKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDb2xvclRoZW1lKG5hbWU6IHN0cmluZywgdXNlRGVmYXVsdDpib29sZWFuID0gdHJ1ZSk6IFByb21pc2U8Q29sb3JUaGVtZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDb2xvclRoZW1lcygpLnRoZW4oKHJlc3VsdDogQ29sb3JUaGVtZVtdKSA9PiB7XG4gICAgICAgICAgICBsZXQgdGhlbWU6IENvbG9yVGhlbWUgPSBudWxsO1xuXG4gICAgICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgcmVzdWx0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdFtpXS5uYW1lID09PSBuYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoZW1lID0gcmVzdWx0W2ldO1xuXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHRoZW1lID09PSBudWxsICYmIHVzZURlZmF1bHQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuZGVmYXVsdFRoZW1lKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGVtZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxufVxuIl19