This commit is contained in:
2026-03-12 14:56:39 +01:00
parent 97b135c352
commit 65d1a4fd18
105 changed files with 293 additions and 274 deletions
+1 -1
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
{"version":1,"functions":{"/admin/services/[service_name]":{},"/admin/users/add-user":{},"/admin/services":{},"/admin/settings":{},"/admin":{},"/admin/users":{},"/admin/users/[deployment_user_id]":{},"/_app":{},"/auth/login":{},"/auth/logout":{},"/":{},"/auth/signup":{}}}
{"version":1,"functions":{"/admin":{},"/_app":{},"/admin/users/[deployment_user_id]":{},"/admin/settings":{},"/admin/services/[service_name]":{},"/admin/users/add-user":{},"/admin/users":{},"/auth/logout":{},"/admin/services":{},"/":{},"/auth/login":{},"/auth/signup":{}}}
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
{"/_error":"pages/_error.js","/404":"pages/404.html","/_document":"pages/_document.js","/api/admin/settings":"pages/api/admin/settings.js","/api/auth/login":"pages/api/auth/login.js","/api/auth/signup":"pages/api/auth/signup.js","/api/hello":"pages/api/hello.js","/admin/services/[service_name]":"pages/admin/services/[service_name].js","/admin/settings":"pages/admin/settings.js","/admin/services":"pages/admin/services.js","/admin":"pages/admin.js","/admin/users/[deployment_user_id]":"pages/admin/users/[deployment_user_id].js","/admin/users/add-user":"pages/admin/users/add-user.js","/admin/users":"pages/admin/users.js","/":"pages/index.js","/auth/logout":"pages/auth/logout.js","/auth/login":"pages/auth/login.js","/auth/signup":"pages/auth/signup.js","/_app":"pages/_app.js"}
{"/_error":"pages/_error.js","/_document":"pages/_document.js","/404":"pages/404.html","/api/admin/delete-user":"pages/api/admin/delete-user.js","/api/admin/download-private-ssh-key":"pages/api/admin/download-private-ssh-key.js","/api/admin/edit-user":"pages/api/admin/edit-user.js","/api/admin/settings":"pages/api/admin/settings.js","/api/auth/login":"pages/api/auth/login.js","/api/auth/signup":"pages/api/auth/signup.js","/api/hello":"pages/api/hello.js","/_app":"pages/_app.js","/admin":"pages/admin.js","/admin/services/[service_name]":"pages/admin/services/[service_name].js","/admin/services":"pages/admin/services.js","/admin/settings":"pages/admin/settings.js","/admin/users/add-user":"pages/admin/users/add-user.js","/admin/users":"pages/admin/users.js","/admin/users/[deployment_user_id]":"pages/admin/users/[deployment_user_id].js","/auth/login":"pages/auth/login.js","/auth/logout":"pages/auth/logout.js","/auth/signup":"pages/auth/signup.js","/":"pages/index.js"}
+1 -1
View File
@@ -1 +1 @@
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/css/5c1cfee54482a455.css" as="style"/><link rel="stylesheet" href="/_next/static/css/5c1cfee54482a455.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-38cee4c0e358b1a3.js" defer=""></script><script src="/_next/static/chunks/framework-bfa817c72d812316.js" defer=""></script><script src="/_next/static/chunks/main-761b7faf59ba862f.js" defer=""></script><script src="/_next/static/chunks/pages/_app-d5effc98f319eb8e.js" defer=""></script><script src="/_next/static/chunks/29107295-2819ba6e51dbf961.js" defer=""></script><script src="/_next/static/chunks/664-e347d64e56042a02.js" defer=""></script><script src="/_next/static/chunks/pages/404-8292e1046538596b.js" defer=""></script><script src="/_next/static/kY91tNX3MJRP3IyRET4kY/_buildManifest.js" defer=""></script><script src="/_next/static/kY91tNX3MJRP3IyRET4kY/_ssgManifest.js" defer=""></script></head><body class="antialiased"><div id="__next"><main class="flex flex-col items-center twui-main w-screen h-screen overflow-hidden"><section class="flex flex-col items-center px-4 sm:px-10 py-10 twui-section w-full h-full"><div class="flex w-full max-w-container gap-4 justify-between flex-wrap flex-col xl:flex-row items-start xl:items-center twui-container grid-frame grid-cols-1 h-full"><div class="flex flex-col items-start gap-4 twui-stack w-full justify-between h-full grid-cell"><div class="flex flex-col items-start twui-stack gap-0"><div class="flex flex-row gap-2 flex-wrap items-center twui-row"><div class="flex flex-row gap-2 flex-wrap items-center twui-row p-6"><a aria-label="TurboCI home" class="inline-flex items-center gap-3" href="/"><svg viewBox="0 0 48 48" aria-hidden="true" class="h-10 w-10 shrink-0"><defs><linearGradient id="_R_1am_" x1="9" y1="9" x2="31" y2="34" gradientUnits="userSpaceOnUse"><stop offset="0%" stop-color="#9cf0c0"></stop><stop offset="100%" stop-color="#42d392"></stop></linearGradient><linearGradient id="_R_1amH1_" x1="22" y1="22" x2="36" y2="40" gradientUnits="userSpaceOnUse"><stop offset="0%" stop-color="#2bc67e"></stop><stop offset="100%" stop-color="#1f8458"></stop></linearGradient></defs><path d="M35 6H23.6c-2 0-3.8 1-4.8 2.7L7.5 28.3c-1.4 2.5.4 5.7 3.2 5.7h9.1c2 0 3.8-1 4.8-2.7l11.2-19.6C39.6 9.2 37.8 6 35 6Z" fill="url(#_R_1am_)"></path><path d="M23.9 24h13.4c2.8 0 4.6 3.1 3.2 5.6l-4.1 7.1c-1 1.7-2.8 2.7-4.8 2.7H18.2c-2.8 0-4.6-3.1-3.2-5.6l4.1-7.1c1-1.7 2.8-2.7 4.8-2.7Z" fill="url(#_R_1amH1_)"></path></svg><span class="font-display text-[1.02rem] font-semibold tracking-tight text-foreground">TurboCI</span></a></div><div class="border-slate-200 dark:border-white/10 border-0 border-l h-full min-h-5 twui-divider twui-divider-vertical border-solid"></div></div><div class="border-slate-200 dark:border-white/10 border-0 border-t w-full twui-divider twui-divider-horizontal border-solid"></div></div><div class="flex flex-col items-center justify-center gap-4 w-full h-full twui-center p-10"><h2 class="text-2xl md:text-3xl mb-4 twui-headings twui-heading twui-h2">Page Not Found!</h2></div><div class="flex flex-col items-start gap-4 twui-stack"><div class="border-slate-200 dark:border-white/10 border-0 border-t w-full twui-divider twui-divider-horizontal border-solid"></div><div class="twui-spacer h-20 w-full"></div></div></div></div></section></main></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/404","query":{},"buildId":"kY91tNX3MJRP3IyRET4kY","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/css/08e6997802749ec3.css" as="style"/><link rel="stylesheet" href="/_next/static/css/08e6997802749ec3.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-38cee4c0e358b1a3.js" defer=""></script><script src="/_next/static/chunks/framework-bfa817c72d812316.js" defer=""></script><script src="/_next/static/chunks/main-761b7faf59ba862f.js" defer=""></script><script src="/_next/static/chunks/pages/_app-0610d36404ed5f1e.js" defer=""></script><script src="/_next/static/chunks/29107295-2819ba6e51dbf961.js" defer=""></script><script src="/_next/static/chunks/664-e347d64e56042a02.js" defer=""></script><script src="/_next/static/chunks/pages/404-8292e1046538596b.js" defer=""></script><script src="/_next/static/d1kxBLz09K-KfpyaxJE_y/_buildManifest.js" defer=""></script><script src="/_next/static/d1kxBLz09K-KfpyaxJE_y/_ssgManifest.js" defer=""></script></head><body class="antialiased"><div id="__next"><main class="flex flex-col items-center twui-main w-screen h-screen overflow-hidden"><section class="flex flex-col items-center px-4 sm:px-10 py-10 twui-section w-full h-full"><div class="flex w-full max-w-container gap-4 justify-between flex-wrap flex-col xl:flex-row items-start xl:items-center twui-container grid-frame grid-cols-1 h-full"><div class="flex flex-col items-start gap-4 twui-stack w-full justify-between h-full grid-cell"><div class="flex flex-col items-start twui-stack gap-0"><div class="flex flex-row gap-2 flex-wrap items-center twui-row"><div class="flex flex-row gap-2 flex-wrap items-center twui-row p-6"><a aria-label="TurboCI home" class="inline-flex items-center gap-3" href="/"><svg viewBox="0 0 48 48" aria-hidden="true" class="h-10 w-10 shrink-0"><defs><linearGradient id="_R_1am_" x1="9" y1="9" x2="31" y2="34" gradientUnits="userSpaceOnUse"><stop offset="0%" stop-color="#9cf0c0"></stop><stop offset="100%" stop-color="#42d392"></stop></linearGradient><linearGradient id="_R_1amH1_" x1="22" y1="22" x2="36" y2="40" gradientUnits="userSpaceOnUse"><stop offset="0%" stop-color="#2bc67e"></stop><stop offset="100%" stop-color="#1f8458"></stop></linearGradient></defs><path d="M35 6H23.6c-2 0-3.8 1-4.8 2.7L7.5 28.3c-1.4 2.5.4 5.7 3.2 5.7h9.1c2 0 3.8-1 4.8-2.7l11.2-19.6C39.6 9.2 37.8 6 35 6Z" fill="url(#_R_1am_)"></path><path d="M23.9 24h13.4c2.8 0 4.6 3.1 3.2 5.6l-4.1 7.1c-1 1.7-2.8 2.7-4.8 2.7H18.2c-2.8 0-4.6-3.1-3.2-5.6l4.1-7.1c1-1.7 2.8-2.7 4.8-2.7Z" fill="url(#_R_1amH1_)"></path></svg><span class="font-display text-[1.02rem] font-semibold tracking-tight text-foreground">TurboCI</span></a></div><div class="border-slate-200 dark:border-white/10 border-0 border-l h-full min-h-5 twui-divider twui-divider-vertical border-solid"></div></div><div class="border-slate-200 dark:border-white/10 border-0 border-t w-full twui-divider twui-divider-horizontal border-solid"></div></div><div class="flex flex-col items-center justify-center gap-4 w-full h-full twui-center p-10"><h2 class="text-2xl md:text-3xl mb-4 twui-headings twui-heading twui-h2">Page Not Found!</h2></div><div class="flex flex-col items-start gap-4 twui-stack"><div class="border-slate-200 dark:border-white/10 border-0 border-t w-full twui-divider twui-divider-horizontal border-solid"></div><div class="twui-spacer h-20 w-full"></div></div></div></div></section></main></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/404","query":{},"buildId":"d1kxBLz09K-KfpyaxJE_y","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
+1 -1
View File
@@ -1 +1 @@
{"version":1,"files":["../webpack-runtime.js","../chunks/859.js","../chunks/800.js","../../../../package.json"]}
{"version":1,"files":["../webpack-runtime.js","../chunks/859.js","../chunks/330.js","../../../../package.json"]}
+1 -1
View File
@@ -1 +1 @@
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>500: Internal Server Error</title><meta name="next-head-count" content="3"/><link rel="preload" href="/_next/static/css/5c1cfee54482a455.css" as="style"/><link rel="stylesheet" href="/_next/static/css/5c1cfee54482a455.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-38cee4c0e358b1a3.js" defer=""></script><script src="/_next/static/chunks/framework-bfa817c72d812316.js" defer=""></script><script src="/_next/static/chunks/main-761b7faf59ba862f.js" defer=""></script><script src="/_next/static/chunks/pages/_app-d5effc98f319eb8e.js" defer=""></script><script src="/_next/static/chunks/pages/_error-10090a8ee211d5fd.js" defer=""></script><script src="/_next/static/kY91tNX3MJRP3IyRET4kY/_buildManifest.js" defer=""></script><script src="/_next/static/kY91tNX3MJRP3IyRET4kY/_ssgManifest.js" defer=""></script></head><body class="antialiased"><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"kY91tNX3MJRP3IyRET4kY","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>500: Internal Server Error</title><meta name="next-head-count" content="3"/><link rel="preload" href="/_next/static/css/08e6997802749ec3.css" as="style"/><link rel="stylesheet" href="/_next/static/css/08e6997802749ec3.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-38cee4c0e358b1a3.js" defer=""></script><script src="/_next/static/chunks/framework-bfa817c72d812316.js" defer=""></script><script src="/_next/static/chunks/main-761b7faf59ba862f.js" defer=""></script><script src="/_next/static/chunks/pages/_app-0610d36404ed5f1e.js" defer=""></script><script src="/_next/static/chunks/pages/_error-10090a8ee211d5fd.js" defer=""></script><script src="/_next/static/d1kxBLz09K-KfpyaxJE_y/_buildManifest.js" defer=""></script><script src="/_next/static/d1kxBLz09K-KfpyaxJE_y/_ssgManifest.js" defer=""></script></head><body class="antialiased"><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"d1kxBLz09K-KfpyaxJE_y","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
{"version":1,"files":["../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../node_modules/react-dom/cjs/react-dom.production.js","../../../../node_modules/react-dom/index.js","../../../../node_modules/react-dom/package.json","../../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../../node_modules/react/cjs/react.development.js","../../../../node_modules/react/cjs/react.production.js","../../../../node_modules/react/index.js","../../../../node_modules/react/jsx-runtime.js","../../../../node_modules/react/package.json","../../../../node_modules/tailwind-merge/dist/bundle-cjs.js","../../../../node_modules/tailwind-merge/dist/bundle-mjs.mjs","../../../../node_modules/tailwind-merge/package.json","../../../../package.json","../../../../src/pages/_app.tsx","../../package.json","../chunks/150.js","../chunks/248.js","../chunks/752.js","../chunks/800.js","../chunks/824.js","../chunks/859.js","../chunks/font-manifest.json","../webpack-runtime.js"]}
{"version":1,"files":["../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../node_modules/react-dom/cjs/react-dom.production.js","../../../../node_modules/react-dom/index.js","../../../../node_modules/react-dom/package.json","../../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../../node_modules/react/cjs/react.development.js","../../../../node_modules/react/cjs/react.production.js","../../../../node_modules/react/index.js","../../../../node_modules/react/jsx-runtime.js","../../../../node_modules/react/package.json","../../../../node_modules/tailwind-merge/dist/bundle-cjs.js","../../../../node_modules/tailwind-merge/dist/bundle-mjs.mjs","../../../../node_modules/tailwind-merge/package.json","../../../../package.json","../../../../src/pages/_app.tsx","../../package.json","../chunks/150.js","../chunks/248.js","../chunks/330.js","../chunks/752.js","../chunks/824.js","../chunks/859.js","../chunks/font-manifest.json","../webpack-runtime.js"]}
+1 -1
View File
@@ -1 +1 @@
{"version":1,"files":["../../../../node_modules/client-only/index.js","../../../../node_modules/client-only/package.json","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/pages.runtime.prod.js","../../../../node_modules/next/dist/compiled/node-html-parser/index.js","../../../../node_modules/next/dist/compiled/node-html-parser/package.json","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/package.json","../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js","../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js","../../../../node_modules/react-dom/cjs/react-dom-server.browser.development.js","../../../../node_modules/react-dom/cjs/react-dom-server.browser.production.js","../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../node_modules/react-dom/cjs/react-dom.production.js","../../../../node_modules/react-dom/index.js","../../../../node_modules/react-dom/package.json","../../../../node_modules/react-dom/server.browser.js","../../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../../node_modules/react/cjs/react.development.js","../../../../node_modules/react/cjs/react.production.js","../../../../node_modules/react/index.js","../../../../node_modules/react/jsx-runtime.js","../../../../node_modules/react/package.json","../../../../node_modules/styled-jsx/dist/index/index.js","../../../../node_modules/styled-jsx/index.js","../../../../node_modules/styled-jsx/package.json","../../../../package.json","../../../../src/pages/_document.tsx","../../package.json","../chunks/150.js","../chunks/248.js","../chunks/752.js","../chunks/800.js","../chunks/824.js","../chunks/859.js","../chunks/font-manifest.json","../webpack-runtime.js"]}
{"version":1,"files":["../../../../node_modules/client-only/index.js","../../../../node_modules/client-only/package.json","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/pages.runtime.prod.js","../../../../node_modules/next/dist/compiled/node-html-parser/index.js","../../../../node_modules/next/dist/compiled/node-html-parser/package.json","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/package.json","../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js","../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js","../../../../node_modules/react-dom/cjs/react-dom-server.browser.development.js","../../../../node_modules/react-dom/cjs/react-dom-server.browser.production.js","../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../node_modules/react-dom/cjs/react-dom.production.js","../../../../node_modules/react-dom/index.js","../../../../node_modules/react-dom/package.json","../../../../node_modules/react-dom/server.browser.js","../../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../../node_modules/react/cjs/react.development.js","../../../../node_modules/react/cjs/react.production.js","../../../../node_modules/react/index.js","../../../../node_modules/react/jsx-runtime.js","../../../../node_modules/react/package.json","../../../../node_modules/styled-jsx/dist/index/index.js","../../../../node_modules/styled-jsx/index.js","../../../../node_modules/styled-jsx/package.json","../../../../package.json","../../../../src/pages/_document.tsx","../../package.json","../chunks/150.js","../chunks/248.js","../chunks/330.js","../chunks/752.js","../chunks/824.js","../chunks/859.js","../chunks/font-manifest.json","../webpack-runtime.js"]}
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
{"version":1,"files":["../../../../node_modules/client-only/index.js","../../../../node_modules/client-only/package.json","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/pages.runtime.prod.js","../../../../node_modules/next/dist/compiled/node-html-parser/index.js","../../../../node_modules/next/dist/compiled/node-html-parser/package.json","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/package.json","../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js","../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js","../../../../node_modules/react-dom/cjs/react-dom-server.browser.development.js","../../../../node_modules/react-dom/cjs/react-dom-server.browser.production.js","../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../node_modules/react-dom/cjs/react-dom.production.js","../../../../node_modules/react-dom/index.js","../../../../node_modules/react-dom/package.json","../../../../node_modules/react-dom/server.browser.js","../../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../../node_modules/react/cjs/react.development.js","../../../../node_modules/react/cjs/react.production.js","../../../../node_modules/react/index.js","../../../../node_modules/react/jsx-runtime.js","../../../../node_modules/react/package.json","../../../../node_modules/styled-jsx/dist/index/index.js","../../../../node_modules/styled-jsx/index.js","../../../../node_modules/styled-jsx/package.json","../../../../node_modules/tailwind-merge/dist/bundle-cjs.js","../../../../node_modules/tailwind-merge/dist/bundle-mjs.mjs","../../../../node_modules/tailwind-merge/package.json","../../package.json","../chunks/150.js","../chunks/248.js","../chunks/752.js","../chunks/800.js","../chunks/824.js","../chunks/859.js","../chunks/font-manifest.json","../webpack-runtime.js"]}
{"version":1,"files":["../../../../node_modules/client-only/index.js","../../../../node_modules/client-only/package.json","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/pages.runtime.prod.js","../../../../node_modules/next/dist/compiled/node-html-parser/index.js","../../../../node_modules/next/dist/compiled/node-html-parser/package.json","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/package.json","../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js","../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js","../../../../node_modules/react-dom/cjs/react-dom-server.browser.development.js","../../../../node_modules/react-dom/cjs/react-dom-server.browser.production.js","../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../node_modules/react-dom/cjs/react-dom.production.js","../../../../node_modules/react-dom/index.js","../../../../node_modules/react-dom/package.json","../../../../node_modules/react-dom/server.browser.js","../../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../../node_modules/react/cjs/react.development.js","../../../../node_modules/react/cjs/react.production.js","../../../../node_modules/react/index.js","../../../../node_modules/react/jsx-runtime.js","../../../../node_modules/react/package.json","../../../../node_modules/styled-jsx/dist/index/index.js","../../../../node_modules/styled-jsx/index.js","../../../../node_modules/styled-jsx/package.json","../../../../node_modules/tailwind-merge/dist/bundle-cjs.js","../../../../node_modules/tailwind-merge/dist/bundle-mjs.mjs","../../../../node_modules/tailwind-merge/package.json","../../package.json","../chunks/150.js","../chunks/248.js","../chunks/330.js","../chunks/752.js","../chunks/824.js","../chunks/859.js","../chunks/font-manifest.json","../webpack-runtime.js"]}
+1 -1
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
"use strict";(()=>{var e={};e.id=329,e.ids=[329],e.modules={2578:(e,t,r)=>{r.a(e,async(e,s)=>{try{r.r(t),r.d(t,{config:()=>g,default:()=>u,getServerSideProps:()=>m,getStaticPaths:()=>x,getStaticProps:()=>p,reportWebVitals:()=>h,routeModule:()=>P,unstable_getServerProps:()=>S,unstable_getServerSideProps:()=>q,unstable_getStaticParams:()=>f,unstable_getStaticPaths:()=>j,unstable_getStaticProps:()=>v});var a=r(7093),i=r(5244),l=r(1323),n=r(1070),c=r(3893),d=r(4300),o=e([c,d]);[c,d]=o.then?(await o)():o;let u=(0,l.l)(d,"default"),p=(0,l.l)(d,"getStaticProps"),x=(0,l.l)(d,"getStaticPaths"),m=(0,l.l)(d,"getServerSideProps"),g=(0,l.l)(d,"config"),h=(0,l.l)(d,"reportWebVitals"),v=(0,l.l)(d,"unstable_getStaticProps"),j=(0,l.l)(d,"unstable_getStaticPaths"),f=(0,l.l)(d,"unstable_getStaticParams"),S=(0,l.l)(d,"unstable_getServerProps"),q=(0,l.l)(d,"unstable_getServerSideProps"),P=new a.PagesRouteModule({definition:{kind:i.x.PAGES,page:"/admin/services/[service_name]",pathname:"/admin/services/[service_name]",bundlePath:"",filename:""},components:{App:c.default,Document:n.default},userland:d});s()}catch(e){s(e)}})},5272:(e,t,r)=>{r.a(e,async(e,s)=>{try{r.d(t,{Z:()=>u});var a=r(997),i=r(3216),l=r(6689),n=r(3893),c=r(9705),d=r(9986),o=e([i,n,c,d]);function u({service:e}){let{pageProps:t}=(0,l.useContext)(n.AppContext),r=e.servers,[s,o]=(0,l.useState)(r?.[0]),u=!!r?.length&&!!(r.length%2);return a.jsx(i.Z,{className:"w-full grid-cell col-span-1 gap-0",children:(0,a.jsxs)(c.Z,{className:"nested-grid-frame xl:grid-cols-2",children:[r?.map((t,r)=>a.jsx(d.Z,{server:t,service:e,wrapperProps:{className:"grid-cell"}},r)),u?a.jsx("div",{className:"grid-cell"}):null]})})}[i,n,c,d]=o.then?(await o)():o,s()}catch(e){s(e)}})},5094:(e,t,r)=>{r.a(e,async(e,s)=>{try{r.d(t,{Z:()=>x});var a=r(997),i=r(3216),l=r(6689),n=r(3893),c=r(5272),d=r(9705),o=r(5031),u=r(1309),p=e([i,n,c,d,o,u]);function x(){let{pageProps:e,ws:t}=(0,l.useContext)(n.AppContext),{service:r,deployment:s,children_services:p}=e,x=[r,...p||[]],[m,g]=(0,l.useState)(r||void 0),h=x.findIndex(e=>e?.service_name==m?.service_name)+1;return m?.servers,a.jsx(i.Z,{className:"w-full nested-grid-frame grid-cols-1",children:(0,a.jsxs)(i.Z,{className:"grid-cell gap-0",children:[a.jsx(d.Z,{className:"grid-cell-content flex-nowrap",children:(0,a.jsxs)(d.Z,{className:"w-full justify-between",children:[a.jsx(d.Z,{children:(0,a.jsxs)(u.Z,{children:["Cluster #",h]})}),a.jsx(d.Z,{children:a.jsx(o.Z,{options:x.map((e,t)=>({value:e?.service_name,title:`Cluster #${t+1}`})),wrapperWrapperProps:{className:"max-w-[250px]"},changeHandler:e=>{g(void 0),t.sendData({event:"client:kill-all-ports"}),setTimeout(()=>{g(x.find(t=>t?.service_name==e)||void 0)},200)}})})]})}),a.jsx("hr",{}),m?a.jsx(c.Z,{service:m}):void 0]})})}[i,n,c,d,o,u]=p.then?(await p)():p,s()}catch(e){s(e)}})},7680:(e,t,r)=>{r.a(e,async(e,s)=>{try{r.d(t,{Z:()=>p});var a=r(997),i=r(6689),l=r(3893),n=r(6425),c=r(2984),d=r(2394),o=r(5094),u=e([l,c,d,o]);function p(){let{pageProps:e}=(0,i.useContext)(l.AppContext),{service:t,deployment:r}=e,s=r?.deployment_name,u=t?.service_name;return(0,a.jsxs)(i.Fragment,{children:[a.jsx(d.Z,{title:`${(0,n.Z)(u)} Service`,description:(0,a.jsxs)(a.Fragment,{children:["Deployment ",a.jsx("code",{children:s})," > ",a.jsx("code",{children:u})]})}),a.jsx(c.Z,{}),a.jsx(o.Z,{})]})}[l,c,d,o]=u.then?(await u)():u,s()}catch(e){s(e)}})},4300:(e,t,r)=>{r.a(e,async(e,s)=>{try{r.r(t),r.d(t,{default:()=>d,getServerSideProps:()=>o});var a=r(997),i=r(7680),l=r(8688),n=r(3060),c=e([i,n]);function d(){return a.jsx(n.Z,{children:a.jsx(i.Z,{})})}[i,n]=c.then?(await c)():c;let o=async e=>await (0,l.Z)({ctx:e});s()}catch(e){s(e)}})},5191:e=>{e.exports=require("@moduletrace/datasquirel/dist/client")},4882:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/functions/dsql/decrypt")},4605:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/utils/ejson")},1521:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/utils/numberfy")},6255:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/utils/slugify")},1635:e=>{e.exports=require("dayjs")},6517:e=>{e.exports=require("lodash")},2423:e=>{e.exports=require("lucide-react")},2785:e=>{e.exports=require("next/dist/compiled/next-server/pages.runtime.prod.js")},968:e=>{e.exports=require("next/head")},6689:e=>{e.exports=require("react")},6405:e=>{e.exports=require("react-dom")},997:e=>{e.exports=require("react/jsx-runtime")},2048:e=>{e.exports=require("fs")},5315:e=>{e.exports=require("path")},8097:e=>{e.exports=import("tailwind-merge")}};var t=require("../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[859,800,752,248,150,824],()=>r(2578));module.exports=s})();
"use strict";(()=>{var e={};e.id=329,e.ids=[329],e.modules={2578:(e,t,r)=>{r.a(e,async(e,s)=>{try{r.r(t),r.d(t,{config:()=>g,default:()=>u,getServerSideProps:()=>m,getStaticPaths:()=>x,getStaticProps:()=>p,reportWebVitals:()=>h,routeModule:()=>P,unstable_getServerProps:()=>S,unstable_getServerSideProps:()=>q,unstable_getStaticParams:()=>f,unstable_getStaticPaths:()=>j,unstable_getStaticProps:()=>v});var a=r(7093),i=r(5244),l=r(1323),n=r(1070),c=r(3893),d=r(4300),o=e([c,d]);[c,d]=o.then?(await o)():o;let u=(0,l.l)(d,"default"),p=(0,l.l)(d,"getStaticProps"),x=(0,l.l)(d,"getStaticPaths"),m=(0,l.l)(d,"getServerSideProps"),g=(0,l.l)(d,"config"),h=(0,l.l)(d,"reportWebVitals"),v=(0,l.l)(d,"unstable_getStaticProps"),j=(0,l.l)(d,"unstable_getStaticPaths"),f=(0,l.l)(d,"unstable_getStaticParams"),S=(0,l.l)(d,"unstable_getServerProps"),q=(0,l.l)(d,"unstable_getServerSideProps"),P=new a.PagesRouteModule({definition:{kind:i.x.PAGES,page:"/admin/services/[service_name]",pathname:"/admin/services/[service_name]",bundlePath:"",filename:""},components:{App:c.default,Document:n.default},userland:d});s()}catch(e){s(e)}})},5272:(e,t,r)=>{r.a(e,async(e,s)=>{try{r.d(t,{Z:()=>u});var a=r(997),i=r(3216),l=r(6689),n=r(3893),c=r(9705),d=r(9986),o=e([i,n,c,d]);function u({service:e}){let{pageProps:t}=(0,l.useContext)(n.AppContext),r=e.servers,[s,o]=(0,l.useState)(r?.[0]),u=!!r?.length&&!!(r.length%2);return a.jsx(i.Z,{className:"w-full grid-cell col-span-1 gap-0",children:(0,a.jsxs)(c.Z,{className:"nested-grid-frame xl:grid-cols-2",children:[r?.map((t,r)=>a.jsx(d.Z,{server:t,service:e,wrapperProps:{className:"grid-cell"}},r)),u?a.jsx("div",{className:"grid-cell"}):null]})})}[i,n,c,d]=o.then?(await o)():o,s()}catch(e){s(e)}})},5094:(e,t,r)=>{r.a(e,async(e,s)=>{try{r.d(t,{Z:()=>x});var a=r(997),i=r(3216),l=r(6689),n=r(3893),c=r(5272),d=r(9705),o=r(5031),u=r(1309),p=e([i,n,c,d,o,u]);function x(){let{pageProps:e,ws:t}=(0,l.useContext)(n.AppContext),{service:r,deployment:s,children_services:p}=e,x=[r,...p||[]],[m,g]=(0,l.useState)(r||void 0),h=x.findIndex(e=>e?.service_name==m?.service_name)+1;return m?.servers,a.jsx(i.Z,{className:"w-full nested-grid-frame grid-cols-1",children:(0,a.jsxs)(i.Z,{className:"grid-cell gap-0",children:[a.jsx(d.Z,{className:"grid-cell-content flex-nowrap",children:(0,a.jsxs)(d.Z,{className:"w-full justify-between",children:[a.jsx(d.Z,{children:(0,a.jsxs)(u.Z,{children:["Cluster #",h]})}),a.jsx(d.Z,{children:a.jsx(o.Z,{options:x.map((e,t)=>({value:e?.service_name,title:`Cluster #${t+1}`})),wrapperWrapperProps:{className:"max-w-[250px]"},changeHandler:e=>{g(void 0),t.sendData({event:"client:kill-all-ports"}),setTimeout(()=>{g(x.find(t=>t?.service_name==e)||void 0)},200)}})})]})}),a.jsx("hr",{}),m?a.jsx(c.Z,{service:m}):void 0]})})}[i,n,c,d,o,u]=p.then?(await p)():p,s()}catch(e){s(e)}})},7680:(e,t,r)=>{r.a(e,async(e,s)=>{try{r.d(t,{Z:()=>p});var a=r(997),i=r(6689),l=r(3893),n=r(6425),c=r(2984),d=r(2394),o=r(5094),u=e([l,c,d,o]);function p(){let{pageProps:e}=(0,i.useContext)(l.AppContext),{service:t,deployment:r}=e,s=r?.deployment_name,u=t?.service_name;return(0,a.jsxs)(i.Fragment,{children:[a.jsx(d.Z,{title:`${(0,n.Z)(u)} Service`,description:(0,a.jsxs)(a.Fragment,{children:["Deployment ",a.jsx("code",{children:s})," > ",a.jsx("code",{children:u})]})}),a.jsx(c.Z,{}),a.jsx(o.Z,{})]})}[l,c,d,o]=u.then?(await u)():u,s()}catch(e){s(e)}})},4300:(e,t,r)=>{r.a(e,async(e,s)=>{try{r.r(t),r.d(t,{default:()=>d,getServerSideProps:()=>o});var a=r(997),i=r(7680),l=r(8688),n=r(3060),c=e([i,n]);function d(){return a.jsx(n.Z,{children:a.jsx(i.Z,{})})}[i,n]=c.then?(await c)():c;let o=async e=>await (0,l.Z)({ctx:e});s()}catch(e){s(e)}})},5191:e=>{e.exports=require("@moduletrace/datasquirel/dist/client")},4882:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/functions/dsql/decrypt")},4605:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/utils/ejson")},1521:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/utils/numberfy")},6255:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/utils/slugify")},1635:e=>{e.exports=require("dayjs")},6517:e=>{e.exports=require("lodash")},2423:e=>{e.exports=require("lucide-react")},2785:e=>{e.exports=require("next/dist/compiled/next-server/pages.runtime.prod.js")},968:e=>{e.exports=require("next/head")},6689:e=>{e.exports=require("react")},6405:e=>{e.exports=require("react-dom")},997:e=>{e.exports=require("react/jsx-runtime")},2048:e=>{e.exports=require("fs")},5315:e=>{e.exports=require("path")},8097:e=>{e.exports=import("tailwind-merge")}};var t=require("../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[859,330,752,248,150,824],()=>r(2578));module.exports=s})();
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+6
View File
@@ -0,0 +1,6 @@
"use strict";(()=>{var e={};e.id=204,e.ids=[204],e.modules={8804:e=>{e.exports=require("@moduletrace/nsqlite")},1635:e=>{e.exports=require("dayjs")},145:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},1282:e=>{e.exports=require("child_process")},2048:e=>{e.exports=require("fs")},6249:(e,t)=>{Object.defineProperty(t,"l",{enumerable:!0,get:function(){return function e(t,r){return r in t?t[r]:"then"in t&&"function"==typeof t.then?t.then(t=>e(t,r)):"function"==typeof t&&"default"===r?t:void 0}}})},7541:(e,t,r)=>{r.r(t),r.d(t,{config:()=>g,default:()=>h,routeModule:()=>_});var s={};r.r(s),r.d(s,{default:()=>p});var n=r(1802),i=r(7153),u=r(6249),o=r(2632),a=r(2253),d=r(2481),c=r(8804),l=r.n(c),f=r(1282);async function m({user_id:e}){let t=(await l().select({table:"users",targetId:(0,a._n)(e)})).singleRes;if(!t?.id||!t.username||t.is_super_admin)return;let{username:r}=t;console.log("username",r);let{force_command_file:s,sshd_config_file:n}=(0,d.Z)({user:t}),i=`/bin/bash << 'TURBOCIHEREDOC'
`;i+=`deluser --remove-all-files ${r} || echo "User Deleted!"
rm -f ${s}
rm -f ${n}
TURBOCIHEREDOC
`,(0,f.execSync)(i),l().delete({table:"users",targetId:t.id})}async function p(e,t){try{if("POST"!==e.method)return t.json({success:!1,msg:"Wrong Method"});let{singleRes:r}=await (0,o.Z)({req:e});if(!r?.id||!r.super_admin)return t.json({success:!1,msg:"Unauthorized"});let{user_id:s}=e.body;if((0,a._n)(s)==r.id)throw Error("Can't delete root user!");return await m({user_id:(0,a._n)(s)}),t.json({success:!0})}catch(e){return t.json({success:!1,msg:e.message})}}let h=(0,u.l)(s,"default"),g=(0,u.l)(s,"config"),_=new n.PagesAPIRouteModule({definition:{kind:i.x.PAGES_API,page:"/api/admin/delete-user",pathname:"/api/admin/delete-user",bundlePath:"",filename:""},userland:s})},2253:(e,t,r)=>{r.d(t,{dF:()=>u(),_n:()=>c,lV:()=>a()});let s=require("@moduletrace/datasquirel/dist/client");var n=r.n(s);let i=require("@moduletrace/datasquirel/dist/package-shared/utils/ejson");var u=r.n(i);let o=require("@moduletrace/datasquirel/dist/package-shared/utils/slugify");var a=r.n(o);let d=require("@moduletrace/datasquirel/dist/package-shared/utils/numberfy"),c=r.n(d)();n().utils.serializeQuery,n().utils.deserializeQuery},6941:(e,t,r)=>{function s(e,t){let r=[];for(let e=0;e<t.length;e++){let{name:s,options:n,value:i}=t[e],u=[`${encodeURIComponent(s)}=${encodeURIComponent(i)}`];n.expires&&u.push(`Expires=${n.expires.toDate().toUTCString()}`),void 0!==n.maxAge&&u.push(`Max-Age=${n.maxAge}`),n.path&&u.push(`Path=${n.path}`),n.domain&&u.push(`Domain=${n.domain}`),n.secure&&u.push("Secure"),n.httpOnly&&u.push("HttpOnly"),r.push(u)}let s=r.map(e=>e.join("; "));e.setHeader("Set-Cookie",s)}function n(e,t){return e.split(";").reduce((e,t)=>{let[r,s]=t.trim().split("=").map(decodeURIComponent);return e[r]=s,e},{})[t]||null}r.d(t,{d8:()=>s,ej:()=>n}),r(1635)},9786:(e,t,r)=>{r.d(t,{Z:()=>u});var s=r(2048);let n=require("path");var i=r.n(n);function u(){let{TURBOCI_DEPLOYMENT_ID_FILE:e}=function(){let e=i().resolve(__dirname,"../../"),t="/root/.turboci",r=i().join(t,".config"),s=i().join(r,"turboci.json"),n=i().join(t,"deployment_id"),u=i().join(t,".ssh"),o=i().join(u,"turboci");return{APP_DIR:e,TURBOCI_CONFIG_DIR:r,TURBOCI_CONFIG_JSON_FILE:s,TURBOCI_DIR:t,TURBOCI_SSH_DIR:u,TURBOCI_SSH_KEY_FILE:o,TURBOCI_DEPLOYMENT_ID_FILE:n}}();if(!(0,s.existsSync)(e))throw Error(`\`${e}\` does not exist.`);let t=(0,s.readFileSync)(e,"utf-8").split("-").shift();if(!t)throw Error("Invalid deployment_id");return{auth_key_cookie_name:`turboci-admin-${t}-auth-key`,csrf_cookie_name:`turboci-admin-${t}-csrf`}}},2481:(e,t,r)=>{r.d(t,{Z:()=>s});function s({user:e}){let{username:t}=e,r=`/home/${t}`,s=`${r}/.ssh`,n=`${s}/${t}`;return{user_dir:r,ssh_dir:s,ssh_key_file:n,sshd_config_file:`/etc/ssh/sshd_config.d/${t}.conf`,force_command_file:`/usr/local/bin/turboci-deployment-user-${t}`}}},2632:(e,t,r)=>{r.d(t,{Z:()=>a});var s=r(6941);let n=require("@moduletrace/datasquirel/dist/package-shared/functions/dsql/decrypt");var i=r.n(n),u=r(2253),o=r(9786);async function a({req:e,bun_req:t}){try{let{auth_key_cookie_name:r,csrf_cookie_name:n}=(0,o.Z)(),a=e?.headers.cookie||t?.headers.get("cookie");if(!a)return{success:!1,msg:"Couldn't grab cookie string"};let d=(0,s.ej)(a,r);if(!d)return{success:!1,msg:`No ${r} found in request object.`};let c=i()({encryptedString:d}),l=u.dF.parse(c);if(!l?.id)return{success:!1,msg:"Invalid Auth Key"};let f=(0,s.ej)(a,n);if(!f)return{success:!1,msg:`No ${n} found in request object.`};if(f!==l.csrf_k)return{success:!1,msg:"CSRF mismatch"};return{success:!0,singleRes:l}}catch(e){return{success:!1}}}},7153:(e,t)=>{var r;Object.defineProperty(t,"x",{enumerable:!0,get:function(){return r}}),function(e){e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE"}(r||(r={}))},1802:(e,t,r)=>{e.exports=r(145)}};var t=require("../../../webpack-api-runtime.js");t.C(e);var r=t(t.s=7541);module.exports=r})();
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
"use strict";(()=>{var e={};e.id=482,e.ids=[482],e.modules={8804:e=>{e.exports=require("@moduletrace/nsqlite")},1635:e=>{e.exports=require("dayjs")},145:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},2048:e=>{e.exports=require("fs")},6249:(e,t)=>{Object.defineProperty(t,"l",{enumerable:!0,get:function(){return function e(t,r){return r in t?t[r]:"then"in t&&"function"==typeof t.then?t.then(t=>e(t,r)):"function"==typeof t&&"default"===r?t:void 0}}})},4441:(e,t,r)=>{r.r(t),r.d(t,{config:()=>m,default:()=>p,routeModule:()=>f});var i={};r.r(i),r.d(i,{default:()=>c});var s=r(1802),n=r(7153),u=r(6249),a=r(2632),o=r(8804),d=r.n(o),l=r(2048);async function c(e,t){try{let{singleRes:r}=await (0,a.Z)({req:e});if(!r?.id||!r.super_admin)return t.json({success:!1,msg:"Unauthorized"});let{user_id:i}=e.query,s=(await d().select({table:"users",targetId:i})).singleRes;if(!s?.username)throw Error("Couldn't grab user");let n=`/home/${s.username}/.ssh/${s.username}`;if(!(0,l.existsSync)(n))throw Error("No Private SSH key file found");(0,l.createReadStream)(n).pipe(t)}catch(e){return t.json({success:!1,msg:e.message})}}let p=(0,u.l)(i,"default"),m=(0,u.l)(i,"config"),f=new s.PagesAPIRouteModule({definition:{kind:n.x.PAGES_API,page:"/api/admin/download-private-ssh-key",pathname:"/api/admin/download-private-ssh-key",bundlePath:"",filename:""},userland:i})},2253:(e,t,r)=>{r.d(t,{dF:()=>u(),_n:()=>l,lV:()=>o()});let i=require("@moduletrace/datasquirel/dist/client");var s=r.n(i);let n=require("@moduletrace/datasquirel/dist/package-shared/utils/ejson");var u=r.n(n);let a=require("@moduletrace/datasquirel/dist/package-shared/utils/slugify");var o=r.n(a);let d=require("@moduletrace/datasquirel/dist/package-shared/utils/numberfy"),l=r.n(d)();s().utils.serializeQuery,s().utils.deserializeQuery},6941:(e,t,r)=>{function i(e,t){let r=[];for(let e=0;e<t.length;e++){let{name:i,options:s,value:n}=t[e],u=[`${encodeURIComponent(i)}=${encodeURIComponent(n)}`];s.expires&&u.push(`Expires=${s.expires.toDate().toUTCString()}`),void 0!==s.maxAge&&u.push(`Max-Age=${s.maxAge}`),s.path&&u.push(`Path=${s.path}`),s.domain&&u.push(`Domain=${s.domain}`),s.secure&&u.push("Secure"),s.httpOnly&&u.push("HttpOnly"),r.push(u)}let i=r.map(e=>e.join("; "));e.setHeader("Set-Cookie",i)}function s(e,t){return e.split(";").reduce((e,t)=>{let[r,i]=t.trim().split("=").map(decodeURIComponent);return e[r]=i,e},{})[t]||null}r.d(t,{d8:()=>i,ej:()=>s}),r(1635)},9786:(e,t,r)=>{r.d(t,{Z:()=>u});var i=r(2048);let s=require("path");var n=r.n(s);function u(){let{TURBOCI_DEPLOYMENT_ID_FILE:e}=function(){let e=n().resolve(__dirname,"../../"),t="/root/.turboci",r=n().join(t,".config"),i=n().join(r,"turboci.json"),s=n().join(t,"deployment_id"),u=n().join(t,".ssh"),a=n().join(u,"turboci");return{APP_DIR:e,TURBOCI_CONFIG_DIR:r,TURBOCI_CONFIG_JSON_FILE:i,TURBOCI_DIR:t,TURBOCI_SSH_DIR:u,TURBOCI_SSH_KEY_FILE:a,TURBOCI_DEPLOYMENT_ID_FILE:s}}();if(!(0,i.existsSync)(e))throw Error(`\`${e}\` does not exist.`);let t=(0,i.readFileSync)(e,"utf-8").split("-").shift();if(!t)throw Error("Invalid deployment_id");return{auth_key_cookie_name:`turboci-admin-${t}-auth-key`,csrf_cookie_name:`turboci-admin-${t}-csrf`}}},2632:(e,t,r)=>{r.d(t,{Z:()=>o});var i=r(6941);let s=require("@moduletrace/datasquirel/dist/package-shared/functions/dsql/decrypt");var n=r.n(s),u=r(2253),a=r(9786);async function o({req:e,bun_req:t}){try{let{auth_key_cookie_name:r,csrf_cookie_name:s}=(0,a.Z)(),o=e?.headers.cookie||t?.headers.get("cookie");if(!o)return{success:!1,msg:"Couldn't grab cookie string"};let d=(0,i.ej)(o,r);if(!d)return{success:!1,msg:`No ${r} found in request object.`};let l=n()({encryptedString:d}),c=u.dF.parse(l);if(!c?.id)return{success:!1,msg:"Invalid Auth Key"};let p=(0,i.ej)(o,s);if(!p)return{success:!1,msg:`No ${s} found in request object.`};if(p!==c.csrf_k)return{success:!1,msg:"CSRF mismatch"};return{success:!0,singleRes:c}}catch(e){return{success:!1}}}},7153:(e,t)=>{var r;Object.defineProperty(t,"x",{enumerable:!0,get:function(){return r}}),function(e){e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE"}(r||(r={}))},1802:(e,t,r)=>{e.exports=r(145)}};var t=require("../../../webpack-api-runtime.js");t.C(e);var r=t(t.s=4441);module.exports=r})();
File diff suppressed because one or more lines are too long
+39
View File
@@ -0,0 +1,39 @@
"use strict";(()=>{var e={};e.id=837,e.ids=[837],e.modules={8804:e=>{e.exports=require("@moduletrace/nsqlite")},1635:e=>{e.exports=require("dayjs")},145:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},1282:e=>{e.exports=require("child_process")},2048:e=>{e.exports=require("fs")},6249:(e,t)=>{Object.defineProperty(t,"l",{enumerable:!0,get:function(){return function e(t,r){return r in t?t[r]:"then"in t&&"function"==typeof t.then?t.then(t=>e(t,r)):"function"==typeof t&&"default"===r?t:void 0}}})},8635:(e,t,r)=>{r.r(t),r.d(t,{config:()=>p,default:()=>h,routeModule:()=>f});var s={};r.r(s),r.d(s,{default:()=>m});var n=r(1802),i=r(7153),o=r(6249),u=r(2632),a=r(8804),c=r.n(a),d=r(2253),l=r(246);async function m(e,t){try{if("POST"!==e.method)return t.json({success:!1,msg:"Wrong Method"});let{singleRes:r}=await (0,u.Z)({req:e});if(!r?.id||!r.super_admin)return t.json({success:!1,msg:"Unauthorized"});let{new_user:s,user_id:n}=e.body;if(!s)throw Error("No User Form Sent.");let{first_name:i,last_name:o,email:a,image:m,username:h}=s;if(!i?.match(/./))return t.json({success:!1,msg:"First name is required"});return await c().update({table:"users",targetId:(0,d._n)(n),data:{first_name:i,last_name:o,email:a,image:m,username:h}}),await (0,l.Z)({user_id:(0,d._n)(n)}),t.json({success:!0})}catch(e){return t.json({success:!1,msg:e.message})}}let h=(0,o.l)(s,"default"),p=(0,o.l)(s,"config"),f=new n.PagesAPIRouteModule({definition:{kind:i.x.PAGES_API,page:"/api/admin/edit-user",pathname:"/api/admin/edit-user",bundlePath:"",filename:""},userland:s})},2253:(e,t,r)=>{r.d(t,{dF:()=>o(),_n:()=>d,lV:()=>a()});let s=require("@moduletrace/datasquirel/dist/client");var n=r.n(s);let i=require("@moduletrace/datasquirel/dist/package-shared/utils/ejson");var o=r.n(i);let u=require("@moduletrace/datasquirel/dist/package-shared/utils/slugify");var a=r.n(u);let c=require("@moduletrace/datasquirel/dist/package-shared/utils/numberfy"),d=r.n(c)();n().utils.serializeQuery,n().utils.deserializeQuery},246:(e,t,r)=>{r.d(t,{Z:()=>c});var s=r(2253),n=r(2481),i=r(8804),o=r.n(i),u=r(1282),a=r(2048);async function c({user_id:e}){let t=(await o().select({table:"users",targetId:(0,s._n)(e)})).singleRes;if(!t?.id||!t.username||t.is_super_admin)return;let{username:r}=t,{force_command_file:i,ssh_dir:c,ssh_key_file:d,sshd_config_file:l,user_dir:m}=(0,n.Z)({user:t}),h=`/bin/bash << 'TURBOCIHEREDOC'
`;(0,a.existsSync)(m)||(h+=`useradd --create-home --shell /bin/bash --comment "TurboCI Deployment user ${r}" ${r}
passwd --lock "${r}"
mkdir -p "${c}"
ssh-keygen -t ed25519 -f "${d}" -N "" -C "${r}@$(hostname)"
cp "${d}.pub" "${c}/authorized_keys"
chown -R "${r}:${r}" "${c}"
chmod 700 "${c}"
chmod 600 "${d}"
chmod 644 "${d}.pub"
chmod 600 "${c}/authorized_keys"
`),h+=`cat << 'EOF' > ${i}
#!/bin/bash
case "$SSH_ORIGINAL_COMMAND" in
"shell")
exec /bin/bash
;;
*)
echo "Access denied."
exit 1
;;
esac
EOF
chmod +x ${i}
cat << 'EOF' > ${l}
Match User ${r}
PasswordAuthentication no
PubkeyAuthentication yes
AuthenticationMethods publickey
AllowTcpForwarding yes
X11Forwarding no
ForceCommand ${i}
PermitOpen localhost:80
PermitTTY no
EOF
TURBOCIHEREDOC
`,(0,u.execSync)(h)}},6941:(e,t,r)=>{function s(e,t){let r=[];for(let e=0;e<t.length;e++){let{name:s,options:n,value:i}=t[e],o=[`${encodeURIComponent(s)}=${encodeURIComponent(i)}`];n.expires&&o.push(`Expires=${n.expires.toDate().toUTCString()}`),void 0!==n.maxAge&&o.push(`Max-Age=${n.maxAge}`),n.path&&o.push(`Path=${n.path}`),n.domain&&o.push(`Domain=${n.domain}`),n.secure&&o.push("Secure"),n.httpOnly&&o.push("HttpOnly"),r.push(o)}let s=r.map(e=>e.join("; "));e.setHeader("Set-Cookie",s)}function n(e,t){return e.split(";").reduce((e,t)=>{let[r,s]=t.trim().split("=").map(decodeURIComponent);return e[r]=s,e},{})[t]||null}r.d(t,{d8:()=>s,ej:()=>n}),r(1635)},9786:(e,t,r)=>{r.d(t,{Z:()=>o});var s=r(2048);let n=require("path");var i=r.n(n);function o(){let{TURBOCI_DEPLOYMENT_ID_FILE:e}=function(){let e=i().resolve(__dirname,"../../"),t="/root/.turboci",r=i().join(t,".config"),s=i().join(r,"turboci.json"),n=i().join(t,"deployment_id"),o=i().join(t,".ssh"),u=i().join(o,"turboci");return{APP_DIR:e,TURBOCI_CONFIG_DIR:r,TURBOCI_CONFIG_JSON_FILE:s,TURBOCI_DIR:t,TURBOCI_SSH_DIR:o,TURBOCI_SSH_KEY_FILE:u,TURBOCI_DEPLOYMENT_ID_FILE:n}}();if(!(0,s.existsSync)(e))throw Error(`\`${e}\` does not exist.`);let t=(0,s.readFileSync)(e,"utf-8").split("-").shift();if(!t)throw Error("Invalid deployment_id");return{auth_key_cookie_name:`turboci-admin-${t}-auth-key`,csrf_cookie_name:`turboci-admin-${t}-csrf`}}},2481:(e,t,r)=>{r.d(t,{Z:()=>s});function s({user:e}){let{username:t}=e,r=`/home/${t}`,s=`${r}/.ssh`,n=`${s}/${t}`;return{user_dir:r,ssh_dir:s,ssh_key_file:n,sshd_config_file:`/etc/ssh/sshd_config.d/${t}.conf`,force_command_file:`/usr/local/bin/turboci-deployment-user-${t}`}}},2632:(e,t,r)=>{r.d(t,{Z:()=>a});var s=r(6941);let n=require("@moduletrace/datasquirel/dist/package-shared/functions/dsql/decrypt");var i=r.n(n),o=r(2253),u=r(9786);async function a({req:e,bun_req:t}){try{let{auth_key_cookie_name:r,csrf_cookie_name:n}=(0,u.Z)(),a=e?.headers.cookie||t?.headers.get("cookie");if(!a)return{success:!1,msg:"Couldn't grab cookie string"};let c=(0,s.ej)(a,r);if(!c)return{success:!1,msg:`No ${r} found in request object.`};let d=i()({encryptedString:c}),l=o.dF.parse(d);if(!l?.id)return{success:!1,msg:"Invalid Auth Key"};let m=(0,s.ej)(a,n);if(!m)return{success:!1,msg:`No ${n} found in request object.`};if(m!==l.csrf_k)return{success:!1,msg:"CSRF mismatch"};return{success:!0,singleRes:l}}catch(e){return{success:!1}}}},7153:(e,t)=>{var r;Object.defineProperty(t,"x",{enumerable:!0,get:function(){return r}}),function(e){e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE"}(r||(r={}))},1802:(e,t,r)=>{e.exports=r(145)}};var t=require("../../../webpack-api-runtime.js");t.C(e);var r=t(t.s=8635);module.exports=r})();
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
"use strict";(()=>{var e={};e.id=908,e.ids=[908],e.modules={5529:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/functions/dsql/hashPassword")},8804:e=>{e.exports=require("@moduletrace/nsqlite")},1635:e=>{e.exports=require("dayjs")},145:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},2048:e=>{e.exports=require("fs")},6249:(e,t)=>{Object.defineProperty(t,"l",{enumerable:!0,get:function(){return function e(t,r){return r in t?t[r]:"then"in t&&"function"==typeof t.then?t.then(t=>e(t,r)):"function"==typeof t&&"default"===r?t:void 0}}})},6644:(e,t,r)=>{r.r(t),r.d(t,{config:()=>l,default:()=>d,routeModule:()=>c});var i={};r.r(i),r.d(i,{default:()=>u});var s=r(1802),n=r(7153),a=r(6249),o=r(4751);async function u(e,t){try{if("POST"!==e.method)return t.json({success:!1,msg:"Wrong Method"});let{email:r,username:i,password:s}=e.body;if("string"!=typeof s||!s?.match(/./))throw Error("Password is required!");let n=await (0,o.Z)({res:t,email_or_username:r||i,password:s});return t.json(n)}catch(e){return t.json({success:!1,msg:e.message})}}let d=(0,a.l)(i,"default"),l=(0,a.l)(i,"config"),c=new s.PagesAPIRouteModule({definition:{kind:n.x.PAGES_API,page:"/api/auth/login",pathname:"/api/auth/login",bundlePath:"",filename:""},userland:i})},2253:(e,t,r)=>{r.d(t,{dF:()=>a(),_n:()=>l,lV:()=>u()});let i=require("@moduletrace/datasquirel/dist/client");var s=r.n(i);let n=require("@moduletrace/datasquirel/dist/package-shared/utils/ejson");var a=r.n(n);let o=require("@moduletrace/datasquirel/dist/package-shared/utils/slugify");var u=r.n(o);let d=require("@moduletrace/datasquirel/dist/package-shared/utils/numberfy"),l=r.n(d)();s().utils.serializeQuery,s().utils.deserializeQuery},4751:(e,t,r)=>{r.d(t,{Z:()=>f});var i=r(8804),s=r.n(i),n=r(6941),a=r(2253);let o=require("@moduletrace/datasquirel/dist/package-shared/functions/dsql/encrypt");var u=r.n(o),d=r(5529),l=r.n(d),c=r(1635),p=r.n(c),m=r(9786);async function f({res:e,user_id:t,password:r,email_or_username:i}){let o;if(t){let e=await s().select({table:"users",targetId:t});if(!e.singleRes?.id)throw Error("Couldn't Find user for login");o=e.singleRes}if(i){let e=await s().select({table:"users",query:{query:{email:{value:i},username:{value:i}},searchOperator:"OR"}});if(!e.singleRes?.id)throw Error("Couldn't Find user for login");o=e.singleRes}if(!o)return{success:!1,msg:"User Not Found!"};if(r&&l()({password:r})!==o.password)return{success:!1,msg:"Invalid Password."};let d=Date.now(),c=Math.random().toString(36).substring(2)+"-"+Math.random().toString(36).substring(2),f={first_name:o.first_name,last_name:o.last_name,date:d,email:o.email,csrf_k:c,id:o.id,logged_in_status:!0,image:o.image,image_thumbnail:o.image,super_admin:!!o.is_super_admin},g=a.dF.stringify(f),h=u()({data:g||""}),_=p()(Date.now()).add(7,"days");_.add(7,"days");let{auth_key_cookie_name:y,csrf_cookie_name:P}=(0,m.Z)();return(0,n.d8)(e,[{name:y,value:h||"",options:{secure:"localhost"!==process.env.DOMAIN,path:"/",expires:_,domain:process.env.DOMAIN}},{name:P,value:c,options:{path:"/",expires:_,domain:process.env.DOMAIN}}]),{success:!0,singleRes:f}}},6941:(e,t,r)=>{function i(e,t){let r=[];for(let e=0;e<t.length;e++){let{name:i,options:s,value:n}=t[e],a=[`${encodeURIComponent(i)}=${encodeURIComponent(n)}`];s.expires&&a.push(`Expires=${s.expires.toDate().toUTCString()}`),void 0!==s.maxAge&&a.push(`Max-Age=${s.maxAge}`),s.path&&a.push(`Path=${s.path}`),s.domain&&a.push(`Domain=${s.domain}`),s.secure&&a.push("Secure"),s.httpOnly&&a.push("HttpOnly"),r.push(a)}let i=r.map(e=>e.join("; "));e.setHeader("Set-Cookie",i)}function s(e,t){return e.split(";").reduce((e,t)=>{let[r,i]=t.trim().split("=").map(decodeURIComponent);return e[r]=i,e},{})[t]||null}r.d(t,{d8:()=>i,ej:()=>s}),r(1635)},9786:(e,t,r)=>{r.d(t,{Z:()=>a});var i=r(2048);let s=require("path");var n=r.n(s);function a(){let{TURBOCI_DEPLOYMENT_ID_FILE:e}=function(){let e=n().resolve(__dirname,"../../"),t="/root/.turboci",r=n().join(t,".config"),i=n().join(r,"turboci.json"),s=n().join(t,"deployment_id"),a=n().join(t,".ssh"),o=n().join(a,"turboci");return{APP_DIR:e,TURBOCI_CONFIG_DIR:r,TURBOCI_CONFIG_JSON_FILE:i,TURBOCI_DIR:t,TURBOCI_SSH_DIR:a,TURBOCI_SSH_KEY_FILE:o,TURBOCI_DEPLOYMENT_ID_FILE:s}}();if(!(0,i.existsSync)(e))throw Error(`\`${e}\` does not exist.`);let t=(0,i.readFileSync)(e,"utf-8").split("-").shift();if(!t)throw Error("Invalid deployment_id");return{auth_key_cookie_name:`turboci-admin-${t}-auth-key`,csrf_cookie_name:`turboci-admin-${t}-csrf`}}},7153:(e,t)=>{var r;Object.defineProperty(t,"x",{enumerable:!0,get:function(){return r}}),function(e){e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE"}(r||(r={}))},1802:(e,t,r)=>{e.exports=r(145)}};var t=require("../../../webpack-api-runtime.js");t.C(e);var r=t(t.s=6644);module.exports=r})();
"use strict";(()=>{var e={};e.id=908,e.ids=[908],e.modules={5529:e=>{e.exports=require("@moduletrace/datasquirel/dist/package-shared/functions/dsql/hashPassword")},8804:e=>{e.exports=require("@moduletrace/nsqlite")},1635:e=>{e.exports=require("dayjs")},145:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},2048:e=>{e.exports=require("fs")},6249:(e,t)=>{Object.defineProperty(t,"l",{enumerable:!0,get:function(){return function e(t,r){return r in t?t[r]:"then"in t&&"function"==typeof t.then?t.then(t=>e(t,r)):"function"==typeof t&&"default"===r?t:void 0}}})},6644:(e,t,r)=>{r.r(t),r.d(t,{config:()=>l,default:()=>d,routeModule:()=>c});var i={};r.r(i),r.d(i,{default:()=>u});var a=r(1802),n=r(7153),s=r(6249),o=r(4751);async function u(e,t){try{if("POST"!==e.method)return t.json({success:!1,msg:"Wrong Method"});let{email:r,username:i,password:a}=e.body;if("string"!=typeof a||!a?.match(/./))throw Error("Password is required!");let n=await (0,o.Z)({res:t,email_or_username:r||i,password:a,req:e});return t.json(n)}catch(e){return t.json({success:!1,msg:e.message})}}let d=(0,s.l)(i,"default"),l=(0,s.l)(i,"config"),c=new a.PagesAPIRouteModule({definition:{kind:n.x.PAGES_API,page:"/api/auth/login",pathname:"/api/auth/login",bundlePath:"",filename:""},userland:i})},2253:(e,t,r)=>{r.d(t,{dF:()=>s(),_n:()=>l,lV:()=>u()});let i=require("@moduletrace/datasquirel/dist/client");var a=r.n(i);let n=require("@moduletrace/datasquirel/dist/package-shared/utils/ejson");var s=r.n(n);let o=require("@moduletrace/datasquirel/dist/package-shared/utils/slugify");var u=r.n(o);let d=require("@moduletrace/datasquirel/dist/package-shared/utils/numberfy"),l=r.n(d)();a().utils.serializeQuery,a().utils.deserializeQuery},4751:(e,t,r)=>{r.d(t,{Z:()=>f});var i=r(8804),a=r.n(i),n=r(6941),s=r(2253);let o=require("@moduletrace/datasquirel/dist/package-shared/functions/dsql/encrypt");var u=r.n(o),d=r(5529),l=r.n(d),c=r(1635),m=r.n(c),p=r(9786);async function f({req:e,res:t,user_id:r,password:i,email_or_username:o}){let d;if(r){let e=await a().select({table:"users",targetId:r});if(!e.singleRes?.id)throw Error("Couldn't Find user for login");d=e.singleRes}if(o){let e=await a().select({table:"users",query:{query:{email:{value:o},username:{value:o}},searchOperator:"OR"}});if(!e.singleRes?.id)throw Error("Couldn't Find user for login");d=e.singleRes}if(!d)return{success:!1,msg:"User Not Found!"};if(i&&l()({password:i})!==d.password)return{success:!1,msg:"Invalid Password."};let c=Date.now(),f=Math.random().toString(36).substring(2)+"-"+Math.random().toString(36).substring(2),h={first_name:d.first_name,last_name:d.last_name,date:c,email:d.email,csrf_k:f,id:d.id,logged_in_status:!0,image:d.image,image_thumbnail:d.image,super_admin:!!d.is_super_admin},g=s.dF.stringify(h),_=u()({data:g||""}),y=m()(Date.now()).add(7,"days");y.add(7,"days");let{auth_key_cookie_name:P,csrf_cookie_name:q}=(0,p.Z)(),v=e.headers.host;return(0,n.d8)(t,[{name:P,value:_||"",options:{secure:"localhost"!==v,path:"/",expires:y,domain:v}},{name:q,value:f,options:{path:"/",expires:y,domain:v}}]),{success:!0,singleRes:h}}},6941:(e,t,r)=>{function i(e,t){let r=[];for(let e=0;e<t.length;e++){let{name:i,options:a,value:n}=t[e],s=[`${encodeURIComponent(i)}=${encodeURIComponent(n)}`];a.expires&&s.push(`Expires=${a.expires.toDate().toUTCString()}`),void 0!==a.maxAge&&s.push(`Max-Age=${a.maxAge}`),a.path&&s.push(`Path=${a.path}`),a.domain&&s.push(`Domain=${a.domain}`),a.secure&&s.push("Secure"),a.httpOnly&&s.push("HttpOnly"),r.push(s)}let i=r.map(e=>e.join("; "));e.setHeader("Set-Cookie",i)}function a(e,t){return e.split(";").reduce((e,t)=>{let[r,i]=t.trim().split("=").map(decodeURIComponent);return e[r]=i,e},{})[t]||null}r.d(t,{d8:()=>i,ej:()=>a}),r(1635)},9786:(e,t,r)=>{r.d(t,{Z:()=>s});var i=r(2048);let a=require("path");var n=r.n(a);function s(){let{TURBOCI_DEPLOYMENT_ID_FILE:e}=function(){let e=n().resolve(__dirname,"../../"),t="/root/.turboci",r=n().join(t,".config"),i=n().join(r,"turboci.json"),a=n().join(t,"deployment_id"),s=n().join(t,".ssh"),o=n().join(s,"turboci");return{APP_DIR:e,TURBOCI_CONFIG_DIR:r,TURBOCI_CONFIG_JSON_FILE:i,TURBOCI_DIR:t,TURBOCI_SSH_DIR:s,TURBOCI_SSH_KEY_FILE:o,TURBOCI_DEPLOYMENT_ID_FILE:a}}();if(!(0,i.existsSync)(e))throw Error(`\`${e}\` does not exist.`);let t=(0,i.readFileSync)(e,"utf-8").split("-").shift();if(!t)throw Error("Invalid deployment_id");return{auth_key_cookie_name:`turboci-admin-${t}-auth-key`,csrf_cookie_name:`turboci-admin-${t}-csrf`}}},7153:(e,t)=>{var r;Object.defineProperty(t,"x",{enumerable:!0,get:function(){return r}}),function(e){e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE"}(r||(r={}))},1802:(e,t,r)=>{e.exports=r(145)}};var t=require("../../../webpack-api-runtime.js");t.C(e);var r=t(t.s=6644);module.exports=r})();
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
{"version":1,"files":["../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/bytes/index.js","../../../../../node_modules/next/dist/compiled/bytes/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/pages-api.runtime.prod.js","../../../../../node_modules/next/dist/compiled/node-html-parser/index.js","../../../../../node_modules/next/dist/compiled/node-html-parser/package.json","../../../../../node_modules/next/dist/compiled/raw-body/index.js","../../../../../node_modules/next/dist/compiled/raw-body/package.json","../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/package.json","../../../../../package.json","../../../package.json","../../chunks/150.js","../../chunks/248.js","../../chunks/752.js","../../chunks/800.js","../../chunks/824.js","../../chunks/859.js","../../chunks/font-manifest.json","../../webpack-api-runtime.js"]}
{"version":1,"files":["../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/bytes/index.js","../../../../../node_modules/next/dist/compiled/bytes/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/pages-api.runtime.prod.js","../../../../../node_modules/next/dist/compiled/node-html-parser/index.js","../../../../../node_modules/next/dist/compiled/node-html-parser/package.json","../../../../../node_modules/next/dist/compiled/raw-body/index.js","../../../../../node_modules/next/dist/compiled/raw-body/package.json","../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/package.json","../../../../../package.json","../../../package.json","../../chunks/150.js","../../chunks/248.js","../../chunks/330.js","../../chunks/752.js","../../chunks/824.js","../../chunks/859.js","../../chunks/font-manifest.json","../../webpack-api-runtime.js"]}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
{"version":1,"files":["../../../../../node_modules/client-only/index.js","../../../../../node_modules/client-only/package.json","../../../../../node_modules/dayjs/dayjs.min.js","../../../../../node_modules/dayjs/package.json","../../../../../node_modules/lodash/lodash.js","../../../../../node_modules/lodash/package.json","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/pages.runtime.prod.js","../../../../../node_modules/next/dist/compiled/node-html-parser/index.js","../../../../../node_modules/next/dist/compiled/node-html-parser/package.json","../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/package.json","../../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js","../../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js","../../../../../node_modules/react-dom/cjs/react-dom-server.browser.development.js","../../../../../node_modules/react-dom/cjs/react-dom-server.browser.production.js","../../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../../node_modules/react-dom/cjs/react-dom.production.js","../../../../../node_modules/react-dom/index.js","../../../../../node_modules/react-dom/package.json","../../../../../node_modules/react-dom/server.browser.js","../../../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../../../node_modules/react/cjs/react.development.js","../../../../../node_modules/react/cjs/react.production.js","../../../../../node_modules/react/index.js","../../../../../node_modules/react/jsx-runtime.js","../../../../../node_modules/react/package.json","../../../../../node_modules/styled-jsx/dist/index/index.js","../../../../../node_modules/styled-jsx/index.js","../../../../../node_modules/styled-jsx/package.json","../../../../../node_modules/tailwind-merge/dist/bundle-cjs.js","../../../../../node_modules/tailwind-merge/dist/bundle-mjs.mjs","../../../../../node_modules/tailwind-merge/package.json","../../../../../package.json","../../../package.json","../../chunks/150.js","../../chunks/248.js","../../chunks/752.js","../../chunks/800.js","../../chunks/824.js","../../chunks/859.js","../../chunks/font-manifest.json","../../webpack-runtime.js"]}
{"version":1,"files":["../../../../../node_modules/client-only/index.js","../../../../../node_modules/client-only/package.json","../../../../../node_modules/dayjs/dayjs.min.js","../../../../../node_modules/dayjs/package.json","../../../../../node_modules/lodash/lodash.js","../../../../../node_modules/lodash/package.json","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/pages.runtime.prod.js","../../../../../node_modules/next/dist/compiled/node-html-parser/index.js","../../../../../node_modules/next/dist/compiled/node-html-parser/package.json","../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/package.json","../../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js","../../../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js","../../../../../node_modules/react-dom/cjs/react-dom-server.browser.development.js","../../../../../node_modules/react-dom/cjs/react-dom-server.browser.production.js","../../../../../node_modules/react-dom/cjs/react-dom.development.js","../../../../../node_modules/react-dom/cjs/react-dom.production.js","../../../../../node_modules/react-dom/index.js","../../../../../node_modules/react-dom/package.json","../../../../../node_modules/react-dom/server.browser.js","../../../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../../../node_modules/react/cjs/react.development.js","../../../../../node_modules/react/cjs/react.production.js","../../../../../node_modules/react/index.js","../../../../../node_modules/react/jsx-runtime.js","../../../../../node_modules/react/package.json","../../../../../node_modules/styled-jsx/dist/index/index.js","../../../../../node_modules/styled-jsx/index.js","../../../../../node_modules/styled-jsx/package.json","../../../../../node_modules/tailwind-merge/dist/bundle-cjs.js","../../../../../node_modules/tailwind-merge/dist/bundle-mjs.mjs","../../../../../node_modules/tailwind-merge/package.json","../../../../../package.json","../../../package.json","../../chunks/150.js","../../chunks/248.js","../../chunks/330.js","../../chunks/752.js","../../chunks/824.js","../../chunks/859.js","../../chunks/font-manifest.json","../../webpack-runtime.js"]}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long