db-modeling-markdown 1.0.6 → 2.0.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.
Files changed (114) hide show
  1. package/CHANGELOG.md +19 -4
  2. package/CONTRIBUTING.md +27 -6
  3. package/README.md +63 -46
  4. package/dist/dialects/core/dbImportProvider.d.ts +5 -0
  5. package/dist/dialects/core/dbImportProvider.js +7 -0
  6. package/dist/dialects/core/dbImportProvider.js.map +1 -0
  7. package/dist/dialects/core/dbProvider.d.ts +19 -6
  8. package/dist/dialects/core/dbProvider.js +40 -6
  9. package/dist/dialects/core/dbProvider.js.map +1 -1
  10. package/dist/dialects/core/dbUtils.d.ts +35 -0
  11. package/dist/dialects/core/dbUtils.js +159 -0
  12. package/dist/dialects/core/dbUtils.js.map +1 -0
  13. package/dist/dialects/core/providerFactory.d.ts +3 -1
  14. package/dist/dialects/core/providerFactory.js +28 -3
  15. package/dist/dialects/core/providerFactory.js.map +1 -1
  16. package/dist/dialects/db2/db2Provider.d.ts +2 -1
  17. package/dist/dialects/db2/db2Provider.js +2 -3
  18. package/dist/dialects/db2/db2Provider.js.map +1 -1
  19. package/dist/dialects/mariadb/mariaDbImportProvider.d.ts +19 -0
  20. package/dist/dialects/mariadb/mariaDbImportProvider.js +254 -0
  21. package/dist/dialects/mariadb/mariaDbImportProvider.js.map +1 -0
  22. package/dist/dialects/mariadb/mariaDbProvider.d.ts +11 -11
  23. package/dist/dialects/mariadb/mariaDbProvider.js +129 -214
  24. package/dist/dialects/mariadb/mariaDbProvider.js.map +1 -1
  25. package/dist/dialects/mariadb/mariaDbUtil.d.ts +6 -0
  26. package/dist/dialects/mariadb/mariaDbUtil.js +23 -0
  27. package/dist/dialects/mariadb/mariaDbUtil.js.map +1 -0
  28. package/dist/dialects/mssql/msSqlProvider.d.ts +2 -1
  29. package/dist/dialects/mssql/msSqlProvider.js +4 -8
  30. package/dist/dialects/mssql/msSqlProvider.js.map +1 -1
  31. package/dist/dialects/mysql/mySqlImportProvider.d.ts +3 -0
  32. package/dist/dialects/mysql/mySqlImportProvider.js +8 -0
  33. package/dist/dialects/mysql/mySqlImportProvider.js.map +1 -0
  34. package/dist/dialects/mysql/mySqlProvider.d.ts +2 -20
  35. package/dist/dialects/mysql/mySqlProvider.js +2 -233
  36. package/dist/dialects/mysql/mySqlProvider.js.map +1 -1
  37. package/dist/dialects/oracle/oracleProvider.d.ts +5 -1
  38. package/dist/dialects/oracle/oracleProvider.js +14 -6
  39. package/dist/dialects/oracle/oracleProvider.js.map +1 -1
  40. package/dist/dialects/postgresql/postgreSqlProvider.d.ts +2 -1
  41. package/dist/dialects/postgresql/postgreSqlProvider.js +4 -1
  42. package/dist/dialects/postgresql/postgreSqlProvider.js.map +1 -1
  43. package/dist/dialects/sqlite/sqliteSqlProvider.d.ts +2 -1
  44. package/dist/dialects/sqlite/sqliteSqlProvider.js +1 -2
  45. package/dist/dialects/sqlite/sqliteSqlProvider.js.map +1 -1
  46. package/dist/index.d.ts +9 -4
  47. package/dist/index.js +5 -5
  48. package/dist/index.js.map +1 -1
  49. package/dist/lib/code-flow/codeFlow.js.map +1 -1
  50. package/dist/lib/markdown-object/markdownModel.d.ts +0 -4
  51. package/dist/lib/markdown-object/markdownModel.js +0 -4
  52. package/dist/lib/markdown-object/markdownModel.js.map +1 -1
  53. package/dist/lib/markdown-object/markdownReader.d.ts +19 -0
  54. package/dist/lib/markdown-object/markdownReader.js +85 -28
  55. package/dist/lib/markdown-object/markdownReader.js.map +1 -1
  56. package/dist/lib/markdown-object/markdownWriter.d.ts +25 -1
  57. package/dist/lib/markdown-object/markdownWriter.js +117 -52
  58. package/dist/lib/markdown-object/markdownWriter.js.map +1 -1
  59. package/dist/lib/markdown-object/readerContext.js +3 -1
  60. package/dist/lib/markdown-object/readerContext.js.map +1 -1
  61. package/dist/lib/utils/fileHelper.d.ts +4 -0
  62. package/dist/lib/utils/fileHelper.js +20 -1
  63. package/dist/lib/utils/fileHelper.js.map +1 -1
  64. package/dist/lib/utils/logger.js.map +1 -1
  65. package/dist/lib/utils/markdownParser.js +3 -6
  66. package/dist/lib/utils/markdownParser.js.map +1 -1
  67. package/dist/lib/utils/sqlHelper.js.map +1 -1
  68. package/dist/lib/utils/textFileReader.js +2 -2
  69. package/dist/lib/utils/textFileReader.js.map +1 -1
  70. package/dist/lib/utils/textHelper.d.ts +18 -0
  71. package/dist/lib/utils/textHelper.js +62 -0
  72. package/dist/lib/utils/textHelper.js.map +1 -1
  73. package/dist/{services → models}/databaseTypes.d.ts +0 -0
  74. package/dist/{services → models}/databaseTypes.js +0 -0
  75. package/dist/models/databaseTypes.js.map +1 -0
  76. package/dist/models/dbColumn.d.ts +43 -0
  77. package/dist/models/dbColumn.js +3 -0
  78. package/dist/models/dbColumn.js.map +1 -0
  79. package/dist/models/dbDiffModel.d.ts +43 -0
  80. package/dist/models/dbDiffModel.js +3 -0
  81. package/dist/models/dbDiffModel.js.map +1 -0
  82. package/dist/models/dbForeignKey.d.ts +33 -0
  83. package/dist/models/dbForeignKey.js +3 -0
  84. package/dist/models/dbForeignKey.js.map +1 -0
  85. package/dist/models/dbIndex.d.ts +28 -0
  86. package/dist/models/dbIndex.js +3 -0
  87. package/dist/models/dbIndex.js.map +1 -0
  88. package/dist/models/dbIndexType.d.ts +8 -0
  89. package/dist/models/dbIndexType.js +13 -0
  90. package/dist/models/dbIndexType.js.map +1 -0
  91. package/dist/models/dbModel.d.ts +10 -0
  92. package/dist/{services → models}/dbModel.js +0 -0
  93. package/dist/{services → models}/dbModel.js.map +1 -1
  94. package/dist/models/dbPrimaryKey.d.ts +16 -0
  95. package/dist/models/dbPrimaryKey.js +3 -0
  96. package/dist/models/dbPrimaryKey.js.map +1 -0
  97. package/dist/models/dbTable.d.ts +49 -0
  98. package/dist/models/dbTable.js +3 -0
  99. package/dist/models/dbTable.js.map +1 -0
  100. package/dist/models/dbTableMarkdown.d.ts +34 -0
  101. package/dist/models/dbTableMarkdown.js +3 -0
  102. package/dist/models/dbTableMarkdown.js.map +1 -0
  103. package/dist/services/dbOptions.d.ts +35 -0
  104. package/dist/services/dbOptions.js +18 -0
  105. package/dist/services/dbOptions.js.map +1 -0
  106. package/dist/services/dbmOptions.d.ts +1 -1
  107. package/dist/services/dbmOptions.js +1 -1
  108. package/dist/services/dbmOptions.js.map +1 -1
  109. package/dist/services/dbmService.d.ts +36 -1
  110. package/dist/services/dbmService.js +80 -13
  111. package/dist/services/dbmService.js.map +1 -1
  112. package/package.json +32 -40
  113. package/dist/services/databaseTypes.js.map +0 -1
  114. package/dist/services/dbModel.d.ts +0 -135
@@ -1,4 +1,4 @@
1
- import { DatabaseTypes } from './databaseTypes';
1
+ import { DatabaseTypes } from '../models/databaseTypes';
2
2
  /**
3
3
  * Options for generation functions
4
4
  */
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DefaultOptions = exports.DbmOptions = void 0;
4
- const databaseTypes_1 = require("./databaseTypes");
4
+ const databaseTypes_1 = require("../models/databaseTypes");
5
5
  /**
6
6
  * Options for generation functions
7
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"dbmOptions.js","sourceRoot":"","sources":["../../src/services/dbmOptions.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;AAEhD;;GAEG;AACH,MAAa,UAAU;IAAvB;QACC;;WAEG;QACH,aAAQ,GAAkB,6BAAa,CAAC,KAAK,CAAC;QAE9C;;;WAGG;QACH,oBAAe,GAAW,QAAQ,CAAC;QAEnC;;WAEG;QACH,iBAAY,GAAW,EAAE,CAAC;QAE1B;;WAEG;QACH,eAAU,GAAW,EAAE,CAAC;IACzB,CAAC;CAAA;AArBD,gCAqBC;AAEY,QAAA,cAAc,GAAG,IAAI,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"dbmOptions.js","sourceRoot":"","sources":["../../src/services/dbmOptions.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AAEvD;;GAEG;AACH,MAAa,UAAU;IAAvB;QACC;;WAEG;QACH,aAAQ,GAAkB,6BAAa,CAAC,KAAK,CAAA;QAE7C;;;WAGG;QACH,oBAAe,GAAW,QAAQ,CAAA;QAElC;;WAEG;QACH,iBAAY,GAAW,EAAE,CAAA;QAEzB;;WAEG;QACH,eAAU,GAAW,EAAE,CAAA;IACxB,CAAC;CAAA;AArBD,gCAqBC;AAEY,QAAA,cAAc,GAAG,IAAI,UAAU,EAAE,CAAA"}
@@ -1,5 +1,6 @@
1
- import { DbModel } from './dbModel';
1
+ import { DbModel } from '../models/dbModel';
2
2
  import { DbmOptions } from './dbmOptions';
3
+ import { DbOptions } from './dbOptions';
3
4
  /**
4
5
  * The database modeling markdown service.
5
6
  */
@@ -31,11 +32,30 @@ export declare class DbmService {
31
32
  * @param options the options, required: `database`, `sourceFolder`, `targetPath`.
32
33
  */
33
34
  static toDropThenCreateTableSql(options: DbmOptions): string;
35
+ /**
36
+ * Generate a SQL file with upgrade scripts.
37
+ * support:
38
+ * - new tables,
39
+ * - new columns,
40
+ * - new primary keys
41
+ * - new indexes
42
+ * - new foreign keys
43
+ * @param options the options, required: `database`, `sourceFolder`, `targetPath`.
44
+ */
45
+ static toUpgradeSql(fromOptions: DbmOptions, options: DbmOptions): string;
34
46
  /**
35
47
  * Generate a JSON file.
36
48
  * @param options the options, required: `database`, `sourceFolder`, `targetPath`.
37
49
  */
38
50
  static toJson(options: DbmOptions): string;
51
+ /**
52
+ * Generate markdown files from a json file
53
+ * @param jsonFile the json file path
54
+ * @param markdownFolder the folder to which we will write
55
+ * @param force If true, delete all files whose extension matched, default: `false`.
56
+ * @param fileExtension generated file extension, default: `.db.md`.
57
+ */
58
+ static fromJsonFile(jsonFile: string, markdownFolder: string, force?: boolean, fileExtension?: string): void;
39
59
  /**
40
60
  * Generate markdown files from a model
41
61
  * @param model the model object with
@@ -44,9 +64,24 @@ export declare class DbmService {
44
64
  * @param fileExtension generated file extension, default: `.db.md`.
45
65
  */
46
66
  static toMarkdown(model: DbModel, markdownFolder: string, force?: boolean, fileExtension?: string): void;
67
+ /**
68
+ * Generate a index file for a model
69
+ * @param model the model object with
70
+ * @param markdownFolder the folder to which we will write
71
+ * @param filename generated file name, default: `index.md`.
72
+ */
73
+ static genIndexFile(model: DbModel, markdownFolder: string, filename?: string): void;
47
74
  /**
48
75
  * Get a model object.
49
76
  * @param options the options, required: `database`, `sourceFolder`.
50
77
  */
51
78
  static toModel(options: DbmOptions): DbModel;
79
+ /**
80
+ * Generate markdown files from a database
81
+ * @param dbOptions the datbase connection configure
82
+ * @param markdownFolder the folder to which we will write
83
+ * @param force If true, delete all files whose extension matched, default: `false`.
84
+ * @param fileExtension generated file extension, default: `.db.md`.
85
+ */
86
+ static fromDatabase(dbOptions: DbOptions, markdownFolder: string, force?: boolean, fileExtension?: string): Promise<void>;
52
87
  }
@@ -3,10 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DbmService = void 0;
4
4
  const fs = require("fs");
5
5
  const path = require("path");
6
- const fileHelper_1 = require("../lib/utils/fileHelper");
6
+ const providerFactory_1 = require("../dialects/core/providerFactory");
7
7
  const markdownReader_1 = require("../lib/markdown-object/markdownReader");
8
8
  const markdownWriter_1 = require("../lib/markdown-object/markdownWriter");
9
- const providerFactory_1 = require("../dialects/core/providerFactory");
9
+ const fileHelper_1 = require("../lib/utils/fileHelper");
10
+ const databaseTypes_1 = require("../models/databaseTypes");
10
11
  /**
11
12
  * The database modeling markdown service.
12
13
  */
@@ -64,9 +65,8 @@ class DbmService {
64
65
  ],
65
66
  };
66
67
  const table = model.tables[0];
67
- const content = markdownWriter_1.MarkdownWriter.renderTable(table, options.sourceFolder &&
68
+ return markdownWriter_1.MarkdownWriter.renderTable(table, options.sourceFolder &&
68
69
  path.join(options.sourceFolder, `${table.name}${options.mdFileExtension}`));
69
- return content;
70
70
  }
71
71
  /**
72
72
  * Generate a SQL file with create-table-if-not-exists scripts.
@@ -120,6 +120,26 @@ class DbmService {
120
120
  }
121
121
  return sql;
122
122
  }
123
+ /**
124
+ * Generate a SQL file with upgrade scripts.
125
+ * support:
126
+ * - new tables,
127
+ * - new columns,
128
+ * - new primary keys
129
+ * - new indexes
130
+ * - new foreign keys
131
+ * @param options the options, required: `database`, `sourceFolder`, `targetPath`.
132
+ */
133
+ static toUpgradeSql(fromOptions, options) {
134
+ const fromModel = this.toModel(fromOptions);
135
+ const model = this.toModel(options);
136
+ const provider = providerFactory_1.ProviderFactory.getProvider(options.database);
137
+ const sql = provider.getUpgradeSql(fromModel, model, true);
138
+ if (options.targetPath) {
139
+ fileHelper_1.FileHelper.writeFileSync(options.targetPath, sql);
140
+ }
141
+ return sql;
142
+ }
123
143
  /**
124
144
  * Generate a JSON file.
125
145
  * @param options the options, required: `database`, `sourceFolder`, `targetPath`.
@@ -131,6 +151,17 @@ class DbmService {
131
151
  }
132
152
  return JSON.stringify(model, null, 2);
133
153
  }
154
+ /**
155
+ * Generate markdown files from a json file
156
+ * @param jsonFile the json file path
157
+ * @param markdownFolder the folder to which we will write
158
+ * @param force If true, delete all files whose extension matched, default: `false`.
159
+ * @param fileExtension generated file extension, default: `.db.md`.
160
+ */
161
+ static fromJsonFile(jsonFile, markdownFolder, force = false, fileExtension = '.db.md') {
162
+ const model = JSON.parse(fileHelper_1.FileHelper.readJsonFileSync(jsonFile));
163
+ this.toMarkdown(model, markdownFolder, force, fileExtension);
164
+ }
134
165
  /**
135
166
  * Generate markdown files from a model
136
167
  * @param model the model object with
@@ -139,20 +170,44 @@ class DbmService {
139
170
  * @param fileExtension generated file extension, default: `.db.md`.
140
171
  */
141
172
  static toMarkdown(model, markdownFolder, force = false, fileExtension = '.db.md') {
142
- if (fs.existsSync(markdownFolder)) {
143
- if (force) {
144
- const files = fileHelper_1.FileHelper.readdirSync(markdownFolder);
145
- files.forEach((file) => {
146
- if (file.name.endsWith(fileExtension)) {
147
- fs.unlinkSync(path.join(markdownFolder, file.name));
148
- }
149
- });
150
- }
173
+ if (force && fs.existsSync(markdownFolder)) {
174
+ fileHelper_1.FileHelper.removeAllFilesSync(markdownFolder, fileExtension);
175
+ }
176
+ if (!fs.existsSync(markdownFolder)) {
177
+ fileHelper_1.FileHelper.mkdirSync(markdownFolder);
151
178
  }
152
179
  model.tables.forEach((table) => {
153
180
  markdownWriter_1.MarkdownWriter.renderTable(table, path.join(markdownFolder, `${table.name}${fileExtension}`));
154
181
  });
155
182
  }
183
+ /**
184
+ * Generate a index file for a model
185
+ * @param model the model object with
186
+ * @param markdownFolder the folder to which we will write
187
+ * @param filename generated file name, default: `index.md`.
188
+ */
189
+ static genIndexFile(model, markdownFolder, filename = 'index.md') {
190
+ const file = path.join(markdownFolder, filename);
191
+ fileHelper_1.FileHelper.removeFileSync(file);
192
+ let data = '# Database Design\n\n';
193
+ data += '## Index\n\n';
194
+ const columnWidths = [5, 6];
195
+ model.tables.forEach((table) => {
196
+ if (table.name.length * 2 + 10 > columnWidths[0]) {
197
+ columnWidths[0] = table.name.length * 2 + 10;
198
+ }
199
+ if (table.comment && table.comment.length > columnWidths[1]) {
200
+ columnWidths[1] = table.comment.length;
201
+ }
202
+ });
203
+ data += `| ${'Table'.padEnd(columnWidths[0], ' ')} | ${'Comment'.padEnd(columnWidths[1], ' ')} |\n`;
204
+ data += `| ${''.padEnd(columnWidths[0], '-')} | ${''.padEnd(columnWidths[1], '-')} |\n`;
205
+ model.tables.forEach((table) => {
206
+ const name = `[${table.name}](${table.name}.db.md)`;
207
+ data += `| ${name.padEnd(columnWidths[0], ' ')} | ${table.comment?.padEnd(columnWidths[1], ' ')} |\n`;
208
+ });
209
+ fileHelper_1.FileHelper.writeFileSync(file, data);
210
+ }
156
211
  /**
157
212
  * Get a model object.
158
213
  * @param options the options, required: `database`, `sourceFolder`.
@@ -168,6 +223,18 @@ class DbmService {
168
223
  });
169
224
  return model;
170
225
  }
226
+ /**
227
+ * Generate markdown files from a database
228
+ * @param dbOptions the datbase connection configure
229
+ * @param markdownFolder the folder to which we will write
230
+ * @param force If true, delete all files whose extension matched, default: `false`.
231
+ * @param fileExtension generated file extension, default: `.db.md`.
232
+ */
233
+ static async fromDatabase(dbOptions, markdownFolder, force = false, fileExtension = '.db.md') {
234
+ const provider = providerFactory_1.ProviderFactory.getImportProvider(databaseTypes_1.DatabaseTypes.mariadb);
235
+ const model = await provider.getModel(dbOptions);
236
+ this.toMarkdown(model, markdownFolder, force, fileExtension);
237
+ }
171
238
  }
172
239
  exports.DbmService = DbmService;
173
240
  //# sourceMappingURL=dbmService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dbmService.js","sourceRoot":"","sources":["../../src/services/dbmService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dbmService.js","sourceRoot":"","sources":["../../src/services/dbmService.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "db-modeling-markdown",
3
- "version": "1.0.6",
3
+ "version": "2.0.0",
4
4
  "description": "database modeling markdown lib",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -9,10 +9,11 @@
9
9
  "coverage": "jest --coverage",
10
10
  "doc": "npm run gulp doc && npm run gulp docs:copy",
11
11
  "gulp": "gulp",
12
- "lint": "eslint \"src/**/*.ts\" \"tests/**/*.ts\" --cache --cache-location .eslintcache",
13
- "lint:fix": "eslint --fix \"src/**/*.ts\" --cache --cache-location .eslintcache",
12
+ "lint": "eslint \"src/**/*.ts\" \"tests/**/*.ts\"",
13
+ "lint:fix": "eslint --fix \"src/**/*.ts\" \"tests/**/*.ts\"",
14
14
  "test": "jest",
15
- "prepare": "husky install"
15
+ "prepare": "husky install",
16
+ "pretty": "prettier --write \"src/**/*.ts\" && prettier --write \"tests/**/*.ts\""
16
17
  },
17
18
  "repository": {
18
19
  "type": "git",
@@ -25,7 +26,7 @@
25
26
  ],
26
27
  "author": {
27
28
  "name": "Steven Yang",
28
- "email": "steven_nyang@outlook.com"
29
+ "email": "steven_nyang@qq.com"
29
30
  },
30
31
  "license": "MIT",
31
32
  "bugs": {
@@ -33,50 +34,41 @@
33
34
  },
34
35
  "homepage": "https://gitee.com/sn-yang/db-modeling-markdown#readme",
35
36
  "dependencies": {
37
+ "mariadb": "^3.0.1",
38
+ "nunjucks": "^3.2.3",
36
39
  "regexp-coder": "2.0.2"
37
40
  },
38
41
  "devDependencies": {
39
- "@types/babel__core": "7.1.16",
40
- "@types/glob": "^7.2.0",
41
- "@types/jest": "27.0.2",
42
- "@types/lodash": "^4.14.177",
43
- "@types/node": "^16.11.7",
44
- "@typescript-eslint/eslint-plugin": "^5.4.0",
45
- "@typescript-eslint/parser": "^5.4.0",
46
- "eslint": "^8.2.0",
42
+ "@types/babel__core": "7.1.19",
43
+ "@types/glob": "^8.0.0",
44
+ "@types/jest": "^29.0.0",
45
+ "@types/lodash": "^4.14.184",
46
+ "@types/node": "^18.7.16",
47
+ "@typescript-eslint/eslint-plugin": "^5.36.2",
48
+ "@typescript-eslint/parser": "^5.36.2",
49
+ "dotenv": "^16.0.3",
50
+ "eslint": "^8.23.0",
47
51
  "eslint-config-airbnb-base": "^15.0.0",
48
- "eslint-config-airbnb-typescript": "^15.0.0",
49
- "eslint-config-prettier": "^8.3.0",
52
+ "eslint-config-airbnb-typescript": "^17.0.0",
53
+ "eslint-config-prettier": "^8.5.0",
50
54
  "eslint-config-tslint": "^0.2.1",
51
- "eslint-plugin-import": "^2.25.3",
52
- "eslint-plugin-simple-import-sort": "^7.0.0",
53
- "eslint-plugin-sort-class-members": "1.12.0",
54
- "eslint-plugin-typescript-sort-keys": "2.0.0",
55
- "glob": "^7.2.0",
55
+ "eslint-plugin-import": "^2.26.0",
56
+ "eslint-plugin-simple-import-sort": "^8.0.0",
57
+ "eslint-plugin-typescript-sort-keys": "2.1.0",
58
+ "glob": "^8.0.3",
56
59
  "gulp": "^4.0.2",
57
60
  "gulp-shell": "^0.8.0",
58
61
  "gulp-sourcemaps": "^3.0.0",
59
62
  "gulp-typescript": "^5.0.1",
60
- "husky": "^7.0.0",
61
- "jest": "27.3.1",
62
- "jscodeshift": "0.13.0",
63
- "lint-staged": "^12.0.2",
64
- "sort-class-members-codemod": "0.5.1",
65
- "ts-jest": "27.0.7",
66
- "ts-node": "^10.4.0",
67
- "typedoc": "^0.22.9",
68
- "typescript": "^4.4.4",
63
+ "husky": "^8.0.0",
64
+ "jest": "^29.0.3",
65
+ "jscodeshift": "^0.13.1",
66
+ "lint-staged": "^13.0.3",
67
+ "sort-class-members-codemod": "^0.5.1",
68
+ "ts-jest": "^29.0.0",
69
+ "ts-node": "^10.9.1",
70
+ "typedoc": "^0.23.14",
71
+ "typescript": "^4.8.3",
69
72
  "vscode-test": "^1.6.1"
70
- },
71
- "husky": {
72
- "hooks": {
73
- "pre-commit": "tsc --noEmit && lint-staged"
74
- }
75
- },
76
- "lint-staged": {
77
- "*.{ts}": [
78
- "eslint --fix",
79
- "git add"
80
- ]
81
73
  }
82
74
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"databaseTypes.js","sourceRoot":"","sources":["../../src/services/databaseTypes.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,aAmCX;AAnCD,WAAY,aAAa;IACxB;;OAEG;IACH,4BAAW,CAAA;IAEX;;OAEG;IACH,oCAAmB,CAAA;IAEnB;;OAEG;IACH,gCAAe,CAAA;IAEf;;OAEG;IACH,gCAAe,CAAA;IAEf;;OAEG;IACH,kCAAiB,CAAA;IAEjB;;OAEG;IACH,0CAAyB,CAAA;IAEzB;;OAEG;IACH,kCAAiB,CAAA;AAClB,CAAC,EAnCW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAmCxB"}
@@ -1,135 +0,0 @@
1
- /**
2
- * Describe a database model
3
- */
4
- export interface DbModel {
5
- /**
6
- * The model tables
7
- */
8
- tables: DbTable[];
9
- }
10
- /**
11
- * Describe a table
12
- */
13
- export interface DbTable {
14
- /**
15
- * The table columns
16
- */
17
- columns: DbColumn[];
18
- /**
19
- * The table comment
20
- */
21
- comment?: string;
22
- /**
23
- * The table foreign keys
24
- */
25
- foreignKeys: DbForeignKey[];
26
- /**
27
- * The table indexes
28
- */
29
- indexes: DbIndex[];
30
- /**
31
- * The table name
32
- */
33
- name: string;
34
- /**
35
- * The table primary key
36
- */
37
- primaryKey?: DbPrimaryKey;
38
- }
39
- /**
40
- * Describe a table column
41
- */
42
- export interface DbColumn {
43
- /**
44
- * The column comment
45
- */
46
- comment?: string;
47
- /**
48
- * The table default value.
49
- * <empty> is no default value.
50
- * Value `''` for default value empty
51
- *
52
- */
53
- default?: string;
54
- /**
55
- * The column table
56
- */
57
- label?: string;
58
- /**
59
- * The column name
60
- */
61
- name: string;
62
- /**
63
- * If the column nullable
64
- */
65
- nullable?: boolean;
66
- /**
67
- * The column data type
68
- */
69
- type: string;
70
- }
71
- /**
72
- * Describe table primary key
73
- */
74
- export interface DbPrimaryKey {
75
- /**
76
- * If the primary key is clusterred
77
- */
78
- cluster?: boolean;
79
- /**
80
- * The primary key columns.
81
- *
82
- * Use comma `,` to split multiple columns.
83
- * E.g. `column, column2`
84
- */
85
- columns: string;
86
- }
87
- /**
88
- * Describe the table index
89
- */
90
- export interface DbIndex {
91
- /**
92
- * If the index is clusterred
93
- */
94
- cluster?: boolean;
95
- /**
96
- * The index columns.
97
- *
98
- * Use comma `,` to split multiple columns.
99
- * E.g. `column, column2`
100
- */
101
- columns: string;
102
- /**
103
- * If the index is unique
104
- */
105
- unique?: boolean;
106
- }
107
- /**
108
- * Describe the table foreign key
109
- */
110
- export interface DbForeignKey {
111
- /**
112
- * The foreign key columns.
113
- *
114
- * Use comma `,` to split multiple columns.
115
- * E.g. `column, column2`
116
- */
117
- columns: string;
118
- /**
119
- * The foreign key options
120
- *
121
- * E.g. `ON DELETE CASCADE`
122
- */
123
- options?: string;
124
- /**
125
- * The reference columns of the foreign key columns.
126
- *
127
- * Use comma `,` to split multiple columns.
128
- * E.g. `column, column2`
129
- */
130
- refColumns: string;
131
- /**
132
- * The reference table of the foreign key
133
- */
134
- refTable: string;
135
- }