Skip to content

Commit

Permalink
chore: server: cloudcmd: lint
Browse files Browse the repository at this point in the history
  • Loading branch information
coderaiser committed Mar 21, 2024
1 parent 0655988 commit 564de89
Showing 1 changed file with 51 additions and 53 deletions.
104 changes: 51 additions & 53 deletions server/cloudcmd.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,27 +2,10 @@

const fullstore = require('fullstore');
const process = require('node:process');
const DIR = `${__dirname}/`;
const DIR_COMMON = `${DIR}../common/`;
const path = require('node:path');

const fs = require('node:fs');
const cloudfunc = require(`${DIR_COMMON}cloudfunc`);

const authentication = require(`${DIR}auth`);
const {createConfig, configPath} = require(`${DIR}config`);

const modulas = require(`${DIR}modulas`);

const userMenu = require(`${DIR}user-menu`);
const rest = require(`${DIR}rest`);
const route = require(`${DIR}route`);
const validate = require(`${DIR}validate`);
const prefixer = require(`${DIR}prefixer`);
const terminal = require(`${DIR}terminal`);
const distribute = require(`${DIR}distribute`);
const currify = require('currify');

const apart = require('apart');
const ponse = require('ponse');
const restafary = require('restafary');
Expand All @@ -33,8 +16,23 @@ const dword = require('dword');
const deepword = require('deepword');
const nomine = require('nomine');
const fileop = require('@cloudcmd/fileop');
const DIR_ROOT = `${DIR}../`;

const cloudfunc = require('../common/cloudfunc');

const authentication = require('./auth');
const {createConfig, configPath} = require(`./config`);

const modulas = require(`./modulas`);

const userMenu = require(`./user-menu`);
const rest = require(`./rest`);
const route = require(`./route`);
const validate = require(`./validate`);
const prefixer = require(`./prefixer`);
const terminal = require(`./terminal`);
const distribute = require(`./distribute`);
const DIR_ROOT = `../`;
const DIR = `${__dirname}/`;
const getDist = (isDev) => isDev ? 'dist-dev' : 'dist';

const isDev = fullstore(process.env.NODE_ENV === 'development');
Expand All @@ -55,38 +53,37 @@ module.exports = (params) => {
const config = p.configManager || createConfig({
configPath,
});

const {modules} = p;

const keys = Object.keys(options);

for (const name of keys) {
let value = options[name];

if (/root/.test(name))
validate.root(value, config);

if (/editor|packer|columns/.test(name))
validate[name](value);

if (/prefix/.test(name))
value = prefixer(value);

config(name, value);
}

config('console', defaultValue(config, 'console', options));
config('configDialog', defaultValue(config, 'configDialog', options));

const prefixSocket = prefixer(options.prefixSocket);

if (p.socket)
listen({
prefixSocket,
config,
socket: p.socket,
});

return cloudcmd({
modules,
config,
Expand All @@ -101,78 +98,78 @@ module.exports._getIndexPath = getIndexPath;
function defaultValue(config, name, options) {
const value = options[name];
const previous = config(name);

if (isUndefined(value))
return previous;

return value;
}

module.exports._getPrefix = getPrefix;
function getPrefix(prefix) {
if (isFn(prefix))
return prefix() || '';

return prefix || '';
}

module.exports._initAuth = _initAuth;
function _initAuth(config, accept, reject, username, password) {
if (!config('auth'))
return accept();

const isName = username === config('username');
const isPass = password === config('password');

if (isName && isPass)
return accept();

reject();
}

function listen({prefixSocket, socket, config}) {
const root = apart(config, 'root');
const auth = initAuth(config);

prefixSocket = getPrefix(prefixSocket);
config.listen(socket, auth);

edward.listen(socket, {
root,
auth,
prefixSocket: `${prefixSocket}/edward`,
});

dword.listen(socket, {
root,
auth,
prefixSocket: `${prefixSocket}/dword`,
});

deepword.listen(socket, {
root,
auth,
prefixSocket: `${prefixSocket}/deepword`,
});

config('console') && konsole.listen(socket, {
auth,
prefixSocket: `${prefixSocket}/console`,
});

fileop.listen(socket, {
root,
auth,
prefix: `${prefixSocket}/fileop`,
});

config('terminal') && terminal(config).listen(socket, {
auth,
prefix: `${prefixSocket}/gritty`,
command: config('terminalCommand'),
autoRestart: config('terminalAutoRestart'),
});

distribute.export(config, socket);
}

Expand All @@ -182,15 +179,15 @@ function cloudcmd({modules, config}) {
const diff = apart(config, 'diff');
const zip = apart(config, 'zip');
const root = apart(config, 'root');

const ponseStatic = ponse.static({
cache,
root: DIR_ROOT,
});

const dropbox = config('dropbox');
const dropboxToken = config('dropboxToken');

const funcs = clean([
config('console') && konsole({
online,
Expand Down Expand Up @@ -246,14 +243,14 @@ function cloudcmd({modules, config}) {
}),
ponseStatic,
]);

return funcs;
}

function logout(req, res, next) {
if (req.url !== '/logout')
return next();

res.sendStatus(401);
}

Expand All @@ -262,25 +259,26 @@ module.exports._replaceDist = replaceDist;
function replaceDist(url) {
if (!isDev())
return url;

return url.replace(/^\/dist\//, '/dist-dev/');
}

function setUrl(req, res, next) {
if (/^\/cloudcmd\.js(\.map)?$/.test(req.url))
req.url = `/dist${req.url}`;

req.url = replaceDist(req.url);

next();
}

function setSW(req, res, next) {
const {url} = req;
const isSW = /^\/sw\.js(\.map)?$/.test(url);

if (isSW)
req.url = replaceDist(`/dist${url}`);

next();
}

0 comments on commit 564de89

Please sign in to comment.