packwerk 2.2.0 → 2.2.2

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.
Files changed (188) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +29 -20
  3. data/.github/workflows/cla.yml +22 -0
  4. data/.rubocop.yml +48 -19
  5. data/Gemfile +7 -2
  6. data/Gemfile.lock +202 -175
  7. data/README.md +1 -1
  8. data/RESOLVING_VIOLATIONS.md +81 -0
  9. data/Rakefile +1 -1
  10. data/USAGE.md +14 -5
  11. data/bin/m +1 -1
  12. data/bin/rake +1 -1
  13. data/bin/rubocop +1 -1
  14. data/bin/srb +1 -1
  15. data/bin/tapioca +1 -1
  16. data/gemfiles/Gemfile-rails-6-0 +1 -1
  17. data/gemfiles/Gemfile-rails-6-1 +22 -0
  18. data/lib/packwerk/application_load_paths.rb +1 -1
  19. data/lib/packwerk/application_validator.rb +7 -6
  20. data/lib/packwerk/association_inspector.rb +17 -15
  21. data/lib/packwerk/cache.rb +36 -29
  22. data/lib/packwerk/cli.rb +24 -20
  23. data/lib/packwerk/const_node_inspector.rb +8 -7
  24. data/lib/packwerk/constant_name_inspector.rb +2 -2
  25. data/lib/packwerk/deprecated_references.rb +40 -20
  26. data/lib/packwerk/file_processor.rb +14 -14
  27. data/lib/packwerk/files_for_processing.rb +27 -31
  28. data/lib/packwerk/formatters/offenses_formatter.rb +3 -3
  29. data/lib/packwerk/formatters/progress_formatter.rb +2 -2
  30. data/lib/packwerk/node.rb +1 -294
  31. data/lib/packwerk/node_helpers.rb +335 -0
  32. data/lib/packwerk/node_processor.rb +6 -5
  33. data/lib/packwerk/node_processor_factory.rb +3 -3
  34. data/lib/packwerk/node_visitor.rb +1 -1
  35. data/lib/packwerk/offense_collection.rb +27 -8
  36. data/lib/packwerk/offenses_formatter.rb +2 -2
  37. data/lib/packwerk/package.rb +3 -0
  38. data/lib/packwerk/package_set.rb +2 -0
  39. data/lib/packwerk/parse_run.rb +29 -20
  40. data/lib/packwerk/parsed_constant_definitions.rb +23 -20
  41. data/lib/packwerk/parsers/erb.rb +3 -3
  42. data/lib/packwerk/reference_checking/checkers/checker.rb +16 -3
  43. data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +16 -0
  44. data/lib/packwerk/reference_checking/checkers/privacy_checker.rb +18 -0
  45. data/lib/packwerk/reference_checking/reference_checker.rb +3 -1
  46. data/lib/packwerk/reference_extractor.rb +51 -48
  47. data/lib/packwerk/reference_offense.rb +3 -27
  48. data/lib/packwerk/run_context.rb +9 -8
  49. data/lib/packwerk/spring_command.rb +1 -1
  50. data/lib/packwerk/version.rb +1 -1
  51. data/lib/packwerk.rb +1 -0
  52. data/packwerk.gemspec +5 -12
  53. data/sorbet/rbi/gems/actioncable@7.0.3.1.rbi +2754 -0
  54. data/sorbet/rbi/gems/actionmailbox@7.0.3.1.rbi +1496 -0
  55. data/sorbet/rbi/gems/actionmailer@7.0.3.1.rbi +2362 -0
  56. data/sorbet/rbi/gems/actionpack@7.0.3.1.rbi +19397 -0
  57. data/sorbet/rbi/gems/actiontext@7.0.3.1.rbi +1569 -0
  58. data/sorbet/rbi/gems/actionview@7.0.3.1.rbi +14907 -0
  59. data/sorbet/rbi/gems/activejob@7.0.3.1.rbi +2553 -0
  60. data/sorbet/rbi/gems/activemodel@7.0.3.1.rbi +5999 -0
  61. data/sorbet/rbi/gems/activerecord@7.0.3.1.rbi +37832 -0
  62. data/sorbet/rbi/gems/activestorage@7.0.3.1.rbi +2321 -0
  63. data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +18818 -0
  64. data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +11722 -0
  65. data/sorbet/rbi/gems/constant_resolver@0.2.0.rbi +90 -0
  66. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +1079 -0
  67. data/sorbet/rbi/gems/digest@3.1.0.rbi +189 -0
  68. data/sorbet/rbi/gems/erubi@1.11.0.rbi +140 -0
  69. data/sorbet/rbi/gems/globalid@1.0.0.rbi +572 -0
  70. data/sorbet/rbi/gems/i18n@1.12.0.rbi +2296 -0
  71. data/sorbet/rbi/gems/json@2.6.2.rbi +1548 -0
  72. data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +8 -0
  73. data/sorbet/rbi/gems/loofah@2.18.0.rbi +877 -0
  74. data/sorbet/rbi/gems/m@1.6.0.rbi +257 -0
  75. data/sorbet/rbi/gems/marcel@1.0.2.rbi +220 -0
  76. data/sorbet/rbi/gems/mini_mime@1.1.2.rbi +170 -0
  77. data/sorbet/rbi/gems/mini_portile2@2.8.0.rbi +8 -0
  78. data/sorbet/rbi/gems/minitest-focus@1.3.1.rbi +104 -0
  79. data/sorbet/rbi/gems/minitest@5.16.2.rbi +2136 -0
  80. data/sorbet/rbi/gems/mocha@1.14.0.rbi +4177 -0
  81. data/sorbet/rbi/gems/net-imap@0.2.3.rbi +2147 -0
  82. data/sorbet/rbi/gems/net-pop@0.1.1.rbi +926 -0
  83. data/sorbet/rbi/gems/net-protocol@0.1.3.rbi +11 -0
  84. data/sorbet/rbi/gems/net-smtp@0.3.1.rbi +1108 -0
  85. data/sorbet/rbi/gems/netrc@0.11.0.rbi +153 -0
  86. data/sorbet/rbi/gems/nio4r@2.5.8.rbi +292 -0
  87. data/sorbet/rbi/gems/nokogiri@1.13.8.rbi +6478 -0
  88. data/sorbet/rbi/gems/parallel@1.22.1.rbi +277 -0
  89. data/sorbet/rbi/gems/parser@3.1.2.1.rbi +9029 -0
  90. data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +8 -0
  91. data/sorbet/rbi/gems/pry@0.14.1.rbi +8 -0
  92. data/sorbet/rbi/gems/racc@1.6.0.rbi +152 -0
  93. data/sorbet/rbi/gems/rack-test@2.0.2.rbi +953 -0
  94. data/sorbet/rbi/gems/rack@2.2.4.rbi +5636 -0
  95. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +688 -0
  96. data/sorbet/rbi/gems/rails@7.0.3.1.rbi +8 -0
  97. data/sorbet/rbi/gems/railties@7.0.3.1.rbi +3507 -0
  98. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +392 -0
  99. data/sorbet/rbi/gems/rake@13.0.6.rbi +2924 -0
  100. data/sorbet/rbi/gems/rbi@0.0.15.rbi +3007 -0
  101. data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +3383 -0
  102. data/sorbet/rbi/gems/rexml@3.2.5.rbi +4714 -0
  103. data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +6961 -0
  104. data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +2986 -0
  105. data/sorbet/rbi/gems/{rubocop-shopify@2.0.1.rbi → rubocop-shopify@2.9.0.rbi} +4 -4
  106. data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +992 -0
  107. data/sorbet/rbi/gems/rubocop@1.34.1.rbi +51820 -0
  108. data/sorbet/rbi/gems/ruby-lsp@0.2.1.rbi +11 -0
  109. data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +474 -0
  110. data/sorbet/rbi/gems/spoom@1.1.11.rbi +2181 -0
  111. data/sorbet/rbi/gems/spring@4.0.0.rbi +411 -0
  112. data/sorbet/rbi/gems/strscan@3.0.4.rbi +8 -0
  113. data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +8 -0
  114. data/sorbet/rbi/gems/tapioca@0.9.2.rbi +3181 -0
  115. data/sorbet/rbi/gems/thor@1.2.1.rbi +3956 -0
  116. data/sorbet/rbi/gems/timeout@0.3.0.rbi +142 -0
  117. data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +5896 -0
  118. data/sorbet/rbi/gems/unicode-display_width@2.2.0.rbi +48 -0
  119. data/sorbet/rbi/gems/unparser@0.6.5.rbi +4529 -0
  120. data/sorbet/rbi/gems/webrick@1.7.0.rbi +2582 -0
  121. data/sorbet/rbi/gems/websocket-driver@0.7.5.rbi +993 -0
  122. data/sorbet/rbi/gems/yard-sorbet@0.6.1.rbi +388 -0
  123. data/sorbet/rbi/gems/yard@0.9.28.rbi +18242 -0
  124. data/sorbet/rbi/gems/zeitwerk@2.6.0.rbi +867 -0
  125. data/sorbet/rbi/shims/psych.rbi +5 -0
  126. data/sorbet/tapioca/require.rb +2 -3
  127. metadata +91 -146
  128. data/.github/probots.yml +0 -2
  129. data/library.yml +0 -6
  130. data/service.yml +0 -1
  131. data/sorbet/rbi/gems/actioncable@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -860
  132. data/sorbet/rbi/gems/actionmailbox@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -568
  133. data/sorbet/rbi/gems/actionmailer@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -587
  134. data/sorbet/rbi/gems/actionpack@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -5314
  135. data/sorbet/rbi/gems/actiontext@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -699
  136. data/sorbet/rbi/gems/actionview@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -2515
  137. data/sorbet/rbi/gems/activejob@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -624
  138. data/sorbet/rbi/gems/activemodel@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -1248
  139. data/sorbet/rbi/gems/activerecord@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8363
  140. data/sorbet/rbi/gems/activestorage@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -876
  141. data/sorbet/rbi/gems/activesupport@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -3987
  142. data/sorbet/rbi/gems/colorize@0.8.1.rbi +0 -40
  143. data/sorbet/rbi/gems/commander@4.5.2.rbi +0 -8
  144. data/sorbet/rbi/gems/concurrent-ruby@1.1.8.rbi +0 -1969
  145. data/sorbet/rbi/gems/constant_resolver@0.1.5.rbi +0 -26
  146. data/sorbet/rbi/gems/erubi@1.10.0.rbi +0 -41
  147. data/sorbet/rbi/gems/globalid@0.4.2.rbi +0 -178
  148. data/sorbet/rbi/gems/highline@2.0.3.rbi +0 -8
  149. data/sorbet/rbi/gems/i18n@1.8.10.rbi +0 -600
  150. data/sorbet/rbi/gems/loofah@2.9.0.rbi +0 -274
  151. data/sorbet/rbi/gems/m@1.5.1.rbi +0 -108
  152. data/sorbet/rbi/gems/marcel@1.0.0.rbi +0 -70
  153. data/sorbet/rbi/gems/mini_mime@1.0.3.rbi +0 -71
  154. data/sorbet/rbi/gems/minitest-focus@1.2.1.rbi +0 -8
  155. data/sorbet/rbi/gems/minitest@5.14.4.rbi +0 -544
  156. data/sorbet/rbi/gems/mocha@1.12.0.rbi +0 -953
  157. data/sorbet/rbi/gems/nio4r@2.5.7.rbi +0 -90
  158. data/sorbet/rbi/gems/nokogiri@1.11.2.rbi +0 -1647
  159. data/sorbet/rbi/gems/parallel@1.20.1.rbi +0 -117
  160. data/sorbet/rbi/gems/parlour@6.0.0.rbi +0 -1272
  161. data/sorbet/rbi/gems/parser@3.0.0.0.rbi +0 -1745
  162. data/sorbet/rbi/gems/pry@0.14.0.rbi +0 -8
  163. data/sorbet/rbi/gems/psych@3.3.2.rbi +0 -24
  164. data/sorbet/rbi/gems/racc@1.5.2.rbi +0 -57
  165. data/sorbet/rbi/gems/rack-test@1.1.0.rbi +0 -335
  166. data/sorbet/rbi/gems/rack@2.2.3.rbi +0 -1718
  167. data/sorbet/rbi/gems/rails-html-sanitizer@1.3.0.rbi +0 -213
  168. data/sorbet/rbi/gems/rails@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -8
  169. data/sorbet/rbi/gems/railties@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi +0 -880
  170. data/sorbet/rbi/gems/rainbow@3.0.0.rbi +0 -155
  171. data/sorbet/rbi/gems/rake@13.0.3.rbi +0 -837
  172. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +0 -8
  173. data/sorbet/rbi/gems/rexml@3.2.4.rbi +0 -8
  174. data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +0 -8
  175. data/sorbet/rbi/gems/rubocop-performance@1.10.2.rbi +0 -8
  176. data/sorbet/rbi/gems/rubocop-sorbet@0.6.1.rbi +0 -8
  177. data/sorbet/rbi/gems/rubocop@1.12.0.rbi +0 -8
  178. data/sorbet/rbi/gems/smart_properties@1.15.0.rbi +0 -168
  179. data/sorbet/rbi/gems/spoom@1.1.0.rbi +0 -1061
  180. data/sorbet/rbi/gems/spring@2.1.1.rbi +0 -160
  181. data/sorbet/rbi/gems/sprockets-rails@3.2.2.rbi +0 -451
  182. data/sorbet/rbi/gems/sprockets@4.0.2.rbi +0 -1133
  183. data/sorbet/rbi/gems/tapioca@0.4.19.rbi +0 -603
  184. data/sorbet/rbi/gems/thor@1.1.0.rbi +0 -893
  185. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +0 -566
  186. data/sorbet/rbi/gems/unicode-display_width@2.0.0.rbi +0 -8
  187. data/sorbet/rbi/gems/websocket-driver@0.7.3.rbi +0 -438
  188. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +0 -177
@@ -0,0 +1,2362 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `actionmailer` gem.
5
+ # Please instead update this file by running `bin/tapioca gem actionmailer`.
6
+
7
+ # source://actionmailer-7.0.3.1/lib/action_mailer/gem_version.rb:3
8
+ module ActionMailer
9
+ extend ::ActiveSupport::Autoload
10
+
11
+ class << self
12
+ # source://actionmailer-7.0.3.1/lib/action_mailer.rb:56
13
+ def eager_load!; end
14
+
15
+ # Returns the currently loaded version of Action Mailer as a <tt>Gem::Version</tt>.
16
+ #
17
+ # source://actionmailer-7.0.3.1/lib/action_mailer/gem_version.rb:5
18
+ def gem_version; end
19
+
20
+ # Returns the currently loaded version of Action Mailer as a
21
+ # <tt>Gem::Version</tt>.
22
+ #
23
+ # source://actionmailer-7.0.3.1/lib/action_mailer/version.rb:8
24
+ def version; end
25
+ end
26
+ end
27
+
28
+ # Action Mailer allows you to send email from your application using a mailer model and views.
29
+ #
30
+ # = Mailer Models
31
+ #
32
+ # To use Action Mailer, you need to create a mailer model.
33
+ #
34
+ # $ bin/rails generate mailer Notifier
35
+ #
36
+ # The generated model inherits from <tt>ApplicationMailer</tt> which in turn
37
+ # inherits from <tt>ActionMailer::Base</tt>. A mailer model defines methods
38
+ # used to generate an email message. In these methods, you can set up variables to be used in
39
+ # the mailer views, options on the mail itself such as the <tt>:from</tt> address, and attachments.
40
+ #
41
+ # class ApplicationMailer < ActionMailer::Base
42
+ # default from: 'from@example.com'
43
+ # layout 'mailer'
44
+ # end
45
+ #
46
+ # class NotifierMailer < ApplicationMailer
47
+ # default from: 'no-reply@example.com',
48
+ # return_path: 'system@example.com'
49
+ #
50
+ # def welcome(recipient)
51
+ # @account = recipient
52
+ # mail(to: recipient.email_address_with_name,
53
+ # bcc: ["bcc@example.com", "Order Watcher <watcher@example.com>"])
54
+ # end
55
+ # end
56
+ #
57
+ # Within the mailer method, you have access to the following methods:
58
+ #
59
+ # * <tt>attachments[]=</tt> - Allows you to add attachments to your email in an intuitive
60
+ # manner; <tt>attachments['filename.png'] = File.read('path/to/filename.png')</tt>
61
+ #
62
+ # * <tt>attachments.inline[]=</tt> - Allows you to add an inline attachment to your email
63
+ # in the same manner as <tt>attachments[]=</tt>
64
+ #
65
+ # * <tt>headers[]=</tt> - Allows you to specify any header field in your email such
66
+ # as <tt>headers['X-No-Spam'] = 'True'</tt>. Note that declaring a header multiple times
67
+ # will add many fields of the same name. Read #headers doc for more information.
68
+ #
69
+ # * <tt>headers(hash)</tt> - Allows you to specify multiple headers in your email such
70
+ # as <tt>headers({'X-No-Spam' => 'True', 'In-Reply-To' => '1234@message.id'})</tt>
71
+ #
72
+ # * <tt>mail</tt> - Allows you to specify email to be sent.
73
+ #
74
+ # The hash passed to the mail method allows you to specify any header that a <tt>Mail::Message</tt>
75
+ # will accept (any valid email header including optional fields).
76
+ #
77
+ # The +mail+ method, if not passed a block, will inspect your views and send all the views with
78
+ # the same name as the method, so the above action would send the +welcome.text.erb+ view
79
+ # file as well as the +welcome.html.erb+ view file in a +multipart/alternative+ email.
80
+ #
81
+ # If you want to explicitly render only certain templates, pass a block:
82
+ #
83
+ # mail(to: user.email) do |format|
84
+ # format.text
85
+ # format.html
86
+ # end
87
+ #
88
+ # The block syntax is also useful in providing information specific to a part:
89
+ #
90
+ # mail(to: user.email) do |format|
91
+ # format.html
92
+ # end
93
+ #
94
+ # Or even to render a special view:
95
+ #
96
+ # mail(to: user.email) do |format|
97
+ # format.text
98
+ # format.html { render "some_other_template" }
99
+ # end
100
+ #
101
+ # = Mailer views
102
+ #
103
+ # Like Action Controller, each mailer class has a corresponding view directory in which each
104
+ # method of the class looks for a template with its name.
105
+ #
106
+ # To define a template to be used with a mailer, create an <tt>.erb</tt> file with the same
107
+ # name as the method in your mailer model. For example, in the mailer defined above, the template at
108
+ # <tt>app/views/notifier_mailer/welcome.text.erb</tt> would be used to generate the email.
109
+ #
110
+ # Variables defined in the methods of your mailer model are accessible as instance variables in their
111
+ # corresponding view.
112
+ #
113
+ # Emails by default are sent in plain text, so a sample view for our model example might look like this:
114
+ #
115
+ # Hi <%= @account.name %>,
116
+ # Thanks for joining our service! Please check back often.
117
+ #
118
+ # You can even use Action View helpers in these views. For example:
119
+ #
120
+ # You got a new note!
121
+ # <%= truncate(@note.body, length: 25) %>
122
+ #
123
+ # If you need to access the subject, from, or the recipients in the view, you can do that through message object:
124
+ #
125
+ # You got a new note from <%= message.from %>!
126
+ # <%= truncate(@note.body, length: 25) %>
127
+ #
128
+ #
129
+ # = Generating URLs
130
+ #
131
+ # URLs can be generated in mailer views using <tt>url_for</tt> or named routes. Unlike controllers from
132
+ # Action Pack, the mailer instance doesn't have any context about the incoming request, so you'll need
133
+ # to provide all of the details needed to generate a URL.
134
+ #
135
+ # When using <tt>url_for</tt> you'll need to provide the <tt>:host</tt>, <tt>:controller</tt>, and <tt>:action</tt>:
136
+ #
137
+ # <%= url_for(host: "example.com", controller: "welcome", action: "greeting") %>
138
+ #
139
+ # When using named routes you only need to supply the <tt>:host</tt>:
140
+ #
141
+ # <%= users_url(host: "example.com") %>
142
+ #
143
+ # You should use the <tt>named_route_url</tt> style (which generates absolute URLs) and avoid using the
144
+ # <tt>named_route_path</tt> style (which generates relative URLs), since clients reading the mail will
145
+ # have no concept of a current URL from which to determine a relative path.
146
+ #
147
+ # It is also possible to set a default host that will be used in all mailers by setting the <tt>:host</tt>
148
+ # option as a configuration option in <tt>config/application.rb</tt>:
149
+ #
150
+ # config.action_mailer.default_url_options = { host: "example.com" }
151
+ #
152
+ # You can also define a <tt>default_url_options</tt> method on individual mailers to override these
153
+ # default settings per-mailer.
154
+ #
155
+ # By default when <tt>config.force_ssl</tt> is +true+, URLs generated for hosts will use the HTTPS protocol.
156
+ #
157
+ # = Sending mail
158
+ #
159
+ # Once a mailer action and template are defined, you can deliver your message or defer its creation and
160
+ # delivery for later:
161
+ #
162
+ # NotifierMailer.welcome(User.first).deliver_now # sends the email
163
+ # mail = NotifierMailer.welcome(User.first) # => an ActionMailer::MessageDelivery object
164
+ # mail.deliver_now # generates and sends the email now
165
+ #
166
+ # The ActionMailer::MessageDelivery class is a wrapper around a delegate that will call
167
+ # your method to generate the mail. If you want direct access to the delegator, or <tt>Mail::Message</tt>,
168
+ # you can call the <tt>message</tt> method on the ActionMailer::MessageDelivery object.
169
+ #
170
+ # NotifierMailer.welcome(User.first).message # => a Mail::Message object
171
+ #
172
+ # Action Mailer is nicely integrated with Active Job so you can generate and send emails in the background
173
+ # (example: outside of the request-response cycle, so the user doesn't have to wait on it):
174
+ #
175
+ # NotifierMailer.welcome(User.first).deliver_later # enqueue the email sending to Active Job
176
+ #
177
+ # Note that <tt>deliver_later</tt> will execute your method from the background job.
178
+ #
179
+ # You never instantiate your mailer class. Rather, you just call the method you defined on the class itself.
180
+ # All instance methods are expected to return a message object to be sent.
181
+ #
182
+ # = Multipart Emails
183
+ #
184
+ # Multipart messages can also be used implicitly because Action Mailer will automatically detect and use
185
+ # multipart templates, where each template is named after the name of the action, followed by the content
186
+ # type. Each such detected template will be added to the message, as a separate part.
187
+ #
188
+ # For example, if the following templates exist:
189
+ # * signup_notification.text.erb
190
+ # * signup_notification.html.erb
191
+ # * signup_notification.xml.builder
192
+ # * signup_notification.yml.erb
193
+ #
194
+ # Each would be rendered and added as a separate part to the message, with the corresponding content
195
+ # type. The content type for the entire message is automatically set to <tt>multipart/alternative</tt>,
196
+ # which indicates that the email contains multiple different representations of the same email
197
+ # body. The same instance variables defined in the action are passed to all email templates.
198
+ #
199
+ # Implicit template rendering is not performed if any attachments or parts have been added to the email.
200
+ # This means that you'll have to manually add each part to the email and set the content type of the email
201
+ # to <tt>multipart/alternative</tt>.
202
+ #
203
+ # = Attachments
204
+ #
205
+ # Sending attachment in emails is easy:
206
+ #
207
+ # class NotifierMailer < ApplicationMailer
208
+ # def welcome(recipient)
209
+ # attachments['free_book.pdf'] = File.read('path/to/file.pdf')
210
+ # mail(to: recipient, subject: "New account information")
211
+ # end
212
+ # end
213
+ #
214
+ # Which will (if it had both a <tt>welcome.text.erb</tt> and <tt>welcome.html.erb</tt>
215
+ # template in the view directory), send a complete <tt>multipart/mixed</tt> email with two parts,
216
+ # the first part being a <tt>multipart/alternative</tt> with the text and HTML email parts inside,
217
+ # and the second being a <tt>application/pdf</tt> with a Base64 encoded copy of the file.pdf book
218
+ # with the filename +free_book.pdf+.
219
+ #
220
+ # If you need to send attachments with no content, you need to create an empty view for it,
221
+ # or add an empty body parameter like this:
222
+ #
223
+ # class NotifierMailer < ApplicationMailer
224
+ # def welcome(recipient)
225
+ # attachments['free_book.pdf'] = File.read('path/to/file.pdf')
226
+ # mail(to: recipient, subject: "New account information", body: "")
227
+ # end
228
+ # end
229
+ #
230
+ # You can also send attachments with html template, in this case you need to add body, attachments,
231
+ # and custom content type like this:
232
+ #
233
+ # class NotifierMailer < ApplicationMailer
234
+ # def welcome(recipient)
235
+ # attachments["free_book.pdf"] = File.read("path/to/file.pdf")
236
+ # mail(to: recipient,
237
+ # subject: "New account information",
238
+ # content_type: "text/html",
239
+ # body: "<html><body>Hello there</body></html>")
240
+ # end
241
+ # end
242
+ #
243
+ # = Inline Attachments
244
+ #
245
+ # You can also specify that a file should be displayed inline with other HTML. This is useful
246
+ # if you want to display a corporate logo or a photo.
247
+ #
248
+ # class NotifierMailer < ApplicationMailer
249
+ # def welcome(recipient)
250
+ # attachments.inline['photo.png'] = File.read('path/to/photo.png')
251
+ # mail(to: recipient, subject: "Here is what we look like")
252
+ # end
253
+ # end
254
+ #
255
+ # And then to reference the image in the view, you create a <tt>welcome.html.erb</tt> file and
256
+ # make a call to +image_tag+ passing in the attachment you want to display and then call
257
+ # +url+ on the attachment to get the relative content id path for the image source:
258
+ #
259
+ # <h1>Please Don't Cringe</h1>
260
+ #
261
+ # <%= image_tag attachments['photo.png'].url -%>
262
+ #
263
+ # As we are using Action View's +image_tag+ method, you can pass in any other options you want:
264
+ #
265
+ # <h1>Please Don't Cringe</h1>
266
+ #
267
+ # <%= image_tag attachments['photo.png'].url, alt: 'Our Photo', class: 'photo' -%>
268
+ #
269
+ # = Observing and Intercepting Mails
270
+ #
271
+ # Action Mailer provides hooks into the Mail observer and interceptor methods. These allow you to
272
+ # register classes that are called during the mail delivery life cycle.
273
+ #
274
+ # An observer class must implement the <tt>:delivered_email(message)</tt> method which will be
275
+ # called once for every email sent after the email has been sent.
276
+ #
277
+ # An interceptor class must implement the <tt>:delivering_email(message)</tt> method which will be
278
+ # called before the email is sent, allowing you to make modifications to the email before it hits
279
+ # the delivery agents. Your class should make any needed modifications directly to the passed
280
+ # in <tt>Mail::Message</tt> instance.
281
+ #
282
+ # = Default Hash
283
+ #
284
+ # Action Mailer provides some intelligent defaults for your emails, these are usually specified in a
285
+ # default method inside the class definition:
286
+ #
287
+ # class NotifierMailer < ApplicationMailer
288
+ # default sender: 'system@example.com'
289
+ # end
290
+ #
291
+ # You can pass in any header value that a <tt>Mail::Message</tt> accepts. Out of the box,
292
+ # <tt>ActionMailer::Base</tt> sets the following:
293
+ #
294
+ # * <tt>mime_version: "1.0"</tt>
295
+ # * <tt>charset: "UTF-8"</tt>
296
+ # * <tt>content_type: "text/plain"</tt>
297
+ # * <tt>parts_order: [ "text/plain", "text/enriched", "text/html" ]</tt>
298
+ #
299
+ # <tt>parts_order</tt> and <tt>charset</tt> are not actually valid <tt>Mail::Message</tt> header fields,
300
+ # but Action Mailer translates them appropriately and sets the correct values.
301
+ #
302
+ # As you can pass in any header, you need to either quote the header as a string, or pass it in as
303
+ # an underscored symbol, so the following will work:
304
+ #
305
+ # class NotifierMailer < ApplicationMailer
306
+ # default 'Content-Transfer-Encoding' => '7bit',
307
+ # content_description: 'This is a description'
308
+ # end
309
+ #
310
+ # Finally, Action Mailer also supports passing <tt>Proc</tt> and <tt>Lambda</tt> objects into the default hash,
311
+ # so you can define methods that evaluate as the message is being generated:
312
+ #
313
+ # class NotifierMailer < ApplicationMailer
314
+ # default 'X-Special-Header' => Proc.new { my_method }, to: -> { @inviter.email_address }
315
+ #
316
+ # private
317
+ # def my_method
318
+ # 'some complex call'
319
+ # end
320
+ # end
321
+ #
322
+ # Note that the proc/lambda is evaluated right at the start of the mail message generation, so if you
323
+ # set something in the default hash using a proc, and then set the same thing inside of your
324
+ # mailer method, it will get overwritten by the mailer method.
325
+ #
326
+ # It is also possible to set these default options that will be used in all mailers through
327
+ # the <tt>default_options=</tt> configuration in <tt>config/application.rb</tt>:
328
+ #
329
+ # config.action_mailer.default_options = { from: "no-reply@example.org" }
330
+ #
331
+ # = Callbacks
332
+ #
333
+ # You can specify callbacks using <tt>before_action</tt> and <tt>after_action</tt> for configuring your messages.
334
+ # This may be useful, for example, when you want to add default inline attachments for all
335
+ # messages sent out by a certain mailer class:
336
+ #
337
+ # class NotifierMailer < ApplicationMailer
338
+ # before_action :add_inline_attachment!
339
+ #
340
+ # def welcome
341
+ # mail
342
+ # end
343
+ #
344
+ # private
345
+ # def add_inline_attachment!
346
+ # attachments.inline["footer.jpg"] = File.read('/path/to/filename.jpg')
347
+ # end
348
+ # end
349
+ #
350
+ # Callbacks in Action Mailer are implemented using
351
+ # AbstractController::Callbacks, so you can define and configure
352
+ # callbacks in the same manner that you would use callbacks in classes that
353
+ # inherit from ActionController::Base.
354
+ #
355
+ # Note that unless you have a specific reason to do so, you should prefer
356
+ # using <tt>before_action</tt> rather than <tt>after_action</tt> in your
357
+ # Action Mailer classes so that headers are parsed properly.
358
+ #
359
+ # = Rescuing Errors
360
+ #
361
+ # +rescue+ blocks inside of a mailer method cannot rescue errors that occur
362
+ # outside of rendering -- for example, record deserialization errors in a
363
+ # background job, or errors from a third-party mail delivery service.
364
+ #
365
+ # To rescue errors that occur during any part of the mailing process, use
366
+ # {rescue_from}[rdoc-ref:ActiveSupport::Rescuable::ClassMethods#rescue_from]:
367
+ #
368
+ # class NotifierMailer < ApplicationMailer
369
+ # rescue_from ActiveJob::DeserializationError do
370
+ # # ...
371
+ # end
372
+ #
373
+ # rescue_from "SomeThirdPartyService::ApiError" do
374
+ # # ...
375
+ # end
376
+ #
377
+ # def notify(recipient)
378
+ # mail(to: recipient, subject: "Notification")
379
+ # end
380
+ # end
381
+ #
382
+ # = Previewing emails
383
+ #
384
+ # You can preview your email templates visually by adding a mailer preview file to the
385
+ # <tt>ActionMailer::Base.preview_path</tt>. Since most emails do something interesting
386
+ # with database data, you'll need to write some scenarios to load messages with fake data:
387
+ #
388
+ # class NotifierMailerPreview < ActionMailer::Preview
389
+ # def welcome
390
+ # NotifierMailer.welcome(User.first)
391
+ # end
392
+ # end
393
+ #
394
+ # Methods must return a <tt>Mail::Message</tt> object which can be generated by calling the mailer
395
+ # method without the additional <tt>deliver_now</tt> / <tt>deliver_later</tt>. The location of the
396
+ # mailer previews directory can be configured using the <tt>preview_path</tt> option which has a default
397
+ # of <tt>test/mailers/previews</tt>:
398
+ #
399
+ # config.action_mailer.preview_path = "#{Rails.root}/lib/mailer_previews"
400
+ #
401
+ # An overview of all previews is accessible at <tt>http://localhost:3000/rails/mailers</tt>
402
+ # on a running development server instance.
403
+ #
404
+ # Previews can also be intercepted in a similar manner as deliveries can be by registering
405
+ # a preview interceptor that has a <tt>previewing_email</tt> method:
406
+ #
407
+ # class CssInlineStyler
408
+ # def self.previewing_email(message)
409
+ # # inline CSS styles
410
+ # end
411
+ # end
412
+ #
413
+ # config.action_mailer.preview_interceptors :css_inline_styler
414
+ #
415
+ # Note that interceptors need to be registered both with <tt>register_interceptor</tt>
416
+ # and <tt>register_preview_interceptor</tt> if they should operate on both sending and
417
+ # previewing emails.
418
+ #
419
+ # = Configuration options
420
+ #
421
+ # These options are specified on the class level, like
422
+ # <tt>ActionMailer::Base.raise_delivery_errors = true</tt>
423
+ #
424
+ # * <tt>default_options</tt> - You can pass this in at a class level as well as within the class itself as
425
+ # per the above section.
426
+ #
427
+ # * <tt>logger</tt> - the logger is used for generating information on the mailing run if available.
428
+ # Can be set to +nil+ for no logging. Compatible with both Ruby's own +Logger+ and Log4r loggers.
429
+ #
430
+ # * <tt>smtp_settings</tt> - Allows detailed configuration for <tt>:smtp</tt> delivery method:
431
+ # * <tt>:address</tt> - Allows you to use a remote mail server. Just change it from its default
432
+ # "localhost" setting.
433
+ # * <tt>:port</tt> - On the off chance that your mail server doesn't run on port 25, you can change it.
434
+ # * <tt>:domain</tt> - If you need to specify a HELO domain, you can do it here.
435
+ # * <tt>:user_name</tt> - If your mail server requires authentication, set the username in this setting.
436
+ # * <tt>:password</tt> - If your mail server requires authentication, set the password in this setting.
437
+ # * <tt>:authentication</tt> - If your mail server requires authentication, you need to specify the
438
+ # authentication type here.
439
+ # This is a symbol and one of <tt>:plain</tt> (will send the password Base64 encoded), <tt>:login</tt> (will
440
+ # send the password Base64 encoded) or <tt>:cram_md5</tt> (combines a Challenge/Response mechanism to exchange
441
+ # information and a cryptographic Message Digest 5 algorithm to hash important information)
442
+ # * <tt>:enable_starttls</tt> - Use STARTTLS when connecting to your SMTP server and fail if unsupported. Defaults to <tt>false</tt>.
443
+ # * <tt>:enable_starttls_auto</tt> - Detects if STARTTLS is enabled in your SMTP server and starts
444
+ # to use it. Defaults to <tt>true</tt>.
445
+ # * <tt>:openssl_verify_mode</tt> - When using TLS, you can set how OpenSSL checks the certificate. This is
446
+ # really useful if you need to validate a self-signed and/or a wildcard certificate. You can use the name
447
+ # of an OpenSSL verify constant (<tt>'none'</tt> or <tt>'peer'</tt>) or directly the constant
448
+ # (<tt>OpenSSL::SSL::VERIFY_NONE</tt> or <tt>OpenSSL::SSL::VERIFY_PEER</tt>).
449
+ # * <tt>:ssl/:tls</tt> Enables the SMTP connection to use SMTP/TLS (SMTPS: SMTP over direct TLS connection)
450
+ # * <tt>:open_timeout</tt> Number of seconds to wait while attempting to open a connection.
451
+ # * <tt>:read_timeout</tt> Number of seconds to wait until timing-out a read(2) call.
452
+ #
453
+ # * <tt>sendmail_settings</tt> - Allows you to override options for the <tt>:sendmail</tt> delivery method.
454
+ # * <tt>:location</tt> - The location of the sendmail executable. Defaults to <tt>/usr/sbin/sendmail</tt>.
455
+ # * <tt>:arguments</tt> - The command line arguments. Defaults to <tt>-i</tt> with <tt>-f sender@address</tt>
456
+ # added automatically before the message is sent.
457
+ #
458
+ # * <tt>file_settings</tt> - Allows you to override options for the <tt>:file</tt> delivery method.
459
+ # * <tt>:location</tt> - The directory into which emails will be written. Defaults to the application
460
+ # <tt>tmp/mails</tt>.
461
+ #
462
+ # * <tt>raise_delivery_errors</tt> - Whether or not errors should be raised if the email fails to be delivered.
463
+ #
464
+ # * <tt>delivery_method</tt> - Defines a delivery method. Possible values are <tt>:smtp</tt> (default),
465
+ # <tt>:sendmail</tt>, <tt>:test</tt>, and <tt>:file</tt>. Or you may provide a custom delivery method
466
+ # object e.g. +MyOwnDeliveryMethodClass+. See the Mail gem documentation on the interface you need to
467
+ # implement for a custom delivery agent.
468
+ #
469
+ # * <tt>perform_deliveries</tt> - Determines whether emails are actually sent from Action Mailer when you
470
+ # call <tt>.deliver</tt> on an email message or on an Action Mailer method. This is on by default but can
471
+ # be turned off to aid in functional testing.
472
+ #
473
+ # * <tt>deliveries</tt> - Keeps an array of all the emails sent out through the Action Mailer with
474
+ # <tt>delivery_method :test</tt>. Most useful for unit and functional testing.
475
+ #
476
+ # * <tt>delivery_job</tt> - The job class used with <tt>deliver_later</tt>. Defaults to
477
+ # +ActionMailer::MailDeliveryJob+.
478
+ #
479
+ # * <tt>deliver_later_queue_name</tt> - The name of the queue used with <tt>deliver_later</tt>.
480
+ #
481
+ # @abstract It cannont be directly instantiated. Subclasses must implement the `abstract` methods below.
482
+ #
483
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:466
484
+ class ActionMailer::Base < ::AbstractController::Base
485
+ include ::ActionMailer::DeliveryMethods
486
+ include ::ActiveSupport::Rescuable
487
+ include ::ActionMailer::Rescuable
488
+ include ::ActionMailer::Parameterized
489
+ include ::ActionMailer::Previews
490
+ include ::ActionView::ViewPaths
491
+ include ::AbstractController::Rendering
492
+ include ::AbstractController::Logger
493
+ include ::ActiveSupport::Benchmarkable
494
+ include ::AbstractController::Helpers
495
+ include ::AbstractController::Translation
496
+ include ::AbstractController::AssetPaths
497
+ include ::ActiveSupport::Callbacks
498
+ include ::AbstractController::Callbacks
499
+ include ::AbstractController::Caching::Fragments
500
+ include ::AbstractController::Caching::ConfigMethods
501
+ include ::AbstractController::Caching
502
+ include ::ActionView::Rendering
503
+ include ::ActionView::Layouts
504
+ extend ::ActionMailer::DeliveryMethods::ClassMethods
505
+ extend ::ActiveSupport::Rescuable::ClassMethods
506
+ extend ::ActionMailer::Rescuable::ClassMethods
507
+ extend ::ActionMailer::Parameterized::ClassMethods
508
+ extend ::ActionMailer::Previews::ClassMethods
509
+ extend ::ActionView::ViewPaths::ClassMethods
510
+ extend ::AbstractController::Helpers::ClassMethods
511
+ extend ::ActiveSupport::Callbacks::ClassMethods
512
+ extend ::AbstractController::Callbacks::ClassMethods
513
+ extend ::AbstractController::Caching::Fragments::ClassMethods
514
+ extend ::AbstractController::Caching::ClassMethods
515
+ extend ::AbstractController::Caching::ConfigMethods
516
+ extend ::ActionView::Rendering::ClassMethods
517
+ extend ::ActionView::Layouts::ClassMethods
518
+
519
+ # @return [Base] a new instance of Base
520
+ #
521
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:632
522
+ def initialize; end
523
+
524
+ # source://activesupport-7.0.3.1/lib/active_support/callbacks.rb:68
525
+ def __callbacks; end
526
+
527
+ # source://activesupport-7.0.3.1/lib/active_support/callbacks.rb:68
528
+ def __callbacks?; end
529
+
530
+ # source://actionpack-7.0.3.1/lib/abstract_controller/helpers.rb:11
531
+ def _helper_methods; end
532
+
533
+ # source://actionpack-7.0.3.1/lib/abstract_controller/helpers.rb:11
534
+ def _helper_methods=(_arg0); end
535
+
536
+ # source://actionpack-7.0.3.1/lib/abstract_controller/helpers.rb:11
537
+ def _helper_methods?; end
538
+
539
+ # source://activesupport-7.0.3.1/lib/active_support/callbacks.rb:940
540
+ def _process_action_callbacks; end
541
+
542
+ # source://activesupport-7.0.3.1/lib/active_support/callbacks.rb:928
543
+ def _run_process_action_callbacks(&block); end
544
+
545
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching.rb:42
546
+ def _view_cache_dependencies; end
547
+
548
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching.rb:42
549
+ def _view_cache_dependencies=(_arg0); end
550
+
551
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching.rb:42
552
+ def _view_cache_dependencies?; end
553
+
554
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
555
+ def asset_host; end
556
+
557
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
558
+ def asset_host=(value); end
559
+
560
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
561
+ def assets_dir; end
562
+
563
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
564
+ def assets_dir=(value); end
565
+
566
+ # Allows you to add attachments to an email, like so:
567
+ #
568
+ # mail.attachments['filename.jpg'] = File.read('/path/to/filename.jpg')
569
+ #
570
+ # If you do this, then Mail will take the file name and work out the mime type.
571
+ # It will also set the Content-Type, Content-Disposition, Content-Transfer-Encoding
572
+ # and encode the contents of the attachment in Base64.
573
+ #
574
+ # You can also specify overrides if you want by passing a hash instead of a string:
575
+ #
576
+ # mail.attachments['filename.jpg'] = {mime_type: 'application/gzip',
577
+ # content: File.read('/path/to/filename.jpg')}
578
+ #
579
+ # If you want to use encoding other than Base64 then you will need to pass encoding
580
+ # type along with the pre-encoded content as Mail doesn't know how to decode the
581
+ # data:
582
+ #
583
+ # file_content = SpecialEncode(File.read('/path/to/filename.jpg'))
584
+ # mail.attachments['filename.jpg'] = {mime_type: 'application/gzip',
585
+ # content: file_content }
586
+ #
587
+ # You can also search for specific attachments:
588
+ #
589
+ # # By Filename
590
+ # mail.attachments['filename.jpg'] # => Mail::Part object or nil
591
+ #
592
+ # # or by index
593
+ # mail.attachments[0] # => Mail::Part (first attachment)
594
+ #
595
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:749
596
+ def attachments; end
597
+
598
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
599
+ def default_asset_host_protocol; end
600
+
601
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
602
+ def default_asset_host_protocol=(value); end
603
+
604
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:490
605
+ def default_params; end
606
+
607
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:490
608
+ def default_params=(_arg0); end
609
+
610
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:490
611
+ def default_params?; end
612
+
613
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
614
+ def default_static_extension; end
615
+
616
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
617
+ def default_static_extension=(value); end
618
+
619
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:15
620
+ def deliver_later_queue_name; end
621
+
622
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:15
623
+ def deliver_later_queue_name=(val); end
624
+
625
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:489
626
+ def delivery_job; end
627
+
628
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:489
629
+ def delivery_job=(_arg0); end
630
+
631
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:489
632
+ def delivery_job?; end
633
+
634
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:18
635
+ def delivery_method; end
636
+
637
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:18
638
+ def delivery_method=(_arg0); end
639
+
640
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:18
641
+ def delivery_method?; end
642
+
643
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:17
644
+ def delivery_methods; end
645
+
646
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:17
647
+ def delivery_methods=(_arg0); end
648
+
649
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:17
650
+ def delivery_methods?; end
651
+
652
+ # Returns an email in the format "Name <email@example.com>".
653
+ #
654
+ # If the name is a blank string, it returns just the address.
655
+ #
656
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:673
657
+ def email_address_with_name(address, name); end
658
+
659
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
660
+ def enable_fragment_cache_logging; end
661
+
662
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
663
+ def enable_fragment_cache_logging=(value); end
664
+
665
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
666
+ def file_settings; end
667
+
668
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
669
+ def file_settings=(_arg0); end
670
+
671
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
672
+ def file_settings?; end
673
+
674
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching/fragments.rb:23
675
+ def fragment_cache_keys; end
676
+
677
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching/fragments.rb:23
678
+ def fragment_cache_keys=(_arg0); end
679
+
680
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching/fragments.rb:23
681
+ def fragment_cache_keys?; end
682
+
683
+ # Allows you to pass random and unusual headers to the new <tt>Mail::Message</tt>
684
+ # object which will add them to itself.
685
+ #
686
+ # headers['X-Special-Domain-Specific-Header'] = "SecretValue"
687
+ #
688
+ # You can also pass a hash into headers of header field names and values,
689
+ # which will then be set on the <tt>Mail::Message</tt> object:
690
+ #
691
+ # headers 'X-Special-Domain-Specific-Header' => "SecretValue",
692
+ # 'In-Reply-To' => incoming.message_id
693
+ #
694
+ # The resulting <tt>Mail::Message</tt> will have the following in its header:
695
+ #
696
+ # X-Special-Domain-Specific-Header: SecretValue
697
+ #
698
+ # Note about replacing already defined headers:
699
+ #
700
+ # * +subject+
701
+ # * +sender+
702
+ # * +from+
703
+ # * +to+
704
+ # * +cc+
705
+ # * +bcc+
706
+ # * +reply-to+
707
+ # * +orig-date+
708
+ # * +message-id+
709
+ # * +references+
710
+ #
711
+ # Fields can only appear once in email headers while other fields such as
712
+ # <tt>X-Anything</tt> can appear multiple times.
713
+ #
714
+ # If you want to replace any header which already exists, first set it to
715
+ # +nil+ in order to reset the value otherwise another field will be added
716
+ # for the same header.
717
+ #
718
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:711
719
+ def headers(args = T.unsafe(nil)); end
720
+
721
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
722
+ def javascripts_dir; end
723
+
724
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
725
+ def javascripts_dir=(value); end
726
+
727
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
728
+ def logger; end
729
+
730
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
731
+ def logger=(value); end
732
+
733
+ # The main method that creates the message and renders the email templates. There are
734
+ # two ways to call this method, with a block, or without a block.
735
+ #
736
+ # It accepts a headers hash. This hash allows you to specify
737
+ # the most used headers in an email message, these are:
738
+ #
739
+ # * +:subject+ - The subject of the message, if this is omitted, Action Mailer will
740
+ # ask the Rails I18n class for a translated +:subject+ in the scope of
741
+ # <tt>[mailer_scope, action_name]</tt> or if this is missing, will translate the
742
+ # humanized version of the +action_name+
743
+ # * +:to+ - Who the message is destined for, can be a string of addresses, or an array
744
+ # of addresses.
745
+ # * +:from+ - Who the message is from
746
+ # * +:cc+ - Who you would like to Carbon-Copy on this email, can be a string of addresses,
747
+ # or an array of addresses.
748
+ # * +:bcc+ - Who you would like to Blind-Carbon-Copy on this email, can be a string of
749
+ # addresses, or an array of addresses.
750
+ # * +:reply_to+ - Who to set the Reply-To header of the email to.
751
+ # * +:date+ - The date to say the email was sent on.
752
+ #
753
+ # You can set default values for any of the above headers (except +:date+)
754
+ # by using the ::default class method:
755
+ #
756
+ # class Notifier < ActionMailer::Base
757
+ # default from: 'no-reply@test.lindsaar.net',
758
+ # bcc: 'email_logger@test.lindsaar.net',
759
+ # reply_to: 'bounces@test.lindsaar.net'
760
+ # end
761
+ #
762
+ # If you need other headers not listed above, you can either pass them in
763
+ # as part of the headers hash or use the <tt>headers['name'] = value</tt>
764
+ # method.
765
+ #
766
+ # When a +:return_path+ is specified as header, that value will be used as
767
+ # the 'envelope from' address for the Mail message. Setting this is useful
768
+ # when you want delivery notifications sent to a different address than the
769
+ # one in +:from+. Mail will actually use the +:return_path+ in preference
770
+ # to the +:sender+ in preference to the +:from+ field for the 'envelope
771
+ # from' value.
772
+ #
773
+ # If you do not pass a block to the +mail+ method, it will find all
774
+ # templates in the view paths using by default the mailer name and the
775
+ # method name that it is being called from, it will then create parts for
776
+ # each of these templates intelligently, making educated guesses on correct
777
+ # content type and sequence, and return a fully prepared <tt>Mail::Message</tt>
778
+ # ready to call <tt>:deliver</tt> on to send.
779
+ #
780
+ # For example:
781
+ #
782
+ # class Notifier < ActionMailer::Base
783
+ # default from: 'no-reply@test.lindsaar.net'
784
+ #
785
+ # def welcome
786
+ # mail(to: 'mikel@test.lindsaar.net')
787
+ # end
788
+ # end
789
+ #
790
+ # Will look for all templates at "app/views/notifier" with name "welcome".
791
+ # If no welcome template exists, it will raise an ActionView::MissingTemplate error.
792
+ #
793
+ # However, those can be customized:
794
+ #
795
+ # mail(template_path: 'notifications', template_name: 'another')
796
+ #
797
+ # And now it will look for all templates at "app/views/notifications" with name "another".
798
+ #
799
+ # If you do pass a block, you can render specific templates of your choice:
800
+ #
801
+ # mail(to: 'mikel@test.lindsaar.net') do |format|
802
+ # format.text
803
+ # format.html
804
+ # end
805
+ #
806
+ # You can even render plain text directly without using a template:
807
+ #
808
+ # mail(to: 'mikel@test.lindsaar.net') do |format|
809
+ # format.text { render plain: "Hello Mikel!" }
810
+ # format.html { render html: "<h1>Hello Mikel!</h1>".html_safe }
811
+ # end
812
+ #
813
+ # Which will render a +multipart/alternative+ email with +text/plain+ and
814
+ # +text/html+ parts.
815
+ #
816
+ # The block syntax also allows you to customize the part headers if desired:
817
+ #
818
+ # mail(to: 'mikel@test.lindsaar.net') do |format|
819
+ # format.html
820
+ # end
821
+ #
822
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:858
823
+ def mail(headers = T.unsafe(nil), &block); end
824
+
825
+ # Returns the name of the mailer object.
826
+ #
827
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:666
828
+ def mailer_name; end
829
+
830
+ # source://activesupport-7.0.3.1/lib/active_support/core_ext/module/attr_internal.rb:33
831
+ def message; end
832
+
833
+ # source://activesupport-7.0.3.1/lib/active_support/core_ext/module/attr_internal.rb:33
834
+ def message=(_arg0); end
835
+
836
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:91
837
+ def params; end
838
+
839
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:91
840
+ def params=(_arg0); end
841
+
842
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
843
+ def perform_caching; end
844
+
845
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
846
+ def perform_caching=(value); end
847
+
848
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:14
849
+ def perform_deliveries; end
850
+
851
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:14
852
+ def perform_deliveries=(val); end
853
+
854
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:25
855
+ def preview_interceptors; end
856
+
857
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:14
858
+ def preview_path; end
859
+
860
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:638
861
+ def process(method_name, *args); end
862
+
863
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:13
864
+ def raise_delivery_errors; end
865
+
866
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:13
867
+ def raise_delivery_errors=(val); end
868
+
869
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
870
+ def relative_url_root; end
871
+
872
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
873
+ def relative_url_root=(value); end
874
+
875
+ # source://activesupport-7.0.3.1/lib/active_support/rescuable.rb:13
876
+ def rescue_handlers; end
877
+
878
+ # source://activesupport-7.0.3.1/lib/active_support/rescuable.rb:13
879
+ def rescue_handlers=(_arg0); end
880
+
881
+ # source://activesupport-7.0.3.1/lib/active_support/rescuable.rb:13
882
+ def rescue_handlers?; end
883
+
884
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
885
+ def sendmail_settings; end
886
+
887
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
888
+ def sendmail_settings=(_arg0); end
889
+
890
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
891
+ def sendmail_settings?; end
892
+
893
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:22
894
+ def show_previews; end
895
+
896
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
897
+ def smtp_settings; end
898
+
899
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
900
+ def smtp_settings=(_arg0); end
901
+
902
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
903
+ def smtp_settings?; end
904
+
905
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
906
+ def stylesheets_dir; end
907
+
908
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
909
+ def stylesheets_dir=(value); end
910
+
911
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
912
+ def test_settings; end
913
+
914
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
915
+ def test_settings=(_arg0); end
916
+
917
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
918
+ def test_settings?; end
919
+
920
+ private
921
+
922
+ # source://actionview-7.0.3.1/lib/action_view/layouts.rb:328
923
+ def _layout(lookup_context, formats); end
924
+
925
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:1059
926
+ def _protected_ivars; end
927
+
928
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:935
929
+ def apply_defaults(headers); end
930
+
931
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:955
932
+ def assign_headers_to_message(message, headers); end
933
+
934
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:961
935
+ def collect_responses(headers, &block); end
936
+
937
+ # @yield [collector]
938
+ #
939
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:971
940
+ def collect_responses_from_block(headers); end
941
+
942
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:985
943
+ def collect_responses_from_templates(headers); end
944
+
945
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:978
946
+ def collect_responses_from_text(headers); end
947
+
948
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:945
949
+ def compute_default(value); end
950
+
951
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:1028
952
+ def create_parts_from_responses(m, responses); end
953
+
954
+ # Translates the +subject+ using Rails I18n class under <tt>[mailer_scope, action_name]</tt> scope.
955
+ # If it does not find a translation for the +subject+ under the specified scope it will default to a
956
+ # humanized version of the <tt>action_name</tt>.
957
+ # If the subject has interpolations, you can pass them through the +interpolations+ parameter.
958
+ #
959
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:925
960
+ def default_i18n_subject(interpolations = T.unsafe(nil)); end
961
+
962
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:998
963
+ def each_template(paths, name, &block); end
964
+
965
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:1041
966
+ def insert_part(container, response, charset); end
967
+
968
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:1055
969
+ def instrument_name; end
970
+
971
+ # This and #instrument_name is for caching instrument
972
+ #
973
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:1048
974
+ def instrument_payload(key); end
975
+
976
+ # Used by #mail to set the content type of the message.
977
+ #
978
+ # It will use the given +user_content_type+, or multipart if the mail
979
+ # message has any attachments. If the attachments are inline, the content
980
+ # type will be "multipart/related", otherwise "multipart/mixed".
981
+ #
982
+ # If there is no content type passed in via headers, and there are no
983
+ # attachments, or the message is multipart, then the default content type is
984
+ # used.
985
+ #
986
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:903
987
+ def set_content_type(m, user_content_type, class_default); end
988
+
989
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:1007
990
+ def wrap_inline_attachments(message); end
991
+
992
+ class << self
993
+ # source://activesupport-7.0.3.1/lib/active_support/callbacks.rb:68
994
+ def __callbacks; end
995
+
996
+ # source://activesupport-7.0.3.1/lib/active_support/callbacks.rb:68
997
+ def __callbacks=(value); end
998
+
999
+ # source://activesupport-7.0.3.1/lib/active_support/callbacks.rb:68
1000
+ def __callbacks?; end
1001
+
1002
+ # source://actionpack-7.0.3.1/lib/abstract_controller/helpers.rb:11
1003
+ def _helper_methods; end
1004
+
1005
+ # source://actionpack-7.0.3.1/lib/abstract_controller/helpers.rb:11
1006
+ def _helper_methods=(value); end
1007
+
1008
+ # source://actionpack-7.0.3.1/lib/abstract_controller/helpers.rb:11
1009
+ def _helper_methods?; end
1010
+
1011
+ # source://actionpack-7.0.3.1/lib/abstract_controller/helpers.rb:15
1012
+ def _helpers; end
1013
+
1014
+ # source://actionview-7.0.3.1/lib/action_view/layouts.rb:209
1015
+ def _layout; end
1016
+
1017
+ # source://actionview-7.0.3.1/lib/action_view/layouts.rb:209
1018
+ def _layout=(value); end
1019
+
1020
+ # source://actionview-7.0.3.1/lib/action_view/layouts.rb:209
1021
+ def _layout?; end
1022
+
1023
+ # source://actionview-7.0.3.1/lib/action_view/layouts.rb:210
1024
+ def _layout_conditions; end
1025
+
1026
+ # source://actionview-7.0.3.1/lib/action_view/layouts.rb:210
1027
+ def _layout_conditions=(value); end
1028
+
1029
+ # source://actionview-7.0.3.1/lib/action_view/layouts.rb:210
1030
+ def _layout_conditions?; end
1031
+
1032
+ # source://activesupport-7.0.3.1/lib/active_support/callbacks.rb:932
1033
+ def _process_action_callbacks; end
1034
+
1035
+ # source://activesupport-7.0.3.1/lib/active_support/callbacks.rb:936
1036
+ def _process_action_callbacks=(value); end
1037
+
1038
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching.rb:42
1039
+ def _view_cache_dependencies; end
1040
+
1041
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching.rb:42
1042
+ def _view_cache_dependencies=(value); end
1043
+
1044
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching.rb:42
1045
+ def _view_cache_dependencies?; end
1046
+
1047
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
1048
+ def asset_host; end
1049
+
1050
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
1051
+ def asset_host=(value); end
1052
+
1053
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
1054
+ def assets_dir; end
1055
+
1056
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
1057
+ def assets_dir=(value); end
1058
+
1059
+ # Returns the name of the current mailer. This method is also being used as a path for a view lookup.
1060
+ # If this is an anonymous mailer, this method will return +anonymous+ instead.
1061
+ #
1062
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:558
1063
+ def controller_path; end
1064
+
1065
+ # Sets the defaults through app configuration:
1066
+ #
1067
+ # config.action_mailer.default(from: "no-reply@example.org")
1068
+ #
1069
+ # Aliased by ::default_options=
1070
+ #
1071
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:570
1072
+ def default(value = T.unsafe(nil)); end
1073
+
1074
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
1075
+ def default_asset_host_protocol; end
1076
+
1077
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
1078
+ def default_asset_host_protocol=(value); end
1079
+
1080
+ # Sets the defaults through app configuration:
1081
+ #
1082
+ # config.action_mailer.default(from: "no-reply@example.org")
1083
+ #
1084
+ # Aliased by ::default_options=
1085
+ # Allows to set defaults through app configuration:
1086
+ #
1087
+ # config.action_mailer.default_options = { from: "no-reply@example.org" }
1088
+ #
1089
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:570
1090
+ def default_options=(value = T.unsafe(nil)); end
1091
+
1092
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:490
1093
+ def default_params; end
1094
+
1095
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:490
1096
+ def default_params=(value); end
1097
+
1098
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:490
1099
+ def default_params?; end
1100
+
1101
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
1102
+ def default_static_extension; end
1103
+
1104
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
1105
+ def default_static_extension=(value); end
1106
+
1107
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:15
1108
+ def deliver_later_queue_name; end
1109
+
1110
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:15
1111
+ def deliver_later_queue_name=(val); end
1112
+
1113
+ # Wraps an email delivery inside of <tt>ActiveSupport::Notifications</tt> instrumentation.
1114
+ #
1115
+ # This method is actually called by the <tt>Mail::Message</tt> object itself
1116
+ # through a callback when you call <tt>:deliver</tt> on the <tt>Mail::Message</tt>,
1117
+ # calling +deliver_mail+ directly and passing a <tt>Mail::Message</tt> will do
1118
+ # nothing except tell the logger you sent the email.
1119
+ #
1120
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:585
1121
+ def deliver_mail(mail); end
1122
+
1123
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:489
1124
+ def delivery_job; end
1125
+
1126
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:489
1127
+ def delivery_job=(value); end
1128
+
1129
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:489
1130
+ def delivery_job?; end
1131
+
1132
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:18
1133
+ def delivery_method; end
1134
+
1135
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:18
1136
+ def delivery_method=(value); end
1137
+
1138
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:18
1139
+ def delivery_method?; end
1140
+
1141
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:17
1142
+ def delivery_methods; end
1143
+
1144
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:17
1145
+ def delivery_methods=(value); end
1146
+
1147
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:17
1148
+ def delivery_methods?; end
1149
+
1150
+ # Returns an email in the format "Name <email@example.com>".
1151
+ #
1152
+ # If the name is a blank string, it returns just the address.
1153
+ #
1154
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:595
1155
+ def email_address_with_name(address, name); end
1156
+
1157
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
1158
+ def enable_fragment_cache_logging; end
1159
+
1160
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
1161
+ def enable_fragment_cache_logging=(value); end
1162
+
1163
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1164
+ def file_settings; end
1165
+
1166
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1167
+ def file_settings=(value); end
1168
+
1169
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1170
+ def file_settings?; end
1171
+
1172
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching/fragments.rb:23
1173
+ def fragment_cache_keys; end
1174
+
1175
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching/fragments.rb:23
1176
+ def fragment_cache_keys=(value); end
1177
+
1178
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching/fragments.rb:23
1179
+ def fragment_cache_keys?; end
1180
+
1181
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
1182
+ def javascripts_dir; end
1183
+
1184
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
1185
+ def javascripts_dir=(value); end
1186
+
1187
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
1188
+ def logger; end
1189
+
1190
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
1191
+ def logger=(value); end
1192
+
1193
+ # Returns the name of the current mailer. This method is also being used as a path for a view lookup.
1194
+ # If this is an anonymous mailer, this method will return +anonymous+ instead.
1195
+ #
1196
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:558
1197
+ def mailer_name; end
1198
+
1199
+ # Allows to set the name of current mailer.
1200
+ #
1201
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:562
1202
+ def mailer_name=(_arg0); end
1203
+
1204
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
1205
+ def perform_caching; end
1206
+
1207
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
1208
+ def perform_caching=(value); end
1209
+
1210
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:14
1211
+ def perform_deliveries; end
1212
+
1213
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:14
1214
+ def perform_deliveries=(val); end
1215
+
1216
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:25
1217
+ def preview_interceptors; end
1218
+
1219
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:25
1220
+ def preview_interceptors=(val); end
1221
+
1222
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:14
1223
+ def preview_path; end
1224
+
1225
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:14
1226
+ def preview_path=(val); end
1227
+
1228
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:13
1229
+ def raise_delivery_errors; end
1230
+
1231
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:13
1232
+ def raise_delivery_errors=(val); end
1233
+
1234
+ # Register an Interceptor which will be called before mail is sent.
1235
+ # Either a class, string, or symbol can be passed in as the Interceptor.
1236
+ # If a string or symbol is passed in it will be camelized and constantized.
1237
+ #
1238
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:535
1239
+ def register_interceptor(interceptor); end
1240
+
1241
+ # Register one or more Interceptors which will be called before mail is sent.
1242
+ #
1243
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:509
1244
+ def register_interceptors(*interceptors); end
1245
+
1246
+ # Register an Observer which will be notified when mail is delivered.
1247
+ # Either a class, string, or symbol can be passed in as the Observer.
1248
+ # If a string or symbol is passed in it will be camelized and constantized.
1249
+ #
1250
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:521
1251
+ def register_observer(observer); end
1252
+
1253
+ # Register one or more Observers which will be notified when mail is delivered.
1254
+ #
1255
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:499
1256
+ def register_observers(*observers); end
1257
+
1258
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
1259
+ def relative_url_root; end
1260
+
1261
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
1262
+ def relative_url_root=(value); end
1263
+
1264
+ # source://activesupport-7.0.3.1/lib/active_support/rescuable.rb:13
1265
+ def rescue_handlers; end
1266
+
1267
+ # source://activesupport-7.0.3.1/lib/active_support/rescuable.rb:13
1268
+ def rescue_handlers=(value); end
1269
+
1270
+ # source://activesupport-7.0.3.1/lib/active_support/rescuable.rb:13
1271
+ def rescue_handlers?; end
1272
+
1273
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1274
+ def sendmail_settings; end
1275
+
1276
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1277
+ def sendmail_settings=(value); end
1278
+
1279
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1280
+ def sendmail_settings?; end
1281
+
1282
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:22
1283
+ def show_previews; end
1284
+
1285
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:22
1286
+ def show_previews=(val); end
1287
+
1288
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1289
+ def smtp_settings; end
1290
+
1291
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1292
+ def smtp_settings=(value); end
1293
+
1294
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1295
+ def smtp_settings?; end
1296
+
1297
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:113
1298
+ def stylesheets_dir; end
1299
+
1300
+ # source://activesupport-7.0.3.1/lib/active_support/configurable.rb:114
1301
+ def stylesheets_dir=(value); end
1302
+
1303
+ # Emails do not support relative path links.
1304
+ #
1305
+ # @return [Boolean]
1306
+ #
1307
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:931
1308
+ def supports_path?; end
1309
+
1310
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1311
+ def test_settings; end
1312
+
1313
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1314
+ def test_settings=(value); end
1315
+
1316
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:51
1317
+ def test_settings?; end
1318
+
1319
+ # Unregister a previously registered Interceptor.
1320
+ # Either a class, string, or symbol can be passed in as the Interceptor.
1321
+ # If a string or symbol is passed in it will be camelized and constantized.
1322
+ #
1323
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:542
1324
+ def unregister_interceptor(interceptor); end
1325
+
1326
+ # Unregister one or more previously registered Interceptors.
1327
+ #
1328
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:514
1329
+ def unregister_interceptors(*interceptors); end
1330
+
1331
+ # Unregister a previously registered Observer.
1332
+ # Either a class, string, or symbol can be passed in as the Observer.
1333
+ # If a string or symbol is passed in it will be camelized and constantized.
1334
+ #
1335
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:528
1336
+ def unregister_observer(observer); end
1337
+
1338
+ # Unregister one or more previously registered Observers.
1339
+ #
1340
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:504
1341
+ def unregister_observers(*observers); end
1342
+
1343
+ private
1344
+
1345
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:616
1346
+ def method_missing(method_name, *args); end
1347
+
1348
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:546
1349
+ def observer_class_for(value); end
1350
+
1351
+ # @return [Boolean]
1352
+ #
1353
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:625
1354
+ def respond_to_missing?(method, include_all = T.unsafe(nil)); end
1355
+
1356
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:603
1357
+ def set_payload_for_mail(payload, mail); end
1358
+ end
1359
+ end
1360
+
1361
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:0
1362
+ module ActionMailer::Base::HelperMethods
1363
+ include ::ActionMailer::MailHelper
1364
+
1365
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching/fragments.rb:31
1366
+ def combined_fragment_cache_key(*args, &block); end
1367
+
1368
+ # source://actionpack-7.0.3.1/lib/abstract_controller/caching.rb:43
1369
+ def view_cache_dependencies(*args, &block); end
1370
+ end
1371
+
1372
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:757
1373
+ class ActionMailer::Base::LateAttachmentsProxy < ::SimpleDelegator
1374
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:759
1375
+ def []=(_name, _content); end
1376
+
1377
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:758
1378
+ def inline; end
1379
+
1380
+ private
1381
+
1382
+ # @raise [RuntimeError]
1383
+ #
1384
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:762
1385
+ def _raise_error; end
1386
+ end
1387
+
1388
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:652
1389
+ class ActionMailer::Base::NullMail
1390
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:653
1391
+ def body; end
1392
+
1393
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:654
1394
+ def header; end
1395
+
1396
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:660
1397
+ def method_missing(*args); end
1398
+
1399
+ # @return [Boolean]
1400
+ #
1401
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:656
1402
+ def respond_to?(string, include_all = T.unsafe(nil)); end
1403
+ end
1404
+
1405
+ # source://actionmailer-7.0.3.1/lib/action_mailer/base.rb:485
1406
+ ActionMailer::Base::PROTECTED_IVARS = T.let(T.unsafe(nil), Array)
1407
+
1408
+ # source://actionmailer-7.0.3.1/lib/action_mailer/collector.rb:8
1409
+ class ActionMailer::Collector
1410
+ include ::AbstractController::Collector
1411
+
1412
+ # @return [Collector] a new instance of Collector
1413
+ #
1414
+ # source://actionmailer-7.0.3.1/lib/action_mailer/collector.rb:12
1415
+ def initialize(context, &block); end
1416
+
1417
+ # @raise [ArgumentError]
1418
+ #
1419
+ # source://actionmailer-7.0.3.1/lib/action_mailer/collector.rb:18
1420
+ def all(*args, &block); end
1421
+
1422
+ # @raise [ArgumentError]
1423
+ #
1424
+ # source://actionmailer-7.0.3.1/lib/action_mailer/collector.rb:18
1425
+ def any(*args, &block); end
1426
+
1427
+ # source://actionmailer-7.0.3.1/lib/action_mailer/collector.rb:25
1428
+ def custom(mime, options = T.unsafe(nil)); end
1429
+
1430
+ # Returns the value of attribute responses.
1431
+ #
1432
+ # source://actionmailer-7.0.3.1/lib/action_mailer/collector.rb:10
1433
+ def responses; end
1434
+ end
1435
+
1436
+ # This module handles everything related to mail delivery, from registering
1437
+ # new delivery methods to configuring the mail object to be sent.
1438
+ #
1439
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:8
1440
+ module ActionMailer::DeliveryMethods
1441
+ extend ::ActiveSupport::Concern
1442
+ include GeneratedInstanceMethods
1443
+
1444
+ mixes_in_class_methods GeneratedClassMethods
1445
+ mixes_in_class_methods ::ActionMailer::DeliveryMethods::ClassMethods
1446
+
1447
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:78
1448
+ def wrap_delivery_behavior!(*args); end
1449
+
1450
+ module GeneratedClassMethods
1451
+ def delivery_method; end
1452
+ def delivery_method=(value); end
1453
+ def delivery_method?; end
1454
+ def delivery_methods; end
1455
+ def delivery_methods=(value); end
1456
+ def delivery_methods?; end
1457
+ def file_settings; end
1458
+ def file_settings=(value); end
1459
+ def file_settings?; end
1460
+ def sendmail_settings; end
1461
+ def sendmail_settings=(value); end
1462
+ def sendmail_settings?; end
1463
+ def smtp_settings; end
1464
+ def smtp_settings=(value); end
1465
+ def smtp_settings?; end
1466
+ def test_settings; end
1467
+ def test_settings=(value); end
1468
+ def test_settings?; end
1469
+ end
1470
+
1471
+ module GeneratedInstanceMethods
1472
+ def delivery_method; end
1473
+ def delivery_method=(value); end
1474
+ def delivery_method?; end
1475
+ def delivery_methods; end
1476
+ def delivery_methods=(value); end
1477
+ def delivery_methods?; end
1478
+ def file_settings; end
1479
+ def file_settings=(value); end
1480
+ def file_settings?; end
1481
+ def sendmail_settings; end
1482
+ def sendmail_settings=(value); end
1483
+ def sendmail_settings?; end
1484
+ def smtp_settings; end
1485
+ def smtp_settings=(value); end
1486
+ def smtp_settings?; end
1487
+ def test_settings; end
1488
+ def test_settings=(value); end
1489
+ def test_settings?; end
1490
+ end
1491
+ end
1492
+
1493
+ # Helpers for creating and wrapping delivery behavior, used by DeliveryMethods.
1494
+ #
1495
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:40
1496
+ module ActionMailer::DeliveryMethods::ClassMethods
1497
+ # Adds a new delivery method through the given class using the given
1498
+ # symbol as alias and the default options supplied.
1499
+ #
1500
+ # add_delivery_method :sendmail, Mail::Sendmail,
1501
+ # location: '/usr/sbin/sendmail',
1502
+ # arguments: '-i'
1503
+ #
1504
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:50
1505
+ def add_delivery_method(symbol, klass, default_options = T.unsafe(nil)); end
1506
+
1507
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:42
1508
+ def deliveries(*_arg0, &_arg1); end
1509
+
1510
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:42
1511
+ def deliveries=(arg); end
1512
+
1513
+ # source://actionmailer-7.0.3.1/lib/action_mailer/delivery_methods.rb:56
1514
+ def wrap_delivery_behavior(mail, method = T.unsafe(nil), options = T.unsafe(nil)); end
1515
+ end
1516
+
1517
+ # Implements a mailer preview interceptor that converts image tag src attributes
1518
+ # that use inline cid: style URLs to data: style URLs so that they are visible
1519
+ # when previewing an HTML email in a web browser.
1520
+ #
1521
+ # This interceptor is enabled by default. To disable it, delete it from the
1522
+ # <tt>ActionMailer::Base.preview_interceptors</tt> array:
1523
+ #
1524
+ # ActionMailer::Base.preview_interceptors.delete(ActionMailer::InlinePreviewInterceptor)
1525
+ #
1526
+ # source://actionmailer-7.0.3.1/lib/action_mailer/inline_preview_interceptor.rb:15
1527
+ class ActionMailer::InlinePreviewInterceptor
1528
+ include ::Base64
1529
+
1530
+ # @return [InlinePreviewInterceptor] a new instance of InlinePreviewInterceptor
1531
+ #
1532
+ # source://actionmailer-7.0.3.1/lib/action_mailer/inline_preview_interceptor.rb:24
1533
+ def initialize(message); end
1534
+
1535
+ # source://actionmailer-7.0.3.1/lib/action_mailer/inline_preview_interceptor.rb:28
1536
+ def transform!; end
1537
+
1538
+ private
1539
+
1540
+ # source://actionmailer-7.0.3.1/lib/action_mailer/inline_preview_interceptor.rb:49
1541
+ def data_url(part); end
1542
+
1543
+ # source://actionmailer-7.0.3.1/lib/action_mailer/inline_preview_interceptor.rb:53
1544
+ def find_part(cid); end
1545
+
1546
+ # source://actionmailer-7.0.3.1/lib/action_mailer/inline_preview_interceptor.rb:45
1547
+ def html_part; end
1548
+
1549
+ # Returns the value of attribute message.
1550
+ #
1551
+ # source://actionmailer-7.0.3.1/lib/action_mailer/inline_preview_interceptor.rb:43
1552
+ def message; end
1553
+
1554
+ class << self
1555
+ # source://actionmailer-7.0.3.1/lib/action_mailer/inline_preview_interceptor.rb:20
1556
+ def previewing_email(message); end
1557
+ end
1558
+ end
1559
+
1560
+ # source://actionmailer-7.0.3.1/lib/action_mailer/inline_preview_interceptor.rb:16
1561
+ ActionMailer::InlinePreviewInterceptor::PATTERN = T.let(T.unsafe(nil), Regexp)
1562
+
1563
+ # Implements the ActiveSupport::LogSubscriber for logging notifications when
1564
+ # email is delivered or received.
1565
+ #
1566
+ # source://actionmailer-7.0.3.1/lib/action_mailer/log_subscriber.rb:9
1567
+ class ActionMailer::LogSubscriber < ::ActiveSupport::LogSubscriber
1568
+ # An email was delivered.
1569
+ #
1570
+ # source://actionmailer-7.0.3.1/lib/action_mailer/log_subscriber.rb:10
1571
+ def deliver(event); end
1572
+
1573
+ # Use the logger configured for ActionMailer::Base.
1574
+ #
1575
+ # source://actionmailer-7.0.3.1/lib/action_mailer/log_subscriber.rb:33
1576
+ def logger; end
1577
+
1578
+ # An email was generated.
1579
+ #
1580
+ # source://actionmailer-7.0.3.1/lib/action_mailer/log_subscriber.rb:24
1581
+ def process(event); end
1582
+ end
1583
+
1584
+ # The <tt>ActionMailer::MailDeliveryJob</tt> class is used when you
1585
+ # want to send emails outside of the request-response cycle. It supports
1586
+ # sending either parameterized or normal mail.
1587
+ #
1588
+ # Exceptions are rescued and handled by the mailer class.
1589
+ #
1590
+ # source://actionmailer-7.0.3.1/lib/action_mailer/mail_delivery_job.rb:11
1591
+ class ActionMailer::MailDeliveryJob < ::ActiveJob::Base
1592
+ # source://actionmailer-7.0.3.1/lib/action_mailer/mail_delivery_job.rb:16
1593
+ def perform(mailer, mail_method, delivery_method, args:, kwargs: T.unsafe(nil), params: T.unsafe(nil)); end
1594
+
1595
+ private
1596
+
1597
+ # source://actionmailer-7.0.3.1/lib/action_mailer/mail_delivery_job.rb:35
1598
+ def handle_exception_with_mailer_class(exception); end
1599
+
1600
+ # "Deserialize" the mailer class name by hand in case another argument
1601
+ # (like a Global ID reference) raised DeserializationError.
1602
+ #
1603
+ # source://actionmailer-7.0.3.1/lib/action_mailer/mail_delivery_job.rb:29
1604
+ def mailer_class; end
1605
+
1606
+ class << self
1607
+ # source://activejob-7.0.3.1/lib/active_job/queue_name.rb:56
1608
+ def queue_name; end
1609
+
1610
+ # source://activesupport-7.0.3.1/lib/active_support/rescuable.rb:13
1611
+ def rescue_handlers; end
1612
+ end
1613
+ end
1614
+
1615
+ # Provides helper methods for ActionMailer::Base that can be used for easily
1616
+ # formatting messages, accessing mailer or message instances, and the
1617
+ # attachments list.
1618
+ #
1619
+ # source://actionmailer-7.0.3.1/lib/action_mailer/mail_helper.rb:7
1620
+ module ActionMailer::MailHelper
1621
+ # Access the message attachments list.
1622
+ #
1623
+ # source://actionmailer-7.0.3.1/lib/action_mailer/mail_helper.rb:43
1624
+ def attachments; end
1625
+
1626
+ # Take the text and format it, indented two spaces for each line, and
1627
+ # wrapped at 72 columns:
1628
+ #
1629
+ # text = <<-TEXT
1630
+ # This is
1631
+ # the paragraph.
1632
+ #
1633
+ # * item1 * item2
1634
+ # TEXT
1635
+ #
1636
+ # block_format text
1637
+ # # => " This is the paragraph.\n\n * item1\n * item2\n"
1638
+ #
1639
+ # source://actionmailer-7.0.3.1/lib/action_mailer/mail_helper.rb:20
1640
+ def block_format(text); end
1641
+
1642
+ # Returns +text+ wrapped at +len+ columns and indented +indent+ spaces.
1643
+ # By default column length +len+ equals 72 characters and indent
1644
+ # +indent+ equal two spaces.
1645
+ #
1646
+ # my_text = 'Here is a sample text with more than 40 characters'
1647
+ #
1648
+ # format_paragraph(my_text, 25, 4)
1649
+ # # => " Here is a sample text with\n more than 40 characters"
1650
+ #
1651
+ # source://actionmailer-7.0.3.1/lib/action_mailer/mail_helper.rb:55
1652
+ def format_paragraph(text, len = T.unsafe(nil), indent = T.unsafe(nil)); end
1653
+
1654
+ # Access the mailer instance.
1655
+ #
1656
+ # source://actionmailer-7.0.3.1/lib/action_mailer/mail_helper.rb:33
1657
+ def mailer; end
1658
+
1659
+ # Access the message instance.
1660
+ #
1661
+ # source://actionmailer-7.0.3.1/lib/action_mailer/mail_helper.rb:38
1662
+ def message; end
1663
+ end
1664
+
1665
+ # The <tt>ActionMailer::MessageDelivery</tt> class is used by
1666
+ # ActionMailer::Base when creating a new mailer.
1667
+ # <tt>MessageDelivery</tt> is a wrapper (+Delegator+ subclass) around a lazy
1668
+ # created <tt>Mail::Message</tt>. You can get direct access to the
1669
+ # <tt>Mail::Message</tt>, deliver the email or schedule the email to be sent
1670
+ # through Active Job.
1671
+ #
1672
+ # Notifier.welcome(User.first) # an ActionMailer::MessageDelivery object
1673
+ # Notifier.welcome(User.first).deliver_now # sends the email
1674
+ # Notifier.welcome(User.first).deliver_later # enqueue email delivery as a job through Active Job
1675
+ # Notifier.welcome(User.first).message # a Mail::Message object
1676
+ #
1677
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:17
1678
+ class ActionMailer::MessageDelivery
1679
+ # @return [MessageDelivery] a new instance of MessageDelivery
1680
+ #
1681
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:18
1682
+ def initialize(mailer_class, action, *args); end
1683
+
1684
+ # Method calls are delegated to the Mail::Message that's ready to deliver.
1685
+ #
1686
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:29
1687
+ def __getobj__; end
1688
+
1689
+ # Unused except for delegator internals (dup, marshalling).
1690
+ #
1691
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:34
1692
+ def __setobj__(mail_message); end
1693
+
1694
+ # Enqueues the email to be delivered through Active Job. When the
1695
+ # job runs it will send the email using +deliver_now+.
1696
+ #
1697
+ # Notifier.welcome(User.first).deliver_later
1698
+ # Notifier.welcome(User.first).deliver_later(wait: 1.hour)
1699
+ # Notifier.welcome(User.first).deliver_later(wait_until: 10.hours.from_now)
1700
+ # Notifier.welcome(User.first).deliver_later(priority: 10)
1701
+ #
1702
+ # Options:
1703
+ #
1704
+ # * <tt>:wait</tt> - Enqueue the email to be delivered with a delay.
1705
+ # * <tt>:wait_until</tt> - Enqueue the email to be delivered at (after) a specific date / time.
1706
+ # * <tt>:queue</tt> - Enqueue the email on the specified queue.
1707
+ # * <tt>:priority</tt> - Enqueues the email with the specified priority
1708
+ #
1709
+ # By default, the email will be enqueued using <tt>ActionMailer::MailDeliveryJob</tt>. Each
1710
+ # ActionMailer::Base class can specify the job to use by setting the class variable
1711
+ # +delivery_job+.
1712
+ #
1713
+ # class AccountRegistrationMailer < ApplicationMailer
1714
+ # self.delivery_job = RegistrationDeliveryJob
1715
+ # end
1716
+ #
1717
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:98
1718
+ def deliver_later(options = T.unsafe(nil)); end
1719
+
1720
+ # Enqueues the email to be delivered through Active Job. When the
1721
+ # job runs it will send the email using +deliver_now!+. That means
1722
+ # that the message will be sent bypassing checking +perform_deliveries+
1723
+ # and +raise_delivery_errors+, so use with caution.
1724
+ #
1725
+ # Notifier.welcome(User.first).deliver_later!
1726
+ # Notifier.welcome(User.first).deliver_later!(wait: 1.hour)
1727
+ # Notifier.welcome(User.first).deliver_later!(wait_until: 10.hours.from_now)
1728
+ # Notifier.welcome(User.first).deliver_later!(priority: 10)
1729
+ #
1730
+ # Options:
1731
+ #
1732
+ # * <tt>:wait</tt> - Enqueue the email to be delivered with a delay
1733
+ # * <tt>:wait_until</tt> - Enqueue the email to be delivered at (after) a specific date / time
1734
+ # * <tt>:queue</tt> - Enqueue the email on the specified queue
1735
+ # * <tt>:priority</tt> - Enqueues the email with the specified priority
1736
+ #
1737
+ # By default, the email will be enqueued using <tt>ActionMailer::MailDeliveryJob</tt>. Each
1738
+ # ActionMailer::Base class can specify the job to use by setting the class variable
1739
+ # +delivery_job+.
1740
+ #
1741
+ # class AccountRegistrationMailer < ApplicationMailer
1742
+ # self.delivery_job = RegistrationDeliveryJob
1743
+ # end
1744
+ #
1745
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:72
1746
+ def deliver_later!(options = T.unsafe(nil)); end
1747
+
1748
+ # Delivers an email:
1749
+ #
1750
+ # Notifier.welcome(User.first).deliver_now
1751
+ #
1752
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:117
1753
+ def deliver_now; end
1754
+
1755
+ # Delivers an email without checking +perform_deliveries+ and +raise_delivery_errors+,
1756
+ # so use with caution.
1757
+ #
1758
+ # Notifier.welcome(User.first).deliver_now!
1759
+ #
1760
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:107
1761
+ def deliver_now!; end
1762
+
1763
+ # Returns the resulting Mail::Message
1764
+ #
1765
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:39
1766
+ def message; end
1767
+
1768
+ # Was the delegate loaded, causing the mailer action to be processed?
1769
+ #
1770
+ # @return [Boolean]
1771
+ #
1772
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:44
1773
+ def processed?; end
1774
+
1775
+ private
1776
+
1777
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:132
1778
+ def enqueue_delivery(delivery_method, options = T.unsafe(nil)); end
1779
+
1780
+ # Returns the processed Mailer instance. We keep this instance
1781
+ # on hand so we can delegate exception handling to it.
1782
+ #
1783
+ # source://actionmailer-7.0.3.1/lib/action_mailer/message_delivery.rb:126
1784
+ def processed_mailer; end
1785
+ end
1786
+
1787
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:7
1788
+ class ActionMailer::NonInferrableMailerError < ::StandardError
1789
+ # @return [NonInferrableMailerError] a new instance of NonInferrableMailerError
1790
+ #
1791
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:8
1792
+ def initialize(name); end
1793
+ end
1794
+
1795
+ # Provides the option to parameterize mailers in order to share instance variable
1796
+ # setup, processing, and common headers.
1797
+ #
1798
+ # Consider this example that does not use parameterization:
1799
+ #
1800
+ # class InvitationsMailer < ApplicationMailer
1801
+ # def account_invitation(inviter, invitee)
1802
+ # @account = inviter.account
1803
+ # @inviter = inviter
1804
+ # @invitee = invitee
1805
+ #
1806
+ # subject = "#{@inviter.name} invited you to their Basecamp (#{@account.name})"
1807
+ #
1808
+ # mail \
1809
+ # subject: subject,
1810
+ # to: invitee.email_address,
1811
+ # from: common_address(inviter),
1812
+ # reply_to: inviter.email_address_with_name
1813
+ # end
1814
+ #
1815
+ # def project_invitation(project, inviter, invitee)
1816
+ # @account = inviter.account
1817
+ # @project = project
1818
+ # @inviter = inviter
1819
+ # @invitee = invitee
1820
+ # @summarizer = ProjectInvitationSummarizer.new(@project.bucket)
1821
+ #
1822
+ # subject = "#{@inviter.name.familiar} added you to a project in Basecamp (#{@account.name})"
1823
+ #
1824
+ # mail \
1825
+ # subject: subject,
1826
+ # to: invitee.email_address,
1827
+ # from: common_address(inviter),
1828
+ # reply_to: inviter.email_address_with_name
1829
+ # end
1830
+ #
1831
+ # def bulk_project_invitation(projects, inviter, invitee)
1832
+ # @account = inviter.account
1833
+ # @projects = projects.sort_by(&:name)
1834
+ # @inviter = inviter
1835
+ # @invitee = invitee
1836
+ #
1837
+ # subject = "#{@inviter.name.familiar} added you to some new stuff in Basecamp (#{@account.name})"
1838
+ #
1839
+ # mail \
1840
+ # subject: subject,
1841
+ # to: invitee.email_address,
1842
+ # from: common_address(inviter),
1843
+ # reply_to: inviter.email_address_with_name
1844
+ # end
1845
+ # end
1846
+ #
1847
+ # InvitationsMailer.account_invitation(person_a, person_b).deliver_later
1848
+ #
1849
+ # Using parameterized mailers, this can be rewritten as:
1850
+ #
1851
+ # class InvitationsMailer < ApplicationMailer
1852
+ # before_action { @inviter, @invitee = params[:inviter], params[:invitee] }
1853
+ # before_action { @account = params[:inviter].account }
1854
+ #
1855
+ # default to: -> { @invitee.email_address },
1856
+ # from: -> { common_address(@inviter) },
1857
+ # reply_to: -> { @inviter.email_address_with_name }
1858
+ #
1859
+ # def account_invitation
1860
+ # mail subject: "#{@inviter.name} invited you to their Basecamp (#{@account.name})"
1861
+ # end
1862
+ #
1863
+ # def project_invitation
1864
+ # @project = params[:project]
1865
+ # @summarizer = ProjectInvitationSummarizer.new(@project.bucket)
1866
+ #
1867
+ # mail subject: "#{@inviter.name.familiar} added you to a project in Basecamp (#{@account.name})"
1868
+ # end
1869
+ #
1870
+ # def bulk_project_invitation
1871
+ # @projects = params[:projects].sort_by(&:name)
1872
+ #
1873
+ # mail subject: "#{@inviter.name.familiar} added you to some new stuff in Basecamp (#{@account.name})"
1874
+ # end
1875
+ # end
1876
+ #
1877
+ # InvitationsMailer.with(inviter: person_a, invitee: person_b).account_invitation.deliver_later
1878
+ #
1879
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:87
1880
+ module ActionMailer::Parameterized
1881
+ extend ::ActiveSupport::Concern
1882
+
1883
+ mixes_in_class_methods ::ActionMailer::Parameterized::ClassMethods
1884
+ end
1885
+
1886
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:94
1887
+ module ActionMailer::Parameterized::ClassMethods
1888
+ # Provide the parameters to the mailer in order to use them in the instance methods and callbacks.
1889
+ #
1890
+ # InvitationsMailer.with(inviter: person_a, invitee: person_b).account_invitation.deliver_later
1891
+ #
1892
+ # See Parameterized documentation for full example.
1893
+ #
1894
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:100
1895
+ def with(params); end
1896
+ end
1897
+
1898
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:105
1899
+ class ActionMailer::Parameterized::Mailer
1900
+ # @return [Mailer] a new instance of Mailer
1901
+ #
1902
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:106
1903
+ def initialize(mailer, params); end
1904
+
1905
+ private
1906
+
1907
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:111
1908
+ def method_missing(method_name, *args); end
1909
+
1910
+ # @return [Boolean]
1911
+ #
1912
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:120
1913
+ def respond_to_missing?(method, include_all = T.unsafe(nil)); end
1914
+ end
1915
+
1916
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:125
1917
+ class ActionMailer::Parameterized::MessageDelivery < ::ActionMailer::MessageDelivery
1918
+ # @return [MessageDelivery] a new instance of MessageDelivery
1919
+ #
1920
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:126
1921
+ def initialize(mailer_class, action, params, *args); end
1922
+
1923
+ private
1924
+
1925
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:140
1926
+ def enqueue_delivery(delivery_method, options = T.unsafe(nil)); end
1927
+
1928
+ # source://actionmailer-7.0.3.1/lib/action_mailer/parameterized.rb:133
1929
+ def processed_mailer; end
1930
+ end
1931
+
1932
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:69
1933
+ class ActionMailer::Preview
1934
+ extend ::ActiveSupport::DescendantsTracker
1935
+
1936
+ # @return [Preview] a new instance of Preview
1937
+ #
1938
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:74
1939
+ def initialize(params = T.unsafe(nil)); end
1940
+
1941
+ # Returns the value of attribute params.
1942
+ #
1943
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:72
1944
+ def params; end
1945
+
1946
+ class << self
1947
+ # Returns all mailer preview classes.
1948
+ #
1949
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:80
1950
+ def all; end
1951
+
1952
+ # Returns the mail object for the given email name. The registered preview
1953
+ # interceptors will be informed so that they can transform the message
1954
+ # as they would if the mail was actually being delivered.
1955
+ #
1956
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:88
1957
+ def call(email, params = T.unsafe(nil)); end
1958
+
1959
+ # Returns +true+ if the email exists.
1960
+ #
1961
+ # @return [Boolean]
1962
+ #
1963
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:101
1964
+ def email_exists?(email); end
1965
+
1966
+ # Returns all of the available email previews.
1967
+ #
1968
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:96
1969
+ def emails; end
1970
+
1971
+ # Returns +true+ if the preview exists.
1972
+ #
1973
+ # @return [Boolean]
1974
+ #
1975
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:106
1976
+ def exists?(preview); end
1977
+
1978
+ # Find a mailer preview by its underscored class name.
1979
+ #
1980
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:111
1981
+ def find(preview); end
1982
+
1983
+ # Returns the underscored name of the mailer preview without the suffix.
1984
+ #
1985
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:116
1986
+ def preview_name; end
1987
+
1988
+ private
1989
+
1990
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:135
1991
+ def inform_preview_interceptors(message); end
1992
+
1993
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:121
1994
+ def load_previews; end
1995
+
1996
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:127
1997
+ def preview_path; end
1998
+
1999
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:131
2000
+ def show_previews; end
2001
+ end
2002
+ end
2003
+
2004
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:6
2005
+ module ActionMailer::Previews
2006
+ extend ::ActiveSupport::Concern
2007
+
2008
+ mixes_in_class_methods ::ActionMailer::Previews::ClassMethods
2009
+ end
2010
+
2011
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:28
2012
+ module ActionMailer::Previews::ClassMethods
2013
+ # Register an Interceptor which will be called before mail is previewed.
2014
+ # Either a class or a string can be passed in as the Interceptor. If a
2015
+ # string is passed in it will be constantized.
2016
+ #
2017
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:42
2018
+ def register_preview_interceptor(interceptor); end
2019
+
2020
+ # Register one or more Interceptors which will be called before mail is previewed.
2021
+ #
2022
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:30
2023
+ def register_preview_interceptors(*interceptors); end
2024
+
2025
+ # Unregister a previously registered Interceptor.
2026
+ # Either a class or a string can be passed in as the Interceptor. If a
2027
+ # string is passed in it will be constantized.
2028
+ #
2029
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:53
2030
+ def unregister_preview_interceptor(interceptor); end
2031
+
2032
+ # Unregister one or more previously registered Interceptors.
2033
+ #
2034
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:35
2035
+ def unregister_preview_interceptors(*interceptors); end
2036
+
2037
+ private
2038
+
2039
+ # source://actionmailer-7.0.3.1/lib/action_mailer/preview.rb:58
2040
+ def interceptor_class_for(interceptor); end
2041
+ end
2042
+
2043
+ # source://actionmailer-7.0.3.1/lib/action_mailer/railtie.rb:9
2044
+ class ActionMailer::Railtie < ::Rails::Railtie; end
2045
+
2046
+ # Provides +rescue_from+ for mailers. Wraps mailer action processing,
2047
+ # mail job processing, and mail delivery.
2048
+ #
2049
+ # source://actionmailer-7.0.3.1/lib/action_mailer/rescuable.rb:6
2050
+ module ActionMailer::Rescuable
2051
+ extend ::ActiveSupport::Concern
2052
+ include GeneratedInstanceMethods
2053
+ include ::ActiveSupport::Rescuable
2054
+
2055
+ mixes_in_class_methods GeneratedClassMethods
2056
+ mixes_in_class_methods ::ActiveSupport::Rescuable::ClassMethods
2057
+ mixes_in_class_methods ::ActionMailer::Rescuable::ClassMethods
2058
+
2059
+ # source://actionmailer-7.0.3.1/lib/action_mailer/rescuable.rb:16
2060
+ def handle_exceptions; end
2061
+
2062
+ private
2063
+
2064
+ # source://actionmailer-7.0.3.1/lib/action_mailer/rescuable.rb:23
2065
+ def process(*_arg0, &_arg1); end
2066
+
2067
+ module GeneratedClassMethods
2068
+ def rescue_handlers; end
2069
+ def rescue_handlers=(value); end
2070
+ def rescue_handlers?; end
2071
+ end
2072
+
2073
+ module GeneratedInstanceMethods
2074
+ def rescue_handlers; end
2075
+ def rescue_handlers=(value); end
2076
+ def rescue_handlers?; end
2077
+ end
2078
+ end
2079
+
2080
+ # source://actionmailer-7.0.3.1/lib/action_mailer/rescuable.rb:0
2081
+ module ActionMailer::Rescuable::ClassMethods
2082
+ # source://actionmailer-7.0.3.1/lib/action_mailer/rescuable.rb:11
2083
+ def handle_exception(exception); end
2084
+ end
2085
+
2086
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:15
2087
+ class ActionMailer::TestCase < ::ActiveSupport::TestCase
2088
+ include ::ActiveSupport::Testing::ConstantLookup
2089
+ include ::ActiveJob::TestHelper
2090
+ include ::ActionMailer::TestHelper
2091
+ include ::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable
2092
+ include ::Rails::Dom::Testing::Assertions::SelectorAssertions
2093
+ include ::Rails::Dom::Testing::Assertions::DomAssertions
2094
+ include ::ActionMailer::TestCase::Behavior
2095
+ extend ::ActiveSupport::Testing::ConstantLookup::ClassMethods
2096
+ extend ::ActionMailer::TestCase::Behavior::ClassMethods
2097
+
2098
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:41
2099
+ def _mailer_class; end
2100
+
2101
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:41
2102
+ def _mailer_class=(_arg0); end
2103
+
2104
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:41
2105
+ def _mailer_class?; end
2106
+
2107
+ class << self
2108
+ # source://activesupport-7.0.3.1/lib/active_support/callbacks.rb:68
2109
+ def __callbacks; end
2110
+
2111
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:41
2112
+ def _mailer_class; end
2113
+
2114
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:41
2115
+ def _mailer_class=(value); end
2116
+
2117
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:41
2118
+ def _mailer_class?; end
2119
+ end
2120
+ end
2121
+
2122
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:32
2123
+ module ActionMailer::TestCase::Behavior
2124
+ include ::ActiveSupport::Testing::Assertions
2125
+ include ::ActiveJob::TestHelper
2126
+ include ::ActionMailer::TestHelper
2127
+ include ::Rails::Dom::Testing::Assertions::SelectorAssertions::CountDescribable
2128
+ include ::Rails::Dom::Testing::Assertions::SelectorAssertions
2129
+ include ::Rails::Dom::Testing::Assertions::DomAssertions
2130
+ extend ::ActiveSupport::Concern
2131
+ include GeneratedInstanceMethods
2132
+ include ::ActiveSupport::Testing::ConstantLookup
2133
+
2134
+ mixes_in_class_methods GeneratedClassMethods
2135
+ mixes_in_class_methods ::ActiveSupport::Testing::ConstantLookup::ClassMethods
2136
+ mixes_in_class_methods ::ActionMailer::TestCase::Behavior::ClassMethods
2137
+
2138
+ private
2139
+
2140
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:106
2141
+ def charset; end
2142
+
2143
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:110
2144
+ def encode(subject); end
2145
+
2146
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:78
2147
+ def initialize_test_deliveries; end
2148
+
2149
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:114
2150
+ def read_fixture(action); end
2151
+
2152
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:95
2153
+ def restore_delivery_method; end
2154
+
2155
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:85
2156
+ def restore_test_deliveries; end
2157
+
2158
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:90
2159
+ def set_delivery_method(method); end
2160
+
2161
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:100
2162
+ def set_expected_mail; end
2163
+
2164
+ module GeneratedClassMethods
2165
+ def _mailer_class; end
2166
+ def _mailer_class=(value); end
2167
+ def _mailer_class?; end
2168
+ end
2169
+
2170
+ module GeneratedInstanceMethods
2171
+ def _mailer_class; end
2172
+ def _mailer_class=(value); end
2173
+ def _mailer_class?; end
2174
+ end
2175
+ end
2176
+
2177
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:48
2178
+ module ActionMailer::TestCase::Behavior::ClassMethods
2179
+ # @raise [NonInferrableMailerError]
2180
+ #
2181
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:68
2182
+ def determine_default_mailer(name); end
2183
+
2184
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:60
2185
+ def mailer_class; end
2186
+
2187
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:49
2188
+ def tests(mailer); end
2189
+ end
2190
+
2191
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:16
2192
+ module ActionMailer::TestCase::ClearTestDeliveries
2193
+ extend ::ActiveSupport::Concern
2194
+
2195
+ private
2196
+
2197
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_case.rb:25
2198
+ def clear_test_deliveries; end
2199
+ end
2200
+
2201
+ # Provides helper methods for testing Action Mailer, including #assert_emails
2202
+ # and #assert_no_emails.
2203
+ #
2204
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_helper.rb:8
2205
+ module ActionMailer::TestHelper
2206
+ include ::ActiveSupport::Testing::Assertions
2207
+ include ::ActiveJob::TestHelper
2208
+
2209
+ # Asserts that the number of emails sent matches the given number.
2210
+ #
2211
+ # def test_emails
2212
+ # assert_emails 0
2213
+ # ContactMailer.welcome.deliver_now
2214
+ # assert_emails 1
2215
+ # ContactMailer.welcome.deliver_now
2216
+ # assert_emails 2
2217
+ # end
2218
+ #
2219
+ # If a block is passed, that block should cause the specified number of
2220
+ # emails to be sent.
2221
+ #
2222
+ # def test_emails_again
2223
+ # assert_emails 1 do
2224
+ # ContactMailer.welcome.deliver_now
2225
+ # end
2226
+ #
2227
+ # assert_emails 2 do
2228
+ # ContactMailer.welcome.deliver_now
2229
+ # ContactMailer.welcome.deliver_later
2230
+ # end
2231
+ # end
2232
+ #
2233
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_helper.rb:34
2234
+ def assert_emails(number, &block); end
2235
+
2236
+ # Asserts that a specific email has been enqueued, optionally
2237
+ # matching arguments.
2238
+ #
2239
+ # def test_email
2240
+ # ContactMailer.welcome.deliver_later
2241
+ # assert_enqueued_email_with ContactMailer, :welcome
2242
+ # end
2243
+ #
2244
+ # def test_email_with_arguments
2245
+ # ContactMailer.welcome("Hello", "Goodbye").deliver_later
2246
+ # assert_enqueued_email_with ContactMailer, :welcome, args: ["Hello", "Goodbye"]
2247
+ # end
2248
+ #
2249
+ # If a block is passed, that block should cause the specified email
2250
+ # to be enqueued.
2251
+ #
2252
+ # def test_email_in_block
2253
+ # assert_enqueued_email_with ContactMailer, :welcome do
2254
+ # ContactMailer.welcome.deliver_later
2255
+ # end
2256
+ # end
2257
+ #
2258
+ # If +args+ is provided as a Hash, a parameterized email is matched.
2259
+ #
2260
+ # def test_parameterized_email
2261
+ # assert_enqueued_email_with ContactMailer, :welcome,
2262
+ # args: {email: 'user@example.com'} do
2263
+ # ContactMailer.with(email: 'user@example.com').welcome.deliver_later
2264
+ # end
2265
+ # end
2266
+ #
2267
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_helper.rb:126
2268
+ def assert_enqueued_email_with(mailer, method, args: T.unsafe(nil), queue: T.unsafe(nil), &block); end
2269
+
2270
+ # Asserts that the number of emails enqueued for later delivery matches
2271
+ # the given number.
2272
+ #
2273
+ # def test_emails
2274
+ # assert_enqueued_emails 0
2275
+ # ContactMailer.welcome.deliver_later
2276
+ # assert_enqueued_emails 1
2277
+ # ContactMailer.welcome.deliver_later
2278
+ # assert_enqueued_emails 2
2279
+ # end
2280
+ #
2281
+ # If a block is passed, that block should cause the specified number of
2282
+ # emails to be enqueued.
2283
+ #
2284
+ # def test_emails_again
2285
+ # assert_enqueued_emails 1 do
2286
+ # ContactMailer.welcome.deliver_later
2287
+ # end
2288
+ #
2289
+ # assert_enqueued_emails 2 do
2290
+ # ContactMailer.welcome.deliver_later
2291
+ # ContactMailer.welcome.deliver_later
2292
+ # end
2293
+ # end
2294
+ #
2295
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_helper.rb:92
2296
+ def assert_enqueued_emails(number, &block); end
2297
+
2298
+ # Asserts that no emails have been sent.
2299
+ #
2300
+ # def test_emails
2301
+ # assert_no_emails
2302
+ # ContactMailer.welcome.deliver_now
2303
+ # assert_emails 1
2304
+ # end
2305
+ #
2306
+ # If a block is passed, that block should not cause any emails to be sent.
2307
+ #
2308
+ # def test_emails_again
2309
+ # assert_no_emails do
2310
+ # # No emails should be sent from this block
2311
+ # end
2312
+ # end
2313
+ #
2314
+ # Note: This assertion is simply a shortcut for:
2315
+ #
2316
+ # assert_emails 0, &block
2317
+ #
2318
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_helper.rb:64
2319
+ def assert_no_emails(&block); end
2320
+
2321
+ # Asserts that no emails are enqueued for later delivery.
2322
+ #
2323
+ # def test_no_emails
2324
+ # assert_no_enqueued_emails
2325
+ # ContactMailer.welcome.deliver_later
2326
+ # assert_enqueued_emails 1
2327
+ # end
2328
+ #
2329
+ # If a block is provided, it should not cause any emails to be enqueued.
2330
+ #
2331
+ # def test_no_emails
2332
+ # assert_no_enqueued_emails do
2333
+ # # No emails should be enqueued from this block
2334
+ # end
2335
+ # end
2336
+ #
2337
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_helper.rb:150
2338
+ def assert_no_enqueued_emails(&block); end
2339
+
2340
+ private
2341
+
2342
+ # source://actionmailer-7.0.3.1/lib/action_mailer/test_helper.rb:155
2343
+ def delivery_job_filter(job); end
2344
+ end
2345
+
2346
+ # source://actionmailer-7.0.3.1/lib/action_mailer/gem_version.rb:9
2347
+ module ActionMailer::VERSION; end
2348
+
2349
+ # source://actionmailer-7.0.3.1/lib/action_mailer/gem_version.rb:10
2350
+ ActionMailer::VERSION::MAJOR = T.let(T.unsafe(nil), Integer)
2351
+
2352
+ # source://actionmailer-7.0.3.1/lib/action_mailer/gem_version.rb:11
2353
+ ActionMailer::VERSION::MINOR = T.let(T.unsafe(nil), Integer)
2354
+
2355
+ # source://actionmailer-7.0.3.1/lib/action_mailer/gem_version.rb:13
2356
+ ActionMailer::VERSION::PRE = T.let(T.unsafe(nil), String)
2357
+
2358
+ # source://actionmailer-7.0.3.1/lib/action_mailer/gem_version.rb:15
2359
+ ActionMailer::VERSION::STRING = T.let(T.unsafe(nil), String)
2360
+
2361
+ # source://actionmailer-7.0.3.1/lib/action_mailer/gem_version.rb:12
2362
+ ActionMailer::VERSION::TINY = T.let(T.unsafe(nil), Integer)