vona-cli-set-api 1.0.383 → 1.0.385

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 (39) hide show
  1. package/cli/templates/create/project/basic/boilerplate/.vscode/vona.code-snippets +0 -10
  2. package/cli/templates/create/project/basic/boilerplate/env/.env +0 -1
  3. package/cli/templates/create/project/basic/boilerplate/package.original.json +1 -1
  4. package/cli/templates/create/project/basic/boilerplate/src/backend/config/config/config.dev.play.ts +3 -3
  5. package/cli/templates/create/project/basic/boilerplate/src/backend/config/config/config.dev.ts +3 -3
  6. package/cli/templates/create/project/basic/boilerplate/src/backend/config/config/config.prod.ts +3 -3
  7. package/cli/templates/create/project/basic/boilerplate/src/backend/config/config/config.test.ts +3 -3
  8. package/cli/templates/create/project/basic/boilerplate/src/backend/config/config/config.ts +7 -7
  9. package/cli/templates/create/project/basic/boilerplate/src/backend/config/locales.ts +2 -1
  10. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-base/node_modules/.bin/rimraf +2 -2
  11. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-base/package.json +1 -1
  12. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-base/src/controller/menu.ts +1 -1
  13. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-base/src/main.ts +1 -1
  14. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-index/node_modules/.bin/rimraf +2 -2
  15. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-index/package.json +1 -1
  16. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-index/src/controller/home.ts +1 -1
  17. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/node_modules/.bin/rimraf +2 -2
  18. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/package.json +1 -1
  19. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/bean/meta.version.ts +1 -0
  20. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/config/locale/en-us.ts +1 -0
  21. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/config/locale/zh-cn.ts +1 -0
  22. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/controller/passport.ts +1 -1
  23. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/dto/login.ts +1 -1
  24. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/dto/passport.ts +1 -1
  25. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/dto/passportJwt.ts +1 -1
  26. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/dto/register.ts +1 -1
  27. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/entity/role.ts +1 -1
  28. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/entity/roleUser.ts +1 -1
  29. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/entity/user.ts +4 -1
  30. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/modules/home-user/src/service/userAdapter.ts +1 -0
  31. package/cli/templates/create/project/basic/boilerplate/src/suite/a-home/package.json +1 -1
  32. package/cli/templates/tools/crud/boilerplate/src/controller/{{resourceName}}.ts_ +2 -2
  33. package/cli/templates/tools/crud/boilerplate/src/dto/{{resourceName}}Query.ts_ +2 -2
  34. package/cli/templates/tools/crud/boilerplate/src/entity/{{resourceName}}.ts_ +1 -1
  35. package/dist/lib/bean/cli.bin.build.js +1 -1
  36. package/dist/lib/bean/cli.bin.dev.js +11 -1
  37. package/package.json +4 -4
  38. package/templates/app/app.ejs +2 -4
  39. package/templates/app/bootstrap.ejs +2 -4
@@ -320,15 +320,5 @@
320
320
  "}"
321
321
  ],
322
322
  "description": "record.jwtclient"
323
- },
324
- "findManyQueryTransform": {
325
- "scope": "typescript,typescriptreact",
326
- "prefix": "findmanyquerytransform",
327
- "body": [
328
- "findManyQueryTransform(_info: IPipeOptionsQueryTransformInfo): boolean | undefined {",
329
- " $0return undefined;"
330
- "}"
331
- ],
332
- "description": "findManyQueryTransform"
333
323
  }
334
324
  }
@@ -36,7 +36,6 @@ LOGGER_ROTATE_MAXFILES = 7d
36
36
  BUILD_OUTDIR =
37
37
  BUILD_SOURCEMAP = false
38
38
  BUILD_MINIFY = true
39
- BUILD_INLINEDYNAMICIMPORTS = true
40
39
  BUILD_LOG_CIRCULAR_DEPENDENCY = false
41
40
  BUILD_COPY_DIST =
42
41
  BUILD_COPY_RELEASE =
@@ -46,7 +46,7 @@
46
46
  }
47
47
  },
48
48
  "dependencies": {
49
- "vona": "^5.0.220"
49
+ "vona": "^5.0.221"
50
50
  },
51
51
  "devDependencies": {
52
52
  "@cabloy/lint": "^5.0.16",
@@ -1,7 +1,7 @@
1
- import type { VonaAppInfo, VonaConfigEnv, VonaConfigOptional } from 'vona';
1
+ import type { VonaApplication, VonaConfigEnv, VonaConfigOptional } from 'vona';
2
2
 
3
- export default function (_appInfo: VonaAppInfo, _env: VonaConfigEnv) {
4
- const config = {} as VonaConfigOptional;
3
+ export default async function (_app: VonaApplication, _env: VonaConfigEnv) {
4
+ const config: VonaConfigOptional = {};
5
5
 
6
6
  // instance
7
7
  config.instance = {
@@ -1,7 +1,7 @@
1
- import type { VonaAppInfo, VonaConfigEnv, VonaConfigOptional } from 'vona';
1
+ import type { VonaApplication, VonaConfigEnv, VonaConfigOptional } from 'vona';
2
2
 
3
- export default function (_appInfo: VonaAppInfo, _env: VonaConfigEnv) {
4
- const config = {} as VonaConfigOptional;
3
+ export default async function (_app: VonaApplication, _env: VonaConfigEnv) {
4
+ const config: VonaConfigOptional = {};
5
5
 
6
6
  // instance
7
7
  config.instance = {
@@ -1,7 +1,7 @@
1
- import type { VonaAppInfo, VonaConfigEnv, VonaConfigOptional } from 'vona';
1
+ import type { VonaApplication, VonaConfigEnv, VonaConfigOptional } from 'vona';
2
2
 
3
- export default function (_appInfo: VonaAppInfo, _env: VonaConfigEnv) {
4
- const config = {} as VonaConfigOptional;
3
+ export default async function (_app: VonaApplication, _env: VonaConfigEnv) {
4
+ const config: VonaConfigOptional = {};
5
5
 
6
6
  // instance
7
7
  config.instance = {
@@ -1,7 +1,7 @@
1
- import type { VonaAppInfo, VonaConfigEnv, VonaConfigOptional } from 'vona';
1
+ import type { VonaApplication, VonaConfigEnv, VonaConfigOptional } from 'vona';
2
2
 
3
- export default function (_appInfo: VonaAppInfo, _env: VonaConfigEnv) {
4
- const config = {} as VonaConfigOptional;
3
+ export default async function (_app: VonaApplication, _env: VonaConfigEnv) {
4
+ const config: VonaConfigOptional = {};
5
5
 
6
6
  // proxy
7
7
  config.proxy = {
@@ -1,4 +1,4 @@
1
- import type { ILoggerOptionsClientInfo, VonaAppInfo, VonaApplication, VonaConfigEnv, VonaConfigOptional } from 'vona';
1
+ import type { ILoggerOptionsClientInfo, VonaApplication, VonaConfigEnv, VonaConfigOptional } from 'vona';
2
2
  import type { IMailClientRecord, TypeMailTransportService } from 'vona-module-a-mail';
3
3
  import type { IDatabaseClientRecord } from 'vona-module-a-orm';
4
4
  import type * as Winston from 'winston';
@@ -18,8 +18,8 @@ declare module 'vona-module-a-orm' {
18
18
  }
19
19
  }
20
20
 
21
- export default function (appInfo: VonaAppInfo, env: VonaConfigEnv) {
22
- const config = {} as VonaConfigOptional;
21
+ export default async function (app: VonaApplication, env: VonaConfigEnv) {
22
+ const config: VonaConfigOptional = {};
23
23
 
24
24
  // modules
25
25
  config.modules = {};
@@ -29,8 +29,8 @@ export default function (appInfo: VonaAppInfo, env: VonaConfigEnv) {
29
29
 
30
30
  // meta
31
31
  config.meta = {
32
- flavor: appInfo.configMeta.flavor,
33
- mode: appInfo.configMeta.mode,
32
+ flavor: app.configMeta.flavor,
33
+ mode: app.configMeta.mode,
34
34
  };
35
35
 
36
36
  // instance
@@ -42,7 +42,7 @@ export default function (appInfo: VonaAppInfo, env: VonaConfigEnv) {
42
42
  };
43
43
 
44
44
  // server
45
- const publicDir = env.SERVER_PUBLICDIR || getPublicPathPhysicalRoot(appInfo);
45
+ const publicDir = env.SERVER_PUBLICDIR || getPublicPathPhysicalRoot(app);
46
46
  const subdomainOffset = Number.parseInt(env.SERVER_SUBDOMAINOFFSET || '1');
47
47
  const workers = Number.parseInt(env.SERVER_WORKERS!);
48
48
  config.server = {
@@ -70,7 +70,7 @@ export default function (appInfo: VonaAppInfo, env: VonaConfigEnv) {
70
70
  };
71
71
 
72
72
  // logger
73
- const loggerDir = env.LOGGER_DIR || getLoggerPathPhysicalRoot(appInfo);
73
+ const loggerDir = env.LOGGER_DIR || getLoggerPathPhysicalRoot(app);
74
74
  config.logger = {
75
75
  baseDir: loggerDir,
76
76
  rotate(filename: string) {
@@ -1,7 +1,8 @@
1
+ import type { VonaLocaleOptionalMap } from 'vona';
1
2
  import en_us from './locale/en-us.ts';
2
3
  import zh_cn from './locale/zh-cn.ts';
3
4
 
4
- export const locales = {
5
+ export const locales: VonaLocaleOptionalMap = {
5
6
  'en-us': en_us,
6
7
  'zh-cn': zh_cn,
7
8
  };
@@ -10,9 +10,9 @@ case `uname` in
10
10
  esac
11
11
 
12
12
  if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules"
13
+ export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules"
14
14
  else
15
- export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules:$NODE_PATH"
15
+ export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules:$NODE_PATH"
16
16
  fi
17
17
  if [ -x "$basedir/node" ]; then
18
18
  exec "$basedir/node" "$basedir/../rimraf/dist/esm/bin.mjs" "$@"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vona-module-home-base",
3
3
  "type": "module",
4
- "version": "5.0.11",
4
+ "version": "5.0.12",
5
5
  "title": "home-base",
6
6
  "vonaModule": {
7
7
  "dependencies": {
@@ -2,7 +2,7 @@ import type { IMenus } from 'vona-module-a-menu';
2
2
  import type { IDecoratorControllerOptions } from 'vona-module-a-web';
3
3
  import { BeanBase } from 'vona';
4
4
  import { DtoMenus } from 'vona-module-a-menu';
5
- import { Api, v } from 'vona-module-a-openapi';
5
+ import { Api, v } from 'vona-module-a-openapiutils';
6
6
  import { Arg, Controller, Web } from 'vona-module-a-web';
7
7
 
8
8
  export interface IControllerOptionsMenu extends IDecoratorControllerOptions {}
@@ -9,7 +9,7 @@ export class Main extends BeanSimple implements IModuleMain {
9
9
  'en-us': en,
10
10
  'zh-cn': zhCN,
11
11
  };
12
- this.app.util.setLocaleErrors(localeErrors, this.app.scope('a-i18n').config.defaultLocale);
12
+ this.app.util.setLocaleErrors(localeErrors, this.app.scope('a-i18n').config.locale.defaultLocale);
13
13
  }
14
14
 
15
15
  async configLoaded(_config: any) {}
@@ -10,9 +10,9 @@ case `uname` in
10
10
  esac
11
11
 
12
12
  if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules"
13
+ export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules"
14
14
  else
15
- export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules:$NODE_PATH"
15
+ export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules:$NODE_PATH"
16
16
  fi
17
17
  if [ -x "$basedir/node" ]; then
18
18
  exec "$basedir/node" "$basedir/../rimraf/dist/esm/bin.mjs" "$@"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vona-module-home-index",
3
3
  "type": "module",
4
- "version": "5.0.11",
4
+ "version": "5.0.12",
5
5
  "title": "home-index",
6
6
  "vonaModule": {
7
7
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  import type { IDecoratorControllerOptions } from 'vona-module-a-web';
2
2
  import { BeanBase } from 'vona';
3
- import { Api } from 'vona-module-a-openapi';
3
+ import { Api } from 'vona-module-a-openapiutils';
4
4
  import { Passport } from 'vona-module-a-user';
5
5
  import { Controller, Web } from 'vona-module-a-web';
6
6
  import { $locale } from '../.metadata/index.ts';
@@ -10,9 +10,9 @@ case `uname` in
10
10
  esac
11
11
 
12
12
  if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules"
13
+ export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules"
14
14
  else
15
- export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.0.1/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules:$NODE_PATH"
15
+ export NODE_PATH="/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/esm/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/dist/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules/rimraf/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/rimraf@6.1.2/node_modules:/Volumes/my-data/cabloy/vona/node_modules/.pnpm/node_modules:$NODE_PATH"
16
16
  fi
17
17
  if [ -x "$basedir/node" ]; then
18
18
  exec "$basedir/node" "$basedir/../rimraf/dist/esm/bin.mjs" "$@"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vona-module-home-user",
3
3
  "type": "module",
4
- "version": "5.0.19",
4
+ "version": "5.0.20",
5
5
  "title": "home-user",
6
6
  "vonaModule": {
7
7
  "fileVersion": 1,
@@ -24,6 +24,7 @@ export class MetaVersion extends BeanBase implements IMetaVersionUpdate, IMetaVe
24
24
  table.string(entityUser.mobile, 255).comment(entityUser.$comment.mobile);
25
25
  table.boolean(entityUser.activated).defaultTo(entityUser.$default.activated).comment(entityUser.$comment.activated);
26
26
  table.string(entityUser.locale, 255).comment(entityUser.$comment.locale);
27
+ table.string(entityUser.tz, 255).comment(entityUser.$comment.tz);
27
28
  });
28
29
  // homeRoleUser
29
30
  const entityRoleUser = this.scope.entity.roleUser;
@@ -11,6 +11,7 @@ export default {
11
11
  UserMobile: 'Mobile',
12
12
  UserActivated: 'Activated',
13
13
  UserLocale: 'Language',
14
+ UserTz: 'Timezone',
14
15
  UsernameExists: 'Username Exists',
15
16
  EmailExists: 'Email Exists',
16
17
  PasswordsNotMatch: 'Passwords do not match',
@@ -11,6 +11,7 @@ export default {
11
11
  UserMobile: '手机号',
12
12
  UserActivated: '已激活',
13
13
  UserLocale: '语言',
14
+ UserTz: '时区',
14
15
  UsernameExists: '用户名已存在',
15
16
  EmailExists: '电子邮件已存在',
16
17
  PasswordsNotMatch: '密码不一致',
@@ -6,7 +6,7 @@ import type { EntityUser } from '../entity/user.ts';
6
6
  import { BeanBase } from 'vona';
7
7
  import { Core } from 'vona-module-a-core';
8
8
  import { DtoJwtToken } from 'vona-module-a-jwt';
9
- import { Api, v } from 'vona-module-a-openapi';
9
+ import { Api, v } from 'vona-module-a-openapiutils';
10
10
  import { Passport } from 'vona-module-a-user';
11
11
  import { Arg, Controller, Web } from 'vona-module-a-web';
12
12
  import { z } from 'zod';
@@ -1,6 +1,6 @@
1
1
  import type { IDecoratorDtoOptions } from 'vona-module-a-web';
2
2
  import { DtoCaptchaVerify } from 'vona-module-a-captcha';
3
- import { Api, v } from 'vona-module-a-openapi';
3
+ import { Api, v } from 'vona-module-a-openapiutils';
4
4
  import { Dto } from 'vona-module-a-web';
5
5
 
6
6
  export interface IDtoOptionsLogin extends IDecoratorDtoOptions {}
@@ -1,6 +1,6 @@
1
1
  import type { IDecoratorDtoOptions } from 'vona-module-a-web';
2
2
  import { DtoAuth } from 'vona-module-a-auth';
3
- import { Api, v } from 'vona-module-a-openapi';
3
+ import { Api, v } from 'vona-module-a-openapiutils';
4
4
  import { Dto } from 'vona-module-a-web';
5
5
  import { EntityRole } from 'vona-module-home-user';
6
6
  import { EntityUser } from '../entity/user.ts';
@@ -1,6 +1,6 @@
1
1
  import type { IDecoratorDtoOptions } from 'vona-module-a-web';
2
2
  import { DtoJwtToken } from 'vona-module-a-jwt';
3
- import { Api } from 'vona-module-a-openapi';
3
+ import { Api } from 'vona-module-a-openapiutils';
4
4
  import { Dto } from 'vona-module-a-web';
5
5
  import { DtoPassport } from './passport.ts';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import type { IDecoratorDtoOptions } from 'vona-module-a-web';
2
2
  import { DtoCaptchaVerify } from 'vona-module-a-captcha';
3
- import { Api, v } from 'vona-module-a-openapi';
3
+ import { Api, v } from 'vona-module-a-openapiutils';
4
4
  import { Dto } from 'vona-module-a-web';
5
5
 
6
6
  export interface IDtoOptionsRegister extends IDecoratorDtoOptions {}
@@ -1,6 +1,6 @@
1
1
  import type { IDecoratorEntityOptions } from 'vona-module-a-orm';
2
2
  import type { IRole } from 'vona-module-a-user';
3
- import { Api, v } from 'vona-module-a-openapi';
3
+ import { Api, v } from 'vona-module-a-openapiutils';
4
4
  import { Entity, EntityBase } from 'vona-module-a-orm';
5
5
  import { $locale } from '../.metadata/index.ts';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import type { TableIdentity } from 'table-identity';
2
2
  import type { IDecoratorEntityOptions } from 'vona-module-a-orm';
3
- import { Api, v } from 'vona-module-a-openapi';
3
+ import { Api, v } from 'vona-module-a-openapiutils';
4
4
  import { Entity, EntityBase } from 'vona-module-a-orm';
5
5
 
6
6
  export interface IEntityOptionsRoleUser extends IDecoratorEntityOptions {}
@@ -1,7 +1,7 @@
1
1
  import type { ILocaleRecord } from 'vona';
2
2
  import type { IDecoratorEntityOptions } from 'vona-module-a-orm';
3
3
  import type { IUser } from 'vona-module-a-user';
4
- import { Api, v } from 'vona-module-a-openapi';
4
+ import { Api, v } from 'vona-module-a-openapiutils';
5
5
  import { Entity, EntityBase } from 'vona-module-a-orm';
6
6
  import { z } from 'zod';
7
7
  import { $locale } from '../.metadata/index.ts';
@@ -27,4 +27,7 @@ export class EntityUser extends EntityBase implements IUser {
27
27
 
28
28
  @Api.field(v.title($locale('UserLocale')), z.string().optional())
29
29
  locale?: keyof ILocaleRecord | undefined;
30
+
31
+ @Api.field(v.title($locale('UserTz')), v.optional())
32
+ tz?: string;
30
33
  }
@@ -15,6 +15,7 @@ export class ServiceUserAdapter extends BeanBase implements IUserAdapter {
15
15
  email: profile.emails?.[0].value,
16
16
  avatar: profile.photos?.[0].value,
17
17
  locale: profile.locale || this.ctx.locale,
18
+ tz: this.ctx.tz,
18
19
  };
19
20
  }
20
21
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vona-suite-a-home",
3
3
  "type": "module",
4
- "version": "5.0.23",
4
+ "version": "5.0.24",
5
5
  "title": "a-home",
6
6
  "description": "",
7
7
  "author": "zhennann",
@@ -3,7 +3,7 @@ import type { IQueryParams } from 'vona-module-a-orm';
3
3
  import type { IDecoratorControllerOptions } from 'vona-module-a-web';
4
4
  import type { Model<%=argv.resourceNameCapitalize%> } from '../model/<%=argv.resourceName%>.ts';
5
5
  import { BeanBase } from 'vona';
6
- import { Api, v } from 'vona-module-a-openapi';
6
+ import { Api, v } from 'vona-module-a-openapiutils';
7
7
  import { Arg, Controller, Web } from 'vona-module-a-web';
8
8
  import { Dto<%=argv.resourceNameCapitalize%>Create } from '../dto/<%=argv.resourceName%>Create.ts';
9
9
  import { Dto<%=argv.resourceNameCapitalize%>Query } from '../dto/<%=argv.resourceName%>Query.ts';
@@ -23,7 +23,7 @@ export class Controller<%=argv.resourceNameCapitalize%> extends BeanBase {
23
23
 
24
24
  @Web.get()
25
25
  @Api.body(Dto<%=argv.resourceNameCapitalize%>QueryRes)
26
- async findMany(@Arg.queryPro(Dto<%=argv.resourceNameCapitalize%>Query) params: IQueryParams<Model<%=argv.resourceNameCapitalize%>>): Promise<Dto<%=argv.resourceNameCapitalize%>QueryRes> {
26
+ async findMany(@Arg.filter(Dto<%=argv.resourceNameCapitalize%>Query) params: IQueryParams<Model<%=argv.resourceNameCapitalize%>>): Promise<Dto<%=argv.resourceNameCapitalize%>QueryRes> {
27
27
  return await this.scope.service.<%=argv.resourceName%>.findMany(params);
28
28
  }
29
29
 
@@ -1,5 +1,5 @@
1
1
  import type { IDecoratorDtoOptions } from 'vona-module-a-web';
2
- import { Api, v } from 'vona-module-a-openapi';
2
+ import { Api, v } from 'vona-module-a-openapiutils';
3
3
  import { $Dto, $tableName } from 'vona-module-a-orm';
4
4
  import { Dto } from 'vona-module-a-web';
5
5
  import { Entity<%=argv.resourceNameCapitalize%> } from '../entity/<%=argv.resourceName%>.ts';
@@ -7,7 +7,7 @@ import { Entity<%=argv.resourceNameCapitalize%> } from '../entity/<%=argv.resour
7
7
  export interface IDtoOptions<%=argv.resourceNameCapitalize%>Query extends IDecoratorDtoOptions {}
8
8
 
9
9
  @Dto<IDtoOptions<%=argv.resourceNameCapitalize%>Query>({
10
- openapi: { query: { table: $tableName(Entity<%=argv.resourceNameCapitalize%>) } },
10
+ openapi: { filter: { table: $tableName(Entity<%=argv.resourceNameCapitalize%>) } },
11
11
  })
12
12
  export class Dto<%=argv.resourceNameCapitalize%>Query extends $Dto.queryPage(Entity<%=argv.resourceNameCapitalize%>, ['name']) {
13
13
  @Api.field(v.optional())
@@ -1,6 +1,6 @@
1
1
  import type { IDecoratorEntityOptions } from 'vona-module-a-orm';
2
2
  import { Entity, EntityBase } from 'vona-module-a-orm';
3
- import { Api, v } from 'vona-module-a-openapi';
3
+ import { Api, v } from 'vona-module-a-openapiutils';
4
4
  import { $locale } from '../.metadata/index.ts';
5
5
 
6
6
  export interface IEntityOptions<%=argv.resourceNameCapitalize%> extends IDecoratorEntityOptions {}
@@ -150,7 +150,7 @@ export class CliBinBuild extends BeanCliBase {
150
150
  format: 'esm',
151
151
  sourcemap: process.env.BUILD_SOURCEMAP === 'true',
152
152
  // https://github.com/rollup/rollup/issues/4166
153
- inlineDynamicImports: process.env.BUILD_INLINEDYNAMICIMPORTS === 'true',
153
+ inlineDynamicImports: false, // should not true
154
154
  };
155
155
  let bundle;
156
156
  try {
@@ -36,7 +36,17 @@ export class CliBinDev extends BeanCliBase {
36
36
  execArgs: [getImportEsm()],
37
37
  // execArgs: ['--experimental-transform-types', getImportEsm(), '--trace-deprecation'],
38
38
  // signal: 'SIGHUP',
39
- ignore: ['test/**/*.test.ts', 'src/backend/play'],
39
+ watch: [
40
+ 'packages-utils',
41
+ 'packages-vona',
42
+ './src',
43
+ ],
44
+ ignore: [
45
+ '**/dist/**',
46
+ '**/test/**/*.test.ts',
47
+ 'src/backend/play',
48
+ 'src/backend/typing',
49
+ ],
40
50
  });
41
51
  nodemon.on('quit', () => {
42
52
  resolve(undefined);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vona-cli-set-api",
3
3
  "type": "module",
4
- "version": "1.0.383",
4
+ "version": "1.0.385",
5
5
  "description": "vona cli-set-api",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -31,10 +31,10 @@
31
31
  "@babel/plugin-proposal-decorators": "^7.25.9",
32
32
  "@babel/plugin-transform-class-properties": "^7.25.9",
33
33
  "@babel/plugin-transform-typescript": "^7.26.8",
34
- "@cabloy/cli": "^3.0.61",
34
+ "@cabloy/cli": "^3.0.62",
35
35
  "@cabloy/dotenv": "^1.1.10",
36
36
  "@cabloy/extend": "^3.1.10",
37
- "@cabloy/module-glob": "^5.2.32",
37
+ "@cabloy/module-glob": "^5.2.33",
38
38
  "@cabloy/module-info": "^1.3.31",
39
39
  "@cabloy/word-utils": "^2.0.1",
40
40
  "@lcov-viewer/cli": "^1.3.0",
@@ -61,7 +61,7 @@
61
61
  "ts-node-maintained": "^10.9.6",
62
62
  "urllib": "^4.6.11",
63
63
  "uuid": "^11.1.0",
64
- "vona-core": "^5.0.102",
64
+ "vona-core": "^5.0.103",
65
65
  "why-is-node-running": "^3.2.2",
66
66
  "yargs-parser": "^22.0.0"
67
67
  },
@@ -1,14 +1,12 @@
1
1
  import { createApp } from 'vona';
2
- import { locales } from '../src/backend/config/locales.ts';
3
- import config from './config.ts';
4
2
  import env from './env.ts';
5
3
  <%=appMonkey?"import { AppMonkey } from '../src/backend/config/monkey.ts';":''%>
6
4
 
7
5
  export async function createSingleApp() {
8
6
  return await createApp({
9
7
  modulesMeta: () => import('./modules-meta.ts'),
10
- locales,
11
- config,
8
+ locales: () => import('../src/backend/config/locales.ts'),
9
+ config: () => import('./config.ts'),
12
10
  env,
13
11
  <%=appMonkey?'AppMonkey,':''%>
14
12
  });
@@ -1,13 +1,11 @@
1
1
  import { bootstrap } from 'vona';
2
- import { locales } from '../src/backend/config/locales.ts';
3
- import config from './config.ts';
4
2
  import env from './env.ts';
5
3
  <%=appMonkey?"import { AppMonkey } from '../src/backend/config/monkey.ts';":''%>
6
4
 
7
5
  export const appBootstrap = bootstrap({
8
6
  modulesMeta: () => import('./modules-meta.ts'),
9
- locales,
10
- config,
7
+ locales: () => import('../src/backend/config/locales.ts'),
8
+ config: () => import('./config.ts'),
11
9
  env,
12
10
  <%=appMonkey?'AppMonkey,':''%>
13
11
  });