Foreign key dropdown instead of modal picker #2315
Labels
discussion required
requires a discussion before moving forward
recordedit
UI
problems related to UI
This feature request came from a discussion in slack:
https://usc-isi.slack.com/archives/G26GW934G/p1684792540256319
In recordedit app, we want to have a way to configure foreign key columns to show as a dropdown instead of a modal picker when there is a small set of terms (can be the case for vocabularies or small sets of related entities).
How to configure this:
Configuration for this "display mode" should be available contextualized to the recordedit app and allow for being defined at different levels of the model document. This display mode might be defined for a whole catalog or a single selector.
1. Add option to
display
oftag:isrd.isi.edu,2016:foreign-key
Adding the property directly on the foreign key relationship allows for direct configuration of each foreign key relationship. This would be defined where another similar property is defined,
show_foreign_key_link
. Doesn't allow for this to be bulk defined at thetable
,schema
, orcatalog
level.'From' is a pointer from A 'to' B (A -> B)
think about (A -> B -> C)
Name for the property to add:
related to "To field":
related to "From field":
Property values to consider:
Other names for other contexts that we have:
entry
contextExample:
2. Add option to
tag:misd.isi.edu,2016:table-display
When
selector_ux_mode
is defined on a leaf table in a foreign key constraint, this controls the display mode of the foreign key inputs that end on this table.Example:
3. Add property to
display
property incolumn-directive
This allows for a different way to configure this property. This could be used for defining a display mode for a selector in one specific place instead of everywhere that column/foreign key relationship is defined. This allows for future support in
visible-foreign-keys
if we want to allow for a ux mode change indetailed
context.Example:
annotation inheritance
Inheritance for this property should be checking the most specific defined annotation to the last specific in the following order:
popup
)UX features to implement:
... load more
The text was updated successfully, but these errors were encountered: