UNPKG

@realsee/dnalogel

Version:
183 lines (182 loc) 4.7 kB
var S = Object.defineProperty; var _ = Object.getOwnPropertySymbols; var C = Object.prototype.hasOwnProperty, A = Object.prototype.propertyIsEnumerable; var g = (o, n, t) => n in o ? S(o, n, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[n] = t, d = (o, n) => { for (var t in n || (n = {})) C.call(n, t) && g(o, t, n[t]); if (_) for (var t of _(n)) A.call(n, t) && g(o, t, n[t]); return o; }; import { SvelteComponent as E, init as N, safe_not_equal as T, append_styles as w, create_slot as P, element as R, attr as y, insert as q, listen as D, stop_propagation as L, update_slot_base as M, get_all_dirty_from_scope as j, get_slot_changes as z, transition_in as B, transition_out as F, detach as G, createEventDispatcher as H, getContext as I } from "../../../vendor/svelte/internal/index.js"; import { SharedAudio as J } from "../../utils/audio/SharedAudio.js"; import "../../../shared-utils/audio.js"; function K(o) { w(o, "svelte-13e7hxv", ".audio.svelte-13e7hxv{pointer-events:auto;cursor:pointer;width:100%;height:100%}"); } function O(o) { let n, t, c, m; const r = ( /*#slots*/ o[8].default ), u = P( r, o, /*$$scope*/ o[7], null ); return { c() { n = R("div"), u && u.c(), y(n, "class", "audio svelte-13e7hxv"), y( n, "style", /*style*/ o[0] ); }, m(a, i) { q(a, n, i), u && u.m(n, null), t = !0, c || (m = D(n, "click", L( /*onClick*/ o[1] )), c = !0); }, p(a, [i]) { u && u.p && (!t || i & /*$$scope*/ 128) && M( u, r, a, /*$$scope*/ a[7], t ? z( r, /*$$scope*/ a[7], i, null ) : j( /*$$scope*/ a[7] ), null ), (!t || i & /*style*/ 1) && y( n, "style", /*style*/ a[0] ); }, i(a) { t || (B(u, a), t = !0); }, o(a) { F(u, a), t = !1; }, d(a) { a && G(n), u && u.d(a), c = !1, m(); } }; } function Q(o, n, t) { let { $$slots: c = {}, $$scope: m } = n, { url: r } = n, { enable: u = !0 } = n, { style: a = "" } = n, { hooksInfo: i } = n; const l = H(), p = I("hooks"), h = I("mediaStore"); let e, f = !0; function b() { t( 5, e.onplay = (s) => { p.emit("playStateChange", d({ event: s, state: "playing", mediaInstance: e }, i)), l("play"), t(6, f = !1); }, e ), t( 5, e.onpause = (s) => { p.emit("playStateChange", d({ event: s, state: "paused", mediaInstance: e }, i)), l("pause"), t(6, f = !0); }, e ), t( 5, e.onended = (s) => { p.emit("playStateChange", d({ event: s, state: "paused", mediaInstance: e }, i)), l("pause"), t(6, f = !0); }, e ), t( 5, e.onloadedmetadata = (s) => { typeof e.duration == "number" && !Number.isNaN(e.duration) && l("duration", e.duration); }, e ), t( 5, e.onerror = (s) => { l("pause"), t(6, f = !0); }, e ), t( 5, e.ontimeupdate = (s) => { l("timeupdate", e.currentTime); }, e ); } h.subscribe(({ currentMediaElement: s }) => { s !== e && (f || e == null || e.pause()); }); function k(s) { e && (p.emit("click", d({ event: s, target: "AudioTagPlayIcon", audioInstance: e }, i)), h.set({ currentMediaElement: e }), p.emit("playStateChange", d({ event: s, state: e.paused ? "playing" : "paused", mediaInstance: e }, i)), e.paused ? e.play() : e.pause()); } return o.$$set = (s) => { "url" in s && t(2, r = s.url), "enable" in s && t(3, u = s.enable), "style" in s && t(0, a = s.style), "hooksInfo" in s && t(4, i = s.hooksInfo), "$$scope" in s && t(7, m = s.$$scope); }, o.$$.update = () => { o.$$.dirty & /*url*/ 4 && (r || l("duration", 0)), o.$$.dirty & /*audio, url*/ 36 && (e == null || e.dispose(), t(5, e = new J(r)), l("audioRef", e), setTimeout(() => l("audioRef", e), 200), b()), o.$$.dirty & /*enable, audio*/ 40 && (u || e == null || e.pause()), o.$$.dirty & /*enable, audioPaused*/ 72 && l(u && !f ? "play" : "pause"); }, [a, k, r, u, i, e, f, m, c]; } class Y extends E { constructor(n) { super(), N( this, n, Q, O, T, { url: 2, enable: 3, style: 0, hooksInfo: 4 }, K ); } } export { Y as default };