UNPKG

@w11k/ngx-present

Version:

Angular based Presentation Tool

89 lines 5.65 kB
/** * @fileoverview added by tsickle * Generated from: lib/core/title.service.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; import { Title } from '@angular/platform-browser'; import { PresentationService } from './presentation.service'; import * as i0 from "@angular/core"; import * as i1 from "@angular/platform-browser"; import * as i2 from "./presentation.service"; export class AdvancedTitleService { /** * @param {?} title * @param {?} presentation */ constructor(title, presentation) { this.title = title; this.presentation = presentation; this.original = title.getTitle(); } /** * @param {?} newTitle * @return {?} */ setTitle(newTitle) { /** @type {?} */ const oldTitle = this.title.getTitle(); this.title.setTitle(newTitle); this.lastReturnedUnset = ((/** * @return {?} */ () => { /** @type {?} */ const unset = (/** * @return {?} */ () => { if (this.lastReturnedUnset === unset) { this.title.setTitle(oldTitle); } }); return unset; }))(); return this.lastReturnedUnset; } /** * @param {?} prefix * @param {?=} separator * @return {?} */ prefixTitle(prefix, separator = this.presentation.state.config.title.separator) { return this.setTitle(prefix + separator + this.original); } } AdvancedTitleService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ AdvancedTitleService.ctorParameters = () => [ { type: Title }, { type: PresentationService } ]; /** @nocollapse */ AdvancedTitleService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AdvancedTitleService_Factory() { return new AdvancedTitleService(i0.ɵɵinject(i1.Title), i0.ɵɵinject(i2.PresentationService)); }, token: AdvancedTitleService, providedIn: "root" }); if (false) { /** * @type {?} * @private */ AdvancedTitleService.prototype.lastReturnedUnset; /** * @type {?} * @private */ AdvancedTitleService.prototype.original; /** * @type {?} * @private */ AdvancedTitleService.prototype.title; /** * @type {?} * @private */ AdvancedTitleService.prototype.presentation; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B3MTFrL25neC1wcmVzZW50LyIsInNvdXJjZXMiOlsibGliL2NvcmUvdGl0bGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7O0FBSzdELE1BQU0sT0FBTyxvQkFBb0I7Ozs7O0lBSS9CLFlBQTZCLEtBQVksRUFDWixZQUFpQztRQURqQyxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQzVELElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25DLENBQUM7Ozs7O0lBRUQsUUFBUSxDQUFDLFFBQWdCOztjQUNqQixRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUU7UUFFdEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFOUIsSUFBSSxDQUFDLGlCQUFpQixHQUFHOzs7UUFBQyxHQUFHLEVBQUU7O2tCQUN2QixLQUFLOzs7WUFBRyxHQUFHLEVBQUU7Z0JBQ2pCLElBQUksSUFBSSxDQUFDLGlCQUFpQixLQUFLLEtBQUssRUFBRTtvQkFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7aUJBQy9CO1lBQ0gsQ0FBQyxDQUFBO1lBQ0QsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLEVBQUMsRUFBRSxDQUFDO1FBRUwsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQzs7Ozs7O0lBRUQsV0FBVyxDQUFDLE1BQWMsRUFBRSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxTQUFTO1FBQ3BGLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzRCxDQUFDOzs7WUEvQkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7O1lBTFEsS0FBSztZQUNMLG1CQUFtQjs7Ozs7Ozs7SUFNMUIsaURBQW1EOzs7OztJQUNuRCx3Q0FBa0M7Ozs7O0lBRXRCLHFDQUE2Qjs7Ozs7SUFDN0IsNENBQWtEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGl0bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IFByZXNlbnRhdGlvblNlcnZpY2UgfSBmcm9tICcuL3ByZXNlbnRhdGlvbi5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQWR2YW5jZWRUaXRsZVNlcnZpY2Uge1xuICBwcml2YXRlIGxhc3RSZXR1cm5lZFVuc2V0OiAoKCkgPT4gYW55KSB8IHVuZGVmaW5lZDtcbiAgcHJpdmF0ZSByZWFkb25seSBvcmlnaW5hbDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdGl0bGU6IFRpdGxlLFxuICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHByZXNlbnRhdGlvbjogUHJlc2VudGF0aW9uU2VydmljZSkge1xuICAgIHRoaXMub3JpZ2luYWwgPSB0aXRsZS5nZXRUaXRsZSgpO1xuICB9XG5cbiAgc2V0VGl0bGUobmV3VGl0bGU6IHN0cmluZyk6ICgoKSA9PiB2b2lkKSB7XG4gICAgY29uc3Qgb2xkVGl0bGUgPSB0aGlzLnRpdGxlLmdldFRpdGxlKCk7XG5cbiAgICB0aGlzLnRpdGxlLnNldFRpdGxlKG5ld1RpdGxlKTtcblxuICAgIHRoaXMubGFzdFJldHVybmVkVW5zZXQgPSAoKCkgPT4ge1xuICAgICAgY29uc3QgdW5zZXQgPSAoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmxhc3RSZXR1cm5lZFVuc2V0ID09PSB1bnNldCkge1xuICAgICAgICAgIHRoaXMudGl0bGUuc2V0VGl0bGUob2xkVGl0bGUpO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgICAgcmV0dXJuIHVuc2V0O1xuICAgIH0pKCk7XG5cbiAgICByZXR1cm4gdGhpcy5sYXN0UmV0dXJuZWRVbnNldDtcbiAgfVxuXG4gIHByZWZpeFRpdGxlKHByZWZpeDogc3RyaW5nLCBzZXBhcmF0b3IgPSB0aGlzLnByZXNlbnRhdGlvbi5zdGF0ZS5jb25maWcudGl0bGUuc2VwYXJhdG9yKTogKCgpID0+IHZvaWQpIHtcbiAgICByZXR1cm4gdGhpcy5zZXRUaXRsZShwcmVmaXggKyBzZXBhcmF0b3IgKyB0aGlzLm9yaWdpbmFsKTtcbiAgfVxufVxuIl19