feat(content-switcher): add ref prop for tablist reference
#2251
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| on: | |
| pull_request: | |
| paths-ignore: | |
| - "**.md" | |
| - "docs/**" | |
| - "examples/**" | |
| push: | |
| branches: [master] | |
| paths-ignore: | |
| - "**.md" | |
| - "docs/**" | |
| - "examples/**" | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| env: | |
| IBM_TELEMETRY_DISABLED: true | |
| jobs: | |
| lint: | |
| runs-on: macos-15 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: oven-sh/setup-bun@v2 | |
| - run: bun ci | |
| - run: bunx biome ci --error-on-warnings | |
| changes: | |
| runs-on: macos-15 | |
| outputs: | |
| src-or-tests: ${{ steps.filter.outputs.src-or-tests }} | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - uses: dorny/paths-filter@v3 | |
| id: filter | |
| with: | |
| filters: | | |
| src-or-tests: | |
| - 'src/**' | |
| - 'tests/**' | |
| - '.github/**' | |
| test: | |
| needs: [lint, changes] | |
| if: needs.changes.outputs.src-or-tests == 'true' | |
| runs-on: macos-15 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: oven-sh/setup-bun@v2 | |
| - run: bun ci | |
| - name: Generate types | |
| run: bun run build:docs | |
| - name: Test types (Svelte 5) | |
| run: bun run test:types | |
| - name: Test (Svelte 5) | |
| run: bun --bun run test | |
| test-e2e: | |
| needs: [lint, test] | |
| if: ${{ !failure() && !cancelled() }} | |
| runs-on: ubuntu-latest | |
| # Official image includes Chromium/Firefox/WebKit + system deps | |
| # Bump tag with @playwright/test in bun.lock. | |
| container: | |
| image: mcr.microsoft.com/playwright:v1.59.0-noble | |
| options: --ipc=host --init | |
| timeout-minutes: 15 | |
| env: | |
| PLAYWRIGHT_BROWSERS_PATH: /ms-playwright | |
| HOME: /root | |
| steps: | |
| - uses: actions/checkout@v6 | |
| # Playwright image is minimal; setup-bun extracts a zip and needs unzip. | |
| - run: apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y unzip | |
| - uses: oven-sh/setup-bun@v2 | |
| - run: bun ci | |
| - name: E2E tests | |
| run: bunx playwright test --project=chromium | |
| test-svelte3: | |
| needs: [lint, changes] | |
| if: needs.changes.outputs.src-or-tests == 'true' | |
| runs-on: macos-15 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: oven-sh/setup-bun@v2 | |
| - run: bun ci | |
| - name: Setup Svelte 3 | |
| run: | | |
| cd tests-svelte3 | |
| bun ci | |
| - name: Generate types | |
| run: bun run build:docs | |
| - name: Test Svelte 3 Types | |
| run: | | |
| cd tests-svelte3 | |
| bun run test:types | |
| - name: Test Svelte 3 | |
| run: | | |
| cd tests-svelte3 | |
| bun --bun run test | |
| test-svelte4: | |
| needs: [lint, changes] | |
| if: needs.changes.outputs.src-or-tests == 'true' | |
| runs-on: macos-15 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: oven-sh/setup-bun@v2 | |
| - run: bun ci | |
| - name: Setup Svelte 4 compat | |
| run: | | |
| cd tests-svelte4 | |
| bun ci | |
| - name: Generate types | |
| run: bun run build:docs | |
| - name: Test types (Svelte 4 compat) | |
| run: | | |
| cd tests-svelte4 | |
| bun run test:types | |
| - name: Test (Svelte 4 compat) | |
| run: | | |
| cd tests-svelte4 | |
| bun --bun run test | |
| types: | |
| runs-on: macos-15 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: oven-sh/setup-bun@v2 | |
| - run: bun ci | |
| - name: Build docs | |
| run: bun run build:docs | |
| - run: bun run test:src-types | |
| deploy-docs: | |
| needs: [lint, test, types] | |
| if: | | |
| always() && | |
| (github.event_name == 'workflow_dispatch' || github.ref == 'refs/heads/master') && | |
| !failure() && !cancelled() | |
| uses: ./.github/workflows/deploy-docs.yml | |
| secrets: inherit |