j1-template 2024.2.0 → 2024.2.1

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 (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
@@ -1,255 +1,257 @@
1
- ---
2
- regenerate: true
3
- ---
4
-
5
- {% capture cache %}
6
-
7
- {% comment %}
8
- # -----------------------------------------------------------------------------
9
- # ~/assets/themes/j1/adapter/js/iconPicker.js
10
- # Liquid template to adapt the iconPicker module
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
- # icon_picker_options: {{ icon_picker_options | debug }}
22
- # -----------------------------------------------------------------------------
23
- {% endcomment %}
24
-
25
- {% comment %} Liquid procedures
26
- -------------------------------------------------------------------------------- {% endcomment %}
27
-
28
- {% comment %} Set global settings
29
- -------------------------------------------------------------------------------- {% endcomment %}
30
- {% assign environment = site.environment %}
31
- {% assign asset_path = "/assets/themes/j1" %}
32
-
33
- {% comment %} Process YML config data
34
- ================================================================================ {% endcomment %}
35
-
36
- {% comment %} Set config files
37
- -------------------------------------------------------------------------------- {% endcomment %}
38
- {% assign template_config = site.data.j1_config %}
39
- {% assign blocks = site.data.blocks %}
40
- {% assign modules = site.data.modules %}
41
-
42
- {% comment %} Set config data (settings only)
43
- -------------------------------------------------------------------------------- {% endcomment %}
44
- {% assign icon_picker_defaults = modules.defaults.icon_picker.defaults %}
45
- {% assign icon_picker_settings = modules.icon_picker.settings %}
46
-
47
- {% comment %} Set config options (settings only)
48
- -------------------------------------------------------------------------------- {% endcomment %}
49
- {% assign icon_picker_options = icon_picker_defaults | merge: icon_picker_settings %}
50
-
51
-
52
- {% comment %} Variables
53
- -------------------------------------------------------------------------------- {% endcomment %}
54
-
55
- {% comment %} Detect prod mode
56
- -------------------------------------------------------------------------------- {% endcomment %}
57
- {% assign production = false %}
58
- {% if environment == 'prod' or environment == 'production' %}
59
- {% assign production = true %}
60
- {% endif %}
61
-
62
- /*
63
- # -----------------------------------------------------------------------------
64
- # ~/assets/themes/j1/adapter/js/iconPicker.js
65
- # J1 Adapter for the iconPicker module
66
- #
67
- # Product/Info:
68
- # https://jekyll.one
69
- #
70
- # Copyright (C) 2023, 2024 Juergen Adams
71
- #
72
- # J1 Template is licensed under the MIT License.
73
- # For details, see: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
74
- # -----------------------------------------------------------------------------
75
- # NOTE:
76
- # -----------------------------------------------------------------------------
77
- # Adapter generated: {{site.time}}
78
- # -----------------------------------------------------------------------------
79
- */
80
-
81
- // -----------------------------------------------------------------------------
82
- // ESLint shimming
83
- // -----------------------------------------------------------------------------
84
- /* eslint indent: "off" */
85
- // -----------------------------------------------------------------------------
86
- 'use strict';
87
- j1.adapter.iconPicker = ((j1, window) => {
88
-
89
- {% comment %} Set global variables
90
- -------------------------------------------------------------------------------- {% endcomment %}
91
- var environment = '{{environment}}';
92
- var state = 'not_started';
93
- var iconPickerDefaults;
94
- var iconPickerSettings;
95
- var iconPickerOptions;
96
- var frontmatterOptions;
97
- var icon_picker;
98
- var icon_picker_button_id;
99
- var _this;
100
- var logger;
101
- var logText;
102
-
103
- // date|time
104
- var startTime;
105
- var endTime;
106
- var startTimeModule;
107
- var endTimeModule;
108
- var timeSeconds;
109
-
110
- // ---------------------------------------------------------------------------
111
- // Main object
112
- // ---------------------------------------------------------------------------
113
- return {
114
-
115
- // -------------------------------------------------------------------------
116
- // adapter initializer
117
- // -------------------------------------------------------------------------
118
- init: (options) => {
119
-
120
- // -----------------------------------------------------------------------
121
- // default module settings
122
- // -----------------------------------------------------------------------
123
- var settings = $.extend({
124
- module_name: 'j1.adapter.iconPicker',
125
- generated: '{{site.time}}'
126
- }, options);
127
-
128
- // -----------------------------------------------------------------------
129
- // global variable settings
130
- // -----------------------------------------------------------------------
131
-
132
- // create settings object from module options
133
- iconPickerDefaults = $.extend({}, {{icon_picker_defaults | replace: 'nil', 'null' | replace: '=>', ':' }});
134
- iconPickerSettings = $.extend({}, {{icon_picker_settings | replace: 'nil', 'null' | replace: '=>', ':' }});
135
- iconPickerOptions = $.extend(true, {}, iconPickerDefaults, iconPickerSettings);
136
-
137
- _this = j1.adapter.iconPicker;
138
- logger = log4javascript.getLogger('j1.adapter.iconPicker');
139
-
140
- // -----------------------------------------------------------------------
141
- // module initializer
142
- // -----------------------------------------------------------------------
143
- var dependencies_met_page_ready = setInterval((options) => {
144
- var pageState = $('#content').css("display");
145
- var pageVisible = (pageState === 'block') ? true : false;
146
- var j1CoreFinished = (j1.getState() === 'finished') ? true : false;
147
-
148
- if (j1CoreFinished && pageVisible) {
149
- startTimeModule = Date.now();
150
-
151
- icon_picker_button_id = '#' + iconPickerOptions.picker_button_id;
152
-
153
- _this.setState('started');
154
- logger.debug('\n' + 'state: ' + _this.getState());
155
- logger.info('\n' + 'module is being initialized on id: ' + icon_picker_button_id);
156
-
157
- var dependencies_met_picker_button_ready = setInterval (() => {
158
- var buttonState = $(icon_picker_button_id).length;
159
- var buttonReady = (buttonState > 0) ? true : false;
160
-
161
- if (buttonReady) {
162
- // setup initial slimSelect values|iconPicker options
163
- icon_picker = new UniversalIconPicker(icon_picker_button_id, {
164
- allowEmpty: iconPickerOptions.api_options.allowEmpty,
165
- iconLibraries: iconPickerOptions.api_options.iconLibraries,
166
- iconLibrariesCss: iconPickerOptions.api_options.iconLibrariesCss,
167
- onSelect: (jsonIconData) => {
168
- // copy selected icon to clipboard (iconClass)
169
- var copyFrom = document.createElement('textarea');
170
- copyFrom.value = jsonIconData.iconClass;
171
- document.body.appendChild(copyFrom);
172
- copyFrom.select();
173
- document.execCommand('copy');
174
- // Remove data element from body
175
- setTimeout(() => {
176
- document.body.removeChild(copyFrom);
177
- }, 500);
178
- }
179
- });
180
-
181
- // save config settings into the toccer object for later access
182
- _this['icon_picker'] = icon_picker;
183
- _this['moduleOptions'] = iconPickerOptions;
184
-
185
- _this.setState('finished');
186
- logger.debug('\n' + 'state: ' + _this.getState());
187
- logger.info('\n' + 'initializing module finished');
188
-
189
- endTimeModule = Date.now();
190
- logger.info('\n' + 'module initializing time: ' + (endTimeModule-startTimeModule) + 'ms');
191
-
192
- clearInterval(dependencies_met_picker_button_ready);
193
- } // END if buttonReady
194
- }, 10); // END dependencies_met_picker_button_ready
195
-
196
- clearInterval(dependencies_met_page_ready);
197
- } // END pageVisible
198
- }, 10); // END dependencies_met_page_ready
199
- }, // END init
200
-
201
- // -------------------------------------------------------------------------
202
- // messageHandler()
203
- // manage messages send from other J1 modules
204
- // -------------------------------------------------------------------------
205
- messageHandler: (sender, message) => {
206
- var json_message = JSON.stringify(message, undefined, 2);
207
-
208
- logText = '\n' + 'received message from ' + sender + ': ' + json_message;
209
- logger.debug(logText);
210
-
211
- // -----------------------------------------------------------------------
212
- // process commands|actions
213
- // -----------------------------------------------------------------------
214
- if (message.type === 'command' && message.action === 'module_initialized') {
215
-
216
- //
217
- // place handling of command|action here
218
- //
219
-
220
- logger.info('\n' + message.text);
221
- }
222
-
223
- //
224
- // place handling of other command|action here
225
- //
226
-
227
- return true;
228
- }, // END messageHandler
229
-
230
- // -------------------------------------------------------------------------
231
- // setState()
232
- // sets the current (processing) state of the module
233
- // -------------------------------------------------------------------------
234
- setState: (stat) => {
235
- _this.state = stat;
236
- }, // END setState
237
-
238
- // -------------------------------------------------------------------------
239
- // getState()
240
- // Returns the current (processing) state of the module
241
- // -------------------------------------------------------------------------
242
- getState: () => {
243
- return _this.state;
244
- } // END getState
245
-
246
- }; // END main (return)
247
- })(j1, window);
248
-
249
- {% endcapture %}
250
- {% if production %}
251
- {{ cache | minifyJS }}
252
- {% else %}
253
- {{ cache | strip_empty_lines }}
254
- {% endif %}
255
- {% assign cache = nil %}
1
+ ---
2
+ regenerate: true
3
+ ---
4
+
5
+ {% capture cache %}
6
+
7
+ {% comment %}
8
+ # -----------------------------------------------------------------------------
9
+ # ~/assets/themes/j1/adapter/js/iconPicker.js
10
+ # Liquid template to adapt the iconPicker module
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
+ # icon_picker_options: {{ icon_picker_options | debug }}
22
+ # -----------------------------------------------------------------------------
23
+ {% endcomment %}
24
+
25
+ {% comment %} Liquid procedures
26
+ -------------------------------------------------------------------------------- {% endcomment %}
27
+
28
+ {% comment %} Set global settings
29
+ -------------------------------------------------------------------------------- {% endcomment %}
30
+ {% assign environment = site.environment %}
31
+ {% assign asset_path = "/assets/themes/j1" %}
32
+
33
+ {% comment %} Process YML config data
34
+ ================================================================================ {% endcomment %}
35
+
36
+ {% comment %} Set config files
37
+ -------------------------------------------------------------------------------- {% endcomment %}
38
+ {% assign template_config = site.data.j1_config %}
39
+ {% assign blocks = site.data.blocks %}
40
+ {% assign modules = site.data.modules %}
41
+
42
+ {% comment %} Set config data (settings only)
43
+ -------------------------------------------------------------------------------- {% endcomment %}
44
+ {% assign icon_picker_defaults = modules.defaults.icon_picker.defaults %}
45
+ {% assign icon_picker_settings = modules.icon_picker.settings %}
46
+
47
+ {% comment %} Set config options (settings only)
48
+ -------------------------------------------------------------------------------- {% endcomment %}
49
+ {% assign icon_picker_options = icon_picker_defaults | merge: icon_picker_settings %}
50
+
51
+
52
+ {% comment %} Variables
53
+ -------------------------------------------------------------------------------- {% endcomment %}
54
+
55
+ {% comment %} Detect prod mode
56
+ -------------------------------------------------------------------------------- {% endcomment %}
57
+ {% assign production = false %}
58
+ {% if environment == 'prod' or environment == 'production' %}
59
+ {% assign production = true %}
60
+ {% endif %}
61
+
62
+ /*
63
+ # -----------------------------------------------------------------------------
64
+ # ~/assets/themes/j1/adapter/js/iconPicker.js
65
+ # J1 Adapter for the iconPicker module
66
+ #
67
+ # Product/Info:
68
+ # https://jekyll.one
69
+ #
70
+ # Copyright (C) 2023, 2024 Juergen Adams
71
+ #
72
+ # J1 Template is licensed under the MIT License.
73
+ # For details, see: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
74
+ # -----------------------------------------------------------------------------
75
+ # NOTE:
76
+ # -----------------------------------------------------------------------------
77
+ # Adapter generated: {{site.time}}
78
+ # -----------------------------------------------------------------------------
79
+ */
80
+
81
+ // -----------------------------------------------------------------------------
82
+ // ESLint shimming
83
+ // -----------------------------------------------------------------------------
84
+ /* eslint indent: "off" */
85
+ // -----------------------------------------------------------------------------
86
+ 'use strict';
87
+ j1.adapter.iconPicker = ((j1, window) => {
88
+
89
+ {% comment %} Set global variables
90
+ -------------------------------------------------------------------------------- {% endcomment %}
91
+ var environment = '{{environment}}';
92
+ var state = 'not_started';
93
+
94
+ var iconPickerDefaults;
95
+ var iconPickerSettings;
96
+ var iconPickerOptions;
97
+ var frontmatterOptions;
98
+ var icon_picker;
99
+ var icon_picker_button_id;
100
+
101
+ var _this;
102
+ var logger;
103
+ var logText;
104
+
105
+ // date|time
106
+ var startTime;
107
+ var endTime;
108
+ var startTimeModule;
109
+ var endTimeModule;
110
+ var timeSeconds;
111
+
112
+ // ---------------------------------------------------------------------------
113
+ // Main object
114
+ // ---------------------------------------------------------------------------
115
+ return {
116
+
117
+ // -------------------------------------------------------------------------
118
+ // adapter initializer
119
+ // -------------------------------------------------------------------------
120
+ init: (options) => {
121
+
122
+ // -----------------------------------------------------------------------
123
+ // default module settings
124
+ // -----------------------------------------------------------------------
125
+ var settings = $.extend({
126
+ module_name: 'j1.adapter.iconPicker',
127
+ generated: '{{site.time}}'
128
+ }, options);
129
+
130
+ // -----------------------------------------------------------------------
131
+ // global variable settings
132
+ // -----------------------------------------------------------------------
133
+
134
+ // create settings object from module options
135
+ iconPickerDefaults = $.extend({}, {{icon_picker_defaults | replace: 'nil', 'null' | replace: '=>', ':' }});
136
+ iconPickerSettings = $.extend({}, {{icon_picker_settings | replace: 'nil', 'null' | replace: '=>', ':' }});
137
+ iconPickerOptions = $.extend(true, {}, iconPickerDefaults, iconPickerSettings);
138
+
139
+ _this = j1.adapter.iconPicker;
140
+ logger = log4javascript.getLogger('j1.adapter.iconPicker');
141
+
142
+ // -----------------------------------------------------------------------
143
+ // module initializer
144
+ // -----------------------------------------------------------------------
145
+ var dependencies_met_page_ready = setInterval((options) => {
146
+ var pageState = $('#content').css("display");
147
+ var pageVisible = (pageState === 'block') ? true : false;
148
+ var j1CoreFinished = (j1.getState() === 'finished') ? true : false;
149
+
150
+ if (j1CoreFinished && pageVisible) {
151
+ startTimeModule = Date.now();
152
+
153
+ icon_picker_button_id = '#' + iconPickerOptions.picker_button_id;
154
+
155
+ _this.setState('started');
156
+ logger.debug('\n' + 'state: ' + _this.getState());
157
+ logger.info('\n' + 'module is being initialized on id: ' + icon_picker_button_id);
158
+
159
+ var dependencies_met_picker_button_ready = setInterval (() => {
160
+ var buttonState = $(icon_picker_button_id).length;
161
+ var buttonReady = (buttonState > 0) ? true : false;
162
+
163
+ if (buttonReady) {
164
+ // setup initial slimSelect values|iconPicker options
165
+ icon_picker = new UniversalIconPicker(icon_picker_button_id, {
166
+ allowEmpty: iconPickerOptions.api_options.allowEmpty,
167
+ iconLibraries: iconPickerOptions.api_options.iconLibraries,
168
+ iconLibrariesCss: iconPickerOptions.api_options.iconLibrariesCss,
169
+ onSelect: (jsonIconData) => {
170
+ // copy selected icon to clipboard (iconClass)
171
+ var copyFrom = document.createElement('textarea');
172
+ copyFrom.value = jsonIconData.iconClass;
173
+ document.body.appendChild(copyFrom);
174
+ copyFrom.select();
175
+ document.execCommand('copy');
176
+ // Remove data element from body
177
+ setTimeout(() => {
178
+ document.body.removeChild(copyFrom);
179
+ }, 500);
180
+ }
181
+ });
182
+
183
+ // save config settings into the toccer object for later access
184
+ _this['icon_picker'] = icon_picker;
185
+ _this['moduleOptions'] = iconPickerOptions;
186
+
187
+ _this.setState('finished');
188
+ logger.debug('\n' + 'state: ' + _this.getState());
189
+ logger.info('\n' + 'initializing module finished');
190
+
191
+ endTimeModule = Date.now();
192
+ logger.info('\n' + 'module initializing time: ' + (endTimeModule-startTimeModule) + 'ms');
193
+
194
+ clearInterval(dependencies_met_picker_button_ready);
195
+ } // END if buttonReady
196
+ }, 10); // END dependencies_met_picker_button_ready
197
+
198
+ clearInterval(dependencies_met_page_ready);
199
+ } // END pageVisible
200
+ }, 10); // END dependencies_met_page_ready
201
+ }, // END init
202
+
203
+ // -------------------------------------------------------------------------
204
+ // messageHandler()
205
+ // manage messages send from other J1 modules
206
+ // -------------------------------------------------------------------------
207
+ messageHandler: (sender, message) => {
208
+ var json_message = JSON.stringify(message, undefined, 2);
209
+
210
+ logText = '\n' + 'received message from ' + sender + ': ' + json_message;
211
+ logger.debug(logText);
212
+
213
+ // -----------------------------------------------------------------------
214
+ // process commands|actions
215
+ // -----------------------------------------------------------------------
216
+ if (message.type === 'command' && message.action === 'module_initialized') {
217
+
218
+ //
219
+ // place handling of command|action here
220
+ //
221
+
222
+ logger.info('\n' + message.text);
223
+ }
224
+
225
+ //
226
+ // place handling of other command|action here
227
+ //
228
+
229
+ return true;
230
+ }, // END messageHandler
231
+
232
+ // -------------------------------------------------------------------------
233
+ // setState()
234
+ // sets the current (processing) state of the module
235
+ // -------------------------------------------------------------------------
236
+ setState: (stat) => {
237
+ _this.state = stat;
238
+ }, // END setState
239
+
240
+ // -------------------------------------------------------------------------
241
+ // getState()
242
+ // Returns the current (processing) state of the module
243
+ // -------------------------------------------------------------------------
244
+ getState: () => {
245
+ return _this.state;
246
+ } // END getState
247
+
248
+ }; // END main (return)
249
+ })(j1, window);
250
+
251
+ {% endcapture %}
252
+ {% if production %}
253
+ {{ cache | minifyJS }}
254
+ {% else %}
255
+ {{ cache | strip_empty_lines }}
256
+ {% endif %}
257
+ {% assign cache = nil %}