name: Publish npm packages

on:
  # Auto-publish every change to the default branch
  push:  
    branches: [main]
  workflow_dispatch:
    inputs:
      bump:
        description: How to increase the version
        type: choice
        default: patch
        options:
        - patch
        - minor
        - major

jobs:
  publish:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: 16
          registry-url: 'https://npm.pkg.github.com'
          scope: '@github'

      - run: npm ci
        env:
          NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

      - run: |
          git config user.name github-actions
          git config user.email github-actions@github.com

      - name: Publish packages
        run: npx lerna publish ${{ github.event.inputs.bump || 'patch' }} --yes
        env:
          NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
