Skip to content

Fix navigation, recording bugs + experimental fia#772

Merged
CalJosKos merged 6 commits into
mainfrom
dev
Feb 23, 2026
Merged

Fix navigation, recording bugs + experimental fia#772
CalJosKos merged 6 commits into
mainfrom
dev

Conversation

@CalJosKos

Copy link
Copy Markdown
Collaborator

This pull request introduces support for FIA (Faith Comes By Hearing International Audio) quests throughout the codebase, including database schema updates, UI hooks, and navigation logic. It also adds a new custom FIA icon and a generic collapsible UI component. Additionally, audio playback controls are enhanced with pause and resume functionality, and waveform recording logic is optimized for performance.

FIA quest support and database updates:

  • Added fia as a valid quest template type in database_services/publishService.ts and db/constants.ts, and extended quest metadata with FiaMetadata for FIA-specific book and pericope tracking. [1] [2] [3] [4]
  • Introduced the useFiaLanguoids hook to filter and retrieve languoids with FIA content, including endonym labeling for dropdowns.

Navigation and asset view logic:

  • Updated navigation logic to treat both bible and fia templates as using verse labeling, and adjusted asset view and breadcrumbs accordingly. [1] [2] [3]

Audio playback enhancements:

  • Added pauseSound and resumeSound methods to AudioContext, along with an isPaused state, allowing audio to be paused and resumed. [1] [2] [3] [4] [5] [6] [7]

UI component additions:

  • Added a custom FIA logo icon component (FiaIcon) matching the LucideIcon interface.
  • Introduced a generic collapsible component set (Collapsible, CollapsibleContent, CollapsibleTrigger) for flexible UI sections.

Waveform recording optimization:

  • Refactored waveform sample tracking in WalkieTalkieRecorder.tsx to use a ref instead of state, reducing unnecessary re-renders and improving performance. [1] [2] [3] [4] [5]

Other minor changes:

  • Bumped app version to 2.0.15 in app.config.ts.
  • Cleaned up unused code in useAppNavigation.ts. [1] [2]

rafaelwinter01 and others added 6 commits February 21, 2026 21:38
* Version

* Highlight assets recorded last

* Fix metadata when editing labels

* Fix verses limit when recording

* Replace Specialized Item by Common

* Adapt to use other asset card + play individual audio

* Fixing initial recording order

* Removed auto-select when adding verse pills

* Enhancing performance

* Reducing dependencies

* Lint

* Lint

* Update Assets Order + Rename

* Adapt multi-selection menu

* Changed useState to useRef to recordedSamples

* Reintroduced Compilable Query to get Languoid

* Add breadcrumbs to Bible Projects and Recording View

* Adapt Recording View to work with unstructured projects

* Remove comments

* Prettier
* FIA implementation - first steps

- Removed duplicate languoids from local seeding data
- Added dummy FIA project option in project creation drawer
- Added FIA project to onboarding flow

* Pericopes and verse ranges pulled from fia api

Enabled full FIA (Familiarize-Internalize-Articulate) project creation with source + target language selection
Built edge function to proxy FIA GraphQL API for fetching books and pericopes
FIA books display with Bible book icons in biblical order; empty books faded out
Pericope quests created on-demand (lazy creation, same pattern as Bible chapters)
FIA recording view uses the same verse-labeled recording experience as Bible projects
Verse labeling now always on for Bible and FIA projects (removed experimental toggle)
Added endonym display in FIA content language dropdown
Database migrations for FIA language codes, ISO records, and template constraint

* sample fia content displaying in drawer

* cleaned up formatting

* Retrieve all fia content and media

* Retrieving biblebrain content

Issues with translation dropdown, need to doublecheck backend implementation

* Fix biblebrain translation dropdown

* Integrated bible into recording view, fia icon

* Make pericope cards like bible chapter cards (state)

* env improvements

- Activate edge functions and vault secrets with npm run env command
- Allow running two devices with local testing env
- Existing commands
npm run android
npm run env
remain unchanged in usage
- Adjusted pericope list UI
- Added back navigation from asset list in fia project

* Prelim versioning

- All user passwords in seed data changed to "password"
- Bug fixed with retrying to upload parent quest from same user for multiple pericopes in same book
- Prelim quest version interface

* Pericope versioning and experimental toggle

- Allow multiple users to contribute content to the same pericope (versions)
- Hide fia features behind experimental toggle

* format fix

* format fix

* Consolidate, fix typecheck

* fix format

* version bump
* fix constraint

* Delete 20260217120002_add_iso639_3_source_records_fix_constraint.sql
* Create 20260217120001_add_iso639_3_source_records.sql

* Fix seed file constraint to match new constraint in migration
@vercel

vercel Bot commented Feb 23, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
langquest Ready Ready Preview, Comment Feb 23, 2026 1:31am

Request Review

@supabase

supabase Bot commented Feb 23, 2026

Copy link
Copy Markdown

Updates to Preview Branch (dev) ↗︎

Deployments Status Updated
Database Mon, 23 Mar 2026 18:38:30 UTC
Services Mon, 23 Mar 2026 18:38:30 UTC
APIs Mon, 23 Mar 2026 18:38:30 UTC

Tasks are run on every commit but only new migration files are pushed.
Close and reopen this PR if you want to apply changes from existing seed or migration files.

Tasks Status Updated
Configurations ⚠️ Mon, 23 Mar 2026 18:38:30 UTC
Migrations Mon, 23 Mar 2026 18:38:30 UTC
Seeding Mon, 23 Mar 2026 18:38:31 UTC
Edge Functions Mon, 23 Mar 2026 18:38:39 UTC

⚠️ Warning — You can configure a persistent branch with config.toml:
[remotes.staging]
project_id = "yjgdgsycxmlvaiuynlbv"


View logs for this Workflow Run ↗︎.
Learn more about Supabase for Git ↗︎.

@socket-security

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Added@​rn-primitives/​collapsible@​1.2.0981006883100

View full report

('80293000-c406-4390-8de1-67b7ac11ce14', null, 'Persian', 'language', false, true, now(), now()),
('accfea8f-9b17-4bf7-96b2-56e81196267c', null, 'Sudanese Arabic', 'language', false, true, now(), now()),
('0191cd2b-d151-4217-a7d4-19b2346c7b7e', null, 'Bislama', 'language', false, true, now(), now())
on conflict (id) do nothing;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@CalJosKos

Copy link
Copy Markdown
Collaborator Author

There is an existing issue with how verse ranges (especially multi-chapter) verse ranges are handled. Experimental POC feature with tight timeline and needs store reviews, so merging for now and will patch OTA later.

@CalJosKos CalJosKos merged commit b01bb56 into main Feb 23, 2026
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants