UNPKG

@mikezimm/fps-core-v7

Version:

Library of reusable core interfaces, types and constants migrated from fps-library-v2

27 lines 2 kB
import { startPerformOpV2, updatePerformanceEndV2 } from '../../../components/molecules/Performance/functions'; import { checkItemsResults, } from '../../../components/molecules/process-results/CheckWService/CheckItemsResults'; import { check4This, Check4 } from '../../../logic/Links/CheckSearch'; import { getWebGroupInfoAPI } from './getWebGroupInfoAPI'; export async function getWebGroupInfoBatchAPI(sourceProps, filterBatches, alertMe, consoleLog) { const performanceSettings = { label: `SiteGroupsBatch`, includeMsStr: true, updateMiliseconds: true, op: 'fetch' }; const fetchOp = startPerformOpV2(performanceSettings); // 2024-09-29: set null as any to pass build error. // 2024-12-06: WARNING -- Avoid reassigning source props... use new variable to avoid race condition // const updatedSourceProps = await addFPSDigestToSourceProps( sourceProps ); const allReturns = await Promise.all(filterBatches.map((filter, idx) => { return getWebGroupInfoAPI({ ...sourceProps, restFilter: filter }, alertMe, consoleLog); })); const allGroups = []; allReturns.map(returnX => { allGroups.push(...returnX.groups); }); const initialResult = JSON.parse(JSON.stringify(allReturns[0])); initialResult.groups = allGroups; const result = checkItemsResults(sourceProps.fpsSpService, initialResult, `fps-core-v7: getWebGroupInfoBatchAPI ~ 33`, alertMe, consoleLog); if (!result.unifiedPerformanceOps) result.unifiedPerformanceOps = { fetch: {} }; result.unifiedPerformanceOps.fetch = updatePerformanceEndV2({ op: fetchOp, updateMiliseconds: performanceSettings.updateMiliseconds, count: result.items ? result.items.length : 0 }); result.fetchOp = result.unifiedPerformanceOps.fetch; if (check4This(Check4.fpsShowFetchResults_Eq_true) === true) { console.log(`fps-core-v7 COMPLETE: getWebGroupInfoBatchAPI ~ 40`, result); } return result; } //# sourceMappingURL=getWebGroupInfoBatchAPI.js.map