Kavita/UI/Web
Joseph Milazzo bbc48a5f5b
Infinite Scroll + List View + Cover Upload Redesign (#1319)
* Started with the redesign of the cover image chooser redesign to be less click intensive for volume/chapter images.

Made some headings bold in card detail drawer.

* Tweaked the styles

* Moved where the info cards show

* Added an ability to open a page settings drawer

* Cleaned up some old code that isn't needed anymore.

* Started implementing a list view. Refactored some title code to a dedicated component

* List view implemented but way too many API calls. Either need caching or adjusting the SeriesDetail api.

* Fixed a bug where if the progress bar didn't render on a card item while a download was in progress, the download indicator would be removed.

* Large refactor to move a lot of the needed fields to the chapter and volume dtos for series detail. All fields are noted when only used in series detail.

* Implemented cards for other tabs (except related)

* Fixed the unit test which needed a mocked reader service call.

* More cleanup around age rating and removing old code from the refactor. Commented out sorting till i feel motivated to work on that.

* Some cleanup and restored cards as initial layout. Time to test this out and see if there is value add.

* Added ability for Chapters tab to show the volume chapters belong to (if applicable)

* Adding style fixes

* Cover image updates, don't allow the first image (which is what is currently set) to respond to cover changes.

Hide the ID field on list item for series detail.

* Refactored the title for list item to be injectable

* Cleaned up the selection code to make it less finicky on mobile when tap scrolling.

* Refactored chapter tab to show volume as well on list view.

* Ensure word count shows for Volumes

* Started adding virtual scrolling, pushing up so Robbie can mess around

* Started adding virtual scrolling, pushing up so Robbie can mess around

* Fixed a bug where all chapters would come under specials

* Show title data as accent if set.

* Style fixes for virtual scroller

* Restyling scroll

* Implemented a way to show storyline with virtual scrolling

* Show Word Count for chapters and cleaned up some logics.

* I might have card layout working with virtual scroll code.

* Some cleanup to hide more system like properties from info bar on series detail page. Fixed some missing time estimate info on storyline chapters.

* Fixed a regression on series service when I integrated VolumeTitle.

* Refactored read time to the backend. Added WordCount to the volume itself so we don't need to calculate on frontend. When asking to analyze files from a series, force the calculation.

* Fixed SeriesDetail api code

* Fixed up the code in the drawer to better update list/card mode

* Basic infinite scroll implemented, however due to how we are updating the list to render, we are re-rending cards that haven't been touched.

* Updated how we render and layout data for infinite scroll on library detail. It's almost there.

* Started laying foundation for loading pages backwards.

Removed lazy loading of images since we are now using virtual paging.

* Hooked in some basic code to allow user to load a prev page with infinite scroll.

* Fixed up series detail api and undid the non-lazy loaded images.

Changed the router to help with this infinite loading on Firefox issue.

* Fixed up some naming issues with Series Detail and added a new test.

* This is an infinite scroll without pagination implementation. It is not fully done, but off to a good start. Virtual scroller with jump bar is working pretty well, def needs more polishing and tweaking. There are hacks in this implementation that need to be revisited.

* Refactored code so that we don't use any pagination and load all results by default.

* Misc code cleanup from build warnings.

* Cleaned up some logic for how to display titles in list view.

* More title cleanup for specials

* Hooked up page layout to user preferences and renamed an existing user pref name to match the dto.

* Swapped out everything but storyline with virtual-scroller over CDK

* Removed CDK from series detail.

* Default value for migration on page layout

* Updating card layout for library detail page

* fixing height for mobile

* Moved scrollbar

* Tweaked some styling for layouts when there is no data

* Refactored the series cards into their own component to make it re-usable.

* More tweaks on series info cards layout and enhanced a few pages with trackby functions.

* Removed some dead code

* Added download on series detail to actionables to fit in with new scroll strategy.

* Fixed language not being updated and sent to the backend for series update.

* Fixed a bad migration (if you ran any prior migration in this branch, you need to undo before you use this commit)

* Adding sticky tabs

* fixed mobile gap on sticky tab

* Enhanced the card title for books to show number up front.

* Adjusted the gutters on admin dashboard

* Removed debug code

* Removing duplicate book title

* Cleaned up old references to cdk scroller

* Implemented a basic jump bar scaling algorithm. Not perfect, but works pretty well.

* Code smells

Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>
2022-06-13 14:37:49 -07:00
..
.github/workflows On Deck + Misc Fixes and Changes (#1215) 2022-04-11 15:43:40 -07:00
e2e On Deck + Misc Fixes and Changes (#1215) 2022-04-11 15:43:40 -07:00
src Infinite Scroll + List View + Cover Upload Redesign (#1319) 2022-06-13 14:37:49 -07:00
storage On Deck + Misc Fixes and Changes (#1215) 2022-04-11 15:43:40 -07:00
.gitignore On Deck + Misc Fixes and Changes (#1215) 2022-04-11 15:43:40 -07:00
adminStorageState.json On Deck + Misc Fixes and Changes (#1215) 2022-04-11 15:43:40 -07:00
angular.json v0.5.2 - UX Refresh, Custom Themes, Metadata Editing, and OPDS updates! (#1189) 2022-04-02 10:11:07 -07:00
global-setup.ts On Deck + Misc Fixes and Changes (#1215) 2022-04-11 15:43:40 -07:00
LICENSE The big one (#396) 2021-07-17 14:03:11 -05:00
nonAdminStorageState.json On Deck + Misc Fixes and Changes (#1215) 2022-04-11 15:43:40 -07:00
package-lock.json Infinite Scroll + List View + Cover Upload Redesign (#1319) 2022-06-13 14:37:49 -07:00
package.json Infinite Scroll + List View + Cover Upload Redesign (#1319) 2022-06-13 14:37:49 -07:00
playwright.config.ts On Deck + Misc Fixes and Changes (#1215) 2022-04-11 15:43:40 -07:00
README.md On Deck + Misc Fixes and Changes (#1215) 2022-04-11 15:43:40 -07:00
setupJest.ts The big one (#396) 2021-07-17 14:03:11 -05:00
tsconfig.app.json The big one (#396) 2021-07-17 14:03:11 -05:00
tsconfig.json v0.4.6 Release (#599) 2021-09-26 10:33:35 -07:00
tsconfig.spec.json The big one (#396) 2021-07-17 14:03:11 -05:00
tslint.json The big one (#396) 2021-07-17 14:03:11 -05:00

Kavita Webui

This project was generated with Angular CLI version 11.0.0.

Development server

Run ng serve for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

Code scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Build

Run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Running unit tests

Run ng test to execute the unit tests via Karma.

Running end-to-end tests

Run ng e2e to execute the end-to-end tests via Protractor.

Run npx playwright test --reporter=line or npx playwright test to run e2e tests.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI Overview and Command Reference page.