@lark-apaas/fullstack-nestjs-core 1.1.10 → 1.1.12-alpha.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.
- package/dist/index.cjs +50 -9
- package/dist/index.d.cts +6 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.js +44 -5
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -36,15 +36,17 @@ __export(index_exports, {
|
|
|
36
36
|
CsrfTokenMiddleware: () => CsrfTokenMiddleware,
|
|
37
37
|
DevToolsModule: () => import_nestjs_openapi_devtools2.DevToolsModule,
|
|
38
38
|
DevToolsV2Module: () => import_nestjs_openapi_devtools2.DevToolsV2Module,
|
|
39
|
+
ForwardedHostMiddleware: () => ForwardedHostMiddleware,
|
|
39
40
|
PlatformModule: () => PlatformModule,
|
|
40
41
|
UserContextMiddleware: () => UserContextMiddleware,
|
|
41
42
|
ViewContextMiddleware: () => ViewContextMiddleware,
|
|
42
|
-
configureApp: () => configureApp
|
|
43
|
+
configureApp: () => configureApp,
|
|
44
|
+
forwardedHostExpressMiddleware: () => forwardedHostExpressMiddleware
|
|
43
45
|
});
|
|
44
46
|
module.exports = __toCommonJS(index_exports);
|
|
45
47
|
|
|
46
48
|
// src/modules/platform/module.ts
|
|
47
|
-
var
|
|
49
|
+
var import_common10 = require("@nestjs/common");
|
|
48
50
|
var import_core2 = require("@nestjs/core");
|
|
49
51
|
var import_nestjs_common3 = require("@lark-apaas/nestjs-common");
|
|
50
52
|
var import_config2 = require("@nestjs/config");
|
|
@@ -716,7 +718,8 @@ PlatformHttpClientService = _ts_decorate8([
|
|
|
716
718
|
_ts_metadata5("design:paramtypes", [])
|
|
717
719
|
], PlatformHttpClientService);
|
|
718
720
|
|
|
719
|
-
// src/
|
|
721
|
+
// src/middlewares/forwarded-host/index.ts
|
|
722
|
+
var import_common9 = require("@nestjs/common");
|
|
720
723
|
function _ts_decorate9(decorators, target, key, desc) {
|
|
721
724
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
722
725
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -724,6 +727,41 @@ function _ts_decorate9(decorators, target, key, desc) {
|
|
|
724
727
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
725
728
|
}
|
|
726
729
|
__name(_ts_decorate9, "_ts_decorate");
|
|
730
|
+
function normalizeForwardedHost(raw) {
|
|
731
|
+
if (!raw) return void 0;
|
|
732
|
+
const combined = Array.isArray(raw) ? raw.join(",") : raw;
|
|
733
|
+
const first = combined.split(",")[0]?.trim();
|
|
734
|
+
return first || void 0;
|
|
735
|
+
}
|
|
736
|
+
__name(normalizeForwardedHost, "normalizeForwardedHost");
|
|
737
|
+
function forwardedHostExpressMiddleware(req, _res, next) {
|
|
738
|
+
const forwardedHost = normalizeForwardedHost(req.headers["x-forwarded-host"]);
|
|
739
|
+
if (forwardedHost) {
|
|
740
|
+
req.headers.host = forwardedHost;
|
|
741
|
+
}
|
|
742
|
+
next();
|
|
743
|
+
}
|
|
744
|
+
__name(forwardedHostExpressMiddleware, "forwardedHostExpressMiddleware");
|
|
745
|
+
var ForwardedHostMiddleware = class {
|
|
746
|
+
static {
|
|
747
|
+
__name(this, "ForwardedHostMiddleware");
|
|
748
|
+
}
|
|
749
|
+
use(req, res, next) {
|
|
750
|
+
forwardedHostExpressMiddleware(req, res, next);
|
|
751
|
+
}
|
|
752
|
+
};
|
|
753
|
+
ForwardedHostMiddleware = _ts_decorate9([
|
|
754
|
+
(0, import_common9.Injectable)()
|
|
755
|
+
], ForwardedHostMiddleware);
|
|
756
|
+
|
|
757
|
+
// src/modules/platform/module.ts
|
|
758
|
+
function _ts_decorate10(decorators, target, key, desc) {
|
|
759
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
760
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
761
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
762
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
763
|
+
}
|
|
764
|
+
__name(_ts_decorate10, "_ts_decorate");
|
|
727
765
|
var PLATFORM_MODULE_OPTIONS = /* @__PURE__ */ Symbol("PLATFORM_MODULE_OPTIONS");
|
|
728
766
|
var PlatformModule = class _PlatformModule {
|
|
729
767
|
static {
|
|
@@ -788,7 +826,7 @@ var PlatformModule = class _PlatformModule {
|
|
|
788
826
|
},
|
|
789
827
|
{
|
|
790
828
|
provide: import_core2.APP_PIPE,
|
|
791
|
-
useValue: new
|
|
829
|
+
useValue: new import_common10.ValidationPipe({
|
|
792
830
|
transform: true,
|
|
793
831
|
transformOptions: {
|
|
794
832
|
enableImplicitConversion: true
|
|
@@ -827,7 +865,7 @@ var PlatformModule = class _PlatformModule {
|
|
|
827
865
|
if (process.env.NODE_ENV === "development") {
|
|
828
866
|
consumer.apply(FrameworkDebugMiddleware).forRoutes("/api/__framework__/debug");
|
|
829
867
|
}
|
|
830
|
-
consumer.apply(UserContextMiddleware, RequestContextMiddleware, import_nestjs_logger2.LoggerContextMiddleware, import_nestjs_datapaas.SqlExecutionContextMiddleware).forRoutes("/*");
|
|
868
|
+
consumer.apply(ForwardedHostMiddleware, UserContextMiddleware, RequestContextMiddleware, import_nestjs_logger2.LoggerContextMiddleware, import_nestjs_datapaas.SqlExecutionContextMiddleware).forRoutes("/*");
|
|
831
869
|
consumer.apply(CsrfTokenMiddleware, ViewContextMiddleware).exclude("/api/(.*)").forRoutes("*");
|
|
832
870
|
if (options.enableCsrf !== false) {
|
|
833
871
|
const csrfRoutes = options.csrfRoutes || "/api/*";
|
|
@@ -841,9 +879,9 @@ var PlatformModule = class _PlatformModule {
|
|
|
841
879
|
}
|
|
842
880
|
}
|
|
843
881
|
};
|
|
844
|
-
PlatformModule =
|
|
845
|
-
(0,
|
|
846
|
-
(0,
|
|
882
|
+
PlatformModule = _ts_decorate10([
|
|
883
|
+
(0, import_common10.Global)(),
|
|
884
|
+
(0, import_common10.Module)({})
|
|
847
885
|
], PlatformModule);
|
|
848
886
|
|
|
849
887
|
// src/setup.ts
|
|
@@ -857,6 +895,7 @@ async function configureApp(app, perms = defaultPerms) {
|
|
|
857
895
|
app.useLogger(app.get(import_nestjs_logger3.AppLogger));
|
|
858
896
|
app.flushLogs();
|
|
859
897
|
app.use((0, import_cookie_parser.default)());
|
|
898
|
+
app.use(forwardedHostExpressMiddleware);
|
|
860
899
|
const globalPrefix = process.env.CLIENT_BASE_PATH ?? "";
|
|
861
900
|
app.setGlobalPrefix(globalPrefix);
|
|
862
901
|
if (process.env.NODE_ENV !== "production" && perms.disableSwagger !== true) {
|
|
@@ -865,11 +904,11 @@ async function configureApp(app, perms = defaultPerms) {
|
|
|
865
904
|
basePath: process.env.CLIENT_BASE_PATH,
|
|
866
905
|
docsPath: "/api_docs"
|
|
867
906
|
});
|
|
907
|
+
console.log("App Started Successfully.");
|
|
868
908
|
} catch (err) {
|
|
869
909
|
console.error("[OpenAPI] OpenAPI \u751F\u6210\u5931\u8D25:", err);
|
|
870
910
|
}
|
|
871
911
|
}
|
|
872
|
-
console.log("App Started Successfully.");
|
|
873
912
|
}
|
|
874
913
|
__name(configureApp, "configureApp");
|
|
875
914
|
|
|
@@ -885,10 +924,12 @@ __reExport(index_exports, require("@lark-apaas/nestjs-trigger"), module.exports)
|
|
|
885
924
|
CsrfTokenMiddleware,
|
|
886
925
|
DevToolsModule,
|
|
887
926
|
DevToolsV2Module,
|
|
927
|
+
ForwardedHostMiddleware,
|
|
888
928
|
PlatformModule,
|
|
889
929
|
UserContextMiddleware,
|
|
890
930
|
ViewContextMiddleware,
|
|
891
931
|
configureApp,
|
|
932
|
+
forwardedHostExpressMiddleware,
|
|
892
933
|
...require("@lark-apaas/nestjs-authnpaas"),
|
|
893
934
|
...require("@lark-apaas/nestjs-datapaas"),
|
|
894
935
|
...require("@lark-apaas/nestjs-observable"),
|
package/dist/index.d.cts
CHANGED
|
@@ -117,6 +117,11 @@ declare class ViewContextMiddleware implements NestMiddleware {
|
|
|
117
117
|
use(req: Request, res: Response, next: NextFunction): Promise<void>;
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
+
declare function forwardedHostExpressMiddleware(req: Request, _res: Response, next: NextFunction): void;
|
|
121
|
+
declare class ForwardedHostMiddleware implements NestMiddleware {
|
|
122
|
+
use(req: Request, res: Response, next: NextFunction): void;
|
|
123
|
+
}
|
|
124
|
+
|
|
120
125
|
/**
|
|
121
126
|
* API 404 响应格式
|
|
122
127
|
*/
|
|
@@ -128,4 +133,4 @@ interface ApiNotFoundResponse {
|
|
|
128
133
|
timestamp: string;
|
|
129
134
|
}
|
|
130
135
|
|
|
131
|
-
export { type ApiNotFoundResponse, CsrfMiddleware, CsrfTokenMiddleware, type PlatformHttpClientOptions, PlatformModule, type PlatformModuleOptions, UserContextMiddleware, ViewContextMiddleware, configureApp };
|
|
136
|
+
export { type ApiNotFoundResponse, CsrfMiddleware, CsrfTokenMiddleware, ForwardedHostMiddleware, type PlatformHttpClientOptions, PlatformModule, type PlatformModuleOptions, UserContextMiddleware, ViewContextMiddleware, configureApp, forwardedHostExpressMiddleware };
|
package/dist/index.d.ts
CHANGED
|
@@ -117,6 +117,11 @@ declare class ViewContextMiddleware implements NestMiddleware {
|
|
|
117
117
|
use(req: Request, res: Response, next: NextFunction): Promise<void>;
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
+
declare function forwardedHostExpressMiddleware(req: Request, _res: Response, next: NextFunction): void;
|
|
121
|
+
declare class ForwardedHostMiddleware implements NestMiddleware {
|
|
122
|
+
use(req: Request, res: Response, next: NextFunction): void;
|
|
123
|
+
}
|
|
124
|
+
|
|
120
125
|
/**
|
|
121
126
|
* API 404 响应格式
|
|
122
127
|
*/
|
|
@@ -128,4 +133,4 @@ interface ApiNotFoundResponse {
|
|
|
128
133
|
timestamp: string;
|
|
129
134
|
}
|
|
130
135
|
|
|
131
|
-
export { type ApiNotFoundResponse, CsrfMiddleware, CsrfTokenMiddleware, type PlatformHttpClientOptions, PlatformModule, type PlatformModuleOptions, UserContextMiddleware, ViewContextMiddleware, configureApp };
|
|
136
|
+
export { type ApiNotFoundResponse, CsrfMiddleware, CsrfTokenMiddleware, ForwardedHostMiddleware, type PlatformHttpClientOptions, PlatformModule, type PlatformModuleOptions, UserContextMiddleware, ViewContextMiddleware, configureApp, forwardedHostExpressMiddleware };
|
package/dist/index.js
CHANGED
|
@@ -674,7 +674,8 @@ PlatformHttpClientService = _ts_decorate8([
|
|
|
674
674
|
_ts_metadata5("design:paramtypes", [])
|
|
675
675
|
], PlatformHttpClientService);
|
|
676
676
|
|
|
677
|
-
// src/
|
|
677
|
+
// src/middlewares/forwarded-host/index.ts
|
|
678
|
+
import { Injectable as Injectable9 } from "@nestjs/common";
|
|
678
679
|
function _ts_decorate9(decorators, target, key, desc) {
|
|
679
680
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
680
681
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -682,6 +683,41 @@ function _ts_decorate9(decorators, target, key, desc) {
|
|
|
682
683
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
683
684
|
}
|
|
684
685
|
__name(_ts_decorate9, "_ts_decorate");
|
|
686
|
+
function normalizeForwardedHost(raw) {
|
|
687
|
+
if (!raw) return void 0;
|
|
688
|
+
const combined = Array.isArray(raw) ? raw.join(",") : raw;
|
|
689
|
+
const first = combined.split(",")[0]?.trim();
|
|
690
|
+
return first || void 0;
|
|
691
|
+
}
|
|
692
|
+
__name(normalizeForwardedHost, "normalizeForwardedHost");
|
|
693
|
+
function forwardedHostExpressMiddleware(req, _res, next) {
|
|
694
|
+
const forwardedHost = normalizeForwardedHost(req.headers["x-forwarded-host"]);
|
|
695
|
+
if (forwardedHost) {
|
|
696
|
+
req.headers.host = forwardedHost;
|
|
697
|
+
}
|
|
698
|
+
next();
|
|
699
|
+
}
|
|
700
|
+
__name(forwardedHostExpressMiddleware, "forwardedHostExpressMiddleware");
|
|
701
|
+
var ForwardedHostMiddleware = class {
|
|
702
|
+
static {
|
|
703
|
+
__name(this, "ForwardedHostMiddleware");
|
|
704
|
+
}
|
|
705
|
+
use(req, res, next) {
|
|
706
|
+
forwardedHostExpressMiddleware(req, res, next);
|
|
707
|
+
}
|
|
708
|
+
};
|
|
709
|
+
ForwardedHostMiddleware = _ts_decorate9([
|
|
710
|
+
Injectable9()
|
|
711
|
+
], ForwardedHostMiddleware);
|
|
712
|
+
|
|
713
|
+
// src/modules/platform/module.ts
|
|
714
|
+
function _ts_decorate10(decorators, target, key, desc) {
|
|
715
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
716
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
717
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
718
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
719
|
+
}
|
|
720
|
+
__name(_ts_decorate10, "_ts_decorate");
|
|
685
721
|
var PLATFORM_MODULE_OPTIONS = /* @__PURE__ */ Symbol("PLATFORM_MODULE_OPTIONS");
|
|
686
722
|
var PlatformModule = class _PlatformModule {
|
|
687
723
|
static {
|
|
@@ -785,7 +821,7 @@ var PlatformModule = class _PlatformModule {
|
|
|
785
821
|
if (process.env.NODE_ENV === "development") {
|
|
786
822
|
consumer.apply(FrameworkDebugMiddleware).forRoutes("/api/__framework__/debug");
|
|
787
823
|
}
|
|
788
|
-
consumer.apply(UserContextMiddleware, RequestContextMiddleware, LoggerContextMiddleware, SqlExecutionContextMiddleware).forRoutes("/*");
|
|
824
|
+
consumer.apply(ForwardedHostMiddleware, UserContextMiddleware, RequestContextMiddleware, LoggerContextMiddleware, SqlExecutionContextMiddleware).forRoutes("/*");
|
|
789
825
|
consumer.apply(CsrfTokenMiddleware, ViewContextMiddleware).exclude("/api/(.*)").forRoutes("*");
|
|
790
826
|
if (options.enableCsrf !== false) {
|
|
791
827
|
const csrfRoutes = options.csrfRoutes || "/api/*";
|
|
@@ -799,7 +835,7 @@ var PlatformModule = class _PlatformModule {
|
|
|
799
835
|
}
|
|
800
836
|
}
|
|
801
837
|
};
|
|
802
|
-
PlatformModule =
|
|
838
|
+
PlatformModule = _ts_decorate10([
|
|
803
839
|
Global(),
|
|
804
840
|
Module({})
|
|
805
841
|
], PlatformModule);
|
|
@@ -815,6 +851,7 @@ async function configureApp(app, perms = defaultPerms) {
|
|
|
815
851
|
app.useLogger(app.get(AppLogger3));
|
|
816
852
|
app.flushLogs();
|
|
817
853
|
app.use(cookieParser());
|
|
854
|
+
app.use(forwardedHostExpressMiddleware);
|
|
818
855
|
const globalPrefix = process.env.CLIENT_BASE_PATH ?? "";
|
|
819
856
|
app.setGlobalPrefix(globalPrefix);
|
|
820
857
|
if (process.env.NODE_ENV !== "production" && perms.disableSwagger !== true) {
|
|
@@ -823,11 +860,11 @@ async function configureApp(app, perms = defaultPerms) {
|
|
|
823
860
|
basePath: process.env.CLIENT_BASE_PATH,
|
|
824
861
|
docsPath: "/api_docs"
|
|
825
862
|
});
|
|
863
|
+
console.log("App Started Successfully.");
|
|
826
864
|
} catch (err) {
|
|
827
865
|
console.error("[OpenAPI] OpenAPI \u751F\u6210\u5931\u8D25:", err);
|
|
828
866
|
}
|
|
829
867
|
}
|
|
830
|
-
console.log("App Started Successfully.");
|
|
831
868
|
}
|
|
832
869
|
__name(configureApp, "configureApp");
|
|
833
870
|
|
|
@@ -842,8 +879,10 @@ export {
|
|
|
842
879
|
CsrfTokenMiddleware,
|
|
843
880
|
DevToolsModule,
|
|
844
881
|
DevToolsV2Module2 as DevToolsV2Module,
|
|
882
|
+
ForwardedHostMiddleware,
|
|
845
883
|
PlatformModule,
|
|
846
884
|
UserContextMiddleware,
|
|
847
885
|
ViewContextMiddleware,
|
|
848
|
-
configureApp
|
|
886
|
+
configureApp,
|
|
887
|
+
forwardedHostExpressMiddleware
|
|
849
888
|
};
|