j1-template 2024.2.0 → 2024.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/assets/data/gemini-ui.html +2 -2
  3. data/assets/themes/j1/adapter/js/advertising.js +2 -10
  4. data/assets/themes/j1/adapter/js/analytics.js +1 -5
  5. data/assets/themes/j1/adapter/js/bmd.js +195 -195
  6. data/assets/themes/j1/adapter/js/carousel.js +786 -786
  7. data/assets/themes/j1/adapter/js/clipboard.js +1 -0
  8. data/assets/themes/j1/adapter/js/comments.js +1 -0
  9. data/assets/themes/j1/adapter/js/cookieConsent.js +460 -466
  10. data/assets/themes/j1/adapter/js/customModule.js +5 -4
  11. data/assets/themes/j1/adapter/js/docsearch.js +1 -0
  12. data/assets/themes/j1/adapter/js/dropdowns.js +1 -0
  13. data/assets/themes/j1/adapter/js/fab.js +1 -0
  14. data/assets/themes/j1/adapter/js/gallery.js +495 -494
  15. data/assets/themes/j1/adapter/js/gemini.js +154 -128
  16. data/assets/themes/j1/adapter/js/iconPicker.js +257 -255
  17. data/assets/themes/j1/adapter/js/iconPickerPage.js +279 -279
  18. data/assets/themes/j1/adapter/js/iframer.js +3 -2
  19. data/assets/themes/j1/adapter/js/j1.js +3285 -3285
  20. data/assets/themes/j1/adapter/js/lazyLoader.js +241 -241
  21. data/assets/themes/j1/adapter/js/lightbox.js +242 -241
  22. data/assets/themes/j1/adapter/js/logger.js +1 -0
  23. data/assets/themes/j1/adapter/js/lunr.js +6 -10
  24. data/assets/themes/j1/adapter/js/masonry.js +427 -426
  25. data/assets/themes/j1/adapter/js/masterslider.js +526 -526
  26. data/assets/themes/j1/adapter/js/mmenu.js +1 -0
  27. data/assets/themes/j1/adapter/js/navigator.js +2 -2
  28. data/assets/themes/j1/adapter/js/particles.js +1 -0
  29. data/assets/themes/j1/adapter/js/rangeSlider.js +1 -0
  30. data/assets/themes/j1/adapter/js/rouge.js +288 -287
  31. data/assets/themes/j1/adapter/js/rtable.js +309 -309
  32. data/assets/themes/j1/adapter/js/slick.js +487 -487
  33. data/assets/themes/j1/adapter/js/slimSelect.js +3 -5
  34. data/assets/themes/j1/adapter/js/themeToggler.js +281 -280
  35. data/assets/themes/j1/adapter/js/themes.js +0 -1
  36. data/assets/themes/j1/adapter/js/toccer.js +1 -0
  37. data/assets/themes/j1/adapter/js/translator.js +1 -0
  38. data/assets/themes/j1/adapter/js/waves.js +1 -0
  39. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.js +23 -17
  40. data/assets/themes/j1/modules/js-cookies/js/js.cookie.js +147 -0
  41. data/assets/themes/j1/modules/js-cookies/js/js.cookie.min.js +2 -0
  42. data/lib/j1/version.rb +1 -1
  43. data/lib/starter_web/README.md +5 -5
  44. data/lib/starter_web/_config.yml +1 -1
  45. data/lib/starter_web/_data/modules/defaults/themes.yml +171 -171
  46. data/lib/starter_web/_data/resources.yml +26 -0
  47. data/lib/starter_web/_data/templates/feed.xml +1 -1
  48. data/lib/starter_web/_plugins/index/lunr.rb +1 -1
  49. data/lib/starter_web/package.json +1 -1
  50. data/lib/starter_web/pages/public/learn/roundtrip/present_images.adoc +500 -500
  51. metadata +4 -2
@@ -89,12 +89,13 @@ function CookieConsent(props) {
89
89
  this.props.cookieSecure = cookieSecure;
90
90
 
91
91
  var Cookie = {
92
- set: function (name, value, days, cookieSameSite, cookieDomain, cookieSecure) {
92
+ set: (name, value, days, cookieSameSite, cookieDomain, cookieSecure) => {
93
93
  var value_encoded = window.btoa(value);
94
- var expires = '; expires=Thu, 01 Jan 1970 00:00:00 UTC';
94
+ var expires = '; expires=Thu, 01 Jan 1970 00:00:00 UTC';
95
95
 
96
- if (days>0) {
96
+ if (days > 0) {
97
97
  var date = new Date();
98
+
98
99
  date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
99
100
  expires = "; expires=" + date.toUTCString();
100
101
  }
@@ -117,22 +118,27 @@ function CookieConsent(props) {
117
118
  document.cookie = name + "=" + (value_encoded || '') + expires + '; Path=/; SameSite=' + cookieSameSite + ';';
118
119
  }
119
120
  }
121
+
120
122
  },
121
- get: function (name) {
122
- var nameEQ = name + "=";
123
- var ca = document.cookie.split(';');
124
- for (var i = 0; i < ca.length; i++) {
125
- var c = ca[i];
126
- while (c.charAt(0) === ' ') {
127
- c = c.substring(1, c.length);
128
- }
129
- if (c.indexOf(nameEQ) === 0) {
130
- var value_encoded = c.substring(nameEQ.length, c.length);
131
- var value = window.atob(value_encoded);
132
- return value;
123
+
124
+ get: (name) => {
125
+ var nameEQ = name + "=";
126
+ var ca = document.cookie.split(';');
127
+
128
+ for (var i = 0; i < ca.length; i++) {
129
+ var c = ca[i];
130
+ while (c.charAt(0) === ' ') {
131
+ c = c.substring(1, c.length);
132
+ }
133
+
134
+ if (c.indexOf(nameEQ) === 0) {
135
+ var value_encoded = c.substring(nameEQ.length, c.length);
136
+ var value = window.atob(value_encoded);
137
+ return value;
138
+ }
133
139
  }
134
- }
135
- return undefined;
140
+
141
+ return undefined;
136
142
  }
137
143
  };
138
144
 
@@ -0,0 +1,147 @@
1
+ /*! js-cookie v3.0.5 | MIT */
2
+ ;
3
+ (function (global, factory) {
4
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
5
+ typeof define === 'function' && define.amd ? define(factory) :
6
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (function () {
7
+ var current = global.Cookies;
8
+ var exports = global.Cookies = factory();
9
+ exports.noConflict = function () { global.Cookies = current; return exports; };
10
+ })());
11
+ })(this, (function () { 'use strict';
12
+
13
+ /* eslint-disable no-var */
14
+ function assign (target) {
15
+ for (var i = 1; i < arguments.length; i++) {
16
+ var source = arguments[i];
17
+ for (var key in source) {
18
+ target[key] = source[key];
19
+ }
20
+ }
21
+ return target
22
+ }
23
+ /* eslint-enable no-var */
24
+
25
+ /* eslint-disable no-var */
26
+ var defaultConverter = {
27
+ read: function (value) {
28
+ if (value[0] === '"') {
29
+ value = value.slice(1, -1);
30
+ }
31
+ return value.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent)
32
+ },
33
+ write: function (value) {
34
+ return encodeURIComponent(value).replace(
35
+ /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,
36
+ decodeURIComponent
37
+ )
38
+ }
39
+ };
40
+ /* eslint-enable no-var */
41
+
42
+ /* eslint-disable no-var */
43
+
44
+ function init (converter, defaultAttributes) {
45
+ function set (name, value, attributes) {
46
+ if (typeof document === 'undefined') {
47
+ return
48
+ }
49
+
50
+ attributes = assign({}, defaultAttributes, attributes);
51
+
52
+ if (typeof attributes.expires === 'number') {
53
+ attributes.expires = new Date(Date.now() + attributes.expires * 864e5);
54
+ }
55
+ if (attributes.expires) {
56
+ attributes.expires = attributes.expires.toUTCString();
57
+ }
58
+
59
+ name = encodeURIComponent(name)
60
+ .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)
61
+ .replace(/[()]/g, escape);
62
+
63
+ var stringifiedAttributes = '';
64
+ for (var attributeName in attributes) {
65
+ if (!attributes[attributeName]) {
66
+ continue
67
+ }
68
+
69
+ stringifiedAttributes += '; ' + attributeName;
70
+
71
+ if (attributes[attributeName] === true) {
72
+ continue
73
+ }
74
+
75
+ // Considers RFC 6265 section 5.2:
76
+ // ...
77
+ // 3. If the remaining unparsed-attributes contains a %x3B (";")
78
+ // character:
79
+ // Consume the characters of the unparsed-attributes up to,
80
+ // not including, the first %x3B (";") character.
81
+ // ...
82
+ stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];
83
+ }
84
+
85
+ return (document.cookie =
86
+ name + '=' + converter.write(value, name) + stringifiedAttributes)
87
+ }
88
+
89
+ function get (name) {
90
+ if (typeof document === 'undefined' || (arguments.length && !name)) {
91
+ return
92
+ }
93
+
94
+ // To prevent the for loop in the first place assign an empty array
95
+ // in case there are no cookies at all.
96
+ var cookies = document.cookie ? document.cookie.split('; ') : [];
97
+ var jar = {};
98
+ for (var i = 0; i < cookies.length; i++) {
99
+ var parts = cookies[i].split('=');
100
+ var value = parts.slice(1).join('=');
101
+
102
+ try {
103
+ var found = decodeURIComponent(parts[0]);
104
+ jar[found] = converter.read(value, found);
105
+
106
+ if (name === found) {
107
+ break
108
+ }
109
+ } catch (e) {}
110
+ }
111
+
112
+ return name ? jar[name] : jar
113
+ }
114
+
115
+ return Object.create(
116
+ {
117
+ set,
118
+ get,
119
+ remove: function (name, attributes) {
120
+ set(
121
+ name,
122
+ '',
123
+ assign({}, attributes, {
124
+ expires: -1
125
+ })
126
+ );
127
+ },
128
+ withAttributes: function (attributes) {
129
+ return init(this.converter, assign({}, this.attributes, attributes))
130
+ },
131
+ withConverter: function (converter) {
132
+ return init(assign({}, this.converter, converter), this.attributes)
133
+ }
134
+ },
135
+ {
136
+ attributes: { value: Object.freeze(defaultAttributes) },
137
+ converter: { value: Object.freeze(converter) }
138
+ }
139
+ )
140
+ }
141
+
142
+ var api = init(defaultConverter, { path: '/' });
143
+ /* eslint-enable no-var */
144
+
145
+ return api;
146
+
147
+ }));
@@ -0,0 +1,2 @@
1
+ /*! js-cookie v3.0.5 | MIT */
2
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self,function(){var n=e.Cookies,o=e.Cookies=t();o.noConflict=function(){return e.Cookies=n,o}}())}(this,(function(){"use strict";function e(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)e[o]=n[o]}return e}var t=function t(n,o){function r(t,r,i){if("undefined"!=typeof document){"number"==typeof(i=e({},o,i)).expires&&(i.expires=new Date(Date.now()+864e5*i.expires)),i.expires&&(i.expires=i.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var c="";for(var u in i)i[u]&&(c+="; "+u,!0!==i[u]&&(c+="="+i[u].split(";")[0]));return document.cookie=t+"="+n.write(r,t)+c}}return Object.create({set:r,get:function(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var t=document.cookie?document.cookie.split("; "):[],o={},r=0;r<t.length;r++){var i=t[r].split("="),c=i.slice(1).join("=");try{var u=decodeURIComponent(i[0]);if(o[u]=n.read(c,u),e===u)break}catch(e){}}return e?o[e]:o}},remove:function(t,n){r(t,"",e({},n,{expires:-1}))},withAttributes:function(n){return t(this.converter,e({},this.attributes,n))},withConverter:function(n){return t(e({},this.converter,n),this.attributes)}},{attributes:{value:Object.freeze(o)},converter:{value:Object.freeze(n)}})}({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"});return t}));
data/lib/j1/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module J1
2
- VERSION = '2024.2.0'
2
+ VERSION = '2024.2.1'
3
3
  end
@@ -379,7 +379,7 @@ This command creates a **initial** project in folder **my-starter**.
379
379
  2023-02-28 18:12:12 - GENERATE: Resolving dependencies...
380
380
  2023-02-28 18:12:12 - GENERATE: Using bundler 2.3.7
381
381
  ...
382
- 2023-02-28 18:12:12 - GENERATE: Using j1-template 2024.2.0
382
+ 2023-02-28 18:12:12 - GENERATE: Using j1-template 2024.2.1
383
383
  2023-02-28 18:12:12 - GENERATE: Bundle complete! 31 Gemfile dependencies, 78 gems now installed.
384
384
  2023-02-28 18:12:12 - GENERATE: Bundled gems are installed into `../../.gem`
385
385
  2023-02-28 18:12:12 - GENERATE: C:/Users/xxx/.gem/ruby/3.1.0;C:/DevTools/Ruby31-x64/lib/ruby/gems/3.1.0;
@@ -415,7 +415,7 @@ commands are available as well.
415
415
  2023-02-28 18:17:48 - SETUP: Initialize the project ...
416
416
  2023-02-28 18:17:48 - SETUP: Be patient, this will take a while ...
417
417
  2023-02-28 18:17:49 - SETUP:
418
- 2023-02-28 18:17:49 - SETUP: > j1@2024.2.0 setup C:\Users\xxx\j1-projects\my-starter
418
+ 2023-02-28 18:17:49 - SETUP: > j1@2024.2.1 setup C:\Users\xxx\j1-projects\my-starter
419
419
  2023-02-28 18:17:49 - SETUP: > npm --silent run setup-start && npm --silent run setup-base && run-s -s setup:*
420
420
  2023-02-28 18:17:49 - SETUP:
421
421
  2023-02-28 18:17:50 - SETUP: Setup project for first use ..
@@ -460,7 +460,7 @@ browser. Let's start the journey ...
460
460
  Check setup state of the J1 project ...
461
461
  2023-02-28 18:26:18 - SITE: Starting up your site ...
462
462
  2023-02-28 18:26:18 - SITE:
463
- 2023-02-28 18:26:18 - SITE: > j1@2024.2.0 j1-site C:\Users\jadams\j1-projects\my-starter
463
+ 2023-02-28 18:26:18 - SITE: > j1@2024.2.1 j1-site C:\Users\jadams\j1-projects\my-starter
464
464
  2023-02-28 18:26:18 - SITE: > run-p -s j1-site:*
465
465
  2023-02-28 18:26:18 - SITE:
466
466
  2023-02-28 18:26:20 - SITE: Startup UTILSRV ..
@@ -499,7 +499,7 @@ Check setup state of the J1 project ...
499
499
  REBUILD: Rebuild the projects website ...
500
500
  REBUILD: Be patient, this will take a while ...
501
501
  2023-02-28 18:45:09 - REBUILD:
502
- 2023-02-28 18:45:09 - REBUILD: > j1@2024.2.0 rebuild C:\Users\xxx\j1-projects\my-starter
502
+ 2023-02-28 18:45:09 - REBUILD: > j1@2024.2.1 rebuild C:\Users\xxx\j1-projects\my-starter
503
503
  2023-02-28 18:45:09 - REBUILD: > run-s -s rebuild:* && run-s -s post-rebuild:*
504
504
  2023-02-28 18:45:09 - REBUILD:
505
505
  2023-02-28 18:45:10 - REBUILD: Rebuild site incremental ..
@@ -547,7 +547,7 @@ using Lerna for all packages:
547
547
  2023-02-28 18:29:07 - RESET: Reset the project to factory state ...
548
548
  2023-02-28 18:29:07 - RESET: Be patient, this will take a while ...
549
549
  2023-02-28 18:29:08 - RESET:
550
- 2023-02-28 18:29:08 - RESET: > j1@2024.2.0 reset C:\Users\xxx\j1-projects\my-starter
550
+ 2023-02-28 18:29:08 - RESET: > j1@2024.2.1 reset C:\Users\xxx\j1-projects\my-starter
551
551
  2023-02-28 18:29:08 - RESET: > run-s -s reset:*
552
552
  2023-02-28 18:29:08 - RESET:
553
553
  2023-02-28 18:29:08 - RESET: Reset project to factory state ..
@@ -53,7 +53,7 @@ environment: development
53
53
  # ------------------------------------------------------------------------------
54
54
  # Sets the build version of the site
55
55
  #
56
- version: 2024.2.0
56
+ version: 2024.2.1
57
57
 
58
58
  # copyright
59
59
  # ------------------------------------------------------------------------------
@@ -1,171 +1,171 @@
1
- # ------------------------------------------------------------------------------
2
- # ~/_data/modules/defaults/themes.yml
3
- # Default configuration settings for J1 themes
4
- #
5
- # Product/Info:
6
- # https://jekyll.one
7
- #
8
- # Copyright (C) 2023, 2024 Juergen Adams
9
- #
10
- # J1 Template is licensed under the MIT License.
11
- # See: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
12
- # ------------------------------------------------------------------------------
13
-
14
- # ------------------------------------------------------------------------------
15
- # Description
16
- #
17
- description:
18
- title: Themes
19
- scope: Default settings
20
- location: _data/modules/defaults/themes.yml
21
-
22
- # ------------------------------------------------------------------------------
23
- # Default configuration settings
24
- #
25
- defaults:
26
-
27
- # ----------------------------------------------------------------------------
28
- # Themes options
29
- # ----------------------------------------------------------------------------
30
- #
31
- # enabled
32
- # --------------------------------------------------------------------------
33
- # Enables|Disables the use of J1 Themes
34
- #
35
- # values: boolean (true|false)
36
- # default: false
37
- #
38
- # debug
39
- # --------------------------------------------------------------------------
40
- # Enables|Disables the console log
41
- #
42
- # values: boolean (true|false)
43
- # default: false
44
- #
45
- # ----------------------------------------------------------------------------
46
- enabled: false
47
- debug: false
48
- saveToCookie: true
49
-
50
- # ----------------------------------------------------------------------------
51
- # Themes settings
52
- # ----------------------------------------------------------------------------
53
- #
54
- # cssThemeLink
55
- # --------------------------------------------------------------------------
56
- # The ID used for the bootstrap theme css file
57
- #
58
- # values: string
59
- # default: bootstrapTheme
60
- #
61
- # saveToCookie
62
- # --------------------------------------------------------------------------
63
- # If true, a cookie will be saved with the currently selected theme
64
- #
65
- # values: boolean (true|false)
66
- # default: true
67
- #
68
- # cookieThemeName
69
- # --------------------------------------------------------------------------
70
- # The name of the cookie to be used to store the theme name
71
- #
72
- # values: string
73
- # default: bootstrapTheme.name
74
- #
75
- # cookieDefaultThemeName
76
- # --------------------------------------------------------------------------
77
- # The name of the cookie to be used to store the default theme name
78
- #
79
- # values: string
80
- # default: bootstrapDefaultTheme.name
81
- #
82
- # cookieThemeCss
83
- # --------------------------------------------------------------------------
84
- # The name of the cookie to be used to store the css file name
85
- # used for the theme
86
- #
87
- # values: string
88
- # default: bootstrapTheme.css
89
- #
90
- # cookieExpiration
91
- # --------------------------------------------------------------------------
92
- # The number of days the cookies should expire
93
- #
94
- # values: integer
95
- # default: 7
96
- #
97
- # cookiePath
98
- # --------------------------------------------------------------------------
99
- # The path the cookie should be stored
100
- #
101
- # values: string (path)
102
- # default: /
103
- #
104
- # defaultCssFile
105
- # --------------------------------------------------------------------------
106
- # The default css file the plugin should use if it can not load
107
- # the themes from Bootswatch
108
- #
109
- # values: string (URI)
110
- # default: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css
111
- #
112
- # bootswatchApiUrl
113
- # --------------------------------------------------------------------------
114
- # The url for the bootswatch api
115
- #
116
- # values: string (URI)
117
- # default: http://api.bootswatch.com
118
- #
119
- # bootswatchApiVersion
120
- # --------------------------------------------------------------------------
121
- # The version of the bootswatch api to use
122
- #
123
- # values: integer
124
- # default: 3
125
- #
126
- # localFeed
127
- # --------------------------------------------------------------------------
128
- # The path to a JSON file that contains the themes you want to use.
129
- # If this parameter is used, the control will be loaded the themes
130
- # from here and not go to the bootswatchApiUrl. A sample of the json
131
- # file can be found at themes.json
132
- #
133
- # values: string
134
- # default: empty string
135
- #
136
- # excludeBootswatch
137
- # --------------------------------------------------------------------------
138
- # Comma separated list of BootSwatch names (e.g. Slate,Yeti) that
139
- # should be excluded from the rendered <ul> or <select>
140
- #
141
- # values: string
142
- # default: empty string
143
- #
144
- # hideOnReload
145
- # --------------------------------------------------------------------------
146
- # Number of milliseconds (msec) the current page is hidden (display: none)
147
- # to prevent "DOM flicker" aka "FOUC" (Flash of unstyled content) while
148
- # the css file is loaded|activated
149
- #
150
- # values: integer
151
- # default: 150
152
- #
153
- # ----------------------------------------------------------------------------
154
- reloadPageOnChange: false # reload current page, if theme has been changed
155
- retries: 30 # retry to load theme list from API
156
- preview_page: /pages/public/tools/previewer/current_theme/
157
- menu_icon_family: mdib
158
- menu_icon_color: var(--md-gray-500)
159
- menu_icon_size: mdib-sm
160
- cssThemeLink: bootstrapTheme
161
- defaultCssFile: "https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css"
162
- bootswatchApiUrl: "https://bootswatch.com/api"
163
- bootswatchApiVersion: 5
164
- loadFromBootswatch: true
165
- localThemes: /assets/data/themes.json
166
- excludeBootswatch: "Default, default, Lux, Sketchy"
167
- includeBootswatch:
168
- skipIncludeBootswatch:
169
-
170
- # ------------------------------------------------------------------------------
171
- # END config
1
+ # ------------------------------------------------------------------------------
2
+ # ~/_data/modules/defaults/themes.yml
3
+ # Default configuration settings for J1 themes
4
+ #
5
+ # Product/Info:
6
+ # https://jekyll.one
7
+ #
8
+ # Copyright (C) 2023, 2024 Juergen Adams
9
+ #
10
+ # J1 Template is licensed under the MIT License.
11
+ # See: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE.md
12
+ # ------------------------------------------------------------------------------
13
+
14
+ # ------------------------------------------------------------------------------
15
+ # Description
16
+ #
17
+ description:
18
+ title: Themes
19
+ scope: Default settings
20
+ location: _data/modules/defaults/themes.yml
21
+
22
+ # ------------------------------------------------------------------------------
23
+ # Default configuration settings
24
+ #
25
+ defaults:
26
+
27
+ # ----------------------------------------------------------------------------
28
+ # Themes options
29
+ # ----------------------------------------------------------------------------
30
+ #
31
+ # enabled
32
+ # --------------------------------------------------------------------------
33
+ # Enables|Disables the use of J1 Themes
34
+ #
35
+ # values: boolean (true|false)
36
+ # default: false
37
+ #
38
+ # debug
39
+ # --------------------------------------------------------------------------
40
+ # Enables|Disables the console log
41
+ #
42
+ # values: boolean (true|false)
43
+ # default: false
44
+ #
45
+ # ----------------------------------------------------------------------------
46
+ enabled: false
47
+ debug: false
48
+ saveToCookie: true
49
+
50
+ # ----------------------------------------------------------------------------
51
+ # Themes settings
52
+ # ----------------------------------------------------------------------------
53
+ #
54
+ # cssThemeLink
55
+ # --------------------------------------------------------------------------
56
+ # The ID used for the bootstrap theme css file
57
+ #
58
+ # values: string
59
+ # default: bootstrapTheme
60
+ #
61
+ # saveToCookie
62
+ # --------------------------------------------------------------------------
63
+ # If true, a cookie will be saved with the currently selected theme
64
+ #
65
+ # values: boolean (true|false)
66
+ # default: true
67
+ #
68
+ # cookieThemeName
69
+ # --------------------------------------------------------------------------
70
+ # The name of the cookie to be used to store the theme name
71
+ #
72
+ # values: string
73
+ # default: bootstrapTheme.name
74
+ #
75
+ # cookieDefaultThemeName
76
+ # --------------------------------------------------------------------------
77
+ # The name of the cookie to be used to store the default theme name
78
+ #
79
+ # values: string
80
+ # default: bootstrapDefaultTheme.name
81
+ #
82
+ # cookieThemeCss
83
+ # --------------------------------------------------------------------------
84
+ # The name of the cookie to be used to store the css file name
85
+ # used for the theme
86
+ #
87
+ # values: string
88
+ # default: bootstrapTheme.css
89
+ #
90
+ # cookieExpiration
91
+ # --------------------------------------------------------------------------
92
+ # The number of days the cookies should expire
93
+ #
94
+ # values: integer
95
+ # default: 7
96
+ #
97
+ # cookiePath
98
+ # --------------------------------------------------------------------------
99
+ # The path the cookie should be stored
100
+ #
101
+ # values: string (path)
102
+ # default: /
103
+ #
104
+ # defaultCssFile
105
+ # --------------------------------------------------------------------------
106
+ # The default css file the plugin should use if it can not load
107
+ # the themes from Bootswatch
108
+ #
109
+ # values: string (URI)
110
+ # default: https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css
111
+ #
112
+ # bootswatchApiUrl
113
+ # --------------------------------------------------------------------------
114
+ # The url for the bootswatch api
115
+ #
116
+ # values: string (URI)
117
+ # default: http://api.bootswatch.com
118
+ #
119
+ # bootswatchApiVersion
120
+ # --------------------------------------------------------------------------
121
+ # The version of the bootswatch api to use
122
+ #
123
+ # values: integer
124
+ # default: 3
125
+ #
126
+ # localFeed
127
+ # --------------------------------------------------------------------------
128
+ # The path to a JSON file that contains the themes you want to use.
129
+ # If this parameter is used, the control will be loaded the themes
130
+ # from here and not go to the bootswatchApiUrl. A sample of the json
131
+ # file can be found at themes.json
132
+ #
133
+ # values: string
134
+ # default: empty string
135
+ #
136
+ # excludeBootswatch
137
+ # --------------------------------------------------------------------------
138
+ # Comma separated list of BootSwatch names (e.g. Slate,Yeti) that
139
+ # should be excluded from the rendered <ul> or <select>
140
+ #
141
+ # values: string
142
+ # default: empty string
143
+ #
144
+ # hideOnReload
145
+ # --------------------------------------------------------------------------
146
+ # Number of milliseconds (msec) the current page is hidden (display: none)
147
+ # to prevent "DOM flicker" aka "FOUC" (Flash of unstyled content) while
148
+ # the css file is loaded|activated
149
+ #
150
+ # values: integer
151
+ # default: 150
152
+ #
153
+ # ----------------------------------------------------------------------------
154
+ reloadPageOnChange: false # reload current page, if theme has been changed
155
+ retries: 30 # retry to load theme list from API
156
+ preview_page: /pages/public/tools/previewer/current_theme/
157
+ menu_icon_family: mdib
158
+ menu_icon_color: var(--md-gray-500)
159
+ menu_icon_size: mdib-sm
160
+ cssThemeLink: bootstrapTheme
161
+ defaultCssFile: "https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css"
162
+ bootswatchApiUrl: "https://bootswatch.com/api"
163
+ bootswatchApiVersion: 5
164
+ loadFromBootswatch: true
165
+ localThemes: /assets/data/themes.json
166
+ excludeBootswatch: "Default, default, Lux, Sketchy"
167
+ includeBootswatch:
168
+ skipIncludeBootswatch:
169
+
170
+ # ------------------------------------------------------------------------------
171
+ # END config
@@ -1631,6 +1631,32 @@ resources:
1631
1631
  js: []
1632
1632
  init_function: [ j1.adapter.waves.init ]
1633
1633
 
1634
+ # ----------------------------------------------------------------------------
1635
+ # jsCookies
1636
+ # JavaScript API for handling cookies
1637
+ #
1638
+ # See: https://github.com/js-cookie/js-cookie/
1639
+ #
1640
+ - name: jsCookie
1641
+ resource:
1642
+ enabled: false
1643
+
1644
+ id: js-cookie
1645
+ comment: Module jsCookie
1646
+ region: head
1647
+ layout: [ all ]
1648
+ required: ondemand
1649
+ preload: false
1650
+ script_load: defer
1651
+ dependencies: false
1652
+ pass_init_data: false
1653
+
1654
+ data:
1655
+ css: []
1656
+ files: []
1657
+ js: [ modules/js-cookies/js/js.cookie ]
1658
+ init_function: []
1659
+
1634
1660
  # ----------------------------------------------------------------------------
1635
1661
  # Particles
1636
1662
  #
@@ -57,7 +57,7 @@
57
57
  <id>{{ page.url | absolute_url | xml_escape }}</id>
58
58
  <post_limited>{{ limit_posts }}</post_limited>
59
59
  <template_name>J1 Theme</template_name>
60
- <template_version>2024.2.0</template_version>
60
+ <template_version>2024.2.1</template_version>
61
61
 
62
62
  {% assign title = site.title | default: site.name %}
63
63
  {% if page.collection != "posts" %}