aboutsummaryrefslogtreecommitdiffstats
path: root/backend/dist/config
diff options
context:
space:
mode:
Diffstat (limited to 'backend/dist/config')
-rw-r--r--backend/dist/config/session-store.js59
-rw-r--r--backend/dist/config/session-store.js.map1
2 files changed, 60 insertions, 0 deletions
diff --git a/backend/dist/config/session-store.js b/backend/dist/config/session-store.js
new file mode 100644
index 0000000..e40e6f6
--- /dev/null
+++ b/backend/dist/config/session-store.js
@@ -0,0 +1,59 @@
+const sessions = {};
+function makeid(length) {
+ let result = '';
+ const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
+ const charactersLength = characters.length;
+ let counter = 0;
+ while (counter < length) {
+ result += characters.charAt(Math.floor(Math.random() * charactersLength));
+ counter += 1;
+ }
+ return result;
+}
+export const createNewSession = () => {
+ const id = makeid(10);
+ const session = {
+ id,
+ state: "waiting",
+ host: undefined,
+ clients: [],
+ };
+ sessions[id] = session;
+ return session;
+};
+export const setSessionState = (id, state) => {
+ if (!sessions[id]) {
+ return;
+ }
+ sessions[id].state = state;
+};
+export const setSessionHost = (id, clientId) => {
+ if (!sessions[id]) {
+ return;
+ }
+ sessions[id].host = clientId;
+};
+export const addSessionClient = (id, clientId) => {
+ var _a;
+ if (!sessions[id]) {
+ return;
+ }
+ (_a = sessions[id]) === null || _a === void 0 ? void 0 : _a.clients.push(clientId);
+};
+export const cleanupSession = (id) => {
+ if (!sessions[id]) {
+ return;
+ }
+ // if (sessions[id].host) {
+ // sessions[id].host!.close();
+ // }
+ //
+ // sessions[id].clients.forEach((client) => {
+ // client.close();
+ // });
+ delete sessions[id];
+};
+export const getSession = (id) => {
+ return sessions[id];
+};
+//# sourceMappingURL=session-store.js.map \ No newline at end of file
diff --git a/backend/dist/config/session-store.js.map b/backend/dist/config/session-store.js.map
new file mode 100644
index 0000000..e119299
--- /dev/null
+++ b/backend/dist/config/session-store.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"session-store.js","sourceRoot":"","sources":["../../src/config/session-store.ts"],"names":[],"mappings":"AAOA,MAAM,QAAQ,GAA+B,EAAE,CAAC;AAEhD,SAAS,MAAM,CAAC,MAAM;IACpB,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,UAAU,GAAG,gEAAgE,CAAC;IACpF,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CAAC;IAC3C,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,OAAO,OAAO,GAAG,MAAM,EAAE;QACvB,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC,CAAC;KACd;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAGD,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAY,EAAE;IAC5C,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACtB,MAAM,OAAO,GAAG;QACd,EAAE;QACF,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,EAAE;KACZ,CAAC;IACF,QAAQ,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;IACvB,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAU,EAAE,KAAa,EAAQ,EAAE;IACjE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QACjB,OAAO;KACR;IAED,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAU,EAAE,QAAgB,EAAQ,EAAE;IACnE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QACjB,OAAO;KACR;IAED,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAU,EAAE,QAAgB,EAAQ,EAAE;;IACrE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QACjB,OAAO;KACR;IAED,MAAA,QAAQ,CAAC,EAAE,CAAC,0CAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAU,EAAQ,EAAE;IACjD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QACjB,OAAO;KACR;IAEH,4BAA4B;IAC5B,iCAAiC;IACjC,KAAK;IACL,IAAI;IACJ,8CAA8C;IAC9C,qBAAqB;IACrB,OAAO;IAEL,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAC;AACtB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAU,EAAW,EAAE;IAChD,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAC;AACtB,CAAC,CAAC"} \ No newline at end of file