Skip to content

Enable sorting by new fields from entitycore, address circuit sorting#1525

Merged
pgetta merged 6 commits intomainfrom
feat/extend-list-ordering-props
Apr 22, 2026
Merged

Enable sorting by new fields from entitycore, address circuit sorting#1525
pgetta merged 6 commits intomainfrom
feat/extend-list-ordering-props

Conversation

@pgetta
Copy link
Copy Markdown
Collaborator

@pgetta pgetta commented Mar 20, 2026

Summary

  • Enable sorting for new fields supported by entity-core backend (entitycore#561, entitycore#563)
  • Disable sorting UI in circuit hierarchy view where row order is determined by the derivation tree

Changes

New sortable fields (entity-configuration/definitions/fields-defs/)

common.tsx:

  • BrainRegion — extend to Circuit subtypes, IonChannelModel, IonChannelRecording, EMCellMesh, Emodel, ComputationallySynthesizedCellMorphology
  • SpeciesName — extend to CellMorphology, UniversalCellMorphology, ComputationallySynthesizedCellMorphology, IonChannelModel, IonChannelRecording, Circuit, MEModelWithSynapses
  • CreatedBy — extend to Circuit subtypes, EMCellMesh, EModel, IonChannelModel, Simulation, SimulationCampaign subtypes
  • Contributions / InstitutionalContributions — fix broken order config (contribution__order_by/pref_labelorder_by/contribution__pref_label), enable sorting
  • IonChannel — fix order value (ion_channelion_channel__name)

model.tsx:

  • Enable sorting for CircuitNumberNeurons, CircuitNumberSynapses, CircuitNumberConnections, CircuitScale, CircuitBuildCategory
  • Add order config for TemperatureCelsius, IsLjpCorrected, IsStochastic, IsTemperatureDependent (IonChannelModel)
  • Extend NumberConnections sorting to MEModelWithSynapses
  • Enable sorting for ArtifactPublishedIn, ArtifactExperimentDate (Circuit)

experimental.tsx:

  • Enable sorting for MeshType (EMCellMesh)
  • Extend MType sorting to Memodel
  • Enable sorting for EType on IonChannelRecording, ExperimentalNeuronDensity, and Memodel
  • Add order config for IonChannel, Temperature, CellLine (IonChannelRecording)
  • Enable sorting for NumberOfMeasurements, MeanSTD, Sem (ExperimentalBoutonDensity)
  • Enable sorting for PreSynapticBrainRegion, PostSynapticBrainRegion, PreSynapticCellType, PostSynapticCellType (ExperimentalSynapsesPerConnection)

experiment.tsx:

  • Remove duplicate CircuitNumberNeurons, CircuitNumberSynapses, CircuitNumberConnections definitions (now in model.tsx)

Disable sorting in circuit hierarchy view

  • use-data-table-columns.tsx — gate isSortable on setSortState being provided; fix stale sort-state closure via ref; simplify sortDirections to ['ascend', 'descend']
  • circuit/index.tsx — pass undefined for sortState/setSortState in hierarchy view

Test plan

  • Open Circuit, IonChannelModel, IonChannelRecording, EMCellMesh, EModel, CellMorphology tables and verify sort arrows on new columns
  • Click sort and confirm correct order_by param in network requests
  • Switch circuit table to hierarchy view — sort arrows should be hidden
  • Switch back to flat view — sort arrows reappear and work
  • Open ME-Model table — verify sort arrows on M-Type, E-Type columns
  • Open Bouton Density table — verify sort arrows on Mean ± STD, SEM, N° of Measurements columns
  • Open Synapses per Connection table — verify sort arrows on Brain Region [From/To], Cell Type [From/To] columns
  • Open Circuit table — verify sort arrows on Published in, Experiment date columns

@pgetta pgetta self-assigned this Mar 20, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 20, 2026

Preview Deployment

Branch Status Preview Updated
feat/extend-list-ordering-props ❌ Deleted - Apr 22, 2026 at 2:27 PM (UTC)

@pgetta pgetta requested a review from a team March 20, 2026 13:38
@pgetta
Copy link
Copy Markdown
Collaborator Author

pgetta commented Mar 20, 2026

FYI, @jdcourcol

bilalesi
bilalesi previously approved these changes Mar 20, 2026
Copy link
Copy Markdown
Collaborator

@bilalesi bilalesi left a comment

Choose a reason for hiding this comment

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

👍

@jdcourcol
Copy link
Copy Markdown
Contributor

cool I will give it a try

@jdcourcol
Copy link
Copy Markdown
Contributor

wow, it is very slow now.

@pgetta
Copy link
Copy Markdown
Collaborator Author

pgetta commented Mar 23, 2026

@jdcourcol do you think we should we asses ways to improve performance and address the issue before merging this or it's "fine" as is?

@jdcourcol
Copy link
Copy Markdown
Contributor

we definitely have a performance issue. probably, @bilalesi PR related to facets should improve the situation.

Also, I notice we have to add additional sorting fields to entitycore, I will follow up on this.

@jdcourcol
Copy link
Copy Markdown
Contributor

for ion channel recordings we are missing the following:
grafik

@jdcourcol
Copy link
Copy Markdown
Contributor

for neuron density, we are missing the following:
grafik

@pgetta pgetta force-pushed the feat/extend-list-ordering-props branch from fd3e4ce to f8b2fbf Compare March 27, 2026 13:46
@pgetta
Copy link
Copy Markdown
Collaborator Author

pgetta commented Mar 27, 2026

@jdcourcol thank you, sorting for both: ion channel recordings and neuron density should be addressed now, I've enabled missing columns.

@pgetta
Copy link
Copy Markdown
Collaborator Author

pgetta commented Apr 10, 2026

@pgetta pgetta force-pushed the feat/extend-list-ordering-props branch from f8b2fbf to 83d92ec Compare April 10, 2026 09:35
@pgetta pgetta force-pushed the feat/extend-list-ordering-props branch from 4b2543d to 41b273f Compare April 20, 2026 08:30
@pgetta
Copy link
Copy Markdown
Collaborator Author

pgetta commented Apr 22, 2026

Thank you Bilal

@pgetta pgetta merged commit b78d8ce into main Apr 22, 2026
5 checks passed
@pgetta pgetta deleted the feat/extend-list-ordering-props branch April 22, 2026 14:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants