juicelang-theme 0.5.0 → 0.5.1

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: d091d794594724f2fd4ddd2a8cc25650237a83517536a4bfd13ced599aac2a9c
4
- data.tar.gz: 7645974aa4ce62c401c117905c266df4a23986b7dc1b31928baa03082900086e
3
+ metadata.gz: 0f852df9e1751836546ec0ea84f1db906a60950456da13f4b9544a672a4fe784
4
+ data.tar.gz: c8885eb5faa5508b89a0b04dd6044a3f4d1f1af4739f3a1fe7956a0aa688f40c
5
5
  SHA512:
6
- metadata.gz: bf17f82e1968ada92376d0fadf83f4cab66fa9cf97fbf9ade047f6f779dacc6ce31c76a0045d2ac8b3eeeef921318fc9c4461457a457b0fdbe06de47d5059b84
7
- data.tar.gz: 7bf696530ca7be79464512b87b728f2379867a96e3667e308012b9d86f281c633c2c6d5a0ef0ad8e0ac22d614f4e74bf324d1c20d1ab55c76e9522cb8d8dfde1
6
+ metadata.gz: 27994731614627460d4908dfc7accfa2e36e736b3050dc1128a92ade56104a6c7ffd3bc47c9adc228c82cc04bb2c9399e0844a410f7a21690e7e944f2d8fc6d1
7
+ data.tar.gz: d326873e94ae956149ca4b627fe7f17a37a5b7303fdeeb01cd213b7c3cd9cfe620d5adbc5103ec86e826e9860c06fe6e1903308a0a38c357048dbe053cbd2b81
data/_includes/nav.html CHANGED
@@ -1,6 +1,6 @@
1
1
  <div id="{{ include.id }}" uk-offcanvas="mode: push{% if include.flip %}; flip: true{% endif %}">
2
2
  <div class="uk-offcanvas-bar">
3
- <ul class="uk-nav-default" uk-nav='{"toggle": "> a.nav-parent-toggle"}''>
3
+ <ul class="uk-nav-default" uk-nav='{"toggle": "> a.nav-parent-toggle"}'>
4
4
  {% assign navigation = site.data.navigation[include.navigation] %}
5
5
  {% assign indexPage = site.pages | find: "path", navigation.index_path %}
6
6
  <li class="uk-nav-header"><a href="{{ indexPage | url_without_ext }}">{{ navigation.title }}</a></li>
data/lib/custom_tags.rb CHANGED
@@ -4,8 +4,6 @@ require 'jekyll'
4
4
  require 'kramdown'
5
5
  require 'liquid'
6
6
 
7
- require_relative 'markdown_toc'
8
-
9
7
 
10
8
  class ToCTag < Liquid::Tag
11
9
  def initialize(tag_name, input, tokens)
@@ -15,22 +13,28 @@ class ToCTag < Liquid::Tag
15
13
  def render(context)
16
14
  toc = Kramdown::Document.new(context.registers[:page]['content'], {
17
15
  input: "GFM"
18
- }).to_ToC
19
- build_list(toc.select { |item| item[0] == 2 }, toc.first)
16
+ }).to_Toc
17
+ build_list(toc, context)
20
18
  end
21
19
 
22
20
  private
23
21
 
24
- def build_list(toc, top)
25
- result = '<li class="uk-active"><a href="#' + top[1] + '">' + top[2][0].value + '</a></li>' + "\n"
22
+ def build_list(toc, context)
23
+ top = toc.children.first.value
24
+ result = '<li class="uk-active"><a href="#' + top.attr['id'] + '">' + elementToHTML(top, context) + '</a></li>' + "\n"
26
25
 
27
- for i in 0...toc.count
28
- item = toc[i]
29
- result += '<li><a href="#' + item[1] + '">' + item[2][0].value + "</a></li>\n"
26
+ for item in toc.children.first.children.map { |e| e.value }
27
+ result += '<li><a href="#' + item.attr['id'] + '">' + elementToHTML(item, context) + "</a></li>\n"
30
28
  end
31
29
 
32
30
  result
33
31
  end
32
+
33
+ def elementToHTML(el, context)
34
+ root = Kramdown::Element.new(:root, nil, nil, encoding: context.registers[:page]['content'].encoding)
35
+ root.children = el.children
36
+ Kramdown::Converter::CustomHtml.convert(root).first
37
+ end
34
38
  end
35
39
 
36
40
  Liquid::Template.register_tag('toc', ToCTag)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: juicelang-theme
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josef Zoller
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-09 00:00:00.000000000 Z
11
+ date: 2022-11-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -275,7 +275,6 @@ files:
275
275
  - lib/juice_lexer.rb
276
276
  - lib/juicelang-theme.rb
277
277
  - lib/markdown.rb
278
- - lib/markdown_toc.rb
279
278
  homepage: https://github.com/juice-lang/juicelang-theme
280
279
  licenses:
281
280
  - MIT
data/lib/markdown_toc.rb DELETED
@@ -1,13 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'jekyll'
4
- require 'kramdown'
5
-
6
- class Kramdown::Converter::ToC < Kramdown::Converter::Html
7
- def convert(el, indent = -@indent)
8
- result = super
9
- return result unless el.type == :root
10
-
11
- @toc
12
- end
13
- end