j1-template 2021.1.21 → 2021.1.25
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/themes/j1/layouts/content_generator_article_navigator.html +177 -0
- data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +413 -0
- data/_includes/themes/j1/modules/connectors/survey/custom-provider.html +30 -0
- data/_includes/themes/j1/modules/connectors/survey/jotform.html +32 -0
- data/_includes/themes/j1/modules/connectors/surveys +58 -0
- data/_includes/themes/j1/procedures/global/attributes_loader.proc +4 -0
- data/_includes/themes/j1/procedures/posts/collate_timeline.proc +4 -4
- data/_layouts/article_navigator.html +62 -0
- data/_layouts/news_panel_posts.html +62 -0
- data/assets/data/article_navigator/index.html +63 -0
- data/assets/data/banner.html +2 -2
- data/assets/data/news_panel_posts/index.html +47 -0
- data/assets/data/panel.html +143 -53
- data/assets/error_pages/HTTP204.html +3 -1
- data/assets/error_pages/HTTP400.html +3 -1
- data/assets/error_pages/HTTP401.html +3 -1
- data/assets/error_pages/HTTP403.html +3 -1
- data/assets/error_pages/HTTP404.html +3 -1
- data/assets/error_pages/HTTP444.html +3 -1
- data/assets/error_pages/HTTP500.html +3 -1
- data/assets/error_pages/HTTP501.html +3 -1
- data/assets/error_pages/HTTP502.html +3 -1
- data/assets/error_pages/HTTP503.html +6 -2
- data/assets/themes/j1/adapter/js/infiniteScroll.js +245 -0
- data/assets/themes/j1/adapter/js/j1.js +17 -0
- data/assets/themes/j1/core/css/themes/uno-light/bootstrap.css +767 -673
- data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +1 -1
- data/assets/themes/j1/core/css/vendor.css +187 -0
- data/assets/themes/j1/core/css/vendor.min.css +1 -1
- data/assets/themes/j1/core/js/template.js +1 -1
- data/assets/themes/j1/core/js/template.js.map +1 -1
- data/assets/themes/j1/core/js/template.min.js +1 -1
- data/assets/themes/j1/core/js/template.min.js.map +1 -1
- data/assets/themes/j1/modules/infiniteScroll/css/theme/uno.css +150 -0
- data/assets/themes/j1/modules/infiniteScroll/css/theme/uno.min.css +15 -0
- data/assets/themes/j1/modules/infiniteScroll/js/infiniteScroll.js +1909 -0
- data/assets/themes/j1/modules/infiniteScroll/js/infiniteScroll.min.js +17 -0
- data/assets/themes/j1/modules/showOnScroll/js/showOnScroll.js +61 -0
- data/assets/themes/j1/modules/showOnScroll/js/showOnScroll.min.js +15 -0
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/Gemfile +1 -1
- data/lib/starter_web/_config.yml +2 -2
- data/lib/starter_web/_data/blocks/banner.yml +6 -6
- data/lib/starter_web/_data/blocks/defaults/panel.1.yml +256 -0
- data/lib/starter_web/_data/blocks/defaults/panel.2.yml +250 -0
- data/lib/starter_web/_data/blocks/defaults/panel.yml +9 -14
- data/lib/starter_web/_data/blocks/footer.yml +2 -2
- data/lib/starter_web/_data/blocks/panel.yml +360 -176
- data/lib/starter_web/_data/layouts/article_navigator.yml +168 -0
- data/lib/starter_web/_data/layouts/default.yml +1 -1
- data/lib/starter_web/_data/layouts/home.yml +16 -9
- data/lib/starter_web/_data/layouts/news_panel_posts.yml +168 -0
- data/lib/starter_web/_data/modules/defaults/infiniteScroll.yml +73 -0
- data/lib/starter_web/_data/modules/infiniteScroll.yml +66 -0
- data/lib/starter_web/_data/resources.yml +43 -0
- data/lib/starter_web/_includes/attributes.asciidoc +10 -1
- data/lib/starter_web/_plugins/lunr_index.rb +1 -1
- data/lib/starter_web/assets/images/modules/attics/alexander-shatov-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/franck-1920x12800.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/rirri-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/adrien-olichon-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/alejandro-barba-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/andre-francois-mckenzie-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/andreas-steger-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/ansgar-scheffold-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/ben-white-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/craig-sybert-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/danielle-cerullo-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/deb-dowd-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/halgatewood-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/hans-eiskonen-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/ian-barsby-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/ivan-aleksic-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/markus-krisetya-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/markus-spiske-6-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/markus-winkler-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/markus-winkler-2-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/michelle-cassar-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/mika-baumeister-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/posts/science-in-hd-1920x1280.jpg +0 -0
- data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +1 -0
- data/lib/starter_web/collections/posts/public/featured/_posts/2020-01-01-about-cookies.adoc +1 -0
- data/lib/starter_web/collections/posts/public/featured/_posts/2021-03-01-site-generators.adoc +1 -0
- data/lib/starter_web/collections/posts/public/featured/_posts/2021-03-03-about-j1.adoc +1 -0
- data/lib/starter_web/collections/posts/public/featured/_posts/_includes/attributes.asciidoc +7 -1
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-test-series.adoc +2 -2
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-test-series.adoc +2 -1
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-test-series.adoc +2 -1
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-04-post-test-series.adoc +2 -1
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-20-minneapolis.adoc +1 -0
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-24-narcisse-snake-dens.adoc +2 -1
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-26-columbia-river.adoc +2 -1
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/_includes/attributes.asciidoc +7 -0
- data/lib/starter_web/index.html +1 -2
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/book/_includes/attributes.asciidoc +7 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/_includes/attributes.asciidoc +7 -1
- data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +5 -5
- data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +5 -5
- data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +5 -5
- data/lib/starter_web/pages/public/blog/navigator/archive.html +8 -10
- data/lib/starter_web/pages/public/learn/quickstart.adoc +23 -32
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +38 -45
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +11 -12
- data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +18 -18
- data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +19 -20
- data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +22 -23
- data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +6 -6
- data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +10 -10
- data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +24 -22
- data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +33 -33
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/attributes.asciidoc +14 -0
- data/lib/starter_web/pages/public/learn/where_to_go.adoc +2 -2
- data/lib/starter_web/pages/public/previewer/_includes/attributes.asciidoc +6 -0
- data/lib/starter_web/pages/public/previewer/bootstrap_theme.adoc +8 -8
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +47 -2
@@ -0,0 +1,17 @@
|
|
1
|
+
/*!
|
2
|
+
* Infinite Scroll PACKAGED v4.0.1
|
3
|
+
* Automatically add next page
|
4
|
+
*
|
5
|
+
* Licensed GPLv3 for open source use
|
6
|
+
* or Infinite Scroll Commercial License for commercial use
|
7
|
+
*
|
8
|
+
* https://infinite-scroll.com
|
9
|
+
* Copyright 2018-2020 Metafizzy
|
10
|
+
*/
|
11
|
+
!function(t,e){"object"==typeof module&&module.exports?module.exports=e(t,require("jquery")):t.jQueryBridget=e(t,t.jQuery)}(window,(function(t,e){let i=t.console,n=void 0===i?function(){}:function(t){i.error(t)};return function(i,o,s){(s=s||e||t.jQuery)&&(o.prototype.option||(o.prototype.option=function(t){t&&(this.options=Object.assign(this.options||{},t))}),s.fn[i]=function(t,...e){return"string"==typeof t?function(t,e,o){let r,l=`$().${i}("${e}")`;return t.each((function(t,h){let a=s.data(h,i);if(!a)return void n(`${i} not initialized. Cannot call method ${l}`);let c=a[e];if(!c||"_"==e.charAt(0))return void n(`${l} is not a valid method`);let u=c.apply(a,o);r=void 0===r?u:r})),void 0!==r?r:t}(this,t,e):(r=t,this.each((function(t,e){let n=s.data(e,i);n?(n.option(r),n._init()):(n=new o(e,r),s.data(e,i,n))})),this);var r})}})),function(t,e){"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}("undefined"!=typeof window?window:this,(function(){function t(){}let e=t.prototype;return e.on=function(t,e){if(!t||!e)return this;let i=this._events=this._events||{},n=i[t]=i[t]||[];return n.includes(e)||n.push(e),this},e.once=function(t,e){if(!t||!e)return this;this.on(t,e);let i=this._onceEvents=this._onceEvents||{};return(i[t]=i[t]||{})[e]=!0,this},e.off=function(t,e){let i=this._events&&this._events[t];if(!i||!i.length)return this;let n=i.indexOf(e);return-1!=n&&i.splice(n,1),this},e.emitEvent=function(t,e){let i=this._events&&this._events[t];if(!i||!i.length)return this;i=i.slice(0),e=e||[];let n=this._onceEvents&&this._onceEvents[t];for(let o of i){n&&n[o]&&(this.off(t,o),delete n[o]),o.apply(this,e)}return this},e.allOff=function(){return delete this._events,delete this._onceEvents,this},t})),function(t,e){"object"==typeof module&&module.exports?module.exports=e(t):t.fizzyUIUtils=e(t)}(this,(function(t){let e={extend:function(t,e){return Object.assign(t,e)},modulo:function(t,e){return(t%e+e)%e},makeArray:function(t){if(Array.isArray(t))return t;if(null==t)return[];return"object"==typeof t&&"number"==typeof t.length?[...t]:[t]},removeFrom:function(t,e){let i=t.indexOf(e);-1!=i&&t.splice(i,1)},getParent:function(t,e){for(;t.parentNode&&t!=document.body;)if((t=t.parentNode).matches(e))return t},getQueryElement:function(t){return"string"==typeof t?document.querySelector(t):t},handleEvent:function(t){let e="on"+t.type;this[e]&&this[e](t)},filterFindElements:function(t,i){return(t=e.makeArray(t)).filter((t=>t instanceof HTMLElement)).reduce(((t,e)=>{if(!i)return t.push(e),t;e.matches(i)&&t.push(e);let n=e.querySelectorAll(i);return t=t.concat(...n)}),[])},debounceMethod:function(t,e,i){i=i||100;let n=t.prototype[e],o=e+"Timeout";t.prototype[e]=function(){clearTimeout(this[o]);let t=arguments;this[o]=setTimeout((()=>{n.apply(this,t),delete this[o]}),i)}},docReady:function(t){let e=document.readyState;"complete"==e||"interactive"==e?setTimeout(t):document.addEventListener("DOMContentLoaded",t)},toDashed:function(t){return t.replace(/(.)([A-Z])/g,(function(t,e,i){return e+"-"+i})).toLowerCase()}},i=t.console;return e.htmlInit=function(n,o){e.docReady((function(){let s="data-"+e.toDashed(o),r=document.querySelectorAll(`[${s}]`),l=t.jQuery;[...r].forEach((t=>{let e,r=t.getAttribute(s);try{e=r&&JSON.parse(r)}catch(e){return void(i&&i.error(`Error parsing ${s} on ${t.className}: ${e}`))}let h=new n(t,e);l&&l.data(t,o,h)}))}))},e})),function(t,e){"object"==typeof module&&module.exports?module.exports=e(t,require("ev-emitter"),require("fizzy-ui-utils")):t.InfiniteScroll=e(t,t.EvEmitter,t.fizzyUIUtils)}(window,(function(t,e,i){let n=t.jQuery,o={};function s(t,e){let r=i.getQueryElement(t);if(r){if((t=r).infiniteScrollGUID){let i=o[t.infiniteScrollGUID];return i.option(e),i}this.element=t,this.options={...s.defaults},this.option(e),n&&(this.$element=n(this.element)),this.create()}else console.error("Bad element for InfiniteScroll: "+(r||t))}s.defaults={},s.create={},s.destroy={};let r=s.prototype;Object.assign(r,e.prototype);let l=0;r.create=function(){let t=this.guid=++l;if(this.element.infiniteScrollGUID=t,o[t]=this,this.pageIndex=1,this.loadCount=0,this.updateGetPath(),this.getPath&&this.getPath()){this.updateGetAbsolutePath(),this.log("initialized",[this.element.className]),this.callOnInit();for(let t in s.create)s.create[t].call(this)}else console.error("Disabling InfiniteScroll")},r.option=function(t){Object.assign(this.options,t)},r.callOnInit=function(){let t=this.options.onInit;t&&t.call(this,this)},r.dispatchEvent=function(t,e,i){this.log(t,i);let o=e?[e].concat(i):i;if(this.emitEvent(t,o),!n||!this.$element)return;let s=t+=".infiniteScroll";if(e){let i=n.Event(e);i.type=t,s=i}this.$element.trigger(s,i)};let h={initialized:t=>`on ${t}`,request:t=>`URL: ${t}`,load:(t,e)=>`${t.title||""}. URL: ${e}`,error:(t,e)=>`${t}. URL: ${e}`,append:(t,e,i)=>`${i.length} items. URL: ${e}`,last:(t,e)=>`URL: ${e}`,history:(t,e)=>`URL: ${e}`,pageIndex:function(t,e){return`current page determined to be: ${t} from ${e}`}};r.log=function(t,e){if(!this.options.debug)return;let i=`[InfiniteScroll] ${t}`,n=h[t];n&&(i+=". "+n.apply(this,e)),console.log(i)},r.updateMeasurements=function(){this.windowHeight=t.innerHeight;let e=this.element.getBoundingClientRect();this.top=e.top+t.scrollY},r.updateScroller=function(){let e=this.options.elementScroll;if(e){if(this.scroller=!0===e?this.element:i.getQueryElement(e),!this.scroller)throw new Error(`Unable to find elementScroll: ${e}`)}else this.scroller=t},r.updateGetPath=function(){let t=this.options.path;if(!t)return void console.error(`InfiniteScroll path option required. Set as: ${t}`);let e=typeof t;"function"!=e?"string"==e&&t.match("{{#}}")?this.updateGetPathTemplate(t):this.updateGetPathSelector(t):this.getPath=t},r.updateGetPathTemplate=function(t){this.getPath=()=>{let e=this.pageIndex+1;return t.replace("{{#}}",e)};let e=t.replace(/(\\\?|\?)/,"\\?").replace("{{#}}","(\\d\\d?\\d?)"),i=new RegExp(e),n=location.href.match(i);n&&(this.pageIndex=parseInt(n[1],10),this.log("pageIndex",[this.pageIndex,"template string"]))};let a=[/^(.*?\/?page\/?)(\d\d?\d?)(.*?$)/,/^(.*?\/?\?page=)(\d\d?\d?)(.*?$)/,/(.*?)(\d\d?\d?)(?!.*\d)(.*?$)/],c=s.getPathParts=function(t){if(t)for(let e of a){let i=t.match(e);if(i){let[,t,e,n]=i;return{begin:t,index:e,end:n}}}};r.updateGetPathSelector=function(t){let e=document.querySelector(t);if(!e)return void console.error(`Bad InfiniteScroll path option. Next link not found: ${t}`);let i=e.getAttribute("href"),n=c(i);if(!n)return void console.error(`InfiniteScroll unable to parse next link href: ${i}`);let{begin:o,index:s,end:r}=n;this.isPathSelector=!0,this.getPath=()=>o+(this.pageIndex+1)+r,this.pageIndex=parseInt(s,10)-1,this.log("pageIndex",[this.pageIndex,"next link"])},r.updateGetAbsolutePath=function(){let t=this.getPath();if(t.match(/^http/)||t.match(/^\//))return void(this.getAbsolutePath=this.getPath);let{pathname:e}=location,i=t.match(/^\?/),n=e.substring(0,e.lastIndexOf("/")),o=i?e:n+"/";this.getAbsolutePath=()=>o+this.getPath()},s.create.hideNav=function(){let t=i.getQueryElement(this.options.hideNav);t&&(t.style.display="none",this.nav=t)},s.destroy.hideNav=function(){this.nav&&(this.nav.style.display="")},r.destroy=function(){this.allOff();for(let t in s.destroy)s.destroy[t].call(this);delete this.element.infiniteScrollGUID,delete o[this.guid],n&&this.$element&&n.removeData(this.element,"infiniteScroll")},s.throttle=function(t,e){let i,n;return e=e||200,function(){let o=+new Date,s=arguments,r=()=>{i=o,t.apply(this,s)};i&&o<i+e?(clearTimeout(n),n=setTimeout(r,e)):r()}},s.data=function(t){let e=(t=i.getQueryElement(t))&&t.infiniteScrollGUID;return e&&o[e]},s.setJQuery=function(t){n=t},i.htmlInit(s,"infinite-scroll"),r._init=function(){};let{jQueryBridget:u}=t;return n&&u&&u("infiniteScroll",s,n),s})),function(t,e){"object"==typeof module&&module.exports?module.exports=e(t,require("./core")):e(t,t.InfiniteScroll)}(window,(function(t,e){let i=e.prototype;Object.assign(e.defaults,{loadOnScroll:!0,checkLastPage:!0,responseBody:"text",domParseResponse:!0}),e.create.pageLoad=function(){this.canLoad=!0,this.on("scrollThreshold",this.onScrollThresholdLoad),this.on("load",this.checkLastPage),this.options.outlayer&&this.on("append",this.onAppendOutlayer)},i.onScrollThresholdLoad=function(){this.options.loadOnScroll&&this.loadNextPage()};let n=new DOMParser;function o(t){let e=document.createDocumentFragment();return t&&e.append(...t),e}return i.loadNextPage=function(){if(this.isLoading||!this.canLoad)return;let{responseBody:t,domParseResponse:e,fetchOptions:i}=this.options,o=this.getAbsolutePath();this.isLoading=!0,"function"==typeof i&&(i=i());let s=fetch(o,i).then((i=>{if(!i.ok){let t=new Error(i.statusText);return this.onPageError(t,o,i),{response:i}}return i[t]().then((s=>("text"==t&&e&&(s=n.parseFromString(s,"text/html")),204==i.status?(this.lastPageReached(s,o),{body:s,response:i}):this.onPageLoad(s,o,i))))})).catch((t=>{this.onPageError(t,o)}));return this.dispatchEvent("request",null,[o,s]),s},i.onPageLoad=function(t,e,i){return this.options.append||(this.isLoading=!1),this.pageIndex++,this.loadCount++,this.dispatchEvent("load",null,[t,e,i]),this.appendNextPage(t,e,i)},i.appendNextPage=function(t,e,i){let{append:n,responseBody:s,domParseResponse:r}=this.options;if(!("text"==s&&r)||!n)return{body:t,response:i};let l=t.querySelectorAll(n),h={body:t,response:i,items:l};if(!l||!l.length)return this.lastPageReached(t,e),h;let a=o(l),c=()=>(this.appendItems(l,a),this.isLoading=!1,this.dispatchEvent("append",null,[t,e,l,i]),h);return this.options.outlayer?this.appendOutlayerItems(a,c):c()},i.appendItems=function(t,e){t&&t.length&&(function(t){let e=t.querySelectorAll("script");for(let t of e){let e=document.createElement("script"),i=t.attributes;for(let t of i)e.setAttribute(t.name,t.value);e.innerHTML=t.innerHTML,t.parentNode.replaceChild(e,t)}}(e=e||o(t)),this.element.appendChild(e))},i.appendOutlayerItems=function(i,n){let o=e.imagesLoaded||t.imagesLoaded;return o?new Promise((function(t){o(i,(function(){let e=n();t(e)}))})):(console.error("[InfiniteScroll] imagesLoaded required for outlayer option"),void(this.isLoading=!1))},i.onAppendOutlayer=function(t,e,i){this.options.outlayer.appended(i)},i.checkLastPage=function(t,e){let i,{checkLastPage:n,path:o}=this.options;if(n){if("function"==typeof o){if(!this.getPath())return void this.lastPageReached(t,e)}"string"==typeof n?i=n:this.isPathSelector&&(i=o),i&&t.querySelector&&(t.querySelector(i)||this.lastPageReached(t,e))}},i.lastPageReached=function(t,e){this.canLoad=!1,this.dispatchEvent("last",null,[t,e])},i.onPageError=function(t,e,i){return this.isLoading=!1,this.canLoad=!1,this.dispatchEvent("error",null,[t,e,i]),t},e.create.prefill=function(){if(!this.options.prefill)return;let t=this.options.append;t?(this.updateMeasurements(),this.updateScroller(),this.isPrefilling=!0,this.on("append",this.prefill),this.once("error",this.stopPrefill),this.once("last",this.stopPrefill),this.prefill()):console.error(`append option required for prefill. Set as :${t}`)},i.prefill=function(){let t=this.getPrefillDistance();this.isPrefilling=t>=0,this.isPrefilling?(this.log("prefill"),this.loadNextPage()):this.stopPrefill()},i.getPrefillDistance=function(){return this.options.elementScroll?this.scroller.clientHeight-this.scroller.scrollHeight:this.windowHeight-this.element.clientHeight},i.stopPrefill=function(){this.log("stopPrefill"),this.off("append",this.prefill)},e})),function(t,e){"object"==typeof module&&module.exports?module.exports=e(t,require("./core"),require("fizzy-ui-utils")):e(t,t.InfiniteScroll,t.fizzyUIUtils)}(window,(function(t,e,i){let n=e.prototype;return Object.assign(e.defaults,{scrollThreshold:400}),e.create.scrollWatch=function(){this.pageScrollHandler=this.onPageScroll.bind(this),this.resizeHandler=this.onResize.bind(this);let t=this.options.scrollThreshold;(t||0===t)&&this.enableScrollWatch()},e.destroy.scrollWatch=function(){this.disableScrollWatch()},n.enableScrollWatch=function(){this.isScrollWatching||(this.isScrollWatching=!0,this.updateMeasurements(),this.updateScroller(),this.on("last",this.disableScrollWatch),this.bindScrollWatchEvents(!0))},n.disableScrollWatch=function(){this.isScrollWatching&&(this.bindScrollWatchEvents(!1),delete this.isScrollWatching)},n.bindScrollWatchEvents=function(e){let i=e?"addEventListener":"removeEventListener";this.scroller[i]("scroll",this.pageScrollHandler),t[i]("resize",this.resizeHandler)},n.onPageScroll=e.throttle((function(){this.getBottomDistance()<=this.options.scrollThreshold&&this.dispatchEvent("scrollThreshold")})),n.getBottomDistance=function(){let e,i;return this.options.elementScroll?(e=this.scroller.scrollHeight,i=this.scroller.scrollTop+this.scroller.clientHeight):(e=this.top+this.element.clientHeight,i=t.scrollY+this.windowHeight),e-i},n.onResize=function(){this.updateMeasurements()},i.debounceMethod(e,"onResize",150),e})),function(t,e){"object"==typeof module&&module.exports?module.exports=e(t,require("./core"),require("fizzy-ui-utils")):e(t,t.InfiniteScroll,t.fizzyUIUtils)}(window,(function(t,e,i){let n=e.prototype;Object.assign(e.defaults,{history:"replace"});let o=document.createElement("a");return e.create.history=function(){if(!this.options.history)return;o.href=this.getAbsolutePath(),(o.origin||o.protocol+"//"+o.host)==location.origin?this.options.append?this.createHistoryAppend():this.createHistoryPageLoad():console.error(`[InfiniteScroll] cannot set history with different origin: ${o.origin} on ${location.origin} . History behavior disabled.`)},n.createHistoryAppend=function(){this.updateMeasurements(),this.updateScroller(),this.scrollPages=[{top:0,path:location.href,title:document.title}],this.scrollPage=this.scrollPages[0],this.scrollHistoryHandler=this.onScrollHistory.bind(this),this.unloadHandler=this.onUnload.bind(this),this.scroller.addEventListener("scroll",this.scrollHistoryHandler),this.on("append",this.onAppendHistory),this.bindHistoryAppendEvents(!0)},n.bindHistoryAppendEvents=function(e){let i=e?"addEventListener":"removeEventListener";this.scroller[i]("scroll",this.scrollHistoryHandler),t[i]("unload",this.unloadHandler)},n.createHistoryPageLoad=function(){this.on("load",this.onPageLoadHistory)},e.destroy.history=n.destroyHistory=function(){this.options.history&&this.options.append&&this.bindHistoryAppendEvents(!1)},n.onAppendHistory=function(t,e,i){if(!i||!i.length)return;let n=i[0],s=this.getElementScrollY(n);o.href=e,this.scrollPages.push({top:s,path:o.href,title:t.title})},n.getElementScrollY=function(e){if(this.options.elementScroll)return e.offsetTop-this.top;return e.getBoundingClientRect().top+t.scrollY},n.onScrollHistory=function(){let t=this.getClosestScrollPage();t!=this.scrollPage&&(this.scrollPage=t,this.setHistory(t.title,t.path))},i.debounceMethod(e,"onScrollHistory",150),n.getClosestScrollPage=function(){let e,i;e=this.options.elementScroll?this.scroller.scrollTop+this.scroller.clientHeight/2:t.scrollY+this.windowHeight/2;for(let t of this.scrollPages){if(t.top>=e)break;i=t}return i},n.setHistory=function(t,e){let i=this.options.history;i&&history[i+"State"]&&(history[i+"State"](null,t,e),this.options.historyTitle&&(document.title=t),this.dispatchEvent("history",null,[t,e]))},n.onUnload=function(){if(0===this.scrollPage.top)return;let e=t.scrollY-this.scrollPage.top+this.top;this.destroyHistory(),scrollTo(0,e)},n.onPageLoadHistory=function(t,e){this.setHistory(t.title,e)},e})),function(t,e){"object"==typeof module&&module.exports?module.exports=e(t,require("./core"),require("fizzy-ui-utils")):e(t,t.InfiniteScroll,t.fizzyUIUtils)}(window,(function(t,e,i){class n{constructor(t,e){this.element=t,this.infScroll=e,this.clickHandler=this.onClick.bind(this),this.element.addEventListener("click",this.clickHandler),e.on("request",this.disable.bind(this)),e.on("load",this.enable.bind(this)),e.on("error",this.hide.bind(this)),e.on("last",this.hide.bind(this))}onClick(t){t.preventDefault(),this.infScroll.loadNextPage()}enable(){this.element.removeAttribute("disabled")}disable(){this.element.disabled="disabled"}hide(){this.element.style.display="none"}destroy(){this.element.removeEventListener("click",this.clickHandler)}}return e.create.button=function(){let t=i.getQueryElement(this.options.button);t&&(this.button=new n(t,this))},e.destroy.button=function(){this.button&&this.button.destroy()},e.Button=n,e})),function(t,e){"object"==typeof module&&module.exports?module.exports=e(t,require("./core"),require("fizzy-ui-utils")):e(t,t.InfiniteScroll,t.fizzyUIUtils)}(window,(function(t,e,i){let n=e.prototype;function o(t){r(t,"none")}function s(t){r(t,"block")}function r(t,e){t&&(t.style.display=e)}return e.create.status=function(){let t=i.getQueryElement(this.options.status);t&&(this.statusElement=t,this.statusEventElements={request:t.querySelector(".infinite-scroll-request"),error:t.querySelector(".infinite-scroll-error"),last:t.querySelector(".infinite-scroll-last")},this.on("request",this.showRequestStatus),this.on("error",this.showErrorStatus),this.on("last",this.showLastStatus),this.bindHideStatus("on"))},n.bindHideStatus=function(t){let e=this.options.append?"append":"load";this[t](e,this.hideAllStatus)},n.showRequestStatus=function(){this.showStatus("request")},n.showErrorStatus=function(){this.showStatus("error")},n.showLastStatus=function(){this.showStatus("last"),this.bindHideStatus("off")},n.showStatus=function(t){s(this.statusElement),this.hideStatusEventElements(),s(this.statusEventElements[t])},n.hideAllStatus=function(){o(this.statusElement),this.hideStatusEventElements()},n.hideStatusEventElements=function(){for(let t in this.statusEventElements){o(this.statusEventElements[t])}},e})),
|
12
|
+
/*!
|
13
|
+
* imagesLoaded v4.1.4
|
14
|
+
* JavaScript is all like "You images are done yet or what?"
|
15
|
+
* MIT License
|
16
|
+
*/
|
17
|
+
function(t,e){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],(function(i){return e(t,i)})):"object"==typeof module&&module.exports?module.exports=e(t,require("ev-emitter")):t.imagesLoaded=e(t,t.EvEmitter)}("undefined"!=typeof window?window:this,(function(t,e){"use strict";var i=t.jQuery,n=t.console;function o(t,e){for(var i in e)t[i]=e[i];return t}var s=Array.prototype.slice;function r(t,e,l){if(!(this instanceof r))return new r(t,e,l);var h,a=t;("string"==typeof t&&(a=document.querySelectorAll(t)),a)?(this.elements=(h=a,Array.isArray(h)?h:"object"==typeof h&&"number"==typeof h.length?s.call(h):[h]),this.options=o({},this.options),"function"==typeof e?l=e:o(this.options,e),l&&this.on("always",l),this.getImages(),i&&(this.jqDeferred=new i.Deferred),setTimeout(this.check.bind(this))):n.error("Bad element for imagesLoaded "+(a||t))}r.prototype=Object.create(e.prototype),r.prototype.options={},r.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},r.prototype.addElementImages=function(t){"IMG"==t.nodeName&&this.addImage(t),!0===this.options.background&&this.addElementBackgroundImages(t);var e=t.nodeType;if(e&&l[e]){for(var i=t.querySelectorAll("img"),n=0;n<i.length;n++){var o=i[n];this.addImage(o)}if("string"==typeof this.options.background){var s=t.querySelectorAll(this.options.background);for(n=0;n<s.length;n++){var r=s[n];this.addElementBackgroundImages(r)}}}};var l={1:!0,9:!0,11:!0};function h(t){this.img=t}function a(t,e){this.url=t,this.element=e,this.img=new Image}return r.prototype.addElementBackgroundImages=function(t){var e=getComputedStyle(t);if(e)for(var i=/url\((['"])?(.*?)\1\)/gi,n=i.exec(e.backgroundImage);null!==n;){var o=n&&n[2];o&&this.addBackground(o,t),n=i.exec(e.backgroundImage)}},r.prototype.addImage=function(t){var e=new h(t);this.images.push(e)},r.prototype.addBackground=function(t,e){var i=new a(t,e);this.images.push(i)},r.prototype.check=function(){var t=this;function e(e,i,n){setTimeout((function(){t.progress(e,i,n)}))}this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?this.images.forEach((function(t){t.once("progress",e),t.check()})):this.complete()},r.prototype.progress=function(t,e,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!t.isLoaded,this.emitEvent("progress",[this,t,e]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,t),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&n&&n.log("progress: "+i,t,e)},r.prototype.complete=function(){var t=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(t,[this]),this.emitEvent("always",[this]),this.jqDeferred){var e=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[e](this)}},h.prototype=Object.create(e.prototype),h.prototype.check=function(){this.getIsImageComplete()?this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.proxyImage.src=this.img.src)},h.prototype.getIsImageComplete=function(){return this.img.complete&&this.img.naturalWidth},h.prototype.confirm=function(t,e){this.isLoaded=t,this.emitEvent("progress",[this,this.img,e])},h.prototype.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},h.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},h.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},h.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},a.prototype=Object.create(h.prototype),a.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url,this.getIsImageComplete()&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},a.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},a.prototype.confirm=function(t,e){this.isLoaded=t,this.emitEvent("progress",[this,this.element,e])},r.makeJQueryPlugin=function(e){(e=e||t.jQuery)&&((i=e).fn.imagesLoaded=function(t,e){return new r(this,t,e).jqDeferred.promise(i(this))})},r.makeJQueryPlugin(),r}));
|
@@ -0,0 +1,61 @@
|
|
1
|
+
/*
|
2
|
+
# -----------------------------------------------------------------------------
|
3
|
+
# ~/assets/themes/j1/modules/showOnScroll/js/showOnScroll.js
|
4
|
+
# J1 implementation for showOnScroll
|
5
|
+
#
|
6
|
+
# Product/Info:
|
7
|
+
# https://jekyll.one
|
8
|
+
#
|
9
|
+
# Copyright (C) 2021 Juergen Adams
|
10
|
+
#
|
11
|
+
# J1 Template is licensed under the MIT License.
|
12
|
+
# For details, see https://jekyll.one
|
13
|
+
# -----------------------------------------------------------------------------
|
14
|
+
*/
|
15
|
+
|
16
|
+
function isInViewport(elm, offset) {
|
17
|
+
// if the element doesn't exist, abort
|
18
|
+
if( elm.length == 0 ) {
|
19
|
+
return;
|
20
|
+
}
|
21
|
+
var $window = jQuery(window);
|
22
|
+
var viewport_top = $window.scrollTop();
|
23
|
+
var viewport_height = $window.height();
|
24
|
+
var viewport_bottom = viewport_top + viewport_height;
|
25
|
+
var $elm = jQuery(elm);
|
26
|
+
var top = $elm.offset().top + offset;
|
27
|
+
var height = $elm.height();
|
28
|
+
var bottom = top + height;
|
29
|
+
|
30
|
+
return (top >= viewport_top && top < viewport_bottom) ||
|
31
|
+
(bottom > viewport_top && bottom <= viewport_bottom) ||
|
32
|
+
(height > viewport_height && top <= viewport_top && bottom >= viewport_bottom);
|
33
|
+
}
|
34
|
+
|
35
|
+
$(document).ready( function() {
|
36
|
+
|
37
|
+
var showDelay = 700;
|
38
|
+
var yOffset = 500;
|
39
|
+
var logger = log4javascript.getLogger('j1.core.showOnScroll');
|
40
|
+
|
41
|
+
var eventHandler_service_panel = function (event) {
|
42
|
+
if (isInViewport ($('#home_service_panel'), yOffset)) {
|
43
|
+
logger.info('\n' + 'The specified container is in view: home_service_panel');
|
44
|
+
//console.log('The specified container is in view.');
|
45
|
+
$(".home_service_panel").show(showDelay);
|
46
|
+
window.removeEventListener('scroll', eventHandler_service_panel);
|
47
|
+
}
|
48
|
+
}
|
49
|
+
window.addEventListener('scroll', eventHandler_service_panel);
|
50
|
+
|
51
|
+
var eventHandler_intro_panel = function (event) {
|
52
|
+
if (isInViewport ($('#home_intro_panel'), yOffset)) {
|
53
|
+
logger.info('\n' + 'The specified container is in view: home_intro_panel');
|
54
|
+
//console.log('The specified container is in view.');
|
55
|
+
$(".home_intro_panel").show(showDelay);
|
56
|
+
window.removeEventListener('scroll', eventHandler_intro_panel);
|
57
|
+
}
|
58
|
+
}
|
59
|
+
window.addEventListener('scroll', eventHandler_intro_panel);
|
60
|
+
|
61
|
+
});
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
# -----------------------------------------------------------------------------
|
3
|
+
# ~/assets/themes/j1/modules/showOnScroll/js/showOnScroll.min.js
|
4
|
+
# J1 implementation for showOnScroll
|
5
|
+
#
|
6
|
+
# Product/Info:
|
7
|
+
# https://jekyll.one
|
8
|
+
#
|
9
|
+
# Copyright (C) 2021 Juergen Adams
|
10
|
+
#
|
11
|
+
# J1 Template is licensed under the MIT License.
|
12
|
+
# For details, see https://jekyll.one
|
13
|
+
# -----------------------------------------------------------------------------
|
14
|
+
*/
|
15
|
+
function isInViewport(g,f){if(g.length==0){return}var c=jQuery(window);var j=c.scrollTop();var b=c.height();var d=j+b;var e=jQuery(g);var h=e.offset().top+f;var i=e.height();var a=h+i;return(h>=j&&h<d)||(a>j&&a<=d)||(i>b&&h<=j&&a>=d)}$(document).ready(function(){var a=700;var e=500;var b=log4javascript.getLogger("j1.core.showOnScroll");var c=function(f){if(isInViewport($("#home_service_panel"),e)){b.info("\nThe specified container is in view: home_service_panel");$(".home_service_panel").show(a);window.removeEventListener("scroll",c)}};window.addEventListener("scroll",c);var d=function(f){if(isInViewport($("#home_intro_panel"),e)){b.info("\nThe specified container is in view: home_intro_panel");$(".home_intro_panel").show(a);window.removeEventListener("scroll",d)}};window.addEventListener("scroll",d)});
|
data/lib/j1/version.rb
CHANGED
data/lib/starter_web/Gemfile
CHANGED
@@ -53,7 +53,7 @@ gem 'jekyll', '~> 4.2'
|
|
53
53
|
|
54
54
|
# Theme Rubies, default: J1 Template (NOT used for the development system)
|
55
55
|
#
|
56
|
-
gem 'j1-template', '~> 2021.1.
|
56
|
+
gem 'j1-template', '~> 2021.1.25'
|
57
57
|
|
58
58
|
# ------------------------------------------------------------------------------
|
59
59
|
# PRODUCTION: Gem needed for the Jekyll and J1 prod environment
|
data/lib/starter_web/_config.yml
CHANGED
@@ -53,13 +53,13 @@ environment: production
|
|
53
53
|
# ------------------------------------------------------------------------------
|
54
54
|
# Sets the build version of J1 Template Gem
|
55
55
|
#
|
56
|
-
version: 2021.1.
|
56
|
+
version: 2021.1.25
|
57
57
|
|
58
58
|
# version
|
59
59
|
# ------------------------------------------------------------------------------
|
60
60
|
# Sets the build version of J1 Template
|
61
61
|
#
|
62
|
-
copyright: J1 ·
|
62
|
+
copyright: © 2021 J1 · All rights reserved
|
63
63
|
|
64
64
|
# ==============================================================================
|
65
65
|
# 2. THEME configuration
|
@@ -134,12 +134,12 @@ settings:
|
|
134
134
|
enabled: true
|
135
135
|
width: 12
|
136
136
|
type: text
|
137
|
-
animate:
|
137
|
+
animate: false
|
138
138
|
title: Jekyll One Template
|
139
139
|
tagline: <b>powerful modern static websites</b>
|
140
|
-
description_properties: mr-3 mb-3
|
140
|
+
description_properties: mt-3 mr-3 mb-3
|
141
141
|
description: >
|
142
|
-
<p>
|
142
|
+
<p class="dropcap">
|
143
143
|
Jekyll One Template is the first toolbox to create modern webs and a
|
144
144
|
learning platform to experience what is behind current Internet
|
145
145
|
Technologies for the World Wide Web. J1 provides creative people
|
@@ -298,7 +298,7 @@ settings:
|
|
298
298
|
id: home_parallax_banner
|
299
299
|
enabled: true
|
300
300
|
type: parallax
|
301
|
-
properties: mt-
|
301
|
+
properties: mt-6 mb-6
|
302
302
|
comment: Main parallax banner shown on home page
|
303
303
|
|
304
304
|
style: dark
|
@@ -313,9 +313,9 @@ settings:
|
|
313
313
|
cite_text_size: 300%
|
314
314
|
cite_text_quotes: false
|
315
315
|
cite_text: >
|
316
|
-
<span style="color: #2196f3">Making is</span>
|
316
|
+
<strong><span style="color: #2196f3">Making is</span>
|
317
317
|
like Wanting, <br> but even
|
318
|
-
<span style="color: #2196f3">Better</span>
|
318
|
+
<span style="color: #2196f3">Better</span></strong>
|
319
319
|
cite_size: 200%
|
320
320
|
# cite: J1 Team
|
321
321
|
text_color: rgba_lighten_900
|
@@ -0,0 +1,256 @@
|
|
1
|
+
# ------------------------------------------------------------------------------
|
2
|
+
# ~/_data/components/j1_panel.yml
|
3
|
+
# Template specific configuration data to configure panel lanes
|
4
|
+
#
|
5
|
+
# Product/Info:
|
6
|
+
# https://jekyll.one
|
7
|
+
#
|
8
|
+
# Copyright (C) 2021 Juergen Adams
|
9
|
+
#
|
10
|
+
# J1 Template is licensed under the MIT License.
|
11
|
+
# See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
|
12
|
+
#
|
13
|
+
# ------------------------------------------------------------------------------
|
14
|
+
|
15
|
+
# ------------------------------------------------------------------------------
|
16
|
+
# DEFAULT settings
|
17
|
+
#
|
18
|
+
defaults:
|
19
|
+
# ----------------------------------------------------------------------------
|
20
|
+
# Global settings
|
21
|
+
#
|
22
|
+
data_path: /assets/data/panel/index.html
|
23
|
+
|
24
|
+
# ----------------------------------------------------------------------------
|
25
|
+
# INTRO panel
|
26
|
+
#
|
27
|
+
intro:
|
28
|
+
# --------------------------------------------------------------------------
|
29
|
+
# INTRO panel properties
|
30
|
+
#
|
31
|
+
enabled: false
|
32
|
+
id: intro_panel_id
|
33
|
+
type: intro
|
34
|
+
icon_family: MDI
|
35
|
+
|
36
|
+
style: flat
|
37
|
+
raised:
|
38
|
+
lane_span: fixed
|
39
|
+
|
40
|
+
cards:
|
41
|
+
|
42
|
+
- card:
|
43
|
+
enabled: false
|
44
|
+
type: text
|
45
|
+
title: J1 Template
|
46
|
+
tagline: tagline-text-1
|
47
|
+
icon: responsive
|
48
|
+
icon_size: 8x
|
49
|
+
icon_color: md-grey-800
|
50
|
+
text: card-text-1
|
51
|
+
|
52
|
+
buttons:
|
53
|
+
|
54
|
+
- button:
|
55
|
+
text: button-text-1
|
56
|
+
class: btn-primary btn-raised btn-flex
|
57
|
+
icon: image
|
58
|
+
icon_size: lg
|
59
|
+
icon_color: md-grey-50
|
60
|
+
href: javascript:void(0)
|
61
|
+
|
62
|
+
- card:
|
63
|
+
enabled: false
|
64
|
+
type: text
|
65
|
+
title: J1 Template
|
66
|
+
tagline: tagline-text-2
|
67
|
+
icon: responsive
|
68
|
+
icon_size: 8x
|
69
|
+
icon_color: md-grey-800
|
70
|
+
text: card-text-2
|
71
|
+
|
72
|
+
buttons:
|
73
|
+
|
74
|
+
- button:
|
75
|
+
text: button-text-2
|
76
|
+
class: btn-primary btn-raised btn-flex
|
77
|
+
icon: image
|
78
|
+
icon_size: lg
|
79
|
+
icon_color: md-grey-50
|
80
|
+
href: javascript:void(0)
|
81
|
+
|
82
|
+
- card:
|
83
|
+
enabled: false
|
84
|
+
type: text
|
85
|
+
title: J1 Template
|
86
|
+
tagline: tagline-text-3
|
87
|
+
icon: responsive
|
88
|
+
icon_size: 8x
|
89
|
+
icon_color: md-grey-800
|
90
|
+
text: card-text-3
|
91
|
+
|
92
|
+
buttons:
|
93
|
+
|
94
|
+
- button:
|
95
|
+
text: button-text-3
|
96
|
+
class: btn-primary btn-raised btn-flex
|
97
|
+
icon: image
|
98
|
+
icon_size: lg
|
99
|
+
icon_color: md-grey-50
|
100
|
+
href: javascript:void(0)
|
101
|
+
|
102
|
+
|
103
|
+
# ----------------------------------------------------------------------------
|
104
|
+
# SERVICE panel
|
105
|
+
#
|
106
|
+
service:
|
107
|
+
# --------------------------------------------------------------------------
|
108
|
+
# SERVICE panel properties
|
109
|
+
#
|
110
|
+
enabled: false
|
111
|
+
id: service_panel_id
|
112
|
+
type: service_panel
|
113
|
+
icon_family: MDI
|
114
|
+
|
115
|
+
style: flat
|
116
|
+
lane_span: fixed
|
117
|
+
|
118
|
+
cards:
|
119
|
+
|
120
|
+
- card:
|
121
|
+
enabled: false
|
122
|
+
type: header
|
123
|
+
title: title
|
124
|
+
tagline: service-panel header text
|
125
|
+
|
126
|
+
- card:
|
127
|
+
enabled: false
|
128
|
+
type: service
|
129
|
+
icon: image
|
130
|
+
icon_size: 8x
|
131
|
+
icon_color: md-grey-800
|
132
|
+
href: javascript:void(0)
|
133
|
+
title: service-panel title-1
|
134
|
+
tagline: service-panel tagline-1
|
135
|
+
text: card text 1
|
136
|
+
|
137
|
+
services:
|
138
|
+
- service:
|
139
|
+
title: service 1-1
|
140
|
+
href: javascript:void(0)
|
141
|
+
- service:
|
142
|
+
title: service 1-2
|
143
|
+
href: javascript:void(0)
|
144
|
+
- service:
|
145
|
+
title: service 1-3
|
146
|
+
href: javascript:void(0)
|
147
|
+
|
148
|
+
- card:
|
149
|
+
enabled: false
|
150
|
+
type: service
|
151
|
+
icon: image
|
152
|
+
icon_size: 8x
|
153
|
+
icon_color: md-grey-800
|
154
|
+
href: javascript:void(0)
|
155
|
+
title: service-panel title-2
|
156
|
+
tagline: service-panel tagline-2
|
157
|
+
text: service-panel card text 2
|
158
|
+
|
159
|
+
services:
|
160
|
+
- service:
|
161
|
+
title: service 2-1
|
162
|
+
href: javascript:void(0)
|
163
|
+
- service:
|
164
|
+
title: service 2-2
|
165
|
+
href: javascript:void(0)
|
166
|
+
- service:
|
167
|
+
title: service 2-3
|
168
|
+
href: javascript:void(0)
|
169
|
+
|
170
|
+
- card:
|
171
|
+
enabled: false
|
172
|
+
type: service
|
173
|
+
icon: image
|
174
|
+
icon_size: 8x
|
175
|
+
icon_color: md-grey-800
|
176
|
+
href: javascript:void(0)
|
177
|
+
title: service-panel title-3
|
178
|
+
tagline: service-panel tagline-3
|
179
|
+
text: service-panel card text 3
|
180
|
+
|
181
|
+
services:
|
182
|
+
- service:
|
183
|
+
title: service 3-1
|
184
|
+
href: javascript:void(0)
|
185
|
+
- service:
|
186
|
+
title: service 3-2
|
187
|
+
href: javascript:void(0)
|
188
|
+
- service:
|
189
|
+
title: service 3-3
|
190
|
+
href: javascript:void(0)
|
191
|
+
|
192
|
+
# ----------------------------------------------------------------------------
|
193
|
+
# NEWS panel
|
194
|
+
#
|
195
|
+
news:
|
196
|
+
# --------------------------------------------------------------------------
|
197
|
+
# NEWS panel properties
|
198
|
+
#
|
199
|
+
enabled: false
|
200
|
+
id: news_panel_id
|
201
|
+
type: news_panel
|
202
|
+
style: flat
|
203
|
+
title: news-panel-title
|
204
|
+
tagline: news-panel-tagline
|
205
|
+
|
206
|
+
lane_span: fixed
|
207
|
+
|
208
|
+
boxes:
|
209
|
+
- box:
|
210
|
+
enabled: false
|
211
|
+
type: last_current
|
212
|
+
category: featured
|
213
|
+
- box:
|
214
|
+
enabled: false
|
215
|
+
type: recent
|
216
|
+
category: featured
|
217
|
+
max_posts: 3
|
218
|
+
|
219
|
+
# # ----------------------------------------------------------------------------
|
220
|
+
# # STEP panel
|
221
|
+
# #
|
222
|
+
# step:
|
223
|
+
# # --------------------------------------------------------------------------
|
224
|
+
# # STEP panel properties
|
225
|
+
# #
|
226
|
+
# enabled: false
|
227
|
+
# id: step_panel_id
|
228
|
+
# type: step_panel
|
229
|
+
# style: dark
|
230
|
+
# lane_span: fixed
|
231
|
+
#
|
232
|
+
# cards:
|
233
|
+
# - card:
|
234
|
+
# title: step-panel-title
|
235
|
+
# tagline: step-panel-tagline
|
236
|
+
|
237
|
+
# ----------------------------------------------------------------------------
|
238
|
+
# EXCEPTION panel
|
239
|
+
#
|
240
|
+
# NOTE:
|
241
|
+
# The EXCEPTION panel is used to place additional information to the
|
242
|
+
# (default) exception CONTAINER if processing of a panel has failed
|
243
|
+
#
|
244
|
+
exception:
|
245
|
+
# --------------------------------------------------------------------------
|
246
|
+
# EXCEPTION panel properties
|
247
|
+
#
|
248
|
+
id: exception_container
|
249
|
+
enabled: true
|
250
|
+
type: exception
|
251
|
+
comment: Default Exception Panel
|
252
|
+
|
253
|
+
lane_span: fixed
|
254
|
+
|
255
|
+
# ------------------------------------------------------------------------------
|
256
|
+
# END config
|
@@ -0,0 +1,250 @@
|
|
1
|
+
# ------------------------------------------------------------------------------
|
2
|
+
# ~/_data/components/j1_panel.yml
|
3
|
+
# Template specific configuration data to configure panel lanes
|
4
|
+
#
|
5
|
+
# Product/Info:
|
6
|
+
# https://jekyll.one
|
7
|
+
#
|
8
|
+
# Copyright (C) 2021 Juergen Adams
|
9
|
+
#
|
10
|
+
# J1 Template is licensed under the MIT License.
|
11
|
+
# See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
|
12
|
+
#
|
13
|
+
# ------------------------------------------------------------------------------
|
14
|
+
|
15
|
+
# ------------------------------------------------------------------------------
|
16
|
+
# DEFAULT settings
|
17
|
+
#
|
18
|
+
defaults:
|
19
|
+
# ----------------------------------------------------------------------------
|
20
|
+
# Global settings
|
21
|
+
#
|
22
|
+
data_path: /assets/data/panel/index.html
|
23
|
+
|
24
|
+
# ----------------------------------------------------------------------------
|
25
|
+
# INTRO panel
|
26
|
+
#
|
27
|
+
intro:
|
28
|
+
# --------------------------------------------------------------------------
|
29
|
+
# INTRO panel properties
|
30
|
+
#
|
31
|
+
enabled: false
|
32
|
+
id: intro_panel_id
|
33
|
+
type: intro
|
34
|
+
icon_family: MDI
|
35
|
+
|
36
|
+
style: flat
|
37
|
+
raised:
|
38
|
+
lane_span: fixed
|
39
|
+
|
40
|
+
cards:
|
41
|
+
|
42
|
+
- card:
|
43
|
+
enabled: false
|
44
|
+
type: text
|
45
|
+
title: J1 Template
|
46
|
+
tagline: tagline-text-1
|
47
|
+
icon: responsive
|
48
|
+
icon_size: 8x
|
49
|
+
icon_color: md-grey-800
|
50
|
+
text: card-text-1
|
51
|
+
|
52
|
+
buttons:
|
53
|
+
|
54
|
+
- button:
|
55
|
+
text: button-text-1
|
56
|
+
class: btn-primary btn-raised btn-flex
|
57
|
+
icon: image
|
58
|
+
icon_size: lg
|
59
|
+
icon_color: md-grey-50
|
60
|
+
href: javascript:void(0)
|
61
|
+
|
62
|
+
- card:
|
63
|
+
enabled: false
|
64
|
+
type: text
|
65
|
+
title: J1 Template
|
66
|
+
tagline: tagline-text-2
|
67
|
+
icon: responsive
|
68
|
+
icon_size: 8x
|
69
|
+
icon_color: md-grey-800
|
70
|
+
text: card-text-2
|
71
|
+
|
72
|
+
buttons:
|
73
|
+
|
74
|
+
- button:
|
75
|
+
text: button-text-2
|
76
|
+
class: btn-primary btn-raised btn-flex
|
77
|
+
icon: image
|
78
|
+
icon_size: lg
|
79
|
+
icon_color: md-grey-50
|
80
|
+
href: javascript:void(0)
|
81
|
+
|
82
|
+
- card:
|
83
|
+
enabled: false
|
84
|
+
type: text
|
85
|
+
title: J1 Template
|
86
|
+
tagline: tagline-text-3
|
87
|
+
icon: responsive
|
88
|
+
icon_size: 8x
|
89
|
+
icon_color: md-grey-800
|
90
|
+
text: card-text-3
|
91
|
+
|
92
|
+
buttons:
|
93
|
+
|
94
|
+
- button:
|
95
|
+
text: button-text-3
|
96
|
+
class: btn-primary btn-raised btn-flex
|
97
|
+
icon: image
|
98
|
+
icon_size: lg
|
99
|
+
icon_color: md-grey-50
|
100
|
+
href: javascript:void(0)
|
101
|
+
|
102
|
+
|
103
|
+
# ----------------------------------------------------------------------------
|
104
|
+
# SERVICE panel
|
105
|
+
#
|
106
|
+
service:
|
107
|
+
# --------------------------------------------------------------------------
|
108
|
+
# SERVICE panel properties
|
109
|
+
#
|
110
|
+
enabled: false
|
111
|
+
id: service_panel_id
|
112
|
+
type: service_panel
|
113
|
+
icon_family: MDI
|
114
|
+
|
115
|
+
style: flat
|
116
|
+
lane_span: fixed
|
117
|
+
|
118
|
+
cards:
|
119
|
+
|
120
|
+
- card:
|
121
|
+
enabled: false
|
122
|
+
type: header
|
123
|
+
title: title
|
124
|
+
tagline: service-panel header text
|
125
|
+
|
126
|
+
- card:
|
127
|
+
enabled: false
|
128
|
+
type: service
|
129
|
+
icon: image
|
130
|
+
icon_size: 8x
|
131
|
+
icon_color: md-grey-800
|
132
|
+
href: javascript:void(0)
|
133
|
+
title: service-panel title-1
|
134
|
+
tagline: service-panel tagline-1
|
135
|
+
text: card text 1
|
136
|
+
|
137
|
+
services:
|
138
|
+
- service:
|
139
|
+
title: service 1-1
|
140
|
+
href: javascript:void(0)
|
141
|
+
- service:
|
142
|
+
title: service 1-2
|
143
|
+
href: javascript:void(0)
|
144
|
+
- service:
|
145
|
+
title: service 1-3
|
146
|
+
href: javascript:void(0)
|
147
|
+
|
148
|
+
- card:
|
149
|
+
enabled: false
|
150
|
+
type: service
|
151
|
+
icon: image
|
152
|
+
icon_size: 8x
|
153
|
+
icon_color: md-grey-800
|
154
|
+
href: javascript:void(0)
|
155
|
+
title: service-panel title-2
|
156
|
+
tagline: service-panel tagline-2
|
157
|
+
text: service-panel card text 2
|
158
|
+
|
159
|
+
services:
|
160
|
+
- service:
|
161
|
+
title: service 2-1
|
162
|
+
href: javascript:void(0)
|
163
|
+
- service:
|
164
|
+
title: service 2-2
|
165
|
+
href: javascript:void(0)
|
166
|
+
- service:
|
167
|
+
title: service 2-3
|
168
|
+
href: javascript:void(0)
|
169
|
+
|
170
|
+
- card:
|
171
|
+
enabled: false
|
172
|
+
type: service
|
173
|
+
icon: image
|
174
|
+
icon_size: 8x
|
175
|
+
icon_color: md-grey-800
|
176
|
+
href: javascript:void(0)
|
177
|
+
title: service-panel title-3
|
178
|
+
tagline: service-panel tagline-3
|
179
|
+
text: service-panel card text 3
|
180
|
+
|
181
|
+
services:
|
182
|
+
- service:
|
183
|
+
title: service 3-1
|
184
|
+
href: javascript:void(0)
|
185
|
+
- service:
|
186
|
+
title: service 3-2
|
187
|
+
href: javascript:void(0)
|
188
|
+
- service:
|
189
|
+
title: service 3-3
|
190
|
+
href: javascript:void(0)
|
191
|
+
|
192
|
+
news:
|
193
|
+
# --------------------------------------------------------------------------
|
194
|
+
# NEWS panel properties
|
195
|
+
#
|
196
|
+
- name: News Panel
|
197
|
+
panel:
|
198
|
+
enabled: false
|
199
|
+
type: news
|
200
|
+
animate: fadeInUp
|
201
|
+
properties: mt-5 mr-3 mb-5 ml-3
|
202
|
+
|
203
|
+
cards:
|
204
|
+
- name: Recent Posts
|
205
|
+
card:
|
206
|
+
enabled: false
|
207
|
+
block: card-deck # card-deck | card-list
|
208
|
+
num_per_row: 2 # card-list only: [1 .. 4]
|
209
|
+
category: featured
|
210
|
+
truncatewords: 30 # currently NOT used
|
211
|
+
max_posts: 4
|
212
|
+
|
213
|
+
# # ----------------------------------------------------------------------------
|
214
|
+
# # STEP panel
|
215
|
+
# #
|
216
|
+
# step:
|
217
|
+
# # --------------------------------------------------------------------------
|
218
|
+
# # STEP panel properties
|
219
|
+
# #
|
220
|
+
# enabled: false
|
221
|
+
# id: step_panel_id
|
222
|
+
# type: step_panel
|
223
|
+
# style: dark
|
224
|
+
# lane_span: fixed
|
225
|
+
#
|
226
|
+
# cards:
|
227
|
+
# - card:
|
228
|
+
# title: step-panel-title
|
229
|
+
# tagline: step-panel-tagline
|
230
|
+
|
231
|
+
# ----------------------------------------------------------------------------
|
232
|
+
# EXCEPTION panel
|
233
|
+
#
|
234
|
+
# NOTE:
|
235
|
+
# The EXCEPTION panel is used to place additional information to the
|
236
|
+
# (default) exception CONTAINER if processing of a panel has failed
|
237
|
+
#
|
238
|
+
exception:
|
239
|
+
# --------------------------------------------------------------------------
|
240
|
+
# EXCEPTION panel properties
|
241
|
+
#
|
242
|
+
id: exception_container
|
243
|
+
enabled: true
|
244
|
+
type: exception
|
245
|
+
comment: Default Exception Panel
|
246
|
+
|
247
|
+
lane_span: fixed
|
248
|
+
|
249
|
+
# ------------------------------------------------------------------------------
|
250
|
+
# END config
|