MCPcopy
hub / github.com/Bistutu/FluentRead / handleSingleTranslation

Function handleSingleTranslation

entrypoints/main/trans.ts:229–251  ·  view source on GitHub ↗
(node: any, slide: boolean)

Source from the content-addressed store, hash-verified

227
228// 单语翻译
229export function handleSingleTranslation(node: any, slide: boolean) {
230 let nodeOuterHTML = node.outerHTML;
231 let outerHTMLCache = cache.localGet(node.outerHTML);
232
233
234 if (outerHTMLCache) {
235 // handleTranslation 已处理防抖 故删除判断 原bug 在保存完成后 刷新页面 可以取得缓存 直接return并没有翻译
236 let spinner = insertLoadingSpinner(node, true);
237 setTimeout(() => {
238 spinner.remove();
239 htmlSet.delete(nodeOuterHTML);
240
241 // 兼容部分网站独特的 DOM 结构
242 let fn = replaceCompatFn[getMainDomain(document.location.hostname)];
243 if (fn) fn(node, outerHTMLCache);
244 else node.outerHTML = outerHTMLCache;
245
246 }, 250);
247 return;
248 }
249
250 singleTranslate(node);
251}
252
253
254function bilingualTranslate(node: any, nodeOuterHTML: any) {

Callers 3

handleRetryClickFunction · 0.90
autoTranslateEnglishPageFunction · 0.85
handleTranslationFunction · 0.85

Calls 3

insertLoadingSpinnerFunction · 0.90
getMainDomainFunction · 0.90
singleTranslateFunction · 0.85

Tested by

no test coverage detected