-
-
Notifications
You must be signed in to change notification settings - Fork 219
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement freetext search in cht-datasource #9586
Comments
@jkuester For the Contact's |
For now, I think you can just follow the existing logic in Unfortunately, the My goal here is to have these cht-datasource changes be decoupled from the other search efforts (at least for the time being). That way we can ship your work here without waiting on Lucene or offline views. If I am correct, it should not really be any extra work to wait and integrate the Lucene/offline stuff when it is actually ready to go.... |
I've pushed the skeleton code for this. Can you review if that's the pattern we're looking for? |
@sugat009 Could you be a bit more specific about the pattern you would like me to review? 😅 In general, the code in your PR looks to be headed in a great direction! |
I wanted you to review the latest commit for implementation of |
Basically, if the provided qualifier is both a |
Spinning this off into its own ticket (from #9544) since it can stand alone.
What feature do you want to improve?
As a part of updating our freetext search implementation, we can take the opportunity to implement the search logic in cht-datasource. This will provide a more clean interface for cht-code code to perform searches of contacts and reports as well as resulting in the creation of new REST endpoints for the same searching.
Describe the improvement you'd like
shared-libs/cht-datasource
qualifier.ts
contact.ts
report.ts
person.ts/place.ts
Update the
Person/PlaceWithLineage
interfaces to useContactWithLineage
as theparent
(instead ofPlaceWithLineage
). Pending #9584 it is probably not safe to assume that a contact parent will always be a place.Need to do more research regarding the
Place.contact
value...shared-libs/search
Update search logic to call through to the cht-datasource functions when doing freetext searches (or the basic contact_by_type search). For the multi-view searches, we will need to just stream in all pages.
Design details
As mentioned here (#9544 (comment)) the local adapter will need to account for Nouveau logic (though depending on the progress of that implementation, this PR might just port the same online/offline logic from
shared-libs/search
that was created by #9544).In general we should strive to align to the patterns/code used for implementing the person/place-by-type flows in cht-datasource. All the paging logic should basically be the same.
Describe alternatives you've considered
Additional context
The text was updated successfully, but these errors were encountered: