smart_paginate 0.2.2 → 0.2.3

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
  SHA256:
3
- metadata.gz: c1d0bf198bdca8ee540dfa129c6c54020251852535dca192e576e0c4511eb4c4
4
- data.tar.gz: e4b43b7675ea1ec0a7c0f1dd191c943c4931008e7eff442a6716592d56b12dd6
3
+ metadata.gz: 9d8041e61e6e5d83f41479eececc725653fa31d5a41b0f722dda1e35370849b5
4
+ data.tar.gz: 92008b68acb9accac3cf83a8b62c90029daa178a38d6e00e2998dd32c92ae873
5
5
  SHA512:
6
- metadata.gz: 9cdbed5624c8cba17ee254e058926b0cafbe72fce5168f8ddfe13d007df4eb94a9add25dc557329061c9fd03d94c7244281d2eb1798de3d619174cb09774a3f8
7
- data.tar.gz: a5da9303fa0190d2c427ecf2608b6093b2cde4d0e29bb91f4de3e50b7b9e3cfb37c50ea1e7f86730dac741f94551db7b183517943e3ed47ee188ca64904dfa0f
6
+ metadata.gz: 91af3d19e02da4941031ed8e8d0c89997d5ec6492b490f17b820f398bf515542dd70210b27393e0104c12b381a26e33e0e9c026d7d5e5702e6ac4f2146f4b62b
7
+ data.tar.gz: 59c94c291a8a4837f00df962a34db5b53252ad64b031cea8c3ec5c04410ace086f945af73945fd1b0b546aba2954c92797f44e38015af237a654885b30fb1212
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # SmartPaginate
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/smart_paginate.svg)](https://badge.fury.io/rb/smart_paginate)
4
- [![Build Status](https://travis-ci.org/ppostma/smart_paginate.svg?branch=master)](https://travis-ci.org/ppostma/smart_paginate)
4
+ [![Build Status](https://github.com/ppostma/smart_paginate/actions/workflows/test.yml/badge.svg)](https://github.com/ppostma/smart_paginate/actions)
5
5
  [![Code Climate](https://codeclimate.com/github/ppostma/smart_paginate/badges/gpa.svg)](https://codeclimate.com/github/ppostma/smart_paginate)
6
6
 
7
7
  Simple, smart and clean pagination extension for Active Record and plain Ruby Arrays:
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "smart_paginate/paginate"
2
4
  require "active_support/concern"
3
5
  require "active_record"
@@ -66,7 +68,7 @@ module SmartPaginate
66
68
  end
67
69
 
68
70
  def total_pages
69
- total_entries > 0 ? (total_entries / per_page.to_f).ceil : 1
71
+ total_entries.positive? ? (total_entries / per_page.to_f).ceil : 1
70
72
  end
71
73
 
72
74
  def total_entries
@@ -74,7 +76,7 @@ module SmartPaginate
74
76
  load # make sure we have determined the number of fetched records
75
77
 
76
78
  # if we know that there are no more records, then we can calculate total_entries
77
- if (current_page == 1 || @number_of_records > 0) && @number_of_records <= per_page
79
+ if (current_page == 1 || @number_of_records.positive?) && @number_of_records <= per_page
78
80
  offset_value + @number_of_records
79
81
  else
80
82
  rel = except(:limit, :offset)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module SmartPaginate
2
4
  class Paginate
3
5
  attr_reader :current_page, :per_page
@@ -15,7 +17,7 @@ module SmartPaginate
15
17
 
16
18
  def convert(value, default_value)
17
19
  value = value.to_i
18
- value > 0 ? value : default_value
20
+ value.positive? ? value : default_value
19
21
  end
20
22
  end
21
23
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "smart_paginate/paginate"
2
4
 
3
5
  module SmartPaginate
@@ -8,7 +10,7 @@ module SmartPaginate
8
10
  page = SmartPaginate::Paginate.new(options.fetch(:page), options[:per_page])
9
11
 
10
12
  if page.offset <= length
11
- array = self.slice(page.offset, page.per_page)
13
+ array = PaginatingArray.new(self.slice(page.offset, page.per_page))
12
14
  else
13
15
  # out of bounds, just create an empty array
14
16
  array = PaginatingArray.new
@@ -37,7 +39,7 @@ module SmartPaginate
37
39
  end
38
40
 
39
41
  def total_pages
40
- total_entries > 0 ? (total_entries / per_page.to_f).ceil : 1
42
+ total_entries.positive? ? (total_entries / per_page.to_f).ceil : 1
41
43
  end
42
44
  end
43
45
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module SmartPaginate
2
- VERSION = "0.2.2".freeze
4
+ VERSION = "0.2.3"
3
5
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "smart_paginate/active_record_extension"
2
4
  require "smart_paginate/paginating_array"
3
5
  require "smart_paginate/version"
metadata CHANGED
@@ -1,27 +1,27 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smart_paginate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Postma
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-02-25 00:00:00.000000000 Z
11
+ date: 2022-02-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.12'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.12'
27
27
  - !ruby/object:Gem::Dependency
@@ -30,54 +30,42 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '13.0'
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: '10.0'
40
+ version: '13.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 3.4.0
48
- - - ">="
49
- - !ruby/object:Gem::Version
50
- version: 3.4.0
47
+ version: 3.10.0
51
48
  type: :development
52
49
  prerelease: false
53
50
  version_requirements: !ruby/object:Gem::Requirement
54
51
  requirements:
55
52
  - - "~>"
56
53
  - !ruby/object:Gem::Version
57
- version: 3.4.0
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- version: 3.4.0
54
+ version: 3.10.0
61
55
  - !ruby/object:Gem::Dependency
62
- name: sqlite3
56
+ name: rubocop
63
57
  requirement: !ruby/object:Gem::Requirement
64
58
  requirements:
65
59
  - - "~>"
66
60
  - !ruby/object:Gem::Version
67
- version: '1.3'
68
- - - "<"
69
- - !ruby/object:Gem::Version
70
- version: '1.4'
61
+ version: 0.81.0
71
62
  type: :development
72
63
  prerelease: false
73
64
  version_requirements: !ruby/object:Gem::Requirement
74
65
  requirements:
75
66
  - - "~>"
76
67
  - !ruby/object:Gem::Version
77
- version: '1.3'
78
- - - "<"
79
- - !ruby/object:Gem::Version
80
- version: '1.4'
68
+ version: 0.81.0
81
69
  - !ruby/object:Gem::Dependency
82
70
  name: activerecord
83
71
  requirement: !ruby/object:Gem::Requirement
@@ -100,32 +88,19 @@ executables: []
100
88
  extensions: []
101
89
  extra_rdoc_files: []
102
90
  files:
103
- - ".gitignore"
104
- - ".rspec"
105
- - ".rubocop.yml"
106
- - ".travis.yml"
107
- - Gemfile
108
91
  - LICENSE.txt
109
92
  - README.md
110
- - Rakefile
111
- - gemfiles/Gemfile.active_record-4.0
112
- - gemfiles/Gemfile.active_record-4.1
113
- - gemfiles/Gemfile.active_record-4.2
114
- - gemfiles/Gemfile.active_record-5.0
115
- - gemfiles/Gemfile.active_record-5.1
116
- - gemfiles/Gemfile.active_record-5.2
117
- - gemfiles/Gemfile.active_record-edge
118
93
  - lib/smart_paginate.rb
119
94
  - lib/smart_paginate/active_record_extension.rb
120
95
  - lib/smart_paginate/paginate.rb
121
96
  - lib/smart_paginate/paginating_array.rb
122
97
  - lib/smart_paginate/version.rb
123
- - smart_paginate.gemspec
124
98
  homepage: https://github.com/ppostma/smart_paginate
125
99
  licenses:
126
100
  - MIT
127
- metadata: {}
128
- post_install_message:
101
+ metadata:
102
+ rubygems_mfa_required: 'true'
103
+ post_install_message:
129
104
  rdoc_options: []
130
105
  require_paths:
131
106
  - lib
@@ -140,9 +115,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
140
115
  - !ruby/object:Gem::Version
141
116
  version: '0'
142
117
  requirements: []
143
- rubyforge_project:
144
- rubygems_version: 2.7.6
145
- signing_key:
118
+ rubygems_version: 3.3.7
119
+ signing_key:
146
120
  specification_version: 4
147
121
  summary: Simple, smart and clean pagination extension
148
122
  test_files: []
data/.gitignore DELETED
@@ -1,11 +0,0 @@
1
- /.bundle/
2
- /.yardoc
3
- /Gemfile.lock
4
- /_yardoc/
5
- /coverage/
6
- /doc/
7
- /pkg/
8
- /spec/reports/
9
- /tmp/
10
- .ruby-version
11
- .ruby-gemset
data/.rspec DELETED
@@ -1,2 +0,0 @@
1
- --format documentation
2
- --color
data/.rubocop.yml DELETED
@@ -1,39 +0,0 @@
1
- AllCops:
2
- TargetRubyVersion: 2.2
3
- DisplayCopNames: true
4
- DisplayStyleGuide: true
5
- Exclude:
6
- - 'gemfiles/vendor/**/*'
7
- - 'lib/smart_paginate/version.rb'
8
-
9
- Metrics/BlockLength:
10
- Exclude:
11
- - 'spec/**/*.rb'
12
-
13
- Metrics/LineLength:
14
- Enabled: false
15
-
16
- Style/BlockComments:
17
- Exclude:
18
- - 'spec/**/*.rb'
19
-
20
- Style/ConditionalAssignment:
21
- Enabled: false
22
-
23
- Style/Documentation:
24
- Enabled: false
25
-
26
- Style/GuardClause:
27
- Enabled: false
28
-
29
- Style/IfUnlessModifier:
30
- Enabled: false
31
-
32
- Style/RedundantSelf:
33
- Enabled: false
34
-
35
- Style/StringLiterals:
36
- Enabled: false
37
-
38
- Style/SymbolArray:
39
- Enabled: false
data/.travis.yml DELETED
@@ -1,37 +0,0 @@
1
- language: ruby
2
- sudo: false
3
- cache: bundler
4
- before_install:
5
- - gem update --system
6
- - gem install bundler -v '< 2'
7
- rvm:
8
- - 2.3.8
9
- - 2.4.5
10
- - 2.5.3
11
- - 2.6.1
12
- gemfile:
13
- - gemfiles/Gemfile.active_record-4.0
14
- - gemfiles/Gemfile.active_record-4.1
15
- - gemfiles/Gemfile.active_record-4.2
16
- - gemfiles/Gemfile.active_record-5.0
17
- - gemfiles/Gemfile.active_record-5.1
18
- - gemfiles/Gemfile.active_record-5.2
19
- - gemfiles/Gemfile.active_record-edge
20
- matrix:
21
- exclude:
22
- - rvm: 2.4.5
23
- gemfile: gemfiles/Gemfile.active_record-4.0
24
- - rvm: 2.5.3
25
- gemfile: gemfiles/Gemfile.active_record-4.0
26
- - rvm: 2.6.1
27
- gemfile: gemfiles/Gemfile.active_record-4.0
28
- - rvm: 2.4.5
29
- gemfile: gemfiles/Gemfile.active_record-4.1
30
- - rvm: 2.5.3
31
- gemfile: gemfiles/Gemfile.active_record-4.1
32
- - rvm: 2.6.1
33
- gemfile: gemfiles/Gemfile.active_record-4.1
34
- - rvm: 2.3.8
35
- gemfile: gemfiles/Gemfile.active_record-edge
36
- - rvm: 2.4.5
37
- gemfile: gemfiles/Gemfile.active_record-edge
data/Gemfile DELETED
@@ -1,6 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in smart_paginate.gemspec
4
- gemspec
5
-
6
- gem 'rubocop', '~> 0.62.0', group: :test
data/Rakefile DELETED
@@ -1,8 +0,0 @@
1
- require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
3
- require "rubocop/rake_task"
4
-
5
- RSpec::Core::RakeTask.new(:spec)
6
- RuboCop::RakeTask.new(:rubocop)
7
-
8
- task default: [:spec, :rubocop]
@@ -1,8 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in smart_paginate.gemspec
4
- gemspec path: '..'
5
-
6
- gem 'activerecord', '~> 4.0.0'
7
-
8
- gem 'rubocop', '~> 0.62.0', group: :test
@@ -1,8 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in smart_paginate.gemspec
4
- gemspec path: '..'
5
-
6
- gem 'activerecord', '~> 4.1.0'
7
-
8
- gem 'rubocop', '~> 0.62.0', group: :test
@@ -1,8 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in smart_paginate.gemspec
4
- gemspec path: '..'
5
-
6
- gem 'activerecord', '~> 4.2.0'
7
-
8
- gem 'rubocop', '~> 0.62.0', group: :test
@@ -1,8 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in smart_paginate.gemspec
4
- gemspec path: '..'
5
-
6
- gem 'activerecord', '~> 5.0.0'
7
-
8
- gem 'rubocop', '~> 0.62.0', group: :test
@@ -1,8 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in smart_paginate.gemspec
4
- gemspec path: '..'
5
-
6
- gem 'activerecord', '~> 5.1.0'
7
-
8
- gem 'rubocop', '~> 0.62.0', group: :test
@@ -1,8 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in smart_paginate.gemspec
4
- gemspec path: '..'
5
-
6
- gem 'activerecord', '~> 5.2.0'
7
-
8
- gem 'rubocop', '~> 0.62.0', group: :test
@@ -1,8 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in smart_paginate.gemspec
4
- gemspec path: '..'
5
-
6
- gem 'activerecord', git: 'https://github.com/rails/rails.git'
7
-
8
- gem 'rubocop', '~> 0.62.0', group: :test
@@ -1,27 +0,0 @@
1
- lib = File.expand_path('lib', __dir__)
2
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
- require 'smart_paginate/version'
4
-
5
- Gem::Specification.new do |spec|
6
- spec.name = "smart_paginate"
7
- spec.version = SmartPaginate::VERSION
8
- spec.authors = ["Peter Postma"]
9
- spec.email = ["peter.postma@gmail.com"]
10
-
11
- spec.summary = "Simple, smart and clean pagination extension"
12
- spec.description = "Simple, smart and clean pagination extension for Active Record and plain Ruby Arrays."
13
- spec.homepage = "https://github.com/ppostma/smart_paginate"
14
- spec.license = "MIT"
15
-
16
- spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
17
- spec.bindir = "exe"
18
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
19
- spec.require_paths = ["lib"]
20
-
21
- spec.add_development_dependency "bundler", "~> 1.12"
22
- spec.add_development_dependency "rake", "~> 10.0"
23
- spec.add_development_dependency "rspec", "~> 3.4.0", ">= 3.4.0"
24
- spec.add_development_dependency "sqlite3", "~> 1.3", "< 1.4"
25
-
26
- spec.add_dependency "activerecord", ">= 4.0.0"
27
- end