j1-template 2021.2.12 → 2021.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/_layouts/compress.html +12 -4
  3. data/assets/data/private.json +49 -0
  4. data/assets/themes/j1/adapter/js/{j1scroll.js → scroller.js} +285 -304
  5. data/assets/themes/j1/core/js/template.js +4098 -223
  6. data/assets/themes/j1/core/js/template.min.js +9 -8
  7. data/assets/themes/j1/core/js/template.min.js.map +1 -1
  8. data/assets/themes/j1/modules/{j1Deepl/js/j1deepl.js → deeplAPI/js/deeplAPI.js} +36 -11
  9. data/assets/themes/j1/modules/deeplAPI/js/deeplAPI.min.js +18 -0
  10. data/assets/themes/j1/modules/{j1Scroll → scroller}/css/theme/uno.css +2 -2
  11. data/assets/themes/j1/modules/{j1Scroll → scroller}/css/theme/uno.min.css +0 -0
  12. data/assets/themes/j1/modules/scroller/js/scroller.js +346 -0
  13. data/assets/themes/j1/modules/scroller/js/scroller.min.js +15 -0
  14. data/lib/j1/version.rb +1 -1
  15. data/lib/starter_web/Gemfile +1 -1
  16. data/lib/starter_web/_config.yml +6 -2
  17. data/lib/starter_web/_data/modules/{j1scroll.yml → scroller.yml} +30 -5
  18. data/lib/starter_web/_data/private.default.yml +8 -1
  19. data/lib/starter_web/_data/private.yml +8 -1
  20. data/lib/starter_web/_data/resources.yml +14 -35
  21. data/lib/starter_web/_includes/attributes.asciidoc +1 -1
  22. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  23. data/lib/starter_web/index.html +2 -1
  24. data/lib/starter_web/package.json +1 -1
  25. data/lib/starter_web/pages/public/blog/navigator/index.html +1 -1
  26. data/lib/starter_web/pages/public/manuals/dropdown-help.adoc +743 -743
  27. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  28. data/lib/starter_web/utilsrv/package.json +1 -1
  29. metadata +11 -12
  30. data/assets/themes/j1/modules/j1Deepl/js/j1deepl.min.js +0 -18
  31. data/assets/themes/j1/modules/j1Scroll/js/j1scroll.js +0 -280
  32. data/assets/themes/j1/modules/j1Scroll/js/j1scroll.min.js +0 -15
  33. data/assets/themes/j1/modules/showOnScroll/js/showOnScroll.js +0 -73
  34. data/assets/themes/j1/modules/showOnScroll/js/showOnScroll.min.js +0 -15
@@ -1,304 +1,285 @@
1
- ---
2
- regenerate: true
3
- ---
4
-
5
- {% capture cache %}
6
-
7
- {% comment %}
8
- # -----------------------------------------------------------------------------
9
- # ~/assets/themes/j1/adapter/js/j1Scroll.js
10
- # Liquid template to adapt j1Scroll plugin
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
- {% comment %} Liquid procedures
25
- -------------------------------------------------------------------------------- {% endcomment %}
26
-
27
- {% comment %} Set global settings
28
- -------------------------------------------------------------------------------- {% endcomment %}
29
- {% assign environment = site.environment %}
30
- {% assign asset_path = "/assets/themes/j1" %}
31
-
32
- {% comment %} Process YML config data
33
- ================================================================================ {% endcomment %}
34
-
35
- {% comment %} Set config files
36
- -------------------------------------------------------------------------------- {% endcomment %}
37
- {% assign template_config = site.data.j1_config %}
38
- {% assign blocks = site.data.blocks %}
39
- {% assign modules = site.data.modules %}
40
-
41
- {% comment %} Set config data (settings only)
42
- -------------------------------------------------------------------------------- {% endcomment %}
43
- {% assign scroll_settings = modules.j1scroll.settings %}
44
-
45
- {% comment %} Set config options (settings only)
46
- -------------------------------------------------------------------------------- {% endcomment %}
47
- {% assign scroll_options = scroll_settings %}
48
-
49
- {% assign production = false %}
50
- {% if environment == 'prod' or environment == 'production' %}
51
- {% assign production = true %}
52
- {% endif %}
53
-
54
- /*
55
- # -----------------------------------------------------------------------------
56
- # ~/assets/themes/j1/adapter/js/j1Scroll.js
57
- # J1 Adapter for j1Scroll
58
- #
59
- # Product/Info:
60
- # https://jekyll.one
61
- #
62
- # Copyright (C) 2021 Juergen Adams
63
- #
64
- # J1 Template is licensed under the MIT License.
65
- # For details, see https://jekyll.one
66
- # -----------------------------------------------------------------------------
67
- # Adapter generated: {{site.time}}
68
- # -----------------------------------------------------------------------------
69
- */
70
-
71
- // -----------------------------------------------------------------------------
72
- // ESLint shimming
73
- // -----------------------------------------------------------------------------
74
- /* eslint indent: "off" */
75
- // -----------------------------------------------------------------------------
76
- 'use strict';
77
-
78
- {% comment %} Main
79
- -------------------------------------------------------------------------------- {% endcomment %}
80
- j1.adapter['j1Scroll'] = (function (j1, window) {
81
-
82
- {% comment %} Set global variables
83
- ------------------------------------------------------------------------------ {% endcomment %}
84
- var environment = '{{environment}}';
85
- var language = '{{site.language}}';
86
- var user_agent = platform.ua;
87
- var moduleOptions = {};
88
- var _this;
89
- var lastPageInfo;
90
- var logger;
91
- var logText;
92
-
93
- // ---------------------------------------------------------------------------
94
- // Helper functions
95
- // ---------------------------------------------------------------------------
96
- function sleep(milliseconds) {
97
- var start = new Date().getTime();
98
- for (var i = 0; i < 1e7; i++) {
99
- if ((new Date().getTime() - start) > milliseconds){
100
- break;
101
- }
102
- }
103
- return;
104
- }
105
-
106
- // ---------------------------------------------------------------------------
107
- // Main object
108
- // ---------------------------------------------------------------------------
109
- return {
110
-
111
- // -------------------------------------------------------------------------
112
- // Initializer
113
- // -------------------------------------------------------------------------
114
- init: function (options) {
115
- {% comment %} Set global variables
116
- -------------------------------------------------------------------------- {% endcomment %}
117
- _this = j1.adapter.j1Scroll;
118
- logger = log4javascript.getLogger('j1.adapter.j1Scroll');
119
-
120
- // initialize state flag
121
- _this.setState('started');
122
- logger.info('\n' + 'state: ' + _this.getState());
123
- logger.info('\n' + 'module is being initialized');
124
-
125
- // -----------------------------------------------------------------------
126
- // Default module settings
127
- // -----------------------------------------------------------------------
128
- var settings = $.extend({
129
- module_name: 'j1.adapter.j1Scroll',
130
- generated: '{{site.time}}'
131
- }, options);
132
-
133
- {% comment %} Load module config from yml data (disabled)
134
- --------------------------------------------------------------------------
135
- // Load module DEFAULTS|CONFIG
136
- //
137
- /* eslint-disable */
138
- moduleOptions = $.extend({}, {{scroll_options | replace: '=>', ':' | replace: 'nil', '""'}});
139
- /* eslint-enable */
140
-
141
- if (typeof settings !== 'undefined') {
142
- moduleOptions = j1.mergeData(moduleOptions, settings);
143
- }
144
-
145
- // _this.initialize(moduleOptions);
146
- -------------------------------------------------------------------------- {% endcomment %}
147
-
148
- _this.initialize();
149
-
150
- _this.setState('finished');
151
- logger.info('\n' + 'state: ' + _this.getState());
152
- logger.info('\n' + 'module initialized successfully');
153
- }, // END init
154
-
155
- // -----------------------------------------------------------------------
156
- // Generate scrollers configured/enabled
157
- // -----------------------------------------------------------------------
158
- initialize: function () {
159
- logger = log4javascript.getLogger('j1.adapter.j1Scroll');
160
-
161
- var log_text = '\n' + 'j1Scroll is being initialized';
162
- logger.info(log_text);
163
-
164
- // START generate scrollers
165
- var dependencies_met_page_ready = setInterval (function (options) {
166
- if (j1.getState() === 'finished') {
167
-
168
- {% for item in scroll_options.scrollers %} {% if item.scroller.enabled %}
169
-
170
- {% assign scroller_id = item.scroller.id %}
171
- {% assign container = item.scroller.container %}
172
- {% assign path = item.scroller.path %}
173
- {% assign elementScroll = item.scroller.elementScroll %}
174
- {% assign scrollOffset = item.scroller.scrollOffset %}
175
- {% assign lastPage = item.scroller.lastPage %}
176
- {% assign infoLastPage = item.scroller.infoLastPage %}
177
- {% assign lastPageInfo_en = item.scroller.lastPageInfo_en %}
178
- {% assign lastPageInfo_de = item.scroller.lastPageInfo_de %}
179
-
180
- // scroller_id: {{ scroller_id }}
181
- var log_text = '\n' + 'j1Scroll is being initialized on: ' + '{{scroller_id}}';
182
- logger.info(log_text);
183
-
184
- {% comment %} Unused options
185
- ----------------------------------------------------------------------
186
- // status: '.page-scroll-last',
187
- // firstPage: 2,
188
- // onInit: function(){}, // Callback after plugin has loaded
189
- // onBeforeLoad: function(link){}, // Callback before new content is loaded
190
- // onAfterLoad: function(html){} // Callback after new content has been loaded
191
- ---------------------------------------------------------------------- {% endcomment %}
192
-
193
- var container = '#' + '{{container}}';
194
- var pagePath = '{{path}}';
195
-
196
- if (language === 'en') {
197
- lastPageInfo = '<div class="page-scroll-last"><p class="infinite-scroll-last">';
198
- lastPageInfo += '{{lastPageInfo_en|strip_newlines}}';
199
- lastPageInfo += '</p></div>';
200
- } else if (language === 'de') {
201
- lastPageInfo = '<div class="page-scroll-last"><p class="infinite-scroll-last">';
202
- lastPageInfo += '{{lastPageInfo_de|strip_newlines}}';
203
- lastPageInfo += '</p></div>';
204
- } else {
205
- lastPageInfo = '<div class="page-scroll-last"><p class="infinite-scroll-last">';
206
- lastPageInfo += '{{lastPageInfo_en|strip_newlines}}';
207
- lastPageInfo += '</p></div>';
208
- }
209
-
210
- // Create an j1Scroll instance if container exists
211
- if ($(container).length) {
212
- $(container).j1Scroll({
213
- path: pagePath,
214
- elementScroll: {{elementScroll}},
215
- scrollOffset: {{scrollOffset}},
216
- lastPage: {{lastPage}},
217
- infoLastPage: {{infoLastPage}},
218
- lastPageInfo: lastPageInfo,
219
- });
220
- }
221
-
222
- {% comment %} Unused callbacks (disabled)
223
- ----------------------------------------------------------------------
224
- // $('.list-group').on( 'load.j1Scroll', function( event, body, path, response ) {
225
- // var logger = log4javascript.getLogger('j1.adapter.infiniteScroll');
226
- // var log_text = `\n loaded data from path: ${path}`;
227
- // logger.info(log_text);
228
- //
229
- // var log_text = "\n initialize backdrops on load";
230
- // logger.info(log_text);
231
- //
232
- // // initialize backdrops
233
- // j1.core.createDropCap();
234
- //
235
- // });
236
- //
237
- // $('.list-group').on( 'request.j1Scroll', function( event, path, fetchPromise ) {
238
- // var logger = log4javascript.getLogger('j1.adapter.infiniteScroll');
239
- // var log_text = `\n request for the next page to be loaded from path: ${path}`;
240
- // logger.info(log_text);
241
- // });
242
- ---------------------------------------------------------------------- {% endcomment %}
243
-
244
- // END scroller_id: {{ scroller_id }}
245
- {% endif %} {% endfor %}
246
- clearInterval(dependencies_met_page_ready);
247
- }
248
- });
249
- // END generate scrollers
250
- },
251
-
252
- // -------------------------------------------------------------------------
253
- // messageHandler: MessageHandler for j1Scroll module
254
- // Manage messages send from other J1 modules
255
- // -------------------------------------------------------------------------
256
- messageHandler: function (sender, message) {
257
- var json_message = JSON.stringify(message, undefined, 2);
258
-
259
- logText = '\n' + 'received message from ' + sender + ': ' + json_message;
260
- logger.debug(logText);
261
-
262
- // -----------------------------------------------------------------------
263
- // Process commands|actions
264
- // -----------------------------------------------------------------------
265
- if (message.type === 'command' && message.action === 'module_initialized') {
266
- //
267
- // Place handling of command|action here
268
- //
269
- logger.info('\n' + message.text);
270
- }
271
-
272
- //
273
- // Place handling of other command|action here
274
- //
275
-
276
- return true;
277
- }, // END messageHandler
278
-
279
- // -------------------------------------------------------------------------
280
- // setState()
281
- // Sets the current (processing) state of the module
282
- // -------------------------------------------------------------------------
283
- setState: function (stat) {
284
- _this.state = stat;
285
- }, // END setState
286
-
287
- // -------------------------------------------------------------------------
288
- // getState()
289
- // Returns the current (processing) state of the module
290
- // -------------------------------------------------------------------------
291
- getState: function () {
292
- return _this.state;
293
- } // END getState
294
-
295
- }; // END return
296
- })(j1, window);
297
-
298
- {% endcapture %}
299
- {% if production %}
300
- {{ cache | minifyJS }}
301
- {% else %}
302
- {{ cache | strip_empty_lines }}
303
- {% endif %}
304
- {% assign cache = nil %}
1
+ ---
2
+ regenerate: true
3
+ ---
4
+
5
+ {% capture cache %}
6
+
7
+ {% comment %}
8
+ # -----------------------------------------------------------------------------
9
+ # ~/assets/themes/j1/adapter/js/scroller.js
10
+ # Liquid template to adapt scroller plugin
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
+ {% comment %} Liquid procedures
25
+ -------------------------------------------------------------------------------- {% endcomment %}
26
+
27
+ {% comment %} Set global settings
28
+ -------------------------------------------------------------------------------- {% endcomment %}
29
+ {% assign environment = site.environment %}
30
+ {% assign asset_path = "/assets/themes/j1" %}
31
+
32
+ {% comment %} Process YML config data
33
+ ================================================================================ {% endcomment %}
34
+
35
+ {% comment %} Set config files
36
+ -------------------------------------------------------------------------------- {% endcomment %}
37
+ {% assign template_config = site.data.j1_config %}
38
+ {% assign blocks = site.data.blocks %}
39
+ {% assign modules = site.data.modules %}
40
+
41
+ {% comment %} Set config data (settings only)
42
+ -------------------------------------------------------------------------------- {% endcomment %}
43
+ {% assign scroller_settings = modules.scroller.settings %}
44
+
45
+ {% comment %} Set config options (settings only)
46
+ -------------------------------------------------------------------------------- {% endcomment %}
47
+ {% assign scroller_options = scroller_settings %}
48
+
49
+ {% assign production = false %}
50
+ {% if environment == 'prod' or environment == 'production' %}
51
+ {% assign production = true %}
52
+ {% endif %}
53
+
54
+ /*
55
+ # -----------------------------------------------------------------------------
56
+ # ~/assets/themes/j1/adapter/js/scroller.js
57
+ # J1 Adapter for scroller
58
+ #
59
+ # Product/Info:
60
+ # https://jekyll.one
61
+ #
62
+ # Copyright (C) 2021 Juergen Adams
63
+ #
64
+ # J1 Template is licensed under the MIT License.
65
+ # For details, see https://jekyll.one
66
+ # -----------------------------------------------------------------------------
67
+ # Adapter generated: {{site.time}}
68
+ # -----------------------------------------------------------------------------
69
+ */
70
+
71
+ // -----------------------------------------------------------------------------
72
+ // ESLint shimming
73
+ // -----------------------------------------------------------------------------
74
+ /* eslint indent: "off" */
75
+ // -----------------------------------------------------------------------------
76
+ 'use strict';
77
+
78
+ {% comment %} Main
79
+ -------------------------------------------------------------------------------- {% endcomment %}
80
+ j1.adapter['scroller'] = (function (j1, window) {
81
+
82
+ {% comment %} Set global variables
83
+ -------------------------------------------------------------------------------- {% endcomment %}
84
+ var environment = '{{environment}}';
85
+ var language = '{{site.language}}';
86
+ var user_agent = platform.ua;
87
+ var moduleOptions = {};
88
+ var _this;
89
+ var logger;
90
+ var logText;
91
+ var lastPageInfo;
92
+
93
+ // ---------------------------------------------------------------------------
94
+ // Main object
95
+ // ---------------------------------------------------------------------------
96
+ return {
97
+
98
+ // -------------------------------------------------------------------------
99
+ // init()
100
+ // adapter initializer
101
+ // -------------------------------------------------------------------------
102
+ init: function (options) {
103
+ {% comment %} Set global variables
104
+ -------------------------------------------------------------------------- {% endcomment %}
105
+ _this = j1.adapter.scroller;
106
+ logger = log4javascript.getLogger('j1.adapter.scroller');
107
+
108
+ // initialize state flag
109
+ _this.setState('started');
110
+ logger.info('\n' + 'state: ' + _this.getState());
111
+ logger.info('\n' + 'module is being initialized');
112
+
113
+
114
+ // default module settings
115
+ var settings = $.extend({
116
+ module_name: 'j1.adapter.scroller',
117
+ generated: '{{site.time}}'
118
+ }, options);
119
+
120
+ _this.generate_scrollers();
121
+
122
+ _this.setState('finished');
123
+ logger.info('\n' + 'state: ' + _this.getState());
124
+ logger.info('\n' + 'module initialized successfully');
125
+ }, // END init
126
+
127
+ // -------------------------------------------------------------------------
128
+ // generate_scrollers()
129
+ // generate scrollers configured|enabled
130
+ // -------------------------------------------------------------------------
131
+ generate_scrollers: function () {
132
+
133
+ logger = log4javascript.getLogger('j1.adapter.scroller');
134
+
135
+ logText = '\n' + 'scrollers are being initialized';
136
+ logger.info(logText);
137
+
138
+ // START generate scrollers
139
+ var dependencies_met_page_ready = setInterval (function (options) {
140
+ if (j1.getState() === 'finished') {
141
+
142
+ {% comment %} generate scrollers of type 'infiniteScroll'
143
+ ---------------------------------------------------------------------- {% endcomment %}
144
+
145
+ {% for item in scroller_options.scrollers %} {% if item.scroller.enabled %}
146
+
147
+ {% if item.scroller.type == 'infiniteScroll' %}
148
+
149
+ {% assign scroller_id = item.scroller.id %}
150
+ {% assign scroller_type = item.scroller.type %}
151
+ {% assign container = item.scroller.container %}
152
+ {% assign pagePath = item.scroller.pagePath %}
153
+ {% assign elementScroll = item.scroller.elementScroll %}
154
+ {% assign scrollOffset = item.scroller.scrollOffset %}
155
+ {% assign lastPage = item.scroller.lastPage %}
156
+ {% assign infoLastPage = item.scroller.infoLastPage %}
157
+ {% assign lastPageInfo_en = item.scroller.lastPageInfo_en %}
158
+ {% assign lastPageInfo_de = item.scroller.lastPageInfo_de %}
159
+
160
+ // scroller_id: {{ scroller_id }}
161
+ logText = '\n' + 'scroller of type {{item.scroller.type}} is being initialized on: ' + '{{scroller_id}}';
162
+ logger.info(logText);
163
+
164
+ var container = '#' + '{{container}}';
165
+ var pagePath = '{{pagePath}}';
166
+
167
+ if (language === 'en') {
168
+ lastPageInfo = '<div class="page-scroll-last"><p class="infinite-scroll-last">';
169
+ lastPageInfo += '{{lastPageInfo_en|strip_newlines}}';
170
+ lastPageInfo += '</p></div>';
171
+ } else if (language === 'de') {
172
+ lastPageInfo = '<div class="page-scroll-last"><p class="infinite-scroll-last">';
173
+ lastPageInfo += '{{lastPageInfo_de|strip_newlines}}';
174
+ lastPageInfo += '</p></div>';
175
+ } else {
176
+ lastPageInfo = '<div class="page-scroll-last"><p class="infinite-scroll-last">';
177
+ lastPageInfo += '{{lastPageInfo_en|strip_newlines}}';
178
+ lastPageInfo += '</p></div>';
179
+ }
180
+
181
+ // Create an scroller instance of infiniteScroll if container exists
182
+ if ($(container).length) {
183
+ $(container).scroller({
184
+ id: '{{scroller_id}}',
185
+ type: '{{scroller_type}}',
186
+ pagePath: '{{pagePath}}',
187
+ elementScroll: {{elementScroll}},
188
+ scrollOffset: {{scrollOffset}},
189
+ lastPage: {{lastPage}},
190
+ infoLastPage: {{infoLastPage}},
191
+ lastPageInfo: lastPageInfo,
192
+ });
193
+ }
194
+
195
+ {% endif %}
196
+
197
+ {% if item.scroller.type == 'showOnScroll' %}
198
+
199
+ {% assign scroller_id = item.scroller.id %}
200
+ {% assign scroller_type = item.scroller.type %}
201
+ {% assign container = item.scroller.container %}
202
+ {% assign showDelay = item.scroller.showDelay %}
203
+ {% assign scrollOffset = item.scroller.scrollOffset %}
204
+
205
+ var container = '#' + '{{container}}';
206
+
207
+ // scroller_id: {{ scroller_id }}
208
+ logText = '\n' + 'scroller of type {{item.scroller.type}} is being initialized on: ' + '{{scroller_id}}';
209
+ logger.info(logText);
210
+
211
+ // Create an scroller instance of showOnScroll if container exists
212
+ if ($(container).length) {
213
+ $(container).scroller({
214
+ id: '{{scroller_id}}',
215
+ type: '{{scroller_type}}',
216
+ container: '{{container}}',
217
+ showDelay: {{showDelay}},
218
+ scrollOffset: {{scrollOffset}},
219
+ });
220
+ }
221
+
222
+ {% endif %}
223
+
224
+ // END scroller_id: {{ scroller_id }}
225
+ {% endif %} {% endfor %}
226
+
227
+ clearInterval(dependencies_met_page_ready);
228
+ }
229
+ });
230
+ // END generate scrollers
231
+ },
232
+
233
+ // -------------------------------------------------------------------------
234
+ // messageHandler()
235
+ // manage messages send from other J1 modules
236
+ // -------------------------------------------------------------------------
237
+ messageHandler: function (sender, message) {
238
+ var json_message = JSON.stringify(message, undefined, 2);
239
+
240
+ logText = '\n' + 'received message from ' + sender + ': ' + json_message;
241
+ logger.debug(logText);
242
+
243
+ // -----------------------------------------------------------------------
244
+ // Process commands|actions
245
+ // -----------------------------------------------------------------------
246
+ if (message.type === 'command' && message.action === 'module_initialized') {
247
+ //
248
+ // Place handling of command|action here
249
+ //
250
+ logger.info('\n' + message.text);
251
+ }
252
+
253
+ //
254
+ // Place handling of other command|action here
255
+ //
256
+
257
+ return true;
258
+ }, // END messageHandler
259
+
260
+ // -------------------------------------------------------------------------
261
+ // setState()
262
+ // Sets the current (processing) state of the module
263
+ // -------------------------------------------------------------------------
264
+ setState: function (stat) {
265
+ _this.state = stat;
266
+ }, // END setState
267
+
268
+ // -------------------------------------------------------------------------
269
+ // getState()
270
+ // Returns the current (processing) state of the module
271
+ // -------------------------------------------------------------------------
272
+ getState: function () {
273
+ return _this.state;
274
+ } // END getState
275
+
276
+ }; // END return
277
+ })(j1, window);
278
+
279
+ {% endcapture %}
280
+ {% if production %}
281
+ {{ cache | minifyJS }}
282
+ {% else %}
283
+ {{ cache | strip_empty_lines }}
284
+ {% endif %}
285
+ {% assign cache = nil %}