From 7eef2fd0e8d9cdcd7f83cb942d0510b0163cbdf9 Mon Sep 17 00:00:00 2001 From: jlpereira Date: Thu, 30 Jan 2025 15:09:31 -0300 Subject: [PATCH 1/4] Add browse field occurrence scaffold --- .../field_occurrences/browse_controller.rb | 4 + app/javascript/packs/application.js | 3 +- .../components/Panel/PanelIdentifier.vue | 51 ++++++- .../tasks/field_occurrences/browse/app.vue | 6 + .../browse/components/COHeader.vue | 123 +++++++++++++++ .../browse/components/CONavegation.vue | 122 +++++++++++++++ .../browse/components/ColumnThree.vue | 26 ++++ .../components/Panel/PanelBiocurations.vue | 23 +++ .../Panel/PanelBiologicalAssociations.vue | 23 +++ .../Panel/PanelBuffered/PanelBuffered.vue | 34 +++++ .../PanelBuffered/PanelBufferedSection.vue | 22 +++ .../PanelBuffered/PanelCollectingEvent.vue | 9 ++ .../components/Panel/PanelDepictions.vue | 61 ++++++++ .../components/Panel/PanelDeterminations.vue | 45 ++++++ .../browse/components/Panel/PanelFO.vue | 31 ++++ .../components/Panel/PanelIdentifier.vue | 46 ++++++ .../browse/components/Panel/PanelMap.vue | 35 +++++ .../browse/components/PanelCE/PanelCE.vue | 71 +++++++++ .../components/PanelCE/PanelCEAttributes.vue | 35 +++++ .../components/PanelCE/PanelCEModal.vue | 144 ++++++++++++++++++ .../components/Table/TableAttributes.vue | 74 +++++++++ .../browse/components/Table/TableData.vue | 57 +++++++ .../tasks/field_occurrences/browse/main.js | 18 +++ .../field_occurrences/browse/store/store.js | 0 .../{new_field_occurrences => new}/App.vue | 0 .../components/BiocurationForm.vue | 0 .../components/BiologicalAssociation.vue | 2 +- .../BiologicalAssociation.vue | 0 .../BiologicalAssociationList.vue | 0 .../BiologicalAssociationObject.vue | 0 .../BiologicalAssociationRelated.vue | 0 .../BiologicalAssociationRelationship.vue | 0 .../components/CitationForm.vue | 0 .../components/CollectingEventForm.vue | 0 .../components/Depiction/Depiction.vue | 0 .../FieldOccurenceForm/FieldIsAbsent.vue | 0 .../FieldOccurrenceForm.vue | 0 .../FieldOccurenceForm/FieldTotal.vue | 0 .../Identifier/IdentifierForm.vue | 0 .../Identifier/NamespaceForm.vue | 0 .../components/HeaderBar.vue | 0 .../components/Recent.vue | 0 .../components/TaxonDeterminationForm.vue | 0 .../{new_field_occurrences => new}/main.js | 0 .../store/biocurations.js | 0 .../store/biologicalAssociations.js | 0 .../store/citations.js | 0 .../store/depictions.js | 0 .../store/determinations.js | 0 .../store/fieldOccurrence.js | 2 +- .../store/identifier.js | 0 .../store/settings.js | 0 .../field_occurrences/browse/index.html.erb | 1 + config/interface/hub/user_tasks.yml | 8 + config/routes/tasks.rb | 4 + 55 files changed, 1071 insertions(+), 9 deletions(-) create mode 100644 app/controllers/tasks/field_occurrences/browse_controller.rb create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/app.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/COHeader.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/CONavegation.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/ColumnThree.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBiocurations.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBiologicalAssociations.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelBuffered.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelBufferedSection.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelCollectingEvent.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelDepictions.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelDeterminations.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelFO.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelIdentifier.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelMap.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCE.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCEAttributes.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCEModal.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Table/TableAttributes.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/components/Table/TableData.vue create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/main.js create mode 100644 app/javascript/vue/tasks/field_occurrences/browse/store/store.js rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/App.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/BiocurationForm.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/BiologicalAssociation.vue (98%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/BiologicalAssociation/BiologicalAssociation.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/BiologicalAssociation/BiologicalAssociationList.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/BiologicalAssociation/BiologicalAssociationObject.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/BiologicalAssociation/BiologicalAssociationRelated.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/BiologicalAssociation/BiologicalAssociationRelationship.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/CitationForm.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/CollectingEventForm.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/Depiction/Depiction.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/FieldOccurenceForm/FieldIsAbsent.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/FieldOccurenceForm/FieldOccurrenceForm.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/FieldOccurenceForm/FieldTotal.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/FieldOccurenceForm/Identifier/IdentifierForm.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/FieldOccurenceForm/Identifier/NamespaceForm.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/HeaderBar.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/Recent.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/components/TaxonDeterminationForm.vue (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/main.js (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/store/biocurations.js (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/store/biologicalAssociations.js (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/store/citations.js (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/store/depictions.js (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/store/determinations.js (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/store/fieldOccurrence.js (94%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/store/identifier.js (100%) rename app/javascript/vue/tasks/field_occurrences/{new_field_occurrences => new}/store/settings.js (100%) create mode 100644 app/views/tasks/field_occurrences/browse/index.html.erb diff --git a/app/controllers/tasks/field_occurrences/browse_controller.rb b/app/controllers/tasks/field_occurrences/browse_controller.rb new file mode 100644 index 0000000000..b910e4c906 --- /dev/null +++ b/app/controllers/tasks/field_occurrences/browse_controller.rb @@ -0,0 +1,4 @@ +class Tasks::FieldOccurrences::BrowseController < ApplicationController + include TaskControllerConfiguration + +end \ No newline at end of file diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 5603d109dd..8ad5cfc24f 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -105,7 +105,7 @@ import '../vue/tasks/biological_associations/network/main.js' import '../vue/tasks/collecting_events/stepwise/collectors/main.js' import '../vue/tasks/leads/new_lead/main.js' import '../vue/tasks/leads/show/main.js' -import '../vue/tasks/field_occurrences/new_field_occurrences/main.js' +import '../vue/tasks/field_occurrences/new/main.js' import '../vue/tasks/metadata/vocabulary/project_vocabulary/main.js' import '../vue/tasks/otus/new_otu/main.js' import '../vue/tasks/leads/hub/main.js' @@ -117,3 +117,4 @@ import '../vue/tasks/unify/objects/main.js' import '../vue/tasks/images/new_filename_depicting_image/main.js' import '../vue/tasks/biological_associations/new/main.js' import '../vue/tasks/otus/duplicates/main.js' +import '../vue/tasks/field_occurrences/browse/main.js' diff --git a/app/javascript/vue/tasks/collection_objects/browse/components/Panel/PanelIdentifier.vue b/app/javascript/vue/tasks/collection_objects/browse/components/Panel/PanelIdentifier.vue index d03904ab43..8b812b8da7 100644 --- a/app/javascript/vue/tasks/collection_objects/browse/components/Panel/PanelIdentifier.vue +++ b/app/javascript/vue/tasks/collection_objects/browse/components/Panel/PanelIdentifier.vue @@ -1,9 +1,27 @@ @@ -12,7 +30,6 @@ import { useStore } from 'vuex' import { computed } from 'vue' import { GetterNames } from '../../store/getters/getters' import PanelContainer from './PanelContainer.vue' -import TableAttributes from '../Table/TableAttributes.vue' const store = useStore() const identifiers = computed(() => { @@ -20,7 +37,7 @@ const identifiers = computed(() => { const newlist = {} for (const key in list) { - list[key].forEach(identifier => { + list[key].forEach((identifier) => { newlist[identifier.objectTag] = key }) } @@ -28,3 +45,25 @@ const identifiers = computed(() => { return newlist }) + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/app.vue b/app/javascript/vue/tasks/field_occurrences/browse/app.vue new file mode 100644 index 0000000000..984dea42bf --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/app.vue @@ -0,0 +1,6 @@ + + + \ No newline at end of file diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/COHeader.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/COHeader.vue new file mode 100644 index 0000000000..2ee1ca7479 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/COHeader.vue @@ -0,0 +1,123 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/CONavegation.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/CONavegation.vue new file mode 100644 index 0000000000..e0908a8ca9 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/CONavegation.vue @@ -0,0 +1,122 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/ColumnThree.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/ColumnThree.vue new file mode 100644 index 0000000000..049058b008 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/ColumnThree.vue @@ -0,0 +1,26 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBiocurations.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBiocurations.vue new file mode 100644 index 0000000000..e450ba8c33 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBiocurations.vue @@ -0,0 +1,23 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBiologicalAssociations.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBiologicalAssociations.vue new file mode 100644 index 0000000000..11c3676cce --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBiologicalAssociations.vue @@ -0,0 +1,23 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelBuffered.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelBuffered.vue new file mode 100644 index 0000000000..722f554032 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelBuffered.vue @@ -0,0 +1,34 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelBufferedSection.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelBufferedSection.vue new file mode 100644 index 0000000000..c655f3cd86 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelBufferedSection.vue @@ -0,0 +1,22 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelCollectingEvent.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelCollectingEvent.vue new file mode 100644 index 0000000000..422d72dbc6 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelBuffered/PanelCollectingEvent.vue @@ -0,0 +1,9 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelDepictions.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelDepictions.vue new file mode 100644 index 0000000000..673d32c608 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelDepictions.vue @@ -0,0 +1,61 @@ + + + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelDeterminations.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelDeterminations.vue new file mode 100644 index 0000000000..299b85f6cd --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelDeterminations.vue @@ -0,0 +1,45 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelFO.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelFO.vue new file mode 100644 index 0000000000..21759d3e66 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelFO.vue @@ -0,0 +1,31 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelIdentifier.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelIdentifier.vue new file mode 100644 index 0000000000..fc39dc040c --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelIdentifier.vue @@ -0,0 +1,46 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelMap.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelMap.vue new file mode 100644 index 0000000000..12441bb946 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/Panel/PanelMap.vue @@ -0,0 +1,35 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCE.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCE.vue new file mode 100644 index 0000000000..a14665b990 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCE.vue @@ -0,0 +1,71 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCEAttributes.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCEAttributes.vue new file mode 100644 index 0000000000..1e234b1cd4 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCEAttributes.vue @@ -0,0 +1,35 @@ + + + diff --git a/app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCEModal.vue b/app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCEModal.vue new file mode 100644 index 0000000000..2872ab44f5 --- /dev/null +++ b/app/javascript/vue/tasks/field_occurrences/browse/components/PanelCE/PanelCEModal.vue @@ -0,0 +1,144 @@ +