name: 🚀 NPM Package Publish

on:
    push:
        tags:
            - '*'

env:
    TERM: xterm

jobs:
    release:
        name: 🚀 Build and Release
        runs-on: ubuntu-latest
        steps:
            - name: checkout repo
              uses: actions/checkout@v3
            - name: setup Node.js
              uses: actions/setup-node@v3
              with:
                  node-version: 16
                  registry-url: https://registry.npmjs.org/
              env:
                  ACTIONS_ALLOW_UNSECURE_COMMANDS: true
            - name: install modules
              run: npm install
            - name: run lint tests
              run: npm run lint
            - name: run unit tests
              run: npm run testdox
            - name: publish
              run: npm publish --access public
              env:
                  NODE_AUTH_TOKEN: ${{secrets.NPM_AUTH_TOKEN}}
