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
@@ -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 %}