| 1 |
!function(){"use strict";window.BetterDocsCodeSnippetTab=window.BetterDocsCodeSnippetTab||{};const e=window.BetterDocsCodeSnippetTabConfig||window.BetterDocsCodeSnippetConfig||{},t={highlightJsUrl:e.hljsUrl||"",highlightJsCssLight:e.cssLight||"",highlightJsCssDark:e.cssDark||"",copySuccessTimeout:2e3};let o=!1,n=!1;function c(e){if(!e||document.querySelector(`link[href="${e}"]`))return;const t=document.createElement("link");t.rel="stylesheet",t.href=e,document.head.appendChild(t)}function i(e){if(o||window.hljs)return o=!0,void(e&&e(!0));if(n){const t=setInterval((function(){!o&&n||(clearInterval(t),e&&e(o))}),100);return}if(!t.highlightJsUrl)return void(e&&e(!1));n=!0;const i=document.querySelectorAll(".betterdocs-code-snippet-tab");let s=!1,r=!1;i.forEach((function(e){e.classList.contains("theme-dark")&&(s=!0),e.classList.contains("theme-light")&&(r=!0)})),s&&c(t.highlightJsCssDark),r&&c(t.highlightJsCssLight),function(e,t){const o=document.createElement("script");o.src=e,o.onload=t,o.onerror=function(){console.warn("BetterDocs Code Snippet Tab: Failed to load script:",e),t&&t(!1)},document.head.appendChild(o)}(t.highlightJsUrl,(function(t){n=!1,o=!(!t||!window.hljs),e&&e(o)}))}function s(){window.hljs&&document.querySelectorAll(".betterdocs-code-snippet-tab .betterdocs-code-snippet-code > code:not(.hljs)").forEach((function(e){try{window.hljs.highlightElement(e)}catch(e){console.warn("BetterDocs Code Snippet Tab: Error highlighting code block:",e)}}))}function r(e,t){const o=document.createElement("textarea");o.value=e,o.style.position="fixed",o.style.left="-999999px",o.style.top="-999999px",document.body.appendChild(o);try{o.focus(),o.select();const e=document.execCommand("copy");t&&t(e)}catch(e){t&&t(!1)}finally{document.body.removeChild(o)}}function d(e){const t=e.closest(".betterdocs-code-snippet-copy-container");return t?t.querySelector(".betterdocs-code-snippet-tooltip"):null}function a(e,o,n){const c=d(e);clearTimeout(e._betterDocsResetTimer),e.classList.remove("is-copied","is-error"),e.classList.add(o),c&&(c.textContent=n,c.classList.add("show",o)),e._betterDocsResetTimer=setTimeout((function(){e.classList.remove("is-copied","is-error"),c&&(c.textContent=c.dataset.copyLabel||"Copy",c.classList.remove("is-copied","is-error"),e.matches(":hover")||e.matches(":focus-visible")||c.classList.remove("show"))}),t.copySuccessTimeout)}function l(e){const t=d(e);a(e,"is-error",t?t.dataset.errorLabel||"Copy failed":"")}function u(e){const t=e.querySelector(".betterdocs-code-snippet-copy-button");t&&(t._betterDocsCopyInitialized||(t._betterDocsCopyInitialized=!0,function(e){const t=d(e);if(!t)return;const o=function(){t.classList.add("show")},n=function(){e.classList.contains("is-copied")||e.classList.contains("is-error")||t.classList.remove("show")};e.addEventListener("mouseenter",o),e.addEventListener("focus",o),e.addEventListener("mouseleave",n),e.addEventListener("blur",n)}(t),t._betterDocsClickHandler=function(o){o.preventDefault();const n=function(e){const t=e.querySelector(".betterdocs-code-snippet-panel.is-active")||e.querySelector(".betterdocs-code-snippet-panel")||e;return t.querySelector(".betterdocs-code-snippet-code code")||t.querySelector(".betterdocs-code-snippet-code")}(e),c=n&&(n.textContent||n.innerText)||"";var i,s;c.trim()?(i=c,s=function(e){e?function(e){const t=d(e);a(e,"is-copied",t?t.dataset.copiedLabel||"Copied!":"")}(t):l(t)},navigator.clipboard&&window.isSecureContext?navigator.clipboard.writeText(i).then((function(){s&&s(!0)})).catch((function(){r(i,s)})):r(i,s)):l(t)},t.addEventListener("click",t._betterDocsClickHandler)))}function p(){const e=document.querySelectorAll(".betterdocs-code-snippet-tab");0!==e.length&&(i((function(e){e&&s()})),e.forEach((function(e){"true"===e.dataset.copyButton&&u(e),function(e){const t=e.querySelectorAll(".betterdocs-code-snippet-tab-item");t.length&&!e._betterDocsTabsInitialized&&(e._betterDocsTabsInitialized=!0,t.forEach((function(t){t.addEventListener("click",(function(){!function(e,t){const o=e.querySelectorAll(".betterdocs-code-snippet-panel"),n=e.querySelectorAll(".betterdocs-code-snippet-tab-item");o.forEach((function(o){const n=String(o.dataset.tabIndex)===String(t);if(o.classList.toggle("is-active",n),n){o.removeAttribute("hidden");const t=o.querySelector(".betterdocs-code-snippet-code");t&&(e.dataset.language=(t.className.match(/language-([\w-]+)/)||[])[1]||e.dataset.language)}else o.setAttribute("hidden","")})),n.forEach((function(e){const o=String(e.dataset.tabIndex)===String(t);e.classList.toggle("is-active",o),e.setAttribute("aria-selected",o?"true":"false")}))}(e,t.dataset.tabIndex)}))})))}(e)})))}window.BetterDocsCodeSnippetTab={init:p,reinit:p,initCopyButton:u,applySyntaxHighlighting:s,loadHighlightJs:i},"loading"===document.readyState?document.addEventListener("DOMContentLoaded",p):p(),window.MutationObserver&&new MutationObserver((function(e){let t=!1;e.forEach((function(e){"childList"===e.type&&e.addedNodes.forEach((function(e){1===e.nodeType&&(e.classList&&e.classList.contains("betterdocs-code-snippet-tab")||e.querySelector&&e.querySelector(".betterdocs-code-snippet-tab"))&&(t=!0)}))})),t&&setTimeout(p,100)})).observe(document.body,{childList:!0,subtree:!0})}(); |