jekyll-bookshop 2.0.0.pre.alpha.53 → 2.0.0.pre.beta.4

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: 5c587c6738b573c80e77d0176139bc538b05c6270bbdab066b71cfe01638959a
4
- data.tar.gz: c74eeb46a2ee282246fb68ca732438b07c61b1b6a48d4f072cf865076afaec70
3
+ metadata.gz: 425146cd2a7b542e445847e2710b12606747d18fdaae3722c68dad2e5348d7ee
4
+ data.tar.gz: 025ebe9dbd916b594fa564f5228e41d8595e3e45a30b6989db89ed78620fc0f8
5
5
  SHA512:
6
- metadata.gz: ac0c4448f861a8bb26f98255b56563f6dc424da1f9e0e2e4ae474f2a2c8e97ac5a553e5a86bfce85899261e39a628394e490bb5b4da96e2de5bce8f5a9ea1577
7
- data.tar.gz: cb144ced61fc5c3ff13a45497d6124d4ea4761a6228b14859852971d4f65ab6e0d35fbb7b98cd7f55e9f8a35ab669fc0d36028ea819315b7b08b5cf836d124f6
6
+ metadata.gz: 23b760edb031fc62924c99a3f7eaffceccfe66a367f11cc84fd50dbde399786f2bb755de1399075ea7e2cd53dafaea30a5e0ea3fbf28bde7b4b5795734c4d020
7
+ data.tar.gz: 9e5e642e49bbec334e5327026442aaa7b9a59a491fae3521f1af1caaa1e1b237410ea320d9b60247b1684568b3b05291efc6633af55483baef8e542a7703e160
@@ -5,14 +5,14 @@ require "pathname"
5
5
  require "dry/inflector"
6
6
 
7
7
  require_relative "jekyll-bookshop/tags/bookshop-tag"
8
- require_relative "jekyll-bookshop/tags/renderer-tag"
8
+ require_relative "jekyll-bookshop/tags/browser-tag"
9
9
  require_relative "jekyll-bookshop/tags/style-tag"
10
10
  require_relative "jekyll-bookshop/init-styles"
11
11
  require_relative "jekyll-bookshop/site-data"
12
12
 
13
13
  Liquid::Template.register_tag("bookshop", JekyllBookshop::Tag)
14
14
  Liquid::Template.register_tag("bookshop_scss", JekyllBookshop::StyleTag)
15
- Liquid::Template.register_tag("bookshop_renderer", JekyllBookshop::RendererTag)
15
+ Liquid::Template.register_tag("bookshop_browser", JekyllBookshop::BrowserTag)
16
16
 
17
17
  Jekyll::Hooks.register :site, :after_init do |site|
18
18
  JekyllBookshop::Styles.open_bookshop(site)
@@ -21,7 +21,7 @@ module JekyllBookshop
21
21
 
22
22
  @site.data["_bookshop_site_data"] = { "site" => payload_collections }
23
23
 
24
- update_renderer_pages
24
+ update_browser_pages
25
25
 
26
26
  Jekyll.logger.info "Bookshop:",
27
27
  "Bookshop site data generated"
@@ -40,13 +40,13 @@ module JekyllBookshop
40
40
  })
41
41
  end
42
42
 
43
- def self.update_renderer_pages
43
+ def self.update_browser_pages
44
44
  @site.pages.each do |page|
45
45
  next unless @site.data["_bookshop_data_pages"]&.include?(page.url)
46
46
 
47
47
  page.output = page.output.gsub(
48
- %r!bookshop_renderer_site_data = null!,
49
- "bookshop_renderer_site_data = #{@site.data["_bookshop_site_data"].to_json}"
48
+ %r!bookshop_browser_site_data = null!,
49
+ "bookshop_browser_site_data = #{@site.data["_bookshop_site_data"].to_json}"
50
50
  )
51
51
  end
52
52
  @site.data["_bookshop_data_pages"] = nil
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module JekyllBookshop
4
+ class BrowserTag < Liquid::Tag
5
+ def initialize(tag_name, markup, tokens)
6
+ super
7
+ @host = markup.strip
8
+ end
9
+
10
+ def render(context)
11
+ return unless @host
12
+ return if Jekyll.env == "production"
13
+
14
+ site = context.registers[:site]
15
+ page = context.registers[:page]
16
+
17
+ site.data["_bookshop_data_pages"] ||= []
18
+ unless site.data["_bookshop_data_pages"].include?(page["url"])
19
+ site.data["_bookshop_data_pages"].push(page["url"])
20
+ end
21
+
22
+ "<div data-bookshop-browser></div>
23
+ <script>window.bookshop_browser_site_data = null;</script>
24
+ <script src=\"//#{@host}\"></script>
25
+ <script>window.BookshopBrowser = new window.BookshopBrowserClass(); window.BookshopBrowser.render();</script>"
26
+ end
27
+ end
28
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module JekyllBookshop
4
- VERSION = "2.0.0.pre.alpha.53"
4
+ VERSION = "2.0.0.pre.beta.4"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-bookshop
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.pre.alpha.53
4
+ version: 2.0.0.pre.beta.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - CloudCannon
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-27 00:00:00.000000000 Z
11
+ date: 2021-08-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -89,7 +89,7 @@ files:
89
89
  - lib/jekyll-bookshop/init-styles.rb
90
90
  - lib/jekyll-bookshop/site-data.rb
91
91
  - lib/jekyll-bookshop/tags/bookshop-tag.rb
92
- - lib/jekyll-bookshop/tags/renderer-tag.rb
92
+ - lib/jekyll-bookshop/tags/browser-tag.rb
93
93
  - lib/jekyll-bookshop/tags/style-tag.rb
94
94
  - lib/jekyll-bookshop/version.rb
95
95
  homepage: https://github.com/cloudcannon/bookshop
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module JekyllBookshop
4
- class RendererTag < Liquid::Tag
5
- def initialize(tag_name, markup, tokens)
6
- super
7
- # check if markup contains a number
8
- if %r!\d+!.match?(markup)
9
- @port = markup.gsub(%r![^\d]!, "").to_i
10
- else
11
- Jekyll.logger.warning "Bookshop:",
12
- "bookshop_renderer tag malformed.
13
- Use {% bookshop_renderer :6061 %}
14
- with the port @bookshop/renderer is running on."
15
- end
16
- end
17
-
18
- def render(context)
19
- return unless @port
20
- return if Jekyll.env == "production"
21
-
22
- site = context.registers[:site]
23
- page = context.registers[:page]
24
-
25
- site.data["_bookshop_data_pages"] ||= []
26
- unless site.data["_bookshop_data_pages"].include?(page["url"])
27
- site.data["_bookshop_data_pages"].push(page["url"])
28
- end
29
-
30
- "<div data-bookshop-renderer></div>
31
- <script>window.bookshop_renderer_site_data = null;</script>
32
- <script src=\"http://localhost:#{@port}/bookshop.js\"></script>
33
- <link href=\"http://localhost:#{@port}/renderer.css\" rel=\"stylesheet\">"
34
- end
35
- end
36
- end