@lark-apaas/fullstack-nestjs-core 1.1.34-alpha.6 → 1.1.34-alpha.60

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 CHANGED
@@ -20771,9 +20771,9 @@ var require_safe_buffer = __commonJS({
20771
20771
  }
20772
20772
  });
20773
20773
 
20774
- // ../../../node_modules/express/node_modules/content-disposition/index.js
20774
+ // ../../../node_modules/content-disposition/index.js
20775
20775
  var require_content_disposition = __commonJS({
20776
- "../../../node_modules/express/node_modules/content-disposition/index.js"(exports2, module2) {
20776
+ "../../../node_modules/content-disposition/index.js"(exports2, module2) {
20777
20777
  "use strict";
20778
20778
  module2.exports = contentDisposition;
20779
20779
  module2.exports.parse = parse;
@@ -34404,7 +34404,10 @@ var require_express2 = __commonJS({
34404
34404
  // src/index.ts
34405
34405
  var index_exports = {};
34406
34406
  __export(index_exports, {
34407
+ AuthZPaasModule: () => import_nestjs_authzpaas2.AuthZPaasModule,
34408
+ AuthorizationSDK: () => import_nestjs_authzpaas2.AuthorizationSDK,
34407
34409
  AutoTrace: () => import_nestjs_common8.AutoTrace,
34410
+ Can: () => import_nestjs_authzpaas2.Can,
34408
34411
  CanRole: () => import_nestjs_authzpaas2.CanRole,
34409
34412
  CsrfMiddleware: () => CsrfMiddleware,
34410
34413
  CsrfTokenMiddleware: () => CsrfTokenMiddleware,
@@ -34413,6 +34416,7 @@ __export(index_exports, {
34413
34416
  FileService: () => FileService,
34414
34417
  HtmlHotUpdateModule: () => HtmlHotUpdateModule,
34415
34418
  HtmlHotUpdateService: () => HtmlHotUpdateService,
34419
+ PERMISSION_RESOLVER_TOKEN: () => import_nestjs_authzpaas2.PERMISSION_RESOLVER_TOKEN,
34416
34420
  PlatformHttpClientService: () => PlatformHttpClientService,
34417
34421
  PlatformModule: () => PlatformModule,
34418
34422
  StaticModule: () => StaticModule,
@@ -34623,31 +34627,55 @@ var ViewContextMiddleware = class _ViewContextMiddleware {
34623
34627
  constructor(client) {
34624
34628
  this.client = client;
34625
34629
  }
34626
- async getAppInfo(appId) {
34630
+ async getAppPublished(appId) {
34627
34631
  if (!appId) {
34628
- this.logger.warn(`appId is empty, skip get app info`);
34632
+ this.logger.warn(`appId is empty, skip get app published`);
34629
34633
  return null;
34630
34634
  }
34631
34635
  try {
34632
34636
  const resp = await this.client.get(`/b/${appId}/get_published_v2`);
34633
34637
  if (resp.status !== 200) {
34634
- throw new Error(`Failed to get app info, status: ${resp.status}`);
34638
+ throw new Error(`Failed to get app published, status: ${resp.status}`);
34635
34639
  }
34636
34640
  const data = await resp.json();
34637
34641
  if (data.status_code !== "0") {
34638
- throw new Error(`Failed to get app info, status_code: ${data.status_code}`);
34642
+ throw new Error(`Failed to get app published, status_code: ${data.status_code}`);
34639
34643
  }
34640
- return data.data.app_info ?? {};
34644
+ return data.data ?? null;
34641
34645
  } catch (err) {
34642
- this.logger.error(err, "Failed to get app info");
34646
+ this.logger.error(err, "Failed to get app published");
34647
+ return null;
34648
+ }
34649
+ }
34650
+ async getTenantInfo(appId) {
34651
+ if (!appId) {
34652
+ this.logger.warn(`appId is empty, skip get tenant info`);
34653
+ return null;
34654
+ }
34655
+ try {
34656
+ const resp = await this.client.get(`/b/${appId}/tenant_info`);
34657
+ if (resp.status !== 200) {
34658
+ throw new Error(`Failed to get tenant info, status: ${resp.status}`);
34659
+ }
34660
+ const data = await resp.json();
34661
+ if (data.status_code !== "0") {
34662
+ throw new Error(`Failed to get tenant info, status_code: ${data.status_code}`);
34663
+ }
34664
+ return data.data ?? null;
34665
+ } catch (err) {
34666
+ this.logger.error(err, "Failed to get tenant info");
34643
34667
  return null;
34644
34668
  }
34645
34669
  }
34646
34670
  async use(req, res, next) {
34647
34671
  const { userId, tenantId, appId, loginUrl, userType } = req.userContext;
34648
34672
  const csrfToken = req.csrfToken;
34649
- const appInfo = await this.getAppInfo(appId);
34650
34673
  const environment = mapToWindowEnvironment(process.env.FORCE_FRAMEWORK_ENVIRONMENT);
34674
+ const [appPublishedData, tenantInfoData] = await Promise.all([
34675
+ this.getAppPublished(appId),
34676
+ this.getTenantInfo(appId)
34677
+ ]);
34678
+ const appInfo = appPublishedData?.app_info ?? null;
34651
34679
  req.__platform_data__ = {
34652
34680
  csrfToken: csrfToken ?? "",
34653
34681
  userId: userId ?? "",
@@ -34658,7 +34686,12 @@ var ViewContextMiddleware = class _ViewContextMiddleware {
34658
34686
  loginUrl: loginUrl ?? "",
34659
34687
  userType: userType ?? "",
34660
34688
  tenantId,
34661
- environment
34689
+ environment,
34690
+ // 预注入字段,前端无需再发 API 请求
34691
+ showBadge: appInfo?.show_badge !== false,
34692
+ tenantName: safeEscape(tenantInfoData?.tenant_info?.name ?? ""),
34693
+ isInternetVisible: tenantInfoData?.is_internet_visible ?? false,
34694
+ appPublished: appPublishedData ?? null
34662
34695
  };
34663
34696
  res.locals = {
34664
34697
  ...res.locals ?? {},
@@ -34816,6 +34849,8 @@ var RequestContextMiddleware = class {
34816
34849
  const path2 = req.originalUrl ?? req.url;
34817
34850
  const userContext = req.userContext ?? {};
34818
34851
  const ttEnv = req.headers["x-tt-env"];
34852
+ const rawPageRoute = req.get("X-Page-Route");
34853
+ const pageRoute = (0, import_nestjs_common2.stripBasePath)(rawPageRoute, process.env.CLIENT_BASE_PATH) ?? void 0;
34819
34854
  const refererPath = req.headers["rpc-persist-apaas-observability-referer-path"];
34820
34855
  const observabilityApi = req.headers["rpc-persist-apaas-observability-api"];
34821
34856
  this.requestContext.run({
@@ -34826,6 +34861,7 @@ var RequestContextMiddleware = class {
34826
34861
  appId: userContext.appId,
34827
34862
  isSystemAccount: userContext.isSystemAccount,
34828
34863
  ttEnv,
34864
+ pageRoute,
34829
34865
  refererPath,
34830
34866
  observabilityApi
34831
34867
  }, () => next());
@@ -36344,13 +36380,16 @@ var PlatformModule = class _PlatformModule {
36344
36380
  };
36345
36381
  return {
36346
36382
  connectionString: configService.get("app.databaseUrl") ?? "",
36347
- logger: drizzleLogger
36383
+ logger: drizzleLogger,
36384
+ connectionTokenFilePath: "/var/run/secrets/zti/credential"
36348
36385
  };
36349
36386
  }, "useFactory")
36350
36387
  })
36351
36388
  ],
36352
36389
  import_nestjs_authnpaas.AuthNPaasModule.forRoot(),
36353
- import_nestjs_authzpaas.AuthZPaasModule.forRoot(),
36390
+ import_nestjs_authzpaas.AuthZPaasModule.forRoot({
36391
+ ...options.authz || {}
36392
+ }),
36354
36393
  import_nestjs_trigger.AutomationModule.forRoot(),
36355
36394
  import_nestjs_capability.CapabilityModule.forRoot({
36356
36395
  capabilitiesDir: options.capabilitiesDir,
@@ -36541,7 +36580,10 @@ var import_nestjs_common8 = require("@lark-apaas/nestjs-common");
36541
36580
  var import_nestjs_authzpaas2 = require("@lark-apaas/nestjs-authzpaas");
36542
36581
  // Annotate the CommonJS export names for ESM import in node:
36543
36582
  0 && (module.exports = {
36583
+ AuthZPaasModule,
36584
+ AuthorizationSDK,
36544
36585
  AutoTrace,
36586
+ Can,
36545
36587
  CanRole,
36546
36588
  CsrfMiddleware,
36547
36589
  CsrfTokenMiddleware,
@@ -36550,6 +36592,7 @@ var import_nestjs_authzpaas2 = require("@lark-apaas/nestjs-authzpaas");
36550
36592
  FileService,
36551
36593
  HtmlHotUpdateModule,
36552
36594
  HtmlHotUpdateService,
36595
+ PERMISSION_RESOLVER_TOKEN,
36553
36596
  PlatformHttpClientService,
36554
36597
  PlatformModule,
36555
36598
  StaticModule,
package/dist/index.d.cts CHANGED
@@ -1,5 +1,7 @@
1
1
  import { NestModule, DynamicModule, MiddlewareConsumer, OnModuleInit, NestMiddleware } from '@nestjs/common';
2
2
  import { HttpClientConfig, PlatformPluginOptions, HttpClient } from '@lark-apaas/http-client';
3
+ import { AuthZPaasModuleOptions } from '@lark-apaas/nestjs-authzpaas';
4
+ export { AddMembersParams, AuthZPaasModule, AuthorizationSDK, Can, CanRole, ChatSimpleDTO, CommonParam, CreateRoleParams, CreateRoleResponse, DepartmentDTO, DepartmentEntity, DepartmentSimpleDTO, FilterParams, ForceRoleDTO, I18nText, IPermissionResolver, ListMembersParams, ListMembersResponse, ListRolesParams, MemberMutationData, MemberType, PERMISSION_RESOLVER_TOKEN, PermissionPoint, PermissionRequirement, PresetGroupDTO, RemoveMembersParams, RoleMemberDTO, SearchChatEntity, SearchParams, SearchResponse, SearchResult, SearchUserEntity, UpdateRoleParams, UserSimpleDTO } from '@lark-apaas/nestjs-authzpaas';
3
5
  import { NestExpressApplication } from '@nestjs/platform-express';
4
6
  import { PlatformHttpClient, RequestContextService, ObservableService } from '@lark-apaas/nestjs-common';
5
7
  export { AutoTrace } from '@lark-apaas/nestjs-common';
@@ -13,7 +15,6 @@ export * from '@lark-apaas/nestjs-capability';
13
15
  export * from '@lark-apaas/nestjs-datapaas';
14
16
  export * from '@lark-apaas/nestjs-observable';
15
17
  export * from '@lark-apaas/nestjs-trigger';
16
- export { CanRole } from '@lark-apaas/nestjs-authzpaas';
17
18
 
18
19
  declare global {
19
20
  namespace Express {
@@ -72,6 +73,11 @@ interface PlatformModuleOptions {
72
73
  * 默认: server/capabilities
73
74
  */
74
75
  capabilitiesDir?: string;
76
+ /**
77
+ * AuthZPaas 模块配置
78
+ * 可传入 permissionResolver 等选项,透传给 AuthZPaasModule.forRoot()
79
+ */
80
+ authz?: AuthZPaasModuleOptions;
75
81
  }
76
82
 
77
83
  declare class PlatformModule implements NestModule {
@@ -195,7 +201,8 @@ declare class ViewContextMiddleware implements NestMiddleware {
195
201
  private readonly client;
196
202
  private readonly logger;
197
203
  constructor(client: PlatformHttpClient);
198
- private getAppInfo;
204
+ private getAppPublished;
205
+ private getTenantInfo;
199
206
  use(req: Request, res: Response, next: NextFunction): Promise<void>;
200
207
  }
201
208
 
package/dist/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  import { NestModule, DynamicModule, MiddlewareConsumer, OnModuleInit, NestMiddleware } from '@nestjs/common';
2
2
  import { HttpClientConfig, PlatformPluginOptions, HttpClient } from '@lark-apaas/http-client';
3
+ import { AuthZPaasModuleOptions } from '@lark-apaas/nestjs-authzpaas';
4
+ export { AddMembersParams, AuthZPaasModule, AuthorizationSDK, Can, CanRole, ChatSimpleDTO, CommonParam, CreateRoleParams, CreateRoleResponse, DepartmentDTO, DepartmentEntity, DepartmentSimpleDTO, FilterParams, ForceRoleDTO, I18nText, IPermissionResolver, ListMembersParams, ListMembersResponse, ListRolesParams, MemberMutationData, MemberType, PERMISSION_RESOLVER_TOKEN, PermissionPoint, PermissionRequirement, PresetGroupDTO, RemoveMembersParams, RoleMemberDTO, SearchChatEntity, SearchParams, SearchResponse, SearchResult, SearchUserEntity, UpdateRoleParams, UserSimpleDTO } from '@lark-apaas/nestjs-authzpaas';
3
5
  import { NestExpressApplication } from '@nestjs/platform-express';
4
6
  import { PlatformHttpClient, RequestContextService, ObservableService } from '@lark-apaas/nestjs-common';
5
7
  export { AutoTrace } from '@lark-apaas/nestjs-common';
@@ -13,7 +15,6 @@ export * from '@lark-apaas/nestjs-capability';
13
15
  export * from '@lark-apaas/nestjs-datapaas';
14
16
  export * from '@lark-apaas/nestjs-observable';
15
17
  export * from '@lark-apaas/nestjs-trigger';
16
- export { CanRole } from '@lark-apaas/nestjs-authzpaas';
17
18
 
18
19
  declare global {
19
20
  namespace Express {
@@ -72,6 +73,11 @@ interface PlatformModuleOptions {
72
73
  * 默认: server/capabilities
73
74
  */
74
75
  capabilitiesDir?: string;
76
+ /**
77
+ * AuthZPaas 模块配置
78
+ * 可传入 permissionResolver 等选项,透传给 AuthZPaasModule.forRoot()
79
+ */
80
+ authz?: AuthZPaasModuleOptions;
75
81
  }
76
82
 
77
83
  declare class PlatformModule implements NestModule {
@@ -195,7 +201,8 @@ declare class ViewContextMiddleware implements NestMiddleware {
195
201
  private readonly client;
196
202
  private readonly logger;
197
203
  constructor(client: PlatformHttpClient);
198
- private getAppInfo;
204
+ private getAppPublished;
205
+ private getTenantInfo;
199
206
  use(req: Request, res: Response, next: NextFunction): Promise<void>;
200
207
  }
201
208
 
package/dist/index.js CHANGED
@@ -20770,9 +20770,9 @@ var require_safe_buffer = __commonJS({
20770
20770
  }
20771
20771
  });
20772
20772
 
20773
- // ../../../node_modules/express/node_modules/content-disposition/index.js
20773
+ // ../../../node_modules/content-disposition/index.js
20774
20774
  var require_content_disposition = __commonJS({
20775
- "../../../node_modules/express/node_modules/content-disposition/index.js"(exports, module) {
20775
+ "../../../node_modules/content-disposition/index.js"(exports, module) {
20776
20776
  "use strict";
20777
20777
  module.exports = contentDisposition;
20778
20778
  module.exports.parse = parse;
@@ -34600,31 +34600,55 @@ var ViewContextMiddleware = class _ViewContextMiddleware {
34600
34600
  constructor(client) {
34601
34601
  this.client = client;
34602
34602
  }
34603
- async getAppInfo(appId) {
34603
+ async getAppPublished(appId) {
34604
34604
  if (!appId) {
34605
- this.logger.warn(`appId is empty, skip get app info`);
34605
+ this.logger.warn(`appId is empty, skip get app published`);
34606
34606
  return null;
34607
34607
  }
34608
34608
  try {
34609
34609
  const resp = await this.client.get(`/b/${appId}/get_published_v2`);
34610
34610
  if (resp.status !== 200) {
34611
- throw new Error(`Failed to get app info, status: ${resp.status}`);
34611
+ throw new Error(`Failed to get app published, status: ${resp.status}`);
34612
34612
  }
34613
34613
  const data = await resp.json();
34614
34614
  if (data.status_code !== "0") {
34615
- throw new Error(`Failed to get app info, status_code: ${data.status_code}`);
34615
+ throw new Error(`Failed to get app published, status_code: ${data.status_code}`);
34616
34616
  }
34617
- return data.data.app_info ?? {};
34617
+ return data.data ?? null;
34618
34618
  } catch (err) {
34619
- this.logger.error(err, "Failed to get app info");
34619
+ this.logger.error(err, "Failed to get app published");
34620
+ return null;
34621
+ }
34622
+ }
34623
+ async getTenantInfo(appId) {
34624
+ if (!appId) {
34625
+ this.logger.warn(`appId is empty, skip get tenant info`);
34626
+ return null;
34627
+ }
34628
+ try {
34629
+ const resp = await this.client.get(`/b/${appId}/tenant_info`);
34630
+ if (resp.status !== 200) {
34631
+ throw new Error(`Failed to get tenant info, status: ${resp.status}`);
34632
+ }
34633
+ const data = await resp.json();
34634
+ if (data.status_code !== "0") {
34635
+ throw new Error(`Failed to get tenant info, status_code: ${data.status_code}`);
34636
+ }
34637
+ return data.data ?? null;
34638
+ } catch (err) {
34639
+ this.logger.error(err, "Failed to get tenant info");
34620
34640
  return null;
34621
34641
  }
34622
34642
  }
34623
34643
  async use(req, res, next) {
34624
34644
  const { userId, tenantId, appId, loginUrl, userType } = req.userContext;
34625
34645
  const csrfToken = req.csrfToken;
34626
- const appInfo = await this.getAppInfo(appId);
34627
34646
  const environment = mapToWindowEnvironment(process.env.FORCE_FRAMEWORK_ENVIRONMENT);
34647
+ const [appPublishedData, tenantInfoData] = await Promise.all([
34648
+ this.getAppPublished(appId),
34649
+ this.getTenantInfo(appId)
34650
+ ]);
34651
+ const appInfo = appPublishedData?.app_info ?? null;
34628
34652
  req.__platform_data__ = {
34629
34653
  csrfToken: csrfToken ?? "",
34630
34654
  userId: userId ?? "",
@@ -34635,7 +34659,12 @@ var ViewContextMiddleware = class _ViewContextMiddleware {
34635
34659
  loginUrl: loginUrl ?? "",
34636
34660
  userType: userType ?? "",
34637
34661
  tenantId,
34638
- environment
34662
+ environment,
34663
+ // 预注入字段,前端无需再发 API 请求
34664
+ showBadge: appInfo?.show_badge !== false,
34665
+ tenantName: safeEscape(tenantInfoData?.tenant_info?.name ?? ""),
34666
+ isInternetVisible: tenantInfoData?.is_internet_visible ?? false,
34667
+ appPublished: appPublishedData ?? null
34639
34668
  };
34640
34669
  res.locals = {
34641
34670
  ...res.locals ?? {},
@@ -34769,7 +34798,7 @@ __name(apiResponseInterceptor, "apiResponseInterceptor");
34769
34798
 
34770
34799
  // src/middlewares/request-context/index.ts
34771
34800
  import { Injectable as Injectable5 } from "@nestjs/common";
34772
- import { RequestContextService } from "@lark-apaas/nestjs-common";
34801
+ import { RequestContextService, stripBasePath } from "@lark-apaas/nestjs-common";
34773
34802
  function _ts_decorate5(decorators, target, key, desc) {
34774
34803
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
34775
34804
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -34793,6 +34822,8 @@ var RequestContextMiddleware = class {
34793
34822
  const path2 = req.originalUrl ?? req.url;
34794
34823
  const userContext = req.userContext ?? {};
34795
34824
  const ttEnv = req.headers["x-tt-env"];
34825
+ const rawPageRoute = req.get("X-Page-Route");
34826
+ const pageRoute = stripBasePath(rawPageRoute, process.env.CLIENT_BASE_PATH) ?? void 0;
34796
34827
  const refererPath = req.headers["rpc-persist-apaas-observability-referer-path"];
34797
34828
  const observabilityApi = req.headers["rpc-persist-apaas-observability-api"];
34798
34829
  this.requestContext.run({
@@ -34803,6 +34834,7 @@ var RequestContextMiddleware = class {
34803
34834
  appId: userContext.appId,
34804
34835
  isSystemAccount: userContext.isSystemAccount,
34805
34836
  ttEnv,
34837
+ pageRoute,
34806
34838
  refererPath,
34807
34839
  observabilityApi
34808
34840
  }, () => next());
@@ -36321,13 +36353,16 @@ var PlatformModule = class _PlatformModule {
36321
36353
  };
36322
36354
  return {
36323
36355
  connectionString: configService.get("app.databaseUrl") ?? "",
36324
- logger: drizzleLogger
36356
+ logger: drizzleLogger,
36357
+ connectionTokenFilePath: "/var/run/secrets/zti/credential"
36325
36358
  };
36326
36359
  }, "useFactory")
36327
36360
  })
36328
36361
  ],
36329
36362
  AuthNPaasModule.forRoot(),
36330
- AuthZPaasModule.forRoot(),
36363
+ AuthZPaasModule.forRoot({
36364
+ ...options.authz || {}
36365
+ }),
36331
36366
  AutomationModule.forRoot(),
36332
36367
  CapabilityModule.forRoot({
36333
36368
  capabilitiesDir: options.capabilitiesDir,
@@ -36515,9 +36550,12 @@ export * from "@lark-apaas/nestjs-observable";
36515
36550
  export * from "@lark-apaas/nestjs-trigger";
36516
36551
  export * from "@lark-apaas/file-service";
36517
36552
  import { AutoTrace } from "@lark-apaas/nestjs-common";
36518
- import { CanRole } from "@lark-apaas/nestjs-authzpaas";
36553
+ import { AuthZPaasModule as AuthZPaasModule2, CanRole, Can, AuthorizationSDK, PERMISSION_RESOLVER_TOKEN } from "@lark-apaas/nestjs-authzpaas";
36519
36554
  export {
36555
+ AuthZPaasModule2 as AuthZPaasModule,
36556
+ AuthorizationSDK,
36520
36557
  AutoTrace,
36558
+ Can,
36521
36559
  CanRole,
36522
36560
  CsrfMiddleware,
36523
36561
  CsrfTokenMiddleware,
@@ -36526,6 +36564,7 @@ export {
36526
36564
  FileService,
36527
36565
  HtmlHotUpdateModule,
36528
36566
  HtmlHotUpdateService,
36567
+ PERMISSION_RESOLVER_TOKEN,
36529
36568
  PlatformHttpClientService,
36530
36569
  PlatformModule,
36531
36570
  StaticModule,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lark-apaas/fullstack-nestjs-core",
3
- "version": "1.1.34-alpha.6",
3
+ "version": "1.1.34-alpha.60",
4
4
  "description": "FullStack Nestjs Core",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -41,15 +41,15 @@
41
41
  "dependencies": {
42
42
  "@lark-apaas/file-service": "^0.1.2",
43
43
  "@lark-apaas/http-client": "^0.1.2",
44
- "@lark-apaas/nestjs-authnpaas": "^1.0.2",
45
- "@lark-apaas/nestjs-authzpaas": "0.1.2-alpha.29",
46
- "@lark-apaas/nestjs-capability": "0.1.5-alpha.46",
47
- "@lark-apaas/nestjs-common": "0.1.4-alpha.29",
48
- "@lark-apaas/nestjs-datapaas": "1.0.10-alpha.36",
49
- "@lark-apaas/nestjs-logger": "1.0.10-alpha.49",
50
- "@lark-apaas/nestjs-observable": "0.0.5-alpha.35",
44
+ "@lark-apaas/nestjs-authnpaas": "^1.0.3",
45
+ "@lark-apaas/nestjs-authzpaas": "^0.1.8",
46
+ "@lark-apaas/nestjs-capability": "^0.1.11",
47
+ "@lark-apaas/nestjs-common": "^0.1.8",
48
+ "@lark-apaas/nestjs-datapaas": "^1.0.19",
49
+ "@lark-apaas/nestjs-logger": "^1.0.16",
50
+ "@lark-apaas/nestjs-observable": "^0.0.11",
51
51
  "@lark-apaas/nestjs-openapi-devtools": "^1.0.10",
52
- "@lark-apaas/nestjs-trigger": "0.0.2-alpha.6",
52
+ "@lark-apaas/nestjs-trigger": "^0.0.3",
53
53
  "@nestjs/axios": "^4.0.1",
54
54
  "axios": "^1.13.2",
55
55
  "cookie-parser": "^1.4.7"