Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
If you are a heavy tags user you may run into performance issues.
Especially the user interface is somewhat unusable with a large number of tags.
The tag multi select loads all tags via dav. Filtering is done by select2.
I expect the vue migration to fix some of those issues.
This PR addresses some low hanging fruits:
e1d9b0b: Add minimumInputLength for select2. This will delay the loading of the tags by a few keystrokes. It does not improve the performance but it feels a bit less sluggish. But a minimum input length is also a breaking change and everyone using short tags is probably very unhappy about this 😕 ❓
1bfac6d: When you start typing tags are fetched via xhr.
fetched
is there to keep track if the data was loaded already. However we have 3 states: not loaded, loading and loaded. If the user continues to type andfetched
is false another xhr request is started. This commit is here to address the loading state and prevent another xhr request.79b4c4f: It's an optional change. Adding 10k dom elements put some pressure on my browser. I'm not familiar with select2 and the internals however in my tests I noticed that we emit a deprecation warning for each tag. I rewrote getDescriptiveTag and it seems to help a little bit.
Add 10k tags via occ: