* add bundle model and query logic
* cleanup tests
* add basic form
* add success message
* Add form tests
* Add bundle list view
* fix edit view
* Add remove button
* Add basic preview logic
* Make pagination use absolute URLs
* Hide bookmark edits when rendering preview
* Render bookmark list in preview
* Reorder bundles
* Show bundles in bookmark view
* Make bookmark search respect selected bundle
* UI tweaks
* Fix bookmark scope
* Improve bundle preview
* Skip preview if form is submitted
* Show correct preview after invalid form submission
* Add option to hide bundles
* Merge new migrations
* Add tests for bundle menu
* Improve check for preview being removed
* return updated HTML from bookmark actions
* open details through URL
* fix details update
* improve modal behavior
* use a frame
* make behaviors properly destroy themselves
* remove page and details params from tag urls
* use separate behavior for details and tags
* remove separate details view
* make it work with other views
* add asset actions
* remove asset refresh for now
* remove details partial
* fix tests
* remove old partials
* update tests
* cache and reuse tags
* extract search autocomplete behavior
* remove details param from pagination
* fix tests
* only return details modal when navigating in frame
* fix link target
* remove unused behaviors
* use auto submit behavior for user select
* fix import
* 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
* Make shared view public, add user profile fallback
* Allow unauthenticated access to shared bookmarks API
* Link shared bookmarks in unauthenticated layout
* Add public sharing setting
* Only show shared bookmarks link if there are publicly shared bookmarks
* Disable public sharing if sharing is disabled
* Show specific helper text when public sharing is enabled
* Fix tests
* Add more tests
* Improve setting description
* Allow marking bookmarks as shared
* Add basic share view
* Ensure tag names in tag cloud are unique
* Filter shared bookmarks by user
* Add link for filtering by user
* Prevent n+1 queries when rendering bookmark list
* Prevent empty query params in return URL
* Fix user select template tag name
* Create shared bookmarks through API
* List shared bookmarks through API
* Show bookmark suggestions for shared view
* Show unique tags in search suggestions
* Sort user options
* Add bookmark sharing feature flag
* Add test for share setting default
* Simplify settings view