You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Our DataSelector component became pretty fragile and hard to work with time as new functionality was added. Here are a few things it's doing:
letting users pick databases, schemas, tables, and fields (for both real and virtual data sources; virtual = saved questions represented as tables)
doing all the necessary data loading + various states handling (loading, error, empty, lacking permissions, etc.)
search (FE-only or via /api/search endpoint)
virtualizing long lists of data
scoping the picker to a particular database/schema/table
DataSelector became pretty hard to modify and extend. On top of that, it's pretty far from our code quality bar on the FE which is troubling as the component is pretty important and often used.
Proposal
During the Metabase 45 cycle, we've implemented a brand new picker for data app scaffolding. It doesn't support all the DataSelector use cases yet, but it's pretty close. It might be worth adding the missing features and replacing the legacy component with a new one.
The new component is called DataPicker and is stored under metabase/containers on the data-apps-main branch (source code).
Our
DataSelector
component became pretty fragile and hard to work with time as new functionality was added. Here are a few things it's doing:/api/search
endpoint)DataSelector
became pretty hard to modify and extend. On top of that, it's pretty far from our code quality bar on the FE which is troubling as the component is pretty important and often used.Proposal
During the Metabase 45 cycle, we've implemented a brand new picker for data app scaffolding. It doesn't support all the
DataSelector
use cases yet, but it's pretty close. It might be worth adding the missing features and replacing the legacy component with a new one.The new component is called
DataPicker
and is stored undermetabase/containers
on thedata-apps-main
branch (source code).Implementation Plan
Done before (for data apps)
Blockers
No blockers on the product/design side
Nice to haves to achieve full feature parity
Replacing Data Selector
Admin
DatabaseDataSelector
inMetadataHeader
DatabaseSchemaAndTableDataSelector
inFilteredToUrlTable
DatabaseSchemaAndTableDataSelector
inGuiQueryEditor
Query Builder
SchemaTableAndFieldDataSelector
inMappedFieldPicker
(model metadata editor)DataSelector
inDataSourceSelectors
(native query editor)CollectionDatasetOrDataSourceSelector
inDataStep
(starting data picker in notebook editor) #40437DataSourceSelector
inJoinStep
(notebook editor)SchemaTableAndFieldDataSelector
inTagEditorParam
(native query editor)DataSourceSelector
inQuestionDataSelector
Wrapping up
DataSelector
Related Issues
/api/database
yet #21511The text was updated successfully, but these errors were encountered: