queryko 2.0.4 → 2.0.5

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: 51f819e7bdea393aea4ad03b269cb49f705fc2b8790bc0f496b15e1fd076b62f
4
- data.tar.gz: 5810065a5f38b89cd4d4fb7e8147d112e22eeb5c9d7ca4deae6d6f0b850d8bcf
3
+ metadata.gz: ae05c8dc8e0d5766035aca0ad82633b2c9666a2be89b93e69404088475969614
4
+ data.tar.gz: 8346fb20bbd09ba256848a58d3e538095c58de184a6eae71c588ba3e70faf540
5
5
  SHA512:
6
- metadata.gz: 3bcecefa6ca454d65e6cf38d677e43a9d4acc517369d660ce0aed08741129673920f59804a831fc56010864ac89ac73241fc06a888a886763d2b24c5116bf177
7
- data.tar.gz: db398278f9fd3adf46ae4669f949233df71c623881ee3716aba71fdef41add5cd2709436bdd2f82d5c169ada6ad81faad689238edc1a62e9dd5df53b7f24b20c
6
+ metadata.gz: f7bb51d706a010bf45f35bb9b77e5d5c12593499d7fc44033d4d37e5a794a613264bcf721a2667466c487898a08083b83dfd841f832e97097d6b85c49087783c
7
+ data.tar.gz: 1294c45525f7ecc1115e40d8ff4741409469e194289aaa3aa7be4598adc964db0feda8e630605410a5a66d0b91fb43e93b4ee61020487de5da72b3b7c0a32bde
data/lib/queryko/able.rb CHANGED
@@ -6,11 +6,7 @@ module Queryko
6
6
  class_attribute :defined_filters, default: {}, instance_writer: false
7
7
  class_attribute :features, default: {}, instance_writer: false
8
8
  class_attribute :fields, default: {}, instance_writer: false
9
- self.defined_filters = {}
10
- self.features = {}
11
- self.fields = {}
12
-
13
- private
9
+ class_attribute :default_params, default: {}
14
10
  end
15
11
  end
16
12
 
@@ -28,6 +24,17 @@ module Queryko
28
24
  self.fields[filt.field.to_sym] ||= Array.new
29
25
  self.fields[filt.field.to_sym].push(filt)
30
26
  end
27
+
28
+ def default_param(sym, value)
29
+ self.default_params[sym] = value
30
+ end
31
+
32
+ def inherited(subclass)
33
+ subclass.defined_filters = self.defined_filters.clone || {}
34
+ subclass.features = self.features.clone || {}
35
+ subclass.fields = self.fields.clone || {}
36
+ subclass.default_params = self.default_params.clone || {}
37
+ end
31
38
  end
32
39
  end
33
40
  end
data/lib/queryko/base.rb CHANGED
@@ -16,16 +16,10 @@ module Queryko
16
16
 
17
17
  attr_reader :params
18
18
 
19
- class_attribute :defaults, default: {}
20
-
21
- def self.default(sym, value)
22
- self.defaults[sym] = value
23
- end
24
19
 
25
20
  def initialize(params = {}, rel=nil)
26
- self.defaults ||= {} # Ensure an empty hash. It keeps on raising an error
27
21
  @relation = @original_relation = rel || self.class.model_class.all
28
- @params = self.defaults.merge(params)
22
+ @params = self.default_params.merge(params)
29
23
  end
30
24
 
31
25
  def self.call(params = {}, rel = nil)
@@ -1,3 +1,3 @@
1
1
  module Queryko
2
- VERSION = "2.0.4"
2
+ VERSION = "2.0.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: queryko
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.4
4
+ version: 2.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joseph Nelson Valeros
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-06-12 00:00:00.000000000 Z
11
+ date: 2019-10-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord