@deepkit/angular-ssr 1.0.12 → 1.0.18
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.
- package/CHANGELOG.md +10 -0
- package/dist/cjs/index.js +9 -9
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/src/angular.d.ts +2 -10
- package/dist/cjs/src/angular.js +15 -17
- package/dist/cjs/src/angular.js.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/src/angular.d.ts +2 -10
- package/dist/esm/src/angular.js +16 -18
- package/dist/esm/src/angular.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +6 -6
- package/src/angular.ts +8 -23
- package/tsconfig.esm.json +1 -1
- package/tsconfig.json +4 -6
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { NodeRequestHandlerFunction } from '@angular/ssr/node';
|
|
2
|
-
import { HttpKernel
|
|
2
|
+
import { HttpKernel } from '@deepkit/http';
|
|
3
3
|
import { ApplicationServer } from '@deepkit/framework';
|
|
4
4
|
import { Logger } from '@deepkit/logger';
|
|
5
5
|
declare class AngularConfig {
|
|
@@ -30,13 +30,6 @@ declare class AngularRequestContext {
|
|
|
30
30
|
publicBaseUrl: string;
|
|
31
31
|
constructor(config: AngularConfig);
|
|
32
32
|
}
|
|
33
|
-
declare class AngularStaticListener {
|
|
34
|
-
protected config: AngularConfig;
|
|
35
|
-
localPath: string;
|
|
36
|
-
path: string;
|
|
37
|
-
constructor(config: AngularConfig);
|
|
38
|
-
onRoute(event: typeof httpWorkflow.onRoute.event): Promise<unknown> | undefined;
|
|
39
|
-
}
|
|
40
33
|
/**
|
|
41
34
|
* This creates a request handler function for the Angular SSR server.
|
|
42
35
|
* It also starts ApplicationServer of Deepkit Framework to serve HTTP/RPC requests.
|
|
@@ -54,9 +47,8 @@ export declare class RequestHandler {
|
|
|
54
47
|
protected requestContext: AngularRequestContext;
|
|
55
48
|
protected http: HttpKernel;
|
|
56
49
|
protected server: ApplicationServer;
|
|
57
|
-
protected staticListener: AngularStaticListener;
|
|
58
50
|
protected started: boolean;
|
|
59
|
-
constructor(config: AngularConfig, logger: Logger, requestContext: AngularRequestContext, http: HttpKernel, server: ApplicationServer
|
|
51
|
+
constructor(config: AngularConfig, logger: Logger, requestContext: AngularRequestContext, http: HttpKernel, server: ApplicationServer);
|
|
60
52
|
create(): NodeRequestHandlerFunction;
|
|
61
53
|
}
|
|
62
54
|
declare const AngularModule_base: import("@deepkit/app").AppModuleClass<AngularConfig>;
|
package/dist/esm/src/angular.js
CHANGED
|
@@ -20,14 +20,14 @@ function __assignType(fn, args) {
|
|
|
20
20
|
*
|
|
21
21
|
* You should have received a copy of the MIT License along with this program.
|
|
22
22
|
*/
|
|
23
|
-
import { AngularNodeAppEngine, createNodeRequestHandler, isMainModule, writeResponseToNodeResponse
|
|
24
|
-
import { HttpKernel, HttpNotFoundError, HttpRequest, HttpResponse, httpWorkflow, RouteConfig, staticOnRoute
|
|
23
|
+
import { AngularNodeAppEngine, createNodeRequestHandler, isMainModule, writeResponseToNodeResponse } from '@angular/ssr/node';
|
|
24
|
+
import { HttpKernel, HttpNotFoundError, HttpRequest, HttpResponse, httpWorkflow, RouteConfig, staticOnRoute } from '@deepkit/http';
|
|
25
25
|
import { eventDispatcher } from '@deepkit/event';
|
|
26
26
|
import { createModuleClass } from '@deepkit/app';
|
|
27
27
|
import { ApplicationServer } from '@deepkit/framework';
|
|
28
28
|
import { Logger } from '@deepkit/logger';
|
|
29
|
-
import { dirname, resolve } from '
|
|
30
|
-
import { fileURLToPath } from '
|
|
29
|
+
import { dirname, resolve } from 'path';
|
|
30
|
+
import { fileURLToPath } from 'url';
|
|
31
31
|
class AngularConfig {
|
|
32
32
|
constructor() {
|
|
33
33
|
/**
|
|
@@ -49,8 +49,8 @@ class AngularConfig {
|
|
|
49
49
|
*/
|
|
50
50
|
this.moduleUrl = '';
|
|
51
51
|
}
|
|
52
|
+
static { this.__type = ['publicBaseUrl', function () { return ''; }, 'serverBaseUrl', function () { return ''; }, 'moduleUrl', function () { return ''; }, 'AngularConfig', '&3!>"&3#>$&3%>&5w\'']; }
|
|
52
53
|
}
|
|
53
|
-
AngularConfig.__type = ['publicBaseUrl', function () { return ''; }, 'serverBaseUrl', function () { return ''; }, 'moduleUrl', function () { return ''; }, 'AngularConfig', '&3!>"&3#>$&3%>&5w\''];
|
|
54
54
|
/**
|
|
55
55
|
* This object is available angular providers as DI token `REQUEST_CONTEXT`.
|
|
56
56
|
*/
|
|
@@ -61,14 +61,14 @@ class AngularRequestContext {
|
|
|
61
61
|
this.serverBaseUrl = config.serverBaseUrl;
|
|
62
62
|
this.publicBaseUrl = config.publicBaseUrl;
|
|
63
63
|
}
|
|
64
|
+
static { this.__type = ['serverBaseUrl', function () { return ''; }, 'publicBaseUrl', function () { return ''; }, () => AngularConfig, 'config', 'constructor', 'AngularRequestContext', '&3!>"&3#>$PP7%2&"0\'5w(']; }
|
|
64
65
|
}
|
|
65
|
-
AngularRequestContext.__type = ['serverBaseUrl', function () { return ''; }, 'publicBaseUrl', function () { return ''; }, () => AngularConfig, 'config', 'constructor', 'AngularRequestContext', '&3!>"&3#>$PP7%2&"0\'5w('];
|
|
66
66
|
class AngularState {
|
|
67
67
|
constructor() {
|
|
68
68
|
this.ngApp = new AngularNodeAppEngine();
|
|
69
69
|
}
|
|
70
|
+
static { this.__type = [() => AngularNodeAppEngine, 'ngApp', function () { return new AngularNodeAppEngine(); }, 'AngularState', 'P7!3">#5w$']; }
|
|
70
71
|
}
|
|
71
|
-
AngularState.__type = [() => AngularNodeAppEngine, 'ngApp', function () { return new AngularNodeAppEngine(); }, 'AngularState', 'P7!3">#5w$'];
|
|
72
72
|
class AngularListener {
|
|
73
73
|
constructor(requestContext, state) {
|
|
74
74
|
this.requestContext = requestContext;
|
|
@@ -94,8 +94,8 @@ class AngularListener {
|
|
|
94
94
|
parameters: {},
|
|
95
95
|
}));
|
|
96
96
|
}
|
|
97
|
+
static { this.__type = [() => AngularRequestContext, 'requestContext', () => AngularState, 'state', 'constructor', () => httpWorkflow.onRoute.event, 'event', 'onRoute', 'AngularListener', 'PP7!2":P7#2$:"0%Pi&2\'"0(5w)']; }
|
|
97
98
|
}
|
|
98
|
-
AngularListener.__type = [() => AngularRequestContext, 'requestContext', () => AngularState, 'state', 'constructor', () => httpWorkflow.onRoute.event, 'event', 'onRoute', 'AngularListener', 'PP7!2":P7#2$:"0%Pi&2\'"0(5w)'];
|
|
99
99
|
__decorate([
|
|
100
100
|
eventDispatcher.listen(httpWorkflow.onRoute, 102) //102 after 101=static listener, 100=default listener
|
|
101
101
|
,
|
|
@@ -119,8 +119,8 @@ class AngularStaticListener {
|
|
|
119
119
|
return;
|
|
120
120
|
return staticOnRoute(event, this.path, this.localPath);
|
|
121
121
|
}
|
|
122
|
+
static { this.__type = ['localPath', function () { return ''; }, 'path', function () { return '/'; }, () => AngularConfig, 'config', 'constructor', () => httpWorkflow.onRoute.event, 'event', 'onRoute', 'AngularStaticListener', '&3!>"&3#>$PP7%2&<"0\'Pi(2)"0*5w+']; }
|
|
122
123
|
}
|
|
123
|
-
AngularStaticListener.__type = ['localPath', function () { return ''; }, 'path', function () { return '/'; }, () => AngularConfig, 'config', 'constructor', () => httpWorkflow.onRoute.event, 'event', 'onRoute', 'AngularStaticListener', '&3!>"&3#>$PP7%2&<"0\'Pi(2)"0*5w+'];
|
|
124
124
|
__decorate([
|
|
125
125
|
eventDispatcher.listen(httpWorkflow.onRoute, 101) //after default route listener at 100
|
|
126
126
|
,
|
|
@@ -140,18 +140,16 @@ __decorate([
|
|
|
140
140
|
* ```
|
|
141
141
|
*/
|
|
142
142
|
export class RequestHandler {
|
|
143
|
-
constructor(config, logger, requestContext, http, server
|
|
143
|
+
constructor(config, logger, requestContext, http, server) {
|
|
144
144
|
this.config = config;
|
|
145
145
|
this.logger = logger;
|
|
146
146
|
this.requestContext = requestContext;
|
|
147
147
|
this.http = http;
|
|
148
148
|
this.server = server;
|
|
149
|
-
this.staticListener = staticListener;
|
|
150
149
|
this.started = false;
|
|
151
150
|
}
|
|
152
151
|
create() {
|
|
153
|
-
|
|
154
|
-
const global = ((_a = globalThis).deepkitAngular || (_a.deepkitAngular = {}));
|
|
152
|
+
const global = (globalThis.deepkitAngular ||= {});
|
|
155
153
|
const waitForClose = global.server ? global.server.close() : Promise.resolve();
|
|
156
154
|
const mainModule = isMainModule(this.config.moduleUrl);
|
|
157
155
|
// We only listen for process signals in the main module.
|
|
@@ -166,13 +164,13 @@ export class RequestHandler {
|
|
|
166
164
|
host = 'localhost' + host.substr(7);
|
|
167
165
|
}
|
|
168
166
|
this.requestContext.serverBaseUrl = `http://${host}`;
|
|
169
|
-
if (!this.requestContext.
|
|
167
|
+
if (!this.requestContext.publicBaseUrl) {
|
|
170
168
|
if (mainModule) {
|
|
171
|
-
this.requestContext.
|
|
169
|
+
this.requestContext.publicBaseUrl = 'http://localhost:8080';
|
|
172
170
|
}
|
|
173
171
|
else {
|
|
174
172
|
//angular dev server
|
|
175
|
-
this.requestContext.
|
|
173
|
+
this.requestContext.publicBaseUrl = 'http://localhost:4200';
|
|
176
174
|
}
|
|
177
175
|
}
|
|
178
176
|
});
|
|
@@ -198,8 +196,8 @@ export class RequestHandler {
|
|
|
198
196
|
}
|
|
199
197
|
}, ['req', 'res', 'next', '', 'P"2!"2""2#"/$']));
|
|
200
198
|
}
|
|
199
|
+
static { this.__type = ['started', function () { return false; }, () => AngularConfig, 'config', () => Logger, 'logger', () => AngularRequestContext, 'requestContext', () => HttpKernel, 'http', () => ApplicationServer, 'server', 'constructor', 'NodeRequestHandlerFunction', 'create', 'RequestHandler', ')3!<>"PP7#2$<P7%2&<P7\'2(<P7)2*<P7+2,<"0-P"w.0/5w0']; }
|
|
201
200
|
}
|
|
202
|
-
RequestHandler.__type = ['started', function () { return false; }, () => AngularConfig, 'config', () => Logger, 'logger', () => AngularRequestContext, 'requestContext', () => HttpKernel, 'http', () => ApplicationServer, 'server', () => AngularStaticListener, 'staticListener', 'constructor', 'NodeRequestHandlerFunction', 'create', 'RequestHandler', ')3!<>"PP7#2$<P7%2&<P7\'2(<P7)2*<P7+2,<P7-2.<"0/P"w0015w2'];
|
|
203
201
|
export class AngularModule extends createModuleClass({
|
|
204
202
|
name: 'angular',
|
|
205
203
|
config: AngularConfig,
|
|
@@ -220,6 +218,6 @@ export class AngularModule extends createModuleClass({
|
|
|
220
218
|
AngularStaticListener,
|
|
221
219
|
],
|
|
222
220
|
}) {
|
|
221
|
+
static { this.__type = [() => createModuleClass({ name: "angular", config: AngularConfig, providers: [RequestHandler, AngularRequestContext, AngularStaticListener, AngularState], exports: [RequestHandler, AngularRequestContext, AngularStaticListener, AngularState], listeners: [AngularListener, AngularStaticListener] }), 'AngularModule', 'P7!5w"']; }
|
|
223
222
|
}
|
|
224
|
-
AngularModule.__type = [() => createModuleClass({ name: "angular", config: AngularConfig, providers: [RequestHandler, AngularRequestContext, AngularStaticListener, AngularState], exports: [RequestHandler, AngularRequestContext, AngularStaticListener, AngularState], listeners: [AngularListener, AngularStaticListener] }), 'AngularModule', 'P7!5w"'];
|
|
225
223
|
//# sourceMappingURL=angular.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"angular.js","sourceRoot":"","sources":["../../../src/angular.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA;;;;;;;;GAQG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"angular.js","sourceRoot":"","sources":["../../../src/angular.ts"],"names":[],"mappings":"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"}
|