j1-template 2024.2.0 → 2024.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/assets/data/gemini-ui.html +2 -2
  3. data/assets/themes/j1/adapter/js/advertising.js +2 -10
  4. data/assets/themes/j1/adapter/js/analytics.js +1 -5
  5. data/assets/themes/j1/adapter/js/bmd.js +195 -195
  6. data/assets/themes/j1/adapter/js/carousel.js +786 -786
  7. data/assets/themes/j1/adapter/js/clipboard.js +1 -0
  8. data/assets/themes/j1/adapter/js/comments.js +1 -0
  9. data/assets/themes/j1/adapter/js/cookieConsent.js +460 -466
  10. data/assets/themes/j1/adapter/js/customModule.js +5 -4
  11. data/assets/themes/j1/adapter/js/docsearch.js +1 -0
  12. data/assets/themes/j1/adapter/js/dropdowns.js +1 -0
  13. data/assets/themes/j1/adapter/js/fab.js +1 -0
  14. data/assets/themes/j1/adapter/js/gallery.js +495 -494
  15. data/assets/themes/j1/adapter/js/gemini.js +154 -128
  16. data/assets/themes/j1/adapter/js/iconPicker.js +257 -255
  17. data/assets/themes/j1/adapter/js/iconPickerPage.js +279 -279
  18. data/assets/themes/j1/adapter/js/iframer.js +3 -2
  19. data/assets/themes/j1/adapter/js/j1.js +3285 -3285
  20. data/assets/themes/j1/adapter/js/lazyLoader.js +241 -241
  21. data/assets/themes/j1/adapter/js/lightbox.js +242 -241
  22. data/assets/themes/j1/adapter/js/logger.js +1 -0
  23. data/assets/themes/j1/adapter/js/lunr.js +6 -10
  24. data/assets/themes/j1/adapter/js/masonry.js +427 -426
  25. data/assets/themes/j1/adapter/js/masterslider.js +526 -526
  26. data/assets/themes/j1/adapter/js/mmenu.js +1 -0
  27. data/assets/themes/j1/adapter/js/navigator.js +2 -2
  28. data/assets/themes/j1/adapter/js/particles.js +1 -0
  29. data/assets/themes/j1/adapter/js/rangeSlider.js +1 -0
  30. data/assets/themes/j1/adapter/js/rouge.js +288 -287
  31. data/assets/themes/j1/adapter/js/rtable.js +309 -309
  32. data/assets/themes/j1/adapter/js/slick.js +487 -487
  33. data/assets/themes/j1/adapter/js/slimSelect.js +3 -5
  34. data/assets/themes/j1/adapter/js/themeToggler.js +281 -280
  35. data/assets/themes/j1/adapter/js/themes.js +0 -1
  36. data/assets/themes/j1/adapter/js/toccer.js +1 -0
  37. data/assets/themes/j1/adapter/js/translator.js +1 -0
  38. data/assets/themes/j1/adapter/js/waves.js +1 -0
  39. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.js +23 -17
  40. data/assets/themes/j1/modules/js-cookies/js/js.cookie.js +147 -0
  41. data/assets/themes/j1/modules/js-cookies/js/js.cookie.min.js +2 -0
  42. data/lib/j1/version.rb +1 -1
  43. data/lib/starter_web/README.md +5 -5
  44. data/lib/starter_web/_config.yml +1 -1
  45. data/lib/starter_web/_data/modules/defaults/themes.yml +171 -171
  46. data/lib/starter_web/_data/resources.yml +26 -0
  47. data/lib/starter_web/_data/templates/feed.xml +1 -1
  48. data/lib/starter_web/_plugins/index/lunr.rb +1 -1
  49. data/lib/starter_web/package.json +1 -1
  50. data/lib/starter_web/pages/public/learn/roundtrip/present_images.adoc +500 -500
  51. metadata +4 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b57ee73abf09d2eb3ab8240d8d0fb3fcff65b746ba0ad4fccee7959fc1e355f6
4
- data.tar.gz: 8a44f7f52d7dbd95f4f397e8f83f2bfff43412d1d977f6f65957bd6597feed32
3
+ metadata.gz: 38f9ae9860bce1223d848f305e1504a7e7a5a0ff029b2a898ac9a2da4a6314b7
4
+ data.tar.gz: 4973a48e0531915384772bd7bbcc0b8b5684a92b0ce79ae27c7bbf2f10498992
5
5
  SHA512:
6
- metadata.gz: 7556deb25e8556f6e5163280670d40071213c0b637adadc24b673049253beeec852d6c696fe9fbe77c896ce80657c00431009549337621a61dfad1c4d495658e
7
- data.tar.gz: 1bc46c6d1189632df11b78236c7e8d0620611dee00e2e327c6331b05ed3aed3c8be7d04abcf406f6fe894d24edbb2e2f6e5cba55a4b2ff39f8b1e52470e592b2
6
+ metadata.gz: 26e66199ebc61924325091b0418530263ab5487a3569e6e828d99cb2136b1362caa13fc7d9a6cff92bdfeffd75fd2a18babe69a9d75b28dfaa243dac80687091
7
+ data.tar.gz: c8b628320b7e06a045ff46f68835310efd9c07a66d61f64e5b35cce45c9e9769863566e66ca9d043a3c5e87417ec69a3ff2527b28f6c51f2fca36b45043af88d
@@ -101,8 +101,8 @@ exclude_from_search: true
101
101
  </button>
102
102
  <!-- Reset request button -->
103
103
  <button id="{{gemini_options.buttons.reset.id}}" type="button" class="btn btn-warning mt-1">{{gemini_options.buttons.reset.name}}</button>
104
- <!-- Clear history button -->
105
- <button id="{{gemini_options.buttons.clear.id}}" type="button" class="btn btn-danger mt-1">{{gemini_options.buttons.clear.name}}</button>
104
+ <!-- Clear history button (show hidden) -->
105
+ <button id="{{gemini_options.buttons.clear.id}}" type="button" class="btn btn-danger mt-1" style="display: none">{{gemini_options.buttons.clear.name}}</button>
106
106
  <!-- END UI buttons -->
107
107
 
108
108
  </div>
@@ -103,6 +103,7 @@ j1.adapter.advertising = ((j1, window) => {
103
103
  var advertisingProvider = 'Google Adsense';
104
104
  var state = 'not_started';
105
105
  var layout;
106
+
106
107
  var advertisingDefaults;
107
108
  var advertisingSettings;
108
109
  var advertisingOptions;
@@ -224,7 +225,6 @@ j1.adapter.advertising = ((j1, window) => {
224
225
  }
225
226
 
226
227
  // add Google Adsense API dynamically in head section loaded async
227
- //
228
228
  logger.info('\n' + 'add Google AdsenseAPI in section: head');
229
229
 
230
230
  gasScript.async = true;
@@ -236,7 +236,6 @@ j1.adapter.advertising = ((j1, window) => {
236
236
  logger.info('\n' + 'adsense api initialized');
237
237
 
238
238
  // setup monitor for state changes on all ads configured
239
- //
240
239
  setTimeout(() => {
241
240
  var ads_found = (document.getElementsByClassName('adsbygoogle').length > 0) ? true : false;
242
241
  if (ads_found > 0) {
@@ -248,7 +247,6 @@ j1.adapter.advertising = ((j1, window) => {
248
247
  }, 1000);
249
248
 
250
249
  // run protection check
251
- //
252
250
  if (checkTrackingProtection) {
253
251
  logger.debug('\n' + 'run checks for tracking protection');
254
252
 
@@ -288,7 +286,6 @@ j1.adapter.advertising = ((j1, window) => {
288
286
 
289
287
  } else {
290
288
  // user consent on personalization "false"
291
- //
292
289
  if (production) {
293
290
  console.debug('cookies for personalization rejected');
294
291
  console.debug('initialization of module advertising skipped');
@@ -298,15 +295,10 @@ j1.adapter.advertising = ((j1, window) => {
298
295
  }
299
296
 
300
297
  // if consent is rejected, detect and remove Adsense cookies
301
- //
302
298
  var gasCookies = j1.findCookie('__g');
303
299
  gasCookies.forEach((item) => {
304
300
  // remove Google Ad cookies
305
- if (hostname == 'localhost') {
306
- j1.removeCookie({ name: item, domain: false, secure: false });
307
- } else {
308
- j1.removeCookie({ name: item, domain: '.' + hostname, secure: false });
309
- }
301
+ j1.removeCookie({ name: item });
310
302
  });
311
303
 
312
304
  // manage tracking protection
@@ -185,11 +185,7 @@ j1.adapter.analytics = ((j1, window) => {
185
185
  gaCookies = j1.findCookie('_ga');
186
186
  gaCookies.forEach((item) => {
187
187
  logger.debug('\n' + 'delete cookie created by Google Analytics: ' + item);
188
- if (hostname == 'localhost') {
189
- j1.removeCookie({ name: item, domain: false, secure: false });
190
- } else {
191
- j1.removeCookie({ name: item, domain: '.' + hostname, secure: false });
192
- }
188
+ j1.removeCookie({ name: item });
193
189
  });
194
190
 
195
191
  gaExists = document.getElementById('google-tag-manager') === null ? false : true;
@@ -1,195 +1,195 @@
1
- ---
2
- regenerate: false
3
- ---
4
-
5
- {% capture cache %}
6
-
7
- {% comment %}
8
- # -----------------------------------------------------------------------------
9
- # ~/assets/themes/j1/adapter/js/bmd.js
10
- # Liquid template to adapt Bootrap Material Design (BMD)
11
- #
12
- # Product/Info:
13
- # https://jekyll.one
14
- # Copyright (C) 2023, 2024 Juergen Adams
15
- #
16
- # J1 Template is licensed under the MIT License.
17
- # For details, see: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
18
- # -----------------------------------------------------------------------------
19
- # Test data:
20
- # {{ liquid_var | debug }}
21
- # -----------------------------------------------------------------------------
22
- {% endcomment %}
23
-
24
- {% comment %} Liquid var initialization
25
- -------------------------------------------------------------------------------- {% endcomment %}
26
-
27
- {% comment %} Set config files
28
- -------------------------------------------------------------------------------- {% endcomment %}
29
- {% assign environment = site.environment %}
30
- {% assign template_config = site.data.j1_config %}
31
- {% assign modules = site.data.modules %}
32
-
33
- {% comment %} Detect prod mode
34
- -------------------------------------------------------------------------------- {% endcomment %}
35
- {% assign production = false %}
36
- {% if environment == 'prod' or environment == 'production' %}
37
- {% assign production = true %}
38
- {% endif %}
39
-
40
- /*
41
- # -----------------------------------------------------------------------------
42
- # ~/assets/themes/j1/adapter/js/bmd.js
43
- # J1 Adapter for BMD
44
- #
45
- # Product/Info:
46
- # https://jekyll.one
47
- #
48
- # Copyright (C) 2023, 2024 Juergen Adams
49
- #
50
- # J1 Template is licensed under the MIT License.
51
- # For details, see: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
52
- # -----------------------------------------------------------------------------
53
- # Adapter generated: {{site.time}}
54
- # -----------------------------------------------------------------------------
55
- */
56
-
57
- // -----------------------------------------------------------------------------
58
- // ESLint shimming
59
- // -----------------------------------------------------------------------------
60
- /* eslint indent: "off" */
61
- // -----------------------------------------------------------------------------
62
- 'use strict';
63
- j1.adapter.bmd = ((j1, window) => {
64
-
65
- {% comment %} Set global variables
66
- ------------------------------------------------------------------------------ {% endcomment %}
67
- var environment = '{{environment}}';
68
- var moduleOptions = {};
69
- var state = 'not_started';
70
-
71
- var _this;
72
- var logger;
73
- var logText;
74
-
75
- // date|time
76
- var startTime;
77
- var endTime;
78
- var startTimeModule;
79
- var endTimeModule;
80
- var timeSeconds;
81
-
82
- // ---------------------------------------------------------------------------
83
- // helper functions
84
- // ---------------------------------------------------------------------------
85
-
86
- // ---------------------------------------------------------------------------
87
- // main
88
- // ---------------------------------------------------------------------------
89
- return {
90
-
91
- // -------------------------------------------------------------------------
92
- // adapter initializer
93
- // -------------------------------------------------------------------------
94
- init: (options) => {
95
-
96
- // -----------------------------------------------------------------------
97
- // default module settings
98
- // -----------------------------------------------------------------------
99
- var settings = $.extend({
100
- module_name: 'j1.adapter.bmd',
101
- generated: '{{site.time}}'
102
- }, options);
103
-
104
- // -----------------------------------------------------------------------
105
- // global variable settings
106
- // -----------------------------------------------------------------------
107
- _this = j1.adapter.bmd;
108
- logger = log4javascript.getLogger('j1.adapter.bmd');
109
-
110
- // -----------------------------------------------------------------------
111
- // module initializer
112
- // -----------------------------------------------------------------------
113
- var dependency_met_page_ready = setInterval(() => {
114
- var pageState = $('#content').css("display");
115
- var pageVisible = (pageState === 'block') ? true : false;
116
- var j1CoreFinished = (j1.getState() === 'finished') ? true : false;
117
-
118
- if (j1CoreFinished && pageVisible) {
119
- startTimeModule = Date.now();
120
-
121
- _this.setState('started');
122
- logger.debug('\n' + 'state: ' + _this.getState());
123
- logger.info('\n' + 'module is being initialized');
124
-
125
- // BMD initializer
126
- logger.info('\n' + 'setup bmd resources');
127
- $('body').bmd();
128
-
129
- _this.setState('finished');
130
- logger.debug('\n' + 'state: ' + _this.getState());
131
- logger.info('\n' + 'initializing module finished');
132
-
133
- endTimeModule = Date.now();
134
- logger.info('\n' + 'module initializing time: ' + (endTimeModule-startTimeModule) + 'ms');
135
-
136
- clearInterval(dependency_met_page_ready);
137
- } // END if pageVisible
138
- }, 10); // END dependency_met_page_ready
139
- }, // END init
140
-
141
- // -------------------------------------------------------------------------
142
- // messageHandler()
143
- // manage messages send from other J1 modules
144
- // -------------------------------------------------------------------------
145
- messageHandler: (sender, message) => {
146
- var json_message = JSON.stringify(message, undefined, 2);
147
-
148
- logText = '\n' + 'received message from ' + sender + ': ' + json_message;
149
- logger.debug(logText);
150
-
151
- // -----------------------------------------------------------------------
152
- // process commands|actions
153
- // -----------------------------------------------------------------------
154
- if (message.type === 'command' && message.action === 'module_initialized') {
155
-
156
- //
157
- // place handling of command|action here
158
- //
159
-
160
- logger.info('\n' + message.text);
161
- }
162
-
163
- //
164
- // place handling of other command|action here
165
- //
166
-
167
- return true;
168
- }, // END messageHandler
169
-
170
- // -------------------------------------------------------------------------
171
- // setState()
172
- // sets the current (processing) state of the module
173
- // -------------------------------------------------------------------------
174
- setState: (stat) => {
175
- _this.state = stat;
176
- }, // END setState
177
-
178
- // -------------------------------------------------------------------------
179
- // getState()
180
- // Returns the current (processing) state of the module
181
- // -------------------------------------------------------------------------
182
- getState: () => {
183
- return _this.state;
184
- } // END getState
185
-
186
- }; // END main (return)
187
- })(j1, window);
188
-
189
- {% endcapture %}
190
- {% if production %}
191
- {{ cache | minifyJS }}
192
- {% else %}
193
- {{ cache | strip_empty_lines }}
194
- {% endif %}
195
- {% assign cache = nil %}
1
+ ---
2
+ regenerate: false
3
+ ---
4
+
5
+ {% capture cache %}
6
+
7
+ {% comment %}
8
+ # -----------------------------------------------------------------------------
9
+ # ~/assets/themes/j1/adapter/js/bmd.js
10
+ # Liquid template to adapt Bootrap Material Design (BMD)
11
+ #
12
+ # Product/Info:
13
+ # https://jekyll.one
14
+ # Copyright (C) 2023, 2024 Juergen Adams
15
+ #
16
+ # J1 Template is licensed under the MIT License.
17
+ # For details, see: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
18
+ # -----------------------------------------------------------------------------
19
+ # Test data:
20
+ # {{ liquid_var | debug }}
21
+ # -----------------------------------------------------------------------------
22
+ {% endcomment %}
23
+
24
+ {% comment %} Liquid var initialization
25
+ -------------------------------------------------------------------------------- {% endcomment %}
26
+
27
+ {% comment %} Set config files
28
+ -------------------------------------------------------------------------------- {% endcomment %}
29
+ {% assign environment = site.environment %}
30
+ {% assign template_config = site.data.j1_config %}
31
+ {% assign modules = site.data.modules %}
32
+
33
+ {% comment %} Detect prod mode
34
+ -------------------------------------------------------------------------------- {% endcomment %}
35
+ {% assign production = false %}
36
+ {% if environment == 'prod' or environment == 'production' %}
37
+ {% assign production = true %}
38
+ {% endif %}
39
+
40
+ /*
41
+ # -----------------------------------------------------------------------------
42
+ # ~/assets/themes/j1/adapter/js/bmd.js
43
+ # J1 Adapter for BMD
44
+ #
45
+ # Product/Info:
46
+ # https://jekyll.one
47
+ #
48
+ # Copyright (C) 2023, 2024 Juergen Adams
49
+ #
50
+ # J1 Template is licensed under the MIT License.
51
+ # For details, see: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
52
+ # -----------------------------------------------------------------------------
53
+ # Adapter generated: {{site.time}}
54
+ # -----------------------------------------------------------------------------
55
+ */
56
+
57
+ // -----------------------------------------------------------------------------
58
+ // ESLint shimming
59
+ // -----------------------------------------------------------------------------
60
+ /* eslint indent: "off" */
61
+ // -----------------------------------------------------------------------------
62
+ 'use strict';
63
+ j1.adapter.bmd = ((j1, window) => {
64
+
65
+ {% comment %} Set global variables
66
+ ------------------------------------------------------------------------------ {% endcomment %}
67
+ var environment = '{{environment}}';
68
+ var moduleOptions = {};
69
+ var state = 'not_started';
70
+
71
+ var _this;
72
+ var logger;
73
+ var logText;
74
+
75
+ // date|time
76
+ var startTime;
77
+ var endTime;
78
+ var startTimeModule;
79
+ var endTimeModule;
80
+ var timeSeconds;
81
+
82
+ // ---------------------------------------------------------------------------
83
+ // helper functions
84
+ // ---------------------------------------------------------------------------
85
+
86
+ // ---------------------------------------------------------------------------
87
+ // main
88
+ // ---------------------------------------------------------------------------
89
+ return {
90
+
91
+ // -------------------------------------------------------------------------
92
+ // adapter initializer
93
+ // -------------------------------------------------------------------------
94
+ init: (options) => {
95
+
96
+ // -----------------------------------------------------------------------
97
+ // default module settings
98
+ // -----------------------------------------------------------------------
99
+ var settings = $.extend({
100
+ module_name: 'j1.adapter.bmd',
101
+ generated: '{{site.time}}'
102
+ }, options);
103
+
104
+ // -----------------------------------------------------------------------
105
+ // global variable settings
106
+ // -----------------------------------------------------------------------
107
+ _this = j1.adapter.bmd;
108
+ logger = log4javascript.getLogger('j1.adapter.bmd');
109
+
110
+ // -----------------------------------------------------------------------
111
+ // module initializer
112
+ // -----------------------------------------------------------------------
113
+ var dependency_met_page_ready = setInterval(() => {
114
+ var pageState = $('#content').css("display");
115
+ var pageVisible = (pageState === 'block') ? true : false;
116
+ var j1CoreFinished = (j1.getState() === 'finished') ? true : false;
117
+
118
+ if (j1CoreFinished && pageVisible) {
119
+ startTimeModule = Date.now();
120
+
121
+ _this.setState('started');
122
+ logger.debug('\n' + 'state: ' + _this.getState());
123
+ logger.info('\n' + 'module is being initialized');
124
+
125
+ // BMD initializer
126
+ logger.info('\n' + 'setup bmd resources');
127
+ $('body').bmd();
128
+
129
+ _this.setState('finished');
130
+ logger.debug('\n' + 'state: ' + _this.getState());
131
+ logger.info('\n' + 'initializing module finished');
132
+
133
+ endTimeModule = Date.now();
134
+ logger.info('\n' + 'module initializing time: ' + (endTimeModule-startTimeModule) + 'ms');
135
+
136
+ clearInterval(dependency_met_page_ready);
137
+ } // END if pageVisible
138
+ }, 10); // END dependency_met_page_ready
139
+ }, // END init
140
+
141
+ // -------------------------------------------------------------------------
142
+ // messageHandler()
143
+ // manage messages send from other J1 modules
144
+ // -------------------------------------------------------------------------
145
+ messageHandler: (sender, message) => {
146
+ var json_message = JSON.stringify(message, undefined, 2);
147
+
148
+ logText = '\n' + 'received message from ' + sender + ': ' + json_message;
149
+ logger.debug(logText);
150
+
151
+ // -----------------------------------------------------------------------
152
+ // process commands|actions
153
+ // -----------------------------------------------------------------------
154
+ if (message.type === 'command' && message.action === 'module_initialized') {
155
+
156
+ //
157
+ // place handling of command|action here
158
+ //
159
+
160
+ logger.info('\n' + message.text);
161
+ }
162
+
163
+ //
164
+ // place handling of other command|action here
165
+ //
166
+
167
+ return true;
168
+ }, // END messageHandler
169
+
170
+ // -------------------------------------------------------------------------
171
+ // setState()
172
+ // sets the current (processing) state of the module
173
+ // -------------------------------------------------------------------------
174
+ setState: (stat) => {
175
+ _this.state = stat;
176
+ }, // END setState
177
+
178
+ // -------------------------------------------------------------------------
179
+ // getState()
180
+ // Returns the current (processing) state of the module
181
+ // -------------------------------------------------------------------------
182
+ getState: () => {
183
+ return _this.state;
184
+ } // END getState
185
+
186
+ }; // END main (return)
187
+ })(j1, window);
188
+
189
+ {% endcapture %}
190
+ {% if production %}
191
+ {{ cache | minifyJS }}
192
+ {% else %}
193
+ {{ cache | strip_empty_lines }}
194
+ {% endif %}
195
+ {% assign cache = nil %}