Compare commits
2
Commits
bde59eb74e
...
454a0f4244
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
454a0f4244 | ||
|
|
a48a7ff696 |
@@ -30,8 +30,12 @@ const AREAS = [
|
|||||||
* 'shared components' landed 2026-08-23 (localization phase 1). It holds three `new Error()` messages
|
* 'shared components' landed 2026-08-23 (localization phase 1). It holds three `new Error()` messages
|
||||||
* that must NEVER be translated; they are reported but excluded from the check, which is why the
|
* that must NEVER be translated; they are reported but excluded from the check, which is why the
|
||||||
* neverTranslate split below has to exist for this entry to be possible at all.
|
* neverTranslate split below has to exist for this entry to be possible at all.
|
||||||
|
*
|
||||||
|
* 'officer-web (shell)' landed 2026-08-23 (phase 2). It holds no never-translate hits of its own; what it
|
||||||
|
* does hold is ~30 `<Untranslated reason="foreign-ui-label">` labels quoted from Google's console, which
|
||||||
|
* `stripUntranslated` skips for the same reason.
|
||||||
*/
|
*/
|
||||||
const ZEROED: string[] = ['shared components'];
|
const ZEROED: string[] = ['shared components', 'officer-web (shell)'];
|
||||||
|
|
||||||
const SKIP = /node_modules|\.gen\.|[/\\]locales[/\\]|[/\\]vendor[/\\]|\.test\.|\.d\.ts$/;
|
const SKIP = /node_modules|\.gen\.|[/\\]locales[/\\]|[/\\]vendor[/\\]|\.test\.|\.d\.ts$/;
|
||||||
|
|
||||||
|
|||||||
@@ -278,12 +278,18 @@ export const CapabilityChat = ({
|
|||||||
description,
|
description,
|
||||||
onResponseEnd,
|
onResponseEnd,
|
||||||
}: CapabilityChatProps) => {
|
}: CapabilityChatProps) => {
|
||||||
|
const { t } = useTranslation();
|
||||||
const seedFile = `${kind.toUpperCase()}.md`;
|
const seedFile = `${kind.toUpperCase()}.md`;
|
||||||
const genericPrefix = `<frontmatter>\ninput file: ${filePath}\n${seedFile}: ${filePath}\ndir: ${resourceDir}\n\nBe aware of any extra files alongside the same dir as the ${kind} file we're handling, for possible extra context. You can also, if pertinent, create scripts or other files that will help you in the future.\n</frontmatter>`;
|
const genericPrefix = `<frontmatter>\ninput file: ${filePath}\n${seedFile}: ${filePath}\ndir: ${resourceDir}\n\nBe aware of any extra files alongside the same dir as the ${kind} file we're handling, for possible extra context. You can also, if pertinent, create scripts or other files that will help you in the future.\n</frontmatter>`;
|
||||||
const promptFrontmatter = isNew ? (buildCreationPrefix(kind, filePath, resourceDir) ?? genericPrefix) : genericPrefix;
|
const promptFrontmatter = isNew ? (buildCreationPrefix(kind, filePath, resourceDir) ?? genericPrefix) : genericPrefix;
|
||||||
|
/*
|
||||||
|
The composer's PRE-FILLED text, which the reader sees and edits — so it is translated. The hidden
|
||||||
|
`promptFrontmatter` above is not: that one instructs the agent and carries file paths, and is
|
||||||
|
machine-facing rather than something anybody reads.
|
||||||
|
*/
|
||||||
const defaultInput = isNew
|
const defaultInput = isNew
|
||||||
? (description ?? `Help me create the content for this new ${kind} file`)
|
? (description ?? t('capability.createPrompt', { kind: kind.toLowerCase() }))
|
||||||
: `Help me understand and improve this ${kind} file`;
|
: t('capability.improvePrompt', { kind: kind.toLowerCase() });
|
||||||
|
|
||||||
const chat = useChat(undefined, undefined, { replaceUrl: false });
|
const chat = useChat(undefined, undefined, { replaceUrl: false });
|
||||||
|
|
||||||
|
|||||||
@@ -697,6 +697,8 @@
|
|||||||
"searchPlaceholder": "Search {{kind}}…",
|
"searchPlaceholder": "Search {{kind}}…",
|
||||||
"selectOne": "Select a {{kind}}",
|
"selectOne": "Select a {{kind}}",
|
||||||
"selectToView": "Select a {{kind}} to view its contents",
|
"selectToView": "Select a {{kind}} to view its contents",
|
||||||
"delete": "Delete"
|
"delete": "Delete",
|
||||||
|
"createPrompt": "Help me create the content for this new {{kind}} file",
|
||||||
|
"improvePrompt": "Help me understand and improve this {{kind}} file"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -697,6 +697,8 @@
|
|||||||
"searchPlaceholder": "Pesquisar {{kind}}…",
|
"searchPlaceholder": "Pesquisar {{kind}}…",
|
||||||
"selectOne": "Selecione um {{kind}}",
|
"selectOne": "Selecione um {{kind}}",
|
||||||
"selectToView": "Selecione um {{kind}} para ver o seu conteúdo",
|
"selectToView": "Selecione um {{kind}} para ver o seu conteúdo",
|
||||||
"delete": "Eliminar"
|
"delete": "Eliminar",
|
||||||
|
"createPrompt": "Ajuda-me a criar o conteúdo deste novo ficheiro de {{kind}}",
|
||||||
|
"improvePrompt": "Ajuda-me a compreender e melhorar este ficheiro de {{kind}}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user