popcodeorg / popcodeorg/popcode

Console open state should be preserved when project persisted

Ouverte
#1,328 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

bug code quality
Langage dominant
JavaScript
Étoiles
191
Forks
143
Merge moyen
4 j 11 h
PR mergées (30 j)
5

Description

Right now, the console is always closed when a project is loaded, even if it was open last time that project was modified. This is different from other UI components, whose minimization state is retained when a project is persisted and then loaded.

This is because the collection of minimized components is represented as a set of component names. This is fine as far as it goes, but it precludes adding new minimized components that are minimized by default (e.g. the console), because the absence of the console from the array in a saved project might mean either:

  1. The console is not minimized in this project, or
  2. The project was last saved before the console feature was introduced

To work around this, when loading a project from storage, we assume the second case and always add the console to the list of minimized components.

Instead, we should store the collection of minimized components as a Map whose keys are component names, and values are either true or false. Entries should only be present in the map if the user has explicitly hidden or shown a component; if an entry is not present, the appropriate default for the editor in question can be used (this logic should probably live in the React component layer).

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par suivre la persistance et le chargement du projet, puis inspectez la couche de composants React où les valeurs par défaut des composants minimisés sont appliquées. Confirmez comment la collection enregistrée de composants minimisés est sérialisée et restaurée. Le travail est considéré comme terminé lorsque les états explicitement masqué ou affiché persistent, tandis que les entrées absentes utilisent la valeur par défaut de chaque éditeur, y compris la console.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
javascript, react
Domaine
frontend
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.