actionview 4.2.11.1 → 7.0.2.4

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of actionview might be problematic. Click here for more details.

Files changed (124) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +229 -215
  3. data/MIT-LICENSE +1 -1
  4. data/README.rdoc +9 -8
  5. data/lib/action_view/base.rb +116 -43
  6. data/lib/action_view/buffers.rb +20 -3
  7. data/lib/action_view/cache_expiry.rb +66 -0
  8. data/lib/action_view/context.rb +8 -12
  9. data/lib/action_view/dependency_tracker/erb_tracker.rb +154 -0
  10. data/lib/action_view/dependency_tracker/ripper_tracker.rb +59 -0
  11. data/lib/action_view/dependency_tracker.rb +21 -122
  12. data/lib/action_view/digestor.rb +92 -85
  13. data/lib/action_view/flows.rb +15 -16
  14. data/lib/action_view/gem_version.rb +6 -4
  15. data/lib/action_view/helpers/active_model_helper.rb +17 -12
  16. data/lib/action_view/helpers/asset_tag_helper.rb +356 -101
  17. data/lib/action_view/helpers/asset_url_helper.rb +180 -74
  18. data/lib/action_view/helpers/atom_feed_helper.rb +21 -19
  19. data/lib/action_view/helpers/cache_helper.rb +156 -43
  20. data/lib/action_view/helpers/capture_helper.rb +21 -14
  21. data/lib/action_view/helpers/controller_helper.rb +16 -5
  22. data/lib/action_view/helpers/csp_helper.rb +26 -0
  23. data/lib/action_view/helpers/csrf_helper.rb +8 -6
  24. data/lib/action_view/helpers/date_helper.rb +288 -132
  25. data/lib/action_view/helpers/debug_helper.rb +9 -6
  26. data/lib/action_view/helpers/form_helper.rb +956 -173
  27. data/lib/action_view/helpers/form_options_helper.rb +178 -97
  28. data/lib/action_view/helpers/form_tag_helper.rb +220 -101
  29. data/lib/action_view/helpers/javascript_helper.rb +33 -19
  30. data/lib/action_view/helpers/number_helper.rb +88 -63
  31. data/lib/action_view/helpers/output_safety_helper.rb +38 -6
  32. data/lib/action_view/helpers/rendering_helper.rb +21 -10
  33. data/lib/action_view/helpers/sanitize_helper.rb +31 -32
  34. data/lib/action_view/helpers/tag_helper.rb +332 -71
  35. data/lib/action_view/helpers/tags/base.rb +123 -99
  36. data/lib/action_view/helpers/tags/check_box.rb +21 -20
  37. data/lib/action_view/helpers/tags/checkable.rb +4 -2
  38. data/lib/action_view/helpers/tags/collection_check_boxes.rb +12 -34
  39. data/lib/action_view/helpers/tags/collection_helpers.rb +69 -36
  40. data/lib/action_view/helpers/tags/collection_radio_buttons.rb +6 -12
  41. data/lib/action_view/helpers/tags/collection_select.rb +5 -3
  42. data/lib/action_view/helpers/tags/color_field.rb +4 -3
  43. data/lib/action_view/helpers/tags/date_field.rb +3 -2
  44. data/lib/action_view/helpers/tags/date_select.rb +38 -37
  45. data/lib/action_view/helpers/tags/datetime_field.rb +4 -3
  46. data/lib/action_view/helpers/tags/datetime_local_field.rb +3 -2
  47. data/lib/action_view/helpers/tags/datetime_select.rb +2 -0
  48. data/lib/action_view/helpers/tags/email_field.rb +2 -0
  49. data/lib/action_view/helpers/tags/file_field.rb +18 -0
  50. data/lib/action_view/helpers/tags/grouped_collection_select.rb +4 -2
  51. data/lib/action_view/helpers/tags/hidden_field.rb +6 -0
  52. data/lib/action_view/helpers/tags/label.rb +7 -2
  53. data/lib/action_view/helpers/tags/month_field.rb +3 -2
  54. data/lib/action_view/helpers/tags/number_field.rb +2 -0
  55. data/lib/action_view/helpers/tags/password_field.rb +3 -1
  56. data/lib/action_view/helpers/tags/placeholderable.rb +3 -1
  57. data/lib/action_view/helpers/tags/radio_button.rb +7 -6
  58. data/lib/action_view/helpers/tags/range_field.rb +2 -0
  59. data/lib/action_view/helpers/tags/search_field.rb +14 -9
  60. data/lib/action_view/helpers/tags/select.rb +11 -10
  61. data/lib/action_view/helpers/tags/tel_field.rb +2 -0
  62. data/lib/action_view/helpers/tags/text_area.rb +4 -2
  63. data/lib/action_view/helpers/tags/text_field.rb +8 -8
  64. data/lib/action_view/helpers/tags/time_field.rb +12 -2
  65. data/lib/action_view/helpers/tags/time_select.rb +2 -0
  66. data/lib/action_view/helpers/tags/time_zone_select.rb +3 -1
  67. data/lib/action_view/helpers/tags/translator.rb +15 -16
  68. data/lib/action_view/helpers/tags/url_field.rb +2 -0
  69. data/lib/action_view/helpers/tags/week_field.rb +3 -2
  70. data/lib/action_view/helpers/tags/weekday_select.rb +28 -0
  71. data/lib/action_view/helpers/tags.rb +5 -2
  72. data/lib/action_view/helpers/text_helper.rb +80 -51
  73. data/lib/action_view/helpers/translation_helper.rb +120 -69
  74. data/lib/action_view/helpers/url_helper.rb +398 -171
  75. data/lib/action_view/helpers.rb +29 -27
  76. data/lib/action_view/layouts.rb +68 -63
  77. data/lib/action_view/log_subscriber.rb +77 -10
  78. data/lib/action_view/lookup_context.rb +137 -113
  79. data/lib/action_view/model_naming.rb +4 -2
  80. data/lib/action_view/path_set.rb +28 -32
  81. data/lib/action_view/railtie.rb +74 -13
  82. data/lib/action_view/record_identifier.rb +53 -26
  83. data/lib/action_view/render_parser.rb +188 -0
  84. data/lib/action_view/renderer/abstract_renderer.rb +152 -15
  85. data/lib/action_view/renderer/collection_renderer.rb +196 -0
  86. data/lib/action_view/renderer/object_renderer.rb +34 -0
  87. data/lib/action_view/renderer/partial_renderer/collection_caching.rb +102 -0
  88. data/lib/action_view/renderer/partial_renderer.rb +51 -333
  89. data/lib/action_view/renderer/renderer.rb +68 -11
  90. data/lib/action_view/renderer/streaming_template_renderer.rb +60 -56
  91. data/lib/action_view/renderer/template_renderer.rb +87 -74
  92. data/lib/action_view/rendering.rb +73 -47
  93. data/lib/action_view/ripper_ast_parser.rb +198 -0
  94. data/lib/action_view/routing_url_for.rb +35 -24
  95. data/lib/action_view/tasks/cache_digests.rake +25 -0
  96. data/lib/action_view/template/error.rb +151 -41
  97. data/lib/action_view/template/handlers/builder.rb +12 -13
  98. data/lib/action_view/template/handlers/erb/erubi.rb +89 -0
  99. data/lib/action_view/template/handlers/erb.rb +29 -89
  100. data/lib/action_view/template/handlers/html.rb +11 -0
  101. data/lib/action_view/template/handlers/raw.rb +4 -4
  102. data/lib/action_view/template/handlers.rb +14 -10
  103. data/lib/action_view/template/html.rb +12 -13
  104. data/lib/action_view/template/inline.rb +22 -0
  105. data/lib/action_view/template/raw_file.rb +25 -0
  106. data/lib/action_view/template/renderable.rb +24 -0
  107. data/lib/action_view/template/resolver.rb +139 -300
  108. data/lib/action_view/template/sources/file.rb +17 -0
  109. data/lib/action_view/template/sources.rb +13 -0
  110. data/lib/action_view/template/text.rb +10 -12
  111. data/lib/action_view/template/types.rb +28 -26
  112. data/lib/action_view/template.rb +123 -91
  113. data/lib/action_view/template_details.rb +66 -0
  114. data/lib/action_view/template_path.rb +64 -0
  115. data/lib/action_view/test_case.rb +70 -53
  116. data/lib/action_view/testing/resolvers.rb +25 -35
  117. data/lib/action_view/unbound_template.rb +57 -0
  118. data/lib/action_view/version.rb +3 -1
  119. data/lib/action_view/view_paths.rb +73 -58
  120. data/lib/action_view.rb +16 -11
  121. data/lib/assets/compiled/rails-ujs.js +746 -0
  122. metadata +52 -32
  123. data/lib/action_view/helpers/record_tag_helper.rb +0 -108
  124. data/lib/action_view/tasks/dependencies.rake +0 -23
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: actionview
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.11.1
4
+ version: 7.0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-03-11 00:00:00.000000000 Z
11
+ date: 2022-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 4.2.11.1
19
+ version: 7.0.2.4
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 4.2.11.1
26
+ version: 7.0.2.4
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: builder
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -39,87 +39,81 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '3.1'
41
41
  - !ruby/object:Gem::Dependency
42
- name: erubis
42
+ name: erubi
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 2.7.0
47
+ version: '1.4'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 2.7.0
54
+ version: '1.4'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rails-html-sanitizer
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '1.0'
61
+ version: '1.1'
62
62
  - - ">="
63
63
  - !ruby/object:Gem::Version
64
- version: 1.0.3
64
+ version: 1.2.0
65
65
  type: :runtime
66
66
  prerelease: false
67
67
  version_requirements: !ruby/object:Gem::Requirement
68
68
  requirements:
69
69
  - - "~>"
70
70
  - !ruby/object:Gem::Version
71
- version: '1.0'
71
+ version: '1.1'
72
72
  - - ">="
73
73
  - !ruby/object:Gem::Version
74
- version: 1.0.3
74
+ version: 1.2.0
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: rails-dom-testing
77
77
  requirement: !ruby/object:Gem::Requirement
78
78
  requirements:
79
79
  - - "~>"
80
80
  - !ruby/object:Gem::Version
81
- version: '1.0'
82
- - - ">="
83
- - !ruby/object:Gem::Version
84
- version: 1.0.5
81
+ version: '2.0'
85
82
  type: :runtime
86
83
  prerelease: false
87
84
  version_requirements: !ruby/object:Gem::Requirement
88
85
  requirements:
89
86
  - - "~>"
90
87
  - !ruby/object:Gem::Version
91
- version: '1.0'
92
- - - ">="
93
- - !ruby/object:Gem::Version
94
- version: 1.0.5
88
+ version: '2.0'
95
89
  - !ruby/object:Gem::Dependency
96
90
  name: actionpack
97
91
  requirement: !ruby/object:Gem::Requirement
98
92
  requirements:
99
93
  - - '='
100
94
  - !ruby/object:Gem::Version
101
- version: 4.2.11.1
95
+ version: 7.0.2.4
102
96
  type: :development
103
97
  prerelease: false
104
98
  version_requirements: !ruby/object:Gem::Requirement
105
99
  requirements:
106
100
  - - '='
107
101
  - !ruby/object:Gem::Version
108
- version: 4.2.11.1
102
+ version: 7.0.2.4
109
103
  - !ruby/object:Gem::Dependency
110
104
  name: activemodel
111
105
  requirement: !ruby/object:Gem::Requirement
112
106
  requirements:
113
107
  - - '='
114
108
  - !ruby/object:Gem::Version
115
- version: 4.2.11.1
109
+ version: 7.0.2.4
116
110
  type: :development
117
111
  prerelease: false
118
112
  version_requirements: !ruby/object:Gem::Requirement
119
113
  requirements:
120
114
  - - '='
121
115
  - !ruby/object:Gem::Version
122
- version: 4.2.11.1
116
+ version: 7.0.2.4
123
117
  description: Simple, battle-tested conventions and helpers for building web pages.
124
118
  email: david@loudthinking.com
125
119
  executables: []
@@ -132,8 +126,11 @@ files:
132
126
  - lib/action_view.rb
133
127
  - lib/action_view/base.rb
134
128
  - lib/action_view/buffers.rb
129
+ - lib/action_view/cache_expiry.rb
135
130
  - lib/action_view/context.rb
136
131
  - lib/action_view/dependency_tracker.rb
132
+ - lib/action_view/dependency_tracker/erb_tracker.rb
133
+ - lib/action_view/dependency_tracker/ripper_tracker.rb
137
134
  - lib/action_view/digestor.rb
138
135
  - lib/action_view/flows.rb
139
136
  - lib/action_view/gem_version.rb
@@ -145,6 +142,7 @@ files:
145
142
  - lib/action_view/helpers/cache_helper.rb
146
143
  - lib/action_view/helpers/capture_helper.rb
147
144
  - lib/action_view/helpers/controller_helper.rb
145
+ - lib/action_view/helpers/csp_helper.rb
148
146
  - lib/action_view/helpers/csrf_helper.rb
149
147
  - lib/action_view/helpers/date_helper.rb
150
148
  - lib/action_view/helpers/debug_helper.rb
@@ -154,7 +152,6 @@ files:
154
152
  - lib/action_view/helpers/javascript_helper.rb
155
153
  - lib/action_view/helpers/number_helper.rb
156
154
  - lib/action_view/helpers/output_safety_helper.rb
157
- - lib/action_view/helpers/record_tag_helper.rb
158
155
  - lib/action_view/helpers/rendering_helper.rb
159
156
  - lib/action_view/helpers/sanitize_helper.rb
160
157
  - lib/action_view/helpers/tag_helper.rb
@@ -194,6 +191,7 @@ files:
194
191
  - lib/action_view/helpers/tags/translator.rb
195
192
  - lib/action_view/helpers/tags/url_field.rb
196
193
  - lib/action_view/helpers/tags/week_field.rb
194
+ - lib/action_view/helpers/tags/weekday_select.rb
197
195
  - lib/action_view/helpers/text_helper.rb
198
196
  - lib/action_view/helpers/translation_helper.rb
199
197
  - lib/action_view/helpers/url_helper.rb
@@ -205,33 +203,55 @@ files:
205
203
  - lib/action_view/path_set.rb
206
204
  - lib/action_view/railtie.rb
207
205
  - lib/action_view/record_identifier.rb
206
+ - lib/action_view/render_parser.rb
208
207
  - lib/action_view/renderer/abstract_renderer.rb
208
+ - lib/action_view/renderer/collection_renderer.rb
209
+ - lib/action_view/renderer/object_renderer.rb
209
210
  - lib/action_view/renderer/partial_renderer.rb
211
+ - lib/action_view/renderer/partial_renderer/collection_caching.rb
210
212
  - lib/action_view/renderer/renderer.rb
211
213
  - lib/action_view/renderer/streaming_template_renderer.rb
212
214
  - lib/action_view/renderer/template_renderer.rb
213
215
  - lib/action_view/rendering.rb
216
+ - lib/action_view/ripper_ast_parser.rb
214
217
  - lib/action_view/routing_url_for.rb
215
- - lib/action_view/tasks/dependencies.rake
218
+ - lib/action_view/tasks/cache_digests.rake
216
219
  - lib/action_view/template.rb
217
220
  - lib/action_view/template/error.rb
218
221
  - lib/action_view/template/handlers.rb
219
222
  - lib/action_view/template/handlers/builder.rb
220
223
  - lib/action_view/template/handlers/erb.rb
224
+ - lib/action_view/template/handlers/erb/erubi.rb
225
+ - lib/action_view/template/handlers/html.rb
221
226
  - lib/action_view/template/handlers/raw.rb
222
227
  - lib/action_view/template/html.rb
228
+ - lib/action_view/template/inline.rb
229
+ - lib/action_view/template/raw_file.rb
230
+ - lib/action_view/template/renderable.rb
223
231
  - lib/action_view/template/resolver.rb
232
+ - lib/action_view/template/sources.rb
233
+ - lib/action_view/template/sources/file.rb
224
234
  - lib/action_view/template/text.rb
225
235
  - lib/action_view/template/types.rb
236
+ - lib/action_view/template_details.rb
237
+ - lib/action_view/template_path.rb
226
238
  - lib/action_view/test_case.rb
227
239
  - lib/action_view/testing/resolvers.rb
240
+ - lib/action_view/unbound_template.rb
228
241
  - lib/action_view/version.rb
229
242
  - lib/action_view/view_paths.rb
230
- homepage: http://www.rubyonrails.org
243
+ - lib/assets/compiled/rails-ujs.js
244
+ homepage: https://rubyonrails.org
231
245
  licenses:
232
246
  - MIT
233
- metadata: {}
234
- post_install_message:
247
+ metadata:
248
+ bug_tracker_uri: https://github.com/rails/rails/issues
249
+ changelog_uri: https://github.com/rails/rails/blob/v7.0.2.4/actionview/CHANGELOG.md
250
+ documentation_uri: https://api.rubyonrails.org/v7.0.2.4/
251
+ mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
252
+ source_code_uri: https://github.com/rails/rails/tree/v7.0.2.4/actionview
253
+ rubygems_mfa_required: 'true'
254
+ post_install_message:
235
255
  rdoc_options: []
236
256
  require_paths:
237
257
  - lib
@@ -239,7 +259,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
239
259
  requirements:
240
260
  - - ">="
241
261
  - !ruby/object:Gem::Version
242
- version: 1.9.3
262
+ version: 2.7.0
243
263
  required_rubygems_version: !ruby/object:Gem::Requirement
244
264
  requirements:
245
265
  - - ">="
@@ -247,8 +267,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
247
267
  version: '0'
248
268
  requirements:
249
269
  - none
250
- rubygems_version: 3.0.1
251
- signing_key:
270
+ rubygems_version: 3.1.6
271
+ signing_key:
252
272
  specification_version: 4
253
273
  summary: Rendering framework putting the V in MVC (part of Rails).
254
274
  test_files: []
@@ -1,108 +0,0 @@
1
- require 'action_view/record_identifier'
2
-
3
- module ActionView
4
- # = Action View Record Tag Helpers
5
- module Helpers
6
- module RecordTagHelper
7
- include ActionView::RecordIdentifier
8
-
9
- # Produces a wrapper DIV element with id and class parameters that
10
- # relate to the specified Active Record object. Usage example:
11
- #
12
- # <%= div_for(@person, class: "foo") do %>
13
- # <%= @person.name %>
14
- # <% end %>
15
- #
16
- # produces:
17
- #
18
- # <div id="person_123" class="person foo"> Joe Bloggs </div>
19
- #
20
- # You can also pass an array of Active Record objects, which will then
21
- # get iterated over and yield each record as an argument for the block.
22
- # For example:
23
- #
24
- # <%= div_for(@people, class: "foo") do |person| %>
25
- # <%= person.name %>
26
- # <% end %>
27
- #
28
- # produces:
29
- #
30
- # <div id="person_123" class="person foo"> Joe Bloggs </div>
31
- # <div id="person_124" class="person foo"> Jane Bloggs </div>
32
- #
33
- def div_for(record, *args, &block)
34
- content_tag_for(:div, record, *args, &block)
35
- end
36
-
37
- # content_tag_for creates an HTML element with id and class parameters
38
- # that relate to the specified Active Record object. For example:
39
- #
40
- # <%= content_tag_for(:tr, @person) do %>
41
- # <td><%= @person.first_name %></td>
42
- # <td><%= @person.last_name %></td>
43
- # <% end %>
44
- #
45
- # would produce the following HTML (assuming @person is an instance of
46
- # a Person object, with an id value of 123):
47
- #
48
- # <tr id="person_123" class="person">....</tr>
49
- #
50
- # If you require the HTML id attribute to have a prefix, you can specify it:
51
- #
52
- # <%= content_tag_for(:tr, @person, :foo) do %> ...
53
- #
54
- # produces:
55
- #
56
- # <tr id="foo_person_123" class="person">...
57
- #
58
- # You can also pass an array of objects which this method will loop through
59
- # and yield the current object to the supplied block, reducing the need for
60
- # having to iterate through the object (using <tt>each</tt>) beforehand.
61
- # For example (assuming @people is an array of Person objects):
62
- #
63
- # <%= content_tag_for(:tr, @people) do |person| %>
64
- # <td><%= person.first_name %></td>
65
- # <td><%= person.last_name %></td>
66
- # <% end %>
67
- #
68
- # produces:
69
- #
70
- # <tr id="person_123" class="person">...</tr>
71
- # <tr id="person_124" class="person">...</tr>
72
- #
73
- # content_tag_for also accepts a hash of options, which will be converted to
74
- # additional HTML attributes. If you specify a <tt>:class</tt> value, it will be combined
75
- # with the default class name for your object. For example:
76
- #
77
- # <%= content_tag_for(:li, @person, class: "bar") %>...
78
- #
79
- # produces:
80
- #
81
- # <li id="person_123" class="person bar">...
82
- #
83
- def content_tag_for(tag_name, single_or_multiple_records, prefix = nil, options = nil, &block)
84
- options, prefix = prefix, nil if prefix.is_a?(Hash)
85
-
86
- Array(single_or_multiple_records).map do |single_record|
87
- content_tag_for_single_record(tag_name, single_record, prefix, options, &block)
88
- end.join("\n").html_safe
89
- end
90
-
91
- private
92
-
93
- # Called by <tt>content_tag_for</tt> internally to render a content tag
94
- # for each record.
95
- def content_tag_for_single_record(tag_name, record, prefix, options, &block)
96
- options = options ? options.dup : {}
97
- options[:class] = [ dom_class(record, prefix), options[:class] ].compact
98
- options[:id] = dom_id(record, prefix)
99
-
100
- if block_given?
101
- content_tag(tag_name, capture(record, &block), options)
102
- else
103
- content_tag(tag_name, "", options)
104
- end
105
- end
106
- end
107
- end
108
- end
@@ -1,23 +0,0 @@
1
- namespace :cache_digests do
2
- desc 'Lookup nested dependencies for TEMPLATE (like messages/show or comments/_comment.html)'
3
- task :nested_dependencies => :environment do
4
- abort 'You must provide TEMPLATE for the task to run' unless ENV['TEMPLATE'].present?
5
- puts JSON.pretty_generate ActionView::Digestor.new(name: CacheDigests.template_name, finder: CacheDigests.finder).nested_dependencies
6
- end
7
-
8
- desc 'Lookup first-level dependencies for TEMPLATE (like messages/show or comments/_comment.html)'
9
- task :dependencies => :environment do
10
- abort 'You must provide TEMPLATE for the task to run' unless ENV['TEMPLATE'].present?
11
- puts JSON.pretty_generate ActionView::Digestor.new(name: CacheDigests.template_name, finder: CacheDigests.finder).dependencies
12
- end
13
-
14
- class CacheDigests
15
- def self.template_name
16
- ENV['TEMPLATE'].split('.', 2).first
17
- end
18
-
19
- def self.finder
20
- ApplicationController.new.lookup_context
21
- end
22
- end
23
- end