NextGB, web demo powerd by vue

This commit is contained in:
chenhaibo
2025-02-03 16:27:46 +08:00
parent 0b7126b12b
commit c80247286e
113 changed files with 16731 additions and 9944 deletions

137
build.bat Normal file
View File

@ -0,0 +1,137 @@
@echo off
setlocal
set BINARY_NAME=bin\srs-sip.exe
set MAIN_PATH=main\main.go
set VUE_DIR=html\NextGB
set CONFIG_FILE=conf\config.yaml
if "%1"=="" goto all
if "%1"=="build" goto build
if "%1"=="clean" goto clean
if "%1"=="run" goto run
if "%1"=="vue-install" goto vue-install
if "%1"=="vue-build" goto vue-build
if "%1"=="vue-dev" goto vue-dev
if "%1"=="all" goto all
:build
echo Building Go binary...
if not exist "bin" mkdir bin
go build -o %BINARY_NAME% %MAIN_PATH%
echo Copying config file...
if exist "%CONFIG_FILE%" (
mkdir "bin\%~dp0%CONFIG_FILE%" 2>nul
xcopy /s /i /y "%CONFIG_FILE%" "bin\%~dp0%CONFIG_FILE%\"
echo Config file copied to bin\%~dp0%CONFIG_FILE%
) else (
echo Warning: %CONFIG_FILE% not found
)
goto :eof
:clean
echo Cleaning...
if exist %BINARY_NAME% del /F /Q %BINARY_NAME%
if exist %VUE_DIR%\dist rd /S /Q %VUE_DIR%\dist
if exist %VUE_DIR%\node_modules rd /S /Q %VUE_DIR%\node_modules
if exist bin\html rd /S /Q bin\html
if exist bin\%CONFIG_FILE% del /F /Q bin\%CONFIG_FILE%
goto :eof
:run
echo Running application...
go build -o %BINARY_NAME% %MAIN_PATH%
%BINARY_NAME%
goto :eof
:vue-install
echo Installing Vue dependencies...
cd %VUE_DIR%
call npm install
cd ..\..
goto :eof
:vue-build
echo Building Vue project...
if not exist "%VUE_DIR%" (
echo Error: Vue directory not found at %VUE_DIR%
goto :eof
)
rem Check Node.js version
where node >nul 2>nul
if errorlevel 1 (
echo Error: Node.js is not installed
goto :eof
)
for /f "tokens=1,2,3 delims=." %%a in ('node -v') do (
set NODE_MAJOR=%%a
)
set NODE_MAJOR=%NODE_MAJOR:~1%
if %NODE_MAJOR% LSS 17 (
echo Error: Node.js version 17 or higher is required ^(current version: %NODE_MAJOR%^)
echo Please upgrade Node.js using the official installer or nvm-windows
goto :eof
)
pushd %VUE_DIR%
echo Current directory: %CD%
if not exist "package.json" (
echo Error: package.json not found in %VUE_DIR%
popd
goto :eof
)
rem Check if node_modules exists and install dependencies if needed
if not exist "node_modules" (
echo Node modules not found, installing dependencies...
call npm install
if errorlevel 1 (
echo Error: Failed to install dependencies
popd
goto :eof
)
)
echo Running npm run build...
call npm run build
if errorlevel 1 (
echo Error: Vue build failed
popd
goto :eof
)
popd
echo Vue build completed successfully
echo Copying dist files to bin directory...
if exist bin\html rd /S /Q bin\html
if not exist bin mkdir bin
if not exist "%VUE_DIR%\dist" (
echo Error: Vue dist directory not found at %VUE_DIR%\dist
goto :eof
)
robocopy "%VUE_DIR%\dist" "bin\html" /E /NFL /NDL /NJH /NJS /nc /ns /np
if errorlevel 8 (
echo Error copying files
) else (
echo Vue dist files successfully copied to bin\html
)
goto :eof
:vue-dev
echo Starting Vue development server...
cd %VUE_DIR%
call npm run dev
cd ..\..
goto :eof
:all
echo Building entire project...
call :build
call :vue-build
echo.
echo Press any key to exit...
pause>nul
goto :eof