-
Notifications
You must be signed in to change notification settings - Fork 948
indexeddb_index_manager.ts: move CSI code into its own class #7951
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
base: CsiTreeShake
Are you sure you want to change the base?
Conversation
|
Size Report 1Affected Products
Test Logs |
Size Analysis Report 1Affected Products
Test Logs |
Move the client-side indexing API in the
IndexManager
interface into a separate "plugin" interface, and add a nullable property toIndexManager
to store a reference to it. TheMemoryIndexManager
class easily implements this by setting the field to null. TheIndexedDbIndexManager
, however, is changed heavily to move all of the functions related to client-side indexing into a class implementing the new "plugin" interface. A later PR will further modify theIndexedDbIndexManaber
class to allow that new class, namedIndexManaberFieldIndexPlugin
, to be "installed" independently into an instance ofIndexedDbIndexManaber
so that it can be tree-shaken away if not used.This is the 2nd PR in a series of PRs that refactor the client-side indexing code to be tree-shakeable. The previous PR in this series is #7950.
Work In Progress
This PR is a work-in-progress. As of Jan 22, 2024, work on this PR has been de-prioritized but I'm leaving it here so it can be picked up in the future. Googlers see b/293449522 for details.