mirror of
https://github.com/jakejarvis/sofa.git
synced 2026-07-14 18:15:56 -04:00
- Replace hand-rolled pluralization (ternary suffix hacks) with `plural` macro
- Wrap 40+ untranslated user-facing strings with LingUI macros: aria-labels,
accessibilityLabels/Hints, placeholders, error fallbacks, toast overrides
- Unify episode progress format to `${watched}/${plural(total, ...)}` across
all 4 call sites (title-card, continue-watching, season-accordion)
- Unify capitalization: "Sign in", "Sign out", "Create account",
"Change password", "Update password", "Image cache", "Remove from library",
"Mark Watched", "Trending Today", "On Watchlist", "or"
- Translate cron schedule strings in system health via `i18n._(msg)` with
locale-aware day names via `Intl.DateTimeFormat`
- Move Zod validation schemas inside components with `useMemo(() => ..., [t])`
so validation messages are translatable at runtime
- Unify "Watched all of" variable naming to `seasonLabel` across all call
sites to produce a single msgid
- Remove trailing period from lone "Failed to..." error message
- Add EAS build i18n template extraction step
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
56 lines
1.2 KiB
YAML
56 lines
1.2 KiB
YAML
name: EAS Build
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
platform:
|
|
description: Platform to build
|
|
type: choice
|
|
options:
|
|
- all
|
|
- ios
|
|
- android
|
|
default: all
|
|
profile:
|
|
description: Build profile
|
|
type: choice
|
|
options:
|
|
- production
|
|
- development
|
|
default: production
|
|
push:
|
|
branches: [main]
|
|
paths:
|
|
- apps/native/**
|
|
- packages/api/**
|
|
- packages/i18n/**
|
|
|
|
jobs:
|
|
build:
|
|
name: EAS Build
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 22
|
|
|
|
- uses: oven-sh/setup-bun@v2
|
|
|
|
- name: Setup EAS
|
|
uses: expo/expo-github-action@v8
|
|
with:
|
|
eas-version: latest
|
|
token: ${{ secrets.EXPO_TOKEN }}
|
|
|
|
- name: Install dependencies
|
|
run: bun install --frozen-lockfile
|
|
|
|
- name: Extract i18n template
|
|
run: bunx lingui extract-template
|
|
|
|
- name: Build
|
|
working-directory: apps/native
|
|
run: eas build --platform ${{ inputs.platform || 'all' }} --profile ${{ inputs.profile || 'production' }} --non-interactive --no-wait
|