The ts-proto lib has the huge advantage of producing code the "Typescript" way and not the "Java" way.
In particular, for "oneof" types in protobuf, it is generating "ADT" that can be used to check if we forgot or not to deal with a type.
* Active authentication Oauth
- Google authentication
- GitHub authentication
- Linkedin authentication
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Finish connexion et get user info connexion
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Fix lint error
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Change the expires token for 30 days
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Update connexion stratgey
- Set last room when it will be created and not when connexion is openned
- Add '/login' end point permit to logout and open iframe to log user
- Add logout feature permit to logout in front
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Implement logout and revoke token with hydra
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Fix pull develop conflict
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Profile url (#1399)
* Create function that permit to get profile URL
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Continue profil user
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Add menu and logout button
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Update last room use
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Profile callback permit to get url profile setting from admin
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Finish profile show
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Delete profileUrl will be not use today
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Correct lint
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Update size of iframe
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Delete console log
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
* Update feedback ARP
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
The notion of public/private repositories (with /_/ and /@/ URLs) is specific to the SAAS version of WorkAdventure.
It would be better to avoid leaking the organization/world/room structure of the private SAAS URLs inside the WorkAdventure Github project.
Rather than sending http://admin_host/api/map?organizationSlug=...&worldSlug=...&roomSlug=...., we are now sending /api/map&playUri=...
where playUri is the full URL of the current game.
This allows the backend to act as a complete router.
The front (and the pusher) will be able to completely ignore the specifics of URL building (with /@/ and /_/ URLs, etc...)
Those details will live only in the admin server, which is way cleaner (and way more powerful).
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.