name: Publish Package to npmjs

on:
  push:
    tags: ["*"]

jobs:
  release:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v3
    - uses: actions/setup-node@v3 #Setup Node
      with:
        node-version-file: '.nvmrc'
        cache: 'npm'

    - name: Install dependencies
      run: |
        npm ci

    - name: Lint
      run: |
        make lint

    - name: Build
      run: |
        make build-all

    - name: Test all
      run: |
        make test-all uglify=true fat=true

    - name: Publish
      run: |
        NPM_TOKEN=${{ secrets.NPM_TOKEN }} npm publish ./build --access public

    - name: Trigger generate site hook
      run: |
        curl -XPOST -u "${{ secrets.PAT_USERNAME}}:${{secrets.PAT_TOKEN}}" -H "Accept:application/vnd.github.everest-preview+json" -H "Content-Type: application/json" https://api.github.com/repos/xdan/jodit-pro-home/dispatches --data '{"event_type": "opened" }'

    - name: Trigger release React package
      run: |
        curl -XPOST -u "${{ secrets.PAT_USERNAME}}:${{secrets.PAT_TOKEN}}" -H "Accept:application/vnd.github.everest-preview+json" -H "Content-Type: application/json" https://api.github.com/repos/jodit/jodit-react/dispatches --data '{"event_type": "newversion" }'
