diff --git a/index.cjs b/index.mjs similarity index 62% rename from index.cjs rename to index.mjs index eab06b8..bdd569e 100644 --- a/index.cjs +++ b/index.mjs @@ -1,39 +1,42 @@ -const { Authorizer } = require('@authorizerdev/authorizer-js') -const { Server } = require('@hocuspocus/server') +import { Authorizer } from '@authorizerdev/authorizer-js'; +import { Server } from '@hocuspocus/server'; const authorizer = new Authorizer({ clientID: process.env.AUTHORIZER_CLIENT_ID, authorizerURL: 'https://auth.discours.io', redirectURL: 'https://testing.discours.io', -}) -;(async () => { +}); + +const startServer = async () => { const server = await Server.configure({ port: 4242, async onConnect({ connection }) { - connection.requiresAuthentication = true + connection.requiresAuthentication = true; }, async onAuthenticate(data) { if (data.requestHeaders) { const params = { token_type: 'access_token', token: data.requestHeaders['authorization'] || '', - } + }; if (params.token) { - const response = await authorizer.validateJWTToken(params) + const response = await authorizer.validateJWTToken(params); if (response?.data?.is_valid) { - const { sub: user, allowed_roles: roles } = response.data.claims - console.debug(`user_id: ${user} roles: ${roles}`) + const { sub: user, allowed_roles: roles } = response.data.claims; + console.debug(`user_id: ${user} roles: ${roles}`); return { id: user, roles, - } + }; } - console.error('no valid auth token presented') - throw new Error('Not authorized!') + console.error('no valid auth token presented'); + throw new Error('Not authorized!'); } } }, - }).listen() + }).listen(); - server.listen() -})() + server.listen(); +}; + +startServer(); diff --git a/package.json b/package.json index 9ae667c..dc2829a 100644 --- a/package.json +++ b/package.json @@ -1,12 +1,11 @@ { "name": "discours-editing-server", - "version": "1.0.2", + "version": "1.0.3", "description": "discours.io webrtc p2p network helping crdt-server", - "main": "index.cjs", + "main": "index.mjs", "type": "module", "scripts": { - "fix": "npx @biomejs/biome check --apply-unsafe .", - "start": "node ./index.cjs" + "start": "node ./index.mjs" }, "repository": { "type": "git",