KnowledgeMetadataFilter constructor

KnowledgeMetadataFilter({
  1. Set<String> tags = const {},
  2. Set<String> requiredTags = const {},
  3. Set<String> types = const {},
  4. Set<String> statuses = const {},
  5. Set<String> pathPrefixes = const {},
  6. String? titleContains,
  7. String? descriptionContains,
})

Implementation

KnowledgeMetadataFilter({
  Set<String> tags = const {},
  Set<String> requiredTags = const {},
  Set<String> types = const {},
  Set<String> statuses = const {},
  Set<String> pathPrefixes = const {},
  this.titleContains,
  this.descriptionContains,
}) : tags = Set.unmodifiable(tags),
     requiredTags = Set.unmodifiable(requiredTags),
     types = Set.unmodifiable(types),
     statuses = Set.unmodifiable(statuses),
     pathPrefixes = Set.unmodifiable(pathPrefixes) {
  for (final value in [
    ...tags,
    ...requiredTags,
    ...types,
    ...statuses,
    ...pathPrefixes,
    ?titleContains,
    ?descriptionContains,
  ]) {
    if (value.trim().isEmpty) {
      throw ArgumentError('Metadata filter values must not be blank.');
    }
  }
}