# Copyright 2019-2023 Tauri Programme within The Commons Conservancy
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT

name: lint js

on:
  pull_request:
    paths:
      - '.github/workflows/lint-js.yml'
      - 'tooling/cli/node/**'
      - 'tooling/api/**'

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  eslint-cli:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v2
        with:
          node-version: 16
          cache: yarn
          cache-dependency-path: tooling/cli/node/yarn.lock
      - name: install deps via yarn
        working-directory: ./tooling/cli/node/
        run: yarn
      # nothing to lint
      #- name: run lint
      #  working-directory: ./tooling/cli/node/
      #  run: yarn lint
      - name: run format
        working-directory: ./tooling/cli/node/
        run: yarn format:check

  eslint-api:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v2
        with:
          node-version: 16
          cache: yarn
          cache-dependency-path: tooling/api/yarn.lock

      - name: install deps via yarn
        working-directory: ./tooling/api/
        run: yarn
      - name: run ts:check
        working-directory: ./tooling/api/
        run: yarn ts:check
      - name: run lint
        working-directory: ./tooling/api/
        run: yarn lint
      - name: run format
        working-directory: ./tooling/api/
        run: yarn format:check
