j1-template 2022.0.12 → 2022.0.13

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 (59) hide show
  1. checksums.yaml +4 -4
  2. data/assets/themes/j1/adapter/js/advertising.js +61 -32
  3. data/assets/themes/j1/adapter/js/algolia.js +9 -9
  4. data/assets/themes/j1/adapter/js/analytics.js +46 -24
  5. data/assets/themes/j1/adapter/js/asciidoctor.js +9 -9
  6. data/assets/themes/j1/adapter/js/attic.js +9 -1
  7. data/assets/themes/j1/adapter/js/bmd.js +9 -10
  8. data/assets/themes/j1/adapter/js/carousel.js +9 -9
  9. data/assets/themes/j1/adapter/js/clipboard.js +8 -8
  10. data/assets/themes/j1/adapter/js/comments.js +31 -10
  11. data/assets/themes/j1/adapter/js/cookieConsent.js +70 -78
  12. data/assets/themes/j1/adapter/js/fab.js +10 -10
  13. data/assets/themes/j1/adapter/js/framer.js +59 -58
  14. data/assets/themes/j1/adapter/js/j1.js +139 -92
  15. data/assets/themes/j1/adapter/js/justifiedGallery.js +11 -10
  16. data/assets/themes/j1/adapter/js/justifiedGalleryCustomizer.js +9 -9
  17. data/assets/themes/j1/adapter/js/lightbox.js +11 -4
  18. data/assets/themes/j1/adapter/js/logger.js +10 -3
  19. data/assets/themes/j1/adapter/js/mmenu.js +9 -9
  20. data/assets/themes/j1/adapter/js/navigator.js +9 -9
  21. data/assets/themes/j1/adapter/js/quicksearch.js +9 -9
  22. data/assets/themes/j1/adapter/js/rouge.js +9 -9
  23. data/assets/themes/j1/adapter/js/rtable.js +9 -9
  24. data/assets/themes/j1/adapter/js/rtextResizer.js +9 -9
  25. data/assets/themes/j1/adapter/js/scroller.js +12 -7
  26. data/assets/themes/j1/adapter/js/themer.js +11 -2
  27. data/assets/themes/j1/adapter/js/toccer.js +9 -9
  28. data/assets/themes/j1/adapter/js/translator.js +13 -16
  29. data/assets/themes/j1/modules/advertising/js/google/adInitializer.js +14 -4
  30. data/lib/j1/version.rb +1 -1
  31. data/lib/starter_web/Gemfile +1 -1
  32. data/lib/starter_web/_config.yml +1 -1
  33. data/lib/starter_web/_data/layouts/home.ads.yml +262 -0
  34. data/lib/starter_web/_data/layouts/home.no-ads.yml +262 -0
  35. data/lib/starter_web/_data/layouts/home.yml +1 -1
  36. data/lib/starter_web/_data/modules/advertising.yml +1 -2
  37. data/lib/starter_web/_data/modules/analytics.yml +1 -1
  38. data/lib/starter_web/_data/modules/cookies.yml +0 -2
  39. data/lib/starter_web/_data/modules/defaults/advertising.yml +0 -1
  40. data/lib/starter_web/_data/modules/defaults/comments.yml +4 -4
  41. data/lib/starter_web/_data/modules/defaults/cookies.yml +104 -36
  42. data/lib/starter_web/_includes/attributes.asciidoc +1 -1
  43. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  44. data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +1 -1
  45. data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.adoc +1 -1
  46. data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.ads.asciidoc +1 -1
  47. data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.comments.asciidoc +1 -1
  48. data/lib/starter_web/collections/posts/public/featured/_posts/2021-02-01-site-generators.adoc +1 -1
  49. data/lib/starter_web/collections/posts/public/featured/_posts/2021-03-03-about-j1.adoc +1 -1
  50. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-wiki-series.adoc +1 -1
  51. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-wiki-series.adoc +1 -1
  52. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-wiki-series.adoc +1 -1
  53. data/lib/starter_web/index.html +0 -3
  54. data/lib/starter_web/package.json +1 -1
  55. data/lib/starter_web/pages/public/manuals/dropdown-help.adoc +23 -2
  56. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +100 -166
  57. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  58. data/lib/starter_web/utilsrv/package.json +1 -1
  59. metadata +4 -2
@@ -101,7 +101,15 @@ j1.adapter.rtable = (function (j1, window) {
101
101
  init: function (options) {
102
102
 
103
103
  // -----------------------------------------------------------------------
104
- // globals
104
+ // Default module settings
105
+ // -----------------------------------------------------------------------
106
+ var settings = $.extend({
107
+ module_name: 'j1.adapter.rtable',
108
+ generated: '{{site.time}}'
109
+ }, options);
110
+
111
+ // -----------------------------------------------------------------------
112
+ // Global variable settings
105
113
  // -----------------------------------------------------------------------
106
114
  _this = j1.adapter.rtable;
107
115
  logger = log4javascript.getLogger('j1.adapter.rtable');
@@ -111,14 +119,6 @@ j1.adapter.rtable = (function (j1, window) {
111
119
  logger.info('\n' + 'state: ' + _this.getState());
112
120
  logger.info('\n' + 'module is being initialized');
113
121
 
114
- // -----------------------------------------------------------------------
115
- // Default module settings
116
- // -----------------------------------------------------------------------
117
- var settings = $.extend({
118
- module_name: 'j1.adapter.rtable',
119
- generated: '{{site.time}}'
120
- }, options);
121
-
122
122
  // create settings object from frontmatterOptions
123
123
  frontmatterOptions = options != null ? $.extend({}, options) : {};
124
124
  moduleOptions = $.extend({}, {{rtable_options | replace: 'nil', 'null' | replace: '=>', ':' }});
@@ -111,7 +111,15 @@ j1.adapter.rtextResizer = (function (j1, window) {
111
111
  init: function (options) {
112
112
 
113
113
  // -----------------------------------------------------------------------
114
- // globals
114
+ // Default module settings
115
+ // -----------------------------------------------------------------------
116
+ var settings = $.extend({
117
+ module_name: 'j1.adapter.rtextResizer',
118
+ generated: '{{site.time}}'
119
+ }, options);
120
+
121
+ // -----------------------------------------------------------------------
122
+ // Global variable settings
115
123
  // -----------------------------------------------------------------------
116
124
  _this = j1.adapter.rtextResizer;
117
125
  logger = log4javascript.getLogger('j1.adapter.rtextResizer');
@@ -121,14 +129,6 @@ j1.adapter.rtextResizer = (function (j1, window) {
121
129
  logger.info('\n' + 'state: ' + _this.getState());
122
130
  logger.info('\n' + 'module is being initialized');
123
131
 
124
- // -----------------------------------------------------------------------
125
- // Default module settings
126
- // -----------------------------------------------------------------------
127
- var settings = $.extend({
128
- module_name: 'j1.adapter.rtextResizer',
129
- generated: '{{site.time}}'
130
- }, options);
131
-
132
132
  {% comment %} Load gallery config from yml data
133
133
  -------------------------------------------------------------------------- {% endcomment %}
134
134
  /* eslint-disable */
@@ -97,8 +97,18 @@ var lastPageInfo;
97
97
  // adapter initializer
98
98
  // -------------------------------------------------------------------------
99
99
  init: function (options) {
100
- {% comment %} Set global variables
101
- -------------------------------------------------------------------------- {% endcomment %}
100
+
101
+ // -----------------------------------------------------------------------
102
+ // Default module settings
103
+ // -----------------------------------------------------------------------
104
+ var settings = $.extend({
105
+ module_name: 'j1.adapter.scroller',
106
+ generated: '{{site.time}}'
107
+ }, options);
108
+
109
+ // -----------------------------------------------------------------------
110
+ // Global variable settings
111
+ // -----------------------------------------------------------------------
102
112
  _this = j1.adapter.scroller;
103
113
  logger = log4javascript.getLogger('j1.adapter.scroller');
104
114
 
@@ -108,11 +118,6 @@ var lastPageInfo;
108
118
  logger.info('\n' + 'module is being initialized');
109
119
 
110
120
 
111
- // default module settings
112
- var settings = $.extend({
113
- module_name: 'j1.adapter.scroller',
114
- generated: '{{site.time}}'
115
- }, options);
116
121
 
117
122
  _this.generate_scrollers();
118
123
 
@@ -159,9 +159,18 @@ j1.adapter.themer = (function (j1, window) {
159
159
  // -------------------------------------------------------------------------
160
160
  // initializer
161
161
  // -------------------------------------------------------------------------
162
- init: function () {
162
+ init: function (options) {
163
+
164
+ // -----------------------------------------------------------------------
165
+ // Default module settings
166
+ // -----------------------------------------------------------------------
167
+ var settings = $.extend({
168
+ module_name: 'j1.adapter.themer',
169
+ generated: '{{site.time}}'
170
+ }, options);
171
+
163
172
  // -----------------------------------------------------------------------
164
- // globals
173
+ // Global variable settings
165
174
  // -----------------------------------------------------------------------
166
175
  _this = j1.adapter.themer;
167
176
  url = new liteURL(window.location.href);
@@ -117,7 +117,15 @@ j1.adapter.toccer = (function () {
117
117
  init: function (options) {
118
118
 
119
119
  // -----------------------------------------------------------------------
120
- // globals
120
+ // Default module settings
121
+ // -----------------------------------------------------------------------
122
+ var settings = $.extend({
123
+ module_name: 'j1.adapter.toccer',
124
+ generated: '{{site.time}}'
125
+ }, options);
126
+
127
+ // -----------------------------------------------------------------------
128
+ // Global variable settings
121
129
  // -----------------------------------------------------------------------
122
130
  _this = j1.adapter.toccer;
123
131
  logger = log4javascript.getLogger('j1.adapter.toccer');
@@ -130,14 +138,6 @@ j1.adapter.toccer = (function () {
130
138
  // create settings object from frontmatterOptions
131
139
  var frontmatterOptions = options != null ? $.extend({}, options) : {};
132
140
 
133
- // -----------------------------------------------------------------------
134
- // defaults
135
- // -----------------------------------------------------------------------
136
- var settings = $.extend({
137
- module_name: 'j1.adapter.toccer',
138
- generated: '{{site.time}}'
139
- }, options);
140
-
141
141
  // -----------------------------------------------------------------------
142
142
  // options loader
143
143
  // -----------------------------------------------------------------------
@@ -37,17 +37,16 @@ regenerate: true
37
37
  -------------------------------------------------------------------------------- {% endcomment %}
38
38
  {% assign cookie_defaults = modules.defaults.cookies.defaults %}
39
39
  {% assign cookie_settings = modules.cookies.settings %}
40
-
41
- {% assign tracking_enabled = modules.analytics.settings.enabled %}
42
-
43
40
  {% assign translator_defaults = modules.defaults.translator.defaults %}
44
41
  {% assign translator_settings = modules.translator.settings %}
45
42
 
46
-
47
43
  {% comment %} Set config options
48
44
  -------------------------------------------------------------------------------- {% endcomment %}
49
- {% assign translator_options = translator_defaults | merge: translator_settings %}
50
45
  {% assign cookie_options = cookie_defaults | merge: cookie_settings %}
46
+ {% assign translator_options = translator_defaults | merge: translator_settings %}
47
+
48
+ {% comment %} Set variables
49
+ -------------------------------------------------------------------------------- {% endcomment %}
51
50
 
52
51
  {% assign production = false %}
53
52
  {% if environment == 'prod' or environment == 'production' %}
@@ -84,9 +83,7 @@ regenerate: true
84
83
  'use strict';
85
84
 
86
85
  j1.adapter.translator = (function (j1, window) {
87
-
88
86
  var environment = '{{environment}}';
89
- var tracking_enabled = ('{{tracking_enabled}}' === 'true') ? true: false; // Analytics/GA enabled?
90
87
  var moduleOptions = {};
91
88
  var user_translate = {};
92
89
  var _this;
@@ -122,7 +119,15 @@ j1.adapter.translator = (function (j1, window) {
122
119
  init: function (options) {
123
120
 
124
121
  // -----------------------------------------------------------------------
125
- // globals
122
+ // Default module settings
123
+ // -----------------------------------------------------------------------
124
+ var settings = $.extend({
125
+ module_name: 'j1.adapter.translator',
126
+ generated: '{{site.time}}'
127
+ }, options);
128
+
129
+ // -----------------------------------------------------------------------
130
+ // Global variable settings
126
131
  // -----------------------------------------------------------------------
127
132
  _this = j1.adapter.translator;
128
133
  logger = log4javascript.getLogger('j1.adapter.translator');
@@ -154,14 +159,6 @@ j1.adapter.translator = (function (j1, window) {
154
159
  // initialize state flag
155
160
  _this.state = 'pending';
156
161
 
157
- // -----------------------------------------------------------------------
158
- // Default module settings
159
- // -----------------------------------------------------------------------
160
- var settings = $.extend({
161
- module_name: 'j1.adapter.translator',
162
- generated: '{{site.time}}'
163
- }, options);
164
-
165
162
  {% comment %} Load module config from yml data
166
163
  -------------------------------------------------------------------------- {% endcomment %}
167
164
  // Load module DEFAULTS|CONFIG
@@ -80,13 +80,23 @@ $(document).ready(function() {
80
80
  // [INFO ] [j1.adapter.advertising ] [ detected advertising provider: {{advertising_provider}}} ]
81
81
  // [INFO ] [j1.adapter.advertising ] [ advertising detected as: {{advertising}} ]
82
82
  {% if advertising %}
83
- var logger = log4javascript.getLogger('j1.core.advertising.google');
84
- var ads_found = document.getElementsByClassName('adsbygoogle').length;
85
- var cookie_names = j1.getCookieNames();
86
- var user_consent = j1.readCookie(cookie_names.user_consent);
83
+ var logger = log4javascript.getLogger('j1.core.advertising.google');
84
+ var ads_found = document.getElementsByClassName('adsbygoogle').length;
85
+ var cookie_names = j1.getCookieNames();
86
+ var user_consent = j1.readCookie(cookie_names.user_consent);
87
+ var providerID = '{{advertising_options.google.publisherID}}';
88
+ var validProviderID = (providerID.includes('your')) ? false : true;
89
+ var advertisingProvider = 'Google Adsense';
87
90
 
88
91
  var dependencies_met_page_ready = setInterval (function (options) {
89
92
  if (j1.getState() === 'finished') {
93
+
94
+ if (!validProviderID) {
95
+ logger.warn('\n' + 'disabled provider: ' + advertisingProvider);
96
+ clearInterval(dependencies_met_page_ready);
97
+ return false;
98
+ }
99
+
90
100
  if (user_consent.personalization) {
91
101
  if (ads_found) {
92
102
  logger.info('\n' + 'initialize all ads in page: #' + ads_found);
data/lib/j1/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module J1
2
- VERSION = '2022.0.12'
2
+ VERSION = '2022.0.13'
3
3
  end
@@ -53,7 +53,7 @@ gem 'jekyll', '~> 4.2'
53
53
 
54
54
  # Theme Rubies, default: J1 Template (NOT used for the development system)
55
55
  #
56
- gem 'j1-template', '~> 2022.0.12'
56
+ gem 'j1-template', '~> 2022.0.13'
57
57
 
58
58
  # ------------------------------------------------------------------------------
59
59
  # PRODUCTION: Gem needed for the Jekyll and J1 prod environment
@@ -53,7 +53,7 @@ environment: development
53
53
  # ------------------------------------------------------------------------------
54
54
  # Sets the build version of J1 Template Gem
55
55
  #
56
- version: 2022.0.12
56
+ version: 2022.0.13
57
57
 
58
58
  # version
59
59
  # ------------------------------------------------------------------------------
@@ -0,0 +1,262 @@
1
+ # ------------------------------------------------------------------------------
2
+ # ~/_data/layouts/home.yml
3
+ # Configuration data to specify the (HTML) Layout of all content
4
+ # pages of type HOME placed by the content loader
5
+ #
6
+ # Product/Info:
7
+ # https://jekyll.one
8
+ #
9
+ # Copyright (C) 2021 Juergen Adams
10
+ #
11
+ # J1 Template is licensed under the MIT License.
12
+ # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
13
+ #
14
+ # ------------------------------------------------------------------------------
15
+ # NOTE:
16
+ # By J1 template, "Liquid Procedures" are being used intensively. To load
17
+ # HTML data for a layout, the loader procedure places the data based this
18
+ # YAML data file into the REGION specified with a LANE.
19
+ # ------------------------------------------------------------------------------
20
+
21
+ # ------------------------------------------------------------------------------
22
+ # Layout configuration settings
23
+ #
24
+ # lanes|lane
25
+ # ----------------------------------------------------------------------------
26
+ # Set LANE specific configuration parameters for a page LAYOUT. The
27
+ # LANES array contains multiple (lane) hashes that describes the type
28
+ # of the component that is loaded into a lane and their specific
29
+ # (placement) parameters.
30
+ #
31
+ # region
32
+ # ----------------------------------------------------------------------------
33
+ # J1 templates defines, based on the general structure of a HTML page
34
+ # (head|body), more specific REGIONS based on HTML5 semantic elements
35
+ # to place HTML data:
36
+ #
37
+ # head <head> section. Contains (site-wide) meta data and
38
+ # all CSS and JS files are to be loaded for a page.
39
+ # body-navigation <body> NAV section. Contains the main navigation bar.
40
+ # Placed a the BEGINNING of the <body> section.
41
+ # body-header <body> HEADER section. Contains the page banner (header).
42
+ # Placed AFTER the page navigation but BEFORE the main
43
+ # content (body-main) of a page.
44
+ # body-main <body> MAIN section. J1 template puts a <main> container
45
+ # element in the <body> section to place the (main) content.
46
+ # All content related elements are loaded into the region
47
+ # 'body-main'. Content may components like boxes, panels,
48
+ # quotes etc. and the document content like sections and
49
+ # articles.
50
+ # body-footer <body> FOOTER section. J1 template puts a <footer> element
51
+ # at the end of the <BODY> section. The body-footer region
52
+ # contains all elements that should be loaded at the end
53
+ # of a page; typically the page footer.
54
+ #
55
+ # values: head|body-navigation|body-header|body-main|body-footer
56
+ # default: no defaults
57
+ #
58
+ # type
59
+ # ----------------------------------------------------------------------------
60
+ # The (HTML) content of a lane can be included (from an include file) or
61
+ # loaded asychronously from a HTML data file by AJAX (get|load) calls.
62
+ # J1 template is using jQuery as an interface to AJAX calls.
63
+ #
64
+ # values: include|load
65
+ # default: no defaults
66
+ #
67
+ # source
68
+ # ----------------------------------------------------------------------------
69
+ # The parameter source defines a (site root relativ) path to the data
70
+ # source to be included or loaded.
71
+ #
72
+ # values: string (path)
73
+ # default: no defaults
74
+ #
75
+ # file
76
+ # ----------------------------------------------------------------------------
77
+ # Defines the data file to be included or loaded.
78
+ #
79
+ # values: string
80
+ # default: no defaults
81
+ #
82
+ # id
83
+ # ----------------------------------------------------------------------------
84
+ # Used for AJAX load calls (see parameter type). The id is used twice. First,
85
+ # id references a HTML fragment as part of the (HTML) data file (see parameter
86
+ # data below). Second, the id is used to identify the placeholder (div)
87
+ # element where the AJAX call puts the data on.
88
+ #
89
+ # values: string
90
+ # default: no defaults
91
+ #
92
+ # class
93
+ # ----------------------------------------------------------------------------
94
+ # Additional CSS classes that are put on the placeholder (div) element.
95
+ # Can be used for type 'load', only.
96
+ #
97
+ # values: string (CSS class name)
98
+ # default: no defaults
99
+ #
100
+ # ------------------------------------------------------------------------------
101
+
102
+ # ------------------------------------------------------------------------------
103
+ # Layout configuration settings
104
+ #
105
+ lanes:
106
+
107
+ # ----------------------------------------------------------------------------
108
+ # MASTER header
109
+ #
110
+ - lane:
111
+ enabled: true
112
+ region: body-header
113
+ type: sync
114
+ base: _includes/themes/j1
115
+ path: modules/attics
116
+ file: generator.html
117
+
118
+ # ----------------------------------------------------------------------------
119
+ # MASTER slider
120
+ #
121
+ - lane:
122
+ enabled: false
123
+ id: master_slider
124
+ region: body-header
125
+ type: async
126
+ properties: mb-0
127
+
128
+ # ----------------------------------------------------------------------------
129
+ # Top Advertisment
130
+ #
131
+ - lane:
132
+ enabled: false
133
+ region: body-header
134
+ id: google_ad_top_home
135
+ type: sync
136
+ base: _includes/themes/j1
137
+ path: modules/ads
138
+ file: google_ad_top_home.html
139
+
140
+ # ----------------------------------------------------------------------------
141
+ # PAGE CONTENT (region body-main)
142
+ #
143
+ # NOTE:
144
+ # The CONTENT of a post or page may already rendered (page contains HTML
145
+ # data) or unrendered (page contains MARKUP data). In both cases, rendered
146
+ # or unrendered content, a valid FRONTMATTER is needed to pass the data.
147
+ #
148
+ # The CONTENT generation for posts and pages depends on the data type,
149
+ # the MARKUP language (Markdown, Asciidoc) the page is using. The data
150
+ # type is specified by the file EXTENSION (e.g. ".md" for Markdown or
151
+ # ".adoc" for Asciidoc formatted content).
152
+ #
153
+ # To enable Jekyll running the render phase, the respective processor
154
+ # (e.g.kramdown for MARKDOWN or asciidoctor for ASCIIDOC) needs to be
155
+ # loaded and configured (Gemfile and the side-wide configuration file
156
+ # _config.yml).
157
+ #
158
+ # NOTE:
159
+ # The CONTENT of a PAGE is passed trough a (Liquid) wrapper procedure
160
+ # (page_content.html) to add or inject specific ADDITIONAL data like
161
+ # a TOC etc. that influences the resulting page.
162
+ #
163
+ # To modify the wrapper, DO NOT CHANGE the template files. See with
164
+ # ***URL*** how to create your own wrapper (and OVERLOAD the J1 template
165
+ # system with the data you provided).
166
+ #
167
+ # ----------------------------------------------------------------------------
168
+
169
+ # ----------------------------------------------------------------------------
170
+ # TEASER banner
171
+ #
172
+ - lane:
173
+ enabled: true
174
+ id: home_teaser_banner
175
+ region: body-main
176
+ type: async
177
+ properties: g-2 elevated-z0
178
+
179
+ # ----------------------------------------------------------------------------
180
+ # SERVICE panel
181
+ #
182
+ - lane:
183
+ enabled: false
184
+ id: home_service_panel
185
+ region: body-main
186
+ type: async
187
+ properties: g-2 elevated-z0
188
+
189
+ # ----------------------------------------------------------------------------
190
+ # DIVIDER banner
191
+ #
192
+ - lane:
193
+ enabled: false
194
+ id: divider-1
195
+ region: body-main
196
+ type: async
197
+ properties: mt-4 mr-5 mb-4 ml-5
198
+
199
+ # ----------------------------------------------------------------------------
200
+ # Page Advertisment
201
+ #
202
+ - lane:
203
+ enabled: false
204
+ region: body-main
205
+ id: google_ad_content_home
206
+ type: sync
207
+ base: _includes/themes/j1
208
+ path: modules/ads
209
+ file: google_ad_content_home.html
210
+
211
+ # ----------------------------------------------------------------------------
212
+ # INTRO panel
213
+ #
214
+ - lane:
215
+ enabled: true
216
+ id: home_intro_panel
217
+ region: body-main
218
+ type: async
219
+ properties: g-2 elevated-z2
220
+
221
+ # ----------------------------------------------------------------------------
222
+ # PARALLAX banner
223
+ #
224
+ - lane:
225
+ enabled: true
226
+ id: home_parallax_banner
227
+ region: body-main
228
+ type: async
229
+ properties: elevated-z0
230
+
231
+ # ----------------------------------------------------------------------------
232
+ # IMAGE banner
233
+ #
234
+ - lane:
235
+ enabled: false
236
+ id: home_image_banner
237
+ region: body-main
238
+ type: async
239
+ properties: mb-3
240
+
241
+ # ----------------------------------------------------------------------------
242
+ # NEWS panel
243
+ #
244
+ - lane:
245
+ enabled: true
246
+ id: home_news_panel
247
+ region: body-main
248
+ type: async
249
+ properties: g-2 elevated-z2
250
+
251
+ # ----------------------------------------------------------------------------
252
+ # FAB
253
+ #
254
+ - lane:
255
+ enabled: true
256
+ id: fab-container
257
+ region: body-main
258
+ type: async
259
+ properties: elevated-z0
260
+
261
+ # ------------------------------------------------------------------------------
262
+ # END config