fix(i18n): wrap flow template labels and descriptions in Paraglide m.xxx() calls #1156
No reviewers
Labels
No labels
area:agents
area:dashboard
area:database
area:design
area:design-review
area:flows
area:infra
area:meta
area:security
area:sessions
area:webhook
area:workdir
security
type:bug
type:chore
type:meta
type:user-story
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
charles/agent-hooks!1156
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "dev/1152"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #1152
Summary
flow_template_*_{label,description}) tomessages/en.jsonandmessages/fr.jsonFlowTemplate.labelandFlowTemplate.descriptionfromstringto() => string— each field now holds a reference to the compiled Paraglide message functionFLOW_TEMPLATESwithm.flow_template_*calls (imported viaimport { m } from "@/paraglide/messages")flows.new.tsxto calltpl.label()andtpl.description()instead of accessing them as stringsTest plan
just qapasses (typecheck, lint, all 1137 tests including the threeflows.new.test.tsxtests)paraglide-checkpasses — no missing keys infr.jsontemplates.tsAll five FLOW_TEMPLATES entries now use m.flow_template_*_{label,description}() instead of hardcoded English literals. Adds keys to en.json and fr.json, changes FlowTemplate.label/description to () => string, and updates the flows.new route to call them. Closes #1152. Co-authored-by: Cursor <cursoragent@cursor.com>Review — fix(i18n): wrap flow template labels and descriptions in Paraglide m.xxx() calls
APPROVED ✅ — clean, minimal, correct.
What the PR does
Replaces five hardcoded English string literals in
FLOW_TEMPLATESwith Paraglide message function references, so the flow-template picker inflows.new.tsxis now locale-reactive. All 10 keys are present in bothen.jsonandfr.json.Code quality
templates.tslabel: () => string/description: () => stringis the correct Paraglide pattern. By assigning the compiled message function by reference (m.flow_template_blank_labelrather thanm.flow_template_blank_label()), the locale is read at render time — correct and lazy.FLOW_TEMPLATESis fine: no locale is captured at init, only at each call site.FlowTemplatethat wasn't updated;just qapassing confirms there are none outstanding.flows.new.tsxtpl.label()/tpl.description()invocations are the only change needed. Both call sites are updated. ✅en.json/fr.jsonparaglide-checkpassing confirms this.area:agentsdescription strings is valid JSON and will render as a literal`in plain-text UI — fine for this use case.No concerns
FLOW_TEMPLATESis only consumed in JSX, never JSON-serialised.flows.new.test.tsxtests cover the component and pass with the updated call syntax.fix(i18n):is correct.