---
name: Chromatic

on:
  push:
    paths-ignore:
      - '.github/workflows/**'

jobs:
  chromatic:
    name: Chromatic
    runs-on: ubuntu-20.04

    steps:
      - name: Set up Node
        uses: actions/setup-node@46071b5c7a2e0c34e49c3cb8a0e792e86e18d5ea  # v2.1.5
        with:
          node-version: "16"

      - name: Checkout repo
        uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f  # v2.3.4
        with:
          fetch-depth: 0

      - name: Cache npm
        id: npm-cache
        uses: actions/cache@c64c572235d810460d0d6876e9c705ad5002b353  # v2.1.6
        with:
          path: "~/.npm"
          key: ${{ runner.os }}-npm-chromatic-${{ hashFiles('**/package-lock.json') }}

      - name: Install Node dependencies
        run: npm ci

      - name: Publish to Chromatic
        uses: chromaui/action@c72f0b48c8887c0ef0abe18ad865a6c1e01e73c6
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
          exitOnceUploaded: true
          onlyChanged: true
          externals: "[\"components/**/*.scss\", \"components/tailwind.config*.js\"]"
