effective_datatables 4.33.0 → 4.33.1
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4cd8c154865bcef7dda9eb32691cab1b3b6d7e304b8ddff6813fa2df1394da5f
|
4
|
+
data.tar.gz: ab4471b5df4f1fabadfa418f1cb8f9b5a5846895653fd76fa9a03e9b8bcdd0dd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8b9a8106584a864a1a11c315c07f0cc473847f7292fb07b21d1f915fda0aadaea1a64fb242fdd8f511bb2a931796be841c571c4967dcd846e829df06eaee3533
|
7
|
+
data.tar.gz: 05a640da917ab52ead1f88e91868152e20949143a975000ad838986b38dfdea67fa1087de69329f6aef7951090a729daa8019608fde69ade3ae360194fa445d8
|
@@ -160,9 +160,12 @@ module Effective
|
|
160
160
|
columns.each do |name, opts|
|
161
161
|
# Normalize the given opts[:search] into a Hash
|
162
162
|
# Take special note of the opts[:search] as we need to collapse it when an ActiveRecord::Relation
|
163
|
-
|
164
|
-
|
163
|
+
|
164
|
+
if opts[:search] == false || attributes[:searchable] == false
|
165
165
|
opts[:search] = { as: :null }; next
|
166
|
+
end
|
167
|
+
|
168
|
+
case opts[:search]
|
166
169
|
when Symbol
|
167
170
|
opts[:search] = { as: opts[:search] }
|
168
171
|
when Array, ActiveRecord::Relation
|
@@ -176,10 +179,12 @@ module Effective
|
|
176
179
|
# Now lets deal with the opts[:search] hash itself
|
177
180
|
search = opts[:search]
|
178
181
|
|
182
|
+
# Adjust based on shorthand search: :select syntax
|
183
|
+
search[:as] ||= :select if search.key?(:collection)
|
184
|
+
search[:value] ||= search.delete(:selected) if search.key?(:selected)
|
185
|
+
|
179
186
|
# Parameterize collection
|
180
|
-
if
|
181
|
-
# Nothing to do
|
182
|
-
elsif search[:collection].kind_of?(ActiveRecord::Relation)
|
187
|
+
if search[:collection].kind_of?(ActiveRecord::Relation)
|
183
188
|
search[:collection] = search[:collection].map { |obj| [obj.to_s, obj.id] }
|
184
189
|
elsif search[:collection].kind_of?(Array) && search[:collection].first.kind_of?(ActiveRecord::Base)
|
185
190
|
search[:collection] = search[:collection].map { |obj| [obj.to_s, obj.id] }
|
@@ -187,17 +192,11 @@ module Effective
|
|
187
192
|
search[:collection] = search[:collection]
|
188
193
|
end
|
189
194
|
|
190
|
-
search[:as] ||= :select if search.key?(:collection)
|
191
|
-
search[:value] ||= search.delete(:selected) if search.key?(:selected)
|
192
|
-
|
193
195
|
# Merge with defaults
|
194
196
|
search_resource = [opts[:resource], effective_resource, fallback_effective_resource].compact
|
195
197
|
search_resource = search_resource.find { |res| res.klass.present? } || search_resource.first
|
196
198
|
|
197
|
-
|
198
|
-
if attributes[:searchable] == false
|
199
|
-
# Nothing to do
|
200
|
-
elsif search[:as] == :string
|
199
|
+
if search[:as] == :string
|
201
200
|
# Nothing to do. We're just a string search.
|
202
201
|
elsif search[:as] == :select && search[:collection].kind_of?(Array)
|
203
202
|
# Nothing to do. We already loaded the custom parameterized collection above.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: effective_datatables
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.33.
|
4
|
+
version: 4.33.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Code and Effect
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-04-
|
11
|
+
date: 2025-04-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|