name: Build

on:
  push:
    branches:
      - '*'
      - '!master'

env:
  CI: true
  NODE_VER: 14

jobs:
  lint:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: ${{ env.NODE_VER }}

      - uses: bahmutov/npm-install@v1
      - name: prettier
        run: npx prettier '**/*.{js?(on|x),ts?(x),y?(a)ml,graphql,md,css}' --check

      - name: typescript
        run: npx tsc --noEmit

  test:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: ${{ env.NODE_VER }}

      - uses: bahmutov/npm-install@v1

      - name: test
        run: npm test

      - name: test buid
        run: npm run build

      - name: test built libs
        run: npm test
