jekyll-theme-open-project 1.1.22 → 1.1.23

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: 7b32212dcad5f501fa4f6ebf677abc5b1617f265
4
- data.tar.gz: d07256ea4108273acd9671565d008d585dc4e8fd
2
+ SHA256:
3
+ metadata.gz: 743ef6f6997140f43beb6d9735795c56fee28d897bcb80e081f10a5921625d36
4
+ data.tar.gz: bdd6142500f0b231311451a231c1cbd89a40d63288d1a20a603a20e38d2e975b
5
5
  SHA512:
6
- metadata.gz: 20b7a7c6054966854a1a65cd67fc5803dc1ef6c88eb135bcf499e296a82e5d93f423cbb5b009cccffb92f4c5df61e5893340567d15cfe7a9a2b3e31d8d5a9a58
7
- data.tar.gz: a833f8ef9b4fa07d493bbfac3e518da679b8a08198a7aa7be44a3358e51f4e9a6c68d08b232e591a0ca018d23c8d244e0af0f82afac5caf1a7c6dd96236ad676
6
+ metadata.gz: 733f3a2dcc8e506dc07d8c7830e91b57ba06417554edcd11e77158e9a59fca3a900ca91597bc4e55bced039f119feee23ab05a763b71ebafb0608f2da4a70ada
7
+ data.tar.gz: bfd487f407634ee6bddafe018256d1f0f61dd8a4b81d51c1809f87237637d82d4e7dfc536fb149532c86fff0813753cc49c31da9359022567daa5ecbdc2f87bd
data/README.md CHANGED
@@ -45,6 +45,10 @@ and it hasn’t been tested on newer versions.
45
45
 
46
46
  jekyll new my-open-site
47
47
 
48
+ If you use Git for site source version management,
49
+ see the “Extra .gitignore rules” section below
50
+ for additional lines you should add to your `.gitignore`.
51
+
48
52
  ### Installing theme
49
53
 
50
54
  Add this line to your Jekyll site's `Gemfile`,
@@ -63,6 +67,7 @@ Also in the `Gemfile`, add two important plugins to the `:jekyll_plugins` group.
63
67
  group :jekyll_plugins do
64
68
  gem "jekyll-seo-tag"
65
69
  gem "jekyll-data"
70
+ gem "jekyll-asciidoc"
66
71
  gem "jekyll-theme-open-project-helpers"
67
72
  # ...other plugins, if you use any
68
73
  end
@@ -105,6 +110,10 @@ These settings apply to both site types (hub and project).
105
110
  (and don’t forget to remove default theme requirement there):
106
111
 
107
112
  ```yaml
113
+ url: https://example.com/
114
+ # Site’s URL with protocol and without optional www. prefix.
115
+ # Used e.g. for marking external links in docs and blog posts.
116
+
108
117
  title: Site title
109
118
  description: Site description
110
119
  # The above two are used by jekyll-seo-tag for things such as
@@ -328,6 +337,11 @@ author: "Company or Individual Name Goes Here"
328
337
  parent_hub:
329
338
  git_repo_url: git@example.com:path/to-repo.git
330
339
  home_url: https://www.example.com/
340
+
341
+ algolia_search:
342
+ api_key: '<your Algolia API key>'
343
+ index_name: '<your Algolia index name>'
344
+ # Only add this if you want to use Algolia’s search on your project site.
331
345
  ```
332
346
 
333
347
  File layout is the same as described in the section
@@ -511,6 +525,7 @@ and then in `<theme root>/_includes/<include_name>`. Consequently,
511
525
  you put your include overrides directly in site root, **not** inside
512
526
  `_includes/` directory of your side.
513
527
 
528
+
514
529
  ## Theme layouts
515
530
 
516
531
  Normally you don’t need to specify layouts manually, except where
@@ -624,6 +639,21 @@ $hub-specs--hero-background: $hub-specs--primary-dark-color !default;
624
639
  ```
625
640
 
626
641
 
642
+ ## Extra .gitignore rules
643
+
644
+ Add these lines to your .gitignore to prevent
645
+ theme-generated files and directories from adding chaos to your Git staging.
646
+
647
+ ```
648
+ _software/*/.git
649
+ _software/*/docs
650
+ _software/_*_repo
651
+ _specs/*/.git
652
+ _specs/*/docs
653
+ parent-hub/*
654
+ ```
655
+
656
+
627
657
  ## Contributing
628
658
 
629
659
  Bug reports and pull requests are welcome on GitHub
data/_config.yml CHANGED
@@ -4,6 +4,12 @@ includes_dir: .
4
4
 
5
5
  permalink: /blog/:month-:day-:year/:title/
6
6
 
7
+ # algolia_search:
8
+ # api_key: ''
9
+ # index_name: ''
10
+ # Uncomment this if you want to use Algolia’s search.
11
+ # It’s free for open-source projects.
12
+
7
13
  exclude:
8
14
  - /**/.git/*
9
15
  - /_projects/**/_*_repo/*
@@ -29,7 +29,7 @@
29
29
  </header>
30
30
 
31
31
  <section class="external-links">
32
- {% include item-external-links.html item_type=include.item_type item_data=include.item_data %}
32
+ {% include item-external-links.html item_type=include.item_type item_data=item_data %}
33
33
  </section>
34
34
 
35
35
  {% elsif num_nav_sections > 0 %}
@@ -60,8 +60,8 @@
60
60
  {{ linked_page.title }}
61
61
  </span>
62
62
  {% else %}
63
- <li class="item disabled">
64
- <span>
63
+ <li class="item">
64
+ <span class="tbd">
65
65
  {{ item }}
66
66
  </span>
67
67
  {% endif %}
@@ -85,13 +85,20 @@
85
85
  <h1 class="text">{{ page.title }}</h1>
86
86
  </div>
87
87
 
88
+ {% if is_docs_landing == false %}
89
+ <nav>
90
+ <button class="docs-nav-toggle">Show table of contents</button>
91
+ <a href="{{ item_data.docs.git_repo_url }}/edit/master/docs/{{ page.path | split: "/" | last }}" class="docs-suggest-edits">Suggest edits to this page</a>
92
+ </nav>
93
+ {% endif %}
94
+
88
95
  <div>
89
96
  <h3 class="lead">{{ page.description }}</h3>
90
97
  </div>
91
98
 
92
99
  {% if is_docs_landing %}
93
100
  <div class="external-links">
94
- {% include item-external-links.html item_type=include.item_type item_data=include.item_data %}
101
+ {% include item-external-links.html item_type=include.item_type item_data=item_data %}
95
102
  </div>
96
103
  {% endif %}
97
104
  </header>
@@ -100,5 +107,14 @@
100
107
  {{ content }}
101
108
  </div>
102
109
 
110
+ {% if is_docs_landing == false %}
111
+ <footer>
112
+ <nav>
113
+ <button class="docs-nav-toggle">Show table of contents</button>
114
+ <a href="{{ item_data.docs.git_repo_url }}/edit/master/docs/{{ page.path | split: "/" | last }}" class="docs-suggest-edits">Suggest edits to this page</a>
115
+ </nav>
116
+ </footer>
117
+ {% endif %}
118
+
103
119
  </article>
104
120
  </section>
@@ -18,9 +18,6 @@
18
18
  Source Repository
19
19
  </span>
20
20
  {% endif %}
21
- <span class="ico-ext">
22
- <i class="fas fa-external-link-square-alt"></i>
23
- </span>
24
21
  </a> {% endif %}
25
22
  {% if item_data.docs_url %}
26
23
  <li class="item">
@@ -47,9 +44,6 @@
47
44
  Documentation
48
45
  </span>
49
46
  {% endif %}
50
- <span class="ico-ext">
51
- <i class="fas fa-external-link-square-alt"></i>
52
- </span>
53
47
  </a> {% endif %}
54
48
  </ul>
55
49
  {% else if include.item_type == 'specs' and item_data.rfc_id or item_data.ietf_datatracker_id or item_data.source_url %}
@@ -60,9 +54,6 @@
60
54
  <span class="lbl">
61
55
  IETF RFC {{ item_data.rfc_id }}
62
56
  </span>
63
- <span class="ico-ext">
64
- <i class="fas fa-external-link-square-alt"></i>
65
- </span>
66
57
  </a> {% endif %}
67
58
  {% if item_data.ietf_datatracker_id %}
68
59
  <li class="item">
@@ -70,9 +61,6 @@
70
61
  <span class="lbl">
71
62
  IETF document
72
63
  </span>
73
- <span class="ico-ext">
74
- <i class="fas fa-external-link-square-alt"></i>
75
- </span>
76
64
  </a> {% endif %}
77
65
  {% if item_data.source_url %}
78
66
  <li class="item">
@@ -92,9 +80,6 @@
92
80
  Source Markup
93
81
  </span>
94
82
  {% endif %}
95
- <span class="ico-ext">
96
- <i class="fas fa-external-link-square-alt"></i>
97
- </span>
98
83
  </a> {% endif %}
99
84
  </ul>
100
85
  {% endif %}
@@ -15,6 +15,13 @@
15
15
  {% endif %}
16
16
 
17
17
  {% else %}
18
+
19
+ {% if site.algolia_search %}
20
+ <div class="search-widget">
21
+ <input type="search" id="siteSearchInput" placeholder="Type to search…">
22
+ </div>
23
+ {% endif %}
24
+
18
25
  {% if site.num_all_software > 0 %}
19
26
  {% include nav-page-link.html url="/software/" title="Software ecosystem" active_for_nested=true %}
20
27
  {% endif %}
@@ -28,5 +35,7 @@
28
35
  {% include nav-page-link.html url="/blog/" title="Blog" active_for_nested=true %}
29
36
  {% endif %}
30
37
 
31
- {% include nav-page-link.html url=contact_link title="Contact" %}
38
+ {% if site.algolia_search %}
39
+ <a href="javascript: void 0;" class="search"><i class="fas fa-search"></i></a>
40
+ {% endif %}
32
41
  {% endif %}
@@ -11,6 +11,10 @@
11
11
  <link id="themeCSS" rel="stylesheet" href="{{ "assets/css/style.css" | relative_url }}">
12
12
  <script defer src="https://pro.fontawesome.com/releases/v5.1.0/js/all.js" integrity="sha384-E5SpgaZcbSJx0Iabb3Jr2AfTRiFnrdOw1mhO19DzzrT9L+wCpDyHUG2q07aQdO6E" crossorigin="anonymous"></script>
13
13
 
14
+ {% if site.is_hub == false and site.algolia_search %}
15
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css">
16
+ {% endif %}
17
+
14
18
  {% seo %}
15
19
  </head>
16
20
 
@@ -36,10 +40,6 @@
36
40
  <h1 class="site-logo"><a href="/">{% include logo.html %}</a></h1>
37
41
  </div>
38
42
 
39
- <nav>
40
- {% include nav-links.html %}
41
- </nav>
42
-
43
43
  {% include social-links.html %}
44
44
  </div>
45
45
  </header>
@@ -72,6 +72,25 @@
72
72
  </footer>
73
73
  </div>
74
74
 
75
+ {% if site.is_hub == false and site.algolia_search %}
76
+ <script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script>
77
+
78
+ {% comment %}
79
+ This would break a strict CSP, but Jekyll refuses to Liquid-process JS files
80
+ without also adding HTML wrapping. Eek.
81
+ {% endcomment %}
82
+ <script>
83
+ window.initAlgolia = function () {
84
+ docsearch({
85
+ apiKey: '{{ site.algolia_search.api_key }}',
86
+ indexName: '{{ site.algolia_search.index_name }}',
87
+ inputSelector: 'input[type=search]',
88
+ debug: false,
89
+ });
90
+ };
91
+ </script>
92
+ {% endif %}
93
+
75
94
  <script src="{{ "assets/js/headroom.min.js" | relative_url }}"></script>
76
95
  <script src="{{ "assets/js/opf.js" | relative_url }}"></script>
77
96
 
@@ -173,7 +173,8 @@ body > .underlay.footer {
173
173
  body > .underlay > header {
174
174
  padding-top: 26px;
175
175
  padding-bottom: 26px;
176
- z-index: 2;
176
+ z-index: 5;
177
+ // Higher than hero, otherwise Algolia search pop-up might have stuff over it
177
178
 
178
179
  align-items: flex-start;
179
180
  flex-flow: row nowrap;
@@ -216,10 +217,10 @@ body > .underlay > header {
216
217
 
217
218
  > nav,
218
219
  > .social-links {
219
- span, a {
220
+ a {
220
221
  &:link, &:visited, &:hover {
221
- color: white;
222
222
  font-size: 1.3em;
223
+ color: white;
223
224
  }
224
225
  }
225
226
  }
@@ -228,11 +229,21 @@ body > .underlay > header {
228
229
  flex: 1;
229
230
  display: flex;
230
231
  flex-flow: column nowrap;
231
- align-items: center;
232
- justify-content: center;
232
+ align-items: flex-start;
233
+ justify-content: flex-start;
234
+ align-self: stretch;
235
+
236
+ a.search {
237
+ display: none;
238
+ }
239
+ .search-widget {
240
+ margin-top: 2em;
241
+ margin-bottom: 1em;
242
+ }
233
243
 
234
244
  > * {
235
245
  margin: .25em;
246
+ margin-left: 2em;
236
247
  }
237
248
  > .active {
238
249
  font-weight: bold;
@@ -249,16 +260,46 @@ body > .underlay > header {
249
260
  }
250
261
  }
251
262
 
263
+ > .top-menu > .search-widget,
264
+ > .hamburger-menu > nav > .search-widget {
265
+ input[type=search] {
266
+ padding: 6px 10px 6px 10px;
267
+ border-radius: 1em;
268
+ font-size: inherit;
269
+ line-height: inherit;
270
+ border: 0;
271
+ background-color: white;
272
+ }
273
+ }
274
+
252
275
  > .top-menu {
253
276
  flex: 1;
254
277
 
255
- > * {
278
+ > :not(.search-widget) {
256
279
  display: inline-block;
257
280
  font-weight: 600;
258
281
  margin-right: 20px;
259
282
  padding: 6px 10px 6px 10px;
260
283
  white-space: nowrap;
261
284
  }
285
+ > .search-widget {
286
+ width: 0;
287
+ display: none;
288
+ position: relative;
289
+
290
+ > * {
291
+ flex: 1;
292
+ }
293
+ }
294
+ &.with-expanded-search {
295
+ > a {
296
+ display: none;
297
+ }
298
+ > .search-widget {
299
+ width: 90%;
300
+ display: inline-flex;
301
+ }
302
+ }
262
303
  }
263
304
 
264
305
  > .top-menu,
@@ -1,6 +1,4 @@
1
1
  @mixin tbd($color: red) {
2
- // TODO: Refactor disabled item doc navigation links with this mixin in mind
3
-
4
2
  position: relative;
5
3
  padding: 0 .3em;
6
4
  border: 1px dashed lighten($main-font-color, 70);
@@ -234,6 +232,46 @@
234
232
 
235
233
  > .docs-nav {
236
234
  padding-top: 50px;
235
+ background: transparent;
236
+
237
+ &.top-expandable {
238
+ border-bottom: 1px solid silver;
239
+ z-index: 4;
240
+
241
+ position: fixed;
242
+ left: 0;
243
+ right: 0;
244
+
245
+ padding-top: 0;
246
+ padding-left: 2em;
247
+ padding-right: 2em;
248
+
249
+ transition:
250
+ background 200ms cubic-bezier(0.23, 1, 0.32, 1),
251
+ transform 200ms linear;
252
+
253
+ overflow: hidden;
254
+
255
+ .sidebar-header {
256
+ background: white;
257
+ cursor: pointer;
258
+ padding-top: 10px;
259
+ padding-bottom: 10px;
260
+ }
261
+
262
+ &.expanded {
263
+ box-shadow: 0px -10px 30px 0 rgba(black, 0.8);
264
+ z-index: 6;
265
+ overflow-y: scroll;
266
+ background: white;
267
+ border-bottom: none;
268
+ }
269
+ }
270
+
271
+ &.pinned {
272
+ z-index: 4;
273
+ transform: translateY(0);
274
+ }
237
275
 
238
276
  > .sidebar-header, > section {
239
277
  margin-bottom: 15px;
@@ -281,22 +319,6 @@
281
319
  font-size: 15px;
282
320
  font-weight: normal;
283
321
 
284
- &.disabled {
285
- span {
286
- $disabled-label-width: 50px;
287
- opacity: 0.5;
288
- position: relative;
289
-
290
- &:before {
291
- opacity: 0.4;
292
- position: absolute;
293
- width: $disabled-label-width;
294
- left: -$disabled-label-width;;
295
- content: "TBD";
296
- font-weight: bold;
297
- }
298
- }
299
- }
300
322
  &.selected {
301
323
  span {
302
324
  font-weight: bold;
@@ -316,6 +338,46 @@
316
338
  background: white;
317
339
  z-index: 1;
318
340
 
341
+ > header > nav,
342
+ > footer > nav {
343
+ line-height: 1;
344
+
345
+ button, a {
346
+ border: 0;
347
+ padding: 0;
348
+ margin-right: 1em;
349
+
350
+ font-family: inherit;
351
+ font-size: 80%;
352
+ font-weight: bold;
353
+
354
+ background: white;
355
+ color: $primary-dark-color;
356
+ cursor: pointer;
357
+
358
+ text-decoration: none;
359
+
360
+ &:last-child {
361
+ margin-right: 0;
362
+ }
363
+
364
+ .ico-ext {
365
+ margin-left: .5em;
366
+ }
367
+ }
368
+ }
369
+
370
+ > header > nav {
371
+ margin-top: -2em;
372
+ }
373
+
374
+ > footer > nav {
375
+ margin-top: 2em;
376
+ @media screen and (min-width: $bigscreen-breakpoint) {
377
+ margin-left: 2em;
378
+ }
379
+ }
380
+
319
381
  > header {
320
382
  > .title {
321
383
  @media screen and (min-width: $bigscreen-breakpoint) {
@@ -372,7 +434,7 @@
372
434
  }
373
435
 
374
436
  > article {
375
- max-width: none;
437
+ max-width: none; // Overrides .main-article base style
376
438
 
377
439
  > header > .title {
378
440
  border-bottom-width: 0;
data/assets/js/opf.js CHANGED
@@ -6,10 +6,34 @@
6
6
 
7
7
 
8
8
 
9
+ /* Search box in top bar */
10
+
11
+ var initSearchWidget = function(containerEl, triggerEl, inputEl) {
12
+ var showSearch = function() {
13
+ containerEl.classList.add('with-expanded-search');
14
+ inputEl.focus();
15
+ };
16
+ var hideSearch = function() {
17
+ containerEl.classList.remove('with-expanded-search');
18
+ };
19
+ triggerEl.addEventListener('click', showSearch);
20
+
21
+ window.initAlgolia();
22
+ };
23
+
24
+
25
+
26
+ var topMenuEl = body.querySelector('.top-menu');
27
+ var triggerEl = topMenuEl.querySelector('.search');
28
+ var inputEl = topMenuEl.querySelector('input[type=search]');
29
+
30
+
31
+
9
32
  /* Topmost hamburger menu */
10
33
 
11
- var initCollapsibleMenu = function(triggerEl, menuEl) {
34
+ var initCollapsibleMenu = function(origNavEl, triggerEl, menuEl) {
12
35
  var hasOpened = false;
36
+ var origNavNextSiblingEl = origNavEl.nextSibling;
13
37
 
14
38
  if (triggerEl != null && menuEl != null) {
15
39
  triggerEl.addEventListener('click', function (evt) {
@@ -17,6 +41,13 @@
17
41
  if (hasOpened) {
18
42
  triggerEl.setAttribute('aria-expanded', true);
19
43
  menuEl.setAttribute('aria-hidden', false);
44
+ origNavEl.classList.remove('top-menu');
45
+ origNavEl.remove();
46
+ menuEl.insertBefore(origNavEl, menuEl.querySelector('.site-logo-container').nextSibling);
47
+ } else {
48
+ origNavEl.remove();
49
+ origNavNextSiblingEl.parentNode.insertBefore(origNavEl, origNavNextSiblingEl);
50
+ origNavEl.classList.add('top-menu');
20
51
  }
21
52
  });
22
53
  }
@@ -85,27 +116,15 @@
85
116
  var docsNavH = docsNav.offsetHeight;
86
117
  var docsNavSections = docsNav.querySelectorAll('section');
87
118
 
88
- // Offet represents the top header height; meaning it is offset
89
- // of documentation menu from the topmost edge of viewport
90
- var offset = collapsibleHeader.getHeaderHeight();
119
+ // Used to offset expandable documentation menu from the topmost edge of viewport
120
+ // to account for top header height
121
+ var topHeaderHeight = collapsibleHeader.getHeaderHeight();
91
122
 
92
123
  article.style.paddingTop = '2em';
124
+
125
+ docsNav.classList.add('top-expandable');
93
126
  docsNav.style.zIndex = '4';
94
- docsNav.style.position = 'fixed';
95
- docsNav.style.top = '' + offset + 'px';
96
- docsNav.style.left = '0';
97
- docsNav.style.right = '0';
98
- docsNav.style.paddingTop = '0';
99
- docsNav.style.paddingLeft = '2em';
100
- docsNav.style.paddingRight = '2em';
101
- docsNav.style.transition = 'background 200ms cubic-bezier(0.23, 1, 0.32, 1), transform 200ms linear';
102
- docsNav.style.background = 'transparent';
103
- docsNav.style.overflow = 'hidden';
104
-
105
- docsNavHeader.style.background = 'white';
106
- docsNavHeader.style.paddingTop = '10px';
107
- docsNavHeader.style.paddingBottom = '10px';
108
- docsNavHeader.style.cursor = 'pointer';
127
+ docsNav.style.top = '' + topHeaderHeight + 'px';
109
128
 
110
129
  docsNavHeader.innerHTML = docsNavHeader.innerHTML + ' ▼';
111
130
 
@@ -120,34 +139,27 @@
120
139
 
121
140
  var collapse = function (docsNav) {
122
141
  hasOpened = false;
123
- docsNav.style.background = 'transparent';
142
+
143
+ docsNav.classList.remove('expanded');
144
+
124
145
  docsNavSections.forEach(function (el) {
125
146
  el.style.opacity = '0';
126
147
  });
127
148
 
128
149
  closingTransition = window.setTimeout(function () {
129
- docsNav.style.overflowY = 'hidden';
130
150
  docsNav.style.height = '' + docsNavHeaderH + 'px';
131
151
  docsNav.style.bottom = 'unset';
132
152
  docsNav.scrollTop = 0;
133
- docsNav.style.borderBottom = '1px solid silver';
134
153
  }, 2);
135
154
  };
136
155
  var open = function (docsNav) {
137
156
  hasOpened = true;
138
157
  window.clearTimeout(closingTransition);
139
158
 
140
- docsNav.style.overflowY = 'scroll';
159
+ docsNav.classList.add('expanded');
141
160
  docsNav.style.height = 'auto';
161
+ docsNav.style.bottom = '' + 100 + 'px';
142
162
 
143
- if (collapsibleHeader.isPinned()) {
144
- docsNav.style.bottom = '0';
145
- } else {
146
- docsNav.style.bottom = '-' + offset + 'px';
147
- }
148
-
149
- docsNav.style.background = 'white';
150
- docsNav.style.borderBottom = 'none';
151
163
  docsNavSections.forEach(function (el) {
152
164
  el.style.opacity = '1';
153
165
  });
@@ -173,14 +185,12 @@
173
185
  if (hasOpened) {
174
186
  this.pin();
175
187
  } else {
176
- docsNav.style.transform = 'translateY(-' + offset + 'px)';
188
+ docsNav.style.transform = 'translateY(-' + topHeaderHeight + 'px)';
177
189
  }
178
190
  },
179
191
  onPin: function () {
180
- docsNav.style.top = '' + offset + 'px';
181
- docsNav.style.zIndex = '4';
192
+ docsNav.style.top = '' + topHeaderHeight + 'px';
182
193
  docsNav.style.transform = 'translateY(0)';
183
- docsNav.style.borderBottom = '1px solid silver';
184
194
  },
185
195
  });
186
196
 
@@ -190,6 +200,7 @@
190
200
  hasOpened: function () {
191
201
  return hasOpened;
192
202
  },
203
+ toggle: toggle,
193
204
  }
194
205
  };
195
206
 
@@ -197,6 +208,7 @@
197
208
 
198
209
  // Initializing stuff
199
210
  var hamburgerMenu = initCollapsibleMenu(
211
+ document.querySelector('header nav.top-menu'),
200
212
  document.getElementById('hamburgerButton'),
201
213
  document.getElementById('hamburgerMenu'));
202
214
 
@@ -216,5 +228,13 @@
216
228
  collapsibleHeader.assignCollapsibleDocsNav(collapsibleDocsNav);
217
229
  }
218
230
 
231
+ var docArticleSelectorPrefix = 'body.layout--product .documentation:not(.docs-landing) > article ';
232
+ var docArticleHeaderNavToggle = document.querySelector(docArticleSelectorPrefix + '> header > nav > button.docs-nav-toggle');
233
+ var docArticleFooterNavToggle = document.querySelector(docArticleSelectorPrefix + '> footer > nav > button.docs-nav-toggle');
234
+ for (var el of [docArticleFooterNavToggle, docArticleHeaderNavToggle]) {
235
+ if (el) { el.addEventListener('click', collapsibleDocsNav.toggle); }
236
+ }
237
+
238
+ initSearchWidget(topMenuEl, triggerEl, inputEl);
219
239
 
220
240
  }());
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-theme-open-project
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.22
4
+ version: 1.1.23
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-11-05 00:00:00.000000000 Z
11
+ date: 2018-11-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - '='
74
74
  - !ruby/object:Gem::Version
75
- version: 1.1.22
75
+ version: 1.1.23
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - '='
81
81
  - !ruby/object:Gem::Version
82
- version: 1.1.22
82
+ version: 1.1.23
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: bundler
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -226,7 +226,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
226
226
  version: '0'
227
227
  requirements: []
228
228
  rubyforge_project:
229
- rubygems_version: 2.6.14.1
229
+ rubygems_version: 2.7.6
230
230
  signing_key:
231
231
  specification_version: 4
232
232
  summary: Open Project Jekyll theme