cloudcannon-jekyll 0.4.0 → 0.5.0

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: 8fb6d69020a149aa142d3e07d56e684c228a66f6b85af4f90ea3b2ec781960a7
4
- data.tar.gz: 8ab26b830892091e808583431104d5196b606aae6e5f03eb65a85025a4dc93ae
3
+ metadata.gz: cc22c88ec15a9239eac56578dd09204ddd1a27708cb41049ee4a8159d1edd6f2
4
+ data.tar.gz: af972170086e38401c6196e29525ee61cd1d2aea2a0bb2de244635619fadfdb4
5
5
  SHA512:
6
- metadata.gz: 9569e09b712f5ce8902da2b09ec22ceb7472690a497a03a22187801dc4574425722b5370b49177c4313d466dac8edb57a7624f1e7ca8d5273fc48aee9cd37261
7
- data.tar.gz: 59cd301082e6169baf3a96df82f0fe7cfc9857475dbc50925e64ad6e5d4ca93aef28961e1bef0766946cf3e1db4cb71c1fee35dc6bcca5de4240498b56736a1f
6
+ metadata.gz: 93b5a09207c6295d0f72282449a1e78d62d2ecc014c9af3d44c524fb1d1d8a715de918e93271a740b85eb688fd817f980e6483b854e9664c73d001579a0c4053
7
+ data.tar.gz: 5825c1c3fd9762691cf2c30042084cae6d476615225bd254cf07cd0d9e130bb464a972b9dbb4145389ae8668825e8e83ddf9059596590204bd9b4759b583c0d3
data/HISTORY.md CHANGED
@@ -1,3 +1,9 @@
1
+ # 0.5.0
2
+
3
+ * Rename a number of top level configuration keys to match source keys
4
+ * Combine `details.json` and `config.json` into `info.json`
5
+ * Increase max depth for array structures defined outside of global
6
+
1
7
  # 0.4.0
2
8
 
3
9
  * Add `collections_dir` to details collection item paths
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  A Jekyll plugin to create CloudCannon editor details.
4
4
 
5
- [![Build Status](https://travis-ci.com/CloudCannon/cloudcannon-jekyll.svg?branch=master)](https://travis-ci.com/CloudCannon/cloudcannon-jekyll) [![Gem Version](https://badge.fury.io/rb/cloudcannon-jekyll.svg)](https://badge.fury.io/rb/cloudcannon-jekyll)
5
+ [![Build Status](https://travis-ci.com/CloudCannon/cloudcannon-jekyll.svg?branch=main)](https://travis-ci.com/CloudCannon/cloudcannon-jekyll) [![Gem Version](https://badge.fury.io/rb/cloudcannon-jekyll.svg)](https://badge.fury.io/rb/cloudcannon-jekyll)
6
6
 
7
7
  ## Usage
8
8
 
@@ -0,0 +1,76 @@
1
+ {
2
+ "time": {{ site.time | date_to_xmlschema | cc_jsonify }},
3
+ "cloudcannon": {
4
+ "name": "cloudcannon-jekyll",
5
+ "version": {{ gem_version | cc_jsonify }}
6
+ },
7
+ "generator": {
8
+ "name": "jekyll",
9
+ "version": {{ jekyll.version | cc_jsonify }},
10
+ "environment": {{ jekyll.env | cc_jsonify }},
11
+ "metadata": {
12
+ "markdown": {{ site.markdown | cc_jsonify }},
13
+ "kramdown": {{ site.kramdown | cc_jsonify }},
14
+ "commonmark": {{ site.commonmark | cc_jsonify }}
15
+ }
16
+ },
17
+ {% if config.timezone %}
18
+ "timezone": {{ config.timezone | cc_jsonify }},
19
+ {% endif %}
20
+ "collections-config": {{ collections_config | cc_jsonify: 'collections' }},
21
+ "collections": {
22
+ "drafts": {{ drafts | cc_jsonify }},
23
+ "posts": {{ site.posts | reverse | cc_jsonify }}{% if site.collections.size > 0 %},{% endif %}
24
+ {% for collection in site.collections %}"{{ collection[0] | xml_escape }}": {{ collection[1].docs | cc_jsonify }}{% unless forloop.last %},{% endunless %}
25
+ {% endfor %}
26
+ },
27
+ "pages": {{ site.html_pages | cc_jsonify }},
28
+ "static-pages": {{ site.static_files | cc_static_files_jsonify }},
29
+ {% if site.cloudcannon.data.first %}{% assign data_seen = false %}
30
+ "data": {
31
+ {% for data in site.data %}{% assign key = data[0] %}{% if site.cloudcannon.data[key] %}{% if data_seen %},{% endif %}{{ data[0] | cc_jsonify }}: {{ data[1] | cc_jsonify }}{% assign data_seen = true %}{% endif %}{% endfor %}},
32
+ {% elsif site.cloudcannon.data %}"data": {{ site.data | cc_jsonify }},{% endif %}
33
+ {% if config.baseurl %}
34
+ "base-url": {{ config.baseurl | cc_jsonify }},
35
+ {% endif %}
36
+ {% if config._comments %}
37
+ "_comments": {{ config._comments | cc_jsonify }},
38
+ {% endif %}
39
+ {% if config._options %}
40
+ "_options": {{ config._options | cc_jsonify }},
41
+ {% endif %}
42
+ {% if config._collection_groups %}
43
+ "_collection_groups": {{ config._collection_groups | cc_jsonify }},
44
+ {% endif %}
45
+ {% if config._editor %}
46
+ "_editor": {
47
+ "default_path": {{ config._editor.default_path | cc_jsonify }}
48
+ },
49
+ {% endif %}
50
+ {% if config._source_editor %}
51
+ "_source_editor": {
52
+ "tab_size": {{ config._source_editor.tab_size | cc_jsonify }},
53
+ "show_gutter": {{ config._source_editor.show_gutter | cc_jsonify }},
54
+ "theme": {{ config._source_editor.theme | cc_jsonify }}
55
+ },
56
+ {% endif %}
57
+ "paths": {
58
+ "uploads": {{ config.uploads_dir | cc_jsonify }},
59
+ "data": {{ config.data_dir | cc_jsonify }},
60
+ "pages": "",
61
+ "collections": {{ config.collections_dir | cc_jsonify }},
62
+ "includes": {{ config.includes_dir | cc_jsonify }},
63
+ "layouts": {{ config.layouts_dir | cc_jsonify }}
64
+ },
65
+ {% if config._array_structures %}
66
+ "_array_structures": {{ config._array_structures | cc_jsonify: nil, 50 }},
67
+ {% endif %}
68
+ {% assign select_data = config | cc_select_data_jsonify %}
69
+ {% if select_data %}
70
+ "_select_data": {{ select_data }},
71
+ {% endif %}
72
+ {% if config.defaults %}
73
+ "defaults": {{ config.defaults | cc_jsonify }},
74
+ {% endif %}
75
+ "source": {{ config.source | replace: pwd, "" | cc_jsonify }}
76
+ }
@@ -0,0 +1,75 @@
1
+ {
2
+ "time": {{ site.time | date_to_xmlschema | cc_jsonify }},
3
+ "cloudcannon": {
4
+ "name": "cloudcannon-jekyll",
5
+ "version": {{ gem_version | cc_jsonify }}
6
+ },
7
+ "generator": {
8
+ "name": "jekyll",
9
+ "version": {{ jekyll.version | cc_jsonify }},
10
+ "environment": {{ jekyll.env | cc_jsonify }},
11
+ "metadata": {
12
+ "markdown": {{ site.markdown | cc_jsonify }},
13
+ "kramdown": {{ site.kramdown | cc_jsonify }},
14
+ "commonmark": {{ site.commonmark | cc_jsonify }}
15
+ }
16
+ },
17
+ {% if config.timezone %}
18
+ "timezone": {{ config.timezone | cc_jsonify }},
19
+ {% endif %}
20
+ "collections-config": {{ collections_config | cc_jsonify: 'collections' }},
21
+ "collections": {
22
+ "drafts": {{ drafts | cc_jsonify }}{% if site.collections.size > 0 %},{% endif %}
23
+ {% for collection in site.collections %}"{{ collection.label | xml_escape }}": {{ collection.docs | cc_jsonify }}{% unless forloop.last %},{% endunless %}
24
+ {% endfor %}
25
+ },
26
+ "pages": {{ site.html_pages | cc_jsonify }},
27
+ "static-pages": {{ site.static_files | cc_static_files_jsonify }},
28
+ {% if site.cloudcannon.data.first %}{% assign data_seen = false %}
29
+ "data": {
30
+ {% for data in site.data %}{% assign key = data[0] %}{% if site.cloudcannon.data[key] %}{% if data_seen %},{% endif %}{{ data[0] | cc_jsonify }}: {{ data[1] | cc_jsonify }}{% assign data_seen = true %}{% endif %}{% endfor %}},
31
+ {% elsif site.cloudcannon.data %}"data": {{ site.data | cc_jsonify }},{% endif %}
32
+ {% if config.baseurl %}
33
+ "base-url": {{ config.baseurl | cc_jsonify }},
34
+ {% endif %}
35
+ {% if config._comments %}
36
+ "_comments": {{ config._comments | cc_jsonify }},
37
+ {% endif %}
38
+ {% if config._options %}
39
+ "_options": {{ config._options | cc_jsonify }},
40
+ {% endif %}
41
+ {% if config._collection_groups %}
42
+ "_collection_groups": {{ config._collection_groups | cc_jsonify }},
43
+ {% endif %}
44
+ {% if config._editor %}
45
+ "_editor": {
46
+ "default_path": {{ config._editor.default_path | cc_jsonify }}
47
+ },
48
+ {% endif %}
49
+ {% if config._source_editor %}
50
+ "_source_editor": {
51
+ "tab_size": {{ config._source_editor.tab_size | cc_jsonify }},
52
+ "show_gutter": {{ config._source_editor.show_gutter | cc_jsonify }},
53
+ "theme": {{ config._source_editor.theme | cc_jsonify }}
54
+ },
55
+ {% endif %}
56
+ "paths": {
57
+ "uploads": {{ config.uploads_dir | cc_jsonify }},
58
+ "data": {{ config.data_dir | cc_jsonify }},
59
+ "pages": "",
60
+ "collections": {{ config.collections_dir | cc_jsonify }},
61
+ "includes": {{ config.includes_dir | cc_jsonify }},
62
+ "layouts": {{ config.layouts_dir | cc_jsonify }}
63
+ },
64
+ {% if config._array_structures %}
65
+ "_array_structures": {{ config._array_structures | cc_jsonify: nil, 50 }},
66
+ {% endif %}
67
+ {% assign select_data = config | cc_select_data_jsonify %}
68
+ {% if select_data %}
69
+ "_select_data": {{ select_data }},
70
+ {% endif %}
71
+ {% if config.defaults %}
72
+ "defaults": {{ config.defaults | cc_jsonify }},
73
+ {% endif %}
74
+ "source": {{ config.source | replace: pwd, "" | cc_jsonify }}
75
+ }
@@ -0,0 +1,88 @@
1
+ {
2
+ "time": {{ site.time | date_to_xmlschema | cc_jsonify }},
3
+ "cloudcannon": {
4
+ "name": "cloudcannon-jekyll",
5
+ "version": {{ gem_version | cc_jsonify }}
6
+ },
7
+ "generator": {
8
+ "name": "jekyll",
9
+ "version": {{ jekyll.version | cc_jsonify }},
10
+ "environment": {{ jekyll.env | cc_jsonify }},
11
+ "metadata": {
12
+ "markdown": {{ site.markdown | cc_jsonify }},
13
+ "kramdown": {{ site.kramdown | cc_jsonify }},
14
+ "commonmark": {{ site.commonmark | cc_jsonify }}
15
+ }
16
+ },
17
+ {% if config.timezone -%}
18
+ "timezone": {{ config.timezone | cc_jsonify }},
19
+ {%- endif %}
20
+ "collections-config": {{ collections_config | cc_jsonify: 'collections' }},
21
+ "collections": {
22
+ "drafts": {{ drafts | cc_jsonify }}{% if site.collections.size > 0 %},{% endif %}
23
+ {%- for collection in site.collections -%}
24
+ "{{ collection.label | xml_escape }}": {{ collection.docs | cc_jsonify }}
25
+ {%- unless forloop.last %},{% endunless %}
26
+ {%- endfor -%}
27
+ },
28
+ "pages": {{ site.html_pages | cc_jsonify }},
29
+ "static-pages": {{ site.static_files | cc_static_files_jsonify }},
30
+ {% if site.cloudcannon.data.first -%}
31
+ "data": {
32
+ {%- assign data_seen = false %}
33
+ {%- for data in site.data %}
34
+ {%- assign key = data[0] %}
35
+ {%- if site.cloudcannon.data[key] %}
36
+ {%- if data_seen %},{% endif -%}
37
+ {{ data[0] | cc_jsonify }}: {{ data[1] | cc_jsonify }}
38
+ {%- assign data_seen = true %}
39
+ {%- endif %}
40
+ {%- endfor -%}
41
+ },
42
+ {% elsif site.cloudcannon.data -%}
43
+ "data": {{ site.data | cc_jsonify }},
44
+ {%- endif %}
45
+ {% if config.baseurl -%}
46
+ "base-url": {{ config.baseurl | cc_jsonify }},
47
+ {%- endif %}
48
+ {% if config._comments -%}
49
+ "_comments": {{ config._comments | cc_jsonify }},
50
+ {%- endif %}
51
+ {% if config._options -%}
52
+ "_options": {{ config._options | cc_jsonify }},
53
+ {%- endif %}
54
+ {% if config._collection_groups -%}
55
+ "_collection_groups": {{ config._collection_groups | cc_jsonify }},
56
+ {%- endif %}
57
+ {% if config._editor -%}
58
+ "_editor": {
59
+ "default_path": {{ config._editor.default_path | cc_jsonify }}
60
+ },
61
+ {%- endif %}
62
+ {% if config._source_editor -%}
63
+ "_source_editor": {
64
+ "tab_size": {{ config._source_editor.tab_size | cc_jsonify }},
65
+ "show_gutter": {{ config._source_editor.show_gutter | cc_jsonify }},
66
+ "theme": {{ config._source_editor.theme | cc_jsonify }}
67
+ },
68
+ {%- endif %}
69
+ "paths": {
70
+ "uploads": {{ config.uploads_dir | cc_jsonify }},
71
+ "data": {{ config.data_dir | cc_jsonify }},
72
+ "pages": "",
73
+ "collections": {{ config.collections_dir | cc_jsonify }},
74
+ "includes": {{ config.includes_dir | cc_jsonify }},
75
+ "layouts": {{ config.layouts_dir | cc_jsonify }}
76
+ },
77
+ {% if config._array_structures -%}
78
+ "_array_structures": {{ config._array_structures | cc_jsonify: nil, 50 }},
79
+ {%- endif %}
80
+ {% assign select_data = config | cc_select_data_jsonify -%}
81
+ {% if select_data -%}
82
+ "_select_data": {{ select_data }},
83
+ {%- endif %}
84
+ {% if config.defaults -%}
85
+ "defaults": {{ config.defaults | cc_jsonify }},
86
+ {%- endif %}
87
+ "source": {{ config.source | replace: pwd, "" | cc_jsonify }}
88
+ }
@@ -17,12 +17,7 @@ module CloudCannonJekyll
17
17
  @site = site
18
18
  @reader = Reader.new(@site)
19
19
 
20
- collections_config = @site.config["collections"]&.dup || {}
21
-
22
- # Workaround for empty collection configurations
23
- collections_config.each_key do |key|
24
- collections_config[key] ||= { "output" => false }
25
- end
20
+ collections_config = process_collections_config
26
21
 
27
22
  payload = @site.site_payload.merge({
28
23
  "gem_version" => CloudCannonJekyll::VERSION,
@@ -31,16 +26,27 @@ module CloudCannonJekyll
31
26
  drafts = add_blogging_config(collections_config)
32
27
  add_collection_paths(collections_config)
33
28
  add_data_config(collections_config)
29
+ add_legacy_explore_groups
34
30
 
35
- generate_file("config", payload.merge({
36
- "pwd" => Dir.pwd,
37
- "config" => @site.config,
38
- "collections" => collections_config,
31
+ generate_file("info", payload.merge({
32
+ "pwd" => Dir.pwd,
33
+ "config" => @site.config,
34
+ "collections_config" => collections_config,
35
+ "drafts" => drafts,
39
36
  }))
37
+ end
40
38
 
41
- generate_file("details", payload.merge({
42
- "drafts" => drafts,
43
- }))
39
+ def process_collections_config
40
+ collections = @site.config["collections"]&.dup || {}
41
+ cc_collections = @site.config.dig("cloudcannon", "collections")&.dup || {}
42
+
43
+ collections.each_key do |key|
44
+ # Workaround for empty collection configurations
45
+ defaults = collections[key] || { "output" => false }
46
+ cc_collections[key] = (cc_collections[key] || {}).merge(defaults)
47
+ end
48
+
49
+ cc_collections
44
50
  end
45
51
 
46
52
  def collections_dir
@@ -74,13 +80,13 @@ module CloudCannonJekyll
74
80
  collections_path = "#{collections_dir}/#{folder}".gsub(%r!\/+!, "/").sub(%r!^\/+!, "")
75
81
 
76
82
  collections_config["#{folder}/posts"] = posts_config.merge({
77
- "_path" => "#{collections_path}/_posts",
83
+ "path" => "#{collections_path}/_posts",
78
84
  })
79
85
 
80
86
  # Adding the category draft config like this isn't ideal, since you could have drafts
81
87
  # without posts, but it's a decent trade off vs looking for _drafts folders
82
88
  collections_config["#{folder}/drafts"] = posts_config.merge({
83
- "_path" => "#{collections_path}/_drafts",
89
+ "path" => "#{collections_path}/_drafts",
84
90
  })
85
91
 
86
92
  path
@@ -88,10 +94,17 @@ module CloudCannonJekyll
88
94
  end
89
95
  # rubocop:enable Metrics/AbcSize
90
96
 
97
+ # Support for the deprecated _explore configuration
98
+ def add_legacy_explore_groups
99
+ unless @site.config.key?("_collection_groups")
100
+ @site.config["_collection_groups"] = @site.config.dig("_explore", "groups")&.dup
101
+ end
102
+ end
103
+
91
104
  # Add data to collections config if raw data files exist
92
105
  def add_data_config(collections_config)
93
106
  data_files = @reader.read_data(data_dir)
94
- collections_config["data"] = { "_path" => data_dir } if data_files&.keys&.any?
107
+ collections_config["data"] = { "path" => data_dir } if data_files&.keys&.any?
95
108
  end
96
109
 
97
110
  # Add posts/drafts to collections config
@@ -99,7 +112,7 @@ module CloudCannonJekyll
99
112
  collections_config["posts"] = { "output" => true } if Jekyll::VERSION.start_with? "2."
100
113
  drafts = @reader.read_drafts(collections_dir)
101
114
 
102
- if (collections_config.key?("posts") && !collections_config.key?("drafts")) || drafts.any?
115
+ if drafts.any? || (collections_config.key?("posts") && !collections_config.key?("drafts"))
103
116
  collections_config["drafts"] = {}
104
117
  end
105
118
 
@@ -111,12 +124,10 @@ module CloudCannonJekyll
111
124
  drafts
112
125
  end
113
126
 
114
- # Add _path to each collection config
127
+ # Add path to each collection config
115
128
  def add_collection_paths(collections_config)
116
129
  collections_config.each do |key, collection|
117
- next if collection.key?("_path")
118
-
119
- collection["_path"] = File.join(collections_dir, "_#{key}").sub(%r!^\/+!, "")
130
+ collection["path"] ||= File.join(collections_dir, "_#{key}").sub(%r!^\/+!, "")
120
131
  end
121
132
  end
122
133
 
@@ -64,7 +64,8 @@ module CloudCannonJekyll
64
64
  next if prevent.include? key
65
65
 
66
66
  prevent.push key
67
- "#{key.to_json}: #{JsonifyFilter.to_json(value, depth, max_depth)}"
67
+ next_max_depth = key == "_array_structures" ? 20 : max_depth
68
+ "#{key.to_json}: #{JsonifyFilter.to_json(value, depth, next_max_depth)}"
68
69
  end
69
70
 
70
71
  out.compact
@@ -147,8 +148,9 @@ module CloudCannonJekyll
147
148
 
148
149
  def self.hash_to_json(input, depth, max_depth, key_swaps = {})
149
150
  out = input.map do |key, value|
151
+ next_max_depth = key == "_array_structures" ? 20 : max_depth
150
152
  string_key = (key_swaps[key] || key).to_s.to_json
151
- "#{string_key}: #{JsonifyFilter.to_json(value, depth, max_depth, key_swaps)}"
153
+ "#{string_key}: #{JsonifyFilter.to_json(value, depth, next_max_depth, key_swaps)}"
152
154
  end
153
155
 
154
156
  "{#{out.join(",")}}"
@@ -162,7 +164,7 @@ module CloudCannonJekyll
162
164
  baseurl show_dir_listing permalink paginate_path timezone quiet verbose defaults
163
165
  liquid kramdown title url description uploads_dir _comments _options _editor
164
166
  _explore _source_editor _array_structures maruku redcloth rdiscount redcarpet
165
- gems plugins)
167
+ gems plugins cloudcannon _collection_groups)
166
168
 
167
169
  out = input.map do |key, value|
168
170
  next unless value.is_a?(Array) || value.is_a?(Hash)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CloudCannonJekyll
4
- VERSION = "0.4.0"
4
+ VERSION = "0.5.0"
5
5
  end
data/script/release CHANGED
@@ -11,10 +11,10 @@ cd $(dirname "$0")/..
11
11
  rm -rf cloudcannon-jekyll-*.gem
12
12
  gem build -q cloudcannon-jekyll.gemspec
13
13
 
14
- # Ensure we're on the master branch
14
+ # Ensure we're on the legacy branch
15
15
 
16
- (git branch | grep -q '* master') || {
17
- echo "Only release from the master branch."
16
+ (git branch | grep -q '* legacy') || {
17
+ echo "Only release from the legacy branch."
18
18
  exit 1
19
19
  }
20
20
 
@@ -34,6 +34,6 @@ git fetch -t origin
34
34
  # Push tag and upload new gem
35
35
 
36
36
  git tag "$tag" &&
37
- git push origin master &&
37
+ git push origin legacy &&
38
38
  git push origin "$tag" &&
39
39
  gem push cloudcannon-jekyll-*.gem
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloudcannon-jekyll
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - CloudCannon
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-22 00:00:00.000000000 Z
11
+ date: 2021-06-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -120,12 +120,9 @@ files:
120
120
  - Rakefile
121
121
  - cloudcannon-jekyll.gemspec
122
122
  - lib/cloudcannon-jekyll.rb
123
- - lib/cloudcannon-jekyll/_cloudcannon/config-2.x.json
124
- - lib/cloudcannon-jekyll/_cloudcannon/config-3.0-4.x.json
125
- - lib/cloudcannon-jekyll/_cloudcannon/config.json
126
- - lib/cloudcannon-jekyll/_cloudcannon/details-2.x.json
127
- - lib/cloudcannon-jekyll/_cloudcannon/details-3.0-4.x.json
128
- - lib/cloudcannon-jekyll/_cloudcannon/details.json
123
+ - lib/cloudcannon-jekyll/_cloudcannon/info-2.x.json
124
+ - lib/cloudcannon-jekyll/_cloudcannon/info-3.0-4.x.json
125
+ - lib/cloudcannon-jekyll/_cloudcannon/info.json
129
126
  - lib/cloudcannon-jekyll/configuration.rb
130
127
  - lib/cloudcannon-jekyll/generator.rb
131
128
  - lib/cloudcannon-jekyll/jsonify-filter.rb
@@ -1,36 +0,0 @@
1
- {
2
- "time": {{ site.time | date_to_xmlschema | cc_jsonify }},
3
- "cloudcannon": {
4
- "name": "cloudcannon-jekyll",
5
- "version": {{ gem_version | cc_jsonify }}
6
- },
7
- {% if config.timezone %}"timezone": {{ config.timezone | cc_jsonify }},{% endif %}
8
- "include": {{ config.include | cc_jsonify }},
9
- "exclude": {{ config.exclude | cc_jsonify }},
10
- {% if config.baseurl %}"base-url": {{ config.baseurl | cc_jsonify }},{% endif %}
11
- "collections": {{ collections | cc_jsonify: 'collections' }},
12
- {% if config._comments %}"comments": {{ config._comments | cc_jsonify }},{% endif %}
13
- {% if config._options %}"input-options": {{ config._options | cc_jsonify }},{% endif %}
14
- {% if config.defaults %}"defaults": {{ config.defaults | cc_jsonify }},{% endif %}
15
- {% if config._editor %}"editor": {
16
- "default-path": {{ config._editor.default_path | cc_jsonify }}
17
- },{% endif %}
18
- {% if config._source_editor %}"source-editor": {
19
- "tab-size": {{ config._source_editor.tab_size | cc_jsonify }},
20
- "show-gutter": {{ config._source_editor.show_gutter | cc_jsonify }},
21
- "theme": {{ config._source_editor.theme | cc_jsonify }}
22
- },{% endif %}
23
- {% if config._explore %}"explore": {{ config._explore | cc_jsonify }},{% endif %}
24
- "paths": {
25
- "uploads": {{ config.uploads_dir | cc_jsonify }},
26
- "plugins": {{ config.plugins_dir | cc_jsonify }},
27
- "data": {{ config.data_dir | cc_jsonify }},
28
- "pages": "",
29
- "collections": {{ config.collections_dir | cc_jsonify }},
30
- "includes": {{ config.includes_dir | cc_jsonify }},
31
- "layouts": {{ config.layouts_dir | cc_jsonify }}
32
- },
33
- {% if config._array_structures %}"array-structures": {{ config._array_structures | cc_jsonify: nil, 20 }},{% endif %}
34
- {% assign select_data = config | cc_select_data_jsonify %}{% if select_data %}"select-data": {{ select_data }},{% endif %}
35
- "source": {{ config.source | replace: pwd, "" | cc_jsonify }}
36
- }
@@ -1,36 +0,0 @@
1
- {
2
- "time": {{ site.time | date_to_xmlschema | cc_jsonify }},
3
- "cloudcannon": {
4
- "name": "cloudcannon-jekyll",
5
- "version": {{ gem_version | cc_jsonify }}
6
- },
7
- {% if config.timezone %}"timezone": {{ config.timezone | cc_jsonify }},{% endif %}
8
- "include": {{ config.include | cc_jsonify }},
9
- "exclude": {{ config.exclude | cc_jsonify }},
10
- {% if config.baseurl %}"base-url": {{ config.baseurl | cc_jsonify }},{% endif %}
11
- "collections": {{ collections | cc_jsonify: 'collections' }},
12
- {% if config._comments %}"comments": {{ config._comments | cc_jsonify }},{% endif %}
13
- {% if config._options %}"input-options": {{ config._options | cc_jsonify }},{% endif %}
14
- {% if config.defaults %}"defaults": {{ config.defaults | cc_jsonify }},{% endif %}
15
- {% if config._editor %}"editor": {
16
- "default-path": {{ config._editor.default_path | cc_jsonify }}
17
- },{% endif %}
18
- {% if config._source_editor %}"source-editor": {
19
- "tab-size": {{ config._source_editor.tab_size | cc_jsonify }},
20
- "show-gutter": {{ config._source_editor.show_gutter | cc_jsonify }},
21
- "theme": {{ config._source_editor.theme | cc_jsonify }}
22
- },{% endif %}
23
- {% if config._explore %}"explore": {{ config._explore | cc_jsonify }},{% endif %}
24
- "paths": {
25
- "uploads": {{ config.uploads_dir | cc_jsonify }},
26
- "plugins": {{ config.plugins_dir | cc_jsonify }},
27
- "data": {{ config.data_dir | cc_jsonify }},
28
- "pages": "",
29
- "collections": {{ config.collections_dir | cc_jsonify }},
30
- "includes": {{ config.includes_dir | cc_jsonify }},
31
- "layouts": {{ config.layouts_dir | cc_jsonify }}
32
- },
33
- {% if config._array_structures %}"array-structures": {{ config._array_structures | cc_jsonify: nil, 20 }},{% endif %}
34
- {% assign select_data = config | cc_select_data_jsonify %}{% if select_data %}"select-data": {{ select_data }},{% endif %}
35
- "source": {{ config.source | replace: pwd, "" | cc_jsonify }}
36
- }
@@ -1,57 +0,0 @@
1
- {
2
- "time": {{ site.time | date_to_xmlschema | cc_jsonify }},
3
- "cloudcannon": {
4
- "name": "cloudcannon-jekyll",
5
- "version": {{ gem_version | cc_jsonify }}
6
- },
7
- {% if config.timezone -%}
8
- "timezone": {{ config.timezone | cc_jsonify }},
9
- {%- endif %}
10
- "include": {{ config.include | cc_jsonify }},
11
- "exclude": {{ config.exclude | cc_jsonify }},
12
- {% if config.baseurl -%}
13
- "base-url": {{ config.baseurl | cc_jsonify }},
14
- {%- endif %}
15
- "collections": {{ collections | cc_jsonify: 'collections' }},
16
- {% if config._comments -%}
17
- "comments": {{ config._comments | cc_jsonify }},
18
- {%- endif %}
19
- {% if config._options -%}
20
- "input-options": {{ config._options | cc_jsonify }},
21
- {%- endif %}
22
- {% if config.defaults -%}
23
- "defaults": {{ config.defaults | cc_jsonify }},
24
- {%- endif %}
25
- {% if config._editor -%}
26
- "editor": {
27
- "default-path": {{ config._editor.default_path | cc_jsonify }}
28
- },
29
- {%- endif %}
30
- {% if config._source_editor -%}
31
- "source-editor": {
32
- "tab-size": {{ config._source_editor.tab_size | cc_jsonify }},
33
- "show-gutter": {{ config._source_editor.show_gutter | cc_jsonify }},
34
- "theme": {{ config._source_editor.theme | cc_jsonify }}
35
- },
36
- {%- endif %}
37
- {% if config._explore -%}
38
- "explore": {{ config._explore | cc_jsonify }},
39
- {%- endif %}
40
- "paths": {
41
- "uploads": {{ config.uploads_dir | cc_jsonify }},
42
- "plugins": {{ config.plugins_dir | cc_jsonify }},
43
- "data": {{ config.data_dir | cc_jsonify }},
44
- "pages": "",
45
- "collections": {{ config.collections_dir | cc_jsonify }},
46
- "includes": {{ config.includes_dir | cc_jsonify }},
47
- "layouts": {{ config.layouts_dir | cc_jsonify }}
48
- },
49
- {% if config._array_structures -%}
50
- "array-structures": {{ config._array_structures | cc_jsonify: nil, 20 }},
51
- {%- endif %}
52
- {% assign select_data = config | cc_select_data_jsonify -%}
53
- {% if select_data -%}
54
- "select-data": {{ select_data }},
55
- {%- endif %}
56
- "source": {{ config.source | replace: pwd, "" | cc_jsonify }}
57
- }
@@ -1,28 +0,0 @@
1
- {
2
- "time": {{ site.time | date_to_xmlschema | cc_jsonify }},
3
- "cloudcannon": {
4
- "name": "cloudcannon-jekyll",
5
- "version": {{ gem_version | cc_jsonify }}
6
- },
7
- "generator": {
8
- "name": "jekyll",
9
- "version": {{ jekyll.version | cc_jsonify }},
10
- "environment": {{ jekyll.env | cc_jsonify }},
11
- "metadata": {
12
- "markdown": {{ site.markdown | cc_jsonify }},
13
- "kramdown": {{ site.kramdown | cc_jsonify }},
14
- "commonmark": {{ site.commonmark | cc_jsonify }}
15
- }
16
- },{% if site.cloudcannon.data.first %}{% assign data_seen = false %}
17
- "data": {
18
- {% for data in site.data %}{% assign key = data[0] %}{% if site.cloudcannon.data[key] %}{% if data_seen %},{% endif %}{{ data[0] | cc_jsonify }}: {{ data[1] | cc_jsonify }}{% assign data_seen = true %}{% endif %}{% endfor %}},
19
- {% elsif site.cloudcannon.data %}"data": {{ site.data | cc_jsonify }},{% endif %}
20
- "collections": {
21
- "drafts": {{ drafts | cc_jsonify }},
22
- "posts": {{ site.posts | reverse | cc_jsonify }}{% if site.collections.size > 0 %},{% endif %}
23
- {% for collection in site.collections %}"{{ collection[0] | xml_escape }}": {{ collection[1].docs | cc_jsonify }}{% unless forloop.last %},{% endunless %}
24
- {% endfor %}
25
- },
26
- "pages": {{ site.html_pages | cc_jsonify }},
27
- "static-pages": {{ site.static_files | cc_static_files_jsonify }}
28
- }
@@ -1,27 +0,0 @@
1
- {
2
- "time": {{ site.time | date_to_xmlschema | cc_jsonify }},
3
- "cloudcannon": {
4
- "name": "cloudcannon-jekyll",
5
- "version": {{ gem_version | cc_jsonify }}
6
- },
7
- "generator": {
8
- "name": "jekyll",
9
- "version": {{ jekyll.version | cc_jsonify }},
10
- "environment": {{ jekyll.env | cc_jsonify }},
11
- "metadata": {
12
- "markdown": {{ site.markdown | cc_jsonify }},
13
- "kramdown": {{ site.kramdown | cc_jsonify }},
14
- "commonmark": {{ site.commonmark | cc_jsonify }}
15
- }
16
- },{% if site.cloudcannon.data.first %}{% assign data_seen = false %}
17
- "data": {
18
- {% for data in site.data %}{% assign key = data[0] %}{% if site.cloudcannon.data[key] %}{% if data_seen %},{% endif %}{{ data[0] | cc_jsonify }}: {{ data[1] | cc_jsonify }}{% assign data_seen = true %}{% endif %}{% endfor %}},
19
- {% elsif site.cloudcannon.data %}"data": {{ site.data | cc_jsonify }},{% endif %}
20
- "collections": {
21
- "drafts": {{ drafts | cc_jsonify }}{% if site.collections.size > 0 %},{% endif %}
22
- {% for collection in site.collections %}"{{ collection.label | xml_escape }}": {{ collection.docs | cc_jsonify }}{% unless forloop.last %},{% endunless %}
23
- {% endfor %}
24
- },
25
- "pages": {{ site.html_pages | cc_jsonify }},
26
- "static-pages": {{ site.static_files | cc_static_files_jsonify }}
27
- }
@@ -1,41 +0,0 @@
1
- {
2
- "time": {{ site.time | date_to_xmlschema | cc_jsonify }},
3
- "cloudcannon": {
4
- "name": "cloudcannon-jekyll",
5
- "version": {{ gem_version | cc_jsonify }}
6
- },
7
- "generator": {
8
- "name": "jekyll",
9
- "version": {{ jekyll.version | cc_jsonify }},
10
- "environment": {{ jekyll.env | cc_jsonify }},
11
- "metadata": {
12
- "markdown": {{ site.markdown | cc_jsonify }},
13
- "kramdown": {{ site.kramdown | cc_jsonify }},
14
- "commonmark": {{ site.commonmark | cc_jsonify }}
15
- }
16
- },
17
- {% if site.cloudcannon.data.first -%}
18
- "data": {
19
- {%- assign data_seen = false %}
20
- {%- for data in site.data %}
21
- {%- assign key = data[0] %}
22
- {%- if site.cloudcannon.data[key] %}
23
- {%- if data_seen %},{% endif -%}
24
- {{ data[0] | cc_jsonify }}: {{ data[1] | cc_jsonify }}
25
- {%- assign data_seen = true %}
26
- {%- endif %}
27
- {%- endfor -%}
28
- },
29
- {% elsif site.cloudcannon.data -%}
30
- "data": {{ site.data | cc_jsonify }},
31
- {%- endif %}
32
- "collections": {
33
- "drafts": {{ drafts | cc_jsonify }}{% if site.collections.size > 0 %},{% endif %}
34
- {%- for collection in site.collections -%}
35
- "{{ collection.label | xml_escape }}": {{ collection.docs | cc_jsonify }}
36
- {%- unless forloop.last %},{% endunless %}
37
- {%- endfor -%}
38
- },
39
- "pages": {{ site.html_pages | cc_jsonify }},
40
- "static-pages": {{ site.static_files | cc_static_files_jsonify }}
41
- }