Home / File/ index-client.js — svelte Source File

index-client.js — svelte Source File

Architecture documentation for index-client.js, a javascript file in the svelte codebase. 12 imports, 0 dependents.

File javascript SharedInternal DOMUtils 12 imports 2 functions

Entity Profile

Dependency Diagram

graph LR
  063b7444_1ece_6350_07c7_3c77919f3844["index-client.js"]
  1ae6fa4e_16ee_acdf_5e28_17eb0819fddb["effects.js"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> 1ae6fa4e_16ee_acdf_5e28_17eb0819fddb
  cf74814c_38ff_1817_80eb_cbc1bb490472["effect_root"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> cf74814c_38ff_1817_80eb_cbc1bb490472
  461d1f5f_ffa4_d984_98a4_868566c66f30["effect_tracking"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> 461d1f5f_ffa4_d984_98a4_868566c66f30
  7494b934_a3b8_689e_91b6_8435e26461c5["render_effect"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> 7494b934_a3b8_689e_91b6_8435e26461c5
  b874f390_a6ee_7d84_7151_b2b77f0388d5["index.js"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> b874f390_a6ee_7d84_7151_b2b77f0388d5
  4cf4c423_76ea_40eb_1692_69aae30c30f1["get"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> 4cf4c423_76ea_40eb_1692_69aae30c30f1
  ba16ff3e_8a18_d3c4_15e9_96304b539f51["writable"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> ba16ff3e_8a18_d3c4_15e9_96304b539f51
  9ad5fe9f_fc6f_e854_93df_194b16c3b738["create-subscriber.js"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> 9ad5fe9f_fc6f_e854_93df_194b16c3b738
  92303a26_c904_85e7_5ec0_8e0605dbb9f9["createSubscriber"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> 92303a26_c904_85e7_5ec0_8e0605dbb9f9
  bde4209f_8ffc_1594_4024_b1835a44bcf6["runtime.js"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> bde4209f_8ffc_1594_4024_b1835a44bcf6
  55623862_10b7_5361_e30b_34ec6941f1a7["set_active_effect"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> 55623862_10b7_5361_e30b_34ec6941f1a7
  311ef9f4_9b68_c178_c1db_3b8696f7d964["set_active_reaction"]
  063b7444_1ece_6350_07c7_3c77919f3844 --> 311ef9f4_9b68_c178_c1db_3b8696f7d964
  style 063b7444_1ece_6350_07c7_3c77919f3844 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

/** @import { Readable, Writable } from './public.js' */
import {
	effect_root,
	effect_tracking,
	render_effect
} from '../internal/client/reactivity/effects.js';
import { get, writable } from './shared/index.js';
import { createSubscriber } from '../reactivity/create-subscriber.js';
import {
	active_effect,
	active_reaction,
	set_active_effect,
	set_active_reaction
} from '../internal/client/runtime.js';

export { derived, get, readable, readonly, writable } from './shared/index.js';

/**
 * @template V
 * @overload
 * @param {() => V} get
 * @param {(v: V) => void} set
 * @returns {Writable<V>}
 */
/**
 * @template V
 * @overload
 * @param {() => V} get
 * @returns {Readable<V>}
 */
/**
 * Create a store from a function that returns state, and (to make a writable store), an
 * optional second function that sets state.
 *
 * ```ts
 * import { toStore } from 'svelte/store';
 *
 * let count = $state(0);
 *
 * const store = toStore(() => count, (v) => (count = v));
 * ```
 * @template V
 * @param {() => V} get
 * @param {(v: V) => void} [set]
 * @returns {Writable<V> | Readable<V>}
 */
export function toStore(get, set) {
	var effect = active_effect;
	var reaction = active_reaction;
	var init_value = get();

	const store = writable(init_value, (set) => {
		// If the value has changed before we call subscribe, then
		// we need to treat the value as already having run
		var ran = init_value !== get();

		// TODO do we need a different implementation on the server?
		var teardown;
		// Apply the reaction and effect at the time of toStore being called
		var previous_reaction = active_reaction;
// ... (110 more lines)

Subdomains

Frequently Asked Questions

What does index-client.js do?
index-client.js is a source file in the svelte codebase, written in javascript. It belongs to the SharedInternal domain, DOMUtils subdomain.
What functions are defined in index-client.js?
index-client.js defines 2 function(s): fromStore, toStore.
What does index-client.js depend on?
index-client.js imports 12 module(s): create-subscriber.js, createSubscriber, effect_root, effect_tracking, effects.js, get, index.js, render_effect, and 4 more.
Where is index-client.js in the architecture?
index-client.js is located at packages/svelte/src/store/index-client.js (domain: SharedInternal, subdomain: DOMUtils, directory: packages/svelte/src/store).

Analyze Your Own Codebase

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

Try Supermodel Free