Skip to content

[claude] Enable selecting a local or remote lexicon (Platform.Bible) - #2585

Draft
myieye wants to merge 4 commits into
developfrom
issue-2461-select-remote-project
Draft

[claude] Enable selecting a local or remote lexicon (Platform.Bible)#2585
myieye wants to merge 4 commits into
developfrom
issue-2461-select-remote-project

Conversation

@myieye

@myieye myieye commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

[Claude, autonomous]

Resolves #2461.

Searchable picker for choosing a project's lexicon — local, or remote (Lexbox):

  • Pick a local lexicon, or download-and-select a remote one.
  • Local list filtered to the project's vernacular language; "Show all lexicons" drops the filter.
  • Applied lexicon marked "Current" and always kept in the list (even if its language doesn't match).
  • The just-replaced lexicon stays visible for the session (doesn't vanish).
  • "FieldWorks" badge marks FLEx (FwData) projects.
  • Delete a local copy; create a new lexicon.
  • Inline save confirmation; primary button disabled when there's nothing to change.

Lexicon picker
Current-lexicon row

Draft — before ready-for-review:

@coderabbitai

coderabbitai Bot commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added 💻 FW Lite issues related to the fw lite application, not miniLcm or crdt related 📙 Platform.Bible labels Aug 19, 2026
…nsion

Replace the combo box with a searchable picker for choosing a project's
lexicon: pick a local one, or download-and-select a remote (Lexbox) one.
Local lexicons are filtered to the project's vernacular language with a
show-all escape hatch; the current lexicon is marked with a "Current" badge
and kept visible regardless of language (along with any applied this session).
Supports deleting a local copy and creating a new lexicon. Reorders the
FwHeadless already-downloaded short-circuit so re-selecting a downloaded
project doesn't re-hit the server.

Toward #2461.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@myieye
myieye force-pushed the issue-2461-select-remote-project branch from 9bdd4cb to 5493fa2 Compare August 20, 2026 05:44
@argos-ci

argos-ci Bot commented Aug 20, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Argos notifications ↗︎

Build Status Details Updated (UTC)
default (Inspect) ✅ No changes detected - Sep 3, 2026, 4:01 PM
e2e (Inspect) ✅ No changes detected - Sep 3, 2026, 4:09 PM

myieye and others added 3 commits September 3, 2026 14:19
…te/effects

Nothing downstream is memoized, so the picker's useCallback wrappers only added
dependency-array bookkeeping (and stale-closure risk); make them plain functions
(keeping the one that's a DOM ref). In the web view, fold the three lockstep
language-filter states into one object, and split the combined open-log/fetch
effect so toggling "show all" no longer re-logs the open and re-fetches the
(language-independent) remote list.

Behaviour unchanged; verified select->save end-to-end.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Pull the ~95-line row renderer into a presentational LexiconRow (fed its
identity/selection/deletability as props, so it imports no picker internals)
and the delete-confirmation Alert into DeleteConfirm. The picker drops from
627 to ~470 lines; behaviour unchanged.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…dy errors

- Delete now works for any local CRDT lexicon, not only downloaded copies: the
  guard drops to `crdt` (FwData still refused, current lexicon still blocked),
  and DeleteConfirm warns "permanently deletes … can't be undone" when there's
  no server to re-download from.
- Drop the fragile `userFacingError` regex; show `getErrorMessage(e)` directly
  (the JSON-RPC prefix only appears on rare unexpected command rejections).
- Standardize the resolve-project timeout to 5 min (matches sign-in/download).
- Trim over-long doc comments across the changeset; align stray logs to
  getErrorMessage.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

💻 FW Lite issues related to the fw lite application, not miniLcm or crdt related 📙 Platform.Bible

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[P.B ext] Enable selecting a remote project

1 participant