shopify_api 12.1.0 → 12.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/stale.yml +2 -2
- data/CHANGELOG.md +4 -0
- data/Gemfile.lock +10 -1
- data/README.md +1 -1
- data/docs/usage/session_storage.md +1 -1
- data/lib/shopify_api/auth/oauth.rb +11 -2
- data/lib/shopify_api/version.rb +1 -1
- data/shopify_api.gemspec +1 -0
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2112fae23baafc5b3615a58d54d1c8a2b0a1bfcc4c9a9235b6d76bf80bcdff0e
|
4
|
+
data.tar.gz: 438373f5072f981e9449daac622b55101002df6139cd24e6bff0cfa5601275ce
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 700912ad225f507b09b1aef17c8df1f139eb9b951cc7c42115c0db95dd77b3dd4698fdd164744c5312730de7ecaae70b770b4f5b3370d7913150afcab44dfb28
|
7
|
+
data.tar.gz: bfd499fc0c32a7e8fc6f523b74b77452ee7edb3581cf045982088d792cb45073846c7138b1c0035b61d1c9420b77500e1be8d2e0cbf89d1e2ff0f2d4f0ba8d90
|
data/.github/workflows/stale.yml
CHANGED
@@ -12,12 +12,12 @@ jobs:
|
|
12
12
|
steps:
|
13
13
|
- uses: actions/stale@v5
|
14
14
|
with:
|
15
|
-
days-before-issue-stale:
|
15
|
+
days-before-issue-stale: 60
|
16
16
|
days-before-issue-close: 14
|
17
17
|
operations-per-run: 1000
|
18
18
|
stale-issue-label: "Stale"
|
19
19
|
stale-issue-message: >
|
20
|
-
This issue is stale because it has been open for
|
20
|
+
This issue is stale because it has been open for 60 days with no activity. It will be closed if no further action occurs in 14 days.
|
21
21
|
close-issue-message: |
|
22
22
|
We are closing this issue because it has been inactive for a few months.
|
23
23
|
This probably means that it is not reproducible or it has been fixed in a newer version.
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,10 @@ Note: For changes to the API, see https://shopify.dev/changelog?filter=api
|
|
4
4
|
|
5
5
|
## Unreleased
|
6
6
|
|
7
|
+
## Version 12.2.0
|
8
|
+
|
9
|
+
- [#1023](https://github.com/Shopify/shopify-api-ruby/pull/1023) Allow custom scopes during the OAuth process
|
10
|
+
|
7
11
|
## Version 12.1.0
|
8
12
|
|
9
13
|
- [#1017](https://github.com/Shopify/shopify-api-ruby/pull/1017) Add support for `http` with localhost development without using a TLS tunnel
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
shopify_api (12.
|
4
|
+
shopify_api (12.2.0)
|
5
5
|
concurrent-ruby
|
6
6
|
hash_diff
|
7
7
|
httparty
|
@@ -38,6 +38,7 @@ GEM
|
|
38
38
|
concurrent-ruby (~> 1.0)
|
39
39
|
json (2.6.2)
|
40
40
|
jwt (2.5.0)
|
41
|
+
language_server-protocol (3.17.0.1)
|
41
42
|
method_source (1.0.0)
|
42
43
|
mime-types (3.4.1)
|
43
44
|
mime-types-data (~> 3.2015)
|
@@ -51,6 +52,7 @@ GEM
|
|
51
52
|
parallel (1.22.1)
|
52
53
|
parser (3.1.2.1)
|
53
54
|
ast (~> 2.4.1)
|
55
|
+
prettier_print (0.1.0)
|
54
56
|
pry (0.14.1)
|
55
57
|
coderay (~> 1.1)
|
56
58
|
method_source (~> 1.0)
|
@@ -80,6 +82,10 @@ GEM
|
|
80
82
|
rubocop (~> 1.35)
|
81
83
|
rubocop-sorbet (0.6.11)
|
82
84
|
rubocop (>= 0.90.0)
|
85
|
+
ruby-lsp (0.3.2)
|
86
|
+
language_server-protocol (~> 3.17.0)
|
87
|
+
sorbet-runtime
|
88
|
+
syntax_tree (>= 3.4)
|
83
89
|
ruby-progressbar (1.11.0)
|
84
90
|
securerandom (0.2.0)
|
85
91
|
sorbet (0.5.10438)
|
@@ -94,6 +100,8 @@ GEM
|
|
94
100
|
sorbet (>= 0.5.9204)
|
95
101
|
sorbet-runtime (>= 0.5.9204)
|
96
102
|
thor (>= 0.19.2)
|
103
|
+
syntax_tree (3.6.1)
|
104
|
+
prettier_print
|
97
105
|
tapioca (0.10.2)
|
98
106
|
bundler (>= 1.17.3)
|
99
107
|
netrc (>= 0.11.0)
|
@@ -136,6 +144,7 @@ DEPENDENCIES
|
|
136
144
|
rubocop
|
137
145
|
rubocop-shopify
|
138
146
|
rubocop-sorbet
|
147
|
+
ruby-lsp
|
139
148
|
shopify_api!
|
140
149
|
sorbet
|
141
150
|
tapioca
|
data/README.md
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
This library provides support for Ruby [Shopify apps](https://apps.shopify.com/) to access the [Shopify Admin API](https://shopify.dev/api/admin), by making it easier to perform the following actions:
|
8
8
|
|
9
|
-
- Creating [online](https://shopify.dev/
|
9
|
+
- Creating [online](https://shopify.dev/apps/auth/oauth/access-modes#online-access) or [offline](https://shopify.dev/apps/auth/oauth/access-modes#offline-access) access tokens for the Admin API via OAuth
|
10
10
|
- Making requests to the [REST API](https://shopify.dev/api/admin-rest)
|
11
11
|
- Making requests to the [GraphQL API](https://shopify.dev/api/admin-graphql)
|
12
12
|
- Registering/processing webhooks
|
@@ -5,7 +5,7 @@ The implementation of session storage that you pass in `ShopifyAPI::Context.setu
|
|
5
5
|
|
6
6
|
## Create a New Session Storage Class
|
7
7
|
|
8
|
-
You can create a session storage class that includes `ShopifyAPI::Auth::
|
8
|
+
You can create a session storage class that includes `ShopifyAPI::Auth::SessionStorage` and override the methods as shown in the table and example below:
|
9
9
|
|
10
10
|
| Method Name | Input Type | Return Type |
|
11
11
|
| ---------------------- | --------------------------------- | ------------------------------ |
|
@@ -16,9 +16,18 @@ module ShopifyAPI
|
|
16
16
|
shop: String,
|
17
17
|
redirect_path: String,
|
18
18
|
is_online: T.nilable(T::Boolean),
|
19
|
+
scope_override: T.nilable(T.any(ShopifyAPI::Auth::AuthScopes, T::Array[String], String)),
|
19
20
|
).returns(T::Hash[Symbol, T.any(String, SessionCookie)])
|
20
21
|
end
|
21
|
-
def begin_auth(shop:, redirect_path:, is_online: true)
|
22
|
+
def begin_auth(shop:, redirect_path:, is_online: true, scope_override: nil)
|
23
|
+
scope = if scope_override.nil?
|
24
|
+
ShopifyAPI::Context.scope
|
25
|
+
elsif scope_override.is_a?(ShopifyAPI::Auth::AuthScopes)
|
26
|
+
scope_override
|
27
|
+
else
|
28
|
+
ShopifyAPI::Auth::AuthScopes.new(scope_override)
|
29
|
+
end
|
30
|
+
|
22
31
|
unless Context.setup?
|
23
32
|
raise Errors::ContextNotSetupError, "ShopifyAPI::Context not setup, please call ShopifyAPI::Context.setup"
|
24
33
|
end
|
@@ -30,7 +39,7 @@ module ShopifyAPI
|
|
30
39
|
|
31
40
|
query = {
|
32
41
|
client_id: ShopifyAPI::Context.api_key,
|
33
|
-
scope:
|
42
|
+
scope: scope.to_s,
|
34
43
|
redirect_uri: "#{ShopifyAPI::Context.host}#{redirect_path}",
|
35
44
|
state: state,
|
36
45
|
"grant_options[]": is_online ? "per-user" : "",
|
data/lib/shopify_api/version.rb
CHANGED
data/shopify_api.gemspec
CHANGED
@@ -47,6 +47,7 @@ Gem::Specification.new do |s|
|
|
47
47
|
s.add_development_dependency("rubocop")
|
48
48
|
s.add_development_dependency("rubocop-shopify")
|
49
49
|
s.add_development_dependency("rubocop-sorbet")
|
50
|
+
s.add_development_dependency("ruby-lsp")
|
50
51
|
s.add_development_dependency("sorbet")
|
51
52
|
s.add_development_dependency("tapioca")
|
52
53
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shopify_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 12.
|
4
|
+
version: 12.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shopify
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-10-
|
11
|
+
date: 2022-10-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: concurrent-ruby
|
@@ -206,6 +206,20 @@ dependencies:
|
|
206
206
|
- - ">="
|
207
207
|
- !ruby/object:Gem::Version
|
208
208
|
version: '0'
|
209
|
+
- !ruby/object:Gem::Dependency
|
210
|
+
name: ruby-lsp
|
211
|
+
requirement: !ruby/object:Gem::Requirement
|
212
|
+
requirements:
|
213
|
+
- - ">="
|
214
|
+
- !ruby/object:Gem::Version
|
215
|
+
version: '0'
|
216
|
+
type: :development
|
217
|
+
prerelease: false
|
218
|
+
version_requirements: !ruby/object:Gem::Requirement
|
219
|
+
requirements:
|
220
|
+
- - ">="
|
221
|
+
- !ruby/object:Gem::Version
|
222
|
+
version: '0'
|
209
223
|
- !ruby/object:Gem::Dependency
|
210
224
|
name: sorbet
|
211
225
|
requirement: !ruby/object:Gem::Requirement
|