middleman-paginate 0.1.2 → 0.1.3

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
  SHA1:
3
- metadata.gz: e8d9716b324b38651350e48cea10659bf384b198
4
- data.tar.gz: 152b81f96508e9e3528a0667c18d62d6fe3e11e0
3
+ metadata.gz: a84f25e6ff6b38f219a0fd27053bd75aa094bca2
4
+ data.tar.gz: fe0775c19cbd7bae7df0f3ded11e0807d30c5544
5
5
  SHA512:
6
- metadata.gz: d1f573e86cc015a549fa87015a91b0facbb9a0700f91bd4aab9a260082947d3e7bf3f9cc2e04b880f9e79072d7b2fa7caa98a53f64ff4790a1e9fc1fdb6f86cd
7
- data.tar.gz: b1ea5c1f61f0418f822068e67f173fae91bd7acf6342e93f311bf0311a6bcb0938323f3a4de8a87d806153a101053e07b0cf5e03290612c1d99bf7b9fae1bdc2
6
+ metadata.gz: f32d457d783865981779024eb32fbde0c46a36e47dfa1d72caef9baaa8f058c3a3f5bec469b6277e0080aba09b80dad837e1e570c4042035ec713a12057fbd15
7
+ data.tar.gz: a45eb9b23387c961c144c8a6fd97e55131f395045d5c4d5eaae112e6c2f995540e0985ea9c75314287082ab62c8c45241ceaead2cae4da624cc9170854171425
@@ -3,25 +3,9 @@ require 'middleman_dato/middleman_extension'
3
3
 
4
4
  module Middleman
5
5
  module Paginate
6
- class Extension < ::Middleman::ConfigExtension
7
- self.resource_list_manipulator_priority = 0
8
-
6
+ class Extension < ::Middleman::Extension
9
7
  expose_to_config paginate: :paginate
10
8
 
11
- class CollectionDescriptor
12
- attr_reader :descriptors
13
-
14
- def initialize(descriptors)
15
- @descriptors = descriptors
16
- end
17
-
18
- def execute_descriptor(app, sum)
19
- descriptors.reduce(sum) do |sum, descriptor|
20
- descriptor.execute_descriptor(app, sum)
21
- end
22
- end
23
- end
24
-
25
9
  class Pager
26
10
  attr_reader :current_page, :total_pages, :per_page
27
11
 
@@ -42,31 +26,29 @@ module Middleman
42
26
  end
43
27
 
44
28
  def page_path(page = current_page)
45
- "#{@base_path}#{page == 1 ? '' : @suffix.gsub(/:num/, page.to_s)}.html"
29
+ "#{@base_path}#{page == 1 ? '/index' : @suffix.gsub(/:num/, page.to_s)}.html"
46
30
  end
47
31
  end
48
32
 
49
33
  def paginate(collection, base_path, template, per_page: 20, suffix: "/page/:num", locals: {}, data: {})
50
- pages = collection.each_slice(per_page).to_a
51
-
52
- descriptors = []
53
-
54
- pages.each_with_index do |page_collection, i|
55
- pager = Pager.new(base_path, suffix, i + 1, pages.size, per_page)
56
-
57
- opts = {
58
- locals: locals.merge(items: page_collection, pager: pager),
59
- data: data
60
- }
61
-
62
- descriptors << Middleman::Sitemap::Extensions::ProxyDescriptor.new(
63
- Middleman::Util.normalize_path(pager.page_path),
64
- Middleman::Util.normalize_path(template),
65
- opts
66
- )
34
+ collection.tap do |collection|
35
+ pages = collection.each_slice(per_page).to_a
36
+
37
+ pages.each_with_index do |page_collection, i|
38
+ pager = Pager.new(base_path, suffix, i + 1, pages.size, per_page)
39
+
40
+ opts = {
41
+ locals: locals.merge(items: page_collection, pager: pager),
42
+ data: data
43
+ }
44
+
45
+ proxy(
46
+ Middleman::Util.normalize_path(pager.page_path),
47
+ Middleman::Util.normalize_path(template),
48
+ opts
49
+ )
50
+ end
67
51
  end
68
-
69
- CollectionDescriptor.new(descriptors)
70
52
  end
71
53
  end
72
54
  end
@@ -1,5 +1,5 @@
1
1
  module Middleman
2
2
  module Paginate
3
- VERSION = "0.1.2"
3
+ VERSION = "0.1.3"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: middleman-paginate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stefano Verna
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-09-30 00:00:00.000000000 Z
11
+ date: 2016-11-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler