ar_virtual_field 1.0.2 → 1.0.3

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: cc1842359c967930d4e5a6c9e45c69897d064ed8b35d8a4d5ce9e86985796794
4
- data.tar.gz: ac6c1e0d05446db0ddc88d369bd799ceb384c0a141774ab3c7b43bcb0f3506da
3
+ metadata.gz: 9f6b9d601a90882d8d86e8d4302a3bbb9e3df01747cdafcf8eb977773c09094a
4
+ data.tar.gz: f2b8e6d867cbab39c9f4146c6f2ff7f31b230af9a731d9bd4d8f3a29e2d7de44
5
5
  SHA512:
6
- metadata.gz: 6fbc0e108fc8ccfc8ef5889b11b5b66326cfeb57399c686b93139fbb92b126df8196add0fab124d237291dcbf405d43651057c161d5f533b849495217eb6fcbd
7
- data.tar.gz: ffd519768bc3fcf5f4b7abd5dacd030e6265f1cbaf07d92d7137b7b6aa94f1d02dc8294c86e644ec6a559b71e95891f5c2f23e786051880b63ca11d2086a2b88
6
+ metadata.gz: 4fabf0f3a9821b7e9a936b1b3b1e2f67ffafd201f0a14ea50f0d66d84ddf5f4ad2b726834a9418b682f50d1be46b23c88a07b4faa1b4bc743ccfa771edd60cb6
7
+ data.tar.gz: 9afb9f76f1d61fce21a055e551882d0099493c86cbc98ddfc10f89b61d4d8de89877dbae1ea54366bfd20b8ac4be9d59b55371d15da5525f6190a50dbbecaf89
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ArVirtualField
4
- VERSION = "1.0.2"
4
+ VERSION = "1.0.3"
5
5
  end
@@ -59,7 +59,15 @@ module ArVirtualField
59
59
  default = HelperMethods.wrap_to_lambda(default)
60
60
  end
61
61
 
62
- select_lambda = HelperMethods.wrap_to_lambda(select)
62
+ select = HelperMethods.wrap_to_lambda(select)
63
+
64
+ select_lambda = -> do
65
+ if default
66
+ Arel::Nodes::NamedFunction.new('COALESCE', [select.(), default.()])
67
+ else
68
+ select.()
69
+ end
70
+ end
63
71
 
64
72
  if scope
65
73
  field_name = Arel.sql(HelperMethods.table_with_column(name))
@@ -90,10 +98,6 @@ module ArVirtualField
90
98
  SQL
91
99
  end)
92
100
  else
93
- if default
94
- select_lambda = -> { Arel::Nodes::NamedFunction.new('COALESCE', [select_lambda.(), default.()]) }
95
- end
96
-
97
101
  @ar_virtual_fields[name.to_sym] = -> { select_lambda.() }
98
102
 
99
103
  scope(:"with_#{name}", -> do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ar_virtual_field
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Egorov