cb-tour-guide
Version:
Guided tour for your Angular6+ applications.
76 lines • 4.15 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Inject, Injectable, PLATFORM_ID } from "@angular/core";
import { isPlatformBrowser } from "@angular/common";
/**
* @return {?}
*/
function getWindow() {
return window;
}
/**
* @return {?}
*/
function getMockWindow() {
return {
innerWidth: 0,
innerHeight: 0,
scrollY: 0,
scrollX: 0,
pageYOffset: 0,
pageXOffset: 0,
scroll: (/**
* @return {?}
*/
() => { }),
scrollTo: (/**
* @return {?}
*/
() => { }),
addEventListener: (/**
* @return {?}
*/
() => { }),
removeEventListener: (/**
* @return {?}
*/
() => { }),
};
}
export class WindowRefService {
/**
* @param {?} platformId
*/
constructor(platformId) {
this.isBrowser = false;
this.isBrowser = isPlatformBrowser(platformId);
}
/**
* @return {?}
*/
get nativeWindow() {
if (this.isBrowser) {
return getWindow();
}
else {
return getMockWindow();
}
}
}
WindowRefService.decorators = [
{ type: Injectable }
];
/** @nocollapse */
WindowRefService.ctorParameters = () => [
{ type: undefined, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }
];
if (false) {
/**
* @type {?}
* @private
*/
WindowRefService.prototype.isBrowser;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93cmVmLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9jYi10b3VyLWd1aWRlLyIsInNvdXJjZXMiOlsibGliL3dpbmRvd3JlZi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFFcEQsU0FBUyxTQUFTO0lBQ2QsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQzs7OztBQUVELFNBQVMsYUFBYTtJQUNsQixPQUFPO1FBQ0gsVUFBVSxFQUFFLENBQUM7UUFDYixXQUFXLEVBQUUsQ0FBQztRQUNkLE9BQU8sRUFBRSxDQUFDO1FBQ1YsT0FBTyxFQUFFLENBQUM7UUFDVixXQUFXLEVBQUUsQ0FBQztRQUNkLFdBQVcsRUFBRSxDQUFDO1FBQ2QsTUFBTTs7O1FBQUUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFBO1FBQ2hCLFFBQVE7OztRQUFFLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQTtRQUNsQixnQkFBZ0I7OztRQUFFLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQTtRQUMxQixtQkFBbUI7OztRQUFFLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQTtLQUNoQyxDQUFBO0FBQ0wsQ0FBQztBQUdELE1BQU0sT0FBTyxnQkFBZ0I7Ozs7SUFXekIsWUFBaUMsVUFBVTtRQVYxQixjQUFTLEdBQVksS0FBSyxDQUFDO1FBV3hDLElBQUksQ0FBQyxTQUFTLEdBQUcsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkQsQ0FBQzs7OztJQVZELElBQUksWUFBWTtRQUNaLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNoQixPQUFPLFNBQVMsRUFBRSxDQUFDO1NBQ3RCO2FBQU07WUFDSCxPQUFPLGFBQWEsRUFBRSxDQUFDO1NBQzFCO0lBQ0wsQ0FBQzs7O1lBVkosVUFBVTs7Ozs0Q0FZTSxNQUFNLFNBQUMsV0FBVzs7Ozs7OztJQVYvQixxQ0FBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIFBMQVRGT1JNX0lEIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuXG5mdW5jdGlvbiBnZXRXaW5kb3coKTogYW55IHtcbiAgICByZXR1cm4gd2luZG93O1xufVxuXG5mdW5jdGlvbiBnZXRNb2NrV2luZG93KCk6IGFueSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaW5uZXJXaWR0aDogMCxcbiAgICAgICAgaW5uZXJIZWlnaHQ6IDAsXG4gICAgICAgIHNjcm9sbFk6IDAsXG4gICAgICAgIHNjcm9sbFg6IDAsXG4gICAgICAgIHBhZ2VZT2Zmc2V0OiAwLFxuICAgICAgICBwYWdlWE9mZnNldDogMCxcbiAgICAgICAgc2Nyb2xsOiAoKSA9PiB7fSxcbiAgICAgICAgc2Nyb2xsVG86ICgpID0+IHt9LFxuICAgICAgICBhZGRFdmVudExpc3RlbmVyOiAoKSA9PiB7fSxcbiAgICAgICAgcmVtb3ZlRXZlbnRMaXN0ZW5lcjogKCkgPT4ge30sXG4gICAgfVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgV2luZG93UmVmU2VydmljZSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBpc0Jyb3dzZXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGdldCBuYXRpdmVXaW5kb3coKTogYW55IHtcbiAgICAgICAgaWYgKHRoaXMuaXNCcm93c2VyKSB7XG4gICAgICAgICAgICByZXR1cm4gZ2V0V2luZG93KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gZ2V0TW9ja1dpbmRvdygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZCkge1xuICAgICAgICB0aGlzLmlzQnJvd3NlciA9IGlzUGxhdGZvcm1Ccm93c2VyKHBsYXRmb3JtSWQpO1xuICAgIH1cbn1cbiJdfQ==