Skip to content

feat(side-panel): pinnable and inline side panel #5317

feat(side-panel): pinnable and inline side panel

feat(side-panel): pinnable and inline side panel #5317

Workflow file for this run

name: PR Build
on:
pull_request:
concurrency:
group: pr-build-${{github.event.pull_request.number}}
cancel-in-progress: true
jobs:
pr-build:
name: PR Build
timeout-minutes: 30
runs-on: ubuntu-latest
strategy:
matrix:
angular: ['Angular v15', 'Angular v16', 'Angular v17', 'Angular v18']
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version-file: '.nvmrc'
- name: Install Dependencies
run: npm ci
- name: Update to Angular v16
if: ${{matrix.angular == 'Angular v16' || matrix.angular == 'Angular v17' || matrix.angular == 'Angular v18'}}
run: |
npx ng update @angular/core@16 @angular/common@16 @angular/cli@16 @angular/cdk@16 --force
- name: Update to Angular v17
if: ${{matrix.angular == 'Angular v17' || matrix.angular == 'Angular v18'}}
run: |
npx ng update @angular/core@17 @angular/common@17 @angular/cli@17 @angular/cdk@17 --allow-dirty --force
- name: Update to Angular v18
if: ${{matrix.angular == 'Angular v18'}}
run: |
npx ng update @angular/core@18 @angular/common@18 @angular/cli@18 @angular/cdk@18 --allow-dirty --force
- name: Disable Storybook Build
if: ${{matrix.angular != 'Angular v15'}}
run: node ./scripts/clear-npm-script.js _build:storybook
- name: Lint
if: ${{matrix.angular == 'Angular v15'}}
run: npm run lint
- name: Build
run: npm run build
- name: Test
run: npm run test
- name: Public Api Check
if: ${{matrix.angular == 'Angular v15'}}
run: npm run public-api:check
- name: Upload Docs Artifact
if: ${{matrix.angular == 'Angular v15'}}
uses: actions/upload-artifact@v3
with:
name: docs
path: dist/docs/
- name: Upload Coverage Artifact
if: ${{matrix.angular == 'Angular v15'}}
uses: actions/upload-artifact@v3
with:
name: coverage
path: coverage/
pr-visual-regression-test:
name: PR Visual Regression Test
timeout-minutes: 30
# This job intentionally does not use the `ubuntu-latest` image.
# An updated image could generate different snapshots, so we should explicitly update the image version.
runs-on: ubuntu-24.04
strategy:
matrix:
browser: ['chromium', 'firefox']
env:
CLARITY_VRT_BROWSER: ${{matrix.browser}}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version-file: '.nvmrc'
- name: Install Dependencies
run: npm ci
- name: Install Playwright Browsers
run: npx playwright install --with-deps ${{matrix.browser}}
- name: Build Storybook
run: npm run _build:storybook
- name: Discover Stories
run: npm run ts-node -- ./scripts/write-story-list.ts
- name: Update Visual Snapshots
run: npx playwright test --update-snapshots
- name: Collect Changes
id: diff
run: |
git add .
git diff --cached --binary > visual-snapshot-changes-${{matrix.browser}}.diff
- name: Upload Changes
uses: actions/upload-artifact@v3
with:
name: visual-snapshot-changes-${{matrix.browser}}.diff
path: visual-snapshot-changes-${{matrix.browser}}.diff