Some checks failed
CI / go (push) Waiting to run
CI / docker (push) Waiting to run
CI / lint-go (push) Waiting to run
CI / lint-docs (push) Waiting to run
CI / check-paperclip (push) Waiting to run
Deploy static site / Deploy to GitHub Pages (push) Has been cancelled
Deploy static site / Deploy via Docker to hatch.surf (push) Has been cancelled
Resolved conflicts by taking GitHub versions for: - .dockerignore, .gitignore, Dockerfile, README.md, docker-compose.yml Kept deploy.sh updated to: - Pull from GitHub (primary source) - Push to Gitea (push-mirror) - Build from site/ directory (GitHub structure) Co-Authored-By: Paperclip <noreply@paperclip.ing>
29 lines
1.2 KiB
JavaScript
29 lines
1.2 KiB
JavaScript
// This wrapper function is used to safely select the best available function
|
|
// to schedule removal of the no-FOUC styles workaround. requestAnimationFrame
|
|
// is the ideal choice, but when used in iframes, there are no guarantees that
|
|
// the callback will actually be called, which could stall the promise returned
|
|
// from displayContent.
|
|
//
|
|
// See: https://www.vector-logic.com/blog/posts/on-request-animation-frame-and-embedded-iframes
|
|
const safeCallbackQueue = (callback)=>{
|
|
if (window.requestAnimationFrame && window.self === window.top) {
|
|
window.requestAnimationFrame(callback);
|
|
} else {
|
|
window.setTimeout(callback);
|
|
}
|
|
};
|
|
// This function is used to remove Next.js' no-FOUC styles workaround for using
|
|
// `style-loader` in development. It must be called before hydration, or else
|
|
// rendering won't have the correct computed values in effects.
|
|
export function displayContent() {
|
|
return new Promise((resolve)=>{
|
|
safeCallbackQueue(function() {
|
|
for(var x = document.querySelectorAll('[data-next-hide-fouc]'), i = x.length; i--;){
|
|
x[i].parentNode.removeChild(x[i]);
|
|
}
|
|
resolve();
|
|
});
|
|
});
|
|
}
|
|
|
|
//# sourceMappingURL=fouc.js.map
|