Fix lint issues, update deps

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel
2022-09-20 16:53:26 +02:00
parent 86ca52c2cb
commit 151a7e54ae
61 changed files with 1533 additions and 1579 deletions

View File

@@ -0,0 +1,35 @@
<template>
<div class="observer" ref="observed" />
</template>
<script lang="ts" setup>
import "intersection-observer";
import { onMounted, onUnmounted, ref } from "vue";
const props = withDefaults(
defineProps<{
options?: Record<string, any>;
}>(),
{ options: () => ({}) }
);
const observer = ref<IntersectionObserver>();
const observed = ref<HTMLElement>();
const emit = defineEmits(["intersect"]);
onMounted(() => {
observer.value = new IntersectionObserver(([entry]) => {
if (entry && entry.isIntersecting) {
emit("intersect");
}
}, props.options);
if (observed.value) {
observer.value.observe(observed.value);
}
});
onUnmounted(() => {
observer.value?.disconnect();
});
</script>