Home / Function/ bind_paused() — svelte Function Reference

bind_paused() — svelte Function Reference

Architecture documentation for the bind_paused() function in media.js from the svelte codebase.

Entity Profile

Dependency Diagram

graph TD
  3705198f_eeda_87a7_a1e3_075a8ad337f4["bind_paused()"]
  1fdae683_fcfe_7f32_daab_6a4edc3c6b85["media.js"]
  3705198f_eeda_87a7_a1e3_075a8ad337f4 -->|defined in| 1fdae683_fcfe_7f32_daab_6a4edc3c6b85
  da178604_a1e6_1104_9d60_daf043f014c9["listen()"]
  3705198f_eeda_87a7_a1e3_075a8ad337f4 -->|calls| da178604_a1e6_1104_9d60_daf043f014c9
  a985ae40_8ef8_7ef2_adad_116fbf97e70c["effect()"]
  3705198f_eeda_87a7_a1e3_075a8ad337f4 -->|calls| a985ae40_8ef8_7ef2_adad_116fbf97e70c
  style 3705198f_eeda_87a7_a1e3_075a8ad337f4 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/svelte/src/internal/client/dom/elements/bindings/media.js lines 158–185

export function bind_paused(media, get, set = get) {
	var paused = get();

	var update = () => {
		if (paused !== media.paused) {
			set((paused = media.paused));
		}
	};

	// If someone switches the src while media is playing, the player will pause.
	// Listen to the canplay event to get notified of this situation.
	listen(media, ['play', 'pause', 'canplay'], update, paused == null);

	// Needs to be an effect to ensure media element is mounted: else, if paused is `false` (i.e. should play right away)
	// a "The play() request was interrupted by a new load request" error would be thrown because the resource isn't loaded yet.
	effect(() => {
		if ((paused = !!get()) !== media.paused) {
			if (paused) {
				media.pause();
			} else {
				media.play().catch((error) => {
					set((paused = true));
					throw error;
				});
			}
		}
	});
}

Domain

Subdomains

Frequently Asked Questions

What does bind_paused() do?
bind_paused() is a function in the svelte codebase, defined in packages/svelte/src/internal/client/dom/elements/bindings/media.js.
Where is bind_paused() defined?
bind_paused() is defined in packages/svelte/src/internal/client/dom/elements/bindings/media.js at line 158.
What does bind_paused() call?
bind_paused() calls 2 function(s): effect, listen.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free