j1-template 2023.2.1 → 2023.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cc1b5b82f8d6be2d2dc76adbddacf4c09fffe79031c991a960b38b072e95e46d
4
- data.tar.gz: a49049296063c8570192e46716ac9cb8187e064a51c31d88a9006de5ab055066
3
+ metadata.gz: 3481c1e515e538d4ff10407b707247783de76d2b265aecfeb265b199e0229e73
4
+ data.tar.gz: 67551c9cc6710c41a687a1dbb1aa2f0d938100dbb8e0f90a532a1a2626e629a4
5
5
  SHA512:
6
- metadata.gz: c07f4f4fbe3ecf611e2112aa7282c041a2673cb1249415587c7bcc33c7da0ec950de3b687d16bcce1ff00da5e98969a4b8b011c0ddccb639562873a208148784
7
- data.tar.gz: 9e5606789bc62edb2a1ca3a07d2448eec60c72cf97bf0e6d245d928e9409a7d5846ac1eece44b7cdb6e0d5d2db71b12a9e0e26b1dadcfd3368f65620ee65ee12
6
+ metadata.gz: a728afcb26f2ea060094660475f88925f3c48bc65d19f99fe72e4c6e62c7bc33edbde1f536fa4a0fbd6bc08cd2abde5e9086ee9ba5efb5f7e58c78d6236a8e9a
7
+ data.tar.gz: ddc364bb096a2875e57dff172d1bc47354b23952655cb5b6de5f88263fc9761ebab940345678241c48ef6ccf13253074ab968d41fee574f8c5f34d50e2e69177
@@ -201,7 +201,7 @@
201
201
  {% comment %} Load additional fonts from remote
202
202
  -------------------------------------------------------------------------------- {% endcomment %}
203
203
  <!-- Google fonts -->
204
- <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat:400,700" />
204
+ <!-- link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat:400,700" / -->
205
205
 
206
206
 
207
207
  {% comment %} J1 SEO processing
@@ -259,8 +259,8 @@ exclude_from_search: true
259
259
  <img
260
260
  class="sticker-image"
261
261
  src="/assets/images/sticker/600x600/sticker-new-version.png"
262
- alt="Get new version 2023.2.1"
263
- title="Get new version 2023.2.1"
262
+ alt="Get new version 2023.2.3"
263
+ title="Get new version 2023.2.3"
264
264
  style="width: 140px; height: 120px;"
265
265
  >
266
266
  </a>
@@ -101,7 +101,6 @@ exclude_from_search: true
101
101
  <!-- Collect posts only if group matches -->
102
102
  {% for post in site.posts %} {% if post.group contains grid.group %}
103
103
 
104
-
105
104
  {% if grid.translate_links %}
106
105
  {% assign translate = "" %}
107
106
  {% else %}
@@ -114,11 +113,25 @@ exclude_from_search: true
114
113
  {% assign target = "" %}
115
114
  {% endif %}
116
115
 
116
+ {% comment %} Collect CSS image filters
117
+ ------------------------------------------------------------------------ {% endcomment %}
118
+ {% assign css_filters = masonry_options.filters | merge: grid.filters %}
119
+ {% assign image_filters = 'filter:' %}
120
+
121
+ {% if css_filters.enabled %}
122
+ {% for filter in css_filters %}
123
+ {% if filter[0] contains 'enabled' %}
124
+ {% continue %}
125
+ {% endif %}
126
+ {% capture image_filters %}{{image_filters}} {{filter[0]}}({{filter[1]}}){% endcapture %}
127
+ {% endfor %}
128
+ {% endif %}
129
+
117
130
  <!-- resposive items: 3-2-1 -->
118
131
  <div class="col-xl-{{masonry_options.responsive.xl}} col-lg-{{masonry_options.responsive.lg}} col-md-{{masonry_options.responsive.md}} col-sm-{{masonry_options.responsive.sm}} col-{{masonry_options.responsive.xs}} px-{{gutter}} py-{{gutter}}">
119
132
 
120
133
  <article class="card bg-dark text-center text-white border-0 rounded-0 bottom">
121
- <img class="card-img {{grid.image_styles}}" src="{{post.image.path | relative_url}}" alt="{{post.title}}" style="filter: contrast(1) brightness(0.5); height: {{grid.image_height}}; width: {{grid.image_width}}">
134
+ <img class="card-img {{grid.image_styles}}" src="{{post.image.path | relative_url}}" alt="{{post.title}}" style="{{image_filters}}; height: {{grid.image_height}};">
122
135
  <div class="card-content mt-5">
123
136
 
124
137
  {% if post %}
@@ -204,6 +217,20 @@ exclude_from_search: true
204
217
  {% assign gutter = 0 %}
205
218
  {% endif %}
206
219
 
220
+ {% comment %} Collect CSS image filters
221
+ ------------------------------------------------------------------------ {% endcomment %}
222
+ {% assign css_filters = masonry_options.filters | merge: grid.filters %}
223
+ {% assign image_filters = 'filter:' %}
224
+
225
+ {% if css_filters.enabled %}
226
+ {% for filter in css_filters %}
227
+ {% if filter[0] contains 'enabled' %}
228
+ {% continue %}
229
+ {% endif %}
230
+ {% capture image_filters %}{{image_filters}} {{filter[0]}}({{filter[1]}}){% endcapture %}
231
+ {% endfor %}
232
+ {% endif %}
233
+
207
234
  {% for article in articles %}
208
235
  <div class="col-xl-{{masonry_options.responsive.xl}} col-lg-{{masonry_options.responsive.lg}} col-md-{{masonry_options.responsive.md}} col-sm-{{masonry_options.responsive.sm}} col-{{masonry_options.responsive.xs}} px-{{gutter}} py-{{gutter}}">
209
236
  <!-- Article item -->
@@ -215,11 +242,10 @@ exclude_from_search: true
215
242
  <i class="mdi mdi-plus mdi-10x"></i>
216
243
  </div>
217
244
  </div>
218
- <img class="{{grid.image_styles}}" src="{{article.image.path}}" alt="{{article.title}}" style="height: {{grid.image_height}}; width: {{grid.image_width}}">
245
+ <img class="{{grid.image_styles}}" src="{{article.image.path}}" alt="{{article.title}}" style="{{image_filters}}; height: {{grid.image_height}}; width: {{grid.image_width}}">
219
246
  </a>
220
247
  {% else %}
221
- <!-- img class="img-fluid img-object--w400" src="{{article.image.path}}" alt="{{article.title}}" / -->
222
- <img class="{{grid.image_styles}}" src="{{article.image.path}}" alt="{{article.title}}" style="height: {{grid.image_height}}; width: {{grid.image_width}}">
248
+ <img class="{{grid.image_styles}}" src="{{article.image.path}}" alt="{{article.title}}" style="{{image_filters}}; height: {{grid.image_height}}; width: {{grid.image_width}}">
223
249
  {% endif %}
224
250
  <div class="article-caption">
225
251
  <div class="article-caption-heading">
@@ -295,6 +321,20 @@ exclude_from_search: true
295
321
  {% assign gutter = 0 %}
296
322
  {% endif %}
297
323
 
324
+ {% comment %} Collect CSS image filters
325
+ ------------------------------------------------------------------------ {% endcomment %}
326
+ {% assign css_filters = masonry_options.filters | merge: grid.filters %}
327
+ {% assign image_filters = 'filter:' %}
328
+
329
+ {% if css_filters.enabled %}
330
+ {% for filter in css_filters %}
331
+ {% if filter[0] contains 'enabled' %}
332
+ {% continue %}
333
+ {% endif %}
334
+ {% capture image_filters %}{{image_filters}} {{filter[0]}}({{filter[1]}}){% endcapture %}
335
+ {% endfor %}
336
+ {% endif %}
337
+
298
338
  <!-- Card Image Grid -->
299
339
  <div id="{{grid.id}}" class="row {{grid.id | replace: '_','-' }} g-0">
300
340
  {% for image in grid.images %}
@@ -306,7 +346,7 @@ exclude_from_search: true
306
346
  data-lightbox="{{grid.id}}-image-group"
307
347
  data-caption="{{image.caption}}"
308
348
  data-title="{{image.caption}}">
309
- <img id="{{forloop.index}}" class="{{grid.image_styles}}" src="{{grid.image_base_path}}/{{image.file}}" alt="{{image.caption}}" style="height: {{grid.image_height}}">
349
+ <img id="{{forloop.index}}" class="{{grid.image_styles}}" src="{{grid.image_base_path}}/{{image.file}}" alt="{{image.caption}}" style="{{image_filters}}; height: {{grid.image_height}}">
310
350
  </a>
311
351
  {% if grid.caption.enabled %}
312
352
  <div class="caption">{{image.caption}}</div>
@@ -337,6 +377,20 @@ exclude_from_search: true
337
377
  {% assign gutter = 0 %}
338
378
  {% endif %}
339
379
 
380
+ {% comment %} Collect CSS image filters
381
+ ------------------------------------------------------------------------ {% endcomment %}
382
+ {% assign css_filters = masonry_options.filters | merge: grid.filters %}
383
+ {% assign image_filters = 'filter:' %}
384
+
385
+ {% if css_filters.enabled %}
386
+ {% for filter in css_filters %}
387
+ {% if filter[0] contains 'enabled' %}
388
+ {% continue %}
389
+ {% endif %}
390
+ {% capture image_filters %}{{image_filters}} {{filter[0]}}({{filter[1]}}){% endcapture %}
391
+ {% endfor %}
392
+ {% endif %}
393
+
340
394
  <!-- Image Grid -->
341
395
  <div id="{{grid.id}}" class="row {{grid.id | replace: '_','-' }} g-0">
342
396
  {% for image in grid.images %}
@@ -346,9 +400,9 @@ exclude_from_search: true
346
400
  <a href="{{grid.image_base_path}}/{{image.file}}"
347
401
  data-lightbox="{{grid.id}}-image-group"
348
402
  data-caption="{{image.caption}}"
403
+ data-containerStyle="{{image_filters}}"
349
404
  data-title="{{image.caption}}">
350
- <img id="{{forloop.index}}" class="{{grid.image_styles}}" src="{{grid.image_base_path}}/{{image.file}}" alt="{{image.caption}}">
351
- {% if grid.caption.enabled %}
405
+ <img id="{{forloop.index}}" class="{{grid.image_styles}}" src="{{grid.image_base_path}}/{{image.file}}" alt="{{image.caption}}" style="{{image_filters}}"> {% if grid.caption.enabled %}
352
406
  {% if grid.gutters and grid.caption.position == 'top' %}
353
407
  <div class="caption" style="top: calc(2px + {{gutter}}*4px - {{gutter}}px); width: calc(100% - {{gutter}}*3%);">{{image.caption}}</div>
354
408
  {% elsif grid.gutters and grid.caption.position == 'center' %}
@@ -363,7 +417,7 @@ exclude_from_search: true
363
417
  </div>
364
418
  {% else %}
365
419
  <div class="{{grid.caption.position}}">
366
- <img id="{{forloop.index}}" class="{{grid.image_styles}}" src="{{grid.image_base_path}}/{{image.file}}" alt="{{image.caption}}">
420
+ <img id="{{forloop.index}}" class="{{grid.image_styles}}" src="{{grid.image_base_path}}/{{image.file}}" alt="{{image.caption}}" style="{{image_filters}}">
367
421
  {% if grid.caption.enabled %}
368
422
  {% if grid.gutters and grid.caption.position == 'top' %}
369
423
  <div class="caption" style="top: calc(2px + {{gutter}}*4px - {{gutter}}px); width: calc(100% - {{gutter}}*3%);">{{image.caption}}</div>
@@ -80,7 +80,7 @@ exclude_from_search: true
80
80
 
81
81
  {% comment %} Set Carousel defaults
82
82
  {% assign carousel.lightbox.enabled = false %}
83
- -------------------------------------------------------------------------- {% endcomment %}
83
+ ------------------------------------------------------------------------------ {% endcomment %}
84
84
 
85
85
  {% comment %} Generate HTML portion for all sliders (enabled)
86
86
  ------------------------------------------------------------------------------ {% endcomment %}
@@ -120,10 +120,24 @@ exclude_from_search: true
120
120
  {% assign target = "" %}
121
121
  {% endif %}
122
122
 
123
+ {% comment %} Collect CSS image filters
124
+ ------------------------------------------------------------------------ {% endcomment %}
125
+ {% assign css_filters = carousel_defaults.filters | merge: carousel.filters %}
126
+ {% assign image_filters = 'filter:' %}
127
+
128
+ {% if css_filters.enabled %}
129
+ {% for filter in css_filters %}
130
+ {% if filter[0] contains 'enabled' %}
131
+ {% continue %}
132
+ {% endif %}
133
+ {% capture image_filters %}{{image_filters}} {{filter[0]}}({{filter[1]}}){% endcapture %}
134
+ {% endfor %}
135
+ {% endif %}
136
+
123
137
  <!-- Article slide -->
124
138
  <div class="col-lg-3 col-sm-6 mb-2 mb-lg-0 pr-{{carousel.gutters}}">
125
139
  <div id="{{article.title | downcase | replace: ' ' ,'_'}}" class="card bottom">
126
- <img class="{{carousel.image_styles}}" src="{{article.image.path}}" alt="{{article.title}}" />
140
+ <img class="{{carousel.image_styles}}" src="{{article.image.path}}" alt="{{article.title}}" style="{{image_filters}}; height: {{carousel.image_height}};">
127
141
  <!-- Article link (caption) -->
128
142
  <div class="caption">
129
143
  <a class="article-link {{translate}}"
@@ -164,10 +178,25 @@ exclude_from_search: true
164
178
  {% assign target = "" %}
165
179
  {% endif %}
166
180
 
181
+ {% comment %} Collect CSS image filters
182
+ ------------------------------------------------------------------------ {% endcomment %}
183
+ {% assign css_filters = carousel_defaults.filters | merge: carousel.filters %}
184
+ {% assign image_filters = 'filter:' %}
185
+
186
+ {% if css_filters.enabled %}
187
+ {% for filter in css_filters %}
188
+ {% if filter[0] contains 'enabled' %}
189
+ {% continue %}
190
+ {% endif %}
191
+ {% capture image_filters %}{{image_filters}} {{filter[0]}}({{filter[1]}}){% endcapture %}
192
+ {% endfor %}
193
+ {% endif %}
194
+
167
195
  <!-- Collect data only if group matches -->
168
196
  <div class="col-lg-3 col-sm-6 mb-2 mb-lg-0 pr-{{carousel.gutters}}">
169
197
  <article class="card bg-dark text-center text-white border-0 rounded-0 bottom">
170
- <img class="card-img {{carousel.image_styles}}" src="{{post.image.path | relative_url}}" alt="{{post.title}}" style="filter: contrast(1) brightness(0.5); height: {{carousel.image_height}}">
198
+ <!-- class="card-img {{carousel.image_styles}}" src="{{post.image.path | relative_url}}" alt="{{post.title}}" style="filter: contrast(1) brightness(0.5); height: {{carousel.image_height}}; witdth: {{carousel.image_witdth}}" -->
199
+ <img class="card-img {{carousel.image_styles}}" src="{{post.image.path | relative_url}}" alt="{{post.title}}" style="{{image_filters}}; height: {{carousel.image_height}};">
171
200
 
172
201
  <div class="card-img-overlay">
173
202
  <div class="card-content mt-4">
@@ -248,6 +277,20 @@ exclude_from_search: true
248
277
  ---------------------------------------------------------------------------- {% endcomment %}
249
278
  {% if carousel.type == 'image' %}
250
279
 
280
+ {% comment %} Collect CSS image filters
281
+ ------------------------------------------------------------------------ {% endcomment %}
282
+ {% assign css_filters = carousel_defaults.filters | merge: carousel.filters %}
283
+ {% assign image_filters = 'filter:' %}
284
+
285
+ {% if css_filters.enabled %}
286
+ {% for filter in css_filters %}
287
+ {% if filter[0] contains 'enabled' %}
288
+ {% continue %}
289
+ {% endif %}
290
+ {% capture image_filters %}{{image_filters}} {{filter[0]}}({{filter[1]}}){% endcapture %}
291
+ {% endfor %}
292
+ {% endif %}
293
+
251
294
  <!-- Image slider -->
252
295
  <div id="{{carousel.id}}" class="{{carousel.id | replace: '_','-' }}">
253
296
  {% for slide in carousel.slides %}
@@ -255,13 +298,13 @@ exclude_from_search: true
255
298
  <div class="card {{carousel.captions.position}}">
256
299
  {% if carousel.lightbox.enabled %}
257
300
  <a class="card-link" href="{{carousel.image_base_path}}/{{slide.image}}" data-caption="{{slide.caption}}" target="_blank">
258
- <img class="{{carousel.image_styles}}" src="{{carousel.image_base_path}}/{{slide.image}}" alt="{{slide.caption}}" style="height: {{carousel.image_height}}">
301
+ <img class="{{carousel.image_styles}}" src="{{carousel.image_base_path}}/{{slide.image}}" alt="{{slide.caption}}" style="{{image_filters}}; height: {{carousel.image_height}};">
259
302
  </a>
260
303
  {% if carousel.captions.enabled %}
261
304
  <div id="{{carousel.id}}_caption"class="caption">{{slide.caption}}</div>
262
305
  {% endif %}
263
306
  {% else %}
264
- <img class="{{carousel.image_styles}}" src="{{carousel.image_base_path}}/{{slide.image}}" alt="{{slide.caption}}" style="height: {{carousel.image_height}}">
307
+ <img class="{{carousel.image_styles}}" src="{{carousel.image_base_path}}/{{slide.image}}" alt="{{slide.caption}}" style="{{image_filters}}; height: {{carousel.image_height}};"">
265
308
  {% if carousel.captions.enabled %}
266
309
  <div id="{{carousel.id}}_caption"class="caption">{{slide.caption}}</div>
267
310
  {% endif %}
@@ -147,11 +147,18 @@ j1.adapter.attic = (function (j1, window) {
147
147
  if ( j1.getState() === 'finished' && pageVisible ) {
148
148
  {% if attic_options.enabled %}
149
149
  logger.info('\n' + 'create all attics configured');
150
+
151
+ // hide page while attic is being created
152
+ // jadams, 2023-05-12: Visible page/attic cause high number
153
+ // for cumulative layout shift (CLS)
154
+ //
155
+ $('#no_flicker').css('display', 'none');
156
+
150
157
  _this.createAllAttics();
151
158
  clearInterval(dependencies_met_page_ready);
152
159
  {% else %}
153
- logger.warn('\n' + 'found module attics disabled');
154
- // add additional top space
160
+ logger.debug('\n' + 'found module attics disabled');
161
+ // add additional top space if attics are disabled
155
162
  $('#content').addClass('mt-5');
156
163
  clearInterval(dependencies_met_page_ready);
157
164
  {% endif %}
@@ -379,6 +386,9 @@ j1.adapter.attic = (function (j1, window) {
379
386
  $('.attic-caption').css('opacity', '1');
380
387
  }
381
388
 
389
+ // show page if attic created
390
+ $('#no_flicker').css('display', 'block');
391
+
382
392
  // jadams, 2022-08-09:
383
393
  // resize the (background-)image to make sure the 'attic'
384
394
  // container is changed in size (heigth) if title/tagline
@@ -90,7 +90,7 @@ j1.adapter.lightbox = (function (j1, window) {
90
90
  var lightboxDefaults;
91
91
  var lightboxSettings;
92
92
  var lightboxOptions;
93
- var frontmatterOptions;
93
+ var frontmatterOptions;
94
94
  var _this;
95
95
  var logger;
96
96
  var logText;
@@ -132,7 +132,9 @@ j1.adapter.lightbox = (function (j1, window) {
132
132
  lightboxOptions = $.extend(true, {}, lightboxDefaults, lightboxSettings, frontmatterOptions);
133
133
 
134
134
  var dependencies_met_j1_finished = setInterval(function() {
135
- if (j1.getState() == 'finished') {
135
+ var pageState = $('#no_flicker').css("display");
136
+ var pageVisible = (pageState == 'block') ? true: false;
137
+ if (j1.getState() == 'finished' && pageVisible) {
136
138
 
137
139
  _this.setState('started');
138
140
  logger.debug('\n' + 'state: ' + _this.getState());
@@ -153,13 +155,31 @@ j1.adapter.lightbox = (function (j1, window) {
153
155
  wrapAround: lightboxOptions.wrapAround
154
156
  });
155
157
 
156
- _this.setState('finished');
157
- logger.debug('\n' + 'state: ' + _this.getState());
158
- logger.info('\n' + 'initializing module finished');
158
+ // _this.setState('finished');
159
+ // logger.debug('\n' + 'state: ' + _this.getState());
160
+ // logger.info('\n' + 'initializing module finished');
159
161
 
160
162
  clearInterval(dependencies_met_j1_finished);
161
163
  } // END dependencies_met_j1_finished
162
164
  }, 25);
165
+
166
+ // jadams, 2023-05-07: place CSS styles in GENERAL on a LIGHTBOX V2 doesn't help.
167
+ // a lightbox shoud restpect the individual IMAGE styles
168
+ // FixMe:
169
+ //
170
+ var dependencies_met_lb_v2_finished = setInterval(function() {
171
+ var lb_v2 = $('#lightbox').length;
172
+ if (lb_v2) {
173
+ _this.setState('finished');
174
+ logger.debug('\n' + 'state: ' + _this.getState());
175
+ logger.info('\n' + 'initializing module finished');
176
+
177
+ // $('#lightbox').css("filter: grayscale(0.8) contrast(0.8) brightness(0.7) sepia(1)");
178
+
179
+ clearInterval(dependencies_met_lb_v2_finished);
180
+ }
181
+ }, 25); // END dependencies_met_lb_v2_finished
182
+
163
183
  }, // END init lightbox
164
184
 
165
185
  // -------------------------------------------------------------------------
@@ -2334,28 +2334,33 @@ ul.disc {
2334
2334
  */
2335
2335
  @font-face {
2336
2336
  font-family: "Roboto";
2337
- src: local(Roboto Thin), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Thin.woff2") format("woff2"), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Thin.woff") format("woff");
2338
- font-weight: 100; }
2337
+ font-weight: 100;
2338
+ font-display: swap;
2339
+ src: local(Roboto Thin), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Thin.woff2") format("woff2"), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Thin.woff") format("woff"); }
2339
2340
 
2340
2341
  @font-face {
2341
2342
  font-family: "Roboto";
2342
- src: local(Roboto Light), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Light.woff2") format("woff2"), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Light.woff") format("woff");
2343
- font-weight: 300; }
2343
+ font-weight: 300;
2344
+ font-display: swap;
2345
+ src: local(Roboto Light), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Light.woff2") format("woff2"), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Light.woff") format("woff"); }
2344
2346
 
2345
2347
  @font-face {
2346
2348
  font-family: "Roboto";
2347
- src: local(Roboto Regular), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Regular.woff2") format("woff2"), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Regular.woff") format("woff");
2348
- font-weight: 400; }
2349
+ font-weight: 400;
2350
+ font-display: swap;
2351
+ src: local(Roboto Regular), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Regular.woff2") format("woff2"), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Regular.woff") format("woff"); }
2349
2352
 
2350
2353
  @font-face {
2351
2354
  font-family: "Roboto";
2352
- src: local(Roboto Medium), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Medium.woff2") format("woff2"), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Medium.woff") format("woff");
2353
- font-weight: 500; }
2355
+ font-weight: 500;
2356
+ font-display: swap;
2357
+ src: local(Roboto Medium), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Medium.woff2") format("woff2"), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Medium.woff") format("woff"); }
2354
2358
 
2355
2359
  @font-face {
2356
2360
  font-family: "Roboto";
2357
- src: local(Roboto Bold), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Bold.woff2") format("woff2"), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Bold.woff") format("woff");
2358
- font-weight: 700; }
2361
+ font-weight: 700;
2362
+ font-display: swap;
2363
+ src: local(Roboto Bold), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Bold.woff2") format("woff2"), url("/assets/themes/j1/core/fonts/roboto/fonts/Roboto-Bold.woff") format("woff"); }
2359
2364
 
2360
2365
  /*
2361
2366
  # -----------------------------------------------------------------------------
@@ -2374,51 +2379,12 @@ ul.disc {
2374
2379
  # See: https://fonts.google.com/specimen/Roboto+Slab#license
2375
2380
  # -----------------------------------------------------------------------------
2376
2381
  */
2377
- /* cyrillic-ext */
2378
- @font-face {
2379
- font-family: 'Roboto Slab';
2380
- font-style: normal;
2381
- font-weight: 300;
2382
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufA5qW54A.woff2) format("woff2");
2383
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
2384
-
2385
- /* cyrillic */
2386
- @font-face {
2387
- font-family: 'Roboto Slab';
2388
- font-style: normal;
2389
- font-weight: 300;
2390
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufJ5qW54A.woff2) format("woff2");
2391
- unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
2392
-
2393
- /* greek-ext */
2394
- @font-face {
2395
- font-family: 'Roboto Slab';
2396
- font-style: normal;
2397
- font-weight: 300;
2398
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufB5qW54A.woff2) format("woff2");
2399
- unicode-range: U+1F00-1FFF; }
2400
-
2401
- /* greek */
2402
- @font-face {
2403
- font-family: 'Roboto Slab';
2404
- font-style: normal;
2405
- font-weight: 300;
2406
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufO5qW54A.woff2) format("woff2");
2407
- unicode-range: U+0370-03FF; }
2408
-
2409
- /* vietnamese */
2410
- @font-face {
2411
- font-family: 'Roboto Slab';
2412
- font-style: normal;
2413
- font-weight: 300;
2414
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufC5qW54A.woff2) format("woff2");
2415
- unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; }
2416
-
2417
2382
  /* latin-ext */
2418
2383
  @font-face {
2419
2384
  font-family: 'Roboto Slab';
2420
2385
  font-style: normal;
2421
2386
  font-weight: 300;
2387
+ font-display: swap;
2422
2388
  src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufD5qW54A.woff2) format("woff2");
2423
2389
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
2424
2390
 
@@ -2427,54 +2393,16 @@ ul.disc {
2427
2393
  font-family: 'Roboto Slab';
2428
2394
  font-style: normal;
2429
2395
  font-weight: 300;
2396
+ font-display: swap;
2430
2397
  src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufN5qU.woff2) format("woff2");
2431
2398
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
2432
2399
 
2433
- /* cyrillic-ext */
2434
- @font-face {
2435
- font-family: 'Roboto Slab';
2436
- font-style: normal;
2437
- font-weight: 400;
2438
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufA5qW54A.woff2) format("woff2");
2439
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
2440
-
2441
- /* cyrillic */
2442
- @font-face {
2443
- font-family: 'Roboto Slab';
2444
- font-style: normal;
2445
- font-weight: 400;
2446
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufJ5qW54A.woff2) format("woff2");
2447
- unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
2448
-
2449
- /* greek-ext */
2450
- @font-face {
2451
- font-family: 'Roboto Slab';
2452
- font-style: normal;
2453
- font-weight: 400;
2454
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufB5qW54A.woff2) format("woff2");
2455
- unicode-range: U+1F00-1FFF; }
2456
-
2457
- /* greek */
2458
- @font-face {
2459
- font-family: 'Roboto Slab';
2460
- font-style: normal;
2461
- font-weight: 400;
2462
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufO5qW54A.woff2) format("woff2");
2463
- unicode-range: U+0370-03FF; }
2464
-
2465
- /* vietnamese */
2466
- @font-face {
2467
- font-family: 'Roboto Slab';
2468
- font-style: normal;
2469
- font-weight: 400;
2470
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufC5qW54A.woff2) format("woff2");
2471
- unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; }
2472
-
2473
2400
  /* latin-ext */
2474
2401
  @font-face {
2475
2402
  font-family: 'Roboto Slab';
2476
2403
  font-style: normal;
2477
2404
  font-weight: 400;
2405
+ font-display: swap;
2478
2406
  src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufD5qW54A.woff2) format("woff2");
2479
2407
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
2480
2408
 
@@ -2483,54 +2411,16 @@ ul.disc {
2483
2411
  font-family: 'Roboto Slab';
2484
2412
  font-style: normal;
2485
2413
  font-weight: 400;
2414
+ font-display: swap;
2486
2415
  src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufN5qU.woff2) format("woff2");
2487
2416
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
2488
2417
 
2489
- /* cyrillic-ext */
2490
- @font-face {
2491
- font-family: 'Roboto Slab';
2492
- font-style: normal;
2493
- font-weight: 700;
2494
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufA5qW54A.woff2) format("woff2");
2495
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
2496
-
2497
- /* cyrillic */
2498
- @font-face {
2499
- font-family: 'Roboto Slab';
2500
- font-style: normal;
2501
- font-weight: 700;
2502
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufJ5qW54A.woff2) format("woff2");
2503
- unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
2504
-
2505
- /* greek-ext */
2506
- @font-face {
2507
- font-family: 'Roboto Slab';
2508
- font-style: normal;
2509
- font-weight: 700;
2510
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufB5qW54A.woff2) format("woff2");
2511
- unicode-range: U+1F00-1FFF; }
2512
-
2513
- /* greek */
2514
- @font-face {
2515
- font-family: 'Roboto Slab';
2516
- font-style: normal;
2517
- font-weight: 700;
2518
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufO5qW54A.woff2) format("woff2");
2519
- unicode-range: U+0370-03FF; }
2520
-
2521
- /* vietnamese */
2522
- @font-face {
2523
- font-family: 'Roboto Slab';
2524
- font-style: normal;
2525
- font-weight: 700;
2526
- src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufC5qW54A.woff2) format("woff2");
2527
- unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB; }
2528
-
2529
2418
  /* latin-ext */
2530
2419
  @font-face {
2531
2420
  font-family: 'Roboto Slab';
2532
2421
  font-style: normal;
2533
2422
  font-weight: 700;
2423
+ font-display: swap;
2534
2424
  src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufD5qW54A.woff2) format("woff2");
2535
2425
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
2536
2426
 
@@ -2539,7 +2429,6 @@ ul.disc {
2539
2429
  font-family: 'Roboto Slab';
2540
2430
  font-style: normal;
2541
2431
  font-weight: 700;
2432
+ font-display: swap;
2542
2433
  src: url(https://fonts.gstatic.com/s/robotoslab/v13/BngMUXZYTXPIvIBgJJSb6ufN5qU.woff2) format("woff2");
2543
2434
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
2544
-
2545
- /* cyrillic-ext */