V2 monorepo (#285)

* refactor(project structure): UI

* refactor(project structure): extract utilities

* refactor(project structure): remove unused

* refactor(project structure): electron

* refactor(project structure): server

refactor: migrate to vitest

refactor: monorepo config

* refactor: extract application menu

* refactor: exit process

* refactor: extract tray menu

* chore: electron build

* Added Seconds in studio clock #282
---------

Co-authored-by: Fabian Posenau <fabian@fphome.de>

---------

Co-authored-by: Fabian Posenau <fabian.p99@gmx.de>
Co-authored-by: Fabian Posenau <fabian@fphome.de>
This commit is contained in:
Carlos Valente
2023-02-14 22:02:15 +01:00
committed by GitHub
parent 3918758d32
commit de9a7a87fd
439 changed files with 11381 additions and 14294 deletions
+12
View File
@@ -0,0 +1,12 @@
import express from 'express';
export const router = express.Router();
// import event controller
import { getEvent, postEvent } from '../controllers/eventController.js';
import { eventSanitizer } from '../controllers/eventController.validate.js';
// create route between controller and 'GET /event' endpoint
router.get('/', getEvent);
// create route between controller and 'POST /event' endpoint
router.post('/', eventSanitizer, postEvent);
+74
View File
@@ -0,0 +1,74 @@
import express from 'express';
import { uploadFile } from '../utils/upload.js';
import {
dbDownload,
dbPathToUpload,
dbUpload,
getAliases,
getInfo,
getOSC,
getSettings,
getUserFields,
getViewSettings,
poll,
postAliases,
postOSC,
postSettings,
postUserFields,
postViewSettings,
} from '../controllers/ontimeController.js';
import {
viewValidator,
validateAliases,
validateUserFields,
validateSettings,
validateOSC,
} from '../controllers/ontimeController.validate.js';
export const router = express.Router();
// create route between controller and '/ontime/sync' endpoint
router.get('/poll', poll);
// create route between controller and '/ontime/db' endpoint
router.get('/db', dbDownload);
// create route between controller and '/ontime/db' endpoint
router.post('/db', uploadFile, dbUpload);
// create route between controller and '/ontime/settings' endpoint
router.get('/settings', getSettings);
// create route between controller and '/ontime/settings' endpoint
router.post('/settings', validateSettings, postSettings);
// create route between controller and '/ontime/views' endpoint
router.get('/views', getViewSettings);
// create route between controller and '/ontime/views' endpoint
router.post('/views', viewValidator, postViewSettings);
// create route between controller and '/ontime/aliases' endpoint
router.get('/aliases', getAliases);
// create route between controller and '/ontime/aliases' endpoint
router.post('/aliases', validateAliases, postAliases);
// create route between controller and '/ontime/aliases' endpoint
router.get('/userfields', getUserFields);
// create route between controller and '/ontime/aliases' endpoint
router.post('/userfields', validateUserFields, postUserFields);
// create route between controller and '/ontime/info' endpoint
router.get('/info', getInfo);
// create route between controller and '/ontime/osc' endpoint
router.get('/osc', getOSC);
// create route between controller and '/ontime/osc' endpoint
router.post('/osc', validateOSC, postOSC);
// create route between controller and '/ontime/dbpath' endpoint
router.post('/dbpath', dbPathToUpload);
+48
View File
@@ -0,0 +1,48 @@
import express from 'express';
// import playback controllers
import {
pbGet,
pbLoad,
pbNext,
pbPause,
pbPrevious,
pbReload,
pbRoll,
pbStart,
pbStop,
pbUnload,
} from '../controllers/playbackController.js';
export const router = express.Router();
// create route between controller and '/playback/' endpoint
router.get('/', pbGet);
// create route between controller and '/playback/start' endpoint
router.post('/start', pbStart);
// create route between controller and '/playback/pause' endpoint
router.post('/pause', pbPause);
// create route between controller and '/playback/stop' endpoint
router.post('/stop', pbStop);
// create route between controller and '/playback/roll' endpoint
router.post('/roll', pbRoll);
// create route between controller and '/playback/previous' endpoint
router.post('/previous', pbPrevious);
// create route between controller and '/playback/next' endpoint
router.post('/next', pbNext);
// create route between controller and '/playback/load' endpoint
router.post('/load', pbLoad);
// create route between controller and '/playback/unload' endpoint
router.post('/unload', pbUnload);
// create route between controller and '/playback/reload' endpoint
router.post('/reload', pbReload);
// router.post('*', (req, res) => res.return(404))
+43
View File
@@ -0,0 +1,43 @@
import express from 'express';
import {
deleteEventById,
getEventById,
rundownApplyDelay,
rundownDelete,
rundownGetAll,
rundownPost,
rundownPut,
rundownReorder,
} from '../controllers/rundownController.js';
import {
paramsMustHaveEventId,
rundownPostValidator,
rundownPutValidator,
rundownReorderValidator,
} from '../controllers/rundownController.validate.js';
export const router = express.Router();
// create route between controller and '/eventlist/' endpoint
router.get('/', rundownGetAll);
// create route between controller and '/eventlist/:eventId' endpoint
router.get('/:eventId', paramsMustHaveEventId, getEventById);
// create route between controller and '/eventlist/' endpoint
router.post('/', rundownPostValidator, rundownPost);
// create route between controller and '/eventlist/' endpoint
router.put('/', rundownPutValidator, rundownPut);
// create route between controller and '/eventlist/reorder' endpoint
router.patch('/reorder/', rundownReorderValidator, rundownReorder);
// create route between controller and '/eventlist/applydelay/:eventId' endpoint
router.patch('/applydelay/:eventId', paramsMustHaveEventId, rundownApplyDelay);
// create route between controller and '/eventlist/all' endpoint
router.delete('/all', rundownDelete);
// create route between controller and '/eventlist/:eventId' endpoint
router.delete('/:eventId', paramsMustHaveEventId, deleteEventById);