File tree Expand file tree Collapse file tree 1 file changed +10
-13
lines changed
lib/ash_archival/resource/changes Expand file tree Collapse file tree 1 file changed +10
-13
lines changed Original file line number Diff line number Diff line change @@ -86,18 +86,19 @@ defmodule AshArchival.Resource.Changes.ArchiveRelated do
86
86
_ -> % { }
87
87
end
88
88
89
+ context =
90
+ opts [ :context ]
91
+ |> Kernel . || ( % { } )
92
+ |> Map . put ( :ash_archival , true )
93
+ |> Ash.Helpers . deep_merge_maps ( relationship . context || % { } )
94
+
89
95
case related_query ( data , relationship ) do
90
96
{ :ok , query } ->
91
97
Ash . bulk_destroy! (
92
98
query ,
93
99
destroy_action ,
94
100
arguments ,
95
- Keyword . update (
96
- opts ,
97
- :context ,
98
- % { ash_archival: true } ,
99
- & Map . put ( & 1 , :ash_archival , true )
100
- )
101
+ Keyword . put ( opts , :context , context )
101
102
)
102
103
103
104
:error ->
@@ -118,12 +119,7 @@ defmodule AshArchival.Resource.Changes.ArchiveRelated do
118
119
|> Ash . bulk_destroy! (
119
120
destroy_action ,
120
121
% { } ,
121
- Keyword . update (
122
- opts ,
123
- :context ,
124
- % { ash_archival: true } ,
125
- & Map . put ( & 1 , :ash_archival , true )
126
- )
122
+ Keyword . put ( opts , :context , context )
127
123
)
128
124
end
129
125
end )
@@ -150,7 +146,8 @@ defmodule AshArchival.Resource.Changes.ArchiveRelated do
150
146
)
151
147
|> elem ( 1 )
152
148
|> filter_by_keys ( relationship , records )
153
- |> Ash.Query . set_context ( % { ash_archival: true } ) }
149
+ |> Ash.Query . set_context ( % { ash_archival: true } )
150
+ |> Ash.Query . set_context ( relationship . context || % { } ) }
154
151
end
155
152
end
156
153
You can’t perform that action at this time.
0 commit comments