@angular/platform-server 16.0.0-next.3 → 16.0.0-next.5

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 (49) hide show
  1. package/esm2022/src/http.mjs +26 -0
  2. package/{esm2020 → esm2022}/src/location.mjs +4 -4
  3. package/{esm2020 → esm2022}/src/platform_state.mjs +4 -4
  4. package/esm2022/src/server.mjs +104 -0
  5. package/{esm2020 → esm2022}/src/server_events.mjs +4 -4
  6. package/{esm2020 → esm2022}/src/server_renderer.mjs +4 -4
  7. package/{esm2020 → esm2022}/src/tokens.mjs +1 -1
  8. package/esm2022/src/transfer_state.mjs +59 -0
  9. package/esm2022/src/utils.mjs +146 -0
  10. package/{esm2020 → esm2022}/src/version.mjs +1 -1
  11. package/{esm2020 → esm2022}/testing/src/server.mjs +5 -5
  12. package/{fesm2015 → fesm2022}/init.mjs +1 -1
  13. package/{fesm2020 → fesm2022}/platform-server.mjs +69 -194
  14. package/{fesm2020 → fesm2022}/platform-server.mjs.map +1 -1
  15. package/{fesm2020 → fesm2022}/testing.mjs +5 -5
  16. package/{fesm2015 → fesm2022}/testing.mjs.map +1 -1
  17. package/index.d.ts +9 -42
  18. package/init/index.d.ts +1 -1
  19. package/package.json +19 -30
  20. package/testing/index.d.ts +1 -1
  21. package/esm2020/src/http.mjs +0 -125
  22. package/esm2020/src/server.mjs +0 -107
  23. package/esm2020/src/styles_host.mjs +0 -48
  24. package/esm2020/src/transfer_state.mjs +0 -60
  25. package/esm2020/src/utils.mjs +0 -138
  26. package/fesm2015/platform-server.mjs +0 -21176
  27. package/fesm2015/platform-server.mjs.map +0 -1
  28. package/fesm2015/testing.mjs +0 -58
  29. package/fesm2020/init.mjs +0 -35
  30. package/fesm2020/init.mjs.map +0 -1
  31. package/fesm2020/testing.mjs.map +0 -1
  32. /package/{esm2020 → esm2022}/index.mjs +0 -0
  33. /package/{esm2020 → esm2022}/init/index.mjs +0 -0
  34. /package/{esm2020 → esm2022}/init/init.mjs +0 -0
  35. /package/{esm2020 → esm2022}/init/public_api.mjs +0 -0
  36. /package/{esm2020 → esm2022}/init/src/init.mjs +0 -0
  37. /package/{esm2020 → esm2022}/init/src/shims.mjs +0 -0
  38. /package/{esm2020 → esm2022}/platform-server.mjs +0 -0
  39. /package/{esm2020 → esm2022}/public_api.mjs +0 -0
  40. /package/{esm2020 → esm2022}/src/bundled-domino.mjs +0 -0
  41. /package/{esm2020 → esm2022}/src/domino_adapter.mjs +0 -0
  42. /package/{esm2020 → esm2022}/src/platform-server.mjs +0 -0
  43. /package/{esm2020 → esm2022}/src/private_export.mjs +0 -0
  44. /package/{esm2020 → esm2022}/src/provide_server.mjs +0 -0
  45. /package/{esm2020 → esm2022}/testing/index.mjs +0 -0
  46. /package/{esm2020 → esm2022}/testing/public_api.mjs +0 -0
  47. /package/{esm2020 → esm2022}/testing/src/testing.mjs +0 -0
  48. /package/{esm2020 → esm2022}/testing/testing.mjs +0 -0
  49. /package/{fesm2015 → fesm2022}/init.mjs.map +0 -0
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v16.0.0-next.3
2
+ * @license Angular v16.0.0-next.5
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -22,11 +22,11 @@ const platformServerTesting = createPlatformFactory(ɵplatformCoreDynamicTesting
22
22
  * @publicApi
23
23
  */
24
24
  class ServerTestingModule {
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: ServerTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
26
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.5", ngImport: i0, type: ServerTestingModule, imports: [NoopAnimationsModule], exports: [BrowserDynamicTestingModule] }); }
27
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: ServerTestingModule, providers: ɵSERVER_RENDER_PROVIDERS, imports: [NoopAnimationsModule, BrowserDynamicTestingModule] }); }
25
28
  }
26
- ServerTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
27
- ServerTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerTestingModule, imports: [NoopAnimationsModule], exports: [BrowserDynamicTestingModule] });
28
- ServerTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerTestingModule, providers: ɵSERVER_RENDER_PROVIDERS, imports: [NoopAnimationsModule, BrowserDynamicTestingModule] });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerTestingModule, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.5", ngImport: i0, type: ServerTestingModule, decorators: [{
30
30
  type: NgModule,
31
31
  args: [{
32
32
  exports: [BrowserDynamicTestingModule],
@@ -1 +1 @@
1
- {"version":3,"file":"testing.mjs","sources":["../../../../../../packages/platform-server/testing/src/server.ts","../../../../../../packages/platform-server/testing/src/testing.ts","../../../../../../packages/platform-server/testing/public_api.ts","../../../../../../packages/platform-server/testing/index.ts","../../../../../../packages/platform-server/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 */\n\nimport {createPlatformFactory, NgModule} from '@angular/core';\nimport {BrowserDynamicTestingModule, ɵplatformCoreDynamicTesting as platformCoreDynamicTesting} from '@angular/platform-browser-dynamic/testing';\nimport {NoopAnimationsModule} from '@angular/platform-browser/animations';\nimport {ɵINTERNAL_SERVER_PLATFORM_PROVIDERS as INTERNAL_SERVER_PLATFORM_PROVIDERS, ɵSERVER_RENDER_PROVIDERS as SERVER_RENDER_PROVIDERS} from '@angular/platform-server';\n\n\n/**\n * Platform for testing\n *\n * @publicApi\n */\nexport const platformServerTesting = createPlatformFactory(\n platformCoreDynamicTesting, 'serverTesting', INTERNAL_SERVER_PLATFORM_PROVIDERS);\n\n/**\n * NgModule for testing.\n *\n * @publicApi\n */\n@NgModule({\n exports: [BrowserDynamicTestingModule],\n imports: [NoopAnimationsModule],\n providers: SERVER_RENDER_PROVIDERS\n})\nexport class ServerTestingModule {\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of the platform-browser-dynamic/testing package.\n */\nexport * from './server';\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 this package.\n */\nexport * from './src/testing';\n\n// This file only reexports content of the `src` folder. Keep it that way.\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":["platformCoreDynamicTesting","INTERNAL_SERVER_PLATFORM_PROVIDERS","SERVER_RENDER_PROVIDERS"],"mappings":";;;;;;;;;;;;AAcA;;;;AAIG;AACI,MAAM,qBAAqB,GAAG,qBAAqB,CACtDA,2BAA0B,EAAE,eAAe,EAAEC,mCAAkC,EAAE;AAErF;;;;AAIG;AACH,MAKa,mBAAmB,CAAA;;2HAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;4HAAnB,mBAAmB,EAAA,OAAA,EAAA,CAHpB,oBAAoB,CAAA,EAAA,OAAA,EAAA,CADpB,2BAA2B,CAAA,EAAA,CAAA,CAAA;AAI1B,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,EAFnB,SAAA,EAAAC,wBAAuB,EADxB,OAAA,EAAA,CAAA,oBAAoB,EADpB,2BAA2B,CAAA,EAAA,CAAA,CAAA;sGAI1B,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,2BAA2B,CAAC;oBACtC,OAAO,EAAE,CAAC,oBAAoB,CAAC;AAC/B,oBAAA,SAAS,EAAEA,wBAAuB;iBACnC,CAAA;;;ACvBD;;;;AAIG;;ACJH;;;;AAIG;AAGH;;ACPA;;ACRA;;AAEG;;;;"}
1
+ {"version":3,"file":"testing.mjs","sources":["../../../../../../packages/platform-server/testing/src/server.ts","../../../../../../packages/platform-server/testing/src/testing.ts","../../../../../../packages/platform-server/testing/public_api.ts","../../../../../../packages/platform-server/testing/index.ts","../../../../../../packages/platform-server/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 */\n\nimport {createPlatformFactory, NgModule} from '@angular/core';\nimport {BrowserDynamicTestingModule, ɵplatformCoreDynamicTesting as platformCoreDynamicTesting} from '@angular/platform-browser-dynamic/testing';\nimport {NoopAnimationsModule} from '@angular/platform-browser/animations';\nimport {ɵINTERNAL_SERVER_PLATFORM_PROVIDERS as INTERNAL_SERVER_PLATFORM_PROVIDERS, ɵSERVER_RENDER_PROVIDERS as SERVER_RENDER_PROVIDERS} from '@angular/platform-server';\n\n\n/**\n * Platform for testing\n *\n * @publicApi\n */\nexport const platformServerTesting = createPlatformFactory(\n platformCoreDynamicTesting, 'serverTesting', INTERNAL_SERVER_PLATFORM_PROVIDERS);\n\n/**\n * NgModule for testing.\n *\n * @publicApi\n */\n@NgModule({\n exports: [BrowserDynamicTestingModule],\n imports: [NoopAnimationsModule],\n providers: SERVER_RENDER_PROVIDERS\n})\nexport class ServerTestingModule {\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of the platform-browser-dynamic/testing package.\n */\nexport * from './server';\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 this package.\n */\nexport * from './src/testing';\n\n// This file only reexports content of the `src` folder. Keep it that way.\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":["platformCoreDynamicTesting","INTERNAL_SERVER_PLATFORM_PROVIDERS","SERVER_RENDER_PROVIDERS"],"mappings":";;;;;;;;;;;;AAcA;;;;AAIG;AACI,MAAM,qBAAqB,GAAG,qBAAqB,CACtDA,2BAA0B,EAAE,eAAe,EAAEC,mCAAkC,EAAE;AAErF;;;;AAIG;AACH,MAKa,mBAAmB,CAAA;yHAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;0HAAnB,mBAAmB,EAAA,OAAA,EAAA,CAHpB,oBAAoB,CAAA,EAAA,OAAA,EAAA,CADpB,2BAA2B,CAAA,EAAA,CAAA,CAAA,EAAA;AAI1B,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,mBAAmB,EAFnB,SAAA,EAAAC,wBAAuB,EADxB,OAAA,EAAA,CAAA,oBAAoB,EADpB,2BAA2B,CAAA,EAAA,CAAA,CAAA,EAAA;;sGAI1B,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,2BAA2B,CAAC;oBACtC,OAAO,EAAE,CAAC,oBAAoB,CAAC;AAC/B,oBAAA,SAAS,EAAEA,wBAAuB;AACnC,iBAAA,CAAA;;;ACvBD;;;;AAIG;;ACJH;;;;AAIG;AAGH;;ACPA;;ACRA;;AAEG;;;;"}
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v16.0.0-next.3
2
+ * @license Angular v16.0.0-next.5
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -58,17 +58,25 @@ export declare interface PlatformConfig {
58
58
  */
59
59
  url?: string;
60
60
  /**
61
+ * Note: this option has no effect and can be removed from the config.
62
+ *
61
63
  * Whether to append the absolute URL to any relative HTTP requests. If set to
62
64
  * true, this logic executes prior to any HTTP interceptors that may run later
63
65
  * on in the request. `baseUrl` must be supplied if this flag is enabled.
66
+ *
67
+ * @deprecated This option is a noop.
64
68
  * @default false
65
69
  */
66
70
  useAbsoluteUrl?: boolean;
67
71
  /**
72
+ * Note: this option has no effect and can be removed from the config.
73
+ *
68
74
  * The base URL for resolving absolute URL for HTTP requests. It must be set
69
75
  * if `useAbsoluteUrl` is true, and must consist of protocol, hostname,
70
76
  * and optional port. This option has no effect if `useAbsoluteUrl` is not
71
77
  * enabled.
78
+ *
79
+ * @deprecated This option is a noop.
72
80
  */
73
81
  baseUrl?: string;
74
82
  }
@@ -149,47 +157,6 @@ export declare function renderApplication<T>(bootstrap: () => Promise<Applicatio
149
157
  platformProviders?: Provider[];
150
158
  }): Promise<string>;
151
159
 
152
- /**
153
- * Bootstraps an instance of an Angular application and renders it to a string.
154
- *
155
- * Note: the root component passed into this function *must* be a standalone one (should have
156
- * the `standalone: true` flag in the `@Component` decorator config).
157
- *
158
- * ```typescript
159
- * @Component({
160
- * standalone: true,
161
- * template: 'Hello world!'
162
- * })
163
- * class RootComponent {}
164
- *
165
- * const output: string = await renderApplication(RootComponent, {appId: 'server-app'});
166
- * ```
167
- *
168
- * @param rootComponent A reference to a Standalone Component that should be rendered.
169
- * @param options Additional configuration for the render operation:
170
- * - `appId` - a string identifier of this application. The appId is used to prefix all
171
- * server-generated stylings and state keys of the application in TransferState
172
- * use-cases.
173
- * - `document` - the document of the page to render, either as an HTML string or
174
- * as a reference to the `document` instance.
175
- * - `url` - the URL for the current render request.
176
- * - `providers` - set of application level providers for the current render request.
177
- * - `platformProviders` - the platform level providers for the current render request.
178
- *
179
- * @returns A Promise, that returns serialized (to a string) rendered page, once resolved.
180
- *
181
- * @publicApi
182
- * @developerPreview
183
- */
184
- export declare function renderApplication<T>(rootComponent: Type<T>, options: {
185
- /** @deprecated use `APP_ID` token to set the application ID. */
186
- appId: string;
187
- document?: string | Document;
188
- url?: string;
189
- providers?: Array<Provider | EnvironmentProviders>;
190
- platformProviders?: Provider[];
191
- }): Promise<string>;
192
-
193
160
  /**
194
161
  * Bootstraps an application using provided NgModule and serializes the page content to string.
195
162
  *
package/init/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v16.0.0-next.3
2
+ * @license Angular v16.0.0-next.5
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/platform-server",
3
- "version": "16.0.0-next.3",
3
+ "version": "16.0.0-next.5",
4
4
  "description": "Angular - library for using Angular in Node.js",
5
5
  "author": "angular",
6
6
  "license": "MIT",
@@ -8,12 +8,12 @@
8
8
  "node": "^16.13.0 || >=18.10.0"
9
9
  },
10
10
  "peerDependencies": {
11
- "@angular/animations": "16.0.0-next.3",
12
- "@angular/common": "16.0.0-next.3",
13
- "@angular/compiler": "16.0.0-next.3",
14
- "@angular/core": "16.0.0-next.3",
15
- "@angular/platform-browser": "16.0.0-next.3",
16
- "@angular/platform-browser-dynamic": "16.0.0-next.3"
11
+ "@angular/animations": "16.0.0-next.5",
12
+ "@angular/common": "16.0.0-next.5",
13
+ "@angular/compiler": "16.0.0-next.5",
14
+ "@angular/core": "16.0.0-next.5",
15
+ "@angular/platform-browser": "16.0.0-next.5",
16
+ "@angular/platform-browser-dynamic": "16.0.0-next.5"
17
17
  },
18
18
  "dependencies": {
19
19
  "tslib": "^2.3.0",
@@ -45,16 +45,11 @@
45
45
  ]
46
46
  },
47
47
  "sideEffects": [
48
- "./esm2020/init/**",
49
- "./fesm2015/init.mjs",
50
- "./fesm2020/init.mjs"
48
+ "./esm2022/init/**",
49
+ "./fesm2022/init.mjs"
51
50
  ],
52
- "fesm2020": "./fesm2020/platform-server.mjs",
53
- "fesm2015": "./fesm2015/platform-server.mjs",
54
- "esm2020": "./esm2020/platform-server.mjs",
51
+ "module": "./fesm2022/platform-server.mjs",
55
52
  "typings": "./index.d.ts",
56
- "module": "./fesm2015/platform-server.mjs",
57
- "es2020": "./fesm2020/platform-server.mjs",
58
53
  "type": "module",
59
54
  "exports": {
60
55
  "./package.json": {
@@ -62,27 +57,21 @@
62
57
  },
63
58
  ".": {
64
59
  "types": "./index.d.ts",
65
- "esm2020": "./esm2020/platform-server.mjs",
66
- "es2020": "./fesm2020/platform-server.mjs",
67
- "es2015": "./fesm2015/platform-server.mjs",
68
- "node": "./fesm2015/platform-server.mjs",
69
- "default": "./fesm2020/platform-server.mjs"
60
+ "esm2022": "./esm2022/platform-server.mjs",
61
+ "esm": "./esm2022/platform-server.mjs",
62
+ "default": "./fesm2022/platform-server.mjs"
70
63
  },
71
64
  "./init": {
72
65
  "types": "./init/index.d.ts",
73
- "esm2020": "./esm2020/init/init.mjs",
74
- "es2020": "./fesm2020/init.mjs",
75
- "es2015": "./fesm2015/init.mjs",
76
- "node": "./fesm2015/init.mjs",
77
- "default": "./fesm2020/init.mjs"
66
+ "esm2022": "./esm2022/init/init.mjs",
67
+ "esm": "./esm2022/init/init.mjs",
68
+ "default": "./fesm2022/init.mjs"
78
69
  },
79
70
  "./testing": {
80
71
  "types": "./testing/index.d.ts",
81
- "esm2020": "./esm2020/testing/testing.mjs",
82
- "es2020": "./fesm2020/testing.mjs",
83
- "es2015": "./fesm2015/testing.mjs",
84
- "node": "./fesm2015/testing.mjs",
85
- "default": "./fesm2020/testing.mjs"
72
+ "esm2022": "./esm2022/testing/testing.mjs",
73
+ "esm": "./esm2022/testing/testing.mjs",
74
+ "default": "./fesm2022/testing.mjs"
86
75
  }
87
76
  }
88
77
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v16.0.0-next.3
2
+ * @license Angular v16.0.0-next.5
3
3
  * (c) 2010-2022 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,125 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import { PlatformLocation, XhrFactory } from '@angular/common';
9
- import { HttpBackend, HttpHandler, ɵHttpInterceptorHandler as HttpInterceptorHandler } from '@angular/common/http';
10
- import { EnvironmentInjector, inject, Injectable } from '@angular/core';
11
- import { Observable } from 'rxjs';
12
- import * as xhr2 from 'xhr2';
13
- import { INITIAL_CONFIG } from './tokens';
14
- import * as i0 from "@angular/core";
15
- // @see https://www.w3.org/Protocols/HTTP/1.1/draft-ietf-http-v11-spec-01#URI-syntax
16
- const isAbsoluteUrl = /^[a-zA-Z\-\+.]+:\/\//;
17
- class ServerXhr {
18
- build() {
19
- return new xhr2.XMLHttpRequest();
20
- }
21
- }
22
- ServerXhr.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerXhr, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
23
- ServerXhr.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerXhr });
24
- export { ServerXhr };
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerXhr, decorators: [{
26
- type: Injectable
27
- }] });
28
- export class ZoneMacroTaskWrapper {
29
- wrap(request) {
30
- return new Observable((observer) => {
31
- let task = null;
32
- let scheduled = false;
33
- let sub = null;
34
- let savedResult = null;
35
- let savedError = null;
36
- const scheduleTask = (_task) => {
37
- task = _task;
38
- scheduled = true;
39
- const delegate = this.delegate(request);
40
- sub = delegate.subscribe(res => savedResult = res, err => {
41
- if (!scheduled) {
42
- throw new Error('An http observable was completed twice. This shouldn\'t happen, please file a bug.');
43
- }
44
- savedError = err;
45
- scheduled = false;
46
- task.invoke();
47
- }, () => {
48
- if (!scheduled) {
49
- throw new Error('An http observable was completed twice. This shouldn\'t happen, please file a bug.');
50
- }
51
- scheduled = false;
52
- task.invoke();
53
- });
54
- };
55
- const cancelTask = (_task) => {
56
- if (!scheduled) {
57
- return;
58
- }
59
- scheduled = false;
60
- if (sub) {
61
- sub.unsubscribe();
62
- sub = null;
63
- }
64
- };
65
- const onComplete = () => {
66
- if (savedError !== null) {
67
- observer.error(savedError);
68
- }
69
- else {
70
- observer.next(savedResult);
71
- observer.complete();
72
- }
73
- };
74
- // MockBackend for Http is synchronous, which means that if scheduleTask is by
75
- // scheduleMacroTask, the request will hit MockBackend and the response will be
76
- // sent, causing task.invoke() to be called.
77
- const _task = Zone.current.scheduleMacroTask('ZoneMacroTaskWrapper.subscribe', onComplete, {}, () => null, cancelTask);
78
- scheduleTask(_task);
79
- return () => {
80
- if (scheduled && task) {
81
- task.zone.cancelTask(task);
82
- scheduled = false;
83
- }
84
- if (sub) {
85
- sub.unsubscribe();
86
- sub = null;
87
- }
88
- };
89
- });
90
- }
91
- }
92
- export class ZoneClientBackend extends ZoneMacroTaskWrapper {
93
- constructor(backend, platformLocation, config) {
94
- super();
95
- this.backend = backend;
96
- this.platformLocation = platformLocation;
97
- this.config = config;
98
- }
99
- handle(request) {
100
- const { href, protocol, hostname, port } = this.platformLocation;
101
- if (this.config.useAbsoluteUrl && !isAbsoluteUrl.test(request.url) &&
102
- isAbsoluteUrl.test(href)) {
103
- const baseHref = this.platformLocation.getBaseHrefFromDOM() || href;
104
- const urlPrefix = `${protocol}//${hostname}` + (port ? `:${port}` : '');
105
- const baseUrl = new URL(baseHref, urlPrefix);
106
- const url = new URL(request.url, baseUrl);
107
- return this.wrap(request.clone({ url: url.toString() }));
108
- }
109
- return this.wrap(request);
110
- }
111
- delegate(request) {
112
- return this.backend.handle(request);
113
- }
114
- }
115
- export function zoneWrappedInterceptorHandler(platformLocation, config) {
116
- return new ZoneClientBackend(new HttpInterceptorHandler(inject(HttpBackend), inject(EnvironmentInjector)), platformLocation, config);
117
- }
118
- export const SERVER_HTTP_PROVIDERS = [
119
- { provide: XhrFactory, useClass: ServerXhr }, {
120
- provide: HttpHandler,
121
- useFactory: zoneWrappedInterceptorHandler,
122
- deps: [PlatformLocation, INITIAL_CONFIG]
123
- }
124
- ];
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BsYXRmb3JtLXNlcnZlci9zcmMvaHR0cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsVUFBVSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFDLFdBQVcsRUFBYSxXQUFXLEVBQWUsdUJBQXVCLElBQUksc0JBQXNCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN6SSxPQUFPLEVBQUMsbUJBQW1CLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBVyxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUMsVUFBVSxFQUF5QixNQUFNLE1BQU0sQ0FBQztBQUN4RCxPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUU3QixPQUFPLEVBQUMsY0FBYyxFQUFpQixNQUFNLFVBQVUsQ0FBQzs7QUFFeEQsb0ZBQW9GO0FBQ3BGLE1BQU0sYUFBYSxHQUFHLHNCQUFzQixDQUFDO0FBRTdDLE1BQ2EsU0FBUztJQUNwQixLQUFLO1FBQ0gsT0FBTyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNuQyxDQUFDOztpSEFIVSxTQUFTO3FIQUFULFNBQVM7U0FBVCxTQUFTO3NHQUFULFNBQVM7a0JBRHJCLFVBQVU7O0FBT1gsTUFBTSxPQUFnQixvQkFBb0I7SUFDeEMsSUFBSSxDQUFDLE9BQVU7UUFDYixPQUFPLElBQUksVUFBVSxDQUFDLENBQUMsUUFBcUIsRUFBRSxFQUFFO1lBQzlDLElBQUksSUFBSSxHQUFTLElBQUssQ0FBQztZQUN2QixJQUFJLFNBQVMsR0FBWSxLQUFLLENBQUM7WUFDL0IsSUFBSSxHQUFHLEdBQXNCLElBQUksQ0FBQztZQUNsQyxJQUFJLFdBQVcsR0FBUSxJQUFJLENBQUM7WUFDNUIsSUFBSSxVQUFVLEdBQVEsSUFBSSxDQUFDO1lBRTNC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TUFBTSxxQkFBcUIsR0FBZTtJQUMvQyxFQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBQyxFQUFFO1FBQzFDLE9BQU8sRUFBRSxXQUFXO1FBQ3BCLFVBQVUsRUFBRSw2QkFBNkI7UUFDekMsSUFBSSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsY0FBYyxDQUFDO0tBQ3pDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge1BsYXRmb3JtTG9jYXRpb24sIFhockZhY3Rvcnl9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0h0dHBCYWNrZW5kLCBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwUmVxdWVzdCwgybVIdHRwSW50ZXJjZXB0b3JIYW5kbGVyIGFzIEh0dHBJbnRlcmNlcHRvckhhbmRsZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7RW52aXJvbm1lbnRJbmplY3RvciwgaW5qZWN0LCBJbmplY3RhYmxlLCBQcm92aWRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGUsIE9ic2VydmVyLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0ICogYXMgeGhyMiBmcm9tICd4aHIyJztcblxuaW1wb3J0IHtJTklUSUFMX0NPTkZJRywgUGxhdGZvcm1Db25maWd9IGZyb20gJy4vdG9rZW5zJztcblxuLy8gQHNlZSBodHRwczovL3d3dy53My5vcmcvUHJvdG9jb2xzL0hUVFAvMS4xL2RyYWZ0LWlldGYtaHR0cC12MTEtc3BlYy0wMSNVUkktc3ludGF4XG5jb25zdCBpc0Fic29sdXRlVXJsID0gL15bYS16QS1aXFwtXFwrLl0rOlxcL1xcLy87XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTZXJ2ZXJYaHIgaW1wbGVtZW50cyBYaHJGYWN0b3J5IHtcbiAgYnVpbGQoKTogWE1MSHR0cFJlcXVlc3Qge1xuICAgIHJldHVybiBuZXcgeGhyMi5YTUxIdHRwUmVxdWVzdCgpO1xuICB9XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBab25lTWFjcm9UYXNrV3JhcHBlcjxTLCBSPiB7XG4gIHdyYXAocmVxdWVzdDogUyk6IE9ic2VydmFibGU8Uj4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgob2JzZXJ2ZXI6IE9ic2VydmVyPFI+KSA9PiB7XG4gICAgICBsZXQgdGFzazogVGFzayA9IG51bGwhO1xuICAgICAgbGV0IHNjaGVkdWxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgICAgbGV0IHN1YjogU3Vic2NyaXB0aW9ufG51bGwgPSBudWxsO1xuICAgICAgbGV0IHNhdmVkUmVzdWx0OiBhbnkgPSBudWxsO1xuICAgICAgbGV0IHNhdmVkRXJyb3I6IGFueSA9IG51bGw7XG5cbiAgICAgIGNvbnN0IHNjaGVkdWxlVGFzayA9IChfdGFzazogVGFzaykgPT4ge1xuICAgICAgICB0YXNrID0gX3Rhc2s7XG4gICAgICAgIHNjaGVkdWxlZCA9IHRydWU7XG5cbiAgICAgICAgY29uc3QgZGVsZWdhdGUgPSB0aGlzLmRlbGVnYXRlKHJlcXVlc3QpO1xuICAgICAgICBzdWIgPSBkZWxlZ2F0ZS5zdWJzY3JpYmUoXG4gICAgICAgICAgICByZXMgPT4gc2F2ZWRSZXN1bHQgPSByZXMsXG4gICAgICAgICAgICBlcnIgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXNjaGVkdWxlZCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgJ0FuIGh0dHAgb2JzZXJ2YWJsZSB3YXMgY29tcGxldGVkIHR3aWNlLiBUaGlzIHNob3VsZG5cXCd0IGhhcHBlbiwgcGxlYXNlIGZpbGUgYSBidWcuJyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgc2F2ZWRFcnJvciA9IGVycjtcbiAgICAgICAgICAgICAgc2NoZWR1bGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgIHRhc2suaW52b2tlKCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXNjaGVkdWxlZCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgJ0FuIGh0dHAgb2JzZXJ2YWJsZSB3YXMgY29tcGxldGVkIHR3aWNlLiBUaGlzIHNob3VsZG5cXCd0IGhhcHBlbiwgcGxlYXNlIGZpbGUgYSBidWcuJyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgc2NoZWR1bGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgIHRhc2suaW52b2tlKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IGNhbmNlbFRhc2sgPSAoX3Rhc2s6IFRhc2spID0+IHtcbiAgICAgICAgaWYgKCFzY2hlZHVsZWQpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc2NoZWR1bGVkID0gZmFsc2U7XG4gICAgICAgIGlmIChzdWIpIHtcbiAgICAgICAgICBzdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICBzdWIgPSBudWxsO1xuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICBjb25zdCBvbkNvbXBsZXRlID0gKCkgPT4ge1xuICAgICAgICBpZiAoc2F2ZWRFcnJvciAhPT0gbnVsbCkge1xuICAgICAgICAgIG9ic2VydmVyLmVycm9yKHNhdmVkRXJyb3IpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG9ic2VydmVyLm5leHQoc2F2ZWRSZXN1bHQpO1xuICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIC8vIE1vY2tCYWNrZW5kIGZvciBIdHRwIGlzIHN5bmNocm9ub3VzLCB3aGljaCBtZWFucyB0aGF0IGlmIHNjaGVkdWxlVGFzayBpcyBieVxuICAgICAgLy8gc2NoZWR1bGVNYWNyb1Rhc2ssIHRoZSByZXF1ZXN0IHdpbGwgaGl0IE1vY2tCYWNrZW5kIGFuZCB0aGUgcmVzcG9uc2Ugd2lsbCBiZVxuICAgICAgLy8gc2VudCwgY2F1c2luZyB0YXNrLmludm9rZSgpIHRvIGJlIGNhbGxlZC5cbiAgICAgIGNvbnN0IF90YXNrID0gWm9uZS5jdXJyZW50LnNjaGVkdWxlTWFjcm9UYXNrKFxuICAgICAgICAgICdab25lTWFjcm9UYXNrV3JhcHBlci5zdWJzY3JpYmUnLCBvbkNvbXBsZXRlLCB7fSwgKCkgPT4gbnVsbCwgY2FuY2VsVGFzayk7XG4gICAgICBzY2hlZHVsZVRhc2soX3Rhc2spO1xuXG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBpZiAoc2NoZWR1bGVkICYmIHRhc2spIHtcbiAgICAgICAgICB0YXNrLnpvbmUuY2FuY2VsVGFzayh0YXNrKTtcbiAgICAgICAgICBzY2hlZHVsZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3ViKSB7XG4gICAgICAgICAgc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgc3ViID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBkZWxlZ2F0ZShyZXF1ZXN0OiBTKTogT2JzZXJ2YWJsZTxSPjtcbn1cblxuZXhwb3J0IGNsYXNzIFpvbmVDbGllbnRCYWNrZW5kIGV4dGVuZHNcbiAgICBab25lTWFjcm9UYXNrV3JhcHBlcjxIdHRwUmVxdWVzdDxhbnk+LCBIdHRwRXZlbnQ8YW55Pj4gaW1wbGVtZW50cyBIdHRwQmFja2VuZCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBiYWNrZW5kOiBIdHRwQmFja2VuZCwgcHJpdmF0ZSBwbGF0Zm9ybUxvY2F0aW9uOiBQbGF0Zm9ybUxvY2F0aW9uLFxuICAgICAgcHJpdmF0ZSBjb25maWc6IFBsYXRmb3JtQ29uZmlnKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGhhbmRsZShyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+KTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIGNvbnN0IHtocmVmLCBwcm90b2NvbCwgaG9zdG5hbWUsIHBvcnR9ID0gdGhpcy5wbGF0Zm9ybUxvY2F0aW9uO1xuICAgIGlmICh0aGlzLmNvbmZpZy51c2VBYnNvbHV0ZVVybCAmJiAhaXNBYnNvbHV0ZVVybC50ZXN0KHJlcXVlc3QudXJsKSAmJlxuICAgICAgICBpc0Fic29sdXRlVXJsLnRlc3QoaHJlZikpIHtcbiAgICAgIGNvbnN0IGJhc2VIcmVmID0gdGhpcy5wbGF0Zm9ybUxvY2F0aW9uLmdldEJhc2VIcmVmRnJvbURPTSgpIHx8IGhyZWY7XG4gICAgICBjb25zdCB1cmxQcmVmaXggPSBgJHtwcm90b2NvbH0vLyR7aG9zdG5hbWV9YCArIChwb3J0ID8gYDoke3BvcnR9YCA6ICcnKTtcbiAgICAgIGNvbnN0IGJhc2VVcmwgPSBuZXcgVVJMKGJhc2VIcmVmLCB1cmxQcmVmaXgpO1xuICAgICAgY29uc3QgdXJsID0gbmV3IFVSTChyZXF1ZXN0LnVybCwgYmFzZVVybCk7XG4gICAgICByZXR1cm4gdGhpcy53cmFwKHJlcXVlc3QuY2xvbmUoe3VybDogdXJsLnRvU3RyaW5nKCl9KSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLndyYXAocmVxdWVzdCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZGVsZWdhdGUocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55Pik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kLmhhbmRsZShyZXF1ZXN0KTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gem9uZVdyYXBwZWRJbnRlcmNlcHRvckhhbmRsZXIoXG4gICAgcGxhdGZvcm1Mb2NhdGlvbjogUGxhdGZvcm1Mb2NhdGlvbiwgY29uZmlnOiBQbGF0Zm9ybUNvbmZpZykge1xuICByZXR1cm4gbmV3IFpvbmVDbGllbnRCYWNrZW5kKFxuICAgICAgbmV3IEh0dHBJbnRlcmNlcHRvckhhbmRsZXIoaW5qZWN0KEh0dHBCYWNrZW5kKSwgaW5qZWN0KEVudmlyb25tZW50SW5qZWN0b3IpKSxcbiAgICAgIHBsYXRmb3JtTG9jYXRpb24sIGNvbmZpZyk7XG59XG5cbmV4cG9ydCBjb25zdCBTRVJWRVJfSFRUUF9QUk9WSURFUlM6IFByb3ZpZGVyW10gPSBbXG4gIHtwcm92aWRlOiBYaHJGYWN0b3J5LCB1c2VDbGFzczogU2VydmVyWGhyfSwge1xuICAgIHByb3ZpZGU6IEh0dHBIYW5kbGVyLFxuICAgIHVzZUZhY3Rvcnk6IHpvbmVXcmFwcGVkSW50ZXJjZXB0b3JIYW5kbGVyLFxuICAgIGRlcHM6IFtQbGF0Zm9ybUxvY2F0aW9uLCBJTklUSUFMX0NPTkZJR11cbiAgfVxuXTtcbiJdfQ==
@@ -1,107 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import { ɵAnimationEngine } from '@angular/animations/browser';
9
- import { DOCUMENT, PlatformLocation, ViewportScroller, ɵgetDOM as getDOM, ɵNullViewportScroller as NullViewportScroller, ɵPLATFORM_SERVER_ID as PLATFORM_SERVER_ID } from '@angular/common';
10
- import { HttpClientModule } from '@angular/common/http';
11
- import { createPlatformFactory, Injector, NgModule, NgZone, Optional, PLATFORM_ID, PLATFORM_INITIALIZER, platformCore, RendererFactory2, Testability, ɵALLOW_MULTIPLE_PLATFORMS as ALLOW_MULTIPLE_PLATFORMS, ɵsetDocument, ɵTESTABILITY as TESTABILITY } from '@angular/core';
12
- import { BrowserModule, EVENT_MANAGER_PLUGINS, ɵSharedStylesHost as SharedStylesHost } from '@angular/platform-browser';
13
- import { ɵplatformCoreDynamic as platformCoreDynamic } from '@angular/platform-browser-dynamic';
14
- import { NoopAnimationsModule, ɵAnimationRendererFactory } from '@angular/platform-browser/animations';
15
- import { DominoAdapter, parseDocument } from './domino_adapter';
16
- import { SERVER_HTTP_PROVIDERS } from './http';
17
- import { ServerPlatformLocation } from './location';
18
- import { PlatformState } from './platform_state';
19
- import { ServerEventManagerPlugin } from './server_events';
20
- import { ServerRendererFactory2 } from './server_renderer';
21
- import { ServerStylesHost } from './styles_host';
22
- import { INITIAL_CONFIG } from './tokens';
23
- import { TRANSFER_STATE_SERIALIZATION_PROVIDERS } from './transfer_state';
24
- import * as i0 from "@angular/core";
25
- export const INTERNAL_SERVER_PLATFORM_PROVIDERS = [
26
- { provide: DOCUMENT, useFactory: _document, deps: [Injector] },
27
- { provide: PLATFORM_ID, useValue: PLATFORM_SERVER_ID },
28
- { provide: PLATFORM_INITIALIZER, useFactory: initDominoAdapter, multi: true }, {
29
- provide: PlatformLocation,
30
- useClass: ServerPlatformLocation,
31
- deps: [DOCUMENT, [Optional, INITIAL_CONFIG]]
32
- },
33
- { provide: PlatformState, deps: [DOCUMENT] },
34
- // Add special provider that allows multiple instances of platformServer* to be created.
35
- { provide: ALLOW_MULTIPLE_PLATFORMS, useValue: true }
36
- ];
37
- function initDominoAdapter() {
38
- return () => {
39
- DominoAdapter.makeCurrent();
40
- };
41
- }
42
- export function instantiateServerRendererFactory(renderer, engine, zone) {
43
- return new ɵAnimationRendererFactory(renderer, engine, zone);
44
- }
45
- export const SERVER_RENDER_PROVIDERS = [
46
- ServerRendererFactory2,
47
- {
48
- provide: RendererFactory2,
49
- useFactory: instantiateServerRendererFactory,
50
- deps: [ServerRendererFactory2, ɵAnimationEngine, NgZone]
51
- },
52
- ServerStylesHost,
53
- { provide: SharedStylesHost, useExisting: ServerStylesHost },
54
- { provide: EVENT_MANAGER_PLUGINS, multi: true, useClass: ServerEventManagerPlugin },
55
- ];
56
- export const PLATFORM_SERVER_PROVIDERS = [
57
- TRANSFER_STATE_SERIALIZATION_PROVIDERS,
58
- SERVER_RENDER_PROVIDERS,
59
- SERVER_HTTP_PROVIDERS,
60
- { provide: Testability, useValue: null },
61
- { provide: TESTABILITY, useValue: null },
62
- { provide: ViewportScroller, useClass: NullViewportScroller },
63
- ];
64
- /**
65
- * The ng module for the server.
66
- *
67
- * @publicApi
68
- */
69
- class ServerModule {
70
- }
71
- ServerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
72
- ServerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerModule, imports: [HttpClientModule, NoopAnimationsModule], exports: [BrowserModule] });
73
- ServerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerModule, providers: PLATFORM_SERVER_PROVIDERS, imports: [HttpClientModule, NoopAnimationsModule, BrowserModule] });
74
- export { ServerModule };
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerModule, decorators: [{
76
- type: NgModule,
77
- args: [{
78
- exports: [BrowserModule],
79
- imports: [HttpClientModule, NoopAnimationsModule],
80
- providers: PLATFORM_SERVER_PROVIDERS,
81
- }]
82
- }] });
83
- function _document(injector) {
84
- const config = injector.get(INITIAL_CONFIG, null);
85
- let document;
86
- if (config && config.document) {
87
- document = typeof config.document === 'string' ? parseDocument(config.document, config.url) :
88
- config.document;
89
- }
90
- else {
91
- document = getDOM().createHtmlDocument();
92
- }
93
- // Tell ivy about the global document
94
- ɵsetDocument(document);
95
- return document;
96
- }
97
- /**
98
- * @publicApi
99
- */
100
- export const platformServer = createPlatformFactory(platformCore, 'server', INTERNAL_SERVER_PLATFORM_PROVIDERS);
101
- /**
102
- * The server platform that supports the runtime compiler.
103
- *
104
- * @publicApi
105
- */
106
- export const platformDynamicServer = createPlatformFactory(platformCoreDynamic, 'serverDynamic', INTERNAL_SERVER_PLATFORM_PROVIDERS);
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGxhdGZvcm0tc2VydmVyL3NyYy9zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDN0QsT0FBTyxFQUFDLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLElBQUksTUFBTSxFQUFFLHFCQUFxQixJQUFJLG9CQUFvQixFQUFFLG1CQUFtQixJQUFJLGtCQUFrQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUwsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFDLHFCQUFxQixFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsWUFBWSxFQUF5QixnQkFBZ0IsRUFBa0IsV0FBVyxFQUFFLHlCQUF5QixJQUFJLHdCQUF3QixFQUFFLFlBQVksRUFBRSxZQUFZLElBQUksV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ25ULE9BQU8sRUFBQyxhQUFhLEVBQUUscUJBQXFCLEVBQUUsaUJBQWlCLElBQUksZ0JBQWdCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUN0SCxPQUFPLEVBQUMsb0JBQW9CLElBQUksbUJBQW1CLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUM5RixPQUFPLEVBQUMsb0JBQW9CLEVBQUUseUJBQXlCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUVyRyxPQUFPLEVBQUMsYUFBYSxFQUFFLGFBQWEsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzlELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUM3QyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxZQUFZ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O29CQUNqRCxTQUFTLEVBQUUseUJBQXlCO2lCQUNyQzs7QUFJRCxTQUFTLFNBQVMsQ0FBQyxRQUFrQjtJQUNuQyxNQUFNLE1BQU0sR0FBd0IsUUFBUSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdkUsSUFBSSxRQUFrQixDQUFDO0lBQ3ZCLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUU7UUFDN0IsUUFBUSxHQUFHLE9BQU8sTUFBTSxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzVDLE1BQU0sQ0FBQyxRQUFRLENBQUM7S0FDbEU7U0FBTTtRQUNMLFFBQVEsR0FBRyxNQUFNLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0tBQzFDO0lBQ0QscUNBQXFDO0lBQ3JDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QixPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQ3ZCLHFCQUFxQixDQUFDLFlBQVksRUFBRSxRQUFRLEVBQUUsa0NBQWtDLENBQUMsQ0FBQztBQUV0Rjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQzlCLHFCQUFxQixDQUFDLG1CQUFtQixFQUFFLGVBQWUsRUFBRSxrQ0FBa0MsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7ybVBbmltYXRpb25FbmdpbmV9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMvYnJvd3Nlcic7XG5pbXBvcnQge0RPQ1VNRU5ULCBQbGF0Zm9ybUxvY2F0aW9uLCBWaWV3cG9ydFNjcm9sbGVyLCDJtWdldERPTSBhcyBnZXRET00sIMm1TnVsbFZpZXdwb3J0U2Nyb2xsZXIgYXMgTnVsbFZpZXdwb3J0U2Nyb2xsZXIsIMm1UExBVEZPUk1fU0VSVkVSX0lEIGFzIFBMQVRGT1JNX1NFUlZFUl9JRH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7SHR0cENsaWVudE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtjcmVhdGVQbGF0Zm9ybUZhY3RvcnksIEluamVjdG9yLCBOZ01vZHVsZSwgTmdab25lLCBPcHRpb25hbCwgUExBVEZPUk1fSUQsIFBMQVRGT1JNX0lOSVRJQUxJWkVSLCBwbGF0Zm9ybUNvcmUsIFBsYXRmb3JtUmVmLCBQcm92aWRlciwgUmVuZGVyZXJGYWN0b3J5MiwgU3RhdGljUHJvdmlkZXIsIFRlc3RhYmlsaXR5LCDJtUFMTE9XX01VTFRJUExFX1BMQVRGT1JNUyBhcyBBTExPV19NVUxUSVBMRV9QTEFURk9STVMsIMm1c2V0RG9jdW1lbnQsIMm1VEVTVEFCSUxJVFkgYXMgVEVTVEFCSUxJVFl9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCcm93c2VyTW9kdWxlLCBFVkVOVF9NQU5BR0VSX1BMVUdJTlMsIMm1U2hhcmVkU3R5bGVzSG9zdCBhcyBTaGFyZWRTdHlsZXNIb3N0fSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7ybVwbGF0Zm9ybUNvcmVEeW5hbWljIGFzIHBsYXRmb3JtQ29yZUR5bmFtaWN9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXItZHluYW1pYyc7XG5pbXBvcnQge05vb3BBbmltYXRpb25zTW9kdWxlLCDJtUFuaW1hdGlvblJlbmRlcmVyRmFjdG9yeX0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zJztcblxuaW1wb3J0IHtEb21pbm9BZGFwdGVyLCBwYXJzZURvY3VtZW50fSBmcm9tICcuL2RvbWlub19hZGFwdGVyJztcbmltcG9ydCB7U0VSVkVSX0hUVFBfUFJPVklERVJTfSBmcm9tICcuL2h0dHAnO1xuaW1wb3J0IHtTZXJ2ZXJQbGF0Zm9ybUxvY2F0aW9ufSBmcm9tICcuL2xvY2F0aW9uJztcbmltcG9ydCB7UGxhdGZvcm1TdGF0ZX0gZnJvbSAnLi9wbGF0Zm9ybV9zdGF0ZSc7XG5pbXBvcnQge1NlcnZlckV2ZW50TWFuYWdlclBsdWdpbn0gZnJvbSAnLi9zZXJ2ZXJfZXZlbnRzJztcbmltcG9ydCB7U2VydmVyUmVuZGVyZXJGYWN0b3J5Mn0gZnJvbSAnLi9zZXJ2ZXJfcmVuZGVyZXInO1xuaW1wb3J0IHtTZXJ2ZXJTdHlsZXNIb3N0fSBmcm9tICcuL3N0eWxlc19ob3N0JztcbmltcG9ydCB7SU5JVElBTF9DT05GSUcsIFBsYXRmb3JtQ29uZmlnfSBmcm9tICcuL3Rva2Vucyc7XG5pbXBvcnQge1RSQU5TRkVSX1NUQVRFX1NFUklBTElaQVRJT05fUFJPVklERVJTfSBmcm9tICcuL3RyYW5zZmVyX3N0YXRlJztcblxuZXhwb3J0IGNvbnN0IElOVEVSTkFMX1NFUlZFUl9QTEFURk9STV9QUk9WSURFUlM6IFN0YXRpY1Byb3ZpZGVyW10gPSBbXG4gIHtwcm92aWRlOiBET0NVTUVOVCwgdXNlRmFjdG9yeTogX2RvY3VtZW50LCBkZXBzOiBbSW5qZWN0b3JdfSxcbiAge3Byb3ZpZGU6IFBMQVRGT1JNX0lELCB1c2VWYWx1ZTogUExBVEZPUk1fU0VSVkVSX0lEfSxcbiAge3Byb3ZpZGU6IFBMQVRGT1JNX0lOSVRJQUxJWkVSLCB1c2VGYWN0b3J5OiBpbml0RG9taW5vQWRhcHRlciwgbXVsdGk6IHRydWV9LCB7XG4gICAgcHJvdmlkZTogUGxhdGZvcm1Mb2NhdGlvbixcbiAgICB1c2VDbGFzczogU2VydmVyUGxhdGZvcm1Mb2NhdGlvbixcbiAgICBkZXBzOiBbRE9DVU1FTlQsIFtPcHRpb25hbCwgSU5JVElBTF9DT05GSUddXVxuICB9LFxuICB7cHJvdmlkZTogUGxhdGZvcm1TdGF0ZSwgZGVwczogW0RPQ1VNRU5UXX0sXG4gIC8vIEFkZCBzcGVjaWFsIHByb3ZpZGVyIHRoYXQgYWxsb3dzIG11bHRpcGxlIGluc3RhbmNlcyBvZiBwbGF0Zm9ybVNlcnZlciogdG8gYmUgY3JlYXRlZC5cbiAge3Byb3ZpZGU6IEFMTE9XX01VTFRJUExFX1BMQVRGT1JNUywgdXNlVmFsdWU6IHRydWV9XG5dO1xuXG5mdW5jdGlvbiBpbml0RG9taW5vQWRhcHRlcigpIHtcbiAgcmV0dXJuICgpID0+IHtcbiAgICBEb21pbm9BZGFwdGVyLm1ha2VDdXJyZW50KCk7XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnN0YW50aWF0ZVNlcnZlclJlbmRlcmVyRmFjdG9yeShcbiAgICByZW5kZXJlcjogUmVuZGVyZXJGYWN0b3J5MiwgZW5naW5lOiDJtUFuaW1hdGlvbkVuZ2luZSwgem9uZTogTmdab25lKSB7XG4gIHJldHVybiBuZXcgybVBbmltYXRpb25SZW5kZXJlckZhY3RvcnkocmVuZGVyZXIsIGVuZ2luZSwgem9uZSk7XG59XG5cbmV4cG9ydCBjb25zdCBTRVJWRVJfUkVOREVSX1BST1ZJREVSUzogUHJvdmlkZXJbXSA9IFtcbiAgU2VydmVyUmVuZGVyZXJGYWN0b3J5MixcbiAge1xuICAgIHByb3ZpZGU6IFJlbmRlcmVyRmFjdG9yeTIsXG4gICAgdXNlRmFjdG9yeTogaW5zdGFudGlhdGVTZXJ2ZXJSZW5kZXJlckZhY3RvcnksXG4gICAgZGVwczogW1NlcnZlclJlbmRlcmVyRmFjdG9yeTIsIMm1QW5pbWF0aW9uRW5naW5lLCBOZ1pvbmVdXG4gIH0sXG4gIFNlcnZlclN0eWxlc0hvc3QsXG4gIHtwcm92aWRlOiBTaGFyZWRTdHlsZXNIb3N0LCB1c2VFeGlzdGluZzogU2VydmVyU3R5bGVzSG9zdH0sXG4gIHtwcm92aWRlOiBFVkVOVF9NQU5BR0VSX1BMVUdJTlMsIG11bHRpOiB0cnVlLCB1c2VDbGFzczogU2VydmVyRXZlbnRNYW5hZ2VyUGx1Z2lufSxcbl07XG5cbmV4cG9ydCBjb25zdCBQTEFURk9STV9TRVJWRVJfUFJPVklERVJTOiBQcm92aWRlcltdID0gW1xuICBUUkFOU0ZFUl9TVEFURV9TRVJJQUxJWkFUSU9OX1BST1ZJREVSUyxcbiAgU0VSVkVSX1JFTkRFUl9QUk9WSURFUlMsXG4gIFNFUlZFUl9IVFRQX1BST1ZJREVSUyxcbiAge3Byb3ZpZGU6IFRlc3RhYmlsaXR5LCB1c2VWYWx1ZTogbnVsbH0sICAvLyBLZWVwIGZvciBiYWNrd2FyZHMtY29tcGF0aWJpbGl0eS5cbiAge3Byb3ZpZGU6IFRFU1RBQklMSVRZLCB1c2VWYWx1ZTogbnVsbH0sXG4gIHtwcm92aWRlOiBWaWV3cG9ydFNjcm9sbGVyLCB1c2VDbGFzczogTnVsbFZpZXdwb3J0U2Nyb2xsZXJ9LFxuXTtcblxuLyoqXG4gKiBUaGUgbmcgbW9kdWxlIGZvciB0aGUgc2VydmVyLlxuICpcbiAqIEBwdWJsaWNBcGlcbiAqL1xuQE5nTW9kdWxlKHtcbiAgZXhwb3J0czogW0Jyb3dzZXJNb2R1bGVdLFxuICBpbXBvcnRzOiBbSHR0cENsaWVudE1vZHVsZSwgTm9vcEFuaW1hdGlvbnNNb2R1bGVdLFxuICBwcm92aWRlcnM6IFBMQVRGT1JNX1NFUlZFUl9QUk9WSURFUlMsXG59KVxuZXhwb3J0IGNsYXNzIFNlcnZlck1vZHVsZSB7XG59XG5cbmZ1bmN0aW9uIF9kb2N1bWVudChpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgY29uc3QgY29uZmlnOiBQbGF0Zm9ybUNvbmZpZ3xudWxsID0gaW5qZWN0b3IuZ2V0KElOSVRJQUxfQ09ORklHLCBudWxsKTtcbiAgbGV0IGRvY3VtZW50OiBEb2N1bWVudDtcbiAgaWYgKGNvbmZpZyAmJiBjb25maWcuZG9jdW1lbnQpIHtcbiAgICBkb2N1bWVudCA9IHR5cGVvZiBjb25maWcuZG9jdW1lbnQgPT09ICdzdHJpbmcnID8gcGFyc2VEb2N1bWVudChjb25maWcuZG9jdW1lbnQsIGNvbmZpZy51cmwpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlnLmRvY3VtZW50O1xuICB9IGVsc2Uge1xuICAgIGRvY3VtZW50ID0gZ2V0RE9NKCkuY3JlYXRlSHRtbERvY3VtZW50KCk7XG4gIH1cbiAgLy8gVGVsbCBpdnkgYWJvdXQgdGhlIGdsb2JhbCBkb2N1bWVudFxuICDJtXNldERvY3VtZW50KGRvY3VtZW50KTtcbiAgcmV0dXJuIGRvY3VtZW50O1xufVxuXG4vKipcbiAqIEBwdWJsaWNBcGlcbiAqL1xuZXhwb3J0IGNvbnN0IHBsYXRmb3JtU2VydmVyOiAoZXh0cmFQcm92aWRlcnM/OiBTdGF0aWNQcm92aWRlcltdfHVuZGVmaW5lZCkgPT4gUGxhdGZvcm1SZWYgPVxuICAgIGNyZWF0ZVBsYXRmb3JtRmFjdG9yeShwbGF0Zm9ybUNvcmUsICdzZXJ2ZXInLCBJTlRFUk5BTF9TRVJWRVJfUExBVEZPUk1fUFJPVklERVJTKTtcblxuLyoqXG4gKiBUaGUgc2VydmVyIHBsYXRmb3JtIHRoYXQgc3VwcG9ydHMgdGhlIHJ1bnRpbWUgY29tcGlsZXIuXG4gKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgY29uc3QgcGxhdGZvcm1EeW5hbWljU2VydmVyID1cbiAgICBjcmVhdGVQbGF0Zm9ybUZhY3RvcnkocGxhdGZvcm1Db3JlRHluYW1pYywgJ3NlcnZlckR5bmFtaWMnLCBJTlRFUk5BTF9TRVJWRVJfUExBVEZPUk1fUFJPVklERVJTKTtcbiJdfQ==
@@ -1,48 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import { DOCUMENT, ɵgetDOM as getDOM } from '@angular/common';
9
- import { APP_ID, Inject, Injectable } from '@angular/core';
10
- import { ɵSharedStylesHost as SharedStylesHost } from '@angular/platform-browser';
11
- import * as i0 from "@angular/core";
12
- class ServerStylesHost extends SharedStylesHost {
13
- constructor(doc, appId) {
14
- super();
15
- this.appId = appId;
16
- this.head = null;
17
- this._styleNodes = new Set();
18
- this.head = doc.getElementsByTagName('head')[0];
19
- }
20
- onStyleAdded(style) {
21
- const adapter = getDOM();
22
- const el = adapter.createElement('style');
23
- el.textContent = style;
24
- if (!!this.appId) {
25
- el.setAttribute('ng-app', this.appId);
26
- }
27
- this.head.appendChild(el);
28
- this._styleNodes.add(el);
29
- }
30
- ngOnDestroy() {
31
- this._styleNodes.forEach(styleNode => styleNode.remove());
32
- this._styleNodes.clear();
33
- super.ngOnDestroy();
34
- }
35
- }
36
- ServerStylesHost.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerStylesHost, deps: [{ token: DOCUMENT }, { token: APP_ID }], target: i0.ɵɵFactoryTarget.Injectable });
37
- ServerStylesHost.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerStylesHost });
38
- export { ServerStylesHost };
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerStylesHost, decorators: [{
40
- type: Injectable
41
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
42
- type: Inject,
43
- args: [DOCUMENT]
44
- }] }, { type: undefined, decorators: [{
45
- type: Inject,
46
- args: [APP_ID]
47
- }] }]; } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzX2hvc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS1zZXJ2ZXIvc3JjL3N0eWxlc19ob3N0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBQyxRQUFRLEVBQUUsT0FBTyxJQUFJLE1BQU0sRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzVELE9BQU8sRUFBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUMsaUJBQWlCLElBQUksZ0JBQWdCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQzs7QUFFaEYsTUFDYSxnQkFBaUIsU0FBUSxnQkFBZ0I7SUFJcEQsWUFBOEIsR0FBUSxFQUEwQixLQUFhO1FBQzNFLEtBQUssRUFBRSxDQUFDO1FBRHNELFVBQUssR0FBTCxLQUFLLENBQVE7UUFIckUsU0FBSSxHQUFRLElBQUksQ0FBQztRQUNqQixnQkFBVyxHQUFHLElBQUksR0FBRyxFQUFlLENBQUM7UUFJM0MsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVRLFlBQVksQ0FBQyxLQUFhO1FBQ2pDLE1BQU0sT0FBTyxHQUFHLE1BQU0sRUFBRSxDQUFDO1FBQ3pCLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUMsRUFBRSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNoQixFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDdkM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRVEsV0FBVztRQUNsQixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDekIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7O3dIQXhCVSxnQkFBZ0Isa0JBSVAsUUFBUSxhQUFvQixNQUFNOzRIQUozQyxnQkFBZ0I7U0FBaEIsZ0JBQWdCO3NHQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVU7OzBCQUtJLE1BQU07MkJBQUMsUUFBUTs7MEJBQWEsTUFBTTsyQkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7RE9DVU1FTlQsIMm1Z2V0RE9NIGFzIGdldERPTX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7QVBQX0lELCBJbmplY3QsIEluamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHvJtVNoYXJlZFN0eWxlc0hvc3QgYXMgU2hhcmVkU3R5bGVzSG9zdH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTZXJ2ZXJTdHlsZXNIb3N0IGV4dGVuZHMgU2hhcmVkU3R5bGVzSG9zdCB7XG4gIHByaXZhdGUgaGVhZDogYW55ID0gbnVsbDtcbiAgcHJpdmF0ZSBfc3R5bGVOb2RlcyA9IG5ldyBTZXQ8SFRNTEVsZW1lbnQ+KCk7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChET0NVTUVOVCkgZG9jOiBhbnksIEBJbmplY3QoQVBQX0lEKSBwcml2YXRlIGFwcElkOiBzdHJpbmcpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuaGVhZCA9IGRvYy5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdO1xuICB9XG5cbiAgb3ZlcnJpZGUgb25TdHlsZUFkZGVkKHN0eWxlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBhZGFwdGVyID0gZ2V0RE9NKCk7XG4gICAgY29uc3QgZWwgPSBhZGFwdGVyLmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XG4gICAgZWwudGV4dENvbnRlbnQgPSBzdHlsZTtcbiAgICBpZiAoISF0aGlzLmFwcElkKSB7XG4gICAgICBlbC5zZXRBdHRyaWJ1dGUoJ25nLWFwcCcsIHRoaXMuYXBwSWQpO1xuICAgIH1cbiAgICB0aGlzLmhlYWQuYXBwZW5kQ2hpbGQoZWwpO1xuICAgIHRoaXMuX3N0eWxlTm9kZXMuYWRkKGVsKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX3N0eWxlTm9kZXMuZm9yRWFjaChzdHlsZU5vZGUgPT4gc3R5bGVOb2RlLnJlbW92ZSgpKTtcbiAgICB0aGlzLl9zdHlsZU5vZGVzLmNsZWFyKCk7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgfVxufVxuIl19
@@ -1,60 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import { DOCUMENT } from '@angular/common';
9
- import { APP_ID, NgModule, ɵescapeTransferStateContent as escapeTransferStateContent } from '@angular/core';
10
- import { TransferState } from '@angular/platform-browser';
11
- import { BEFORE_APP_SERIALIZED } from './tokens';
12
- import * as i0 from "@angular/core";
13
- export const TRANSFER_STATE_SERIALIZATION_PROVIDERS = [{
14
- provide: BEFORE_APP_SERIALIZED,
15
- useFactory: serializeTransferStateFactory,
16
- deps: [DOCUMENT, APP_ID, TransferState],
17
- multi: true,
18
- }];
19
- function serializeTransferStateFactory(doc, appId, transferStore) {
20
- return () => {
21
- // The `.toJSON` here causes the `onSerialize` callbacks to be called.
22
- // These callbacks can be used to provide the value for a given key.
23
- const content = transferStore.toJson();
24
- if (transferStore.isEmpty) {
25
- // The state is empty, nothing to transfer,
26
- // avoid creating an extra `<script>` tag in this case.
27
- return;
28
- }
29
- const script = doc.createElement('script');
30
- script.id = appId + '-state';
31
- script.setAttribute('type', 'application/json');
32
- script.textContent = escapeTransferStateContent(content);
33
- // It is intentional that we add the script at the very bottom. Angular CLI script tags for
34
- // bundles are always `type="module"`. These are deferred by default and cause the transfer
35
- // transfer data to be queried only after the browser has finished parsing the DOM.
36
- doc.body.appendChild(script);
37
- };
38
- }
39
- /**
40
- * NgModule to install on the server side while using the `TransferState` to transfer state from
41
- * server to client.
42
- *
43
- * Note: this module is not needed if the `renderApplication` function is used.
44
- * The `renderApplication` makes all providers from this module available in the application.
45
- *
46
- * @publicApi
47
- * @deprecated no longer needed, you can inject the `TransferState` in an app without providing
48
- * this module.
49
- */
50
- class ServerTransferStateModule {
51
- }
52
- ServerTransferStateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerTransferStateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
53
- ServerTransferStateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerTransferStateModule });
54
- ServerTransferStateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerTransferStateModule });
55
- export { ServerTransferStateModule };
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-next.3", ngImport: i0, type: ServerTransferStateModule, decorators: [{
57
- type: NgModule,
58
- args: [{}]
59
- }] });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJfc3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS1zZXJ2ZXIvc3JjL3RyYW5zZmVyX3N0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsTUFBTSxFQUFFLFFBQVEsRUFBWSwyQkFBMkIsSUFBSSwwQkFBMEIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwSCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFeEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sVUFBVSxDQUFDOztBQUUvQyxNQUFNLENBQUMsTUFBTSxzQ0FBc0MsR0FBZSxDQUFDO1FBQ2pFLE9BQU8sRUFBRSxxQkFBcUI7UUFDOUIsVUFBVSxFQUFFLDZCQUE2QjtRQUN6QyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLGFBQWEsQ0FBQztRQUN2QyxLQUFLLEVBQUUsSUFBSTtLQUNaLENBQUMsQ0FBQztBQUVILFNBQVMsNkJBQTZCLENBQUMsR0FBYSxFQUFFLEtBQWEsRUFBRSxhQUE0QjtJQUMvRixPQUFPLEdBQUcsRUFBRTtRQUNWLHNFQUFzRTtRQUN0RSxvRUFBb0U7UUFDcEUsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBRXZDLElBQUksYUFBYSxDQUFDLE9BQU8sRUFBRTtZQUN6QiwyQ0FBMkM7WUFDM0MsdURBQXVEO1lBQ3ZELE9BQU87U0FDUjtRQUVELE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0MsTUFBTSxDQUFDLEVBQUUsR0FBRyxLQUFLLEdBQUcsUUFBUSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDaEQsTUFBTSxDQUFDLFdBQVcsR0FBRywwQkFBMEIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV6RCwyRkFBMkY7UUFDM0YsMkZBQTJGO1FBQzNGLG1GQUFtRjtRQUNuRixHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvQixDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQ2EseUJBQXlCOztpSUFBekIseUJBQXlCO2tJQUF6Qix5QkFBeUI7a0lBQXpCLHlCQUF5QjtTQUF6Qix5QkFBeUI7c0dBQXpCLHlCQUF5QjtrQkFEckMsUUFBUTttQkFBQyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0FQUF9JRCwgTmdNb2R1bGUsIFByb3ZpZGVyLCDJtWVzY2FwZVRyYW5zZmVyU3RhdGVDb250ZW50IGFzIGVzY2FwZVRyYW5zZmVyU3RhdGVDb250ZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHJhbnNmZXJTdGF0ZX0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmltcG9ydCB7QkVGT1JFX0FQUF9TRVJJQUxJWkVEfSBmcm9tICcuL3Rva2Vucyc7XG5cbmV4cG9ydCBjb25zdCBUUkFOU0ZFUl9TVEFURV9TRVJJQUxJWkFUSU9OX1BST1ZJREVSUzogUHJvdmlkZXJbXSA9IFt7XG4gIHByb3ZpZGU6IEJFRk9SRV9BUFBfU0VSSUFMSVpFRCxcbiAgdXNlRmFjdG9yeTogc2VyaWFsaXplVHJhbnNmZXJTdGF0ZUZhY3RvcnksXG4gIGRlcHM6IFtET0NVTUVOVCwgQVBQX0lELCBUcmFuc2ZlclN0YXRlXSxcbiAgbXVsdGk6IHRydWUsXG59XTtcblxuZnVuY3Rpb24gc2VyaWFsaXplVHJhbnNmZXJTdGF0ZUZhY3RvcnkoZG9jOiBEb2N1bWVudCwgYXBwSWQ6IHN0cmluZywgdHJhbnNmZXJTdG9yZTogVHJhbnNmZXJTdGF0ZSkge1xuICByZXR1cm4gKCkgPT4ge1xuICAgIC8vIFRoZSBgLnRvSlNPTmAgaGVyZSBjYXVzZXMgdGhlIGBvblNlcmlhbGl6ZWAgY2FsbGJhY2tzIHRvIGJlIGNhbGxlZC5cbiAgICAvLyBUaGVzZSBjYWxsYmFja3MgY2FuIGJlIHVzZWQgdG8gcHJvdmlkZSB0aGUgdmFsdWUgZm9yIGEgZ2l2ZW4ga2V5LlxuICAgIGNvbnN0IGNvbnRlbnQgPSB0cmFuc2ZlclN0b3JlLnRvSnNvbigpO1xuXG4gICAgaWYgKHRyYW5zZmVyU3RvcmUuaXNFbXB0eSkge1xuICAgICAgLy8gVGhlIHN0YXRlIGlzIGVtcHR5LCBub3RoaW5nIHRvIHRyYW5zZmVyLFxuICAgICAgLy8gYXZvaWQgY3JlYXRpbmcgYW4gZXh0cmEgYDxzY3JpcHQ+YCB0YWcgaW4gdGhpcyBjYXNlLlxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHNjcmlwdCA9IGRvYy5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICBzY3JpcHQuaWQgPSBhcHBJZCArICctc3RhdGUnO1xuICAgIHNjcmlwdC5zZXRBdHRyaWJ1dGUoJ3R5cGUnLCAnYXBwbGljYXRpb24vanNvbicpO1xuICAgIHNjcmlwdC50ZXh0Q29udGVudCA9IGVzY2FwZVRyYW5zZmVyU3RhdGVDb250ZW50KGNvbnRlbnQpO1xuXG4gICAgLy8gSXQgaXMgaW50ZW50aW9uYWwgdGhhdCB3ZSBhZGQgdGhlIHNjcmlwdCBhdCB0aGUgdmVyeSBib3R0b20uIEFuZ3VsYXIgQ0xJIHNjcmlwdCB0YWdzIGZvclxuICAgIC8vIGJ1bmRsZXMgYXJlIGFsd2F5cyBgdHlwZT1cIm1vZHVsZVwiYC4gVGhlc2UgYXJlIGRlZmVycmVkIGJ5IGRlZmF1bHQgYW5kIGNhdXNlIHRoZSB0cmFuc2ZlclxuICAgIC8vIHRyYW5zZmVyIGRhdGEgdG8gYmUgcXVlcmllZCBvbmx5IGFmdGVyIHRoZSBicm93c2VyIGhhcyBmaW5pc2hlZCBwYXJzaW5nIHRoZSBET00uXG4gICAgZG9jLmJvZHkuYXBwZW5kQ2hpbGQoc2NyaXB0KTtcbiAgfTtcbn1cblxuLyoqXG4gKiBOZ01vZHVsZSB0byBpbnN0YWxsIG9uIHRoZSBzZXJ2ZXIgc2lkZSB3aGlsZSB1c2luZyB0aGUgYFRyYW5zZmVyU3RhdGVgIHRvIHRyYW5zZmVyIHN0YXRlIGZyb21cbiAqIHNlcnZlciB0byBjbGllbnQuXG4gKlxuICogTm90ZTogdGhpcyBtb2R1bGUgaXMgbm90IG5lZWRlZCBpZiB0aGUgYHJlbmRlckFwcGxpY2F0aW9uYCBmdW5jdGlvbiBpcyB1c2VkLlxuICogVGhlIGByZW5kZXJBcHBsaWNhdGlvbmAgbWFrZXMgYWxsIHByb3ZpZGVycyBmcm9tIHRoaXMgbW9kdWxlIGF2YWlsYWJsZSBpbiB0aGUgYXBwbGljYXRpb24uXG4gKlxuICogQHB1YmxpY0FwaVxuICogQGRlcHJlY2F0ZWQgbm8gbG9uZ2VyIG5lZWRlZCwgeW91IGNhbiBpbmplY3QgdGhlIGBUcmFuc2ZlclN0YXRlYCBpbiBhbiBhcHAgd2l0aG91dCBwcm92aWRpbmdcbiAqICAgICB0aGlzIG1vZHVsZS5cbiAqL1xuQE5nTW9kdWxlKHt9KVxuZXhwb3J0IGNsYXNzIFNlcnZlclRyYW5zZmVyU3RhdGVNb2R1bGUge1xufVxuIl19