Added Prettier (#4)
This commit is contained in:
parent
3fc9c404d4
commit
d200a52c34
1
.prettierrc
Normal file
1
.prettierrc
Normal file
@ -0,0 +1 @@
|
||||
{}
|
51
index.ts
51
index.ts
@ -1,14 +1,14 @@
|
||||
// source: https://github.com/idlewinn/collab-server/blob/master/src/index.ts
|
||||
|
||||
import express from 'express';
|
||||
import http from 'http';
|
||||
import socketIO from 'socket.io';
|
||||
import express from "express";
|
||||
import http from "http";
|
||||
import socketIO from "socket.io";
|
||||
|
||||
const app = express();
|
||||
const port = process.env.PORT || 8080;
|
||||
|
||||
app.get('/', (req, res) => {
|
||||
res.send('Hi, collab!');
|
||||
app.get("/", (req, res) => {
|
||||
res.send("Hi, collab!");
|
||||
});
|
||||
|
||||
const server = http.createServer(app);
|
||||
@ -20,48 +20,51 @@ server.listen(port, () => {
|
||||
const io = socketIO(server, {
|
||||
handlePreflightRequest: function(req, res) {
|
||||
var headers = {
|
||||
'Access-Control-Allow-Headers': 'Content-Type, Authorization',
|
||||
'Access-Control-Allow-Origin': req.header ? req.header.origin : '*',
|
||||
'Access-Control-Allow-Credentials': true,
|
||||
"Access-Control-Allow-Headers": "Content-Type, Authorization",
|
||||
"Access-Control-Allow-Origin": req.header ? req.header.origin : "*",
|
||||
"Access-Control-Allow-Credentials": true
|
||||
};
|
||||
res.writeHead(200, headers);
|
||||
res.end();
|
||||
},
|
||||
}
|
||||
});
|
||||
|
||||
io.on('connection', socket => {
|
||||
console.log('connection established!');
|
||||
io.to(`${socket.id}`).emit('init-room');
|
||||
socket.on('join-room', roomID => {
|
||||
io.on("connection", socket => {
|
||||
console.log("connection established!");
|
||||
io.to(`${socket.id}`).emit("init-room");
|
||||
socket.on("join-room", roomID => {
|
||||
console.log(`${socket.id} has joined ${roomID}`);
|
||||
socket.join(roomID);
|
||||
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 {
|
||||
socket.broadcast.to(roomID).emit('new-user', socket.id);
|
||||
socket.broadcast.to(roomID).emit("new-user", socket.id);
|
||||
}
|
||||
io.in(roomID).emit(
|
||||
'room-user-count',
|
||||
io.sockets.adapter.rooms[roomID].length,
|
||||
"room-user-count",
|
||||
io.sockets.adapter.rooms[roomID].length
|
||||
);
|
||||
});
|
||||
|
||||
socket.on('server-broadcast', (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(
|
||||
"server-broadcast",
|
||||
(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;
|
||||
for (const roomID in socket.rooms) {
|
||||
const remaining = rooms[roomID].length - 1;
|
||||
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();
|
||||
});
|
||||
});
|
||||
|
20
package.json
20
package.json
@ -7,19 +7,37 @@
|
||||
"socket.io": "2.3.0",
|
||||
"typescript": "3.8.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"husky": "4.2.3",
|
||||
"lint-staged": "10.0.8",
|
||||
"prettier": "1.19.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": "10.x.x"
|
||||
},
|
||||
"husky": {
|
||||
"hooks": {
|
||||
"pre-commit": "lint-staged"
|
||||
}
|
||||
},
|
||||
"license": "MIT",
|
||||
"lint-staged": {
|
||||
"*.{ts,md,json,yaml,yml}": [
|
||||
"prettier --write"
|
||||
]
|
||||
},
|
||||
"main": "index.js",
|
||||
"name": "excalidraw-room",
|
||||
"scripts": {
|
||||
"build": "yarn gcp-build",
|
||||
"deploy": "gcloud app deploy --project=excalidraw-room",
|
||||
"fix": "yarn prettier --write",
|
||||
"gcp-build": "tsc -p .",
|
||||
"prepare": "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"
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user