@dbml/core 3.13.0 → 3.13.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.
Files changed (162) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/lib/export/DbmlExporter.js +0 -0
  4. package/lib/export/JsonExporter.js +0 -0
  5. package/lib/export/ModelExporter.js +0 -0
  6. package/lib/export/MysqlExporter.js +0 -0
  7. package/lib/export/OracleExporter.js +0 -0
  8. package/lib/export/PostgresExporter.js +0 -0
  9. package/lib/export/README.md +0 -0
  10. package/lib/export/SqlServerExporter.js +0 -0
  11. package/lib/export/index.js +0 -0
  12. package/lib/export/utils.js +0 -0
  13. package/lib/import/index.js +0 -0
  14. package/lib/index.js +0 -0
  15. package/lib/model_structure/config.js +0 -0
  16. package/lib/model_structure/database.js +0 -0
  17. package/lib/model_structure/dbState.js +0 -0
  18. package/lib/model_structure/element.js +0 -0
  19. package/lib/model_structure/endpoint.js +0 -0
  20. package/lib/model_structure/enum.js +0 -0
  21. package/lib/model_structure/enumValue.js +0 -0
  22. package/lib/model_structure/field.js +0 -0
  23. package/lib/model_structure/indexColumn.js +0 -0
  24. package/lib/model_structure/indexes.js +0 -0
  25. package/lib/model_structure/ref.js +0 -0
  26. package/lib/model_structure/schema.js +0 -0
  27. package/lib/model_structure/stickyNote.js +0 -0
  28. package/lib/model_structure/table.js +0 -0
  29. package/lib/model_structure/tableGroup.js +0 -0
  30. package/lib/model_structure/tablePartial.js +0 -0
  31. package/lib/model_structure/utils.js +0 -0
  32. package/lib/parse/ANTLR/ASTGeneration/AST.js +0 -0
  33. package/lib/parse/ANTLR/ASTGeneration/ParserErrorListener.js +0 -0
  34. package/lib/parse/ANTLR/ASTGeneration/SyntaxError.js +0 -0
  35. package/lib/parse/ANTLR/ASTGeneration/constants.js +0 -0
  36. package/lib/parse/ANTLR/ASTGeneration/helpers.js +0 -0
  37. package/lib/parse/ANTLR/ASTGeneration/index.js +0 -0
  38. package/lib/parse/ANTLR/ASTGeneration/mssql/MssqlASTGen.js +34 -31
  39. package/lib/parse/ANTLR/ASTGeneration/mysql/MySQLASTGen.js +0 -0
  40. package/lib/parse/ANTLR/ASTGeneration/postgres/PostgreSQLLexerBase.js +0 -0
  41. package/lib/parse/ANTLR/ASTGeneration/postgres/PostgreSQLParserBase.js +0 -0
  42. package/lib/parse/ANTLR/ASTGeneration/postgres/PostgresASTGen.js +0 -0
  43. package/lib/parse/ANTLR/ASTGeneration/snowflake/SnowflakeASTGen.js +0 -0
  44. package/lib/parse/ANTLR/README.md +0 -0
  45. package/lib/parse/ANTLR/parsers/mssql/TSqlLexer.g4 +0 -0
  46. package/lib/parse/ANTLR/parsers/mssql/TSqlLexer.interp +0 -0
  47. package/lib/parse/ANTLR/parsers/mssql/TSqlLexer.js +0 -0
  48. package/lib/parse/ANTLR/parsers/mssql/TSqlLexer.tokens +0 -0
  49. package/lib/parse/ANTLR/parsers/mssql/TSqlParser.g4 +0 -0
  50. package/lib/parse/ANTLR/parsers/mssql/TSqlParser.interp +0 -0
  51. package/lib/parse/ANTLR/parsers/mssql/TSqlParser.js +0 -0
  52. package/lib/parse/ANTLR/parsers/mssql/TSqlParser.tokens +0 -0
  53. package/lib/parse/ANTLR/parsers/mssql/TSqlParserVisitor.js +0 -0
  54. package/lib/parse/ANTLR/parsers/mysql/MySqlLexer.g4 +0 -0
  55. package/lib/parse/ANTLR/parsers/mysql/MySqlLexer.interp +0 -0
  56. package/lib/parse/ANTLR/parsers/mysql/MySqlLexer.js +0 -0
  57. package/lib/parse/ANTLR/parsers/mysql/MySqlLexer.tokens +0 -0
  58. package/lib/parse/ANTLR/parsers/mysql/MySqlParser.g4 +0 -0
  59. package/lib/parse/ANTLR/parsers/mysql/MySqlParser.interp +0 -0
  60. package/lib/parse/ANTLR/parsers/mysql/MySqlParser.js +0 -0
  61. package/lib/parse/ANTLR/parsers/mysql/MySqlParser.tokens +0 -0
  62. package/lib/parse/ANTLR/parsers/mysql/MySqlParserVisitor.js +0 -0
  63. package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLLexer.g4 +0 -0
  64. package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLLexer.interp +0 -0
  65. package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLLexer.js +0 -0
  66. package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLLexer.tokens +0 -0
  67. package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLParser.g4 +0 -0
  68. package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLParser.interp +0 -0
  69. package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLParser.js +0 -0
  70. package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLParser.tokens +0 -0
  71. package/lib/parse/ANTLR/parsers/postgresql/PostgreSQLParserVisitor.js +0 -0
  72. package/lib/parse/ANTLR/parsers/postgresql/README.md +0 -0
  73. package/lib/parse/ANTLR/parsers/snowflake/SnowflakeLexer.g4 +0 -0
  74. package/lib/parse/ANTLR/parsers/snowflake/SnowflakeLexer.interp +0 -0
  75. package/lib/parse/ANTLR/parsers/snowflake/SnowflakeLexer.js +0 -0
  76. package/lib/parse/ANTLR/parsers/snowflake/SnowflakeLexer.tokens +0 -0
  77. package/lib/parse/ANTLR/parsers/snowflake/SnowflakeParser.g4 +0 -0
  78. package/lib/parse/ANTLR/parsers/snowflake/SnowflakeParser.interp +0 -0
  79. package/lib/parse/ANTLR/parsers/snowflake/SnowflakeParser.js +0 -0
  80. package/lib/parse/ANTLR/parsers/snowflake/SnowflakeParser.tokens +0 -0
  81. package/lib/parse/ANTLR/parsers/snowflake/SnowflakeParserVisitor.js +0 -0
  82. package/lib/parse/Parser.js +0 -0
  83. package/lib/parse/buildParser.js +0 -0
  84. package/lib/parse/databaseGenerator.js +0 -0
  85. package/lib/parse/dbml/parser.pegjs +0 -0
  86. package/lib/parse/dbmlParser.js +0 -0
  87. package/lib/parse/error.js +0 -0
  88. package/lib/parse/mssql/base_parsers.js +0 -0
  89. package/lib/parse/mssql/column_definition/actions.js +0 -0
  90. package/lib/parse/mssql/column_definition/index.js +0 -0
  91. package/lib/parse/mssql/constraint_definition/actions.js +0 -0
  92. package/lib/parse/mssql/constraint_definition/index.js +0 -0
  93. package/lib/parse/mssql/expression.js +0 -0
  94. package/lib/parse/mssql/fk_definition/actions.js +0 -0
  95. package/lib/parse/mssql/fk_definition/index.js +0 -0
  96. package/lib/parse/mssql/index.js +0 -0
  97. package/lib/parse/mssql/index_definition/actions.js +0 -0
  98. package/lib/parse/mssql/index_definition/index.js +0 -0
  99. package/lib/parse/mssql/keyword_parsers.js +0 -0
  100. package/lib/parse/mssql/keyword_utils.js +0 -0
  101. package/lib/parse/mssql/statements/actions.js +0 -0
  102. package/lib/parse/mssql/statements/index.js +0 -0
  103. package/lib/parse/mssql/statements/statement_types/alter_table/actions.js +0 -0
  104. package/lib/parse/mssql/statements/statement_types/alter_table/add/actions.js +0 -0
  105. package/lib/parse/mssql/statements/statement_types/alter_table/add/index.js +0 -0
  106. package/lib/parse/mssql/statements/statement_types/alter_table/index.js +0 -0
  107. package/lib/parse/mssql/statements/statement_types/comments/actions.js +0 -0
  108. package/lib/parse/mssql/statements/statement_types/comments/index.js +0 -0
  109. package/lib/parse/mssql/statements/statement_types/create_index/actions.js +0 -0
  110. package/lib/parse/mssql/statements/statement_types/create_index/index.js +0 -0
  111. package/lib/parse/mssql/statements/statement_types/create_table/actions.js +0 -0
  112. package/lib/parse/mssql/statements/statement_types/create_table/index.js +0 -0
  113. package/lib/parse/mssql/statements/statement_types/index.js +0 -0
  114. package/lib/parse/mssql/utils.js +0 -0
  115. package/lib/parse/mssql/whitespaces.js +0 -0
  116. package/lib/parse/mssqlParser.js +0 -0
  117. package/lib/parse/mysql/parser.pegjs +0 -0
  118. package/lib/parse/mysqlParser.js +0 -0
  119. package/lib/parse/postgresParser.js +0 -0
  120. package/lib/parse/postgresql/Base_rules.pegjs +0 -0
  121. package/lib/parse/postgresql/Commands/Alter_table/Alter_table.pegjs +0 -0
  122. package/lib/parse/postgresql/Commands/Commands.pegjs +0 -0
  123. package/lib/parse/postgresql/Commands/Comment.pegjs +0 -0
  124. package/lib/parse/postgresql/Commands/Create_index.pegjs +0 -0
  125. package/lib/parse/postgresql/Commands/Create_table/Create_table.pegjs +0 -0
  126. package/lib/parse/postgresql/Commands/Create_table/Create_table_normal.pegjs +0 -0
  127. package/lib/parse/postgresql/Commands/Create_table/Create_table_of.pegjs +0 -0
  128. package/lib/parse/postgresql/Commands/Create_table/Create_table_partition_of.pegjs +0 -0
  129. package/lib/parse/postgresql/Commands/Create_type/Create_type.pegjs +0 -0
  130. package/lib/parse/postgresql/Commands/Create_type/Create_type_enum.pegjs +0 -0
  131. package/lib/parse/postgresql/Commands/Create_type/Create_type_range.pegjs +0 -0
  132. package/lib/parse/postgresql/Commands/Ignore_syntax.pegjs +0 -0
  133. package/lib/parse/postgresql/Expression.pegjs +0 -0
  134. package/lib/parse/postgresql/InitializerUtils.pegjs +0 -0
  135. package/lib/parse/postgresql/Keywords.pegjs +0 -0
  136. package/lib/parse/postgresql/get_parser.js +0 -0
  137. package/lib/parse/postgresql/parser.pegjs +0 -0
  138. package/lib/parse/schemarb/parser.pegjs +0 -0
  139. package/lib/parse/schemarbParser.js +0 -0
  140. package/lib/utils/version.js +0 -0
  141. package/package.json +3 -3
  142. package/types/export/ModelExporter.d.ts +0 -0
  143. package/types/export/index.d.ts +0 -0
  144. package/types/import/index.d.ts +0 -0
  145. package/types/index.d.ts +0 -0
  146. package/types/model_structure/database.d.ts +0 -0
  147. package/types/model_structure/dbState.d.ts +0 -0
  148. package/types/model_structure/element.d.ts +0 -0
  149. package/types/model_structure/endpoint.d.ts +0 -0
  150. package/types/model_structure/enum.d.ts +0 -0
  151. package/types/model_structure/enumValue.d.ts +0 -0
  152. package/types/model_structure/field.d.ts +0 -0
  153. package/types/model_structure/indexColumn.d.ts +0 -0
  154. package/types/model_structure/indexes.d.ts +0 -0
  155. package/types/model_structure/ref.d.ts +0 -0
  156. package/types/model_structure/schema.d.ts +0 -0
  157. package/types/model_structure/stickyNote.d.ts +0 -0
  158. package/types/model_structure/table.d.ts +0 -0
  159. package/types/model_structure/tableGroup.d.ts +0 -0
  160. package/types/model_structure/tablePartial.d.ts +0 -0
  161. package/types/parse/Parser.d.ts +0 -0
  162. package/types/parse/error.d.ts +0 -0
package/LICENSE CHANGED
File without changes
package/README.md CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/lib/index.js CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -505,10 +505,22 @@ var MssqlASTGen = /*#__PURE__*/function (_TSqlParserVisitor) {
505
505
  }, {
506
506
  key: "visitData_type",
507
507
  value: function visitData_type(ctx) {
508
- var id = ctx.id_().accept(this);
509
508
  if (ctx.MAX()) {
510
- return "".concat(id, "(MAX)");
509
+ var type = '';
510
+ if (ctx.SQUARE_BRACKET_ID()) {
511
+ type = ctx.SQUARE_BRACKET_ID().getText().slice(1, -1);
512
+ } else {
513
+ var typeNode = ctx.VARCHAR() || ctx.NVARCHAR() || ctx.BINARY_KEYWORD() || ctx.VARBINARY_KEYWORD() || ctx.SQUARE_BRACKET_ID();
514
+ type = typeNode.getText();
515
+ }
516
+ return "".concat(type, "(MAX)");
517
+ }
518
+ if (ctx.DOUBLE()) {
519
+ var _double = ctx.DOUBLE().getText();
520
+ var precision = ctx.PRECISION() ? " ".concat(ctx.PRECISION().getText()) : '';
521
+ return "".concat(_double).concat(precision);
511
522
  }
523
+ var id = ctx.id_().accept(this);
512
524
  if (ctx.IDENTITY()) {
513
525
  if (ctx.DECIMAL().length) {
514
526
  var seedAndInc = ctx.DECIMAL().map(function (decimal) {
@@ -518,12 +530,6 @@ var MssqlASTGen = /*#__PURE__*/function (_TSqlParserVisitor) {
518
530
  }
519
531
  return "".concat(id, " IDENTITY");
520
532
  }
521
- if (ctx.DOUBLE()) {
522
- if (ctx.PRECISION()) {
523
- return "".concat(id, "(").concat(ctx.PRECISION().getText(), ")");
524
- }
525
- return id;
526
- }
527
533
  if (ctx.DECIMAL().length) {
528
534
  var scaleAndPrec = ctx.DECIMAL().map(function (decimal) {
529
535
  return decimal.getText();
@@ -607,11 +613,10 @@ var MssqlASTGen = /*#__PURE__*/function (_TSqlParserVisitor) {
607
613
  })));
608
614
 
609
615
  // these check constraints represent enums
610
- var enums = [];
611
616
  var checkConstraints = columnCheckConstraints.concat(tableCheckConstraints);
612
617
  checkConstraints.forEach(function (checkConstraint) {
613
- var field = fields.find(function (field) {
614
- return field.name === checkConstraint.column;
618
+ var field = fields.find(function (fieldItem) {
619
+ return fieldItem.name === checkConstraint.column;
615
620
  });
616
621
  if (!field) return;
617
622
  var enumObject = new _AST.Enum({
@@ -750,11 +755,11 @@ var MssqlASTGen = /*#__PURE__*/function (_TSqlParserVisitor) {
750
755
  case _constants.COLUMN_CONSTRAINT_KIND.CHECK:
751
756
  {
752
757
  var _columnDef$value = columnDef.value,
753
- _type = _columnDef$value.type,
758
+ columnDefType = _columnDef$value.type,
754
759
  value = _columnDef$value.value;
755
760
 
756
761
  // we keep the current behavior: when a field has a check constraints cannot be converted to enum, we will ignore it
757
- if (_type !== CHECK_CONSTRAINT_CONDITION_TYPE.ENUM) return;
762
+ if (columnDefType !== CHECK_CONSTRAINT_CONDITION_TYPE.ENUM) return;
758
763
  definition.value.checkConstraints.push(value);
759
764
  break;
760
765
  }
@@ -1217,8 +1222,8 @@ var MssqlASTGen = /*#__PURE__*/function (_TSqlParserVisitor) {
1217
1222
  field.dbdefault = columnDefault.defaultValue;
1218
1223
  });
1219
1224
  checkConstraints.forEach(function (checkConstraint) {
1220
- var field = table.fields.find(function (field) {
1221
- return field.name === checkConstraint.column;
1225
+ var field = table.fields.find(function (fieldItem) {
1226
+ return fieldItem.name === checkConstraint.column;
1222
1227
  });
1223
1228
  if (!field) return;
1224
1229
  var enumObject = new _AST.Enum({
@@ -1338,28 +1343,28 @@ var MssqlASTGen = /*#__PURE__*/function (_TSqlParserVisitor) {
1338
1343
  acc[name] = arg.value;
1339
1344
  return acc;
1340
1345
  }, {});
1341
- if (!argsObj['name'].includes('Description')) {
1346
+ if (!argsObj.name.includes('Description')) {
1342
1347
  return;
1343
1348
  }
1344
1349
 
1345
1350
  // https://learn.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-addextendedproperty-transact-sql?view=sql-server-ver16#----level0type
1346
- var level0Type = argsObj['level0type'].toLowerCase();
1351
+ var level0Type = argsObj.level0type.toLowerCase();
1347
1352
  if (!level0Type.includes('schema')) return;
1348
- var schemaName = argsObj['level0name'] !== 'dbo' ? argsObj['level0name'] : undefined;
1349
- var level1Type = argsObj['level1type'].toLowerCase();
1350
- var tableName = level1Type.includes('table') ? argsObj['level1name'] : null;
1353
+ var schemaName = argsObj.level0name !== 'dbo' ? argsObj.level0name : undefined;
1354
+ var level1Type = argsObj.level1type.toLowerCase();
1355
+ var tableName = level1Type.includes('table') ? argsObj.level1name : null;
1351
1356
  var table = this.data.tables.find(function (t) {
1352
1357
  return t.name === tableName && t.schemaName === schemaName;
1353
1358
  });
1354
1359
  if (!table) return;
1355
- if (!argsObj['level2type']) {
1360
+ if (!argsObj.level2type) {
1356
1361
  table.note = {
1357
1362
  value: argsObj.value
1358
1363
  };
1359
1364
  return;
1360
1365
  }
1361
- var level2Type = argsObj['level2type'].toLowerCase();
1362
- var columnName = level2Type.includes('column') ? argsObj['level2name'] : null;
1366
+ var level2Type = argsObj.level2type.toLowerCase();
1367
+ var columnName = level2Type.includes('column') ? argsObj.level2name : null;
1363
1368
  var field = table.fields.find(function (f) {
1364
1369
  return f.name === columnName;
1365
1370
  });
@@ -1380,11 +1385,10 @@ var MssqlASTGen = /*#__PURE__*/function (_TSqlParserVisitor) {
1380
1385
  var _this19 = this;
1381
1386
  if (ctx.func_proc_name_database_schema()) {
1382
1387
  return ctx.func_proc_name_database_schema().accept(this);
1383
- } else {
1384
- return ctx.id_().map(function (id) {
1385
- return id.accept(_this19);
1386
- });
1387
1388
  }
1389
+ return ctx.id_().map(function (id) {
1390
+ return id.accept(_this19);
1391
+ });
1388
1392
  }
1389
1393
 
1390
1394
  // func_proc_name_database_schema
@@ -1397,11 +1401,10 @@ var MssqlASTGen = /*#__PURE__*/function (_TSqlParserVisitor) {
1397
1401
  var _this20 = this;
1398
1402
  if (ctx.func_proc_name_schema()) {
1399
1403
  return ctx.func_proc_name_schema().accept(this);
1400
- } else {
1401
- return ctx.id_().map(function (id) {
1402
- return id.accept(_this20);
1403
- });
1404
1404
  }
1405
+ return ctx.id_().map(function (id) {
1406
+ return id.accept(_this20);
1407
+ });
1405
1408
  }
1406
1409
 
1407
1410
  // func_proc_name_schema
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dbml/core",
3
- "version": "3.13.0",
3
+ "version": "3.13.1",
4
4
  "description": "> TODO: description",
5
5
  "author": "Holistics <dev@holistics.io>",
6
6
  "license": "Apache-2.0",
@@ -32,7 +32,7 @@
32
32
  "prepublish": "npm run build"
33
33
  },
34
34
  "dependencies": {
35
- "@dbml/parse": "^3.13.0",
35
+ "@dbml/parse": "^3.13.1",
36
36
  "antlr4": "^4.13.1",
37
37
  "lodash": "^4.17.15",
38
38
  "parsimmon": "^1.13.0",
@@ -59,7 +59,7 @@
59
59
  "\\.(?!json$)[^.]*$": "@glen/jest-raw-loader"
60
60
  }
61
61
  },
62
- "gitHead": "4b705ec829db097bbeb21cf06b2b989cd16173b4",
62
+ "gitHead": "8baea3c6a612f433f188efd6df5d24d1d5e16f2c",
63
63
  "engines": {
64
64
  "node": ">=16"
65
65
  }
File without changes
File without changes
File without changes
package/types/index.d.ts CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes