@balena/abstract-sql-to-typescript
Advanced tools
Comparing version 3.0.2 to 3.1.0-build-odata-to-ts-interface-877a7987da8cdbaf1f1bfaa4ddd1eff0792692ff-1
@@ -7,2 +7,6 @@ # Change Log | ||
## 3.1.0 - 2024-05-28 | ||
* Add a default export which maps OData names to typescript interfaces [Pagan Gazzard] | ||
## 3.0.2 - 2024-05-09 | ||
@@ -9,0 +13,0 @@ |
@@ -103,2 +103,12 @@ "use strict"; | ||
.join('\n\n')} | ||
export default interface $Model { | ||
${Object.keys(m.tables) | ||
.map((tableName) => ` ${(0, odata_to_abstract_sql_1.sqlNameToODataName)(tableName)}: ${modelNameToCamelCaseName(m.tables[tableName].name)};`) | ||
.join('\n')} | ||
${Object.keys(m.synonyms).length > 0 ? ' // Synonyms' : ''} | ||
${Object.keys(m.synonyms) | ||
.map((synonym) => ` ${(0, odata_to_abstract_sql_1.sqlNameToODataName)(synonym)}: ${modelNameToCamelCaseName(m.tables[m.synonyms[synonym]].name)};`) | ||
.join('\n')} | ||
} | ||
`; | ||
@@ -105,0 +115,0 @@ }; |
{ | ||
"name": "@balena/abstract-sql-to-typescript", | ||
"version": "3.0.2", | ||
"version": "3.1.0-build-odata-to-ts-interface-877a7987da8cdbaf1f1bfaa4ddd1eff0792692ff-1", | ||
"description": "A translator for abstract sql into typescript types.", | ||
@@ -53,4 +53,4 @@ "main": "out/index.js", | ||
"versionist": { | ||
"publishedAt": "2024-05-09T18:58:22.046Z" | ||
"publishedAt": "2024-05-28T15:15:56.246Z" | ||
} | ||
} |
@@ -191,3 +191,19 @@ import type { | ||
.join('\n\n')} | ||
export default interface $Model { | ||
${Object.keys(m.tables) | ||
.map( | ||
(tableName) => | ||
` ${sqlNameToODataName(tableName)}: ${modelNameToCamelCaseName(m.tables[tableName].name)};`, | ||
) | ||
.join('\n')} | ||
${Object.keys(m.synonyms).length > 0 ? ' // Synonyms' : ''} | ||
${Object.keys(m.synonyms) | ||
.map( | ||
(synonym) => | ||
` ${sqlNameToODataName(synonym)}: ${modelNameToCamelCaseName(m.tables[m.synonyms[synonym]].name)};`, | ||
) | ||
.join('\n')} | ||
} | ||
`; | ||
}; |
@@ -31,4 +31,14 @@ import type { AbstractSqlModel } from '@balena/abstract-sql-compiler'; | ||
test('no types for an empty model', {}, ''); | ||
test( | ||
'no types for an empty model', | ||
{}, | ||
` | ||
export default interface $Model { | ||
}`, | ||
); | ||
const testTable: Partial<AbstractSqlModel> = { | ||
@@ -351,3 +361,12 @@ tables: { | ||
} | ||
export default interface $Model { | ||
parent: Parent; | ||
other: Other; | ||
test: Test; | ||
test__has__tag_key: TestTag; | ||
// Synonyms | ||
test_tag: TestTag; | ||
} | ||
`, | ||
); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
203587
748
2