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

Function createInDataProvider

src/uploader.ts:72–118  ·  view source on GitHub ↗
(
  logging: boolean,
  disableCreateMany: boolean,
  dataProvider: DataProvider,
  resource: string,
  values: any[]
)

Source from the content-addressed store, hash-verified

70}
71
72export async function createInDataProvider(
73 logging: boolean,
74 disableCreateMany: boolean,
75 dataProvider: DataProvider,
76 resource: string,
77 values: any[]
78): Promise<ReportItem[]> {
79 logger.setEnabled(logging);
80 logger.log("createInDataProvider", { dataProvider, resource, values });
81 const reportItems: ReportItem[] = [];
82 if (disableCreateMany) {
83 const items = await createInDataProviderFallback(dataProvider, resource, values);
84 reportItems.push(...items);
85 return items;
86 }
87 try {
88 const response = await dataProvider.createMany(resource, { data: values });
89 reportItems.push({
90 value: null, success: true, response: response
91 })
92 } catch (error) {
93 const providerMethodNotFoundErrors = [
94 "Unknown dataProvider",
95 "createMany",
96 ];
97 const shouldTryFallback = doesErrorContainString(error, providerMethodNotFoundErrors);
98 const apiError = !shouldTryFallback;
99 if (apiError) {
100 reportItems.push({
101 value: null, err: error, success: false, response: null
102 })
103 }
104 if (shouldTryFallback) {
105 logger.log(
106 "createInDataProvider",
107 "createMany not found on data provider (you may need to implement it see: https://github.com/benwinding/react-admin-import-csv#reducing-requests): using fallback instead"
108 );
109 try {
110 const items = await createInDataProviderFallback(dataProvider, resource, values);
111 reportItems.push(...items);
112 } catch (error) {
113 logger.error("createInDataProvider", error);
114 }
115 }
116 }
117 return reportItems;
118}
119
120async function createInDataProviderFallback(
121 dataProvider: DataProvider,

Callers 2

uploader.spec.tsFile · 0.90
createFunction · 0.85

Calls 5

doesErrorContainStringFunction · 0.85
setEnabledMethod · 0.80
logMethod · 0.80
errorMethod · 0.80

Tested by

no test coverage detected