stripe 5.43.0 → 5.46.0
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/CHANGELOG.md +13 -0
- data/VERSION +1 -1
- data/lib/stripe/api_operations/search.rb +19 -0
- data/lib/stripe/object_types.rb +2 -0
- data/lib/stripe/resources/payment_intent.rb +10 -0
- data/lib/stripe/resources/refund.rb +11 -0
- data/lib/stripe/resources/setup_intent.rb +10 -0
- data/lib/stripe/resources/test_helpers/test_clock.rb +25 -0
- data/lib/stripe/resources.rb +1 -0
- data/lib/stripe/search_result_object.rb +86 -0
- data/lib/stripe/version.rb +1 -1
- data/lib/stripe.rb +2 -0
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dc0fdc03553a1cb2d1d67ebe31538b25abd248d7f48ba0c6377bb8a9ff097a89
|
4
|
+
data.tar.gz: 31e2871a1f52b97e1994c3a4a4eb62068361167cb8c1d5a731244380247d2905
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 568b6acfdd6d7824cba36b8cf7c5ca6c85a11f2c0f9081df12175045e917a321b937c81ce98ebe43f455fc49e3d95d315c8da77ff6f7427d87197c4fbf08d80e
|
7
|
+
data.tar.gz: af1ed8b0d8d5f0782a7e953a6f56834f1fe7fb91eef2eeb82178e3dff784d5781cbee9fa53ac0c6ba0301124a7672cee39659716ac5c4a881e4a51a45cfec754
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,18 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 5.46.0 - 2022-03-23
|
4
|
+
* [#1039](https://github.com/stripe/stripe-ruby/pull/1039) API Updates
|
5
|
+
* Add support for `cancel` method on resource `Refund`
|
6
|
+
* [#992](https://github.com/stripe/stripe-ruby/pull/992) Add support for Search API
|
7
|
+
|
8
|
+
## 5.45.0 - 2022-03-01
|
9
|
+
* [#1035](https://github.com/stripe/stripe-ruby/pull/1035) API Updates
|
10
|
+
* Add support for new resource `TestHelpers.TestClock`
|
11
|
+
|
12
|
+
## 5.44.0 - 2022-02-16
|
13
|
+
* [#1032](https://github.com/stripe/stripe-ruby/pull/1032) API Updates
|
14
|
+
* Add support for `verify_microdeposits` method on resources `PaymentIntent` and `SetupIntent`
|
15
|
+
|
3
16
|
## 5.43.0 - 2022-01-20
|
4
17
|
* [#1031](https://github.com/stripe/stripe-ruby/pull/1031) API Updates
|
5
18
|
* Add support for new resource `PaymentLink`
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
5.
|
1
|
+
5.46.0
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Stripe
|
4
|
+
module APIOperations
|
5
|
+
module Search
|
6
|
+
def _search(search_url, filters = {}, opts = {})
|
7
|
+
opts = Util.normalize_opts(opts)
|
8
|
+
|
9
|
+
resp, opts = execute_resource_request(:get, search_url, filters, opts)
|
10
|
+
obj = SearchResultObject.construct_from(resp.data, opts)
|
11
|
+
|
12
|
+
# set filters so that we can fetch the same limit and query
|
13
|
+
# when accessing the next page
|
14
|
+
obj.filters = filters.dup
|
15
|
+
obj
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/lib/stripe/object_types.rb
CHANGED
@@ -9,6 +9,7 @@ module Stripe
|
|
9
9
|
{
|
10
10
|
# data structures
|
11
11
|
ListObject::OBJECT_NAME => ListObject,
|
12
|
+
SearchResultObject::OBJECT_NAME => SearchResultObject,
|
12
13
|
|
13
14
|
# business objects
|
14
15
|
Account::OBJECT_NAME => Account,
|
@@ -94,6 +95,7 @@ module Stripe
|
|
94
95
|
Terminal::ConnectionToken::OBJECT_NAME => Terminal::ConnectionToken,
|
95
96
|
Terminal::Location::OBJECT_NAME => Terminal::Location,
|
96
97
|
Terminal::Reader::OBJECT_NAME => Terminal::Reader,
|
98
|
+
TestHelpers::TestClock::OBJECT_NAME => TestHelpers::TestClock,
|
97
99
|
ThreeDSecure::OBJECT_NAME => ThreeDSecure,
|
98
100
|
Token::OBJECT_NAME => Token,
|
99
101
|
Topup::OBJECT_NAME => Topup,
|
@@ -12,6 +12,7 @@ module Stripe
|
|
12
12
|
custom_method :cancel, http_verb: :post
|
13
13
|
custom_method :capture, http_verb: :post
|
14
14
|
custom_method :confirm, http_verb: :post
|
15
|
+
custom_method :verify_microdeposits, http_verb: :post
|
15
16
|
|
16
17
|
def cancel(params = {}, opts = {})
|
17
18
|
request_stripe_object(
|
@@ -39,5 +40,14 @@ module Stripe
|
|
39
40
|
opts: opts
|
40
41
|
)
|
41
42
|
end
|
43
|
+
|
44
|
+
def verify_microdeposits(params = {}, opts = {})
|
45
|
+
request_stripe_object(
|
46
|
+
method: :post,
|
47
|
+
path: resource_url + "/verify_microdeposits",
|
48
|
+
params: params,
|
49
|
+
opts: opts
|
50
|
+
)
|
51
|
+
end
|
42
52
|
end
|
43
53
|
end
|
@@ -8,5 +8,16 @@ module Stripe
|
|
8
8
|
include Stripe::APIOperations::Save
|
9
9
|
|
10
10
|
OBJECT_NAME = "refund"
|
11
|
+
|
12
|
+
custom_method :cancel, http_verb: :post
|
13
|
+
|
14
|
+
def cancel(params = {}, opts = {})
|
15
|
+
request_stripe_object(
|
16
|
+
method: :post,
|
17
|
+
path: resource_url + "/cancel",
|
18
|
+
params: params,
|
19
|
+
opts: opts
|
20
|
+
)
|
21
|
+
end
|
11
22
|
end
|
12
23
|
end
|
@@ -11,6 +11,7 @@ module Stripe
|
|
11
11
|
|
12
12
|
custom_method :cancel, http_verb: :post
|
13
13
|
custom_method :confirm, http_verb: :post
|
14
|
+
custom_method :verify_microdeposits, http_verb: :post
|
14
15
|
|
15
16
|
def cancel(params = {}, opts = {})
|
16
17
|
request_stripe_object(
|
@@ -29,5 +30,14 @@ module Stripe
|
|
29
30
|
opts: opts
|
30
31
|
)
|
31
32
|
end
|
33
|
+
|
34
|
+
def verify_microdeposits(params = {}, opts = {})
|
35
|
+
request_stripe_object(
|
36
|
+
method: :post,
|
37
|
+
path: resource_url + "/verify_microdeposits",
|
38
|
+
params: params,
|
39
|
+
opts: opts
|
40
|
+
)
|
41
|
+
end
|
32
42
|
end
|
33
43
|
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
module TestHelpers
|
6
|
+
class TestClock < APIResource
|
7
|
+
extend Stripe::APIOperations::Create
|
8
|
+
include Stripe::APIOperations::Delete
|
9
|
+
extend Stripe::APIOperations::List
|
10
|
+
|
11
|
+
OBJECT_NAME = "test_helpers.test_clock"
|
12
|
+
|
13
|
+
custom_method :advance, http_verb: :post
|
14
|
+
|
15
|
+
def advance(params = {}, opts = {})
|
16
|
+
request_stripe_object(
|
17
|
+
method: :post,
|
18
|
+
path: resource_url + "/advance",
|
19
|
+
params: params,
|
20
|
+
opts: opts
|
21
|
+
)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
data/lib/stripe/resources.rb
CHANGED
@@ -83,6 +83,7 @@ require "stripe/resources/tax_rate"
|
|
83
83
|
require "stripe/resources/terminal/connection_token"
|
84
84
|
require "stripe/resources/terminal/location"
|
85
85
|
require "stripe/resources/terminal/reader"
|
86
|
+
require "stripe/resources/test_helpers/test_clock"
|
86
87
|
require "stripe/resources/three_d_secure"
|
87
88
|
require "stripe/resources/token"
|
88
89
|
require "stripe/resources/topup"
|
@@ -0,0 +1,86 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Stripe
|
4
|
+
class SearchResultObject < StripeObject
|
5
|
+
include Enumerable
|
6
|
+
include Stripe::APIOperations::Search
|
7
|
+
include Stripe::APIOperations::Request
|
8
|
+
|
9
|
+
OBJECT_NAME = "search_result"
|
10
|
+
|
11
|
+
# This accessor allows a `SearchResultObject` to inherit various filters
|
12
|
+
# that were given to a predecessor. This allows for things like consistent
|
13
|
+
# limits, expansions, and predicates as a user pages through resources.
|
14
|
+
attr_accessor :filters
|
15
|
+
|
16
|
+
# An empty search result object. This is returned from +next+ when we know
|
17
|
+
# that there isn't a next page in order to replicate the behavior of the API
|
18
|
+
# when it attempts to return a page beyond the last.
|
19
|
+
def self.empty_search_result(opts = {})
|
20
|
+
SearchResultObject.construct_from({ data: [] }, opts)
|
21
|
+
end
|
22
|
+
|
23
|
+
def initialize(*args)
|
24
|
+
super
|
25
|
+
self.filters = {}
|
26
|
+
end
|
27
|
+
|
28
|
+
def [](key)
|
29
|
+
case key
|
30
|
+
when String, Symbol
|
31
|
+
super
|
32
|
+
else
|
33
|
+
raise ArgumentError,
|
34
|
+
"You tried to access the #{key.inspect} index, but " \
|
35
|
+
"SearchResultObject types only support String keys. " \
|
36
|
+
"(HINT: Search calls return an object with a 'data' (which is " \
|
37
|
+
"the data array). You likely want to call #data[#{key.inspect}])"
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
# Iterates through each resource in the page represented by the current
|
42
|
+
# `SearchListObject`.
|
43
|
+
#
|
44
|
+
# Note that this method makes no effort to fetch a new page when it gets to
|
45
|
+
# the end of the current page's resources. See also +auto_paging_each+.
|
46
|
+
def each(&blk)
|
47
|
+
data.each(&blk)
|
48
|
+
end
|
49
|
+
|
50
|
+
# Returns true if the page object contains no elements.
|
51
|
+
def empty?
|
52
|
+
data.empty?
|
53
|
+
end
|
54
|
+
|
55
|
+
# Iterates through each resource in all pages, making additional fetches to
|
56
|
+
# the API as necessary.
|
57
|
+
#
|
58
|
+
# Note that this method will make as many API calls as necessary to fetch
|
59
|
+
# all resources. For more granular control, please see +each+ and
|
60
|
+
# +next_search_result_page+.
|
61
|
+
def auto_paging_each(&blk)
|
62
|
+
return enum_for(:auto_paging_each) unless block_given?
|
63
|
+
|
64
|
+
page = self
|
65
|
+
|
66
|
+
loop do
|
67
|
+
page.each(&blk)
|
68
|
+
page = page.next_search_result_page
|
69
|
+
|
70
|
+
break if page.empty?
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
# Fetches the next page in the resource list (if there is one).
|
75
|
+
#
|
76
|
+
# This method will try to respect the limit of the current page. If none
|
77
|
+
# was given, the default limit will be fetched again.
|
78
|
+
def next_search_result_page(params = {}, opts = {})
|
79
|
+
return self.class.empty_search_result(opts) unless has_more
|
80
|
+
|
81
|
+
params = filters.merge(page: next_page).merge(params)
|
82
|
+
|
83
|
+
_search(url, params, opts)
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
data/lib/stripe/version.rb
CHANGED
data/lib/stripe.rb
CHANGED
@@ -24,6 +24,7 @@ require "stripe/api_operations/list"
|
|
24
24
|
require "stripe/api_operations/nested_resource"
|
25
25
|
require "stripe/api_operations/request"
|
26
26
|
require "stripe/api_operations/save"
|
27
|
+
require "stripe/api_operations/search"
|
27
28
|
|
28
29
|
# API resource support classes
|
29
30
|
require "stripe/errors"
|
@@ -35,6 +36,7 @@ require "stripe/stripe_client"
|
|
35
36
|
require "stripe/stripe_object"
|
36
37
|
require "stripe/stripe_response"
|
37
38
|
require "stripe/list_object"
|
39
|
+
require "stripe/search_result_object"
|
38
40
|
require "stripe/error_object"
|
39
41
|
require "stripe/api_resource"
|
40
42
|
require "stripe/singleton_api_resource"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stripe
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.
|
4
|
+
version: 5.46.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stripe
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-03-23 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Stripe is the easiest way to accept payments online. See https://stripe.com
|
14
14
|
for details.
|
@@ -36,6 +36,7 @@ files:
|
|
36
36
|
- lib/stripe/api_operations/nested_resource.rb
|
37
37
|
- lib/stripe/api_operations/request.rb
|
38
38
|
- lib/stripe/api_operations/save.rb
|
39
|
+
- lib/stripe/api_operations/search.rb
|
39
40
|
- lib/stripe/api_resource.rb
|
40
41
|
- lib/stripe/connection_manager.rb
|
41
42
|
- lib/stripe/error_object.rb
|
@@ -128,6 +129,7 @@ files:
|
|
128
129
|
- lib/stripe/resources/terminal/connection_token.rb
|
129
130
|
- lib/stripe/resources/terminal/location.rb
|
130
131
|
- lib/stripe/resources/terminal/reader.rb
|
132
|
+
- lib/stripe/resources/test_helpers/test_clock.rb
|
131
133
|
- lib/stripe/resources/three_d_secure.rb
|
132
134
|
- lib/stripe/resources/token.rb
|
133
135
|
- lib/stripe/resources/topup.rb
|
@@ -135,6 +137,7 @@ files:
|
|
135
137
|
- lib/stripe/resources/usage_record.rb
|
136
138
|
- lib/stripe/resources/usage_record_summary.rb
|
137
139
|
- lib/stripe/resources/webhook_endpoint.rb
|
140
|
+
- lib/stripe/search_result_object.rb
|
138
141
|
- lib/stripe/singleton_api_resource.rb
|
139
142
|
- lib/stripe/stripe_client.rb
|
140
143
|
- lib/stripe/stripe_configuration.rb
|