UNPKG

@blossom-carousel/svelte

Version:

A native-scroll-first carousel component for Svelte.

34 lines (33 loc) 1.23 kB
import "svelte/internal/disclose-version"; import "svelte/internal/flags/legacy"; import * as e from "svelte/internal/client"; import { onMount as g, onDestroy as v } from "svelte"; function b(l, t) { const p = e.legacy_rest_props(t, [ "children", "$$slots", "$$events", "$$legacy" ]), c = e.legacy_rest_props(p, ["as", "load", "repeat"]); e.push(t, !1); let d = e.prop(t, "as", 8, "div"), m = e.prop(t, "load", 8, "conditional"), f = e.prop(t, "repeat", 8, !1), a = e.mutable_source(), o; g(async () => { if (e.get(a)) { if (!window.matchMedia("(hover: hover) and (pointer: fine)").matches && m() !== "always") return; const { Blossom: s } = await import("@blossom-carousel/core"); o = s(e.get(a), { repeat: f() }), o.init(); } }), v(() => { o == null || o.destroy(); }), e.init(); var n = e.comment(), u = e.first_child(n); e.element(u, d, !1, (r, s) => { e.bind_this(r, (h) => e.set(a, h), () => e.get(a)), e.attribute_effect(r, () => ({ "blossom-carousel": "true", ...c })); var i = e.comment(), _ = e.first_child(i); e.slot(_, t, "default", {}, null), e.append(s, i); }), e.append(l, n), e.pop(); } export { b as BlossomCarousel };