cursor_pagination 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0975daf496d378c472103614276ccbcb01b30c9c
4
- data.tar.gz: 054a13ee7d3149d8b0174b1ff776219c1be0443c
3
+ metadata.gz: 160e8afd510f2789a414f3b860ae6d59c5c626c4
4
+ data.tar.gz: b49030bc3ec98ec9091fcfcabe9184d31d68aec7
5
5
  SHA512:
6
- metadata.gz: ce77e48e37546b7c6192ab9f5e5a4b25f10b4dbfe1f78d87d9e24a9b9608cc96d02475b4f3adc1924c607197d1c443c88e169bf5da12ac0ce0d14d17b6d3cfee
7
- data.tar.gz: 9e6024bf149e93ef1762e56964145172a892cb4ece9ea8c349bd3cead53330be9b3cc30dcf98927209c883c5159aab4a4f468496072c451d5f8ba5fbba084af0
6
+ metadata.gz: 97ce4b2fb4ecdfb51bb9c097fcbcdc6db5b6bd5e4f62619d2046349a9e803aa3a9586d9bf4ac0bd14ae438a7ba8b0ad41d4b6c5dab60f9ad50fac47b63014531
7
+ data.tar.gz: db5fe954866b988670f3bfdb2a075e6fe656f674edd652315f7c4fb25768f17079d4e189690a4ba9e23f90a3189e308aff5ab67fc91fb800d1a950056dc31561
@@ -13,10 +13,10 @@ Gem::Specification.new do |spec|
13
13
  spec.homepage = "https://github.com/Kukunin/cursor_pagination"
14
14
  spec.license = "MIT"
15
15
 
16
- spec.add_dependency "activerecord", ['>= 3.0.0']
16
+ spec.add_dependency "activerecord", ['>= 3.1']
17
17
  spec.add_development_dependency "rspec-rails"
18
18
  spec.add_development_dependency "sqlite3-ruby"
19
- spec.add_development_dependency "database_cleaner", ['< 1.1.1']
19
+ spec.add_development_dependency "database_cleaner", ['< 1.1.0']
20
20
 
21
21
  spec.files = `git ls-files`.split($/)
22
22
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
@@ -17,17 +17,18 @@ module CursorPagination
17
17
  @cursor_options
18
18
  end
19
19
 
20
- scope :cursor, Proc.new { |cursor, options|
21
- options = { column: :id, reverse: false }.merge(options || {})
20
+ def self.cursor(cursor, options = {})
21
+ options.reverse_merge! column: :id, reverse: false
22
+ scoped_method = ActiveRecord::VERSION::STRING < '4.0' ? :scoped : :all
22
23
  @current_cursor = cursor
23
- @origin_scope = self.all
24
+ @origin_scope = self.send scoped_method
24
25
  @cursor_options = options
25
26
 
26
27
  scope = @origin_scope
27
28
  scope = scope.where("#{options[:column]} #{options[:reverse] ? '<' : '>'} ?", cursor) if cursor
28
- scope.limit(25)
29
- } do
30
- include CursorPagination::PageScopeMethods
29
+ scope = scope.limit(25)
30
+
31
+ scope.extending(CursorPagination::PageScopeMethods)
31
32
  end
32
33
  end
33
34
  end
@@ -1,3 +1,3 @@
1
1
  module CursorPagination
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cursor_pagination
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergey Kukunin
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '>='
18
18
  - !ruby/object:Gem::Version
19
- version: 3.0.0
19
+ version: '3.1'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '>='
25
25
  - !ruby/object:Gem::Version
26
- version: 3.0.0
26
+ version: '3.1'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rspec-rails
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - <
60
60
  - !ruby/object:Gem::Version
61
- version: 1.1.1
61
+ version: 1.1.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - <
67
67
  - !ruby/object:Gem::Version
68
- version: 1.1.1
68
+ version: 1.1.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: bundler
71
71
  requirement: !ruby/object:Gem::Requirement