esse-active_record 0.3.2 → 0.3.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/Gemfile.lock +3 -3
- data/ci/Gemfile.rails-5.2.lock +1 -1
- data/ci/Gemfile.rails-6.0.lock +1 -1
- data/ci/Gemfile.rails-6.1.lock +1 -1
- data/ci/Gemfile.rails-7.0.lock +1 -1
- data/ci/Gemfile.rails-7.1.lock +1 -1
- data/lib/esse/active_record/callbacks/indexing_on_update.rb +5 -2
- data/lib/esse/active_record/model.rb +8 -1
- data/lib/esse/active_record/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 36873df931f4f1169fefa6e411417b4639218af434ccad541d851cb3a060dcfe
|
4
|
+
data.tar.gz: 500b9266326fd5bea838c09b06f836e6f3f20a9c7482df1dd392ab64759ac71d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cac26d6c6d3c13e0081989925e695b64beaf968409644ed3b45ca8a771c7bc0df3fc22a35762adb94a0b1505e82df3f4541eaf18c3dffc45766867f2bb7428f0
|
7
|
+
data.tar.gz: a65f7bbb4329e39ebc463f2b6342c113fcf42f444879fdefe765db37aabd30fb49905b2521533d323765af44643fca5c27c2156de891bc1fbfe10a00cb3653a6
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
esse-active_record (0.3.
|
4
|
+
esse-active_record (0.3.4)
|
5
5
|
activerecord (>= 4.2, < 8)
|
6
6
|
esse (>= 0.3.0)
|
7
7
|
|
@@ -39,7 +39,7 @@ GEM
|
|
39
39
|
elasticsearch-transport (7.17.10)
|
40
40
|
faraday (>= 1, < 3)
|
41
41
|
multi_json
|
42
|
-
esse (0.3.
|
42
|
+
esse (0.3.1)
|
43
43
|
multi_json
|
44
44
|
thor (>= 0.19)
|
45
45
|
esse-rspec (0.0.6)
|
@@ -142,7 +142,7 @@ DEPENDENCIES
|
|
142
142
|
awesome_print
|
143
143
|
dotenv
|
144
144
|
elasticsearch (~> 7.17, >= 7.17.10)
|
145
|
-
esse (~> 0.3.
|
145
|
+
esse (~> 0.3.1)
|
146
146
|
esse-active_record!
|
147
147
|
esse-rspec (~> 0.0.6)
|
148
148
|
pry
|
data/ci/Gemfile.rails-5.2.lock
CHANGED
data/ci/Gemfile.rails-6.0.lock
CHANGED
data/ci/Gemfile.rails-6.1.lock
CHANGED
data/ci/Gemfile.rails-7.0.lock
CHANGED
data/ci/Gemfile.rails-7.1.lock
CHANGED
@@ -19,8 +19,11 @@ module Esse::ActiveRecord
|
|
19
19
|
update_document(document)
|
20
20
|
return true unless document.routing
|
21
21
|
|
22
|
-
prev_record = model.class.new
|
23
|
-
|
22
|
+
prev_record = model.class.new
|
23
|
+
model.attributes.merge(model.previous_changes.transform_values(&:first)).each do |key, value|
|
24
|
+
prev_record[key] = value
|
25
|
+
end
|
26
|
+
prev_document = repo.serialize(prev_record.tap(&:readonly!))
|
24
27
|
|
25
28
|
return true unless prev_document
|
26
29
|
return true if [prev_document.id, prev_document.routing].include?(nil)
|
@@ -14,7 +14,14 @@ module Esse
|
|
14
14
|
|
15
15
|
def esse_callback(index_repo_name, operation_name, on: %i[create update destroy], **options, &block)
|
16
16
|
@esse_callbacks = esse_callbacks.dup
|
17
|
-
|
17
|
+
cb_if = options.delete(:if)
|
18
|
+
cb_unless = options.delete(:unless)
|
19
|
+
if_enabled = -> {
|
20
|
+
(cb_if.nil? || (cb_if.respond_to?(:call) ? instance_exec(&cb_if) : send(cb_if))) &&
|
21
|
+
(cb_unless.nil? || (cb_unless.respond_to?(:call) ? !instance_exec(&cb_unless) : !send(cb_unless))) &&
|
22
|
+
Esse::ActiveRecord::Hooks.enabled?(index_repo_name) &&
|
23
|
+
Esse::ActiveRecord::Hooks.enabled_for_model?(self.class, index_repo_name)
|
24
|
+
}
|
18
25
|
|
19
26
|
Array(on).each do |event|
|
20
27
|
identifier, klass = Esse::ActiveRecord::Callbacks.fetch!(operation_name, event)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: esse-active_record
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marcos G. Zimmermann
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-07-
|
11
|
+
date: 2024-07-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: esse
|