# Publish to npm
name: Build & Publish

permissions:
  deployments: write

on:
  push:
    branches:
      - main
  workflow_dispatch:

env:
  NODE_VERSION: 12.14.1
  NPM_VERSION: 8.15.1

jobs:
  publish:
    name: Publish to npm
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v2
        with:
          node-version: ${{env.NODE_VERSION}}
          registry-url: "https://registry.npmjs.org"

      - run: npm i -g npm@${{env.NPM_VERSION}}
        name: npm install npm@8.15.1
      - run: npm install
        name: npm install
      - run: npm run webpack
        name: webpack for production
      - run: npm publish --access public
        env:
          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
