@zenorm/generate 1.8.0 → 1.8.1

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 CHANGED
@@ -1,40 +1,43 @@
1
- # Changelog
2
-
3
- ## [1.8.0] - 2023-5-18
4
- - 撤销 [1.6.0] 的修改,动态 as 功能无法满足需求
5
-
6
- ## [1.7.0] - 2023-5-18
7
- - 构造器增加 pkval 参数
8
-
9
- ## [1.6.0] - 2023-5-18
10
- - 使用构造器提前初始化对象的属性,用于优化 v8 对象缓存机制
11
-
12
- ## [1.5.0] - 2023-4-19
13
- - 更新: update 方法使用 UpdateRow<M>
14
-
15
- ## [1.4.0] - 2023-3-29
16
- - createRepositoryQuery 添加表描述
17
- - 如果没有主键 pkType = never
18
-
19
- ## [1.3.1] - 2023-3-27
20
- - fix: windows 换行符问题
21
-
22
- ## [1.3.0] - 2023-3-25
23
- - update: bindQuery 增加 save, update, delete
24
-
25
- ## [1.2.0] - 2023-3-24
26
- - update: bindQuery 改为函数形式
27
-
28
- ## [1.1.1] - 2023-3-24
29
- - fix: 生成格式少个空格和空行
30
- - update: bindQuery 增加 count 和 exists
31
- - 补充注释说明
32
-
33
- ## [1.1.0] - 2023-3-24
34
- - 新增: 绑定静态 Query
35
-
36
- ## [1.0.0] - 2023-3-23
37
- - 完善
38
-
39
- ## [0.0.1] - 2023-3-23
40
- - 从 zenorm@3.25.0 分离为独立项目
1
+ # Changelog
2
+
3
+ ## [1.8.1] - 2023-5-19
4
+ - fix: 使用 global 继承时构造函数缺少 super 调用
5
+
6
+ ## [1.8.0] - 2023-5-18
7
+ - 撤销 [1.6.0] 的修改,动态 as 功能无法满足需求
8
+
9
+ ## [1.7.0] - 2023-5-18
10
+ - 构造器增加 pkval 参数
11
+
12
+ ## [1.6.0] - 2023-5-18
13
+ - 使用构造器提前初始化对象的属性,用于优化 v8 对象缓存机制
14
+
15
+ ## [1.5.0] - 2023-4-19
16
+ - 更新: update 方法使用 UpdateRow<M>
17
+
18
+ ## [1.4.0] - 2023-3-29
19
+ - createRepositoryQuery 添加表描述
20
+ - 如果没有主键 pkType = never
21
+
22
+ ## [1.3.1] - 2023-3-27
23
+ - fix: windows 换行符问题
24
+
25
+ ## [1.3.0] - 2023-3-25
26
+ - update: bindQuery 增加 save, update, delete
27
+
28
+ ## [1.2.0] - 2023-3-24
29
+ - update: bindQuery 改为函数形式
30
+
31
+ ## [1.1.1] - 2023-3-24
32
+ - fix: 生成格式少个空格和空行
33
+ - update: bindQuery 增加 count 和 exists
34
+ - 补充注释说明
35
+
36
+ ## [1.1.0] - 2023-3-24
37
+ - 新增: 绑定静态 Query
38
+
39
+ ## [1.0.0] - 2023-3-23
40
+ - 完善
41
+
42
+ ## [0.0.1] - 2023-3-23
43
+ - 从 zenorm@3.25.0 分离为独立项目
package/README.md CHANGED
@@ -1,24 +1,24 @@
1
- # ZenORM Generate
2
-
3
- [ZenORM](https://www.npmjs.com/package/zenorm) Table Structure Code Generation Tool
4
-
5
- 表结构代码生成工具
6
-
7
- ## Generate Config - 代码生成配置
8
-
9
- | 配置项 | 类型 | 默认值 | 说明
10
- | ----- | --- | ----- | ----
11
- | host | `string` | 无 | 目标数据库地址
12
- | port | `number` | 无 | 数据库端口
13
- | user | `string` | 无 | 数据库用户名
14
- | password | `string` | 无 | 数据库密码
15
- | database | `string` | 无 | 数据库名
16
- | outputDir | `string` | `'./src/model'` | 代码输出目录
17
- | tablesFilename | `string` | `'_tables'` | 生成数据库表结构文件名
18
- | repositoriesFilename | `string` | `'_repositories'` | 生成 repositories 文件名
19
- | globalFilename | `string` | 无 | 全局文件名 - 如果设置所有表将继承于此 - 例如设置为:'_global' - 如果文件不存在则自动创建
20
- | bindQuery | `boolean` | `false` | repositories 文件生成 bindQuery(query: QueryParam) 方法用于设置模型的 Query 源 - 并生成模型的静态 Repository 方法
21
- | generateRepositories | `boolean` | `false` | 是否生成 Repositories 类 - 通常用于多租户模式做数据库前置绑定 `Query` 对象
22
- | declareRepositoriesToModules | `string[]` | 无 | 是否需将 Repositories 实例定义到目标模块中 - 例如: `["@zenweb/core.Core.repositories"]`
23
- | filter | `string` | 无 | 表过滤规则正则
24
- | include | `string` | 无 | 表包含规则正则
1
+ # ZenORM Generate
2
+
3
+ [ZenORM](https://www.npmjs.com/package/zenorm) Table Structure Code Generation Tool
4
+
5
+ 表结构代码生成工具
6
+
7
+ ## Generate Config - 代码生成配置
8
+
9
+ | 配置项 | 类型 | 默认值 | 说明
10
+ | ----- | --- | ----- | ----
11
+ | host | `string` | 无 | 目标数据库地址
12
+ | port | `number` | 无 | 数据库端口
13
+ | user | `string` | 无 | 数据库用户名
14
+ | password | `string` | 无 | 数据库密码
15
+ | database | `string` | 无 | 数据库名
16
+ | outputDir | `string` | `'./src/model'` | 代码输出目录
17
+ | tablesFilename | `string` | `'_tables'` | 生成数据库表结构文件名
18
+ | repositoriesFilename | `string` | `'_repositories'` | 生成 repositories 文件名
19
+ | globalFilename | `string` | 无 | 全局文件名 - 如果设置所有表将继承于此 - 例如设置为:'_global' - 如果文件不存在则自动创建
20
+ | bindQuery | `boolean` | `false` | repositories 文件生成 bindQuery(query: QueryParam) 方法用于设置模型的 Query 源 - 并生成模型的静态 Repository 方法
21
+ | generateRepositories | `boolean` | `false` | 是否生成 Repositories 类 - 通常用于多租户模式做数据库前置绑定 `Query` 对象
22
+ | declareRepositoriesToModules | `string[]` | 无 | 是否需将 Repositories 实例定义到目标模块中 - 例如: `["@zenweb/core.Core.repositories"]`
23
+ | filter | `string` | 无 | 表过滤规则正则
24
+ | include | `string` | 无 | 表包含规则正则
package/dist/generate.js CHANGED
@@ -67,6 +67,9 @@ async function generate(tables, cfg) {
67
67
  structs.push(...props);
68
68
  structs.push('');
69
69
  structs.push(` constructor(data?: object) {`);
70
+ if (config.globalFilename) {
71
+ structs.push(` super();`);
72
+ }
70
73
  structs.push(` data && Object.assign(this, data);`);
71
74
  structs.push(` }`);
72
75
  structs.push('}');
package/package.json CHANGED
@@ -1,44 +1,44 @@
1
- {
2
- "name": "@zenorm/generate",
3
- "description": "Easy ORM, easy query. easy typing! Auto generate typescript declaration.",
4
- "version": "1.8.0",
5
- "exports": "./dist/index.js",
6
- "types": "./dist/index.d.ts",
7
- "homepage": "https://zenorm.node.ltd",
8
- "author": "YeFei <316606233@qq.com>",
9
- "license": "MIT",
10
- "bin": {
11
- "zenorm-generate": "./dist/bin/zenorm-generate.js"
12
- },
13
- "files": [
14
- "dist"
15
- ],
16
- "scripts": {
17
- "build": "rimraf dist && tsc",
18
- "prepublishOnly": "npm run build",
19
- "gen": "cd test && ts-node ../src/bin/zenorm-generate.ts config.json",
20
- "t1": "cd test && cross-env DEBUG=* ts-node t1"
21
- },
22
- "keywords": [
23
- "mysql",
24
- "query",
25
- "model",
26
- "types",
27
- "generate",
28
- "database"
29
- ],
30
- "devDependencies": {
31
- "@types/node": "^12.20.41",
32
- "@zenorm/generate-mysql": "^1.3.0",
33
- "cross-env": "^7.0.3",
34
- "mysql-easy-query": "^3.13.0",
35
- "rimraf": "^4.4.1",
36
- "ts-node": "^10.9.1",
37
- "typescript": "^5.0.4",
38
- "zenorm": "^3.31.0"
39
- },
40
- "dependencies": {
41
- "pascal-case": "^3.1.2",
42
- "snake-case": "^3.0.4"
43
- }
44
- }
1
+ {
2
+ "name": "@zenorm/generate",
3
+ "description": "Easy ORM, easy query. easy typing! Auto generate typescript declaration.",
4
+ "version": "1.8.1",
5
+ "exports": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "homepage": "https://zenorm.node.ltd",
8
+ "author": "YeFei <316606233@qq.com>",
9
+ "license": "MIT",
10
+ "bin": {
11
+ "zenorm-generate": "./dist/bin/zenorm-generate.js"
12
+ },
13
+ "files": [
14
+ "dist"
15
+ ],
16
+ "scripts": {
17
+ "build": "rimraf dist && tsc",
18
+ "prepublishOnly": "npm run build",
19
+ "gen": "cd test && ts-node ../src/bin/zenorm-generate.ts config.json",
20
+ "t1": "cd test && cross-env DEBUG=* ts-node t1"
21
+ },
22
+ "keywords": [
23
+ "mysql",
24
+ "query",
25
+ "model",
26
+ "types",
27
+ "generate",
28
+ "database"
29
+ ],
30
+ "devDependencies": {
31
+ "@types/node": "^12.20.41",
32
+ "@zenorm/generate-mysql": "^1.3.0",
33
+ "cross-env": "^7.0.3",
34
+ "mysql-easy-query": "^3.13.0",
35
+ "rimraf": "^4.4.1",
36
+ "ts-node": "^10.9.1",
37
+ "typescript": "^5.0.4",
38
+ "zenorm": "^3.31.0"
39
+ },
40
+ "dependencies": {
41
+ "pascal-case": "^3.1.2",
42
+ "snake-case": "^3.0.4"
43
+ }
44
+ }