resend 0.5.0 → 0.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d3e4d80d6041ac5d061ec2eafce26da90a106d14be6ae2b23dc66741b29a7d55
4
- data.tar.gz: 3d486cd3522bda376cc61ee41c0ef1bdc91b6af2db07b4f05530d01d5a74f616
3
+ metadata.gz: 154948a83edaf33d2c541d663519984ce81c88de1dfdce855d6a57b495841e19
4
+ data.tar.gz: 77ff14940114642d5099134f4c9ea7eb6a504f9c2f088f208b3492df0238d481
5
5
  SHA512:
6
- metadata.gz: 548f3a9603ecba1a0d44f7846d08e2194bd29d5baae28c6df8bdd3c1d5f3827210dacddad009556ff4d33c9eb1c567be60d522f3eda6f240fe7b1a3e0b3e6e49
7
- data.tar.gz: a775247f3a2c7ab2a17e277d30f1b44700a5b9a17082de247aeff0a781e17c728bd67aa9bf1ad7e7807d78f43be43bd717c6c77ed464e333540a70efb325afd8
6
+ metadata.gz: 1e4b18829fce8858425ed271eb6608e72ee00e66391d2530e868503389c66e05acb4f65d92f0ca0454abb01c40e2d58742907d628d230bc47d37f0da863290cf
7
+ data.tar.gz: ddc74f6a84b63ffc26914d1230b697d04759cea952c14d3e7ec6a8743267850532303eb8260fa7db19e215bc8253b1dfa93f57a8e693e4d8121953721e8e7734
data/README.md CHANGED
@@ -16,7 +16,7 @@ gem install resend
16
16
 
17
17
  Via Gemfile:
18
18
  ```
19
- gem 'resend', '~>0.3.0'
19
+ gem 'resend'
20
20
  ```
21
21
 
22
22
  ## Setup
@@ -59,13 +59,17 @@ You can view all the examples in the [examples folder](https://github.com/drish/
59
59
 
60
60
  # Rails and ActiveMailer support
61
61
 
62
- This gem can be used as an ActionMailer delivery method, add this to your `config/environments/environment.rb` file and replace with your api key.
62
+ This gem can be used as an ActionMailer delivery method, add this to your `config/environments/environment.rb` file.
63
63
 
64
64
  ```ruby
65
65
  config.action_mailer.delivery_method = :resend
66
- config.action_mailer.resend_settings = {
67
- api_key: 'resend_api_key',
68
- }
66
+ ```
67
+
68
+ Create or update your mailer initializer file and replace the placeholder with your Resend API Key.
69
+
70
+ ```rb
71
+ # /app/initializers/mailer.rb
72
+ Resend.api_key = "re_123456"
69
73
  ```
70
74
 
71
75
  After that you can deliver_now!, example below:
@@ -87,12 +91,3 @@ mailer = UserMailer.with(user: u).welcome_email
87
91
  mailer.deliver_now!
88
92
  # => {:id=>"b8f94710-0d84-429c-925a-22d3d8f86916", from: 'you@yourdomain.io', to: ["example2@mail.com", "example1@mail.com"]}
89
93
  ```
90
-
91
- This gem can also be initialized with a Rails initializer file, example below:
92
-
93
- ```ruby
94
- # /app/initializers/mailer.rb
95
- Resend.configure do |config|
96
- config.api_key = 'resend_api_key'
97
- end
98
- ```
data/lib/resend/errors.rb CHANGED
@@ -4,7 +4,6 @@ module Resend
4
4
  # Errors wrapper class
5
5
  # For more info: https://resend.com/docs/api-reference/error-codes
6
6
  class Error < StandardError
7
-
8
7
  # 4xx HTTP status code
9
8
  ClientError = Class.new(self)
10
9
 
@@ -17,6 +16,9 @@ module Resend
17
16
  # code 422
18
17
  InvalidRequestError = Class.new(ServerError)
19
18
 
19
+ # code 429
20
+ RateLimitExceededError = Class.new(ServerError)
21
+
20
22
  # code 404
21
23
  NotFoundError = Class.new(ServerError)
22
24
 
@@ -24,6 +26,7 @@ module Resend
24
26
  401 => Resend::Error::InvalidRequestError,
25
27
  404 => Resend::Error::InvalidRequestError,
26
28
  422 => Resend::Error::InvalidRequestError,
29
+ 429 => Resend::Error::RateLimitExceededError,
27
30
  400 => Resend::Error::InvalidRequestError,
28
31
  500 => Resend::Error::InternalServerError
29
32
  }.freeze
data/lib/resend/mailer.rb CHANGED
@@ -5,13 +5,11 @@ require "resend"
5
5
  module Resend
6
6
  # Mailer class used by railtie
7
7
  class Mailer
8
- attr_accessor :config, :settings
8
+ attr_accessor :config
9
9
 
10
10
  def initialize(config)
11
11
  @config = config
12
- raise Resend::ResendError.new("Config requires api_key", @config) unless @config.key?(:api_key)
13
-
14
- @settings = { return_response: true } # avoids NilError exception
12
+ raise Resend::Error.new("Make sure your api is set", @config) unless Resend.api_key
15
13
  end
16
14
 
17
15
  def deliver!(mail)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Resend
4
- VERSION = "0.5.0"
4
+ VERSION = "0.6.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resend
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Derich Pacheco
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-05-25 00:00:00.000000000 Z
11
+ date: 2023-07-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -38,7 +38,7 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
- description:
41
+ description:
42
42
  email: carlosderich@gmail.com
43
43
  executables: []
44
44
  extensions: []
@@ -59,7 +59,7 @@ homepage: https://github.com/resendlabs/resend-ruby
59
59
  licenses:
60
60
  - MIT
61
61
  metadata: {}
62
- post_install_message:
62
+ post_install_message:
63
63
  rdoc_options: []
64
64
  require_paths:
65
65
  - lib
@@ -74,8 +74,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  requirements: []
77
- rubygems_version: 3.4.6
78
- signing_key:
77
+ rubygems_version: 3.0.3.1
78
+ signing_key:
79
79
  specification_version: 4
80
80
  summary: The Ruby and Rails SDK for resend.com
81
81
  test_files: []