j1-template 2024.3.13 → 2024.3.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (193) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +1 -1
  3. data/_includes/themes/j1/layouts/layout_resource_generator.html +1 -4
  4. data/_includes/themes/j1/procedures/blocks/footer/boxes/social_media_icons.proc +24 -23
  5. data/_includes/themes/j1/procedures/layouts/content_writer.proc +4 -3
  6. data/_includes/themes/j1/procedures/layouts/default_writer.proc +37 -6
  7. data/_includes/themes/j1/procedures/layouts/module_writer.proc +31 -95
  8. data/_includes/themes/j1/procedures/layouts/resource_writer.proc +51 -29
  9. data/assets/data/amplitude.28.html +887 -0
  10. data/assets/data/amplitude.29.html +923 -0
  11. data/assets/data/amplitude.html +311 -46
  12. data/assets/data/banner.html +9 -7
  13. data/assets/data/masterslider.html +128 -7
  14. data/assets/data/panel.html +16 -65
  15. data/assets/theme/j1/adapter/js/amplitude.23.js +1165 -0
  16. data/assets/theme/j1/adapter/js/amplitude.24.js +1164 -0
  17. data/assets/theme/j1/adapter/js/amplitude.25.js +1268 -0
  18. data/assets/theme/j1/adapter/js/amplitude.js +294 -117
  19. data/assets/theme/j1/adapter/js/attic.js +14 -11
  20. data/assets/theme/j1/adapter/js/docsearch.js +2 -2
  21. data/assets/theme/j1/adapter/js/fab.js +2 -2
  22. data/assets/theme/j1/adapter/js/j1.js +8 -8
  23. data/assets/theme/j1/adapter/js/lazyLoader.js +60 -10
  24. data/assets/theme/j1/adapter/js/masonry.js +1 -1
  25. data/assets/theme/j1/adapter/js/masterslider.js +2 -2
  26. data/assets/theme/j1/adapter/js/particles.js +2 -2
  27. data/assets/theme/j1/adapter/js/scroller.js +2 -2
  28. data/assets/theme/j1/adapter/js/slick.js +2 -2
  29. data/assets/theme/j1/adapter/js/themes.js +1 -1
  30. data/assets/theme/j1/adapter/js/translator.js +2 -2
  31. data/assets/theme/j1/adapter/js/waves.js +1 -1
  32. data/assets/theme/j1/core/css/animate.css +1634 -1070
  33. data/assets/theme/j1/core/css/animate.css.map +1 -0
  34. data/assets/theme/j1/core/css/animate.min.css +2 -1
  35. data/assets/theme/j1/core/css/animate.min.css.map +1 -0
  36. data/assets/theme/j1/core/css/icon-fonts/fontawesome.css +3060 -1538
  37. data/assets/theme/j1/core/css/icon-fonts/fontawesome.css.map +1 -0
  38. data/assets/theme/j1/core/css/icon-fonts/fontawesome.min.css +2 -1
  39. data/assets/theme/j1/core/css/icon-fonts/fontawesome.min.css.map +1 -0
  40. data/assets/theme/j1/core/css/icon-fonts/iconify.css +2308 -1153
  41. data/assets/theme/j1/core/css/icon-fonts/iconify.css.map +1 -0
  42. data/assets/theme/j1/core/css/icon-fonts/iconify.min.css +2 -1
  43. data/assets/theme/j1/core/css/icon-fonts/iconify.min.css.map +1 -0
  44. data/assets/theme/j1/core/css/icon-fonts/mdi.css +16716 -8423
  45. data/assets/theme/j1/core/css/icon-fonts/mdi.css.map +1 -0
  46. data/assets/theme/j1/core/css/icon-fonts/mdi.min.css +2 -1
  47. data/assets/theme/j1/core/css/icon-fonts/mdi.min.css.map +1 -0
  48. data/assets/theme/j1/core/css/icon-fonts/mdib.css +5554 -2766
  49. data/assets/theme/j1/core/css/icon-fonts/mdib.css.map +1 -0
  50. data/assets/theme/j1/core/css/icon-fonts/mdib.min.css +2 -1
  51. data/assets/theme/j1/core/css/icon-fonts/mdib.min.css.map +1 -0
  52. data/assets/theme/j1/core/css/icon-fonts/mdil.css +742 -441
  53. data/assets/theme/j1/core/css/icon-fonts/mdil.css.map +1 -0
  54. data/assets/theme/j1/core/css/icon-fonts/mdil.min.css +2 -1
  55. data/assets/theme/j1/core/css/icon-fonts/mdil.min.css.map +1 -0
  56. data/assets/theme/j1/core/css/themes/bootstrap/bootstrap.css +6552 -3980
  57. data/assets/theme/j1/core/css/themes/bootstrap/bootstrap.css.map +1 -0
  58. data/assets/theme/j1/core/css/themes/bootstrap/bootstrap.min.css +2 -5
  59. data/assets/theme/j1/core/css/themes/bootstrap/bootstrap.min.css.map +1 -0
  60. data/assets/theme/j1/core/css/themes/unodark/bootstrap.css +6818 -4131
  61. data/assets/theme/j1/core/css/themes/unodark/bootstrap.css.map +1 -0
  62. data/assets/theme/j1/core/css/themes/unodark/bootstrap.min.css +2 -5
  63. data/assets/theme/j1/core/css/themes/unodark/bootstrap.min.css.map +1 -0
  64. data/assets/theme/j1/core/css/themes/unolight/bootstrap.css +18568 -11577
  65. data/assets/theme/j1/core/css/themes/unolight/bootstrap.css.map +1 -0
  66. data/assets/theme/j1/core/css/themes/unolight/bootstrap.min.css +2 -35
  67. data/assets/theme/j1/core/css/themes/unolight/bootstrap.min.css.map +1 -0
  68. data/assets/theme/j1/core/css/vendor.css +1771 -1043
  69. data/assets/theme/j1/core/css/vendor.css.map +1 -0
  70. data/assets/theme/j1/core/css/vendor.min.css +2 -1
  71. data/assets/theme/j1/core/css/vendor.min.css.map +1 -0
  72. data/assets/theme/j1/core/js/template.js +399 -447
  73. data/assets/theme/j1/core/js/template.min.js +7 -7
  74. data/assets/theme/j1/core/js/template.min.js.map +1 -1
  75. data/assets/theme/j1/modules/amplitudejs/css/theme/uno/dark/amplitude.css +4 -2
  76. data/assets/theme/j1/modules/amplitudejs/css/theme/uno/dark/player/compact.css +39 -4
  77. data/assets/theme/j1/modules/amplitudejs/css/theme/uno/dark/player/compact.min.css +1 -1
  78. data/assets/theme/j1/modules/amplitudejs/css/theme/uno/dark/player/large.css +57 -17
  79. data/assets/theme/j1/modules/amplitudejs/css/theme/uno/dark/player/large.min.css +1 -1
  80. data/assets/theme/j1/modules/amplitudejs/icons/player/blue/pause.png +0 -0
  81. data/assets/theme/j1/modules/amplitudejs/icons/player/blue/play.png +0 -0
  82. data/assets/theme/j1/modules/amplitudejs/icons/player/blue/play.svg +87 -0
  83. data/assets/theme/j1/modules/amplitudejs/icons/player/dark/skip-backward.svg +60 -0
  84. data/assets/theme/j1/modules/amplitudejs/icons/player/dark/skip-forward.svg +59 -0
  85. data/assets/theme/j1/modules/amplitudejs/js/amplitude.js +65 -21
  86. data/assets/theme/j1/modules/amplitudejs/js/amplitude.min.js +1 -1
  87. data/assets/theme/j1/modules/amplitudejs/js/tech/ytp.js +113 -0
  88. data/assets/theme/j1/modules/iconPicker/js/universal-icon-picker.js +471 -471
  89. data/assets/theme/j1/modules/j1LazyLoader/LICENSE +21 -0
  90. data/assets/theme/j1/modules/j1LazyLoader/js/j1Lazy.js +870 -0
  91. data/assets/theme/j1/modules/js-cookies/js/js.cookie.js +3 -3
  92. data/assets/theme/j1/modules/lazyCssLoader/js/main.0.js +166 -0
  93. data/assets/theme/j1/modules/lazyCssLoader/js/main.1.js +65 -0
  94. data/assets/theme/j1/modules/lazyCssLoader/js/main.js +66 -0
  95. data/assets/theme/j1/modules/lazyCssLoader/js/plugins/examplePlugin.js +13 -0
  96. data/assets/theme/j1/modules/lazyCssLoader/js/plugins/my-plugin.js +25 -0
  97. data/assets/theme/j1/modules/lazyCssLoader/js/plugins/plugin-interface.js +9 -0
  98. data/assets/theme/j1/modules/lazyCssLoader/js/plugins/pluginA.js +46 -0
  99. data/assets/theme/j1/modules/lazyLoader/js/plugins/README.md +324 -0
  100. data/assets/theme/j1/modules/lazyLoader/js/plugins/jquery.lazy.picture.js +188 -0
  101. data/assets/theme/j1/modules/lightGallery/js/lightgallery.js +1 -1
  102. data/assets/theme/j1/modules/lightGallery/js/plugins/lg-video.0.js +794 -0
  103. data/assets/theme/j1/modules/lightGallery/js/plugins/lg-video.js +151 -67
  104. data/assets/theme/j1/modules/slimSelect/js/select.js +1 -1
  105. data/assets/theme/j1/modules/slimSelect/js/select.min.js +3 -3
  106. data/assets/theme/j1/modules/themeSwitcher/js/switcher.js +2 -1
  107. data/assets/theme/j1/modules/videojs/js/plugins/players/dm/dailymotion.min.js +1 -1
  108. data/assets/theme/j1/modules/videojs/js/plugins/players/dm/icon/scalable/dailymotion.svg +62 -0
  109. data/assets/theme/j1/modules/videojs/js/plugins/players/yt/v3.0.0/youtube.js +832 -0
  110. data/assets/theme/j1/modules/videojs/js/plugins/players/yt/v3.0.0/youtube.min.js +17 -0
  111. data/assets/theme/j1/modules/videojs/js/plugins/players/yt/youtube.min.js +1 -1
  112. data/assets/theme/j1/modules/videojs/js/video.js +2 -2
  113. data/lib/j1/version.rb +1 -1
  114. data/lib/starter_web/README.md +577 -560
  115. data/lib/starter_web/_config.yml +2 -2
  116. data/lib/starter_web/_data/blocks/footer.yml +10 -5
  117. data/lib/starter_web/_data/blocks/panel.yml +2 -2
  118. data/lib/starter_web/_data/layouts/default.yml +14 -3
  119. data/lib/starter_web/_data/modules/amplitude.yml +145 -0
  120. data/lib/starter_web/_data/modules/defaults/amplitude.yml +29 -7
  121. data/lib/starter_web/_data/modules/defaults/lazyLoader.yml +2 -2
  122. data/lib/starter_web/_data/modules/gallery.yml +136 -0
  123. data/lib/starter_web/_data/modules/lazyLoader.0.yml +118 -0
  124. data/lib/starter_web/_data/modules/lazyLoader.yml +68 -31
  125. data/lib/starter_web/_data/modules/masonry.yml +4 -4
  126. data/lib/starter_web/_data/modules/masterslider.yml +118 -12
  127. data/lib/starter_web/_data/modules/navigator_menu.yml +831 -803
  128. data/lib/starter_web/_data/resources.yml +154 -190
  129. data/lib/starter_web/_data/templates/feed.xml +1 -1
  130. data/lib/starter_web/_includes/attributes.asciidoc +1 -0
  131. data/lib/starter_web/_plugins/asciidoctor/amplitude-block.rb +1 -1
  132. data/lib/starter_web/_plugins/asciidoctor/dailymotion-block.rb +1 -1
  133. data/lib/starter_web/_plugins/asciidoctor/gallery-block.rb +4 -2
  134. data/lib/starter_web/_plugins/asciidoctor/masonry-block.rb +1 -1
  135. data/lib/starter_web/_plugins/asciidoctor/videojs-block.rb +58 -46
  136. data/lib/starter_web/_plugins/asciidoctor/vimeo-block.rb +26 -19
  137. data/lib/starter_web/_plugins/asciidoctor/youtube-block.rb +30 -40
  138. data/lib/starter_web/_plugins/index/lunr.rb +1 -1
  139. data/lib/starter_web/assets/image/icons/lanus/favicon.ico +0 -0
  140. data/lib/starter_web/assets/image/icons/lanus/lanus-512x512.png +0 -0
  141. data/lib/starter_web/assets/image/icons/lanus/lanus.ico +0 -0
  142. data/lib/starter_web/assets/image/icons/lanus/lanus.png +0 -0
  143. data/lib/starter_web/assets/image/icons/lanus/scalable/lanus.svg +76 -0
  144. data/lib/starter_web/assets/image/icons/lanus/scalable/lanus_sw.svg +62 -0
  145. data/lib/starter_web/assets/image/modules/icons/social/scalable/icon-twitter-x-28 - social.svg +86 -0
  146. data/lib/starter_web/assets/image/modules/icons/social/scalable/icon-twitter-x-28.svg +64 -0
  147. data/lib/starter_web/assets/image/modules/icons/social/scalable/icon-twitter-x.svg +1 -0
  148. data/lib/starter_web/assets/image/modules/icons/social/twitter_x.png +0 -0
  149. data/lib/starter_web/package.json +7 -18
  150. data/lib/starter_web/pages/public/amplitude_yt_tester.adoc +218 -0
  151. data/lib/starter_web/pages/public/features/template.adoc +18 -8
  152. data/lib/starter_web/pages/public/features/template.asciidoc +758 -0
  153. data/lib/starter_web/pages/public/lazy_loader_tester.adoc +402 -0
  154. data/lib/starter_web/pages/public/manuals/ytdl/man.adoc +3020 -0
  155. data/lib/starter_web/pages/public/manuals/ytdl/man.md +2378 -0
  156. data/lib/starter_web/pages/public/tools/previewer/_includes/attributes.asciidoc +0 -16
  157. data/lib/starter_web/pages/public/tools/previewer/_includes/documents/amplitudejs.large.css.asciidoc +505 -0
  158. data/lib/starter_web/pages/public/tools/previewer/_includes/documents/frame.hover.html +69 -0
  159. data/lib/starter_web/pages/public/tools/previewer/_includes/documents/frame.nested.html +75 -0
  160. data/lib/starter_web/pages/public/tools/previewer/_includes/documents/frame.textarea.html +57 -0
  161. data/lib/starter_web/pages/public/tools/previewer/_includes/documents/my.content.html +112 -0
  162. data/lib/starter_web/pages/public/tools/previewer/preview_amplitudejs.adoc +172 -0
  163. data/lib/starter_web/pages/public/tour/_includes/attributes.asciidoc +2 -2
  164. data/lib/starter_web/pages/public/tour/_includes/documents/419_advanced_modals_demo.asciidoc +16 -16
  165. data/lib/starter_web/pages/public/tour/asciidoc_extensions.adoc +13 -3
  166. data/lib/starter_web/pages/public/tour/bootstrap_themes.adoc +12 -3
  167. data/lib/starter_web/pages/public/tour/highlghter_rouge.adoc +13 -3
  168. data/lib/starter_web/pages/public/tour/icon_fonts.adoc +12 -3
  169. data/lib/starter_web/pages/public/tour/modal_extentions.adoc +12 -6
  170. data/lib/starter_web/pages/public/tour/{playback_audio.adoc → play_audio.adoc} +207 -188
  171. data/lib/starter_web/pages/public/tour/{playback_video.adoc → play_video.adoc} +49 -51
  172. data/lib/starter_web/pages/public/tour/present_images.adoc +27 -5
  173. data/lib/starter_web/pages/public/tour/quicksearch.adoc +13 -3
  174. data/lib/starter_web/pages/public/tour/responsive_tables.adoc +13 -4
  175. data/lib/starter_web/pages/public/tour/typography.adoc +12 -3
  176. metadata +90 -22
  177. /data/assets/theme/j1/modules/{lazyLoader → j1LazyLoader/js}/plugins/README.md +0 -0
  178. /data/assets/theme/j1/modules/{lazyLoader/plugins/jquery.lazy.picture.js → j1LazyLoader/js/plugins/picture.js} +0 -0
  179. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.ajax.js +0 -0
  180. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.ajax.min.js +0 -0
  181. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.av.js +0 -0
  182. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.av.min.js +0 -0
  183. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.iframe.js +0 -0
  184. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.iframe.min.js +0 -0
  185. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.noop.js +0 -0
  186. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.noop.min.js +0 -0
  187. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.picture.min.js +0 -0
  188. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.script.js +0 -0
  189. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.script.min.js +0 -0
  190. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.vimeo.js +0 -0
  191. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.vimeo.min.js +0 -0
  192. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.youtube.js +0 -0
  193. /data/assets/theme/j1/modules/lazyLoader/{plugins → js/plugins}/jquery.lazy.youtube.min.js +0 -0
@@ -1,6 +1,5 @@
1
1
  /*! js-cookie v3.0.5 | MIT */
2
- ;
3
- (function (global, factory) {
2
+ ;(function (global, factory) {
4
3
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
5
4
  typeof define === 'function' && define.amd ? define(factory) :
6
5
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (function () {
@@ -8,7 +7,8 @@
8
7
  var exports = global.Cookies = factory();
9
8
  exports.noConflict = function () { global.Cookies = current; return exports; };
10
9
  })());
11
- })(this, (function () { 'use strict';
10
+ })(this, (function () {
11
+ "use strict";
12
12
 
13
13
  /* eslint-disable no-var */
14
14
  function assign (target) {
@@ -0,0 +1,166 @@
1
+ /*
2
+ # -----------------------------------------------------------------------------
3
+ # ~/theme_uno/modules/iconPicker/js/universal-icon-picker.js
4
+ # j1LazyLoader v.1.1.0 implementation for J1 Theme
5
+ #
6
+ # Product/Info:
7
+ # https://jekyll.one
8
+ # https://github.com/migliori/universal-icon-picker
9
+ #
10
+ # Copyright (C) 2023, 2024 Juergen Adams
11
+ # Copyright (C) 2023 Gilles Migliori
12
+ #
13
+ # J1 Template is licensed under the MIT License.
14
+ # See: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE
15
+ # -----------------------------------------------------------------------------
16
+ */
17
+
18
+ (function (root, factory) {
19
+ if (typeof define === 'function' && define.amd) {
20
+ define([], factory(root))
21
+ } else if (typeof exports === 'object') {
22
+ module.exports = factory(root)
23
+ } else {
24
+ root.j1LazyLoader = factory(root)
25
+ }
26
+ })(typeof global !== 'undefined' ? global : this.window || this.global, function (root) {
27
+
28
+ "use strict";
29
+
30
+ // Object to store current options
31
+ var options = {};
32
+
33
+ var customOptions = {
34
+ cssPlugin: 'pluginA.js',
35
+ };
36
+
37
+ var plugins = [];
38
+ var pluginsLoaded = false;
39
+
40
+ // var _this = this;
41
+
42
+ // Object for the public API
43
+ //var j1LazyLoader = {};
44
+
45
+ var j1LazyLoader = {
46
+ name: "LazyLoader"
47
+ };
48
+
49
+ var pluginManager = {
50
+ name: "pluginManager"
51
+ };
52
+
53
+ // ---------------------------------------------------------------------------
54
+ // methods
55
+ // ---------------------------------------------------------------------------
56
+ //
57
+ // Add a method dynamically
58
+ j1LazyLoader.loadPlugin = function(url) {
59
+ // ES-Module dynamisch laden
60
+ // const module = await import(url);
61
+ // const module = import(url);
62
+ const module = url;
63
+ if (module && module.init) {
64
+ // Plugin initialisieren
65
+ var plugin = module.init();
66
+ this.plugins.push(plugin);
67
+ console.log(`Plugin ${plugin.name} geladen`);
68
+ pluginsLoaded = true;
69
+ }
70
+
71
+ // try {
72
+ // // ES-Module dynamisch laden
73
+ // // const module = await import(url);
74
+ // // const module = import(url);
75
+ // const module = url;
76
+ // if (module && module.init) {
77
+ // // Plugin initialisieren
78
+ // const plugin = module.init();
79
+ // this.plugins.push(plugin);
80
+ // console.log(`Plugin ${plugin.name} geladen`);
81
+ // pluginsLoaded = true;
82
+ // }
83
+ // }
84
+ // catch (err) {
85
+ // console.error(`Fehler beim Laden des Plugins: ${err}`);
86
+ // }
87
+
88
+ };
89
+
90
+ // Add a method dynamically
91
+ j1LazyLoader.initializePlugins = function () {
92
+ plugins.forEach(plugin => plugin.run());
93
+ };
94
+
95
+ j1LazyLoader.pluginManager = function (customOptions) {
96
+ // var plugins = [];
97
+
98
+ // Plugin laden
99
+ // async function loadPlugin(url) {
100
+ // loadPlugin: (url) => {
101
+ // function loadPlugin(url) {
102
+
103
+ // Object.defineProperty(j1LazyLoader.pluginManager, 'loadPlugin', {
104
+ // value: function(url) {
105
+ // try {
106
+ // // ES-Module dynamisch laden
107
+ // // const module = await import(url);
108
+ // const module = import(url);
109
+ // if (module && module.init) {
110
+ // const plugin = module.init(); // Plugin initialisieren
111
+ // this.plugins.push(plugin);
112
+ // console.log(`Plugin ${plugin.name} geladen`);
113
+ // pluginsLoaded = true;
114
+ // }
115
+ // }
116
+ // catch (err) {
117
+ // console.error(`Fehler beim Laden des Plugins: ${err}`);
118
+ // }
119
+ // },
120
+ // enumerable: true,
121
+ // configurable: true,
122
+ // writable: true
123
+ // });
124
+
125
+ // Alle Plugins initialisieren
126
+ // initializePlugins: () => {
127
+ // function initializePlugins(url) {
128
+ // plugins.forEach(plugin => plugin.run());
129
+ // }
130
+
131
+ // Object.defineProperty(j1LazyLoader.pluginManager, 'initializePlugins', {
132
+ // value: function(url) {
133
+ // plugins.forEach(plugin => plugin.run());
134
+ // },
135
+ // enumerable: true,
136
+ // configurable: true,
137
+ // writable: true
138
+ // });
139
+
140
+ } // END j1LazyLoader.pluginManager
141
+
142
+ j1LazyLoader.init = function (customOptions) {
143
+ var pluginURL = customOptions.cssPlugin;
144
+
145
+ // Plugins dynamisch laden
146
+ j1LazyLoader.loadPlugin(pluginURL);
147
+
148
+ // Alle Plugins initialisieren
149
+ var dependencies_plugins_ready = setInterval (() => {
150
+ if (pluginsLoaded) {
151
+ j1LazyLoader.initializePlugins();
152
+
153
+ clearInterval(dependencies_plugins_ready);
154
+ } // END pageVisible
155
+ }, 10); // END dependencies_plugins_ready
156
+
157
+ return;
158
+
159
+ } // END j1LazyLoader.init
160
+
161
+ // Make j1LazyLoader available globally.
162
+ root.j1LazyLoader = j1LazyLoader;
163
+
164
+ return j1LazyLoader;
165
+
166
+ })
@@ -0,0 +1,65 @@
1
+ /*
2
+ # -----------------------------------------------------------------------------
3
+ # ~/theme_uno/modules/iconPicker/js/universal-icon-picker.js
4
+ # j1LazyLoader v.1.1.0 implementation for J1 Theme
5
+ #
6
+ # Product/Info:
7
+ # https://jekyll.one
8
+ # https://github.com/migliori/universal-icon-picker
9
+ #
10
+ # Copyright (C) 2023, 2024 Juergen Adams
11
+ # Copyright (C) 2023 Gilles Migliori
12
+ #
13
+ # J1 Template is licensed under the MIT License.
14
+ # See: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE
15
+ # -----------------------------------------------------------------------------
16
+ */
17
+
18
+ (function (root, factory) {
19
+ if (typeof define === 'function' && define.amd) {
20
+ define([], factory(root))
21
+ } else if (typeof exports === 'object') {
22
+ module.exports = factory(root)
23
+ } else {
24
+ root.j1LazyLoader = factory(root)
25
+ }
26
+ })(typeof global !== 'undefined' ? global : this.window || this.global, function (root) {
27
+
28
+ "use strict";
29
+
30
+ // ---------------------------------------------------------------------------
31
+ // methods
32
+ // ---------------------------------------------------------------------------
33
+
34
+ class Application {
35
+
36
+ constructor() {
37
+ this.features = {};
38
+ }
39
+
40
+ addFeature(name, fn) {
41
+ this.features[name] = fn;
42
+ }
43
+
44
+ useFeature(name) {
45
+ if (this.features[name]) {
46
+ this.features[name]();
47
+ } else {
48
+ console.log(`Feature ${name} not found`);
49
+ }
50
+ }
51
+
52
+ }
53
+
54
+ const app = new Application();
55
+
56
+ // Plugins statisch laden
57
+ import myPlugin from './plugins/my-plugin.js';
58
+
59
+ // Plugins registrieren
60
+ myPlugin.register(app);
61
+
62
+ // Plugin-Funktionalität nutzen
63
+ app.useFeature('myFeature');
64
+
65
+ })
@@ -0,0 +1,66 @@
1
+ /*
2
+ # -----------------------------------------------------------------------------
3
+ # ~/theme_uno/modules/iconPicker/js/universal-icon-picker.js
4
+ # j1LazyLoader v.1.1.0 implementation for J1 Theme
5
+ #
6
+ # Product/Info:
7
+ # https://jekyll.one
8
+ # https://github.com/migliori/universal-icon-picker
9
+ #
10
+ # Copyright (C) 2023, 2024 Juergen Adams
11
+ # Copyright (C) 2023 Gilles Migliori
12
+ #
13
+ # J1 Template is licensed under the MIT License.
14
+ # See: https://github.com/jekyll-one-org/j1-template/blob/main/LICENSE
15
+ # -----------------------------------------------------------------------------
16
+ */
17
+
18
+ (function (root, factory) {
19
+ if (typeof define === 'function' && define.amd) {
20
+ define([], factory(root))
21
+ } else if (typeof exports === 'object') {
22
+ module.exports = factory(root)
23
+ } else {
24
+ root.j1LazyLoader = factory(root)
25
+ }
26
+ })(typeof global !== 'undefined' ? global : this.window || this.global, function (root) {
27
+
28
+ "use strict";
29
+
30
+ // coreApp.js
31
+
32
+ class PluginManager {
33
+ constructor() {
34
+ this.plugins = [];
35
+ }
36
+
37
+ // Registrierung eines Plugins
38
+ registerPlugin(plugin) {
39
+ if (typeof plugin.init === 'function') {
40
+ plugin.init(this);
41
+ this.plugins.push(plugin);
42
+ }
43
+ }
44
+
45
+ // Hook-Aufrufe zur Plugin-Interaktion
46
+ triggerHook(hookName, ...args) {
47
+ this.plugins.forEach(plugin => {
48
+ if (typeof plugin[hookName] === 'function') {
49
+ plugin[hookName](...args);
50
+ }
51
+ });
52
+ }
53
+ }
54
+
55
+ export const pluginManager = new PluginManager();
56
+
57
+ // Hauptfunktionalität der Anwendung
58
+ function mainAppFunction() {
59
+ console.log('Hauptanwendung läuft.');
60
+ // Plugins können durch einen Hook aufgerufen werden
61
+ pluginManager.triggerHook('onStart');
62
+ }
63
+
64
+ export default mainAppFunction;
65
+
66
+ })
@@ -0,0 +1,13 @@
1
+ // examplePlugin.js
2
+
3
+ export const examplePlugin = {
4
+ init(app) {
5
+ console.log('Example Plugin wurde initialisiert.');
6
+ // Plugin kann auf APIs oder den State der Hauptanwendung zugreifen
7
+ this.app = app;
8
+ },
9
+
10
+ onStart() {
11
+ console.log('Example Plugin reagiert auf den Start der Hauptanwendung.');
12
+ },
13
+ };
@@ -0,0 +1,25 @@
1
+ // my-plugin.js
2
+ // import PluginInterface from './plugin-interface.js';
3
+
4
+ class PluginInterface {
5
+ constructor() {}
6
+
7
+ // Diese Methode muss jedes Plugin implementieren
8
+ register(app) {
9
+ throw new Error("register method must be implemented");
10
+ }
11
+ }
12
+
13
+ class MyPlugin extends PluginInterface {
14
+ register(app) {
15
+ // Plugin-spezifische Logik, die zur Hauptanwendung beiträgt
16
+ console.log("MyPlugin registered");
17
+
18
+ // z.B. eine neue Funktion zu der Anwendung hinzufügen
19
+ app.addFeature('myFeature', () => {
20
+ console.log('MyFeature is working');
21
+ });
22
+ }
23
+ }
24
+
25
+ export default new MyPlugin();
@@ -0,0 +1,9 @@
1
+ // plugin-interface.js
2
+ export default class PluginInterface {
3
+ constructor() {}
4
+
5
+ // Diese Methode muss jedes Plugin implementieren
6
+ register(app) {
7
+ throw new Error("register method must be implemented");
8
+ }
9
+ }
@@ -0,0 +1,46 @@
1
+ /*
2
+ * jQuery & Zepto Lazy - AJAX Plugin - v1.4
3
+ * http://jquery.eisbehr.de/lazy/
4
+ *
5
+ * Copyright 2012 - 2018, Daniel 'Eisbehr' Kern
6
+ *
7
+ * Dual licensed under the MIT and GPL-2.0 licenses:
8
+ * http://www.opensource.org/licenses/mit-license.php
9
+ * http://www.gnu.org/licenses/gpl-2.0.html
10
+ */
11
+ "use strict";
12
+
13
+ // my-plugin.js
14
+ class PluginInterface {
15
+ constructor() {}
16
+
17
+ // Diese Methode muss jedes Plugin implementieren
18
+ register(app) {
19
+ throw new Error("register method must be implemented");
20
+ }
21
+ }
22
+
23
+ var j1LazyLoader = {};
24
+
25
+ var PluginA = {
26
+ name: 'PluginA',
27
+ };
28
+
29
+ // j1LazyLoader.PluginA.init = function() {
30
+ PluginA.init = function() {
31
+ return {
32
+ name: 'PluginA',
33
+ run() {
34
+ console.log('PluginA wird ausgeführt!');
35
+ }
36
+ };
37
+ }(window.j1LazyLoader.PluginA);
38
+
39
+ // export function init() {
40
+ // return {
41
+ // name: 'PluginA',
42
+ // run() {
43
+ // console.log('PluginA wird ausgeführt!');
44
+ // }
45
+ // };
46
+ // }