Skip to content
Ghislain B edited this page Oct 24, 2017 · 53 revisions

The implementation of a GraphQL Service requires a certain structure to follow for Angular-Slickgrid to work correctly (it will fail if your structure is any different than what is shown below).

filterBy

The filtering uses filterBy with a structure which we think is flexible enough. The query will have a filterBy argument with an array of filter properties:

  • filterBy: array of filter object(s) (see below)
    • field: field name to filter
    • value: search filter value
    • operator: a GraphQL enum (server side) that can have 1 of these choices:
      • LT, LE, GT, GE, NE, EQ, Contains, StartsWith, EndsWith, IN, NIN
        • Contains is the default and will be used (by the grid) when operator is not provided
        • IN and NIN (Not IN) are mainly used for multi-select filtering

Note: the filterBy order is following the order of how the filter objects were entered in the array.

For example, a filter that would search for a firstName that starts with "John"

  • matches: "John", "Johnny", ...
  users (first: 20, offset: 10, filterBy: [{field: firstName, operator: StartsWith, value: 'John'}]) {
    totalCount
    pageInfo {
      hasNextPage
    }
    nodes {
      name
      firstName
      lastName
      gender
    }
  }

Contents

Clone this wiki locally