UNPKG

ngx-seo

Version:

`ngx-seo` is a library to help generate and inject proper JSON-LD objects and Meta tags that allow for social sharing into server-side generated Angular applications using Universal.

46 lines 3.83 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { NgModule } from '@angular/core'; import { DOCUMENT } from '@angular/common'; import { BEFORE_APP_SERIALIZED } from '@angular/platform-server'; import { JsonLdService } from './json-ld.service'; /** * @param {?} doc * @param {?} jsonLdService * @return {?} */ export function serializeJsonLdFactory(doc, jsonLdService) { /** @type {?} */ var serializeAndInject = (/** * @return {?} */ function () { /** @type {?} */ var script = doc.createElement('script'); script.setAttribute('type', 'application/ld+json'); script.textContent = jsonLdService.toJson(); doc.head.appendChild(script); }); return serializeAndInject; } var ServerJsonLdModule = /** @class */ (function () { function ServerJsonLdModule() { } ServerJsonLdModule.decorators = [ { type: NgModule, args: [{ providers: [ JsonLdService, { provide: BEFORE_APP_SERIALIZED, useFactory: serializeJsonLdFactory, deps: [DOCUMENT, JsonLdService], multi: true, }, ], },] } ]; return ServerJsonLdModule; }()); export { ServerJsonLdModule }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1sZC5zZXJ2ZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LXNlby8iLCJzb3VyY2VzIjpbImxpYi9qc29uLWxkL2pzb24tbGQuc2VydmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7Ozs7QUFFbEQsTUFBTSxVQUFVLHNCQUFzQixDQUFDLEdBQWEsRUFBRSxhQUE0Qjs7UUFDMUUsa0JBQWtCOzs7SUFBRzs7WUFDbkIsTUFBTSxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO1FBQzFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLHFCQUFxQixDQUFDLENBQUM7UUFDbkQsTUFBTSxDQUFDLFdBQVcsR0FBRyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDNUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDL0IsQ0FBQyxDQUFBO0lBQ0QsT0FBTyxrQkFBa0IsQ0FBQztBQUM1QixDQUFDO0FBRUQ7SUFBQTtJQVdBLENBQUM7O2dCQVhBLFFBQVEsU0FBQztvQkFDUixTQUFTLEVBQUU7d0JBQ1QsYUFBYSxFQUFFOzRCQUNiLE9BQU8sRUFBRSxxQkFBcUI7NEJBQzlCLFVBQVUsRUFBRSxzQkFBc0I7NEJBQ2xDLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUM7NEJBQy9CLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO2lCQUNGOztJQUVELHlCQUFDO0NBQUEsQUFYRCxJQVdDO1NBRFksa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJFRk9SRV9BUFBfU0VSSUFMSVpFRCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLXNlcnZlcic7XG5pbXBvcnQgeyBKc29uTGRTZXJ2aWNlIH0gZnJvbSAnLi9qc29uLWxkLnNlcnZpY2UnO1xuXG5leHBvcnQgZnVuY3Rpb24gc2VyaWFsaXplSnNvbkxkRmFjdG9yeShkb2M6IERvY3VtZW50LCBqc29uTGRTZXJ2aWNlOiBKc29uTGRTZXJ2aWNlKSB7XG4gIGNvbnN0IHNlcmlhbGl6ZUFuZEluamVjdCA9IGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBzY3JpcHQgPSBkb2MuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgc2NyaXB0LnNldEF0dHJpYnV0ZSgndHlwZScsICdhcHBsaWNhdGlvbi9sZCtqc29uJyk7XG4gICAgc2NyaXB0LnRleHRDb250ZW50ID0ganNvbkxkU2VydmljZS50b0pzb24oKTtcbiAgICBkb2MuaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQpO1xuICB9O1xuICByZXR1cm4gc2VyaWFsaXplQW5kSW5qZWN0O1xufVxuXG5ATmdNb2R1bGUoe1xuICBwcm92aWRlcnM6IFtcbiAgICBKc29uTGRTZXJ2aWNlLCB7XG4gICAgICBwcm92aWRlOiBCRUZPUkVfQVBQX1NFUklBTElaRUQsXG4gICAgICB1c2VGYWN0b3J5OiBzZXJpYWxpemVKc29uTGRGYWN0b3J5LFxuICAgICAgZGVwczogW0RPQ1VNRU5ULCBKc29uTGRTZXJ2aWNlXSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNlcnZlckpzb25MZE1vZHVsZSB7XG59XG4iXX0=