name: GithHub Pages
on:
  push:
    tags:
      - '*'

permissions: {}
jobs:
  github-pages:
    permissions:
      contents: write # to push pages branch (peaceiris/actions-gh-pages)

    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Setup PHP, with composer and extensions
        uses: shivammathur/setup-php@v2
        with:
          php-version: 8.3
          coverage: none # remove xdebug

      - name: Build API documentation
        run: |
          curl -LO https://github.com/phpDocumentor/phpDocumentor/releases/download/v3.8.1/phpDocumentor.phar
          php phpDocumentor.phar --directory src/ --target docs/api --visibility=public,protected

      - name: Deploy to GithHub Pages
        uses: peaceiris/actions-gh-pages@v4
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          publish_dir: ./docs/api
