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

Data picker #41175

Merged
merged 33 commits into from
May 17, 2024
Merged

Data picker #41175

merged 33 commits into from
May 17, 2024

Commits on Apr 4, 2024

  1. Configuration menu
    Copy the full SHA
    8c6cdd9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9430478 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    219506f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2b8fe78 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    38ac092 View commit details
    Browse the repository at this point in the history

Commits on Apr 9, 2024

  1. Configuration menu
    Copy the full SHA
    cf714ca View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1630fb2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7d639bb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    253c617 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f1ed209 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    108c51d View commit details
    Browse the repository at this point in the history
  7. Table Picker (#40509)

    * Generic types
    
    * Generic types
    
    * Generic types + make generateKey a prop
    
    * Generic types
    
    * Extract AutoScrollBox.styled.tsx
    
    * Move AutoScrollBox to a separate directory
    
    * Generic types
    
    * Generic types
    
    * Generic types
    
    * Unhookify searchFilter
    
    * Generic types
    
    * Generic types
    
    * Generic types
    
    * Generic types
    
    * Generic types
    
    * Generic types
    
    * Generic types
    
    * Generic types
    
    * Finish dealing with a cast
    
    * Destructure import
    
    * Inline type
    
    * Generic types
    
    * Remove cast
    
    * Remove commented code
    
    * Remove redundant fallback
    
    * Move CollectionPicker out of EntityPicker
    
    * Avoid as unknown
    
    * Remove TODOs
    
    * Rename TisFolder to IsFolder
    
    * Fix any
    
    * Fix anys
    
    * Remove NestedItemPicker's storybook
    
    * Remove a cast
    
    * Remove a cast
    
    * Remove a cast
    
    * Revert "Remove a cast"
    
    This reverts commit b762d0f.
    
    * Use extends SearchModelType instead of extends string everywhere
    
    * Revert "Use extends SearchModelType instead of extends string everywhere"
    
    This reverts commit 708190d.
    
    * Fix SearchResult["available_models"] type
    
    * Handle options.allowCreateNew
    
    * Add missing description attribute to Database type
    
    * Move allowCreateNew to CollectionPickerOptions
    
    * Add missing description attribute in Database mock
    
    * Add types
    
    * Add TableList component
    
    * Add SchemaList component
    
    * Fix naming
    
    * Add DatabaseList component
    
    * Add NotebookDataItemPickerResolver
    
    * Fix typing
    
    * Add TablePicker and NotebookDataPickerModal
    
    * Update types
    
    * Fix types
    
    * Add folder type
    
    * Fix initial state
    
    * Update title
    
    * Make query model-dependent
    
    * Render tables
    
    * Fix schema icon
    
    * Adjust key generation
    
    * Rename utilts to utils
    
    * Use ItemList error prop
    
    * Use value prop
    
    * Rename NotebookDataPickerModal to DataPickerModal
    
    * Automatically open datapicker if there is no value
    
    * Highlight current item
    
    * Rename value to initial value
    
    * Fix item highlighting
    
    * Rework TablePicker state
    
    * Leave TODOs for names
    
    * Fix selecting items
    
    * Fix highlighting selected item
    
    * Hide confirmation button
    
    * Add fetchMetadata to tableApi
    
    * Fix Table['schema'] type
    
    * Fetch table metadata upon selection
    
    * Remove options from DataPickerModal
    
    * Fix collectionId typing in Question
    
    * Add collectionId prop
    
    * Remove title prop
    
    * Add todo
    
    * Fix confirmation button
    
    * Remove old DataSourceSelector
    
    * Bring back useSchemaListQuery
    
    * Fix crash
    
    * Fix picker not opening
    
    * Hide dbs list and schemas list if there's only 1
    
    * Remove unused ref
    
    * Remove unused DataPickerListResolver
    
    * Remove unused types
    
    * Change conditional rendering to allow for loading state
    
    * Revert collection-related changes
    
    * Use RTK
    
    * Avoid using stale data
    
    * Fix highlighted db
    
    * Remove todo
    
    * Remove unused type
    
    * Remove useSchemaListQuery
    
    * Rename Value to TablePickerValue
    
    * Move isValueEqual to utils and rename it to isTablePickerValueEqual
    
    * Improve TODO
    
    * Remove unused options prop
    
    * Introduce tablePickerValueFromTable
    
    * Avoid having 2 table metadata requests
    
    * Update comment
    
    * Update comment
    
    * Remove unused function
    
    * Allow null in tablePickerValueFromTable
    
    * Extract helpers
    
    * Rename schemaId to schemaName
    
    * Remove description
    
    * Improve naming
    
    * Simplify types
    
    * Add explanatory comments
    
    * Fall back to empty state when there are no items
    
    * Account for null schemas
    
    * Account for null schema in tests
    
    * Revert "Account for null schema in tests"
    
    This reverts commit 0c96d1c.
    
    * Revert "Account for null schemas"
    
    This reverts commit 4f5c4e9.
    
    * Improve typing around schema name
    
    * Refactor auto-select logic
    
    * Refactor
    
    * Avoid comment
    
    * Make useAutoSelectOnlyItem generic
    
    * Do not enforce presence of at least 1 tab with TypeScript
    
    * Fix types
    
    * Remove obsolete comment
    kamilmielnik committed Apr 9, 2024
    Configuration menu
    Copy the full SHA
    5f7f09c View commit details
    Browse the repository at this point in the history

Commits on Apr 19, 2024

  1. Configuration menu
    Copy the full SHA
    9e8b15b View commit details
    Browse the repository at this point in the history

Commits on May 6, 2024

  1. Configuration menu
    Copy the full SHA
    648161e View commit details
    Browse the repository at this point in the history
  2. Post-merge fix

    kamilmielnik committed May 6, 2024
    Configuration menu
    Copy the full SHA
    7751e08 View commit details
    Browse the repository at this point in the history

Commits on May 7, 2024

  1. Integrate QuestionPicker in DataPicker (#42268)

    * Add question and model pickers to Data Picker
    
    * Add model attribute to data picker value
    
    * Introduce DataPickerValue
    
    * Start with the right tab when opening data picker modal
    
    * Do not use stale sourceCard value
    
    * Fix switching tabs when a table is selected
    
    * Use undefined instead of null for consistency
    
    * Do not show models/questions tabs when there are no models/questions
    
    * Fix selecting models/questions in search results
    
    * Remove dead code
    
    * Remove dead code
    
    * Ignore selecting collections
    
    * Refactor useHasModels and useHasQuestions into useAvailableData
    
    * Use models param to speed up the query
    kamilmielnik committed May 7, 2024
    Configuration menu
    Copy the full SHA
    78fef21 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e56b5cd View commit details
    Browse the repository at this point in the history
  3. Do not require onConfirm prop in EntityPickerModal (#42317)

    * Make onConfirm prop optional
    
    * Add a test for onConfirm prop assertion
    kamilmielnik committed May 7, 2024
    Configuration menu
    Copy the full SHA
    424faeb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ff2633c View commit details
    Browse the repository at this point in the history

Commits on May 8, 2024

  1. Table does not appear selected in single-schema dbs (#42336)

    * Convert useAutoSelectOnlyItem arguments to param object
    
    * Disable auto-selection when there already is a selection
    kamilmielnik committed May 8, 2024
    Configuration menu
    Copy the full SHA
    b5f2b2e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    35efdf2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    df8aef3 View commit details
    Browse the repository at this point in the history

Commits on May 10, 2024

  1. Use DataPicker in JoinTablePicker (#42330)

    * Refactor DataStep:
    - rename handleTableSelect to handleTableChange
    - extract value and memoize it
    
    * Remove redundant fragment
    
    * Add new DataPicker props
    
    * Use DataPickerModal in JoinTablePicker
    
    * Remove initialTab prop since the default tab is always the models tab anyway
    
    * Limit table selection to particular database
    
    * Limit search results to a given database
    
    * Support databaseId in useAvailableData
    
    * Filter collection items by databaseId
    
    * Use databaseId prop only for CollectionItemList component
    
    * Fix types
    
    * Fix filtering
    
    * Use useLatest for onChange
    
    * Fix typing
    
    * Introduce shouldShowItem and use it instead of databaseId prop
    
    * Improve PickerInfo type
    
    * Use MLv2 to generate DataPickerModal value in JoinTablePicker
    
    * Fix title
    
    * Add isModel to TableDisplayInfo
    
    * Add a hack to populate query metadata with info that table is a model
    kamilmielnik committed May 10, 2024
    Configuration menu
    Copy the full SHA
    31f7aaf View commit details
    Browse the repository at this point in the history

Commits on May 13, 2024

  1. Configuration menu
    Copy the full SHA
    c468640 View commit details
    Browse the repository at this point in the history

Commits on May 14, 2024

  1. Configuration menu
    Copy the full SHA
    58c6e10 View commit details
    Browse the repository at this point in the history

Commits on May 15, 2024

  1. Configuration menu
    Copy the full SHA
    c15f813 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b1a86b0 View commit details
    Browse the repository at this point in the history

Commits on May 17, 2024

  1. Configuration menu
    Copy the full SHA
    9d16696 View commit details
    Browse the repository at this point in the history
  2. Update Data Picker tests (#42565)

    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Fix metadata loading
    
    * Update test
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Update test
    
    * Update test and make it pass
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Use entityPickerModal() instead of modal()
    
    * Use entityPickerModal() instead of modal()
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Revert change that broke tests
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Remove test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Update test
    
    * Rename createDatabaseIdItemFilter to createShouldShowItem
    
    * Update test
    
    * Update and skip a test
    
    * Remove test
    
    * Update tests
    
    * Update tests
    
    * Update tests
    
    * Remove test
    
    * Update tests
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Extract utils
    
    * Use helpers
    
    * Extract helpers
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Filter out collections that do not have card or dataset
    
    * Improve filtering
    
    * Always show root and personal collections, see #42687
    
    * Remove failing assertion
    
    * Update tests
    
    * Use entityPickerModalTab
    
    * Accept strings in pickEntity
    
    * Use entityPickerModalLevel
    
    * Use entityPickerModalTab
    
    * Use entityPickerModalTab
    
    * Update tests
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Fix assertion
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Update tests
    
    * Update tests
    
    * Update test
    
    * Update test
    
    * Update tests
    - ensure database list gets loaded like in a real app
    
    * Update test
    
    * Update test
    kamilmielnik committed May 17, 2024
    Configuration menu
    Copy the full SHA
    818fc88 View commit details
    Browse the repository at this point in the history
  3. Integrate Recents tab in Data Picker (#42821)

    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Fix metadata loading
    
    * Update test
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Update test
    
    * Update test and make it pass
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Use entityPickerModal() instead of modal()
    
    * Use entityPickerModal() instead of modal()
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Revert change that broke tests
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Remove test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Update test
    
    * Rename createDatabaseIdItemFilter to createShouldShowItem
    
    * Update test
    
    * Update and skip a test
    
    * Remove test
    
    * Update tests
    
    * Update tests
    
    * Update tests
    
    * Remove test
    
    * Update tests
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Extract utils
    
    * Use helpers
    
    * Extract helpers
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Update test
    
    * Filter out collections that do not have card or dataset
    
    * Improve filtering
    
    * Always show root and personal collections, see #42687
    
    * Remove failing assertion
    
    * Update tests
    
    * Use entityPickerModalTab
    
    * Accept strings in pickEntity
    
    * Use entityPickerModalLevel
    
    * Use entityPickerModalTab
    
    * Use entityPickerModalTab
    
    * Update tests
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Fix assertion
    
    * Update test
    
    * Update tests
    
    * Update test
    
    * Update tests
    
    * Update tests
    
    * Update test
    
    * Update test
    
    * Update tests
    - ensure database list gets loaded like in a real app
    
    * Update test
    
    * Enable recents tab and update tests
    
    * Update test
    
    * Update tests
    
    * Add Recents-related assertions
    
    * Update test
    
    * Clean up mocks
    kamilmielnik committed May 17, 2024
    Configuration menu
    Copy the full SHA
    d7b9c67 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ea06615 View commit details
    Browse the repository at this point in the history
  5. Update test

    kamilmielnik committed May 17, 2024
    Configuration menu
    Copy the full SHA
    7be0ce2 View commit details
    Browse the repository at this point in the history
  6. Use aria-selected instead of CSS for assertions in notebook-data-sour…

    …ce.cy.spec.ts (#42825)
    
    * Add aria-selected to ResultItem
    
    * Update assertions to use aria-selected attribute instead of css
    kamilmielnik committed May 17, 2024
    Configuration menu
    Copy the full SHA
    aa2e4d4 View commit details
    Browse the repository at this point in the history