j1-template 2023.2.5 → 2023.2.7

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.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/procedures/collections/create_collection_article_preview.proc +1 -1
  3. data/_includes/themes/j1/procedures/layouts/module_writer.proc +1 -1
  4. data/_includes/themes/j1/procedures/posts/collate_calendar.proc +4 -2
  5. data/_includes/themes/j1/procedures/posts/collate_timeline.proc +3 -3
  6. data/_layouts/default.html +1 -1
  7. data/assets/data/banner.html +2 -2
  8. data/assets/themes/j1/adapter/js/attic.js +66 -60
  9. data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +0 -1
  10. data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +1 -1
  11. data/lib/j1/version.rb +1 -1
  12. data/lib/starter_web/README.md +5 -5
  13. data/lib/starter_web/_config.yml +1 -1
  14. data/lib/starter_web/_data/modules/attics.yml +3 -23
  15. data/lib/starter_web/_data/modules/defaults/attics.yml +6 -0
  16. data/lib/starter_web/_data/templates/feed.xml +1 -1
  17. data/lib/starter_web/_plugins/index/lunr.rb +1 -1
  18. data/lib/starter_web/assets/images/modules/attics/placeholder/1x1.png +0 -0
  19. data/lib/starter_web/assets/images/modules/attics/placeholder/transparent-1920x1280.png +0 -0
  20. data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +1 -2
  21. data/lib/starter_web/collections/posts/public/featured/_posts/2021-02-01-static-site-generators.adoc +0 -1
  22. data/lib/starter_web/index.html +3 -4
  23. data/lib/starter_web/package.json +1 -1
  24. data/lib/starter_web/pages/public/about/features.adoc +0 -3
  25. data/lib/starter_web/pages/public/about/reporting_issues.adoc +0 -2
  26. data/lib/starter_web/pages/public/blog/navigator/archive/allview.html +1 -6
  27. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +1 -5
  28. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +1 -6
  29. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +1 -6
  30. data/lib/starter_web/pages/public/blog/navigator/index.html +0 -4
  31. data/lib/starter_web/pages/public/features/general.adoc +0 -4
  32. data/lib/starter_web/pages/public/features/template.adoc +0 -4
  33. data/lib/starter_web/pages/public/learn/bookshelf/article_previewer/viewer_all_books.adoc +0 -2
  34. data/lib/starter_web/pages/public/learn/bookshelf/article_previewer/viewer_romance.adoc +0 -1
  35. data/lib/starter_web/pages/public/learn/bookshelf/jekyll_collections.adoc +0 -1
  36. data/lib/starter_web/pages/public/learn/roundtrip/lunr_search.adoc +0 -2
  37. data/lib/starter_web/pages/public/learn/roundtrip/present_images.adoc +0 -1
  38. data/lib/starter_web/pages/public/learn/roundtrip/responsive_tables.adoc +0 -4
  39. data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +0 -4
  40. data/lib/starter_web/pages/public/legal/en/200_impress.adoc +0 -1
  41. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +0 -4
  42. data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +0 -4
  43. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +0 -2
  44. data/lib/starter_web/pages/public/plans/plans.adoc +0 -2
  45. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +0 -3
  46. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  47. data/lib/starter_web/utilsrv/package.json +1 -1
  48. metadata +4 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1d5ab1050367c71af4141b92f42032e5d5dca7a1851d904a086b7ff46c064966
4
- data.tar.gz: e6b0fa9e436bf9054da7f658ac1ef47b93f223b7f366e7ac329b890de5b3fbc2
3
+ metadata.gz: a74dfdbda3c10cbb34270288670b6ab4a0c7a3742ca27895781f348f9f439b96
4
+ data.tar.gz: c79c2cd6252a8861540f5de4cc945ba7a28993f0c3e925615181e34442b196e5
5
5
  SHA512:
6
- metadata.gz: 63b6dc2b7c38c1a9ff5b07bda8e24a0f7614314569aca9f8a1b7315c0cff119d35c09826a5d97a9eaff27fcdc8e29370fa3fc31aae717b2b20d7730c76a1329e
7
- data.tar.gz: 9634603b5393da4a93eee7611dc155387a96b7a51400fa1e5650cbd9958d5951c4522d9dbe880080d83880e23c3ff90bd2e4377e44e92310c2e6d522d0697b3b
6
+ metadata.gz: 2e0c1e883782e6e12256664b0d5258fcd9c1db8b5ae2fb9eda58264bd54cc50b8866264049eb9e315e61c41164e1e3accebc8da0d4d64929cc94a25e2f2d43c4
7
+ data.tar.gz: e800c90e080627cab7f107062c80e271f18d52bb4dd3057ee72c9618eea56d2e535c8da5f87c9d25581e4a55c59ab0230c0895f4729c83d9ffeeba75ae00c505
@@ -101,7 +101,7 @@
101
101
  </p>
102
102
  </div>
103
103
 
104
- <a class="card-link text-lowercase" href="{{ article.url }}#readmore">
104
+ <a class="card-link text-lowercase" href="{{ article.url }}">
105
105
  read · {{article.tagline}}
106
106
  </a>
107
107
  </div>
@@ -174,7 +174,7 @@ NO need to load this again
174
174
  {% if resource_settings.pass_init_data %}
175
175
 
176
176
  // [INFO ] [j1.layout.module_writer.proc ] [ pass init data for: {{resource_settings.id}} ]
177
- {% capture settings %}{"layout": "{{page.layout}}", "fab_menu_id": "{{page.fab_menu_id}}", "scrollbar": "{{page.scrollbar}}", "toc": "{{page.toc}}", "comments": "{{page.comments}}", "scrollDynamicPagesTopOnChange": "{{page.scrollDynamicPagesTopOnChange}}"}{% endcapture %}
177
+ {% capture settings %}{"layout": "{{page.layout}}", "title": "{{page.title}}", "tagline": "{{page.tagline}}", "fab_menu_id": "{{page.fab_menu_id}}", "scrollbar": "{{page.scrollbar}}", "toc": "{{page.toc}}", "comments": "{{page.comments}}", "scrollDynamicPagesTopOnChange": "{{page.scrollDynamicPagesTopOnChange}}"}{% endcapture %}
178
178
  var settings = $.extend({}, {{settings}});
179
179
 
180
180
  {% comment %} create resource_settings.dependencies (if any)
@@ -120,7 +120,9 @@
120
120
 
121
121
  <i class="tmicon rounded-x hidden-xs"></i>
122
122
  <div class="tmlabel">
123
- <a href="{{post.url}}#readmore"><div class="calendar-headline"><h4 id="{{ 100000 | rand }}">{{ post.title }}</h4></div></a>
123
+ <a href="{{post.url}}">
124
+ <div class="calendar-headline"><h4 id="{{ 100000 | rand }}">{{ post.title }}</h4></div>
125
+ </a>
124
126
  <div class="row">
125
127
  <!-- Collect image data from frontmatter -->
126
128
  {% if post.image %}
@@ -218,4 +220,4 @@
218
220
  {% endif %}
219
221
 
220
222
  <!-- Reset procedure variable -->
221
- {% assign posts_collate = nil %}
223
+ {% assign posts_collate = nil %}
@@ -176,7 +176,7 @@
176
176
  </div>
177
177
  <div class="card-footer r-text-200 text-lowercase">
178
178
 
179
- <a href="{{post.url}}#readmore"
179
+ <a href="{{post.url}}"
180
180
  class="btn btn-secondary btn-flex mb-0">
181
181
  <i class="mdi mdi-eye mdi-lg mr-1" style="color:#FFFFFF;">
182
182
  </i> {{readmore_text}} · {{post.tagline}}
@@ -198,7 +198,7 @@
198
198
  </div>
199
199
  <div class="card-footer r-text-200 text-lowercase">
200
200
 
201
- <a href="{{post.url}}#readmore"
201
+ <a href="{{post.url}}"
202
202
  class="btn btn-secondary btn-flex mb-0">
203
203
  <i class="mdi mdi-eye mdi-lg mr-1" style="color:#FFFFFF;">
204
204
  </i> {{readmore_text}} · {{post.tagline}}
@@ -261,7 +261,7 @@
261
261
  <span class="sr-tags">{{tags}}</span>
262
262
  </p>
263
263
  <a class="card-link text-lowercase"
264
- href="{{post.url}}#readmore">
264
+ href="{{post.url}}">
265
265
  {{readmore_text}} · {{post.tagline}}
266
266
  </a>
267
267
  </div>
@@ -199,7 +199,7 @@ debug: false
199
199
  <!-- [INFO ] [j1.layout.default.html ] [ place wrapper to prevent "DOM flicker" ] -->
200
200
  <!-- [INFO ] [j1.layout.default.html ] [ make page hidden (suppress flicker) ] -->
201
201
  <!-- [INFO ] [j1.layout.default.html ] [ suppress page overflows (overflow: hidden) ] -->
202
- <!-- div id="no_flicker" style="display: none" -->
202
+ <!-- [INFO ] [j1.layout.default.html ] [ hide page (display: none) on id "no_flicker" ] -->
203
203
  <div id="no_flicker" style="overflow: hidden; display: none">
204
204
 
205
205
  {% comment %} collect the BODY-NAVIGATION region
@@ -259,8 +259,8 @@ exclude_from_search: true
259
259
  <img
260
260
  class="sticker-image"
261
261
  src="/assets/images/sticker/600x600/sticker-new-version.png"
262
- alt="Get new version 2023.2.5"
263
- title="Get new version 2023.2.5"
262
+ alt="Get new version 2023.2.7"
263
+ title="Get new version 2023.2.7"
264
264
  style="width: 140px; height: 120px;"
265
265
  >
266
266
  </a>
@@ -144,9 +144,12 @@ j1.adapter.attic = (function (j1, window) {
144
144
  var dependencies_met_page_ready = setInterval (function (options) {
145
145
  var pageState = $('#no_flicker').css("display");
146
146
  var pageVisible = (pageState == 'block') ? true: false;
147
- if ( j1.getState() === 'finished' && pageVisible ) {
147
+
148
+ // run on 'pageVisible'
149
+ //
150
+ if (pageVisible) {
148
151
  {% if attic_options.enabled %}
149
- logger.info('\n' + 'create all attics configured');
152
+ logger.info('\n' + 'module initializaton: started');
150
153
 
151
154
  if (atticOptions.hide_oninit) {
152
155
  // hide page while attic is being created
@@ -184,15 +187,14 @@ j1.adapter.attic = (function (j1, window) {
184
187
  {% if item.attic.enabled %}
185
188
  {% assign attic_id = item.attic.id %}
186
189
 
187
- // Create the SPECIFIC header loader FUNCTION for id: {{attic_id}}
188
- function {{attic_id}} (atticOptions) {
190
+ // Create RUNNER for id: {{attic_id}}
191
+ //
192
+ function {{attic_id}}_runner (atticOptions) {
189
193
  var atticOptionsFilters = {};
190
194
  var atticItemFilters = {};
191
195
  var atticFilters = {};
192
196
  var my_attic = $.extend({}, {{item.attic | replace: 'nil', 'null' | replace: '=>', ':' }});
193
197
 
194
- logger.info('\n' + 'initialize attic on id: {{attic_id}}');
195
-
196
198
  // collect attic filter settings to object to array to string
197
199
  //
198
200
  {% if item.attic.filters %}
@@ -209,7 +211,8 @@ j1.adapter.attic = (function (j1, window) {
209
211
  });
210
212
  filterStr = filterArray.join(' ');
211
213
 
212
- // Fire backstretch for all slides of the header on attic_id
214
+ // fire backstretch for all slides on attic_id
215
+ //
213
216
  if ($('#{{attic_id}}').length) {
214
217
  $('#{{attic_id}}').backstretch(
215
218
  atticOptions.slides, {
@@ -258,9 +261,9 @@ j1.adapter.attic = (function (j1, window) {
258
261
  );
259
262
  }
260
263
 
261
- {% comment %} Set the headerLoaded flag (page NOT visible)
262
- -------------------------------------------------------------------- {% endcomment %}
263
- $(window).on('backstretch.before', function (e, instance, index) {
264
+ // run callback backstretch.before
265
+ //
266
+ $(window).on('backstretch.before', function (e, instance, index) {
264
267
  var evt = e;
265
268
  var inst = instance;
266
269
  var idx = index;
@@ -295,11 +298,12 @@ j1.adapter.attic = (function (j1, window) {
295
298
  j1.adapter.particles.init();
296
299
  }
297
300
 
298
- }); // END on('backstretch.before')
301
+ }); // // END callback backstretch.before
299
302
 
300
- {% comment %} Add a caption (c) or badge (b) if configured
301
- See: https://github.com/jquery-backstretch/jquery-backstretch/issues/194
302
- -------------------------------------------------------------------- {% endcomment %}
303
+ // run callback backstretch.after
304
+ // NOTE: add a 'caption' or 'badge' if configured
305
+ // SEE: https://github.com/jquery-backstretch/jquery-backstretch/issues/194
306
+ //
303
307
  $(window).on('backstretch.after', function (e, instance, index) {
304
308
  var textOverlayTitle = instance.images[index].title
305
309
  var textOverlayTagline = instance.images[index].tagline;
@@ -307,8 +311,8 @@ j1.adapter.attic = (function (j1, window) {
307
311
  var frontmatterOptions = _this.frontmatterOptions;
308
312
  var textOverlayHTML;
309
313
 
310
- // apply DEFAULT settings for textOverlayTitle|textOverlayTagline
311
- // on the FIRST backstretch instance if title|tagline NOT set
314
+ // apply FRONTMATTER settings for title|tagline if
315
+ // NOT set with the FIRST backstretch (image) instance
312
316
  //
313
317
  if (index == 0) {
314
318
  if (typeof instance.images[index].title == 'undefined') {
@@ -361,9 +365,7 @@ j1.adapter.attic = (function (j1, window) {
361
365
 
362
366
  }
363
367
 
364
- // TODO: Add additional styles to head-title-text|head-tagline-
365
- // text (e.g. text-center)
366
- // atticOptions.tagline_align
368
+ // TODO: Add additional styles to head-title-text|head-tagline (e.g. text-center)
367
369
  //
368
370
  textOverlayHTML = ''
369
371
  + '<div id="head-title" class="head-title animate__animated ">'
@@ -373,7 +375,7 @@ j1.adapter.attic = (function (j1, window) {
373
375
  + ' <h3 id="head-tagline-text" class="notoc text-' + atticOptions.tagline_align + '">' + textOverlayTagline + '</h3>'
374
376
  + '</div>';
375
377
 
376
- // hide textOverlay while animate classes are being calculated
378
+ // hide textOverlay while animate classes are being applied
377
379
  //
378
380
  $('.textOverlay').html(textOverlayHTML).hide();
379
381
 
@@ -423,21 +425,19 @@ j1.adapter.attic = (function (j1, window) {
423
425
 
424
426
  _this.setState('finished');
425
427
  logger.debug('\n' + 'state: ' + _this.getState());
426
- logger.info('\n' + 'finished attic on id: {{attic_id}}');
427
- }); // END on('backstretch.after')
428
+ logger.info('\n' + 'initialize attic on id {{attic_id}}: finished');
429
+ logger.info('\n' + 'module initializaton: finished');
430
+
431
+ }); // END callback backstretch.after
428
432
 
429
433
  } // END if attic_id exists
430
434
 
431
- // Initialize the header found in page
435
+ // run attic found in page: {{attic_id}}
436
+ //
432
437
  if ($('#{{attic_id}}').length) {
433
-
434
- {% comment %} Load data from header config file
435
- -------------------------------------------------------------------- {% endcomment %}
436
-
437
- {% comment %} NOTE:
438
- Unclear why title_size|tagline_size evaluated to 1 if NOT set
439
- ------------------------------------------------------------------- {% endcomment %}
440
-
438
+ // apply CSS styles
439
+ // NOTE: unclear why title_size|tagline_size evaluated to 1 if NOT set
440
+ //
441
441
  {% for item in attic_options.attics %}
442
442
  {% if item.attic.id == attic_id %}
443
443
 
@@ -535,10 +535,12 @@ j1.adapter.attic = (function (j1, window) {
535
535
  }
536
536
  /* eslint-enable */
537
537
 
538
- // Merge|Overload Attic OPTIONS
538
+ // merge|overload Attic OPTIONS
539
+ //
539
540
  atticOptions = $.extend({}, atticOptions, atticOptionsHeader, atticOptionsBackstretch);
540
541
 
541
- // Overload Attic OPTIONS by settings from frontmatterOptions
542
+ // overload Attic OPTIONS by settings from frontmatterOptions
543
+ //
542
544
  if (frontmatterOptions.background_color_1) atticOptions.background_color_1 = frontmatterOptions.background_color_1;
543
545
  if (frontmatterOptions.background_color_2) atticOptions.background_color_2 = frontmatterOptions.background_color_2;
544
546
  {% else %}
@@ -546,8 +548,8 @@ j1.adapter.attic = (function (j1, window) {
546
548
  {% endif %} // ENDIF attic_id
547
549
  {% endfor %} // ENDFOR item in header_config.attics
548
550
 
549
- {% comment %} frontmatter takes precedence (over header options)
550
- -------------------------------------------------------------------- {% endcomment %}
551
+ // frontmatter takes precedence (over header options)
552
+ //
551
553
  if (frontmatterOptions) {
552
554
  if (typeof frontmatterOptions.raised_level != 'undefined') { atticOptions.raised_level = frontmatterOptions.raised_level; }
553
555
  if (typeof frontmatterOptions.r_text != 'undefined') { atticOptions.r_text = frontmatterOptions.r_text; }
@@ -590,11 +592,11 @@ j1.adapter.attic = (function (j1, window) {
590
592
  if (typeof frontmatterOptions.slides != 'undefined') { atticOptions.slides = frontmatterOptions.slides; }
591
593
  }
592
594
 
593
- {% comment %} Add header CSS classes
594
- -------------------------------------------------------------------- {% endcomment %}
595
+ // add r-text|raised_level settings
596
+ //
595
597
  if (atticOptions.r_text == 'enabled') { $('#{{attic_id}}').addClass('r-text'); }
596
-
597
598
  var raised_level = 'raised-z' +atticOptions.raised_level;
599
+
598
600
  $('#{{attic_id}}').addClass(raised_level);
599
601
  $('#head-title').addClass(atticOptions.title_animate);
600
602
  $('#head-title').addClass(atticOptions.title_animate_delay);
@@ -612,11 +614,12 @@ j1.adapter.attic = (function (j1, window) {
612
614
  $('#{{attic_id}}').addClass('notranslate');
613
615
  }
614
616
 
615
- {% comment %} Add header CSS styles to <HEAD>
616
- -------------------------------------------------------------------- {% endcomment %}
617
+ // add header CSS styles to <HEAD>
618
+ //
617
619
  var attic_style = '';
618
620
 
619
- // Initialze header background gradient
621
+ // initialze header background gradient
622
+ //
620
623
  attic_style += '<style> .attic { ';
621
624
  attic_style += 'background-image: -webkit-gradient(linear, left top, left bottom, from(' +atticOptions.background_color_1 + '), to(' +atticOptions.background_color_2+ ')) !important;';
622
625
  attic_style += 'background-image: -webkit-linear-gradient(top, ' +atticOptions.background_color_1 + ' 0%, ' +atticOptions.background_color_2 + ' 100%) !important;';
@@ -648,6 +651,7 @@ j1.adapter.attic = (function (j1, window) {
648
651
 
649
652
  // Add opacity to ALL header (backstretch) images
650
653
  // See: https://tympanus.net/codrops/2013/11/07/css-overlay-techniques/
654
+ //
651
655
  var item_opacity = !!my_attic.opacity ? my_attic.opacity : atticOptions.opacity;
652
656
  var backstretch_opacity = '<style> .backstretch-item { opacity: ' +item_opacity+ '; </style>';
653
657
  $('head').append(backstretch_opacity);
@@ -655,36 +659,38 @@ j1.adapter.attic = (function (j1, window) {
655
659
  _this.setState('initialized');
656
660
  logger.debug('\n' + 'state: ' + _this.getState());
657
661
 
658
- {% comment %} Run the image header if any
659
- -------------------------------------------------------------------- {% endcomment %}
660
- if (typeof atticOptions.slides != 'undefined') {
661
- // Load the image header if the page is ready (visible)
662
- $(function() {
663
- // logger.info('\n' + 'Load image header on id: {{attic_id}}');
664
- {{attic_id}}(atticOptions);
665
- _this.setState('completed');
666
- logger.debug('\n' + 'state: ' + _this.getState());
667
- });
668
- }
669
- } // END if header id found in page
662
+ // start RUNNER on page 'ready'|module state 'initialized'
663
+ //
664
+ $(function() {
665
+ var dependencies_met_attic_ready = setInterval (function (options) {
666
+ if (_this.getState() === 'initialized') {
667
+ logger.info('\n' + 'initialize attic on id {{attic_id}}: started');
668
+ {{attic_id}}_runner (atticOptions);
669
+ clearInterval(dependencies_met_attic_ready);
670
+ }
671
+ }, 25);
672
+ });
673
+
674
+ } // END apply CSS styles|start ATTIC RUNNER
670
675
 
671
676
  {% else %}
672
677
  {% assign attic_id = item.attic.id %}
673
678
  // add additional top space
674
679
  $('#content').addClass('mt-8');
675
- logger.info('\n' + 'found attic disabled on id: {{attic_id}}');
680
+ logger.info('\n' + 'attic on id {{attic_id}}: disabled');
676
681
  {% endif %} // END if header enabled
677
682
  {% endfor %} // END for item in header_config.attics
678
683
 
679
684
  // NO header found in page
680
- if ($('#no_header').length) {
681
- _this.setState('completed');
682
- logger.debug('\n' + 'state: ' + _this.getState());
683
- logger.warn('\n' + 'no header configured or found in page');
684
- }
685
+ // if ($('#no_header').length) {
686
+ // _this.setState('completed');
687
+ // logger.debug('\n' + 'state: ' + _this.getState());
688
+ // logger.warn('\n' + 'no header configured or found in page');
689
+ // }
685
690
 
686
691
  return true;
687
- }, // END loadHeader
692
+
693
+ }, // END apply CSS styles|start ATTIC RUNNER
688
694
 
689
695
  // -------------------------------------------------------------------------
690
696
  // messageHandler: MessageHandler for J1 CookieConsent module
@@ -26595,7 +26595,6 @@ li.dropdown.nav-item.nav-sub-item:before {
26595
26595
  background-color: transparent;
26596
26596
  border-bottom: 0; }
26597
26597
  nav.navbar.navigator li.dropdown ul.dropdown-menu {
26598
- margin-top: -8px;
26599
26598
  min-width: 250px;
26600
26599
  background: #ffffff;
26601
26600
  border-color: transparent;