MCPcopy
hub / github.com/wavetermdev/waveterm / getSettingsKeyAtom

Function getSettingsKeyAtom

frontend/app/store/global.ts:216–230  ·  view source on GitHub ↗
(key: T)

Source from the content-addressed store, hash-verified

214}
215
216function getSettingsKeyAtom<T extends keyof SettingsType>(key: T): Atom<SettingsType[T]> {
217 if (isPreviewWindow()) return NullAtom as Atom<SettingsType[T]>;
218 let settingsKeyAtom = settingsAtomCache.get(key) as Atom<SettingsType[T]>;
219 if (settingsKeyAtom == null) {
220 settingsKeyAtom = atom((get) => {
221 const settings = get(atoms.settingsAtom);
222 if (settings == null) {
223 return null;
224 }
225 return settings[key];
226 });
227 settingsAtomCache.set(key, settingsKeyAtom);
228 }
229 return settingsKeyAtom;
230}
231
232function useSettingsKeyAtom<T extends keyof SettingsType>(key: T): SettingsType[T] {
233 return useAtomValue(getSettingsKeyAtom(key));

Callers 15

constructorMethod · 0.90
NodeBackdropsFunction · 0.90
aipanel.tsxFile · 0.90
aimode.tsxFile · 0.90
constructorMethod · 0.90
isValidModeMethod · 0.90
workspace.tsxFile · 0.90
initializeFromMetaMethod · 0.90
setControlShiftFunction · 0.90
simpleCloseStaticTabFunction · 0.90
getDefaultNewBlockDefFunction · 0.90
registerGlobalKeysFunction · 0.90

Calls 3

isPreviewWindowFunction · 0.90
getMethod · 0.80
setMethod · 0.80

Tested by

no test coverage detected