draper 4.0.4 → 4.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/README.md +3 -6
- data/lib/draper/collection_decorator.rb +0 -6
- data/lib/draper/compatibility/broadcastable.rb +24 -0
- data/lib/draper/compatibility/global_id.rb +9 -5
- data/lib/draper/decoratable.rb +5 -0
- data/lib/draper/decorator.rb +2 -18
- data/lib/draper/railtie.rb +6 -1
- data/lib/draper/version.rb +1 -1
- metadata +4 -232
- data/.github/PULL_REQUEST_TEMPLATE.md +0 -24
- data/.github/workflows/ci.yml +0 -71
- data/.gitignore +0 -18
- data/Gemfile +0 -46
- data/bin/bundle +0 -114
- data/bin/rake +0 -29
- data/draper.gemspec +0 -34
- data/spec/draper/collection_decorator_spec.rb +0 -291
- data/spec/draper/configuration_spec.rb +0 -49
- data/spec/draper/decoratable/equality_spec.rb +0 -10
- data/spec/draper/decoratable_spec.rb +0 -235
- data/spec/draper/decorated_association_spec.rb +0 -82
- data/spec/draper/decorates_assigned_spec.rb +0 -71
- data/spec/draper/decorator_spec.rb +0 -872
- data/spec/draper/draper_spec.rb +0 -25
- data/spec/draper/factory_spec.rb +0 -247
- data/spec/draper/finders_spec.rb +0 -166
- data/spec/draper/helper_proxy_spec.rb +0 -61
- data/spec/draper/lazy_helpers_spec.rb +0 -21
- data/spec/draper/query_methods/load_strategy_spec.rb +0 -26
- data/spec/draper/query_methods_spec.rb +0 -80
- data/spec/draper/undecorate_chain_spec.rb +0 -20
- data/spec/draper/undecorate_spec.rb +0 -19
- data/spec/draper/view_context/build_strategy_spec.rb +0 -115
- data/spec/draper/view_context_spec.rb +0 -182
- data/spec/draper/view_helpers_spec.rb +0 -8
- data/spec/dummy/.rspec +0 -1
- data/spec/dummy/Rakefile +0 -7
- data/spec/dummy/app/assets/config/manifest.js +0 -3
- data/spec/dummy/app/controllers/application_controller.rb +0 -2
- data/spec/dummy/app/controllers/base_controller.rb +0 -4
- data/spec/dummy/app/controllers/localized_urls.rb +0 -5
- data/spec/dummy/app/controllers/posts_controller.rb +0 -20
- data/spec/dummy/app/decorators/comment_decorator.rb +0 -13
- data/spec/dummy/app/decorators/mongoid_post_decorator.rb +0 -2
- data/spec/dummy/app/decorators/post_decorator.rb +0 -60
- data/spec/dummy/app/helpers/application_helper.rb +0 -5
- data/spec/dummy/app/jobs/publish_post_job.rb +0 -7
- data/spec/dummy/app/mailers/application_mailer.rb +0 -3
- data/spec/dummy/app/mailers/post_mailer.rb +0 -19
- data/spec/dummy/app/models/admin.rb +0 -3
- data/spec/dummy/app/models/application_record.rb +0 -3
- data/spec/dummy/app/models/comment.rb +0 -3
- data/spec/dummy/app/models/mongoid_post.rb +0 -3
- data/spec/dummy/app/models/post.rb +0 -7
- data/spec/dummy/app/models/user.rb +0 -3
- data/spec/dummy/app/views/layouts/application.html.erb +0 -11
- data/spec/dummy/app/views/post_mailer/decorated_email.html.erb +0 -1
- data/spec/dummy/app/views/posts/_post.html.erb +0 -42
- data/spec/dummy/app/views/posts/show.html.erb +0 -1
- data/spec/dummy/bin/rails +0 -4
- data/spec/dummy/config/application.rb +0 -39
- data/spec/dummy/config/boot.rb +0 -5
- data/spec/dummy/config/database.yml +0 -25
- data/spec/dummy/config/environment.rb +0 -5
- data/spec/dummy/config/environments/development.rb +0 -78
- data/spec/dummy/config/environments/production.rb +0 -102
- data/spec/dummy/config/environments/test.rb +0 -69
- data/spec/dummy/config/initializers/backtrace_silencers.rb +0 -7
- data/spec/dummy/config/initializers/draper.rb +0 -5
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +0 -4
- data/spec/dummy/config/initializers/inflections.rb +0 -15
- data/spec/dummy/config/initializers/mime_types.rb +0 -5
- data/spec/dummy/config/initializers/secret_token.rb +0 -8
- data/spec/dummy/config/initializers/session_store.rb +0 -8
- data/spec/dummy/config/locales/en.yml +0 -5
- data/spec/dummy/config/mongoid.yml +0 -142
- data/spec/dummy/config/routes.rb +0 -9
- data/spec/dummy/config/storage.yml +0 -7
- data/spec/dummy/config.ru +0 -4
- data/spec/dummy/db/migrate/20121019115657_create_posts.rb +0 -8
- data/spec/dummy/db/migrate/20240907041839_create_comments.rb +0 -9
- data/spec/dummy/db/schema.rb +0 -28
- data/spec/dummy/db/seeds.rb +0 -2
- data/spec/dummy/fast_spec/post_decorator_spec.rb +0 -37
- data/spec/dummy/lib/tasks/test.rake +0 -16
- data/spec/dummy/log/.gitkeep +0 -0
- data/spec/dummy/public/404.html +0 -26
- data/spec/dummy/public/422.html +0 -26
- data/spec/dummy/public/500.html +0 -25
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/dummy/script/rails +0 -6
- data/spec/dummy/spec/decorators/active_model_serializers_spec.rb +0 -12
- data/spec/dummy/spec/decorators/devise_spec.rb +0 -55
- data/spec/dummy/spec/decorators/helpers_spec.rb +0 -21
- data/spec/dummy/spec/decorators/post_decorator_spec.rb +0 -64
- data/spec/dummy/spec/decorators/spec_type_spec.rb +0 -7
- data/spec/dummy/spec/decorators/view_context_spec.rb +0 -22
- data/spec/dummy/spec/jobs/publish_post_job_spec.rb +0 -11
- data/spec/dummy/spec/mailers/post_mailer_spec.rb +0 -25
- data/spec/dummy/spec/models/application_spec.rb +0 -7
- data/spec/dummy/spec/models/mongoid_post_spec.rb +0 -8
- data/spec/dummy/spec/models/post_spec.rb +0 -51
- data/spec/dummy/spec/rails_helper.rb +0 -69
- data/spec/dummy/spec/shared_examples/decoratable.rb +0 -22
- data/spec/dummy/spec/spec_helper.rb +0 -93
- data/spec/dummy/test/decorators/minitest/devise_test.rb +0 -55
- data/spec/dummy/test/decorators/minitest/helpers_test.rb +0 -21
- data/spec/dummy/test/decorators/minitest/spec_type_test.rb +0 -52
- data/spec/dummy/test/decorators/minitest/view_context_test.rb +0 -24
- data/spec/dummy/test/decorators/test_unit/devise_test.rb +0 -55
- data/spec/dummy/test/decorators/test_unit/helpers_test.rb +0 -21
- data/spec/dummy/test/decorators/test_unit/view_context_test.rb +0 -24
- data/spec/dummy/test/minitest_helper.rb +0 -2
- data/spec/dummy/test/test_helper.rb +0 -3
- data/spec/generators/controller/controller_generator_spec.rb +0 -23
- data/spec/generators/decorator/decorator_generator_spec.rb +0 -93
- data/spec/generators/install/install_generator_spec.rb +0 -19
- data/spec/integration/integration_spec.rb +0 -70
- data/spec/performance/active_record.rb +0 -4
- data/spec/performance/benchmark.rb +0 -55
- data/spec/performance/decorators.rb +0 -45
- data/spec/performance/models.rb +0 -20
- data/spec/spec_helper.rb +0 -50
- data/spec/support/dummy_app.rb +0 -85
- data/spec/support/matchers/have_text.rb +0 -50
- data/spec/support/shared_examples/decoratable_equality.rb +0 -40
- data/spec/support/shared_examples/view_helpers.rb +0 -39
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 01d36de260431b65888e966e0ae86d336da78fb154c016e3e1871c07db8b1502
|
|
4
|
+
data.tar.gz: 773cef0abfa87de807d460dca408a86d1aa9f34e2e652486c6b242c9819ad178
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bc3e685a475539225c88e1d7cc44575ec5ce59872ddd1babede55eb9a07c323a2fa267e3d35d55d2c009a12948e83273150c132829597c8bc641c99c15445f7b
|
|
7
|
+
data.tar.gz: 37670673d87b1fea1b93bf435756d1ddaee6da897c1f3905c9aaec7c1b7dab6e02cb3ea9c52ab106a98b54c0e254c1f0e2d8fddaab0ba539a8a308b9cbdd58ea
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Draper Changelog
|
|
2
2
|
|
|
3
|
+
## 4.0.5 - 2025-11-12
|
|
4
|
+
|
|
5
|
+
### Fixes
|
|
6
|
+
* Remove unused files from package [#945](https://github.com/drapergem/draper/pull/945)
|
|
7
|
+
* Support Rails 8.1 [#949](https://github.com/drapergem/draper/pull/949)
|
|
8
|
+
|
|
3
9
|
## 4.0.4 - 2025-01-28
|
|
4
10
|
|
|
5
11
|
### Fixes
|
data/README.md
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
# Draper: View Models for Rails
|
|
2
2
|
|
|
3
|
-
[](https://codeclimate.com/github/drapergem/draper)
|
|
5
|
-
[](https://codeclimate.com/github/drapergem/draper/test_coverage)
|
|
3
|
+
[](https://github.com/drapergem/draper/actions?query=workflow%3Aci+branch%3Amaster)
|
|
6
4
|
[](http://inch-ci.org/github/drapergem/draper)
|
|
7
5
|
|
|
8
6
|
Draper adds an object-oriented layer of presentation logic to your Rails
|
|
@@ -672,9 +670,8 @@ you can include this module manually.
|
|
|
672
670
|
[Active Job](http://edgeguides.rubyonrails.org/active_job_basics.html) allows you to pass ActiveRecord
|
|
673
671
|
objects to background tasks directly and performs the necessary serialization and deserialization. In
|
|
674
672
|
order to do this, arguments to a background job must implement [Global ID](https://github.com/rails/globalid).
|
|
675
|
-
|
|
676
|
-
you can pass decorated objects to background jobs,
|
|
677
|
-
deserialized.
|
|
673
|
+
Decorators implement Global ID.
|
|
674
|
+
This means you can pass decorated objects to background jobs, and get them just as decorated when deserialized.
|
|
678
675
|
|
|
679
676
|
## Contributors
|
|
680
677
|
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Draper
|
|
4
|
+
module Compatibility
|
|
5
|
+
# It would look consistent to use decorated objects inside templates broadcasted with
|
|
6
|
+
# Turbo::Broadcastable.
|
|
7
|
+
#
|
|
8
|
+
# This compatibility patch fixes the issue by overriding the original defaults to decorate the
|
|
9
|
+
# object, that's passed to the partial in a local variable.
|
|
10
|
+
module Broadcastable
|
|
11
|
+
private
|
|
12
|
+
|
|
13
|
+
def broadcast_rendering_with_defaults(options)
|
|
14
|
+
return super unless decorator_class?
|
|
15
|
+
|
|
16
|
+
# Add the decorated current instance into the locals (see original method for details).
|
|
17
|
+
options[:locals] =
|
|
18
|
+
(options[:locals] || {}).reverse_merge!(model_name.element.to_sym => decorate)
|
|
19
|
+
|
|
20
|
+
super
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -5,17 +5,21 @@ module Draper
|
|
|
5
5
|
# and deserialization. In order to do this, arguments to a background job must implement
|
|
6
6
|
# [Global ID](https://github.com/rails/globalid).
|
|
7
7
|
#
|
|
8
|
-
# This compatibility patch implements Global ID for decorated objects by
|
|
9
|
-
#
|
|
10
|
-
#
|
|
11
|
-
#
|
|
8
|
+
# This compatibility patch implements Global ID for decorated objects by defining `.find(id)`
|
|
9
|
+
# class method that uses the original one and decorates the result.
|
|
10
|
+
# This means you can pass decorated objects to background jobs and they will be decorated when
|
|
11
|
+
# deserialized.
|
|
12
12
|
module GlobalID
|
|
13
13
|
extend ActiveSupport::Concern
|
|
14
14
|
|
|
15
15
|
included do
|
|
16
16
|
include ::GlobalID::Identification
|
|
17
|
+
end
|
|
17
18
|
|
|
18
|
-
|
|
19
|
+
class_methods do
|
|
20
|
+
def find(*args)
|
|
21
|
+
object_class.find(*args).decorate
|
|
22
|
+
end
|
|
19
23
|
end
|
|
20
24
|
end
|
|
21
25
|
end
|
data/lib/draper/decoratable.rb
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
require 'draper/decoratable/equality'
|
|
2
|
+
require 'draper/compatibility/broadcastable'
|
|
2
3
|
|
|
3
4
|
module Draper
|
|
4
5
|
# Provides shortcuts to decorate objects directly, so you can do
|
|
@@ -13,6 +14,10 @@ module Draper
|
|
|
13
14
|
|
|
14
15
|
autoload :CollectionProxy, 'draper/decoratable/collection_proxy'
|
|
15
16
|
|
|
17
|
+
included do
|
|
18
|
+
prepend Draper::Compatibility::Broadcastable if defined? Turbo::Broadcastable
|
|
19
|
+
end
|
|
20
|
+
|
|
16
21
|
# Decorates the object using the inferred {#decorator_class}.
|
|
17
22
|
# @param [Hash] options
|
|
18
23
|
# see {Decorator#initialize}
|
data/lib/draper/decorator.rb
CHANGED
|
@@ -33,7 +33,7 @@ module Draper
|
|
|
33
33
|
options.assert_valid_keys(:context)
|
|
34
34
|
@object = object
|
|
35
35
|
@context = options.fetch(:context, {})
|
|
36
|
-
handle_multiple_decoration(options) if object.
|
|
36
|
+
handle_multiple_decoration(options) if object.is_a?(Draper::Decorator)
|
|
37
37
|
end
|
|
38
38
|
|
|
39
39
|
class << self
|
|
@@ -185,22 +185,6 @@ module Draper
|
|
|
185
185
|
self.class.hash ^ object.hash
|
|
186
186
|
end
|
|
187
187
|
|
|
188
|
-
# Checks if `self.kind_of?(klass)` or `object.kind_of?(klass)`
|
|
189
|
-
#
|
|
190
|
-
# @param [Class] klass
|
|
191
|
-
def kind_of?(klass)
|
|
192
|
-
super || object.kind_of?(klass)
|
|
193
|
-
end
|
|
194
|
-
|
|
195
|
-
alias :is_a? :kind_of?
|
|
196
|
-
|
|
197
|
-
# Checks if `self.instance_of?(klass)` or `object.instance_of?(klass)`
|
|
198
|
-
#
|
|
199
|
-
# @param [Class] klass
|
|
200
|
-
def instance_of?(klass)
|
|
201
|
-
super || object.instance_of?(klass)
|
|
202
|
-
end
|
|
203
|
-
|
|
204
188
|
delegate :to_s
|
|
205
189
|
|
|
206
190
|
# In case object is nil
|
|
@@ -267,7 +251,7 @@ module Draper
|
|
|
267
251
|
if object.applied_decorators.last == self.class
|
|
268
252
|
@context = object.context unless options.has_key?(:context)
|
|
269
253
|
@object = object.object
|
|
270
|
-
|
|
254
|
+
elsif object.applied_decorators.include?(self.class)
|
|
271
255
|
warn "Reapplying #{self.class} decorator to target that is already decorated with it. Call stack:\n#{caller(1).join("\n")}"
|
|
272
256
|
end
|
|
273
257
|
end
|
data/lib/draper/railtie.rb
CHANGED
|
@@ -56,7 +56,12 @@ module Draper
|
|
|
56
56
|
Draper::ViewContext.build
|
|
57
57
|
end
|
|
58
58
|
|
|
59
|
-
console
|
|
59
|
+
console do
|
|
60
|
+
initialize_view_context
|
|
61
|
+
if ActiveSupport.gem_version >= Gem::Version.new('8.1.0')
|
|
62
|
+
ActiveSupport::ExecutionContext.nestable = false
|
|
63
|
+
end
|
|
64
|
+
end
|
|
60
65
|
|
|
61
66
|
runner { initialize_view_context }
|
|
62
67
|
|
data/lib/draper/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: draper
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.0.
|
|
4
|
+
version: 4.0.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jeff Casimir
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2025-
|
|
12
|
+
date: 2025-11-12 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: activesupport
|
|
@@ -217,26 +217,20 @@ extensions: []
|
|
|
217
217
|
extra_rdoc_files: []
|
|
218
218
|
files:
|
|
219
219
|
- ".codeclimate.yml"
|
|
220
|
-
- ".github/PULL_REQUEST_TEMPLATE.md"
|
|
221
|
-
- ".github/workflows/ci.yml"
|
|
222
|
-
- ".gitignore"
|
|
223
220
|
- ".rspec"
|
|
224
221
|
- ".rubocop.yml"
|
|
225
222
|
- ".yardopts"
|
|
226
223
|
- CHANGELOG.md
|
|
227
224
|
- CONTRIBUTING.md
|
|
228
|
-
- Gemfile
|
|
229
225
|
- Guardfile
|
|
230
226
|
- LICENSE
|
|
231
227
|
- README.md
|
|
232
228
|
- Rakefile
|
|
233
|
-
- bin/bundle
|
|
234
|
-
- bin/rake
|
|
235
|
-
- draper.gemspec
|
|
236
229
|
- lib/draper.rb
|
|
237
230
|
- lib/draper/automatic_delegation.rb
|
|
238
231
|
- lib/draper/collection_decorator.rb
|
|
239
232
|
- lib/draper/compatibility/api_only.rb
|
|
233
|
+
- lib/draper/compatibility/broadcastable.rb
|
|
240
234
|
- lib/draper/compatibility/global_id.rb
|
|
241
235
|
- lib/draper/configuration.rb
|
|
242
236
|
- lib/draper/decoratable.rb
|
|
@@ -276,117 +270,6 @@ files:
|
|
|
276
270
|
- lib/generators/rspec/templates/decorator_spec.rb
|
|
277
271
|
- lib/generators/test_unit/decorator_generator.rb
|
|
278
272
|
- lib/generators/test_unit/templates/decorator_test.rb
|
|
279
|
-
- spec/draper/collection_decorator_spec.rb
|
|
280
|
-
- spec/draper/configuration_spec.rb
|
|
281
|
-
- spec/draper/decoratable/equality_spec.rb
|
|
282
|
-
- spec/draper/decoratable_spec.rb
|
|
283
|
-
- spec/draper/decorated_association_spec.rb
|
|
284
|
-
- spec/draper/decorates_assigned_spec.rb
|
|
285
|
-
- spec/draper/decorator_spec.rb
|
|
286
|
-
- spec/draper/draper_spec.rb
|
|
287
|
-
- spec/draper/factory_spec.rb
|
|
288
|
-
- spec/draper/finders_spec.rb
|
|
289
|
-
- spec/draper/helper_proxy_spec.rb
|
|
290
|
-
- spec/draper/lazy_helpers_spec.rb
|
|
291
|
-
- spec/draper/query_methods/load_strategy_spec.rb
|
|
292
|
-
- spec/draper/query_methods_spec.rb
|
|
293
|
-
- spec/draper/undecorate_chain_spec.rb
|
|
294
|
-
- spec/draper/undecorate_spec.rb
|
|
295
|
-
- spec/draper/view_context/build_strategy_spec.rb
|
|
296
|
-
- spec/draper/view_context_spec.rb
|
|
297
|
-
- spec/draper/view_helpers_spec.rb
|
|
298
|
-
- spec/dummy/.rspec
|
|
299
|
-
- spec/dummy/Rakefile
|
|
300
|
-
- spec/dummy/app/assets/config/manifest.js
|
|
301
|
-
- spec/dummy/app/controllers/application_controller.rb
|
|
302
|
-
- spec/dummy/app/controllers/base_controller.rb
|
|
303
|
-
- spec/dummy/app/controllers/localized_urls.rb
|
|
304
|
-
- spec/dummy/app/controllers/posts_controller.rb
|
|
305
|
-
- spec/dummy/app/decorators/comment_decorator.rb
|
|
306
|
-
- spec/dummy/app/decorators/mongoid_post_decorator.rb
|
|
307
|
-
- spec/dummy/app/decorators/post_decorator.rb
|
|
308
|
-
- spec/dummy/app/helpers/application_helper.rb
|
|
309
|
-
- spec/dummy/app/jobs/publish_post_job.rb
|
|
310
|
-
- spec/dummy/app/mailers/application_mailer.rb
|
|
311
|
-
- spec/dummy/app/mailers/post_mailer.rb
|
|
312
|
-
- spec/dummy/app/models/admin.rb
|
|
313
|
-
- spec/dummy/app/models/application_record.rb
|
|
314
|
-
- spec/dummy/app/models/comment.rb
|
|
315
|
-
- spec/dummy/app/models/mongoid_post.rb
|
|
316
|
-
- spec/dummy/app/models/post.rb
|
|
317
|
-
- spec/dummy/app/models/user.rb
|
|
318
|
-
- spec/dummy/app/views/layouts/application.html.erb
|
|
319
|
-
- spec/dummy/app/views/post_mailer/decorated_email.html.erb
|
|
320
|
-
- spec/dummy/app/views/posts/_post.html.erb
|
|
321
|
-
- spec/dummy/app/views/posts/show.html.erb
|
|
322
|
-
- spec/dummy/bin/rails
|
|
323
|
-
- spec/dummy/config.ru
|
|
324
|
-
- spec/dummy/config/application.rb
|
|
325
|
-
- spec/dummy/config/boot.rb
|
|
326
|
-
- spec/dummy/config/database.yml
|
|
327
|
-
- spec/dummy/config/environment.rb
|
|
328
|
-
- spec/dummy/config/environments/development.rb
|
|
329
|
-
- spec/dummy/config/environments/production.rb
|
|
330
|
-
- spec/dummy/config/environments/test.rb
|
|
331
|
-
- spec/dummy/config/initializers/backtrace_silencers.rb
|
|
332
|
-
- spec/dummy/config/initializers/draper.rb
|
|
333
|
-
- spec/dummy/config/initializers/filter_parameter_logging.rb
|
|
334
|
-
- spec/dummy/config/initializers/inflections.rb
|
|
335
|
-
- spec/dummy/config/initializers/mime_types.rb
|
|
336
|
-
- spec/dummy/config/initializers/secret_token.rb
|
|
337
|
-
- spec/dummy/config/initializers/session_store.rb
|
|
338
|
-
- spec/dummy/config/locales/en.yml
|
|
339
|
-
- spec/dummy/config/mongoid.yml
|
|
340
|
-
- spec/dummy/config/routes.rb
|
|
341
|
-
- spec/dummy/config/storage.yml
|
|
342
|
-
- spec/dummy/db/migrate/20121019115657_create_posts.rb
|
|
343
|
-
- spec/dummy/db/migrate/20240907041839_create_comments.rb
|
|
344
|
-
- spec/dummy/db/schema.rb
|
|
345
|
-
- spec/dummy/db/seeds.rb
|
|
346
|
-
- spec/dummy/fast_spec/post_decorator_spec.rb
|
|
347
|
-
- spec/dummy/lib/tasks/test.rake
|
|
348
|
-
- spec/dummy/log/.gitkeep
|
|
349
|
-
- spec/dummy/public/404.html
|
|
350
|
-
- spec/dummy/public/422.html
|
|
351
|
-
- spec/dummy/public/500.html
|
|
352
|
-
- spec/dummy/public/favicon.ico
|
|
353
|
-
- spec/dummy/script/rails
|
|
354
|
-
- spec/dummy/spec/decorators/active_model_serializers_spec.rb
|
|
355
|
-
- spec/dummy/spec/decorators/devise_spec.rb
|
|
356
|
-
- spec/dummy/spec/decorators/helpers_spec.rb
|
|
357
|
-
- spec/dummy/spec/decorators/post_decorator_spec.rb
|
|
358
|
-
- spec/dummy/spec/decorators/spec_type_spec.rb
|
|
359
|
-
- spec/dummy/spec/decorators/view_context_spec.rb
|
|
360
|
-
- spec/dummy/spec/jobs/publish_post_job_spec.rb
|
|
361
|
-
- spec/dummy/spec/mailers/post_mailer_spec.rb
|
|
362
|
-
- spec/dummy/spec/models/application_spec.rb
|
|
363
|
-
- spec/dummy/spec/models/mongoid_post_spec.rb
|
|
364
|
-
- spec/dummy/spec/models/post_spec.rb
|
|
365
|
-
- spec/dummy/spec/rails_helper.rb
|
|
366
|
-
- spec/dummy/spec/shared_examples/decoratable.rb
|
|
367
|
-
- spec/dummy/spec/spec_helper.rb
|
|
368
|
-
- spec/dummy/test/decorators/minitest/devise_test.rb
|
|
369
|
-
- spec/dummy/test/decorators/minitest/helpers_test.rb
|
|
370
|
-
- spec/dummy/test/decorators/minitest/spec_type_test.rb
|
|
371
|
-
- spec/dummy/test/decorators/minitest/view_context_test.rb
|
|
372
|
-
- spec/dummy/test/decorators/test_unit/devise_test.rb
|
|
373
|
-
- spec/dummy/test/decorators/test_unit/helpers_test.rb
|
|
374
|
-
- spec/dummy/test/decorators/test_unit/view_context_test.rb
|
|
375
|
-
- spec/dummy/test/minitest_helper.rb
|
|
376
|
-
- spec/dummy/test/test_helper.rb
|
|
377
|
-
- spec/generators/controller/controller_generator_spec.rb
|
|
378
|
-
- spec/generators/decorator/decorator_generator_spec.rb
|
|
379
|
-
- spec/generators/install/install_generator_spec.rb
|
|
380
|
-
- spec/integration/integration_spec.rb
|
|
381
|
-
- spec/performance/active_record.rb
|
|
382
|
-
- spec/performance/benchmark.rb
|
|
383
|
-
- spec/performance/decorators.rb
|
|
384
|
-
- spec/performance/models.rb
|
|
385
|
-
- spec/spec_helper.rb
|
|
386
|
-
- spec/support/dummy_app.rb
|
|
387
|
-
- spec/support/matchers/have_text.rb
|
|
388
|
-
- spec/support/shared_examples/decoratable_equality.rb
|
|
389
|
-
- spec/support/shared_examples/view_helpers.rb
|
|
390
273
|
homepage: https://github.com/drapergem/draper
|
|
391
274
|
licenses:
|
|
392
275
|
- MIT
|
|
@@ -410,115 +293,4 @@ rubygems_version: 3.5.23
|
|
|
410
293
|
signing_key:
|
|
411
294
|
specification_version: 4
|
|
412
295
|
summary: View Models for Rails
|
|
413
|
-
test_files:
|
|
414
|
-
- spec/draper/collection_decorator_spec.rb
|
|
415
|
-
- spec/draper/configuration_spec.rb
|
|
416
|
-
- spec/draper/decoratable/equality_spec.rb
|
|
417
|
-
- spec/draper/decoratable_spec.rb
|
|
418
|
-
- spec/draper/decorated_association_spec.rb
|
|
419
|
-
- spec/draper/decorates_assigned_spec.rb
|
|
420
|
-
- spec/draper/decorator_spec.rb
|
|
421
|
-
- spec/draper/draper_spec.rb
|
|
422
|
-
- spec/draper/factory_spec.rb
|
|
423
|
-
- spec/draper/finders_spec.rb
|
|
424
|
-
- spec/draper/helper_proxy_spec.rb
|
|
425
|
-
- spec/draper/lazy_helpers_spec.rb
|
|
426
|
-
- spec/draper/query_methods/load_strategy_spec.rb
|
|
427
|
-
- spec/draper/query_methods_spec.rb
|
|
428
|
-
- spec/draper/undecorate_chain_spec.rb
|
|
429
|
-
- spec/draper/undecorate_spec.rb
|
|
430
|
-
- spec/draper/view_context/build_strategy_spec.rb
|
|
431
|
-
- spec/draper/view_context_spec.rb
|
|
432
|
-
- spec/draper/view_helpers_spec.rb
|
|
433
|
-
- spec/dummy/.rspec
|
|
434
|
-
- spec/dummy/Rakefile
|
|
435
|
-
- spec/dummy/app/assets/config/manifest.js
|
|
436
|
-
- spec/dummy/app/controllers/application_controller.rb
|
|
437
|
-
- spec/dummy/app/controllers/base_controller.rb
|
|
438
|
-
- spec/dummy/app/controllers/localized_urls.rb
|
|
439
|
-
- spec/dummy/app/controllers/posts_controller.rb
|
|
440
|
-
- spec/dummy/app/decorators/comment_decorator.rb
|
|
441
|
-
- spec/dummy/app/decorators/mongoid_post_decorator.rb
|
|
442
|
-
- spec/dummy/app/decorators/post_decorator.rb
|
|
443
|
-
- spec/dummy/app/helpers/application_helper.rb
|
|
444
|
-
- spec/dummy/app/jobs/publish_post_job.rb
|
|
445
|
-
- spec/dummy/app/mailers/application_mailer.rb
|
|
446
|
-
- spec/dummy/app/mailers/post_mailer.rb
|
|
447
|
-
- spec/dummy/app/models/admin.rb
|
|
448
|
-
- spec/dummy/app/models/application_record.rb
|
|
449
|
-
- spec/dummy/app/models/comment.rb
|
|
450
|
-
- spec/dummy/app/models/mongoid_post.rb
|
|
451
|
-
- spec/dummy/app/models/post.rb
|
|
452
|
-
- spec/dummy/app/models/user.rb
|
|
453
|
-
- spec/dummy/app/views/layouts/application.html.erb
|
|
454
|
-
- spec/dummy/app/views/post_mailer/decorated_email.html.erb
|
|
455
|
-
- spec/dummy/app/views/posts/_post.html.erb
|
|
456
|
-
- spec/dummy/app/views/posts/show.html.erb
|
|
457
|
-
- spec/dummy/bin/rails
|
|
458
|
-
- spec/dummy/config.ru
|
|
459
|
-
- spec/dummy/config/application.rb
|
|
460
|
-
- spec/dummy/config/boot.rb
|
|
461
|
-
- spec/dummy/config/database.yml
|
|
462
|
-
- spec/dummy/config/environment.rb
|
|
463
|
-
- spec/dummy/config/environments/development.rb
|
|
464
|
-
- spec/dummy/config/environments/production.rb
|
|
465
|
-
- spec/dummy/config/environments/test.rb
|
|
466
|
-
- spec/dummy/config/initializers/backtrace_silencers.rb
|
|
467
|
-
- spec/dummy/config/initializers/draper.rb
|
|
468
|
-
- spec/dummy/config/initializers/filter_parameter_logging.rb
|
|
469
|
-
- spec/dummy/config/initializers/inflections.rb
|
|
470
|
-
- spec/dummy/config/initializers/mime_types.rb
|
|
471
|
-
- spec/dummy/config/initializers/secret_token.rb
|
|
472
|
-
- spec/dummy/config/initializers/session_store.rb
|
|
473
|
-
- spec/dummy/config/locales/en.yml
|
|
474
|
-
- spec/dummy/config/mongoid.yml
|
|
475
|
-
- spec/dummy/config/routes.rb
|
|
476
|
-
- spec/dummy/config/storage.yml
|
|
477
|
-
- spec/dummy/db/migrate/20121019115657_create_posts.rb
|
|
478
|
-
- spec/dummy/db/migrate/20240907041839_create_comments.rb
|
|
479
|
-
- spec/dummy/db/schema.rb
|
|
480
|
-
- spec/dummy/db/seeds.rb
|
|
481
|
-
- spec/dummy/fast_spec/post_decorator_spec.rb
|
|
482
|
-
- spec/dummy/lib/tasks/test.rake
|
|
483
|
-
- spec/dummy/log/.gitkeep
|
|
484
|
-
- spec/dummy/public/404.html
|
|
485
|
-
- spec/dummy/public/422.html
|
|
486
|
-
- spec/dummy/public/500.html
|
|
487
|
-
- spec/dummy/public/favicon.ico
|
|
488
|
-
- spec/dummy/script/rails
|
|
489
|
-
- spec/dummy/spec/decorators/active_model_serializers_spec.rb
|
|
490
|
-
- spec/dummy/spec/decorators/devise_spec.rb
|
|
491
|
-
- spec/dummy/spec/decorators/helpers_spec.rb
|
|
492
|
-
- spec/dummy/spec/decorators/post_decorator_spec.rb
|
|
493
|
-
- spec/dummy/spec/decorators/spec_type_spec.rb
|
|
494
|
-
- spec/dummy/spec/decorators/view_context_spec.rb
|
|
495
|
-
- spec/dummy/spec/jobs/publish_post_job_spec.rb
|
|
496
|
-
- spec/dummy/spec/mailers/post_mailer_spec.rb
|
|
497
|
-
- spec/dummy/spec/models/application_spec.rb
|
|
498
|
-
- spec/dummy/spec/models/mongoid_post_spec.rb
|
|
499
|
-
- spec/dummy/spec/models/post_spec.rb
|
|
500
|
-
- spec/dummy/spec/rails_helper.rb
|
|
501
|
-
- spec/dummy/spec/shared_examples/decoratable.rb
|
|
502
|
-
- spec/dummy/spec/spec_helper.rb
|
|
503
|
-
- spec/dummy/test/decorators/minitest/devise_test.rb
|
|
504
|
-
- spec/dummy/test/decorators/minitest/helpers_test.rb
|
|
505
|
-
- spec/dummy/test/decorators/minitest/spec_type_test.rb
|
|
506
|
-
- spec/dummy/test/decorators/minitest/view_context_test.rb
|
|
507
|
-
- spec/dummy/test/decorators/test_unit/devise_test.rb
|
|
508
|
-
- spec/dummy/test/decorators/test_unit/helpers_test.rb
|
|
509
|
-
- spec/dummy/test/decorators/test_unit/view_context_test.rb
|
|
510
|
-
- spec/dummy/test/minitest_helper.rb
|
|
511
|
-
- spec/dummy/test/test_helper.rb
|
|
512
|
-
- spec/generators/controller/controller_generator_spec.rb
|
|
513
|
-
- spec/generators/decorator/decorator_generator_spec.rb
|
|
514
|
-
- spec/generators/install/install_generator_spec.rb
|
|
515
|
-
- spec/integration/integration_spec.rb
|
|
516
|
-
- spec/performance/active_record.rb
|
|
517
|
-
- spec/performance/benchmark.rb
|
|
518
|
-
- spec/performance/decorators.rb
|
|
519
|
-
- spec/performance/models.rb
|
|
520
|
-
- spec/spec_helper.rb
|
|
521
|
-
- spec/support/dummy_app.rb
|
|
522
|
-
- spec/support/matchers/have_text.rb
|
|
523
|
-
- spec/support/shared_examples/decoratable_equality.rb
|
|
524
|
-
- spec/support/shared_examples/view_helpers.rb
|
|
296
|
+
test_files: []
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
## Description
|
|
2
|
-
Detail your changes here.
|
|
3
|
-
A few sentences describing the overall goals of the pull request's commits will suffice.
|
|
4
|
-
Some questions you might answer:
|
|
5
|
-
|
|
6
|
-
* Why was this change required?
|
|
7
|
-
* Did you have any tough decisions to make? Which one(s) did you go with and why?
|
|
8
|
-
* Are there any deployment impacts to this change?
|
|
9
|
-
* Is there something you aren't happy with or that needs extra attention?
|
|
10
|
-
|
|
11
|
-
## Testing
|
|
12
|
-
Outline steps to test your changes.
|
|
13
|
-
|
|
14
|
-
1. Go here.
|
|
15
|
-
1. Click this.
|
|
16
|
-
1. See that.
|
|
17
|
-
|
|
18
|
-
## To-Dos
|
|
19
|
-
- [ ] tests
|
|
20
|
-
- [ ] documentation
|
|
21
|
-
|
|
22
|
-
## References
|
|
23
|
-
* [GitHub Issue ####](https://github.com/drapergem/draper/issues/####)
|
|
24
|
-
* [GitHub Pull Request ####](https://github.com/drapergem/draper/pull/####)
|
data/.github/workflows/ci.yml
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: CI
|
|
3
|
-
|
|
4
|
-
on:
|
|
5
|
-
push:
|
|
6
|
-
branches:
|
|
7
|
-
- master
|
|
8
|
-
pull_request:
|
|
9
|
-
|
|
10
|
-
permissions:
|
|
11
|
-
contents: read
|
|
12
|
-
|
|
13
|
-
jobs:
|
|
14
|
-
rspec:
|
|
15
|
-
name: >-
|
|
16
|
-
rspec (${{ matrix.ruby }})
|
|
17
|
-
|
|
18
|
-
runs-on: ubuntu-latest
|
|
19
|
-
|
|
20
|
-
strategy:
|
|
21
|
-
fail-fast: false
|
|
22
|
-
matrix:
|
|
23
|
-
ruby:
|
|
24
|
-
- 3.3
|
|
25
|
-
- 3.2
|
|
26
|
-
- 3.1
|
|
27
|
-
rails:
|
|
28
|
-
- 7.2
|
|
29
|
-
include:
|
|
30
|
-
# Edge
|
|
31
|
-
- { ruby: 'head', rails: 'edge', allow-fail: true }
|
|
32
|
-
# Outdated
|
|
33
|
-
- { ruby: '3.0', rails: '7.1' }
|
|
34
|
-
- { ruby: '2.7', rails: '6' } # RSpec AR Expectations support Rails 7.1 since Ruby 3.0
|
|
35
|
-
- { ruby: '2.6', rails: '6' }
|
|
36
|
-
- { ruby: '2.5', rails: '6' }
|
|
37
|
-
- { ruby: '2.4', rails: '5' }
|
|
38
|
-
|
|
39
|
-
env:
|
|
40
|
-
RAILS_VERSION: "${{ matrix.rails }}"
|
|
41
|
-
|
|
42
|
-
services:
|
|
43
|
-
mongodb:
|
|
44
|
-
image: mongo
|
|
45
|
-
ports:
|
|
46
|
-
- 27017:27017
|
|
47
|
-
|
|
48
|
-
steps:
|
|
49
|
-
- uses: actions/checkout@v4
|
|
50
|
-
|
|
51
|
-
- name: Setup Ruby
|
|
52
|
-
uses: ruby/setup-ruby@v1
|
|
53
|
-
with:
|
|
54
|
-
ruby-version: ${{ matrix.ruby }}
|
|
55
|
-
rubygems: latest
|
|
56
|
-
bundler-cache: true
|
|
57
|
-
|
|
58
|
-
- name: RSpec & publish code coverage
|
|
59
|
-
uses: paambaati/codeclimate-action@v8
|
|
60
|
-
env:
|
|
61
|
-
CC_TEST_REPORTER_ID: b7ba588af2a540fa96c267b3655a2afe31ea29976dc25905a668dd28d5e88915
|
|
62
|
-
with:
|
|
63
|
-
coverageCommand: bin/rake
|
|
64
|
-
continue-on-error: ${{ matrix.allow-fail }}
|
|
65
|
-
id: test
|
|
66
|
-
|
|
67
|
-
- name: >-
|
|
68
|
-
Test ${{ steps.test.outcome }}
|
|
69
|
-
run: |
|
|
70
|
-
echo Ruby ${{ matrix.ruby }}
|
|
71
|
-
echo Rails ${{ matrix.rails }}
|
data/.gitignore
DELETED
data/Gemfile
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
source "https://rubygems.org"
|
|
2
|
-
|
|
3
|
-
gemspec
|
|
4
|
-
|
|
5
|
-
gem 'puma'
|
|
6
|
-
|
|
7
|
-
platforms :ruby do
|
|
8
|
-
if RUBY_VERSION >= "2.5.0"
|
|
9
|
-
gem 'sqlite3'
|
|
10
|
-
else
|
|
11
|
-
gem 'sqlite3', '~> 1.3.6'
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
platforms :jruby do
|
|
16
|
-
gem "minitest"
|
|
17
|
-
gem "activerecord-jdbcsqlite3-adapter"
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
case rails_version = ENV['RAILS_VERSION']
|
|
21
|
-
when nil
|
|
22
|
-
gem 'rails'
|
|
23
|
-
when 'edge'
|
|
24
|
-
gem 'rails', github: 'rails/rails'
|
|
25
|
-
else
|
|
26
|
-
gem 'rails', "~> #{rails_version}.0"
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
gem 'mongoid' unless
|
|
30
|
-
rails_version == 'edge'
|
|
31
|
-
gem 'active_model_serializers'
|
|
32
|
-
|
|
33
|
-
case RUBY_VERSION
|
|
34
|
-
when '2.6'...'3.0'
|
|
35
|
-
gem "turbo-rails", "<= 2.0.7"
|
|
36
|
-
gem "redis", "~> 4.0"
|
|
37
|
-
when '3.0'...'4'
|
|
38
|
-
gem 'turbo-rails'
|
|
39
|
-
gem 'redis', '~> 4.0'
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
if RUBY_VERSION < "2.5.0"
|
|
43
|
-
gem 'rspec-activerecord-expectations', '~> 1.2.0'
|
|
44
|
-
gem 'simplecov', '0.17.1'
|
|
45
|
-
gem "loofah", "< 2.21.0" # Workaround for `uninitialized constant Nokogiri::HTML4`
|
|
46
|
-
end
|