mp_api 0.3.5 → 0.3.6

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3ebe10713a556b992e763bf6a0a4a418102bfe8469f27d88845d3df70171126d
4
- data.tar.gz: 59f0cd67ff1deec0b91fcd319faa64b9be9e8684f1fb53a5fed516c95dde00a1
3
+ metadata.gz: af6c473fbc12cab2fcc872a734480743f6da9e938f0289f58bcdf4b07275a9dd
4
+ data.tar.gz: 8c37b5e63d81b7187358db698480c57fcd5e8089c5ae06ec8407e9074420aaae
5
5
  SHA512:
6
- metadata.gz: a8e4ea23197bd836248a98d8b7c3d0aef5c1f1fb235ca0fe48389cc8449d0d91a2bc27206fc5f7f8f1cffe5cfb4eeda5e7ec5201167819d2c3eca62eff03fc98
7
- data.tar.gz: 32cd3dba045043c7e99de755d29874f5e009a4b90ea3d260d6c71c6651ecf48117b97765953ee9696555f80c403c1b8a34d8d29cc66c3342dd4375f25ecfb62f
6
+ metadata.gz: 2f2a9a0bdabd4326ddf2167258bf8584d5efa6c7ddc03bd5c6cf85fd9fe7a6353fc29935ce4268033acae052fcb3e03852e1b12289a86b9b31f7022d352605b1
7
+ data.tar.gz: 85ae787be3b4461d11bfc97f88def20b582e3d04d934e2fc785b862a7f26c28ea269aac143177a216c1ae8809b4e1a87ce4005a089d57450444115d79fb6caae
@@ -1,3 +1,3 @@
1
1
  MpApi.configure do |config|
2
2
  # config.access_token = nil
3
- end
3
+ end
data/lib/mp_api/client.rb CHANGED
@@ -1,46 +1,45 @@
1
- module MpApi
2
- class Client < Ac::Base
3
- BASE_URL = "https://api.mercadopago.com/v1/"
4
- MAX_RETRIES = 1
5
- attr_reader :access_token
6
- def initialize(access_token=MpApi.configuration.access_token)
7
- @headers = {
8
- "Content-Type": "application/json",
9
- 'x-idempotency-key' => SecureRandom.uuid
10
- }
11
- super access_token
12
- end
13
-
14
- def create_payment(body)
15
- post("/payments", body: body, headers: @headers) { |response| validate_response(response, 'id')}
16
- end
17
-
18
- def get_payment(payment_id)
19
- get("/payments/#{payment_id}") { |response| validate_response(response, 'id')}
20
- end
21
-
22
- def update_payment(payment_id, body)
23
- put("/payments/#{payment_id}", body: body, headers: @headers) { |response| validate_response(response, 'id')}
24
- end
25
-
26
- def create_token(card_token_data)
27
- post("/card_tokens", body: card_token_data, headers: @headers) { |response| validate_response(response, 'id')}
28
- end
29
-
30
- def search_payment_methods(query)
31
- get("/payment_methods/search", params: query) { |response| validate_response(response, ['results', 0])}
32
- end
33
-
34
- def get_payment_methods
35
- get("/payment_methods") { |response| validate_response(response, 'id')}
36
- end
37
-
38
- private
39
-
40
- def validate_response(response, required_response_key)
41
- puts response.json unless response.success?
42
- ![500, 429].include?(response.code) || response.json.dig(*required_response_key)
43
- end
44
-
45
- end
46
- end
1
+ module MpApi
2
+ class Client < Ac::Base
3
+ BASE_URL = "https://api.mercadopago.com/v1/"
4
+ MAX_RETRIES = 1
5
+ attr_reader :access_token
6
+ def initialize(access_token = MpApi.configuration.access_token)
7
+ @headers = {
8
+ "Content-Type" => "application/json",
9
+ "x-idempotency-key" => SecureRandom.uuid
10
+ }
11
+ super(access_token)
12
+ end
13
+
14
+ def create_payment(body)
15
+ post("/payments", body: body, headers: @headers) { |response| validate_response(response, "id") }
16
+ end
17
+
18
+ def get_payment(payment_id)
19
+ get("/payments/#{payment_id}") { |response| validate_response(response, "id") }
20
+ end
21
+
22
+ def update_payment(payment_id, body)
23
+ put("/payments/#{payment_id}", body: body, headers: @headers) { |response| validate_response(response, "id") }
24
+ end
25
+
26
+ def create_token(card_token_data)
27
+ post("/card_tokens", body: card_token_data, headers: @headers) { |response| validate_response(response, "id") }
28
+ end
29
+
30
+ def search_payment_methods(query)
31
+ get("/payment_methods/search", params: query) { |response| validate_response(response, ["results", 0]) }
32
+ end
33
+
34
+ def get_payment_methods
35
+ get("/payment_methods") { |response| validate_response(response, "id") }
36
+ end
37
+
38
+ private
39
+
40
+ def validate_response(response, required_response_key)
41
+ puts response.json unless response.success?
42
+ ![500, 429].include?(response.code) || response.json.dig(*required_response_key)
43
+ end
44
+ end
45
+ end
@@ -1,8 +1,7 @@
1
1
  module MpApi
2
2
  class Payment
3
-
4
- attr_reader :status_detail, :three_ds_info_creq, :three_ds_info_external_resource_url, :three_d_secure_mode, :id, :description, :date_approved, :date_created, :money_release_date, :payer_email, :payer_identification_type, :payer_identification_number, :payment_method, :payment_type, :qr_code, :qr_code_base_64, :transaction_id, :ticket_url, :status, :amount, :token, :issuer_id, :installments, :statement_descriptor, :items, :errors, :capture, :date_of_expiration
5
- def initialize(status_detail:nil, three_ds_info_creq:nil, three_ds_info_external_resource_url:nil, three_d_secure_mode:nil, id:nil, description:nil, date_approved:nil, date_created:nil, money_release_date:nil, payer_email:, payer_identification_type:, payer_identification_number:, payment_method:, payment_type:nil, qr_code:nil, qr_code_base_64:nil, transaction_id:nil, ticket_url:nil, status:nil, amount:, token:nil, issuer_id:nil, installments:nil, items:nil, statement_descriptor:nil, errors:nil, capture:nil, date_of_expiration:nil)
3
+ attr_reader :status_detail, :three_ds_info_creq, :three_ds_info_external_resource_url, :three_d_secure_mode, :id, :description, :date_approved, :date_created, :money_release_date, :payer_email, :payer_identification_type, :payer_identification_number, :payment_method, :payment_type, :qr_code, :qr_code_base_64, :transaction_id, :ticket_url, :status, :amount, :token, :issuer_id, :installments, :statement_descriptor, :items, :error, :internal_error, :capture, :date_of_expiration
4
+ def initialize(payer_email:, payer_identification_type:, payer_identification_number:, payment_method:, amount:, status_detail: nil, three_ds_info_creq: nil, three_ds_info_external_resource_url: nil, three_d_secure_mode: nil, id: nil, description: nil, date_approved: nil, date_created: nil, money_release_date: nil, payment_type: nil, qr_code: nil, qr_code_base_64: nil, transaction_id: nil, ticket_url: nil, status: nil, token: nil, issuer_id: nil, installments: nil, items: nil, statement_descriptor: nil, error: nil, internal_error: nil, capture: nil, date_of_expiration: nil)
6
5
  @id = id
7
6
  @description = description
8
7
  @date_approved = date_approved
@@ -28,19 +27,20 @@ module MpApi
28
27
  @status_detail = status_detail
29
28
  @statement_descriptor = statement_descriptor
30
29
  @items = items
31
- @errors = errors
30
+ @error = error
31
+ @internal_error = internal_error
32
32
  @capture = capture
33
33
  @date_of_expiration = date_of_expiration
34
34
  end
35
35
 
36
36
  def build_json
37
- send("build_json_#{payment_method == 'pix' ? 'pix' : 'credit_card'}").except(:description)
37
+ send("build_json_#{(payment_method == "pix") ? "pix" : "credit_card"}").except(:description)
38
38
  end
39
39
 
40
40
  def build_update_json
41
41
  {
42
42
  # capture: capture,
43
- status: status,
43
+ status: status
44
44
  # date_of_expiration: date_of_expiration,
45
45
  # transaction_amount: amount
46
46
  }.compact
@@ -72,21 +72,21 @@ module MpApi
72
72
  token: token,
73
73
  issuer_id: issuer_id,
74
74
  installments: installments,
75
- three_d_secure_mode: three_d_secure_mode ? 'optional' : 'not_supported'
75
+ three_d_secure_mode: three_d_secure_mode ? "optional" : "not_supported"
76
76
  }.compact)
77
77
  end
78
-
78
+
79
79
  def create
80
80
  response = Client.new.create_payment(JSON.dump(build_json))
81
81
  self.class.new(**self.class.build_hash(response.json))
82
82
  end
83
-
83
+
84
84
  def update attributes
85
85
  attributes.each do |key, value|
86
86
  instance_variable_set("@#{key}", value)
87
87
  end
88
88
  Client.new.update_payment(id, JSON.dump(build_update_json))
89
- self.class.find_by_id(self.id)
89
+ self.class.find_by_id(id)
90
90
  end
91
91
 
92
92
  def self.find_by_id(payment_id)
@@ -95,27 +95,29 @@ module MpApi
95
95
  end
96
96
 
97
97
  def self.build_hash json_response
98
+ payment_error = PaymentError.new(json_response: json_response)
98
99
  {
99
- id: json_response.dig('id'),
100
- description: json_response.dig('description'),
101
- date_approved: json_response.dig('date_approved'),
102
- date_created: json_response.dig('date_created'),
103
- money_release_date: json_response.dig('money_release_date'),
104
- payer_email: json_response.dig('payer', 'email'),
105
- payer_identification_type: json_response.dig('payer', 'identification', 'type'),
106
- payer_identification_number: json_response.dig('payer', 'identification', 'number'),
107
- payment_method: json_response.dig('payment_method_id'),
108
- payment_type: json_response.dig('payment_type_id'),
109
- qr_code: json_response.dig('point_of_interaction', 'transaction_data', 'qr_code'),
110
- qr_code_base_64: json_response.dig('point_of_interaction', 'transaction_data', 'qr_code_base64'),
111
- three_ds_info_external_resource_url: json_response.dig('three_ds_info', 'external_resource_url'),
112
- three_ds_info_creq: json_response.dig('three_ds_info', 'creq'),
113
- transaction_id: json_response.dig('point_of_interaction', 'transaction_data', 'transaction_id'),
114
- ticket_url: json_response.dig('point_of_interaction', 'transaction_data', 'ticket_url'),
115
- status: json_response.dig('status'),
116
- status_detail: json_response.dig('status_detail'),
117
- amount: json_response.dig('transaction_amount'),
118
- errors: PaymentError.new(json_response: json_response).errors
100
+ id: json_response.dig("id"),
101
+ description: json_response.dig("description"),
102
+ date_approved: json_response.dig("date_approved"),
103
+ date_created: json_response.dig("date_created"),
104
+ money_release_date: json_response.dig("money_release_date"),
105
+ payer_email: json_response.dig("payer", "email"),
106
+ payer_identification_type: json_response.dig("payer", "identification", "type"),
107
+ payer_identification_number: json_response.dig("payer", "identification", "number"),
108
+ payment_method: json_response.dig("payment_method_id"),
109
+ payment_type: json_response.dig("payment_type_id"),
110
+ qr_code: json_response.dig("point_of_interaction", "transaction_data", "qr_code"),
111
+ qr_code_base_64: json_response.dig("point_of_interaction", "transaction_data", "qr_code_base64"),
112
+ three_ds_info_external_resource_url: json_response.dig("three_ds_info", "external_resource_url"),
113
+ three_ds_info_creq: json_response.dig("three_ds_info", "creq"),
114
+ transaction_id: json_response.dig("point_of_interaction", "transaction_data", "transaction_id"),
115
+ ticket_url: json_response.dig("point_of_interaction", "transaction_data", "ticket_url"),
116
+ status: json_response.dig("status"),
117
+ status_detail: json_response.dig("status_detail"),
118
+ amount: json_response.dig("transaction_amount"),
119
+ error: payment_error.error,
120
+ internal_error: payment_error.internal_error
119
121
  }
120
122
  end
121
123
  end
@@ -1,131 +1,39 @@
1
1
  module MpApi
2
2
  class PaymentError
3
-
4
3
  attr_reader :json_response
5
4
  def initialize(json_response:)
6
5
  @json_response = json_response
7
6
  end
8
7
 
9
- def errors
10
- rejected_payment_error || failed_payment_error
8
+ def error
9
+ rejected_payment_error
11
10
  end
12
-
11
+
12
+ def internal_error
13
+ failed_payment_error
14
+ end
15
+
13
16
  private
14
-
17
+
15
18
  def rejected_payment_error
16
- return nil unless ['rejected'].include?(json_response['status'])
17
- [message_by_status_detail(json_response['status_detail'])]
19
+ return nil unless ["rejected"].include?(json_response["status"])
20
+ message_by_status_detail(json_response["status_detail"])
18
21
  end
19
22
 
20
23
  def failed_payment_error
21
- return nil unless json_response['error']
22
- json_response['cause']&.map {|cause| message_by_error_code(cause['code']) || cause['description']}
24
+ return nil unless json_response["error"]
25
+ json_response["cause"].first["description"]
23
26
  end
24
27
 
25
28
  def message_by_status_detail(status_detail)
26
29
  {
27
- 'cc_rejected_bad_filled_other' => 'Recusado por erro no formulário.',
28
- 'cc_rejected_bad_filled_date' => 'Recusado por problema com a data de vencimento',
29
- 'cc_rejected_bad_filled_security_code' => 'Recusado por código de segurança inválido.',
30
- 'cc_rejected_insufficient_amount' => 'Recusado por quantia insuficiente.',
31
- 'cc_rejected_call_for_authorize' => 'Recusado, ligue para a administradora do cartão para autorizar.',
32
- 'cc_rejected_other_reason' => 'Recusado por erro geral'
33
- }[status_detail]
30
+ "cc_rejected_bad_filled_other" => "Pagamento recusado.",
31
+ "cc_rejected_bad_filled_date" => "Pagamento recusado. Confira a data de validade do cartão.",
32
+ "cc_rejected_bad_filled_security_code" => "Pagamento recusado. Confira o código de segurança (CVV) do cartão.",
33
+ "cc_rejected_insufficient_amount" => "Pagamento recusado. Limite insuficiente.",
34
+ "cc_rejected_call_for_authorize" => "Pagamento recusado.",
35
+ "cc_rejected_other_reason" => "Pagamento recusado."
36
+ }[status_detail] || "Pagamento recusado."
34
37
  end
35
-
36
- def message_by_error_code(code)
37
- {
38
- 1 => "Erro nos parâmetros.",
39
- 3 => "O token deve ser de teste.",
40
- 5 => "É necessário fornecer seu access_token para prosseguir.",
41
- 23 => "Os seguintes parâmetros devem ter uma data válida e no formato (aaaa-MM-dd'T'HH:mm:ssz) date_of_expiration.",
42
- 1000 => "Número de linhas excedeu os limites.",
43
- 1001 => "O formato da data deve ser aaaa-MM-dd'T'HH:mm:ss.SSSZ.",
44
- 2001 => "Já foi enviada a mesma solicitação no último minuto.",
45
- 2002 => "Cliente não encontrado.",
46
- 2004 => "Falha ao enviar POST para a API de Transações do Gateway.",
47
- 2006 => "Token do cartão não encontrado.",
48
- 2007 => "Falha na conexão com a API de Token do Cartão.",
49
- 2009 => "O emissor do token do cartão não pode ser nulo.",
50
- 2011 => "Id do método de pagamento inválido.",
51
- 2034 => "Erro estranho do mercado pago de usuarios envolvidos, normalmente causado pelo email do pagador.",
52
- 2060 => "O cliente não pode ser igual ao coletor.",
53
- 2062 => "Token do cartão inválido.",
54
- 2067 => "Número de identificação do usuário inválido.",
55
- 2072 => "Valor inválido para transaction_amount.",
56
- 2077 => "Captura diferida não suportada.",
57
- 2123 => "Operadores inválidos envolvidos.",
58
- 2131 => "Não é possível inferir o Método de Pagamento.",
59
- 3000 => "Você deve fornecer o nome do titular do cartão com seus dados do cartão.",
60
- 3001 => "Você deve fornecer o id do emissor do cartão com seus dados do cartão.",
61
- 3003 => "Id do token do cartão inválido.",
62
- 3004 => "Parâmetro site_id inválido.",
63
- 3005 => "Ação inválida, o recurso está em um estado que não permite esta operação. Para mais informações, consulte o estado que o recurso possui.",
64
- 3006 => "Parâmetro id do token do cartão inválido.",
65
- 3007 => "O parâmetro client_id não pode ser nulo ou vazio.",
66
- 3008 => "Token do Cartão não encontrado.",
67
- 3009 => "client_id não autorizado.",
68
- 3010 => "Cartão não encontrado na lista branca.",
69
- 3011 => "Método de pagamento não encontrado.",
70
- 3012 => "Parâmetro comprimento do código de segurança inválido.",
71
- 3013 => "O parâmetro código de segurança é um campo obrigatório e não pode ser nulo ou vazio.",
72
- 3014 => "Parâmetro método de pagamento inválido.",
73
- 3015 => "Parâmetro comprimento do número do cartão inválido.",
74
- 3016 => "Parâmetro número do cartão inválido.",
75
- 3017 => "O parâmetro id do número do cartão não pode ser nulo ou vazio.",
76
- 3018 => "O parâmetro mês de vencimento não pode ser nulo ou vazio.",
77
- 3019 => "O parâmetro ano de vencimento não pode ser nulo ou vazio.",
78
- 3020 => "O parâmetro nome do titular do cartão não pode ser nulo ou vazio.",
79
- 3021 => "O parâmetro número do documento do titular do cartão não pode ser nulo ou vazio.",
80
- 3022 => "O parâmetro tipo de documento do titular do cartão não pode ser nulo ou vazio.",
81
- 3023 => "O parâmetro subtipo de documento do titular do cartão não pode ser nulo ou vazio.",
82
- 3024 => "Ação inválida - reembolso parcial não suportado para esta transação.",
83
- 3025 => "Código de autenticação inválido.",
84
- 3026 => "Id do cartão inválido para este id do método de pagamento.",
85
- 3027 => "Id do tipo de pagamento inválido.",
86
- 3028 => "Id do método de pagamento inválido.",
87
- 3029 => "Mês de vencimento do cartão inválido.",
88
- 3030 => "Ano de vencimento do cartão inválido.",
89
- 3031 => "Secure_code_id não pode ser nulo.",
90
- 3032 => "Comprimento inválido do código de segurança 3033 3034 - Validação do número do cartão inválida.",
91
- 4000 => "Atributo do cartão não pode ser nulo.",
92
- 4001 => "Atributo do id do método de pagamento não pode ser nulo.",
93
- 4002 => "Atributo do valor da transação não pode ser nulo.",
94
- 4003 => "Atributo do valor da transação deve ser numérico.",
95
- 4004 => "Atributo de parcelas não pode ser nulo.",
96
- 4005 => "Atributo de parcelas deve ser numérico.",
97
- 4006 => "Atributo do pagador está malformado.",
98
- 4007 => "Atributo do site_id não pode ser nulo.",
99
- 4012 => "Atributo do id do pagador não pode ser nulo.",
100
- 4013 => "Atributo do tipo de pagador não pode ser nulo.",
101
- 4015 => "Atributo do id de referência do método de pagamento não pode ser nulo.",
102
- 4016 => "Atributo do id de referência do método de pagamento deve ser numérico.",
103
- 4017 => "Atributo do status não pode ser nulo.",
104
- 4018 => "Atributo do id do pagamento não pode ser nulo.",
105
- 4019 => "Atributo do id do pagamento deve ser numérico.",
106
- 4020 => "Atributo notificaction_url deve ser uma URL válida.",
107
- 4021 => "Atributo notificaction_url deve ter menos de 500 caracteres.",
108
- 4022 => "Atributo metadata deve ser um JSON válido.",
109
- 4023 => "Atributo do valor da transação não pode ser nulo.",
110
- 4024 => "Atributo do valor da transação deve ser numérico.",
111
- 4025 => "Id do reembolso não pode ser nulo.",
112
- 4026 => "Valor do cupom inválido.",
113
- 4027 => "Atributo do id da campanha deve ser numérico.",
114
- 4028 => "Atributo do valor do cupom deve ser numérico.",
115
- 4029 => "Tipo de pagador inválido.",
116
- 4033 => "Número de parcelas inváido.",
117
- 4037 => "Valor da transação inválido.",
118
- 4038 => "A taxa de aplicação não pode ser maior que o valor da transação.",
119
- 4039 => "A taxa de aplicação não pode ser um valor negativo.",
120
- 4049 => "Atributo do valor da transação deve ser positivo.",
121
- 4050 => "O email do pagador deve ser um email válido.",
122
- 4051 => "O email do pagador deve ter menos de 254 caracteres.",
123
- 4390 => "O email do pagador deve ser um email válido.",
124
- 4084 => "issuer_id deve ser inteiro.",
125
- 6033 => "Usuário indisponível.",
126
- 7523 => "Data de vencimento inválida."
127
- }[code]
128
- end
129
-
130
38
  end
131
- end
39
+ end
@@ -1,9 +1,7 @@
1
1
  module MpApi
2
-
3
2
  class PaymentMethod
4
-
5
3
  attr_reader :payment_method_id, :issuer_id, :installments, :errors
6
- def initialize(payment_method_id: , issuer_id: , installments:, errors:nil)
4
+ def initialize(payment_method_id:, issuer_id:, installments:, errors: nil)
7
5
  @payment_method_id = payment_method_id
8
6
  @issuer_id = issuer_id
9
7
  @installments = installments
@@ -17,23 +15,21 @@ module MpApi
17
15
 
18
16
  def self.build_query(first_six_digits)
19
17
  {
20
- marketplace: 'NONE',
21
- status: 'active',
18
+ marketplace: "NONE",
19
+ status: "active",
22
20
  bins: first_six_digits
23
21
  }
24
22
  end
25
23
 
26
24
  def self.build_hash(response, credit)
27
- payment_type_id = credit ? 'credit_card' : 'debit_card'
28
- payment_method = response.dig('results')&.find {|pm| pm['payment_type_id'] == payment_type_id}
25
+ payment_type_id = credit ? "credit_card" : "debit_card"
26
+ payment_method = response.dig("results")&.find { |pm| pm["payment_type_id"] == payment_type_id }
29
27
  {
30
- payment_method_id: payment_method&.dig('id'),
31
- issuer_id: payment_method&.dig('issuer', 'id'),
32
- installments: payment_method&.dig('payer_costs'),
33
- errors: response.dig('message')
28
+ payment_method_id: payment_method&.dig("id"),
29
+ issuer_id: payment_method&.dig("issuer", "id"),
30
+ installments: payment_method&.dig("payer_costs"),
31
+ errors: response.dig("message")
34
32
  }
35
33
  end
36
-
37
34
  end
38
-
39
- end
35
+ end
data/lib/mp_api/token.rb CHANGED
@@ -1,9 +1,7 @@
1
1
  module MpApi
2
-
3
2
  class Token
4
-
5
3
  attr_reader :card_number, :expiration_year, :expiration_month, :security_code, :cardholder_name, :id, :errors
6
- def initialize(card_number:, expiration_year:, expiration_month:, security_code:, cardholder_name:, id:nil, errors:nil)
4
+ def initialize(card_number:, expiration_year:, expiration_month:, security_code:, cardholder_name:, id: nil, errors: nil)
7
5
  @card_number = card_number
8
6
  @expiration_year = expiration_year
9
7
  @expiration_month = expiration_month
@@ -32,15 +30,14 @@ module MpApi
32
30
 
33
31
  def self.build_hash(response)
34
32
  {
35
- id: response['id'],
36
- expiration_year: response['expiration_year'],
37
- expiration_month: response['expiration_month'],
38
- cardholder_name: response.dig('cardholder', 'name'),
39
- card_number: response['card_number'],
40
- security_code: response['security_code'],
41
- errors: response['error']
33
+ id: response["id"],
34
+ expiration_year: response["expiration_year"],
35
+ expiration_month: response["expiration_month"],
36
+ cardholder_name: response.dig("cardholder", "name"),
37
+ card_number: response["card_number"],
38
+ security_code: response["security_code"],
39
+ errors: response["error"]
42
40
  }
43
41
  end
44
-
45
42
  end
46
43
  end
@@ -1,5 +1,5 @@
1
- # frozen_string_literal: true
2
-
3
- module MpApi
4
- VERSION = "0.3.5"
5
- end
1
+ # frozen_string_literal: true
2
+
3
+ module MpApi
4
+ VERSION = "0.3.6"
5
+ end
data/lib/mp_api.rb CHANGED
@@ -7,22 +7,20 @@ require_relative "mp_api/payment_error"
7
7
  require_relative "mp_api/token"
8
8
  require_relative "mp_api/payment_method"
9
9
  require_relative "mp_api/version"
10
+
10
11
  module MpApi
11
12
  class Error < StandardError; end
12
13
 
13
14
  class RequestError < StandardError
14
- def initialize(message="Request error")
15
+ def initialize(message = "Request error")
15
16
  super(message)
16
17
  end
17
18
  end
18
19
 
19
20
  class Configuration
20
21
  attr_accessor :access_token, :public_key
21
-
22
- def initialize
23
- end
24
22
  end
25
-
23
+
26
24
  class << self
27
25
  attr_accessor :configuration
28
26
  end
@@ -31,5 +29,4 @@ module MpApi
31
29
  self.configuration ||= Configuration.new
32
30
  yield configuration
33
31
  end
34
-
35
32
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mp_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5
4
+ version: 0.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - caio
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-01-05 00:00:00.000000000 Z
11
+ date: 2024-01-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ac