MCPcopy Create free account
hub / github.com/benwinding/react-admin-import-csv / GetIdsColliding

Function GetIdsColliding

src/import-controller.ts:12–36  ·  view source on GitHub ↗
(
  logging: boolean,
  translate: Translate,
  dataProvider: DataProvider,
  csvValues: any[],
  resourceName: string,
  disableGetMany: boolean | undefined,
)

Source from the content-addressed store, hash-verified

10}
11
12export async function GetIdsColliding(
13 logging: boolean,
14 translate: Translate,
15 dataProvider: DataProvider,
16 csvValues: any[],
17 resourceName: string,
18 disableGetMany: boolean | undefined,
19): Promise<Identifier[]> {
20 const logger = makeLogger(logging);
21 const hasIds = csvValues.some((v) => v.id);
22 if (!hasIds) {
23 return [];
24 }
25 try {
26 const csvIds: Identifier[] = csvValues.filter(v => !!v.id).map((v) => v.id);
27 const recordsIdsColliding = await (disableGetMany
28 ? GetIdsCollidingGetSingle( logging, translate, dataProvider, csvIds, resourceName )
29 : GetIdsCollidingGetMany( logging, translate, dataProvider, csvIds, resourceName )
30 );
31 return recordsIdsColliding;
32 } catch (error) {
33 logger.error("GetIdsColliding", { csvValues }, error);
34 throw translate("csv.parsing.collidingIds");
35 }
36}
37
38export async function GetIdsCollidingGetSingle(
39 logging: boolean,

Callers 1

processCSVFunction · 0.90

Calls 5

makeLoggerFunction · 0.85
GetIdsCollidingGetSingleFunction · 0.85
GetIdsCollidingGetManyFunction · 0.85
translateFunction · 0.85
errorMethod · 0.80

Tested by

no test coverage detected