Sha256: 0bf352089e0475ae4987130a9a56ee9faabf7bd34fbe224272e729fc3962013f
Contents?: true
Size: 1.37 KB
Versions: 10
Compression:
Stored size: 1.37 KB
Contents
module Graphiti::ActiveGraph module Scoping module Filter def each_filter filter_param.each_pair do |param_name, param_value| filter = find_filter!(param_name) normalize_param(filter, param_value).each do |operator, value| operator = operator.to_s.gsub("!", "not_").to_sym # dynamic filters errors for validating and typecasting value below # so they are skipped here without validation or typecast filter_map = filter.values[0] if filter_map[:dynamic_filter] yield filter, operator, value next end validate_operator(filter, operator) type = ::Graphiti::Types[filter_map[:type]] unless type[:canonical_name] == :hash || !value.is_a?(String) value = parse_string_value(filter_map, value) end check_deny_empty_filters!(resource, filter, value) value = parse_string_null(filter_map, value) validate_singular(resource, filter, value) value = coerce_types(filter_map, param_name.to_sym, value) validate_allowlist(resource, filter, value) validate_denylist(resource, filter, value) value = value[0] if filter_map[:single] yield filter, operator, value end end end end end end
Version data entries
10 entries across 10 versions & 1 rubygems