jekyll-graph 0.0.8 → 0.0.10
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 +4 -4
- data/README.md +8 -2
- data/jekyll-graph.gemspec +0 -3
- data/lib/jekyll-graph/jekyll-graph.js +1 -1
- data/lib/jekyll-graph/version.rb +1 -1
- data/lib/jekyll-graph.rb +20 -9
- metadata +3 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9c8e8d2c47a467d671a541f0383514514ce1dc661b547384badcf7ff127a7f48
|
4
|
+
data.tar.gz: b71d501a8c8b3eabcc7f5c54534d299bcb31b15459281ec57ee54a72275ddb07
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bc3bb48999037c60980546dbec3192ae9c857b11f73cc36d947370535f0a81e7420b2273af8bbd1ee24fb0fa637354f0dfca8658c5dcae521b78525c928cdf3c
|
7
|
+
data.tar.gz: a397d40e8f56f1968780bc0fcf8573471365746ff59a1ad6f4a2685e09dfb0a5756df1eaaf0141721a6caa9dec78ec91290926f3f7eed504319691656d5a22e7
|
data/README.md
CHANGED
@@ -1,12 +1,15 @@
|
|
1
1
|
# Jekyll-Graph
|
2
2
|
|
3
|
+
[](https://github.com/wikibonsai/wikibonsai)
|
4
|
+
[](https://rubygems.org/gems/jekyll-graph)
|
5
|
+
|
3
6
|
⚠️ This is gem is under active development! ⚠️
|
4
7
|
|
5
8
|
⚠️ Expect breaking changes and surprises until otherwise noted (likely by v0.1.0 or v1.0.0). ⚠️
|
6
9
|
|
7
|
-
Jekyll-Graph generates data and renders a graph that allows visitors to navigate a jekyll site by clicking nodes in the graph. Nodes are generated from the site's markdown files. Links for the tree graph are generated from [`jekyll-namespaces`](https://github.com/manunamz/jekyll-namespaces) and links for the net-web graph from [`jekyll-wikilinks`](https://github.com/manunamz/jekyll-wikilinks).
|
10
|
+
Jekyll-Graph generates data and renders a graph that allows visitors to navigate a jekyll site by clicking nodes in the graph. Nodes are generated from the site's markdown files. Links for the tree graph are generated from [`jekyll-semtree`](https://github.com/wikibonsai/jekyll-semtree) or [`jekyll-namespaces`](https://github.com/manunamz/jekyll-namespaces) and links for the net-web graph from [`jekyll-wikirefs`](https://github.com/wikibonsai/jekyll-wikirefs) [`jekyll-wikilinks`](https://github.com/manunamz/jekyll-wikilinks).
|
8
11
|
|
9
|
-
|
12
|
+
🏡 Build and maintain a treehouze to play in in your [WikiBonsai](https://github.com/wikibonsai/wikibonsai) digital garden.
|
10
13
|
|
11
14
|
## Installation
|
12
15
|
|
@@ -144,6 +147,8 @@ No configurations are strictly necessary for plugin defaults to work.
|
|
144
147
|
Graph colors are determined by css variables which may be defined like so -- any valid css color works (hex, rgba, etc.):
|
145
148
|
|
146
149
|
```CSS
|
150
|
+
/* make sure color vars are attached to the root of the html document */
|
151
|
+
html {
|
147
152
|
/* nodes */
|
148
153
|
/* glow */
|
149
154
|
--graph-node-current-glow: yellow;
|
@@ -159,6 +164,7 @@ Graph colors are determined by css variables which may be defined like so -- any
|
|
159
164
|
--graph-particles-color: grey;
|
160
165
|
/* label text */
|
161
166
|
--graph-text-color: black;
|
167
|
+
}
|
162
168
|
```
|
163
169
|
|
164
170
|
## Data
|
data/jekyll-graph.gemspec
CHANGED
@@ -34,7 +34,4 @@ Gem::Specification.new do |spec|
|
|
34
34
|
|
35
35
|
# For more information and examples about making a new gem, checkout our
|
36
36
|
# guide at: https://bundler.io/guides/creating_gem.html
|
37
|
-
|
38
|
-
spec.add_runtime_dependency "jekyll-namespaces", "~> 0.0.3"
|
39
|
-
spec.add_runtime_dependency "jekyll-wikilinks", "~> 0.0.11"
|
40
37
|
end
|
@@ -227,7 +227,7 @@ export default class JekyllGraph {
|
|
227
227
|
// draw helpers
|
228
228
|
|
229
229
|
shiftNodeHeight(node) {
|
230
|
-
if (node.namespace !== 'root' && !this.shifted.includes(node)) {
|
230
|
+
if ((node.namespace !== 'root') && (node.namespace !== 'i.bonsai') && !this.shifted.includes(node)) {
|
231
231
|
const padding = 5;
|
232
232
|
let areSiblingsLeftEven = (this.numSiblingsLeft[node.parent] % 2) === 1;
|
233
233
|
let altrntr = areSiblingsLeftEven ? 1 : -1;
|
data/lib/jekyll-graph/version.rb
CHANGED
data/lib/jekyll-graph.rb
CHANGED
@@ -37,7 +37,7 @@ module Jekyll
|
|
37
37
|
return
|
38
38
|
end
|
39
39
|
if !$graph_conf.disabled_tree? && !site.respond_to?(:tree)
|
40
|
-
Jekyll.logger.error("Jekyll-Graph: To generate the tree graph, please either add and enable the 'jekyll-namespaces' plugin
|
40
|
+
Jekyll.logger.error("Jekyll-Graph: To generate the tree graph, please either add and enable the 'jekyll-semtree' or 'jekyll-namespaces' plugin, or disable the tree in the jekyll-graph config")
|
41
41
|
return
|
42
42
|
end
|
43
43
|
|
@@ -173,7 +173,7 @@ module Jekyll
|
|
173
173
|
#
|
174
174
|
@site.link_index.index[doc.url].missing.each do |missing_link_name|
|
175
175
|
if net_web_nodes.none? { |node| node[:id] == missing_link_name }
|
176
|
-
Jekyll.logger.warn("Jekyll-Graph: Net-Web node missing: #{missing_link_name}, in: #{doc.
|
176
|
+
Jekyll.logger.warn("Jekyll-Graph: Net-Web node missing: #{missing_link_name}, in: #{File.basename(doc.basename, File.extname(doc.basename))}")
|
177
177
|
net_web_nodes << {
|
178
178
|
id: missing_link_name, # an id is necessary for link targets
|
179
179
|
url: '',
|
@@ -242,18 +242,24 @@ module Jekyll
|
|
242
242
|
return net_web_nodes, net_web_links
|
243
243
|
end
|
244
244
|
|
245
|
+
# used for both plugins:
|
246
|
+
# jekyll-semtree
|
247
|
+
# jekyll-namespace
|
245
248
|
def generate_json_tree(node, json_parent="", tree_nodes=[], tree_links=[], level=0)
|
249
|
+
node = node.is_a?(String) ? @site.tree.nodes.detect { |n| n.text == node } : node
|
246
250
|
#
|
247
251
|
# missing nodes
|
248
252
|
#
|
249
253
|
if node.missing
|
250
|
-
|
254
|
+
missing_text = node.namespace ? node.namespace : node.text
|
255
|
+
Jekyll.logger.warn("Jekyll-Graph: Tree node missing: ", missing_text)
|
251
256
|
|
252
|
-
|
257
|
+
if node.namespace
|
258
|
+
leaf = node.namespace.split('.').pop()
|
259
|
+
end
|
253
260
|
missing_node = {
|
254
|
-
id: node.namespace,
|
255
|
-
label: leaf.gsub('-', ' '),
|
256
|
-
namespace: node.namespace,
|
261
|
+
id: node.namespace ? node.namespace : node.text,
|
262
|
+
label: node.namespace ? leaf.gsub('-', ' ') : node.text,
|
257
263
|
url: "",
|
258
264
|
level: level,
|
259
265
|
lineage: {
|
@@ -262,12 +268,15 @@ module Jekyll
|
|
262
268
|
},
|
263
269
|
siblings: [],
|
264
270
|
}
|
271
|
+
if node.namespace
|
272
|
+
missing_node['namespace'] = node.namespace
|
273
|
+
end
|
265
274
|
# non-root handling
|
266
275
|
if !json_parent.empty?
|
267
276
|
missing_node[:parent] = json_parent[:id]
|
268
277
|
tree_links << {
|
269
278
|
source: json_parent[:id],
|
270
|
-
target: node.namespace,
|
279
|
+
target: node.namespace ? node.namespace : node.text,
|
271
280
|
}
|
272
281
|
end
|
273
282
|
tree_nodes << missing_node
|
@@ -279,7 +288,6 @@ module Jekyll
|
|
279
288
|
existing_node = {
|
280
289
|
id: node.url,
|
281
290
|
label: node.title,
|
282
|
-
namespace: node.namespace,
|
283
291
|
url: relative_url(node.url),
|
284
292
|
level: level,
|
285
293
|
lineage: {
|
@@ -288,6 +296,9 @@ module Jekyll
|
|
288
296
|
},
|
289
297
|
siblings: [],
|
290
298
|
}
|
299
|
+
if node.namespace
|
300
|
+
existing_node['namespace'] = node.namespace
|
301
|
+
end
|
291
302
|
# non-root handling
|
292
303
|
if !json_parent.empty?
|
293
304
|
existing_node[:parent] = json_parent[:id]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-graph
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- manunamz
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-09-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -24,34 +24,6 @@ dependencies:
|
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 4.2.0
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: jekyll-namespaces
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: 0.0.3
|
34
|
-
type: :runtime
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: 0.0.3
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: jekyll-wikilinks
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - "~>"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: 0.0.11
|
48
|
-
type: :runtime
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - "~>"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: 0.0.11
|
55
27
|
description:
|
56
28
|
email:
|
57
29
|
- manunamz@pm.me
|
@@ -100,7 +72,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
100
72
|
- !ruby/object:Gem::Version
|
101
73
|
version: '0'
|
102
74
|
requirements: []
|
103
|
-
rubygems_version: 3.
|
75
|
+
rubygems_version: 3.4.10
|
104
76
|
signing_key:
|
105
77
|
specification_version: 4
|
106
78
|
summary: Add d3 graph generation to jekyll.
|