graphql-filters 1.0.4 → 1.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -0
- data/graphql-filters.gemspec +34 -0
- data/lib/graphql/filters/filterable.rb +3 -3
- data/lib/graphql/filters/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 063e179dd5b139ff1c59b282a88ae4e1fd8bad1d413a0cd1886453110a61c9e4
|
4
|
+
data.tar.gz: '0838ffddd943f201cd37376b802b81e53ccc21e3a8e5e48b23555adf82486022'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4bde612cd1a2abb71fce833e6aa7e0e8562c2ce2f5aa9127587e1d23c8a7fde6f85376bf0b93511026c494b85691404f2640ab7c50d8fb8397ec2add27a974b3
|
7
|
+
data.tar.gz: 7ac26f7f7afedc105b8415d344147d0fa9e44f40ad6d7dbc8236d7bce27fc0bb5d466b1cf3561dc9a540f1fc4e68601185ae12ba76af78d82232dd4e968b5ddd
|
data/CHANGELOG.md
CHANGED
@@ -8,6 +8,18 @@
|
|
8
8
|
### Bug fixes
|
9
9
|
)-->
|
10
10
|
|
11
|
+
## 1.0.6 2025-01-17
|
12
|
+
|
13
|
+
### Bug fixes
|
14
|
+
|
15
|
+
- Fix `NoMethodError` when using `Filterable` without `SearchObject` and not passing a filter.
|
16
|
+
|
17
|
+
## 1.0.5 2024-11-29
|
18
|
+
|
19
|
+
### Bug fixes
|
20
|
+
|
21
|
+
- Fixed an internal bug in resolution of the filtered type for a resolver.
|
22
|
+
|
11
23
|
## 1.0.4 2024-10-14
|
12
24
|
|
13
25
|
### New features
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require_relative 'lib/graphql/filters/version'
|
2
|
+
|
3
|
+
Gem::Specification.new do |spec|
|
4
|
+
spec.name = 'graphql-filters'
|
5
|
+
spec.version = GraphQL::Filters::VERSION
|
6
|
+
spec.authors = ['Moku S.r.l.', 'Riccardo Agatea']
|
7
|
+
spec.email = ['info@moku.io']
|
8
|
+
spec.license = 'MIT'
|
9
|
+
|
10
|
+
spec.summary = 'Provide a fully typed interface to filter lists in a GraphQL API.'
|
11
|
+
spec.description = 'Provide a fully typed interface to filter lists in a GraphQL API.'
|
12
|
+
spec.homepage = 'https://github.com/moku-io/graphql-filters'
|
13
|
+
spec.required_ruby_version = '>= 3.0.0' # Maybe we should check (?)
|
14
|
+
|
15
|
+
spec.metadata['homepage_uri'] = spec.homepage
|
16
|
+
spec.metadata['source_code_uri'] = 'https://github.com/moku-io/graphql-filters'
|
17
|
+
spec.metadata['changelog_uri'] = 'https://github.com/moku-io/graphql-filters/blob/master/CHANGELOG.md'
|
18
|
+
|
19
|
+
# Specify which files should be added to the gem when it is released.
|
20
|
+
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
21
|
+
spec.files = Dir.chdir File.expand_path(__dir__) do
|
22
|
+
`git ls-files -z`.split("\x0").reject do |f|
|
23
|
+
(f == __FILE__) || f.match(%r{\A(?:(?:bin|test|spec|features)/|\.(?:git|travis|circleci)|appveyor)})
|
24
|
+
end
|
25
|
+
end
|
26
|
+
spec.bindir = 'exe'
|
27
|
+
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
28
|
+
spec.require_paths = ['lib']
|
29
|
+
|
30
|
+
spec.add_dependency 'activerecord'
|
31
|
+
spec.add_dependency 'activesupport'
|
32
|
+
spec.add_dependency 'graphql', '~> 2.0.0'
|
33
|
+
spec.add_dependency 'graphql-models_connect'
|
34
|
+
end
|
@@ -16,7 +16,7 @@ module GraphQL
|
|
16
16
|
end
|
17
17
|
|
18
18
|
inner_type = filtered_type
|
19
|
-
inner_type =
|
19
|
+
inner_type = inner_type.of_type until inner_type.kind == GraphQL::TypeKinds::LIST
|
20
20
|
inner_type = inner_type.of_type
|
21
21
|
|
22
22
|
option :filter, type: inner_type.comparison_input_type do |scope, filter|
|
@@ -28,13 +28,13 @@ module GraphQL
|
|
28
28
|
raise 'You can only apply a filter to a list field' unless filtered_type.list?
|
29
29
|
|
30
30
|
inner_type = filtered_type
|
31
|
-
inner_type =
|
31
|
+
inner_type = inner_type.of_type while inner_type.kind == GraphQL::TypeKinds::LIST
|
32
32
|
inner_type = inner_type.of_type
|
33
33
|
|
34
34
|
argument :filter, inner_type.comparison_input_type, required: false
|
35
35
|
|
36
36
|
def resolve filter: nil, **kwargs
|
37
|
-
filter.call super(**kwargs)
|
37
|
+
filter ? filter.call(super(**kwargs)) : super(**kwargs)
|
38
38
|
end
|
39
39
|
end
|
40
40
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: graphql-filters
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Moku S.r.l.
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2025-01-17 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activerecord
|
@@ -81,6 +81,7 @@ files:
|
|
81
81
|
- LICENSE
|
82
82
|
- README.md
|
83
83
|
- Rakefile
|
84
|
+
- graphql-filters.gemspec
|
84
85
|
- lib/graphql/filters.rb
|
85
86
|
- lib/graphql/filters/activerecord_patch.rb
|
86
87
|
- lib/graphql/filters/activerecord_patch/arel/nodes/contained.rb
|
@@ -130,7 +131,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
130
131
|
- !ruby/object:Gem::Version
|
131
132
|
version: '0'
|
132
133
|
requirements: []
|
133
|
-
rubygems_version: 3.5.
|
134
|
+
rubygems_version: 3.5.22
|
134
135
|
signing_key:
|
135
136
|
specification_version: 4
|
136
137
|
summary: Provide a fully typed interface to filter lists in a GraphQL API.
|