1775 Commits

Author SHA1 Message Date
Joe Milazzo
e22d1bb348
Final Release Testing (#1796)
* Fix some wording

* Fixed up stats to have total info on hover

* Fixed up a stat card not having clickable hint
2023-02-18 05:49:15 -08:00
majora2007
21d773d4b8 Bump versions by dotnet-bump-version. 2023-02-18 02:08:59 +00:00
Joe Milazzo
30af73c4f2
Small Build Fix (#1795)
* Stop showing loading indicator when no next/prev chapter

* Fixed a bug where manage collections wasn't named correctly in UI.

* Slight tweaks on email flow

* Fixed a bug where we were grabbing wrong property for book layout mode

* Fixed an issue where pagination area wasn't properly spanning window on different scaling modes.

* Fixed a bug where right pagination area wasn't sticking to the right hand side on original scaling

* Added a note from reading an epub3

* Reworked some of the readme

* Changed the build to ci
2023-02-17 17:56:52 -08:00
majora2007
4d30fa1925 Bump versions by dotnet-bump-version. 2023-02-18 00:06:12 +00:00
Joe Milazzo
c117d8dc04
Release Testing Part 2 (#1794)
* Stop showing loading indicator when no next/prev chapter

* Fixed a bug where manage collections wasn't named correctly in UI.

* Slight tweaks on email flow

* Fixed a bug where we were grabbing wrong property for book layout mode

* Fixed an issue where pagination area wasn't properly spanning window on different scaling modes.

* Fixed a bug where right pagination area wasn't sticking to the right hand side on original scaling

* Added a note from reading an epub3

* Reworked some of the readme
2023-02-17 15:48:46 -08:00
majora2007
2c4b94cfc3 Bump versions by dotnet-bump-version. 2023-02-16 12:52:29 +00:00
Joe Milazzo
00f153d8ea
Release Testing Bugs (#1790)
* Stop showing loading indicator when no next/prev chapter

* Fixed a bug where manage collections wasn't named correctly in UI.

* Slight tweaks on email flow
2023-02-16 04:39:40 -08:00
majora2007
e50f5ece1e Bump versions by dotnet-bump-version. 2023-02-12 21:27:24 +00:00
Joe Milazzo
bdd2a0a26a
Release Testing Time (#1785)
* Fixed a bug with getting continue point where there was a single volume unread and a later volume with chapters inside it, the chapters were being picked.

* Fixed a bug where resuming from jump key wasn't working (develop)

* Cleaned up the spacing
2023-02-12 13:14:13 -08:00
majora2007
0de927dee4 Bump versions by dotnet-bump-version. 2023-02-12 16:50:14 +00:00
Kupferhirn
11cb2cfb17
Allow changing listening ip addresses (#1713)
* Allow changing listening ip address

* Use Json serialize for appsettings.config saving

* BOM

* IP Address validation

* ip address reset

* ValidIpAddress regex
2023-02-12 08:37:46 -08:00
majora2007
01aed6ad99 Bump versions by dotnet-bump-version. 2023-02-12 16:31:49 +00:00
Joe Milazzo
3f24dc7392
Reading List Fixes (#1784)
* Add ability to save readinglist comicinfo fields in Chapter.

* Added the appropriate fields and migration for Reading List generation.

* Started the reading list code

* Started building out the CBL import code with some initial unit tests.

* Fixed first unit test

* Started refactoring control code into services and writing unit tests for ReadingLists. Found a logic issue around reading list title between create/update. Will be corrected in this branch with unit tests.

* Can't figure out how to mock UserManager, so had to uncomment a few tests.

* Tooltip for total pages read shows the full number

* Tweaked the math a bit for average reading per week.

* Fixed up the reading list unit tests. Fixed an issue where when inserting chapters into a blank reading list, the initial reading list item would have an order of 1 instead of 0.

* Cleaned up the code to allow the reading list code to be localized easily and fixed up a bug in last PR.

* Fixed a sorting issue on reading activity

* Tweaked the code around reading list actionables not showing due to some weird filter.

* Fixed edit library settings not opening on library detail page

* Fixed a bug where reading activity dates would be out of order due to a bug in how charts works. A temp hack has been added.

* Disable promotion in edit reading list modal since non-admins can (and should have) been able to use it.

* Fixed a bug where non-admins couldn't update their OWN reading lists. Made uploading a cover image for readinglists now check against the user's reading list access to allow non-admin's to set images.

* Fixed an issue introduced earlier in PR where adding chapters to reading list could cause order to get skewed.

* Fixed another regression from earlier commit

* Hooked in Import CBL flow. No functionality yet.

* Code is a mess. Shifting how the whole import process is going to be done. Commiting so I can pivot drastically.

* Very rough code for first step is done.

* Ui has started, I've run out of steam for this feature.

* Cleaned up the UI code a bit to make the step tracker nature easier without a dedicated component.

* Much flow implementation and tweaking to how validation checks and what is sent back.

* Removed import via cbl code as it's not done. Pushing to next release.
2023-02-12 08:20:51 -08:00
majora2007
ae1af22af1 Bump versions by dotnet-bump-version. 2023-02-11 12:11:35 +00:00
Joe Milazzo
7616eb5b0f
UTC Dates + CDisplayEx API Enhancements (#1781)
* Introduced a new claim on the Token to get UserId as well as Username, thus allowing for many places of reduced DB calls. All users will need to reauthenticate.

Introduced UTC Dates throughout the application, they are not exposed in all DTOs, that will come later when we fully switch over. For now, Utc dates will be updated along side timezone specific dates.

Refactored get-progress/progress api to be 50% faster by reducing how much data is loaded from the query.

* Speed up the following apis:
collection/search, download/bookmarks, reader/bookmark-info, recommended/quick-reads, recommended/quick-catchup-reads, recommended/highly-rated, recommended/more-in, recommended/rediscover, want-to-read/

* Added a migration to sync all dates with their new UTC counterpart.

* Added LastReadingProgressUtc onto ChapterDto for some browsing apis, but not all.

Added LastReadingProgressUtc to reading list items.

Refactored the migration to run raw SQL which is much faster.

* Added LastReadingProgressUtc onto ChapterDto for some browsing apis, but not all.

Added LastReadingProgressUtc to reading list items.

Refactored the migration to run raw SQL which is much faster.

* Fixed the unit tests

* Fixed an issue with auto mapper which was causing progress page number to not get sent to UI

* series/volume has chapter last reading progress

* Added filesize and library name on reading list item dto for CDisplayEx.

* Some minor code cleanup

* Forgot to fill a field
2023-02-11 04:01:24 -08:00
majora2007
36b48404c1 Bump versions by dotnet-bump-version. 2023-02-04 11:05:14 +00:00
Joe Milazzo
cad897015c
Stat Polish (#1775)
* SeriesGroup tag can now have comma separated value to allow a series to be a part of multiple collections.

* Added a missing unit test

* Refactored how collection tags are created to work in the scan loop reliably.

* Added a unit test for RemoveTagsWithoutSeries

* Fixed a bug in reading list title generation to avoid Volume 0 if the underlying file had a title set. Fixed a misconfigured unit test.

* On User stats page, don't show the user selector on reading history, despite if youre an admin. Cleaned up how we show days with 0 reading events to be more clear.

* Refactored the name of a component to reflect what it does

* Removed plugin not using

* Fix an issue where coalescing a key in epub might have multiple html files ending with the key. In this case, let's take the first.

* Added PikaPods to the Readme

* Tried to fix layout shift for charts, but need Robbie's help

* Chart styling

# Added:
- Added: Added styling to force charts into their respective containers.

# Removed:
- Removed: Removed code blocking charts from being visible on mobile.

* Merge conflict

---------

Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>
2023-02-04 02:53:21 -08:00
majora2007
c60fdcf6e0 Bump versions by dotnet-bump-version. 2023-02-04 00:37:08 +00:00
Domenic Fiore
da9d9424bc
Spelling, grammar, and related consistency improvements (#1756)
* Spelling, grammar, and word structure improvements

* Email service text reworded to account for the Host Name feature
2023-02-03 16:24:09 -08:00
majora2007
e39eabf9a1 Bump versions by dotnet-bump-version. 2023-02-03 13:06:17 +00:00
Joe Milazzo
8a0a2f0961
Scanner Performance Improvements (#1774)
* Refactored the Genre code to be faster and used a dictonary to avoid some lookups. May fix the rare foreign constraint issue.

* Refactored tag to the same implementation as Genre. Ensure when grabbing tags from ComicInfo, we normalize and throw out duplicates.

* Removed an internal "external" field that was planned for Genres and Tags, but now with new plugin architecture, not needed.
2023-02-03 04:52:51 -08:00
majora2007
48aebfc3c2 Bump versions by dotnet-bump-version. 2023-02-01 16:34:28 +00:00
Joe Milazzo
a76770b240
Auto Collection Bugfixes (#1769)
* SeriesGroup tag can now have comma separated value to allow a series to be a part of multiple collections.

* Added a missing unit test

* Refactored how collection tags are created to work in the scan loop reliably.

* Added a unit test for RemoveTagsWithoutSeries

* Fixed a bug in reading list title generation to avoid Volume 0 if the underlying file had a title set. Fixed a misconfigured unit test.
2023-02-01 08:22:02 -08:00
majora2007
e86694ea9a Bump versions by dotnet-bump-version. 2023-01-31 04:13:51 +00:00
Joe Milazzo
1da27f085c
Automatic Collection Creation (#1768)
* Made the unread badges slightly smaller and rounded on top right.

* A bit more tweaks on the not read badges. Looking really nice now.

* In order to start the work on managing collections from ScanLoop, I needed to refactor collection apis into the service layer and add unit tests.

Removed ToUpper Normalization for new tags.

* Hooked up ability to auto generate collections from SeriesGroup metadata tag.
2023-01-30 19:57:46 -08:00
Joe Milazzo
91a2a6854f
[skip ci] Misc stuff (#1766)
* Refactored some code in BookService to make the code easier to understand

* More lint fixes

* Use npm ci for installs in pipeline

* Fixed build system again by deleting nodejs. New build system uses package-lcok going forward.

* Added a test case for Reading Time Estimation calculations

* Some cleanup

* Added even more testing to try and get scare's issue captured.
2023-01-30 12:36:45 -08:00
majora2007
5b05568436 Bump versions by dotnet-bump-version. 2023-01-30 19:01:12 +00:00
Joe Milazzo
d09e458e85
Angular 15 (#1765)
* Refactored some code in BookService to make the code easier to understand

* More lint fixes

* Use npm ci for installs in pipeline

* Fixed build system again by deleting nodejs. New build system uses package-lcok going forward.
2023-01-30 10:47:34 -08:00
majora2007
72737ceff2 Bump versions by dotnet-bump-version. 2023-01-30 14:43:32 +00:00
Joe Milazzo
f64f232e51
Angular 15 (#1764)
* Updated ngx-virtual-scroller

* Removed the karma test config as it's breaking migration

* Reverted to pre angular 15

* Upgraded packages and reverted target to ES6 for older devices

* It's broken. Need to also find the safari version for old Ipads

* Fixes some code in default pipe and many updates to packages. Removed support for old iOS versions as it restricted Kavita from using newer features. Build still broken.

* More progress in getting build working on Angular 15. Removed polyfills.ts for new angular config

* Remove all.css for icons and use scss instead

* Removed stuff that isn't needed

* Migrated extended linting to eslint, ran on project and updated issues. Removed a duplicate component that did nothing. Fixed a few places where lifecycle hooks werent being called as interface wasn't implemented.

* App builds correctly. Source maps are still needed.

* Fixed source maps and removed more testing stuff. I will re-add later in another release when I figure out how to properly tackle dependencies on backend.

* Reverted back to old source map definition
2023-01-30 06:27:52 -08:00
majora2007
12d0ae6f2c Bump versions by dotnet-bump-version. 2023-01-30 09:01:34 +00:00
Joe Milazzo
5e9bbd0768
Holiday Bugfixes (#1762)
* Don't show "not much going on" when we are actively downloading

* Swipe to paginate is now behind a flag in the user preferences.

* Added a new server setting for host name, if the server sits behind a reverse proxy. If this is set, email link generation will use it and will not perform any checks on accessibility (thus email will always send)

* Refactored the code that checks if the server is accessible to check if host name is set, and thus return rue if so.

* Added back the system drawing library for markdown parsing.

* Fixed a validation error

* Fixed a bug where folder watching could get re-triggered when it was disabled at a server level.

* Made the manga reader loader absolute positioned for better visibility

* Indentation
2023-01-30 00:50:19 -08:00
majora2007
2a47029209 Bump versions by dotnet-bump-version. 2023-01-15 06:27:38 +00:00
Joe Milazzo
3e1d0f39f0
Stat hotfix (#1748)
* Fixed a bug where a divide by 0 could occur

* Email change now requires a password
2023-01-15 14:16:51 +08:00
majora2007
7e55134e6b Bump versions by dotnet-bump-version. 2023-01-13 01:35:17 +00:00
Joe Milazzo
549e52b458
Swipe Issues (#1745)
* Updated theme support to be able to customize the tile color dynamically from a theme via --tile-color. In addition, --theme-color will update apple-mobile-web-app-status-bar-style as well as the non-apple variants

* Removed --manga-reader-bg-color as it wasn't used anywhere. Fixed double pagination on swipe.

* Cleaned up some dead threshold code for swipe.

* Started refactoring tests to use an abstract test class. Stopping because I should do on the .net 7 branch to avoid large merge conflicts. Tests need to be re-designed so they can run in parallel.

* Fixed a bug in reading lists where when deleting an item, order could be miscalculated.

* Started adding new information for stat service. Refactored time spent reading to be more accurate by taking average time against how much of the chapter the user has read.

* Hooked up total time reading at server stat level. Don't show fancy graphs on mobile.

* Added new stats for v0.7

* Added a test for Clearing want to read

* Fixed a few tests that weren't resetting state between runs

* Fixed some broken unit tests

* Ensure all Series queries sort by a case invariant string.

* Added more aggressive caching of images. This will result in a min delay on pages after a cover is changed.

* Fixed a bug where if during new word count calculation, new word count is zero, restoring the old count wasn't working.

* Cleaned up some of the code for getting time estimates

* Fixed a bug where triggering swipe right wasn't working when there was no scroll

* Delete the temp folder for creating a download after a full zip is created.
2023-01-12 17:24:58 -08:00
majora2007
3d6de68089 Bump versions by dotnet-bump-version. 2023-01-11 14:24:00 +00:00
Joe Milazzo
5613d1a954
Better Themes, Stats, and bugfixes (#1740)
* Fixed a bug where when clicking on a series rating for first time, the rating wasn't populating in the modal.

* Fixed a bug on Scroll mode with immersive mode, the bottom bar could clip with the book body.

* Cleanup some uses of var

* Refactored text as json into a type so I don't have to copy/paste everywhere

* Theme styles now override the defaults and theme owners no longer need to maintain all the variables themselves.

Themes can now override the color of the header on mobile devices via --theme-color and Kavita will now update both theme color as well as color scheme.

* Fixed a bug where last active on user stats wasn't for the particular user.

* Added a more accurate word count calculation and the ability to see the word counts year over year.

* Added a new table for long term statistics, like number of files over the years. No views are present for this data, I will add them later.
2023-01-11 06:12:31 -08:00
majora2007
84b7978587 Bump versions by dotnet-bump-version. 2023-01-09 22:49:44 +00:00
Joe Milazzo
38cc601cc2
Fix pagination in Manga reader from last PR (#1736)
* Added a new Double (No Cover) rendering mode which always has first 2 pages together unless wide.

* Removed layout mode for build
2023-01-09 14:37:31 -08:00
majora2007
1ccfecde76 Bump versions by dotnet-bump-version. 2023-01-09 15:02:01 +00:00
Joe Milazzo
45b854e1d0
[Manga Reader] Swipe Support (#1735)
* Fixed a loading indicator that is always on

* Started to add swipe directive

* Implemented the ability to swipe to navigate pages in manga reader.

* Swipe to paginate seems to be working reliably

* Removed a bunch of junk from csproj and added a debug menu for testing on phone to smooth out experience.

* Fixed a bug where reading list detail wouldn't render the set image of the reading list.

* Added some instructions and code to allow connecting to dev instance easier.

* Fixed up paging with keyboard where to ensure that when we hit the end of the scroll, we don't go to the next page instantly, but rather make the user press the key once more.

* Fixed reading list image not properly renderering on reading list detail page.

* Solved the swiping bug, need to play with threshold again.

* Swipe is now working. Need to decide if I'm going to support reversing the direction with reading direction.

* Hooked up swipe with reading direction code

* Cleaned up some direction code to align to a new enum

* Feature complete
2023-01-09 06:48:18 -08:00
majora2007
e90ea4758a Bump versions by dotnet-bump-version. 2023-01-07 15:25:06 +00:00
Joe Milazzo
2464a30bc2
Manga Reader Work (#1729)
* Instead of augmenting prefetcher to move across chapter bounds, let's try to instead just load 5 images (which the browser will cache) from next/prev so when it loads, it's much faster.

* Trialing loading next/prev chapters 5 pages to have better next page loading experience.

* Tweaked GetChapterInfo API to actually apply conditional includeDimensions parameter.

* added a basic language file for upcoming work

* Moved the bottom menu up a bit for iOS devices with handlebars.

* Fixed fit to width on phones still having a horizontal scrollbar

* Fixed a bug where there is extra space under the image when fit to width and on a phone due to pagination going to far.

* Changed which variable we use for right pagination calculation

* Fixing fit to height

- Fixing height calc to account for horizontal scroll bar height.

* Added a comment for the height scrollbar fix

* Adding screenfull package

# Added:
- Added screenfull package to handle cross-platform browser fullscreen code

# Removed:
- Removed custom fullscreen code

* Fixed a bug where switching from webtoon reader to other layout modes wouldn't render anything. Webtoon continuous scroll down is now broken.

* Fixed it back to how it was and all is good. Need to call detectChanges explicitly.

* Removed an additional undeeded save progress call on loadPage

* Laid out the test case to move the page snapping to the backend with full unit tests. Current code is broken just like UI layer.

* Refactored the snap points into the backend and ensure that it works correctly.

* Fixed a broken unit test

* Filter out spammy hubs/messages calls in the logs

* Swallow all noisy messages that are from RequestLoggingMiddleware when the log level is on Information or above.

* Added a common loading component to the app. Have yet to refactor all screens to use this.

* Bump json5 from 2.2.0 to 2.2.3 in /UI/Web

Bumps [json5](https://github.com/json5/json5) from 2.2.0 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.0...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Alrigned all the loading messages and styles throughout the app

* Webtoon reader will use max width of all images to ensure images align well.

* On Original scaling mode, users can use the keyboard to scroll around the images without pagination kicking off.

* Removed console logs

* Fixed a public vs private issue

* Fixed an issue around some cached files getting locked due to NetVips holding them during file size calculations.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-07 09:14:22 -06:00
majora2007
22442d745c Bump versions by dotnet-bump-version. 2023-01-04 23:48:07 +00:00
Mike
6c1776c027
Docker nonroot (#1650)
* Added PUID, PGID and KAVITAUSER variable support in entrypoint.sh

* Update the setting of ownership to avoid changing library files

* Default to run as root, using user kavita if alternate UID/GID are provided

* Only chown config folder and only if needed

* Revert chmod on Kavita

Co-authored-by: Muggz <mug@passw0rd.org>
2023-01-04 15:38:33 -08:00
majora2007
ca649aa852 Bump versions by dotnet-bump-version. 2023-01-04 01:50:34 +00:00
Joe Milazzo
02daa5ed56
Feature/stats finishoff (#1720)
* Added ability to click on genres, tags, and people to view all items in a modal.

* Made it so we can click and open a filtered search from generic list

* Fixed broken epub pagination area due to a typo in a query selector

* Added day breakdown, wrapping up stats
2023-01-03 17:41:10 -08:00
majora2007
dfbc8da427 Bump versions by dotnet-bump-version. 2023-01-03 00:10:41 +00:00
Joe Milazzo
53c85f5f4c
Quick fix for Double Renderer (#1719)
* Disable emulate comic book when on single page reader

* Fixed a regression where double page renderer wouldn't layout the images correctly
2023-01-02 16:00:48 -08:00