@dbml/core 2.5.2 → 2.5.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.
Files changed (64) hide show
  1. package/README.md +1 -1
  2. package/lib/export/DbmlExporter.js +9 -64
  3. package/lib/export/JsonExporter.js +5 -11
  4. package/lib/export/ModelExporter.js +5 -22
  5. package/lib/export/MysqlExporter.js +8 -70
  6. package/lib/export/PostgresExporter.js +11 -80
  7. package/lib/export/SqlServerExporter.js +10 -71
  8. package/lib/export/index.js +0 -6
  9. package/lib/export/utils.js +2 -12
  10. package/lib/import/index.js +0 -7
  11. package/lib/index.js +4 -9
  12. package/lib/model_structure/config.js +1 -1
  13. package/lib/model_structure/database.js +32 -83
  14. package/lib/model_structure/dbState.js +5 -10
  15. package/lib/model_structure/element.js +13 -38
  16. package/lib/model_structure/endpoint.js +22 -68
  17. package/lib/model_structure/enum.js +18 -49
  18. package/lib/model_structure/enumValue.js +17 -44
  19. package/lib/model_structure/field.js +26 -62
  20. package/lib/model_structure/indexColumn.js +15 -40
  21. package/lib/model_structure/indexes.js +22 -50
  22. package/lib/model_structure/ref.js +24 -56
  23. package/lib/model_structure/schema.js +27 -65
  24. package/lib/model_structure/table.js +24 -59
  25. package/lib/model_structure/tableGroup.js +18 -49
  26. package/lib/model_structure/utils.js +0 -3
  27. package/lib/parse/Parser.js +5 -27
  28. package/lib/parse/buildParser.js +11 -23
  29. package/lib/parse/dbmlParser.js +863 -2131
  30. package/lib/parse/mssql/base_parsers.js +2 -11
  31. package/lib/parse/mssql/column_definition/actions.js +0 -3
  32. package/lib/parse/mssql/column_definition/index.js +9 -17
  33. package/lib/parse/mssql/constraint_definition/actions.js +6 -12
  34. package/lib/parse/mssql/constraint_definition/index.js +13 -21
  35. package/lib/parse/mssql/expression.js +6 -16
  36. package/lib/parse/mssql/fk_definition/actions.js +1 -12
  37. package/lib/parse/mssql/fk_definition/index.js +5 -10
  38. package/lib/parse/mssql/index.js +2 -4
  39. package/lib/parse/mssql/index_definition/actions.js +0 -6
  40. package/lib/parse/mssql/index_definition/index.js +8 -13
  41. package/lib/parse/mssql/keyword_parsers.js +2 -3
  42. package/lib/parse/mssql/keyword_utils.js +0 -4
  43. package/lib/parse/mssql/statements/actions.js +0 -24
  44. package/lib/parse/mssql/statements/index.js +1 -7
  45. package/lib/parse/mssql/statements/statement_types/alter_table/actions.js +3 -10
  46. package/lib/parse/mssql/statements/statement_types/alter_table/add/actions.js +2 -6
  47. package/lib/parse/mssql/statements/statement_types/alter_table/add/index.js +9 -18
  48. package/lib/parse/mssql/statements/statement_types/alter_table/index.js +2 -7
  49. package/lib/parse/mssql/statements/statement_types/comments/actions.js +3 -11
  50. package/lib/parse/mssql/statements/statement_types/comments/index.js +3 -13
  51. package/lib/parse/mssql/statements/statement_types/create_index/actions.js +1 -3
  52. package/lib/parse/mssql/statements/statement_types/create_index/index.js +9 -15
  53. package/lib/parse/mssql/statements/statement_types/create_table/actions.js +7 -18
  54. package/lib/parse/mssql/statements/statement_types/create_table/index.js +8 -16
  55. package/lib/parse/mssql/statements/statement_types/index.js +0 -4
  56. package/lib/parse/mssql/utils.js +4 -14
  57. package/lib/parse/mssql/whitespaces.js +0 -1
  58. package/lib/parse/mssqlParser.js +0 -3
  59. package/lib/parse/mysqlParser.js +822 -2395
  60. package/lib/parse/postgresParser.js +3 -3
  61. package/lib/parse/postgresql/get_parser.js +6 -9
  62. package/lib/parse/schemarbParser.js +219 -714
  63. package/package.json +11 -12
  64. package/types/.DS_Store +0 -0
@@ -4,36 +4,25 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
-
8
7
  var _lodash = _interopRequireDefault(require("lodash"));
9
-
10
8
  var _utils = require("./utils");
11
-
12
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
-
10
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
14
11
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
15
-
16
12
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
17
-
18
13
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
19
-
20
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
21
-
14
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
22
15
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
23
-
24
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
25
-
16
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
26
17
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
27
-
28
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
29
-
30
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
31
-
18
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
19
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
20
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
21
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
32
22
  var SqlServerExporter = /*#__PURE__*/function () {
33
23
  function SqlServerExporter() {
34
24
  _classCallCheck(this, SqlServerExporter);
35
25
  }
36
-
37
26
  _createClass(SqlServerExporter, null, [{
38
27
  key: "getFieldLines",
39
28
  value: function getFieldLines(tableId, model) {
@@ -41,37 +30,29 @@ var SqlServerExporter = /*#__PURE__*/function () {
41
30
  var lines = table.fieldIds.map(function (fieldId) {
42
31
  var field = model.fields[fieldId];
43
32
  var line = '';
44
-
45
33
  if (field.enumId) {
46
34
  var _enum = model.enums[field.enumId];
47
35
  line = "[".concat(field.name, "] nvarchar(255) NOT NULL CHECK ([").concat(field.name, "] IN (");
48
-
49
36
  var enumValues = _enum.valueIds.map(function (valueId) {
50
37
  var value = model.enumValues[valueId];
51
38
  return "'".concat(value.name, "'");
52
39
  });
53
-
54
40
  line += "".concat(enumValues.join(', '), "))");
55
41
  } else {
56
42
  line = "[".concat(field.name, "] ").concat(field.type.type_name !== 'varchar' ? field.type.type_name : 'nvarchar(255)');
57
43
  }
58
-
59
44
  if (field.unique) {
60
45
  line += ' UNIQUE';
61
46
  }
62
-
63
47
  if (field.pk) {
64
48
  line += ' PRIMARY KEY';
65
49
  }
66
-
67
50
  if (field.not_null) {
68
51
  line += ' NOT NULL';
69
52
  }
70
-
71
53
  if (field.increment) {
72
54
  line += ' IDENTITY(1, 1)';
73
55
  }
74
-
75
56
  if (field.dbdefault) {
76
57
  if (field.dbdefault.type === 'expression') {
77
58
  line += " DEFAULT (".concat(field.dbdefault.value, ")");
@@ -81,7 +62,6 @@ var SqlServerExporter = /*#__PURE__*/function () {
81
62
  line += " DEFAULT (".concat(field.dbdefault.value, ")");
82
63
  }
83
64
  }
84
-
85
65
  return line;
86
66
  });
87
67
  return lines;
@@ -100,13 +80,11 @@ var SqlServerExporter = /*#__PURE__*/function () {
100
80
  key.columnIds.forEach(function (columnId) {
101
81
  var column = model.indexColumns[columnId];
102
82
  var columnStr = '';
103
-
104
83
  if (column.type === 'expression') {
105
84
  columnStr = "(".concat(column.value, ")");
106
85
  } else {
107
86
  columnStr = "[".concat(column.value, "]");
108
87
  }
109
-
110
88
  columnArr.push(columnStr);
111
89
  });
112
90
  line += " (".concat(columnArr.join(', '), ")");
@@ -147,11 +125,8 @@ var SqlServerExporter = /*#__PURE__*/function () {
147
125
  key: "buildTableManyToMany",
148
126
  value: function buildTableManyToMany(firstTableFieldsMap, secondTableFieldsMap, tableName, refEndpointSchema, model) {
149
127
  var line = "CREATE TABLE ".concat((0, _utils.shouldPrintSchema)(refEndpointSchema, model) ? "[".concat(refEndpointSchema.name, "].") : '', "[").concat(tableName, "] (\n");
150
-
151
128
  var key1s = _toConsumableArray(firstTableFieldsMap.keys()).join('], [');
152
-
153
129
  var key2s = _toConsumableArray(secondTableFieldsMap.keys()).join('], [');
154
-
155
130
  firstTableFieldsMap.forEach(function (fieldType, fieldName) {
156
131
  line += " [".concat(fieldName, "] ").concat(fieldType, ",\n");
157
132
  });
@@ -166,7 +141,6 @@ var SqlServerExporter = /*#__PURE__*/function () {
166
141
  key: "buildForeignKeyManyToMany",
167
142
  value: function buildForeignKeyManyToMany(fieldsMap, foreignEndpointFields, refEndpointTableName, foreignEndpointTableName, refEndpointSchema, foreignEndpointSchema, model) {
168
143
  var refEndpointFields = _toConsumableArray(fieldsMap.keys()).join('], [');
169
-
170
144
  var line = "ALTER TABLE ".concat((0, _utils.shouldPrintSchema)(refEndpointSchema, model) ? "[".concat(refEndpointSchema.name, "].") : '', "[").concat(refEndpointTableName, "] ADD FOREIGN KEY ([").concat(refEndpointFields, "]) REFERENCES ").concat((0, _utils.shouldPrintSchema)(foreignEndpointSchema, model) ? "[".concat(foreignEndpointSchema.name, "].") : '', "[").concat(foreignEndpointTableName, "] ").concat(foreignEndpointFields, ";\nGO\n\n");
171
145
  return line;
172
146
  }
@@ -182,7 +156,6 @@ var SqlServerExporter = /*#__PURE__*/function () {
182
156
  key: "exportRefs",
183
157
  value: function exportRefs(refIds, model, usedTableNames) {
184
158
  var _this = this;
185
-
186
159
  var strArr = refIds.map(function (refId) {
187
160
  var line = '';
188
161
  var ref = model.refs[refId];
@@ -197,15 +170,11 @@ var SqlServerExporter = /*#__PURE__*/function () {
197
170
  var refEndpointField = model.fields[refEndpoint.fieldIds[0]];
198
171
  var refEndpointTable = model.tables[refEndpointField.tableId];
199
172
  var refEndpointSchema = model.schemas[refEndpointTable.schemaId];
200
-
201
173
  var refEndpointFieldName = _this.buildFieldName(refEndpoint.fieldIds, model, 'mssql');
202
-
203
174
  var foreignEndpointField = model.fields[foreignEndpoint.fieldIds[0]];
204
175
  var foreignEndpointTable = model.tables[foreignEndpointField.tableId];
205
176
  var foreignEndpointSchema = model.schemas[foreignEndpointTable.schemaId];
206
-
207
177
  var foreignEndpointFieldName = _this.buildFieldName(foreignEndpoint.fieldIds, model, 'mssql');
208
-
209
178
  if (refOneIndex === -1) {
210
179
  // many to many relationship
211
180
  var firstTableFieldsMap = (0, _utils.buildJunctionFields1)(refEndpoint.fieldIds, model);
@@ -216,24 +185,18 @@ var SqlServerExporter = /*#__PURE__*/function () {
216
185
  line += _this.buildForeignKeyManyToMany(secondTableFieldsMap, foreignEndpointFieldName, newTableName, foreignEndpointTable.name, refEndpointSchema, foreignEndpointSchema, model);
217
186
  } else {
218
187
  line = "ALTER TABLE ".concat((0, _utils.shouldPrintSchema)(foreignEndpointSchema, model) ? "[".concat(foreignEndpointSchema.name, "].") : '', "[").concat(foreignEndpointTable.name, "] ADD ");
219
-
220
188
  if (ref.name) {
221
189
  line += "CONSTRAINT [".concat(ref.name, "] ");
222
190
  }
223
-
224
191
  line += "FOREIGN KEY ".concat(foreignEndpointFieldName, " REFERENCES ").concat((0, _utils.shouldPrintSchema)(refEndpointSchema, model) ? "[".concat(refEndpointSchema.name, "].") : '', "[").concat(refEndpointTable.name, "] ").concat(refEndpointFieldName);
225
-
226
192
  if (ref.onDelete) {
227
193
  line += " ON DELETE ".concat(ref.onDelete.toUpperCase());
228
194
  }
229
-
230
195
  if (ref.onUpdate) {
231
196
  line += " ON UPDATE ".concat(ref.onUpdate.toUpperCase());
232
197
  }
233
-
234
198
  line += '\nGO\n';
235
199
  }
236
-
237
200
  return line;
238
201
  });
239
202
  return strArr;
@@ -249,24 +212,20 @@ var SqlServerExporter = /*#__PURE__*/function () {
249
212
  var table = model.tables[index.tableId];
250
213
  var schema = model.schemas[table.schemaId];
251
214
  var line = 'CREATE';
252
-
253
215
  if (index.unique) {
254
216
  line += ' UNIQUE';
255
217
  }
256
-
257
218
  var indexName = index.name ? "[".concat(index.name, "]") : "".concat((0, _utils.shouldPrintSchema)(schema, model) ? "[".concat(schema.name, "].") : '', "[").concat(table.name, "_index_").concat(i, "]");
258
219
  line += " INDEX ".concat(indexName, " ON ").concat((0, _utils.shouldPrintSchema)(schema, model) ? "[".concat(schema.name, "].") : '', "[").concat(table.name, "]");
259
220
  var columnArr = [];
260
221
  index.columnIds.forEach(function (columnId) {
261
222
  var column = model.indexColumns[columnId];
262
223
  var columnStr = '';
263
-
264
224
  if (column.type === 'expression') {
265
225
  columnStr = "(".concat(column.value, ")");
266
226
  } else {
267
227
  columnStr = "\"".concat(column.value, "\"");
268
228
  }
269
-
270
229
  columnArr.push(columnStr);
271
230
  });
272
231
  line += " (".concat(columnArr.join(', '), ")");
@@ -283,7 +242,6 @@ var SqlServerExporter = /*#__PURE__*/function () {
283
242
  var schema = model.schemas[table.schemaId];
284
243
  var line = '';
285
244
  line = 'EXEC sp_addextendedproperty\n';
286
-
287
245
  switch (comment.type) {
288
246
  case 'table':
289
247
  {
@@ -293,7 +251,6 @@ var SqlServerExporter = /*#__PURE__*/function () {
293
251
  line += "@level1type = N'Table', @level1name = '".concat(table.name, "';\n");
294
252
  break;
295
253
  }
296
-
297
254
  case 'column':
298
255
  {
299
256
  var field = model.fields[comment.fieldId];
@@ -304,11 +261,9 @@ var SqlServerExporter = /*#__PURE__*/function () {
304
261
  line += "@level2type = N'Column', @level2name = '".concat(field.name, "';\n");
305
262
  break;
306
263
  }
307
-
308
264
  default:
309
265
  break;
310
266
  }
311
-
312
267
  line += 'GO\n';
313
268
  return line;
314
269
  });
@@ -324,32 +279,25 @@ var SqlServerExporter = /*#__PURE__*/function () {
324
279
  var statements = database.schemaIds.reduce(function (prevStatements, schemaId) {
325
280
  var schema = model.schemas[schemaId];
326
281
  var tableIds = schema.tableIds,
327
- refIds = schema.refIds;
328
-
282
+ refIds = schema.refIds;
329
283
  if ((0, _utils.shouldPrintSchema)(schema, model)) {
330
284
  prevStatements.schemas.push("CREATE SCHEMA [".concat(schema.name, "]\nGO\n"));
331
285
  }
332
-
333
286
  if (!_lodash["default"].isEmpty(tableIds)) {
334
287
  var _prevStatements$table;
335
-
336
288
  (_prevStatements$table = prevStatements.tables).push.apply(_prevStatements$table, _toConsumableArray(SqlServerExporter.exportTables(tableIds, model)));
337
289
  }
338
-
339
290
  var indexIds = _lodash["default"].flatten(tableIds.map(function (tableId) {
340
291
  return model.tables[tableId].indexIds;
341
292
  }));
342
-
343
293
  if (!_lodash["default"].isEmpty(indexIds)) {
344
294
  var _prevStatements$index;
345
-
346
295
  (_prevStatements$index = prevStatements.indexes).push.apply(_prevStatements$index, _toConsumableArray(SqlServerExporter.exportIndexes(indexIds, model)));
347
296
  }
348
-
349
297
  var commentNodes = _lodash["default"].flatten(tableIds.map(function (tableId) {
350
298
  var _model$tables$tableId = model.tables[tableId],
351
- fieldIds = _model$tables$tableId.fieldIds,
352
- note = _model$tables$tableId.note;
299
+ fieldIds = _model$tables$tableId.fieldIds,
300
+ note = _model$tables$tableId.note;
353
301
  var fieldObjects = fieldIds.filter(function (fieldId) {
354
302
  return model.fields[fieldId].note;
355
303
  }).map(function (fieldId) {
@@ -364,19 +312,14 @@ var SqlServerExporter = /*#__PURE__*/function () {
364
312
  tableId: tableId
365
313
  }].concat(fieldObjects) : fieldObjects;
366
314
  }));
367
-
368
315
  if (!_lodash["default"].isEmpty(commentNodes)) {
369
316
  var _prevStatements$comme;
370
-
371
317
  (_prevStatements$comme = prevStatements.comments).push.apply(_prevStatements$comme, _toConsumableArray(SqlServerExporter.exportComments(commentNodes, model)));
372
318
  }
373
-
374
319
  if (!_lodash["default"].isEmpty(refIds)) {
375
320
  var _prevStatements$refs;
376
-
377
321
  (_prevStatements$refs = prevStatements.refs).push.apply(_prevStatements$refs, _toConsumableArray(SqlServerExporter.exportRefs(refIds, model, usedTableNames)));
378
322
  }
379
-
380
323
  return prevStatements;
381
324
  }, {
382
325
  schemas: [],
@@ -386,15 +329,11 @@ var SqlServerExporter = /*#__PURE__*/function () {
386
329
  comments: [],
387
330
  refs: []
388
331
  });
389
-
390
332
  var res = _lodash["default"].concat(statements.schemas, statements.enums, statements.tables, statements.indexes, statements.comments, statements.refs).join('\n');
391
-
392
333
  return res;
393
334
  }
394
335
  }]);
395
-
396
336
  return SqlServerExporter;
397
337
  }();
398
-
399
338
  var _default = SqlServerExporter;
400
339
  exports["default"] = _default;
@@ -4,19 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
-
8
7
  var _ModelExporter = _interopRequireDefault(require("./ModelExporter"));
9
-
10
8
  var _Parser = _interopRequireDefault(require("../parse/Parser"));
11
-
12
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
-
14
10
  function _export(str, format) {
15
11
  var database = _Parser["default"].parse(str, 'dbml');
16
-
17
12
  return _ModelExporter["default"]["export"](database.normalize(), format);
18
13
  }
19
-
20
14
  var _default = {
21
15
  "export": _export
22
16
  };
@@ -3,22 +3,18 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.hasWhiteSpace = hasWhiteSpace;
7
- exports.shouldPrintSchema = shouldPrintSchema;
8
6
  exports.buildJunctionFields1 = buildJunctionFields1;
9
7
  exports.buildJunctionFields2 = buildJunctionFields2;
10
8
  exports.buildNewTableName = buildNewTableName;
11
-
9
+ exports.hasWhiteSpace = hasWhiteSpace;
10
+ exports.shouldPrintSchema = shouldPrintSchema;
12
11
  var _config = require("../model_structure/config");
13
-
14
12
  function hasWhiteSpace(s) {
15
13
  return /\s/g.test(s);
16
14
  }
17
-
18
15
  function shouldPrintSchema(schema, model) {
19
16
  return schema.name !== _config.DEFAULT_SCHEMA_NAME || schema.name === _config.DEFAULT_SCHEMA_NAME && model.database['1'].hasDefaultSchema;
20
17
  }
21
-
22
18
  function buildJunctionFields1(fieldIds, model) {
23
19
  var fieldsMap = new Map();
24
20
  fieldIds.map(function (fieldId) {
@@ -26,32 +22,26 @@ function buildJunctionFields1(fieldIds, model) {
26
22
  });
27
23
  return fieldsMap;
28
24
  }
29
-
30
25
  function buildJunctionFields2(fieldIds, model, firstTableFieldsMap) {
31
26
  var fieldsMap = new Map();
32
27
  fieldIds.map(function (fieldId) {
33
28
  var fieldName = "".concat(model.tables[model.fields[fieldId].tableId].name, "_").concat(model.fields[fieldId].name);
34
29
  var count = 1;
35
-
36
30
  while (firstTableFieldsMap.has(fieldName)) {
37
31
  fieldName = "".concat(model.tables[model.fields[fieldId].tableId].name, "_").concat(model.fields[fieldId].name, "(").concat(count, ")");
38
32
  count += 1;
39
33
  }
40
-
41
34
  fieldsMap.set(fieldName, model.fields[fieldId].type.type_name);
42
35
  });
43
36
  return fieldsMap;
44
37
  }
45
-
46
38
  function buildNewTableName(firstTable, secondTable, usedTableNames) {
47
39
  var newTableName = "".concat(firstTable, "_").concat(secondTable);
48
40
  var count = 1;
49
-
50
41
  while (usedTableNames.has(newTableName)) {
51
42
  newTableName = "".concat(firstTable, "_").concat(secondTable, "(").concat(count, ")");
52
43
  count += 1;
53
44
  }
54
-
55
45
  usedTableNames.add(newTableName);
56
46
  return newTableName;
57
47
  }
@@ -4,21 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
-
8
7
  var _Parser = _interopRequireDefault(require("../parse/Parser"));
9
-
10
8
  var _ModelExporter = _interopRequireDefault(require("../export/ModelExporter"));
11
-
12
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
-
14
10
  function _import(str, format) {
15
11
  var database = _Parser["default"].parse(str, format);
16
-
17
12
  var dbml = _ModelExporter["default"]["export"](database.normalize(), 'dbml');
18
-
19
13
  return dbml;
20
14
  }
21
-
22
15
  var _default = {
23
16
  "import": _import
24
17
  };
package/lib/index.js CHANGED
@@ -15,25 +15,20 @@ Object.defineProperty(exports, "Parser", {
15
15
  return _Parser["default"];
16
16
  }
17
17
  });
18
- Object.defineProperty(exports, "importer", {
18
+ Object.defineProperty(exports, "exporter", {
19
19
  enumerable: true,
20
20
  get: function get() {
21
- return _import["default"];
21
+ return _export["default"];
22
22
  }
23
23
  });
24
- Object.defineProperty(exports, "exporter", {
24
+ Object.defineProperty(exports, "importer", {
25
25
  enumerable: true,
26
26
  get: function get() {
27
- return _export["default"];
27
+ return _import["default"];
28
28
  }
29
29
  });
30
-
31
30
  var _ModelExporter = _interopRequireDefault(require("./export/ModelExporter"));
32
-
33
31
  var _Parser = _interopRequireDefault(require("./parse/Parser"));
34
-
35
32
  var _import = _interopRequireDefault(require("./import"));
36
-
37
33
  var _export = _interopRequireDefault(require("./export"));
38
-
39
34
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.TABLE_GROUP = exports.REF = exports.ENUM = exports.TABLE = exports.DEFAULT_SCHEMA_NAME = void 0;
6
+ exports.TABLE_GROUP = exports.TABLE = exports.REF = exports.ENUM = exports.DEFAULT_SCHEMA_NAME = void 0;
7
7
  var DEFAULT_SCHEMA_NAME = 'public';
8
8
  exports.DEFAULT_SCHEMA_NAME = DEFAULT_SCHEMA_NAME;
9
9
  var TABLE = 'table';