UNPKG

@bixi/auth

Version:
155 lines 11.7 kB
/** * @fileoverview added by tsickle * Generated from: src/auth.config.service.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Inject, Injectable, Optional } from '@angular/core'; import extend from 'extend'; import { BIXI_AUTH_CONFIG } from './config.type'; import * as i0 from "@angular/core"; import * as i1 from "./config.type"; /** * 深度合并对象 * * @param {?} original 原始对象 * @param {?} arrayProcessMethod 数组处理方式 * - `true` 表示替换新值,不管新值为哪种类型 * - `false` 表示会合并整个数组(将旧数据与新数据合并成新数组) * @param {...?} objects 要合并的对象 * @return {?} */ // tslint:disable-next-line:no-any function deepMergeKey(original, arrayProcessMethod, ...objects) { if (Array.isArray(original) || typeof original !== 'object') return original; // tslint:disable-next-line:no-any /** @type {?} */ const isObject = (/** * @param {?} v * @return {?} */ (v) => typeof v === 'object' || typeof v === 'function'); // tslint:disable-next-line:no-any /** @type {?} */ const merge = (/** * @param {?} target * @param {?} obj * @return {?} */ (target, obj) => { Object.keys(obj) .filter((/** * @param {?} key * @return {?} */ key => key !== '__proto__' && Object.prototype.hasOwnProperty.call(obj, key))) .forEach((/** * @param {?} key * @return {?} */ key => { /** @type {?} */ const fromValue = obj[key]; /** @type {?} */ const toValue = target[key]; if (Array.isArray(toValue)) { target[key] = arrayProcessMethod ? fromValue : [...toValue, ...fromValue]; } else if (fromValue != null && isObject(fromValue) && toValue != null && isObject(toValue)) { target[key] = merge(toValue, fromValue); } else { target[key] = deepCopy(fromValue); } })); return target; }); objects.filter((/** * @param {?} v * @return {?} */ v => v != null && isObject(v))).forEach((/** * @param {?} v * @return {?} */ v => merge(original, v))); return original; } // tslint:disable-next-line:no-any /** * @param {?} obj * @return {?} */ function deepCopy(obj) { /** @type {?} */ const result = extend(true, {}, { _: obj }); return result._; } export class BixiConfigService { /** * @param {?=} defaultConfig */ constructor(defaultConfig) { this.config = defaultConfig || {}; } /** * @param {?=} key * @return {?} */ get(key) { // tslint:disable-next-line:no-any /** @type {?} */ const res = (/** @type {?} */ ((((/** @type {?} */ (this.config))) || {}))); return key ? { [key]: res[key] } : res; } /** * @template R * @param {...?} defaultValues * @return {?} */ merge(...defaultValues) { return deepMergeKey({}, true, ...defaultValues, this.get()); } // tslint:disable-next-line:no-any /** * @template R * @param {?} componentThis * @param {?} defaultValues * @return {?} */ attach(componentThis, defaultValues) { Object.assign(componentThis, this.merge(defaultValues)); } // tslint:disable-next-line:no-any /** * @param {?} componentThis * @param {?} key * @return {?} */ attachKey(componentThis, key) { Object.assign(componentThis, this.get(key)); } /** * @param {?} value * @return {?} */ set(value) { this.config = Object.assign(Object.assign({}, this.config), value); } } BixiConfigService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ BixiConfigService.ctorParameters = () => [ { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [BIXI_AUTH_CONFIG,] }] } ]; /** @nocollapse */ BixiConfigService.ɵprov = i0.ɵɵdefineInjectable({ factory: function BixiConfigService_Factory() { return new BixiConfigService(i0.ɵɵinject(i1.BIXI_AUTH_CONFIG, 8)); }, token: BixiConfigService, providedIn: "root" }); if (false) { /** * @type {?} * @private */ BixiConfigService.prototype.config; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5jb25maWcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIvVXNlcnMvc3RldmVuemhvbmcvQ29kZS93b3JrQ29kZS9iaXhpX2FuZ3VsYXIvcGFja2FnZXMvYXV0aC8iLCJzb3VyY2VzIjpbInNyYy9hdXRoLmNvbmZpZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQWtCLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7Ozs7OztBQVlqRSxTQUFTLFlBQVksQ0FBQyxRQUFhLEVBQUUsa0JBQTJCLEVBQUUsR0FBRyxPQUFjO0lBQ2pGLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRO1FBQUUsT0FBTyxRQUFRLENBQUM7OztVQUd2RSxRQUFROzs7O0lBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxPQUFPLENBQUMsS0FBSyxVQUFVLENBQUE7OztVQUd2RSxLQUFLOzs7OztJQUFHLENBQUMsTUFBVyxFQUFFLEdBQVEsRUFBRSxFQUFFO1FBQ3RDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO2FBQ2IsTUFBTTs7OztRQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLFdBQVcsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFDO2FBQ3BGLE9BQU87Ozs7UUFBQyxHQUFHLENBQUMsRUFBRTs7a0JBQ1AsU0FBUyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUM7O2tCQUNwQixPQUFPLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQztZQUMzQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQzFCLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7YUFDM0U7aUJBQU0sSUFBSSxTQUFTLElBQUksSUFBSSxJQUFJLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxPQUFPLElBQUksSUFBSSxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDM0YsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7YUFDekM7aUJBQU07Z0JBQ0wsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUNuQztRQUNILENBQUMsRUFBQyxDQUFDO1FBQ0wsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxDQUFBO0lBRUQsT0FBTyxDQUFDLE1BQU07Ozs7SUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsT0FBTzs7OztJQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBQyxDQUFDO0lBRS9FLE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUM7Ozs7OztBQUdELFNBQVMsUUFBUSxDQUFDLEdBQVE7O1VBQ2xCLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUMzQyxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFDbEIsQ0FBQztBQUdELE1BQU0sT0FBTyxpQkFBaUI7Ozs7SUFHNUIsWUFBa0QsYUFBOEI7UUFDOUUsSUFBSSxDQUFDLE1BQU0sR0FBRyxhQUFhLElBQUksRUFBRSxDQUFDO0lBQ3BDLENBQUM7Ozs7O0lBRUQsR0FBRyxDQUFDLEdBQVk7OztjQUVSLEdBQUcsR0FBRyxtQkFBQSxDQUFDLENBQUMsbUJBQUEsSUFBSSxDQUFDLE1BQU0sRUFBMEIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFPO1FBQ2xFLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUN6QyxDQUFDOzs7Ozs7SUFFRCxLQUFLLENBQUksR0FBRyxhQUFrQjtRQUM1QixPQUFPLFlBQVksQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsYUFBYSxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7Ozs7Ozs7O0lBR0QsTUFBTSxDQUFJLGFBQWtCLEVBQUUsYUFBZ0I7UUFDNUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7Ozs7Ozs7SUFHRCxTQUFTLENBQUMsYUFBa0IsRUFBRSxHQUFXO1FBQ3ZDLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM5QyxDQUFDOzs7OztJQUVELEdBQUcsQ0FBQyxLQUFxQjtRQUN2QixJQUFJLENBQUMsTUFBTSxtQ0FBUSxJQUFJLENBQUMsTUFBTSxHQUFLLEtBQUssQ0FBRSxDQUFDO0lBQzdDLENBQUM7OztZQTlCRixVQUFVLFNBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzs7OzRDQUluQixRQUFRLFlBQUksTUFBTSxTQUFDLGdCQUFnQjs7Ozs7Ozs7SUFGaEQsbUNBQStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGV4dGVuZCBmcm9tICdleHRlbmQnO1xuaW1wb3J0IHsgQml4aUF1dGhDb25maWcsIEJJWElfQVVUSF9DT05GSUcgfSBmcm9tICcuL2NvbmZpZy50eXBlJztcblxuLyoqXG4gKiDmt7HluqblkIjlubblr7nosaFcbiAqXG4gKiBAcGFyYW0gb3JpZ2luYWwg5Y6f5aeL5a+56LGhXG4gKiBAcGFyYW0gYXJyYXlQcm9jZXNzTWV0aG9kIOaVsOe7hOWkhOeQhuaWueW8j1xuICogIC0gYHRydWVgIOihqOekuuabv+aNouaWsOWAvO+8jOS4jeeuoeaWsOWAvOS4uuWTquenjeexu+Wei1xuICogIC0gYGZhbHNlYCDooajnpLrkvJrlkIjlubbmlbTkuKrmlbDnu4TvvIjlsIbml6fmlbDmja7kuI7mlrDmlbDmja7lkIjlubbmiJDmlrDmlbDnu4TvvIlcbiAqIEBwYXJhbSBvYmplY3RzIOimgeWQiOW5tueahOWvueixoVxuICovXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tYW55XG5mdW5jdGlvbiBkZWVwTWVyZ2VLZXkob3JpZ2luYWw6IGFueSwgYXJyYXlQcm9jZXNzTWV0aG9kOiBib29sZWFuLCAuLi5vYmplY3RzOiBhbnlbXSk6IGFueSB7XG4gIGlmIChBcnJheS5pc0FycmF5KG9yaWdpbmFsKSB8fCB0eXBlb2Ygb3JpZ2luYWwgIT09ICdvYmplY3QnKSByZXR1cm4gb3JpZ2luYWw7XG5cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWFueVxuICBjb25zdCBpc09iamVjdCA9ICh2OiBhbnkpID0+IHR5cGVvZiB2ID09PSAnb2JqZWN0JyB8fCB0eXBlb2YgdiA9PT0gJ2Z1bmN0aW9uJztcblxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tYW55XG4gIGNvbnN0IG1lcmdlID0gKHRhcmdldDogYW55LCBvYmo6IGFueSkgPT4ge1xuICAgIE9iamVjdC5rZXlzKG9iailcbiAgICAgIC5maWx0ZXIoa2V5ID0+IGtleSAhPT0gJ19fcHJvdG9fXycgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSlcbiAgICAgIC5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgIGNvbnN0IGZyb21WYWx1ZSA9IG9ialtrZXldO1xuICAgICAgICBjb25zdCB0b1ZhbHVlID0gdGFyZ2V0W2tleV07XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRvVmFsdWUpKSB7XG4gICAgICAgICAgdGFyZ2V0W2tleV0gPSBhcnJheVByb2Nlc3NNZXRob2QgPyBmcm9tVmFsdWUgOiBbLi4udG9WYWx1ZSwgLi4uZnJvbVZhbHVlXTtcbiAgICAgICAgfSBlbHNlIGlmIChmcm9tVmFsdWUgIT0gbnVsbCAmJiBpc09iamVjdChmcm9tVmFsdWUpICYmIHRvVmFsdWUgIT0gbnVsbCAmJiBpc09iamVjdCh0b1ZhbHVlKSkge1xuICAgICAgICAgIHRhcmdldFtrZXldID0gbWVyZ2UodG9WYWx1ZSwgZnJvbVZhbHVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0YXJnZXRba2V5XSA9IGRlZXBDb3B5KGZyb21WYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIHJldHVybiB0YXJnZXQ7XG4gIH07XG5cbiAgb2JqZWN0cy5maWx0ZXIodiA9PiB2ICE9IG51bGwgJiYgaXNPYmplY3QodikpLmZvckVhY2godiA9PiBtZXJnZShvcmlnaW5hbCwgdikpO1xuXG4gIHJldHVybiBvcmlnaW5hbDtcbn1cblxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWFueVxuZnVuY3Rpb24gZGVlcENvcHkob2JqOiBhbnkpOiBhbnkge1xuICBjb25zdCByZXN1bHQgPSBleHRlbmQodHJ1ZSwge30sIHsgXzogb2JqIH0pO1xuICByZXR1cm4gcmVzdWx0Ll87XG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQml4aUNvbmZpZ1NlcnZpY2Uge1xuICBwcml2YXRlIGNvbmZpZzogQml4aUF1dGhDb25maWc7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQEluamVjdChCSVhJX0FVVEhfQ09ORklHKSBkZWZhdWx0Q29uZmlnPzogQml4aUF1dGhDb25maWcpIHtcbiAgICB0aGlzLmNvbmZpZyA9IGRlZmF1bHRDb25maWcgfHwge307XG4gIH1cblxuICBnZXQoa2V5Pzogc3RyaW5nKTogQml4aUF1dGhDb25maWcge1xuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1hbnlcbiAgICBjb25zdCByZXMgPSAoKHRoaXMuY29uZmlnIGFzIHsgW2tleTogc3RyaW5nXTogYW55IH0pIHx8IHt9KSBhcyBhbnk7XG4gICAgcmV0dXJuIGtleSA/IHsgW2tleV06IHJlc1trZXldIH0gOiByZXM7XG4gIH1cblxuICBtZXJnZTxSPiguLi5kZWZhdWx0VmFsdWVzOiBSW10pOiBSIHtcbiAgICByZXR1cm4gZGVlcE1lcmdlS2V5KHt9LCB0cnVlLCAuLi5kZWZhdWx0VmFsdWVzLCB0aGlzLmdldCgpKTtcbiAgfVxuXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1hbnlcbiAgYXR0YWNoPFI+KGNvbXBvbmVudFRoaXM6IGFueSwgZGVmYXVsdFZhbHVlczogUikge1xuICAgIE9iamVjdC5hc3NpZ24oY29tcG9uZW50VGhpcywgdGhpcy5tZXJnZShkZWZhdWx0VmFsdWVzKSk7XG4gIH1cblxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tYW55XG4gIGF0dGFjaEtleShjb21wb25lbnRUaGlzOiBhbnksIGtleTogc3RyaW5nKSB7XG4gICAgT2JqZWN0LmFzc2lnbihjb21wb25lbnRUaGlzLCB0aGlzLmdldChrZXkpKTtcbiAgfVxuXG4gIHNldCh2YWx1ZTogQml4aUF1dGhDb25maWcpOiB2b2lkIHtcbiAgICB0aGlzLmNvbmZpZyA9IHsgLi4udGhpcy5jb25maWcsIC4uLnZhbHVlIH07XG4gIH1cbn1cbiJdfQ==