chore: replace rehype-plugin-image-native-lazy-loading with our own

`rehype-plugin-image-native-lazy-loading` is no-longer maintained.
https://github.com/potato4d/rehype-plugin-image-native-lazy-loading

I haven't seen the source code of `rehype-plugin-image-native-lazy-loading` to implement this.
This commit is contained in:
Jumpei Ogawa
2024-08-25 09:31:58 +09:00
parent 06c39796d1
commit 35b7573a4e
2 changed files with 14 additions and 4 deletions

View File

@@ -1,6 +1,6 @@
import getReadingTime from 'reading-time';
import { toString } from 'mdast-util-to-string';
import lazyLoadPlugin from 'rehype-plugin-image-native-lazy-loading';
import { visit } from 'unist-util-visit';
import type { MarkdownAstroData, RehypePlugin, RemarkPlugin } from '@astrojs/markdown-remark';
export const readingTimeRemarkPlugin: RemarkPlugin = () => {
@@ -35,4 +35,14 @@ export const responsiveTablesRehypePlugin: RehypePlugin = () => {
};
};
export const lazyImagesRehypePlugin = lazyLoadPlugin;
export const lazyImagesRehypePlugin: RehypePlugin = () => {
return function (tree) {
if (!tree.children) return;
visit(tree, 'element', function (node) {
if (node.tagName === 'img') {
node.properties.loading = 'lazy';
}
});
};
};