name: Publish
on:
  push:
    tags:
      - '*'

jobs:
  publish:
    name: 'publish'
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Set Versions
        uses: actions/github-script@v4
        id: set_version
        with:
          script: |
            const tag = context.ref.substring(10).replace('v', '')
            core.setOutput('tag', tag)
            console.log(tag)

      - name: Add version to package.json
        uses: jaywcjlove/github-action-package@main
        with:
          path: './package.json'
          data: |
            {
              "version": "${{ steps.set_version.outputs.tag }}"
            }

      - uses: actions/setup-node@v4
        with:
          node-version: '20.x'
          registry-url: 'https://registry.npmjs.org'
      - run: yarn install --frozen-lockfile

      - run: npm publish
        env:
          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}