j1-template 2021.3.2 → 2022.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (276) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/blocks/ads/ad.html +14 -14
  3. data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +4 -4
  4. data/_includes/themes/j1/layouts/content_generator_post.html +4 -4
  5. data/_includes/themes/j1/modules/connectors/analytic/google-analytics.html +3 -13
  6. data/_includes/themes/j1/modules/connectors/comment/hyvor.html +4 -5
  7. data/_includes/themes/j1/modules/navigator/generator.html +9 -11
  8. data/_includes/themes/j1/modules/search/docsearch.html +1 -1
  9. data/_includes/themes/j1/procedures/global/create_bs_button.proc +5 -5
  10. data/_includes/themes/j1/procedures/global/create_word_cloud.proc +5 -3
  11. data/_includes/themes/j1/procedures/layouts/module_writer.proc +1 -1
  12. data/_includes/themes/j1/procedures/posts/collate_timeline.proc +3 -3
  13. data/_includes/themes/j1/procedures/posts/create_series_header.proc +1 -1
  14. data/_layouts/default.html +66 -22
  15. data/_layouts/home.html +1 -1
  16. data/_layouts/raw.html +2 -1
  17. data/assets/data/article_navigator/index.html +1 -1
  18. data/assets/data/authclient.html +11 -11
  19. data/assets/data/banner.html +7 -25
  20. data/assets/data/cookieconsent.html +20 -20
  21. data/assets/data/{fam.html → fab.html} +42 -24
  22. data/assets/data/gallery_customizer.html +6 -6
  23. data/assets/data/menu.html +13 -13
  24. data/assets/data/mmenu.html +2 -2
  25. data/assets/data/panel.html +17 -23
  26. data/assets/data/private.json +1 -1
  27. data/assets/data/quicklinks.html +6 -7
  28. data/assets/data/rtext_resizer.html +1 -1
  29. data/assets/data/themes.bootswatch.json +75 -0
  30. data/assets/data/themes.json +6 -6
  31. data/assets/data/translator.html +23 -23
  32. data/assets/error_pages/HTTP445.html +110 -0
  33. data/assets/themes/j1/adapter/js/bmd.js +1 -1
  34. data/assets/themes/j1/adapter/js/clipboard.js +1 -1
  35. data/assets/themes/j1/adapter/js/cookieConsent.js +19 -10
  36. data/assets/themes/j1/adapter/js/{fam.js → fab.js} +121 -116
  37. data/assets/themes/j1/adapter/js/j1.js +258 -190
  38. data/assets/themes/j1/adapter/js/mmenu.js +18 -24
  39. data/assets/themes/j1/adapter/js/navigator.js +6 -4
  40. data/assets/themes/j1/adapter/js/themer.js +13 -4
  41. data/assets/themes/j1/adapter/js/toccer.js +37 -76
  42. data/assets/themes/j1/adapter/js/translator.js +10 -2
  43. data/assets/themes/j1/core/country-flags/css/theme/uno.min.css +15 -0
  44. data/assets/themes/j1/core/css/icon-fonts/mdi.css +22307 -0
  45. data/assets/themes/j1/core/css/icon-fonts/mdi.min.css +1 -0
  46. data/assets/themes/j1/core/css/icon-fonts/mdil.css +1222 -0
  47. data/assets/themes/j1/core/css/icon-fonts/mdil.min.css +1 -0
  48. data/assets/themes/j1/core/css/icon-fonts/twemoji.css +4 -0
  49. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.css +5341 -4730
  50. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.min.css +3 -1
  51. data/assets/themes/j1/core/css/themes/theme_vapor/bootstrap.css +8301 -0
  52. data/assets/themes/j1/core/css/themes/theme_vapor/bootstrap.min.css +3 -0
  53. data/assets/themes/j1/core/css/themes/{uno-dark → unodark}/bootstrap.css +5284 -4646
  54. data/assets/themes/j1/core/css/themes/unodark/bootstrap.min.css +3 -0
  55. data/assets/themes/j1/core/css/themes/{uno-light → unolight}/bootstrap.css +12188 -12734
  56. data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +23 -0
  57. data/assets/themes/j1/core/css/vendor.css +2 -28
  58. data/assets/themes/j1/core/css/vendor.min.css +1 -1
  59. data/assets/themes/j1/core/js/template.js +111 -29
  60. data/assets/themes/j1/core/js/template.min.js +1 -1
  61. data/assets/themes/j1/core/js/template.min.js.map +1 -1
  62. data/assets/themes/j1/modules/bmd/js/bmd.js +2280 -0
  63. data/assets/themes/j1/modules/bmd/js/bmd.min.js +20 -0
  64. data/assets/themes/j1/modules/bootstrap/js/bootstrap.js +5072 -0
  65. data/assets/themes/j1/modules/bootstrap/js/bootstrap.min.js +7 -0
  66. data/assets/themes/j1/modules/bootstrap/js/bootstrap.min.js.map +1 -0
  67. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.js +19 -17
  68. data/assets/themes/j1/modules/cookieConsent/js/cookieConsent.min.js +1 -1
  69. data/assets/themes/j1/modules/cryptoJS/js/aes.js +35 -0
  70. data/assets/themes/j1/modules/cryptoJS/js/aes.min.js +35 -0
  71. data/assets/themes/j1/modules/cryptoJS/js/hmac-md5.js +21 -0
  72. data/assets/themes/j1/modules/cryptoJS/js/hmac-ripemd160.js +31 -0
  73. data/assets/themes/j1/modules/cryptoJS/js/hmac-sha1.js +17 -0
  74. data/assets/themes/j1/modules/cryptoJS/js/hmac-sha224.js +19 -0
  75. data/assets/themes/j1/modules/cryptoJS/js/hmac-sha256.js +18 -0
  76. data/assets/themes/j1/modules/cryptoJS/js/hmac-sha3.js +21 -0
  77. data/assets/themes/j1/modules/cryptoJS/js/hmac-sha384.js +27 -0
  78. data/assets/themes/j1/modules/cryptoJS/js/hmac-sha512.js +25 -0
  79. data/assets/themes/j1/modules/cryptoJS/js/md5.js +19 -0
  80. data/assets/themes/j1/modules/cryptoJS/js/pbkdf2.js +19 -0
  81. data/assets/themes/j1/modules/cryptoJS/js/rabbit-legacy.js +36 -0
  82. data/assets/themes/j1/modules/cryptoJS/js/rabbit.js +36 -0
  83. data/assets/themes/j1/modules/cryptoJS/js/rc4.js +33 -0
  84. data/assets/themes/j1/modules/cryptoJS/js/ripemd160.js +29 -0
  85. data/assets/themes/j1/modules/cryptoJS/js/sha1.js +15 -0
  86. data/assets/themes/j1/modules/cryptoJS/js/sha224.js +17 -0
  87. data/assets/themes/j1/modules/cryptoJS/js/sha256.js +16 -0
  88. data/assets/themes/j1/modules/cryptoJS/js/sha3.js +19 -0
  89. data/assets/themes/j1/modules/cryptoJS/js/sha384.js +25 -0
  90. data/assets/themes/j1/modules/cryptoJS/js/sha512.js +23 -0
  91. data/assets/themes/j1/modules/cryptoJS/js/tripledes.js +51 -0
  92. data/assets/themes/j1/modules/deeplAPI/js/deeplAPI.2.js +460 -0
  93. data/assets/themes/j1/modules/deeplAPI/js/deeplAPI.js +379 -353
  94. data/assets/themes/j1/modules/deeplAPI/js/deeplAPI.min.js +1 -1
  95. data/assets/themes/j1/modules/{fam/css/theme/uno/fam.css → fab/css/theme/uno/fab.css} +32 -28
  96. data/assets/themes/j1/modules/{fam/css/theme/uno/fam.min.css → fab/css/theme/uno/fab.min.css} +3 -3
  97. data/assets/themes/j1/modules/{materialize → fab}/js/cash.js +20 -2
  98. data/assets/themes/j1/modules/{fam/js/fam.js → fab/js/fab.js} +4 -2
  99. data/assets/themes/j1/modules/gtag-opt-in/js/gtag-opt-in.js +107 -0
  100. data/assets/themes/j1/modules/{util/js/gtag-opt-in.js → gtag-opt-in/js/gtag-opt-in.min.js} +15 -1
  101. data/assets/themes/j1/modules/lightGallery/js/modules/lg-thumbnail.min.js +4 -1
  102. data/assets/themes/j1/modules/materialize/js/autocomplete.js +1 -1
  103. data/assets/themes/j1/modules/materialize/js/bin/materialize.js +12374 -0
  104. data/assets/themes/j1/modules/materialize/js/bin/materialize.min.js +6 -0
  105. data/assets/themes/j1/modules/materialize/js/global.js +1 -1
  106. data/assets/themes/j1/modules/materialize/js/select.js +1 -1
  107. data/assets/themes/j1/modules/materialize/js/{tapTarget.js → tapTarget.cash.js} +1 -1
  108. data/assets/themes/j1/modules/materialize/js/tapTarget.jQuery.js +187 -0
  109. data/assets/themes/j1/modules/msDropdown/css/themes/uno/msDropdown.css +278 -0
  110. data/assets/themes/j1/modules/popper/js/popper.js +1670 -2346
  111. data/assets/themes/j1/modules/popper/js/popper.min.js +6 -4
  112. data/assets/themes/j1/modules/popper/js/popper.min.js.map +1 -1
  113. data/assets/themes/j1/modules/scroller/js/scroller.js +6 -6
  114. data/assets/themes/j1/modules/scroller/js/scroller.min.js +1 -1
  115. data/assets/themes/j1/modules/translator/js/translator.js +6 -2
  116. data/assets/themes/j1/modules/translator/js/translator.min.js +1 -1
  117. data/assets/themes/j1/modules/twemoji/js/picker/twemoji-picker.js +2 -2
  118. data/assets/themes/j1/modules/twemoji/js/picker/twemoji-picker.min.js +1 -1
  119. data/exe/j1 +6 -7
  120. data/lib/j1/commands/generate.rb +15 -16
  121. data/lib/j1/version.rb +1 -1
  122. data/lib/starter_web/Gemfile +7 -1
  123. data/lib/starter_web/_config.yml +21 -24
  124. data/lib/starter_web/_data/_defaults/j1_config.yml +1 -1
  125. data/lib/starter_web/_data/_defaults/private.yml +3 -2
  126. data/lib/starter_web/_data/_defaults/resources.yml +1 -1
  127. data/lib/starter_web/_data/blocks/banner.yml +71 -68
  128. data/lib/starter_web/_data/blocks/defaults/banner.yml +5 -5
  129. data/lib/starter_web/_data/blocks/defaults/panel.yml +3 -3
  130. data/lib/starter_web/_data/blocks/panel.yml +171 -73
  131. data/lib/starter_web/_data/builder/defaults/_blog_navigator.yml +396 -0
  132. data/lib/starter_web/_data/builder/defaults/blog_navigator.yml +77 -64
  133. data/lib/starter_web/_data/j1_config.yml +3 -3
  134. data/lib/starter_web/_data/layouts/article_navigator.yml +1 -1
  135. data/lib/starter_web/_data/layouts/blog_archive.yml +1 -1
  136. data/lib/starter_web/_data/layouts/collection.yml +1 -1
  137. data/lib/starter_web/_data/layouts/default.yml +1 -1
  138. data/lib/starter_web/_data/layouts/home.yml +6 -26
  139. data/lib/starter_web/_data/layouts/news_panel_posts.yml +1 -1
  140. data/lib/starter_web/_data/layouts/page.yml +1 -1
  141. data/lib/starter_web/_data/layouts/post.yml +1 -1
  142. data/lib/starter_web/_data/modules/defaults/attics.yml +1 -1
  143. data/lib/starter_web/_data/modules/defaults/{fam.yml → fab.yml} +8 -7
  144. data/lib/starter_web/_data/modules/defaults/navigator.yml +3 -0
  145. data/lib/starter_web/_data/modules/defaults/rtable.yml +2 -1
  146. data/lib/starter_web/_data/modules/defaults/scoller.yml +33 -0
  147. data/lib/starter_web/_data/modules/defaults/themer.yml +1 -1
  148. data/lib/starter_web/_data/modules/defaults/toccer.yml +5 -4
  149. data/lib/starter_web/_data/modules/{fam.yml → fab.yml} +31 -31
  150. data/lib/starter_web/_data/modules/scroller.yml +2 -2
  151. data/lib/starter_web/_data/modules/toccer.yml +3 -5
  152. data/lib/starter_web/_data/modules/translator.yml +3 -3
  153. data/lib/starter_web/_data/private.yml +3 -2
  154. data/lib/starter_web/_data/resources.yml +72 -33
  155. data/lib/starter_web/_includes/attributes.asciidoc +121 -122
  156. data/lib/starter_web/_plugins/encodeBase64.rb +46 -0
  157. data/lib/starter_web/_plugins/encryptAES.rb +53 -0
  158. data/lib/starter_web/_plugins/filters.rb +2 -1
  159. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  160. data/lib/starter_web/_plugins/minifyJSON.rb +2 -2
  161. data/lib/starter_web/assets/images/pages/roundtrip/500_themes/themes-menu-1280x800.jpg +0 -0
  162. data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +1 -4
  163. data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.adoc +2 -2
  164. data/lib/starter_web/collections/posts/public/featured/_posts/2021-02-01-site-generators.adoc +2 -2
  165. data/lib/starter_web/collections/posts/public/featured/_posts/2021-03-03-about-j1.adoc +2 -2
  166. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-wiki-series.adoc +1 -1
  167. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-wiki-series.adoc +1 -1
  168. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-wiki-series.adoc +2 -2
  169. data/lib/starter_web/index.html +1 -1
  170. data/lib/starter_web/package.json +1 -1
  171. data/lib/starter_web/pages/_test_pages/100_side-bar-tester.adoc +244 -0
  172. data/lib/starter_web/pages/_test_pages/_includes/attributes.asciidoc +110 -0
  173. data/lib/starter_web/pages/_test_pages/_includes/documents/100_gistblock.asciidoc +28 -0
  174. data/lib/starter_web/pages/_test_pages/_includes/documents/410_bottom_info.asciidoc +14 -0
  175. data/lib/starter_web/pages/_test_pages/_includes/documents/410_bottom_left_warning.asciidoc +11 -0
  176. data/lib/starter_web/pages/_test_pages/_includes/documents/410_bottom_right_danger.asciidoc +11 -0
  177. data/lib/starter_web/pages/_test_pages/_includes/documents/410_central_success.asciidoc +11 -0
  178. data/lib/starter_web/pages/_test_pages/_includes/documents/410_full_height_left_info.asciidoc +11 -0
  179. data/lib/starter_web/pages/_test_pages/_includes/documents/410_full_height_right_success.asciidoc +11 -0
  180. data/lib/starter_web/pages/_test_pages/_includes/documents/410_table_bs_modal_examples.asciidoc +47 -0
  181. data/lib/starter_web/pages/_test_pages/_includes/documents/410_top_info.asciidoc +11 -0
  182. data/lib/starter_web/pages/_test_pages/_includes/documents/410_top_left_info.asciidoc +11 -0
  183. data/lib/starter_web/pages/_test_pages/_includes/documents/410_top_right_success.asciidoc +11 -0
  184. data/lib/starter_web/pages/_test_pages/_includes/documents/419_advanced_modals_demo.asciidoc +337 -0
  185. data/lib/starter_web/pages/_test_pages/_includes/documents/tables/bs_modal_examples.asciidoc +47 -0
  186. data/lib/starter_web/pages/_test_pages/accordion-01-tester.adoc +220 -0
  187. data/lib/starter_web/pages/_test_pages/accordion-02-tester.adoc +177 -0
  188. data/lib/starter_web/pages/_test_pages/accordion-03-tester.adoc +148 -0
  189. data/lib/starter_web/pages/_test_pages/attribute-changes-01-tester.adoc +226 -0
  190. data/lib/starter_web/pages/_test_pages/backdrop-tester.adoc +109 -0
  191. data/lib/starter_web/pages/_test_pages/button-tester-1.adoc +127 -0
  192. data/lib/starter_web/pages/_test_pages/card-tester.adoc +128 -0
  193. data/lib/starter_web/pages/_test_pages/cookieConsent.adoc +96 -0
  194. data/lib/starter_web/pages/_test_pages/deepl.0.adoc +258 -0
  195. data/lib/starter_web/pages/_test_pages/deepl.adoc +204 -0
  196. data/lib/starter_web/pages/_test_pages/desandro-button.adoc +171 -0
  197. data/lib/starter_web/pages/_test_pages/desandro.adoc +147 -0
  198. data/lib/starter_web/pages/_test_pages/flipcard-1-tester.adoc +308 -0
  199. data/lib/starter_web/pages/_test_pages/formular-01-tester.adoc +167 -0
  200. data/lib/starter_web/pages/_test_pages/formular-02-tester.adoc +727 -0
  201. data/lib/starter_web/pages/_test_pages/google-translate-tester.0.adoc +113 -0
  202. data/lib/starter_web/pages/_test_pages/google-translate-tester.1.adoc +233 -0
  203. data/lib/starter_web/pages/_test_pages/google-translate-tester.3.adoc +149 -0
  204. data/lib/starter_web/pages/_test_pages/google-translate-tester.4.adoc +239 -0
  205. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-2.adoc +183 -0
  206. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-3.adoc +235 -0
  207. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-4.adoc +222 -0
  208. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester-5.adoc +119 -0
  209. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester.1.adoc +236 -0
  210. data/lib/starter_web/pages/_test_pages/infinite-scroll-tester.adoc +225 -0
  211. data/lib/starter_web/pages/_test_pages/list-group-tester.adoc +265 -0
  212. data/lib/starter_web/pages/_test_pages/tictok.adoc +127 -0
  213. data/lib/starter_web/pages/public/about/about_site.adoc +1 -1
  214. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/000_intro.adoc +1 -1
  215. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/100_converter.adoc +1 -1
  216. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/200_themes.adoc +1 -1
  217. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/documentation.a2p +1 -1
  218. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/documentation.adoc +2 -2
  219. data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/multi.adoc +2 -2
  220. data/lib/starter_web/pages/public/asciidoc_skeletons/simple-document/simple.adoc +2 -2
  221. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +5 -5
  222. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +4 -4
  223. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +4 -3
  224. data/lib/starter_web/pages/public/blog/navigator/archive.html +4 -4
  225. data/lib/starter_web/pages/public/blog/navigator/index.html +1 -1
  226. data/lib/starter_web/pages/public/learn/quickstart.adoc +3 -3
  227. data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +2 -2
  228. data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +2 -2
  229. data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +6 -7
  230. data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +2 -2
  231. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +2 -2
  232. data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +3 -3
  233. data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +2 -2
  234. data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +4 -4
  235. data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +13 -11
  236. data/lib/starter_web/pages/public/learn/roundtrip/_includes/attributes.asciidoc +1 -1
  237. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_bottom_info.asciidoc +3 -3
  238. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_bottom_left_warning.asciidoc +1 -1
  239. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_bottom_right_danger.asciidoc +1 -1
  240. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_central_success.asciidoc +1 -1
  241. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_full_height_left_info.asciidoc +1 -1
  242. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_full_height_right_success.asciidoc +1 -1
  243. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_top_info.asciidoc +1 -1
  244. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_top_left_info.asciidoc +1 -1
  245. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_top_right_success.asciidoc +1 -1
  246. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/419_advanced_modals_demo.asciidoc +51 -51
  247. data/lib/starter_web/pages/public/learn/where_to_go.adoc +3 -3
  248. data/lib/starter_web/pages/public/legal/de/100_copyright.adoc +3 -3
  249. data/lib/starter_web/pages/public/legal/de/100_impress.adoc +3 -3
  250. data/lib/starter_web/pages/public/legal/de/300_privacy.adoc +7 -7
  251. data/lib/starter_web/pages/public/legal/de/400_comment_policy.adoc +3 -3
  252. data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +3 -3
  253. data/lib/starter_web/pages/public/legal/en/200_impress.adoc +3 -3
  254. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +6 -7
  255. data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +3 -3
  256. data/lib/starter_web/pages/public/manuals/dropdown-help.adoc +1 -1
  257. data/lib/starter_web/pages/public/panels/intro_panel/_includes/attributes.asciidoc +55 -0
  258. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +53 -5
  259. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +1688 -686
  260. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  261. data/lib/starter_web/utilsrv/package.json +1 -1
  262. metadata +107 -29
  263. data/assets/themes/j1/core/css/themes/uno-dark/bootstrap.min.css +0 -1
  264. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +0 -23
  265. data/assets/themes/j1/modules/bmd/css/bootstrap-material-design.css +0 -12177
  266. data/assets/themes/j1/modules/bmd/css/bootstrap-material-design.min.css +0 -8
  267. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.full.js +0 -6930
  268. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.js +0 -6936
  269. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.js.map +0 -1
  270. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.min.js +0 -1
  271. data/assets/themes/j1/modules/popper/js/popper.js.map +0 -1
  272. data/assets/themes/j1/modules/util/js/domready.js +0 -146
  273. data/lib/j1/commands/help.rb +0 -32
  274. data/lib/j1/commands/module.rb +0 -69
  275. data/lib/starter_web/_data/blocks/defaults/panel.1.yml +0 -256
  276. data/lib/starter_web/_data/blocks/defaults/panel.2.yml +0 -250
@@ -56,7 +56,7 @@
56
56
  // -----------------------------------------------------------------------
57
57
  init: function(options) {
58
58
  var _this = this;
59
- var logger = log4javascript.getLogger('');
59
+ var logger = log4javascript.getLogger('j1.scroller.core.init');
60
60
 
61
61
  logger.info('\n' + 'initializing plugin: started');
62
62
  logger.info('\n' + 'state: started');
@@ -169,7 +169,7 @@
169
169
  // -------------------------------------------------------------------------
170
170
  registerScrollEvent: function (options) {
171
171
  var _this = this;
172
- var logger = log4javascript.getLogger('');
172
+ var logger = log4javascript.getLogger('j1.scroller.core.registerScrollEvent');
173
173
 
174
174
  // scroller type infiniteScroll
175
175
  if (options.type === 'infiniteScroll') {
@@ -223,7 +223,7 @@
223
223
  // -------------------------------------------------------------------------
224
224
  getNewPost: function (options) {
225
225
  var _this = this;
226
- var logger = log4javascript.getLogger('');
226
+ var logger = log4javascript.getLogger('j1.scroller.core.getNewPost');
227
227
 
228
228
  logger.info('\n' + 'trigger loading ');
229
229
 
@@ -283,7 +283,7 @@
283
283
  // -------------------------------------------------------------------------
284
284
  getChildItemsByAjaxHTML: function (options, HTMLText) {
285
285
  var newHTML = document.createElement('html');
286
- var logger = log4javascript.getLogger('');
286
+ var logger = log4javascript.getLogger('j1.scroller.core.getChildItemsByAjaxHTML');
287
287
 
288
288
  logger.info('\n' + 'load new items');
289
289
  newHTML.innerHTML = HTMLText;
@@ -297,7 +297,7 @@
297
297
  // -------------------------------------------------------------------------
298
298
  appendNewItems: function (items) {
299
299
  var _this = this;
300
- var logger = log4javascript.getLogger('');
300
+ var logger = log4javascript.getLogger('j1.scroller.core.appendNewItems');
301
301
  var cookie_names = j1.getCookieNames();
302
302
  var user_translate = j1.readCookie(cookie_names.user_translate);
303
303
 
@@ -326,7 +326,7 @@
326
326
  // -------------------------------------------------------------------------
327
327
  infoLastPage: function (options) {
328
328
  var _this = this;
329
- var logger = log4javascript.getLogger('');
329
+ var logger = log4javascript.getLogger('j1.scroller.core.infoLastPage');
330
330
 
331
331
  logger.info('\n' + 'show: infoLastPage');
332
332
  $('.page-scroll-last').show();
@@ -12,4 +12,4 @@
12
12
  # For details, see https://jekyll.one
13
13
  # -----------------------------------------------------------------------------
14
14
  */
15
- (function(e,c,a,g){var d="scroller",f={type:"infiniteScroll",scrollOffset:100,elementScroll:false,firstPage:2,lastPage:false,infoLastPage:false,loadStatus:false,onInit:function(){},onBeforeLoad:function(){},onAfterLoad:function(){}};function b(i,h){this.element=i;this.settings=e.extend({},f,h);this.settings.elementID="#"+this.element.id;this.init(this.settings)}e.extend(b.prototype,{init:function(i){var m=this;var h=log4javascript.getLogger("");h.info("\ninitializing plugin: started");h.info("\nstate: started");if(i.elementScroll){m.scroller=m.element}else{m.scroller=c}if(i.loadStatus){var l='<div class="loader-ellips" style="display: none"> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> </div>';e(l).insertAfter(i.elementID)}if(i.infoLastPage){var j=i.lastPageInfo;e(j).insertAfter(i.elementID)}var k=setInterval(function(){if(j1.getState()==="finished"){if(i.type==="infiniteScroll"){h.info("\nprocessing mode: "+i.type);h.info("\nloading items from path: "+i.pagePath+"#");h.info("\nmonitoring element set to: "+this.scroller);m.registerScrollEvent(i)}if(i.type==="showOnScroll"){h.info("\nprocessing mode: "+i.type);h.info("\nloading items from path: "+i.pagePath+"#");h.info("\nmonitoring element set to: "+this.scroller);m.registerScrollEvent(i)}h.info("\ninitializing plugin: finished");h.info("\nstate: finished");clearInterval(k)}})},isInViewport:function(n,m){if(n.length==0){return}var j=jQuery(c);var q=j.scrollTop();var i=j.height();var k=q+i;var l=jQuery(n);var o=l.offset().top+m;var p=l.height();var h=o+p;return(o>=q&&o<k)||(h>q&&h<=k)||(p>i&&o<=q&&h>=k)},isBottomReached:function(s){var n=this;var h,p;var m=e(s.elementID).height();if(n.settings.elementScroll){var j=e(c);var r=j.scrollTop();var i=j.height();var l=r+i-s.scrollOffset;var k=e(s.elementID);var o=k.offset().top+m;var q=k.height();h=o+q;return(o>=r&&o<l)||(h>r&&h<=l)||(q>i&&o<=r&&h>=l)}else{return(c.innerHeight+c.pageYOffset+s.scrollOffset>=a.body.offsetHeight)}},registerScrollEvent:function(i){var j=this;var h=log4javascript.getLogger("");if(i.type==="infiniteScroll"){h.info("\nregister scroll event of type: "+i.type);j[i.id]=function(l){var k=j.settings;if(j.isBottomReached(k)){if(k.firstPage>k.lastPage){h.info("\nlast page detected on: "+k.lastPage);c.removeEventListener("scroll",j[k.id]);h.info("\nscroll event: removed");if(k.infoLastPage){j.infoLastPage(k)}return false}j.getNewPost(k)}};c.addEventListener("scroll",j[i.id]);h.info("\nscroll event: registered")}if(i.type==="showOnScroll"){h.info("\nregister scroll event of type: "+i.type);j[i.id]=function(k){if(j.isInViewport(e("#"+i.id),i.scrollOffset)){h.info("\nspecified container is in view: "+i.id);e("."+i.id).show(i.showDelay);h.info("\nremove eventHandler");c.removeEventListener("scroll",j[i.id])}};c.addEventListener("scroll",j[i.id])}},getNewPost:function(i){var k=this;var h=log4javascript.getLogger("");h.info("\ntrigger loading ");if(this.itemsLoaded===false){return false}this.itemsLoaded=false;if(i.loadStatus){h.info("\nshow: spinner");e(".loader-ellips").show()}var j=new XMLHttpRequest();j.onreadystatechange=function(){if(j.readyState==XMLHttpRequest.DONE){if(j.status==200){i.firstPage++;var l=k.getChildItemsByAjaxHTML(i,j.responseText);k.appendNewItems(l);h.info("\nloading new items: successful");if(i.loadStatus){h.info("\nhide: spinner");e(".loader-ellips").hide()}k.itemsLoaded=true}else{if(i.loadStatus){h.info("\nhide: spinner");e(".loader-ellips").hide()}h.error("\nloading new items failed, HTTP response: "+j.status);k.itemsLoaded=false}}};h.info("\nloading new items from path: "+i.pagePath+i.firstPage);j.open("GET",location.origin+i.pagePath+i.firstPage+"/index.html",true);j.send()},getChildItemsByAjaxHTML:function(j,i){var l=a.createElement("html");var h=log4javascript.getLogger("");h.info("\nload new items");l.innerHTML=i;var k=l.querySelectorAll(j.elementID+" > *");return k},appendNewItems:function(h){var l=this;var i=log4javascript.getLogger("");var k=j1.getCookieNames();var j=j1.readCookie(k.user_translate);i.info("\nappend new items");h.forEach(function(m){l.element.appendChild(m)});if(j.translationEnabled){i.info("\ntranslation enabled: "+j.translationEnabled);i.warn("\nskipped processing of dropcaps")}else{i.info("\npost processing: createDropCap");j1.core.createDropCap()}},infoLastPage:function(i){var j=this;var h=log4javascript.getLogger("");h.info("\nshow: infoLastPage");e(".page-scroll-last").show()}});e.fn[d]=function(h){return this.each(function(){if(!e.data(this,"plugin_"+d)){e.data(this,"plugin_"+d,new b(this,h))}})}})(jQuery,window,document);
15
+ (function(e,c,a,g){var d="scroller",f={type:"infiniteScroll",scrollOffset:100,elementScroll:false,firstPage:2,lastPage:false,infoLastPage:false,loadStatus:false,onInit:function(){},onBeforeLoad:function(){},onAfterLoad:function(){}};function b(i,h){this.element=i;this.settings=e.extend({},f,h);this.settings.elementID="#"+this.element.id;this.init(this.settings)}e.extend(b.prototype,{init:function(i){var m=this;var h=log4javascript.getLogger("j1.scroller.core.init");h.info("\ninitializing plugin: started");h.info("\nstate: started");if(i.elementScroll){m.scroller=m.element}else{m.scroller=c}if(i.loadStatus){var l='<div class="loader-ellips" style="display: none"> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> <span class="loader-ellips__dot"></span> </div>';e(l).insertAfter(i.elementID)}if(i.infoLastPage){var j=i.lastPageInfo;e(j).insertAfter(i.elementID)}var k=setInterval(function(){if(j1.getState()==="finished"){if(i.type==="infiniteScroll"){h.info("\nprocessing mode: "+i.type);h.info("\nloading items from path: "+i.pagePath+"#");h.info("\nmonitoring element set to: "+this.scroller);m.registerScrollEvent(i)}if(i.type==="showOnScroll"){h.info("\nprocessing mode: "+i.type);h.info("\nloading items from path: "+i.pagePath+"#");h.info("\nmonitoring element set to: "+this.scroller);m.registerScrollEvent(i)}h.info("\ninitializing plugin: finished");h.info("\nstate: finished");clearInterval(k)}})},isInViewport:function(n,m){if(n.length==0){return}var j=jQuery(c);var q=j.scrollTop();var i=j.height();var k=q+i;var l=jQuery(n);var o=l.offset().top+m;var p=l.height();var h=o+p;return(o>=q&&o<k)||(h>q&&h<=k)||(p>i&&o<=q&&h>=k)},isBottomReached:function(s){var n=this;var h,p;var m=e(s.elementID).height();if(n.settings.elementScroll){var j=e(c);var r=j.scrollTop();var i=j.height();var l=r+i-s.scrollOffset;var k=e(s.elementID);var o=k.offset().top+m;var q=k.height();h=o+q;return(o>=r&&o<l)||(h>r&&h<=l)||(q>i&&o<=r&&h>=l)}else{return(c.innerHeight+c.pageYOffset+s.scrollOffset>=a.body.offsetHeight)}},registerScrollEvent:function(i){var j=this;var h=log4javascript.getLogger("j1.scroller.core.registerScrollEvent");if(i.type==="infiniteScroll"){h.info("\nregister scroll event of type: "+i.type);j[i.id]=function(l){var k=j.settings;if(j.isBottomReached(k)){if(k.firstPage>k.lastPage){h.info("\nlast page detected on: "+k.lastPage);c.removeEventListener("scroll",j[k.id]);h.info("\nscroll event: removed");if(k.infoLastPage){j.infoLastPage(k)}return false}j.getNewPost(k)}};c.addEventListener("scroll",j[i.id]);h.info("\nscroll event: registered")}if(i.type==="showOnScroll"){h.info("\nregister scroll event of type: "+i.type);j[i.id]=function(k){if(j.isInViewport(e("#"+i.id),i.scrollOffset)){h.info("\nspecified container is in view: "+i.id);e("."+i.id).show(i.showDelay);h.info("\nremove eventHandler");c.removeEventListener("scroll",j[i.id])}};c.addEventListener("scroll",j[i.id])}},getNewPost:function(i){var k=this;var h=log4javascript.getLogger("j1.scroller.core.getNewPost");h.info("\ntrigger loading ");if(this.itemsLoaded===false){return false}this.itemsLoaded=false;if(i.loadStatus){h.info("\nshow: spinner");e(".loader-ellips").show()}var j=new XMLHttpRequest();j.onreadystatechange=function(){if(j.readyState==XMLHttpRequest.DONE){if(j.status==200){i.firstPage++;var l=k.getChildItemsByAjaxHTML(i,j.responseText);k.appendNewItems(l);h.info("\nloading new items: successful");if(i.loadStatus){h.info("\nhide: spinner");e(".loader-ellips").hide()}k.itemsLoaded=true}else{if(i.loadStatus){h.info("\nhide: spinner");e(".loader-ellips").hide()}h.error("\nloading new items failed, HTTP response: "+j.status);k.itemsLoaded=false}}};h.info("\nloading new items from path: "+i.pagePath+i.firstPage);j.open("GET",location.origin+i.pagePath+i.firstPage+"/index.html",true);j.send()},getChildItemsByAjaxHTML:function(j,i){var l=a.createElement("html");var h=log4javascript.getLogger("j1.scroller.core.getChildItemsByAjaxHTML");h.info("\nload new items");l.innerHTML=i;var k=l.querySelectorAll(j.elementID+" > *");return k},appendNewItems:function(h){var l=this;var i=log4javascript.getLogger("j1.scroller.core.appendNewItems");var k=j1.getCookieNames();var j=j1.readCookie(k.user_translate);i.info("\nappend new items");h.forEach(function(m){l.element.appendChild(m)});if(j.translationEnabled){i.info("\ntranslation enabled: "+j.translationEnabled);i.warn("\nskipped processing of dropcaps")}else{i.info("\npost processing: createDropCap");j1.core.createDropCap()}},infoLastPage:function(i){var j=this;var h=log4javascript.getLogger("j1.scroller.core.infoLastPage");h.info("\nshow: infoLastPage");e(".page-scroll-last").show()}});e.fn[d]=function(h){return this.each(function(){if(!e.data(this,"plugin_"+d)){e.data(this,"plugin_"+d,new b(this,h))}})}})(jQuery,window,document);
@@ -12,7 +12,6 @@
12
12
  # See: https://github.com/jekyll-one/J1 Template/blob/master/LICENSE
13
13
  # -----------------------------------------------------------------------------
14
14
  */
15
- 'use strict';
16
15
 
17
16
  // -----------------------------------------------------------------------------
18
17
  // ESLint shimming
@@ -25,8 +24,8 @@
25
24
  /* eslint JSUnfilteredForInLoop: "off" */
26
25
  // -----------------------------------------------------------------------------
27
26
 
27
+ 'use strict';
28
28
  function Translator(props) {
29
-
30
29
  // ---------------------------------------------------------------------------
31
30
  // global vars
32
31
  // ---------------------------------------------------------------------------
@@ -267,8 +266,11 @@ function Translator(props) {
267
266
  self.modal = document.getElementById(self.props.dialogContainerID);
268
267
  if (!self.modal) {
269
268
  logger.info('\n' + 'load consent modal');
269
+
270
270
  self.modal = document.createElement('div');
271
271
  self.modal.id = self.props.dialogContainerID;
272
+ self.modal.style.display = 'none';
273
+
272
274
  self.modal.setAttribute('class', 'modal fade');
273
275
  self.modal.setAttribute('tabindex', '-1');
274
276
  self.modal.setAttribute('role', 'dialog');
@@ -368,6 +370,7 @@ function Translator(props) {
368
370
  logger.info('\n' + 'loading consent modal: successfully');
369
371
  self.modal.innerHTML = data;
370
372
  self.modal.innerHTML = $('#' + self.props.xhrDataElement).eq(0).html();
373
+ self.modal.style.display = 'block';
371
374
 
372
375
  $(self.modal).modal({
373
376
  backdrop: 'static',
@@ -411,6 +414,7 @@ function Translator(props) {
411
414
  $('#google-options').collapse('hide');
412
415
  agreeAll();
413
416
  });
417
+ self.$modal.modal('show');
414
418
  })
415
419
  .fail(function () {
416
420
  logger.error('\n' + 'loading translator dialog (modal): failed');
@@ -12,4 +12,4 @@
12
12
  # See: https://github.com/jekyll-one/J1 Template/blob/master/LICENSE
13
13
  # -----------------------------------------------------------------------------
14
14
  */
15
- function Translator(d){var p=this;var u=log4javascript.getLogger("j1.core.translator");var l=new liteURL(window.location.href);var c=(l.protocol.includes("https"))?true:false;var q=false;var g;var s;this.props={contentURL:"/assets/data/translator",cookieName:"j1.user.state",cookieConsentName:"j1.user.consent",cookieStorageDays:365,cookieSameSite:"Strict",cookieSecure:c,translationEnabled:false,disableLanguageSelector:false,translatorName:"google",translationLanguages:"all",translationLanguage:"auto",translateAllPages:true,hideSuggestionBox:true,hidePoweredBy:true,hideTopFrame:true,dialogLanguage:"content",dialogLanguages:["en","de"],dialogContainerID:"translator-modal",xhrDataElement:"",postSelectionCallback:"",};for(var e in d){this.props[e]=d[e]}if(this.props.dialogLanguage.indexOf("-")!==-1){this.props.dialogLanguage=this.props.dialogLanguage.split("-")[0]}if(!this.props.dialogLanguages.includes(this.props.dialogLanguage)){this.props.dialogLanguage=this.props.dialogLanguages[0]}this.props.xhrDataElement=this.props.xhrDataElement+"-"+this.props.dialogLanguage;u.info("\ninitializing core module: started");u.info("\nstate: started");var f={set:function(x,z,C,y,A){var B=window.btoa(z);var v="";if(C){var w=new Date();w.setTime(w.getTime()+(C*24*60*60*1000));v="; expires="+w.toUTCString()}if(A){document.cookie=x+"="+(B||"")+v+"; Path=/; SameSite="+y+"; secure="+A+";"}else{document.cookie=x+"="+(B||"")+v+"; Path=/; SameSite="+y+";"}},get:function(w){var z=w+"=";var v=document.cookie.split(";");for(var x=0;x<v.length;x++){var B=v[x];while(B.charAt(0)===" "){B=B.substring(1,B.length)}if(B.indexOf(z)===0){var A=B.substring(z.length,B.length);var y=window.atob(A);return y}}return undefined}};var n={documentReady:function(v){if(document.readyState!=="loading"){v()}else{document.addEventListener("DOMContentLoaded",v)}}};function t(){var v={};var w=false;var x=0;var y=arguments.length;if(Object.prototype.toString.call(arguments[0])==="[object Boolean]"){w=arguments[0];x++}var A=function(B){for(var C in B){if(Object.prototype.hasOwnProperty.call(B,C)){if(w&&Object.prototype.toString.call(B[C])==="[object Object]"){v[C]=t(true,v[C],B[C])}else{v[C]=B[C]}}}};for(;x<y;x++){var z=arguments[x];A(z)}return v}function h(A,x){var v=Array.prototype.slice.call(arguments,2);var z=A.split(".");var y=z.pop();for(var w=0;w<z.length;w++){x=x[z[w]]}return x[y].apply(x,v)}function j(w){var v;var x=t({size:0,width:250,multiple:false,selectedIndex:1,enableAutoFilter:false,visibleRows:null,},w);v="#"+x.selector;$.ajax({url:x.url,dataType:"json",success:function(A){var z=[];if(p.props.translationLanguages.includes("all")){z=A[x.elm]}else{for(var y=0;y<A[x.elm].length;y++){if(p.props.translationLanguages.includes(A[x.elm][y].value)){z.push(A[x.elm][y])}}}if(x.visibleRows>z.length){x.visibleRows=z.length}MsDropdown.make(v,{byJson:{data:z,name:x.name,size:x.size,width:x.width,multiple:x.multiple,},enableAutoFilter:x.enableAutoFilter,visibleRows:x.visibleRows,})},error:function(y,A,z){u.error("\nfailed to retrieve JSON data from: "+x.url)}})}function m(){n.documentReady(function(){p.modal=document.getElementById(p.props.dialogContainerID);if(!p.modal){u.info("\nload consent modal");p.modal=document.createElement("div");p.modal.id=p.props.dialogContainerID;p.modal.setAttribute("class","modal fade");p.modal.setAttribute("tabindex","-1");p.modal.setAttribute("role","dialog");p.modal.setAttribute("aria-labelledby",p.props.dialogContainerID);document.body.append(p.modal);p.$modal=$(p.modal);p.$modal.on("show.bs.modal",function(){var w;var x;u.info("\nshow.bs.modal: entered");$.when(j({url:"/assets/data/iso-639-language-codes-flags.json",elm:"iso-639-languages",selector:"dropdownJSON",width:400,visibleRows:8,})).then(function(y){u.info("\ncreating msDropdown from JSON data: finished")})});p.$modal.on("shown.bs.modal",function(){var w;var x;x=setInterval(function(){if(typeof document.getElementById("dropdownJSON").msDropdown!=="undefined"){w=document.getElementById("dropdownJSON").msDropdown;if(!w.length){u.error("\nno msDropdown found in translation dialog");p.$modal.hide()}else{if(p.props.translationLanguage==="auto"){g=navigator.language||navigator.userLanguage;s=g.split("-")[0]}else{s=p.props.translationLanguage}w.selectedIndex=$("#dropdownJSON option[value="+s+"]").index();if(p.props.disableLanguageSelector){w.disabled=true}$("#dropdownJSON").show();$("body").addClass("stop-scrolling");u.info("\nmsDropdown successfully loaded in translation dialog");clearInterval(x)}}},25)});p.$modal.on("hidden.bs.modal",function(){$("body").removeClass("stop-scrolling");h(p.props.postSelectionCallback,window)});var v=p.props.contentURL+"/index.html";$.get(v).done(function(w){u.info("\nloading consent modal: successfully");p.modal.innerHTML=w;p.modal.innerHTML=$("#"+p.props.xhrDataElement).eq(0).html();$(p.modal).modal({backdrop:"static",keyboard:false});p.$buttonDoNotAgree=$("#translator-buttonDoNotAgree");p.$buttonAgree=$("#translator-buttonAgree");p.$buttonSave=$("#translator-buttonSave");p.$buttonAgreeAll=$("#translator-buttonAgreeAll");u.info("\nload/initialze options from cookie");k();i();$("#google-options").on("hide.bs.collapse",function(){q=false;k()}).on("show.bs.collapse",function(){q=true;k()});u.info("\ninitialze button event handler");p.$buttonDoNotAgree.click(function(){b()});p.$buttonAgree.click(function(){o()});p.$buttonSave.click(function(){$("#google-options").collapse("hide");r();i()});p.$buttonAgreeAll.click(function(){$("#google-options").collapse("hide");o()})}).fail(function(){u.error("\nloading translator dialog (modal): failed");u.warn("\nprobably no|wrong `contentURL` set")})}else{p.$modal.modal("show")}}.bind(this))}function i(){var x=p.getSettings();if(x){for(var w in x){var v=p.$modal.find("#google-options .translator-option[data-name="+w+'] input[type="checkbox"]');v.prop("checked",x[w])}}}function k(){if(q){p.$buttonDoNotAgree.hide();p.$buttonAgree.hide();p.$buttonSave.show();p.$buttonAgreeAll.show()}else{p.$buttonDoNotAgree.show();p.$buttonAgree.show();p.$buttonSave.hide();p.$buttonAgreeAll.hide()}}function a(w){var v=p.$modal.find("#google-options .translator-option");var y={};for(var z=0;z<v.length;z++){var B=v[z];var x=B.getAttribute("data-name");if(x==="necessary"){y[x]=true}else{if(w===undefined){var A=$(B).find('input[type="checkbox"]');y[x]=A.prop("checked")}else{y[x]=!!w}}}return y}function o(){var w=a(true);var v={};v=JSON.parse(f.get(p.props.cookieConsentName));v.analysis=w.analysis;v.personalization=w.personalization;f.set(p.props.cookieConsentName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);f.set(p.props.cookieName,JSON.stringify(w),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}function b(){var v=a();v.translationEnabled=false;f.set(p.props.cookieName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}function r(){var w;var v={};w=a();v=JSON.parse(f.get(p.props.cookieConsentName));v.analysis=w.analysis;v.personalization=w.personalization;f.set(p.props.cookieConsentName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);f.set(p.props.cookieName,JSON.stringify(a()),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}this.showDialog=function(){m()};this.getSettings=function(w){var v=f.get(p.props.cookieName);if(v){var x=JSON.parse(f.get(p.props.cookieName));if(w===undefined){return x}else{if(x){return x[w]}else{return false}}}else{return undefined}};u.info("\ninitializing core module finished");u.info("\nstate: finished")};
15
+ "use strict";function Translator(d){var p=this;var u=log4javascript.getLogger("j1.core.translator");var l=new liteURL(window.location.href);var c=(l.protocol.includes("https"))?true:false;var q=false;var g;var s;this.props={contentURL:"/assets/data/translator",cookieName:"j1.user.state",cookieConsentName:"j1.user.consent",cookieStorageDays:365,cookieSameSite:"Strict",cookieSecure:c,translationEnabled:false,disableLanguageSelector:false,translatorName:"google",translationLanguages:"all",translationLanguage:"auto",translateAllPages:true,hideSuggestionBox:true,hidePoweredBy:true,hideTopFrame:true,dialogLanguage:"content",dialogLanguages:["en","de"],dialogContainerID:"translator-modal",xhrDataElement:"",postSelectionCallback:"",};for(var e in d){this.props[e]=d[e]}if(this.props.dialogLanguage.indexOf("-")!==-1){this.props.dialogLanguage=this.props.dialogLanguage.split("-")[0]}if(!this.props.dialogLanguages.includes(this.props.dialogLanguage)){this.props.dialogLanguage=this.props.dialogLanguages[0]}this.props.xhrDataElement=this.props.xhrDataElement+"-"+this.props.dialogLanguage;u.info("\ninitializing core module: started");u.info("\nstate: started");var f={set:function(x,z,C,y,A){var B=window.btoa(z);var v="";if(C){var w=new Date();w.setTime(w.getTime()+(C*24*60*60*1000));v="; expires="+w.toUTCString()}if(A){document.cookie=x+"="+(B||"")+v+"; Path=/; SameSite="+y+"; secure="+A+";"}else{document.cookie=x+"="+(B||"")+v+"; Path=/; SameSite="+y+";"}},get:function(w){var z=w+"=";var v=document.cookie.split(";");for(var x=0;x<v.length;x++){var B=v[x];while(B.charAt(0)===" "){B=B.substring(1,B.length)}if(B.indexOf(z)===0){var A=B.substring(z.length,B.length);var y=window.atob(A);return y}}return undefined}};var n={documentReady:function(v){if(document.readyState!=="loading"){v()}else{document.addEventListener("DOMContentLoaded",v)}}};function t(){var v={};var w=false;var x=0;var y=arguments.length;if(Object.prototype.toString.call(arguments[0])==="[object Boolean]"){w=arguments[0];x++}var A=function(B){for(var C in B){if(Object.prototype.hasOwnProperty.call(B,C)){if(w&&Object.prototype.toString.call(B[C])==="[object Object]"){v[C]=t(true,v[C],B[C])}else{v[C]=B[C]}}}};for(;x<y;x++){var z=arguments[x];A(z)}return v}function h(A,x){var v=Array.prototype.slice.call(arguments,2);var z=A.split(".");var y=z.pop();for(var w=0;w<z.length;w++){x=x[z[w]]}return x[y].apply(x,v)}function j(w){var v;var x=t({size:0,width:250,multiple:false,selectedIndex:1,enableAutoFilter:false,visibleRows:null,},w);v="#"+x.selector;$.ajax({url:x.url,dataType:"json",success:function(A){var z=[];if(p.props.translationLanguages.includes("all")){z=A[x.elm]}else{for(var y=0;y<A[x.elm].length;y++){if(p.props.translationLanguages.includes(A[x.elm][y].value)){z.push(A[x.elm][y])}}}if(x.visibleRows>z.length){x.visibleRows=z.length}MsDropdown.make(v,{byJson:{data:z,name:x.name,size:x.size,width:x.width,multiple:x.multiple,},enableAutoFilter:x.enableAutoFilter,visibleRows:x.visibleRows,})},error:function(y,A,z){u.error("\nfailed to retrieve JSON data from: "+x.url)}})}function m(){n.documentReady(function(){p.modal=document.getElementById(p.props.dialogContainerID);if(!p.modal){u.info("\nload consent modal");p.modal=document.createElement("div");p.modal.id=p.props.dialogContainerID;p.modal.style.display="none";p.modal.setAttribute("class","modal fade");p.modal.setAttribute("tabindex","-1");p.modal.setAttribute("role","dialog");p.modal.setAttribute("aria-labelledby",p.props.dialogContainerID);document.body.append(p.modal);p.$modal=$(p.modal);p.$modal.on("show.bs.modal",function(){var w;var x;u.info("\nshow.bs.modal: entered");$.when(j({url:"/assets/data/iso-639-language-codes-flags.json",elm:"iso-639-languages",selector:"dropdownJSON",width:400,visibleRows:8,})).then(function(y){u.info("\ncreating msDropdown from JSON data: finished")})});p.$modal.on("shown.bs.modal",function(){var w;var x;x=setInterval(function(){if(typeof document.getElementById("dropdownJSON").msDropdown!=="undefined"){w=document.getElementById("dropdownJSON").msDropdown;if(!w.length){u.error("\nno msDropdown found in translation dialog");p.$modal.hide()}else{if(p.props.translationLanguage==="auto"){g=navigator.language||navigator.userLanguage;s=g.split("-")[0]}else{s=p.props.translationLanguage}w.selectedIndex=$("#dropdownJSON option[value="+s+"]").index();if(p.props.disableLanguageSelector){w.disabled=true}$("#dropdownJSON").show();$("body").addClass("stop-scrolling");u.info("\nmsDropdown successfully loaded in translation dialog");clearInterval(x)}}},25)});p.$modal.on("hidden.bs.modal",function(){$("body").removeClass("stop-scrolling");h(p.props.postSelectionCallback,window)});var v=p.props.contentURL+"/index.html";$.get(v).done(function(w){u.info("\nloading consent modal: successfully");p.modal.innerHTML=w;p.modal.innerHTML=$("#"+p.props.xhrDataElement).eq(0).html();p.modal.style.display="block";$(p.modal).modal({backdrop:"static",keyboard:false});p.$buttonDoNotAgree=$("#translator-buttonDoNotAgree");p.$buttonAgree=$("#translator-buttonAgree");p.$buttonSave=$("#translator-buttonSave");p.$buttonAgreeAll=$("#translator-buttonAgreeAll");u.info("\nload/initialze options from cookie");k();i();$("#google-options").on("hide.bs.collapse",function(){q=false;k()}).on("show.bs.collapse",function(){q=true;k()});u.info("\ninitialze button event handler");p.$buttonDoNotAgree.click(function(){b()});p.$buttonAgree.click(function(){o()});p.$buttonSave.click(function(){$("#google-options").collapse("hide");r();i()});p.$buttonAgreeAll.click(function(){$("#google-options").collapse("hide");o()});p.$modal.modal("show")}).fail(function(){u.error("\nloading translator dialog (modal): failed");u.warn("\nprobably no|wrong `contentURL` set")})}else{p.$modal.modal("show")}}.bind(this))}function i(){var x=p.getSettings();if(x){for(var w in x){var v=p.$modal.find("#google-options .translator-option[data-name="+w+'] input[type="checkbox"]');v.prop("checked",x[w])}}}function k(){if(q){p.$buttonDoNotAgree.hide();p.$buttonAgree.hide();p.$buttonSave.show();p.$buttonAgreeAll.show()}else{p.$buttonDoNotAgree.show();p.$buttonAgree.show();p.$buttonSave.hide();p.$buttonAgreeAll.hide()}}function a(w){var v=p.$modal.find("#google-options .translator-option");var y={};for(var z=0;z<v.length;z++){var B=v[z];var x=B.getAttribute("data-name");if(x==="necessary"){y[x]=true}else{if(w===undefined){var A=$(B).find('input[type="checkbox"]');y[x]=A.prop("checked")}else{y[x]=!!w}}}return y}function o(){var w=a(true);var v={};v=JSON.parse(f.get(p.props.cookieConsentName));v.analysis=w.analysis;v.personalization=w.personalization;f.set(p.props.cookieConsentName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);f.set(p.props.cookieName,JSON.stringify(w),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}function b(){var v=a();v.translationEnabled=false;f.set(p.props.cookieName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}function r(){var w;var v={};w=a();v=JSON.parse(f.get(p.props.cookieConsentName));v.analysis=w.analysis;v.personalization=w.personalization;f.set(p.props.cookieConsentName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);f.set(p.props.cookieName,JSON.stringify(a()),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}this.showDialog=function(){m()};this.getSettings=function(w){var v=f.get(p.props.cookieName);if(v){var x=JSON.parse(f.get(p.props.cookieName));if(w===undefined){return x}else{if(x){return x[w]}else{return false}}}else{return undefined}};u.info("\ninitializing core module finished");u.info("\nstate: finished")};
@@ -89,10 +89,10 @@
89
89
 
90
90
  buttonsHTML = '<div class="twemoji-icon-picker">';
91
91
  buttonsHTML += '<span id="open-group" class="mr-2" style="width: 2rem; height: 2rem;">';
92
- buttonsHTML += '<button type="button" name="open-group" class="btn btn-raised btn-flex btn-primary mr-2"><i class="toggle-button mdi mdi-lg mr-1 mdi-toggle-switch-off"></i> Picker </button>';
92
+ buttonsHTML += '<button type="button" name="open-group" class="btn btn-flex btn-primary mr-2"><i class="toggle-button mdi mdi-lg mr-1 mdi-toggle-switch-off"></i> Picker </button>';
93
93
  buttonsHTML += '</span>';
94
94
  buttonsHTML += '<span id="clear-textarea" style="width: 2rem; height: 2rem;">';
95
- buttonsHTML += '<button type="button" name="clear-textarea" class="btn btn-raised btn-flex btn-primary"><i class="mdi mdi-close mdi-lg mr-1"></i>' + clearText + '</button>';
95
+ buttonsHTML += '<button type="button" name="clear-textarea" class="btn btn-flex btn-primary"><i class="mdi mdi-close mdi-lg mr-1"></i>' + clearText + '</button>';
96
96
  buttonsHTML += '</span>';
97
97
  buttonsHTML += '</div>';
98
98
 
@@ -16,4 +16,4 @@
16
16
  # For details, https://github.com/xLs51/Twemoji-Picker
17
17
  # -----------------------------------------------------------------------------
18
18
  */
19
- (function(c,h,a){var k=150;var i={};var e="/assets/data/twa_v1.json";var j;var l;c.TwemojiPicker=function(d,b){var f=this;c.when(this._loadDatabase()).done(function(m){f.$el=c(d);f._init(b)})};c.TwemojiPicker.defaults={init:null,language:"en",size:25,icon:"grinning",iconSize:25,height:100,width:null,category:["smile","cherry-blossom","video-game","oncoming-automobile","symbols"],categorySize:20,pickerPosition:null,pickerHeight:150,pickerWidth:null,placeholder:"Click on Picker to select Emoji's from a Category",};c.TwemojiPicker.prototype={_init:function(b){this.options=c.extend(true,{},c.TwemojiPicker.defaults,b);this._initPicker();this._initCategory();this._initTwemoji();this._initText();this._initStyle();this._initEvents()},_loadDatabase:function g(){return c.ajax({url:e,success:function(b){if(typeof b=="string"){i=JSON.parse(b)}if(typeof b=="object"){i=b}}})},_initPicker:function(){var f=this;var b;var d;if(f.options.language=="en"){b="Clear";j="Copied to Clipboard";l=f.options.placeholder}else{if(f.options.language=="de"){b="Löschen";j="Kopiert zur Zwischenablage";l="Klicken Sie auf Picker zur Auswahl von Emoji's aus einer Kategorie"}else{b="Clear";j="in Clipboard";l=f.options.placeholder}}d='<div class="twemoji-icon-picker">';d+='<span id="open-group" class="mr-2" style="width: 2rem; height: 2rem;">';d+='<button type="button" name="open-group" class="btn btn-raised btn-flex btn-primary mr-2"><i class="toggle-button mdi mdi-lg mr-1 mdi-toggle-switch-off"></i> Picker </button>';d+="</span>";d+='<span id="clear-textarea" style="width: 2rem; height: 2rem;">';d+='<button type="button" name="clear-textarea" class="btn btn-raised btn-flex btn-primary"><i class="mdi mdi-close mdi-lg mr-1"></i>'+b+"</button>";d+="</span>";d+="</div>";f.$id="#"+f.$el["0"].id;f.$pickerHeigth=f.options.height.replace("px","");f.$pickerHeigth=Number(f.$pickerHeigth);f.$wrapper=f.$el.wrap('<div class="twemoji-wrap"></div>').parent();f.$wrapper.append('<div class="twemoji-textarea" contentEditable="true" placeholder="'+l+'"></div>');f.$wrapper.append('<div class="twemoji-textarea-duplicate"></div>');f.$wrapper.append(d);f.$wrapper.append('<div class="twemoji-picker"></div>');f.$el.hide();f.$textarea=f.$wrapper.find(".twemoji-textarea");f.$textareaDuplicate=f.$wrapper.find(".twemoji-textarea-duplicate").hide();f.$iconPicker=f.$wrapper.find("#open-group");f.$clearTextarea=f.$wrapper.find("#clear-textarea");f.$picker=f.$wrapper.find(".twemoji-picker").hide()},_initCategory:function(){var d=this;var b=this.options.category;this.categoryName=["people","nature","object","place","symbol"];this.$picker.append('<div class="twemoji-picker-category"></div>');this.$pickerCategory=this.$picker.find(".twemoji-picker-category");c.each(this.categoryName,function(m,f){d.$pickerCategory.append('<span data-category="'+f+'">'+d.imageFromName(b[m])+"</span>")});this.$pickerCategory.find("span:first").addClass("active")},_initTwemoji:function(){var b=this;c.each(this.categoryName,function(f,d){b.$picker.append('<div class="twemoji-list '+d+'"></div>');c.each(i,function(n,m){if(m.category===d){b.$wrapper.find(".twemoji-picker ."+d).append('<span><img class="emoji" draggable="false" src="'+m.base64+'" alt="'+m.value+'" title="'+m.name+'"></span>')}})});this.$twemojiList=this.$picker.find(".twemoji-list");this.$twemojiList.not(":first").hide()},_initText:function(){if(this.options.init){var b=this.options.init;var d=/:([\w-]+):/g;var f;while(f==d.exec(b)){b=b.replace(f[0],this.imageFromName(f[1],true))}this.$textarea.html(b);this.copyTextArea(this.$textarea.html())}},_initStyle:function(){this.$wrapper.css({width:this.options.width?this.options.width:"100%",height:this.options.height?this.options.height:"",});this.$wrapper.find("img").css({width:this.options.size,height:this.options.size,});this.$iconPicker.css({width:this.options.iconSize,height:this.options.iconSize,});this.$pickerCategory.find("img").css({width:this.options.categorySize,height:this.options.categorySize,});this.$twemojiList.css({width:this.options.pickerWidth?this.options.pickerWidth:"100%",height:this.options.pickerHeight,});this.$picker.css({width:this.options.pickerWidth?this.options.pickerWidth:"100%",top:this.options.pickerPosition==="top"?"-"+this.$picker.outerHeight()+"px":"",})},_initEvents:function(){var b=this;this.$textarea.on("keyup",function(){b.copyTextArea(c(this).html())});this.$iconPicker.on("click",function(){var d=c(".twemoji-picker").height()+k;c("#picker").height(d);c(".toggle-button").toggleClass("mdi-toggle-switch-off mdi-toggle-switch");if(!b.openedPicker){b.openPicker()}else{b.closePicker();c("#picker").height(b.$pickerHeigth)}});this.$clearTextarea.on("click",function(){b.copyTextArea("");c(b.$id).val("");c(".twemoji-textarea > .emoji-span").remove()});this.$pickerCategory.find("span").on("click",function(){var d=c(this).data("category");b.openCategory(c(this),d)});this.$pickerCategory.find(".close").on("click",function(){if(b.openedPicker){b.closePicker()}});this.$twemojiList.find("img").on("click",function(){b.copyTwemoji(c(this))})},copyText:function(f){var d=document.createElement("textarea");d.setAttribute("style","position:fixed;opacity:0;top:100px;left:100px;");d.value=f;document.body.appendChild(d);d.select();document.execCommand("copy");var b=document.createElement("div");b.setAttribute("class","copied");b.appendChild(document.createTextNode(j));document.body.appendChild(b);setTimeout(function(){document.body.removeChild(d);document.body.removeChild(b)},1500)},openPicker:function(){this.$picker.show();this.openedPicker=true},closePicker:function(){this.$picker.hide();this.openedPicker=false},openCategory:function(d,b){this.$pickerCategory.find("span").removeClass("active");d.addClass("active");this.$twemojiList.not(".twemoji-picker ."+b).hide();this.$twemojiList.filter(".twemoji-picker ."+b).show()},copyTwemoji:function(b){var m=b.attr("alt");var d=b.attr("src");var f=b.attr("title");var n="emoji:"+f+"[]";this.copyText(n);this.$textarea.focus();this.pasteAtCursor('<span class="emoji-span"><img class="emoji" src="'+d+'" title="'+f+'" alt="'+m+'" width="'+this.options.size+'" height="'+this.options.size+'"> '+n+"</span> ");this.copyTextArea(this.$textarea.html())},copyTextArea:function(b){var f=this.$textareaDuplicate.html(b);f.find("img").replaceWith(function(){return this.alt});var d=f.html();this.$el.text(d)},imageFromName:function(d,b){var f=c.grep(i,function(m){return m.name==d});if(b){return'<img class="emoji" src="'+f[0].base64+'" alt="'+f[0].value+'" width="'+this.options.size+'" height="'+this.options.size+'">'}return'<img class="emoji" draggable="false" src="'+f[0].base64+'" alt="'+d+'">'},pasteAtCursor:function(b){var d,q;if(h.getSelection){d=h.getSelection();if(d.getRangeAt&&d.rangeCount){q=d.getRangeAt(0);q.deleteContents();var p=document.createElement("div");p.innerHTML=b;var r=document.createDocumentFragment(),f,o;while((f=p.firstChild)){o=r.appendChild(f)}q.insertNode(r);if(o){q=q.cloneRange();q.setStartAfter(o);q.collapse(true);d.removeAllRanges();d.addRange(q)}}}else{if(document.selection&&document.selection.type!="Control"){document.selection.createRange().pasteHTML(b)}}}};c.fn.twemojiPicker=function(b){var d=c.data(this,"twemojiPicker");this.each(function(){d?d._init():d=c.data(this,"twemojiPicker",new c.TwemojiPicker(this,b))});return d}})(jQuery,window);
19
+ (function(c,h,a){var k=150;var i={};var e="/assets/data/twa_v1.json";var j;var l;c.TwemojiPicker=function(d,b){var f=this;c.when(this._loadDatabase()).done(function(m){f.$el=c(d);f._init(b)})};c.TwemojiPicker.defaults={init:null,language:"en",size:25,icon:"grinning",iconSize:25,height:100,width:null,category:["smile","cherry-blossom","video-game","oncoming-automobile","symbols"],categorySize:20,pickerPosition:null,pickerHeight:150,pickerWidth:null,placeholder:"Click on Picker to select Emoji's from a Category",};c.TwemojiPicker.prototype={_init:function(b){this.options=c.extend(true,{},c.TwemojiPicker.defaults,b);this._initPicker();this._initCategory();this._initTwemoji();this._initText();this._initStyle();this._initEvents()},_loadDatabase:function g(){return c.ajax({url:e,success:function(b){if(typeof b=="string"){i=JSON.parse(b)}if(typeof b=="object"){i=b}}})},_initPicker:function(){var f=this;var b;var d;if(f.options.language=="en"){b="Clear";j="Copied to Clipboard";l=f.options.placeholder}else{if(f.options.language=="de"){b="Löschen";j="Kopiert zur Zwischenablage";l="Klicken Sie auf Picker zur Auswahl von Emoji's aus einer Kategorie"}else{b="Clear";j="in Clipboard";l=f.options.placeholder}}d='<div class="twemoji-icon-picker">';d+='<span id="open-group" class="mr-2" style="width: 2rem; height: 2rem;">';d+='<button type="button" name="open-group" class="btn btn-flex btn-primary mr-2"><i class="toggle-button mdi mdi-lg mr-1 mdi-toggle-switch-off"></i> Picker </button>';d+="</span>";d+='<span id="clear-textarea" style="width: 2rem; height: 2rem;">';d+='<button type="button" name="clear-textarea" class="btn btn-flex btn-primary"><i class="mdi mdi-close mdi-lg mr-1"></i>'+b+"</button>";d+="</span>";d+="</div>";f.$id="#"+f.$el["0"].id;f.$pickerHeigth=f.options.height.replace("px","");f.$pickerHeigth=Number(f.$pickerHeigth);f.$wrapper=f.$el.wrap('<div class="twemoji-wrap"></div>').parent();f.$wrapper.append('<div class="twemoji-textarea" contentEditable="true" placeholder="'+l+'"></div>');f.$wrapper.append('<div class="twemoji-textarea-duplicate"></div>');f.$wrapper.append(d);f.$wrapper.append('<div class="twemoji-picker"></div>');f.$el.hide();f.$textarea=f.$wrapper.find(".twemoji-textarea");f.$textareaDuplicate=f.$wrapper.find(".twemoji-textarea-duplicate").hide();f.$iconPicker=f.$wrapper.find("#open-group");f.$clearTextarea=f.$wrapper.find("#clear-textarea");f.$picker=f.$wrapper.find(".twemoji-picker").hide()},_initCategory:function(){var d=this;var b=this.options.category;this.categoryName=["people","nature","object","place","symbol"];this.$picker.append('<div class="twemoji-picker-category"></div>');this.$pickerCategory=this.$picker.find(".twemoji-picker-category");c.each(this.categoryName,function(m,f){d.$pickerCategory.append('<span data-category="'+f+'">'+d.imageFromName(b[m])+"</span>")});this.$pickerCategory.find("span:first").addClass("active")},_initTwemoji:function(){var b=this;c.each(this.categoryName,function(f,d){b.$picker.append('<div class="twemoji-list '+d+'"></div>');c.each(i,function(n,m){if(m.category===d){b.$wrapper.find(".twemoji-picker ."+d).append('<span><img class="emoji" draggable="false" src="'+m.base64+'" alt="'+m.value+'" title="'+m.name+'"></span>')}})});this.$twemojiList=this.$picker.find(".twemoji-list");this.$twemojiList.not(":first").hide()},_initText:function(){if(this.options.init){var b=this.options.init;var d=/:([\w-]+):/g;var f;while(f==d.exec(b)){b=b.replace(f[0],this.imageFromName(f[1],true))}this.$textarea.html(b);this.copyTextArea(this.$textarea.html())}},_initStyle:function(){this.$wrapper.css({width:this.options.width?this.options.width:"100%",height:this.options.height?this.options.height:"",});this.$wrapper.find("img").css({width:this.options.size,height:this.options.size,});this.$iconPicker.css({width:this.options.iconSize,height:this.options.iconSize,});this.$pickerCategory.find("img").css({width:this.options.categorySize,height:this.options.categorySize,});this.$twemojiList.css({width:this.options.pickerWidth?this.options.pickerWidth:"100%",height:this.options.pickerHeight,});this.$picker.css({width:this.options.pickerWidth?this.options.pickerWidth:"100%",top:this.options.pickerPosition==="top"?"-"+this.$picker.outerHeight()+"px":"",})},_initEvents:function(){var b=this;this.$textarea.on("keyup",function(){b.copyTextArea(c(this).html())});this.$iconPicker.on("click",function(){var d=c(".twemoji-picker").height()+k;c("#picker").height(d);c(".toggle-button").toggleClass("mdi-toggle-switch-off mdi-toggle-switch");if(!b.openedPicker){b.openPicker()}else{b.closePicker();c("#picker").height(b.$pickerHeigth)}});this.$clearTextarea.on("click",function(){b.copyTextArea("");c(b.$id).val("");c(".twemoji-textarea > .emoji-span").remove()});this.$pickerCategory.find("span").on("click",function(){var d=c(this).data("category");b.openCategory(c(this),d)});this.$pickerCategory.find(".close").on("click",function(){if(b.openedPicker){b.closePicker()}});this.$twemojiList.find("img").on("click",function(){b.copyTwemoji(c(this))})},copyText:function(f){var d=document.createElement("textarea");d.setAttribute("style","position:fixed;opacity:0;top:100px;left:100px;");d.value=f;document.body.appendChild(d);d.select();document.execCommand("copy");var b=document.createElement("div");b.setAttribute("class","copied");b.appendChild(document.createTextNode(j));document.body.appendChild(b);setTimeout(function(){document.body.removeChild(d);document.body.removeChild(b)},1500)},openPicker:function(){this.$picker.show();this.openedPicker=true},closePicker:function(){this.$picker.hide();this.openedPicker=false},openCategory:function(d,b){this.$pickerCategory.find("span").removeClass("active");d.addClass("active");this.$twemojiList.not(".twemoji-picker ."+b).hide();this.$twemojiList.filter(".twemoji-picker ."+b).show()},copyTwemoji:function(b){var m=b.attr("alt");var d=b.attr("src");var f=b.attr("title");var n="emoji:"+f+"[]";this.copyText(n);this.$textarea.focus();this.pasteAtCursor('<span class="emoji-span"><img class="emoji" src="'+d+'" title="'+f+'" alt="'+m+'" width="'+this.options.size+'" height="'+this.options.size+'"> '+n+"</span> ");this.copyTextArea(this.$textarea.html())},copyTextArea:function(b){var f=this.$textareaDuplicate.html(b);f.find("img").replaceWith(function(){return this.alt});var d=f.html();this.$el.text(d)},imageFromName:function(d,b){var f=c.grep(i,function(m){return m.name==d});if(b){return'<img class="emoji" src="'+f[0].base64+'" alt="'+f[0].value+'" width="'+this.options.size+'" height="'+this.options.size+'">'}return'<img class="emoji" draggable="false" src="'+f[0].base64+'" alt="'+d+'">'},pasteAtCursor:function(b){var d,q;if(h.getSelection){d=h.getSelection();if(d.getRangeAt&&d.rangeCount){q=d.getRangeAt(0);q.deleteContents();var p=document.createElement("div");p.innerHTML=b;var r=document.createDocumentFragment(),f,o;while((f=p.firstChild)){o=r.appendChild(f)}q.insertNode(r);if(o){q=q.cloneRange();q.setStartAfter(o);q.collapse(true);d.removeAllRanges();d.addRange(q)}}}else{if(document.selection&&document.selection.type!="Control"){document.selection.createRange().pasteHTML(b)}}}};c.fn.twemojiPicker=function(b){var d=c.data(this,"twemojiPicker");this.each(function(){d?d._init():d=c.data(this,"twemojiPicker",new c.TwemojiPicker(this,b))});return d}})(jQuery,window);
data/exe/j1 CHANGED
@@ -7,18 +7,17 @@ require 'j1'
7
7
  require 'mercenary'
8
8
 
9
9
  Mercenary.program(:j1) do |p|
10
-
11
10
  p.version J1::VERSION
12
- p.description 'J1 Template MDE 4 is a gem-based Template made for Jekyll powered by Bootstrap v4'
11
+ p.description 'J1 Template is a gem-based Template made for Jekyll'
13
12
  p.syntax 'j1 <subcommand> [options]'
14
13
 
15
14
  p.command(:generate) do |c|
16
- c.syntax 'generate PATH' # do not include the program name or super commands
17
15
  c.description 'Generates a starter site scaffold in PATH'
18
- c.option 'force', '--force', 'Force a site to be created even the PATH already exists'
19
- c.option "skip-bundle", "--skip-bundle", "Skip 'bundle install'"
20
- c.option "skip-_patches", "--skip-_patches", "Skip to install any PATCHES buildin with J1"
21
- c.option "system", "--system", "Run 'bundle install' for the Ruby SYSTEM gem folder"
16
+ c.syntax 'generate PATH'
17
+ c.option 'force', '--force', ' Force a site to be created even the PATH already exists'
18
+ c.option 'skip-bundle', '--skip-bundle', ' Skip bundle install'
19
+ c.option 'skip-patches', '--skip-patches', ' Skip install any PATCHES buildin with J1'
20
+ c.option 'system', '--system', ' Run "bundle install" for the Ruby SYSTEM gem folder'
22
21
  c.action do |args, options|
23
22
  J1::Commands::Generate.process(args, options)
24
23
  end
@@ -6,21 +6,20 @@ module J1
6
6
  module Commands
7
7
  class Generate < Command
8
8
  class << self
9
- def init_with_program(prog)
10
-
11
- prog.command(:generate) do |c|
12
- c.syntax 'generate PATH'
13
- c.description 'Generates a starter site scaffold in PATH'
14
- c.option 'force', '--force', 'Force a site to be created even the PATH already exists'
15
- c.option 'skip-bundle', '--skip-bundle', "Skip 'bundle install'"
16
- c.option "skip-_patches", "--skip-_patches", "Skip to install any PATCHES buildin with J1"
17
- c.option "system", "--system", "Run 'bundle install' for the Ruby SYSTEM gem folder"
18
- c.action do |args, options|
19
- J1::Commands::Generate.process(args, options)
20
- end
21
- end
22
9
 
23
- end
10
+ # def init_with_program(prog)
11
+ # prog.command(:generate) do |c|
12
+ # c.description 'Generates a starter site scaffold in PATH'
13
+ # c.syntax 'generate PATH'
14
+ # c.option 'force', '--force', 'Force a site to be created even the PATH already exists'
15
+ # c.option 'skip-bundle', '--skip-bundle', 'Skip bundle install'
16
+ # c.option 'skip-patches', '--skip-patches', 'Skip install any PATCHES buildin with J1'
17
+ # c.option 'system', '--system', 'Run "bundle install" for the Ruby SYSTEM gem folder'
18
+ # c.action do |args, options|
19
+ # J1::Commands::Generate.process(args, options)
20
+ # end
21
+ # end
22
+ # end
24
23
 
25
24
  def is_windows?
26
25
  RbConfig::CONFIG["host_os"] =~ %r!mswin|mingw|cygwin!i
@@ -93,10 +92,10 @@ module J1
93
92
  def after_install(path, options = {})
94
93
  unless options['skip-bundle']
95
94
  bundle_install(path, options)
96
- unless options['skip-_patches']
95
+ unless options['skip-patches']
97
96
  patch_install(options)
98
97
  else
99
- J1.logger.info "Install _patches skipped ..."
98
+ J1.logger.info "Install build-in patches skipped ..."
100
99
  end
101
100
  end
102
101
  unless options['force']
data/lib/j1/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module J1
2
- VERSION = '2021.3.2'
2
+ VERSION = '2022.0.3'
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', '~> 2021.3.2'
56
+ gem 'j1-template', '~> 2022.0.3'
57
57
 
58
58
  # ------------------------------------------------------------------------------
59
59
  # PRODUCTION: Gem needed for the Jekyll and J1 prod environment
@@ -168,6 +168,12 @@ end
168
168
  # gem 'passenger', '>= 5.3'
169
169
  gem 'puma', '>= 5.5.2'
170
170
 
171
+ # ------------------------------------------------------------------------------
172
+ # OpenSSL provides SSL, TLS and general purpose cryptography. Used to
173
+ # encrypt 'private' data
174
+ #
175
+ gem 'openssl'
176
+
171
177
  # ------------------------------------------------------------------------------
172
178
  # If J1 is transformed into a (Rack and Sinatra based) Web
173
179
  # application, the site can be secured using user authentication
@@ -1,6 +1,6 @@
1
1
  # ------------------------------------------------------------------------------
2
2
  # ~/_config.yml
3
- # Global Jekyll site configuration (runtime)
3
+ # Global Jekyll site configuration (development)
4
4
  #
5
5
  # Product/Info:
6
6
  # https://jekyll.one
@@ -53,7 +53,7 @@ environment: development
53
53
  # ------------------------------------------------------------------------------
54
54
  # Sets the build version of J1 Template Gem
55
55
  #
56
- version: 2021.3.2
56
+ version: 2022.0.3
57
57
 
58
58
  # version
59
59
  # ------------------------------------------------------------------------------
@@ -118,7 +118,6 @@ template:
118
118
  name: j1
119
119
  config: j1_config
120
120
 
121
-
122
121
  # ==============================================================================
123
122
  # 3. SITE configuration
124
123
  #
@@ -229,8 +228,8 @@ description: >
229
228
  Made for Jekyll · Made for Your Web
230
229
 
231
230
  keywords: Jekyll, One, Template, Ruby, Asciidoctor,
232
- Asciidoc, Bootstrap, Javascript,
233
- JS, JS3, CSS, CSS3, HTML5, Material, Design
231
+ Asciidoc, Bootstrap, Javascript, JS, JS3,
232
+ CSS, CSS3, HTML5, Material, Design
234
233
  author:
235
234
  name: username
236
235
  email: username@email.domain
@@ -241,17 +240,17 @@ author:
241
240
  webmaster:
242
241
  email: webmaster@example.domain
243
242
 
244
- # crawling/indexing DISABLED for default. Settings managed page-wise using
245
- # frontmatter defaults or by page settings to make sure that only WANTED
246
- # pages gets crawled.
243
+ # Crawling/Indexing ENABLED for default. Settings managed page-wise using
244
+ # frontmatter defaults or by page default settings to make sure that only
245
+ # WANTED pages gets crawled.
247
246
  #
248
247
  robots:
249
- index: false
250
- follow: false
248
+ index: true
249
+ follow: true
251
250
 
252
251
  # ------------------------------------------------------------------------------
253
252
  # BRAND configuration
254
- # Set the brand image and favicon
253
+ # Set the brand image and favicon (located in /asset/images)
255
254
 
256
255
  brand:
257
256
  image: modules/icons/j1/j1-512x512.png
@@ -259,13 +258,12 @@ brand:
259
258
  text: Starter Web
260
259
  text_color: "#9E9E9E"
261
260
 
262
- # Set the favicon (located in the asset_path/images) and type
261
+ # Set the favicon and type
263
262
  #
264
263
  favicon:
265
264
  image: modules/icons/j1/j1-32x32.ico
266
265
  type: image/ico
267
266
 
268
-
269
267
  # ==============================================================================
270
268
  # 4. JEKYLL specific site configuration
271
269
  #
@@ -338,7 +336,7 @@ base_path: ""
338
336
  # Defaults:
339
337
  # protocol: http
340
338
  # host: localhost
341
- # port: 40000
339
+ # port: 4000
342
340
  # timezone: Europe/Berlin
343
341
  # encoding: UTF-8
344
342
  #
@@ -348,9 +346,8 @@ port: 40000
348
346
  timezone: Europe/Berlin
349
347
  encoding: UTF-8
350
348
 
351
- detach: false
352
- show_dir_listing: false
353
-
349
+ # detach: false
350
+ # show_dir_listing: true
354
351
 
355
352
  # ------------------------------------------------------------------------------
356
353
  # PATH configuration
@@ -418,7 +415,7 @@ sass:
418
415
 
419
416
  # ------------------------------------------------------------------------------
420
417
  # POSTS Management
421
- # Set the post articles to include, exclude and ignore
418
+ # Control how post articles are generated
422
419
  #
423
420
  future: true # workaround (non US) TZ issues (of April 2021)
424
421
  show_drafts: false
@@ -608,7 +605,7 @@ defaults:
608
605
  vimeo: true
609
606
 
610
607
  toc: true
611
- fam_menu_id: page_ctrl_simple
608
+ fab_menu_id: page_ctrl_simple
612
609
  scrollbar: false
613
610
 
614
611
  icons:
@@ -655,7 +652,7 @@ defaults:
655
652
  series: false
656
653
 
657
654
  toc: true
658
- fam_menu_id: page_ctrl_simple
655
+ fab_menu_id: page_ctrl_simple
659
656
  scrollbar: false
660
657
 
661
658
  icons:
@@ -689,7 +686,7 @@ defaults:
689
686
  follow: true
690
687
 
691
688
  toc: true
692
- fam_menu_id: page_ctrl_simple
689
+ fab_menu_id: page_ctrl_simple
693
690
  scrollbar: false
694
691
 
695
692
  personalization: false
@@ -739,7 +736,7 @@ defaults:
739
736
  advertising: false
740
737
  youtube: false
741
738
  vimeo: false
742
-
739
+
743
740
 
744
741
  # ==============================================================================
745
742
  # 6. LAYOUT configuration
@@ -874,8 +871,8 @@ compress_html:
874
871
  startings: []
875
872
  clippings: []
876
873
  endings: []
877
- ignore:
878
- envs: []
874
+ ignore: []
875
+ envs: []
879
876
 
880
877
  # ------------------------------------------------------------------------------
881
878
  # END config
@@ -310,7 +310,7 @@ preload:
310
310
  css:
311
311
  preload: true
312
312
  css: [
313
- /assets/themes/j1/core/css/themes/uno-light/bootstrap,
313
+ /assets/themes/j1/core/css/themes/unolight/bootstrap,
314
314
  /assets/themes/j1/core/css/vendor
315
315
  ]
316
316
  files: []
@@ -23,8 +23,9 @@
23
23
  # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
24
24
  global:
25
25
 
26
- # used by J1 for encryption
27
- session_secret: <your-secret-string>
26
+ # used for OpenSSL AES encryption
27
+ # secretkey MUST be 32 bytes (AES|CBC)
28
+ secretkey: <your-secret-string>
28
29
 
29
30
 
30
31
  # ==============================================================================
@@ -355,7 +355,7 @@ resources:
355
355
  pass_init_data: true
356
356
  data:
357
357
  css: [
358
- core/css/themes/uno-light/bootstrap,
358
+ core/css/themes/unolight/bootstrap,
359
359
  core/css/icon-fonts/materialdesign,
360
360
  core/css/icon-fonts/fontawesome,
361
361
  core/css/vendor