j1-template 2021.1.25 → 2021.1.29

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/layouts/content_generator_article_navigator.html +1 -1
  3. data/_includes/themes/j1/layouts/content_generator_blog_archive.html +6 -4
  4. data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +1 -1
  5. data/_includes/themes/j1/modules/navigator/generator.html +1 -1
  6. data/_includes/themes/j1/procedures/posts/collate_timeline.proc +1 -1
  7. data/_layouts/default.html +1 -0
  8. data/assets/data/panel.html +1 -15
  9. data/assets/themes/j1/adapter/js/j1.js +6 -6
  10. data/assets/themes/j1/adapter/js/j1scroll.js +304 -0
  11. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.css +42 -0
  12. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +1 -1
  13. data/assets/themes/j1/core/js/template.js +4 -4
  14. data/assets/themes/j1/core/js/template.js.map +1 -1
  15. data/assets/themes/j1/core/js/template.min.js +4 -4
  16. data/assets/themes/j1/core/js/template.min.js.map +1 -1
  17. data/assets/themes/j1/modules/{infiniteScroll → j1Scroll}/css/theme/uno.css +4 -50
  18. data/assets/themes/j1/modules/j1Scroll/css/theme/uno.min.css +15 -0
  19. data/assets/themes/j1/modules/j1Scroll/js/j1scroll.js +263 -0
  20. data/assets/themes/j1/modules/j1Scroll/js/j1scroll.min.js +16 -0
  21. data/assets/themes/j1/modules/showOnScroll/js/showOnScroll.js +19 -7
  22. data/lib/j1/version.rb +1 -1
  23. data/lib/starter_web/Gemfile +1 -1
  24. data/lib/starter_web/_config.yml +1 -1
  25. data/lib/starter_web/_data/blocks/panel.yml +217 -183
  26. data/lib/starter_web/_data/builder/blog_navigator.yml +1 -0
  27. data/lib/starter_web/_data/layouts/home.yml +20 -16
  28. data/lib/starter_web/_data/modules/defaults/navigator.yml +1 -1
  29. data/lib/starter_web/_data/modules/j1scroll.yml +67 -0
  30. data/lib/starter_web/_data/resources.yml +35 -34
  31. data/lib/starter_web/_includes/attributes.asciidoc +1 -1
  32. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  33. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-test-series.adoc +1 -1
  34. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-test-series.adoc +1 -1
  35. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-test-series.adoc +1 -1
  36. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-04-post-test-series.adoc +1 -1
  37. data/lib/starter_web/index.html +1 -1
  38. data/lib/starter_web/package.json +1 -1
  39. data/lib/starter_web/pages/public/blog/navigator/index.html +3 -2
  40. data/lib/starter_web/pages/public/features/modules.adoc +104 -0
  41. data/lib/starter_web/pages/public/features/platform.adoc +104 -0
  42. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  43. data/lib/starter_web/utilsrv/package.json +1 -1
  44. metadata +10 -9
  45. data/assets/themes/j1/adapter/js/infiniteScroll.js +0 -245
  46. data/assets/themes/j1/modules/infiniteScroll/css/theme/uno.min.css +0 -15
  47. data/assets/themes/j1/modules/infiniteScroll/js/infiniteScroll.js +0 -1909
  48. data/assets/themes/j1/modules/infiniteScroll/js/infiniteScroll.min.js +0 -17
  49. data/lib/starter_web/_data/modules/defaults/infiniteScroll.yml +0 -73
  50. data/lib/starter_web/_data/modules/infiniteScroll.yml +0 -66
@@ -1,245 +0,0 @@
1
- ---
2
- regenerate: true
3
- ---
4
-
5
- {% capture cache %}
6
-
7
- {% comment %}
8
- # -----------------------------------------------------------------------------
9
- # ~/assets/themes/j1/adapter/js/infiniteScroll.js
10
- # Liquid template to adapt infiniteScroll
11
- #
12
- # Product/Info:
13
- # https://jekyll.one
14
- # Copyright (C) 2021 Juergen Adams
15
- #
16
- # J1 Template is licensed under the MIT License.
17
- # For details, see https://jekyll.one
18
- # -----------------------------------------------------------------------------
19
- # Test data:
20
- # {{ liquid_var | debug }}
21
- # -----------------------------------------------------------------------------
22
- {% endcomment %}
23
-
24
- /*
25
- # -----------------------------------------------------------------------------
26
- # ~/assets/themes/j1/adapter/js/infiniteScroll.js
27
- # J1 Adapter for infiniteScroll
28
- #
29
- # Product/Info:
30
- # https://jekyll.one
31
- #
32
- # Copyright (C) 2021 Juergen Adams
33
- #
34
- # J1 Template is licensed under the MIT License.
35
- # For details, see https://jekyll.one
36
- # -----------------------------------------------------------------------------
37
- # Adapter generated: {{site.time}}
38
- # -----------------------------------------------------------------------------
39
- */
40
-
41
- // -----------------------------------------------------------------------------
42
- // ESLint shimming
43
- // -----------------------------------------------------------------------------
44
- /* eslint indent: "off" */
45
- // -----------------------------------------------------------------------------
46
- 'use strict';
47
-
48
- {% comment %} Main
49
- -------------------------------------------------------------------------------- {% endcomment %}
50
- j1.adapter['infiniteScroll'] = (function (j1, window) {
51
-
52
- {% comment %} Set global variables
53
- ------------------------------------------------------------------------------ {% endcomment %}
54
- var environment = '{{environment}}';
55
- var user_agent = platform.ua;
56
- var moduleOptions = {};
57
- var _this;
58
- var logger;
59
- var logText;
60
-
61
- // ---------------------------------------------------------------------------
62
- // Helper functions
63
- // ---------------------------------------------------------------------------
64
- function sleep(milliseconds) {
65
- var start = new Date().getTime();
66
- for (var i = 0; i < 1e7; i++) {
67
- if ((new Date().getTime() - start) > milliseconds){
68
- break;
69
- }
70
- }
71
- return;
72
- }
73
-
74
- // ---------------------------------------------------------------------------
75
- // Main object
76
- // ---------------------------------------------------------------------------
77
- return {
78
-
79
- // -------------------------------------------------------------------------
80
- // Initializer
81
- // -------------------------------------------------------------------------
82
- init: function (options) {
83
-
84
- // -----------------------------------------------------------------------
85
- // globals
86
- // -----------------------------------------------------------------------
87
- _this = j1.adapter.infiniteScroll;
88
- logger = log4javascript.getLogger('j1.adapter.infiniteScroll');
89
-
90
- // initialize state flag
91
- _this.setState('started');
92
- logger.info('\n' + 'state: ' + _this.getState());
93
- logger.info('\n' + 'module is being initialized');
94
-
95
- // -----------------------------------------------------------------------
96
- // Default module settings
97
- // -----------------------------------------------------------------------
98
- var settings = $.extend({
99
- module_name: 'j1.adapter.infiniteScroll',
100
- generated: '{{site.time}}'
101
- }, options);
102
-
103
- // -----------------------------------------------------------------------
104
- // infiniteScroll initializer
105
- // -----------------------------------------------------------------------
106
- var log_text = '\n' + 'infiniteScroll is being initialized';
107
- logger.info(log_text);
108
-
109
- // Add data attribute for tablesaw to all tables of a page
110
- var dependencies_met_page_ready = setInterval (function (options) {
111
- var lastPage = 4;
112
-
113
- if ( j1.getState() === 'finished' ) {
114
- var logger = log4javascript.getLogger('j1.infiniteScroll');
115
- var log_text = '\n module infiniteScroll is being initialized';
116
- logger.info(log_text);
117
-
118
- function getPosts() {
119
- var pageNumber = ( this.loadCount + 1 ) + 1; // +1: offset for j1-paginator
120
- if ( pageNumber <= lastPage) {
121
- return `/assets/data/news_panel_posts/page${pageNumber}/index.html`;
122
- }
123
- }
124
-
125
- // jadams, 2021-09-12
126
- //
127
- // var scrollOffset = 450 + 20;
128
- // var article_height = $('#home_news_panel-scroll-item').height();
129
- // var article_height = document.getElementById('home_news_panel-scroll-item').clientHeight;
130
- // var scrollThreshold = (article_height -200) * -1;
131
-
132
- $('#home_news_panel-scroll-group').infiniteScroll({
133
- path: getPosts,
134
- append: '#home_news_panel-scroll-item',
135
- history: false,
136
- checkLastPage: true,
137
- status: '.page-scroll-last',
138
- });
139
-
140
- $('.list-group').on( 'error.infiniteScroll', function( event, error, path, response ) {
141
- var logger = log4javascript.getLogger('j1.adapter.infiniteScroll');
142
- var log_text = `\n could not load next items: ${path}. ${error}`;
143
- logger.info(log_text);
144
- });
145
-
146
- $('.list-group').on( 'last.infiniteScroll', function( event, body, path ) {
147
- var logger = log4javascript.getLogger('j1.adapter.infiniteScroll');
148
- var log_text = `\n last page reached on ${path}`;
149
- logger.info(log_text);
150
- });
151
-
152
- $('.list-group').on( 'scrollThreshold.infiniteScroll', function( event ) {
153
- var logger = log4javascript.getLogger('j1.adapter.infiniteScroll');
154
- var log_text = '\n scroll position is less than scrollThreshold option distance';
155
- logger.info(log_text);
156
- });
157
-
158
- $('.list-group').on( 'load.infiniteScroll', function( event, body, path, response ) {
159
- var logger = log4javascript.getLogger('j1.adapter.infiniteScroll');
160
- var log_text = `\n loaded data from path: ${path}`;
161
- logger.info(log_text);
162
-
163
- //var elm = document.getElementById("home_news_panel-scroll-group");
164
- //
165
- // var ww = $(window).width();
166
- // var wh = $(window).height();
167
- //
168
- // var vw = Math.max(document.documentElement.clientWidth || 0, window.innerWidth || 0)
169
- // var vh = Math.max(document.documentElement.clientHeight || 0, window.innerHeight || 0)
170
- //
171
- // var article_height = $('#home_news_panel-scroll-item').height();
172
- //
173
- // // if (user_agent.includes('iPad') || user_agent.includes('Windows') || user_agent.includes('OS X')) {
174
- // if (user_agent.includes('Windows') || !user_agent.includes('OS X')) {
175
- // // on desktops, scroll the page to view appended elements
176
- // window.scrollBy(0, article_height);
177
- // }
178
-
179
- });
180
-
181
- $('.list-group').on( 'request.infiniteScroll', function( event, path, fetchPromise ) {
182
- var logger = log4javascript.getLogger('j1.adapter.infiniteScroll');
183
- var log_text = `\n request for the next page to be loaded from path: ${path}`;
184
- logger.info(log_text);
185
- });
186
-
187
- clearInterval(dependencies_met_page_ready);
188
- }
189
- });
190
-
191
- }, // END init
192
-
193
- // -------------------------------------------------------------------------
194
- // messageHandler: MessageHandler for J1 CookieConsent module
195
- // Manage messages send from other J1 modules
196
- // -------------------------------------------------------------------------
197
- messageHandler: function (sender, message) {
198
- var json_message = JSON.stringify(message, undefined, 2);
199
-
200
- logText = '\n' + 'received message from ' + sender + ': ' + json_message;
201
- logger.debug(logText);
202
-
203
- // -----------------------------------------------------------------------
204
- // Process commands|actions
205
- // -----------------------------------------------------------------------
206
- if (message.type === 'command' && message.action === 'module_initialized') {
207
- //
208
- // Place handling of command|action here
209
- //
210
- logger.info('\n' + message.text);
211
- }
212
-
213
- //
214
- // Place handling of other command|action here
215
- //
216
-
217
- return true;
218
- }, // END messageHandler
219
-
220
- // -------------------------------------------------------------------------
221
- // setState()
222
- // Sets the current (processing) state of the module
223
- // -------------------------------------------------------------------------
224
- setState: function (stat) {
225
- _this.state = stat;
226
- }, // END setState
227
-
228
- // -------------------------------------------------------------------------
229
- // getState()
230
- // Returns the current (processing) state of the module
231
- // -------------------------------------------------------------------------
232
- getState: function () {
233
- return _this.state;
234
- } // END getState
235
-
236
- }; // END return
237
- })(j1, window);
238
-
239
- {% endcapture %}
240
- {% if production %}
241
- {{ cache | minifyJS }}
242
- {% else %}
243
- {{ cache | strip_empty_lines }}
244
- {% endif %}
245
- {% assign cache = nil %}
@@ -1,15 +0,0 @@
1
- /*
2
- # -----------------------------------------------------------------------------
3
- # ~/assets/themes/j1/modules/infiniteScroll/css/uno.min.css
4
- # Provides styles for J1 Module infiniteScroll
5
- #
6
- # Product/Info:
7
- # https://jekyll.one
8
- #
9
- # Copyright (C) 2021 Juergen Adams
10
- #
11
- # J1 Template is licensed under the MIT License.
12
- # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
13
- # -----------------------------------------------------------------------------
14
- */
15
- .list-group-item{width:96%;margin-right:1%!important}@media only screen and (min-width:576px){.list-group-item.items-auto{width:48.3%}.list-group-item.items-1{width:96%}.list-group-item.items-2{width:48.3%}.list-group-item.items-3{width:48.3%}.list-group-item.items-4{width:48.3%}}@media only screen and (min-width:768px){.list-group-item.items-auto{width:31.333%}.list-group-item.items-1{width:96%}.list-group-item.items-2{width:48.3%}.list-group-item.items-3{width:48.3%}.list-group-item.items-4{width:48.3%}}@media only screen and (min-width:992px){.list-group-item.items-auto{width:23.8%}.list-group-item.items-1{width:96%}.list-group-item.items-2{width:48.3%}.list-group-item.items-3{width:31.333%}.list-group-item.items-4{width:23.8%}}.page-load-status,.page-scroll-last{display:none;padding-top:.5rem;border-top:1px dotted #212121;color:#777}span.infinite-scroll-last{border-bottom-width:1px;border-bottom-style:dotted;border-bottom-color:#212121;display:inline-block;margin:0 0 -1px 0;padding:10px 3px}.loader-ellips{font-size:20px;position:relative;width:4em;height:1em;margin:10px auto}.loader-ellips__dot{display:block;width:1em;height:1em;border-radius:.5em;background:#555;position:absolute;animation-duration:.5s;animation-timing-function:ease;animation-iteration-count:infinite}.loader-ellips__dot:nth-child(1),.loader-ellips__dot:nth-child(2){left:0}.loader-ellips__dot:nth-child(3){left:1.5em}.loader-ellips__dot:nth-child(4){left:3em}@keyframes reveal{from{transform:scale(0.001)}to{transform:scale(1)}}@keyframes slide{to{transform:translateX(1.5em)}}.loader-ellips__dot:nth-child(1){animation-name:reveal}.loader-ellips__dot:nth-child(2),.loader-ellips__dot:nth-child(3){animation-name:slide}.loader-ellips__dot:nth-child(4){animation-name:reveal;animation-direction:reverse}