Nahrazeni sablony kompletnim webem a klientskym portalem
Web a portal Automia v jednom containeru. Express obsluhuje API i zbuildovanou React aplikaci z dist/public. Obsah: - verejny web: homepage, sluzby, o nas, kontakt, 404 - prihlaseni pres JWT, demo ucty - portal: prehled s grafem, tickety, incidenty, automatizace, konektory - builder automatizaci: strom akci, vetveni podminkou - katalog 25 konektoru v 8 kategoriich - webhook s registrovanou adresou, token generuje server - zivy dashboard pres SSE vcetne simulace provozu - Swagger UI na /docs a OpenAPI na /openapi.json Soulad s AGENTS.md: - ROOT_PATH z prostredi, prefix proxy nikde nehardcodovan - mount na koren i na prefix, funguje s handle_path i bez nej - base tag a window.__BASE_PATH__ vkladane do index.html za behu - OpenAPI servers obsahuje prefix, Try it out vola spravnou adresu - povinne /health a /docs, port 3000, naslouchani na 0.0.0.0 - secrets jen z environment variables, nikdy v logu Dokumentace ve slozce documentation/.
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
import tailwindcss from '@tailwindcss/vite';
|
||||
import react from '@vitejs/plugin-react';
|
||||
import path from 'node:path';
|
||||
import { fileURLToPath } from 'node:url';
|
||||
import { defineConfig } from 'vite';
|
||||
|
||||
const here = path.dirname(fileURLToPath(import.meta.url));
|
||||
|
||||
export default defineConfig({
|
||||
root: path.resolve(here, 'web'),
|
||||
/**
|
||||
* Relativni base. Aplikace bezi za reverse proxy na /apps/<app-id>, ktery
|
||||
* neni znamy pri buildu. Server proto do index.html vklada <base href>
|
||||
* podle ROOT_PATH a relativni odkazy se podle nej slozi spravne.
|
||||
*/
|
||||
base: './',
|
||||
plugins: [react(), tailwindcss()],
|
||||
resolve: {
|
||||
// Musi zustat v souladu s "paths" ve web/tsconfig.json
|
||||
alias: {
|
||||
'@': path.resolve(here, 'web/src'),
|
||||
},
|
||||
},
|
||||
server: {
|
||||
port: 5173,
|
||||
proxy: {
|
||||
// Lokalni vyvoj: web na 5173 vola API na 3000, bez reseni CORS.
|
||||
'/api': { target: 'http://localhost:3000', changeOrigin: true },
|
||||
'/webhook': { target: 'http://localhost:3000', changeOrigin: true },
|
||||
},
|
||||
},
|
||||
build: {
|
||||
// Server tuhle slozku obsluhuje jako statiku, viz src/index.ts.
|
||||
outDir: path.resolve(here, 'dist/public'),
|
||||
emptyOutDir: true,
|
||||
sourcemap: true,
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user