-
- Downloads
[Epic] Search in selection in entity picker (#47755)
* Maintain selected folder state in Entity Picker (#47309) * Keep tabs mounted * Rename TablePicker onChange to onItemSelect to match QuestionPicker and also call it for folders * Inline small functions * Remove unused type * Rename * Remove TODOs * Remove duplication * Reduce diff * Rename * Lift state from TabsView * Remove redundant callback * Store folder state in DataPickerModal * Refactor computing tabs * Consolidate search tab definition with recents tab definition * Simplify computeInitialTab interface * Extract RECENTS_CONTEXT * Store tab state in DataPickerModal * Propagate initial tab state * Fix a flicker * Keep tab state in EntityPickerModal * Fix typing computeInitialTab * Remove Notebook prefix * Pass onItemSelect to individual tabs from EntityPickerModal * Auto select folder * Fix types * Adjust remaining tabs definitions to use render * Adjust tabs definitions to use render in tests * Fix inverted condition * Fix TS error * Fix types * Rename EntityTab to EntityPickerTab, TabId to EntityPickerTabId * Rename EntityTabRenderProps to EntityPickerTabRenderProps * Separate tab models from tab ids * ESLint * ESLint * Recognize folders inside EntityPickerModal * Add missing prop * Remove console.log * Simplify handleFolderSelect * Revert changes that will go to a different PR * Fix unit tests * Refactor * Remove keepMounted prop * Fix type * Remove useMemo from tabs computation (#47505) * Extract getTabs for DataPickerModal * Extract getTabs for EntityPickerModal * Add explicit return type * Revert "Add explicit return type" This reverts commit feb3f58c. * Revert "Extract getTabs for EntityPickerModal" This reverts commit 4e875a1f. * Revert "Extract getTabs for DataPickerModal" This reverts commit cdda8ea1. * Remove useMemo * Maintain tab state in Entity Picker (#47794) * Store picker path state in data picker modal * Adjust remaining QuestionPicker usages * Store collection picker state * Use dedicated onPathChange prop * Store dashboard picker state * Improve naming * Fix unit tests * Remove accidental code * Return to previously opened tab when search input is cleared in Entity Picker (#47798) * Restore previous tab when clearing search input * Add a unit test for new behavior * Update comment * Don't use effect * Add more tests * Reduce diff * Fix flakes * Change search input placeholder depending on selected folder & tab in Entity Picker (#47801) * Make TabFolderState generic, pass folder to EntityPickerSearchInput * Simplify interface * Extract getSearchInputPlaceholder * Reduce diff * Remove TODO * Implement it * Shorten code * Reduce diff * Use database to scope search if there's only 1 schema * Add scoped search in the Search tab in Entity Picker (#47839) * Cleanup entity picker search types (#48098) * Add e2e tests for local search in the entity picker (#48122) * Sync the value back into selectedItem when it changes * Await element * Handle empty tabs * Pick everywhere tab * Click Everywhere in unit tests * Use deep equality to sync value * Sync back the path value to the dashboard too * Run test as admin to avoid (unrelated) permissions issues * Filter scoped results too * Fix post-merge issues * Fix type issues * Fix null scoped search results * Sign in as admin to appease the tests * Use useDeepCompareEffect when syncing back state * Add default value for searchResultFilter to avoid double condition * Avoid using useEffect to sync selectedItem * Avoid overwriting path in useEnsureCollectionSelected * Fix e2e test --------- Co-authored-by:Alexander Polyankin <alexander.polyankin@metabase.com> Co-authored-by:
Romeo Van Snick <romeo@romeovansnick.be>
Showing
- e2e/support/cypress_sample_instance_data.js 18 additions, 0 deletionse2e/support/cypress_sample_instance_data.js
- e2e/support/test_tables.js 19 additions, 20 deletionse2e/support/test_tables.js
- e2e/test/scenarios/collections/permissions.cy.spec.js 3 additions, 1 deletione2e/test/scenarios/collections/permissions.cy.spec.js
- e2e/test/scenarios/custom-column/custom-column-reproductions.cy.spec.js 6 additions, 1 deletion...rios/custom-column/custom-column-reproductions.cy.spec.js
- e2e/test/scenarios/dashboard/dashboard.cy.spec.js 4 additions, 1 deletione2e/test/scenarios/dashboard/dashboard.cy.spec.js
- e2e/test/scenarios/models/models.cy.spec.js 37 additions, 47 deletionse2e/test/scenarios/models/models.cy.spec.js
- e2e/test/scenarios/onboarding/home/homepage.cy.spec.js 2 additions, 0 deletionse2e/test/scenarios/onboarding/home/homepage.cy.spec.js
- e2e/test/scenarios/organization/entity-picker.cy.spec.ts 1323 additions, 0 deletionse2e/test/scenarios/organization/entity-picker.cy.spec.ts
- e2e/test/scenarios/question-reproductions/reproductions-1.cy.spec.js 3 additions, 1 deletion...enarios/question-reproductions/reproductions-1.cy.spec.js
- e2e/test/scenarios/question-reproductions/reproductions-2.cy.spec.js 6 additions, 1 deletion...enarios/question-reproductions/reproductions-2.cy.spec.js
- e2e/test/scenarios/question/new.cy.spec.js 12 additions, 3 deletionse2e/test/scenarios/question/new.cy.spec.js
- frontend/src/metabase-types/api/collection.ts 2 additions, 1 deletionfrontend/src/metabase-types/api/collection.ts
- frontend/src/metabase/common/components/CollectionPicker/components/CollectionPicker.tsx 57 additions, 31 deletions...mponents/CollectionPicker/components/CollectionPicker.tsx
- frontend/src/metabase/common/components/CollectionPicker/components/CollectionPicker.unit.spec.tsx 19 additions, 7 deletions...ollectionPicker/components/CollectionPicker.unit.spec.tsx
- frontend/src/metabase/common/components/CollectionPicker/components/CollectionPickerModal.tsx 24 additions, 7 deletions...nts/CollectionPicker/components/CollectionPickerModal.tsx
- frontend/src/metabase/common/components/CollectionPicker/components/RootItemList.tsx 5 additions, 119 deletions...n/components/CollectionPicker/components/RootItemList.tsx
- frontend/src/metabase/common/components/CollectionPicker/hooks.ts 164 additions, 0 deletions.../src/metabase/common/components/CollectionPicker/hooks.ts
- frontend/src/metabase/common/components/CollectionPicker/index.ts 1 addition, 0 deletions.../src/metabase/common/components/CollectionPicker/index.ts
- frontend/src/metabase/common/components/CollectionPicker/types.ts 6 additions, 0 deletions.../src/metabase/common/components/CollectionPicker/types.ts
- frontend/src/metabase/common/components/CollectionPicker/utils.ts 2 additions, 2 deletions.../src/metabase/common/components/CollectionPicker/utils.ts
Loading
Please register or sign in to comment