@chihqiang/sql-quicktype 0.0.2 → 0.0.4

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/cli.js CHANGED
@@ -61,8 +61,8 @@ SQL length: ${sql.length} characters`
61
61
  var SQLParser = class {
62
62
  constructor(options = { dialect: "mysql" }) {
63
63
  /**
64
- * 默认类型解析器
65
- * 提供基本的 SQL 类型到 SQLType 的映射逻辑
64
+ * Default type resolver
65
+ * Provides basic SQL type to SQLType mapping logic
66
66
  */
67
67
  this.defaultTypeResolver = {
68
68
  resolve: (def) => {
@@ -162,8 +162,8 @@ var SQLParser = class {
162
162
  };
163
163
  return emptyEnumType;
164
164
  /**
165
- * 未识别类型默认降级为 text,避免解析失败
166
- * 在严格模式下,遇到未识别的类型会抛出错误
165
+ * Unrecognized types fall back to text by default to avoid parse failure
166
+ * In strict mode, unrecognized types throw an error
167
167
  */
168
168
  default:
169
169
  if (this.options.strictMode) {
@@ -185,7 +185,7 @@ var SQLParser = class {
185
185
  this.parser = new import_node_sql_parser.Parser();
186
186
  }
187
187
  /**
188
- * 遍历 AST,提取所有 CREATE TABLE
188
+ * Traverse AST, extract all CREATE TABLE statements
189
189
  */
190
190
  parseDatabase(ast, dbName = this.options.dbName || "db") {
191
191
  const db = {
@@ -204,7 +204,7 @@ var SQLParser = class {
204
204
  return db;
205
205
  }
206
206
  /**
207
- * 类型守卫:判断是否为 CREATE TABLE 语句
207
+ * Type guard: check if node is a CREATE TABLE statement
208
208
  */
209
209
  isCreateTable(node) {
210
210
  if (!node || typeof node !== "object") return false;
@@ -212,7 +212,7 @@ var SQLParser = class {
212
212
  return n.type === "create" && n.keyword === "table";
213
213
  }
214
214
  /**
215
- * 解析单表 AST -> TableSchema
215
+ * Parse single table AST -> TableSchema
216
216
  */
217
217
  parseTable(node) {
218
218
  var _a, _b, _c, _d;
@@ -256,9 +256,9 @@ var SQLParser = class {
256
256
  return table;
257
257
  }
258
258
  /**
259
- * 解析列定义 AST -> ColumnSchema
259
+ * Parse column definition AST -> ColumnSchema
260
260
  *
261
- * 注意:字段级 primary/unique 与表级定义会叠加
261
+ * Note: Field-level primary/unique and table-level definitions will overlap
262
262
  */
263
263
  parseColumn(def) {
264
264
  var _a, _b, _c;
@@ -272,18 +272,18 @@ var SQLParser = class {
272
272
  return {
273
273
  name: columnName,
274
274
  /**
275
- * 抽象 SQL 类型映射
275
+ * Abstract SQL type mapping
276
276
  */
277
277
  type: this.mapSQLType(def.definition),
278
278
  /**
279
- * node-sql-parser 中:
280
- * nullable 是一个对象,当它存在且 type "not null" 时,表示 NOT NULL
279
+ * In node-sql-parser:
280
+ * nullable is an object; when it exists and type is "not null", it means NOT NULL
281
281
  */
282
282
  nullable: !(def.nullable && def.nullable.type === "not null"),
283
283
  primaryKey: !!def.primary_key,
284
284
  unique: !!def.unique,
285
285
  /**
286
- * 默认值需要序列化为 SQL 字符串
286
+ * Default value needs to be serialized as SQL string
287
287
  */
288
288
  default: def.default_val ? this.parseDefault(def.default_val) : void 0,
289
289
  comment: (_c = (_b = def.comment) == null ? void 0 : _b.value) == null ? void 0 : _c.value,
@@ -292,7 +292,7 @@ var SQLParser = class {
292
292
  };
293
293
  }
294
294
  /**
295
- * 解析表级 PRIMARY KEY / UNIQUE / FOREIGN KEY
295
+ * Parse table-level PRIMARY KEY / UNIQUE / FOREIGN KEY
296
296
  */
297
297
  parseTableConstraint(def, table) {
298
298
  var _a, _b, _c, _d, _e, _f, _g, _h;
@@ -344,7 +344,7 @@ var SQLParser = class {
344
344
  }
345
345
  }
346
346
  /**
347
- * 解析普通索引
347
+ * Parse regular index
348
348
  */
349
349
  parseIndex(def, table) {
350
350
  var _a;
@@ -358,7 +358,7 @@ var SQLParser = class {
358
358
  }
359
359
  }
360
360
  /**
361
- * SQL AST 类型 -> SQLType(跨方言抽象)
361
+ * SQL AST type -> SQLType (cross-dialect abstraction)
362
362
  */
363
363
  mapSQLType(def) {
364
364
  const allResolvers = [
@@ -375,9 +375,9 @@ var SQLParser = class {
375
375
  return textType;
376
376
  }
377
377
  /**
378
- * 默认值 AST -> SQL 字符串
378
+ * Default value AST -> SQL string
379
379
  *
380
- * 使用 sqlify 确保函数/表达式被正确序列化
380
+ * Uses sqlify to ensure functions/expressions are serialized correctly
381
381
  */
382
382
  parseDefault(def) {
383
383
  var _a, _b;
@@ -407,13 +407,13 @@ var BaseGenerator = class {
407
407
  this.needsTimeCache = null;
408
408
  }
409
409
  /**
410
- * 格式化类型名称(如驼峰命名、帕斯卡命名等)
410
+ * Format type name (e.g., PascalCase)
411
411
  */
412
412
  formatTypeName(name) {
413
413
  return name.split("_").map((part) => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase()).join("");
414
414
  }
415
415
  /**
416
- * 格式化字段名称
416
+ * Format field name
417
417
  */
418
418
  formatPascalCase(name) {
419
419
  return name.split("_").map((part) => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase()).join("");
@@ -422,7 +422,7 @@ var BaseGenerator = class {
422
422
  return this.formatPascalCase(name);
423
423
  }
424
424
  /**
425
- * 生成默认值
425
+ * Generate default value
426
426
  */
427
427
  generateDefaultValue(column) {
428
428
  if (!column.default) {
@@ -465,7 +465,7 @@ var TypeScriptGenerator = class extends BaseGenerator {
465
465
  this.options = options;
466
466
  }
467
467
  /**
468
- * 格式化字段名称(使用驼峰命名)
468
+ * Format field name (camelCase)
469
469
  */
470
470
  formatFieldName(name) {
471
471
  return name.split("_").map((part, index) => {
@@ -476,7 +476,7 @@ var TypeScriptGenerator = class extends BaseGenerator {
476
476
  }).join("");
477
477
  }
478
478
  /**
479
- * 生成整个数据库模式的类型定义
479
+ * Generate type definitions for the entire database schema
480
480
  */
481
481
  generateDatabase(database) {
482
482
  let result = `// Database: ${database.name}
@@ -491,10 +491,10 @@ var TypeScriptGenerator = class extends BaseGenerator {
491
491
  return result;
492
492
  }
493
493
  /**
494
- * 生成单个表的类型定义
494
+ * Generate type definition for a single table
495
495
  */
496
496
  generateTable(table) {
497
- let result = `// ${table.name} \u8868\u7ED3\u6784
497
+ let result = `// ${table.name} table structure
498
498
  `;
499
499
  result += `export interface ${this.formatTypeName(table.name)} {
500
500
  `;
@@ -505,7 +505,7 @@ var TypeScriptGenerator = class extends BaseGenerator {
505
505
  return result;
506
506
  }
507
507
  /**
508
- * 生成列的类型定义
508
+ * Generate column type definition
509
509
  */
510
510
  generateColumn(column) {
511
511
  const fieldName = this.formatFieldName(column.name);
@@ -519,7 +519,7 @@ var TypeScriptGenerator = class extends BaseGenerator {
519
519
  return result;
520
520
  }
521
521
  /**
522
- * 映射 SQL 类型到 TypeScript 类型
522
+ * Map SQL type to TypeScript type
523
523
  */
524
524
  mapSQLType(type, columnName) {
525
525
  switch (type.kind) {
@@ -562,7 +562,7 @@ var GoGenerator = class extends BaseGenerator {
562
562
  this.options = options;
563
563
  }
564
564
  /**
565
- * 生成整个数据库模式的类型定义
565
+ * Generate type definitions for the entire database schema
566
566
  */
567
567
  generateDatabase(database) {
568
568
  let result = `// Database: ${database.name}
@@ -587,10 +587,10 @@ var GoGenerator = class extends BaseGenerator {
587
587
  return result;
588
588
  }
589
589
  /**
590
- * 生成单个表的类型定义
590
+ * Generate type definition for a single table
591
591
  */
592
592
  generateTable(table) {
593
- let result = `// ${table.name} \u8868\u7ED3\u6784
593
+ let result = `// ${table.name} table structure
594
594
  `;
595
595
  result += `type ${this.formatTypeName(table.name)} struct {
596
596
  `;
@@ -601,7 +601,7 @@ var GoGenerator = class extends BaseGenerator {
601
601
  return result;
602
602
  }
603
603
  /**
604
- * 生成列的类型定义
604
+ * Generate column type definition
605
605
  */
606
606
  generateColumn(column) {
607
607
  const fieldName = this.formatFieldName(column.name);
@@ -615,7 +615,7 @@ var GoGenerator = class extends BaseGenerator {
615
615
  return result;
616
616
  }
617
617
  /**
618
- * 映射 SQL 类型到 Go 类型
618
+ * Map SQL type to Go type
619
619
  */
620
620
  mapSQLType(type) {
621
621
  switch (type.kind) {
@@ -644,7 +644,7 @@ var GoGenerator = class extends BaseGenerator {
644
644
  }
645
645
  }
646
646
  /**
647
- * 生成 Go 结构体标签
647
+ * Generate Go struct tags
648
648
  */
649
649
  generateGoTag(column) {
650
650
  const tags = [];
@@ -661,7 +661,7 @@ var GormGenerator = class extends BaseGenerator {
661
661
  this.options = options;
662
662
  }
663
663
  /**
664
- * 生成整个数据库模式的类型定义
664
+ * Generate type definitions for the entire database schema
665
665
  */
666
666
  generateDatabase(database) {
667
667
  let result = `// Database: ${database.name}
@@ -686,10 +686,10 @@ var GormGenerator = class extends BaseGenerator {
686
686
  return result;
687
687
  }
688
688
  /**
689
- * 生成单个表的类型定义
689
+ * Generate type definition for a single table
690
690
  */
691
691
  generateTable(table) {
692
- let result = `// ${table.name} \u8868\u7ED3\u6784
692
+ let result = `// ${table.name} table structure
693
693
  `;
694
694
  result += `type ${this.formatTypeName(table.name)} struct {
695
695
  `;
@@ -700,7 +700,7 @@ var GormGenerator = class extends BaseGenerator {
700
700
  return result;
701
701
  }
702
702
  /**
703
- * 生成列的类型定义
703
+ * Generate column type definition
704
704
  */
705
705
  generateColumn(column) {
706
706
  const fieldName = this.formatFieldName(column.name);
@@ -714,7 +714,7 @@ var GormGenerator = class extends BaseGenerator {
714
714
  return result;
715
715
  }
716
716
  /**
717
- * 映射 SQL 类型到 GORM 类型
717
+ * Map SQL type to GORM type
718
718
  */
719
719
  mapSQLType(type) {
720
720
  switch (type.kind) {
@@ -743,7 +743,7 @@ var GormGenerator = class extends BaseGenerator {
743
743
  }
744
744
  }
745
745
  /**
746
- * 生成 GORM 结构体标签
746
+ * Generate GORM struct tags
747
747
  */
748
748
  generateGormTag(column) {
749
749
  const tags = [];
@@ -839,7 +839,7 @@ var XormGenerator = class extends BaseGenerator {
839
839
  this.options = options;
840
840
  }
841
841
  /**
842
- * 生成整个数据库模式的类型定义
842
+ * Generate type definitions for the entire database schema
843
843
  */
844
844
  generateDatabase(database) {
845
845
  let result = `// Database: ${database.name}
@@ -864,10 +864,10 @@ var XormGenerator = class extends BaseGenerator {
864
864
  return result;
865
865
  }
866
866
  /**
867
- * 生成单个表的类型定义
867
+ * Generate type definition for a single table
868
868
  */
869
869
  generateTable(table) {
870
- let result = `// ${table.name} \u8868\u7ED3\u6784
870
+ let result = `// ${table.name} table structure
871
871
  `;
872
872
  result += `type ${this.formatTypeName(table.name)} struct {
873
873
  `;
@@ -878,7 +878,7 @@ var XormGenerator = class extends BaseGenerator {
878
878
  return result;
879
879
  }
880
880
  /**
881
- * 生成列的类型定义
881
+ * Generate column type definition
882
882
  */
883
883
  generateColumn(column) {
884
884
  const fieldName = this.formatFieldName(column.name);
@@ -892,7 +892,7 @@ var XormGenerator = class extends BaseGenerator {
892
892
  return result;
893
893
  }
894
894
  /**
895
- * 映射 SQL 类型到 XORM 类型
895
+ * Map SQL type to XORM type
896
896
  */
897
897
  mapSQLType(type) {
898
898
  switch (type.kind) {
@@ -921,7 +921,7 @@ var XormGenerator = class extends BaseGenerator {
921
921
  }
922
922
  }
923
923
  /**
924
- * 生成 XORM 结构体标签
924
+ * Generate XORM struct tags
925
925
  */
926
926
  generateXormTag(column) {
927
927
  const tags = [];
@@ -1229,7 +1229,7 @@ Summary: ${successCount} tables succeeded, ${failedTables.length} tables failed`
1229
1229
  }
1230
1230
 
1231
1231
  // package.json
1232
- var version = "0.0.2";
1232
+ var version = "0.0.4";
1233
1233
 
1234
1234
  // src/cli.ts
1235
1235
  var program = new import_commander.Command();
package/dist/index.d.mts CHANGED
@@ -244,7 +244,4 @@ declare function generateCode(sql: string, options: {
244
244
  dbName?: string;
245
245
  }): string;
246
246
 
247
- declare function readSQLFromFile(path: string): Promise<string>;
248
- declare function readSQLFromString(sql: string): Promise<string>;
249
-
250
- export { BaseGenerator, type BigIntType, type BooleanType, type ColumnSchema, type DatabaseSchema, type DateTimeType, type DateType, type DecimalType, type EnumType, type FloatType, type GenerateOptions, GeneratorFactory, GoGenerator, GormGenerator, type IntType, type JsonType, SQLParser, type SQLParserOptions, type SQLType, type TableIndex, type TableSchema, type TextType, type TypeResolver, TypeScriptGenerator, type VarcharType, XormGenerator, generateCode, parseSQL, readSQLFromFile, readSQLFromString };
247
+ export { BaseGenerator, type BigIntType, type BooleanType, type ColumnSchema, type DatabaseSchema, type DateTimeType, type DateType, type DecimalType, type EnumType, type FloatType, type GenerateOptions, GeneratorFactory, GoGenerator, GormGenerator, type IntType, type JsonType, SQLParser, type SQLParserOptions, type SQLType, type TableIndex, type TableSchema, type TextType, type TypeResolver, TypeScriptGenerator, type VarcharType, XormGenerator, generateCode, parseSQL };
package/dist/index.d.ts CHANGED
@@ -244,7 +244,4 @@ declare function generateCode(sql: string, options: {
244
244
  dbName?: string;
245
245
  }): string;
246
246
 
247
- declare function readSQLFromFile(path: string): Promise<string>;
248
- declare function readSQLFromString(sql: string): Promise<string>;
249
-
250
- export { BaseGenerator, type BigIntType, type BooleanType, type ColumnSchema, type DatabaseSchema, type DateTimeType, type DateType, type DecimalType, type EnumType, type FloatType, type GenerateOptions, GeneratorFactory, GoGenerator, GormGenerator, type IntType, type JsonType, SQLParser, type SQLParserOptions, type SQLType, type TableIndex, type TableSchema, type TextType, type TypeResolver, TypeScriptGenerator, type VarcharType, XormGenerator, generateCode, parseSQL, readSQLFromFile, readSQLFromString };
247
+ export { BaseGenerator, type BigIntType, type BooleanType, type ColumnSchema, type DatabaseSchema, type DateTimeType, type DateType, type DecimalType, type EnumType, type FloatType, type GenerateOptions, GeneratorFactory, GoGenerator, GormGenerator, type IntType, type JsonType, SQLParser, type SQLParserOptions, type SQLType, type TableIndex, type TableSchema, type TextType, type TypeResolver, TypeScriptGenerator, type VarcharType, XormGenerator, generateCode, parseSQL };