Commit Graph

94 Commits

Author SHA1 Message Date
wpetit e990184a0b Clore un groupe de travail 2020-07-23 08:28:23 +02:00
wpetit 4a340529da Créer/modifier/rejoindre/quitter un groupe de travail 2020-07-23 08:28:23 +02:00
wpetit bc9aa1721a Remplacement du Loader par WithLoader 2020-07-23 08:28:23 +02:00
wpetit c4373cce46 Remplacement de Redux/Saga par Apollo 2020-07-23 08:28:23 +02:00
wpetit 8708e30020 Interface de gestion des groupes de travail
- Récupération et affichage des groupes existants
- Création d'un nouveau groupe
- Modification d'un groupe existant
- Rejoindre/quitter un groupe de travail
2020-07-23 08:28:23 +02:00
wpetit 676ddf3bc8 Base d'API backend pour la manipulation des groupes de travail
Types:

type Workgroup {
  id: ID!
  name: String
  createdAt: Time!
  closedAt: Time
  members: [User]!
}

Mutations:

joinWorkgroup(workgroupId: ID!): Workgroup!
leaveWorkgroup(workgroupId: ID!): Workgroup!
createWorkgroup(changes: WorkgroupChanges!): Workgroup!
closeWorkgroup(workgroupId: ID!): Workgroup!
updateWorkgroup(workgroupId: ID!, changes: WorkgroupChanges!): Workgroup!

Queries:

workgroups: [Workgroup]!
2020-07-23 08:28:23 +02:00
wpetit 7bf4c4f080 Base de tableau de bord 2020-07-23 08:28:23 +02:00
wpetit 303ea6b1d6 Stockage des sessions en base de données via GORM 2020-07-17 09:39:37 +02:00
wpetit ccf911322b Correction make up 2020-07-17 09:39:02 +02:00
wpetit 0cb6c7c67e Merge branch 'feature/user-profile' of Cadoles/daddy into develop 2020-07-17 09:25:50 +02:00
wpetit 08bd11f4d9 Simplification Makefile 2020-07-16 22:51:26 +02:00
wpetit 0d308acd5c Ajout script/commande de release 2020-07-16 22:31:02 +02:00
wpetit 36c253d4d7 Correction nom projet client 2020-07-16 22:30:03 +02:00
wpetit ed219ddd11 Correction typo annotation 2020-07-16 22:29:33 +02:00
wpetit 758c166f27 Simple page de modification de profil 2020-07-16 20:21:58 +02:00
wpetit 05dd505d6b Bascule sur l'ORM GORM
- On n'utilise plus la pattern CQRS trop lourde pour le système
- Un système de models/repository "à la Symfony" est utilisé pour les
  requêtes
2020-07-16 14:30:16 +02:00
wpetit 8b8f322630 Récupération automatique du profil au lancement de l'application 2020-07-13 18:49:44 +02:00
wpetit 3bcebdfcd1 Merge branch 'feature/go-server' of Cadoles/daddy into develop 2020-07-13 15:50:20 +02:00
wpetit d0228b6c11 Exécuter make generate avant le make deps 2020-07-13 15:07:55 +02:00
wpetit 00e331b985 Correction génération resolvers GraphQL 2020-07-13 14:55:32 +02:00
wpetit 3fd8bf7e69 Auto-création du compte utilisateur à la première connexion
- Sauvegarde de l'adresse courriel de l'utilisateur en session
- Implémentation d'une première Query GraphQL pour récupérer le profil
  de l'utilisateur connecté
- Utilisation de la pattern CQRS pour les commandes/requêtes sur la base
  de données
2020-07-13 14:44:05 +02:00
wpetit a096b506e2 Correction procédure de démarrage et mise à jour du README 2020-07-13 12:01:20 +02:00
wpetit 591112a800 Intégration d'un point d'entrée GraphQL et d'un connecteur pour
PostgreSQL

- Possibilité de migrer le schéma de la base de données via drapeau
- Génération du code GraphQL avec https://gqlgen.com/
2020-07-13 09:20:14 +02:00
wpetit 1120474ad9 Utilisation d'un serveur Go custom pour le backend au lieu de
super-graph

Malheureusement, super-graph n'a pas tenu les promesses qu'il semblait
annoncer.

Je propose donc de basculer sur un serveur Go classique (via goweb).
L'authentification OpenID Connect étant gérée côté backend et non plus
côté frontend.
2020-07-12 19:14:46 +02:00
tcornaut ff70a6d570 Merge branch 'feature/super-graph-auth' of Cadoles/daddy into develop 2020-06-22 21:28:40 +02:00
wpetit 8c6e52731d Mise à jour version super-graph 2020-06-22 12:08:31 +02:00
wpetit 13571d7617 Configuration basique du backend pour l'authentification/autorisation
via JWT
2020-06-22 12:07:48 +02:00
wpetit 3bef551ad6 Ajout tip sur l'utilisation de la webui GraphQL 2020-06-22 12:07:27 +02:00
wpetit 369be98bd8 Récupération du profil utilisateur après connexion 2020-06-22 12:06:42 +02:00
wpetit 62fe6fbeeb Ajout d'un fichier 'échantillon' pour la configuration du client 2020-06-21 14:51:51 +02:00
wpetit 2f1e623278 Utilisation du fork de super-graph pour la compatibilité avec Hydra
Principalement dans l'optique de gérer:

- Le champ `audience` au format tableau, voir b37171c19f
- La validation des jetons JWT via un endpoint JWKS, voir 788f0459fb
2020-06-21 14:24:35 +02:00
wpetit 28ba0f5ba0 Passage du owner de la BDD daddy à l'utilisateur daddy 2020-06-21 14:24:19 +02:00
wpetit 01f8ca730c Configuration du endpoint JWKS pour Hydra 2020-06-21 14:23:38 +02:00
wpetit 01c6abdbb4 Ajout du rôle dans la fichie utilisateur + création de fixtures avec les rôles user/admin 2020-06-21 14:23:13 +02:00
wpetit d85edd949c Configuration basique des rôles en mode 'dev' 2020-06-21 14:22:06 +02:00
wpetit 569a44591c Ajout utilisateurs Cadoles dans les seeds 2020-06-21 11:30:59 +02:00
wpetit 6b1f56a86f Correction utilisateur commande make db-shell 2020-06-21 11:30:34 +02:00
wpetit d19c7674fd Merge branch 'feature/hydra-integration' of Cadoles/daddy into develop 2020-06-21 11:27:49 +02:00
wpetit 713b8cc3ea Authentification OpenID Connect
Implémentation du modèle d'authentification "Authorization code with
PKCE [1]"

[1] https://auth0.com/docs/api-auth/tutorials/authorization-code-grant-pkce
2020-06-19 19:11:28 +02:00
wpetit 59806edc10 Intégration d'hydra/hydra-passwordless/fake-smtp dans l'infra Docker 2020-06-18 09:34:22 +02:00
wpetit 7f7b187296 Mise en place structure frontend 2020-06-15 18:10:06 +02:00
wpetit af47331223 Mise à jour README 2020-06-15 15:04:06 +02:00
wpetit bf3b56d242 Mise en place du projet 2020-06-15 14:58:59 +02:00
wpetit ba01f8340e Initial commit 2020-06-15 14:58:35 +02:00