@angular/platform-browser 16.0.0-next.5 → 16.0.0-next.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,13 +1,14 @@
1
1
  /**
2
- * @license Angular v16.0.0-next.5
2
+ * @license Angular v16.0.0-next.7
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
6
6
 
7
7
  import * as i0 from '@angular/core';
8
- import { ɵglobal, Injectable, InjectionToken, Inject, APP_ID, CSP_NONCE, PLATFORM_ID, Optional, ViewEncapsulation, RendererStyleFlags2, ɵinternalCreateApplication, ErrorHandler, ɵsetDocument, PLATFORM_INITIALIZER, createPlatformFactory, platformCore, ɵTESTABILITY_GETTER, ɵTESTABILITY, Testability, NgZone, TestabilityRegistry, ɵINJECTOR_SCOPE, RendererFactory2, ApplicationModule, NgModule, SkipSelf, ɵɵinject, ApplicationRef, ɵConsole, forwardRef, ɵXSS_SECURITY_URL, SecurityContext, ɵallowSanitizationBypassAndThrow, ɵunwrapSafeValue, ɵ_sanitizeUrl, ɵ_sanitizeHtml, ɵbypassSanitizationTrustHtml, ɵbypassSanitizationTrustStyle, ɵbypassSanitizationTrustScript, ɵbypassSanitizationTrustUrl, ɵbypassSanitizationTrustResourceUrl, Injector, Version, makeStateKey as makeStateKey$1, TransferState as TransferState$1 } from '@angular/core';
8
+ import { ɵglobal, Injectable, InjectionToken, Inject, APP_ID, CSP_NONCE, PLATFORM_ID, Optional, ViewEncapsulation, RendererStyleFlags2, ɵinternalCreateApplication, ErrorHandler, ɵsetDocument, PLATFORM_INITIALIZER, createPlatformFactory, platformCore, ɵTESTABILITY_GETTER, ɵTESTABILITY, Testability, NgZone, TestabilityRegistry, ɵINJECTOR_SCOPE, RendererFactory2, ApplicationModule, NgModule, SkipSelf, ɵɵinject, ApplicationRef, ɵConsole, forwardRef, ɵXSS_SECURITY_URL, SecurityContext, ɵallowSanitizationBypassAndThrow, ɵunwrapSafeValue, ɵ_sanitizeUrl, ɵ_sanitizeHtml, ɵbypassSanitizationTrustHtml, ɵbypassSanitizationTrustStyle, ɵbypassSanitizationTrustScript, ɵbypassSanitizationTrustUrl, ɵbypassSanitizationTrustResourceUrl, Injector, makeEnvironmentProviders, ɵwithDomHydration, Version, makeStateKey as makeStateKey$1, TransferState as TransferState$1 } from '@angular/core';
9
9
  import { ɵDomAdapter, ɵsetRootDomAdapter, ɵparseCookieValue, ɵgetDOM, isPlatformServer, DOCUMENT, ɵPLATFORM_BROWSER_ID, XhrFactory, CommonModule } from '@angular/common';
10
10
  export { ɵgetDOM } from '@angular/common';
11
+ import { ɵwithHttpTransferCache } from '@angular/common/http';
11
12
 
12
13
  /**
13
14
  * Provides DOM operations in any browser environment.
@@ -162,10 +163,10 @@ class BrowserXhr {
162
163
  build() {
163
164
  return new XMLHttpRequest();
164
165
  }
165
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserXhr, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
166
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserXhr }); }
166
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: BrowserXhr, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
167
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: BrowserXhr }); }
167
168
  }
168
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserXhr, decorators: [{
169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: BrowserXhr, decorators: [{
169
170
  type: Injectable
170
171
  }] });
171
172
 
@@ -206,20 +207,6 @@ class EventManager {
206
207
  const plugin = this._findPluginFor(eventName);
207
208
  return plugin.addEventListener(element, eventName, handler);
208
209
  }
209
- /**
210
- * Registers a global handler for an event in a target view.
211
- *
212
- * @param target A target for global event notifications. One of "window", "document", or "body".
213
- * @param eventName The name of the event to listen for.
214
- * @param handler A function to call when the notification occurs. Receives the
215
- * event object as an argument.
216
- * @returns A callback function that can be used to remove the handler.
217
- * @deprecated No longer being used in Ivy code. To be removed in version 14.
218
- */
219
- addGlobalEventListener(target, eventName, handler) {
220
- const plugin = this._findPluginFor(eventName);
221
- return plugin.addGlobalEventListener(target, eventName, handler);
222
- }
223
210
  /**
224
211
  * Retrieves the compilation zone in which event listeners are registered.
225
212
  */
@@ -242,10 +229,10 @@ class EventManager {
242
229
  }
243
230
  throw new Error(`No event manager plugin found for event ${eventName}`);
244
231
  }
245
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: EventManager, deps: [{ token: EVENT_MANAGER_PLUGINS }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }
246
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: EventManager }); }
232
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: EventManager, deps: [{ token: EVENT_MANAGER_PLUGINS }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }
233
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: EventManager }); }
247
234
  }
248
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: EventManager, decorators: [{
235
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: EventManager, decorators: [{
249
236
  type: Injectable
250
237
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
251
238
  type: Inject,
@@ -255,13 +242,6 @@ class EventManagerPlugin {
255
242
  constructor(_doc) {
256
243
  this._doc = _doc;
257
244
  }
258
- addGlobalEventListener(element, eventName, handler) {
259
- const target = ɵgetDOM().getGlobalEventTarget(this._doc, element);
260
- if (!target) {
261
- throw new Error(`Unsupported event target ${target} for event ${eventName}`);
262
- }
263
- return this.addEventListener(target, eventName, handler);
264
- }
265
245
  }
266
246
 
267
247
  /** The style elements attribute name used to set value of `APP_ID` token. */
@@ -394,10 +374,10 @@ class SharedStylesHost {
394
374
  // Re-add the head element back since this is the default host.
395
375
  hostNodes.add(this.doc.head);
396
376
  }
397
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: SharedStylesHost, deps: [{ token: DOCUMENT }, { token: APP_ID }, { token: CSP_NONCE, optional: true }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
398
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: SharedStylesHost }); }
377
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: SharedStylesHost, deps: [{ token: DOCUMENT }, { token: APP_ID }, { token: CSP_NONCE, optional: true }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
378
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: SharedStylesHost }); }
399
379
  }
400
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: SharedStylesHost, decorators: [{
380
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: SharedStylesHost, decorators: [{
401
381
  type: Injectable
402
382
  }], ctorParameters: function () { return [{ type: Document, decorators: [{
403
383
  type: Inject,
@@ -451,42 +431,29 @@ function shimHostAttribute(componentShortId) {
451
431
  function shimStylesContent(compId, styles) {
452
432
  return styles.map(s => s.replace(COMPONENT_REGEX, compId));
453
433
  }
454
- function decoratePreventDefault(eventHandler) {
455
- // `DebugNode.triggerEventHandler` needs to know if the listener was created with
456
- // decoratePreventDefault or is a listener added outside the Angular context so it can handle the
457
- // two differently. In the first case, the special '__ngUnwrap__' token is passed to the unwrap
458
- // the listener (see below).
459
- return (event) => {
460
- // Ivy uses '__ngUnwrap__' as a special token that allows us to unwrap the function
461
- // so that it can be invoked programmatically by `DebugNode.triggerEventHandler`. The debug_node
462
- // can inspect the listener toString contents for the existence of this special token. Because
463
- // the token is a string literal, it is ensured to not be modified by compiled code.
464
- if (event === '__ngUnwrap__') {
465
- return eventHandler;
466
- }
467
- const allowDefaultBehavior = eventHandler(event);
468
- if (allowDefaultBehavior === false) {
469
- // TODO(tbosch): move preventDefault into event plugins...
470
- event.preventDefault();
471
- event.returnValue = false;
472
- }
473
- return undefined;
474
- };
475
- }
476
434
  class DomRendererFactory2 {
477
- constructor(eventManager, sharedStylesHost, appId, removeStylesOnCompDestory, nonce) {
435
+ constructor(eventManager, sharedStylesHost, appId, removeStylesOnCompDestory, doc, platformId, ngZone, nonce = null) {
478
436
  this.eventManager = eventManager;
479
437
  this.sharedStylesHost = sharedStylesHost;
480
438
  this.appId = appId;
481
439
  this.removeStylesOnCompDestory = removeStylesOnCompDestory;
440
+ this.doc = doc;
441
+ this.platformId = platformId;
442
+ this.ngZone = ngZone;
482
443
  this.nonce = nonce;
483
444
  this.rendererByCompId = new Map();
484
- this.defaultRenderer = new DefaultDomRenderer2(eventManager);
445
+ this.platformIsServer = isPlatformServer(platformId);
446
+ this.defaultRenderer =
447
+ new DefaultDomRenderer2(eventManager, doc, ngZone, this.platformIsServer);
485
448
  }
486
449
  createRenderer(element, type) {
487
450
  if (!element || !type) {
488
451
  return this.defaultRenderer;
489
452
  }
453
+ if (this.platformIsServer && type.encapsulation === ViewEncapsulation.ShadowDom) {
454
+ // Domino does not support shadow DOM.
455
+ type = { ...type, encapsulation: ViewEncapsulation.Emulated };
456
+ }
490
457
  const renderer = this.getOrCreateRenderer(element, type);
491
458
  // Renderers have different logic due to different encapsulation behaviours.
492
459
  // Ex: for emulated, an attribute is added to the element.
@@ -502,17 +469,20 @@ class DomRendererFactory2 {
502
469
  const rendererByCompId = this.rendererByCompId;
503
470
  let renderer = rendererByCompId.get(type.id);
504
471
  if (!renderer) {
472
+ const doc = this.doc;
473
+ const ngZone = this.ngZone;
505
474
  const eventManager = this.eventManager;
506
475
  const sharedStylesHost = this.sharedStylesHost;
507
476
  const removeStylesOnCompDestory = this.removeStylesOnCompDestory;
477
+ const platformIsServer = this.platformIsServer;
508
478
  switch (type.encapsulation) {
509
479
  case ViewEncapsulation.Emulated:
510
- renderer = new EmulatedEncapsulationDomRenderer2(eventManager, sharedStylesHost, type, this.appId, removeStylesOnCompDestory);
480
+ renderer = new EmulatedEncapsulationDomRenderer2(eventManager, sharedStylesHost, type, this.appId, removeStylesOnCompDestory, doc, ngZone, platformIsServer);
511
481
  break;
512
482
  case ViewEncapsulation.ShadowDom:
513
- return new ShadowDomRenderer(eventManager, sharedStylesHost, element, type, this.nonce);
483
+ return new ShadowDomRenderer(eventManager, sharedStylesHost, element, type, doc, ngZone, this.nonce, platformIsServer);
514
484
  default:
515
- renderer = new NoneEncapsulationDomRenderer(eventManager, sharedStylesHost, type, removeStylesOnCompDestory);
485
+ renderer = new NoneEncapsulationDomRenderer(eventManager, sharedStylesHost, type, removeStylesOnCompDestory, doc, ngZone, platformIsServer);
516
486
  break;
517
487
  }
518
488
  renderer.onDestroy = () => rendererByCompId.delete(type.id);
@@ -523,12 +493,10 @@ class DomRendererFactory2 {
523
493
  ngOnDestroy() {
524
494
  this.rendererByCompId.clear();
525
495
  }
526
- begin() { }
527
- end() { }
528
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomRendererFactory2, deps: [{ token: EventManager }, { token: SharedStylesHost }, { token: APP_ID }, { token: REMOVE_STYLES_ON_COMPONENT_DESTROY }, { token: CSP_NONCE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
529
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomRendererFactory2 }); }
496
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomRendererFactory2, deps: [{ token: EventManager }, { token: SharedStylesHost }, { token: APP_ID }, { token: REMOVE_STYLES_ON_COMPONENT_DESTROY }, { token: DOCUMENT }, { token: PLATFORM_ID }, { token: i0.NgZone }, { token: CSP_NONCE }], target: i0.ɵɵFactoryTarget.Injectable }); }
497
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomRendererFactory2 }); }
530
498
  }
531
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomRendererFactory2, decorators: [{
499
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomRendererFactory2, decorators: [{
532
500
  type: Injectable
533
501
  }], ctorParameters: function () { return [{ type: EventManager }, { type: SharedStylesHost }, { type: undefined, decorators: [{
534
502
  type: Inject,
@@ -536,15 +504,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5",
536
504
  }] }, { type: undefined, decorators: [{
537
505
  type: Inject,
538
506
  args: [REMOVE_STYLES_ON_COMPONENT_DESTROY]
539
- }] }, { type: undefined, decorators: [{
507
+ }] }, { type: Document, decorators: [{
508
+ type: Inject,
509
+ args: [DOCUMENT]
510
+ }] }, { type: Object, decorators: [{
511
+ type: Inject,
512
+ args: [PLATFORM_ID]
513
+ }] }, { type: i0.NgZone }, { type: undefined, decorators: [{
540
514
  type: Inject,
541
515
  args: [CSP_NONCE]
542
- }, {
543
- type: Optional
544
516
  }] }]; } });
545
517
  class DefaultDomRenderer2 {
546
- constructor(eventManager) {
518
+ constructor(eventManager, doc, ngZone, platformIsServer) {
547
519
  this.eventManager = eventManager;
520
+ this.doc = doc;
521
+ this.ngZone = ngZone;
522
+ this.platformIsServer = platformIsServer;
548
523
  this.data = Object.create(null);
549
524
  this.destroyNode = null;
550
525
  }
@@ -560,15 +535,15 @@ class DefaultDomRenderer2 {
560
535
  // Related issues:
561
536
  // https://github.com/angular/angular/issues/44028
562
537
  // https://github.com/angular/angular/issues/44883
563
- return document.createElementNS(NAMESPACE_URIS[namespace] || namespace, name);
538
+ return this.doc.createElementNS(NAMESPACE_URIS[namespace] || namespace, name);
564
539
  }
565
- return document.createElement(name);
540
+ return this.doc.createElement(name);
566
541
  }
567
542
  createComment(value) {
568
- return document.createComment(value);
543
+ return this.doc.createComment(value);
569
544
  }
570
545
  createText(value) {
571
- return document.createTextNode(value);
546
+ return this.doc.createTextNode(value);
572
547
  }
573
548
  appendChild(parent, newChild) {
574
549
  const targetParent = isTemplateNode(parent) ? parent.content : parent;
@@ -586,7 +561,7 @@ class DefaultDomRenderer2 {
586
561
  }
587
562
  }
588
563
  selectRootElement(selectorOrNode, preserveContent) {
589
- let el = typeof selectorOrNode === 'string' ? document.querySelector(selectorOrNode) :
564
+ let el = typeof selectorOrNode === 'string' ? this.doc.querySelector(selectorOrNode) :
590
565
  selectorOrNode;
591
566
  if (!el) {
592
567
  throw new Error(`The selector "${selectorOrNode}" did not match any elements`);
@@ -665,9 +640,38 @@ class DefaultDomRenderer2 {
665
640
  listen(target, event, callback) {
666
641
  (typeof ngDevMode === 'undefined' || ngDevMode) && checkNoSyntheticProp(event, 'listener');
667
642
  if (typeof target === 'string') {
668
- return this.eventManager.addGlobalEventListener(target, event, decoratePreventDefault(callback));
643
+ target = ɵgetDOM().getGlobalEventTarget(this.doc, target);
644
+ if (!target) {
645
+ throw new Error(`Unsupported event target ${target} for event ${event}`);
646
+ }
669
647
  }
670
- return this.eventManager.addEventListener(target, event, decoratePreventDefault(callback));
648
+ return this.eventManager.addEventListener(target, event, this.decoratePreventDefault(callback));
649
+ }
650
+ decoratePreventDefault(eventHandler) {
651
+ // `DebugNode.triggerEventHandler` needs to know if the listener was created with
652
+ // decoratePreventDefault or is a listener added outside the Angular context so it can handle
653
+ // the two differently. In the first case, the special '__ngUnwrap__' token is passed to the
654
+ // unwrap the listener (see below).
655
+ return (event) => {
656
+ // Ivy uses '__ngUnwrap__' as a special token that allows us to unwrap the function
657
+ // so that it can be invoked programmatically by `DebugNode.triggerEventHandler`. The
658
+ // debug_node can inspect the listener toString contents for the existence of this special
659
+ // token. Because the token is a string literal, it is ensured to not be modified by compiled
660
+ // code.
661
+ if (event === '__ngUnwrap__') {
662
+ return eventHandler;
663
+ }
664
+ // Run the event handler inside the ngZone because event handlers are not patched
665
+ // by Zone on the server. This is required only for tests.
666
+ const allowDefaultBehavior = this.platformIsServer ?
667
+ this.ngZone.runGuarded(() => eventHandler(event)) :
668
+ eventHandler(event);
669
+ if (allowDefaultBehavior === false) {
670
+ event.preventDefault();
671
+ event.returnValue = false;
672
+ }
673
+ return undefined;
674
+ };
671
675
  }
672
676
  }
673
677
  const AT_CHARCODE = (() => '@'.charCodeAt(0))();
@@ -682,8 +686,8 @@ function isTemplateNode(node) {
682
686
  return node.tagName === 'TEMPLATE' && node.content !== undefined;
683
687
  }
684
688
  class ShadowDomRenderer extends DefaultDomRenderer2 {
685
- constructor(eventManager, sharedStylesHost, hostEl, component, nonce) {
686
- super(eventManager);
689
+ constructor(eventManager, sharedStylesHost, hostEl, component, doc, ngZone, nonce, platformIsServer) {
690
+ super(eventManager, doc, ngZone, platformIsServer);
687
691
  this.sharedStylesHost = sharedStylesHost;
688
692
  this.hostEl = hostEl;
689
693
  this.shadowRoot = hostEl.attachShadow({ mode: 'open' });
@@ -718,12 +722,12 @@ class ShadowDomRenderer extends DefaultDomRenderer2 {
718
722
  }
719
723
  }
720
724
  class NoneEncapsulationDomRenderer extends DefaultDomRenderer2 {
721
- constructor(eventManager, sharedStylesHost, component, removeStylesOnCompDestory, compId = component.id) {
722
- super(eventManager);
725
+ constructor(eventManager, sharedStylesHost, component, removeStylesOnCompDestory, doc, ngZone, platformIsServer, compId) {
726
+ super(eventManager, doc, ngZone, platformIsServer);
723
727
  this.sharedStylesHost = sharedStylesHost;
724
728
  this.removeStylesOnCompDestory = removeStylesOnCompDestory;
725
729
  this.rendererUsageCount = 0;
726
- this.styles = shimStylesContent(compId, component.styles);
730
+ this.styles = compId ? shimStylesContent(compId, component.styles) : component.styles;
727
731
  }
728
732
  applyStyles() {
729
733
  this.sharedStylesHost.addStyles(this.styles);
@@ -741,9 +745,9 @@ class NoneEncapsulationDomRenderer extends DefaultDomRenderer2 {
741
745
  }
742
746
  }
743
747
  class EmulatedEncapsulationDomRenderer2 extends NoneEncapsulationDomRenderer {
744
- constructor(eventManager, sharedStylesHost, component, appId, removeStylesOnCompDestory) {
748
+ constructor(eventManager, sharedStylesHost, component, appId, removeStylesOnCompDestory, doc, ngZone, platformIsServer) {
745
749
  const compId = appId + '-' + component.id;
746
- super(eventManager, sharedStylesHost, component, removeStylesOnCompDestory, compId);
750
+ super(eventManager, sharedStylesHost, component, removeStylesOnCompDestory, doc, ngZone, platformIsServer, compId);
747
751
  this.contentAttr = shimContentAttribute(compId);
748
752
  this.hostAttr = shimHostAttribute(compId);
749
753
  }
@@ -774,10 +778,10 @@ class DomEventsPlugin extends EventManagerPlugin {
774
778
  removeEventListener(target, eventName, callback) {
775
779
  return target.removeEventListener(eventName, callback);
776
780
  }
777
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomEventsPlugin, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
778
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomEventsPlugin }); }
781
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomEventsPlugin, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
782
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomEventsPlugin }); }
779
783
  }
780
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomEventsPlugin, decorators: [{
784
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomEventsPlugin, decorators: [{
781
785
  type: Injectable
782
786
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
783
787
  type: Inject,
@@ -953,10 +957,10 @@ class KeyEventsPlugin extends EventManagerPlugin {
953
957
  return keyName;
954
958
  }
955
959
  }
956
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: KeyEventsPlugin, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
957
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: KeyEventsPlugin }); }
960
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: KeyEventsPlugin, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
961
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: KeyEventsPlugin }); }
958
962
  }
959
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: KeyEventsPlugin, decorators: [{
963
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: KeyEventsPlugin, decorators: [{
960
964
  type: Injectable
961
965
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
962
966
  type: Inject,
@@ -1163,11 +1167,11 @@ class BrowserModule {
1163
1167
  ],
1164
1168
  };
1165
1169
  }
1166
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserModule, deps: [{ token: BROWSER_MODULE_PROVIDERS_MARKER, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
1167
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserModule, exports: [CommonModule, ApplicationModule] }); }
1168
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserModule, providers: [...BROWSER_MODULE_PROVIDERS, ...TESTABILITY_PROVIDERS], imports: [CommonModule, ApplicationModule] }); }
1170
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: BrowserModule, deps: [{ token: BROWSER_MODULE_PROVIDERS_MARKER, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
1171
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.7", ngImport: i0, type: BrowserModule, exports: [CommonModule, ApplicationModule] }); }
1172
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: BrowserModule, providers: [...BROWSER_MODULE_PROVIDERS, ...TESTABILITY_PROVIDERS], imports: [CommonModule, ApplicationModule] }); }
1169
1173
  }
1170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserModule, decorators: [{
1174
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: BrowserModule, decorators: [{
1171
1175
  type: NgModule,
1172
1176
  args: [{
1173
1177
  providers: [...BROWSER_MODULE_PROVIDERS, ...TESTABILITY_PROVIDERS],
@@ -1337,10 +1341,10 @@ class Meta {
1337
1341
  _getMetaKeyMap(prop) {
1338
1342
  return META_KEYS_MAP[prop] || prop;
1339
1343
  }
1340
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: Meta, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
1341
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: Meta, providedIn: 'root', useFactory: createMeta, deps: [] }); }
1344
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: Meta, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
1345
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: Meta, providedIn: 'root', useFactory: createMeta, deps: [] }); }
1342
1346
  }
1343
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: Meta, decorators: [{
1347
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: Meta, decorators: [{
1344
1348
  type: Injectable,
1345
1349
  args: [{ providedIn: 'root', useFactory: createMeta, deps: [] }]
1346
1350
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -1387,10 +1391,10 @@ class Title {
1387
1391
  setTitle(newTitle) {
1388
1392
  this._doc.title = newTitle || '';
1389
1393
  }
1390
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: Title, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
1391
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: Title, providedIn: 'root', useFactory: createTitle, deps: [] }); }
1394
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: Title, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
1395
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: Title, providedIn: 'root', useFactory: createTitle, deps: [] }); }
1392
1396
  }
1393
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: Title, decorators: [{
1397
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: Title, decorators: [{
1394
1398
  type: Injectable,
1395
1399
  args: [{ providedIn: 'root', useFactory: createTitle, deps: [] }]
1396
1400
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -1505,24 +1509,6 @@ function disableDebugTools() {
1505
1509
  exportNgVar(PROFILER_GLOBAL_NAME, null);
1506
1510
  }
1507
1511
 
1508
- /**
1509
- * NgModule to install on the client side while using the `TransferState` to transfer state from
1510
- * server to client.
1511
- *
1512
- * @publicApi
1513
- * @deprecated no longer needed, you can inject the `TransferState` in an app without providing
1514
- * this module.
1515
- */
1516
- class BrowserTransferStateModule {
1517
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserTransferStateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1518
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserTransferStateModule }); }
1519
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserTransferStateModule }); }
1520
- }
1521
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: BrowserTransferStateModule, decorators: [{
1522
- type: NgModule,
1523
- args: [{}]
1524
- }] });
1525
-
1526
1512
  /**
1527
1513
  * Predicates for use with {@link DebugElement}'s query functions.
1528
1514
  *
@@ -1677,10 +1663,10 @@ class HammerGestureConfig {
1677
1663
  }
1678
1664
  return mc;
1679
1665
  }
1680
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: HammerGestureConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1681
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: HammerGestureConfig }); }
1666
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: HammerGestureConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1667
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: HammerGestureConfig }); }
1682
1668
  }
1683
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: HammerGestureConfig, decorators: [{
1669
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: HammerGestureConfig, decorators: [{
1684
1670
  type: Injectable
1685
1671
  }] });
1686
1672
  /**
@@ -1775,10 +1761,10 @@ class HammerGesturesPlugin extends EventManagerPlugin {
1775
1761
  isCustomEvent(eventName) {
1776
1762
  return this._config.events.indexOf(eventName) > -1;
1777
1763
  }
1778
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: HammerGesturesPlugin, deps: [{ token: DOCUMENT }, { token: HAMMER_GESTURE_CONFIG }, { token: i0.ɵConsole }, { token: HAMMER_LOADER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1779
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: HammerGesturesPlugin }); }
1764
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: HammerGesturesPlugin, deps: [{ token: DOCUMENT }, { token: HAMMER_GESTURE_CONFIG }, { token: i0.ɵConsole }, { token: HAMMER_LOADER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
1765
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: HammerGesturesPlugin }); }
1780
1766
  }
1781
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: HammerGesturesPlugin, decorators: [{
1767
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: HammerGesturesPlugin, decorators: [{
1782
1768
  type: Injectable
1783
1769
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
1784
1770
  type: Inject,
@@ -1804,9 +1790,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5",
1804
1790
  * @publicApi
1805
1791
  */
1806
1792
  class HammerModule {
1807
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: HammerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1808
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.5", ngImport: i0, type: HammerModule }); }
1809
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: HammerModule, providers: [
1793
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: HammerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1794
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.7", ngImport: i0, type: HammerModule }); }
1795
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: HammerModule, providers: [
1810
1796
  {
1811
1797
  provide: EVENT_MANAGER_PLUGINS,
1812
1798
  useClass: HammerGesturesPlugin,
@@ -1816,7 +1802,7 @@ class HammerModule {
1816
1802
  { provide: HAMMER_GESTURE_CONFIG, useClass: HammerGestureConfig, deps: [] },
1817
1803
  ] }); }
1818
1804
  }
1819
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: HammerModule, decorators: [{
1805
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: HammerModule, decorators: [{
1820
1806
  type: NgModule,
1821
1807
  args: [{
1822
1808
  providers: [
@@ -1863,10 +1849,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5",
1863
1849
  * @publicApi
1864
1850
  */
1865
1851
  class DomSanitizer {
1866
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomSanitizer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1867
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomSanitizer, providedIn: 'root', useExisting: i0.forwardRef(function () { return DomSanitizerImpl; }) }); }
1852
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomSanitizer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1853
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomSanitizer, providedIn: 'root', useExisting: i0.forwardRef(function () { return DomSanitizerImpl; }) }); }
1868
1854
  }
1869
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomSanitizer, decorators: [{
1855
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomSanitizer, decorators: [{
1870
1856
  type: Injectable,
1871
1857
  args: [{ providedIn: 'root', useExisting: forwardRef(() => DomSanitizerImpl) }]
1872
1858
  }] });
@@ -1928,10 +1914,10 @@ class DomSanitizerImpl extends DomSanitizer {
1928
1914
  bypassSecurityTrustResourceUrl(value) {
1929
1915
  return ɵbypassSanitizationTrustResourceUrl(value);
1930
1916
  }
1931
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomSanitizerImpl, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
1932
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomSanitizerImpl, providedIn: 'root', useFactory: domSanitizerImplFactory, deps: [{ token: Injector }] }); }
1917
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomSanitizerImpl, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
1918
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomSanitizerImpl, providedIn: 'root', useFactory: domSanitizerImplFactory, deps: [{ token: Injector }] }); }
1933
1919
  }
1934
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: DomSanitizerImpl, decorators: [{
1920
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.7", ngImport: i0, type: DomSanitizerImpl, decorators: [{
1935
1921
  type: Injectable,
1936
1922
  args: [{ providedIn: 'root', useFactory: domSanitizerImplFactory, deps: [Injector] }]
1937
1923
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -1939,6 +1925,89 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5",
1939
1925
  args: [DOCUMENT]
1940
1926
  }] }]; } });
1941
1927
 
1928
+ /**
1929
+ * Helper function to create an object that represents a Hydration feature.
1930
+ */
1931
+ function hydrationFeature(kind, providers = []) {
1932
+ return { ɵkind: kind, ɵproviders: providers };
1933
+ }
1934
+ /**
1935
+ * Disables DOM nodes reuse during hydration. Effectively makes
1936
+ * Angular re-render an application from scratch on the client.
1937
+ *
1938
+ * @publicApi
1939
+ * @developerPreview
1940
+ */
1941
+ function withNoDomReuse() {
1942
+ // This feature has no providers and acts as a flag that turns off
1943
+ // non-destructive hydration (which otherwise is turned on by default).
1944
+ return hydrationFeature(0 /* HydrationFeatureKind.NoDomReuseFeature */);
1945
+ }
1946
+ /**
1947
+ * Disables HTTP transfer cache. Effectively causes HTTP requests to be performed twice: once on the
1948
+ * server and other one on the browser.
1949
+ *
1950
+ * @publicApi
1951
+ * @developerPreview
1952
+ */
1953
+ function withNoHttpTransferCache() {
1954
+ // This feature has no providers and acts as a flag that turns off
1955
+ // HTTP transfer cache (which otherwise is turned on by default).
1956
+ return hydrationFeature(1 /* HydrationFeatureKind.NoHttpTransferCache */);
1957
+ }
1958
+ /**
1959
+ * Sets up providers necessary to enable hydration functionality for the application.
1960
+ * By default, the function enables the recommended set of features for the optimal
1961
+ * performance for most of the applications. You can enable/disable features by
1962
+ * passing special functions (from the `HydrationFeatures` set) as arguments to the
1963
+ * `provideClientHydration` function.
1964
+ *
1965
+ * @usageNotes
1966
+ *
1967
+ * Basic example of how you can enable hydration in your application when
1968
+ * `bootstrapApplication` function is used:
1969
+ * ```
1970
+ * bootstrapApplication(AppComponent, {
1971
+ * providers: [provideClientHydration()]
1972
+ * });
1973
+ * ```
1974
+ *
1975
+ * Alternatively if you are using NgModules, you would add `provideClientHydration`
1976
+ * to your root app module's provider list.
1977
+ * ```
1978
+ * @NgModule({
1979
+ * declarations: [RootCmp],
1980
+ * bootstrap: [RootCmp],
1981
+ * providers: [provideClientHydration()],
1982
+ * })
1983
+ * export class AppModule {}
1984
+ * ```
1985
+ *
1986
+ * @see `withNoDomReuse`
1987
+ * @see `withNoHttpTransferCache`
1988
+ *
1989
+ * @param features Optional features to configure additional router behaviors.
1990
+ * @returns A set of providers to enable hydration.
1991
+ *
1992
+ * @publicApi
1993
+ * @developerPreview
1994
+ */
1995
+ function provideClientHydration(...features) {
1996
+ const providers = [];
1997
+ const featuresKind = new Set();
1998
+ for (const { ɵproviders, ɵkind } of features) {
1999
+ featuresKind.add(ɵkind);
2000
+ if (ɵproviders.length) {
2001
+ providers.push(ɵproviders);
2002
+ }
2003
+ }
2004
+ return makeEnvironmentProviders([
2005
+ (featuresKind.has(0 /* HydrationFeatureKind.NoDomReuseFeature */) ? [] : ɵwithDomHydration()),
2006
+ (featuresKind.has(1 /* HydrationFeatureKind.NoHttpTransferCache */) ? [] : ɵwithHttpTransferCache()),
2007
+ providers,
2008
+ ]);
2009
+ }
2010
+
1942
2011
  /**
1943
2012
  * @module
1944
2013
  * @description
@@ -1947,7 +2016,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5",
1947
2016
  /**
1948
2017
  * @publicApi
1949
2018
  */
1950
- const VERSION = new Version('16.0.0-next.5');
2019
+ const VERSION = new Version('16.0.0-next.7');
1951
2020
 
1952
2021
  // Re-export TransferState to the public API of the `platform-browser` for backwards-compatibility.
1953
2022
  /**
@@ -2002,5 +2071,5 @@ const TransferState = TransferState$1;
2002
2071
  * Generated bundle index. Do not edit.
2003
2072
  */
2004
2073
 
2005
- export { BrowserModule, BrowserTransferStateModule, By, DomSanitizer, EVENT_MANAGER_PLUGINS, EventManager, HAMMER_GESTURE_CONFIG, HAMMER_LOADER, HammerGestureConfig, HammerModule, Meta, REMOVE_STYLES_ON_COMPONENT_DESTROY, Title, TransferState, VERSION, bootstrapApplication, createApplication, disableDebugTools, enableDebugTools, makeStateKey, platformBrowser, provideProtractorTestingSupport, BrowserDomAdapter as ɵBrowserDomAdapter, BrowserGetTestability as ɵBrowserGetTestability, DomEventsPlugin as ɵDomEventsPlugin, DomRendererFactory2 as ɵDomRendererFactory2, DomSanitizerImpl as ɵDomSanitizerImpl, HammerGesturesPlugin as ɵHammerGesturesPlugin, INTERNAL_BROWSER_PLATFORM_PROVIDERS as ɵINTERNAL_BROWSER_PLATFORM_PROVIDERS, KeyEventsPlugin as ɵKeyEventsPlugin, NAMESPACE_URIS as ɵNAMESPACE_URIS, SharedStylesHost as ɵSharedStylesHost, initDomAdapter as ɵinitDomAdapter, shimContentAttribute as ɵshimContentAttribute, shimHostAttribute as ɵshimHostAttribute, shimStylesContent as ɵshimStyles };
2074
+ export { BrowserModule, By, DomSanitizer, EVENT_MANAGER_PLUGINS, EventManager, HAMMER_GESTURE_CONFIG, HAMMER_LOADER, HammerGestureConfig, HammerModule, Meta, REMOVE_STYLES_ON_COMPONENT_DESTROY, Title, TransferState, VERSION, bootstrapApplication, createApplication, disableDebugTools, enableDebugTools, makeStateKey, platformBrowser, provideClientHydration, provideProtractorTestingSupport, withNoDomReuse, withNoHttpTransferCache, BrowserDomAdapter as ɵBrowserDomAdapter, BrowserGetTestability as ɵBrowserGetTestability, DomEventsPlugin as ɵDomEventsPlugin, DomRendererFactory2 as ɵDomRendererFactory2, DomSanitizerImpl as ɵDomSanitizerImpl, HammerGesturesPlugin as ɵHammerGesturesPlugin, INTERNAL_BROWSER_PLATFORM_PROVIDERS as ɵINTERNAL_BROWSER_PLATFORM_PROVIDERS, KeyEventsPlugin as ɵKeyEventsPlugin, SharedStylesHost as ɵSharedStylesHost, initDomAdapter as ɵinitDomAdapter };
2006
2075
  //# sourceMappingURL=platform-browser.mjs.map