feat: add nested navigation and Command Palette #10
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
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| permissions: | |
| contents: read | |
| jobs: | |
| build: | |
| name: Hugo ${{ matrix.hugo-version }} | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| hugo-version: ['0.160.1', '0.164.0'] | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-python@v7 | |
| with: | |
| python-version: '3.x' | |
| - uses: peaceiris/actions-hugo@v3 | |
| with: | |
| hugo-version: ${{ matrix.hugo-version }} | |
| extended: true | |
| - name: Check translation key parity | |
| run: python3 scripts/check-i18n.py | |
| - name: Check typography token boundaries | |
| run: python3 scripts/check-font-tokens.py | |
| - name: Check content primitive contract | |
| run: python3 scripts/check-content-primitives-contract.py | |
| - name: Check PRD 4 contracts and characterization | |
| run: python3 scripts/check-prd4-contract.py | |
| - name: Check PRD 4 runtime isolation | |
| run: python3 scripts/check-prd4-runtime.py | |
| - name: Check sidebar icon density policies | |
| run: python3 scripts/check-sidebar-icons.py | |
| - name: Check search metadata and ranking | |
| run: python3 scripts/check-prd4-search.py | |
| - name: Check action registry and command manifest | |
| run: python3 scripts/check-prd4-actions.py | |
| - name: Check Command Palette modes and behavior | |
| run: python3 scripts/check-prd4-palette.py | |
| - name: Check PRD 4 bilingual migration and starter guidance | |
| run: python3 scripts/check-prd4-docs.py | |
| - name: Build the example site without warnings | |
| working-directory: exampleSite | |
| run: hugo --printPathWarnings --panicOnWarning | |
| - name: Check enhanced code-block contracts | |
| run: python3 scripts/check-code-blocks.py | |
| - name: Check everyday content primitives | |
| run: python3 scripts/check-content-primitives.py | |
| - name: Check shared media primitives | |
| run: python3 scripts/check-media-primitives.py | |
| - name: Check opt-in Image Zoom | |
| run: python3 scripts/check-image-zoom.py | |
| - name: Check Gallery output and Zoom reuse | |
| run: python3 scripts/check-gallery.py | |
| - name: Build the system typography preset | |
| working-directory: exampleSite | |
| env: | |
| HUGO_PARAMS_UI_TYPOGRAPHY_PRESET: system | |
| run: | | |
| hugo --destination "$RUNNER_TEMP/oink-system" --printPathWarnings --panicOnWarning | |
| grep -R -q 'data-td-typography="system"' "$RUNNER_TEMP/oink-system" | |
| - name: Preserve legacy Sass font overrides | |
| run: | | |
| cp -R exampleSite "$RUNNER_TEMP/oink-font-compat" | |
| mkdir -p "$RUNNER_TEMP/oink-font-compat/assets/scss" | |
| cp tests/fixtures/legacy-fonts/_variables_project.scss \ | |
| "$RUNNER_TEMP/oink-font-compat/assets/scss/_variables_project.scss" | |
| hugo --source "$RUNNER_TEMP/oink-font-compat" \ | |
| --themesDir "$(dirname "$GITHUB_WORKSPACE")" \ | |
| --destination "$RUNNER_TEMP/oink-font-compat-public" \ | |
| --printPathWarnings --panicOnWarning | |
| grep -R -q -- '--td-heading-font-family:Georgia, serif' \ | |
| "$RUNNER_TEMP/oink-font-compat-public/scss" | |
| grep -R -q -- '--td-code-font-family:"Courier New", monospace' \ | |
| "$RUNNER_TEMP/oink-font-compat-public/scss" | |
| grep -F -R -q -- \ | |
| '[data-td-typography=system]{--bs-font-monospace:"Legacy Mono", monospace' \ | |
| "$RUNNER_TEMP/oink-font-compat-public/scss" | |
| if grep -R -q -- '--td-heading-font-family:var(--td-print-font-family)' \ | |
| "$RUNNER_TEMP/oink-font-compat-public/scss"; then | |
| echo "print preset unexpectedly replaced the legacy heading font" >&2 | |
| exit 1 | |
| fi | |
| - name: Reject an invalid typography preset | |
| working-directory: exampleSite | |
| run: | | |
| if HUGO_PARAMS_UI_TYPOGRAPHY_PRESET=invalid \ | |
| hugo --destination "$RUNNER_TEMP/oink-invalid" \ | |
| >"$RUNNER_TEMP/oink-invalid.log" 2>&1; then | |
| echo "invalid typography preset unexpectedly built" >&2 | |
| exit 1 | |
| fi | |
| grep -q 'invalid params.ui.typography.preset' "$RUNNER_TEMP/oink-invalid.log" |