UNPKG

sicksync

Version:

Don’t accept the available as the preferable. Go extra mile with extra speed.

87 lines (67 loc) 2.31 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.startRemote = startRemote; var _lodash = require('lodash'); var _lodash2 = _interopRequireDefault(_lodash); var _fsHelper = require('./fs-helper'); var _wsServer = require('./ws-server'); var _text = require('../../conf/text'); var _text2 = _interopRequireDefault(_text); var _events = require('../../conf/events'); var _events2 = _interopRequireDefault(_events); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const fsEvents = _events2.default.FS.REMOTE; const wsEvents = _events2.default.WS.REMOTE; function startRemote(opts) { if (!_lodash2.default.isNumber(opts.port)) return console.info(_text2.default.REMOTE_MISSING_PORT); if (!_lodash2.default.isString(opts.secret)) return console.info(_text2.default.REMOTE_MISSING_SECRET); const log = _lodash2.default.partial(console.info.bind(console), opts.secret); const receivedLog = _lodash2.default.partial(log, '<'); const errorLog = _lodash2.default.partial(log, 'ERR'); const wss = new _wsServer.WSServer({ port: opts.port, secret: opts.secret, debug: opts.debug, encrypt: opts.encrypt }); const fsHelper = new _fsHelper.FSHelper(); // WS events wss.on(wsEvents.UNAUTHORIZED, () => { log(_text2.default.SERVER_ON_UNAUTHORIZED); process.exit(); }); wss.on(wsEvents.CONNECTION_CLOSED, () => { log(_text2.default.SERVER_ON_CONNECTION_CLOSED); process.exit(); }); wss.on(wsEvents.FILE_CHANGE, message => { switch (message.changeType) { case 'add': fsHelper.addFile(message); break; case 'addDir': fsHelper.addDir(message); break; case 'change': fsHelper.addFile(message); break; case 'unlink': fsHelper.removePath(message); break; case 'unlinkDir': fsHelper.removePath(message); break; default: break; } }); // FS Events fsHelper.on(fsEvents.ADD_FILE, receivedLog); fsHelper.on(fsEvents.ADD_DIR, receivedLog); fsHelper.on(fsEvents.DELETE, receivedLog); fsHelper.on(fsEvents.ADD_FILE_ERROR, errorLog); fsHelper.on(fsEvents.ADD_DIR_ERROR, errorLog); fsHelper.on(fsEvents.DELETE_ERROR, errorLog); }