diff options
| author | Alex Pooley (@zuedev) <zuedev@gmail.com> | 2026-05-12 21:41:29 +0100 |
|---|---|---|
| committer | Alex Pooley (@zuedev) <zuedev@gmail.com> | 2026-05-12 21:41:29 +0100 |
| commit | 123c4371627ece5e81812a54507bcc2158be9eaf (patch) | |
| tree | 73801414341110cc51c2602e7b3a9e0fabf17c0f /communities | |
| parent | cdd20614f1230971dae92c51337c5426f67c6fc3 (diff) | |
| download | unnamed-group-123c4371627ece5e81812a54507bcc2158be9eaf.tar unnamed-group-123c4371627ece5e81812a54507bcc2158be9eaf.tar.gz unnamed-group-123c4371627ece5e81812a54507bcc2158be9eaf.tar.bz2 unnamed-group-123c4371627ece5e81812a54507bcc2158be9eaf.tar.xz unnamed-group-123c4371627ece5e81812a54507bcc2158be9eaf.zip | |
Render an iframe of the terminal html instead of taking you to it
Diffstat (limited to 'communities')
| -rw-r--r-- | communities/red-right-hand/alpha.174bg.net/src/app/layout.js | 16 | ||||
| -rw-r--r-- | communities/red-right-hand/alpha.174bg.net/src/components/TerminalOverlay/index.js | 39 |
2 files changed, 41 insertions, 14 deletions
diff --git a/communities/red-right-hand/alpha.174bg.net/src/app/layout.js b/communities/red-right-hand/alpha.174bg.net/src/app/layout.js index 1fb6dfe..ce97609 100644 --- a/communities/red-right-hand/alpha.174bg.net/src/app/layout.js +++ b/communities/red-right-hand/alpha.174bg.net/src/app/layout.js @@ -1,6 +1,6 @@ import { Inter, Fira_Code } from "next/font/google"; import "./globals.css"; -import { CommandLineIcon } from "@heroicons/react/24/solid"; +import TerminalOverlay from "@/components/TerminalOverlay"; const inter = Inter({ variable: "--font-inter", @@ -12,18 +12,6 @@ const firaCode = Fira_Code({ subsets: ["latin"], }); -function TerminalButton() { - return ( - <a - href="/terminal/index.html" - className="fixed top-4 right-4 bg-gray-800 text-white p-3 rounded-full shadow-lg hover:bg-gray-700 transition-colors z-50" - title="Access the web terminal" - > - <CommandLineIcon className="h-5 w-5" /> - </a> - ); -} - export const metadata = { title: "174th Battle Group", description: "Vengeance Within Reach", @@ -39,7 +27,7 @@ export default function RootLayout({ children }) { className={`${inter.variable} ${firaCode.variable} h-full antialiased`} > <body className="min-h-full flex flex-col"> - <TerminalButton /> + <TerminalOverlay /> {children} </body> </html> diff --git a/communities/red-right-hand/alpha.174bg.net/src/components/TerminalOverlay/index.js b/communities/red-right-hand/alpha.174bg.net/src/components/TerminalOverlay/index.js new file mode 100644 index 0000000..6053949 --- /dev/null +++ b/communities/red-right-hand/alpha.174bg.net/src/components/TerminalOverlay/index.js @@ -0,0 +1,39 @@ +"use client"; + +import { useState } from "react"; +import { CommandLineIcon, XMarkIcon } from "@heroicons/react/24/solid"; + +export default function TerminalOverlay() { + const [open, setOpen] = useState(false); + + return ( + <> + <button + onClick={() => setOpen(true)} + className="fixed top-4 right-4 bg-gray-800 text-white p-3 rounded-full shadow-lg hover:bg-gray-700 transition-colors z-50" + title="Access the web terminal" + > + <CommandLineIcon className="h-5 w-5" /> + </button> + + {open && ( + <div className="fixed inset-0 z-50 flex items-center justify-center bg-black/70"> + <div className="relative w-full max-w-4xl h-[80vh] bg-black rounded-lg shadow-2xl overflow-hidden"> + <button + onClick={() => setOpen(false)} + className="absolute top-2 right-2 z-10 bg-gray-800 text-white p-1 rounded hover:bg-gray-600 transition-colors" + title="Close terminal" + > + <XMarkIcon className="h-5 w-5" /> + </button> + <iframe + src="/terminal/index.html" + className="w-full h-full border-0" + title="Web Terminal" + /> + </div> + </div> + )} + </> + ); +} |
