* make use of well known types for PlayerDetailsUpdated message
* show voice-chat indicator of people from other groups too
* cleanup
* check for outline value
* do not send outline color if undefined
* revert removing LocalVolumeStore
* use auto-generated type instead
Co-authored-by: Piotr 'pwh' Hanusiak <p.hanusiak@workadventu.re>
* Wrap websockets with HyperExpress
* Add endpoints on pusher to resolve wokas
* getting textures urls from pusher
* Adding OpenAPI documentation for the pusher.
The pusher now exposes a "/openapi" endpoint and a "/swagger-ui/" endpoint.
* revert FRONT_URL
* playerTextures metadata is being loaded via Phaser.Loader
* fetch textures every time character or customize scene is open
* Heavy changes: refactoring the pusher to always send the textures (and the front to accept them)
* Sending character layer details to admin
* Cleaning commented code
* Fixing regex
* Fix woka endpoints on pusher
* Change error wording on pusher
* Working on integration of the woka-list with the new admin endpoint.
* Switching from "name" to "id" in texture object + using zod for woka/list validation
* Add position on default woka data
* Remove async on pusher option method
* Fix woka list url
* add options for /register
* Fxiing loading the Woka list
* Actually returning something in logout-callback
* Copying messages to back too
* remove customize button if no body parts are available (#1952)
* remove customize button if no body parts are available
* remove unused position field from PlayerTexturesCollection interface
* removed unused label field
* fix LocalUser test
* little PlayerTextures class refactor
* Fixing linting
* Fixing missing Openapi packages in prod
* Fixing back build
Co-authored-by: Hanusiak Piotr <piotr@ltmp.co>
Co-authored-by: David Négrier <d.negrier@thecodingmachine.com>
* Add returns on pusher endpoints
Co-authored-by: Alexis Faizeau <a.faizeau@workadventu.re>
Co-authored-by: Hanusiak Piotr <piotr@ltmp.co>
Co-authored-by: Piotr Hanusiak <wacneg@gmail.com>
If a token decryption failed, it will emit a HTTP 500.
We should not retry Axios in this case but rather fail.
Note: a token decryption failed should not throw a HTTP 500 but another error code (HTTP 401?)
So maybe this fix is plainly wrong.
This way, if a user A blocks another user B, if user B refreshes the browser or leaves and re-enters the room, user B will still be blocked.
As a side effect, this allows us to completely remove the "sockets" property in the SocketManager on the Pusher.