name: Build and Deploy Storybook Documentation

on:
  workflow_dispatch:
  release:
    types: [created]
permissions:
  contents: write
jobs:
  build-and-deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout 🛎️
        uses: actions/checkout@v7
        with:
          persist-credentials: false
      - name: Setup Node
        uses: actions/setup-node@v6
        with:
          node-version: '24.x'
          registry-url: 'https://registry.npmjs.org'
      - name: Install 🔧
        run: | # Install npm packages
          yarn install --immutable
      - name: Build 🔧
        run: | # build the Storybook files
          yarn build-storybook
      - name: Deploy 🚀
        uses: JamesIves/github-pages-deploy-action@3.6.2
        with:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          BRANCH: gh-pages # The branch the action should deploy to.
          FOLDER: storybook-static # The folder that the build-storybook script generates files.
          CLEAN: true # Automatically remove deleted files from the deploy branch
          TARGET_FOLDER: docs # The folder that we serve our Storybook files from
