UNPKG

@pedily/extension-scripts

Version:

Utility that helps creating Extensions for the Cognigy.AI platform

37 lines (36 loc) 1.52 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createPackage = void 0; const archiver_1 = __importDefault(require("archiver")); const fs_1 = require("fs"); const path_1 = require("path"); const addIcon_1 = require("./addIcon"); const addReadme_1 = require("./addReadme"); const getExtensionFileName_1 = require("./getExtensionFileName"); const getPackageJSON_1 = require("./getPackageJSON"); const addSource_1 = require("./addSource"); const addPackageJSON_1 = require("./addPackageJSON"); const createPackage = async (directory) => { const packageJSON = await (0, getPackageJSON_1.getPackageJSON)(directory); const packageName = (0, getExtensionFileName_1.getExtensionFileName)(packageJSON); const archive = (0, archiver_1.default)("tar", { zlib: { level: 9, }, }); await (0, addPackageJSON_1.addPackageJSON)(archive); await (0, addReadme_1.addReadme)(archive, directory); await (0, addIcon_1.addIcon)(archive, directory); await (0, addSource_1.addSource)(archive, directory); const ws = (0, fs_1.createWriteStream)((0, path_1.join)(directory, packageName)); return new Promise((resolve, reject) => { archive.on("error", reject); ws.on("close", resolve); archive.pipe(ws); archive.finalize(); }); }; exports.createPackage = createPackage;