Files
eewing ec317eb17c
CI / build (push) Has been skipped
CI / deploy (push) Successful in 1m11s
INIT
2026-02-18 15:17:47 -06:00

24 lines
843 B
Svelte

<script lang="ts">
import { mergeProps } from "svelte-toolbelt";
import { ScrollAreaScrollbarScrollState } from "../scroll-area.svelte.js";
import type { _ScrollbarStubProps } from "../types.js";
import ScrollAreaScrollbarVisible from "./scroll-area-scrollbar-visible.svelte";
import PresenceLayer from "../../utilities/presence-layer/presence-layer.svelte";
let { forceMount = false, ...restProps }: _ScrollbarStubProps = $props();
const scrollbarScrollState = ScrollAreaScrollbarScrollState.create();
const mergedProps = $derived(mergeProps(restProps, scrollbarScrollState.props));
</script>
<PresenceLayer
{...mergedProps}
open={forceMount || !scrollbarScrollState.isHidden}
ref={scrollbarScrollState.scrollbar.opts.ref}
>
{#snippet presence()}
<ScrollAreaScrollbarVisible {...mergedProps} />
{/snippet}
</PresenceLayer>