Généraliser le concept de Workspace #1084
Replies: 5 comments 7 replies
-
Au delà de la factorisation du code, ta proposition me semble cohérente sur le plan de la structuration de Stylo (en tant qu'espace) : avec ta proposition, que l'on soit dans un espace de travail partagé ou non, on identifie Stylo en tant qu'«espace de travail» alors qu'actuellement, l'espace personnel n'est pas explicitement formulé comme tel |
Beta Was this translation helpful? Give feedback.
-
Les articles dans un espace de travail ne sont pas les articles de l'utilisateur. De mon point de vue, je ne sais pas si cela est correct de lister les articles d'un espace de travail avec le graphe |
Beta Was this translation helpful? Give feedback.
-
Je ne comprends pas si vous parlez de la même chose ? Est-ce que quelque chose du type fonctionnerait aussi : Avec pour les articles personnels : query getUserArticles ($user: ID) {
articles (workspaceId : ID) {
title
workingVersion {
md
}
}
} Et côté espace de travail : query getWorkspaceArticles ($user: ID, $workspaceId: ID){
articles (owner: $user, workspaceId: $workspaceId) {
title
workingVersion {
md
}
}
}
variables {
"user": "1234",
"workspaceId": "5678"
} |
Beta Was this translation helpful? Give feedback.
-
Ah oui c'est vrai 😞 Dans ce cas je trouverais ça plus logique : query getArticles ($user: ID, $workspaceId: ID) {
articles (user: $user, workspace: $workspaceId) {
title
workingVersion {
md
}
}
}
variables {
"user": "1234"
} Ou par workspace : query getArticles ($user: ID, $workspaceId: ID) {
articles (user: $user, workspace: $workspaceId) {
title
workingVersion {
md
}
}
}
variables {
"workspaceId": "5678"
} En fait c'est que comme les interfaces sont vraiment identiques, je trouve ça dommage d'avoir en doublon du code côté API et front. Ou alors on assigne un workspace par utilisateur (pas supprimable car "personnel" ; mais ça me semble plus "lourd" en terme de conception). |
Beta Was this translation helpful? Give feedback.
-
Qu'est-ce qu'un tel changement pourrait avoir comme effet de bord ? Si on change la racine du graphe ('articles' à la place de 'user') est-ce qu'il y aurait des comportements non souhaités en cascade ? |
Beta Was this translation helpful? Give feedback.
-
Aujourd'hui on sélectionne les articles différemment selon qu'on soit dans un workspace ou non. C'est le cas à la fois pour le code côté front, et côté API.
Je propose qu'on soit toujours dans un workspace, et que ça soit transparent à la requête.
Une requête classique d'article ressemble à :
Si on explicite le workspace par défaut :
Si on explicite un identifiant de workspace :
Avantage : on peut mémoriser l'identifiant de workspace dans la session utilisateur (et revenir dessus par défaut quand on revient sur Stylo par exemple), factoriser tout le code en doublon, gérer moins de maintenance.
Qu'est-ce que vous en pensez ?
Beta Was this translation helpful? Give feedback.
All reactions