MCPcopy Index your code
hub / github.com/MALSync/MALSync / retriveLists

Function retriveLists

src/utils/syncHandler.ts:273–322  ·  view source on GitHub ↗
(
  providerList: {
    providerType: string;
    providerSettings: any;
    listProvider: any;
  }[],
  type,
  getListF,
)

Source from the content-addressed store, hash-verified

271
272// retrive lists
273export async function retriveLists(
274 providerList: {
275 providerType: string;
276 providerSettings: any;
277 listProvider: any;
278 }[],
279 type,
280 getListF,
281) {
282 const typeArray: any = [];
283
284 const tempMode = getSyncMode(type);
285 const masterMode = tempMode === 'MALAPI' ? 'MAL' : tempMode;
286
287 const listP: any = [];
288
289 providerList.forEach(pi => {
290 pi.providerSettings.text = api.storage.lang('Loading');
291 // @ts-ignore
292 listP.push(
293 getListF(pi.listProvider, type)
294 .then((list: any) => {
295 pi.providerSettings.list = list;
296 pi.providerSettings.text = api.storage.lang('settings_listsync_provider_done');
297 if (masterMode === pi.providerType) pi.providerSettings.master = true;
298 typeArray.push(pi.providerType);
299 })
300 .catch(e => {
301 pi.providerSettings.text = e;
302 }),
303 );
304 });
305
306 await Promise.all(listP);
307
308 let master = false;
309 const slaves: any = [];
310
311 providerList.forEach(function (pi) {
312 if (pi.providerSettings.master) {
313 master = pi.providerSettings.list;
314 } else if (pi.providerSettings.list !== null) slaves.push(pi.providerSettings.list);
315 });
316
317 return {
318 master,
319 slaves,
320 typeArray,
321 };
322}
323
324export function getListProvider(providerSettingList) {
325 return [

Callers 1

syncListsFunction · 0.85

Calls 2

getSyncModeFunction · 0.90
langMethod · 0.80

Tested by

no test coverage detected