* 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
* feat - Allow tag_string as query for BookmarkForm in order to set tags via bookmark snippets
* add test
---------
Co-authored-by: Sascha Ißbrücker <sascha.issbruecker@gmail.com>
* 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
* Extract asset logic
* Allow disabling HTML snapshot when creating bookmark
* Add endpoint for uploading singlefile snapshots
* Add URL parameter to disable HTML snapshots
* Allow using asset list in base Docker image
* Expose app version through profile
* add ability to cutomize claim user for username generation on oidc login
* update documentation with new OIDC options
* oidc: also normalize custom claim as username
* improve tests
* improve docs
* some more cleanup
---------
Co-authored-by: Sascha Ißbrücker <sascha.issbruecker@gmail.com>
* add LAST_MODIFIED attribute when exporting
* complement test_exporter for LAST_MODIFIED attribute
* parse LAST_MODIFIED attribute when importing
* use bookmark date_added when no modified date is parsed, otherwise use parsed datetime.
* complement test_parser and test_importer for LAST_MODIFIED attribute
* cleanup tests a bit
---------
Co-authored-by: Sascha Ißbrücker <sascha.issbruecker@gmail.com>