Kavita/UI/Web
Joseph Milazzo 03112d3f8f
New Search (#1029)
* Implemented a basic version of enhanced search where we can return multiple types of entities in one go. Current unoptimized version is twice as expensive as normal search, but under NFR. Currently 200ms max.

* Worked in some basic code for grouped typeahead search component. Keyboard navigation is working.

* Most of the code is in place for the typeahead. Needs css work and some accessibility work.

* Hooked up filtering into all-series. Added debouncing on search, clear input field now works. Some optimizations related to memory cleanup

* Added ability to define a custom placeholder

* Hooked in noResults template and logic

* Fixed a duplicate issue in Collection tag searching and commented out old code. OPDS still needs some updates.

* Don't trigger inputChanged when reopening/clicking on input.

* Added Reading list to OPDS search

* Added a new image component so all the images can be lazyloaded without logic duplication

* Added a maxWidth/Height on the image component

* Search css update

* cursor fixes

* card changes

- fixing border radius on cards
- adding bottom card color

* Expose intenral state of if the search component has focus

* Adjusted the accessibility to not use complex keys and just use tab instead since this is a search, not a typeahead

* Cleaned up dead code, removed angular-ng-complete library as it's no longer used.

* Fixes for mobile search

* Merged code

* Fixed a bad merge and some nav bar styling

* Cleaned up the focus code for nav bar

* Removed focusIndex and just use hover state. Fixed clicking on items

* fixing overlay overlap issue

Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>
2022-02-04 08:28:49 -08:00
..
e2e The big one (#396) 2021-07-17 14:03:11 -05:00
src New Search (#1029) 2022-02-04 08:28:49 -08:00
angular.json Up budget on style bundle size (#763) 2021-11-16 06:24:58 -08:00
LICENSE The big one (#396) 2021-07-17 14:03:11 -05:00
package-lock.json New Search (#1029) 2022-02-04 08:28:49 -08:00
package.json New Search (#1029) 2022-02-04 08:28:49 -08:00
README.md The big one (#396) 2021-07-17 14:03:11 -05: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 Bugs, Enhancements, and Performance (#580) 2021-09-15 11:06:29 -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.

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.