From 60ecf601b65a10f5fdff781eebfaec51294978ad Mon Sep 17 00:00:00 2001 From: Timotej Ecimovic <timotej.ecimovic@silabs.com> Date: Sat, 13 Jun 2020 11:33:08 -0400 Subject: [PATCH] Start working on a standalone node.js regen. Opens a can of works with the whole ES6 vs ES5 mess. --- package.json | 1 + sdk-regen.js | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 sdk-regen.js diff --git a/package.json b/package.json index c61f4ffe..57621667 100644 --- a/package.json +++ b/package.json @@ -2,6 +2,7 @@ "name": "zap", "version": "0.99.1", "description": "Configuration tool for the Zigbee Cluster Library", + "type": "module", "productName": "zap", "cordovaId": "", "capacitorId": "", diff --git a/sdk-regen.js b/sdk-regen.js new file mode 100644 index 00000000..786b5c13 --- /dev/null +++ b/sdk-regen.js @@ -0,0 +1,37 @@ +import path from 'path' +import fs from 'fs' +import { + closeDatabase, + initDatabase, + loadSchema, +} from './src-electron/db/db-api.js' +import { + schemaFile, + sqliteTestFile, + appDirectory, + setDevelopmentEnv, +} from './src-electron/util/env.js' +import { runSdkGeneration } from './src-electron/sdk-gen/sdk-gen.js' +import { loadZcl } from './src-electron/zcl/zcl-loader.js' +import { zclPropertiesFile } from './src-electron/main-process/args.js' + +setDevelopmentEnv() +var file = sqliteTestFile(42) +var db + +initDatabase(file) + .then((d) => loadSchema(d, schemaFile(), '0.99.0')) + .then((d) => loadZcl(d, zclPropertiesFile)) + .then((d) => { + db = d + return runSdkGeneration({ + db: db, + generationDir: path.join(appDirectory(), 'sdk-gen'), + templateDir: '', + dontWrite: false, + }) + }) + .then(() => closeDatabase(db)) + .then(() => { + if (fs.existsSync(file)) fs.unlinkSync(file) + }) -- GitLab