graphql-pagination 0.2.3 → 1.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.bundler-version +1 -0
- data/.dependabot/config.yml +16 -0
- data/.github/ISSUE_TEMPLATE/bug_report.md +33 -0
- data/.github/ISSUE_TEMPLATE/config.yml +1 -0
- data/.github/ISSUE_TEMPLATE/story.md +22 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +18 -0
- data/.github/workflows/auto-approve.yml +16 -0
- data/.github/workflows/auto-merge.yml +19 -0
- data/.travis.yml +5 -5
- data/Gemfile.lock +66 -56
- data/README.md +37 -16
- data/Rakefile +3 -1
- data/graphql-pagination.gemspec +12 -11
- data/lib/graphql_pagination.rb +0 -1
- data/lib/graphql_pagination/collection_metadata_type.rb +3 -3
- data/lib/graphql_pagination/collection_type.rb +4 -3
- data/lib/graphql_pagination/version.rb +1 -1
- metadata +32 -13
- data/.rubocop.yml +0 -12
- data/.ruby-gemset +0 -1
- data/.ruby-version +0 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: afd9e4d2bcb920c10f5db2c679977e74af876dc51fe2d44edde7443d8c21a2a8
|
|
4
|
+
data.tar.gz: 6485e139197e892711f43a8772c3e4383af9d5a648ec1bd53297a4b662f44857
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: afbd70d8259b21d58cbdb7c9b2c2f9f8d027e3648f77c3f5caa6afa5e4644dfc98ba120f1ece568f5faaf177ddf05398a7495b32a2669ab19d0d472f043340ef
|
|
7
|
+
data.tar.gz: 3651b3536bc483d59fd93090bfa9e3d761f69cfe518bdeb08313b6fc59ad188de0f8a12187adf46df4fed7c7aa603b58b4c015b3457f298e5bf50a53bc2da35c
|
data/.bundler-version
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
2.2.22
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
|
|
3
|
+
update_configs:
|
|
4
|
+
- package_manager: "ruby:bundler"
|
|
5
|
+
directory: "/"
|
|
6
|
+
update_schedule: "daily"
|
|
7
|
+
commit_message:
|
|
8
|
+
prefix: "[dependabot]"
|
|
9
|
+
allowed_updates:
|
|
10
|
+
- match:
|
|
11
|
+
dependency_type: "all"
|
|
12
|
+
update_type: "security"
|
|
13
|
+
automerged_updates:
|
|
14
|
+
- match:
|
|
15
|
+
dependency_type: "all"
|
|
16
|
+
update_type: "security:patch"
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Create a report to track an issue that has been identified
|
|
4
|
+
title: ''
|
|
5
|
+
labels: ''
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Describe the bug**
|
|
11
|
+
A clear and concise description of what the bug is.
|
|
12
|
+
|
|
13
|
+
**To Reproduce**
|
|
14
|
+
Steps to reproduce the behavior:
|
|
15
|
+
1. Go to '...'
|
|
16
|
+
2. Click on '....'
|
|
17
|
+
3. Scroll down to '....'
|
|
18
|
+
4. See error
|
|
19
|
+
|
|
20
|
+
**Expected behavior**
|
|
21
|
+
A clear and concise description of what you expected to happen.
|
|
22
|
+
|
|
23
|
+
**Mutation/Query**
|
|
24
|
+
|
|
25
|
+
**URL and HTTP method (for non-GQL):**
|
|
26
|
+
|
|
27
|
+
**Sentry or Logs URL:**
|
|
28
|
+
|
|
29
|
+
**User/authentication details**
|
|
30
|
+
Impacted user name or service account
|
|
31
|
+
|
|
32
|
+
**Additional context**
|
|
33
|
+
Add any other context about the problem here.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
blank_issues_enabled: false
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: New story
|
|
3
|
+
about: Add a new story for implementation
|
|
4
|
+
title: ''
|
|
5
|
+
labels: ''
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Describe the solution**
|
|
11
|
+
A clear and concise description of what you want to happen.
|
|
12
|
+
When will this feature be done?
|
|
13
|
+
|
|
14
|
+
**Describe the users**
|
|
15
|
+
Who are we building this feature for?
|
|
16
|
+
|
|
17
|
+
**Additional context**
|
|
18
|
+
Add any other context or screenshots about the feature request here.
|
|
19
|
+
Link to any applicable documents describing the feature.
|
|
20
|
+
|
|
21
|
+
**Designs**
|
|
22
|
+
Link to any applicable designs on Invision.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
## Description
|
|
2
|
+
<!--- Describe your changes in detail -->
|
|
3
|
+
|
|
4
|
+
## Related issue(s)
|
|
5
|
+
<!--- GH issue number -->
|
|
6
|
+
|
|
7
|
+
## Motivation and Context
|
|
8
|
+
<!--- Why is this change required? What problem does it solve? -->
|
|
9
|
+
<!--- If it fixes an open issue, please link to the issue here. -->
|
|
10
|
+
|
|
11
|
+
## How Has This Been Tested?
|
|
12
|
+
<!--- Please describe in detail how you tested your changes. -->
|
|
13
|
+
|
|
14
|
+
## Screenshots (if appropriate):
|
|
15
|
+
<!--- Please add any screenshots of the feature. -->
|
|
16
|
+
|
|
17
|
+
## Related PRs
|
|
18
|
+
<!--- Please add links to any related PRs (backend, component packages, etc). -->
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# automatically approve PRs submitted by Dependabot or Renofidev
|
|
2
|
+
# this will allow Dependabot to automatically merge dependency update PRs where CI passes
|
|
3
|
+
# from: https://github.com/hmarr/auto-approve-action
|
|
4
|
+
name: Auto approve dependency upgrades PRs
|
|
5
|
+
|
|
6
|
+
on:
|
|
7
|
+
pull_request
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
auto-approve:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
steps:
|
|
13
|
+
- uses: hmarr/auto-approve-action@v2.0.0
|
|
14
|
+
if: github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]' || github.actor == 'renofidev'
|
|
15
|
+
with:
|
|
16
|
+
github-token: "${{ secrets.GITHUB_TOKEN }}"
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
name: automerge
|
|
2
|
+
on:
|
|
3
|
+
pull_request_review:
|
|
4
|
+
types:
|
|
5
|
+
- submitted
|
|
6
|
+
check_suite:
|
|
7
|
+
types:
|
|
8
|
+
- completed
|
|
9
|
+
status: {}
|
|
10
|
+
jobs:
|
|
11
|
+
automerge:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
steps:
|
|
14
|
+
- name: automerge
|
|
15
|
+
uses: "pascalgn/automerge-action@v0.12.0"
|
|
16
|
+
env:
|
|
17
|
+
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
|
18
|
+
MERGE_METHOD: squash
|
|
19
|
+
MERGE_DELETE_BRANCH: true
|
data/.travis.yml
CHANGED
|
@@ -3,9 +3,9 @@ sudo: false
|
|
|
3
3
|
language: ruby
|
|
4
4
|
cache: bundler
|
|
5
5
|
rvm:
|
|
6
|
-
- 2.
|
|
7
|
-
-
|
|
8
|
-
before_install: gem install bundler
|
|
6
|
+
- 2.7
|
|
7
|
+
- 3.0
|
|
8
|
+
before_install: gem install bundler
|
|
9
9
|
script:
|
|
10
|
-
- bundle exec
|
|
11
|
-
- bundle exec rubocop
|
|
10
|
+
- bundle exec rake spec
|
|
11
|
+
- bundle exec rake rubocop
|
data/Gemfile.lock
CHANGED
|
@@ -1,76 +1,85 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
graphql-pagination (
|
|
5
|
-
graphql (~> 1.
|
|
4
|
+
graphql-pagination (1.1.3)
|
|
5
|
+
graphql (~> 1.11)
|
|
6
6
|
|
|
7
7
|
GEM
|
|
8
8
|
remote: https://rubygems.org/
|
|
9
9
|
specs:
|
|
10
|
-
activemodel (6.
|
|
11
|
-
activesupport (= 6.
|
|
12
|
-
activerecord (6.
|
|
13
|
-
activemodel (= 6.
|
|
14
|
-
activesupport (= 6.
|
|
15
|
-
activesupport (6.
|
|
10
|
+
activemodel (6.1.4)
|
|
11
|
+
activesupport (= 6.1.4)
|
|
12
|
+
activerecord (6.1.4)
|
|
13
|
+
activemodel (= 6.1.4)
|
|
14
|
+
activesupport (= 6.1.4)
|
|
15
|
+
activesupport (6.1.4)
|
|
16
16
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
17
|
-
i18n (>=
|
|
18
|
-
minitest (
|
|
19
|
-
tzinfo (~>
|
|
20
|
-
zeitwerk (~> 2.
|
|
21
|
-
ast (2.4.
|
|
22
|
-
coderay (1.1.
|
|
23
|
-
concurrent-ruby (1.1.
|
|
24
|
-
diff-lcs (1.
|
|
25
|
-
graphql (1.
|
|
26
|
-
i18n (1.
|
|
17
|
+
i18n (>= 1.6, < 2)
|
|
18
|
+
minitest (>= 5.1)
|
|
19
|
+
tzinfo (~> 2.0)
|
|
20
|
+
zeitwerk (~> 2.3)
|
|
21
|
+
ast (2.4.2)
|
|
22
|
+
coderay (1.1.3)
|
|
23
|
+
concurrent-ruby (1.1.9)
|
|
24
|
+
diff-lcs (1.4.4)
|
|
25
|
+
graphql (1.12.13)
|
|
26
|
+
i18n (1.8.10)
|
|
27
27
|
concurrent-ruby (~> 1.0)
|
|
28
|
-
|
|
29
|
-
kaminari-activerecord (1.1.1)
|
|
28
|
+
kaminari-activerecord (1.2.1)
|
|
30
29
|
activerecord
|
|
31
|
-
kaminari-core (= 1.
|
|
32
|
-
kaminari-core (1.
|
|
33
|
-
method_source (0.
|
|
34
|
-
minitest (5.
|
|
35
|
-
parallel (1.
|
|
36
|
-
parser (
|
|
37
|
-
ast (~> 2.4.
|
|
38
|
-
pry (0.
|
|
39
|
-
coderay (~> 1.1
|
|
40
|
-
method_source (~>
|
|
30
|
+
kaminari-core (= 1.2.1)
|
|
31
|
+
kaminari-core (1.2.1)
|
|
32
|
+
method_source (1.0.0)
|
|
33
|
+
minitest (5.14.4)
|
|
34
|
+
parallel (1.20.1)
|
|
35
|
+
parser (3.0.1.1)
|
|
36
|
+
ast (~> 2.4.1)
|
|
37
|
+
pry (0.14.1)
|
|
38
|
+
coderay (~> 1.1)
|
|
39
|
+
method_source (~> 1.0)
|
|
41
40
|
rainbow (3.0.0)
|
|
42
|
-
rake (13.0.
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
rspec-
|
|
47
|
-
|
|
48
|
-
rspec-
|
|
49
|
-
rspec-
|
|
41
|
+
rake (13.0.4)
|
|
42
|
+
regexp_parser (2.1.1)
|
|
43
|
+
rexml (3.2.5)
|
|
44
|
+
rspec (3.10.0)
|
|
45
|
+
rspec-core (~> 3.10.0)
|
|
46
|
+
rspec-expectations (~> 3.10.0)
|
|
47
|
+
rspec-mocks (~> 3.10.0)
|
|
48
|
+
rspec-core (3.10.1)
|
|
49
|
+
rspec-support (~> 3.10.0)
|
|
50
|
+
rspec-expectations (3.10.1)
|
|
50
51
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
51
|
-
rspec-support (~> 3.
|
|
52
|
-
rspec-mocks (3.
|
|
52
|
+
rspec-support (~> 3.10.0)
|
|
53
|
+
rspec-mocks (3.10.2)
|
|
53
54
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
54
|
-
rspec-support (~> 3.
|
|
55
|
-
rspec-support (3.
|
|
56
|
-
rubocop (
|
|
57
|
-
jaro_winkler (~> 1.5.1)
|
|
55
|
+
rspec-support (~> 3.10.0)
|
|
56
|
+
rspec-support (3.10.2)
|
|
57
|
+
rubocop (1.18.3)
|
|
58
58
|
parallel (~> 1.10)
|
|
59
|
-
parser (>=
|
|
59
|
+
parser (>= 3.0.0.0)
|
|
60
60
|
rainbow (>= 2.2.2, < 4.0)
|
|
61
|
+
regexp_parser (>= 1.8, < 3.0)
|
|
62
|
+
rexml
|
|
63
|
+
rubocop-ast (>= 1.7.0, < 2.0)
|
|
61
64
|
ruby-progressbar (~> 1.7)
|
|
62
|
-
unicode-display_width (>= 1.4.0, <
|
|
63
|
-
rubocop-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
65
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
|
66
|
+
rubocop-ast (1.7.0)
|
|
67
|
+
parser (>= 3.0.1.1)
|
|
68
|
+
rubocop-rake (0.6.0)
|
|
69
|
+
rubocop (~> 1.0)
|
|
70
|
+
rubocop-rspec (2.4.0)
|
|
71
|
+
rubocop (~> 1.0)
|
|
72
|
+
rubocop-ast (>= 1.1.0)
|
|
73
|
+
ruby-progressbar (1.11.0)
|
|
74
|
+
tzinfo (2.0.4)
|
|
75
|
+
concurrent-ruby (~> 1.0)
|
|
76
|
+
unicode-display_width (2.0.0)
|
|
77
|
+
zeitwerk (2.4.2)
|
|
71
78
|
|
|
72
79
|
PLATFORMS
|
|
73
80
|
ruby
|
|
81
|
+
x86_64-darwin-20
|
|
82
|
+
x86_64-linux
|
|
74
83
|
|
|
75
84
|
DEPENDENCIES
|
|
76
85
|
graphql-pagination!
|
|
@@ -80,7 +89,8 @@ DEPENDENCIES
|
|
|
80
89
|
rake
|
|
81
90
|
rspec
|
|
82
91
|
rubocop
|
|
83
|
-
rubocop-
|
|
92
|
+
rubocop-rake
|
|
93
|
+
rubocop-rspec
|
|
84
94
|
|
|
85
95
|
BUNDLED WITH
|
|
86
|
-
2.
|
|
96
|
+
2.2.15
|
data/README.md
CHANGED
|
@@ -29,10 +29,9 @@ Add `graphql-pagination` to your Gemfile, you can use `kaminari-activerecord` or
|
|
|
29
29
|
|
|
30
30
|
Value returned by query resolver must be a kaminari object or implements its page scope methods (`current_page`, `limit_value`, `total_count`, `total_pages`).
|
|
31
31
|
|
|
32
|
-
|
|
33
32
|
## GraphQL query
|
|
34
33
|
|
|
35
|
-
```
|
|
34
|
+
```graphql
|
|
36
35
|
{
|
|
37
36
|
fruits(page: 2, limit: 2) {
|
|
38
37
|
collection {
|
|
@@ -49,31 +48,54 @@ Value returned by query resolver must be a kaminari object or implements its pag
|
|
|
49
48
|
}
|
|
50
49
|
```
|
|
51
50
|
|
|
52
|
-
```
|
|
51
|
+
```json
|
|
53
52
|
{
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
53
|
+
"data": {
|
|
54
|
+
"checklists": {
|
|
55
|
+
"collection": [
|
|
57
56
|
{
|
|
58
|
-
|
|
59
|
-
|
|
57
|
+
"id": "93938bb3-7a6c-4d35-9961-cbb2d4c9e9ac",
|
|
58
|
+
"name": "Apple"
|
|
60
59
|
},
|
|
61
60
|
{
|
|
62
|
-
|
|
63
|
-
|
|
61
|
+
"id": "b1ee93b2-579a-4107-8454-119bba5afb63",
|
|
62
|
+
"name": "Mango"
|
|
64
63
|
}
|
|
65
64
|
],
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
65
|
+
"metadata": {
|
|
66
|
+
"totalPages": 25,
|
|
67
|
+
"totalCount": 50,
|
|
68
|
+
"currentPage": 2,
|
|
69
|
+
"limitValue": 2
|
|
71
70
|
}
|
|
72
71
|
}
|
|
73
72
|
}
|
|
74
73
|
}
|
|
75
74
|
```
|
|
76
75
|
|
|
76
|
+
## Custom Metadata
|
|
77
|
+
|
|
78
|
+
By default, the following fields are present in the metadata block:
|
|
79
|
+
|
|
80
|
+
```graphql
|
|
81
|
+
metadata {
|
|
82
|
+
totalPages
|
|
83
|
+
totalCount
|
|
84
|
+
currentPage
|
|
85
|
+
limitValue
|
|
86
|
+
}
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
These fields correspond to the `GraphqlPagination::CollectionMetadataType` used to provide the pagination information for the collection of data delivered. If you want to add more metadata fields to this block, you can do so by extending this `CollectionMetadataType`:
|
|
90
|
+
|
|
91
|
+
```ruby
|
|
92
|
+
class MyMetadataType < GraphqlPagination::CollectionMetadataType
|
|
93
|
+
field :custom_field, String, null: false
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
field :fruits, Types::FruitType.collection_type(metadata_type: MyMetadataType)
|
|
97
|
+
```
|
|
98
|
+
|
|
77
99
|
## Contributing
|
|
78
100
|
|
|
79
101
|
Bug reports and pull requests are welcome on GitHub at https://github.com/renofi/graphql-pagination. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
|
@@ -81,4 +103,3 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/renofi
|
|
|
81
103
|
## License
|
|
82
104
|
|
|
83
105
|
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
|
84
|
-
|
data/Rakefile
CHANGED
data/graphql-pagination.gemspec
CHANGED
|
@@ -3,29 +3,29 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
|
3
3
|
require 'graphql_pagination/version'
|
|
4
4
|
|
|
5
5
|
Gem::Specification.new do |spec|
|
|
6
|
-
spec.name
|
|
6
|
+
spec.name = 'graphql-pagination'
|
|
7
7
|
spec.version = GraphqlPagination::VERSION
|
|
8
8
|
spec.authors = ['Krzysztof Knapik', 'RenoFi Engineering Team']
|
|
9
|
-
spec.email
|
|
9
|
+
spec.email = ['knapo@knapo.net', 'engineering@renofi.com']
|
|
10
10
|
|
|
11
|
-
spec.summary
|
|
11
|
+
spec.summary = 'Page-based kaminari pagination for graphql.'
|
|
12
12
|
spec.description = 'Page-based kaminari pagination for graphql returning collection and pagination metadata.'
|
|
13
|
-
spec.homepage
|
|
14
|
-
spec.license
|
|
13
|
+
spec.homepage = 'https://github.com/RenoFi/graphql-pagination'
|
|
14
|
+
spec.license = 'MIT'
|
|
15
15
|
|
|
16
16
|
spec.metadata['homepage_uri'] = 'https://github.com/RenoFi/graphql-pagination'
|
|
17
17
|
spec.metadata['source_code_uri'] = 'https://github.com/RenoFi/graphql-pagination'
|
|
18
18
|
|
|
19
19
|
spec.files = Dir.chdir(__dir__) do
|
|
20
|
-
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(bin
|
|
20
|
+
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(bin/|spec/|\.rub)}) }
|
|
21
21
|
end
|
|
22
|
-
spec.bindir
|
|
23
|
-
spec.executables
|
|
22
|
+
spec.bindir = 'exe'
|
|
23
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
24
24
|
spec.require_paths = ['lib']
|
|
25
25
|
|
|
26
|
-
spec.required_ruby_version = '>= 2.
|
|
26
|
+
spec.required_ruby_version = '>= 2.6'
|
|
27
27
|
|
|
28
|
-
spec.add_dependency 'graphql', '~> 1.
|
|
28
|
+
spec.add_dependency 'graphql', '~> 1.11'
|
|
29
29
|
|
|
30
30
|
spec.add_development_dependency 'kaminari-activerecord'
|
|
31
31
|
spec.add_development_dependency 'kaminari-core'
|
|
@@ -33,5 +33,6 @@ Gem::Specification.new do |spec|
|
|
|
33
33
|
spec.add_development_dependency 'rake'
|
|
34
34
|
spec.add_development_dependency 'rspec'
|
|
35
35
|
spec.add_development_dependency 'rubocop'
|
|
36
|
-
spec.add_development_dependency 'rubocop-
|
|
36
|
+
spec.add_development_dependency 'rubocop-rake'
|
|
37
|
+
spec.add_development_dependency 'rubocop-rspec'
|
|
37
38
|
end
|
data/lib/graphql_pagination.rb
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
module GraphqlPagination
|
|
2
2
|
class CollectionMetadataType < GraphQL::Schema::Object
|
|
3
3
|
field :current_page, Integer, null: false
|
|
4
|
-
field :limit_value,
|
|
5
|
-
field :total_count,
|
|
6
|
-
field :total_pages,
|
|
4
|
+
field :limit_value, Integer, null: false
|
|
5
|
+
field :total_count, Integer, null: false
|
|
6
|
+
field :total_pages, Integer, null: false
|
|
7
7
|
end
|
|
8
8
|
end
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
module GraphqlPagination
|
|
2
2
|
module CollectionType
|
|
3
|
-
def collection_type
|
|
4
|
-
@
|
|
3
|
+
def collection_type(metadata_type: GraphqlPagination::CollectionMetadataType)
|
|
4
|
+
@collection_types ||= {}
|
|
5
|
+
@collection_types[metadata_type] ||= begin
|
|
5
6
|
type_name = "#{graphql_name}Collection"
|
|
6
7
|
source_type = self
|
|
7
8
|
|
|
8
9
|
Class.new(GraphQL::Schema::Object) do
|
|
9
10
|
graphql_name type_name
|
|
10
11
|
field :collection, [source_type], null: false
|
|
11
|
-
field :metadata,
|
|
12
|
+
field :metadata, metadata_type, null: false
|
|
12
13
|
|
|
13
14
|
def collection
|
|
14
15
|
object
|
metadata
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: graphql-pagination
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 1.1.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Krzysztof Knapik
|
|
8
8
|
- RenoFi Engineering Team
|
|
9
|
-
autorequire:
|
|
9
|
+
autorequire:
|
|
10
10
|
bindir: exe
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date:
|
|
12
|
+
date: 2021-07-08 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: graphql
|
|
@@ -17,14 +17,14 @@ dependencies:
|
|
|
17
17
|
requirements:
|
|
18
18
|
- - "~>"
|
|
19
19
|
- !ruby/object:Gem::Version
|
|
20
|
-
version: 1.
|
|
20
|
+
version: '1.11'
|
|
21
21
|
type: :runtime
|
|
22
22
|
prerelease: false
|
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
|
24
24
|
requirements:
|
|
25
25
|
- - "~>"
|
|
26
26
|
- !ruby/object:Gem::Version
|
|
27
|
-
version: 1.
|
|
27
|
+
version: '1.11'
|
|
28
28
|
- !ruby/object:Gem::Dependency
|
|
29
29
|
name: kaminari-activerecord
|
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -110,7 +110,21 @@ dependencies:
|
|
|
110
110
|
- !ruby/object:Gem::Version
|
|
111
111
|
version: '0'
|
|
112
112
|
- !ruby/object:Gem::Dependency
|
|
113
|
-
name: rubocop-
|
|
113
|
+
name: rubocop-rake
|
|
114
|
+
requirement: !ruby/object:Gem::Requirement
|
|
115
|
+
requirements:
|
|
116
|
+
- - ">="
|
|
117
|
+
- !ruby/object:Gem::Version
|
|
118
|
+
version: '0'
|
|
119
|
+
type: :development
|
|
120
|
+
prerelease: false
|
|
121
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
122
|
+
requirements:
|
|
123
|
+
- - ">="
|
|
124
|
+
- !ruby/object:Gem::Version
|
|
125
|
+
version: '0'
|
|
126
|
+
- !ruby/object:Gem::Dependency
|
|
127
|
+
name: rubocop-rspec
|
|
114
128
|
requirement: !ruby/object:Gem::Requirement
|
|
115
129
|
requirements:
|
|
116
130
|
- - ">="
|
|
@@ -132,11 +146,16 @@ executables: []
|
|
|
132
146
|
extensions: []
|
|
133
147
|
extra_rdoc_files: []
|
|
134
148
|
files:
|
|
149
|
+
- ".bundler-version"
|
|
150
|
+
- ".dependabot/config.yml"
|
|
151
|
+
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
|
152
|
+
- ".github/ISSUE_TEMPLATE/config.yml"
|
|
153
|
+
- ".github/ISSUE_TEMPLATE/story.md"
|
|
154
|
+
- ".github/PULL_REQUEST_TEMPLATE.md"
|
|
155
|
+
- ".github/workflows/auto-approve.yml"
|
|
156
|
+
- ".github/workflows/auto-merge.yml"
|
|
135
157
|
- ".gitignore"
|
|
136
158
|
- ".rspec"
|
|
137
|
-
- ".rubocop.yml"
|
|
138
|
-
- ".ruby-gemset"
|
|
139
|
-
- ".ruby-version"
|
|
140
159
|
- ".travis.yml"
|
|
141
160
|
- Gemfile
|
|
142
161
|
- Gemfile.lock
|
|
@@ -155,7 +174,7 @@ licenses:
|
|
|
155
174
|
metadata:
|
|
156
175
|
homepage_uri: https://github.com/RenoFi/graphql-pagination
|
|
157
176
|
source_code_uri: https://github.com/RenoFi/graphql-pagination
|
|
158
|
-
post_install_message:
|
|
177
|
+
post_install_message:
|
|
159
178
|
rdoc_options: []
|
|
160
179
|
require_paths:
|
|
161
180
|
- lib
|
|
@@ -163,15 +182,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
163
182
|
requirements:
|
|
164
183
|
- - ">="
|
|
165
184
|
- !ruby/object:Gem::Version
|
|
166
|
-
version: '2.
|
|
185
|
+
version: '2.6'
|
|
167
186
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
168
187
|
requirements:
|
|
169
188
|
- - ">="
|
|
170
189
|
- !ruby/object:Gem::Version
|
|
171
190
|
version: '0'
|
|
172
191
|
requirements: []
|
|
173
|
-
rubygems_version: 3.
|
|
174
|
-
signing_key:
|
|
192
|
+
rubygems_version: 3.2.15
|
|
193
|
+
signing_key:
|
|
175
194
|
specification_version: 4
|
|
176
195
|
summary: Page-based kaminari pagination for graphql.
|
|
177
196
|
test_files: []
|
data/.rubocop.yml
DELETED
data/.ruby-gemset
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
graphql-pagination
|
data/.ruby-version
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
2.6.5
|