j1-template 2020.0.7 → 2020.0.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (341) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/blocks/ads/ad.html +64 -0
  3. data/_includes/themes/j1/blocks/footer/boxes/links_box.proc +1 -1
  4. data/_includes/themes/j1/layouts/content_generator_blog_archive.html +3 -2
  5. data/_includes/themes/j1/layouts/content_generator_collection.html +3 -1
  6. data/_includes/themes/j1/layouts/content_generator_page.html +3 -1
  7. data/_includes/themes/j1/layouts/content_generator_post.html +12 -11
  8. data/_includes/themes/j1/layouts/layout_metadata_generator.html +141 -4
  9. data/_includes/themes/j1/modules/connectors/ad/custom-provider.html +6 -9
  10. data/_includes/themes/j1/modules/connectors/ad/google-adsense.html +9 -6
  11. data/_includes/themes/j1/modules/connectors/ads +3 -6
  12. data/_includes/themes/j1/modules/navigator/generator.html +6 -6
  13. data/_includes/themes/j1/modules/navigator/procedures/topsearch.proc +10 -5
  14. data/_includes/themes/j1/procedures/layouts/module_writer.proc +1 -1
  15. data/_includes/themes/j1/procedures/posts/collate_timeline.proc +7 -7
  16. data/_layouts/default.html +18 -8
  17. data/assets/data/authclient.html +19 -8
  18. data/assets/data/banner.html +24 -23
  19. data/assets/data/carousel.json +31 -21
  20. data/assets/data/cookie_consent.html +81 -52
  21. data/assets/data/footer.html +15 -5
  22. data/assets/data/galleries.json +91 -81
  23. data/assets/data/gallery_customizer.html +20 -10
  24. data/assets/data/mdi_icons.json +56 -1
  25. data/assets/data/menu.html +14 -6
  26. data/assets/data/mmenu.html +47 -93
  27. data/assets/data/mmenu_sidebar.html +41 -44
  28. data/assets/data/mmenu_toc.html +20 -3
  29. data/assets/data/panel.html +35 -22
  30. data/assets/data/quicklinks.html +15 -3
  31. data/assets/data/{search.yml → search.json} +44 -14
  32. data/assets/data/ssm.html +30 -14
  33. data/assets/data/themes.json +17 -6
  34. data/assets/data/twa_v1.json +7035 -6978
  35. data/assets/themes/j1/adapter/js/algolia.js +34 -15
  36. data/assets/themes/j1/adapter/js/attic.js +66 -45
  37. data/assets/themes/j1/adapter/js/carousel.js +43 -22
  38. data/assets/themes/j1/adapter/js/clipboard.js +232 -0
  39. data/assets/themes/j1/adapter/js/cookie_consent.js +21 -4
  40. data/assets/themes/j1/adapter/js/framer.js +18 -3
  41. data/assets/themes/j1/adapter/js/gallery_customizer.js +27 -10
  42. data/assets/themes/j1/adapter/js/j1.js +349 -759
  43. data/assets/themes/j1/adapter/js/{justified_gallery.js → jf_gallery.js} +64 -38
  44. data/assets/themes/j1/adapter/js/lightbox.js +20 -3
  45. data/assets/themes/j1/adapter/js/logger.js +23 -6
  46. data/assets/themes/j1/adapter/js/mdb.js +167 -0
  47. data/assets/themes/j1/adapter/js/mmenu.js +29 -11
  48. data/assets/themes/j1/adapter/js/navigator.js +126 -139
  49. data/assets/themes/j1/adapter/js/searcher.js +22 -4
  50. data/assets/themes/j1/adapter/js/ssm.js +96 -63
  51. data/assets/themes/j1/adapter/js/themer.js +35 -52
  52. data/assets/themes/j1/adapter/js/toccer.js +69 -158
  53. data/assets/themes/j1/core/css/theme_extensions.css +120 -1230
  54. data/assets/themes/j1/core/css/theme_extensions.min.css +1 -1
  55. data/assets/themes/j1/core/css/uno.css +253 -1275
  56. data/assets/themes/j1/core/css/uno.min.css +1 -1
  57. data/assets/themes/j1/core/css/vendor.css +7 -57
  58. data/assets/themes/j1/core/css/vendor.min.css +2 -2
  59. data/assets/themes/j1/core/js/template.js +16 -86
  60. data/assets/themes/j1/core/js/template.js.map +1 -1
  61. data/assets/themes/j1/core/js/template.min.js +1 -1
  62. data/assets/themes/j1/extensions/bsDatepicker/css/datepicker.css +203 -0
  63. data/assets/themes/j1/extensions/bsDatepicker/css/theme/uno.css +235 -0
  64. data/assets/themes/j1/extensions/bsDatepicker/js/datepicker.js +509 -0
  65. data/assets/themes/j1/extensions/bsDatepicker/less/datepicker.less +122 -0
  66. data/assets/themes/j1/extensions/bsThemeSwitcher/js/switcher.js +425 -0
  67. data/assets/themes/j1/extensions/bsThemeSwitcher/js/switcher.min.js +20 -0
  68. data/assets/themes/j1/extensions/clipboard/LICENSE +20 -0
  69. data/assets/themes/j1/extensions/clipboard/css/theme/uno.css +52 -0
  70. data/assets/themes/j1/extensions/clipboard/css/theme/uno.min.css +52 -0
  71. data/assets/themes/j1/extensions/clipboard/js/clipboard.js +975 -0
  72. data/assets/themes/j1/extensions/clipboard/js/clipboard.min.js +7 -0
  73. data/assets/themes/j1/extensions/{iconify → iconifyAPI}/js/iconify.min.js +0 -0
  74. data/assets/themes/j1/extensions/iframeResizer/LICENSE +21 -0
  75. data/assets/themes/j1/extensions/iframeResizer/examples/frame.absolute.html +127 -0
  76. data/assets/themes/j1/extensions/iframeResizer/examples/frame.content.html +157 -0
  77. data/assets/themes/j1/extensions/iframeResizer/examples/frame.hover.html +68 -0
  78. data/assets/themes/j1/extensions/iframeResizer/examples/frame.nested.html +100 -0
  79. data/assets/themes/j1/extensions/iframeResizer/examples/frame.textarea.html +45 -0
  80. data/assets/themes/j1/extensions/iframeResizer/examples/frame.tolerance.html +113 -0
  81. data/assets/themes/j1/extensions/iframeResizer/examples/index.html +83 -0
  82. data/assets/themes/j1/extensions/iframeResizer/examples/two.html +88 -0
  83. data/assets/themes/j1/extensions/iframeResizer/js/client/iframeResizer.contentWindow.js +1288 -0
  84. data/assets/themes/j1/extensions/iframeResizer/js/client/iframeResizer.contentWindow.map +1 -0
  85. data/assets/themes/j1/extensions/iframeResizer/js/client/iframeResizer.contentWindow.min.js +10 -0
  86. data/assets/themes/j1/extensions/iframeResizer/js/iframeResizer.js +1390 -0
  87. data/assets/themes/j1/extensions/iframeResizer/js/iframeResizer.map +1 -0
  88. data/assets/themes/j1/extensions/iframeResizer/js/iframeResizer.min.js +9 -0
  89. data/assets/themes/j1/extensions/jqMouseWheel/README.md +76 -0
  90. data/assets/themes/j1/extensions/jqMouseWheel/js/jquery.mousewheel.js +221 -0
  91. data/assets/themes/j1/extensions/jqMouseWheel/js/jquery.mousewheel.min.js +9 -0
  92. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/LICENSE +0 -0
  93. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/README.md +0 -0
  94. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v3.7.0/css/justifiedGallery.css +0 -0
  95. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v3.7.0/css/justifiedGallery.min.css +0 -0
  96. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v3.7.0/css/theme/uno.css +0 -0
  97. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v3.7.0/js/justifiedGallery.3.7.0.js +0 -0
  98. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v3.7.0/js/justifiedGallery.js +0 -0
  99. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v3.7.0/js/justifiedGallery.min.js +0 -0
  100. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v3.7.0/less/.csslintrc +0 -0
  101. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v3.7.0/less/justifiedGallery.less +0 -0
  102. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v4.0.0/css/justifiedGallery.css +0 -0
  103. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v4.0.0/css/justifiedGallery.min.css +0 -0
  104. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v4.0.0/css/theme/uno.css +0 -0
  105. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v4.0.0/js/jquery.justifiedGallery.js +0 -0
  106. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/_versions/v4.0.0/js/jquery.justifiedGallery.min.js +0 -0
  107. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/css/justifiedGallery.css +0 -0
  108. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/css/justifiedGallery.min.css +0 -0
  109. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/css/theme/uno.css +0 -0
  110. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/css/theme/uno.min.css +0 -0
  111. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/js/justifiedGallery.js +0 -0
  112. data/assets/themes/j1/extensions/{justified_gallery → justifiedGallery}/js/justifiedGallery.min.js +0 -0
  113. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/core/lg-fb-comment-box.css +0 -0
  114. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/core/lg-fb-comment-box.min.css +0 -0
  115. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/core/lg-transitions.css +0 -0
  116. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/core/lg-transitions.min.css +0 -0
  117. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/core/lightgallery.css +0 -0
  118. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/core/lightgallery.min.css +0 -0
  119. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/fonts/lg.eot +0 -0
  120. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/fonts/lg.svg +0 -0
  121. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/fonts/lg.ttf +0 -0
  122. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/fonts/lg.woff +0 -0
  123. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/img/loading.gif +0 -0
  124. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/img/video-play.png +0 -0
  125. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/img/vimeo-play.png +0 -0
  126. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/img/youtube-play.png +0 -0
  127. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/animation-w.png +0 -0
  128. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/customize-w.png +0 -0
  129. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/dynamic-w.png +0 -0
  130. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/facebook-icon.svg +0 -0
  131. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/googleplus-icon.svg +0 -0
  132. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/html5-w.png +0 -0
  133. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/linked-in.png +0 -0
  134. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/module-w.png +0 -0
  135. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/play-button.png +0 -0
  136. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/responsive-w.png +0 -0
  137. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/thumb-w.png +0 -0
  138. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/touch-w.png +0 -0
  139. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/twitter-icon.svg +0 -0
  140. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/twitter.png +0 -0
  141. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/video1-w.png +0 -0
  142. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/zoom-w.png +0 -0
  143. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/icons/zoom.png +0 -0
  144. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/uno.css +1 -1
  145. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/css/themes/uno.min.css +1 -1
  146. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/core/lightgallery.js +0 -0
  147. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/core/lightgallery.min.js +0 -0
  148. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/j1/j1-video.js +0 -0
  149. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/j1/j1-video.min.js +0 -0
  150. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-autoplay.js +0 -0
  151. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-autoplay.min.js +0 -0
  152. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-fullscreen.js +0 -0
  153. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-fullscreen.min.js +0 -0
  154. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-hash.js +0 -0
  155. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-hash.min.js +0 -0
  156. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-pager.js +0 -0
  157. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-pager.min.js +0 -0
  158. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-share.js +0 -0
  159. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-share.min.js +0 -0
  160. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-thumbnail.js +0 -0
  161. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-thumbnail.min.js +0 -0
  162. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-video.js +0 -0
  163. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-video.min.js +0 -0
  164. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-zoom.js +0 -0
  165. data/assets/themes/j1/extensions/{light_gallery → lightGallery}/js/modules/lg-zoom.min.js +0 -0
  166. data/assets/themes/j1/extensions/lightbox/LICENSE +22 -0
  167. data/assets/themes/j1/extensions/lightbox/css/lightbox.css +224 -0
  168. data/assets/themes/j1/extensions/lightbox/css/lightbox.min.css +21 -0
  169. data/assets/themes/j1/extensions/lightbox/css/theme/uno.css +25 -0
  170. data/assets/themes/j1/extensions/lightbox/css/theme/uno.min.css +26 -0
  171. data/{lib/starter_web/assets/images/modules/lightbox → assets/themes/j1/extensions/lightbox/images}/close.png +0 -0
  172. data/{lib/starter_web/assets/images/modules/lightbox → assets/themes/j1/extensions/lightbox/images}/loading.gif +0 -0
  173. data/{lib/starter_web/assets/images/modules/lightbox → assets/themes/j1/extensions/lightbox/images}/next.png +0 -0
  174. data/{lib/starter_web/assets/images/modules/lightbox → assets/themes/j1/extensions/lightbox/images}/prev.png +0 -0
  175. data/assets/themes/j1/extensions/lightbox/js/lightbox.js +583 -0
  176. data/assets/themes/j1/extensions/lightbox/js/lightbox.min.js +35 -0
  177. data/assets/themes/j1/extensions/mmenuLight/css/mmenu.css +392 -0
  178. data/assets/themes/j1/extensions/mmenuLight/css/mmenu.min.css +393 -0
  179. data/assets/themes/j1/extensions/mmenuLight/css/theme/uno.css +170 -0
  180. data/assets/themes/j1/extensions/mmenuLight/css/theme/uno.min.css +169 -0
  181. data/assets/themes/j1/extensions/mmenuLight/js/mmenu.js +30 -0
  182. data/assets/themes/j1/extensions/noUISlider/LICENSE +13 -0
  183. data/assets/themes/j1/extensions/noUISlider/css/nouislider.css +260 -0
  184. data/assets/themes/j1/extensions/noUISlider/css/nouislider.min.css +1 -0
  185. data/assets/themes/j1/extensions/noUISlider/js/nouislider.js +2312 -0
  186. data/assets/themes/j1/extensions/noUISlider/js/nouislider.min.js +3 -0
  187. data/assets/themes/j1/extensions/twemoji/js/LICENSE +21 -0
  188. data/assets/themes/j1/extensions/twemoji/js/picker/LICENSE +21 -0
  189. data/assets/themes/j1/extensions/twemoji/js/picker/twemoji-picker.js +21 -0
  190. data/assets/themes/j1/extensions/twemoji/js/picker/twemoji-picker.min.js +21 -0
  191. data/assets/themes/j1/extensions/twemoji/js/twemoji.js +590 -0
  192. data/assets/themes/j1/extensions/twemoji/js/twemoji.min.js +25 -0
  193. data/lib/j1/version.rb +1 -1
  194. data/lib/starter_web/Gemfile +7 -1
  195. data/lib/starter_web/_config.yml +9 -8
  196. data/lib/starter_web/_data/_defaults/resources.yml +13 -13
  197. data/lib/starter_web/_data/blocks/banner.yml +21 -29
  198. data/lib/starter_web/_data/blocks/footer.yml +10 -3
  199. data/lib/starter_web/_data/blocks/panel.yml +13 -13
  200. data/lib/starter_web/_data/layouts/default.yml +10 -0
  201. data/lib/starter_web/_data/layouts/home.yml +7 -7
  202. data/lib/starter_web/_data/layouts/page.yml +15 -16
  203. data/lib/starter_web/_data/modules/advertising.yml +48 -0
  204. data/lib/starter_web/_data/modules/attics.yml +2 -38
  205. data/lib/starter_web/_data/modules/cookie_consent.yml +3 -95
  206. data/lib/starter_web/_data/modules/defaults/attics.yml +16 -15
  207. data/lib/starter_web/_data/modules/defaults/cookie_consent.yml +75 -12
  208. data/lib/starter_web/_data/modules/defaults/jekyll_search.yml +9 -9
  209. data/lib/starter_web/_data/modules/defaults/navigator.yml +56 -21
  210. data/lib/starter_web/_data/modules/defaults/ssm.yml +3 -3
  211. data/lib/starter_web/_data/modules/defaults/toccer.yml +4 -8
  212. data/lib/starter_web/_data/modules/jekyll_search.yml +3 -21
  213. data/lib/starter_web/_data/modules/navigator.yml +1 -1
  214. data/lib/starter_web/_data/modules/navigator_menu.yml +4 -0
  215. data/lib/starter_web/_data/modules/ssm.yml +10 -1
  216. data/lib/starter_web/_data/modules/themer.yml +2 -3
  217. data/lib/starter_web/_data/modules/toccer.yml +7 -12
  218. data/lib/starter_web/_data/resources.yml +240 -112
  219. data/lib/starter_web/_data/template_settings.yml +109 -6
  220. data/lib/starter_web/_plugins/asciidoctor-extensions/fab-icon-inline.rb +1 -1
  221. data/lib/starter_web/_plugins/asciidoctor-extensions/fas-icon-inline.rb +2 -2
  222. data/lib/starter_web/_plugins/asciidoctor-extensions/iconify-icon-inline.rb +2 -2
  223. data/lib/starter_web/_plugins/asciidoctor-extensions/mdi-icon-inline.rb +2 -2
  224. data/lib/starter_web/_plugins/asciidoctor-extensions/twitter-emoji-inline.rb +2 -2
  225. data/lib/starter_web/_plugins/minifyJS.rb +54 -0
  226. data/lib/starter_web/_plugins/{uglify.rb → minifyJSON.rb} +15 -9
  227. data/lib/starter_web/assets/images/modules/attics/admin-dashboard-bootstrap-1280x600.jpg +0 -0
  228. data/lib/starter_web/assets/images/modules/attics/alex-holyoake-1920x1280.jpg +0 -0
  229. data/lib/starter_web/assets/images/modules/attics/anaya-katlego-1920x1280.jpg +0 -0
  230. data/lib/starter_web/assets/images/modules/attics/antonella-lombardi-1920x1280.jpg +0 -0
  231. data/lib/starter_web/assets/images/modules/attics/antonino-visalli-1920x1280.jpg +0 -0
  232. data/lib/starter_web/assets/images/modules/attics/banner/library-1920x800-bw.jpg +0 -0
  233. data/lib/starter_web/assets/images/modules/attics/banner/signpost-1920x800-bw.jpg +0 -0
  234. data/lib/starter_web/assets/images/modules/attics/banner/water-journal-1280x600.jpg +0 -0
  235. data/lib/starter_web/assets/images/modules/attics/banner/write-1280x600-bw.jpg +0 -0
  236. data/lib/starter_web/assets/images/modules/attics/brandon-mowinkel-1920x1280.jpg +0 -0
  237. data/lib/starter_web/assets/images/modules/attics/building-blocks-1920x1280-bw.jpg +0 -0
  238. data/lib/starter_web/assets/images/modules/attics/cookies-1920x1200-bw.jpg +0 -0
  239. data/lib/starter_web/assets/images/modules/attics/daniel-jensen-1920x1280.jpg +0 -0
  240. data/lib/starter_web/assets/images/modules/attics/giammarco-boscaro-1920x1280.jpg +0 -0
  241. data/lib/starter_web/assets/images/modules/attics/go-up-1920x1280-bw.jpg +0 -0
  242. data/lib/starter_web/assets/images/modules/attics/ian-schneider-1920x1280.jpg +0 -0
  243. data/lib/starter_web/assets/images/modules/attics/ideas-start-here-1920x1280-bw.jpg +0 -0
  244. data/lib/starter_web/assets/images/modules/attics/jason-rosewell-1920x1280.jpg +0 -0
  245. data/lib/starter_web/assets/images/modules/attics/jessica-ruscello-1920x1280.jpg +0 -0
  246. data/lib/starter_web/assets/images/modules/attics/lianhao-1920x1280.jpg +0 -0
  247. data/lib/starter_web/assets/images/modules/attics/library-1920x1280-bw.jpg +0 -0
  248. data/lib/starter_web/assets/images/modules/attics/matthaeus-1920x1280.jpg +0 -0
  249. data/lib/starter_web/assets/images/modules/attics/nousnou-iwasaki-1920x1280.jpg +0 -0
  250. data/lib/starter_web/assets/images/modules/attics/premium-1920x1280-bw.jpg +0 -0
  251. data/lib/starter_web/assets/images/modules/attics/robert-v-ruggiero-1920x1280.jpg +0 -0
  252. data/lib/starter_web/assets/images/modules/attics/romain-vignes-1920x1280.jpg +0 -0
  253. data/lib/starter_web/assets/images/modules/attics/runner-1920x1200-bw.jpg +0 -0
  254. data/lib/starter_web/assets/images/modules/attics/spider-web-1920x1200-bw.jpg +0 -0
  255. data/lib/starter_web/assets/images/modules/attics/the-place-1920x1280-bw.jpg +0 -0
  256. data/lib/starter_web/assets/images/modules/attics/welcome-1920x1280-bw.jpg +0 -0
  257. data/lib/starter_web/assets/images/modules/carousel/cats/cat-1.jpg +0 -0
  258. data/lib/starter_web/assets/images/modules/carousel/mega_cities/andreas-brucker_b.jpg +0 -0
  259. data/lib/starter_web/assets/images/modules/carousel/mega_cities/denys-nevozhai-1_b.jpg +0 -0
  260. data/lib/starter_web/assets/images/modules/carousel/mega_cities/denys-nevozhai-2_b.jpg +0 -0
  261. data/lib/starter_web/assets/images/modules/carousel/mega_cities/luca-bravo_b.jpg +0 -0
  262. data/lib/starter_web/assets/images/modules/carousel/mega_cities/thomas-tucker_b.jpg +0 -0
  263. data/lib/starter_web/assets/images/modules/gallery/mega_cities/banter-snaps_b.jpg +0 -0
  264. data/lib/starter_web/assets/images/modules/gallery/mega_cities/denys-nevozhai-1_b.jpg +0 -0
  265. data/lib/starter_web/assets/images/modules/gallery/mega_cities/denys-nevozhai-2-bw.jpg +0 -0
  266. data/lib/starter_web/assets/images/modules/gallery/mega_cities/denys-nevozhai-2_b.jpg +0 -0
  267. data/lib/starter_web/assets/images/modules/gallery/mega_cities/emmad-mazhari_b.jpg +0 -0
  268. data/lib/starter_web/assets/images/modules/gallery/mega_cities/ethan-brooke_b.jpg +0 -0
  269. data/lib/starter_web/assets/images/modules/gallery/mega_cities/federico-rizzarelli_b.jpg +0 -0
  270. data/lib/starter_web/assets/images/modules/gallery/mega_cities/gints-gailis_b.jpg +0 -0
  271. data/lib/starter_web/assets/images/modules/gallery/mega_cities/johan-mouchet_b.jpg +0 -0
  272. data/lib/starter_web/assets/images/modules/gallery/mega_cities/luca-bravo_b.jpg +0 -0
  273. data/lib/starter_web/assets/images/modules/gallery/mega_cities/oskars-sylwan_b.jpg +0 -0
  274. data/lib/starter_web/assets/images/modules/gallery/mega_cities/steven-diaz_b.jpg +0 -0
  275. data/lib/starter_web/assets/images/modules/gallery/mega_cities/thomas-tucker-bw.jpg +0 -0
  276. data/lib/starter_web/assets/images/modules/gallery/mega_cities/thomas-tucker_b.jpg +0 -0
  277. data/lib/starter_web/index.html +9 -8
  278. data/lib/starter_web/package.json +1 -1
  279. data/lib/starter_web/pages/public/clear_button.adoc +121 -0
  280. data/lib/starter_web/pages/public/learn/examples/floating_ad.adoc +221 -0
  281. data/lib/starter_web/pages/public/learn/{floating_sidebar.adoc → examples/floating_div.adoc} +60 -50
  282. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/000_includes/parts.asciidoc +1 -1
  283. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/100_meet_and_greet_jekyll.adoc +9 -4
  284. data/lib/starter_web/pages/public/learn/roundtrip/000_bs_tour_api.adoc +2 -2
  285. data/lib/starter_web/pages/public/learn/roundtrip/000_includes/documents/410_table_3_column.asciidoc +1 -1
  286. data/lib/starter_web/pages/public/learn/roundtrip/000_includes/documents/419_advanced_modals_html.asciidoc +5 -5
  287. data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +2 -2
  288. data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +8 -3
  289. data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +35 -44
  290. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +1 -1
  291. data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +39 -39
  292. data/lib/starter_web/pages/public/learn/vtutorials/000_includes/documents/410_table_3_column.asciidoc +1 -1
  293. data/lib/starter_web/pages/public/learn/whats_up.adoc +1 -0
  294. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +54 -48
  295. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/100_absolute_sizes.asciidoc +1 -1
  296. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/110_bs_grid_sizes.asciidoc +1 -1
  297. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/120_relative_sizes.asciidoc +1 -41
  298. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/200_rotate.asciidoc +1 -1
  299. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/300_flip.asciidoc +1 -1
  300. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/400_spin_pulsed.asciidoc +1 -1
  301. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/500_bw_color_palette.asciidoc +1 -1
  302. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/510_bs_color_palette.asciidoc +1 -1
  303. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/600_md_color_palette.asciidoc +1 -1
  304. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/601_md_color_palette_indigo.asciidoc +1 -1
  305. data/lib/starter_web/pages/public/previewer/000_includes/tables/mdi_icons/602_md_color_palette_pink.asciidoc +1 -1
  306. data/lib/starter_web/pages/public/previewer/000_includes/tables/twitter_emoji/100_bs_sizes.asciidoc +1 -1
  307. data/lib/starter_web/pages/public/previewer/000_includes/tables/twitter_emoji/100_relative_sizes.asciidoc +1 -1
  308. data/lib/starter_web/pages/public/previewer/000_includes/tables/twitter_emoji/200_rotate.asciidoc +1 -1
  309. data/lib/starter_web/pages/public/previewer/000_includes/tables/twitter_emoji/300_flip.asciidoc +1 -1
  310. data/lib/starter_web/pages/public/previewer/000_includes/tables/twitter_emoji/400_spin_pulsed.asciidoc +1 -1
  311. data/lib/starter_web/pages/public/previewer/bootstrap_theme.adoc +672 -863
  312. data/lib/starter_web/pages/public/previewer/iframer.adoc +15 -14
  313. data/lib/starter_web/pages/public/previewer/justified_gallery.html +1 -1
  314. data/lib/starter_web/pages/public/previewer/mdb_preview/000_includes/attributes.asciidoc +69 -0
  315. data/lib/starter_web/pages/public/previewer/mdb_preview/000_includes/documents/100_buttons.asciidoc +170 -0
  316. data/lib/starter_web/pages/public/previewer/mdb_preview/mdb_previewer.adoc +52 -0
  317. data/lib/starter_web/pages/public/previewer/mdi_icons_preview.adoc +1 -1
  318. data/lib/starter_web/pages/public/previewer/twitter_emoji_preview.adoc +2 -2
  319. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  320. data/lib/starter_web/utilsrv/package.json +1 -1
  321. metadata +148 -105
  322. data/assets/data/colors.json +0 -42
  323. data/assets/data/font_sizes.json +0 -42
  324. data/assets/data/messages.yml +0 -131
  325. data/assets/themes/j1/extensions/iframe_resizer/examples/frame.absolute.html +0 -86
  326. data/assets/themes/j1/extensions/iframe_resizer/examples/frame.content.html +0 -58
  327. data/assets/themes/j1/extensions/iframe_resizer/examples/frame.hover.html +0 -51
  328. data/assets/themes/j1/extensions/iframe_resizer/examples/frame.nested.html +0 -68
  329. data/assets/themes/j1/extensions/iframe_resizer/examples/frame.textarea.html +0 -46
  330. data/assets/themes/j1/extensions/iframe_resizer/examples/frame.tolerance.html +0 -79
  331. data/assets/themes/j1/extensions/iframe_resizer/examples/index.html +0 -70
  332. data/assets/themes/j1/extensions/iframe_resizer/examples/two.html +0 -71
  333. data/assets/themes/j1/extensions/iframe_resizer/js/client/iframeResizer.contentWindow.js +0 -1104
  334. data/assets/themes/j1/extensions/iframe_resizer/js/client/iframeResizer.contentWindow.map +0 -1
  335. data/assets/themes/j1/extensions/iframe_resizer/js/client/iframeResizer.contentWindow.min.js +0 -10
  336. data/assets/themes/j1/extensions/log4javascript/log4javascript.js +0 -5826
  337. data/assets/themes/j1/extensions/log4javascript/log4javascript.min.js +0 -266
  338. data/lib/starter_web/assets/images/modules/attics/admin-dashboard-bootstrap-1280x600.png +0 -0
  339. data/lib/starter_web/assets/images/modules/attics/mae-mu-Vf9gbsLZyf0-unsplash.jpg +0 -0
  340. data/lib/starter_web/assets/images/modules/attics/mae-mue-1920x1280-v.jpg +0 -0
  341. data/lib/starter_web/assets/images/modules/attics/mae-mue-1920x1280.jpg +0 -0
@@ -0,0 +1,7 @@
1
+ /*!
2
+ * clipboard.js v2.0.6
3
+ * https://clipboardjs.com/
4
+ *
5
+ * Licensed MIT © Zeno Rocha
6
+ */
7
+ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return o={},r.m=n=[function(t,e){t.exports=function(t){var e;if("SELECT"===t.nodeName)t.focus(),e=t.value;else if("INPUT"===t.nodeName||"TEXTAREA"===t.nodeName){var n=t.hasAttribute("readonly");n||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),n||t.removeAttribute("readonly"),e=t.value}else{t.hasAttribute("contenteditable")&&t.focus();var o=window.getSelection(),r=document.createRange();r.selectNodeContents(t),o.removeAllRanges(),o.addRange(r),e=o.toString()}return e}},function(t,e){function n(){}n.prototype={on:function(t,e,n){var o=this.e||(this.e={});return(o[t]||(o[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){var o=this;function r(){o.off(t,r),e.apply(n,arguments)}return r._=e,this.on(t,r,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),o=0,r=n.length;o<r;o++)n[o].fn.apply(n[o].ctx,e);return this},off:function(t,e){var n=this.e||(this.e={}),o=n[t],r=[];if(o&&e)for(var i=0,a=o.length;i<a;i++)o[i].fn!==e&&o[i].fn._!==e&&r.push(o[i]);return r.length?n[t]=r:delete n[t],this}},t.exports=n,t.exports.TinyEmitter=n},function(t,e,n){var d=n(3),h=n(4);t.exports=function(t,e,n){if(!t&&!e&&!n)throw new Error("Missing required arguments");if(!d.string(e))throw new TypeError("Second argument must be a String");if(!d.fn(n))throw new TypeError("Third argument must be a Function");if(d.node(t))return s=e,f=n,(u=t).addEventListener(s,f),{destroy:function(){u.removeEventListener(s,f)}};if(d.nodeList(t))return a=t,c=e,l=n,Array.prototype.forEach.call(a,function(t){t.addEventListener(c,l)}),{destroy:function(){Array.prototype.forEach.call(a,function(t){t.removeEventListener(c,l)})}};if(d.string(t))return o=t,r=e,i=n,h(document.body,o,r,i);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList");var o,r,i,a,c,l,u,s,f}},function(t,n){n.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},n.nodeList=function(t){var e=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===e||"[object HTMLCollection]"===e)&&"length"in t&&(0===t.length||n.node(t[0]))},n.string=function(t){return"string"==typeof t||t instanceof String},n.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},function(t,e,n){var a=n(5);function i(t,e,n,o,r){var i=function(e,n,t,o){return function(t){t.delegateTarget=a(t.target,n),t.delegateTarget&&o.call(e,t)}}.apply(this,arguments);return t.addEventListener(n,i,r),{destroy:function(){t.removeEventListener(n,i,r)}}}t.exports=function(t,e,n,o,r){return"function"==typeof t.addEventListener?i.apply(null,arguments):"function"==typeof n?i.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,function(t){return i(t,e,n,o,r)}))}},function(t,e){if("undefined"!=typeof Element&&!Element.prototype.matches){var n=Element.prototype;n.matches=n.matchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector||n.webkitMatchesSelector}t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}},function(t,e,n){"use strict";n.r(e);var o=n(0),r=n.n(o),i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function a(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function c(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,c),this.resolveOptions(t),this.initSelection()}var l=(function(t,e,n){return e&&a(t.prototype,e),n&&a(t,n),t}(c,[{key:"resolveOptions",value:function(t){var e=0<arguments.length&&void 0!==t?t:{};this.action=e.action,this.container=e.container,this.emitter=e.emitter,this.target=e.target,this.text=e.text,this.trigger=e.trigger,this.selectedText=""}},{key:"initSelection",value:function(){this.text?this.selectFake():this.target&&this.selectTarget()}},{key:"selectFake",value:function(){var t=this,e="rtl"==document.documentElement.getAttribute("dir");this.removeFake(),this.fakeHandlerCallback=function(){return t.removeFake()},this.fakeHandler=this.container.addEventListener("click",this.fakeHandlerCallback)||!0,this.fakeElem=document.createElement("textarea"),this.fakeElem.style.fontSize="12pt",this.fakeElem.style.border="0",this.fakeElem.style.padding="0",this.fakeElem.style.margin="0",this.fakeElem.style.position="absolute",this.fakeElem.style[e?"right":"left"]="-9999px";var n=window.pageYOffset||document.documentElement.scrollTop;this.fakeElem.style.top=n+"px",this.fakeElem.setAttribute("readonly",""),this.fakeElem.value=this.text,this.container.appendChild(this.fakeElem),this.selectedText=r()(this.fakeElem),this.copyText()}},{key:"removeFake",value:function(){this.fakeHandler&&(this.container.removeEventListener("click",this.fakeHandlerCallback),this.fakeHandler=null,this.fakeHandlerCallback=null),this.fakeElem&&(this.container.removeChild(this.fakeElem),this.fakeElem=null)}},{key:"selectTarget",value:function(){this.selectedText=r()(this.target),this.copyText()}},{key:"copyText",value:function(){var e=void 0;try{e=document.execCommand(this.action)}catch(t){e=!1}this.handleResult(e)}},{key:"handleResult",value:function(t){this.emitter.emit(t?"success":"error",{action:this.action,text:this.selectedText,trigger:this.trigger,clearSelection:this.clearSelection.bind(this)})}},{key:"clearSelection",value:function(){this.trigger&&this.trigger.focus(),document.activeElement.blur(),window.getSelection().removeAllRanges()}},{key:"destroy",value:function(){this.removeFake()}},{key:"action",set:function(t){var e=0<arguments.length&&void 0!==t?t:"copy";if(this._action=e,"copy"!==this._action&&"cut"!==this._action)throw new Error('Invalid "action" value, use either "copy" or "cut"')},get:function(){return this._action}},{key:"target",set:function(t){if(void 0!==t){if(!t||"object"!==(void 0===t?"undefined":i(t))||1!==t.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===this.action&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===this.action&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');this._target=t}},get:function(){return this._target}}]),c),u=n(1),s=n.n(u),f=n(2),d=n.n(f),h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},p=function(t,e,n){return e&&y(t.prototype,e),n&&y(t,n),t};function y(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}var m=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(v,s.a),p(v,[{key:"resolveOptions",value:function(t){var e=0<arguments.length&&void 0!==t?t:{};this.action="function"==typeof e.action?e.action:this.defaultAction,this.target="function"==typeof e.target?e.target:this.defaultTarget,this.text="function"==typeof e.text?e.text:this.defaultText,this.container="object"===h(e.container)?e.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=d()(t,"click",function(t){return e.onClick(t)})}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget;this.clipboardAction&&(this.clipboardAction=null),this.clipboardAction=new l({action:this.action(e),target:this.target(e),text:this.text(e),container:this.container,trigger:e,emitter:this})}},{key:"defaultAction",value:function(t){return b("action",t)}},{key:"defaultTarget",value:function(t){var e=b("target",t);if(e)return document.querySelector(e)}},{key:"defaultText",value:function(t){return b("text",t)}},{key:"destroy",value:function(){this.listener.destroy(),this.clipboardAction&&(this.clipboardAction.destroy(),this.clipboardAction=null)}}],[{key:"isSupported",value:function(t){var e=0<arguments.length&&void 0!==t?t:["copy","cut"],n="string"==typeof e?[e]:e,o=!!document.queryCommandSupported;return n.forEach(function(t){o=o&&!!document.queryCommandSupported(t)}),o}}]),v);function v(t,e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,v);var n=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(v.__proto__||Object.getPrototypeOf(v)).call(this));return n.resolveOptions(e),n.listenClick(t),n}function b(t,e){var n="data-clipboard-"+t;if(e.hasAttribute(n))return e.getAttribute(n)}e.default=m}],r.c=o,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=6).default;function r(t){if(o[t])return o[t].exports;var e=o[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,r),e.l=!0,e.exports}var n,o});
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2013-2019 David J. Bradshaw
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
@@ -0,0 +1,127 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>iFrame message passing test</title>
6
+ <meta name="description" content="iFrame message passing test" />
7
+ <meta name="viewport" content="width=device-width" />
8
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
9
+ <style>
10
+ a.back {
11
+ float: right;
12
+ margin-left: 8px;
13
+ }
14
+ body {
15
+ border: solid 1px red;
16
+ }
17
+ p {
18
+ padding: 5px 212px 5px 5px;
19
+ margin: 0 0 5px;
20
+ }
21
+ #abs {
22
+ position: absolute;
23
+ top: 0;
24
+ right: 0;
25
+ width: 200px;
26
+ height: 600px;
27
+ background-color: wheat;
28
+ }
29
+ a.top {
30
+ position: absolute;
31
+ bottom: 0;
32
+ right: 0;
33
+ margin: 5px;
34
+ }
35
+ </style>
36
+ </head>
37
+
38
+ <body>
39
+ <p>
40
+ <b>iFrame</b>
41
+
42
+ <a href="frame.content.html" class="back">Back to page 1</a>
43
+ &nbsp;
44
+ <a
45
+ href="#"
46
+ class=" back"
47
+ onclick="if ('parentIFrame' in window) window.parentIFrame.scrollTo(0,99999);return false;"
48
+ >Bottom</a
49
+ >
50
+ &nbsp;
51
+ <a
52
+ href="#"
53
+ class=" back"
54
+ onclick="if ('parentIFrame' in window) window.parentIFrame.scrollToOffset(0,0);return false;"
55
+ >Scroll to iFrame</a
56
+ >
57
+ &nbsp;
58
+ <a href="#test" class="back">Jump to iFrame anchor</a>
59
+ <a href="#anchorParentTest" class="back">Jump to parent anchor</a>
60
+ </p>
61
+ <p>
62
+ This page has an absolute position element that take it out side the
63
+ normal document body, which is marked with a red border on this page. This
64
+ prevents the normal height calculation, which is based on the body tag
65
+ from returning the correct height. To work around this you can set the
66
+ <b>heightCalculationMethod</b> option to use one of the other page height
67
+ propeties.
68
+ </p>
69
+ <p>
70
+ Use the dropdown to change the sizing method of the page, select the
71
+ different sizing options to see how the effect the page. Note that they
72
+ can have different effects in different browsers, so you are normally best
73
+ off selecting <b>max</b> if you need to change away from the default
74
+ <b>bodyOffset</b> option.
75
+ </p>
76
+ <p data-iframe-height>
77
+ <b>Height Calculation Method</b>
78
+ <select name="heightCalculationMethod">
79
+ <option>bodyOffset</option>
80
+ <option>bodyScroll</option>
81
+ <option>documentElementOffset</option>
82
+ <option>documentElementScroll</option>
83
+ <option>max</option>
84
+ <option>min</option>
85
+ <option>grow</option>
86
+ <option>lowestElement</option>
87
+ <option>taggedElement</option>
88
+ </select>
89
+ </p>
90
+ <p>
91
+ <i
92
+ >This option should be used sparingly, as the alternate methods can be
93
+ less acurate at working out the correct page size, can cause screen
94
+ flicker and can sometimes fail to reduce in size when the frame content
95
+ changes in browsers that do not support mutationObservers (See
96
+ <a href="http://caniuse.com/mutationobserver">caniuse.com</a> for
97
+ details).</i
98
+ >
99
+ </p>
100
+ <a name="test">Test in page anchor</a>
101
+
102
+ <div id="abs">
103
+ Absolute positioned element
104
+ <a
105
+ href="#"
106
+ class="top"
107
+ onclick="if ('parentIFrame' in window) window.parentIFrame.scrollTo(0,0);return false;"
108
+ >Top</a
109
+ >
110
+ </div>
111
+
112
+ <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
113
+
114
+ <script
115
+ type="text/javascript"
116
+ src="../js/client/iframeResizer.contentWindow.min.js"
117
+ ></script>
118
+ <script>
119
+ $('select').on('change', function() {
120
+ if ('parentIFrame' in window) {
121
+ parentIFrame.setHeightCalculationMethod($(this).val())
122
+ parentIFrame.size()
123
+ }
124
+ })
125
+ </script>
126
+ </body>
127
+ </html>
@@ -0,0 +1,157 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>iFrame message passing test</title>
6
+ <meta name="description" content="iFrame message passing test" />
7
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
8
+ <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
9
+ <style>
10
+ *,
11
+ *:before,
12
+ *:after {
13
+ box-model: border-box;
14
+ }
15
+ a {
16
+ float: right;
17
+ margin-left: 10px;
18
+ }
19
+ </style>
20
+ </head>
21
+
22
+ <body>
23
+ <b>iFrame</b>
24
+ <a href="#" onclick="$('p:eq(0)').toggle();return false;">Toggle content</a>
25
+ &nbsp;
26
+ <a
27
+ href="#"
28
+ onclick="if ('parentIFrame' in window) window.parentIFrame.size(450);return false;"
29
+ >Size(450)</a
30
+ >
31
+ &nbsp;
32
+ <a
33
+ href="#"
34
+ onclick="if ('parentIFrame' in window) window.parentIFrame.autoResize(true);return false;"
35
+ >autoResize(true)</a
36
+ >
37
+
38
+ <a
39
+ href="#"
40
+ onclick="if ('parentIFrame' in window) window.parentIFrame.autoResize(false);return false;"
41
+ >autoResize(false)</a
42
+ >
43
+
44
+ <a id="nested" href="frame.nested.html">Nested</a>
45
+ &nbsp;
46
+ <a href="frame.hover.html">:Hover</a>
47
+ &nbsp;
48
+ <a href="frame.textarea.html">TextArea</a>
49
+ &nbsp;
50
+ <a href="frame.absolute.html">Absolute Position</a>
51
+ &nbsp;
52
+ <a
53
+ href="#"
54
+ onclick="if ('parentIFrame' in window) window.parentIFrame.sendMessage('Hello from the iFrame');return false;"
55
+ >Send Message</a
56
+ >
57
+ &nbsp;
58
+ <a
59
+ href="#"
60
+ onclick="if ('parentIFrame' in window) window.parentIFrame.close();return false;"
61
+ >Close</a
62
+ >
63
+
64
+ <p>
65
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
66
+ tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
67
+ veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
68
+ commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
69
+ velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
70
+ cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
71
+ est laborum.
72
+ </p>
73
+ <p>
74
+ But I must explain to you how all this mistaken idea of denouncing
75
+ pleasure and praising pain was born and I will give you a complete account
76
+ of the system, and expound the actual teachings of the great explorer of
77
+ the truth, the master-builder of human happiness. No one rejects,
78
+ dislikes, or avoids pleasure itself, because it is pleasure, but because
79
+ those who do not know how to pursue pleasure rationally encounter
80
+ consequences that are extremely painful. Nor again is there anyone who
81
+ loves or pursues or desires to obtain pain of itself, because it is pain,
82
+ but because occasionally circumstances occur in which toil and pain can
83
+ procure him some great pleasure. To take a trivial example, which of us
84
+ ever undertakes laborious physical exercise, except to obtain some
85
+ advantage from it? But who has any right to find fault with a man who
86
+ chooses to enjoy a pleasure that has no annoying consequences, or one who
87
+ avoids a pain that produces no resultant pleasure?
88
+ </p>
89
+ <p>
90
+ On the other hand, we denounce with righteous indignation and dislike men
91
+ who are so beguiled and demoralized by the charms of pleasure of the
92
+ moment, so blinded by desire, that they cannot foresee the pain and
93
+ trouble that are bound to ensue; and equal blame belongs to those who fail
94
+ in their duty through weakness of will, which is the same as saying
95
+ through shrinking from toil and pain. These cases are perfectly simple and
96
+ easy to distinguish. In a free hour, when our power of choice is
97
+ untrammelled and when nothing prevents our being able to do what we like
98
+ best, every pleasure is to be welcomed and every pain avoided. But in
99
+ certain circumstances and owing to the claims of duty or the obligations
100
+ of business it will frequently occur that pleasures have to be repudiated
101
+ and annoyances accepted. The wise man therefore always holds in these
102
+ matters to this principle of selection: he rejects pleasures to secure
103
+ other greater pleasures, or else he endures pains to avoid worse pains.
104
+ </p>
105
+ <p>
106
+ On the other hand, we denounce with righteous indignation and dislike men
107
+ who are so beguiled and demoralized by the charms of pleasure of the
108
+ moment, so blinded by desire, that they cannot foresee the pain and
109
+ trouble that are bound to ensue; and equal blame belongs to those who fail
110
+ in their duty through weakness of will, which is the same as saying
111
+ through shrinking from toil and pain. These cases are perfectly simple and
112
+ easy to distinguish. In a free hour, when our power of choice is
113
+ untrammelled and when nothing prevents our being able to do what we like
114
+ best, every pleasure is to be welcomed and every pain avoided. But in
115
+ certain circumstances and owing to the claims of duty or the obligations
116
+ of business it will frequently occur that pleasures have to be repudiated
117
+ and annoyances accepted. The wise man therefore always holds in these
118
+ matters to this principle of selection: he rejects pleasures to secure
119
+ other greater pleasures, or else he endures pains to avoid worse pains.
120
+ </p>
121
+ <p>
122
+ On the other hand, we denounce with righteous indignation and dislike men
123
+ who are so beguiled and demoralized by the charms of pleasure of the
124
+ moment, so blinded by desire, that they cannot foresee the pain and
125
+ trouble that are bound to ensue; and equal blame belongs to those who fail
126
+ in their duty through weakness of will, which is the same as saying
127
+ through shrinking from toil and pain. These cases are perfectly simple and
128
+ easy to distinguish. In a free hour, when our power of choice is
129
+ untrammelled and when nothing prevents our being able to do what we like
130
+ best, every pleasure is to be welcomed and every pain avoided. But in
131
+ certain circumstances and owing to the claims of duty or the obligations
132
+ of business it will frequently occur that pleasures have to be repudiated
133
+ and annoyances accepted. The wise man therefore always holds in these
134
+ matters to this principle of selection: he rejects pleasures to secure
135
+ other greater pleasures, or else he endures pains to avoid worse pains.
136
+ </p>
137
+
138
+ <script>
139
+ var level = document.location.search.replace(/\?/, '') || 0
140
+ $('#nested').attr('href', 'frame.nested.html?' + ++level)
141
+ </script>
142
+
143
+ <script>
144
+ var iFrameResizer = {
145
+ onMessage: function(message) {
146
+ alert(message, parentIFrame.getId())
147
+ }
148
+ }
149
+ </script>
150
+
151
+ <script
152
+ type="text/javascript"
153
+ src="../js/client/iframeResizer.contentWindow.min.js"
154
+ defer
155
+ ></script>
156
+ </body>
157
+ </html>
@@ -0,0 +1,68 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>iFrame message passing test</title>
6
+ <meta name="description" content="iFrame message passing test" />
7
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
8
+ <style>
9
+ a {
10
+ float: right;
11
+ margin-left: 10px;
12
+ }
13
+ </style>
14
+ </head>
15
+
16
+ <body>
17
+ <b>iFrame :Hover Example</b>
18
+ <a href="frame.content.html">Back to page 1</a>
19
+
20
+ <p>
21
+ Mouse over the code example below.
22
+ </p>
23
+
24
+ <xmp>
25
+ <!-- #code -->
26
+ </xmp>
27
+
28
+ <script>
29
+ var iFrameResizer = {
30
+ heightCalculationMethod: 'lowestElement'
31
+ }
32
+ </script>
33
+
34
+ <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
35
+ <script
36
+ type="text/javascript"
37
+ src="../js/client/iframeResizer.contentWindow.min.js"
38
+ ></script>
39
+
40
+ <div id="code">
41
+ <style>
42
+ xmp {
43
+ background-color: #eee;
44
+ padding: 20px;
45
+ display: block;
46
+ }
47
+
48
+ xmp:hover {
49
+ border: #c33 solid 40px;
50
+ }
51
+ </style>
52
+ <script>
53
+ ;(function() {
54
+ $('xmp').hover(function() {
55
+ if ('parentIFrame' in window) {
56
+ // Fix race condition in FireFox with setTimeout
57
+ setTimeout(parentIFrame.size.bind(parentIFrame), 0)
58
+ }
59
+ })
60
+ })()
61
+ </script>
62
+ </div>
63
+
64
+ <script>
65
+ $('xmp').text('<xmp>' + $('#code').html() + '<xmp>')
66
+ </script>
67
+ </body>
68
+ </html>
@@ -0,0 +1,100 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>iFrame message passing test</title>
6
+ <meta name="description" content="iFrame message passing test" />
7
+ <meta name="viewport" content="width=device-width" />
8
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
9
+ <style>
10
+ *,
11
+ *:before,
12
+ *:after {
13
+ box-model: border-box;
14
+ }
15
+ a {
16
+ float: right;
17
+ margin-left: 10px;
18
+ }
19
+
20
+ h2 {
21
+ margin-top: 0;
22
+ }
23
+ body {
24
+ margin: 8px !important;
25
+ }
26
+ </style>
27
+ </head>
28
+
29
+ <body>
30
+ <a href="frame.content.html">Back to page 1</a>
31
+ <h2>Nested iFrame</h2>
32
+ <p>
33
+ Resize window or click one of the links in the nested iFrame to watch it
34
+ resize.
35
+ </p>
36
+ <div style="margin:20px;">
37
+ <iframe
38
+ id="nestedIFrame"
39
+ src="frame.content.html"
40
+ width="100%"
41
+ scrolling="no"
42
+ ></iframe>
43
+ </div>
44
+ <p id="callback"></p>
45
+
46
+ <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
47
+
48
+ <script type="text/javascript" src="../js/iframeResizer.min.js"></script>
49
+ <script type="text/javascript">
50
+ var level = document.location.search.replace(/\?/, '') || 0
51
+
52
+ $('iframe')
53
+ .attr('id', 'nestedIFrame' + level)
54
+ .attr('src', 'frame.content.html?' + level)
55
+
56
+ /*
57
+ * If you do not understand what the code below does, then please just use the
58
+ * following call in your own code.
59
+ *
60
+ * iFrameResize({log:true});
61
+ *
62
+ * Once you have it working, set the log option to false.
63
+ */
64
+
65
+ iFrameResize({
66
+ log: true, // Enable console logging
67
+ inPageLinks: true,
68
+ onResized: function(messageData) {
69
+ // Callback fn when message is received
70
+ $('p#callback').html(
71
+ '<b>Frame ID:</b> ' +
72
+ messageData.iframe.id +
73
+ ' <b>Height:</b> ' +
74
+ messageData.height +
75
+ ' <b>Width:</b> ' +
76
+ messageData.width +
77
+ ' <b>Event type:</b> ' +
78
+ messageData.type
79
+ )
80
+ },
81
+ onMessage: function(messageData) {
82
+ // Callback fn when message is received
83
+ parentIFrame.sendMessage(
84
+ messageData.message + ' (via ' + $('iframe').attr('id') + ')'
85
+ )
86
+ },
87
+ onClosed: function(id) {
88
+ /// Callback fn when iFrame is closed
89
+ $('p#callback').html(
90
+ '<b>IFrame (</b>' + id + '<b>) removed from page.</b>'
91
+ )
92
+ }
93
+ })
94
+ </script>
95
+ <script
96
+ type="text/javascript"
97
+ src="../js/client/iframeResizer.contentWindow.min.js"
98
+ ></script>
99
+ </body>
100
+ </html>