diff --git a/docs/.ruby-version b/docs/.ruby-version index b0b3ae5c..be94e6f5 100644 --- a/docs/.ruby-version +++ b/docs/.ruby-version @@ -1 +1 @@ -ruby-3.2.1 \ No newline at end of file +3.2.2 diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock index d7ffd2c0..6e27d878 100644 --- a/docs/Gemfile.lock +++ b/docs/Gemfile.lock @@ -71,6 +71,7 @@ GEM PLATFORMS arm64-darwin-21 arm64-darwin-22 + arm64-darwin-23 x86_64-darwin-17 x86_64-linux diff --git a/docs/_includes/head_custom.html b/docs/_includes/head_custom.html index ba965cb8..2b0a744e 100644 --- a/docs/_includes/head_custom.html +++ b/docs/_includes/head_custom.html @@ -1,4 +1,4 @@ - - + + diff --git a/docs/assets/js/tabs.js b/docs/assets/js/tabs.js index 0148f325..4599bf7b 100644 --- a/docs/assets/js/tabs.js +++ b/docs/assets/js/tabs.js @@ -1,43 +1,6 @@ -const removeActiveClasses = function (ulElement) { - const lis = ulElement.querySelectorAll('li'); - Array.prototype.forEach.call(lis, function(li) { - li.classList.remove('active'); - }); - } - - const getChildPosition = function (element) { - var parent = element.parentNode; - var i = 0; - for (var i = 0; i < parent.children.length; i++) { - if (parent.children[i] === element) { - return i; - } - } - - throw new Error('No parent found'); - } +// This is a jekyll-tabs requirement: https://github.com/Ovski4/jekyll-tabs?tab=readme-ov-file#installation +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.jekyllTabs=e():t.jekyllTabs=e()}(self,(()=>{return t={918:t=>{t.exports={getChildPosition:t=>{const e=t.parentNode;for(let o=0;o{const o=document.querySelectorAll(t),a=[];for(let t=0;t{const e=document.createElement("template");return e.innerHTML=t.trim(),e.content.firstChild},addClass:(t,e,o)=>{t.className=t.className?`${t.className} ${e}`:e,setTimeout((()=>{t.className=t.className.replace(e,"").trim()}),o)}}},613:(t,e,o)=>{const{activateTabFromUrl:a,updateUrlWithActiveTab:n,handleTabClicked:s,addCopyToClipboardButtons:r,syncTabsWithSameLabels:l,appendToastMessageHTML:i}=o(925);t.exports={init:(t={})=>{const e={syncTabsWithSameLabels:!1,activateTabFromUrl:!1,addCopyToClipboardButtons:!1,copyToClipboardSettings:{buttonHTML:"",showToastMessageOnCopy:!1,toastMessage:"Code copied to clipboard",toastDuration:3e3}},o={...e,...t,copyToClipboardSettings:{...e.copyToClipboardSettings,...t.copyToClipboardSettings}},c=document.querySelectorAll("ul.tab > li > a");if(Array.prototype.forEach.call(c,(t=>{t.addEventListener("click",(e=>{e.preventDefault(),s(t),o.activateTabFromUrl&&n(t),o.syncTabsWithSameLabels&&l(t)}),!1)})),o.addCopyToClipboardButtons){const t=o.copyToClipboardSettings;r(t),t.showToastMessageOnCopy&&i(t.toastMessage)}o.activateTabFromUrl&&a()}}},925:(t,e,o)=>{const{getChildPosition:a,createElementFromHTML:n,findElementsWithTextContent:s,addClass:r}=o(918),l=t=>{const e=t.querySelectorAll("ul > li");Array.prototype.forEach.call(e,(t=>{t.classList.remove("active")}))},i=t=>{const e=t.parentNode,o=e.parentNode,n=a(e);if(e.className.includes("active"))return;const s=o.getAttribute("data-tab");if(!s)return;const r=document.getElementById(s);l(o),l(r),r.querySelectorAll("ul.tab-content > li")[n].classList.add("active"),e.classList.add("active")},c=(t,e)=>{if(navigator.clipboard&&window.isSecureContext)navigator.clipboard.writeText(t);else{const e=document.createElement("textarea");e.value=t,e.style.position="absolute",e.style.left="-999999px",document.body.prepend(e),e.select();try{document.execCommand("copy")}catch(t){console.error(t)}finally{e.remove()}}"function"==typeof e&&e()},d=t=>{r(document.getElementById("jekyll-tabs-copy-to-clipboard-message"),"show",t)};t.exports={removeActiveClasses:l,handleTabClicked:i,copyToClipboard:c,addCopyToClipboardButtons:({buttonHTML:t,showToastMessageOnCopy:e,toastDuration:o})=>{const a=document.querySelectorAll("ul.tab-content > li pre");for(let s=0;s{d(o)}),i.addEventListener("click",(()=>{c(r.innerText,p)}))}},activateTabFromUrl:()=>{const t=window.location.hash?.substring(1);if(!t)return;const e=document.getElementById(t);if(!e)return;const o=new URLSearchParams(window.location.search).get("active_tab");if(!o)return;const a=e.querySelector("li#"+o+" > a");a&&i(a)},updateUrlWithActiveTab:t=>{const e=t.parentNode,o=e.parentNode,a=new URLSearchParams(window.location.search);a.set("active_tab",e.id);const n=window.location.pathname+"?"+a.toString()+"#"+o.id;history.replaceState(null,"",n)},syncTabsWithSameLabels:t=>{const e=s("a",t.textContent);for(let o=0;o{const e=document.createElement("div");e.id="jekyll-tabs-copy-to-clipboard-message",e.textContent=t,document.getElementsByTagName("body")[0].appendChild(e)}}}},e={},function o(a){var n=e[a];if(void 0!==n)return n.exports;var s=e[a]={exports:{}};return t[a](s,s.exports,o),s.exports}(613);var t,e})); window.addEventListener('load', function () { - const tabLinks = document.querySelectorAll('ul.tab li a'); - - Array.prototype.forEach.call(tabLinks, function(link) { - link.addEventListener('click', function (event) { - event.preventDefault(); - - liTab = link.parentNode; - ulTab = liTab.parentNode; - position = getChildPosition(liTab); - if (liTab.className.includes('active')) { - return; - } - - removeActiveClasses(ulTab); - tabContentId = ulTab.getAttribute('data-tab'); - tabContentElement = document.getElementById(tabContentId); - removeActiveClasses(tabContentElement); - - tabContentElement.querySelectorAll('li')[position].classList.add('active'); - liTab.classList.add('active'); - }, false); - }); + jekyllTabs.init(); });