@angular/platform-browser 15.2.0-rc.0 → 16.0.0-next.0

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.
Files changed (35) hide show
  1. package/animations/index.d.ts +1 -1
  2. package/esm2020/animations/src/animation_builder.mjs +3 -3
  3. package/esm2020/animations/src/animation_renderer.mjs +3 -3
  4. package/esm2020/animations/src/module.mjs +8 -8
  5. package/esm2020/animations/src/providers.mjs +3 -3
  6. package/esm2020/src/browser/meta.mjs +3 -3
  7. package/esm2020/src/browser/title.mjs +3 -3
  8. package/esm2020/src/browser/transfer_state.mjs +7 -7
  9. package/esm2020/src/browser/xhr.mjs +3 -3
  10. package/esm2020/src/browser.mjs +7 -7
  11. package/esm2020/src/dom/dom_renderer.mjs +106 -53
  12. package/esm2020/src/dom/events/dom_events.mjs +3 -3
  13. package/esm2020/src/dom/events/event_manager.mjs +3 -3
  14. package/esm2020/src/dom/events/hammer_gestures.mjs +10 -10
  15. package/esm2020/src/dom/events/key_events.mjs +3 -3
  16. package/esm2020/src/dom/shared_styles_host.mjs +84 -46
  17. package/esm2020/src/platform-browser.mjs +2 -1
  18. package/esm2020/src/private_export.mjs +2 -2
  19. package/esm2020/src/security/dom_sanitization_service.mjs +6 -6
  20. package/esm2020/src/version.mjs +1 -1
  21. package/esm2020/testing/src/browser.mjs +7 -10
  22. package/fesm2015/animations.mjs +18 -18
  23. package/fesm2015/platform-browser.mjs +237 -144
  24. package/fesm2015/platform-browser.mjs.map +1 -1
  25. package/fesm2015/testing.mjs +7 -19
  26. package/fesm2015/testing.mjs.map +1 -1
  27. package/fesm2020/animations.mjs +18 -18
  28. package/fesm2020/platform-browser.mjs +235 -144
  29. package/fesm2020/platform-browser.mjs.map +1 -1
  30. package/fesm2020/testing.mjs +7 -19
  31. package/fesm2020/testing.mjs.map +1 -1
  32. package/index.d.ts +34 -14
  33. package/package.json +4 -4
  34. package/testing/index.d.ts +1 -1
  35. package/esm2020/testing/src/mock_platform_location_flag.mjs +0 -17
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v15.2.0-rc.0
2
+ * @license Angular v16.0.0-next.0
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -190,9 +190,9 @@ class BrowserXhr {
190
190
  return new XMLHttpRequest();
191
191
  }
192
192
  }
193
- BrowserXhr.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserXhr, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
194
- BrowserXhr.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserXhr });
195
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserXhr, decorators: [{
193
+ BrowserXhr.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserXhr, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
194
+ BrowserXhr.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserXhr });
195
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserXhr, decorators: [{
196
196
  type: Injectable
197
197
  }] });
198
198
 
@@ -268,9 +268,9 @@ class EventManager {
268
268
  throw new Error(`No event manager plugin found for event ${eventName}`);
269
269
  }
270
270
  }
271
- EventManager.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: EventManager, deps: [{ token: EVENT_MANAGER_PLUGINS }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
272
- EventManager.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: EventManager });
273
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: EventManager, decorators: [{
271
+ EventManager.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: EventManager, deps: [{ token: EVENT_MANAGER_PLUGINS }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
272
+ EventManager.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: EventManager });
273
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: EventManager, decorators: [{
274
274
  type: Injectable
275
275
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
276
276
  type: Inject,
@@ -291,76 +291,114 @@ class EventManagerPlugin {
291
291
 
292
292
  class SharedStylesHost {
293
293
  constructor() {
294
- /** @internal */
295
- this._stylesSet = new Set();
294
+ this.usageCount = new Map();
296
295
  }
297
296
  addStyles(styles) {
298
- const additions = new Set();
299
- styles.forEach(style => {
300
- if (!this._stylesSet.has(style)) {
301
- this._stylesSet.add(style);
302
- additions.add(style);
297
+ for (const style of styles) {
298
+ const usageCount = this.changeUsageCount(style, 1);
299
+ if (usageCount === 1) {
300
+ this.onStyleAdded(style);
303
301
  }
304
- });
305
- this.onStylesAdded(additions);
302
+ }
303
+ }
304
+ removeStyles(styles) {
305
+ for (const style of styles) {
306
+ const usageCount = this.changeUsageCount(style, -1);
307
+ if (usageCount === 0) {
308
+ this.onStyleRemoved(style);
309
+ }
310
+ }
306
311
  }
307
- onStylesAdded(additions) { }
312
+ onStyleRemoved(style) { }
313
+ onStyleAdded(style) { }
308
314
  getAllStyles() {
309
- return Array.from(this._stylesSet);
315
+ return this.usageCount.keys();
316
+ }
317
+ changeUsageCount(style, delta) {
318
+ const map = this.usageCount;
319
+ let usage = map.get(style) ?? 0;
320
+ usage += delta;
321
+ if (usage > 0) {
322
+ map.set(style, usage);
323
+ }
324
+ else {
325
+ map.delete(style);
326
+ }
327
+ return usage;
328
+ }
329
+ ngOnDestroy() {
330
+ for (const style of this.getAllStyles()) {
331
+ this.onStyleRemoved(style);
332
+ }
333
+ this.usageCount.clear();
310
334
  }
311
335
  }
312
- SharedStylesHost.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: SharedStylesHost, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
313
- SharedStylesHost.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: SharedStylesHost });
314
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: SharedStylesHost, decorators: [{
336
+ SharedStylesHost.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: SharedStylesHost, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
337
+ SharedStylesHost.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: SharedStylesHost });
338
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: SharedStylesHost, decorators: [{
315
339
  type: Injectable
316
340
  }] });
317
341
  class DomSharedStylesHost extends SharedStylesHost {
318
- constructor(_doc) {
342
+ constructor(doc) {
319
343
  super();
320
- this._doc = _doc;
344
+ this.doc = doc;
321
345
  // Maps all registered host nodes to a list of style nodes that have been added to the host node.
322
- this._hostNodes = new Map();
323
- this._hostNodes.set(_doc.head, []);
346
+ this.styleRef = new Map();
347
+ this.hostNodes = new Set();
348
+ this.resetHostNodes();
324
349
  }
325
- _addStylesToHost(styles, host, styleNodes) {
326
- styles.forEach((style) => {
327
- const styleEl = this._doc.createElement('style');
328
- styleEl.textContent = style;
329
- styleNodes.push(host.appendChild(styleEl));
330
- });
350
+ onStyleAdded(style) {
351
+ for (const host of this.hostNodes) {
352
+ this.addStyleToHost(host, style);
353
+ }
354
+ }
355
+ onStyleRemoved(style) {
356
+ const styleRef = this.styleRef;
357
+ const styleElements = styleRef.get(style);
358
+ styleElements?.forEach(e => e.remove());
359
+ styleRef.delete(style);
360
+ }
361
+ ngOnDestroy() {
362
+ super.ngOnDestroy();
363
+ this.styleRef.clear();
364
+ this.resetHostNodes();
331
365
  }
332
366
  addHost(hostNode) {
333
- const styleNodes = [];
334
- this._addStylesToHost(this._stylesSet, hostNode, styleNodes);
335
- this._hostNodes.set(hostNode, styleNodes);
367
+ this.hostNodes.add(hostNode);
368
+ for (const style of this.getAllStyles()) {
369
+ this.addStyleToHost(hostNode, style);
370
+ }
336
371
  }
337
372
  removeHost(hostNode) {
338
- const styleNodes = this._hostNodes.get(hostNode);
339
- if (styleNodes) {
340
- styleNodes.forEach(removeStyle);
373
+ this.hostNodes.delete(hostNode);
374
+ }
375
+ addStyleToHost(host, style) {
376
+ const styleEl = this.doc.createElement('style');
377
+ styleEl.textContent = style;
378
+ host.appendChild(styleEl);
379
+ const styleElRef = this.styleRef.get(style);
380
+ if (styleElRef) {
381
+ styleElRef.push(styleEl);
382
+ }
383
+ else {
384
+ this.styleRef.set(style, [styleEl]);
341
385
  }
342
- this._hostNodes.delete(hostNode);
343
- }
344
- onStylesAdded(additions) {
345
- this._hostNodes.forEach((styleNodes, hostNode) => {
346
- this._addStylesToHost(additions, hostNode, styleNodes);
347
- });
348
386
  }
349
- ngOnDestroy() {
350
- this._hostNodes.forEach(styleNodes => styleNodes.forEach(removeStyle));
387
+ resetHostNodes() {
388
+ const hostNodes = this.hostNodes;
389
+ hostNodes.clear();
390
+ // Re-add the head element back since this is the default host.
391
+ hostNodes.add(this.doc.head);
351
392
  }
352
393
  }
353
- DomSharedStylesHost.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomSharedStylesHost, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
354
- DomSharedStylesHost.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomSharedStylesHost });
355
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomSharedStylesHost, decorators: [{
394
+ DomSharedStylesHost.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomSharedStylesHost, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
395
+ DomSharedStylesHost.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomSharedStylesHost });
396
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomSharedStylesHost, decorators: [{
356
397
  type: Injectable
357
398
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
358
399
  type: Inject,
359
400
  args: [DOCUMENT]
360
401
  }] }]; } });
361
- function removeStyle(styleNode) {
362
- ɵgetDOM().remove(styleNode);
363
- }
364
402
 
365
403
  const NAMESPACE_URIS = {
366
404
  'svg': 'http://www.w3.org/2000/svg',
@@ -375,16 +413,29 @@ const NG_DEV_MODE$1 = typeof ngDevMode === 'undefined' || !!ngDevMode;
375
413
  const COMPONENT_VARIABLE = '%COMP%';
376
414
  const HOST_ATTR = `_nghost-${COMPONENT_VARIABLE}`;
377
415
  const CONTENT_ATTR = `_ngcontent-${COMPONENT_VARIABLE}`;
416
+ /**
417
+ * The default value for the `REMOVE_STYLES_ON_COMPONENT_DESTROY` DI token.
418
+ */
419
+ const REMOVE_STYLES_ON_COMPONENT_DESTROY_DEFAULT = false;
420
+ /**
421
+ * A [DI token](guide/glossary#di-token "DI token definition") that indicates whether styles
422
+ * of destroyed components should be removed from DOM.
423
+ *
424
+ * By default, the value is set to `false`. This will be changed in the next major version.
425
+ * @publicApi
426
+ */
427
+ const REMOVE_STYLES_ON_COMPONENT_DESTROY = new InjectionToken('RemoveStylesOnCompDestory', {
428
+ providedIn: 'root',
429
+ factory: () => REMOVE_STYLES_ON_COMPONENT_DESTROY_DEFAULT,
430
+ });
378
431
  function shimContentAttribute(componentShortId) {
379
432
  return CONTENT_ATTR.replace(COMPONENT_REGEX, componentShortId);
380
433
  }
381
434
  function shimHostAttribute(componentShortId) {
382
435
  return HOST_ATTR.replace(COMPONENT_REGEX, componentShortId);
383
436
  }
384
- function flattenStyles(compId, styles) {
385
- // Cannot use `Infinity` as depth as `infinity` is not a number literal in TypeScript.
386
- // See: https://github.com/microsoft/TypeScript/issues/32277
387
- return styles.flat(100).map(s => s.replace(COMPONENT_REGEX, compId));
437
+ function shimStylesContent(compId, styles) {
438
+ return styles.map(s => s.replace(COMPONENT_REGEX, compId));
388
439
  }
389
440
  function decoratePreventDefault(eventHandler) {
390
441
  // `DebugNode.triggerEventHandler` needs to know if the listener was created with
@@ -409,10 +460,11 @@ function decoratePreventDefault(eventHandler) {
409
460
  };
410
461
  }
411
462
  class DomRendererFactory2 {
412
- constructor(eventManager, sharedStylesHost, appId) {
463
+ constructor(eventManager, sharedStylesHost, appId, removeStylesOnCompDestory) {
413
464
  this.eventManager = eventManager;
414
465
  this.sharedStylesHost = sharedStylesHost;
415
466
  this.appId = appId;
467
+ this.removeStylesOnCompDestory = removeStylesOnCompDestory;
416
468
  this.rendererByCompId = new Map();
417
469
  this.defaultRenderer = new DefaultDomRenderer2(eventManager);
418
470
  }
@@ -420,38 +472,55 @@ class DomRendererFactory2 {
420
472
  if (!element || !type) {
421
473
  return this.defaultRenderer;
422
474
  }
423
- switch (type.encapsulation) {
424
- case ViewEncapsulation.Emulated: {
425
- let renderer = this.rendererByCompId.get(type.id);
426
- if (!renderer) {
427
- renderer = new EmulatedEncapsulationDomRenderer2(this.eventManager, this.sharedStylesHost, type, this.appId);
428
- this.rendererByCompId.set(type.id, renderer);
429
- }
430
- renderer.applyToHost(element);
431
- return renderer;
432
- }
433
- case ViewEncapsulation.ShadowDom:
434
- return new ShadowDomRenderer(this.eventManager, this.sharedStylesHost, element, type);
435
- default: {
436
- if (!this.rendererByCompId.has(type.id)) {
437
- const styles = flattenStyles(type.id, type.styles);
438
- this.sharedStylesHost.addStyles(styles);
439
- this.rendererByCompId.set(type.id, this.defaultRenderer);
440
- }
441
- return this.defaultRenderer;
475
+ const renderer = this.getOrCreateRenderer(element, type);
476
+ // Renderers have different logic due to different encapsulation behaviours.
477
+ // Ex: for emulated, an attribute is added to the element.
478
+ if (renderer instanceof EmulatedEncapsulationDomRenderer2) {
479
+ renderer.applyToHost(element);
480
+ }
481
+ else if (renderer instanceof NoneEncapsulationDomRenderer) {
482
+ renderer.applyStyles();
483
+ }
484
+ return renderer;
485
+ }
486
+ getOrCreateRenderer(element, type) {
487
+ const rendererByCompId = this.rendererByCompId;
488
+ let renderer = rendererByCompId.get(type.id);
489
+ if (!renderer) {
490
+ const eventManager = this.eventManager;
491
+ const sharedStylesHost = this.sharedStylesHost;
492
+ const removeStylesOnCompDestory = this.removeStylesOnCompDestory;
493
+ switch (type.encapsulation) {
494
+ case ViewEncapsulation.Emulated:
495
+ renderer = new EmulatedEncapsulationDomRenderer2(eventManager, sharedStylesHost, type, this.appId, removeStylesOnCompDestory);
496
+ break;
497
+ case ViewEncapsulation.ShadowDom:
498
+ return new ShadowDomRenderer(eventManager, sharedStylesHost, element, type);
499
+ default:
500
+ renderer = new NoneEncapsulationDomRenderer(eventManager, sharedStylesHost, type, removeStylesOnCompDestory);
501
+ break;
442
502
  }
503
+ renderer.onDestroy = () => rendererByCompId.delete(type.id);
504
+ rendererByCompId.set(type.id, renderer);
443
505
  }
506
+ return renderer;
507
+ }
508
+ ngOnDestroy() {
509
+ this.rendererByCompId.clear();
444
510
  }
445
511
  begin() { }
446
512
  end() { }
447
513
  }
448
- DomRendererFactory2.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomRendererFactory2, deps: [{ token: EventManager }, { token: DomSharedStylesHost }, { token: APP_ID }], target: i0.ɵɵFactoryTarget.Injectable });
449
- DomRendererFactory2.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomRendererFactory2 });
450
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomRendererFactory2, decorators: [{
514
+ DomRendererFactory2.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomRendererFactory2, deps: [{ token: EventManager }, { token: DomSharedStylesHost }, { token: APP_ID }, { token: REMOVE_STYLES_ON_COMPONENT_DESTROY }], target: i0.ɵɵFactoryTarget.Injectable });
515
+ DomRendererFactory2.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomRendererFactory2 });
516
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomRendererFactory2, decorators: [{
451
517
  type: Injectable
452
518
  }], ctorParameters: function () { return [{ type: EventManager }, { type: DomSharedStylesHost }, { type: undefined, decorators: [{
453
519
  type: Inject,
454
520
  args: [APP_ID]
521
+ }] }, { type: undefined, decorators: [{
522
+ type: Inject,
523
+ args: [REMOVE_STYLES_ON_COMPONENT_DESTROY]
455
524
  }] }]; } });
456
525
  class DefaultDomRenderer2 {
457
526
  constructor(eventManager) {
@@ -592,24 +661,6 @@ function checkNoSyntheticProp(name, nameKind) {
592
661
  function isTemplateNode(node) {
593
662
  return node.tagName === 'TEMPLATE' && node.content !== undefined;
594
663
  }
595
- class EmulatedEncapsulationDomRenderer2 extends DefaultDomRenderer2 {
596
- constructor(eventManager, sharedStylesHost, component, appId) {
597
- super(eventManager);
598
- this.component = component;
599
- const styles = flattenStyles(appId + '-' + component.id, component.styles);
600
- sharedStylesHost.addStyles(styles);
601
- this.contentAttr = shimContentAttribute(appId + '-' + component.id);
602
- this.hostAttr = shimHostAttribute(appId + '-' + component.id);
603
- }
604
- applyToHost(element) {
605
- super.setAttribute(element, this.hostAttr, '');
606
- }
607
- createElement(parent, name) {
608
- const el = super.createElement(parent, name);
609
- super.setAttribute(el, this.contentAttr, '');
610
- return el;
611
- }
612
- }
613
664
  class ShadowDomRenderer extends DefaultDomRenderer2 {
614
665
  constructor(eventManager, sharedStylesHost, hostEl, component) {
615
666
  super(eventManager);
@@ -617,19 +668,16 @@ class ShadowDomRenderer extends DefaultDomRenderer2 {
617
668
  this.hostEl = hostEl;
618
669
  this.shadowRoot = hostEl.attachShadow({ mode: 'open' });
619
670
  this.sharedStylesHost.addHost(this.shadowRoot);
620
- const styles = flattenStyles(component.id, component.styles);
621
- for (let i = 0; i < styles.length; i++) {
671
+ const styles = shimStylesContent(component.id, component.styles);
672
+ for (const style of styles) {
622
673
  const styleEl = document.createElement('style');
623
- styleEl.textContent = styles[i];
674
+ styleEl.textContent = style;
624
675
  this.shadowRoot.appendChild(styleEl);
625
676
  }
626
677
  }
627
678
  nodeOrShadowRoot(node) {
628
679
  return node === this.hostEl ? this.shadowRoot : node;
629
680
  }
630
- destroy() {
631
- this.sharedStylesHost.removeHost(this.shadowRoot);
632
- }
633
681
  appendChild(parent, newChild) {
634
682
  return super.appendChild(this.nodeOrShadowRoot(parent), newChild);
635
683
  }
@@ -642,6 +690,49 @@ class ShadowDomRenderer extends DefaultDomRenderer2 {
642
690
  parentNode(node) {
643
691
  return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(node)));
644
692
  }
693
+ destroy() {
694
+ this.sharedStylesHost.removeHost(this.shadowRoot);
695
+ }
696
+ }
697
+ class NoneEncapsulationDomRenderer extends DefaultDomRenderer2 {
698
+ constructor(eventManager, sharedStylesHost, component, removeStylesOnCompDestory, compId = component.id) {
699
+ super(eventManager);
700
+ this.sharedStylesHost = sharedStylesHost;
701
+ this.removeStylesOnCompDestory = removeStylesOnCompDestory;
702
+ this.rendererUsageCount = 0;
703
+ this.styles = shimStylesContent(compId, component.styles);
704
+ }
705
+ applyStyles() {
706
+ this.sharedStylesHost.addStyles(this.styles);
707
+ this.rendererUsageCount++;
708
+ }
709
+ destroy() {
710
+ if (!this.removeStylesOnCompDestory) {
711
+ return;
712
+ }
713
+ this.sharedStylesHost.removeStyles(this.styles);
714
+ this.rendererUsageCount--;
715
+ if (this.rendererUsageCount === 0) {
716
+ this.onDestroy?.();
717
+ }
718
+ }
719
+ }
720
+ class EmulatedEncapsulationDomRenderer2 extends NoneEncapsulationDomRenderer {
721
+ constructor(eventManager, sharedStylesHost, component, appId, removeStylesOnCompDestory) {
722
+ const compId = appId + '-' + component.id;
723
+ super(eventManager, sharedStylesHost, component, removeStylesOnCompDestory, compId);
724
+ this.contentAttr = shimContentAttribute(compId);
725
+ this.hostAttr = shimHostAttribute(compId);
726
+ }
727
+ applyToHost(element) {
728
+ this.applyStyles();
729
+ this.setAttribute(element, this.hostAttr, '');
730
+ }
731
+ createElement(parent, name) {
732
+ const el = super.createElement(parent, name);
733
+ super.setAttribute(el, this.contentAttr, '');
734
+ return el;
735
+ }
645
736
  }
646
737
 
647
738
  class DomEventsPlugin extends EventManagerPlugin {
@@ -661,9 +752,9 @@ class DomEventsPlugin extends EventManagerPlugin {
661
752
  return target.removeEventListener(eventName, callback);
662
753
  }
663
754
  }
664
- DomEventsPlugin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomEventsPlugin, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
665
- DomEventsPlugin.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomEventsPlugin });
666
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomEventsPlugin, decorators: [{
755
+ DomEventsPlugin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomEventsPlugin, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
756
+ DomEventsPlugin.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomEventsPlugin });
757
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomEventsPlugin, decorators: [{
667
758
  type: Injectable
668
759
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
669
760
  type: Inject,
@@ -840,9 +931,9 @@ class KeyEventsPlugin extends EventManagerPlugin {
840
931
  }
841
932
  }
842
933
  }
843
- KeyEventsPlugin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: KeyEventsPlugin, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
844
- KeyEventsPlugin.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: KeyEventsPlugin });
845
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: KeyEventsPlugin, decorators: [{
934
+ KeyEventsPlugin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: KeyEventsPlugin, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
935
+ KeyEventsPlugin.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: KeyEventsPlugin });
936
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: KeyEventsPlugin, decorators: [{
846
937
  type: Injectable
847
938
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
848
939
  type: Inject,
@@ -1010,7 +1101,7 @@ const BROWSER_MODULE_PROVIDERS = [
1010
1101
  { provide: EVENT_MANAGER_PLUGINS, useClass: KeyEventsPlugin, multi: true, deps: [DOCUMENT] }, {
1011
1102
  provide: DomRendererFactory2,
1012
1103
  useClass: DomRendererFactory2,
1013
- deps: [EventManager, DomSharedStylesHost, APP_ID]
1104
+ deps: [EventManager, DomSharedStylesHost, APP_ID, REMOVE_STYLES_ON_COMPONENT_DESTROY]
1014
1105
  },
1015
1106
  { provide: RendererFactory2, useExisting: DomRendererFactory2 },
1016
1107
  { provide: SharedStylesHost, useExisting: DomSharedStylesHost },
@@ -1054,13 +1145,13 @@ class BrowserModule {
1054
1145
  };
1055
1146
  }
1056
1147
  }
1057
- BrowserModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserModule, deps: [{ token: BROWSER_MODULE_PROVIDERS_MARKER, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule });
1058
- BrowserModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserModule, exports: [CommonModule, ApplicationModule] });
1059
- BrowserModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserModule, providers: [
1148
+ BrowserModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserModule, deps: [{ token: BROWSER_MODULE_PROVIDERS_MARKER, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule });
1149
+ BrowserModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserModule, exports: [CommonModule, ApplicationModule] });
1150
+ BrowserModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserModule, providers: [
1060
1151
  ...BROWSER_MODULE_PROVIDERS,
1061
1152
  ...TESTABILITY_PROVIDERS
1062
1153
  ], imports: [CommonModule, ApplicationModule] });
1063
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserModule, decorators: [{
1154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserModule, decorators: [{
1064
1155
  type: NgModule,
1065
1156
  args: [{
1066
1157
  providers: [
@@ -1234,9 +1325,9 @@ class Meta {
1234
1325
  return META_KEYS_MAP[prop] || prop;
1235
1326
  }
1236
1327
  }
1237
- Meta.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: Meta, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
1238
- Meta.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: Meta, providedIn: 'root', useFactory: createMeta, deps: [] });
1239
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: Meta, decorators: [{
1328
+ Meta.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: Meta, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
1329
+ Meta.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: Meta, providedIn: 'root', useFactory: createMeta, deps: [] });
1330
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: Meta, decorators: [{
1240
1331
  type: Injectable,
1241
1332
  args: [{ providedIn: 'root', useFactory: createMeta, deps: [] }]
1242
1333
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -1284,9 +1375,9 @@ class Title {
1284
1375
  this._doc.title = newTitle || '';
1285
1376
  }
1286
1377
  }
1287
- Title.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: Title, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
1288
- Title.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: Title, providedIn: 'root', useFactory: createTitle, deps: [] });
1289
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: Title, decorators: [{
1378
+ Title.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: Title, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
1379
+ Title.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: Title, providedIn: 'root', useFactory: createTitle, deps: [] });
1380
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: Title, decorators: [{
1290
1381
  type: Injectable,
1291
1382
  args: [{ providedIn: 'root', useFactory: createTitle, deps: [] }]
1292
1383
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -1520,15 +1611,15 @@ class TransferState {
1520
1611
  return JSON.stringify(this.store);
1521
1612
  }
1522
1613
  }
1523
- TransferState.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: TransferState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1524
- TransferState.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: TransferState, providedIn: 'root', useFactory: () => {
1614
+ TransferState.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: TransferState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1615
+ TransferState.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: TransferState, providedIn: 'root', useFactory: () => {
1525
1616
  const doc = inject(DOCUMENT);
1526
1617
  const appId = inject(APP_ID);
1527
1618
  const state = new TransferState();
1528
1619
  state.store = retrieveTransferredState(doc, appId);
1529
1620
  return state;
1530
1621
  } });
1531
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: TransferState, decorators: [{
1622
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: TransferState, decorators: [{
1532
1623
  type: Injectable,
1533
1624
  args: [{
1534
1625
  providedIn: 'root',
@@ -1567,10 +1658,10 @@ function retrieveTransferredState(doc, appId) {
1567
1658
  */
1568
1659
  class BrowserTransferStateModule {
1569
1660
  }
1570
- BrowserTransferStateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserTransferStateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1571
- BrowserTransferStateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserTransferStateModule });
1572
- BrowserTransferStateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserTransferStateModule });
1573
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: BrowserTransferStateModule, decorators: [{
1661
+ BrowserTransferStateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserTransferStateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1662
+ BrowserTransferStateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserTransferStateModule });
1663
+ BrowserTransferStateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserTransferStateModule });
1664
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: BrowserTransferStateModule, decorators: [{
1574
1665
  type: NgModule,
1575
1666
  args: [{}]
1576
1667
  }] });
@@ -1730,9 +1821,9 @@ class HammerGestureConfig {
1730
1821
  return mc;
1731
1822
  }
1732
1823
  }
1733
- HammerGestureConfig.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: HammerGestureConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1734
- HammerGestureConfig.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: HammerGestureConfig });
1735
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: HammerGestureConfig, decorators: [{
1824
+ HammerGestureConfig.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: HammerGestureConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1825
+ HammerGestureConfig.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: HammerGestureConfig });
1826
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: HammerGestureConfig, decorators: [{
1736
1827
  type: Injectable
1737
1828
  }] });
1738
1829
  /**
@@ -1828,9 +1919,9 @@ class HammerGesturesPlugin extends EventManagerPlugin {
1828
1919
  return this._config.events.indexOf(eventName) > -1;
1829
1920
  }
1830
1921
  }
1831
- HammerGesturesPlugin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: HammerGesturesPlugin, deps: [{ token: DOCUMENT }, { token: HAMMER_GESTURE_CONFIG }, { token: i0.ɵConsole }, { token: HAMMER_LOADER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
1832
- HammerGesturesPlugin.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: HammerGesturesPlugin });
1833
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: HammerGesturesPlugin, decorators: [{
1922
+ HammerGesturesPlugin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: HammerGesturesPlugin, deps: [{ token: DOCUMENT }, { token: HAMMER_GESTURE_CONFIG }, { token: i0.ɵConsole }, { token: HAMMER_LOADER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
1923
+ HammerGesturesPlugin.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: HammerGesturesPlugin });
1924
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: HammerGesturesPlugin, decorators: [{
1834
1925
  type: Injectable
1835
1926
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
1836
1927
  type: Inject,
@@ -1857,9 +1948,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ng
1857
1948
  */
1858
1949
  class HammerModule {
1859
1950
  }
1860
- HammerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: HammerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1861
- HammerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.0-rc.0", ngImport: i0, type: HammerModule });
1862
- HammerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: HammerModule, providers: [
1951
+ HammerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: HammerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1952
+ HammerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.0", ngImport: i0, type: HammerModule });
1953
+ HammerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: HammerModule, providers: [
1863
1954
  {
1864
1955
  provide: EVENT_MANAGER_PLUGINS,
1865
1956
  useClass: HammerGesturesPlugin,
@@ -1868,7 +1959,7 @@ HammerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
1868
1959
  },
1869
1960
  { provide: HAMMER_GESTURE_CONFIG, useClass: HammerGestureConfig, deps: [] },
1870
1961
  ] });
1871
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: HammerModule, decorators: [{
1962
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: HammerModule, decorators: [{
1872
1963
  type: NgModule,
1873
1964
  args: [{
1874
1965
  providers: [
@@ -1916,9 +2007,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ng
1916
2007
  */
1917
2008
  class DomSanitizer {
1918
2009
  }
1919
- DomSanitizer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomSanitizer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1920
- DomSanitizer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomSanitizer, providedIn: 'root', useExisting: i0.forwardRef(function () { return DomSanitizerImpl; }) });
1921
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomSanitizer, decorators: [{
2010
+ DomSanitizer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomSanitizer, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2011
+ DomSanitizer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomSanitizer, providedIn: 'root', useExisting: i0.forwardRef(function () { return DomSanitizerImpl; }) });
2012
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomSanitizer, decorators: [{
1922
2013
  type: Injectable,
1923
2014
  args: [{ providedIn: 'root', useExisting: forwardRef(() => DomSanitizerImpl) }]
1924
2015
  }] });
@@ -1981,9 +2072,9 @@ class DomSanitizerImpl extends DomSanitizer {
1981
2072
  return ɵbypassSanitizationTrustResourceUrl(value);
1982
2073
  }
1983
2074
  }
1984
- DomSanitizerImpl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomSanitizerImpl, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
1985
- DomSanitizerImpl.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomSanitizerImpl, providedIn: 'root', useFactory: domSanitizerImplFactory, deps: [{ token: Injector }] });
1986
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ngImport: i0, type: DomSanitizerImpl, decorators: [{
2075
+ DomSanitizerImpl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomSanitizerImpl, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
2076
+ DomSanitizerImpl.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomSanitizerImpl, providedIn: 'root', useFactory: domSanitizerImplFactory, deps: [{ token: Injector }] });
2077
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.0", ngImport: i0, type: DomSanitizerImpl, decorators: [{
1987
2078
  type: Injectable,
1988
2079
  args: [{ providedIn: 'root', useFactory: domSanitizerImplFactory, deps: [Injector] }]
1989
2080
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -1999,7 +2090,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0-rc.0", ng
1999
2090
  /**
2000
2091
  * @publicApi
2001
2092
  */
2002
- const VERSION = new Version('15.2.0-rc.0');
2093
+ const VERSION = new Version('16.0.0-next.0');
2003
2094
 
2004
2095
  /**
2005
2096
  * @module
@@ -2014,5 +2105,5 @@ const VERSION = new Version('15.2.0-rc.0');
2014
2105
  * Generated bundle index. Do not edit.
2015
2106
  */
2016
2107
 
2017
- export { BrowserModule, BrowserTransferStateModule, By, DomSanitizer, EVENT_MANAGER_PLUGINS, EventManager, HAMMER_GESTURE_CONFIG, HAMMER_LOADER, HammerGestureConfig, HammerModule, Meta, 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, DomSharedStylesHost as ɵDomSharedStylesHost, HammerGesturesPlugin as ɵHammerGesturesPlugin, INTERNAL_BROWSER_PLATFORM_PROVIDERS as ɵINTERNAL_BROWSER_PLATFORM_PROVIDERS, KeyEventsPlugin as ɵKeyEventsPlugin, NAMESPACE_URIS as ɵNAMESPACE_URIS, SharedStylesHost as ɵSharedStylesHost, TRANSITION_ID as ɵTRANSITION_ID, escapeHtml as ɵescapeHtml, flattenStyles as ɵflattenStyles, initDomAdapter as ɵinitDomAdapter, shimContentAttribute as ɵshimContentAttribute, shimHostAttribute as ɵshimHostAttribute };
2108
+ 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, DomSharedStylesHost as ɵDomSharedStylesHost, HammerGesturesPlugin as ɵHammerGesturesPlugin, INTERNAL_BROWSER_PLATFORM_PROVIDERS as ɵINTERNAL_BROWSER_PLATFORM_PROVIDERS, KeyEventsPlugin as ɵKeyEventsPlugin, NAMESPACE_URIS as ɵNAMESPACE_URIS, SharedStylesHost as ɵSharedStylesHost, TRANSITION_ID as ɵTRANSITION_ID, escapeHtml as ɵescapeHtml, initDomAdapter as ɵinitDomAdapter, shimContentAttribute as ɵshimContentAttribute, shimHostAttribute as ɵshimHostAttribute, shimStylesContent as ɵshimStyles };
2018
2109
  //# sourceMappingURL=platform-browser.mjs.map