From 3d9685adeb991569a51a4073fa39ee12b1daa658 Mon Sep 17 00:00:00 2001 From: Nurfog Date: Wed, 9 Sep 2026 10:36:23 -0300 Subject: [PATCH] feat: upload dentro de la plantilla SamShell (sin sidenav propio) --- src/app/upload/page.tsx | 394 +++++++++++++++++++--------------------- 1 file changed, 185 insertions(+), 209 deletions(-) diff --git a/src/app/upload/page.tsx b/src/app/upload/page.tsx index a219330..5fb2e73 100644 --- a/src/app/upload/page.tsx +++ b/src/app/upload/page.tsx @@ -1,9 +1,12 @@ "use client"; import { useState } from "react"; -import Link from "next/link"; +import SamShell from "@/components/SamShell"; +import { useModules } from "@/lib/store"; +import { itMenu } from "@/lib/sam"; export default function UploadPage() { + const { data } = useModules(); const [form, setForm] = useState({ name: "", repoUrl: "", @@ -59,222 +62,195 @@ export default function UploadPage() { }; return ( - <> -
-
-
-
- -
-
-
-

Sistema SAM

-
-
-

Subir Proyecto

-
-
- - Volver - -
-
+ +
+ Integrar Nuevo Módulo
-
-
-
-
-
- Integrar Nuevo Módulo +
+

+ Registra un proyecto Next.js 15 + Bootstrap desde un repositorio + Gitea. Se clonará, desplegará automáticamente y quedará disponible en{" "} + https://{"{subdominio}"}.devops.norteamericano.cl. Cada push futuro + actualiza el módulo vía webhook. +

+ + {result && ( +
+ + {result.message} +
+ )} + +
+
+
+ + +
Minúsculas, guiones, empieza con letra.
-
-

- Registra un proyecto Next.js 15 + Bootstrap desde un repositorio - Gitea. Se clonará, desplegará automáticamente y quedará disponible en{" "} - https://{"{subdominio}"}.devops.norteamericano.cl. Cada push futuro - actualiza el módulo vía webhook. -

- - {result && ( -
- - {result.message} -
- )} - - -
-
- - -
Minúsculas, guiones, empieza con letra.
-
- -
- - -
Debe ser accesible desde el deployer (https://git.norteamericano.cl).
-
- -
-
- - Configuración automática: puerto y subdominio se asignan automáticamente - {form.name && ( - - {" "} - → https://{form.subdomain || form.name}.devops.norteamericano.cl - {form.port ? ` :${form.port}` : " (puerto auto)"} - - )} - . Se crean los registros en Caddy y DNS. -
-
- -
- - Opciones avanzadas (puerto / subdominio manual) - -
-
- - -
https://{form.subdomain || form.name || "subdominio"}.devops.norteamericano.cl
-
-
- - -
Se asigna automáticamente si se deja vacío.
-
-
-
- -
- - -
- Define en qué sección del índice SAM aparece el módulo. -
-
- -
- - -
- main = producción, otra rama = desarrollo. -
-
- -
-
- - El repositorio debe ser un proyecto Next.js 15 (con{" "} - package.json en raíz o en frontend/) y usar{" "} - Bootstrap. Si no trae Dockerfile, se genera uno automáticamente. -
-
- -
- - - Cancelar - -
-
- +
+ + +
Debe ser accesible desde el deployer (https://git.norteamericano.cl).
-
-
- Requisitos del repositorio -
-
    -
  • - Proyecto Next.js 15 con next build / next start -
  • -
  • Bootstrap 5 (via CDN o npm) + Boxicons opcional
  • -
  • - Variable NEXT_PUBLIC_API_URL=https://api.devops.norteamericano.cl{" "} - para consumir el backend -
  • -
  • Branch por defecto: main (configurable)
  • -
+
+
+ + Configuración automática: puerto y subdominio se asignan automáticamente + {form.name && ( + + {" "} + → https://{form.subdomain || form.name}.devops.norteamericano.cl + {form.port ? ` :${form.port}` : " (puerto auto)"} + + )} + . Se crean los registros en Caddy y DNS. +
+
+ +
+ + Opciones avanzadas (puerto / subdominio manual) + +
+
+ + +
https://{form.subdomain || form.name || "subdominio"}.devops.norteamericano.cl
+
+
+ + +
Se asigna automáticamente si se deja vacío.
+
+
+
+ +
+ + +
+ Define en qué sección del índice SAM aparece el módulo. +
+
+ +
+ + +
+ main = producción, otra rama = desarrollo. +
+
+ +
+
+ + El repositorio debe ser un proyecto Next.js 15 (con{" "} + package.json en raíz o en frontend/) y usar{" "} + Bootstrap. Si no trae Dockerfile, se genera uno automáticamente. +
+
+ +
+
-
+
- + +
+
+ Requisitos del repositorio +
+
    +
  • + Proyecto Next.js 15 con next build / next start +
  • +
  • Bootstrap 5 (via CDN o npm) + Boxicons opcional
  • +
  • + Variable NEXT_PUBLIC_API_URL=https://api.devops.norteamericano.cl{" "} + para consumir el backend +
  • +
  • Branch por defecto: main (configurable)
  • +
+
+ ); }