Skip to content

Commit e2cb620

Browse files
committed
WIP
1 parent 2833caf commit e2cb620

99 files changed

Lines changed: 1772 additions & 1542 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

lib/stripe.ex

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
defmodule StripityStripeFork do
1+
defmodule StripeFork do
22
@moduledoc """
3-
A HTTP client for StripityStripeFork.
3+
A HTTP client for StripeFork.
44
55
## Configuration
66
@@ -22,7 +22,7 @@ defmodule StripityStripeFork do
2222
Stripity Stripe is set up to use an HTTP connection pool by default. This
2323
means that it will reuse already opened HTTP connections in order to
2424
minimize the overhead of establishing connections. The pool is directly
25-
supervised by Stripity StripityStripeFork. Two configuration options are
25+
supervised by StripeFork. Two configuration options are
2626
available to tune how this pool works: `:timeout` and `:max_connections`.
2727
2828
`:timeout` is the amount of time that a connection will be allowed
@@ -49,11 +49,11 @@ defmodule StripityStripeFork do
4949

5050
@type id :: String.t()
5151
@type date_query :: %{
52-
optional(:gt) => timestamp,
53-
optional(:gte) => timestamp,
54-
optional(:lt) => timestamp,
55-
optional(:lte) => timestamp
56-
}
52+
optional(:gt) => timestamp,
53+
optional(:gte) => timestamp,
54+
optional(:lt) => timestamp,
55+
optional(:lte) => timestamp
56+
}
5757
@type options :: Keyword.t()
5858
@type timestamp :: pos_integer
5959

@@ -74,9 +74,9 @@ defmodule StripityStripeFork do
7474
def start(_start_type, _args) do
7575
import Supervisor.Spec, warn: false
7676

77-
children = StripityStripeFork.API.supervisor_children()
77+
children = StripeFork.API.supervisor_children()
7878

79-
opts = [strategy: :one_for_one, name: StripityStripeFork.Supervisor]
79+
opts = [strategy: :one_for_one, name: StripeFork.Supervisor]
8080
Supervisor.start_link(children, opts)
8181
end
8282
end

lib/stripe/api.ex

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
defmodule StripityStripeFork.API do
1+
defmodule StripeFork.API do
22
@moduledoc """
33
Low-level utilities for interacting with the Stripe API.
44
5-
Usually the utilities in `StripityStripeFork.Request` are a better way to write custom interactions with
5+
Usually the utilities in `StripeFork.Request` are a better way to write custom interactions with
66
the API.
77
"""
8-
alias StripityStripeFork.Error
8+
alias StripeFork.Error
99

1010
@callback oauth_request(method, String.t(), map) :: {:ok, map}
1111

@@ -134,16 +134,16 @@ defmodule StripityStripeFork.API do
134134
135135
"""
136136
@spec request(body, method, String.t(), headers, list) ::
137-
{:ok, map} | {:error, StripityStripeFork.Error.t()}
137+
{:ok, map} | {:error, StripeFork.Error.t()}
138138
def request(body, :get, endpoint, headers, opts) do
139139
{expansion, opts} = Keyword.pop(opts, :expand)
140140
base_url = get_base_url()
141141

142142
req_url =
143143
body
144-
|> StripityStripeFork.Util.map_keys_to_atoms()
144+
|> StripeFork.Util.map_keys_to_atoms()
145145
|> add_object_expansion(expansion)
146-
|> StripityStripeFork.URI.encode_query()
146+
|> StripeFork.URI.encode_query()
147147
|> prepend_url("#{base_url}#{endpoint}")
148148

149149
perform_request(req_url, :get, "", headers, opts)
@@ -157,8 +157,8 @@ defmodule StripityStripeFork.API do
157157

158158
req_body =
159159
body
160-
|> StripityStripeFork.Util.map_keys_to_atoms()
161-
|> StripityStripeFork.URI.encode_query()
160+
|> StripeFork.Util.map_keys_to_atoms()
161+
|> StripeFork.URI.encode_query()
162162

163163
perform_request(req_url, method, req_body, headers, opts)
164164
end
@@ -167,7 +167,7 @@ defmodule StripityStripeFork.API do
167167
A low level utility function to make a direct request to the files Stripe API
168168
"""
169169
@spec request_file_upload(body, method, String.t(), headers, list) ::
170-
{:ok, map} | {:error, StripityStripeFork.Error.t()}
170+
{:ok, map} | {:error, StripeFork.Error.t()}
171171
def request_file_upload(body, :post, endpoint, headers, opts) do
172172
base_url = get_upload_url()
173173
req_url = base_url <> endpoint
@@ -179,7 +179,7 @@ defmodule StripityStripeFork.API do
179179
parts =
180180
body
181181
|> Enum.map(fn {key, value} ->
182-
{StripityStripeFork.Util.multipart_key(key), value}
182+
{StripeFork.Util.multipart_key(key), value}
183183
end)
184184

185185
perform_request(req_url, :post, {:multipart, parts}, req_headers, opts)
@@ -191,20 +191,20 @@ defmodule StripityStripeFork.API do
191191

192192
req_body =
193193
body
194-
|> StripityStripeFork.Util.map_keys_to_atoms()
195-
|> StripityStripeFork.URI.encode_query()
194+
|> StripeFork.Util.map_keys_to_atoms()
195+
|> StripeFork.URI.encode_query()
196196

197197
perform_request(req_url, method, req_body, headers, opts)
198198
end
199199

200200
@doc """
201201
A low level utility function to make an OAuth request to the Stripe API
202202
"""
203-
@spec oauth_request(method, String.t(), map) :: {:ok, map} | {:error, StripityStripeFork.Error.t()}
203+
@spec oauth_request(method, String.t(), map) :: {:ok, map} | {:error, StripeFork.Error.t()}
204204
def oauth_request(method, endpoint, body) do
205205
base_url = "https://connect.stripe.com/oauth/"
206206
req_url = base_url <> endpoint
207-
req_body = StripityStripeFork.URI.encode_query(body)
207+
req_body = StripeFork.URI.encode_query(body)
208208

209209
req_headers =
210210
%{}
@@ -221,7 +221,7 @@ defmodule StripityStripeFork.API do
221221
end
222222

223223
@spec perform_request(String.t(), method, body, headers, list) ::
224-
{:ok, map} | {:error, StripityStripeFork.Error.t()}
224+
{:ok, map} | {:error, StripeFork.Error.t()}
225225
defp perform_request(req_url, method, body, headers, opts) do
226226
{connect_account_id, opts} = Keyword.pop(opts, :connect_account)
227227
{api_key, opts} = Keyword.pop(opts, :api_key)
@@ -242,7 +242,8 @@ defmodule StripityStripeFork.API do
242242
|> handle_response()
243243
end
244244

245-
@spec handle_response(http_success | http_failure) :: {:ok, map} | {:error, StripityStripeFork.Error.t()}
245+
@spec handle_response(http_success | http_failure) ::
246+
{:ok, map} | {:error, StripeFork.Error.t()}
246247
defp handle_response({:ok, status, headers, body}) when status >= 200 and status <= 299 do
247248
decoded_body =
248249
body

lib/stripe/connect/account.ex

Lines changed: 35 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
defmodule StripityStripeFork.Account do
1+
defmodule StripeFork.Account do
22
@moduledoc """
33
Work with Stripe Connect account objects.
44
@@ -12,8 +12,8 @@ defmodule StripityStripeFork.Account do
1212
Stripe API reference: https://stripe.com/docs/api#account
1313
"""
1414

15-
use StripityStripeFork.Entity
16-
import StripityStripeFork.Request
15+
use StripeFork.Entity
16+
import StripeFork.Request
1717

1818
@type decline_charge_on :: %{
1919
avs_failure: boolean,
@@ -88,41 +88,41 @@ defmodule StripityStripeFork.Account do
8888
@type legal_entity_verification :: %{
8989
details: String.t() | nil,
9090
details_code: String.t() | nil,
91-
document: StripityStripeFork.id() | StripityStripeFork.FileUpload.t() | nil,
91+
document: StripeFork.id() | StripeFork.FileUpload.t() | nil,
9292
status: String.t()
9393
}
9494

9595
@type tos_acceptance :: %{
96-
date: StripityStripeFork.timestamp() | nil,
96+
date: StripeFork.timestamp() | nil,
9797
ip: String.t() | nil,
9898
user_agent: String.t() | nil
9999
}
100100

101101
@type verification :: %{
102102
disabled_reason: String.t() | nil,
103-
due_by: StripityStripeFork.timestamp() | nil,
103+
due_by: StripeFork.timestamp() | nil,
104104
fields_needed: [String.t()]
105105
}
106106

107107
@type t :: %__MODULE__{
108-
id: StripityStripeFork.id(),
108+
id: StripeFork.id(),
109109
object: String.t(),
110110
business_logo: String.t() | nil,
111111
business_name: String.t() | nil,
112112
business_url: String.t() | nil,
113113
charges_enabled: boolean,
114-
created: StripityStripeFork.timestamp() | nil,
114+
created: StripeFork.timestamp() | nil,
115115
country: String.t(),
116116
debit_negative_balances: boolean,
117117
decline_charge_on: decline_charge_on,
118118
default_currency: String.t(),
119119
details_submitted: boolean,
120120
display_name: String.t() | nil,
121121
email: String.t() | nil,
122-
external_accounts: StripityStripeFork.List.t(StripityStripeFork.BankAccount.t() | StripityStripeFork.Card.t()),
122+
external_accounts: StripeFork.List.t(StripeFork.BankAccount.t() | StripeFork.Card.t()),
123123
legal_entity: legal_entity,
124-
metadata: StripityStripeFork.Types.metadata(),
125-
payout_schedule: StripityStripeFork.Types.transfer_schedule(),
124+
metadata: StripeFork.Types.metadata(),
125+
payout_schedule: StripeFork.Types.transfer_schedule(),
126126
payout_statement_descriptor: String.t() | nil,
127127
payouts_enabled: boolean,
128128
product_description: String.t() | nil,
@@ -185,8 +185,8 @@ defmodule StripityStripeFork.Account do
185185
optional(:email) => String.t(),
186186
optional(:external_account) => String.t(),
187187
optional(:legal_entity) => legal_entity,
188-
optional(:metadata) => StripityStripeFork.Types.metadata(),
189-
optional(:payout_schedule) => StripityStripeFork.Types.transfer_schedule(),
188+
optional(:metadata) => StripeFork.Types.metadata(),
189+
optional(:payout_schedule) => StripeFork.Types.transfer_schedule(),
190190
optional(:payout_statement_descriptor) => String.t(),
191191
optional(:product_description) => String.t(),
192192
optional(:statement_descriptor) => String.t(),
@@ -199,7 +199,7 @@ defmodule StripityStripeFork.Account do
199199
@doc """
200200
Create an account.
201201
"""
202-
@spec create(params, StripityStripeFork.options()) :: {:ok, t} | {:error, StripityStripeFork.Error.t()}
202+
@spec create(params, StripeFork.options()) :: {:ok, t} | {:error, StripeFork.Error.t()}
203203
when params: %{
204204
optional(:country) => String.t(),
205205
optional(:email) => String.t(),
@@ -217,22 +217,22 @@ defmodule StripityStripeFork.Account do
217217
@doc """
218218
Retrieve your own account without options.
219219
"""
220-
@spec retrieve :: {:ok, t} | {:error, StripityStripeFork.Error.t()}
220+
@spec retrieve :: {:ok, t} | {:error, StripeFork.Error.t()}
221221
def retrieve, do: retrieve([])
222222

223223
@doc """
224224
Retrieve your own account with options.
225225
"""
226-
@spec retrieve(list) :: {:ok, t} | {:error, StripityStripeFork.Error.t()}
226+
@spec retrieve(list) :: {:ok, t} | {:error, StripeFork.Error.t()}
227227
def retrieve(opts) when is_list(opts), do: do_retrieve(@singular_endpoint, opts)
228228

229229
@doc """
230230
Retrieve an account with a specified `id`.
231231
"""
232-
@spec retrieve(binary, list) :: {:ok, t} | {:error, StripityStripeFork.Error.t()}
232+
@spec retrieve(binary, list) :: {:ok, t} | {:error, StripeFork.Error.t()}
233233
def retrieve(id, opts \\ []), do: do_retrieve(@plural_endpoint <> "/" <> id, opts)
234234

235-
@spec do_retrieve(String.t(), list) :: {:ok, t} | {:error, StripityStripeFork.Error.t()}
235+
@spec do_retrieve(String.t(), list) :: {:ok, t} | {:error, StripeFork.Error.t()}
236236
defp do_retrieve(endpoint, opts) do
237237
new_request(opts)
238238
|> put_endpoint(endpoint)
@@ -253,8 +253,8 @@ defmodule StripityStripeFork.Account do
253253
optional(:email) => String.t(),
254254
optional(:external_account) => String.t(),
255255
optional(:legal_entity) => legal_entity,
256-
optional(:metadata) => StripityStripeFork.Types.metadata(),
257-
optional(:payout_schedule) => StripityStripeFork.Types.transfer_schedule(),
256+
optional(:metadata) => StripeFork.Types.metadata(),
257+
optional(:payout_schedule) => StripeFork.Types.transfer_schedule(),
258258
optional(:payout_statement_descriptor) => String.t(),
259259
optional(:product_description) => String.t(),
260260
optional(:statement_descriptor) => String.t(),
@@ -269,7 +269,8 @@ defmodule StripityStripeFork.Account do
269269
270270
Takes the `id` and a map of changes.
271271
"""
272-
@spec update(StripityStripeFork.id() | t, params, StripityStripeFork.options()) :: {:ok, t} | {:error, StripityStripeFork.Error.t()}
272+
@spec update(StripeFork.id() | t, params, StripeFork.options()) ::
273+
{:ok, t} | {:error, StripeFork.Error.t()}
273274
when params: %{
274275
optional(:business_logo) => String.t(),
275276
optional(:business_name) => String.t(),
@@ -281,8 +282,8 @@ defmodule StripityStripeFork.Account do
281282
optional(:email) => String.t(),
282283
optional(:external_accounts) => String.t(),
283284
optional(:legal_entity) => legal_entity,
284-
optional(:metadata) => StripityStripeFork.Types.metadata(),
285-
optional(:payout_schedule) => StripityStripeFork.Types.transfer_schedule(),
285+
optional(:metadata) => StripeFork.Types.metadata(),
286+
optional(:payout_schedule) => StripeFork.Types.transfer_schedule(),
286287
optional(:payout_statement_descriptor) => String.t(),
287288
optional(:product_description) => String.t(),
288289
optional(:statement_descriptor) => String.t(),
@@ -302,7 +303,8 @@ defmodule StripityStripeFork.Account do
302303
@doc """
303304
Delete an account.
304305
"""
305-
@spec delete(StripityStripeFork.id() | t, StripityStripeFork.options()) :: {:ok, t} | {:error, StripityStripeFork.Error.t()}
306+
@spec delete(StripeFork.id() | t, StripeFork.options()) ::
307+
{:ok, t} | {:error, StripeFork.Error.t()}
306308
def delete(id, opts \\ []) do
307309
new_request(opts)
308310
|> put_endpoint(@plural_endpoint <> "/#{get_id!(id)}")
@@ -315,8 +317,8 @@ defmodule StripityStripeFork.Account do
315317
316318
Takes the `id` and `reason`.
317319
"""
318-
@spec reject(StripityStripeFork.id() | t, String.t(), StripityStripeFork.options()) ::
319-
{:ok, t} | {:error, StripityStripeFork.Error.t()}
320+
@spec reject(StripeFork.id() | t, String.t(), StripeFork.options()) ::
321+
{:ok, t} | {:error, StripeFork.Error.t()}
320322
def reject(id, reason, opts \\ []) do
321323
params = %{
322324
reason: reason
@@ -333,11 +335,12 @@ defmodule StripityStripeFork.Account do
333335
@doc """
334336
List all connected accounts.
335337
"""
336-
@spec list(params, StripityStripeFork.options()) :: {:ok, StripityStripeFork.List.t(t)} | {:error, StripityStripeFork.Error.t()}
338+
@spec list(params, StripeFork.options()) ::
339+
{:ok, StripeFork.List.t(t)} | {:error, StripeFork.Error.t()}
337340
when params: %{
338-
optional(:ending_before) => t | StripityStripeFork.id(),
341+
optional(:ending_before) => t | StripeFork.id(),
339342
optional(:limit) => 1..100,
340-
optional(:starting_after) => t | StripityStripeFork.id()
343+
optional(:starting_after) => t | StripeFork.id()
341344
}
342345
def list(params \\ %{}, opts \\ []) do
343346
new_request(opts)
@@ -352,12 +355,12 @@ defmodule StripityStripeFork.Account do
352355
@doc """
353356
Create a login link.
354357
"""
355-
@spec create_login_link(StripityStripeFork.id() | t, params, StripityStripeFork.options()) ::
356-
{:ok, t} | {:error, StripityStripeFork.Error.t()}
358+
@spec create_login_link(StripeFork.id() | t, params, StripeFork.options()) ::
359+
{:ok, t} | {:error, StripeFork.Error.t()}
357360
when params: %{
358361
optional(:redirect_url) => String.t()
359362
}
360363
def create_login_link(id, params, opts \\ []) do
361-
StripityStripeFork.LoginLink.create(id, params, opts)
364+
StripeFork.LoginLink.create(id, params, opts)
362365
end
363366
end

0 commit comments

Comments
 (0)