* 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>
* Change app link to not use heading
* Use main and h1 for main content
* Update settings page structure
* Fix responsive styles
* Update bookmark form page structure
* Update auth page structure
* Add some basic page titles
* Expose side panel section
* Add page title for bookmark details
* Expose more sections
* Improve region names
* 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
* use client-side navigation
* update tests
* add setting for enabling link prefetching
* do not prefetch bookmark details
* theme progress bar
* cleanup behaviors
* update test
* Add basic HTML snapshots
* Implement asset list
* Add snapshot creation tests
* Add deletion tests
* Show file size
* Remove snapshots
* Create new snapshots
* Switch to single-file
* CSS tweak
* Remove auto refresh
* Show delete link when there is no file yet
* Add current date to display name
* Add flag for snapshot support
* Add option for disabling automatic snapshots
* Make snapshots sharable
* Document image variants
* Update README.md
* Add migrations
* Fix tests
* Add title to link so you can see the entire title when hover
* Tweak JS, styles
* Fix snapshot tests
---------
Co-authored-by: Sascha Ißbrücker <sascha.issbruecker@gmail.com>
* 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
* Add shared filter to bookmark search model
* Add shared filter UI
* Implement shared filter
* Add API test
* Use radio buttons
* Rename shared parameter
* Improve radio button CSS
* 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
* base.scss: Prevent zoom-in on focusing inputs on small viewports
Adding a media query which sets the font-size for `.form-input` inputs
to 1rem. This aims to prevent the zoom-in on small viewports on iOS
devics which automatically zoom-in a website if the font-size in a
focused input is smaller than 16px.
* Update bookmarks/styles/base.scss
---------
Co-authored-by: Sascha Ißbrücker <sascha.issbruecker@googlemail.com>
* 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>