UNPKG

create-tezos-smart-contract

Version:

Node.js toolset to write, test and deploy Tezos smart contracts

30 lines (29 loc) 1.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ConfigFile = void 0; const ligo_1 = require("../ligo"); const parameters_1 = require("../ligo/parameters"); const defaults_1 = require("./defaults"); class ConfigFile { constructor(config = defaults_1.defaultConfig) { this.config = config; } static getName() { return "config.json"; } validate() { try { (0, parameters_1.toLigoVersion)(this.config.ligoVersion); } catch (err) { if (err instanceof TypeError) { throw new Error(`Invalid LIGO compiler version (ligoVersion: "${this.config.ligoVersion}"). LIGO version has to be a valid SemVer version or "next".`); } } const validLigoFlavors = Object.values(ligo_1.LIGOFlavors); if (!validLigoFlavors.includes(this.config.preferredLigoFlavor)) { throw new Error("Invalid preferred LIGO flavor (preferredLigoFlavor). Valid values are " + validLigoFlavors.join(", ")); } } } exports.ConfigFile = ConfigFile;