@w11k/ngx-present
Version:
Angular based Presentation Tool
60 lines • 4.38 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/core/slide-and-mode-resolver.service.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Injectable } from '@angular/core';
import { Router } from '@angular/router';
import { delay, first } from 'rxjs/operators';
import { SlideBySlideService } from '../slide-by-slide/slide-by-slide.service';
import { ReplaySubject } from 'rxjs';
import * as i0 from "@angular/core";
import * as i1 from "@angular/router";
import * as i2 from "../slide-by-slide/slide-by-slide.service";
export class SlideAndModeResolver {
/**
* @param {?} router
* @param {?} service
*/
constructor(router, service) {
this.router = router;
this.service = service;
}
/**
* @param {?} route
* @param {?} state
* @return {?}
*/
resolve(route, state) {
this.service.setCurrentModeAndSlide(route);
// TODO: improve by ask tydux for completion of mutation
/** @type {?} */
const subject = new ReplaySubject();
subject.next();
return subject.pipe(delay(0), first());
}
}
SlideAndModeResolver.decorators = [
{ type: Injectable, args: [{
providedIn: 'root'
},] }
];
/** @nocollapse */
SlideAndModeResolver.ctorParameters = () => [
{ type: Router },
{ type: SlideBySlideService }
];
/** @nocollapse */ SlideAndModeResolver.ɵprov = i0.ɵɵdefineInjectable({ factory: function SlideAndModeResolver_Factory() { return new SlideAndModeResolver(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.SlideBySlideService)); }, token: SlideAndModeResolver, providedIn: "root" });
if (false) {
/**
* @type {?}
* @private
*/
SlideAndModeResolver.prototype.router;
/**
* @type {?}
* @private
*/
SlideAndModeResolver.prototype.service;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGUtYW5kLW1vZGUtcmVzb2x2ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B3MTFrL25neC1wcmVzZW50LyIsInNvdXJjZXMiOlsibGliL2NvcmUvc2xpZGUtYW5kLW1vZGUtcmVzb2x2ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFtQyxNQUFNLEVBQXVCLE1BQU0saUJBQWlCLENBQUM7QUFDL0YsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMvRSxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBS2pELE1BQU0sT0FBTyxvQkFBb0I7Ozs7O0lBRS9CLFlBQTZCLE1BQWMsRUFDZCxPQUE0QjtRQUQ1QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsWUFBTyxHQUFQLE9BQU8sQ0FBcUI7SUFDekQsQ0FBQzs7Ozs7O0lBRUQsT0FBTyxDQUFDLEtBQTZCLEVBQzdCLEtBQTBCO1FBQ2hDLElBQUksQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDLENBQUM7OztjQUdyQyxPQUFPLEdBQUcsSUFBSSxhQUFhLEVBQVE7UUFDekMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1FBRWYsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7OztZQWxCRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs7WUFQeUMsTUFBTTtZQUV2QyxtQkFBbUI7Ozs7Ozs7O0lBUWQsc0NBQStCOzs7OztJQUMvQix1Q0FBNkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBSZXNvbHZlLCBSb3V0ZXIsIFJvdXRlclN0YXRlU25hcHNob3QgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZGVsYXksIGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU2xpZGVCeVNsaWRlU2VydmljZSB9IGZyb20gJy4uL3NsaWRlLWJ5LXNsaWRlL3NsaWRlLWJ5LXNsaWRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTbGlkZUFuZE1vZGVSZXNvbHZlciBpbXBsZW1lbnRzIFJlc29sdmU8dm9pZD4ge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgc2VydmljZTogU2xpZGVCeVNsaWRlU2VydmljZSkge1xuICB9XG5cbiAgcmVzb2x2ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCxcbiAgICAgICAgICBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHRoaXMuc2VydmljZS5zZXRDdXJyZW50TW9kZUFuZFNsaWRlKHJvdXRlKTtcblxuICAgIC8vIFRPRE86IGltcHJvdmUgYnkgYXNrIHR5ZHV4IGZvciBjb21wbGV0aW9uIG9mIG11dGF0aW9uXG4gICAgY29uc3Qgc3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PHZvaWQ+KCk7XG4gICAgc3ViamVjdC5uZXh0KCk7XG5cbiAgICByZXR1cm4gc3ViamVjdC5waXBlKGRlbGF5KDApLCBmaXJzdCgpKTtcbiAgfVxuXG5cblxufVxuIl19