* Add indicator for modified filters
* Rename shared filter values
* Add update search preferences handler
* Separate search and preferences forms
* Properly initialize bookmark search from get or post
* Add tests for applying search preferences
* Implement saving search preferences
* Remove bookmark search query alias
* Use search preferences as default
* Only show save button for authenticated users
* Only show modified indicator if preferences are modified
* Fix overriding search preferences
* Add missing migration
* Rename BookmarkFilters to BookmarkSearch
* Refactor queries to accept BookmarkSearch
* Sort query by data added and title
* Ensure pagination respects search parameters
* Ensure tag cloud respects search parameters
* Ensure user select respects search parameters
* Ensure return url respects search options
* Fix passing search options to user select
* Fix BookmarkSearch initialization
* Extract common search form logic
* Ensure partial update respects search options
* Add sort UI
* Use custom ICU collation when sorting with SQLite
* Support sort in API
* Extract bookmark view contexts
* Implement basic partial updates for bookmark list and tag cloud
* Refactor confirm button JS into web component
* Refactor bulk edit JS into web component
* Refactor tag autocomplete JS into web component
* Refactor bookmark page JS into web component
* Refactor global shortcuts JS into web component
* Update tests
* Add E2E test for partial updates
* Add partial updates for archived bookmarks
* Add partial updates for shared bookmarks
* Cleanup helpers
* Improve naming in bulk edit
* Refactor shared components into behaviors
* Refactor bulk edit components into behaviors
* Refactor bookmark list components into behaviors
* Update tests
* Combine all scripts into bundle
* Fix E2E CI
* Add links to remove tags from current query
* Display selected tags in tag cloud
* Add tag cloud tests
* Fix tag cloud in archive
* Add tests for bookmark views
* Expose parse query string
* Improve tag cloud tests
* Cleanup
* Fix rebase issues
* Ignore casing when removing tags from query
Co-authored-by: Jon Hauris <jonp@hauris.org>