PageSourceSearch

https://www.lwjgl.org/js/route-customize.17531ef0773728e1.js

js lwjgl.org collected 2026-10-02 04:32:30 UTC 91,976 bytes, 206 lines download raw bytes

1"use strict";(globalThis.webpackChunklwjgl_org=globalThis.webpackChunklwjgl_org||[]).push([["421"],{8938(e,t,i){i.d(t,{E:()=>s,s:()=>a});var n,a=((n={})[n.OK=200]="OK",n[n.CREATED=201]="CREATED",n[n.ACCEPTED=202]="ACCEPTED",n[n.NO_CONTENT=204]="NO_CONTENT",n[n.MOVED_PERMANENTLY=301]="MOVED_PERMANENTLY",n[n.BAD_REQUEST=400]="BAD_REQUEST",n[n.UNAUTHORIZED=401]="UNAUTHORIZED",n[n.FORBIDDEN=403]="FORBIDDEN",n[n.NOT_FOUND=404]="NOT_FOUND",n[n.METHOD_NOT_ALLOWED=405]="METHOD_NOT_ALLOWED",n[n.INTERNAL_SERVER_ERROR=500]="INTERNAL_SERVER_ERROR",n);async function s(e){let t=e.headers.get("content-type");if(null!==t){if(t.includes("application/json"))try{let t=await e.json();if(t.error&&t.error.message)return t.error.message}catch(e){console.error(e)}else if(t.includes("text/plain")){let t=await e.text();if(t.length)return t}}return e.statusText}},5818(e,t,i){i.d(t,{LA:()=>r,t0:()=>a,wS:()=>l});var n=i(9210);let a=(0,n.i7)({to:{transform:"rotate(360deg)"}}),s={transform:"scale(2)",opacity:"0"};(0,n.i7)({"75%":s,"100%":s}),(0,n.i7)({"50%":{opacity:".5"}});let r=(0,n.i7)({to:{opacity:1,transform:"translate3d(0, 0, 0)"}}),o={transform:"translateY(-25%)",animationTimingFunction:"cubic-bezier(0.8,0,1,1)"};(0,n.i7)({"0%":o,"50%":{transform:"none",animationTimingFunction:"cubic-bezier(0,0,0.2,1)"},"100%":o});let l=(0,n.i7)({"0%":{transform:"scale(0)"},"50%":{opacity:1,transform:"none"}})},8603(e,t,i){(0,i(7139).k)('<symbol id="fa/brands/apple" viewBox="0 0 384 512"><path d="M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z"/></symbol>')},925(e,t,i){(0,i(7139).k)('<symbol id="fa/brands/linux" viewBox="0 0 448 512"><path d="M220.8 123.3c1 .5 1.8 1.7 3 1.7 1.1 0 2.8-.4 2.9-1.5.2-1.4-1.9-2.3-3.2-2.9-1.7-.7-3.9-1-5.5-.1-.4.2-.8.7-.6 1.1.3 1.3 2.3 1.1 3.4 1.7zm-21.9 1.7c1.2 0 2-1.2 3-1.7 1.1-.6 3.1-.4 3.5-1.6.2-.4-.2-.9-.6-1.1-1.6-.9-3.8-.6-5.5.1-1.3.6-3.4 1.5-3.2 2.9.1 1 1.8 1.5 2.8 1.4zM420 403.8c-3.6-4-5.3-11.6-7.2-19.7-1.8-8.1-3.9-16.8-10.5-22.4-1.3-1.
11-2.6-2.1-4-2.9-1.3-.8-2.7-1.5-4.1-2 9.2-27.3 5.6-54.5-3.7-79.1-11.4-30.1-31.3-56.4-46.5-74.4-17.1-21.5-33.7-41.9-33.4-72C311.1 85.4 315.7.1 234.8 0 132.4-.2 158 103.4 156.9 135.2c-1.7 23.4-6.4 41.8-22.5 64.7-18.9 22.5-45.5 58.8-58.1 96.7-6 17.9-8.8 36.1-6.2 53.3-6.5 5.8-11.4 14.7-16.6 20.2-4.2 4.3-10.3 5.9-17 8.3s-14 6-18.5 14.5c-2.1 3.9-2.8 8.1-2.8 12.4 0 3.9.6 7.9 1.2 11.8 1.2 8.1 2.5 15.7.8 20.8-5.2 14.4-5.9 24.4-2.2 31.7 3.8 7.3 11.4 10.5 20.1 12.3 17.3 3.6 40.8 2.7 59.3 12.5 19.8 10.4 39.9 14.1 55.9 10.4 11.6-2.6 21.1-9.6 25.9-20.2 12.5-.1 26.3-5.4 48.3-6.6 14.9-1.2 33.6 5.3 55.1 4.1.6 2.3 1.4 4.6 2.5 6.7v.1c8.3 16.7 23.8 24.3 40.3 23 16.6-1.3 34.1-11 48.3-27.9 13.6-16.4 36-23.2 50.9-32.2 7.4-4.5 13.4-10.1 13.9-18.3.4-8.2-4.4-17.3-15.5-29.7zM223.7 87.3c9.8-22.2 34.2-21.8 44-.4 6.5 14.2 3.6 30.9-4.3 40.4-1.6-.8-5.9-2.6-12.6-4.9 1.1-1.2 3.1-2.7 3.9-4.6 4.8-11.8-.2-27-9.1-27.3-7.3-.5-13.9 10.8-11.8 23-4.1-2-9.4-3.5-13-4.4-1-6.9-.3-14.6 2.9-21.8zM183 75.8c10.1 0 20.8 14.2 19.1 33.5-3.5 1-7.1 2.5-10.2 4.6 1.2-8.9-3.3-20.1-9.6-19.6-8.4.7-9.8 21.2-1.8 28.1 1 .8 1.9-.2-5.9 5.5-15.6-14.6-10.5-52.1 8.4-52.1zm-13.6 60.7c6.2-4.6 13.6-10 14.1-10.5 4.7-4.4 13.5-14.2 27.9-14.2 7.1 0 15.6 2.3 25.9 8.9 6.3 4.1 11.3 4.4 22.6 9.3 8.4 3.5 13.7 9.7 10.5 18.2-2.6 7.1-11 14.4-22.7 18.1-11.1 3.6-19.8 16-38.2 14.9-3.9-.2-7-1-9.6-2.1-8-3.5-12.2-10.4-20-15-8.6-4.8-13.2-10.4-14.7-15.3-1.4-4.9 0-9 4.2-12.3zm3.3 334c-2.7 35.1-43.9 34.4-75.3 18-29.9-15.8-68.6-6.5-76.5-21.9-2.4-4.7-2.4-12.7 2.6-26.4v-.2c2.4-7.6.6-16-.6-23.9-1.2-7.8-1.8-15 .9-20 3.5-6.7 8.5-9.1 14.8-11.3 10.3-3.7 11.8-3.4 19.6-9.9 5.5-5.7 9.5-12.9 14.3-18 5.1-5.5 10-8.1 17.7-6.9 8.1 1.2 15.1 6.8 21.9 16l19.6 35.6c9.5 19.9 43.1 48.4 41 68.9zm-1.4-25.9c-4.1-6.6-9.6-13.6-14.4-19.6 7.1 0 14.2-2.2 16.7-8.9 2.3-6.2 0-14.9-7.4-24.9-13.5-18.2-38.3-32.5-38.3-32.5-13.5-8.4-21.1-18.7-24.6-29.9s-3-23.3-.3-35.2c5.2-22.9 18.6-45.2 27.2-59.2 2.3-1.7.8 3.2-8.7 20.8-8.5 16.1-24.4 53.3-2.6 82.4.6-20.7 5.5-41.8 13.8-61.5 12-27.4 37.3-74.9 39.3-112.7 1.1.8 4.6 3.2 6.2 4.1 4.6 2.7 8.1 6.7 12.6 10.3 12.4 10 28.5 9.2 42.4 1.2 6.2-3.5 11.2-7.5 15.9-9 9.9-3.1 17.8-8.6 22.3-15 7.7 30.4 25.7 74.3 37.2 95.7 6.1 11.4 18.3 35.5 23.6 64.6 3.3-.1 7 .4 10.9 1.4 13.8-35.7-11.7-74.2-23.3-84.9-4.7-4.6-4.9-6.6-2.6-6.5 12.6 11.2 29.2 33.7 35.2 59 2.8 11.6 3.3 23.7.4 35.7 16.4 6.8 35.9 17.9 30.7 34.8-2.2-.1-3.2 0-4.2 0 3.2-10.1-3.9-17.6-22.8-26.1-19.6-8.6-36-8.6-38.3 12.5-12.1 4.2-18.3 14.7-21.4 27.3-2.8 11.2-3.6 24.7-4.4 39.9-.5 7.7-3.6 18-6.8 29-32.1 22.9-76.7 32.9-114.3 7.2zm257.4-11.5c-.9 16.8-41.2 19.9-63.2 46.5-13.2 15.7-29.4 24.4-43.6 25.5s-26.5-4.8-33.7-19.3c-4.7-11.1-2.4-23.1 1.1-36.3 3.7-14.2 9.2-28.8 9.9-40.6.8-15.2 1.7-28.5 4.2-38.7 2.6-10.3 6.6-17.2 13.7-21.1.3-.2.7-.3 1-.5.8 13.2 7.3 26.6 18.8 29.5 12.6 3.3 30.7-7.5 38.4-16.3 9-.3 15.7-.9 22.6 5.1 9.9 8.5 7.1 30.3 17.1 41.6 10.6 11.6 14 19.5 13.7 24.6zM173.3 148.7c2 1.9 4.7 4.5 8 7.1 6.6 5.2 15.8 10.6 27.3 10.6 11.6 0 22.5-5.9 31.8-10.8 4.9-2.6 10.9-7 14.8-10.4s5.9-6.3 3.1-6.6-2.6 2.6-6 5.1c-4.4 3.2-9.7 7.4-13.9 9.8-7.4 4.2-19.5 10.2-29.9 10.2s-18.7-4.8-24.9-9.7c-3.1-2.5-5.7-5-7.7-6.9-1.5-1.4-1.9-4.6-4.3-4.9-1.4-.1-1.8 3.7 1.7 6.5z"/></symbol>')},6444(e,t,i){i.d(t,{s:()=>n});let n=(0,i(9210).I4)("div",{display:"flex",variants:{direction:{horizontal:{flexDirection:"row"},vertical:{flexDirection:"column"}},justify:{start:{justifyContent:"flex-start"},end:{justifyContent:"flex-end"},center:{justifyContent:"center"},spaceAround:{justifyContent:"space-around"},spaceBetween:{justifyContent:"space-between"},spaceEvenly:{justifyContent:"space-evenly"},stretch:{justifyContent:"stretch"}},align:{start:{alignItems:"flex-start"},end:{alignItems:"flex-end"},center:{alignItems:"center"},stretch:{alignItems:"stretch"},baseline:{alignItems:"baseline"},firstBaseline:{alignItems:"first baseline"},lastBaseline:{alignItems:"last baseline"}},wrap:{nowrap:{flexWrap:"nowrap"},wrap:{flexWrap:"wrap"},wrapReverse:{flexWrap:"wrap-reverse"}},width:{full:{width:"100%"}}},defaultVariants:{direction:"horizontal",justify:"start",align:"start",wrap:"nowrap"}})},984(e,t,i){i.d(t,{M:()=>n});let n=(0,i(9210).I4)("a",{textDecoration:"underline",textDecorationThickness:"1.5px",textUnderlineOffset:"1px",color:"$info10",fontWeight:"$medium"})},1010(e,t,i){i.d(t,{a:()=>n});let n=(0,i(9210).I4)("div",{})},7258(e,t,i){i.d(t,{w:()=>s});var n=i(9210),a=i(5818);let s=(0,n.I4)("div",{display:"inline-block",opacity:0,square:"1em",backgroundColor:"currentColor",borderRadius:"$full",animation:`${a.wS}
1 .75s linear infinite`,variants:{size:{xs:{square:"0.5em"},sm:{square:"0.75em"},lg:{square:"1.5em"},xl:{square:"2em"}}}})},8130(e,t,i){let n,a,s,r;i.r(t),i.d(t,{default:()=>tK});var o,l,d,c,p,m,u,v,h=i(7311),g=i(9863),f=i(8973),b=i(3944),w=i(2647),L=((o={}).LWJGL300="3.0.0",o.LWJGL310="3.1.0",o.LWJGL311="3.1.1",o.LWJGL312="3.1.2",o.LWJGL313="3.1.3",o.LWJGL314="3.1.4",o.LWJGL315="3.1.5",o.LWJGL316="3.1.6",o.LWJGL320="3.2.0",o.LWJGL321="3.2.1",o.LWJGL322="3.2.2",o.LWJGL323="3.2.3",o.LWJGL330="3.3.0",o.LWJGL331="3.3.1",o.LWJGL332="3.3.2",o.LWJGL333="3.3.3",o.LWJGL334="3.3.4",o.LWJGL335="3.3.5",o.LWJGL336="3.3.6",o.LWJGL340="3.4.0",o.LWJGL341="3.4.1",o.LWJGL342="3.4.2",o.LWJGL343="3.4.3",o.Nightly="nightly",o),y=((l={}).LWJGL="lwjgl",l.ASSIMP="lwjgl-assimp",l.BGFX="lwjgl-bgfx",l.CUDA="lwjgl-cuda",l.EGL="lwjgl-egl",l.FMOD="lwjgl-fmod",l.FREETYPE="lwjgl-freetype",l.GLFW="lwjgl-glfw",l.HARFBUZZ="lwjgl-harfbuzz",l.HWLOC="lwjgl-hwloc",l.JAWT="lwjgl-jawt",l.JEMALLOC="lwjgl-jemalloc",l.KTX="lwjgl-ktx",l.LIBDIVIDE="lwjgl-libdivide",l.LLVM="lwjgl-llvm",l.LMDB="lwjgl-lmdb",l.LZ4="lwjgl-lz4",l.MEOW="lwjgl-meow",l.MESHOPTIMIZER="lwjgl-meshoptimizer",l.MIMALLOC="lwjgl-mimalloc",l.MSDFGEN="lwjgl-msdfgen",l.NANOVG="lwjgl-nanovg",l.NFD="lwjgl-nfd",l.NUKLEAR="lwjgl-nuklear",l.ODBC="lwjgl-odbc",l.OPENAL="lwjgl-openal",l.OPENCL="lwjgl-opencl",l.OPENGL="lwjgl-opengl",l.OPENGLES="lwjgl-opengles",l.OPENVR="lwjgl-openvr",l.OPENXR="lwjgl-openxr",l.OPUS="lwjgl-opus",l.OVR="lwjgl-ovr",l.PAR="lwjgl-par",l.REMOTERY="lwjgl-remotery",l.RENDERDOC="lwjgl-renderdoc",l.RPMALLOC="lwjgl-rpmalloc",l.SDL="lwjgl-sdl",l.SHADERC="lwjgl-shaderc",l.SPNG="lwjgl-spng",l.SPVC="lwjgl-spvc",l.SSE="lwjgl-sse",l.STB="lwjgl-stb",l.TINYEXR="lwjgl-tinyexr",l.TINYFD="lwjgl-tinyfd",l.TOOTLE="lwjgl-tootle",l.VMA="lwjgl-vma",l.VULKAN="lwjgl-vulkan",l.XXHASH="lwjgl-xxhash",l.YOGA="lwjgl-yoga",l.ZSTD="lwjgl-zstd",l),x=((d={}).JOML="joml",d.JOMLPrimitives="joml-primitives",d.LWJGLXDebug="lwjglx-debug",d.LWJGLXLWJGL3Awt="lwjgl3-awt",d.Steamworks4J="steamworks4j",d.Steamworks4JServer="steamworks4j-server",d),I=((c={}).Release="release",c.Nightly="nightly",c),O=((p={}).FreeBSD="freebsd",p.Linux="linux",p.LinuxARM64="linux-arm64",p.LinuxARM32="linux-arm32",p.LinuxPPC64LE="linux-ppc64le",p.LinuxRISCV64="linux-riscv64",p.MacOS="macos",p.MacOSARM64="macos-arm64",p.Windows="windows",p.WindowsX86="windows-x86",p.WindowsARM64="windows-arm64",p);let j=["linux","macos","windows"],S=[...j,"linux-arm64","linux-arm32","macos-arm64","windows-x86","windows-arm64"],A=["freebsd","linux","linux-arm64","linux-arm32","linux-ppc64le","linux-riscv64","macos","macos-arm64","windows","windows-x86","windows-arm64"];var E=((m={}).Zip="zip",m.Maven="maven",m.Gradle="gradle",m.Ivy="ivy",m),$=((u={}).Groovy="groovy",u.Kotlin="kotlin",u),G=((v={}).None="none",v.Custom="custom",v.All="all",v.GettingStarted="getting-started",v.OpenGL="minimal-opengl",v.OpenGLES="minimal-opengles",v.Vulkan="minimal-vulkan",v),M=i(8529),R=i(9210),D=i(6848),N=i(5363),k=i(3859);let C=[O.Linux,O.LinuxARM64,O.LinuxARM32,O.MacOS,O.Windows,O.WindowsX86],W=[...j,O.WindowsX86];var P=i(4472);function T(){let e=(0,P.N)(),t="",i=null;if(null!=e?(t=e.platform,i=e.architecture):navigator.platform&&(t=navigator.platform),null!==t){if(t.toLowerCase().startsWith("mac")||t.toLowerCase().startsWith("ip"))return null!==i&&i.indexOf("arm")>-1?O.MacOSARM64:O.MacOS;else if(t.toLowerCase().includes("freebsd"))return O.FreeBSD;else if(t.toLowerCase().includes("linux")){if(null!==i){if(i.indexOf("arm")>-1)return O.LinuxARM64;else if(i.indexOf("ppc")>-1)return O.LinuxPPC64LE;else if(i.indexOf("risc")>-1)return O.LinuxRISCV64}return O.Linux}}return null!==i&&i.indexOf("arm")>-1?O.WindowsARM64:O.Windows}let J=(s={lwjgl:{},builds:{byId:{[I.Release]:{id:I.Release,title:"Release",description:"“Latest stable build”"},[I.Nightly]:{id:I.Nightly,title:"Early Access",description:"“Snapshot build, possibly broken”"}},allIds:[I.Release,I.Nightly]},modes:{byId:{[E.Zip]:{id:E.Zip,title:"ZIP Bundle"},[E.Maven]:{id:E.Maven,title:"Maven",logo:"/svg/maven.svg",file:"pom.xml"},[E.Gradle]:{id:E.Gradle,title:"Gradle",logo:"/svg/gradle.svg",file:"build.gradle"},[E.Ivy]:{id:E.Ivy,title:"Ivy",logo:"/img/ivy.png",file:"ivy.xml"}},allIds:[E.Zip,E.Maven,E.Gradle,E.Ivy]},natives:{byId:{[O.FreeBSD]:{id:O.FreeBSD,title:"FreeBSD x64",since:L.LWJGL334},[O.Linux]:{id:O.Linux,title:"Linux x64",since:L.LWJGL300},[O.LinuxARM64]:{id:O.LinuxARM64,title:"Linux arm64",since:L.LWJGL323},[O.LinuxARM32]:{id:O.LinuxARM32,title:"Linux arm32",since:L.LWJGL323},[O.LinuxPPC64LE]:{id:O.LinuxPPC64LE,title:"Linux ppc64le",since:L.LWJGL334}
1,[O.LinuxRISCV64]:{id:O.LinuxRISCV64,title:"Linux riscv64",since:L.LWJGL334},[O.MacOS]:{id:O.MacOS,title:"macOS x64",since:L.LWJGL300},[O.MacOSARM64]:{id:O.MacOSARM64,title:"macOS arm64",since:L.LWJGL330},[O.Windows]:{id:O.Windows,title:"Windows x64",since:L.LWJGL300},[O.WindowsX86]:{id:O.WindowsX86,title:"Windows x86",since:L.LWJGL323},[O.WindowsARM64]:{id:O.WindowsARM64,title:"Windows arm64",since:L.LWJGL330}},allIds:A},languages:{byId:{[$.Groovy]:{id:$.Groovy,title:"Groovy"},[$.Kotlin]:{id:$.Kotlin,title:"Kotlin"}}},presets:{byId:{[G.None]:{id:G.None,title:"None"},[G.Custom]:{id:G.Custom,title:"Custom"},[G.All]:{id:G.All,title:"Everything"},[G.GettingStarted]:{id:G.GettingStarted,title:"Getting Started"},[G.OpenGL]:{id:G.OpenGL,title:"Minimal OpenGL"},[G.OpenGLES]:{id:G.OpenGLES,title:"Minimal OpenGL ES"},[G.Vulkan]:{id:G.Vulkan,title:"Minimal Vulkan"}}},addons:{byId:{[x.JOML]:{id:x.JOML,title:"JOML",description:"A Java math library for OpenGL rendering calculations.",website:"https://joml-ci.github.io/JOML/",maven:{groupId:"org.joml",artifactId:"joml",version:"1.10.9"}},[x.JOMLPrimitives]:{id:x.JOMLPrimitives,title:"JOML Primitives",description:"JOML geometric primitives",website:"https://github.com/JOML-CI/joml-primitives",maven:{groupId:"org.joml",artifactId:"joml-primitives",version:"1.10.0"}},[x.LWJGLXDebug]:{id:x.LWJGLXDebug,title:"LWJGLX/debug",description:"Java Agent for debugging LWJGL3 programs to prevent JVM crashes and resolve OpenGL errors.",website:"https://github.com/LWJGLX/debug",modes:[E.Zip],maven:{groupId:"org.lwjglx",artifactId:"debug",version:"1.0.0"}},[x.LWJGLXLWJGL3Awt]:{id:x.LWJGLXLWJGL3Awt,title:"LWJGLX/lwjgl3-awt",description:"OpenGL and Vulkan support for AWT with LWJGL 3.",website:"https://github.com/LWJGLX/lwjgl3-awt",maven:{groupId:"org.lwjglx",artifactId:"lwjgl3-awt",version:"0.2.3"}},[x.Steamworks4J]:{id:x.Steamworks4J,title:"steamworks4j",description:"Access the Steamworks C++ API using Java. Client library, sufficient for most uses.",website:"https://code-disaster.github.io/steamworks4j/",maven:{groupId:"com.code-disaster.steamworks4j",artifactId:"steamworks4j",version:"1.10.0"}},[x.Steamworks4JServer]:{id:x.Steamworks4JServer,title:"steamworks4j-server",description:"Access the Steamworks C++ API using Java. Server library, if you need to support game servers or encrypted app tickets.",website:"https://code-disaster.github.io/steamworks4j/",maven:{groupId:"com.code-disaster.steamworks4j",artifactId:"steamworks4j-server",version:"1.10.0"}}}},build:null,mode:E.Zip,preset:G.All,descriptions:!1,compact:!1,hardcoded:!1,javadoc:!0,source:!0,osgi:!1,includeJSON:!0,language:$.Groovy,platform:{[O.FreeBSD]:!1,[O.Linux]:!1,[O.LinuxARM64]:!1,[O.LinuxARM32]:!1,[O.MacOS]:!1,[O.MacOSARM64]:!1,[O.Windows]:!1,[O.WindowsX86]:!1,[O.WindowsARM64]:!1},contents:{},availability:{},selectedAddons:[],artifacts:{version:"",byId:{},allIds:[]}},(r={version:L.LWJGL300,allIds:[],byId:{[y.LWJGL]:{id:y.LWJGL,title:"LWJGL core",description:"The LWJGL core library.",natives:j,required:!0,presets:[G.None,G.GettingStarted,G.OpenGL,G.OpenGLES,G.Vulkan]},[y.EGL]:{id:y.EGL,title:"EGL",description:"An interface between Khronos rendering APIs such as OpenGL ES or OpenVG and the underlying native platform window system.",website:"https://www.khronos.org/egl",presets:[G.OpenGLES]},[y.GLFW]:{id:y.GLFW,title:"GLFW",description:"A multi-platform library for OpenGL, OpenGL ES and Vulkan development on the desktop. It provides a simple API for creating windows, contexts and surfaces, receiving input and events.",natives:j,website:"https://www.glfw.org/",presets:[G.GettingStarted,G.OpenGL,G.OpenGLES,G.Vulkan]},[y.JAWT]:{id:y.JAWT,title:"JAWT",description:"The AWT native interface.",website:"https://docs.oracle.com/javase/8/docs/technotes/guides/awt/AWT_Native_Interface.html"},[y.JEMALLOC]:{id:y.JEMALLOC,title:"jemalloc",description:"A general purpose malloc implementation that emphasizes fragmentation avoidance and scalable concurrency support.",natives:j,website:"https://jemalloc.net/"},[y.NANOVG]:{id:y.NANOVG,title:"NanoVG & NanoSVG",description:'A small antialiased vector graphics rendering library for OpenGL. Also includes <a href="https://github.com/memononen/nanosvg" rel="noopener external">NanoSVG</a>, a simple SVG parser (3.1.4+).',natives:j,website:"https://github.com/memononen/nanovg",presets:[G.GettingStarted]},[y.NFD]:{id:y.NFD,title:"Native File Dialog Extended",description:"A small C library that portably invokes native file open, folder select and file save dialogs.",natives:j,website:"https://github.com/btzy/nativefiledialog-extended"},[y.OPENAL]:{id:y.OPENAL,title:"OpenAL",description:"A cross-platform 3D audio API appropriate for use with gaming applications and many other types of audio applications.",natives:j,website:"https://www.openal.org/",presets:[G.GettingStarted,G.OpenGL,G.OpenGLES,G.Vulkan]},[y.OPENCL]:{id:y.OPENCL,title:"OpenCL",description:"An open, royalty-free standard for cross-platform, parallel programming of diverse processors found in personal computers, servers, mobile devices and embedded platforms.",website:"https://www.khronos.org/opencl/"},[y.OPENGL]:{id:y.OPENGL,title:"OpenGL",description:"The most widely adopted 2D and 3D graphics API in the industry, bringing thousands of applications to a wide variety of computer platforms.",website:"https://www.opengl.org/",presets:[G.GettingStarted,G.OpenGL]},[y.OPENGLES]:{id:y.OPENGLES,title:"OpenGL ES",description:"A royalty-free, cross-platform API for full-function 2D and 3D graphics on embedded systems - including consoles, phones, appliances and vehicles.",website:"https://www.khronos.org/opengles/",presets:[G.OpenGLES]},[y.OVR]:{id:y.OVR,title:"OVR",description:"The API of the Oculus SDK.",natives:[O.Windows],website:"https://developer.oculus.com/"},[y.PAR]:{id:y.PAR,title:"par_shapes",description:"Generate parametric surfaces and other simple shapes.",natives:j,website:"https://prideout.net/shapes",presets:[G.GettingStarted]}
1,[y.SSE]:{id:y.SSE,title:"SSE",description:"Simple SSE intrinsics.",natives:j,website:"https://software.intel.com/sites/landingpage/IntrinsicsGuide/"},[y.STB]:{id:y.STB,title:"stb",description:"Single-file public domain libraries for fonts, images, ogg vorbis files and more.",natives:j,website:"https://github.com/nothings/stb",presets:[G.GettingStarted,G.OpenGL,G.OpenGLES,G.Vulkan]},[y.VULKAN]:{id:y.VULKAN,title:"Vulkan",description:"A new generation graphics and compute API that provides high-efficiency, cross-platform access to modern GPUs used in a wide variety of devices from PCs and consoles to mobile phones and embedded platforms.",website:"https://www.khronos.org/vulkan/",presets:[G.GettingStarted,G.Vulkan]},[y.XXHASH]:{id:y.XXHASH,title:"xxHash",description:"An Extremely fast Hash algorithm, running at RAM speed limits.",natives:j,website:"https://xxhash.com/"}}}).allIds=Object.keys(r.byId).sort(),s.lwjgl[r.version]=r,[e=>({...e,version:L.LWJGL310,byId:{...e.byId,[y.BGFX]:{id:y.BGFX,title:"bgfx",description:"A cross-platform, graphics API agnostic rendering library. It provides a high performance, low level abstraction for common platform graphics APIs like OpenGL, Direct3D and Apple Metal.",natives:j,website:"https://github.com/bkaradzic/bgfx"},[y.LMDB]:{id:y.LMDB,title:"LMDB",description:"A compact, fast, powerful, and robust database that implements a simplified variant of the BerkeleyDB (BDB) API.",natives:j,website:"https://www.symas.com/lmdb"},[y.NUKLEAR]:{id:y.NUKLEAR,title:"Nuklear",description:"A minimal state immediate mode graphical user interface toolkit.",natives:j,website:"https://immediate-mode-ui.github.io/Nuklear/",presets:[G.GettingStarted]},[y.TINYFD]:{id:y.TINYFD,title:"Tiny File Dialogs",description:"Provides basic modal dialogs.",natives:j,website:"https://sourceforge.net/projects/tinyfiledialogs/"}}}),e=>({...e,version:L.LWJGL311,byId:{...e.byId,[y.ASSIMP]:{id:y.ASSIMP,title:"Assimp",description:"A portable Open Source library to import various well-known 3D model formats in a uniform manner.",natives:j,website:"https://www.assimp.org/",presets:[G.GettingStarted,G.OpenGL,G.OpenGLES,G.Vulkan]},[y.OPENGL]:{...e.byId[y.OPENGL],natives:j},[y.OPENGLES]:{...e.byId[y.OPENGLES],natives:j}}}),e=>({...e,version:L.LWJGL312,byId:{...e.byId,[y.OPENVR]:{id:y.OPENVR,title:"OpenVR",description:"OpenVR is an API and runtime that allows access to VR hardware from multiple vendors without requiring that applications have specific knowledge of the hardware they are targeting.",natives:j,website:"https://github.com/ValveSoftware/openvr"},[y.TINYEXR]:{id:y.TINYEXR,title:"Tiny OpenEXR",description:"A small library to load and save OpenEXR(.exr) images.",natives:j,website:"https://github.com/syoyo/tinyexr"},[y.YOGA]:{id:y.YOGA,title:"Yoga",description:"An open-source, cross-platform layout library that implements Flexbox.",natives:j,website:"https://www.yogalayout.dev/"}}}),e=>({...e,version:L.LWJGL313,byId:{...e.byId,[y.RPMALLOC]:{id:y.RPMALLOC,title:"rpmalloc",description:"A public domain cross platform lock free thread caching 16-byte aligned memory allocator implemented in C.",natives:j,website:"https://github.com/mjansson/rpmalloc"}}}),e=>({...e,version:L.LWJGL314,byId:{...e.byId,[y.LZ4]:{id:y.LZ4,title:"LZ4",description:"LZ4 is a lossless data compression algorithm that is focused on compression and decompression speed.",natives:j,website:"https://lz4.org/"},[y.ODBC]:{id:y.ODBC,title:"ODBC",description:"A C programming language interface that makes it possible for applications to access data from a variety of database management systems (DBMSs).",website:"https://learn.microsoft.com/en-us/sql/odbc/microsoft-open-database-connectivity-odbc"},[y.REMOTERY]:{id:y.REMOTERY,title:"Remotery",description:"A realtime CPU/GPU profiler hosted in a single C file with a viewer that runs in a web browser.",natives:j,website:"https://github.com/Celtoys/Remotery"},[y.ZSTD]:{id:y.ZSTD,title:"Zstandard",description:"Zstandard (zstd) is a fast lossless compression algorithm, targeting real-time compression scenarios at zlib-level and better compression ratios.",natives:j,website:"https://facebook.github.io/zstd/"}}}),e=>({...e,version:L.LWJGL315,byId:{...e.byId,[y.TOOTLE]:{id:y.TOOTLE,title:"AMD Tootle",description:"AMD Tootle (Triangle Order Optimization Tool) is a 3D triangle mesh optimization library that improves on existing mesh preprocessing techniques.",natives:j,website:"https://github.com/GPUOpen-Tools/amd-tootle"}}}),e=>({...e,version:L.LWJGL316}),e=>({...e,version:L.LWJGL320,byId:{...e.byId,[y.VMA]:{id:y.VMA,title:"Vulkan Memory Allocator",description:"An easy to integrate Vulkan memory allocation library.",natives:j,website:"https://gpuopen.com/vulkan-memory-allocator/"},[y.VULKAN]:{...e.byId[y.VULKAN],natives:[O.MacOS],nativesOptional:!0}}}),e=>({...e,version:L.LWJGL321,byId:{...e.byId,[y.CUDA]:{id:y.CUDA,title:"CUDA",description:"A parallel computing platform and programming model developed by NVIDIA for general computing on GPUs.",website:"https://developer.nvidia.com/cuda-zone/"},[y.LIBDIVIDE]:{id:y.LIBDIVIDE,title:"libdivide",description:"A library that replaces expensive integer divides with comparatively cheap multiplication and bitshifts.",natives:j,website:"https://libdivide.com/"},[y.LLVM]:{id:y.LLVM,title:"LLVM",description:"A collection of modular and reusable compiler and toolchain technologies.",natives:j,website:"https://llvm.org/"},[y.MEOW]:{id:y.MEOW,title:"Meow hash",description:"An extremely fast non-cryptographic hash.",natives:j,website:"https://github.com/cmuratori/meow_hash/"},[y.OPUS]:{id:y.OPUS,title:"Opus",description:"Opus is a totally open, royalty-free, highly versatile audio codec.",natives:j,website:"https://opus-codec.org/"}}}),e=>({...e,version:L.LWJGL322}),e=>({...e,version:L.LWJGL323,byId:{...e.byId,[y.LWJGL]:{...e.byId[y.LWJGL],natives:C},[y.ASSIMP]:{...e.byId[y.ASSIMP],natives:C},[y.BGFX]:{...e.byId[y.BGFX],natives:C},[y.GLFW]:{...e.byId[y.GLFW],natives:C},[y.JEMALLOC]:{...e.byId[y.JEMALLOC],natives:C},[y.LIBDIVIDE]:{...e.byId[y.LIBDIVIDE],natives:C},[y.LLVM]:{...e.byId[y.LLVM],natives:C},[y.LMDB]:{...e.byId[y.LMDB],natives:C},[y.LZ4]:{...e.byId[y.LZ4],natives:C},[y.MEOW]:{...e.byId[y.MEOW],natives:[...W,O.LinuxARM64]},[y.NANOVG]:{...e.byId[y.NANOVG],natives:C},[y.NFD]:{...e.byId[y.NFD],natives:W}
1,[y.NUKLEAR]:{...e.byId[y.NUKLEAR],natives:C},[y.OPENAL]:{...e.byId[y.OPENAL],natives:C},[y.OPENGL]:{...e.byId[y.OPENGL],natives:C},[y.OPENGLES]:{...e.byId[y.OPENGLES],natives:C},[y.OPENVR]:{...e.byId[y.OPENVR],natives:W},[y.OPUS]:{...e.byId[y.OPUS],natives:C},[y.OVR]:{...e.byId[y.OVR],natives:[O.Windows,O.WindowsX86]},[y.PAR]:{...e.byId[y.PAR],natives:C},[y.REMOTERY]:{...e.byId[y.REMOTERY],natives:C},[y.RPMALLOC]:{...e.byId[y.RPMALLOC],natives:C},[y.SHADERC]:{id:y.SHADERC,title:"Shaderc",description:"A collection of libraries for shader compilation.",natives:C,website:"https://github.com/google/shaderc"},[y.SSE]:{...e.byId[y.SSE],natives:W},[y.STB]:{...e.byId[y.STB],natives:C},[y.TINYEXR]:{...e.byId[y.TINYEXR],natives:C},[y.TINYFD]:{...e.byId[y.TINYFD],natives:C},[y.TOOTLE]:{...e.byId[y.TOOTLE],natives:W},[y.VMA]:{...e.byId[y.VMA],natives:C},[y.XXHASH]:{...e.byId[y.XXHASH],natives:C},[y.YOGA]:{...e.byId[y.YOGA],natives:C},[y.ZSTD]:{...e.byId[y.ZSTD],natives:C}}}),e=>({...e,version:L.LWJGL330,byId:{...e.byId,[y.LWJGL]:{...e.byId[y.LWJGL],natives:S},[y.ASSIMP]:{...e.byId[y.ASSIMP],natives:S},[y.BGFX]:{...e.byId[y.BGFX],natives:[...j,O.LinuxARM32,O.LinuxARM64,O.MacOSARM64,O.WindowsX86]},[y.GLFW]:{...e.byId[y.GLFW],natives:S},[y.JEMALLOC]:{...e.byId[y.JEMALLOC],natives:S},[y.LIBDIVIDE]:{...e.byId[y.LIBDIVIDE],natives:S},[y.LLVM]:{...e.byId[y.LLVM],natives:S},[y.LMDB]:{...e.byId[y.LMDB],natives:S},[y.LZ4]:{...e.byId[y.LZ4],natives:S},[y.MEOW]:{...e.byId[y.MEOW],natives:[...j,O.LinuxARM64,O.MacOSARM64,O.WindowsX86,O.WindowsARM64]},[y.MESHOPTIMIZER]:{id:y.MESHOPTIMIZER,title:"meshoptimizer",description:"A mesh optimization library that makes meshes smaller and faster to render.",natives:S,website:"https://github.com/zeux/meshoptimizer"},[y.NANOVG]:{...e.byId[y.NANOVG],natives:S},[y.NFD]:{...e.byId[y.NFD],natives:S},[y.NUKLEAR]:{...e.byId[y.NUKLEAR],natives:S},[y.OPENAL]:{...e.byId[y.OPENAL],natives:S},[y.OPENGL]:{...e.byId[y.OPENGL],natives:S},[y.OPENGLES]:{...e.byId[y.OPENGLES],natives:S},[y.OPUS]:{...e.byId[y.OPUS],natives:S},[y.PAR]:{...e.byId[y.PAR],natives:S},[y.REMOTERY]:{...e.byId[y.REMOTERY],natives:[...j,O.LinuxARM32,O.LinuxARM64,O.MacOSARM64,O.WindowsX86]},[y.RPMALLOC]:{...e.byId[y.RPMALLOC],natives:S},[y.SHADERC]:{...e.byId[y.SHADERC],natives:S},[y.SPVC]:{id:y.SPVC,title:"SPIRV-Cross",description:"A library for performing reflection on SPIR-V and disassembling SPIR-V back to high level languages.",natives:S,website:"https://github.com/KhronosGroup/SPIRV-Cross"},[y.STB]:{...e.byId[y.STB],natives:S},[y.TINYEXR]:{...e.byId[y.TINYEXR],natives:S},[y.TINYFD]:{...e.byId[y.TINYFD],natives:S},[y.VMA]:{...e.byId[y.VMA],natives:S},[y.VULKAN]:{...e.byId[y.VULKAN],natives:[O.MacOS,O.MacOSARM64]},[y.XXHASH]:{...e.byId[y.XXHASH],natives:S},[y.YOGA]:{...e.byId[y.YOGA],natives:S},[y.ZSTD]:{...e.byId[y.ZSTD],natives:S}}}),e=>({...e,version:L.LWJGL331,byId:{...e.byId,[y.OPENXR]:{id:y.OPENXR,title:"OpenXR",description:"A royalty-free, open standard that provides high-performance access to Augmented Reality (AR) and Virtual Reality (VR)—collectively known as XR—platforms and devices.",website:"https://www.khronos.org/openxr/",natives:[O.Linux,O.LinuxARM64,O.LinuxARM32,O.Windows,O.WindowsX86,O.WindowsARM64]}}}),e=>({...e,version:L.LWJGL332,byId:{...e.byId,[y.FMOD]:{id:y.FMOD,title:"FMOD",description:"An end-to-end solution for adding sound and music to any game.",website:"https://www.fmod.com"},[y.FREETYPE]:{id:y.FREETYPE,title:"FreeType",description:"A freely available software library to render fonts.",website:"https://freetype.org/",natives:S},[y.HARFBUZZ]:{id:y.HARFBUZZ,title:"HarfBuzz",description:"A text shaping library that allows programs to convert a sequence of Unicode input into properly formatted and positioned glyph output — for any writing system and language.",website:"https://harfbuzz.github.io/",natives:S},[y.HWLOC]:{id:y.HWLOC,title:"hwloc",description:"A portable abstraction of the hierarchical topology of modern architectures, including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading.",website:"https://www.open-mpi.org/projects/hwloc/",natives:S},[y.KTX]:{id:y.KTX,title:"KTX (Khronos Texture)",description:"A lightweight container for textures for OpenGL\xae, Vulkan\xae and other GPU APIs.",website:"https://www.khronos.org/ktx/",natives:[...j,O.LinuxARM64,O.LinuxARM32,O.MacOSARM64,O.WindowsARM64]}}}),e=>({...e,version:L.LWJGL333,byId:{...e.byId}}),e=>({...e,version:L.LWJGL334,byId:{...e.byId,[y.LWJGL]:{...e.byId[y.LWJGL],natives:A},[y.ASSIMP]:{...e.byId[y.ASSIMP],natives:A},[y.BGFX]:{...e.byId[y.BGFX],natives:[...j,O.FreeBSD,O.LinuxARM64,O.LinuxARM32,O.LinuxPPC64LE,O.LinuxRISCV64,O.MacOSARM64,O.WindowsX86]},[y.FREETYPE]:{...e.byId[y.FREETYPE],natives:A},[y.GLFW]:{...e.byId[y.GLFW],natives:A},[y.HARFBUZZ]:{...e.byId[y.HARFBUZZ],natives:A},[y.HWLOC]:{...e.byId[y.HWLOC],natives:A},[y.JEMALLOC]:{...e.byId[y.JEMALLOC],natives:A},[y.KTX]:{...e.byId[y.KTX],natives:[...j,O.FreeBSD,O.LinuxARM64,O.LinuxARM32,O.LinuxPPC64LE,O.LinuxRISCV64,O.MacOSARM64,O.WindowsARM64]},[y.LIBDIVIDE]:{...e.byId[y.LIBDIVIDE],natives:A},[y.LLVM]:{...e.byId[y.LLVM],natives:A},[y.LMDB]:{...e.byId[y.LMDB],natives:A},[y.LZ4]:{...e.byId[y.LZ4],natives:A},[y.MESHOPTIMIZER]:{...e.byId[y.MESHOPTIMIZER],natives:A},[y.MSDFGEN]:{id:y.MSDFGEN,title:"msdfgen",description:"Multi-channel signed distance field generator.",natives:A,website:"https://github.com/Chlumsky/msdfgen"},[y.NANOVG]:{...e.byId[y.NANOVG],natives:A},[y.NFD]:{...e.byId[y.NFD],natives:A},[y.NUKLEAR]:{...e.byId[y.NUKLEAR],natives:A},[y.OPENAL]:{...e.byId[y.OPENAL],natives:A},[y.OPENGL]:{...e.byId[y.OPENGL],natives:A},[y.OPENGLES]:{...e.byId[y.OPENGLES],natives:A},[y.OPENXR]:{...e.byId[y.OPENXR],natives:[O.FreeBSD,O.Linux,O.LinuxARM64,O.LinuxARM32,O.LinuxPPC64LE,O.LinuxRISCV64,O.Windows,O.WindowsX86,O.WindowsARM64]},[y.OPUS]:{...e.byId[y.OPUS],natives:A},[y.PAR]:{...e.byId[y.PAR],natives:A},[y.REMOTERY]:{...e.byId[y.REMOTERY],natives:[...j,O.FreeBSD,O.LinuxARM64,O.LinuxARM32,O.LinuxPPC64LE,O.LinuxRISCV64,O.MacOSARM64,O.WindowsX86]},[y.RPMALLOC]:{...e.byId[y.RPMALLOC],natives:A},[y.SHADERC]:{...e.byId[y.SHADERC],natives:A},[y.SPVC]:{...e.byId[y.SPVC],natives:A},[y.STB]:{...e.byId[y.STB],natives:A},[y.TINYEXR]:{...e.byId[y.TINYEXR],natives:A},[y.TINYFD]:{...e.byId[y.TINYFD],natives:A},[y.VMA]:{...e.byId[y.VMA],natives:A},[y.XXHASH]:{...e.byId[y.XXHASH],natives:A},[y.YOGA]:{...e.byId[y.YOGA],natives:A},[y.ZSTD]:{...e.byId[y.ZSTD],natives:A}}}),e=>({...e,version:L.LWJGL335,byId:{...e.byId}}),e=>({...e,version:L.LWJGL336,byId:{...e.byId}}),e=>{let{[y.CUDA]:t,[y.LIBDIVIDE]:i,[y.MEOW]:n,[y.OPENVR]:a,[y.OVR]:s,[y.SSE]:r,[y.TOOTLE]:o,...l}=e.byId;return{...e,version:L.LWJGL340,byId:{...l,[y.RENDERDOC]:{id:y.RENDERDOC,title:"RenderDoc",description:"An API to control the RenderDoc GPU debugger.",website:"https://renderdoc.org/"}
1,[y.SDL]:{id:y.SDL,title:"SDL (Simple DirectMedia Layer)",description:"A cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL/Direct3D/Metal/Vulkan.",natives:A,website:"https://www.libsdl.org/"},[y.SPNG]:{id:y.SPNG,title:"Simple PNG (libspng)",description:"A C library for reading and writing Portable Network Graphics (PNG) format files with a focus on security and easy of use.",natives:A,website:"https://libspng.org/"}}}},e=>({...e,version:L.LWJGL341,byId:{...e.byId}}),e=>({...e,version:L.LWJGL342,byId:{...e.byId,[y.MIMALLOC]:{id:y.MIMALLOC,title:"mimalloc",description:"A compact general purpose allocator with excellent performance.",natives:A,website:"https://microsoft.github.io/mimalloc/"}}}),e=>({...e,version:L.LWJGL343,byId:{...e.byId}}),e=>({...e,version:L.LWJGL343,alias:L.Nightly,byId:{...e.byId}})].reduce((e,t)=>{let i=t(e);return i.allIds=Object.keys(i.byId).sort(),s.lwjgl[void 0!==i.alias?i.alias:i.version]=i,i},r),s.versions=Object.keys(s.lwjgl).map(e=>s.lwjgl[e]).filter(e=>void 0===e.alias).map(e=>e.version).reverse(),s.version=s.versions[0],s.presets.allIds=Object.keys(s.presets.byId),s.modes.allIds=Object.keys(s.modes.byId),s.languages.allIds=Object.keys(s.languages.byId),s.addons.allIds=Object.keys(s.addons.byId),s.platform[T()]=!0,s);function B(e){return Object.keys(e).filter(t=>!0===e[t])}function V(e){if(null===e.build)return null;let t={build:e.build,mode:e.mode,selectedAddons:e.selectedAddons,platform:B(e.platform),descriptions:e.descriptions,compact:e.compact,hardcoded:e.hardcoded,javadoc:e.javadoc,includeJSON:e.includeJSON,source:e.source,osgi:e.osgi,language:e.language};return e.preset===G.Custom?t.contents=B(e.contents):t.preset=e.preset,e.build===I.Release&&(t.version=e.version,t.versionLatest=e.versions[0]),t}function _(e){return`lwjgl-${e.build}-${null!=e.preset?e.preset:"custom"}-${e.mode}.json`}let F=L.LWJGL321;var U=i(6082);let X=e=>null!==e.build,z=e=>e.descriptions,H=e=>e.mode===E.Gradle,Z=e=>e.build===I.Release,Y=e=>e.mode,K=e=>e.mode!==E.Zip,q=e=>e.natives,Q=e=>e.artifacts.version,ee=e=>e.platform,et=e=>e.addons,ei=e=>e.selectedAddons,en=e=>e.contents,ea=e=>e.availability,es=e=>e.artifacts,er={name:"mode",value:Y,action:e=>({type:"BUILD/SELECT_MODE",mode:e}),options:e=>{let{modes:{allIds:t,byId:i},build:n}=e;return t.map(e=>({value:e,label:i[e].title}))}},eo={children:"Show descriptions",checked:z,action:()=>({type:"BUILD/TOGGLE_DESCRIPTIONS"})},el={children:"Include source",checked:e=>e.source,hidden:K,action:()=>({type:"BUILD/TOGGLE_SOURCE"})},ed={children:"Include JavaDoc",checked:e=>e.javadoc,hidden:K,action:()=>({type:"BUILD/TOGGLE_JAVADOC"})},ec={children:"Include build config",checked:e=>e.includeJSON,hidden:K,action:()=>({type:"BUILD/TOGGLE_INCLUDE_JSON"})},ep={children:"Do not use variables",checked:e=>e.hardcoded,hidden:e=>e.mode===E.Zip,action:()=>({type:"BUILD/TOGGLE_HARDCODED"})},em={children:"Compact Mode",checked:e=>e.compact,hidden:e=>e.mode!==E.Maven&&e.mode!==E.Ivy,action:()=>({type:"BUILD/TOGGLE_COMPACT"})},eu={children:"OSGi Mode",checked:e=>e.osgi,hidden:e=>!(e.mode!==E.Zip&&e.build===I.Release&&eb(e.version)),action:()=>({type:"BUILD/TOGGLE_OSGI"})},ev={name:"language",value:e=>e.language,action:e=>({type:"BUILD/SELECT_LANGUAGE",language:e}),options:e=>{let{languages:{allIds:t,byId:i}}=e;return t.map(e=>({value:e,label:i[e].title}))}},eh={name:"preset",value:e=>e.preset,action:e=>({type:"BUILD/SELECT_PRESET",preset:e}),options:e=>{let{presets:{allIds:t,byId:i},preset:n}=e;return t.map(e=>({value:e,label:i[e].title,disabled:n!==e&&"custom"===e}))}},eg={name:"version",value:e=>e.version,action:e=>({type:"BUILD/SELECT_VERSION",version:e}),options:e=>{let{versions:t}=e;return t.map(e=>({value:e,label:e,disabled:"3.0.0"===e}))}};function ef(e){return parseInt(e.replace(/\./g,""),10)}function eb(e){let t=ef(e);return 312<=t&&t<=ef(F)}function ew(e,t){if(void 0!==e.presets.byId[t]){if(e.preset=t,t===G.All)e.artifacts.allIds.forEach(t=>{e.contents[t]=!0});else if(t!==G.Custom){e.artifacts.allIds.forEach(t=>{e.contents[t]=!1});let i=e.presets.byId[t];
1void 0!==i.artifacts&&i.artifacts.forEach(t=>{e.contents[t]=!0})}}}function eL(e){if(null===e.build)return;e.artifacts=e.lwjgl[e.build===I.Release?e.version:e.build];let t=ef(e.artifacts.version);A.forEach(i=>{e.platform[i]&&t<ef(J.natives.byId[i].since)&&(e.platform[i]=!1)}),A.some(t=>e.platform[t])||(e.platform[T()]=!0),e.availability={},e.presets.allIds.forEach(t=>{e.presets.byId[t].artifacts=[]}),e.artifacts.allIds.forEach(t=>{let i=e.artifacts.byId[t];e.availability[t]=void 0===i.natives||!0===i.nativesOptional||i.natives.length===J.natives.allIds.length||i.natives.some(t=>!!e.platform[t]),e.availability[t]&&void 0!==i.presets&&i.presets.forEach(i=>{let n=e.presets.byId[i];void 0!==n.artifacts&&n.artifacts.push(t)})}),e.preset!==G.Custom&&ew(e,e.preset)}let ey=(e,t)=>{null!==t.build&&(e.build=t.build,e.mode=t.mode,e.selectedAddons=t.selectedAddons,e.descriptions=t.descriptions,e.compact=t.compact,e.hardcoded=t.hardcoded,e.javadoc=t.javadoc,e.includeJSON=t.includeJSON,e.source=t.source,e.language=t.language,e.osgi=!!t.osgi,t.build===I.Release&&void 0!==t.version&&void 0!==t.versionLatest&&(t.versionLatest===e.versions[1]?e.version=e.versions[0]:e.version=t.version),t.mode===E.Zip&&(e.natives.allIds.forEach(t=>{e.platform[t]=!1}),t.platform.forEach(t=>{e.platform[t]=!0})),eL(e),void 0!==t.preset?ew(e,t.preset):void 0!==t.contents?(e.preset=G.Custom,e.contents={},t.contents.forEach(t=>{void 0!==e.artifacts.byId[t]&&(e.contents[t]=!0)})):ew(e,G.GettingStarted))};var ex=i(7167),eI=i(8120),eO=i.n(eI);let ej="lwjgl-build-config",eS=(0,ex.A)(function(e){if(e===J)return;let t=V(e);if(null===t){null!==n&&(n=null,localStorage.removeItem(ej));return}null!==n&&eO()(n,t)||(n=t,localStorage.setItem(ej,JSON.stringify(t)))},1e3),eA=(0,N.vt)((0,k.xw)(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:J,t=arguments.length>1?arguments[1]:void 0;return(0,U.jM)(e,i=>{var n,a,s,r,o,l;switch(t.type){case"BUILD/CONFIG_LOAD":ey(i,t.payload);break;case"BUILD/SELECT_TYPE":(n=i).build=t.build!==e.build?t.build:null,eL(n);break;case"BUILD/SELECT_MODE":e.mode!==t.mode&&((a=i).mode=t.mode,eL(a));break;case"BUILD/TOGGLE_DESCRIPTIONS":i.descriptions=!i.descriptions;break;case"BUILD/TOGGLE_COMPACT":(e.mode===E.Maven||e.mode===E.Ivy)&&(i.compact=!i.compact);break;case"BUILD/TOGGLE_HARDCODED":e.mode!==E.Zip&&(i.hardcoded=!i.hardcoded);break;case"BUILD/TOGGLE_JAVADOC":e.mode===E.Zip&&(i.javadoc=!i.javadoc);break;case"BUILD/TOGGLE_INCLUDE_JSON":e.mode===E.Zip&&(i.includeJSON=!i.includeJSON);break;case"BUILD/TOGGLE_SOURCE":e.mode===E.Zip&&(i.source=!i.source);break;case"BUILD/TOGGLE_OSGI":if(e.mode!==E.Zip&&e.build===I.Release){if(i.osgi&&!eb(e.version))break;i.osgi=!i.osgi}break;case"BUILD/SELECT_PRESET":e.preset!==t.preset&&ew(i,t.preset);break;case"BUILD/SELECT_LANGUAGE":e.mode===E.Gradle&&(i.language=t.language);break;case"BUILD/TOGGLE_PLATFORM":(e.natives.allIds.reduce((t,i)=>t+ +!!e.platform[i],0)>1||!1===e.platform[t.platform])&&(i.platform[t.platform]=!e.platform[t.platform],eL(i));break;
1case"BUILD/SELECT_VERSION":e.build===I.Release&&e.version!==t.version&&((s=i).version=r=t.version,eL(s),s.osgi&&!eb(r)&&(s.osgi=!1));break;case"BUILD/TOGGLE_ARTIFACT":"lwjgl"!==t.artifact&&((e,t)=>{e.contents[t]=!e.contents[t];let i=e.artifacts.allIds.filter(t=>e.contents[t]);if(i.length===e.artifacts.allIds.length){e.preset=G.All;return}if(1===i.length){e.preset=G.None;return}e.presets.allIds.some(t=>{if(t===G.Custom||t===G.All||t===G.None)return!1;let n=e.presets.byId[t];if(void 0!==n.artifacts){let a=n.artifacts.filter(t=>!!e.artifacts.byId[t]);if(a.length===i.length&&a.every((e,t)=>e===i[t]))return e.preset=t,!0}return!1})||(e.preset=G.Custom)})(i,t.artifact);break;case"BUILD/TOGGLE_ADDON":o=i,l=t.addon,o.selectedAddons.includes(l)?o.selectedAddons=o.selectedAddons.filter(e=>e!==l):o.selectedAddons.push(l)}})},function(){let e=localStorage.getItem(ej);if(null!==e)try{ey(J,JSON.parse(e))}catch(e){localStorage.removeItem(ej)}return J}()));function eE(){return eA(e=>e.dispatch)}eA.subscribe(e=>{eS(e)});var e$=i(5568),eG=i(8938);let eM=new Map;async function eR(e){var t;let i;try{i=await fetch(e,{method:"GET",mode:"cors",credentials:"omit",headers:{Accept:"text/plain"}})}catch(e){return{error:e.message}}return i.status!==eG.s.OK?{error:await (0,eG.E)(i)}:{lastModified:null!=(t=i.headers.get("Last-Modified"))?t:"N/A",version:await i.text()}}let eD=new Intl.DateTimeFormat([],{year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",timeZoneName:"short"}),eN=e=>{let t,i,n,a,s,r,o=(0,g.c)(14),{name:l}=e;o[0]!==l?(t=function(e){if(!eM.has(e)){let t=`https://build.lwjgl.org/${e}`;"release"===e&&(t+=`/${J.versions["0"]}`),t+="/bin/build.txt",eM.set(e,eR(t))}return eM.get(e)}(l),o[0]=l,o[1]=t):t=o[1];let d=(0,w.use)(t),c="error"in d?"$critical9":"inherit";if(o[2]!==c?(i={fontFamily:"$mono",color:c},o[2]=c,o[3]=i):i=o[3],o[4]!==l||o[5]!==d){var p;n="error"in d?d.error:(p=d.version,"release"!==l?p:p.split("build")[0].trim()),o[4]=l,o[5]=d,o[6]=n}else n=o[6];return o[7]===Symbol.for("react.memo_cache_sentinel")?(a=(0,h.jsx)("br",{}),o[7]=a):a=o[7],o[8]!==d?(s="lastModified"in d?eD.format(new Date(d.lastModified)):(0,h.jsx)("br",{}),o[8]=d,o[9]=s):s=o[9],o[10]!==i||o[11]!==n||o[12]!==s?(r=(0,h.jsxs)(e$.E,{size:"sm",css:i,children:[n,a,s]}),o[10]=i,o[11]=n,o[12]=s,o[13]=r):r=o[13],r};var ek=i(1811),eC=i(1794),eW=i(7258),eP=i(7139);(0,eP.k)('<symbol id="fa/regular/times" viewBox="0 0 320 512"><path d="M207.6 256l107.72-107.72c6.23-6.23 6.23-16.34 0-22.58l-25.03-25.03c-6.23-6.23-16.34-6.23-22.58 0L160 208.4 52.28 100.68c-6.23-6.23-16.34-6.23-22.58 0L4.68 125.7c-6.23 6.23-6.23 16.34 0 22.58L112.4 256 4.68 363.72c-6.23 6.23-6.23 16.34 0 22.58l25.03 25.03c6.23 6.23 16.34 6.23 22.58 0L160 303.6l107.72 107.72c6.23 6.23 16.34 6.23 22.58 0l25.03-25.03c6.23-6.23 6.23-16.34 0-22.58L207.6 256z"/></symbol>');let eT=e=>{let t,i,n,a,s,r,o,l,d=(0,g.c)(23),{build:c}=e,p=(0,D.dv)(),{dispatch:m,selectedBuild:u,byId:v}=eA(eB);d[0]!==c||d[1]!==m?(t=()=>{m({type:"BUILD/SELECT_TYPE",build:c})},d[0]=c,d[1]=m,d[2]=t):t=d[2];let f=t,b=u===c,L=v[c],y=null!==u&&!b&&p<D.EA.lg;return d[3]!==L.title?(i=(0,h.jsx)(e$.D,{level:2,children:L.title}),d[3]=L.title,d[4]=i):i=d[4],d[5]===Symbol.for("react.memo_cache_sentinel")?(n={fontFamily:"$serif",fontStyle:"italic"},d[5]=n):n=d[5],d[6]!==L.description?(a=(0,h.jsx)(e$.E,{css:n,children:L.description}),d[6]=L.description,d[7]=a):a=d[7],d[8]===Symbol.for("react.memo_cache_sentinel")?(s=(0,h.jsx)(eW.w,{size:"lg"}),d[8]=s):s=d[8],d[9]!==c?(r=(0,h.jsx)(w.Suspense,{fallback:s,children:(0,h.jsx)(eN,{name:c})}),d[9]=c,d[10]=r):r=d[10],d[11]!==p||d[12]!==b?(o=b&&p<D.EA.lg?(0,h.jsx)(ek.$n,{rounding:"icon",variant:"text",tone:"neutral",title:"Close","aria-label":"Close",children:(0,h.jsx)(eC.I,{name:"fa/regular/times"})}):null,d[11]=p,d[12]=b,d[13]=o):o=d[13],d[14]!==c||d[15]!==b||d[16]!==f||d[17]!==y||d[18]!==i||d[19]!==a||d[20]!==r||d[21]!==o?(l=(0,h.jsxs)(eJ,{build:c,selected:b,hidden:y,onClick:f,children:[i,a,r,o]}),d[14]=c,d[15]=b,d[16]=f,d[17]=y,d[18]=i,d[19]=a,d[20]=r,d[21]=o,d[22]=l):l=d[22],l},eJ=(0,R.I4)("div",{backgroundColor:"$accent3",borderRadius:"$md",padding:"1rem",textAlign:"center",cursor:"pointer",userSelect:"none",zIndex:1,border:"2px s
1olid $accent12",".dark &":{borderColor:"$accent1"},"@lg":{transition:"transform, filter 0.083s ease-out"},variants:{build:{release:{h2:{color:"$accent11"}},nightly:{h2:{color:"$caution11"}}},hidden:{true:{display:"none"}},selected:{false:{"&:active":{filter:"brightness(.9)",transform:"translateY(2px)"}},true:{borderBottomLeftRadius:0,borderBottomRightRadius:0,"@lg":{transform:"translateY(calc(1.5rem + 2px))",borderBottom:"none"},"@lg-down":{margin:"0 calc($gutter * -1)",backgroundColor:"transparent",borderTop:"none",borderLeft:"none",borderRight:"none",button:{position:"absolute",top:0,right:"$sm",fontSize:"1.5rem"}}}}}});function eB(e){return{dispatch:e.dispatch,selectedBuild:e.build,byId:e.builds.byId}}let eV=(0,R.I4)(M.x,{gap:"$xxsm"}),e_=e=>{let{children:t,predicate:i}=e;return eA(i)?t:null};var eF=i(1010);let eU="ui/checkbox/checked",eX="ui/checkbox/indeterminate",ez="ui/radio/checked",eH="ui/switch";(0,eP.k)(`<symbol id="${eU}" viewBox="0 0 24 24"><path fill="none" stroke-width="2" stroke="currentColor" d="M19.7 6.3c-.4-.4-1-.4-1.4 0L9 15.6l-3.3-3.3c-.4-.4-1-.4-1.4 0s-.4 1 0 1.4l4 4c.2.2.4.3.7.3s.5-.1.7-.3l10-10c.4-.4.4-1 0-1.4z"></path></svg>`),(0,eP.k)(`<symbol id="${eX}" viewBox="0 0 24 24"><path fill="none" stroke-width="2" stroke="currentColor" d="M18 11H6c-.6 0-1 .4-1 1s.4 1 1 1h12c.6 0 1-.4 1-1s-.4-1-1-1z"></path></symbol>`),(0,eP.k)(`<symbol id="${ez}" viewBox="-4 -4 8 8"><circle r="2" fill="currentColor"/></symbol>`),(0,eP.k)(`<symbol id="${eH}" viewBox="-4 -4 8 8"><circle r="3" fill="currentColor"/></symbol>`);let eZ=(0,R.I4)(eF.a,{flexGrow:0,flexShrink:0,flexBasis:"0.75rem"}),eY=(0,R.I4)("label",{"--line-height-base":"1.5em","--control-width":"1em","--control-height":"1em",display:"flex",position:"relative",userSelect:"none",cursor:"pointer","@sm-down":{flexDirection:"row-reverse",justifyContent:"space-between",padding:"$xsm $sm",margin:"0 calc($sm * -1)"},variants:{disabled:{true:{pointerEvents:"none",opacity:.5}}}}),eK=(0,R.I4)("input",{border:0,width:1,height:1,margin:-1,padding:0,position:"absolute",clip:"rect(1px,1px,1px,1px)",overflow:"clip",whiteSpace:"nowrap",transitionDuration:"0.15s",transitionTimingFunction:"ease-in-out","&:not(:focus) + *":{transitionDuration:"0.15s",transitionTimingFunction:"ease-in-out",transitionProperty:"background-color, border-color"},"&:focus + *":{boxShadow:"0 0 0 3px $colors$accent7"},"&:not(:checked):focus + *":{color:"$accent10",borderColor:"$accent10"}}),eq=(0,R.I4)("svg",{width:"calc(1em - 1px)",height:"calc(1em - 1px)",transition:"transform .15s ease-in-out"});function eQ(e){return(0,h.jsx)(eq,{focusable:!1,"aria-hidden":!0,preserveAspectRatio:"xMidYMid meet",children:(0,h.jsx)("use",{xlinkHref:`#${e}`})})}let e1=(0,R.I4)("div",{width:"var(--control-width, 1em)",height:"var(--control-height, 1em)",border:"1px solid $neutral9",backgroundColor:"$body",color:"$accent9",flex:"0 0 var(--control-width, 1em)",mt:"calc((var(--line-height-base) - var(--control-height)) / 2)",display:"flex",alignItems:"center",justifyContent:"center",variants:{variant:{checkbox:{borderRadius:"$rounded"},switch:{"--control-width":"1.75em",borderRadius:"2.25em",transitionDuration:"0.15s",transitionTimingFunction:"ease-in-out",transitionProperty:"background-color",[`${eq}`]:{width:"1em",height:"1em",transform:"translateX(-0.38em)"}},radio:{borderRadius:"$full"}},checked:{true:{backgroundColor:"$accent9",color:"$body",borderColor:"$accent10"}},disabled:{true:{opacity:.75}}},compoundVariants:[{checked:!1,variant:"switch",css:{color:"$neutral9"}},{checked:!0,variant:"switch",css:{color:"$accent1",backgroundColor:"$accent9",[`${eq}`]:{transform:"translateX(.38em)"}}}]}),e0=(0,R.I4)("div",{fontSize:"$sm"}),e4=e=>{let t,i,n,a,s,r,o=(0,g.c)(24),{value:l,onChange:d,checked:c,disabled:p,indeterminate:m,children:u,description:v,variant:f}=e,b=void 0!==c&&c,w=void 0!==p&&p,L=void 0!==m&&m,y=void 0===f?"checkbox":f;o[0]!==d||o[1]!==l?(t=e=>{d(e,l)},o[0]=d,o[1]=l,o[2]=t):t=o[2],o[3]!==b||o[4]!==w||o[5]!==t?(i=(0,h.jsx)(eK,{type:"checkbox",disabled:w,checked:b,onChange:t}),o[3]=b,o[4]=w,o[5]=t,o[6]=i):i=o[6];let x=b||L;return o[7]!==b||o[8]!==L||o[9]!==y?(n="switch"===y?eQ(eH):b||L?eQ(L?eX:eU):null,o[7]=b,o[8]=L,o[9]=y,o[10]=n):n=o[10],o[11]!==w||o[12]!==x||o[13]!==n||o[14]!==y?(a=(0,h.jsx)(e1,{variant:y,checked:x,disabled:w,children:n}),o[11]=w,o[12]=x,o[13]=n,o[14]=y,o[15]=a):a=o[15],o[16]!==u||o[17]!==v?(s=u&&(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(eZ,{}),(0,h.jsxs)("div",{children:[u,v&&(0,h.jsx)(e0,{children:v})]})]}),o[16]=u,o[17]=v,o[18]=s):s=o[18],o[19]!==w||o[20]!==s||o[21]!==i||o[22]!==a?(r=(0,h.jsxs)(eY,{disabled:w,children:[i,a,s]}),o[19]=w,o[20]=s,o[21]=i,o[22]=a,o[23]=r):r=o[23],r},e2=e=>
1{let t,i,n,a,s,r,o=(0,g.c)(21),{value:l,onChange:d,checked:c,disabled:p,children:m,description:u}=e,v=void 0!==c&&c,f=void 0!==p&&p;return o[0]!==d||o[1]!==l?(t=e=>{d(e,l)},o[0]=d,o[1]=l,o[2]=t):t=o[2],o[3]!==v||o[4]!==f||o[5]!==t?(i=(0,h.jsx)(eK,{type:"radio",disabled:f,checked:v,onChange:t}),o[3]=v,o[4]=f,o[5]=t,o[6]=i):i=o[6],o[7]!==v?(n=v?eQ(ez):null,o[7]=v,o[8]=n):n=o[8],o[9]!==v||o[10]!==f||o[11]!==n?(a=(0,h.jsx)(e1,{variant:"radio",checked:v,disabled:f,children:n}),o[9]=v,o[10]=f,o[11]=n,o[12]=a):a=o[12],o[13]!==m||o[14]!==u?(s=m&&(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(eZ,{}),(0,h.jsxs)("div",{children:[m,u&&(0,h.jsx)(e0,{children:u})]})]}),o[13]=m,o[14]=u,o[15]=s):s=o[15],o[16]!==f||o[17]!==i||o[18]!==a||o[19]!==s?(r=(0,h.jsxs)(eY,{disabled:f,children:[i,a,s]}),o[16]=f,o[17]=i,o[18]=a,o[19]=s,o[20]=r):r=o[20],r},e3=e=>{let t,i,n,a,s,r,o=(0,g.c)(14);o[0]!==e?({checked:i,hidden:a,action:t,...n}=e,o[0]=e,o[1]=t,o[2]=i,o[3]=n,o[4]=a):(t=o[1],i=o[2],n=o[3],a=o[4]);let l=void 0===a?e6:a,d=eA(i),c=eA(l),p=eE();o[5]!==t||o[6]!==p||o[7]!==d?(s=()=>{p(t(!d))},o[5]=t,o[6]=p,o[7]=d,o[8]=s):s=o[8];let m=s;return o[9]!==d||o[10]!==c||o[11]!==m||o[12]!==n?(r=c?null:(0,h.jsx)(e4,{checked:d,onChange:m,...n}),o[9]=d,o[10]=c,o[11]=m,o[12]=n,o[13]=r):r=o[13],r};function e6(){return!1}let e8=e=>{let t,i,n,a=(0,g.c)(14),{name:s,value:r,options:o,action:l}=e,d=eA(r),c=eA(o),p=eE();a[0]!==l||a[1]!==p?(t=(e,t)=>{p(l(t))},a[0]=l,a[1]=p,a[2]=t):t=a[2];let m=t;if(a[3]!==s||a[4]!==m||a[5]!==c||a[6]!==d){let e;a[8]!==s||a[9]!==m||a[10]!==d?(e=(e,t)=>{let{value:i,label:n,disabled:a}=e;return(0,h.jsx)(e2,{value:i,checked:i===d,onChange:m,disabled:!0===a,children:n},`${s}-${"string"==typeof i?i:t}`)},a[8]=s,a[9]=m,a[10]=d,a[11]=e):e=a[11],i=c.map(e),a[3]=s,a[4]=m,a[5]=c,a[6]=d,a[7]=i}else i=a[7];return a[12]!==i?(n=(0,h.jsx)(h.Fragment,{children:i}),a[12]=i,a[13]=n):n=a[13],n};i(8603),(0,eP.k)('<symbol id="fa/brands/freebsd" viewBox="0 0 448 512"><path d="M303.7 96.2c11.1-11.1 115.5-77 139.2-53.2 23.7 23.7-42.1 128.1-53.2 139.2-11.1 11.1-39.4.9-63.1-22.9-23.8-23.7-34.1-52-22.9-63.1zM109.9 68.1C73.6 47.5 22 24.6 5.6 41.1c-16.6 16.6 7.1 69.4 27.9 105.7 18.5-32.2 44.8-59.3 76.4-78.7zM406.7 174c3.3 11.3 2.7 20.7-2.7 26.1-20.3 20.3-87.5-27-109.3-70.1-18-32.3-11.1-
153.4 14.9-48.7 5.7-3.6 12.3-7.6 19.6-11.6-29.8-15.5-63.6-24.3-99.5-24.3-119.1 0-215.6 96.5-215.6 215.6 0 119 96.5 215.6 215.6 215.6S445.3 380.1 445.3 261c0-38.4-10.1-74.5-27.7-105.8-3.9 7-7.6 13.3-10.9 18.8z"/></symbol>'),i(925),(0,eP.k)('<symbol id="fa/brands/windows" viewBox="0 0 448 512"><path d="M0 93.7l183.6-25.3v177.4H0V93.7zm0 324.6l183.6 25.3V268.4H0v149.9zm203.8 28L448 480V268.4H203.8v177.9zm0-380.6v180.1H448V32L203.8 65.7z"/></symbol>');let e5=()=>{let e,t,i,n=(0,g.c)(17),a=eE(),{allIds:s,byId:r}=eA(q),o=eA(Q),l=eA(ee),d=ef(o);if(n[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,h.jsx)("h4",{children:"Natives"}),n[0]=e):e=n[0],n[1]!==a||n[2]!==r||n[3]!==s||n[4]!==l||n[5]!==d){let e,i;n[7]!==r||n[8]!==d?(e=e=>ef(r[e].since)<=d,n[7]=r,n[8]=d,n[9]=e):e=n[9],n[10]!==a||n[11]!==r||n[12]!==l||n[13]!==d?(i=e=>(0,h.jsxs)(e4,{checked:l[e],value:e,onChange:(e,t)=>a({type:"BUILD/TOGGLE_PLATFORM",platform:t}),children:[(e=>{switch(e){case O.FreeBSD:return(0,h.jsx)(eC.I,{"aria-label":"FreeBSD",name:"fa/brands/freebsd"},`fa-${e}`);case O.Linux:case O.LinuxARM64:case O.LinuxARM32:case O.LinuxPPC64LE:case O.LinuxRISCV64:return(0,h.jsx)(eC.I,{"aria-label":"Linux",name:"fa/brands/linux"},`fa-${e}`);case O.MacOS:case O.MacOSARM64:return(0,h.jsx)(eC.I,{"aria-label":"Apple",name:"fa/brands/apple"},`fa-${e}`);case O.Windows:case O.WindowsX86:case O.WindowsARM64:return(0,h.jsx)(eC.I,{"aria-label":"Windows",name:"fa/brands/windows"},`fa-${e}`)}})(e)," ",e===O.Windows&&d<ef(r[O.WindowsX86].since)?"Windows x64/x86":r[e].title]},e),n[10]=a,n[11]=r,n[12]=l,n[13]=d,n[14]=i):i=n[14],t=s.filter(e).map(i),n[1]=a,n[2]=r,n[3]=s,n[4]=l,n[5]=d,n[6]=t}else t=n[6];return n[15]!==t?(i=(0,h.jsxs)(h.Fragment,{children:[e,t]}),n[15]=t,n[16]=i):i=n[16],i};var e7=i(984);let e9=()=>{let e,t,i,n=(0,g.c)(17),a=eE(),s=eA(Y),{allIds:r,byId:o}=eA(et),l=eA(ei),d=eA(z);n[0]!==a?(e=(e,t)=>a({type:"BUILD/TOGGLE_ADDON",addon:t}),n[0]=a,n[1]=e):e=n[1];let c=e;if(n[2]!==r||n[3]!==o||n[4]!==d||n[5]!==s||n[6]!==c||n[7]!==l){let e;n[9]!==o||n[10]!==d||n[11]!==s||n[12]!==c||n[13]!==l?(e=e=>{let t=o[e],i=void 0!==t.modes&&!t.modes.includes(s);return(0,h.jsx)(te,{addon:t,disabled:i,selected:l.includes(e),showDescriptions:d,onChange:c},e)},n[9]=o,n[10]=d,n[11]=s,n[12]=c,n[13]=l,n[14]=e):e=n[14],t=r.map(e),n[2]=r,n[3]=o,n[4]=d,n[5]=s,n[6]=c,n[7]=l,n[8]=t}else t=n[8];return n[15]!==t?(i=(0,h.jsx)(h.Fragment,{children:t}),n[15]=t,n[16]=i):i=n[16],i},te=e=>{let t=(0,g.c)(21),{addon:i,disabled:n,selected:a,showDescriptions:s,onChange:r}=e,o=`${i.title} v${i.maven.version}`;if(s){let e,s,l,d,c;t[0]===Symbol.for("react.memo_cache_sentinel")?(e={mb:"$sm"},t[0]=e):e=t[0],t[1]!==i.description?(s=(0,h.jsx)("p",{children:i.description}),t[1]=i.description,t[2]=s):s=t[2],t[3]!==i.website?(l=i.website&&(0,h.jsx)("p",{children:(0,h.jsx)(e7.M,{href:i.website,rel:"noopener external",target:"_blank",children:i.website})}),t[3]=i.website,t[4]=l):l=t[4],t[5]!==s||t[6]!==l?(d=(0,h.jsxs)(eF.a,{css:e,children:[s,l]}),t[5]=s,t[6]=l,t[7]=d):d=t[7];let p=d,m=!n&&a;return t[8]!==i.id||t[9]!==p||t[10]!==n||t[11]!==o||t[12]!==r||t[13]!==m?(c=(0,h.jsx)(e4,{description:p,value:i.id,disabled:n,checked:m,onChange:r,children:o}),t[8]=i.id,t[9]=p,t[10]=n,t[11]=o,t[12]=r,t[13]=m,t[14]=c):c=t[14],c}{let e,s=!n&&a;return t[15]!==i.id||t[16]!==n||t[17]!==o||t[18]!==r||t[19]!==s?(e=(0,h.jsx)(e4,{value:i.id,disabled:n,checked:s,onChange:r,children:o}),t[15]=i.id,t[16]=n,t[17]=o,t[18]=r,t[19]=s,t[20]=e):e=t[20],e}},tt=e=>e.version,ti=()=>{let e,t,i=(0,g.c)(4),n=eA(tt);i[0]===Symbol.for("react.memo_cache_sentinel")?(e={fontSize:"$xs"},i[0]=e):e=i[0];let a=`https://github.com/LWJGL/lwjgl3/releases/tag/${n}`;return i[1]!==a||i[2]!==n?(t=(0,h.jsx)("p",{children:(0,h.jsxs)(e7.M,{css:e,href:a,rel:"noopener external",target:"_blank",children:["release notes for ",n]})}),i[1]=a,i[2]=n,i[3]=t):t=i[3],t},tn=e=>{let{children:t,mode:i}=e,n=(0,w.useRef)(!1),a=n.current;return((0,w.useEffect)(()=>{"visible"===i&&(n.current=!0)}),"hidden"!==i||a)?(0,h.jsx)(w.Activity,{children:t,mode:i}):null},ta=()=>{let e,t,i,n,a,s=(0,g.c)(26),r=eE();s[0]!==r?(e=(e,t)=>r({type:"BUILD/TOGGLE_ARTIFACT",artifact:t}),s[0]=r,s[1]=e):e=s[1];let o=e,l=eA(en),d=eA(ea),c=eA(z),p=eA(ee),{byId:m}=eA(q),{allIds:u,byId:v}=eA(es);s[2]!==p?(t=Object.keys(p),s[2]=p,s[3]=t):t=s[3],s[4]!==p||s[5]!==t?(i=t.filter(e=>!0===p[e]),s[4]=p,s[5]=t,s[6]=i):i=s[6];let f=i;if(s[7]!==u||s[8]!==d||s[9]!==v||s[10]!==l||s[11]!==c||s[12]!==m||s[13]!==o||s[14]!==f){let e;s[16]!==d||s[17]!==v||s[18]!==l||s[19]!==c||s[20]!==m||s[21]!==o||s[22]!==f?(e=e=>{let t=v[e],i=!0===d[e];return(0,h.jsx)(tr,{natives:m,platformsSelected:f,artifact:t,disabled:!i||!0===t.required,selected:i&&!0===l[e],showDescriptions:c,onChange:o},e)},s[16]=d,s[17]=v,s[18]=l,s[19]=c,s[20]=m,s[21]=o,s[22]=f,s[23]=e):e=s[23],n=u.map(e),s[7]=u,s[8]=d,s[9]=v,s[
110]=l,s[11]=c,s[12]=m,s[13]=o,s[14]=f,s[15]=n}else n=s[15];return s[24]!==n?(a=(0,h.jsx)(h.Fragment,{children:n}),s[24]=n,s[25]=a):a=s[25],a},ts=e=>{let t,i,n,a,s,r=(0,g.c)(15),{natives:o,platformsSelected:l,artifact:d,disabled:c}=e;if(r[0]===Symbol.for("react.memo_cache_sentinel")?(t={mb:"$sm",maxWidth:"80vw",wrap:"word"},r[0]=t):t=r[0],r[1]!==d.natives||r[2]!==d.nativesOptional||r[3]!==c||r[4]!==o||r[5]!==l){var p;let e;i=d.natives&&!0!==d.nativesOptional&&(p=d.natives,0===(e=l.filter(e=>!p.includes(e))).length?null:e.length>=p.length?(0,h.jsxs)(e$.E,{css:{color:c?"$caution6":"$caution5"},children:[(0,h.jsx)("em",{children:"* Supported platforms: "}),p.map(e=>o[e].title).join(", ")]}):(0,h.jsxs)(e$.E,{css:{color:c?"$critical6":"$critical5"},children:[(0,h.jsx)("em",{children:"* Not available on: "}),e.map(e=>o[e].title).join(", ")]})),r[1]=d.natives,r[2]=d.nativesOptional,r[3]=c,r[4]=o,r[5]=l,r[6]=i}else i=r[6];return r[7]!==d.description?(n=(0,h.jsx)("p",{dangerouslySetInnerHTML:{__html:d.description}}),r[7]=d.description,r[8]=n):n=r[8],r[9]!==d.website?(a=void 0!==d.website&&(0,h.jsx)("p",{children:(0,h.jsx)(e7.M,{href:d.website,rel:"noopener external",target:"_blank",css:{wordBreak:"break-all"},children:d.website})}),r[9]=d.website,r[10]=a):a=r[10],r[11]!==i||r[12]!==n||r[13]!==a?(s=(0,h.jsxs)(eF.a,{css:t,children:[i,n,a]}),r[11]=i,r[12]=n,r[13]=a,r[14]=s):s=r[14],s},tr=e=>{let t,i,n,a=(0,g.c)(15),{natives:s,platformsSelected:r,artifact:o,disabled:l,selected:d,showDescriptions:c,onChange:p}=e,m=c?"visible":"hidden";return a[0]!==o||a[1]!==l||a[2]!==s||a[3]!==r?(t=(0,h.jsx)(ts,{natives:s,platformsSelected:r,artifact:o,disabled:l}),a[0]=o,a[1]=l,a[2]=s,a[3]=r,a[4]=t):t=a[4],a[5]!==m||a[6]!==t?(i=(0,h.jsx)(tn,{mode:m,children:t}),a[5]=m,a[6]=t,a[7]=i):i=a[7],a[8]!==o.id||a[9]!==o.title||a[10]!==l||a[11]!==p||a[12]!==d||a[13]!==i?(n=(0,h.jsx)(e4,{description:i,value:o.id,disabled:l,checked:d,onChange:p,children:o.title}),a[8]=o.id,a[9]=o.title,a[10]=l,a[11]=p,a[12]=d,a[13]=i,a[14]=n):n=a[14],n};var to=i(7543),tl=i(1895);let td=(0,R.AH)({pointerEvents:"none",display:"flex",alignItems:"center",justifyContent:"center",variants:{open:{true:{pointerEvents:"auto",position:"fixed",zIndex:1040,top:0,left:0,right:0,bottom:0}}}}),tc=(0,R.i7)({to:{transform:"rotate(360deg)"}}),tp=(0,R.i7)({"0%":{strokeDasharray:"1px 200px",strokeDashoffset:0},"50%":{strokeDasharray:"100px 200px",strokeDashoffset:"-15px"},"100%":{strokeDasharray:"100px 200px",strokeDashoffset:"-120px"}}),tm=(0,R.I4)("svg",{display:"inline-block",lineHeight:1,color:"$primary500",circle:{stroke:"currentcolor"},variants:{variant:{determinate:{},static:{transition:"transform 0.3s cubic-bezier(0, 0, 0.2, 1)",circle:{transition:"stroke-dashoffset 0.3s cubic-bezier(0, 0, 0.2, 1)"}},indeterminate:{animation:`${tc} 1.8s linear infinite`,circle:{animation:`${tp} 1.8s ease-in-out infinite`,strokeDasharray:"80px, 200px",strokeDashoffset:0}}}}}),tu=e=>{let t,i,n,a,s,r,o,l,d,c,p,m,u=(0,g.c)(37);u[0]!==e?({size:n,thickness:a,value:s,variant:r,style:i,...t}=e,u[0]=e,u[1]=t,u[2]=i,u[3]=n,u[4]=a,u[5]=s,u[6]=r):(t=u[1],i=u[2],n=u[3],a=u[4],s=u[5],r=u[6]);let v=void 0===n?40:n,f=void 0===a?3.6:a,b=void 0===s?0:s,w=void 0===r?"indeterminate":r;if(u[7]!==f||u[8]!==b||u[9]!==w){if(o={},d={},l={},"determinate"===w||"static"===w){let e,t,i=2*Math.PI*((44-f)/2);if(u[13]!==i?(e=i.toFixed(3),u[13]=i,u[14]=e):e=u[14],o.strokeDasharray=e,u[15]!==b?(t=Math.round(b),u[15]=b,u[16]=t):t=u[16],l["aria-valuenow"]=t,"static"===w){let e,t=(100-b)/100*i;u[17]!==t?(e=t.toFixed(3),u[17]=t,u[18]=e):e=u[18],o.strokeDashoffset=`${e}px`,d.transform="rotate(-90deg)"}else{var L,y;let e,t,n,a=(L=(100-b)/100)*L*i;u[19]!==a?(e=a.toFixed(3),u[19]=a,u[20]=e):e=u[20],o.strokeDashoffset=`${e}px`;let s=270*(n=y=(Math.min(Math.max(0,b/70),1)-0)/1,--n*n*n+1);u[21]!==s?(t=s.toFixed(3),u[21]=s,u[22]=t):t=u[22],d.transform=`rotate(${t}deg)`}}u[7]=f,u[8]=b,u[9]=w,u[10]=o,u[11]=l,u[12]=d}else o=u[10],l=u[11],d=u[12];u[23]!==d||u[24]!==v||u[25]!==i?(c={width:v,height:v,...d,...i},u[23]=d,u[24]=v,u[25]=i,u[26]=c):c=u[26];let x=(44-f)/2;return u[27]!==o||u[28]!==x||u[29]!==f?(p=(0,h.jsx)("circle",{style:o,cx:44,cy:44,r:x,fill:"none",strokeWidth:f}),u[27]=o,u[28]=x,u[29]=f,u[30]=p):p=u[30],u[31]!==t||u[32]!==l||u[33]!==c||u[34]!==p||u[35]!==w?(m=(0,h.jsx)(tm,{role:"progressbar",variant:w,style:c,...l,...t,viewBox:"22 22 44 44",children:p}),u[31]=t,u[32]=l,u[33]=c,u[34]=p,u[35]=w,u[36]=m):m=u[36],m};var tv=i(6444),th=i(6742),tg=i(5193),tf=i.n(tg);function tb(e){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([String.fromCharCode(65279),e],{type:e.type}):e}if("msSaveOrOpenBlob"in navigator)a=function(e,t,i){return navigator.msSaveOrOpenBlob(!0!==i?e:tb(e),t)};else{let e=function(){return window.URL||window.webkitURL||window},t=document.createElement("a"),i=function(e){var t=new MouseEvent("click");e.dispatchEvent(t)},n=function(t){setTimeout(()=>e().revokeObjectURL(t),4e4)};a=function(a,s,r){let o=e().createObjectURL(!0!==r?a:tb(a));"download"in t?setTimeout(function(){t.href=o,t.download=s,i(t),n(o)},0):(window.location.href=o,n(o))}}let tw=a,tL=async e=>{let t=await fetch(`/bin/${e}`,{method:"GET",mode:"same-origin",credentials:"omit",headers:{Accept:"application/json"}});if(t.status!==eG.s.OK)throw Error(await (0,eG.E)(t));return await t.json()};async function ty(e,t){let i={method:"GET",mode:"cors",credentials:"omit"};void 0!==t&&(i.signal=t);let n=await fetch(`https://build.lwjgl.org/${e}`,i);if(n.status!==eG.s.OK)throw Error(await (0,eG.E)(n));return{payload:await n.blob(),filename:e.split("/").pop()}}let tx=null,tI=!1;async function tO(e,t,i,n,a){var s;let r,o,l,d,c,p,m,u,v,{build:h,path:g,selected:f,platforms:b,source:w,javadoc:L,includeJSON:y,version:x,addons:j}=function(e){let t,i,n=e.natives.allIds.length,a=e.platform;if(e.build===I.Release)t=`release/${e.version}`,i=I.Release;else if(null!==e.build)i=e.build,t=e.build;else throw Error("no build selected");let s=e.artifacts.allIds.filter(t=>{if(!e.contents[t])return!1;let i=e.artifacts.byId[t];return void 0===i.natives||!0===i.nativesOptional||i.natives.length===n||i.natives.some(e=>a[e])}
1),r=e.selectedAddons.map(t=>({id:t,version:e.addons.byId[t].maven.version}));return{path:t,selected:s,build:i,platforms:a,source:e.source,javadoc:e.javadoc,includeJSON:e.includeJSON,version:e.version,addons:r}}(t);n("Downloading file manifest");try{r=await tL(g)}catch(e){i(e.message);return}let S=(s=r,o=[],l=RegExp(`^${g}/bin/`),d=/-javadoc\.jar$/,c=/-sources\.jar$/,p=/-natives-/,m=/-natives-(\w+(?:-\w+)*)\.jar$/,u={},f.forEach(e=>{u[e]=!0}),s.forEach(e=>{let t=e.replace(l,"");if(!t.endsWith("/")&&t.length){if(-1===t.indexOf("/"))return void o.push(t);if(t.split("/")[0]in u){if(d.test(t)&&!1===L)return;if(c.test(t)&&!1===w)return;if(p.test(t)){let e=t.match(m);if(null===e)return;let i=function(e){switch(e){case"freebsd":return O.FreeBSD;case"linux":return O.Linux;case"linux-arm64":return O.LinuxARM64;case"linux-arm32":return O.LinuxARM32;case"linux-ppc64le":return O.LinuxPPC64LE;case"linux-riscv64":return O.LinuxRISCV64;case"macos":return O.MacOS;case"macos-arm64":return O.MacOSARM64;case"windows":return O.Windows;case"windows-x86":return O.WindowsX86;case"windows-arm64":return O.WindowsARM64}return null}(e[1]);if(null===i||!0!==b[i])return}o.push(t)}}}),o.map(e=>`${g}/bin/${e}`));j.length&&(S=S.concat((v=[],j.forEach(e=>{let{id:t,version:i}=e;v.push(`addons/${t}/${t}-${i}.jar`),v.push(`addons/${t}/${t}_license.txt`),L&&v.push(`addons/${t}/${t}-${i}-javadoc.jar`),w&&v.push(`addons/${t}/${t}-${i}-sources.jar`)}),v)));let A=new(tf());n(`Downloading ${S.length} files`);try{e.current=!0,await function(e,t,i){let n=e.length,a=Math.min(6,n),s=e.values(),r=[],o=0;tI=!1,"u">typeof AbortController&&(tx=new AbortController);for(let e=0;e<a;e+=1)r.push(new Promise(async(e,a)=>{for(let e of s){o+=1,i(`${o}/${n} - ${e}`);try{if(tI){let e=Error();throw e.name="AbortError",e}let i=await ty(e,null!==tx?tx.signal:void 0);t.file(i.filename,i.payload,{binary:!0})}catch(e){a(e);return}}e()}));return Promise.all(r)}(S,A,n),e.current=!1}catch(e){i("AbortError"!==e.name?e.message:void 0);return}if(y){let e=V(t);if(null!==e){let t=new Blob([JSON.stringify(e,null,2)],{type:"application/json",endings:"native"});A.file(_(e),t,{binary:!0})}}n("Compressing files"),tw(await A.generateAsync({type:"blob"}),`lwjgl-${h}-${h===I.Release?x:new Date().toISOString().slice(0,10)}-custom.zip`),a()}let tj=(0,R.I4)("dialog",{background:"$body",padding:"$gutter",borderRadius:"$rounded","&:focus":{outline:"none"},maxHeight:"100vh",overflow:"auto","-webkit-overflow-scrolling":"touch",overscrollBehavior:"contain","@sm":{background:"$neutral1",boxShadow:"$2xl"}}),tS=e=>{let t,i,n,a,s,r,o,l=(0,g.c)(10),{children:d,onClose:c}=e,p=(0,w.useRef)(null);(0,to.H)(),l[0]!==c?(t=()=>{c()},l[0]=c,l[1]=t):t=l[1];let m=t;return l[2]!==m?(i=()=>{let e=p.current;if(e)return(0,th.R)()&&(e.open||e.showModal(),e.addEventListener("cancel",m)),()=>{null!==e&&(0,th.R)()&&e.removeEventListener("cancel",m)}},n=[m],l[2]=m,l[3]=i,l[4]=n):(i=l[3],n=l[4]),(0,w.useEffect)(i,n),l[5]===Symbol.for("react.memo_cache_sentinel")?(a=td({open:!0}),l[5]=a):a=l[5],l[6]===Symbol.for("react.memo_cache_sentinel")?(s={backgroundColor:"rgba(0,0,0,.01)"},r={backgroundColor:"rgba(0,0,0,.75)"},l[6]=s,l[7]=r):(s=l[6],r=l[7]),l[8]!==d?(o=(0,h.jsx)(tl.P.div,{className:`dialog-backdrop ${a}`,style:s,animate:r,children:(0,h.jsx)(tj,{ref:p,children:d})}),l[8]=d,l[9]=o):o=l[9],o},tA=(0,R.I4)("pre",{overflow:"clip",overflowY:"auto",fontSize:"$sm"}),tE=e=>{let{ref:t}=e,i=eA(),[n,a]=(0,w.useState)(!1),s=(0,w.useRef)(!1),[r,o]=(0,w.useState)([]),l=(0,w.useEffectEvent)(e=>{o(t=>[...t,e])}),d=(0,w.useEffectEvent)(()=>{a(!1),o(e=>e.length?[]:e)}),c=(0,w.useCallback)(e=>{e&&alert(e),!0===s.current&&(tI=!0,null!==tx&&tx.abort()),d()},[]),p=(0,w.useCallback)(e=>{c()},[c]),m=(0,w.useCallback)(()=>{tO(s,i,c,l,d),a(!0)},[c,i]);return((0,w.useImperativeHandle)(t,()=>({start:m,stop:c})),(0,w.useEffect)(()=>c,[c]),n)?(0,h.jsx)(tS,{onClose:c,children:(0,h.jsxs)(M.x,{className:"dialog-content",css:{height:"100%",gap:"$gap",grid:"auto min-content / minmax(auto, 600px)","@sm":{height:"min(500px, 80vh)"}},children:[(0,h.jsx)(tA,{children:r.slice(0).reverse().map((e,t)=>(0,h.jsx)("div",{children:e},`log${t}`))}),(0,h.jsxs)(tv.s,{css:{justifyContent:"space-between",alignItems:"center"},children:[(0,h.jsx)(ek.$n,{variant:"outline",autoFocus:!0,onClick:p,children:"Cancel"}),(0,h.jsx)(tu,{size:36})]})]})}):null};var t$=i(3150);let tG=(0,t$.Ad)({memoize:t$.i5,memoizeOptions:{maxSize:2,equalityCheck:eO()}});(0,t$.Ad)({memoize:t$.i5,memoizeOptions:{maxSize:2,equalityCheck:function(e,t){if(Object.is(e,t))return!0;
1if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;let i=Object.keys(e),n=Object.keys(t);if(i.length!==n.length)return!1;for(let n=0;n<i.length;n+=1)if(!Object.prototype.hasOwnProperty.call(t,i[n])||!Object.is(e[i[n]],t[i[n]]))return!1;return!0}}}),(0,eP.k)('<symbol id="fa/duotone/folder-open" viewBox="0 0 576 512"><path d="M69.08 271.63L0 390.05V112a48 48 0 0 1 48-48h160l64 64h160a48 48 0 0 1 48 48v48H152a96.31 96.31 0 0 0-82.92 47.63z" class="s"/><path d="M152 256h400a24 24 0 0 1 20.73 36.09l-72.46 124.16A64 64 0 0 1 445 448H45a24 24 0 0 1-20.73-36.09l72.45-124.16A64 64 0 0 1 152 256z"/></symbol>');let tM=(0,R.I4)("input",{background:"white",border:"1px solid $accent9",borderRight:"none",px:"$sm",lineHeight:"2.5rem",borderRadius:"$rounded 0 0 $rounded",cursor:"pointer",userSelect:"none",textOverflow:"ellipsis",width:170,"@sm":{width:300},"&:active":{filter:"brightness(.9)"},"&::placeholder":{color:"$neutral9",fontStyle:"italic"},"&:focus":{outline:"none"}}),tR=e=>{let t,i,n,a,s,r,o,l,d,c,p,m,u,v,f=(0,g.c)(23);f[0]!==e?({disabled:t,placeholder:a,onChange:i,...n}=e,f[0]=e,f[1]=t,f[2]=i,f[3]=n,f[4]=a):(t=f[1],i=f[2],n=f[3],a=f[4]);let b=void 0===a?"Select a file…":a,[L,y]=(0,w.useState)(null),x=(0,w.useRef)(null);f[5]!==i?(s=e=>{y(e.target.files&&e.target.files.length?[...Array.from(e.target.files)]:null),null!=i&&i(e)},f[5]=i,f[6]=s):s=f[6];let I=s;f[7]===Symbol.for("react.memo_cache_sentinel")?(r=()=>{x&&null!=x.current&&x.current.click()},f[7]=r):r=f[7];let O=r;return o=null===L?"":1===L.length?L[0].name:`${L.length} files`,f[8]===Symbol.for("react.memo_cache_sentinel")?(l={display:"none"},f[8]=l):l=f[8],f[9]!==I||f[10]!==n?(d=(0,h.jsx)("input",{type:"file",ref:x,onChange:I,style:l,...n}),f[9]=I,f[10]=n,f[11]=d):d=f[11],f[12]!==o||f[13]!==b?(c=(0,h.jsx)(tM,{size:15,readOnly:!0,tabIndex:-1,value:o,onClick:O,placeholder:b}),f[12]=o,f[13]=b,f[14]=c):c=f[14],f[15]===Symbol.for("react.memo_cache_sentinel")?(p={borderLeft:"none",borderTopLeftRadius:0,borderBottomLeftRadius:0},f[15]=p):p=f[15],f[16]===Symbol.for("react.memo_cache_sentinel")?(m=(0,h.jsx)(eC.I,{name:"fa/duotone/folder-open"}),f[16]=m):m=f[16],f[17]!==t?(u=(0,h.jsx)(ek.$n,{tone:"accent",disabled:t,onClick:O,css:p,title:"Select file to upload","aria-label":"Select file to upload",children:m}),f[17]=t,f[18]=u):u=f[18],f[19]!==d||f[20]!==c||f[21]!==u?(v=(0,h.jsxs)(tv.s,{children:[d,c,u]}),f[19]=d,f[20]=c,f[21]=u,f[22]=v):v=f[22],v};(0,eP.k)('<symbol id="fa/duotone/folder-download" viewBox="0 0 512 512"><path d="M464,127.08H272l-64-64H48a48,48,0,0,0-48,48v288a48,48,0,0,0,48,48H464a48,48,0,0,0,48-48v-224A48,48,0,0,0,464,127.08ZM364.44,282.44,268,378.14a17.05,17.05,0,0,1-24,0l-96.42-95.7a16,16,0,0,1,11.25-27.34H224v-48a16,16,0,0,1,16-16h32a16,16,0,0,1,16,16v48h65.18A16,16,0,0,1,364.44,282.44Z" class="s"/><path d="M364.44,282.44,268,378.14a17.05,17.05,0,0,1-24,0l-96.42-95.7a16,16,0,0,1,11.25-27.34H224v-48a16,16,0,0,1,16-16h32a16,16,0,0,1,16,16v48h65.18A16,16,0,0,1,364.44,282.44Z"/></symbol>'),(0,eP.k)('<symbol id="fa/duotone/folder-upload" viewBox="0 0 512 512"><path d="M464,127.08H272l-64-64H48a48,48,0,0,0-48,48v288a48,48,0,0,0,48,48H464a48,48,0,0,0,48-48v-224A48,48,0,0,0,464,127.08Zm-110.81,192H288v48a16,16,0,0,1-16,16H240a16,16,0,0,1-16-16v-48H158.83a16,16,0,0,1-11.27-27.34L244,196a17.05,17.05,0,0,1,24,0l96.42,95.7A16,16,0,0,1,353.19,319.08Z" class="s"/><path d="M353.19,319.08H288v48a16,16,0,0,1-16,16H240a16,16,0,0,1-16-16v-48H158.83a16,16,0,0,1-11.27-27.34L244,196a17.05,17.05,0,0,1,24,0l96.42,95.7A16,16,0,0,1,353.19,319.08Z"/></symbol>');let tD=(0,R.I4)("div",{backgroundColor:"$accent5",padding:"1rem 0",textAlign:"center",position:"fixed",left:0,bottom:0,width:"100%",display:"grid",gap:"0.5rem",justifyContent:"center",alignItems:"center",gridAutoFlow:"column"}),tN=e=>{let{configDownload:t,configLoad:i,children:n}=e,[a,s]=(0,w.useState)(!1),r=()=>s(!a),o=(0,D.dv)();if(a)return(0,h.jsxs)(tD,{children:[(0,h.jsx)(tR,{accept:".json",placeholder:"Select build config…",onChange:e=>{let t=e.target.files;if(null===t||1!==t.length)return void alert("Please select a configuration JSON file.");let n=new FileReader;n.onload=()=>{try{if("string"!=typeof n.result)throw Error("File must be JSON");i(JSON.parse(n.result)),s(!1)}catch(e){alert(e.message)}},n.readAsText(t[0])}}),(0,h.jsx)(ek.$n,{tone:"accent",variant:"text",onClick:r,children:"Cancel"})]},"picker");let l=o>D.EA.sm,d="Load configuration file (JSON)",c="Save configuration file (in JSON)";return(0,h.jsxs)(tD,{children:[n,(0,h.jsxs)(ek.$n,{tone:"accent",variant:"text",title:d,"aria-label":d,onClick:r,children:[(0,h.jsx)(eC.I,{name:"fa/duotone/folder-upload"}),l?" Load config":null]}),(0,h.jsxs)(ek.$n,{tone:"accent",variant:"text",title:c,"aria-label":c,onClick:t,children:[(0,h.jsx)(eC.I,{name:"fa/duotone/folder-download"}),l?" Save config":null]})]},"default")};function tk(e,t){return void 0===e.natives||tW(e,t)?"":`if (${e.natives.filter(e=>t[e]).map(e=>`lwjglNatives == "natives-${e}"`).join(" || ")}) `}async function tC(e){let t=e.current;if(null!==t)try{await navigator.clipboard.writeText(t.innerText),alert("Script copied to clipboard.")}catch(e){alert("Failed to copy script to clipboard.\n"+e.message)}}function tW(e,t){if(void 0===e.natives||!0!==e.nativesOptional)return!0;let i=e.natives.filter(e=>t[e]).length;return 0===i||i===A.filter(e=>t[e]).length}function tP(e){return"lwjgl"===e.id?e.id:e.id.substring(6)}function tT(e,t){return t===I.Release?e:`${e}-SNAPSHOT`}function tJ(e){if(e.linux)return"";if(e["linux-arm64"]||e["linux-arm32"])return"-arm64";if(e["linux-ppc64le"])return"-ppc64le";if(e["linux-riscv64"])return"-riscv64";throw"no linux platform selected"}function tB(e,t,i,n,a,s){let r="",o="",l=n?"org.lwjgl.osgi":"org.lwjgl";
1return e.forEach(e=>{let d=t[e],c=!1;if(void 0!==d.natives&&!(c=d.natives.some(e=>i[e]))&&!0!==d.nativesOptional)return;let p=n?`org.lwjgl.${tP(d)}`:e;r+=a(d,l,p,c),!n&&c&&void 0!==s&&(o+=s(d,l,p))}),r+o}(0,eP.k)('<symbol id="fa/duotone/cloud-download" viewBox="0 0 640 512"><path d="M537.6 226.6A96.11 96.11 0 0 0 448 96a95.51 95.51 0 0 0-53.3 16.2A160 160 0 0 0 96 192c0 2.7.1 5.4.2 8.1A144 144 0 0 0 144 480h368a128 128 0 0 0 25.6-253.4zm-139.9 93L305 412.3a23.9 23.9 0 0 1-33.9 0l-92.7-92.7a23.9 23.9 0 0 1 0-33.9l10.8-10.8a24.09 24.09 0 0 1 34.5.5l32.4 34.5V184a23.94 23.94 0 0 1 24-24h16a23.94 23.94 0 0 1 24 24v125.9l32.4-34.5a24 24 0 0 1 34.5-.5l10.8 10.8a24.18 24.18 0 0 1-.1 33.9z" class="s"/><path d="M397.7 319.6L305 412.3a23.9 23.9 0 0 1-33.9 0l-92.7-92.7a23.9 23.9 0 0 1 0-33.9l10.8-10.8a24.09 24.09 0 0 1 34.5.5l32.4 34.5V184a23.94 23.94 0 0 1 24-24h16a23.94 23.94 0 0 1 24 24v125.9l32.4-34.5a24 24 0 0 1 34.5-.5l10.8 10.8a24.18 24.18 0 0 1-.1 33.9z"/></symbol>'),(0,eP.k)('<symbol id="fa/duotone/copy" viewBox="0 0 448 512"><path d="M352 96V0H152a24 24 0 0 0-24 24v368a24 24 0 0 0 24 24h272a24 24 0 0 0 24-24V96z" class="s"/><path d="M96 392V96H24a24 24 0 0 0-24 24v368a24 24 0 0 0 24 24h272a24 24 0 0 0 24-24v-40H152a56.06 56.06 0 0 1-56-56zM441 73L375 7a24 24 0 0 0-17-7h-6v96h96v-6.06A24 24 0 0 0 441 73z"/></symbol>');let tV="btoa"in window,t_=(0,R.I4)("img",{height:60,variants:{flipOnDark:{true:{".dark &":{filter:"invert(90%)"}}}}}),tF=(0,R.I4)("pre",{maxWidth:"calc(100vw - 3.6rem)",overflow:"auto",paddingTop:"1rem",paddingBottom:"5.5rem",backgroundColor:"$caution50",border:"1px solid $gray700",fontSize:"$sm"}),tU=tG(e=>{let t=[];e.artifacts.allIds.forEach(i=>{!0===e.contents[i]&&!0===e.availability[i]&&t.push(i)});let i=[];return e.selectedAddons.forEach(t=>{let n=e.addons.byId[t];(void 0===n.modes||n.modes.indexOf(e.mode)>-1)&&i.push(t)}),{build:e.build,mode:e.modes.byId[e.mode],version:e.artifacts.version,hardcoded:e.hardcoded,compact:e.compact,osgi:e.osgi&&e.build===I.Release&&parseInt(e.version.replace(/\./g,""),10)>=312,language:e.language,platform:e.platform,platformSingle:function(e,t){let i=null;for(let n=0;n<e.length;n+=1){let a=e[n];if(t[a])if(null!==i)return null;else i=a}return i}(e.natives.allIds,e.platform),artifacts:e.artifacts.byId,selected:t,addons:e.addons.byId,selectedAddons:i}},e=>e,{devModeChecks:{identityFunctionCheck:"never"}});function tX(e){let t,i,n,a,s,r,o,l,d,c,p,m,u=(0,g.c)(33),{configDownload:v,configLoad:f}=e,b=(0,w.useRef)(null),L=(0,D.dv)(),y=eA(tU),{mode:x}=y,j=x.file;y.mode.id===E.Gradle&&y.language===$.Kotlin&&(j="build.gradle.kts"),u[0]!==j?(t=void 0!==j?j.toUpperCase():"FILE",u[0]=j,u[1]=t):t=u[1];let S=`DOWNLOAD ${t}`;u[2]!==L||u[3]!==S?(i={download:S,copy:" COPY TO CLIPBOARD"},L<D.EA.sm?(i.download="DOWNLOAD",i.copy=""):L<D.EA.md&&(i.copy=" COPY"),u[2]=L,u[3]=S,u[4]=i):i=u[4],u[5]!==x.id||u[6]!==y?(n=function(e,t){switch(e){case E.Maven:return function(e){let{build:t,version:i,hardcoded:n,compact:a,osgi:s,platform:r,platformSingle:o,artifacts:l,selected:d,addons:c,selectedAddons:p}=e,m=tT(i,t),u=n?m:"${lwjgl.version}",v=a?"":"\n	",h=a?"":"\n		",g=a?"":"\n			",f=a?"":"\n				",b=n&&null!=o?`natives-${o}`:"${lwjgl.natives}",w=323<=ef(i),L="";if(n||(L+=`<properties>
2	<lwjgl.version>${m}</lwjgl.version>`,p.forEach(e=>{L+=`
3	<${e}.version>${c[e].maven.version}</${e}.version>`}),null!==o&&(L+=`
4	<lwjgl.natives>natives-${o}</lwjgl.natives>`),L+=`
5</properties>
6
7`),null===o){let e=(e,t,i,n,a)=>{let o=d.filter(t=>{let i=l[t];return void 0!==i.natives&&i.natives.includes(e)&&!tW(i,r)}).map(e=>{let t=s?"org.lwjgl.osgi":"org.lwjgl",i=s?`org.lwjgl.${tP(l[e])}`:e;return`${g}<dependency>${f}<groupId>${t}</groupId>${f}<artifactId>${i}</artifactId>${w?"":`${f}<version>${u}</version>`}${f}<classifier>${a}</classifier>${g}</dependency>`});return`
8	<profile>${h}<id>lwjgl-natives-${e}-${n}</id>${h}<activation>${g}<os>${f}<family>${t}</family>${null===i?"":`${f}<name>${i}</name>`}${f}<arch>${n}</arch>${g}</os>${h}</activation>${h}<properties>${g}<lwjgl.natives>${a}</lwjgl.natives>${h}</properties>${0===o.length?"":`${h}<dependencies>${o.join(g)}${h}</dependencies>`}${v}</profile>`};L+="<profiles>",r.freebsd&&(L+=e(O.FreeBSD,"unix","freebsd","amd64","natives-freebsd")),r.linux&&(L+=e(O.Linux,"unix","linux","amd64","natives-linux")),r["linux-arm64"]&&(L+=e(O.Linux,"unix","linux","aarch64","natives-linux-arm64")),r["linux-arm32"]&&(L+=e(O.Linux,"unix","linux","arm","natives-linux-arm32"),L+=e(O.Linux,"unix","linux","arm32","natives-linux-arm32")),r["linux-ppc64le"]&&(L+=e(O.Linux,"unix","linux","ppc64le","natives-linux-ppc64le")),r["linux-riscv64"]&&(L+=e(O.Linux,"unix","linux","riscv64","natives-linux-riscv64")),r.macos&&(L+=e(O.MacOS,"mac",null,"x86_64","natives-macos")),r["macos-arm64"]&&(L+=e(O.MacOS,"mac",null,"aarch64","natives-macos-arm64")),r.windows&&(L+=e(O.Windows,"windows",null,"amd64","natives-windows")),r["windows-x86"]&&(L+=e(O.Windows,"windows",null,"x86","natives-windows-x86")),r["windows-arm64"]&&(L+=e(O.Windows,"windows",null,"aarch64","natives-windows-arm64")),L+="\n</profiles>\n\n"}return t!==I.Release&&(L+=`<repositories>
9	<repository>
10		<id>central-snapshots</id>
11		<url>https://central.sonatype.com/repository/maven-snapshots</url>
12		<releases><enabled>false</enabled></releases>
13		<snapshots><enabled>true</enabled>
13</snapshots>
14	</repository>
15</repositories>
16
17`),w&&(L+=`<dependencyManagement>
18	<dependencies>
19		<dependency>
20			<groupId>org.lwjgl</groupId>
21			<artifactId>lwjgl-bom</artifactId>
22			<version>${u}</version>
23			<scope>import</scope>
24			<type>pom</type>
25		</dependency>
26	</dependencies>
27</dependencyManagement>
28
29`),L+="<dependencies>",L+=tB(d,l,r,s,(e,t,i)=>`
30	<dependency>${h}<groupId>${t}</groupId>${h}<artifactId>${i}</artifactId>${w?"":`${h}<version>${u}</version>`}${v}</dependency>`,(e,t,i)=>tW(e,r)?`
31	<dependency>${h}<groupId>${t}</groupId>${h}<artifactId>${i}</artifactId>${w?"":`${h}<version>${u}</version>`}${h}<classifier>${b}</classifier>${v}</dependency>`:""),p.forEach(e=>{let{maven:{groupId:t,artifactId:i,version:a}}=c[e];L+=`
32		<dependency>${h}<groupId>${t}</groupId>${h}<artifactId>${i}</artifactId>${h}<version>${n?a:`\${${e}.version}`}</version>${v}</dependency>`}),L+=`
33</dependencies>`}(t);case E.Gradle:return function(e){let{build:t,version:i,hardcoded:n,osgi:a,language:s,artifacts:r,platform:o,platformSingle:l,selected:d,addons:c,selectedAddons:p}=e,m=tT(i,t),u=323<=ef(i),v=null===l?"import org.gradle.internal.os.OperatingSystem\n\n":"";if(n||(s===$.Groovy?(v+=`project.ext.lwjglVersion = "${m}"`,p.forEach(e=>{v+=`
34project.ext.${e}Version = "${c[e].maven.version}"`}),null!==l&&(v+=`
35project.ext.lwjglNatives = "natives-${l}"`)):(v+=`val lwjglVersion = "${m}"`,p.forEach(e=>{let t=-1===e.indexOf("-")?`${e}Version`:`\`${e}Version\``;v+=`
36val ${t} = "${c[e].maven.version}"`}),null!==l&&(v+=`
37val lwjglNatives = "natives-${l}"`)),v+="\n\n"),null===l){let e=+o.linux+ +o["linux-arm64"]+ +o["linux-arm32"]+ +o["linux-ppc64le"]+ +o["linux-riscv64"],t=+o.macos+ +o["macos-arm64"],i=+o.windows+ +o["windows-x86"]+ +o["windows-arm64"];s===$.Groovy?(v+="switch (OperatingSystem.current()) {",o.freebsd&&(v+=`
38	case OperatingSystem.FREE_BSD:
39		project.ext.lwjglNatives = "natives-freebsd"
40		break`),0!=e&&(v+=1==e?`
41	case OperatingSystem.LINUX:
42		project.ext.lwjglNatives = "natives-linux${tJ(o)}"
43		break`:`
44	case OperatingSystem.LINUX:
45		project.ext.lwjglNatives = "natives-linux"
46		def osArch = System.getProperty("os.arch")
47		if (osArch.startsWith("arm") || osArch.startsWith("aarch64")) {
48			project.ext.lwjglNatives += osArch.contains("64") || osArch.startsWith("armv8") ? "-arm64" : "-arm32"
49		} else if  (osArch.startsWith("ppc")) {
50			project.ext.lwjglNatives += "-ppc64le"
51		} else if  (osArch.startsWith("riscv")) {
52			project.ext.lwjglNatives += "-riscv64"
53		}
54		break`),0!=t&&(v+=`
55	case OperatingSystem.MAC_OS:
56		project.ext.lwjglNatives = ${1==t?`"natives-macos${o.macos?"":"-arm64"}"`:'System.getProperty("os.arch").startsWith("aarch64") ? "natives-macos-arm64" : "natives-macos"'}
57		break`),0!=i&&(v+=1==i?`
58	case OperatingSystem.WINDOWS:
59		project.ext.lwjglNatives = "natives-windows${o.windows?"":o["windows-arm64"]?"-arm64":"-x86"}"
60		break`:`
61	case OperatingSystem.WINDOWS:
62		def osArch = System.getProperty("os.arch")
63		project.ext.lwjglNatives = osArch.contains("64")
64			? "natives-windows\${osArch.startsWith("aarch64") ? "-arm64" : ""}"
65			: "natives-windows-x86"
66		break`),v+=`
67}
68
69`):(v+=`val lwjglNatives = Pair(
70	System.getProperty("os.name")!!,
71	System.getProperty("os.arch")!!
72).let { (name, arch) ->
73	when {`,o.freebsd&&(v+=`
74		"FreeBSD".equals(name)                                    ->
75			"natives-freebsd"`),0!=e&&(v+=1==e?`
76		arrayOf("Linux", "SunOS", "Unix").any { name.startsWith(it) } ->
77			"natives-linux${tJ(o)}"`:`
78		arrayOf("Linux", "SunOS", "Unix").any { name.startsWith(it) } ->
79			if (arrayOf("arm", "aarch64").any { arch.startsWith(it) })
80				"natives-linux\${if (arch.contains("64") || arch.startsWith("armv8")) "-arm64" else "-arm32"}"
81			else if (arch.startsWith("ppc"))
82				"natives-linux-ppc64le"
83			else if (arch.startsWith("riscv"))
84				"natives-linux-riscv64"
85			else
86				"natives-linux"`),0!=t&&(v+=1==t?`
87		arrayOf("Mac OS X", "Darwin").any { name.startsWith(it) }     ->
88			"natives-macos${o.macos?"":"-arm64"}"`:`
89		arrayOf("Mac OS X", "Darwin").any { name.startsWith(it) }     ->
90			"natives-macos\${if (arch.startsWith("aarch64")) "-arm64" else ""}"`),0!=i&&(v+=1==i?`
91		arrayOf("Windows").any { name.startsWith(it) }                ->
92			"natives-windows${o.windows?"":o["windows-arm64"]?"-arm64":"-x86"}"`:`
93		arrayOf("Windows").any { name.startsWith(it) }                ->
94			if (arch.contains("64"))
95				"natives-windows\${if (arch.startsWith("aarch64")) "-arm64" else ""}"
96			else
97				"natives-windows-x86"`),v+=`
98		else                                                                            ->
99			throw Error("Unrecognized or unsupported platform. Please set \\"lwjglNatives\\" manually")
100	}
101}
102
103
104`)}if(v+=`repositories {
105	mavenCentral()`,t!==I.Release&&(s===$.Groovy?v+=`
106	maven { url "https://central.sonatype.com/repository/maven-snapshots" }`:v+=`
107	maven("https://central.sonatype.com/repository/maven-snapshots")`),v+=`
108}
109
110dependencies {`,s===$.Groovy){let e=n?m:"$lwjglVersion",t=n&&null!=l?`natives-${l}`:"$lwjglNatives";u&&(v+=`
111	implementation platform("org.lwjgl:lwjgl-bom:${e}")
112`),v+=tB(d,r,o,a,(t,i,n,a)=>`
113	implementation "${i}:${n}${u?"":`:${e}`}"`,(i,n,a)=>`
114	${tk(i,o)}implementation "${n}:${a}:${u?"":`${e}`}:${t}"`),p.forEach(e=>{let{maven:{groupId:t,artifactId:i,version:a}}=c[e];v+=`
115	implementation "${t}:${i}:${n?a:`\${${e}Version}`}"`})}else{let e=u?"":n?m:"$lwjglVersion",t=n&&null!=l?`natives-${l}`:"$lwjglNatives";u&&(v+=`
116	implementation(platform("org.lwjgl:lwjgl-bom:${n?m:"$lwjglVersion"}"))
117`),v+=tB(d,r,o,a,(t,i,n,a)=>`
118	implementation("${i}:${n}${e?":":""}${e}")`,(i,n,a)=>`
119	${tk(i,o)}implementation("${n}:${a}:${e}:${t}")`),p.forEach(e=>{let{maven:{groupId:t,artifactId:i,version:a}}=c[e],s=-1===e.indexOf("-")?`$${e}Version`:`$\{\`${e}Version\`}`;v+=`
120	implementation("${t}:${i}:${n?`${a}`:s}")`})}return v+=`
121}`}(t);case E.Ivy:return function(e){let{build:t,version:i,hardcoded:n,osgi:a,compact:s,artifacts:r,platform:o,platformSingle:l,selected:d,addons:c,selectedAddons:p}=e,m=tT(i,t),u="",v=n?m:"${lwjgl.version}",h=s?"":"\n",g=s?"":"\n	",f=s?"":"\n		",b=n&&null!=l?`natives-${l}`:"${lwjgl.natives}";if(n&&t===I.Release||(u+=`<!-- Add to ivysettings.xml -->
122`),n||(u+=`<property name="lwjgl.version" value="${m}"/>`,p.forEach(e=>{u+=`
123<property name="${e}.version" value="${c[e].maven.version}"/>`}),null!==l&&(u+=`
124<property name="lwjgl.natives" value="natives-${l}"/>`),u+="\n\n"),t!==I.Release&&(u+=`<settings defaultResolver="maven-with-snapshots"/>
125<resolvers>
126	<chain name="maven-with-snapshots">
127		<ibiblio name="central-snapshots" m2compatible="true" root="https://central.sonatype.com/repository/maven-snapshots"/>
128		<ibiblio name="maven-central" m2compatible="true"/>
129	</chain>
130</resolvers>
131
132`),null===l){u+="\x3c!-- Add to build.xml --\x3e",o.freebsd&&(u+=`
133<condition property="lwjgl.natives" value="natives-freebsd">${g}<os name="FreeBSD"/>${h}</condition>`);let e=+o.linux+ +o["linux-arm64"]+ +o["linux-arm32"]+ +o["linux-ppc64le"]+ +o["linux-riscv64"];0!==e&&(1===e?u+=`
134<condition property="lwjgl.natives" value="natives-linux${tJ(o)}">${g}<os name="Linux"/>${h}</condition>`:(o.linux&&(u+=`
135<condition property="lwjgl.natives" value="natives-linux">
136	<and>
137		<os name="Linux"/>
138		<not><matches string="\${os.arch}" pattern="^(arm|aarch64|ppc|riscv)"/></not>
139	</and>
140</condition>`),o["linux-arm64"]&&(u+=`
141<condition property="lwjgl.natives" value="natives-linux-arm64">
142	<and>
143		<os name="Linux"/>
144		<matches string="\${os.arch}" pattern="^(arm|aarch64)"/>
145		<matches string="\${os.arch}" pattern="64|^armv8"/>
146	</and>
147</condition>`),o["linux-arm32"]&&(u+=`
148<condition property="lwjgl.natives" value="natives-linux-arm32">
149	<and>
150		<os name="Linux"/>
151		<matches string="\${os.arch}" pattern="^arm"/>
152		<not><matches string="\${os.arch}" pattern="64|^armv8"/></not>
153	</and>
154</condition>`),o["linux-ppc64le"]&&(u+=`
155<condition property="lwjgl.natives" value="natives-linux-ppc64le">
156	<and>
157		<os name="Linux"/>
158		<matches string="\${os.arch}" pattern="^ppc"/>
159	</and>
160</condition>`),o["linux-riscv64"]&&(u+=`
161<condition property="lwjgl.natives" value="natives-linux-riscv64">
162	<and>
163		<os name="Linux"/>
164		<matches string="\${os.arch}" pattern="^riscv"/>
165	</and>
166</condition>`)));let t=+o.macos+ +o["macos-arm64"];0!==t&&(1===t?u+=`
167<condition property="lwjgl.natives" value="natives-macos${o.macos?"":"-arm64"}">${g}<os name="Mac OS X"/>${h}</condition>`:(o.macos&&(u+=`
168<condition property="lwjgl.natives" value="natives-macos">
169	<and>
170		<os name="Mac OS X"/>
171		<not><matches string="\${os.arch}" pattern="aarch64"/></not>
172	</and>
173</condition>`),o["macos-arm64"]&&(u+=`
174<condition property="lwjgl.natives" value="natives-macos-arm64">
175	<and>
176		<os name="Mac OS X"/>
177		<matches string="\${os.arch}" pattern="aarch64"/>
178	</and>
179</condition>`)));let i=+o.windows+ +o["windows-x86"]+ +o["windows-arm64"];0!==i&&(1===i?u+=`
180<condition property="lwjgl.natives" value="natives-windows${o.windows?"":o["windows-arm64"]?"-arm64":"-x86"}">${g}<os family="Windows"/>${h}</condition>`:(o.windows&&(u+=`
181<condition property="lwjgl.natives" value="natives-windows">
182	<and>
183		<os family="Windows"/>
184		<matches string="\${os.arch}" pattern="64"/>
185		<not><matches string="\${os.arch}" pattern="aarch64"/></not>
186	</and>
187</condition>`),o["windows-x86"]&&(u+=`
188<condition property="lwjgl.natives" value="natives-windows-x86">
189	<and>
190		<os family="Windows"/>
191		<not><matches string="\${os.arch}" pattern="64"/></not>
192	</and>
193</condition>`),o["windows-arm64"]&&(u+=`
194<condition property="lwjgl.natives" value="natives-windows-arm64">
195	<and>
196		<os family="Windows"/>
197		<matches string="\${os.arch}" pattern="aarch64"/>
198	</and>
199</condition>`)));let n=d.filter(e=>!tW(r[e],o)).map(e=>{let t=r[e];if(void 0===t.natives)return"";let i=t.natives.filter(e=>o[e]).map(e=>`<equals arg1="\${lwjgl.natives}" arg2="native-${e}"/>`);return`	<condition property="lwjgl.natives.${tP(t)}" value="\${lwjgl.natives}" else="">${g}${1===i.length?i:`<or>${f}${i.join(f)}${g}</or>`}${h}</condition>`}).join(f);0!==n.length&&(u+=`
200${n}`),u+=`
201
202`}return u+=`<!-- Add to ivy.xml (xmlns:m="http://ant.apache.org/ivy/maven") -->
203<dependencies>`,u+=tB(d,r,o,a,(e,t,i,n)=>`
204	<dependency org="${t}" name="${i}" rev="${v}"${n?`>${f}<artifact name="${i}" type="jar"/>${f}<artifact name="${i}" type="jar" m:classifier="${tW(e,o)?b:`\${lwjgl.natives.${tP(e)}}`}"/>${g}</dependency>`:"/>"}
204`),p.forEach(e=>{let{maven:{groupId:t,artifactId:i,version:a}}=c[e];u+=`
205	<dependency org="${t}" name="${i}" rev="${n?a:`\${${e}.version}`}"/>`}),u+=`
206</dependencies>`}(t);default:throw"Unsupported script mode"}}(x.id,y),u[5]=x.id,u[6]=y,u[7]=n):n=u[7];let A=n;u[8]===Symbol.for("react.memo_cache_sentinel")?(a={mt:"$gutter","@sm":{mt:"1rem"}},u[8]=a):a=u[8];let G="maven"===x.id;if(u[9]!==x.logo||u[10]!==x.title||u[11]!==G?(s=(0,h.jsx)(e$.D,{level:2,css:a,children:(0,h.jsx)(t_,{flipOnDark:G,src:x.logo,alt:x.title})}),u[9]=x.logo,u[10]=x.title,u[11]=G,u[12]=s):s=u[12],u[13]!==A?(r=(0,h.jsx)(tF,{ref:b,children:(0,h.jsx)("code",{children:A})}),u[13]=A,u[14]=r):r=u[14],u[15]!==j||u[16]!==i.download||u[17]!==x||u[18]!==A)o=tV&&(0,h.jsxs)(ek.Aj,{tone:"accent",download:j,href:`data:${void 0!==x.file&&x.file.endsWith(".xml")?"text/xml":"text/plain"};base64,${btoa(A)}`,title:`Download ${x.id} code snippet`,children:[(0,h.jsx)(eC.I,{name:"fa/duotone/cloud-download"})," ",i.download]}),u[15]=j,u[16]=i.download,u[17]=x,u[18]=A,u[19]=o;else o=u[19];return u[20]===Symbol.for("react.memo_cache_sentinel")?(l=()=>tC(b),u[20]=l):l=u[20],u[21]===Symbol.for("react.memo_cache_sentinel")?(d=(0,h.jsx)(eC.I,{name:"fa/duotone/copy"}),u[21]=d):d=u[21],u[22]!==i.copy?(c=(0,h.jsxs)(ek.$n,{tone:"accent",onClick:l,disabled:void 0===navigator.clipboard,title:"Copy to clipboard",children:[d,i.copy]}),u[22]=i.copy,u[23]=c):c=u[23],u[24]!==v||u[25]!==f||u[26]!==c||u[27]!==o?(p=(0,h.jsxs)(tN,{configDownload:v,configLoad:f,children:[o,c]}),u[24]=v,u[25]=f,u[26]=c,u[27]=o,u[28]=p):p=u[28],u[29]!==p||u[30]!==s||u[31]!==r?(m=(0,h.jsxs)(h.Fragment,{children:[s,r,p]}),u[29]=p,u[30]=s,u[31]=r,u[32]=m):m=u[32],m}function tz(e){let t,i,n,a=(0,g.c)(8),{downloadRef:s}=e,r=eE(),o=eA(Y);a[0]!==r?(t=e=>{if(void 0===e.build)throw Error("File does not contain a valid LWJGL configuration.");r({type:"BUILD/CONFIG_LOAD",payload:e})},a[0]=r,a[1]=t):t=a[1];let l=t;a[2]!==s?(i=()=>{var e;null==(e=s.current)||e.start()},a[2]=s,a[3]=i):i=a[3];let d=i;return a[4]!==l||a[5]!==d||a[6]!==o?(n=o===E.Zip?(0,h.jsx)(tN,{configDownload:tH,configLoad:l,children:(0,h.jsxs)(ek.$n,{tone:"accent",onClick:d,children:[(0,h.jsx)(eC.I,{name:"fa/duotone/cloud-download"})," DOWNLOAD ZIP"]})}):(0,h.jsx)(tX,{configDownload:tH,configLoad:l}),a[4]=l,a[5]=d,a[6]=o,a[7]=n):n=a[7],n}function tH(){let e=V(eA.getState());null===e||tw(new Blob([JSON.stringify(e,null,2)],{type:"application/json",endings:"native"}),_(e))}let tZ=(0,R.I4)("div",{zIndex:0,mb:100,pl:"$gutter",pr:"$gutter",h4:{fontSize:"$xl",fontWeight:"$medium"},"@md":{ml:"$gutter",mr:"$gutter"},"@lg":{backgroundColor:"$accent3",border:"2px solid $accent12",".dark &":{borderColor:"$accent1"},py:"$gutter",pb:"100px"}}),tY=()=>{let e,t,i,n,a,s,r,o,l,d,c,p,m,u=(0,g.c)(13),v=(0,w.useRef)(null);return u[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,h.jsxs)(M.x,{css:{gap:"$safe",mb:"$gutter",px:"$safe","@lg":{grid:"auto / 1fr 1fr"}},children:[(0,h.jsx)(eT,{build:I.Release}),(0,h.jsx)(eT,{build:I.Nightly})]}),u[0]=e):e=u[0],u[1]===Symbol.for("react.memo_cache_sentinel")?(t=(0,h.jsx)(e3,{variant:"switch",...eo}),u[1]=t):t=u[1],u[2]===Symbol.for("react.memo_cache_sentinel")?(i={mt:"$sm",gap:"$gutter",alignItems:"start",gridTemplateRows:"minmax(0, min-content)","@sm":{gridTemplateColumns:"1fr 1fr"},"@lg":{gridTemplateColumns:"1fr 1fr 2fr"}},u[2]=i):i=u[2],u[3]===Symbol.for("react.memo_cache_sentinel")?(n={gap:"$gutter"},u[3]=n):n=u[3],u[4]===Symbol.for("react.memo_cache_sentinel")?(a=(0,h.jsxs)(eV,{children:[(0,h.jsx)("h4",{children:"Mode"}),(0,h.jsx)(e8,{...er})]}),u[4]=a):a=u[4],u[5]===Symbol.for("react.memo_cache_sentinel")?(s=(0,h.jsxs)(eV,{children:[(0,h.jsx)("h4",{children:"Options"}),(0,h.jsx)(e3,{...el}),(0,h.jsx)(e3,{...ed}),(0,h.jsx)(e3,{...ec}),(0,h.jsx)(e3,{variant:"switch",...ep}),(0,h.jsx)(e3,{variant:"switch",...em}),(0,h.jsx)(e3,{variant:"switch",...eu})]}),u[5]=s):s=u[5],u[6]===Symbol.for("react.memo_cache_sentinel")?(r=(0,h.jsx)(eV,{children:(0,h.jsx)(e5,{})}),u[6]=r):r=u[6],u[7]===Symbol.for("react.memo_cache_sentinel")?(o=(0,h.jsxs)(M.x,{css:n,children:[a,s,r,(0,h.jsx)(e_,{predicate:H,children:(0,h.jsxs)(eV,{children:[(0,h.jsx)("h4",{children:"Language"}),(0,h.jsx)(e8,{...ev})]})})]}),u[7]=o):o=u[7],u[8]===Symbol.for("react.memo_cache_sentinel")?(l={gap:"$gutter"},u[8]=l):l=u[8],u[9]===Symbol.for("react.memo_cache_sentinel")?(d=(0,h.jsxs)(eV,{children:[(0,h.jsx)("h4",{children:"Presets"}),(0,h.jsx)(e8,{...eh})]}),u[9]=d):d=u[9],u[10]===Symbol.for("react.memo_cache_sentinel")?(c=(0,h.jsxs)(eV,{css:{"@sm":{gap:"$xxsm"}},children:[(0,h.jsx)("h4",{children:"Addons"}),(0,h.jsx)(e9,{})]}),u[10]=c):c=u[10],u[11]===Symbol.for("react.memo_cache_sentinel")?(p=(0,h.jsxs)(M.x,{css:l,children:[d,c,(0,h.jsx)(e_,{predicate:Z,children:(0,h.jsxs)(eV,{children:[(0,h.jsx)("h4",{children:"Version"}),(0,h.jsx)(e8,{...eg}),(0,h.jsx)(ti,{})]})})]}),u[11]=p):p=u[11],u[12]===Symbol.for("react.memo_cache_sentinel")?(m=(0,h.jsxs)(h.Fragment,{children:[e,(0,h.jsx)(e_,{predicate:X,children:(0,h.jsxs)(tZ,{children:[t,(0,h.jsxs)(M.x,{css:i,children:[o,p,(0,h.jsxs)(eV,{css:{"@sm":{gap:"$xxsm",gridArea:" 1 / 2 / span 2 / span 1"},"@lg":{gridArea:"auto"}},children:[(0,h.jsx)("h4",{children:"Contents"}),(0,h.jsx)(ta,{})]})]}),(0,h.jsx)(tz,{downloadRef:v})]})}),(0,h.jsx)(tE,{ref:v})]}),u[12]=m):m=u[12],m},tK=()=>{let e,t=(0,g.c)(1);return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,h.jsx)(f.h,{title:"Customize",description:"Customize your LWJGL 3 build",children:(0,h.jsx)(b.m,{css:{position:"relative",pt:"$gutter"}
206,children:(0,h.jsx)(tY,{})})}),t[0]=e):e=t[0],e}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.