@angular/platform-browser 19.0.0-next.6 → 19.0.0-next.8

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,5 +1,5 @@
1
1
  /**
2
- * @license Angular v19.0.0-next.6
2
+ * @license Angular v19.0.0-next.8
3
3
  * (c) 2010-2024 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -28,16 +28,16 @@ const platformBrowserTesting = createPlatformFactory(platformCore, 'browserTesti
28
28
  * @publicApi
29
29
  */
30
30
  class BrowserTestingModule {
31
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.6", ngImport: i0, type: BrowserTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
32
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.6", ngImport: i0, type: BrowserTestingModule, exports: [BrowserModule] }); }
33
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.6", ngImport: i0, type: BrowserTestingModule, providers: [
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: BrowserTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
32
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.8", ngImport: i0, type: BrowserTestingModule, exports: [BrowserModule] }); }
33
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: BrowserTestingModule, providers: [
34
34
  { provide: APP_ID, useValue: 'a' },
35
35
  ɵinternalProvideZoneChangeDetection({}),
36
36
  { provide: ɵChangeDetectionScheduler, useExisting: ɵChangeDetectionSchedulerImpl },
37
37
  { provide: PlatformLocation, useClass: MockPlatformLocation },
38
38
  ], imports: [BrowserModule] }); }
39
39
  }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.6", ngImport: i0, type: BrowserTestingModule, decorators: [{
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: BrowserTestingModule, decorators: [{
41
41
  type: NgModule,
42
42
  args: [{
43
43
  exports: [BrowserModule],
@@ -1 +1 @@
1
- {"version":3,"file":"testing.mjs","sources":["../../../../../../packages/platform-browser/testing/src/browser.ts","../../../../../../packages/platform-browser/testing/src/testing.ts","../../../../../../packages/platform-browser/testing/public_api.ts","../../../../../../packages/platform-browser/testing/index.ts","../../../../../../packages/platform-browser/testing/testing.ts"],"sourcesContent":["/**\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.io/license\n */\nimport {PlatformLocation} from '@angular/common';\nimport {MockPlatformLocation} from '@angular/common/testing';\nimport {\n APP_ID,\n createPlatformFactory,\n NgModule,\n PLATFORM_INITIALIZER,\n platformCore,\n StaticProvider,\n ɵinternalProvideZoneChangeDetection as internalProvideZoneChangeDetection,\n ɵChangeDetectionScheduler as ChangeDetectionScheduler,\n ɵChangeDetectionSchedulerImpl as ChangeDetectionSchedulerImpl,\n} from '@angular/core';\nimport {BrowserModule, ɵBrowserDomAdapter as BrowserDomAdapter} from '@angular/platform-browser';\n\nfunction initBrowserTests() {\n BrowserDomAdapter.makeCurrent();\n}\n\nconst _TEST_BROWSER_PLATFORM_PROVIDERS: StaticProvider[] = [\n {provide: PLATFORM_INITIALIZER, useValue: initBrowserTests, multi: true},\n];\n\n/**\n * Platform for testing\n *\n * @publicApi\n */\nexport const platformBrowserTesting = createPlatformFactory(\n platformCore,\n 'browserTesting',\n _TEST_BROWSER_PLATFORM_PROVIDERS,\n);\n\n/**\n * NgModule for testing.\n *\n * @publicApi\n */\n@NgModule({\n exports: [BrowserModule],\n providers: [\n {provide: APP_ID, useValue: 'a'},\n internalProvideZoneChangeDetection({}),\n {provide: ChangeDetectionScheduler, useExisting: ChangeDetectionSchedulerImpl},\n {provide: PlatformLocation, useClass: MockPlatformLocation},\n ],\n})\nexport class BrowserTestingModule {}\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.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of the platform-browser/testing package.\n */\nexport * from './browser';\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.io/license\n */\n\n/// <reference types=\"jasmine\" />\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\nexport * from './src/testing';\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.io/license\n */\n\n// This file is not used to build this module. It is only used during editing\n// by the TypeScript language service and during build for verification. `ngc`\n// replaces this file with production index.ts when it rewrites private symbol\n// names.\n\nexport * from './public_api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["BrowserDomAdapter","internalProvideZoneChangeDetection","ChangeDetectionScheduler","ChangeDetectionSchedulerImpl"],"mappings":";;;;;;;;;;;;AAsBA,SAAS,gBAAgB,GAAA;IACvBA,kBAAiB,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,MAAM,gCAAgC,GAAqB;IACzD,EAAC,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAC;CACzE,CAAC;AAEF;;;;AAIG;AACI,MAAM,sBAAsB,GAAG,qBAAqB,CACzD,YAAY,EACZ,gBAAgB,EAChB,gCAAgC,EAChC;AAEF;;;;AAIG;MAUU,oBAAoB,CAAA;yHAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,YARrB,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;AAQZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EAPpB,SAAA,EAAA;AACT,YAAA,EAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAC;YAChCC,mCAAkC,CAAC,EAAE,CAAC;AACtC,YAAA,EAAC,OAAO,EAAEC,yBAAwB,EAAE,WAAW,EAAEC,6BAA4B,EAAC;AAC9E,YAAA,EAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,oBAAoB,EAAC;AAC5D,SAAA,EAAA,OAAA,EAAA,CANS,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;;sGAQZ,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAThC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,aAAa,CAAC;AACxB,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAC;wBAChCF,mCAAkC,CAAC,EAAE,CAAC;AACtC,wBAAA,EAAC,OAAO,EAAEC,yBAAwB,EAAE,WAAW,EAAEC,6BAA4B,EAAC;AAC9E,wBAAA,EAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,oBAAoB,EAAC;AAC5D,qBAAA;AACF,iBAAA,CAAA;;;AC9CD;;;;AAIG;;ACJH;;ACAA;;ACRA;;AAEG;;;;"}
1
+ {"version":3,"file":"testing.mjs","sources":["../../../../../../packages/platform-browser/testing/src/browser.ts","../../../../../../packages/platform-browser/testing/src/testing.ts","../../../../../../packages/platform-browser/testing/public_api.ts","../../../../../../packages/platform-browser/testing/index.ts","../../../../../../packages/platform-browser/testing/testing.ts"],"sourcesContent":["/**\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 */\nimport {PlatformLocation} from '@angular/common';\nimport {MockPlatformLocation} from '@angular/common/testing';\nimport {\n APP_ID,\n createPlatformFactory,\n NgModule,\n PLATFORM_INITIALIZER,\n platformCore,\n StaticProvider,\n ɵinternalProvideZoneChangeDetection as internalProvideZoneChangeDetection,\n ɵChangeDetectionScheduler as ChangeDetectionScheduler,\n ɵChangeDetectionSchedulerImpl as ChangeDetectionSchedulerImpl,\n} from '@angular/core';\nimport {BrowserModule, ɵBrowserDomAdapter as BrowserDomAdapter} from '@angular/platform-browser';\n\nfunction initBrowserTests() {\n BrowserDomAdapter.makeCurrent();\n}\n\nconst _TEST_BROWSER_PLATFORM_PROVIDERS: StaticProvider[] = [\n {provide: PLATFORM_INITIALIZER, useValue: initBrowserTests, multi: true},\n];\n\n/**\n * Platform for testing\n *\n * @publicApi\n */\nexport const platformBrowserTesting = createPlatformFactory(\n platformCore,\n 'browserTesting',\n _TEST_BROWSER_PLATFORM_PROVIDERS,\n);\n\n/**\n * NgModule for testing.\n *\n * @publicApi\n */\n@NgModule({\n exports: [BrowserModule],\n providers: [\n {provide: APP_ID, useValue: 'a'},\n internalProvideZoneChangeDetection({}),\n {provide: ChangeDetectionScheduler, useExisting: ChangeDetectionSchedulerImpl},\n {provide: PlatformLocation, useClass: MockPlatformLocation},\n ],\n})\nexport class BrowserTestingModule {}\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\n/**\n * @module\n * @description\n * Entry point for all public APIs of the platform-browser/testing package.\n */\nexport * from './browser';\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\n/// <reference types=\"jasmine\" />\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\nexport * from './src/testing';\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\n// This file is not used to build this module. It is only used during editing\n// by the TypeScript language service and during build for verification. `ngc`\n// replaces this file with production index.ts when it rewrites private symbol\n// names.\n\nexport * from './public_api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["BrowserDomAdapter","internalProvideZoneChangeDetection","ChangeDetectionScheduler","ChangeDetectionSchedulerImpl"],"mappings":";;;;;;;;;;;;AAsBA,SAAS,gBAAgB,GAAA;IACvBA,kBAAiB,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,MAAM,gCAAgC,GAAqB;IACzD,EAAC,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAC;CACzE,CAAC;AAEF;;;;AAIG;AACI,MAAM,sBAAsB,GAAG,qBAAqB,CACzD,YAAY,EACZ,gBAAgB,EAChB,gCAAgC,EAChC;AAEF;;;;AAIG;MAUU,oBAAoB,CAAA;yHAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,YARrB,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;AAQZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EAPpB,SAAA,EAAA;AACT,YAAA,EAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAC;YAChCC,mCAAkC,CAAC,EAAE,CAAC;AACtC,YAAA,EAAC,OAAO,EAAEC,yBAAwB,EAAE,WAAW,EAAEC,6BAA4B,EAAC;AAC9E,YAAA,EAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,oBAAoB,EAAC;AAC5D,SAAA,EAAA,OAAA,EAAA,CANS,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;;sGAQZ,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAThC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,aAAa,CAAC;AACxB,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAC;wBAChCF,mCAAkC,CAAC,EAAE,CAAC;AACtC,wBAAA,EAAC,OAAO,EAAEC,yBAAwB,EAAE,WAAW,EAAEC,6BAA4B,EAAC;AAC9E,wBAAA,EAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,oBAAoB,EAAC;AAC5D,qBAAA;AACF,iBAAA,CAAA;;;AC9CD;;;;AAIG;;ACJH;;ACAA;;ACRA;;AAEG;;;;"}
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v19.0.0-next.6
2
+ * @license Angular v19.0.0-next.8
3
3
  * (c) 2010-2024 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -761,6 +761,15 @@ export declare class Title {
761
761
  static ɵprov: i0.ɵɵInjectableDeclaration<Title>;
762
762
  }
763
763
 
764
+ /**
765
+ * A record of usage for a specific style including all elements added to the DOM
766
+ * that contain a given style.
767
+ */
768
+ declare interface UsageRecord<T> {
769
+ elements: T[];
770
+ usage: number;
771
+ }
772
+
764
773
  /**
765
774
  * @publicApi
766
775
  */
@@ -780,7 +789,6 @@ export declare const VERSION: Version;
780
789
  * providers: [provideClientHydration(withEventReplay())]
781
790
  * });
782
791
  * ```
783
- * @developerPreview
784
792
  * @publicApi
785
793
  * @see {@link provideClientHydration}
786
794
  */
@@ -989,26 +997,48 @@ export declare const enum ɵRuntimeErrorCode {
989
997
  export declare class ɵSharedStylesHost implements OnDestroy {
990
998
  private readonly doc;
991
999
  private readonly appId;
992
- private nonce?;
993
- readonly platformId: object;
994
- private readonly styleRef;
995
- private readonly hostNodes;
996
- private readonly styleNodesInDOM;
997
- private readonly platformIsServer;
1000
+ private readonly nonce?;
1001
+ /**
1002
+ * Provides usage information for active inline style content and associated HTML <style> elements.
1003
+ * Embedded styles typically originate from the `styles` metadata of a rendered component.
1004
+ */
1005
+ private readonly inline;
1006
+ /**
1007
+ * Provides usage information for active external style URLs and the associated HTML <link> elements.
1008
+ * External styles typically originate from the `ɵɵExternalStylesFeature` of a rendered component.
1009
+ */
1010
+ private readonly external;
1011
+ /**
1012
+ * Set of host DOM nodes that will have styles attached.
1013
+ */
1014
+ private readonly hosts;
1015
+ /**
1016
+ * Whether the application code is currently executing on a server.
1017
+ */
1018
+ private readonly isServer;
998
1019
  constructor(doc: Document, appId: string, nonce?: (string | null) | undefined, platformId?: object);
999
- addStyles(styles: string[]): void;
1000
- removeStyles(styles: string[]): void;
1020
+ /**
1021
+ * Adds embedded styles to the DOM via HTML `style` elements.
1022
+ * @param styles An array of style content strings.
1023
+ */
1024
+ addStyles(styles: string[], urls?: string[]): void;
1025
+ /**
1026
+ * Removes embedded styles from the DOM that were added as HTML `style` elements.
1027
+ * @param styles An array of style content strings.
1028
+ */
1029
+ removeStyles(styles: string[], urls?: string[]): void;
1030
+ protected addUsage<T extends HTMLElement>(value: string, usages: Map<string, UsageRecord<T>>, creator: (value: string, doc: Document) => T): void;
1031
+ protected removeUsage<T extends HTMLElement>(value: string, usages: Map<string, UsageRecord<T>>): void;
1001
1032
  ngOnDestroy(): void;
1033
+ /**
1034
+ * Adds a host node to the set of style hosts and adds all existing style usage to
1035
+ * the newly added host node.
1036
+ *
1037
+ * This is currently only used for Shadow DOM encapsulation mode.
1038
+ */
1002
1039
  addHost(hostNode: Node): void;
1003
1040
  removeHost(hostNode: Node): void;
1004
- private getAllStyles;
1005
- private onStyleAdded;
1006
- private onStyleRemoved;
1007
- private collectServerRenderedStyles;
1008
- private changeUsageCount;
1009
- private getStyleElement;
1010
- private addStyleToHost;
1011
- private resetHostNodes;
1041
+ private addElement;
1012
1042
  static ɵfac: i0.ɵɵFactoryDeclaration<ɵSharedStylesHost, [null, null, { optional: true; }, null]>;
1013
1043
  static ɵprov: i0.ɵɵInjectableDeclaration<ɵSharedStylesHost>;
1014
1044
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/platform-browser",
3
- "version": "19.0.0-next.6",
3
+ "version": "19.0.0-next.8",
4
4
  "description": "Angular - library for using Angular in a web browser",
5
5
  "author": "angular",
6
6
  "license": "MIT",
@@ -11,9 +11,9 @@
11
11
  "tslib": "^2.3.0"
12
12
  },
13
13
  "peerDependencies": {
14
- "@angular/animations": "19.0.0-next.6",
15
- "@angular/core": "19.0.0-next.6",
16
- "@angular/common": "19.0.0-next.6"
14
+ "@angular/animations": "19.0.0-next.8",
15
+ "@angular/core": "19.0.0-next.8",
16
+ "@angular/common": "19.0.0-next.8"
17
17
  },
18
18
  "peerDependenciesMeta": {
19
19
  "@angular/animations": {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v19.0.0-next.6
2
+ * @license Angular v19.0.0-next.8
3
3
  * (c) 2010-2024 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */