cabloy 5.1.106 → 5.1.107

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 (51) hide show
  1. package/.cabloy-version +1 -1
  2. package/CHANGELOG.md +12 -0
  3. package/cabloy-docs/backend/backend-resource-module-contract-chain.md +1 -0
  4. package/cabloy-docs/backend/controller-aop-guide.md +12 -0
  5. package/cabloy-docs/backend/controller-guide.md +45 -3
  6. package/cabloy-docs/backend/crud-workflow.md +14 -0
  7. package/cabloy-docs/backend/unit-testing.md +8 -2
  8. package/cabloy-docs/fullstack/openapi-to-sdk.md +1 -0
  9. package/cabloy-docs/fullstack/tutorial-2-first-crud.md +3 -0
  10. package/package.json +1 -1
  11. package/vona/packages-cli/cli/package.json +1 -1
  12. package/vona/packages-cli/cli-set-api/cli/templates/tools/crud/boilerplate/src/bean/ssrMenu.{{resourceName}}.ts_ +1 -0
  13. package/vona/packages-cli/cli-set-api/cli/templates/tools/crudBasic/boilerplate/src/controller/{{resourceName}}.ts_ +13 -4
  14. package/vona/packages-cli/cli-set-api/cli/templates/tools/crudBasic/boilerplate/test/{{resourceName}}.test.ts_ +22 -3
  15. package/vona/packages-cli/cli-set-api/cli/templates/tools/crudStart/boilerplate/src/controller/{{resourceName}}.ts_ +13 -4
  16. package/vona/packages-cli/cli-set-api/cli/templates/tools/crudStart/boilerplate/test/{{resourceName}}.test.ts_ +22 -3
  17. package/vona/packages-cli/cli-set-api/package.json +1 -1
  18. package/vona/packages-vona/vona/package.json +1 -1
  19. package/vona/src/suite/a-home/modules/home-user/src/.metadata/index.ts +2 -2
  20. package/vona/src/suite/a-home/modules/home-user/src/bean/meta.version.ts +10 -8
  21. package/vona/src/suite/a-home/modules/home-user/src/config/config.ts +6 -0
  22. package/vona/src/suite/a-home/modules/home-user/src/config/locale/en-us.ts +2 -0
  23. package/vona/src/suite/a-home/modules/home-user/src/config/locale/zh-cn.ts +2 -0
  24. package/vona/src/suite/a-home/modules/home-user/src/config/roles.ts +24 -0
  25. package/vona/src/suite/a-home/modules/home-user/src/entity/role.ts +7 -0
  26. package/vona/src/suite/a-home/modules/home-user/test/role.test.ts +45 -0
  27. package/vona/src/suite/a-training/modules/training-record/src/controller/record.ts +13 -4
  28. package/vona/src/suite/a-training/modules/training-record/test/record.test.ts +25 -2
  29. package/vona/src/suite/a-training/modules/training-student/src/controller/student.ts +18 -6
  30. package/vona/src/suite/a-training/modules/training-student/test/student.test.ts +33 -5
  31. package/vona/src/suite-vendor/a-cabloy/modules/a-ssr/cli/ssrMenuAdmin/boilerplate/{{sceneName}}.{{beanName}}.ts_ +1 -0
  32. package/vona/src/suite-vendor/a-cabloy/modules/a-ssr/package.json +1 -1
  33. package/vona/src/suite-vendor/a-cabloy/modules/a-ssr/src/service/ssrHandler.ts +1 -1
  34. package/vona/src/suite-vendor/a-cabloy/package.json +1 -1
  35. package/vona/src/suite-vendor/a-vona/modules/a-user/package.json +1 -1
  36. package/vona/src/suite-vendor/a-vona/modules/a-user/src/types/role.ts +3 -0
  37. package/vona/src/suite-vendor/a-vona/package.json +1 -1
  38. package/zova/packages-cli/cli/package.json +2 -2
  39. package/zova/packages-cli/cli-set-front/package.json +1 -1
  40. package/zova/packages-cli/cli-set-front/src/lib/bean/cli.openapi.generate.ts +4 -0
  41. package/zova/packages-zova/zova/package.json +2 -2
  42. package/zova/src/suite/a-home/modules/home-api/mock/passport.fake.ts +50 -1
  43. package/zova/src/suite/a-home/modules/home-api/src/api/openapi/types.ts +15 -7
  44. package/zova/src/suite/a-home/modules/home-base/src/.metadata/index.ts +10 -0
  45. package/zova/src/suite/a-home/modules/home-base/src/page/errorAccessDenied/controller.tsx +1 -1
  46. package/zova/src/suite/a-training/modules/training-student/src/api/openapi/types.ts +26 -17
  47. package/zova/src/suite/cabloy-basic/modules/basic-file/src/api/openapi/types.ts +26 -17
  48. package/zova/src/suite/cabloy-basic/modules/basic-image/src/api/openapi/types.ts +26 -17
  49. package/zova/src/suite-vendor/a-zova/modules/a-ssrserver/package.json +1 -1
  50. package/zova/src/suite-vendor/a-zova/modules/a-ssrserver/src/service/ssrHandler.ts +1 -1
  51. package/zova/src/suite-vendor/a-zova/package.json +2 -2
@@ -256,7 +256,7 @@ export interface paths {
256
256
  patch?: never;
257
257
  trace?: never;
258
258
  };
259
- '/api/home/user/passport/createPassportJwtFromOauthCode': {
259
+ '/api/home/user/passport/refreshAuthToken': {
260
260
  parameters: {
261
261
  query?: never;
262
262
  header?: never;
@@ -265,14 +265,14 @@ export interface paths {
265
265
  };
266
266
  get?: never;
267
267
  put?: never;
268
- post: operations['HomeUserPassport_createPassportJwtFromOauthCode'];
268
+ post: operations['HomeUserPassport_refreshAuthToken'];
269
269
  delete?: never;
270
270
  options?: never;
271
271
  head?: never;
272
272
  patch?: never;
273
273
  trace?: never;
274
274
  };
275
- '/api/home/user/passport/refreshAuthToken': {
275
+ '/api/home/user/passport/createPassportJwtFromOauthCode': {
276
276
  parameters: {
277
277
  query?: never;
278
278
  header?: never;
@@ -281,7 +281,7 @@ export interface paths {
281
281
  };
282
282
  get?: never;
283
283
  put?: never;
284
- post: operations['HomeUserPassport_refreshAuthToken'];
284
+ post: operations['HomeUserPassport_createPassportJwtFromOauthCode'];
285
285
  delete?: never;
286
286
  options?: never;
287
287
  head?: never;
@@ -1531,6 +1531,15 @@ export interface components {
1531
1531
  id: number | string;
1532
1532
  /** @description Role Name */
1533
1533
  name: string;
1534
+ /** @description Role Title */
1535
+ title: string;
1536
+ /** @description Role Locales */
1537
+ locales?:
1538
+ | {
1539
+ [key: string]: string;
1540
+ }
1541
+ | undefined;
1542
+ siteIds: string[];
1534
1543
  };
1535
1544
  'home-user.dto.passportJwt': {
1536
1545
  passport: components['schemas']['home-user.dto.passport'];
@@ -3373,7 +3382,7 @@ export interface operations {
3373
3382
  };
3374
3383
  authToken: true;
3375
3384
  };
3376
- HomeUserPassport_createPassportJwtFromOauthCode: {
3385
+ HomeUserPassport_refreshAuthToken: {
3377
3386
  parameters: {
3378
3387
  query?: never;
3379
3388
  header?: never;
@@ -3383,7 +3392,7 @@ export interface operations {
3383
3392
  requestBody: {
3384
3393
  content: {
3385
3394
  'application/json': {
3386
- code: string;
3395
+ refreshToken: string;
3387
3396
  };
3388
3397
  };
3389
3398
  };
@@ -3396,13 +3405,13 @@ export interface operations {
3396
3405
  'application/json': {
3397
3406
  code: string;
3398
3407
  message: string;
3399
- data: components['schemas']['home-user.dto.passportJwt'];
3408
+ data: components['schemas']['a-jwt.dto.jwtToken'];
3400
3409
  };
3401
3410
  };
3402
3411
  };
3403
3412
  };
3404
3413
  };
3405
- HomeUserPassport_refreshAuthToken: {
3414
+ HomeUserPassport_createPassportJwtFromOauthCode: {
3406
3415
  parameters: {
3407
3416
  query?: never;
3408
3417
  header?: never;
@@ -3412,7 +3421,7 @@ export interface operations {
3412
3421
  requestBody: {
3413
3422
  content: {
3414
3423
  'application/json': {
3415
- refreshToken: string;
3424
+ code: string;
3416
3425
  };
3417
3426
  };
3418
3427
  };
@@ -3425,7 +3434,7 @@ export interface operations {
3425
3434
  'application/json': {
3426
3435
  code: string;
3427
3436
  message: string;
3428
- data: components['schemas']['a-jwt.dto.jwtToken'];
3437
+ data: components['schemas']['home-user.dto.passportJwt'];
3429
3438
  };
3430
3439
  };
3431
3440
  };
@@ -3567,7 +3576,7 @@ export interface operations {
3567
3576
  'application/json': {
3568
3577
  code: string;
3569
3578
  message: string;
3570
- data?: unknown;
3579
+ data: undefined;
3571
3580
  };
3572
3581
  };
3573
3582
  };
@@ -3597,7 +3606,7 @@ export interface operations {
3597
3606
  'application/json': {
3598
3607
  code: string;
3599
3608
  message: string;
3600
- data?: unknown;
3609
+ data: undefined;
3601
3610
  };
3602
3611
  };
3603
3612
  };
@@ -3714,7 +3723,7 @@ export interface operations {
3714
3723
  'application/json': {
3715
3724
  code: string;
3716
3725
  message: string;
3717
- data?: unknown;
3726
+ data: undefined;
3718
3727
  };
3719
3728
  };
3720
3729
  };
@@ -3744,7 +3753,7 @@ export interface operations {
3744
3753
  'application/json': {
3745
3754
  code: string;
3746
3755
  message: string;
3747
- data?: unknown;
3756
+ data: undefined;
3748
3757
  };
3749
3758
  };
3750
3759
  };
@@ -3796,7 +3805,7 @@ export interface operations {
3796
3805
  'application/json': {
3797
3806
  code: string;
3798
3807
  message: string;
3799
- data?: unknown;
3808
+ data: undefined;
3800
3809
  };
3801
3810
  };
3802
3811
  };
@@ -4407,7 +4416,7 @@ export interface operations {
4407
4416
  'application/json': {
4408
4417
  code: string;
4409
4418
  message: string;
4410
- data?: unknown;
4419
+ data: undefined;
4411
4420
  };
4412
4421
  };
4413
4422
  };
@@ -4437,7 +4446,7 @@ export interface operations {
4437
4446
  'application/json': {
4438
4447
  code: string;
4439
4448
  message: string;
4440
- data?: unknown;
4449
+ data: undefined;
4441
4450
  };
4442
4451
  };
4443
4452
  };
@@ -256,7 +256,7 @@ export interface paths {
256
256
  patch?: never;
257
257
  trace?: never;
258
258
  };
259
- '/api/home/user/passport/createPassportJwtFromOauthCode': {
259
+ '/api/home/user/passport/refreshAuthToken': {
260
260
  parameters: {
261
261
  query?: never;
262
262
  header?: never;
@@ -265,14 +265,14 @@ export interface paths {
265
265
  };
266
266
  get?: never;
267
267
  put?: never;
268
- post: operations['HomeUserPassport_createPassportJwtFromOauthCode'];
268
+ post: operations['HomeUserPassport_refreshAuthToken'];
269
269
  delete?: never;
270
270
  options?: never;
271
271
  head?: never;
272
272
  patch?: never;
273
273
  trace?: never;
274
274
  };
275
- '/api/home/user/passport/refreshAuthToken': {
275
+ '/api/home/user/passport/createPassportJwtFromOauthCode': {
276
276
  parameters: {
277
277
  query?: never;
278
278
  header?: never;
@@ -281,7 +281,7 @@ export interface paths {
281
281
  };
282
282
  get?: never;
283
283
  put?: never;
284
- post: operations['HomeUserPassport_refreshAuthToken'];
284
+ post: operations['HomeUserPassport_createPassportJwtFromOauthCode'];
285
285
  delete?: never;
286
286
  options?: never;
287
287
  head?: never;
@@ -1531,6 +1531,15 @@ export interface components {
1531
1531
  id: number | string;
1532
1532
  /** @description Role Name */
1533
1533
  name: string;
1534
+ /** @description Role Title */
1535
+ title: string;
1536
+ /** @description Role Locales */
1537
+ locales?:
1538
+ | {
1539
+ [key: string]: string;
1540
+ }
1541
+ | undefined;
1542
+ siteIds: string[];
1534
1543
  };
1535
1544
  'home-user.dto.passportJwt': {
1536
1545
  passport: components['schemas']['home-user.dto.passport'];
@@ -3373,7 +3382,7 @@ export interface operations {
3373
3382
  };
3374
3383
  authToken: true;
3375
3384
  };
3376
- HomeUserPassport_createPassportJwtFromOauthCode: {
3385
+ HomeUserPassport_refreshAuthToken: {
3377
3386
  parameters: {
3378
3387
  query?: never;
3379
3388
  header?: never;
@@ -3383,7 +3392,7 @@ export interface operations {
3383
3392
  requestBody: {
3384
3393
  content: {
3385
3394
  'application/json': {
3386
- code: string;
3395
+ refreshToken: string;
3387
3396
  };
3388
3397
  };
3389
3398
  };
@@ -3396,13 +3405,13 @@ export interface operations {
3396
3405
  'application/json': {
3397
3406
  code: string;
3398
3407
  message: string;
3399
- data: components['schemas']['home-user.dto.passportJwt'];
3408
+ data: components['schemas']['a-jwt.dto.jwtToken'];
3400
3409
  };
3401
3410
  };
3402
3411
  };
3403
3412
  };
3404
3413
  };
3405
- HomeUserPassport_refreshAuthToken: {
3414
+ HomeUserPassport_createPassportJwtFromOauthCode: {
3406
3415
  parameters: {
3407
3416
  query?: never;
3408
3417
  header?: never;
@@ -3412,7 +3421,7 @@ export interface operations {
3412
3421
  requestBody: {
3413
3422
  content: {
3414
3423
  'application/json': {
3415
- refreshToken: string;
3424
+ code: string;
3416
3425
  };
3417
3426
  };
3418
3427
  };
@@ -3425,7 +3434,7 @@ export interface operations {
3425
3434
  'application/json': {
3426
3435
  code: string;
3427
3436
  message: string;
3428
- data: components['schemas']['a-jwt.dto.jwtToken'];
3437
+ data: components['schemas']['home-user.dto.passportJwt'];
3429
3438
  };
3430
3439
  };
3431
3440
  };
@@ -3567,7 +3576,7 @@ export interface operations {
3567
3576
  'application/json': {
3568
3577
  code: string;
3569
3578
  message: string;
3570
- data?: unknown;
3579
+ data: undefined;
3571
3580
  };
3572
3581
  };
3573
3582
  };
@@ -3597,7 +3606,7 @@ export interface operations {
3597
3606
  'application/json': {
3598
3607
  code: string;
3599
3608
  message: string;
3600
- data?: unknown;
3609
+ data: undefined;
3601
3610
  };
3602
3611
  };
3603
3612
  };
@@ -3714,7 +3723,7 @@ export interface operations {
3714
3723
  'application/json': {
3715
3724
  code: string;
3716
3725
  message: string;
3717
- data?: unknown;
3726
+ data: undefined;
3718
3727
  };
3719
3728
  };
3720
3729
  };
@@ -3744,7 +3753,7 @@ export interface operations {
3744
3753
  'application/json': {
3745
3754
  code: string;
3746
3755
  message: string;
3747
- data?: unknown;
3756
+ data: undefined;
3748
3757
  };
3749
3758
  };
3750
3759
  };
@@ -3796,7 +3805,7 @@ export interface operations {
3796
3805
  'application/json': {
3797
3806
  code: string;
3798
3807
  message: string;
3799
- data?: unknown;
3808
+ data: undefined;
3800
3809
  };
3801
3810
  };
3802
3811
  };
@@ -4407,7 +4416,7 @@ export interface operations {
4407
4416
  'application/json': {
4408
4417
  code: string;
4409
4418
  message: string;
4410
- data?: unknown;
4419
+ data: undefined;
4411
4420
  };
4412
4421
  };
4413
4422
  };
@@ -4437,7 +4446,7 @@ export interface operations {
4437
4446
  'application/json': {
4438
4447
  code: string;
4439
4448
  message: string;
4440
- data?: unknown;
4449
+ data: undefined;
4441
4450
  };
4442
4451
  };
4443
4452
  };
@@ -256,7 +256,7 @@ export interface paths {
256
256
  patch?: never;
257
257
  trace?: never;
258
258
  };
259
- '/api/home/user/passport/createPassportJwtFromOauthCode': {
259
+ '/api/home/user/passport/refreshAuthToken': {
260
260
  parameters: {
261
261
  query?: never;
262
262
  header?: never;
@@ -265,14 +265,14 @@ export interface paths {
265
265
  };
266
266
  get?: never;
267
267
  put?: never;
268
- post: operations['HomeUserPassport_createPassportJwtFromOauthCode'];
268
+ post: operations['HomeUserPassport_refreshAuthToken'];
269
269
  delete?: never;
270
270
  options?: never;
271
271
  head?: never;
272
272
  patch?: never;
273
273
  trace?: never;
274
274
  };
275
- '/api/home/user/passport/refreshAuthToken': {
275
+ '/api/home/user/passport/createPassportJwtFromOauthCode': {
276
276
  parameters: {
277
277
  query?: never;
278
278
  header?: never;
@@ -281,7 +281,7 @@ export interface paths {
281
281
  };
282
282
  get?: never;
283
283
  put?: never;
284
- post: operations['HomeUserPassport_refreshAuthToken'];
284
+ post: operations['HomeUserPassport_createPassportJwtFromOauthCode'];
285
285
  delete?: never;
286
286
  options?: never;
287
287
  head?: never;
@@ -1531,6 +1531,15 @@ export interface components {
1531
1531
  id: number | string;
1532
1532
  /** @description Role Name */
1533
1533
  name: string;
1534
+ /** @description Role Title */
1535
+ title: string;
1536
+ /** @description Role Locales */
1537
+ locales?:
1538
+ | {
1539
+ [key: string]: string;
1540
+ }
1541
+ | undefined;
1542
+ siteIds: string[];
1534
1543
  };
1535
1544
  'home-user.dto.passportJwt': {
1536
1545
  passport: components['schemas']['home-user.dto.passport'];
@@ -3373,7 +3382,7 @@ export interface operations {
3373
3382
  };
3374
3383
  authToken: true;
3375
3384
  };
3376
- HomeUserPassport_createPassportJwtFromOauthCode: {
3385
+ HomeUserPassport_refreshAuthToken: {
3377
3386
  parameters: {
3378
3387
  query?: never;
3379
3388
  header?: never;
@@ -3383,7 +3392,7 @@ export interface operations {
3383
3392
  requestBody: {
3384
3393
  content: {
3385
3394
  'application/json': {
3386
- code: string;
3395
+ refreshToken: string;
3387
3396
  };
3388
3397
  };
3389
3398
  };
@@ -3396,13 +3405,13 @@ export interface operations {
3396
3405
  'application/json': {
3397
3406
  code: string;
3398
3407
  message: string;
3399
- data: components['schemas']['home-user.dto.passportJwt'];
3408
+ data: components['schemas']['a-jwt.dto.jwtToken'];
3400
3409
  };
3401
3410
  };
3402
3411
  };
3403
3412
  };
3404
3413
  };
3405
- HomeUserPassport_refreshAuthToken: {
3414
+ HomeUserPassport_createPassportJwtFromOauthCode: {
3406
3415
  parameters: {
3407
3416
  query?: never;
3408
3417
  header?: never;
@@ -3412,7 +3421,7 @@ export interface operations {
3412
3421
  requestBody: {
3413
3422
  content: {
3414
3423
  'application/json': {
3415
- refreshToken: string;
3424
+ code: string;
3416
3425
  };
3417
3426
  };
3418
3427
  };
@@ -3425,7 +3434,7 @@ export interface operations {
3425
3434
  'application/json': {
3426
3435
  code: string;
3427
3436
  message: string;
3428
- data: components['schemas']['a-jwt.dto.jwtToken'];
3437
+ data: components['schemas']['home-user.dto.passportJwt'];
3429
3438
  };
3430
3439
  };
3431
3440
  };
@@ -3567,7 +3576,7 @@ export interface operations {
3567
3576
  'application/json': {
3568
3577
  code: string;
3569
3578
  message: string;
3570
- data?: unknown;
3579
+ data: undefined;
3571
3580
  };
3572
3581
  };
3573
3582
  };
@@ -3597,7 +3606,7 @@ export interface operations {
3597
3606
  'application/json': {
3598
3607
  code: string;
3599
3608
  message: string;
3600
- data?: unknown;
3609
+ data: undefined;
3601
3610
  };
3602
3611
  };
3603
3612
  };
@@ -3714,7 +3723,7 @@ export interface operations {
3714
3723
  'application/json': {
3715
3724
  code: string;
3716
3725
  message: string;
3717
- data?: unknown;
3726
+ data: undefined;
3718
3727
  };
3719
3728
  };
3720
3729
  };
@@ -3744,7 +3753,7 @@ export interface operations {
3744
3753
  'application/json': {
3745
3754
  code: string;
3746
3755
  message: string;
3747
- data?: unknown;
3756
+ data: undefined;
3748
3757
  };
3749
3758
  };
3750
3759
  };
@@ -3796,7 +3805,7 @@ export interface operations {
3796
3805
  'application/json': {
3797
3806
  code: string;
3798
3807
  message: string;
3799
- data?: unknown;
3808
+ data: undefined;
3800
3809
  };
3801
3810
  };
3802
3811
  };
@@ -4407,7 +4416,7 @@ export interface operations {
4407
4416
  'application/json': {
4408
4417
  code: string;
4409
4418
  message: string;
4410
- data?: unknown;
4419
+ data: undefined;
4411
4420
  };
4412
4421
  };
4413
4422
  };
@@ -4437,7 +4446,7 @@ export interface operations {
4437
4446
  'application/json': {
4438
4447
  code: string;
4439
4448
  message: string;
4440
- data?: unknown;
4449
+ data: undefined;
4441
4450
  };
4442
4451
  };
4443
4452
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zova-module-a-ssrserver",
3
- "version": "5.1.22",
3
+ "version": "5.1.23",
4
4
  "gitHead": "09d901d17140a80ee0764211b441cda72fd94663",
5
5
  "description": "",
6
6
  "keywords": [
@@ -55,7 +55,7 @@ export class ServiceSsrHandler extends BeanBase {
55
55
  return undefined;
56
56
  }
57
57
 
58
- public async render(options: ISsrHandlerRenderOptionsInner) {
58
+ public async render(options: ISsrHandlerRenderOptionsInner): Promise<true | string | undefined> {
59
59
  // resolve route
60
60
  const pagePathFull =
61
61
  options.state?.pagePathFull ?? this.sys.util.getPagePathFromAbsoluteUrl(options.req.url!);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zova-suite-a-zova",
3
- "version": "5.1.134",
3
+ "version": "5.1.135",
4
4
  "gitHead": "2c5c19284bab738e492856189acb6fad74b8a7b7",
5
5
  "description": "zova",
6
6
  "license": "MIT",
@@ -28,7 +28,7 @@
28
28
  "zova-module-a-routertabs": "^5.1.33",
29
29
  "zova-module-a-ssr": "^5.1.29",
30
30
  "zova-module-a-ssrhmr": "^5.1.22",
31
- "zova-module-a-ssrserver": "^5.1.22",
31
+ "zova-module-a-ssrserver": "^5.1.23",
32
32
  "zova-module-a-style": "^5.1.32",
33
33
  "zova-module-a-table": "^5.1.37",
34
34
  "zova-module-a-zod": "^5.1.36",