mirror of
https://github.com/amir20/dozzle.git
synced 2025-12-21 13:23:07 +01:00
* feat: moves to tailwindcss and better component library * update styles * creates toggle component * adds drop down component * cleans up components * removes unused components * uses tailwind for scroll view * removes table component * improves animation * cleans up more styles * uses more tailwind * cleans up more styles with flex * more styles * removes bulma * adds colors * updates modules * fixes bugs * stops importing styles.scss * more clean up * cleans up headers * cleans up title * fixes title * fixes mobile-hidden * fixes shadow * fixes colors * add tailwindcss/nesting * adds more colors * fixes more colors * updates colors * fixes colors * colors * fixes menu on left * menu and modal * menu and modal * fuzzy search * fixes menu on left * remove logs * cleans up search * adds host to search * remove outline from inputs * cleans up left search icon * removes unused styles * fixes docker * removes sass! * cleans up styles * Fixe smobile menu * fixes mobile menu * fixes typecheck * fixes seconday color * adds drop down for container * cleans header css * updates css * fixes other layouts * updates some tests * fixes border * fixes home screen font * fixes top header * fixes tests * fixes fieldlist * fixes complex * cleans up more * removes index * fixes tests * fixes tests * resolves conflicts
32 lines
999 B
Vue
32 lines
999 B
Vue
<template>
|
|
<div ref="root" class="flex min-h-[1px] justify-center">
|
|
<span class="loading loading-bars loading-md mt-4 text-primary" v-show="isLoading"></span>
|
|
</div>
|
|
</template>
|
|
|
|
<script lang="ts" setup>
|
|
const { onLoadMore = () => Promise.resolve(), enabled } = defineProps<{
|
|
onLoadMore: () => Promise<void>;
|
|
enabled: boolean;
|
|
}>();
|
|
|
|
const isLoading = ref(false);
|
|
const root = ref<HTMLElement>();
|
|
|
|
const observer = new IntersectionObserver(async (entries) => {
|
|
if (entries[0].intersectionRatio <= 0) return;
|
|
if (onLoadMore && enabled) {
|
|
const scrollingParent = root.value?.closest("[data-scrolling]") || document.documentElement;
|
|
const previousHeight = scrollingParent.scrollHeight;
|
|
isLoading.value = true;
|
|
await onLoadMore();
|
|
isLoading.value = false;
|
|
await nextTick();
|
|
scrollingParent.scrollTop += scrollingParent.scrollHeight - previousHeight;
|
|
}
|
|
});
|
|
|
|
onMounted(() => observer.observe(root.value!));
|
|
onUnmounted(() => observer.disconnect());
|
|
</script>
|