* Updated Series Info Cards to use OnPush and hooked in progress events when we do a mark as read/unread on entities. These events update progress bars but also will now trigger a re-calculation on Read Time Left.
* Removed Library Card Component
* Refactored manga reader title and subtitle calculation to the backend.
* Coverted card actionables to onPush
* Series Card on push cleanup
* Updated edit collection tags for on push
* Update cover image chooser for on push
* Cleaned up carsouel reel
* Updated cover image to allow for uploading gif and webp files
* Bulk add to collection on push
* Updated bulk operation to use on push. Updated bulk operation to have mark as unread and read buttons explicitly. Updated so add to collection is visible and delete.
Fixed a bug where manage library component wasn't invoking the trackBy function
* Updating entity title for on push
* Removed file info component
* Updated Mange Library for on push
* Entity info cards on push
* List item on push
* Updated icon and title for on push and fixed some missing change detection on series detail
* Restricted the typeahead interface to simplify the design
* Edit Series Relation now shows a value in the dropdown for Parent relationships and disables the field.
* Updated edit series relation to focus on new typeahead when adding a new relationship
* Added some documentation and when Scanning a library, don't allow the user to enqueue the same job multiple times.
* Applied the No-enqueue if already enqueued logic to other tasks
* Library detail on push
* Updated events widget to onpush
* Card detail drawer on push. Card detail cover chooser now will show all chapter's covers for selection in cover chooser.
* Chapter metadata detail on push
* Removed Card Detail modal
* All collections on push
* Removed some comments
* Updated bulk selection to use an observable rather than function calls so new on push strategy works
* collection detail now uses on push and scroller is placed on correct element
* Updated library recommended to on push. Ensure that when mark as read occurs, the appropriate streams are refreshed.
* Updated library detail to on push
* Update metadata fiter to onpush. Bugs found and reported to Project
* person badge on push
* Read more on push
* Updated tag badge to on push
* User login on push
* When initing side nav, don't call an authenticated api until we are sure a user is logged in
* Updated splash container to on push
* Dashboard on push
* Side nav slight refactor around some api calls
* Cleaned up series card on push to use same cdRef naming convention
* Updated Static Files to use caching
* Added width and height to logo image
* shortcuts modal on push
* reading lists on push
* Reading list detail on push
* draggable ordered list on push
* Refactored reading-list-detail to use a new item which drastically reduces renders on operations
* series format on push
* circular loader on push
* Badge Expander on push
* update notification modal on push
* drawer on push
* Edit Series Modal on push
* reset password on push
* review series modal on push
* series metadata detail on push
* theme manager on push
* confirm reset password on push
* register on push
* confirm migration email on push
* confirm email on push
* add email to account migration on push
* user preferences on push. Made global settings default open
* edit series relation on push
* Fixed an edge case bug for next chapter where if the current volume had a single chapter of 1 and the next volume had a chapter number of 0, it would say there are no more chapters.
* Updated infinite scroller with on push support
* Moved some animations over to typeahead, not integrated yet.
* Manga reader is now on push
* Reader settings on push
* refactored how we close the book
* Updated table of contents for on push
* Updated book reader for on push. Fixed a bug where table of contents wasn't showing current page anchor due to a scroll calulation bug
* Small code tweak
* Icon and title on push
* nav header on push
* grouped typeahead on push
* typeahead on push and added a new trackby identity function to allow even faster rendering of big lists
* pdf reader on push
* code cleanup
* Refactored code to show action bar instead of drawer in immersive mode
* Card grid
* adding margin for pagination gap
* Fixed a rare routing case that wouldn't redirect
* Fixed a bug where series detail would show blank filtering
* Fixing image scaling and library card spacing
* Refactored some methods to be static
* Adding card grid to series detail
* Fixed a bug with webtoon going to non-webtoon mode, resulting in black screen.
* Ensure emails are trimmed when trying to invite.
* Don't show More In if there is only 1 item in there on library recommended tab
* Fixed some bugs around locking metadata fields where the correct param wasn't being sent to backend.
* Added some UI error messaging when the email doesn't match the confirm-email (or rather any email in the system).
* Fixed some pages where actions weren't working (library detail) and removed some actionable buttons where they didn't make sense
* Refactored the series detail to use Robbie's new grid system.
* some styling fixes
* Styling fixes
- Removing select border gap
- fixing switches on lite theme
- fixing search result text-light
* better css var naming
* changing search lite text color override
* fixing as per feedback
* Removing boolean from being visible in bookreader
* Fixed some bugs in bulk operations not being visible on light/eink screens. Added --bulk-selection-highlight-text-color and --bulk-selection-text-color.
* Wrote basic code to remove other themes. Need a migration instead.
* Added a migration to remove light/e-ink themes and migrate users over to Dark theme by default.
* Fixed unit tests
Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>
* Refactored the drawer into offcanvas component. Had to write some hacks to emulate how bootstrap's javascript implementation works as ngBootstrap doesn't have a component yet.
* Cleaned up some of the code
* Rewrote drawer to align it with the new design
* First pass, refactored table of content into it's own component
* Refactored all of the settings logic into a separate component. Everything is broken.
* More settings on on reactive form
* More code cleanup on settings
* Misc fixes around the drawer code. Fixed a bug where range sliders were inheriting background color of normal text inputs
* Fixed dark mode with book reader.
We now clear the theme from the main app so book reader is self-contained. Styles for dark mode are injected into the reading-section. Styles that were previously in scss are now only for the actual menu system.
* Cleaned up drawer styling on header
* Removed an ngIf statement for click to paginate
* Tweaked the accent style to have smaller font size and adjusted style on light mode. Cleaned up some clearTimeout code in a further effort to streamline codebase.
* Refactored Dark mode into a basic theme. Currently styles are hardcoded.
* Patched book theme in from themes branch
* Patched in the backend for Book Theme (not tested yet)
* Fixed a bug in seeding code for book themes. Started integration of themes into the reader settings
* Everything except managing themes is working. Themes are a bit shakey, having second thoughts if we should have them or not.
* Reverted the ability to do custom user book themes. Code is stable with system themes.
* Stablize the Styles (#1128)
* Fixed a bug where adding multiple series to reading list would throw an error on UI, but it was successful.
* When a series has a reading list, we now show the connection on Series detail.
* Removed all baseurl code from UI and not-connected component since we no longer use it.
* Fixed tag badges not showing a border. Added last read time to the series detail page
* Fixed up error interceptor to remove no-connection code
* Changed implementation for series detail. Book libraries will never send chapters back. Volume 0 volumes will not be sent in volumes ever. Fixed up more renaming logic on books to send more accurate representations to the UI.
* Cleaned up the selected tab and tab display logic
* Fixed a bad where statement in reading lists for series
* Fixed up tab logic again
* Fixed a small margin on search backdrop
* Made badge expander button smaller to align with badges
* Fixed a few UIs due to .form-group and .form-row being removed
* Updated Theme component page to help with style testing
* Added more components to theme tester
* Cleaned up some styling
* Fixed opacity on search item hover
* Bump versions by dotnet-bump-version.
* Tweaked the accordion styles for light mode
* Set dark book theme as default. Refactored resetSettings to be much cleaner
* Started the refactor to allow book themes to affect global css variables
* Fixed some issues with my css variable declarations
* Fixed a close model state update
* Lots of work, but dark mode on the book reader is basically done. We have to code the themes much like the site themes
* Some black theme enhancements
* Started working on column layout in book reader.
* Cleaned up the CSS on Reader Settings
* Hooked up reading direction
* Got column and double column layout working
* Implemented some basic virtual paging and hooked in book color theme and layout mode into user preferences.
* Migration wrote, can edit page layout and color theme on book reader. Removed book dark mode since no longer needed.
Fixed a bug on login/register forms where when input is focused, text is white and not black.
* When loading book reader, apply column layout.
* Lots of work around 2 column layout, working on images not splitting. Still not working, committing so i can merge develop in and validate code with new manga reader.
* Fixed images being split into 2 BUT regression on each page boundary, total reading height is smaller and smaller
* Fixed some rendering bugs where toggling column layouts would shrink images on screen constantly.
Fixed a bug where bottom bar wouldn't render on column layout in some conditions (this might need to be reworked)
* Started progress on progress work
* Updated .NET to 6.0.4
* Fixed a bug where DataContextModelSnapshot was being removed on build thus new migrations were broken.
* Tweaked the code around progress saving so that we don't loose track of last scroll element on page load
* Trying to restore progress, but stuck
* Extra merge stuff
* Fixed a bug where volumes that are a range fail to generate series detail
* No gutters on whole app. Book reader backend now applies the image class automatically at the backend.
* Added wiki documentation into invite user flow and register admin user to help users understand email isn't required and they can host their own service.
* Removed bottom padding
* Refactored the document height to be set and removed on nav service, so the book reader and manga reader aren't broken.
* Fixed the height of the action bar to simplify logic and keep the code cleaner. Refactored book service image scoping to be much more streamlined and efficient
* Fixed the height of action bar to 62px and adjusted code to use the hardcoded px. (code commented)
* Removed commented out code from fixed action bar height
* Progress restoration seems to be working
* Code cleanup
* Ensure the bottom action bar is at the bottom of the viewport on small pages
* Fixed book fonts not setting properly and added OpenDyslexic font.
* Fixed up some font issues
* Updated drawer so all sections are open by default
* Switched some LINQ to use MinBy
* When navigating between pages and column layout, adjust the shift for the user.
* Removed some debug code
* Blacklist .qpkg folders and don't scan Recently-Snapshot or recycle folders.
* Renamed the scale width to be scoped to kavita to avoid conflicts.
* Refactored ngx-sliders out to use normal range instead. Changed up the preferences to separate image and book settinngs into own accordion.
* updated user preferences for new migration options (not committed yet)
* Removed some debug code
* Remove console.logs
* Migration committed, let's release this to users.
* A lot of crazy code just to ensure that when you close drawer the toggle reflectst that state.
* Updated cover regex for finding cover images in archives to ignore back_cover or back-cover
* Fixed an issue where Tags wouldn't save due to not pulling them from the DB.
* Refactored All series to it's own lazy loaded module
* Modularized Dashboard and library detail. Had to change main dashboard page to be libraries. Subject to change.
* Refactored login component into registration module
* Series Detail module created
* Refactored nav stuff into it's own module, not lazy loaded, but self contained.
* Refactored theme component into a dev only module so we don't incur load for temp testing modules
* Finished off modularization code. Only missing thing is to re-introduce some dashboard functionality for library view.
* Implemented a basic recommendation page for library detail
* Fixed e-ink theme not properly applying correctly
* Fixed some seed changes. Changed card checkboxes to use our themed ones
* Fixed recently added carousel not going to recently-added page
* Fixed an issue where no results found would show when searching for a library name
* Cleaned up list a bit, typeahead dropdown still needs work
* Added a TODO to streamline series-card component
* Removed ng-lazyload-image module since we don't use it. We use lazysizes
* Darken card on hover
* Fixing accordion focus style
* ux pass updates
- Fixed typeahead width
- Fixed changelog download buttons
- Fixed a select
- Fixed various input box-shadows
- Fixed all anchors to only have underline on hover
- Added navtab hover and active effects
* more ux pass
- Fixed spacing on theme cards
- Fixed some light theme issues
- Exposed text-muted-color for theme card subtitle color
* UX pass fixes
- Changed back to bright green for primary on dark theme
- Changed fa icon to black on e-ink
* Merged changelog component
* Fixed anchor buttons text decoration
* Changed nav tabs to have a background color instead of open active state
* When user is not authenticated, make sure we set default theme (dark)
* Cleanup on carousel
* Updated Users tab to use small buttons with icons to align with Library tab
* Cleaned up brand to not underline, removed default link underline on hover in dropdown and pill tabs
* Fixed collection detail posters not rendering
Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>
* Started the migration to bootstrap 5. Introduced a breakpoint system that bootstrap reflects for our screens.
* sr only migrated
* mr/ml -> me/ms
* pl/pr -> ps/pe
* btn-block
* removed input-group-append
* Added form-label to all labels
* Added some style overrides for inputs
* Replaced form-group with mb-3
* Ignore journal files
* Update media to d-flex/flex-grow-1
* Fixed reading list detail page
* For develop builds, don't inline critical styles
* Fixed some downstream security issues
* Fixed a layout issue in series detail
* Fixed issue with btn-light not having background color. Updated layout for series detail metadata
* Cleaned up nav search
* Laid out the organization for custom theme components. Update _inputs.scss with variable overrides and depending on theme, it will just work.
* Lots of theming work
* Added inputs to the theme page
* Login and input placeholder changes
- Fixed login screen centering issue on all devices
- Changed the format of the login screen
- Change the input placeholder color
* Added checkbox styles
* Refactored tagbadges and removed some ngdeep selectors
* Added nav bar component and refactored some styles into event widget
* Cleaned nav events again and made dedicated popover body
* Finished pagination component
* Fixed up some styles with buttons
* refactored dropdown component
* Update accordion component
* Refactored breadcrumbs and rating star. Fixed a missing style for cards
* Fixed some styling issues on person badge, added modal component, and some global styles
* Finished moving everything within dark to component files
* Fixed up filter buttons, move card styles into a component theme, fixed slider style
* Refactored library card and grouped typeahead
* Updated normal typeahead component and reduced amount of ngdeep selector
* Refactored grid breakpoints to be available by css variable, but it's hardcoded into the app
* Ensure breakpoints are defined per theme
* Fixed up some styling overrides and customization for nav links and alt button
* Removed some deep styles, moved css out of splash container and brough back labels for login page
* Finished css variable refactor
* Refactored all the theme variable definitions into files for each theme.
* Added back bootstrap overrides
* Added a note about bootstrap theme colors being not-possible to swap out at runtime
* Cleaned up some dead code
* Implemented the ability to set a custom theme on the site. Cleaned up misc code throughout.
* Additional changes
- Fixed nav where "kavita" was not hiding correctly on small viewports
- Fixed search bar to make the behavior more consistent
- Fixed accordion buttons
- Changed accordion buttons to be more responsive
- Added radio button colors
- Fixed radios on theme test page
- Changed login and reset password card layouts to be more consistent.
- Added primary color shade for when darker shading is needed.
* Built a basic site, allow the user to apply different themes, refactored nav service code out.
* Implemented the ability update a user's theme
* Added unit tests for Scan and Get Content in SiteThemeService.
* Fixed a bug in the login code and Pref code which wasn't joining on SiteTheme table. Wrote Unit tests and the UI component to manage current theme.
* Implemented scan so that it manages custom themes with unit tests
* Component updates
- Repositioning style ordering
- Adding indicator override
- Adding select styles
* SignlaR integration, some fixes when creating custom entities, one single migration. Just login functionality left.
* More ui updated
- Added .no-hover to prevent hover on elements where not needed
- Changed all selects I could find to appropriate class
- Changed up nav tabs to work more like bootstrap tabs than pills
- Added padding to top of some containers to make styles consistent
- Added ability to change navbar fontawesome icon colors
- removed some unecessary inline styling
- Changed radio button to appropriate class
- Toned down primate color, a bit too bright for dark theme.
- Added ability to change button fontawesome icon color
* nav-tab fix for series-detail
* Added themes folder to gitignore
* Adding card overlay
* Fixing up light theme
* Everything is done. Only bug is that color-scheme isn't being set properly from css variable.
* Checkboxes have pointer by default. Confirm/Confirm email use default (dark) theme by default
* Fixed an error where color-scheme wasn't reflecting correctly on themes on first load
* Fixed user preferences not available on login
* Changing dual radios to switches and color tweaks
* disabled primary APCA fix
* button APCA fixes
* Fixed some timing issues with first load and image service
* Fixed swiper issues from upgrade
* Changed themes to be scss files again and adjusted Seed code
* Migrated carousel to css variables. Fixed a broken animation for search.
* Cleaned up some backend smells
* Fixed white border outline on nav tabs, added some variables for header
* Nav bar has been css variable-ified
* Added some basic eink stuff to make the app useable
Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>