Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Show timeseries in harvest's data tab #1271

Merged
merged 17 commits into from
Mar 8, 2021
Merged

feat: Show timeseries in harvest's data tab #1271

merged 17 commits into from
Mar 8, 2021

Conversation

ptbrowne
Copy link
Contributor

@ptbrowne ptbrowne commented Mar 4, 2021

Add a way to display data cards in the data tab of harvest.

  • Data cards show the data that has been retrieved via the konnector for a particular account.
  • Data cards will be specific to a docype and are configured by the app.

Here, only a geo data card is implemented for the io.cozy.timeseries.geojson. An app wanting to use this will have to install leaflet and material-ui/lab.

Related: cozy/cozy-home#1566

@ptbrowne ptbrowne marked this pull request as draft March 4, 2021 17:14
@ptbrowne ptbrowne changed the title feat: Show timeseries feat: Show timeseries in harvest's data tab Mar 5, 2021
This way, each application can choose which data card are displayed
in harvest. This is helpful since data cards can require large deps
like leaflet.
Apps will import datacards directly, the import path needs to be short
and clear
Mock konnectors need an attributes attr since it is used in the DataTab
@ptbrowne ptbrowne marked this pull request as ready for review March 5, 2021 12:34
@ptbrowne ptbrowne merged commit 94b7e06 into master Mar 8, 2021
@ptbrowne ptbrowne deleted the geodata branch March 8, 2021 09:28
return Object.values(permissions)
.map(permission => doctypeToDataCard[permission.type])
.filter(Boolean)
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

C'est un peu dommage de se baser sur les permissions pour afficher ou non un bloc de données.

On devrait plutôt se baser sur le manifest du connecteur, et le manifest devrait déclarer les blocs qu'il veut afficher dans Harvest, un peu à la manière des champs de login. Parce que c'est pas parce que mon connecteur a une permissions sur les fichiers que j'ai envie qu'il affiche le bloc de fichiers, ça devrait être décorrélé.

A garder en tête pour les futures itérations sur cette partie, j'arrive après la bataille ici.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On devrait plutôt se baser sur le manifest du connecteur, et le manifest devrait déclarer les blocs qu'il veut afficher dans Harvest,

Le problème dans ce cas là, c'est repasser sur tout les connecteurs déjà existant et mettre cette déclaration. Personnellement je pense que ça suffirait de ne prendre que la première permission qui match et optionnellement de pouvoir dire sur une permission que tu ne veux pas qu'elle soit affichée en tant que datacard. Ou de pouvoir spécifier en dur le visualiseur que tu veux pour tes données.

datacards: {
  'io.cozy.permissions': false,
  'io.cozy.files': 'FileDataCard2' // already existing in harvest
}

Parce que c'est pas parce que mon connecteur a une permissions sur les fichiers que j'ai envie qu'il affiche le bloc de fichiers, ça devrait être décorrélé.

C'est à débattre, je vois pas très bien un usecase ou en tant que développeur de connecteur tu veux afficher un viewer différent.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

J'ai fait une issue : #1275

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On en discutera en atelier, car y a déjà pas mal de travail fait sur ce sujet, ce sera l'occasion de fournir toutes les billes à tout le monde

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

C'est à débattre, je vois pas très bien un usecase ou en tant que développeur de connecteur tu veux afficher un viewer différent.

Pour info, sur un connecteur qui aurait une permission sur un docType mais sans pour autant une volonté d'afficher le viewer sur cette donnée, il suffit de prendre le cas des connecteurs de factures qui demandent la permission sur les données bancaires pour créer leur bills.
Je ne veux pas avoir d'encart 'Mes données bancaires' même si le connecteur demande les permissions sur ce docType.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants