@agatee/cli
Version:
CLI for Agatee App
43 lines (42 loc) • 2.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.addSocket = void 0;
var fs_1 = require("fs");
var process_1 = require("process");
var generales_1 = require("../../../generales");
var console_1 = require("../../../utils/console");
var envparser_1 = require("../../../utils/envparser");
var workers_1 = require("../../../utils/workers");
var main_socket_starter_1 = require("./starter-code/main-socket.starter");
var addSocket = function (params) {
var _a;
checkSocketError(params);
var config = {};
var workingDirectory = (0, process_1.cwd)();
if ((0, fs_1.existsSync)(generales_1.dotenvPath)) {
config = (0, envparser_1.parseEnv)((0, fs_1.readFileSync)(generales_1.dotenvPath).toString());
}
config.SOCKET_PORT = ((_a = (params.additionalParams['port'] || params.additionalParams['p'])) === null || _a === void 0 ? void 0 : _a.values[0]) || 3001;
console.log('Install dependencies ');
(0, workers_1.runSpawnWorker)("npm", ['install', '--save', 'socket.io', '@agatee/socket', '--prefix', workingDirectory, workingDirectory], {
onExit: function () {
var mainSocketContent = (0, main_socket_starter_1.mainSocketStarterCodeContent)(params);
(0, console_1.logSuccess)("[\u2714] Installation done");
console.log('Setting up socket ...');
(0, fs_1.mkdirSync)('./app/modules/socket', { recursive: true });
(0, fs_1.writeFileSync)('./app/modules/socket/main.socket.ts', mainSocketContent);
(0, fs_1.writeFileSync)(generales_1.dotenvPath, (0, envparser_1.objToEnv)(config));
(0, console_1.logSuccess)("Adding socket done !");
}
});
};
exports.addSocket = addSocket;
var checkSocketError = function (params) {
var config = {};
if ((0, fs_1.existsSync)(generales_1.dotenvPath)) {
config = (0, envparser_1.parseEnv)((0, fs_1.readFileSync)(generales_1.dotenvPath).toString());
}
if (config.SOCKET_PORT) {
throw new Error('Socket already added');
}
};