MCPcopy Index your code
hub / github.com/codeaashu/claude-code / createStore

Function createStore

src/state/store.ts:10–34  ·  view source on GitHub ↗
(
  initialState: T,
  onChange?: OnChange<T>,
)

Source from the content-addressed store, hash-verified

8}
9
10export function createStore<T>(
11 initialState: T,
12 onChange?: OnChange<T>,
13): Store<T> {
14 let state = initialState
15 const listeners = new Set<Listener>()
16
17 return {
18 getState: () => state,
19
20 setState: (updater: (prev: T) => T) => {
21 const prev = state
22 const next = updater(prev)
23 if (Object.is(next, prev)) return
24 state = next
25 onChange?.({ newState: next, oldState: prev })
26 for (const listener of listeners) listener()
27 },
28
29 subscribe: (listener: Listener) => {
30 listeners.add(listener)
31 return () => listeners.delete(listener)
32 },
33 }
34}
35

Callers 4

runFunction · 0.85
_tempFunction · 0.85
AppStateProviderFunction · 0.85

Calls 4

deleteMethod · 0.65
onChangeFunction · 0.50
listenerFunction · 0.50
addMethod · 0.45

Tested by

no test coverage detected