{"mappings":"C,A,WCAA,qBAAqB;AACrB,IAAM,EAAmB,SAAS,aAAA,CAAc,eAC1C,EAAU,SAAS,aAAA,CAAc,YACjC,EAAY,SAAS,aAAA,CAAc,eACnC,EAAW,SAAS,aAAA,CAAc,cAGpC,kBACH,EAAiB,KAAA,CAAM,OAAA,CAAU,eACjC,EAAiB,gBAAA,CAAiB,QAAS,UAC1C,iBAAiB,EAClB,IAGD,0DAA0D;AAC1D,SAAS,gBAAA,CAAiB,mBAAoB,KACzC,gBACH,EAAU,SAAA,CAAU,GAAA,CAAI,QACxB,EAAS,SAAA,CAAU,MAAA,CAAO,UAE1B,EAAU,SAAA,CAAU,MAAA,CAAO,QAC3B,EAAS,SAAA,CAAU,GAAA,CAAI,SAGxB,0BAA0B;AAC1B,IACA,GACD,EAEA,+DAA8D;AAC9D,IAAI,EAAoB,WAAW,EAAS,KACxC,EAAkB,CAAA,EAClB,EAAiB,CAAA,CAErB,yBAAwB;AACxB,SAAS,IACJ,EAAiB,SAAA,CAAU,QAAA,CAAS,aACvC,EAAiB,SAAA,CAAU,GAAA,CAAI,UAC/B,EAAiB,SAAA,CAAU,MAAA,CAAO,YAGnC,SAAS,IAAA,CAAK,SAAA,CAAU,MAAA,CAAO,aAChC,CAEA,yBAAyB;AACzB,SAAS,KACJ,GAIC,iBAIL,EAAiB,CAAA,EAEjB,SAAS,IAAA,CAAK,SAAA,CAAU,GAAA,CAAI,cAC5B,EAAiB,SAAA,CAAU,MAAA,CAAO,UAClC,EAAiB,SAAA,CAAU,GAAA,CAAI,WAE/B,WAAW,KACV,EAAiB,CAAA,CAClB,EAAG,IACJ,CAEA,mBAAmB;AACnB,SAAS,IACR,aAAa,GACb,EAAoB,WAAW,EAAS,IACzC,CAEA,oCAAoC;AACpC,SAAS,gBAAA,CAAiB,YAAa,KACjC,IACJ,IACA,IAEF,GAEA,kDAAkD;AAClD,EAAiB,gBAAA,CAAiB,aAAc,KAC/C,EAAkB,CAAA,CACnB,GAEA,yDAAyD;AACzD,EAAiB,gBAAA,CAAiB,aAAc,KAC/C,EAAkB,CAAA,CACnB,E,G,4D","sources":["","frontend/global/fullscreen.js"],"sourcesContent":["(function () {\nvar $93489d848298d263$exports = {};\n// Full screen button\nconst $93489d848298d263$var$fullScreenButton = document.querySelector(\"#fullscreen\");\nconst $93489d848298d263$var$wrapper = document.querySelector(\"#wrapper\");\nconst $93489d848298d263$var$enterFull = document.querySelector(\"#enter_full\");\nconst $93489d848298d263$var$exitFull = document.querySelector(\"#exit_full\");\n// Show button if browser supports full screen\nif (canFullScreen()) {\n $93489d848298d263$var$fullScreenButton.style.display = \"inline-block\";\n $93489d848298d263$var$fullScreenButton.addEventListener(\"click\", async ()=>{\n toggleFullScreen($93489d848298d263$var$wrapper);\n });\n}\n// Show appropriate icon when entering/exiting full screen\ndocument.addEventListener(\"fullscreenchange\", ()=>{\n if (isFullScreen()) {\n $93489d848298d263$var$enterFull.classList.add(\"none\");\n $93489d848298d263$var$exitFull.classList.remove(\"none\");\n } else {\n $93489d848298d263$var$enterFull.classList.remove(\"none\");\n $93489d848298d263$var$exitFull.classList.add(\"none\");\n }\n // Show full screen button\n $93489d848298d263$var$fadeIn();\n $93489d848298d263$var$idleTimer();\n});\n// Hide full screen button and cursor if full screen when idle\nlet $93489d848298d263$var$idleCursorTimeout = setTimeout($93489d848298d263$var$fadeOut, 5000);\nlet $93489d848298d263$var$doNotHideButton = false;\nlet $93489d848298d263$var$doNotIdleTimer = false;\n// Run fade in animation\nfunction $93489d848298d263$var$fadeIn() {\n if ($93489d848298d263$var$fullScreenButton.classList.contains(\"fadeout\")) {\n $93489d848298d263$var$fullScreenButton.classList.add(\"fadein\");\n $93489d848298d263$var$fullScreenButton.classList.remove(\"fadeout\");\n }\n document.body.classList.remove(\"hidecursor\");\n}\n// Run fade out animation\nfunction $93489d848298d263$var$fadeOut() {\n if ($93489d848298d263$var$doNotHideButton) return;\n if (!isFullScreen()) return;\n $93489d848298d263$var$doNotIdleTimer = true;\n document.body.classList.add(\"hidecursor\");\n $93489d848298d263$var$fullScreenButton.classList.remove(\"fadein\");\n $93489d848298d263$var$fullScreenButton.classList.add(\"fadeout\");\n setTimeout(()=>{\n $93489d848298d263$var$doNotIdleTimer = false;\n }, 50);\n}\n// Reset idle timer\nfunction $93489d848298d263$var$idleTimer() {\n clearTimeout($93489d848298d263$var$idleCursorTimeout);\n $93489d848298d263$var$idleCursorTimeout = setTimeout($93489d848298d263$var$fadeOut, 5000);\n}\n// Reset idle timer when mouse moved\ndocument.addEventListener(\"mousemove\", ()=>{\n if (!$93489d848298d263$var$doNotIdleTimer) {\n $93489d848298d263$var$fadeIn();\n $93489d848298d263$var$idleTimer();\n }\n});\n// Block fade out when hovering full screen button\n$93489d848298d263$var$fullScreenButton.addEventListener(\"mouseenter\", ()=>{\n $93489d848298d263$var$doNotHideButton = true;\n});\n// Unblock fade out when stop hovering full screen button\n$93489d848298d263$var$fullScreenButton.addEventListener(\"mouseleave\", ()=>{\n $93489d848298d263$var$doNotHideButton = false;\n});\n\n})();\n//# sourceMappingURL=index.c213ef43.js.map\n","// Full screen button\nconst fullScreenButton = document.querySelector('#fullscreen');\nconst wrapper = document.querySelector('#wrapper');\nconst enterFull = document.querySelector('#enter_full');\nconst exitFull = document.querySelector('#exit_full');\n\n// Show button if browser supports full screen\nif (canFullScreen()) {\n\tfullScreenButton.style.display = 'inline-block';\n\tfullScreenButton.addEventListener('click', async () => {\n\t\ttoggleFullScreen(wrapper);\n\t});\n}\n\n// Show appropriate icon when entering/exiting full screen\ndocument.addEventListener('fullscreenchange', () => {\n\tif (isFullScreen()) {\n\t\tenterFull.classList.add('none');\n\t\texitFull.classList.remove('none');\n\t} else {\n\t\tenterFull.classList.remove('none');\n\t\texitFull.classList.add('none');\n\t}\n\n\t// Show full screen button\n\tfadeIn();\n\tidleTimer();\n});\n\n// Hide full screen button and cursor if full screen when idle\nlet idleCursorTimeout = setTimeout(fadeOut, 5000);\nlet doNotHideButton = false;\nlet doNotIdleTimer = false;\n\n// Run fade in animation\nfunction fadeIn() {\n\tif (fullScreenButton.classList.contains('fadeout')) {\n\t\tfullScreenButton.classList.add('fadein');\n\t\tfullScreenButton.classList.remove('fadeout');\n\t}\n\n\tdocument.body.classList.remove('hidecursor');\n}\n\n// Run fade out animation\nfunction fadeOut() {\n\tif (doNotHideButton) {\n\t\treturn;\n\t}\n\n\tif (!isFullScreen()) {\n\t\treturn;\n\t}\n\n\tdoNotIdleTimer = true;\n\n\tdocument.body.classList.add('hidecursor');\n\tfullScreenButton.classList.remove('fadein');\n\tfullScreenButton.classList.add('fadeout');\n\n\tsetTimeout(() => {\n\t\tdoNotIdleTimer = false;\n\t}, 50);\n}\n\n// Reset idle timer\nfunction idleTimer() {\n\tclearTimeout(idleCursorTimeout);\n\tidleCursorTimeout = setTimeout(fadeOut, 5000);\n}\n\n// Reset idle timer when mouse moved\ndocument.addEventListener('mousemove', () => {\n\tif (!doNotIdleTimer) {\n\t\tfadeIn();\n\t\tidleTimer();\n\t}\n});\n\n// Block fade out when hovering full screen button\nfullScreenButton.addEventListener('mouseenter', () => {\n\tdoNotHideButton = true;\n});\n\n// Unblock fade out when stop hovering full screen button\nfullScreenButton.addEventListener('mouseleave', () => {\n\tdoNotHideButton = false;\n});\n"],"names":["$93489d848298d263$var$fullScreenButton","document","querySelector","$93489d848298d263$var$wrapper","$93489d848298d263$var$enterFull","$93489d848298d263$var$exitFull","canFullScreen","style","display","addEventListener","toggleFullScreen","isFullScreen","classList","add","remove","$93489d848298d263$var$fadeIn","$93489d848298d263$var$idleTimer","$93489d848298d263$var$idleCursorTimeout","setTimeout","$93489d848298d263$var$fadeOut","$93489d848298d263$var$doNotHideButton","$93489d848298d263$var$doNotIdleTimer","contains","body","clearTimeout"],"version":3,"file":"index.c213ef43.js.map"}