0.1.0 • Published 5 months ago

@fict/semantic-model v0.1.0

Weekly downloads
-
License
MIT
Repository
github
Last release
5 months ago

How to use @fict/semantic-model

Below is an example usage:

const fs = require("fs");
const os = require("os");
const path = require("path");
const { init, Generator } = require("@fict/semantic-model");

function test() {
  const ctoModelStr = fs.readFileSync(path.resolve(__dirname, "product.cto"), "utf8");
  
  const gen = new Generator();
  gen.addCTOModel(ctoModelStr, "product.cto", true); // add more models if needed

  const opts = { destFolder: os.tmpdir(), forceOverwrite: false };
  return Promise.all([
    gen.generateJSFiles(opts),    // generate JS files
    gen.generateMermaidFile(opts), // generate mermaid diagram
    gen.generateJSONSchema(), // generates JSONSchema string
  ]);
}

init().then(test).catch(console.error);

To specify a custom logger, see the example code in the test folder.