name: "Build Action"
on:
  push:
  pull_request:
  workflow_dispatch:

permissions: write-all

jobs:
  Build-LiteLoader:
    runs-on: ubuntu-latest
    steps:
      - name: Clone Main Repository
        uses: actions/checkout@v4
      - name: Use Node.js 20.X
        uses: actions/setup-node@v4
        with:
          node-version: 20.x
      - name: Build NapCat.Framework
        run: |
          npm i && cd napcat.webui && npm i && cd .. || exit 1
          npm run build:framework && npm run depend || exit 1
          rm package-lock.json
      - name: Upload Artifact
        uses: actions/upload-artifact@v4
        with:
          name: NapCat.Framework
          path: dist
  Build-Shell:
    runs-on: ubuntu-latest
    steps:
      - name: Clone Main Repository
        uses: actions/checkout@v4
      - name: Use Node.js 20.X
        uses: actions/setup-node@v4
        with:
          node-version: 20.x
      - name: Build NapCat.Shell
        run: |
          npm i && cd napcat.webui && npm i && cd .. || exit 1
          npm run build:shell && npm run depend || exit 1
          rm package-lock.json
      - name: Upload Artifact
        uses: actions/upload-artifact@v4
        with:
          name: NapCat.Shell
          path: dist
