air-dml 1.1.0 → 1.1.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/parser/index.d.ts.map +1 -1
- package/dist/parser/index.js +118 -15
- package/dist/parser/index.js.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,OAAO,EAOR,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,OAAO,EAOR,MAAM,UAAU,CAAC;AA0BlB,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CA4J3E;AAOD,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAsKvD"}
|
package/dist/parser/index.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { Parser } from '@dbml/core';
|
|
2
2
|
export function parseAirDML(airDmlText, diagramId) {
|
|
3
|
-
const parser = new Parser();
|
|
4
|
-
const database = parser.parse(airDmlText, 'dbml');
|
|
5
|
-
const project = database.name || 'Untitled Project';
|
|
6
|
-
const databaseType = database.databaseType || 'PostgreSQL';
|
|
7
3
|
const tableAttributes = parseTableAttributes(airDmlText);
|
|
8
4
|
const columnAttributes = parseColumnAttributes(airDmlText);
|
|
9
5
|
const referenceAttributes = parseReferenceAttributes(airDmlText);
|
|
6
|
+
const cleanedDbml = removeExtendedAttributes(airDmlText);
|
|
7
|
+
const parser = new Parser();
|
|
8
|
+
const database = parser.parse(cleanedDbml, 'dbml');
|
|
9
|
+
const project = database.name || 'Untitled Project';
|
|
10
|
+
const databaseType = database.databaseType || 'PostgreSQL';
|
|
10
11
|
const tables = database.schemas.flatMap((schema) => schema.tables.map((dbmlTable) => {
|
|
11
12
|
const tableAttrs = tableAttributes.get(dbmlTable.name) || {};
|
|
12
13
|
const columns = dbmlTable.fields.map((field) => {
|
|
@@ -15,7 +16,7 @@ export function parseAirDML(airDmlText, diagramId) {
|
|
|
15
16
|
name: field.name,
|
|
16
17
|
logicalName: colAttrs.alias,
|
|
17
18
|
type: mapDbmlTypeToDataType(field.type.type_name),
|
|
18
|
-
typeParams: field.type.args
|
|
19
|
+
typeParams: Array.isArray(field.type.args) ? field.type.args.join(', ') : undefined,
|
|
19
20
|
pk: field.pk || false,
|
|
20
21
|
fk: colAttrs.fk || false,
|
|
21
22
|
unique: field.unique || false,
|
|
@@ -74,17 +75,29 @@ export function parseAirDML(airDmlText, diagramId) {
|
|
|
74
75
|
});
|
|
75
76
|
}
|
|
76
77
|
const commonColumns = parseAreaCommonColumns(airDmlText, group.name);
|
|
78
|
+
const note = parseAreaNote(airDmlText, group.name);
|
|
79
|
+
const databaseType = parseAreaDatabaseType(airDmlText, group.name);
|
|
80
|
+
const tableNames = (group.tables || []).map((tableRef) => typeof tableRef === 'string' ? tableRef : tableRef.name);
|
|
81
|
+
const tableIds = tableNames
|
|
82
|
+
.map((tableName) => {
|
|
83
|
+
const table = tables.find(t => t.name === tableName);
|
|
84
|
+
return table?.id;
|
|
85
|
+
})
|
|
86
|
+
.filter(Boolean);
|
|
77
87
|
return {
|
|
78
88
|
id: areaId,
|
|
79
89
|
name: group.name,
|
|
90
|
+
tables: tableIds,
|
|
80
91
|
color: areaAttrs.color,
|
|
81
92
|
pos: areaAttrs.pos_x !== undefined && areaAttrs.pos_y !== undefined
|
|
82
93
|
? { x: areaAttrs.pos_x, y: areaAttrs.pos_y }
|
|
83
94
|
: undefined,
|
|
84
95
|
width: areaAttrs.width,
|
|
85
96
|
height: areaAttrs.height,
|
|
86
|
-
|
|
87
|
-
|
|
97
|
+
labelHorizontal: areaAttrs.label_horizontal,
|
|
98
|
+
labelVertical: areaAttrs.label_vertical,
|
|
99
|
+
databaseType,
|
|
100
|
+
note,
|
|
88
101
|
commonColumns,
|
|
89
102
|
};
|
|
90
103
|
}));
|
|
@@ -188,17 +201,20 @@ export function exportToAirDML(diagram) {
|
|
|
188
201
|
if (area.color) {
|
|
189
202
|
areaAttrs.push(`color: "${area.color}"`);
|
|
190
203
|
}
|
|
191
|
-
if (area.
|
|
192
|
-
areaAttrs.push(`
|
|
204
|
+
if (area.labelHorizontal) {
|
|
205
|
+
areaAttrs.push(`label_horizontal: "${area.labelHorizontal}"`);
|
|
193
206
|
}
|
|
194
|
-
if (area.
|
|
195
|
-
areaAttrs.push(`
|
|
207
|
+
if (area.labelVertical) {
|
|
208
|
+
areaAttrs.push(`label_vertical: "${area.labelVertical}"`);
|
|
196
209
|
}
|
|
197
210
|
const attrStr = areaAttrs.length > 0 ? ` [${areaAttrs.join(', ')}]` : '';
|
|
198
211
|
airDml += `Area ${escapeIdentifier(area.name)}${attrStr} {\n`;
|
|
199
212
|
tableNames.forEach((name) => {
|
|
200
213
|
airDml += ` ${name}\n`;
|
|
201
214
|
});
|
|
215
|
+
if (area.databaseType) {
|
|
216
|
+
airDml += `\n database_type: "${area.databaseType}"\n`;
|
|
217
|
+
}
|
|
202
218
|
if (area.commonColumns && area.commonColumns.length > 0) {
|
|
203
219
|
airDml += `\n CommonColumns: [\n`;
|
|
204
220
|
area.commonColumns.forEach((column) => {
|
|
@@ -226,12 +242,74 @@ export function exportToAirDML(diagram) {
|
|
|
226
242
|
});
|
|
227
243
|
airDml += ` ]\n`;
|
|
228
244
|
}
|
|
245
|
+
if (area.note) {
|
|
246
|
+
airDml += `\n Note: "${area.note.replace(/"/g, '\\"').replace(/\n/g, '\\n')}"\n`;
|
|
247
|
+
}
|
|
229
248
|
airDml += `}\n\n`;
|
|
230
249
|
}
|
|
231
250
|
});
|
|
232
251
|
}
|
|
233
252
|
return airDml.trim();
|
|
234
253
|
}
|
|
254
|
+
function removeExtendedAttributes(airDmlText) {
|
|
255
|
+
let cleaned = airDmlText;
|
|
256
|
+
cleaned = cleaned.replace(/Table\s+(["`]?)(\w+)\1\s*\[([^\]]+)\]/g, (_match, quote, tableName, attrs) => {
|
|
257
|
+
const standardAttrs = attrs.split(',')
|
|
258
|
+
.map((attr) => attr.trim())
|
|
259
|
+
.filter((attr) => {
|
|
260
|
+
const attrName = attr.split(':')[0].trim().toLowerCase();
|
|
261
|
+
return attrName === 'headercolor' || attrName.startsWith('note');
|
|
262
|
+
});
|
|
263
|
+
if (standardAttrs.length > 0) {
|
|
264
|
+
return `Table ${quote}${tableName}${quote} [${standardAttrs.join(', ')}]`;
|
|
265
|
+
}
|
|
266
|
+
else {
|
|
267
|
+
return `Table ${quote}${tableName}${quote}`;
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
cleaned = cleaned.replace(/(\s+)(["`]?)(\w+)\2\s+(\w+(?:\([^)]*\))?)\s*\[([^\]]+)\]/g, (_match, indent, quote, colName, colType, attrs) => {
|
|
271
|
+
const standardAttrs = attrs.split(',')
|
|
272
|
+
.map((attr) => attr.trim())
|
|
273
|
+
.filter((attr) => {
|
|
274
|
+
const lower = attr.toLowerCase();
|
|
275
|
+
return (lower === 'pk' ||
|
|
276
|
+
lower === 'unique' ||
|
|
277
|
+
lower === 'not null' ||
|
|
278
|
+
lower === 'increment' ||
|
|
279
|
+
lower.startsWith('default') ||
|
|
280
|
+
lower.startsWith('note') ||
|
|
281
|
+
lower.startsWith('ref'));
|
|
282
|
+
});
|
|
283
|
+
if (standardAttrs.length > 0) {
|
|
284
|
+
return `${indent}${quote}${colName}${quote} ${colType} [${standardAttrs.join(', ')}]`;
|
|
285
|
+
}
|
|
286
|
+
else {
|
|
287
|
+
return `${indent}${quote}${colName}${quote} ${colType}`;
|
|
288
|
+
}
|
|
289
|
+
});
|
|
290
|
+
cleaned = cleaned.replace(/Ref\s*:\s*([^[\n]+)\[([^\]]+)\]/g, (_match, refDef, attrs) => {
|
|
291
|
+
const standardAttrs = attrs.split(',')
|
|
292
|
+
.map((attr) => attr.trim())
|
|
293
|
+
.filter((attr) => {
|
|
294
|
+
const lower = attr.toLowerCase();
|
|
295
|
+
return lower.startsWith('delete') || lower.startsWith('update') ||
|
|
296
|
+
lower.startsWith('ondelete') || lower.startsWith('onupdate');
|
|
297
|
+
});
|
|
298
|
+
if (standardAttrs.length > 0) {
|
|
299
|
+
return `Ref: ${refDef}[${standardAttrs.join(', ')}]`;
|
|
300
|
+
}
|
|
301
|
+
else {
|
|
302
|
+
return `Ref: ${refDef}`;
|
|
303
|
+
}
|
|
304
|
+
});
|
|
305
|
+
cleaned = cleaned.replace(/Area\s+(["`]?)(\w+)\1\s*\[([^\]]+)\]/g, (_match, quote, areaName) => {
|
|
306
|
+
return `TableGroup ${quote}${areaName}${quote}`;
|
|
307
|
+
});
|
|
308
|
+
cleaned = cleaned.replace(/Area\s+(["`]?)(\w+)\1\s*\{/g, (_match, quote, areaName) => {
|
|
309
|
+
return `TableGroup ${quote}${areaName}${quote} {`;
|
|
310
|
+
});
|
|
311
|
+
return cleaned;
|
|
312
|
+
}
|
|
235
313
|
function parseTableAttributes(airDmlText) {
|
|
236
314
|
const result = new Map();
|
|
237
315
|
const tableRegex = /Table\s+(["`]?)(\w+)\1\s*\[([^\]]+)\]/g;
|
|
@@ -320,6 +398,26 @@ function parseAreaCommonColumns(airDmlText, areaName) {
|
|
|
320
398
|
}
|
|
321
399
|
return columns.length > 0 ? columns : undefined;
|
|
322
400
|
}
|
|
401
|
+
function parseAreaNote(airDmlText, areaName) {
|
|
402
|
+
const areaBlockRegex = new RegExp(`Area\\s+(["\`]?)${areaName}\\1\\s*(?:\\[[^\\]]*\\])?\\s*\\{([^}]*)\\}`, 's');
|
|
403
|
+
const areaMatch = areaBlockRegex.exec(airDmlText);
|
|
404
|
+
if (!areaMatch)
|
|
405
|
+
return undefined;
|
|
406
|
+
const areaContent = areaMatch[2];
|
|
407
|
+
const noteRegex = /Note:?\s*"([^"]*)"/;
|
|
408
|
+
const noteMatch = noteRegex.exec(areaContent);
|
|
409
|
+
return noteMatch ? noteMatch[1] : undefined;
|
|
410
|
+
}
|
|
411
|
+
function parseAreaDatabaseType(airDmlText, areaName) {
|
|
412
|
+
const areaBlockRegex = new RegExp(`Area\\s+(["\`]?)${areaName}\\1\\s*(?:\\[[^\\]]*\\])?\\s*\\{([^}]*)\\}`, 's');
|
|
413
|
+
const areaMatch = areaBlockRegex.exec(airDmlText);
|
|
414
|
+
if (!areaMatch)
|
|
415
|
+
return undefined;
|
|
416
|
+
const areaContent = areaMatch[2];
|
|
417
|
+
const databaseTypeRegex = /database_type:?\s*["']([^"']*)["']/;
|
|
418
|
+
const databaseTypeMatch = databaseTypeRegex.exec(areaContent);
|
|
419
|
+
return databaseTypeMatch ? databaseTypeMatch[1] : undefined;
|
|
420
|
+
}
|
|
323
421
|
function parseReferenceAttributes(airDmlText) {
|
|
324
422
|
const result = new Map();
|
|
325
423
|
const refRegex = /Ref\s*:\s*(["`]?)(\w+)\1\.(["`]?)(\w+)\3\s*[<>\-~]+\s*(["`]?)(\w+)\5\.(["`]?)(\w+)\7\s*\[([^\]]+)\]/g;
|
|
@@ -359,9 +457,12 @@ function parseAttributesString(attrsStr) {
|
|
|
359
457
|
const databaseTypeMatch = attrsStr.match(/database_type\s*:\s*"([^"]*)"/);
|
|
360
458
|
if (databaseTypeMatch)
|
|
361
459
|
attrs.database_type = databaseTypeMatch[1];
|
|
362
|
-
const
|
|
363
|
-
if (
|
|
364
|
-
attrs.
|
|
460
|
+
const labelHorizontalMatch = attrsStr.match(/label_horizontal\s*:\s*"([^"]*)"/);
|
|
461
|
+
if (labelHorizontalMatch)
|
|
462
|
+
attrs.label_horizontal = labelHorizontalMatch[1];
|
|
463
|
+
const labelVerticalMatch = attrsStr.match(/label_vertical\s*:\s*"([^"]*)"/);
|
|
464
|
+
if (labelVerticalMatch)
|
|
465
|
+
attrs.label_vertical = labelVerticalMatch[1];
|
|
365
466
|
const swapEdgeMatch = attrsStr.match(/swap_edge\s*:\s*(true|false)/);
|
|
366
467
|
if (swapEdgeMatch)
|
|
367
468
|
attrs.swap_edge = swapEdgeMatch[1] === 'true';
|
|
@@ -407,7 +508,7 @@ function mapDbmlRelationType(relType) {
|
|
|
407
508
|
if (relType === '<>' || relType === '><')
|
|
408
509
|
return 'many-to-many';
|
|
409
510
|
if (relType === '~')
|
|
410
|
-
return '
|
|
511
|
+
return 'ai-inferred';
|
|
411
512
|
return 'many-to-one';
|
|
412
513
|
}
|
|
413
514
|
function getRelationshipSymbol(relType) {
|
|
@@ -421,6 +522,8 @@ function getRelationshipSymbol(relType) {
|
|
|
421
522
|
return '><';
|
|
422
523
|
if (relType === 'any')
|
|
423
524
|
return '~';
|
|
525
|
+
if (relType === 'ai-inferred')
|
|
526
|
+
return '~';
|
|
424
527
|
return '<';
|
|
425
528
|
}
|
|
426
529
|
function escapeIdentifier(name) {
|
package/dist/parser/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -27,7 +27,7 @@ export interface Table {
|
|
|
27
27
|
note?: string;
|
|
28
28
|
}
|
|
29
29
|
export type Cardinality = '1' | 'n' | '0..1' | '1..n' | '0..n';
|
|
30
|
-
export type RelationshipType = 'one-to-one' | 'one-to-many' | 'many-to-one' | 'many-to-many' | 'any';
|
|
30
|
+
export type RelationshipType = 'one-to-one' | 'one-to-many' | 'many-to-one' | 'many-to-many' | 'any' | 'ai-inferred';
|
|
31
31
|
export interface Reference {
|
|
32
32
|
id: string;
|
|
33
33
|
fromTable: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,QAAQ;IACvB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAMD,MAAM,MAAM,QAAQ,GAChB,SAAS,GACT,QAAQ,GACR,UAAU,GACV,QAAQ,GACR,WAAW,GACX,SAAS,GACT,MAAM,GACN,MAAM,GACN,SAAS,GACT,MAAM,GACN,WAAW,GACX,aAAa,GACb,MAAM,GACN,MAAM,GACN,OAAO,GACP,MAAM,GACN,SAAS,GACT,SAAS,GACT,MAAM,GACN,kBAAkB,GAClB,OAAO,GACP,MAAM,CAAC;AAKX,MAAM,WAAW,MAAM;IAErB,IAAI,EAAE,MAAM,CAAC;IAGb,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,IAAI,EAAE,QAAQ,CAAC;IAGf,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,EAAE,CAAC,EAAE,OAAO,CAAC;IAGb,EAAE,CAAC,EAAE,OAAO,CAAC;IAGb,MAAM,CAAC,EAAE,OAAO,CAAC;IAGjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAGlB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,SAAS,CAAC,EAAE,OAAO,CAAC;IAGpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAKD,MAAM,WAAW,KAAK;IAEpB,EAAE,EAAE,MAAM,CAAC;IAGX,IAAI,EAAE,MAAM,CAAC;IAGb,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAGlB,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,GAAG,CAAC,EAAE,QAAQ,CAAC;IAGf,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAGnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAKD,MAAM,MAAM,WAAW,GAAG,GAAG,GAAG,GAAG,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAK/D,MAAM,MAAM,gBAAgB,GACxB,YAAY,GACZ,aAAa,GACb,aAAa,GACb,cAAc,GACd,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|