name: Publish to NPM
on:
  push:
    branches: [main]
  workflow_dispatch:
jobs:
  npm-publish:
    name: npm-publish
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v2
      - name: Install Node.js, NPM and Yarn
        uses: actions/setup-node@v1
        with:
          node-version: 14
      - name: Install deps
        run: yarn
      - name: Build NPM Package
        run: yarn build
      - name: Publish if version has been updated
        uses: pascalgn/npm-publish-action@1.3.7
        with:
          tag_name: "v%s"
          tag_message: "v%s"
          create_tag: "true"
          commit_pattern: "^Release (\\S+)"
          publish_args: "--non-interactive"
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          NPM_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
