* Add url create/edit query paramter to clear cache
* Add refresh bookmark metadata button in create/edit bookmark page
* Fix refresh bookmark metadata when editing existing bookmark
* Add bulk refresh metadata functionality
* Fix test cases for bulk view dropdown selection list
* Allow bulk metadata refresh when background tasks are disabled
* Move load preview image call on refresh metadata
* Update bookmark modified time on metadata refresh
* Rename function to align with convention
* Add tests for refresh task
* Add tests for bookmarks service refresh metadata
* Add tests for bookmarks api disable cache on check
* Remove bulk refresh metadata when background tasks disabled
* Refactor refresh metadata task
* Remove unnecessary call
* Fix testing mock name
* Abstract clearing metadata cache
* Add test to check if load page is called twice when cache disabled
* Remove refresh button for new bookmarks
* Remove strict disable cache is true check
* Refactor refresh metadata form logic into its own function
* move button and highlight changes
* polish and update tests
---------
Co-authored-by: Sascha Ißbrücker <sascha.issbruecker@gmail.com>
* 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
* Add basic bookmark notes
* Add bookmark list JS to shared bookmarks page
* Allow testing through ngrok
* Improve CSS
* Set notes through API
* Improve notes editing
* Improve notes icon
* Remove transitions for now
* Update keyboard shortcut
* Add bookmark list tests
* Add setting for showing notes permanently
* Add test for toggling notes
* Update API docs
* Allow searching for notes content
* Skip test
* 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>
* 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