fix(translation): restore nested placeholders correctly
- The placeholder restoration logic now processes placeholders in reverse order, ensuring that nested content (like links within HTML tags) is restored correctly.
This commit is contained in:
parent
c3b5c94497
commit
206731c589
1 changed files with 4 additions and 2 deletions
|
|
@ -160,8 +160,10 @@ export function preserveSpecialContent(text) {
|
|||
export function restoreSpecialContent(translatedText, preservations) {
|
||||
let restoredText = translatedText;
|
||||
|
||||
// Simple replacement like Russell's approach
|
||||
for (const item of preservations) {
|
||||
// By reversing the array, we restore the outer elements (like HTML tags) first,
|
||||
// which then reveals the inner placeholders (like URIs and code) for subsequent replacement.
|
||||
for (let i = preservations.length - 1; i >= 0; i--) {
|
||||
const item = preservations[i];
|
||||
restoredText = restoredText.replace(new RegExp(item.placeholder, 'g'), item.content);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue