-
Notifications
You must be signed in to change notification settings - Fork 904
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
Add composite filters in support of OR queries #6385
Add composite filters in support of OR queries #6385
Conversation
|
Size Report 1Affected Products
Test Logs |
Size Analysis Report 1This report is too large (546,853 characters) to be displayed here in a GitHub comment. Please use the below link to see the full report on Google Cloud Storage.Test Logs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a great start, and generally looks good to me. Some nits/comments outlined below.
* created with calls to {@link where}, {@link or}, or {@link and}. | ||
* @returns The created {@link QueryConstraint}. | ||
*/ | ||
export function or(...queryConstraints: QueryConstraint[]): QueryConstraint { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is there a way to not expose and()
and or()
publicly yet (and still be able to invoke them in the tests) ?
Android makes that possible using @RestrictTo(RestrictTo.Scope.LIBRARY)
. But not sure if JS has a way to do this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My understanding is by keeping it out of api.ts, it's still internal, but can be used for testing. Please correct me if you see a gap in my understanding.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep; just looked into it a bit more. (as a side, we also have "lite" APIs for the "Lite Web SDK").
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@MarkDuckworth , IIUC based on @hsubox76 's comment, this comment still stands
…kduckworth/or-queries-pr-2
Changeset File Check ✅
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a reason the changeset was removed? I see a commit comment saying it doesn't require a release but I think it's good to add a changeset for any code changes that could theoretically affect how the code runs. And I see from the api-review md changes that it's actually affected the public types.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry I missed this in my first review. Given that we do want to use 'and' and 'or', but we don't want to expose them publicly, we shouldn't be updating the .md files.
This reverts commit 06236af.
Add composite filters. Port of firebase/firebase-android-sdk#3290