spotlight_search 0.3.3 → 0.3.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: b92c3e7bbf1f08608d56519a25d3bfbb89f9f15c3be6a966b8d3f511ef89852f
4
- data.tar.gz: db81f9f85d884545a7af576b5c25f1dde374aeb3d977bcaaaec89095b518d122
3
+ metadata.gz: 646c00400902f5857da5ce10b480cc0c20f4de422997b3b53535782732f574a3
4
+ data.tar.gz: 2933106dbeffb2227ba5d425567768b8ffffcdbc46e69761ce6e5b7d57856efe
5
5
  SHA512:
6
- metadata.gz: 8f2f9550bd462c7766f5386597af63ce6de850ec77810c7066be0b3cb240c632942430a62e74deeac297a72aff33c7cb4b9dd45caed94255c730d40685c19c98
7
- data.tar.gz: 36da0ccdfed1bae3bc5b680ebe31ebdf1269f2a0d37abcef410f044f0aa3057ca6333669b8fd18136a693245cf865ffd4bed78ee9b63e1e5d249091b3d04ed2d
6
+ metadata.gz: f2b656c2b2874b0228ed30de5d9ecbf35093af7416daee9511b4d28cf0b54d706089deb4dc5b62a8980e58348f01ec706110d96a70832556108b27df7e465dec
7
+ data.tar.gz: 292ce3d5b8db57df4cdcd6651e459e71436a86acc02db7ee75cf96faf9a7ab55e278f73fa0553e2a654d2c364bffc1bdb628919484beb294171363d2d3e6e8b7
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- spotlight_search (0.1.9)
4
+ spotlight_search (0.3.5)
5
5
  caxlsx (~> 3.0.1)
6
6
 
7
7
  GEM
@@ -147,4 +147,4 @@ DEPENDENCIES
147
147
  spotlight_search!
148
148
 
149
149
  BUNDLED WITH
150
- 2.1.4
150
+ 2.5.9
@@ -2,11 +2,13 @@
2
2
 
3
3
  module SpotlightSearch::Utils
4
4
  class << self
5
- def serialize_csv_columns(*columns, **hashes)
5
+ def serialize_csv_columns(*columns)
6
+ association_hash = columns.select{|columnable| columnable.class.eql?(Hash)}.last || {}
7
+ parent_table_columns = columns.select{|columnable| columnable.class.eql?(Symbol)}
6
8
  # Turns an arbitrary list of args and kwargs into a list of params to be used in a form
7
9
  # For example, turns SpotlightSearch::Utils.serialize_csv_columns(:a, :b, c: [:d, e: :h], f: :g)
8
10
  # into [:a, :b, "c/d", "c/e/h", "f/g"]
9
- columns.map(&:to_s) + hashes.map do |key, value|
11
+ parent_table_columns.map(&:to_s) + association_hash.map do |key, value|
10
12
  serialize_csv_columns(*value).map do |column|
11
13
  "#{key}/#{column}"
12
14
  end
@@ -1,3 +1,3 @@
1
1
  module SpotlightSearch
2
- VERSION = "0.3.3"
2
+ VERSION = "0.3.5"
3
3
  end
@@ -6,6 +6,8 @@ require 'spotlight_search/utils'
6
6
  require 'spotlight_search/railtie' if defined?(Rails)
7
7
  require 'active_support'
8
8
  require 'active_support/rails'
9
+ require 'ostruct'
10
+
9
11
 
10
12
  module SpotlightSearch
11
13
  extend ActiveSupport::Concern
@@ -21,7 +23,7 @@ module SpotlightSearch
21
23
 
22
24
  module ClassMethods
23
25
  def filter_by(page, filter_params = {}, sort_params = {})
24
- filtered_result = OpenStruct.new
26
+ filtered_result = ::OpenStruct.new
25
27
  sort_column = self.column_names.include?(sort_params[:sort_column]) ? sort_params[:sort_column] : "#{self.table_name}.created_at"
26
28
  sort_direction = %w[asc desc].include?(sort_params[:sort_direction]) ? sort_params[:sort_direction] : "asc"
27
29
  sort_params = {sort_column: sort_column, sort_direction: sort_direction}
@@ -53,7 +55,7 @@ module SpotlightSearch
53
55
  def paginate(page, total_count)
54
56
  page = page.presence || 1
55
57
  per_page = 30
56
- facets = OpenStruct.new # initializing OpenStruct instance
58
+ facets = ::OpenStruct.new # initializing OpenStruct instance
57
59
  facets.total_count = total_count
58
60
  facets.filtered_count = total_count
59
61
  facets.total_pages = (total_count/per_page.to_f).ceil
@@ -24,7 +24,7 @@ Gem::Specification.new do |s|
24
24
  # s.require_paths = ["lib"]
25
25
 
26
26
  s.add_development_dependency "bundler", "~> 2.0"
27
- s.add_development_dependency "rake", "~> 13.0.1"
27
+ s.add_development_dependency "rake", ">= 12.3.3"
28
28
  s.add_development_dependency "rails", "~> 5.2.4.2"
29
29
  s.add_development_dependency "rspec", "~> 3.0"
30
30
  s.add_runtime_dependency 'caxlsx', "~> 3.0.1"
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spotlight_search
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 0.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anbazhagan Palani
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2019-05-29 00:00:00.000000000 Z
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 13.0.1
33
+ version: 12.3.3
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 13.0.1
40
+ version: 12.3.3
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rails
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -132,7 +132,7 @@ homepage: https://github.com/commutatus/spotlight-search
132
132
  licenses:
133
133
  - MIT
134
134
  metadata: {}
135
- post_install_message:
135
+ post_install_message:
136
136
  rdoc_options: []
137
137
  require_paths:
138
138
  - lib
@@ -147,8 +147,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
147
147
  - !ruby/object:Gem::Version
148
148
  version: '0'
149
149
  requirements: []
150
- rubygems_version: 3.0.3
151
- signing_key:
150
+ rubygems_version: 3.5.9
151
+ signing_key:
152
152
  specification_version: 4
153
153
  summary: This gem should help reduce the efforts in the admin panel. It has search,
154
154
  sort and pagination included.