loggable_activity 0.1.54 → 0.1.55

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.
@@ -147,7 +147,7 @@
147
147
  @param params [Hash] Additional parameters for the activity.</pre>
148
148
 
149
149
  <div class="method-source-code" id="log-source">
150
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 40</span>
150
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 41</span>
151
151
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log</span>(<span class="ruby-identifier">action</span>, <span class="ruby-value">actor:</span> <span class="ruby-keyword">nil</span>, <span class="ruby-value">params:</span> {})
152
152
  <span class="ruby-ivar">@action</span> = <span class="ruby-identifier">action</span>
153
153
  <span class="ruby-ivar">@actor</span> = <span class="ruby-identifier">actor</span> <span class="ruby-operator">||</span> <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-value">:current_user</span>]
@@ -193,10 +193,10 @@
193
193
  </div>
194
194
 
195
195
  <div class="method-description">
196
-
196
+ <p>Returns the action key for the current action.</p>
197
197
 
198
198
  <div class="method-source-code" id="action_key-source">
199
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 124</span>
199
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 137</span>
200
200
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">action_key</span>
201
201
  <span class="ruby-ivar">@action_key</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">base_action</span> <span class="ruby-operator">+</span> <span class="ruby-node">&quot;.#{@action}&quot;</span>
202
202
  <span class="ruby-keyword">end</span></pre>
@@ -216,10 +216,10 @@
216
216
  </div>
217
217
 
218
218
  <div class="method-description">
219
-
219
+ <p>Returns the display name of the actor.</p>
220
220
 
221
221
  <div class="method-source-code" id="actor_display_name_field-source">
222
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 141</span>
222
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 158</span>
223
223
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">actor_display_name_field</span>
224
224
  <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">application</span>.<span class="ruby-identifier">config</span>.<span class="ruby-identifier">loggable_activity</span>.<span class="ruby-identifier">actor_display_name</span> <span class="ruby-operator">||</span> <span class="ruby-node">&quot;id: #{@actor.id}, class: #{@actor.class.name}&quot;</span>
225
225
  <span class="ruby-keyword">end</span></pre>
@@ -239,10 +239,10 @@
239
239
  </div>
240
240
 
241
241
  <div class="method-description">
242
-
242
+ <p>Returns the encryption key for the actor.</p>
243
243
 
244
244
  <div class="method-source-code" id="actor_encryption_key-source">
245
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 137</span>
245
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 153</span>
246
246
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">actor_encryption_key</span>
247
247
  <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">EncryptionKey</span>.<span class="ruby-identifier">for_record</span>(<span class="ruby-ivar">@actor</span>)&amp;.<span class="ruby-identifier">key</span>
248
248
  <span class="ruby-keyword">end</span></pre>
@@ -262,10 +262,10 @@
262
262
  </div>
263
263
 
264
264
  <div class="method-description">
265
-
265
+ <p>Convert the model name and name space in to ‘base_action’.</p>
266
266
 
267
267
  <div class="method-source-code" id="base_action-source">
268
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 152</span>
268
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 171</span>
269
269
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">base_action</span>
270
270
  <span class="ruby-identifier">name</span>.<span class="ruby-identifier">downcase</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-string">&#39;::&#39;</span>, <span class="ruby-string">&#39;/&#39;</span>)
271
271
  <span class="ruby-keyword">end</span></pre>
@@ -285,10 +285,10 @@
285
285
  </div>
286
286
 
287
287
  <div class="method-description">
288
-
288
+ <p>Creates an activity with the specified payloads.</p>
289
289
 
290
290
  <div class="method-source-code" id="create_activity-source">
291
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 77</span>
291
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 82</span>
292
292
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">create_activity</span>(<span class="ruby-identifier">payloads</span>)
293
293
  <span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">nothing_to_log?</span>(<span class="ruby-identifier">payloads</span>)
294
294
 
@@ -317,10 +317,10 @@
317
317
  </div>
318
318
 
319
319
  <div class="method-description">
320
-
320
+ <p>Returns the model name of the current user.</p>
321
321
 
322
322
  <div class="method-source-code" id="current_user_model-3F-source">
323
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 145</span>
323
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 163</span>
324
324
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">current_user_model?</span>
325
325
  <span class="ruby-constant">Rails</span>.<span class="ruby-identifier">application</span>.<span class="ruby-identifier">config</span>.<span class="ruby-identifier">loggable_activity</span>.<span class="ruby-identifier">current_user_model_name</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">name</span>
326
326
  <span class="ruby-keyword">end</span></pre>
@@ -340,10 +340,10 @@
340
340
  </div>
341
341
 
342
342
  <div class="method-description">
343
-
343
+ <p>Returns the encrypted name of the actor.</p>
344
344
 
345
345
  <div class="method-source-code" id="encrypted_actor_name-source">
346
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 109</span>
346
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 120</span>
347
347
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encrypted_actor_name</span>
348
348
  <span class="ruby-identifier">actor_display_name</span> = <span class="ruby-ivar">@actor</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">actor_display_name_field</span>)
349
349
  <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Encryption</span>.<span class="ruby-identifier">encrypt</span>(<span class="ruby-identifier">actor_display_name</span>, <span class="ruby-identifier">actor_encryption_key</span>)
@@ -364,10 +364,10 @@
364
364
  </div>
365
365
 
366
366
  <div class="method-description">
367
-
367
+ <p>Returns the encrypted name of the record.</p>
368
368
 
369
369
  <div class="method-source-code" id="encrypted_record_name-source">
370
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 114</span>
370
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 126</span>
371
371
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encrypted_record_name</span>
372
372
  <span class="ruby-identifier">display_name</span> =
373
373
  <span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">record_display_name</span>.<span class="ruby-identifier">nil?</span>
@@ -393,10 +393,10 @@
393
393
  </div>
394
394
 
395
395
  <div class="method-description">
396
-
396
+ <p>Logs an activity for the current action.</p>
397
397
 
398
398
  <div class="method-source-code" id="log_activity-source">
399
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 65</span>
399
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 67</span>
400
400
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_activity</span>
401
401
  <span class="ruby-identifier">create_activity</span>(<span class="ruby-identifier">build_payloads</span>)
402
402
  <span class="ruby-keyword">end</span></pre>
@@ -416,10 +416,10 @@
416
416
  </div>
417
417
 
418
418
  <div class="method-description">
419
-
419
+ <p>Logs a create activity automatically if configured.</p>
420
420
 
421
421
  <div class="method-source-code" id="log_create_activity-source">
422
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 100</span>
422
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 109</span>
423
423
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_create_activity</span>
424
424
  <span class="ruby-identifier">log</span>(<span class="ruby-value">:create</span>) <span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">auto_log</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">&#39;create&#39;</span>)
425
425
  <span class="ruby-keyword">end</span></pre>
@@ -439,10 +439,10 @@
439
439
  </div>
440
440
 
441
441
  <div class="method-description">
442
-
442
+ <p>Logs a custom activity.</p>
443
443
 
444
444
  <div class="method-source-code" id="log_custom_activity-source">
445
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 94</span>
445
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 101</span>
446
446
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_custom_activity</span>(<span class="ruby-identifier">activity</span>); <span class="ruby-keyword">end</span></pre>
447
447
  </div>
448
448
  </div>
@@ -460,10 +460,10 @@
460
460
  </div>
461
461
 
462
462
  <div class="method-description">
463
-
463
+ <p>Logs an activity for the destroy action.</p>
464
464
 
465
465
  <div class="method-source-code" id="log_destroy-source">
466
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 73</span>
466
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 77</span>
467
467
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_destroy</span>
468
468
  <span class="ruby-identifier">create_activity</span>(<span class="ruby-identifier">build_destroy_payload</span>)
469
469
  <span class="ruby-keyword">end</span></pre>
@@ -483,10 +483,10 @@
483
483
  </div>
484
484
 
485
485
  <div class="method-description">
486
-
486
+ <p>Logs a destroy activity automatically if configured.</p>
487
487
 
488
488
  <div class="method-source-code" id="log_destroy_activity-source">
489
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 104</span>
489
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 114</span>
490
490
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_destroy_activity</span>
491
491
  <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">EncryptionKey</span>.<span class="ruby-identifier">for_record</span>(<span class="ruby-keyword">self</span>)&amp;.<span class="ruby-identifier">mark_as_deleted</span>
492
492
  <span class="ruby-identifier">log</span>(<span class="ruby-value">:destroy</span>) <span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">auto_log</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">&#39;destroy&#39;</span>)
@@ -507,10 +507,10 @@
507
507
  </div>
508
508
 
509
509
  <div class="method-description">
510
-
510
+ <p>Logs an activity for the update action.</p>
511
511
 
512
512
  <div class="method-source-code" id="log_update-source">
513
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 69</span>
513
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 72</span>
514
514
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_update</span>
515
515
  <span class="ruby-identifier">create_activity</span>(<span class="ruby-identifier">build_update_payloads</span>)
516
516
  <span class="ruby-keyword">end</span></pre>
@@ -530,10 +530,10 @@
530
530
  </div>
531
531
 
532
532
  <div class="method-description">
533
-
533
+ <p>Logs an update activity automatically if configured.</p>
534
534
 
535
535
  <div class="method-source-code" id="log_update_activity-source">
536
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 96</span>
536
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 104</span>
537
537
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_update_activity</span>
538
538
  <span class="ruby-identifier">log</span>(<span class="ruby-value">:update</span>) <span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">auto_log</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">&#39;update&#39;</span>)
539
539
  <span class="ruby-keyword">end</span></pre>
@@ -553,10 +553,10 @@
553
553
  </div>
554
554
 
555
555
  <div class="method-description">
556
-
556
+ <p>Returns true if there are no payloads to log.</p>
557
557
 
558
558
  <div class="method-source-code" id="nothing_to_log-3F-source">
559
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 90</span>
559
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 96</span>
560
560
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">nothing_to_log?</span>(<span class="ruby-identifier">payloads</span>)
561
561
  <span class="ruby-identifier">payloads</span>.<span class="ruby-identifier">empty?</span>
562
562
  <span class="ruby-keyword">end</span></pre>
@@ -576,10 +576,10 @@
576
576
  </div>
577
577
 
578
578
  <div class="method-description">
579
-
579
+ <p>Returns the primary encryption key for the activity</p>
580
580
 
581
581
  <div class="method-source-code" id="primary_encryption_key-source">
582
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 128</span>
582
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 142</span>
583
583
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">primary_encryption_key</span>
584
584
  <span class="ruby-ivar">@primary_encryption_key</span> <span class="ruby-operator">||=</span>
585
585
  <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">EncryptionKey</span>.<span class="ruby-identifier">for_record</span>(<span class="ruby-keyword">self</span>)&amp;.<span class="ruby-identifier">key</span>
@@ -600,10 +600,10 @@
600
600
  </div>
601
601
 
602
602
  <div class="method-description">
603
-
603
+ <p>Returns true if the primary encryption key is deleted.</p>
604
604
 
605
605
  <div class="method-source-code" id="primary_encryption_key_deleted-3F-source">
606
- <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 133</span>
606
+ <pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 148</span>
607
607
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">primary_encryption_key_deleted?</span>
608
608
  <span class="ruby-identifier">primary_encryption_key</span>.<span class="ruby-identifier">nil?</span>
609
609
  <span class="ruby-keyword">end</span></pre>
@@ -79,6 +79,7 @@
79
79
  <li ><a href="#method-i-decrypted_update_attrs">#decrypted_update_attrs</a>
80
80
  <li ><a href="#method-i-deleted_attrs">#deleted_attrs</a>
81
81
  <li ><a href="#method-i-payload_encryption_key">#payload_encryption_key</a>
82
+ <li ><a href="#method-i-payload_route">#payload_route</a>
82
83
  </ul>
83
84
  </div>
84
85
 
@@ -151,6 +152,31 @@ Returns:
151
152
 
152
153
  </div>
153
154
 
155
+ <div id="method-i-payload_route" class="method-detail ">
156
+ <div class="method-header">
157
+ <div class="method-heading">
158
+ <span class="method-name">payload_route</span><span
159
+ class="method-args">()</span>
160
+ <span class="method-click-advice">click to toggle source</span>
161
+ </div>
162
+ </div>
163
+
164
+ <div class="method-description">
165
+ <p>Returns the route for the payload.</p>
166
+
167
+ <div class="method-source-code" id="payload_route-source">
168
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 54</span>
169
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">payload_route</span>
170
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">payload_encryption_key</span>.<span class="ruby-identifier">nil?</span>
171
+
172
+ <span class="ruby-identifier">route</span>
173
+ <span class="ruby-keyword">end</span></pre>
174
+ </div>
175
+ </div>
176
+
177
+
178
+ </div>
179
+
154
180
  </section>
155
181
 
156
182
  <section id="private-instance-5Buntitled-5D-method-details" class="method-section">
@@ -173,7 +199,7 @@ Returns:
173
199
  <p>@param value [String] The encrypted value to decrypt. @return [String] The decrypted value.</p>
174
200
 
175
201
  <div class="method-source-code" id="decrypt_attr-source">
176
- <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 103</span>
202
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 110</span>
177
203
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypt_attr</span>(<span class="ruby-identifier">value</span>)
178
204
  <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Encryption</span>.<span class="ruby-identifier">decrypt</span>(<span class="ruby-identifier">value</span>, <span class="ruby-identifier">payload_encryption_key</span>)
179
205
  <span class="ruby-keyword">end</span></pre>
@@ -198,7 +224,7 @@ Returns:
198
224
  <p>@return [Hash] The decrypted attributes.</p>
199
225
 
200
226
  <div class="method-source-code" id="decrypted_attrs-source">
201
- <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 93</span>
227
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 100</span>
202
228
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypted_attrs</span>
203
229
  <span class="ruby-identifier">encrypted_attrs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
204
230
  <span class="ruby-identifier">encrypted_attrs</span>[<span class="ruby-identifier">key</span>] = <span class="ruby-identifier">decrypt_attr</span>(<span class="ruby-identifier">value</span>)
@@ -225,7 +251,7 @@ Returns:
225
251
  <p>@param change [Hash] The change hash containing ‘from’ and ‘to’ values. @return [Hash] The decrypted ‘from’ and ‘to’ values.</p>
226
252
 
227
253
  <div class="method-source-code" id="decrypted_from_to_attr-source">
228
- <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 82</span>
254
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 89</span>
229
255
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypted_from_to_attr</span>(<span class="ruby-identifier">change</span>)
230
256
  <span class="ruby-identifier">change</span>.<span class="ruby-identifier">to_h</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
231
257
  <span class="ruby-identifier">from</span> = <span class="ruby-identifier">decrypt_attr</span>(<span class="ruby-identifier">value</span>[<span class="ruby-string">&#39;from&#39;</span>])
@@ -254,7 +280,7 @@ Returns:
254
280
  <p>@return [Array&lt;Hash&gt;] The array of decrypted changes.</p>
255
281
 
256
282
  <div class="method-source-code" id="decrypted_update_attrs-source">
257
- <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 72</span>
283
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 79</span>
258
284
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypted_update_attrs</span>
259
285
  <span class="ruby-identifier">encrypted_attrs</span>[<span class="ruby-string">&#39;changes&#39;</span>].<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">change</span><span class="ruby-operator">|</span>
260
286
  <span class="ruby-identifier">decrypted_from_to_attr</span>(<span class="ruby-identifier">change</span>)
@@ -281,7 +307,7 @@ Returns:
281
307
  <p>@return [Hash] The hash with deleted attributes.</p>
282
308
 
283
309
  <div class="method-source-code" id="deleted_attrs-source">
284
- <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 65</span>
310
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 72</span>
285
311
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">deleted_attrs</span>
286
312
  <span class="ruby-identifier">encrypted_attrs</span>.<span class="ruby-identifier">transform_values!</span> { <span class="ruby-constant">I18n</span>.<span class="ruby-identifier">t</span>(<span class="ruby-string">&#39;loggable.activity.deleted&#39;</span>) }
287
313
  <span class="ruby-keyword">end</span></pre>
@@ -306,7 +332,7 @@ Returns:
306
332
  <p>@return [String, nil] The encryption key.</p>
307
333
 
308
334
  <div class="method-source-code" id="payload_encryption_key-source">
309
- <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 58</span>
335
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 65</span>
310
336
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">payload_encryption_key</span>
311
337
  <span class="ruby-ivar">@payload_encryption_key</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">EncryptionKey</span>.<span class="ruby-identifier">for_record</span>(<span class="ruby-identifier">record</span>)&amp;.<span class="ruby-identifier">key</span>
312
338
  <span class="ruby-keyword">end</span></pre>
@@ -171,7 +171,7 @@ Returns:
171
171
  <p>@param associated_record [ActiveRecord::Base] The associated record. @param data_owner [Boolean] Whether the associated record is the owner of the data. @return [LoggableActivity::EncryptionKey] The encryption key for the associated record.</p>
172
172
 
173
173
  <div class="method-source-code" id="associated_record_encryption_key-source">
174
- <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 120</span>
174
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 123</span>
175
175
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">associated_record_encryption_key</span>(<span class="ruby-identifier">associated_record</span>, <span class="ruby-identifier">data_owner</span>)
176
176
  <span class="ruby-keyword">if</span> <span class="ruby-identifier">data_owner</span>
177
177
  <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">EncryptionKey</span>.<span class="ruby-identifier">for_record</span>(<span class="ruby-identifier">associated_record</span>, <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">EncryptionKey</span>.<span class="ruby-identifier">for_record</span>(<span class="ruby-keyword">self</span>))
@@ -198,7 +198,7 @@ Returns:
198
198
  <p>Builds the payload for an associated record.</p>
199
199
 
200
200
  <div class="method-source-code" id="build_associated_payload-source">
201
- <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 97</span>
201
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 99</span>
202
202
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_associated_payload</span>(<span class="ruby-identifier">associated_record</span>, <span class="ruby-identifier">relation_config</span>)
203
203
  <span class="ruby-identifier">associated_loggable_attrs</span> = <span class="ruby-identifier">relation_config</span>[<span class="ruby-string">&#39;loggable_attrs&#39;</span>]
204
204
  <span class="ruby-identifier">encryption_key</span> = <span class="ruby-identifier">associated_record_encryption_key</span>(<span class="ruby-identifier">associated_record</span>, <span class="ruby-identifier">relation_config</span>[<span class="ruby-string">&#39;data_owner&#39;</span>])
@@ -213,7 +213,8 @@ Returns:
213
213
  <span class="ruby-value">record:</span> <span class="ruby-identifier">associated_record</span>,
214
214
  <span class="ruby-value">encrypted_attrs:</span>,
215
215
  <span class="ruby-value">payload_type:</span> <span class="ruby-string">&#39;current_association&#39;</span>,
216
- <span class="ruby-value">data_owner:</span> <span class="ruby-identifier">relation_config</span>[<span class="ruby-string">&#39;data_owner&#39;</span>]
216
+ <span class="ruby-value">data_owner:</span> <span class="ruby-identifier">relation_config</span>[<span class="ruby-string">&#39;data_owner&#39;</span>],
217
+ <span class="ruby-value">route:</span> <span class="ruby-identifier">relation_config</span>[<span class="ruby-string">&#39;route&#39;</span>]
217
218
  )
218
219
  <span class="ruby-keyword">end</span></pre>
219
220
  </div>
@@ -235,7 +236,7 @@ Returns:
235
236
  <p>Builds the payload for destroyed records.</p>
236
237
 
237
238
  <div class="method-source-code" id="build_destroy_payload-source">
238
- <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 48</span>
239
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 49</span>
239
240
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_destroy_payload</span>
240
241
  <span class="ruby-identifier">encrypted_attrs</span> = <span class="ruby-identifier">encrypt_attrs</span>(<span class="ruby-identifier">attributes</span>, <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">loggable_attrs</span>, <span class="ruby-identifier">primary_encryption_key</span>)
241
242
  <span class="ruby-identifier">encrypted_attrs</span>.<span class="ruby-identifier">transform_values!</span> { <span class="ruby-string">&#39;*** DELETED ***&#39;</span> }
@@ -243,7 +244,8 @@ Returns:
243
244
  <span class="ruby-value">record:</span> <span class="ruby-ivar">@record</span>,
244
245
  <span class="ruby-value">payload_type:</span> <span class="ruby-string">&#39;primary_payload&#39;</span>,
245
246
  <span class="ruby-value">encrypted_attrs:</span>,
246
- <span class="ruby-value">data_owner:</span> <span class="ruby-keyword">true</span>
247
+ <span class="ruby-value">data_owner:</span> <span class="ruby-keyword">true</span>,
248
+ <span class="ruby-value">route:</span> <span class="ruby-keyword">nil</span>
247
249
  )
248
250
  <span class="ruby-keyword">end</span></pre>
249
251
  </div>
@@ -265,7 +267,7 @@ Returns:
265
267
  <p>Builds payloads for has_many relations.</p>
266
268
 
267
269
  <div class="method-source-code" id="build_has_many_payloads-source">
268
- <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 87</span>
270
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 89</span>
269
271
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_has_many_payloads</span>(<span class="ruby-identifier">relation_config</span>, <span class="ruby-identifier">relation_type</span>)
270
272
  <span class="ruby-identifier">associated_records</span> = <span class="ruby-identifier">send</span>(<span class="ruby-identifier">relation_config</span>[<span class="ruby-identifier">relation_type</span>])
271
273
  <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">associated_records</span>.<span class="ruby-identifier">empty?</span>
@@ -295,7 +297,7 @@ Returns:
295
297
  <p>@param relation_config [Hash] The configuration of the relation. @param relation_type [String] The type of the relation.</p>
296
298
 
297
299
  <div class="method-source-code" id="build_payload-source">
298
- <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 79</span>
300
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 81</span>
299
301
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_payload</span>(<span class="ruby-identifier">relation_config</span>, <span class="ruby-identifier">relation_type</span>)
300
302
  <span class="ruby-identifier">associated_record</span> = <span class="ruby-identifier">send</span>(<span class="ruby-identifier">relation_config</span>[<span class="ruby-identifier">relation_type</span>])
301
303
  <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">associated_record</span>.<span class="ruby-identifier">nil?</span>
@@ -328,7 +330,8 @@ Returns:
328
330
  <span class="ruby-value">record:</span> <span class="ruby-ivar">@record</span>,
329
331
  <span class="ruby-value">payload_type:</span> <span class="ruby-string">&#39;primary_payload&#39;</span>,
330
332
  <span class="ruby-value">encrypted_attrs:</span>,
331
- <span class="ruby-value">data_owner:</span> <span class="ruby-keyword">true</span>
333
+ <span class="ruby-value">data_owner:</span> <span class="ruby-keyword">true</span>,
334
+ <span class="ruby-value">route:</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">route</span>
332
335
  )
333
336
  <span class="ruby-keyword">end</span></pre>
334
337
  </div>
@@ -352,7 +355,7 @@ Returns:
352
355
  <p>@param relation_config [Hash] The configuration of the relation.</p>
353
356
 
354
357
  <div class="method-source-code" id="build_relation_payload-source">
355
- <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 62</span>
358
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 64</span>
356
359
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_relation_payload</span>(<span class="ruby-identifier">relation_config</span>)
357
360
  <span class="ruby-identifier">relation_config</span>.<span class="ruby-identifier">each_key</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
358
361
  <span class="ruby-keyword">case</span> <span class="ruby-identifier">key</span>
@@ -386,7 +389,7 @@ Returns:
386
389
  <p>@param attrs [Hash] The attributes to be encrypted. @param encryption_key [String] The encryption key. @return [Hash] The encrypted attributes.</p>
387
390
 
388
391
  <div class="method-source-code" id="encrypt_attr-source">
389
- <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 144</span>
392
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 147</span>
390
393
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encrypt_attr</span>(<span class="ruby-identifier">attrs</span>, <span class="ruby-identifier">encryption_key</span>)
391
394
  <span class="ruby-identifier">attrs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
392
395
  <span class="ruby-identifier">attrs</span>[<span class="ruby-identifier">key</span>] = <span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Encryption</span>.<span class="ruby-identifier">encrypt</span>(<span class="ruby-identifier">value</span>, <span class="ruby-identifier">encryption_key</span>)
@@ -413,7 +416,7 @@ Returns:
413
416
  <p>@param attrs [Hash] The attributes to be encrypted. @param loggable_attrs [Array&lt;String&gt;] The loggable attributes. @param encryption_key [String] The encryption key. @return [Hash] The encrypted attributes.</p>
414
417
 
415
418
  <div class="method-source-code" id="encrypt_attrs-source">
416
- <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 134</span>
419
+ <pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 137</span>
417
420
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encrypt_attrs</span>(<span class="ruby-identifier">attrs</span>, <span class="ruby-identifier">loggable_attrs</span>, <span class="ruby-identifier">encryption_key</span>)
418
421
  <span class="ruby-identifier">attrs</span> = <span class="ruby-identifier">attrs</span>.<span class="ruby-identifier">slice</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">loggable_attrs</span>)
419
422
  <span class="ruby-identifier">encrypt_attr</span>(<span class="ruby-identifier">attrs</span>, <span class="ruby-identifier">encryption_key</span>)