bridgetown-paginate 0.21.2 → 1.0.0.alpha2

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: 45369a416f343109e2bdc1ffe5a67996100127813567b0874c207dd10ff86282
4
- data.tar.gz: a7ef8b903febea7709b7e7af642e98b454bf464a50acc7f2a6c09f068d5b8431
3
+ metadata.gz: 7f4ddd4a70ec92776ef3aa0ef66b3962795bed297e7a9dc82823254b9ed0192a
4
+ data.tar.gz: c8f3a2c8df7fc1fcc53cc5dff9a55241bbdba95f9779fc350ab11caaece8fce6
5
5
  SHA512:
6
- metadata.gz: 0b719ca33f468ee9f8ba22d372c96810076d6b729d96f0e95bcdd0efad982ec9a168c0c9026c5b6556d77826ac684441a5759a84afd4b45b55acc9cc3ab80e84
7
- data.tar.gz: 1347ab6fb4fa5ab2ee4fceed385fbf5feb03b7d536556bb300d146397aef37656de164f7f6d066355265a338564c7b5c675344d40464d8edb266d9c982818815
6
+ metadata.gz: fe5262a059bb676c9c16f9d81c50cf3b006319da0c6fe28aeba1c6b1faaec84b0b8e158d6e15b4719b20c39e249222a2a54cef12d1c88c342079572d5778ac42
7
+ data.tar.gz: cfda5839ca555de2c8bb99a1639656bbb26a6c0074b99491db9469e4f451b3cdeb9cfb48a98d0fdad035802199bb800799bafe963cbe39e767ed16d59ac8650c
data/.rubocop.yml CHANGED
@@ -2,9 +2,8 @@
2
2
  inherit_from: ../.rubocop.yml
3
3
 
4
4
  AllCops:
5
- Include:
6
- - lib/**/*.rb
7
- - spec/**/*.rb
5
+ Exclude:
6
+ - "*.gemspec"
8
7
 
9
8
  Bridgetown/NoPutsAllowed:
10
9
  Exclude:
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
8
8
  spec.author = "Bridgetown Team"
9
9
  spec.email = "maintainers@bridgetownrb.com"
10
10
  spec.summary = "A Bridgetown plugin to add pagination support for posts and collection indices."
11
- spec.homepage = "https://github.com/bridgetownrb/bridgetown/tree/master/bridgetown-paginate"
11
+ spec.homepage = "https://github.com/bridgetownrb/bridgetown/tree/main/bridgetown-paginate"
12
12
  spec.license = "MIT"
13
13
 
14
14
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r!^(test|script|spec|features)/!) }
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # Handles Generated Pages
4
- Bridgetown::Hooks.register :pages, :post_init, reloadable: false do |page|
4
+ Bridgetown::Hooks.register :generated_pages, :post_init, reloadable: false do |page|
5
5
  if page.class != Bridgetown::Paginate::PaginationPage &&
6
6
  page.site.config.dig("pagination", "enabled")
7
7
  data = page.data.with_dot_access
@@ -32,19 +32,18 @@ module Bridgetown
32
32
  DEFAULT,
33
33
  site.config["pagination"] || {}
34
34
  )
35
- default_config["collection"] = "posts" unless site.uses_resource?
36
35
 
37
36
  # If disabled then simply quit
38
37
  unless default_config["enabled"]
39
38
  Bridgetown.logger.info "Pagination:", "disabled. Enable in site config" \
40
- " with pagination:\\n enabled: true"
39
+ " with pagination:\\n enabled: true"
41
40
  return
42
41
  end
43
42
 
44
43
  Bridgetown.logger.debug "Pagination:", "Starting"
45
44
 
46
45
  # Get all matching pages in the site found by the init hooks, and ensure they're
47
- # still in the site.pages array
46
+ # still in the site.generated_pages array
48
47
  templates = self.class.matching_templates.select do |page|
49
48
  site.generated_pages.include?(page) || site.resources.include?(page)
50
49
  end
@@ -96,18 +95,19 @@ module Bridgetown
96
95
  if page_to_remove.is_a?(Bridgetown::Resource::Base)
97
96
  page_to_remove.collection.resources.delete(page_to_remove)
98
97
  else
99
- site.pages.delete(page_to_remove)
98
+ site.generated_pages.delete(page_to_remove)
100
99
  end
101
100
  end
102
101
 
103
102
  # Create a proc that will delegate logging
104
103
  # Decoupling Bridgetown specific logging
105
104
  logging_lambda = ->(message, type = "info") do
106
- if type == "debug"
105
+ case type
106
+ when "debug"
107
107
  Bridgetown.logger.debug "Pagination:", message.to_s
108
- elsif type == "error"
108
+ when "error"
109
109
  Bridgetown.logger.error "Pagination:", message.to_s
110
- elsif type == "warn"
110
+ when "warn"
111
111
  Bridgetown.logger.warn "Pagination:", message.to_s
112
112
  else
113
113
  Bridgetown.logger.info "Pagination:", message.to_s
@@ -7,7 +7,7 @@ module Bridgetown
7
7
  # filtering said collections when requested by the defined filters.
8
8
  #
9
9
  class PaginationIndexer
10
- @cached_index = {}
10
+ @cached_index = {}.compare_by_identity
11
11
 
12
12
  class << self
13
13
  attr_accessor :cached_index
@@ -53,10 +53,8 @@ module Bridgetown
53
53
  end
54
54
  end
55
55
 
56
- unless cached_index[all_documents.object_id].is_a?(Hash)
57
- cached_index[all_documents.object_id] = {}
58
- end
59
- cached_index[all_documents.object_id][index_key] = index
56
+ cached_index[all_documents] = {} unless cached_index[all_documents].is_a?(Hash)
57
+ cached_index[all_documents][index_key] = index
60
58
  index
61
59
  end
62
60
 
@@ -12,7 +12,7 @@ module Bridgetown
12
12
  @logging_lambda = nil
13
13
  # The lambda used to create pages and add them to the site
14
14
  @page_add_lambda = nil
15
- # Lambda to remove a page from the site.pages collection
15
+ # Lambda to remove a page
16
16
  @page_remove_lambda = nil
17
17
  # Lambda to get all documents/posts in a particular collection (by name)
18
18
  @collection_by_name_lambda = nil
@@ -32,8 +32,11 @@ module Bridgetown
32
32
  # rubocop:disable Metrics/BlockLength
33
33
  def run(default_config, templates, site_title) # rubocop:todo Metrics/AbcSize
34
34
  if templates.size.to_i <= 0
35
- @logging_lambda.call "is enabled in the config, but no paginated pages found." \
36
- " Add 'pagination:\\n collection: <label>' to the front-matter of a page.", "warn"
35
+ @logging_lambda.call(
36
+ "is enabled in the config, but no paginated pages found." \
37
+ " Add 'pagination:\\n collection: <label>' to the front-matter of a page.",
38
+ "warn"
39
+ )
37
40
  return
38
41
  end
39
42
 
@@ -50,15 +53,20 @@ module Bridgetown
50
53
  template_config = Bridgetown::Utils.deep_merge_hashes(
51
54
  default_config,
52
55
  template.data["pagination"] || template.data["paginate"] || {}
53
- )
56
+ ).tap do |config|
57
+ config["collection"] = config["collection"].to_s if config["collection"].is_a?(Symbol)
58
+ config["category"] = config["category"].to_s if config["category"].is_a?(Symbol)
59
+ config["tag"] = config["tag"].to_s if config["tag"].is_a?(Symbol)
60
+ config["locale"] = config["locale"].to_s if config["locale"].is_a?(Symbol)
61
+ end
54
62
 
55
63
  # Is debugging enabled on the page level
56
64
  @debug = template_config["debug"]
57
65
  _debug_print_config_info(template_config, template.path)
58
66
 
59
- next if template_config["enabled"] == false
67
+ next unless template_config["enabled"]
60
68
 
61
- @logging_lambda.call "found page: " + template.path, "debug" unless @debug
69
+ @logging_lambda.call "found page: #{template.path}", "debug" unless @debug
62
70
 
63
71
  # Request all documents in all collections that the user has requested
64
72
  all_posts = get_docs_in_collections(template_config["collection"], template)
@@ -149,34 +157,34 @@ module Bridgetown
149
157
  r = 20
150
158
  f = "Pagination: ".rjust(20)
151
159
  # Debug print the config
152
- if @debug
153
- puts f + "----------------------------"
154
- puts f + "Page: " + page_path.to_s
155
- puts f + " Active configuration"
156
- puts f + " Enabled: ".ljust(r) + config["enabled"].to_s
157
- puts f + " Items per page: ".ljust(r) + config["per_page"].to_s
158
- puts f + " Permalink: ".ljust(r) + config["permalink"].to_s
159
- puts f + " Title: ".ljust(r) + config["title"].to_s
160
- puts f + " Limit: ".ljust(r) + config["limit"].to_s
161
- puts f + " Sort by: ".ljust(r) + config["sort_field"].to_s
162
- puts f + " Sort reverse: ".ljust(r) + config["sort_reverse"].to_s
163
-
164
- puts f + " Active Filters"
165
- puts f + " Collection: ".ljust(r) + config["collection"].to_s
166
- puts f + " Offset: ".ljust(r) + config["offset"].to_s
167
- puts f + " Category: ".ljust(r) + (config["category"].nil? || config["category"] == "posts" ? "[Not set]" : config["category"].to_s)
168
- puts f + " Tag: ".ljust(r) + (config["tag"].nil? ? "[Not set]" : config["tag"].to_s)
169
- puts f + " Locale: ".ljust(r) + (config["locale"].nil? ? "[Not set]" : config["locale"].to_s)
170
- end
160
+ return unless @debug
161
+
162
+ puts "#{f}----------------------------"
163
+ puts "#{f}Page: #{page_path}"
164
+ puts "#{f} Active configuration"
165
+ puts f + " Enabled: ".ljust(r) + config["enabled"].to_s
166
+ puts f + " Items per page: ".ljust(r) + config["per_page"].to_s
167
+ puts f + " Permalink: ".ljust(r) + config["permalink"].to_s
168
+ puts f + " Title: ".ljust(r) + config["title"].to_s
169
+ puts f + " Limit: ".ljust(r) + config["limit"].to_s
170
+ puts f + " Sort by: ".ljust(r) + config["sort_field"].to_s
171
+ puts f + " Sort reverse: ".ljust(r) + config["sort_reverse"].to_s
172
+
173
+ puts "#{f} Active Filters"
174
+ puts f + " Collection: ".ljust(r) + config["collection"].to_s
175
+ puts f + " Offset: ".ljust(r) + config["offset"].to_s
176
+ puts f + " Category: ".ljust(r) + (config["category"].nil? || config["category"] == "posts" ? "[Not set]" : config["category"].to_s)
177
+ puts f + " Tag: ".ljust(r) + (config["tag"].nil? ? "[Not set]" : config["tag"].to_s)
178
+ puts f + " Locale: ".ljust(r) + (config["locale"].nil? ? "[Not set]" : config["locale"].to_s)
171
179
  end
172
180
  # rubocop:enable Layout/LineLength
173
181
 
174
182
  # rubocop:disable Layout/LineLength
175
183
  def _debug_print_filtering_info(filter_name, before_count, after_count)
176
184
  # Debug print the config
177
- if @debug
178
- puts "Pagination: ".rjust(20) + " Filtering by: " + filter_name.to_s.ljust(9) + " " + before_count.to_s.rjust(3) + " => " + after_count.to_s
179
- end
185
+ return unless @debug
186
+
187
+ puts "#{"Pagination: ".rjust(20)} Filtering by: #{filter_name.to_s.ljust(9)} #{before_count.to_s.rjust(3)} => #{after_count}"
180
188
  end
181
189
  # rubocop:enable Layout/LineLength
182
190
 
@@ -258,7 +266,7 @@ module Bridgetown
258
266
  # So to unblock this common issue for the date field I simply iterate
259
267
  # once over every document and initialize the .date field explicitly
260
268
  if @debug
261
- puts "Pagination: ".rjust(20) + "Rolling through the date fields for all documents"
269
+ puts "#{"Pagination: ".rjust(20)}Rolling through the date fields for all documents"
262
270
  end
263
271
  using_posts.each do |u_post|
264
272
  next unless u_post.respond_to?("date")
@@ -340,13 +348,14 @@ module Bridgetown
340
348
  else
341
349
  template.dir
342
350
  end
343
- first_index_page_url = Utils.ensure_trailing_slash(first_index_page_url)
351
+ first_index_page_url = Utils.ensure_trailing_slash(
352
+ Utils.remove_double_slash(first_index_page_url)
353
+ )
344
354
  paginated_page_url = File.join(first_index_page_url, paginated_page_url)
345
355
 
346
356
  # 3. Create the paginator logic for this page, pass in the prev and next
347
357
  # page numbers, assign paginator to in-memory page
348
- # TODO: remove .pager by v1.0, deprecated
349
- newpage.paginator = newpage.pager = Paginator.new(
358
+ newpage.paginator = Paginator.new(
350
359
  config["per_page"],
351
360
  first_index_page_url,
352
361
  paginated_page_url,
@@ -372,11 +381,7 @@ module Bridgetown
372
381
  newpage.data["permalink"] = newpage.paginator.page_path if template.data["permalink"]
373
382
 
374
383
  # Transfer the title across to the new page
375
- tmp_title = if !template.data["title"]
376
- site_title
377
- else
378
- template.data["title"]
379
- end
384
+ tmp_title = template.data["title"] || site_title
380
385
 
381
386
  # If the user specified a title suffix to be added then let's add that
382
387
  # to all the pages except the first
@@ -413,40 +418,40 @@ module Bridgetown
413
418
  # simplest is to include all of the links to the pages preceeding the
414
419
  # current one (e.g for page 1 you get the list 2, 3, 4.... and for
415
420
  # page 2 you get the list 3,4,5...)
416
- if config["trail"] && !config["trail"].nil? && newpages.size.to_i.positive?
417
- trail_before = [config["trail"]["before"].to_i, 0].max
418
- trail_after = [config["trail"]["after"].to_i, 0].max
419
- trail_length = trail_before + trail_after + 1
420
-
421
- if trail_before.positive? || trail_after.positive?
422
- newpages.select do |npage|
423
- # Selecting the beginning of the trail
424
- idx_start = [npage.paginator.page - trail_before - 1, 0].max
425
- # Selecting the end of the trail
426
- idx_end = [idx_start + trail_length, newpages.size.to_i].min
427
-
428
- # Always attempt to maintain the max total of <trail_length> pages
429
- # in the trail (it will look better if the trail doesn't shrink)
430
- if idx_end - idx_start < trail_length
431
- # Attempt to pad the beginning if we have enough pages
432
- # Never go beyond the zero index
433
- idx_start = [
434
- idx_start - (trail_length - (idx_end - idx_start)),
435
- 0,
436
- ].max
437
- end
438
-
439
- # Convert the newpages array into a two dimensional array that has
440
- # [index, page_url] as items
441
- npage.paginator.page_trail = newpages[idx_start...idx_end] \
442
- .each_with_index.map do |ipage, idx|
443
- PageTrail.new(
444
- idx_start + idx + 1,
445
- ipage.paginator.page_path,
446
- ipage.data["title"]
447
- )
448
- end
449
- end
421
+ return unless config["trail"] && !config["trail"].nil? && newpages.size.to_i.positive?
422
+
423
+ trail_before = [config["trail"]["before"].to_i, 0].max
424
+ trail_after = [config["trail"]["after"].to_i, 0].max
425
+ trail_length = trail_before + trail_after + 1
426
+
427
+ return unless trail_before.positive? || trail_after.positive?
428
+
429
+ newpages.select do |npage|
430
+ # Selecting the beginning of the trail
431
+ idx_start = [npage.paginator.page - trail_before - 1, 0].max
432
+ # Selecting the end of the trail
433
+ idx_end = [idx_start + trail_length, newpages.size.to_i].min
434
+
435
+ # Always attempt to maintain the max total of <trail_length> pages
436
+ # in the trail (it will look better if the trail doesn't shrink)
437
+ if idx_end - idx_start < trail_length
438
+ # Attempt to pad the beginning if we have enough pages
439
+ # Never go beyond the zero index
440
+ idx_start = [
441
+ idx_start - (trail_length - (idx_end - idx_start)),
442
+ 0,
443
+ ].max
444
+ end
445
+
446
+ # Convert the newpages array into a two dimensional array that has
447
+ # [index, page_url] as items
448
+ npage.paginator.page_trail = newpages[idx_start...idx_end] \
449
+ .each_with_index.map do |ipage, idx|
450
+ PageTrail.new(
451
+ idx_start + idx + 1,
452
+ ipage.paginator.page_path,
453
+ ipage.data["title"]
454
+ )
450
455
  end
451
456
  end
452
457
  end
@@ -11,15 +11,14 @@ module Bridgetown
11
11
  # not read from disk
12
12
  #
13
13
  class PaginationPage < Bridgetown::GeneratedPage
14
- def initialize(page_to_copy, cur_page_nr, total_pages, index_pageandext, template_ext)
14
+ def initialize(page_to_copy, cur_page_nr, total_pages, index_pageandext, template_ext) # rubocop:disable Lint/MissingSuper
15
15
  @site = page_to_copy.site
16
16
  @base = ""
17
17
  @url = ""
18
18
  @name = index_pageandext.nil? ? "index#{template_ext}" : index_pageandext
19
19
  @path = page_to_copy.path
20
-
21
- # Creates the basename and ext member values
22
- process(@name)
20
+ @basename = File.basename(@path, ".*")
21
+ @ext = File.extname(@name)
23
22
 
24
23
  # Only need to copy the data part of the page as it already contains the
25
24
  # layout information
@@ -29,11 +28,7 @@ module Bridgetown
29
28
  # Store the current page and total page numbers in the pagination_info construct
30
29
  data["pagination_info"] = { "curr_page" => cur_page_nr, "total_pages" => total_pages }
31
30
 
32
- # Perform some validation that is also performed in Bridgetown::Page
33
- validate_data! page_to_copy.path
34
- validate_permalink! page_to_copy.path
35
-
36
- Bridgetown::Hooks.trigger :pages, :post_init, self
31
+ Bridgetown::Hooks.trigger :generated_pages, :post_init, self
37
32
  end
38
33
 
39
34
  # rubocop:disable Naming/AccessorMethodName
@@ -29,7 +29,7 @@ module Bridgetown
29
29
 
30
30
  if @page > @total_pages
31
31
  raise "page number can't be greater than total pages:" \
32
- " #{@page} > #{@total_pages}"
32
+ " #{@page} > #{@total_pages}"
33
33
  end
34
34
 
35
35
  init = (@page - 1) * @per_page
@@ -63,7 +63,7 @@ module Bridgetown
63
63
  @documents = documents[init..offset]
64
64
  @page_path = Utils.format_page_number(this_page_url, cur_page_nr, @total_pages)
65
65
 
66
- @previous_page = @page != 1 ? @page - 1 : nil
66
+ @previous_page = @page == 1 ? nil : @page - 1
67
67
  @previous_page_path = unless @page == 1
68
68
  if @page == 2
69
69
  Utils.format_page_number(
@@ -77,7 +77,7 @@ module Bridgetown
77
77
  )
78
78
  end
79
79
  end
80
- @next_page = @page != @total_pages ? @page + 1 : nil
80
+ @next_page = @page == @total_pages ? nil : @page + 1
81
81
  @next_page_path = if @page != @total_pages
82
82
  Utils.format_page_number(
83
83
  paginated_page_url, @next_page, @total_pages
@@ -36,9 +36,8 @@ module Bridgetown
36
36
  # If the input already has a dot in position zero, it will be
37
37
  # returned unchanged.
38
38
  #
39
- # path - a String path
40
- #
41
- # Returns the path with a leading slash
39
+ # @param path [String]
40
+ # @return [String] the path with a leading slash
42
41
  def self.ensure_leading_dot(path)
43
42
  path[0..0] == "." ? path : ".#{path}"
44
43
  end
@@ -47,29 +46,26 @@ module Bridgetown
47
46
  # If the input already has a forward slash in position zero, it will be
48
47
  # returned unchanged.
49
48
  #
50
- # path - a String path
51
- #
52
- # Returns the path with a leading slash
49
+ # @param path [String]
50
+ # @return [String] the path with a leading slash
53
51
  def self.ensure_leading_slash(path)
54
52
  path[0..0] == "/" ? path : "/#{path}"
55
53
  end
56
54
 
57
- # Static: Return a String version of the input without a leading slash.
58
- #
59
- # path - a String path
55
+ # Static: Return a String version of the input with only one leading slash.
60
56
  #
61
- # Returns the input without the leading slash
62
- def self.remove_leading_slash(path)
63
- path[0..0] == "/" ? path[1..-1] : path
57
+ # @param path [String]
58
+ # @return [String] the input without the leading slash
59
+ def self.remove_double_slash(path)
60
+ path[0..1] == "//" ? path[1..-1] : path
64
61
  end
65
62
 
66
63
  # Static: Return a String version of the input which has a trailing slash.
67
64
  # If the input already has a forward slash at the end, it will be
68
65
  # returned unchanged.
69
66
  #
70
- # path - a String path
71
- #
72
- # Returns the path with a trailing slash
67
+ # @param path [String]
68
+ # @return [String] the path with a trailing slash
73
69
  def self.ensure_trailing_slash(path)
74
70
  path[-1] == "/" ? path : "#{path}/"
75
71
  end
@@ -78,14 +74,10 @@ module Bridgetown
78
74
  # Sorting routine used for ordering posts by custom fields.
79
75
  # Handles Strings separately as we want a case-insenstive sorting
80
76
  #
81
- # rubocop:disable Naming/MethodParameterName, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
77
+ # rubocop:disable Naming/MethodParameterName, Metrics/CyclomaticComplexity
82
78
  def self.sort_values(a, b)
83
- if a.nil? && !b.nil?
84
- return -1
85
- elsif !a.nil? && b.nil?
86
- return 1
87
- end
88
-
79
+ return -1 if a.nil? && !b.nil?
80
+ return 1 if !a.nil? && b.nil?
89
81
  return a.downcase <=> b.downcase if a.is_a?(String)
90
82
 
91
83
  if a.respond_to?("to_datetime") && b.respond_to?("to_datetime")
@@ -95,7 +87,7 @@ module Bridgetown
95
87
  # By default use the built in sorting for the data type
96
88
  a <=> b
97
89
  end
98
- # rubocop:enable Naming/MethodParameterName, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
90
+ # rubocop:enable Naming/MethodParameterName, Metrics/CyclomaticComplexity
99
91
 
100
92
  # Retrieves the given sort field from the given post
101
93
  # the sort_field variable can be a hierarchical value on the form
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bridgetown-paginate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.21.2
4
+ version: 1.0.0.alpha2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bridgetown Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-21 00:00:00.000000000 Z
11
+ date: 2021-10-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bridgetown-core
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.21.2
19
+ version: 1.0.0.alpha2
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: 0.21.2
26
+ version: 1.0.0.alpha2
27
27
  description:
28
28
  email: maintainers@bridgetownrb.com
29
29
  executables: []
@@ -42,7 +42,7 @@ files:
42
42
  - lib/bridgetown-paginate/pagination_page.rb
43
43
  - lib/bridgetown-paginate/paginator.rb
44
44
  - lib/bridgetown-paginate/utils.rb
45
- homepage: https://github.com/bridgetownrb/bridgetown/tree/master/bridgetown-paginate
45
+ homepage: https://github.com/bridgetownrb/bridgetown/tree/main/bridgetown-paginate
46
46
  licenses:
47
47
  - MIT
48
48
  metadata: {}
@@ -57,9 +57,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
57
57
  version: '0'
58
58
  required_rubygems_version: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - ">="
60
+ - - ">"
61
61
  - !ruby/object:Gem::Version
62
- version: '0'
62
+ version: 1.3.1
63
63
  requirements: []
64
64
  rubygems_version: 3.1.4
65
65
  signing_key: