name: Build Theme

on: [pull_request_target]

jobs:
  build:
    runs-on: ubuntu-latest
    if: ${{ github.actor == 'dependabot[bot]' }}
    steps:
      - name: Checkout
        uses: actions/checkout@v4
        with:
          ref: "${{ github.head_ref }}"
      - name: Install dependencies and Build Theme
        uses: actions/setup-node@v4
      - run: npm install
      - run: npm run assets
      - name: Commit and push Chart.js changes
        uses: stefanzweifel/git-auto-commit-action@v6
        with:
          branch: "${{ github.head_ref }}"
          push_options: "--dry-run"
          file_pattern: "assets/lib/chart/*"
          commit_message: "📦 Update packaged ChartJS"
      - name: Commit Fuse changes
        uses: stefanzweifel/git-auto-commit-action@v6
        with:
          branch: "${{ github.head_ref }}"
          push_options: "--dry-run"
          file_pattern: "assets/lib/fuse/*"
          commit_message: "📦 Update packaged FuseJS"
      - name: Commit KaTeX changes
        uses: stefanzweifel/git-auto-commit-action@v6
        with:
          branch: "${{ github.head_ref }}"
          push_options: "--dry-run"
          file_pattern: "assets/lib/katex/*"
          commit_message: "📦 Update packaged KaTeX"
      - name: Commit Mermaid changes
        uses: stefanzweifel/git-auto-commit-action@v6
        with:
          branch: "${{ github.head_ref }}"
          push_options: "--dry-run"
          file_pattern: "assets/lib/mermaid/*"
          commit_message: "📦 Update packaged Mermaid"
      - run: npm run build
      - name: Commit CSS changes
        uses: stefanzweifel/git-auto-commit-action@v6
        with:
          branch: "${{ github.head_ref }}"
          push_options: "--dry-run"
          file_pattern: "assets/css/compiled/main.css"
          commit_message: "💄 Rebuild CSS"
      - run: git push
