name: Build
on:
  push:
    branches: ["main"]
  pull_request:
    branches: ["main"]

jobs:
  build:
    runs-on: euleros-2.10.1
    steps:
      - uses: checkout-action@0.0.1
      - name: Use Node.js
        uses: setup-node@0.0.1
        with:
          node-version: "20.10.0"

      # GitCode does not support pnpm action setup
      # - name: Install pnpm
      #   run: npm install -g pnpm@10

      - name: Install dependencies
        run: cd repo_workspace && npm install

      - name: Build MateChat
        run: cd repo_workspace && npm run build

      - name: Build Playground
        run: cd repo_workspace && npm run playground:build

      # Biome is not supported in GitCode 
      # - name: Lint
      #   run: cd repo_workspace && npm run lint

      - name: Typecheck
        run: cd repo_workspace && npm run typecheck

      - name: Test
        run: cd repo_workspace && npm run test