name: Publish package to NPM

on:
  release:
    types: [created]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: 20
          registry-url: "https://registry.npmjs.org"
          cache: "npm"
      - run: npm ci
        working-directory: client
      - run: npm ci
        working-directory: server
      - run: npm ci
      - run: npm run build
      - run: cp -r dist/server server/dist # Move server build into server dir
      - run: cd server
      - run: npm publish --access public
        env:
          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
      - run: npx vsce publish -p ${{ secrets.VSCODE_MARKET_TOKEN }}
