MCPcopy
hub / github.com/monkeytypegame/monkeytype / cont

Function cont

frontend/src/ts/db.ts:204–259  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

202 if (mode === "quote") return;
203 if (!dbSnapshot) return;
204 function cont(): void {
205 if (!dbSnapshot) return;
206 let found = false;
207
208 dbSnapshot.personalBests ??= {
209 time: {},
210 words: {},
211 quote: {},
212 zen: {},
213 custom: {},
214 };
215
216 dbSnapshot.personalBests[mode] ??= {
217 [mode2]: [],
218 };
219
220 dbSnapshot.personalBests[mode][mode2] ??=
221 [] as unknown as PersonalBests[M][Mode2<M>];
222
223 (
224 dbSnapshot.personalBests[mode][mode2] as unknown as PersonalBest[]
225 ).forEach((pb) => {
226 if (
227 (pb.punctuation ?? false) === punctuation &&
228 (pb.numbers ?? false) === numbers &&
229 pb.difficulty === difficulty &&
230 pb.language === language &&
231 (pb.lazyMode ?? false) === lazyMode
232 ) {
233 found = true;
234 pb.wpm = wpm;
235 pb.acc = acc;
236 pb.raw = raw;
237 pb.timestamp = Date.now();
238 pb.consistency = consistency;
239 pb.lazyMode = lazyMode;
240 }
241 });
242 if (!found) {
243 //nothing found
244 (dbSnapshot.personalBests[mode][mode2] as unknown as PersonalBest[]).push(
245 {
246 language,
247 difficulty,
248 lazyMode,
249 punctuation,
250 numbers,
251 wpm,
252 acc,
253 raw,
254 timestamp: Date.now(),
255 consistency,
256 },
257 );
258 }
259 }
260
261 if (dbSnapshot !== null) {

Callers 1

saveLocalPBFunction · 0.85

Calls 1

pushMethod · 0.80

Tested by

no test coverage detected