iknow_view_models 3.0.1 → 3.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/iknow_view_models/version.rb +1 -1
- data/lib/view_model/active_record/collection_nested_controller.rb +5 -4
- data/lib/view_model/active_record/controller.rb +1 -3
- data/lib/view_model/active_record/nested_controller_base.rb +1 -0
- data/lib/view_model/active_record/singular_nested_controller.rb +4 -4
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4f643ac9a59994324e3222f51732f5b7a3c34acefebb1e92cbbd9fff8dfb9d51
|
4
|
+
data.tar.gz: d4bcb2bf851d386b3ec65d88698fc080f8e7f53480c330ac5fe1771f10b27ebc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 63bf32f6ed28bd025937eb83d6135f73af4d0070dc747d2da6cc624bdb55e674721fecc11ffbb6c52b427a3d5115fe02853cc4917c3a1ba1ae3d3476f80fddd2
|
7
|
+
data.tar.gz: 872bda8c032763f2e4ff052f439b8396a01abe7264479dd06b45d1209f711cb2a88ed9671499bc56759778797892652035e919d146d6a081a37b9131208fbf66
|
@@ -22,14 +22,14 @@ module ViewModel::ActiveRecord::CollectionNestedController
|
|
22
22
|
extend ActiveSupport::Concern
|
23
23
|
include ViewModel::ActiveRecord::NestedControllerBase
|
24
24
|
|
25
|
-
def index_associated(scope: nil, serialize_context: new_serialize_context)
|
26
|
-
show_association(scope: scope, serialize_context: serialize_context)
|
25
|
+
def index_associated(scope: nil, serialize_context: new_serialize_context, &block)
|
26
|
+
show_association(scope: scope, serialize_context: serialize_context, &block)
|
27
27
|
end
|
28
28
|
|
29
29
|
# Deserialize items of the associated type and associate them with the owner,
|
30
30
|
# replacing previously associated items.
|
31
|
-
def replace(serialize_context: new_serialize_context, deserialize_context: new_deserialize_context)
|
32
|
-
write_association(serialize_context: serialize_context, deserialize_context: deserialize_context)
|
31
|
+
def replace(serialize_context: new_serialize_context, deserialize_context: new_deserialize_context, &block)
|
32
|
+
write_association(serialize_context: serialize_context, deserialize_context: deserialize_context, &block)
|
33
33
|
end
|
34
34
|
|
35
35
|
def disassociate_all(serialize_context: new_serialize_context, deserialize_context: new_deserialize_context)
|
@@ -61,6 +61,7 @@ module ViewModel::ActiveRecord::CollectionNestedController
|
|
61
61
|
ViewModel::Callbacks.wrap_serialize(owner_view, context: serialize_context) do
|
62
62
|
child_context = owner_view.context_for_child(association_name, context: serialize_context)
|
63
63
|
ViewModel.preload_for_serialization(assoc_view, serialize_context: child_context)
|
64
|
+
assoc_view = yield(assoc_view) if block_given?
|
64
65
|
prerender_viewmodel(assoc_view, serialize_context: child_context)
|
65
66
|
end
|
66
67
|
end
|
@@ -45,10 +45,8 @@ module ViewModel::ActiveRecord::Controller
|
|
45
45
|
view = nil
|
46
46
|
pre_rendered = viewmodel_class.transaction do
|
47
47
|
view = viewmodel_class.deserialize_from_view(update_hash, references: refs, deserialize_context: deserialize_context)
|
48
|
-
|
49
|
-
view = yield(view) if block_given?
|
50
|
-
|
51
48
|
ViewModel.preload_for_serialization(view, serialize_context: serialize_context)
|
49
|
+
view = yield(view) if block_given?
|
52
50
|
prerender_viewmodel(view, serialize_context: serialize_context)
|
53
51
|
end
|
54
52
|
render_json_string(pre_rendered)
|
@@ -41,6 +41,7 @@ module ViewModel::ActiveRecord::NestedControllerBase
|
|
41
41
|
ViewModel::Callbacks.wrap_serialize(owner_view, context: serialize_context) do
|
42
42
|
child_context = owner_view.context_for_child(association_name, context: serialize_context)
|
43
43
|
ViewModel.preload_for_serialization(association_view, serialize_context: child_context)
|
44
|
+
association_view = yield(association_view) if block_given?
|
44
45
|
prerender_viewmodel(association_view, serialize_context: child_context)
|
45
46
|
end
|
46
47
|
end
|
@@ -20,12 +20,12 @@ module ViewModel::ActiveRecord::SingularNestedController
|
|
20
20
|
extend ActiveSupport::Concern
|
21
21
|
include ViewModel::ActiveRecord::NestedControllerBase
|
22
22
|
|
23
|
-
def show_associated(scope: nil, serialize_context: new_serialize_context, deserialize_context: new_deserialize_context)
|
24
|
-
show_association(scope: scope, serialize_context: serialize_context)
|
23
|
+
def show_associated(scope: nil, serialize_context: new_serialize_context, deserialize_context: new_deserialize_context, &block)
|
24
|
+
show_association(scope: scope, serialize_context: serialize_context, &block)
|
25
25
|
end
|
26
26
|
|
27
|
-
def create_associated(serialize_context: new_serialize_context, deserialize_context: new_deserialize_context)
|
28
|
-
write_association(serialize_context: serialize_context, deserialize_context: deserialize_context)
|
27
|
+
def create_associated(serialize_context: new_serialize_context, deserialize_context: new_deserialize_context, &block)
|
28
|
+
write_association(serialize_context: serialize_context, deserialize_context: deserialize_context, &block)
|
29
29
|
end
|
30
30
|
|
31
31
|
def destroy_associated(serialize_context: new_serialize_context, deserialize_context: new_deserialize_context)
|