Further utilize lazy shazam

This commit is contained in:
Lim Chee Aun 2024-04-04 14:34:28 +08:00
parent 30382d088b
commit 2ad9706304
2 changed files with 20 additions and 17 deletions

View file

@ -30,8 +30,12 @@ export default function LazyShazam({ children }) {
if (!containerRef.current) return;
const rect = containerRef.current.getBoundingClientRect();
if (rect.bottom > TOP) {
if (rect.top < window.innerHeight) {
setVisible(true);
} else {
setVisibleStart(true);
}
}
}, []);
if (visibleStart) return children;

View file

@ -10,6 +10,7 @@ import localeCode2Text from '../utils/localeCode2Text';
import pmem from '../utils/pmem';
import Icon from './icon';
import LazyShazam from './lazy-shazam';
import Loader from './loader';
const { PHANPY_LINGVA_INSTANCES } = import.meta.env;
@ -142,8 +143,7 @@ function TranslationBlock({
detectedLang !== targetLangText
) {
return (
<div class="shazam-container">
<div class="shazam-container-inner">
<LazyShazam>
<div class="status-translation-block-mini">
<Icon
icon="translate"
@ -157,8 +157,7 @@ function TranslationBlock({
{translatedContent}
</output>
</div>
</div>
</div>
</LazyShazam>
);
}
return null;