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

Refactor LocalModList search/sort #1202

Merged
merged 7 commits into from
Feb 15, 2024
Merged

Refactor LocalModList search/sort #1202

merged 7 commits into from
Feb 15, 2024

Commits on Feb 15, 2024

  1. Configuration menu
    Copy the full SHA
    0182312 View commit details
    Browse the repository at this point in the history
  2. Move LocalModList sort options to VueX

    This is foundational work for other changes that aim to improve
    performance by continuing to split LocalModList to smaller components.
    anttimaki committed Feb 15, 2024
    Configuration menu
    Copy the full SHA
    16d7074 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    67ff929 View commit details
    Browse the repository at this point in the history
  4. Use v-model on DeferredInput

    The original implementation didn't support passing initial values to
    the input. This is required i.e. when the value should match value
    stored in VueX
    anttimaki committed Feb 15, 2024
    Configuration menu
    Copy the full SHA
    26aac80 View commit details
    Browse the repository at this point in the history
  5. Add SearchAndSort

    Extract the search bar functionality from LocalModList to standalone
    component. Unfortunately this yielded no performance benefits.
    anttimaki committed Feb 15, 2024
    Configuration menu
    Copy the full SHA
    4c0f1ff View commit details
    Browse the repository at this point in the history
  6. Use full localModList when determining mod's dependencies

    Previously modifiableModList was used. It was derived from localModList
    by sorting it. However, one of the sort options allows hiding disabled
    mods, meaning that the list might be missing an arbitrary number of
    mods.
    
    Instead use localModList which is guaranteed to include all the
    dependencies/dependants. This will change the functionality a bit by
    possibly changing the order of mods returned by methods that return
    lists of dependencies and dependants. Given how these results are used,
    I *assume* it won't matter that much for the rest of the functionality
    (since the order could already be quite arbitrary) or the user.
    anttimaki committed Feb 15, 2024
    Configuration menu
    Copy the full SHA
    c0cae0e View commit details
    Browse the repository at this point in the history
  7. Optimize ProfileModule.visibleModList getter

    Now that a separate orderedModList is no longer needed, we might as
    well combine the ordering and filtering into the same method, and do
    the fiiltering first to speed up ordering when searchQuery is used.
    anttimaki committed Feb 15, 2024
    Configuration menu
    Copy the full SHA
    21bce97 View commit details
    Browse the repository at this point in the history