Repository navigation
Translate the connector list and marketplace (DE, IT) - #1303
Conversation
Part of HelpCode-ai#1271. Adds the connectors, connectorStore, setupEffort, setupStatus, authStatus and authTypes namespaces. English output is unchanged.
helpcodeai
left a comment
There was a problem hiding this comment.
Thanks @sapatmohit, splitting the area in two is fine, and this PR is easy to review. The German and Italian read well; just two small changes:
- DE
setupStatus.needsInput.banner: "Zugangsdatum" means an access date. Please use "Zugangsdaten oder eine Einstellung fehlen noch, daher sieht Ihr KI-Client diesen Connector noch nicht." - IT
setupStatus.needsAuthorization.banner: the sentence has no subject. Please use "Il connettore va autorizzato presso il provider prima che il tuo client AI possa usarlo."
The other strings you flagged are fine as they are. For the card layout, please do the min-w-0 fix in a separate small PR, so this one stays translation-only. Once those two strings are in, I'll merge.
|
Thanks for the review! Both strings are in now (27538e0), word for word as you suggested. I'll open the |
|
Thanks @sapatmohit, merged. Looking forward to the |
Summary
Fourth area of #1271, first half: the connector list (
/connectors) and the marketplace (/connectors/store) in German and Italian, plus the setup and sign-in status pills those cards show. No behaviour changes, andAccept-Language: en-USrenders exactly what it rendered before.Splitting the area: "Connectors (list, store, setup)" turned out to be about 4,300 lines across four pages and six shared components, roughly three times #1283. To keep it reviewable I've split it in two, both under #1271 and still one PR at a time:
/connectorsand/connectors/store./connectors/setup/[slug]and/connectors/new, with the setup guide, setup success, headers editor and assign modal.Happy to merge them into one PR instead if you prefer.
Changes
app/connectors/page.tsx: the header actions and their mobile menu, the import and delete dialogs, the health check results, the empty state, search, the type filter and count, and each connector card (type, Tools/Auth, status, Import Spec/Delete), plus the "Add a connector" tile.app/connectors/store/page.tsx: the title and back link, search, the setup and category filter chips, the results line, the no-match state, and each adapter card (category, region, Popular, tool count, setup effort, docs link, Install).components/setup-status.tsxandcomponents/auth-status.tsx: the pills on the list, and the banners on the connector page. The banners belong to the next area (/connectors/[id]), but they live in the same files, so I've done both here, as agreed in Translate the rest of the admin UI (DE, IT) #1271.en-USthey're unchanged.lib/use-auth-type-label.ts(new):authTypeLabelin the UI language. An auth type without a message (a new one from the backend) falls back to the existing English label./connectors/[id]still uses the English one until its PR.messages/{en,de,it}.json: new namespacesconnectors,connectorStore,setupEffort,setupStatus,authStatusandauthTypes.Left in English on purpose:
withSecretsNotice/withImportNoticeappend to a server message.TrialLimitNoticeandFirstSuccessOffer, both on these pages. They're Cloud billing components, so I'd keep them with the other billing and shared components, as with Translate the MCP server pages (DE, IT) #1283.lib/setup-effort.tsis unchanged. The store uses the newsetupEffortmessages, and the setup guide moves over in the next PR.Self-hosted vs Cloud: frontend only, with no backend, database or
ee/change.Translations
German and Italian aren't my native languages, so please review those strings. Same tone and terms as the earlier PRs: German with Sie, Italian with tu, "Connector" in German and "connettore" in Italian, and the German store title matches the sidebar ("Marktplatz"). Strings I'm least sure about:
Layout: on a connector card, the Tools/Auth row and the status pills share one line. English already has only about 13px to spare when a card shows a long auth type ("Connection String") and a setup pill. Italian, with "Strumenti" and those two, still runs about 15px past the card edge. The fix would be letting the auth value truncate (
min-w-0on its column). That also changes English, which then shows "Connection …", so I left it out. Happy to add it here or in a separate PR if you want it./connectors/connectors/storeType
Testing
3 new tests in
tests/e2e/i18n.spec.ts, with two mocked connectors and two mocked adapters:de-DE:/connectorsrenders in German, including the count plural, "Datenbank", a translated auth type, both status pills, "Inaktiv" and the delete dialog.it-IT:/connectors/storerenders in Italian, including a category, a region, the setup effort, the tool plural and "Popolare". Searching "Germania" finds the German adapter, and the no-match line reads correctly with a category and a setup filter.en-US: both pages stay exactly as before, including the same checks and the no-match line ("Nothing matches in Accounting with no setup.").The key-parity test from #1248 covers the new keys. The existing connector specs, which check English text, still pass.
packages/frontendnpm run lintmain, none new)packages/frontendnpx tsc --noEmit -p tsconfig.jsonpackages/frontendnpm run buildpackages/frontendnpm run test:e2eThe backend isn't touched, so I didn't rerun its suite.
Checklist
packages/frontend/AGENTS.mdandnext-env.d.tswere rewritten bynext devlocally and are left out, as AGENTS.md asks.Related Issues
Part of #1271 (Connectors, first half)