diff --git a/forward_engineering/config.json b/forward_engineering/config.json index a927b2e..1b54200 100644 --- a/forward_engineering/config.json +++ b/forward_engineering/config.json @@ -27,6 +27,7 @@ "name": "JSON Schema", "keyword": "json", "disableApplyScriptToInstance": true, + "disableFeLevelSelector": true, "fileExtensions": [ { "label": "JSON", diff --git a/forward_engineering/ddlProvider.js b/forward_engineering/ddlProvider.js index f7427b2..3207573 100644 --- a/forward_engineering/ddlProvider.js +++ b/forward_engineering/ddlProvider.js @@ -31,6 +31,23 @@ module.exports = (baseProvider, options, app) => { const { joinActivatedAndDeactivatedStatements } = require('./utils/statementJoiner'); + const hydrateSchema = (containerData, data) => { + const modelData = data?.modelData; + + return { + databaseName: containerData.name, + friendlyName: containerData.businessName, + description: containerData.description, + isActivated: containerData.isActivated, + ifNotExist: containerData.ifNotExist, + projectId: modelData?.[0]?.projectID, + defaultExpiration: containerData.enableTableExpiration ? containerData.defaultExpiration : '', + customerEncryptionKey: + containerData.encryption === 'Customer-managed' ? containerData.customerEncryptionKey : '', + labels: Array.isArray(containerData.labels) ? containerData.labels : [], + }; + }; + return { createSchema({ databaseName, @@ -305,22 +322,9 @@ module.exports = (baseProvider, options, app) => { }; }, - hydrateSchema(containerData, data) { - const modelData = data?.modelData; - - return { - databaseName: containerData.name, - friendlyName: containerData.businessName, - description: containerData.description, - isActivated: containerData.isActivated, - ifNotExist: containerData.ifNotExist, - projectId: modelData?.[0]?.projectID, - defaultExpiration: containerData.enableTableExpiration ? containerData.defaultExpiration : '', - customerEncryptionKey: - containerData.encryption === 'Customer-managed' ? containerData.customerEncryptionKey : '', - labels: Array.isArray(containerData.labels) ? containerData.labels : [], - }; - }, + hydrateSchema, + // Keep it because it was used to hydrate `dbData` for the API + hydrateDatabase: hydrateSchema, hydrateTable({ tableData, entityData, jsonSchema }) { const data = entityData[0];