jekyll-theme-isotc211 0.4.8 → 0.4.9

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
- SHA1:
3
- metadata.gz: 2cdac92bdbcc467dfee554b35c120895ddd942e1
4
- data.tar.gz: cc35123c14ee6ccec1c042365ea826e9da4bc1da
2
+ SHA256:
3
+ metadata.gz: 8d2f943137f52e7d8a4b3a44648c738ae2ca7f602793a8704ab8c455b899bedb
4
+ data.tar.gz: 8d42c82de52ebe3525b6f26552c870b2646ba3797f0d7df4cece5f5da56ecfa8
5
5
  SHA512:
6
- metadata.gz: b23d82e1cf35ae43fc664688164dd0089dabb6f737a69b2229fbc9d059fa4e256e172de33e91595f144fea8013fbc84ea49cc83e4cdfdf751055d97330cb5242
7
- data.tar.gz: 3b3d487f8c5cb55717e728ac1f764a678c9b6274d5f2e16afe05d5a238586bd0607e8ebc31a7724aa848092fb091fd2302d5c68f578d9571e525d34bc5bc5dd2
6
+ metadata.gz: 28b2e0db9719adecb12cbf15d528dab380228cda6728414d0e01a4d6c218e8d8a71559f7a64ed37337f703d2ab4072f65c694704c9efdde552d24839b2d0ce1c
7
+ data.tar.gz: 6a212ec359c85d4dd1e8ae73cddc46f231cc50b473767aecaf9d95468427bc30cb7bb21805015c9671676d82c14d11fb134f2d3914c53383ee97071ea410391c
data/README.md CHANGED
@@ -6,10 +6,21 @@ including www.isotc211.org and resource sites such as geolexica.com.
6
6
 
7
7
  ## Configuring site
8
8
 
9
- Recommended plugins to add to your Gemfile:
9
+ Theme relies on accompanying helper plugin
10
+ (note: plugin gem version should match theme version):
10
11
 
11
12
  ```
12
13
  group :jekyll_plugins do
14
+ gem "jekyll-theme-isotc211-helpers"
15
+ # ...
16
+ end
17
+ ```
18
+
19
+ Other recommended plugins to add to your Gemfile:
20
+
21
+ ```
22
+ group :jekyll_plugins do
23
+ # ...
13
24
  gem "jekyll-data"
14
25
  gem "jekyll-asciidoc"
15
26
  gem "jekyll-external-links"
@@ -39,6 +50,20 @@ committee:
39
50
  - url: /faq
40
51
  title: FAQ
41
52
 
53
+ # Builds browsable resource pages
54
+ resource_listings:
55
+ schemas:
56
+ # Source directory containing resources, relative to site source root.
57
+ # Each subdirectory within will be treated as a resource
58
+ resource_root: 'schemas'
59
+
60
+ # The path, under which resource browser will be available to site visitors
61
+ index_url: 'schemas'
62
+
63
+ # These control resource index & individual resource pages
64
+ index_title: "Schemas"
65
+ resource_label: "schema"
66
+
42
67
  always_show_committee_link_on_landing: yes
43
68
 
44
69
  awards:
data/_includes/head.html CHANGED
@@ -34,4 +34,24 @@
34
34
  <script src="{{ "/assets/ga.js" | relative_url }}"></script>
35
35
  {% endif %}
36
36
 
37
+ {% assign extra_stylesheets = page.extra_stylesheets | default: layout.extra_stylesheets %}
38
+ {% if extra_stylesheets %}
39
+ {% for ss in extra_stylesheets %}
40
+ <link rel="stylesheet"
41
+ href="{{ ss.href }}"
42
+ {% if ss.integrity %}integrity="{{ ss.integrity }}"{% endif %}
43
+ {% if ss.crossorigin %}crossorigin="{{ ss.crossorigin }}"{% endif %}>
44
+ {% endfor %}
45
+ {% endif %}
46
+
47
+ {% assign extra_scripts = page.extra_scripts | default: layout.extra_scripts %}
48
+ {% if extra_scripts %}
49
+ {% for sc in extra_scripts %}
50
+ <script
51
+ src="{{ sc.src }}"
52
+ {% if sc.integrity %}integrity="{{ sc.integrity }}"{% endif %}
53
+ {% if sc.crossorigin %}crossorigin="{{ sc.crossorigin }}"{% endif %}></script>
54
+ {% endfor %}
55
+ {% endif %}
56
+
37
57
  </head>
@@ -0,0 +1,49 @@
1
+ <li class="bp3-tree-node bp3-tree-node-expanded">
2
+
3
+ <div class="
4
+ bp3-tree-node-content
5
+ {% if include.level > 0 %}bp3-tree-node-content-{{ include.level }}{% endif %}">
6
+
7
+ <span class="
8
+ {% if include.children %}bp3-tree-node-caret bp3-tree-node-caret-open
9
+ {% else %}bp3-tree-node-caret-none
10
+ {% endif %}
11
+ bp3-icon-standard"></span>
12
+ <span class="
13
+ bp3-tree-node-icon bp3-icon-standard
14
+ {% if include.children %}bp3-icon-folder-close
15
+ {% else %}bp3-icon-document
16
+ {% endif %}"></span>
17
+
18
+ <span class="bp3-tree-node-label" title="{{ include.data }}">
19
+ {% unless include.children %}
20
+ <a href="/{{ include.full_path }}">{{ include.data }}</a>
21
+ {% else %}
22
+ {{ include.data }}
23
+ {% endunless %}
24
+ </span>
25
+
26
+ {% unless include.children %}
27
+ <span class="bp3-tree-node-secondary-label">
28
+ <a
29
+ title="Open in separate viewer window"
30
+ target="resource-viewer"
31
+ class="bp3-icon-standard bp3-icon-document-share"
32
+ href="/{{ include.full_path }}"></a>
33
+ </span>
34
+ {% endunless %}
35
+ </div>
36
+
37
+ {% if include.children %}
38
+ <ul class="bp3-tree-node-list">
39
+ {% for subitem in include.children %}
40
+ {% include resource-tree-item.html
41
+ full_path=subitem.full_path
42
+ data=subitem.data
43
+ children=subitem.children
44
+ level=subitem.level %}
45
+ {% endfor %}
46
+ </ul>
47
+ {% endif %}
48
+
49
+ </li>
@@ -4,10 +4,17 @@ layout: default
4
4
  ---
5
5
  {% assign title = page.title | default: page.title_html | default: layout.title | default: layout.title_html %}
6
6
  {% assign parent_title = page.parent_title | default: layout.parent_title %}
7
+ {% assign parent_link = page.parent_link | default: layout.parent_link %}
7
8
  {% if title or parent_title %}
8
9
  <header>
9
10
  {% if parent_title %}
10
- <p class="section-title">{{ parent_title }}</p>
11
+ <p class="section-title">
12
+ {% if parent_link %}
13
+ <a href="{{ parent_link }}">{{ parent_title }}</a>
14
+ {% else %}
15
+ {{ parent_title }}
16
+ {% endif %}
17
+ </p>
11
18
  {% endif %}
12
19
 
13
20
  {% if title %}
@@ -0,0 +1,14 @@
1
+ ---
2
+ layout: base-page
3
+ bodyClass: resource-index
4
+ ---
5
+
6
+ {{ content }}
7
+
8
+ <ul>
9
+ {% for resource in page.resources %}
10
+ <li>
11
+ <a href="./{{ resource[0] }}">{{ resource[0] }}</a>
12
+ </li>
13
+ {% endfor %}
14
+ </ul>
@@ -0,0 +1,25 @@
1
+ ---
2
+ layout: base-page
3
+ bodyClass: resource
4
+
5
+ extra_stylesheets:
6
+ - href: https://unpkg.com/normalize.css@^7.0.0
7
+ - href: https://unpkg.com/@blueprintjs/icons@^3.4.0/lib/css/blueprint-icons.css
8
+ - href: https://unpkg.com/@blueprintjs/core@^3.10.0/lib/css/blueprint.css
9
+ ---
10
+
11
+ {{ content }}
12
+
13
+ <div class="two-pane-viewer">
14
+ <div class="browser bp3-tree bp3-elevation-0">
15
+ <ul class="bp3-tree-node-list bp3-tree-root">
16
+ {% include resource-tree-item.html data=page.contents.data children=page.contents.children level=0 %}
17
+ </ul>
18
+ </div>
19
+
20
+ <div class="viewer">
21
+ <iframe src="/assets/resource-viewer-placeholder.html"></iframe>
22
+ </div>
23
+ </div>
24
+
25
+ <script src="/assets/resource-browser.js"></script>
data/_sass/home.scss CHANGED
@@ -20,10 +20,9 @@ body.home {
20
20
 
21
21
  .items {
22
22
  display: flex;
23
- flex-flow: row nowrap;
23
+ flex-flow: row wrap;
24
24
  justify-content: flex-start;
25
25
  align-items: stretch;
26
- overflow-x: auto;
27
26
  padding-top: 1em;
28
27
  padding-bottom: 1em;
29
28
  }
@@ -34,6 +33,7 @@ body.home {
34
33
  padding: 0 $homeSectionItemSidePadding;
35
34
  background: #fff;
36
35
  margin-right: 1em;
36
+ margin-bottom: 1em;
37
37
  box-shadow: 1px 1px 20px -5px rgba(black, 0.3);
38
38
 
39
39
  min-width: 320px;
@@ -23,6 +23,8 @@ $mainSectionBackgroundColor: rgba(white, 0.8);
23
23
  $linkColor: $isoTCColor;
24
24
  $linkColorInverse: white;
25
25
 
26
+ $stripeWidth: 30px;
27
+
26
28
  $homeSectionItemSidePadding: 1em;
27
29
 
28
30
  @mixin titleFontFamily($useBold: false) {
@@ -81,3 +83,59 @@ html {
81
83
  @import 'post';
82
84
  @import 'posts';
83
85
  @import 'legacy-crossbrowser';
86
+
87
+ body.resource {
88
+ max-height: 100vh;
89
+
90
+ > main {
91
+ flex: 1 1 auto;
92
+ padding-top: 1em;
93
+ overflow: hidden;
94
+
95
+ > header h1 {
96
+ display: none;
97
+ }
98
+ }
99
+
100
+ .two-pane-viewer {
101
+ display: flex;
102
+ flex-flow: row nowrap;
103
+ overflow: hidden;
104
+ width: 100%;
105
+ flex: 1;
106
+
107
+ .viewer {
108
+ position: relative;
109
+ flex: 1;
110
+ display: flex;
111
+ flex-flow: row nowrap;
112
+ padding: 1em;
113
+ margin: 0 1em;
114
+ border-radius: 1em;
115
+ background: whiteSmoke;
116
+
117
+ iframe {
118
+ flex: 1;
119
+ border: 0;
120
+ }
121
+ }
122
+
123
+ .browser {
124
+ max-width: 300px;
125
+ font-size: 84%;
126
+ box-shadow: none;
127
+ overflow-y: scroll;
128
+ padding-top: 1em;
129
+
130
+ a {
131
+ color: inherit;
132
+ text-decoration: none;
133
+ border: 0;
134
+
135
+ &.selected {
136
+ font-weight: bold;
137
+ }
138
+ }
139
+ }
140
+ }
141
+ }
data/_sass/main.scss CHANGED
@@ -7,6 +7,10 @@ body > main a {
7
7
  color: $linkColor;
8
8
  border-bottom: 1px solid $linkColor;
9
9
 
10
+ &:hover {
11
+ text-decoration: none;
12
+ }
13
+
10
14
  &[rel=external] {
11
15
  border-bottom-style: dotted;
12
16
  &:link, &:hover, &:focus, &:active {
@@ -23,8 +27,6 @@ body > main a {
23
27
  // Main layout
24
28
  // ===========
25
29
 
26
- $stripeWidth: 30px;
27
-
28
30
  body > main {
29
31
  font-size: 18px;
30
32
  @include asciidoc-markup();
data/_sass/offsets.scss CHANGED
@@ -31,9 +31,7 @@ body.home > main {
31
31
 
32
32
  body.home > main > .news {
33
33
  .items {
34
- .news-item-card:first-child {
35
- margin-left: calc(#{$sideOffsetBase} - #{$homeSectionItemSidePadding});
36
- }
34
+ margin-left: calc(#{$sideOffsetBase} - #{$homeSectionItemSidePadding});
37
35
  }
38
36
  }
39
37
 
@@ -49,6 +47,13 @@ body.home > main > .news {
49
47
  }
50
48
  }
51
49
 
52
- body.post, body.page, body.post-index {
50
+ body.post, body.page, body.post-index, body.resource-index {
53
51
  @extend .pad-all-main-contents;
54
52
  }
53
+
54
+ body.resource {
55
+ > main > * {
56
+ padding-left: $stripeWidth * 2;
57
+ padding-right: 0;
58
+ }
59
+ }
@@ -0,0 +1,26 @@
1
+ (function () {
2
+ var viewer = document.querySelector('.two-pane-viewer');
3
+
4
+ if (viewer) {
5
+ var browser = viewer.querySelector('.browser.bp3-tree');
6
+ var iframe = viewer.querySelector('.viewer iframe');
7
+ if (browser && iframe) {
8
+
9
+ function selectItem (item) {
10
+ for (var el of browser.querySelectorAll('a')) {
11
+ el.classList.remove('selected');
12
+ }
13
+ item.classList.add('selected');
14
+ }
15
+
16
+ for (var el of browser.querySelectorAll('.bp3-tree-node-label a')) {
17
+ el.addEventListener('click', function (evt) {
18
+ selectItem(evt.target);
19
+ evt.preventDefault();
20
+ iframe.setAttribute('src', evt.target.getAttribute('href'));
21
+ return false;
22
+ });
23
+ }
24
+ }
25
+ }
26
+ }());
@@ -0,0 +1,11 @@
1
+ <style>
2
+ p {
3
+ font-family: sans-serif;
4
+ }
5
+ </style>
6
+
7
+ <p>
8
+ Select a document on the left to view or download.
9
+
10
+ <p>
11
+ Note: Certain files may be better formatted when viewed in a separate window.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-theme-isotc211
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.8
4
+ version: 0.4.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-06-06 00:00:00.000000000 Z
11
+ date: 2019-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '1.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: jekyll-theme-isotc211-helpers
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 0.4.9
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 0.4.9
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: bundler
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -135,6 +149,7 @@ files:
135
149
  - _includes/copyright.html
136
150
  - _includes/head.html
137
151
  - _includes/newsroll-entry.html
152
+ - _includes/resource-tree-item.html
138
153
  - _includes/script.html
139
154
  - _layouts/base-page.html
140
155
  - _layouts/default.html
@@ -142,6 +157,8 @@ files:
142
157
  - _layouts/page.html
143
158
  - _layouts/post.html
144
159
  - _layouts/posts.html
160
+ - _layouts/resource-index.html
161
+ - _layouts/resource-page.html
145
162
  - _pages/404.adoc
146
163
  - _sass/adoc-markup.scss
147
164
  - _sass/expandable-nav.scss
@@ -158,6 +175,8 @@ files:
158
175
  - assets/logo-iso.svg
159
176
  - assets/logo-ribose.svg
160
177
  - assets/nav.js
178
+ - assets/resource-browser.js
179
+ - assets/resource-viewer-placeholder.html
161
180
  homepage: https://github.com/iso-tc211/jekyll-theme-isotc211/
162
181
  licenses:
163
182
  - MIT
@@ -178,7 +197,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
178
197
  version: '0'
179
198
  requirements: []
180
199
  rubyforge_project:
181
- rubygems_version: 2.5.2.3
200
+ rubygems_version: 2.7.6.2
182
201
  signing_key:
183
202
  specification_version: 4
184
203
  summary: ISO/TC 211 Jekyll theme