@ng-toolkit/universal
Version:
Adds Angular Universal support for any Angular CLI project
66 lines • 4.77 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: ngt-universal/document.service.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Injectable, Inject, PLATFORM_ID } from '@angular/core';
import { isPlatformBrowser } from '@angular/common';
export class DocumentService {
/**
* @param {?} platformId
*/
constructor(platformId) {
if (!isPlatformBrowser(platformId)) {
this._document = (/** @type {?} */ ((/** @type {?} */ ({
getElementById: (/**
* @param {?} id
* @return {?}
*/
(id) => new HTMLElement()),
getElementsByClassName: (/**
* @param {?} className
* @return {?}
*/
(className) => new HTMLCollection()),
getElementsByName: (/**
* @param {?} name
* @return {?}
*/
(name) => new NodeList()),
getElementsByTagName: (/**
* @param {?} name
* @return {?}
*/
(name) => new NodeList())
}))));
}
else {
console.log('in browser, assigning document');
// this._document = document;
this._document = (/** @type {?} */ ({}));
}
}
/**
* @return {?}
*/
get nativeDocument() {
console.log('get native document');
console.log(this._document);
return this._document;
}
}
DocumentService.decorators = [
{ type: Injectable }
];
/** @nocollapse */
DocumentService.ctorParameters = () => [
{ type: undefined, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }
];
if (false) {
/**
* @type {?}
* @private
*/
DocumentService.prototype._document;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZy10b29sa2l0L3VuaXZlcnNhbC8iLCJzb3VyY2VzIjpbIm5ndC11bml2ZXJzYWwvZG9jdW1lbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUdwRCxNQUFNLE9BQU8sZUFBZTs7OztJQUV4QixZQUFpQyxVQUFlO1FBQzVDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLG1CQUFBLG1CQUFVO2dCQUN2QixjQUFjOzs7O2dCQUFFLENBQUMsRUFBVSxFQUFFLEVBQUUsQ0FBQyxJQUFJLFdBQVcsRUFBRSxDQUFBO2dCQUNqRCxzQkFBc0I7Ozs7Z0JBQUUsQ0FBQyxTQUFpQixFQUFFLEVBQUUsQ0FBQyxJQUFJLGNBQWMsRUFBRSxDQUFBO2dCQUNuRSxpQkFBaUI7Ozs7Z0JBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLElBQUksUUFBUSxFQUFFLENBQUE7Z0JBQ25ELG9CQUFvQjs7OztnQkFBRSxDQUFDLElBQVksRUFBRSxFQUFFLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBQTthQUN6RCxFQUFBLEVBQVksQ0FBQztTQUNqQjthQUFNO1lBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO1lBQzlDLDZCQUE2QjtZQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLG1CQUFBLEVBQUUsRUFBWSxDQUFDO1NBQ25DO0lBQ0wsQ0FBQzs7OztJQUVELElBQUksY0FBYztRQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNuQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQzs7O1lBdEJKLFVBQVU7Ozs7NENBR00sTUFBTSxTQUFDLFdBQVc7Ozs7Ozs7SUFEL0Isb0NBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0LCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRG9jdW1lbnRTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9kb2N1bWVudDogRG9jdW1lbnQ7XG4gICAgY29uc3RydWN0b3IoQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogYW55KSB7XG4gICAgICAgIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIocGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIHRoaXMuX2RvY3VtZW50ID0gPHVua25vd24+IHtcbiAgICAgICAgICAgICAgICBnZXRFbGVtZW50QnlJZDogKGlkOiBzdHJpbmcpID0+IG5ldyBIVE1MRWxlbWVudCgpLFxuICAgICAgICAgICAgICAgIGdldEVsZW1lbnRzQnlDbGFzc05hbWU6IChjbGFzc05hbWU6IHN0cmluZykgPT4gbmV3IEhUTUxDb2xsZWN0aW9uKCksXG4gICAgICAgICAgICAgICAgZ2V0RWxlbWVudHNCeU5hbWU6IChuYW1lOiBzdHJpbmcpID0+IG5ldyBOb2RlTGlzdCgpLFxuICAgICAgICAgICAgICAgIGdldEVsZW1lbnRzQnlUYWdOYW1lOiAobmFtZTogc3RyaW5nKSA9PiBuZXcgTm9kZUxpc3QoKVxuICAgICAgICAgICAgfSBhcyBEb2N1bWVudDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdpbiBicm93c2VyLCBhc3NpZ25pbmcgZG9jdW1lbnQnKTtcbiAgICAgICAgICAgIC8vIHRoaXMuX2RvY3VtZW50ID0gZG9jdW1lbnQ7XG4gICAgICAgICAgICB0aGlzLl9kb2N1bWVudCA9IHt9IGFzIERvY3VtZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZURvY3VtZW50KCk6IERvY3VtZW50IHtcbiAgICAgICAgY29uc29sZS5sb2coJ2dldCBuYXRpdmUgZG9jdW1lbnQnKTtcbiAgICAgICAgY29uc29sZS5sb2codGhpcy5fZG9jdW1lbnQpO1xuICAgICAgICByZXR1cm4gdGhpcy5fZG9jdW1lbnQ7XG4gICAgfVxufVxuIl19