Query Rules
This section discusses about how query
rules typing works.
type against query limitations, query limitation part 2 and order limitations.
Rules Typing
FirelordJS protects you against Firestore runtime exceptions in your queries on type level, example:
- In a compound query, range (<, <=, >, >=) and not equals (!=, not-in) comparisons must all filter on the same field

- If you include a filter with a range comparison (<, <=, >, >=), your first ordering must be on the same field

- You can use at most one in, not-in, or array-contains-any clause per query. You can't combine in , not-in, and array-contains-any in the same query

- You can't combine not-in with not equals !=

- You can use at most one array-contains clause per query. You can't combine array-contains with array-contains-any

- Too many arguments provided to startAt/startAfter/endAt/endBefore(). The number of arguments must be less than or equal to the number of orderBy() clauses

- You cannot use more than one '!=' filter (undocumented limitation)

and more.