name: VRCX

on:
  - workflow_dispatch

jobs:
  build_dotnet:
    runs-on: windows-latest

    steps:
      - uses: actions/checkout@v3
      - name: Setup .NET 8
        uses: actions/setup-dotnet@v3
        with:
          dotnet-version: "8.0.x"
      - name: Build .NET Application
        run: dotnet build -p:Configuration=Release -p:Platform=x64 -p:EnableWindowsTargeting=true --self-contained
      - uses: actions/upload-artifact@v3
        with:
          name: vrcx
          path: bin/x64/Release

  build_node:
    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: html

    steps:
      - uses: actions/checkout@v3
      - name: Use Node.js ${{ matrix.node-version }}
        uses: actions/setup-node@v3
        with:
          node-version: ${{ matrix.node-version }}
      - name: Restore dependencies
        run: npm ci
      - name: Build
        run: npm run production
      - name: Fix folder structure
        id: fix-folders
        run: |
          mkdir upload
          mv dist upload/html
      - uses: actions/upload-artifact@v3
        with:
          name: vrcx
          path: html/upload
