PcoServicesItemQuery constructor

PcoServicesItemQuery({
  1. bool includeArrangement = false,
  2. bool includeItemNotes = false,
  3. bool includeItemTimes = false,
  4. bool includeKey = false,
  5. bool includeMedia = false,
  6. bool includeSelectedAttachment = false,
  7. bool includeSong = false,
  8. bool includeAllRelated = false,
  9. bool reverse = false,
  10. int perPage = 25,
  11. int pageOffset = 0,
  12. Map<String, String> extraParams = const {},
  13. List<PlanningCenterApiWhere>? where,
  14. Iterable<String> filter = const <String>[],
  15. String? order,
  16. Iterable<String> include = const <String>[],
})

Implementation

PcoServicesItemQuery({
  /// include associated arrangement
  /// when true, adds `?include=arrangement` to url
  bool includeArrangement = false,

  /// include associated item_notes
  /// when true, adds `?include=item_notes` to url
  bool includeItemNotes = false,

  /// include associated item_times
  /// when true, adds `?include=item_times` to url
  bool includeItemTimes = false,

  /// include associated key
  /// when true, adds `?include=key` to url
  bool includeKey = false,

  /// include associated media
  /// when true, adds `?include=media` to url
  bool includeMedia = false,

  /// include associated selected_attachment
  /// when true, adds `?include=selected_attachment` to url
  bool includeSelectedAttachment = false,

  /// include associated song
  /// when true, adds `?include=song` to url
  bool includeSong = false,

  /// when true, adds `?include=arrangement,item_notes,item_times,key,media,selected_attachment,song` to url parameters
  bool includeAllRelated = false,

  /// reverse the ordering
  bool reverse = false,

  // direct access to super class params
  super.perPage,
  super.pageOffset,
  super.extraParams,
  super.where,
  super.filter,
  super.order,
  super.include,
}) : super() {
  if (includeAllRelated || includeArrangement) include.add('arrangement');
  if (includeAllRelated || includeItemNotes) include.add('item_notes');
  if (includeAllRelated || includeItemTimes) include.add('item_times');
  if (includeAllRelated || includeKey) include.add('key');
  if (includeAllRelated || includeMedia) include.add('media');
  if (includeAllRelated || includeSelectedAttachment)
    include.add('selected_attachment');
  if (includeAllRelated || includeSong) include.add('song');
}