Commit Graph

53 Commits

Author SHA1 Message Date
César Cardinale 5016c85ca4 Add swagger doc for the link pusher -> admin (#2146)
* Dissociate admin API from external API
* Add adminAPI doc for self-hosted
2022-05-11 17:43:25 +02:00
César Cardinale a6e0374257 All customized logo (#2168)
* Change dynamic logo in reconnecting scene

* Add cowebsite customized logo

* Fix prettier issues

* Fix prettier issues (2)

* Fix login scene PoweredBy

* Delete all console logs
2022-05-05 19:23:07 +02:00
CEC d6450831c6 Fix pretty doc 2022-04-28 11:51:55 +02:00
CEC 53b084ea7f Add new Swagger Doc for the pusher 2022-04-28 11:39:08 +02:00
grégoire parant f402fea86a External API update (#2111)
* External API update

 - Remove tags field for map information
 - Remove room_policy fiels for map information

This two paramter will be used directly in the admin

* Delete use less updateRoomWithAdminData

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
Co-authored-by: David Négrier <d.negrier@thecodingmachine.com>
2022-04-25 11:00:01 +02:00
David Négrier 5cc97483e0 Fine-tuning the @typescript-eslint/no-unused-vars rule
We now allow parameters to be unused. This is quite common in inherited methods.
This allows removing a bunch of: //eslint-disable-next-line @typescript-eslint/no-unused-vars
Also, "err" variables in catch MUST now be used and the special _exhaustiveCheck variable used in ":never" assigns can be unused.
2022-04-22 18:09:39 +02:00
CEC 8182ccb11c Fix prettier issues and re order locale parameter 2022-04-20 17:03:21 +02:00
CEC 5466bd1d68 Fix feedback on PR
Change locale as parameter on adminInterface
2022-04-20 16:30:16 +02:00
CEC 0ac6b50469 Fix prettier and change last use of adminAPI to Service way 2022-04-14 11:59:35 +02:00
CEC 317e0d3787 Implement all use of AdminService
Implement and generalize adminApi and localAdmin from adminInterface
2022-04-14 11:33:00 +02:00
CEC 710311036b Fix prettier and import unused 2022-04-13 17:49:04 +02:00
CEC 209dd43aac Deleted use of WAError and add defining of language of client everywhere 2022-04-13 17:42:44 +02:00
César Cardinale d71b36d0fe Merge branch 'develop' into codeAPI 2022-04-13 17:00:55 +02:00
David Négrier 6920836e47 Merge branch 'master' of github.com:thecodingmachine/workadventure into develop 2022-04-13 15:12:06 +02:00
David Négrier 952a5bd87c Making a round of improvement to log messages
Also, bootstraping a new LocalAdmin service to mock the AdminApi in the pusher
2022-04-13 15:07:03 +02:00
Alexis Faizeau d1e8243c47 Zod EVERYWHERE (#2027)
* Zod EVERYWHERE

* Add no-unused-vars rule to eslint in front

* Add no-unused-vars rule to eslint in pusher

* Add no-unused-vars rule to eslint in back

* Remove unused PlayerTexture guards

* Fix data providing on room connection

Co-authored-by: Alexis Faizeau <a.faizeau@workadventu.re>
2022-04-12 14:21:19 +02:00
CEC 0b579418ad Fix prettier 2022-04-12 11:12:44 +02:00
CEC 748baa9bbc Refactoring Error Screen 2022-04-12 10:23:36 +02:00
grégoire parant 003bc86262 Release 1.9.6 (#2021)
* Change accès token with query privateAccessToken in the url

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

* Add play uri param

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

* PlayUri parameter

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

* removed unused imports

* send group userIds to players

* sending info about group lock state. wip

* listening to lockGroupMessage on front

* cleanup

* Updating GroupDescriptors on LockGroupMessage

* remove console logs

* group circles with color fill

* fix GameRoom text

* remove obsolete check

* cr fixes #1 wip

* much cleaner approach to group lock update

* fix compilation error

* well-known values wip

* Removing old unused images

Just a bit of cleanup!

* update with dan suggest

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

* Change roomId by playUri

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

* hide voice indicator for player leaving still existing bubble conversation

* Refactor access by token

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

* Refactor connexion manager

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

* Adds settings options and localUser functions

* PrivacyShutdownStore modifies constraints according to the user's setting

* switches dropdown for checkboxes and adjusts wording

* Adds the todo about German translation

* Adds test map

* Makes the default setting: camera off and mic on

* Add z-index on embeds screens and action menu

* Fixes tileset import

* Adds settings options and localUser functions

* PrivacyShutdownStore modifies constraints according to the user's setting

* switches dropdown for checkboxes and adjusts wording

* Adds the todo about German translation

* Adds test map

* Makes the default setting: camera off and mic on

* Fixes tileset import

* Applying German translation, thanks to @Lurkars

* removed obsolete console.log

* fix linter issues

* make use of proto well knows types

* fixed types for RoomConnection

* fix locking bubble when returning from away mode

* Fix run pretty

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

* prevent actions menu from appearing when inserting space key on chat

* Bump ansi-regex from 4.1.0 to 4.1.1 in /maps

Bumps [ansi-regex](https://github.com/chalk/ansi-regex) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/chalk/ansi-regex/releases)
- [Commits](https://github.com/chalk/ansi-regex/compare/v4.1.0...v4.1.1)

---
updated-dependencies:
- dependency-name: ansi-regex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump minimist from 1.2.5 to 1.2.6 in /desktop/local-app

Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump ansi-regex from 4.1.0 to 4.1.1 in /desktop/electron

Bumps [ansi-regex](https://github.com/chalk/ansi-regex) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/chalk/ansi-regex/releases)
- [Commits](https://github.com/chalk/ansi-regex/compare/v4.1.0...v4.1.1)

---
updated-dependencies:
- dependency-name: ansi-regex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump ansi-regex from 4.1.0 to 4.1.1 in /uploader

Bumps [ansi-regex](https://github.com/chalk/ansi-regex) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/chalk/ansi-regex/releases)
- [Commits](https://github.com/chalk/ansi-regex/compare/v4.1.0...v4.1.1)

---
updated-dependencies:
- dependency-name: ansi-regex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump plist from 3.0.4 to 3.0.5 in /desktop/electron

Bumps [plist](https://github.com/TooTallNate/node-plist) from 3.0.4 to 3.0.5.
- [Release notes](https://github.com/TooTallNate/node-plist/releases)
- [Changelog](https://github.com/TooTallNate/plist.js/blob/master/History.md)
- [Commits](https://github.com/TooTallNate/node-plist/commits)

---
updated-dependencies:
- dependency-name: plist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: Hanusiak Piotr <piotr@ltmp.co>
Co-authored-by: David Négrier <d.negrier@thecodingmachine.com>
Co-authored-by: Piotr 'pwh' Hanusiak <p.hanusiak@workadventu.re>
Co-authored-by: Benedicte Quimbert <b.quimbert@workadventu.re>
Co-authored-by: Alexis Faizeau <a.faizeau@workadventu.re>
Co-authored-by: Bénédicte Q <37311765+HimeShaman@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-30 11:13:27 +02:00
Gregoire Parant dce1ece837 Merge branch 'develop' into changeRegisterAccess
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

# Conflicts:
#	front/src/Connexion/ConnectionManager.ts
#	front/vite.config.ts
2022-03-29 13:30:40 +02:00
David Négrier 705c75e3c7 Adding wokalist type checking on front
Additionally, we are making superLoad.json accept a new "immediateCallback" parameter that resolves during the event handler (and not after)
2022-03-21 11:29:18 +01:00
Gregoire Parant 56fb73c682 Change roomId by playUri
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2022-03-17 10:53:56 +01:00
Gregoire Parant 5448596f01 Merge branch 'develop' into changeRegisterAccess
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

# Conflicts:
#	pusher/src/Services/AdminApi.ts
2022-03-17 09:54:24 +01:00
David Négrier 53b184e82b Adding support for custom logos
The admin can now set custom logos for the login scene and for the loading screen.
2022-03-15 18:16:56 +01:00
David Négrier 6540f15c5b Refactoring Woka management (#1810)
* 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>
2022-03-11 17:02:58 +01:00
Gregoire Parant 64ba7575a0 Add play uri param
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2022-02-08 18:47:11 +01:00
David Négrier 12d6d9a50d Disabling completely routes if admin token not configured 2022-01-27 18:38:33 +01:00
Alexis Faizeau b148a46e3c Remove unused policy type from ApiData typeguard 2021-12-30 12:51:52 +01:00
David Négrier b2bcfde5b1 Merge branch 'develop' of github.com:thecodingmachine/workadventure into upgrade_typescript_4.5 2021-12-16 16:07:17 +01:00
David Négrier 0c281db411 More eslint fixes (+ ignoring no-unsafe-argument rule for now) 2021-12-16 15:57:37 +01:00
David Négrier fa2e583d48 Reimporting correctly types moved to /messages 2021-12-16 10:04:41 +01:00
Valdo Romao dd79f7d0f4 Added the user-room token created from admin when we access a room 2021-12-01 15:50:14 +00:00
Gregoire Parant e54732be1b HotFix authentication manager to get data from back
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-11-16 14:46:32 +01:00
Gregoire Parant 7d0b573d37 Define profile variable to show user connected
- OPID_PROFILE_SCREEN_PROVIDER is a variable to show profile of user connected. You can defined your own provider or use classic provider of WorkAdventure.
 - OpenIdProfileController with url "/profile" get user data and create simple html to show user informations. This url will be called with params 'accessToken'
 - If you define your custom profile url, it will be called with param 'accessToken'.

accessToken is token to access at user informations in your OpenId provider.
2021-11-12 20:48:26 +01:00
Gregoire Parant 4c028bfcb3 OpenId from Admin connect
- Create admin environment for redirect uri of openID
 - Add log out redirect when user click on log out button

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-11-08 19:27:01 +01:00
grégoire parant d2b8d7dc04 Active authentication Oauth (#1377)
* 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>
2021-09-05 18:17:49 +02:00
grégoire parant 02a21209ec Exit scene acess denied detected (#1369)
* Add auth token user to get right in admin and check if user have right

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>

* Update error show

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-08-15 08:51:35 +02:00
Gregoire Parant 14b4229019 Merge branch 'develop' into GlobalMessageToWorld
# Conflicts:
#	CHANGELOG.md
#	front/src/Api/Events/IframeEvent.ts
#	front/src/Components/App.svelte
#	pusher/src/Services/SocketManager.ts
2021-08-02 23:07:39 +02:00
kharhamel 9c803a69ff FEATURE: users can now login via an openID client 2021-07-30 15:43:46 +02:00
GRL 6e65952d75 SendGlobalMessage by sendAminMessage 2021-07-20 15:16:51 +02:00
David Négrier a4a123c331 Admin /api/map endpoint return type is now generated with generic type guards 2021-07-16 10:46:45 +02:00
David Négrier c9fa9b9a92 Migrating away from the notion of public/private URL in WorkAdventure Github repository
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).
2021-07-15 17:07:47 +02:00
David Négrier 10c3d6dee2 Applying Prettier on pusher and back 2021-06-24 10:09:10 +02:00
kharhamel dd45996f9c FIX: improved the visit card, cleanup the code 2021-06-08 16:39:22 +02:00
kharhamel 88cc15cd02 FEATURE: editing a room in the admin trigger a refresh system 2021-04-02 15:22:02 +02:00
David Négrier cd7a332b4c Improving error throwing and handling in pusher/admin/front 2021-03-31 15:49:01 +02:00
kharhamel 8abc34c631 FEATURE: the connexion error an user can get when a world is full is now correctly traited. Also remove a redundant adminApi call 2021-03-09 16:34:19 +01:00
Gregoire Parant 915d945dd5 Fix ci 2021-03-01 22:32:50 +01:00
Gregoire Parant 30f4793342 Update private access 2021-03-01 22:21:52 +01:00
Gregoire Parant 7eb38fae83 Permit puiblic report
- Create report html
 - Add report flag
2021-01-29 21:09:10 +01:00