Added Prettier (#4)

This commit is contained in:
Lipis 2020-03-09 23:22:23 +02:00 committed by GitHub
parent 3fc9c404d4
commit d200a52c34
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 918 additions and 31 deletions

1
.prettierrc Normal file
View File

@ -0,0 +1 @@
{}

View File

@ -1,14 +1,14 @@
// source: https://github.com/idlewinn/collab-server/blob/master/src/index.ts // source: https://github.com/idlewinn/collab-server/blob/master/src/index.ts
import express from 'express'; import express from "express";
import http from 'http'; import http from "http";
import socketIO from 'socket.io'; import socketIO from "socket.io";
const app = express(); const app = express();
const port = process.env.PORT || 8080; const port = process.env.PORT || 8080;
app.get('/', (req, res) => { app.get("/", (req, res) => {
res.send('Hi, collab!'); res.send("Hi, collab!");
}); });
const server = http.createServer(app); const server = http.createServer(app);
@ -20,48 +20,51 @@ server.listen(port, () => {
const io = socketIO(server, { const io = socketIO(server, {
handlePreflightRequest: function(req, res) { handlePreflightRequest: function(req, res) {
var headers = { var headers = {
'Access-Control-Allow-Headers': 'Content-Type, Authorization', "Access-Control-Allow-Headers": "Content-Type, Authorization",
'Access-Control-Allow-Origin': req.header ? req.header.origin : '*', "Access-Control-Allow-Origin": req.header ? req.header.origin : "*",
'Access-Control-Allow-Credentials': true, "Access-Control-Allow-Credentials": true
}; };
res.writeHead(200, headers); res.writeHead(200, headers);
res.end(); res.end();
}, }
}); });
io.on('connection', socket => { io.on("connection", socket => {
console.log('connection established!'); console.log("connection established!");
io.to(`${socket.id}`).emit('init-room'); io.to(`${socket.id}`).emit("init-room");
socket.on('join-room', roomID => { socket.on("join-room", roomID => {
console.log(`${socket.id} has joined ${roomID}`); console.log(`${socket.id} has joined ${roomID}`);
socket.join(roomID); socket.join(roomID);
if (io.sockets.adapter.rooms[roomID].length <= 1) { if (io.sockets.adapter.rooms[roomID].length <= 1) {
io.to(`${socket.id}`).emit('first-in-room'); io.to(`${socket.id}`).emit("first-in-room");
} else { } else {
socket.broadcast.to(roomID).emit('new-user', socket.id); socket.broadcast.to(roomID).emit("new-user", socket.id);
} }
io.in(roomID).emit( io.in(roomID).emit(
'room-user-count', "room-user-count",
io.sockets.adapter.rooms[roomID].length, io.sockets.adapter.rooms[roomID].length
); );
}); });
socket.on('server-broadcast', (roomID: string, encryptedData: ArrayBuffer, iv: Uint8Array) => { socket.on(
console.log(`${socket.id} sends update to ${roomID}`); "server-broadcast",
socket.broadcast.to(roomID).emit('client-broadcast', encryptedData, iv); (roomID: string, encryptedData: ArrayBuffer, iv: Uint8Array) => {
}); console.log(`${socket.id} sends update to ${roomID}`);
socket.broadcast.to(roomID).emit("client-broadcast", encryptedData, iv);
}
);
socket.on('disconnecting', () => { socket.on("disconnecting", () => {
const rooms = io.sockets.adapter.rooms; const rooms = io.sockets.adapter.rooms;
for (const roomID in socket.rooms) { for (const roomID in socket.rooms) {
const remaining = rooms[roomID].length - 1; const remaining = rooms[roomID].length - 1;
if (remaining > 0) { if (remaining > 0) {
socket.broadcast.to(roomID).emit('room-user-count', remaining); socket.broadcast.to(roomID).emit("room-user-count", remaining);
} }
} }
}); });
socket.on('disconnect', () => { socket.on("disconnect", () => {
socket.removeAllListeners(); socket.removeAllListeners();
}); });
}); });

View File

@ -7,19 +7,37 @@
"socket.io": "2.3.0", "socket.io": "2.3.0",
"typescript": "3.8.3" "typescript": "3.8.3"
}, },
"devDependencies": {
"husky": "4.2.3",
"lint-staged": "10.0.8",
"prettier": "1.19.1"
},
"engines": { "engines": {
"node": "10.x.x" "node": "10.x.x"
}, },
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"license": "MIT", "license": "MIT",
"lint-staged": {
"*.{ts,md,json,yaml,yml}": [
"prettier --write"
]
},
"main": "index.js", "main": "index.js",
"name": "excalidraw-room", "name": "excalidraw-room",
"scripts": { "scripts": {
"build": "yarn gcp-build", "build": "yarn gcp-build",
"deploy": "gcloud app deploy --project=excalidraw-room", "deploy": "gcloud app deploy --project=excalidraw-room",
"fix": "yarn prettier --write",
"gcp-build": "tsc -p .", "gcp-build": "tsc -p .",
"prepare": "yarn gcp-build", "prepare": "yarn gcp-build",
"pretest": "yarn gcp-build", "pretest": "yarn gcp-build",
"start": "node ./index.js" "prettier": "prettier \"**/*.{ts,md,json,yaml,yml}\"",
"start": "node ./index.js",
"test": "yarn prettier --list-different"
}, },
"version": "1.0.0" "version": "1.0.0"
} }

877
yarn.lock

File diff suppressed because it is too large Load Diff