{"version":3,"file":"_server-chunk.mjs","sources":[".../third_party/domino/bundled-domino.mjs';\n\nexport function setDomTypes() {\n  // Make all Domino types available in the global env.\n  // NB: Any changes here should also be done in `packages/platform-server/init/src/shims.ts`.\n  Object.assign(globalThis, domino.impl);\n  (globalThis as any)['KeyboardEvent'] = domino.impl.Event;\n}\n\n/**\n * Parses a document string to a Document object.\n */\nexport function parseDocument(html: string, url = '/') {\n  let window = domino.createWindow(html, url);\n  let doc = window.document;\n  return doc;\n}\n\n/**\n * Serializes a document to string.\n */\nexport function serializeDocument(doc: Document): string {\n  return (doc as any).serialize();\n}\n\n/**\n * DOM Adapter for the server platform based on https://github.com/fgnass/domino.\n */\nexport class DominoAdapter extends BrowserDomAdapter {\n  static override makeCurrent() {\n    setDomTypes();\n    setRootDomAdapter(new DominoAdapter());\n  }\n\n  override readonly supportsDOMEvents = false;\n  private static defaultDoc: Document;\n\n  override createHtmlDocument(): Document {\n    return parseDocument('<html><head><title>fakeTitle</title></head><body></body></html>');\n  }\n\n  override getDefaultDocument(): Document {\n    if (!DominoAdapter.defaultDoc) {\n      DominoAdapter.defaultDoc = domino.createDocument();\n    }\n    return DominoAdapter.defaultDoc;\n  }\n\n  override isElementNode(node: any): boolean {\n    return node ? node.nodeType === DominoAdapter.defaultDoc.ELEMENT_NODE : false;\n  }\n  override isShadowRoot(node: any): boolean {\n    return node.shadowRoot == node;\n  }\n\n  /** @deprecated No longer being used in Ivy code. To be removed in version 14. */\n  override getGlobalEventTarget(doc: Document, target: string): EventTarget | null {\n    if (target === 'window') {\n      return doc.defaultView;\n    }\n    if (target === 'document') {\n      return doc;\n    }\n    if (target === 'body') {\n      return doc.body;\n    }\n    return null;\n  }\n\n  override getBaseHref(doc: Document): string {\n    const length = doc.head.children.length;\n\n    // The `<base>` can only be a direct child of `<head>` so we can save some\n    // execution time by looking through them directly instead of querying for it.\n    // See: https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/base\n    // Note that we can't cache the `href` value itself, because this method gets called with a\n    // different document every time which means that in theory the value can be different too.\n    for (let i = 0; i < length; i++) {\n      const child = doc.head.children[i];\n\n      // Tag names are always uppercase for HTML nodes.\n      if (child.tagName === 'BASE') {\n        // TODO(alxhub): Need relative path logic from BrowserDomAdapter here?\n        return child.getAttribute('href') || '';\n      }\n    }\n\n    return '';\n  }\n\n  override dispatchEvent(el: Node, evt: any) {\n    el.dispatchEvent(evt);\n\n    // Dispatch the event to the window also.\n    const doc = el.ownerDocument || el;\n    const win = (doc as any).defaultView;\n    if (win) {\n      win.dispatchEvent(evt);\n    }\n  }\n\n  override getUserAgent(): string {\n    return 'Fake user agent';\n  }\n\n  override getCookie(name: string): string {\n    throw new Error('getCookie has not been implemented');\n  }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {InjectionToken} from '@angular/core';\n\n/**\n * Config object passed to initialize the platform.\n *\n * @publicApi\n */\nexport interface PlatformConfig {\n  /**\n   * The initial DOM to use to bootstrap the server application.\n   * @default create a new DOM using Domino\n   */\n  document?: string;\n  /**\n   * The URL for the current application state. This is used for initializing\n   * the platform's location. `protocol`, `hostname`, and `port` will be\n   * overridden if `baseUrl` is set.\n   * @default none\n   */\n  url?: string;\n}\n\n/**\n * The DI token for setting the initial config for the platform.\n *\n * @publicApi\n */\nexport const INITIAL_CONFIG = new InjectionToken<PlatformConfig>('Server.INITIAL_CONFIG');\n\n/**\n * A function that will be executed when calling `renderApplication` or\n * `renderModule` just before current platform state is rendered to string.\n *\n * @publicApi\n */\nexport const BEFORE_APP_SERIALIZED = new InjectionToken<ReadonlyArray<() => void | Promise<void>>>(\n  'Server.RENDER_MODULE_HOOK',\n);\n\nexport const ENABLE_DOM_EMULATION = new InjectionToken<boolean>('ENABLE_DOM_EMULATION');\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {DOCUMENT} from '@angular/common';\nimport {\n  inject,\n  Inject,\n  Injectable,\n  Injector,\n  ɵstartMeasuring as startMeasuring,\n  ɵstopMeasuring as stopMeasuring,\n} from '@angular/core';\n\nimport {serializeDocument} from './domino_adapter';\nimport {ENABLE_DOM_EMULATION} from './tokens';\n\n/**\n * Representation of the current platform state.\n *\n * @publicApi\n */\n@Injectable()\nexport class PlatformState {\n  /* @internal */\n  _enableDomEmulation = enableDomEmulation(inject(Injector));\n\n  constructor(@Inject(DOCUMENT) private _doc: any) {}\n\n  /**\n   * Renders the current state of the platform to string.\n   */\n  renderToString(): string {\n    if (ngDevMode && !this._enableDomEmulation && !window?.document) {\n      throw new Error('Disabled DOM emulation should only run in browser environments');\n    }\n\n    const measuringLabel = 'renderToString';\n    startMeasuring(measuringLabel);\n    const rendered = this._enableDomEmulation\n      ? serializeDocument(this._doc)\n      : // In the case we run/test the platform-server in a browser environment\n        this._doc.documentElement.outerHTML;\n    stopMeasuring(measuringLabel);\n    return rendered;\n  }\n\n  /**\n   * Returns the current DOM state.\n   */\n  getDocument(): any {\n    return this._doc;\n  }\n}\n\nexport function enableDomEmulation(injector: Injector): boolean {\n  return injector.get(ENABLE_DOM_EMULATION, true);\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {PlatformLocation, XhrFactory} from '@angular/common';\nimport {\n  HttpEvent,\n  HttpHandlerFn,\n  HttpRequest,\n  ɵHTTP_ROOT_INTERCEPTOR_FNS as HTTP_ROOT_INTERCEPTOR_FNS,\n} from '@angular/common/http';\nimport {inject, Injectable, Provider} from '@angular/core';\nimport {Observable} from 'rxjs';\n\n@Injectable()\nexport class ServerXhr implements XhrFactory {\n  private xhrImpl: typeof import('xhr2') | undefined;\n\n  // The `xhr2` dependency has a side-effect of accessing and modifying a\n  // global scope. Loading `xhr2` dynamically allows us to delay the loading\n  // and start the process once the global scope is established by the underlying\n  // server platform (via shims, etc).\n  private async ɵloadImpl(): Promise<void> {\n    if (!this.xhrImpl) {\n      const {default: xhr} = await import('xhr2');\n      this.xhrImpl = xhr;\n    }\n  }\n\n  build(): XMLHttpRequest {\n    const impl = this.xhrImpl;\n    if (!impl) {\n      throw new Error('Unexpected state in ServerXhr: XHR implementation is not loaded.');\n    }\n\n    return new impl.XMLHttpRequest();\n  }\n}\n\nfunction relativeUrlsTransformerInterceptorFn(\n  request: HttpRequest<unknown>,\n  next: HttpHandlerFn,\n): Observable<HttpEvent<unknown>> {\n  const platformLocation = inject(PlatformLocation);\n  const {href, protocol, hostname, port} = platformLocation;\n  if (!protocol.startsWith('http')) {\n    return next(request);\n  }\n\n  let urlPrefix = `${protocol}//${hostname}`;\n  if (port) {\n    urlPrefix += `:${port}`;\n  }\n\n  const baseHref = platformLocation.getBaseHrefFromDOM() || href;\n  const baseUrl = new URL(baseHref, urlPrefix);\n  const newUrl = new URL(request.url, baseUrl).toString();\n\n  return next(request.clone({url: newUrl}));\n}\n\nexport const SERVER_HTTP_PROVIDERS: Provider[] = [\n  {provide: XhrFactory, useClass: ServerXhr},\n  {\n    provide: HTTP_ROOT_INTERCEPTOR_FNS,\n    useValue: relativeUrlsTransformerInterceptorFn,\n    multi: true,\n  },\n];\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n  DOCUMENT,\n  LocationChangeEvent,\n  LocationChangeListener,\n  PlatformLocation,\n  ɵgetDOM as getDOM,\n} from '@angular/common';\nimport {inject, Injectable, ɵWritable as Writable} from '@angular/core';\nimport {Subject} from 'rxjs';\n\nimport {INITIAL_CONFIG} from './tokens';\n\nfunction parseUrl(\n  urlStr: string,\n  origin: string,\n): {\n  hostname: string;\n  protocol: string;\n  port: string;\n  pathname: string;\n  search: string;\n  hash: string;\n  href: string;\n} {\n  const {hostname, protocol, port, pathname, search, hash, href} = new URL(urlStr, origin);\n\n  return {\n    hostname,\n    href,\n    protocol,\n    port,\n    pathname,\n    search,\n    hash,\n  };\n}\n\n/**\n * Server-side implementation of URL state. Implements `pathname`, `search`, and `hash`\n * but not the state stack.\n */\n@Injectable()\nexport class ServerPlatformLocation implements PlatformLocation {\n  public readonly href: string = '/';\n  public readonly hostname: string = '/';\n  public readonly protocol: string = '/';\n  public readonly port: string = '/';\n  public readonly pathname: string = '/';\n  public readonly search: string = '';\n  public readonly hash: string = '';\n  private _hashUpdate = new Subject<LocationChangeEvent>();\n  private _doc = inject(DOCUMENT);\n\n  constructor() {\n    const config = inject(INITIAL_CONFIG, {optional: true});\n    if (!config) {\n      return;\n    }\n    if (config.url) {\n      const url = parseUrl(config.url, this._doc.location.origin);\n      this.protocol = url.protocol;\n      this.hostname = url.hostname;\n      this.port = url.port;\n      this.pathname = url.pathname;\n      this.search = url.search;\n      this.hash = url.hash;\n      this.href = url.href;\n    }\n  }\n\n  getBaseHrefFromDOM(): string {\n    return getDOM().getBaseHref(this._doc)!;\n  }\n\n  onPopState(fn: LocationChangeListener): VoidFunction {\n    // No-op: a state stack is not implemented, so\n    // no events will ever come.\n    return () => {};\n  }\n\n  onHashChange(fn: LocationChangeListener): VoidFunction {\n    const subscription = this._hashUpdate.subscribe(fn);\n    return () => subscription.unsubscribe();\n  }\n\n  get url(): string {\n    return `${this.pathname}${this.search}${this.hash}`;\n  }\n\n  private setHash(value: string, oldUrl: string) {\n    if (this.hash === value) {\n      // Don't fire events if the hash has not changed.\n      return;\n    }\n    (this as Writable<this>).hash = value;\n    const newUrl = this.url;\n    queueMicrotask(() =>\n      this._hashUpdate.next({\n        type: 'hashchange',\n        state: null,\n        oldUrl,\n        newUrl,\n      } as LocationChangeEvent),\n    );\n  }\n\n  replaceState(state: any, title: string, newUrl: string): void {\n    const oldUrl = this.url;\n    const parsedUrl = parseUrl(newUrl, this._doc.location.origin);\n    (this as Writable<this>).pathname = parsedUrl.pathname;\n    (this as Writable<this>).search = parsedUrl.search;\n    (this as Writable<this>).href = parsedUrl.href;\n    (this as Writable<this>).protocol = parsedUrl.protocol;\n    this.setHash(parsedUrl.hash, oldUrl);\n  }\n\n  pushState(state: any, title: string, newUrl: string): void {\n    this.replaceState(state, title, newUrl);\n  }\n\n  forward(): void {\n    throw new Error('Not implemented');\n  }\n\n  back(): void {\n    throw new Error('Not implemented');\n  }\n\n  // History API isn't available on server, therefore return undefined\n  getState(): unknown {\n    return undefined;\n  }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {DOCUMENT, ɵgetDOM as getDOM} from '@angular/common';\nimport {Inject, Injectable, type ListenerOptions} from '@angular/core';\nimport {EventManagerPlugin} from '@angular/platform-browser';\n\n@Injectable()\nexport class ServerEventManagerPlugin extends EventManagerPlugin {\n  constructor(@Inject(DOCUMENT) private doc: any) {\n    super(doc);\n  }\n\n  // Handle all events on the server.\n  override supports(eventName: string) {\n    return true;\n  }\n\n  override addEventListener(\n    element: HTMLElement,\n    eventName: string,\n    handler: Function,\n    options?: ListenerOptions,\n  ): Function {\n    return getDOM().onAndCancel(element, eventName, handler, options);\n  }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {DOCUMENT} from '@angular/common';\nimport {\n  APP_ID,\n  inject,\n  InjectionToken,\n  Injector,\n  Provider,\n  TransferState,\n  ɵstartMeasuring as startMeasuring,\n  ɵstopMeasuring as stopMeasuring,\n} from '@angular/core';\n\nimport {BEFORE_APP_SERIALIZED} from './tokens';\n\n/** Tracks whether the server-side application transfer state has already been serialized. */\nconst TRANSFER_STATE_STATUS = new InjectionToken<{serialized: boolean}>(\n  typeof ngDevMode === 'undefined' || ngDevMode ? 'TRANSFER_STATE_STATUS' : '',\n  {\n    factory: () => ({serialized: false}),\n  },\n);\n\nexport const TRANSFER_STATE_SERIALIZATION_PROVIDERS: Provider[] = [\n  {\n    provide: BEFORE_APP_SERIALIZED,\n    useFactory: serializeTransferStateFactory,\n    multi: true,\n  },\n];\n\n/** TODO: Move this to a utils folder and convert to use SafeValues. */\nexport function createScript(\n  doc: Document,\n  textContent: string,\n  nonce: string | null,\n): HTMLScriptElement {\n  const script = doc.createElement('script');\n  script.textContent = textContent;\n  if (nonce) {\n    script.setAttribute('nonce', nonce);\n  }\n\n  return script;\n}\n\nfunction warnIfStateTransferHappened(injector: Injector): void {\n  const transferStateStatus = injector.get(TRANSFER_STATE_STATUS);\n\n  if (transferStateStatus.serialized) {\n    console.warn(\n      `Angular detected an incompatible configuration, which causes duplicate serialization of the server-side application state.\\n\\n` +\n        `This can happen if the server providers have been provided more than once using different mechanisms. For example:\\n\\n` +\n        `  imports: [ServerModule], // Registers server providers\\n` +\n        `  providers: [provideServerRendering()] // Also registers server providers\\n\\n` +\n        `To fix this, ensure that the \\`provideServerRendering()\\` function is the only provider used and remove the other(s).`,\n    );\n  }\n\n  transferStateStatus.serialized = true;\n}\n\nfunction serializeTransferStateFactory() {\n  const doc = inject(DOCUMENT);\n  const appId = inject(APP_ID);\n  const transferStore = inject(TransferState);\n  const injector = inject(Injector);\n\n  return () => {\n    const measuringLabel = 'serializeTransferStateFactory';\n    startMeasuring(measuringLabel);\n    // The `.toJSON` here causes the `onSerialize` callbacks to be called.\n    // These callbacks can be used to provide the value for a given key.\n    const content = transferStore.toJson();\n\n    if (transferStore.isEmpty) {\n      // The state is empty, nothing to transfer,\n      // avoid creating an extra `<script>` tag in this case.\n      return;\n    }\n\n    if (typeof ngDevMode !== 'undefined' && ngDevMode) {\n      warnIfStateTransferHappened(injector);\n    }\n\n    const script = createScript(\n      doc,\n      content,\n      /**\n       * `nonce` is not required for 'application/json'\n       * See: https://html.spec.whatwg.org/multipage/scripting.html#attr-script-type\n       */\n      null,\n    );\n    script.id = appId + '-state';\n    script.setAttribute('type', 'application/json');\n\n    // It is intentional that we add the script at the very bottom. Angular CLI script tags for\n    // bundles are always `type=\"module\"`. These are deferred by default and cause the\n    // transfer data to be queried only after the browser has finished parsing the DOM.\n    doc.body.appendChild(script);\n    stopMeasuring(measuringLabel);\n  };\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n  DOCUMENT,\n  PlatformLocation,\n  ViewportScroller,\n  ɵgetDOM as getDOM,\n  ɵNullViewportScroller as NullViewportScroller,\n  ɵPLATFORM_SERVER_ID as PLATFORM_SERVER_ID,\n} from '@angular/common';\nimport {\n  createPlatformFactory,\n  Injector,\n  NgModule,\n  PLATFORM_ID,\n  PLATFORM_INITIALIZER,\n  platformCore,\n  PlatformRef,\n  Provider,\n  Testability,\n  ɵsetDocument,\n  ɵTESTABILITY as TESTABILITY,\n  inject,\n  StaticProvider,\n} from '@angular/core';\nimport {\n  BrowserModule,\n  EVENT_MANAGER_PLUGINS,\n  ɵBrowserDomAdapter as BrowserDomAdapter,\n} from '@angular/platform-browser';\n\nimport {DominoAdapter, parseDocument} from './domino_adapter';\nimport {SERVER_HTTP_PROVIDERS} from './http';\nimport {ServerPlatformLocation} from './location';\nimport {enableDomEmulation, PlatformState} from './platform_state';\nimport {ServerEventManagerPlugin} from './server_events';\nimport {INITIAL_CONFIG, PlatformConfig} from './tokens';\nimport {TRANSFER_STATE_SERIALIZATION_PROVIDERS} from './transfer_state';\n\nexport const INTERNAL_SERVER_PLATFORM_PROVIDERS: StaticProvider[] = [\n  {provide: DOCUMENT, useFactory: _document},\n  {provide: PLATFORM_ID, useValue: PLATFORM_SERVER_ID},\n  {provide: PLATFORM_INITIALIZER, useFactory: initDominoAdapter, multi: true},\n  {\n    provide: PlatformLocation,\n    useClass: ServerPlatformLocation,\n    deps: [],\n  },\n  {provide: PlatformState, deps: [DOCUMENT]},\n];\n\nfunction initDominoAdapter() {\n  const injector = inject(Injector);\n  const _enableDomEmulation = enableDomEmulation(injector);\n  return () => {\n    if (_enableDomEmulation) {\n      DominoAdapter.makeCurrent();\n    } else {\n      BrowserDomAdapter.makeCurrent();\n    }\n  };\n}\n\nexport const SERVER_RENDER_PROVIDERS: Provider[] = [\n  {provide: EVENT_MANAGER_PLUGINS, multi: true, useClass: ServerEventManagerPlugin},\n];\n\nexport const PLATFORM_SERVER_PROVIDERS: Provider[] = [\n  TRANSFER_STATE_SERIALIZATION_PROVIDERS,\n  SERVER_RENDER_PROVIDERS,\n  SERVER_HTTP_PROVIDERS,\n  {provide: Testability, useValue: null}, // Keep for backwards-compatibility.\n  {provide: TESTABILITY, useValue: null},\n  {provide: ViewportScroller, useClass: NullViewportScroller},\n];\n\n/**\n * The ng module for the server.\n *\n * @publicApi\n */\n@NgModule({\n  exports: [BrowserModule],\n  providers: PLATFORM_SERVER_PROVIDERS,\n})\nexport class ServerModule {}\n\nfunction _document() {\n  const injector = inject(Injector);\n  const config: PlatformConfig | null = injector.get(INITIAL_CONFIG, null);\n  const _enableDomEmulation = enableDomEmulation(injector);\n  let document: Document;\n  if (config && config.document) {\n    document =\n      typeof config.document === 'string'\n        ? _enableDomEmulation\n          ? parseDocument(config.document, config.url)\n          : window.document\n        : config.document;\n  } else {\n    document = getDOM().createHtmlDocument();\n  }\n  // Tell ivy about the global document\n  ɵsetDocument(document);\n  return document;\n}\n\n/**\n * Creates a server-side instance of an Angular platform.\n *\n * This platform should be used when performing server-side rendering of an Angular application.\n * Standalone applications can be bootstrapped on the server using the `bootstrapApplication`\n * function from `@angular/platform-browser`. When using `bootstrapApplication`, the `platformServer`\n * should be created first and passed to the bootstrap function using the `BootstrapContext`.\n *\n * @publicApi\n */\nexport function platformServer(extraProviders?: StaticProvider[] | undefined): PlatformRef {\n  const noServerModeSet = typeof ngServerMode === 'undefined';\n  if (noServerModeSet) {\n    globalThis['ngServerMode'] = true;\n  }\n\n  const platform = createPlatformFactory(\n    platformCore,\n    'server',\n    INTERNAL_SERVER_PLATFORM_PROVIDERS,\n  )(extraProviders);\n\n  if (noServerModeSet) {\n    platform.onDestroy(() => {\n      globalThis['ngServerMode'] = undefined;\n    });\n  }\n\n  return platform;\n}\n"],"names":["setDomTypes","Object","assign","globalThis","domino","impl","Event","parseDocument","html","url","window","createWindow","doc","document","serializeDocument","serialize","DominoAdapter","BrowserDomAdapter","makeCurrent","setRootDomAdapter","supportsDOMEvents","defaultDoc","createHtmlDocument","getDefaultDocument","createDocument","isElementNode","node","nodeType","ELEMENT_NODE","isShadowRoot","shadowRoot","getGlobalEventTarget","target","defaultView","body","getBaseHref","length","head","children","i","child","tagName","getAttribute","dispatchEvent","el","evt","ownerDocument","win","getUserAgent","getCookie","name","Error","INITIAL_CONFIG","InjectionToken","BEFORE_APP_SERIALIZED","ENABLE_DOM_EMULATION","PlatformState","_doc","_enableDomEmulation","enableDomEmulation","inject","Injector","constructor","renderToString","ngDevMode","measuringLabel","startMeasuring","rendered","documentElement","outerHTML","stopMeasuring","getDocument","ɵfac","i0","ɵɵngDeclareFactory","minVersion","version","ngImport","type","DOCUMENT","ɵɵFactoryTarget","Injectable","decorators","Inject","injector","get","ServerXhr","xhrImpl","ɵloadImpl","default","xhr","build","XMLHttpRequest","deps","relativeUrlsTransformerInterceptorFn","request","next","platformLocation","PlatformLocation","href","protocol","hostname","port","startsWith","urlPrefix","baseHref","getBaseHrefFromDOM","baseUrl","URL","newUrl","toString","clone","SERVER_HTTP_PROVIDERS","provide","XhrFactory","useClass","HTTP_ROOT_INTERCEPTOR_FNS","useValue","multi","parseUrl","urlStr","origin","pathname","search","hash","ServerPlatformLocation","_hashUpdate","Subject","config","optional","location","getDOM","onPopState","fn","onHashChange","subscription","subscribe","unsubscribe","setHash","value","oldUrl","queueMicrotask","state","replaceState","title","parsedUrl","pushState","forward","back","getState","undefined","ServerEventManagerPlugin","EventManagerPlugin","supports","eventName","addEventListener","element","handler","options","onAndCancel","TRANSFER_STATE_STATUS","factory","serialized","TRANSFER_STATE_SERIALIZATION_PROVIDERS","useFactory","serializeTransferStateFactory","createScript","textContent","nonce","script","createElement","setAttribute","warnIfStateTransferHappened","transferStateStatus","console","warn","appId","APP_ID","transferStore","TransferState","content","toJson","isEmpty","id","appendChild","INTERNAL_SERVER_PLATFORM_PROVIDERS","_document","PLATFORM_ID","PLATFORM_SERVER_ID","PLATFORM_INITIALIZER","initDominoAdapter","SERVER_RENDER_PROVIDERS","EVENT_MANAGER_PLUGINS","PLATFORM_SERVER_PROVIDERS","Testability","TESTABILITY","ViewportScroller","NullViewportScroller","ServerModule","NgModule","ɵmod","ɵɵngDeclareNgModule","BrowserModule","providers","imports","args","exports","ɵsetDocument","platformServer","extraProviders","noServerModeSet","ngServerMode","platform","createPlatformFactory","platformCore","onDestroy"],"mappings":"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"}