j1-template 2020.0.21 → 2021.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (665) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/_includes/themes/j1/blocks/ads/ad.html +3 -3
  4. data/_includes/themes/j1/blocks/footer/boxes/about_box.proc +1 -1
  5. data/_includes/themes/j1/blocks/footer/boxes/contacts_box.proc +1 -1
  6. data/_includes/themes/j1/blocks/footer/boxes/issue.proc +1 -1
  7. data/_includes/themes/j1/blocks/footer/boxes/legal_statements.proc +1 -1
  8. data/_includes/themes/j1/blocks/footer/boxes/links_box.proc +1 -1
  9. data/_includes/themes/j1/blocks/footer/boxes/news_box.proc +1 -1
  10. data/_includes/themes/j1/blocks/footer/boxes/social_media_icons.proc +1 -1
  11. data/_includes/themes/j1/blocks/footer/generator.html +2 -2
  12. data/_includes/themes/j1/layouts/content_generator_app.html +1 -1
  13. data/_includes/themes/j1/layouts/content_generator_blog_archive.html +12 -12
  14. data/_includes/themes/j1/layouts/content_generator_collection.html +3 -3
  15. data/_includes/themes/j1/layouts/content_generator_page.html +5 -5
  16. data/_includes/themes/j1/layouts/content_generator_post.html +65 -163
  17. data/_includes/themes/j1/layouts/content_generator_raw.html +1 -1
  18. data/_includes/themes/j1/layouts/layout_metadata_generator.html +14 -14
  19. data/_includes/themes/j1/layouts/layout_module_generator.html +1 -1
  20. data/_includes/themes/j1/layouts/layout_resource_generator.html +1 -1
  21. data/_includes/themes/j1/modules/attics/generator.html +2 -2
  22. data/_includes/themes/j1/modules/boards/news_pin_board.html +1 -1
  23. data/_includes/themes/j1/modules/connectors/ad/custom-provider.html +1 -1
  24. data/_includes/themes/j1/modules/connectors/ad/google-adsense.html +16 -2
  25. data/_includes/themes/j1/modules/connectors/ads +3 -3
  26. data/_includes/themes/j1/modules/connectors/analytic/custom-provider.html +1 -1
  27. data/_includes/themes/j1/modules/connectors/analytic/google-analytics.html +3 -5
  28. data/_includes/themes/j1/modules/connectors/analytics +3 -3
  29. data/_includes/themes/j1/modules/connectors/comment/custom-provider.html +1 -1
  30. data/_includes/themes/j1/modules/connectors/comment/disqus.html +39 -26
  31. data/_includes/themes/j1/modules/connectors/comment/facebook.html +1 -1
  32. data/_includes/themes/j1/modules/connectors/comments +3 -3
  33. data/_includes/themes/j1/modules/connectors/sharing +1 -1
  34. data/_includes/themes/j1/modules/connectors/translator +3 -3
  35. data/_includes/themes/j1/modules/connectors/translators/custom-translator.html +1 -1
  36. data/_includes/themes/j1/modules/connectors/translators/google-translator.html +1 -1
  37. data/_includes/themes/j1/modules/navigator/generator.html +18 -9
  38. data/_includes/themes/j1/modules/navigator/procedures/topsearch.proc +37 -27
  39. data/_includes/themes/j1/procedures/collections/create_collection_article_preview.proc +1 -1
  40. data/_includes/themes/j1/procedures/global/attributes_loader.proc +21 -21
  41. data/_includes/themes/j1/procedures/global/collect_frontmatter_options.proc +1 -1
  42. data/_includes/themes/j1/procedures/global/collect_page_options.proc +1 -1
  43. data/_includes/themes/j1/procedures/global/create_bs_button.proc +5 -4
  44. data/_includes/themes/j1/procedures/global/create_word_cloud.proc +4 -2
  45. data/_includes/themes/j1/procedures/global/get_category.proc +1 -1
  46. data/_includes/themes/j1/procedures/global/get_category_item.proc +1 -1
  47. data/_includes/themes/j1/procedures/global/get_documents_dir.proc +1 -1
  48. data/_includes/themes/j1/procedures/global/get_page_path.proc +1 -1
  49. data/_includes/themes/j1/procedures/global/get_page_url.proc +1 -1
  50. data/_includes/themes/j1/procedures/global/pager.proc +1 -1
  51. data/_includes/themes/j1/procedures/global/select_color.proc +1 -1
  52. data/_includes/themes/j1/procedures/global/select_font_size.proc +1 -1
  53. data/_includes/themes/j1/procedures/global/select_icon_size.proc +1 -1
  54. data/_includes/themes/j1/procedures/global/select_location.proc +1 -1
  55. data/_includes/themes/j1/procedures/global/set_base_vars_folders.proc +1 -1
  56. data/_includes/themes/j1/procedures/global/set_env_entry_document.proc +1 -1
  57. data/_includes/themes/j1/procedures/global/set_image_block.proc +1 -1
  58. data/_includes/themes/j1/procedures/global/setup.proc +10 -10
  59. data/_includes/themes/j1/procedures/layouts/content_writer.proc +2 -3
  60. data/_includes/themes/j1/procedures/layouts/default_writer.proc +1 -1
  61. data/_includes/themes/j1/procedures/layouts/module_writer.proc +2 -2
  62. data/_includes/themes/j1/procedures/layouts/resource_writer.proc +1 -1
  63. data/_includes/themes/j1/procedures/posts/collate_calendar.proc +2 -2
  64. data/_includes/themes/j1/procedures/posts/collate_list.proc +2 -2
  65. data/_includes/themes/j1/procedures/posts/collate_timeline.proc +19 -18
  66. data/_includes/themes/j1/procedures/posts/create_ad_block.proc +1 -1
  67. data/_includes/themes/j1/procedures/posts/create_series_header.proc +10 -6
  68. data/_layouts/app.html +1 -1
  69. data/_layouts/blog_archive.html +1 -1
  70. data/_layouts/collection.html +1 -1
  71. data/_layouts/compress.html +1 -1
  72. data/_layouts/default.html +4 -4
  73. data/_layouts/home.html +3 -3
  74. data/_layouts/page.html +1 -1
  75. data/_layouts/paginator/autopage_category.html +1 -1
  76. data/_layouts/paginator/autopage_collection.html +1 -1
  77. data/_layouts/paginator/autopage_collections_tags.html +1 -1
  78. data/_layouts/paginator/autopage_tags.html +1 -1
  79. data/_layouts/post.html +1 -1
  80. data/_layouts/raw.html +1 -1
  81. data/apps/public/cc/cc.yml +4 -4
  82. data/assets/data/authclient.html +2 -2
  83. data/assets/data/banner.html +25 -21
  84. data/assets/data/carousel.json +8 -16
  85. data/assets/data/cookiebar.html +15 -11
  86. data/assets/data/fam.html +124 -0
  87. data/assets/data/footer.html +1 -1
  88. data/assets/data/galleries.json +1 -1
  89. data/assets/data/gallery_customizer.html +19 -7
  90. data/assets/data/mdi_icons.json +1 -1
  91. data/assets/data/menu.html +2 -2
  92. data/assets/data/mmenu.html +2 -2
  93. data/assets/data/mmenu_sidebar.html +4 -4
  94. data/assets/data/mmenu_toc.html +1 -1
  95. data/assets/data/panel.html +113 -67
  96. data/assets/data/quicklinks.html +16 -16
  97. data/assets/data/themes.json +9 -9
  98. data/assets/data/twa_v1.json +1 -1
  99. data/assets/error_pages/HTTP204.html +2 -1
  100. data/assets/error_pages/HTTP400.html +4 -3
  101. data/assets/error_pages/HTTP401.html +4 -3
  102. data/assets/error_pages/HTTP403.html +4 -3
  103. data/assets/error_pages/HTTP404.html +4 -3
  104. data/assets/error_pages/HTTP500.html +4 -3
  105. data/assets/error_pages/HTTP501.html +4 -3
  106. data/assets/error_pages/HTTP502.html +4 -3
  107. data/assets/error_pages/HTTP503.html +4 -3
  108. data/assets/error_pages/HTTP520.html +4 -3
  109. data/assets/error_pages/HTTP521.html +4 -3
  110. data/assets/error_pages/HTTP533.html +4 -3
  111. data/assets/themes/j1/adapter/js/algolia.js +3 -3
  112. data/assets/themes/j1/adapter/js/attic.js +4 -4
  113. data/assets/themes/j1/adapter/js/bmd.js +2 -2
  114. data/assets/themes/j1/adapter/js/carousel.js +402 -39
  115. data/assets/themes/j1/adapter/js/clipboard.js +4 -4
  116. data/assets/themes/j1/adapter/js/cookiebar.js +9 -2
  117. data/assets/themes/j1/adapter/js/{ssm.js → fam.js} +253 -143
  118. data/assets/themes/j1/adapter/js/framer.js +75 -59
  119. data/assets/themes/j1/adapter/js/gallery_customizer.js +5 -4
  120. data/assets/themes/j1/adapter/js/j1.js +26 -20
  121. data/assets/themes/j1/adapter/js/jf_gallery.js +5 -5
  122. data/assets/themes/j1/adapter/js/lightbox.js +4 -4
  123. data/assets/themes/j1/adapter/js/logger.js +3 -3
  124. data/assets/themes/j1/adapter/js/{searcher.js → lunr_search.js} +70 -67
  125. data/assets/themes/j1/adapter/js/mmenu.js +22 -14
  126. data/assets/themes/j1/adapter/js/navigator.js +63 -58
  127. data/assets/themes/j1/adapter/js/rouge.js +248 -0
  128. data/assets/themes/j1/adapter/js/rtable.js +183 -0
  129. data/assets/themes/j1/adapter/js/themer.js +94 -133
  130. data/assets/themes/j1/adapter/js/toccer.js +74 -34
  131. data/assets/themes/j1/core/css/animate.css +2 -2
  132. data/assets/themes/j1/core/css/{icons-fontawesome.css → icon-fonts/fontawesome.css} +2 -2
  133. data/assets/themes/j1/core/css/{icons-fontawesome.min.css → icon-fonts/fontawesome.min.css} +0 -0
  134. data/assets/themes/j1/core/css/{icons-iconify.css → icon-fonts/iconify.css} +5 -5
  135. data/assets/themes/j1/core/css/{icons-iconify.min.css → icon-fonts/iconify.min.css} +0 -0
  136. data/assets/themes/j1/core/css/{icons-materialdesign.css → icon-fonts/materialdesign.css} +9 -9
  137. data/assets/themes/j1/core/css/{icons-materialdesign.min.css → icon-fonts/materialdesign.min.css} +0 -0
  138. data/assets/themes/j1/core/css/{icons-twemoji.css → icon-fonts/twemoji.css} +6 -6
  139. data/assets/themes/j1/core/css/{icons-twemoji.min.css → icon-fonts/twemoji.min.css} +0 -0
  140. data/assets/themes/j1/core/css/{bootstrap.css → themes/bootstrap/bootstrap.css} +8 -5
  141. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.min.css +6 -0
  142. data/assets/themes/j1/core/css/{uno-dark.css → themes/uno-dark/bootstrap.css} +141 -132
  143. data/assets/themes/j1/core/css/themes/uno-dark/bootstrap.min.css +6 -0
  144. data/assets/themes/j1/core/css/{uno.css → themes/uno-light/bootstrap.css} +1667 -1339
  145. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +8 -0
  146. data/assets/themes/j1/core/css/vendor.css +63 -53
  147. data/assets/themes/j1/core/css/vendor.min.css +1 -1
  148. data/assets/themes/j1/core/js/template.js +9 -19
  149. data/assets/themes/j1/core/js/template.js.map +1 -1
  150. data/assets/themes/j1/core/js/template.min.js +1 -1
  151. data/assets/themes/j1/modules/backstretch/js/backstretch.js +1 -1
  152. data/assets/themes/j1/modules/backstretch/js/backstretch.min.js +1 -1
  153. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.full.js +6930 -0
  154. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.js +6 -0
  155. data/assets/themes/j1/modules/carousel/css/carousel.css +1 -1
  156. data/assets/themes/j1/modules/carousel/css/carousel.min.css +1 -1
  157. data/assets/themes/j1/modules/carousel/css/carousel_transitions.css +1 -1
  158. data/assets/themes/j1/modules/carousel/css/carousel_transitions.min.css +1 -1
  159. data/assets/themes/j1/modules/carousel/css/theme/uno.css +121 -76
  160. data/assets/themes/j1/modules/carousel/css/theme/uno.min.css +2 -2
  161. data/assets/themes/j1/modules/cash/js/cash.js +1374 -0
  162. data/assets/themes/j1/modules/cash/js/cash.min.js +42 -0
  163. data/assets/themes/j1/modules/clipboard/css/theme/uno.css +3 -3
  164. data/assets/themes/j1/modules/clipboard/css/theme/uno.min.css +2 -2
  165. data/assets/themes/j1/modules/fam/css/uno/fam.css +369 -0
  166. data/assets/themes/j1/modules/fam/js/fam.js +477 -0
  167. data/assets/themes/j1/modules/iframeResizer/examples/frame.nested.html +1 -1
  168. data/assets/themes/j1/modules/iframeResizer/js/{iframeResizer.js → resizer.js} +0 -0
  169. data/assets/themes/j1/modules/iframeResizer/js/{iframeResizer.map → resizer.map} +0 -0
  170. data/assets/themes/j1/modules/iframeResizer/js/{iframeResizer.min.js → resizer.min.js} +0 -0
  171. data/assets/themes/j1/modules/jquery/css/jqueryUI/theme.css +443 -0
  172. data/assets/themes/j1/modules/jquery/css/jqueryUI/theme.min.css +5 -0
  173. data/assets/themes/j1/modules/jquery/js/jquery.js +7 -4
  174. data/assets/themes/j1/modules/jquery/js/jquery.min.js +2 -2
  175. data/assets/themes/j1/modules/jquery/js/jqueryUI.js +18701 -0
  176. data/assets/themes/j1/modules/jquery/js/jqueryUI.min.js +13 -0
  177. data/assets/themes/j1/modules/jquery/js/require.js +2145 -0
  178. data/assets/themes/j1/modules/jquery/js/require.min.js +5 -0
  179. data/assets/themes/j1/modules/justifiedGallery/_versions/v3.7.0/css/theme/uno.css +1 -1
  180. data/assets/themes/j1/modules/justifiedGallery/_versions/v4.0.0/css/theme/uno.css +1 -1
  181. data/assets/themes/j1/modules/justifiedGallery/css/theme/uno.css +6 -5
  182. data/assets/themes/j1/modules/justifiedGallery/css/theme/uno.min.css +2 -2
  183. data/assets/themes/j1/modules/kofax.7z +0 -0
  184. data/assets/themes/j1/modules/lightGallery/css/themes/uno.css +1 -1
  185. data/assets/themes/j1/modules/lightGallery/css/themes/uno.min.css +1 -1
  186. data/assets/themes/j1/modules/lightGallery/js/modules/j1/j1-video.js +1 -1
  187. data/assets/themes/j1/modules/lightGallery/js/modules/j1/j1-video.min.js +1 -1
  188. data/assets/themes/j1/modules/lightbox/css/lightbox.css +1 -1
  189. data/assets/themes/j1/modules/lightbox/css/lightbox.min.css +1 -1
  190. data/assets/themes/j1/modules/lightbox/css/theme/uno.css +1 -1
  191. data/assets/themes/j1/modules/lightbox/css/theme/uno.min.css +1 -1
  192. data/assets/themes/j1/modules/lightbox/js/lightbox.js +2 -2
  193. data/assets/themes/j1/modules/lightbox/js/lightbox.min.js +1 -1
  194. data/assets/themes/j1/modules/lunrSearch/css/lunr_search.css +32 -0
  195. data/assets/themes/j1/modules/lunrSearch/css/lunr_search.min.css +32 -0
  196. data/assets/themes/j1/modules/lunrSearch/js/dateformat.js +125 -0
  197. data/assets/themes/j1/modules/lunrSearch/js/dateformat.min.js +14 -0
  198. data/assets/themes/j1/modules/lunrSearch/js/lunr.js +3475 -0
  199. data/assets/themes/j1/modules/lunrSearch/js/lunr.min.js +51 -0
  200. data/assets/themes/j1/modules/lunrSearch/js/lunr_search.js +184 -0
  201. data/assets/themes/j1/modules/lunrSearch/js/lunr_search.min.js +17 -0
  202. data/assets/themes/j1/modules/lunrSearch/js/mustache.js +772 -0
  203. data/assets/themes/j1/modules/lunrSearch/js/mustache.min.js +772 -0
  204. data/assets/themes/j1/modules/lunrSearch/js/uri.js +2340 -0
  205. data/assets/themes/j1/modules/lunrSearch/js/uri.min.js +93 -0
  206. data/assets/themes/j1/modules/materialize/js/anime.js +1283 -0
  207. data/assets/themes/j1/modules/materialize/js/anime.min.js +34 -0
  208. data/assets/themes/j1/modules/materialize/js/autocomplete.js +450 -0
  209. data/assets/themes/j1/modules/materialize/js/buttons.js +409 -0
  210. data/assets/themes/j1/modules/materialize/js/cards.js +40 -0
  211. data/assets/themes/j1/modules/materialize/js/carousel.js +717 -0
  212. data/assets/themes/j1/modules/materialize/js/cash-dom.js +1044 -0
  213. data/assets/themes/j1/modules/materialize/js/cash.js +960 -0
  214. data/assets/themes/j1/modules/materialize/js/characterCounter.js +136 -0
  215. data/assets/themes/j1/modules/materialize/js/chips.js +481 -0
  216. data/assets/themes/j1/modules/materialize/js/collapsible.js +275 -0
  217. data/assets/themes/j1/modules/materialize/js/component.js +44 -0
  218. data/assets/themes/j1/modules/materialize/js/datepicker.js +975 -0
  219. data/assets/themes/j1/modules/materialize/js/dropdown.js +617 -0
  220. data/assets/themes/j1/modules/materialize/js/forms.js +275 -0
  221. data/assets/themes/j1/modules/materialize/js/global.js +427 -0
  222. data/assets/themes/j1/modules/materialize/js/materialbox.js +453 -0
  223. data/assets/themes/j1/modules/materialize/js/modal.js +382 -0
  224. data/assets/themes/j1/modules/materialize/js/parallax.js +138 -0
  225. data/assets/themes/j1/modules/materialize/js/pushpin.js +145 -0
  226. data/assets/themes/j1/modules/materialize/js/range.js +263 -0
  227. data/assets/themes/j1/modules/materialize/js/ripple.js +335 -0
  228. data/assets/themes/j1/modules/materialize/js/scrollspy.js +295 -0
  229. data/assets/themes/j1/modules/materialize/js/select.js +432 -0
  230. data/assets/themes/j1/modules/materialize/js/sidenav.js +580 -0
  231. data/assets/themes/j1/modules/materialize/js/slider.js +359 -0
  232. data/assets/themes/j1/modules/materialize/js/tabs.js +402 -0
  233. data/assets/themes/j1/modules/materialize/js/tapTarget.js +314 -0
  234. data/assets/themes/j1/modules/materialize/js/timepicker.js +647 -0
  235. data/assets/themes/j1/modules/materialize/js/toasts.js +310 -0
  236. data/assets/themes/j1/modules/materialize/js/tooltip.js +303 -0
  237. data/assets/themes/j1/modules/materialize/js/waves.js +335 -0
  238. data/assets/themes/j1/modules/materialize/scss/components/_badges.scss +55 -0
  239. data/assets/themes/j1/modules/materialize/scss/components/_buttons.scss +322 -0
  240. data/assets/themes/j1/modules/materialize/scss/components/_cards.scss +195 -0
  241. data/assets/themes/j1/modules/materialize/scss/components/_carousel.scss +90 -0
  242. data/assets/themes/j1/modules/materialize/scss/components/_chips.scss +90 -0
  243. data/assets/themes/j1/modules/materialize/scss/components/_collapsible.scss +91 -0
  244. data/assets/themes/j1/modules/materialize/scss/components/_color-classes.scss +32 -0
  245. data/assets/themes/j1/modules/materialize/scss/components/_color-variables.scss +370 -0
  246. data/assets/themes/j1/modules/materialize/scss/components/_datepicker.scss +191 -0
  247. data/assets/themes/j1/modules/materialize/scss/components/_dropdown.scss +85 -0
  248. data/assets/themes/j1/modules/materialize/scss/components/_global.scss +769 -0
  249. data/assets/themes/j1/modules/materialize/scss/components/_grid.scss +156 -0
  250. data/assets/themes/j1/modules/materialize/scss/components/_icons-material-design.scss +5 -0
  251. data/assets/themes/j1/modules/materialize/scss/components/_materialbox.scss +43 -0
  252. data/assets/themes/j1/modules/materialize/scss/components/_modal.scss +94 -0
  253. data/assets/themes/j1/modules/materialize/scss/components/_navbar.scss +208 -0
  254. data/assets/themes/j1/modules/materialize/scss/components/_normalize.scss +447 -0
  255. data/assets/themes/j1/modules/materialize/scss/components/_preloader.scss +334 -0
  256. data/assets/themes/j1/modules/materialize/scss/components/_pulse.scss +34 -0
  257. data/assets/themes/j1/modules/materialize/scss/components/_sidenav.scss +216 -0
  258. data/assets/themes/j1/modules/materialize/scss/components/_slider.scss +92 -0
  259. data/assets/themes/j1/modules/materialize/scss/components/_table_of_contents.scss +33 -0
  260. data/assets/themes/j1/modules/materialize/scss/components/_tabs.scss +99 -0
  261. data/assets/themes/j1/modules/materialize/scss/components/_tapTarget.scss +103 -0
  262. data/assets/themes/j1/modules/materialize/scss/components/_timepicker.scss +183 -0
  263. data/assets/themes/j1/modules/materialize/scss/components/_toast.scss +58 -0
  264. data/assets/themes/j1/modules/materialize/scss/components/_tooltip.scss +32 -0
  265. data/assets/themes/j1/modules/materialize/scss/components/_transitions.scss +13 -0
  266. data/assets/themes/j1/modules/materialize/scss/components/_typography.scss +60 -0
  267. data/assets/themes/j1/modules/materialize/scss/components/_variables.scss +349 -0
  268. data/assets/themes/j1/modules/materialize/scss/components/_waves.scss +114 -0
  269. data/assets/themes/j1/modules/materialize/scss/components/forms/_checkboxes.scss +200 -0
  270. data/assets/themes/j1/modules/materialize/scss/components/forms/_file-input.scss +44 -0
  271. data/assets/themes/j1/modules/materialize/scss/components/forms/_forms.scss +22 -0
  272. data/assets/themes/j1/modules/materialize/scss/components/forms/_input-fields.scss +354 -0
  273. data/assets/themes/j1/modules/materialize/scss/components/forms/_radio-buttons.scss +115 -0
  274. data/assets/themes/j1/modules/materialize/scss/components/forms/_range.scss +161 -0
  275. data/assets/themes/j1/modules/materialize/scss/components/forms/_select.scss +180 -0
  276. data/assets/themes/j1/modules/materialize/scss/components/forms/_switches.scss +89 -0
  277. data/assets/themes/j1/modules/materialize/scss/materialize.scss +41 -0
  278. data/assets/themes/j1/modules/mdiPreviewer/css/previewer.css +1 -1
  279. data/assets/themes/j1/modules/mdiPreviewer/css/previewer.min.css +1 -1
  280. data/assets/themes/j1/modules/mmenuLight/css/mmenu.css +11 -11
  281. data/assets/themes/j1/modules/mmenuLight/css/mmenu.min.css +386 -12
  282. data/assets/themes/j1/modules/mmenuLight/css/theme/uno.css +16 -12
  283. data/assets/themes/j1/modules/mmenuLight/css/theme/uno.min.css +189 -8
  284. data/assets/themes/j1/modules/mmenuLight/js/mmenu.js +1 -1
  285. data/assets/themes/j1/modules/mmenuLight/js/mmenu.min.js +1 -1
  286. data/assets/themes/j1/modules/rouge/js/select.js +25 -0
  287. data/assets/themes/j1/modules/rtable/LICENSE +22 -0
  288. data/assets/themes/j1/modules/rtable/README.md +418 -0
  289. data/assets/themes/j1/modules/rtable/css/tablesaw.stackonly.css +148 -0
  290. data/assets/themes/j1/modules/rtable/css/theme/uno.css +191 -0
  291. data/assets/themes/j1/modules/rtable/css/theme/uno.min.css +191 -0
  292. data/assets/themes/j1/modules/rtable/js/rtable.js +692 -0
  293. data/assets/themes/j1/modules/rtable/js/rtable.min.js +690 -0
  294. data/assets/themes/j1/modules/rtable/js/tablesaw-init.js +18 -0
  295. data/assets/themes/j1/modules/rtable/js/tablesaw.stackonly.js +2371 -0
  296. data/assets/themes/j1/modules/{bsThemeSwitcher → themeSwitcher}/js/switcher.js +5 -6
  297. data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +26 -0
  298. data/assets/themes/j1/modules/twemoji/css/picker/twemoji-picker.css +1 -1
  299. data/assets/themes/j1/modules/twemoji/css/picker/twemoji-picker.min.css +1 -1
  300. data/assets/themes/j1/modules/twemoji/js/picker/twemoji-picker.js +2 -2
  301. data/assets/themes/j1/modules/twemoji/js/picker/twemoji-picker.min.js +1 -1
  302. data/assets/themes/j1/modules/twemoji/js/twemoji.js +1 -1
  303. data/assets/themes/j1/modules/twemoji/js/twemoji.min.js +1 -1
  304. data/lib/j1/commands/generate.rb +8 -7
  305. data/lib/j1/version.rb +1 -1
  306. data/lib/j1_app.rb +0 -4
  307. data/lib/j1_app/j1_auth_manager/auth_manager.rb +1 -1
  308. data/lib/j1_app/j1_auth_manager/config.rb +2 -2
  309. data/lib/j1_app/j1_auth_manager/error_pages.rb +1 -1
  310. data/lib/j1_app/j1_auth_manager/helpers_disqus.rb +1 -1
  311. data/lib/j1_app/j1_auth_manager/helpers_facebook.rb +1 -1
  312. data/lib/j1_app/j1_auth_manager/helpers_github.rb +1 -1
  313. data/lib/j1_app/j1_auth_manager/helpers_patreon.rb +1 -1
  314. data/lib/j1_app/j1_auth_manager/helpers_twitter.rb +1 -1
  315. data/lib/j1_app/j1_auth_manager/warden_omniauth.rb +1 -1
  316. data/lib/j1_app/omniauth/strategies/disqus.rb +1 -1
  317. data/lib/j1_app/omniauth/strategies/facebook.rb +1 -1
  318. data/lib/j1_app/omniauth/strategies/github.rb +1 -1
  319. data/lib/j1_app/omniauth/strategies/patreon.rb +1 -1
  320. data/lib/j1_app/omniauth/strategies/twitter.rb +1 -1
  321. data/lib/starter_web/Gemfile +22 -47
  322. data/lib/starter_web/_config.yml +81 -10
  323. data/lib/starter_web/_data/_defaults/categories.yml +1 -1
  324. data/lib/starter_web/_data/_defaults/colors.yml +1 -1
  325. data/lib/starter_web/_data/_defaults/font_sizes.yml +1 -1
  326. data/lib/starter_web/_data/_defaults/j1_light_gallery.yml +1 -1
  327. data/lib/starter_web/_data/_defaults/resources.yml +1 -1
  328. data/lib/starter_web/_data/_defaults/template_settings.yml +1 -1
  329. data/lib/starter_web/_data/apps/carousel.yml +168 -347
  330. data/lib/starter_web/_data/apps/defaults/carousel.yml +88 -87
  331. data/lib/starter_web/_data/apps/defaults/gallery_customizer.yml +1 -1
  332. data/lib/starter_web/_data/apps/defaults/justified_gallery.yml +1 -1
  333. data/lib/starter_web/_data/apps/defaults/light_gallery.yml +1 -1
  334. data/lib/starter_web/_data/apps/defaults/lightbox.yml +1 -1
  335. data/lib/starter_web/_data/apps/gallery_customizer.yml +1 -1
  336. data/lib/starter_web/_data/apps/justified_gallery.yml +45 -11
  337. data/lib/starter_web/_data/apps/light_gallery.yml +1 -1
  338. data/lib/starter_web/_data/apps/lightbox.yml +1 -1
  339. data/lib/starter_web/_data/blocks/banner.yml +33 -28
  340. data/lib/starter_web/_data/blocks/defaults/banner.yml +15 -14
  341. data/lib/starter_web/_data/blocks/defaults/footer.yml +2 -2
  342. data/lib/starter_web/_data/blocks/defaults/panel.yml +4 -3
  343. data/lib/starter_web/_data/blocks/footer.yml +3 -3
  344. data/lib/starter_web/_data/blocks/panel.yml +25 -26
  345. data/lib/starter_web/_data/builder/blog_navigator.yml +1 -1
  346. data/lib/starter_web/_data/categories.yml +1 -1
  347. data/lib/starter_web/_data/colors.yml +1 -1
  348. data/lib/starter_web/_data/font_sizes.yml +1 -1
  349. data/lib/starter_web/_data/{template_settings.yml → j1_config.yml} +90 -36
  350. data/lib/starter_web/_data/layouts/app.yml +1 -1
  351. data/lib/starter_web/_data/layouts/blog_archive.yml +1 -1
  352. data/lib/starter_web/_data/layouts/collection.yml +7 -7
  353. data/lib/starter_web/_data/layouts/default.yml +1 -1
  354. data/lib/starter_web/_data/layouts/home.yml +20 -11
  355. data/lib/starter_web/_data/layouts/page.yml +10 -1
  356. data/lib/starter_web/_data/layouts/post.yml +10 -1
  357. data/lib/starter_web/_data/layouts/raw.yml +1 -1
  358. data/lib/starter_web/_data/modules/advertising.yml +1 -1
  359. data/lib/starter_web/_data/modules/attics.yml +1 -1
  360. data/lib/starter_web/_data/modules/authentication.yml +1 -1
  361. data/lib/starter_web/_data/modules/cookiebar.yml +1 -1
  362. data/lib/starter_web/_data/modules/defaults/attics.yml +1 -1
  363. data/lib/starter_web/_data/modules/defaults/authentication.yml +1 -1
  364. data/lib/starter_web/_data/modules/defaults/cookiebar.yml +4 -2
  365. data/lib/starter_web/_data/modules/defaults/{ssm.yml → fam.yml} +13 -16
  366. data/lib/starter_web/_data/modules/defaults/framer.yml +1 -1
  367. data/lib/starter_web/_data/modules/defaults/jekyll_search.yml +1 -1
  368. data/lib/starter_web/_data/modules/defaults/log4javascript.yml +1 -1
  369. data/lib/starter_web/_data/modules/defaults/log4r.yml +1 -1
  370. data/lib/starter_web/_data/modules/defaults/lunr_search.yml +171 -0
  371. data/lib/starter_web/_data/modules/defaults/navigator.yml +6 -6
  372. data/lib/starter_web/_data/modules/defaults/themer.yml +9 -14
  373. data/lib/starter_web/_data/modules/defaults/toccer.yml +5 -3
  374. data/lib/starter_web/_data/modules/fam.yml +192 -0
  375. data/lib/starter_web/_data/modules/framer.yml +1 -1
  376. data/lib/starter_web/_data/modules/jekyll_search.yml +1 -1
  377. data/lib/starter_web/_data/modules/log4javascript.yml +1 -1
  378. data/lib/starter_web/_data/modules/log4r.yml +1 -1
  379. data/lib/starter_web/_data/modules/{back2top.yml → lunr_search.yml} +15 -9
  380. data/lib/starter_web/_data/modules/navigator.yml +3 -3
  381. data/lib/starter_web/_data/modules/navigator_menu.yml +14 -8
  382. data/lib/starter_web/_data/modules/themer.yml +2 -20
  383. data/lib/starter_web/_data/modules/toccer.yml +1 -74
  384. data/lib/starter_web/_data/pages/builder.yml +1 -1
  385. data/lib/starter_web/_data/plugins/defaults/notebooks.yml +1 -1
  386. data/lib/starter_web/_data/plugins/defaults/paginator.yml +1 -1
  387. data/lib/starter_web/_data/plugins/notebooks.yml +1 -1
  388. data/lib/starter_web/_data/plugins/paginator.yml +1 -1
  389. data/lib/starter_web/_data/private.yml +1 -1
  390. data/lib/starter_web/_data/resources.yml +194 -100
  391. data/lib/starter_web/_data/utilities/defaults/util_srv.yml +1 -1
  392. data/lib/starter_web/_data/utilities/util_srv.yml +1 -1
  393. data/lib/starter_web/{includes → _includes}/attributes.asciidoc +19 -8
  394. data/lib/starter_web/_includes/breadcrumbs.html +11 -0
  395. data/lib/starter_web/_includes/documents/licenses/mit.asciidoc +19 -0
  396. data/lib/starter_web/{collections/posts/private → _includes/documents}/readme +0 -0
  397. data/lib/starter_web/{collections/posts/public/test_posts/_posts/includes/tables/debug_variables.asciidoc → _includes/tables/jekyll_variables.asciidoc} +8 -11
  398. data/lib/starter_web/_includes/tables/template_variables.asciidoc +46 -0
  399. data/lib/starter_web/_plugins/asciidoctor-extensions/admonition-block-answer.rb +1 -1
  400. data/lib/starter_web/_plugins/asciidoctor-extensions/admonition-block-question.rb +1 -1
  401. data/lib/starter_web/_plugins/asciidoctor-extensions/banner.rb +1 -1
  402. data/lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb +1 -1
  403. data/lib/starter_web/_plugins/asciidoctor-extensions/fab-icon-inline.rb +1 -1
  404. data/lib/starter_web/_plugins/asciidoctor-extensions/fas-icon-inline.rb +1 -1
  405. data/lib/starter_web/_plugins/asciidoctor-extensions/gallery-block.rb +1 -1
  406. data/lib/starter_web/_plugins/asciidoctor-extensions/gist-block.rb +1 -1
  407. data/lib/starter_web/_plugins/asciidoctor-extensions/iconify-icon-inline.rb +1 -1
  408. data/lib/starter_web/_plugins/asciidoctor-extensions/lightbox-block.rb +1 -1
  409. data/lib/starter_web/_plugins/asciidoctor-extensions/mdi-icon-inline.rb +1 -1
  410. data/lib/starter_web/_plugins/asciidoctor-extensions/panel.rb +1 -1
  411. data/lib/starter_web/_plugins/asciidoctor-extensions/shout-block.rb +1 -1
  412. data/lib/starter_web/_plugins/asciidoctor-extensions/twitter-emoji-inline.rb +1 -1
  413. data/lib/starter_web/_plugins/debug.rb +1 -2
  414. data/lib/starter_web/_plugins/filters.rb +1 -2
  415. data/lib/starter_web/_plugins/lorem_inline.rb +159 -0
  416. data/lib/starter_web/_plugins/lunr_index.rb +316 -0
  417. data/lib/starter_web/_plugins/minifyJS.rb +1 -1
  418. data/lib/starter_web/_plugins/minifyJSON.rb +1 -1
  419. data/lib/starter_web/_plugins/prettify.rb +1 -4
  420. data/lib/starter_web/_plugins/simple_search_filter.rb +1 -2
  421. data/lib/starter_web/_plugins/symlink_watcher.rb +3 -4
  422. data/lib/starter_web/assets/images/modules/attics/banner/lunr-banner-1280x800.jpg +0 -0
  423. data/lib/starter_web/assets/images/modules/attics/katie-moum-1920x1280.jpg +0 -0
  424. data/lib/starter_web/assets/images/modules/attics/tldr-1920x800.jpg +0 -0
  425. data/lib/starter_web/assets/images/modules/icons/d1/d1-256x256.png +0 -0
  426. data/lib/starter_web/assets/images/modules/icons/d1/d1-32x32.ico +0 -0
  427. data/lib/starter_web/assets/images/modules/icons/d1/d1-512x512.png +0 -0
  428. data/lib/starter_web/assets/images/modules/icons/d1/d1-64x64.png +0 -0
  429. data/lib/starter_web/assets/images/modules/icons/d1/d1.ico +0 -0
  430. data/lib/starter_web/assets/images/modules/icons/d1/favicon.ico +0 -0
  431. data/lib/starter_web/assets/images/modules/icons/d1/scalable/d1.svg +48 -43
  432. data/lib/starter_web/assets/images/pages/winlogbeat/coordinate-map.png +0 -0
  433. data/lib/starter_web/assets/images/pages/winlogbeat/kibana-powershell.jpg +0 -0
  434. data/lib/starter_web/assets/images/pages/winlogbeat/option_ignore_outgoing.png +0 -0
  435. data/lib/starter_web/assets/images/pages/winlogbeat/winlogbeat-dashboard.png +0 -0
  436. data/lib/starter_web/assets/images/quotes/colored-1.jpg +0 -0
  437. data/lib/starter_web/assets/images/quotes/colored-2.jpg +0 -0
  438. data/lib/starter_web/assets/images/quotes/default.jpg +0 -0
  439. data/lib/starter_web/assets/images/quotes/light-blue.jpg +0 -0
  440. data/lib/starter_web/assets/images/quotes/people.jpg +0 -0
  441. data/lib/starter_web/collections/posts/{protected → private/_posts}/readme +0 -0
  442. data/lib/starter_web/collections/posts/protected/_posts/readme +0 -0
  443. data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1-template.adoc.erb +77 -80
  444. data/lib/starter_web/collections/posts/public/featured/_posts/2018-05-01-confusion-about-base-url.adoc +21 -10
  445. data/lib/starter_web/collections/posts/public/featured/_posts/2019-05-01-top-open-source-static-site-generators.adoc +41 -31
  446. data/lib/starter_web/collections/posts/public/featured/_posts/2019-06-01-about-cookies.adoc +32 -27
  447. data/lib/starter_web/collections/posts/public/{test_posts/_posts/includes → featured/_posts/_includes}/attributes.asciidoc +13 -16
  448. data/lib/starter_web/collections/posts/public/featured/_posts/_includes/documents/readme +0 -0
  449. data/lib/starter_web/collections/posts/public/featured/_posts/{000_includes → _includes/documents}/unsplash-badge.asciidoc +0 -0
  450. data/lib/starter_web/collections/posts/public/featured/_posts/_includes/tables/readme +0 -0
  451. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-test-series.adoc +144 -0
  452. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-test-series.adoc +146 -0
  453. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-test-series.adoc +146 -0
  454. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-04-post-test-series.adoc +146 -0
  455. data/lib/starter_web/collections/posts/public/{wikipedia/_posts/000_includes → series/_posts/_includes}/attributes.asciidoc +9 -18
  456. data/lib/starter_web/collections/posts/public/series/_posts/{000_includes → _includes}/documents/100-docker-using-shared-folders.asciidoc +0 -0
  457. data/lib/starter_web/collections/posts/public/series/_posts/{000_includes → _includes}/documents/loop.sh +0 -0
  458. data/lib/starter_web/collections/posts/public/series/_posts/{000_includes → _includes}/tables/debug_variables.asciidoc +0 -0
  459. data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-20-minneapolis.adoc +16 -8
  460. data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-24-narcisse-snake-dens.adoc +2 -7
  461. data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-26-columbia-river.adoc +2 -6
  462. data/lib/starter_web/collections/posts/public/wikipedia/_posts/_includes/attributes.asciidoc +37 -0
  463. data/lib/starter_web/collections/posts/public/wikipedia/_posts/_includes/documents/readme +0 -0
  464. data/lib/starter_web/collections/posts/public/wikipedia/_posts/_includes/tables/readme +0 -0
  465. data/lib/starter_web/config.ru +1 -1
  466. data/lib/starter_web/dot.gitattributes +1 -1
  467. data/lib/starter_web/dot.nojekyll +1 -1
  468. data/lib/starter_web/index.html +16 -10
  469. data/lib/starter_web/package.json +25 -15
  470. data/lib/starter_web/pages/protected/site_search.adoc +4 -4
  471. data/lib/starter_web/pages/public/about/about_site.adoc +2 -2
  472. data/lib/starter_web/pages/public/about/become_a_patron.adoc +1 -3
  473. data/lib/starter_web/pages/public/blog/navigator/archive.html +34 -9
  474. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +40 -15
  475. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +32 -8
  476. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +8 -4
  477. data/lib/starter_web/pages/public/blog/navigator/index.html +6 -3
  478. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/100_meet_and_greet_jekyll.adoc +10 -7
  479. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/200_preparations.adoc +27 -11
  480. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/300_first_awesome_web.adoc +27 -12
  481. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/{includes → _includes}/attributes.asciidoc +2 -9
  482. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/_includes/documents/100_meet_and_greet_jekyll.asciidoc +31 -0
  483. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/{includes → _includes}/documents/200_preparations.asciidoc +0 -0
  484. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/{includes → _includes}/documents/300_first_awesome_web.asciidoc +0 -0
  485. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/{includes → _includes}/parts.asciidoc +1 -1
  486. data/lib/starter_web/{collections/posts/public/series/_posts/includes → pages/public/learn/kickstarter/web_in_a_day/_includes}/tables/debug_variables.asciidoc +0 -0
  487. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/_includes/tables/readme +0 -0
  488. data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +82 -121
  489. data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +35 -30
  490. data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +45 -42
  491. data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +59 -51
  492. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +56 -61
  493. data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +26 -20
  494. data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +280 -75
  495. data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +137 -36
  496. data/lib/starter_web/pages/public/learn/roundtrip/600_lunr.adoc +236 -0
  497. data/lib/starter_web/pages/public/learn/roundtrip/610_fam.adoc +294 -0
  498. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/attributes.asciidoc +6 -0
  499. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/100_gistblock.asciidoc +2 -1
  500. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/410_bottom_info.asciidoc +0 -0
  501. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/410_bottom_left_warning.asciidoc +0 -0
  502. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/410_bottom_right_danger.asciidoc +0 -0
  503. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/410_central_success.asciidoc +0 -0
  504. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/410_full_height_left_info.asciidoc +0 -0
  505. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/410_full_height_right_success.asciidoc +0 -0
  506. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/410_table_3_column.asciidoc +1 -1
  507. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/410_top_info.asciidoc +0 -0
  508. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/410_top_left_info.asciidoc +0 -0
  509. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/410_top_right_success.asciidoc +0 -0
  510. data/lib/starter_web/pages/public/learn/roundtrip/{includes → _includes}/documents/419_advanced_modals_demo.asciidoc +0 -0
  511. data/lib/starter_web/pages/public/learn/roundtrip/_includes/tables/readme +0 -0
  512. data/lib/starter_web/pages/public/learn/{whats_up.adoc → where_to_go.adoc} +32 -28
  513. data/lib/starter_web/pages/public/legal/de/100_impress.adoc +3 -2
  514. data/lib/starter_web/pages/public/legal/de/200_terms_of_use.adoc +2 -1
  515. data/lib/starter_web/pages/public/legal/de/300_privacy.adoc +2 -1
  516. data/lib/starter_web/pages/public/legal/de/400_license_agreement.adoc +2 -1
  517. data/lib/starter_web/pages/public/legal/de/500_support.adoc +2 -1
  518. data/lib/starter_web/pages/public/legal/en/000_copyright.adoc +32 -28
  519. data/lib/starter_web/pages/public/legal/en/100_impress.adoc +12 -8
  520. data/lib/starter_web/pages/public/legal/en/200_terms_of_use.adoc +17 -12
  521. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +13 -5
  522. data/lib/starter_web/pages/public/legal/en/400_license_agreement.adoc +12 -4
  523. data/lib/starter_web/pages/public/legal/en/500_support.adoc +12 -4
  524. data/lib/starter_web/pages/public/legal/en/eu/cookie.policy.asciidoc +1 -1
  525. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +66 -68
  526. data/lib/starter_web/pages/public/previewer/{includes → _includes}/attributes.asciidoc +6 -0
  527. data/lib/starter_web/pages/public/previewer/_includes/documents/licenses/mit.asciidoc +19 -0
  528. data/lib/starter_web/pages/public/previewer/_includes/documents/readme +0 -0
  529. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/100_absolute_sizes.asciidoc +1 -1
  530. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/110_bs_grid_sizes.asciidoc +1 -1
  531. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/120_relative_sizes.asciidoc +1 -1
  532. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/200_rotate.asciidoc +1 -1
  533. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/300_flip.asciidoc +1 -1
  534. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/400_spin_pulsed.asciidoc +1 -1
  535. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/500_bw_color_palette.asciidoc +1 -1
  536. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/510_bs_color_palette.asciidoc +1 -1
  537. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/600_md_color_palette.asciidoc +1 -1
  538. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/601_md_color_palette_indigo.asciidoc +1 -1
  539. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/mdi_icons/602_md_color_palette_pink.asciidoc +1 -1
  540. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/twitter_emoji/100_bs_sizes.asciidoc +1 -1
  541. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/twitter_emoji/100_relative_sizes.asciidoc +1 -1
  542. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/twitter_emoji/200_rotate.asciidoc +1 -1
  543. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/twitter_emoji/300_flip.asciidoc +1 -1
  544. data/lib/starter_web/pages/public/previewer/{includes → _includes}/tables/twitter_emoji/400_spin_pulsed.asciidoc +1 -1
  545. data/lib/starter_web/pages/public/previewer/bootstrap_theme.adoc +2064 -1838
  546. data/lib/starter_web/pages/public/previewer/iframer.adoc +47 -35
  547. data/lib/starter_web/pages/public/previewer/justified_gallery.html +15 -7
  548. data/lib/starter_web/pages/public/previewer/mdi_icons_preview.adoc +19 -11
  549. data/lib/starter_web/pages/public/previewer/rouge.adoc +439 -0
  550. data/lib/starter_web/pages/public/previewer/twitter_emoji_preview.adoc +17 -14
  551. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  552. data/lib/starter_web/utilsrv/package.json +7 -7
  553. data/lib/starter_web/utilsrv/server.js +1 -1
  554. metadata +239 -200
  555. data/assets/data/jupyter/notebooks/_html/template.full.head.html +0 -75
  556. data/assets/data/jupyter/notebooks/_html/visualisation.html +0 -968
  557. data/assets/data/jupyter/notebooks/html/template.html +0 -50
  558. data/assets/data/jupyter/notebooks/html/visualisation.ok.html +0 -949
  559. data/assets/data/jupyter/notebooks/tutorial.ipynb +0 -169
  560. data/assets/data/jupyter/notebooks/visualisation.ipynb +0 -9413
  561. data/assets/data/search.json +0 -165
  562. data/assets/data/ssm.html +0 -242
  563. data/assets/themes/j1/adapter/js/back2top.js +0 -231
  564. data/assets/themes/j1/core/css/bootstrap.min.css +0 -6
  565. data/assets/themes/j1/core/css/theme-extensions.css +0 -9811
  566. data/assets/themes/j1/core/css/theme-extensions.min.css +0 -1
  567. data/assets/themes/j1/core/css/uno-dark.min.css +0 -6
  568. data/assets/themes/j1/core/css/uno.min.css +0 -8
  569. data/assets/themes/j1/modules/bootstrap/css/bootstrap.css +0 -10278
  570. data/assets/themes/j1/modules/bootstrap/css/bootstrap.css.map +0 -1
  571. data/assets/themes/j1/modules/bootstrap/css/bootstrap.min.css +0 -7
  572. data/assets/themes/j1/modules/bootstrap/css/bootstrap.min.css.map +0 -1
  573. data/assets/themes/j1/modules/bootstrap/js/bootstrap.js +0 -4420
  574. data/assets/themes/j1/modules/bootstrap/js/bootstrap.js.map +0 -1
  575. data/assets/themes/j1/modules/bootstrap/js/bootstrap.min.js +0 -7
  576. data/assets/themes/j1/modules/bootstrap/js/bootstrap.min.js.map +0 -1
  577. data/assets/themes/j1/modules/bsDatepicker/css/datepicker.css +0 -203
  578. data/assets/themes/j1/modules/bsDatepicker/css/theme/uno.css +0 -235
  579. data/assets/themes/j1/modules/bsDatepicker/js/datepicker.js +0 -509
  580. data/assets/themes/j1/modules/bsDatepicker/less/datepicker.less +0 -122
  581. data/assets/themes/j1/modules/bsThemeSwitcher/js/switcher.min.js +0 -19
  582. data/assets/themes/j1/modules/jekyllSearch/js/simple-jekyll-search.js +0 -468
  583. data/assets/themes/j1/modules/jekyllSearch/js/simple-jekyll-search.min.js +0 -6
  584. data/assets/themes/j1/modules/jqMouseWheel/README.md +0 -76
  585. data/assets/themes/j1/modules/jqMouseWheel/js/jquery.mousewheel.js +0 -221
  586. data/assets/themes/j1/modules/jqMouseWheel/js/jquery.mousewheel.min.js +0 -9
  587. data/assets/themes/j1/modules/noUISlider/LICENSE +0 -13
  588. data/assets/themes/j1/modules/noUISlider/css/nouislider.css +0 -260
  589. data/assets/themes/j1/modules/noUISlider/css/nouislider.min.css +0 -1
  590. data/assets/themes/j1/modules/noUISlider/js/nouislider.js +0 -2312
  591. data/assets/themes/j1/modules/noUISlider/js/nouislider.min.js +0 -3
  592. data/assets/themes/j1/modules/polyfills/js/msie.js +0 -140
  593. data/assets/themes/j1/modules/tocbot/css/theme/uno.css +0 -82
  594. data/assets/themes/j1/modules/tocbot/css/theme/uno.min.css +0 -15
  595. data/assets/themes/j1/modules/tocbot/css/tocbot.css +0 -75
  596. data/assets/themes/j1/modules/tocbot/css/tocbot.min.css +0 -19
  597. data/assets/themes/j1/modules/tocbot/js/tocbot.js +0 -19
  598. data/assets/themes/j1/modules/tocbot/js/tocbot.min.js +0 -19
  599. data/lib/starter_web/_data/modules/defaults/back2top.yml +0 -146
  600. data/lib/starter_web/_data/modules/defaults/cookie_consent.yml +0 -132
  601. data/lib/starter_web/_data/modules/defaults/stickybits.yml +0 -36
  602. data/lib/starter_web/_data/modules/ssm.yml +0 -142
  603. data/lib/starter_web/_plugins/lorem-inline.rb +0 -65
  604. data/lib/starter_web/assets/images/modules/attics/welcome-1920x1280-bw.jpg +0 -0
  605. data/lib/starter_web/assets/images/quotes/default.png +0 -0
  606. data/lib/starter_web/assets/images/quotes/people.png +0 -0
  607. data/lib/starter_web/collections/_biography/a-life-in-questions.adoc +0 -81
  608. data/lib/starter_web/collections/_biography/becoming.adoc +0 -72
  609. data/lib/starter_web/collections/_biography/born-to-run.adoc +0 -78
  610. data/lib/starter_web/collections/_biography/forty-autumns.adoc +0 -75
  611. data/lib/starter_web/collections/_biography/not-dead-yet.adoc +0 -69
  612. data/lib/starter_web/collections/_biography/princess-diarist-the.adoc +0 -72
  613. data/lib/starter_web/collections/_biography/when-breath-becomes-air.adoc +0 -73
  614. data/lib/starter_web/collections/_fantasy/harry-potter-deathly-hallows.adoc +0 -64
  615. data/lib/starter_web/collections/_fantasy/harry-potter-philosophers-stone.adoc +0 -64
  616. data/lib/starter_web/collections/_fantasy/mistborn-trilogy.adoc +0 -62
  617. data/lib/starter_web/collections/_fantasy/ready-player-one.adoc +0 -63
  618. data/lib/starter_web/collections/_fantasy/sword-of-destiny.adoc +0 -62
  619. data/lib/starter_web/collections/_fantasy/terry-pratchet-diary-2017.adoc +0 -60
  620. data/lib/starter_web/collections/_romance/breath-of-snow-and-ashes-a.adoc +0 -67
  621. data/lib/starter_web/collections/_romance/dressmaker-the.adoc +0 -61
  622. data/lib/starter_web/collections/_romance/fiery-cross-the.adoc +0 -69
  623. data/lib/starter_web/collections/_romance/it-ends-with-us.adoc +0 -66
  624. data/lib/starter_web/collections/_romance/outlander-novel.adoc +0 -78
  625. data/lib/starter_web/collections/_romance/virgins-outlander-short-story.adoc +0 -62
  626. data/lib/starter_web/collections/posts/public/featured/_posts/000_includes/attributes.asciidoc +0 -47
  627. data/lib/starter_web/collections/posts/public/series/_posts/000_includes/attributes.asciidoc +0 -66
  628. data/lib/starter_web/collections/posts/public/series/_posts/2018-11-01-docker-using-shared-folders.adoc +0 -506
  629. data/lib/starter_web/collections/posts/public/series/_posts/includes/attributes.asciidoc +0 -66
  630. data/lib/starter_web/collections/posts/public/series/_posts/includes/documents/100-docker-using-shared-folders.asciidoc +0 -430
  631. data/lib/starter_web/collections/posts/public/series/_posts/includes/documents/loop.sh +0 -28
  632. data/lib/starter_web/collections/posts/public/test_posts/_posts/2020-09-11-test_post.adoc +0 -134
  633. data/lib/starter_web/collections/posts/public/wikipedia/_posts/000_includes/tables/debug_variables.asciidoc +0 -48
  634. data/lib/starter_web/pages/public/bookshelf/100_whats_up.adoc +0 -281
  635. data/lib/starter_web/pages/public/bookshelf/200_book_shelf_biography.adoc +0 -52
  636. data/lib/starter_web/pages/public/bookshelf/300_book_shelf_fantasy.adoc +0 -54
  637. data/lib/starter_web/pages/public/bookshelf/400_book_shelf_romance.adoc +0 -54
  638. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/includes/documents/100_meet_and_greet_jekyll.asciidoc +0 -31
  639. data/lib/starter_web/pages/public/learn/roundtrip/510_mdb_preview/000_includes/attributes.asciidoc +0 -69
  640. data/lib/starter_web/pages/public/learn/roundtrip/510_mdb_preview/000_includes/documents/100_buttons.asciidoc +0 -170
  641. data/lib/starter_web/pages/public/learn/roundtrip/510_mdb_preview/mdb_previewer.adoc +0 -52
  642. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/attributes.asciidoc +0 -117
  643. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/100_gistblock.asciidoc +0 -27
  644. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_bottom_info.asciidoc +0 -11
  645. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_bottom_left_warning.asciidoc +0 -11
  646. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_bottom_right_danger.asciidoc +0 -11
  647. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_central_success.asciidoc +0 -11
  648. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_full_height_left_info.asciidoc +0 -11
  649. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_full_height_right_success.asciidoc +0 -11
  650. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_table_3_column.asciidoc +0 -47
  651. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_top_info.asciidoc +0 -11
  652. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_top_left_info.asciidoc +0 -11
  653. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_top_right_success.asciidoc +0 -11
  654. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/419_advanced_modals_html.asciidoc +0 -928
  655. data/lib/starter_web/pages/public/learn/vtutorials/000_test_youtube_video.adoc +0 -141
  656. data/lib/starter_web/pages/public/learn/vtutorials/100_basic_video.adoc +0 -109
  657. data/lib/starter_web/pages/public/test_pages/floating_ad.adoc +0 -221
  658. data/lib/starter_web/pages/public/test_pages/floating_div.adoc +0 -209
  659. data/lib/starter_web/pages/public/test_pages/includes/attributes.asciidoc +0 -47
  660. data/lib/starter_web/pages/public/test_pages/includes/documents/100_gistblock.asciidoc +0 -27
  661. data/lib/starter_web/pages/public/test_pages/includes/images/pages/minneapolis.1200x400.jpg +0 -0
  662. data/lib/starter_web/pages/public/test_pages/includes/tables/000_bem_specifiers.asciidoc +0 -22
  663. data/lib/starter_web/pages/public/test_pages/includes/tables/000_specifier_examples.asciidoc +0 -56
  664. data/lib/starter_web/pages/public/test_pages/nav_pagination_tester.adoc +0 -297
  665. data/lib/starter_web/pages/public/test_pages/page_attribute_tester.adoc +0 -103
@@ -0,0 +1,692 @@
1
+ /*
2
+ # -----------------------------------------------------------------------------
3
+ # ~/assets/themes/j1/modules/mmenu_light/js/mmenu.js
4
+ # Tablesaw v3.1.2 implementation for J1 Template
5
+ #
6
+ # Product/Info:
7
+ # https://jekyll.one
8
+ # https://github.com/filamentgroup/tablesaw
9
+ #
10
+ # Copyright (C) 2021 Juergen Adams
11
+ # Copyright (c) 2013 Filament Group
12
+ #
13
+ # J1 Template is licensed under the MIT License.
14
+ # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
15
+ # Tablesaw is licensed under the MIT License.
16
+ # See: https://github.com/filamentgroup/tablesaw/blob/master/LICENSE
17
+ # -----------------------------------------------------------------------------
18
+ */
19
+
20
+ /*! Tablesaw - v3.1.2 - 2019-03-19
21
+ * https://github.com/filamentgroup/tablesaw
22
+ * Copyright (c) 2019 Filament Group; Licensed MIT */
23
+
24
+ (function (root, factory) {
25
+ if (typeof define === 'function' && define.amd) {
26
+ define(["jquery"], function (jQuery) {
27
+ return (root.Tablesaw = factory(jQuery, root));
28
+ });
29
+ } else if (typeof exports === 'object') {
30
+ if( "document" in root ) {
31
+ module.exports = factory(require('jquery'), root);
32
+ } else {
33
+ // special jQuery case for CommonJS (pass in a window)
34
+ module.exports = factory(require('jquery')(root), root);
35
+ }
36
+ } else {
37
+ root.Tablesaw = factory(jQuery, root);
38
+ }
39
+ }(typeof window !== "undefined" ? window : this, function ($, window) {
40
+ "use strict";
41
+
42
+ var document = window.document;
43
+
44
+ // Account for Tablesaw being loaded either before or after the DOMContentLoaded event is fired.
45
+ var domContentLoadedTriggered = /complete|loaded/.test(document.readyState);
46
+ document.addEventListener("DOMContentLoaded", function() {
47
+ domContentLoadedTriggered = true;
48
+ });
49
+
50
+ var Tablesaw = {
51
+ i18n: {
52
+ modeStack: "Stack",
53
+ modeSwipe: "Swipe",
54
+ modeToggle: "Toggle",
55
+ modeSwitchColumnsAbbreviated: "Cols",
56
+ modeSwitchColumns: "Columns",
57
+ columnToggleButton: "Columns",
58
+ columnToggleError: "No eligible columns.",
59
+ sort: "Sort",
60
+ swipePreviousColumn: "Previous column",
61
+ swipeNextColumn: "Next column"
62
+ },
63
+ // BS4 Media break points
64
+ // -----------------------------------------------------------------------------
65
+ breakpoint: {
66
+ xl: "1200px",
67
+ lg: "992px",
68
+ md: "768px",
69
+ sm: "576px",
70
+ xs: "575px",
71
+ default: "992px"
72
+ },
73
+ // cut the mustard
74
+ mustard:
75
+ "head" in document && // IE9+, Firefox 4+, Safari 5.1+, Mobile Safari 4.1+, Opera 11.5+, Android 2.3+
76
+ (!window.blackberry || window.WebKitPoint) && // only WebKit Blackberry (OS 6+)
77
+ !window.operamini,
78
+ $: $,
79
+ _init: function(element) {
80
+ Tablesaw.$(element || document).trigger("enhance.tablesaw");
81
+ },
82
+ init: function(element) {
83
+ // Account for Tablesaw being loaded either before or after the DOMContentLoaded event is fired.
84
+ domContentLoadedTriggered =
85
+ domContentLoadedTriggered || /complete|loaded/.test(document.readyState);
86
+ if (!domContentLoadedTriggered) {
87
+ if ("addEventListener" in document) {
88
+ // Use raw DOMContentLoaded instead of shoestring (may have issues in Android 2.3, exhibited by stack table)
89
+ document.addEventListener("DOMContentLoaded", function() {
90
+ Tablesaw._init(element);
91
+ });
92
+ }
93
+ } else {
94
+ Tablesaw._init(element);
95
+ }
96
+ }
97
+ };
98
+
99
+ $(document).on("enhance.tablesaw", function() {
100
+
101
+ // Extend i18n config, if one exists.
102
+ if (typeof TablesawConfig !== "undefined" && TablesawConfig.i18n) {
103
+ Tablesaw.i18n = $.extend(Tablesaw.i18n, TablesawConfig.i18n || {});
104
+ }
105
+
106
+ Tablesaw.i18n.modes = [
107
+ Tablesaw.i18n.modeStack,
108
+ Tablesaw.i18n.modeSwipe,
109
+ Tablesaw.i18n.modeToggle
110
+ ];
111
+ });
112
+
113
+ if (Tablesaw.mustard) {
114
+ $(document.documentElement).addClass("tablesaw-enhanced");
115
+ }
116
+
117
+ (function() {
118
+ var pluginName = "tablesaw";
119
+ var classes = {
120
+ toolbar: "tablesaw-bar"
121
+ };
122
+ var events = {
123
+ create: "tablesawcreate",
124
+ destroy: "tablesawdestroy",
125
+ refresh: "tablesawrefresh",
126
+ resize: "tablesawresize"
127
+ };
128
+ var defaultMode = "stack";
129
+ var initSelector = "table";
130
+ var initFilterSelector = "[data-tablesaw],[data-tablesaw-mode],[data-tablesaw-sortable]";
131
+ var defaultConfig = {};
132
+
133
+ Tablesaw.events = events;
134
+
135
+ var Table = function(element) {
136
+ if (!element) {
137
+ throw new Error("Tablesaw requires an element.");
138
+ }
139
+
140
+ this.table = element;
141
+ this.$table = $(element);
142
+
143
+ // only one <thead> and <tfoot> are allowed, per the specification
144
+ this.$thead = this.$table
145
+ .children()
146
+ .filter("thead")
147
+ .eq(0);
148
+
149
+ // multiple <tbody> are allowed, per the specification
150
+ this.$tbody = this.$table.children().filter("tbody");
151
+
152
+ this.mode = this.$table.attr("data-tablesaw-mode") || defaultMode;
153
+
154
+ this.$toolbar = null;
155
+
156
+ this.attributes = {
157
+ subrow: "data-tablesaw-subrow",
158
+ ignorerow: "data-tablesaw-ignorerow"
159
+ };
160
+
161
+ this.init();
162
+ };
163
+
164
+ Table.prototype.init = function() {
165
+ if (!this.$thead.length) {
166
+ throw new Error("tablesaw: a <thead> is required, but none was found.");
167
+ }
168
+
169
+ if (!this.$thead.find("th").length) {
170
+ throw new Error("tablesaw: no header cells found. Are you using <th> inside of <thead>?");
171
+ }
172
+
173
+ // assign an id if there is none
174
+ if (!this.$table.attr("id")) {
175
+ this.$table.attr("id", pluginName + "-" + Math.round(Math.random() * 10000));
176
+ }
177
+
178
+ this.createToolbar();
179
+ this._initCells();
180
+ this.$table.data(pluginName, this);
181
+ this.$table.trigger(events.create, [this]);
182
+ };
183
+
184
+ Table.prototype.getConfig = function(pluginSpecificConfig) {
185
+ // shoestring extend doesn’t support arbitrary args
186
+ var configs = $.extend(defaultConfig, pluginSpecificConfig || {});
187
+ return $.extend(configs, typeof TablesawConfig !== "undefined" ? TablesawConfig : {});
188
+ };
189
+
190
+ Table.prototype._getPrimaryHeaderRow = function() {
191
+ return this._getHeaderRows().eq(0);
192
+ };
193
+
194
+ Table.prototype._getHeaderRows = function() {
195
+ return this.$thead
196
+ .children()
197
+ .filter("tr")
198
+ .filter(function() {
199
+ return !$(this).is("[data-tablesaw-ignorerow]");
200
+ });
201
+ };
202
+
203
+ Table.prototype._getRowIndex = function($row) {
204
+ return $row.prevAll().length;
205
+ };
206
+
207
+ Table.prototype._getHeaderRowIndeces = function() {
208
+ var self = this;
209
+ var indeces = [];
210
+ this._getHeaderRows().each(function() {
211
+ indeces.push(self._getRowIndex($(this)));
212
+ });
213
+ return indeces;
214
+ };
215
+
216
+ Table.prototype._getPrimaryHeaderCells = function($row) {
217
+ return ($row || this._getPrimaryHeaderRow()).find("th");
218
+ };
219
+
220
+ Table.prototype._$getCells = function(th) {
221
+ var self = this;
222
+ return $(th)
223
+ .add(th.cells)
224
+ .filter(function() {
225
+ var $t = $(this);
226
+ var $row = $t.parent();
227
+ var hasColspan = $t.is("[colspan]");
228
+ // no subrows or ignored rows (keep cells in ignored rows that do not have a colspan)
229
+ return (
230
+ !$row.is("[" + self.attributes.subrow + "]") &&
231
+ (!$row.is("[" + self.attributes.ignorerow + "]") || !hasColspan)
232
+ );
233
+ });
234
+ };
235
+
236
+ Table.prototype._getVisibleColspan = function() {
237
+ var colspan = 0;
238
+ this._getPrimaryHeaderCells().each(function() {
239
+ var $t = $(this);
240
+ if ($t.css("display") !== "none") {
241
+ colspan += parseInt($t.attr("colspan"), 10) || 1;
242
+ }
243
+ });
244
+ return colspan;
245
+ };
246
+
247
+ Table.prototype.getColspanForCell = function($cell) {
248
+ var visibleColspan = this._getVisibleColspan();
249
+ var visibleSiblingColumns = 0;
250
+ if ($cell.closest("tr").data("tablesaw-rowspanned")) {
251
+ visibleSiblingColumns++;
252
+ }
253
+
254
+ $cell.siblings().each(function() {
255
+ var $t = $(this);
256
+ var colColspan = parseInt($t.attr("colspan"), 10) || 1;
257
+
258
+ if ($t.css("display") !== "none") {
259
+ visibleSiblingColumns += colColspan;
260
+ }
261
+ });
262
+ // console.log( $cell[ 0 ], visibleColspan, visibleSiblingColumns );
263
+
264
+ return visibleColspan - visibleSiblingColumns;
265
+ };
266
+
267
+ Table.prototype.isCellInColumn = function(header, cell) {
268
+ return $(header)
269
+ .add(header.cells)
270
+ .filter(function() {
271
+ return this === cell;
272
+ }).length;
273
+ };
274
+
275
+ Table.prototype.updateColspanCells = function(cls, header, userAction) {
276
+ var self = this;
277
+ var primaryHeaderRow = self._getPrimaryHeaderRow();
278
+
279
+ // find persistent column rowspans
280
+ this.$table.find("[rowspan][data-tablesaw-priority]").each(function() {
281
+ var $t = $(this);
282
+ if ($t.attr("data-tablesaw-priority") !== "persist") {
283
+ return;
284
+ }
285
+
286
+ var $row = $t.closest("tr");
287
+ var rowspan = parseInt($t.attr("rowspan"), 10);
288
+ if (rowspan > 1) {
289
+ $row = $row.next();
290
+ $row.data("tablesaw-rowspanned", true);
291
+ rowspan--;
292
+ }
293
+ });
294
+
295
+ this.$table
296
+ .find("[colspan],[data-tablesaw-maxcolspan]")
297
+ .filter(function() {
298
+ // is not in primary header row
299
+ return $(this).closest("tr")[0] !== primaryHeaderRow[0];
300
+ })
301
+ .each(function() {
302
+ var $cell = $(this);
303
+
304
+ if (userAction === undefined || self.isCellInColumn(header, this)) {
305
+ } else {
306
+ // if is not a user action AND the cell is not in the updating column, kill it
307
+ return;
308
+ }
309
+
310
+ var colspan = self.getColspanForCell($cell);
311
+
312
+ if (cls && userAction !== undefined) {
313
+ // console.log( colspan === 0 ? "addClass" : "removeClass", $cell );
314
+ $cell[colspan === 0 ? "addClass" : "removeClass"](cls);
315
+ }
316
+
317
+ // cache original colspan
318
+ var maxColspan = parseInt($cell.attr("data-tablesaw-maxcolspan"), 10);
319
+ if (!maxColspan) {
320
+ $cell.attr("data-tablesaw-maxcolspan", $cell.attr("colspan"));
321
+ } else if (colspan > maxColspan) {
322
+ colspan = maxColspan;
323
+ }
324
+
325
+ // console.log( this, "setting colspan to ", colspan );
326
+ $cell.attr("colspan", colspan);
327
+ });
328
+ };
329
+
330
+ Table.prototype._findPrimaryHeadersForCell = function(cell) {
331
+ var $headerRow = this._getPrimaryHeaderRow();
332
+ var headerRowIndex = this._getRowIndex($headerRow);
333
+ var results = [];
334
+
335
+ for (var rowNumber = 0; rowNumber < this.headerMapping.length; rowNumber++) {
336
+ if (rowNumber === headerRowIndex) {
337
+ continue;
338
+ }
339
+
340
+ for (var colNumber = 0; colNumber < this.headerMapping[rowNumber].length; colNumber++) {
341
+ if (this.headerMapping[rowNumber][colNumber] === cell) {
342
+ results.push(this.headerMapping[headerRowIndex][colNumber]);
343
+ }
344
+ }
345
+ }
346
+
347
+ return results;
348
+ };
349
+
350
+ // used by init cells
351
+ Table.prototype.getRows = function() {
352
+ var self = this;
353
+ return this.$table.find("tr").filter(function() {
354
+ return $(this)
355
+ .closest("table")
356
+ .is(self.$table);
357
+ });
358
+ };
359
+
360
+ // used by sortable
361
+ Table.prototype.getBodyRows = function(tbody) {
362
+ return (tbody ? $(tbody) : this.$tbody).children().filter("tr");
363
+ };
364
+
365
+ Table.prototype.getHeaderCellIndex = function(cell) {
366
+ var lookup = this.headerMapping[0];
367
+ for (var colIndex = 0; colIndex < lookup.length; colIndex++) {
368
+ if (lookup[colIndex] === cell) {
369
+ return colIndex;
370
+ }
371
+ }
372
+ return -1;
373
+ };
374
+
375
+ Table.prototype._initCells = function() {
376
+ // re-establish original colspans
377
+ this.$table.find("[data-tablesaw-maxcolspan]").each(function() {
378
+ var $t = $(this);
379
+ $t.attr("colspan", $t.attr("data-tablesaw-maxcolspan"));
380
+ });
381
+
382
+ var $rows = this.getRows();
383
+ var columnLookup = [];
384
+
385
+ $rows.each(function(rowNumber) {
386
+ columnLookup[rowNumber] = [];
387
+ });
388
+
389
+ $rows.each(function(rowNumber) {
390
+ var coltally = 0;
391
+ var $t = $(this);
392
+ var children = $t.children();
393
+
394
+ children.each(function() {
395
+ var colspan = parseInt(
396
+ this.getAttribute("data-tablesaw-maxcolspan") || this.getAttribute("colspan"),
397
+ 10
398
+ );
399
+ var rowspan = parseInt(this.getAttribute("rowspan"), 10);
400
+
401
+ // set in a previous rowspan
402
+ while (columnLookup[rowNumber][coltally]) {
403
+ coltally++;
404
+ }
405
+
406
+ columnLookup[rowNumber][coltally] = this;
407
+
408
+ // TODO? both colspan and rowspan
409
+ if (colspan) {
410
+ for (var k = 0; k < colspan - 1; k++) {
411
+ coltally++;
412
+ columnLookup[rowNumber][coltally] = this;
413
+ }
414
+ }
415
+ if (rowspan) {
416
+ for (var j = 1; j < rowspan; j++) {
417
+ columnLookup[rowNumber + j][coltally] = this;
418
+ }
419
+ }
420
+
421
+ coltally++;
422
+ });
423
+ });
424
+
425
+ var headerRowIndeces = this._getHeaderRowIndeces();
426
+ for (var colNumber = 0; colNumber < columnLookup[0].length; colNumber++) {
427
+ for (var headerIndex = 0, k = headerRowIndeces.length; headerIndex < k; headerIndex++) {
428
+ var headerCol = columnLookup[headerRowIndeces[headerIndex]][colNumber];
429
+
430
+ var rowNumber = headerRowIndeces[headerIndex];
431
+ var rowCell;
432
+
433
+ if (!headerCol.cells) {
434
+ headerCol.cells = [];
435
+ }
436
+
437
+ while (rowNumber < columnLookup.length) {
438
+ rowCell = columnLookup[rowNumber][colNumber];
439
+
440
+ if (headerCol !== rowCell) {
441
+ headerCol.cells.push(rowCell);
442
+ }
443
+ rowNumber++;
444
+ }
445
+ }
446
+ }
447
+
448
+ this.headerMapping = columnLookup;
449
+ };
450
+
451
+ Table.prototype.refresh = function() {
452
+ this._initCells();
453
+
454
+ this.$table.trigger(events.refresh, [this]);
455
+ };
456
+
457
+ Table.prototype._getToolbarAnchor = function() {
458
+ var $parent = this.$table.parent();
459
+ if ($parent.is(".tablesaw-overflow")) {
460
+ return $parent;
461
+ }
462
+ return this.$table;
463
+ };
464
+
465
+ Table.prototype._getToolbar = function($anchor) {
466
+ if (!$anchor) {
467
+ $anchor = this._getToolbarAnchor();
468
+ }
469
+ return $anchor.prev().filter("." + classes.toolbar);
470
+ };
471
+
472
+ Table.prototype.createToolbar = function() {
473
+ // Insert the toolbar
474
+ // TODO move this into a separate component
475
+ var $anchor = this._getToolbarAnchor();
476
+ var $toolbar = this._getToolbar($anchor);
477
+ if (!$toolbar.length) {
478
+ $toolbar = $("<div>")
479
+ .addClass(classes.toolbar)
480
+ .insertBefore($anchor);
481
+ }
482
+ this.$toolbar = $toolbar;
483
+
484
+ if (this.mode) {
485
+ this.$toolbar.addClass("tablesaw-mode-" + this.mode);
486
+ }
487
+ };
488
+
489
+ Table.prototype.destroy = function() {
490
+ // Don’t remove the toolbar, just erase the classes on it.
491
+ // Some of the table features are not yet destroy-friendly.
492
+ this._getToolbar().each(function() {
493
+ this.className = this.className.replace(/\btablesaw-mode\-\w*\b/gi, "");
494
+ });
495
+
496
+ var tableId = this.$table.attr("id");
497
+ $(document).off("." + tableId);
498
+ $(window).off("." + tableId);
499
+
500
+ // other plugins
501
+ this.$table.trigger(events.destroy, [this]);
502
+ this.$table.removeData(pluginName);
503
+ };
504
+
505
+ // Collection method.
506
+ $.fn[pluginName] = function() {
507
+ return this.each(function() {
508
+ var $t = $(this);
509
+
510
+ if ($t.data(pluginName)) {
511
+ return;
512
+ }
513
+
514
+ new Table(this);
515
+ });
516
+ };
517
+
518
+ var $doc = $(document);
519
+ $doc.on("enhance.tablesaw", function(e) {
520
+ // Cut the mustard
521
+ if (Tablesaw.mustard) {
522
+ var $target = $(e.target);
523
+ if ($target.parent().length) {
524
+ $target = $target.parent();
525
+ }
526
+
527
+ $target
528
+ .find(initSelector)
529
+ .filter(initFilterSelector)
530
+ [pluginName]();
531
+ }
532
+ });
533
+
534
+ // Avoid a resize during scroll:
535
+ // Some Mobile devices trigger a resize during scroll (sometimes when
536
+ // doing elastic stretch at the end of the document or from the
537
+ // location bar hide)
538
+ var isScrolling = false;
539
+ var scrollTimeout;
540
+ $doc.on("scroll.tablesaw", function() {
541
+ isScrolling = true;
542
+
543
+ window.clearTimeout(scrollTimeout);
544
+ scrollTimeout = window.setTimeout(function() {
545
+ isScrolling = false;
546
+ }, 300); // must be greater than the resize timeout below
547
+ });
548
+
549
+ var resizeTimeout;
550
+ $(window).on("resize", function() {
551
+ if (!isScrolling) {
552
+ window.clearTimeout(resizeTimeout);
553
+ resizeTimeout = window.setTimeout(function() {
554
+ $doc.trigger(events.resize);
555
+ }, 150); // must be less than the scrolling timeout above.
556
+ }
557
+ });
558
+
559
+ Tablesaw.Table = Table;
560
+ })();
561
+
562
+ (function() {
563
+ var classes = {
564
+ stackTable: "tablesaw-stack",
565
+ cellLabels: "tablesaw-cell-label",
566
+ cellContentLabels: "tablesaw-cell-content"
567
+ };
568
+
569
+ var data = {
570
+ key: "tablesaw-stack"
571
+ };
572
+
573
+ var attrs = {
574
+ labelless: "data-tablesaw-no-labels",
575
+ hideempty: "data-tablesaw-hide-empty"
576
+ };
577
+
578
+ var Stack = function(element, tablesaw) {
579
+ this.tablesaw = tablesaw;
580
+ this.$table = $(element);
581
+
582
+ this.labelless = this.$table.is("[" + attrs.labelless + "]");
583
+ this.hideempty = this.$table.is("[" + attrs.hideempty + "]");
584
+ this.$table.data(data.key, this);
585
+ };
586
+
587
+ Stack.prototype.init = function() {
588
+ this.$table.addClass(classes.stackTable);
589
+
590
+ if (this.labelless) {
591
+ return;
592
+ }
593
+
594
+ var self = this;
595
+
596
+ this.$table
597
+ .find("th, td")
598
+ .filter(function() {
599
+ return !$(this).closest("thead").length;
600
+ })
601
+ .filter(function() {
602
+ return (
603
+ !$(this).is("[" + attrs.labelless + "]") &&
604
+ !$(this)
605
+ .closest("tr")
606
+ .is("[" + attrs.labelless + "]") &&
607
+ (!self.hideempty || !!$(this).html())
608
+ );
609
+ })
610
+ .each(function() {
611
+ var $newHeader = $(document.createElement("b")).addClass(classes.cellLabels);
612
+ var $cell = $(this);
613
+
614
+ $(self.tablesaw._findPrimaryHeadersForCell(this)).each(function(index) {
615
+ var $header = $(this.cloneNode(true));
616
+ // TODO decouple from sortable better
617
+ // Changed from .text() in https://github.com/filamentgroup/tablesaw/commit/b9c12a8f893ec192830ec3ba2d75f062642f935b
618
+ // to preserve structural html in headers, like <a>
619
+ var $sortableButton = $header.find(".tablesaw-sortable-btn");
620
+ $header.find(".tablesaw-sortable-arrow").remove();
621
+
622
+ // TODO decouple from checkall better
623
+ var $checkall = $header.find("[data-tablesaw-checkall]");
624
+ $checkall.closest("label").remove();
625
+ if ($checkall.length) {
626
+ $newHeader = $([]);
627
+ return;
628
+ }
629
+
630
+ if (index > 0) {
631
+ $newHeader.append(document.createTextNode(", "));
632
+ }
633
+
634
+ var parentNode = $sortableButton.length ? $sortableButton[0] : $header[0];
635
+ var el;
636
+ while ((el = parentNode.firstChild)) {
637
+ $newHeader[0].appendChild(el);
638
+ }
639
+ });
640
+
641
+ if ($newHeader.length && !$cell.find("." + classes.cellContentLabels).length) {
642
+ $cell.wrapInner("<span class='" + classes.cellContentLabels + "'></span>");
643
+ }
644
+
645
+ // Update if already exists.
646
+ var $label = $cell.find("." + classes.cellLabels);
647
+ if (!$label.length) {
648
+ $cell.prepend(document.createTextNode(" "));
649
+ $cell.prepend($newHeader);
650
+ } else {
651
+ // only if changed
652
+ $label.replaceWith($newHeader);
653
+ }
654
+ });
655
+ };
656
+
657
+ Stack.prototype.destroy = function() {
658
+ this.$table.removeClass(classes.stackTable);
659
+ this.$table.find("." + classes.cellLabels).remove();
660
+ this.$table.find("." + classes.cellContentLabels).each(function() {
661
+ $(this).replaceWith($(this.childNodes));
662
+ });
663
+ };
664
+
665
+ // on tablecreate, init
666
+ $(document)
667
+ .on(Tablesaw.events.create, function(e, tablesaw) {
668
+ if (tablesaw.mode === "stack") {
669
+ var table = new Stack(tablesaw.table, tablesaw);
670
+ table.init();
671
+ }
672
+ })
673
+ .on(Tablesaw.events.refresh, function(e, tablesaw) {
674
+ if (tablesaw.mode === "stack") {
675
+ $(tablesaw.table)
676
+ .data(data.key)
677
+ .init();
678
+ }
679
+ })
680
+ .on(Tablesaw.events.destroy, function(e, tablesaw) {
681
+ if (tablesaw.mode === "stack") {
682
+ $(tablesaw.table)
683
+ .data(data.key)
684
+ .destroy();
685
+ }
686
+ });
687
+
688
+ Tablesaw.Stack = Stack;
689
+ })();
690
+ return Tablesaw;
691
+
692
+ }));